C64 için kafama takılan soruya cevap ararken karşıma referans olarak verdiğim link çıktı. Aslında user port ile ilgili bilgi topluyordum. WAV dosyalarını PRG'ye çeviren python script ile karşılaştım. Script dillerinden nefret ederim ama bilirim. Bunu C olarak kodlamaya karar verdim.
Kaynak kod, çalıştırılabilir dosya (windows için exe, kaynak dosyaları linux için de derlenebilirdir), örnekler (prg, d64, wav)
Videoyu izlerseniz örneğin kendi sesinizi c64'de dinleyebilirsiniz. Nasıl mı?
WAV dosyası elde etmek için
http://audacity.sourceforge.net üzerinden indirebileceğiniz Audacity ile Mono, 11025kHz ve 16bit PCM olarak olarak ses kaydınızı WAV olarak kaydedin.
Sonra 11kHz olduğu için 8bit prg headerlı player ile (referanstaki headera göre modifiyelidir) prg oluşturmak için shell üzerinde şu komut girilmeli:
Win2Prg.exe -h2 sesim.wav sesim.prg
Sonrası ister emulator isterseniz gerek c64 üzerinde dosyayı yüklemeniz.
Gerçek C64 üzerinde 11kHz sample rate wav dosyalarını -h2 opsiyonu ile oluşturduğumuzda daha net ses çıkışı olmakta. Diğerinde gerçek c64 sesini sonuna kadar açmak zorunda kaldım. 11 kHz olan wav dosya süresi max. 4.5 saniyeyi, 8kHz olanların da 12 saniyeyi aşmaması gerekiyor. Bunu yine Audacity gibi bir ses editleme uygulaması ile kolayca ayarlayabilirsiniz.
Referans:
http://www.frank-buss.de/c64/sampler/index.htmlUygulama ve örnekler:
https://github.com/emartisoft/Wav2Prg