Page 2 of 3

Re: Speech Adapter info thread

Posted: Sat Apr 26, 2014 8:00 am
by Trixter
Now that I've converted the scanned copies over to PDF and made them available, I want to throw the xerox pages out. Would anyone like them, or is it ok to toss them? (PDFs are superior, IMO, but if someone wants the physical pages, let me know)

Re: Speech Adapter info thread

Posted: Sat Apr 26, 2014 9:39 am
by Trixter
If I don't hear from anyone in a week, I'll toss them, so speak up if you want the pages. I'll pay shipping.

Re: Speech Adapter info thread

Posted: Sat Apr 26, 2014 10:02 am
by Brutman
Trixter wrote:If I don't hear from anyone in a week, I'll toss them, so speak up if you want the pages. I'll pay shipping.
I'll take them ...

Re: Speech Adapter info thread

Posted: Sat Sep 05, 2015 10:54 am
by Trixter
I've added a new high-quality scan of the tech ref: ftp://ftp.oldskool.org/pub/misc/Hardwar ... uncut).pdf

It's "uncut" because I didn't have a decent paper cutter to split the pages. If you print out the PDF double-sided, you can fold the entire thing in half and you've got a reproduction of the tech ref. Someday if/when I get a binder cutter, I'll re-scan and re-OCR this.

Unlike previous scans, the BIOS code is completely readable in this scan.

Re: Speech Adapter info thread

Posted: Mon Sep 07, 2015 10:12 am
by Brutman
Awesome - and thanks!

Re: Speech Adapter info thread

Posted: Mon Sep 07, 2015 5:09 pm
by jharre
Note that the link in Trixter's message isn't all there. You will need to to add the ").pdf" to that URL - without the quotes of course.

Jim

Re: Speech Adapter info thread

Posted: Thu Apr 26, 2018 10:54 am
by redmagehat
Resurrecting this old thread for some questions!

One of the forum members was kind enough to sell me his Speech Adapter, so it's on its way. I've been reading through the few documents available for it, and I also found a super-cool Mac app called "BlueWizard" that takes all the stuff QBox does and packages it down into a slick interface:

https://github.com/patrick99e99/BlueWizard

I have a Mac at home so this is potentially a lifesaver. I haven't had the chance to mess with it yet, but I'm looking forward to it.

That being said ... the information about how Cartridge BASIC interfaces with the Speech Adapter seems to be extremely limited. I'm starting to work on a PCjr BASIC game, and one thing I'd like to do is load LPC files generated from something like BlueWizard/QBox into RAM and trigger playback in BASIC. It's straightforward on doing the BIOS vocabulary and recording, but using externally-created files is a mystery. Have any of you guys come up with any routines that could theoretically do this? I'm not a programmer but I've been able to wrap my head around BASIC so far - delving into assembly code would be beyond my understanding.

Thought I'd start here and see if I can absorb any wisdom from you gents!

Re: Speech Adapter info thread

Posted: Thu Apr 26, 2018 12:08 pm
by Trixter
There might not be an official interface in BASIC other than loading the data into memory somewhere and then doing the base interrupt calls to fire off playing. Try grabbing all of the .zip files in the directory where the tech ref is and look at all of the .BAS files in them; there is probably an example for loading and playing back CVSD data, and the process would be similar for LPC.

Let us know if you have any success with the Mac program to do the conversion.

Re: Speech Adapter info thread

Posted: Thu Apr 26, 2018 1:14 pm
by redmagehat
Thanks, I'll give it a go!

Re: Speech Adapter info thread

Posted: Sat Apr 28, 2018 4:38 pm
by redmagehat
Got the speech adapter up and running, here's where I'm at.

BlueWizard seems to work great for converting audio files (.wav or .aif) to SPC format. There are actually a lot of parameters you can tweak to lock and shift pitch, highpass and lowpass filtering, and other stuff. It gives you some great customization and also the ability to tweak a bit for the source material you're working with. It only accepts 16-bit 8k mono audio files, so I just grabbed a few .wavs and converted them first. BlueWizard saves the LPC data either in text format (.LPC file extension) or binary format (.BIN file extension).

I looked through all the BASIC code on both the MakeTalk and the IBM Speech demo disk, and almost all the programs use the control subroutines referenced in the speech adapter how-to guide. The problem I'm running into is that on all the subroutines that use BLOAD to insert something directly into memory and then "speak" it, it seems to be using the CVSD decoding approach (straight audio instead of SPC synthesis). I tried BLOADing one of my SPC and BIN files into memory, but I get a "bad file mode" error.

From what I'm finding, all the SPC synthesis use cases in BASIC that I can find (including in the documentation) only seem to support the BIOS-based vocabulary, and nothing more. If the Busy Bee game loads custom SPC data though, it must definitely be possible, I just don't think there has been a program written to load and decode SPC yet.

Is the only way forward to delve into machine code and talk to the hardware directly, and write a decoder program that way? I may have hit a wall if so. The only other possibility I can think of is if BASIC has an undocumented parameter that switches it over to LPC decode mode instead of CVSD.