This is an archived, read-only copy of the United-TI subforum , including posts and topic from May 2003 to April 2012. If you would like to discuss any of the topics in this forum, you can visit Cemetech's z80 & ez80 Assembly subforum. Some of these topics may also be directly-linked to active Cemetech topics. If you are a Cemetech member with a linked United-TI account, you can link United-TI topics here with your current Cemetech topics.

This forum is locked: you cannot post, reply to, or edit topics. Z80 & 68k Assembly => z80 & ez80 Assembly
Author Message
scedarbaum


Newbie


Joined: 04 Jun 2009
Posts: 5

Posted: 18 Oct 2010 01:22:10 am    Post subject:

Hello. For a small TI / z80 project, I thought it would be cool to have a program play sounds (whose data would be stored in appvars) through the I/O port on the TI 84. I know that this has been done before, but I thought it would be cool to code for myself. Thus far, most of my research has been on how to convert data from WAV files to raw sampling data as well as how to talk to the I/O port (i.e. set the ring and tip high/low.) However, there are two serious roadblocks I have come across:

1.) An appvar's data size seems to be limited to 65535 bytes (as the field for the data's size is only 2 bytes in size). Given that that's not a whole lot of music when you're dealing with uncompressed data, would the best option be just to have many appvar files for longer sounds? Is there a faster/easier to handle way to store a lot of contiguous memory in the archive?

2.) Although this is slightly off topic, I am having a lot of issues finding information on how to send data to headphones (i.e. what their line coding is.) Being fairly oblivious to working with low level hardware, if anyone could point me in the right direction it would be very much appreciated. Again, I know this is probably off topic so I apologize.

Any input on either of these is much appreciated. Thanks for reading,

Sam


Last edited by Guest on 18 Oct 2010 01:23:52 am; edited 1 time in total
Back to top
calcdude84se


Member


Joined: 09 Aug 2009
Posts: 207

Posted: 25 Oct 2010 12:51:14 pm    Post subject:

1) Store the sound data in an app.
2) http://wikiti.brandonw.net/index.php?title=83Plus:Ports:00 Just alternate the states of the lines at the correct frequency. There is no "line encoding"
Edit: Also, good luck!


Last edited by Guest on 25 Oct 2010 12:51:51 pm; edited 1 time in total
Back to top
scedarbaum


Newbie


Joined: 04 Jun 2009
Posts: 5

Posted: 26 Oct 2010 08:30:38 pm    Post subject:

calcdude84se wrote:

1) Store the sound data in an app.
2) http://wikiti.brandonw.net/index.php?title=83Plus:Ports:00 Just alternate the states of the lines at the correct frequency. There is no "line encoding"
Edit: Also, good luck!


Ah, I hadn't thought to store the data in an application. Is it possible to write these files without an assembler / signing them? Ideally, I'd like to be able to have my Wave file parser program write the file directly. Thanks a lot.

-Sam
Back to top
Lionel Debroux


Member


Joined: 01 Aug 2009
Posts: 170

Posted: 08 Nov 2010 12:37:39 am    Post subject:

83+ FlashApps have been independently signable by third-parties for years with TI's tools, as TI published the keys long ago.
But you can also sign FlashApps with RabbitSign.
Back to top
scedarbaum


Newbie


Joined: 04 Jun 2009
Posts: 5

Posted: 08 Nov 2010 06:12:26 pm    Post subject:

Lionel Debroux wrote:

83+ FlashApps have been independently signable by third-parties for years with TI's tools, as TI published the keys long ago.
But you can also sign FlashApps with RabbitSign.


Gotcha, please pardon my noobness I am still pretty new at this. Thanks very much.


Last edited by Guest on 08 Nov 2010 06:49:32 pm; edited 1 time in total
Back to top
DigiTan
Unregistered HyperCam 2


Super Elite (Last Title)


Joined: 10 Nov 2003
Posts: 4468

Posted: 13 Nov 2010 12:52:18 pm    Post subject:

The new SpASM assembler (from the developer of WabbitSign and WabbitEmu) also has functions to handle multi-page apps for large sound files. To actually play the sound, a Radio Shack 1/8" stereo to 3/32" stereo converter will adjust the size down for you to use headphones. Thanks to portable devices getting small, I'm seeing more and more 2.5mm headphones online that already fit the TI port by themselves.
Back to top
scedarbaum


Newbie


Joined: 04 Jun 2009
Posts: 5

Posted: 13 Nov 2010 03:45:03 pm    Post subject:

DigiTan wrote:

The new SpASM assembler (from the developer of WabbitSign and WabbitEmu) also has functions to handle multi-page apps for large sound files. To actually play the sound, a Radio Shack 1/8" stereo to 3/32" stereo converter will adjust the size down for you to use headphones. Thanks to portable devices getting small, I'm seeing more and more 2.5mm headphones online that already fit the TI port by themselves.


As of right now, I have a simple C++ command line program that takes a wave file, writes a binary file with a header and the sample data, and then calls upon rabbitsign to sign the file and convert it to a proper .8xk hex file (no assembler involved in the process). I've been able to successfully put these large, multi-page files onto the calculator via TI-connect and was hoping my main application (the "sound player") would be able to aggregate these external sound files (via searching the VAT) and play them by reading the data directly from the archive (using the data's start address found in the VAT.)

I've been ignoring the issue of multipaging (ignorance is bliss until your calc crashes I suppose) and have thus made two possibly incorrect assumptions: 1.) that rabbitsign would format my sound files for multipage use and 2.) that once I obtained the data start address for an app file in the VAT, I could read through it linearly all the way through.

Is this model viable, or am I cutting too many corners? Thanks a lot for everyone's help,

Sam
Back to top
DigiTan
Unregistered HyperCam 2


Super Elite (Last Title)


Joined: 10 Nov 2003
Posts: 4468

Posted: 13 Nov 2010 04:46:11 pm    Post subject:

I guess you'll have to check with the others on that one. I know app page numbering has the counter-intuitive requirement of forcing you to dec in order to step from one page to the next. Maybe WabbitSign includes some kind of command line switch to make the multi-page data seamless like the way SpASM does.
Back to top
Display posts from previous:   
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
    »
» View previous topic :: View next topic  
Page 1 of 1 » All times are UTC - 5 Hours

 

Advertisement