sys7.1-doc-wip/Interfaces/AIncludes/ROMEqu.a
2019-07-27 22:37:48 +08:00

388 lines
17 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;
; 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 itll
; 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 Sams previous check-in didnt seem to stick, so Ive 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