mirror of
https://github.com/holub/mame
synced 2025-04-23 17:00:53 +03:00
New systems marked not working
------------------------------ Volleyball (Tomy) [hap, Sean Riddle]
This commit is contained in:
parent
02a1619ca6
commit
92ba1a5b60
@ -4875,7 +4875,7 @@ ROM_END
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy(tronic) Tron (manufactured in Japan)
|
||||
Tomy Tron (manufactured in Japan)
|
||||
* PCB label: THN-02 2E114E07
|
||||
* Hitachi HD38800A88 MCU
|
||||
* cyan/red/green VFD NEC FIP10AM24T no. 2-8 1
|
||||
|
@ -422,7 +422,8 @@ ROM_END
|
||||
* 2 7seg LEDs, 29 other LEDs, 1-bit sound
|
||||
|
||||
Two versions are known: one with a black bezel and one with a brown bezel,
|
||||
the internal hardware is the same.
|
||||
the internal hardware is the same. The other 2 games in this series (Soccer,
|
||||
Volleyball) use a TMS1000 MCU instead.
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
@ -489,14 +490,14 @@ u8 tmbaskb_state::read_b()
|
||||
|
||||
static INPUT_PORTS_START( tmbaskb )
|
||||
PORT_START("IN.0") // CO3 BI (left)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_NAME("P1 Offense P")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_NAME("P1 Offense S")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_NAME("P1 Defense")
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("P1 Offense P")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_NAME("P1 Offense S")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("P1 Defense")
|
||||
|
||||
PORT_START("IN.1") // CO5 BI (right)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_NAME("P2 Offense P")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_NAME("P2 Offense S")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_NAME("P2 Defense")
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL PORT_NAME("P2 Offense P")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_COCKTAIL PORT_NAME("P2 Offense S")
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL PORT_NAME("P2 Defense")
|
||||
|
||||
PORT_START("IN.2") // BI0
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_NAME("Score")
|
||||
|
@ -5284,6 +5284,9 @@ ROM_END
|
||||
* Sharp SM511 under epoxy (die label KMS73B, 781)
|
||||
* lcd screen with custom segments, 1-bit sound
|
||||
|
||||
There's also a rare version from 1992 called "Bull's-Eye: Barbecue Sauce",
|
||||
assumed to be a promotional item licensed to Heinz.
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
class kloneran_state : public hh_sm510_state
|
||||
|
@ -54,6 +54,7 @@ TODO:
|
||||
"First Up" button after the alarm sound.
|
||||
- finish bshipb SN76477 sound (incomplete output PLA)
|
||||
- redo internal artwork for the baseball games (embedded SVG for diamond shapes)
|
||||
- tmvolleyb internal artwork
|
||||
- improve elecbowl driver
|
||||
- tithermos temperature sensor comparator (right now just the digital clock works)
|
||||
- is alphie(patent) the same as the final version?
|
||||
@ -75,7 +76,7 @@ on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
|
||||
*MP0121 TMS1000 1979, Waddingtons Compute-A-Tune
|
||||
@MP0154 TMS1000 1979, Fonas 2 Player Baseball
|
||||
@MP0158 TMS1000 1979, Entex Soccer (6003)
|
||||
*MP0159 TMS1000 1979, Tomy Volleyball
|
||||
@MP0159 TMS1000 1979, Tomy Volleyball
|
||||
@MP0163 TMS1000 1979, A-One LSI Match Number/LJN Electronic Concentration
|
||||
@MP0166 TMS1000 1980, A-One Arrange Ball/LJN Computer Impulse/Tandy Zingo (model 60-2123)
|
||||
@MP0168 TMS1000 1979, Conic Multisport/Tandy Sports Arena (model 60-2158)
|
||||
@ -349,7 +350,7 @@ on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
|
||||
#include "xl25.lh" // clickable
|
||||
#include "zodiac.lh" // clickable
|
||||
|
||||
//#include "hh_tms1k_test.lh" // common test-layout - use external artwork
|
||||
#include "hh_tms1k_test.lh" // common test-layout - use external artwork
|
||||
|
||||
|
||||
namespace {
|
||||
@ -15355,7 +15356,149 @@ ROM_END
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy(tronics) Break Up (manufactured in Japan)
|
||||
Tomy Volleyball
|
||||
* TMS1000 MP0159 (die label: 1000B, MP0159)
|
||||
* 2 7seg LEDs, 14 other LEDs, 1-bit sound
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
class tmvolleyb_state : public hh_tms1k_state
|
||||
{
|
||||
public:
|
||||
tmvolleyb_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
hh_tms1k_state(mconfig, type, tag)
|
||||
{ }
|
||||
|
||||
void tmvolleyb(machine_config &config);
|
||||
|
||||
private:
|
||||
void update_display();
|
||||
void write_r(u32 data);
|
||||
void write_o(u16 data);
|
||||
u8 read_k();
|
||||
};
|
||||
|
||||
// handlers
|
||||
|
||||
void tmvolleyb_state::update_display()
|
||||
{
|
||||
// O7 also selects left digit
|
||||
m_display->matrix((m_o >> 7 & 1) | (m_r >> 3 & 0xe), m_o);
|
||||
}
|
||||
|
||||
void tmvolleyb_state::write_r(u32 data)
|
||||
{
|
||||
// R0-R3,R7-R9: input mux
|
||||
m_inp_mux = (data & 0xf) | (data >> 3 & 0x70);
|
||||
|
||||
// R4-R6: led select
|
||||
m_r = data;
|
||||
update_display();
|
||||
|
||||
// R10: speaker out
|
||||
m_speaker->level_w(BIT(data, 10));
|
||||
}
|
||||
|
||||
void tmvolleyb_state::write_o(u16 data)
|
||||
{
|
||||
// O0-O7: digit segment/led data
|
||||
m_o = data;
|
||||
update_display();
|
||||
}
|
||||
|
||||
u8 tmvolleyb_state::read_k()
|
||||
{
|
||||
// K: multiplexed inputs
|
||||
return read_inputs(7);
|
||||
}
|
||||
|
||||
// inputs
|
||||
|
||||
static INPUT_PORTS_START( tmvolleyb )
|
||||
PORT_START("IN.0") // R0
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_COCKTAIL
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.1") // R1
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_COCKTAIL
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_COCKTAIL
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_COCKTAIL
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_NAME("Score")
|
||||
|
||||
PORT_START("IN.2") // R2
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START2 ) PORT_NAME("P2 Serve")
|
||||
|
||||
PORT_START("IN.3") // R3
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON6 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON5 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON4 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 ) PORT_NAME("P1 Serve")
|
||||
|
||||
PORT_START("IN.4") // R7
|
||||
PORT_BIT( 0x01, 0x01, IPT_CUSTOM ) PORT_CONDITION("IN.7", 0x01, EQUALS, 0x01) // Game 2
|
||||
PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.5") // R8
|
||||
PORT_BIT( 0x02, 0x02, IPT_CUSTOM ) PORT_CONDITION("IN.7", 0x01, EQUALS, 0x00) // Game 1
|
||||
PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.6") // R9
|
||||
PORT_BIT( 0x07, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_CONFNAME( 0x08, 0x08, DEF_STR( Players ) )
|
||||
PORT_CONFSETTING( 0x08, "1" )
|
||||
PORT_CONFSETTING( 0x00, "2" )
|
||||
|
||||
PORT_START("IN.7") // fake
|
||||
PORT_CONFNAME( 0x01, 0x00, "Game" )
|
||||
PORT_CONFSETTING( 0x00, "1" )
|
||||
PORT_CONFSETTING( 0x01, "2" )
|
||||
INPUT_PORTS_END
|
||||
|
||||
// config
|
||||
|
||||
void tmvolleyb_state::tmvolleyb(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
TMS1000(config, m_maincpu, 325000); // approximation - RC osc. R=47K, C=47pF
|
||||
m_maincpu->read_k().set(FUNC(tmvolleyb_state::read_k));
|
||||
m_maincpu->write_r().set(FUNC(tmvolleyb_state::write_r));
|
||||
m_maincpu->write_o().set(FUNC(tmvolleyb_state::write_o));
|
||||
|
||||
// video hardware
|
||||
PWM_DISPLAY(config, m_display).set_size(4, 8);
|
||||
m_display->set_segmask(3, 0x7f);
|
||||
config.set_default_layout(layout_hh_tms1k_test);
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "mono").front_center();
|
||||
SPEAKER_SOUND(config, m_speaker);
|
||||
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.25);
|
||||
}
|
||||
|
||||
// roms
|
||||
|
||||
ROM_START( tmvolleyb )
|
||||
ROM_REGION( 0x0400, "maincpu", 0 )
|
||||
ROM_LOAD( "mp0159_tomy_volley", 0x0000, 0x0400, CRC(0088b0cc) SHA1(90f222d6a3bef7b27709ef2816c15867921a8d4c) )
|
||||
|
||||
ROM_REGION( 867, "maincpu:mpla", 0 )
|
||||
ROM_LOAD( "tms1000_common2_micro.pla", 0, 867, CRC(d33da3cf) SHA1(13c4ebbca227818db75e6db0d45b66ba5e207776) )
|
||||
ROM_REGION( 365, "maincpu:opla", 0 )
|
||||
ROM_LOAD( "tms1000_tmvolleyb_output.pla", 0, 365, CRC(01af7efd) SHA1(d90656a7884b37c7fd49989f8d38dd376b74557b) )
|
||||
ROM_END
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy Break Up (manufactured in Japan)
|
||||
* PCB label: TOMY B.O.
|
||||
* TMS1040 MP2726 TOMY WIPE (die label: 1040B, MP2726A)
|
||||
* TMS1025N2LL I/O expander
|
||||
@ -15506,8 +15649,8 @@ static INPUT_PORTS_START( tbreakup )
|
||||
|
||||
PORT_START("IN.3") // fake
|
||||
PORT_CONFNAME( 0x01, 0x00, DEF_STR( Difficulty ) ) PORT_CHANGED_MEMBER(DEVICE_SELF, tbreakup_state, skill_switch, 0)
|
||||
PORT_CONFSETTING( 0x00, "Pro 1" )
|
||||
PORT_CONFSETTING( 0x01, "Pro 2" )
|
||||
PORT_CONFSETTING( 0x00, "1" ) // PRO 1
|
||||
PORT_CONFSETTING( 0x01, "2" ) // PRO 2
|
||||
INPUT_PORTS_END
|
||||
|
||||
// config
|
||||
@ -16608,6 +16751,7 @@ SYST( 1989, copycata, copycat, 0, copycata, copycata, copycata_state,
|
||||
SYST( 1981, ditto, 0, 0, ditto, ditto, ditto_state, empty_init, "Tiger Electronics", "Ditto", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
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_NOT_WORKING )
|
||||
SYST( 1979, tbreakup, 0, 0, tbreakup, tbreakup, tbreakup_state, empty_init, "Tomy", "Break Up (Tomy)", MACHINE_SUPPORTS_SAVE )
|
||||
SYST( 1980, phpball, 0, 0, phpball, phpball, phpball_state, empty_init, "Tomy", "Power House Pinball", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK )
|
||||
|
||||
|
@ -2549,7 +2549,7 @@ ROM_END
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy(tronic) Cosmic Combat (manufactured in Japan)
|
||||
Tomy Cosmic Combat (manufactured in Japan)
|
||||
* PCB label: 2E1019-E01
|
||||
* NEC uCOM-44 MCU, label D552C 042
|
||||
* cyan VFD NEC FIP32AM18Y tube no. 0E, with blue window
|
||||
@ -2664,7 +2664,7 @@ ROM_END
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy(tronic) Tennis (manufactured in Japan)
|
||||
Tomy Tennis (manufactured in Japan)
|
||||
* PCB label: TOMY TN-04 TENNIS
|
||||
* NEC uCOM-44 MCU, label D552C 048
|
||||
* cyan VFD NEC FIP11AM15T tube no. 0F, with overlay
|
||||
@ -2838,7 +2838,7 @@ ROM_END
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy(tronic) Pac-Man (manufactured in Japan)
|
||||
Tomy Pac-Man (manufactured in Japan)
|
||||
* PCB label: TN-08 2E108E01
|
||||
* NEC uCOM-43 MCU, label D553C 160
|
||||
* cyan/red/green VFD NEC FIP8AM18T no. 2-21
|
||||
@ -2959,7 +2959,7 @@ ROM_END
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy(tronic) Scramble (manufactured in Japan)
|
||||
Tomy Scramble (manufactured in Japan)
|
||||
* PCB label: TN-10 2E114E01
|
||||
* NEC uCOM-43 MCU, label D553C 192
|
||||
* cyan/red/green VFD NEC FIP10CM20T no. 2-41
|
||||
@ -3075,7 +3075,7 @@ ROM_END
|
||||
|
||||
/*******************************************************************************
|
||||
|
||||
Tomy(tronic) Caveman (manufactured in Japan)
|
||||
Tomy Caveman (manufactured in Japan)
|
||||
* PCB label: TN-12 2E114E03
|
||||
* NEC uCOM-43 MCU, label D553C 209
|
||||
* cyan/red/green VFD NEC FIP8AM20T no. 2-42
|
||||
|
@ -19042,6 +19042,7 @@ tiprog // Texas Instruments
|
||||
tisr16 // Texas Instruments
|
||||
tisr16ii // Texas Instruments
|
||||
tithermos // Texas Instruments
|
||||
tmvolleyb // Tomy
|
||||
vclock3 // Tandy Corporation
|
||||
wizatron // Texas Instruments
|
||||
wtalker // Technasonic
|
||||
|
@ -221,7 +221,7 @@ void telestrat_state::telestrat_mem(address_map &map)
|
||||
map(0x031c, 0x031f).rw("acia", FUNC(mos6551_device::read), FUNC(mos6551_device::write));
|
||||
map(0x0320, 0x032f).m(m_via2, FUNC(via6522_device::map));
|
||||
|
||||
// Theorically, these are cartridges. There's no real point to
|
||||
// Theoretically, these are cartridges. There's no real point to
|
||||
// making them configurable, when only 4 existed and there are 7
|
||||
// slots.
|
||||
|
||||
@ -293,12 +293,12 @@ uint32_t oric_state::screen_update_oric(screen_device &screen, bitmap_rgb32 &bit
|
||||
uint32_t c_fgcol = fgcol;
|
||||
uint32_t c_bgcol = bgcol;
|
||||
|
||||
// inverse video
|
||||
// inverse video
|
||||
if(ch & 0x80) {
|
||||
c_bgcol = c_bgcol ^ 0xffffff;
|
||||
c_fgcol = c_fgcol ^ 0xffffff;
|
||||
}
|
||||
// blink
|
||||
// blink
|
||||
if((lattr & LATTR_BLINK) && blink_state)
|
||||
c_fgcol = c_bgcol;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user