Added support for MPU4 layouts for games beginning with 'a', based on MFME2MAME conversion. CHR protection data is still not hooked up for many of these sets, so lamping behaviour is incorrect.

This commit is contained in:
James Wallace 2016-08-20 19:11:17 +01:00
parent 27aae4d028
commit 6746b9096d
19 changed files with 44614 additions and 40 deletions

View File

@ -1,7 +1,7 @@
// license:BSD-3-Clause
// copyright-holders:James Wallace
/* MPU4 hardware emulation
for sets see mpu4.c
for sets see the various includes prefixed 'mpu4'
*/
/* Note 19/07/11 DH
@ -252,6 +252,8 @@ TODO: - Distinguish door switches using manual
start modelling the individual hysteresis curves of filament lamps.
- Fix BwB characteriser, need to be able to calculate stabiliser bytes. Anyone fancy reading 6809 source?
- Strange bug in Andy's Great Escape - Mystery nudge sound effect is not played, mpu4 latches in silence instead (?)
- Per game inputs not currently supported, may need to do something about DIPs, inverted lines etc.
***********************************************************************************************************/
#include "emu.h"
@ -843,15 +845,23 @@ READ8_MEMBER(mpu4_state::pia_ic5_porta_r)
}
LOG(("%s: IC5 PIA Read of Port A (AUX1)\n",machine().describe_context()));
return m_aux1_port->read()|m_aux1_input;
UINT8 tempinput = m_aux1_port->read()|m_aux1_input;
if (m_aux1_invert)
{
return ~tempinput;
}
else
{
return tempinput;
}
}
WRITE8_MEMBER(mpu4_state::pia_ic5_porta_w)
{
int i;
pia6821_device *pia_ic4 = m_pia4;
if (m_hopper == HOPPER_NONDUART_A)
{
//opto line
//hopper1_drive_sensor(data&0x10);
}
switch (m_lamp_extender)
@ -859,7 +869,7 @@ WRITE8_MEMBER(mpu4_state::pia_ic5_porta_w)
case NO_EXTENDER:
if (m_led_extender == CARD_B)
{
led_write_latch(data & 0x1f, pia_ic4->a_output(),m_input_strobe);
led_write_latch(data & 0x1f, m_pia4->a_output(),m_input_strobe);
}
else if ((m_led_extender != CARD_A)&&(m_led_extender != NO_EXTENDER))
{
@ -1009,12 +1019,12 @@ WRITE8_MEMBER(mpu4_state::pia_ic5_portb_w)
{
if (m_hopper == HOPPER_NONDUART_B)
{
//hopper1_drive_motor(data &0x01)
//hopper1_drive_sensor(data &0x08)
//hopper1_drive_motor(data &0x01) motor
//hopper1_drive_sensor(data &0x08) opto
}
if (m_led_extender == CARD_A)
{
// led_write_latch(data & 0x07, pia_get_output_a(pia_ic4),m_input_strobe)
led_write_latch(data & 0x07, m_pia4->a_output(),m_input_strobe);
}
}
@ -1037,7 +1047,16 @@ READ8_MEMBER(mpu4_state::pia_ic5_portb_r)
machine().bookkeeping().coin_lockout_w(1, (m_pia5->b_output() & 0x02) );
machine().bookkeeping().coin_lockout_w(2, (m_pia5->b_output() & 0x04) );
machine().bookkeeping().coin_lockout_w(3, (m_pia5->b_output() & 0x08) );
return m_aux2_port->read() | m_aux2_input;
UINT8 tempinput = m_aux2_port->read()|m_aux2_input;
if (m_aux2_invert)
{
return ~tempinput;
}
else
{
return tempinput;
}
}
@ -1260,7 +1279,14 @@ READ8_MEMBER(mpu4_state::pia_ic8_porta_r)
This is achieved via connecting every input line to an AND gate, thus allowing two strobes
to represent each orange input bank (strobes are active low). */
m_pia5->cb1_w(m_aux2_port->read() & 0x80);
return (m_port_mux[m_input_strobe])->read();
if ( (m_input_strobe == 2) && (m_door_invert ==1) )
{
return ((m_port_mux[m_input_strobe])->read() ^ 0x01);
}
else
{
return (m_port_mux[m_input_strobe])->read();
}
}
@ -2270,6 +2296,21 @@ DRIVER_INIT_MEMBER(mpu4_state,m4_low_volt_alt)
m_low_volt_detect_disable =1;
}
DRIVER_INIT_MEMBER(mpu4_state,m4_aux1_invert)
{
m_aux1_invert =1;
}
DRIVER_INIT_MEMBER(mpu4_state,m4_aux2_invert)
{
m_aux2_invert =1;
}
DRIVER_INIT_MEMBER(mpu4_state,m4_door_invert)
{
m_aux2_invert =1;
}
DRIVER_INIT_MEMBER(mpu4_state,m4_small_extender)
{
m_lamp_extender=SMALL_CARD;
@ -2414,10 +2455,6 @@ DRIVER_INIT_MEMBER(mpu4_state,m4gambal)
DRIVER_INIT_MEMBER(mpu4_state,m_grtecp)
{
DRIVER_INIT_CALL(m4_five_reel_std);
DRIVER_INIT_CALL(m4_small_extender);
DRIVER_INIT_CALL(m4default_banks);
m_current_chr_table = grtecp_data;
}
@ -2452,6 +2489,9 @@ DRIVER_INIT_MEMBER(mpu4_state,m4default)
{
DRIVER_INIT_CALL(m4default_reels);
m_bwb_bank=0;
m_aux1_invert=0;
m_aux2_invert=0;
m_door_invert=0;
DRIVER_INIT_CALL(m4default_banks);
}
@ -2459,6 +2499,9 @@ DRIVER_INIT_MEMBER(mpu4_state,m4default)
DRIVER_INIT_MEMBER(mpu4_state,m4default_big)
{
address_space &space = m_maincpu->space(AS_PROGRAM);
m_aux1_invert=0;
m_aux2_invert=0;
m_door_invert=0;
int size = memregion( "maincpu" )->bytes();
if (size<=0x10000)

View File

@ -22,6 +22,8 @@ INPUT_PORTS_EXTERN( mpu4jackpot8tkn );
INPUT_PORTS_EXTERN( mpu4jackpot8per );
INPUT_PORTS_EXTERN( grtecp );
#include "m4aao.lh"
ROM_START( m4tst2 )
ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD( "ut2.p1", 0xE000, 0x2000, CRC(f7fb6575) SHA1(f7961cbd0801b9561d8cd2d23081043d733e1902))
@ -1515,6 +1517,38 @@ ROM_END
DRIVER_INIT_MEMBER(mpu4_state,m4aao)
{
//Derived from Against_All_Odds_(Eurotek)_[C01_800_15jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_duart_a);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =9
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=true
//DIP1_1=true
//DIP1_2=true
//DIP1_3=true
//DIP1_4=true
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 0 Stereo= 0
//Sample rate 16000
//Front door code 255 Cash door code 255
}
ROM_START( m4aao )
ROM_REGION( 0x010000, "maincpu", 0 )
@ -2603,7 +2637,7 @@ GAME(199?, m4sctagt ,0 ,mod4oki ,mpu4 , mpu4_state,m4d
/* Others */
GAME(199?, m4aao, 0, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Eurotek","Against All Odds (Eurotek) (MPU4)",GAME_FLAGS )
GAMEL(199?, m4aao, 0, mod4oki, mpu4, mpu4_state, m4aao , ROT0, "Eurotek","Against All Odds (Eurotek) (MPU4)",GAME_FLAGS, layout_m4aao )
GAME(199?, m4bandgd, 0, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Eurogames","Bands Of Gold (Eurogames) (MPU4)",GAME_FLAGS )
GAME(199?, m4bigben, 0, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Coinworld","Big Ben (Coinworld) (MPU4, set 1)",GAME_FLAGS )

View File

@ -5,6 +5,41 @@
MACHINE_CONFIG_EXTERN( mod4oki );
INPUT_PORTS_EXTERN( mpu4 );
#include "m4apachg.lh"
DRIVER_INIT_MEMBER(mpu4_state,m4apachg)
{
DRIVER_INIT_CALL(m4default);
//Derived from Apache_Gold_(Empire)_[C02_800_25jp].gam
DRIVER_INIT_CALL(m4_hopper_duart_a);
DRIVER_INIT_CALL(m4_large_extender_b);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =b
//STKEY =4
//JPKEY =a
//JPSET =5
//DIP1_0=false
//DIP1_1=true
//DIP1_2=false
//DIP1_3=true
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=true
//DIP2_4=true
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound empire
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
ROM_START( m4apachg )
ROM_REGION( 0x020000, "maincpu", 0 )
@ -823,13 +858,14 @@ ROM_END
most of these boot (after a single reset to initialize)
but have broken text, need to check VFD emulation */
GAME(199?, m4apachg, 0, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 1)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4apachga, m4apachg, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 2)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4apachgb, m4apachg, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 3)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4apachgc, m4apachg, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 4)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4apachgd, m4apachg, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 5)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4apachge, m4apachg, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 6)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4apachgf, m4apachg, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 7)", GAME_FLAGS|MACHINE_NO_SOUND )
GAMEL(199?, m4apachg, 0, mod4oki, mpu4, mpu4_state, m4apachg, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 1)", GAME_FLAGS|MACHINE_NO_SOUND, layout_m4apachg )
GAMEL(199?, m4apachga, m4apachg, mod4oki, mpu4, mpu4_state, m4apachg, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 2)", GAME_FLAGS|MACHINE_NO_SOUND, layout_m4apachg )
GAMEL(199?, m4apachgb, m4apachg, mod4oki, mpu4, mpu4_state, m4apachg, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 3)", GAME_FLAGS|MACHINE_NO_SOUND, layout_m4apachg )
GAMEL(199?, m4apachgc, m4apachg, mod4oki, mpu4, mpu4_state, m4apachg, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 4)", GAME_FLAGS|MACHINE_NO_SOUND, layout_m4apachg )
GAMEL(199?, m4apachgd, m4apachg, mod4oki, mpu4, mpu4_state, m4apachg, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 5)", GAME_FLAGS|MACHINE_NO_SOUND, layout_m4apachg )
GAMEL(199?, m4apachge, m4apachg, mod4oki, mpu4, mpu4_state, m4apachg, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 6)", GAME_FLAGS|MACHINE_NO_SOUND, layout_m4apachg )
GAMEL(199?, m4apachgf, m4apachg, mod4oki, mpu4, mpu4_state, m4apachg, ROT0, "Empire","Apache Gold (Empire) (MPU4, set 7)", GAME_FLAGS|MACHINE_NO_SOUND, layout_m4apachg )
GAME(199?, m4bangrs, 0, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Bangers 'n' Cash (Empire) (MPU4, set 1)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4bangrsa, m4bangrs, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Bangers 'n' Cash (Empire) (MPU4, set 2)", GAME_FLAGS|MACHINE_NO_SOUND )
GAME(199?, m4bangrsb, m4bangrs, mod4oki, mpu4, mpu4_state, m4default, ROT0, "Empire","Bangers 'n' Cash (Empire) (MPU4, set 3)", GAME_FLAGS|MACHINE_NO_SOUND )

View File

@ -13,7 +13,10 @@
sounds for me to know they use the AY.
*/
#include "m4actclb.lh"
#include "m4actpak.lh"
#include "m4alladv.lh"
#include "m4alpha.lh"
#include "connect4.lh"
MACHINE_CONFIG_EXTERN( mod2 );
@ -296,6 +299,37 @@ ROM_START( m4stakeua )
ROM_LOAD( "m400.chr", 0x0000, 0x000048, CRC(8f00f720) SHA1(ea59fa2a3b016a7ae83be3caf863de87ce7aeffa) )
ROM_END
DRIVER_INIT_MEMBER(mpu4_state,m4actpak)
{
//Derived from Action_Pack_(Barcrest)_[C02_800_4jp].gam
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =0
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=true
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
ROM_START( m4actpak )
ROM_REGION( 0x10000, "maincpu", 0 )
@ -308,6 +342,39 @@ ROM_START( m4actpaka )
ROM_LOAD( "action.hex", 0x0000, 0x010000, CRC(c5808b5d) SHA1(577950166c91e7f1ca390ebcf34be2da945c0a5f) )
ROM_END
DRIVER_INIT_MEMBER(mpu4_state,m4alladv)
{
//Derived from All_Cash_Advance_(Barcrest)_[C01_800_4jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =0
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound empire
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
ROM_START( m4alladv )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "c2a60p1.bin", 0x8000, 0x008000, CRC(6630b4a4) SHA1(e4b35fde196d544b41e1dc9cee94442cc5c7223f) )
@ -895,6 +962,39 @@ ROM_START( m421 )
ROM_LOAD( "twentyone.bin", 0x0000, 0x010000, CRC(243f3bc1) SHA1(141df3dcdd8d70ad26a76ec071e0cd927357ee6e) )
ROM_END
DRIVER_INIT_MEMBER(mpu4_state,m4alpha)
{
//Derived from Alphabet_(Barcrest)_[C03_1024_4jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =0
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound empire
//Standard
//Volume 0 Stereo= 0
//Sample rate 16000
//Front door code 255 Cash door code 255
}
ROM_START( m4alpha )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "alphabet.hex", 0x6000, 0x00a000, CRC(2bf0d7fd) SHA1(143543f45bfae379233a8c21959618e5ad8034e4) )
@ -1139,6 +1239,38 @@ ROM_START( m4actbnkb )
ROM_LOAD( "abank.hex", 0x6000, 0x00a000, CRC(2cd1a269) SHA1(5ce22b2736844a2de6cda04abdd0fe435391e033) ) // split me
ROM_END
DRIVER_INIT_MEMBER(mpu4_state,m4actclb)
{
//Derived from Action_Club_(Barcrest)_[C03_800_150jp]_[c].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =0
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=true
//DIP1_1=true
//DIP1_2=true
//DIP1_3=true
//DIP1_4=true
//DIP1_5=true
//DIP1_6=true
//DIP1_7=true
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=true
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 2 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
ROM_START( m4actclb )
ROM_REGION( 0x10000, "maincpu", 0 )
@ -1652,10 +1784,10 @@ GAME(199?, m4sgrabb ,m4sgrab ,mod2 ,mpu4 , mpu4_state
GAME(199?, m4stakeu ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Stake Up Club (Barcrest) (MPU4) (SU 4.4)",GAME_FLAGS )
GAME(199?, m4stakeua ,m4stakeu ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Stake Up Club (Barcrest) (MPU4) (SU 4.8)",GAME_FLAGS )
GAME(199?, m4actpak ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Action Pack (Barcrest) (MPU4) (AP 0.4)",GAME_FLAGS )
GAME(199?, m4actpaka ,m4actpak ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Action Pack (Barcrest) (MPU4) (AP 0.5)",GAME_FLAGS )
GAMEL(199?, m4actpak ,0 ,mod2 ,mpu4 , mpu4_state,m4actpak ,ROT0, "Barcrest","Action Pack (Barcrest) (MPU4) (AP 0.4)",GAME_FLAGS, layout_m4actpak )
GAMEL(199?, m4actpaka ,m4actpak ,mod2 ,mpu4 , mpu4_state,m4actpak ,ROT0, "Barcrest","Action Pack (Barcrest) (MPU4) (AP 0.5)",GAME_FLAGS, layout_m4actpak )
GAME(199?, m4alladv ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","All Cash Advance (Barcrest) (MPU4) (C2B 6.0)",GAME_FLAGS )
GAMEL(199?, m4alladv ,0 ,mod2 ,mpu4 , mpu4_state,m4alladv ,ROT0, "Barcrest","All Cash Advance (Barcrest) (MPU4) (C2B 6.0)",GAME_FLAGS, layout_m4alladv )
GAME(199?, m4clbdbl ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Club Double (Barcrest) (MPU4) (CD 1.6)",GAME_FLAGS ) // reel issues
@ -1796,7 +1928,7 @@ GAME(199?, m4tupen ,0 ,mod2 ,mpu4 , mpu4_state
GAME(199?, m421 ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Twenty One (Barcrest) (MPU4)",GAME_FLAGS ) // reel issues
GAME(199?, m4alpha ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Alphabet (Barcrest) [A4B 1.0] (MPU4)",GAME_FLAGS )
GAMEL(199?, m4alpha ,0 ,mod2 ,mpu4 , mpu4_state,m4alpha ,ROT0, "Barcrest","Alphabet (Barcrest) [A4B 1.0] (MPU4)",GAME_FLAGS, layout_m4alpha )
GAME(199?, m4bnknot ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Bank A Note (Barcrest) [BN 1.0] (MPU4)",GAME_FLAGS )
@ -1867,8 +1999,8 @@ GAME(199?, m4ttak , 0, mod2 ,mpu4, mpu4_state, m4default, ROT0, "<
GAME(199?, m4actbnka,m4actbnk ,mod2 ,mpu4jackpot8tkn , mpu4_state,m4default ,ROT0, "Barcrest","Action Bank (Barcrest) (Mod 2 type, AC3.0) (MPU4)",GAME_FLAGS ) // set jackpot key to 8GBP TOKEN & stake key
GAME(199?, m4actbnkb,m4actbnk ,mod2 ,mpu4jackpot8tkn , mpu4_state,m4default ,ROT0, "Barcrest","Action Bank (Barcrest) (Mod 2 type, ACT2.0) (MPU4)",GAME_FLAGS )
GAME(199?, m4actclb ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Action Club (Barcrest) (MPU4) (1.9)",GAME_FLAGS ) // set stake to boot
GAME(199?, m4actclba ,m4actclb ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Action Club (Barcrest) (MPU4) (1.1)",GAME_FLAGS ) // ^^
GAMEL(199?, m4actclb ,0 ,mod2 ,mpu4 , mpu4_state,m4actclb ,ROT0, "Barcrest","Action Club (Barcrest) (MPU4) (1.9)",GAME_FLAGS, layout_m4actclb ) // set stake to boot
GAMEL(199?, m4actclba ,m4actclb ,mod2 ,mpu4 , mpu4_state,m4actclb ,ROT0, "Barcrest","Action Club (Barcrest) (MPU4) (1.1)",GAME_FLAGS, layout_m4actclb ) // ^^
GAME(199?, m4bluemn ,0 ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Blue Moon (Barcrest) (MPU4) (BLU 2.3)",GAME_FLAGS )
GAME(199?, m4bluemna ,m4bluemn ,mod2 ,mpu4 , mpu4_state,m4default ,ROT0, "Barcrest","Blue Moon (Barcrest) (MPU4) (BLU 2.1)",GAME_FLAGS )

View File

@ -24,6 +24,14 @@ INPUT_PORTS_EXTERN( grtecp );
INPUT_PORTS_EXTERN( mpu4jackpot8tkn );
INPUT_PORTS_EXTERN( mpu4jackpot8per );
#include "m4actbnk.lh"
#include "m4andybt.lh"
#include "m4andycp.lh"
#include "m4andyfh.lh"
#include "m4andyge.lh"
#include "m4addr.lh"
#include "m4tenten.lh"
DRIVER_INIT_MEMBER(mpu4_state,m4debug)
{
// many original barcrest / bwb sets have identification info around here
@ -91,12 +99,81 @@ DRIVER_INIT_MEMBER(mpu4_state,m4_showstring_big)
DRIVER_INIT_CALL(m4default_big);
DRIVER_INIT_CALL(m4debug);
}
/* Explanation of automatically generated descriptions
DRIVER_INIT_MEMBER(mpu4_state,m_grtecpss)
DRIVER_INIT_MEMBER(mpu4_state,PARENT NAME)
{
DRIVER_INIT_CALL(m_grtecp);
DRIVER_INIT_CALL(m4debug);
//Derived from Andy_Capp_(Barcrest)_[C05_v1-0_1024_6jp].gam - MFME layout name used
//any needed data for hoppers, extenders, reels are here, alongside wiring changes such as low voltage detection, or the AUX settings
//PCKEY =9 default setting in hex
//STKEY =0 default setting in hex
//JPKEY =0 default setting in hex
//JPSET =0 default setting in hex
Default DIP settings used in the layouts
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=true
//DIP2_6=false
//DIP2_7=false
//Sound empire - if set, this is the sound board type (although this is often ignored
//Standard - or Datapak
//Volume 0 Stereo= 1 - other sound settings
//Sample rate 16000
//Front door code 39 Cash door code 38 - Button numbers for doors, just in case
}
*/
DRIVER_INIT_MEMBER(mpu4_state,m4andycp)
{
//Derived from Andy_Capp_(Barcrest)_[C05_v1-0_1024_6jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4_small_extender);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =9
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=true
//DIP2_6=false
//DIP2_7=false
//Sound empire
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 39 Cash door code 38
}
#define M4ANDYCP_EXTRA_ROMS \
ROM_REGION( 0x48, "fakechr", 0 ) \
ROM_LOAD( "ac.chr", 0x0000, 0x000048, CRC(87808826) SHA1(df0915a6f89295efcd10e6a06bfa3d3fe8fef160) ) \
@ -111,7 +188,7 @@ DRIVER_INIT_MEMBER(mpu4_state,m_grtecpss)
ROM_LOAD( name, offset, length, hash ) \
M4ANDYCP_EXTRA_ROMS \
ROM_END \
GAME(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4_showstring,ROT0,company,title,GAME_FLAGS )
GAMEL(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4andycp,ROT0,company,title,GAME_FLAGS, layout_m4andycp )
// "(C)1994 B.W.B." and "AC101.0"
GAME_CUSTOM( 1994, m4andycp, 0, "ac10.hex", 0x0000, 0x010000, CRC(0e250923) SHA1(9557315cca7a47c307e811d437ff424fe77a2843), "Bwb", "Andy Capp (Bwb / Barcrest) (MPU4) (AC10)" )
@ -436,6 +513,42 @@ GAME_CUSTOM( 1991, m4rhog_h15, m4rhog, "rhog20_11", 0x0
GAME_CUSTOM( 1995, m4rhog_roc, m4rhog, "roadhog5p4std.bin", 0x0000, 0x010000, BAD_DUMP CRC(0ff60341) SHA1(c12d5b160d9e47a6f1aa6f378c2a70186be6bdff), "Bwb","Road Hog (Bwb / Barcrest) (MPU4) (ROC 2.0, bad)" )
DRIVER_INIT_MEMBER(mpu4_state,m4andyge)
{
//Derived from Andy's_Great_Escape_(Barcrest)_[C02_1024_10jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4_small_extender);
DRIVER_INIT_CALL(m4_five_reel_std);
DRIVER_INIT_CALL(m_grtecp);
//PCKEY =1
//STKEY =3
//JPKEY =7
//JPSET =3
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound other
//Standard
//Volume 1 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
#define M4ANDYGE_EXTRA_ROMS \
ROM_REGION( 0x1200, "plds", 0 ) /* PAL16V8 PLD, like others - CHR? Guess it should be here... */ \
ROM_LOAD( "age.bin", 0x0000, 0x000117, CRC(901359e5) SHA1(7dbcd6023e7ce68f4aa7f191f572d74f21f978aa) ) \
@ -452,7 +565,7 @@ GAME_CUSTOM( 1995, m4rhog_roc, m4rhog, "roadhog5p4std.bin", 0x0
ROM_LOAD( name, offset, length, hash ) \
M4ANDYGE_EXTRA_ROMS \
ROM_END \
GAME(year, setname, parent ,mod4oki_5r ,grtecp , mpu4_state,m_grtecpss ,ROT0,company,title,GAME_FLAGS )
GAMEL(year, setname, parent ,mod4oki_5r ,grtecp , mpu4_state,m4andyge ,ROT0,company,title,GAME_FLAGS, layout_m4andyge )
// "(C)1991 BARCREST" and "AN2 0.3"
GAME_CUSTOM( 1991, m4andyge, 0, "an2s.p1", 0x0000, 0x010000, CRC(65399fa0) SHA1(ecefdf63e7aa477001fa530ed340e90e85252c3c), "Barcrest","Andy's Great Escape (Barcrest) (MPU4) (AN2 0.3, set 1)" ) // one of these is probably hacked
GAME_CUSTOM( 1991, m4andygen2_a, m4andyge, "agesc20p", 0x0000, 0x010000, CRC(94fec0f3) SHA1(7678e01a4e0fcc4136f6d4a668c4d1dd9a8f1246), "Barcrest","Andy's Great Escape (Barcrest) (MPU4) (AN2 0.3, set 2)" ) // or has the wrong id strings
@ -522,13 +635,47 @@ GAME_CUSTOM( 199?, m4andyge_h3, m4andyge, "age_20_.8", 0
GAME_CUSTOM( 199?, m4andyge_h4, m4andyge, "age20_101", 0x0000, 0x010000, CRC(7e3674f0) SHA1(351e353da24b63d2ef7cb09690b770b26505569a), "hack?","Andy's Great Escape (Bwb / Barcrest) (MPU4) (8V1 0.3, hack?, set 2)" )
DRIVER_INIT_MEMBER(mpu4_state,m4addr)
{
//Derived from Adders_&_Ladders_(Barcrest)_[C03_800_6jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =0
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
#undef GAME_CUSTOM
#define GAME_CUSTOM(year, setname,parent,name,offset,length,hash,company,title) \
ROM_START( setname ) \
ROM_REGION( 0x10000, "maincpu", 0 ) \
ROM_LOAD( name, offset, length, hash ) \
ROM_END \
GAME(year, setname, parent ,mod2 ,mpu4 , mpu4_state,m4_showstring ,ROT0,company,title,GAME_FLAGS )
GAMEL(year, setname, parent ,mod2 ,mpu4 , mpu4_state,m4addr ,ROT0,company,title,GAME_FLAGS, layout_m4addr )
// all the adders and ladders sets kill the cpu, end up jumping to the ram area after an RTI/RTS combo? are we saturating the CPU with too many interrupts or is there a bug?
// also the BWB versioning is.. illogical
// I think this is a mod2, but because it doesn't boot I haven't moved it to mpu4mod2sw.c yet
@ -3443,6 +3590,39 @@ GAME_CUSTOM( 199?, m4luckst__au, m4luckst, "lstrikegame10-8t.bin", 0x0000, 0
GAME_CUSTOM( 199?, m4luckst__b, m4luckst, "ls15t", 0x0000, 0x020000, CRC(20447a20) SHA1(ca2ba566317ca87afcc2501e551c1326b9712526), "hack","Lucky Strike (Barcrest) (MPU4) (LSS 0.6, hack, set 2)" )
DRIVER_INIT_MEMBER(mpu4_state,m4tenten)
{
DRIVER_INIT_CALL(m4default);
//Derived from 10_x_10_(Barcrest)_[C01_v1-0_1024_10jp].gam
DRIVER_INIT_CALL(m4_hopper_duart_a);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =9
//STKEY =3
//JPKEY =7
//JPSET =3
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=true
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000 LVD= 0
//Front door code 39 Cash door code 38
}
#define M4TENTEN_EXTRA_ROMS \
ROM_REGION( 0x080000, "msm6376", 0 ) \
ROM_LOAD( "tttsnd01.p1", 0x0000, 0x080000, CRC(5518474c) SHA1(0b7e98e33f62d80882f2b0b4af0c9056f1ffb78d) )
@ -3453,7 +3633,7 @@ GAME_CUSTOM( 199?, m4luckst__b, m4luckst, "ls15t", 0x0000, 0
ROM_LOAD( name, offset, length, hash ) \
M4TENTEN_EXTRA_ROMS \
ROM_END \
GAME(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4_showstring ,ROT0,company,title,GAME_FLAGS )
GAMEL(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4tenten ,ROT0,company,title,GAME_FLAGS, layout_m4tenten )
// "(C)1991 BARCREST" and "T20 0.2"
GAME_CUSTOM( 199?, m4tenten, 0, "t2002s.p1", 0x0000, 0x010000, CRC(6cd9fa10) SHA1(8efe36e3fc5b709fa4363194634686d62b5d6609), "Barcrest","10 X 10 (Barcrest) (MPU4) (T20 0.2)" )
@ -3529,6 +3709,39 @@ GAME_CUSTOM( 199?, m4tenten__a0, m4tenten, "tst01r.p1", 0x0000, 0x010000,
GAME_CUSTOM( 199?, m4tenten__a2, m4tenten, "tst01y.p1", 0x0000, 0x010000, CRC(e3ba4b94) SHA1(a7b13c172e5177711ddb81ef1ea77e27e14bf470), "Barcrest","10 X 10 (Barcrest) (MPU4) (set 66)" )
DRIVER_INIT_MEMBER(mpu4_state,m4andyfh)
{
//Derived from Andy's_Full_House_(Barcrest)_[C01_800_10jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =b
//STKEY =2
//JPKEY =7
//JPSET =3
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=true
//DIP2_1=true
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=true
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
#define M4ANDYFH_EXTRA_ROMS \
ROM_REGION( 0x100000, "msm6376", 0 ) \
ROM_LOAD( "afhsnd1.bin", 0x000000, 0x080000, CRC(ce0b1890) SHA1(224d05f936a1b6f84ad682c282c557e87ad8931f) ) \
@ -3540,7 +3753,7 @@ GAME_CUSTOM( 199?, m4tenten__a2, m4tenten, "tst01y.p1", 0x0000, 0x010000,
ROM_LOAD( name, offset, length, hash ) \
M4ANDYFH_EXTRA_ROMS \
ROM_END \
GAME(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4_showstring ,ROT0,company,title,GAME_FLAGS )
GAMEL(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4andyfh ,ROT0,company,title,GAME_FLAGS, layout_m4andyfh )
// "(C)1991 BARCREST" and "AFH 0.1"
@ -4450,6 +4663,38 @@ GAME_CUSTOM( 199?, m4shocm__h, m4shocm, "scmj.p1", 0x0000, 0x020000, CRC(ed
GAME_CUSTOM( 199?, m4shocm__i, m4shocm, "scmy.p1", 0x0000, 0x020000, CRC(044a0065) SHA1(e5deb75e7d05787f1e820352aec99abebd3530b6), "Barcrest","Showcase Crystal Maze (Barcrest) (MPU4) (set 10)" )
GAME_CUSTOM( 199?, m4shocm__j, m4shocm, "scmk.p1", 0x0000, 0x020000, CRC(83a9209b) SHA1(011ecd85c435c02b4868ed74012e16c73beb6e99), "Barcrest","Showcase Crystal Maze (Barcrest) (MPU4) (set 11)" )
DRIVER_INIT_MEMBER(mpu4_state,m4actbnk)
{
//Derived from Action_Bank_(Barcrest)_[C04_1024_8jp].gam
DRIVER_INIT_CALL(m4default);
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4default_reels);
//PCKEY =a
//STKEY =2
//JPKEY =6
//JPSET =1
//DIP1_0=false
//DIP1_1=false
//DIP1_2=false
//DIP1_3=false
//DIP1_4=false
//DIP1_5=false
//DIP1_6=false
//DIP1_7=false
//DIP2_0=false
//DIP2_1=false
//DIP2_2=false
//DIP2_3=false
//DIP2_4=false
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 39 Cash door code 38
}
#define M4ACTBNK_EXTRA_ROMS \
ROM_REGION( 0x100000, "msm6376", 0 ) \
@ -4462,7 +4707,7 @@ GAME_CUSTOM( 199?, m4shocm__j, m4shocm, "scmk.p1", 0x0000, 0x020000, CRC(83
ROM_LOAD( name, offset, length, hash ) \
M4ACTBNK_EXTRA_ROMS \
ROM_END \
GAME(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4_showstring ,ROT0,company,title,GAME_FLAGS )
GAMEL(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4actbnk ,ROT0,company,title,GAME_FLAGS, layout_m4actbnk )
// these require a jackpot key to be inserted
// "(C)1993 BARCREST" and "ACT 0.7"
@ -5082,6 +5327,40 @@ GAME_CUSTOM( 199?, m4typcl__b, m4typcl, "ctp13f.p1", 0x0000, 0x020000, CR
GAME_CUSTOM( 199?, m4typcl__d, m4typcl, "ntp02.p1", 0x0000, 0x020000, CRC(6063e27d) SHA1(c99599fbc7146d8fcf62432994098dd51250b17b), "Barcrest","Take Your Pick Club (Barcrest) (MPU4) (NTP 0.2)" )
DRIVER_INIT_MEMBER(mpu4_state,m4andybt)
{
DRIVER_INIT_CALL(m4default_big);
//Derived from Andy's_Big_Time_(Barcrest)_[C03_800_250jp]_[c].gam
DRIVER_INIT_CALL(m4_hopper_tubes);
DRIVER_INIT_CALL(m4_large_extender_b);
DRIVER_INIT_CALL(m4_five_reel_rev);
//PCKEY =0
//STKEY =0
//JPKEY =0
//JPSET =0
//DIP1_0=true
//DIP1_1=true
//DIP1_2=true
//DIP1_3=true
//DIP1_4=true
//DIP1_5=true
//DIP1_6=true
//DIP1_7=true
//DIP2_0=false
//DIP2_1=true
//DIP2_2=true
//DIP2_3=false
//DIP2_4=false
//DIP2_5=false
//DIP2_6=false
//DIP2_7=false
//Sound barcrest1
//Standard
//Volume 0 Stereo= 1
//Sample rate 16000
//Front door code 0 Cash door code 0
}
#define M4ANDYBT_EXTRA_ROMS \
ROM_REGION( 0x48, "fakechr", 0 ) \
ROM_LOAD( "abt18s.chr", 0x0000, 0x000048, CRC(68007536) SHA1(72f7a76a1ba1c8ac94de425892780ffe78269513) ) \
@ -5095,7 +5374,7 @@ GAME_CUSTOM( 199?, m4typcl__d, m4typcl, "ntp02.p1", 0x0000, 0x020000, CR
ROM_LOAD( name, offset, length, hash ) \
M4ANDYBT_EXTRA_ROMS \
ROM_END \
GAME(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4_showstring_big ,ROT0,company,title,GAME_FLAGS )
GAMEL(year, setname, parent ,mod4oki ,mpu4 , mpu4_state,m4andybt ,ROT0,company,title,GAME_FLAGS, layout_m4andybt )
// "(C)1991 BARCREST" and "ABT 1.8"
GAME_CUSTOM( 199?, m4andybt, 0, "abt18s.p1", 0x0000, 0x020000, CRC(625263e4) SHA1(23fa0547164cc1f9b7c6cd26e06b0d779bf0329d), "Barcrest","Andy's Big Time Club (Barcrest) (MPU4) (ABT 1.8)" )

View File

@ -190,6 +190,9 @@ public:
DECLARE_DRIVER_INIT(m4default_banks);
DECLARE_DRIVER_INIT(m4default_reels);
DECLARE_DRIVER_INIT(m4_low_volt_alt);
DECLARE_DRIVER_INIT(m4_aux1_invert);
DECLARE_DRIVER_INIT(m4_aux2_invert);
DECLARE_DRIVER_INIT(m4_door_invert);
DECLARE_DRIVER_INIT(m4_five_reel_std);
DECLARE_DRIVER_INIT(m4_five_reel_rev);
DECLARE_DRIVER_INIT(m4_five_reel_alt);
@ -215,16 +218,28 @@ public:
DECLARE_DRIVER_INIT(m4tst);
DECLARE_DRIVER_INIT(m_ccelbr);
DECLARE_DRIVER_INIT(m4gambal);
DECLARE_DRIVER_INIT(m_grtecp);
DECLARE_DRIVER_INIT(m4debug);
DECLARE_DRIVER_INIT(m4_showstring);
DECLARE_DRIVER_INIT(m4_showstring_mod4yam);
DECLARE_DRIVER_INIT(m4_debug_mod4yam);
DECLARE_DRIVER_INIT(m4_showstring_mod2);
DECLARE_DRIVER_INIT(m4_showstring_big);
DECLARE_DRIVER_INIT(m_grtecpss);
DECLARE_DRIVER_INIT(connect4);
DECLARE_DRIVER_INIT(m4altreels);//legacy, will be removed once things are sorted out
DECLARE_DRIVER_INIT(m_grtecp);//legacy, will be removed once things are sorted out RE: CHR
DECLARE_DRIVER_INIT(m4tenten);
DECLARE_DRIVER_INIT(m4actbnk);
DECLARE_DRIVER_INIT(m4actclb);
DECLARE_DRIVER_INIT(m4actpak);
DECLARE_DRIVER_INIT(m4addr);
DECLARE_DRIVER_INIT(m4aao);
DECLARE_DRIVER_INIT(m4alladv);
DECLARE_DRIVER_INIT(m4alpha);
DECLARE_DRIVER_INIT(m4andycp);
DECLARE_DRIVER_INIT(m4andybt);
DECLARE_DRIVER_INIT(m4andyfh);
DECLARE_DRIVER_INIT(m4andyge);
DECLARE_DRIVER_INIT(m4apachg);
DECLARE_MACHINE_START(mod2);
DECLARE_MACHINE_RESET(mpu4);
DECLARE_MACHINE_START(mpu4yam);
@ -311,6 +326,9 @@ protected:
int m_led_lamp;
int m_link7a_connected;
int m_low_volt_detect_disable;
int m_aux1_invert;
int m_aux2_invert;
int m_door_invert;
emu_timer *m_ic24_timer;
int m_expansion_latch;
int m_global_volume;

1272
src/mame/layout/m4aao.lay Normal file

File diff suppressed because it is too large Load Diff

3122
src/mame/layout/m4actbnk.lay Normal file

File diff suppressed because it is too large Load Diff

4032
src/mame/layout/m4actclb.lay Normal file

File diff suppressed because it is too large Load Diff

3792
src/mame/layout/m4actpak.lay Normal file

File diff suppressed because it is too large Load Diff

4412
src/mame/layout/m4addr.lay Normal file

File diff suppressed because it is too large Load Diff

1992
src/mame/layout/m4alladv.lay Normal file

File diff suppressed because it is too large Load Diff

4476
src/mame/layout/m4alpha.lay Normal file

File diff suppressed because it is too large Load Diff

6590
src/mame/layout/m4andybt.lay Normal file

File diff suppressed because it is too large Load Diff

3446
src/mame/layout/m4andycp.lay Normal file

File diff suppressed because it is too large Load Diff

1324
src/mame/layout/m4andyfh.lay Normal file

File diff suppressed because it is too large Load Diff

2694
src/mame/layout/m4andyge.lay Normal file

File diff suppressed because it is too large Load Diff

4108
src/mame/layout/m4apachg.lay Normal file

File diff suppressed because it is too large Load Diff

2772
src/mame/layout/m4tenten.lay Normal file

File diff suppressed because it is too large Load Diff