Jump to content
IGNORED

Emulation problems


Kurt_Woloch

Recommended Posts

I've tried to do some TI-99 stuff in the past week. Initial main purpose was to make an audio recording of a program I wrote back in 1983 which makes the TI-99 sing a short song I composed called "Key are you" using the speech output feature of Terminal Emulator II. At first I thought I must still have a recording of that on an old tape, but I couldn't find that tape. Second idea was to hook up the TI-99 and record the audio directly from it (well, not exactly directly...). Everything worked nicely, and I quickly found the correct disk, but then I found out that mysteriously my Speech Synthesizer has died. Every time a program tries to access it, the TI-99 just crashes. On the other hand, the Peripherial Box worked nicely.

 

So my next idea was to transfer the program to the PC and try it on an emulator. But how do you do that? Well, my idea was to do a tape saving of it, actually recording it on the PC and then converting that recording into a file usable on TI emulators. Well, I found two programs for the PC to do the converting job. One of them was CS1er, but that one does not work very well, despite tries of me to clean up the audio.

 

So I tried to use the WAV file in MESS directly, but somehow the tape control refused to work properly, or at least I couldn't figure out how to operate it properly. I blamed that on the version of MESS I had and downloaded the latest version, but that one only gave me more trouble... it didn't accept the WAV file at all, and I also found out that support for the old cartridge format had gone (as I already wrote in another thread).

 

So I had to fix some things to get it going. First I downloaded a fresh set of RPK files for the new MESS version, and then I downloaded another program for converting the tape, tape994a, which was rather tricky to get hold of since the author's homepage heavily uses JAVA and crashes Internet Explorer 9. But finally I managed to get it, and with it, conversion worked pretty well. Then I finally managed to get it going in MESS along with Terminal Emulator II, but the output doesn't quite sound right. Here, the main trouble seems to be that Terminal Emulator connects a string of allophones to produce its speech output, and each allophone gets sent to the Speech Synthesizer as a separate command. Now here comes the trouble... basically, you can imagine the speech signal being a base frequency with the pitch of the speaker with some overtones which vary according to the letters spoken. (Yes, I know this is a bit technical). Now if a speech command ends while the wave is at an arbitrary point, the "real thing" would continue the wave at the point it just was. MESS, however, does not seem to do this, instead it seems to reset the wave with each new command, which makes the speaker sound somewhat distorted if commands follow in rapid succession, like they do in Terminal Emulator II. At least I think that's what's going on here.

 

I then tried another emulator, Win994a, which basically seems to have a much nicer speech output here which sounds nearly correctly, but its frequency response is somewhat distorted compared to the original... I remember the original speech output had much more bass than Win994a's output has. This aspect is handled correctly in MESS. But Win994a's sound output generally leaves something to be desired... it seems to use sine waves instead of the square waves the original sound chip puts out, which just sounds wrong. Also, in Win994a, the synchronisation to the speech synthesizer seems somewhat off, which you can see by the sound from the sound chip I built in. In MESS, this sound starts after the Speech Synthesizer has stopped singing. In Win994a, however, it starts somewhat earlier.

 

Then I tried to do some custom speech in Extended Basic. It was always my dream to make the TI talk German. Now that my speech synthesizer is broken, I basically can forget this dream, but I still tried to put together a program that puts out some custom speech out of LPC data created with QBOX. I think I somewhat succeded here. And since that speech segment is in one piece, MESS renders it nicely. However, only once... I built in a loop described below which repeats the speech, and on repeat, part of the speech becomes garbled. In Win994a, however, it's different... there, sometimes the speech gets output, and sometimes it doesn't. I can't say when it does and when it does not. I can't say how this one sounds on the real TI99 since my Speech Synthesizer is now broken.

 

Anyway... I've attached two files to this mail. The file called "speechtest.zip" contains a disk image which contains the two programs mentioned:

 

speechtest.zip

 

