ŞER PORT

Register” veya diğer bir deyişle “Bilgi Yön Registeri” anlamına gelmektedir. Adından da anlaşılacağı gibi burada bilgilerin yönü belirlenir. Fakat bu yön nasıl belirlenir? DDR registerindeki X (0-7) Bit'ine User Port'taki bilgi yollarından PBX (0-7) karşı gelmektedir. Örneğin 2 numaralı Bit bu registerde *1' değerini alırsa, PB2 yolu veri çıkışı olarak belirlenir. Eğer bu Bit *0” değerini alsaydı, bu yol bir veri girişi olacaktı. Daha önce sözü geçen ikinci register ise esas verileri içerir ve Port Register'i diye adlandırılır. Bilgi Yön Registeri'ne 255 değerini yazalım. Bu durumda sekiz hattın rece kullanılmaya başlanmıştır. 1 2 3 5 6 1 kA 10 a2 RS232 ve Eprom Programlayıcı türü l cihazlar User Port'tan yönetildikleri miz gibi, yazıcılar da buraya bağlanır. A B c D E F H J K L M N Şimdi C-64'ün bu ilginç çıkış ünitesini daha yakından inceleyelim. MR Resim 1'de User Port'un bağlantı PIN YERLEŞİM — YERLEŞİM tablosunu bulabilirsiniz. Burada özel- 1 GND Â GND likle alt ve üst taraftaki yolların de- | taa ğişik fonksiyonlara sahip olduğuna 2 * SV, max. 100 mA 1 B HE CP1 dikkat edin. Bu nedenle User Port'a 2 HRESET Cc PBO Kod ba kaka aş kala; kro- 4 JoYO odil veya bu tip kıskaçlar kullanmayın. İki taraftan yapacağınız bir kısa m5 .—E | PB2 Sazım cın devre, bilgisayarınızın içindeki 6526 OYA. E $ PB3 entegre devrelerin yanmasına neden | LIGHT PEN PEN | H PB4 zey” ak bu çıkışa bağlı 8-Bit 8 CASSETTESWITCH — | PBS u çıkı: 1 8-Bit- Paralel Port'un nasıl programlanaca- 9 K PB6 ğını göstermek istiyorum. Bu port ol- 10 |9VAC, max. I00MA | |PBZ dukça ll AC, max. M | CBa şın, çok yönlü kullanım olanakları t T sunmaktadır. Bu iş için PBO ile PB7 —la GNDİ — L.N arası çıkışlar kullanılır (PIN C PIN L). RESİM 1: C-64 User Port'unun bacak bağlantı tablosu (Bilgisayarın arkasından Paralel Port üzerinden bilgileri — bakış).

Bilgi Port registeri yön registeri C 64 56579 56577 tümü çıkış konumuna gelir. Port Registeri'ndeki 255 değeri ise yine tüm hatlardan 45 V gerilim çıkmasını sağlar. Port Registeri'ndeki O değeri ise belli bir çıkışı GND, yani toprak konumuna getirir, Görüldüğü gibi burada da Bilgi Yön Registeri'nde olduğu gibi gerilim konumları Bit'ler yardımıyla belirlenir (1 - High, 0— Low). Aynı şekilde Bit O, PBO'a karşı gelmektedir. Bu Port'tan elde ettiğimiz gerilimlerin nasıl ileride detaylı olarak göreceğiz. İkinci örnek olarak Paralel Port'- un nasıl giriş olarak kullanılacağını görelim. Bilgi Yön Registeri'ne 0 yazılırsa, tüm veri hatları giriş konumunu alır. Şimdi dışarıdan bazı bilgileri bu Port'tan girelim. Bu işlem veri hatlarına 4 5 V veya bilgisayarın besleme geriliminin GND'si bağlanarak gerçekleştirilir. Burada yine “0' GND ve '1” anlamına gelmektedir. Fakat girişlerden herhangi birine GND veya 4 5V bağlanmasa da Port Registeri'nde değeri elde edilir. Bu şekilde önemli bir bağlantı kazancı sağlanır. User Port'taki Bit kombinasyonu her an Port Registeri okunarak öğrenilebilir. Eğer veri hatlarında bir değişiklik olursa, bu hemen kendiliğinden Port Registeri'ne bildirilir. Daha önce belirtildiği gibi giriş ve çıkış fonksiyonları istenilen hatlara dağıtılabilir. Örneğin 2, 5 ve 7 numaralı hatlar çıkış olurken, kalanlar giriş olabilir. Bilgi Yön Registeri'ne yazarsak 2., 5. ve 7. Bitler “1” değerini alır, yani çıkış haline gelir. Bu çıkışlardaki gerilim konumları Port Registeri'ndeki 2, 5 ve 7 numaralı Bit'lere POKE edilmeli ve girişler hakkındaki enformasyonlar da 0, 1,3, 4, 6 numaralı Bit'lerden okunmalıdır. Bu kadar teorinin ardından programlama işlemine geçebiliriz. Öncelikle yukarıda bahsedilen iki registerin adreslerini öğrenmelisiniz. Bunlar Resim 2'de görülmektedir. Şimdiye kadar bilgisayarınızı daha mantıklı bir şekilde kullanabilmeniz için gerekli her şeyi öğrendiniz. Artık bir alarm sistemi programlayabiliriz.

