перевод функции READ_WRITE_RAMD на BIOS (BLK_RD_WR)

This commit is contained in:
Anatoliy Belyanskiy 2024-02-22 01:08:38 +10:00
parent 914bb82468
commit 74cf21127b
2 changed files with 26 additions and 23 deletions

View File

@ -94,14 +94,19 @@ MSD_R_W_UT:
MSD_cmd4: MSD_cmd4:
PUSH HL PUSH HL
PUSH AF ;PUSH AF ;!TEST 21/2/2024
CALL RESET_WG CALL RESET_WG
POP AF ;POP AF ;!TEST 21/2/2024
POP HL POP HL
LD B,1 LD B,1
LD DE,0 ;!TEST 21/2/2024
; LD DE,0
XOR A
LD D,A
LD E,A
MSD_cmd5: MSD_cmd5:
LD A,0 ; LD A,0
; A=0
LD (ZX_VARS.RD_WR_COM),A LD (ZX_VARS.RD_WR_COM),A
EX AF,AF' EX AF,AF'
JR MSD_RWU1 JR MSD_RWU1

View File

@ -1,5 +1,5 @@
; ;
DEFINE NEW_RAMDRV_READ 0 DEFINE NEW_RAMDRV_READ 1
DISK_REDIR: DISK_REDIR:
@ -352,9 +352,7 @@ RAMD_SYM_OK:
;*********************************************************************** ;***********************************************************************
READ_WRITE_RAMD: READ_WRITE_RAMD:
IFN NEW_RAMDRV_READ IFN NEW_RAMDRV_READ
; ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» ; ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
; º RD/WR SECTOR º\ ; º RD/WR SECTOR º\
; º HL - BUFFER º\ ; º HL - BUFFER º\
@ -365,18 +363,18 @@ READ_WRITE_RAMD:
; ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ\ ; ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ\
; \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ; \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
INC B INC B
WD_WR_RAMD_LOOP: .WD_WR_RAMD_LOOP:
DEC B DEC B
RET Z RET Z
PUSH BC PUSH BC
PUSH HL PUSH HL
CALL RD_WR_1SEC CALL .RD_WR_1SEC
POP HL POP HL
CALL RAMD_NEXT_SEC CALL .RAMD_NEXT_SEC
POP BC POP BC
JR WD_WR_RAMD_LOOP JR .WD_WR_RAMD_LOOP
RAMD_NEXT_SEC: .RAMD_NEXT_SEC:
PUSH HL PUSH HL
LD HL,ZX_VARS.CONT_SEC LD HL,ZX_VARS.CONT_SEC
LD A,16 LD A,16
@ -392,15 +390,12 @@ RAMD_NEXT_SEC:
ADD HL,BC ADD HL,BC
RET RET
RD_WR_1SEC: .RD_WR_1SEC:
LD DE,(ZX_VARS.CONT_SEC) LD DE,(ZX_VARS.CONT_SEC)
CALL PAGE_CALC2 CALL .PAGE_CALC2
DI DI
;!TEST LD A,(ZX_VARS.RD_WR_COM)
;LD A,(ZX_VARS.RD_WR_COM) AND #C0
;AND #C0
LD A,#C0
;
OUT (RGADR),A OUT (RGADR),A
LD A,H LD A,H
CP #A0 CP #A0
@ -462,9 +457,8 @@ RD_WR_1SEC:
EX AF,AF' EX AF,AF'
; RET_PAGE3 ; RET_PAGE3
JR .MOVE_RET JR .MOVE_RET
;
;********************************************** .PAGE_CALC2:
PAGE_CALC2:
LD A,D ; ”ˆ‡ˆ—…‘Šˆ… -> ‹Žƒˆ—…‘Šˆ… !!! LD A,D ; ”ˆ‡ˆ—…‘Šˆ… -> ‹Žƒˆ—…‘Šˆ… !!!
RRCA RRCA
RRCA RRCA
@ -505,6 +499,10 @@ PAGE_CALC2:
; º 0 - ç⥭¨¥, 255 - § ¯¨áì º\ ; º 0 - ç⥭¨¥, 255 - § ¯¨áì º\
; ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ\ ; ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ\
; \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ ; \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
INC B
DEC B
RET Z
;
PUSH HL PUSH HL
PUSH BC PUSH BC
;Get RAM Block ID ;Get RAM Block ID