home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!cbmvax!chrisg
- From: chrisg@cbmvax.commodore.com (Chris Green)
- Newsgroups: comp.sys.amiga.programmer
- Subject: Re: AGA chipset registers and screenid's
- Message-ID: <38768@cbmvax.commodore.com>
- Date: 25 Jan 93 14:10:53 GMT
- References: <1jpgkiINN1q8@motmot.doc.ic.ac.uk> <1993Jan24.113304.17393@crash>
- Reply-To: chrisg@cbmvax.commodore.com (Chris Green)
- Organization: Commodore, West Chester, PA
- Lines: 268
-
- In article <1993Jan24.113304.17393@crash> rtillery@crash.cts.com (Rick Tillery) writes:
- >Mark David Simmons (mds@doc.ic.ac.uk) wrote:
- >: Please don't flame my curiosity but I would like to know what the new registers/
- >: bits used in the AGA chipset and what they're used for (I don't want to have to
- >: try to disassemble AmigaDOS 3 to find out - cos I'm curious but lazy 8-).
- >:
- >: Also has anyone got a complete list of ScreenID's (names and no.s)?
- >:
- >: Please (*BEG*) mail me with the information or just a location on an anonymous
- >: FTP site somewhere where you know these things are to be found (I check amiga.
- >: physik.unizh.ch and nic.funet.fi every day in the hope...)...
- >:
- >
- >As an interesting observation, the AGA version of DPaint IV has a requester
- >that has (among many other things) the DisplayID code for each mode, aspect
- >ratio, sweep rate etc.
- >
- >Until I can get hold of more official info from C=, this is my best source
- >of this info (I use it to hand place the correct code into the CAMG chunks
- >of my IFFs so they open up the correct screen when viewed with VT).
- >
-
- It's in <graphics/modeid.h>:
-
- #define LORES_KEY 0x00000000
- #define HIRES_KEY 0x00008000
- #define SUPER_KEY 0x00008020
- #define HAM_KEY 0x00000800
- #define LORESLACE_KEY 0x00000004
- #define HIRESLACE_KEY 0x00008004
- #define SUPERLACE_KEY 0x00008024
- #define HAMLACE_KEY 0x00000804
- #define LORESDPF_KEY 0x00000400
- #define HIRESDPF_KEY 0x00008400
- #define SUPERDPF_KEY 0x00008420
- #define LORESLACEDPF_KEY 0x00000404
- #define HIRESLACEDPF_KEY 0x00008404
- #define SUPERLACEDPF_KEY 0x00008424
- #define LORESDPF2_KEY 0x00000440
- #define HIRESDPF2_KEY 0x00008440
- #define SUPERDPF2_KEY 0x00008460
- #define LORESLACEDPF2_KEY 0x00000444
- #define HIRESLACEDPF2_KEY 0x00008444
- #define SUPERLACEDPF2_KEY 0x00008464
- #define EXTRAHALFBRITE_KEY 0x00000080
- #define EXTRAHALFBRITELACE_KEY 0x00000084
- /* New for AA ChipSet (V39) */
- #define HIRESHAM_KEY 0x00008800
- #define SUPERHAM_KEY 0x00008820
- #define HIRESEHB_KEY 0x00008080
- #define SUPEREHB_KEY 0x000080a0
- #define HIRESHAMLACE_KEY 0x00008804
- #define SUPERHAMLACE_KEY 0x00008824
- #define HIRESEHBLACE_KEY 0x00008084
- #define SUPEREHBLACE_KEY 0x000080a4
-
- /* VGA identifiers */
-
- #define VGA_MONITOR_ID 0x00031000
-
- #define VGAEXTRALORES_KEY 0x00031004
- #define VGALORES_KEY 0x00039004
- #define VGAPRODUCT_KEY 0x00039024
- #define VGAHAM_KEY 0x00031804
- #define VGAEXTRALORESLACE_KEY 0x00031005
- #define VGALORESLACE_KEY 0x00039005
- #define VGAPRODUCTLACE_KEY 0x00039025
- #define VGAHAMLACE_KEY 0x00031805
- #define VGAEXTRALORESDPF_KEY 0x00031404
- #define VGALORESDPF_KEY 0x00039404
- #define VGAPRODUCTDPF_KEY 0x00039424
- #define VGAEXTRALORESLACEDPF_KEY 0x00031405
- #define VGALORESLACEDPF_KEY 0x00039405
- #define VGAPRODUCTLACEDPF_KEY 0x00039425
- #define VGAEXTRALORESDPF2_KEY 0x00031444
- #define VGALORESDPF2_KEY 0x00039444
- #define VGAPRODUCTDPF2_KEY 0x00039464
- #define VGAEXTRALORESLACEDPF2_KEY 0x00031445
- #define VGALORESLACEDPF2_KEY 0x00039445
- #define VGAPRODUCTLACEDPF2_KEY 0x00039465
- #define VGAEXTRAHALFBRITE_KEY 0x00031084
- #define VGAEXTRAHALFBRITELACE_KEY 0x00031085
- /* New for AA ChipSet (V39) */
- #define VGAPRODUCTHAM_KEY 0x00039824
- #define VGALORESHAM_KEY 0x00039804
- #define VGAEXTRALORESHAM_KEY VGAHAM_KEY
- #define VGAPRODUCTHAMLACE_KEY 0x00039825
- #define VGALORESHAMLACE_KEY 0x00039805
- #define VGAEXTRALORESHAMLACE_KEY VGAHAMLACE_KEY
- #define VGAEXTRALORESEHB_KEY VGAEXTRAHALFBRITE_KEY
- #define VGAEXTRALORESEHBLACE_KEY VGAEXTRAHALFBRITELACE_KEY
- #define VGALORESEHB_KEY 0x00039084
- #define VGALORESEHBLACE_KEY 0x00039085
- #define VGAEHB_KEY 0x000390a4
- #define VGAEHBLACE_KEY 0x000390a5
- /* These ModeIDs are the scandoubled equivalents of the above, with the
- * exception of the DualPlayfield modes, as AA does not allow for scandoubling
- * dualplayfield.
- */
- #define VGAEXTRALORESDBL_KEY 0x00031000
- #define VGALORESDBL_KEY 0x00039000
- #define VGAPRODUCTDBL_KEY 0x00039020
- #define VGAEXTRALORESHAMDBL_KEY 0x00031800
- #define VGALORESHAMDBL_KEY 0x00039800
- #define VGAPRODUCTHAMDBL_KEY 0x00039820
- #define VGAEXTRALORESEHBDBL_KEY 0x00031080
- #define VGALORESEHBDBL_KEY 0x00039080
- #define VGAPRODUCTEHBDBL_KEY 0x000390a0
-
- /* a2024 identifiers */
-
- #define A2024_MONITOR_ID 0x00041000
-
- #define A2024TENHERTZ_KEY 0x00041000
- #define A2024FIFTEENHERTZ_KEY 0x00049000
-
- /* prototype identifiers (private) */
-
- #define PROTO_MONITOR_ID 0x00051000
-
-
- /* These monitors and modes were added for the V38 release. */
-
- #define EURO72_MONITOR_ID 0x00061000
-
- #define EURO72EXTRALORES_KEY 0x00061004
- #define EURO72LORES_KEY 0x00069004
- #define EURO72PRODUCT_KEY 0x00069024
- #define EURO72HAM_KEY 0x00061804
- #define EURO72EXTRALORESLACE_KEY 0x00061005
- #define EURO72LORESLACE_KEY 0x00069005
- #define EURO72PRODUCTLACE_KEY 0x00069025
- #define EURO72HAMLACE_KEY 0x00061805
- #define EURO72EXTRALORESDPF_KEY 0x00061404
- #define EURO72LORESDPF_KEY 0x00069404
- #define EURO72PRODUCTDPF_KEY 0x00069424
- #define EURO72EXTRALORESLACEDPF_KEY 0x00061405
- #define EURO72LORESLACEDPF_KEY 0x00069405
- #define EURO72PRODUCTLACEDPF_KEY 0x00069425
- #define EURO72EXTRALORESDPF2_KEY 0x00061444
- #define EURO72LORESDPF2_KEY 0x00069444
- #define EURO72PRODUCTDPF2_KEY 0x00069464
- #define EURO72EXTRALORESLACEDPF2_KEY 0x00061445
- #define EURO72LORESLACEDPF2_KEY 0x00069445
- #define EURO72PRODUCTLACEDPF2_KEY 0x00069465
- #define EURO72EXTRAHALFBRITE_KEY 0x00061084
- #define EURO72EXTRAHALFBRITELACE_KEY 0x00061085
- /* New AA modes (V39) */
- #define EURO72PRODUCTHAM_KEY 0x00069824
- #define EURO72PRODUCTHAMLACE_KEY 0x00069825
- #define EURO72LORESHAM_KEY 0x00069804
- #define EURO72LORESHAMLACE_KEY 0x00069805
- #define EURO72EXTRALORESHAM_KEY EURO72HAM_KEY
- #define EURO72EXTRALORESHAMLACE_KEY EURO72HAMLACE_KEY
- #define EURO72EXTRALORESEHB_KEY EURO72EXTRAHALFBRITE_KEY
- #define EURO72EXTRALORESEHBLACE_KEY EURO72EXTRAHALFBRITELACE_KEY
- #define EURO72LORESEHB_KEY 0x00069084
- #define EURO72LORESEHBLACE_KEY 0x00069085
- #define EURO72EHB_KEY 0x000690a4
- #define EURO72EHBLACE_KEY 0x000690a5
- /* These ModeIDs are the scandoubled equivalents of the above, with the
- * exception of the DualPlayfield modes, as AA does not allow for scandoubling
- * dualplayfield.
- */
- #define EURO72EXTRALORESDBL_KEY 0x00061000
- #define EURO72LORESDBL_KEY 0x00069000
- #define EURO72PRODUCTDBL_KEY 0x00069020
- #define EURO72EXTRALORESHAMDBL_KEY 0x00061800
- #define EURO72LORESHAMDBL_KEY 0x00069800
- #define EURO72PRODUCTHAMDBL_KEY 0x00069820
- #define EURO72EXTRALORESEHBDBL_KEY 0x00061080
- #define EURO72LORESEHBDBL_KEY 0x00069080
- #define EURO72PRODUCTEHBDBL_KEY 0x000690a0
-
-
- #define EURO36_MONITOR_ID 0x00071000
-
- /* Euro36 modeids can be ORed with the default modeids a la NTSC and PAL.
- * For example, Euro36 SuperHires is
- * (EURO36_MONITOR_ID | SUPER_KEY)
- */
-
- #define SUPER72_MONITOR_ID 0x00081000
-
- /* Super72 modeids can be ORed with the default modeids a la NTSC and PAL.
- * For example, Super72 SuperHiresLace (800x600) is
- * (SUPER72_MONITOR_ID | SUPERLACE_KEY).
- * The following scandoubled Modes are the exception:
- */
- #define SUPER72LORESDBL_KEY 0x00081008
- #define SUPER72HIRESDBL_KEY 0x00089008
- #define SUPER72SUPERDBL_KEY 0x00089028
- #define SUPER72LORESHAMDBL_KEY 0x00081808
- #define SUPER72HIRESHAMDBL_KEY 0x00089808
- #define SUPER72SUPERHAMDBL_KEY 0x00089828
- #define SUPER72LORESEHBDBL_KEY 0x00081088
- #define SUPER72HIRESEHBDBL_KEY 0x00089088
- #define SUPER72SUPEREHBDBL_KEY 0x000890a8
-
-
- /* These monitors and modes were added for the V39 release. */
-
- #define DBLNTSC_MONITOR_ID 0x00091000
-
- #define DBLNTSCLORES_KEY 0x00091000
- #define DBLNTSCLORESFF_KEY 0x00091004
- #define DBLNTSCLORESHAM_KEY 0x00091800
- #define DBLNTSCLORESHAMFF_KEY 0x00091804
- #define DBLNTSCLORESEHB_KEY 0x00091080
- #define DBLNTSCLORESEHBFF_KEY 0x00091084
- #define DBLNTSCLORESLACE_KEY 0x00091005
- #define DBLNTSCLORESHAMLACE_KEY 0x00091805
- #define DBLNTSCLORESEHBLACE_KEY 0x00091085
- #define DBLNTSCLORESDPF_KEY 0x00091400
- #define DBLNTSCLORESDPFLACE_KEY 0x00091404
- #define DBLNTSCLORESDPF2_KEY 0x00091440
- #define DBLNTSCLORESDPF2LACE_KEY 0x00091444
- #define DBLNTSCHIRES_KEY 0x00099000
- #define DBLNTSCHIRESFF_KEY 0x00099004
- #define DBLNTSCHIRESHAM_KEY 0x00099800
- #define DBLNTSCHIRESHAMFF_KEY 0x00099804
- #define DBLNTSCHIRESLACE_KEY 0x00099005
- #define DBLNTSCHIRESHAMLACE_KEY 0x00099805
- #define DBLNTSCHIRESEHB_KEY 0x00099080
- #define DBLNTSCHIRESEHBFF_KEY 0x00099084
- #define DBLNTSCHIRESEHBLACE_KEY 0x00099085
- #define DBLNTSCHIRESDPF_KEY 0x00099400
- #define DBLNTSCHIRESDPFLACE_KEY 0x00099404
- #define DBLNTSCHIRESDPF2_KEY 0x00099440
- #define DBLNTSCHIRESDPF2LACE_KEY 0x00099444
-
- #define DBLPAL_MONITOR_ID 0x000a1000
-
- #define DBLPALLORES_KEY 0x000a1000
- #define DBLPALLORESFF_KEY 0x000a1004
- #define DBLPALLORESHAM_KEY 0x000a1800
- #define DBLPALLORESHAMFF_KEY 0x000a1804
- #define DBLPALLORESEHB_KEY 0x000a1080
- #define DBLPALLORESEHBFF_KEY 0x000a1084
- #define DBLPALLORESLACE_KEY 0x000a1005
- #define DBLPALLORESHAMLACE_KEY 0x000a1805
- #define DBLPALLORESEHBLACE_KEY 0x000a1085
- #define DBLPALLORESDPF_KEY 0x000a1400
- #define DBLPALLORESDPFLACE_KEY 0x000a1404
- #define DBLPALLORESDPF2_KEY 0x000a1440
- #define DBLPALLORESDPF2LACE_KEY 0x000a1444
- #define DBLPALHIRES_KEY 0x000a9000
- #define DBLPALHIRESFF_KEY 0x000a9004
- #define DBLPALHIRESHAM_KEY 0x000a9800
- #define DBLPALHIRESHAMFF_KEY 0x000a9804
- #define DBLPALHIRESLACE_KEY 0x000a9005
- #define DBLPALHIRESHAMLACE_KEY 0x000a9805
- #define DBLPALHIRESEHB_KEY 0x000a9080
- #define DBLPALHIRESEHBFF_KEY 0x000a9084
- #define DBLPALHIRESEHBLACE_KEY 0x000a9085
- #define DBLPALHIRESDPF_KEY 0x000a9400
- #define DBLPALHIRESDPFLACE_KEY 0x000a9404
- #define DBLPALHIRESDPF2_KEY 0x000a9440
- #define DBLPALHIRESDPF2LACE_KEY 0x000a9444
-
- --
- *-------------------------------------------*---------------------------*
- |Chris Green - Graphics Software Engineer - chrisg@commodore.COM f
- | Commodore-Amiga - uunet!cbmvax!chrisg n
- |My opinions are my own, and do not - icantforgettheimpression o
- |necessarily represent those of my employer.- youmadeyouleftaholeinthe r
- |"A screaming comes across the sky..." - backofmyhead d
- *-------------------------------------------*---------------------------*
-