ReactOS installation experience (real machine and VMware)

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

ReactOS installation experience (real machine and VMware)

Post by Bblaauw »

After some registration issues and help through IRC I'm finally able to post and would like to share my installation experience of ReactOS on VMware and real hardware. As you read on in my topic you might encounter non-registered bugs, currently I see no way to get a simple listing of *all* bugreports (searching for 1 or more keywords seems to be required for some reason).

My intent is to use ReactOS in the future as my main gaming operating system for World of Warcraft, a massive multiplayer role playing game by Blizzard Entertainment. This game officially runs on Windows only, but has been seen to work on Linux as well as it supports not only DirectX but also OpenGL. However, I consider default Windows and GNU/Linux distributions/installations as too large, and am not skilled/experienced enough to reduce their filesize. Filesize counts for me as I have a 16GB RAM-based solidstate disk on which I'd like to have both this game (currently 14GB) and the operating system installed, with some essential other software as well. That leaves less than 2GB for an entire operating system and programs. And that's where ReactOS comes into the picture: even if not ready yet for general usage, it's a 150MB operating system or so currently, thus fitting my plans perfectly.

Enough background now (didn't mention boring real machine specs yet though), on to ReactOS installation experience inside of VMware Workstation 6.5.2 on a Windows 7 Ultimate x64 host, as figured out from the Wiki installation guide:

Stage 1 ( some hardware settings, file copying, only installing from CD is working/supported/possible)
* Boot from IDE CD-ROM (press ESC inside of VMware to show boot options menu, or F2 to change boot order permanently)
* Bootsector gets loaded (\LOADER\ISOBOOT.BIN I assume), requesting me to press a key to actually boot from cd-rom. Ofcourse hitting the largest key on the keyboard is most tempting..spacebar. (Is there a bootsector which does not require to press a key? Would make chaining from IsoLinux easier if you got ReactOS on the same optical disc as other operating systems or their installation programs, as it eliminates a keypress)
* The setup program starts, it's called USETUP and presents itself to me as end-user as 'ReactOS 0.4-SVN setup' , in my case rev 42360 (Debug) from here. Seems to be a textmode installer requiring at least 8MB RAM for the bootloader FreeLDR to work (4MB fails) and 20MB to complete the textmode stage 1 (16MB fails). More RAM is better for file copying, adding a timer or 'total time needed for copying' after the file copy might be usefull to see when ReactOS stops gaining speed from more memory added (VMware can manage virtual machine memory in increments of 4MB, other VMs maybe with even smaller amounts).
* If no harddisk found by setup (depends if one is physically present, powered on, controller recognized by ReactOS-loaded drivers etc) you'll get a message saying No Harddisk Found, and can only abort SETUP (thus skip rest of this post).
* Select language (defaulting to english)
* Press ENTER to continue (hardly any screen supports going steps/screens back by pressing ESC for example)
* Press ENTER to continue after reading the partitioning limitations that ReactOS has for not only partitioning by USETUP but possibly also for installing
* Press ENTER to accept DEVICE SETTINGS ( computer defaults to a kernel file ("HAL") supporting 1 processor only, unknown if the multiprocessor HAL works in ReactOS). List of video modes seems limited and has space on screen to allow more resolution settings. Up to 1920x1200 would be nice, as well as extended descriptions (not "VESA 640x480x8", but "640 horizontal lines/pixels by 480 vertical lines/pixels by 8bit color (256 colors)". For at least the english language in first screen chosen, I now cannot change the settings for Keyboard and for Keyboard Layout as both only have 1 choice each.
* Press ENTER to accept partitioning settings (listed as "partition [C:, XXXXX MB] on Disk [xxxxx MB total size] on SCSI address ( 0,0,0 for example) on Controller (Buslogic for example)". Strange to show a PARTITION LIMITATIONS screen first, then inbetween a DEVICE SETTINGS screen, then bring up partitioning again.
* Press ENTER to Format this partition (we're in VMware, so I used default settings, which includes formatting, thus erasing any and all previous info, if present at all)
* Press ENTER again to really Format this partition
* Select Directory to install ReactOS in (No idea which safeguards ReactOS Setup has against invalid/malformed input here.., no idea if path with long filenames or extensions allowed, or only "C-root\8char-dir").
* File copying takes place. Hopefully further on in the process ReactOS installation will not need the CD-ROM install disc anymore at all. I assume file copying is done from CD-ROM at this point (with enough RAM, maybe ReactOS files to be copied could be copied to RAMDISK during the previous steps while SETUP waits for user input..makes copying to harddisk a lot faster at this point rather than reading from CD). Unsure which files get copied ( I'd assume purely REACTOS.CAB), which extracted (I assume REACTOS.CAB once copied to harddisk first), which created, which generated, which modified (language settings from phase 1 are stored somewhere on harddisk..). Anyway, to me, it makes most sense to have all the files the CD needs to boot up, be present on CD, and all the files needed for harddisk, to be inside the huge CAB file.
*Press ENTER to install bootloader to MBR (this option also seems to be needed to be selected for integration into NT loader, but just tested with Windows XP first installed on same FAT32 partition as ReactOS later on). Unfortunately, an option to write the bootloader to both the MBR and to Floppy seems to be missing (always nice if you do an accidental DOS SYS C: and thus mess up the bootloader of any Windows(-compatible) OS).
* Reboot

Stage 2 (personal settings).
* Boot from harddisk. ReactOS installation cdrom should no longer be needed.
* FreeLDR loads, still requires 8MB RAM to even initialize.
* List of operating systems is shown, together with boot options if pressing F8. Sometimes FreeLDR hangs on previous step.
* Select "ReactOS (Debug)". Depending on debug version or release version, and on which loader and options chosen, required available amount of system memory might be different. Officially at least between 32 and 72MB recommended.
* Sometimes you'll see a "Loading system files" message. Not good :)
* Top option "ReactOS" would show a graphical logo, possibly a progress bar as well. My selected "ReactOS (Debug)" option shows amount of recognized processors (1, as I selected UniProcessor HAL from CDROM setup process) and the amount of recognized memory, which is influenced by various factors: ReactOS is 32bit operating system, thus maximum 4GB recognized. That recognized amount will be lower due to mapped PCI addresses between 3GB and 4GB. FreeLDR might have a /MAXMEM= option somewhere to reduce amount of memory artifically. Alternatively assign lower amount of RAM in VMware or on physical machines, take out memory. As slightly later shown, I encounter a swapfile issue, for which it might be best if ReactOS by default sets a /MAXMEM to 1024MB or so in FreeLDR.INI). The amount of RAM recognized seems to be 1MB off, downwards. No idea if this is intentional (only showing XMS, not conventional memory + ROM/UMB space) or a bug. WinLDR seems to report different, strange, amounts on high memory systems (6GB system, showing 15MB or 21MB sometimes).
* You'll get the message "ReactOS is loading files".
* Loaded drivers are shown. Some get loaded multiple times, either directly (SERIAL.SYS for example) or multiple times as sets after eachother (VGA/VBE for example). Sometimes also 'U' shown after a filename (.SYSU, might be revision dependant)
* Swapfile bug showing up: (./base/system/smss/print.c:33) Creation of paging file \??\C:\pagefile.sys with size 3145268 KB failed (status 0xc00000f1). Unable to determine how ReactOS works together with swapfile. Recommend to hardcode to set it to 1024MB at most. Can ReactOS use a Windows XP swapfile (of any size!) if both operating systems on same partition? Can ReactOS create swapfiles larger than 2GB safely? As my physical machine has 6GB memory, I can assign 4GB to VMware ReactOS virtual machine every time and run into this issue. Please show algorythm for determining swapfile size based on installed memory. How does swapfile change by FreeLDR/NTOSKRNL if amount of memory changes? or stays static amount?
* Sometimes you'll see a screen mentioning "Installing Devices". Not sure if this is supposed to happen
* "Welcome to Setup" graphical screen. Shows up fine in 16/32 bit colors, nightmare in 4bit/8bit color.
* Press/click NEXT to get to next screen, assuming you got active and working mouse support by now ofcourse.
* Press NEXT to accept GPL after having read it (yeah right, as if users do that!) and seeing which projects are used in one or more ways in ReactOS.
* Enter a (or your) name, no idea what it's gonna be used for. Seems to be a required field so don't leave it blank. Optionally enter a company name as well, or leave it blank.
* Press NEXT again, leading to next screen, requesting you to enter a computername of at least 1 character, but at most 63 characters. Input field is too small visually, but input allows 63 or 64 characters. Using the left and right arrow keys on keyboard seems to cause text field corruption, showing a "|" between characters. By default, the computer name is either "COMPUTERNAME" or entirely blank (unknown what's the default value, but in this screen it's simply possible to just click NEXT without inputting any characters). Also, enter a password for the (super)user account with username ADMINISTRATOR. This seems to be optional as empty password is accepted as well. If you do enter a password, make sure both fields contain the same set of characters, and remember the password.
* Press NEXT again to get to REGIONAL SETTINGS. Clicking CUSTOMIZE opens a new window where you can change things. Pressing CANCEL here leaves you with a corrupted unusable half-viewable window, forcing you to reboot (system, then harddisk) and start over in phase 2.
* Press NEXT once again to accept the proposed time, date, and timezone. Any changes in this window seem to be possible without issue. Unknown if earlier choices (like language) influence the timezone or if default for this window is always GMT-8 (if I select Dutch in phase 1, wouldn't mind if default would be GMT+1 now in phase 2).
* Press NEXT, and see a screen fast go by, indicating REGISTERING COMPONENTS
* Congratulations, depending on random luck you now get a usable screen in VMware to allow you to install the VMware driver (just cancel it, or try the installation if you insist. It requires VMware Tools ISO with their proprietary graphics driver on it, despite for example X.org having opensource VMware driver) or you get a corrupted window which forces you to do Phase 2 installation all over again 1 or multiple times (although a few settings seem to get remembered). Maybe an option to delay this to phase 3? Or to document what the VMWinst program exactly changes on ReactOS settings?
* Reboot.

Phase 3
* Same FreeLDR stuff as in phase 2 (menu, CPU+MEM, driver list, swapfile issue on high memory machines).
* Depending on random luck you'll get an eternal-lasting "Please Wait, loading your personal settings" screen (time to reboot) or boot to desktop.
* On physical hardware with Nvidia Geforce 8800GTS PCI-express graphics card , the VBE driver happily falls back to VGA 640x480x4bit colors instead of expected 800x600x16bit/32bit
* On physical hardware with this 4bit color, mouse cursor not seen, (MS Intelli)Mouse doesnt work on PS/2, Mouse works on USB (keyboard also) but incredibly invisible and inaccurate. Unable to navigate to desktop settings to change graphics settings. Unknown how to modify ReactOS to use VESA VBE driver or Nvidia driver.

Bugs encountered while using ReactOS:
* deserves a post and/or thread/topic of its own I guess, this post is already quite long.
Last edited by Bblaauw on Tue Aug 04, 2009 11:31 am, edited 3 times in total.
GoBusto
Posts: 579
Joined: Fri Jan 25, 2008 11:13 am
Location: UK
Contact:

Re: ReactOS installation experience (real machine and VMware)

Post by GoBusto »

Bblaauw wrote:Joined: 01 Jan 1970 00:00
Wow, you took quite a while to make that first post.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

Bblaauw wrote: currently I see no way to get a simple listing of *all* bugreports
That will be a large list! :)

Here is a smaller list of all *open* bugreports.
(searching for 1 or more keywords seems to be required for some reason)
Look at advanced search page.
Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

Re: ReactOS installation experience (real machine and VMware)

Post by Bblaauw »

Thanks for the feedback on Bugzilla handling. Do these forums have any message edit functionality? Can't find it at first glance. Think I forgot to mention ROS setup will complain straight away if no harddisk found, thus saving time on not uselessly walking through other steps.

Anything else I forgot to mention in above post?

[edit]Found the edit option thanks to IRC support once again. You are great people :)
grschneider
Developer
Posts: 17
Joined: Sat Mar 10, 2007 11:16 pm

Re: ReactOS installation experience (real machine and VMware)

Post by grschneider »

If you don't like using the Bugzilla webinterface, try Deskzilla.
Quite useful to keep track of certain bugs and to get an overview.
ReactOS has got an open source license for that tool, see here: http://www.reactos.org/wiki/Deskzilla
zydon
Posts: 160
Joined: Tue Dec 18, 2007 9:03 am

Re: ReactOS installation experience (real machine and VMware)

Post by zydon »

Bblaauw wrote:* On physical hardware with Nvidia Geforce 8800GTS PCI-express graphics card , the VBE driver happily falls back to VGA 640x480x4bit colors instead of expected 800x600x16bit/32bit
* On physical hardware with this 4bit color, mouse cursor not seen, (MS Intelli)Mouse doesnt work on PS/2, Mouse works on USB (keyboard also) but incredibly invisible and inaccurate. Unable to navigate to desktop settings to change graphics settings. Unknown how to modify ReactOS to use VESA VBE driver or Nvidia driver.
This could be easily been fixed if your keyboard has Window Menu button. Press on the menu button and select reboot from the start menu. Usually the next start, ReactOS will load correctly 800x600x16bit resolution. The 4 bit colors and mouse invisible/tiny only happened during the first run/personalization mode after the installation. I used to get those under VBox too. After that, the problem will disappeared.

To have successful installation fro the get go, make sure the minimum RAM were 96MB or higher. Minimum 128MB RAM is needed if you plan to install Firefox web browser and/or Mplayer.
Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

Re: ReactOS installation experience (real machine and VMware)

Post by Bblaauw »

Besides installing on real machine, another trick I use is installation in Vmware first, on a raw disk. After that, reboot to real hardware. In VMware, VBE driver is used. Once rebooting same installation to real hardware, suddenly the VGA driver is used, strangely enough. As the mouse navigation is hardly usable, I wouldnt mind a commandline program to set actual driver, horizontal resolution, vertical resolution, color bitdepth and monitor refresh frequency.
Real harddisk is connected to a 32bit 33MHz PCI add-in card that uses the Silicon Image 3512 chipset (with its firmware set to raidmode by default but connected disk is not in a raidset..I can find new firmware but not a working flasher program for the specific flash chip on this card).
zydon
Posts: 160
Joined: Tue Dec 18, 2007 9:03 am

Re: ReactOS installation experience (real machine and VMware)

Post by zydon »

It seem your GeForce 8xxx series has yet supported by VBE as shown in Supported Video Cards page. But no harm to try change the resolution from menu using keyboard access into Display setting to 800x600 or higher resolution. Who knows it might work with your card.

For other supported Hardware on real machine, refer to this page. You could try set the connected disk set as primary master.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

Bblaauw wrote: another trick I use is installation in Vmware first, on a raw disk. After that, reboot to real hardware.
Perform only the 1st stage of installation (text mode) in VM. Then continue on real machine.
Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

Re: ReactOS installation experience (real machine and VMware)

Post by Bblaauw »

Wish I could do that, but first need to get rid of the pagefile bug, or workaround it using the (unfortunately not working, see bug 4759) /MAXMEM option.

Here's some desktop fun .. spot which things are wrong : see pic (1650x1050, 140KB)
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

first need to get rid of the pagefile bug
File a bug report. There is a bug I think in SmpPagingFilesQueryRoutine().

That desktop fun is known thing…
Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

Re: ReactOS installation experience (real machine and VMware)

Post by Bblaauw »

You're a good spotter then for pictures :)

As you've found all issues I'll list them as well :
* text in start menu gets visually corrupted if hoovering over it.
* "CMD /?" lists an unknown /Q option
* "CMD" responds to "/P" paramater, either intentional or not, refers to DOS autoexec.bat also (at C:\ ?)
* Missing device name for keyboard and mouse in VMware, seeing blank entries
* Winver, then authors, gives corrupted screen
* Strange huge values proposed by default for paging file (virtual memory dialog)

Additionally, filed the following bugs:
bug 4760 (per your request - swapfile issues)
bug 4759 (Maxmem not working in freeldr.ini)
bug 4758 (FreeLDR Breakpoint crash)
vicmarcal
Test Team
Posts: 2733
Joined: Mon Jul 07, 2008 12:35 pm

Re: ReactOS installation experience (real machine and VMware)

Post by vicmarcal »

Bblaauw wrote:You're a good spotter then for pictures :)
* "CMD /?" lists an unknown /Q option
* "CMD" responds to "/P" paramater, either intentional or not, refers to DOS autoexec.bat also (at C:\ ?)
Hi Bblaauw, thanks for all of these.
Well, the /Q parameter means "Turn ECHO OFF", so the /Q is known but not listed. Just changing Resources to add this Param.Bblaauw if you want, try to modify the resources, it´s easy...your first patch :)
About the "/P" parameter,in 7(where i am now) seems it doesnt work. So yes,it´s a bug.
The bug can be found in: C:\...\reactos\base\shell\cmd\cmd.c

Looking for parameters in CMD:

Code: Select all

 if (option == _T('P'))
			{
				if (!IsExistingFile (_T("\\autoexec.bat")))
				{
#ifdef INCLUDE_CMD_DATE
					cmd_date (_T(""));
#endif
#ifdef INCLUDE_CMD_TIME
					cmd_time (_T(""));
#endif
				}
				else
				{
					ParseCommandLine (_T("\\autoexec.bat"));
				}
				bCanExit = FALSE;
Just deleting those lines will make the trick ;)

Fill a bug report for each CMD issue, and i will try to help you to make the patchs or make it myself..as you wish :)
Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

Re: ReactOS installation experience (real machine and VMware)

Post by Bblaauw »

I'll try, one of these days, provided RosBE works on Win7 x64 (do I need Roxbe 32bit, 64bit or both where 32 is required and 64 is necessary addon?) and has a DIFF utility. However this is a fairly trivial bug, all other issues are much more 'interesting' :shock:

For now, welcome World of Warcraft patch 3.2..new ingame content to explore :)
Bblaauw
Posts: 149
Joined: Mon Aug 03, 2009 12:59 am

