Previous 199869 Revisions Next

r36702 Friday 27th March, 2015 at 02:46:55 UTC by hap
(MESS)New working game added
-----------------
Speak & Read [hap, Sean Riddle, Kevin Horton]
[hash]snread.xml*
[src/mess]mess.lst
[src/mess/drivers]tispeak.c

trunk/hash/snread.xml
r0r245214
1<?xml version="1.0"?>
2<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
3
4<softwarelist name="snread" description="Speak &amp; Read modules">
5
6
7   <software name="dogonlog">
8      <description>A Dog on a Log</description>
9      <year>1980</year>
10      <publisher>Texas Instruments</publisher>
11      <info name="serial" value="CD3534"/>
12      <part name="cart" interface="snread">
13         <dataarea name="rom" size="0x4000">
14            <rom name="cd3534a.vsm" size="0x4000" crc="78410e74" sha1="29bf24f7d3a49c097542befc51874bd238989a7a" offset="0" />
15         </dataarea>
16      </part>
17   </software>
18
19   <software name="ontrack">
20      <description>On the Track</description>
21      <year>1981</year>
22      <publisher>Texas Instruments</publisher>
23      <info name="serial" value="CD3538"/>
24      <part name="cart" interface="snread">
25         <dataarea name="rom" size="0x4000">
26            <rom name="cd3538.vsm" size="0x4000" crc="873eeca6" sha1="6673ef02635d8c418cc647840d110488c9fc76fd" offset="0" />
27         </dataarea>
28      </part>
29   </software>
30
31   <software name="seasight">
32      <description>Sea Sights</description>
33      <year>1980</year>
34      <publisher>Texas Instruments</publisher>
35      <info name="serial" value="CD2396"/>
36      <part name="cart" interface="snread">
37         <dataarea name="rom" size="0x4000">
38            <rom name="cd2396a.vsm" size="0x4000" crc="b005d92a" sha1="f1f9d83e18e77d89590e794cb157c8fe18e5aa05" offset="0" />
39         </dataarea>
40      </part>
41   </software>
42
43   <software name="whoszoo">
44      <description>Who's Who at the Zoo</description>
45      <year>1980</year>
46      <publisher>Texas Instruments</publisher>
47      <info name="serial" value="CD2397"/>
48      <part name="cart" interface="snread">
49         <dataarea name="rom" size="0x4000">
50            <rom name="cd2397.vsm" size="0x4000" crc="e0f1e76d" sha1="1cb73cf1e754536e7c09ac23ee45db60c70acd58" offset="0" />
51         </dataarea>
52      </part>
53   </software>
54
55
56</softwarelist>
trunk/src/mess/drivers/tispeak.c
r245213r245214
135135      Apparently QA never found out and it ended up in the final product.
136136
137137    Speak & Math (US), 1986
138    - MCU: CD2708
138    - MCU: CD2708, labeled CD2708N2L (die labeled TMC0270F 2708A)
139139    - TMS51xx(1/2): 16KB CD2381
140140    - TMS51xx(2/2): 4KB CD2614
141141
r245213r245214
149149Speak & Read:
150150
151151    Speak & Read (US), 1980
152    - MCU: CD2705**
152    - MCU: CD2705, labeled CD2705B-N2L (die labeled TMC0270E 2705B) - 2nd revision?
153153    - TMS51xx(1/2): 16KB CD2394 (rev.A)
154154    - TMS51xx(2/2): 16KB CD2395 (rev.A)
155155
r245213r245214
693693INPUT_PORTS_END
694694
695695
696static INPUT_PORTS_START( snread )
697   PORT_INCLUDE( snspell )
698   
699   PORT_MODIFY("IN.7")
700   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_NAME("Word Zapper")
701   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_4) PORT_NAME("Word Maker")
702   
703   PORT_MODIFY("IN.8")
704   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_5) PORT_NAME("Read It")
705   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_6) PORT_NAME("Picture Read")
706   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_7) PORT_NAME("Letter Stumper")
707   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_8) PORT_NAME("Hear It")
708   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_PGUP) PORT_NAME("Word Zap/On") PORT_CHANGED_MEMBER(DEVICE_SELF, tispeak_state, power_button, (void *)1)
709INPUT_PORTS_END
710
711
696712static INPUT_PORTS_START( lantutor )
697713   PORT_INCLUDE( snspell )
698714
699   PORT_MODIFY("IN.5") // R5
715   PORT_MODIFY("IN.5")
700716   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_MINUS) PORT_NAME("Diacritical")
701717   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Space")
702718
703   PORT_MODIFY("IN.6") // R6
719   PORT_MODIFY("IN.6")
704720   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1) PORT_NAME("1")
705721   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_2) PORT_NAME("2")
706722   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_NAME("3")
707723   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_4) PORT_NAME("4")
708724   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_5) PORT_NAME("5")
709725
710   PORT_MODIFY("IN.7") // R7
726   PORT_MODIFY("IN.7")
711727   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_6) PORT_NAME("6")
712728   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_7) PORT_NAME("7")
713729   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_8) PORT_NAME("8")
714730   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_9) PORT_NAME("9")
715731   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_0) PORT_NAME("0")
716732
717   PORT_MODIFY("IN.8") // Vss!
733   PORT_MODIFY("IN.8")
718734   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_COLON) PORT_NAME("Translate")
719735   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_OPENBRACE) PORT_NAME("Learn")
720736   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_CLOSEBRACE) PORT_NAME("Phrase")
r245213r245214
818834   MCFG_SOFTWARE_LIST_ADD("cart_list", "snspell")
819835MACHINE_CONFIG_END
820836
837static MACHINE_CONFIG_DERIVED( snread, snmath )
838
839   /* basic machine hardware */
840   MCFG_CPU_MODIFY("maincpu")
841   MCFG_TMS1XXX_WRITE_O_CB(WRITE16(tispeak_state, snspell_write_o))
842
843   /* cartridge */
844   MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "snread")
845   MCFG_GENERIC_EXTENSIONS("vsm")
846   MCFG_GENERIC_LOAD(tispeak_state, tispeak_cartridge)
847
848   MCFG_SOFTWARE_LIST_ADD("cart_list", "snread")
849MACHINE_CONFIG_END
850
821851static MACHINE_CONFIG_DERIVED( lantutor, snmath )
822852
823853   /* basic machine hardware */
r245213r245214
851881   ROM_REGION( 1246, "maincpu:ipla", 0 )
852882   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
853883   ROM_REGION( 2127, "maincpu:mpla", 0 )
854   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // taken from cd2708, need to verify if it's same as tmc0271
884   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
855885   ROM_REGION( 1246, "maincpu:opla", 0 )
856886   ROM_LOAD( "tms0270_tmc0271_opla.pla", 0, 1246, CRC(9ebe12ab) SHA1(acb4e07ba26f2daca5f1c234885ac0371c7ce87f) )
857887
r245213r245214
867897   ROM_REGION( 1246, "maincpu:ipla", 0 )
868898   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
869899   ROM_REGION( 2127, "maincpu:mpla", 0 )
870   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // placeholder, use the one we have
900   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
871901   ROM_REGION( 1246, "maincpu:opla", 0 )
872902   ROM_LOAD( "tms0270_tmc0271_opla.pla", 0, 1246, CRC(9ebe12ab) SHA1(acb4e07ba26f2daca5f1c234885ac0371c7ce87f) )
873903
r245213r245214
882912   ROM_REGION( 1246, "maincpu:ipla", 0 )
883913   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
884914   ROM_REGION( 2127, "maincpu:mpla", 0 )
885   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // taken from cd2708, need to verify if it's same as tmc0271
915   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
886916   ROM_REGION( 1246, "maincpu:opla", 0 )
887917   ROM_LOAD( "tms0270_tmc0271_opla.pla", 0, 1246, CRC(9ebe12ab) SHA1(acb4e07ba26f2daca5f1c234885ac0371c7ce87f) )
888918
r245213r245214
898928   ROM_REGION( 1246, "maincpu:ipla", 0 )
899929   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
900930   ROM_REGION( 2127, "maincpu:mpla", 0 )
901   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // placeholder, use the one we have
931   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
902932   ROM_REGION( 1246, "maincpu:opla", 0 )
903933   ROM_LOAD( "tms0270_tmc0271_opla.pla", 0, 1246, CRC(9ebe12ab) SHA1(acb4e07ba26f2daca5f1c234885ac0371c7ce87f) )
904934
r245213r245214
913943   ROM_REGION( 1246, "maincpu:ipla", 0 )
914944   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
915945   ROM_REGION( 2127, "maincpu:mpla", 0 )
916   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // taken from cd2708, need to verify if it's same as tmc0271
946   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
917947   ROM_REGION( 1246, "maincpu:opla", 0 )
918948   ROM_LOAD( "tms0270_tmc0271_opla.pla", 0, 1246, CRC(9ebe12ab) SHA1(acb4e07ba26f2daca5f1c234885ac0371c7ce87f) )
919949
r245213r245214
929959   ROM_REGION( 1246, "maincpu:ipla", 0 )
930960   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
931961   ROM_REGION( 2127, "maincpu:mpla", 0 )
932   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // placeholder, use the one we have
962   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
933963   ROM_REGION( 1246, "maincpu:opla", 0 )
934964   ROM_LOAD( "tms0270_tmc0271_opla.pla", 0, 1246, BAD_DUMP CRC(9ebe12ab) SHA1(acb4e07ba26f2daca5f1c234885ac0371c7ce87f) ) // placeholder, use the one we have
935965
r245213r245214
945975   ROM_REGION( 1246, "maincpu:ipla", 0 )
946976   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
947977   ROM_REGION( 2127, "maincpu:mpla", 0 )
948   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) )
978   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) )
949979   ROM_REGION( 1246, "maincpu:opla", 0 )
950980   ROM_LOAD( "tms0270_cd2708_opla.pla", 0, 1246, CRC(1abad753) SHA1(53d20b519ed73ce248368047a056836afbe3cd46) )
951981
r245213r245214
966996   ROM_REGION( 1246, "maincpu:ipla", 0 )
967997   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
968998   ROM_REGION( 2127, "maincpu:mpla", 0 )
969   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // taken from cd2708, need to verify if it's same as cd2704
999   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
9701000   ROM_REGION( 1246, "maincpu:opla", 0 )
971   ROM_LOAD( "tms0270_cd2708_opla.pla", 0, 1246, BAD_DUMP CRC(1abad753) SHA1(53d20b519ed73ce248368047a056836afbe3cd46) ) // "
1001   ROM_LOAD( "tms0270_cd2708_opla.pla", 0, 1246, BAD_DUMP CRC(1abad753) SHA1(53d20b519ed73ce248368047a056836afbe3cd46) ) // taken from cd2708, need to verify if it's same as cd2704
9721002
9731003   ROM_REGION( 0x8000, "tms6100", 0 )
9741004   ROM_LOAD( "cd2392.vsm", 0x0000, 0x4000, CRC(4ed2e920) SHA1(8896f29e25126c1e4d9a47c9a325b35dddecc61f) )
r245213r245214
9761006ROM_END
9771007
9781008
1009ROM_START( snread )
1010   ROM_REGION( 0x1000, "maincpu", 0 )
1011   ROM_LOAD( "cd2705b-n2l", 0x0000, 0x1000, CRC(c235636e) SHA1(57b24dd8414bf76ec786a51d10cb8a5898b60e18) )
1012
1013   ROM_REGION( 1246, "maincpu:ipla", 0 )
1014   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
1015   ROM_REGION( 2127, "maincpu:mpla", 0 )
1016   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) )
1017   ROM_REGION( 1246, "maincpu:opla", 0 )
1018   ROM_LOAD( "tms0270_cd2705_opla.pla", 0, 1246, CRC(bf859848) SHA1(66b297fbf534968fa6db7413b99ef0e81cc35ddc) )
1019
1020   ROM_REGION( 0xc000, "tms6100", ROMREGION_ERASEFF ) // 8000-bfff = space reserved for cartridge
1021   ROM_LOAD( "cd2394a.vsm", 0x0000, 0x4000, CRC(cbb0e2b1) SHA1(5e322c683baf806523de171310258ae371671327) )
1022   ROM_LOAD( "cd2395a.vsm", 0x4000, 0x4000, CRC(3d519504) SHA1(76b19ba5a9a3486005e09c98e8a6abc8b88288dd) )
1023ROM_END
1024
1025
9791026ROM_START( lantutor )
9801027   ROM_REGION( 0x1000, "maincpu", 0 )
9811028   ROM_LOAD( "us4631748_tmc0275", 0x0000, 0x1000, CRC(22818845) SHA1(1a84f15fb18ca66b1f2bf7491d76fbc56068984d) ) // extracted visually from patent 4631748, verified with source code
r245213r245214
9831030   ROM_REGION( 1246, "maincpu:ipla", 0 )
9841031   ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) )
9851032   ROM_REGION( 2127, "maincpu:mpla", 0 )
986   ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // taken from cd2708, need to verify if it's same as tmc0275
1033   ROM_LOAD( "tms0270_default_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // not verified
9871034   ROM_REGION( 1246, "maincpu:opla", 0 )
9881035   ROM_LOAD( "tms0270_tmc0271_opla.pla", 0, 1246, BAD_DUMP CRC(9ebe12ab) SHA1(acb4e07ba26f2daca5f1c234885ac0371c7ce87f) ) // taken from snspell, mostly looks correct
9891036
r245213r245214
10021049COMP( 1986, snmath,     0,       0, snmath,   snmath,   driver_device, 0,        "Texas Instruments", "Speak & Math (US, 1986 version)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_SOUND )
10031050COMP( 1980, snmathp,    snmath,  0, snmath,   snmath,   driver_device, 0,        "Texas Instruments", "Speak & Math (US, 1980 version/prototype)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
10041051
1052COMP( 1980, snread,     0,       0, snread,   snread,   tispeak_state, snspell,  "Texas Instruments", "Speak & Read (US)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_SOUND )
1053
10051054COMP( 1979, lantutor,   0,       0, lantutor, lantutor, tispeak_state, lantutor, "Texas Instruments", "Language Tutor (prototype)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
trunk/src/mess/mess.lst
r245213r245214
10761076ladictee
10771077snmath
10781078snmathp
1079snread
10791080lantutor
10801081
10811082// Texas Instruments Calculators

Previous 199869 Revisions Next


© 1997-2024 The MAME Team