misc/opercoin.cpp: Dumped and added an Oper Coin slot machine. (#10874)

New NOT_WORKING machine
-----------------------------------------
Super Pirulo [jordigahan, ClawGrip]
This commit is contained in:
ClawGrip 2023-02-06 16:29:31 +01:00 committed by GitHub
parent b4732de782
commit b4e67abe6f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 57 additions and 5 deletions

View File

@ -30701,7 +30701,8 @@ onetwo // (c) 1997 Barko
onetwoe // (c) 1997 Barko
@source:misc/opercoin.cpp
multibaby // (c) 1990 oper Coin
multibaby // (c) 1990 Oper Coin
spirulo // (c) 19?? Oper Coin
@source:misc/othello.cpp
othello // (c) 1984 Success.

View File

@ -2,7 +2,7 @@
// copyright-holders:
/*
Skeleton driver for Oper Coin "Multi Baby" slot machine.
Skeleton driver for Oper Coin "Multi Baby" slot machine and other games on similar hardware.
___________________________________________________________________
| ········ ········ ···· |
| _________ _________ _________ _________ _________ |
@ -34,10 +34,13 @@ Skeleton driver for Oper Coin "Multi Baby" slot machine.
*/
#include "emu.h"
#include "speaker.h"
#include "cpu/z80/z80.h"
#include "sound/ay8910.h"
#include "speaker.h"
namespace {
class multibaby_state : public driver_device
@ -50,6 +53,7 @@ public:
}
void multibaby(machine_config &config);
void spirulo(machine_config &config);
private:
required_device<cpu_device> m_maincpu;
@ -75,6 +79,18 @@ static INPUT_PORTS_START( multibaby )
PORT_DIPUNKNOWN_DIPLOC(0x08, 0x08, "SW1:4")
INPUT_PORTS_END
static INPUT_PORTS_START( spirulo )
PORT_START("DSW1")
PORT_DIPUNKNOWN_DIPLOC(0x01, 0x01, "SW1:1")
PORT_DIPUNKNOWN_DIPLOC(0x02, 0x02, "SW1:2")
PORT_DIPUNKNOWN_DIPLOC(0x04, 0x04, "SW1:3")
PORT_DIPUNKNOWN_DIPLOC(0x08, 0x08, "SW1:4")
PORT_DIPUNKNOWN_DIPLOC(0x10, 0x10, "SW2:5")
PORT_DIPUNKNOWN_DIPLOC(0x20, 0x20, "SW2:6")
PORT_DIPUNKNOWN_DIPLOC(0x40, 0x40, "SW2:7")
PORT_DIPUNKNOWN_DIPLOC(0x80, 0x80, "SW2:8")
INPUT_PORTS_END
void multibaby_state::multibaby(machine_config &config)
{
@ -87,11 +103,46 @@ void multibaby_state::multibaby(machine_config &config)
psg.add_route(ALL_OUTPUTS, "mono", 1.0); // Guess
}
void multibaby_state::spirulo(machine_config &config)
{
Z80(config, m_maincpu, 3.2768_MHz_XTAL);
SPEAKER(config, "mono").front_center();
ay8910_device &psg(AY8910(config, "psg", 3.2768_MHz_XTAL / 2)); // Divisor unknown
psg.port_a_read_callback().set_ioport("DSW1");
psg.add_route(ALL_OUTPUTS, "mono", 1.0); // Guess
}
ROM_START( multibaby )
ROM_REGION(0x4000, "maincpu", 0)
ROM_LOAD( "oc_multi_baby_b-1923.ic13", 0x000, 0x4000, CRC(5d1bffe2) SHA1(536492b093dd247ba0440d499920d526ee7ea439) )
ROM_LOAD( "oc_multi_baby_b-1923.ic13", 0x0000, 0x4000, CRC(5d1bffe2) SHA1(536492b093dd247ba0440d499920d526ee7ea439) )
ROM_END
/* Super Pirulo (c) Oper Coin (slot machine)
Main components:
-Z80 CPU.
-27256 EPROM.
-3.2768 MHz xtal.
-9306 SEEPROM
-58274 Real Time Clock
-3.6 V battery
-1 bank of 8 dipswitches
-5564 RAM
-AY8910
A complete manual with schematics can be downloaded from https://www.recreativas.org/manuales
*/
ROM_START( spirulo )
ROM_REGION(0x8000, "maincpu", 0)
ROM_LOAD( "super_pirulo_b-1785.u18", 0x0000, 0x8000, CRC(d6cafc7c) SHA1(74cd142c606a6daf10b09be1a4f7dac4da654fa0) )
ROM_REGION(0x104, "plds", 0)
ROM_LOAD( "16l8.u31", 0x000, 0x104, NO_DUMP )
ROM_END
} // Anonymous namespace
GAME( 1990, multibaby, 0, multibaby, multibaby, multibaby_state, empty_init, ROT0, "Oper Coin", "Multi Baby", MACHINE_IS_SKELETON_MECHANICAL )
// YEAR NAME PARENT MACHINE INPUT CLASS INIT ROT COMPANY FULLNAME FLAGS
GAME( 1990, multibaby, 0, multibaby, multibaby, multibaby_state, empty_init, ROT0, "Oper Coin", "Multi Baby", MACHINE_IS_SKELETON_MECHANICAL )
GAME( 1988, spirulo, 0, spirulo, spirulo, multibaby_state, empty_init, ROT0, "Oper Coin", "Super Pirulo", MACHINE_IS_SKELETON_MECHANICAL ) // Year from legal registry date