How does a computer with DOS in ROM work?

edited March 2017 in Software
I know a few computers back in the day had a dos in its ROM , mostly in there Bios rom, most of them were DOS palmtops like the hp lx series, and also the omnibook series which also had windows 3.1 with it in ROM as well. Also a few desktops had it as well. How did this work? was it like a virtual disk image in rom, that the bios booted? or was it like it was it ROM with no file system or disk image with just the binaries embedded in with the bios, and the bios had code to put everything in memory, which i believe which created a rom disk, which i think was just a virtual disk , possibly linking the files from ROM into the disk Im pretty sure the DOS and its applications where XIP or execute in place, which means it didn't need to load the programs or DOS into ram to work.

Comments

  • Most ROM disks simply provide an INT13 compatible device emulating a BIOS-level hard disk or floppy. The BIOS would just bootstrap it and load OS files like any other drive.

    Some vendors may have used other odd approaches.

    Execute in place would not be a flexible solution as many DOS programs would expect they could modify their program area. However, if someone used that method for the DOS kernel files (OEMs customize those anyway), they certainly could free up a few K of system RAM.

    Lotus 1-2-3 for the PCjr and possibly other PCjr titles did use an execute-in-place method. The bulk of the program was stored in a ROM cartridge, and when you booted DOS you could magically invoke "123" at a command prompt even though no drive or file is visible (not a ROM disk exactly). And the program would run from ROM, freeing up the PCjr's tiny 128k RAM for your spreadsheet.
  • SomeGuy wrote:
    Most ROM disks simply provide an INT13 compatible device emulating a BIOS-level hard disk or floppy. The BIOS would just bootstrap it and load OS files like any other drive.

    Some vendors may have used other odd approaches.

    Execute in place would not be a flexible solution as many DOS programs would expect they could modify their program area. However, if someone used that method for the DOS kernel files (OEMs customize those anyway), they certainly could free up a few K of system RAM.

    Lotus 1-2-3 for the PCjr and possibly other PCjr titles did use an execute-in-place method. The bulk of the program was stored in a ROM cartridge, and when you booted DOS you could magically invoke "123" at a command prompt even though no drive or file is visible (not a ROM disk exactly). And the program would run from ROM, freeing up the PCjr's tiny 128k RAM for your spreadsheet.

    I'm sure most palmtops used XIP for most programs built in, also on the ROM disks, on HP palmtops it says in wikipedia this "The device does not provide the BIOS service (INT 13h) for reading from a hard disk. Drivers have been partially written for this purpose (to boot MINIX 2.0)" ,im not sure if this means for attached devices onto PCMCIA doesn't accept that or if it means HP 200lx doesn't do int13 and the ROM disk works a different way. when you say the ROM disk provides a int13 compatible interface , is the DOS in ROM a actual disk image in ROM, or is the binaries in ROM with out a file system, and there is some special driver to make a read only disk and boot it , with links in the disk to whatever is in ROM?
Sign In or Register to comment.