home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / TRSICAT.LZX / CATS_CD2_TRSI / Inc&AD2.1 / includes / graphics / gfxbase.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-09-11  |  3.0 KB  |  113 lines

  1. #ifndef GRAPHICS_GFXBASE_H
  2. #define GRAPHICS_GFXBASE_H
  3. /*
  4. **    $VER: gfxbase.h 37.3 (15.04.91)
  5. **    Includes Release 38.56
  6. **
  7. **    graphics base definitions
  8. **
  9. **    (C) Copyright 1985-1992 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. */
  12.  
  13. #ifndef EXEC_LISTS_H
  14. #include <exec/lists.h>
  15. #endif
  16. #ifndef EXEC_LIBRARIES_H
  17. #include <exec/libraries.h>
  18. #endif
  19. #ifndef EXEC_INTERRUPTS_H
  20. #include <exec/interrupts.h>
  21. #endif
  22.  
  23. struct GfxBase
  24. {
  25.     struct Library  LibNode;
  26.     struct View *ActiView;
  27.     struct copinit *copinit;    /* ptr to copper start up list */
  28.     long    *cia;        /* for 8520 resource use */
  29.     long    *blitter;        /* for future blitter resource use */
  30.     UWORD   *LOFlist;
  31.     UWORD   *SHFlist;
  32.     struct bltnode *blthd,*blttl;
  33.     struct bltnode *bsblthd,*bsblttl;
  34.     struct Interrupt vbsrv,timsrv,bltsrv;
  35.     struct List     TextFonts;
  36.     struct  TextFont *DefaultFont;
  37.     UWORD  Modes;            /* copy of current first bplcon0 */
  38.     BYTE VBlank;
  39.     BYTE Debug;
  40.     WORD BeamSync;
  41.     WORD system_bplcon0;    /* it is ored into each bplcon0 for display */
  42.     UBYTE   SpriteReserved;
  43.     UBYTE   bytereserved;
  44.     UWORD   Flags;
  45.     WORD   BlitLock;
  46.     WORD    BlitNest;
  47.  
  48.     struct    List    BlitWaitQ;
  49.     struct    Task    *BlitOwner;
  50.     struct    List    TOF_WaitQ;
  51.     UWORD    DisplayFlags;        /* NTSC PAL GENLOC etc*/
  52.                     /* flags initialized at power on */
  53.     struct SimpleSprite **SimpleSprites;
  54.     UWORD    MaxDisplayRow;        /* hardware stuff, do not use */
  55.     UWORD    MaxDisplayColumn;    /* hardware stuff, do not use */
  56.     UWORD    NormalDisplayRows;
  57.     UWORD    NormalDisplayColumns;
  58.     /* the following are for standard non interlace, 1/2 wb width */
  59.     UWORD    NormalDPMX;        /* Dots per meter on display */
  60.     UWORD    NormalDPMY;        /* Dots per meter on display */
  61.     struct    SignalSemaphore *LastChanceMemory;
  62.     UWORD    *LCMptr;
  63.     UWORD    MicrosPerLine;        /* 256 time usec/line */
  64.     UWORD    MinDisplayColumn;
  65.     UBYTE    ChipRevBits0;
  66.     UBYTE    crb_reserved[5];
  67.     UWORD    monitor_id;        /* normally null */
  68.     ULONG    hedley[8];
  69.     ULONG    hedley_sprites[8] ;    /* sprite ptrs for intuition mouse */
  70.     ULONG    hedley_sprites1[8] ;        /* sprite ptrs for intuition mouse */
  71.     WORD    hedley_count;
  72.     UWORD    hedley_flags;
  73.     WORD    hedley_tmp;
  74.     LONG    *hash_table;
  75.     UWORD    current_tot_rows;
  76.     UWORD    current_tot_cclks;
  77.     UBYTE    hedley_hint;
  78.     UBYTE    hedley_hint2;
  79.     ULONG    nreserved[4];
  80.     LONG    *a2024_sync_raster;
  81.     WORD   control_delta_pal;
  82.     WORD   control_delta_ntsc;
  83.     struct    MonitorSpec *current_monitor;
  84.     struct    List MonitorList;
  85.     struct    MonitorSpec *default_monitor;
  86.     struct    SignalSemaphore *MonitorListSemaphore;
  87.     VOID    *DisplayInfoDataBase;
  88.     WORD    lapad;            /* alignment */
  89.     struct    SignalSemaphore *ActiViewCprSemaphore;
  90.     ULONG    *UtilityBase;        /* for hook and tag utilities    */
  91.     ULONG    *ExecBase;        /* to link with rom.lib    */
  92.     };
  93.  
  94. #define NTSC        1
  95. #define GENLOC        2
  96. #define PAL        4
  97. #define TODA_SAFE    8
  98.  
  99. #define BLITMSG_FAULT    4
  100.  
  101. /* bits defs for ChipRevBits */
  102. #define    GFXB_BIG_BLITS    0
  103. #define    GFXB_HR_AGNUS    0
  104. #define GFXB_HR_DENISE    1
  105.  
  106. #define GFXF_BIG_BLITS    1
  107. #define    GFXF_HR_AGNUS    1
  108. #define GFXF_HR_DENISE    2
  109.  
  110. #define GRAPHICSNAME    "graphics.library"
  111.  
  112. #endif    /* GRAPHICS_GFXBASE_H */
  113.