|
10 | 10 |
|
11 | 11 | #include "esq1by22.lh"
|
12 | 12 | #include "esq2by40.lh"
|
13 |
| -#include "nec_fip80b5r.lh" |
| 13 | +#include "esq2by40_vfx.lh" |
14 | 14 |
|
15 | 15 | DEFINE_DEVICE_TYPE(ESQ1X22, esq1x22_device, "esq1x22", "Ensoniq 1x22 VFD")
|
16 | 16 | DEFINE_DEVICE_TYPE(ESQ2X40, esq2x40_device, "esq2x40", "Ensoniq 2x40 VFD")
|
@@ -119,129 +119,107 @@ static const uint16_t font[]=
|
119 | 119 | };
|
120 | 120 |
|
121 | 121 | /**
|
122 |
| - * The font used by the VFX family on the NEC FIP80B5R display, including |
123 |
| - * VFX-family-specific characters sich as digits followed by a period / decimal point. |
124 |
| - * |
125 |
| - * The segments are numbered in order of the pins 58 .. 73 that drive |
126 |
| - * the top row of character segments, as shown on a scan of the Ensoniq ESQ1 |
127 |
| - * display board at http://buchty.net/ensoniq/files/schematics/esq1-display.jpg |
128 |
| - * This is the same order as in the [nec_fip80b5r.lay] layout, so they can be |
129 |
| - * used immediately without need for bit order conversion. |
130 |
| - * |
131 |
| - * ==== 0 ==== |
132 |
| - * |\ | /| |
133 |
| - * | \ | / | |
134 |
| - * 5 4 3 2 1 |
135 |
| - * | \ | / | |
136 |
| - * | \|/ | |
137 |
| - * ==7== ==6== |
138 |
| - * | /|\ | |
139 |
| - * | / | \ | |
140 |
| - * 12 11 10 9 8 |
141 |
| - * | / | \ | |
142 |
| - * |/ | \| |
143 |
| - * ==== 13 === #14 |
144 |
| - * |
145 |
| - * ===== 15 ==== |
146 |
| - * |
| 122 | + * Character data as used in the VFX family. Bit 0..13 are ordered to match |
| 123 | + * led14seg. Bit 14 activates the dot after a character; bit 15 the underline. |
| 124 | + * See layout/esq2by40_vfx.lay . |
147 | 125 | */
|
148 | 126 | static const uint16_t font_vfx[] = {
|
149 |
| - 0x0000, // 0000 0000 0000 0000 SPACE |
150 |
| - 0x7927, // 0011 1001 0010 0111 '0.' |
151 |
| - 0x0028, // 0000 0000 0010 1000 '"' |
152 |
| - 0x4408, // 0000 0100 0000 1000 '1.' |
153 |
| - 0x25e9, // 0010 0101 1110 1001 '$' |
154 |
| - 0x70c3, // 0011 0000 1100 0011 '2.' |
155 |
| - 0x0000, // 0000 0000 0000 0000 '&' |
156 |
| - 0x0010, // 0000 0000 0001 0000 ''' |
157 |
| - 0x61c3, // 0010 0001 1100 0011 '3.' |
158 |
| - 0x41e2, // 0000 0001 1110 0010 '4.' |
159 |
| - 0x0edc, // 0000 1110 1101 1100 '*' |
160 |
| - 0x04c8, // 0000 0100 1100 1000 '+' |
161 |
| - 0x0000, // 0000 0000 0000 0000 ',' |
162 |
| - 0x00c0, // 0000 0000 1100 0000 '-' |
163 |
| - 0x4000, // 0100 0000 0000 0000 '.' |
164 |
| - 0x0804, // 0000 1000 0000 0100 '/' |
165 |
| - 0x3927, // 0011 1001 0010 0111 '0' |
166 |
| - 0x0408, // 0000 0100 0000 1000 '1' |
167 |
| - 0x30c3, // 0011 0000 1100 0011 '2' |
168 |
| - 0x21c3, // 0010 0001 1100 0011 '3' |
169 |
| - 0x01e2, // 0000 0001 1110 0010 '4' |
170 |
| - 0x21e1, // 0010 0001 1110 0001 '5' |
171 |
| - 0x31e1, // 0011 0001 1110 0001 '6' |
172 |
| - 0x0103, // 0000 0001 0000 0011 '7' |
173 |
| - 0x31e3, // 0011 0001 1110 0011 '8' |
174 |
| - 0x21e3, // 0010 0001 1110 0011 '9' |
175 |
| - 0x0000, // 0000 0000 0000 0000 ':' |
176 |
| - 0x71e1, // 0011 0001 1110 0001 '6.' |
177 |
| - 0x0204, // 0000 0010 0000 0100 '(' |
178 |
| - 0x20c0, // 0010 0000 1100 0000 '=' |
179 |
| - 0x0810, // 0000 1000 0001 0000 ')' |
180 |
| - 0x0000, // 0000 0000 0000 0000 '?' |
181 |
| - 0x3583, // 0011 0101 1000 0011 '@' |
182 |
| - 0x11e3, // 0001 0001 1110 0011 'A' |
183 |
| - 0x254b, // 0010 0101 0100 1011 'B' |
184 |
| - 0x3021, // 0011 0000 0010 0001 'C' |
185 |
| - 0x250b, // 0010 0101 0000 1011 'D' |
186 |
| - 0x30e1, // 0011 0000 1110 0001 'E' |
187 |
| - 0x10e1, // 0001 0000 1110 0001 'F' |
188 |
| - 0x3161, // 0011 0001 0110 0001 'G' |
189 |
| - 0x11e2, // 0001 0001 1110 0010 'H' |
190 |
| - 0x2409, // 0010 0100 0000 1001 'I' |
191 |
| - 0x3102, // 0011 0001 0000 0010 'J' |
192 |
| - 0x12a4, // 0001 0010 1010 0100 'K' |
193 |
| - 0x3020, // 0011 0000 0010 0000 'L' |
194 |
| - 0x1136, // 0001 0001 0011 0110 'M' |
195 |
| - 0x1332, // 0001 0011 0011 0010 'N' |
196 |
| - 0x3123, // 0011 0001 0010 0011 'O' |
197 |
| - 0x10e3, // 0001 0000 1110 0011 'P' |
198 |
| - 0x3323, // 0011 0011 0010 0011 'Q' |
199 |
| - 0x12e3, // 0001 0010 1110 0011 'R' |
200 |
| - 0x21e1, // 0010 0001 1110 0001 'S' |
201 |
| - 0x0409, // 0000 0100 0000 1001 'T' |
202 |
| - 0x3122, // 0011 0001 0010 0010 'U' |
203 |
| - 0x1824, // 0001 1000 0010 0100 'V' |
204 |
| - 0x1b22, // 0001 1011 0010 0010 'W' |
205 |
| - 0x0a14, // 0000 1010 0001 0100 'X' |
206 |
| - 0x0414, // 0000 0100 0001 0100 'Y' |
207 |
| - 0x2805, // 0010 1000 0000 0101 'Z' |
208 |
| - 0x3021, // 0011 0000 0010 0001 '[' |
209 |
| - 0x71e3, // 0011 0001 1110 0011 '8.' |
210 |
| - 0x2103, // 0010 0001 0000 0011 ']' |
211 |
| - 0x0a00, // 0000 1010 0000 0000 '^' |
212 |
| - 0x2000, // 0010 0000 0000 0000 '_' |
213 |
| - 0x0010, // 0000 0000 0001 0000 '`' |
214 |
| - 0x11e3, // 0001 0001 1110 0011 'a' |
215 |
| - 0x254b, // 0010 0101 0100 1011 'b' |
216 |
| - 0x3021, // 0011 0000 0010 0001 'c' |
217 |
| - 0x250b, // 0010 0101 0000 1011 'd' |
218 |
| - 0x30e1, // 0011 0000 1110 0001 'e' |
219 |
| - 0x10e1, // 0001 0000 1110 0001 'f' |
220 |
| - 0x3161, // 0011 0001 0110 0001 'g' |
221 |
| - 0x11e2, // 0001 0001 1110 0010 'h' |
222 |
| - 0x2409, // 0010 0100 0000 1001 'i' |
223 |
| - 0x3102, // 0011 0001 0000 0010 'j' |
224 |
| - 0x12a4, // 0001 0010 1010 0100 'k' |
225 |
| - 0x3020, // 0011 0000 0010 0000 'l' |
226 |
| - 0x1136, // 0001 0001 0011 0110 'm' |
227 |
| - 0x1332, // 0001 0011 0011 0010 'n' |
228 |
| - 0x3123, // 0011 0001 0010 0011 'o' |
229 |
| - 0x10e3, // 0001 0000 1110 0011 'p' |
230 |
| - 0x3323, // 0011 0011 0010 0011 'q' |
231 |
| - 0x12e3, // 0001 0010 1110 0011 'r' |
232 |
| - 0x21e1, // 0010 0001 1110 0001 's' |
233 |
| - 0x0409, // 0000 0100 0000 1001 't' |
234 |
| - 0x3122, // 0011 0001 0010 0010 'u' |
235 |
| - 0x1824, // 0001 1000 0010 0100 'v' |
236 |
| - 0x1b22, // 0001 1011 0010 0010 'w' |
237 |
| - 0x0a14, // 0000 1010 0001 0100 'x' |
238 |
| - 0x0414, // 0000 0100 0001 0100 'y' |
239 |
| - 0x2805, // 0010 1000 0000 0101 'z' |
240 |
| - 0x3021, // 0011 0000 0010 0001 '{' |
241 |
| - 0x0408, // 0000 0100 0000 1000 '|' |
242 |
| - 0x2103, // 0010 0001 0000 0011 '}' |
243 |
| - 0x0a00, // 0000 1010 0000 0000 '~' |
244 |
| - 0x0000, // 0000 0000 0000 0000 DEL |
| 127 | + 0x0000, // 0000 0000 0000 0000 SPACE |
| 128 | + 0x543f, // 0101 0100 0011 1111 '0.' |
| 129 | + 0x0120, // 0000 0001 0010 0000 '"' |
| 130 | + 0x4300, // 0100 0011 0000 0000 '1.' |
| 131 | + 0x03ed, // 0000 0011 1110 1101 '$' |
| 132 | + 0x40db, // 0100 0000 1101 1011 '2.' |
| 133 | + 0x0000, // 0000 0000 0000 0000 '&' |
| 134 | + 0x0800, // 0000 1000 0000 0000 ''' |
| 135 | + 0x40cf, // 0100 0000 1100 1111 '3.' |
| 136 | + 0x40e6, // 0100 0000 1110 0110 '4.' |
| 137 | + 0x3fc0, // 0011 1111 1100 0000 '*' |
| 138 | + 0x03c0, // 0000 0011 1100 0000 '+' |
| 139 | + 0x0000, // 0000 0000 0000 0000 ',' |
| 140 | + 0x00c0, // 0000 0000 1100 0000 '-' |
| 141 | + 0x4000, // 0100 0000 0000 0000 '.' |
| 142 | + 0x1400, // 0001 0100 0000 0000 '/' |
| 143 | + 0x143f, // 0001 0100 0011 1111 '0' |
| 144 | + 0x0300, // 0000 0011 0000 0000 '1' |
| 145 | + 0x00db, // 0000 0000 1101 1011 '2' |
| 146 | + 0x00cf, // 0000 0000 1100 1111 '3' |
| 147 | + 0x00e6, // 0000 0000 1110 0110 '4' |
| 148 | + 0x00ed, // 0000 0000 1110 1101 '5' |
| 149 | + 0x00fd, // 0000 0000 1111 1101 '6' |
| 150 | + 0x0007, // 0000 0000 0000 0111 '7' |
| 151 | + 0x00ff, // 0000 0000 1111 1111 '8' |
| 152 | + 0x00ef, // 0000 0000 1110 1111 '9' |
| 153 | + 0x0000, // 0000 0000 0000 0000 ':' |
| 154 | + 0x40fd, // 0100 0000 1111 1101 '6.' |
| 155 | + 0x3000, // 0011 0000 0000 0000 '(' |
| 156 | + 0x00c8, // 0000 0000 1100 1000 '=' |
| 157 | + 0x0c00, // 0000 1100 0000 0000 ')' |
| 158 | + 0x0000, // 0000 0000 0000 0000 '?' |
| 159 | + 0x025f, // 0000 0010 0101 1111 '@' |
| 160 | + 0x00f7, // 0000 0000 1111 0111 'A' |
| 161 | + 0x038f, // 0000 0011 1000 1111 'B' |
| 162 | + 0x0039, // 0000 0000 0011 1001 'C' |
| 163 | + 0x030f, // 0000 0011 0000 1111 'D' |
| 164 | + 0x00f9, // 0000 0000 1111 1001 'E' |
| 165 | + 0x00f1, // 0000 0000 1111 0001 'F' |
| 166 | + 0x00bd, // 0000 0000 1011 1101 'G' |
| 167 | + 0x00f6, // 0000 0000 1111 0110 'H' |
| 168 | + 0x0309, // 0000 0011 0000 1001 'I' |
| 169 | + 0x001e, // 0000 0000 0001 1110 'J' |
| 170 | + 0x3070, // 0011 0000 0111 0000 'K' |
| 171 | + 0x0038, // 0000 0000 0011 1000 'L' |
| 172 | + 0x1836, // 0001 1000 0011 0110 'M' |
| 173 | + 0x2836, // 0010 1000 0011 0110 'N' |
| 174 | + 0x003f, // 0000 0000 0011 1111 'O' |
| 175 | + 0x00f3, // 0000 0000 1111 0011 'P' |
| 176 | + 0x203f, // 0010 0000 0011 1111 'Q' |
| 177 | + 0x20f3, // 0010 0000 1111 0011 'R' |
| 178 | + 0x00ed, // 0000 0000 1110 1101 'S' |
| 179 | + 0x0301, // 0000 0011 0000 0001 'T' |
| 180 | + 0x003e, // 0000 0000 0011 1110 'U' |
| 181 | + 0x1430, // 0001 0100 0011 0000 'V' |
| 182 | + 0x2436, // 0010 0100 0011 0110 'W' |
| 183 | + 0x3c00, // 0011 1100 0000 0000 'X' |
| 184 | + 0x1a00, // 0001 1010 0000 0000 'Y' |
| 185 | + 0x1409, // 0001 0100 0000 1001 'Z' |
| 186 | + 0x0039, // 0000 0000 0011 1001 '[' |
| 187 | + 0x40ff, // 0100 0000 1111 1111 '8.' |
| 188 | + 0x000f, // 0000 0000 0000 1111 ']' |
| 189 | + 0x2400, // 0010 0100 0000 0000 '^' |
| 190 | + 0x0008, // 0000 0000 0000 1000 '_' |
| 191 | + 0x0800, // 0000 1000 0000 0000 '`' |
| 192 | + 0x00f7, // 0000 0000 1111 0111 'a' |
| 193 | + 0x038f, // 0000 0011 1000 1111 'b' |
| 194 | + 0x0039, // 0000 0000 0011 1001 'c' |
| 195 | + 0x030f, // 0000 0011 0000 1111 'd' |
| 196 | + 0x00f9, // 0000 0000 1111 1001 'e' |
| 197 | + 0x00f1, // 0000 0000 1111 0001 'f' |
| 198 | + 0x00bd, // 0000 0000 1011 1101 'g' |
| 199 | + 0x00f6, // 0000 0000 1111 0110 'h' |
| 200 | + 0x0309, // 0000 0011 0000 1001 'i' |
| 201 | + 0x001e, // 0000 0000 0001 1110 'j' |
| 202 | + 0x3070, // 0011 0000 0111 0000 'k' |
| 203 | + 0x0038, // 0000 0000 0011 1000 'l' |
| 204 | + 0x1836, // 0001 1000 0011 0110 'm' |
| 205 | + 0x2836, // 0010 1000 0011 0110 'n' |
| 206 | + 0x003f, // 0000 0000 0011 1111 'o' |
| 207 | + 0x00f3, // 0000 0000 1111 0011 'p' |
| 208 | + 0x203f, // 0010 0000 0011 1111 'q' |
| 209 | + 0x20f3, // 0010 0000 1111 0011 'r' |
| 210 | + 0x00ed, // 0000 0000 1110 1101 's' |
| 211 | + 0x0301, // 0000 0011 0000 0001 't' |
| 212 | + 0x003e, // 0000 0000 0011 1110 'u' |
| 213 | + 0x1430, // 0001 0100 0011 0000 'v' |
| 214 | + 0x2436, // 0010 0100 0011 0110 'w' |
| 215 | + 0x3c00, // 0011 1100 0000 0000 'x' |
| 216 | + 0x1a00, // 0001 1010 0000 0000 'y' |
| 217 | + 0x1409, // 0001 0100 0000 1001 'z' |
| 218 | + 0x0039, // 0000 0000 0011 1001 '{' |
| 219 | + 0x0300, // 0000 0011 0000 0000 '|' |
| 220 | + 0x000f, // 0000 0000 0000 1111 '}' |
| 221 | + 0x2400, // 0010 0100 0000 0000 '~' |
| 222 | + 0x0000, // 0000 0000 0000 0000 DEL |
245 | 223 | };
|
246 | 224 |
|
247 | 225 | esqvfd_device::esqvfd_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, dimensions_param &&dimensions) :
|
@@ -446,7 +424,7 @@ void esq2x40_vfx_device::update_display()
|
446 | 424 |
|
447 | 425 | void esq2x40_vfx_device::device_add_mconfig(machine_config &config)
|
448 | 426 | {
|
449 |
| - config.set_default_layout(layout_nec_fip80b5r); |
| 427 | + config.set_default_layout(layout_esq2by40_vfx); |
450 | 428 | }
|
451 | 429 |
|
452 | 430 | void esq2x40_vfx_device::set_blink_on(bool blink_on) {
|
|
0 commit comments