Previous 199869 Revisions Next

r36172 Sunday 1st March, 2015 at 21:02:37 UTC by hap
notes
[src/mess/drivers]hh_tms1k.c hh_ucom4.c

trunk/src/mess/drivers/hh_tms1k.c
r244683r244684
4646
4747  (* denotes not yet emulated by MESS, @ denotes it's in this driver)
4848
49
50  TODO:
51  - verify output PLA and microinstructions PLA for MCUs that have been dumped
52    electronically (mpla is usually the default, opla is often custom)
53  - unknown MCU clocks for some
54  - some of the games rely on the fact that faster(longer) strobed leds appear
55    brighter: tc4(offensive players), bankshot(cue ball)
56  - add softwarelist for tc4 cartridges?
57  - stopthiep: unable to start a game (may be intentional?)
58
4959***************************************************************************/
5060
5161#include "emu.h"
r244683r244684
243253// The device strobes the outputs very fast, it is unnoticeable to the user.
244254// To prevent flickering here, we need to simulate a decay.
245255
246
247256void hh_tms1k_state::display_update()
248257{
249258   UINT32 active_state[0x20];
r244683r244684
362371  5) Football
363372  6) Lunar Lander
364373
365
366  TODO:
367  - some of the led symbols are probably wrong, output PLA is unknown
368  - microinstructions PLA is not verified
369
370374***************************************************************************/
371375
372376void hh_tms1k_state::mathmagi_display()
r244683r244684
532536
533537***************************************************************************/
534538
535
536539void hh_tms1k_state::amaztron_display()
537540{
538541   m_display_maxx = 8;
r244683r244684
649652
650653
651654
655
652656/***************************************************************************
653657
654658  Coleco Total Control 4
r244683r244684
678682  - Soccer      (K2?)
679683  - Basketball  (K1?)
680684
681
682  TODO:
683  - pin configuration of other carts is guessed
684  - softlist for the cartridges?
685  - offsensive players leds are supposed to look brighter
686  - MCU clock is unknown
687
688685***************************************************************************/
689686
690687void hh_tms1k_state::tc4_display()
r244683r244684
779776   PORT_CONFSETTING(    0x08, "Football" )
780777INPUT_PORTS_END
781778
779
782780static MACHINE_CONFIG_START( tc4, hh_tms1k_state )
783781
784782   /* basic machine hardware */
r244683r244684
799797MACHINE_CONFIG_END
800798
801799
800
801
802
802803/***************************************************************************
803804
804805  Entex Electronic Baseball (1)
r244683r244684
865866   ebball_display();
866867}
867868
869
868870static INPUT_PORTS_START( ebball )
869871   PORT_START("IN.0") // R1
870872   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_NAME("P2 Change Up")
r244683r244684
916918
917919
918920
921
922
919923/***************************************************************************
920924
921925  Ideal Electronic Detective
r244683r244684
927931  difficulty(1-3), then number of players(1-4), then [ENTER]. Refer to the
928932  manual for more information.
929933
930
931  TODO:
932  - MCU clock is unknown
933
934934***************************************************************************/
935935
936
937936READ8_MEMBER(hh_tms1k_state::elecdet_read_k)
938937{
939938   // note: the Vss row is always on
r244683r244684
12091208   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_NAME("9")
12101209INPUT_PORTS_END
12111210
1212
1213
12141211static MACHINE_CONFIG_START( comp4, hh_tms1k_state )
12151212
12161213   /* basic machine hardware */
r244683r244684
12281225MACHINE_CONFIG_END
12291226
12301227
1228
1229
1230
12311231/***************************************************************************
12321232
12331233  Milton Bradley Simon, created by Ralph Baer
r244683r244684
12351235  Revision A hardware:
12361236  * TMS1000 (die labeled MP3226), DS75494 lamp driver
12371237
1238  Newer revisions have a smaller 16-pin MB4850 chip instead of the TMS1000.
1239  This one has been decapped too, but we couldn't find an internal ROM.
1240  It is possibly a cost-reduced custom ASIC specifically for Simon.
1238  Newer revisions (also Pocket Simon) have a smaller 16-pin MB4850 chip
1239  instead of the TMS1000. This one has been decapped too, but we couldn't
1240  find an internal ROM. It is possibly a cost-reduced custom ASIC specifically
1241  for Simon. The semi-sequel Super Simon uses a TMS1100.
12411242
1242  Other games assumed to be on similar hardware:
1243  - Pocket Simon, but there's a chance it only exists with MB4850 chip
1244  - Super Simon (TMS1100)
1245
12461243***************************************************************************/
12471244
12481245READ8_MEMBER(hh_tms1k_state::simon_read_k)
r244683r244684
13251322
13261323
13271324
1325
13281326/***************************************************************************
13291327
13301328  Parker Brothers Code Name: Sector, by Bob Doyle
r244683r244684
13341332  boats are used to remember your locations (a Paint app should be ok too).
13351333  Refer to the official manual for more information, it is not a simple game.
13361334
1337
1338  TODO:
1339  - MCU clock is unknown
1340
13411335***************************************************************************/
13421336
13431337READ8_MEMBER(hh_tms1k_state::cnsector_read_k)
r244683r244684
13731367}
13741368
13751369
1376
13771370static INPUT_PORTS_START( cnsector )
13781371   PORT_START("IN.0") // O0
13791372   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CODE(KEYCODE_Q) PORT_NAME("Next Ship")
r244683r244684
14261419
14271420
14281421
1422
14291423/***************************************************************************
14301424
1431  Parker Bros Merlin handheld computer game, by Bob Doyle
1425  Parker Bros Merlin handheld game, by Bob Doyle
14321426  * TMS1100NLL MP3404A-N2
1427  * red LEDs and 1-bit sound
1428 
1429  Also published in Japan by Tomy as "Dr. Smith", white case instead of red.
1430  The one with dark-blue case is the rare sequel Master Merlin. More sequels
1431  followed too, but on other hardware.
14331432
14341433  To start a game, press NEW GAME, followed by a number:
14351434  1: Tic-Tac-Toe
r244683r244684
14411440
14421441  Refer to the official manual for more information on the games.
14431442
1444
1445  Other handhelds assumed to be on similar hardware:
1446  - Dr. Smith - by Tomy, released in Japan (basically a white version of Merlin,
1447    let's assume for now that the ROM contents is identical)
1448  - Master Merlin
1449
14501443***************************************************************************/
14511444
14521445READ8_MEMBER(hh_tms1k_state::merlin_read_k)
r244683r244684
14791472}
14801473
14811474
1482
14831475static INPUT_PORTS_START( merlin )
14841476   PORT_START("IN.0") // O0
14851477   PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_SLASH_PAD) PORT_NAME("Button 0")
r244683r244684
15091501
15101502static const INT16 merlin_speaker_levels[] = { 0, 10922, 21845, 32767 };
15111503
1512
15131504static MACHINE_CONFIG_START( merlin, hh_tms1k_state )
15141505
15151506   /* basic machine hardware */
r244683r244684
15311522MACHINE_CONFIG_END
15321523
15331524
1525
1526
1527
15341528/***************************************************************************
15351529
15361530  Parker Brothers Stop Thief, by Bob Doyle
r244683r244684
15401534  (called Electronic Crime Scanner) is an accessory. To start a game, press
15411535  the ON button. Otherwise, it is in test-mode where you can hear all sounds.
15421536
1543
1544  TODO:
1545  - MCU clock is unknown
1546  - stopthiep: unable to start a game (may be intentional?)
1547
15481537***************************************************************************/
15491538
15501539READ8_MEMBER(hh_tms1k_state::stopthief_read_k)
r244683r244684
16391628
16401629
16411630
1631
16421632/***************************************************************************
16431633
16441634  Parker Brothers Bank Shot (known as Cue Ball in the UK), by Garry Kitchen
r244683r244684
16521642  3: Poison Pool
16531643  4: Trick Shots
16541644
1655
1656  TODO:
1657  - bankshot: the cue ball led is strobed more often than other leds,
1658    making it look brighter. We need more accurate led decay simulation
1659    for this to work.
1660  - MCU clock is unknown
1661
16621645***************************************************************************/
16631646
16641647READ8_MEMBER(hh_tms1k_state::bankshot_read_k)
r244683r244684
16881671}
16891672
16901673
1691
1692
16931674/* physical button layout and labels is like this:
16941675  (note: remember that you can rotate the display in MESS)
16951676
r244683r244684
17161697   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
17171698INPUT_PORTS_END
17181699
1719
17201700static MACHINE_CONFIG_START( bankshot, hh_tms1k_state )
17211701
17221702   /* basic machine hardware */
r244683r244684
17391719
17401720
17411721
1722
17421723/***************************************************************************
17431724
17441725  Parker Brothers Split Second
r244683r244684
18331814
18341815
18351816
1836
1837
18381817/***************************************************************************
18391818
18401819  Tandy Radio Shack Computerized Arcade (1981, 1982, 1995)
r244683r244684
18541833
18551834  See below at the input defs for a list of the games.
18561835
1857
1858  TODO:
1859  - output PLA is not verified
1860  - microinstructions PLA is not verified
1861
18621836***************************************************************************/
18631837
18641838void hh_tms1k_state::tandy12_display()
r244683r244684
19581932   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
19591933};
19601934
1961
19621935static MACHINE_CONFIG_START( tandy12, hh_tms1k_state )
19631936
19641937   /* basic machine hardware */
r244683r244684
19811954
19821955
19831956
1957
1958
19841959/***************************************************************************
19851960
19861961  TMS1100NLL MP3403 DBS 7836 SINGAPORE some game board with 7-segs.
r244683r244684
20432018   PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_V)
20442019INPUT_PORTS_END
20452020
2021
20462022static const UINT16 unk3403_output_pla[0x20] =
20472023{
20482024   /* O output PLA configuration currently unknown */
r244683r244684
20522028   0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f
20532029};
20542030
2055
20562031static MACHINE_CONFIG_START( unk3403, hh_tms1k_state )
20572032
20582033   /* basic machine hardware */
r244683r244684
20712046MACHINE_CONFIG_END
20722047
20732048
2049
2050
2051
20742052/***************************************************************************
20752053
20762054  Game driver(s)
20772055
20782056***************************************************************************/
20792057
2080
20812058ROM_START( mathmagi )
20822059   ROM_REGION( 0x800, "maincpu", 0 )
20832060   ROM_LOAD( "mp1030", 0x0000, 0x800, CRC(a81d7ccb) SHA1(4756ce42f1ea28ce5fe6498312f8306f10370969) )
r244683r244684
21002077ROM_END
21012078
21022079
2103
2104
21052080ROM_START( tc4 )
21062081   ROM_REGION( 0x1000, "maincpu", 0 )
21072082   ROM_LOAD( "mp7334", 0x0000, 0x1000, CRC(923f3821) SHA1(a9ae342d7ff8dae1dedcd1e4984bcfae68586581) )
r244683r244684
21602135ROM_END
21612136
21622137
2163
21642138ROM_START( comp4 )
21652139   ROM_REGION( 0x0400, "maincpu", 0 )
21662140   ROM_LOAD( "tmc0904nl_cp0904a", 0x0000, 0x0400, CRC(6233ee1b) SHA1(738e109b38c97804b4ec52bed80b00a8634ad453) )
r244683r244684
21862160   ROM_LOAD( "tms1000_simon_opla.pla", 0, 365, CRC(2943c71b) SHA1(bd5bb55c57e7ba27e49c645937ec1d4e67506601) )
21872161ROM_END
21882162
2163
21892164ROM_START( cnsector )
21902165   ROM_REGION( 0x0400, "maincpu", 0 )
21912166   ROM_LOAD( "mp0905bnl_za0379", 0x0000, 0x0400, CRC(201036e9) SHA1(b37fef86bb2bceaf0ac8bb3745b4702d17366914) )
r244683r244684
22402215   ROM_LOAD( "tms0980_stopthie_spla.pla", 0, 157, CRC(399aa481) SHA1(72c56c58fde3fbb657d69647a9543b5f8fc74279) )
22412216ROM_END
22422217
2218
22432219ROM_START( bankshot )
22442220   ROM_REGION( 0x1000, "maincpu", 0 )
22452221   ROM_LOAD( "mp7313", 0x0000, 0x1000, CRC(7a5016a9) SHA1(a8730dc8a282ffaa3d89e675f371d43eb39f39b4) )
r244683r244684
22722248   ROM_LOAD( "tms1100_tandy12_opla.pla", 0, 365, NO_DUMP )
22732249ROM_END
22742250
2251
22752252ROM_START( unk3403 )
22762253   ROM_REGION( 0x0800, "maincpu", 0 )
22772254   ROM_LOAD( "mp3403", 0x0000, 0x0800, CRC(9eabaa7d) SHA1(b1f54587ed7f2bbf3a5d49075c807296384c2b06) )
r244683r244684
22842261
22852262
22862263
2287
2288
2289
2290
2291
22922264CONS( 1980, mathmagi, 0, 0, mathmagi, mathmagi, driver_device, 0, "APF Electronics Inc.", "Mathemagician", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
22932265
22942266CONS( 1979, amaztron, 0, 0, amaztron, amaztron, driver_device, 0, "Coleco", "Amaze-A-Tron", GAME_SUPPORTS_SAVE )
r244683r244684
23042276CONS( 1977, comp4, 0, 0, comp4, comp4, driver_device, 0, "Milton Bradley", "Comp IV", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
23052277CONS( 1978, simon, 0, 0, simon, simon, driver_device, 0, "Milton Bradley", "Simon (Rev. A)", GAME_SUPPORTS_SAVE )
23062278
2307
23082279CONS( 1977, cnsector, 0, 0, cnsector, cnsector, driver_device, 0, "Parker Brothers", "Code Name: Sector", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
23092280CONS( 1978, merlin, 0, 0, merlin, merlin, driver_device, 0, "Parker Brothers", "Merlin", GAME_SUPPORTS_SAVE )
23102281CONS( 1979, stopthie,  0,        0, stopthief, stopthief, driver_device, 0, "Parker Brothers", "Stop Thief (Electronic Crime Scanner)", GAME_SUPPORTS_SAVE )
trunk/src/mess/drivers/hh_ucom4.c
r244683r244684
22// copyright-holders:hap
33/***************************************************************************
44
5  NEC uCOM4 MCU handhelds
5  NEC uCOM4 MCU tabletops/handhelds or other simple devices.
66
77
8
8  known chips:
9 
910  serial  device  etc.
1011-----------------------------------------------
1112 @048     uPD552  1980, Tomy Tennis
r244683r244684
133134
134135***************************************************************************/
135136
136
137
138137// The device strobes the outputs very fast, it is unnoticeable to the user.
139138// To prevent flickering here, we need to simulate a decay.
140139
141
142140void hh_ucom4_state::display_update()
143141{
144142   UINT32 active_state[0x20];
r244683r244684
212210}
213211
214212
213
215214/***************************************************************************
216215
217216  Minidrivers (I/O, Inputs, Machine Config)
r244683r244684
305304
306305
307306
307
308308/***************************************************************************
309309
310310  Tomy(tronic) Tennis (manufactured in Japan)
r244683r244684
323323
324324***************************************************************************/
325325
326
327326READ8_MEMBER(hh_ucom4_state::tmtennis_input_r)
328327{
329328   // A,B: buttons
r244683r244684
394393   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_PLAYER(2)
395394INPUT_PORTS_END
396395
396
397397void hh_ucom4_state::tmtennis_set_clock()
398398{
399399   // MCU clock is from an LC circuit oscillating by default at ~360kHz,
r244683r244684
412412   tmtennis_set_clock();
413413}
414414
415
416415static MACHINE_CONFIG_START( tmtennis, hh_ucom4_state )
417416
418417   /* basic machine hardware */
r244683r244684
442441
443442
444443
444
445
445446/***************************************************************************
446447
447448  Tomy(tronic) Pac-Man (manufactured in Japan)
r244683r244684
537538
538539
539540
541
542
540543/***************************************************************************
541544
542545  Tomy Alien Chase (manufactured in Japan)
r244683r244684
592595   alnchase_display_w(space, offset, data);
593596}
594597
598
595599/* physical button layout and labels is like this:
596600
597601    POWER SOUND LEVEL PLAYER
r244683r244684
629633   PORT_BIT( 0x0c, IP_ACTIVE_HIGH, IPT_UNUSED )
630634INPUT_PORTS_END
631635
636
632637static MACHINE_CONFIG_START( alnchase, hh_ucom4_state )
633638
634639   /* basic machine hardware */
r244683r244684
676681ROM_END
677682
678683
679
680684ROM_START( tmpacman )
681685   ROM_REGION( 0x0800, "maincpu", 0 )
682686   ROM_LOAD( "d553c-160", 0x0000, 0x0800, CRC(b21a8af7) SHA1(e3122be1873ce76a4067386bf250802776f0c2f9) )


Previous 199869 Revisions Next


© 1997-2024 The MAME Team