Rev 1027 | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 623 | savelij | 1 | |
| 1186 | savelij | 2 | ; LAST UPDATE: 13.02.2025 savelij |
| 623 | savelij | 3 | |
| 764 | savelij | 4 | TITLE "virtual.a80" |
| 5 | |||
| 1026 | savelij | 6 | DB 0xFF ; DCU |
| 665 | savelij | 7 | |
| 1026 | savelij | 8 | ; 256 |
| 9 | COPY_BLOCK |
||
| 10 | REPT 128 ; 256 |
||
| 623 | savelij | 11 | LDI |
| 1026 | savelij | 12 | ENDM |
| 13 | COPYHBLOCK |
||
| 14 | REPT 126 |
||
| 623 | savelij | 15 | LDI |
| 1026 | savelij | 16 | ENDM |
| 623 | savelij | 17 | JR COPY_BLOCK1 |
| 18 | |||
| 1026 | savelij | 19 | DW 0xFFFF ; 뢠 IM 2 I=9 |
| 623 | savelij | 20 | |
| 21 | COPY_BLOCK1 LDI |
||
| 22 | LDI |
||
| 23 | RET |
||
| 24 | |||
| 1026 | savelij | 25 | ; ७ 㭪権 |
| 831 | savelij | 26 | INIT_VAR |
| 27 | SETVAR _OUT_1F |
||
| 28 | SETVAR _OUT_3F |
||
| 29 | SETVAR _OUT_5F |
||
| 30 | SETVAR _OUT_7F |
||
| 31 | SETVAR _OUT_FF |
||
| 32 | SETVAR _OUTI |
||
| 33 | SETVAR _IN_1F |
||
| 34 | SETVAR _IN_3F |
||
| 35 | SETVAR _IN_5F |
||
| 36 | SETVAR _IN_7F |
||
| 37 | SETVAR _IN_FF |
||
| 38 | SETVAR _INI |
||
| 39 | SETVAR _OUT_C_D |
||
| 40 | SETVAR _IN_H_C |
||
| 41 | SETVAR _WR_RD_SECT |
||
| 42 | SETVAR _CMP_RAMDISK |
||
| 888 | savelij | 43 | ; SETVAR _SET_VIRT_BITS |
| 623 | savelij | 44 | |
| 831 | savelij | 45 | SETVAR WOUTCA |
| 46 | SETVAR WWRITE_SEC_ |
||
| 47 | SETVAR WREAD_SEC_ |
||
| 48 | SETVAR WINI_RET |
||
| 623 | savelij | 49 | |
| 1026 | savelij | 50 | ; ७ 㭪権 |
| 51 | ; ⮬ 맮 |
||
| 52 | W_DATA DW W_OUT1F ; 1F |
||
| 53 | DW W_OUT3F ; 3F |
||
| 54 | DW W_OUT5F ; 5F |
||
| 55 | DW W_OUT7F ; 7F |
||
| 56 | DW W_OUTFF ; FF |
||
| 57 | DW W_OUTI ; OUTI |
||
| 58 | DW W_IN1F ; ⥭ 1F |
||
| 59 | DW W_IN3F ; ⥭ 3F |
||
| 60 | DW W_IN5F ; ⥭ 5F |
||
| 61 | DW W_IN7F ; ⥭ 7F |
||
| 62 | DW W_INFF ; ⥭ FF |
||
| 63 | DW W_INI ; INI |
||
| 64 | DW W_OUTCD ; ॣ 'D' 'BC' |
||
| 65 | DW W_INHC ; ⥭ ॣ 'H' 'BC' |
||
| 66 | DW READ_WRITE_SEC ; ⥭/ ᥪ |
||
| 67 | DW CMP_RAM_DISK ; ઠ RAM ᪠ |
||
| 68 | ; DW SET_VIRT_BITS ; ⠭ ६ ⠭ RST 8 |
||
| 623 | savelij | 69 | EW_DATA |
| 1026 | savelij | 70 | ; 맮 |
| 71 | DW W_OUTCA ; ॣ 'A' 'BC' |
||
| 72 | DW WRITE_SEC_ ; ᥪ 맮 |
||
| 73 | DW READ_SEC_ ; ⥭ ᥪ 맮 |
||
| 74 | DW W_INI ; INI 맮 |
||
| 623 | savelij | 75 | |
| 1026 | savelij | 76 | TEXT4VIRTDRV DB 0x16,ZASTV_Y+2,1 |
| 623 | savelij | 77 | TXT4VIRTDRV DC "Virtual Drive: " |
| 78 | ETXT4VIRTDRV |
||
| 79 | |||
| 1026 | savelij | 80 | DOS_NOEMUL DB ROM_BAS48 | 0x80 ; ࠭ DOS 樥 ⮫쪮 3D13 |
| 81 | DOS_EMUL DB ROM_ADD_BAS48 | 0x80 ; ࠭ DOS 墠⮬ ⮢ |
||
| 665 | savelij | 82 | |
| 1026 | savelij | 83 | NUM_ALT_PAGE |
| 84 | IF EMU3D2F=1 |
||
| 85 | DB ROM_ADD_BAS48 | 0x80 |
||
| 86 | ELSE |
||
| 87 | DB ROM_BAS48 | 0x80 |
||
| 88 | ENDIF |
||
| 678 | savelij | 89 | |
| 1026 | savelij | 90 | ; ࠡ稪 RST 30 |
| 665 | savelij | 91 | RST30_WORK EX (SP),HL |
| 623 | savelij | 92 | PUSH AF |
| 93 | PUSH BC |
||
| 94 | LD A,I |
||
| 665 | savelij | 95 | JP PE,RST30_WORK1 |
| 623 | savelij | 96 | LD A,I |
| 665 | savelij | 97 | RST30_WORK1 DI |
| 623 | savelij | 98 | PUSH AF |
| 1026 | savelij | 99 | LD A,(NUM_ALT_PAGE) ; ⥪饩 ࠭ |
| 623 | savelij | 100 | PUSH AF |
| 1026 | savelij | 101 | AND 0x3E ; ॠ쭮 ࠭ ᨬ |
| 623 | savelij | 102 | LD BC,WIN_A0 |
| 103 | OUT (C),A |
||
| 104 | LD B,HIGH (WIN_P0) |
||
| 764 | savelij | 105 | LD A,RAM_EVODOS |
| 623 | savelij | 106 | OUT (C),A |
| 107 | IN A,(PEVO_CONF) |
||
| 108 | LD (WR_BF),A |
||
| 109 | OR 1 |
||
| 110 | OUT (PEVO_CONF),A |
||
| 111 | POP AF |
||
| 112 | LD (TEK_ROMPAGE),A |
||
| 113 | LD A,(HL) |
||
| 114 | LD (DOS_STEK),SP |
||
| 115 | LD SP,DOS_STEK |
||
| 1026 | savelij | 116 | PUSH HL ; HL = |
| 623 | savelij | 117 | PUSH DE |
| 118 | LD HL,(DOS_STEK) |
||
| 119 | LD DE,REG_IF |
||
| 1026 | savelij | 120 | REPT 8 |
| 623 | savelij | 121 | LDI |
| 1026 | savelij | 122 | ENDM |
| 665 | savelij | 123 | LD HL,EXIT_RST30 |
| 1026 | savelij | 124 | PUSH HL ; 襭 |
| 623 | savelij | 125 | LD HL,W_DATA |
| 126 | ADD A,A |
||
| 127 | ADD A,L |
||
| 128 | LD L,A |
||
| 129 | LD A,(HL) |
||
| 130 | INC L |
||
| 131 | LD H,(HL) |
||
| 132 | LD L,A |
||
| 133 | JP (HL) |
||
| 134 | |||
| 678 | savelij | 135 | EXIT_RST30 LD HL,REG_IF |
| 623 | savelij | 136 | LD DE,(DOS_STEK) |
| 1026 | savelij | 137 | REPT 8 |
| 623 | savelij | 138 | LDI |
| 1026 | savelij | 139 | ENDM |
| 623 | savelij | 140 | POP DE |
| 141 | POP HL |
||
| 142 | LD SP,(DOS_STEK) |
||
| 143 | LD A,(HL) |
||
| 144 | INC HL |
||
| 1026 | savelij | 145 | CP LOW ((EW_DATA-W_DATA) / 2) |
| 665 | savelij | 146 | JR C,EXIT_RST302 |
| 1026 | savelij | 147 | LD HL,FOR_RET ; 室 맮 |
| 665 | savelij | 148 | EXIT_RST302 PUSH HL |
| 764 | savelij | 149 | LD HL,(COPY_VIRT_BITS) |
| 150 | LD A,(MASK_MNT_DRV) |
||
| 678 | savelij | 151 | AND L |
| 1026 | savelij | 152 | LD A,ROM_ADD_BAS48 | 0x80 ; ࠭ 3D2F |
| 153 | JR NZ,EXIT_RST305 ; 롮 ROM 3D2F ਬ |
||
| 154 | LD HL,(VIRT_DRIVE) ; ઠ ࠬ᪠ |
||
| 835 | savelij | 155 | LD A,(MASK_WRK_DRV) |
| 832 | savelij | 156 | CP L |
| 1026 | savelij | 157 | LD A,ROM_ADD_BAS48 | 0x80 ; ࠭ 3D2F |
| 832 | savelij | 158 | JR Z,EXIT_RST305 |
| 1026 | savelij | 159 | LD A,ROM_BAS48 | 0x80 ; ࠭ 3D13 |
| 678 | savelij | 160 | EXIT_RST305 LD HL,(WR_BF) |
| 161 | LD BC,WIN_A0 |
||
| 162 | EXIT_RST303 CALL WR_BYTE_RET |
||
| 665 | savelij | 163 | LD A,L |
| 623 | savelij | 164 | POP HL |
| 165 | OUT (PEVO_CONF),A |
||
| 166 | POP AF |
||
| 665 | savelij | 167 | JP PO,EXIT_RST304 |
| 623 | savelij | 168 | EI |
| 678 | savelij | 169 | EXIT_RST304 POP BC |
| 623 | savelij | 170 | POP AF |
| 171 | EX (SP),HL |
||
| 172 | RET |
||
| 173 | |||
| 1026 | savelij | 174 | ; "A" 0x1F |
| 623 | savelij | 175 | W_OUT1F LD A,(REG_A) |
| 627 | savelij | 176 | LD (WR_1F),A |
| 1026 | savelij | 177 | AND %11110000 |
| 178 | RRCA |
||
| 179 | RRCA |
||
| 180 | RRCA |
||
| 181 | ADD A,LOW (.TABL_CMD) |
||
| 182 | LD L,A |
||
| 183 | ADC A,HIGH (.TABL_CMD) |
||
| 184 | SUB L |
||
| 185 | LD H,A |
||
| 186 | LD A,(HL) |
||
| 187 | INC HL |
||
| 188 | LD H,(HL) |
||
| 189 | LD L,A |
||
| 190 | JP (HL) |
||
| 191 | |||
| 192 | .TABL_CMD DW .CMD_00 |
||
| 193 | DW .CMD_10 |
||
| 194 | DW .CMD_20 |
||
| 195 | DW .CMD_30 |
||
| 196 | DW .CMD_40 |
||
| 197 | DW .CMD_50 |
||
| 198 | DW .CMD_60 |
||
| 199 | DW .CMD_70 |
||
| 200 | DW .CMD_80 |
||
| 201 | DW .CMD_90 |
||
| 202 | DW .CMD_A0 |
||
| 203 | DW .CMD_B0 |
||
| 204 | DW .CMD_C0 |
||
| 205 | DW .CMD_D0 |
||
| 206 | DW .CMD_E0 |
||
| 207 | DW .CMD_F0 |
||
| 208 | |||
| 209 | ; 00-0F ⠭ |
||
| 210 | .CMD_00 XOR A |
||
| 678 | savelij | 211 | LD (PORT_3F),A |
| 832 | savelij | 212 | LD (PORT_5F),A |
| 1026 | savelij | 213 | OUT (0x3F),A |
| 214 | OUT (0x5F),A |
||
| 215 | JR .INFF_BIT6 |
||
| 623 | savelij | 216 | |
| 1026 | savelij | 217 | ; 10-1F ᪠ |
| 218 | .CMD_10 LD A,(PORT_7F) |
||
| 678 | savelij | 219 | LD (PORT_3F),A |
| 1026 | savelij | 220 | OUT (0x3F),A |
| 623 | savelij | 221 | CALL DISK_NONE |
| 1026 | savelij | 222 | LD A,0x80 |
| 223 | JR C,.INFF_BIT61 |
||
| 224 | .INFF_BIT6 XOR A |
||
| 225 | .INFF_BIT61 LD (RD_1F),A |
||
| 226 | LD A,0xBF |
||
| 623 | savelij | 227 | LD (RD_FF),A |
| 228 | RET |
||
| 229 | |||
| 1026 | savelij | 230 | ; 20-3F 蠣 ।饬 ࠢ |
| 231 | .CMD_20 |
||
| 232 | .CMD_30 LD A,(PORT_3F) |
||
| 233 | .NAPRAVL NOP |
||
| 678 | savelij | 234 | LD (PORT_3F),A |
| 1026 | savelij | 235 | OUT (0x3F),A |
| 236 | JR .INFF_BIT6 |
||
| 623 | savelij | 237 | |
| 1026 | savelij | 238 | ; 40-5F 蠣 । |
| 239 | .CMD_40 |
||
| 240 | .CMD_50 LD A,(PORT_3F) |
||
| 623 | savelij | 241 | INC A |
| 678 | savelij | 242 | LD (PORT_3F),A |
| 1026 | savelij | 243 | OUT (0x3F),A |
| 244 | LD A,0x3C ; INC A |
||
| 245 | LD (.NAPRAVL),A |
||
| 246 | JR .INFF_BIT6 |
||
| 623 | savelij | 247 | |
| 1026 | savelij | 248 | ; 60-7F 蠣 |
| 249 | .CMD_60 |
||
| 250 | .CMD_70 LD A,(PORT_3F) |
||
| 623 | savelij | 251 | DEC A |
| 678 | savelij | 252 | LD (PORT_3F),A |
| 1026 | savelij | 253 | OUT (0x3F),A |
| 254 | LD A,0x3D ; DEC A |
||
| 255 | LD (.NAPRAVL),A |
||
| 256 | ; JR .INFF_BIT6 |
||
| 623 | savelij | 257 | |
| 1026 | savelij | 258 | ; 80-9F ⥭ ᥪ |
| 259 | .CMD_80 |
||
| 260 | .CMD_90 |
||
| 261 | ; JR .INFF_BIT6 |
||
| 623 | savelij | 262 | |
| 1026 | savelij | 263 | ; A0-BF ᥪ |
| 264 | .CMD_A0 |
||
| 265 | .CMD_B0 JR .INFF_BIT6 |
||
| 623 | savelij | 266 | |
| 1026 | savelij | 267 | .INFF_BIT7 XOR A |
| 623 | savelij | 268 | LD (RD_1F),A |
| 1026 | savelij | 269 | LD A,0x7F |
| 623 | savelij | 270 | LD (RD_FF),A |
| 271 | RET |
||
| 272 | |||
| 1026 | savelij | 273 | ; C0-CF ⥭ |
| 274 | .CMD_C0 JR .INFF_BIT6 |
||
| 623 | savelij | 275 | |
| 1026 | savelij | 276 | ; D0-DF ਭ㤨⥫쭮 뢠 |
| 277 | .CMD_D0 LD A,0xBF |
||
| 623 | savelij | 278 | LD (RD_FF),A |
| 279 | RET |
||
| 280 | |||
| 1026 | savelij | 281 | ; E0-EF ⥭ |
| 282 | .CMD_E0 |
||
| 283 | .CMD_F0 JR .INFF_BIT6 |
||
| 623 | savelij | 284 | |
| 1026 | savelij | 285 | ; "A" 0x3F |
| 623 | savelij | 286 | W_OUT3F LD A,(REG_A) |
| 678 | savelij | 287 | LD (PORT_3F),A |
| 1026 | savelij | 288 | OUT (0x3F),A |
| 623 | savelij | 289 | RET |
| 689 | savelij | 290 | |
| 1026 | savelij | 291 | ; "A" 0x5F |
| 623 | savelij | 292 | W_OUT5F LD A,(REG_A) |
| 678 | savelij | 293 | LD (PORT_5F),A |
| 1026 | savelij | 294 | OUT (0x5F),A |
| 623 | savelij | 295 | RET |
| 689 | savelij | 296 | |
| 1026 | savelij | 297 | ; "A" 0x7F |
| 623 | savelij | 298 | W_OUT7F LD A,(REG_A) |
| 678 | savelij | 299 | LD (PORT_7F),A |
| 1026 | savelij | 300 | OUT (0x7F),A |
| 623 | savelij | 301 | RET |
| 302 | |||
| 1026 | savelij | 303 | ; "A" 0xFF |
| 623 | savelij | 304 | W_OUTFF LD A,(REG_A) |
| 678 | savelij | 305 | LD (WR_FF),A |
| 1026 | savelij | 306 | OUT (0xFF),A |
| 623 | savelij | 307 | AND 3 |
| 1026 | savelij | 308 | LD (MASK_WRK_DRV),A ; |
| 623 | savelij | 309 | INC A |
| 310 | LD B,A |
||
| 1026 | savelij | 311 | LD A,%10000000 |
| 835 | savelij | 312 | .L1 RLCA |
| 313 | DJNZ .L1 |
||
| 1026 | savelij | 314 | LD (MASK_MNT_DRV),A ; ᪠ ᬮ |
| 623 | savelij | 315 | RET |
| 316 | |||
| 1026 | savelij | 317 | ; "A" (C) |
| 623 | savelij | 318 | W_OUTCA LD A,(REG_A) |
| 319 | W_OUTCA1 LD D,A |
||
| 1026 | savelij | 320 | LD BC,(REG_C) ; TR-DOS |
| 678 | savelij | 321 | LD A,C |
| 1026 | savelij | 322 | ; । |
| 323 | CP 0x1F |
||
| 623 | savelij | 324 | JP Z,W_OUT1F |
| 1026 | savelij | 325 | CP 0x3F |
| 623 | savelij | 326 | JR Z,W_OUT3F |
| 1026 | savelij | 327 | CP 0x5F |
| 623 | savelij | 328 | JR Z,W_OUT5F |
| 1026 | savelij | 329 | CP 0x7F |
| 623 | savelij | 330 | JR Z,W_OUT7F |
| 1026 | savelij | 331 | CP 0xFF |
| 623 | savelij | 332 | JR Z,W_OUTFF |
| 665 | savelij | 333 | CP LOW (WIN_A0) |
| 334 | JR Z,W_OUTCA3 |
||
| 335 | W_OUTCA4 OUT (C),D |
||
| 623 | savelij | 336 | RET |
| 337 | |||
| 1026 | savelij | 338 | ; ATM/PENTEVO |
| 678 | savelij | 339 | W_OUTCA3 LD A,B |
| 340 | LD HL,BB_CPU1 |
||
| 665 | savelij | 341 | CP HIGH (WIN_A1) |
| 342 | JR Z,W_OUTCA2 |
||
| 343 | CP HIGH (WIN_P2) |
||
| 344 | JR Z,W_OUTCA2 |
||
| 345 | LD HL,BB_CPU2 |
||
| 346 | CP HIGH (WIN_A2) |
||
| 347 | JR Z,W_OUTCA2 |
||
| 348 | CP HIGH (WIN_P2) |
||
| 349 | JR NZ,W_OUTCA4 |
||
| 678 | savelij | 350 | W_OUTCA2 LD E,B |
| 351 | PUSH DE |
||
| 352 | PUSH HL |
||
| 353 | CALL READ_WCPU12 |
||
| 354 | POP HL |
||
| 355 | POP DE |
||
| 356 | LD (HL),D |
||
| 665 | savelij | 357 | INC HL |
| 678 | savelij | 358 | LD (HL),E |
| 359 | JP WRITE_WCPU12 |
||
| 665 | savelij | 360 | |
| 1026 | savelij | 361 | ; "D" (C) |
| 623 | savelij | 362 | W_OUTCD LD A,(IREG_D) |
| 363 | JR W_OUTCA1 |
||
| 689 | savelij | 364 | |
| 1026 | savelij | 365 | ; । , OUTI |
| 623 | savelij | 366 | W_OUTI LD HL,(BUFF_SECT) |
| 367 | EXX |
||
| 368 | LD A,(HL) |
||
| 369 | INC HL |
||
| 370 | EXX |
||
| 371 | LD (HL),A |
||
| 372 | INC HL |
||
| 373 | LD (BUFF_SECT),HL |
||
| 374 | RET |
||
| 375 | |||
| 1026 | savelij | 376 | ; ⥭ 0x1F |
| 623 | savelij | 377 | W_IN1F LD A,(WR_1F) |
| 1026 | savelij | 378 | AND %11110000 |
| 379 | CP 0x10 |
||
| 380 | JR C,.L1 |
||
| 381 | CP 0x20 |
||
| 382 | JR C,.L3 |
||
| 383 | CP 0x80 |
||
| 384 | JR C,.L5 |
||
| 385 | CP 0xD0 |
||
| 386 | JR Z,.L1 |
||
| 623 | savelij | 387 | XOR A |
| 1026 | savelij | 388 | JR .L2 |
| 623 | savelij | 389 | |
| 1026 | savelij | 390 | .L5 LD A,(PORT_3F) |
| 391 | AND A |
||
| 392 | JR NZ,.L1 |
||
| 393 | LD A,%00100100 |
||
| 1027 | savelij | 394 | JR .L6 |
| 1026 | savelij | 395 | |
| 396 | .L3 LD A,(.INDEX) |
||
| 631 | savelij | 397 | XOR %00000100 |
| 1026 | savelij | 398 | JR .L4 |
| 631 | savelij | 399 | |
| 1026 | savelij | 400 | .L1 LD A,0x24 |
| 401 | .INDEX EQU $-1 |
||
| 402 | .L4 XOR %00000010 |
||
| 1027 | savelij | 403 | .L6 LD (.INDEX),A |
| 1026 | savelij | 404 | .L2 LD (RD_1F),A |
| 623 | savelij | 405 | LD (REG_A),A |
| 406 | RET |
||
| 407 | |||
| 1026 | savelij | 408 | ; ⥭ 0x3F |
| 678 | savelij | 409 | W_IN3F LD A,(PORT_3F) |
| 623 | savelij | 410 | LD (REG_A),A |
| 411 | RET |
||
| 689 | savelij | 412 | |
| 1026 | savelij | 413 | ; ⥭ 0x5F |
| 678 | savelij | 414 | W_IN5F LD A,(PORT_5F) |
| 623 | savelij | 415 | LD (REG_A),A |
| 416 | RET |
||
| 417 | |||
| 1026 | savelij | 418 | ; ⥭ 0x7F |
| 678 | savelij | 419 | W_IN7F LD A,(PORT_7F) |
| 623 | savelij | 420 | LD (REG_A),A |
| 421 | RET |
||
| 422 | |||
| 1026 | savelij | 423 | ; ⥭ 0xFF |
| 623 | savelij | 424 | W_INFF LD A,(RD_FF) |
| 425 | LD (REG_A),A |
||
| 426 | RET |
||
| 427 | |||
| 1026 | savelij | 428 | ; ⥭ "H" () |
| 623 | savelij | 429 | W_INHC LD A,(REG_C) |
| 1026 | savelij | 430 | ; । ⥭ |
| 431 | W_INHC1 CP 0x1F |
||
| 623 | savelij | 432 | JR NZ,W_INHC2 |
| 433 | LD A,(RD_1F) |
||
| 434 | LD (REG_H),A |
||
| 435 | RET |
||
| 436 | |||
| 1026 | savelij | 437 | W_INHC2 CP 0x3F |
| 623 | savelij | 438 | JR NZ,W_INHC3 |
| 678 | savelij | 439 | LD A,(PORT_3F) |
| 623 | savelij | 440 | LD (REG_H),A |
| 441 | RET |
||
| 442 | |||
| 1026 | savelij | 443 | W_INHC3 CP 0x5F |
| 623 | savelij | 444 | JR NZ,W_INHC4 |
| 678 | savelij | 445 | LD A,(PORT_5F) |
| 623 | savelij | 446 | LD (REG_H),A |
| 447 | RET |
||
| 448 | |||
| 1026 | savelij | 449 | W_INHC4 CP 0x7F |
| 623 | savelij | 450 | JR NZ,W_INHC5 |
| 678 | savelij | 451 | LD A,(PORT_7F) |
| 623 | savelij | 452 | LD (REG_H),A |
| 453 | RET |
||
| 454 | |||
| 1026 | savelij | 455 | W_INHC5 CP 0xFF |
| 623 | savelij | 456 | JR NZ,W_INHC6 |
| 457 | LD A,(WR_FF) |
||
| 458 | LD (REG_H),A |
||
| 459 | RET |
||
| 460 | |||
| 461 | W_INHC6 LD BC,(REG_C) |
||
| 462 | IN A,(C) |
||
| 463 | LD (REG_H),A |
||
| 464 | RET |
||
| 465 | |||
| 1026 | savelij | 466 | ; ⥭ INI |
| 623 | savelij | 467 | W_INI LD A,(RD_1F) |
| 468 | LD HL,(REG_L) |
||
| 469 | LD (HL),A |
||
| 470 | INC HL |
||
| 471 | DEC B |
||
| 472 | LD (REG_L),HL |
||
| 473 | RET |
||
| 474 | |||
| 689 | savelij | 475 | ;[ ] |
| 623 | savelij | 476 | READ_SEC_ LD A,(WR_1F) |
| 1026 | savelij | 477 | AND 0x0F0 |
| 478 | CP 0x80 |
||
| 479 | JP C,W_OUT1F.INFF_BIT6 |
||
| 480 | CP 0xC0 |
||
| 623 | savelij | 481 | JR NZ,READ_SEC_1 |
| 678 | savelij | 482 | LD A,(PORT_3F) |
| 623 | savelij | 483 | LD HL,(REG_L) |
| 484 | LD (HL),A |
||
| 485 | INC HL |
||
| 486 | DEC B |
||
| 678 | savelij | 487 | LD A,(PORT_5F) |
| 623 | savelij | 488 | LD (HL),A |
| 489 | INC HL |
||
| 490 | DEC B |
||
| 491 | LD (REG_L),HL |
||
| 492 | RET |
||
| 493 | |||
| 1026 | savelij | 494 | ; ⥭/ ᥪ |
| 495 | ; IXL = 0 - ⥭, = FF - |
||
| 689 | savelij | 496 | READ_WRITE_SEC PUSH IX |
| 497 | JR WRITE_SEC_1 |
||
| 498 | |||
| 1026 | savelij | 499 | ; ⥭ ᥪ |
| 623 | savelij | 500 | READ_SEC_1 PUSH IX |
| 501 | LD IXL,0 |
||
| 502 | JR WRITE_SEC_1 |
||
| 503 | |||
| 1026 | savelij | 504 | ; ᥪ |
| 623 | savelij | 505 | WRITE_SEC_ PUSH IX |
| 1026 | savelij | 506 | LD IXL,0xFF |
| 678 | savelij | 507 | WRITE_SEC_1 CALL READ_WCPU12 |
| 508 | CALL W_WR_RD_SECT |
||
| 1026 | savelij | 509 | LD IX,0x8090 |
| 510 | LD (REG_F),IX ; 䫠 ᯥ譮 ⥭/ ᥪ |
||
| 678 | savelij | 511 | CALL WRITE_WCPU12 |
| 623 | savelij | 512 | POP IX |
| 513 | RET |
||
| 514 | |||
| 1026 | savelij | 515 | FIND_SECTOR LD BC,WIN_A1 |
| 516 | LD A,0x40 |
||
| 665 | savelij | 517 | OUT (C),A |
| 518 | LD B,HIGH (WIN_P1) |
||
| 736 | savelij | 519 | LD A,RAM_RAMDISK |
| 1026 | savelij | 520 | OUT (C),A ; ࠭ ࠬ᪠ |
| 521 | LD A,(PORT_3F) ; ४ |
||
| 522 | ADD A,A ; 2 |
||
| 623 | savelij | 523 | LD C,A |
| 524 | LD A,(WR_FF) |
||
| 1026 | savelij | 525 | AND 0x10 ; ઠ ᪠ |
| 526 | JR NZ,.L1 |
||
| 527 | INC C ; 1 |
||
| 528 | .L1 LD B,HIGH (CPU1) + 2 ; 砫 ᥪ |
||
| 529 | LD A,(PORT_5F) ; ᥪ |
||
| 623 | savelij | 530 | LD L,A |
| 531 | LD H,0 |
||
| 1026 | savelij | 532 | .L3 LD A,(BC) |
| 533 | LD D,A ; ᥪ |
||
| 623 | savelij | 534 | INC B |
| 535 | LD A,(BC) |
||
| 1026 | savelij | 536 | LD E,A ; ࠧ ᥪ |
| 623 | savelij | 537 | INC B |
| 1026 | savelij | 538 | LD A,D |
| 539 | AND A |
||
| 540 | SCF |
||
| 541 | RET Z |
||
| 623 | savelij | 542 | LD A,L |
| 543 | CP D |
||
| 1026 | savelij | 544 | RET Z |
| 623 | savelij | 545 | LD A,E |
| 546 | ADD A,H |
||
| 547 | LD H,A |
||
| 1026 | savelij | 548 | JR .L3 |
| 623 | savelij | 549 | |
| 1026 | savelij | 550 | ; ⥭ ᥪ ࠬ᪠ |
| 551 | W_WR_RD_SECT LD A,(WR_FF) |
||
| 552 | AND 3 |
||
| 553 | INC A |
||
| 554 | LD B,A |
||
| 555 | LD A,%10000000 |
||
| 556 | .L1 RLCA |
||
| 557 | DJNZ .L1 |
||
| 558 | LD B,A |
||
| 559 | LD A,(COPY_VIRT_BITS) |
||
| 560 | AND B |
||
| 561 | JP NZ,WR_RD_SEC_M ; ࠡ ਬ ࠧ |
||
| 562 | CALL FIND_SECTOR |
||
| 563 | JR NC,.L2 |
||
| 564 | ; ᥪ , 室 |
||
| 565 | LD A,0x10 ; ⠭ 訡 ᥪ |
||
| 566 | JP W_IN1F.L2 |
||
| 567 | |||
| 568 | .L2 LD A,E |
||
| 623 | savelij | 569 | RRCA |
| 1026 | savelij | 570 | LD (PORT_7F),A ; ࠧ ᥪ |
| 623 | savelij | 571 | LD L,0 |
| 572 | LD E,L |
||
| 573 | SRL H |
||
| 1026 | savelij | 574 | RR L ; HL = ᬥ饭 ᥪ |
| 678 | savelij | 575 | LD B,HIGH (CPU1) |
| 623 | savelij | 576 | LD A,(BC) |
| 577 | LD D,A |
||
| 1026 | savelij | 578 | ADD HL,DE ; HL = ᬥ饭 砫 ࠭ |
| 623 | savelij | 579 | INC B |
| 580 | LD A,(BC) |
||
| 1026 | savelij | 581 | LD C,A ; ᬥ饭 ࠭ 砫 ࠬ᪠ |
| 623 | savelij | 582 | LD A,H |
| 678 | savelij | 583 | CP HIGH (CPU1) |
| 1026 | savelij | 584 | JR C,.L5 |
| 585 | SUB 0x40 |
||
| 623 | savelij | 586 | LD H,A |
| 587 | INC C |
||
| 1026 | savelij | 588 | ; HL = ᬥ饭 ࠭ 砫 ᥪ |
| 589 | .L5 LD A,C ; ᬥ饭 ࠭, 㪠 ᥪ 稭 |
||
| 590 | ADD A,RAM_DATARAMD ; ਡ 砫 ࠬ +1. 0 ࠭ ࠬ᪠ ⥫ ᥪ |
||
| 591 | LD IXH,A ; ࠭ ࠭ |
||
| 665 | savelij | 592 | LD DE,(REG_L) |
| 593 | LD BC,(BB_CPU1) |
||
| 594 | LD A,C |
||
| 595 | LD C,LOW (WIN_A0) |
||
| 1026 | savelij | 596 | OUT (C),A ; 㫨 ⠭ 5 ࠭ |
| 597 | .S9 LD A,D ; ઠ ࠭ 㤠/㤠 |
||
| 678 | savelij | 598 | CP HIGH (CPU2) |
| 665 | savelij | 599 | PUSH DE |
| 600 | LD DE,CPU1+HIGH (WIN_P1) |
||
| 1026 | savelij | 601 | LD BC,WIN_A1 ; 孨 32 , 㦭 1 |
| 602 | JR NC,.S1 |
||
| 665 | savelij | 603 | LD DE,CPU2+HIGH (WIN_P2) |
| 1026 | savelij | 604 | LD B,HIGH (WIN_A2) ; 32 , 㦭 2 |
| 605 | .S1 LD A,0x40 |
||
| 665 | savelij | 606 | OUT (C),A |
| 607 | LD B,E |
||
| 1026 | savelij | 608 | LD A,IXH ; ࠭ |
| 609 | OUT (C),A ; 稫 ࠭ |
||
| 610 | LD B,D ; 訩 砫 祭 ࠭ |
||
| 665 | savelij | 611 | POP DE |
| 612 | LD A,B |
||
| 623 | savelij | 613 | ADD A,H |
| 614 | LD H,A |
||
| 615 | LD A,IXL |
||
| 616 | AND A |
||
| 1026 | savelij | 617 | JR NZ,.I1 |
| 623 | savelij | 618 | LD A,D |
| 619 | INC A |
||
| 1026 | savelij | 620 | JR NZ,.I1 |
| 623 | savelij | 621 | LD A,E |
| 622 | AND A |
||
| 1026 | savelij | 623 | JR Z,.I1 |
| 624 | NEG |
||
| 623 | savelij | 625 | LD C,A |
| 626 | LD B,0 |
||
| 627 | LDIR |
||
| 628 | NEG |
||
| 629 | LD C,A |
||
| 1026 | savelij | 630 | .I2 EX DE,HL |
| 623 | savelij | 631 | ADD HL,BC |
| 632 | EX DE,HL |
||
| 633 | ADD HL,BC |
||
| 678 | savelij | 634 | LD A,(PORT_7F) |
| 1026 | savelij | 635 | JP .S8_ |
| 623 | savelij | 636 | |
| 1026 | savelij | 637 | .I1 LD A,D |
| 678 | savelij | 638 | CP HIGH (CPU1) |
| 1026 | savelij | 639 | JR NC,.I3 |
| 678 | savelij | 640 | LD A,(PORT_7F) |
| 623 | savelij | 641 | AND A |
| 1026 | savelij | 642 | LD BC,0x80 |
| 643 | JR Z,.I2 |
||
| 644 | LD BC,0x100 |
||
| 645 | JR .I2 |
||
| 623 | savelij | 646 | |
| 1026 | savelij | 647 | .I3 CP HIGH (CPU2) ; ઠ 室 ࠭ ࠭ |
| 648 | JP NC,.S3 ; ࠧ 㥬 |
||
| 678 | savelij | 649 | CP HIGH (CPU2)-1 |
| 1026 | savelij | 650 | JP C,.S3 ; ⠪ ࠧ 㥬 |
| 623 | savelij | 651 | LD A,E |
| 1026 | savelij | 652 | AND A ; ᥪ 㪫뢥 ࠭, ࠧ 㥬 |
| 653 | JR Z,.S3 ; ਭ㤨⥫쭮 㥬 ਥ |
||
| 654 | LD A,IXL ; ⥭ ? |
||
| 623 | savelij | 655 | AND A |
| 1026 | savelij | 656 | LD A,E ; 訩 |
| 657 | JR Z,.S4 |
||
| 658 | EX DE,HL ; 塞 ࠢ |
||
| 659 | .S4 NEG |
||
| 660 | LD C,A ; 㥬 ⮪ |
||
| 623 | savelij | 661 | LD B,0 |
| 662 | LDIR |
||
| 663 | NEG |
||
| 1026 | savelij | 664 | PUSH AF ; ⠫ 쪮 ⠫ 砫 饣 |
| 665 | savelij | 665 | LD BC,(BB_CPU2) |
| 666 | LD A,C |
||
| 667 | LD C,LOW (WIN_A0) |
||
| 668 | OUT (C),A |
||
| 669 | LD B,HIGH (WIN_A1) |
||
| 1026 | savelij | 670 | LD A,0x40 |
| 665 | savelij | 671 | OUT (C),A |
| 623 | savelij | 672 | LD B,HIGH (WIN_P1) |
| 673 | LD A,IXH |
||
| 1026 | savelij | 674 | OUT (C),A ; ࠭ 砥 1 |
| 675 | LD A,IXL ; ⥭ |
||
| 623 | savelij | 676 | AND A |
| 1026 | savelij | 677 | JR Z,.S5 |
| 678 | LD A,D ; |
||
| 679 | SUB 0x40 ; 㤠 㣮 |
||
| 623 | savelij | 680 | LD D,A |
| 1026 | savelij | 681 | JR .S6 |
| 623 | savelij | 682 | |
| 1026 | savelij | 683 | .S5 LD A,H ; ⥭ |
| 684 | SUB 0x40 ; 㤠 㣮 |
||
| 623 | savelij | 685 | LD H,A |
| 1026 | savelij | 686 | .S6 POP AF |
| 687 | LD C,A ; 쪮 ⠫ |
||
| 623 | savelij | 688 | LD B,0 |
| 689 | LDIR |
||
| 678 | savelij | 690 | LD A,(PORT_7F) |
| 1026 | savelij | 691 | JR .S8_ |
| 623 | savelij | 692 | |
| 1026 | savelij | 693 | .S3 LD A,IXL ; ⥭ |
| 623 | savelij | 694 | AND A |
| 1026 | savelij | 695 | JR Z,.S7 |
| 696 | EX DE,HL ; 塞 ࠢ |
||
| 697 | .S7 LD A,(PORT_7F) |
||
| 623 | savelij | 698 | AND A |
| 1026 | savelij | 699 | JR NZ,.S8 |
| 700 | CALL COPYHBLOCK ; ᥪ ࠧ 128 㥬 室 |
||
| 701 | .ECOPY_BLOCK LD A,IXL |
||
| 623 | savelij | 702 | AND A |
| 1026 | savelij | 703 | JR Z,.ECOPY_BLOCK1 |
| 623 | savelij | 704 | EX DE,HL |
| 1026 | savelij | 705 | .ECOPY_BLOCK1 LD (REG_L),DE |
| 623 | savelij | 706 | RET |
| 707 | |||
| 1026 | savelij | 708 | .S8 CALL COPY_BLOCK ; ᥪ 256 㥬 室 |
| 709 | .S8_ DEC A |
||
| 710 | JR Z,.ECOPY_BLOCK |
||
| 678 | savelij | 711 | LD (PORT_7F),A |
| 623 | savelij | 712 | LD A,IXL |
| 713 | AND A |
||
| 1026 | savelij | 714 | JR Z,.S0 |
| 623 | savelij | 715 | EX DE,HL |
| 1026 | savelij | 716 | .S0 LD A,0x3F |
| 623 | savelij | 717 | AND H |
| 718 | LD H,A |
||
| 1026 | savelij | 719 | JP .S9 |
| 623 | savelij | 720 | |
| 721 | CP_TYPEDRIVE PUSH BC |
||
| 764 | savelij | 722 | PUSH HL |
| 1186 | savelij | 723 | LD H,CMOS.VIRT_REAL_DRIVE |
| 764 | savelij | 724 | CALL READCMOS |
| 725 | POP HL |
||
| 623 | savelij | 726 | AND 3 |
| 727 | LD B,A |
||
| 728 | LD A,(TRD_5CF6) |
||
| 729 | CP B |
||
| 730 | POP BC |
||
| 731 | RET |
||
| 732 | |||
| 1026 | savelij | 733 | ; ⠭ ६ ⥪饣 ਢ |
| 1186 | savelij | 734 | SET_DRIVENAME LD H,CMOS.VIRT_REAL_DRIVE |
| 623 | savelij | 735 | CALL READCMOS |
| 736 | RRCA |
||
| 737 | RRCA |
||
| 738 | AND 3 |
||
| 739 | LD (TRD_5D19),A |
||
| 740 | LD (TRD_5CF6),A |
||
| 1026 | savelij | 741 | OR 0x3C |
| 678 | savelij | 742 | LD (TRD_5D16),A |
| 623 | savelij | 743 | RET |
| 744 | |||
| 1026 | savelij | 745 | ; ଠ ram ᪠ |
| 623 | savelij | 746 | FORMAT_RAM LD A,(TRD_5CF6) |
| 747 | LD B,A |
||
| 748 | INC B |
||
| 831 | savelij | 749 | LD A,%00001000 |
| 623 | savelij | 750 | RLCA |
| 751 | DJNZ $-1 |
||
| 752 | LD B,A |
||
| 806 | savelij | 753 | ; LD A,(COPY_VIRT_BITS) |
| 754 | RST8D _MOUNTER,_GET_VIRT_BITS |
||
| 831 | savelij | 755 | LD (COPY_VIRT_BITS),A |
| 623 | savelij | 756 | AND B |
| 1026 | savelij | 757 | JR NZ,FORMAT_RAM3 ; =1 ଠ ਬ ࠧ |
| 623 | savelij | 758 | CALL CP_TYPEDRIVE |
| 1026 | savelij | 759 | RET NZ ; 室 ଠ ५쭮 ᪠ |
| 760 | CALL CREATE_TRDTABL ; ଠ ࠬ᪠ |
||
| 623 | savelij | 761 | XOR A |
| 762 | RET |
||
| 763 | |||
| 764 | FORMAT_RAM3 LD HL,TRD_5D25 |
||
| 765 | LD DE,TRD_5D26 |
||
| 1026 | savelij | 766 | LD BC,0xFF |
| 623 | savelij | 767 | LD (HL),B |
| 768 | LDIR |
||
| 769 | LD D,B |
||
| 770 | LD E,B |
||
| 1026 | savelij | 771 | LD B,0x10 |
| 623 | savelij | 772 | FORMAT_RAM1 PUSH BC |
| 773 | PUSH DE |
||
| 774 | LD B,1 |
||
| 775 | LD HL,TRD_5D25 |
||
| 776 | CALL COM_06 |
||
| 777 | POP DE |
||
| 778 | POP BC |
||
| 779 | INC E |
||
| 780 | DJNZ FORMAT_RAM1 |
||
| 781 | XOR A |
||
| 782 | RET |
||
| 783 | |||
| 1026 | savelij | 784 | ; ઠ થ ࠬ᪠ |
| 678 | savelij | 785 | CMP_RAM_DISK CALL READ_WCPU12 |
| 786 | LD BC,WIN_P1 |
||
| 736 | savelij | 787 | LD A,RAM_RAMDISK |
| 623 | savelij | 788 | OUT (C),A |
| 1026 | savelij | 789 | LD HL,CPU1+0x3FFF |
| 623 | savelij | 790 | LD D,(HL) |
| 791 | DEC H |
||
| 1026 | savelij | 792 | LD E,(HL) ; ન થ |
| 678 | savelij | 793 | CALL WRITE_WCPU12 |
| 794 | LD HL,"RD" |
||
| 795 | AND A |
||
| 623 | savelij | 796 | SBC HL,DE |
| 1026 | savelij | 797 | RET Z ; થ , ࠬ ᮧ |
| 798 | ; ᮧ ⮣ ࠬ᪠ |
||
| 678 | savelij | 799 | CREATE_TRDTABL LD BC,WIN_P1 |
| 1026 | savelij | 800 | LD A,RAM_RAMDISK ; 㦭 ࠭ 砫 ࠬ᪠, 㤥 ⠡ ⥫ |
| 678 | savelij | 801 | OUT (C),A |
| 802 | LD HL,CPU1 |
||
| 623 | savelij | 803 | PUSH HL |
| 678 | savelij | 804 | LD DE,CPU1+1 |
| 1026 | savelij | 805 | LD BC,0x3FFF |
| 623 | savelij | 806 | LD (HL),L |
| 1026 | savelij | 807 | LDIR ; ⨫ ࠭ |
| 808 | POP DE ; 砫 |
||
| 809 | LD HL,0 ; ᬥ饭 ࠭ |
||
| 810 | LD A,0xA0 |
||
| 702 | savelij | 811 | ELT2 PUSH AF |
| 1026 | savelij | 812 | LD BC,0x1000 ; 稪 ᥪ |
| 623 | savelij | 813 | LD A,L |
| 814 | RRCA |
||
| 815 | RRCA |
||
| 1026 | savelij | 816 | LD (DE),A ; ᬥ饭 ࠭ |
| 623 | savelij | 817 | INC D |
| 818 | LD A,H |
||
| 1026 | savelij | 819 | LD (DE),A ; ᬥ饭 ࠭ |
| 623 | savelij | 820 | INC D |
| 821 | ELT1 INC C |
||
| 822 | LD A,C |
||
| 1026 | savelij | 823 | LD (DE),A ; ᥪ |
| 623 | savelij | 824 | INC D |
| 825 | LD A,2 |
||
| 1026 | savelij | 826 | LD (DE),A ; ࠧ ᥪ |
| 623 | savelij | 827 | INC D |
| 1026 | savelij | 828 | DJNZ ELT1 ; ᨬ ⠡ ᥪ ࠧࠬ |
| 829 | LD D,HIGH (CPU1) ; 㫨 㪠⥫ 砫 |
||
| 830 | INC E ; 饩 |
||
| 831 | LD BC,0x40 |
||
| 832 | ADD HL,BC ; 室 饩 |
||
| 702 | savelij | 833 | POP AF |
| 623 | savelij | 834 | DEC A |
| 1026 | savelij | 835 | JR NZ,ELT2 ; 塞 |
| 836 | LD HL,CPU1+0x3FFF |
||
| 837 | LD (HL),"R" ; ᨬ થ ࠬ᪠ |
||
| 623 | savelij | 838 | DEC H |
| 839 | LD (HL),"D" |
||
| 678 | savelij | 840 | LD BC,WIN_P1 |
| 736 | savelij | 841 | LD A,RAM_DATARAMD |
| 678 | savelij | 842 | OUT (C),A |
| 843 | LD HL,CPU1 |
||
| 844 | LD DE,CPU1+1 |
||
| 1026 | savelij | 845 | LD BC,0x0FFF |
| 623 | savelij | 846 | LD (HL),L |
| 847 | LDIR |
||
| 848 | LD HL,DSKINFO |
||
| 1026 | savelij | 849 | LD DE,CPU1+0x8E1 |
| 623 | savelij | 850 | LD BC,DSK_END-DSKINFO |
| 851 | LDIR |
||
| 806 | savelij | 852 | LD BC,WIN_A1 |
| 1026 | savelij | 853 | LD A,0x7A |
| 806 | savelij | 854 | OUT (C),A |
| 855 | RET |
||
| 856 | |||
| 1026 | savelij | 857 | ; ⠭ 䨣樨 1,2 |
| 678 | savelij | 858 | WRITE_WCPU12 LD BC,(BB_CPU1) |
| 859 | LD A,C |
||
| 860 | LD C,LOW (WIN_A0) |
||
| 623 | savelij | 861 | OUT (C),A |
| 678 | savelij | 862 | LD BC,(BB_CPU2) |
| 863 | LD A,C |
||
| 864 | LD C,LOW (WIN_A0) |
||
| 865 | OUT (C),A |
||
| 866 | RET |
||
| 867 | |||
| 1026 | savelij | 868 | ; ⥭ 䨣樨 1,2 |
| 678 | savelij | 869 | READ_WCPU12 LD BC,RD_RAMNROM |
| 1026 | savelij | 870 | IN L,(C) ; RAM & ROM |
| 678 | savelij | 871 | INC B |
| 1026 | savelij | 872 | IN H,(C) ; DOS & 7FFD |
| 678 | savelij | 873 | ADD HL,HL |
| 874 | LD B,HIGH (RD_1WINA1) |
||
| 875 | IN A,(C) |
||
| 1026 | savelij | 876 | CP 0xC0 |
| 678 | savelij | 877 | JR NC,RST30_01 |
| 878 | LD E,A |
||
| 879 | LD D,HIGH (WIN_P1) |
||
| 880 | JR RST30_02 |
||
| 881 | |||
| 882 | RST30_01 RLCA |
||
| 883 | RLCA |
||
| 884 | SLA L |
||
| 885 | RRA |
||
| 886 | SLA H |
||
| 887 | RRA |
||
| 888 | LD E,A |
||
| 889 | LD D,HIGH (WIN_A1) |
||
| 890 | RST30_02 LD (BB_CPU1),DE |
||
| 891 | INC B |
||
| 892 | IN A,(C) |
||
| 1026 | savelij | 893 | CP 0xC0 |
| 678 | savelij | 894 | JR NC,RST30_03 |
| 895 | LD E,A |
||
| 896 | LD D,HIGH (WIN_P2) |
||
| 897 | JR RST30_04 |
||
| 898 | |||
| 899 | RST30_03 RLCA |
||
| 900 | RLCA |
||
| 901 | SLA L |
||
| 902 | RRA |
||
| 903 | SLA H |
||
| 904 | RRA |
||
| 905 | LD E,A |
||
| 906 | LD D,HIGH (WIN_A2) |
||
| 907 | RST30_04 LD (BB_CPU2),DE |
||
| 908 | RET |
||
| 909 | |||
| 910 | DISK_NONE PUSH HL |
||
| 911 | PUSH BC |
||
| 912 | CALL READ_WCPU12 |
||
| 913 | LD BC,WIN_A1 |
||
| 1026 | savelij | 914 | LD A,0x40 |
| 678 | savelij | 915 | OUT (C),A |
| 916 | LD B,HIGH (WIN_P1) |
||
| 736 | savelij | 917 | LD A,RAM_RAMDISK |
| 678 | savelij | 918 | OUT (C),A |
| 1026 | savelij | 919 | LD HL,CPU1+0x3FFF |
| 678 | savelij | 920 | LD A,(HL) |
| 921 | DEC H |
||
| 922 | CP "R" |
||
| 923 | SCF |
||
| 924 | JR NZ,DISK_NONE1 |
||
| 925 | LD A,(HL) |
||
| 926 | CP "D" |
||
| 927 | SCF |
||
| 928 | JR NZ,DISK_NONE1 |
||
| 929 | XOR A |
||
| 930 | DISK_NONE1 PUSH AF |
||
| 931 | CALL WRITE_WCPU12 |
||
| 932 | POP AF |
||
| 623 | savelij | 933 | POP BC |
| 678 | savelij | 934 | POP HL |
| 623 | savelij | 935 | RET |