mirror of https://github.com/wwarthen/RomWBW.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
2.9 KiB
101 lines
2.9 KiB
;
|
|
; The was extracted out of STD.ASM, so can be included
|
|
; in BIOS apps that are NOT in HBIOS directory!
|
|
;
|
|
; =============
|
|
; MEMORY LAYOUT
|
|
; =============
|
|
;
|
|
SYS_SIZ .EQU $3000 ; COMBINED SIZE OF SYSTEM AREA (OS + HBIOS PROXY)
|
|
HBBUF_SIZ .EQU 1024 ; INVARIANT HBIOS PHYSICAL DISK BUFFER, 1K
|
|
HBX_SIZ .EQU $200 ; HBIOS PROXY SIZE (SUBJECT TO CHANGE)
|
|
CPM_SIZ .EQU SYS_SIZ - HBX_SIZ ; NET SIZE OF ALL OS COMPONENTS (EXCLUDING HBIOS PROXY)
|
|
CCP_SIZ .EQU $800 ; INVARIANT SIZE OF CCP
|
|
BDOS_SIZ .EQU $E00 ; INVARIANT SIZE OF BDOS
|
|
CBIOS_SIZ .EQU CPM_SIZ - CCP_SIZ - BDOS_SIZ ; CBIOS IS THE REMAINDER
|
|
;
|
|
MEMTOP .EQU $10000 ; INVARIANT TOP OF Z80 ADDRESSABLE MEMORY
|
|
BNKTOP .EQU $8000 ; BANK MEMORY BARRIER
|
|
;
|
|
HBX_IMG .EQU $200 ; LOC OF HBX IMAGE IN HBIOS IMAGE BANK
|
|
;
|
|
HBBUF_END .EQU BNKTOP ; END OF PHYSICAL DISK BUFFER IN HBIOS
|
|
HBBUF_LOC .EQU HBBUF_END - HBBUF_SIZ ; START OF PHYSICAL DISK BUFFER
|
|
HBX_END .EQU MEMTOP ; END OF HBIOS PROXY
|
|
HBX_LOC .EQU HBX_END - HBX_SIZ ; START OF HBIOS PROXY
|
|
CPM_END .EQU HBX_LOC ; END OF CPM COMPONENTS (INCLUDING CBIOS)
|
|
CPM_LOC .EQU CPM_END - CPM_SIZ ; START OF CPM COMPONENTS
|
|
CBIOS_END .EQU HBX_LOC ; END OF CBIOS
|
|
CBIOS_LOC .EQU CBIOS_END - CBIOS_SIZ ; START OF CBIOS
|
|
;
|
|
CPM_ENT .EQU CBIOS_LOC ; CPM ENTRY POINT (IN CBIOS)
|
|
;
|
|
CPM_IMGSIZ .EQU $3000
|
|
;
|
|
; =================
|
|
; ROM BANK 1 LAYOUT
|
|
; =================
|
|
;
|
|
LDR_LOC .EQU $0000
|
|
LDR_SIZ .EQU $1000
|
|
LDR_END .EQU LDR_LOC +LDR_SIZ
|
|
LDR_IMGLOC .EQU $0000
|
|
;
|
|
MON_LOC .EQU $EE00 ; LOCATION OF MONITOR FOR RUNNING SYSTEM
|
|
MON_SIZ .EQU $1000 ; SIZE OF MONITOR BINARY IMAGE
|
|
MON_END .EQU MON_LOC + MON_SIZ ; END OF MONITOR
|
|
MON_IMGLOC .EQU LDR_IMGLOC + LDR_SIZ
|
|
;
|
|
ZSYS_IMGLOC .EQU MON_IMGLOC + MON_SIZ
|
|
;
|
|
CPM_IMGLOC .EQU ZSYS_IMGLOC + CPM_IMGSIZ
|
|
;
|
|
; =================
|
|
; ROM BANK 2 LAYOUT
|
|
; =================
|
|
;
|
|
FTH_LOC .EQU $0200 ; CAMEL FORTH
|
|
FTH_SIZ .EQU $1700
|
|
FTH_END .EQU FTH_LOC + FTH_SIZ
|
|
FTH_IMGLOC .EQU $0000
|
|
|
|
BAS_LOC .EQU $0200 ; NASCOM BASIC
|
|
BAS_SIZ .EQU $2000
|
|
BAS_END .EQU BAS_LOC + BAS_SIZ
|
|
BAS_IMGLOC .EQU FTH_IMGLOC + FTH_SIZ
|
|
;
|
|
; NOTE FOLLOWING ARE COPY/PASTED INTO tastybasic.asm !!!!!!!!
|
|
TBC_LOC .EQU $0A00 ; TASTYBASIC
|
|
TBC_SIZ .EQU $0A00
|
|
TBC_END .EQU TBC_LOC + TBC_SIZ
|
|
TBC_IMGLOC .EQU BAS_IMGLOC + BAS_SIZ
|
|
;
|
|
GAM_LOC .EQU $0200 ; GAME 2048
|
|
GAM_SIZ .EQU $0900
|
|
GAM_END .EQU GAM_LOC + GAM_SIZ
|
|
GAM_IMGLOC .EQU TBC_IMGLOC + TBC_SIZ
|
|
;
|
|
EGG_LOC .EQU $F000 ; EASTER EGG
|
|
EGG_SIZ .EQU $0200
|
|
EGG_END .EQU EGG_LOC + EGG_SIZ
|
|
EGG_IMGLOC .EQU GAM_IMGLOC + GAM_SIZ
|
|
;
|
|
NET_LOC .EQU $0100 ; NETWORK BOOT
|
|
NET_SIZ .EQU $1000
|
|
NET_END .EQU NET_LOC + NET_SIZ
|
|
NET_IMGLOC .EQU EGG_IMGLOC + EGG_SIZ
|
|
;
|
|
UPD_LOC .EQU $0200 ; ROM UPDATER
|
|
UPD_SIZ .EQU $0D00
|
|
UPD_END .EQU UPD_LOC + UPD_SIZ
|
|
UPD_IMGLOC .EQU NET_IMGLOC + NET_SIZ
|
|
;
|
|
NVR_LOC .EQU $0100 ; NVRAM CONFIG
|
|
NVR_SIZ .EQU $0800
|
|
NVR_END .EQU NVR_LOC + NVR_SIZ
|
|
NVR_IMGLOC .EQU UPD_IMGLOC + UPD_SIZ
|
|
;
|
|
USR_LOC .EQU $0200 ; USER
|
|
USR_SIZ .EQU BNKTOP - NVR_IMGLOC - NVR_SIZ
|
|
USR_END .EQU USR_LOC + USR_SIZ
|
|
USR_IMGLOC .EQU NVR_IMGLOC + NVR_SIZ
|
|
|