How to change resolution without rebooting

Got a ReactOS tutorial to share? Drop it in here

Moderator: Moderator Team

Locked

Do you think this Tutorial was usefull?

Yes
25
69%
No
10
28%
You suck!
1
3%
 
Total votes: 36

stefan
Posts: 29
Joined: Sat Dec 04, 2004 12:22 am
Contact:

How to change resolution without rebooting

Post by stefan »

Working in 0.2.8-RELEASE:
1. Boot Reactos
2. Start-> Run...
3. Type "regedit", press ENTER
4. Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Reactos\Windows NT\CurrentVersion\WinLogon\
5. Set "Shell" to "%SystemRoot%\System32\cmd.exe"
6. Close Regedit and reboot

After reboot you will see a comand prompt. To start the GUI type "explorer.exe" and hit ENTER. Now set the resolution to whatever you want. You only have to terminate Ros Explorer through the startmenu and after seeing the command prompt type explore.exe and hit enter.
#reactos - nothin2g
Get your shit at http://www.wakka.de
TOTMS
Posts: 112
Joined: Thu Sep 29, 2005 3:00 pm
Location: London, UK
Contact:

Re: How to change resolution without rebooting

Post by TOTMS »

stefan wrote:Working in 0.2.8-RELEASE:
1. Boot Reactos
2. Start-> Run...
3. Type "regedit", press ENTER
4. Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Reactos\Windows NT\CurrentVersion\WinLogon\
5. Set "Shell" to "%SystemRoot%\System32\cmd.exe"
6. Close Regedit and reboot

After reboot you will see a comand prompt. To start the GUI type "explorer.exe" and hit ENTER. Now set the resolution to whatever you want. You only have to terminate Ros Explorer through the startmenu and after seeing the command prompt type explore.exe and hit enter.
erm, its an interesting work around :) Sounds a bit like a 9x solution though. Obviously the kernel is still loaded but loads cmd first giving a command line. I dont see how terminating the explorer program and dropping back to cmd would allow for the settings to update themselves. Surely the GUI and hardware addressing is in the kernel not the software? It is possible since we not using a hardware accelerated system that all this is doing is writing the new resolution to a ini file or the registry. This is then being read when the GUI loads. If this is the case then it should be easy to code hot swapping of resolutions.

Devs? Am I anywhere near the mark?
GvG
Posts: 499
Joined: Mon Nov 22, 2004 10:50 pm
Location: The Netherlands

Post by GvG »

It will work (haven't tested it, but I guess nothing2g has). By setting that registry key, you boot into a text-mode console instead of the GUI shell. When you start a graphics program (like Explorer), ReactOS will switch the screen to graphics mode, using the resolution values stored in the registry. When all graphics programs are ended (i.e. you exit Explorer), the screen switches back to text-mode. Next time you execute a graphics program (Explorer again) the video hardware will be re-initialized to switch to graphics mode, using the resolution values which are stored in the registry at that moment. If you changed the resolution the first time, the new values will be used.
If this is the case then it should be easy to code hot swapping of resolutions.
Feel free to write a patch ;)
TOTMS
Posts: 112
Joined: Thu Sep 29, 2005 3:00 pm
Location: London, UK
Contact:

Post by TOTMS »

GvG wrote:It will work (haven't tested it, but I guess nothing2g has). By setting that registry key, you boot into a text-mode console instead of the GUI shell. When you start a graphics program (like Explorer), ReactOS will switch the screen to graphics mode, using the resolution values stored in the registry. When all graphics programs are ended (i.e. you exit Explorer), the screen switches back to text-mode. Next time you execute a graphics program (Explorer again) the video hardware will be re-initialized to switch to graphics mode, using the resolution values which are stored in the registry at that moment. If you changed the resolution the first time, the new values will be used.
If this is the case then it should be easy to code hot swapping of resolutions.
Feel free to write a patch ;)
Ok, well I will have a play around, just to save me time, can you point me in the direction of the registry keys I need to change?
:D
ThePhysicist
Developer
Posts: 509
Joined: Mon Apr 25, 2005 12:46 pm

Post by ThePhysicist »

