45f2f245 |
1 | # hardware (hw = ...): |
000f5335 |
2 | # svp - Sega Virtua Processor |
3 | # pico - Sega Pico (not really cart hw, but convenient to support here) |
e1e8ca17 |
4 | # prot - simple copy protection devices in unlicensed cartridges (see prot. below) |
fe9a06d2 |
5 | # flash - protection through reading the flash chip ID |
99bd61f8 |
6 | # j_cart - 2 additional joypad ports on cart |
45f2f245 |
7 | # |
8 | # cartridge properties (prop = ...): |
a67db32a |
9 | # no_sram - don't emulate sram/EEPROM even if ROM headers tell it's there |
10 | # no_eeprom - save storage is not EEPROM, even if ROM headers tell it is |
11 | # filled_sram - save storage needs to be initialized with FFh instead of 00h |
12 | # force_6btn - game only supports 6 button pad (32X X-men proto) |
13 | # no_z80_bus_lock - don't emulate z80 bus getting closed to the 68k when bus is released |
45f2f245 |
14 | # |
15 | # mappers (hw = ...): |
30f0fdd4 |
16 | # ssf2_mapper - used in Super Street Fighter2 |
17 | # x_in_1_mapper - used in many *-in-1 pirate carts |
45f2f245 |
18 | # realtec_mapper |
30f0fdd4 |
19 | # radica_mapper - similar to x_in_1_mapper |
20 | # piersolar_mapper - used in Pier Solar |
b7697ca3 |
21 | # sf00x_mapper - versions x=1,2,4 used by superfighter team |
e1e8ca17 |
22 | # lk3_mapper - mapper for Lion King 3 / Super King Kong 99 and some more |
23 | # smw64_mapper - mapper for Super Mario World 64 |
45f2f245 |
24 | # |
25 | # save storage memory range (inclusive, overrides ROM header): |
26 | # sram_range = <start, end> |
27 | # |
28 | # EEPROM: |
29 | # eeprom_type = <1|2|3> - enable EEPROM, use type X (7bit, 2 addr words, 3 addr words). |
30 | # See EkeEke's gen_eeprom.pdf "mode" descriptions for 24Cxx EEPROMs. |
31 | # eeprom_lines = <SCL,SDA_IN,SDA_OUT> |
32 | # - select data bus pins that are connected to EEPROM |
33 | # SCL, SDA_IN and SDA_OUT pins (0-15 for D0-D15). |
000f5335 |
34 | # hw = prot: |
35 | # prot_ro_value16 = <addr, mask, val> - return constant <val> on reads at location |
36 | # (<addr> & <mask>), ignore writes. |
37 | # prot_rw_value16 = <addr, mask, val> - same as above, but writeable |
45f2f245 |
38 | |
39 | [Virtua Racing - SVP] |
40 | check_str = 0x150, "Virtua Racing" |
8b78786e |
41 | check_str = 0x810, "OHMP" |
45f2f245 |
42 | hw = svp |
43 | |
44 | [Virtua Racing - SVP] |
45 | check_str = 0x150, "VIRTUA RACING" |
8b78786e |
46 | check_str = 0x810, "OHMP" |
45f2f245 |
47 | hw = svp |
48 | |
4fc85c80 |
49 | [Soreike! Anpanman no Game de Asobou Anpanman - Pico] |
50 | check_str = 0x100, "SEGA IAC " |
45f2f245 |
51 | hw = pico |
52 | |
4fc85c80 |
53 | # Unou Kaihatsu Series: IMA IKUNO[U]JYUKU |
54 | [Unou Kaihatsu Series - Pico] |
55 | check_str = 0x100, "IMA IKUNO" |
45f2f245 |
56 | hw = pico |
57 | |
fe8f2d96 |
58 | # X-Men proto |
59 | [X-Men (prototype) - 32X] |
60 | check_str = 0x120, "32X SAMPLE PROGRAM" |
61 | check_str = 0x32b74c, "Bishop Level" |
62 | prop = force_6btn |
63 | |
64 | # WWF Raw |
65 | [WWF Raw - 32X] |
66 | check_str = 0x100, "SEGA 32X" |
67 | check_str = 0x150, "WWF RAW" |
68 | prop = wwfraw_hack # reads back data written to high ROM adresses from cache |
69 | |
70 | # Blackthorne |
71 | [Blackthorne - 32X] |
72 | check_str = 0x100, "SEGA 32X" |
73 | check_str = 0x120, "BLACKTHORNE" |
74 | prop = blackthorne_hack # reads back data overwritten by 2nd CPU from cache |
75 | |
76 | # Mars check program |
77 | [Mars Check - 32X] |
78 | check_str = 0x100, "SEGA" |
79 | check_str = 0x150, "MARS CHECK PROGRAM" |
80 | prop = marscheck_hack # reads back data overwritten by DMA from cache |
81 | |
45f2f245 |
82 | # sram emulation triggers some protection for this one |
83 | [Puggsy] |
84 | check_str = 0x120, "PUGGSY" |
85 | prop = no_sram |
86 | |
87 | # game has problems if it's save RAM is not initialized with FFh: |
88 | [Dino Dini's Soccer] |
89 | check_str = 0x150, "DINO DINI'S SOCCER" |
90 | prop = filled_sram |
91 | |
6e05b76b |
92 | # bad headers |
93 | [HardBall III] |
94 | check_str = 0x150, " HardBall III" |
95 | sram_range = 0x200000,0x20ffff |
96 | |
99bd61f8 |
97 | # J-Cart |
98 | [Super Skidmarks, Micro Machines Military] |
99 | check_str = 0x150, " " |
100 | check_csum = 0x168b |
101 | hw = j_cart |
102 | |
103 | [Pete Sampras Tennis, Micro Machines Turbo Tournament 96] |
104 | check_str = 0x150, " " |
105 | check_csum = 0x165e |
106 | hw = j_cart |
107 | |
108 | [Micro Machines 2 - Turbo Tournament] |
109 | check_str = 0x150, "MICRO MACHINES II" |
110 | hw = j_cart |
111 | |
112 | [Pete Sampras Tennis 96] |
113 | check_str = 0x150, "PETE SAMPRAS TENNIS '96" |
114 | hw = j_cart |
115 | |
000f5335 |
116 | # The SSF2 mapper |
40d22a8e |
117 | [Mega Everdrive] |
118 | check_str = 0x100, "SEGA SSF" |
119 | hw = ssf2_mapper |
120 | |
000f5335 |
121 | [Super Street Fighter II - The New Challengers (U)] |
122 | check_str = 0x150, "SUPER STREET FIGHTER2 The New Challengers" |
123 | hw = ssf2_mapper |
124 | prop = no_sram |
125 | |
30f0fdd4 |
126 | # The Pier Solar mapper, custom eeprom location |
127 | [Pier Solar and the Great Architects] |
a76fad41 |
128 | check_str = 0x150, "PIER" |
129 | check_str = 0x610, "Respect" |
30f0fdd4 |
130 | hw = piersolar_mapper |
30f0fdd4 |
131 | |
60392bf4 |
132 | # Beggar Prince, unusual SRAM location |
133 | [Beggar Prince] |
134 | check_str = 0x150, "BEGGAR PRINCE" |
135 | hw = sf001_mapper |
136 | sram_range = 0x400000,0x40ffff |
137 | prop = filled_sram |
138 | |
139 | [Legend of Wukong] |
140 | check_str = 0x150, "LEGEND OF WUKONG" |
141 | hw = sf002_mapper |
142 | |
b7697ca3 |
143 | # Star Odyssey, r/w in SRAM mirror (double SRAM as a kludge) |
144 | [Star Odyssey] |
145 | check_str = 0x150, "STAR ODYSSEY" |
146 | hw = sf004_mapper |
147 | sram_range = 0x200000,0x207fff |
148 | |
fe9a06d2 |
149 | # Escape 2042, reads flash ID for protection |
150 | [Escape 2042] |
151 | check_str = 0x120, "Escape 2042" |
152 | hw = flash |
153 | |
45f2f245 |
154 | # detect *_in_1 based on first game and if it's larger than it should be, |
155 | # as some dumps look like to be incomplete. |
156 | # This will also pick overdumps, but those should still work with the mapper applied. |
157 | [12-in-1 (Unl)] |
158 | check_str = 0x120, "FLICKY" |
159 | check_size_gt = 0x020000 |
160 | hw = x_in_1_mapper |
161 | |
162 | [4-in-1] |
163 | check_str = 0x150, "ROBOCOP 3" |
164 | check_size_gt = 0x080000 |
165 | hw = x_in_1_mapper |
166 | |
167 | [4-in-1 a1] |
168 | check_str = 0x150, "ALIEN 3" |
169 | check_size_gt = 0x080000 |
170 | hw = x_in_1_mapper |
171 | |
0a9bec02 |
172 | [5-in-1 Megadrive Portable] |
173 | check_str = 0x150, "TINY TOON ADVENTURES" |
174 | check_size_gt = 0x080000 |
175 | hw = x_in_1_mapper |
176 | |
177 | [40-games-in-1] |
178 | check_str = 0x160, "FS MOONWALKER" |
179 | check_size_gt = 0x080000 |
180 | hw = x_in_1_mapper |
181 | |
45f2f245 |
182 | [Super 15-in-1] |
183 | check_str = 0x150, " SHOVE IT!" |
184 | check_size_gt = 0x020000 |
185 | hw = x_in_1_mapper |
186 | |
187 | [Super 19-in-1] |
188 | check_str = 0x150, "MS PACMAN" |
189 | check_size_gt = 0x020000 |
190 | hw = x_in_1_mapper |
191 | |
192 | # radica |
75a6b6a9 |
193 | [Arcade Legends Sega] |
45f2f245 |
194 | check_str = 0x150, "KID CHAMELEON" |
195 | check_size_gt = 0x100000 |
196 | hw = radica_mapper |
197 | |
75a6b6a9 |
198 | [Arcade Legends Capcom] |
199 | check_str = 0x150, "STREET FIGHTER" |
200 | check_size_gt = 0x300000 |
201 | hw = radica_mapper |
202 | |
45f2f245 |
203 | # realtec |
204 | [Earth Defend, The (Unl)] |
205 | check_str = 0x94, "THE EARTH DEFEND" |
206 | hw = realtec_mapper |
207 | |
208 | [Funny World & Balloon Boy (Unl)] |
209 | check_str = 0xfe, "WISEGAME 11-03-1993" |
210 | hw = realtec_mapper |
211 | |
212 | [Whac-A-Critter (Unl)] |
213 | check_str = 0x95, "MALLET LEGEND" |
214 | hw = realtec_mapper |
215 | |
216 | # EEPROM games - thanks to EkeEke for most of this info |
217 | [College Slam] |
218 | check_str = 0x150, "COLLEGE SLAM" |
219 | eeprom_type = 3 |
220 | eeprom_lines = 8,0,0 |
221 | |
222 | [Frank Thomas Big Hurt Baseball] |
223 | check_str = 0x150, "FRANK THOMAS BIGHURT BASEBAL" |
224 | eeprom_type = 3 |
225 | eeprom_lines = 8,0,0 |
226 | |
75a6b6a9 |
227 | [Greatest Heavyweights] |
228 | check_str = 0x150, "GREATEST HEAVYWEIGHTS" |
229 | sram_range = 0x200000,0x200001 |
230 | eeprom_type = 1 |
231 | eeprom_lines = 1,0,0 |
232 | |
99bd61f8 |
233 | [Micro Machines 2 - Turbo Tournament] |
45f2f245 |
234 | check_str = 0x150, "MICRO MACHINES II" |
99bd61f8 |
235 | prop = filled_sram |
236 | sram_range = 0x300000,0x37ffff |
45f2f245 |
237 | eeprom_type = 2 |
238 | eeprom_lines = 9,8,7 |
239 | |
240 | [Micro Machines - Turbo Tournament '96] |
241 | check_str = 0x150, " " |
242 | check_csum = 0x165e |
99bd61f8 |
243 | sram_range = 0x300000,0x37ffff |
45f2f245 |
244 | eeprom_type = 2 |
245 | eeprom_lines = 9,8,7 |
246 | |
247 | [Micro Machines - Turbo Tournament '96] |
248 | check_str = 0x150, " " |
249 | check_csum = 0x2c41 |
99bd61f8 |
250 | sram_range = 0x300000,0x37ffff |
45f2f245 |
251 | eeprom_type = 2 |
252 | eeprom_lines = 9,8,7 |
253 | |
254 | [Micro Machines Military] |
255 | check_str = 0x150, " " |
256 | check_csum = 0x168b |
99bd61f8 |
257 | sram_range = 0x300000,0x37ffff |
45f2f245 |
258 | eeprom_type = 2 |
259 | eeprom_lines = 9,8,7 |
260 | |
261 | [Micro Machines Military] |
262 | check_str = 0x150, " " |
263 | check_csum = 0xcee0 |
99bd61f8 |
264 | sram_range = 0x300000,0x37ffff |
265 | eeprom_type = 2 |
266 | eeprom_lines = 9,8,7 |
267 | |
268 | [Brian Lara Cricket] |
269 | check_str = 0x150, "BRIAN LARA CRICKET" |
270 | sram_range = 0x300000,0x3fffff |
271 | eeprom_type = 2 |
272 | eeprom_lines = 9,8,7 |
273 | |
274 | [Brian Lara Cricket 96] |
275 | check_str = 0x150, "BRIAN LARA 96" |
276 | sram_range = 0x300000,0x3fffff |
45f2f245 |
277 | eeprom_type = 2 |
278 | eeprom_lines = 9,8,7 |
279 | |
280 | [NBA Jam] |
281 | check_str = 0x150, "NBA JAM " |
282 | eeprom_type = 2 |
283 | eeprom_lines = 1,0,1 |
284 | |
285 | [NBA Jam Tournament Edition] |
286 | check_str = 0x150, "NBA JAM TOURNAMENT EDITION" |
287 | sram_range = 0x200000,0x200001 |
288 | eeprom_type = 2 |
289 | eeprom_lines = 8,0,0 |
290 | |
291 | [NFL Quarterback Club] |
292 | check_str = 0x150, "NFL QUARTERBACK CLUB" |
293 | eeprom_type = 2 |
294 | eeprom_lines = 8,0,0 |
295 | |
296 | [NHLPA Hockey '93] |
297 | check_str = 0x150, "NHLPA Hockey '93" |
298 | sram_range = 0x200000,0x200001 |
299 | eeprom_type = 1 |
300 | eeprom_lines = 6,7,7 |
301 | |
302 | [NHLPA Hockey '93] |
303 | check_str = 0x150, "NHLPA HOCKEY '93" |
304 | sram_range = 0x200000,0x200001 |
305 | eeprom_type = 1 |
306 | eeprom_lines = 6,7,7 |
307 | |
308 | [Rings of Power] |
309 | check_str = 0x150, "RINGS OF POWER" |
310 | sram_range = 0x200000,0x200001 |
311 | eeprom_type = 1 |
312 | eeprom_lines = 6,7,7 |
313 | |
75a6b6a9 |
314 | [Sports Talk Baseball] |
315 | check_str = 0x150, "MLBPA SPORTS TALK BASEBALL" |
316 | sram_range = 0x200000,0x200001 |
317 | eeprom_type = 1 |
318 | eeprom_lines = 1,0,0 |
319 | |
000f5335 |
320 | # Unlicensed games with simple protections |
321 | # some of these come from Haze, some from myself (notaz). |
e1e8ca17 |
322 | # more added by irixxxx from Mame and G+GX |
323 | # check_crc32 calculation for 1st 64 KB only to allow for overdumps |
324 | |
325 | # lk3, mapper + bitswapping hardware |
326 | [Lion King 3 (Unl)] |
327 | check_str = 0x104, " are Registered Trademarks" |
328 | check_crc32 = 0xc9706e25 |
329 | hw = lk3_mapper |
330 | |
331 | [Super King Kong 99 (Unl)] |
332 | check_str = 0x104, " are Registered Trademarks" |
333 | check_crc32 = 0x4c98cc30 |
334 | hw = lk3_mapper |
335 | |
75a6b6a9 |
336 | [Gunfight 3-in-1 (Unl)] |
337 | check_str = 0x104, " are Registered Trademarks" |
338 | check_crc32 = 0x6ec032cb |
339 | hw = lk3_mapper |
340 | |
e1e8ca17 |
341 | [Pocket Monsters II (Unl)] |
342 | check_str = 0x104, " " |
343 | check_crc32 = 0x0d097f5c |
344 | hw = lk3_mapper |
345 | |
346 | [Pokemon Stadium (Unl)] |
347 | check_str = 0x104, " " |
348 | check_crc32 = 0xbf7219df |
349 | hw = lk3_mapper |
350 | |
351 | [Mulan (Unl)] |
352 | check_str = 0x104, " " |
353 | check_crc32 = 0xb5b7606e |
354 | hw = lk3_mapper |
355 | |
356 | [Final Samurai V (Unl)] # aka Soul Edge |
357 | check_str = 0x104, " " |
358 | check_crc32 = 0xab3ae5e9 |
359 | hw = lk3_mapper |
360 | |
361 | [Top Fighter 2000 (Unl)] |
362 | check_str = 0x104, " " |
363 | check_crc32 = 0x802f53f9 |
364 | hw = lk3_mapper |
365 | |
366 | # smw64 mapper + prot |
367 | [Super Mario World 64 (Unl)] |
368 | check_csum = 0 |
369 | check_crc32 = 0xf63b7bdc |
370 | hw = smw64_mapper |
371 | |
372 | # cart I/O area |
000f5335 |
373 | [Bug's Life, A (Unl)] |
374 | check_str = 0x104, " " |
e1e8ca17 |
375 | check_crc32 = 0x50aa5a9b |
000f5335 |
376 | hw = prot |
377 | prot_ro_value16 = 0xa13000,0xffff00,0x28 |
378 | |
e1e8ca17 |
379 | [Rockman X3 (Unl)] |
380 | check_csum = 0 |
381 | check_crc32 = 0xee20be2c |
000f5335 |
382 | hw = prot |
e1e8ca17 |
383 | prot_ro_value16 = 0xa13000,-2,0x0c |
384 | |
385 | [Super Mario World (Unl)] |
386 | check_str = 0x104, "SEGASEGASEGA" |
387 | check_crc32 = 0xc3616596 |
388 | hw = prot |
389 | prot_ro_value16 = 0xa13000,-2,0x1c |
390 | |
391 | [Super Mario Bros. 2 (Unl)] # aka Super Mario 2 1998 |
392 | check_str = 0x104, " are Registered Trademarks" |
393 | check_crc32 = 0x7861fb28 |
394 | hw = prot |
395 | prot_ro_value16 = 0xa13000,-2,0x0a |
396 | |
397 | [Pocket Monsters (Unl)] |
398 | check_str = 0x104, " " |
399 | check_crc32 = 0xf4cb9b37 |
400 | hw = prot |
401 | prot_ro_value16 = 0xa13000,-2,0x00 |
402 | prot_ro_value16 = 0xa13002,-2,0x01 |
403 | prot_ro_value16 = 0xa1303e,-2,0x1f |
000f5335 |
404 | |
e1e8ca17 |
405 | [King of Fighters '99, The (Unl)] |
000f5335 |
406 | check_str = 0x104, " " |
e1e8ca17 |
407 | check_crc32 = 0x7bdfb390 |
408 | hw = prot |
409 | prot_ro_value16 = 0xa13000,-2,0x00 |
410 | prot_ro_value16 = 0xa13002,-2,0x01 |
411 | prot_ro_value16 = 0xa1303e,-2,0x1f |
412 | |
413 | # cart upper 4MB |
414 | [King of Fighters '98+2000, The (Unl)] |
415 | check_str = 0x104, " " |
416 | check_crc32 = 0x8fb8b29e |
000f5335 |
417 | hw = prot |
418 | prot_ro_value16 = 0x480000,0xff0000,0xaa00 |
419 | prot_ro_value16 = 0x4a0000,0xff0000,0x0a00 |
420 | prot_ro_value16 = 0x4c0000,0xff0000,0xf000 |
421 | prot_ro_value16 = 0x400000,0xc00000,0x0000 # default for 400000-7f0000 |
422 | |
e1e8ca17 |
423 | [Mahjong Lover (Unl), Super Majon Club (Unl), Insane Paradise (Unl)] |
424 | # Majiang qingren, Chaoji majiang Club, Fengkuang taohuayuan (Crazy Utopia) |
425 | check_str = 0x104, " MEGA DRIVE (C)" |
426 | check_str = 0x118, "CREATON." |
427 | check_str = 0x180, "MDGM-000" |
428 | hw = prot |
429 | prot_ro_value16 = 0x400000,-2,0x9000 |
430 | prot_ro_value16 = 0x401000,-2,0xd300 |
431 | |
432 | [Rook Mann (Unl)] # aka Rock Heaven |
433 | check_csum = 0x6cca |
434 | check_crc32 = 0xab5d5d9e |
435 | hw = prot |
436 | prot_ro_value16 = 0x500008,-2,0x5000 |
437 | |
438 | [Rock World (Unl)] |
439 | check_str = 0x113, "KANKO 91-92" |
440 | check_crc32 = 0x79423515 |
441 | hw = prot |
442 | prot_ro_value16 = 0x500008,-2,0x5000 |
443 | prot_ro_value16 = 0x500208,-2,0xa000 |
000f5335 |
444 | |
445 | [Lion King II, The (Unl)] |
446 | check_str = 0x104, " are Registered Trademarks" |
e1e8ca17 |
447 | check_crc32 = 0x7009cac3 |
000f5335 |
448 | hw = prot |
449 | prot_rw_value16 = 0x400000,0xc00004,0 |
450 | prot_rw_value16 = 0x400004,0xc00004,0 |
451 | |
e1e8ca17 |
452 | [Squirrel King (Unl)] |
453 | check_str = 0x104, " are Registered Trademarks" |
454 | check_crc32 = 0x1c602dd4 |
000f5335 |
455 | hw = prot |
e1e8ca17 |
456 | prot_rw_value16 = 0x400000,0xc00000,0 |
457 | prot_rw_value16 = 0x400004,0xc00004,0 |
000f5335 |
458 | |
e1e8ca17 |
459 | [Tiny Toon Adventures 3 (Unl)] |
460 | check_str = 0x104, " are Registered Trademarks" |
461 | check_crc32 = 0xc31cfcca |
000f5335 |
462 | hw = prot |
e1e8ca17 |
463 | prot_rw_value16 = 0x400000,0xc00000,0 |
464 | prot_rw_value16 = 0x400004,0xc00004,0 |
000f5335 |
465 | |
e1e8ca17 |
466 | [Barver Battle Saga (Unl)] # Taikong zhanshi |
467 | check_csum = 0x30b9 |
468 | check_crc32 = 0x35e0ff17 |
000f5335 |
469 | hw = prot |
e1e8ca17 |
470 | prot_rw_value16 = 0x400000,0xc00000,0 |
471 | prot_rw_value16 = 0x400004,0xc00004,0 |
000f5335 |
472 | |
75a6b6a9 |
473 | [Final Fantasy (Unl)] # Taikong zhanshi (russian bootleg) |
474 | check_csum = 0x5ff9 |
475 | check_crc32 = 0x4b2b163a |
476 | hw = prot |
477 | prot_rw_value16 = 0x400000,0xc00000,0 |
478 | prot_rw_value16 = 0x400004,0xc00004,0 |
479 | |
e1e8ca17 |
480 | [Water Margin (Unl)] # Shuihu Zhuan |
481 | check_csum = 0x6001 |
482 | check_crc32 = 0xfa80956a |
000f5335 |
483 | hw = prot |
e1e8ca17 |
484 | prot_rw_value16 = 0x400000,0xc00000,0 |
485 | prot_rw_value16 = 0x400004,0xc00004,0 |
486 | |
487 | [Legend of Fengshen Yingjie, The (Unl)] # Fengshen yingjie chuan (Canon) |
488 | check_csum = 0xffff |
489 | check_crc32 = 0x91865ea4 |
490 | hw = prot |
491 | prot_rw_value16 = 0x400000,0xc00000,0 |
492 | prot_rw_value16 = 0x400004,0xc00004,0 |
493 | |
494 | [Legend of Arthur, The (Unl)] # Ya se chuanshuo |
495 | check_csum = 0xffff |
496 | check_crc32 = 0x8e83dbfa |
497 | hw = prot |
498 | prot_ro_value16 = 0x400000,-2,0x6300 |
499 | prot_ro_value16 = 0x400002,-2,0x9800 |
500 | prot_ro_value16 = 0x400004,-2,0xc900 |
501 | prot_ro_value16 = 0x400006,-2,0x1800 |
502 | |
503 | [Wucom Legend (Unl)] # Wukong waizhuan |
504 | check_str = 0x104, " are Registered Trademarks" |
505 | check_crc32 = 0xf838aa3b |
506 | hw = prot |
507 | prot_ro_value16 = 0x400000,-2,0x6300 |
508 | prot_ro_value16 = 0x400002,-2,0x9800 |
509 | prot_ro_value16 = 0x400004,-2,0xc900 |
510 | prot_ro_value16 = 0x400006,-2,0x1800 |
511 | |
512 | [Super Magician (Unl)] # Ling huan daoshi |
513 | check_str = 0x172, "GAME : ELF WOR" |
514 | hw = prot |
515 | prot_ro_value16 = 0x400000,-2,0x5500 |
516 | prot_ro_value16 = 0x400002,-2,0x0f00 # check is done if the above one fails |
517 | prot_ro_value16 = 0x400004,-2,0xc900 |
518 | prot_ro_value16 = 0x400006,-2,0x1800 # similar to above |
519 | |
520 | [Mighty Morphin Power Rangers (Unl)] |
521 | check_str = 0x104, " " |
522 | check_crc32 = 0x5fdeb37b |
523 | hw = prot |
524 | prot_ro_value16 = 0x400000,-2,0x5500 |
525 | prot_ro_value16 = 0x400002,-2,0x0f00 |
526 | prot_ro_value16 = 0x400004,-2,0xc900 |
527 | prot_ro_value16 = 0x400006,-2,0x1800 |
000f5335 |
528 | |
e1e8ca17 |
529 | [Smart Mouse (Unl)] # Huanle taoqi shu |
000f5335 |
530 | check_csum = 0 |
e1e8ca17 |
531 | check_crc32 = 0xc9539fce |
000f5335 |
532 | hw = prot |
533 | prot_ro_value16 = 0x400000,-2,0x5500 |
534 | prot_ro_value16 = 0x400002,-2,0x0f00 |
535 | prot_ro_value16 = 0x400004,-2,0xaa00 |
536 | prot_ro_value16 = 0x400006,-2,0xf000 |
537 | |
538 | [Soul Blade (Unl)] |
539 | check_str = 0x104, " " |
e1e8ca17 |
540 | check_crc32 = 0x6a95f766 |
000f5335 |
541 | hw = prot |
e1e8ca17 |
542 | prot_ro_value16 = 0x400000,-2,0x6300 |
000f5335 |
543 | prot_ro_value16 = 0x400002,-2,0x9800 |
544 | prot_ro_value16 = 0x400004,-2,0xaa00 # or 0xc900 |
545 | prot_ro_value16 = 0x400006,-2,0xf000 |
546 | |
547 | [Super Bubble Bobble (Unl)] |
548 | check_str = 0x104, " are Registered Trademarks" |
e1e8ca17 |
549 | check_crc32 = 0xf93f3d0b |
000f5335 |
550 | hw = prot |
551 | prot_ro_value16 = 0x400000,-2,0x5500 |
552 | prot_ro_value16 = 0x400002,-2,0x0f00 |
553 | |
e1e8ca17 |
554 | [Battle of Red Cliffs, The (Unl)] # Sanguo yanyi (Romance of the 3 Kingdoms) |
000f5335 |
555 | check_str = 0x104, " are Registered Trademarks" |
e1e8ca17 |
556 | check_crc32 = 0x66165305 |
557 | hw = prot |
558 | prot_ro_value16 = 0x400000,-2,0x5500 |
559 | prot_ro_value16 = 0x400002,-2,0x0f00 |
560 | prot_ro_value16 = 0x400004,-2,0xaa00 |
561 | prot_ro_value16 = 0x400006,-2,0xf000 |
000f5335 |
562 | |
e1e8ca17 |
563 | [Tunderbolt II (Unl)] # Leidian |
564 | check_str = 0xfe, "WISEGAME" |
565 | check_crc32 = 0x6f01bd65 |
000f5335 |
566 | hw = prot |
e1e8ca17 |
567 | prot_ro_value16 = 0x400000,-2,0x5500 |
568 | prot_ro_value16 = 0x400002,-2,0x0f00 |
569 | prot_ro_value16 = 0x400004,-2,0xaa00 |
570 | prot_ro_value16 = 0x400006,-2,0xf000 |
000f5335 |
571 | |
fe9a06d2 |
572 | [16 Tiles Mahjong 1+2 (Unl)] # Shi liu zhang majiang |
e1e8ca17 |
573 | check_str = 0xfe, "WISEGAME IS TRADE MARKER" |
000f5335 |
574 | hw = prot |
e1e8ca17 |
575 | prot_ro_value16 = 0x400002,-2,0xaa00 |
576 | prot_ro_value16 = 0x400004,-2,0xc900 |
577 | prot_ro_value16 = 0x400006,-2,0xf000 |
000f5335 |
578 | |
fe9a06d2 |
579 | [13 Tiles Mahjong] # Shi san zhang majiang |
580 | check_str = 0x104, " " |
581 | check_crc32 = 0x83397760 |
582 | hw = prot |
583 | prot_ro_value16 = 0x400000,-2,0x6300 |
584 | prot_ro_value16 = 0x400002,-2,0x9800 |
585 | prot_ro_value16 = 0x400004,-2,0xaa00 |
586 | prot_ro_value16 = 0x400006,-2,0xf000 |
587 | |
e1e8ca17 |
588 | [Super Poker (Unl)] # Chaoji puke |
589 | check_csum = 0xffff |
590 | check_crc32 = 0xdd02797c |
000f5335 |
591 | hw = prot |
e1e8ca17 |
592 | prot_ro_value16 = 0x400000,-2,0x5500 |
593 | prot_ro_value16 = 0x400002,-2,0x0f00 |
594 | prot_ro_value16 = 0x400004,-2,0xaa00 |
595 | prot_ro_value16 = 0x400006,-2,0xf000 |
596 | |
597 | [777 Casino (Unl)] # Menghuan shuiguo pan |
598 | check_csum = 0 |
599 | check_crc32 = 0xee9fc429 |
600 | hw = prot |
601 | prot_ro_value16 = 0x400000,-2,0x6300 |
000f5335 |
602 | |
a67db32a |
603 | # Unlicensed homebrew games made by V.M.V. |
604 | # to prevent bus conflicts between the audio drivers in 68k and Z80 |
605 | |
606 | [Ben 10 (Unl)] |
607 | check_str = 0x180, "GM 00000000-00" |
608 | check_crc32 = 0x6732aab4 |
609 | prop = no_z80_bus_lock |
610 | |
611 | [Mario 3: Vokrug Sveta (Unl)] |
612 | check_str = 0x180, "GM 00000000-00" |
613 | check_crc32 = 0xe302585a |
614 | prop = no_z80_bus_lock |
615 | |
616 | [Mario 4: Kosmicheskaya Odisseya (Unl)] |
617 | check_csum = 8224 |
618 | check_crc32 = 0x20ed0de8 |
619 | prop = no_z80_bus_lock |