"KEYAREYOU" works with Terminal Emulator. You have to hit the space bar after the screen goes black, which will start the song. After the song there is a fading tone, then some silence, and after that, some garbled speech comes out (can't remember if it worked like that on the original too).

"CUSTOMSPEE" works with Extended Basic. It first says "Hello" out of the Speech Synth's standard vocabulary, then loads the custom speech data, after which the custom speech data gets output. Then a question mark appears which promts you to enter an arbitrary string (which gets discarded). On pressing "Enter", the speech gets repeated... or not (as described above).

 

The second file, "Speech error TMS5220 emulation.PNG", is a diagram I drew up which roughly describes what I think to be the error in MESS concerning speech commands. You can see two (crudely drawn) sine waves on yellow background. The red lines mark the 0 level, the blue lines mark the transition of one allophone (speech command) to the next. The upper wave would be the original output where the wave just continues with each new command. The lower wave would be MESS's output where the wave gets restarted with each new command.

 

post-8393-126133755552_thumb.png

 

Oh, and then I tried to find another program, "TI99 PC", which is supposed to read my TI disks on a PC 5 1/4" drive. Since I've got an old 386 with such a drive, I thought I could use it to convert up all my old TI disks which contain a lot of programs written in Extended Basic. But somehow the only download link I can find is on the following page:

 

http://www.99er.net/download.html

 

and strangely, the download on this page seems to be broken, as are many downloads on that page.

 

Finally, I also tried the emulator Classic99, but somehow disk support doesn't seem to quite work. I chose a bit of a different path to install it (D:\Programme\Spiele\classic99\), and now that emulator doesn't find any of the programs in its "DSK1" directory.

Link to comment
Share on other sites

....

 

Oh, and then I tried to find another program, "TI99 PC", which is supposed to read my TI disks on a PC 5 1/4" drive. Since I've got an old 386 with such a drive, I thought I could use it to convert up all my old TI disks which contain a lot of programs written in Extended Basic. But somehow the only download link I can find is on the following page:

...

and strangely, the download on this page seems to be broken, as are many downloads on that page.

...

 

Regarding PC transfer using TI99-PC and omniflop, you might want to check here:

http://tech.groups.yahoo.com/group/ti99-4a/message/68159

 

... and here

ftp://ftp.whtech.com/pc%20utilities/Using%20OmniFlop%20with%20TI%20floppies.%20vers%201.1.pdf

 

... and here

ftp://ftp.whtech.com/pc%20utilities/

Link to comment
Share on other sites

Thank you for posting the links! Sadly, the download link in the first message is broken, and the second link only shows a readme file for "Omniflop", which seems not to be able to deal with the 5 1/4" disks I have, only with 3 1/2" disks.

 

But the third link worked for me. I chose to download Version 3.0.0 over the newer version because the newer version is 2.9 MB in size, and at that size I'd have a slight problem putting it onto the 386 PC because of its hardware... it only has a 3 1/2" and a 5 1/2" disk drive, but no USB port or CD drive, so I'll have to use a 3 1/2" disk to put the program onto the 386... and I'll have to go through a third PC doing that because the PC I'm writing this on, which has Internet access, doesn't have a floppy disk drive at all... so I'll put the ZIP file onto an USB stick, put that into an older PC (Pentium III running on Windows ME) and copy it onto a 3 1/2" disk there, then I'll put the 3 1/2" disk into the 386, unzip it there (I hope there's enough room for that on the harddisk which is only 320 MB in size) and then transfer the disk images onto the 3 1/2" disk... then it's the other way round, copying the images from the 3 1/2" disk onto the USB stick on the Pentium III PC. Yes, this is complicated, but the TI is that old...

 

anyway, thank you for the links! I'll let you know how the converting goes once I start it (probably not before Christmas).

Link to comment
Share on other sites

Also, in Win994a, the synchronisation to the speech synthesizer seems somewhat off, which you can see by the sound from the sound chip I built in. In MESS, this sound starts after the Speech Synthesizer has stopped singing. In Win994a, however, it starts somewhat earlier.

 

If I remember Cory's comments correctly, Win994A handles the speech system a little differently - it tries to precache everything before it speaks it, something like that. It works pretty well but the timing will be incorrect.

 

Finally, I also tried the emulator Classic99, but somehow disk support doesn't seem to quite work. I chose a bit of a different path to install it (D:\Programme\Spiele\classic99\), and now that emulator doesn't find any of the programs in its "DSK1" directory.

 

Classic99 is my emulator, so I can speak with more authority there.

 

The disk paths should be relative, but if they aren't working, just open up Classic99.ini and make sure they are set correctly. (There's no GUI config for disk setup yet). Note too that Classic99 does not support disk images - only individual files.

 

However, I can tell you up front Classic99 isn't going to manage the speech well. It doesn't handle the speech synth halting the CPU when the speech buffer is filled during a Speak External command, and the TE2 cartridge relies on that working (it just writes data without checking to see if it will be accepted). So it generally garbles pretty badly. :)

 

