Jump to content
IGNORED

Transylvania, a new version using TMS5220 synthetizer


jespol

Recommended Posts

I am very proud to present to you an adaptation of a very famous classic game Transylvania, on a completely unknown French computer. I can see some perplexity in your eyes.

The target computer is an Exelvision machine, named Exeltel… a French computer using many Ti components and defined by engineers from Ti. I know that's not very enough exciting for many people. But this game uses intensively the famous vocal synthesizer TMS5220 from Ti with original samples. The intro of the game is made with original voice samples and the game itself contains many sound and voice samples. I am sure this point can interest Ti fans.

 

you can see a Video of the introduction, and here the web site of authors.

An emulator for Exelvision computer exists here, we can give the procedure if interested (cause of French language in the emulator).

 

This is the best adaptation of Transylvania from Antonio Antiochia: high resolution graphic using the 16/32 bits version (ST/Amiga), sound samples, music, very fast move in the world (fast IO access, caching method, fast command line). The game contains many surprises for people who known the game: some different riddles and different original ends.

Exetel configuration is 48ko RAM, 64ko VRAM,720ko floppy drive, 320x250 with 8 fixed colors for video

 

If you think that this game adaptation could interest other people (Apple fans, Transylvania fans, retrogaming fans), I let you post some information about the game. I don't know relevant US or UK sites and forums which could be interested in this news. Thanks a lot.

 

If interested, there are discussions about this game and more generally about technical challenges on old computers in a French forum here. We can understand and write English ( as French people can write and speak English !!!).

I will be happy to discuss with here or elsewhere you about this game. I don't want you become fans of exelvision, but I hope that you could be interested in some technical parts (related to Ti components).

  • Like 3
Link to comment
Share on other sites

Hi there and welcome!

 

I just watched the youtube video, and must say that is very cool :thumbsup:

Didn't know the Exceltec so had to do some searching... and to be honest, I also did not know the TMS7040 :)

 

Can you share some details on how the speech was synthesized? Was QBOX used ?

 

Thinking about it, that would make one hell of a TI-99/4A game.

Link to comment
Share on other sites

TMS7040 is from the TMS7000 series... the most popular exelvision machine was Exl100 with TMS7020.

This is a classical architecture from Ti: CPU uses SRAM (2ko by default in exelvision computer) and 32 or 64ko of DRAM for Video purpose... this VRAM is used as RAM with slow communication between CPU/Video Processor... in the same way as for some Ti Computer with basic.

We use a configuration with SRAM extension (16ko SRAM) and floppy device extension (adding 32ko of SRAM).

 

The speech was synthesized on QBOX... and before this, for voices only, we used an on-line speech synthetizer from AT&T to produce very good WAV samples from text (it was better for english accent).

The architecture which drives the TMS5220 is complex but easy to program: the main CPU (7040) communicates with a second CPU (7042) in charge of IO with other components. The 7042 communicates directly with the TMS5220... so the main CPU only sends some commands to the 7042 and sends flow of data when the 7042 requires data (buffer underflow between 7042 and 7020).

 

The video processor is a TMS3556 from Ti France:

- 320x250 with 8 fixed colors in graphic mode

- 40x25 lines in text mode (with 4 generators which can be redefined)

- a mixe mode which combine graphic and text (used in Transylvania)

- 640x250 in B&W graphic mode

  • Like 1
Link to comment
Share on other sites

Very nice. What I noted was:

All the hardware is based on Texas Instruments chips.

The keyboard and the joysticks are linked by infrared to the CPU.

Exelbasic derived from TI CC40 and TI 994A XB.

An American TI employee, who participated in the development of the CC40 Basic, came to France.

Great site (seen it before):

http://www.exelvision.fr

Link to comment
Share on other sites

Exeltel is an evolution of Exl100 and has a classic keyboard (infrared is unusable in practice).

Links for At&T natural voice speaking here. It is not the best way to generate good sample for TMS5220 (Natural voice produces WAV file, WAV file is transforms by Qbox to produce LPC compatible data), but it is very convenient (no voice to record).

 

The Transylvania is made in Basic (exelbasic+) with many routines in assembler to manage media data (graphic, sound and music)...

 

I don't know Ti-99... but I suppose it is possible to obtain the same result.

Edited by jespol
Link to comment
Share on other sites

No. It can really only synthesize the human voice and throat.

 

Yes and No.