RESİM 2: User Port registerleri.

User Port'taki Alarm Sistemi:

“Alarm” adlı programı yazın ve RUN ile başlatın. Ekranda Paralel Port'un bağlantı planı görülecektir. Bu arada hemen belirtelim, alarm sistemi için bir adet User Port konnektörüne ihtiyacınız olacaktır. Konnektörün dört kenar bağlantısından herhangi birine (— GND bkz. Resim 1) kablo lehimleyin ve User Port'a takın. Kesinlikle iki bağlantı birbirine değmemelidir. Şimdi kablonun diğer ucunu elinize alın ve PB7'ye kadar olan yollardan birine değdirin. PBO program tarafından alarm cihazında çıkış olarak kullanıldığı için kesinlikle buraya değdirmeyin. Hangi hattın doğru olduğunu Resim 1'den rahatça anlayabilirsiniz. Kablo giriş hatlarından birine temas ettiğinde bir alarm sesi duyulacak, ekranın kenarındaki renkler değişecek ve PBO çıkışına * 5V gerilim verilecektir. Ayrıca ekranda hangi hattın alarm sistemini devreye soktuğu görülecektir. Eğer kabloyu hiçbir yere değdirmezseniz, girişler High sinyali alacaktır ve tüm alarm sinyalleri silinecektir. Şimdi programa bir göz atalım. Değişkenler, Port Registeri, SID- Chip'i ve ekran için gerekli kodlamalar yapıldıktan sonra 390. satırda Port Registeri (R değişkeni) 254'ten başka bir değer alıncaya dek okunur. Neden 254? 254, birden yediye kadar olan yani alarm çıkışı dışındaki tüm Bit'lerin değerliklerinin toplamıdır. Bu alarm sisteminin tüm kontaklar açık durumdaki dinlenme konumudur (High sinyali). Alarm verildiğinde 430. satırda alarm çıkışı açılmaktadır. 470. satırdan itibaren ise yeni bağlantı planı çizilmektedir. Burada her bağlantı kontrol edilmekte ve sonuç ekranda gösterilmektedir.

Son olarak bilgisayar alarm bitişi için beklemektedir. Eğer hatlardaki temas devam ediyorsa, yani alarm veriliyorsa, bağlantı planı tekrar çizilir. Zira bu arada bazı değişiklikler olmuş olabilir. Diğer durumda ekran tekrar başa döner. Programı dikkatlice inceleyen birisi bunun gerçek bir alarm sistemi olarak kullanılmaya pek uygun olmadığını kolaylıkla söyleyebilir. C-64'ün bu alanda bazı zayıf yanları vardır. En önemlisi tüm sinyaller güvence içinde algılanamaz. Eğer temas, yani alarm süresi, kısa ise C-64 bu arada Port Registeri'ni okumak yerine örneğin 390. satıra atlamayı gerçekleştiriyor olabilir. Bundan başka alarm sinyali bilgisayar tarafından algılandıktan sonra nereden verildiği ilk 420. satırda belirlenmektedir. Bu satıra gelinene kadar geçen zaman sürecinde bir şeyler değişebilir. Fakat tüm bunların çok kısa temaslar için

