Rev 1065 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
573 | savelij | 1 | |
1186 | savelij | 2 | ; LAST UPDATE: 16.02.2025 savelij |
573 | savelij | 3 | |
961 | savelij | 4 | TITLE "mounter.a80 ROM_RST83" |
573 | savelij | 5 | |
585 | savelij | 6 | MOUNTER CALL P5_READ_BYTE |
573 | savelij | 7 | LD A,(NEXTBYTERST8) |
8 | ADD A,A |
||
9 | LD E,A |
||
10 | LD D,0 |
||
11 | LD HL,TAB_MOUNTER |
||
12 | ADD HL,DE |
||
13 | LD A,(HL) |
||
14 | INC HL |
||
15 | LD H,(HL) |
||
16 | LD L,A |
||
17 | JP (HL) |
||
18 | |||
999 | savelij | 19 | TAB_MOUNTER DW OPEN_MOUNT ; ࠧ |
20 | DW RDWR_MOUNT ; ⥭/ ਬ ࠧ |
||
21 | DW FIND_MOUNTED ; 㥬 ࠧ யᠭ IMAGE.FNT |
||
22 | DW GET_MOUNTED ; 祭 ⥫ ਬ ࠧ |
||
23 | DW CLOSEMOUNT ; ࠧ |
||
24 | DW LOADIMAGE ; 㧪 ࠧ ࠬ |
||
25 | DW REST_NAMELOAD ; 祭 ⥫ 䠩 㦥 ࠬ |
||
26 | DW CMP_DRIVE ; ઠ ਬ ࠧ 㪠 㪢 |
||
27 | DW GET_VIRT_BITS ; 祭 ⮢ ᬮ |
||
28 | DW SET_VIRTREAL ; ४祭 ॠ쭮/㠫쭮 |
||
29 | DW SET_REAL |
||
30 | DW SET_VIRT |
||
31 | ; DW MOUNT_RAMDISK ; ࠬ᪠ |
||
32 | ; DW SET_RAMDISK ; ⪫祭/⠭ ࠬ᪠ |
||
573 | savelij | 33 | |
833 | savelij | 34 | NOFUNC RET |
35 | |||
961 | savelij | 36 | ; 㧪 ࠧ ࠬ |
631 | savelij | 37 | LOADIMAGE LD IYL,INTERNAL |
585 | savelij | 38 | CALL OPEN_FILE |
631 | savelij | 39 | PUSH HL |
40 | LD DE,SUPPORT_EXT |
||
41 | CALL CP_EXT |
||
42 | LD (EXT_TYPE),A |
||
1186 | savelij | 43 | LD HL,FATVAR.FILE_SRC |
665 | savelij | 44 | LD DE,NAME_RAMDISK |
1026 | savelij | 45 | LD BC,0x20 |
665 | savelij | 46 | LDIR |
631 | savelij | 47 | POP HL |
48 | CP _TAP |
||
585 | savelij | 49 | JR Z,LOAD_TAPE |
631 | savelij | 50 | CP _FDI |
585 | savelij | 51 | JP Z,LOAD_FDI |
631 | savelij | 52 | CP _SCL |
53 | JP Z,LOAD_SCL |
||
736 | savelij | 54 | LD A,RAM_DATARAMD |
585 | savelij | 55 | ILD_IMG1 PUSH AF |
1186 | savelij | 56 | LD BC,WIN_P1 |
585 | savelij | 57 | OUT (C),A |
1026 | savelij | 58 | LD A,0x20 |
1186 | savelij | 59 | LD HL,CPU1 |
585 | savelij | 60 | CALL READ_FILE |
61 | JR C,ILD_IMG2 |
||
62 | POP AF |
||
63 | INC A |
||
64 | JR ILD_IMG1 |
||
65 | |||
736 | savelij | 66 | LOAD_TAPE LD A,RAM_TAPE |
585 | savelij | 67 | JR ILD_IMG1 |
68 | |||
69 | ILD_IMG2 POP AF |
||
823 | savelij | 70 | LD A,(EXT_TYPE) |
71 | SUB _TAP |
||
961 | savelij | 72 | RET Z ; TAP 室 |
73 | ; TRD ࠧ ⠡ ᥪ/ |
||
1186 | savelij | 74 | EVOPORT WIN_P1,RAM_DATARAMD ; 㦭 ࠭ 㤠 稭 㦥 ࠧ |
75 | ILD_IMG3 LD HL,(CPU1+0x8E1) ; ४ ᥪ |
||
585 | savelij | 76 | LD A,L |
77 | LD L,H |
||
78 | LD H,0 |
||
79 | ADD HL,HL |
||
80 | ADD HL,HL |
||
81 | ADD HL,HL |
||
82 | ADD HL,HL |
||
83 | OR L |
||
961 | savelij | 84 | LD L,A ; ⢮ ᥪ ४ਥ |
1186 | savelij | 85 | LD DE,(CPU1+0x8E5) ; ⢮ ᥪ |
585 | savelij | 86 | ADD HL,DE |
87 | ADD HL,HL |
||
88 | ADD HL,HL |
||
89 | ADD HL,HL |
||
961 | savelij | 90 | ADD HL,HL ; H=⢮ |
585 | savelij | 91 | LD A,H |
1026 | savelij | 92 | CP 0xA0 |
585 | savelij | 93 | JR NC,ELT3 |
1026 | savelij | 94 | ELT4 LD A,0xA0 |
585 | savelij | 95 | ELT3 EX AF,AF' |
1186 | savelij | 96 | EVOPORT WIN_P1,RAM_RAMDISK ; 㦭 ࠭ 砫 ࠬ᪠, 㤥 ⠡ ⥫ |
97 | LD HL,CPU1 |
||
585 | savelij | 98 | PUSH HL |
1186 | savelij | 99 | LD DE,CPU1+1 |
1026 | savelij | 100 | LD BC,0x3FFF |
585 | savelij | 101 | LD (HL),L |
961 | savelij | 102 | LDIR ; ⨫ ࠭ |
103 | POP DE ; 砫 ࠭ |
||
104 | LD HL,0 ; ᬥ饭 ࠭ |
||
585 | savelij | 105 | EX AF,AF' |
106 | ELT2 EX AF,AF' |
||
1026 | savelij | 107 | LD BC,0x1000 ; 稪 ᥪ |
585 | savelij | 108 | LD A,L |
109 | RRCA |
||
110 | RRCA |
||
961 | savelij | 111 | LD (DE),A ; ᬥ饭 ࠭ |
585 | savelij | 112 | INC D |
113 | LD A,H |
||
961 | savelij | 114 | LD (DE),A ; ᬥ饭 ࠭ |
585 | savelij | 115 | INC D |
116 | ELT1 INC C |
||
117 | LD A,C |
||
961 | savelij | 118 | LD (DE),A ; ᥪ |
585 | savelij | 119 | INC D |
120 | LD A,2 |
||
961 | savelij | 121 | LD (DE),A ; ࠧ ᥪ |
585 | savelij | 122 | INC D |
961 | savelij | 123 | DJNZ ELT1 ; ᨬ ⠡ ᥪ ࠧࠬ |
1186 | savelij | 124 | LD D,HIGH (CPU1) ; 㫨 㪠⥫ 砫 |
961 | savelij | 125 | INC E ; 饩 |
1026 | savelij | 126 | LD BC,0x40 |
961 | savelij | 127 | ADD HL,BC ; 室 饩 |
585 | savelij | 128 | EX AF,AF' |
129 | DEC A |
||
961 | savelij | 130 | JR NZ,ELT2 ; 塞 |
131 | ; 騩 室 㧪 ⮬ ⠭⭮ ࠭ 1 |
||
1186 | savelij | 132 | ELOAD_IMAGE LD HL,CPU1+0x3FFF |
133 | LD (HL),'R' |
||
585 | savelij | 134 | DEC H |
1186 | savelij | 135 | LD (HL),'D' |
833 | savelij | 136 | DEC H |
961 | savelij | 137 | ; ७ 䠩 㦥 ࠬ |
833 | savelij | 138 | LD DE,NAME_RAMDISK |
139 | LD B,8+3 |
||
140 | .L1 LD A,(DE) |
||
141 | LD (HL),A |
||
142 | INC DE |
||
143 | DEC H |
||
144 | DJNZ .L1 |
||
585 | savelij | 145 | XOR A |
146 | RET |
||
147 | |||
148 | ELT5 POP AF |
||
1186 | savelij | 149 | EVOPORT WIN_P1,RAM_RAMDISK |
585 | savelij | 150 | JR ELOAD_IMAGE |
151 | |||
961 | savelij | 152 | ; ᮧ 9 ᥪ ᪠ |
153 | DSKINFO DB 0 ; +0xE1 ࢮ ᥪ |
||
154 | DB 1 ; +0xE2 ࢮ ४ |
||
1026 | savelij | 155 | DB 0x16 ; +0xE3 ⨯ ᪥ |
961 | savelij | 156 | DB 0 ; +0xE4 ⢮ 䠩 ᪥ |
157 | SECFREE DW 2544 ; +0xE5 ⢮ ᥪ |
||
1026 | savelij | 158 | DB 0x10 ; +0xE7 䨪樮 TRDOS |
961 | savelij | 159 | DW 0 ; +0xE8 2 0 |
1186 | savelij | 160 | DB 9 DUP 0x20 ; +0xEA 9 0x20 |
961 | savelij | 161 | DB 0 ; +0xF3 1 0 |
162 | DB 0 ; +0xF4 ⢮ 㤠 䠩 |
||
163 | DB "RAMDISKO" ; +0xF5 ᪥ |
||
585 | savelij | 164 | DSK_END |
165 | |||
961 | savelij | 166 | ; 㧪 SCL ࠧ |
1026 | savelij | 167 | LOAD_SCL |
1186 | savelij | 168 | EVOPORT WIN_P1,RAM_DATARAMD |
1026 | savelij | 169 | EVOPORT WIN_P3,RAM_MOUNTER |
736 | savelij | 170 | LD A,RAM_DATARAMD |
1186 | savelij | 171 | .L4 PUSH AF |
172 | LD BC,WIN_P1 |
||
585 | savelij | 173 | OUT (C),A |
1186 | savelij | 174 | LD HL,CPU1+0x1000 |
1026 | savelij | 175 | LD A,0x18 |
585 | savelij | 176 | CALL READ_FILE |
961 | savelij | 177 | PUSH AF ; ࠭ 䫠 砭 㧪 砩 砭 ࠧ |
1186 | savelij | 178 | LD HL,CPU1 |
961 | savelij | 179 | PUSH HL ; ࠭ 砫 ⠫ |
585 | savelij | 180 | LD (HL),L |
181 | LD D,H |
||
182 | LD E,L |
||
183 | INC DE |
||
1026 | savelij | 184 | LD BC,0xFFF |
961 | savelij | 185 | LDIR ; ⪠ ࢮ ନ ⠫ ᪠ |
1186 | savelij | 186 | LD HL,CPU1+0x1008 ; ⢠ 䠩 SCL ࠧ |
961 | savelij | 187 | LD A,(HL) ; ⢮ 䠩 稪 |
188 | INC HL ; 諨 ⥫ 䠩 |
||
585 | savelij | 189 | EXX |
961 | savelij | 190 | LD HL,0 ; ᮫⭮ ᥪ |
191 | LD D,L ; 饭 ᥪ 255 ᥪ |
||
192 | LD B,A ; ࠭ ⢠ 䠩 |
||
585 | savelij | 193 | EXX |
961 | savelij | 194 | POP DE ; 㫨 砫 ⠫ ᪠ |
1186 | savelij | 195 | .L3 EX AF,AF' |
1026 | savelij | 196 | LD BC,0x0D |
961 | savelij | 197 | LDIR ; ७ 13 ⥫ ⥫ |
198 | LD A,(HL) ; ࠫ ࠧ 䠩 ᥪ |
||
199 | LDI ; ७ |
||
585 | savelij | 200 | EXX |
201 | LD E,A |
||
961 | savelij | 202 | PUSH HL ; ࠭ ⥪饥 祭 ᥪ |
203 | ADD HL,DE ; 㢥稫 ⥪饥 祭 ࠧ 䠩 ᥪ |
||
585 | savelij | 204 | EXX |
205 | EX (SP),HL |
||
206 | LD A,L |
||
207 | ADD HL,HL |
||
208 | ADD HL,HL |
||
209 | ADD HL,HL |
||
210 | ADD HL,HL |
||
211 | INC H |
||
1026 | savelij | 212 | AND 0x0F |
585 | savelij | 213 | LD L,A |
214 | EX (SP),HL |
||
961 | savelij | 215 | POP BC ; ⠭ ⥪騩 ᥪ |
585 | savelij | 216 | EX DE,HL |
217 | LD (HL),C |
||
218 | INC HL |
||
961 | savelij | 219 | LD (HL),B ; 㫮 ⥪饣 ⥫ |
585 | savelij | 220 | INC HL |
221 | EX DE,HL |
||
222 | EX AF,AF' |
||
223 | DEC A |
||
1186 | savelij | 224 | JR NZ,.L3 ; 䠩 稫 த |
961 | savelij | 225 | PUSH HL ; ࠭ 砫 |
585 | savelij | 226 | LD HL,DSKINFO |
1186 | savelij | 227 | LD DE,CPU1+0x8E1 |
585 | savelij | 228 | LD BC,DSK_END-DSKINFO |
229 | LDIR |
||
230 | EXX |
||
961 | savelij | 231 | LD DE,2544 ; ⠭ ࠧ ᪥ |
585 | savelij | 232 | EX DE,HL |
233 | AND A |
||
234 | SBC HL,DE |
||
1186 | savelij | 235 | LD (CPU1+0x8E5),HL ; ⢮ ᥪ |
585 | savelij | 236 | EX DE,HL |
237 | LD A,L |
||
238 | ADD HL,HL |
||
239 | ADD HL,HL |
||
240 | ADD HL,HL |
||
241 | ADD HL,HL |
||
242 | INC H |
||
1026 | savelij | 243 | AND 0x0F |
585 | savelij | 244 | LD L,A |
1186 | savelij | 245 | LD (CPU1+0x8E1),HL ; ४ ᥪ |
585 | savelij | 246 | LD A,B |
1186 | savelij | 247 | LD (CPU1+0x8E4),A ; ⢮ 䠩 ᪥ |
585 | savelij | 248 | EXX |
961 | savelij | 249 | POP DE ; ⠭ 砫 |
1186 | savelij | 250 | LD HL,CPU2 ; |
585 | savelij | 251 | AND A |
961 | savelij | 252 | SBC HL,DE ; 稫 ⢮ ᤢ |
585 | savelij | 253 | LD B,H |
254 | LD C,L |
||
1186 | savelij | 255 | LD HL,CPU1+0x1000 ; 砫 ࠬ᪥ |
585 | savelij | 256 | EX DE,HL |
961 | savelij | 257 | LDIR ; ᤢ㫨, ७ DE= 㤠 㧨 |
585 | savelij | 258 | LD A,D |
1186 | savelij | 259 | CP HIGH (CPU2)-2 |
260 | JR NC,.L7 |
||
585 | savelij | 261 | EX DE,HL |
1186 | savelij | 262 | LD A,HIGH (CPU2)-1 |
585 | savelij | 263 | SUB H |
264 | SRL A |
||
265 | LD IXL,A |
||
266 | CALL READ_FILE |
||
1026 | savelij | 267 | LD DE,0x8000 |
585 | savelij | 268 | EX DE,HL |
1186 | savelij | 269 | .L7 AND A |
961 | savelij | 270 | SBC HL,DE ; 稫 쪮 ⠫ |
585 | savelij | 271 | LD (OST_HWOST),HL |
272 | LD (KUDA_HWOST),DE |
||
273 | LD DE,0 |
||
274 | EX DE,HL |
||
275 | SBC HL,DE |
||
276 | LD A,1 |
||
277 | AND H |
||
278 | LD H,A |
||
279 | LD (NEXT4PAGE),HL |
||
961 | savelij | 280 | POP AF ; ⠭ 䫠 㧪 |
281 | JP C,ILD_IMG2 ; 䠩 㦥 稫, 室 |
||
1186 | savelij | 282 | JR .L5 |
585 | savelij | 283 | |
1186 | savelij | 284 | .L6 LD DE,CPU1 |
585 | savelij | 285 | LD BC,(NEXT4PAGE) |
286 | LDIR |
||
287 | EX AF,AF' |
||
288 | JP C,ILD_IMG2 |
||
289 | EX DE,HL |
||
1026 | savelij | 290 | LD A,0x1F |
585 | savelij | 291 | CALL READ_FILE |
292 | JP C,ILD_IMG2 |
||
1186 | savelij | 293 | .L5 LD HL,BUF_512 |
585 | savelij | 294 | PUSH HL |
295 | LD A,1 |
||
296 | CALL READ_FILE |
||
961 | savelij | 297 | EX AF,AF' ; ⠫ 䫠 㧪 ᥪ |
298 | POP HL ; ⠭ 㤠 ᥪ 㧨 |
||
299 | LD DE,(KUDA_HWOST) ; 㤠 ⮪ |
||
300 | LD BC,(OST_HWOST) ; 쪮 ७ ࠭ |
||
585 | savelij | 301 | LDIR |
302 | POP AF |
||
303 | INC A |
||
304 | PUSH AF |
||
1186 | savelij | 305 | LD BC,WIN_P1 |
585 | savelij | 306 | OUT (C),A |
1186 | savelij | 307 | JR .L6 |
585 | savelij | 308 | |
961 | savelij | 309 | ; 㧪 FDI |
310 | LOAD_FDI LD A,RAM_RAMDISK ; ࠭ 砫 ࠬ᪠ |
||
311 | PUSH AF ; ࠭ ⥪ |
||
1186 | savelij | 312 | EVOPORT WIN_P1,RAM_RAMDISK |
1026 | savelij | 313 | EVOPORT WIN_P3,RAM_MOUNTER |
585 | savelij | 314 | LD HL,FDI_TABLE_CYL |
315 | LD DE,FDI_TABLE_CYL+1 |
||
1026 | savelij | 316 | LD BC,0x3FFF |
585 | savelij | 317 | LD (HL),0 |
961 | savelij | 318 | LDIR ; ⪠ ࠭ ⥫ﬨ |
1026 | savelij | 319 | LD IXH,0xFF |
961 | savelij | 320 | CALL LOAD1SECFDI ; ਭ㤨⥫쭠 㧪 ࢮ ᥪ |
321 | LD A,(CPU3+6) ; ⢮ |
||
585 | savelij | 322 | DEC A |
961 | savelij | 323 | LD A,(CPU3+4) ; ⢮ |
585 | savelij | 324 | JR Z,LOADFDI1 |
961 | savelij | 325 | ADD A,A ; 2, 㬭 ⢮ 2 |
326 | LOADFDI1 LD C,A ; ⢮ |
||
1026 | savelij | 327 | LD HL,(CPU3+0x0A) |
585 | savelij | 328 | LD (START_DATA),HL |
1186 | savelij | 329 | LD DE,CPU1 ; 砫 ⥫ |
1026 | savelij | 330 | LD HL,CPU3+0x0F ; 砫 롮ન ⥫ FDI |
585 | savelij | 331 | LOADFDI3 BIT 1,H |
961 | savelij | 332 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
333 | LD A,(HL) ; 8-15 ᬥ饭 砫 |
||
1026 | savelij | 334 | AND 0x3F ; 8-13 -ᬥ饭 ࠭ |
961 | savelij | 335 | LD (DE),A ; 㫮 ᬥ饭 ࠭ |
336 | LD A,(HL) ; 14-15 |
||
337 | INC HL ; 騩 FDI |
||
338 | INC D ; ᬥ饭 ࠭ 㦭 |
||
585 | savelij | 339 | BIT 1,H |
961 | savelij | 340 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
341 | LD B,A ; ࠭ 㦭 14-15 |
||
342 | LD A,(HL) ; 16-23 ᬥ饭 砫 |
||
585 | savelij | 343 | RL B |
344 | RLA |
||
345 | RL B |
||
346 | RLA |
||
961 | savelij | 347 | LD (DE),A ; 㪫 ⮢ ᬥ饭 ࠭ |
585 | savelij | 348 | INC D |
1026 | savelij | 349 | REPT 4 |
585 | savelij | 350 | INC HL |
1026 | savelij | 351 | ENDM |
585 | savelij | 352 | BIT 1,H |
961 | savelij | 353 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
354 | LD B,(HL) ; ⢮ ᥪ |
||
585 | savelij | 355 | LD A,B |
356 | AND A |
||
357 | JP Z,LOADFDI_ERR |
||
358 | INC HL |
||
359 | INC HL |
||
360 | LOADFDI4 INC HL |
||
361 | BIT 1,H |
||
961 | savelij | 362 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
363 | LDI ; ७ ᥪ |
||
585 | savelij | 364 | DEC DE |
365 | INC C |
||
366 | INC D |
||
367 | BIT 1,H |
||
961 | savelij | 368 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
369 | LD A,(HL) ; ࠧ ᥪ |
||
585 | savelij | 370 | EX DE,HL |
371 | LD (HL),1 |
||
372 | AND A |
||
373 | JR Z,LOADFDI2 |
||
374 | LD (HL),2 |
||
375 | DEC A |
||
376 | JR Z,LOADFDI2 |
||
377 | LD (HL),4 |
||
378 | DEC A |
||
379 | JR Z,LOADFDI2 |
||
380 | LD (HL),8 |
||
381 | LOADFDI2 EX DE,HL |
||
382 | INC D |
||
1026 | savelij | 383 | REPT 5 |
585 | savelij | 384 | INC HL |
1026 | savelij | 385 | ENDM |
961 | savelij | 386 | DJNZ LOADFDI4 ; 頥 த, ᥪ |
1026 | savelij | 387 | LD D,0x40 |
585 | savelij | 388 | INC E |
389 | DEC C |
||
961 | savelij | 390 | JR NZ,LOADFDI3 ; 頥 த |
585 | savelij | 391 | DEC HL |
392 | BIT 1,H |
||
961 | savelij | 393 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
585 | savelij | 394 | PUSH HL |
395 | LD A,H |
||
396 | AND 1 |
||
397 | LD B,A |
||
398 | LD C,L |
||
399 | LD A,IXH |
||
400 | ADD A,A |
||
401 | ADD A,B |
||
402 | LD B,A |
||
403 | LD HL,(START_DATA) |
||
404 | AND A |
||
405 | SBC HL,BC |
||
406 | EX DE,HL |
||
407 | POP HL |
||
408 | LD A,D |
||
409 | AND A |
||
410 | JR Z,LOADFDI7 |
||
411 | LOADFDI8 INC H |
||
412 | BIT 1,H |
||
961 | savelij | 413 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
585 | savelij | 414 | DEC D |
415 | JR NZ,LOADFDI8 |
||
416 | LOADFDI7 ADD HL,DE |
||
417 | BIT 1,H |
||
961 | savelij | 418 | CALL NZ,LOAD1SECFDI ; 諨 । ᥪ 塞 㪠⥫ 㧨 騩 ᥪ |
419 | PUSH HL ; ࠭ 砫 砫 ᥪ |
||
585 | savelij | 420 | LD DE,CPU3 |
421 | AND A |
||
422 | SBC HL,DE |
||
961 | savelij | 423 | LD (OSTAT_SECT),HL ; 쪮 ७ 墮 ᥪ 砫 ࠭ |
585 | savelij | 424 | LD B,H |
425 | LD C,L |
||
1026 | savelij | 426 | LD HL,0x200 |
585 | savelij | 427 | SBC HL,BC |
961 | savelij | 428 | LD (NACH_SECT),HL ; 쪮 ७ 砫 ᥪ ࠭ |
429 | POP HL ; ⠭ 砫 ᥪ, 㧪 ᥪ |
||
585 | savelij | 430 | LOADFDI5 POP AF |
431 | INC A |
||
432 | PUSH BC |
||
1186 | savelij | 433 | LD BC,WIN_P1 |
585 | savelij | 434 | OUT (C),A |
435 | POP BC |
||
436 | PUSH AF |
||
437 | BIT 1,H |
||
438 | CALL NZ,LOAD1SECFDI |
||
439 | EX AF,AF' |
||
1186 | savelij | 440 | LD DE,CPU1 |
585 | savelij | 441 | LD BC,(NACH_SECT) |
442 | LDIR |
||
443 | EX AF,AF' |
||
444 | JP C,ELT5 |
||
445 | EX DE,HL |
||
1026 | savelij | 446 | LD A,0x1F |
585 | savelij | 447 | CALL READ_FILE |
448 | JP C,ELT5 |
||
449 | PUSH HL |
||
450 | LD HL,CPU3 |
||
451 | PUSH HL |
||
452 | LD A,1 |
||
453 | CALL READ_FILE |
||
454 | POP HL |
||
455 | POP DE |
||
456 | LD BC,(OSTAT_SECT) |
||
457 | LDIR |
||
458 | JR LOADFDI5 |
||
459 | |||
460 | LOADFDI_ERR POP AF |
||
1186 | savelij | 461 | EVOPORT WIN_P1,RAM_RAMDISK |
585 | savelij | 462 | CALL FORMAT_RAMDISK |
463 | LD IX,LDFDIERROR |
||
464 | SCF |
||
465 | RET |
||
466 | |||
1026 | savelij | 467 | FORMAT_RAMDISK |
1186 | savelij | 468 | EVOPORT WIN_P1,RAM_DATARAMD |
469 | LD HL,CPU1 |
||
470 | LD DE,CPU1+1 |
||
1026 | savelij | 471 | LD BC,0xFFF |
585 | savelij | 472 | LD (HL),L |
473 | LDIR |
||
474 | LD HL,DSKINFO |
||
1186 | savelij | 475 | LD DE,CPU1+0x8E1 |
585 | savelij | 476 | LD BC,DSK_END-DSKINFO |
477 | LDIR |
||
478 | JP ILD_IMG3 |
||
479 | |||
961 | savelij | 480 | ; 㧪 饣 ᥪ FDI |
585 | savelij | 481 | LOAD1SECFDI PUSH HL |
482 | PUSH BC |
||
483 | PUSH DE |
||
484 | PUSH AF |
||
605 | savelij | 485 | LD HL,CPU3 |
585 | savelij | 486 | LD A,1 |
487 | CALL READ_FILE |
||
488 | INC IXH |
||
489 | POP AF |
||
490 | POP DE |
||
491 | POP BC |
||
492 | POP HL |
||
493 | RES 1,H |
||
494 | RET |
||
495 | |||
961 | savelij | 496 | ; ࠧ |
585 | savelij | 497 | OPEN_MOUNT LD A,(RREG_A) |
961 | savelij | 498 | OPEN_MOUNT_INT LD (MOUNT_SYM),A ; 㬮 ᪠ |
585 | savelij | 499 | LD IYL,INTERNAL |
1186 | savelij | 500 | EVOPORT WIN_P1,RAM_MOUNTER ; 稫 ࠭ ⥫ﬨ ਬ 䠩 |
961 | savelij | 501 | LD A,(MOUNT_SYM) ; 㬮 ᪠ |
1186 | savelij | 502 | ADD A,HIGH (BUF_PATHMOUNT+CPU1) |
573 | savelij | 503 | LD D,A |
961 | savelij | 504 | LD E,0 ; DE= ⥩ ਬ 䠩 |
1186 | savelij | 505 | LD A,(DEVMAN_VARS.SETDVOL) ; ⥪饣 ன⢠ |
506 | ADD A,HIGH (BUF_CURRPATH+CPU1)+4 |
||
573 | savelij | 507 | LD H,A |
961 | savelij | 508 | LD L,E ; HL= ⥪饬 ன⢥ |
1026 | savelij | 509 | LD BC,0x100 |
573 | savelij | 510 | PUSH DE |
961 | savelij | 511 | LDIR ; ७ |
512 | CALL READ_DIR ; ⠫ ⥫ 㥬 䠩 |
||
573 | savelij | 513 | POP DE |
514 | PUSH HL |
||
1186 | savelij | 515 | .L05 LD A,(DE) |
573 | savelij | 516 | INC DE |
517 | AND A |
||
1186 | savelij | 518 | JR NZ,.L05 |
573 | savelij | 519 | DEC DE |
1026 | savelij | 520 | LD BC,0x8FF |
1186 | savelij | 521 | .L01 LDI |
573 | savelij | 522 | LD A,(HL) |
1186 | savelij | 523 | CP '!' |
524 | JR C,.L03 |
||
525 | DJNZ .L01 |
||
526 | LD A,'.' |
||
573 | savelij | 527 | LD (DE),A |
528 | INC DE |
||
1186 | savelij | 529 | JR .L06 |
573 | savelij | 530 | |
1186 | savelij | 531 | .L03 INC HL |
532 | DJNZ .L03 |
||
573 | savelij | 533 | DEC HL |
1186 | savelij | 534 | LD A,'.' |
573 | savelij | 535 | LD (DE),A |
536 | INC DE |
||
1186 | savelij | 537 | .L06 LD B,3 |
538 | .L02 LDI |
||
573 | savelij | 539 | LD A,(HL) |
1186 | savelij | 540 | CP '!' |
541 | JR C,.L04 |
||
542 | DJNZ .L02 |
||
543 | .L04 XOR A |
||
573 | savelij | 544 | LD (DE),A |
545 | POP HL |
||
961 | savelij | 546 | LD A,(MOUNT_SYM) ; 㬮 ᪠ |
573 | savelij | 547 | PUSH HL |
548 | LD B,A |
||
549 | RRCA |
||
550 | RRCA |
||
551 | LD E,A |
||
831 | savelij | 552 | LD A,B |
1186 | savelij | 553 | LD D,HIGH (BUF_MOUNTDRIVES) |
573 | savelij | 554 | LD IXH,D |
961 | savelij | 555 | LD IXL,E ; IX= ⥫ ਬ 䠩 |
556 | LD (IX+_MOUNT_Mount_Num),B ; 㥬 |
||
1026 | savelij | 557 | LD BC,0x20 |
573 | savelij | 558 | LDIR |
559 | INC A |
||
665 | savelij | 560 | LD H,%11110111 |
1186 | savelij | 561 | .L1 RLC H |
573 | savelij | 562 | DEC A |
1186 | savelij | 563 | JR NZ,.L1 |
764 | savelij | 564 | LD A,(CPU2+VIRT_BITS) |
573 | savelij | 565 | AND H |
566 | LD L,A |
||
567 | LD A,H |
||
568 | CPL |
||
569 | OR L |
||
764 | savelij | 570 | CALL WR_VIRT_BITS |
1186 | savelij | 571 | EVOPORT WIN_P1,RAM_MOUNTER ; 稫 ࠭ ⥫ﬨ ਬ 䠩 |
573 | savelij | 572 | POP HL |
961 | savelij | 573 | ; HL= ⥫ 㥬 䠩 |
573 | savelij | 574 | IOPEN_MOUNT LD DE,FILE_EXT |
575 | CALL CP_EXT |
||
1186 | savelij | 576 | LD (IX+_MOUNT_Ext_Type),A ; ⨯ ࠧ ७ |
573 | savelij | 577 | CALL ICOM_DEV |
585 | savelij | 578 | DB _KOL_VOL |
961 | savelij | 579 | LD (IX+_MOUNT_Vol_Type),A ; ⨯ ࠧ |
580 | LD (IX+_MOUNT_Vol_Num),D ; ࠭ ࠧ |
||
573 | savelij | 581 | LD L,D |
582 | LD H,0 |
||
583 | ADD HL,HL |
||
584 | ADD HL,HL |
||
585 | ADD HL,HL |
||
1186 | savelij | 586 | LD DE,BUF_VOLUMES;BUF_TABLVOL ; ⠡ ࠧ |
573 | savelij | 587 | ADD HL,DE |
588 | LD A,(HL) |
||
831 | savelij | 589 | CP _SD_SDZ |
573 | savelij | 590 | LD HL,COMSDZ |
1186 | savelij | 591 | JR Z,.L6 |
831 | savelij | 592 | CP _SD_SDG |
573 | savelij | 593 | LD HL,COMSDG |
1186 | savelij | 594 | JR Z,.L6 |
573 | savelij | 595 | LD HL,COMHDDN |
1186 | savelij | 596 | .L6 LD (IX+_MOUNT_Adr_Mnt_Drv),L |
961 | savelij | 597 | LD (IX+_MOUNT_Adr_Mnt_Drv+1),H ; ࠩ 㥬 ࠧ |
573 | savelij | 598 | |
764 | savelij | 599 | LD E,(IX+_MOUNT_FileSize+1) |
600 | LD D,(IX+_MOUNT_FileSize+2) |
||
961 | savelij | 601 | LD L,(IX+_MOUNT_FileSize+3) ; LDE=ࠧ 䠩/256 |
1186 | savelij | 602 | LD A,(FATVAR.SecPerClus) |
605 | savelij | 603 | LD H,A |
1186 | savelij | 604 | .L3 SRL L |
573 | savelij | 605 | RR D |
606 | RR E |
||
607 | RRCA |
||
1186 | savelij | 608 | JR NC,.L3 ; LDE=⢮ |
961 | savelij | 609 | ; A00 ᥪ (256 ) -> 500 ᥪ (512 ) |
610 | ; =1 ᥪ 1280/8 蠣=8 |
||
611 | ; =2 ᥪ 640/4 蠣=4 |
||
612 | ; =4 ᥪ 320/2 蠣=2 |
||
613 | ; =8 ᥪ 160 蠣=1 |
||
614 | ; =16 ᥪ 80 蠣=1 |
||
615 | ; =32 ᥪ 40 蠣=1 |
||
616 | ; =64 ᥪ 20 蠣=1 |
||
617 | ; =128 ᥪ 10 蠣=1 |
||
605 | savelij | 618 | LD IY,1<<8+INTERNAL |
619 | LD A,H |
||
620 | CP 8 |
||
1186 | savelij | 621 | JR NC,.L5 |
605 | savelij | 622 | LD IYH,8 |
623 | RRCA |
||
1186 | savelij | 624 | JR C,.L5 |
605 | savelij | 625 | LD IYH,4 |
626 | RRCA |
||
1186 | savelij | 627 | JR C,.L5 |
605 | savelij | 628 | LD IYH,2 |
1186 | savelij | 629 | .L5 LD A,IYH |
961 | savelij | 630 | LD (IX+_MOUNT_Cls_Step),A ; 蠣 |
631 | LD A,(IX+_MOUNT_Mount_Num) ; 㥬 |
||
573 | savelij | 632 | ADD A,A |
633 | ADD A,A |
||
1186 | savelij | 634 | ADD A,HIGH (MOUNT_CLS+CPU1) |
573 | savelij | 635 | LD H,A |
636 | LD L,0 |
||
764 | savelij | 637 | LD C,(IX+_MOUNT_FstClusHI) |
638 | LD B,(IX+_MOUNT_FstClusHI+1) |
||
639 | LD E,(IX+_MOUNT_FstClusLO) |
||
640 | LD D,(IX+_MOUNT_FstClusLO+1) |
||
1186 | savelij | 641 | JR .L9 |
573 | savelij | 642 | |
1186 | savelij | 643 | .L7 DEC IYH |
644 | JR NZ,.L8 |
||
645 | .L9 LD A,(IX+_MOUNT_Cls_Step) ; 蠣 |
||
573 | savelij | 646 | LD IYH,A |
647 | LD (HL),E |
||
648 | INC H |
||
649 | LD (HL),D |
||
650 | INC H |
||
651 | LD (HL),C |
||
652 | INC H |
||
653 | LD (HL),B |
||
654 | DEC H |
||
655 | DEC H |
||
656 | DEC H |
||
657 | INC L |
||
1186 | savelij | 658 | .L8 PUSH HL |
573 | savelij | 659 | CALL RDFATZP |
660 | CALL LST_CLS |
||
661 | POP HL |
||
1186 | savelij | 662 | JR NC,.L7 |
573 | savelij | 663 | RET |
664 | |||
665 | FILE_EXT DZ "TRD" |
||
666 | |||
961 | savelij | 667 | ; ⥭/ ਬ ࠧ |
668 | ; HL= ⥭/ |
||
669 | ; D= ४, E= ᥪ+1 |
||
670 | ; A= (BIT 7=0-⥭, =1-) |
||
573 | savelij | 671 | RDWR_MOUNT LD A,(RREG_A) |
672 | AND 3 |
||
673 | RRCA |
||
674 | RRCA |
||
675 | LD IXL,A |
||
1186 | savelij | 676 | LD IXH,HIGH (BUF_MOUNTDRIVES) ; IX=⥫ A-D |
588 | savelij | 677 | LD IYL,INTERNAL |
1186 | savelij | 678 | EVOPORT WIN_P1,RAM_FATVARS |
679 | LD A,(DEVMAN_VARS.SETDVOL) |
||
680 | ADD A,HIGH (CPU1+BUF_ALLVOL)+4 |
||
681 | LD HL,BUF_CURRFATVAR |
||
573 | savelij | 682 | LD D,A |
683 | LD E,0 |
||
1186 | savelij | 684 | LD BC,BUF_CURRFATVAR_Size |
573 | savelij | 685 | LDIR |
764 | savelij | 686 | LD A,(IX+_MOUNT_Vol_Num) |
1186 | savelij | 687 | ADD A,HIGH (CPU1+BUF_ALLVOL)+4 |
573 | savelij | 688 | LD H,A |
689 | LD L,0 |
||
1186 | savelij | 690 | LD DE,BUF_CURRFATVAR |
691 | LD BC,BUF_CURRFATVAR_Size |
||
573 | savelij | 692 | LDIR |
1186 | savelij | 693 | EVOPORT WIN_P1,RAM_MOUNTER |
694 | LD HL,(DEVMAN_VARS.GO_DEV) |
||
764 | savelij | 695 | LD (IX+_MOUNT_Adr_Sel_Drv),L |
696 | LD (IX+_MOUNT_Adr_Sel_Drv+1),H |
||
697 | LD L,(IX+_MOUNT_Adr_Mnt_Drv) |
||
698 | LD H,(IX+_MOUNT_Adr_Mnt_Drv+1) |
||
1186 | savelij | 699 | LD (DEVMAN_VARS.GO_DEV),HL |
573 | savelij | 700 | LD HL,(RREG_E) |
701 | DEC L |
||
702 | LD E,L |
||
703 | LD L,H |
||
704 | LD H,0 |
||
705 | LD D,H |
||
706 | ADD HL,HL |
||
707 | ADD HL,HL |
||
708 | ADD HL,HL |
||
709 | ADD HL,HL |
||
961 | savelij | 710 | ADD HL,DE ; HL= ᥪ 䠩 (256 ) |
573 | savelij | 711 | PUSH HL |
1186 | savelij | 712 | LD A,(FATVAR.SecPerClus) |
713 | .L1 SRL H |
||
573 | savelij | 714 | RR L |
715 | RRCA |
||
1186 | savelij | 716 | JR NC,.L1 ; HL= |
1026 | savelij | 717 | ; 0xA00 ᥪ (256 ) -> 0x500 ᥪ (512 ) |
961 | savelij | 718 | ; =1 ᥪ 1280/8 蠣=8 |
719 | ; =2 ᥪ 640/4 蠣=4 |
||
720 | ; =4 ᥪ 320/2 蠣=2 |
||
721 | ; =8 ᥪ 160 蠣=1 |
||
722 | ; =16 ᥪ 80 蠣=1 |
||
723 | ; =32 ᥪ 40 蠣=1 |
||
724 | ; =64 ᥪ 20 蠣=1 |
||
725 | ; =128 ᥪ 10 蠣=1 |
||
573 | savelij | 726 | LD A,L |
605 | savelij | 727 | EX AF,AF' |
764 | savelij | 728 | LD A,(IX+_MOUNT_Cls_Step) |
605 | savelij | 729 | DEC A |
1186 | savelij | 730 | JR Z,.L6 |
605 | savelij | 731 | INC A |
732 | ADD HL,HL |
||
1186 | savelij | 733 | .L2 SRL H |
605 | savelij | 734 | RR L |
735 | RRCA |
||
1186 | savelij | 736 | JR NC,.L2 |
737 | .L6 LD A,(RREG_A) ; |
||
573 | savelij | 738 | ADD A,A |
739 | ADD A,A |
||
1186 | savelij | 740 | ADD A,HIGH (MOUNT_CLS+CPU1) |
573 | savelij | 741 | LD H,A |
742 | LD E,(HL) |
||
743 | INC H |
||
744 | LD D,(HL) |
||
745 | INC H |
||
746 | LD C,(HL) |
||
747 | INC H |
||
961 | savelij | 748 | LD B,(HL) ; BCDE= |
1065 | savelij | 749 | ; TODO: ઠ 0 0xFFFFFFFF 訡 ⥭/ |
961 | savelij | 750 | LD A,(IX+_MOUNT_Cls_Step) ; 蠣 |
605 | savelij | 751 | DEC A |
1186 | savelij | 752 | JR Z,.L3 ; 蠣 =1 |
961 | savelij | 753 | LD B,A ; ᪠ ᬥ饭 ⠡ |
573 | savelij | 754 | EX AF,AF' |
961 | savelij | 755 | AND B ; A=ᬥ饭 ⠡ |
756 | LD B,(HL) ; ⠭ |
||
1186 | savelij | 757 | JR Z,.L3 |
758 | .L4 PUSH AF |
||
573 | savelij | 759 | CALL RDFATZP |
760 | POP AF |
||
761 | DEC A |
||
1186 | savelij | 762 | JR NZ,.L4 |
763 | .L3 CALL REALSEC ; ᥪ |
||
573 | savelij | 764 | POP HL |
765 | PUSH HL |
||
766 | SRL L |
||
1186 | savelij | 767 | LD A,(FATVAR.SecPerClus) |
573 | savelij | 768 | DEC A |
1186 | savelij | 769 | JR Z,.L5 |
573 | savelij | 770 | AND L |
771 | LD L,A |
||
772 | LD H,0 |
||
773 | ADD HL,DE |
||
774 | EX DE,HL |
||
775 | LD HL,0 |
||
776 | ADC HL,BC |
||
777 | LD B,H |
||
778 | LD C,L |
||
1186 | savelij | 779 | .L5 CALL LOADLST ; ⥭ ᥪ |
573 | savelij | 780 | POP BC |
781 | LD A,C |
||
782 | AND 1 |
||
783 | ADD A,H |
||
784 | LD H,A |
||
785 | LD BC,CPU3 |
||
961 | savelij | 786 | ADD HL,BC ; 1 |
573 | savelij | 787 | CALL LDIR_SEC |
961 | savelij | 788 | LD A,(RREG_A) ; ⥭ |
1026 | savelij | 789 | AND 0x80 |
573 | savelij | 790 | CALL NZ,LSTSAVE |
791 | LD HL,RREG_H |
||
792 | INC (HL) |
||
764 | savelij | 793 | LD L,(IX+_MOUNT_Adr_Sel_Drv) |
794 | LD H,(IX+_MOUNT_Adr_Sel_Drv+1) |
||
1186 | savelij | 795 | LD (DEVMAN_VARS.GO_DEV),HL |
796 | EVOPORT WIN_P1,RAM_FATVARS |
||
797 | LD A,(DEVMAN_VARS.SETDVOL) |
||
798 | ADD A,HIGH (CPU1+BUF_ALLVOL)+4 |
||
573 | savelij | 799 | LD H,A |
1186 | savelij | 800 | LD DE,BUF_CURRFATVAR |
1026 | savelij | 801 | LD BC,0x100 |
585 | savelij | 802 | LD L,C |
573 | savelij | 803 | LDIR |
1186 | savelij | 804 | LD (FATVAR.NumSec2Buf + 2),HL |
573 | savelij | 805 | RET |
806 | |||
961 | savelij | 807 | LDIR_SEC EX DE,HL ; ࠭ DE |
808 | LD HL,(RREG_L) ; HL= ᭮ |
||
809 | CALL RESETUP_WINS ; ४䨣 |
||
810 | ADD HL,BC ; ⥭/ |
||
811 | EX DE,HL ; HL= , DE= ᭮ |
||
1186 | savelij | 812 | LD A,(RREG_A-CPU1) ; ⥭ |
1026 | savelij | 813 | AND 0x80 |
573 | savelij | 814 | JR Z,LDIRSEC6 |
961 | savelij | 815 | EX DE,HL ; 塞 ࠫ ७ |
1026 | savelij | 816 | LDIRSEC6 LD BC,0x100 |
573 | savelij | 817 | LDIR |
1186 | savelij | 818 | LD HL,CPU1 |
573 | savelij | 819 | ADD HL,SP |
961 | savelij | 820 | LD SP,HL ; 㫨 ⥪ 2 |
1026 | savelij | 821 | ATMPORT WIN_A3,0x7F ; ࠫ ᨬ 3 7FFD |
1186 | savelij | 822 | LD B,HIGH (WIN_A2) |
961 | savelij | 823 | OUT (C),A ; ࠫ ᨬ 2 7FFD |
573 | savelij | 824 | XOR A |
1186 | savelij | 825 | LD B,HIGH (WIN_P2) |
961 | savelij | 826 | OUT (C),A ; 㫨 ࠭ ६ 2 |
573 | savelij | 827 | RET |
828 | |||
961 | savelij | 829 | TXT_MOUNTER DZ "IMAGE.MNT" ; ᪠ ⥪⮢ 䠩 㪠 TRD |
573 | savelij | 830 | ETXT_MOUNTER |
831 | |||
1186 | savelij | 832 | FIND_MOUNTED LD A,(DEVMAN_VARS.KOLDVOL) |
586 | savelij | 833 | AND A |
1186 | savelij | 834 | JR NZ,.L09 |
835 | LD IX,BUF_MOUNTDRIVES |
||
1026 | savelij | 836 | LD DE,0x40 |
586 | savelij | 837 | LD B,4 |
1186 | savelij | 838 | .L10 LD (IX+_MOUNT_Name),D |
586 | savelij | 839 | ADD IX,DE |
1186 | savelij | 840 | DJNZ .L10 |
586 | savelij | 841 | RET |
842 | |||
1186 | savelij | 843 | .L09 LD A,(DEVMAN_VARS.SETDVOL) |
844 | LD (DEVMAN_VARS.SAVE_TEK_VOL),A ; ࠭ ⥪饥 ன⢮ |
||
961 | savelij | 845 | CALL SAVE_FNDVOL ; ࠭ ६ ⥪饣 ன⢠ |
1186 | savelij | 846 | LD H,CMOS.BYTE_01 |
1026 | savelij | 847 | ROMCALL READCMOS,ROM_RST82 |
585 | savelij | 848 | LD A,L |
1186 | savelij | 849 | AND CMOS_EC.M_AUTOMOUNT ; । 㦭 ᪠ 䠩 IMAGE.MNT |
850 | JP Z,.L01 |
||
961 | savelij | 851 | ; 饬 䠩 IMAGE.MNT ⮬ |
573 | savelij | 852 | LD IYL,INTERNAL |
1186 | savelij | 853 | LD A,(DEVMAN_VARS.KOLDVOL) |
961 | savelij | 854 | DEC A ; ᪠ 㤥 ࠧ |
855 | CALL SET_VOL_MNT ; ४稫 ࠭ ன⢮ |
||
1186 | savelij | 856 | LD HL,(FATVAR.RootDIRCluster) |
857 | LD (FATVAR.CurrentDIRCluster),HL |
||
858 | LD HL,(FATVAR.RootDIRCluster + 2) |
||
859 | LD (FATVAR.CurrentDIRCluster + 2),HL ; ࠫ ⠫ ࠭ ன⢠ |
||
961 | savelij | 860 | CALL INIRTSC ; 樠 ६ ROOTDIR |
573 | savelij | 861 | LD HL,TXT_MOUNTER |
1186 | savelij | 862 | LD DE,BUF_MOVE256;BUF_256 |
573 | savelij | 863 | LD BC,ETXT_MOUNTER-TXT_MOUNTER |
961 | savelij | 864 | LDIR ; ७ 䠩 ᪠ |
573 | savelij | 865 | CALL ICOM_FAT |
585 | savelij | 866 | DB _FIND_NAME |
1186 | savelij | 867 | JP C,.L01 ; 䠩 IMAGE.MNT |
961 | savelij | 868 | ; 䠩 |
869 | CALL OPEN_FILE ; 뢠 䠩 |
||
1186 | savelij | 870 | LD HL,FATVAR.FILE_SRC+0x1F |
573 | savelij | 871 | LD A,(HL) |
872 | DEC HL |
||
873 | OR (HL) |
||
1186 | savelij | 874 | JP NZ,.L01 ; 䠩 512 |
573 | savelij | 875 | DEC HL |
876 | LD A,(HL) |
||
877 | CP 2 |
||
1186 | savelij | 878 | JP NC,.L01 ; 䠩 512 |
961 | savelij | 879 | LD A,1 ; 㤥 1 ᥪ 䠩 |
573 | savelij | 880 | LD B,(HL) |
881 | DEC HL |
||
961 | savelij | 882 | LD C,(HL) ; 䠩 |
883 | PUSH BC ; ࠭ 쭥襣 ᯮ짮 |
||
573 | savelij | 884 | LD IYL,INTERNAL |
1186 | savelij | 885 | LD HL,OFFSET_BUFSYM+CPU2 |
573 | savelij | 886 | PUSH HL |
961 | savelij | 887 | CALL READ_FILE ; ⠫ 1 ᥪ 䠩 |
1186 | savelij | 888 | EVOPORT WIN_P1,RAM_MOUNTER |
573 | savelij | 889 | POP HL |
890 | POP BC |
||
891 | ADD HL,BC |
||
961 | savelij | 892 | LD (HL),0 ; ⠭ ਧ 䠩 0 |
573 | savelij | 893 | SBC HL,BC |
1186 | savelij | 894 | .L04 LD A,(HL) |
573 | savelij | 895 | AND A |
1186 | savelij | 896 | JR Z,.L01 ; 室 䠩 稫 |
573 | savelij | 897 | INC HL |
1186 | savelij | 898 | CP '!' |
899 | JR C,.L04 ; ப 稫 ७ᨬ ப ᪠ |
||
573 | savelij | 900 | DEC HL |
901 | PUSH HL |
||
902 | INC HL |
||
1186 | savelij | 903 | CP 'a' ; ᨬ ப 㪢 ன⢠ |
904 | JR C,.L06 ; ⮫쪮 ᨬ "A" |
||
665 | savelij | 905 | CP 'z'+1 |
1186 | savelij | 906 | JR NC,.L06 ; "Z" |
1026 | savelij | 907 | AND 0xDF ; ॢ 㪢 ன⢠ 孨 ॣ, 㦭 |
1186 | savelij | 908 | .L06 SUB 'E' ; FAT ன⢠ 稭 㪢 "E" |
909 | JR C,.L02 |
||
573 | savelij | 910 | EXX |
961 | savelij | 911 | LD C,A ; ன⢠ ᪠ 䠩 |
1186 | savelij | 912 | LD A,(DEVMAN_VARS.KOLDVOL) ; ⢮ ࠧ |
573 | savelij | 913 | CP C |
914 | EXX |
||
1186 | savelij | 915 | JR C,.L02 |
573 | savelij | 916 | LD A,(HL) |
917 | INC HL |
||
1186 | savelij | 918 | CP ':' ; ࠧ⥫ 易⥫ |
919 | JR NZ,.L02 |
||
573 | savelij | 920 | LD A,(HL) |
921 | INC HL |
||
1186 | savelij | 922 | CP '/' ; ࠧ⥫ 易⥫ |
923 | JR NZ,.L02 |
||
924 | .L07 LD A,(HL) |
||
573 | savelij | 925 | INC HL |
1186 | savelij | 926 | CP '!' |
927 | JR NC,.L07 ; 饬 ப |
||
961 | savelij | 928 | LD A,(HL) ; 㪢 |
573 | savelij | 929 | INC HL |
1186 | savelij | 930 | CP 'a' |
931 | JR C,.L08 |
||
665 | savelij | 932 | CP 'z'+1 |
1186 | savelij | 933 | JR NC,.L08 |
1026 | savelij | 934 | AND 0xDF ; ॢ 孨 ॣ, 㦭 |
1186 | savelij | 935 | .L08 SUB 'A' |
936 | JR C,.L02 |
||
573 | savelij | 937 | CP 4 |
1186 | savelij | 938 | JR NC,.L02 |
573 | savelij | 939 | EXX |
961 | savelij | 940 | LD B,A ; |
573 | savelij | 941 | EXX |
942 | LD A,(HL) |
||
943 | INC HL |
||
1186 | savelij | 944 | CP ':' |
945 | JR NZ,.L02 |
||
573 | savelij | 946 | LD D,H |
947 | LD E,L |
||
948 | EX (SP),HL |
||
949 | EX DE,HL |
||
950 | SCF |
||
951 | SBC HL,DE |
||
952 | LD B,H |
||
953 | LD C,L |
||
954 | EX DE,HL |
||
955 | EXX |
||
956 | LD A,B |
||
957 | EXX |
||
1186 | savelij | 958 | ADD A,HIGH (BUF_PATHMOUNT+CPU1) |
573 | savelij | 959 | LD D,A |
961 | savelij | 960 | LD E,0 ; DE= ⥪⮢ ப 㥬 |
573 | savelij | 961 | DEC BC |
962 | DEC BC |
||
961 | savelij | 963 | LDIR ; ७ ப |
573 | savelij | 964 | XOR A |
961 | savelij | 965 | LD (DE),A ; ਭ㤨⥫쭮 襭 ப |
573 | savelij | 966 | POP HL |
1186 | savelij | 967 | JR .L04 |
573 | savelij | 968 | |
1186 | savelij | 969 | .L02 LD A,(HL) |
573 | savelij | 970 | INC HL |
971 | AND A |
||
1186 | savelij | 972 | JR Z,.L01 |
973 | CP ' ' |
||
974 | JR NC,.L02 |
||
573 | savelij | 975 | POP DE |
1186 | savelij | 976 | JR .L04 |
573 | savelij | 977 | |
1186 | savelij | 978 | .L01 |
979 | EVOPORT WIN_P1,RAM_MOUNTER |
||
1026 | savelij | 980 | LD BC,0x400 |
1186 | savelij | 981 | LD IX,BUF_MOUNTDRIVES ; ⥫ 㥬 䠩 |
982 | .L2 PUSH BC |
||
961 | savelij | 983 | CALL FINDMNTD0 ; 饬 㪠 䠩 |
1186 | savelij | 984 | JR NC,.L5 |
961 | savelij | 985 | LD (IX+_MOUNT_Name),0 ; 䠩 , ਭ㤨⥫쭮 㥬 ࠧ |
1186 | savelij | 986 | .L5 LD BC,0x40 |
961 | savelij | 987 | ADD IX,BC ; 騩 ⥫ 㥬 䠩 |
573 | savelij | 988 | POP BC |
1186 | savelij | 989 | DJNZ .L2 |
573 | savelij | 990 | LD A,IYH |
1026 | savelij | 991 | AND 0xF0 ; 訥 4 ਬ 䠩 |
666 | savelij | 992 | LD D,A |
764 | savelij | 993 | LD A,(CPU2+VIRT_BITS) |
1026 | savelij | 994 | AND 0x0F ; 訥 4 ॠ 㠫 ਢ |
961 | savelij | 995 | OR D ; ᮢ⨫ ⭮ |
764 | savelij | 996 | CALL WR_VIRT_BITS |
1186 | savelij | 997 | LD A,(DEVMAN_VARS.SAVE_TEK_VOL) |
585 | savelij | 998 | PUSH IY |
999 | LD IYL,INTERNAL |
||
961 | savelij | 1000 | CALL SET_VOL_MNT ; ⠭ ⥪饥 ࠭ ன⢮ |
1001 | CALL INIRTSC ; ந⨫ ६ |
||
585 | savelij | 1002 | POP IY |
961 | savelij | 1003 | JP LOAD_FNDVOL ; 㫨 ⥫ ன⢠ |
573 | savelij | 1004 | |
961 | savelij | 1005 | ; 㥬 䠩 ⠭ ᮮ⢥饣 |
573 | savelij | 1006 | FINDMNTD0 CALL FINDMNTD1 |
1007 | EX AF,AF' |
||
1008 | LD A,IXL |
||
1026 | savelij | 1009 | AND 0xC0 |
573 | savelij | 1010 | RLCA |
961 | savelij | 1011 | RLCA ; ⥪饣 㥬 |
573 | savelij | 1012 | INC A |
1013 | LD B,A |
||
1014 | LD A,%11110111 |
||
1015 | RLCA |
||
961 | savelij | 1016 | DJNZ $-1 ; ⠭ ᪨ 㥬 |
1017 | LD C,A ; ᪠ |
||
573 | savelij | 1018 | CPL |
961 | savelij | 1019 | LD B,A ; |
573 | savelij | 1020 | LD A,IYH |
961 | savelij | 1021 | AND C ; ᨫ ᬮ |
573 | savelij | 1022 | LD IYH,A |
1023 | EX AF,AF' |
||
961 | savelij | 1024 | RET C ; 室 䠩 |
573 | savelij | 1025 | LD A,IYH |
961 | savelij | 1026 | OR B ; ⠭ 䠩 |
573 | savelij | 1027 | LD IYH,A |
1028 | RET |
||
1029 | |||
961 | savelij | 1030 | ; ࠭ ⥪饣 |
573 | savelij | 1031 | STORE_PATH PUSH AF |
1186 | savelij | 1032 | EVOPORT WIN_P1,RAM_MOUNTER |
1033 | LD A,(DEVMAN_VARS.SETDVOL) ; ⥪饣 ன⢠ |
||
1034 | ADD A,HIGH (BUF_CURRPATH+CPU1)+4 ; +訩 |
||
573 | savelij | 1035 | LD H,A |
1186 | savelij | 1036 | LD DE,BUF_MOVE256 |
1026 | savelij | 1037 | LD BC,0x100 |
573 | savelij | 1038 | LD L,C |
1039 | LDIR |
||
1040 | STOREPATH1 POP AF |
||
1041 | RET |
||
1042 | |||
961 | savelij | 1043 | ; ⠭ ⥪饣 |
573 | savelij | 1044 | RESTORE_PATH PUSH AF |
1186 | savelij | 1045 | EVOPORT WIN_P1,RAM_MOUNTER |
1046 | LD A,(DEVMAN_VARS.SETDVOL) ; ⥪饣 ன⢠ |
||
1047 | ADD A,HIGH (BUF_CURRPATH+CPU1)+4 ; +訩 |
||
573 | savelij | 1048 | LD D,A |
1186 | savelij | 1049 | LD HL,BUF_MOVE256 |
1026 | savelij | 1050 | LD BC,0x100 |
573 | savelij | 1051 | LD E,C |
1052 | LDIR |
||
1053 | RESTOREPATH1 POP AF |
||
1054 | RET |
||
1055 | |||
961 | savelij | 1056 | ; 㥬 䠩 |
573 | savelij | 1057 | FINDMNTD1 LD A,IXL |
1058 | RLCA |
||
1059 | RLCA |
||
1060 | AND 3 |
||
1186 | savelij | 1061 | ADD A,HIGH (BUF_PATHMOUNT+CPU1) |
573 | savelij | 1062 | LD D,A |
961 | savelij | 1063 | LD E,0 ; DE= ப ⥫ 㬮 䠩 |
1064 | LD A,(DE) ; 㪢 ன⢠ 䠩 ᪠ |
||
573 | savelij | 1065 | INC DE |
1066 | INC DE |
||
1067 | INC DE |
||
1068 | AND A |
||
1069 | SCF |
||
1070 | RET Z |
||
1186 | savelij | 1071 | SUB 'E' ; 㪢 |
573 | savelij | 1072 | PUSH DE |
961 | savelij | 1073 | CALL SET_VOL_MNT ; ४稫 ன⢮ |
1074 | CALL STORE_PATH ; ࠭ ⥪騩 |
||
1186 | savelij | 1075 | LD HL,(FATVAR.RootDIRCluster) |
1076 | LD (FATVAR.CurrentDIRCluster),HL |
||
1077 | LD HL,(FATVAR.RootDIRCluster + 2) |
||
1078 | LD (FATVAR.CurrentDIRCluster + 2),HL ; 諨 ७ ன⢠ |
||
961 | savelij | 1079 | CALL INIRTSC ; 樠 ६ |
1186 | savelij | 1080 | EVOPORT WIN_P1,RAM_MOUNTER |
573 | savelij | 1081 | POP HL |
961 | savelij | 1082 | CALL FNDBUF ; ᯠ ⥪⮢ ப |
573 | savelij | 1083 | FINDMNTD13 PUSH HL |
961 | savelij | 1084 | CALL POSTF02 ; ⥪饣 䠩 0 |
1085 | CALL FINDMNTD3 ; ⥪饩 ४ਨ |
||
573 | savelij | 1086 | POP DE |
961 | savelij | 1087 | JP C,RESTORE_PATH ; ⠭ ⥪騩 |
1186 | savelij | 1088 | LD BC,_DIR_Attr |
573 | savelij | 1089 | ADD HL,BC |
1090 | LD A,(HL) |
||
1091 | SBC HL,BC |
||
1186 | savelij | 1092 | AND M_DIR_Directory |
961 | savelij | 1093 | JR Z,FINDMNTD23 ; 䠩 , |
573 | savelij | 1094 | PUSH DE |
961 | savelij | 1095 | CALL ENTER_DIR ; 室 ४ |
1096 | CALL POSTF02 ; ⥪饣 䠩 0 |
||
573 | savelij | 1097 | POP HL |
1098 | LD A,(HL) |
||
1099 | AND A |
||
1100 | SCF |
||
961 | savelij | 1101 | JP Z,RESTORE_PATH ; ⠭ ⥪騩 |
1102 | CALL FNDBUF ; ᯠ뢠 ப |
||
1103 | JR FINDMNTD13 ; த |
||
573 | savelij | 1104 | |
1105 | FINDMNTD23 LD A,IXL |
||
1106 | RLCA |
||
1107 | RLCA |
||
1108 | LD E,IXL |
||
961 | savelij | 1109 | LD D,IXH ; DE=㤠 ⥫ ७ |
1110 | LD (IX+_MOUNT_Mount_Num),A ; 㥬 |
||
573 | savelij | 1111 | PUSH HL |
1026 | savelij | 1112 | LD BC,0x20 |
573 | savelij | 1113 | LDIR |
1114 | POP HL |
||
1115 | PUSH IY |
||
1116 | CALL IOPEN_MOUNT |
||
1117 | POP IY |
||
1118 | XOR A |
||
961 | savelij | 1119 | JP RESTORE_PATH ; ⠭ ⥪騩 |
573 | savelij | 1120 | |
1121 | FINDMNTD4 CALL NXTLEGZ |
||
1122 | FINDMNTD3 PUSH HL |
||
1123 | LD DE,FB_EXT |
||
1124 | CALL ICMP_NAME |
||
1125 | POP HL |
||
1126 | RET Z |
||
1127 | LD A,(HL) |
||
1128 | AND A |
||
1129 | JR NZ,FINDMNTD4 |
||
1130 | SCF |
||
1131 | RET |
||
1132 | |||
961 | savelij | 1133 | ; 祭 ⥫ 䠩 㦥 ࠬ |
1186 | savelij | 1134 | REST_NAMELOAD LD HL,NAME_RAMDISK-CPU2 |
631 | savelij | 1135 | LD DE,(RREG_L) |
1026 | savelij | 1136 | LD BC,0x20 |
631 | savelij | 1137 | JP LDIR_BYTES |
1138 | |||
833 | savelij | 1139 | ;STOR_NAMELOAD LD HL,(RREG_L) |
1186 | savelij | 1140 | ; LD DE,NAME_RAMDISK-CPU2 |
1026 | savelij | 1141 | ; LD BC,0x20 |
833 | savelij | 1142 | ; JP LDIR_BYTES |
639 | savelij | 1143 | |
1026 | savelij | 1144 | GET_MOUNTED |
1186 | savelij | 1145 | EVOPORT WIN_P1,RAM_MOUNTER |
1146 | LD HL,BUF_MOUNTDRIVES & 0x3FFF |
||
573 | savelij | 1147 | LD DE,(RREG_L) |
1026 | savelij | 1148 | LD BC,0x100 |
573 | savelij | 1149 | JP LDIR_BYTES |
1150 | |||
1026 | savelij | 1151 | CMP_DRIVE |
1186 | savelij | 1152 | EVOPORT WIN_P1,RAM_MOUNTER |
573 | savelij | 1153 | LD A,(RREG_A) |
665 | savelij | 1154 | AND 3 |
1155 | RLCA |
||
1156 | RLCA |
||
1157 | LD L,A |
||
1186 | savelij | 1158 | LD H,HIGH (BUF_MOUNTDRIVES) |
665 | savelij | 1159 | LD A,(HL) |
961 | savelij | 1160 | AND A ; ਬ, |
1161 | SCF ; ᪠ |
||
665 | savelij | 1162 | JR Z,CMP_DRIVE1 |
1163 | XOR A |
||
1164 | CMP_DRIVE1 PUSH AF |
||
1165 | POP HL |
||
1166 | LD (RREG_F),HL |
||
1167 | RET |
||
1168 | |||
961 | savelij | 1169 | ; ࠧ |
1026 | savelij | 1170 | CLOSEMOUNT |
1186 | savelij | 1171 | EVOPORT WIN_P1,RAM_MOUNTER |
665 | savelij | 1172 | LD A,(RREG_A) |
573 | savelij | 1173 | LD B,A |
1174 | RRCA |
||
1175 | RRCA |
||
1176 | LD L,A |
||
1186 | savelij | 1177 | LD H,HIGH (BUF_MOUNTDRIVES) |
573 | savelij | 1178 | LD (HL),0 |
1179 | LD A,B |
||
1186 | savelij | 1180 | ADD A,HIGH (BUF_PATHMOUNT+CPU1) |
573 | savelij | 1181 | LD H,A |
1182 | LD L,0 |
||
1183 | LD (HL),L |
||
1184 | INC B |
||
665 | savelij | 1185 | LD A,%11110111 |
573 | savelij | 1186 | RLCA |
1187 | DJNZ $-1 |
||
1188 | LD B,A |
||
764 | savelij | 1189 | LD A,(CPU2+VIRT_BITS) |
1190 | AND B |
||
1191 | JP WR_VIRT_BITS |
||
573 | savelij | 1192 | |
961 | savelij | 1193 | ; ᯠ騪 䠩 |
1194 | ; HL = ⥪⮢ ப |
||
1026 | savelij | 1195 | FNDBUF LD BC,0x0802 |
573 | savelij | 1196 | LD DE,FB_EXT |
1197 | FNDBUF4 LD A,(HL) |
||
1198 | INC HL |
||
1186 | savelij | 1199 | CP '.' |
573 | savelij | 1200 | JR Z,FNDBUF2 |
1186 | savelij | 1201 | CP '/' |
573 | savelij | 1202 | JR Z,FNDBUF5 |
1203 | LD (DE),A |
||
1204 | INC DE |
||
1205 | DJNZ FNDBUF4 |
||
1206 | LD A,(HL) |
||
1207 | AND A |
||
1208 | RET Z |
||
1209 | INC HL |
||
1210 | JR FNDBUF3 |
||
1211 | |||
1212 | FNDBUF5 LD A,C |
||
1213 | AND A |
||
1214 | RET Z |
||
1215 | FNDBUF2 LD A,B |
||
1216 | AND A |
||
1217 | JR Z,FNDBUF3 |
||
1186 | savelij | 1218 | LD A,' ' |
573 | savelij | 1219 | LD (DE),A |
1220 | INC DE |
||
1221 | DJNZ $-2 |
||
1222 | FNDBUF3 LD B,3 |
||
1223 | DEC C |
||
1224 | DEC HL |
||
1225 | LD A,(HL) |
||
1186 | savelij | 1226 | CP '/' |
573 | savelij | 1227 | JR Z,FNDBUF4 |
1228 | INC HL |
||
1229 | JR FNDBUF4 |
||
764 | savelij | 1230 | |
961 | savelij | 1231 | ; 祭 ⥪饣 ﭨ ⮢ ᬮ ࠬ᪠ |
1186 | savelij | 1232 | GET_VIRT_BITS LD HL,BUF_MOUNTDRIVES |
961 | savelij | 1233 | LD E,0 ; ᬮ |
764 | savelij | 1234 | .L2 LD A,(HL) |
1235 | AND A |
||
1236 | JR Z,.L1 |
||
888 | savelij | 1237 | SET 4,E |
764 | savelij | 1238 | .L1 RR E |
1026 | savelij | 1239 | LD A,0x40 |
764 | savelij | 1240 | ADD A,L |
1241 | LD L,A |
||
1242 | JR NZ,.L2 |
||
999 | savelij | 1243 | ; VIRT_BITS - 3-0 ਬ ࠧ D-A |
833 | savelij | 1244 | CALL GET_VIRTREAL |
888 | savelij | 1245 | AND 3 |
1246 | INC A |
||
1247 | LD B,A |
||
1248 | LD A,%00001000 |
||
1249 | .L3 RLCA |
||
1250 | DJNZ .L3 |
||
764 | savelij | 1251 | OR E |
888 | savelij | 1252 | ; A xxxx0000 - ࠬ᪠ |
1253 | ; E 0000xxxx - ਬ ࠧ |
||
1254 | |||
961 | savelij | 1255 | ; ⠭ 㠫/ॠ EVO-DOS |
888 | savelij | 1256 | WR_VIRT_BITS PUSH BC |
775 | savelij | 1257 | PUSH HL |
1026 | savelij | 1258 | LD H,A |
1259 | LD (CPU2 + VIRT_BITS),A ; ७ ६ |
||
1260 | LD (RREG_A),A ; 頥 祭 ॣ A |
||
1261 | AND %00001111 ; ਬ ᪨ |
||
888 | savelij | 1262 | LD L,A |
1026 | savelij | 1263 | LD A,H |
1264 | AND %11110000 |
||
888 | savelij | 1265 | RRCA |
1266 | RRCA |
||
1267 | RRCA |
||
1268 | RRCA |
||
1026 | savelij | 1269 | OR L |
961 | savelij | 1270 | LD (B_PORT_VIRT),A |
999 | savelij | 1271 | EVOPORT WIN_P2,RAM_EVODOS |
1026 | savelij | 1272 | LD A,H |
1273 | LD (CPU2 + COPY_VIRT_BITS),A ; ६ 䫠 |
||
1186 | savelij | 1274 | LD A,CMOS.VIRT_REAL_DRIVE |
999 | savelij | 1275 | LD BC,CMOSD_SET_ADR |
1276 | OUT (C),A |
||
1277 | LD BC,CMOSD_RD_WR |
||
1026 | savelij | 1278 | IN L,(C) |
1279 | LD A,L |
||
1280 | AND %00000011 |
||
1281 | LD (CPU2 + VIRT_DRIVE),A ; 㠫쭮 ᪠ CMOS |
||
1282 | LD A,L |
||
1283 | AND %00001100 |
||
1284 | RRCA |
||
1285 | RRCA |
||
1286 | LD (CPU2 + REAL_DRIVE),A ; ॠ쭮 ᪠ CMOS |
||
1287 | LD BC,WIN_P2 |
||
764 | savelij | 1288 | XOR A |
1289 | OUT (C),A |
||
775 | savelij | 1290 | POP HL |
764 | savelij | 1291 | POP BC |
1292 | RET |
||
1293 | |||
999 | savelij | 1294 | IF 0 |
1026 | savelij | 1295 | ; ࠬ᪠ |
1296 | ; MOUNT_RAMDISK CALL GET_VIRTREAL |
||
999 | savelij | 1297 | ; AND 3 |
1298 | ; JR SET_RAMDISK.L1 |
||
888 | savelij | 1299 | |
1300 | ; ⪫祭/⠭ ࠬ᪠ |
||
1301 | ; A = >3 - ⪫祭 ࠬ᪠ |
||
1302 | ; 0..3 - ࠬ᪠ |
||
1303 | ; VIRT_BITS - 7-4 ⠭ -> ࠬ |
||
1304 | SET_RAMDISK LD A,(RREG_A) |
||
1305 | CP 4 |
||
1306 | JR C,.L1 |
||
764 | savelij | 1307 | LD A,(CPU2+VIRT_BITS) |
1026 | savelij | 1308 | AND 0x0F |
888 | savelij | 1309 | JR WR_VIRT_BITS |
1310 | |||
1311 | .L1 INC A |
||
764 | savelij | 1312 | LD B,A |
888 | savelij | 1313 | LD A,%00001000 |
1314 | .L2 RLCA |
||
1315 | DJNZ .L2 |
||
1316 | LD L,A |
||
1317 | LD A,(CPU2+VIRT_BITS) |
||
1026 | savelij | 1318 | AND 0x0F |
888 | savelij | 1319 | OR L |
999 | savelij | 1320 | JP WR_VIRT_BITS |
1321 | ENDIF |
||
764 | savelij | 1322 | |
999 | savelij | 1323 | ; ⠭ ॠ 㠫 |
1324 | ; A = 0..3 - ⠭ |
||
1325 | SET_VIRTREAL LD A,(RREG_A) |
||
1186 | savelij | 1326 | .NUMDRV LD E,A |
999 | savelij | 1327 | CALL GET_VIRTREAL |
1328 | AND %11110000 |
||
1329 | LD D,A |
||
1330 | LD A,E |
||
1331 | AND 3 |
||
1332 | LD E,A |
||
1333 | ADD A,A |
||
1334 | ADD A,A |
||
1335 | OR E |
||
1336 | .L1 LD L,A |
||
1337 | ROMCALL IWRITECMOS,ROM_RST82 |
||
1338 | JP GET_VIRT_BITS |
||
1339 | |||
1340 | ; ⠭ ॠ쭮 |
||
1341 | ; A = 0..3 - ⠭ |
||
1342 | SET_REAL LD A,(RREG_A) |
||
1343 | LD E,A |
||
1344 | CALL GET_VIRTREAL |
||
1345 | AND %11110011 |
||
1346 | LD D,A |
||
1347 | LD A,E |
||
1348 | AND 3 |
||
1349 | ADD A,A |
||
1350 | ADD A,A |
||
1351 | OR D |
||
1352 | JR SET_VIRTREAL.L1 |
||
1353 | |||
1354 | ; ⠭ 㠫쭮 |
||
1355 | ; A = 0..3 - ⠭ |
||
1356 | SET_VIRT LD A,(RREG_A) |
||
1357 | LD E,A |
||
1358 | CALL GET_VIRTREAL |
||
1359 | AND %11111100 |
||
1360 | LD D,A |
||
1361 | LD A,E |
||
1362 | AND 3 |
||
1363 | OR D |
||
1364 | JR SET_VIRTREAL.L1 |
||
1365 | |||
1186 | savelij | 1366 | GET_VIRTREAL LD H,CMOS.VIRT_REAL_DRIVE |
999 | savelij | 1367 | ROMCALL READCMOS,ROM_RST82 |
1026 | savelij | 1368 | AND 0x0F |
764 | savelij | 1369 | RET |