As explained in previous sections (see MIX architecture), the MIX computer can interact with a series of block devices. To that end, you have at your disposal the following instructions:
Transfer a block of words from the specified unit to memory, starting at address M. OPCODE = 36, MOD = I/O unit.
Transfer a block of words from memory (starting at address M) to the specified unit. OPCODE = 37, MOD = I/O unit.
Perform a control operation (given by M) on the specified unit. OPCODE = 35, MOD = I/O unit.
Jump to M if the specified unit is ready. OPCODE = 38, MOD = I/O unit.
Jump to M if the specified unit is busy. OPCODE = 34, MOD = I/O unit.
In all the above instructions, the ‘MOD’ subfile must be in the range 0-20, since it denotes the operation’s target device. The ‘IOC’ instruction makes sense for magnetic tape devices (‘MOD’ = 0-7): it shifts the read/write pointer by the number of blocks given by ‘M’ (if it equals zero, the tape is rewound), paper tape devices (‘MOD’ = 20): ‘M’ should be 0, the tape is rewound, and disk/drum devices (‘MOD’ = 8-15): it moves the read/write pointer to the block specified in rX and ‘M’ should be 05.