mirror of
https://github.com/elliotnunn/supermario.git
synced 2024-11-29 20:49:19 +00:00
388 lines
17 KiB
Plaintext
388 lines
17 KiB
Plaintext
;
|
||
; File: ROMEqu.a
|
||
;
|
||
; Contains: Slot-related equates
|
||
;
|
||
; Written by: Dave Wong, though he will deny it
|
||
;
|
||
; Copyright: © 1986-1990, 1992-1994 by Apple Computer, Inc., all rights reserved.
|
||
;
|
||
; Change History (most recent first):
|
||
;
|
||
; <SM15> 1/4/94 PN Add fDimMinAt1 and BBEthernetBoardID.
|
||
; <SM14> 12/13/93 PN Roll in KAOs and Horror changes to support Malcom and AJ
|
||
; machines
|
||
; <SM13> 11/10/93 fau Update from SuperMunggio <SMG2>.
|
||
; <SMG2> 10/27/93 fau Added a temporary drHwATI until we get the official one.
|
||
; <SM12> 6/14/93 kc Roll in Ludwig.
|
||
; <LW4> 3/24/93 mal (fau,chp) Added equ's to support slot block xfers.
|
||
; <LW3> 3/22/93 fau Added a temporary TempestBrdID until DTS gives us an official
|
||
; one.
|
||
; <LW2> 2/24/93 fau Added DTS-blessed id's for catIntBus and typXPT and typSIM.
|
||
; <SM11> 5/28/93 IH Added sVidAuxParams directory constant. This will be where
|
||
; Display Manager gets information about timing parameters for
|
||
; each of the driver's functional sResources.
|
||
; <SM10> 01-12-93 jmp Update from latest HORROR sources and added initial support for
|
||
; CSC.
|
||
; <SM9> 11-25-92 jmp Added a video attributes flag that tells MacsBug that video ram
|
||
; is not necessarily linear across depths (i.e., so that it’ll
|
||
; automatically use “big buffer” mode).
|
||
; <SM8> 10-17-92 jmp Added support for PDM.
|
||
; <SM7> 08-27-92 jmp Added support for Brigent, Inc.’s BootBug card.
|
||
; <SM6> 07-14-92 jmp (H13,djw) Add sVidAttribute flag to indicate a "built-in"
|
||
; display.
|
||
; (H12,HJR) Added DartExtVidBoardID.
|
||
; <SM5> 5/20/92 KW rolled in Cyclone changes P3,P6
|
||
; <SM4> 5/17/92 kc Roll in Horror changes. Comments follow:
|
||
; Deleted ROMPrivateEqu.a.
|
||
; <H11> 02/19/92 jmp Changed the Condor board ID name to Wombat.
|
||
; <H10> 2/13/92 SWC Added some docking-oriented equates for DBLite. Verified that
|
||
; the old EASE (and earlier) comments had been correctly
|
||
; transcribed to BBS and then deleted them.
|
||
; <H9> 02/03/92 jmp Renamed one of the reserved video drHW IDs to drHWVSC for
|
||
; Niagra.
|
||
; <H8> 01/27/92 jmp Moved some equates from DepVideoEqu.a into ROMEqu.a.
|
||
; <H7> 12/20/91 HJR Update to new DartanianBoardID.
|
||
; <H6> 12/16/91 HJR Arbitrarily added DartanianBoardID until we get real ID Numbers.
|
||
; <H5> 11/27/91 jmp Renamed drHwVailCrnation to drHwSonora and drHwCyclone to
|
||
; drHwCivic.
|
||
; <H4> 10/29/91 jmp Renamed Spike33 board ID to Condor.
|
||
; <H3> 10/28/91 jmp Sam’s previous check-in didn’t seem to stick, so I’ve once again
|
||
; added in the beefed-up OSLstEntry macro.
|
||
; <H2> 10/22/91 SAM Added in the beefed-up (i.e., bi-directional) OSLstEntry macro
|
||
; from the MPW 3.2 Assembler equates, bored ID for Spike 33 and
|
||
; Zydeco.
|
||
; <3> 3/31/92 JSM Rolled this file into Reality.
|
||
; <2> 2/11/92 RB Added DrSwAppleIIe, typAppleII, DrHwSonic and DrHwDblExp.
|
||
; ___________________________________________________________________
|
||
; Pre Super Mario ROM History:
|
||
; ___________________________________________________________________
|
||
; <11> 1/7/92 RB Added 4•8 8•24 card signature.
|
||
; <10> 6/12/91 LN Removed private interface includes
|
||
; <9> 1/30/91 gbm sab, #38: Change the ‘already including this file’ variable to
|
||
; all uppercase (for security reasons)
|
||
; <8> 11/12/90 JL A little clean up of project names.
|
||
; <7> 10/9/90 JAL Fixed OSLstEntry
|
||
; <6> 7/9/90 STB Changed type68040 to typ68040 “”
|
||
; <4> 3/23/90 CCH Moved private information to ROMPrivateEqu.a.
|
||
; <3> 2/9/90 JJ Added CPU board IDs and video hardware IDs for Erickson, Elsie,
|
||
; Waimea, and Eclipse.
|
||
; <2> 1/2/90 BG Added equates for 68040 identification
|
||
; <1.3> 7/10/89 DAF Moved a number of ROM identification and structure ID equates
|
||
; from RBVDeclData.a
|
||
; <1.2> 5/29/89 DAF Added equates for new video ROM structures
|
||
; <1.1> 2/20/89 djw djw 12/1/88 Add SecondInit equate for secondary init records in
|
||
; board sRsrc
|
||
; <1.0> 11/9/88 CCH Adding to EASE.
|
||
; <•1.1> 9/14/88 CCH Updated EASE with the current rev of this file.
|
||
; <C807> 2/13/87 GWN Made some code audit changes.
|
||
; <C783> 2/10/87 GWN Added sRsrc_TOConst.
|
||
; <C543> 12/18/86 GWN Changed sRsrc_LoadDir to sRsrc_LoadRec.
|
||
; <C498> 12/10/86 GWN Added sRsrc_HWDevId.
|
||
; <C494> 12/9/86 GWN Added sRsrc_BootRec.
|
||
; <C444> 11/19/86 GWN Fixed bug in OSLstEntry Macro.
|
||
; <C378> 11/8/86 GWN Cleaned up comments for Design review.
|
||
; <C348> 11/4/86 DAF Removed Video_Apple_TFB and assorted junk (NYBL...,DW....)
|
||
; <C332> 11/2/86 RDC Add equ that ColorMgr.a needs until we tell DF what to change
|
||
; <C259> 10/24/86 GWN Check for non-implemented selector. Deleted defs for video card.
|
||
; <C149> 9/9/86 GWN Changed sDir to sFindsRsrcList. Replaced all references
|
||
; <C132> 8/29/86 GWN Added sGetDriver, sGetDrvrName, sDisDrvrName calls,
|
||
; <C118> 8/13/86 GWN Added New Slot Manager code & tlasm.
|
||
; <C730> 2/1/86 GWN Deleted SIMCapability
|
||
;
|
||
|
||
IF &TYPE('__INCLUDINGROMEQU__') = 'UNDEFINED' THEN
|
||
__INCLUDINGROMEQU__ SET 1
|
||
|
||
;*********************************************************************
|
||
; Constants
|
||
;*********************************************************************
|
||
|
||
;=====================================================================
|
||
;Misc.
|
||
;=====================================================================
|
||
defaultTO EQU 100
|
||
|
||
;=====================================================================
|
||
;Format-Header
|
||
;=====================================================================
|
||
appleFormat EQU 1 ;Format of Declaration Data (IEEE will assign real value)
|
||
romRevision EQU 1 ;First ROM revision.
|
||
romRevRange EQU 9 ;Revision of Declaration Data Format [1..9]
|
||
testPattern EQU 1519594439 ;FHeader long word test pattern
|
||
|
||
;=====================================================================
|
||
;sExec constants
|
||
;=====================================================================
|
||
sExec2 EQU 2 ;Revision of header {For sExec}.
|
||
|
||
;=====================================================================
|
||
;sExec constants
|
||
;=====================================================================
|
||
sCPU68000 EQU 1 ;CPU type = 68000
|
||
sCPU68020 EQU 2 ;CPU type = 68020
|
||
sCPU68030 EQU 3 ;CPU type = 68030 <1.3>
|
||
sCPU68040 EQU 4 ;CPU type = 68040 <1.4>
|
||
|
||
;=====================================================================
|
||
;sDRVR directory constants
|
||
;=====================================================================
|
||
sMacOS68000 EQU 1 ;Mac OS, CPU type = 68000
|
||
sMacOS68020 EQU 2 ;Mac OS, CPU type = 68020
|
||
sMacOS68030 EQU 3 ;Mac OS, CPU type = 68030 <1.3>
|
||
sMacOS68040 EQU 4 ;Mac OS, CPU type = 68040 <1.4>
|
||
|
||
|
||
;=====================================================================
|
||
;sResource types
|
||
;=====================================================================
|
||
|
||
;<Category>
|
||
catBoard EQU $0001 ; <1.3>
|
||
catTest EQU $0002 ; <1.3>
|
||
catDisplay EQU $0003 ; <1.3>
|
||
catNetwork EQU $0004 ; <1.3>
|
||
CatScanner EQU $0008 ; scanners bring in data somehow <SM5>
|
||
CatCPU EQU $000A ; <1.3>
|
||
CatIntBus EQU $000C ; <LW2>
|
||
CatProto EQU $0011 ; <H14>
|
||
CatDock EQU $0020 ; <H10>
|
||
|
||
;<Type>
|
||
typBoard EQU $0000 ; <1.3>
|
||
typApple EQU $0001 ; <1.3>
|
||
typVideo EQU $0001 ; <1.3>
|
||
typEtherNet EQU $0001 ; <1.3>
|
||
TypStation EQU $0001 ; <H10>
|
||
TypDesk EQU $0002 ; <H10>
|
||
TypDSP EQU $0004 ; Digital Signal Processor <SM5>
|
||
TypXPT EQU $000B ; <LW2>
|
||
TypSIM EQU $000C ; <LW2>
|
||
TypDebugger EQU $0100 ; <H14>
|
||
|
||
Typ68000 EQU $0002 ; <1.3>
|
||
Typ68020 EQU $0003 ; <1.3>
|
||
Typ68030 EQU $0004 ; <1.3>
|
||
Type68040 EQU $0005 ; <1.4>
|
||
|
||
TypAppleII EQU $0015 ; <5>
|
||
|
||
;Driver Interface : <id.SW>
|
||
DrSwMacCPU EQU 0 ; <1.3>
|
||
drSwApple EQU 1 ; <1.3>
|
||
DrSwAppleIIe EQU $0001 ; <5>
|
||
DrSwMacsBug EQU $0104 ; <H14>
|
||
|
||
;Driver Interface : <id.SW><id.HW>
|
||
drHwTFB EQU 1
|
||
drHw3Com EQU 1
|
||
DrHwGemini EQU 1 ; <H10>
|
||
DrHwDeskBar EQU 1 ; <H10>
|
||
DrHwATT3210 EQU $0001 ; Apple Cyclone's DSP <SM5>
|
||
drHwBSC EQU 3
|
||
drHwJMFB EQU 25 ; 4•8/8•24 ROM Support <3>
|
||
DrHwBootBug EQU $0100 ; <H14>
|
||
|
||
; CPU board IDs - <catBoard> <typBoard> <0000> <0000>
|
||
|
||
MIIBoardId EQU $0010 ; Mac II Board ID
|
||
ciVidBoardID EQU $001F ; Aurora25 board ID
|
||
CX16VidBoardID EQU $0020 ; Aurora16 board ID
|
||
MIIxBoardId EQU $0021 ; Mac IIx Board ID
|
||
SE30BoardID EQU $0022 ; Mac SE/30 Board ID
|
||
MIIcxBoardId EQU $0023 ; Mac IIcx Board ID
|
||
MIIfxBoardId EQU $0024 ; F19 board ID
|
||
EricksonBoardID EQU $0028 ; <3>
|
||
ElsieBoardID EQU $0029 ; <3>
|
||
TIMBoardID EQU $002A ; <2> HJR
|
||
EclipseBoardID EQU $002B ; <3>
|
||
SpikeBoardID EQU $0033 ; <4>
|
||
DBLiteBoardID Equ $0035 ; <7> jmp
|
||
ZydecoBrdID Equ $0036 ; <10> SAM/jmp
|
||
ApolloBoardID Equ $0038 ; <9> jmp
|
||
PDMBrdID Equ $0039 ; •••• Re-used ID, need to confirm with Mark Baumwell •••
|
||
VailBoardID Equ $003A ; <9> jmp
|
||
WombatBrdID Equ $003B ; <H4><10> SAM/jmp
|
||
ColumbiaBrdID Equ $003C ; <9> jmp
|
||
CycloneBrdID Equ $003D ; <9> jmp
|
||
CompanionBrdID Equ $003E ; <10> SAM/jmp
|
||
DartanianBoardID Equ $0040 ; Dart Internal Vid board ID <H7> HJR
|
||
DartExtVidBoardID Equ $0046 ; Dart External Vid board ID <H12> HJR
|
||
HookBoardID Equ $0047 ; Hook internal video board ID <H19>
|
||
EscherBoardID Equ $004A ; Board ID for Escher (CSC).
|
||
POBoardID Equ $004D ; Board ID for Primus/Optimus/Aladdin <H18>
|
||
TempestBrdID Equ $0050 ; Non-official Board ID for Tempest
|
||
BlackBirdBdID Equ $0058 ; Board ID for BlackBird (CSC).
|
||
BBExtVidBdID Equ $0059 ; Board ID for BlackBird built-in external video.
|
||
YeagerBoardID Equ $005A ; Board ID for Yeager (CSC)
|
||
BBEtherNetBdID Equ $005E ; Board ID for BlackBird Ethernet board.
|
||
|
||
; other board IDs
|
||
|
||
BoardIDDblExp EQU $002F ; <5>
|
||
DAFBPDSBoardID Equ $0037 ; <8><9> jmp
|
||
MonetBoardID Equ $0048 ; <H16> djw
|
||
|
||
; CPU board types - <CatCPU> <Typ680x0> <DrSwMacCPU>
|
||
|
||
drHWMacII EQU $0001 ; Mac II hw ID
|
||
drHwMacIIx EQU $0002 ; Mac IIx hw ID
|
||
drHWSE30 EQU $0003 ; Mac SE/30 hw ID
|
||
drHwMacIIcx EQU $0004 ; Mac IIcx hw ID
|
||
drHWMacIIfx EQU $0005 ; Mac IIfx hw ID
|
||
drHWF19 EQU $0005 ; F19 hw ID
|
||
|
||
; video hardware id's - <catDisplay><typVideo>
|
||
|
||
drHwRBV EQU $0018 ; Aurora25/16 hw ID
|
||
drHwElsie EQU $001A ; <3>
|
||
drHwTim EQU $001B ; <2> HJR
|
||
drHwDAFB EQU $001C ; <5>
|
||
drHwGSC Equ $001E ; (Renamed from GSC drHWDBLite)
|
||
drHwDAFBPDS Equ $001F ; <8> jmp
|
||
drHWVSC Equ $0020 ; <H9>
|
||
drHwApollo Equ $0021 ; <9> jmp
|
||
drHwSonora Equ $0022 ; <H5>
|
||
drHwReserved2 Equ $0023 ; <H5>
|
||
drHwColumbia Equ $0024 ; <9> jmp
|
||
drHwCivic Equ $0025 ; <9> jmp
|
||
drHWPBLCD Equ $0027 ; <H16> djw
|
||
drHWCSC Equ $0028 ; <H17> jmp
|
||
drHwJET Equ $0029 ; Upgraded VSC.
|
||
drHWMEMCjr Equ $002A ; <H18>
|
||
drHWATI Equ $0055 ; <H17> jmp
|
||
|
||
|
||
; other drHW id's for built-in functions
|
||
|
||
DrHwSonic EQU $0110 ; <5>
|
||
DrHwMace Equ $0114 ; <SM5>
|
||
DrHwDblExp EQU $0001 ; <5>
|
||
|
||
|
||
|
||
;=====================================================================
|
||
;Declaration ROM Id's
|
||
;=====================================================================
|
||
;---------------------------------------------------------------------
|
||
; Misc
|
||
;---------------------------------------------------------------------
|
||
endOfList EQU 255 ;End of list
|
||
|
||
|
||
;---------------------------------------------------------------------
|
||
; sResource List. Category: All
|
||
;---------------------------------------------------------------------
|
||
;The following Id's are common to all sResources.
|
||
sRsrcType EQU 1 ;Type of sResource
|
||
sRsrcName EQU 2 ;Name of sResource
|
||
sRsrcIcon EQU 3 ;Icon
|
||
sRsrcDrvrDir EQU 4 ;Driver directory
|
||
sRsrcLoadRec EQU 5 ;Load record
|
||
sRsrcBootRec EQU 6 ;sBoot record
|
||
sRsrcFlags EQU 7 ;sResource Flags
|
||
sRsrcHWDevId EQU 8 ;Hardware Device Id
|
||
minorBaseOS EQU 10 ;Offset to base of sResource in minor space.
|
||
minorLength EQU 11
|
||
majorBaseOS EQU 12 ;Offset to base of sResource in Major space
|
||
majorLength EQU 13
|
||
sRsrcTest EQU 14 ; sBlock diagnostic code
|
||
sRsrcCIcon EQU 15 ; CQD color icon
|
||
sRsrcIcl8 EQU 16 ; 'icl8' 8-bit color icon data <1.2/DAF>
|
||
sRsrcIcl4 EQU 17 ; 'icl4' 4-bit color icon data <1.2/DAF>
|
||
|
||
sGammaDir EQU 64 ; spID for gamma directory <1.2/DAF>
|
||
sRsrcVidNames EQU 65 ; spID for video name directory <1.2/DAF>
|
||
|
||
sRsrcDock EQU 80 ; spID for Docking Handlers <H10>
|
||
sDiagRec EQU 85 ; spID for board diagnostics <H10>
|
||
|
||
sVidAuxParams EQU 123 ; more video info for Display Manager -- timing information
|
||
|
||
sDebugger EQU 124 ; DatLstEntry for debuggers indicating video anamolies
|
||
; bits 2:0 - video mode index (minus 80) to save framebuffer when switching <H15>
|
||
|
||
sVidAttributes EQU 125 ; video attributes data field (optional,word)
|
||
fLCDScreen EQU 0 ; bit 0 - when set is LCD, else is CRT
|
||
fBuiltInDisplay EQU 1 ; 1 - when set is built-in (in the box) display, else not <H13>
|
||
fDefaultColor EQU 2 ; 2 - when set display prefers multi-bit color, else gray <H15>
|
||
fActiveBlack EQU 3 ; 3 - when set black on display must be written, else display is naturally black <H15>
|
||
fDimMinAt1 Equ 4 ; 4 - when set should dim backlight to level 1 instead of 0
|
||
|
||
sVidParmDir EQU 126 ;
|
||
|
||
; The Extended Format Header Block contains a pseudo-sRsrc list. The ID for the
|
||
; sResource directory directory (or super sResource diretory) is $FE.
|
||
|
||
sSuperDir Equ 254 ;
|
||
|
||
;---------------------------------------------------------------------
|
||
; sResource List. Category: Board
|
||
;---------------------------------------------------------------------
|
||
;The following Id's are common to all Board sResources.
|
||
sBlockTransferInfo EQU 20 ; general slot block xfer info <LW4>
|
||
sMaxLockedTransferCount EQU 21 ; slot max. locked xfer count <LW4>
|
||
boardId EQU 32 ;Board Id
|
||
pRAMInitData EQU 33 ;sPRAM init data
|
||
primaryInit EQU 34 ;Primary init record
|
||
timeOutConst EQU 35 ;Time Out constant.
|
||
vendorInfo EQU 36 ;Vendor information List {See Vendor List, below}
|
||
boardFlags EQU 37 ;Board Flags
|
||
secondaryInit EQU 38 ;Secondary init record <1.1>
|
||
|
||
;---------------------------------------------------------------------
|
||
; sResource List. Category: Board
|
||
;---------------------------------------------------------------------
|
||
;The following Id's are associated with all CPU sResources.
|
||
MajRAMSp EQU 129 ;ID of Major RAM space.
|
||
MinROMSp EQU 130 ;ID of Minor ROM space.
|
||
|
||
|
||
;---------------------------------------------------------------------
|
||
;Vendor List
|
||
;---------------------------------------------------------------------
|
||
;The following Id's are associated with the VendorInfo id
|
||
vendorId EQU 1 ;Vendor Id
|
||
serialNum EQU 2 ;Serial number
|
||
revLevel EQU 3 ;Revision level
|
||
partNum EQU 4 ;Part number
|
||
Date EQU 5 ;ID of date field in vendor info list.
|
||
|
||
|
||
;---------------------------------------------------------------------
|
||
; sResource List. Category_Type: Test_One
|
||
;---------------------------------------------------------------------
|
||
;The following Id's are common to all Test_One_x sResources.
|
||
testByte EQU 32 ;Test byte.
|
||
testWord EQU 33 ;Test Word.
|
||
testLong EQU 34 ;Test Long.
|
||
testString EQU 35 ;Test String.
|
||
|
||
;--------------------------------------------------------------------- ;start <LW4>
|
||
; sResource List. Category: Display Type: Video
|
||
;---------------------------------------------------------------------
|
||
;The following Id's are common to all Mode sResources in Display_Video
|
||
;functional sResources.
|
||
mBlockTransferInfo EQU 5 ; slot block xfer info PER MODE
|
||
mMaxLockedTransferCount EQU 6 ; slot max. locked xfer count PER MODE ;end <LW4>
|
||
|
||
;*************************************************************
|
||
;Macros
|
||
;*************************************************************
|
||
;=============================================================
|
||
; Offset List Entry
|
||
;=============================================================
|
||
MACRO
|
||
OSLstEntry &Id,&Offset
|
||
DC.L (&Id<<24)++((&Offset-*)**$00FFFFFF)
|
||
ENDM
|
||
|
||
;=============================================================
|
||
; Data List Entry
|
||
;=============================================================
|
||
MACRO
|
||
DatLstEntry &Id,&Data
|
||
DC.L (&Id<<24)+&Data
|
||
ENDM
|
||
|
||
ENDIF ; ...already included |