Bilgi Port registeri yön registeri C 64, PORT 1 56323 56321 C 64, PORT 2 56322 56320

RESİM 3: Control Port registerleri.

RESİM 4; PADDLE ATEŞ TUŞU İÇİN GEREKLİ REGİSTERLER.

Bağlantı Pin Bit Bilgi yön Port registeri | registeri JOY3 | 56323 | Sol 56323 | 56321 Bağlantı Pin| Bit | Bilgi yön Port registeri | registeri JOY3 56322 | 56320 Sol| 56322 5632' Bağlantı Bit| Bilgi yön Port | registeri | registeri Sağl 7 | Sol JOY 2 8 geçerli olduğunu unutmayın, Diğer taraftan Basic'te yazılmış olan program gerçek bir alarm sistemi için çok basit kalmaktadır. Örneğin temas bir saniye sürerse sadece bir saniye alarm verilecektir ve bu birçok durumda yetersiz kalır.

Şifreli Kilit:

Alarm sisteminin ardından yeni bir program örneğine geçebiliriz. “Şifreli Kilit” adlı programı yazın ve RUN edin. İlkinde olduğu gibi PBO çıkış, geri kalan hatlar da giriş olarak kullanılmaktadır. Yine tüm işlemler sırasında en ufak bir hatanın bile bilgisayarınıza önemli hasarlar verdirebileceğini düşünerek hareket edin. Şimdi gelelim programın nasıl işlediğine. PB2'den PB7'ye kadar olan veri hatlarına altı basamaklı bir şifre girmelisiniz. Eğer bu şifreyi doğru girerseniz, PBO high konumunu alır, yani dışarıya 4 5V gerilim verir. Bu gerilimi kullanarak isterseniz bir kapıyı açtırılabilir veya gizli bir cihazın çalışması sağlanabilir. Bu kumanda işlemlerinin nasıl gerçekleşeceğini daha ileride göreceğiz. PBI1 hattı üzerinden şifre girişi baştan başlatılır (herhangi bir hatada veya bir kez kilit açıldıktan sonra). Girişler sırasında her temasta ekrandan bir uyarı sinyali duyulur. 250, ve 260. satırlarda bilgisayara iki değişken belirtilir. Bunların ne anlama geldiğini kısaca belirtmek istiyorum. CL, girilecek olan şifrenin uzunluğunu yani kaç basamaklı olduğunu içermektedir. CI$ değişkeninde ise şifrenin kendisi saklıdır. Bu iki değişkeni istediğiniz gibi değiştirebilirsiniz. Programda bunlar özellikle akılda kolay kalacak şekilde seçilmiş- Ur. C2$'da giriş hatlarına GND'yi değdirerek yazdığınız şifre oluşturulur.

