mirror of
https://github.com/holub/mame
synced 2025-04-22 16:31:49 +03:00
Merge branch 'master' of https://github.com/mamedev/mame
This commit is contained in:
commit
abd3f590e4
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -1,4 +1,5 @@
|
||||
* text=auto !eol
|
||||
*.jed binary
|
||||
*.png -text svneol=unset#image/png
|
||||
*.txt svneol=native#text/plain
|
||||
*.xml svneol=native#text/xml
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,6 +9,7 @@
|
||||
/cfg
|
||||
/depend_*.mak
|
||||
/diff
|
||||
/ini
|
||||
/nvram
|
||||
/obj
|
||||
/snap
|
||||
|
@ -17338,18 +17338,18 @@ but dumps still have to be confirmed.
|
||||
|
||||
<software name="madden98">
|
||||
<description>Madden NFL 98 (USA)</description>
|
||||
<year>1997</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
<part name="cart" interface="megadriv_cart">
|
||||
<feature name="slot" value="rom_sram"/>
|
||||
<dataarea name="rom" width="16" endianness="big" size="2097152">
|
||||
<rom name="madden nfl 98 (usa).bin" size="2097152" crc="e051ea62" sha1="761e0903798a8d0ad9e7ab72e6d2762fc9d366d2" offset="0x000000"/>
|
||||
</dataarea>
|
||||
<dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<year>1997</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
<part name="cart" interface="megadriv_cart">
|
||||
<feature name="slot" value="rom_sram"/>
|
||||
<dataarea name="rom" width="16" endianness="big" size="2097152">
|
||||
<rom name="madden nfl 98 (usa).bin" size="2097152" crc="e051ea62" sha1="761e0903798a8d0ad9e7ab72e6d2762fc9d366d2" offset="0x000000"/>
|
||||
</dataarea>
|
||||
<dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="madoumon">
|
||||
<description>Madou Monogatari I (Jpn)</description>
|
||||
<year>1996</year>
|
||||
@ -19663,18 +19663,18 @@ Notice that these are not working on real hardware due to bugged code with VDP i
|
||||
|
||||
<software name="nhl98">
|
||||
<description>NHL 98 (USA)</description>
|
||||
<year>1997</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
<part name="cart" interface="megadriv_cart">
|
||||
<feature name="slot" value="rom_sram"/>
|
||||
<dataarea name="rom" width="16" endianness="big" size="2097152">
|
||||
<rom name="nhl 98 (usa).bin" size="2097152" crc="7b64cd98" sha1="6771e9b660bde010cf28656cafb70f69249a3591" offset="0x000000"/>
|
||||
</dataarea>
|
||||
<dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<year>1997</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
<part name="cart" interface="megadriv_cart">
|
||||
<feature name="slot" value="rom_sram"/>
|
||||
<dataarea name="rom" width="16" endianness="big" size="2097152">
|
||||
<rom name="nhl 98 (usa).bin" size="2097152" crc="7b64cd98" sha1="6771e9b660bde010cf28656cafb70f69249a3591" offset="0x000000"/>
|
||||
</dataarea>
|
||||
<dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="nhlasp03" cloneof="nhlas">
|
||||
<description>NHL All-Star Hockey '95 (Prototype, 19941201-B)</description>
|
||||
<year>1994</year>
|
||||
@ -30698,18 +30698,18 @@ Notice that these are not working on real hardware due to bugged code with VDP i
|
||||
|
||||
<software name="nhlpa2k3" cloneof="nhl98">
|
||||
<description>NHLPA 2003 (Rus)</description>
|
||||
<year>199?</year>
|
||||
<publisher><unknown></publisher>
|
||||
<part name="cart" interface="megadriv_cart">
|
||||
<feature name="slot" value="rom_sram"/>
|
||||
<dataarea name="rom" width="16" endianness="big" size="2097152">
|
||||
<rom name="nhlpa 2003 (unl).bin" size="2097152" crc="4591571b" sha1="4e6dd50d0f671b89c4ce3f7d1a63ecb68208dc8e" offset="0x000000"/>
|
||||
</dataarea>
|
||||
<dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<year>199?</year>
|
||||
<publisher><unknown></publisher>
|
||||
<part name="cart" interface="megadriv_cart">
|
||||
<feature name="slot" value="rom_sram"/>
|
||||
<dataarea name="rom" width="16" endianness="big" size="2097152">
|
||||
<rom name="nhlpa 2003 (unl).bin" size="2097152" crc="4591571b" sha1="4e6dd50d0f671b89c4ce3f7d1a63ecb68208dc8e" offset="0x000000"/>
|
||||
</dataarea>
|
||||
<dataarea name="sram" size="65536"> <!-- Size to be confirmed. It does not work without SRAM. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="pcarib" cloneof="unchartd">
|
||||
<description>Pirates of the Caribbean (Rus)</description>
|
||||
<year>199?</year>
|
||||
|
@ -1,6 +1,8 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#ifdef __GNUC__
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <fcntl.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
@ -23,7 +25,7 @@ const device_type COCO_DWSOCK = &device_creator<beckerport_device>;
|
||||
INPUT_PORTS_START( coco_drivewire )
|
||||
PORT_START(DRIVEWIRE_PORT_TAG)
|
||||
PORT_CONFNAME( 0xffff, 65504, "Drivewire Server TCP Port")
|
||||
PORT_CHANGED_MEMBER(DEVICE_SELF, beckerport_device, beckerport_device::drivewire_port_changed, NULL )
|
||||
PORT_CHANGED_MEMBER(DEVICE_SELF, beckerport_device, drivewire_port_changed, NULL )
|
||||
PORT_CONFSETTING( 65500, "65500" )
|
||||
PORT_CONFSETTING( 65501, "65501" )
|
||||
PORT_CONFSETTING( 65502, "65502" )
|
||||
|
@ -151,7 +151,7 @@ UINT8 intv_ecs_device::intv_control_r(int hand)
|
||||
}
|
||||
break;
|
||||
|
||||
case 1: /* disc == _fake_ analog */
|
||||
case 4: /* disc == _fake_ analog */
|
||||
|
||||
x = m_discx[hand]->read();
|
||||
y = m_discy[hand]->read();
|
||||
|
@ -175,6 +175,6 @@ private:
|
||||
};
|
||||
|
||||
#define MCFG_DIABLO_DRIVES_ADD() \
|
||||
MCFG_DEVICE_ADD(DIABLO_HD_0, DIABLO_HD, ATTOSECONDS_TO_HZ(attotime::from_nsec(300).as_double())) \
|
||||
MCFG_DEVICE_ADD(DIABLO_HD_1, DIABLO_HD, ATTOSECONDS_TO_HZ(attotime::from_nsec(300).as_double()))
|
||||
MCFG_DEVICE_ADD(DIABLO_HD_0, DIABLO_HD, 3333333) \
|
||||
MCFG_DEVICE_ADD(DIABLO_HD_1, DIABLO_HD, 3333333)
|
||||
#endif // !defined(_DIABLO_HD_DEVICE_)
|
||||
|
@ -431,17 +431,21 @@ static const ay8910_device::mosfet_param ay8910_mosfet_param =
|
||||
|
||||
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)
|
||||
{
|
||||
int j, j1, j2, j3, e, indx;
|
||||
double rt, rw, n;
|
||||
double min = 10.0, max = 0.0;
|
||||
|
||||
dynamic_array<double> temp(8*32*32*32);
|
||||
|
||||
for (e=0; e < 8; e++)
|
||||
for (j1=0; j1 < 32; j1++)
|
||||
for (j2=0; j2 < 32; j2++)
|
||||
for (j3=0; j3 < 32; j3++)
|
||||
for (int e=0; e < 8; e++)
|
||||
{
|
||||
const ay8910_device::ay_ym_param *par_ch1 = (e & 0x01) ? par_env : par;
|
||||
const ay8910_device::ay_ym_param *par_ch2 = (e & 0x02) ? par_env : par;
|
||||
const ay8910_device::ay_ym_param *par_ch3 = (e & 0x04) ? par_env : par;
|
||||
|
||||
for (int j1=0; j1 < par_ch1->res_count; j1++)
|
||||
for (int j2=0; j2 < par_ch2->res_count; j2++)
|
||||
for (int j3=0; j3 < par_ch3->res_count; j3++)
|
||||
{
|
||||
double n;
|
||||
if (zero_is_off)
|
||||
{
|
||||
n = (j1 != 0 || (e & 0x01)) ? 1 : 0;
|
||||
@ -451,32 +455,33 @@ INLINE void build_3D_table(double rl, const ay8910_device::ay_ym_param *par, con
|
||||
else
|
||||
n = 3.0;
|
||||
|
||||
rt = n / par->r_up + 3.0 / par->r_down + 1.0 / rl;
|
||||
rw = n / par->r_up;
|
||||
double rt = n / par->r_up + 3.0 / par->r_down + 1.0 / rl;
|
||||
double rw = n / par->r_up;
|
||||
|
||||
rw += 1.0 / ( (e & 0x01) ? par_env->res[j1] : par->res[j1]);
|
||||
rt += 1.0 / ( (e & 0x01) ? par_env->res[j1] : par->res[j1]);
|
||||
rw += 1.0 / ( (e & 0x02) ? par_env->res[j2] : par->res[j2]);
|
||||
rt += 1.0 / ( (e & 0x02) ? par_env->res[j2] : par->res[j2]);
|
||||
rw += 1.0 / ( (e & 0x04) ? par_env->res[j3] : par->res[j3]);
|
||||
rt += 1.0 / ( (e & 0x04) ? par_env->res[j3] : par->res[j3]);
|
||||
rw += 1.0 / par_ch1->res[j1];
|
||||
rt += 1.0 / par_ch1->res[j1];
|
||||
rw += 1.0 / par_ch2->res[j2];
|
||||
rt += 1.0 / par_ch2->res[j2];
|
||||
rw += 1.0 / par_ch3->res[j3];
|
||||
rt += 1.0 / par_ch3->res[j3];
|
||||
|
||||
indx = (e << 15) | (j3<<10) | (j2<<5) | j1;
|
||||
int indx = (e << 15) | (j3<<10) | (j2<<5) | j1;
|
||||
temp[indx] = rw / rt;
|
||||
if (temp[indx] < min)
|
||||
min = temp[indx];
|
||||
if (temp[indx] > max)
|
||||
max = temp[indx];
|
||||
}
|
||||
}
|
||||
|
||||
if (normalize)
|
||||
{
|
||||
for (j=0; j < 32*32*32*8; j++)
|
||||
for (int j=0; j < 32*32*32*8; j++)
|
||||
tab[j] = MAX_OUTPUT * (((temp[j] - min)/(max-min))) * factor;
|
||||
}
|
||||
else
|
||||
{
|
||||
for (j=0; j < 32*32*32*8; j++)
|
||||
for (int j=0; j < 32*32*32*8; j++)
|
||||
tab[j] = MAX_OUTPUT * temp[j];
|
||||
}
|
||||
|
||||
|
@ -1587,7 +1587,7 @@ void upd7220_device::update_graphics(bitmap_rgb32 &bitmap, const rectangle &clip
|
||||
addr = ((sad << 1) & 0x3ffff) + (y * m_pitch * 2);
|
||||
|
||||
if (!m_display_cb.isnull())
|
||||
draw_graphics_line(bitmap, addr, y + (bsy >> !im), wd);
|
||||
draw_graphics_line(bitmap, addr, y + (im ? bsy : (bsy >> 1)), wd);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -155,15 +155,23 @@ Notes:
|
||||
#include "sound/x1_010.h"
|
||||
#include "machine/nvram.h"
|
||||
#include "machine/ticket.h"
|
||||
#include "includes/tnzs.h"
|
||||
#include "video/seta001.h"
|
||||
|
||||
class champbwl_state : public tnzs_state
|
||||
class champbwl_state : public driver_device
|
||||
{
|
||||
public:
|
||||
champbwl_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: tnzs_state(mconfig, type, tag),
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_seta001(*this, "spritegen"),
|
||||
m_palette(*this, "palette"),
|
||||
m_x1(*this, "x1snd") { }
|
||||
|
||||
int m_screenflip;
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<seta001_device> m_seta001;
|
||||
required_device<palette_device> m_palette;
|
||||
required_device<x1_010_device> m_x1;
|
||||
UINT8 m_last_trackball_val[2];
|
||||
DECLARE_READ8_MEMBER(trackball_r);
|
||||
@ -172,12 +180,24 @@ public:
|
||||
DECLARE_MACHINE_START(champbwl);
|
||||
DECLARE_MACHINE_RESET(champbwl);
|
||||
DECLARE_MACHINE_START(doraemon);
|
||||
DECLARE_PALETTE_INIT(champbwl);
|
||||
UINT32 screen_update_champbwl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
UINT32 screen_update_doraemon(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
void screen_eof_champbwl(screen_device &screen, bool state);
|
||||
void screen_eof_doraemon(screen_device &screen, bool state);
|
||||
};
|
||||
|
||||
PALETTE_INIT_MEMBER(champbwl_state,champbwl)
|
||||
{
|
||||
const UINT8 *color_prom = memregion("proms")->base();
|
||||
int i, col;
|
||||
|
||||
for (i = 0; i < palette.entries(); i++)
|
||||
{
|
||||
col = (color_prom[i] << 8) + color_prom[i + 512];
|
||||
palette.set_pen_color(i, pal5bit(col >> 10), pal5bit(col >> 5), pal5bit(col >> 0));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(champbwl_state::trackball_r)
|
||||
@ -443,7 +463,6 @@ MACHINE_START_MEMBER(champbwl_state,champbwl)
|
||||
MACHINE_RESET_MEMBER(champbwl_state,champbwl)
|
||||
{
|
||||
m_screenflip = 0;
|
||||
m_mcu_type = -1;
|
||||
m_last_trackball_val[0] = 0;
|
||||
m_last_trackball_val[1] = 0;
|
||||
|
||||
@ -497,7 +516,7 @@ static MACHINE_CONFIG_START( champbwl, champbwl_state )
|
||||
MCFG_GFXDECODE_ADD("gfxdecode", "palette", champbwl)
|
||||
MCFG_PALETTE_ADD("palette", 512)
|
||||
|
||||
MCFG_PALETTE_INIT_OWNER(champbwl_state,arknoid2)
|
||||
MCFG_PALETTE_INIT_OWNER(champbwl_state,champbwl)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||
@ -562,7 +581,7 @@ static MACHINE_CONFIG_START( doraemon, champbwl_state )
|
||||
MCFG_GFXDECODE_ADD("gfxdecode", "palette", champbwl)
|
||||
MCFG_PALETTE_ADD("palette", 512)
|
||||
|
||||
MCFG_PALETTE_INIT_OWNER(champbwl_state,arknoid2)
|
||||
MCFG_PALETTE_INIT_OWNER(champbwl_state,champbwl)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
@ -2248,6 +2248,37 @@ ROM_START( tron4 )
|
||||
ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP)
|
||||
ROM_END
|
||||
|
||||
ROM_START( tronger )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 ) /* ROM's located on the Super CPU Board (90010) */
|
||||
ROM_LOAD( "pro0.d2", 0x0000, 0x2000, CRC(ba14603d) SHA1(1cc30c4ea659926314343f00ccbcfe9021f4de26) )
|
||||
ROM_LOAD( "scpu_pgb.d3", 0x2000, 0x2000, CRC(063a748f) SHA1(aefe647e9b562d6a9da1ec32a9d403fce7e62012) )// sldh
|
||||
ROM_LOAD( "scpu_pgc.d4", 0x4000, 0x2000, CRC(6ca50365) SHA1(76e17284da7c3ddf752d67b5e80d3c145f64068e) )// sldh
|
||||
ROM_LOAD( "scpu_pgd.d5", 0x6000, 0x2000, CRC(b5b241c9) SHA1(4a9bde02387365912b3e9878428c8aa1f87a365a) )// sldh
|
||||
ROM_LOAD( "scpu_pge.d6", 0x8000, 0x2000, CRC(04597abe) SHA1(7a896b9415a2479da8519329568e5fb8a429d03e) )// sldh
|
||||
ROM_LOAD( "scpu_pgf.d7", 0xa000, 0x2000, CRC(3908e404) SHA1(d61b73c87ba4b0ab8751d9c653b663b1342d5d73) )// sldh
|
||||
|
||||
ROM_REGION( 0x10000, "ssio:cpu", 0 ) /* ROM's located on the Super Sound I/O Board (90913) */
|
||||
ROM_LOAD( "ssi_0a.a7", 0x0000, 0x1000, CRC(765e6eba) SHA1(42efeefc8571dfc237c0be3368248f1e56add92e) )
|
||||
ROM_LOAD( "ssi_0b.a8", 0x1000, 0x1000, CRC(1b90ccdd) SHA1(0876e5eeaa63bb8cc97f3634a6ddd8a29a9b012f) )
|
||||
ROM_LOAD( "ssi_0c.a9", 0x2000, 0x1000, CRC(3a4bc629) SHA1(ce8452a99a313ae7429de471bbea39de08c9fd4b) )
|
||||
|
||||
ROM_REGION( 0x04000, "gfx1", 0 ) /* ROM's located on the Super CPU Board (90010) */
|
||||
ROM_LOAD( "scpu_bgg.g3", 0x0000, 0x2000, CRC(1a9ed2f5) SHA1(b0d85b47873ac8ad475da18b9540d37232cb2b7c) )
|
||||
ROM_LOAD( "scpu_bgh.g4", 0x2000, 0x2000, CRC(3220f974) SHA1(a38ea5f1db27f05d9689db838ce7a8de98f34837) )
|
||||
|
||||
ROM_REGION( 0x08000, "gfx2", 0 ) /* ROM's located on the MCR/II Video Gen Board (91399) */
|
||||
ROM_LOAD( "vga.e1", 0x0000, 0x2000, CRC(bc036d1d) SHA1(c5d54d0b80ac768ccf6fdd32cad1ef6359fa324c) )
|
||||
ROM_LOAD( "vgb.dc1", 0x2000, 0x2000, CRC(58ee14d3) SHA1(5fb4268c9c73bdfc3b1e866618979aea3f219bbc) )
|
||||
ROM_LOAD( "vgc.cb1", 0x4000, 0x2000, CRC(3329f9d4) SHA1(11f4d744374e475d2c5b195a9f70888414529dd3) )
|
||||
ROM_LOAD( "vga.a1", 0x6000, 0x2000, CRC(9743f873) SHA1(71ed80ecd8caaf9fce1d7010f95c4678c9bd7102) )
|
||||
|
||||
ROM_REGION( 0x0005, "scpu_pals", 0) /* PAL's located on the Super CPU Board (90010) */
|
||||
ROM_LOAD( "0066-313bx-xxqx.a12.bin", 0x0000, 0x0001, NO_DUMP)
|
||||
ROM_LOAD( "0066-315bx-xxqx.b12.bin", 0x0000, 0x0001, NO_DUMP)
|
||||
ROM_LOAD( "0066-322bx-xx0x.e3.bin", 0x0000, 0x0001, NO_DUMP)
|
||||
ROM_LOAD( "0066-316bx-xxqx.g11.bin", 0x0000, 0x0001, NO_DUMP)
|
||||
ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP)
|
||||
ROM_END
|
||||
|
||||
ROM_START( kroozr )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
@ -2903,6 +2934,7 @@ GAME( 1982, tron, 0, mcr_90010, tron, mcr_state, mcr_90010, R
|
||||
GAME( 1982, tron2, tron, mcr_90010, tron, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (6/25)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1982, tron3, tron, mcr_90010, tron3, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (6/17)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||
GAME( 1982, tron4, tron, mcr_90010, tron3, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (6/15)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||
GAME( 1982, tronger, tron, mcr_90010, tron3, mcr_state, mcr_90010, ROT90, "Bally Midway", "Tron (Germany)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||
GAME( 1982, domino, 0, mcr_90010, domino, mcr_state, mcr_90010, ROT0, "Bally Midway", "Domino Man", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1982, wacko, 0, mcr_90010, wacko, mcr_state, wacko, ROT0, "Bally Midway", "Wacko", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1984, twotigerc,twotiger, mcr_90010, twotigrc, mcr_state, mcr_90010, ROT0, "Bally Midway", "Two Tigers (Tron conversion)", GAME_SUPPORTS_SAVE )
|
||||
|
@ -438,7 +438,7 @@ Games known to use this PCB include....
|
||||
Sticker EPROM MASKROMs 25LC040 A54SX32
|
||||
Game on cart IC11# # of SOP44 IC13S# IC1# Notes
|
||||
----------------------------------------------------------------------------------------------------------------------------
|
||||
Club Kart Prize 840-0129C ? 16 (64Mb) present 317-0368-COM no sticker on ic11
|
||||
Club Kart Prize 840-0129C 24082A 16 (64Mb) present 317-0368-COM
|
||||
Club Kart Prize Ver. B 840-0137C 24149 16 (64Mb) present 317-0368-COM
|
||||
Giant Gram 2000 840-0039C 23377 20 (64Mb) present 317-0296-COM
|
||||
Kick '4' Cash 840-0140C 24212 16 (64Mb) present 317-0397-COM
|
||||
@ -2852,7 +2852,9 @@ Scan ROM for the text string "LOADING TEST MODE NOW" back up four (4) bytes for
|
||||
ROM_SYSTEM_BIOS( 0, "bios0", "HOTD2 (Export)" ) \
|
||||
ROM_LOAD16_WORD_SWAP_BIOS( 0, "epr-21331.ic27", 0x000000, 0x200000, CRC(065f8500) SHA1(49a3881e8d76f952ef5e887200d77b4a415d47fe) ) \
|
||||
ROM_SYSTEM_BIOS( 1, "bios1", "HOTD2 (USA)" ) \
|
||||
ROM_LOAD16_WORD_SWAP_BIOS( 1, "epr-21330.ic27", 0x000000, 0x200000, CRC(9e3bfa1b) SHA1(b539d38c767b0551b8e7956c1ff795de8bbe2fbc) )
|
||||
ROM_LOAD16_WORD_SWAP_BIOS( 1, "epr-21330.ic27", 0x000000, 0x200000, CRC(9e3bfa1b) SHA1(b539d38c767b0551b8e7956c1ff795de8bbe2fbc) ) \
|
||||
ROM_SYSTEM_BIOS( 2, "bios2", "HOTD2 (Proto)" ) \
|
||||
ROM_LOAD16_WORD_SWAP_BIOS( 2, "hotd2biosproto.ic27", 0x000000, 0x200000, CRC(ea74e967) SHA1(e4d037480eb6555d335a8ab9cd6c56122335586d) )
|
||||
|
||||
#define F355_BIOS \
|
||||
ROM_REGION( 0x200000, "maincpu", 0) \
|
||||
@ -7937,7 +7939,7 @@ ROM_START( clubkprz )
|
||||
NAOMI_DEFAULT_EEPROM
|
||||
|
||||
ROM_REGION( 0x9000000, "rom_board", ROMREGION_ERASEFF)
|
||||
ROM_LOAD( "epr-24065.ic11", 0x000000, 0x400000, CRC(7c331cb8) SHA1(f7e1cffbad576482a91bc1dc9129c689f0bebb25) )
|
||||
ROM_LOAD( "epr-24082a.ic11", 0x000000, 0x400000, CRC(7c331cb8) SHA1(f7e1cffbad576482a91bc1dc9129c689f0bebb25) )
|
||||
ROM_LOAD32_WORD( "opr-24066.17s", 0x1000000, 0x800000, CRC(b22cfa7b) SHA1(e0f795dc9d3a2dd1869f85f3eedd0f8d703a1be8) )
|
||||
ROM_LOAD32_WORD( "opr-24067.18", 0x1000002, 0x800000, CRC(0d2d1290) SHA1(a26fa82fc87d6ed60095b2e778b649fcbb8bb1ee) )
|
||||
ROM_LOAD32_WORD( "opr-24068.19s", 0x2000000, 0x800000, CRC(d320009b) SHA1(76677eacd18770d091fc19e31be3d84410ed3256) )
|
||||
|
@ -842,6 +842,7 @@ ROM_START( jumping )
|
||||
ROM_REGION( 0x200, "pals", 0 )
|
||||
ROM_LOAD( "jumping-pal16r6.bin", 0x000, 0x104, CRC(12e9a7b8) SHA1(a0ce8b6083c9adfcb4bdbca87f63a01f292525f3) )
|
||||
ROM_LOAD( "jumping-pal20l8.bin", 0x000, 0x144, CRC(76944f81) SHA1(ab78e4e157ffdc13aea5dc360268b2640e60d19c) )
|
||||
ROM_LOAD( "pal16l8a.ic51.bin", 0x000, 0x104, CRC(c1e6cb8f) SHA1(9908e62bb9b806047b7a344bb62334bd696b9fc8) ) // z80 address decoder?
|
||||
ROM_END
|
||||
|
||||
ROM_START( jumpinga )
|
||||
@ -873,7 +874,7 @@ ROM_START( jumpinga )
|
||||
|
||||
ROM_REGION( 0xa0000, "gfx2", ROMREGION_INVERT )
|
||||
ROM_LOAD( "jb2_ic62", 0x00000, 0x10000, CRC(8548db6c) SHA1(675cd301259d5ed16098a38ac58b27b5ccd91264) ) /* sprites */
|
||||
ROM_LOAD( "jb2_ic61", 0x10000, 0x10000, CRC(37c5923b) SHA1(c83ef45564c56ef62d7019aecbd79dccc671deee) )
|
||||
ROM_LOAD( "20.bin", 0x10000, 0x10000, CRC(89b3d8ee) SHA1(8491de6e8292e58b9a8696be15827bcb1ea42845) ) // dumped multiple times, always the same
|
||||
ROM_LOAD( "jb2_ic60", 0x20000, 0x08000, CRC(662a2f1e) SHA1(1c5e8b1f0623e64faf9cd60f9653fc5957191a9b) )
|
||||
ROM_LOAD( "jb2_ic78", 0x28000, 0x10000, CRC(925865e1) SHA1(457de50bc03e8b949ac7d46ae4188201e87574a8) )
|
||||
ROM_LOAD( "jb2_ic77", 0x38000, 0x10000, CRC(b09695d1) SHA1(e6d315f9befb7b47f42668d573a1102e52d78aea) )
|
||||
@ -888,6 +889,7 @@ ROM_START( jumpinga )
|
||||
ROM_REGION( 0x200, "pals", 0 )
|
||||
ROM_LOAD( "jumping-pal16r6.bin", 0x000, 0x104, CRC(12e9a7b8) SHA1(a0ce8b6083c9adfcb4bdbca87f63a01f292525f3) )
|
||||
ROM_LOAD( "jumping-pal20l8.bin", 0x000, 0x144, CRC(76944f81) SHA1(ab78e4e157ffdc13aea5dc360268b2640e60d19c) )
|
||||
ROM_LOAD( "pal16l8a.ic51.bin", 0x000, 0x104, CRC(c1e6cb8f) SHA1(9908e62bb9b806047b7a344bb62334bd696b9fc8) ) // z80 address decoder?
|
||||
ROM_END
|
||||
|
||||
|
||||
|
@ -86,14 +86,11 @@ DRIVER_INIT_MEMBER(suna8_state,hardhedb)
|
||||
|
||||
UINT8 *suna8_state::brickzn_decrypt()
|
||||
{
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
UINT8 *RAM = memregion("maincpu")->base();
|
||||
size_t size = memregion("maincpu")->bytes();
|
||||
UINT8 *decrypt = auto_alloc_array(machine(), UINT8, size);
|
||||
int i;
|
||||
|
||||
space.set_decrypted_region(0x0000, 0x7fff, decrypt);
|
||||
|
||||
/* Opcodes and data */
|
||||
for (i = 0; i < 0x50000; i++)
|
||||
{
|
||||
@ -133,80 +130,59 @@ UINT8 *suna8_state::brickzn_decrypt()
|
||||
|
||||
DRIVER_INIT_MEMBER(suna8_state,brickzn)
|
||||
{
|
||||
UINT8 *RAM = memregion("maincpu")->base();
|
||||
UINT8 *decrypt = brickzn_decrypt();
|
||||
int i;
|
||||
|
||||
// Opcodes decrypted as data (to do: activated at run-time)
|
||||
for (i = 0; i < 0x8000; i++)
|
||||
{
|
||||
if ( ((i >= 0x072b) && (i <= 0x076f)) ||
|
||||
((i >= 0x45c5) && (i <= 0x45e4)) ||
|
||||
((i >= 0x7393) && (i <= 0x73ba)) ||
|
||||
((i >= 0x7a79) && (i <= 0x7aa9)) )
|
||||
{
|
||||
decrypt[i] = RAM[i];
|
||||
}
|
||||
}
|
||||
m_decrypt = brickzn_decrypt();
|
||||
|
||||
// !!!!!! PATCHES !!!!!!
|
||||
|
||||
// To do: ROM banking should be disabled here
|
||||
decrypt[0x11bb] = 0x00; // LD ($C040),A -> NOP
|
||||
decrypt[0x11bc] = 0x00; // LD ($C040),A -> NOP
|
||||
decrypt[0x11bd] = 0x00; // LD ($C040),A -> NOP
|
||||
m_decrypt[0x11bb] = 0x00; // LD ($C040),A -> NOP
|
||||
m_decrypt[0x11bc] = 0x00; // LD ($C040),A -> NOP
|
||||
m_decrypt[0x11bd] = 0x00; // LD ($C040),A -> NOP
|
||||
|
||||
decrypt[0x3349] = 0xc9; // RET Z -> RET (to avoid: jp $C800)
|
||||
m_decrypt[0x3349] = 0xc9; // RET Z -> RET (to avoid: jp $C800)
|
||||
|
||||
// NMI enable / source??
|
||||
decrypt[0x1431] = 0xc9; // HALT -> RET
|
||||
decrypt[0x24b5] = 0x00; // HALT -> NOP
|
||||
decrypt[0x2593] = 0x00; // HALT -> NOP
|
||||
m_decrypt[0x1431] = 0xc9; // HALT -> RET
|
||||
m_decrypt[0x24b5] = 0x00; // HALT -> NOP
|
||||
m_decrypt[0x2593] = 0x00; // HALT -> NOP
|
||||
|
||||
// Non-banked opcodes
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
space.set_decrypted_region(0x0000, 0x7fff, m_decrypt);
|
||||
|
||||
// Data banks: 00-0f normal data decryption, 10-1f alternate data decryption:
|
||||
membank("bank1")->configure_entries(0, 16*2, memregion("maincpu")->base() + 0x10000, 0x4000);
|
||||
// Opcode banks: 00-1f normal opcode decryption:
|
||||
membank("bank1")->configure_decrypted_entries(0, 16, decrypt + 0x10000, 0x4000);
|
||||
membank("bank1")->configure_decrypted_entries(16, 16, decrypt + 0x10000, 0x4000);
|
||||
membank("bank1")->configure_decrypted_entries(0, 16, m_decrypt + 0x10000, 0x4000);
|
||||
membank("bank1")->configure_decrypted_entries(16, 16, m_decrypt + 0x10000, 0x4000);
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER(suna8_state,brickznv4)
|
||||
{
|
||||
UINT8 *RAM = memregion("maincpu")->base();
|
||||
UINT8 *decrypt = brickzn_decrypt();
|
||||
int i;
|
||||
|
||||
// Opcodes decrypted as data (to do: activated at run-time)
|
||||
for (i = 0; i < 0x8000; i++)
|
||||
{
|
||||
if ( ((i >= 0x072b) && (i <= 0x076f)) ||
|
||||
((i >= 0x4541) && (i <= 0x4560)) ||
|
||||
((i >= 0x72f3) && (i <= 0x7322)) ||
|
||||
((i >= 0x79d9) && (i <= 0x7a09)) )
|
||||
{
|
||||
decrypt[i] = RAM[i];
|
||||
}
|
||||
}
|
||||
|
||||
m_decrypt = brickzn_decrypt();
|
||||
// !!!!!! PATCHES !!!!!!
|
||||
|
||||
// To do: ROM banking should be disabled here
|
||||
decrypt[0x1190] = 0x00; // LD ($C040),A -> NOP
|
||||
decrypt[0x1191] = 0x00; // LD ($C040),A -> NOP
|
||||
decrypt[0x1192] = 0x00; // LD ($C040),A -> NOP
|
||||
m_decrypt[0x1190] = 0x00; // LD ($C040),A -> NOP
|
||||
m_decrypt[0x1191] = 0x00; // LD ($C040),A -> NOP
|
||||
m_decrypt[0x1192] = 0x00; // LD ($C040),A -> NOP
|
||||
|
||||
decrypt[0x3337] = 0xc9; // RET Z -> RET (to avoid: jp $C800)
|
||||
m_decrypt[0x3337] = 0xc9; // RET Z -> RET (to avoid: jp $C800)
|
||||
|
||||
// NMI enable / source??
|
||||
decrypt[0x1406] = 0xc9; // HALT -> RET
|
||||
decrypt[0x2487] = 0x00; // HALT -> NOP
|
||||
decrypt[0x256c] = 0x00; // HALT -> NOP
|
||||
m_decrypt[0x1406] = 0xc9; // HALT -> RET
|
||||
m_decrypt[0x2487] = 0x00; // HALT -> NOP
|
||||
m_decrypt[0x256c] = 0x00; // HALT -> NOP
|
||||
|
||||
// Non-banked opcodes
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
space.set_decrypted_region(0x0000, 0x7fff, m_decrypt);
|
||||
|
||||
// Data banks: 00-0f normal data decryption, 10-1f alternate data decryption:
|
||||
membank("bank1")->configure_entries(0, 16*2, memregion("maincpu")->base() + 0x10000, 0x4000);
|
||||
// Opcode banks: 00-1f normal opcode decryption:
|
||||
membank("bank1")->configure_decrypted_entries(0, 16, decrypt + 0x10000, 0x4000);
|
||||
membank("bank1")->configure_decrypted_entries(16, 16, decrypt + 0x10000, 0x4000);
|
||||
membank("bank1")->configure_decrypted_entries(0, 16, m_decrypt + 0x10000, 0x4000);
|
||||
membank("bank1")->configure_decrypted_entries(16, 16, m_decrypt + 0x10000, 0x4000);
|
||||
}
|
||||
|
||||
|
||||
@ -700,7 +676,9 @@ READ8_MEMBER(suna8_state::brickzn_cheats_r)
|
||||
*/
|
||||
WRITE8_MEMBER(suna8_state::brickzn_multi_w)
|
||||
{
|
||||
if ((m_protection_val & 0xfc) == 0x88 || (m_protection_val & 0xfc) == 0x8c)
|
||||
int protselect = m_protection_val & 0xfc;
|
||||
|
||||
if ((protselect == 0x88) || (protselect == 0x8c))
|
||||
{
|
||||
m_palettebank = data & 0x01;
|
||||
|
||||
@ -713,7 +691,7 @@ WRITE8_MEMBER(suna8_state::brickzn_multi_w)
|
||||
|
||||
logerror("CPU #0 - PC %04X: soundlatch = %02X\n",space.device().safe_pc(),data);
|
||||
}
|
||||
else if ((m_protection_val & 0xfc) == 0x04)
|
||||
else if (protselect == 0x04)
|
||||
{
|
||||
set_led_status(machine(), 0, data & 0x01);
|
||||
set_led_status(machine(), 1, data & 0x02);
|
||||
@ -722,16 +700,7 @@ WRITE8_MEMBER(suna8_state::brickzn_multi_w)
|
||||
logerror("CPU #0 - PC %04X: leds = %02X\n",space.device().safe_pc(),data);
|
||||
if (data & ~0x07) logerror("CPU #0 - PC %04X: unknown leds bits: %02X\n",space.device().safe_pc(),data);
|
||||
}
|
||||
else if ((m_protection_val & 0xfc) == 0x9c)
|
||||
{
|
||||
// controls opcode decryption
|
||||
// see code at 71b, 45b7, 7380, 7a6b
|
||||
|
||||
// To be done: run-time opcode decryption change. Done in driver_init for now.
|
||||
|
||||
logerror("CPU #0 - PC %04X: op-decrypt = %02X\n",space.device().safe_pc(),data);
|
||||
}
|
||||
else if ((m_protection_val & 0xfc) == 0x80)
|
||||
else if (protselect == 0x80)
|
||||
{
|
||||
// disables rom banking?
|
||||
// see code at 11b1:
|
||||
@ -742,6 +711,28 @@ WRITE8_MEMBER(suna8_state::brickzn_multi_w)
|
||||
{
|
||||
logerror("CPU #0 - PC %04X: ignore = %02X\n",space.device().safe_pc(),data);
|
||||
}
|
||||
|
||||
if ((m_protection_val & 0x1f) == 0x1c)
|
||||
{
|
||||
// controls opcode decryption
|
||||
// see code at 71b, 45b7, 7380, 7a6b
|
||||
//printf("CPU #0 - PC %04X: alt op-decrypt tog = %02X\n",space.device().safe_pc(),data);
|
||||
m_prot_opcode_toggle ^= 1;
|
||||
|
||||
if (m_prot_opcode_toggle == 0)
|
||||
{
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
space.set_decrypted_region(0x0000, 0x7fff, m_decrypt);
|
||||
}
|
||||
else
|
||||
{
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
space.set_decrypted_region(0x0000, 0x7fff, memregion("maincpu")->base());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -2894,6 +2894,42 @@ ROM_START( tmhta )
|
||||
ROM_LOAD( "963a25.d5", 0x00000, 0x80000, CRC(fca078c7) SHA1(3e1124d72c9db4cb11d8de6c44b7aeca967f44e1) )
|
||||
ROM_END
|
||||
|
||||
|
||||
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
|
||||
ROM_REGION( 0x60000, "maincpu", 0 ) /* 2*128k and 2*64k for 68000 code */
|
||||
ROM_LOAD16_BYTE( "unk3.i17", 0x00000, 0x20000, CRC(537eb047) SHA1(97e6dbc486c7d057355db7fcbdc0a2c2cad2c653) )
|
||||
ROM_LOAD16_BYTE( "unk4.k17", 0x00001, 0x20000, CRC(5afae564) SHA1(8d5fbf9530ad8d095c12b7e0f8c499c1436c4d47) )
|
||||
ROM_LOAD16_BYTE( "unk2.j15", 0x40000, 0x10000, CRC(ee34de05) SHA1(507d7fb178dbbe87dd373a81ad3f350ee2f7d923))
|
||||
ROM_LOAD16_BYTE( "unk1.k15", 0x40001, 0x10000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x10000, "audiocpu", 0 )
|
||||
ROM_LOAD( "963e20.g13", 0x00000, 0x08000, CRC(1692a6d6) SHA1(68c3419012b2863e91a7d7e479fce5ceabb10b88) )
|
||||
|
||||
ROM_REGION( 0x100000, "k052109", 0 ) /* tiles */
|
||||
ROM_LOAD32_WORD( "963a28.h27", 0x000000, 0x80000, CRC(db4769a8) SHA1(810811914f9c1fbf2320d5a9030cbf124f6d78cf) )
|
||||
ROM_LOAD32_WORD( "963a29.k27", 0x000002, 0x80000, CRC(8069cd2e) SHA1(54095d3546119ccd1e8814d692aceb1327c9369f) )
|
||||
|
||||
ROM_REGION( 0x200000, "k051960", 0 ) /* sprites */
|
||||
ROM_LOAD32_WORD( "963a17.h4", 0x000000, 0x80000, CRC(b5239a44) SHA1(84e94807e7c51aa652b4e4b827b36be59a53d0d6) )
|
||||
ROM_LOAD32_WORD( "963a15.k4", 0x000002, 0x80000, CRC(1f324eed) SHA1(971a675578518fffa341a943d0cc4fdea005fde0) )
|
||||
ROM_LOAD32_WORD( "963a18.h6", 0x100000, 0x80000, CRC(dd51adef) SHA1(5010c0911b0b9e4f23a785e8a751a0bde5be5be0) )
|
||||
ROM_LOAD32_WORD( "963a16.k6", 0x100002, 0x80000, CRC(d4bd9984) SHA1(d780ae7f72e16767c3a492544f02f0f1a332ab22) )
|
||||
|
||||
ROM_REGION( 0x0200, "proms", 0 )
|
||||
ROM_LOAD( "963a30.g7", 0x0000, 0x0100, CRC(abd82680) SHA1(945a71e6ec65202f13209b45d45b616372d6c0f5) ) /* sprite address decoder */
|
||||
ROM_LOAD( "963a31.g19", 0x0100, 0x0100, CRC(f8004a1c) SHA1(ed6694b8eebfe0238b50ebd05007d519f6e57b1b) ) /* priority encoder (not used) */
|
||||
|
||||
ROM_REGION( 0x20000, "k007232", 0 ) /* 128k for the samples */
|
||||
ROM_LOAD( "963a26.c13", 0x00000, 0x20000, CRC(e2ac3063) SHA1(5bb294c46fb5eaba9935a18c0aa5d3931168f474) ) /* samples for 007232 */
|
||||
|
||||
ROM_REGION( 0x20000, "upd", 0 ) /* 128k for the samples */
|
||||
ROM_LOAD( "963a27.d18", 0x00000, 0x20000, CRC(2dfd674b) SHA1(bbec5896c70056964fbc972a84bd5b0dfc6af257) ) /* samples for UPD7759C */
|
||||
|
||||
ROM_REGION( 0x80000, "title", 0 ) /* 512k for the title music sample */
|
||||
ROM_LOAD( "963a25.d5", 0x00000, 0x80000, CRC(fca078c7) SHA1(3e1124d72c9db4cb11d8de6c44b7aeca967f44e1) )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( tmntj )
|
||||
ROM_REGION( 0x60000, "maincpu", 0 ) /* 2*128k and 2*64k for 68000 code */
|
||||
ROM_LOAD16_BYTE( "963_223.j17", 0x00000, 0x20000, CRC(0d34a5ff) SHA1(a387f3e7c727dc66ebb0e1f40e4ab8dc83f647e5) )
|
||||
@ -4066,6 +4102,7 @@ GAME( 1989, tmntu, tmnt, tmnt, tmnt, tmnt_state, tmnt,
|
||||
GAME( 1989, tmntua, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Ninja Turtles (US 4 Players, set 2)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1989, tmht, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 4 Players, set 1)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1989, tmhta, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 4 Players, set 2)", GAME_SUPPORTS_SAVE )
|
||||
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
|
||||
GAME( 1990, tmntj, tmnt, tmnt, tmnt, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Ninja Turtles (Japan 4 Players)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1989, tmht2p, tmnt, tmnt, tmnt2p, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 2 Players, set 1)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1989, tmht2pa, tmnt, tmnt, tmnt2p, tmnt_state, tmnt, ROT0, "Konami", "Teenage Mutant Hero Turtles (UK 2 Players, set 2)", GAME_SUPPORTS_SAVE )
|
||||
|
@ -16,7 +16,10 @@ public:
|
||||
m_samples(*this, "samples"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_screen(*this, "screen"),
|
||||
m_palette(*this, "palette") { }
|
||||
m_palette(*this, "palette"),
|
||||
|
||||
m_prot_opcode_toggle(0)
|
||||
{ }
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_shared_ptr<UINT8> m_hardhead_ip;
|
||||
@ -41,7 +44,9 @@ public:
|
||||
UINT8 m_nmi_enable;
|
||||
UINT8 m_spritebank_latch;
|
||||
UINT8 m_write_disable;
|
||||
|
||||
UINT8 m_prot_opcode_toggle;
|
||||
UINT8* m_decrypt;
|
||||
|
||||
enum GFXBANK_TYPE_T
|
||||
{
|
||||
GFXBANK_TYPE_SPARKMAN,
|
||||
|
@ -1646,6 +1646,7 @@ tron // (c) 1982
|
||||
tron2 // (c) 1982
|
||||
tron3 // (c) 1982
|
||||
tron4 // (c) 1982
|
||||
tronger // (c) 1982
|
||||
kroozr // (c) 1982
|
||||
domino // (c) 1982
|
||||
wacko // (c) 1982
|
||||
@ -6437,6 +6438,7 @@ tmntu // GX963 (c) 1989 (US)
|
||||
tmntua // GX963 (c) 1989 (US)
|
||||
tmht // GX963 (c) 1989 (UK)
|
||||
tmhta // GX963 (c) 1989 (UK)
|
||||
tmhtb // GX963 (c) 1989 (UK?)
|
||||
tmntj // GX963 (c) 1990 (Japan)
|
||||
tmht2p // GX963 (c) 1989 (UK)
|
||||
tmht2pa // GX963 (c) 1989 (UK)
|
||||
|
@ -23,7 +23,6 @@ TODO:
|
||||
*******************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "includes/n64.h"
|
||||
#include "video/n64.h"
|
||||
|
||||
#define LOG_RDP_EXECUTION 0
|
||||
|
@ -1790,7 +1790,7 @@ COMP( 1988, las128e2, apple2c, 0, laser128ex2, apple2e, driver_device,
|
||||
COMP( 1985, apple2c0, apple2c, 0, apple2c_iwm, apple2e, driver_device, 0, "Apple Computer", "Apple //c (UniDisk 3.5)", GAME_SUPPORTS_SAVE )
|
||||
COMP( 1986, apple2c3, apple2c, 0, apple2c_iwm, apple2e, driver_device, 0, "Apple Computer", "Apple //c (Original Memory Expansion)", GAME_SUPPORTS_SAVE )
|
||||
COMP( 1986, apple2c4, apple2c, 0, apple2c_iwm, apple2e, driver_device, 0, "Apple Computer", "Apple //c (rev 4)", GAME_SUPPORTS_SAVE )
|
||||
COMP( 1988, apple2cp, apple2c, 0, apple2cp, apple2e, driver_device, 0, "Apple Computer", "Apple //c Plus", GAME_SUPPORTS_SAVE )
|
||||
COMP( 1988, apple2cp, apple2c, 0, apple2cp, apple2e, driver_device, 0, "Apple Computer", "Apple //c Plus", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )
|
||||
COMP( 1984, ivelultr, apple2, 0, apple2p, apple2p, driver_device, 0, "Ivasim", "Ivel Ultra", GAME_SUPPORTS_SAVE )
|
||||
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 :(
|
||||
COMP( 1984, agat9, apple2, 0, apple2p, apple2p, driver_device, 0, "Agat", "Agat-9", GAME_NOT_WORKING)
|
||||
|
@ -234,6 +234,14 @@ static MACHINE_CONFIG_DERIVED_CLASS( pentagon, spectrum_128, pentagon_state )
|
||||
MCFG_BETA_DISK_ADD(BETA_DISK_TAG)
|
||||
MCFG_GFXDECODE_MODIFY("gfxdecode", pentagon)
|
||||
|
||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||
|
||||
MCFG_SOUND_REPLACE("ay8912", AY8912, XTAL_14MHz / 8)
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
|
||||
MCFG_SOUND_ROUTE(1, "lspeaker", 0.25)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.25)
|
||||
MCFG_SOUND_ROUTE(2, "rspeaker", 0.50)
|
||||
|
||||
MCFG_SOFTWARE_LIST_ADD("cass_list_pen","pentagon_cass")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -50,7 +50,7 @@ UINT32 nes_state::screen_update_nes(screen_device &screen, bitmap_ind16 &bitmap,
|
||||
m_last_frame_flip = 1;
|
||||
}
|
||||
|
||||
if (!m_io_disksel->read_safe(1) & 0x01)
|
||||
if (!(m_io_disksel->read_safe(1) & 0x01))
|
||||
m_last_frame_flip = 0;
|
||||
}
|
||||
return 0;
|
||||
|
@ -197,22 +197,17 @@ void spectrum_state::spectrum_UpdateBorderBitmap()
|
||||
|
||||
do
|
||||
{
|
||||
if (m_previous_border_y < height)
|
||||
{
|
||||
UINT16* bm = &m_border_bitmap.pix16(m_previous_border_y);
|
||||
|
||||
if (m_previous_border_x < width)
|
||||
bm[m_previous_border_x] = colour;
|
||||
}
|
||||
UINT16* bm = &m_border_bitmap.pix16(m_previous_border_y);
|
||||
bm[m_previous_border_x] = colour;
|
||||
|
||||
m_previous_border_x += 1;
|
||||
|
||||
if (m_previous_border_x > width)
|
||||
if (m_previous_border_x >= width)
|
||||
{
|
||||
m_previous_border_x = 0;
|
||||
m_previous_border_y += 1;
|
||||
|
||||
if (m_previous_border_y > height)
|
||||
if (m_previous_border_y >= height)
|
||||
{
|
||||
m_previous_border_y = 0;
|
||||
}
|
||||
|
@ -185,7 +185,7 @@ endif
|
||||
endif
|
||||
|
||||
ifdef MSVC_ANALYSIS
|
||||
CCOMFLAGS += /analyze /wd6011 /wd6328 /wd6204 /wd6244 /wd6385 /wd6308 /wd6246 /wd6031 /wd6326 /wd6255 /wd6330 /wd28251 /wd6054 /wd6340 /wd28125 /wd6053 /wd6001 /wd6386 /wd28278 /wd6297 /wd28183 /wd28159 /wd28182 /wd6237 /wd6239 /wd6240 /wd6323 /wd28199 /wd6235 /wd6285 /wd6286 /wd6384 /wd6293 /analyze:stacksize384112
|
||||
CCOMFLAGS += /analyze /wd6011 /wd6328 /wd6204 /wd6244 /wd6385 /wd6308 /wd6246 /wd6031 /wd6326 /wd6255 /wd6330 /wd28251 /wd6054 /wd6340 /wd28125 /wd6053 /wd6001 /wd6386 /wd28278 /wd6297 /wd28183 /wd28159 /wd28182 /wd6237 /wd6239 /wd6240 /wd6323 /wd28199 /wd6235 /wd6285 /wd6286 /wd6384 /wd6293 /analyze:stacksize1070232
|
||||
endif
|
||||
|
||||
# enable exception handling for C++
|
||||
|
Loading…
Reference in New Issue
Block a user