Subversion Repositories pentevo

Rev

Rev 801 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
801 savelij 1
 
2
;LAST UPDATE: 12.04.2018 savelij
3
 
4
ADR_BUF_ISD     EQU 0X6000
5
 
6
                PHASE 5E00H
952 savelij 7
                JP      LOC_5F56
801 savelij 8
 
9
                JP      SUB_5E3B
10
 
11
BYTE_5E06       DB 5
12
BYTE_5E07       DB 11H,0,0
13
WORD_5E0A       DW 0AAH
14
                DB 0D1H,3
15
WORD_5E0E       DW 0
16
BYTE_5E10       DB 0A0H
17
 
18
                IN      A,(PN_1F7)
19
                CP      50H
20
                RET     Z
21
SUB_5E16        LD      A,(BYTE_5E10)
22
                OUT     (PN_1F6),A
23
                LD      A,0CH
24
                OUT     (PN_3F6),A
25
                LD      B,0
26
LOC_5E21        DJNZ    $
27
                LD      A,8
28
                OUT     (PN_3F6),A
29
LOC_5E27        IN      A,(PN_1F7)
30
                RLCA
31
                JR      C,LOC_5E27
32
                LD      A,10H
33
                OUT     (PN_1F7),A
34
LOC_5E30        IN      A,(PN_1F7)
35
                BIT     7,A
36
                JR      NZ,LOC_5E30
37
                CP      50H
38
                RET     Z
39
                JR      SUB_5E16
40
 
41
SUB_5E3B        CALL    SUB_5E7B
42
                JR      C,LOC_5E56
43
LOC_5E40        CALL    SUB_5EC4
44
                PUSH    BC
45
                CALL    SUB_5F06
46
                POP     BC
47
                RET     C
48
                LD      A,B
49
                OR      A
50
                JR      Z,LOC_5E52
51
                CALL    SUB_5ED6
52
                JR      LOC_5E40
53
 
54
LOC_5E52        CALL    LOC_5EF7
55
                RET     Z
56
LOC_5E56        LD      A,E
57
                INC     A
58
                OUT     (PN_1F3),A
59
                LD      A,1
60
                OUT     (PN_1F2),A
61
                LD      A,21H
62
                OUT     (PN_1F7),A
63
                CALL    SUB_5F43
64
                RET     C
65
                LD      B,0
66
LOC_5E68        LD      C,PN_1F0
67
                INI
68
                INC     C
69
                INI
70
                JR      NZ,LOC_5E68
71
LOC_5E71        IN      A,(PN_1F0)
72
                IN      A,(PN_1F7)
73
                BIT     3,A
74
                JR      NZ,LOC_5E71
75
                RRCA
76
                RET
77
 
78
SUB_5E7B        PUSH    DE
79
                EXX
80
                POP     DE
81
                LD      HL,(WORD_5E0A)
82
                EX      DE,HL
83
                XOR     A
84
                LD      B,A
85
                LD      C,A
86
LOC_5E85        SBC     HL,DE
87
                INC     BC
88
                JR      NC,LOC_5E85
89
                DEC     BC
90
                ADD     HL,DE
91
                LD      A,(BYTE_5E07)
92
                RLCA
93
                LD      E,A
94
                XOR     A
95
                LD      D,A
96
LOC_5E93        SBC     HL,DE
97
                INC     A
98
                JR      NC,LOC_5E93
99
                DEC     A
100
                ADD     HL,DE
101
                EX      DE,HL
102
                LD      D,A
103
                LD      HL,(WORD_5E0E)
104
                ADD     HL,BC
105
                LD      A,E
106
                EX      AF,AF'
107
                CALL    SUB_5EE3
108
                EX      AF,AF'
109
                SRL     B
110
                LD      E,A
111
                JR      Z,LOC_5EBD
112
                JR      C,LOC_5EB7
113
                RRCA
114
                JR      C,LOC_5EB2
115
LOC_5EB0        LD      A,0FFH
116
LOC_5EB2        LD      (LOC_5EF7_1),A
117
SUB_5EB5        OR      A
118
                RET
119
 
120
LOC_5EB7        RRCA
121
                JR      NC,LOC_5EB2
122
                INC     B
123
                JR      LOC_5EB0
124
 
125
LOC_5EBD        INC     B
126
                RRCA
127
                JR      C,LOC_5EB0
128
                LD      E,A
129
                SCF
130
                RET
131
 
132
SUB_5EC4        SRL     E
133
                LD      A,E
134
                PUSH    AF
135
                LD      A,(BYTE_5E07)
136
                SUB     E
137
                LD      E,A
138
                LD      A,B
139
                SUB     E
