-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Booting Venix for Rainbow under MAME #5
Comments
Sounds as if your harddisk is not mounted. It definitely worked back then in 2019 Note that i needed VENIX with 'BSW enhancements' and only select few hard disk sizes were supported (Rainbow.cpp contains a list of 'official' RD drives). Prepare a hard disk image with CHDTOOL (= the appropriate MAME/MESS tool), then
You should see a popup as soon as you attach the physical hard disk (search the source for 'popup'). Note that no hot swapping is allowed, except for floppies. Do you know my introduction text from 2019...? I'd try to boot DOS 3.1 from hard disk first (and get WUTIL 3.2 running)... Bsdimp might have more info about UNIX or VENIX specific details. |
Thanks a lot for the document! That pulls together a lot of information that I have pieced together so far and adds some really valuable examples of using the C and D drives. I really appreciate it! I am pretty sure that the drive is mounted properly.
The problem is that I don't know how to boot the system once installed. According to the Rainbow driver for MAME [2], it isn't possible to boot from the hard drive at all. I have found this true for both CP/M and DOS so far. I can boot from floppy and then use the hard drive no problem. So the question is how can I boot from the floppy and still use Venix. I have tried the supplied boot floppy, but it seems to be a copy of the XFER disk. If I boot from it and abort the install procedure it dumps me at a prompt, but there is no sign in. I have tried mounting the hard disk, but I am given an error that it isn't a block device. The Venix documentation doesn't seem to handle booting from a floppy other than to restore a damaged system. Any pointers would be welcome. Thanks! [1] Line 79 in 4ac0dde
[2] https://github.com/mamedev/mame/blob/86aae267863c73ab71092f742666fa7a6bbfc332/src/mame/dec/rainbow.cpp#L43 |
Try the unofficial patch - Note that it targets the state of the driver as of Dec 11, 2019 - and i haven't tested it since. Basically it
It should also work with the 5.05 ROM. You'd have to alter the check, so that it tests for 0x35. There once was a patch to re-enable the AUTOBOOT feature. I'd have to dig in my old sources... If you want to help, i'd suggest you improve the hard disk emulation in wd2010.cpp. It was only tested with one drive (and the Rainbow-100-B driver, which uses the very similar WD1010... our use case). EDIT: Unblock auto-boot feature Auto boot from drive A to E is now possible (despite error 40). Setting is available via SET UP screen.
Commented disassembly of the BOOT ROM - Others |
Thank you very much for the additional pointers, @Bavarese. I'm excited to try the workaround for the auto-boot problem and will report back. As for the unofficial patch you mentioned that removes the CRC check etc., it looks to me as though that is already merged to |
Some (if not all) patches have been removed. This had political reasons and is unfortunate for people who want to actually do something with the driver. Check that all lines (below) are present at the end of "machine_start". Also add a
to activate the section. Enable Autoboot in BIOS. Save and soft restart. Check NVRAM values for persistence (as NVRAM corruption is possible). Reroute F3 as shown in the PDF, as it does a hard restart of Mame (which is often not what you want). Note that the driver is unmaintained since 2019, so it is possible functionality worsened. It will likely compile without errors, though. I promise to check the current status if time permits.
EDIT: the auto boot feature is actually quite error prone in emulation. That's why i have added a popup message in the (rejected) patch above. You might want to add the NVRAM location query to 0xdb and the popmessage.
|
Sorry for the delay, @Bavarese. But thank you so much for your patience and detailed suggestions. With your help, I was able to get autoboot working on the latest release of Mame and have successfully booted my Venix installation! I haven't had much time lately (hence how long it took me to test this) to get beyond booting and basic testing, so I will report back more later. But I wanted to give you a positive sign of life and express my appreciation. More to follow! |
Hello,
First of all, I am very grateful for this project. It was really great to get Venix running on my old Rainbow! I'd love to get it running under MAME so I can minimize the amount of time I need to fire up the old hardware. According to the MAME driver for Rainbow [1], this is possible. And the readme in this project [2] also makes the same claim. I have gone through the entire setup procedure without any issue. However I am unclear on how to actually boot my new Venix for Rainbow installation under MAME. There is a known bug in the Rainbow driver for MAME, preventing booting from the virtual hard disk. For CP/M and DOS, I can just use a boot floppy and then use the hard drive. I thought perhaps the
vboot.flp
would be useful for this, but it seems to behave just like the XFER disk and the shell that is executed only seems to give me access to the contents of the floppy. I had a look at the setting up and system managers documentation for Venix, but couldn't find anything about booting from a floppy asides from when a system restore is needed.Can anyone give me some tips on how to get this booted using the Rainbow driver for MAME? I'll be happy to create a PR to update the instructions if I get this working.
Thanks!
Bones
[1] https://github.com/mamedev/mame/blob/master/src/mame/dec/rainbow.cpp
[2] https://github.com/bsdimp/venix/blob/master/doc/MESS-RB-INSTALL.md
The text was updated successfully, but these errors were encountered: