; ; File: DeclData.a -> VSCDeclData.a ; ; Written by: Gary Rensberger, Russ Emmons, Helder Ramalho ; ; Copyright: © 1988-1993 by Apple Computer, Inc., all rights reserved. ; ; This file is used in these builds: ConfigRom ; ; Change History (most recent first): ; ; 12/13/93 PN Roll in KAOs and Horror changes to support Malcom and AJ ; machines ; 12-05-92 jmp Just added an alignment directive. (ItΥll defintiely be nice ; when we can add this to the Slot $0-based DeclData area for ; sharing data.) ; <1> 12-04-92 jmp first checked in ; ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡ ; Pre-SuperMario comments begin here. ; ΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡΡ ; 7/14/92 HJR Removed Apple// GS Monitor from the DeclRom. ; 7/13/92 HJR Updated the _PartNum string and the _BdNameDartanian. ;
7/11/92 HJR Update _sVidParms_VSC_SVGA Parameter according to Hardware ; specifications. ;
6/30/92 HJR Modified _sVidParms_VSC_SVGA Parameter according to VESA ; specifications. Update dot clock for _sVidParms_VSC_GF. Some ; general cleanup. ;

6/11/92 djw Adjusted VSCMaxSz since other parts of the ROM have moved. ;

6/5/92 HJR Adjusted VSCMaxSz since other parts of the ROM have moved a ; little. ;

6/1/92 HJR Added Docking Functional sRsc. ;

