| |
Pex Mahoney Tufvesson
Registered: Sep 2003 Posts: 52 |
44.1kHz 8-bit samples - HowTo
I've written a summary on how to play 8-bit samples at 44.1kHz on the Commodore 64, as I did in the Musik Run/Stop demo. For some of you, it's a good read:
http://www.livet.se/mahoney/index_timeline.php
I'll be putting some source files for you there as well sooner or later.
---
Have a noise night!
http://mahoney.c64.org |
|
... 10 posts hidden. Click here to view all posts.... |
| |
soci
Registered: Sep 2003 Posts: 480 |
Quoting Pex Mahoney Tufvesson
Now, quantization is a bad thing. So I didn't first quantize the 44.1kHz samples into 8 bits, and then into the available amplitude levels found with this technique. For instance, the 6581 version of the samples uses 107 different values written into $d418 in the demo.
I didn't notice that there were 3 different versions on the disk. I've only run it on 8580 and that version had 93 values.
Would it improve anything if sustain values other than 15 were used? Long ago I did a ~5 bit digi by using the volume+3off combination where the third channel was set differently to have a better linearity. |
| |
Perplex
Registered: Feb 2009 Posts: 255 |
Has anyone started experimenting on using this technique with a REU? If you fix the C64 address to $D418 you can play a 64kB sample at a whopping 985kHz for about 0.066 seconds. Hmm, not very useful. How about doing single byte transfers with STA $DF01 : BNE *-3 to get ~140kHz for about 2 minutes on a 16MB REU, would that work? (Not that you would hear much difference compared to 44.1kHz, though.) |
| |
algorithm
Registered: May 2002 Posts: 705 |
REU should be forbidden in anything c64 related!
Nice method of staying with the same $d418 method but at increased resolution due to the pre-setup. Would use more cycles than the traditional lda #xx sta $d418 due to translation tables to map the sample data to the converted data to $d418 (Although can pre-convert the data) to save on cycles. |
| |
Perplex
Registered: Feb 2009 Posts: 255 |
Quoting algorithmREU should be forbidden in anything c64 related!
Why? It's not like anyone is forcing you to look at it. |
| |
algorithm
Registered: May 2002 Posts: 705 |
True, but everyone is entitled to their opinions and i have given mine :-) |
| |
encore
Registered: Aug 2010 Posts: 67 |
lft: Thanks for the explanation and really cool that it can be used for realtime calculated samples.
Quoting The Human Code Machine@encore What features do you mean for my Protracker replayer? It's feature complete and supports all Protracker commands. Even with SounDemoN's 8 Bit waveform output I'm able to play a full featured Protracker modules @ 7812hz and 4 voices. I'm only limiting the different volumes to 32 and limit the amount of different periods to get more memory for samples and music data. With the new replay method it's even possible to add more voices or higher mixing rates.
THCM: Ah, nice! In the beta I tried in late 2010 the readme-file stated that for time being it wasn't possible to add frequency or volume commands. But I suppose a lot of progress have happened since then. :) |
| |
WVL
Registered: Mar 2002 Posts: 902 |
Well.. if it's really only 6.5 bit samples, let's say 6 bits, than there's some compression right there already. Let's just store 6 bits, and get the corresponding 8 bit value from the lookuptable. |
| |
Urban Space Cowboy
Registered: Nov 2004 Posts: 45 |
I was interested to read these passages:
Quote:I went back to my own software SID
emulator (similar to reSID, but my own version of it)
Quote:Armed with this new knowledge, and with an updated
SID software emulator
Mahoney, please submit your improvements to the VICE project. Poor little ReSID hasn't had any attention since August last year. :( |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
i second that, give alankila a hand :) |
Previous - 1 | 2 - Next |