ASSEMBLER-4
Geçen sayıda değinmeye başladığımız 16 Bit işlemler oldukça başımızı ağrıtmıştı. Şimdi isterseniz biraz bu sayı karmaşasından uzaklaşalım ve basit bir Assembler prog- Tamını incelemeye başlayalım. Yalnız burada yeni bir komut karşımıza çıkmakta: BNE “Branch if Not Egual zero” veya diğer bir deyişle “eğer sıfır değilse dallan” bu komutun kısa bir açıklamasıdır. Burada sadece statü registerindeki Z-göstergesi (Bu göstergeyi INX, DER ... komutlarını incelerken detaylı olarak ele almıştık) ““0” değerini almışsa bir dallanma yani istenen bir adrese sıçrama gerçekleşir. Aşağıda göreceğiniz programın akış diyagramı Resim 1'de gösterilmiştir. 1500 LDX # $FF 1502 LDY # $FF 1504 DEY 1505 BNE $1504 1507 DEX 1508 BNE $1502 1S0A BRK Programda ilk olarak X ve Y registerlerine başlangıç değerleri yüklenir. Bunu takip eden satırdaki DEY komutu ise Y registerindeki başlangıç değerini bir indirerek $FE olmasını sağlar. Daha sonra bilgisayar BNE komutu ile karşılaştığı için statü Şer, Z göstergesine (Sıfır göstergesine) bakar. İlk etap sonunda doğal olarak burada sıfır değeri yer almayacağı için (Y registe-
Komut Adresleme Byte Kod Desimal Süre Etkilediği Yöntemi Sayısı Flaglar INX Sihir 1 22 2 NZ INY Sihir 1 200 2 NZ INC Mutlak 3 EE 238 6 NZ DEX Sihir 1 CA 202 2 NZ DEY Sihir 1 88 198 2 NZ DEC Mutlak 3 CE 206 6 NZ SED Sihir 1 F8 248 2 - CLD Sihir 1 D8 216 2 -
ANIL GÜL ri sıfırdan farklı olduğu için değeri 1'dir) program tekrar $1504 adresine döner. Burada Y registeri tekrar | azaltılır ve tekrar BNE ile 0 değerine ulaşıp ulaşmadığı kontrol edilir. Bu işlemler tam 255 defa tekrarlandıktan sonra Z göstergesi O değerini alacaktır ve dolayısıyla program bir sonraki satıra atlama imkânını bulacaktır. Bir sonraki satırda ise bu sefer DEX ile X registeri | azaltılacak ve BNE ile sıfır değerini alıp almadığı kontrol edilecektir. İlk kontrolde X registeri sıfır olamayacağı için program tekrar $1502'ye dönecektir. Bu şekilde yukarıda 255 defa yapılan azaltma işlemi tekrar yapılacak, fakat X registeri yine sıfır olmadığı için yukarıdaki döngü tam 255 defa tekrarlanacaktır. Sonuçta dış döngü 255 defa, iç döngü ise 65025 defa yapılacaktır. Yukarıda incelediğimiz programı yazarken bilgisayarın, BNE $1504 komutundan sonraki adres olarak $1508 yerine $1507 vermiş olması herhalde dikkatinizi çekmiştir. İlk bakışta BNE üç baytlık bir komut gibi gözükmektedir, fakat hafızada sadece iki bayt işgal etmiştir. Bu Branch komutlarının özel adresleme sisteminden kaynaklanmaktadır. “Relatif adresleme” olarak adlandırılan bu sistemi daha sonra diğer Branch komutları ile beraber ele alacağız. Her ne kadar makine dili çok çok hızlı işlese de G 1500 ile örnek programımızı çalıştırdığımızda registerler gösterilene dek bir miktar zaman geçecektir. Eğer daha uzun gecikmelere ihtiyaç duyulursa DEC komutu kullanılarak bir döngü daha ilave edilebilir.
Program
Yavaşlatma
SFF-X-Reg | LDX FF
| FE
DEY
â
BNE 1504
Negatif
DEX
BNE 1502
Negatif
en
Resim 2'de son öğrendiğimiz komutlarla ilgili bazı gerekli bilgiler yer almaktadır. Burada yine komutlar için harcanan süre çevrim sayısı (cycle) birim alınarak verilmiştir. Bu değerlerden faydalanarak yazdığınız programdaki bekleme sürelerini isteğiniz doğrultusunda belirleyebilirsiniz. Bu bekleme sürelerinde bilgisayarımız programın işleyişini yavaşlatmaktan başka bir iş yapmaz fakat bu oldukça önemli bir unsurdur. Örneğin bir kelime işlem programı düşünün. Eğer bu programda tüm metinler bir anda ekrana gelip giderse hiçbir işe yaramaz. Dolayısıyla benzeri durumlarda makine dilinin işleyişini yavaşlatmak son derece önemlidir. Yalnız geciktirme programlarının oldukça çeşidi vardır. Bunlara yine daha sonra zamanı geldiğinde değineceğiz.
Carry ve Overflow:
Şu ana dek bilgisayarımızın tam sayıları nasıl sakladığını öğrendik ve buna bağlı olarak da aritmetik işlemlerinde kullanılan 9 yeni komut ile tanıştık. İsterseniz kısa bir hatırlatma yapalım: Tam sayılar C-64 tarafından ikinci dereceden karşılıkları ile algılanmaktadır. 8-Bit bir sayının 7. Bit'i o sayının önündeki işareti belirtmektedir. Eğer bu Bit “0” ise bu sayı her zaman kullandığımız normal bir ikilik sayıdır. Diğer durumda ise, yani 7. Bit “1” ise elimizde negatif bir sayının ikinci dereceden karşılığı var demektir. 16 Bit'lik (2 Bayt) sayılar kullanırken ise 15. Bit işaret göstergesi olarak kullanılır. Bu sayılarla işlem yaptığımız bazen yanlış sonuç çıktığını daha önce belirtmiştik. Bu sorunu çözerken statü registerindeki iki bayrağı (göstergeyi) daha kullanacağız: Carry ve V-bayrağı. “To Carry” dilimizde “taşımak” anlamına gelmektedir. Register göstergesinde bu bayrak kısaca “C” ile gösterilir. Şimdi, her şey iyi de burada taşınan nedir, diye sorabilirsiniz. Bu soruyu en iyisi bir örnek ile cevaplayalım. Örneğimizde normal ikilik sayılarla (İşaret Bit'ine bakmadan) işlem yapacağız. 128 ile 130'u toplayalım:
128 1000 0000 +130 1000 0010
258 (1)0000 0010
Sonuç olarak elde ettiğimiz 258 tastamam doğrudur fakat 8 Bit'e sığmamaktadır. Burada artan Bit özel olarak bu iş için ayrılmış bir yere, yani Carry Bit'ine taşınmıştır. Eğer C-64'de aritmetik işlemlerinde bu tür bir artan olursa Carry Bit'i olur. (Resim 3) Bazı durumlarda bu Carry Bit'ini göz ardı edebiliriz, fakat genellikle sonraki işlemlerde bu Bit'in kullanılması gerekir. Yine burada da bazı özel durumlar için hata söz konusudur. Bilgisayarımız “1” değerini aldığında hemen işe negatif sayıları karıştırmakta ve yanlış sonuçlara ulaşmaktadır. Bunu aşağıdaki örneği incelerseniz daha iyi anlayabilirsiniz:
64 0100 0000
— 0000
(126) - 1000 0010
Görüldüğü gibi sonuç yanlıştır. 6. Bit'leri toplarken 7. Bit “1” olmuştur. İkinci dereceden karşılıklarla çalışırken bu negatif bir sayıyı göstereceği için işlem hatalı olacaktır. Bu gibi durumlarda imdadımıza statü registerindeki V-bayrağı (göstergesi) yetişir ve değerini alır. Kısaca şöyle diyebiliriz: Eğer yukarıdaki örnekte olduğu gibi istenmeyen bir zamanda yanlışlıkla 6.Bit'ten 7.Bit'e bir taşma meydana gelirse bu bayrak “1” olur. Bu işin aslı esasında daha karışıktır, fakat bu kadar bilgi bizim için yeterlidir. Görüldüğü gibi makine dilinde hemen hemen tüm operasyonlardan önce olabilecek hatalara karşı önlem alınmalıdır. Aslında bu bilgisayar kullanırken hiç alışık olmadığımız bir unsurdur, fakat ileride bu öğrendiklerimizin pratik uygulamasına geçtiğimizde bunların şimdiki kadar başımızı ağrıtmayacağını göreceğiz. Yukarıdaki işlemde 6. Bit'ten 7. Bit'e bir taşma meydana gelirse 16-Bit sayılar kullanırsak problem kendi kendine çözülür:
64 00000000 01000000
*66 00000000 01000010
130 00000000 10000010
Bildiğimiz gibi 16 Bit sayılarda 15. Bit işaret göstergesi olarak kullanılır. Şimdi diğer bir durumu inceleyelim.
-125 1000 0011 -4 1100 0000 (469) (1)0100 0011
Burada da yanlış bir sonuçla karşılaştık. Yine yanlışlıkla işaret göstergesi değişikliğe uğradı. Yalnız bu sefer değişiklik 6. Bit yerine Carry'den kaynaklanmakta. Carry olduğu için 7. Bit bu sefer “0” olmuştur. Bu problemi de 16-Bit sayıları kullanırsanız kolayca çözebilirsiniz. Şimdi yine öğrendiklerimizi kısaca toplayalım: Eğer 8- Bit işlemlerde ikinci dereceden karşılıklarla gösterilebilinen alanın (-127 ile + 127 arası) dışına çıkılırsa işaret Bit'i (7.Bit) değişmekte ve yanlış sonuç vermektedir. Bu durumda hemen statü registerinde V-bayrağı (göstergesi) üzerinde bir kırmızı lamba yanar ve bize 16-Bit sayılar kullanmamızı söyler. Şimdi gelelim Carry Bit'inin unutulabileceği durumlara. İkinci dereceden karşılıkları ile yapılan tüm 8-Bit aritmetik işlemlerinde bu Bit göz ardı edilebilir. Bunu iki örnekte gösterelim:
*4 0000 0100
— — 1110
*2 (1)000 000
Carry Bit'ine bakılmazsa sonuç doğrudur.
— 1111 1010
*1111 1110
— 1000
Burada da yine Carry Bit'i ihmal edilirse sonuç doğru çıkar. Artık C-64'ün tam sayıları nasıl işlediğini öğrendik. Şimdi bu sayı karmaşasını yine bir yana bırakarak pratik uygulamalara geçelim.
Bilgisayar Hesaplıyor: ADC, CLC
ADC, bizim 6510 mikroişlemciden öğreneceğimiz ilk aritmetik komutudur. Anlamı “Add with Carry”, yani “Carry ile birlikte topla”'dır. Şimdi elimizde iki tane 8- Bit sayı olsun: SAYI1 ve SAYI2. Yalnız bu sayılar fazla büyük değil ve toplamlarında herhangi bir taşma beklenmiyor. Akümülatöre yükleyelim:
LDA #$SAYII
Ve bunu izleyen satır:
ADC # $SAYI2
Bu komutlarla karşılaşan mikroişlemci iki sayıyı toplar ve sonucu akümülatöre yazar. Sonucu görmek istediğinizde akümülatörün değerini STA ile herhangi bir adrese yazdırırız. Yalnız Assembler programlarında Carry'i etkileyen birçok işlem vardır. Bu nedenle hiçbir zaman Carry'nin 1 veya 0 olduğundan emin olamayız. ADC komutu hesap işlemine Carry'i de dahil ettiği için bunun silinmiş olması gerekir. 6510 makine dilinde bu işi yapan CLC komutu mevcuttur. SAYI1 = 12 ve SAYI2 = 7 alınırsa programımız şu şekilde olur:
1200 CLC
1201 LDA
1203 $07
1205 STA 1500
İlk satırımızda yer alan CLC bir baytlık komuttur ve sadece Carry'yi etkilemektedir. ADC ise burada kullanılan şekliyle iki baytlık bir komuttur ve dolaysız olarak adreslenmiştir. Daha önce de belirttiğimiz gibi ADC birkaç göstergeyi (bayrağı) etkileyebilir. Bunların başında Carry ve V-bayrağı gelir, fakat 7. Bit'in 1 değerini almasıyla ortaya negatif bir sayı çıkacağı için N-bayrağı ve $FF değeri aşıldığında da Z-bayrağı değişikliğe uğrayabilir.
$1201 numaralı satırı aşağıdaki şekilde değiştirdiğimizde programımız daha ilginç hale gelir:
1201 LDA $1400
Görüldüğü gibi burada mutlak adresleme yöntemini kullandık ve LDA 3 baytlık bir komuta dönüştü. Dolayısıyla programın kalan kısmı 1 bayt ileriye kaydırılacaktır. Bu son hali ile programımız $1400 adresinin içerdiği değere ADC komutunun ardındaki sayıyı ekleyecektir. LDA komutunda yaptığımız değişikliğin aynını ADC için de yapabiliriz. ADC'nin de mutlak adreslenmesi ile örneğin $1300 adresindeki değerin $1400'dekine eklenmesini sağlayabiliriz. Bu işlemi gerçekleştiren program şu şekildedir:
1200 CLC
1201 LDA $1400
1204 ADC $1300
1207 STA $1500
ADC mutlak olarak adreslendiği için 3 bayt kaplamıştır. Bu türden 8-Bit işlemler oldukça sık kullanılır: Örneğin bir döngüde ADC kullanılarak adım aralığı istenilen şekilde belirlenebilir. Pratikte 16-Bit hesap işlemlerinin çok önemli yeri vardır. Bildiğiniz gibi 16-Bit'lik bir sayı yüksek bayt ve alçak bayt olmak üzere iki parçaya ayrılır. İnceleyeceğimiz örnekte sadece 16 Bit'lik iki sayı toplanacak. SAYI1'in alçak baytı $1300'e, yüksek baytı ise $1301'e yerleştirilmelidir. Aynı şekilde SAYI2 ise $1400 ve $1401 adreslerinde yer almaktadır. Programımızın başında her zaman kullanmamız gereken hazırlık komutları yer almaktadır.
1200 CLD
1201 CLD
Önce her iki sayının da alçak baytlarını toplayalım:
1202 LDA $1300
1205 ADC $1400
1208 STA $1500
Burada 15. Bit işareti belirlediği için bu tür bir hata söz konusu değildir. Fakat birçok durumda iki sayının toplamı 255'ten ($FF) büyük olabilir. Eğer bu son hal gerçekleşirse Carry değerini alır. Şimdi yüksek baytları toplayalım: 120B LDA $1301 120E ADC $1401 1211 STA $1501
Carry Bit'inde ne olursa olsun yukarıdaki toplam işleminde beraber toplanacaktır. İşlemizin sonucu $1500
(Alçak Bayt) ve $1501'de (Yüksek Bayt) yer almaktadır. Örnek olarak 2176 (0000 1000 1000 0000) ve 1009 (0000 0011 1111 0001) sayılarını toplayalım. Burada kullanacağımız bellek birimleri şu şekilde düzenlenmelidir:
1300 1000 0000 Alçak Bayt 1301 0000 1000 Yüksek Bayt 1400 1111 0001 Alçak Bayt (SAYI2) 1401 000 001 Yüksek Bayt
İlk önce alçak baytları toplayalım:
1300 1000 0000 1400 1111 0001 Carry 0 1500 0001 Carry 1 Şimdi de yüksek baytları: 1301 0000 1000 1401 0000 0011 Carry 1 1501 0000 1100
Böylelikle sonuç olan 3185 (0000 1100 0111 0001) alçak ve yüksek bayt olarak $1500 ve $1501 adreslerinde yer alacaktır. Yalnız burada Carry'nin değeri “1”'dir. Bu nedenle yeni bir işleme başlamadan önce CLC ile Carry temizlenmelidir. Toplam hakkında bilmemiz gereken her şey yukarıda anlatılanlardan ibaret. Gelecek sayıda makine dilinde çıkartmanın nasıl yapıldığını göreceğiz. Hoşça kalın...
Yalnızca bir oyun makinesinin çok ötesinde potansiyele sahip. Değerlendirmek de biz kullanıcılara düşüyor. Bunun için de klavyeyi ve tuşların fonksiyonlarını iyi tanımamız gerekiyor.
“| PERSONAL COMPUTER
Birçoklarının gözünde C-64 bir oyun makinesinden öte bir şey değil. Ama oyun oynamak için bile olsa, komutları yükleyip çalıştırmanız gerekiyor ve birçok oyunda klavye aracılığıyla bazı direktifler vermeniz gerekiyor. Onun için burada klavyedeki 66 tuşu ve neler yapabildiklerini inceleyeceğiz. Klavyeye ilk baktığınızda, her tuşun üzerinde birden fazla sembol olduğu dikkatinizi çekecek. Bazıları, harf tuşları, üzerinde üçer sembol vardır. Bilgisayarı açtığınızda, esas sembolü yalnızca o tuşa basarak, sağdaki sembolü o tuşla birlikte shift tuşuna basarak ve soldaki sembolü de o tuşla birlikte üzerinde CBM logosu olan tuşa basarak elde edebilirsiniz. Eğer CBM harflerini başka hiçbir tuşa basmadan yazar ve shift tuşunu basılı tutup logo tuşuna da basarsanız, küçük harfle yazmaya başlayacaktır. CBM o zaman cbm olur. Küçük harf modunda harfleri ancak tuşla birlikte shift tuşuna basarak büyük yazabiliriz. Bu modda tuşun sağ tarafındaki sembolleri artık yazamayız. Büyük harf modu yerine, büyük/küçük harf moduna geçiş bir program içinde, POKE 53272,23 ya da PRINT CHR$(14) komutu ile sağlanabilir. Yalnızca büyük harf moduna dönmek istiyorsak, POKE 53272,21 ya da PRINT CHR$(142) yazmamız gerekir. Ama insanların shift ile birlikte logo tuşuna basıp yalnızca büyük harf moduna dönmelerini nasıl önleyeceğiz diye sorabilirsiniz. Bu hastalığın ilacı da PRINT CHR$(8) komutudur. Bu POKE ve PRINT komutlarını girebilmek için, bilgisayarın verilen direktifi kabul edip uygulamasını sağlayacak RETURN tuşuna basmalıyız. Bu RETURN tuşu klavyedeki belki de en önemli tuştur. O olmaksızın, bilgisayarın bir Basic direktifi almasını sağlayamayız. Klavye buffer'ına bir RETURN direktifi koymak yeterli olacaktır diye düşünebilirsiniz. Peki bilgisayara bunu yapmasını nasıl söyleyeceğiz? RETURN tuşuna basarak ya da aynı şeyi yapmak üzere bir program satırı girerek. Peki bir program satırı girmenin tek yolu nedir? Evet, yine RETURN tuşuna basmak. Üzerinde CONTROL yazan diğer bir tuş da dikkatinizi çekmiş olmalı. İlk bakışta bu tuş göze daha önemli gibi görünüyor ama komutları girmekten farklı işlevleri var. Bunlardan birisi klavye ile yazdığımız harflerin renklerini değiştirmek. CONTROL ve 1'e basarsak harflerin rengi siyah, CONTROL ve 2'ye basarsak kırmızı olacaktır. Sayı tuşlarında belirtilenlerin dışındaki renkler logo tuşuyla rakamlara basarak elde edilebilir. Bu renkleri daha iyi görmek için zıt print modunu kullanmak isteyebiliriz. Bunda karakteri oluşturan küçük noktaların açık, arka planı oluşturanların kapalı olması yerine tam tersi gerçekleşiyor. Bu değişikliği yapmanın çeşitli yolları var. Yollardan birisi CONTROL tuşuna basılı tutup 9 rakamına basmaktır. Sonra bir de space bar'a basarsanız renk değişikliği iyice bariz olur. Bu moddan çıkmak isterseniz, CONTROL'ü basılı tutup 0 rakamına basabilirsiniz. Aynı işlemleri program içinden yapmak isterseniz, bu moda geçmek için PRINT CHR$(18) ve çıkmak için de PRINT CHR$(146) komutlarını kullanmanız gerekir. CONTROL Tuşu daha başka neler yapar? Bir program listesi ekranda çıkarken, ona basarak çıkış hızını düşürebilirsiniz. Ayrıca bir programdaki varlığı 653 sayılı bellek kütüğünün içeriklerine bakarak anlaşılabilir. C-64'te tuşları depolamakta kullanılan iki ana bellek kütüğü vardır. Bunlar 653 ve 197. 197'ye ayrıntılı olarak daha sonra eğileceğiz ama 653'e dönersek şöyle bir program satırı yazabiliriz:
10 PEEK(653);: GOTO 10
Run edildiğinde, 0 sayısı tekrar tekrar görünecektir. Bu da demektir ki, bu kütüğün tanıdığı tuşlardan hiçbirisine o sırada basılmamaktadır. Ama shift tuşuna basarsanız çıkan sayı 1, logo tuşuna basarsanız 2 ve CONTROL tuşuna basarsanız 4 olacaktır. Bu tuşların değişik kombinasyonlarını deneyip ne olacağına bakabilirsiniz. Sağ taraftaki RESTORE tuşu bazen CONTROL tuşu ile birlikte bilgisayarı reset etmekten başka pek bir işe yaramaz. Ayrıca bunu yapmasını program içinden önlemenin de bir yolu vardır. POKE 808,225 bu işi halledecektir ama onu basit bir programın içinden yapıyorsanız, durumu düzeltmek için POKE 808,225 kullanmayı unutmayın. Programdan çıkış için bir yol hazırlamayı unutmuş olabilirsiniz ve o zaman da tek çareniz bilgisayarı açıp kapamak olacaktır. Programlara dalmak için genellikle RUN/STOP tuşu kullanılır ama başka kullanımları da vardır. Bantta gelen ve yüklemek için shift ve RUN/STOP'a basmanız gereken programları biliyorsunuzdur. Bu yol ne yazık ki disketler için geçerli değil. Kütük 197'den daha önce söz etmiştik. Basılan değişen tuşları saptamak için 653'e benzer bir şekilde kullanılabilir. Daha önce sözünü ettiğimiz program satırında, 653 yerini 197'ye bırakırsa, programı run ettiğinizde 64 sayısının sürekli olarak belirdiğini göreceksiniz. Değişik tuşlara bastıkça sayı da değişecektir ve artık klavyenin sağ tarafındaki fonksiyon tuşlarını kullanmaya başlayabiliriz. F1 tuşuna basınca 4 değeri elde edilecektir. Tüm fonksiyon tuşları bu şekilde saptanabilir, ama her zaman olduğu gibi program içinden yapmanın yolu da vardır. Bu amaçla GET komutunu kullanmamız gerekecektir. Örneğin:
10 GET AS: IF ASİ THEN 10
Diğer fonksiyon tuşları (diğer dört değeri bulmak için shift kullanın, logo tuşu hiçbir şeyi değiştirmez) kendi CHR$ sayılarına sahiptirler. Sayılar, yukarıda verilen program satırı biraz değiştirilerek ve basılan tuşun ASCII değerini bulmak için bir değişken kullanılarak bulunabilir. Bu sayı yazılabilir ve işleyen bir programda tüm fonksiyon tuşları kolayca saptanabilir. Şimdi yeniden klavye buffer'larına dönüyoruz. Bu buffer denilen şey de neyin nesi? Bilgisayara bir şey yazdığınızda, daha sonra kullanılmak üzere bir yerde depolanması gerekir. C-64 ekrana bizim baktığımız gibi bakamaz. Ekran bellek mapped olsa da (yani ekranda görünen her şey bilgisayarın belleğinde bir yere kaydedilse de) 64'ün işletim sistemi her RETURN'e bastığınızda ve bir komut ya da program satırı girdiğinizde ekranı taramaz. Onun yerine kendi klavye buffer'ına bakar. Önde bir sayı varsa, ona program satırı muamelesi yapar ve hata kontrolü yapmaya falan kalkışmaz. Hata kontrolü C-64'ün tasarımcıları tarafından düşünülseydi fena olmazdı gibi geliyor bana. Basic programcılarını bir sürü uğraştan kurtarırdı bu. Eğer başlangıçta bir sayı yoksa, bilgisayar yazdığınızın hemen uygulanacak bir emir (statement) olduğunu düşünür ve değişik ROM rutinlerini kullanarak yapmaya ve size bir hata yapıp yapmadığınızı söylemeye çalışır. Örneğin basit bir sentaks hatası gibi. Yoksa komutu yerine getirir. Bu iç buffer'a direkt olarak ulaşmak pek mümkün değil ve tasarımcılar Allah'tan oynayabileceğimiz bir diğerini koymuşlar. Çok büyük değil, ama bir şeyler depolanıp ilginç sonuçlar alınabilir. Bunu yapmak için, bellekte nerede olduğunu bilmemiz gerekir. 631 sayılı yerde başlar ve yukarıya doğru devam eder. Nerede sona erdiğini bulmayı size bırakıyoruz. Bulabilmek için, bilgisayara bu buffer'a hangi cinsten kaç karakter koyduğumuzu söylememiz gerekir ve bu amaçla da bellek yeri 198'i kullanırız. Daha önce onu hangi tuşun basıldığını anlamak için kullanmıştık. Bir programda uygulamasını görmek istiyorsanız, aşağıdaki rutin herhangi bir nedenle programı return etmek istediğinizde işinize yarayacaktır: 1000 PRINT 1010 POKE 631,13:POKE 198,1:END
Bu teknik için başka birçok uygulama alanı mevcut. Örneğin bir programı disketten yükleyebilir ve run edebilirsiniz. Bunun için klavye buffer'ında iki kartuş return'ü ve 198'e 2 ile POKE etmek gerekiyor. Başlangıçta POKE 631,13:POKE 632,13 kullanın. Doğallıkla, önceden ekrandaki her şeyin pozisyonunu da hesaplamanız gerekiyor! Görüldüğü gibi, C-64 yalnızca bir oyun makinesinin çok ötesinde potansiyele sahip. Değerlendirmek de biz kullanıcılara düşüyor!
İşte Psygnosis firması yine yapacağını yaptı ve sizi bilgisayarın başına bağlayacak yeni bir oyun daha çıkardı, The Shadow of the Beast (İblisin gölgesi). Oyunda ilginç görünüşlü bir yaratığı canlandırıyoruz. Amacımız iblisin etkisi altında bulunan bölgeden sağ olarak kurtulmak. Başlangıçta kendimizi ormanlık bir bölgede buluyoruz. İlk önce sola doğru ilerlemeliyiz. Fakat bu sırada dikkatli olun, çünkü arkamızdan ve önümüzden kayalar ve çeşitli yaratıklar gelebilir. Bir süre ilerledikten sonra bir ağacın gövdesine yerleştirilmiş bir kapı göreceğiz. Buradan içeriye girin. Bu arada meraklılar için şunu hemen söylemeliyim; eğer o kapıdan içeri girmez ve sola doğru gitmeye devam ederseniz, kısa bir süre sonra aniden önünüzde beliren bir çukurun içine düşerek ölürsünüz. Ağacın içindeki kapıdan içeri girince kendinizi bambaşka bir ortamda bulacaksınız. Sağa doğru ilerleyerek (geldiğiniz merdivenden uzaklaşırken dikkat edin) rastlayacağınız ilk merdivenden aşağı inin. Şimdi sola doğru ilerleyin ve tekrar aşağı. Artık tekrar sağa doğru ilerlemeye başlayın. Yalnızca dikkat edin birazdan karşınıza boynuzlu dev karıncalar çıkacak. Onları da aştıktan sonra aşağı inin. Şu anda karşınızda iki seçenek var. Solda kısa ama tehlikeli bir yol, sağda ise uzun ama fazla tehlikeli olmayan bir yol var. Sola doğru ilerleyin. Biraz-
Sinan EREL dan bir köprüye rastlayacaksınız, hiç yavaşlamadan geçin çünkü eğer yavaşlarsanız yukarıdan çıkacak kökleri size çarpabilir. Köprünün bitiminde bir merdivene rastlayacaksınız. Hemen buradan aşağı inin ve sağa doğru ilerleyin. On tane kılıçlı muhafıza rastlayacaksınız. Bunları yumruklarınızla öldürerek merdivene ulaşın ve tekrar aşağı inin. Şimdi hemen sağa saparak aşağı inin ve biraz daha sağa gidip tekrar aşağı inin. Eğer sağdaki uzun yolu seçseydik yine buraya ulaşacaktık. Şimdi sola doğru biraz tekrar aşağı inin. Bu merdiven iki farklı zemine iniyor ve biz bu iki yere de gitmeliyiz. Üsttekinde bir anahtar, alttakinde ise yedek güç var. Eğer yeterli gücünüz varsa ve kendinize güveniyorsanız önce üstteki bölüme inip sola doğru (şayet güvenmiyorsanız ilk önce aşağı inerek güç şişeciğini aldıktan sonra buraya gelin) ilerleyin. Bu arada yukarıda damlayan asit damlalarına ve karşınıza çıkan ondört tane baltalı muhafıza dikkat edin. Bunları geçince minik bir çukurun üstünden atlayarak anahtarı alın. Şimdi demin üstünden atladığınız çukura düşün, böylece alt kata inmiş olacaksınız. Sağa doğru giderek, güç şişeciğini alarak merdivene ulaşıp yukarı çıkın. Burada aldığınız güç iksiri size 12 vurulmalık enerji kazandıracak. Merdivenin bitiminden tekrar (biraz sağa giderek) yukarı çıkın ve sola giderek aşağı inin. Şimdi sola doğru ilerleyin ve bu arada sizi bekleyen dört baltalı muhafıza da dikkat edin. Bunları aştıktan sonra elinde bir cam küreyi yukarıya doğru atıp tutan ve ağzından alev püskürten kanatlı dev bir yaratığa rastlayacaksınız. Hemen elinin hizasına gelerek eğilin ve alevden sakınarak cam küreye tam sekiz yumruk atın. Böylece küreyi patlatarak büyük bir ateş gücüne sahip olacaksınız. Şimdi sağa doğru ilerleyerek merdivenin yanındaki transport'ıra gelin ve kendinizi yukarıya nakledin. Şimdi tekrar merdivenlerden yukarıya çıkarak sağa doğru ilerleyin. Birazdan disketiniz bir şeyler yükleyecek ve karşınıza korkunç bir büyüklükte yarı mekanik bir yaratık çıkacak. Bu yaratığın size dokunmasına izin vermeden yirmi kez ateş edebilirseniz, onu yok edeceksiniz. Artık tekrar sağa doğru ilerleyin. Evet umarım buraya kadar gelirken reflekslerinizin ihanetine uğramamışsınızdır, çünkü asıl işimiz bundan sonra başlıyor. Sağa doğru ilerlemeye devam edin, birazdan karşınıza ellerinde tırmığa benzer silahlar olan muhafızlar çıkacak dikkat edin. Bu onsekiz tane muhafızı geçtikten sonra karşınıza çıkan ilk merdivenden yukarıya çıkın. Şimdi sola doğru koşun, yalnız bu arada karşınıza çıkacak üç tane kılıçlı muhafıza dikkat edin. Yolun sonunda üstünde 'don't touch (dokunma)' yazan bir kol göreceksiniz. Hemen bu kolu aşağı çekin. Şimdi geri dönün ve ilk merdivenden yukarıya çıkın. Artık sola doğru. Dikkatli olun birazdan yukarı aşağı zıplayan gözler göreceksiniz. Bunların altından usulca geçerken arada bir karşıdan uçarak gelecek kanatlı yaratıklara da dikkat edin. Bu yolun sonunda ulaşacağınız anahtarı hemen alarak sağa doğru koşmaya başlayın. Yukarı çıktığınız merdivene gelince hemen aşağı inmeye kalkmayın, sağa doğru devam edin. Üzerinde '(yiyecek)' yazan varile gelince onu yumruklayın ve dört darbe dayanıklılığı daha kazanın. Şimdi sola giderek geldiğiniz merdivenden aşağı inin ve tekrar sağa giderek yine aşağı inin. Artık yukarıya çıkmaya başladığımız yere ulaştık. Sağa doğru gidin ve merdivenden yukarı çıkın, bu sırada yukarıda gezinen salyangoza da dikkat edin. Şimdi aşağıya 29 inin ve sola doğru ilerleyin. Zemine ulaşınca sola doğru koşun. Birazdan yukarıdan düşen ve zıplayarak ilerleyen kanatlı yaratıklara ve yerden çıkarak ağızlarından alev püskürten ejderlere rastlayacaksınız. Gerekli yerlerde eğilerek durduktan sonra bunları atlatacaksınız. Bu kez karşınıza periyodik olarak zıplayan toplar çıkacak. Bunların altından da belirli bir hızla ilerleyerek geçebilirsiniz. Yalnız karşıdan uçarak gelen yaratıklara karşı dikkatli olun. Yolun sonuna gelince merdivenlerden aşağı inin. Şimdi sağa gidip tekrar aşağı inin. Bu sırada yerde sürünerek ilerleyen yaratığa da dikkat edin. Aşağı inince sağa doğru gidin. Burada birkaç dev arıyla ve dönüşümlü olarak üç kez bir miktar kurukafalarıyla karşılaşacaksınız, dikkatli olun. Bu yolun sonunda ise oniki isabet dayanıklılığı sizi bekliyor. Bunu da alarak aşağı inin ve sağa giderek tekrar aşağı inin. Her iki aşağı inişinizde de solucana benzer bir yaratık göreceksiniz, onları öldürmeyi de ihmal etmeyin. Şimdi sola doğru ilerleyin. Bu yol boyunca yukarıdan uçarken üzerinize ateş topçukları bırakan dev arılara rastlayacaksınız. Aynı zamanda yerden de alev dalgaları gelecek, bunlara karşı tetikte olun. Yolun sonuna gelince yine aşağı (burada sizi bekleyen bir yaratık var dikkat) inin ve biraz sola giderek tekrar aşağı inin. Şimdi sola doğru koşarak yolun sonundaki merdivenden yukarı çıkın. Biraz daha sola gidip hemen aşağı inin. Artık sola doğru ilerleyin (yolda karşınıza hayaletler çıkacak ona göre hazırlıklı olun). Birazdan bir merdivene ulaşacaksınız, hemen yukarı doğru çıkın ve sağa ilerleyerek orada sizi bekleyen 'power (güç yumruğu)' alın. Eğer yukarıdaki (üzerinde dokunma yazan) kolu indirmeseydik bu güç yumruğunu almamız oldukça güçleşecekti. Güç yumruğunu aldıktan sonra geldiğiniz merdivenden iki kat (ilk katta bir hayalet yine sizi bekliyor) aşağı inerek sağa doğru koşmaya başlayın. Bu arada bir hayaleti daha geçtikten sonra beş tane roket türbininin altından geçeceğiz. Karşınıza çıkan merdivene aldırmayarak sağa doğru ilerlemeye devam edin. Bir süre sonra önümüze yukarıdan ve aşağıdan dev ejder kafaları çıkacak, dikkatli olun isabet almamaya çalışın. Birazdan karşımıza alev püskürten kırmızı renkli dev bir yaratık çıkacak. Aynı zamanda aralıklı olarak yerin altından çıkan taştan yapılmış dev bir kazık da işimizi iyice zorlaştıracak. Yaratığın ateşinden ve taş kazıktan sakınarak yaratığı tam yirmi kez yumruklamalıyız. Eğer bunu başarabilirseniz yaratık yok olacak ve yolunuz açılacak. Doğruca sağa giderek karşınızda beliren kuleye benzer yerden içeriye girin. Şimdi kendinizi yukarıya doğru uzanan merdivenlerde bulacaksınız. Yukarıya doğru devam edin, birazdan yol bitecek ve ekran değişecek. İşte kendinizi tekrar ormanda buldunuz ve böylece oyunun üçte birine yakın bir bölümünü de geride bırakmış oldunuz. Buraya kadar uğraşmamızın tek sebebi kuyudan bir anahtarla yeryüzüne çıkabilmekti. Aklıma gelmişken eğer oyun sırasında herhangi bir şey için bilgisayarınızın başından ayrılmanız gerekirse P tuşuyla oyunu durdurabilirsiniz. Şimdi karşınızda bir şatoya kadar uzanan bir yol var. Bu yol boyunca karşımıza birçok engeller çıkacak, fakat bunların hiçbiri bizi yolumuzdan saptıracak nitelikte değil. Hedefimize giden tek yol sağ tarafta. Bu yolda ilerlerken rastlayacağınız taş sütunları yok edin her birinde ekstra güç saklı. Biraz uzun olan bu yolu aşabilirseniz bir şatoya rastlayacaksınız. Fakat hemen kapısından içeri girmeyin. Bir daha sağa doğru giderek karşınız çıkan meşaleyi almazsanız, şatonun içinde hiçbir şey göremezsiniz. Şimdi derin bir nefes alın ve şatoya girin. Evet şu anda oyunumuzu yarılamış sayılırız. Şimdi karşımızda sağa veya sola gidebileceğimiz iki yön var. Önce sola doğru ve karşınıza çıkan ilk merdivenden yukarı çıkın. Hemen sağa doğru ilerleyin. Karşınıza yerden zıplayarak ilerleyen yaratıklarla bir minijetle uçan muhafızlar çıkacak. Muhafızlar yere bir nesne bırakacak ve bu nesne bir süre sonra zemine elektrik dalgaları yayarak kaybolacak. Yolun sonuna gelince aşağı inerek biraz sağa gidin
(uçan bir yılana dikkat edin) ve tekrar yukarı çıkın. En tepeye ulaştığınız zaman sola doğru ilerleyerek aşağı atlayın ve sola doğru koşmaya devam edin. Karşınıza sizi yemek isteyen kayalar ve yukarıdan çapraz olarak düşen kılıçlar çıkacak. Biraz sonra ise bir sandığa rastlayacaksınız, buna vurarak güç şişeciğinizi almayı unutmayın. Şişeciği aldıktan sonra ise zıplayan yaratıklar, yerden açılarak size bıçak atılan kapaklar ve yukarıdan düşen damlacıklarla karşılaşacaksınız. Bunları da geçtikten sonra geleceğiniz merdivenden yukarıya çıkın. Şimdi sağa doğru ilerleyin. İki güç sandığına ve bir de içinde bir okçu olan sandığa rastlayacaksınız. Ayrıca çeşitli canavarlarla da karşılaşacaksınız, dikkat edin. Bu yolun sonunda göreceğiniz boru anahtarını andıran aleti alın ve sola doğru gitmeye başlayın. Bu sırada zıplayan yılanlara ve sürünen solucanlara karşı da dikkatli olun. Yolun sonuna gelince hemen aşağıya inmeye başlayın. Kanatlı bir yaratığı da geçtikten sonra rastlayacağınız sandıktan güç şişeciğini alın ve ilerlemeye devam edin. Şimdi aşağıya inin (duvarda gezinen yaratığa dikkat edin) ve sağa giderek aşağıya atlayın. Böylece kendinizi şatoya girdiğiniz kapının oldukça yakınında bulacaksınız. Hemen sola doğru ilerlemeye başlayın. Yukarıdan dev örümceklerin sarktığı bir köprüden geçerek (yerde sürünen solucanlara ve karşıdan yuvarlanarak gelen fıçılara dikkat edin) ilerlemeye devam edin. Şimdi tekrar merdivenlerden aşağı inin ve sağa doğru ilerleyin (uçan yaratıklara, yuvarlanan fıçı ve baltalara dikkat). Birazdan zıplayan başı kopuk devlere ve yine arasıra zıplayan bir topa rastlayacaksınız. Bunları da geçtikten sonra merdivenden aşağı inin ve sola doğru (tavanda gezinen bir yaratık ve yuvarlanan fıçı ve baltalar sizi bekliyor) ilerleyin. Burada bir sandık içinde bir silah bulacaksınız. Bu silahı aldıktan sonra sağa doğru (minik bir arı sürüsü sizi bekliyor) ilerlemeye başlayın. Birazdan bir güç perdesini çalıştıran bir kontrol paneline rastlayacaksınız. Panelin yanına gelip eğilerek ateş ederseniz, yukarıda bulduğunuz alet sayesinde güç perdesini kaldırabilirsiniz. Şimdi tekrar yukarıya çıkın ve sola doğru aşağı atlayın. Aşağıdaki fıçıyı yok ettikten sonra yukarı çıkın. Yine şatoya girdiğimiz kapının yakınına geldik. Sağa doğru ilerlemeye başlayın. Bir süre sonra karşımıza uçan ve zıplayan yaratıklarla yukarıdan açılan ve içinde size balta atan tiplerin bulunduğu kapılara rastlayacaksınız. Karşınıza çıkan ilk merdivenlerden aşağıya inerek sola doğru ilerleyin. Yine birkaç zıplayan yaratıkla bir roket salvosu sizi bekliyor. Yolun sonuna gelince aşağı inerek sağa doğru ilerleyin. Birazdan kendinizi üç başlı dev bir ejderin karşısında bulacaksınız. Bu canavarı da tam onaltı kez vurduktan sonra ilerleyin ve birazdan yerde göreceğiniz kaskı alın. İşte şimdi oyunumuzun tarzı oldukça değişti. Kaskı aldıktan sonra otomatik olarak bir kapıdan geçerek kendimizi sırt jetimizle uçar halde garip bir ortamda buluyoruz. Karşımızda sağa doğru uçarak aşacağımız uzun bir yol var. Bu yol boyunca birçok yaratıklara, güç alanlarına, kayalara, boynuzlara ve güç şişeciklerine rastlayacağız. Eğer bunları sağlimen aşabilirseniz, uçtuğumuz koridordan çıkarak geniş bir alana varacağız. Bu alanın sonunda iki ağızlı ve kuyruğa benzer bir dili olan bir canavar bizi bekliyor. Bu canavarı alttaki ve üstteki kafalarını onar kere olmak üzere yirmi kez vurduktan sonra yok edebilirsiniz. Artık canavarın ardından beliren kapıdan çıkın. Bundan sonra kendimizi şatonun dışında bulacağız. Karşımızda yine uzun bir yol var. Sağa doğru koşmaya devam edin. Bu yol boyunca da karşınıza mezarlıktaki hayaletler, iskelet askerler gibi birçok yaratıklar çıkacaktır. Eğer bunları aşarsak nihayet oyunumuzun son bölümüne ulaşmış olacağız. Şimdi karşımızda kaya yığınına benzer bir kitle bulacağız. İşte tam bu esnada yukarıdan üstümüze aniden elinde tokmağa benzer bir sopa bulunan dev bir el inecek. Bu dev elden sakınarak kitleyi tam yirmi kere yumruklarsak bu son engeli de aşmış olacağız.
Bu son engelin de aşılması ile birlikte oyunu tamamlamış olduk. Birazdan ekrana İblisin gölgesinden başarı ile kaçabildiğimiz için bizi tebrik eden bir mesaj gelecek. İşte böylece zor bir oyunun sonuna gelmiş olduk. Sonuç itibarıyla bütün zorluğuna rağmen gerek grafik ve gerekse müzik olarak oldukça kaliteli ve güzel bir oyun Beast. Arka planlardaki grafikler ve animasyonlar oldukça etkileyici. Değişen tonları ve zengin çeşitliliği ile müzikleri mükemmel. Yalnız oynarken kendinizi arka plandaki grafiklerin akışına fazla kaptırmayın yoksa neye uğradığınızı anlamadan bir isabet alabilirsiniz. Bütün bunlardan başka söylenecek bir şey kaldı mı bilmiyorum ama bu oyunun başına oturmadan önce
FALNLOKS hayatını gökkuşağı avlayarak kazanan bir yumurtanın hikâyesi sizi ilgilendiriyorsa hemen bilgisayar başına geçin. İlginç bir konuya sahip olan RAINBOW CHASER (Gökkuşağı avcısı) tatlı bir Commodore 64 oyunu. Program yüklenince space tuşuna basarak oyun esnasında göreceğimiz şekilleri tanıyabiliriz. Şimdi oyunumuza geçelim. Amacımız sevimli yumurtamızla labirentteki bütün gökkuşaklarını toplayıp sona ulaşmak. Tipik platform oyunlarından olan RAINBOW CHASER'a bazı değişiklikler eklenmiş. Mesela üç yöne birden atılan yıldızlar. Ekranlara geçiş için sınırlar ve kapılar konulmamış. İstediğiniz yerden öteki ekranlara geçebiliyorsunuz. Bulutların
Tunç DİNDAŞ siAârs Si nı rın üzerlerine basıp zıplayabiliyorsunuz. Oyunda bazı tuşların görevleri var. İşte o tuşlardan en önemlileri. RUN STOP: Oyunu durdur-
MA iyi bir antreman yapmanızı tavsiye ederim. Hareketli dakikalar...
Oyunun değerlendirmesi
AMIGA-512K GRAFİK : 9 SES 4 ZORLUK : 10 KURGU : 8 GENEL : 9 mak için.
©: Oyundan çıkmak için. Çıkışı olmayan yerler düşünce bu tuşa basın. Ekranın sağında bulunan “STAMINA” yumurtamızın gücünü simgeliyor. Kalp biçimindeki bu şekil azaldığı zaman üst kısmından aşağıya doğru eriyor. 'RAINBOWS' ise topladığımız gökkuşaklarının sayısını gösteriyor. Rainbow'un yanındaki 'STARS' ise düşman yaratıkları yok etmek için attığımız yıldızların sayısını belirtiyor. Ekranlardaki yaratıklara çarpmadan öteki ekranlara geçebiliyorsunuz yıldızlarınızı harcamanızı hiç tavsiye etmem. Yeni bir ekrana geçince aşağı ya da yukarı geçit var mı diye kontrol edin. Zemindeki sulara düşerseniz gücünüzün seviyesi hızla düşüyor. Yıldızlarınızın sayısını bazı bölümlerdeki yıldızları alarak yükseltebilirsiniz. En çok yirmi yıldız taşıyabiliyorsunuz. Herhangi bir ekrandaki yaratıkları yok edip başka bir ekrana geçip tekrar öteki ekrana dönerseniz yok ettiğiniz yaratıklarla tekrar karşılaşabilirsiniz. Bu özelliğe dikkat edin. Labirentlerin çok karışık olması ve çıkmaz yolların oluşu biraz zorluk yaratıyor ama yine de zevkli bir oyun CHASER'. Bu oyunu bitirmek isteyen arkadaşlarıma harita çıkartmalarını tavsiye ederim.
Son günlerde moda olan Arcade makinelerinden uyarlanan oyunlardan birisi yine karşınızda. Arcade oyunlarının tipik amacı olan 'önüne çıkan her şeyi yok et' yine bu oyunda da geçerli. Ama bu oyunda doğaüstü yaratıklar, uzaylılar veya canavarlarla savaşmıyoruz. Savaştığımız düşmanlar çocuk mafyası!.. Evet yanlış okumadınız çocuk mafyası. Çocukları kaçırılan anne ve babalar Amerikan polislerinin çalışmalarından hoşnut kalmamışlar ki Japonya'nın usta dövüşçüsü 'SHINOBI'yi mafyaya karşı savaşması için Amerika'ya getirtmişler. Tabi ki bu oyunda yine iyiyi yani SHINOBI'yi biz yönetiyoruz. Joystick'iniz sağlamsa durmayın, Gökdelenlerin içinde başlayan oyunumuzun grafikleri
Biraz da oyun esnasında göreceğimiz yaratıklardan bahsetmek istiyorum. Bu oyunda bizi zor duruma sokacak bir çok yaratık var. Bunlardan en önemlileri baykuşlar. Her zaman tepemizde uçan baykuşları hiç beklemeden yok edin. Dönen yıldızlar ve Kartallara da dikkat etmemizi tavsiye ederim. Oldukça zor olan RAINBOW CHASER'ı ben usta platformcu-
1 1 yum diyen Commodore 64'çü arkadaşlara öneririm. Bu tatlı oyunu severek oynayacağınıza eminim. Omlet olmamak sizin elinizde Bol platformlu dakikalar.
Oyunun değerlendirmesi
AMIGA-512K GRAFİK : 6 SES :65 ZORLUK : 7 KURGU : 6 GENEL : 6
AMIGA'ya yakışmayan derecede. Animasyonlar ise o kadar iyi değil. Ama bu kötü taoyunu oynayınca kendilerini bize unutturuyor. Sokaklar ise tipik Amerika sokakları. Karşıdan gelen mafyanın adamlarını yıldız atarak öldü- Tüyoruz. Sandığın üzerinden atlayıp öteki adamları da öldürünce birinci çocuğu kurtarabiliriz. Daha sonra yukarı kata zıplayın. Oraya zıplamak için yukarı ve ateş tuşuna basın. Aşağı İnmek için ise yine aynısı. Bu bölümde dikkat edeceğimiz adamlar tabanca ile ateş eden adamlar. Bu adamlardan eğilip ve ateş ederek kurtulabiliriz. Bir de kılıç atan Çinliler var. Kılıcı bumerang gibi atıyorlar. Yani kılıcı attıktan belli bir süre sonra kılıç tekrar çinlinin eline geliyor. Birinci bölümde dört çocuk kurtarmalıyız. Bazı çocukları kurtarırca sahip oluyoruz. Bu sayede yıldız yerine mermi atıyoruz. Ekranın sol alt köşesinde kurtarılacak çocuk sayısını, sağ alt köşede ise zamanı görebiliriz. Skore ise sol üst köşede. Bölüm geçince kentin hariommodore 64'çü arkadaşlarımız hep AMISA oyunu açıkladığımız için kızıyorlardı. Bu ayki üç Commodore 64 oyunundan birisi de “COBRA FORCE", Oyun klasik shoot'em up türlerinden. Sağa doğru git ve önüne çıkan her şeyi yok et. Amacımız ise yasa dışı gizli bir örgütün kaçırdığı rehineleri kurtarmak. Devlet bu yasa dışı örgüte karşı savaşacak bir ekip görevlendirdi. Bu ekibin adı 'COBRA FORCE', Hizmetimize verilen teknolojinin son harikası helikopterlerle rehineleri kurtarmak ve dünyanın her yerinde terör havası esti; ren teröristlerin sığınaklarını yok etmek ise bize düşüyor. Teröristlerin sığınakları iki bölümden oluşuyor. Yeraltı matası çıkıyor. Burada hangi kısmı temizlediğimizi ve nereyi temizleyeceğimizi görebiliriz. Ateş tuşuna basınca harita kayboluyor. Oyunun ikinci kademesinde dikkatimizi çeken şeyler geri planda duvara yapıştırılmış MARILYN MONDOE porterleri. Oyuna hoş bir görüntü katan bu ilginç fikir çok güzel. Ayrıca bu bölümde paranın her işi yaptıracağını terrar görüyoruz. Yıllarca severek okuduğu- Muz iyi kalpli ÖRÜMCEK ADAM bu oyunda mafyaya yardım ediyor. Yani bir anlamda güvendiğimiz dağlara kar yağdı. Sandıkların üzerlerindeki tabancalı adamlara dikkat edin. Bütün çocukları kurtardıktan sonra birinci patronla karşılaşmak için hazırlanıyo- Tuz. İki patron şövalye kıyafetle- Tİ giymiş ve devamlı ateşler atan bir İnsan azmanı. Onu öldürmek sizi bayağı uğraştıracak. Yeri gelmişken aralık tuşuna basarak, gizemli ninja gücünü kullanabilirsiniz. Action hastaları için birebir ama AMIGA için çok kötü ses ve grafiklere sahip olduğunu belirtmekte fayda var. Ama oyun böyle olmasına rağmen yabancı bilgisayar dergilerinden 'HİT” aldı. Çocukları kurta- TIP Mafyanın işine son vermeye cevabınız 'EVET'se durmayın.. Başarılar!..
Oyunun değerlendirmesi
AMIGA-512K
GRAFİK : 6 SES :5 ZORLUK: 7 KURGU : 8 GENEL :6 mağaraları ve adalar. Oyunumuzda dört kademe var. Birinci kademede yeraltı mağaralarında savaşıyoruz. Helikopterimiz göreve hazır olarak üssünden kalkıyor. Bu bölümde dikkat edeceğimiz düşmanlar ise güdümlü mayınlar atan yeşil ve mavi kuleler. 'S.O.S.' diye bağıran adamları kurtarmayı unutmayın, bu adamlar teröristlerin kaçırdığı rehineler. Her kademede üzerinize gelen uçakları yok etmeyi ihmal etmeyin. Oyunun ekranında sağ alt köşedeki kareler yok edeceğiniz düşman yuvalarının sayısını gösteriyor. Eğer kare sayısı kadar düşman yuvası yok etmezseniz bölümün sonundaki büyük savaş gemisi çıkmıyor. Kademe geçmek için büyük savaş gemisini yok etmemiz şart. Ayrıca bu kademede zeminde soldan sağa doğru geçen Jiplere dikkat edin. Çünkü sevimli gözüken bu Jipler aniden füze atabiliyor. Oyunun ikinci kademesi deniz ve adalar üzerinde geçiyor. Palmiye ağaçları ve denizin hareketleri oldukça iyi. Birinci kademedeki düşmanlarımız burada da bizi yalnız bırakmıyorlar. İlk kademedeki jip yerine burada ise sürat motorları görevimizi engellemeye çalışıyor. Yine hepsini yok edin. Tabi ki rehineleri kurtarmayı ihmal etmeyin. Oyun başlayınca helikopterimiz füze ve mermi atıyor. Ama oyun esnasında aralık tuşuna basarak silahlarımızı değiştirebiliriz. Bomba zemindeki düşman yuvaları ve jipler için çok ideal. Büyük savaş gemisinde ise roketleri kullanın. Üçüncü kademe tekrar yeraltında ve dördüncü kademe ise tekrar denizde geçiyor. Düşmanlarımız yine aynı. Yal-
Tunç DİNDAŞ
nız daha kalabalık ve çok olarak saldırıyorlar. Oyun tek düze olsa da oynanacak kadar güzel. Grafik ve ses olarak ise fena sayılmayacak bir düzeyde olan 'COBRA FORCE'u hoşça vakit geçirmek isteyen arkadaşlara rahatlıkla tavsiye edebilirim. Başarılar...
Oyunun değerlendirmesi
AMIGA-512K GRAFİK : 7 SES :5 ZORLUK : 6 KURGU : 6 GENEL : 6
Hewson'un oyun dahisi Rafaello Cecco yine bizi saatlerce başından kaldırmayacak bir oyun yaptı. Bilindiği gibi daha önce 'EXOLON' ve 'CYBERNOID' oyunları piyasada başarı sağlamışlardı. STORMLORD'un oyun tipi EXOLON'a oldukça benziyor. STORMLORD'da ek olarak geride kalmış ekranlara da gidebiliyorsunuz. Oyun piyasasında daha STORMLORD çıkmadan hakkında yapılan dedikodular yabancı bilgisayar dergilerine de yansımış ve bu sayede adından oldukça söz ettirmişti. STORMLORD'un konusu oldukça basit. Kötü kalpli büyücü 'MR. MALICE' Stormland'ın yardımsever ve iyi kalpli meleklerini sihirli baloncuklarla hapsetmiş. STORMLAND'in lordu olarak onları kurtarma görevi size veriliyor. Sınırlı bir zaman içinde bütün melekleri kurtarmalısınız. Çünkü meleklerin hapsolduğu baloncukların içinde bir kum saatlik hava bulunuyor. Lordumuz sihirli yıldızları ve kılıcı ile yola çıkıyor. Oyunumuzun birinci kademesinde şimşekler çakan bir ormanda ilerliyoruz. Geri planda dağlar ve ağaçlar oldukça güzel çizilmiş. Burada ilk önce sola gidip anahtarı almalıyız. Daha sonra sağa doğru gidip kapıyı bulmanız gerekiyor. Tabi bu esnada size saldıran tırtılları da vurmayı unutmayın. Kapıyı anahtarla açıp içeri girdikten sonra üzerinde gözleri parlayan bir kafatası bulunan taşın üzerine çıkın. Bir kartal gelip sizi hapsolmuş bir meleğin yanına götürecek. Meleği kurtardıktan sonra yanınızdaki taşın üzerine çıkıp tekrar geldiğiniz taşın yanına dönebilirsiniz. Burada sizi büyücüler, zombiler ve bazı yaratıklar kovalayacak. Onlardan kurtulmanın tek çaresi sihirli yıldızlar sayesinde hepsini yok etmek. Birinci kademede beş melek kurtarmalısınız. Bazı yerlerde ağaçların üzerlerinden yumurtalar düşmeye başlıyor. Yumurtaları havada vurabilirseniz oldukça rahatlayacaksınız aksi takdirde yumurtaların içinden ejderhalar çıkarak size zorlu anlar yaşatacak. Ejderhaları yumurtadan çıkmadan vurun üzerinize saldıracaklar. Saldırı anında çömelip ateş edin. Ateş tuşuna bir kere basarsanız sihirli bir yıldız atarsınız. Ateş tuşuna basılı tutup bıraktığınızda ise kılıç atarsınız. Bu silahlar sınırlı değil. Kılıcın yararı önüne çıkan bütün yaratıkları yok etmesidir. Oyun esnasında gördüğünüz ayakkabıları alırsanız daha yüksek yerlere zıplayabilirsiniz. Bal kavanozlarını toplayarak arılardan kurtulabilirsiniz. Bunun için arıların yakınlarında bulunan bir eşyayı alın ve oraya bal kavanozunu bırakın. Arılar hemen oraya gelecektir.
VU
İkinci kademe yine ormanda başlıyor. Ama biraz ilerledikçe mağaralara rastlıyorsunuz. Mağara duvarlarındaki kapılara girmeye çalışmayın. Çünkü oralara giremiyorsunuz. Bu bölümde ilk başta sağa giderek mağaralara girin. Burada ayakkabıları alın ve sola doğru yürüyün. Duvarları
geçtikten sonra anahtarları bulacaksınız. Üzerinde gözleri parlayan kafatası bulunan taşları ışınlanma aletleri olarak kullanabilirsiniz. Canlı bitkilerin üzerindeki toprak platformlara fazla güvenmeyin.
Oyunun AMIGA versiyonunda zaman yerine kum saati konmuş. Haklar sol tarafta. Kurtaracağınız melek sayısı ve kurtardığınız melek sayısı ise sağ kenarda gösteriliyor. Oyunun Commodore 64'teki bazı farklılıklarını belirtmeden geçmeyelim. Commodore 64'te ışınlama bloklarının yerine rampaya benzer şekiller var. Ayrıca kartal yerine gökyüzüne çıkıp yıldızlarla beraber yolculuk ediyorsunuz. Melekler ise baloncukların içine kapatılmamış. Commodore 64 versiyonunda zaman güneşten aya geçiş olarak gösteriliyor. AMIGA versiyonunda efektler mükemmel yapılmış. Commodore 64 versiyonunda ise oyun esnasında çalan müzikler oldukça güzel. Commodore 64'te çıkan menüde eğer joystick ile oynamak istiyorsanız 'N' tuşuna basın. Daha sonraki seçimde ise '2' tuşuna basın. Tatlı bir platform ve action oyunu oynamak isterseniz bu oyunu korkmadan alabilirsiniz. Unutmayın meleklerin hayatını ve Stormland'ı kurtarmak size ve joystick'inize ka-
Ömer Sinan POLAT İşte AMIGA'yı AMIGA yapan oyunlara bir örnek daha. Ben şimdiye kadar AMIGA'da böylesine muhteşem bir oyun daha görmedim. Bu oyunla şehirler kurup yönetimleri ile en ufak ayrıntısına kadar bizzat ilgilenebiliriz. Oyunda amacımız her yönden en muntazam kenti kurmak ve bu kentin sorunlarını minimuma indirmek. Programı ilk yükleyişimizde karşımıza oldukça güzel bir grafik ile birlikte üç seçenekli bir menü çıkar. START NEW CITY: Yeni bir şehir yaratarak oyuna başlarız. LOAD A CITY: Daha önceden SAVE ettiğimiz bir oyunu buradan yükleriz. SELECT SCENERY: SIM CITY disketi içerisindeki senaryolardan herhangi birinden oyuna başlayabiliriz. Senaryolar arasında Dünyanın en büyük şehirleri ve bu şehirleri tehdit eden tehlikeler vardır. Tabii bu modda bizim görevimiz seçtiğimiz kentteki sorunlara son vermek ve şehri daha da geliştirmek olacaktır. START NEW CITY ile oyuna başladığımızda karşımıza yeni bir pencere gelir. Burada inşa edeceğimiz şehrin toplu haritasını görebiliriz. Oyunda elde edeceğimiz başarı şehri kuracağımız alan ile de ilgilidir. Alanda ne kadar çok su varsa şehrin inşası o kadar çok zor oluyor. Eğer bu pencerede ilk çıkan haritayı beğenmediyseniz 'GEN NEW MAP'i seçerek yeni bir harita yaratabiliriz. Biz de stratejimize göre istediğimiz haritayı seçebiliriz. İsterseniz disketin içindeki hazır şehirlerin alanlarını da kullanabiliriz. Oyunun zorluk derecesini lıyor. Güç sizinle olsun. Başarılar...
Oyunun değerlendirmesi AMIGA-512K / C-64
GRAFİK : 8 SES ZORLUK : 7 KURGU : 7 GENEL : 7 bu windowdaki Easy, Medium ve Hard seçenekleri ile ayarlayabiliriz. Kademeye göre bize verilen para da azalır ve işimiz o denli zorlaşır. Eğer o anki haritayı beğendiyseniz USE
THIS MAP ile oyuna geçebiliriz.
Oyunda iki ana ekran vardır. Birincisi MAPS GRAPHICS isimli ekran. Burada oyunun seyri halinde şehirdeki olayların istatistik bilgisini görebilirsiniz. Artık şehrimizi kurmaya başlayabiliriz. Şehri kurmadan ekranın sağındaki iconları kullanacağız. Bu iconlar yardımı ile haritanın istediğimiz yerine elektrik ağları döşeyebilir, evler, iş yerleri, ticaret merkezleri, polis ve itfaiye merkezleri, dinlenme parkları, demiryolları, karayolları yapabiliriz. Tabii bu tesisleri kurarken bizden inşaat ücreti olarak her bina ve
—BE V.B dial güle VA ©
— tesis için belli bir para alınır. Eğer oyuna başlarken zorluk derecesi olarak EASY seçtiyseniz oyuna $20000 dolar ile başlarsınız. Gerçi binaların birim fiyatları o kadar fazla olmasa da oyun esnasında bu binalardan yüzlerce yapacağımız için, paramızın çokluğuna kanıp bol bol harcamayın. İlk iş olarak şehrimizin elektrik ihtiyacını karşılayacak olan elektrik santralini kuralım. Oyunda iki türlü elektrik santrali mevcuttur. 1- Kömürlü SANTRAL 2- Nükleer SANTRAL Kömürlü santraller: Nükleer Santrale göre daha ucuz olmasına karşın kentin büyümesiyle bazı sorunlar çıkarabilir ve yetersiz kaldığında verilen uyarıyı zamanında değerlendiremezsek santralimizi büyük bir patlama ile kaybedebiliriz. Aynı zamanda patlayan santral çevresinde büyük zararlar verebilir. Nükleer Santraller: Aynı ihtiyaçlara rahatlıkla karşılık verebilirler. Kömürlü santraller gibi dayanıksız değildirler. $5000 dolarlık fiyatına karşın bunlardan iki tanesi rahatlıkla bir metropolis'in elektrik ihtiyacını karşılayabilirler. Elektrik Santralleri kurmak için ana ekranın sağında bazı iconlar göreceksiniz. Bu iconlar içerisinden elektrik santrali iconunu seçin sonra santrali nereye kurmak istiyorsak haritada o yere gidip uygun gördüğünüz bir yerde Santrali inşa edin. Hemen arkasından hiç vakit kaybetmeden Fabrika iconunu seçip fabrikaları kurmaya başlayın. Fakat deniz ve nehir kıyılarına fabrika kurmaktan çekinin. Çünkü bu yerleri daha çok ticaret merkezleri kurmak için değerlendireceğiz. Elektrik santralinin hemen yanına on veya onbeş fabrika kurun. Fabrikalardan en az üç beş blok öteye fabrikada çalışacak olan işçilerin evlerini inşa edin. Evleri yapmak için sağdaki iconlardan ev iconunu seçin ve nereye kurmak istiyorsanız oraya gidip evleri kurun. Fabrikaların ve evlerin imarını yaptıktan sonra o alana elektrik ulaştırmamız gerekir. Eğer imar edilmiş olan bu alanlara elektrik vermezsek binaların inşaatını kesinlikle başlatamayız. Elektrik hatlarını döşemek için, Elektrik direği şeklindeki iconu seçip Elektrik santralinden başlayarak binaların inşa edildiği yere kadar hat döşeyin. Santral ile inşaatların elektrik bağlantılarını eksiksiz yaptığımız anda o binanın inşaatı başlamış demektir. Bundan sonra diğer yapacağımız evlere de elektrik ağını santralden yapmanıza gerek yoktur, o binanın en yakınında elektrik alan başka binadan hat döşeyebilirsiniz. Böylece fazla bir para harcamamış olursunuz.
Artık şehrimizin evleri ve fabrikaları hazır. Şimdi sıra evler ve fabrikalar arası ulaşıma geldi. Karayolu iconunu seçerek fabrikaların etrafını yollar ile çevirin. Ve bu yolların uygun bir yerinden evlere doğru yolu uzatın evlerin etrafını yollar ile çevirmenize gerek yoktur. Artık yolları da kurduğumuza göre trafik akışını da başlatmış oluyoruz. Şimdi fabrikalarda üretilen malların pazarlanacağı ticaret merkezlerini kurmaya başlayabiliriz. Kare şeklindeki ticaret merkezi iconunu seçip deniz veya nehir kıyılarına ticaret merkezlerini kurun. 20 fabrika için dört tane ticaret merkezi yeterlidir. Tabii bu binalara da vakit geçirmeden elektrik ve yol hatlarını ulaştırın. Artık şehrimiz canlanmaya başlıyor. Biz bu işleri yaparken bir yıl da rahatlıkla geçmiş olur. Tabii biz bu şehrin belediye başkanı olarak her yıl sonunda şehir halkından belli bir vergi alacağız. Vergilerin ne kadar olacağına da biz karar veririz. Ekranın üst kısmındaki AMIGA menülerinden Window menüsündeki BUDGET seçerek Yıllık Vergiler penceresini ekrana getirin: Bu ekranda vergileri istediğimiz gibi artırıp çoğaltabiliriz. Fakat şehrin ilk yıllarında vergileri fazla artırmamanızı tavsiye ederim. Çünkü vergileri yüksek tutarsanız şehre hiç kimse gelmez ve nüfusu kesinlikle artıramayız. Size tavsiyem oyuna ilk başlarken vergiler yüzde 2 civarında olmasıdır. Böylece ilk yıllarda alacağımız yıllık vergi az gibi gözükse de sonraları nüfus arttıkça elimize bayağı iyi bir para geçiyor. Şehrin artan nüfusu ile bazı sorunlar bizi beklemektedir. Başlıca sorunlar şunlardır. 1- Trafik sorunu 2- Cinayetler 3- Konut sorunu 4- Hava kirliliği 5- İşsizlik Çok büyük şehirlerde de şöyle sorunlarla karşılaşabiliriz. 1- Yangınlar 2- Deniz ve Hava kazaları 3- Godzillanın şehre saldırısı 4- Savaş yıllarında hava saldırıları 5- Hayaletlerin şehirleri işgal etmesi Oyunun o anki anında şehir sorunlarını öğrenmek için EVAL menüsünü seçin. Açılan pencerede WORDS PROBLEMS kısmında sorunlar yüzdeleri ile görebiliriz. Çalışmalarımız bu sorunlar doğrultusunda yapacağız. Trafik sorunu ile karşılaşırsak; ilk önce istatistik ekranından şehrin hangi caddelerinde trafik yoğunsa o caddeleri tespit edin. Sonra o caddelerin bulunduğu yerlere demiryolu döşeyin ve o kısımdaki trafik sorununu kökünden halledin. Eğer şehrin tam ortasında bir nehir veya kanal geçiyorsa karşı taraf ile ulaşım bağlantısını köprülerle çözebiliriz.
Köprü yapmak için yine köprünün cinsine göre karayolu veya demiryolu iconunu seçin. Aynen toprağa yol yapar gibi suyun üzerine de aynı doğrultuda olmak üzere köprünüzü oluşturun. Fakat fazla miktarda köprü yapmamanızı tavsiye ederim. İleride limanlara gelen gemiler köprülere zarar verebilirler. Artan nüfus ile birlikte şehirde suç oranı yükselir. Problemler kısmında Suç oranının (Crime) yüzde 20'yi geçtiğini gördüğünüz anda polis merkezi kurmanın zamanı gelmiştir. Yine istatistik ekranından suçların en çok nerelerde işlendiğini tespit edin. Sonra o yerlerin tam orta kısmına polis merkezini kurun. Çok geçmeden bunun yararını göreceksiniz. O bölge artık yerleşim için çok değerli bir bölge olmuştur. Polis merkezinin tek sorunu bize yıllık belli bir masraf açmasıdır. Aynı şekilde itfaiyeler de, Polis merkezleri gibi bizden yıllık belli bir miktar para isterler. Vergi ekranından onlara verilen paranın yüzdesini eksiltebiliriz. Fakat o zamanda onlardan görevlerini tam olarak yapmalarını bekleyemeyiz. Şehirde karayolları ve demiryollarının her yıl bakıma ihtiyacı vardır. Bu iş için de yine yıl sonunda bunların ücreti, alacağımız vergilerden kesilir. Eğer alacağımız yıllık vergi karayolları ve demiryollarının masraflarını karşılamıyorsa eksik kalan para bizim kasamızdan çekilir. Bunu önlemek için bu harcamaların yüzdesini vergi ekranından azaltabiliriz. Fakat o zaman da yollarda bozukluklar oluşmaya başlar. Şehir nüfusu arttıkça sakinleri hafta sonları eğlenmek için bir stadyum istemeye başlayabilirler. Böyle bir talep ile karşılaşırsak önceleri duymamazlıktan gelebiliriz. Fakat bu isteği fazla göz ardı etmeden bütçemizin müsait olduğu ilk anda yerine getirin. Yine stadyumu deniz kenarında bir yere koymanızı tavsiye ederim. Bu hareket halkın daha da hoşuna gidecektir. Zamanla fabrikalar arttıkça hava kirliliği sorunu ile karşılaşabilirsiniz. Hava kirliliği sorunu yüzde 15'i geçince tehlike başlamış demektir. Böyle bir durumda hemen yeşillendirme çalışmaları yapmalıyız. Yüzdeyi ancak bu şekilde azaltabiliriz. Yeşil alan yeri olarak deniz kıyılarını seçin. Şehrimiz büyüdükçe (nüfusun 100,000 dolaylarında) artan ekonomi talebine göre limanlar kurmamız gerekebilir. Limanları daha çok şehrin dış kısımlarına kurmaya gayret edin. Çünkü gemiler hem daha rahat çalışırlar, hem de şehir kargaşasından uzakta kazasız belasız işlerine devam ederler. Tabii şehir dışındaki bu limanları da karayolu ile şehre bağlamayı unutmayın. Oyunun ilerleyen zamanlarında hava alanı da yapmamız gerekecek. Nüfusun
Commodore'la açık
100.000 - 150.000 civarında olduğu zaman yine hava kazalarına neden olmaması için Hava alanını şehrin dışında bir yere kurmanızı tavsiye edemiyorum. Ve hava alanı yakınlarına bir de itfaiye merkezi kursanız çok iyi olur. Çünkü hava kazaları sırasında yangının fazla yayılmadan söndürülmesi gereklidir. Aksi takdirde siz de benim gibi $40000 dolarlık bir harcama ile yaptığınız ufacık bir yangından kaybedebilirsiniz. Yangından binanın yüzde 50'si yandığı anda bina kaybedilmiş demektir. Böyle bir durumda yangının sönmesini
- beklemeden o binayı bulldozeri kullanarak yıkın. Böylece yangını söndürmüş olursunuz. Eğer binanın yüzde 50'si yanmadan yangın sönmüşse bina yangını atlatmış demektir. Oyundaki başarımızı EVAL ekranından izleyebiliriz. Yüzde olarak halkın bizi ne kadar sevip sevmediğini anlayabiliriz (yüzde 70 YES yüzde 30 NO).
Sevilmeyen bir kişiysek hemen uçak biletimizi almalıyız. Şehir akışının düzenli olması için binaları doğru yerlere inşa etmelisiniz. Örneğin evleri fabrikalara bitişik yaparsanız, bu yerlere hiç kimse yerleşmeyecektir. Bu gibi hatalar yaparsanız oraları yıkıp park yapın. Kısacası 'SİM CITY' harika bir oyun. Şimdiye kadar AMIGA'daki en güzel oyun diyebilirim. Fakat 512 K AMIGA'cılar için kötü bir haberim var. Program minimum 4 MByte'de çalışıyor. SIM CITY'li günler dileğiyle...
Oyunun değerlendirmesi AMIGA-1MB
GRAFİK : 9 SES ZORLUK : 8 KURGU : 9 GENEL : 8
Tanıtım bölümümüz 54. sayfadan itibaren devam ediyor.
COMMODORE 64'ün BELLEK HARİTASI
Bellek haritasını Basic ROM rutin başlangıç adresleriyle sürdürmeyi planlıyorduk ama bunları nasıl olsa PROGRAMCININ EL KİTABINDA bulabileceğinizi düşünerek vazgeçtik. Onun yerine Seri bus, CIA gibi özellikler üzerinde duracağız:
C-64, disket sürücüsü ya da yazıcı ile arkasındaki seri port aracılığı ile iletişim kurar. Bu port diğer aracı seri “Bus”'a bağlar. “Bus” yazıcı, disket sürücüsü gibi araçlarda olan bir dizi iletişim hattına verilen addır. Kendinizi bir tren istasyonundaki hareket memuru olarak düşünün. Göreviniz trenlerin istasyona ne zaman girip çıkacağını saptamaktır. Her trenin hareketini izleyebilmeniz gerektiği ve her trenin makinistin amacı ve yapacakları konusunda sizi aydınlatması gerektiği açıktır. En önemli işleviniz trenlerin aynı anda aynı hatta olmamasını sağlamaktır. Bu konudaki bir hata felaketle sonuçlanacaktır. Yeniden C-64'e dönelim. Rolü seri bus'ın hareket memuru olmaktır. Bus'taki araçlar konuşabilir de dinleyebilir de, yani bilgi alabilir ya da verebilir ama hiçbir zaman aynı anda değil. Yoksa bütün veriler birbirine karışırdı. İki insan aynı anda konuşursa anlaşmalarının ne kadar zor olduğunu bilirsiniz. C-64 yalnız konuşmak ve dinlemekle kalmayıp kimin konuşup kimin dinleyeceğine de karar verir. Bu yalnızca bilgisayarın ayrıcalığıdır. Bus'ta veri getiren üç girdi, ve veri götüren üç çıktı hattı vardır. Üç hattan bir aracı çalıştırır, birisi gönderilen verinin zamanlamasını kontrol eder, birisi de veriyi gönderir. Tren istasyonu benzetmesini anımsayın. Seri iletimde, trenin her vagonu bir bit informasyondur. Burada aklınızda tutmanız gereken iki nokta var. İlk olarak, seri bus'taki her aracın kendi adresiyle tanınması gerektiğini unutmayın. Bu da BASIC OPEN komutundaki ikinci sayıdır. Örneğin, OPEN 1,4 yazıcıya, 4 numaralı aracı çalışmaya hazırlamasını söyler. Bus'ın yapabileceği ikinci şey de OPEN komutundaki üçüncü sayı tarafından belirtildiği şekilde aracı değişik modlara ayarlamaktır. OPEN 1,4,7 yazıcıya üst ve alt harfleri basmasını söyler. BASIC ya da makine diliyle seri bus'ı başka araçları kontrol etmekte kullanabilirsiniz.
COMPLEX INTERFACE ADAPTERS (CIA) (KARMAŞIK ARABİRİM ADAPTÖRLERİ)
Bu CIA gizli değil ama oldukça karmaşık. Kendinize şu soruyu sorun: İletişim işleri için neden ayrı bir chip gerekiyor? Bu sorunun aşikar bir yanıtı yoktur. Ama bilgisayarın yazıcı ya da disket sürücüsü gibi bir başka aracı dinlemek ya da onunla konuşabilmek için doğru sırayla yapması gereken bir dizi iş vardır. Her araç diğerleriyle belli hatları paylaşır. Biri konuştuğunda diğerleri dinler. Bu paylaşılan iletişim hatlarına da seri bus denir. İletişimde başka bir problem de bu araçların birbiri ile başka tempo ve farklı lehçelerde konuşabilmesidir. İletişimin iki tarafın zamanlamasına bağlı olmadığı zamanlarda onların işlemleri arasında eşgüdüm sağlamak için bir yöntem gerekir. Buna “eş zamanlı olmayan iletişim” denilir. Özel yazılım ve ya da donanım desteği gerektirir.
KAFANIZ MI KARIŞTI?
Kendi bilgisayarın yerine koyun. Örneğin yazıcıya veri aktarmanız gerekiyor. Ama o sırada yazıcı sizin yazmasını söylediğiniz başka bir şeyle meşgul. Size verdiğiniz çıkartmaya hazır olmadığını ve o hazır olana kadar beklemenizi söyleyecektir. Bu durumda siz, yani bilgisayar görevi yazıcıya daha sonra ne yapacağını söyleyen bir “kuyruğa” sokarsınız. Bu arada düzenli olarak yazıcıya vermek istediğiniz bilgiyi almaya hazır olup olmadığını sorarsınız. Yazıcı olumlu yanıt verdiğinde kuyruğu boşaltıp işinizi sürdürebilirsiniz. Bu bilgisayarda iki CIA chipi vardır. Bilgisayar ya da kullanıcının sormak ya da değiştirmek için ihtiyaç duyduğu 64K kullanıcıya açık bellek alanında gereken bellek yerlerini idare ederler. Bir aracın ya da CIA'ya ayrılmış ciplerden birinin 6510 merkezi işlemciden işlem görmeleri gerektiğinde, CIA chiplerinden birine bir sinyal gönderilerek işlemciden bu işe biraz zaman ayırması istenir. CIA'nın bazen 6510'a zamanı nasıl kullanacağını söyleyebilmek gibi bir ayrıcalığı vardır. Yani CIA'nın işinin önemli bir kısmını diğer araçlardan gelen bilgiyi işlemek oluşturur.
PİN CONFIGURATION
C-64 GRAFİKLERİYLE SANAT
Yaratıcı zihnin kendini ifade edebilmek için bulunduğu kanallar çokluk sınırlıdır. Bu konuda önceden hiçbir eğitim görmeden bir resim şaheseri yaratmaya ya da bir senfoni bestelemeye kalktığınızı düşünün. Amacınıza ulaşmak için yıllarca emek ve zaman harcamanız gerekecektir. Ama C-64 sayesinde kendinizi ses ve görüntü yaratmada yeni ufukların eşiğinde bulabilirsiniz. C-64'ün özellikle grafik alanında tüm marifetlerinin anahtarı 6567'dir. Diğer bir adı da VIC-II çipidir. Eğer VIC-I çipinin başına ne geldiğini merak ediyorsanız VIC-20'ye yerleştirildiğini hatırlatalım. V.I.C. (Video Interface Controller) yani video arabirim kontrolörünün kısaltılmışıdır. VIC-I ya da VIC-20'de kullanılan adıyla 6560 hem grafikler, hem de ses için kullanılır ama Sprite'lar ile baş etme yeteneği yoktur. Burada yapacak çok şey var, kendi karakterlerinizi
PIN CONFIGURATION
6567 oluşturmanız ya da yeni alfabeler yazmak gibi. Bu da daha işin başlangıcı. Sprite'lar denilen sekiz ayrı oynatılabilir nesnenin yazgılarını kontrol edebilirsiniz.
BİRAZ DAHA TEKNİK KONUŞALIM
Her şeyden önce, VIC-II iki çiplik bir işlemcidir. Eşlik eden çip 6566'dır. Aralarındaki tek fark sistemin adres buslarına ulaşma yöntemlerindeki değişikliktir. Bunun dışında, aralarındaki normal işlemler tamamıyla sisteme açıktır ve her türlü pratik amaç ve işlev açısından tek bir birim sayılabilirler. VIC-II, diğer grafik çipleri gibi ana işlemciye (6510) direkt olarak ulaşabilir. Bu da VIC-II'nin bir işi halletmesi gerektiği zaman, 6510'a, RAM'ın 64 K'sına bilgi aktarmak için sistemin 8 bitlik iki yönlü data buslarını kullanıp kullanamayacağını sorması gerektiği anlamına gelir. 6510 bu talebe cevap verebilmek için işlem hızını biraz düşürür. Bunun yanı sıra kullanıcı belleğe direkt ulaşma sistemini erken boşaltma yoluyla işleyiciyi durdurabilir. (yer 53265) Bunun yanı sıra adres busları boyunca interrupt'ları durdurarak grafik işlemlerinin sistemin geriye kalan kısımlarına müdahale etmemesini sağlayabilir. (yer 56334) Donanımı kuş bakışı görmek isteyenler için: (Yandaki şekle bakınız.) Buna ek olarak chip, test görüntüsü, yüksek rezolüsyon grafikleri, sprite'lar ve sprite öncelikleri ile de uğraşır. C-64 grafiklerinin tümü size daha fazla renk seçeneği sağlayacak biçimde çok-renk modundadır. Ama renkten kazanırken, rezolüsyondan da biraz kaybedersiniz. Çünkü bayttaki sekiz bit çifter çifter okunur.
A B C rengini 53281'den alır-ekran rengi, B rengini 53282'den alır-arkaplan 1. renk, 53283'den alır-arkaplan 2. renk, D rengini ekrandaki yerine göre alır. Bu 55296 ve 56295 arasındaki renk RAM bölgesinden gelir.