4/24/92 HJR first checked in ; <12> 3/4/92 RLE turn on secondary init, yank scc init code ; <11> 3/4/92 GMR Adjusted SVGA parameters (clock, video params). ; <10> 2/27/92 RLE add new include file for primary init to access ; <9> 2/20/92 RLE turn off secondary init--that all happens at docking ; initialization time now ; <8> 2/19/92 RLE added support for switching to new scc ports on Gemini or ; Deskbar ; <6> 2/14/92 RLE resupress printing of include files ; <5> 2/13/92 RLE add secondary init (scc) ; <4> 2/12/92 GMR Added new Motorola PLL control value for SuperVGA mode. ; <3> 2/10/92 GMR Added PLL config values for new Motorola part. One more value is ; needed (SuperVGA). ; <2> 2/6/92 RLE add docking, diagnostic, and deskbar support ; <1> 1/28/92 GMR first checked in ;------------------------------------------------------------------- ; ; General structure: ; ; [Format/Header] ; | ; | ; [sResource Directory] ; / \ \ ; / \ \___________________ ; / \ \ ; / \ [Docking sResource] ; [Board sResource] [Video sResource] - Docking Handler ; - Primary Init. - Driver Directory. ; - Vendor Info. - Parameters for 1, 2 & 4-bit modes. ; - Diagnostic Routines ; ; ;------------------------------------------------------------------- ; ;------------------------------------------------------------------- ; Hardware code names that pop up in the config ROM code: ;------------------------------------------------------------------- ; Ariel - the (Brooktree-like) CLUT/DAC in the Portable machines. ; VSC - kitchen-sink ASIC that is DAFB-like in itΥs programability, but where video ; is just one of itΥs subfunctions. ;------------------------------------------------------------------- ; Displays supported by this code (ST=safe title interlaced modes, FF=full frame): ;------------------------------------------------------------------- ; Hi-Res (HR) - 640*480, 67Hz refresh, 30.2400MHz dot clock, RGB and grayscale (8/16) ; Rubik (GS) - 512*384, 60Hz refresh, 15.6672MHz dot clock, RGB (16/16) ; Portrait (FP & RGBFP) - 640*870, 75Hz refresh, 57.2832MHz dot clock, RGB and grayscale (4/8) ; Goldfish (LP) - 832*624, 75Hz refresh, 57.6288MHz dot clock, RGB (8/16) ; VGA - 640*480, 59Hz refresh, 25.1750MHz dot clock, RGB (8/16) ; SuperVGA - 800*600, 56Hz refresh, 36.0000MHz dot clock, RGB (8/16) ; NTSC_ST - 512*384, 60Hz interlaced refresh, 12.2700MHz dot clock, RGB (16/16) ; NTSC_FF - 640*480, 60Hz interlaced refresh, 12.2700MHz dot clock, RGB (8/16) ; PAL_ST - 614*460, 50Hz interlaced refresh, 14.7500MHz dot clock, RGB (8/16) ; PAL_FF - 768*576, 50Hz interlaced refresh, 14.7500MHz dot clock, RGB (8/16) ;------------------------------------------------------------------- PRINT OFF LOAD 'StandardEqu.d' INCLUDE 'GestaltEqu.a' ; {AIncludes} Equates INCLUDE 'ROMEqu.a' INCLUDE 'Video.a' INCLUDE 'ShutDown.a' INCLUDE 'DockingEqu.a' INCLUDE 'HardwarePrivateEqu.a' INCLUDE 'PowerPrivEqu.a' INCLUDE 'SlotMgrEqu.a' INCLUDE 'UniversalEqu.a' INCLUDE 'VSCEqu.a' PRINT ON CPUDeclData PROC EXPORT STRING C MACHINE MC68020 EXPORT VSCDeclROM ;------------------------------------------------------------- ; Macros ;------------------------------------------------------------- MACRO DateStr dc.b '&SYSDATE' ENDM ;------------------------------------------------------------- ;------------------------------------------------------------- ;------- sRsrc Directory ------------------------------- ;------------------------------------------------------------- ;------------------------------------------------------------- DeclData _sRsrcDir OSLstEntry sRsrc_Board,_sRsrc_Board ; Board sResources ;------------------------------------------------------------- ; Functional sRsrcs for VSC video. ;------------------------------------------------------------- OSLstEntry sRsrc_Vid_VSC_FPb,_sRsrc_Vid_VSC_FPb ; Full-Page (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_FPa,_sRsrc_Vid_VSC_FPa ; Full-Page (1,2,4) OSLstEntry sRsrc_Vid_VSC_GS,_sRsrc_Vid_VSC_GS ; Rubik (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_RGBFPb,_sRsrc_Vid_VSC_RGBFPb ; RGB Full-Page (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_RGBFPa,_sRsrc_Vid_VSC_RGBFPa ; RGB Full-Page (1,2,4) OSLstEntry sRsrc_Vid_VSC_HR,_sRsrc_Vid_VSC_HR ; HiRes (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_MSB1,_sRsrc_Vid_VSC_HR ; MSB1 (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_VGA,_sRsrc_Vid_VSC_VGA ; VGA (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_SVGA,_sRsrc_Vid_VSC_SVGA ; SuperVGA (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_GF,_sRsrc_Vid_VSC_GF ; GoldFish (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_MSB2,_sRsrc_Vid_VSC_GF ; MSB2 (1,2,4,8) OSLstEntry sRsrc_Vid_VSC_1K,_sRsrc_Vid_VSC_1K ; 1024x768 (1,2,4) ;------------------------------------------------------------- ; Functional sRsrc for Docking Stuff ;------------------------------------------------------------- OSLstEntry sRsrc_Docking,_sRsrc_Docking ; References the docking sResource DatLstEntry EndOfList,0 ;------------------------------------------------------------- ;------------------------------------------------------------- ;------- Board sResource ------------------------------- ;------------------------------------------------------------- ;------------------------------------------------------------- _sRsrc_Board OSLstEntry sRsrcType,_BoardType ; OSLstEntry sRsrcName,_BdName ; OSLstEntry sRsrcIcon,_VidICONVSC ; DatLstEntry BoardId,BBExtVidBdID ; OSLstEntry PrimaryInit,_sPInitRecVSC ; OSLstEntry VendorInfo,_VendorInfo ; OSLstEntry SecondaryInit,_sSInitRec ; OSLstEntry sRsrcVidNames,_VSCVidNameDir ; OSLstEntry sVidAuxParams,_VidAuxDir_VSC ; OSLstEntry sVidParmDir,_VidParmDir_VSC ; DatLstEntry EndOfList,0 ; _BdName Dc.b 'Keystone Built-In External Video' ; Align 2 STRING C ;------------------------------------------------------------- ; Video Name Directory ;------------------------------------------------------------- ; ; A name directory is structured identically to that of a gamma directory. ; For each possible video sRsrc spID, there is a corresponding OSLstEntry ; pointing to the name data. Also, each name data block contains a word-sized ; localization id. ; _VSCVidNameDir OSLstEntry sRsrc_Vid_VSC_FPb,_sName_FPb OSLstEntry sRsrc_Vid_VSC_FPa,_sName_FP OSLstEntry sRsrc_Vid_VSC_GS,_sName_GS OSLstEntry sRsrc_Vid_VSC_RGBFPb,_sName_RGBFPb OSLstEntry sRsrc_Vid_VSC_RGBFPa,_sName_RGBFP OSLstEntry sRsrc_Vid_VSC_HR,_sName_HR OSLstEntry sRsrc_Vid_VSC_MSB1,_sName_HR OSLstEntry sRsrc_Vid_VSC_VGA,_sName_VGA OSLstEntry sRsrc_Vid_VSC_SVGA,_sName_SVGA OSLstEntry sRsrc_Vid_VSC_GF,_sName_GF OSLstEntry sRsrc_Vid_VSC_MSB2,_sName_GF OSLstEntry sRsrc_Vid_VSC_1K,_sName_1K DatLstEntry EndOfList,0 _sName_FP DC.L EndName_FP-_sName_FP DC.W 128 ; localization resID DC.B 'Κ640 x 870, 75 Hz (Grayscale Only)' ; ALIGN 2 EndName_FP _sName_GS DC.L EndName_GS-_sName_GS DC.W 129 ; localization resID DC.B 'Κ512 x 384, 60 Hz' ; ALIGN 2 EndName_GS _sName_GF DC.L EndName_GF-_sName_GF DC.W 131 ; localization resID DC.B 'Κ832 x 624, 75 Hz' ; ALIGN 2 EndName_GF _sName_HR DC.L EndName_HR-_sName_HR DC.W 133 ; localization resID DC.B 'Κ640 x 480, 67 Hz' ; ALIGN 2 EndName_HR _sName_VGA DC.L EndName_VGA-_sName_VGA DC.W 134 ; localization resID DC.B 'Κ640 x 480, 60 Hz (VGA)' ; ALIGN 2 EndName_VGA _sName_SVGA DC.L EndName_SVGA-_sName_SVGA DC.W 135 ; localization resID DC.B 'Κ800 x 600, 56 Hz (SVGA)' ; ALIGN 2 EndName_SVGA _sName_RGBFP DC.L EndName_RGBFP-_sName_RGBFP DC.W 136 ; localization resID DC.B 'Κ640 x 870, 75 Hz' ; ALIGN 2 EndName_RGBFP _sName_FPb DC.L EndName_FPb-_sName_FPb DC.W 160 ; localization resID DC.B 'Κ640 x 818, 75 Hz (Grayscale Only)' ; ALIGN 2 EndName_FPb _sName_RGBFPb DC.L EndName_RGBFPb-_sName_RGBFPb DC.W 162 ; localization resID DC.B 'Κ640 x 818, 75 Hz' ; ALIGN 2 EndName_RGBFPb _sName_1K DC.L EndName_1K-_sName_1K DC.W 163 ; localization resID DC.B '1024 x 768, 60 Hz (VESA)' ; ALIGN 2 EndName_1K STRING C ;------------------------------------------------------------- ; Board Type ;------------------------------------------------------------- _BoardType DC.W CatBoard ; DC.W TypBoard ; DC.W 0 ; DC.W 0 ; ;------------------------------------------------------------- ; Vendor Info ;------------------------------------------------------------- _VendorInfo OSLstEntry VendorId,_VendorId ; offset to vendor ID OSLstEntry RevLevel,_RevLevel ; offset to revision OSLstEntry PartNum,_PartNum ; offset to part number descriptor OSLstEntry Date,_Date ; offset to ROM build date descriptor DatLstEntry EndOfList,0 ; _VendorId DC.L 'Copyright © 1991-1993 by Apple Computer, Inc. All Rights Reserved.' _RevLevel Dc.b 'Macintosh Built-In External Video, Revision 2.0' ; Part numbers no longer make much sense, so weΥll just put an appropriate string here. ; _PartNum Dc.l 'The Keystone (ViSC) DeclROM' ; Appropriate string. _Date Dc.b '11/10/93' ;------------------------------------------------------------- ;------------------------------------------------------------- ;------- Functional sResources ----------------------- ;------------------------------------------------------------- ;------------------------------------------------------------- ALIGN 4 _sRsrc_Vid_VSC_FPa OSLstEntry sRsrcType,_VideoTypeVSC OSLstEntry sRsrcName,_VideoNameVSC OSLstEntry sRsrcDrvrDir,_VidDrvrDirVSC DatLstEntry sRsrcFlags,(0|(1< DC.W TypStation ; DC.W DrSwApple ; DC.W DrHwDeskBar ; _DockingName DC.L 'Dock_Desk_Apple_ViSC/Keystone' ; Align 2 _DockingBlock DC.L _EndDockingBlock-_DockingBlock Include 'VSCDockingHandler.a' Align 2 _EndDockingBlock ;------------------------------------------------------------- ; Resource Types ;------------------------------------------------------------- _VideoTypeVSC Dc.w CatDisplay ; Video sResource: Dc.w TypVideo ; Dc.w DrSwApple ; Dc.w DrHwVSC ; String C ;------------------------------------------------------------- ; Resource Names ;------------------------------------------------------------- _VideoNameVSC Dc.b 'Display_Video_Apple_ViSC' Align 2 ;------------------------------------------------------------- ; Resource Icons ;------------------------------------------------------------- ; The current implementation of the Monitors cdev (i.e., versions 4.x - 7.0) lamely looks at the board ; sRsrc for its icon. And, for 7.0, MonitorsΥ current icon-plotting mechanism isnΥt very studly. So, ; I have come up with in interrim solution: For IΥll only include 1-bit icons at the CPU (board sResource) ; level. ; _VidICONVSC Dc.l $3FFFE000,$40001000,$4FFF9000,$50005000 Dc.l $55505000,$50005000,$55005000,$50007FFC Dc.l $54004002,$50004FF2,$5000500A,$5000554A Dc.l $4FFFD00A,$4000550A,$3FFFD00A,$0800540A Dc.l $3BFF500A,$2000540A,$3FFFD00A,$0000500A Dc.l $3FFE500A,$40014FF2,$4FF94002,$50053FFC Dc.l $55050810,$50057BDE,$54054002,$50057FFE Dc.l $50050000,$4FF90000,$40010000,$3FFE0000 ;------------------------------------------------------------- ; Driver Directory ;------------------------------------------------------------- _VidDrvrDirVSC OSLstEntry sMacOS68020,_VSCDrvrDir ; Driver directory for the Mac OS. DatLstEntry EndOfList,0 ; ;------------------------------------------------------------- ; Minor/Major Bases/Lengths ;------------------------------------------------------------- ; Our video hardware implementations have a vRAM offset of zero. It actually starts at 00100000 ; into the slot space, so we have setup the offset in defmBaseOffset (see the vidParams below). ; _MinorBaseVSC DC.L defMinorBase ; Video RAM Offset is 0 _MinorLength_VSC_FPa Dc.l MinorLength_VSC_FPa _MinorLength_VSC_FPb Dc.l MinorLength_VSC_FPb _MinorLength_VSC_GS Dc.l MinorLength_VSC_GS _MinorLength_VSC_HR Dc.l MinorLength_VSC_HR _MinorLength_VSC_GF Dc.l MinorLength_VSC_GF _MinorLength_VSC_SVGA Dc.l MinorLength_VSC_SVGA _MinorLength_VSC_1K Dc.l MinorLength_VSC_1K STRING C ;------------------------------------------------------------- ; Gamma Directory ;------------------------------------------------------------- ColorGammaID Equ 2000 HiResGammaID Equ 2001 GrayGammaID Equ 2002 RubikGammaID Equ 2003 _GammaDir_GF _GammaDir_RGBFP OSLstEntry 128,HiResGamma OSLstEntry 129,ColorGamma DatLstEntry EndOfList,0 _GammaDir_HR _GammaDir_VGA _GammaDir_SVGA _GammaDir_1K OSLstEntry 128,HiResGamma DatLstEntry EndOfList,0 _GammaDir_FP OSLstEntry 128,GrayGamma DatLstEntry EndOfList,0 _GammaDir_GS OSLstEntry 128,RubikGamma DatLstEntry EndOfList,0 ColorGamma DC.L EndColorGamma-ColorGamma DC.W ColorGammaID ; gamma res ID DC.B 'Page-White Gamma' ALIGN 2 DC.W $0000 ; gVersion DC.W $0000 ; gType DC.W $0000 ; gFormulaSize DC.W $0003 ; gChanCnt DC.W $0100 ; gDataCnt DC.W $0008 ; gChanWidth DC.L $00030609,$0C101012,$13151616,$181B1C1E ; red channel DC.L $1F222326,$282B2C2F,$3234373A,$3C3F4041 DC.L $42434445,$46474749,$4A4B4C4D,$4E4F5051 DC.L $52535454,$56565758,$595A5B5C,$5D5E5F60 DC.L $61626364,$65666768,$696A6B6C,$6D6E6F70 DC.L $71727273,$74757677,$78797A7A,$7B7C7D7E DC.L $7F818283,$83848586,$8788898A,$8A8B8C8D DC.L $8E8F9091,$92939394,$95969798,$98999A9B DC.L $9C9D9E9F,$A0A1A1A2,$A3A4A4A5,$A6A7A8A8 DC.L $A9AAABAC,$ADADAEAF,$B0B1B2B2,$B3B4B5B5 DC.L $B6B7B8B8,$B9BABBBC,$BCBDBEBF,$C0C0C1C2 DC.L $C3C3C4C5,$C6C6C7C8,$C9C9CACB,$CCCDCDCE DC.L $CFD0D1D1,$D2D3D4D4,$D5D6D7D7,$D8D9DADA DC.L $DBDCDDDE,$DEDFE0E1,$E1E2E3E4,$E4E5E6E7 DC.L $E7E8E9EA,$EAEBECED,$EEEEEFF0,$F1F1F2F3 DC.L $F4F4F5F6,$F7F8F8F9,$FAFBFBFC,$FDFEFFFF DC.L $00030609,$0C101018,$20202223,$24252728 ; green channel DC.L $292C2D2E,$30323437,$383A3D3F,$40414242 DC.L $43444445,$46474849,$4A4A4B4C,$4D4E4F50 DC.L $51525354,$55565758,$595B5C5D,$5E5F6061 DC.L $62636465,$65666768,$696A6B6C,$6D6E6F70 DC.L $71717273,$74747576,$77787979,$7A7B7C7D DC.L $7E7F8081,$82838484,$85868788,$88898A8B DC.L $8C8D8E8E,$8F909192,$93939495,$96969798 DC.L $999A9A9B,$9C9D9E9E,$9FA0A1A2,$A2A3A4A5 DC.L $A5A6A7A8,$A8A9AAAB,$ABACADAE,$AFAFB0B1 DC.L $B2B2B3B4,$B5B5B6B7,$B7B8B9BA,$BABBBCBD DC.L $BDBEBFC0,$C1C1C2C3,$C3C4C5C6,$C6C7C8C9 DC.L $C9CACBCC,$CCCDCECF,$CFD0D1D2,$D2D3D4D4 DC.L $D5D6D6D7,$D8D9D9DA,$DBDCDCDD,$DEDEDFE0 DC.L $E1E1E2E3,$E4E4E5E6,$E6E7E8E9,$E9EAEBEC DC.L $ECEDEEEF,$EFF0F1F2,$F2F3F4F4,$F5F6F7F7 DC.L $00020508,$0A0D1010,$10202022,$23232425 ; blue channel DC.L $25272829,$2A2C2D2E,$2F303233,$34363738 DC.L $3A3C3D3F,$40414142,$42434444,$45454647 DC.L $4748494A,$4A4B4C4D,$4D4E4F4F,$51515253 DC.L $54555656,$5758595A,$5B5C5D5E,$5F606061 DC.L $62626364,$64656666,$67686969,$6A6B6C6C DC.L $6D6E6F6F,$70717272,$73747475,$76777778 DC.L $79797A7B,$7C7C7D7E,$7F808182,$82838484 DC.L $85868687,$8888898A,$8A8B8C8D,$8D8E8F90 DC.L $90919192,$93939495,$95969797,$9899999A DC.L $9B9B9C9D,$9D9E9FA0,$A0A1A1A2,$A3A3A4A4 DC.L $A5A6A6A7,$A7A8A9A9,$AAABABAC,$ADADAEAF DC.L $AFB0B0B1,$B2B2B3B3,$B4B5B5B6,$B6B7B8B8 DC.L $B9BABABB,$BBBCBDBD,$BEBFBFC0,$C0C1C2C2 DC.L $C3C3C4C5,$C5C6C6C7,$C8C8C9C9,$CACBCBCC DC.L $CCCDCECE,$CFD0D0D1,$D1D2D3D3,$D4D4D5D6 EndColorGamma HiResGamma DC.L EndHiResGamma-HiResGamma DC.W HiResGammaID ; gamma res ID DC.B 'Mac Std Gamma' ALIGN 2 DC.W $0000 ; gVersion DC.W $0000 ; gType DC.W $0000 ; gFormulaSize DC.W $0001 ; gChanCnt DC.W $0100 ; gDataCnt DC.W $0008 ; gChanWidth DC.L $0005090B,$0E101315,$17191B1D,$1E202224 DC.L $2527282A,$2C2D2F30,$31333436,$37383A3B DC.L $3C3E3F40,$42434445,$4748494A,$4B4D4E4F DC.L $50515254,$55565758,$595A5B5C,$5E5F6061 DC.L $62636465,$66676869,$6A6B6C6D,$6E6F7071 DC.L $72737475,$76777879,$7A7B7C7D,$7E7F8081 DC.L $81828384,$85868788,$898A8B8C,$8C8D8E8F DC.L $90919293,$94959596,$9798999A,$9B9B9C9D DC.L $9E9FA0A1,$A1A2A3A4,$A5A6A6A7,$A8A9AAAB DC.L $ABACADAE,$AFB0B0B1,$B2B3B4B4,$B5B6B7B8 DC.L $B8B9BABB,$BCBCBDBE,$BFC0C0C1,$C2C3C3C4 DC.L $C5C6C7C7,$C8C9CACA,$CBCCCDCD,$CECFD0D0 DC.L $D1D2D3D3,$D4D5D6D6,$D7D8D9D9,$DADBDCDC DC.L $DDDEDFDF,$E0E1E1E2,$E3E4E4E5,$E6E7E7E8 DC.L $E9E9EAEB,$ECECEDEE,$EEEFF0F1,$F1F2F3F3 DC.L $F4F5F5F6,$F7F8F8F9,$FAFAFBFC,$FCFDFEFF EndHiResGamma GrayGamma DC.L EndGrayGamma-GrayGamma DC.W GrayGammaID ; gamma res ID DC.B 'Mac Gray Gamma' ; ALIGN 2 DC.W $0000 ; gVersion DC.W $0000 ; gType DC.W $0000 ; gFormulaSize DC.W $0001 ; gChanCnt DC.W $0100 ; gDataCnt DC.W $0008 ; gChanWidth DC.L $000A141D,$23262B2E,$30323437,$393B3C3E DC.L $40414244,$4547484A,$4B4D4E4F,$50515254 DC.L $55565758,$5A5B5C5D,$5E5F6061,$63646566 DC.L $6768696A,$6B6C6D6E,$6F707171,$72737475 DC.L $76777879,$7A7B7C7D,$7E7F8080,$81828384 DC.L $84858687,$88898A8A,$8B8C8D8E,$8F909091 DC.L $92929394,$95969797,$98999A9A,$9B9C9D9E DC.L $9E9FA0A1,$A1A2A3A3,$A4A5A6A7,$A7A8A9AA DC.L $AAABACAD,$ADAEAFAF,$B0B1B2B2,$B3B4B4B5 DC.L $B6B6B7B7,$B8B9B9BA,$BBBCBCBD,$BEBEBFC0 DC.L $C0C1C2C2,$C3C4C5C5,$C6C6C7C8,$C8C9CACB DC.L $CCCDCDCE,$CFCFD0D0,$D1D2D2D3,$D3D4D5D6 DC.L $D6D7D7D8,$D9D9DADA,$DBDCDDDD,$DEDFDFE0 DC.L $E0E1E2E3,$E3E4E5E5,$E6E6E7E7,$E8E8E9EA DC.L $EAEBEBEC,$EDEDEEEF,$F0F0F1F2,$F2F3F4F4 DC.L $F5F5F6F7,$F7F8F9FA,$FAFBFCFC,$FDFEFEFF EndGrayGamma RubikGamma DC.L EndRubikGamma-RubikGamma DC.W RubikGammaID ; gamma res ID DC.B 'Mac RGB Gamma' ALIGN 2 DC.W $0000 ; gVersion DC.W $0000 ; gType DC.W $0000 ; gFormulaSize DC.W $0001 ; gChanCnt DC.W $0100 ; gDataCnt DC.W $0008 ; gChanWidth DC.L $05070809,$0B0C0D0F,$10111214,$15161819 DC.L $1A1C1D1E,$20212223,$24262829,$2A2C2D2F DC.L $30313334,$36373839,$3A3C3D3E,$40414243 DC.L $44454648,$494B4C4D,$4E4F5051,$52535455 DC.L $5758595A,$5B5C5D5E,$5F606163,$63656567 DC.L $67696A6B,$6C6D6E6F,$70717273,$74757677 DC.L $78797A7A,$7B7C7D7E,$7F818283,$83848586 DC.L $8788898A,$8B8C8D8E,$8E909091,$92939394 DC.L $95969798,$999A9B9C,$9D9E9FA0,$A0A1A2A3 DC.L $A4A4A5A6,$A7A8A9AA,$AAACADAD,$AEAEB0B1 DC.L $B2B3B3B4,$B5B6B7B8,$B9B9BABB,$BCBDBEBF DC.L $BFC0C1C2,$C2C3C4C5,$C6C7C8C9,$CACBCCCD DC.L $CDCECECF,$D0D1D2D3,$D3D4D5D6,$D6D7D8D8 DC.L $D9DADBDC,$DDDEDEDF,$E0E1E1E2,$E3E4E4E5 DC.L $E6E7E7E8,$E9EAEBEC,$EDEEEEEF,$EFF0F1F2 DC.L $F3F3F4F5,$F6F7F8F8,$F9F9FAFB,$FCFDFEFF EndRubikGamma ;------------------------------------------------------------- ; Video Timing (Aux) Directory ;------------------------------------------------------------- _VidAuxDir_VSC OSLstEntry sRsrc_Vid_VSC_FPb,_timingApple15x ; Portrait OSLstEntry sRsrc_Vid_VSC_FPa,_timingApple15 OSLstEntry sRsrc_Vid_VSC_GS,_timingApple12 ; Rubik OSLstEntry sRsrc_Vid_VSC_RGBFPb,_timingApple15x ; RGB Portrait OSLstEntry sRsrc_Vid_VSC_RGBFPa,_timingApple15 OSLstEntry sRsrc_Vid_VSC_HR,_timingApple13 ; Hi-Res OSLstEntry sRsrc_Vid_VSC_MSB1,_timingApple13 ; MSB1 OSLstEntry sRsrc_Vid_VSC_VGA,_timingAppleVGA ; VGA OSLstEntry sRsrc_Vid_VSC_SVGA,_timingAppleSVGA ; SuperVGA OSLstEntry sRsrc_Vid_VSC_GF,_timingApple16 ; GoldFish OSLstEntry sRsrc_Vid_VSC_MSB2,_timingApple16 ; MSB2 OSLstEntry sRsrc_Vid_VSC_1K,_timingApple1Ka ; VESA 1024x768 60Hz DatLstEntry EndOfList,0 _timingApple15 Dc.l timingApple15 _timingApple15x Dc.l timingApple15x _timingApple12 Dc.l timingApple12 _timingApple13 Dc.l timingApple13 _timingAppleVGA Dc.l timingAppleVGA _timingAppleSVGA Dc.l timingAppleSVGA _timingApple16 Dc.l timingApple16 _timingApple1Ka Dc.l timingApple1Ka ;------------------------------------------------------------- ; Video Parameters Directory ;------------------------------------------------------------- ; ; This directory holds references to data blocks containing the hardware ; setup parameters for the various modes and configurations of the ; hardware. ; ; VSC/Keystone ; ------ ; The first set of parameters are for the PLL dot clock; they are used to generate ; the correct dot-clock per display. The next set of params describe front porch, ; back porch, active lines, etc. Following that is a set of parameters that says ; which bit-depths are valid in the various vRAM configurations. Finally, there is ; a set of parameters that describes the number of rows and the rowbytes per bit-depth ; per display. ;------------------------------------------------------------- _VidParmDir_VSC OSLstEntry sRsrc_Vid_VSC_FPb,_sVidParms_VSC_FPb ; Portrait OSLstEntry sRsrc_Vid_VSC_FPa,_sVidParms_VSC_FP OSLstEntry sRsrc_Vid_VSC_GS,_sVidParms_VSC_GS ; Rubik OSLstEntry sRsrc_Vid_VSC_RGBFPb,_sVidParms_VSC_FPb ; RGB Portrait OSLstEntry sRsrc_Vid_VSC_RGBFPa,_sVidParms_VSC_FP OSLstEntry sRsrc_Vid_VSC_HR,_sVidParms_VSC_HR ; Hi-Res OSLstEntry sRsrc_Vid_VSC_MSB1,_sVidParms_VSC_HR ; MSB1 OSLstEntry sRsrc_Vid_VSC_VGA,_sVidParms_VSC_VGA ; VGA OSLstEntry sRsrc_Vid_VSC_SVGA,_sVidParms_VSC_SVGA ; SuperVGA OSLstEntry sRsrc_Vid_VSC_GF,_sVidParms_VSC_GF ; GoldFish OSLstEntry sRsrc_Vid_VSC_MSB2,_sVidParms_VSC_GF ; MSB2 OSLstEntry sRsrc_Vid_VSC_1K,_sVidParms_VSC_1K ; VESA 1024x768 60Hz DatLstEntry EndOfList,0 ;---------------------------- ; Portrait Paramters (VSC) ;---------------------------- _sVidParms_VSC_FP Dc.l _EndsVidParms_VSC_FP-_sVidParms_VSC_FP ; block size IF hasMotPLL THEN dc.l $1941B0 ; DotClock serial word dc.w $15 ; # bits to shift ELSE dc.l $5d0427 ; DotClock serial word dc.w $17 ; # bits to shift ENDIF dc.b $04,$05,$03,$28,$a6 ; hfp,hs,hbp,ha,SyncA dc.b $03,$00, $03,$00, $2a,$00, $66,$03 ; vfp,vs,vbp,va Dc.b ThirdVidMode,0 ; MaxModes: 512,1024. Dc.b 0 ; Dc.w defmBounds_BFP-1 ; Rows. ; Depth Params ; Dc.w OBMFPRB Dc.w TBMFPRB Dc.w FBMFPRB _EndsVidParms_VSC_FP ;---------------------------- ; Alt Portrait Paramters (VSC) ;---------------------------- _sVidParms_VSC_FPb Dc.l _EndsVidParms_VSC_FPb-_sVidParms_VSC_FPb ; block size IF hasMotPLL THEN dc.l $1941B0 ; DotClock serial word dc.w $15 ; # bits to shift ELSE dc.l $5d0427 ; DotClock serial word dc.w $17 ; # bits to shift ENDIF dc.b $04,$05,$03,$28,$a6 ; hfp,hs,hbp,ha,SyncA dc.b $1D,$00, $03,$00, $44,$00, $32,$03 ; vfp,vs,vbp,va Dc.b FourthVidMode,0 ; MaxModes: 512,1024. Dc.b 0 ; Dc.w defmBounds_BFPb-1 ; Rows. ; Depth Params ; Dc.w OBMFPRB Dc.w TBMFPRB Dc.w FBMFPRB Dc.w EBMFPRB _EndsVidParms_VSC_FPb ;---------------------------- ; Rubik Parameters (VSC) ;---------------------------- _sVidParms_VSC_GS Dc.l _EndsVidParms_VSC_GS-_sVidParms_VSC_GS ; block size dc.l $0000 ; DotClock serial word dc.w $00 ; # bits to shift dc.b $03,$02,$03,$20,$a0 ; hfp,hs,hbp,ha,SyncA dc.b $01,$00, $03,$00, $13,$00, $80,$01 ; vfp,vs,vbp,va Dc.b FourthVidMode,0 ; MaxModes: 512k,1024k Dc.b 0 ; Dc.w defmBounds_BGS-1 ; Rows. ; Depth Params ; Dc.w OBMGSRB Dc.w TBMGSRB Dc.w FBMGSRB Dc.w EBMGSRB _EndsVidParms_VSC_GS ;---------------------------- ; Hi-Res Parameters (VSC) ;---------------------------- _sVidParms_VSC_HR Dc.l _EndsVidParms_VSC_HR-_sVidParms_VSC_HR ; block size IF hasMotPLL THEN dc.l $284A90 ; DotClock serial word dc.w $15 ; # bits to shift ELSE dc.l $351338 ; DotClock serial word dc.w $16 ; # bits to shift ENDIF dc.b $06,$04,$04,$28,$a8 ; hfp,hs,hbp,ha,SyncA = $a8, (used to be $a9) dc.b $03,$00, $03,$00, $27,$00, $e0,$01 ; vfp,vs,vbp,va Dc.b FourthVidMode,0 ; MaxModes: 512k,1024k Dc.b 0 ; Dc.w defmBounds_BHR-1 ; Rows. ; Depth Params ; Dc.w OBMHRRB Dc.w TBMHRRB Dc.w FBMHRRB Dc.w EBMHRRB _EndsVidParms_VSC_HR ;---------------------------- ; VGA Parameters (VSC) ;---------------------------- _sVidParms_VSC_VGA Dc.l _EndsVidParms_VSC_VGA-_sVidParms_VSC_VGA ; block size IF hasMotPLL THEN dc.l $1549A0 ; DotClock serial word dc.w $15 ; # bits to shift ELSE dc.l $1509a5 ; DotClock serial word dc.w $15 ; # bits to shift ENDIF dc.b $03,$06,$01,$28,$a4 ; hfp,hs,hbp,ha,SyncA dc.b $0a,$00, $02,$00, $21,$00, $e0,$01 ; vfp,vs,vbp,va Dc.b FourthVidMode,0 ; MaxModes: 512k,1024k Dc.b 0 ; Dc.w defmBounds_BHR-1 ; Rows. ; Depth Params ; Dc.w OBMHRRB Dc.w TBMHRRB Dc.w FBMHRRB Dc.w EBMHRRB _EndsVidParms_VSC_VGA ;---------------------------- ; GoldFish Parameters (VSC) ;---------------------------- _sVidParms_VSC_GF Dc.l _EndsVidParms_VSC_GF-_sVidParms_VSC_GF ; block size IF hasMotPLL THEN dc.l $1941B0 ; DotClock serial word dc.w $15 ; # bits to shift ELSE dc.l $5d0427 ; DotClock serial word dc.w $17 ; # bits to shift ENDIF dc.b $04,$04,$0c,$34,$b3 ; hfp,hs,hbp,ha,SyncA dc.b $01,$00, $03,$00, $27,$00, $70,$02 ; vfp,vs,vbp,va Dc.b FourthVidMode,0 ; MaxModes: 512k,1024k Dc.b 0 ; Dc.w defmBounds_BGF-1 ; Rows. ; Depth Params ; Dc.w OBMGFRB Dc.w TBMGFRB Dc.w FBMGFRB Dc.w EBMGFRB _EndsVidParms_VSC_GF ;---------------------------- ; Super VGA Parameters (VSC) ;---------------------------- _sVidParms_VSC_SVGA Dc.l _EndsVidParms_VSC_VGA-_sVidParms_VSC_VGA ; block size IF hasMotPLL THEN dc.l $294A30 ; DotClock serial word dc.w $15 ; # bits to shift ELSE dc.l $348ad9 ; DotClock serial word dc.w $15 ; # bits to shift ENDIF dc.b $03,$04,$07,$32,$b3 ; hfp,hs,hbp,ha,SyncA dc.b $01,$00, $02,$00, $16,$00, $58,$02 ; vfp,vs,vbp,va Dc.b FourthVidMode,0 ; MaxModes: 512k,1024k Dc.b 0 ; Dc.w defmBounds_BSVGA-1 ; Rows. ; Depth Params ; Dc.w OBMSVGARB Dc.w TBMSVGARB Dc.w FBMSVGARB Dc.w EBMSVGARB _EndsVidParms_VSC_SVGA ;---------------------------- ; 1024x768 Parameters (VSC) ;---------------------------- _sVidParms_VSC_1K Dc.l _EndsVidParms_VSC_1K-_sVidParms_VSC_1K ; block size dc.l $1AC190 ; DotClock serial word dc.w $15 ; # bits to shift dc.b $02,$09,$08,$40,$02 ; hfp,hs,hbp,ha,SyncA dc.b $03,$00, $06,$00, $1D,$00, $00,$03 ; vfp,vs,vbp,va Dc.b ThirdVidMode,0 ; MaxModes: 512k,1024k Dc.b 0 ; Dc.w defmBounds_B1K-1 ; Rows. ; Depth Params ; Dc.w OBM1KRB Dc.w TBM1KRB Dc.w FBM1KRB _EndsVidParms_VSC_1K STRING C ;------------------------------------------------------------- ; One-Bit per pixel parameters ;------------------------------------------------------------- _OBMHR OSLstEntry mVidParams,_OBVParmsHR ; offset to vid parameters for this configuration DatLstEntry mPageCnt,OBMPagesHR ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _OBMFP OSLstEntry mVidParams,_OBVParmsFP ; offset to vid parameters for this configuration DatLstEntry mPageCnt,OBMPagesFP ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _OBMFPb OSLstEntry mVidParams,_OBVParmsFPb ; offset to vid parameters for this configuration DatLstEntry mPageCnt,OBMPagesFP ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _OBMGS OSLstEntry mVidParams,_OBVParmsGS ; offset to vid parameters for this configuration DatLstEntry mPageCnt,OBMPagesGS ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _OBMGF OSLstEntry mVidParams,_OBVParmsGF ; offset to vid parameters for this configuration DatLstEntry mPageCnt,OBMPagesGF ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _OBMSVGA OSLstEntry mVidParams,_OBVParmsSVGA ; offset to vid parameters for this configuration DatLstEntry mPageCnt,OBMPagesSVGA ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _OBM1K OSLstEntry mVidParams,_OBVParms1K ; offset to vid parameters for this configuration DatLstEntry mPageCnt,OBMPages1K ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _OBVParmsHR DC.L _EndOBVParmsHR-_OBVParmsHR ; physical Block Size DC.L defmBaseOffset DC.W OBMHRRB ; physRowBytes DC.W defmBounds_THR,defmBounds_LHR,defmBounds_BHR,defmBounds_RHR DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResHR ; bmHRes DC.L VResHR ; bmVRes DC.W defPixelType ; bmPixelType DC.W 1 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 1 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndOBVParmsHR _OBVParmsFP DC.L _EndOBVParmsFP-_OBVParmsFP ; physical Block Size DC.L defmBaseOffset DC.W OBMFPRB ; physRowBytes DC.W defmBounds_TFP,defmBounds_LFP,defmBounds_BFP,defmBounds_RFP DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResFP ; bmHRes DC.L VResFP ; bmVRes DC.W defPixelType ; bmPixelType DC.W 1 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 1 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndOBVParmsFP _OBVParmsFPb DC.L _EndOBVParmsFPb-_OBVParmsFPb ; physical Block Size DC.L defmBaseOffset DC.W OBMFPRB ; physRowBytes DC.W defmBounds_TFPb,defmBounds_LFPb,defmBounds_BFPb,defmBounds_RFPb DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResFP ; bmHRes DC.L VResFP ; bmVRes DC.W defPixelType ; bmPixelType DC.W 1 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 1 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndOBVParmsFPb _OBVParmsGS DC.L _EndOBVParmsGS-_OBVParmsGS ; physical Block Size DC.L defmBaseOffset DC.W OBMGSRB ; physRowBytes DC.W defmBounds_TGS,defmBounds_LGS,defmBounds_BGS,defmBounds_RGS DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGS ; bmHRes DC.L VResGS ; bmVRes DC.W defPixelType ; bmPixelType DC.W 1 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 1 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndOBVParmsGS _OBVParmsGF DC.L _EndOBVParmsGF-_OBVParmsGF ; physical Block Size DC.L defmBaseOffset DC.W OBMGFRB ; physRowBytes DC.W defmBounds_TGF,defmBounds_LGF,defmBounds_BGF,defmBounds_RGF DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGF ; bmHRes DC.L VResGF ; bmVRes DC.W defPixelType ; bmPixelType DC.W 1 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 1 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndOBVParmsGF _OBVParmsSVGA DC.L _EndOBVParmsSVGA-_OBVParmsSVGA ; physical Block Size DC.L defmBaseOffset DC.W OBMSVGARB ; physRowBytes DC.W defmBounds_TSVGA,defmBounds_LSVGA,defmBounds_BSVGA,defmBounds_RSVGA DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResSVGA ; bmHRes DC.L VResSVGA ; bmVRes DC.W defPixelType ; bmPixelType DC.W 1 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 1 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndOBVParmsSVGA _OBVParms1K DC.L _EndOBVParms1K-_OBVParms1K ; physical Block Size DC.L defmBaseOffset DC.W OBM1KRB ; physRowBytes DC.W defmBounds_T1K,defmBounds_L1K,defmBounds_B1K,defmBounds_R1K DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HRes1K ; bmHRes DC.L VRes1K ; bmVRes DC.W defPixelType ; bmPixelType DC.W 1 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 1 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndOBVParms1K ;------------------------------------------------------------- ; Two-Bit per pixel parameters ;------------------------------------------------------------- _TBMHR OSLstEntry mVidParams,_TBVParmsHR ; offset to vid parameters for this configuration DatLstEntry mPageCnt,TBMPagesHR ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _TBMFP OSLstEntry mVidParams,_TBVParmsFP ; offset to vid parameters for this configuration DatLstEntry mPageCnt,TBMPagesFP ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _TBMFPb OSLstEntry mVidParams,_TBVParmsFPb ; offset to vid parameters for this configuration DatLstEntry mPageCnt,TBMPagesFP ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _TBMGS OSLstEntry mVidParams,_TBVParmsGS ; offset to vid parameters for this configuration DatLstEntry mPageCnt,TBMPagesGS ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _TBMGF OSLstEntry mVidParams,_TBVParmsGF ; offset to vid parameters for this configuration DatLstEntry mPageCnt,TBMPagesGF ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _TBMSVGA OSLstEntry mVidParams,_TBVParmsSVGA ; offset to vid parameters for this configuration DatLstEntry mPageCnt,TBMPagesSVGA ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _TBM1K OSLstEntry mVidParams,_TBVParms1K ; offset to vid parameters for this configuration DatLstEntry mPageCnt,TBMPages1K ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _TBVParmsHR DC.L _EndTBVParmsHR-_TBVParmsHR ; physical Block Size DC.L defmBaseOffset DC.W TBMHRRB ; physRowBytes DC.W defmBounds_THR,defmBounds_LHR,defmBounds_BHR,defmBounds_RHR DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResHR ; bmHRes DC.L VResHR ; bmVRes DC.W defPixelType ; bmPixelType DC.W 2 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 2 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndTBVParmsHR _TBVParmsFP DC.L _EndTBVParmsFP-_TBVParmsFP ; physical Block Size DC.L defmBaseOffset DC.W TBMFPRB ; physRowBytes DC.W defmBounds_TFP,defmBounds_LFP,defmBounds_BFP,defmBounds_RFP DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResFP ; bmHRes DC.L VResFP ; bmVRes DC.W defPixelType ; bmPixelType DC.W 2 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 2 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndTBVParmsFP _TBVParmsFPb DC.L _EndTBVParmsFPb-_TBVParmsFPb ; physical Block Size DC.L defmBaseOffset DC.W TBMFPRB ; physRowBytes DC.W defmBounds_TFPb,defmBounds_LFPb,defmBounds_BFPb,defmBounds_RFPb DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResFP ; bmHRes DC.L VResFP ; bmVRes DC.W defPixelType ; bmPixelType DC.W 2 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 2 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndTBVParmsFPb _TBVParmsGS DC.L _EndTBVParmsGS-_TBVParmsGS ; physical Block Size DC.L defmBaseOffset DC.W TBMGSRB ; physRowBytes DC.W defmBounds_TGS,defmBounds_LGS,defmBounds_BGS,defmBounds_RGS DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGS ; bmHRes DC.L VResGS ; bmVRes DC.W defPixelType ; bmPixelType DC.W 2 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 2 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndTBVParmsGS _TBVParmsGF DC.L _EndTBVParmsGF-_TBVParmsGF ; physical Block Size DC.L defmBaseOffset DC.W TBMGFRB ; physRowBytes DC.W defmBounds_TGF,defmBounds_LGF,defmBounds_BGF,defmBounds_RGF DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGF ; bmHRes DC.L VResGF ; bmVRes DC.W defPixelType ; bmPixelType DC.W 2 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 2 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndTBVParmsGF _TBVParmsSVGA DC.L _EndTBVParmsSVGA-_TBVParmsSVGA ; physical Block Size DC.L defmBaseOffset DC.W TBMSVGARB ; physRowBytes DC.W defmBounds_TSVGA,defmBounds_LSVGA,defmBounds_BSVGA,defmBounds_RSVGA DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResSVGA ; bmHRes DC.L VResSVGA ; bmVRes DC.W defPixelType ; bmPixelType DC.W 2 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 2 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndTBVParmsSVGA _TBVParms1K DC.L _EndTBVParms1K-_TBVParms1K ; physical Block Size DC.L defmBaseOffset DC.W TBM1KRB ; physRowBytes DC.W defmBounds_T1K,defmBounds_L1K,defmBounds_B1K,defmBounds_R1K DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HRes1K ; bmHRes DC.L VRes1K ; bmVRes DC.W defPixelType ; bmPixelType DC.W 2 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 2 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndTBVParms1K ;------------------------------------------------------------- ; Four-Bit per pixel parameters ;------------------------------------------------------------- _FBMHR OSLstEntry mVidParams,_FBVParmsHR ; offset to vid parameters for this configuration DatLstEntry mPageCnt,FBMPagesHR ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _FBMFP OSLstEntry mVidParams,_FBVParmsFP ; offset to vid parameters for this configuration DatLstEntry mPageCnt,FBMPagesFP ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _FBMFPb OSLstEntry mVidParams,_FBVParmsFPb ; offset to vid parameters for this configuration DatLstEntry mPageCnt,FBMPagesFP ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _FBMGS OSLstEntry mVidParams,_FBVParmsGS ; offset to vid parameters for this configuration DatLstEntry mPageCnt,FBMPagesGS ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _FBMGF OSLstEntry mVidParams,_FBVParmsGF ; offset to vid parameters for this configuration DatLstEntry mPageCnt,FBMPagesGF ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _FBMSVGA OSLstEntry mVidParams,_FBVParmsSVGA ; offset to vid parameters for this configuration DatLstEntry mPageCnt,FBMPagesSVGA ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _FBM1K OSLstEntry mVidParams,_FBVParms1K ; offset to vid parameters for this configuration DatLstEntry mPageCnt,FBMPages1K ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _FBVParmsHR DC.L _EndFBVParmsHR-_FBVParmsHR ; physical Block Size DC.L defmBaseOffset DC.W FBMHRRB ; physRowBytes DC.W defmBounds_THR,defmBounds_LHR,defmBounds_BHR,defmBounds_RHR DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResHR ; bmHRes DC.L VResHR ; bmVRes DC.W defPixelType ; bmPixelType DC.W 4 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 4 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndFBVParmsHR _FBVParmsFP DC.L _EndFBVParmsFP-_FBVParmsFP ; physical Block Size DC.L defmBaseOffset DC.W FBMFPRB ; physRowBytes DC.W defmBounds_TFP,defmBounds_LFP,defmBounds_BFP,defmBounds_RFP DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResFP ; bmHRes DC.L VResFP ; bmVRes DC.W defPixelType ; bmPixelType DC.W 4 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 4 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndFBVParmsFP _FBVParmsFPb DC.L _EndFBVParmsFPb-_FBVParmsFPb ; physical Block Size DC.L defmBaseOffset DC.W FBMFPRB ; physRowBytes DC.W defmBounds_TFPb,defmBounds_LFPb,defmBounds_BFPb,defmBounds_RFPb DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResFP ; bmHRes DC.L VResFP ; bmVRes DC.W defPixelType ; bmPixelType DC.W 4 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 4 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndFBVParmsFPb _FBVParmsGS DC.L _EndFBVParmsGS-_FBVParmsGS ; physical Block Size DC.L defmBaseOffset DC.W FBMGSRB ; physRowBytes DC.W defmBounds_TGS,defmBounds_LGS,defmBounds_BGS,defmBounds_RGS DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGS ; bmHRes DC.L VResGS ; bmVRes DC.W defPixelType ; bmPixelType DC.W 4 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 4 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndFBVParmsGS _FBVParmsGF DC.L _EndFBVParmsGF-_FBVParmsGF ; physical Block Size DC.L defmBaseOffset DC.W FBMGFRB ; physRowBytes DC.W defmBounds_TGF,defmBounds_LGF,defmBounds_BGF,defmBounds_RGF DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGF ; bmHRes DC.L VResGF ; bmVRes DC.W defPixelType ; bmPixelType DC.W 4 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 4 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndFBVParmsGF _FBVParmsSVGA DC.L _EndFBVParmsSVGA-_FBVParmsSVGA ; physical Block Size DC.L defmBaseOffset DC.W FBMSVGARB ; physRowBytes DC.W defmBounds_TSVGA,defmBounds_LSVGA,defmBounds_BSVGA,defmBounds_RSVGA DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResSVGA ; bmHRes DC.L VResSVGA ; bmVRes DC.W defPixelType ; bmPixelType DC.W 4 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 4 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndFBVParmsSVGA _FBVParms1K DC.L _EndFBVParms1K-_FBVParms1K ; physical Block Size DC.L defmBaseOffset DC.W FBM1KRB ; physRowBytes DC.W defmBounds_T1K,defmBounds_L1K,defmBounds_B1K,defmBounds_R1K DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HRes1K ; bmHRes DC.L VRes1K ; bmVRes DC.W defPixelType ; bmPixelType DC.W 4 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 4 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndFBVParms1K ;------------------------------------------------------------- ; Eight-Bit per pixel parameters ;------------------------------------------------------------- _EBMHR OSLstEntry mVidParams,_EBVParmsHR ; offset to vid parameters for this configuration DatLstEntry mPageCnt,EBMPagesHR ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _EBMFPb OSLstEntry mVidParams,_EBVParmsFPb ; offset to vid parameters for this configuration DatLstEntry mPageCnt,EBMPagesFP ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _EBMGS OSLstEntry mVidParams,_EBVParmsGS ; offset to vid parameters for this configuration DatLstEntry mPageCnt,EBMPagesGS ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _EBMGF OSLstEntry mVidParams,_EBVParmsGF ; offset to vid parameters for this configuration DatLstEntry mPageCnt,EBMPagesGF ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _EBMSVGA OSLstEntry mVidParams,_EBVParmsSVGA ; offset to vid parameters for this configuration DatLstEntry mPageCnt,EBMPagesSVGA ; number of video pages in this configuration DatLstEntry mDevType,defmDevType ; device type DatLstEntry EndOfList,0 ; _EBVParmsHR DC.L _EndEBVParmsHR-_EBVParmsHR ; physical Block Size DC.L defmBaseOffset DC.W EBMHRRB ; physRowBytes DC.W defmBounds_THR,defmBounds_LHR,defmBounds_BHR,defmBounds_RHR DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResHR ; bmHRes DC.L VResHR ; bmVRes DC.W defPixelType ; bmPixelType DC.W 8 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 8 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndEBVParmsHR _EBVParmsFPb DC.L _EndEBVParmsFPb-_EBVParmsFPb ; physical Block Size DC.L defmBaseOffset DC.W EBMFPRB ; physRowBytes DC.W defmBounds_TFPb,defmBounds_LFPb,defmBounds_BFPb,defmBounds_RFPb DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResFP ; bmHRes DC.L VResFP ; bmVRes DC.W defPixelType ; bmPixelType DC.W 8 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 8 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndEBVParmsFPb _EBVParmsGS DC.L _EndEBVParmsGS-_EBVParmsGS ; physical Block Size DC.L defmBaseOffset DC.W EBMGSRB ; physRowBytes DC.W defmBounds_TGS,defmBounds_LGS,defmBounds_BGS,defmBounds_RGS DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGS ; bmHRes DC.L VResGS ; bmVRes DC.W defPixelType ; bmPixelType DC.W 8 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 8 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndEBVParmsGS _EBVParmsGF DC.L _EndEBVParmsGF-_EBVParmsGF ; physical Block Size DC.L defmBaseOffset DC.W EBMGFRB ; physRowBytes DC.W defmBounds_TGF,defmBounds_LGF,defmBounds_BGF,defmBounds_RGF DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResGF ; bmHRes DC.L VResGF ; bmVRes DC.W defPixelType ; bmPixelType DC.W 8 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 8 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndEBVParmsGF _EBVParmsSVGA DC.L _EndEBVParmsSVGA-_EBVParmsSVGA ; physical Block Size DC.L defmBaseOffset DC.W EBMSVGARB ; physRowBytes DC.W defmBounds_TSVGA,defmBounds_LSVGA,defmBounds_BSVGA,defmBounds_RSVGA DC.W defVersion ; bmVersion DC.W 0 ; packType not used DC.L 0 ; packSize not used DC.L HResSVGA ; bmHRes DC.L VResSVGA ; bmVRes DC.W defPixelType ; bmPixelType DC.W 8 ; bmPixelSize DC.W defCmpCount ; bmCmpCount DC.W 8 ; bmCmpSize DC.L defmPlaneBytes ; bmPlaneBytes _EndEBVParmsSVGA ;------------------------------------------------------------- ; Primary Inits ;------------------------------------------------------------- _sPInitRecVSC Dc.l _EndsPInitRecVSC-_sPInitRecVSC Include 'VSCPrimaryInit.a' Align 2 _EndsPInitRecVSC ;------------------------------------------------------------- ; Drivers ;------------------------------------------------------------- _VSCDrvrDir Dc.l _EndVSCDrvr-_VSCDrvrDir ; Physical block size. Include 'VSCDriver.a' ; Driver code Align 2 _EndVSCDrvr ;------------------------------------------------------------- ; Secondary Inits ;------------------------------------------------------------- _sSInitRec Dc.l _EndsSInitRec-_sSInitRec Include 'VSCSecondaryInit.a' Align 2 _EndsSInitRec ;------------------------------------------------------------- ; Format/Header Block ;------------------------------------------------------------- ALIGN 4 DC.L (_sRsrcDir-*)**$00FFFFFF ; Offset to sResource directory DC.L 0 ; Length of declaration data DC.L 0 ; CRC {Patched by crcPatch} DC.B ROMRevLevel ; Revision level DC.B AppleFormat ; Format DC.L TestPattern ; Test pattern DC.B 0 ; Reserved byte DC.B $0F ; ByteLanes: D24-D31 VSCDeclROM ENDP END