Qbox can convert some sound, and the result is sometime good, sometime awful.

We succed in generating many good samples other than human voice.

But one thing is sure: all kind of musical sound is absolutely impossible to synthesize.

 

And the best solution to ensure a good result: use your voice to simulate sound (dog, cat, chicken) :-D

Link to comment
Share on other sites

Yeah I guess there may be a few things that it can reproduce, but its really designed to simulate a human, western vocal tract. If you want to make an explosion sound, it should be possible, since humans can simulate the sound. Record a human making an explosion sound and it will work. Record a real explosion sound and probably not. Same with dogs and cats etc. It could could probably even do drum rhythms - as long as it was a human doing the sounds!

Link to comment
Share on other sites

I am sorry but all the souds from the game are synthetized from WAV files with original sounds and not human simulating sounds... the game proove that TMS5220 can reproduce realistic sound and not only human voice.

I will give you a link to a windows executable version of the game (in fact dcexel emulator customized for this game) and you'll can ear many realistic sounds.

 

No, TMS5220 can play other sound than human voice... and the limitation we have encoutered came from Qbox which is dedicated to human voice: algotithm used is too specific, but by modifying some parameters this tool can generate good LPC string for non human sound.

But algorithm inside Qbox cannot manage melodic sound and some sounds (with many bass).

Some other games and programs for Exelvision computer proove that TMS5220 can reproduce many type of sounds... perhaps this chip has never been really used with Ti99 computers ?

 

We have found sources of a modern encoder for LPC string, and we will try to adapt the output (and the algorithm) for TMS5220... I hope this new converter will enhance human and non human samples.

 

I feel it's amazing to hear realistic sample sounds in 1985/86 computers... these kind of sound appear only after 1990 for many other computers (I mean games with many sample sounds). And a complex sound cost nothing: some hundred of bytes... 1-2kB max.

Link to comment
Share on other sites

That is interesting. :)

 

But not surprising. Remember what LPC is actually encoding: it is encoding a mathematical model of the human vocal tract. This model is essentially a pipe with a buzzer at one end, and a white noise generator. The pipe model provides modulation, the buzzer provides pitch, and the white noise provides hiss. The output sound is limited to 8khz, but nothing prevents complex sounds from being generated by this combination.

 

I've only run a few non-voice samples through QBox, and I also found it did not produce good results. But you are probably right that it is just QBox. Taking audio apart is a really complicated job that has improved a lot over the years with faster computers and better algorithms. It would be great to have a more modern tool that works for this old chip. :)

 

It's also true that the TI-99 does not use the TMS5220 speech chip -- it uses an older version which is not quite as sophisticated (though it is compatible with source data for the 5220 and close enough for most purposes). I can't remember the exact differences but I do believe we covered it in this forum somewhere. :)

 

While you can play back samples without the speech synth, it's a cool idea to do sound effects with it for such a low byte cost, I hadn't considered that. Suddenly the speech synthesizer is interesting to me... ;)

 

Link to comment
Share on other sites

I don't know this program (a vocal synthetizer on Ti99 using TMS5220 LPC phonems ?)... the result is a classical robotic sound !

Voices and sounds from Transylvania game use a very different approach: all LPC sounds come from WAV files which we have processed with Qbox. So we can obtain different (and more natural) voices (king, hero, princess with very different tones) and many samples (owl, wolf, frog, cat, different laughs, heart beat, door, footstep, scifi sound, etc.).

 

We will on work on a modern tool to convert WAV files... but the project is starting.

Link to comment
Share on other sites

Are you sending the 'start speech' code before you start streaming the data to the synth? There's also a stop speech code.

 

The start speech command is >60 (a single byte).

Stop speech is >FF (a single byte).

 

Without the start speech command you will often just get garbage.

 

Mark

Link to comment
Share on other sites

If the Ti99 contains a TMS5220, it sould work... the coeffecient in TMS5220 could be slightly different but the sound sould be similar. The lpc in my archive are the exact binary data that you have to send to TMS5220.

But perhaps the routine that manages the communication between CPU and 5220 in the Ti99 needs a specific format ?

Edited by jespol
Link to comment
Share on other sites

Jespol,

 

Could you post the one of the source files (the output from QBOX with the BYTE data)? I'll give it a try. I'm sure it should work just fine.

 

I looked at the .bin files that you posted, but I can't/don't know how to convert them into a file that I can work with. I really need source code.

 

Mark

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...