Rev 1010 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
507 | savelij | 1 | |
1028 | savelij | 2 | ; LAST UPDATE: 13.10.2022 savelij |
507 | savelij | 3 | |
573 | savelij | 4 | COM_FAT EX AF,AF' |
585 | savelij | 5 | CALL P5_READ_BYTE |
573 | savelij | 6 | LD A,(NEXTBYTERST8) |
7 | PUSH IX |
||
8 | PUSH IY |
||
9 | LD IYL,EXTERNAL |
||
10 | JR ICOM_FAT1 |
||
507 | savelij | 11 | |
12 | ; FAT |
||
573 | savelij | 13 | ICOM_FAT EX AF,AF' |
507 | savelij | 14 | EX (SP),HL |
15 | LD A,(HL) |
||
16 | INC HL |
||
17 | EX (SP),HL |
||
18 | PUSH IX |
||
19 | PUSH IY |
||
573 | savelij | 20 | LD IYL,INTERNAL |
21 | ICOM_FAT1 LD (ERORDRV),SP |
||
507 | savelij | 22 | PUSH HL |
23 | LD HL,EXITDRV |
||
24 | EX (SP),HL |
||
25 | PUSH HL |
||
26 | LD HL,TABLFAT |
||
573 | savelij | 27 | ADD A,A |
507 | savelij | 28 | ADD A,L |
29 | LD L,A |
||
30 | LD A,H |
||
31 | ADC A,0 |
||
32 | LD H,A |
||
33 | LD A,(HL) |
||
34 | INC HL |
||
35 | LD H,(HL) |
||
36 | LD L,A |
||
37 | EX AF,AF' |
||
38 | EX (SP),HL |
||
39 | RET |
||
40 | |||
41 | ERR_DRV LD SP,(ERORDRV) |
||
42 | EXITDRV POP IY |
||
43 | POP IX |
||
44 | RET |
||
45 | |||
1028 | savelij | 46 | TABLFAT DW INIT_FATVARS ; 樠 ६ FAT |
47 | DW READ_DIR ; 祭 ⥫ 䠩 |
||
48 | DW ENTER_DIR ; 室/室 |
||
49 | DW GET_PATH ; 祭 ⥪饣 |
||
50 | DW GET_LONGNAME ; 祭 䠩 |
||
51 | DW FIND_NAME ; |
||
52 | DW FIND_FILEITEM ; ⥫ 뤠祩 |
||
53 | DW SET_MASK_EXT ; ⠭ ᪨ ७ ᪠ |
||
54 | DW OPEN_FILE ; ⨥ 䠩 |
||
55 | DW READ_FILE ; ⥫쭮 ⥭ 䠩 |
||
56 | DW INIT_TEKDIR ; ᮧ ⠡ ⥪饩 ४ਨ |
||
57 | DW POS_FILES ; ࠡ ⥪饩 樥 |
||
58 | DW ROOTDIR ; 室 ४ |
||
507 | savelij | 59 | |
875 | savelij | 60 | ROOTDIR PUSH IY |
61 | LD IYL,INTERNAL |
||
62 | LD A,(SETDVOL) |
||
63 | LD D,A |
||
64 | LD L,A |
||
65 | LD H,0 |
||
66 | ADD HL,HL |
||
67 | ADD HL,HL |
||
68 | ADD HL,HL |
||
961 | savelij | 69 | LD BC,BUF_TABLVOL + 2 |
875 | savelij | 70 | ADD HL,BC |
71 | LD A,(HL) |
||
72 | LD HL,BUF_TABLVOL |
||
73 | CALL INIT_FATVARS |
||
961 | savelij | 74 | LD DE,(CurrentDIRCluster) |
75 | LD BC,(CurrentDIRCluster + 2) |
||
875 | savelij | 76 | CALL INIT_TEKDIR |
77 | POP IY |
||
78 | RET |
||
79 | |||
961 | savelij | 80 | ; 樠 ६ FAT |
81 | ; 室: |
||
82 | ; HL = ⠡ ࠧ |
||
83 | ; DE = D - ࠭ ࠧ, E - ⢮ ࠧ |
||
84 | ; A = ⨯ ࠧ MBR |
||
85 | ; 室: |
||
86 | ; BCDE = ४ਨ |
||
87 | ; A = ⨯ ࠧ MBR |
||
573 | savelij | 88 | INIT_FATVARS PUSH HL |
961 | savelij | 89 | LD HL,0xFFFF |
90 | LD (NumSec2Buf + 2),HL |
||
91 | LD (FATType),A |
||
573 | savelij | 92 | LD E,D |
93 | LD D,0 |
||
507 | savelij | 94 | EX DE,HL |
573 | savelij | 95 | POP DE |
507 | savelij | 96 | ADD HL,HL |
97 | ADD HL,HL |
||
573 | savelij | 98 | ADD HL,HL |
507 | savelij | 99 | ADD HL,DE |
573 | savelij | 100 | INC HL |
101 | INC HL |
||
102 | INC HL |
||
103 | CALL LOADZP |
||
961 | savelij | 104 | LD (StartSecVol),DE |
105 | LD (StartSecVol + 2),BC ; ࢮ ᥪ ࠧ |
||
573 | savelij | 106 | CALL LOADLST |
736 | savelij | 107 | CALL VALID_BOOTSEC |
108 | AND A |
||
109 | JR Z,RDFAT07 |
||
110 | SCF |
||
111 | RET |
||
112 | |||
1028 | savelij | 113 | RDFAT07 LD A,(BUF_512 + _BPB_SecPerClus) |
961 | savelij | 114 | LD (SecPerClus),A |
115 | LD HL,(BUF_512 + _BPB_RsvdSecCnt) |
||
116 | ADD HL,DE |
||
117 | LD (NumSecFAT1),HL |
||
118 | LD HL,0 |
||
1007 | savelij | 119 | ADC HL,BC |
120 | LD (NumSecFAT1 + 2),HL |
||
121 | LD HL,0 |
||
961 | savelij | 122 | LD DE,(BUF_512 + _BPB_FATSz16) |
573 | savelij | 123 | LD A,D |
124 | OR E |
||
961 | savelij | 125 | JR NZ,RDFAT01 ; FAT12/16 (_BPB_FATSz16 == 0) |
126 | LD DE,(BUF_512 + _BPB_FATSz32) |
||
1028 | savelij | 127 | LD HL,(BUF_512 + _BPB_FATSz32 + 2) ; ६ ᬥ饭 +36 |
961 | savelij | 128 | RDFAT01 LD (FATSize),DE |
1028 | savelij | 129 | LD (FATSize + 2),HL ; ᥪ FAT ⠡ |
961 | savelij | 130 | |
573 | savelij | 131 | LD HL,0 |
961 | savelij | 132 | LD DE,(BUF_512 + _BPB_TotSec16) |
573 | savelij | 133 | LD A,D |
134 | OR E |
||
1028 | savelij | 135 | JR NZ,.L1 ; FAT12/16 (BPB_TOTSEC16=0) |
961 | savelij | 136 | LD DE,(BUF_512 + _BPB_TotSec32) |
137 | LD HL,(BUF_512 + _BPB_TotSec32+2) |
||
1028 | savelij | 138 | ; ६ ᬥ饭 +32 |
961 | savelij | 139 | .L1 LD (NumsSectorsVol + 2),HL |
1028 | savelij | 140 | LD (NumsSectorsVol),DE ; - ᥪ ᪥/ࠧ |
573 | savelij | 141 | |
961 | savelij | 142 | ; 塞 ROOTDIRSECTORS |
143 | LD DE,(BUF_512 + _BPB_RootEntCnt) |
||
507 | savelij | 144 | LD BC,0 |
573 | savelij | 145 | LD A,D |
146 | OR E |
||
147 | JR Z,RDFAT03 |
||
1028 | savelij | 148 | LD A,0x10 |
573 | savelij | 149 | CALL BCDE_A |
150 | |||
1028 | savelij | 151 | ; ॠ 㫠 |
152 | ; ROOTDIRSECTORS = ((BPB_ROOTENTCNT * 32) + (BPB_BYTSPERSEC - 1)) / BPB_BYTSPERSEC |
||
153 | ; HL ROOTDIRSECTORS. FAT32, HL = 0 ᥣ |
||
573 | savelij | 154 | |
1028 | savelij | 155 | RDFAT03 PUSH DE ; ROOTDIRSECTORS |
1007 | savelij | 156 | LD HL,NumSecFAT1 |
157 | CALL LOADZP |
||
961 | savelij | 158 | LD A,(BUF_512 + _BPB_NumFATs) |
159 | LD (NumFATs),A |
||
573 | savelij | 160 | DEC A |
961 | savelij | 161 | JR Z,.L1 |
162 | LD HL,FATSize |
||
163 | CALL BCDEHLP |
||
164 | LD (NumSecFAT2),DE |
||
165 | LD (NumSecFAT2 + 2),BC |
||
166 | .L1 LD HL,FATSize |
||
167 | CALL BCDEHLP |
||
168 | LD (NumSecRootDir),DE |
||
169 | LD (NumSecRootDir + 2),BC |
||
170 | POP HL |
||
171 | ; 塞 ࠧ ROOTDIR |
||
172 | ADD HL,DE |
||
507 | savelij | 173 | EX DE,HL |
961 | savelij | 174 | LD HL,0 |
175 | ADC HL,BC |
||
507 | savelij | 176 | LD B,H |
177 | LD C,L |
||
961 | savelij | 178 | LD (FirstSecData),DE |
179 | LD (FirstSecData + 2),BC |
||
180 | LD HL,NumsSectorsVol |
||
181 | CALL BCDEHLM |
||
182 | LD A,(SecPerClus) |
||
183 | CALL BCDE_A |
||
184 | LD (NumsClustersVol),DE |
||
185 | LD (NumsClustersVol + 2),BC |
||
573 | savelij | 186 | |
961 | savelij | 187 | LD A,(FATType) |
1028 | savelij | 188 | CP 0xFF |
1010 | savelij | 189 | JR NZ,.L4 |
961 | savelij | 190 | ; । ⨯ FAT ⢨ MBR |
1028 | savelij | 191 | LD HL,(BUF_512 + _BPB_FATSz16) |
192 | LD A,H |
||
193 | OR L |
||
194 | LD A,2 |
||
195 | JR Z,.L2 |
||
961 | savelij | 196 | LD DE,(FATSize - 1) |
197 | LD BC,(FATSize + 1) |
||
198 | LD E,0 ; BCDE = ⢮ ᥪ * 0x100 |
||
199 | LD HL,NumsClustersVol ; ⢮ FAT |
||
200 | CALL HLBCDEM ; ⢮ - (⢮ ᥪ * 0x100) |
||
573 | savelij | 201 | LD A,D |
202 | OR C |
||
203 | OR B |
||
961 | savelij | 204 | LD A,1 ; FAT16 |
1010 | savelij | 205 | JR Z,.L2 ; FAT16 䫠 Z=0 |
961 | savelij | 206 | XOR A ; FAT12 |
1010 | savelij | 207 | .L2 LD (FATType),A |
573 | savelij | 208 | |
961 | savelij | 209 | ; FAT12/16 ROOT = 0 |
210 | ; FAT32 ६ ᬥ饭 +44 |
||
211 | ; 室: BCDE - ROOTDIR |
||
1010 | savelij | 212 | .L4 XOR A |
961 | savelij | 213 | LD (TEK_LEV),A |
214 | LD (BUF_PATH),A |
||
215 | CALL INIT_PATH |
||
216 | LD A,(FATType) |
||
1010 | savelij | 217 | PUSH AF |
736 | savelij | 218 | AND A |
573 | savelij | 219 | LD DE,0 |
220 | LD B,D |
||
221 | LD C,E |
||
1028 | savelij | 222 | JR Z,.L3 ; FAT12-NONE |
573 | savelij | 223 | DEC A |
1028 | savelij | 224 | JR Z,.L3 ; FAT16 |
961 | savelij | 225 | LD DE,(BUF_512 + _BPB_RootClus) |
1028 | savelij | 226 | LD BC,(BUF_512 + _BPB_RootClus + 2) ; FAT32 |
1010 | savelij | 227 | .L3 LD (CurrentDIRCluster),DE |
961 | savelij | 228 | LD (CurrentDIRCluster + 2),BC ; ⥪饣 |
229 | LD (RootDIRCluster),DE |
||
230 | LD (RootDIRCluster + 2),BC ; |
||
1010 | savelij | 231 | POP AF |
573 | savelij | 232 | RET |
507 | savelij | 233 | |
961 | savelij | 234 | ; ઠ 0 ᥪ ࠧ |
235 | VALID_BOOTSEC LD HL,(BUF_512 + _BPB_BytsPerSec) |
||
236 | LD A,H |
||
736 | savelij | 237 | SUB 2 |
961 | savelij | 238 | OR L |
736 | savelij | 239 | JR NZ,VALID_BOOTSEC1 |
961 | savelij | 240 | LD HL,(BUF_512 + _BPB_SecPerClus) |
241 | OR L |
||
736 | savelij | 242 | JR Z,VALID_BOOTSEC1 |
243 | NEG |
||
961 | savelij | 244 | AND L |
245 | CP L |
||
736 | savelij | 246 | JR NZ,VALID_BOOTSEC1 |
961 | savelij | 247 | LD A,(BUF_512 + _BPB_NumFATs) |
736 | savelij | 248 | DEC A |
249 | CP 7 |
||
250 | JR NC,VALID_BOOTSEC1 |
||
251 | XOR A |
||
252 | RET |
||
253 | |||
254 | VALID_BOOTSEC1 OR IXH |
||
255 | RET |
||
256 | |||
961 | savelij | 257 | ; ନ ⠡ DIR |
258 | ; ࢮ "쭮" DIR |
||
573 | savelij | 259 | INIRTSC PUSH AF |
961 | savelij | 260 | LD HL,0xFFFF |
261 | LD (NumSec2Buf + 2),HL |
||
573 | savelij | 262 | LD HL,BUF_TDIRCLS |
961 | savelij | 263 | LD DE,(CurrentDIRCluster) |
264 | LD BC,(CurrentDIRCluster + 2) |
||
573 | savelij | 265 | CALL SAVEZP |
266 | LD A,D |
||
267 | OR E |
||
268 | OR B |
||
269 | OR C |
||
270 | JR Z,LASTCLS |
||
271 | NEXTCLS PUSH HL |
||
272 | CALL RDFATZP |
||
273 | CALL LST_CLS |
||
274 | POP HL |
||
275 | JR C,LASTCLS |
||
276 | CALL SAVEZP |
||
277 | JR NEXTCLS |
||
278 | |||
961 | savelij | 279 | LASTCLS LD BC,0xFFFF |
573 | savelij | 280 | CALL SAVEZP |
281 | CALL POSTF02 |
||
282 | POP AF |
||
283 | RET |
||
284 | |||
1028 | savelij | 285 | ; ⥭ 饣 |
961 | savelij | 286 | RDFATZP LD A,(FATType) |
573 | savelij | 287 | AND A |
288 | JR Z,RDFATS0 |
||
289 | DEC A |
||
290 | JR Z,RDFATS1 |
||
291 | EX DE,HL |
||
292 | ADD HL,HL |
||
293 | EX DE,HL |
||
294 | LD HL,0 |
||
295 | ADC HL,BC |
||
1028 | savelij | 296 | ADD HL,BC ; HLDE = BCDE * 2 |
573 | savelij | 297 | LD A,E |
298 | LD E,D |
||
299 | LD D,L |
||
300 | LD C,H |
||
301 | LD B,0 |
||
302 | CALL RDFATS2 |
||
303 | INC HL |
||
507 | savelij | 304 | LD C,(HL) |
305 | INC HL |
||
306 | LD B,(HL) |
||
573 | savelij | 307 | RET |
308 | |||
309 | RDFATS1 LD BC,0 |
||
310 | LD A,E |
||
311 | LD E,D |
||
312 | LD D,C |
||
313 | RDFATS2 PUSH AF |
||
314 | PUSH BC |
||
961 | savelij | 315 | LD HL,NumSecFAT1 |
573 | savelij | 316 | CALL BCDEHLP |
317 | CALL LOADLST |
||
318 | POP BC |
||
319 | POP AF |
||
320 | LD E,A |
||
321 | LD D,0 |
||
507 | savelij | 322 | ADD HL,DE |
573 | savelij | 323 | ADD HL,DE |
507 | savelij | 324 | LD E,(HL) |
325 | INC HL |
||
326 | LD D,(HL) |
||
573 | savelij | 327 | RET |
328 | |||
329 | RDFATS0 LD H,D |
||
330 | LD L,E |
||
331 | ADD HL,HL |
||
332 | ADD HL,DE |
||
333 | SRL H |
||
334 | RR L |
||
335 | LD A,E |
||
336 | LD E,H |
||
337 | LD D,0 |
||
338 | LD B,D |
||
339 | LD C,D |
||
340 | SRL E |
||
341 | PUSH AF |
||
342 | PUSH HL |
||
961 | savelij | 343 | LD DE,(NumSecFAT1) |
344 | LD BC,(NumSecFAT1 + 2) |
||
573 | savelij | 345 | CALL LOADLST |
346 | POP BC |
||
347 | LD A,B |
||
348 | AND 1 |
||
349 | LD B,A |
||
350 | ADD HL,BC |
||
351 | LD B,(HL) |
||
507 | savelij | 352 | INC HL |
573 | savelij | 353 | LD A,H |
354 | CP HIGH (BUF_512)+2 |
||
355 | JR NZ,RDFATS4 |
||
507 | savelij | 356 | PUSH BC |
573 | savelij | 357 | LD BC,0 |
358 | INC DE |
||
359 | CALL LOADLST |
||
507 | savelij | 360 | POP BC |
573 | savelij | 361 | RDFATS4 POP AF |
362 | LD D,(HL) |
||
363 | LD E,B |
||
364 | LD BC,0 |
||
365 | RRA |
||
366 | JR NC,RDFATS3 |
||
961 | savelij | 367 | REPT 4 |
573 | savelij | 368 | SRL D |
369 | RR E |
||
961 | savelij | 370 | ENDM |
573 | savelij | 371 | RDFATS3 LD A,D |
1028 | savelij | 372 | AND 0x0F |
573 | savelij | 373 | LD D,A |
374 | RET |
||
375 | |||
961 | savelij | 376 | ; ॠ쭮 ᥪ |
377 | ; 室: BCDE = FAT |
||
378 | ; 室: BCDE = ᥪ |
||
573 | savelij | 379 | REALSEC LD A,B |
380 | OR C |
||
381 | OR D |
||
382 | OR E |
||
383 | JR NZ,REALSE1 |
||
961 | savelij | 384 | LD DE,(NumSecRootDir) |
385 | LD BC,(NumSecRootDir + 2) |
||
386 | RET |
||
507 | savelij | 387 | |
1028 | savelij | 388 | REALSE1 LD HL,0xFFFE |
573 | savelij | 389 | EX DE,HL |
507 | savelij | 390 | ADD HL,DE |
391 | EX DE,HL |
||
573 | savelij | 392 | INC HL |
1028 | savelij | 393 | ADC HL,BC ; -2 |
961 | savelij | 394 | LD A,(SecPerClus) |
573 | savelij | 395 | JR REALSE2 |
396 | |||
397 | REALSE3 SLA E |
||
398 | RL D |
||
399 | RL L |
||
400 | RL H |
||
401 | REALSE2 RRCA |
||
1028 | savelij | 402 | JR NC,REALSE3 ; 㬭 ࠧ |
507 | savelij | 403 | LD B,H |
404 | LD C,L |
||
961 | savelij | 405 | LD HL,FirstSecData |
1028 | savelij | 406 | JP BCDEHLP ; ਡ ᬥ饭 砫 ࠧ |
573 | savelij | 407 | |
1028 | savelij | 408 | ; ࠭塞 ᥪ 㦥 |
961 | savelij | 409 | LSTSAVE LD DE,(NumSec2Buf) |
410 | LD BC,(NumSec2Buf + 2) |
||
573 | savelij | 411 | LD HL,BUF_512 |
412 | LD A,1 |
||
413 | CALL TO_DRV |
||
585 | savelij | 414 | DB _DEV_WRITE |
573 | savelij | 415 | AND A |
416 | JP NZ,ERR_DRV |
||
507 | savelij | 417 | RET |
418 | |||
1028 | savelij | 419 | ; 㦠 ᥪ |
507 | savelij | 420 | LOADLST CALL CPNUMSC |
421 | JR NZ,LOADLS1 |
||
422 | LD HL,BUF_512 |
||
423 | RET |
||
424 | |||
961 | savelij | 425 | LOADLS1 LD (NumSec2Buf),DE |
426 | LD (NumSec2Buf + 2),BC |
||
507 | savelij | 427 | LD HL,BUF_512 |
428 | PUSH HL |
||
573 | savelij | 429 | LD A,1 |
507 | savelij | 430 | CALL TO_DRV |
585 | savelij | 431 | DB _DEV_READ |
507 | savelij | 432 | AND A |
433 | JP NZ,ERR_DRV |
||
434 | POP HL |
||
435 | RET |
||
436 | |||
961 | savelij | 437 | ; ઠ 㦥 㦥 ᥪ |
438 | CPNUMSC LD HL,NumSec2Buf |
||
507 | savelij | 439 | LD A,(HL) |
440 | INC HL |
||
441 | CP E |
||
442 | RET NZ |
||
443 | LD A,(HL) |
||
444 | INC HL |
||
445 | CP D |
||
446 | RET NZ |
||
447 | LD A,(HL) |
||
448 | INC HL |
||
449 | CP C |
||
450 | RET NZ |
||
451 | LD A,(HL) |
||
452 | CP B |
||
453 | RET |
||
454 | |||
1028 | savelij | 455 | ; ઠ |
456 | LST_CLS LD A,(FATType) ; ⨯ FAT |
||
507 | savelij | 457 | AND A |
573 | savelij | 458 | JR NZ,LST_CL1 |
1028 | savelij | 459 | LD HL,0x0FF7 ; FAT12 |
573 | savelij | 460 | SBC HL,DE |
461 | RET |
||
507 | savelij | 462 | |
573 | savelij | 463 | LST_CL1 DEC A |
464 | JR NZ,LST_CL2 |
||
1028 | savelij | 465 | LD HL,0xFFF7 ; FAT16 |
573 | savelij | 466 | SBC HL,DE |
507 | savelij | 467 | RET |
468 | |||
1028 | savelij | 469 | LST_CL2 LD HL,0x0FFF |
573 | savelij | 470 | SBC HL,BC |
471 | RET NZ |
||
1028 | savelij | 472 | LD HL,0xFFF7 |
573 | savelij | 473 | SBC HL,DE |
474 | RET |
||
475 | |||
1028 | savelij | 476 | ; ⥫ ⥪饣 䠩 |
573 | savelij | 477 | READ_DIR LD A,IYL |
478 | AND A |
||
479 | JR NZ,GETFZA3 |
||
480 | PUSH IY |
||
481 | LD IYL,INTERNAL |
||
482 | PUSH HL |
||
483 | LD HL,(RREG_C) |
||
484 | LD (TEK_ZAP),HL |
||
485 | LD HL,GETFZA4 |
||
486 | EX (SP),HL |
||
1028 | savelij | 487 | GETFZA3 LD BC,(TEK_ZAP) ; ⥪騩 ⥫ |
507 | savelij | 488 | LD A,B |
489 | OR C |
||
1028 | savelij | 490 | JR Z,GETRZAP ; =0, ।騩 塞 |
491 | PUSH BC ; ࠭ ⥪騩 |
||
492 | DEC BC ; 㦭 ।騩 |
||
493 | CALL GETRZAP ; 塞 |
||
494 | POP BC ; 㫨 ⥪騩 |
||
495 | LD E,A ; ।饣 ⥫ 㦥 ⮫쪮 䫠 |
||
507 | savelij | 496 | GETRZAP PUSH DE |
1028 | savelij | 497 | CALL RDDIRSC ; ⠥ ᥪ ⥪騬 |
498 | POP DE ; 㫨 ॣ E |
||
507 | savelij | 499 | INC A |
1028 | savelij | 500 | LD A,E ; 㫨 稥/⢨ |
501 | RET Z ; 室 뫥⥫ । 饩 |
||
507 | savelij | 502 | EX AF,AF' |
503 | GETFZA1 LD A,C |
||
1028 | savelij | 504 | AND 0x0F ; 稫 ⥫ 㦥 ᥪ |
507 | savelij | 505 | LD E,A |
506 | LD D,0 |
||
507 | EX DE,HL |
||
508 | ADD HL,HL |
||
509 | ADD HL,HL |
||
510 | ADD HL,HL |
||
511 | ADD HL,HL |
||
512 | ADD HL,HL |
||
1028 | savelij | 513 | ADD HL,DE ; ࠭ ⥫ |
514 | LD DE,0x0B |
||
515 | LD A,(HL) ; 䫠 ⥪饣 ⥫ |
||
507 | savelij | 516 | EX DE,HL |
517 | ADD HL,DE |
||
1028 | savelij | 518 | LD L,(HL) ; |
519 | LD H,A ; 䫠 ⮣ ⥫ |
||
507 | savelij | 520 | EX DE,HL |
1028 | savelij | 521 | CALL CP_TWOT ; ઠ 稥 ".." |
522 | LD D,0 ; 㤥 室 ४ |
||
507 | savelij | 523 | JR NZ,GETFZA2 |
1028 | savelij | 524 | LD D,0x80 ; 㤥 室 । ४ |
507 | savelij | 525 | GETFZA2 EX AF,AF' |
1028 | savelij | 526 | CP 0x0F ; 塞 䫠 ।饣 ⥫ |
527 | LD A,E ; 䫠 ⥪饣 ⥫ |
||
528 | LD E,D ; ⠢ ࠢ |
||
507 | savelij | 529 | RET NZ |
1028 | savelij | 530 | INC E ; ⠭ |
507 | savelij | 531 | RET |
532 | |||
573 | savelij | 533 | GETFZA4 PUSH AF |
534 | PUSH HL |
||
535 | PUSH DE |
||
643 | savelij | 536 | LD DE,CPU6 |
573 | savelij | 537 | ADD HL,DE |
538 | LD DE,(RREG_L) |
||
1028 | savelij | 539 | LD BC,0x20 |
573 | savelij | 540 | CALL LDIR_BYTES |
541 | POP DE |
||
542 | POP HL |
||
543 | POP AF |
||
544 | POP IY |
||
545 | RET |
||
546 | |||
961 | savelij | 547 | ; ⥭ ᥪ DIR BC |
548 | ; 室: A = 0xFF - 室 । DIR |
||
507 | savelij | 549 | RDDIRSC PUSH BC |
550 | LD D,B |
||
551 | LD E,C |
||
552 | LD BC,0 |
||
1028 | savelij | 553 | LD A,0x10 |
507 | savelij | 554 | CALL BCDE_A |
555 | LD A,E |
||
556 | PUSH AF |
||
961 | savelij | 557 | LD A,(SecPerClus) |
507 | savelij | 558 | PUSH AF |
559 | CALL BCDE_A |
||
1028 | savelij | 560 | LD HL,BUF_TDIRCLS |
507 | savelij | 561 | EX DE,HL |
562 | ADD HL,HL |
||
563 | ADD HL,HL |
||
564 | ADD HL,DE |
||
565 | CALL LOADZP |
||
566 | BIT 7,B |
||
567 | JR Z,RDDIRS3 |
||
568 | POP BC |
||
569 | POP BC |
||
570 | POP BC |
||
571 | XOR A |
||
572 | DEC A |
||
573 | RET |
||
574 | |||
575 | RDDIRS3 CALL REALSEC |
||
576 | POP AF |
||
577 | DEC A |
||
578 | LD L,A |
||
579 | POP AF |
||
580 | AND L |
||
581 | LD L,A |
||
582 | LD H,0 |
||
583 | ADD HL,DE |
||
584 | EX DE,HL |
||
585 | LD HL,0 |
||
586 | ADC HL,BC |
||
587 | LD B,H |
||
588 | LD C,L |
||
589 | CALL LOADLST |
||
590 | POP BC |
||
591 | XOR A |
||
592 | RET |
||
593 | |||
1028 | savelij | 594 | ; ઠ 1 |
507 | savelij | 595 | CP_ONET LD A,(HL) |
573 | savelij | 596 | CP "." |
507 | savelij | 597 | RET NZ |
598 | INC HL |
||
599 | LD A,(HL) |
||
600 | DEC HL |
||
573 | savelij | 601 | CP " " |
507 | savelij | 602 | RET NZ |
603 | XOR A |
||
604 | RET |
||
605 | |||
1028 | savelij | 606 | ; ઠ 2 窨 |
507 | savelij | 607 | CP_TWOT LD A,(HL) |
573 | savelij | 608 | CP "." |
507 | savelij | 609 | RET NZ |
610 | INC HL |
||
611 | LD A,(HL) |
||
612 | DEC HL |
||
573 | savelij | 613 | CP "." |
507 | savelij | 614 | RET NZ |
615 | XOR A |
||
616 | RET |
||
617 | |||
573 | savelij | 618 | EPOS_FILES LD HL,(TEK_ZAP) |
619 | LD (RREG_C),HL |
||
620 | RET |
||
621 | |||
622 | POS_FILES LD D,A |
||
623 | LD A,IYL |
||
624 | LD IYL,INTERNAL |
||
625 | AND A |
||
626 | LD A,D |
||
627 | JR NZ,POSITFILE1 |
||
628 | LD HL,EPOS_FILES |
||
629 | PUSH HL |
||
630 | LD A,(RREG_A) |
||
631 | LD BC,(RREG_C) |
||
961 | savelij | 632 | POSITFILE1 CP LOW ((ENDTPOS - TPOSITF) / 2) |
507 | savelij | 633 | RET NC |
634 | ADD A,A |
||
635 | LD DE,TPOSITF |
||
636 | LD L,A |
||
637 | LD H,0 |
||
638 | ADD HL,DE |
||
639 | LD E,(HL) |
||
640 | INC HL |
||
641 | LD D,(HL) |
||
642 | EX DE,HL |
||
643 | JP (HL) |
||
644 | |||
1028 | savelij | 645 | TPOSITF DW POSTF00 ; ࠭ ⥪饩 樨 䠩 |
646 | DW POSTF01 ; ⠭ ⥪饩 樨 䠩 |
||
647 | DW POSTF02 ; ⥪饩 樨 0 ࢮ "쭮" |
||
648 | DW POSTF03 ; ६ "B" 䠩 |
||
649 | DW POSTF04 ; ६ "B" 䠩 । |
||
650 | DW POSTF05 ; ⢠ "" ᥩ |
||
651 | DW POSTF06 ; ⠭ "쭮" "BC" |
||
652 | DW POSTF07 ; "BC" ⥪騩 "쭮" |
||
507 | savelij | 653 | ENDTPOS |
654 | |||
1028 | savelij | 655 | ; ࠭ ⥪饩 樨 䠩 |
507 | savelij | 656 | POSTF00 LD HL,(TEK_ZAP) |
657 | LD (SAVEZAP),HL |
||
658 | RET |
||
659 | |||
1028 | savelij | 660 | ; ⠭ ⥪饩 樨 䠩 |
507 | savelij | 661 | POSTF01 LD HL,(SAVEZAP) |
662 | LD (TEK_ZAP),HL |
||
663 | RET |
||
664 | |||
1028 | savelij | 665 | ; ६ "B" 䠩 |
507 | savelij | 666 | POSTF03 LD A,B |
667 | AND A |
||
668 | RET Z |
||
961 | savelij | 669 | .L1 PUSH BC |
507 | savelij | 670 | CALL PRVLEGZ |
671 | POP BC |
||
961 | savelij | 672 | DJNZ .L1 |
507 | savelij | 673 | RET |
674 | |||
1028 | savelij | 675 | ; ६ "B" 䠩 । |
507 | savelij | 676 | POSTF04 LD A,B |
677 | AND A |
||
678 | RET Z |
||
961 | savelij | 679 | .L1 PUSH BC |
507 | savelij | 680 | CALL NXTLEGZ |
681 | POP BC |
||
961 | savelij | 682 | DJNZ .L1 |
507 | savelij | 683 | RET |
684 | |||
1028 | savelij | 685 | ; ⢠ "" ᥩ |
507 | savelij | 686 | POSTF05 LD BC,0 |
687 | PUSH BC |
||
688 | EXX |
||
689 | POP BC |
||
690 | EXX |
||
691 | CALL RDDIRSC |
||
961 | savelij | 692 | LD DE,_DIR_StructSize |
693 | .L4 LD A,(HL) |
||
573 | savelij | 694 | CP "." |
961 | savelij | 695 | JR NZ,.L5 |
507 | savelij | 696 | INC HL |
697 | LD A,(HL) |
||
698 | DEC HL |
||
573 | savelij | 699 | CP "." |
961 | savelij | 700 | JR Z,.L5 |
507 | savelij | 701 | INC BC |
702 | ADD HL,DE |
||
961 | savelij | 703 | JR .L4 |
507 | savelij | 704 | |
961 | savelij | 705 | .L1 INC BC |
507 | savelij | 706 | ADD HL,DE |
961 | savelij | 707 | .L5 LD A,H |
708 | CP HIGH (BUF_512) + 2 |
||
709 | JR NZ,.L2 |
||
507 | savelij | 710 | CALL RDDIRSC |
711 | LD D,0 |
||
712 | AND A |
||
961 | savelij | 713 | JR Z,.L2 |
714 | CALL .L3 |
||
507 | savelij | 715 | DEC A |
716 | RET |
||
717 | |||
961 | savelij | 718 | .L2 LD E,_DIR_Attr |
507 | savelij | 719 | ADD HL,DE |
720 | LD A,(HL) |
||
721 | AND A |
||
722 | SBC HL,DE |
||
961 | savelij | 723 | LD E,_DIR_StructSize |
1028 | savelij | 724 | CP 0x0F ; ? |
961 | savelij | 725 | JR Z,.L1 |
1028 | savelij | 726 | CP 8 ; ࠧ? |
961 | savelij | 727 | JR Z,.L1 |
507 | savelij | 728 | LD A,(HL) |
1028 | savelij | 729 | CP 0xE5 ; 㤠 䠩? |
961 | savelij | 730 | JR Z,.L1 |
507 | savelij | 731 | AND A |
961 | savelij | 732 | JR Z,.L3 |
507 | savelij | 733 | EXX |
734 | INC BC |
||
735 | EXX |
||
961 | savelij | 736 | JR .L1 |
507 | savelij | 737 | |
961 | savelij | 738 | .L3 LD D,B |
507 | savelij | 739 | LD E,C |
740 | EXX |
||
741 | PUSH BC |
||
742 | EXX |
||
743 | POP BC |
||
744 | XOR A |
||
745 | RET |
||
746 | |||
1028 | savelij | 747 | ; ⠭ "쭮" "BC" |
507 | savelij | 748 | POSTF06 LD (TEK_ZAP),BC |
749 | RET |
||
750 | |||
1028 | savelij | 751 | ; "BC" ⥪騩 "쭮" |
507 | savelij | 752 | POSTF07 LD BC,(TEK_ZAP) |
753 | RET |
||
754 | |||
755 | CPTEKZP CALL RDDIRSC |
||
756 | RET M |
||
757 | LD A,C |
||
1028 | savelij | 758 | AND 0x0F |
507 | savelij | 759 | LD L,A |
760 | LD H,0 |
||
761 | LD DE,BUF_512 |
||
762 | ADD HL,HL |
||
763 | ADD HL,HL |
||
764 | ADD HL,HL |
||
765 | ADD HL,HL |
||
766 | ADD HL,HL |
||
767 | ADD HL,DE |
||
1028 | savelij | 768 | LD DE,0x0B |
507 | savelij | 769 | ADD HL,DE |
770 | LD A,(HL) |
||
771 | SBC HL,DE |
||
772 | LD E,(HL) |
||
773 | AND A |
||
774 | RET |
||
775 | |||
961 | savelij | 776 | ; ⥪饩 樨 0 ࢮ "쭮" |
507 | savelij | 777 | POSTF02 LD BC,0 |
778 | LD (TEK_ZAP),BC |
||
779 | CALL RDDIRSC |
||
780 | CALL CP_ONET |
||
781 | JR Z,NXTLEG1 |
||
782 | LD A,(HL) |
||
783 | AND A |
||
784 | RET Z |
||
785 | JR NXTLEG1+1 |
||
786 | |||
787 | NXTLEGZ LD BC,(TEK_ZAP) |
||
788 | NXTLEG1 INC BC |
||
789 | CALL CPTEKZP |
||
1028 | savelij | 790 | CP 0xFF |
507 | savelij | 791 | RET Z |
1028 | savelij | 792 | CP 0x0F |
507 | savelij | 793 | JR Z,NXTLEG1 |
794 | CP 8 |
||
795 | JR Z,NXTLEG1 |
||
796 | LD A,E |
||
797 | AND A |
||
798 | RET Z |
||
1028 | savelij | 799 | CP 0xE5 |
507 | savelij | 800 | JR Z,NXTLEG1 |
801 | LD (TEK_ZAP),BC |
||
802 | RET |
||
803 | |||
804 | PRVLEGZ LD BC,(TEK_ZAP) |
||
805 | CALL CPTEKZP |
||
806 | CALL CP_TWOT |
||
807 | RET Z |
||
808 | PRVLEG1 DEC BC |
||
809 | CALL CPTEKZP |
||
1028 | savelij | 810 | CP 0x0F |
507 | savelij | 811 | JR Z,PRVLEG1 |
812 | CP 8 |
||
813 | JR Z,PRVLEG1 |
||
814 | LD A,E |
||
1028 | savelij | 815 | CP 0xE5 |
507 | savelij | 816 | JR Z,PRVLEG1 |
817 | LD (TEK_ZAP),BC |
||
818 | RET |
||
819 | |||
820 | SAVEZP LD (HL),E |
||
821 | INC HL |
||
822 | LD (HL),D |
||
823 | INC HL |
||
824 | LD (HL),C |
||
825 | INC HL |
||
826 | LD (HL),B |
||
827 | INC HL |
||
828 | RET |
||
829 | |||
830 | LOADZP LD E,(HL) |
||
831 | INC HL |
||
832 | LD D,(HL) |
||
833 | INC HL |
||
834 | LD C,(HL) |
||
835 | INC HL |
||
836 | LD B,(HL) |
||
837 | INC HL |
||
838 | RET |
||
839 | |||
573 | savelij | 840 | BCDE200 LD E,D |
841 | LD D,C |
||
842 | LD C,B |
||
843 | LD B,0 |
||
844 | LD A,2 |
||
845 | JR BCDE_A |
||
846 | |||
1028 | savelij | 847 | ; BCDE >> A = BCDE |
573 | savelij | 848 | BCDE_A1 SRL B |
849 | RR C |
||
850 | RR D |
||
851 | RR E |
||
852 | BCDE_A RRCA |
||
853 | JR NC,BCDE_A1 |
||
854 | RET |
||
855 | |||
1028 | savelij | 856 | ; BCDE - (ADR) = BCDE |
573 | savelij | 857 | HLBCDEM LD A,E |
858 | SUB (HL) |
||
507 | savelij | 859 | INC HL |
573 | savelij | 860 | LD E,A |
861 | LD A,D |
||
862 | SBC A,(HL) |
||
507 | savelij | 863 | INC HL |
573 | savelij | 864 | LD D,A |
865 | LD A,C |
||
866 | SBC A,(HL) |
||
507 | savelij | 867 | INC HL |
573 | savelij | 868 | LD C,A |
869 | LD A,B |
||
870 | SBC A,(HL) |
||
871 | LD B,A |
||
872 | RET |
||
873 | |||
1028 | savelij | 874 | ; (ADR) - BCDE = BCDE |
573 | savelij | 875 | BCDEHLM LD A,(HL) |
507 | savelij | 876 | INC HL |
573 | savelij | 877 | SUB E |
878 | LD E,A |
||
879 | LD A,(HL) |
||
507 | savelij | 880 | INC HL |
573 | savelij | 881 | SBC A,D |
882 | LD D,A |
||
883 | LD A,(HL) |
||
507 | savelij | 884 | INC HL |
573 | savelij | 885 | SBC A,C |
886 | LD C,A |
||
887 | LD A,(HL) |
||
888 | SBC A,B |
||
889 | LD B,A |
||
890 | RET |
||
507 | savelij | 891 | |
1028 | savelij | 892 | ; (ADR) + BCDE = BCDE |
573 | savelij | 893 | BCDEHLP LD A,(HL) |
894 | INC HL |
||
895 | ADD A,E |
||
896 | LD E,A |
||
897 | LD A,(HL) |
||
898 | INC HL |
||
899 | ADC A,D |
||
900 | LD D,A |
||
901 | LD A,(HL) |
||
902 | INC HL |
||
903 | ADC A,C |
||
904 | LD C,A |
||
905 | LD A,(HL) |
||
906 | ADC A,B |
||
907 | LD B,A |
||
908 | RET |
||
909 | |||
1028 | savelij | 910 | ; HLDE + BC = HLDE |
573 | savelij | 911 | HLDEPBC EX DE,HL |
912 | ADD HL,BC |
||
913 | EX DE,HL |
||
507 | savelij | 914 | LD BC,0 |
573 | savelij | 915 | ADC HL,BC |
916 | RET |
||
507 | savelij | 917 | |
1028 | savelij | 918 | INIT_PATH |
919 | EVOPORT WIN_P5,RAM_MOUNTER |
||
573 | savelij | 920 | LD A,(SETDVOL) |
921 | LD D,A |
||
961 | savelij | 922 | ADD A,HIGH (TEK_BUFPATH + CPU5) + 4 |
573 | savelij | 923 | LD H,A |
924 | LD L,0 |
||
925 | LD A,"E" |
||
926 | ADD A,D |
||
927 | LD (HL),A |
||
928 | INC L |
||
929 | LD (HL),":" |
||
930 | INC L |
||
931 | LD (HL),"/" |
||
932 | INC L |
||
933 | LD (HL),0 |
||
934 | INC L |
||
935 | LD A,L |
||
1028 | savelij | 936 | LD L,0xFF |
573 | savelij | 937 | LD (HL),A |
938 | RET |
||
507 | savelij | 939 | |
1028 | savelij | 940 | RENEW_PATH |
941 | EVOPORT WIN_P5,RAM_MOUNTER |
||
573 | savelij | 942 | BIT 7,E |
943 | JR NZ,MINUS_PATH |
||
1028 | savelij | 944 | ; ४ਨ ⥪饬 (室 ४) |
507 | savelij | 945 | EX DE,HL |
573 | savelij | 946 | LD A,(SETDVOL) |
961 | savelij | 947 | ADD A,HIGH (TEK_BUFPATH + CPU5) + 4 |
573 | savelij | 948 | LD H,A |
1028 | savelij | 949 | LD L,0xFF |
573 | savelij | 950 | LD L,(HL) |
507 | savelij | 951 | EX DE,HL |
573 | savelij | 952 | DEC DE |
953 | LD BC,8 |
||
954 | LDIR |
||
955 | LD B,8 |
||
956 | RENEWPATH3 DEC DE |
||
957 | LD A,(DE) |
||
958 | INC DE |
||
959 | CP " " |
||
960 | JR NZ,RENEWPATH2 |
||
961 | DEC DE |
||
962 | DJNZ RENEWPATH3 |
||
963 | RENEWPATH2 LD A,(HL) |
||
964 | CP " " |
||
965 | JR Z,RENEWPATH4 |
||
966 | LD A,"." |
||
967 | LD (DE),A |
||
968 | INC DE |
||
969 | LD BC,3 |
||
970 | LDIR |
||
971 | LD B,3 |
||
972 | RENEWPATH5 DEC DE |
||
973 | LD A,(DE) |
||
974 | INC DE |
||
975 | CP " " |
||
976 | JR NZ,RENEWPATH4 |
||
977 | DEC DE |
||
978 | DJNZ RENEWPATH5 |
||
979 | RENEWPATH4 EX DE,HL |
||
980 | LD (HL),"/" |
||
981 | INC L |
||
982 | LD (HL),0 |
||
983 | INC L |
||
984 | LD A,L |
||
1028 | savelij | 985 | LD L,0xFF |
573 | savelij | 986 | LD (HL),A |
987 | RET |
||
507 | savelij | 988 | |
1028 | savelij | 989 | ; 㪮祭 ⥪饣 (室 । ४) |
573 | savelij | 990 | MINUS_PATH LD A,(SETDVOL) |
961 | savelij | 991 | ADD A,HIGH (TEK_BUFPATH + CPU5) + 4 |
573 | savelij | 992 | LD H,A |
1028 | savelij | 993 | LD L,0xFF |
573 | savelij | 994 | LD L,(HL) |
995 | DEC L |
||
996 | DEC L |
||
997 | MINUS_PATH1 DEC L |
||
998 | LD A,(HL) |
||
999 | CP "/" |
||
1000 | JR NZ,MINUS_PATH1 |
||
1001 | INC L |
||
1002 | LD (HL),0 |
||
1003 | INC L |
||
1004 | LD A,L |
||
1028 | savelij | 1005 | LD L,0xFF |
573 | savelij | 1006 | LD (HL),A |
1007 | RET |
||
507 | savelij | 1008 | |
1028 | savelij | 1009 | ; 祭 ⥪饣 |
1010 | GET_PATH |
||
1011 | EVOPORT WIN_P5,RAM_MOUNTER |
||
585 | savelij | 1012 | LD A,IYL |
1013 | AND A |
||
1014 | JR NZ,GETPATH1 |
||
573 | savelij | 1015 | LD A,(SETDVOL) |
1016 | LD D,A |
||
643 | savelij | 1017 | ADD A,HIGH (TEK_BUFPATH+CPU5)+4 |
573 | savelij | 1018 | LD H,A |
1028 | savelij | 1019 | LD L,0xFF |
573 | savelij | 1020 | LD A,(HL) |
1021 | LD DE,BUF_256 |
||
1028 | savelij | 1022 | LD BC,0x100 |
573 | savelij | 1023 | LD L,C |
1024 | LDIR |
||
1028 | savelij | 1025 | LD C,A ; BC=쪮 ७ |
961 | savelij | 1026 | LD A,HIGH (CPU6) - 1 |
573 | savelij | 1027 | ADD A,D |
1028 | LD H,A |
||
1028 | savelij | 1029 | LD DE,(RREG_L) ; 㤠 ७ |
573 | savelij | 1030 | JP LDIR_BYTES |
1031 | |||
585 | savelij | 1032 | GETPATH1 PUSH HL |
1033 | PUSH HL |
||
1034 | LD A,(SETDVOL) |
||
1035 | LD D,A |
||
961 | savelij | 1036 | ADD A,HIGH (TEK_BUFPATH + CPU5) + 4 |
585 | savelij | 1037 | LD H,A |
1028 | savelij | 1038 | LD L,0xFF |
585 | savelij | 1039 | LD A,(HL) |
1040 | POP DE |
||
1028 | savelij | 1041 | LD BC,0x100 |
585 | savelij | 1042 | LD L,C |
1043 | LDIR |
||
1044 | POP HL |
||
1045 | RET |
||
1046 | |||
1028 | savelij | 1047 | ; ⤠ ⪮ 䠩, |
507 | savelij | 1048 | NO_LNG POP DE |
1049 | LD BC,8 |
||
1050 | LDIR |
||
573 | savelij | 1051 | EX DE,HL |
1052 | NO_LNG2 DEC HL |
||
507 | savelij | 1053 | LD A,(HL) |
573 | savelij | 1054 | CP " " |
1055 | JR Z,NO_LNG2 |
||
1056 | INC HL |
||
1057 | LD A,(DE) |
||
1058 | EX DE,HL |
||
1059 | CP " " |
||
507 | savelij | 1060 | JR Z,NO_LNG1 |
1061 | EX DE,HL |
||
573 | savelij | 1062 | LD (HL),"." |
507 | savelij | 1063 | INC HL |
1064 | EX DE,HL |
||
1065 | LDI |
||
1066 | LDI |
||
1067 | LDI |
||
1068 | NO_LNG1 EX DE,HL |
||
1069 | LD (HL),0 |
||
573 | savelij | 1070 | LD A,L |
1071 | LD (RREG_A),A |
||
507 | savelij | 1072 | POP HL |
1073 | RET |
||
1074 | |||
573 | savelij | 1075 | GETLNG8 POP IY |
643 | savelij | 1076 | LD DE,CPU6 |
573 | savelij | 1077 | ADD HL,DE |
1078 | LD DE,(RREG_L) |
||
1028 | savelij | 1079 | LD BC,0x100 |
573 | savelij | 1080 | JP LDIR_BYTES |
1081 | |||
1028 | savelij | 1082 | ; ⤠ 䠩 |
573 | savelij | 1083 | GET_LONGNAME LD A,IYL |
1084 | AND A |
||
1085 | JR NZ,GETLNG9 |
||
1086 | PUSH IY |
||
1087 | LD IYL,INTERNAL |
||
1088 | LD HL,GETLNG8 |
||
507 | savelij | 1089 | PUSH HL |
573 | savelij | 1090 | LD HL,BUF_256 |
1091 | GETLNG9 PUSH HL |
||
1092 | PUSH HL |
||
1093 | CALL READ_DIR |
||
507 | savelij | 1094 | BIT 0,E |
1095 | JR Z,NO_LNG |
||
1096 | EXX |
||
1097 | LD C,0 |
||
1098 | EXX |
||
1099 | GETLNG2 DEC BC |
||
1100 | CALL GETRZAP |
||
1101 | LD A,(HL) |
||
1102 | INC HL |
||
1103 | EXX |
||
1104 | BIT 6,C |
||
1105 | POP HL |
||
961 | savelij | 1106 | JR NZ,GETLNGE + 1 |
507 | savelij | 1107 | LD C,A |
1108 | EXX |
||
1109 | LD A,5 |
||
1110 | CALL GETLNG1 |
||
1111 | AND A |
||
1112 | JR Z,GETLNGE |
||
1113 | INC HL |
||
1114 | INC HL |
||
1115 | INC HL |
||
1116 | LD A,6 |
||
1117 | CALL GETLNG1 |
||
1118 | AND A |
||
1119 | JR Z,GETLNGE |
||
1120 | INC HL |
||
1121 | INC HL |
||
1122 | LD A,2 |
||
1123 | CALL GETLNG1 |
||
1124 | AND A |
||
1125 | JR Z,GETLNGE |
||
1126 | EXX |
||
1127 | PUSH HL |
||
1128 | EXX |
||
1129 | JR GETLNG2 |
||
1130 | |||
1131 | GETLNGE EXX |
||
1132 | LD (HL),0 |
||
573 | savelij | 1133 | LD A,L |
1134 | LD (RREG_A),A |
||
507 | savelij | 1135 | EXX |
1136 | POP HL |
||
1137 | RET |
||
1138 | |||
1139 | GETLNG1 EXX |
||
1140 | LD B,A |
||
1141 | EXX |
||
1142 | LD D,(HL) |
||
1143 | INC HL |
||
1144 | LD E,(HL) |
||
1145 | INC HL |
||
1146 | LD A,D |
||
1147 | OR E |
||
1148 | RET Z |
||
1149 | LD A,E |
||
1150 | AND A |
||
1151 | JR NZ,GETLNG3 |
||
1152 | LD A,D |
||
1028 | savelij | 1153 | CP 0x80 |
507 | savelij | 1154 | JR C,GETLNG5 |
1028 | savelij | 1155 | LD D,0x5F |
507 | savelij | 1156 | JR GETLNG5 |
1157 | |||
1158 | GETLNG3 CP 4 |
||
1028 | savelij | 1159 | LD A,0x5F |
507 | savelij | 1160 | JR NZ,GETLNG5 |
1161 | LD A,D |
||
1028 | savelij | 1162 | LD E,0xEF |
1163 | LD D,0x5F |
||
507 | savelij | 1164 | CP 1 |
1165 | JR Z,GETLNG4 |
||
1028 | savelij | 1166 | LD E,0xA0 |
1167 | CP 0x51 |
||
507 | savelij | 1168 | JR Z,GETLNG4 |
1028 | savelij | 1169 | SUB 0x10 |
1170 | LD E,0x80 |
||
507 | savelij | 1171 | JR NC,GETLNG6 |
1172 | LD A,D |
||
1173 | JR GETLNG5 |
||
1174 | |||
1028 | savelij | 1175 | GETLNG6 CP 0x30 |
507 | savelij | 1176 | JR C,GETLNG4 |
1028 | savelij | 1177 | LD E,0xB0 |
1178 | CP 0x40 |
||
507 | savelij | 1179 | JR C,GETLNG4 |
1180 | LD A,D |
||
1181 | JR GETLNG5 |
||
1182 | |||
1183 | GETLNG4 ADD A,E |
||
1184 | GETLNG5 EXX |
||
1185 | LD (HL),A |
||
1186 | INC HL |
||
1187 | DEC B |
||
1188 | EXX |
||
1189 | RET Z |
||
961 | savelij | 1190 | JR GETLNG1 + 3 |
507 | savelij | 1191 | ;401,410-44F,451 |
1192 | |||
1028 | savelij | 1193 | ; 室: DE = ᯨ᮪ ७ |
1194 | ; HL = ⥫ 䠩 |
||
1195 | ; 室: A = ७ |
||
573 | savelij | 1196 | CP_EXT LD C,0 |
507 | savelij | 1197 | CPETR2 LD A,(DE) |
1198 | AND A |
||
573 | savelij | 1199 | JR Z,CPETR1 |
507 | savelij | 1200 | INC C |
1201 | PUSH DE |
||
1202 | PUSH HL |
||
1203 | CALL COMPARF |
||
1204 | POP HL |
||
1205 | POP DE |
||
573 | savelij | 1206 | LD A,C |
1207 | RET Z |
||
507 | savelij | 1208 | INC DE |
1209 | INC DE |
||
1210 | INC DE |
||
1211 | JR CPETR2 |
||
1212 | |||
573 | savelij | 1213 | CPETR1 DEC A |
507 | savelij | 1214 | RET |
1215 | |||
1216 | COMPARF PUSH DE |
||
1217 | LD DE,8 |
||
1218 | ADD HL,DE |
||
1219 | POP DE |
||
1220 | COMPARF1 LD A,(DE) |
||
1221 | CP (HL) |
||
1222 | RET NZ |
||
1223 | INC HL |
||
1224 | INC DE |
||
573 | savelij | 1225 | LD A,(DE) |
1226 | CP (HL) |
||
1227 | RET NZ |
||
1228 | INC HL |
||
1229 | INC DE |
||
1230 | LD A,(DE) |
||
1231 | CP (HL) |
||
507 | savelij | 1232 | RET |
1233 | |||
573 | savelij | 1234 | FIND_FILEITEM PUSH IY |
1235 | LD IYL,INTERNAL |
||
1236 | CALL INIRTSC |
||
1028 | savelij | 1237 | EVOPORT WIN_P3,RAM_TEMP2 |
628 | savelij | 1238 | LD HL,CPU3 |
1239 | LD DE,CPU3+1 |
||
1028 | savelij | 1240 | LD BC,0x3FFF |
628 | savelij | 1241 | LD (HL),L |
1242 | LDIR |
||
507 | savelij | 1243 | LD HL,0 |
1028 | savelij | 1244 | LD (KOLFIND),HL ; 䠩 |
585 | savelij | 1245 | LD HL,CPU3 |
1028 | savelij | 1246 | LD (ADR_SKLAD),HL ; ᪫ |
1247 | LD HL,CPU3+0x1000 |
||
1248 | LD (ADR_SKLAD_NAME),HL ; ᪫ ࢮ ᨬ 䫠 |
||
1249 | LD BC,0xFFFF |
||
623 | savelij | 1250 | EXX |
1251 | LD BC,0 |
||
1252 | LD A,(TEK_LVL) |
||
507 | savelij | 1253 | AND A |
623 | savelij | 1254 | EXX |
1255 | JR NZ,FINDF2 |
||
961 | savelij | 1256 | LD A,(FATType) |
623 | savelij | 1257 | CP 2 |
1258 | JR NC,FINDF2 |
||
1259 | EXX |
||
1260 | LD BC,(ROOTZAP) |
||
1261 | EXX |
||
1262 | FINDF2 INC BC |
||
1263 | CALL RDDIRSC |
||
1264 | LD A,C |
||
1028 | savelij | 1265 | AND 0x0F |
961 | savelij | 1266 | REPT 4 |
623 | savelij | 1267 | ADD A,A |
961 | savelij | 1268 | ENDM |
623 | savelij | 1269 | LD E,A |
1270 | LD D,0 |
||
1271 | EX DE,HL |
||
1272 | ADD HL,HL |
||
1273 | ADD HL,DE |
||
1274 | EXX |
||
628 | savelij | 1275 | DEC BC |
623 | savelij | 1276 | LD A,B |
1277 | OR C |
||
1278 | EXX |
||
573 | savelij | 1279 | JR Z,FINDF3 |
623 | savelij | 1280 | LD A,(HL) |
1281 | AND A |
||
1282 | JR Z,FINDF3 |
||
1283 | CP "." |
||
1284 | JR NZ,FINDF21 |
||
1285 | INC HL |
||
1286 | LD A,(HL) |
||
1287 | DEC HL |
||
1288 | CP " " |
||
1289 | JR Z,FINDF2 |
||
1028 | savelij | 1290 | FINDF21 CP 0xE5 ; 㤠 |
1291 | JR Z,FINDF2 ; 室 騩 ⥫ |
||
1292 | LD DE,0x0B ; 㦥 䫠 ⥫ |
||
1293 | ADD HL,DE ; 稫 䫠 |
||
1294 | LD A,(HL) ; 䫠 |
||
573 | savelij | 1295 | SBC HL,DE |
1028 | savelij | 1296 | CP 0x0F |
623 | savelij | 1297 | JR Z,FINDF2 |
1028 | savelij | 1298 | AND 0x10 ; ઠ 䠩 |
573 | savelij | 1299 | JR NZ,FINDF1 |
1300 | LD A,(EXT4FOUND) |
||
1301 | AND A |
||
1302 | PUSH DE |
||
1303 | LD DE,EXT4FOUND |
||
1304 | PUSH BC |
||
1305 | CALL NZ,CP_EXT |
||
1306 | POP BC |
||
1307 | POP DE |
||
1308 | JR NZ,FINDF4 |
||
1309 | FINDF1 EX DE,HL |
||
1310 | ADD HL,DE |
||
507 | savelij | 1311 | LD A,(HL) |
573 | savelij | 1312 | EX AF,AF' |
1028 | savelij | 1313 | LD HL,(ADR_SKLAD) ; |
507 | savelij | 1314 | LD (HL),C |
1315 | INC HL |
||
1028 | savelij | 1316 | LD (HL),B ; ⠡ |
507 | savelij | 1317 | INC HL |
1318 | LD (ADR_SKLAD),HL |
||
1319 | LD HL,(KOLFIND) |
||
1028 | savelij | 1320 | INC HL ; +1 䠩 |
507 | savelij | 1321 | LD (KOLFIND),HL |
573 | savelij | 1322 | LD HL,(ADR_SKLAD_NAME) |
1323 | EX AF,AF' |
||
1324 | LD (HL),A |
||
1325 | INC HL |
||
1326 | LD A,(DE) |
||
1327 | LD (HL),A |
||
1328 | INC HL |
||
1329 | LD (ADR_SKLAD_NAME),HL |
||
961 | savelij | 1330 | FINDF4 LD A,(ADR_SKLAD + 1) |
1028 | savelij | 1331 | CP HIGH (CPU3) + 0x10 |
1332 | JR C,FINDF2 ; 2048 /䠩 ⥪饩 ४ਨ |
||
573 | savelij | 1333 | FINDF3 LD HL,(KOLFIND) |
1334 | POP IY |
||
1335 | LD A,IYL |
||
507 | savelij | 1336 | AND A |
573 | savelij | 1337 | JR NZ,FINDF5 |
736 | savelij | 1338 | LD A,RAM_TEMP2 |
585 | savelij | 1339 | LD (RREG_A),A |
573 | savelij | 1340 | LD (RREG_C),HL |
1341 | FINDF5 LD (KOL_FOUNDED),HL |
||
585 | savelij | 1342 | LD B,H |
1343 | LD C,L |
||
507 | savelij | 1344 | XOR A |
1345 | RET |
||
1346 | |||
573 | savelij | 1347 | SET_MASK_EXT LD A,(RREG_A) |
507 | savelij | 1348 | AND A |
573 | savelij | 1349 | JR NZ,SET_MASK_EXT1 |
1350 | LD (EXT4FOUND),A |
||
1351 | RET |
||
1352 | |||
1353 | SET_MASK_EXT1 LD HL,(RREG_L) |
||
961 | savelij | 1354 | LD DE,BUF_256 - CPU6 |
1028 | savelij | 1355 | LD BC,0x10 * 3 + 1 |
573 | savelij | 1356 | CALL LDIR_BYTES |
1357 | LD HL,BUF_256 |
||
1358 | LD DE,EXT4FOUND |
||
1028 | savelij | 1359 | LD BC,0x10FF |
573 | savelij | 1360 | SET_MASK_EXT2 LD A,(HL) |
1361 | AND A |
||
1362 | JR Z,SET_MASK_EXT3 |
||
1363 | LDI |
||
1364 | LDI |
||
1365 | LDI |
||
1366 | DJNZ SET_MASK_EXT2 |
||
1367 | SET_MASK_EXT3 XOR A |
||
1368 | LD (DE),A |
||
1369 | RET |
||
1370 | |||
1371 | LD_FILE6 PUSH AF |
||
1372 | POP HL |
||
1373 | LD (RREG_F),HL |
||
585 | savelij | 1374 | LD_FILE8 EXX |
1028 | savelij | 1375 | LD (SAVE_IY),DE ; IY |
507 | savelij | 1376 | EXX |
1377 | RET |
||
1378 | |||
1028 | savelij | 1379 | ; IXL - L - ⢮ ᥪ 㧪 |
1380 | ; IXH - H - ࠧ |
||
1381 | ; IYL - E - |
||
1382 | ; IYH - D - ᬥ饭 |
||
573 | savelij | 1383 | READ_FILE EX AF,AF' |
1384 | LD A,IYL |
||
1385 | DEC A |
||
1386 | JR Z,LD_FILE00 |
||
1387 | LD IYL,INT4EXT |
||
507 | savelij | 1388 | LD HL,LD_FILE6 |
573 | savelij | 1389 | PUSH HL |
1028 | savelij | 1390 | LD HL,(RREG_L) ; 㧪 |
573 | savelij | 1391 | EXX |
1028 | savelij | 1392 | LD DE,(SAVE_IY) ; ᬥ饭 |
961 | savelij | 1393 | LD A,(SecPerClus) |
1028 | savelij | 1394 | LD H,A ; ⢮ ᥪ |
573 | savelij | 1395 | LD A,(RREG_A) |
1028 | savelij | 1396 | LD L,A ; ⢮ ᥪ 㧪 |
573 | savelij | 1397 | EXX |
1398 | JR LD_FILE0 |
||
507 | savelij | 1399 | |
573 | savelij | 1400 | LD_FILE00 EXX |
1028 | savelij | 1401 | LD DE,(SAVE_IY) ; ᬥ饭 |
585 | savelij | 1402 | LD HL,LD_FILE8 |
1403 | PUSH HL |
||
1028 | savelij | 1404 | LD A,(SecPerClus) ; |
1405 | LD H,A |
||
573 | savelij | 1406 | EX AF,AF' |
1028 | savelij | 1407 | LD L,A ; ⢮ ᥪ 㧪 |
573 | savelij | 1408 | EXX |
1028 | savelij | 1409 | ; IXL - L - ⢮ ᥪ 㧪 |
1410 | ; IXH - H - ࠧ |
||
1411 | ; IYL - E - |
||
1412 | ; IYH - D - ᬥ饭 |
||
507 | savelij | 1413 | LD_FILE0 LD DE,(AFILCLS) |
1028 | savelij | 1414 | LD BC,(AFILCLS+2) ; ⥪騩 |
507 | savelij | 1415 | PUSH BC |
1416 | PUSH DE |
||
1417 | PUSH HL |
||
1028 | savelij | 1418 | CALL REALSEC ; ॢ ᥪ |
573 | savelij | 1419 | EXX |
1028 | savelij | 1420 | LD A,D ; IYH |
573 | savelij | 1421 | EXX |
507 | savelij | 1422 | LD L,A |
1423 | LD H,0 |
||
1424 | ADD HL,DE |
||
1425 | EX DE,HL |
||
1426 | JR NC,LD_FILE1 |
||
1028 | savelij | 1427 | INC BC ; BCDE= ᥪ 㤠 㧨 |
573 | savelij | 1428 | LD_FILE1 EXX |
1028 | savelij | 1429 | LD A,L ; IXL |
1430 | CP H ; IXH |
||
507 | savelij | 1431 | JP C,LD_FILE2 |
1028 | savelij | 1432 | LD A,H ; IXH |
1433 | LD_FILE2 ADD A,D ; IYH |
||
1434 | CP H ; IXH |
||
1435 | LD A,L ; IXL |
||
507 | savelij | 1436 | JP C,LD_FILE5 |
1028 | savelij | 1437 | LD A,H ; IXH |
1438 | SUB D ; IYH |
||
1439 | LD_FILE5 LD E,A ; IYL,A ; 쪮 ᥪ ᥩ 㧨 |
||
573 | savelij | 1440 | EXX |
1028 | savelij | 1441 | POP HL ; ⠭ 㧪 |
573 | savelij | 1442 | ; LD IYL,INT4EXT |
507 | savelij | 1443 | CALL TO_DRV |
585 | savelij | 1444 | DB _DEV_READ |
1445 | LD A,IYL |
||
1446 | DEC A |
||
1447 | JR Z,LD_FILE7 |
||
573 | savelij | 1448 | LD (RREG_L),HL |
585 | savelij | 1449 | LD_FILE7 POP DE |
1028 | savelij | 1450 | POP BC ; ⠭ |
573 | savelij | 1451 | EXX |
1028 | savelij | 1452 | LD A,D ; IYH |
1453 | ADD A,E ; IYL |
||
1454 | CP H ; IXH |
||
507 | savelij | 1455 | JP C,LD_FILE3 |
1028 | savelij | 1456 | SUB H ; IXH |
1457 | LD_FILE3 LD D,A ; IYH,A |
||
573 | savelij | 1458 | EXX |
507 | savelij | 1459 | JP C,LD_FILE4 |
1028 | savelij | 1460 | PUSH HL ; ࠭ 㧪 |
573 | savelij | 1461 | PUSH IY |
1462 | LD IYL,INTERNAL |
||
1028 | savelij | 1463 | CALL RDFATZP ; ⠫ 饣 |
573 | savelij | 1464 | POP IY |
507 | savelij | 1465 | LD (AFILCLS),DE |
961 | savelij | 1466 | LD (AFILCLS + 2),BC |
1028 | savelij | 1467 | CALL LST_CLS ; ਫ, ? |
1468 | POP HL ; ⠭ 㧪 |
||
1469 | RET C ; , 室 |
||
573 | savelij | 1470 | LD_FILE4 EXX |
1028 | savelij | 1471 | LD A,L ; IXL |
1472 | SUB E ; IYL |
||
573 | savelij | 1473 | EXX |
507 | savelij | 1474 | RET Z |
573 | savelij | 1475 | EXX |
1028 | savelij | 1476 | LD L,A ; IXL,A |
573 | savelij | 1477 | EXX |
507 | savelij | 1478 | JP NZ,LD_FILE0 |
1479 | RET |
||
1480 | |||
573 | savelij | 1481 | OPEN_FILE LD A,IYL |
1482 | AND A |
||
1483 | JR NZ,OPENFILE1 |
||
1484 | LD HL,EOPEN_FILE |
||
1485 | PUSH HL |
||
1486 | OPENFILE1 PUSH IY |
||
1487 | LD IYL,INTERNAL |
||
1488 | CALL READ_DIR |
||
1489 | LD DE,FILE_SRC |
||
961 | savelij | 1490 | LD BC,_DIR_StructSize |
573 | savelij | 1491 | PUSH DE |
1492 | LDIR |
||
605 | savelij | 1493 | LD HL,0 |
961 | savelij | 1494 | LD A,(FATType) |
605 | savelij | 1495 | CP 2 |
1028 | savelij | 1496 | JR C,OPENFILE2 ; FAT32 訥 16 塞 |
961 | savelij | 1497 | LD HL,(FILE_SRC + _DIR_FstClusHI) |
1498 | OPENFILE2 LD (AFILCLS + 2),HL |
||
1499 | LD HL,(FILE_SRC + _DIR_FstClusLO) |
||
573 | savelij | 1500 | LD (AFILCLS),HL |
1501 | LD HL,(TEK_ZAP) |
||
1502 | LD (NUM_FILE_SRC),HL |
||
1503 | XOR A |
||
1504 | LD H,A |
||
1505 | LD L,A |
||
1506 | LD (SAVE_IY),HL |
||
1507 | POP HL |
||
1508 | POP IY |
||
1509 | RET |
||
1510 | |||
1511 | EOPEN_FILE PUSH AF |
||
1512 | POP HL |
||
1513 | LD (RREG_F),HL |
||
1514 | RET |
||
1515 | |||
1516 | EFINDNAME LD HL,(TEK_ZAP) |
||
1517 | LD (RREG_C),HL |
||
1518 | PUSH AF |
||
1519 | POP HL |
||
1520 | LD (RREG_F),HL |
||
1521 | RET |
||
1522 | |||
1523 | FIND_NAME LD A,IYL |
||
1524 | AND A |
||
1525 | JR NZ,FINDNAME01 |
||
1526 | PUSH HL |
||
1527 | LD HL,(RREG_L) |
||
961 | savelij | 1528 | LD DE,BUF_256 - CPU6 |
1028 | savelij | 1529 | LD BC,0x10 |
573 | savelij | 1530 | CALL LDIR_BYTES |
1531 | LD HL,EFINDNAME |
||
1532 | EX (SP),HL |
||
1533 | FINDNAME01 PUSH IY |
||
1534 | LD IYL,INTERNAL |
||
1535 | LD HL,BUF_256 |
||
1536 | LD DE,FB_EXT |
||
1028 | savelij | 1537 | LD BC,0x8FF |
573 | savelij | 1538 | LD A,(HL) |
1539 | CP "." |
||
1540 | JR NZ,FINDNAME02 |
||
1541 | LDI |
||
1542 | LDI |
||
1543 | LD B,6 |
||
1544 | FINDNAME02 LD A,(HL) |
||
1545 | CP "!" |
||
1546 | JR C,FINDNAME03 |
||
1547 | CP "." |
||
1548 | JR Z,FINDNAME12 |
||
1549 | LDI |
||
1550 | DJNZ FINDNAME02 |
||
1551 | LD A,(HL) |
||
1552 | CP "!" |
||
1553 | JR C,FINDNAME06 |
||
507 | savelij | 1554 | INC HL |
573 | savelij | 1555 | JR FINDNAME06 |
1556 | |||
1557 | FINDNAME12 INC HL |
||
1558 | FINDNAME03 LD A," " |
||
1559 | FINDNAME05 LD (DE),A |
||
1560 | INC DE |
||
1561 | DJNZ FINDNAME05 |
||
1562 | FINDNAME06 LD B,3 |
||
1563 | FINDNAME08 LD A,(HL) |
||
1564 | CP "!" |
||
1565 | JR C,FINDNAME07 |
||
1566 | LDI |
||
1567 | DJNZ FINDNAME08 |
||
1568 | CALL POSTF02 |
||
1569 | JR FINDNAME11 |
||
1570 | |||
1571 | FINDNAME07 LD A," " |
||
1572 | FINDNAME09 LD (DE),A |
||
1573 | INC DE |
||
1574 | DJNZ FINDNAME09 |
||
1575 | CALL POSTF02 |
||
1576 | JR FINDNAME11 |
||
1577 | |||
1578 | FINDNAME10 CALL NXTLEGZ |
||
1579 | FINDNAME11 PUSH HL |
||
1580 | CALL CMP_NAME |
||
1581 | POP HL |
||
1582 | JR Z,FINDNAME13 |
||
1583 | LD A,(HL) |
||
1584 | AND A |
||
1585 | JR NZ,FINDNAME10 |
||
1586 | SCF |
||
1587 | FINDNAME13 POP IY |
||
1588 | RET |
||
1589 | |||
1590 | CMP_NAME LD DE,FB_EXT |
||
1028 | savelij | 1591 | ICMP_NAME LD B,0x0B |
573 | savelij | 1592 | CMP_NAME_B LD A,(DE) |
1593 | CP "a" |
||
1594 | JR C,CMPNAME01 |
||
1595 | CP "{" |
||
1596 | JR NC,CMPNAME01 |
||
961 | savelij | 1597 | AND %11011111 |
573 | savelij | 1598 | CMPNAME01 CP (HL) |
1599 | RET NZ |
||
1600 | INC DE |
||
507 | savelij | 1601 | INC HL |
573 | savelij | 1602 | DJNZ CMP_NAME_B |
1603 | XOR A |
||
1604 | RET |
||
961 | savelij | 1605 | |
1028 | savelij | 1606 | ; 宦 dir |
961 | savelij | 1607 | ENTER_DIR LD IYL,INTERNAL |
1608 | CALL READ_DIR |
||
1609 | PUSH AF |
||
1610 | PUSH DE |
||
1611 | PUSH HL |
||
1612 | CALL RENEW_PATH |
||
1613 | POP HL |
||
1614 | POP DE |
||
1615 | POP AF |
||
1616 | BIT 4,A |
||
1617 | EX AF,AF' |
||
1618 | LD A,E |
||
1619 | EX AF,AF' |
||
1620 | LD E,A |
||
1621 | LD D,(HL) |
||
1622 | RET Z |
||
1623 | EXX |
||
1624 | EX AF,AF' |
||
1625 | BIT 7,A |
||
1626 | JR Z,ENT_DI2 |
||
1627 | LD HL,TEK_LEV |
||
1628 | LD A,(HL) |
||
1629 | AND A |
||
1630 | EXX |
||
1631 | RET Z |
||
1632 | EXX |
||
1633 | DEC A |
||
1634 | LD (HL),A |
||
1635 | ADD A,A |
||
1636 | LD H,HIGH (BUF_DIRCEP + CPU6) |
||
1637 | LD L,A |
||
1638 | LD A,(HL) |
||
1639 | INC L |
||
1640 | LD H,(HL) |
||
1641 | LD L,A |
||
1642 | JR ENT_DI1 |
||
1643 | |||
1644 | ENT_DI2 LD HL,TEK_LEV |
||
1645 | LD A,(HL) |
||
1646 | INC A |
||
1028 | savelij | 1647 | CP 0x10 |
961 | savelij | 1648 | EXX |
1649 | RET Z |
||
1650 | EXX |
||
1651 | LD (HL),A |
||
1652 | DEC A |
||
1653 | ADD A,A |
||
1654 | LD H,HIGH (BUF_DIRCEP + CPU6) |
||
1655 | LD L,A |
||
1656 | LD BC,(TEK_ZAP) |
||
1657 | LD (HL),C |
||
1658 | INC L |
||
1659 | LD (HL),B |
||
1660 | ENT_DI1 EXX |
||
1661 | PUSH DE |
||
1662 | LD DE,_DIR_FstClusHI |
||
1663 | ADD HL,DE |
||
1664 | LD C,(HL) |
||
1665 | INC HL |
||
1666 | LD B,(HL) |
||
1667 | LD E,5 |
||
1668 | ADD HL,DE |
||
1669 | LD E,(HL) |
||
1670 | INC HL |
||
1671 | LD D,(HL) |
||
1672 | LD A,B |
||
1673 | OR C |
||
1674 | OR D |
||
1675 | OR E |
||
1676 | JR NZ,ENT_DI0 |
||
1677 | LD DE,(RootDIRCluster) |
||
1678 | LD BC,(RootDIRCluster + 2) |
||
1679 | ENT_DI0 LD (CurrentDIRCluster),DE |
||
1680 | LD (CurrentDIRCluster + 2),BC |
||
1681 | POP DE |
||
1682 | INIT_TEKDIR PUSH DE |
||
1683 | PUSH IY |
||
1684 | LD IYL,INTERNAL |
||
1685 | CALL INIRTSC |
||
1686 | POP IY |
||
1687 | POP DE |
||
1688 | RET |