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.
53 lines
1.7 KiB
53 lines
1.7 KiB
;----------------------------------------------------------------------------
|
|
; PREFIX.ASM
|
|
;
|
|
; PUT AT THE HEAD OF BOOT.BIN TO XFER TO A FLOPPY DISK
|
|
;
|
|
;----------------------------------------------------------------------------
|
|
|
|
; 5/11/2012 dwg - changed offset to BIOS booting fixup location
|
|
; 3/ 2/2012 dwg - fixed BOOT_INFO_LOC (moved when jump added for bnksel)
|
|
; 2/15/2012 dwg - added origin data written by formatter
|
|
; 2/ 5/2012 dwg - added version quad, updates counter, and write protect boolean to metadata
|
|
; 1/ 9/2012 wbw - added signature
|
|
; 1/ 5/2012 dwg - added version of build generating system image
|
|
; 1/ 5/2012 dwg - added drive label to metadata for 1.4
|
|
|
|
#INCLUDE "std.asm"
|
|
|
|
BYT .EQU 1 ; used to describe METADATA_SIZE below
|
|
WRD .EQU 2
|
|
|
|
SECTOR_SIZE .EQU 512
|
|
BLOCK_SIZE .EQU 128
|
|
PREFIX_SIZE .EQU (3 * SECTOR_SIZE) ; 3 SECTORS
|
|
METADATA_SIZE .EQU BYT+WRD+(4*BYT)+16+BYT+WRD+WRD+WRD+WRD ; (as defined below)
|
|
|
|
BOOT_INFO_LOC .EQU CPM_ENT + 04BH
|
|
; PTR TO LOCATION TO RECORD BOOT INFO IN MEMORY IMAGE
|
|
; FIXUP REQUIRED WHEN BIOS HEADER CHANGES
|
|
|
|
.ORG 0000H
|
|
JP CPM_ENT
|
|
;
|
|
.FILL ((PREFIX_SIZE - BLOCK_SIZE) - $),00H
|
|
PR_SIG .DW 0A55AH ; SIGNATURE GOES HERE
|
|
|
|
PR_PLATFORM .DB 0
|
|
PR_DEVICE .DB 0
|
|
PR_FORMATTER .DB 0,0,0,0,0,0,0,0
|
|
PR_DRIVE .DB 0
|
|
PR_LOG_UNIT .DW 0
|
|
|
|
;
|
|
.FILL ((PREFIX_SIZE - METADATA_SIZE) - $),00H
|
|
.DB 0 ; write protect boolean
|
|
.DW 0 ; starting update number
|
|
.DB RMJ,RMN,RUP,RTP
|
|
.DB "Unlabeled Drive ","$"
|
|
.DW BOOT_INFO_LOC ; PTR TO LOCATION TO STORE DISKBOOT & BOOTDRIVE (SEE CNFGDATA)
|
|
.DW CPM_LOC ; CCP START
|
|
.DW CPM_END ; END OF CBIOS
|
|
.DW CPM_ENT ; COLD BOOT LOCATION
|
|
|
|
.END
|