Bu veri giriş sisteminin en önemli avantajı, bilgisayarın tamamen ayrı bir yerde örneğin başka bir odada olabilmesidir. Yani bu kilit tamamen klavyeden bağımsız olarak çalışmaktadır. Böylelikle bilgisayara dışarıdan bir müdahale yapılamadığı için, şifrenin program dökümünden elde edilmesi imkânsız hale gelir. Program REM komutları ile yeteri kadar açıklık kazanmıştır. Bu noktada sadece bir sinyal verildiğinde programın RUN ile baştan çalıştığını söylemek yeterlidir sanırım. Bu programda da her şey en basit hali ile ele alınmıştır. Diğer bir deyişle Basic bilgisine güvenen herkes bunu rahatça daha da geliştirebilir. User Port'ta neler olduğunu gördükten sonra bir adım geriye döneceğiz. Yazının ilk bölümlerinde cevapsız kalan bazı soruları şimdi cevaplamak istiyorum. İlk olarak bilgisayarın Joystick ile veri girişini göreceğiz. Sanırım şu ana kadar Joystick ve User Port programlanması arasında bir benzerlik olduğunu farketmişsinizdir. İkisinde de öncelikle bazı registerler açılmalı ve elde edilen O ve 1 rakkamları doğru bir şekilde değerlendirilmelidir. Joystick Portu'nda da Bilgi Yön Registeri'nde olduğu gibi giriş ve çıkışlar programlanmalıdır. Bildiğiniz gibi Yön Registeri'nin Bit'lerini silersek tüm hatlar giriş haline gelir. Burada eğer tüm Bit'lere | değerini yazarsak ne olur diye bir soru aklınıza takılabilir. Cevap yine aynıdır: Joystick Port'un tüm hatları çıkış konumuna gelir. Bu Port hakkında daha detaylı bilgiyi ilerki satırlarda bulabilirsiniz. Resim 3 buradaki gerekli tüm registerlerin adreslerini göstermektedir. Birçok kişinin merak ettiği diğer bir nokta ise klavye, Joystick, light pen (ışıklı kalem) ve paddle'ın neden daima birbirlerini engellediğidir. Bunun nedeni yukarıda sayılan cihazların hepsinin aynı veri yollarını kullanmasıdır. Böyle bir durumda her seferinde kullanılacak veri cihazı bilgisayara belirtilmelidir. Burada aklınıza ikinci bir soru takılabilir: Neden klavye Joystick Portlarının veri yollarını kullanmaktadır? Klavye aslında satır ve sütunlarda oluşan bir matris aracılığı ile bilgisayara bağlanmıştır. Her bir kesişim noktasında bir tuş bulunmaktadır ve bu tuş basılı olduğu zaman kesişim noktasının iki ucunu birleştirmektedir. İşletim sistemindeki klavyeyi soran rutinler, bir satıra bir sinyal yerleştirmekte ve daha sonra bu sinyalin hangi sütunda ortaya çıktığına bakarak basılan tuşu belirlemektedirler. Eğer hiçbir sinyal ile karşılaşılmazsa bu satırda bir tuşa basılmamış demektir ve sinyal bir sonraki satıra aktarılır. Bu yöntem neden bazı tuşların diğerlerine nazaran üstünlüğü olduğu sorusuna cevap vermektedir. Arka arkaya iki tuşa birden basarsanız, hep aynı tuşun ekranda gösterildiğini görebilirsiniz. Bilgisayarın iç yapısının bir özelliği olarak sinyalleri veren ve enformasyonları okuyan parçaların sayısı sınırlı olduğu için, yukarıda anlatılan satır sütun matrisi Joystick ve diğer veri aletleri ile aynı yolu kullanmaktadır. Bu nedenle genellikle Control Port Registeri'ne bir değer POKE edilirse, klavye işlevini kaybeder, çünkü elde edilen matris sinyalleri doğru bir şekilde yorumlanamamaktadır. Belleğin bazı registerleri devamlı değişmektedir. Buralara her seferinde sinyallerin konumları yazılmaktadır. Bilgisayar için sinyalin nereden geldiği hiçbir önem taşımaz, sadece bulunduğu satır ve sütun kontrol edilir. bu bilgileri örneğin Port 1'e takıbir Joystick hareket ettiğinde, ekranda anlamsız harflerin neden oluştuğunu açıklamaya yeter sanırım. Son olarak Joystick'in ardından Paddle'dan kısaca söz etmeden geçemeyeceğim, zira burada da User Port'ta edindiğimiz programlama bilgilerini kullanacağız. Her şey aslında tamamen aynı: Bellekte Paddle için ayrılmış olan DDR'nin bazı Bit'- lerine O değerini vererek Control Port'u giriş haline getireceğiz. Bundan sonra Port Registeri'ni okuduğumuzda, o Bitlerde elde edeceğimiz O değerleri o hattan giriş yapıldığını gösterecektir. Fakat Paddle'da bu anlatılanlar sadece ateş tuşu için geçerlidir. Resim 4'te C-64'ün iki Control Port'u için gerekli register adreslerini Burada Paddle'lar bilgisayara takılı iken bağlantı kablolarının pozisyonuna göre sağ ve sol diye adlandırılmıştır. Normalde de sağdaki POTX'e, soldaki ise POTY'- ye bağlıdır. Paddle da bilgisayarın içinde Joystick ile aynı veri yollarını kullandığı için klavye ile aynı anda kullanılamaz. Şimdilik bu kadar bilgi yeterlidir sanırım, Gelecek sayıdaki yazıda bugün kısaca değindiğimiz Control Port'larını daha kapsamlı bir şekilde ele alacağız. Ayrıca bir Light Pen'- in nasıl yapıldığını ve nasıl işlediğini de bu yazıda bulabileceksiniz. Bu aylık hoşçakalın...

