HIRES ARTIST

Program dökümü: HIRES ARTIST

Eğer C-128'in zengin grafik komutlarına karşın grafik çizimlerinde zorlanıyorsanız bu program tam size göre. Çünkü bu program komutlarını klavye ve joystick'ten alabiliyor ve en önemlisi, komutlarınızı oku (cursor), ekranın en üst satırındaki komut menüsüne götürüp ateş tuşuna basarak seçebilmenizi sağlıyor. Ancak isterseniz bu komutlarınızı (circle, box vb.) klavyeden de girebilirsiniz.

Program iki ekranla çalışıyor. Bunlardan birisi asıl çizimin yapıldığı ekran, diğeri ise bazı yardımcı seçeneklerin bulunduğu menü ekranıdır.

Program Basic V7.0 ile yazılmıştır. Ancak bazı kontrollerin yapıldığı ve kursör'ün yanıp sönmesini sağlayan küçük bir IRQ rutini içerir. Program, adından da anlaşılabileceği gibi 320x200 Pixel'lik Hires modunda çalışır.

Bu programı yazıp çalıştırdığınızda bilgisayar FAST moduna geçerek data satırlarından machine cod ve sprite verilerini okuyup hafızaya yerleştirir ve başlık ekranını gösererek bir tuşa veya joystick butonuna basmanızı bekler. Bunu yerine getirdiğinizde en üst kısmında bir menü satırı bulunan çizim ekranıyla karşılaşırsınız. Kursör ekranın ortasında yanıp sönmeye başlar. Program çalıştırıldığında "nokta çizimi" modundadır. Ancak kursör gittiği yere çizgi çizmez.

Kursörü port 2'ye bağlı bir joystick veya numerik klavye yardımıyla hareket ettirebilirsiniz. Ateş tuşunun görevini de RETURN veya ENTER tuşu ile yerine getirebilirsiniz.

Şimdi çizim ekranındaki menü satırının açıklanmasına geçelim: Menü satırının en solunda, arka plan rengi göstergeci bulunur. Normalde ekran rengi ile aynı olduğundan değiştirmeden göremezsiniz. Değiştirmek için kursörü menü satırının en soluna götürüp ateş'e (veya ENTER'e) basınız. Arka plan renginin bir arttığını görürsünüz. Artık arka plan rengi ile yapılan çizimlerde bu renk kullanılır.

Arka plan renginin iki karakter sağında bulunan içi dolu kutu (normalde beyaz) kullanılacak ön plan rengini gösterir. Bu rengi de tıpkı arka plan renginde olduğu gibi değiştirebilirsiniz.

Ayrıca bu renklerin değiştirilmesi işlevini klavyeden "+" ve "-" tuşlarıyla da yapabilirsiniz.

Bir sağdaki karakter ise negatif ön plan rengiyle çizilmiş bir "f" harfi (foreground = ön plan) görürsünüz. Bu simge çizimlerin ön plan rengile mi, yoksa arka plan rengiyle mi yapılacağını gösterir. Bu şekilde üzerine gidip ateşe bastığınızda veya klavyeden "C" tuşuna bastığınızda değişerek "B" harfi olur. Artık çizim arka plan (background) rengi ile yapılır. Bir kere daha değiştirdiğinizde çizimler ön plan rengi ile yapılır.

Bir sonraki seçenek ise "T" ile belirtilen "Text" seçeneğidir. Bu seçeneği ise klavyeden "T" tuşuna basarak veya joystick yardımı ile seçebilirsiniz. Seçiminizi yaptıktan sonra kursörü yazacağınız yere götürerek joystick butonu veya ENTER tuşuna basın. Kursör blok şeklini alır. Bu modda istediğiniz yazıyı yazdıktan sonra RETURN veya ENTER tuşuna basarak çıkabilirsiniz. Bu modda "cursor", "home" ve "del" tuşları işlevlerini yerine getirir.

Text seçeneğinin yanındaki dikey çizgi, çizgi kalınlığını gösterir. Joystick yardımıyla kursörü bu sembolün üzerine götürüp ateş'e basarak veya klavyeden "W" (yani Width) tuşunu girdiğinizde çizginin kalınsa inceldiğini, inceyse kalınlaştığını görürsünüz. Bu çizgi kalın olduğunda çizimler iki nokta genişliğinde, ince olduğunda ise tek nokta genişliğinde yapılır. Dikey çizginin yanındaki "+" veya "-" işaretleri ise "nokta çizimi" modunda iken kursörün hareketi sırasında okunan nokta konulup konulmayacağını gösterir. Bu belirteci değiştirmek, yani nokta koyma moduna girmek veya nokta koyma modundan çıkmak için "nokta çizimi" modundayken (birazdan açıklayacağız) joystick butonuna veya klavyeden ENTER VEYA RETURN tuşuna basmak yeterlidir.

