Bu sayfadaki yazılar
Sayfanın metni
Sayfa 44
Can ÖZTÜRK MAKİNE DİLİ
ON-GOTO Bu komutu kullanırken, alt programdan dönüşte A yazmacının içerdiği değer, bizi ilgilendirmeyecektir. Alt programdan geri dönmek için RTS yerine JMP komutunu kullanmak yeterli olacaktır. Mesela,
2000 LDA $96 2004 BNE $2009 2006 JMP $5000 ; sıcak yaz 2009 $64 200B BNE $2010
200D JMP $5020 ; çok sıcak yaz 20410CMP $78 2012 BNE $2017 2044 JMP $5038 ; ilik yaz 2047 NOP
Bütün alt programlar görevlerini tamamladıklarında $2017 nolu adrese JMP komutu ile geri dönecekler. Bu tür kullanımın bir sakıncası var; Eğer programda birçok JMP komutu kullanırsak, bir süre sonra neyin nereye atladığını karıştırabiliriz. Bu şekilde yazılmış ve birçok JMP komutu içeren bir programa bir süre sonra baktığımızda ne yapmış olduğumuzu anlamak zor olacaktır.
READ
Makine dilinde veri okumanın bir anlamı yoktur, çünkü değişken değerleri BASIC'de olduğu gibi DATA satırlarında yer almaz. Programlama sırasında, bizim için gerekli olacak verileri hafızada ayırmış olduğumuz bölgelere tablolar halinde yerleştiririz. BASIC'de READ komutunun amacı değişkenlere değerlerini yüklemek veya bir grup veriyi alıp başka bir yere taşımaktır. Bu tür işlemler makine diliyle uğraşırken bilgisayar tarafından değil, bizim tarafımızdan halledilir. Eğer bir veriye ihtiyaç duyarsak, bu veriyi aldığımız adresleri ve verinin nereye aktarılacağını bildirerek istediğimiz veriyi kullanırız. Makine diliyle program yaparken, değişkenlerimizi hangi adreslerde tuttuğumuzu devamlı olarak takip etmemiz gerekecektir.
REM Eğer makine dili programları bir assembler kullanarak hazırlıyorsak, program içinde alt rutinlerin ne yaptığını yazmak çok yararlı olur. Özellikle, aradan bir süre geçtikten sonra yapmış olduğumuz programın ne işe yaradığını anlamak kolaylaşır. Bunun için her satırın sonuna noktalı virgül koyup istediğimiz açıklamayı yazabiliriz. Assembler bu yazıları görmeyecektir.
OYUNLAR İÇİN KOLAYLIKLAR Şimdi de oyunlar için çeşitli kolaylıklar gönderen arkadaşlarımızdan söz edelim.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 45
Ankara'dan Onur Malkoç arkadaşımız bize aşağıdaki ipuçlarını göndermiş. Kendisine teşekkür ediyoruz.
Neptune POKE 7870,60 Jüngle hunt : POKE 2242,234:POKE2243,234 Blagger POKE 3560,8
Burning Rubber Buck Rogers
: POKE 18432,173 POKE 8825,36
China miner : POKE 34623,44 Crazy kong 1: POKE 30624,173 Crossfire : POKE 27625,173 Fort apocal, : POKE 36339,153 Galaxian : POKE 7065,230 veya
POKE17288, 165 Hard hat mack : POKE 16877,173 Hunchback POKE 9521,44 jack : POKE 27904,173 Jumpman junior: POKE 9450,44 Laser strike POKE 16475,173 Pogo joe POKE Pooyan : POKE 20634,173 Sammy lightfoot: POKE 3678, 189 Seafox :POKE 7337,173 Shamus : POKE veya POKE23558, 169
Shamus Case II: POKE 15476,176
Snokie 33242,255 Zeppelin POKE 18546,44 Maniac Miner: POKE 16571,173:SYS 16384 Falcon Patrol: POKE 16764,36: POKE 16705,2: SYS 16640 Choplifter: POKE 8011,173 Frogger POKE 22341,173 Moon Buggy: POKE 24154,173 R-Nest: POKE MASK: PETALS OF DOOM:
1. Düzey sonsuz enerji MAYHEM: 2. düzey TRANSMOGRIFY: 3. düzey
Onur arkadaşımız bana gönderilen ipuçlarının bir sonraki dergide mi yayınlandığını yoksa yayınlanmasının daha da gecikip gecikmediğini soruyor. Gelen ipuçlarının bir sonraki dergide yayınlanması hemen hemen imkansız oluyor. Çünkü gelenlerin bir kısmı yazı yayına girdikten sonra elime geçmiş oluyor. İkinci ve en önemli sebep ise sizlerin bu köşeye yoğun bir ilgi göstermeniz sayesinde birçok ipucunun bana gönderilmesi. Bu yüzden gönderdiğiniz ipuçlarının birkaç ay sonra yayınlanması normaldir. Ankara'dan Murat Özkan arkadaşımız bize aşağıdaki ipucunu göndermiş. Kendisine teşekkür ediyoruz.
Süper Test Joystick sallamanız gereken yerlerde (kayık, bisiklet yarışı gibi), Joystick'i Port-1'e takıp autofire'a getirirseniz bu bölümü rahatlıkla geçebilirsiniz. Ankara'dan Ilgaz Kaya arkadaşımız bize aşağıdaki ipucunu göndermiş. Kendisine teşekkür ediyoruz.
Slap-Fight Baştaki iki kayayı vurmadan ve onlara vurulmadan geçip, daha sonra vurulursanız, çok ileri bir düzeye aktarılırsınız. Ankara'dan Emrah Özgür arkadaşımız bize aşağıdaki ipucunu göndermiş. Kendisine teşekkür ediyoruz.
Outlaws Birinci oyundan ikinci oyuna geçmek için evdeki Daltonları vurmak gerekiyor. Mustafa Bilgin arkadaşımız bize aşağıdaki ipuçlarını göndermiş. Kendisine teşekkür ediyoruz.
Yie Ar Kung-fu Eğer autofire'lı bir Joystick'e sahipseniz bu oyunda çok işinize yarayacak. Bütün rakiplerinizle oyun başladığında çaprazdan öne düşün, joystick'i aşağı çekip autofire'ı açın.
Living Daylights Level 2'nin başındaki silah seçiminde Infra Sight'ı seçin. Böylece komandolarla halkı ayırt edebilirsiniz. Level 3'te ise şapkayı seçin. Bu takdirde işçilerin attığı aletler sizi yaralamaz. İstanbul'dan İbrahim Öztop arkadaşımız bize aşağıdaki ipuçlarını göndermiş. Kendisine teşekkür ediyoruz.
Emlyn Hughes Int. Soccer 1. Maç başlamadan evvel ayarlamaları yaparken Müzikten başınız ağrırsa, RUN/STOP tuşu ile müziği kapatabilirsiniz. 2. Maç sırasında RUN/STOP tuşuna basılırsa oyun tekrar ayarlama bölümüne döner. 3. Maç sırasında Commodore tuşuna basılırsa oyun durur. 4. Maç başladığında, bittiğinde, gol olduğunda yukarı bakan ok tuşuna basarak oyuncuların yerlerine geçmelerini beklemeyiz. 5. Maç sırasında RESTORE tuşuna basılırsa maç başa döner, İstanbul'dan Burak Özdoğan arkadaşımız bize aşağıdaki ipuçlarını göndermiş. Kendisine teşekkür ediyoruz.
a