Yazının programları döküm
ekindedir.
IC1 27128 Eprom
1C2 74CS16
1C3 4044
1C4 4044
| Ci, C2
D1-D4 1N4148
Ri 10K

37. sayımız, 55. sayfa Resim 30de yayımlanması gereken parça numaralarını özür dileyerek yayınlıyoruz. LA 5

Commodore

COMMODORE 64'ÜN BELLEK

PRRT 009B 155 Teyp karakter paritesi DPSW 009C 156

Flag: Bu flag teypten bir bayt'ın okunduğunu ifade eder. MSGFLG 009D 157 Flag: Adres, 128 veya daha büyük bir değer alındığında, komutların Direk moddan girildiğini, 0'a eşit olduğunda ise komutların Program modundan işleme konduğunu gösterir. PTRI 009E 158 Teyp okuma hata kütüğü 1. PTR2 009F 159 Teyp okuma hata kütüğü 2.

TIME 00A0 - 160 - 162 Bilgisayarın dahili saati. Bu saatin özelliği saniyenin 60'da biri kadar hassas olmasıdır. Bilgisayar çeşitli işlemleri yürütebilmek için bu saati kullanır. Bu adreslerde şu işlemler yapılır: Her 1/60 saniyede, 162 adresindeki sayıya, 255 oluncaya kadar 1 değeri eklenir. Sonra 162 adresi 0 değerini alır ve bu sefer 161 adresindeki sayı 255 oluncaya kadar 1 ile toplanır. Aynı işlem 160 adresi için de yapıldıktan sonra üç adres 0 olur. Bu işlem BASIC'te TI$ değişkeninde saklanan saati meydana getiriyor. Program 1'den bu hassas saatten reaksiyon hızınızı ölçmede yararlanabiliriz.

PROGRAM ADI : PRG-İ
080188 PRINT <129>
08118 PRİNT "<3SPACE REAKSİYON HIZI"
00120 POKE 53280,1:POKE 53281,1:POKE &dE,
&
08130 <232>
680140 PRİNT <ada>
68150 PRINT "KIRMIZI KALBİ <196)
880168 PRINT "HEMEN BOSLUK TUSUNA BASARAK" <208>
©0178 PRINT "REAKSİYON HIZINIZI GÖRÜN" <a24>
681880 <893>
086190 FOR TO
862868 FOR Ds1 TO 3:PRİNT
FOR TO 12:PRİNT CHR$C29)::NEXT <041>
686220 PRINT CHRSC115) <a55>
©0238 FOR 1-160 TO 162:POKE
00248 IF PEEKC197)-64 THEN 248 <177)>
00250 PRİNT 161) 425

Can ÖZTÜRK

Program tuşa ne kadar hızlı basabildiğinizi göstermekte. Saniyeden daha kısa süreler de program tarafından ölçülebiliyor. BASIC'teki TI sayacı, bilgisayarınızı açtığınızda 0'dan saymaya başlar. Bu sayaç aynı zamanda saati de ifade ediyor. Saat, 24 saat üzerinden yani öğleden sonra bir'i 13:00 şeklinde gösterecek şekilde çalışıyor. Bu saati isterseniz TI$ = "0" ile resetleyebilir veya TI$ = "153000" (öğleden sonra üç buçuk) yazarak ayarlayabilirsiniz, ancak C-64'ün AMIGA gibi pille çalışan bir saati olmadığından (bellek genişletici takılmış makinelerde) bu ayar bilgisayar kapatıldığında kaybolacaktır. Saati resetlemenin başka bir yolu da 160-162 adreslerine 0 değerini poke etmektir, yani: FOR I=160 TO 162: POKE I,0: NEXT Programda 270. satır olarak aşağıdakini kullanın. 270 PRINT TI/60; "SANİYE" Program 2, ekranda TI$ değişkenini kullanarak saati görmenizi sağlar. TI$ ve TI'ı kendi değişkenlerinizin isimleri olarak kullanmaya dikkat edin. - 00A4 163 - 164 Geçici bilgi bölgesi.

