10

When you try to switch a console to fullscreen in Windows 7, it gives the error This system does not support fullscreen mode. Of note is the part about “this system”, intimating that some systems do support fullscreen consoles. Similarly, if you try to use the SetConsoleDisplayMode API function, it returns error 120: This function is not supported on this system., again with the “this system”.

Most systems could do fullscreen consoles in Windows XP, and it works in Windows 7’s Safe Mode, so what the heck does Windows 7 need for this to work in a normal boot?

Fullscreen Console Error Message

Synetech
  • 68,243
  • 36
  • 223
  • 356
  • In the days of high-DPI widescreen displays, 80x25 would probably be a blurry stretched mess. I'd rather use the graphical console myself. – u1686_grawity Jul 25 '11 at 10:01
  • 1
    I was going to try to test, but I do not have a hardware 32-bit version of Windows 7. It does work under a VMWare VM without problems. – KCotreau Jul 25 '11 at 11:54
  • 1
    @grawity, even today, the POST is in 80x50. Modern graphics-cards still support VESA. – Synetech Jul 26 '11 at 00:30
  • @Synetech inc: What system do you have that uses a 50-line mode for displaying POST? I haven't seen a 50-line mode outside of NT-family system blue screens in a very long time. – Michael Trausch Jul 26 '11 at 05:39
  • @Michael, ??? What do you see when you first turn your system on? (Turn off the logo scree in the BIOS.) What do you see if you boot into pure DOS mode? What do you see in the first phase of XP’s installation? Those are all text modes. In fact, the BIOS configuration tool itself is text-mode. – Synetech Jul 26 '11 at 06:16
  • 2
    @Synetech inc: In all those systems, I see an 80x25 screen. 25 lines, not 50. – Michael Trausch Jul 26 '11 at 06:25
  • @Synetech: I've totally forgotten about 80x50 ... which *still* looks y ugly when stretched on a LCD. (Thank $deity for framebuffer consoles.) By the way, I've seen POST screens in 80x25, I've seen them in 640x400, but never in 80x50 :D Although it doesn't really matter. – u1686_grawity Jul 26 '11 at 09:16
  • Hmm, I haven’t checked, but the 80x50 I mentioned may be 640x400 because those usually have the PowerStar logo (ie, graphics). – Synetech Jul 27 '11 at 00:26
  • 1
    How do you produce that message box (in the screenshot)? On my Windows 7 system (64-bit Home Premium), Alt+Enter does nothing, and there is no 'Fullscreen' menu item. – Andreas Rejbrand Nov 22 '12 at 12:05
  • 1
    @AndreasRejbrand, you are correct; I just tried it on a 64-bit system with the same results as you. I guess it was removed altogether from 64-bit Windows. `:-|` – Synetech Nov 22 '12 at 18:10

3 Answers3

4

As suggested, I'll post my comment from earlier as a separate answer:

The problem is that the new driver model does not support VGA text mode programs. Whether those are 8, 16, 32, or even 64 bit doesn't matter. I don't know if any of the old VGA modes in fullscreen are supported, actually. See support.microsoft.com/kb/926657

The major thing to note is that this is the fault of the driver model, not the graphics capabilities of the card. Virtually every single graphics card out there supports the basic VGA modes, both standard VGA and at least some relatively common subset of VESA modes. I do not really know anything about the reasoning behind Microsoft dropping that functionality—it's not like motherboard vendors or graphics card manufacturers are going to all of a sudden decide to drop support for VGA.

(Also note that virtually all modern cards in their native modes are not VGA, but a completely different thing. They just all happen to speak the set of base VGA standards.)

Michael Trausch
  • 476
  • 2
  • 7
  • 1
    Probably because it was considered not worth the effort to support VGA full-screen console in WDDM, especially because 64-bit Windows has no NTVDM. – Yuhong Bao Apr 04 '12 at 07:16
  • 1
    I'm not sure what the lack of NTVDM has to do with it; NTVDM has nothing to do with the display driver models, either the old or the new. I suspect the major reason that they dropped support for it is because it vastly simplifies the code required for the graphics drivers; they no longer have to support all those old modes that hardly anyone uses anymore. Even modern Linux systems do not use VGA screen modes anymore on modern graphics boards, opting instead to set the graphics mode once at boot time and be done with it. – Michael Trausch Apr 04 '12 at 23:37
  • 1
    NTVDM is a big user of VGA full-screen console though. For example, it is used when a DOS program switches to a VGA graphics mode. – Yuhong Bao May 27 '12 at 04:17
2

just go to device manager

display adapter

select your graphic card right click it

and disable it

that's all

all dos program work in full screen frm now on when you want

you can enable it again when ever needed.... :-)

Or you can use WMIC command, after using it you will see maximize button is enable in window but I never worked in that environment.

