Jump to content
IGNORED

CS1er / TAPE994a help


Fishsta

Recommended Posts

When using the output of CS1er I had to adjust a few things. Firstly, the output from my laptop is automatically attenuated as it assumes you are connecting headphones. Secondly, using VLC I had to use the equalizer to adjust the tone of the output. I found the preset "Ska" worked quite nicely.

 

When using my phone, I converted the raw wav output to MP3 and AAC and both files worked. Because the phone will attenuate, unless using a cable which it recognizes as being line-level, I also used sox (could use Audacity, if preferred) to bump up the volume to maximum without clipping.

 

Never thought about the output being sampled. I would be surprised if it is built from sampled output, but I suppose that is not impossible. I never bothered to look at the output waveform.

 

I zoomed in on the wav I made for Senior Falcon's test to break the BASIC sand box, and it looks there very much like it could be spliced. Now I want to pull the executables apart looking for the clips, thanks -- as if I did not have enough to do already! :P

 

post-27864-0-43791200-1429225256_thumb.png

Link to comment
Share on other sites

When using the output of CS1er I had to adjust a few things. Firstly, the output from my laptop is automatically attenuated as it assumes you are connecting headphones. Secondly, using VLC I had to use the equalizer to adjust the tone of the output. I found the preset "Ska" worked quite nicely.

 

When using my phone, I converted the raw wav output to MP3 and AAC and both files worked. Because the phone will attenuate, unless using a cable which it recognizes as being line-level, I also used sox (could use Audacity, if preferred) to bump up the volume to maximum without clipping.

 

Never thought about the output being sampled. I would be surprised if it is built from sampled output, but I suppose that is not impossible. I never bothered to look at the output waveform.

 

I zoomed in on the wav I made for Senior Falcon's test to break the BASIC sand box, and it looks there very much like it could be spliced. Now I want to pull the executables apart looking for the clips, thanks -- as if I did not have enough to do already! icon_razz.gif

 

attachicon.gifClipboard02.png

 

I had similar concerns about the sound card playing games with the output ... level-shifting, attenuation, etc. That's why I chose sine wave and set the wave to maximum amplitude. It would take a lot of effort on the sound card's part to screw *that* up, and it won't need to be amplified by sox.

 

(depending on the sound card, however, it may need to be reworked into two channels by sox. My USB sound device needs that, and I suspect this is a common issue. I use aplay on the rPi; using VLC or suchlike on a box with more horsepower to pre-convert while playing probably works fine)

 

Looking at the waveform you attached, I can see a similar potential issue with the "1" waveform. It briefly reverses direction towards zero before heading back towards the peak. At low volume, or with certain methods of waveform "amplification", this would be indistinguishable from a zero crossing. That would cause corruption on the TI side. That might be why you needed to run it through an equalizer.

 

cs1er might not be literally using samples from a real TI, but it's definitely faithfully reproducing the output from a real TI -- including the deformations that can cause corruption if the playback gear isn't within tolerance.

 

Anyway ... thanks for the feedback icon_smile.gif

Edited by ckoba
Link to comment
Share on other sites

Here is the "corrected" version of Dick's Tape994a program. He is still working on improvements to the interface, but this version corrects the problem with the engine.

 

Thanks for that, much appreciated. I have a couple of .wavs that "decode" doesn't like; hopefully the new tape994a will decode them correctly.

 

On a related note, I found a bug in my script: it didn't pad the output block size to 64 bytes, so binaries extracted from .dsk were failing on the last block. Fixed, and the new version is attached to this post.

 

(I had finally found a copy of Compute!'s "Roader", albeit in Italian, in the TI-99/4A GameBase as .dsk. Extracted the file, converted it, "old cs1"'ed it for the wife to show her what we used to play when we were kids ... and, oh crap, it didn't load because it wasn't padded ... embarrassing ... )

bin_to_wav_mk1mod1.gz

Edited by ckoba
Link to comment
Share on other sites

  • 3 weeks later...

GameBase also has The Witching Hour. FWIW, I also have a few COMPUTE! programs I typed in from BITD... I just have to find them on my cassettes icon_smile.gif

 

Out of curiosity ... has anyone made an effort to preserve old TI program tapes? All of mine from back when were lost, and there's a program or two that I'd like to see again (the aforementioned "Roader", and an odd two-part espionage/noir-styled text adventure that I never finished).

 

