|
|
@ -32,11 +32,17 @@ CPM_ENT .EQU CBIOS_LOC ; CPM ENTRY POINT (IN CBIOS) |
|
|
; |
|
|
; |
|
|
CPM_IMGSIZ .EQU $3000 |
|
|
CPM_IMGSIZ .EQU $3000 |
|
|
; |
|
|
; |
|
|
; ================= |
|
|
|
|
|
; ROM BANK 1 LAYOUT |
|
|
|
|
|
; ================= |
|
|
|
|
|
|
|
|
; ============================= |
|
|
|
|
|
; ROM BANK 0 (hbios_rom.bin) |
|
|
|
|
|
; ============================= |
|
|
|
|
|
; |
|
|
|
|
|
; See hbios.asm for content of Bank 0 |
|
|
; |
|
|
; |
|
|
LDR_LOC .EQU $0000 |
|
|
|
|
|
|
|
|
; ============================= |
|
|
|
|
|
; ROM BANK 1 LAYOUT (osimg.bin) |
|
|
|
|
|
; ============================= |
|
|
|
|
|
; |
|
|
|
|
|
LDR_LOC .EQU $0000 ; ROM LOADER |
|
|
LDR_SIZ .EQU $1000 |
|
|
LDR_SIZ .EQU $1000 |
|
|
LDR_END .EQU LDR_LOC +LDR_SIZ |
|
|
LDR_END .EQU LDR_LOC +LDR_SIZ |
|
|
LDR_IMGLOC .EQU $0000 |
|
|
LDR_IMGLOC .EQU $0000 |
|
|
@ -46,13 +52,16 @@ MON_SIZ .EQU $1000 ; SIZE OF MONITOR BINARY IMAGE |
|
|
MON_END .EQU MON_LOC + MON_SIZ ; END OF MONITOR |
|
|
MON_END .EQU MON_LOC + MON_SIZ ; END OF MONITOR |
|
|
MON_IMGLOC .EQU LDR_IMGLOC + LDR_SIZ |
|
|
MON_IMGLOC .EQU LDR_IMGLOC + LDR_SIZ |
|
|
; |
|
|
; |
|
|
ZSYS_IMGLOC .EQU MON_IMGLOC + MON_SIZ |
|
|
|
|
|
|
|
|
ZSYS_IMGLOC .EQU MON_IMGLOC + MON_SIZ ; ZSDOS / Z-System |
|
|
; |
|
|
; |
|
|
CPM_IMGLOC .EQU ZSYS_IMGLOC + CPM_IMGSIZ |
|
|
|
|
|
|
|
|
CPM_IMGLOC .EQU ZSYS_IMGLOC + CPM_IMGSIZ ; CP/M 2.2 |
|
|
; |
|
|
; |
|
|
; ================= |
|
|
|
|
|
; ROM BANK 2 LAYOUT |
|
|
|
|
|
; ================= |
|
|
|
|
|
|
|
|
BNK1_IMGEND .EQU CPM_IMGLOC + CPM_IMGSIZ ; END OF BANK |
|
|
|
|
|
BNK1_REMAIN .EQU BNKTOP - BNK1_IMGEND ; REMAINING |
|
|
|
|
|
; |
|
|
|
|
|
; ============================== |
|
|
|
|
|
; ROM BANK 2 LAYOUT (osimg1.bin) |
|
|
|
|
|
; ============================== |
|
|
; |
|
|
; |
|
|
FTH_LOC .EQU $0200 ; CAMEL FORTH |
|
|
FTH_LOC .EQU $0200 ; CAMEL FORTH |
|
|
FTH_SIZ .EQU $1700 |
|
|
FTH_SIZ .EQU $1700 |
|
|
@ -96,6 +105,41 @@ NVR_END .EQU NVR_LOC + NVR_SIZ |
|
|
NVR_IMGLOC .EQU UPD_IMGLOC + UPD_SIZ |
|
|
NVR_IMGLOC .EQU UPD_IMGLOC + UPD_SIZ |
|
|
; |
|
|
; |
|
|
USR_LOC .EQU $0200 ; USER |
|
|
USR_LOC .EQU $0200 ; USER |
|
|
USR_SIZ .EQU BNKTOP - NVR_IMGLOC - NVR_SIZ |
|
|
|
|
|
|
|
|
USR_SIZ .EQU $0200 |
|
|
USR_END .EQU USR_LOC + USR_SIZ |
|
|
USR_END .EQU USR_LOC + USR_SIZ |
|
|
USR_IMGLOC .EQU NVR_IMGLOC + NVR_SIZ |
|
|
USR_IMGLOC .EQU NVR_IMGLOC + NVR_SIZ |
|
|
|
|
|
; |
|
|
|
|
|
BNK2_IMGEND .EQU USR_IMGLOC + USR_SIZ ; END OF BANK |
|
|
|
|
|
BNK2_REMAIN .EQU BNKTOP - BNK2_IMGEND ; REMAINING |
|
|
|
|
|
; |
|
|
|
|
|
; ============================== |
|
|
|
|
|
; ROM BANK 3 LAYOUT (osimg2.bin) |
|
|
|
|
|
; ============================== |
|
|
|
|
|
; |
|
|
|
|
|
; not defined here, see build files |
|
|
|
|
|
; optionally contains S100 monitor |
|
|
|
|
|
; |
|
|
|
|
|
; ================= |
|
|
|
|
|
; |
|
|
|
|
|
#IFDEF BNKINFO |
|
|
|
|
|
.ECHO "-------------------------------\n" |
|
|
|
|
|
.ECHO "ROM BANK INFO \tLENGTH \tREMAIN \n" |
|
|
|
|
|
.ECHO "---------------\t-------\t-------\n" |
|
|
|
|
|
.ECHO "BANK1 BID_IMG0 \t" \ .ECHO BNK1_IMGEND \ .ECHO "\t" \ .ECHO BNK1_REMAIN \ .ECHO "\n" |
|
|
|
|
|
.ECHO "BANK2 BID_IMG1 \t" \ .ECHO BNK2_IMGEND \ .ECHO "\t" \ .ECHO BNK2_REMAIN \ .ECHO "\n" |
|
|
|
|
|
.ECHO "-------------------------------\n" |
|
|
|
|
|
; |
|
|
|
|
|
#IF (BNK1_IMGEND > BNKTOP) |
|
|
|
|
|
.ECHO "*** BANK 1 IS TOO BIG!!!\n" |
|
|
|
|
|
!!! ; FORCE AN ASSEMBLY ERROR IF BANK SIZE EXCEEDS SPACE |
|
|
|
|
|
#ENDIF |
|
|
|
|
|
#IF (BNK2_IMGEND > BNKTOP) |
|
|
|
|
|
.ECHO "*** BANK 2 IS TOO BIG!!!\n" |
|
|
|
|
|
!!! ; FORCE AN ASSEMBLY ERROR IF BANK SIZE EXCEEDS SPACE |
|
|
|
|
|
#ENDIF |
|
|
|
|
|
; |
|
|
|
|
|
#ENDIF |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|