Mercurial > hg > dmlib
comparison tools/lib64gfx.h @ 917:df3a74f230d9
Initial implementation of charmode support in lib64gfx.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 25 Feb 2015 03:53:34 +0200 |
parents | 3985f596ece5 |
children | 9be156fa4b9d |
comparison
equal
deleted
inserted
replaced
916:3985f596ece5 | 917:df3a74f230d9 |
---|---|
55 { | 55 { |
56 D64_FMT_HIRES = 0x0000, | 56 D64_FMT_HIRES = 0x0000, |
57 D64_FMT_MC = 0x0001, | 57 D64_FMT_MC = 0x0001, |
58 D64_FMT_ILACE = 0x0002, | 58 D64_FMT_ILACE = 0x0002, |
59 D64_FMT_FLI = 0x0004, | 59 D64_FMT_FLI = 0x0004, |
60 D64_FMT_CHAR = 0x0008, | |
60 | 61 |
61 D64_FMT_MODE_MASK = 0x000f, | 62 D64_FMT_MODE_MASK = 0x000f, |
62 | 63 |
63 }; | 64 }; |
64 | 65 |
72 enum | 73 enum |
73 { | 74 { |
74 D64_ILACE_COLOR, | 75 D64_ILACE_COLOR, |
75 D64_ILACE_RES, | 76 D64_ILACE_RES, |
76 }; | 77 }; |
78 | |
79 enum | |
80 { | |
81 D64_CHCFG_SCREEN, | |
82 D64_CHCFG_LINEAR = 1, | |
83 }; | |
84 | |
77 | 85 |
78 typedef struct | 86 typedef struct |
79 { | 87 { |
80 BOOL multicolor, xexpand, yexpand; | 88 BOOL multicolor, xexpand, yexpand; |
81 int color, xc, yc; | 89 int color, xc, yc; |
85 enum | 93 enum |
86 { | 94 { |
87 D64_CHR_GLOBAL, // use font-global setting | 95 D64_CHR_GLOBAL, // use font-global setting |
88 D64_CHR_MULTICOLOR, // character is multicolor | 96 D64_CHR_MULTICOLOR, // character is multicolor |
89 D64_CHR_HIRES, | 97 D64_CHR_HIRES, |
98 }; | |
99 | |
100 enum | |
101 { | |
102 DC_D020, | |
103 DC_BGCOL, | |
104 DC_D021, | |
105 DC_D022, | |
106 DC_D023, | |
107 DC_D024, | |
90 }; | 108 }; |
91 | 109 |
92 typedef struct | 110 typedef struct |
93 { | 111 { |
94 int mode, color; | 112 int mode, color; |
119 bitmap[C64_SCR_MAX_BANK][C64_SCR_BITMAP_SIZE], | 137 bitmap[C64_SCR_MAX_BANK][C64_SCR_BITMAP_SIZE], |
120 screen[C64_SCR_MAX_BANK][C64_SCR_SCREEN_SIZE], | 138 screen[C64_SCR_MAX_BANK][C64_SCR_SCREEN_SIZE], |
121 extradata[C64_SCR_EXTRADATA], | 139 extradata[C64_SCR_EXTRADATA], |
122 d020, bgcolor, d022, d023, d024; | 140 d020, bgcolor, d022, d023, d024; |
123 | 141 |
124 Uint8 charset[C64_MAX_CHARS][C64_CHR_HEIGHT * C64_CHR_WIDTH]; | 142 Uint8 charmem[C64_MAX_CHARS][C64_CHR_HEIGHT * C64_CHR_WIDTH]; |
125 DMC64Sprite sprites[C64_MAX_SPRITES]; | 143 DMC64Sprite sprites[C64_MAX_SPRITES]; |
126 } DMC64Image; | 144 } DMC64Image; |
127 | 145 |
128 | 146 |
129 enum | 147 enum |
130 { | 148 { |
131 DT_COLOR_RAM, | 149 DT_COLOR_RAM, |
132 DT_BITMAP, | 150 DT_BITMAP, |
133 DT_SCREEN_RAM, | 151 DT_SCREEN_RAM, |
134 DT_BGCOLOR, | 152 DT_COLOR_REG, |
135 DT_BGCOLOR_SET, | 153 DT_COLOR_SET, |
136 DT_EXTRADATA, | 154 DT_EXTRADATA, |
137 | 155 |
138 DT_DEC_FUNCTION, | 156 DT_DEC_FUNCTION, |
139 DT_ENC_FUNCTION, | 157 DT_ENC_FUNCTION, |
158 | |
159 DT_CHAR_DATA, | |
160 DT_CHAR_CONFIG, | |
140 | 161 |
141 DT_LAST, | 162 DT_LAST, |
142 }; | 163 }; |
143 | 164 |
144 | 165 |