From 2308f35e667f6caf93936eec43f68e3c5e78fe49 Mon Sep 17 00:00:00 2001 From: b1ackmai1er Date: Fri, 22 Jan 2021 21:07:39 +0800 Subject: [PATCH 1/2] Adjustments for new hbios proxy location --- Source/Forth/camel80.azm | 10 +++++++--- Source/HBIOS/updater.asm | 27 +++++++++++++-------------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/Source/Forth/camel80.azm b/Source/Forth/camel80.azm index 95955df4..c082ead8 100644 --- a/Source/Forth/camel80.azm +++ b/Source/Forth/camel80.azm @@ -11,6 +11,7 @@ BF_SYSRES_WARM EQU 01h ; WARM START (RESTART BOOT LOADER) FTH_SIZ EQU 1700h FTH_LOC EQU 0200h +HB_LOC EQU 0FD80h ; Listing 2. ; =============================================== @@ -71,7 +72,10 @@ FTH_LOC EQU 0200h ; precision words as per RC2014 ; version. Increase terminal ; input buffer (TIB) size. -; b1ackmai1er difficultylevelhigh@gmail.com +; b1ackmai1er difficultylevelhigh@gmail.com +; 22-Jan 21 v1.02 Adjust for revised HBIOS +; proxy size. +; b1ackmai1er difficultylevelhigh@gmail.com ; =============================================== ; Macros to define Forth headers ; HEAD label,length,name,action @@ -140,7 +144,7 @@ nexthl MACRO CSEG .PHASE FTH_LOC -reset: ld hl,0FDFFh ; HBIOS address, rounded down +reset: ld hl,HB_LOC ; HBIOS address, rounded down ld l,0 ; = end of avail.mem (EM) dec h ; EM-100h ld sp,hl ; = top of param stack @@ -165,7 +169,7 @@ reset: ld hl,0FDFFh ; HBIOS address, rounded down ; EM-100h HOLD area, 40 bytes, grows down ; EM-0D8h PAD buffer, 88 bytes ; EM-80h Return stack, 128 B, grows down -; EM End of RAM = start of HBIOS +; EM=HB_LOC End of RAM = start of HBIOS ; See also the definitions of U0, S0, and R0 ; in the "system variables & constants" area. ; A task w/o terminal input requires 200h bytes. diff --git a/Source/HBIOS/updater.asm b/Source/HBIOS/updater.asm index 89460c93..0c18ef73 100644 --- a/Source/HBIOS/updater.asm +++ b/Source/HBIOS/updater.asm @@ -2,7 +2,7 @@ ; ROMWBW XMODEM FLASH UPDATER ; ; PROVIDES THE CAPABILTY TO UPDATE ROMWBW FROM THE SBC BOOT LOADER USING -; AN XMODEM FILE TRANSFER. FOR SYSTEMS WITH AN SST39SF040 FLASH CHIP. +; AN XMODEM FILE TRANSFER. ; ; TO INSTALL, SAVE THIS FILE AS USRROM.ASM IN \RomWBW\Source\HBIOS ; AND REBUILD AND INSTALL THE NEW ROM VERSION. @@ -11,7 +11,7 @@ ; ; OPTION (C) AND (S) - CONSOLE AND SERIAL DEVICE ; -; BY DEFAULT THE UPDATER IS SET TO USE THE FIRST ROMWBW CONSOLE DEVICE (0) FOR +; BY DEFAULT THE UPDATER IS SET TO USE THE CURRENT CONSOLE DEVICE FOR ; DISPLAY OUTPUT AND FILES TRANSFER. IF YOU USE A DIFFERENT SERIAL DEVICE FOR ; THE FILE TRANSFER, PROGRESS INFORMATION WILL BE DISPLAYED. ; @@ -123,12 +123,11 @@ #INCLUDE "std.asm" ; HBX_BNKSEL .EQU $FE2B -HBX_START .EQU $FE00 ; #DEFINE HB_DI DI #DEFINE HB_EI EI ; -XFUDBG .EQU 0 +XFUDBG .EQU 1 ; .ORG USR_LOC ; @@ -146,10 +145,10 @@ BSPC: .EQU 'H'-40h ; ^H = Backspace ; Start of code ; LD (oldSP),SP ; SETUP STACK BELOW HBIOS - LD SP,HBX_START-MD_CSIZ ; ALLOW FOR RELOCATABLE CODE AREA + LD SP,HBX_LOC-MD_CSIZ ; ALLOW FOR RELOCATABLE CODE AREA ; LD HL,MD_FSTART ; COPY FLASH - LD DE,HBX_START-MD_CSIZ ; ROUTINES TO + LD DE,HBX_LOC-MD_CSIZ ; ROUTINES TO LD BC,MD_CSIZ ; HIGH MEMORY LDIR ; @@ -227,8 +226,8 @@ CHPFND: LD (ERATYP),A ; SAVE ERASE TYPE MENULP: LD DE,$0000 ; ENSURE WE ARE STARTING LD (MD_FBAS),DE ; AT BANK 0 SECTOR 0 - LD HL,ERATYP - RES 7,(HL) + LD HL,ERATYP ; RESET THE ERASE + RES 7,(HL) ; SKIP FLAG ; LD HL,msgCRLF CALL PRTSTR0 @@ -1148,12 +1147,12 @@ MD_FJPHL: MD_FEND .EQU $ MD_CSIZ .EQU MD_FEND-MD_FSTART ; HOW MUCH SPACE WE NEED FOR RELOCATABLE CODE ; -MD_FIDEN .EQU HBX_START-MD_CSIZ+MD_FIDEN_R-MD_FSTART ; CALL ADDRESS FOR IDENTIFY FLASH CHIP -MD_FERAS .EQU HBX_START-MD_CSIZ+MD_FERAS_R-MD_FSTART ; CALL ADDRESS FOR ERASE FLASH SECTOR -MD_FREAD .EQU HBX_START-MD_CSIZ+MD_FREAD_R-MD_FSTART ; CALL ADDRESS FOR READ FLASH SECTOR -MD_FVERI .EQU HBX_START-MD_CSIZ+MD_FVERI_R-MD_FSTART ; CALL ADDRESS FOR VERIFY FLASH SECTOR -MD_FWRIT .EQU HBX_START-MD_CSIZ+MD_FWRIT_R-MD_FSTART ; CALL ADDRESS FOR WRITE FLASH SECTOR -MD_FERAC .EQU HBX_START-MD_CSIZ+MD_FERAC_R-MD_FSTART ; CALL ADDRESS FOR ERASE FLASH CHIP +MD_FIDEN .EQU HBX_LOC-MD_CSIZ+MD_FIDEN_R-MD_FSTART ; CALL ADDRESS FOR IDENTIFY FLASH CHIP +MD_FERAS .EQU HBX_LOC-MD_CSIZ+MD_FERAS_R-MD_FSTART ; CALL ADDRESS FOR ERASE FLASH SECTOR +MD_FREAD .EQU HBX_LOC-MD_CSIZ+MD_FREAD_R-MD_FSTART ; CALL ADDRESS FOR READ FLASH SECTOR +MD_FVERI .EQU HBX_LOC-MD_CSIZ+MD_FVERI_R-MD_FSTART ; CALL ADDRESS FOR VERIFY FLASH SECTOR +MD_FWRIT .EQU HBX_LOC-MD_CSIZ+MD_FWRIT_R-MD_FSTART ; CALL ADDRESS FOR WRITE FLASH SECTOR +MD_FERAC .EQU HBX_LOC-MD_CSIZ+MD_FERAC_R-MD_FSTART ; CALL ADDRESS FOR ERASE FLASH CHIP ; ; Message strings ; From ac3a4be7b0c965713374635c4a2b3c10c4f1d191 Mon Sep 17 00:00:00 2001 From: b1ackmai1er Date: Fri, 22 Jan 2021 21:08:58 +0800 Subject: [PATCH 2/2] Update updater.asm debug off --- Source/HBIOS/updater.asm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/HBIOS/updater.asm b/Source/HBIOS/updater.asm index 0c18ef73..1dea76ea 100644 --- a/Source/HBIOS/updater.asm +++ b/Source/HBIOS/updater.asm @@ -127,7 +127,7 @@ HBX_BNKSEL .EQU $FE2B #DEFINE HB_DI DI #DEFINE HB_EI EI ; -XFUDBG .EQU 1 +XFUDBG .EQU 0 ; .ORG USR_LOC ;