Graduate software provided a version of CP/M+ on ROM.
Additional 'utility' roms contained CP/M programs installed on a ROM.
Structure of a utility ROM
Each ROM is 16KB and has the following structure:
Offset (Hex) | Count | Description |
0 | 48 | Description of ROM (note 1) |
&30 | 208 | Loading code (note 2) |
&100 | 256 | Directory (note 3) |
&200 | &3e00 | Data area for files. |
Each directory entry has the following structure:
Offset (Hex) | Count | Description |
0 | 8 | Filename (note 4) |
8 | 1 | ? (unknown &20) |
9 | 2 | address in ROM for start of data for file (note 3) |
11 | 2 | length in bytes of file |
14 | 2 | (unknown) &feff |
Notes
1. Utility ROM 1 has this description: "Graduate (C)1988 CP/M Accessory Rom 1\r\n$VER 2.30 "
2. Up to 16 files can be defined. Each file takes 1 entry. Unused entries are filled with &FF.
3. Filename is in upper case, 8 characters long, padded with spaces. '.COM' extension is assumed when accessed.
4. ROM starts at &c000. Therefore &c200 is the start of the first file.