What will happen, if a program (maybe a screensaver) will change to a different resolution in fullscreen and after the program ends the system goes back to "normal" mode. Will The new settings be read from the registry? If yes, no problem. But I guess no. So when restoring the normal desktop, isn't it possible to just re-read the screen settings from the registry and then rebuild the desktop with the new screen resolution?
TOTMS
Posts: 112
Joined: Thu Sep 29, 2005 3:00 pm
Location: London, UK
Contact:

Post by TOTMS »

ThePhysicist wrote:What will happen, if a program (maybe a screensaver) will change to a different resolution in fullscreen and after the program ends the system goes back to "normal" mode. Will The new settings be read from the registry? If yes, no problem. But I guess no. So when restoring the normal desktop, isn't it possible to just re-read the screen settings from the registry and then rebuild the desktop with the new screen resolution?
The thing is it should be that simple. I am not sure, I am just writing a dirty hack at the moment to change between resolutions on the desktop, but this is hardly ideal.
Dr. Fred
Developer
Posts: 607
Joined: Wed Dec 22, 2004 10:09 pm
Location: Amsterdam

Post by Dr. Fred »

TOTMS wrote:Ok, well I will have a play around, just to save me time, can you point me in the direction of the registry keys I need to change?
:D
HKLM "SYSTEM\CurrentControlSet\Hardware Profiles\Current\System\CurrentControlSet\Services\VBE\Device0"
"DefaultSettings.BitsPerPel"
"DefaultSettings.XResolution"
"DefaultSettings.YResolution
Where do you want ReactOS to go today ?
GreatLord
Developer
Posts: 926
Joined: Tue Nov 30, 2004 10:26 am
Location: Sweden

Post by GreatLord »

This setting is only for vbe drv, I recomande u using controll pannel to change the res.

here
1. set cmd.exe as gui
2. load explore from cmd
3. change res
4. exit / shoutdown explorer.
5. start now again explorer
you have now change the reslutions without reboot reactos. that is only work around I know of.
mgmechanics
Posts: 10
Joined: Sat Dec 01, 2007 2:04 pm

yes!!! it works!!

Post by mgmechanics »

HKLM "SYSTEM\CurrentControlSet\Hardware Profiles\Current\System\CurrentControlSet\Services\VBE\Device0"
"DefaultSettings.BitsPerPel"
"DefaultSettings.XResolution"
"DefaultSettings.YResolution
Tested successfully with ROS 0.33 on VMWare(r) Player 2.0.2 build-59824.

DefaultSettings.XResolution changed from "800" to "1024" (set "Basis" to "Dezimal"!)
DefaultSettings.YResolution changed from "600" to "768" (set "Basis" to "Dezimal"!)
= Success! But you have to bring VMware into fullscreen mode, otherwise you can't access the lower or upper part of the window.

Changing to 1280 / 800 (Dezimal!) (the current mode of this notebook) did not work: The window is smaller than 800x600, odd coloured, the mousepointer appears in a brown field. But you can still use it to correct the values.

(HKLM = HKEY_LOCAL_MACHINE)
Caliber Mengsk
Posts: 1
Joined: Fri Apr 16, 2010 9:24 pm

Re: How to change resolution without rebooting

Post by Caliber Mengsk »

I'm not sure how ReOS works as explorer is, but could you have a background program that watches for a resolution change, and when it happens, simply exit explorer and re-open it? I know it wouldn't be hard to program in VB as a system tray application... at least in vb.net.

But I also know that if you close explorer in xp, the display of the background and such is still there... so I'm guessing it works differently then I am thinking. (AKA, no applications are left open if the shell is closed.) O-o I guess it would take some experimentation inside of unity to see for sure.
Haos
Test Team
Posts: 2954
Joined: Thu Mar 22, 2007 5:42 am
Contact:

Re: How to change resolution without rebooting

Post by Haos »

Please dont do thread necromancy. It's three years old.
ThePhysicist
Developer
Posts: 509
Joined: Mon Apr 25, 2005 12:46 pm

Re: How to change resolution without rebooting

Post by ThePhysicist »

It's even 5 years old! And once again very up-to-date. Here's my tutorial:

1.) Checkout svn://svn.reactos.org/reactos/branches/reactos-yarotows
2.) install and change resolution and have fun.

8-)
Locked

Who is online

Users browsing this forum: No registered users and 16 guests