home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 4 / FreshFish_May-June1994.bin / bbs / cbm / nduk-v39.lha / V39 / include / graphics / modeid.h < prev    next >
C/C++ Source or Header  |  1992-09-24  |  9KB  |  265 lines

  1. #ifndef GRAPHICS_MODEID_H
  2. #define GRAPHICS_MODEID_H
  3. /*
  4. **    $VER: modeid.h 39.4 (24.07.92)
  5. **    Includes Release 39.108
  6. **
  7. **    include define file for graphics display mode IDs.
  8. **
  9. **    (C) Copyright 1985-1992 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. */
  12.  
  13. #ifndef GRAPHICS_DISPLAYINFO_H
  14. #include <graphics/displayinfo.h>
  15. #endif
  16.  
  17. #define INVALID_ID            ~0
  18.  
  19. /* normal identifiers */
  20.  
  21. #define MONITOR_ID_MASK            0xFFFF1000
  22.  
  23. #define DEFAULT_MONITOR_ID        0x00000000
  24. #define NTSC_MONITOR_ID            0x00011000
  25. #define PAL_MONITOR_ID            0x00021000
  26.  
  27. /* the following 22 composite keys are for Modes on the default Monitor.
  28.  * NTSC & PAL "flavors" of these particular keys may be made by or'ing
  29.  * the NTSC or PAL MONITOR_ID with the desired MODE_KEY...
  30.  *
  31.  * For example, to specifically open a PAL HAM interlaced ViewPort
  32.  * (or intuition screen), you would use the modeid of
  33.  * (PAL_MONITOR_ID | HAMLACE_KEY)
  34.  */
  35.  
  36. #define LORES_KEY            0x00000000
  37. #define HIRES_KEY            0x00008000
  38. #define SUPER_KEY            0x00008020
  39. #define HAM_KEY                0x00000800
  40. #define LORESLACE_KEY            0x00000004
  41. #define HIRESLACE_KEY            0x00008004
  42. #define SUPERLACE_KEY            0x00008024
  43. #define HAMLACE_KEY            0x00000804
  44. #define LORESDPF_KEY            0x00000400
  45. #define HIRESDPF_KEY            0x00008400
  46. #define SUPERDPF_KEY            0x00008420
  47. #define LORESLACEDPF_KEY        0x00000404
  48. #define HIRESLACEDPF_KEY        0x00008404
  49. #define SUPERLACEDPF_KEY        0x00008424
  50. #define LORESDPF2_KEY            0x00000440
  51. #define HIRESDPF2_KEY            0x00008440
  52. #define SUPERDPF2_KEY            0x00008460
  53. #define LORESLACEDPF2_KEY        0x00000444
  54. #define HIRESLACEDPF2_KEY        0x00008444
  55. #define SUPERLACEDPF2_KEY        0x00008464
  56. #define EXTRAHALFBRITE_KEY        0x00000080
  57. #define EXTRAHALFBRITELACE_KEY        0x00000084
  58. /* New for AA ChipSet (V39) */
  59. #define HIRESHAM_KEY            0x00008800
  60. #define SUPERHAM_KEY            0x00008820
  61. #define HIRESEHB_KEY            0x00008080
  62. #define SUPEREHB_KEY            0x000080a0
  63. #define HIRESHAMLACE_KEY        0x00008804
  64. #define SUPERHAMLACE_KEY        0x00008824
  65. #define HIRESEHBLACE_KEY        0x00008084
  66. #define SUPEREHBLACE_KEY        0x000080a4
  67.  
  68. /* VGA identifiers */
  69.  
  70. #define VGA_MONITOR_ID            0x00031000
  71.  
  72. #define VGAEXTRALORES_KEY        0x00031004
  73. #define VGALORES_KEY            0x00039004
  74. #define VGAPRODUCT_KEY            0x00039024
  75. #define VGAHAM_KEY            0x00031804
  76. #define VGAEXTRALORESLACE_KEY        0x00031005
  77. #define VGALORESLACE_KEY        0x00039005
  78. #define VGAPRODUCTLACE_KEY        0x00039025
  79. #define VGAHAMLACE_KEY            0x00031805
  80. #define VGAEXTRALORESDPF_KEY        0x00031404
  81. #define VGALORESDPF_KEY            0x00039404
  82. #define VGAPRODUCTDPF_KEY        0x00039424
  83. #define VGAEXTRALORESLACEDPF_KEY    0x00031405
  84. #define VGALORESLACEDPF_KEY        0x00039405
  85. #define VGAPRODUCTLACEDPF_KEY        0x00039425
  86. #define VGAEXTRALORESDPF2_KEY        0x00031444
  87. #define VGALORESDPF2_KEY        0x00039444
  88. #define VGAPRODUCTDPF2_KEY        0x00039464
  89. #define VGAEXTRALORESLACEDPF2_KEY    0x00031445
  90. #define VGALORESLACEDPF2_KEY        0x00039445
  91. #define VGAPRODUCTLACEDPF2_KEY        0x00039465
  92. #define VGAEXTRAHALFBRITE_KEY        0x00031084
  93. #define VGAEXTRAHALFBRITELACE_KEY    0x00031085
  94. /* New for AA ChipSet (V39) */
  95. #define VGAPRODUCTHAM_KEY        0x00039824
  96. #define VGALORESHAM_KEY            0x00039804
  97. #define VGAEXTRALORESHAM_KEY        VGAHAM_KEY
  98. #define VGAPRODUCTHAMLACE_KEY        0x00039825
  99. #define VGALORESHAMLACE_KEY        0x00039805
  100. #define VGAEXTRALORESHAMLACE_KEY    VGAHAMLACE_KEY
  101. #define VGAEXTRALORESEHB_KEY        VGAEXTRAHALFBRITE_KEY
  102. #define VGAEXTRALORESEHBLACE_KEY    VGAEXTRAHALFBRITELACE_KEY
  103. #define VGALORESEHB_KEY            0x00039084
  104. #define VGALORESEHBLACE_KEY        0x00039085
  105. #define VGAEHB_KEY            0x000390a4
  106. #define VGAEHBLACE_KEY            0x000390a5
  107.  
  108. /* a2024 identifiers */
  109.  
  110. #define A2024_MONITOR_ID        0x00041000
  111.  
  112. #define A2024TENHERTZ_KEY        0x00041000
  113. #define A2024FIFTEENHERTZ_KEY        0x00049000
  114.  
  115. /* prototype identifiers (private) */
  116.  
  117. #define PROTO_MONITOR_ID        0x00051000
  118.  
  119.  
  120. /* These monitors and modes were added for the V38 release. */
  121.  
  122. #define EURO72_MONITOR_ID        0x00061000
  123.  
  124. #define EURO72EXTRALORES_KEY        0x00061004
  125. #define EURO72LORES_KEY            0x00069004
  126. #define EURO72PRODUCT_KEY        0x00069024
  127. #define EURO72HAM_KEY            0x00061804
  128. #define EURO72EXTRALORESLACE_KEY    0x00061005
  129. #define EURO72LORESLACE_KEY        0x00069005
  130. #define EURO72PRODUCTLACE_KEY        0x00069025
  131. #define EURO72HAMLACE_KEY        0x00061805
  132. #define EURO72EXTRALORESDPF_KEY        0x00061404
  133. #define EURO72LORESDPF_KEY        0x00069404
  134. #define EURO72PRODUCTDPF_KEY        0x00069424
  135. #define EURO72EXTRALORESLACEDPF_KEY    0x00061405
  136. #define EURO72LORESLACEDPF_KEY        0x00069405
  137. #define EURO72PRODUCTLACEDPF_KEY    0x00069425
  138. #define EURO72EXTRALORESDPF2_KEY    0x00061444
  139. #define EURO72LORESDPF2_KEY        0x00069444
  140. #define EURO72PRODUCTDPF2_KEY        0x00069464
  141. #define EURO72EXTRALORESLACEDPF2_KEY    0x00061445
  142. #define EURO72LORESLACEDPF2_KEY        0x00069445
  143. #define EURO72PRODUCTLACEDPF2_KEY    0x00069465
  144. #define EURO72EXTRAHALFBRITE_KEY    0x00061084
  145. #define EURO72EXTRAHALFBRITELACE_KEY    0x00061085
  146. /* New AA modes (V39) */
  147. #define EURO72PRODUCTHAM_KEY        0x00069824
  148. #define EURO72PRODUCTHAMLACE_KEY    0x00069825
  149. #define EURO72LORESHAM_KEY        0x00069804
  150. #define EURO72LORESHAMLACE_KEY        0x00069805
  151. #define EURO72EXTRALORESHAM_KEY        EURO72HAM_KEY
  152. #define EURO72EXTRALORESHAMLACE_KEY    EURO72HAMLACE_KEY
  153. #define EURO72EXTRALORESEHB_KEY        EURO72EXTRAHALFBRITE_KEY
  154. #define EURO72EXTRALORESEHBLACE_KEY    EURO72EXTRAHALFBRITELACE_KEY
  155. #define EURO72LORESEHB_KEY        0x00069084
  156. #define EURO72LORESEHBLACE_KEY        0x00069085
  157. #define EURO72EHB_KEY            0x000690a4
  158. #define EURO72EHBLACE_KEY        0x000690a5
  159.  
  160.  
  161. #define EURO36_MONITOR_ID        0x00071000
  162.  
  163. /* Euro36 modeids can be ORed with the default modeids a la NTSC and PAL.
  164.  * For example, Euro36 SuperHires is
  165.  * (EURO36_MONITOR_ID | SUPER_KEY)
  166.  */
  167.  
  168. #define SUPER72_MONITOR_ID        0x00081000
  169.  
  170. /* Similarly for Super72 modes. */
  171.  
  172.  
  173. /* These monitors and modes were added for the V39 release. */
  174.  
  175. #define DBLNTSC_MONITOR_ID        0x00091000
  176.  
  177. #define DBLNTSCLORES_KEY        0x00091000
  178. #define DBLNTSCLORESFF_KEY        0x00091004
  179. #define DBLNTSCLORESHAM_KEY        0x00091800
  180. #define DBLNTSCLORESHAMFF_KEY        0x00091804
  181. #define DBLNTSCLORESEHB_KEY        0x00091080
  182. #define DBLNTSCLORESEHBFF_KEY        0x00091084
  183. #define DBLNTSCLORESLACE_KEY        0x00091005
  184. #define DBLNTSCLORESHAMLACE_KEY        0x00091805
  185. #define DBLNTSCLORESEHBLACE_KEY        0x00091085
  186. #define DBLNTSCLORESDPF_KEY        0x00091400
  187. #define DBLNTSCLORESDPFLACE_KEY        0x00091404
  188. #define DBLNTSCLORESDPF2_KEY        0x00091440
  189. #define DBLNTSCLORESDPF2LACE_KEY    0x00091444
  190. #define DBLNTSCHIRES_KEY        0x00099000
  191. #define DBLNTSCHIRESFF_KEY        0x00099004
  192. #define DBLNTSCHIRESHAM_KEY        0x00099800
  193. #define DBLNTSCHIRESHAMFF_KEY        0x00099804
  194. #define DBLNTSCHIRESLACE_KEY        0x00099005
  195. #define DBLNTSCHIRESHAMLACE_KEY        0x00099805
  196. #define DBLNTSCHIRESEHB_KEY        0x00099080
  197. #define DBLNTSCHIRESEHBFF_KEY        0x00099084
  198. #define DBLNTSCHIRESEHBLACE_KEY        0x00099085
  199. #define DBLNTSCHIRESDPF_KEY        0x00099400
  200. #define DBLNTSCHIRESDPFLACE_KEY        0x00099404
  201. #define DBLNTSCHIRESDPF2_KEY        0x00099440
  202. #define DBLNTSCHIRESDPF2LACE_KEY    0x00099444
  203.  
  204. #define DBLPAL_MONITOR_ID        0x000a1000
  205.  
  206. #define DBLPALLORES_KEY            0x000a1000
  207. #define DBLPALLORESFF_KEY        0x000a1004
  208. #define DBLPALLORESHAM_KEY        0x000a1800
  209. #define DBLPALLORESHAMFF_KEY        0x000a1804
  210. #define DBLPALLORESEHB_KEY        0x000a1080
  211. #define DBLPALLORESEHBFF_KEY        0x000a1084
  212. #define DBLPALLORESLACE_KEY        0x000a1005
  213. #define DBLPALLORESHAMLACE_KEY        0x000a1805
  214. #define DBLPALLORESEHBLACE_KEY        0x000a1085
  215. #define DBLPALLORESDPF_KEY        0x000a1400
  216. #define DBLPALLORESDPFLACE_KEY        0x000a1404
  217. #define DBLPALLORESDPF2_KEY        0x000a1440
  218. #define DBLPALLORESDPF2LACE_KEY        0x000a1444
  219. #define DBLPALHIRES_KEY            0x000a9000
  220. #define DBLPALHIRESFF_KEY        0x000a9004
  221. #define DBLPALHIRESHAM_KEY        0x000a9800
  222. #define DBLPALHIRESHAMFF_KEY        0x000a9804
  223. #define DBLPALHIRESLACE_KEY        0x000a9005
  224. #define DBLPALHIRESHAMLACE_KEY        0x000a9805
  225. #define DBLPALHIRESEHB_KEY        0x000a9080
  226. #define DBLPALHIRESEHBFF_KEY        0x000a9084
  227. #define DBLPALHIRESEHBLACE_KEY            0x000a9085
  228. #define DBLPALHIRESDPF_KEY        0x000a9400
  229. #define DBLPALHIRESDPFLACE_KEY        0x000a9404
  230. #define DBLPALHIRESDPF2_KEY        0x000a9440
  231. #define DBLPALHIRESDPF2LACE_KEY        0x000a9444
  232.  
  233.  
  234. /* Use these tags for passing to BestModeID() (V39) */
  235.  
  236. #define SPECIAL_FLAGS (DIPF_IS_DUALPF | DIPF_IS_PF2PRI | DIPF_IS_HAM | DIPF_IS_EXTRAHALFBRITE)
  237.  
  238. #define BIDTAG_DIPFMustHave    0x80000001    /* mask of the DIPF_ flags the ModeID must have */
  239.                 /* Default - NULL */
  240. #define BIDTAG_DIPFMustNotHave    0x80000002    /* mask of the DIPF_ flags the ModeID must not have */
  241.                 /*