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..1dea76ea 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,7 +123,6 @@ #INCLUDE "std.asm" ; HBX_BNKSEL .EQU $FE2B -HBX_START .EQU $FE00 ; #DEFINE HB_DI DI #DEFINE HB_EI EI @@ -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 ;