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
6da34a3c4d
@ -5,7 +5,6 @@
|
||||
TODO:
|
||||
- Properly hook up correct SRAM sizes for different moonsound compatible
|
||||
cartridges. (Original moonsound has 128KB SRAM)
|
||||
- Fix FM support (ymf262 support needs to be added to ymf278b).
|
||||
|
||||
**********************************************************************************/
|
||||
|
||||
@ -42,6 +41,10 @@ static MACHINE_CONFIG_FRAGMENT( moonsound )
|
||||
MCFG_YMF278B_IRQ_HANDLER(WRITELINE(msx_cart_moonsound,irq_w))
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
|
||||
MCFG_SOUND_ROUTE(2, "lspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(3, "rspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(4, "lspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(5, "rspeaker", 0.40)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -31,7 +31,6 @@ public:
|
||||
|
||||
private:
|
||||
required_device<ymf278b_device> m_ymf278b;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -12,6 +12,11 @@
|
||||
TODO:
|
||||
- what happens with uCOM-43 opcodes on an uCOM-44/45 MCU?
|
||||
- what's the data after the ROM data for? (eg. 2000-2047, official ROM size is 2000)
|
||||
- is DPh internally 3-bit or 4-bit? (currently assume 4-bit, it could have effect
|
||||
on specific uCOM-43 exchange opcodes)
|
||||
- RAM access from 0x50-0x7f on data_96x4
|
||||
- invalid port accesses via DPl
|
||||
- documentation is conflicting if IRQ is level or edge triggered
|
||||
|
||||
*/
|
||||
|
||||
@ -116,10 +121,10 @@ void ucom4_cpu_device::device_start()
|
||||
m_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(ucom4_cpu_device::simple_timer_cb), this));
|
||||
|
||||
// resolve callbacks
|
||||
m_read_a.resolve_safe(0xf);
|
||||
m_read_b.resolve_safe(0xf);
|
||||
m_read_c.resolve_safe(0xf);
|
||||
m_read_d.resolve_safe(0xf);
|
||||
m_read_a.resolve_safe(0);
|
||||
m_read_b.resolve_safe(0);
|
||||
m_read_c.resolve_safe(0);
|
||||
m_read_d.resolve_safe(0);
|
||||
|
||||
m_write_c.resolve_safe();
|
||||
m_write_d.resolve_safe();
|
||||
|
@ -216,8 +216,8 @@ protected:
|
||||
void ram_w(UINT8 data);
|
||||
void pop_stack();
|
||||
void push_stack();
|
||||
UINT8 input_r(int index);
|
||||
void output_w(int index, UINT8 data);
|
||||
virtual UINT8 input_r(int index);
|
||||
virtual void output_w(int index, UINT8 data);
|
||||
|
||||
bool check_op_43();
|
||||
TIMER_CALLBACK_MEMBER( simple_timer_cb );
|
||||
@ -322,6 +322,9 @@ class upd650_cpu_device : public ucom4_cpu_device
|
||||
{
|
||||
public:
|
||||
upd650_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
protected:
|
||||
virtual UINT8 input_r(int index);
|
||||
};
|
||||
|
||||
|
||||
|
@ -43,8 +43,8 @@ UINT8 ucom4_cpu_device::input_r(int index)
|
||||
{
|
||||
case NEC_UCOM4_PORTA: inp = m_read_a(index, 0xff); break;
|
||||
case NEC_UCOM4_PORTB: inp = m_read_b(index, 0xff); break;
|
||||
case NEC_UCOM4_PORTC: inp = m_read_c(index, 0xff); break;
|
||||
case NEC_UCOM4_PORTD: inp = m_read_d(index, 0xff); break;
|
||||
case NEC_UCOM4_PORTC: inp = m_read_c(index, 0xff) | m_port_out[index]; break;
|
||||
case NEC_UCOM4_PORTD: inp = m_read_d(index, 0xff) | m_port_out[index]; break;
|
||||
|
||||
default:
|
||||
logerror("%s read from unknown port %c at $%03X\n", tag(), 'A' + index, m_prev_pc);
|
||||
@ -54,6 +54,15 @@ UINT8 ucom4_cpu_device::input_r(int index)
|
||||
return inp & 0xf;
|
||||
}
|
||||
|
||||
UINT8 upd650_cpu_device::input_r(int index)
|
||||
{
|
||||
// bidirectional ports are 'push-pull', meaning it will output 0 when it's read
|
||||
if ((index & 0xf) == NEC_UCOM4_PORTC || (index & 0xf) == NEC_UCOM4_PORTD)
|
||||
output_w(index, 0);
|
||||
|
||||
return ucom4_cpu_device::input_r(index);
|
||||
}
|
||||
|
||||
void ucom4_cpu_device::output_w(int index, UINT8 data)
|
||||
{
|
||||
index &= 0xf;
|
||||
|
@ -43,13 +43,12 @@
|
||||
TODO:
|
||||
- accurate timing of envelopes
|
||||
- LFO (vibrato, tremolo)
|
||||
- integrate YMF262 (used by Fuuki games, not used by Psikyo and Metro games)
|
||||
- able to hook up "Moonsound", supporting mixed ROM+RAM (for MSX driver in MESS)
|
||||
(this should be possible now by using a custom address map?)
|
||||
- integrate YMF262 mixing (used by Fuuki games, not used by Psikyo and Metro games)
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
#include "ymf278b.h"
|
||||
#include "ymf262.h"
|
||||
|
||||
#define VERBOSE 0
|
||||
#define LOG(x) do { if (VERBOSE) logerror x; } while (0)
|
||||
@ -226,6 +225,12 @@ void ymf278b_device::sound_stream_update(sound_stream &stream, stream_sample_t *
|
||||
INT32 *mixp;
|
||||
INT32 vl, vr;
|
||||
|
||||
if (&stream == m_stream_ymf262)
|
||||
{
|
||||
ymf262_update_one(m_ymf262, outputs, samples);
|
||||
return;
|
||||
}
|
||||
|
||||
memset(m_mix_buffer, 0, sizeof(m_mix_buffer[0])*samples*2);
|
||||
|
||||
for (i = 0; i < 24; i++)
|
||||
@ -683,6 +688,7 @@ WRITE8_MEMBER( ymf278b_device::write )
|
||||
timer_busy_start(0);
|
||||
m_port_AB = data;
|
||||
m_lastport = offset>>1 & 1;
|
||||
ymf262_write(m_ymf262, offset, data);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
@ -691,6 +697,7 @@ WRITE8_MEMBER( ymf278b_device::write )
|
||||
if (m_lastport) B_w(m_port_AB, data);
|
||||
else A_w(m_port_AB, data);
|
||||
m_last_fm_data = data;
|
||||
ymf262_write(m_ymf262, offset, data);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
@ -830,6 +837,14 @@ void ymf278b_device::device_reset()
|
||||
m_current_irq = 0;
|
||||
if (!m_irq_handler.isnull())
|
||||
m_irq_handler(0);
|
||||
|
||||
ymf262_reset_chip(m_ymf262);
|
||||
}
|
||||
|
||||
void ymf278b_device::device_stop()
|
||||
{
|
||||
ymf262_shutdown(m_ymf262);
|
||||
m_ymf262 = NULL;
|
||||
}
|
||||
|
||||
void ymf278b_device::precompute_rate_tables()
|
||||
@ -928,6 +943,28 @@ void ymf278b_device::register_save_state()
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
static void ymf278b_ymf262_irq_handler(void *param,int irq)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
static void ymf278b_ymf262_timer_handler(void *param, int c, const attotime &period)
|
||||
{
|
||||
}
|
||||
|
||||
static void ymf278b_ymf262_update_request(void *param, int interval)
|
||||
{
|
||||
ymf278b_device *ymf278b = (ymf278b_device *) param;
|
||||
ymf278b->ymf262_update_request();
|
||||
}
|
||||
|
||||
|
||||
void ymf278b_device::ymf262_update_request()
|
||||
{
|
||||
m_stream_ymf262->update();
|
||||
}
|
||||
|
||||
|
||||
void ymf278b_device::device_start()
|
||||
{
|
||||
int i;
|
||||
@ -973,6 +1010,20 @@ void ymf278b_device::device_start()
|
||||
|
||||
// Register state for saving
|
||||
register_save_state();
|
||||
|
||||
// YMF262 related
|
||||
|
||||
/* stream system initialize */
|
||||
int ymf262_clock = clock() / (19/8.0);
|
||||
m_ymf262 = ymf262_init(this, ymf262_clock, ymf262_clock / 288);
|
||||
assert_always(m_ymf262 != NULL, "Error creating YMF262 chip");
|
||||
|
||||
m_stream_ymf262 = machine().sound().stream_alloc(*this, 0, 4, ymf262_clock / 288);
|
||||
|
||||
/* YMF262 setup */
|
||||
ymf262_set_timer_handler (m_ymf262, ymf278b_ymf262_timer_handler, this);
|
||||
ymf262_set_irq_handler (m_ymf262, ymf278b_ymf262_irq_handler, this);
|
||||
ymf262_set_update_handler(m_ymf262, ymf278b_ymf262_update_request, this);
|
||||
}
|
||||
|
||||
|
||||
|
@ -25,11 +25,14 @@ public:
|
||||
DECLARE_READ8_MEMBER( read );
|
||||
DECLARE_WRITE8_MEMBER( write );
|
||||
|
||||
void ymf262_update_request();
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_config_complete();
|
||||
virtual void device_start();
|
||||
virtual void device_reset();
|
||||
virtual void device_stop();
|
||||
|
||||
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
|
||||
|
||||
@ -132,6 +135,10 @@ private:
|
||||
const address_space_config m_space_config;
|
||||
devcb_write_line m_irq_handler;
|
||||
UINT8 m_last_fm_data;
|
||||
|
||||
// ymf262
|
||||
void *m_ymf262;
|
||||
sound_stream * m_stream_ymf262;
|
||||
};
|
||||
|
||||
extern const device_type YMF278B;
|
||||
|
@ -6480,6 +6480,7 @@ mogura // GX141 (c) 1991
|
||||
wecleman // GX602 (c) 1986
|
||||
wecleman2 // GX602?(c) 1988
|
||||
hotchase // GX763 (c) 1988
|
||||
hotchasea
|
||||
chqflag // GX717 (c) 1988
|
||||
chqflagj // GX717 (c) 1988 (Japan)
|
||||
ultraman // GX910 (c) 1991 Banpresto/Bandai
|
||||
|
@ -38,8 +38,6 @@ Notes so far:
|
||||
- PCM channels of music in asurabus is sometimes off-tune, check Chen-Mao's stage for example
|
||||
note: srom.u7 (z80 prg) is a good dump
|
||||
|
||||
- YMF278B and YMF262 are hooked up in an awkward way (real chip has YMF262 integrated)
|
||||
|
||||
Asura Blade
|
||||
Fuuki Co. Ltd., 1998
|
||||
|
||||
@ -162,7 +160,6 @@ FG-3J ROM-J 507KA0301P04 Rev:1.3
|
||||
#include "cpu/z80/z80.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "sound/ymf278b.h"
|
||||
#include "sound/262intf.h"
|
||||
#include "includes/fuukifg3.h"
|
||||
|
||||
|
||||
@ -258,10 +255,6 @@ WRITE8_MEMBER(fuuki32_state::snd_z80_w)
|
||||
WRITE8_MEMBER(fuuki32_state::snd_ymf278b_w)
|
||||
{
|
||||
machine().device<ymf278b_device>("ymf1")->write(space, offset, data);
|
||||
|
||||
// also write to ymf262
|
||||
if (offset < 4)
|
||||
machine().device<ymf262_device>("ymf2")->write(space, offset, data);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( fuuki32_sound_map, AS_PROGRAM, 8, fuuki32_state )
|
||||
@ -584,12 +577,10 @@ static MACHINE_CONFIG_START(fuuki32, fuuki32_state)
|
||||
MCFG_YMF278B_IRQ_HANDLER(INPUTLINE("soundcpu", 0))
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
|
||||
|
||||
MCFG_SOUND_ADD("ymf2", YMF262, YMF278B_STD_CLOCK / (19/8.0))
|
||||
MCFG_SOUND_ROUTE(0, "lspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(1, "rspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(2, "lspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(3, "rspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(4, "lspeaker", 0.40)
|
||||
MCFG_SOUND_ROUTE(5, "rspeaker", 0.40)
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -1405,6 +1405,169 @@ ROM_START( hotchase )
|
||||
ROM_LOAD( "763a12", 0x000000, 0x008000, CRC(05f1e553) SHA1(8aaeb7374bd93038c24e6470398936f22cabb0fe) )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
|
||||
Hot Chase
|
||||
Konami 1988
|
||||
|
||||
|
||||
|
||||
E08D E08B E09D E09B E10D E10B
|
||||
E08A E08C E09A E09C E10A E10C
|
||||
|
||||
GX763 350861
|
||||
|
||||
E09 E10 E11
|
||||
E08 07232 07232
|
||||
07232 3.579MHz 2128
|
||||
6809 P01.R10
|
||||
SW1
|
||||
SW2 2128 2128
|
||||
6264 6264 6264 6264
|
||||
R02.P14 R03.R14
|
||||
07770 R04.P16 R05.R16
|
||||
2018-45 D06.E18 D07.H18 10MHz
|
||||
2018-45 68000-10 07641 68000-10
|
||||
|
||||
GX763 350860
|
||||
|
||||
051316 PSAC 051316 PSAC A13.H5 A14.J5
|
||||
2018-45 2018-R6
|
||||
2018-45
|
||||
2018-45 07558
|
||||
051316 PSAC 2018-45 A12.R13
|
||||
|
||||
A15.H14
|
||||
|
||||
A23.B17 07634
|
||||
07635
|
||||
2018-45 2018-45
|
||||
2018-45 2018-45 07557
|
||||
2018-45 2018-45 25.2MHz
|
||||
2018-45 2018-45
|
||||
|
||||
|
||||
Left EPROM board
|
||||
|
||||
E19A.A8 E19B.A7 E19C.A6 E19D.A5
|
||||
E22E.B12 E22F.B11 E22G.B10 E22H.B9 E19E.B8 E19F.B7 E19G.B6 E19H.B5
|
||||
E22A.D9 E22B.D7 E22C.D6 E22D.D5
|
||||
|
||||
Right EPROM board
|
||||
|
||||
E21E E21F E21G E21H E17A E17B E17C E17D E18A E18B E18C E18D
|
||||
E20E E20F E20G E20H E17E E17F E17G E17H E18E E18F E18G E18H
|
||||
E20A E20B E20C E20D E21A E21B E21C E21D
|
||||
|
||||
*/
|
||||
|
||||
// uses EPROM sub-boards in place of some of the MASK roms, different program too
|
||||
ROM_START( hotchasea )
|
||||
ROM_REGION( 0x40000, "maincpu", 0 ) /* Main Code */
|
||||
ROM_LOAD16_BYTE( "763r05.r16", 0x000000, 0x010000, CRC(c880d5e4) SHA1(3c3ab3ad5496cfbc8de76620eedc06601ee7a8c7) )
|
||||
ROM_LOAD16_BYTE( "763r04.p16", 0x000001, 0x010000, CRC(b732ee2c) SHA1(b3d73cf5039980ac74927eef656326515fd2026b) )
|
||||
ROM_LOAD16_BYTE( "763r03.r14", 0x020000, 0x010000, CRC(13dd71de) SHA1(4b86b81ef79e0e92a1e458010b0b9574183a9c29) )
|
||||
ROM_LOAD16_BYTE( "763r02.p14", 0x020001, 0x010000, CRC(6cd1a18e) SHA1(0ddfe6a46e95052534325f228b7f0faba121950e) )
|
||||
|
||||
ROM_REGION( 0x20000, "sub", 0 ) /* Sub Code */
|
||||
ROM_LOAD16_BYTE( "763d07.h18", 0x000000, 0x010000, CRC(ae12fa90) SHA1(7f76f09916fe152411b5af3c504ee7be07497ef4) )
|
||||
ROM_LOAD16_BYTE( "763d06.e18", 0x000001, 0x010000, CRC(b77e0c07) SHA1(98bf492ac889d31419df706029fdf3d51b85c936) )
|
||||
|
||||
ROM_REGION( 0x10000, "audiocpu", 0 ) /* Sound Code */
|
||||
ROM_LOAD( "763p01.r10", 0x8000, 0x8000, CRC(15dbca7b) SHA1(ac0c965b72a8579a3b60dbadfb942248d2cff2d8) )
|
||||
|
||||
ROM_REGION( 0x300000 * 2, "gfx1", 0 ) /* x2, do not dispose, zooming sprites */
|
||||
ROM_LOAD16_BYTE( "763e17a", 0x000000, 0x010000, CRC(8542d7d7) SHA1(a7c8aa7d8e0cabdc5269eb7adff944aaa0f819b6) )
|
||||
ROM_LOAD16_BYTE( "763e17e", 0x000001, 0x010000, CRC(4b4d919c) SHA1(0364eb74da8db7238888274d12011de876662d5a) )
|
||||
ROM_LOAD16_BYTE( "763e17b", 0x020000, 0x010000, CRC(ba9d7e72) SHA1(3af618087dcc66552ffabaf655f97b20e597122c) )
|
||||
ROM_LOAD16_BYTE( "763e17f", 0x020001, 0x010000, CRC(582400bb) SHA1(9479e45087d908c9b20392dba2a752a7ec1482e2) )
|
||||
ROM_LOAD16_BYTE( "763e17c", 0x040000, 0x010000, CRC(0ed292f8) SHA1(8c161e73c7f27925377799f67585b888bade6d82) )
|
||||
ROM_LOAD16_BYTE( "763e17g", 0x040001, 0x010000, CRC(35b27ed7) SHA1(e17e7674ee210ff340482a16dce3439b55c29f72) )
|
||||
ROM_LOAD16_BYTE( "763e17d", 0x060000, 0x010000, CRC(0166d00d) SHA1(e58f6deabc5743f6610252242f97bd5e973316ae) )
|
||||
ROM_LOAD16_BYTE( "763e17h", 0x060001, 0x010000, CRC(e5b8e8e6) SHA1(ae1349977559ff24dcd1678d6fd3a3e118612d07) )
|
||||
ROM_LOAD16_BYTE( "763e20a", 0x080000, 0x010000, CRC(256fe63c) SHA1(414325f2ff9abc411e2401dddd216e1a4de8a01e) )
|
||||
ROM_LOAD16_BYTE( "763e20e", 0x080001, 0x010000, CRC(ee8ca7e1) SHA1(fee544d6508f4106176f39e3765961e9f80fe620) )
|
||||
ROM_LOAD16_BYTE( "763e20b", 0x0a0000, 0x010000, CRC(b6714c24) SHA1(88f6437e181f36b7e44f1c70872314d8c0cc30e7) )
|
||||
ROM_LOAD16_BYTE( "763e20f", 0x0a0001, 0x010000, CRC(9dbc4b21) SHA1(31559903707a4f8ba3b044e8aad928de38403dcf) )
|
||||
ROM_LOAD16_BYTE( "763e20c", 0x0c0000, 0x010000, CRC(5173ad9b) SHA1(afe82c69f7036c7595f1a56b22176ba202b00b5c) )
|
||||
ROM_LOAD16_BYTE( "763e20g", 0x0c0001, 0x010000, CRC(b8c77f99) SHA1(e3bea1481c5b1c4733130651f9cf18587d3efc46) )
|
||||
ROM_LOAD16_BYTE( "763e20d", 0x0e0000, 0x010000, CRC(4ebdba32) SHA1(ac7daa291c82f75b09faf7bc5f6257870cc46061) )
|
||||
ROM_LOAD16_BYTE( "763e20h", 0x0e0001, 0x010000, CRC(0a428654) SHA1(551026f6f57d38aedd3498cce33af7bb2cf07184) )
|
||||
ROM_LOAD16_BYTE( "763e18a", 0x100000, 0x010000, CRC(09748099) SHA1(1821e2067b9a50a0638c8d105c617f4030d61877) )
|
||||
ROM_LOAD16_BYTE( "763e18e", 0x100001, 0x010000, CRC(049d4fcf) SHA1(aed18297677a3bb0b7197f59ea329aef9b678c01) )
|
||||
ROM_LOAD16_BYTE( "763e18b", 0x120000, 0x010000, CRC(ed0c3369) SHA1(84f336546dee01fec31c9c256ee00a9f8448cea4) )
|
||||
ROM_LOAD16_BYTE( "763e18f", 0x120001, 0x010000, CRC(b596a9ce) SHA1(dea0fe1c3386b5f0d19df4467f42d077678ae220) )
|
||||
ROM_LOAD16_BYTE( "763e18c", 0x140000, 0x010000, CRC(5a278291) SHA1(05c529baa68ef5877a28901c6f221e3d3593735f) )
|
||||
ROM_LOAD16_BYTE( "763e18g", 0x140001, 0x010000, CRC(aa7263cd) SHA1(b2acf66c02faf7777c5cb947aaf8e038f29c0f2e) )
|
||||
ROM_LOAD16_BYTE( "763e18d", 0x160000, 0x010000, CRC(b0b79a71) SHA1(46d0f17b7a6e4fb94ac9b8335bc598339d7707a5) )
|
||||
ROM_LOAD16_BYTE( "763e18h", 0x160001, 0x010000, CRC(a18b9127) SHA1(890971d2922a59ff4beea00238e710c8d3e0f19d) )
|
||||
ROM_LOAD16_BYTE( "763e21a", 0x180000, 0x010000, CRC(60788c29) SHA1(4faaa192d07f6acac0e7d11676146ecd0e71541f) )
|
||||
ROM_LOAD16_BYTE( "763e21e", 0x180001, 0x010000, CRC(844799ff) SHA1(8dc3ae3bb30ecb4e921a5b2068d3cd9421577844) )
|
||||
ROM_LOAD16_BYTE( "763e21b", 0x1a0000, 0x010000, CRC(1eefed61) SHA1(9c09dbff073d63384bf1ec9df4db4833afa33826) )
|
||||
ROM_LOAD16_BYTE( "763e21f", 0x1a0001, 0x010000, CRC(3aacfb10) SHA1(fb3eebf1f0850ed2f8f02cd4b5b564524e391afd) )
|
||||
ROM_LOAD16_BYTE( "763e21c", 0x1c0000, 0x010000, CRC(97e48b37) SHA1(864c73f48d839c2afeecec99605be6111f450ddd) )
|
||||
ROM_LOAD16_BYTE( "763e21g", 0x1c0001, 0x010000, CRC(74fefb12) SHA1(7746918c3ea8981c9cb2ead79a252939ba8bde3f) )
|
||||
ROM_LOAD16_BYTE( "763e21d", 0x1e0000, 0x010000, CRC(dd41569e) SHA1(065ee2de9ad6980788807cb563feccef1c3d1b9d) )
|
||||
ROM_LOAD16_BYTE( "763e21h", 0x1e0001, 0x010000, CRC(7ea52bf6) SHA1(2be93f88ccdea989b05beca13ebbfb77626ea41f) )
|
||||
ROM_LOAD16_BYTE( "763e19a", 0x200000, 0x010000, CRC(8c912c46) SHA1(e314edc39c32471c6fa2969e7c5c771c19fda88c) )
|
||||
ROM_LOAD16_BYTE( "763e19e", 0x200001, 0x010000, CRC(0eb34787) SHA1(9b8145dae210a177585e672fce30339b39c3c0f3) )
|
||||
ROM_LOAD16_BYTE( "763e19b", 0x220000, 0x010000, CRC(79960729) SHA1(f5c20ed7683aad8a435c292fbd5a1acc2a97ecee) )
|
||||
ROM_LOAD16_BYTE( "763e19f", 0x220001, 0x010000, CRC(1764ec5f) SHA1(4f7a0a3667087523a1ccdfc2d0e54a520f1216b3) )
|
||||
ROM_LOAD16_BYTE( "763e19c", 0x240000, 0x010000, CRC(f13377ac) SHA1(89f8d730cb457cc9cf55049b7002514302b2b04f) )
|
||||
ROM_LOAD16_BYTE( "763e19g", 0x240001, 0x010000, CRC(f2102e89) SHA1(41ff5d8904618a77c7c3c78c52c6f1b9c5a318fd) )
|
||||
ROM_LOAD16_BYTE( "763e19d", 0x260000, 0x010000, CRC(0b2a19f4) SHA1(3689b2c1f6227224fbcecc0d2470048a99510794) )
|
||||
ROM_LOAD16_BYTE( "763e19h", 0x260001, 0x010000, CRC(cd6d08a5) SHA1(ce13a8bba84f24e7d1fb25254e2e95f591fe1d67) )
|
||||
ROM_LOAD16_BYTE( "763e22a", 0x280000, 0x010000, CRC(16eec250) SHA1(f50375f207575e9d280285aca493902afbb7d729) )
|
||||
ROM_LOAD16_BYTE( "763e22e", 0x280001, 0x010000, CRC(c184b1c0) SHA1(d765e6eb2631b77dff5331840ac2a99cf1250362) )
|
||||
ROM_LOAD16_BYTE( "763e22b", 0x2a0000, 0x010000, CRC(1afe4b0c) SHA1(ce5a855291b443c1e16dbf54730960600c754fee) )
|
||||
ROM_LOAD16_BYTE( "763e22f", 0x2a0001, 0x010000, CRC(61f27c98) SHA1(d80af1a3e424c8dbab4fd21d494a0580ab96cd8d) )
|
||||
ROM_LOAD16_BYTE( "763e22c", 0x2c0000, 0x010000, CRC(c19b4b63) SHA1(93708b8769c44d5b93dcd2928a0d1120cc52c6ee) )
|
||||
ROM_LOAD16_BYTE( "763e22g", 0x2c0001, 0x010000, CRC(5bcbaf29) SHA1(621aa19606a15abb1539c07a033b32fc374a2d6a) )
|
||||
ROM_LOAD16_BYTE( "763e22d", 0x2e0000, 0x010000, CRC(fd5b669d) SHA1(fd5d82886708187e53c204c574ee252fc8a793af) )
|
||||
ROM_LOAD16_BYTE( "763e22h", 0x2e0001, 0x010000, CRC(9a9f45d8) SHA1(24fa9425b00441fff124eae7b40df7e65c920323) )
|
||||
|
||||
ROM_REGION( 0x20000, "k051316_1", 0 ) /* bg */
|
||||
ROM_LOAD( "763a14", 0x000000, 0x020000, CRC(60392aa1) SHA1(8499eb40a246587e24f6fd00af2eaa6d75ee6363) )
|
||||
|
||||
ROM_REGION( 0x08000, "k051316_2", 0 ) /* fg */
|
||||
/* first half empty - PCB silkscreen reads "27256/27512" */
|
||||
ROM_LOAD( "763a13", 0x000000, 0x008000, CRC(8bed8e0d) SHA1(ccff330abc23fe499e76c16cab5783c3daf155dd) )
|
||||
ROM_CONTINUE( 0x000000, 0x008000 )
|
||||
|
||||
ROM_REGION( 0x20000, "gfx4", 0 ) /* road */
|
||||
ROM_LOAD( "763a15", 0x000000, 0x020000, CRC(7110aa43) SHA1(639dc002cc1580f0530bb5bb17f574e2258d5954) )
|
||||
|
||||
ROM_REGION( 0x40000, "k007232_1", 0 ) /* Samples, 2 banks */
|
||||
ROM_LOAD( "763e11a", 0x000000, 0x010000, CRC(a60a93c8) SHA1(ce319f2b30c82f66fee0bab65d091ef4bef58a89) )
|
||||
ROM_LOAD( "763e11b", 0x010000, 0x010000, CRC(7750feb5) SHA1(e0900b8af400a50a22907ffa514847003cef342d) )
|
||||
ROM_LOAD( "763e11c", 0x020000, 0x010000, CRC(78b89bf8) SHA1(b74427e363a486d4be003df39f4ca8d10b9d5fc9) )
|
||||
ROM_LOAD( "763e11d", 0x030000, 0x010000, CRC(5f38d054) SHA1(ce0c87a7b7c0806e09cce5d48a651f12f790dd27) )
|
||||
|
||||
ROM_REGION( 0x40000, "k007232_2", 0 ) /* Samples, 2 banks */
|
||||
ROM_LOAD( "763e10a", 0x000000, 0x010000, CRC(2b1cbefc) SHA1(f23fb943c277a05f2aa4d25de692d1fb3bb752ac) )
|
||||
ROM_LOAD( "763e10b", 0x010000, 0x010000, CRC(8209c950) SHA1(944c2afb4cfc67bd243de499f5ca6a7982980f45) )
|
||||
ROM_LOAD( "763e10c", 0x020000, 0x010000, CRC(b91d6c07) SHA1(ef90457cb495750c5793cd1716d0dc44d33d0a95) )
|
||||
ROM_LOAD( "763e10d", 0x030000, 0x010000, CRC(5b465d20) SHA1(66f10b58873e738f5539b960468c7f92d07c28bc) )
|
||||
|
||||
ROM_REGION( 0x100000, "k007232_3", 0 ) /* Samples, 4 banks for each ROM */
|
||||
ROM_LOAD( "763e08a", 0x000000, 0x020000, CRC(02e4e7ef) SHA1(1622e4d85a333acae6e5f9304a037389bfeb71dc) )
|
||||
ROM_LOAD( "763e08b", 0x020000, 0x020000, CRC(94edde2f) SHA1(b124f83f271dab710d5ecb67a70cac7b4b41931c) )
|
||||
ROM_LOAD( "763e08c", 0x040000, 0x020000, CRC(b1ab1529) SHA1(962ad45fdccf6431e05eaec65d1b2f7842bddc02) )
|
||||
ROM_LOAD( "763e08d", 0x060000, 0x020000, CRC(ee8d14db) SHA1(098ba4f27b8cbb0ce017b28e5b69d6a3d2efa1df) )
|
||||
|
||||
ROM_LOAD( "763e09a", 0x080000, 0x020000, CRC(1e6628ec) SHA1(9d24da1d32cb39dcbe3d0633045054d398ca8eb8) )
|
||||
ROM_LOAD( "763e09b", 0x0a0000, 0x020000, CRC(f0c2feb8) SHA1(9454d45a97dc2e823baf68dce85acce8e82a18f2) )
|
||||
ROM_LOAD( "763e09c", 0x0c0000, 0x020000, CRC(a0ade3e4) SHA1(1c94cede76f9350769a589625fadaee855c38866) )
|
||||
ROM_LOAD( "763e09d", 0x0e0000, 0x020000, CRC(c74e484d) SHA1(dd7ef64c30443847c638291f6cd2b45a5f0b2310) )
|
||||
|
||||
ROM_REGION( 0x08000, "user1", 0 ) /* extra data for road effects? */
|
||||
ROM_LOAD( "763a12", 0x000000, 0x008000, CRC(05f1e553) SHA1(8aaeb7374bd93038c24e6470398936f22cabb0fe) )
|
||||
|
||||
ROM_REGION( 0x200, "user2", 0 )
|
||||
ROM_LOAD( "763a23.b17", 0x00000, 0x200, CRC(81c30352) SHA1(20700aed065929835ef5c3b564a6f531f0a8fedf) )
|
||||
ROM_END
|
||||
|
||||
|
||||
/* Important: you must leave extra space when listing sprite ROMs
|
||||
in a ROM module definition. This routine unpacks each sprite nibble
|
||||
into a byte, doubling the memory consumption. */
|
||||
@ -1474,4 +1637,6 @@ DRIVER_INIT_MEMBER(wecleman_state,hotchase)
|
||||
|
||||
GAMEL( 1986, wecleman, 0, wecleman, wecleman, wecleman_state, wecleman, ROT0, "Konami", "WEC Le Mans 24 (set 1)", 0, layout_wecleman )
|
||||
GAMEL( 1986, wecleman2, wecleman, wecleman, wecleman, wecleman_state, wecleman, ROT0, "Konami", "WEC Le Mans 24 (set 2)", 0, layout_wecleman ) // 1988 release
|
||||
GAMEL( 1988, hotchase, 0, hotchase, hotchase, wecleman_state, hotchase, ROT0, "Konami", "Hot Chase", 0, layout_wecleman )
|
||||
|
||||
GAMEL( 1988, hotchase, 0, hotchase, hotchase, wecleman_state, hotchase, ROT0, "Konami", "Hot Chase (set 1)", 0, layout_wecleman )
|
||||
GAMEL( 1988, hotchasea, hotchase, hotchase, hotchase, wecleman_state, hotchase, ROT0, "Konami", "Hot Chase (set 2)", 0, layout_wecleman )
|
||||
|
@ -40,6 +40,7 @@
|
||||
MP3403 TMS1100 1978, Marx Electronic Bowling -> elecbowl.c
|
||||
@MP3404 TMS1100 1978, Parker Brothers Merlin
|
||||
@MP3405 TMS1100 1979, Coleco Amaze-A-Tron
|
||||
*MP3415 TMS1100 1978, Coleco Electronic Quarterback
|
||||
@MP3438A TMS1100 1979, Kenner Star Wars Electronic Battle Command
|
||||
MP3450A TMS1100 1979, MicroVision cartridge: Blockbuster
|
||||
MP3454 TMS1100 1979, MicroVision cartridge: Star Trek Phaser Strike
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
<!-- 21 LEDs: D201-D221 -->
|
||||
|
||||
<bezel name="x.0" element="led"><bounds x="10" y="2" width="1" height="1" /></bezel> <!-- d201 -->
|
||||
<bezel name="x.0" element="led"><bounds x="1" y="10" width="1" height="1" /></bezel> <!-- d201 -->
|
||||
|
||||
<bezel name="x.0" element="led"><bounds x="10" y="2" width="1" height="1" /></bezel> <!-- d202 -->
|
||||
<bezel name="x.0" element="led"><bounds x="14" y="10" width="1" height="1" /></bezel> <!-- d203 -->
|
||||
|
Loading…
Reference in New Issue
Block a user