1 #ifndef GRAPHICS_GFXBASE_H
2 #define GRAPHICS_GFXBASE_H
5 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
12 #ifndef EXEC_INTERRUPTS_H
13 # include <exec/interrupts.h>
16 #ifndef EXEC_EXECBASE_H
17 # include <exec/execbase.h>
20 #ifndef EXEC_LIBRARIES_H
21 # include <exec/libraries.h>
25 # include <exec/lists.h>
28 #ifndef GRAPHICS_MONITOR_H
29 # include <graphics/monitor.h>
32 #define GRAPHICSNAME "graphics.library"
36 /* Standard Library Node */
37 struct Library LibNode
;
39 struct View
* ActiView
;
40 struct copinit
* copinit
;
45 struct bltnode
* blthd
;
46 struct bltnode
* blttl
;
47 struct bltnode
* bsblthd
;
48 struct bltnode
* bsblttl
;
49 struct Interrupt vbsrv
;
50 struct Interrupt timsrv
;
51 struct Interrupt bltsrv
;
54 struct List TextFonts
;
55 struct TextFont
* DefaultFont
;
68 struct List BlitWaitQ
;
69 struct Task
* BlitOwner
;
70 struct List TOF_WaitQ
;
72 UWORD DisplayFlags
; /* see below */
73 struct SimpleSprite
** SimpleSprites
;
76 UWORD MaxDisplayColumn
;
77 UWORD NormalDisplayRows
;
78 UWORD NormalDisplayColumns
;
82 struct SignalSemaphore
* LastChanceMemory
;
86 UWORD MinDisplayColumn
;
87 UBYTE ChipRevBits0
; /* see below */
89 UBYTE crb_reserved
[4];
93 ULONG hedley_sprites
[8];
94 ULONG hedley_sprites1
[8];
100 UWORD current_tot_rows
;
101 UWORD current_tot_cclks
;
105 LONG
* a2024_sync_raster
;
106 UWORD control_delta_pal
;
107 UWORD control_delta_ntsc
;
109 struct MonitorSpec
* current_monitor
;
110 struct List MonitorList
;
111 struct MonitorSpec
* default_monitor
;
112 struct SignalSemaphore
* MonitorListSemaphore
;
114 VOID
* DisplayInfoDataBase
;
116 struct SignalSemaphore
* ActiViewCprSemaphore
;
119 struct Library
*UtilBase
;
120 struct ExecBase
*ExecBase
;
123 UWORD
* StrtFetchMasks
;
124 UWORD
* StopFetchMasks
;
131 UWORD DefaultSpriteWidth
;
136 ULONG
* gb_LayersBase
;
140 ULONG SpecialCounter
;
143 UBYTE ScanDoubledSprites
;
146 struct AnalogSignalInterval MonitorVBlank
;
147 struct MonitorSpec
* natural_monitor
;
155 struct SignalSemaphore
* HashTableSemaphore
;
158 #define ChunkyToPlanarPtr HWEmul[0];
162 #define GENLOC (1<<1)
164 #define TODA_SAFE (1<<3)
165 #define REALLY_PAL (1<<4)
166 #define LPEN_SWAP_FRAMES (1<<5)
169 #define GFXB_BIG_BLITS 0
170 #define GFXF_BIG_BLITS (1<<0)
171 #define GFXB_HR_AGNUS 0
172 #define GFXF_HR_AGNUS (1<<0)
173 #define GFXB_HR_DENISE 1
174 #define GFXF_HR_DENISE (1<<1)
175 #define GFXB_AA_ALICE 2
176 #define GFXF_AA_ALICE (1<<2)
177 #define GFXB_AA_LISA 3
178 #define GFXF_AA_LISA (1<<3)
179 #define GFXB_AA_MLISA 4
180 #define GFXF_AA_MLISA (1<<4)
182 /* For use in SetChipRev() */
183 #define SETCHIPREV_A GFXF_HR_AGNUS
184 #define SETCHIPREV_ECS (GFXF_HR_AGNUS | GFXF_HR_DENISE)
185 #define SETCHIPREV_AA (SETCHIPREV_ECS | GFXF_AA_ALICE | GFXF_AA_LISA)
186 #define SETCHIPREV_BEST 0xFFFFFFFF
193 #define BANDWIDTH_1X (BUS_16 | NML_CAS)
194 #define BANDWIDTH_2XNML BUS_32
195 #define BANDWIDTH_2XDBL DBL_CAS
196 #define BANDWIDTH_4X (BUS_32 | DBL_CAS)
198 #define BLITMSG_FAULT 4
201 #define NEW_DATABASE 1
203 #endif /* GRAPHICS_GFXBASE_H */