Rev 104 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
94 | lvd | 1 | |
2 | CPU Z80UNDOC |
||
3 | RELAXED ON |
||
4 | |||
5 | include "ports.inc" |
||
6 | |||
7 | |||
8 | |||
9 | |||
10 | LFSR MACRO |
||
11 | |||
12 | ;23bit lfsr, bits 22,17 -- 0100_0010__0000_0000__0000_0000 |
||
13 | ; |
||
14 | ; regs BDE |
||
15 | |||
16 | srl b |
||
17 | rr d |
||
18 | rr e |
||
19 | sbc a,a |
||
20 | and 0x42 |
||
21 | xor b |
||
22 | ld b,a |
||
23 | |||
24 | ENDM |
||
25 | |||
103 | lvd | 26 | TSTRAM4 MACRO |
94 | lvd | 27 | |
28 | push bc |
||
29 | push de |
||
30 | |||
31 | .wrloop |
||
32 | ld a,ixl |
||
33 | out (c),a |
||
34 | LFSR |
||
35 | ld (hl),a |
||
36 | inc ixl |
||
37 | jr nz,.wrloop |
||
38 | |||
39 | |||
40 | pop de |
||
41 | pop bc |
||
42 | |||
43 | .rdloop |
||
44 | ld a,ixl |
||
45 | out (c),a |
||
46 | LFSR |
||
47 | cp (hl) |
||
48 | jr nz,.error |
||
49 | inc ixl |
||
50 | jr nz,.rdloop |
||
51 | jr .end |
||
52 | |||
53 | .error |
||
103 | lvd | 54 | ld a,3 |
55 | out (WIN1),a |
||
56 | ld sp,0x8000 |
||
57 | jp $+3 |
||
58 | jp start2 |
||
59 | |||
60 | .end |
||
61 | ENDM |
||
62 | |||
63 | |||
64 | TSTRAM2 MACRO |
||
65 | |||
66 | push bc |
||
67 | push de |
||
68 | |||
69 | ld ixl,0 |
||
70 | .wrloop |
||
71 | ld a,ixl |
||
72 | out (c),a |
||
73 | LFSR |
||
74 | ld (hl),a |
||
75 | inc ixl |
||
76 | ld a,ixl |
||
77 | add a,a |
||
78 | jr nc,.wrloop |
||
79 | |||
80 | |||
81 | pop de |
||
82 | pop bc |
||
83 | |||
84 | ld ixl,0 |
||
85 | .rdloop |
||
86 | ld a,ixl |
||
87 | out (c),a |
||
88 | LFSR |
||
89 | cp (hl) |
||
90 | jr nz,.error |
||
91 | inc ixl |
||
92 | ld a,ixl |
||
93 | add a,a |
||
94 | jr nc,.rdloop |
||
95 | jr .end |
||
96 | |||
97 | .error |
||
94 | lvd | 98 | inc a |
99 | out (LEDCTR),a |
||
100 | jr .error |
||
101 | |||
102 | .end |
||
103 | ENDM |
||
104 | |||
105 | |||
108 | lvd | 106 | TSTRM22 MACRO |
94 | lvd | 107 | |
108 | lvd | 108 | push bc |
109 | push de |
||
110 | |||
111 | ld ixl,0 |
||
112 | .wrloop |
||
113 | ld a,ixl |
||
114 | rrca |
||
115 | out (c),a |
||
116 | LFSR |
||
117 | ld (hl),a |
||
118 | inc ixl |
||
119 | ld a,ixl |
||
120 | add a,a |
||
121 | jr nc,.wrloop |
||
122 | |||
123 | |||
124 | pop de |
||
125 | pop bc |
||
126 | |||
127 | ld ixl,0 |
||
128 | .rdloop |
||
129 | ld a,ixl |
||
130 | rrca |
||
131 | out (c),a |
||
132 | LFSR |
||
133 | cp (hl) |
||
134 | jr nz,.error |
||
135 | inc ixl |
||
136 | ld a,ixl |
||
137 | add a,a |
||
138 | jr nc,.rdloop |
||
139 | jr .end |
||
140 | |||
141 | .error |
||
142 | inc a |
||
143 | out (LEDCTR),a |
||
144 | jr .error |
||
145 | |||
146 | .end |
||
147 | ENDM |
||
148 | |||
149 | |||
150 | |||
151 | |||
94 | lvd | 152 | org 0x4000 |
153 | ; we are in 3rd 16k page now |
||
154 | |||
155 | ; norom, no ramro, 24mhz |
||
156 | |||
157 | ld a,M_NOROM+C_24MHZ+M_EXPAG |
||
158 | out (GSCFG0),a |
||
159 | |||
160 | |||
161 | xor a |
||
162 | ld (led),a |
||
163 | |||
164 | ld l,a |
||
165 | ld ixl,a |
||
166 | |||
167 | ld b,0xcc |
||
168 | ld de,0x5aa5 |
||
169 | |||
170 | testloop |
||
171 | ld a,(led) |
||
172 | inc a |
||
173 | ld (led),a |
||
108 | lvd | 174 | rrca |
175 | rrca |
||
94 | lvd | 176 | out (LEDCTR),a |
177 | |||
178 | |||
179 | ld h,0xE0 |
||
180 | ld c,WIN3 |
||
103 | lvd | 181 | TSTRAM4 |
94 | lvd | 182 | |
183 | |||
184 | ld h,0xA0 |
||
185 | ld c,WIN2 |
||
103 | lvd | 186 | TSTRAM4 |
94 | lvd | 187 | |
188 | |||
189 | ld a,3 |
||
190 | out (WIN2),a |
||
191 | ld sp,0xc000 |
||
192 | jp $+0x4000+3 |
||
193 | |||
194 | ld h,0x60 |
||
195 | ld c,WIN1 |
||
103 | lvd | 196 | TSTRAM4 |
94 | lvd | 197 | |
198 | ld a,3 |
||
199 | out (WIN1),a |
||
200 | ld sp,0x8000 |
||
201 | jp $+3 |
||
202 | |||
203 | |||
204 | ld h,0x20 |
||
205 | ld c,WIN0 |
||
103 | lvd | 206 | TSTRAM4 |
94 | lvd | 207 | |
208 | |||
209 | ld h,0xA0 |
||
210 | ld c,MPAG |
||
103 | lvd | 211 | TSTRAM4 |
94 | lvd | 212 | |
213 | ld h,0xE0 |
||
214 | ld c,MPAGEX |
||
103 | lvd | 215 | TSTRAM4 |
94 | lvd | 216 | |
103 | lvd | 217 | jp testloop |
94 | lvd | 218 | |
103 | lvd | 219 | start2 |
220 | xor a |
||
221 | ld (led),a |
||
222 | ld l,a |
||
94 | lvd | 223 | |
103 | lvd | 224 | loop2 |
225 | ld a,(led) |
||
226 | inc a |
||
227 | ld (led),a |
||
108 | lvd | 228 | rrca |
229 | rrca |
||
230 | rrca |
||
103 | lvd | 231 | out (LEDCTR),a |
94 | lvd | 232 | |
103 | lvd | 233 | ld h,0xE0 |
234 | ld c,WIN3 |
||
235 | TSTRAM2 |
||
94 | lvd | 236 | |
103 | lvd | 237 | |
238 | ld h,0xA0 |
||
239 | ld c,WIN2 |
||
240 | TSTRAM2 |
||
241 | |||
242 | |||
243 | ld a,3 |
||
244 | out (WIN2),a |
||
245 | ld sp,0xc000 |
||
246 | jp $+0x4000+3 |
||
247 | |||
248 | ld h,0x60 |
||
249 | ld c,WIN1 |
||
250 | TSTRAM2 |
||
251 | |||
252 | ld a,3 |
||
253 | out (WIN1),a |
||
254 | ld sp,0x8000 |
||
255 | jp $+3 |
||
256 | |||
257 | |||
258 | ld h,0x20 |
||
259 | ld c,WIN0 |
||
260 | TSTRAM2 |
||
261 | |||
262 | |||
263 | ld h,0xA0 |
||
108 | lvd | 264 | ld c,MPAG ;128 values for each port -- only 64 for mpag!!! |
265 | TSTRM22 |
||
103 | lvd | 266 | |
267 | ld h,0xE0 |
||
268 | ld c,MPAGEX |
||
108 | lvd | 269 | TSTRM22 |
103 | lvd | 270 | |
271 | jp loop2 |
||
272 | |||
273 | |||
274 | |||
94 | lvd | 275 | led equ $ |
276 |