VirtualC64 v5.0 beta
Commodore 64 Emulator
Loading...
Searching...
No Matches
RomDatabase.h
1// -----------------------------------------------------------------------------
2// This file is part of VirtualC64
3//
4// Copyright (C) Dirk W. Hoffmann. www.dirkwhoffmann.de
5// This FILE is dual-licensed. You are free to choose between:
6//
7// - The GNU General Public License v3 (or any later version)
8// - The Mozilla Public License v2
9//
10// SPDX-License-Identifier: GPL-3.0-or-later OR MPL-2.0
11// -----------------------------------------------------------------------------
12
13#define BASIC ROM_TYPE_BASIC
14#define KERNAL ROM_TYPE_KERNAL
15#define CHAR ROM_TYPE_CHAR
16#define VC1541 ROM_TYPE_VC1541
17
18#define COMMODORE ROM_VENDOR_COMMODORE
19#define MEGA65 ROM_VENDOR_MEGA65
20#define OTHER ROM_VENDOR_OTHER
21
22static std::vector<RomTraits> roms = {
23
24 //
25 // Basic ROMs
26 //
27
28 {
29 .fnv = 0x20765FEA67A8762D,
30 .title = "Basic Rom",
31 .subtitle = "Generic C64",
32 .revision = "V2",
33 .vendor = COMMODORE,
34 .type = BASIC
35 },
36
37 //
38 // Character ROMs
39 //
40
41 {
42 .fnv = 0xACC576F7B332AC15,
43 .title = "Character Rom",
44 .subtitle = "Generic C64",
45 .revision = "V1",
46 .vendor = COMMODORE,
47 .type = CHAR
48 },{
49 .fnv = 0x3CA9D37AA3DE0969,
50 .title = "Character Rom",
51 .subtitle = "Swedish C64 (C2D007)",
52 .revision = "",
53 .vendor = COMMODORE,
54 .type = CHAR
55 },{
56 .fnv = 0x6E3827A65FFF116F,
57 .title = "Character Rom",
58 .subtitle = "Swedish C64",
59 .revision = "",
60 .vendor = COMMODORE,
61 .type = CHAR
62 },{
63 .fnv = 0x623CDF045B74B691,
64 .title = "Character Rom",
65 .subtitle = "Spanish C64C",
66 .revision = "",
67 .vendor = COMMODORE,
68 .type = CHAR
69 },{
70 .fnv = 0x79A236A3B3645231,
71 .title = "Character Rom",
72 .subtitle = "Danish C64",
73 .revision = "V3",
74 .vendor = COMMODORE,
75 .type = CHAR
76 },{
77 .fnv = 0x4D31ECBF4F967DC3,
78 .title = "Character Rom",
79 .subtitle = "M.E.G.A C64 OpenROM",
80 .revision = "",
81 .vendor = MEGA65,
82 .type = CHAR
83 },{
84 .fnv = 0x564e103e962682dd,
85 .title = "Character Rom",
86 .subtitle = "PXLfont",
87 .revision = "V2.3",
88 .vendor = MEGA65,
89 .type = CHAR
90 },{
91 .fnv = 0x1130C1CE287876DD,
92 .title = "Patched Character Rom",
93 .subtitle = "Atari 800 Font",
94 .revision = "",
95 .vendor = OTHER,
96 .type = CHAR,
97 .patched = true
98 },{
99 .fnv = 0x975546A5B6168FFD,
100 .title = "Patched Character Rom",
101 .subtitle = "MSX Font",
102 .revision = "",
103 .vendor = OTHER,
104 .type = CHAR,
105 .patched = true
106 },{
107 .fnv = 0x7C74107C9365F735,
108 .title = "Patched Character Rom",
109 .subtitle = "ZX Spectrum Font",
110 .revision = "",
111 .vendor = OTHER,
112 .type = CHAR,
113 .patched = true
114 },{
115 .fnv = 0xAFFE8B0EE2176CBD,
116 .title = "Patched Character Rom",
117 .subtitle = "Amstrad Font",
118 .revision = "",
119 .vendor = OTHER,
120 .type = CHAR,
121 .patched = true
122 },{
123 .fnv = 0xD14C5BE4FEE17705,
124 .title = "Patched Character Rom",
125 .subtitle = "Topaz Font",
126 .revision = "",
127 .vendor = OTHER,
128 .type = CHAR,
129 .patched = true
130 },{
131 .fnv = 0xA2C6A6E2C0477981,
132 .title = "Patched Character Rom",
133 .subtitle = "Topaz Font",
134 .revision = "V2",
135 .vendor = OTHER,
136 .type = CHAR,
137 .patched = true
138 },{
139 .fnv = 0x3BF55C821EE80365,
140 .title = "Patched Character Rom",
141 .subtitle = "Topaz Font",
142 .revision = "V2 (broken)",
143 .vendor = OTHER,
144 .type = CHAR,
145 .patched = true
146 },{
147 .fnv = 0x19F0DD3F3F9C4FE9,
148 .title = "Patched Character Rom",
149 .subtitle = "Topaz Font",
150 .revision = "V2",
151 .vendor = OTHER,
152 .type = CHAR,
153 .patched = true
154 },{
155 .fnv = 0xE527AD3E0DDE930D,
156 .title = "Patched Character Rom",
157 .subtitle = "Teletext Font",
158 .revision = "",
159 .vendor = OTHER,
160 .type = CHAR,
161 .patched = true
162 },
163
164 //
165 // Kernal ROMs
166 //
167
168 {
169 .fnv = 0xFB166E49AF709AB8,
170 .title = "Kernal Rom",
171 .subtitle = "Generic C64",
172 .revision = "V1",
173 .vendor = COMMODORE,
174 .type = KERNAL
175 },{
176 .fnv = 0x4232D81CCD24FAAE,
177 .title = "Kernal Rom",
178 .subtitle = "Generic C64",
179 .revision = "V2",
180 .vendor = COMMODORE,
181 .type = KERNAL
182 },{
183 .fnv = 0x4AF60EE54BEC9701,
184 .title = "Kernal Rom",
185 .subtitle = "Generic C64",
186 .revision = "V3",
187 .vendor = COMMODORE,
188 .type = KERNAL
189 },{
190 .fnv = 0x429EA22675CAB478,
191 .title = "Kernal Rom",
192 .subtitle = "Danish C64",
193 .revision = "V3",
194 .vendor = COMMODORE,
195 .type = KERNAL
196 },{
197 .fnv = 0x8C4548E2202CB366,
198 .title = "Kernal Rom",
199 .subtitle = "Generic SX64",
200 .revision = "",
201 .vendor = COMMODORE,
202 .type = KERNAL
203 },{
204 .fnv = 0x746EB1BC008B07E1,
205 .title = "Kernal Rom",
206 .subtitle = "Scandinavian SX64",
207 .revision = "",
208 .vendor = COMMODORE,
209 .type = KERNAL
210 },{
211 .fnv = 0x49A7074F1E6A896F,
212 .title = "Kernal Rom",
213 .subtitle = "PET64",
214 .revision = "V1",
215 .vendor = COMMODORE,
216 .type = KERNAL
217 },{
218 .fnv = 0xDE7F07008B787040,
219 .title = "Kernal Rom",
220 .subtitle = "JiffyDOS",
221 .revision = "",
222 .vendor = OTHER,
223 .type = KERNAL,
224 .patched = true
225 },{
226 .fnv = 0xA9D2AD1A4E5F782C,
227 .title = "Kernal Rom",
228 .subtitle = "JiffyDOS (SX64)",
229 .revision = "",
230 .vendor = OTHER,
231 .type = KERNAL,
232 .patched = true
233 },{
234 .fnv = 0x750617B8DE6DBA82,
235 .title = "Kernal Rom",
236 .subtitle = "Turbo Rom",
237 .revision = "V1",
238 .vendor = OTHER,
239 .type = KERNAL,
240 .patched = true
241 },{
242 .fnv = 0x7E0A124C3F192818,
243 .title = "Kernal Rom",
244 .subtitle = "Datel Rom",
245 .revision = "V3.2+",
246 .vendor = OTHER,
247 .type = KERNAL,
248 .patched = true
249 },{
250 .fnv = 0x211EAC45AB03A2CA,
251 .title = "Kernal Rom",
252 .subtitle = "Exos Rom",
253 .revision = "V3",
254 .vendor = OTHER,
255 .type = KERNAL,
256 .patched = true
257 },{
258 .fnv = 0xF2A39FF166D338AE,
259 .title = "Kernal Rom",
260 .subtitle = "Turbo Tape",
261 .revision = "V0.1",
262 .vendor = OTHER,
263 .type = KERNAL
264 },{
265 .fnv = 0xFD1EBD928024F8D5,
266 .title = "Patched Kernal Rom",
267 .subtitle = "Turbo 250",
268 .revision = "V1.0",
269 .vendor = OTHER,
270 .type = KERNAL,
271 .patched = true
272 },{
273 .fnv = 0x7202DEA530E1C172,
274 .title = "Patched Kernal Rom",
275 .subtitle = "64'er DOS",
276 .revision = "V3",
277 .vendor = OTHER,
278 .type = KERNAL,
279 .patched = true
280 },{
281 .fnv = 0x7E3AEFF7886684A2,
282 .title = "Patched Kernal Rom",
283 .subtitle = "SpeedDOS Plus",
284 .revision = "",
285 .vendor = OTHER,
286 .type = KERNAL,
287 .patched = true
288 },{
289 .fnv = 0x6E6190177D93D2BB,
290 .title = "Patched Kernal Rom",
291 .subtitle = "SpeedDOS Plus (TRIAD)",
292 .revision = "V2.7",
293 .vendor = OTHER,
294 .type = KERNAL,
295 .patched = true
296 },{
297 .fnv = 0xD135F409F4FA10F2,
298 .title = "Patched Kernal Rom",
299 .subtitle = "Dolphin DOS",
300 .revision = "V1.0",
301 .vendor = OTHER,
302 .type = KERNAL,
303 .patched = true
304 },{
305 .fnv = 0x32CAF94AAA196DB6,
306 .title = "Patched Kernal Rom",
307 .subtitle = "Dolphin DOS",
308 .revision = "V2.0 Rev 1",
309 .vendor = OTHER,
310 .type = KERNAL,
311 .patched = true
312 },{
313 .fnv = 0xAE3DEC803423CE60,
314 .title = "Patched Kernal Rom",
315 .subtitle = "Dolphin DOS",
316 .revision = "V2.0 Rev 1 (M.A.)",
317 .vendor = OTHER,
318 .type = KERNAL,
319 .patched = true
320 },{
321 .fnv = 0x4D3C32F9415972C3,
322 .title = "Patched Kernal Rom",
323 .subtitle = "Dolphin DOS",
324 .revision = "V2.0 Rev 2",
325 .vendor = OTHER,
326 .type = KERNAL,
327 .patched = true
328 },{
329 .fnv = 0xA5D930343EE32459,
330 .title = "Patched Kernal Rom",
331 .subtitle = "Dolphin DOS",
332 .revision = "V2.0 Rev 3",
333 .vendor = OTHER,
334 .type = KERNAL,
335 .patched = true
336 },{
337 .fnv = 0x7D34E8277F74A321,
338 .title = "Patched Kernal Rom",
339 .subtitle = "Dolphin DOS",
340 .revision = "V2.0 (SilverDream)",
341 .vendor = OTHER,
342 .type = KERNAL,
343 .patched = true
344 },{
345 .fnv = 0x877E38DA5DAFEC30,
346 .title = "Patched Kernal Rom",
347 .subtitle = "Dolphin DOS",
348 .revision = "V3.0",
349 .vendor = OTHER,
350 .type = KERNAL,
351 .patched = true
352 },{
353 .fnv = 0x2d7ca552f0332aef,
354 .title = "Patched Kernal Rom",
355 .subtitle = "JiffyDOS Dolphin Mod",
356 .revision = "2015",
357 .vendor = OTHER,
358 .type = KERNAL,
359 .patched = true
360 },{
361 .fnv = 0x7D6153CE2E12474F,
362 .title = "Patched Kernal Rom",
363 .subtitle = "Masterom (Norland)",
364 .revision = "V3.0",
365 .vendor = OTHER,
366 .type = KERNAL,
367 .patched = true
368 },{
369 .fnv = 0x99692773DB9D7DF4,
370 .title = "Patched Kernal Rom",
371 .subtitle = "SD2IEC",
372 .revision = "V2.2",
373 .vendor = OTHER,
374 .type = KERNAL,
375 .patched = true
376 },{
377 .fnv = 0x57C8266769C5B580,
378 .title = "Patched Kernal Rom",
379 .subtitle = "JaffyDOS",
380 .revision = "V1.3",
381 .vendor = OTHER,
382 .type = KERNAL,
383 .patched = true
384 },
385
386 //
387 // VC1541 ROM
388 //
389
390 // until here
391
392 {
393 .fnv = 0x361A1EC48F04F5A4,
394 .title = "Floppy Drive Firmware",
395 .subtitle = "MOS 251968-01",
396 .revision = "",
397 .vendor = COMMODORE,
398 .type = VC1541
399 },{
400 .fnv = 0xB938E2DA07F4FE40,
401 .title = "Floppy Drive Firmware",
402 .subtitle = "MOS 251968-02",
403 .revision = "",
404 .vendor = COMMODORE,
405 .type = VC1541
406 },{
407 .fnv = 0x44BBA0EAC5898597,
408 .title = "Floppy Drive Firmware",
409 .subtitle = "MOS 251968-03",
410 .revision = "",
411 .vendor = COMMODORE,
412 .type = VC1541
413 },{
414 .fnv = 0xA1D36980A17C8756,
415 .title = "Floppy Drive Firmware",
416 .subtitle = "MOS 355640-01",
417 .revision = "",
418 .vendor = COMMODORE,
419 .type = VC1541
420 },{
421 .fnv = 0x47CBA55F16FB3E09,
422 .title = "Patched Drive Firmware",
423 .subtitle = "Relocation Patch",
424 .revision = "",
425 .vendor = OTHER,
426 .type = VC1541,
427 .patched = true
428 },{
429 .fnv = 0x8B2A523E29BED889,
430 .title = "Patched Drive Firmware",
431 .subtitle = "JiffyDOS Patch",
432 .revision = "",
433 .vendor = OTHER,
434 .type = VC1541,
435 .patched = true
436 },{
437 .fnv = 0xF7F4D931219DBB5D,
438 .title = "Patched Drive Firmware",
439 .subtitle = "JiffyDOS Patch",
440 .revision = "V6.0",
441 .vendor = OTHER,
442 .type = VC1541,
443 .patched = true
444 },{
445 .fnv = 0xB4027D6D9D61378A,
446 .title = "Patched Drive Firmware",
447 .subtitle = "64'er DOS",
448 .revision = "V3",
449 .vendor = OTHER,
450 .type = VC1541,
451 .patched = true
452 },{
453 .fnv = 0xC50EAFCBA50C4B63,
454 .title = "Patched Drive Firmware",
455 .subtitle = "SpeedDOS Plus",
456 .revision = "",
457 .vendor = OTHER,
458 .type = VC1541,
459 .patched = true
460 },{
461 .fnv = 0x92ADEBA1BCCD8D31,
462 .title = "Patched Drive Firmware",
463 .subtitle = "SpeedDOS Plus",
464 .revision = "V2.7 (TRIAD)",
465 .vendor = OTHER,
466 .type = VC1541,
467 .patched = true
468 },{
469 .fnv = 0x28CD4E47A40C41CA,
470 .title = "Patched Drive Firmware",
471 .subtitle = "Dolphin DOS",
472 .revision = "V2.0",
473 .vendor = OTHER,
474 .type = VC1541,
475 .patched = true
476 },{
477 .fnv = 0x1C1DDD64E02CAD32,
478 .title = "Patched Drive Firmware",
479 .subtitle = "Dolphin DOS",
480 .revision = "V2.0 (SilverDream)",
481 .vendor = OTHER,
482 .type = VC1541,
483 .patched = true
484 },{
485 .fnv = 0x09D8FBAB61E59FF0,
486 .title = "Patched Drive Firmware",
487 .subtitle = "Dolphin DOS",
488 .revision = "V3.0",
489 .vendor = OTHER,
490 .type = VC1541,
491 .patched = true
492 },{
493 .fnv = 0xF684F72388EE5364,
494 .title = "Patched Drive Firmware",
495 .subtitle = "Dolphin DOS",
496 .revision = "V3.0 (SilverDream)",
497 .vendor = OTHER,
498 .type = VC1541,
499 .patched = true
500 }
501};
502
503#undef BASIC
504#undef KERNAL
505#undef CHAR
506#undef VC1541
507
508#undef COMMODORE
509#undef MEGA65
510#undef OTHER