I'm surprised you had so much trouble with MESS, it's been considered for a long time to do the speech more or less correctly (except that it emulates the wrong chip ;) ). Classic99 uses the same speech core as MESS does so even if the CPU halt worked I'd expect it would do the same thing (though I wish it did now, because that would be a nice bug to fix ;) ).

Link to comment
Share on other sites

Classic99 is my emulator, so I can speak with more authority there.

 

The disk paths should be relative, but if they aren't working, just open up Classic99.ini and make sure they are set correctly. (There's no GUI config for disk setup yet). Note too that Classic99 does not support disk images - only individual files.

 

Umm... how would I do that exactly? Right now, the ini file contains a section like this:

 

[Disk1]

Type=0

 

 

and so on for Disk0, Disk2 etc. I suppose this is what should be changed, but I don't know how it should be changed, and I also don't see where this would be documented so that I could do the change correctly.

Link to comment
Share on other sites

Classic99 is my emulator, so I can speak with more authority there.

 

The disk paths should be relative, but if they aren't working, just open up Classic99.ini and make sure they are set correctly. (There's no GUI config for disk setup yet). Note too that Classic99 does not support disk images - only individual files.

 

Umm... how would I do that exactly? Right now, the ini file contains a section like this:

 

[Disk1]

Type=0

 

 

and so on for Disk0, Disk2 etc. I suppose this is what should be changed, but I don't know how it should be changed, and I also don't see where this would be documented so that I could do the change correctly.

 

 

I just checked my classic99.ini and it looks as below. Don't know if this all required for the current classic99 version, but at least that is what I have.

 

 

[Disk1]
Type=1
Path=DSK1\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=1
FIAD_ReadTextWithoutExt=1
FIAD_ReadImgAsTIAP=0

[Disk2]
Type=1
Path=DSK2\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=1
FIAD_ReadTextWithoutExt=1
FIAD_ReadImgAsTIAP=0

[Disk3]
Type=1
Path=DSK3\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=1
FIAD_ReadTextWithoutExt=1
FIAD_ReadImgAsTIAP=0

Link to comment
Share on other sites

Check this link out. It's a video concerning one method of transferring files to/from the TI and PC. I posted this about a year ago... it has had many responses and I have made several new friends who had no idea how to accomplish this. We now chat regularly... some of us. =) Anyway, there are 2 videos in the series... will eventually be 4, but I'm slacking. Hope you get it working. If you don't, let me know and I'll mail you a speech synth for the price of shipping.

 

Owen

 

Link to comment
Share on other sites

OK... I've watched your video. What's unclear from this is what kind of connection I would have to make between the PC and the TI-99. I think you show the TI-99 side, but I can't quite recognize what it is, but you don't show the PC side of the connection. OK, I admit I was a bit lazy and didn't watch all of the other videos.

 

From a software point of view, it's pretty clear, but in order for it to work, I would first have to put that MFM program to the TI-99 in order for the transmission to work, but that means I must have to have some other way to put MFM onto the TI-99 first, right?

 

Other than that... I just tried to transfer TI99-PC to my old 386 PC and hit another roadblock... its CMOS battery has died, and I haven't written up the hard disk parameters (tracks / cylinders / sectors etc.) anywhere, as far as I know, so I would have to find them out (and somehow replace the battery unless I want to reset the values each time I boot up the PC). I hope they are written on the harddisk, but this still would involve disassembling the PC in part in order to remove the harddisk and maybe find out what's written on the bottom of it. This is turning into a bigger and bigger project, and in fact, at the moment I don't want to take the time to start this project since this means stopping other projects I'm actually working on. The BIOS battery was still fine when I last checked it two years ago, but now it's not.

 

