Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
  You are not logged in - nap
C64MP3   [2010]

C64MP3 Released by :

Release Date :
6 February 2010

Type :
C64 One-File Demo

Released At :
Datastorm 2010

Achievements :
C64 Demo Competition at Datastorm 2010 :  #4

User rating:*********_  8.8/10 (31 votes)   See votestatistics
*********_  9/10 (12 votes) - Public votes only.

Credits :
Code .... Mahoney of Visa Röster

Download :
http://csdb.dk/getinternalfile.php/84891/Mahoney - c64mp3.zip (downloads: 3639)
ftp://ftp.scs-trc.net/pub/c64/Party/2010/Datastorm/C64MP3.prg (downloads: 1449)
http://csdb.dk/getinternalfile.php/85395/C64_MP3.sid (downloads: 1076)

Look for downloads on external sites:

Submitted by Cresh on 7 February 2010
6th 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 space

It is true, the Commodore 64 CAN SING! ...but it took some 28 years for it to learn! ;)
Search CSDb
Prev - Random - Next
Detailed Info
· Summaries (1)
· User Comments (32)
· Production Notes
Fun Stuff
· Goofs
· Hidden Parts
· Trivia
· Discuss this release (1)
Info on other sites
· Pouët
· YouTube
Sponsored links
Support CSDb
Help keep CSDb running:

Funding status:

About this site:
CSDb (Commodore 64 Scene Database) is a website which goal is to gather as much information and material about the scene around the commodore 64 computer - the worlds most popular home computer throughout time. Here you can find almost anything which was ever made for the commodore 64, and more is being added every day. As this website is scene related, you can mostly find demos, music and graphics made by the people who made the scene (the sceners), but you can also find a lot of the old classic games here. Try out the search box in the top right corner, or check out the CSDb main page for the latest additions.
Home - Disclaimer
Copyright © No Name 2001-2023
Page generated in: 0.084 sec.