From 55c3711e4cab3a259b683c34c1040451bd85a3c4 Mon Sep 17 00:00:00 2001 From: Tolik <85737314+Tolik-Trek@users.noreply.github.com> Date: Tue, 21 Oct 2025 00:37:34 +1000 Subject: [PATCH] tap fixes --- Shared_Includes | 2 +- spectrum.asm | 71 ++++++++++++++++++++++++++++++++++--------------- 2 files changed, 51 insertions(+), 22 deletions(-) diff --git a/Shared_Includes b/Shared_Includes index a9cc74a..4da18d5 160000 --- a/Shared_Includes +++ b/Shared_Includes @@ -1 +1 @@ -Subproject commit a9cc74a9eba4044c35c930159bda0b0dde5d429b +Subproject commit 4da18d54c12e0f2ff4183be7a1cbf5882da1bd4f diff --git a/spectrum.asm b/spectrum.asm index 86f4faa..6fc7f4c 100644 --- a/spectrum.asm +++ b/spectrum.asm @@ -315,6 +315,7 @@ READ_IMAGE: LD DE,ONE_FILE JR C,.no_change_Disk JR .getInfoDRV ; + ; .currentDisk: LD A,(ONE_FILE) SUB "A" ; @@ -394,8 +395,8 @@ READ_IMAGE: LD DE,ONE_FILE DEC A ; check if SCL JP Z,Load_SCL ; - DEC A - JP Z,LOAD_TAP + ; DEC A + ; JR Z,LOAD_TAP ;jp Error_Flag ;!!!!!!!!!!!!!!!! .Load_TRD: LD A,(IMAGE_HANDLER) @@ -404,28 +405,32 @@ READ_IMAGE: LD DE,ONE_FILE LD BC,Dss.Move_FP.FrEnd RST ToDSS ; ­ ©â¨ ¤«¨­ã ä ©«  RET C - + ; PUSH IX POP DE - + ; ¥á«¨ ã ­ á TAP + ; LD (RESET_TO_ZX.tap_size_LW),DE + ; LD A,L + ; LD (RESET_TO_ZX.tap_size_HB),A + ; CALL Get_RAM_Disk_E RET C JP Load_IMAGE_File ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; -LOAD_TAP: CALL READ_IMAGE.Load_TRD - RET C - ; - LD A,SYS_PAGE - OUT (SLOT3),A - LD A,(Load_IMAGE_File.MEM_BLK) - LD (SYS_PAGE.TAP_RAM_BLK),A - XOR A - LD (SYS_PAGE.TAP_RAM_POINT),A - LD A,#C0 - LD (SYS_PAGE.TAP_RAM_POINT + 1),A - RET +; LOAD_TAP: CALL READ_IMAGE.Load_TRD +; RET C +; ; +; LD A,SYS_PAGE +; OUT (SLOT3),A +; LD A,(Load_IMAGE_File.MEM_BLK) +; LD (SYS_PAGE.TAP_RAM_BLK),A +; XOR A +; LD (SYS_PAGE.TAP_RAM_POINT),A +; LD A,#C0 +; LD (SYS_PAGE.TAP_RAM_POINT + 1),A +; RET ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; @@ -495,8 +500,17 @@ Load_IMAGE_File: LD C,Dss.Read RST ToDSS JR C,ERROR_IN_READ - - LD HL,PROGRES_IND ; loading progress + ; + INC A + JR NZ,.cont_load + ; for TAP file. end marker + LD A,#C0 + OR D + LD D,A + XOR A + LD (DE),A + ; +.cont_load: LD HL,PROGRES_IND ; loading progress LD C,Dss.PChars RST ToDSS @@ -806,11 +820,25 @@ RESET_TO_ZX: DI LD A,ACEX.Config_PG.Sp2000_SoftRestartSet LD BC,BIOS.RST_CONF.CUSTOM RST ToBIOS -.NO_RST_HDL: - - ; [ ] +.NO_RST_HDL:; [ ] LD A,SYS_PAGE OUT (SLOT3),A + ; SetUp TAP + LD A,(IMAGE_FLAG) + CP 2 + LD A,#FF + JR NZ,.no_tap + LD A,(Load_IMAGE_File.MEM_BLK) +.no_tap: LD (SYS_PAGE.TAP_RAM_BLK),A + XOR A + LD (SYS_PAGE.TAP_RAM_POINT),A + LD A,#C0 + LD (SYS_PAGE.TAP_RAM_POINT + 1),A +; .tap_size_LW+1: LD HL,0 +; .tap_size_HB+1: LD A,0 +; LD (SYS_PAGE.TAP_FULL_SIZE),HL +; LD (SYS_PAGE.TAP_FULL_SIZE + 2),A + ; .DIR_SEC_L+1: LD HL,0 LD (SYS_PAGE.CURRENT_DIR_SEC_L),HL .DIR_SEC_H+1: LD HL,0 @@ -1085,6 +1113,7 @@ FIND_FILES: PUSH HL .TRD: LD DE,(X_FILE) LD (IMAGE_NAME),DE JR .unknown + ; .TAP: LD DE,IMAGE_FLAG LD A,2 ; tap LD (DE),A