Jump to content
IGNORED

FORTi Music Card (software wanted)


FarmerPotato

Recommended Posts

FORTi


Background:


FORTi was a Pbox card with 4 sound chips. This allowed 12 voices. The supplied FORTH software let you control attack, sustain,

tremolo, and use the Periodic noise for bass notes. A demo for 3 voices only was part of the TI FORTH Demo disk.


I've been working on a tribute to the FORTi card.


I built a FORTi card in hardware. (over two years but.) I scanned all my floppy disks with KryoFlux hoping to find any FORTi software. Alas, I did not find any!


We had a demo of the FORTi card at the Lubbock Users Group around 1984. (Our meetings at Texas Tech's 4A lab attracted up to 100 people in summer meetings. Our FORTH Interest Group had a separate meeting.)


At one point, I had the original Bach "Little" Fugue in G minor, BWV 578 (included in the TI FORTH Demo), Chariots of Fire for 12 voices, and one other disk.

These were the versions that show graphical bars for each voice.


I do know about the manual from WHTech:



I do not think I ever had the original software distribution with the compiling words. I may try to reconstruct it from the manual!


Wanted:


If anyone has any FORTi disks - compiled songs or source code - I'm very much interested in them.


I'm trying to get this project into a showable state by Apr 13.


-Erik
Edited by FarmerPotato
Link to comment
Share on other sites

Cool card. This is what I'm dreaming of while editing music for Flying Shark. Imagine 12 generators... :)

 

Is there any way to detect the card? Wouldn't it have been more useful with a single stereo jack on the back rather than four mono jacks?

 

Playing in 12 channels would, of course, take a lot of CPU time, so probably not an option while a game is running. It's a bit like the high-res modes of the 9938 - the 9900 running at 3 MHz is not really geared for it.

 

http://www.unige.ch/medecine/nouspikel/ti99/forti.htm

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...
Good news:


David Olson located a SSSD disk of FORTI card demos. It contained the Bach BWV 578 Fugue in G Major ("Organ"), Ricercar (unknown) (12 voices), and Chariots of Fire (12 voices). As I remembered, the 12 voice tunes sound awful on a plain TI-99/4A (well, Classic99.)


Unfortunately, it is only the binaries in the first 90 screens of the disk. The second 90 screens containing the source were never copied!

The compiled dictionary lacks most of the FORTI compiling words and what is does contain doesn't fully match the documentation (it lacks some note and duration words). Perhaps it was an early demo. I believe this disk was demoed at the Lubbock TIUG around 1984 when there was an active FORTH SIG.


My goal is to recreate the FORTI composition system, if that means decompiling the FORTI music demo from binary or recreating from scratch.


I started decompiling the binary. Really learning how FORTH works, finally!


I found Rene LeBlanc's FORTH-DISASM in my old floppies, and looked around in the FORTH interpreter. I am paying this shareware fee, though it is 30 years since I received this disk.


Meanwhile, David and I converted 160 disks (the first box out of 3) of the Milwaukee Area TIUG library to DSK format, using Kryoflux. Owen Brand had received the MATIUG library from Ted Z and brought it over. Among 16 FORTH disks (10% of the first box of disks!), I found copies of the TI FORTH source distribution, and several disks of games or utilities including FORTH DECOMPILER - BERG/WERNECKE. That will be useful.


A surprise I did not expect was to find my name E.Olson on FORTH code from 1984 on Disk #103. This must have been printed in a Lubbock TIUG newsletter and typed in by a Milwaukee member!


(There is still some cleanup to do on these disks, because 30 had at least one bad sector. But I understand Owen has two full sets of disks from the library, so those disks must be checked.)
  • Like 4
Link to comment
Share on other sites

I just came across my old ForTI sound card last week when I was searching for my old Triple Tech card. Finding all my old ForTI files, however, will be a huge task as I not only have over a thousand diskettes of all sizes, but many various hard drives of MFM, SCSI, and IDE, plus 12 EZ135MB & 12 EZFlyer230MB disk cartridges to search through. I won't get started soon as I have numerous hardware issues to deal with first. I just hope and pray I have enough life left to do everything on my bucket list.

  • Like 4
Link to comment
Share on other sites

Among 16 FORTH disks (10% of the first box of disks!), I found copies of the TI FORTH source distribution, ...

 

I do not know whether it would be useful to you because you probably know how it works, but, in “Appendix O” of my TI Forth Instruction Manual: 2nd LES Edition (2013), I annotated much of the TI Forth source code in DRIVER (assembled as first part of FORTHSAVE loaded by FORTH) and BOOT (assembled to FORTH). I had to puzzle out how TI Forth worked before I could launch into development of my file-based block I/O fbForth 1.0 and, especially, its cartridge version (fbForth 2.0), so I thought I might as well publish my notes of that effort.

 

...lee

Link to comment
Share on other sites

Thanks, I will read that.

 

I began with your fbForth 2.0 manual Dictionary Entry discussion, and started to write my own decompiler from there. Spent most of last Thursday on that.

 

When I think I understand how TI FORTH works, I will go back to the present and continue looking at the ARM assembler inner interpreter for MeCrisp FORTH (I spent most of January and February on that!)

 

-erik

 

 

 

I do not know whether it would be useful to you because you probably know how it works, but, in “Appendix O” of my TI Forth Instruction Manual: 2nd LES Edition (2013), I annotated much of the TI Forth source code in DRIVER (assembled as first part of FORTHSAVE loaded by FORTH) and BOOT (assembled to FORTH). I had to puzzle out how TI Forth worked before I could launch into development of my file-based block I/O fbForth 1.0 and, especially, its cartridge version (fbForth 2.0), so I thought I might as well publish my notes of that effort.

 

...lee

  • Like 1
Link to comment
Share on other sites

Cool card. This is what I'm dreaming of while editing music for Flying Shark. Imagine 12 generators... :)

 

Is there any way to detect the card? Wouldn't it have been more useful with a single stereo jack on the back rather than four mono jacks?

 

Playing in 12 channels would, of course, take a lot of CPU time, so probably not an option while a game is running. It's a bit like the high-res modes of the 9938 - the 9900 running at 3 MHz is not really geared for it.

 

http://www.unige.ch/medecine/nouspikel/ti99/forti.htm

 

Question, what is the Rpi 3B or B+ capable of music-wise? The thing already has Bluetooth capability so any cheap $15.00 speaker from eBay would work. Also there will be quite a few of these in hands of TI'ers in the coming months, making for a decent sized audience/user base.

 

I suppose it would be possible (in a new version of TIPICFG) to connect with a Bluetooth device.

 

For CPU time issues, couldn't a game on the TI just send trigger commands to the Rpi to play a sound file at a specific time? The Rpi would take up the load with no strain on the TI. The only thing I'm concerned about is how the average user would install the requisite software or files on the Rpi. I'm practically illiterate on everything on the Rpi side of things.

Link to comment
Share on other sites

 

Question, what is the Rpi 3B or B+ capable of music-wise? The thing already has Bluetooth capability so any cheap $15.00 speaker from eBay would work. Also there will be quite a few of these in hands of TI'ers in the coming months, making for a decent sized audience/user base.

 

I suppose it would be possible (in a new version of TIPICFG) to connect with a Bluetooth device.

 

For CPU time issues, couldn't a game on the TI just send trigger commands to the Rpi to play a sound file at a specific time? The Rpi would take up the load with no strain on the TI. The only thing I'm concerned about is how the average user would install the requisite software or files on the Rpi. I'm practically illiterate on everything on the Rpi side of things.

 

I think it would be quite possible to send something like a General MIDI file through the TIPI to the RPi, but for me we're moving into the territory where this is no longer a TI expansion but rather another computer doing the work.

Link to comment
Share on other sites

 

I think it would be quite possible to send something like a General MIDI file through the TIPI to the RPi, but for me we're moving into the territory where this is no longer a TI expansion but rather another computer doing the work.

 

You're right of course, I guess I did cross that grey line. My bad.

  • Like 1
Link to comment
Share on other sites

I began with your fbForth 2.0 manual Dictionary Entry discussion, and started to write my own decompiler from there. Spent most of last Thursday on that.

 

If your decompiler does anything with the resident dictionary, be warned that I changed how the ROM Bank 2 part of the dictionary is managed, saving ~2 KiB in the process. I had actually changed it by the time I published the manual in book form on Amazon.com but forgot to change §12.5 to reflect that. I will post changes, additions and errata on my website sometime in the near future.

 

...lee

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...