summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/devices/cpu/tms1000/tms0980.h24
-rw-r--r--src/devices/cpu/tms1000/tms1000.h44
-rw-r--r--src/devices/cpu/tms1000/tms1100.h46
-rw-r--r--src/devices/cpu/tms1000/tms1400.h22
-rw-r--r--src/devices/cpu/tms1000/tms1k_base.h41
-rw-r--r--src/mame/handheld/tispeak.cpp39
6 files changed, 155 insertions, 61 deletions
diff --git a/src/devices/cpu/tms1000/tms0980.h b/src/devices/cpu/tms1000/tms0980.h
index 331dbde66aa..be6a3906a6e 100644
--- a/src/devices/cpu/tms1000/tms0980.h
+++ b/src/devices/cpu/tms1000/tms0980.h
@@ -14,6 +14,30 @@
#include "tms0970.h"
+// pinout reference
+
+/*
+ ____ ____
+ R2 1 |* \_/ | 28 R3
+ R1 2 | | 27 R4
+ R0 3 | | 26 R5
+ ? 4 | | 25 R6
+ Vdd 5 | | 24 R7
+ K3 6 | | 23 R8
+ K8 7 | TMS0980 | 22 ?
+ K4 8 | | 21 ?
+ K2 9 | | 20 Vss
+ K1 10 | | 19 ?
+ O7 11 | | 18 O0
+ O6 12 | | 17 O1
+ O5 13 | | 16 O2
+ O4 14 |___________| 15 O3
+
+ note: TMS0980 official pin names for R0-R8 is D9-D1, O0-O7 is S(A-G,DP)
+
+*/
+
+
class tms0980_cpu_device : public tms0970_cpu_device
{
public:
diff --git a/src/devices/cpu/tms1000/tms1000.h b/src/devices/cpu/tms1000/tms1000.h
index f3dbb0a826a..0c01fd6e5bf 100644
--- a/src/devices/cpu/tms1000/tms1000.h
+++ b/src/devices/cpu/tms1000/tms1000.h
@@ -14,6 +14,50 @@
#include "tms1k_base.h"
+// pinout reference
+
+/*
+ ____ ____
+ R8 1 |* \_/ | 28 R7
+ R9 2 | | 27 R6
+ R10 3 | | 26 R5
+ Vdd 4 | | 25 R4
+ K1 5 | | 24 R3
+ K2 6 | | 23 R2
+ K4 7 | TMS1000 | 22 R1
+ K8 8 | TMS1070 | 21 R0
+ INIT 9 | | 20 Vss
+ O7 10 | | 19 OSC2
+ O6 11 | | 18 OSC1
+ O5 12 | | 17 O0
+ O4 13 | | 16 O1
+ O3 14 |___________| 15 O2
+
+ ____ ____ ____ ____
+ R8 1 |* \_/ | 48 R7 R8 1 |* \_/ | 48 NC
+ R9 2 | | 39 R6 R9 2 | | 39 R7
+ R10 3 | | 38 R5 R10 3 | | 38 R6
+ R11 4 | | 37 R4 R11 4 | | 37 R5
+ R12 5 | | 36 R3 R12 5 | | 36 R4
+ Vdd 6 | | 35 NC Vdd 6 | | 35 R3
+ K1 7 | | 34 NC K1 7 | | 34 NC
+ K2 8 | | 33 NC K2 8 | | 33 NC
+ K4 9 | | 32 NC K4 9 | | 32 NC
+ K8 10 | TMS1200 | 31 R2 K8 10 | TMS1270 | 31 NC
+ INIT 11 | | 30 R1 INIT 11 | | 30 R2
+ O7 12 | | 29 R0 NC 12 | | 29 R1
+ NC 13 | | 28 Vss NC 13 | | 28 Vss
+ NC 14 | | 27 OSC2 O7 14 | | 27 R0
+ NC 15 | | 26 OSC1 O6 15 | | 26 OSC2
+ O6 16 | | 25 O0 O5 16 | | 25 OSC1
+ O5 17 | | 24 O1 O9 17 | | 24 O0
+ O4 18 | | 23 O2 O4 18 | | 23 O1
+ O3 19 | | 22 NC O3 19 | | 22 O2
+ NC 20 |___________| 21 NC O8 20 |___________| 21 NC
+
+*/
+
+
class tms1000_cpu_device : public tms1k_base_device
{
public:
diff --git a/src/devices/cpu/tms1000/tms1100.h b/src/devices/cpu/tms1000/tms1100.h
index a55d7e6099a..f61145346c5 100644
--- a/src/devices/cpu/tms1000/tms1100.h
+++ b/src/devices/cpu/tms1000/tms1100.h
@@ -14,6 +14,52 @@
#include "tms1000.h"
+// pinout reference
+
+/*
+ ____ ____
+ R8 1 |* \_/ | 28 R7
+ R9 2 | | 27 R6
+ R10 3 | | 26 R5
+ Vdd 4 | | 25 R4
+ K1 5 | | 24 R3
+ K2 6 | | 23 R2
+ K4 7 | TMS1100 | 22 R1
+ K8 8 | TMS1170 | 21 R0
+ INIT 9 | | 20 Vss
+ O7 10 | | 19 OSC2
+ O6 11 | | 18 OSC1
+ O5 12 | | 17 O0
+ O4 13 | | 16 O1
+ O3 14 |___________| 15 O2
+
+ ____ ____
+ R11 1 |* \_/ | 48 R10
+ R12 2 | | 39 R9
+ R13 3 | | 38 R8
+ R14 4 | | 37 R7
+ R15 5 | | 36 R6
+ Vdd 6 | | 35 NC
+ K1 7 | | 34 R5
+ K2 8 | | 33 R4
+ K4 9 | | 32 R3
+ K8 10 | TMS1300 | 31 R1
+ INIT 11 | | 30 R0
+ O7 12 | | 29 Vss
+ NC 13 | | 28 OSC2
+ NC 14 | | 27 OSC1
+ NC 15 | | 26 O0
+ O6 16 | | 25 O1
+ O5 17 | | 24 O2
+ O4 18 | | 23 NC
+ O3 19 | | 22 NC
+ NC 20 |___________| 21 NC
+
+ note: TMS1100 pinout is the same as TMS1000
+
+*/
+
+
class tms1100_cpu_device : public tms1000_cpu_device
{
public:
diff --git a/src/devices/cpu/tms1000/tms1400.h b/src/devices/cpu/tms1000/tms1400.h
index 3f89ee34fb8..9967702596c 100644
--- a/src/devices/cpu/tms1000/tms1400.h
+++ b/src/devices/cpu/tms1000/tms1400.h
@@ -14,6 +14,28 @@
#include "tms1100.h"
+// pinout reference
+
+/*
+ ____ ____
+ R0 1 |* \_/ | 28 Vss
+ R1 2 | | 27 OSC2
+ R2 3 | | 26 OSC1
+ R3 4 | | 25 O0
+ R4 5 | | 24 O1
+ R5 6 | | 23 O2
+ R6 7 | TMS1400 | 22 O3
+ R7 8 | | 21 O4
+ R8 9 | | 20 O5
+ R9 10 | | 19 O6
+ R10 11 | | 18 O7
+ Vdd 12 | | 17 K8
+ INIT 13 | | 16 K4
+ K1 14 |___________| 15 K2
+
+*/
+
+
class tms1400_cpu_device : public tms1100_cpu_device
{
public:
diff --git a/src/devices/cpu/tms1000/tms1k_base.h b/src/devices/cpu/tms1000/tms1k_base.h
index f8b7990c517..45a03dd5af4 100644
--- a/src/devices/cpu/tms1000/tms1k_base.h
+++ b/src/devices/cpu/tms1000/tms1k_base.h
@@ -17,47 +17,6 @@
#include "machine/pla.h"
-// pinout reference
-
-/*
- ____ ____ ____ ____
- R8 1 |* \_/ | 28 R7 R0 1 |* \_/ | 28 Vss
- R9 2 | | 27 R6 R1 2 | | 27 OSC2
- R10 3 | | 26 R5 R2 3 | | 26 OSC1
- Vdd 4 | | 25 R4 R3 4 | | 25 O0
- K1 5 | | 24 R3 R4 5 | | 24 O1
- K2 6 | TMS1000 | 23 R2 R5 6 | | 23 O2
- K4 7 | TMS1070 | 22 R1 R6 7 | TMS1400 | 22 O3
- K8 8 | TMS1100 | 21 R0 R7 8 | | 21 O4
- INIT 9 | TMS1170 | 20 Vss R8 9 | | 20 O5
- O7 10 | | 19 OSC2 R9 10 | | 19 O6
- O6 11 | | 18 OSC1 R10 11 | | 18 O7
- O5 12 | | 17 O0 Vdd 12 | | 17 K8
- O4 13 | | 16 O1 INIT 13 | | 16 K4
- O3 14 |___________| 15 O2 K1 14 |___________| 15 K2
-
-
- ____ ____
- R2 1 |* \_/ | 28 R3
- R1 2 | | 27 R4
- R0 3 | | 26 R5
- ? 4 | | 25 R6
- Vdd 5 | | 24 R7
- K3 6 | | 23 R8
- K8 7 | TMS0980 | 22 ?
- K4 8 | | 21 ?
- K2 9 | | 20 Vss
- K1 10 | | 19 ?
- O7 11 | | 18 O0
- O6 12 | | 17 O1
- O5 13 | | 16 O2
- O4 14 |___________| 15 O3
-
- note: TMS0980 official pin names for R0-R8 is D9-D1, O0-O7 is S(A-G,DP)
-
-*/
-
-
class tms1k_base_device : public cpu_device
{
public:
diff --git a/src/mame/handheld/tispeak.cpp b/src/mame/handheld/tispeak.cpp
index aed511de91e..93637f75f08 100644
--- a/src/mame/handheld/tispeak.cpp
+++ b/src/mame/handheld/tispeak.cpp
@@ -42,7 +42,7 @@ above expectations. TI continued to manufacture many products for this line.
- VFD: NEC FIP8A5AR no. 3A
- notes: keyboard has buttons instead of cheap membrane
- Speak & Spell (US), 1979
+ Speak & Spell (US), 1980
- MCU: TMC0271, label TMC0271H-N2L FDS (die label: T0270D 0271H)
- TMS51xx: TMC0281
- VSM(1/2): 16KB TMC0351N2L
@@ -50,14 +50,14 @@ above expectations. TI continued to manufacture many products for this line.
- notes: fixed a funny bug with gibberish-talk when Module button is pressed
with no module inserted, MCU ROM contents differs from 1978 version
- Speak & Spell (US), 1980
- - MCU: same as 1979 version
+ Speak & Spell (US), 1981
+ - MCU: same as 1980 version
- TMS51xx: TMC0281D
- VSM: 16KB CD2350(rev.A)
- notes: only 1 VSM, meaning much smaller internal vocabulary
Speak & Spell (Japan), 1980
- - MCU: TMC0271 (assume same as US 1979 version)
+ - MCU: TMC0271 (assume same as US 1980 version)
- TMS51xx: TMC0281
- VSM(1/2): 16KB CD2321
- VSM(2/2): 16KB CD2322
@@ -74,35 +74,34 @@ above expectations. TI continued to manufacture many products for this line.
word 'butcher' took 3 days - I still don't know if it sounds right."
Speak & Spell (UK), 1981
- - MCU: TMC0271 (assume same as US 1979 version)
+ - MCU: TMC0271 (assume same as US 1980 version)
- TMS51xx: CD2801
- VSM: 16KB CD62175
- VFD: some seen with the one from Speak & Math(!)
- notes: this one has a dedicated voice actor
- Speak & Spell (Spanish, prototype), 1981
+ Speak & Spell (Spanish, prototype), 1980
- MCU: CD2701N2L P (die label: T0270D 2701)
- TMS51xx: TMC0281 (die label: T0280A 0281)
- VSM(1/2): 16KB CD2319
- VSM(2/2): 16KB CD2320
- VFD: 8 digits with 14 segments, DP and accent mark
- Speak & Spell (France) "La Dictée Magique", 1980
+ Speak & Spell (France) "La Dictée Magique", 1981
- MCU: CD2702, label CD2702AN2L (die label: TMC0270F 2702A)
- TMS51xx: CD2801
- VSM: 16KB CD2352
Speak & Spell (Germany) "Buddy", 1980 (stylized as "buddy")
- - MCU & TMS51xx: same as French 1980 version
+ - MCU & TMS51xx: same as French version
- VSM(1/2): 16KB CD2345*
- VSM(2/2): 16KB CD2346*
- VFD: has umlaut instead of apostrophe
- Speak & Spell (Italy) "Grillo Parlante", 1982
- - MCU & TMS51xx: same as French 1980 version
+ Speak & Spell (Italy) "Grillo Parlante", 1983
+ - MCU & TMS51xx: same as French version
- VSM: 16KB CD62190
- VFD: same as Speak & Math
- - notes: it appears that TI ran out of original snspell VFDs in the early 80s?
Speak & Spell Compact (US), 1981
- MCU: CD8011, label CD8011A-NL (die label: 1100B)
@@ -162,13 +161,13 @@ Speak & Math:
of the TI employees in a hurry, the day before a demo. Apparently QA
never found out and it ended up in the final product.
- Speak & Math (US), 1981
+ Speak & Math (US), 1986
- MCU: CD2708, label CD2708N2L (die label: TMC0270F 2708A)
- TMS51xx: CD2801
- VSM(1/2): 16KB CD2381
- VSM(2/2): 4KB CD2614
- Speak & Math 'Compact' (France) "Les Maths Magiques", 1986?
+ Speak & Math 'Compact' (France) "Les Maths Magiques", 1982
- MCU: CP3447-NL* (TMS1100?)
- TMS51xx: CD2801A
- VSM: 16KB? CD62173*
@@ -1916,23 +1915,23 @@ ROM_END
// YEAR NAME PARENT CMP MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS
-COMP( 1979, snspell, 0, 0, sns_tmc0281, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (US, 1979 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
+COMP( 1980, snspell, 0, 0, sns_tmc0281, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (US, 1980 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
COMP( 1978, snspellua, snspell, 0, sns_tmc0281, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (US, 1978 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
-COMP( 1980, snspellub, snspell, 0, sns_tmc0281d, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (US, 1980 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // less speech data
+COMP( 1981, snspellub, snspell, 0, sns_tmc0281d, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (US, 1981 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // less speech data
COMP( 1978, snspellp, snspell, 0, sns_tmc0281, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (US, patent)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
COMP( 1978, snspelluk, snspell, 0, sns_tmc0281, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (UK, 1978 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
COMP( 1981, snspelluka, snspell, 0, sns_cd2801, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (UK, 1981 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // less speech data
-COMP( 1979, snspelljp, snspell, 0, sns_tmc0281, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (Japan)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // speaks English
-COMP( 1981, snspellsp, snspell, 0, snspellsp, snspellsp, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (Spanish, prototype)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
-COMP( 1980, snspellfr, snspell, 0, sns_cd2801, snspellfr, tispeak_state, init_snspell, "Texas Instruments", u8"La Dictée Magique (France)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
-COMP( 1982, snspellit, snspell, 0, snspellit, snspellit, tispeak_state, init_snspell, "Texas Instruments / Clementoni", "Grillo Parlante (Italy)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
+COMP( 1980, snspelljp, snspell, 0, sns_tmc0281, snspell, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (Japan)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // speaks English
+COMP( 1980, snspellsp, snspell, 0, snspellsp, snspellsp, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell (Spanish, prototype)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
+COMP( 1981, snspellfr, snspell, 0, sns_cd2801, snspellfr, tispeak_state, init_snspell, "Texas Instruments", u8"La Dictée Magique (France)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
+COMP( 1983, snspellit, snspell, 0, snspellit, snspellit, tispeak_state, init_snspell, "Texas Instruments / Clementoni", "Grillo Parlante (Italy)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
COMP( 1982, snspellc, 0, 0, snspellc, snspellc, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell Compact (US, 1982 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
COMP( 1981, snspellca, snspellc, 0, snspellc, snspellc, tispeak_state, init_snspell, "Texas Instruments", "Speak & Spell Compact (US, 1981 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
COMP( 1982, snspellcuk, snspellc, 0, snspellcuk, snspellcuk, tispeak_state, init_snspell, "Texas Instruments", "Speak & Write (UK)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
COMP( 1980, snmath, 0, 0, snmath, snmath, tispeak_state, empty_init, "Texas Instruments", "Speak & Math (US, 1980 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
-COMP( 1981, snmatha, snmath, 0, snmath, snmath, tispeak_state, empty_init, "Texas Instruments", "Speak & Math (US, 1981 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // less speech data
+COMP( 1986, snmatha, snmath, 0, snmath, snmath, tispeak_state, empty_init, "Texas Instruments", "Speak & Math (US, 1986 version)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND ) // less speech data
COMP( 1980, snmathp, snmath, 0, snmath, snmath, tispeak_state, empty_init, "Texas Instruments", "Speak & Math (US, patent)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND | MACHINE_IS_INCOMPLETE )
COMP( 1980, snread, 0, 0, snread, snread, tispeak_state, init_snspell, "Texas Instruments", "Speak & Read (US)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )