-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_jump.lst
123 lines (102 loc) · 6.66 KB
/
test_jump.lst
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
0 error(s) found
00001:;
00002:; Version 1.0 a real program to test jumps
00003:;
00004:;
00005: 0135 ORG 0X0 ; this is a test
00006: 0000 LED1 EQU 0XFE00 ;led location
00007: 0000 STACK EQU 0XFFFF ;top of stack
00008: 0000 81 00 01 JMP START ;
00009: 0003 00 F1 HLT ;If here failed
00010: 0004 ORG 0X100 ;
00011: 0100 39 00 fe START LD Y,LED1 ;led location
00012: 0103 30 01 LD A,0X01 ; start valueA
00013: 0105 37 ff ff LD SP,STACK ;Setup sp
00014: 0108 81 0c 01 JMP N1
00015: 010b 00 F2 HLT ;Halt here if jmp fails
00016: 010c 10 N1 DEC A ;should be zero
00017: 010d 83 11 01 JPZ N2 ;test
00018: 0110 00 F3 HLT ;Jump zero test failed
00019: 0111 10 N2 DEC A ; should be neg and not zero
00020: 0112 85 16 01 JNZ N3 ;
00021: 0115 00 F4 HLT ; Jump not zero failed
00022: 0116 8a 1a 01 N3 JNEG N4 ;
00023: 0119 00 F5 HLT ; If here neg jump failed
00024: 011a 51 N4 MOV A,C ; save A
00025: 011b 4a ff CMP A,0XFF ; should be equal
00026: 011d 88 21 01 JEQ N5
00027: 0120 00 F6 HLT ;Jump equal failed
00028: 0121 56 N5 MOV C,A ;restore a
00029: 0122 4a 01 CMP A,0X01
00030: 0124 87 28 01 JGT N6
00031: 0127 00 F7 HLT ; Jump greater than failed
00032: 0128 4a ff N6 CMP A,0XFF
00033: 012a 86 2e 01 JLT N7
00034: 012d 00 F8 HLT ;Jmp less than failed
00035: 012e 41 03 N7 ADD A,0X3 ;should generate carry
00036: 0130 89 34 01 JPC PASS
00037: 0133 00 F9 HLT ;Jump carry failed
00038: 0134 00 PASS HLT ;pass 0 error(s) found
LED1: fe00 line: 6
Address: 0100
line: 0011
STACK: ffff line: 7
Address: 0105
line: 0013
START: 0100 line: 11
Address: 0000
line: 0008
F1: 0003 line: 9
N1: 010c line: 16
Address: 0108
line: 0014
F2: 010b line: 15
N2: 0111 line: 19
Address: 010d
line: 0017
F3: 0110 line: 18
N3: 0116 line: 22
Address: 0112
line: 0020
F4: 0115 line: 21
N4: 011a line: 24
Address: 0116
line: 0022
F5: 0119 line: 23
N5: 0121 line: 28
Address: 011d
line: 0026
F6: 0120 line: 27
N6: 0128 line: 32
Address: 0124
line: 0030
F7: 0127 line: 31
N7: 012e line: 35
Address: 012a
line: 0033
F8: 012d line: 34
PASS: 0134 line: 38
Address: 0130
line: 0036
F9: 0133 line: 37
Hex dump
0000:81 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00
0010:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0020:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0030:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0040:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0050:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0060:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0070:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0080:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0090:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00a0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00b0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00c0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00d0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00e0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00f0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0100:39 00 fe 30 01 37 ff ff 81 0c 01 00 10 83 11 01
0110:00 10 85 16 01 00 8a 1a 01 00 51 4a ff 88 21 01
0120:00 56 4a 01 87 28 01 00 4a ff 86 2e 01 00 41 03
0130:89 34 01 00 00 00