Amstrad SSA-1 Speech Synthesizer: Difference between revisions
No edit summary |
|||
| (44 intermediate revisions by 10 users not shown) | |||
| Line 2: | Line 2: | ||
[[Image:Ssa-1.JPG|right|thumb|250px|The bundle]] | [[Image:Ssa-1.JPG|right|thumb|250px|The bundle]] | ||
A Speech Synthesizer from [[Amstrad]] based on the [[SPO256]] Speech Synthesizer | A Speech Synthesizer from [[Amstrad]] based on the [[SPO256]]-AL2 Speech Synthesizer | ||
== Software == | |||
* |SAY,@<string> - Converts a string af [[ASCII]] text to speech | |||
* |ECHO,<mode> - Activates text to speech conversion on text printed to the screen. | |||
* |APHONE,<allophone>[,<allophone>] - Send allophones directly to the interrupt driven allophone buffer. | |||
* |ROOM,@<value> - Find out how many free locations in the allophones buffer. | |||
* |QUIET - Clears the allophone buffer. | |||
* |SPON - Activates the speech interrrupt event. | |||
* |SPOFF - To prevent output of data from the allophone buffer. | |||
* |SPSTATUS,@<value> - Read the status of the speech processor. | |||
* |SPOUT,<allophone>[,<allophone>] - Sends allophones directly to the soundprocessor. | |||
== Technical Specs. == | == Technical Specs. == | ||
In the SSA-1, the SP0256-AL2 speech chip is clocked by a 3.12MHz ceramic resonator (unlike the similar dk'tronics device, where it is clocked at 4MHz). | |||
The SSA-1 uses I/O port: [[I/O_Port_Summary|#FBEE]], of which (according to the manual) only A10,A4,A0 are decoded. | |||
Port FBEEh READ - SP0256-AL2 Status: | |||
bit7 Status 1 (0=Speech Busy, 1=Ready/Halted) (SBY Pin, Standby) | |||
bit6 Status 2 (0=Ready to Receive Data, 1=Busy) (/LRQ Pin, Load Request) | |||
bit5-0 Not used (garbage, probably usually high) | |||
Port FBEEh WRITE - SP0256-AL2 Allophone: | |||
bit7-0 Allophone number | |||
Port FAEEh WRITE - Accidently used in the included RSX driver cassette (the driver sets BC=FBEEh and executes OUTI, which pre-decrements B, so the OUT accidently goes to FAEEh - the driver works despite of that bug since FBEEh is mirrored to that address). | |||
* A new allophone number can be send when Status.Bit6=0. | |||
* The allophone number should/must be in range of 00h..3Fh (6bit). | |||
* However, the whole 8bit databus is connected in the SSA-1. | |||
For details on the speech chip, see: | |||
* [[SP0256]] | |||
* [[SP0256 Voice Generator]] | |||
* [[SP0256 Instruction Set]] | |||
* [[SP0256 Allophones]] | |||
* [[SP0256 Pin-Outs]] | |||
== Software Support == | |||
=== Games === | |||
* [[3D Boxing]] | |||
* [[3D Stunt Rider]] | |||
* [[Alex Higgins World Pool]] | |||
* [[Alex Higgins World Snooker]] | |||
* [[Darkwurlde]] | |||
* [[Glen Hoddle Soccer]] | |||
* [[Roland in Space]] | |||
* [[Tubaruba]] | |||
=== Serious Software === | |||
* [[FutureOS]] (limited) | |||
'''Caution''' - Some webpages do (incorrectly) list further games: | |||
Gremlins (spanish version), | |||
Seablood and Robin of Sherwood (these contain code for using Port FBEC & FBEF for some kind of data transfer, possibly for [[PDS development system]] - but, not for speech). | |||
Also, Dragon Gold is listed as speech game (not sure why, it doesn't seem to use any special I/O ports; unless different versions of that game exist?) | |||
== Pictures == | == Pictures == | ||
| Line 19: | Line 68: | ||
<gallery caption="Amstrad SSA1"> | <gallery caption="Amstrad SSA1"> | ||
Image:Amstrad ssa1 1.JPG|Frontpage | Image:Amstrad ssa1 1.JPG|Frontpage | ||
Image:ssa1 5.JPG|Inside | Image:ssa1 5.JPG|Inside | ||
Image:ScreenPacked.jpg|Box (open) | |||
Image:ScreenBoxed.jpg|Box (side) | |||
Image:FullSSA1.jpg|Interface and Speakers | |||
Image:FullManual Tape.jpg|Manual and Tape | |||
Image:SSA1 FullBox.jpg|Box (front) | |||
Image:Amstrad SSA-1 Schematic.png|Schematic | |||
</gallery> | |||
<gallery caption="Amstrad SSA1 (300dpi scans by [[Robcfg]])"> | |||
Image:SSA1_Front.jpg|Front | |||
Image:SSA1_Back.jpg|Back | |||
Image:SSA1_PCB_Top.jpg|PCB Top | |||
Image:SSA1_PCB_Bottom.jpg|PCB Bottom | |||
</gallery> | </gallery> | ||
== | == Reviews == | ||
<gallery> | |||
image:Amstrad Computer User8507 014.jpg|The SSA1 compared to the dk'Tronics synth | |||
image:Amstrad Computer User8507 015.jpg | |||
image:Amstrad Computer User8507 016.jpg | |||
</gallery> | |||
== Examples of the Amstrad synth in use == | |||
{{#ev:youtube|fesVxipNaw8|300}} {{#ev:youtube|v8WKbKK3Apg|300}} | |||
[[ | == Downloads == | ||
* [[Media:Amstrad SSA-1 (Main Program).zip]] (cassette) | |||
* [[Media:Amstrad SSA-1 (Programas Basic).zip]] (cassette) | |||
* [[Media:SSA-1.zip|Amstrad SSA-1 drivers (English)]] [http://www.jonathanen.com/pages/Items/Amstrad/SSA-1/SSA-1.zip] (DSK for Emulators) | |||
* [[Media:Sp0256-al2-reversed-bit-order.zip|SP0256-AL2 ROM]] ('''caution''' - the bytes in the file are in reversed bit-order, ie. the "Target" values are unreversed, all other opcodes and parameters are reversed) | |||
== Manual == | |||
[[ | * [[File:Amstrad SSA-1_User_Instruction_Manual.pdf]] (pdf) | ||
* [[Manual of the Amstrad SSA-1 Speech Synthesizer]] (jpg's) | |||
* [https://framagit.org/offset/ssa-1-acepansion SSA-1 ACEpansion] on Framagit | |||
== | == Other Speech Synthesizers == | ||
* [https://github.com/lambdamikel/Speak-SID Speak-SID ''SSA-1 emulation''] Speech Synthesizer, SID Soundcard, MIDI IN SID+AY Synthesizer | |||
* [[Dk'tronics Speech Synthesizer]] | |||
* [[MHT Speech Synthesizer]] (MHT Ingenieros) | |||
* [[TMPI speech synthetizer]] (TechniMusique) | |||
[[Category: | [[Category:Amstrad Products]] | ||
[[Category:FutureOS]] | |||
[[Category:Manual]] | |||
[[Category:Music and sound]] | |||
[[Category:Peripherals]] | |||
Latest revision as of 01:11, 10 April 2025
A Speech Synthesizer from Amstrad based on the SPO256-AL2 Speech Synthesizer
Software
- |SAY,@<string> - Converts a string af ASCII text to speech
- |ECHO,<mode> - Activates text to speech conversion on text printed to the screen.
- |APHONE,<allophone>[,<allophone>] - Send allophones directly to the interrupt driven allophone buffer.
- |ROOM,@<value> - Find out how many free locations in the allophones buffer.
- |QUIET - Clears the allophone buffer.
- |SPON - Activates the speech interrrupt event.
- |SPOFF - To prevent output of data from the allophone buffer.
- |SPSTATUS,@<value> - Read the status of the speech processor.
- |SPOUT,<allophone>[,<allophone>] - Sends allophones directly to the soundprocessor.
Technical Specs.
In the SSA-1, the SP0256-AL2 speech chip is clocked by a 3.12MHz ceramic resonator (unlike the similar dk'tronics device, where it is clocked at 4MHz).
The SSA-1 uses I/O port: #FBEE, of which (according to the manual) only A10,A4,A0 are decoded.
Port FBEEh READ - SP0256-AL2 Status:
bit7 Status 1 (0=Speech Busy, 1=Ready/Halted) (SBY Pin, Standby) bit6 Status 2 (0=Ready to Receive Data, 1=Busy) (/LRQ Pin, Load Request) bit5-0 Not used (garbage, probably usually high)
Port FBEEh WRITE - SP0256-AL2 Allophone:
bit7-0 Allophone number
Port FAEEh WRITE - Accidently used in the included RSX driver cassette (the driver sets BC=FBEEh and executes OUTI, which pre-decrements B, so the OUT accidently goes to FAEEh - the driver works despite of that bug since FBEEh is mirrored to that address).
- A new allophone number can be send when Status.Bit6=0.
- The allophone number should/must be in range of 00h..3Fh (6bit).
- However, the whole 8bit databus is connected in the SSA-1.
For details on the speech chip, see:
Software Support
Games
- 3D Boxing
- 3D Stunt Rider
- Alex Higgins World Pool
- Alex Higgins World Snooker
- Darkwurlde
- Glen Hoddle Soccer
- Roland in Space
- Tubaruba
Serious Software
- FutureOS (limited)
Caution - Some webpages do (incorrectly) list further games:
Gremlins (spanish version), Seablood and Robin of Sherwood (these contain code for using Port FBEC & FBEF for some kind of data transfer, possibly for PDS development system - but, not for speech). Also, Dragon Gold is listed as speech game (not sure why, it doesn't seem to use any special I/O ports; unless different versions of that game exist?)
Pictures
- Amstrad SSA1
-
Frontpage
-
Inside
-
Box (open)
-
Box (side)
-
Interface and Speakers
-
Manual and Tape
-
Box (front)
-
Schematic
- Amstrad SSA1 (300dpi scans by Robcfg)
-
Front
-
Back
-
PCB Top
-
PCB Bottom
Reviews
-
The SSA1 compared to the dk'Tronics synth
Examples of the Amstrad synth in use
{{#ev:youtube|fesVxipNaw8|300}} {{#ev:youtube|v8WKbKK3Apg|300}}
Downloads
- Media:Amstrad SSA-1 (Main Program).zip (cassette)
- Media:Amstrad SSA-1 (Programas Basic).zip (cassette)
- Amstrad SSA-1 drivers (English) [1] (DSK for Emulators)
- SP0256-AL2 ROM (caution - the bytes in the file are in reversed bit-order, ie. the "Target" values are unreversed, all other opcodes and parameters are reversed)
Manual
- File:Amstrad SSA-1 User Instruction Manual.pdf (pdf)
- Manual of the Amstrad SSA-1 Speech Synthesizer (jpg's)
- SSA-1 ACEpansion on Framagit
Other Speech Synthesizers
- Speak-SID SSA-1 emulation Speech Synthesizer, SID Soundcard, MIDI IN SID+AY Synthesizer
- Dk'tronics Speech Synthesizer
- MHT Speech Synthesizer (MHT Ingenieros)
- TMPI speech synthetizer (TechniMusique)