Last modified on 3 January 2007, at 05:15

ROMDOS

Revision as of 05:15, 3 January 2007 by PulkoMandy (Talk | contribs)

ROMDOS was the most successful high-capacity disc operating system (DOS) published for the CPC. Originally developed by KDS, it was later resold by Siren Software.

ROMDOS shipped on a single 16k ROM, though a RAM-resident version, RAMDOS, was also available. The ROM was essentially a modified version of the standard AMSDOS ROM, with support added for 80-track and double-sided formats. As a result, the format of the disc was detected automatically, just like standard AMSDOS - a big improvement over competing systems such as MS800.

However, because most of the code was still the copyright of Locomotive Software, ROMDOS performed a check on start-up that the original AMSDOS ROM was still present in slot 7. If not, it would refuse to initialise. This meant that the many machine code programs which began by initialising ROM 7 (alone) could not take advantage of the ROMDOS formats. Theoretically this would also have applied to CP/M, but KDS supplied patches that allowed ROMDOS to be used under CP/M Plus.

One quirk of ROMDOS was the enlarged directories. It was possible to save so many files on a ROMDOS disc that the 2k buffer used by the CAT command would fill up. Consequently, to see all the files on the disc, you either had to move the files into different user areas, or use |DIR (which did not sort the files so consequently needed no 2k buffer).

ROMDOS formats

  • D1
  • D2
  • D10
  • D20
  • D40 (not supported by RAMDOS)
  • D80 (not supported by RAMDOS; also used by S-DOS and 400K/S)

Details (from a comp.sys.amstrad.8bit posting by Executioner, needs sorting out):

Straight from the source code for ParaDOS: 
.forms    ;first sect, BSH, LSB of DSM 
     ;form enable, sects 

db #91,#04,#c7,#fc,10,#c6,"80",#ff ;1. PARADOS 80 
db #81,#03,#cc,#ff,#8a,#c6,"41",#ff ;2. PARADOS 41 
db #a1,#04,#c7,#fa,10,#c6,"40D",#ff ;3. PARADOS 40D 
db #01,#04,#67,#f8,9,#c2,"1",#ff ;4. ROMDOS D1 
db #21,#04,#67,#f8,9,#c2,"2",#ff ;5. ROMDOS D2 
db #11,#04,#8f,#f8,10,#c2,"10",#ff ;6. ROMDOS D10 
db #31,#04,#8f,#f8,10,#c2,"20",#ff ;7. ROMDOS D20 
db #51,#04,#c7,#fa,10,#c2,"40",#ff ;8. ROMDOS D40 
db #71,#04,#c7,#fc,10,"S-DOS",#ff ;9. S-DOS (ROMDOS D80) 
db #c1,#03,#b3,#ff,9,#c4,#c7,#ff ;10. DATA (SS 40) 
db #c1,#04,#b3,#2a,9,#c4,#c8,#ff ;11. DATA (DS 40) 
db #c1,#04,#b3,#4c,9,#c4,#c9,#ff ;12. DATA (SS 80) 
db #c1,#05,#b3,#f8,9,#c4,#ca,#ff ;13. DATA (DS 80) 
db #41,#03,#aa,#ff,9,#c3,#c7,#ff ;14. SYSTEM (SS 40) 
db #41,#04,#ae,#2a,9,#c3,#c8,#ff ;15. SYSTEM (DS 40) 
db #41,#04,#ae,#4c,9,#c3,#c9,#ff ;16. SYSTEM (SS 80) 
db #41,#05,#b0,#f8,9,#c3,#ca,#ff ;17. SYSTEM (DS 80) 
db #01,#03,#9b,#ff,8,#c5,#c7,#ff ;18. IBM (SS 40) 
db #01,#04,#9d,#2a,8,#c5,#c8,#ff ;19. IBM (DS 40) 
db #01,#04,#9d,#4c,8,#c5,#c9,#ff ;20. IBM (SS 80) 
db #01,#05,#9e,#f8,8,#c5,#ca,#ff ;21. IBM (DS 80) 
db #10,#03,#cc,#ff,#8a,#d0,#ff ;22. ULTRAFORM 

ROMDOS XL

ROMDOS XL was an enhanced version of ROMDOS, with additional features by Simon Cobb of Siren Software. Its main enhancement was a built-in file management utility, with copying, formatting and other such functions.

The file management utility suffered from severe limitations, such as a maximum 40k file size for copied files. In addition, the changes introduced some severe bugs to ROMDOS, initially including a loss of automatic format detection.

Though some of these bugs were later removed, ROMDOS XL never regained its place in the market, and ParaDOS became the most popular high-capacity DOS.