mirror of
https://github.com/elliotnunn/mac-rom.git
synced 2025-01-04 01:29:22 +00:00
3226ee4220
This was tricky. The table seems to be vestigial, anyway.
753 lines
38 KiB
Plaintext
753 lines
38 KiB
Plaintext
;__________________________________________________________________________________________________
|
|
;
|
|
; File: UniversalTables.a
|
|
;
|
|
; Contains: Product decoder and info tables
|
|
;
|
|
; Written by: Horrorists, SuperMarioists, and Universalists everywhere
|
|
;
|
|
; Copyright: © 1991-1994 by Apple Computer, Inc. All rights reserved.
|
|
;
|
|
; Change History (most recent first):
|
|
;
|
|
; <SM107> 1/14/94 LB The product info table for TNTProto1 now uses the Fridgidaire
|
|
; floppy drive and media icons.
|
|
; <SM106> 12/13/93 PN Roll in KAOs and Horror changes to support Malcom and AJ
|
|
; machines.
|
|
; <SM105> 11/19/93 chp Add hasEnhancedLtalk ProductInfo flag to Cyclone/Tempest
|
|
; products. Support for both internal and external SCSI96 buses on
|
|
; TNT.
|
|
; <SM104> 11/17/93 KW added a 40 MHz wombat to the STP product tables.
|
|
; <SM103> 11/10/93 fau Added the TNT Product Info Tables.
|
|
; <SM102> 11/10/93 KW added STPs own productinfo tables. Thanks to rich.
|
|
; <SM101> 11/9/93 KW hacked in some changes for STP machines. Because of the hacks,
|
|
; old quadras, wombats probably will not boot. I will fix that
|
|
; and make less of a hack after our SCM build
|
|
; <SM100> 11/8/93 JRH boxDBLite16 is now boxPowerBookDuo250. boxDBLite20 is now
|
|
; boxPenLite.
|
|
; <SM99> 10/21/93 SAM Roll in <MC7> from cm900ftjesus.
|
|
; <MC7> 10/21/93 SAM Added SoundStereoMixing and SoundPlayAndRecord to PDM,
|
|
; ColdFusion, and CarlSagan's Universal tables.
|
|
; <SM98> 10/21/93 GMR Roll in <MC6> from mc900ftjesus.
|
|
; <MC6> 10/20/93 GMR Fixed the BartExists valid flag for CF so it properly does the
|
|
; optional check for it (as in PDM).
|
|
; <SM97> 10/10/93 SAM Roll in <MC4> and <MC5> from mc900ftjesus.
|
|
; <MC5> 10/10/93 SAM For PDM: Added hasEnhancedLTalk to PDM/ColdFusion/CarlSagan, cuz
|
|
; they do.
|
|
; <MC4> 10/10/93 SAM For PDM: Changed the PDM labels (since the evt support has been
|
|
; dropped). Removed hasSoftVBL from PDM/CF/CS. Added hasNewMemMgr
|
|
; to all three. Pointed Carl Sagan's decoder table ptr at PDM's
|
|
; instead of Cold Fusion's (which has a different internal SCSI
|
|
; address...)
|
|
; <SM96> 10/6/93 RC Take Out PDM EVT1 support
|
|
; <SM95> 10/1/93 JDR Updated the snd primitives routine names according to
|
|
; SndPrimitives.a.
|
|
; <SM94> 9/25/93 SAM Backed out the last change. The productInfo tables should be
|
|
; keyed off of a decoder type.
|
|
; <SM93> 9/15/93 PN Add hasAMIC into ProductInfo table for PDM to fix the Universal
|
|
; build
|
|
; <SM92> 8/20/93 chp The name of the Cyclone interrupt primitives table changed in
|
|
; InterruptHandlers.a. Reflect that change in ProductInfo.
|
|
; <SM91> 8/17/93 SAM Put forSmurf conds around all the smurf junk.
|
|
; <SM90> 08-16-93 jmp Changed the PDM VideoInfo record to reflect the fact that PDM
|
|
; uses Slot $9Õs sPRAM as is reserved in the NuBusInfo record for
|
|
; PDM. This fixes the problem where PDMs sPRAM kept getting blown
|
|
; away.
|
|
; <SM89> 8/13/93 KW adding two more smurf wombats
|
|
; <SM88> 8/12/93 BG Removed the ProductInfo for WLCD_C1 as it will never exist.
|
|
; Added ProductInfo (and associated pointers) for Carl Sagan.
|
|
; <SM87> 8/11/93 RC Enabled extra slots on PDM and Cold Fusion for Second Wave Nubus
|
|
; Expansion box
|
|
; <SM86> 8/11/93 KW added some productinfo tables for a few new smurf machines
|
|
; <SM85> 8/4/93 GMR Added separate NuBusInfo table for ColdFusion, and fixed the one
|
|
; for PDM.
|
|
; <SM84> 08-03-93 jmp Update the videoinfo records in this file to contain the new
|
|
; field from the HORROR sources.
|
|
; <SM83> 7/27/93 GMR Added Bart flags and base addresses to PDM/ColdFusion tables.
|
|
; <SM82> 7/14/93 PN Add hasHardPowerOff to MacLC external feature
|
|
; <SM81> 6/28/93 SAM Updated the ColdFusion family table to know about the second
|
|
; SCSI bus (ie the SCSI mgr can now handle it!)
|
|
; <SM80> 6/24/93 SAM Added one table for all the ColdFusions (w/o SCSI2exists for
|
|
; now)
|
|
; <SM79> 6/17/93 joe Added the SoundInLineLevel bit to the PDMInfo records so that
|
|
; Telecaster will turn on its mic preamp.
|
|
; <SM78> 6/14/93 kc Roll in Ludwig.
|
|
; <SM78> 6/10/93 SAM Add hasHardPowerOff to PDM info.
|
|
; <LW14> 4/29/93 fau Bug#: 1081636: Added the SoundLineLevelInput to Cyclone and
|
|
; Tempest. Changed all Sound8BitMono to SoundHasSoundIn. Added
|
|
; SoundStereoIn where appropriate. All these are to reflect
|
|
; changes in Reality.
|
|
; <LW13> 4/19/93 chp Fix some documentation.
|
|
; <LW12> 4/14/93 fau Added the required changes for moving CivicExists and
|
|
; SebastianExists to Cyclone/Tempest info tables. Added hasPRAM
|
|
; to slots A/B for Cyclone/Tempest.
|
|
; <SM77> 6/3/93 SAM Updated PDMs boxflags to correspond with the changes made in
|
|
; InternalOnlyEqu.a
|
|
; <SM76> 6/2/93 GMR Changed PDM's Interrupt table to point to it's own, unique table
|
|
; (for disabling level 3 ints).
|
|
; <SM75> 5/25/93 joe Now the PDM info tables use SndCntlPDM instead of
|
|
; SndCntlCyclone.
|
|
; <SM74> 5/19/93 GMR Moved Sonydriver icon tables over to this file, so we don't have
|
|
; to change the floppy driver for each new machine.
|
|
; <SM73> 5/6/93 SAM Turned SoftVBLs back on for both kinds of PDMs. Put the VIA1
|
|
; initialization back the way it should be (not the cyclone way) -
|
|
; for PDM.
|
|
; <SM72> 5/3/93 RC Turned on SerialDMA driver for AMIC 2 PDM and made sure that it
|
|
; was not turned on for PDM (EVT1)
|
|
; <SM71> 4/22/93 SAM Changed some offsets in the PDMAMIC2Info table that were added
|
|
; in the previous change.
|
|
; <SM70> 4/21/93 SAM Added an entry for the Evt2 PDMs which have a different CPU id.
|
|
; <SM69> 4/15/93 RC Turned off Serial DMA for PDM
|
|
; <SM68> 4/11/93 chp Add SerialDMA and HAL binding to ProductInfo of Cyclone,
|
|
; Tempest, and PDM. Fix usage of has68kEmulator for dc.l instead
|
|
; of BitVector32 because the latter doesn't accept encoded values.
|
|
; <SM67> 4/6/93 fau Removed the 'slotDisabled' from PDM's NuBus info table so that
|
|
; we can support the Ventana Board.
|
|
; <SM66> 4/5/93 jb Changed "SingerExists" to "AwacsExists" in hasHMC & infoPDM.
|
|
; <SM65> 3/31/93 chp Synchronize SuperMario with Ludwig changes.
|
|
; <LW9> 3/24/93 mal Removed hasinterrupt flag from slot 9 for Cyclone & Tempest.
|
|
; <LW8> 3/22/93 fau Added a new VideoInfoTempest to support a different board id for
|
|
; Tempest. Note that Cyclone33 and Cyclone40 share the same one,
|
|
; as do Tempest25 and Tempest33 -- this should probably change if
|
|
; these other machines ship.
|
|
; <LW7> 3/21/93 fau Changed the DefaultRSRC for Cyclone40/33 to 4 (maybe NonFPU)
|
|
; from 3 (FPU only). These should really be equates.
|
|
; <SM64> 3/5/93 CCH Added MaceExists to PDMInfo and Mace address to HMCDecoderInfo.
|
|
; <LW6> 2/26/93 fau Updated the ID for Cyclone40 (HW requested an $F --I don't like
|
|
; it but tough). Removed all support for Cyclone EVT3.
|
|
; <LW5> 2/24/93 chp Cyclone VIA1 port A initialization updated to take advantage of
|
|
; the new wait/request multiplexer in the rev. 04 PSC.
|
|
; <LW4> 2/15/93 FU Moved the InfoCycloneEVT3 record to be after the other 4 cyclone
|
|
; ones, so that we always compare first against a YMCA-based
|
|
; machine. Fixed the offset of a couple of tables in
|
|
; InfoCyclone40 that were using InfoCyclone33 as their base!
|
|
; <LW3> 2/12/93 GS Updated the InfoCyclone40 record to conatin the new CPUID for
|
|
; the 40MHz Cyclone.
|
|
; <SM63> 2/11/93 CSS Update Vail tables to indicate Egret8 and VDACAddr (SONORA) is
|
|
; valid. So that Vail CPU will boot again with SuperMario.
|
|
; <SM62> 2/8/93 CSS Update from Horror: Add OrwellExists to Quadra based machines.
|
|
; This to get the test TestFor OrwellExists to work in the SCSI
|
|
; manager to determine whether to run the SCSI96 SCSI manager or
|
|
; the SCSI96BIOS SCSI manager. This test may not be the best test
|
|
; for this, but this is the way it was in Horror.
|
|
; <SM61> 2/5/93 SAM Touched up the last touchup. Sorry about that.
|
|
; <SM60> 2/5/93 SAM Touched up the last checkin.
|
|
; <SM59> 2/5/93 RC Added has68kEmulator to Smurf on Wombat
|
|
; <SM57> 2/5/93 SAM Hey, PDM supports 256 mb of RAM now. How much does yours?
|
|
; <SM56> 2/2/93 GMR Added SWIM3Exists flag to PDM tables.
|
|
; <SM55> 1/27/93 RC Added the AMICExists flag to PDM
|
|
; <LW2> 1/22/93 fau Expanded the RamInfoTempest table to include all 8 possible
|
|
; banks.
|
|
; <SM54> 1/15/93 RC Took out the auto RAM Disk on Doot of PDM and reset the RAM size
|
|
; to 11 Meg
|
|
; <SM53> 1/14/93 PN Add MacIIsiIntTbl and SndCntlMacIIsi tables for Macsi to make
|
|
; SuperMario boot on si again.
|
|
; <SM52> 01-13-93 jmp Pointed VideoInfo Pratt at the CSC super sResource directory.
|
|
; <SM51> 01-11-93 jmp Updated various BoxFlag names.
|
|
; <SM50> 1/10/93 RC SWIM support worked on for Smurf on Wombat
|
|
; <SM49> 1/10/93 RC added IWM and SoftPower flags to PDM
|
|
; <SM48> 12/23/92 RC Added Support for Smurf on Wombat
|
|
; <SM47> 12/21/92 SWC Removed the InfoPrattUnknown ProductInfo table since Pratt has a
|
|
; CPU ID register and thus has no need of an "unknown" table.
|
|
; <SM46> 12/17/92 RB Removed some of the LC930 conditionals. Added back other hasXXXX
|
|
; conditionals to make it easier to build 1 off 1 Meg ROMs.
|
|
; Rescued the IIsi from the grave. Added hasYMCA for Cyclone
|
|
; machines and hasHMC for PDM.
|
|
; <SM45> 12/9/92 SAM Changed the CPU ID for PDM . Added 3 additional CPU IDs for the
|
|
; other PDM "boxes."
|
|
; <SM44> 12/9/92 jmp Changed PDMÕs VideoInfo record so that the physical framebuffer
|
|
; base is now at 0 and not 1M. Also, reflected this changed in
|
|
; the logical base, as well.
|
|
; <SM43> 12/5/92 jmp Temporarily pointed BlackBirdÕs VideoInfo tables to the
|
|
; ÒunknownÓ directory since CSC wonÕt be ready for initial
|
|
; bring-up (weÕll be using the VSC MMU-based DeclData instead).
|
|
; <SM42> 12/5/92 SWC Added special sound table for DJMEMC machines so their sound
|
|
; hardware initialization can also whack built-in video.
|
|
; <SM41> 12/4/92 fau Added StereoPlayandRecord and StereoMixing external features
|
|
; flags to Cyclone-type machines.
|
|
; <SM40> 12/4/92 fau Added tables for Tempest33 and Cyclone40 and update to use new
|
|
; boxflag names for Cyclone-type machines. Backed out <SM36>.
|
|
; <SM39> 12/1/92 EH Adding Tables for Blackbird.
|
|
; <SM38> 12/1/92 SWC Added IntHandlerPtr, a pointer to the interrupt handler setup
|
|
; table, to the ProductInfo tables. Removed all the Mac II family
|
|
; tables.
|
|
; <SM37> 11/30/92 dwc Added AMIC address to HMCDecoderTable for PDM.
|
|
; <SM36> 11/23/92 mal Moved CIVIC baseaddr to new location in DecoderInfo Table since
|
|
; DAFBAddr split with CIVICAddr.
|
|
; <SM35> 11/23/92 SWC Added an IMPORT of CudaADBTable and pointed all the Cuda-based
|
|
; machines to it.
|
|
; <SM34> 11/20/92 fau Modified the BasesValid2 for Tempest to not have any flags so
|
|
; that GetExtHardwareInfo will uses the YMCA decoder default bases
|
|
; to look and see if a MUNI exists. Added MUNIExists to Cyclone,
|
|
; CycloneEVT4 and to MMC/YMCADecoder.
|
|
; <SM33> 11/19/92 SWC Added PowerManagerPtr, a pointer to the Power Manager primitives
|
|
; table, to the ProductInfo tables. Put build conditionals back
|
|
; in. Obsoleted old tables and grouped them at the end of the file
|
|
; for later permenant deletion.
|
|
; <SM32> 11/11/92 fau Add ROM external feature bit and set on for Tempest to indicate
|
|
; that machine has Hard Power off.
|
|
; <SM31> 11/10/92 RB Moved four export labels that are undefined under an LC930
|
|
; build.
|
|
; <SM30> 11/7/92 jmp Eliminated the obsolete DAFB and LC VideoInfo records.
|
|
; <SM29> 11/7/92 rab Roll in Horror changes. Comments follow:
|
|
; <H64> 10/17/92 BG Added information for a possible WLCD33.
|
|
; <H63> 10/16/92 JC Add ROM external feature bit and set on for Vail and WLCD to
|
|
; indicate that machine has Hard Power off so it can be used by a
|
|
; disk based gestalt patch so that we do not need to add
|
|
; additional items to the table in the disk patch.
|
|
; <H62> 9/10/92 NJV Changed Vail table to no longer support simultaneous play and
|
|
; record and pointed sound primitives to new Vail sound primitives
|
|
; table.
|
|
; <H61> 8/25/92 BG Modified CPUIDProductLookup table to add a '-*' to the Wombat40F
|
|
; table entry. Oops.
|
|
; <H54> 6/30/92 HJR Cleaned up the NubusInfoDartanian and modified VideoInfoDart to
|
|
; use second wrap of the GSC to prevent QuickDraw bug.
|
|
; <H53> 6/26/92 BG Modified InfoWombat20, Wombat25 to have the correct combo
|
|
; resource byte for having an optional FPU (040LC or 040).
|
|
; <H52> 6/26/92 BG Added Wombat20,40 and WLCDc1 to the table so that they'll be
|
|
; looked for.
|
|
; <H51> 6/22/92 BG Added WLCDc1, Wombat20 and Wombat40L universal table entries, as
|
|
; Prod. Marketing seems to think they will become products
|
|
; sometime in the near future.
|
|
; <H50> 6/16/92 BG Changed the WLCD productInfo tables to point at the WLCD NuBus
|
|
; info. Also changed WLCD default resource combo to 4.
|
|
; <H49> 6/10/92 BG Changed the separator in the RamInfoWombat table from 'SamB' to
|
|
; its hex equivalent. For some reason, Asm was interpreting that
|
|
; as a PASCAL string (??) and adding a length byte to the start of
|
|
; it.
|
|
; <H48> 6/9/92 BG Fixed VIA1InitWombat to correctly set PA6 as an INPUT.
|
|
; <H47> 6/4/92 NJV Changed InfoVail tables since we can now play and record
|
|
; simultaneously.
|
|
; <H46> 6/3/92 BG When I updated the InfoWombat33F ProductInfo entry, I forgot to
|
|
; change the VIA1 ID bits. Fixed.
|
|
; <H45> 6/3/92 BG Rearranged the RamInfoWombat table to have the table-separator
|
|
; marker after banks 6&7 to make the djMEMCMerge code in
|
|
; SizeMemPatch.a a little easier to deal with.
|
|
; <SM28> 11/3/92 SWC Changed SlotEqu.a->Slots.a.
|
|
; <SM27> 10/30/92 HY Added SupportsROMDisk feature flag in InfoMacLC product info table.
|
|
; <SM26> 10/27/92 fau Added Tempest support. Removed ASCExists from Cyclone's
|
|
; universal info and added DSPExists and MACEExists to it.
|
|
; <SM25> 10/25/92 HY Changed boxflag for InfoMacLC product info table to boxMacLCII.
|
|
; <SM24> 10/22/92 fau Updated NubusInfoCyclone to reenable the slots that have been
|
|
; disabled way back in Pandora days.
|
|
; <SM23> 10/22/92 fau Deleted MMCExists and YMCAExists from all Cyclone related info.
|
|
; Added DSPExists and MACEExists to those structures.
|
|
; <SM22> 10/20/92 CCH Added InfoPDM to list of CPUID machines.
|
|
; <SM21> 10/18/92 CCH Added support for the PDM CPU.
|
|
; <SM20> 10/12/92 RB For the 1 Meg LC930 ROM, exclude all tables not related to the
|
|
; LC hardware.
|
|
; <SM19> 9/30/92 fau Added support for Cyclone EVT4. This included a new memory
|
|
; decoder YMCA added to the DecoderKind record, a new
|
|
; CycloneInfoEVT4 record and a new RamInfo record for EVT4. Also,
|
|
; used bit 21 that was unused in the universal bits for the YMCA.
|
|
; It should eventually be moved to the bit that the MMC uses right
|
|
; now.
|
|
; <SM18> 9/25/92 RB Added a ROM base address for dbLite & Cyclone when booting from
|
|
; RAM that is set to 4 Meg. Made the LC table work with LC II
|
|
; again. This will prevent the normal LC from booting, but at this
|
|
; point we need LC II to boot and not LC.
|
|
; <SM17> 9/9/92 RB Make the Mac LC boot on SuperMario by moving up the ProductInfo
|
|
; for the LC. Changed the DecoderInfo record for VISA (MacLC) to
|
|
; match the real LC ROM (Somehow it got screwed up) and added a
|
|
; sound control vector address for LC.
|
|
; <SM16> 9/8/92 chp For Cyclone, program the VIA1 port A W/Req bit as an output.
|
|
; This makes it a flip-flop which is initialized to Ò1,Ó disabling
|
|
; LocalTalk from polling serial characters on SCC port A.
|
|
; <SM15> 8/26/92 PN Set ASCBase globals to a safe location on Cyclone so that
|
|
; application that writes to ASCBase will safely write to ROM
|
|
; <SM14> 8/24/92 PN Take out CycloneboxEVT1 stuff
|
|
; <SM13> 8/20/92 CCH Changed Orwell address to $50F0xxxx space instead of $5000xxxx
|
|
; space.
|
|
; <SM12> 8/17/92 CCH Extended universal support to 96-bit, added versions for
|
|
; ProductInfo and DecoderInfo records, created DecoderAddr field
|
|
; in DecoderInfo for memory controller addresses, moved OrwellAddr
|
|
; field to DecoderAddr field, and started using BitVector32 macro.
|
|
; <SM10> 7/27/92 CSS Disable NewAge for EVT1.
|
|
; <SM9> 7/13/92 CCH Added conditionalized support for Cub Card on Quadra 700.
|
|
; <SM8> 6/21/92 RB Added a table for Cyclone EVT2, renamed the old Cyclone tables
|
|
; CycloneEVT1. The EVT1 support will be deleted later, after all
|
|
; systems have been upgraded to EVT2.
|
|
; <SM7> 6/18/92 RB Added a compile time conditional to temporarily support EVT1
|
|
; Cyclone. Look for 'forEVT1'
|
|
; <SM6> 6/4/92 KW (HJR,H44) Added dockingSlot to Dartanian slot E and enabled
|
|
; Slots C & D for Monet.
|
|
; (BG,H43) Modify some of the Wombat/WLCD universal table entries
|
|
; for optional FPU info, as well as an updated VIA1 CPU ID
|
|
; selection scheme.
|
|
; (NJV,H42) Adding SoundPlayAndRecord bit to ProductInfo Tables of
|
|
; machines that can play and record simultaneously.
|
|
; (BG,H41) Added Wombat(20,25,33,40) and WLCD (20,25) Universal
|
|
; information.
|
|
; (SWC,H40) Updated RamInfoDBLite for expandability up to 40MB.
|
|
; (jmp,H39) Changed the ÒsRsrcZydecoDirÓ name to the more generic
|
|
; ÒsRsrcBFBasedDirÓ (BF=BoxFlag) name.
|
|
; (AL,H38) Updated the Sonora info for the IHT entry point
|
|
; (changed from $58000000 to $50fc0000).
|
|
; The following H24..H21 came from Universal.a in Horror
|
|
; (NJV,H24) Added SoundPlayAndRecord bit to ProductInfo Tables of
|
|
; machines that can play and record simultaneously.
|
|
; (jmp,H23) Fixed a problem in the VideoInfo MacLC record that I
|
|
; caused in <H21>.
|
|
; (jmp,H22) Changed the ÒsRsrcZydecoDirÓ name to the more generic
|
|
; ÒsRsrcBFBasedDirÓ (BF=BoxFlag) name.
|
|
; (jmp,H21) Pruned the array of V8 VideoInfo records Õcuz we no
|
|
; longer need Õem.
|
|
; <SM5> 5/28/92 KW Some Horror Stuff. Moved VisaDecoderTable entry in
|
|
; DecoderLookup in front of Niagra. Changed VisaDecoderTable.
|
|
; Added PatchRomAddr to OrwellDecoderTable. Added
|
|
; (1<<PatchROMExists) to InfoQuadra900,InfoQuadra700.
|
|
; VideoInfoDAFB changed to F900000. Added H20 to nubusInfoMacLC
|
|
; <SM4> 5/26/92 CSS Cyclone roll in.
|
|
; <SM3> 5/25/92 RB Second pass of Cyclone changes...Removing Carnation and 4Square
|
|
; tables.
|
|
; <SM2> 5/22/92 RB Cyclone changes, added tables for Cyclone, and CUDA.
|
|
; <SM1> 5/2/92 kc Roll in Horror. Comments follow:
|
|
; <H34> 4/21/92 JC Add SonoraExistsBit to ExtValid flags for Sonora based machines.
|
|
; <H33> 4/20/92 NJV Adding changes needed to support Patch ROMs
|
|
; <H32> 4/19/92 JC Update Vail and Carnation Nubus Info tables. Move onboard video
|
|
; PRAM to slot B.
|
|
; <H31> 4/6/92 SWC Fixed DBLite's diagnostic ROM base address.
|
|
; <H30> 4/3/92 SWC Added ADB/DebugUtil primitives vector table to ProductInfo for
|
|
; each machine.
|
|
; <H29> 3/17/92 SWC Renamed InfoDBLite->InfoDBLite25 and InfoDBLiteLC->InfoDBLite33
|
|
; to reflect reality. Added InfoDBLite16 and InfoDBLite20 in case
|
|
; we decide to use them.
|
|
; <H28> 2/25/92 SWC Added SoundStereoMixing to the external features for the
|
|
; Carnation and Dartanian boxes.
|
|
; <H27> 2/21/92 HJR Enabled VDAC on NiagraInfo.
|
|
; <H26> 2/20/92 JC Update Carnation product info tables to enable Sonic when second
|
|
; rev Sonoras are available.
|
|
; <H25> 2/19/92 JC Update CPUID Register values for Carnation when not using 1st
|
|
; rev Sonora.
|
|
; <H24> 02/18/92 jmp Conditionalized (with ÒhasSonora1Ó) the video base addresses for
|
|
; the Sonora-based machines for the upcoming turn of the Sonora
|
|
; hardware.
|
|
; <H23> 2/18/92 JC Changed boxCarnation to boxCarnation33 and boxVail to boxVail25
|
|
; and added support for other Sonora based CPUs when hasSonora1 is
|
|
; false.
|
|
; <H22> 2/14/92 JC Remove alternate ROM Physical address for Sonora based machines.
|
|
; <H21> 2/13/92 HJR Added NiagraExistsBit to Niagra's ProductInfo external features,
|
|
; since Niagra is just a minor variant of Jaws.
|
|
; <H20> 1/30/92 SWC DBLite NuBus: marked slot 9 disabled since we'll be using its
|
|
; PRAM for Power Manager stuff, and enabled slots C and D so that
|
|
; NuBus cards installed in Gemini (docking station) will be
|
|
; recognized.
|
|
; <H19> 1/20/92 JC Use alternate ROM physical Address on Sonora based machines to
|
|
; be able to support Double Exposure on Vail and Enable FPUs on
|
|
; Carnation.
|
|
; <H18> 01/11/92 jmp Fixed some types in the InfoCarnation tables.
|
|
; <H17> 01/11/92 jmp Added in the two new fields for each of the VideoInfo records in
|
|
; this file.
|
|
; <H16> 1/9/92 SWC Marked slot E in DB-Lite's NubusInfo table as a docking slot so
|
|
; we can figure out which it is without hard-coding it someplace
|
|
; else.
|
|
; <H15> 12/20/91 JC Add Carnation 3 slot 16/25/33 Mhz and Vail 16/25 Mhz
|
|
; <H14> 12/16/91 HJR Add Tables for Niagra and Dartanian.
|
|
; <H13> 12/5/91 SAM Removed Vail's RAMInfo table cuz it is now indentical to
|
|
; Carnation's table.
|
|
; <H12> 12/4/91 SWC Added 3 new RAM banks to DB-Lite's RAM info table.
|
|
; <H11> 12/4/91 SWC Updated DB-Lite's CPU ID value for final hardware, and added a
|
|
; ProductInfo table for DB-Lite LC. Moved the CPU ID register
|
|
; description and the comment list containing the supported
|
|
; machines here so it'll be next to the CPUID ProductInfo table.
|
|
; <H10> 12/4/91 CCH Changed DBLite, Carnation, Vail to use ProductInfo-based CPUID
|
|
; register scheme. Also reorganized file to be info-type based.
|
|
; <H9> 11/26/91 jmp Added a ÒVDACÓ for DBLite and updated the framebuffer base
|
|
; address for the DBLite and Sonora tables.
|
|
; <H8> 11/25/91 SAM Added Vail/Carnation RAMInfo tables.
|
|
; <H7> 11/25/91 CCH Modified Carnation/Vail's NuBus info table to not nuke
|
|
; SecondWave. Also used standard VIA equates.
|
|
; <H6> 10/30/91 SWC Added IWM base address to MSC/DB-Lite tables since we now have
|
|
; dynamic support for it in the Sony driver.
|
|
; <H5> 10/22/91 SWC Removed references to MSCAddr and MSCExists and added
|
|
; MSCChipBit, since MSC is just a variant of the RBV.
|
|
; <H4> 10/15/91 SWC Added clock/PRAM primitives vector table to ProductInfo for each
|
|
; machine.
|
|
; <H3> 8/28/91 rww More header cleanup.
|
|
; <H2> 8/28/91 rww Header cleanup.
|
|
; <H1> 8/28/91 rww First checked in.
|
|
;__________________________________________________________________________________________________
|
|
|
|
; From now on, new product and decoder tables should go here. Since we can't patch these
|
|
; tables anyway, from now on they'll be located just underneath the dispatch table at link
|
|
; time, so the file can grow to fill the remaining free space. This should make
|
|
; it much easier to add new CPUs.
|
|
|
|
; The DB-Lite and unknown decoder and info tables were moved from Universal.a in order to
|
|
; free up some space there (about 350 bytes).
|
|
|
|
Print Off
|
|
Load 'StandardEqu.d'
|
|
Include 'HardwarePrivateEqu.a'
|
|
Include 'UniversalEqu.a'
|
|
Include 'Slots.a'
|
|
Include 'DepVideoEqu.a'
|
|
include 'ROMEqu.a'
|
|
Print On
|
|
Machine MC68030
|
|
|
|
UnivTables Proc
|
|
|
|
With DecoderKinds,DecoderInfo,ProductInfo,NuBusInfo
|
|
IMPORT SNDCNTLSPIKE ; <SM17>
|
|
|
|
|
|
IF hasVIAClock THEN
|
|
IMPORT RTCClockPRAM ; <H4>
|
|
ENDIF
|
|
IF ViaADB THEN
|
|
IMPORT ViaADBTable ; <H30>
|
|
ENDIF
|
|
IF hasPwrMgrClock THEN
|
|
IMPORT PMGRClockPRAM ; <H4>
|
|
ENDIF
|
|
IF PwrMgrADB THEN
|
|
IMPORT PMgrADBTable ; <H30>
|
|
ENDIF
|
|
IF hasEgret THEN
|
|
IMPORT EgretClockPRAM ; <H4>
|
|
IMPORT EgretADBTable ; <H30>
|
|
IMPORT CudaClockPRAM ; <SM2>
|
|
IMPORT CudaADBTable ; <SM35>
|
|
ENDIF
|
|
IF hasOrwell THEN
|
|
IMPORT QuadraADBTable ; <H30>
|
|
ENDIF
|
|
IF hasProtectedPRAM THEN
|
|
IMPORT NoPRAMClockPRAM ; <H4>
|
|
ENDIF
|
|
IF IopADB THEN
|
|
IMPORT IOPADBTable ; <H30>
|
|
ENDIF
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
;
|
|
; CPUID Product Lookup Tables
|
|
;
|
|
; All CPUs listed in this table support the CPU ID register scheme.
|
|
;
|
|
; For truly hip, way new machines, a new CPU ID is defined (which hopefully will allow
|
|
; us to define new computers to our hearts' content without worrying about running out
|
|
; of IDs. The new register resides at the top of I/O address space ($5FFFFFFC) and is
|
|
; 32-bits long. It looks like this:
|
|
;
|
|
; Bits: : 31 - 16 : 15 - 12 : 11 : 10 - 0 :
|
|
; +-------------------------+---------+-----+-----------------+
|
|
; | signature, always $A55A | 0 to 15 | 0/1 | id field |
|
|
; +-------------------------+---------+-----+-----------------+
|
|
;
|
|
; Bits 15 to 12 represent the design center:
|
|
; b15 b14 b13 b12 Design center
|
|
; 0 0 0 0 High volume
|
|
; 0 0 0 1 Portables
|
|
; 0 0 1 0 High performance CISC
|
|
; 0 0 1 1 High performance RISC
|
|
; Bit 11 is a 0 if the whole ID exists in this ID register, 1 otherwise
|
|
; Bits 10 to 0 are the actual ID, per design center
|
|
;
|
|
; So, the currently defined machines and their CPU IDs are:
|
|
;
|
|
; %1010010101011010 0000 0 00000000000 $A55A 0000 high volume, ID 0: Vail 16MHz
|
|
; %1010010101011010 0000 0 00000000001 $A55A 0001 high volume, ID 1: Vail 25MHz
|
|
; %1010010101011010 0010 0 00000000010 $A55A 0003 high volume, ID 3: Vail 33MHz
|
|
;
|
|
; %1010010101011010 0001 0 00000000000 $A55A 1000 portables, ID 0: Yeager
|
|
; %1010010101011010 0001 0 00000000001 $A55A 1001 portables, ID 1: reserved
|
|
; %1010010101011010 0001 0 00000000010 $A55A 1002 portables, ID 2: Escher (33MHz) <H65>
|
|
; %1010010101011010 0001 0 00000000011 $A55A 1003 portables, ID 3: reserved (was PenLite)
|
|
; %1010010101011010 0001 0 00000000100 $A55A 1004 portables, ID 4: Duo 210 (25MHz)
|
|
; %1010010101011010 0001 0 00000000101 $A55A 1005 portables, ID 5: Duo 230 (33MHz)
|
|
; %1010010101011010 0001 0 00000000110 $A55A 1006 portables, ID 6: DBLite (16MHz)
|
|
; %1010010101011010 0001 0 00000000111 $A55A 1007 portables, ID 7: reserved 16MHz system
|
|
; &1010010101011010 0001 1 00000001000 $A55A 1008 portables, ID 8: BlackBird
|
|
;
|
|
; %1010010101011010 0001 0 00000010000 $A55A 1010 portables, ID 10: was an MBT system (yeager) not used
|
|
;
|
|
; %1010010101011010 0010 0 00000000000 $A55A 2000 high perf CISC, ID 0: Carnation
|
|
;
|
|
; %1010010101011010 0001 0 00000000111 $A55A 1808 portables, ID 0: Blackbird <SM39>
|
|
; %1010010101011010 0001 0 00000000111 $A55A 1809 portables, ID 1: reserved
|
|
; %1010010101011010 0001 0 00000000111 $A55A 180a portables, ID 2: reserved
|
|
; %1010010101011010 0001 0 00000000111 $A55A 180b portables, ID 3: reserved
|
|
; %1010010101011010 0001 0 00000000111 $A55A 180c portables, ID 4: reserved
|
|
; %1010010101011010 0001 0 00000000111 $A55A 180d portables, ID 5: reserved
|
|
; %1010010101011010 0001 0 00000000111 $A55A 180e portables, ID 6: reserved
|
|
; %1010010101011010 0001 0 00000000111 $A55A 180f portables, ID 7: reserved
|
|
;
|
|
; %1010010101011010 0010 1 01110101101 $A55A 2BAD high perf CISC ID 3AD: Wombat 20 MHz
|
|
; %1010010101011010 0010 1 01110101101 $A55A 2BAD high perf CISC ID 3AD: Wombat 25 MHz
|
|
; %1010010101011010 0010 1 01110101101 $A55A 2BAD high perf CISC ID 3AD: Wombat 33 MHz
|
|
; %1010010101011010 0010 1 01110101101 $A55A 2BAD high perf CISC ID 3AD: Wombat 40 MHz
|
|
; %1010010101011010 0010 1 01110101101 $A55A 2BAD high perf CISC ID 3AD: WLCD 20 MHz
|
|
; %1010010101011010 0010 1 01110101101 $A55A 2BAD high perf CISC ID 3AD: WLCD 25 MHz
|
|
;
|
|
; %1010010101011010 0011 0 00000010000 $A55A 3010 high perf RISC, ID 10: PDM <SM45>
|
|
; %1010010101011010 0011 0 00000010001 $A55A 3011 high perf RISC, ID 11: PDM (PDM in QFC)
|
|
; %1010010101011010 0011 0 00000010010 $A55A 3012 high perf RISC, ID 12: PDM (Carl Sagan)
|
|
; %1010010101011010 0011 0 00000010011 $A55A 3013 high perf RISC, ID 13: PDM (Cold Fusion)
|
|
;
|
|
; %1010010101011010 0011 0 00000010000 $A55A 3020 high perf RISC, ID 20: TNT
|
|
;
|
|
; %1010010101011010 0010 1 01000110000 $A55A 2830 Hi End Mac, ID 0: Cyclone 25/33/40 Mhz <SM7><SM26>
|
|
; Supplemental Cyclone/Tempest info in YMCA regs: M17 M16 M15 M14 <SM3><SM7><SM26>
|
|
;
|
|
; Cyclone33 : 0 1 1 1 ID = $7
|
|
; Cyclone40 : 1 1 1 1 ID = $F
|
|
; Tempest25 : 1 0 1 1 ID = $B
|
|
; Tempest33 : 1 0 0 0 ID = $8
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
EXPORT ProductLookup,CPUIDProductLookup,DecoderLookup,InfoNewWorld
|
|
|
|
ALIGN 4
|
|
|
|
CPUIDProductLookup
|
|
dc.l InfoNewWorld-*
|
|
dc.l 0 ; end of list
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
;
|
|
; Table of Unclear Purpose
|
|
;
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
; These look like CPUID fields?
|
|
dc.l $3035
|
|
dc.l $0190
|
|
dc.l $3041
|
|
dc.l $01F8
|
|
dc.l 0
|
|
dc.l 0
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
;
|
|
; Product Lookup Table
|
|
;
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
ProductLookup
|
|
dc.l 0 ; end of list
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
;
|
|
; Decoder Lookup Table
|
|
;
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
DecoderLookup
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
;
|
|
; Product Info Tables
|
|
;
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
|
|
IMPORT SndCntNewWorld, NWClockPRAM, NWADBTable, NWIntTbl
|
|
|
|
; NewWorld product table (the only one)
|
|
|
|
ALIGN 4
|
|
InfoNewWorld
|
|
dc.l 0 ; no decoder info
|
|
dc.l RamInfoNewWorld-InfoNewWorld ; offset to ram bank info
|
|
dc.l VideoInfoNewWorld-InfoNewWorld ; offset to video info
|
|
dc.l NuBusInfoNewWorld-InfoNewWorld ; offset to NuBus info
|
|
dc.w 0|\ ; hwCfgFlags
|
|
(1<<hwCbClock)|\ ; New clock chip present
|
|
(1<<hwCbMMU) ; Some kind of MMU present
|
|
dc.b BoxExtended ; product kind
|
|
dc.b 26 ; decoder kind
|
|
dc.w $3FFF ; ROM85, New ROMs, Power Off ability.
|
|
dc.b 4 ; default ROM Resource configuration
|
|
dc.b ProductInfoVersion ; ProductInfo version
|
|
BitVector32 ; Flags for valid base addresses 0-31
|
|
BitVector32 \ ; Flags for valid base addresses 32-63
|
|
30
|
|
BitVector32 ; Flags for valid base addresses 64-95
|
|
dc.l \ ; Flags for valid ext feature flags 0-31
|
|
(SoundHasSoundIn)|\ ; Has 8-bit mono sound input
|
|
(Sound16Bit)|\ ; has 16-bit hardware
|
|
(SoundStereoIn)|\ ; has stereo sound input
|
|
(SoundStereoOut)|\ ; has stereo sound output
|
|
(SoundStereoMixing)|\ ; has stereo mixing
|
|
(SoundPlayAndRecord)|\ ; can Play and Record simultaneously
|
|
(1<<SoundLineLevel)|\ ; requires line level on sound input port
|
|
(1<<SupportsIdle)|\ ; supports idle mode
|
|
(1<<hasNewMemMgr)|\ ; supports idle mode
|
|
(1<<SoftVBL) ; SoftVBL is valid
|
|
dc.l \ ; Flags for valid ext feature flags 32-63
|
|
(1<<has68kEmulator//32)|\ ; This ROM starts up with a 68k emulator
|
|
(1<<37//32)|\
|
|
(1<<38//32)|\
|
|
(1<<50//32)
|
|
dc.l 0 ; Flags for valid ext feature flags 64-95
|
|
dc.b $00,$00,$00,$00 ; don't check any VIA bits
|
|
dc.b $00,$00,$00,$00 ; anything with this decoder matches
|
|
dc.l $1a4 ; VIA1 init info
|
|
dc.l 0 ; no VIA2 init info
|
|
dc.l SndCntNewWorld-InfoNewWorld ; sound control vector table
|
|
dc.l NWClockPRAM-InfoNewWorld ; clock/PRAM vector table
|
|
dc.l NWADBTable-InfoNewWorld ; ADB/DebugUtil vector table
|
|
dc.l 0 ; no Power Manager primitives
|
|
dc.l NWIntTbl-InfoNewWorld ; interrupt handlers table
|
|
dc.l 0 ; no internal modem manager
|
|
dc.w cpuIDRISC|\ ; CPU ID: RISC design center
|
|
cpuIDinReg|\ ; CPU ID: register contains complete ID
|
|
$35 ; specific ID
|
|
dc.w 0 ; spare
|
|
dc.l IconInfoNewWorld-InfoNewWorld ; offset to ICON info
|
|
dc.l $190
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
;
|
|
; Decoder Tables
|
|
;
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
ALIGN 16
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
; RAM Info Tables
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
RamInfoNewWorld
|
|
dc.l $00800000 ; 8 MB is smallest bank
|
|
dc.l $00000000,$40000000 ; 1 GB Bank A
|
|
dc.l $FFFFFFFF ; end of table
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
; Video Info Tables
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
VideoInfoNewWorld
|
|
dc.w -1
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
; NuBus Info Tables
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
NuBusInfoNewWorld
|
|
dc.b 0|(1<<hasPRAM)|(1<<canInterrupt) ; slot 0
|
|
dc.b 0|(1<<slotDisabled) ; slot 1
|
|
dc.b 0|(1<<slotDisabled) ; slot 2
|
|
dc.b 0|(1<<slotDisabled) ; slot 3
|
|
dc.b 0|(1<<slotDisabled) ; slot 4
|
|
dc.b 0|(1<<slotDisabled) ; slot 5
|
|
dc.b 0|(1<<slotDisabled) ; slot 6
|
|
dc.b 0|(1<<slotDisabled) ; slot 7
|
|
dc.b 0|(1<<slotDisabled) ; slot 8
|
|
dc.b 0|(1<<slotDisabled) ; slot 9
|
|
dc.b 0|(1<<slotDisabled) ; slot A
|
|
dc.b 0|(1<<slotDisabled) ; slot B
|
|
dc.b 0|(1<<slotDisabled)|(1<<hasPRAM) ; slot C
|
|
dc.b 0|(1<<slotDisabled)|(1<<hasPRAM) ; slot D
|
|
dc.b 0|(1<<slotDisabled)|(1<<hasPRAM) ; slot E
|
|
dc.b 0 ; slot F
|
|
|
|
|
|
IconTable ; <SM74>
|
|
IconInfoNewWorld
|
|
dc.l DisketteIcon-IconInfoNewWorld ; drive 1 logical icon,
|
|
dc.l DisketteIcon-IconInfoNewWorld ; physical icon,
|
|
dc.w $0004 ; primary int removable, SuperDrive
|
|
|
|
dc.l DisketteIcon-IconInfoNewWorld ; drive 2 logical icon,
|
|
dc.l DisketteIcon-IconInfoNewWorld ; physical icon,
|
|
dc.w $0104 ; secondary ext removable, SuperDrive (Actually there is none...)
|
|
|
|
|
|
|
|
|
|
|
|
DisketteIcon
|
|
dc.w $7FFF,$FFF8,$8100,$0104,$8100,$7102,$8100,$8901
|
|
dc.w $8100,$8901,$8100,$8901,$8100,$8901,$8100,$8901
|
|
dc.w $8100,$7101,$8100,$0101,$80FF,$FE01,$8000,$0001
|
|
dc.w $8000,$0001,$8000,$0001,$8000,$0001,$8000,$0001
|
|
dc.w $8000,$0001,$8000,$0001,$87FF,$FFE1,$8800,$0011
|
|
dc.w $8800,$0011,$8800,$0011,$8800,$0011,$8800,$0011
|
|
dc.w $8800,$0011,$8800,$0011,$8800,$0011,$8800,$0011
|
|
dc.w $8800,$0011,$8800,$0011,$8800,$0011,$7FFF,$FFFE
|
|
dc.w $7FFF,$FFF8,$FFFF,$FFFC,$FFFF,$FFFE,$FFFF,$FFFF
|
|
dc.w $FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF
|
|
dc.w $FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF
|
|
dc.w $FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF
|
|
dc.w $FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF
|
|
dc.w $FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF
|
|
dc.w $FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF
|
|
dc.w $FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF,$7FFF,$FFFE
|
|
dc.w $0 ;old HD-20 driver drive ID string (null here)
|
|
|
|
_AssumeEq (DisketteIcon-IconTable),((DisketteIcon-IconTable)>>1)<<1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
;
|
|
; VIA Initialization Value Tables
|
|
;
|
|
;ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
|
|
|
|
dINPUT EQU 0
|
|
dOUTPUT EQU 1
|
|
|
|
VIA1InitNewWorld
|
|
dc.b \ ; vBufA initial value
|
|
(0<<vSync)|\ ; Synchronous modem disabled (active high)
|
|
(1<<4)|\ ;
|
|
(0<<6) ;
|
|
|
|
dc.b \ ; vDIRA initial value
|
|
(dOUTPUT<<vSync)|\ ; Synchronous modem is an output
|
|
(dOUTPUT<<4)|\ ;
|
|
(dOUTPUT<<6) ;
|
|
|
|
dc.b \ ; vBufB initial value
|
|
(1<<vXcvrSesBit)|\ ; Egret interrupt (xcvr session)
|
|
(1<<vViaFullBit)|\ ; Egret via full
|
|
(1<<vSysSesbit) ; Egret system session
|
|
|
|
dc.b \ ; vDIRB initial value
|
|
(dINPUT<<vXcvrSesBit)|\ ; xcvr session is an input
|
|
(dOUTPUT<<vViaFullBit)|\ ; viafull is an output
|
|
(dOUTPUT<<vSysSesbit) ; system session is an output
|
|
|
|
dc.b \ ; vPCR initial value
|
|
(%0<<0)|\ ; CA1 input neg active edge (60Hz interrupt)
|
|
(%000<<1)|\ ; CA2 (no connection)
|
|
(%0<<4)|\ ; CB1 input neg active edge (ADB clock)
|
|
(%000<<5) ; CB2 input neg active edge (ADB data)
|
|
|
|
dc.b \ ; vACR initial value
|
|
(%0<<0)|\ ; PA latch disable
|
|
(%0<<1)|\ ; PB latch disable
|
|
(%111<<2)|\ ; SR enabled for Egret
|
|
(%0<<5)|\ ; T2 timed interrupt
|
|
(%00<<6) ; T1 timed interrupt, PB7 disabled
|
|
|
|
dc.b $00
|
|
dc.b $58
|
|
dc.b $00
|
|
dc.b $00
|
|
dc.b $00
|
|
dc.b $00
|
|
dc.b $00
|
|
dc.b $00
|
|
|
|
EndProc
|
|
|
|
End
|