Skip to content

Commit

Permalink
New clones marked not working
Browse files Browse the repository at this point in the history
-----------------------------
Hamburger House 9 [Taksangs, Charlie]
  • Loading branch information
Osso13 committed Jul 25, 2024
1 parent e0bba43 commit 6d62d34
Show file tree
Hide file tree
Showing 4 changed files with 70 additions and 22 deletions.
48 changes: 48 additions & 0 deletions src/mame/igs/goldstar.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ class cmaster_state : public goldstar_state
void init_cmtetriskr();
void init_ll3();
void init_hamhouse();
void init_hamhouse9();
void init_cmast91();
void init_cll();
void init_animalhs();
Expand Down Expand Up @@ -14535,6 +14536,39 @@ ROM_START( hamhouse )
ROM_LOAD( "atf16v8b.u35", 0x00200, 0x00117, CRC(a883a133) SHA1(d0b1ee535d60bffdc03a8ce94e6a0274ae6621d5) )
ROM_END

ROM_START( hamhouse9 ) // basically same PCB as above but this has standard PROMs
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "am27c512.u33", 0x00000, 0x10000, CRC(9d0653b6) SHA1(81a015b0b78c75f7c998064fa4eb337da19d0df0) )

ROM_REGION( 0x18000, "gfx1", 0 )
ROM_LOAD( "m27c256b.u28", 0x00000, 0x08000, CRC(e8d6be2b) SHA1(95ba907e4f969816638d5021606348d69a45fedc) )
ROM_LOAD( "tms27c256.u42", 0x08000, 0x08000, CRC(f83d5131) SHA1(3848efd58e3c5a54a947de3a3ea4e96265cd8af8) )
ROM_LOAD( "m27256.u43", 0x10000, 0x08000, CRC(a5105928) SHA1(ea3a4fb7a0ca3e14da001beb5aca03bfbd43410d) )

ROM_REGION( 0x08000, "gfx2", 0 )
ROM_LOAD( "intel27128.u24", 0x00000, 0x02000, CRC(69ce2859) SHA1(68cb0c81a471d09f173d8534d94877f3f5c276f4) ) // 1ST AND 2ND HALF IDENTICAL
ROM_IGNORE( 0x2000 )
ROM_LOAD( "hn4827128g.u26", 0x02000, 0x02000, CRC(6ba11862) SHA1(ce34727190689df8d591147dc342fe7bf230ce26) ) // 1ST AND 2ND HALF IDENTICAL
ROM_IGNORE( 0x2000 )
ROM_LOAD( "am27c128.u10", 0x04000, 0x02000, CRC(69ce2859) SHA1(68cb0c81a471d09f173d8534d94877f3f5c276f4) ) // 1ST AND 2ND HALF IDENTICAL
ROM_IGNORE( 0x2000 )
ROM_LOAD( "tms27c128.u11", 0x06000, 0x02000, CRC(61a17c65) SHA1(b1212c45c9c98aba50aeed6a38e17960f868ccd3) ) // 1ST AND 2ND HALF IDENTICAL
ROM_IGNORE( 0x2000 )

ROM_REGION( 0x10000, "user1", ROMREGION_ERASE00 )

ROM_REGION( 0x200, "proms", 0 )
ROM_LOAD( "am27s21.u55", 0x0000, 0x0100, CRC(161d189e) SHA1(5e13133871522e5d4c295fa7a02727da95d74e44) )
ROM_LOAD( "am27s21.u56", 0x0100, 0x0100, CRC(21eb5b19) SHA1(9b8425bdb97f11f4855c998c7792c3291fd07470) )

ROM_REGION( 0x100, "proms2", 0 )
ROM_LOAD( "am27s21.u39", 0x0000, 0x0100, CRC(50ec383b) SHA1(ae95b92bd3946b40134bcdc22708d5c6b0f4c23e) )

