Mythsim Syntax
The syntax for a line in a Mythsim ucode file begins with a
label followed by a colon. Next is a listing of the control lines
and their values separated by commas. Finally is the next instruction
information followed by a semicolon. Any control line that is
not specified is assumed to have the value of zero.
If a control line has a value of either OFF or ON,
specifying the control line without a value implies the value is
ON while not specifying the control line at all implies
the value is OFF. The following shows an example:
fetch0: a_sel=7, b_sel=7, alu_sel=OR, mar_sel=LOAD,
r6write, goto fetch1;
Contol Line | Values and Mneumonic
|
---|
ri_sel |
|
rj_sel |
|
rk_sel |
|
a_sel |
|
b_sel |
|
r0_write |
|
r1_write |
|
r2_write |
|
r3_write |
|
r4_write |
|
r5_write |
|
r6_write |
|
r7_write |
|
alu_sel |
- 0: NOT
- 1: OR
- 2: AND
- 3: XOR
- 4: ADD
- 5: SUB
- 6: ADDA
- 7: SUBA
|
c_in |
|
mar_sel |
|
mdr_sel | - 0: HOLD
- 1: LOAD_ALU
- 2: LOAD_MEM
|
ir0_sel |
|
ir2_sel |
|
result_sel |
- 0: ALU
- 1: MDR
- 2: IR_CONST4
- 3: IR_CONST8
|
write |
|
read |
|
Status Line | Notes
|
---|
c_out | Note that for the SUBA alu operation, the values for c_out
are inverted.
|
m_7
|
v
|
wait
|