]> git.sesse.net Git - pistorm/blob - platforms/amiga/rtg/rtg_driver_amiga/rtg_enums.h
6ee3a273afceee158c50ea8353da81bb72d717b9
[pistorm] / platforms / amiga / rtg / rtg_driver_amiga / rtg_enums.h
1 // SPDX-License-Identifier: MIT
2
3 // "Register" offsets for sending data to the RTG.
4 enum pi_regs {
5   RTG_COMMAND = 0x00,
6   RTG_X1      = 0x02,
7   RTG_X2      = 0x04,
8   RTG_X3      = 0x06,
9   RTG_Y1      = 0x08,
10   RTG_Y2      = 0x0A,
11   RTG_Y3      = 0x0C,
12   RTG_FORMAT  = 0x0E,
13   RTG_RGB1    = 0x10,
14   RTG_RGB2    = 0x14,
15   RTG_ADDR1   = 0x18,
16   RTG_ADDR2   = 0x1C,
17   RTG_U81     = 0x20,
18   RTG_U82     = 0x21,
19   RTG_U83     = 0x22,
20   RTG_U84     = 0x23,
21   RTG_X4      = 0x24,
22   RTG_X5      = 0x26,
23   RTG_Y4      = 0x28,
24   RTG_Y5      = 0x2A,
25   RTG_U1      = 0x2C,
26   RTG_U2      = 0x2E,
27   RTG_ADDR3   = 0x30,
28   RTG_ADDR4   = 0x34,
29 };
30
31 enum rtg_cmds {
32   RTGCMD_SETGC,
33   RTGCMD_SETPAN,
34   RTGCMD_SETCLUT,
35   RTGCMD_ENABLE,
36   RTGCMD_SETDISPLAY,
37   RTGCMD_SETSWITCH,
38   RTGCMD_FILLRECT,
39   RTGCMD_BLITRECT,
40   RTGCMD_BLITRECT_NOMASK_COMPLETE,
41   RTGCMD_BLITPATTERN,
42   RTGCMD_BLITTEMPLATE,
43   RTGCMD_INVERTRECT,
44   RTGCMD_DRAWLINE,
45   RTGCMD_P2C,
46   RTGCMD_P2D,
47 };
48
49 enum rtg_formats {
50   RTGFMT_8BIT,
51   RTGFMT_RBG565,
52   RTGFMT_RGB32,
53   RTGFMT_RGB555,
54   RTGFMT_NUM,
55 };
56
57 enum gfx_minterm_modes {
58         MINTERM_FALSE,
59         MINTERM_NOR,
60         MINTERM_ONLYDST,
61         MINTERM_NOTSRC,
62         MINTERM_ONLYSRC,
63         MINTERM_INVERT,
64         MINTERM_EOR,
65         MINTERM_NAND,
66         MINTERM_AND,
67         MINTERM_NEOR,
68         MINTERM_DST,
69         MINTERM_NOTONLYSRC,
70         MINTERM_SRC,
71         MINTERM_NOTONLYDST,
72         MINTERM_OR,
73         MINTERM_TRUE,
74 };
75
76 enum gfx_draw_modes {
77     DRAWMODE_JAM1 = 0,
78     DRAWMODE_JAM2 = 1,
79     DRAWMODE_COMPLEMENT = 2,
80     DRAWMODE_INVERSVID = 4,
81 };