ROM_REGION( 0x400, "plds", ROMREGION_ERASE00 )
ROM_LOAD( "atf16v8b.u15", 0x000, 0x117, CRC(9a62f369) SHA1(c027a7e3dc12506ed45ed936b9f650549651be4f) )
ROM_LOAD( "atf16v8b.u35", 0x200, 0x117, CRC(a883a133) SHA1(d0b1ee535d60bffdc03a8ce94e6a0274ae6621d5) )
ROM_END

/*
New Lucky 8 Lines / New Super 8 Lines.

Expand Down Expand Up @@ -20884,6 +20918,19 @@ void cmaster_state::init_hamhouse()
m_palette->update();
}

void cmaster_state::init_hamhouse9()
{
init_cmv4();

uint8_t *rom = memregion("maincpu")->base();
std::vector<uint8_t> buffer(0x10000);

memcpy(&buffer[0], rom, 0x10000);

for (int i = 0; i < 0x10000; i++)
rom[i] = buffer[bitswap<24>(i, 23, 22, 21, 20, 19, 18, 17, 16, 15, 13, 12, 14, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)];
}

void cmaster_state::init_cmpacmanb()
{
uint8_t *rom = memregion("maincpu")->base();
Expand Down Expand Up @@ -22067,6 +22114,7 @@ GAMEL( 1991, srmagic, cmv4, cm, cmv4, cmaster_state, empty_ini
GAMEL( 1991, cmv4zg, cmv4, cmv4zg, cmv4, cmaster_state, empty_init, ROT0, "hack", "Cherry Bonus III (Ziogas V4.1 hack, set 1)", MACHINE_NOT_WORKING, layout_cmv4 ) // needs correct I/O, maybe slightly protected
GAMEL( 1991, cmv4zga, cmv4, cmv4zg, cmv4, cmaster_state, empty_init, ROT0, "hack", "Cherry Bonus III (Ziogas V4.1 hack, set 2)", MACHINE_NOT_WORKING, layout_cmv4 ) // needs correct I/O, maybe slightly protected
GAMEL( 199?, hamhouse, cmaster, cm, cmaster, cmaster_state, init_hamhouse, ROT0, "bootleg", "Hamburger House", MACHINE_NOT_WORKING, layout_cmaster ) // needs correct I/O
GAMEL( 199?, hamhouse9, cmaster, cm, cmaster, cmaster_state, init_hamhouse9, ROT0, "bootleg", "Hamburger House 9", MACHINE_IMPERFECT_COLORS | MACHINE_NOT_WORKING, layout_cmaster ) // bad reel colors, needs correct I/O

GAMEL( 1991, tonypok, 0, cm, tonypok, cmaster_state, init_tonypok, ROT0, "Corsica", "Poker Master (Tony-Poker V3.A, hack?)", 0 , layout_tonypok )
GAME( 1998, jkrmast, 0, jkrmast, jkrmast, goldstar_state, init_jkrmast, ROT0, "Pick-A-Party USA", "Joker Master 2000 Special Edition (V515)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_COLORS | MACHINE_NOT_WORKING ) // needs correct FG colors and controls
Expand Down
1 change: 1 addition & 0 deletions src/mame/mame.lst
Original file line number Diff line number Diff line change
Expand Up @@ -20032,6 +20032,7 @@ goldfrui // bootleg
goldstar // (c) 198? IGS
goldstbl // (c) 198? IGS
hamhouse // bootleg
hamhouse9 // bootleg
jkrmast // (c) 199? unknown
jkrmasta // (c) 199? unknown
kkotnoli // 198? south korean hack
Expand Down
30 changes: 14 additions & 16 deletions src/mame/merit/merit3xx.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ NOTE: From ma7558r4 set, U12 contains:
"PERIOD RESET TO TEST TOUCHSCREEN"
"BOOKS - TO CALIBRATE TOUCHSCREEN"
"AUDIT KEY - TO EXIT" (another internal and unmapped button??)
The touchscreen is controlled through the Maxim MAX232CPE RS-232 on the CRT-352 rom board?
The touchscreen is controlled through the Maxim MAX232CPE RS-232 on the CRT-352 ROM board?
===================================================================================================
Expand Down Expand Up @@ -245,7 +245,7 @@ Other: Dallas DS1225Y-200 8Kx8 NVRAM
Dallas DS1230Y-200 32Kx8 NVRAM
Dallas DS1216 2Kx8 SmartWatch RTC
PC16550DN UART with FIFO clocked @ 1.84MHz
Maxim MAX232CPE RS-232 Line Transmitter/Reciver
Maxim MAX232CPE RS-232 Line Transmitter/Receiver
8 switch DIP switch block labeled SW1 (enable/disable games)
Connectors:
Expand Down Expand Up @@ -986,9 +986,8 @@ void merit3xx_state::main_map(address_map &map)
{
// map.unmap_value_high();
map(0x0000, 0x7fff).bankr("rombank");
map(0x8000, 0x9fff).ram().share("nvram"); // TODO: reenable NVRAM, currently m6710a doesn't like it at all
// definitely accesses RAM here, would drop to "RAM error" with unmap high
map(0xa000, 0xbfff).ram();
map(0x8000, 0x9fff).ram();
map(0xa000, 0xbfff).ram().share("nvram");
map(0xc000, 0xdfff).ram().share("charram");
map(0xe000, 0xffff).ram().share("attrram");
}
Expand Down Expand Up @@ -1020,7 +1019,7 @@ void merit3xx_state::crt352_io_map(address_map &map)
map(0x20, 0x20).w(FUNC(merit3xx_state::crt352_rombank_w));
}

// currently geared towards 'Joker Poker' in ma6710a
// currently geared towards 'Video Poker' in general and also the m6710 "family" sets

static INPUT_PORTS_START( merit3xx )
PORT_START("IN0")
Expand Down Expand Up @@ -1101,7 +1100,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( ma6711 )
PORT_INCLUDE( merit3xx )

PORT_MODIFY("IN1")
PORT_MODIFY("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Discard 1 / Double")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Discard 2")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Discard 3 / Split")
Expand All @@ -1111,8 +1110,8 @@ static INPUT_PORTS_START( ma6711 )
PORT_MODIFY("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) // gives 1 credit at a time (25 cents)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) // gives 4 credits at a time ($1.00)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 2") PORT_CODE(KEYCODE_U) PORT_TOGGLE // Uknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 3") PORT_CODE(KEYCODE_Y) PORT_TOGGLE // Uknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 2") PORT_CODE(KEYCODE_U) PORT_TOGGLE // Unknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 3") PORT_CODE(KEYCODE_Y) PORT_TOGGLE // Unknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) // gives 4 credits at a time ($1.00)
INPUT_PORTS_END

Expand All @@ -1133,8 +1132,8 @@ static INPUT_PORTS_START( ma9800 )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) // gives 1 credit at a time (25 cents)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) // gives 4 credits at a time ($1.00)
// PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_STAND ) // Button labeled BEFEJEZ
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 2") PORT_CODE(KEYCODE_U) PORT_TOGGLE // Uknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 3") PORT_CODE(KEYCODE_Y) PORT_TOGGLE // Uknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 2") PORT_CODE(KEYCODE_U) PORT_TOGGLE // Unknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Door 3") PORT_CODE(KEYCODE_Y) PORT_TOGGLE // Unknown what these 2 are but will give DOOR OPEN errors
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) // gives 4 credits at a time ($1.00)
INPUT_PORTS_END

Expand Down Expand Up @@ -1173,8 +1172,7 @@ void merit3xx_state::crt307(machine_config &config)
m_maincpu->set_addrmap(AS_PROGRAM, &merit3xx_state::main_map);
m_maincpu->set_addrmap(AS_IO, &merit3xx_state::crt307_io_map);

// TODO: reenable NVRAM, currently m6710a doesn't like it at all
//NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);

i8255_device &ppi0(I8255(config, "ppi0"));
ppi0.in_pa_callback().set_ioport("IN0");
Expand Down Expand Up @@ -1273,7 +1271,7 @@ ROM_END
ROM_START( ma6711 ) // CRT-350 mainboard + CRT-307 rev A, coin hopper - no printer
ROM_REGION(0x20000, "maincpu", 0)
ROM_LOAD( "6711-14_r0a.u1", 0x00000, 0x10000, CRC(cfb47c33) SHA1(d1638dbc9f6cec159b1f638f92974798e7e93f0b) ) // English / French set
ROM_LOAD( "6711-14_r0a.u2", 0x10000, 0x10000, CRC(46d11f57) SHA1(ef5f45812429a662cd89df1d9b94dc96cbb2c531) ) // 6710-14 R0A 100692
ROM_LOAD( "6711-14_r0a.u2", 0x10000, 0x10000, CRC(46d11f57) SHA1(ef5f45812429a662cd89df1d9b94dc96cbb2c531) ) // 6711-14 R0A 100692

ROM_REGION( 0x30000, "gfx1", 0 )
ROM_LOAD( "mltp_u46.u46", 0x00000, 0x10000, CRC(77d89071) SHA1(bf5207aaca2831cbc45734f8cd4ef2468cfd7191) )
Expand Down Expand Up @@ -1304,10 +1302,10 @@ ROM_START( ma9800 ) // CRT-350 mainboard + CRT-307 rev A, coin hopper - no print
ROM_LOAD( "mltp_u47.u47", 0x10000, 0x10000, CRC(efdfad6a) SHA1(2f6d2a601f60351d3b5ff735a96bde1e11f2bb74) )
ROM_LOAD( "mltp_u48.u48", 0x20000, 0x10000, CRC(daeb9a0e) SHA1(d209ae3f802a5ceeb92e41ed71415629892bce91) )

ROM_REGION( 0x2000, "nvram", 0 )
ROM_REGION( 0x2000, "nvram", ROMREGION_ERASE00 )
ROM_LOAD( "dallas_ds1225y.u7", 0x0000, 0x2000, NO_DUMP )

ROM_REGION( 0x8000, "nvram2", 0 )
ROM_REGION( 0x8000, "nvram2", ROMREGION_ERASE00 )
ROM_LOAD( "dallas_ds1235yw.u6", 0x0000, 0x8000, NO_DUMP )
ROM_END

Expand Down
13 changes: 7 additions & 6 deletions src/mame/skeleton/boo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,14 @@
/*
Boo 1000 by JK Amusement
PCB pic is very blurry. Components which could be identified:
Components which could be identified:
Motorola MC68HC11A1 CPU
Winbond WF19054 sound chip (AY-8910 compatible)
12 (?) MHz XTAL
Altera Max (exact type unreadable)
Altera Acex (exact type unreadable)
HM6264ALP-12 SRAM
16 MHz XTAL
Altera Max EPM7064
Altera Acex EP1K50QC208-3
3x 8-DIP banks
4-DIP bank
*/
Expand Down Expand Up @@ -128,7 +129,7 @@ GFXDECODE_END

void boo_state::boo(machine_config &config)
{
MC68HC11A1(config, m_maincpu, 12_MHz_XTAL); // TODO: verify XTAL if better pics appear
MC68HC11A1(config, m_maincpu, 16_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &boo_state::program_map);

// TODO: everything
Expand All @@ -145,7 +146,7 @@ void boo_state::boo(machine_config &config)

SPEAKER(config, "mono").front_center();

AY8910(config, "ay", 12_MHz_XTAL / 12).add_route(ALL_OUTPUTS, "mono", 0.30); // clock and divisor not verified
AY8910(config, "ay", 16_MHz_XTAL / 16).add_route(ALL_OUTPUTS, "mono", 0.30); // divisor not verified
}


Expand Down

0 comments on commit 6d62d34

Please sign in to comment.