Booting MDOS from Horizon Ramdisk

From Ninerpedia
Revision as of 16:17, 19 November 2020 by Mizapf (talk | contribs) (→‎Requirements)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

MDOS 6.50 supports booting 'SYSTEM/SYS' from a Horizon or SNUG ramdisk at crubase >1400.

Limitations

Requirements

Easy path:

or a little more work:

and

  • The ability to boot into MDOS from some other device, such as a floppy on DSK1.
  • The system is not configured to boot something else before the Horizon Ramdisk see Geneve BOOT Order

Formatting

  1. Set the CRUBASE of your Horizon ramdisk to >1400
  2. Create a disk to boot the Geneve from that contains SYSTEM/SYS from MDOS 6.50, CYA, CYB, CYC, and FORM123. Or just use a copy of GeneveOpSys650-redistributionpermitted2020.dsk
  3. Boot to MDOS from you floppy on DSK1.
  4. Load the ramdisk formatting tool: FORM123 Note: the FORM123 tool menus expect uppercase letters
  5. Select A "AUTOSCAN CRU LOCATIONS >1200 thru >1900".
  6. Answer Y to "Format 16 Bit Ramdisk at CRU >1401 (Y/N)?"
  7. Answer Y to "Set disk to boot MDOS >1400 (Y/N)?"
  8. Answer Y to "Load SYSTEM/SYS From Disk to Ramdisk (Y/N)?"
  9. Assuming you booted SYSTEM/SYS from DSK1, Answer 1 to "Select disk drive to load from(1-9)?"
  10. Once it is finished copying - "Press Anykey To Continue"
  11. Select X to exit back to MDOS.

At this point you should be able to see the ramdisk and that it has SYSTEM/SYS on it. Perform DIR DSK8. You should see a listing with Volume name "RAMDSK1401", and a single file: "SYSTEM/SYS". The free space should be 2684 sectors. It should be able to boot, however it won't be able to find an AUTOEXEC on the ramdisk yet.

  1. Verify that it can boot, press CTRL-SHIFT-SHIFT.

It should load SYSTEM/SYS much faster than you would see from your floppy. When booting is complete, you will still be left at an A:\> prompt. That can be changed later.

Configure Device Map

Running CYA can be skipped if using the SYSTEM/SYS from GeneveOpSys650-redistributionpermitted2020.dsk. Skip to the Create AUTOEXEC section

We need to now run CYA to configure the drive mapping during boot, so that it is DSK6.

  1. give DSK8 a drive letter to make it easier to work with in CYA - assign E=DSK8:
  2. Load MDOS into CYA for configuration: A:\CYA E:\SYSTEM"/"SYS
  3. Select D for "(D)rive remap/assign"
  4. Select R to map the 16-bit ramdisk into DSK6.
  5. Select 6, then N
  6. Press ESC to return up to previous menu.
  7. Press ESC to return to the top menu.
  8. Select S to "(S)ave SYSTEM/SYS"
  9. Press ENTER to save to the ramdisk that we loaded it from.
  10. Select Q to "(Q)uit CYA", and respond with Y

Create AUTOEXEC

If you skipped the previous section, assign a drive letter to DSK6

  1. Run: ASSIGN E=DSK6:

Now, it should be able to boot off the Horizon ramdisk and find an AUTOEXEC on that ramdisk. So let's create an AUTOEXEC. E: should still be assigned to your ramdisk at this stage.

  1. Run: COPY CON E:\AUTOEXEC
  2. Enter: ECHO RAMDISK
  3. Press CTRL-Z to close the file.

Now if press CTRL-SHIFT-SHIFT, it should boot from the ramdisk, and we should see 'RAMDISK' printed as evidence that it loaded the AUTOEXEC from the ramdisk. The ramdisk itself still doesn't have a drive letter assigned. We can correct that in our AUTOEXEC

  1. Run: ASSIGN E=DSK6:
  2. Run: COPY CON E:\AUTOEXEC
  3. Enter: ASSIGN E=DSK6:
  4. Enter: E:
  5. Enter: VER
  6. Press CTRL-Z

Now when you reboot, you should have the ramdisk available as drive letter E:, and you will be on drive E: by default.

Notes

The MDOS 6.50 redistribution disk image comes with FORM3MEG, however the Geneve 0.98 and 1.00 boot roms are not capable of booting from the large volume it creates. It can be used to format an '8-bit' (256K) ramdisk that can boot, or '16-bit' larger volume that can be accessed after boot. There alleged to be an article in Micropendium describing how to boot from the fully allocated ramdisk. http://ftp.whtech.com/magazines/micropendium/mp99last.pdf

MDOS 6.70rc2 will work with a 256K (8bit) ramdisk. With crubase >1400, the 8bit ramdisk device is mapped to DSK6 by default and allows MDOS to find the DSK6.AUTOEXEC. MDOS 6.70rc2 does not have a supporting CYA program to alter assignements.