MIX(1) MIX(1) NAME mix - MIX assembler and emulator SYNOPSIS games/mix [ -g ] [ file ... ] DESCRIPTION Mix is an assembler and emulator for Donald Knuth's ficti- tious MIX architecture. The command assembles the named MIXAL files into memory and then presents a command prompt to control an emulated MIX machine. The -g option causes the emulator immediately to run a complete assembled MIX program and exits when the emulator halts. The following commands are accepted: addr[(a:b)] Print the value at addr. An optional field specifica- tion is given by (a:b). a [< file] Start the MIXAL assembler. The assembler will begin assembling at the address after the last assembled instruction. If no file is given, the assembler will accept instructions from the console. b addr Set or unset a breakpoint at addr. c Resets the MIX machine to a fresh state by clearing all memory and registers. d addr Disassemble the instruction at addr. o addr Print the alphanumeric MIX word at addr. o(addr, d) Print d alphanumeric mix words starting at addr. r*[(a:b)] Print the value in register r* where * is one of a, x, ax, j, or 1-6. An optional field specification is given by (a:b). s Step through one instruction of the emulated MIX machine. g Start the emulated MIX machine at the instruction MIX(1) MIX(1) specified by the END pseudo-instruction. x Quit the emulator/assembler. The addr field of the above instructions must be an integer between 0 and 3999 inclusive. A number-sign (#) or an aster- isk (*) at the beginning of a line starts a comment which extends to the end of the line. SOURCE /sys/src/games/mix SEE ALSO Donald Knuth, ``The Art of Computer Programming'', Volume 1. Section 1.3 /sys/src/games/mix/examples BUGS As opposed to Knuth's specification, the ALF pseudo- instruction takes as argument five MIX characters surrounded by quotation marks. Unresolved forward references are assembled to 0 instead of to a location determined by the END psuedo-instruction. The magnetic tapes and drum units are not implemented. Comments are handled as described above and not exactly as Knuth specifies.