(Yes, I know two years is a long time, but somehow so many projects get in my way, and backing up the TI-99 disks wasn't ever really a high priority)

 

Check this link out. It's a video concerning one method of transferring files to/from the TI and PC. I posted this about a year ago... it has had many responses and I have made several new friends who had no idea how to accomplish this. We now chat regularly... some of us. =) Anyway, there are 2 videos in the series... will eventually be 4, but I'm slacking. Hope you get it working. If you don't, let me know and I'll mail you a speech synth for the price of shipping.

 

Owen

 

Link to comment
Share on other sites

OK, I've updated my classic99.ini file like shown below, but it doesn't quite work. The other programs in the disk folder now load successfully, but my "Keyareyou" program doesn't. I try to load it in TI Basic with the Terminal Emulator II cartridge inserted, but it just gives me an I/O error 50. I don't know what's wrong with the program. I've attached a zipped version of it (the one I'm using is unzipped, of course) to this message in case someone wants to examine it. It should be the same as on the disk image I supplied earlier.

 

KEYAREYOU.zip

 

I just checked my classic99.ini and it looks as below. Don't know if this all required for the current classic99 version, but at least that is what I have.

 

 

[Disk1]
Type=1
Path=DSK1\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=1
FIAD_ReadTextWithoutExt=1
FIAD_ReadImgAsTIAP=0

[Disk2]
Type=1
Path=DSK2\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=1
FIAD_ReadTextWithoutExt=1
FIAD_ReadImgAsTIAP=0

[Disk3]
Type=1
Path=DSK3\
FIAD_WriteV9T9=0
FIAD_ReadTIFILES=1
FIAD_ReadV9T9=1
FIAD_WriteDV80AsText=0
FIAD_WriteAllDVAsText=0
FIAD_WriteDF80AsText=0
FIAD_WriteAllDFAsText=0
FIAD_ReadTextAsDV=1
FIAD_ReadTextAsDF=1
FIAD_ReadTextWithoutExt=1
FIAD_ReadImgAsTIAP=0

Link to comment
Share on other sites

I'll mail you a copy of MFM... All you need after that is a USB-db9 cable with a db25 adapter... Then you can use hyperterm or Xmodem pro. Pretty easy... Watch the videos again and listen to how I (attempt to) describe the procedure

 

OK, I guess I'll need some new hardware then. I guess the cables and adapters needed look something like this, right?

 

http://sewelldirect.com/USBtoSerial.asp

 

and

 

http://www.cablestogo.com/product.asp?cat_id=7057&sku=26886

 

I'll try to look out for those cables as soon as the shops are open again.

As for MFM, is there a place where I can download that program from? I'd like to try to convert it to a tape image in order to load it into the TI-99 via the cassette port. I hope this works, but I think it could work because it's an XBasic program.

 

By the way, I just tried the PARSEC cartridge in classic99, and its output sounds pretty garbled, much more so than in MESS (in MESS only the output of Terminal Emulator II sounds garbled). Seems like there's a brief interruption or discontinuity after each LPC frame or so.

Link to comment
Share on other sites

I downloaded the zip file, extracted the KEYAREYOU file to my classic99 DSK1 folder and tried to load it.

What happens is that I get the same error code 50.

 

In there I opened the disk image you uploaded and extracted the KEYAREYOU file to the same classic99 DSK1 folder.

I didn't do a binary file compare, but there are differences in file size. I presume something went wrong during

your conversion process.

 

The attached file is the version I extracted via TI99DIR. It now loads fine in classic99 but doesn't play right though.

Guess that emulation in classic99 can't handle speech that perfectly.

 

KEYAREYOU.zip

Link to comment
Share on other sites

Ummm... you're right. Sorry, something must have gone wrong with the file I was using. Your file indeed loads correctly, but the speech output is completely garbled.

 

But thank you for the conversion!

 

I downloaded the zip file, extracted the KEYAREYOU file to my classic99 DSK1 folder and tried to load it.

What happens is that I get the same error code 50.

 

In there I opened the disk image you uploaded and extracted the KEYAREYOU file to the same classic99 DSK1 folder.

I didn't do a binary file compare, but there are differences in file size. I presume something went wrong during

your conversion process.

 

The attached file is the version I extracted via TI99DIR. It now loads fine in classic99 but doesn't play right though.

Guess that emulation in classic99 can't handle speech that perfectly.

 

KEYAREYOU.zip

Link to comment
Share on other sites

Ummm... you're right. Sorry, something must have gone wrong with the file I was using. Your file indeed loads correctly, but the speech output is completely garbled.

 

But thank you for the conversion!

 

You are welcome. I guess there is no TI emulator that emulates speech perfectly.

But it is nice reason to give it a shot on the real deal ;)

Link to comment
Share on other sites

OK...I now have the cables Opry99er suggested, but I didn't make it to make a connection yet...

 

on another note, I found out that my Speech synthesizer surprisingly has started working again, so I recorded the "Key are you" demo right from the machine (with a bit of distortion because the TV signal seems to come in very weak... don't know what to do about this).

 

And there I discovered that the speech emulation doesn't seem as good as I thought... the pitch tables used in Win994A at least are different to the original ones. The speech in Win994A is spoken at about a 19% higher pitch than should be (at least the speech coming out of my KEYAREYOU program). Also, both in Win994A and MESS, the put-out speech sounds a bit "hollow" compared to the original, that is, as if a tape would play a bit too slow (although the actual pitch is higher).

 

I'd like to help improve the speech support for the TI-99 chip in MESS if I could. But I'm not experienced in programming C... I'm only able to give tips in what could and should be changed.

Link to comment
Share on other sites

OK...I now have the cables Opry99er suggested, but I didn't make it to make a connection yet...

 

on another note, I found out that my Speech synthesizer surprisingly has started working again, so I recorded the "Key are you" demo right from the machine (with a bit of distortion because the TV signal seems to come in very weak... don't know what to do about this).

 

And there I discovered that the speech emulation doesn't seem as good as I thought... the pitch tables used in Win994A at least are different to the original ones. The speech in Win994A is spoken at about a 19% higher pitch than should be (at least the speech coming out of my KEYAREYOU program). Also, both in Win994A and MESS, the put-out speech sounds a bit "hollow" compared to the original, that is, as if a tape would play a bit too slow (although the actual pitch is higher).

 

I'd like to help improve the speech support for the TI-99 chip in MESS if I could. But I'm not experienced in programming C... I'm only able to give tips in what could and should be changed.

 

Yesterday I tried the "Key are you" demo on the real deal. At least that is what I attempted. I thought I had a terminal emulator II cartridge but I don't, so the next thing I tried was to load the TEII cartridge image in my gram kracker. That didn't work out to well. That has to do with the fact that my gram kracker isn't properly working. I think I have a broken GRAM chip inside. Tried with two speech synsthesizers but could not get the thing to work. The computer locked up.

Dunno if it has to do with the gram kracker or if it's a problem with the combination speech/gram kracker/CF7+ device.

 

Too bad :|

Link to comment
Share on other sites

So... another update. I spent nearly the whole afternoon and evening (it's nearly midnight here in Austria now) tinkering with QBOX and the TI-99.

 

Somehow the USB-TI99 connection doesn't work out... I suppose the cables are slightly incorrectly wired. I'm now having one cable which you plug into your USB socket and on the other end there's a male 9-pin plug which is supposed to be a COM port (in this case, COM3 as it presents itself to the terminal software). Then I've got an adapter from 25-pin male to 9-pin female. The connection then is USB to 9-pin -> 9-pin to 25-pin -> 25-pin stuck in RS232 card. And I think there might be something slightly wrong with this. On another Internet site I read that you really need a null modem cable to connect two computers with each other, and for the RS-232 card you would need a "splitter" which actually ends in 2 male 9-pin plugs, so that would be different than the one I'm using now.

 

I can't make any sense of this right now, so I've given up on this for now. Maybe someone will know a solution for this before I sink some more money in additional cables and adapters...

 

Besides, I successfully obtained a disk image of MFM, but unfortunately, the program is 50 blocks long and not stored in PROGRAM format, but in INT/VAR format... which means that it's slightly too big to be stored on a tape and thus can't be transferred from the PC to the TI-99 by means of the tape interface (I think the limit for this would be 48 blocks). So I'd need some other means to put it on the TI-99 itself before I'd be able to use it, even though I doubt it would work with my current cable configuration.

 

Now for the fun part... since that didn't work, and I found out that the speech synth works again, I started to tinker around with that a bit. Since the speech tables are obviously different between the TMS5200 used in the TI-99 and the TMS5220 supported by QBOX, I tried to find a solution to generate speech data that's as good as possible for the 5200. My solution basically consists of the following:

 

- The original speech has to be processed a bit, that is, compressed to about 83% of its original length, while preserving the original pitch.

- Then it gets stored downsampled to 10 kHz.

- Then I've tinkered with the 5220 pitch table of QBox a bit so that the pitch comes out elevated by about 40%.

- The rest of the speech creation process runs as normal except for the fact that listening to your LPC data in QBOX doesn't work anymore with the changed data... but creating the LPC data does work.

 

When I insert that data into a TI program, the pitch and the duration on the TI-99 itself sounds pretty much as it does in the original file (in MESS, obviously, it doesn't), only the articulation still seems to be a bit off.

 

Since I couldn't quite make out what's still wrong about the articulation, I searched for the encoding table of the "real thing", which, according to the QBOX documentation, didn't turn up, and... I THINK I FOUND IT!!!

 

In some WIKI, there's mention about two patents describing the 51xx and 52xx speech chip families. So I thought since the TMS-5220 datasheet contains the complete encoding table, and patents are usually pretty throurough in describing their "inventions", one of those patents might contain the coding table as well, and it seems like I was right...

 

I've downloaded this patent here:

 

http://www.freepatentsonline.com/4335277.pdf

 

which describes the TI's speech synthesizer in detail. And on the last pages (pages 53 through 55 out of 56), you can find all of the coefficient tables, including the chirp table. I think this must be the correct table for the 5200 chip since the coefficients are notably different from those given in the TMS-5220 data sheet, and they are roughly what I expected them to be. I don't quite understand the K values, but the pitch table seems to be about right (having bigger values than the 5220's pitch table).

 

Now what does this mean?

 

1. If you put those coefficients into a coding table for QBOX, you could actually create correctly sounding speech for the TI-99. The only thing you have to look out for is that you down- or upsample the original version a bit to match the 8500 Hz sampling rate on the TI-99 (derived from the 680 kHz clock) which isn't supported by QBox.

2. If you put them into MAME, the speech chip could be emulated much better than it is now. This also includes all the other emulators, of course.

 

I've checked out the MAME source for the TMS5200 and TMS5220, and it doesn't seem to make a big difference between those models as of now. As far as I can see, it currently uses the same coefficient table for both ( http://mamedev.org/source/src/emu/sound/tms5220r.c.html ), and only makes some minor changes for the 5200 chip, so basically the speech still sounds very much like it would on the 5220. I suppose it's the same for MESS. I think using the correct coding table could be a big improvement here.

Link to comment
Share on other sites

As for your transfer protocol... What programs are you running on both ends, PC and TI? Your programs and how they are set up and run are very important to making a solid connection. My setup is similar to the one you described....

 

(PC)<-->USB-->db9-->db25<-->(TI99)

 

This is the exact setup I use regularly and is documented in the YouTube video you watched... MFM is a brilliant program, but if you don't have it on your TI already, it's pretty hard to transfer if you don't have another program capable of "X-Modem" transfers. I suggest reading through the archives of the OLUG and search for any message or topic that has to do with "File transfer" or "MFM." I had a couple mad bouts of furious testing and high frustration trying to get this thing to work... but now, it's flawless. Thanks again, and good luck with your game!

 

Owen

Edited by Opry99er
Link to comment
Share on other sites

I'm sorry for falling out of this thread, it looks like you've got most of the Classic99 issues sorted out. Full documentation for the Classic99.ini is in the Classic99.txt file. ;)

 

The current build (finally) sets up a default Classic99.ini if there is not one already, with the standard 3 drives set up. Eventually that config will make it's way to the GUI.

Link to comment
Share on other sites

OK, thank you for that instruction. Are you planning to eventually improve speech support too? As of now the speech output of Classic99 still sounds garbled and full of drop-outs (just tested it with PARSEC). I just examined the speech wave it puts out, and it seems that every 20 to 60 milliseconds (the interval is not consistent), there is a "break" of about 1.4 milliseconds during which the speech output is set to nearly 0 (actually, there's a bit of high-pitched swing-out and swing-in going on), but that is not really a break because there's also a bit of discontinuity between the wave before and after this point.

 

Also, I've just looked into the source code you supply with Classic99, and it seems like you also use the TMS5220 coding table which at least for the "normal" TI-99 speech synthesizer should be the incorrect one.

 

I've attached what I believe to be the correct coding table, derived from the patent mentioned above, to this message. Sadly, it's missing the values for K10 because they aren't listed in the patent. Oh, and I wrote down the values basically as they are listed in the patent. For use in your emulator, I think the energy table, which seems to be only 8-bit on the 5200, needs to have a "00" byte added to each entry as well as the pitch table, and the tables for K1 through K9 need to have each entry shifted left by 6 bits in order to work correctly.

TMS5200 coding table.zip

 

I'm sorry for falling out of this thread, it looks like you've got most of the Classic99 issues sorted out. Full documentation for the Classic99.ini is in the Classic99.txt file. ;)

 

The current build (finally) sets up a default Classic99.ini if there is not one already, with the standard 3 drives set up. Eventually that config will make it's way to the GUI.

Edited by Kurt_Woloch
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...