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

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

View File

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

View File

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