Re: ReactOS installation experience (real machine and VMware)

Post by Bblaauw »

TortoiseSVN took me some time to figure out - need a decent way to copy a file, create modifications, then select both the original file and the copy file, then open SVN Merge option, then finally create unified diff..
I'm not sure where the language resources can be found so parameter /Q would either have a text or be removed from parameter listing completely, making it undocumented.

As ReactOS uses FAT filesystems for now on which a DOS might live as well (I aim for WinXP + FreeDOS + ReactOS for example, all on same single primary FAT32 partition), it might not be in best interest of ReactOS to execute the \\autoexec.bat file, nor to be permanent (unable to exit by EXIT or QUIT command, only by closing CMD window or some kill task).

So far so bad :

--- C:/ros/base/shell/cmd/cmd.c wo aug 12 09:30:35 2009
+++ C:/ros/base/shell/cmd/cmd - kopie.c wo aug 12 10:50:10 2009
@@ -1693,9 +1693,9 @@
}
else
{
- ParseCommandLine (_T("\\autoexec.bat"));
+ /* ParseCommandLine (_T("\\autoexec.bat")); */
}
- bCanExit = FALSE;
+ /* bCanExit = FALSE; */
}
else if (option == _T('A'))
{
Post Reply

Who is online

Users browsing this forum: No registered users and 38 guests