-
Notifications
You must be signed in to change notification settings - Fork 6
/
halves.mmix
39 lines (39 loc) · 1.39 KB
/
halves.mmix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
000000001000: Hand-assembled halves program
c1f8fa0033f60000 1000: Main OR p,pbase,0; SETL carry,0
f000000420f5f5f6 1008: JMP 1F;Loop ADD acc,acc,carry
77f6f705a1f5f800 1010: ZSOD carry,starp,5; STB acc,p,0
81f7f80137f80001 1018: 1H LDB starp,p,1; INCL p,1
80f5f9f75bf7fffa 1020: LDB acc,half,starp; PBNZ starp,Loop
a1f5f800f1fffff5 1028: STB acc,p,0; JMP Main
100000000000: must preload this address into g249 (f9)
3500000000000000 HALF: BYTE '5'
100000000030:
3030313132323333 BYTE "00112233"
3434310000000000 BYTE "441",0
200000000000: bottom of stack
0000000000000000 20...000: rL
0000000000001000 20...008: f4
0000000000000000 20...010: f5
0000000000000000 20...018: f6
0000000000000000 20...020: f7
0000000000000000 20...028: f8
0000100000000000 20...030: f9
0000100000000039 20...038: fa
0000000000000000 20...040: fb
0000000000000000 20...048: fc
0000000000000000 20...050: fd
0000000000000000 20...058: fe
0000000000000000 20...060: ff
0000000000000000 20...068: rB
0000000000000000 20...070: rD
0000000000000000 20...078: rE
0000000000000000 20...080: rH
0000000000000000 20...088: rJ
0000000000000000 20...090: rM
0000000000000000 20...098: rP
0000000000000000 20...0a0: rR
0000000000000000 20...0a8: rW
0000000000000000 20...0b0: rX
0000000000000000 20...0b8: rY
0000000000000000 20...0c0: rZ
f400000000000000 20...0c8: rG and rA