New working machines

--------------------
Le Super Pendu (V1, words set #1) [Roberto Fresca, Grull Osgo, Jeff Hamelin]
Le Super Pendu (V1, words set #2) [Roberto Fresca, Grull Osgo, Jeff Hamelin]
This commit is contained in:
Roberto Fresca 2022-04-03 20:12:07 +02:00
parent 05d0a6b7c6
commit b625b60b41
3 changed files with 391 additions and 8 deletions

View File

@ -149,6 +149,8 @@
* Mundial/Mondial (Italian/French), 1987, Unknown. * Mundial/Mondial (Italian/French), 1987, Unknown.
* Super 98 (3-hands, ICP-1), 199?, Unknown. * Super 98 (3-hands, ICP-1), 199?, Unknown.
* unknown rocket/animal-themed poker, 199?, Unknown. * unknown rocket/animal-themed poker, 199?, Unknown.
* Le Super Pendu (V1, words set #1), 198?, Voyageur de L'Espace Inc..
* Le Super Pendu (V1, words set #2), 198?, Voyageur de L'Espace Inc..
* Mega Double Poker (conversion kit, set 1), 1990, Blitz System Inc. * Mega Double Poker (conversion kit, set 1), 1990, Blitz System Inc.
* Mega Double Poker (conversion kit, set 2), 1990, Blitz System Inc. * Mega Double Poker (conversion kit, set 2), 1990, Blitz System Inc.
* Maxi Double Poker (version 1.8), 1990, Blitz System Inc. * Maxi Double Poker (version 1.8), 1990, Blitz System Inc.
@ -994,6 +996,7 @@
#include "pmpoker.lh" #include "pmpoker.lh"
#include "goldnpkr.lh" #include "goldnpkr.lh"
#include "upndown.lh" #include "upndown.lh"
#include "lespendu.lh"
namespace { namespace {
@ -1035,6 +1038,7 @@ public:
void caspoker(machine_config &config); void caspoker(machine_config &config);
void icp_ext(machine_config &config); void icp_ext(machine_config &config);
void gldnirq0(machine_config &config); void gldnirq0(machine_config &config);
void lespendu(machine_config &config);
void init_vkdlswwh(); void init_vkdlswwh();
void init_icp1db(); void init_icp1db();
@ -1059,11 +1063,15 @@ public:
void init_bonuspkr(); void init_bonuspkr();
void init_super98(); void init_super98();
void init_pokersis(); void init_pokersis();
void init_lespendu();
void init_lespenduj();
uint8_t pottnpkr_mux_port_r(); uint8_t pottnpkr_mux_port_r();
void lamps_a_w(uint8_t data); void lamps_a_w(uint8_t data);
void lespendu_lamps_a_w(uint8_t data);
void sound_w(uint8_t data); void sound_w(uint8_t data);
void mux_w(uint8_t data); void mux_w(uint8_t data);
void lespendu_mux_w(uint8_t data);
uint32_t screen_update_goldnpkr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); uint32_t screen_update_goldnpkr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
@ -1102,7 +1110,9 @@ private:
DECLARE_VIDEO_START(super21p); DECLARE_VIDEO_START(super21p);
void wcrdxtnd_palette(palette_device &palette) const; void wcrdxtnd_palette(palette_device &palette) const;
DECLARE_MACHINE_START(mondial); DECLARE_MACHINE_START(mondial);
DECLARE_MACHINE_START(lespendu);
DECLARE_MACHINE_RESET(mondial); DECLARE_MACHINE_RESET(mondial);
DECLARE_MACHINE_RESET(lespendu);
void genie_map(address_map &map); void genie_map(address_map &map);
void goldnpkr_map(address_map &map); void goldnpkr_map(address_map &map);
@ -1118,6 +1128,7 @@ private:
void witchcrd_map(address_map &map); void witchcrd_map(address_map &map);
void super21p_map(address_map &map); void super21p_map(address_map &map);
void icp_ext_map(address_map &map); void icp_ext_map(address_map &map);
void lespendu_map(address_map &map);
required_shared_ptr<uint8_t> m_videoram; required_shared_ptr<uint8_t> m_videoram;
required_shared_ptr<uint8_t> m_colorram; required_shared_ptr<uint8_t> m_colorram;
@ -1131,6 +1142,7 @@ private:
uint8_t m_ay8910_control = 0; uint8_t m_ay8910_control = 0;
}; };
class blitz_state : public goldnpkr_state class blitz_state : public goldnpkr_state
{ {
public: public:
@ -1479,10 +1491,20 @@ uint8_t goldnpkr_state::pottnpkr_mux_port_r()
void goldnpkr_state::mux_w(uint8_t data) void goldnpkr_state::mux_w(uint8_t data)
{ {
//logerror("mux_w: %2x\n",data);
m_mux_data = data ^ 0xff; // inverted m_mux_data = data ^ 0xff; // inverted
} }
void goldnpkr_state::lespendu_mux_w(uint8_t data)
{
m_mux_data = data ^ 0xff; // inverted
if(data == 0x00)
data = 0xff;
membank("bank0")->set_entry(data & 0x07); // for both sets
}
void goldnpkr_state::mux_port_w(uint8_t data) void goldnpkr_state::mux_port_w(uint8_t data)
{ {
m_pia0_PA_data = data; m_pia0_PA_data = data;
@ -1490,7 +1512,6 @@ void goldnpkr_state::mux_port_w(uint8_t data)
// demuxing ay8910 data/address from Falcon board, PIA portA out // demuxing ay8910 data/address from Falcon board, PIA portA out
uint8_t goldnpkr_state::ay8910_data_r() uint8_t goldnpkr_state::ay8910_data_r()
{ {
return (m_ay8910_control & 0xc0) == 0x40 ? m_ay8910->data_r() : 0xff; return (m_ay8910_control & 0xc0) == 0x40 ? m_ay8910->data_r() : 0xff;
@ -1587,11 +1608,35 @@ void goldnpkr_state::lamps_a_w(uint8_t data)
machine().bookkeeping().coin_counter_w(2, data & 0x20); // counter 3 machine().bookkeeping().coin_counter_w(2, data & 0x20); // counter 3
} }
void goldnpkr_state::lespendu_lamps_a_w(uint8_t data)
{
/* Le Super Pendu lamps and counters wiring *
7654 3210
---- ---x Lamp 1.
---- --x- Lamp 2.
---- -x-- Lamp 3.
---- x--- Lamp 4.
---x ---- Lamp 5.
--x- ---- Coin In counter.
xx-- ---- Unused.
*/
data = data ^ 0xff;
m_lamps[0] = BIT(data, 0); // lamp 0
m_lamps[1] = BIT(data, 1); // lamp 1
m_lamps[2] = BIT(data, 2); // lamp 2
m_lamps[3] = BIT(data, 3); // lamp 3
m_lamps[4] = BIT(data, 4); // lamp 4
// counter 0, adding extra coin when boot for difference of polarisation.
machine().bookkeeping().coin_counter_w(0, BIT(data, 5));
}
void goldnpkr_state::sound_w(uint8_t data) void goldnpkr_state::sound_w(uint8_t data)
{ {
// 555 voltage controlled // 555 voltage controlled
logerror("Sound Data: %2x\n",data & 0x0f);
// discrete sound is connected to PIA1, portA: bits 0-3 // discrete sound is connected to PIA1, portA: bits 0-3
m_discrete->write(NODE_01, data >> 3 & 0x01); m_discrete->write(NODE_01, data >> 3 & 0x01);
m_discrete->write(NODE_10, data & 0x07); m_discrete->write(NODE_10, data & 0x07);
@ -1650,7 +1695,6 @@ void goldnpkr_state::witchcrd_map(address_map &map)
map(0x2800, 0x2fff).ram(); map(0x2800, 0x2fff).ram();
map(0x4000, 0x7fff).rom(); map(0x4000, 0x7fff).rom();
} }
/* /*
Witch Card (Video klein) Witch Card (Video klein)
@ -1808,6 +1852,21 @@ void goldnpkr_state::icp_ext_map(address_map &map)
map(0x6000, 0x7fff).rom(); map(0x6000, 0x7fff).rom();
} }
void goldnpkr_state::lespendu_map(address_map &map)
{
map.global_mask(0x7fff);
map(0x0000, 0x07ff).ram().share("nvram"); // battery backed RAM
map(0x0800, 0x0800).w("crtc", FUNC(mc6845_device::address_w));
map(0x0801, 0x0801).rw("crtc", FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
map(0x0844, 0x0847).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
map(0x0848, 0x084b).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
map(0x1000, 0x13ff).ram().w(FUNC(goldnpkr_state::goldnpkr_videoram_w)).share("videoram");
map(0x1800, 0x1bff).ram().w(FUNC(goldnpkr_state::goldnpkr_colorram_w)).share("colorram");
map(0x5000, 0x5fff).bankr("bank0");
map(0x6000, 0x7fff).rom();
}
/********************************************* /*********************************************
* Input Ports * * Input Ports *
@ -4048,6 +4107,95 @@ static INPUT_PORTS_START( super21p )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START(lespendu)
// Multiplexed - 4x5bits
PORT_START("IN0-0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Stats / Meters") PORT_CODE(KEYCODE_0) // stats
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Button 4 / Stats Input Test") PORT_CODE(KEYCODE_V) // button 4 / stats test mode
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Button 1") PORT_CODE(KEYCODE_Z) // button 1
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Button 5 / Stats Exit") PORT_CODE(KEYCODE_B) // button 5
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Button 2") PORT_CODE(KEYCODE_X) // button 2
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Button 3") PORT_CODE(KEYCODE_C) // button 3
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-2")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN0-3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) // 25¢ coin, 50¢ to play.
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("SW1")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("SW2")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
/********************************************* /*********************************************
* Graphics Layouts * * Graphics Layouts *
*********************************************/ *********************************************/
@ -4115,6 +4263,11 @@ static GFXDECODE_START( gfx_caspoker )
GFXDECODE_ENTRY( "gfx2", 0, tilelayout, 128, 16 ) GFXDECODE_ENTRY( "gfx2", 0, tilelayout, 128, 16 )
GFXDECODE_END GFXDECODE_END
static GFXDECODE_START( gfx_lespendu )
GFXDECODE_ENTRY( "gfx1", 0, fixedtilelayout, 0, 16 )
GFXDECODE_ENTRY( "gfx2", 0, fixedtilelayout, 0, 16 )
GFXDECODE_END
/********************************************************** /**********************************************************
* Discrete Sound Routines * * Discrete Sound Routines *
@ -4268,6 +4421,20 @@ MACHINE_RESET_MEMBER(goldnpkr_state, mondial)
membank("bank1")->set_entry(seldsw); membank("bank1")->set_entry(seldsw);
} }
MACHINE_START_MEMBER(goldnpkr_state, lespendu)
{
m_lamps.resolve();
uint8_t *ROM = memregion("data")->base();
membank("bank0")->configure_entries(0, 8, &ROM[0], 0x1000);
}
MACHINE_RESET_MEMBER(goldnpkr_state, lespendu)
{
membank("bank0")->set_entry(7);
}
/********************************************* /*********************************************
* Machine Drivers * * Machine Drivers *
*********************************************/ *********************************************/
@ -4553,6 +4720,7 @@ void goldnpkr_state::gldnirq0(machine_config &config)
{ {
goldnpkr(config); goldnpkr(config);
// basic machine hardware
mc6845_device &crtc(MC6845(config.replace(), "crtc", CPU_CLOCK)); // 68B45 or 6845s @ CPU clock mc6845_device &crtc(MC6845(config.replace(), "crtc", CPU_CLOCK)); // 68B45 or 6845s @ CPU clock
crtc.set_screen("screen"); crtc.set_screen("screen");
crtc.set_show_border_area(false); crtc.set_show_border_area(false);
@ -4561,6 +4729,33 @@ void goldnpkr_state::gldnirq0(machine_config &config)
} }
void goldnpkr_state::lespendu(machine_config &config)
{
goldnpkr(config);
// basic machine hardware
m_maincpu->set_addrmap(AS_PROGRAM, &goldnpkr_state::lespendu_map);
m_pia[0]->writepb_handler().set(FUNC(goldnpkr_state::lespendu_lamps_a_w));
m_pia[1]->readpa_handler().set_ioport("SW1");
m_pia[1]->readpb_handler().set_ioport("SW2");
m_pia[1]->writepb_handler().set(FUNC(goldnpkr_state::lespendu_mux_w)); // ++ bankswitch
MCFG_MACHINE_START_OVERRIDE(goldnpkr_state, lespendu)
MCFG_MACHINE_RESET_OVERRIDE(goldnpkr_state, lespendu)
// video hardware
m_gfxdecode->set_info(gfx_lespendu);
mc6845_device &crtc(HD6845S(config.replace(), "crtc", CPU_CLOCK)); // Hitachi HD46505SP
crtc.set_screen("screen");
crtc.set_show_border_area(false);
crtc.set_char_width(8);
crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI);
}
/********************************************* /*********************************************
* Blitz System * * Blitz System *
*********************************************/ *********************************************/
@ -4915,9 +5110,9 @@ ROM_END
*/ */
ROM_START( goldnpkf ) ROM_START( goldnpkf )
ROM_REGION( 0x10000, "maincpu", 0 ) ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "hl_1.bin", 0x5000, 0x1000, BAD_DUMP CRC(d475cd13) SHA1(7c12b44ab938f26701587e57784f08e248e3afd2) ) ROM_LOAD( "hl_1.bin", 0x5000, 0x1000, CRC(d475cd13) SHA1(7c12b44ab938f26701587e57784f08e248e3afd2) )
ROM_LOAD( "hl_2.bin", 0x6000, 0x1000, BAD_DUMP CRC(304eb644) SHA1(c876e0d6121dee594c4f5d75273c74982c5bd524) ) ROM_LOAD( "hl_2.bin", 0x6000, 0x1000, CRC(304eb644) SHA1(c876e0d6121dee594c4f5d75273c74982c5bd524) )
ROM_LOAD( "hl_3.bin", 0x7000, 0x1000, BAD_DUMP CRC(47c15f44) SHA1(da7af46a8d17abffd30fffe6eb091d15f9f8f92c) ) ROM_LOAD( "hl_3.bin", 0x7000, 0x1000, CRC(47c15f44) SHA1(da7af46a8d17abffd30fffe6eb091d15f9f8f92c) )
ROM_REGION( 0x6000, "gfx1", 0 ) // gfx roms borrowed from golden poker ROM_REGION( 0x6000, "gfx1", 0 ) // gfx roms borrowed from golden poker
ROM_FILL( 0x0000, 0x4000, 0x0000 ) // filling the R-G bitplanes. ROM_FILL( 0x0000, 0x4000, 0x0000 ) // filling the R-G bitplanes.
@ -11533,6 +11728,64 @@ ROM_START( super21p )
ROM_END ROM_END
/********************************************************
Le Super Pendu.
Voyageur de L'Espace Inc.
French language hangman style game manufactured in Canada.
Conversion kit for modified Bonanza Enterprises hardware.
Prequel of "Le Pendu" game.
For more details, see the lependu.cpp driver.
********************************************************/
ROM_START( lespendu ) // board #1
ROM_REGION( 0x10000, "maincpu", 0 ) // program ROMs
ROM_LOAD( "pendu_2.12a", 0x6000, 0x1000, CRC(bd1c4763) SHA1(7f33b9866afcc456e3623e478abee77e1610d99b) )
ROM_LOAD( "pendu_3.14a", 0x7000, 0x1000, CRC(4c973c2d) SHA1(edaf488019fc1b72b9344488b898a27ef886c1f9) )
ROM_REGION( 0x08000, "data", 0 ) // banked data
ROM_LOAD( "pendu_1.11a", 0x0000, 0x8000, CRC(acaecf36) SHA1(290867f18c5376189d389e6e508b34637c726352) )
ROM_REGION( 0x3000, "gfx1", 0 )
ROM_FILL( 0x0000, 0x2000, 0x0000 ) // filling the R-G bitplanes
ROM_LOAD( "pendu_c.5a", 0x2000, 0x1000, CRC(c7cfc375) SHA1(d46b633ef007d0928fbd49b9703ab5248de8d545) ) // chars / other gfx, bitplane 3
ROM_REGION( 0x1800, "gfx2", 0 )
ROM_LOAD( "pendu_a.2a", 0x0000, 0x0800, CRC(43770310) SHA1(e6c0d1d1b07a4c14fa26cfb4aedf1f94017bc9c3) ) // other gfx, bitplane2
ROM_LOAD( "pendu_b.3a", 0x0800, 0x0800, CRC(19471258) SHA1(d4e2cf05e00945e034f968dcc314cc8e5832b840) ) // other gfx, bitplane1
ROM_COPY( "gfx1", 0x2800, 0x1000, 0x0800 ) // other gfx, bitplane3. found in the 2nd half of the chars rom
ROM_REGION( 0x0100, "proms", 0 )
ROM_LOAD( "tbp24s10n.7d", 0x0000, 0x0100, CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) )
ROM_END
ROM_START( lespenduj ) // board #2
ROM_REGION( 0x10000, "maincpu", 0 ) // program ROMs
ROM_LOAD( "pendu_jeje.12a", 0x6000, 0x1000, CRC(71d0430b) SHA1(6b6e5e3a3f5c51809953189e53191a175b03cfb3) )
ROM_LOAD( "pendu_jeje_3.14a", 0x7000, 0x1000, CRC(8e1863a1) SHA1(0cfdd961fbc83219ee8f0e62432320a90c8296bf) )
ROM_REGION( 0x08000, "data", 0 ) // banked data
ROM_LOAD( "nosticker.11a", 0x0000, 0x8000, CRC(0a9853a3) SHA1(b9dabfd5b13b6ddddc2d8b266adc6e55f094e981) )
ROM_REGION( 0x3000, "gfx1", 0 )
ROM_FILL( 0x0000, 0x2000, 0x0000 ) // filling the R-G bitplanes
ROM_LOAD( "1a_pendu_jeje.5a", 0x2000, 0x1000, CRC(c7cfc375) SHA1(d46b633ef007d0928fbd49b9703ab5248de8d545) ) // chars / other gfx
ROM_REGION( 0x1800, "gfx2", 0 )
ROM_LOAD( "2a_pendu_jeje.4a", 0x0000, 0x0800, CRC(19471258) SHA1(d4e2cf05e00945e034f968dcc314cc8e5832b840) ) // other gfx
ROM_LOAD( "3a_pendu_jeje.2a", 0x0800, 0x0800, CRC(2aefe346) SHA1(6540f126777c942737aeffd7f6f356ef2a71e146) ) // other gfx
ROM_COPY( "gfx1", 0x2800, 0x1000, 0x0800 ) // other gfx
ROM_REGION( 0x0100, "proms", 0 )
ROM_LOAD( "pk.7d", 0x0000, 0x0100, CRC(7f31066b) SHA1(15420780ec6b2870fc4539ec3afe4f0c58eedf12) )
ROM_END
/********************************************* /*********************************************
* Driver Init * * Driver Init *
*********************************************/ *********************************************/
@ -12015,6 +12268,38 @@ void goldnpkr_state::init_pokersis()
} // anonymous namespace } // anonymous namespace
void goldnpkr_state::init_lespendu()
{
uint8_t *ROM0 = memregion("maincpu")->base();
uint8_t *ROM1 = memregion("data")->base();
ROM0[0x643d] = 0xff; // skip checksum
ROM0[0x643f] = 0xff; // skip checksum
ROM0[0x6461] = 0xff; // changing value to store at $01c1 (Ram security patch)
ROM1[0x7aa3] = 0x20; // restore to original call, before Ram security patch
ROM1[0x7aa4] = 0xc3;
ROM1[0x7aa5] = 0x78;
}
void goldnpkr_state::init_lespenduj()
{
uint8_t *ROM0 = memregion("maincpu")->base();
uint8_t *ROM1 = memregion("data")->base();
ROM0[0x643d] = 0xff; // skip checksum
ROM0[0x643f] = 0xff; // skip checksum
ROM0[0x6461] = 0xff; // changing value to store at $01c1 (Ram security patch)
ROM1[0x7aa3] = 0x20; // restore to original call, before Ram security patch
ROM1[0x7aa4] = 0xc8;
ROM1[0x7aa5] = 0x78;
ROM0[0x766c] = 0x17; // bug lamps
ROM0[0x7749] = 0x17; // bug lamps}
}
/********************************************* /*********************************************
* Game Drivers * * Game Drivers *
*********************************************/ *********************************************/
@ -12178,6 +12463,9 @@ GAME( 1998, super98, bsuerte, witchcrd, super98, goldnpkr_state, init_super
GAME( 198?, animpkr, 0, icp_ext, animpkr, goldnpkr_state, empty_init, ROT0, "<unknown>", "unknown rocket/animal-themed poker", MACHINE_IMPERFECT_COLORS ) // banked program. how to switch gfx? GAME( 198?, animpkr, 0, icp_ext, animpkr, goldnpkr_state, empty_init, ROT0, "<unknown>", "unknown rocket/animal-themed poker", MACHINE_IMPERFECT_COLORS ) // banked program. how to switch gfx?
GAMEL( 198?, lespendu, 0, lespendu, lespendu, goldnpkr_state, init_lespendu, ROT0, "Voyageur de L'Espace Inc.", "Le Super Pendu (V1, words set #1)", 0, layout_lespendu )
GAMEL( 198?, lespenduj, 0, lespendu, lespendu, goldnpkr_state, init_lespenduj,ROT0, "Voyageur de L'Espace Inc.", "Le Super Pendu (V1, words set #2)", 0, layout_lespendu )
/*************************************** SETS W/IRQ0 ***************************************/ /*************************************** SETS W/IRQ0 ***************************************/

View File

@ -0,0 +1,93 @@
<?xml version="1.0"?>
<!--
license:CC0
-->
<mamelayout version="2">
<element name="BUTTON1" defstate="0">
<rect state="1"><color red="1.0" green="0.0" blue="0.0" /></rect>
<rect state="0"><color red="0.3" green="0.0" blue="0.0" /></rect>
<text string="BUTTON 1">
<color red="0.0" green="0.0" blue="0.0" />
<bounds x="0.1" y="0.15" width="0.8" height="0.7" />
</text>
</element>
<element name="BUTTON2" defstate="0">
<rect state="1"><color red="1.0" green="0.0" blue="0.0" /></rect>
<rect state="0"><color red="0.3" green="0.0" blue="0.0" /></rect>
<text string="BUTTON 2">
<color red="0.0" green="0.0" blue="0.0" />
<bounds x="0.1" y="0.15" width="0.8" height="0.7" />
</text>
</element>
<element name="BUTTON3" defstate="0">
<rect state="1"><color red="1.0" green="0.0" blue="0.0" /></rect>
<rect state="0"><color red="0.3" green="0.0" blue="0.0" /></rect>
<text string="BUTTON 3">
<color red="0.0" green="0.0" blue="0.0" />
<bounds x="0.1" y="0.15" width="0.8" height="0.7" />
</text>
</element>
<element name="BUTTON4" defstate="0">
<rect state="1"><color red="1.0" green="0.0" blue="0.0" /></rect>
<rect state="0"><color red="0.3" green="0.0" blue="0.0" /></rect>
<text string="BUTTON 4">
<color red="0.0" green="0.0" blue="0.0" />
<bounds x="0.1" y="0.15" width="0.8" height="0.7" />
</text>
</element>
<element name="BUTTON5" defstate="0">
<rect state="1"><color red="1.0" green="0.0" blue="0.0" /></rect>
<rect state="0"><color red="0.3" green="0.0" blue="0.0" /></rect>
<text string="BUTTON 5">
<color red="0.0" green="0.0" blue="0.0" />
<bounds x="0.1" y="0.15" width="0.8" height="0.7" />
</text>
</element>
<element name="BUTTON6" defstate="0">
<rect state="1"><color red="1.0" green="0.0" blue="0.0" /></rect>
<rect state="0"><color red="0.3" green="0.0" blue="0.0" /></rect>
<text string="BUTTON 6">
<color red="0.0" green="0.0" blue="0.0" />
<bounds x="0.1" y="0.15" width="0.8" height="0.7" />
</text>
</element>
<element name="cpanel">
<rect>
<color red="0.00" green="0.00" blue="0.00" />
</rect>
</element>
<view name="Button Lamps">
<screen index="0">
<bounds left="0" top="0" right="4" bottom="3" />
</screen>
<element ref="cpanel"><bounds left="0" right="4" top="3" bottom="3.40" /></element>
<element name="lamp2" ref="BUTTON1" inputtag="IN0-0" inputmask="0x10">
<bounds x="0.15" y="3.05" width="0.58" height="0.3" />
</element>
<element name="lamp4" ref="BUTTON2" inputtag="IN0-1" inputmask="0x08">
<bounds x="0.90" y="3.05" width="0.58" height="0.3" />
</element>
<element name="lamp1" ref="BUTTON3" inputtag="IN0-1" inputmask="0x10">
<bounds x="1.65" y="3.05" width="0.58" height="0.3" />
</element>
<element name="lamp3" ref="BUTTON4" inputtag="IN0-0" inputmask="0x04">
<bounds x="2.40" y="3.05" width="0.58" height="0.3" />
</element>
<element name="lamp0" ref="BUTTON5" inputtag="IN0-1" inputmask="0x04">
<bounds x="3.15" y="3.05" width="0.58" height="0.3" />
</element>
</view>
</mamelayout>

View File

@ -15613,6 +15613,8 @@ goldnpkf // Intercoast (bootleg)
goldnpkr // (c) 1981 Bonanza goldnpkr // (c) 1981 Bonanza
goodluck // Unknown goodluck // Unknown
jokercar // 199?, unknown jokercar // 199?, unknown
lespendu // (c) 198? Voyageur de L'Espace Inc.
lespenduj // (c) 198? Voyageur de L'Espace Inc.
maverik // 198?, Unknown maverik // 198?, Unknown
maxidpkr // (c) 1990 Blitz System Inc maxidpkr // (c) 1990 Blitz System Inc
megadpkr // (c) 1990 Blitz System Inc megadpkr // (c) 1990 Blitz System Inc