I personally think it'd be worthwhile to gather WAVs, run them through a wav->bin converter, and make them available on github along with a utility to convert them back to WAVs.

 

(I put my bin->wav script onto github, after realizing that a) overclocking the TI to 3.58 broke WAVs mastered for 1400/700 as 0/1 and thus needed 1600/800, and b) I had too many revisions of the script lying around. Would make sense to package it into a "you used to play these cassette games, and here's a guaranteed working way to relive those memories" sort of thing ... )

Link to comment
Share on other sites

I did quite a bit of tape conversions to save what I could off a bunch of tapes...

 

Not in wav format though.

 

The audio format itself isn't important, as long as they can be decoded into binary format. After that they can be converted anything up to and including smoke signals icon_smile.gif

 

Have you made your conversions available anywhere?

Edited by ckoba
Link to comment
Share on other sites

Used to have 55 programs available for download from my website... Until my website went byebye...

 

One day it was Opry99er.com.... mediocre TI-99/4a enthusiast site... the next day it was Opry99er.com, Japanese male enhancement-peddling site extrordinaire.

 

I'm sure someone downloaded them, but I no longer have that hard drive. Still have the tapes though. :) Maybe when I get all set back up and running, I'll try to transfer a bunch of them again.

 

One recovery I did (that I was actually kind of proud of) was of a til-then lost/forgotten game called "Maze Man"

 

10d3734b.jpg

 

80910c65.jpg

 

mazewhite.jpg

 

 

mazeman.jpg

 

 

 

 

I was actually really big into converting old tape games there for a while... while I had my entire setup operational. I did a bunch.

 

 

3a25992e.jpg

 

e51dbb94.jpg

 

 

The majority of the unique tape finds came from an old Tronics warehouse in Ft. Worth. I have some family ties to that company. :)

 

 

IMG_20130409_211417_zpsa0ece432.jpg

 

IMG_20130409_211400_zps00f98ff3.jpg

 

Other tapes were found in various lots from former 99ers who were selling their consoles and a box of "stuff" to go with them. These boxes of "stuff" typically contained an XB cart, a couple games, and (if I was lucky) some unique tapes. :)

 

 

