New systems marked not working

------------------------------
Finger Bowl [hap, Sean Riddle]
This commit is contained in:
hap 2023-05-28 23:43:19 +02:00
parent e652bc413e
commit 7ae8aed8ab
4 changed files with 216 additions and 61 deletions

View file

@ -3361,7 +3361,7 @@ protected:
void plate_w(offs_t offset, u8 data);
void grid_w(u16 data);
DECLARE_WRITE_LINE_MEMBER(speaker_w);
void speaker_w(int state);
void cop_irq_w(u8 data);
u8 cop_latch_r();
u8 cop_ack_r();
@ -3433,7 +3433,7 @@ void eturtles_state::update_int()
// handlers: COP side
WRITE_LINE_MEMBER(eturtles_state::speaker_w)
void eturtles_state::speaker_w(int state)
{
// SK: speaker out
m_speaker->level_w(!state);

View file

@ -58,6 +58,7 @@ TODO:
- tithermos temperature sensor comparator (right now just the digital clock works)
- is alphie(patent) the same as the final version?
- is starwbcp the same as MP3438? (starwbc is MP3438A)
- fingbowl internal artwork
================================================================================
@ -111,6 +112,7 @@ on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
@MP1228 TMS1100 1980, Entex Musical Marvin (6014)
@MP1231 TMS1100 1984, Tandy 3 in 1 Sports Arena (model 60-2178)
*MP1272 TMS1100 1981, Tandy Computerized Arcade (assumed same as CD7282, not confirmed)
@MP1288 TMS1100 1981, Tiger Finger Bowl
@MP1296 TMS1100 1982, Entex Black Knight Pinball (6081)
@MP1311 TMS1100 1981, Bandai TC7: Air Traffic Control
@MP1312 TMS1100 1981, Gakken FX-Micom R-165/Radio Shack Science Fair Microcomputer Trainer
@ -288,6 +290,7 @@ on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
#include "esoccer.lh"
#include "f2pbball.lh"
#include "f3in1.lh"
#include "fingbowl.lh" // clickable
#include "fxmcr165.lh" // clickable
#include "gjackpot.lh"
#include "gpoker.lh"
@ -396,7 +399,7 @@ protected:
u8 read_inputs(int columns);
u8 read_rotated_inputs(int columns, u8 rowmask = 0xf);
virtual DECLARE_WRITE_LINE_MEMBER(auto_power_off);
virtual void auto_power_off(int state);
virtual void power_off();
virtual void set_power(bool state);
void switch_change(int sel, u32 mask, bool next);
@ -481,7 +484,7 @@ INPUT_CHANGED_MEMBER(hh_tms1k_state::power_button)
set_power((bool)param);
}
WRITE_LINE_MEMBER(hh_tms1k_state::auto_power_off)
void hh_tms1k_state::auto_power_off(int state)
{
// devices with a TMS0980 can auto power-off
if (state)
@ -15222,6 +15225,134 @@ ROM_END
/*******************************************************************************
Tiger Finger Bowl (model 7-545)
* TMS1100 MP1288 (no decap)
* 3 7seg LEDs, 1-bit sound
It's a track & field board game, played by sliding or tapping your finger.
5 hurdles were included, though they're not essential.
*******************************************************************************/
class fingbowl_state : public hh_tms1k_state
{
public:
fingbowl_state(const machine_config &mconfig, device_type type, const char *tag) :
hh_tms1k_state(mconfig, type, tag)
{ }
void fingbowl(machine_config &config);
private:
void update_display();
void write_r(u32 data);
void write_o(u16 data);
u8 read_k();
};
// handlers
void fingbowl_state::update_display()
{
m_display->matrix(m_r, m_o);
}
void fingbowl_state::write_r(u32 data)
{
// R8: speaker out
m_speaker->level_w(BIT(data, 8));
// R4-R7: input mux
m_inp_mux = data >> 4 & 0xf;
// R0-R2: digit select
m_r = data;
update_display();
}
void fingbowl_state::write_o(u16 data)
{
// O0-O6: led data
m_o = data;
update_display();
}
u8 fingbowl_state::read_k()
{
// K: multiplexed inputs
return read_inputs(4);
}
// inputs
static INPUT_PORTS_START( fingbowl )
PORT_START("IN.0") // R4
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON4 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON3 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_START("IN.1") // R5
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON8 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON7 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON6 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON5 )
PORT_START("IN.2") // R6
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON12 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON11 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON10 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON9 )
PORT_START("IN.3") // R7
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON16 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON15 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON14 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON13 )
INPUT_PORTS_END
// config
void fingbowl_state::fingbowl(machine_config &config)
{
// basic machine hardware
TMS1100(config, m_maincpu, 250000); // approximation - RC osc. R=68K, C=47pF
m_maincpu->read_k().set(FUNC(fingbowl_state::read_k));
m_maincpu->write_r().set(FUNC(fingbowl_state::write_r));
m_maincpu->write_o().set(FUNC(fingbowl_state::write_o));
// video hardware
PWM_DISPLAY(config, m_display).set_size(3, 7);
m_display->set_segmask(7, 0x7f);
config.set_default_layout(layout_fingbowl);
// sound hardware
SPEAKER(config, "mono").front_center();
SPEAKER_SOUND(config, m_speaker);
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.25);
}
// roms
ROM_START( fingbowl )
ROM_REGION( 0x0800, "maincpu", 0 )
ROM_LOAD( "mp1288", 0x0000, 0x0800, CRC(8eb489ad) SHA1(65efe9fb25f6a5e0a1319558388d84053e003e93) )
ROM_REGION( 867, "maincpu:mpla", 0 )
ROM_LOAD( "tms1100_common2_micro.pla", 0, 867, BAD_DUMP CRC(7cc90264) SHA1(c6e1cf1ffb178061da9e31858514f7cd94e86990) ) // not verified
ROM_REGION( 365, "maincpu:opla", ROMREGION_ERASE00 )
ROM_LOAD( "tms1100_fingbowl_output.pla", 0, 365, NO_DUMP )
ROM_REGION16_LE( 0x40, "maincpu:opla_b", ROMREGION_ERASE00 ) // verified, electronic dump, 2nd half unused
ROM_LOAD16_BYTE( "tms1100_fingbowl_output.bin", 0, 0x20, CRC(b84a8afb) SHA1(777c06c1ebb7884a268385b0f9d6d064400ff757) )
ROM_END
/*******************************************************************************
Tiger 7 in 1 Sports Stadium (model 7-555)
@ -16750,6 +16881,7 @@ SYST( 1980, dxfootb, 0, 0, dxfootb, dxfootb, dxfootb_state,
SYST( 1979, copycat, 0, 0, copycat, copycat, copycat_state, empty_init, "Tiger Electronics", "Copy Cat (model 7-520)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
SYST( 1989, copycata, copycat, 0, copycata, copycata, copycata_state, empty_init, "Tiger Electronics", "Copy Cat (model 7-522)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
SYST( 1981, ditto, 0, 0, ditto, ditto, ditto_state, empty_init, "Tiger Electronics", "Ditto", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
SYST( 1981, fingbowl, 0, 0, fingbowl, fingbowl, fingbowl_state, empty_init, "Tiger Electronics", "Finger Bowl", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK | MACHINE_NOT_WORKING ) // ***
SYST( 1982, t7in1ss, 0, 0, t7in1ss, t7in1ss, t7in1ss_state, empty_init, "Tiger Electronics", "7 in 1 Sports Stadium", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
SYST( 1979, tmvolleyb, 0, 0, tmvolleyb, tmvolleyb, tmvolleyb_state, empty_init, "Tomy", "Volleyball (Tomy)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )

View file

@ -0,0 +1,22 @@
<?xml version="1.0"?>
<!--
license:CC0-1.0
-->
<mamelayout version="2">
<!-- define elements -->
<element name="digit" defstate="0">
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
</element>
<!-- build screen -->
<view name="Internal Layout">
<element name="digit0" ref="digit"><bounds x="0" y="0" width="2" height="3" /></element>
<element name="digit1" ref="digit"><bounds x="2" y="0" width="2" height="3" /></element>
<element name="digit2" ref="digit"><bounds x="4" y="0" width="2" height="3" /></element>
</view>
</mamelayout>

View file

@ -18858,75 +18858,75 @@ nummunch // VTech
nupogodi // Elektronika
okhota // Elektronika
rkosmosa // Elektronika
taddams // Tiger
taltbeast // Tiger
tapollo13 // Tiger
taddams // Tiger Electronics
taltbeast // Tiger Electronics
tapollo13 // Tiger Electronics
taynyoke // Elektronika
tbatfor // Tiger
tbatman // Tiger
tbatmana // Tiger
tbtoads // Tiger
tbttf // Tiger
tddragon // Tiger
tddragon3 // Tiger
tdennis // Tiger
tdummies // Tiger
tflash // Tiger
tgaiden // Tiger
tgaiden3 // Tiger
tgargnf // Tiger
tgaunt // Tiger
tgoldeye // Tiger
tgoldnaxe // Tiger
thalone // Tiger
thalone2 // Tiger
thook // Tiger
tbatfor // Tiger Electronics
tbatman // Tiger Electronics
tbatmana // Tiger Electronics
tbtoads // Tiger Electronics
tbttf // Tiger Electronics
tddragon // Tiger Electronics
tddragon3 // Tiger Electronics
tdennis // Tiger Electronics
tdummies // Tiger Electronics
tflash // Tiger Electronics
tgaiden // Tiger Electronics
tgaiden3 // Tiger Electronics
tgargnf // Tiger Electronics
tgaunt // Tiger Electronics
tgoldeye // Tiger Electronics
tgoldnaxe // Tiger Electronics
thalone // Tiger Electronics
thalone2 // Tiger Electronics
thook // Tiger Electronics
tigarden // Tronica
tinday // Tiger
tjdredd // Tiger
tjpark // Tiger
tkarnov // Tiger
tkazaam // Tiger
tmchammer // Tiger
tmegaman3 // Tiger
tmkombat // Tiger
tnmarebc // Tiger
topaliens // Tiger
trobhood // Tiger
trobocop2 // Tiger
trobocop3 // Tiger
trockteer // Tiger
tinday // Tiger Electronics
tjdredd // Tiger Electronics
tjpark // Tiger Electronics
tkarnov // Tiger Electronics
tkazaam // Tiger Electronics
tmchammer // Tiger Electronics
tmegaman3 // Tiger Electronics
tmkombat // Tiger Electronics
tnmarebc // Tiger Electronics
topaliens // Tiger Electronics
trobhood // Tiger Electronics
trobocop2 // Tiger Electronics
trobocop3 // Tiger Electronics
trockteer // Tiger Electronics
trsgkeep // Tronica
trshutvoy // Tronica
trspacmis // Tronica
trspider // Tronica
trsrescue // Tronica
trthuball // Tronica
tsddragon // Tiger
tsf2010 // Tiger
tsfight2 // Tiger
tshadow // Tiger
tsharr2 // Tiger
tsimquest // Tiger
tsjam // Tiger
tskelwarr // Tiger
tsonic // Tiger
tsonic2 // Tiger
tspidman // Tiger
tstrider // Tiger
tsuperman // Tiger
tswampt // Tiger
ttransf2 // Tiger
tvindictr // Tiger
twworld // Tiger
txmen // Tiger
txmenpx // Tiger
tsddragon // Tiger Electronics
tsf2010 // Tiger Electronics
tsfight2 // Tiger Electronics
tshadow // Tiger Electronics
tsharr2 // Tiger Electronics
tsimquest // Tiger Electronics
tsjam // Tiger Electronics
tskelwarr // Tiger Electronics
tsonic // Tiger Electronics
tsonic2 // Tiger Electronics
tspidman // Tiger Electronics
tstrider // Tiger Electronics
tsuperman // Tiger Electronics
tswampt // Tiger Electronics
ttransf2 // Tiger Electronics
tvindictr // Tiger Electronics
twworld // Tiger Electronics
txmen // Tiger Electronics
txmenpx // Tiger Electronics
vespovar // Elektronika
vfutbol // Elektronika
@source:handheld/hh_smc1k.cpp
tkkongq // Tiger
tlluke2 // Tiger
tkkongq // Tiger Electronics
tlluke2 // Tiger Electronics
@source:handheld/hh_tms1k.cpp
alphie // Playskool
@ -18968,6 +18968,7 @@ esbattle // Entex
esoccer // Entex
f2pbball // Fonas
f3in1 // Fonas
fingbowl // Tiger Electronics
fxmcr165 // Gakken
ginv // Gakken
ginv1000 // Gakken