]> git.lizzy.rs Git - plan9front.git/blob - sys/man/1/mix
audio(1): replace references to juke(7) and playlistfs(7) with zuke(1) (thanks unobe)
[plan9front.git] / sys / man / 1 / mix
1 .TH MIX 1
2 .SH NAME
3 mix \- 
4 .B MIX
5 assembler and emulator
6 .SH SYNOPSIS
7 .B games/mix
8 [
9 .B -g
10 ]
11 [
12 .I file ...
13 ]
14 .SH DESCRIPTION
15 .I Mix
16 is an assembler and emulator for Donald Knuth's
17 fictitious
18 .B MIX 
19 architecture. The command assembles the named 
20 .B MIXAL
21 files into memory and then presents a command
22 prompt to control an emulated
23 .B MIX
24 machine. The
25 .B -g
26 option causes the emulator immediately to run a complete assembled
27 .B MIX
28 program and exits when the emulator halts.
29 .PP
30 The following commands are accepted:
31 .TP
32 .B addr[(a:b)]
33 Print the value at
34 .I addr.
35 An optional field specification is given by
36 .I (a:b).
37 .TP
38 .B a [< file]
39 Start the MIXAL assembler. The assembler will begin
40 assembling at the address after the last assembled
41 instruction. If no file is given, the assembler will
42 accept instructions from the console.
43 .TP
44 .B b addr
45 Set or unset a breakpoint at
46 .I addr.
47 .TP
48 .B c
49 Resets the
50 .B MIX
51 machine to a fresh state by clearing all memory
52 and registers.
53 .TP
54 .B d addr
55 Disassemble the instruction at
56 .I addr.
57 .TP
58 .B o addr
59 Print the alphanumeric
60 .B MIX
61 word at
62 .I addr.
63 .TP
64 .B o(addr, d)
65 Print
66 .I d
67 alphanumeric mix words starting at
68 .I addr.
69 .TP
70 .B r*[(a:b)]
71 Print the value in register
72 .I r*
73 where * is one of a, x, ax, j, or 1-6. An optional
74 field specification is given by
75 .I (a:b).
76 .TP
77 .B s
78 Step through one instruction of the emulated
79 .B MIX
80 machine.
81 .TP
82 .B g
83 Start the emulated
84 .B MIX
85 machine at the instruction specified by the
86 .B END
87 pseudo-instruction.
88 .TP
89 .B x
90 Quit the emulator/assembler.
91 .PP
92 The
93 .I addr
94 field of the above instructions must be an integer between 0 and 3999
95 inclusive. A number-sign (#) or an asterisk (*) at the beginning of
96 a line starts a comment which extends to the end
97 of the line.
98 .SH SOURCE
99 .B /sys/src/games/mix
100 .SH "SEE ALSO"
101 .nf
102 Donald Knuth, ``The Art of Computer Programming'', Volume 1. Section 1.3
103 .PP
104 .B /sys/src/games/mix/examples
105 .SH BUGS
106 As opposed to Knuth's specification,
107 the
108 .B ALF
109 pseudo-instruction takes as argument five
110 .B MIX
111 characters surrounded by quotation marks.
112 Unresolved forward references are assembled
113 to 0 instead of to a location determined by
114 the
115 .B END
116 psuedo-instruction.
117 .PP
118 The magnetic tapes and drum units are not
119 implemented.
120 .PP
121 Comments are handled as described above and not
122 exactly as Knuth specifies.