Ana Sayfa
Amiga Dokumantasyon Projesi
Medya
Yardım
Ara
Giriş Yap
Kayıt
Merhaba,
Ziyaretçi
. Lütfen
giriş yapın
veya
üye olun
.
1 Saat
1 Gün
1 Hafta
1 Ay
Her zaman
Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz
Gelişmiş Arama
insanın içinde varsa, commodore.gen.tr açığa çıkarır bunu.. bir nevi retro olaylarının dolunayıyız.(Arda)
commodore.gen.tr
Genel Kategori
Proje
Psid player projesi
« önceki
sonraki »
Sayfa:
1
...
7
8
[
9
]
10
11
...
14
Aşağı git
Gönderen
Konu: Psid player projesi (Okunma Sayısı 138472 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
Voltron
Uzman
Mesaj Sayısı: 2.198
Ynt: Psid player projesi
«
Yanıtla #120 :
Nisan 01, 2015, 21:49:09 ÖS »
Alıntı sahibi: Simon (Özay Turay) üzerinde Nisan 01, 2015, 21:07:53 ÖS
Aman diyim lock bitleri kurcalama alırsın eline mikrodenetleyiciyi.
Aynı zamanda ICSP'yi devre dışı bırakmamak gerek, yoksa TL866 benzeri bir programlayıcı olmadan tekrar ayarlanamıyor fuse bitler.
Bir de her seferinde tekrar tekrar yazmaya gerek yok fuse bitleri. Bir sefer amaca göre programlayıp daha sonra gerektikçe sadece firmware'i yazmak gerekiyor.
Zaten bir kere yazdım ve bıraktım.
Alıntı sahibi: i_r_on üzerinde Nisan 01, 2015, 21:36:22 ÖS
@voltron: yanlış yazdın herhalde 0e değil e0 olacak.
Evet ben yanlış yazdım. E0 olarak hesaplattim yukardaki siteye. Bana verdiği bitleri aynen programlayıcı ya girdim. Yazımdan sonra verify edince low fuse=e0 değerini aldım.
Logged
Metal grupları çok bağırıyor. haklıyken haksız duruma düşüyorlar...
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #121 :
Nisan 06, 2015, 02:49:52 ÖÖ »
O kadar yazdım, sonra neye bastıysam artık silindi. Neyse özet geçeyim,
2 hafta önceki gelişmelerin sonucu aşağıdaki videoda. IRQ üçkağıdı 38400bps UART ile pc'den sid transferi ile artık çalışıyor. Şu an için $C000'ın üstüne yüklenen sid'ler çalışmıyor ama diğerlerinde sorun yok.
GAL'lere yüklediğim günahın muhtemelen bozuk sid kaynaklı olması gibi bir ihtimal olabileceğinden GAL kullanımına geri döneceğim zira $c000'ın üstüne yüklenen sid'leri çalabilmek için sid transferi sonrası rom'u kapatabilmeliyim. Bu da Address decoder'a tüm chip select'leri etkileyecek yeni bir kontrol sinyali eklemek demek. Discrete logic elemanları ile karışık oluyor bu iş.
Sonrasında düzgün playback yapabilmek için sıkı döngü yerine interrupt kullanmam lazım. Bunun için transfer sonrası irq/nmi vektörlerini player'ın arkasına yazacağım bir koda yönlendireceğim. 50 hz'lik bir sinyal pic'in PWM üreticisi için oldukça düşük. Bu işi cycle sayarak yapanlar var ancak çok da güzel bir çözüm değil. Bunun yerine 50 ve 60'ın katı olan ve pic'in desteklediği bir sinyal üretmeyi düşünüyorum, misal 3000hz. Player'ın arkasına koyacağım interrupt rutini ise örneğin PAL sid'ler için 3000/50 = 60, NTSC sid'ler için 3000/60 = 50 sayarak play rutinini çağıracak.
Sonra pic player'ı transfer ederken sid üzerindeki relocation bilgisini kullanmalı ki çalan sid ile yüklediğimiz player çakışmasın.
Şöyle de bir durum var. Transferi yaparken interrupt bacaklarına bit banging yapılırken, çalma esnasında pwm kullanmam lazım. Bunun için de ya pic tarafında jonglörlük yapılacak ya da interrupt bacaklarından biri GAL üzerinden logic ile beslenecek. Bu arada artık elimde 20v8d de var. Yani GAL üzerinde bu işler için yeterince input bacağı olacak. (12 input, 8 output bacağı var)
Bunları da halledersem sd kart erişimi işine dalabilirim.
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
LW3D
Yönetici
Mesaj Sayısı: 11.408
Günü Kurtaran Avam Hiooargggh :)
Ynt: Psid player projesi
«
Yanıtla #122 :
Nisan 06, 2015, 10:02:22 ÖÖ »
Sadece kolonları görüp, müziği dinlesek
Kabloları görünce insan korkuyor
Tebrikler...
Logged
SineFX
*
Bilgisayar Müzesi Koleksiyonu
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #123 :
Nisan 06, 2015, 22:25:00 ÖS »
Alıntı sahibi: LW3D üzerinde Nisan 06, 2015, 10:02:22 ÖÖ
Sadece kolonları görüp, müziği dinlesek
Kabloları görünce insan korkuyor
Tebrikler...
Şu an ne kolonları görebiliyoruz ne de kabloları. Youtube'u kapatmışlar
Şu an breadboard benim için büyük rahatlık. Kafa iznimi alana kadar da böyle gider herhalde. Ondan sonra pcb / kutu işlerine falan girersem daha güzel görüntülerle video çekerim herhalde.
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
Voltron
Uzman
Mesaj Sayısı: 2.198
Ynt: Psid player projesi
«
Yanıtla #124 :
Nisan 06, 2015, 23:05:23 ÖS »
Hala SwinSID mi bu çalan ? Gerçek SID gibi geliyor bana.
Logged
Metal grupları çok bağırıyor. haklıyken haksız duruma düşüyorlar...
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #125 :
Nisan 06, 2015, 23:36:56 ÖS »
Alıntı sahibi: Voltron üzerinde Nisan 06, 2015, 23:05:23 ÖS
Hala SwinSID mi bu çalan ? Gerçek SID gibi geliyor bana.
Malesef swinsid. Swinsid ile tüm geliştirme bittikten sonra ses board'u yapmayı düşünüyorum, gerçek sid'i bir daha o noktada deneyeceğim sadece.
Bazı parçalarda swinsid bariz sırıtıyor, özellikle sırıtmayan parçaları seçtim ben
Tabii benim devrede de sırıtıyor olabilir daha önce yazdığım gibi interrupt'lar ile çalışan bir player'a geçmem lazım. O zaman gerçek anlamda bir karşılaştırma yapılabilir. Bir de bu speaker'lar sağlam kulakların gerçek bir karşılaştırma yapabilmesi için çok kötü.
Şu anda çok önemsemiyorum zira sid kısmından çok pic + 6502 tarafında çok işim var.
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
Voltron
Uzman
Mesaj Sayısı: 2.198
Ynt: Psid player projesi
«
Yanıtla #126 :
Nisan 07, 2015, 00:32:22 ÖÖ »
Alıntı sahibi: i_r_on üzerinde Nisan 06, 2015, 23:36:56 ÖS
Malesef swinsid. Swinsid ile tüm geliştirme bittikten sonra ses board'u yapmayı düşünüyorum, gerçek sid'i bir daha o noktada deneyeceğim sadece.
Ama yine de çok güzel. Hiç yoktan iyidir. Bazı parçalarda özel efetkler için özellikle sid -bug- larından faydalanan dijital seslerde başarısız olabiliyormuş, 8580'in sevilmeme nedenlerinden birisi de bu. Bir de ADSR değerlerinin farklı olması. Gerçi ben şu yukarıdakini bu hali ile bir 8580 den ayırt edemedim.
«
Son Düzenleme: Nisan 07, 2015, 03:08:31 ÖÖ Gönderen: Voltron
»
Logged
Metal grupları çok bağırıyor. haklıyken haksız duruma düşüyorlar...
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #127 :
Nisan 18, 2015, 00:01:14 ÖÖ »
Alıntı sahibi: Voltron üzerinde Nisan 07, 2015, 00:32:22 ÖÖ
Alıntı sahibi: i_r_on üzerinde Nisan 06, 2015, 23:36:56 ÖS
Malesef swinsid. Swinsid ile tüm geliştirme bittikten sonra ses board'u yapmayı düşünüyorum, gerçek sid'i bir daha o noktada deneyeceğim sadece.
Ama yine de çok güzel. Hiç yoktan iyidir. Bazı parçalarda özel efetkler için özellikle sid -bug- larından faydalanan dijital seslerde başarısız olabiliyormuş, 8580'in sevilmeme nedenlerinden birisi de bu. Bir de ADSR değerlerinin farklı olması. Gerçi ben şu yukarıdakini bu hali ile bir 8580 den ayırt edemedim.
Sid dinleme tecrübem c64c'deki 8580 ve bunun haricinde seneler boyunca emülasyonlar ile olduğu için rafine bir eğilimim yok. Bir ara hardsid üstünde 6581R3 kullanıyordum sanıyorum. Projeyi ilerletip buraya sid'i takacaksın, şu jumper'dan sid versiyonun seçeceksin (swinsid / 6581 / 8580) aşamasına getirirsem herhalde doyasıya dinleyip aradaki farkları tam olarak test etme imkanım olacak.
Bu arada en son kaldığım nokta hakkında da biraz bilgi vereyim.
En son Atmega8515'li Swinsid SE denemeleri yaptım test devresi üstünde, GAL'i de tekrar işin içine soktum. Her ne kadar sid çalmada başarılı olsa da sorunları var. Swinsid'e yahut GAL'e sorunu izole edemedim. Sd kart tarafında da ilerleyebilmek için geçenlerde Arduino için olan sd kart modüllerinden ve atmega88 sipariş ettim. İsmini vermek istemediğim alışveriş sitesi hem müşteri hizmetleri hem de stok takibi açısından tırt çıktı. Atmega88 olmadan mallar elime ancak pazartesi ulaşacak.
Şimdi basit devrede bol bol sid dinliyorum. Irq rutinini yazmak falan içimden gelmiyor ikinci swinsid'i test devresinde devreye sokana kadar. Basit olan devrede DMA yapamadığım için eprom yazmam lazım, uğraşmak istemiyorum.
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #128 :
Nisan 19, 2015, 23:06:55 ÖS »
Hazır arduino için sd kart shield'ım pazartesi gelecek iken dur dedim şu bizim işi arduino'ya çevireyim. Ttl2Usb olayı olsun, gücünün usb'den olması olsun daha hızlı yol alınabiliyor. En büyük avantajlardan biri de yüksek kapasite tabii. 32k flash ve 2k ram var, sd kart, serial, lcd vesaire kütüphaneleri hazır.
Pcb tasarlamaktansa şu nanelerle de üstüste tüm devreyi halledebilirim. Tabii bunları Türkiyede bulmak yahut aliexpress'ten gelmesini beklemek te var işin içinde.
Arduino'ya aktarmak oldukça kolay oldu, ilk denemede çalıştı meret. Program basit olunca haliyle böyle. (Videonun sonunda Atmega328'de çalışan kodun tam source'u mevcut)
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #129 :
Nisan 26, 2015, 23:45:02 ÖS »
Sd kart erişimini de hallettik. Şimdilik, 5-10 tane sid'i doğrudan adı ile okuyup çaldırıyorum.
Pic'ten Atmega işlemciye geçmenin faydasını şu anda görüyorum. Pic'te kalsaydım yeni devrede 384 byte ram ile bırak display sürmeyi, sd kart bile hayaldi. Atmega328 üzerinde 32k flash ve 2k sram var. Şu basit haliyle bile ram'de ancak 600 küsür byte yer kalıyor.
Uzun dosya ismi desteği ile dosya browse etme işi epey zor. Bunu yapmak yerine sidplayer'ın playlistlerini kullanmayı düşünüyorum. Zaten Hvsc de sid browse etmek için oldukça karışık. Herhangi bir sid'i çalmak için seri port üzerinden haberleşmeyi kullanabilirim.
Sdfat kütüphanesinin dosya açmak için ne kadar uzun bir yolu desteklediği de önemli. Çünkü yol playlist'ten okuduğunda ram'den yiyecek. (Hvsc içinde bazı sid'lerde 100 karaktere kadar çıkıyor)
Problemler de yok değil, aşağıdaki videoda da görüldüğü gibi enteresan bir problemim var. 1. sid'i çalıyorum, düzgün, 2.yi çalıyorum o da düzgün. 3.'yü çalıyorum 1. sid tekrar çalınıyor
Sebebi 3. sid'in transfer olmaması. Bu arada 2. sid 1.'yi ezmediği için çalınıyor. Reset rutini / SO pin'indeki gürültü yahut irq / nmi handler'lar ve ön plandaki rutin içinde bir race condition var.
2-4k arası bir sid 2sn. gibi bir sürede transfer oluyor, 7-8k olanlar 4sn. sürüyor. Bu tasarımda artık çok daha fazla değişikliğe gitmeyeceğim. Benim için bu süreler yeterli. Zaten ortamı bir CIA çipi yahut emülasyonu ile şenlendirmeden RSID'ler ve digi'ler hayal. 8k üstü sid'lerin çoğunda da digi var.
Aynı tasarım üstünden 6526(CIA) yerine 6522 (VIA, hala temin edilebiliyor bu çip) ile ileride digi denemesi yapacağım. Daha çok zaman var bunun için.
Devrenin sd kart kullanan hali aşağıda. Kayıtta belli olmuyor ama ortalama bir pc ses sisteminde ses çok tatmin edici, özellikle de baslar.
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #130 :
Nisan 30, 2015, 23:47:28 ÖS »
Dün akşam biraz kod yazmıştım, bugün de biraz debug yaptım ve biraz daha kod yazdım. Arduino içindeki SD wrapper yerine doğrudan SDFatLib'i kullanmaya başladım. Hem daha fazla ram boşta kalıyor hem de uzun dosya ismi desteği var. Sid'lerin dosya isimleri uzun olduğu için bu tam bana göre. Ne zamandan beri var bilmiyorum ancak birden fazla dosyanın aynı anda açık olabilmesi de mevcut. Şükür ki her açılan dosya için ayrı bir 512 byte buffer istemiyor bu kütüphane.
Playlist dosyasının tamamını hafızaya atamayacağım için ve her önceki / sonraki şarkı seçiminde baştan okumak verimsiz olacağı için başlangıçta bir indeksleme işlemi yapıyorum. Program playlist dosyasını parse edip her şarkının tanımının başladığı yeri bir indeks dosyasına 5. byte'tan başlamak üzere yazıyor sırasıyla. İlk 4 byte'a da toplam sid sayısını yazıyor. Çalma aşamasına geldiğimde de sid sayısı ve o an çalmakta olan sid indeksi üzerinden yeni indeksi buluyor. Index dosyasını açıp playlist dosyasında doğrudan o sid'in bilgileri olduğu satıra gidiyor.
Eski bug'lar baki ancak şu an önceki / sonraki şeklinde güzelce çalıyor. Sırada display var, peşinden de haşin bug'ların temizlenmesi ana uyumluluk geliştirmelerinin (address decoder, interrupt ile çalma) yapılması var. Sonrasında da ilk ürünün montajı
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
LW3D
Yönetici
Mesaj Sayısı: 11.408
Günü Kurtaran Avam Hiooargggh :)
Ynt: Psid player projesi
«
Yanıtla #131 :
Nisan 30, 2015, 23:53:46 ÖS »
Eline sağlık...Öncekine de yorum yazacaktım. Ama hem bir faydası olmayıp, her seferinde eline sağlık demek kolay olmuyor. Çok güzel proje...
Logged
SineFX
*
Bilgisayar Müzesi Koleksiyonu
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #132 :
Mayıs 01, 2015, 00:44:40 ÖÖ »
Alıntı sahibi: LW3D üzerinde Nisan 30, 2015, 23:53:46 ÖS
Eline sağlık...Öncekine de yorum yazacaktım. Ama hem bir faydası olmayıp, her seferinde eline sağlık demek kolay olmuyor. Çok güzel proje...
Sorun değil, bir süre sonra insan kendi başına motive olmayı da başarabiliyor
İlle de birilerinin alkış tutmasına çok da gerek yok aslında. Test amaçlı olsa bile yıllarca pc'de dinlediğim sid'leri pc'den bağımsız devre üstünde dinliyor olmak bile başlı başına bir motivasyon kaynağı.
Veya işyerime bunu güzel bir kutuya monte edilmiş şekilde götürüp kullanma düşüncesi.
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #133 :
Mayıs 02, 2015, 02:29:50 ÖÖ »
Arduino üstünden 6 i/o pin daha kullanarak display işini de hallettim. 2x16 display kullanıyorum, elimde i2c entegreli display olmadığı için mecburen 4-bit modunda bağladım. Hala elimde boşta 6 tane i/o pin'i var. Bunların üçü kontrol amaçlı butonlara gidecek. 3 tane de boşa çıkacak.
Günahıyla sevabıyla artık monte edilebilir hale az çok geldi. Address decoder'daki düzeltme ve gürültü filtreleme işlerini saymazsak artık gerisi yazılım. İlk prototip montaj işini öne alayım diyorum. Display ve arduino üzerinde timer interrupt kullanımı ile beraber gelen gürültüden de belki kurtulurum.
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
i_r_on
Uzman
Mesaj Sayısı: 2.873
Ynt: Psid player projesi
«
Yanıtla #134 :
Mayıs 03, 2015, 00:12:51 ÖÖ »
İstemeden de olsa bump yapıyorum, benzer problem yaşayanlar faydalanırlar.
Timer interrupt çalışırken oluşan gürültü, sd card'ın her zaman initialize olmaması (özellikle de lcd'nin backlight takılıyken), seri bağlantıyı aç / kapa yaparken aldığım hatalar. Ve hatta arada rastgele sid transferinin yapılamaması... işte bütün bunlar hep usb'nin gücünün devreye yetmemesinden kaynaklanıyormuş.
Arduino uno'ya eski bir tp-link switch'in adaptörü ile 9v-0.6a harici güç verdim, her şey oldukça leziz şu an
Logged
Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>
twitter
|
blog
Sayfa:
1
...
7
8
[
9
]
10
11
...
14
Yukarı git
« önceki
sonraki »
Gitmek istediğiniz yer:
Gitmek istediğiniz yer:
-----------------------------
Genel Kategori
-----------------------------
=> Genel Sohbet
=> Proje
===> Proje Alım/Satım
=> DemoScene
=> Tanışma Forumu
-----------------------------
Commodore
-----------------------------
=> Commodore Genel
=> Commodore Yazılım
=> Commodore Donanım
===> C64DTV (C64 Direct-to-TV)
===> TheC64 / TheC64 Mini
=> Commodore Yayınları
=> Commodore Emulasyon
-----------------------------
Amiga
-----------------------------
=> Amiga Genel
=> Amiga Yazılım
=> Amiga Donanım
=> Amiga Yayınları
=> Amiga Emülasyon
-----------------------------
Diğer Nostaljik Bilgisayarlar
-----------------------------
=> IBM Uyumlular / Retro x86 Sistemler
=> FPGA/ARM Sistemler
=> Amstrad
===> Amstrad - Genel
===> Amstrad - Yazılım
===> Amstrad - Donanım
===> Amstrad - Yayınlar
===> Amstrad - Emulasyon
=> Apple
===> Apple - Genel
===> Apple - Yazılım
===> Apple - Donanım
===> Apple - Emulasyon
=> Atari
===> Atari - Genel
===> Atari - Yazılım
===> Atari - Donanım
===> Atari - Emulasyon
=> MSX Uyumlular
===> MSX - Genel
===> MSX - Yazılım
===> MSX - Donanım
===> MSX - Emulasyon
=> Oric
===> Oric - Genel
===> Oric - Donanım
===> Oric - Yazılım
===> Oric - Emulasyon
=> Sinclair
===> Sinclair - Genel
===> Sinclair - Yazılım
===> Sinclair - Donanım
===> Sinclair - Emulasyon
=> Diğer Bilgisayarlar
-----------------------------
Arcade Sistemler ve Oyun Konsolları
-----------------------------
=> Arcade Sistemler
=> Oyun Konsolları