Sadly, all my conversions are on a dead hard drive and a lost website. :(

 

 

Except for 1.

 

 

http://tigameshelf.net/xb.htm

 

 

Download >>HERE<<

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Thanks for that. I'd very much like to implement a crossplatform utility that converts text -> BASIC token .bin -> wav, so that I can play old type-in games from "Compute" that don't appear to be available as FIAD/TIFILES ... and I'd much rather work from known-good source code.

 

Have you tried http://nivelleringslikaren.eu/ti994a_basic/

 

You edit a basic text, it compiles it into basic tokens and plays it as a wav.

 

Currently it cannot handle Playground based basic programs because it really does go back and forth between tokens and text.

Link to comment
Share on other sites

I have been making WAVs of my tapes and programs as I find them, loading them into Tape994a, then re-saving them as freshly-minted sound files. Nothing worth-while for distribution at this time. I was going to try to grab tapes as they come up for sale on eBay and Craigslist but I lack the budget for such an endeavor.

Link to comment
Share on other sites

There are more uploaded tape saves that I habe not been able find yet... I will keep trying. IIRC, there is a cool Payroll XB program for keeping track of weekly and YTD pay for employees of some company, can't remember the name.

 

There is also a program that has someone's tax info from 1984-1986... I stripped the name and address out of it... Cant seem to find that one on the host server though. I still have the tape, so when I get my physical gear up and going again, I will re-save all my tape stuff, assuming I cannot get it recovered.

Link to comment
Share on other sites

On recovering tapes... I have a few that do not load into BASIC or XB. I initially thought the audio was corrupted, but am now thinking maybe they load to a different format.

 

Did LOGO II or other "languages" use tape very much?

 

I may need to find a way to save the audio from tape to the PC so I can view the format on TI99Dir...

Link to comment
Share on other sites

There are a few other weird variants of TI BASIC out there too--and you will occasionally find programs written in them. The Personal Record Keeping module adds a few commands to BASIC--and I've seen several programs that exploit that dialect. The Mini Memory also adds a few commands, and I've seen a few dozen programs written to take advantage of that. The Editor Assembler does similar things to the Mini Memory, but just different enough that programs written for one won't always work with the other. Both of them could save Assembly stuff to tape too. The Terminal Emulator II has all kinds of neat additional speech-handling commands--and there were a lot of programs (mostly educational, IIRC) that took advantage of that.

 

Logo programs could also be saved to tape--and often were. Finally, there was an option to save Wycove FORTH programs to tape as well.

 

Lots of options--and almost no way to differentiate them until you get them successfully loaded. . .

 

Don't forget Tunnels of Doom or Adventure programs either--quite often, they were also saved to tape.

 

I just remembered some more: Music Maker would save projects to tape, and Video Chess could save games-in-progress, IIRC.

Edited by Ksarul
Link to comment
Share on other sites

  • 7 months later...

I must not live right. I have in my "possession" copies of 3 programs in FIAD format, that will not convert successfully to .wavs with version 4.0A of Tape994a (that I had posted for Dick Selis), nor with the current version of CS1er.

The results in both cases are corrupt somehow, and will not complete the "round trip" back to FIADs. Something about these files has fooled both programs into writing invalid .wav's.

Neither can I get any .wav's from ckoba's neat little python program to load up. Am I doing something wrong ckoba? The routine produces perfect sine waves, and my TI-99/4A does not seem to like that, for any program, at any volume.

Maybe I need to sacrifice a virgin cassette into some handy volcano,...

Link to comment
Share on other sites

I must not live right. I have in my "possession" copies of 3 programs in FIAD format, that will not convert successfully to .wavs with version 4.0A of Tape994a (that I had posted for Dick Selis), nor with the current version of CS1er.

 

The results in both cases are corrupt somehow, and will not complete the "round trip" back to FIADs. Something about these files has fooled both programs into writing invalid .wav's.

 

Neither can I get any .wav's from ckoba's neat little python program to load up. Am I doing something wrong ckoba? The routine produces perfect sine waves, and my TI-99/4A does not seem to like that, for any program, at any volume.

 

Maybe I need to sacrifice a virgin cassette into some handy volcano,...

 

That's ... weird. Three different conversion programs producing "bad" output from three different source files would usually indicate that there's something off with the console or the cable.

 

How do you have this wired up? After you encode to .wav with any program, are you able to re-decode? At which point does it bomb out? Can you hear the faint sound of the data being played back through the TI regular audio port?

 

(According to the SAMS schematics, there's a RC filter network or two between the cassette port and the logic. One of those caps may be going bad ... they're the weird ceramics that look like resistors but aren't)

 

Edit: make sure that the version of my python program isn't one that's hardcoded to produce .wavs for an overclocked machine. Use the one at https://github.com/christopherkobayashi/TI99Utilities...

Edited by ckoba
  • Like 1
Link to comment
Share on other sites

 

.......

 

Edit: make sure that the version of my python program isn't one that's hardcoded to produce .wavs for an overclocked machine. Use the one at https://github.com/christopherkobayashi/TI99Utilities...

 

Hi,

 

do you know how to download this ? ...or how to use ? I found some code, maybe pascal-how or so, but down´t know

how to use/start this converter.... Is it for Windows ? Do I need some runtime or so ? Maybe you know about....

 

thx

 

OK, it is for Unix, so no chance for me :)

thanks

Edited by schmitzi
Link to comment
Share on other sites

OK, it is for Unix, so no chance for me icon_smile.gif

thanks

 

Oh, it'll run on Windows too, if you install a Python interpreter. Cross-platform -- my main dev platform is MacOS (though that will change RSN), and I run a mixture of Linux and FreeBSD in production.

 

Go to https://www.activestate.com/activepython/downloads and choose the appropriate installer for your platform, install it, then execute "python.exe ti_bin_to_wav (insert various options here)".

 

A TI guy shouldn't have too much trouble figuring it out with the above snippets icon_smile.gif

 

Edit: install Python version 2.whatever. They made heavy changes to the language in version 3. It's a nice cross-platform language, but it's stability rivals that of early builds of Okemo (or, God help us, Stowe) on the N71.

 

(I'm a very recent ex-engineer from the United Fruit Company. I have a lot of unresolved anger issues concerning things that happened at Chinese contract manufacturing facilities over the past six years. Please bear with me if I make an angry reference that is difficult to parse by non-UFC engineers)

 

(extra edit for possible United Fruit Company employees or lawyers lurking here: Okemo, Stowe, and N71 are all public and referred to in the various APIs. No NDA has been broken by this mini-rant, so please go enjoy your echo chamber in bum-fsck Zhengzhou. Thank you.)

Edited by ckoba
  • Like 1
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...