140
                JR      NC,LOC_5ED3
141
                XOR     A
142
                LD      E,B
143
LOC_5ED3        LD      B,A
144
                POP     AF
145
                RET
146
 
147
SUB_5ED6        LD      E,0
148
                EXX
149
                INC     D
150
                LD      A,(BYTE_5E06)
151
                CP      D
152
                JR      NZ,SUB_5EE3
153
                LD      D,0
154
                INC     HL
155
SUB_5EE3        IN      A,(PN_1F7)
156
                CP      50H
157
                JR      NZ,SUB_5EE3
158
                LD      A,L
159
                OUT     (PN_1F4),A
160
                LD      A,H
161
                OUT     (PN_1F5),A
162
                LD      A,(BYTE_5E10)
163
                OR      D
164
                OUT     (PN_1F6),A
165
                EXX
166
                RET
167
 
168
LOC_5EF7        LD      A,0
169
LOC_5EF7_1      EQU $-1
170
                CP      0FFH
171
                RET     Z
172
                IN      A,(PN_1F3)
173
                LD      E,A
174
                LD      A,(BYTE_5E07)
175
                CP      E
176
                JR      Z,SUB_5ED6
177
                RET
178
 
179
SUB_5F06        PUSH    AF
180
                INC     A
181
                OUT     (PN_1F3),A
182
                POP     AF
183
                LD      A,E
184
                OUT     (PN_1F2),A
185
                LD      A,21H
186
                OUT     (PN_1F7),A
187
                JR      NC,LOC_5F2B
188
                CALL    SUB_5F43
189
                RET     C
190
                LD      B,80H
191
LOC_5F1A        IN      A,(PN_1F0)
192
                DJNZ    LOC_5F1A
193
LOC_5F1E        LD      C,PN_1F0
194
                INI
195
                INC     C
196
                INI
197
                JR      NZ,LOC_5F1E
198
                IN      A,(PN_1F2)
199
                OR      A
200
                RET     Z
201
LOC_5F2B        CALL    SUB_5F43
202
                RET     C
203
                LD      C,PN_1F0
204
LOC_5F31        INI
205
                INC     C
206
                INI
207
                DEC     C
208
                IN      A,(PN_1F7)
209
                BIT     3,A
210
                JR      NZ,LOC_5F31
211
                IN      A,(PN_1F2)
212
                OR      A
213
                JR      NZ,LOC_5F2B
214
                RET
215
 
216
SUB_5F43        IN      A,(PN_1F7)
217
                BIT     7,A
218
                JR      NZ,SUB_5F43
219
                BIT     3,A
220
                JR      Z,SUB_5F43
221
                RRCA
222
                RET     NC
223
                CALL    SUB_5E16
224
                LD      A,7
225
                SCF
226
                RET
227
 
228
LOC_5F56        LD      SP,5DC0H
229
                CALL    SUB_5EB5
230
LOC_5F5C        LD      A,1
231
LOC_5F5C_1      EQU $-1
232
                OUT     (0FEH),A
233
                CALL    SUB_5F6E
234
                LD      HL, LOC_5F5C_1
235
                INC     (HL)
236
                LD      HL,WORD_5E0E
237
                INC     (HL)
238
                JR      NZ,LOC_5F5C
239
                HALT
240
 
241
SUB_5F6E        LD      HL,ADR_BUF_ISD
242
                LD      B,1
243
                LD      DE,0
244
                CALL    SUB_5E3B
245
                RET     C
246
                LD      HL,(ADR_BUF_ISD+7DH)
247
                LD      DE,"AK"
248
                LD      A,(ADR_BUF_ISD+7FH)
249
                XOR     'Y'
250
                RET     NZ
251
                SBC     HL,DE
252
                RET     NZ
253
                LD      HL,(ADR_BUF_ISD+61H)
254
                LD      A,L
255
                OR      H
256
                RET     Z
257
                LD      (BYTE_5E06),HL
258
                LD      HL,(ADR_BUF_ISD+73H)
259
                LD      A,L
260
                OR      H
261
                RET     Z
262
                LD      (WORD_5E0A),HL
263
                LD      DE,(ADR_BUF_ISD+91H)
264
                LD      A,E
265
                OR      D
266
                RET     Z
267
                LD      HL,(ADR_BUF_ISD+8CH)
268
                LD      A,L
269
                OR      H
270
                RET     Z
271
                LD      A,(ADR_BUF_ISD+8FH)
272
                OR      A
273
                RET     Z
274
                INC     A
275
                LD      B,A
276
                PUSH    HL
277
                CALL    SUB_5E3B
278
                RET     NC
279
                POP     HL
280
                RET
281
                DEPHASE