mirror of
https://github.com/elliotnunn/mac-rom.git
synced 2024-12-28 01:29:20 +00:00
4325cdcc78
Resource forks are included only for .rsrc files. These are DeRezzed into their data fork. 'ckid' resources, from the Projector VCS, are not included. The Tools directory, containing mostly junk, is also excluded.
113 lines
3.8 KiB
Plaintext
113 lines
3.8 KiB
Plaintext
;
|
|
; File: SuperInit.a
|
|
;
|
|
; Written by: Mike Puckett, October 28, 1991.
|
|
;
|
|
; Contains: The code that determines which sRsrc directory directory
|
|
; to select.
|
|
;
|
|
; Copyright: © 1991-1992 by Apple Computer, Inc., all rights reserved.
|
|
;
|
|
; This file is used in these builds: Mac32
|
|
;
|
|
; Change History (most recent first):
|
|
;
|
|
; <SM2> 10/28/92 SWC Changed VideoEqu.a->Video.a and ShutdownEqu.a->Shutdown.a.
|
|
; <1> 10/6/92 GDW New location for ROMLink tool.
|
|
; <SM2> 6/4/92 KW (jmp,H7) Changed the ÒsRsrcZydecoDirÓ name to the more generic
|
|
; ÒsRsrcBFBasedDirÓ (BF=BoxFlag) name.
|
|
; <SM1> 5/2/92 kc Roll in Horror. Comments follow:
|
|
; <H6> 01/11/92 jmp Eliminated the dependencies on BoxFlag.
|
|
; <H5> 12/16/91 HJR Fix header.
|
|
; <H3> 12/12/91 jmp Added support for DBLiteLC.
|
|
; <H2> 11/27/91 jmp Added support for Sonora-based machines.
|
|
; <1> 10/29/91 jmp first checked in
|
|
|
|
;---------------------------------------------------------------------
|
|
; Notes
|
|
;---------------------------------------------------------------------
|
|
; In an effort to keep things simple (yet eliminate the use of BoxFlag),
|
|
; the VideoInfo data structure has been modified to contain two new
|
|
; fields. One of these fields contains the particular sRsrc directory
|
|
; directory (or Super sRsrc directory) to select. However, some CPUs
|
|
; donÕt have built-in video (e.g., the IIfx), so, by definition, those
|
|
; CPUs should be placed into the BoxFlag-based sRsrc directory. The other
|
|
; field is a Òway outÓ in cases where BoxFlag is necessary -- i.e., it
|
|
; contains the BoardSRsrcID. For CPUs that fall into the BoxFlag-based
|
|
; sRsrc directory, this field is just zero, indicating that the
|
|
; board sRsrc is a derivative of BoxFlag. Where the BoardSRsrcID
|
|
; field of VideoInfo is non-zero, this is the board sRsrc ID of
|
|
; particular family of CPUs using the same video controller.
|
|
;---------------------------------------------------------------------
|
|
|
|
STRING C
|
|
|
|
PRINT OFF
|
|
LOAD 'StandardEqu.d'
|
|
|
|
INCLUDE 'DockingEqu.a'
|
|
INCLUDE 'EgretEqu.a'
|
|
INCLUDE 'GestaltEqu.a'
|
|
INCLUDE 'GestaltPrivateEqu.a'
|
|
INCLUDE 'HardwarePrivateEqu.a'
|
|
INCLUDE 'IOPrimitiveEqu.a'
|
|
INCLUDE 'PowerPrivEqu.a'
|
|
INCLUDE 'ROMEqu.a'
|
|
INCLUDE 'Video.a'
|
|
INCLUDE 'SlotMgrEqu.a'
|
|
INCLUDE 'ShutDown.a'
|
|
INCLUDE 'SonicEqu.a'
|
|
INCLUDE 'UniversalEqu.a'
|
|
|
|
INCLUDE 'DepVideoEqu.a'
|
|
PRINT ON
|
|
|
|
SEG '_sSuperInitRec'
|
|
MACHINE MC68020
|
|
|
|
;---------------------------------------------------------------------
|
|
; Header
|
|
;---------------------------------------------------------------------
|
|
|
|
|
|
lSuperInit PROC
|
|
|
|
Dc.b sExec2 ; Header
|
|
Dc.b sCPU68020
|
|
Dc.w 0
|
|
Dc.l BeginSuperInit-*
|
|
|
|
;---------------------------------------------------------------------
|
|
; Local variables, definitions, etc....
|
|
;---------------------------------------------------------------------
|
|
|
|
;---------------------------------------------------------------------
|
|
; Data
|
|
;---------------------------------------------------------------------
|
|
|
|
;---------------------------------------------------------------------
|
|
; Main
|
|
;---------------------------------------------------------------------
|
|
|
|
With SEBlock,ProductInfo,VideoInfo
|
|
BeginSuperInit
|
|
Clr.w seStatus(A0) ; Flag that there are no problems (zero in hi-byte of seStatus).
|
|
Move.b #sRsrcBFBasedDir,D0 ; Just assume the BoxFlag-based sRsrc directory for now.
|
|
|
|
Move.l UnivInfoPtr,A1 ; Get a pointer to the Universal Info.
|
|
Adda.l VideoInfoPtr(A1),A1 ; Point to the VideoInfo.
|
|
|
|
Cmpa.l #0,A1 ; If there is no VideoInfo record,
|
|
Beq.s @Done ; then weÕre done.
|
|
Move.b SuperSRsrcDirID(A1),D0 ; Otherwise, use the defined Super sRsrcDir ID.
|
|
|
|
@Done Move.b D0,seStatus+1(A0) ; Return the super sRsrc directory id.
|
|
Rts ; Go home.
|
|
|
|
EndWith
|
|
|
|
_EndsSuperInitRec
|
|
ENDP
|
|
|
|
END
|