Bundan sonraki seçenekler ise çizim fonksiyonlarıdır:

NOKTA ÇİZİMİ:

Bu modda iken joystick veya klavyeden nümerik tuşlar ile serbestçe çizim yapılabilir. Bu fonksiyonu klavyeden "."ya basmakla veya menü satırında kursör "."nin üzerindeyken butona basmakla kullanabilirsiniz. Kursörün hızını daha sonra anlatacağımız FAST ve SLOW komutları ile değiştirebilirsiniz. Joystick butonu veya ENTER tuşu ile nokta koyma veya koymama (az önce anlattığımız modlarını seçebilirsiniz.

ÇİZGİ ÇİZİMİ:

Bu modda iken başlangıç ve bitiş olarak belirttiğimiz noktalar arasına çizgi çekilir. Bu moda klavyeden "L" (line) tuşu ve menü satırından çapraz çizgiyi (/) seçerek girebilirsiniz. Bu modda iken ilk önce çizginin başlangıç noktasını kursörü götürüp butona veya ENTER'a basın. daha sonra bitiş noktasına götürerek aynı işlevi tekrarlayın. Bu iki nokta arasında çizgi çekilecektir. Eğer çizilecek başka çizgiler de varsa yine başlangıç ve bitiş noktalarını belirterek işlevlerini tekrarlayın.

DAİRE/ELİPS ÇİZİMİ:

Bu modda istediğiniz x ve y yarıçaplarında daire veya elipsler çizebilirsiniz. Bu moda klavyeden "O" tuşuyla veya menü satırından yuvarlağı seçerek girebilirsiniz. Bu modda ilk önce dairenin merkezinde iken butona basın. Eğer daire çizecek iseniz y koordinatını değiştirmeden merkezden yarıçapa kadar kursörü uzaklaştırın ve iki defa butona basın. Eğer elips çizecekseniz merkezi belirledikten sonra y koordinatını değiştirmeden x yarıçapını belirleyin. Daha sonra y koordinatını değiştirerek y yarıçapı belirleyin. Daireniz veya elipsiniz çizilecektir. Eğer yeni daireler çizecekseniz merkez koordinatından başlayarak tekrar yarıçapları belirleyin.

DİKDÖRTGEN ÇİZİMİ:

Bu modda sol üst ve sağ alt köşelerini belirttiğiniz dikdörtgenler çizilir. Bu moda klavyeden "B" (box) tuşuna basarak veya menü satırından kutuyu seçerek girebilirsiniz. Bu modda iken ilk önce dörtgenin bir köşesini, sonra da diğer köşesini butona basarak belirleyin. Dikdörtgeniniz çizilecektir. Koordinatlarını belirleyerek yeni dörtgenler çizdirebilirsiniz.

NOKTAYLA DOLDURMA:

Bu modda dikdörtgen bir bölgenin içini rastgele noktalarla doldurabilirsiniz. Bu moda klavyeden "F" (fill) tuşuna basarak veya menü satırından noktalı şekli seçerek girebilirsiniz. Aynen dikdörtgen çiziminde olduğu gibi sol üst ve sağ alt köşeleri belirleyin. Bu alan noktalarla dolmaya başlayacaktır. Siz bir tuşa basana kadar noktalar rastgele dolmaya devam eder.

BOYAMA:

Bu modda kapalı bölgeleri doldurabilirsiniz (boyayarak). Bu moda "P" (paint) tuşuna basarak veya menü satırından "P"yi seçerek girebilirsiniz. Bu modda yapacağınız iş kursörü kapalı bir alanın içine götürüp butona basmak olacaktır. Kapalı sandığınız bölgede bir nokta dahi açık olsa bile boyama işlemi dışarı taşacaktır. Eğer kursörün hızını beğenmediyseniz menü satırından FAST'ı (klavyeden "@" tuşu) seçerek bu hızı arttırabilirsiniz, SLOW'u seçerek (klavyeden "*" tuşu) bu hızı azaltabilirsiniz.

Eğer menü satırının en sağında bulunan "EXT"'i seçerseniz (klavyeden ESC veya sola bakan ok tuşu) ekstra bir seçenek ekranına geçersiniz.

Şimdi de bu seçenekleri kısaca açıklayalım:

CLR:

Ekranı silmek için kullanılır. Eğer ekranı çizim ekranında iken silmek isterseniz klavyeden iki kere (!) "E" (erase) tuşuna basmanız gerekir.

FLASH:

Kursörün yanıp sönmesini açıp kapayabilirsiniz.

RESET:

C-128'in COLD START yapmasını ve bilgisayarın açılış durumuna gelmesini sağlar. (Pek tavsiye etmeyiz.)

COLOUR:

Ekranın Videoram'da bulunan ön ve arka plan renklerini değiştirebilmenizi sağlar.

SPRDEF:

Sprdef moduna geçerek sprite tanımlamanızı ve bu sprite şekillerini grafik ekranına yerleştirmenizi sağlar. Ayrıca kursörün yerine de değiştirebilirsiniz. Sprite'ları tanımladıktan sonra ekranın bir alt sırasında bulunan ve sprite numarasını ifade eden 1'den 8'e kadar numaralanmış kutulardan ekrana çizdirmek istediğiniz bir tanesinin numarasına oku götürerek butona basın. Çizim ekranına dönersiniz. Artık kursörü butona veya ENTER'a basarak o sprite'ı çizdirebilirsiniz. Bu moddan çıkmak için menü satırından veya klavyeden başka bir modu seçin.

RAMSAVE:

Bu seçenek size grafik ekranını "disk" veya "ramdisk"e saklayabilmenizi sağlar. Eğer çizdiğiniz bir resimde önemli değişiklikler yapacaksanız daha önce ramdisk'e kaydetmenizi tavsiye ederim.

RAMLOAD:

Bu seçenek size grafik ekranını "disk" veya "ramdisk"ten yükleme olanağı sağlar.

NOT: CLR, RESET, COLOR, SPRDEF, RAMSAVE, RAMLOAD seçenekleri önemli ve yerine getirildiğinde geri dönülemeyecek bazı durumlara yolaçabilecek olduklarından kullanıcının emin olup olmadığını sorarlar. (ARE YO SURE?)

Ekstra menü ekranından asıl çizim ekranına dönmek istediğinizde menü ekranının boş bir yerine kursörü götürüp joystick butonuna basın. Artık çizim ekranındasınız.

Nokta çizim modunda iken renk, ön plan/arka plan modları veya kursör hızında da değişiklik yaptığınızda program otomatik olarak "nokta koymama" moduna geçer. Bu moddan joystick butonu veya ENTER tuşu ile çıktığınızda ise menü satırındaki "-" işareti "+" ya dönüşür.

Klavye kontolleri toplu halde:

ENTER veya RETURN : Joystick butonunun görevini üstlenir. Numerik tuşlar : Kursör hareketi. + : Ön plan rengini arttırır. - : Arka plan rengini arttırır. C : Çizim modunu (renk) değiştirir (on/arka plan). W : Çizgi kalınlığını arttırır/azaltır. E (iki kere bas) : Ekranı siler. @ : Kursör hızını arttırır. * : Kursör hızını azaltır. . : Nokta çizimi moduna geçişi sağlar. L : Çizgi çizimi moduna geçişi sağlar. O : Daire çizimi moduna geçişi sağlar. B : Dikdörtgen çizimi moduna geçişi sağlar. F : Nokta doldurma moduna geçişi sağlar. P : Renkle boyama moduna geçişi sağlar. SPACA (Boşluk) : Bulunduğunuz koordinatı saklayarak menü satırına geçmenizi sağlar. Gerekli seçeminizi yaptıktan sonra tekrar bu tuşa basarak eski koordinatınıza dönmenizi sağlar. T : Tekst moduna giriş.

Bu yazıdaki programlar

Dergideki dökümlerden çıkarıldı; satırlar derginin kontrol toplamlarıyla doğrulandı ve programlar VICE emülatöründe denendi. Tarayıcıdaki C64'te çalıştırabilir, indirip bir emülatöre sürükleyip bırakabilir ya da gerçek bir C64'te LOAD "AD",8,1 ile yükleyebilirsiniz. "Sorun bulundu" yazanlarda bazı satırlar okunamadı ya da tutmadı; düzeltilmiş bir sürümünüz varsa contact@coze.org adresine gönderin.