C-64'ün Kontrol Portları
Retro bilgisayarCommodore 64'ün çıkış birimlerini tanıtan yazı dizimizin bu bölümünde Control Port 1 ile uğraşacağız. Birçok kişinin sandığı gibi burası sadece Joystick bağlamak için kullanılmaz. Bu Port ile yapılabilecekleri kendi yapacağımız bir ışıklı kalem (Light Pen) örneğinde göreceğiz.
Bilgisayarınızın Control Port 1'indeki bir bağlantının nasıl kullanıldığını birçoğumuz bilmeyiz. Burada bahsettiğimiz 6 No.'lu Pin'dir ve iki ayrı işleve sahiptir. Öncelikle Joystick üzerindeki ateş tuşunun konumu bilgisayara buradan iletilir. Bu Pin'in asıl ilginç kullanımına ise birazdan değineceğiz. Büyük bir ihtimalle belli bazı fonksiyonları bilgisayara bağlı özel bir kalem vasıtasıyla doğrudan ekran üzerinde seçmeye yarayan Light Pen (ışıklı kalem) hakkında bir şeyler duymuşsunuzdur. Şimdi isterseniz bu cihazı daha yakından tanıyalım. Light Pen'in içindeki en önemli parça bir foto-diyot veya foto-transistördür. Bu foto-diyot aynı LDR (ışığa duyarlı direnç) prensibiyle çalışmaktadır. Bildiğiniz gibi televizyonun resim tübündeki elektron ışınları ekrana ulaştıklarında bir ışık gözükmektedir. ve bunlar birleşip bize ulaşan görüntüyü oluşturmaktadır. Böylelikle foto-diyet ekranın üzerine tutulduğunda elektron ışınları tarafından etkilenmektedirler. Bu bilgi aynı zamanda ışıklı kalemin neden sadece ekranın aydınlık olduğu zaman işlev gördüğünü de açıklamaktadır. Karanlık durumlarda foto-diyot herhangi bir impuls (tepki) oluşturamaz. Light Pen bir impuls gönderdiğinde bilgisayar öncelikle bu sinyalin ekranın hangi noktasına ait olduğunu araştırır. Sonuçta X ve Y koordinatları ile belirlenen ışıklı kalem pozisyonları kullanıcı tarafından belli bazı adreslerden öğrenilebilir ve program içinde kullanılabilir. Programlama işlemlerine geçebilmek için öncelikle bir ışıklı kalem temin edip bunu bilgisayara bağlamamız gereklidir. Yukarıda belirtildiği gibi ışıklı kalem için bir foto-transistöre ihtiyacımız olacak. Biz TIL 78 tipini kullandık ama benzerleri de cihazımızda aynı işlevi görebilir. Yalnız burada kesinlikle LDR kullanmayın, çünkü LDR ışığa karşı yeteri kadar çabuk tepki göstermemektedir. Devredeki diğer parçaları tüm el tronikçilerde rahatlıkla bulabilirsiniz. Eğer elinizin altında hazır bir Light Pen varsa tekrar başka bir tane yapmanıza gerek yoktur. İlerki satırlarda bulacağınız programları kendi cihazınızla kullanabilirsiniz. TIL 78 foto-transistörünün “emitör” ve “kollektör” diye adlandırılan iki bacağı vardır. Şimdi karşımıza bu iki bacaktan her birinin hangi fonksiyona sahip olduğunu bulmak gibi bir sorun çıkıyor. Bunu öğrenmenin üç yolu vardır: İlk olarak parçayı satın aldığınız elektronikçiye sorup öğrenebilirsiniz. Eğer bu imkâna sahip değilseniz diğer iki yolu denemeniz lazım. Fototransistör üzerinde kollektörün bulunduğu kenar diğerine nazaran daha düzdür. Ayrıca kollektör bacağı diğerinden daha kısadır. Fakat yukarıdaki ikinci yöntem her zaman daha güvenilirdir, çünkü siz parçayı satın almadan önce birisi uzun bacağı kısaltmış olabilir. Artık bu foto-transistörümüzü bilgisayara bağlayabiliriz. Yapacağınız işlemler sırasında C-64'ünüzün kapalı olmasına dikkat edin. Light Pen bağlantısı sadece Control Port 1'de mevcut olduğu için burayı kullanacağız. Emitör bacağını GND'yle ve kollektörü Port 1'deki LP bacağı (Pin 6) bağladığınızda en basit haliyle bir ışıklı kaleme sahip oldunuz demektir. Yaptığınız bu basit cihazın işleyip işlemediğini Döküm Eki'nde bulabileceğiniz PRG | ile kontrol edebilirsiniz. Bu program aslında Joystick demolarına oldukça benzemekte ve yine ekrana noktalar çizmektedir. Yalnız bu sefer noktalar ışıklı kalemin ekran üzerinde bulunduğu yere konulmaktadır. Bu şekilde ekranı doğrudan veri giriş birimi olarak kullanabiliriz. PRG 1'i yazıp RUN komutuyla çahıştırın. İlk olarak ekrana gelen noktanın görünür kalmasını mı yoksa her seferinde silinmesini mi istediğiniz sorulur. Bu soruya uygun harflerden bi-
“O PİN 7 (*5V) IMA Control-Port NE 555 DR ika O (LİGHT PEN) BC 238 C| © PİN 8(GND)
Resim 1: Işıklı kalemin devre şeması.
riyle cevap verin. Birkaç saniye sonra ekrana siyah bir dikdörtgen gelecektir. Şimdi foto-transistörü elinize alıp ekran üzerinde hareket ettirin: Siyah nokta ekranın üzerinde ışık kaleminizi takip edecektir. Aynı Joystick'te olduğu gibi klavye ve Light Pen birbirlerinin işleyişini engellemektedir. Program çalışırken tuşlara bastığınızda siyah noktanın oraya buraya hareket ettiğini göreceksiniz. Aynı şekilde programı RUN/STOP ile kesip ışık kalemini ekran üzerinde hareket ettirdiğinizde Cursor istem dışı harfler basacaktır. Eğer ekran üzerinde nokta Light
Pen ile birlikte hareket etmezse bunun çeşitli sebepleri olabilir: Programı doğru yazdıysanız ve tüm bağlantıları doğru yaptıysanız ekran karanlık kalıyor olabilir. Bu nedenle televizyon veya monitörünüzün aydınlıkkaranlık düğmesini biraz daha açın. Ekranın aydınlığı yine yeterli olmuyorsa ışık kaleminin bilgisayarınıza bağlantısı daha komplike bir hal alacaktır. Bu durumda foto-transistörden gelen sinyallerin seviyı yükseltecek bir kuvvetlendiriciye tiyacınız olacaktır. Resim 1'de bu kuvvetlendiricinin devre şemasını bulabilirsiniz. Şemanın sağ tarafında C- 64 ile yapılacak bağlantılar yer almaktadır. Devre her ne kadar oldukça basit ise de yine herhangi bir kısa devre olmaması için dikkatli yapılmalıdır. Kullanâcağınız parçaları Resim 2'de bulabilirsiniz.
Bu kuvvetlendiricinin yardımıyla ışıklı kaleminiz oldukça karanlık ekranlarda da işlev görecektir. Size uygun çalışma ortamına göre 1 Megaohm'luk potansiyometre ile ayar yapmalısınız. C-64'ünüzün ışıklı kalem takılı iken diğer normal fonksiyonlarda bir problemle karşılaşmak istemiyorsanız bu ayar çok hassas yapılmalıdır. Potansiyometreyi en sonuna kadar sıktıktan sonra en uygun konuma gelinceye kadar yavaşça çevirin. Şimdi programı yakından incelemeye başlayabiliriz. 390-400 satırlarda renk belleği noktalar beyaz fon üzerinde siyah gösterileceği için sıfırlanır. Ardından ışık kaleminin pozisyonu bilgisayar tarafında X ve Y koordinatları ile 9 bit hassasiyetiyle belirlenir. Bu 9 bitin üst taraftaki 8 tanesi X koordinatları için 53267'nci ve Y koordinatları için ise 53268'nci registerde yer almaktadır. Burada X ve Y koordinatları için 8 No.'lu bitin okunmasına gerek yoktur, zira 8 Bit'- ten elde edilen değerler bu çözünürlükte yeterli olmaktadır.
Eğer elinizin altında hazır bir Light Pen varsa tekrar başka bir tane yapmaya gerek yoktur. Döküm ekinde bulacağınız programları kendi cihazınızla kullanabilirsiniz.
440 ile 470 arası satırlarda yukarıda belirlenen registerlerden her biri beşer kez okunur. Elde edilen değerler toplanıp beşe bölündüğünde bir ortalama değer elde edilir. Her ne kadar Light Pen'in üzerinde bulunduğu noktanın Y-koordinatları bir derece sabit kalsa da X koordinatları oldukça fazla değişmektedir. Yukarıda bulunan ortalama değer ekrana gereksiz noktaların basılmasını önler. X koordinatlarının bu derece fazla oynamasının kullanılan foto-transistö- Tün ve monitörün kalitesiyle yakından ilişkisi vardır. 510 ve 520'nci satırlarda okunan değerler ekran koordinatlarına çevrilir. Eğer bir ışıklı kalemi kendi programlarınızda kullanmak istiyorsanız bu konuda biraz tecrübe kazanmanız lazımdır. Her program için yukarıdaki satırlarda kullanılan ekran değeri hesaplama algoritması farklı olacaktır. 560'inci satırdan sonra artık bu tür çizim programları için standartlaşmış değer kontrolleri yer alır. Özellikle ışık kalemi ile çalışırken X değerleri fazla oynadığı için bu kontroller ayrı bir önem kazanmaktadır. Geri kalan satırlar REM komutları ile yeteri kadar açıklık kazanmıştır. PRG 2 ise Light Pen için başka bir demo programıdır. Burada yaptığımız cihazı çizmek yerine belli bazı menü seçeneklerinden birini belirlemede kullanacaksınız. Y-koordinatlarındaki oldukça yüksek hassasiyet nedeniyle sadece'bunlar kullanılmıştır. Yani ışıklı kalemin sadece düşey doğrultudaki hareketleri değerlendirilecektir. Programda C-64'ün üç ses kanalından bir tanesini seçebilirsiniz. Kullanılacak sesin seviyesi seçilen kanala bağlıdır. İstediğiniz bir sesi seçmek için ışık kalemi ile ekran üzerindeki dikdörtgenlerden birine dokunmanız yeterli olacaktır. 470'inci satırda ışıklı kalemin Y-registeri okunmaktadır. Elde edilen de-
MERCI..e
IK 10K
1 Trimpot (1 Megaohm)
Kondansatörler: 1nF
Biraz kablo Control Port Konnektörü ğerler ile 490'inci satırdan itibaren uygun ses kanalı ve ses seviyesi belirlenmektedir. Eğer yeni bir kanal seçilmezse TI (eski kanal) değişkeni T2'ye (yeni kanal) eşit olacaktır ve $50'inci satır aynı kanalı tekrar devreye sokulmasını önleyerek sesin kalitesini arttırmaktadır.
Resim 2: Parça listesi.
Eğer yaptığınız bu ışıklı kalemin sık sık kendi programlarınızda yer almasını istiyorsanız cihazınızın gerçek bir kalem gibi kullanılabilir olmasını sağlamalısınız. Bu iş için normal bir tükenmez veya keçeli kalemin içindeki her şeyi çıkartın. Foto-transistörünüzü uzunca bir kabloya lehimledikten sonra dikkatlice kalemin içine yerleştirebilirsiniz. Burada yapacağınız bir kısa devre bilgisayara zarar vermez ama foto-transistörünüzün yanmasına neden olur. Yaptığınız kalemin ucundaki delik ne kadar küçük olursa cihazınızla o kadar hassas çizimler yapabilirsiniz. Fakat deliğin çok aşırı küçük olduğu durumlarda foto-transistöre hiç ışık gitmeyeceğini unutmayın. Eğer kaleminiz çalışmıyorsa deliğin çapını büyütmeden önce monitörün aydınlık/karanlık ayarıyla biraz oynayın. Cihazınızı bilgisayara taktığınızda gerçek bir ışık kalemine sahip oldunuz demektir.
Bu aylık hoşça kalın...
Program Dökümü'nü, Döküm Ekinde bulabilirsiniz.