CNTDN 00A5 165 Kaset senkronizasyonu. BUFPNT 00A6 166

Pointer: Kaset I/O buffer'ı IMBIT 167 RS-232 Giriş bit'leri teyp.

PROGRAM ADI : PRG-2
6821800 CHRSC147) <ia2s>
©8110 POKE 53280,1:POKE 53281,1:POKE 646,
& <196>
PRINT ,"SAAT",
PRINT <235)
986140 PRINT
MID$SCTIS,5,2) <144>
80150 GOTO 138
BITCI vb. cihazları kullanabilme imkânı
168 unutulmamış.
RS-232 Giriş bit'leri sayaç. EAL
RIMOME O0AE - OCAF 174 - 175
169 LOAD veya SAVE işlemlerinden

RS-232 Flag: Başlangıç bit'i için kontrol.

RIDATA 00AA 170 RS-232 Giriş bayt'ı buffer/teyp. RIPRTY : 00AB 171 RS-232 Giriş paritesi SAL

00AC - 172 - 173 Pointer: Teyp buffer'ı/ekran kaydırma.

Bu yukarıdaki adresler RS-232 zero-page belleği olarak biliniyor ve sadece RS-232 cihazları tarafından kullanılabiliyorlar. C-64'ün işletim sistemi tasarlanırken printer, modem birimini yaparken, bilgisayar, bilgiyi okuyacağı veya üzerine yazacağı bir bellek bölümüne bakar. Eğer siz veya program BASIC değişken pointer'larının başlangıcını (adr. 45-46) değiştirirse, ki böylece BASIC için daha çok text saklayabilirsiniz, teybiniz veya disket sürücünüz bunu fark edemeyecek ve belleğin tamamını okumayacak veya kaydetmeyecektir. 45-46 adreslerinin değerini değiştirdiğinizde ve bir programı yüklemek veya kaydetmek istediğinizde, bu adresleri de 45 ve 46 adreslerindeki değerlerin aynılarıyla POKE etmeyi unutmayın. CMPO 00B0 - 00B1 176 - 177 Teyp zamanlama sabiti,

CİHAZ

CİHAZ NUMARASI

00B2 - 00B3 178 - 179 Pointer: Teyp buffer'ının başlangıcı. Bu, buffer'da dolaysız bir zeropage atlama rutini olarak kullanılabilir. BITTS 00B4 180 RS-232 Çıkış bit sayacı. 180 ve 182 arasındaki adresler 166-171'dekilere benzer çalışıyorlar. MXTBIT 00B5 181 RS-232 gönderilecek bir sonraki bit/kaset sonu flag'ı.

RODATA 00B6 182 RS-232 çıkış bayt FMLEM 00B7 183

Kullanılan dosya adının uzunluğu, Bu isimdeki harflerin sayısıdır. Eğer dosya adına DOSYA$ diyecek olursanız PRINT LEN (DOSYA$) ın vereceği değere sahiptir.

LA 00B8 184 Kullanılan mantıksal dosya adı. SA 00B9 185

Kullanılan ikincil adres. İkincil adres BASIC'te OPEN komutu ile birlikte kullanılır ve diğer alet açıldıktan sonra (OPEN komutu ile) ne yapması gerektiğini belirtir. (Şekil 1)

İKİNCİL ADRES | KARŞILIĞI

Disket Sürücü

0-Giriş dosya adı 1-Çıkış 2-Çıkış kaset sonu 0 kontrol sicili 0-büyük harf/ PRINT yazı grafikler

T-büyük/küçük

2-14 bilgi kanalı sürücü, dosya tipi, oku/yaz

15-komut kanalı komut

Örneğin: OPEN 1, 4, 7

Bu komut bir printer kanalı açar (cihaz 4) ve printer'a büyük ve küçük harfler yazmasını sağlar. Eğer kasede borçlarınızla ilgili bilgi kaydetmek istiyorsanız;

OPEN 3, 1, 2 “BORÇLAR”