avirk
  • 15,689
  • 16
  • 59
  • 104
  • interesting, but would be tested – kokbira Jul 25 '11 at 12:32
  • 1
    You can check it easily I have worked like that no graphic card enable.:) – avirk Jul 25 '11 at 13:22
  • 1
    This is the solution I was eluding to. Disabling the driver will turn off DWM. – surfasb Jul 25 '11 at 16:02
  • 1
    Yes @surfasb i agree with you but only this can enable full screen in windows 7. And there is not a lengthy procedure to do this just 3-4 steps. – avirk Jul 25 '11 at 16:37
  • 1
    I just have my command prompt setup with 300 lines and a 800 line buffer. . . – surfasb Jul 25 '11 at 21:37
  • 1
    @avirk, disabling hardware acceleration does allow it to work, and when you disable the graphics-adapter, it has the same effect (though simply disabling acceleration is easier and safer). Either way, it is not the solution since that is no different that running in safe-mode. I’m trying to find out what kind of card or driver is required to run it in *normal* mode, hardware acceleration and all. – Synetech Jul 26 '11 at 00:32
  • 1
    Try WMIC command environment and then see is it worked? – avirk Jul 26 '11 at 00:36
  • 1
    @Synetech there is lots of difference between safe mode and this way in safe mode you are not able to enable the graphics but in this way you can easily switch. Sometimes you don't get the right solution then only tricks works... :) – avirk Aug 12 '11 at 01:54
  • 1
    WMIC does the same thing ([the same error](http://i.stack.imgur.com/Qtw1C.png)) because it uses the same console drivers as `cmd`. – Synetech Aug 12 '11 at 02:30
  • 1
    WMIC enable the maximize button so you can make it screens sizable like other windows as your explorer size. I'm not saying to accept it but I think the best way to do what you are looking for is the trick I know. – avirk Aug 12 '11 at 02:37
1

The new DWM isn't compatible with full screen 16 bit programs.

u1686_grawity
  • 426,297
  • 64
  • 894
  • 966
surfasb
  • 22,452
  • 5
  • 52
  • 77
  • 1
    Most command-line programs are 32/64-bit, however. And DWM doesn't care either way -- the console windows are displayed by CSRSS. – u1686_grawity Jul 25 '11 at 08:23
  • 2
    The problem is that the new driver model does not support **VGA text mode** programs. Whether those are 8, 16, 32, or even 64 bit doesn't matter. I don't know if any of the old VGA modes in fullscreen are supported, actually. See http://support.microsoft.com/kb/926657 – Michael Trausch Jul 25 '11 at 08:25
  • @Michael: You should post that as a separate answer. – u1686_grawity Jul 25 '11 at 09:00
  • 1
    @grawity. Actually, DWM does care. I'm pretty sure the reason is because DWM works at a higher level than console programs. Thus this would take some massive design changes. http://blogs.msdn.com/b/oldnewthing/archive/2007/12/31/6909007.aspx – surfasb Jul 25 '11 at 16:07
  • 1
    @Michael, that article certainly indicates that fullscreen text is not supported, but it does suggest trying XP drivers for the graphics-card. That is pretty absurd since the card obviously *does* support VGA and VESA modes if you see 80x50 during POST. So it’s the driver model that is at fault. Worse, if using an XP driver *does* work, then it just shows yet more user-unfriendly arrogance in removing functionality. :sigh: – Synetech Jul 26 '11 at 01:01
  • 1
    Sigh. The blog post specifically cited that the driver model is untested with CSRSS. My suspicion are as follows a) there is no point testing it, since nobody asks for it AND b) because the new model was designed with no intentions of talking to the CSRSS. The new desktop object is drawn in DirectX 3D. So for them to support the VGA modes, they have to 1) unload the DWM, 2) load up a new set of drivers. All for a setup that hardly anyone uses. And what if your program crashes. Since it has a direct line to the kernel, I would suspect a blue screen. – surfasb Jul 26 '11 at 02:20
  • 3
    So lets see, support a dying setup. Make developers write drivers that support two driver models. Even if the drivers were rock solid, the application has a strong possibility of crashing and taking down the whole system. Everyone Blame M$. Plus, UAC isn't supported. Admin privileges for all. Sounds like a winning strategy there. – surfasb Jul 26 '11 at 02:22
  • 1
    @surfasb: I do believe you just made the argument for not having graphics drivers in ring 0. – Michael Trausch Jul 26 '11 at 05:35
  • 1
    *> they have to 1) unload the DWM* and what if a user is not using DWM? – Synetech Jul 26 '11 at 06:18
  • After 1 comes. . . . – surfasb Jul 26 '11 at 07:34
  • 2
    This is the kind of crap I have to hear at work. "Why can't we support Super Gadget 2000? All the other companies have it." or "Why can't we support Super OLD Gadget -200? All the other companies have it." If you want to support it for everyone on your wide open schedule , I'll even buy you a cake. It's not that I hate XP. I just hate people who bring up problems, but present no solutions. . . Heck, it's just like everyone yelling "FIX THE DEFICIT!" How? "Ummmm, you pay for it . . ." – surfasb Jul 26 '11 at 07:37
  • 1
    *> after 1 comes...* You wouldn’t have to load different drivers if they still had the functionality. I don’t see a technical reason that it would *have* to be removed. – Synetech Jul 27 '11 at 00:28
  • 1
    You wouldn't have to test them? How would you solve synchronization? If the DVM is transfering data to the graphics card, there will be a lock on that buffer. The other graphics driver, not being use to having to play nice with another driver, tries to write to that buffer. Access denied. It is left spinning. Programs trying to communicate to that driver are left in a limbo. I expect applications to start popping error messages or worse, crashing. Crashing program = Blame Microsoft. "WHY THE HECK DID THEY RELEASE SUCH A POS DESIGN??" – surfasb Jul 27 '11 at 00:58