Commodore sayı 76, sayfa 35

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 35

da ise kitap bulamadım. Mesela, EOR #$FF gibi bir şey neyi ifade eder? Veya 0801 adresine yazılmış 18 08 90 ... şeklinde onaltılık sistemde yerleştirilmiş sayılar neye göre konuyor? Selam Cengiz!.. Mektubunda bir tek bu soruyu yayınlıyorum, diğerinin (Art studio 2 ile yaptığın resimleri nasıl kullanacağını) çözümünü bu sayfalardaki kısa BASIC programda bulabilirsin. 1- Her şeyden önce, umarım bu cevabı herkes okuyordur, çünkü burada yazacaklarım birkaç soru işaretini kafanızdan silecektir. İlk olarak nasıl BASIC'de Print, Input gibi komutlar varsa, makine dilinde de (makine diline MD diyeceğim kısaca..) LDA, CMP, EOR, STA gibi 3 harften oluşan komutlar vardır. Her MD komutunun ayrıca bir de sayı olarak karşılığı vardır. Yani MD'de siz bilgisayara LDA yerine onun karşılığı olan A9 rakamını verdiğiniz an bilgisayar aynı şeyi anlayacaktır. BASIC'de nasıl LİST komutu vererek BASIC listesi görebiliyorsak, MD'de de M (adres) ya da D(adres) yazarak listeyi görebiliriz. Mesela bir MD programını C000 adresine yazdık diyelim. Buradaki programı M C000 diye list edersek, komutları değil, numerik karşılıklarını görürüz. Eğer D C000 diye list istersek, LDA gibi komutların kendilerini görürüz. Bu numerik ifadelerin başındaki adresler (mesela senin verdiğin örnekte 0801 oluyor) BASIC programlarda nasıl satır numarası veriyorsak, MD programlarda verdiğimiz satır numaralarıdır, ancak aynı zamanda bilgisayarın hafızasını temsil ederler. MD birkaç yönüyle BASIC'e benzer. Mesela POKE 1024,2 komutu ile ekranın en üstüne bir B harfi koyabiliriz. Aynısını MD ile yapalım.

$1000 LDA $1002 STA $0400 $1005 RTS

Burada LDA #$02 ile A değişkenine B harfinin kodu olan 2 rakamını veriyoruz. (LOAD A WITH 02) STA $0400 ile bu B harfini ekrana koyuyoruz. (STORE A TO $0400) $0400, onaltılık sistemdedir ve onluk sistemde 1024'e eşittir. Son komut olan RTS ise MD programın bittiğini belirtir. Aynı programı numerik olarak yazarak şöyle görünür.

$1000 A9 02 8D 00 04 60

Burada A9 02 LDA #$02'nin; 8D 00 04 STA $0400'ün; 60 ise RTS'nin kodudur.

Program döküm ekindeki MD programları için de aynı şey geçerli. Bu komutları öğrenmek sana MD'ye bir giriş sağlayacaktır. Gökhan Türkel, İstanbul 1- Makine dili için hazırlanan MDE programını yazdım, fakat kayıt ettikten sonra hata uyarısı çıktı. LEFT ve RIGHT'ı nasıl yazabilirim? Ayrıca BASIC ile yazılmış programlarda (DOWN), (UP), (RVSON), (RVSOFF), (HOME), (CLR)'i ekrana nasıl yazabilirim?

2- Dergide daha güzel ve geniş açıklamalı oyunlara yer vermeniz mümkün olmaz mı? Hemen cevaplar.. 1- Bir BASIC programda tırnak işaretinden sonra girebileceğiniz bu tür deyimleri şöyle yazabilirsiniz.. Klavyenizi biraz incelediğinizde aslında bu deyimlerin aynılarının klavyeden de yazılı olduğunu göreceksiniz. Mesela (UP)'ı yazmak için, cursor'ı yukarı çıkarmanıza yarayan CURSOR UP tuşuna basmanız yeterli olacaktır. Programı yazarken bu tür tuşlara bastığınızda acayip şekillerin çıktığını göreceksiniz, panik olmayın, bunlar normal. Sonra, hepsini ve mesajları yazıp tırnağı kapattığınızda her şey normale dönecektir. Bunun gibi, her deyim klavyede yazıyor, biraz dikkat edersen hangi tuşlara basman gerektiğini anlarsın. 2- Üzgünüm ama biz zaten 64'te çıkan en güzel oyunları açıklıyoruz. Belki söylemek istediğin ve “geniş açıklamalı oyunlar” diyerek kastettiğin oyunlar adventure'lar, ama takdir edersin ki onları geldiği an oynayıp bitirmek mümkün değil. Umarım bu konuda bizlere anlayış gösterirsiniz.. Erkan Gürel, Yozgat(?) 1- Döküm ekindeki C000: A4 FB A5 FC.. tipi programları bilgisayarıma yazıyorum, ama her satırın sonunda Syntax Error ile karşılaşıyorum. Neden? 2- İki satırdan fazla olan bir program satırını bilgisayar ikinci satırın sonuna kadar kabul ediyor, kalanları syntax ile karşılıyor. Bu iki satırdan sonra kalanları başka bir satır numarasıyla mı yazmalıyım? 3- C-64'de port 2'deki joystick'im yukarı, sağa gitmiyor ve ateş etmiyor. (joystick bozuk değil) Aynı görevi gören klavyedeki tuşlar da çalışmıyor. Bilgisayarım arızalı mı? dır, MDE ile veya bir kartuşun makine dili monitörü ile yazılmalıdırlar. 2- BASIC'de her komutun kısaltılmış yazılışı vardır. Tüm komutlarda, komutun ilk harfini basıp ikincisini Shift ile beraber basmak o komutun yerine geçecektir. Böylece en uzun komutları bile toplam 2 harfte ifade edip BASIC satırlarını kısaltabilir ve 2 satıra sığdırabilirsin. (Bazıları için kısaltma yoktur. Ed.) 3- CIA çipin uçmuş. En yakın Teleteknik

Klavyeyle gezinmek için ← ve → tuşları.