komutu 3 numaralı dosyayı (bu 1 ile 255 arasında herhangi bir sayı olabilir) kasete (ikincil adres olan 1 sayısından dolayı) yazıp sonuna kaset sonu (EOT) belirteci yerleştirecektir. Bu belirteç programın daha fazla okuma yapmamasını sağlar.

FA 00BA 186 Kullanılan cihaz numarası. FNADR

00BB - 00BC 187 - 189 Pointer: Kullanılan dosya adı.

ROPRTY 00BD 189 RS-232 Çıkış paritesi. FSBLK 00BE 190 Teyp okuma/yazma blok sayacı. MYCH 00BE 191 Seri çıkış buffer'ı CASI Teyp motoru kontrolü. STAL

- 00C2 193-194 I/O başlangıç adresi. MEMUSS 00C3 - 00C4 195 - 196 Kasetten yüklenirken bilginin geçici olarak saklanması için kullanılır. LSTX 00C5 197 En son basılan ve klavye buffer'ına en son girilen tuş. Eğer bir tuşa basılmamışsa bu adresin değeri 64 olur. 160-162 adresleriyle ilgili olan program bir tuşa basılıp basılmadığını anlamak için bu adresi kullanır. Eğer 1'den fazla tuşa basılmışsa en yüksek öncelikli tuş'un karakteri ekranda görünür. Program 3, bazı tuşların önceliklerinin listesini verecektir. (Şekil 2) MDX 00C6 198 Klavye buffer'ında mevcut karakter sayısı. Normal değer: 0. Bu adresi 0 ile POKE ederseniz klavye buffer'ını boşaltmış olursunuz. Tuşlara hızlı biçimde basılan oyunlar ve diğer uygulamalar için bu çok yararlıdır. Get komutunu kullanmadan önce daima buffer'ı boşaltmalısınız. (Program 4 ve 5) Birinci program herhangi bir tuşa, ikincisi ise 'C' tuşuna basıldığında devam eder. RVS 00C7 199 Ters karaktere (reverse) dönme. Normali: 0. Ters karakterler yazıldığında adresin değeri 18 olur. Keza ters karakter ile yazmak için 18 ile adresi POKE edebilirsiniz, ancak RVS ON ve RVS OFF tuşlarını kullanmak daha kolaydır. IMDX 00CB 200 Pointer: INPUT komutu için mantıksal dosya sonu. Bu adres INPUT kaydının sonundaki ekran kolonu numarasını verir. Yazı içinde noktalı virgül veya kursor tuşlarını kullanmadıkça bilgisayar ekranın üçüncü sütununa soru işareti koyacaktır. INPUT'un pozisyonunu değiştirmek için örnekler: (Program 6)

ÖNCELİK / TUŞ TABLOSU

TUŞ NO TUŞ NO TUŞ NO TUŞ NO 0 İNST 82 9. 48 1 RET 17 R 33 1 49 * 2€ CRSR ig: ©p 34 S0. A 3 19 6 25.00 51 4 fl 2010 36 M 52 5 B ar 6 £5 22 TF 38 0 54 1 7414 CRSR 23. 39 N 58 8 3 M7 56'a 9 Al S9. — 10 A :Ğ #2 > L 58 | 39 <2 12 z 28 B 44 60 SPC 137145 20: | 61 M.B 30 46 © 62 © 15 47 63 PROGRAM ADI : PRG-3 ©0100 GET A$ ©0118 IF THEN 108 <033> ©8128 <174> GOTO PROGRAM ADI | PRG-4 POKE 198,0 00110 PRİNT "DEVAM ETMEK İCİN BİR BA SIN” <118> 00120 GET R$ 00130 IF THEN 1208 <197> PROGRAM ADI © PRG -5 00120 POKE 198,0 00110 PRİNT "DEVAM ETMEK ICİN 'C' TUSUNA BASIN" <asa> GET R$ 00136 IF R$<>"C" THEN 120 10 INPUT" 2 INFUT" MERHABA, YARDIM GEREKLİ 14 ZO

© Haberler © Reklam Harcamaları © Gazete ve Dergi Tirajları © Her Ay Bir Kampanya Reklam Müdürleri © Reklam Filmleri ve Yaratıcıları © Sektör Raporları © Araştırmalar © Çeviriler © Grafik Dünyası © Matbaalar © Hayali Kampanyalar