From bab76bd4b2cac81b764de07199c90754b52deaa7 Mon Sep 17 00:00:00 2001 From: Tolik <85737314+Tolik-Trek@users.noreply.github.com> Date: Mon, 21 Oct 2024 19:23:51 +1000 Subject: [PATCH] =?UTF-8?q?=D0=B2=D1=80=D0=BE=D0=B4=D0=B5,=20=D1=87=D1=91?= =?UTF-8?q?=D1=82=20=D0=B4=D0=B0=D0=B6=D0=B5=20=D0=B8=D1=81=D0=BF=D1=80?= =?UTF-8?q?=D0=B0=D0=B2=D0=B8=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game_loader_dasm.a80 | 69 +++++++++++++++++++++++++++++--------------- 1 file changed, 46 insertions(+), 23 deletions(-) diff --git a/game_loader_dasm.a80 b/game_loader_dasm.a80 index 9718b1c..fa7b6b3 100644 --- a/game_loader_dasm.a80 +++ b/game_loader_dasm.a80 @@ -505,11 +505,12 @@ sub_837fh: LD HL,STRING_SPECIAL_no_mem;837f 21 a4 83 ! . . RET ;8385 c9 . +RESTORE_IM1_DSS: DI ;8386 f3 . - LD A,000h ;8387 3e 00 > . - LD (00038h),A ;8389 32 38 00 2 8 . - LD HL,00000h ;838c 21 00 00 ! . . - LD (00039h),A ;838f 32 39 00 2 9 . + LD A,#C3 ;8387 3e 00 > . + LD (#38),A ;8389 32 38 00 2 8 . + LD HL,#003B ;838c 21 00 00 ! . . + LD (#39),A ;838f 32 39 00 2 9 . RET ;8392 c9 . l8393h: CALL sub_837fh ;8393 cd 7f 83 . . . @@ -6116,7 +6117,16 @@ lad3eh: ; NEW CODE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; [ ] FIX 19/10/2024 -NEW_CODE_START: LD C,Dss.GetVMod +NEW_CODE_START: LD HL,LOADER_STRINGS.Info + LD C,Dss.PChars + RST ToDSS + ; + LD C,Dss.Cursor + RST ToDSS + LD (PREPARE_TO_EXIT_NEW.cursor),DE + ; + + LD C,Dss.GetVMod RST ToDSS JR C,.no_vmode CP #80 @@ -6240,24 +6250,24 @@ NEW_CODE_START: LD C,Dss.GetVMod LD A,SYS_PORT.CNF_0 OUT (SYS_PORT.RAM),A ; + LD DE,CAD_RESET_HANDLER + CALL SETUP_RESET_HANDLER + ; LD A,(PAGES_BUFFER) LD C,BIOS.FreeMem RST ToBIOS - ; ; restore HOLD port LD D,CMOS_CELL.ScreenPosition LD C,BIOS.CMOS_RD RST ToBIOS - JR C,.run_game + JP C,l8423h.cont ; LD B,A LD A,ACEX.HOLD LD C,BIOS.SET_PORTS RST ToBIOS ; - LD DE,CAD_RESET_HANDLER - CALL SETUP_RESET_HANDLER -.run_game: JP l8423h.cont + JP l8423h.cont TITD_ACX: .TYPE: DZ '.ACX' .NAME: BLOCK 9,0 @@ -6268,8 +6278,9 @@ CAD_RESET_HANDLER: LD A,(Spec_Page.page_3) ; PAGE3 OUT (SLOT3),A LD A,SYS_PORT.CNF_0 - OUT (SYS_PORT.RAM),A - JP HARD_RESET + OUT (SYS_PORT.ROM),A + LD BC,BIOS.REINIT.HARD_RESET + JP ToBIOS_18 ; ; @@ -6289,24 +6300,36 @@ SETUP_RESET_HANDLER_NEW: ; RET ; -PREPARE_TO_EXIT_NEW: ;LD A,(.current_screen) - ;XOR 1 - ;LD B,A - ;LD A,Dss.SetVMod.grf640x256 - ;LD C,.SetVMod - ;RST ToDSS +PREPARE_TO_EXIT_NEW: CALL RESTORE_IM1_DSS + ; + LD A,4 + LD C,BIOS.FN_SYNC + RST ToBIOS + ; + LD A,%1000'0000 + LD C,BIOS.FN_SYNC + RST ToBIOS + ; + LD A,(.current_screen) + XOR 1 + LD B,A + LD A,Dss.SetVMod.grf640x256 + LD C,Dss.SetVMod + RST ToDSS ; .current_vmode+1: LD A,Dss.SetVMod.txt80x32 -.current_screen+1: LD B,high Dss.SetVMod.Screen_0 - LD C,Dss.SetVMod +.current_screen+2: LD BC,Dss.SetVMod.Screen_0 + RST ToDSS + ; +.cursor+1: LD DE,0 + LD C,Dss.Locate JP ToDSS ; LOADER_STRINGS: -.Exit: DB "\r\nThunder in the Deep. Copyright (C) 2003 Deviants.\r\n" - DB "Bug fixes by Tolik_Trek@Sprinter_Team in 2024.\r\n" - DZ "Game over, bye)))\r\n" +.Info: DB "\r\nThunder in the Deep v1.10 fixed. Copyright (C) 2003 Deviants.\r\n" + DZ "Bug fixes by Tolik_Trek@Sprinter_Team in 2024.\r\n\r\n" ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BLOCK (stack_point - stack_point.size - 1)-$,0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; \ No newline at end of file