1 Haziran 1990 Tarihli Commodore Gazetesi Sayfa 21

1 Haziran 1990 tarihli Commodore Gazetesi Sayfa 21
Metin içeriği (otomatik olarak oluşturulmuştur)

serbest bırakılmış bit IRO devreye sokulabilir. YVIC-İ-Chip-inin programlanmasına geçmeden önce atılması gereken adımları belirtelim: 1.) $DO12 ve $DOL1 adresinin 7.Bit'inden IRO'nun devreye sokulacağı raster satırı belirlenir. 2.) SDOLA'daki Interrupt-enable-Repsiterine 10090 0001 -değeri v erilerek Raster satırı İnterrupt'i serbest birakılır. Bundan sonraki adım IRO'nu mikro işlemci tarafın- dan yorumlarmasıdır. Geçen sayıda belirttiğimiz gibi IRO 788/9 ($314/5) vektörünün gösterdiği adrese dolaylı olarak atmaktadır. Bu vektörü değiştirildikten sonra ken- di rutinimizi göstermelidir. 3.) 5314/5 rutini yardımcı IRO rutinine yönlendirilir. Bu şekilde gerekli tüm hazırlıklar tamamlarmış olu- yor Gerisi tamamen yapacağımız programa bağlıdır. Re- sim 2'de programımızın akış diyağramı yer almaktadır. Şimdi satırları teker teker inceleyebiliriz. Önce $6000 adresinde başlayan (SYS 24576 ile çalıştırabilirsiniz) ha- zırlık aşaması: 6000 SEL Adım 3: IRO'nun kesilmesi 6001 LDA * 528 6003 STA $0314 SÜ06 LDA # $60ü SÖĞE STA # 0315 Adım 1: 600B LDA H $F8 600D STA $DodI2 baytına yazılır. SÜl0Ü LDA £DOl1 6013 AND # $7F 6015 STA $DO11 Adım 2: SÖİ8 LDA # $81 GÜTA STA SDOLA İRÖ rutininin alçak baytı İRO vektörü (alçak bayt) IİRÖ rutininin yüksek baytı IRÖ vektörü (yüksek bayt) Yazı ekranının bittiği raster satırı. Bu satırdan itibaren satır sıyah olmalıdır. Raster registerinin alçak Raster satırımın yüksek baytı OÖLLI ILI1 sayısı 7. Bit'i te- mizler Değer geri yazılır. Böylelik- le IRO'yu başlatacak Raster satırı belirlenmiş olur. Bu sefer 1000 ÖÖ01 sayısı IRÖ-enable-Register'ine ya- zalır (Raster İnterrupt'ı için) Bazı başlangıç değerlerinin belirlenmesi: 601DLDA #$00 GÖLF STA $DO20 6022 LDA * $04 6024 STA $02 6026 CLI 6027 RTS Siyah rengi (kodu ) Çerçeveye yazılır. Bant kalınlığı belirlenir IRO kapatılır. Hazırlık aşamasının sonu. Bundan sonra Interrupt'larda bizim $6028'den itiba- ren yazacağımız program çalışacaktır. İlk önce İnterrupt'ın VIC-U-Chip'inden mi, yöksa mik- roişlemciden mi kaynaklandığı araştırılır: 6028 LDA $DO19 602B STA $DO19 Eğer bu adresdeki 7, Bit “*1” değerini almışsa İmterrupt VIC-İ-Chip'inden geliyor demektir, Değer geri yazılır. SÖZE BML $6037 Eğer VI-İRO ise program $56037'ye atlar. CIAZIRO durumu: 6030 LDA $DCOD CIA1 Interrupt kontrol regis- teri temizlenir IRO'dan çıkılır Bu şekilde mikroişlemcinin, İnterrupt'ları arasına bi- zim yazacağımız VİC Interrupt'ları yerleştirilebilir. 6033 CLI Oyunlarcıcıki Başaırınızın — sırrı: Tabiüi ki ?? Orjinali TSI 'dir va bütün bilgiscıycır sohcılarında bulabillirsiniz. TEKMÖLBİİ SANAYİ Samer Mah, 28 Sokal Tfl:lIîEI 34770 Zeytinbumu İSTANBUL Tet (1) 563 12 54

Bu sayıdan diğer sayfalar: