home *** CD-ROM | disk | FTP | other *** search
- #ifndef GRAPHICS_DISPLAYINFO_H
- #define GRAPHICS_DISPLAYINFO_H
-
- #ifndef EXEC_TYPES_H
- #include <exec/types.h>
- #endif /* EXEC_TYPES_H */
-
- #ifndef GRAPHICS_GFX_H
- #include <graphics/gfx.h>
- #endif /* GRAPHICS_GFX_H */
-
- #ifndef GRAPHICS_MONITOR_H
- #include <graphics/monitor.h>
- #endif /* GRAPHICS_MONITOR_H */
-
- #ifndef GRAPHICS_MODEID_H
- #include <graphics/modeid.h>
- #endif /* GRAPHICS_MODEID_H */
-
- #ifndef UTILITY_TAGITEM_H
- #include <utility/tagitem.h>
- #endif /* UTILITY_TAGITEM_H */
-
- #define DTAG_DISP 0x80000000
- #define DTAG_DIMS 0x80001000
- #define DTAG_MNTR _PxA_IGNORE
- #define DTAG_NAME 0x80003000
-
- typedef APTR DisplayInfoHandle;
-
- struct QueryHeader
- {
- ULONG StructID; /* datachunk type identifier */
- ULONG DisplayID; /* copy of display record key */
- ULONG SkipID; /* TAG_SKIP -- see tagitems.h */
- ULONG Length; /* length of local data in double-longwords */
- };
-
- struct DisplayInfo
- {
- struct QueryHeader Header;
- UWORD NotAvailable; /* if NULL available, else see defines */
- ULONG PropertyFlags; /* Properties of this mode see defines */
- Point Resolution; /* ticks-per-pixel X/Y */
- UWORD PixelSpeed; /* aproximation in nanoseconds */
- UWORD NumStdSprites; /* number of standard amiga sprites */
- UWORD PaletteRange; /* OBSOLETE - use Red/Green/Blue bits instead */
- Point SpriteResolution; /* std sprite ticks-per-pixel X/Y */
- UBYTE pad[4]; /* used internally */
- UBYTE RedBits; /* number of Red bits this display supports (V39) */
- UBYTE GreenBits; /* number of Green bits this display supports (V39) */
- UBYTE BlueBits; /* number of Blue bits this display supports (V39) */
- UBYTE pad2[5]; /* find some use for this. */
- ULONG reserved[2]; /* terminator */
- };
-
- struct DimensionInfo
- {
- struct QueryHeader Header;
- UWORD MaxDepth; /* log2( max number of colors ) */
- UWORD MinRasterWidth; /* minimum width in pixels */
- UWORD MinRasterHeight; /* minimum height in pixels */
- UWORD MaxRasterWidth; /* maximum width in pixels */
- UWORD MaxRasterHeight; /* maximum height in pixels */
- struct Rectangle Nominal; /* "standard" dimensions */
- struct Rectangle MaxOScan; /* fixed, hardware dependent */
- struct Rectangle VideoOScan; /* fixed, hardware dependent */
- struct Rectangle TxtOScan; /* editable via preferences */
- struct Rectangle StdOScan; /* editable via preferences */
- UBYTE pad[14];
- ULONG reserved[2]; /* terminator */
- };
-
- #define DISPLAYNAMELEN 32
-
- struct NameInfo
- {
- struct QueryHeader Header;
- UBYTE Name[DISPLAYNAMELEN];
- ULONG reserved[2]; /* terminator */
- };
-
- #endif /* GRAPHICS_DISPLAYINFO_H */
-