trunk/hash/megadriv.xml
r241393 | r241394 | |
17338 | 17338 | |
17339 | 17339 | <software name="madden98"> |
17340 | 17340 | <description>Madden NFL 98 (USA)</description> |
17341 | | <year>1997</year>
|
17342 | | <publisher>Electronic Arts</publisher>
|
17343 | | <part name="cart" interface="megadriv_cart">
|
17344 | | <feature name="slot" value="rom_sram"/>
|
17345 | | <dataarea name="rom" width="16" endianness="big" size="2097152">
|
17346 | | <rom name="madden nfl 98 (usa).bin" size="2097152" crc="e051ea62" sha1="761e0903798a8d0ad9e7ab72e6d2762fc9d366d2" offset="0x000000"/>
|
17347 | | </dataarea>
|
17348 | | <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
17349 | | </dataarea>
|
17350 | | </part>
|
17351 | | </software>
|
17352 | | |
| 17341 | <year>1997</year> |
| 17342 | <publisher>Electronic Arts</publisher> |
| 17343 | <part name="cart" interface="megadriv_cart"> |
| 17344 | <feature name="slot" value="rom_sram"/> |
| 17345 | <dataarea name="rom" width="16" endianness="big" size="2097152"> |
| 17346 | <rom name="madden nfl 98 (usa).bin" size="2097152" crc="e051ea62" sha1="761e0903798a8d0ad9e7ab72e6d2762fc9d366d2" offset="0x000000"/> |
| 17347 | </dataarea> |
| 17348 | <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. --> |
| 17349 | </dataarea> |
| 17350 | </part> |
| 17351 | </software> |
| 17352 | |
17353 | 17353 | <software name="madoumon"> |
17354 | 17354 | <description>Madou Monogatari I (Jpn)</description> |
17355 | 17355 | <year>1996</year> |
r241393 | r241394 | |
19663 | 19663 | |
19664 | 19664 | <software name="nhl98"> |
19665 | 19665 | <description>NHL 98 (USA)</description> |
19666 | | <year>1997</year>
|
19667 | | <publisher>Electronic Arts</publisher>
|
19668 | | <part name="cart" interface="megadriv_cart">
|
19669 | | <feature name="slot" value="rom_sram"/>
|
19670 | | <dataarea name="rom" width="16" endianness="big" size="2097152">
|
19671 | | <rom name="nhl 98 (usa).bin" size="2097152" crc="7b64cd98" sha1="6771e9b660bde010cf28656cafb70f69249a3591" offset="0x000000"/>
|
19672 | | </dataarea>
|
19673 | | <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
19674 | | </dataarea>
|
19675 | | </part>
|
19676 | | </software>
|
19677 | | |
| 19666 | <year>1997</year> |
| 19667 | <publisher>Electronic Arts</publisher> |
| 19668 | <part name="cart" interface="megadriv_cart"> |
| 19669 | <feature name="slot" value="rom_sram"/> |
| 19670 | <dataarea name="rom" width="16" endianness="big" size="2097152"> |
| 19671 | <rom name="nhl 98 (usa).bin" size="2097152" crc="7b64cd98" sha1="6771e9b660bde010cf28656cafb70f69249a3591" offset="0x000000"/> |
| 19672 | </dataarea> |
| 19673 | <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. --> |
| 19674 | </dataarea> |
| 19675 | </part> |
| 19676 | </software> |
| 19677 | |
19678 | 19678 | <software name="nhlasp03" cloneof="nhlas"> |
19679 | 19679 | <description>NHL All-Star Hockey '95 (Prototype, 19941201-B)</description> |
19680 | 19680 | <year>1994</year> |
r241393 | r241394 | |
30698 | 30698 | |
30699 | 30699 | <software name="nhlpa2k3" cloneof="nhl98"> |
30700 | 30700 | <description>NHLPA 2003 (Rus)</description> |
30701 | | <year>199?</year>
|
30702 | | <publisher><unknown></publisher>
|
30703 | | <part name="cart" interface="megadriv_cart">
|
30704 | | <feature name="slot" value="rom_sram"/>
|
30705 | | <dataarea name="rom" width="16" endianness="big" size="2097152">
|
30706 | | <rom name="nhlpa 2003 (unl).bin" size="2097152" crc="4591571b" sha1="4e6dd50d0f671b89c4ce3f7d1a63ecb68208dc8e" offset="0x000000"/>
|
30707 | | </dataarea>
|
30708 | | <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
30709 | | </dataarea>
|
30710 | | </part>
|
30711 | | </software>
|
30712 | | |
| 30701 | <year>199?</year> |
| 30702 | <publisher><unknown></publisher> |
| 30703 | <part name="cart" interface="megadriv_cart"> |
| 30704 | <feature name="slot" value="rom_sram"/> |
| 30705 | <dataarea name="rom" width="16" endianness="big" size="2097152"> |
| 30706 | <rom name="nhlpa 2003 (unl).bin" size="2097152" crc="4591571b" sha1="4e6dd50d0f671b89c4ce3f7d1a63ecb68208dc8e" offset="0x000000"/> |
| 30707 | </dataarea> |
| 30708 | <dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. --> |
| 30709 | </dataarea> |
| 30710 | </part> |
| 30711 | </software> |
| 30712 | |
30713 | 30713 | <software name="pcarib" cloneof="unchartd"> |
30714 | 30714 | <description>Pirates of the Caribbean (Rus)</description> |
30715 | 30715 | <year>199?</year> |
trunk/src/emu/sound/ay8910.c
r241393 | r241394 | |
431 | 431 | |
432 | 432 | INLINE void build_3D_table(double rl, const ay8910_device::ay_ym_param *par, const ay8910_device::ay_ym_param *par_env, int normalize, double factor, int zero_is_off, INT32 *tab) |
433 | 433 | { |
434 | | int j, j1, j2, j3, e, indx; |
435 | | double rt, rw, n; |
436 | 434 | double min = 10.0, max = 0.0; |
437 | 435 | |
438 | 436 | dynamic_array<double> temp(8*32*32*32); |
439 | 437 | |
440 | | for (e=0; e < 8; e++) |
441 | | for (j1=0; j1 < 32; j1++) |
442 | | for (j2=0; j2 < 32; j2++) |
443 | | for (j3=0; j3 < 32; j3++) |
| 438 | for (int e=0; e < 8; e++) |
| 439 | { |
| 440 | const ay8910_device::ay_ym_param *par_ch1 = (e & 0x01) ? par_env : par; |
| 441 | const ay8910_device::ay_ym_param *par_ch2 = (e & 0x02) ? par_env : par; |
| 442 | const ay8910_device::ay_ym_param *par_ch3 = (e & 0x04) ? par_env : par; |
| 443 | |
| 444 | for (int j1=0; j1 < par_ch1->res_count; j1++) |
| 445 | for (int j2=0; j2 < par_ch2->res_count; j2++) |
| 446 | for (int j3=0; j3 < par_ch3->res_count; j3++) |
444 | 447 | { |
| 448 | double n; |
445 | 449 | if (zero_is_off) |
446 | 450 | { |
447 | 451 | n = (j1 != 0 || (e & 0x01)) ? 1 : 0; |
r241393 | r241394 | |
451 | 455 | else |
452 | 456 | n = 3.0; |
453 | 457 | |
454 | | rt = n / par->r_up + 3.0 / par->r_down + 1.0 / rl; |
455 | | rw = n / par->r_up; |
| 458 | double rt = n / par->r_up + 3.0 / par->r_down + 1.0 / rl; |
| 459 | double rw = n / par->r_up; |
456 | 460 | |
457 | | rw += 1.0 / ( (e & 0x01) ? par_env->res[j1] : par->res[j1]); |
458 | | rt += 1.0 / ( (e & 0x01) ? par_env->res[j1] : par->res[j1]); |
459 | | rw += 1.0 / ( (e & 0x02) ? par_env->res[j2] : par->res[j2]); |
460 | | rt += 1.0 / ( (e & 0x02) ? par_env->res[j2] : par->res[j2]); |
461 | | rw += 1.0 / ( (e & 0x04) ? par_env->res[j3] : par->res[j3]); |
462 | | rt += 1.0 / ( (e & 0x04) ? par_env->res[j3] : par->res[j3]); |
| 461 | rw += 1.0 / par_ch1->res[j1]; |
| 462 | rt += 1.0 / par_ch1->res[j1]; |
| 463 | rw += 1.0 / par_ch2->res[j2]; |
| 464 | rt += 1.0 / par_ch2->res[j2]; |
| 465 | rw += 1.0 / par_ch3->res[j3]; |
| 466 | rt += 1.0 / par_ch3->res[j3]; |
463 | 467 | |
464 | | indx = (e << 15) | (j3<<10) | (j2<<5) | j1; |
| 468 | int indx = (e << 15) | (j3<<10) | (j2<<5) | j1; |
465 | 469 | temp[indx] = rw / rt; |
466 | 470 | if (temp[indx] < min) |
467 | 471 | min = temp[indx]; |
468 | 472 | if (temp[indx] > max) |
469 | 473 | max = temp[indx]; |
470 | 474 | } |
| 475 | } |
471 | 476 | |
472 | 477 | if (normalize) |
473 | 478 | { |
474 | | for (j=0; j < 32*32*32*8; j++) |
| 479 | for (int j=0; j < 32*32*32*8; j++) |
475 | 480 | tab[j] = MAX_OUTPUT * (((temp[j] - min)/(max-min))) * factor; |
476 | 481 | } |
477 | 482 | else |
478 | 483 | { |
479 | | for (j=0; j < 32*32*32*8; j++) |
| 484 | for (int j=0; j < 32*32*32*8; j++) |
480 | 485 | tab[j] = MAX_OUTPUT * temp[j]; |
481 | 486 | } |
482 | 487 | |
trunk/src/mame/drivers/champbwl.c
r241393 | r241394 | |
155 | 155 | #include "sound/x1_010.h" |
156 | 156 | #include "machine/nvram.h" |
157 | 157 | #include "machine/ticket.h" |
158 | | #include "includes/tnzs.h" |
| 158 | #include "video/seta001.h" |
159 | 159 | |
160 | | class champbwl_state : public tnzs_state |
| 160 | class champbwl_state : public driver_device |
161 | 161 | { |
162 | 162 | public: |
163 | 163 | champbwl_state(const machine_config &mconfig, device_type type, const char *tag) |
164 | | : tnzs_state(mconfig, type, tag), |
| 164 | : driver_device(mconfig, type, tag), |
| 165 | m_maincpu(*this, "maincpu"), |
| 166 | m_seta001(*this, "spritegen"), |
| 167 | m_palette(*this, "palette"), |
165 | 168 | m_x1(*this, "x1snd") { } |
166 | 169 | |
| 170 | int m_screenflip;
|
| 171 | |
| 172 | required_device<cpu_device> m_maincpu;
|
| 173 | required_device<seta001_device> m_seta001;
|
| 174 | required_device<palette_device> m_palette; |
167 | 175 | required_device<x1_010_device> m_x1; |
168 | 176 | UINT8 m_last_trackball_val[2]; |
169 | 177 | DECLARE_READ8_MEMBER(trackball_r); |
r241393 | r241394 | |
172 | 180 | DECLARE_MACHINE_START(champbwl); |
173 | 181 | DECLARE_MACHINE_RESET(champbwl); |
174 | 182 | DECLARE_MACHINE_START(doraemon); |
| 183 | DECLARE_PALETTE_INIT(champbwl);
|
175 | 184 | UINT32 screen_update_champbwl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
176 | 185 | UINT32 screen_update_doraemon(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
177 | 186 | void screen_eof_champbwl(screen_device &screen, bool state); |
178 | 187 | void screen_eof_doraemon(screen_device &screen, bool state); |
179 | 188 | }; |
180 | 189 | |
| 190 | PALETTE_INIT_MEMBER(champbwl_state,champbwl) |
| 191 | { |
| 192 | const UINT8 *color_prom = memregion("proms")->base(); |
| 193 | int i, col; |
181 | 194 | |
| 195 | for (i = 0; i < palette.entries(); i++) |
| 196 | { |
| 197 | col = (color_prom[i] << 8) + color_prom[i + 512]; |
| 198 | palette.set_pen_color(i, pal5bit(col >> 10), pal5bit(col >> 5), pal5bit(col >> 0)); |
| 199 | } |
| 200 | } |
182 | 201 | |
| 202 | |
183 | 203 | READ8_MEMBER(champbwl_state::trackball_r) |
184 | 204 | { |
185 | 205 | UINT8 ret; |
r241393 | r241394 | |
443 | 463 | MACHINE_RESET_MEMBER(champbwl_state,champbwl) |
444 | 464 | { |
445 | 465 | m_screenflip = 0; |
446 | | m_mcu_type = -1; |
447 | 466 | m_last_trackball_val[0] = 0; |
448 | 467 | m_last_trackball_val[1] = 0; |
449 | 468 | |
r241393 | r241394 | |
497 | 516 | MCFG_GFXDECODE_ADD("gfxdecode", "palette", champbwl) |
498 | 517 | MCFG_PALETTE_ADD("palette", 512) |
499 | 518 | |
500 | | MCFG_PALETTE_INIT_OWNER(champbwl_state,arknoid2) |
| 519 | MCFG_PALETTE_INIT_OWNER(champbwl_state,champbwl) |
501 | 520 | |
502 | 521 | /* sound hardware */ |
503 | 522 | MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") |
r241393 | r241394 | |
562 | 581 | MCFG_GFXDECODE_ADD("gfxdecode", "palette", champbwl) |
563 | 582 | MCFG_PALETTE_ADD("palette", 512) |
564 | 583 | |
565 | | MCFG_PALETTE_INIT_OWNER(champbwl_state,arknoid2) |
| 584 | MCFG_PALETTE_INIT_OWNER(champbwl_state,champbwl) |
566 | 585 | |
567 | 586 | /* sound hardware */ |
568 | 587 | MCFG_SPEAKER_STANDARD_MONO("mono") |
trunk/src/mame/drivers/mcr.c
r241393 | r241394 | |
2248 | 2248 | ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP) |
2249 | 2249 | ROM_END |
2250 | 2250 | |
| 2251 | ROM_START( tronger ) |
| 2252 | ROM_REGION( 0x10000, "maincpu", 0 ) /* ROM's located on the Super CPU Board (90010) */ |
| 2253 | ROM_LOAD( "pro0.d2", 0x0000, 0x2000, CRC(ba14603d) SHA1(1cc30c4ea659926314343f00ccbcfe9021f4de26) ) |
| 2254 | ROM_LOAD( "scpu_pgb.d3", 0x2000, 0x2000, CRC(063a748f) SHA1(aefe647e9b562d6a9da1ec32a9d403fce7e62012) )// sldh |
| 2255 | ROM_LOAD( "scpu_pgc.d4", 0x4000, 0x2000, CRC(6ca50365) SHA1(76e17284da7c3ddf752d67b5e80d3c145f64068e) )// sldh |
| 2256 | ROM_LOAD( "scpu_pgd.d5", 0x6000, 0x2000, CRC(b5b241c9) SHA1(4a9bde02387365912b3e9878428c8aa1f87a365a) )// sldh |
| 2257 | ROM_LOAD( "scpu_pge.d6", 0x8000, 0x2000, CRC(04597abe) SHA1(7a896b9415a2479da8519329568e5fb8a429d03e) )// sldh |
| 2258 | ROM_LOAD( "scpu_pgf.d7", 0xa000, 0x2000, CRC(3908e404) SHA1(d61b73c87ba4b0ab8751d9c653b663b1342d5d73) )// sldh |
2251 | 2259 | |
| 2260 | ROM_REGION( 0x10000, "ssio:cpu", 0 ) /* ROM's located on the Super Sound I/O Board (90913) */ |
| 2261 | ROM_LOAD( "ssi_0a.a7", 0x0000, 0x1000, CRC(765e6eba) SHA1(42efeefc8571dfc237c0be3368248f1e56add92e) ) |
| 2262 | ROM_LOAD( "ssi_0b.a8", 0x1000, 0x1000, CRC(1b90ccdd) SHA1(0876e5eeaa63bb8cc97f3634a6ddd8a29a9b012f) ) |
| 2263 | ROM_LOAD( "ssi_0c.a9", 0x2000, 0x1000, CRC(3a4bc629) SHA1(ce8452a99a313ae7429de471bbea39de08c9fd4b) ) |
| 2264 | |
| 2265 | ROM_REGION( 0x04000, "gfx1", 0 ) /* ROM's located on the Super CPU Board (90010) */ |
| 2266 | ROM_LOAD( "scpu_bgg.g3", 0x0000, 0x2000, CRC(1a9ed2f5) SHA1(b0d85b47873ac8ad475da18b9540d37232cb2b7c) ) |
| 2267 | ROM_LOAD( "scpu_bgh.g4", 0x2000, 0x2000, CRC(3220f974) SHA1(a38ea5f1db27f05d9689db838ce7a8de98f34837) ) |
| 2268 | |
| 2269 | ROM_REGION( 0x08000, "gfx2", 0 ) /* ROM's located on the MCR/II Video Gen Board (91399) */ |
| 2270 | ROM_LOAD( "vga.e1", 0x0000, 0x2000, CRC(bc036d1d) SHA1(c5d54d0b80ac768ccf6fdd32cad1ef6359fa324c) ) |
| 2271 | ROM_LOAD( "vgb.dc1", 0x2000, 0x2000, CRC(58ee14d3) SHA1(5fb4268c9c73bdfc3b1e866618979aea3f219bbc) ) |
| 2272 | ROM_LOAD( "vgc.cb1", 0x4000, 0x2000, CRC(3329f9d4) SHA1(11f4d744374e475d2c5b195a9f70888414529dd3) ) |
| 2273 | ROM_LOAD( "vga.a1", 0x6000, 0x2000, CRC(9743f873) SHA1(71ed80ecd8caaf9fce1d7010f95c4678c9bd7102) ) |
| 2274 | |
| 2275 | ROM_REGION( 0x0005, "scpu_pals", 0) /* PAL's located on the Super CPU Board (90010) */ |
| 2276 | ROM_LOAD( "0066-313bx-xxqx.a12.bin", 0x0000, 0x0001, NO_DUMP) |
| 2277 | ROM_LOAD( "0066-315bx-xxqx.b12.bin", 0x0000, 0x0001, NO_DUMP) |
| 2278 | ROM_LOAD( "0066-322bx-xx0x.e3.bin", 0x0000, 0x0001, NO_DUMP) |
| 2279 | ROM_LOAD( "0066-316bx-xxqx.g11.bin", 0x0000, 0x0001, NO_DUMP) |
| 2280 | ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP) |
| 2281 | ROM_END |
| 2282 | |
2252 | 2283 | ROM_START( kroozr ) |
2253 | 2284 | ROM_REGION( 0x10000, "maincpu", 0 ) |
2254 | 2285 | ROM_LOAD( "kozmkcpu.2d", 0x0000, 0x2000, CRC(61e02045) SHA1(42ba00f28466870407be96e864fadba5d6908648) ) |
r241393 | r241394 | |
2903 | 2934 | GAME( 1982, tron2, tron, mcr_90010, tron, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (6/25)", GAME_SUPPORTS_SAVE ) |
2904 | 2935 | GAME( 1982, tron3, tron, mcr_90010, tron3, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (6/17)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
2905 | 2936 | GAME( 1982, tron4, tron, mcr_90010, tron3, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (6/15)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
| 2937 | GAME( 1982, tronger, tron, mcr_90010, tron3, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (Germany)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) |
2906 | 2938 | GAME( 1982, domino, 0, mcr_90010, domino, mcr_state, mcr_90010, ROT0, "Bally Midway", "Domino Man", GAME_SUPPORTS_SAVE ) |
2907 | 2939 | GAME( 1982, wacko, 0, mcr_90010, wacko, mcr_state, wacko, ROT0, "Bally Midway", "Wacko", GAME_SUPPORTS_SAVE ) |
2908 | 2940 | GAME( 1984, twotigerc,twotiger, mcr_90010, twotigrc, mcr_state, mcr_90010, ROT0, "Bally Midway", "Two Tigers (Tron conversion)", GAME_SUPPORTS_SAVE ) |
trunk/src/mame/drivers/naomi.c
r241393 | r241394 | |
438 | 438 | Sticker EPROM MASKROMs 25LC040 A54SX32 |
439 | 439 | Game on cart IC11# # of SOP44 IC13S# IC1# Notes |
440 | 440 | ---------------------------------------------------------------------------------------------------------------------------- |
441 | | Club Kart Prize 840-0129C ? 16 (64Mb) present 317-0368-COM no sticker on ic11 |
| 441 | Club Kart Prize 840-0129C 24082A 16 (64Mb) present 317-0368-COM |
442 | 442 | Club Kart Prize Ver. B 840-0137C 24149 16 (64Mb) present 317-0368-COM |
443 | 443 | Giant Gram 2000 840-0039C 23377 20 (64Mb) present 317-0296-COM |
444 | 444 | Kick '4' Cash 840-0140C 24212 16 (64Mb) present 317-0397-COM |
r241393 | r241394 | |
2852 | 2852 | ROM_SYSTEM_BIOS( 0, "bios0", "HOTD2 (Export)" ) \ |
2853 | 2853 | ROM_LOAD16_WORD_SWAP_BIOS( 0, "epr-21331.ic27", 0x000000, 0x200000, CRC(065f8500) SHA1(49a3881e8d76f952ef5e887200d77b4a415d47fe) ) \ |
2854 | 2854 | ROM_SYSTEM_BIOS( 1, "bios1", "HOTD2 (USA)" ) \ |
2855 | | ROM_LOAD16_WORD_SWAP_BIOS( 1, "epr-21330.ic27", 0x000000, 0x200000, CRC(9e3bfa1b) SHA1(b539d38c767b0551b8e7956c1ff795de8bbe2fbc) ) |
| 2855 | ROM_LOAD16_WORD_SWAP_BIOS( 1, "epr-21330.ic27", 0x000000, 0x200000, CRC(9e3bfa1b) SHA1(b539d38c767b0551b8e7956c1ff795de8bbe2fbc) ) \ |
| 2856 | ROM_SYSTEM_BIOS( 2, "bios2", "HOTD2 (Proto)" ) \ |
| 2857 | ROM_LOAD16_WORD_SWAP_BIOS( 2, "hotd2biosproto.ic27", 0x000000, 0x200000, CRC(ea74e967) SHA1(e4d037480eb6555d335a8ab9cd6c56122335586d) ) |
2856 | 2858 | |
2857 | 2859 | #define F355_BIOS \ |
2858 | 2860 | ROM_REGION( 0x200000, "maincpu", 0) \ |
r241393 | r241394 | |
7937 | 7939 | NAOMI_DEFAULT_EEPROM |
7938 | 7940 | |
7939 | 7941 | ROM_REGION( 0x9000000, "rom_board", ROMREGION_ERASEFF) |
7940 | | ROM_LOAD( "epr-24065.ic11", 0x000000, 0x400000, CRC(7c331cb8) SHA1(f7e1cffbad576482a91bc1dc9129c689f0bebb25) ) |
| 7942 | ROM_LOAD( "epr-24082a.ic11", 0x000000, 0x400000, CRC(7c331cb8) SHA1(f7e1cffbad576482a91bc1dc9129c689f0bebb25) ) |
7941 | 7943 | ROM_LOAD32_WORD( "opr-24066.17s", 0x1000000, 0x800000, CRC(b22cfa7b) SHA1(e0f795dc9d3a2dd1869f85f3eedd0f8d703a1be8) ) |
7942 | 7944 | ROM_LOAD32_WORD( "opr-24067.18", 0x1000002, 0x800000, CRC(0d2d1290) SHA1(a26fa82fc87d6ed60095b2e778b649fcbb8bb1ee) ) |
7943 | 7945 | ROM_LOAD32_WORD( "opr-24068.19s", 0x2000000, 0x800000, CRC(d320009b) SHA1(76677eacd18770d091fc19e31be3d84410ed3256) ) |
trunk/src/mame/drivers/rainbow.c
r241393 | r241394 | |
842 | 842 | ROM_REGION( 0x200, "pals", 0 ) |
843 | 843 | ROM_LOAD( "jumping-pal16r6.bin", 0x000, 0x104, CRC(12e9a7b8) SHA1(a0ce8b6083c9adfcb4bdbca87f63a01f292525f3) ) |
844 | 844 | ROM_LOAD( "jumping-pal20l8.bin", 0x000, 0x144, CRC(76944f81) SHA1(ab78e4e157ffdc13aea5dc360268b2640e60d19c) ) |
| 845 | ROM_LOAD( "pal16l8a.ic51.bin", 0x000, 0x104, CRC(c1e6cb8f) SHA1(9908e62bb9b806047b7a344bb62334bd696b9fc8) ) // z80 address decoder? |
845 | 846 | ROM_END |
846 | 847 | |
847 | 848 | ROM_START( jumpinga ) |
r241393 | r241394 | |
873 | 874 | |
874 | 875 | ROM_REGION( 0xa0000, "gfx2", ROMREGION_INVERT ) |
875 | 876 | ROM_LOAD( "jb2_ic62", 0x00000, 0x10000, CRC(8548db6c) SHA1(675cd301259d5ed16098a38ac58b27b5ccd91264) ) /* sprites */ |
876 | | ROM_LOAD( "jb2_ic61", 0x10000, 0x10000, CRC(37c5923b) SHA1(c83ef45564c56ef62d7019aecbd79dccc671deee) ) |
| 877 | ROM_LOAD( "20.bin", 0x10000, 0x10000, CRC(89b3d8ee) SHA1(8491de6e8292e58b9a8696be15827bcb1ea42845) ) // dumped multiple times, always the same |
877 | 878 | ROM_LOAD( "jb2_ic60", 0x20000, 0x08000, CRC(662a2f1e) SHA1(1c5e8b1f0623e64faf9cd60f9653fc5957191a9b) ) |
878 | 879 | ROM_LOAD( "jb2_ic78", 0x28000, 0x10000, CRC(925865e1) SHA1(457de50bc03e8b949ac7d46ae4188201e87574a8) ) |
879 | 880 | ROM_LOAD( "jb2_ic77", 0x38000, 0x10000, CRC(b09695d1) SHA1(e6d315f9befb7b47f42668d573a1102e52d78aea) ) |
r241393 | r241394 | |
888 | 889 | ROM_REGION( 0x200, "pals", 0 ) |
889 | 890 | ROM_LOAD( "jumping-pal16r6.bin", 0x000, 0x104, CRC(12e9a7b8) SHA1(a0ce8b6083c9adfcb4bdbca87f63a01f292525f3) ) |
890 | 891 | ROM_LOAD( "jumping-pal20l8.bin", 0x000, 0x144, CRC(76944f81) SHA1(ab78e4e157ffdc13aea5dc360268b2640e60d19c) ) |
| 892 | ROM_LOAD( "pal16l8a.ic51.bin", 0x000, 0x104, CRC(c1e6cb8f) SHA1(9908e62bb9b806047b7a344bb62334bd696b9fc8) ) // z80 address decoder? |
891 | 893 | ROM_END |
892 | 894 | |
893 | 895 | |
trunk/src/mame/drivers/suna8.c
r241393 | r241394 | |
86 | 86 | |
87 | 87 | UINT8 *suna8_state::brickzn_decrypt() |
88 | 88 | { |
89 | | address_space &space = m_maincpu->space(AS_PROGRAM); |
90 | 89 | UINT8 *RAM = memregion("maincpu")->base(); |
91 | 90 | size_t size = memregion("maincpu")->bytes(); |
92 | 91 | UINT8 *decrypt = auto_alloc_array(machine(), UINT8, size); |
93 | 92 | int i; |
94 | 93 | |
95 | | space.set_decrypted_region(0x0000, 0x7fff, decrypt); |
96 | | |
97 | 94 | /* Opcodes and data */ |
98 | 95 | for (i = 0; i < 0x50000; i++) |
99 | 96 | { |
r241393 | r241394 | |
133 | 130 | |
134 | 131 | DRIVER_INIT_MEMBER(suna8_state,brickzn) |
135 | 132 | { |
136 | | UINT8 *RAM = memregion("maincpu")->base(); |
137 | | UINT8 *decrypt = brickzn_decrypt(); |
138 | | int i; |
| 133 | m_decrypt = brickzn_decrypt(); |
139 | 134 | |
140 | | // Opcodes decrypted as data (to do: activated at run-time) |
141 | | for (i = 0; i < 0x8000; i++) |
142 | | { |
143 | | if ( ((i >= 0x072b) && (i <= 0x076f)) || |
144 | | ((i >= 0x45c5) && (i <= 0x45e4)) || |
145 | | ((i >= 0x7393) && (i <= 0x73ba)) || |
146 | | ((i >= 0x7a79) && (i <= 0x7aa9)) ) |
147 | | { |
148 | | decrypt[i] = RAM[i]; |
149 | | } |
150 | | } |
151 | | |
152 | 135 | // !!!!!! PATCHES !!!!!! |
153 | 136 | |
154 | 137 | // To do: ROM banking should be disabled here |
155 | | decrypt[0x11bb] = 0x00; // LD ($C040),A -> NOP |
156 | | decrypt[0x11bc] = 0x00; // LD ($C040),A -> NOP |
157 | | decrypt[0x11bd] = 0x00; // LD ($C040),A -> NOP |
| 138 | m_decrypt[0x11bb] = 0x00; // LD ($C040),A -> NOP |
| 139 | m_decrypt[0x11bc] = 0x00; // LD ($C040),A -> NOP |
| 140 | m_decrypt[0x11bd] = 0x00; // LD ($C040),A -> NOP |
158 | 141 | |
159 | | decrypt[0x3349] = 0xc9; // RET Z -> RET (to avoid: jp $C800) |
| 142 | m_decrypt[0x3349] = 0xc9; // RET Z -> RET (to avoid: jp $C800) |
160 | 143 | |
161 | 144 | // NMI enable / source?? |
162 | | decrypt[0x1431] = 0xc9; // HALT -> RET |
163 | | decrypt[0x24b5] = 0x00; // HALT -> NOP |
164 | | decrypt[0x2593] = 0x00; // HALT -> NOP |
| 145 | m_decrypt[0x1431] = 0xc9; // HALT -> RET |
| 146 | m_decrypt[0x24b5] = 0x00; // HALT -> NOP |
| 147 | m_decrypt[0x2593] = 0x00; // HALT -> NOP |
165 | 148 | |
| 149 | // Non-banked opcodes |
| 150 | address_space &space = m_maincpu->space(AS_PROGRAM); |
| 151 | space.set_decrypted_region(0x0000, 0x7fff, m_decrypt); |
| 152 | |
166 | 153 | // Data banks: 00-0f normal data decryption, 10-1f alternate data decryption: |
167 | 154 | membank("bank1")->configure_entries(0, 16*2, memregion("maincpu")->base() + 0x10000, 0x4000); |
168 | 155 | // Opcode banks: 00-1f normal opcode decryption: |
169 | | membank("bank1")->configure_decrypted_entries(0, 16, decrypt + 0x10000, 0x4000); |
170 | | membank("bank1")->configure_decrypted_entries(16, 16, decrypt + 0x10000, 0x4000); |
| 156 | membank("bank1")->configure_decrypted_entries(0, 16, m_decrypt + 0x10000, 0x4000); |
| 157 | membank("bank1")->configure_decrypted_entries(16, 16, m_decrypt + 0x10000, 0x4000); |
171 | 158 | } |
172 | 159 | |
173 | 160 | DRIVER_INIT_MEMBER(suna8_state,brickznv4) |
174 | 161 | { |
175 | | UINT8 *RAM = memregion("maincpu")->base(); |
176 | | UINT8 *decrypt = brickzn_decrypt(); |
177 | | int i; |
178 | | |
179 | | // Opcodes decrypted as data (to do: activated at run-time) |
180 | | for (i = 0; i < 0x8000; i++) |
181 | | { |
182 | | if ( ((i >= 0x072b) && (i <= 0x076f)) || |
183 | | ((i >= 0x4541) && (i <= 0x4560)) || |
184 | | ((i >= 0x72f3) && (i <= 0x7322)) || |
185 | | ((i >= 0x79d9) && (i <= 0x7a09)) ) |
186 | | { |
187 | | decrypt[i] = RAM[i]; |
188 | | } |
189 | | } |
190 | | |
| 162 | m_decrypt = brickzn_decrypt(); |
191 | 163 | // !!!!!! PATCHES !!!!!! |
192 | 164 | |
193 | 165 | // To do: ROM banking should be disabled here |
194 | | decrypt[0x1190] = 0x00; // LD ($C040),A -> NOP |
195 | | decrypt[0x1191] = 0x00; // LD ($C040),A -> NOP |
196 | | decrypt[0x1192] = 0x00; // LD ($C040),A -> NOP |
| 166 | m_decrypt[0x1190] = 0x00; // LD ($C040),A -> NOP |
| 167 | m_decrypt[0x1191] = 0x00; // LD ($C040),A -> NOP |
| 168 | m_decrypt[0x1192] = 0x00; // LD ($C040),A -> NOP |
197 | 169 | |
198 | | decrypt[0x3337] = 0xc9; // RET Z -> RET (to avoid: jp $C800) |
| 170 | m_decrypt[0x3337] = 0xc9; // RET Z -> RET (to avoid: jp $C800) |
199 | 171 | |
200 | 172 | // NMI enable / source?? |
201 | | decrypt[0x1406] = 0xc9; // HALT -> RET |
202 | | decrypt[0x2487] = 0x00; // HALT -> NOP |
203 | | decrypt[0x256c] = 0x00; // HALT -> NOP |
| 173 | m_decrypt[0x1406] = 0xc9; // HALT -> RET |
| 174 | m_decrypt[0x2487] = 0x00; // HALT -> NOP |
| 175 | m_decrypt[0x256c] = 0x00; // HALT -> NOP |
204 | 176 | |
| 177 | // Non-banked opcodes |
| 178 | address_space &space = m_maincpu->space(AS_PROGRAM); |
| 179 | space.set_decrypted_region(0x0000, 0x7fff, m_decrypt); |
| 180 | |
205 | 181 | // Data banks: 00-0f normal data decryption, 10-1f alternate data decryption: |
206 | 182 | membank("bank1")->configure_entries(0, 16*2, memregion("maincpu")->base() + 0x10000, 0x4000); |
207 | 183 | // Opcode banks: 00-1f normal opcode decryption: |
208 | | membank("bank1")->configure_decrypted_entries(0, 16, decrypt + 0x10000, 0x4000); |
209 | | membank("bank1")->configure_decrypted_entries(16, 16, decrypt + 0x10000, 0x4000); |
| 184 | membank("bank1")->configure_decrypted_entries(0, 16, m_decrypt + 0x10000, 0x4000); |
| 185 | membank("bank1")->configure_decrypted_entries(16, 16, m_decrypt + 0x10000, 0x4000); |
210 | 186 | } |
211 | 187 | |
212 | 188 | |
r241393 | r241394 | |
700 | 676 | */ |
701 | 677 | WRITE8_MEMBER(suna8_state::brickzn_multi_w) |
702 | 678 | { |
703 | | if ((m_protection_val & 0xfc) == 0x88 || (m_protection_val & 0xfc) == 0x8c) |
| 679 | int protselect = m_protection_val & 0xfc; |
| 680 | |
| 681 | if ((protselect == 0x88) || (protselect == 0x8c)) |
704 | 682 | { |
705 | 683 | m_palettebank = data & 0x01; |
706 | 684 | |
r241393 | r241394 | |
713 | 691 | |
714 | 692 | logerror("CPU #0 - PC %04X: soundlatch = %02X\n",space.device().safe_pc(),data); |
715 | 693 | } |
716 | | else if ((m_protection_val & 0xfc) == 0x04) |
| 694 | else if (protselect == 0x04) |
717 | 695 | { |
718 | 696 | set_led_status(machine(), 0, data & 0x01); |
719 | 697 | set_led_status(machine(), 1, data & 0x02); |
r241393 | r241394 | |
722 | 700 | logerror("CPU #0 - PC %04X: leds = %02X\n",space.device().safe_pc(),data); |
723 | 701 | if (data & ~0x07) logerror("CPU #0 - PC %04X: unknown leds bits: %02X\n",space.device().safe_pc(),data); |
724 | 702 | } |
725 | | else if ((m_protection_val & 0xfc) == 0x9c) |
| 703 | else if (protselect == 0x80) |
726 | 704 | { |
727 | | // controls opcode decryption |
728 | | // see code at 71b, 45b7, 7380, 7a6b |
729 | | |
730 | | // To be done: run-time opcode decryption change. Done in driver_init for now. |
731 | | |
732 | | logerror("CPU #0 - PC %04X: op-decrypt = %02X\n",space.device().safe_pc(),data); |
733 | | } |
734 | | else if ((m_protection_val & 0xfc) == 0x80) |
735 | | { |
736 | 705 | // disables rom banking? |
737 | 706 | // see code at 11b1: |
738 | 707 | |
r241393 | r241394 | |
742 | 711 | { |
743 | 712 | logerror("CPU #0 - PC %04X: ignore = %02X\n",space.device().safe_pc(),data); |
744 | 713 | } |
| 714 | |
| 715 | if ((m_protection_val & 0x1f) == 0x1c) |
| 716 | { |
| 717 | // controls opcode decryption |
| 718 | // see code at 71b, 45b7, 7380, 7a6b |
| 719 | //printf("CPU #0 - PC %04X: alt op-decrypt tog = %02X\n",space.device().safe_pc(),data); |
| 720 | m_prot_opcode_toggle ^= 1; |
| 721 | |
| 722 | if (m_prot_opcode_toggle == 0) |
| 723 | { |
| 724 | address_space &space = m_maincpu->space(AS_PROGRAM); |
| 725 | space.set_decrypted_region(0x0000, 0x7fff, m_decrypt); |
| 726 | } |
| 727 | else |
| 728 | { |
| 729 | address_space &space = m_maincpu->space(AS_PROGRAM); |
| 730 | space.set_decrypted_region(0x0000, 0x7fff, memregion("maincpu")->base()); |
| 731 | } |
| 732 | |
| 733 | |
| 734 | } |
| 735 | |
745 | 736 | } |
746 | 737 | |
747 | 738 | /* |
trunk/src/mame/drivers/tmnt.c
r241393 | r241394 | |
2894 | 2894 | ROM_LOAD( "963a25.d5", 0x00000, 0x80000, CRC(fca078c7) SHA1(3e1124d72c9db4cb11d8de6c44b7aeca967f44e1) ) |
2895 | 2895 | ROM_END |
2896 | 2896 | |
| 2897 | |
| 2898 | ROM_START( tmhtb ) // the code is closest to tmntua near the start, and the data is closest to all the UK sets, especially tmhta, so I'm guessing it's a UK revision of the tmntua codebase |
| 2899 | ROM_REGION( 0x60000, "maincpu", 0 ) /* 2*128k and 2*64k for 68000 code */ |
| 2900 | ROM_LOAD16_BYTE( "unk3.i17", 0x00000, 0x20000, CRC(537eb047) SHA1(97e6dbc486c7d057355db7fcbdc0a2c2cad2c653) ) |
| 2901 | ROM_LOAD16_BYTE( "unk4.k17", 0x00001, 0x20000, CRC(5afae564) SHA1(8d5fbf9530ad8d095c12b7e0f8c499c1436c4d47) ) |
| 2902 | ROM_LOAD16_BYTE( "unk2.j15", 0x40000, 0x10000, CRC(ee34de05) SHA1(507d7fb178dbbe87dd373a81ad3f350ee2f7d923)) |
| 2903 | ROM_LOAD16_BYTE( "unk1.k15", 0x40001, 0x10000, NO_DUMP ) |
| 2904 | |
| 2905 | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 2906 | ROM_LOAD( "963e20.g13", 0x00000, 0x08000, CRC(1692a6d6) SHA1(68c3419012b2863e91a7d7e479fce5ceabb10b88) ) |
| 2907 | |
| 2908 | ROM_REGION( 0x100000, "k052109", 0 ) /* tiles */ |
| 2909 | ROM_LOAD32_WORD( "963a28.h27", 0x000000, 0x80000, CRC(db4769a8) SHA1(810811914f9c1fbf2320d5a9030cbf124f6d78cf) ) |
| 2910 | ROM_LOAD32_WORD( "963a29.k27", 0x000002, 0x80000, CRC(8069cd2e) SHA1(54095d3546119ccd1e8814d692aceb1327c9369f) ) |
| 2911 | |
| 2912 | ROM_REGION( 0x200000, "k051960", 0 ) /* sprites */ |
| 2913 | ROM_LOAD32_WORD( "963a17.h4", 0x000000, 0x80000, CRC(b5239a44) SHA1(84e94807e7c51aa652b4e4b827b36be59a53d0d6) ) |
| 2914 | ROM_LOAD32_WORD( "963a15.k4", 0x000002, 0x80000, CRC(1f324eed) SHA1(971a675578518fffa341a943d0cc4fdea005fde0) ) |
| 2915 | ROM_LOAD32_WORD( "963a18.h6", 0x100000, 0x80000, CRC(dd51adef) SHA1(5010c0911b0b9e4f23a785e8a751a0bde5be5be0) ) |
| 2916 | ROM_LOAD32_WORD( "963a16.k6", 0x100002, 0x80000, CRC(d4bd9984) SHA1(d780ae7f72e16767c3a492544f02f0f1a332ab22) ) |
| 2917 | |
| 2918 | ROM_REGION( 0x0200, "proms", 0 ) |
| 2919 | ROM_LOAD( "963a30.g7", 0x0000, 0x0100, CRC(abd82680) SHA1(945a71e6ec65202f13209b45d45b616372d6c0f5) ) /* sprite address decoder */ |
| 2920 | ROM_LOAD( "963a31.g19", 0x0100, 0x0100, CRC(f8004a1c) SHA1(ed6694b8eebfe0238b50ebd05007d519f6e57b1b) ) /* priority encoder (not used) */ |
| 2921 | |
| 2922 | ROM_REGION( 0x20000, "k007232", 0 ) /* 128k for the samples */ |
| 2923 | ROM_LOAD( "963a26.c13", 0x00000, 0x20000, CRC(e2ac3063) SHA1(5bb294c46fb5eaba9935a18c0aa5d3931168f474) ) /* samples for 007232 */ |
| 2924 | |
| 2925 | ROM_REGION( 0x20000, "upd", 0 ) /* 128k for the samples */ |
| 2926 | ROM_LOAD( "963a27.d18", 0x00000, 0x20000, CRC(2dfd674b) SHA1(bbec5896c70056964fbc972a84bd5b0dfc6af257) ) /* samples for UPD7759C */ |
| 2927 | |
| 2928 | ROM_REGION( 0x80000, "title", 0 ) /* 512k for the title music sample */ |
| 2929 | ROM_LOAD( "963a25.d5", 0x00000, 0x80000, CRC(fca078c7) SHA1(3e1124d72c9db4cb11d8de6c44b7aeca967f44e1) ) |
| 2930 | ROM_END |
| 2931 | |
| 2932 | |
2897 | 2933 | ROM_START( tmntj ) |
2898 | 2934 | ROM_REGION( 0x60000, "maincpu", 0 ) /* 2*128k and 2*64k for 68000 code */ |
2899 | 2935 | ROM_LOAD16_BYTE( "963_223.j17", 0x00000, 0x20000, CRC(0d34a5ff) SHA1(a387f3e7c727dc66ebb0e1f40e4ab8dc83f647e5) ) |
r241393 | r241394 | |
4066 | 4102 | GAME( 1989, tmntua, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Ninja Turtles (US 4 Players, set 2)", GAME_SUPPORTS_SAVE ) |
4067 | 4103 | GAME( 1989, tmht, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 4 Players, set 1)", GAME_SUPPORTS_SAVE ) |
4068 | 4104 | GAME( 1989, tmhta, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 4 Players, set 2)", GAME_SUPPORTS_SAVE ) |
| 4105 | GAME( 1989, tmhtb, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK?, unknown revision)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) // incomplete dump |
4069 | 4106 | GAME( 1990, tmntj, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Ninja Turtles (Japan 4 Players)", GAME_SUPPORTS_SAVE ) |
4070 | 4107 | GAME( 1989, tmht2p, tmnt, tmnt, tmnt2p, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 2 Players, set 1)", GAME_SUPPORTS_SAVE ) |
4071 | 4108 | GAME( 1989, tmht2pa, tmnt, tmnt, tmnt2p, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 2 Players, set 2)", GAME_SUPPORTS_SAVE ) |
trunk/src/mess/drivers/apple2.c
r241393 | r241394 | |
1790 | 1790 | COMP( 1985, apple2c0, apple2c, 0, apple2c_iwm, apple2e, driver_device, 0, "Apple Computer", "Apple //c (UniDisk 3.5)", GAME_SUPPORTS_SAVE ) |
1791 | 1791 | COMP( 1986, apple2c3, apple2c, 0, apple2c_iwm, apple2e, driver_device, 0, "Apple Computer", "Apple //c (Original Memory Expansion)", GAME_SUPPORTS_SAVE ) |
1792 | 1792 | COMP( 1986, apple2c4, apple2c, 0, apple2c_iwm, apple2e, driver_device, 0, "Apple Computer", "Apple //c (rev 4)", GAME_SUPPORTS_SAVE ) |
1793 | | COMP( 1988, apple2cp, apple2c, 0, apple2cp, apple2e, driver_device, 0, "Apple Computer", "Apple //c Plus", GAME_SUPPORTS_SAVE ) |
| 1793 | COMP( 1988, apple2cp, apple2c, 0, apple2cp, apple2e, driver_device, 0, "Apple Computer", "Apple //c Plus", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) |
1794 | 1794 | COMP( 1984, ivelultr, apple2, 0, apple2p, apple2p, driver_device, 0, "Ivasim", "Ivel Ultra", GAME_SUPPORTS_SAVE ) |
1795 | 1795 | COMP( 1983, agat7, apple2, 0, apple2p, apple2p, driver_device, 0, "Agat", "Agat-7", GAME_NOT_WORKING) // disk controller ROM JSRs to $FCA8 which is a delay on apple II, illegal instruction crash here :( |
1796 | 1796 | COMP( 1984, agat9, apple2, 0, apple2p, apple2p, driver_device, 0, "Agat", "Agat-9", GAME_NOT_WORKING) |