Microprogram Format


The simulator supports three different file formats for storing microprograms. The default format stores a microprogram as a file of long integers. The second format is the format used by Ray Ontko for his simulator. The third format saves a microprogram as a text file in micro assembly language format.

Default File Format ('mic' Files)

A microprogram file with a "mic" extension stores a microprogram as a file of long integers. The first value in the file serves as a header to identify the file as a "mic" format microprogram. The header value is 0x87654321. The rest of the file contains the microprogram with each microinstruction represented as an 8-byte integer (high byte first).

Ontko File Format ('mic1' Files)

A microprogram file with a "mic1" extension stores a microprogram as a file of bytes (the format used by Ray Ontko for his simulator). The first four bytes serve as a header to identify the file as a "mic1" format microprogram. Treated as a 32-bit integer, this header has the value, 0x12345678. The high-order byte of the header is the first byte in the file. The rest of the file contains the microprogram with each microinstruction represented as a 5-byte(40-bit) integer. The bytes are read from high-order byte to low-order byte. The 36 high-order bits of this integer represent the microinstruction. The 4 low-order bits are ignored.

Micro Assembly Language ('mal' Files)

Microprograms with a "mal" extension store the microprogram as a text file containing the disassembled micro assembly language instructions. This format makes it easier to read and understand what a microprogram is doing. This is an output format only. Microprograms stored in this format can not be loaded into the control store of the simulator.