mirror of
https://github.com/holub/mame
synced 2025-04-22 16:31:49 +03:00
New working machines
-------------------- [hap, Kevin Horton]
This commit is contained in:
parent
4d679b4b58
commit
64e10c17a7
@ -60,16 +60,26 @@
|
||||
@A88 HD38820 1984, Bandai Pair Match (PT-460) (1/2)
|
||||
@A89 HD38820 1984, Bandai Pair Match (PT-460) (2/2)
|
||||
|
||||
*A34 HD44801 1981, Scisys Graduate Chess / Chesspartner 3000/4000
|
||||
*A50 HD44801 1981, CXG Sensor Computachess
|
||||
A75 HD44801 1982, Alpha 8201 protection MCU -> machine/alpha8201.*
|
||||
*A85 HD44801 1982, Scisys Travel Sensor / Travel Mate / Chesspartner 5000/6000
|
||||
B35 HD44801 1983, Alpha 8302 protection MCU (see 8201)
|
||||
B42 HD44801 1983, Alpha 8303 protection MCU (see 8201)
|
||||
*B43 HD44801 1983, Alpha 8304 protection MCU (see 8201)
|
||||
C57 HD44801 1985, Alpha 8505 protection MCU (see 8201)
|
||||
*C89 HD44801 1985, CXG Portachess II / Computachess IV
|
||||
|
||||
*A86 HD44820 1983, Chess King Pocket Micro
|
||||
|
||||
*A13 HD44840 1982, CXG Computachess II
|
||||
*A14 HD44840 1982, CXG Advanced Portachess
|
||||
|
||||
*A04 HD44868 1984, SciSys Rapier
|
||||
*A07 HD44868 1984, Chess King Pocket Micro Deluxe
|
||||
*A12 HD44868 1985, SciSys MK 10 / Pocket Chess
|
||||
*A14 HD44868 1985, SciSys Kasparov Plus
|
||||
|
||||
(* means undumped unless noted, @ denotes it's in this driver)
|
||||
|
||||
|
||||
|
@ -20,6 +20,7 @@
|
||||
@053 1655A 1979, Atari Touch Me
|
||||
@0?? 1655A 1979, Tiger Half Court Computer Basketball/Sears Electronic Basketball (custom label)
|
||||
@061 1655A 1980, Lakeside Le Boom
|
||||
@078 1655A 1980, Radio Shack Sound Effects Chassis
|
||||
*081 1655A 1981, Ramtex Space Invaders/Block Buster
|
||||
@094 1655A 1980, GAF Melody Madness
|
||||
@110 1650A 1979, Tiger/Tandy Rocket Pinball
|
||||
@ -43,6 +44,7 @@
|
||||
- ttfball: discrete sound part, for volume gating?
|
||||
- what's the relation between hccbaskb and tbaskb? Is one the bootleg of the
|
||||
other? Or are they both made by the same subcontractor? I presume Toytronic.
|
||||
- is sfxchas an import of an existing toy meant for US-market? if so, which?
|
||||
- uspbball and pabball internal artwork
|
||||
|
||||
***************************************************************************/
|
||||
@ -61,6 +63,7 @@
|
||||
#include "melodym.lh" // clickable
|
||||
#include "matchme.lh" // clickable
|
||||
#include "rockpin.lh"
|
||||
#include "sfxchas.lh" // clickable
|
||||
#include "tbaskb.lh"
|
||||
#include "touchme.lh" // clickable
|
||||
#include "ttfball.lh"
|
||||
@ -1075,6 +1078,160 @@ ROM_END
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tandy(Radio Shack division) Sound Effects Chassis
|
||||
* PCB label 25-600321, REV C, TCI-A3H / 94HB
|
||||
* PIC 1655A-078
|
||||
* 2 7seg LEDs + 8 other LEDs, 1-bit sound with volume decay
|
||||
|
||||
This could be purchased as a bare PCB from Radio Shack under the Archer
|
||||
brand, catalog number 277-1013. It was named "Sound Effects Chassis" but
|
||||
clearly it's nothing like that. More likely, it's a canceled tabletop game,
|
||||
either custom made for Tandy, or an (as of yet) unknown import.
|
||||
|
||||
The bottom-left button selects game type and the bottom-right button selects
|
||||
number of players. Press the bottom button(IPT_BUTTON5) to start. In games
|
||||
4 and 5 it's easy to lock up the program by pressing the buttons repeatedly
|
||||
and causing a score overflow.
|
||||
|
||||
The instruction leaflet says to attach a speaker and a 9V power source.
|
||||
It actually takes 5V, 9V would break it. The only thing it has to say about
|
||||
the game itself is "Your module will produce blinking lights and several
|
||||
different sounds."
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
class sfxchas_state : public hh_pic16_state
|
||||
{
|
||||
public:
|
||||
sfxchas_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
hh_pic16_state(mconfig, type, tag)
|
||||
{ }
|
||||
|
||||
void update_display();
|
||||
DECLARE_WRITE8_MEMBER(write_b);
|
||||
DECLARE_READ8_MEMBER(read_c);
|
||||
DECLARE_WRITE8_MEMBER(write_c);
|
||||
|
||||
void speaker_decay_reset();
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(speaker_decay_sim);
|
||||
double m_speaker_volume;
|
||||
void sfxchas(machine_config &config);
|
||||
|
||||
protected:
|
||||
virtual void machine_start() override;
|
||||
};
|
||||
|
||||
void sfxchas_state::machine_start()
|
||||
{
|
||||
hh_pic16_state::machine_start();
|
||||
|
||||
// zerofill/init
|
||||
m_speaker_volume = 0;
|
||||
save_item(NAME(m_speaker_volume));
|
||||
}
|
||||
|
||||
// handlers
|
||||
|
||||
void sfxchas_state::speaker_decay_reset()
|
||||
{
|
||||
if (~m_b & 0x40)
|
||||
m_speaker_volume = 20.0;
|
||||
|
||||
// it takes a bit before it actually starts fading
|
||||
double vol = (m_speaker_volume > 1.0) ? 1.0 : m_speaker_volume;
|
||||
m_speaker->set_output_gain(0, vol);
|
||||
}
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(sfxchas_state::speaker_decay_sim)
|
||||
{
|
||||
// volume decays when speaker is off (divisor and timer period determine duration)
|
||||
speaker_decay_reset();
|
||||
m_speaker_volume /= 1.15;
|
||||
}
|
||||
|
||||
void sfxchas_state::update_display()
|
||||
{
|
||||
m_display->matrix(~m_b >> 4 & 3, (~m_c >> 1 & 0x7f) | (~m_b << 7 & 0x780));
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(sfxchas_state::write_b)
|
||||
{
|
||||
// B0-B3: led data
|
||||
// B4,B5: led select
|
||||
m_b = data;
|
||||
update_display();
|
||||
|
||||
// B6: speaker on
|
||||
// B7: speaker out
|
||||
speaker_decay_reset();
|
||||
m_speaker->level_w(data >> 7 & 1);
|
||||
}
|
||||
|
||||
READ8_MEMBER(sfxchas_state::read_c)
|
||||
{
|
||||
// C1-C7: buttons
|
||||
return (m_c & 1) ? 0xff : m_inputs[1]->read();
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(sfxchas_state::write_c)
|
||||
{
|
||||
// C0: enable buttons
|
||||
// C1-C7: digit segments
|
||||
m_c = data;
|
||||
update_display();
|
||||
}
|
||||
|
||||
// config
|
||||
|
||||
static INPUT_PORTS_START( sfxchas )
|
||||
PORT_START("IN.0") // port A
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) // top button, increment clockwise
|
||||
PORT_BIT( 0x0e, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.1") // port C
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON8 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
void sfxchas_state::sfxchas(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
PIC1655(config, m_maincpu, 1050000); // approximation
|
||||
m_maincpu->read_a().set_ioport("IN.0");
|
||||
m_maincpu->write_b().set(FUNC(sfxchas_state::write_b));
|
||||
m_maincpu->read_c().set(FUNC(sfxchas_state::read_c));
|
||||
m_maincpu->write_c().set(FUNC(sfxchas_state::write_c));
|
||||
|
||||
/* video hardware */
|
||||
PWM_DISPLAY(config, m_display).set_size(2, 7+4);
|
||||
m_display->set_segmask(3, 0x7f);
|
||||
config.set_default_layout(layout_sfxchas);
|
||||
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.25);
|
||||
TIMER(config, "speaker_decay").configure_periodic(FUNC(sfxchas_state::speaker_decay_sim), attotime::from_msec(25));
|
||||
}
|
||||
|
||||
// roms
|
||||
|
||||
ROM_START( sfxchas )
|
||||
ROM_REGION( 0x0400, "maincpu", 0 )
|
||||
ROM_LOAD( "pic_1655a-078", 0x0000, 0x0400, CRC(bf780733) SHA1(57ac4620d87492280ab8cf69c148f98e38ecedc4) )
|
||||
ROM_END
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tiger Electronics Rocket Pinball (model 7-460)
|
||||
@ -1760,7 +1917,8 @@ CONS( 1980, matchme, 0, 0, matchme, matchme, matchme_state, empty_
|
||||
|
||||
CONS( 1980, leboom, 0, 0, leboom, leboom, leboom_state, empty_init, "Lakeside", "Le Boom", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
|
||||
CONS( 1979, tbaskb, 0, 0, tbaskb, tbaskb, tbaskb_state, empty_init, "Tandy Radio Shack", "Electronic Basketball (Tandy)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1979, tbaskb, 0, 0, tbaskb, tbaskb, tbaskb_state, empty_init, "Tandy Corporation", "Electronic Basketball (Tandy)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1980, sfxchas, 0, 0, sfxchas, sfxchas, sfxchas_state, empty_init, "Tandy Corporation", "Sound Effects Chassis", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
|
||||
|
||||
CONS( 1979, rockpin, 0, 0, rockpin, rockpin, rockpin_state, empty_init, "Tiger Electronics", "Rocket Pinball", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1979, hccbaskb, 0, 0, hccbaskb, hccbaskb, hccbaskb_state, empty_init, "Tiger Electronics", "Half Court Computer Basketball", MACHINE_SUPPORTS_SAVE )
|
||||
|
@ -31,7 +31,7 @@
|
||||
@MP0168 TMS1000 1979, Conic Multisport/Tandy Sports Arena (model 60-2158)
|
||||
@MP0170 TMS1000 1979, Conic Football
|
||||
*MP0230 TMS1000 1980, Entex Blast It (6015)
|
||||
@MP0271 TMS1000 1982, Tandy Radio Shack Monkey See
|
||||
@MP0271 TMS1000 1982, Radio Shack Monkey See
|
||||
@MP0907 TMS1000 1979, Conic Basketball (101-006)
|
||||
@MP0908 TMS1000 1979, Conic Electronic I.Q.
|
||||
*MP0910 TMS1000 1979, Conic Basketball (101-003)
|
||||
@ -57,7 +57,7 @@
|
||||
@MP1221 TMS1100 1980, Entex Raise The Devil (6011)
|
||||
*MP1231 TMS1100 1983, Tandy 3-in-1 Sports Arena (model 60-2178)
|
||||
*MP1296 TMS1100? 1982, Entex Black Knight
|
||||
@MP1312 TMS1100 1983, Gakken FX-Micom R-165/Tandy Radio Shack Science Fair Microcomputer Trainer
|
||||
@MP1312 TMS1100 1983, Gakken FX-Micom R-165/Radio Shack Science Fair Microcomputer Trainer
|
||||
*MP1359 TMS1100? 1985, Capsela CRC2000
|
||||
@MP1525 TMS1170 1980, Coleco Head to Head: Electronic Baseball
|
||||
@MP1604 TMS1370 1982, Gakken Invader 2000/Tandy Cosmic Fire Away 3000
|
||||
@ -131,7 +131,7 @@
|
||||
inconsistent:
|
||||
|
||||
@TMS1007 TMS1000 1976, TSI Speech+ (S14002-A)
|
||||
@CD7282SL TMS1100 1981, Tandy Radio Shack Tandy-12 (serial is similar to TI Speak & Spell series?)
|
||||
@CD7282SL TMS1100 1981, Tandy-12 (serial is similar to TI Speak & Spell series?)
|
||||
|
||||
(* means undumped unless noted, @ denotes it's in this driver)
|
||||
|
||||
@ -2882,7 +2882,7 @@ ROM_END
|
||||
|
||||
known releases:
|
||||
- Hong Kong: Electronic Football II, Conic
|
||||
- USA: Electronic Football II, Tandy Radio Shack
|
||||
- USA: Electronic Football II, Tandy
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -5497,14 +5497,14 @@ ROM_END
|
||||
* 1 7seg led, 6 other leds, 1-bit sound
|
||||
|
||||
This is a simple educational home computer. Refer to the extensive manual
|
||||
for more information. It was published later in the USA by Tandy Radio Shack,
|
||||
for more information. It was published later in the USA by Tandy(Radio Shack),
|
||||
under their Science Fair series. Another 25 years later, Gakken re-released
|
||||
the R-165 as GMC-4, obviously on modern hardware, but fully compatible.
|
||||
|
||||
known releases:
|
||||
- Japan: FX-Micom R-165
|
||||
- USA: Science Fair Microcomputer Trainer, published by Tandy Radio Shack.
|
||||
Of note is the complete redesign of the case, adding more adjustable wiring
|
||||
- USA: Science Fair Microcomputer Trainer, published by Tandy. Of note is
|
||||
the complete redesign of the case, adding more adjustable wiring
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -8875,7 +8875,7 @@ ROM_END
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tandy Radio Shack Championship Football (model 60-2150)
|
||||
Tandy Championship Football (model 60-2150)
|
||||
* PCB label CYG-316
|
||||
* TMS1100NLL MP1193 (die label 1100B, MP1193)
|
||||
* 7-digit 7seg LED display + LED grid, 1-bit sound
|
||||
@ -8998,7 +8998,7 @@ ROM_END
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tandy Radio Shack Championship Football (model 60-2151)
|
||||
Tandy Championship Football (model 60-2151)
|
||||
* TMS1100NLL MP1183 (no decap)
|
||||
* 7-digit 7seg LED display + LED grid, 1-bit sound
|
||||
|
||||
@ -9064,7 +9064,7 @@ ROM_END
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tandy Radio Shack Computerized Arcade (1981, 1982, 1995)
|
||||
Tandy Computerized Arcade (1981, 1982, 1995)
|
||||
* TMS1100 MCU, label CD7282SL
|
||||
* 12 lamps behind buttons, 1-bit sound
|
||||
|
||||
@ -9241,7 +9241,7 @@ ROM_END
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
(Tandy) Radio Shack Monkey See (1982 version)
|
||||
Tandy(Radio Shack division) Monkey See (1982 version)
|
||||
* TMS1000 MP0271 (die label 1000E, MP0271), only half of ROM space used
|
||||
* 2 LEDs(one red, one green), 1-bit sound
|
||||
|
||||
@ -12479,10 +12479,10 @@ CONS( 1982, lostreas, 0, 0, lostreas, lostreas, lostreas_state, emp
|
||||
|
||||
CONS( 1978, alphie, 0, 0, alphie, alphie, alphie_state, empty_init, "Playskool", "Alphie - The Electronic Robot (patent)", MACHINE_SUPPORTS_SAVE ) // ***
|
||||
|
||||
CONS( 1980, tcfball, 0, 0, tcfball, tcfball, tcfball_state, empty_init, "Tandy Radio Shack", "Championship Football (model 60-2150)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1980, tcfballa, tcfball, 0, tcfballa, tcfballa, tcfballa_state, empty_init, "Tandy Radio Shack", "Championship Football (model 60-2151)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1981, tandy12, 0, 0, tandy12, tandy12, tandy12_state, empty_init, "Tandy Radio Shack", "Tandy-12: Computerized Arcade", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) // some of the minigames: ***
|
||||
CONS( 1982, monkeysee, 0, 0, monkeysee, monkeysee, monkeysee_state, empty_init, "Tandy Radio Shack", "Monkey See (1982 version)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1980, tcfball, 0, 0, tcfball, tcfball, tcfball_state, empty_init, "Tandy Corporation", "Championship Football (model 60-2150)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1980, tcfballa, tcfball, 0, tcfballa, tcfballa, tcfballa_state, empty_init, "Tandy Corporation", "Championship Football (model 60-2151)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1981, tandy12, 0, 0, tandy12, tandy12, tandy12_state, empty_init, "Tandy Corporation", "Tandy-12: Computerized Arcade", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) // some of the minigames: ***
|
||||
CONS( 1982, monkeysee, 0, 0, monkeysee, monkeysee, monkeysee_state, empty_init, "Tandy Corporation", "Monkey See (1982 version)", MACHINE_SUPPORTS_SAVE )
|
||||
|
||||
COMP( 1976, speechp, 0, 0, speechp, speechp, speechp_state, empty_init, "Telesensory Systems, Inc.", "Speech+", MACHINE_SUPPORTS_SAVE )
|
||||
|
||||
|
50
src/mame/layout/sfxchas.lay
Normal file
50
src/mame/layout/sfxchas.lay
Normal file
@ -0,0 +1,50 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
license:CC0
|
||||
-->
|
||||
<mamelayout version="2">
|
||||
|
||||
<!-- define elements -->
|
||||
|
||||
<element name="digit" defstate="0">
|
||||
<led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
|
||||
</element>
|
||||
|
||||
<element name="led" defstate="0">
|
||||
<disk state="0"><color red="0.1" green="0.01" blue="0.015" /></disk>
|
||||
<disk state="1"><color red="1.0" green="0.1" blue="0.15" /></disk>
|
||||
</element>
|
||||
<element name="but" defstate="0">
|
||||
<disk state="0"><color red="0.09" green="0.09" blue="0.1" /></disk>
|
||||
<disk state="1"><color red="0.18" green="0.18" blue="0.2" /></disk>
|
||||
</element>
|
||||
|
||||
|
||||
<!-- build screen -->
|
||||
|
||||
<view name="Internal Layout">
|
||||
<bounds left="28" right="84" top="26.5" bottom="82.5" />
|
||||
|
||||
<element name="digit1" ref="digit"><bounds x="50" y="50" width="6" height="9" /></element>
|
||||
<element name="digit0" ref="digit"><bounds x="56" y="50" width="6" height="9" /></element>
|
||||
|
||||
<element name="0.7" ref="led"><bounds x="55" y="31.5" width="2" height="2" /></element>
|
||||
<element name="0.8" ref="led"><bounds x="71" y="37.5" width="2" height="2" /></element>
|
||||
<element name="0.9" ref="led"><bounds x="77" y="53.5" width="2" height="2" /></element>
|
||||
<element name="0.10" ref="led"><bounds x="71" y="69.5" width="2" height="2" /></element>
|
||||
<element name="1.7" ref="led"><bounds x="55" y="75.5" width="2" height="2" /></element>
|
||||
<element name="1.8" ref="led"><bounds x="39" y="69.5" width="2" height="2" /></element>
|
||||
<element name="1.9" ref="led"><bounds x="33" y="53.5" width="2" height="2" /></element>
|
||||
<element name="1.10" ref="led"><bounds x="39" y="37.5" width="2" height="2" /></element>
|
||||
|
||||
<element ref="but" blend="add" inputtag="IN.0" inputmask="0x01"><bounds x="52" y="28.5" width="8" height="8" /></element>
|
||||
<element ref="but" blend="add" inputtag="IN.1" inputmask="0x02"><bounds x="68" y="34.5" width="8" height="8" /></element>
|
||||
<element ref="but" blend="add" inputtag="IN.1" inputmask="0x04"><bounds x="74" y="50.5" width="8" height="8" /></element>
|
||||
<element ref="but" blend="add" inputtag="IN.1" inputmask="0x08"><bounds x="68" y="66.5" width="8" height="8" /></element>
|
||||
<element ref="but" blend="add" inputtag="IN.1" inputmask="0x10"><bounds x="52" y="72.5" width="8" height="8" /></element>
|
||||
<element ref="but" blend="add" inputtag="IN.1" inputmask="0x20"><bounds x="36" y="66.5" width="8" height="8" /></element>
|
||||
<element ref="but" blend="add" inputtag="IN.1" inputmask="0x40"><bounds x="30" y="50.5" width="8" height="8" /></element>
|
||||
<element ref="but" blend="add" inputtag="IN.1" inputmask="0x80"><bounds x="36" y="34.5" width="8" height="8" /></element>
|
||||
|
||||
</view>
|
||||
</mamelayout>
|
@ -15759,6 +15759,7 @@ melodym // GAF
|
||||
matchme // Kingsford
|
||||
pabball // Caprice
|
||||
rockpin // Tiger Electronics
|
||||
sfxchas // Tandy Radio Shack
|
||||
tbaskb // Tandy Radio Shack
|
||||
touchme // Atari
|
||||
ttfball // Toytronic
|
||||
|
Loading…
Reference in New Issue
Block a user