Uzun zamandır aklımda olan bir konu vardı ve ancak bugün halledebildim.
Konumuz 128K+2 ve müzik çaldırma.
Öncelikle daha forumda paylaşılan ZXTOOLCHAIN dosyasını indirip (nerde olduğunu bulamadım) kuruyoruz. İçinden VortexTrackerII-1.19 programını çalıştırıyoruz.
1 - File --> Open --> Modules for test ile klasör ve müzik seçiyoruz. (Ben örnek olması için ASC Sound Master klasöründen VA-BANK.asc dosyasını seçtim)
2 - File --> Exports --> Save with ZX Spectrum player seçiyoruz.
3 - Yazacağınız kodda müziğin hangi adreste olmasını istiyorsanız, bu adresi ekrana gelen pencerede Parameters kısmına giriyorsunuz. Örnek olarak $A000 girelim.
Adresi girdiğinizde yan tarafta bulunan Hints bölümündeki değerleri bir yere yazıyorsunuz. Mutlaka yapılması gerekir.
Örnekte INIT için A000, play için A005 ve Mute için A008 değerleri gözükecektir.
Müziğimizin uzunluğunu bulmak için yine Hints kısmındaki Module adress değerini hesaplıyoruz. Örnekte modul başlangıç adresi $A86E ve uzunluğu $1424'tür. Bu ikisini topladığımızda müziğin son adresi $BC92 olarak bulunur. Dolayısıyla müziğimiz $A000 - $BC92 arasında yer almaktadır. Toplam uzunluk $1C92 (7314) bayttır.
Aynı penceredeki Format bölümünde ise .TAP file kısmını işaretleyip OK diyoruz.
Daha sonra dosyaadı.tap yazarak müzik dosyamızı, .asm dosyamızın olduğu klasöre kaydediyoruz.
4 - SpaceEmu'yu çalıştırıyoruz.
File --> Insert Tape ile kaydettiğimiz .tap dosyasını seçiyoruz.
(Doğrudan .tap dosyasını tıklayabilirsiniz)
İlk olarak vtplayer kodu yüklenecektir. Daha sonra emulatörden load "" code ile müzik datasını yüklüyoruz.
Böylece Player + data'yı yüklemiş olduk.
Emülatörde File --> Save Binary File seçerek önce Memory adress for binary kısmına müziğimizin başlangıç adresini 40960 ve uzunluğunu 7314 (ben 2-3 fazlasını giriyorum) olarak yazıyoruz.
Filename kısmında ise ilk önce .asm dosyamızın olduğu klasörü seçerek muzak.bin olarak müziğimizi kaydediyoruz.
5 - Kod yazdığımız editörü açıp aşağıdaki ufak kodu yazıyoruz.
org $8000
call $a000 ; zak init
ei
loop halt
call $a005 ; zak play
jr loop
org $a000
incbin "muzak.bin"
end $8000
Compile and Run.
Güle güle kullanın.
Kendi adıma sebeplendim :) Teşekkürler. programla açtığım tracker müzik dosyalarını .sndh olarak kaydedip sonra bunu .ym formatına dönüştürüp oric üzerinden de çaldırabildim. Oric ile metallica'nın nothing else matters çaldırmak süperdi :)
google'de zxtoolchain araması zaten sadece retrojende verilen şu linki gösteriyor.
zxtoolchain-retrojen.zip (http://arda.kisafilm.org/fish/get/serve.php?b=zxtoolchain-retrojen.zip&d=24)
Tracker'In içindeki klasörlerde birçok örnek dosya mevcut ama daha fazlasına nereden ulaşabiliriz? Birçok farklı tracker formatını açabiliyor olması harika. Ama nette hiçbiri için bir arşiv bulamadım.
ilgili konuya link:
http://retrojen.org/pano/index.php?topic=539.msg4197#msg4197 (http://retrojen.org/pano/index.php?topic=539.msg4197#msg4197)
Peacer aşağıdaki sitelere bir bak istersen. Bir ara bilgisayarımda birçok .ay müzik vardı. Nereden indirdiğimi hatırlamıyorum. Tek hatırladığım müzisyenlerin adının ve kaç tane müziklerinin olduğu yazılıydı.
http://bulba.untergrund.net/main_e.htm (http://bulba.untergrund.net/main_e.htm)
http://www.worldofspectrum.org/projectay/index.htm (http://www.worldofspectrum.org/projectay/index.htm)
Alıntı yapılan: Pe@ceR - 09 Mart 2014, 10:32:55
Tracker'In içindeki klasörlerde birçok örnek dosya mevcut ama daha fazlasına nereden ulaşabiliriz? Birçok farklı tracker formatını açabiliyor olması harika. Ama nette hiçbiri için bir arşiv bulamadım.
Zx Spectrum için şöyle bir arşiv var:
http://zxtunes.com/ (http://zxtunes.com/)
ingilizce ara birimi mevcut: http://zxtunes.com/stats.php?&ln=eng (http://zxtunes.com/stats.php?&ln=eng)
zxtunes.com işte bu siteydi.
Süper oldu, çok teşekkürler :)
bir de burası var:
http://zxart.ee/eng/music/ (http://zxart.ee/eng/music/)
Alıntı yapılan: hades - 08 Mart 2014, 23:20:52
...
Emülatörde File --> Save Binary File seçerek önce Memory adress for binary kısmına müziğimizin başlangıç adresini 40960 ve uzunluğunu 7314 (ben 2-3 fazlasını giriyorum)
...
ah şu batıl inançlar :D