GI/Microchip SP0256 Processador de fala e CTS256A-AL2 Emulação do processador de texto em fala
Baseado no Emulador de Intellivoice, de Joe Zbiciak.
Versão 0.0.6-alfa.
Um pré-liberação dos executáveis (Win32-X86) pode ser encontrado em 'lançamentos'.
-r ;SP0256_VS2005.sln para compatibilidade com vs2005SP0256_VS2005.sln para construir no VS2005;SP0256.sln para construir no VS2017 (ou superior - para verificar).-w[wavFreq]:file.wav ;-DT = rastreio; -DD = depuração de etapa única, -DS = amostras;Dois emuladores neste projeto:
Dois programas:
Eles podem ser combinados (a saída do CTS256A-AL2 serve como entrada para SP0256):
CTS256A-AL2 -I:README.MD | SP0256 -I-
Atualmente, este projeto pode ser criado usando o Microsoft Visual Studio 2005 usando o arquivo de solução SP0256_VS2005.sln , ou Microsoft Visual Studio 2017 e em diante usando o arquivo de solução SP0256.sln .
SP0256 (TM) emulador
GI/Microchip SP0256-AL2 Narrador (TM) e SP0256-012 Processador de fala Intellivoice (TM)
Este programa emula com precisão o micro-sequenciador SP0256 e o gerador de voz, usando as imagens de ROM da fala original incorporada. O gerador de voz consiste em um gerador de pulso e ruído glótico e um filtro digital de 12 polos.
Duas versões da ROM da fala estão incluídas:
Especifique -mAL2 (padrão) para selecionar a ROM da fala do narrador al2 (TM), ou -m012 para selecionar a ROM do discurso Intellivoice.
A entrada pode ser stdin ou um arquivo. Especifique -i- para usar stdin ou -iFilename para usar um arquivo de entrada. O formato pode ser ASCII (os rótulos de alofona ou pausa para Al2, ou as palavras da fala para 012), ou binários (endereços de 6 bits - os bits mais altos são mascarados). Especifique -t para o modo de texto ASCII (o padrão) ou -b para o modo binário.
A saída pode ser o dispositivo de saída de som padrão ou um arquivo .wav. Especifique -wWavFile para escrever o fluxo de áudio para wavfile. Especifique -wFreq:WavFile para gerar um arquivo WAV em uma frequência de amostragem diferente do padrão. O formato de arquivo de onda de áudio será Mono PCM de 8 bits.
A frequência XTAL também pode ser especificada através da opção -xXtal , onde 1000000 <= XTAL <= 5000000. O valor padrão para XTAL é 3120000 (3,12 MHz).
A frequência de amostragem de áudio é dada pela expressão Freq = Xtal / 312 . Portanto, para a frequência XTAL padrão de 3,12 MHz, a frequência de amostragem de áudio será de 10 kHz. Essa frequência de amostragem de áudio será a frequência padrão para o arquivo .wav se nenhum outro valor for especificado através da opção -w .
São fornecidos sinalizadores de eco/verbose/depuração:
-e para ecoar os alofones gerados, pausas ou palavras;-v para exibir mais informações sobre os alofones gerados, pausas ou palavras;-dD para rastrear as instruções do micro-sequenciador e permitir um passo único;-dT para rastrear as instruções do micro-sequenciador;-dS para exibir as formas de onda geradas.Uso:
sp0256 [-m{AL2|012}] [-e] [-v] [-xClockFreq] [ -t | -b | -a ] [ -i{inFile|-} ] [-wWavFile]
-mAL2 Select Narrator(tm) speech ROM
-m012 Select Intellivoice speech ROM
-e Echo speech elements (words or allophones)
-v Verbose mode
-d[D|S|T] Set debug for [D]ebug, [S]amples or [T]race
-xClkFreq Xtal Clock Frequency in Hz (range: 1000000..5000000)
-iInFile Say File
-i- Say from stdin: echo ... | sp0256 -i-
-t Text Mode (labels) (default)
-b Binary Mode (addresses)
-a Pronounce all words or allophones in speech ROM
-wWavFile Create .wav file
CTS256A-AL2 (TM) emulador
GI/Microchip CTS256A-AL2 (TM) Processador de fala de fala em fala
Este programa emula com precisão o chip Companion CTS256A-AL2 do processador de fala SP0256-AL2, usando a imagem ROM de código para fala original incorporada.
A entrada pode ser Stdin, ou um arquivo ou a linha de comando. Especifique -i- usar o stdin, -iFilename para usar um arquivo de entrada ou colocar o texto no final da linha de comando, após as opções.
A saída é stdout. Ele pode ser canalizado para SP0256.exe para pronunciar diretamente os alofones convertidos no texto de entrada. O formato pode ser ASCII (os rótulos do alofônio ou pausa) ou binário (endereços de 6 bits ou 0x40). Especifique -t para o modo de texto ASCII (o padrão) ou -b para o modo binário.
São fornecidos sinalizadores de eco/verbose/depuração:
-e para ecoar o texto de entrada;-v para ecoar os rótulos de alofone convertidos;-d para entrar no modo de depuração. O CTS256A-AL2 normalmente gera a saída para 'OK' na inicialização. Especifique -n para suprimir isso.
Uso:
cts256a-al2 [-iFile] [-t] [-b] [-e] [-d] [-v] [-n] [text]
-iFile Optional input filename
-t Select text output (allophone labels) (default)
-b Select binary output (range 40..7F)
-e Echo input text
-v Verbose mode
-d Debug mode
-n Suppress 'O.K.'
-- Stop parsing options
text Optional text to convert to speech
Se não -ifile e nenhum text for especificado na linha de comando, lê a entrada do stdin.
Exemplo: echo Hello World. | CTS256A-AL2.exe -n | SP0256.exe -i-
Folha de dados: http://bitsavers.informatik.uni-stuttgart.de/components/gi/speech/general_instrument_-_an-0505d_-_cts256a-al2_code-speech_chipset_-110dec1986.pdf
Imagem da ROM binária: https://github.com/palazzol/tms7xxx_dumper/blob/main/software/dumps/cts256a.bin do projeto Github: https://github.com/palazzol/tms7xx_dumperper
http://spatula-city.org/~im14u2c/sp0256-al2/
Esta imagem foi revertida por bytes. Deve ser desconfiado para incorporar isso ao Ivoice.c em ivoice.c no Projeto https://github.com/libretro/freeintv.
http://spatula-city.org/~im14u2c/intv/tech/ivoice.html
Observe que a ROM da máscara é específica do Intellivoice, não o SP0256-AL2!
https://github.com/libretro/freeintv
Observe que a ROM da máscara é específica do Intellivoice, não o SP0256-AL2!
Página inicial: https://www.cpcwiki.eu/index.php/sp0256
Gerador de voz: https://www.cpcwiki.eu/index.php/sp0256_voice_generator
Allophones: https://www.cpcwiki.eu/index.php/sp0256_allophones
Conjunto de instruções: https://www.cpcwiki.eu/index.php/sp0256_instruction_set
Times medidos: https://www.cpcwiki.eu/index.php/sp0256_measured_timings
A Microchip, Inc. mantém os direitos autorais do design e da imagem da ROM SP0256-AL2 e à imagem CTS256A-AL2 ROM. O microchip mantém os direitos de propriedade intelectual dos algoritmos e dados que os dispositivos emulados SP0256 e CTS256A-AL2 contêm.
Joe Zbiciak, autor do Emulador de Intellivoice em C Language, no qual este emulador SP0256 se baseia.
Frank Palazzolo, que projetou um extrator para despejar as ROMs mascaradas de dispositivos baseados em TMS7000, e publicou o ROM binário Image cts256a.bin .