From f8fe84be7ed5d55ac3f3e1ae4914b2823f433159 Mon Sep 17 00:00:00 2001 From: Tolik <85737314+Tolik-Trek@users.noreply.github.com> Date: Fri, 30 May 2025 16:55:55 +1000 Subject: [PATCH] ... --- Shared_Includes | 2 +- src/bios/exp/EXTENDED/IDE/ATAPI_DRV.ASM | 13 +++++++------ src/bios/exp/EXTENDED/IDE/ATA_DRV.ASM | 14 +++++++------- src/bios/exp/FUNC_RAM_ROM_DRV.ASM | 3 ++- 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/Shared_Includes b/Shared_Includes index 72b28f7..be5eed4 160000 --- a/Shared_Includes +++ b/Shared_Includes @@ -1 +1 @@ -Subproject commit 72b28f7d64cd4f263ed0e23acbe8f1eb254b1f7f +Subproject commit be5eed466fa1c0e442b828a42ffc1b9abda23ac9 diff --git a/src/bios/exp/EXTENDED/IDE/ATAPI_DRV.ASM b/src/bios/exp/EXTENDED/IDE/ATAPI_DRV.ASM index 637e810..1c209ae 100644 --- a/src/bios/exp/EXTENDED/IDE/ATAPI_DRV.ASM +++ b/src/bios/exp/EXTENDED/IDE/ATAPI_DRV.ASM @@ -176,7 +176,7 @@ ATAPI_5x_SET_PAR: ; HL:IX - Sector + Sector counter ; DE - Address + (Sector counter * Size sector) ;READ SECTOR(S) -ATAPI_5x_READ: PUSH IY +ATAPI_5x_READ: ;PUSH IY ; !FIXIT зачем? LD C,0 ; признак short EX AF,AF' IN A,(SLOT3) @@ -196,7 +196,7 @@ ATAPI_5x_READ: PUSH IY ATAPI_5x_LONG_READ: ;AND A ; - PUSH IY + ;PUSH IY ; !FIXIT зачем? LD C,1 ; признак long .main: SAFE_PORTY_2 PUSH BC @@ -288,7 +288,7 @@ RW_ATAPI_SECTORs: ; HL:IX - Sector + Sector counter ; DE - Address + (Sector counter * Size sector) ;WRITE SECTOR(S) -ATAPI_5x_WRITE: PUSH IY +ATAPI_5x_WRITE: ;PUSH IY ; !FIXIT зачем? LD C,0 ; признак short EX AF,AF' IN A,(SLOT3) @@ -308,7 +308,7 @@ ATAPI_5x_WRITE: PUSH IY ATAPI_5x_LONG_WRITE: ;AND A ; - PUSH IY + ;PUSH IY ; !FIXIT зачем? LD C,1 ; признак long .main: SAFE_PORTY_2 PUSH BC @@ -621,7 +621,7 @@ EXEC_PACKET_COMMAND: JP C,.error;_APLOOP RET Z ;====== IF DATA REQUEST ===============================================; -.data_request: IN A,(SLOT3) + IN A,(SLOT3) EX AF,AF' ;>-----------> \ ; LD A,XH @@ -1019,7 +1019,8 @@ ATAPI_CMD_PACKET: DB #00,#01,#00,#00 ; counter dword DB #00 ; -.WRITE: DB #2E,#00 +.WRITE: DB #2E,#00 ; write and verify + ;DB #2A,#00 ; write DB #00,#00,#00,#00 ; sector dword DB #00 DB #00,#01,#00,#00 ; counter dword diff --git a/src/bios/exp/EXTENDED/IDE/ATA_DRV.ASM b/src/bios/exp/EXTENDED/IDE/ATA_DRV.ASM index 102d965..b1e6dd5 100644 --- a/src/bios/exp/EXTENDED/IDE/ATA_DRV.ASM +++ b/src/bios/exp/EXTENDED/IDE/ATA_DRV.ASM @@ -162,7 +162,7 @@ ATA_5x_SET_PAR: ; HL:IX - Sector + Sector counter ; DE - Address + (Sector counter * Size sector) ;READ SECTOR(S) -ATA_5x_READ: PUSH IY +ATA_5x_READ: ;PUSH IY ; !FIXIT зачем? LD C,0 ; признак short EX AF,AF' IN A,(SLOT3) @@ -181,7 +181,7 @@ ATA_5x_READ: PUSH IY ; A' - Last mem page in RAM Block used for readed data ;LONG READ SECTOR(S) ATA_5x_LONG_READ: - PUSH IY + ;PUSH IY ; !FIXIT зачем? LD C,1 ; признак long .main: SAFE_PORTY_2 PUSH BC @@ -214,7 +214,7 @@ ATA_5x_LONG_READ: CCF ; .exit: RESTORE_PORTY - POP IY + ;POP IY RET ; .error: LD B,A ; A - номер ошибки @@ -253,7 +253,7 @@ ATA_5x_LONG_READ: ; HL:IX - Sector + Sector counter ; DE - Address + (Sector counter * Size sector) ;WRITE SECTOR(S) -ATA_5x_WRITE: PUSH IY +ATA_5x_WRITE: ;PUSH IY ; !FIXIT зачем? LD C,0 ; признак short EX AF,AF' IN A,(SLOT3) @@ -271,7 +271,7 @@ ATA_5x_WRITE: PUSH IY ; DE - Address + (Sector counter * Size sector) ;WRITE SECTOR(S) ATA_5x_LONG_WRITE: - PUSH IY + ;PUSH IY ; !FIXIT зачем? LD C,1 ; признак long .main: SAFE_PORTY_2 PUSH BC @@ -534,7 +534,7 @@ WRITE_ATA_SECTORs: ; B - Sector counter ;Return: CF - error ;VERIFY SECTOR(S) -ATA_5x_VERIFY: PUSH IY +ATA_5x_VERIFY: ;PUSH IY ; !FIXIT зачем? SAFE_PORTY_2 PUSH IX PUSH HL @@ -542,7 +542,7 @@ ATA_5x_VERIFY: PUSH IY POP HL POP IX RESTORE_PORTY - POP IY + ;POP IY RET ;VERIFY SECTOR(S) .VERIFY: LD C,IDE.Device.HDD diff --git a/src/bios/exp/FUNC_RAM_ROM_DRV.ASM b/src/bios/exp/FUNC_RAM_ROM_DRV.ASM index 52e7326..ac1e3d2 100644 --- a/src/bios/exp/FUNC_RAM_ROM_DRV.ASM +++ b/src/bios/exp/FUNC_RAM_ROM_DRV.ASM @@ -22,7 +22,8 @@ EMM.GetMemSize: IN A,(SLOT1) ; .exit: LD HL,#100 ;!HARDCODE max mem pages LD A,B - LD B,0 + ; L=0 + LD B,L OUT (SLOT1),A RET