Released at Datastorm party over the weekend, the legendary Mahoney packs all of "Tom's Diner" into the c64's meagre memory:
(probably PAL only)
bummed i missed Datastorm stupid money!, really sweet though
Last edited by an-cat-max (Feb 7, 2010 11:52 am)
Or so amazingly hi-fi, if you look at it like that.
hehe, you have a point there
Sounds pretty accurate in VICE, what are you using?
"use WinVice 2.2 settings/sid settings/ sid-engine any 6581 resid-fp (importrant choose resid with "fp" at the end)"
I did this with WinVice 2.1. Or check the video above
I thought the title was a bit misleading since it isn't really mp3. Aside from that, it's really impressive. Frequency domain compression for the c64!
For more sound tricks, check out the entries by Goto80 (techno aha; general multispeed trickery) and by Frantic (birdburner; bird emulation by linear analysis of bird beeps)
Anders: It makes your c64 sing!
I found this on csdb:
th of February 2010: It is true, the Commodore 64 CAN SING! The Commodore 64 mp3-decoder is called c64mp3, and I, Mahoney, made it for the Datastorm event in Gothenburg. The download link contains the full demo and the source code for the encoder and decoder.
The song chosen is "Tom's Diner" by Suzanne Vega.
The Commodore 64 c64mp3 replay routine uses all the tricks in the book,
in order to acheive the best sound quality possible:* The sound buffer is calculated in the stack, and it wraps
* Jitter free sample playback, by using NMI IRQ vector pointing to $dd04
* 8-bit sample output by using SID test bit for resetting oscillators
* saving clock cycles by JMP $dd0c when exiting an NMI
* Pitch tables? Good for module playback, but worthless for human voices
* Dithering noise, to make quantization smoother
* Phase-aligned wavetables with extracted formants
* Full 8-bit interpolation between formants with 16 different volume ratios
* 16 volume levels for resulting audio output
* self-modifying code, of course
* critical code run in Zero Page
* ...while only ~15 assembly instructions per sample available
* ...and still cpu-time left for a demo!The c64mp3 encoder uses some seriously advanced signal processing as well:
* sub-sample pitch detection
* auto-tuning into constant-pitch audio
* formant extraction, sub-sample phase-alignment and normalization
* formant cross correlation and selection
* consonant detection and extraction
* run-length encoding of data with _minimal_ unpacking overhead
* requires 4GB of RAM and 500MB of hard drive spaceIt is true, the Commodore 64 CAN SING! ...but it took some 28 years for it to learn!
the more I know about it, the more it seems amazing!
its certainly interesting, but i'd like to hear somthing a bit more interesting than suzanne vega