Commodore sayı 36, sayfa 23

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 23

PROGRAM ADI : PRG-İ 00001 <a2a> PRİNT "<CTRL-7 10D OLİN ><4LEF ," 00003 FOR 15631 TO 636:POKE 1,13:NEXT <187> POKE 198,6 09005 IF PEEK(45)<2 THEN POKE 43,PEEK(45) 44,PEEK(46)-1:END <a55> 00006 POKE 43,PEEK(45)-2:POKE 44 ,PEEK(46) <ası>

programları veya rutinleri eklediğinizde 1'den 6'ya kadar olan satırları silin. Eğer 1541 disket sürücünüz varsa aşağıdaki programı yazın.

v

Programı RUN ile çalıştırıp ekranda belirtilenleri yapın. Yukarıdaki programda olduğu gibi işlemleri bitirdiğinizde 1'den 7'ye kadar olan satırları silin.

PROGRAM ADI : PRG-2

80001 INPUT "HANGI PROGRAMI EKLİYEYİM" * <isa> ) 80003 PRİNT "<CTRL-7><CLR)<3DOWN LORD" 7 <a55> 200904 FOR 15631 TO 640:POKE 1,13:NEXT <154> ©0005 POKE 198,10 00006 IF PEEK(45)<2 THEN POKE 43,PEEK(45) -2*255:POKE 44 <ana> 90007 POKE 43,PEEK(45)-2:POKE PROGRAM ADI : PRG-3 63000 REM — ** */2- LİST kk 63001 SAZPEEK (44) *256*PEEK(43)-1 63002 LN-PEEK (SA*3) KESE 63003 PRİNT T 63004 POKE 631,19:POKE 632,17:POKE 633,5: POKE 634,13:POKE 635,19:POKE 636,13 63005 POKE <e36> 63010 IF PEEKC197)543 THEN "-" TUSUNU KONTROL <253> 63020 IF PEEKC197)-40 THEN "4" TUSUNU KONTROL 63030 GOTO 63108 IF THEN 63180 <a34> 63110 SA-SA*5IGOTO 53002 <a26> 63200 AND )<>8 AND PEEK<SA-3)<>0 THEN <124> 63216 GOT0 Esada

Eğer bu programlarınızdan satır numaraları aynı olanlar varsa bunları değiştirmelisiniz. Şimdi programın nasıl çalıştığına bakalım. İlk önce 43 ve 46 adreslerinde bazı değişiklikler yaparak programın kendisini yüklenecek programın uzağına taşıyoruz. Sonra 3. satırda önce LOAD komutu sonra da uzaklaştırdığınız programınızı tekrar bulmanızı sağlayacak POKE komutları ekrana yazılıyor. 4. satırda klavye buffer'ını (643-640 adresleri) taşıyıcı return ile doldurup 198 adresine oraya kaç tane return koyduğumuzu söylüyoruz. 6. ve 7. satırlar bellekteki programı bilgisayardan gizleyerek yeni bir tane yüklediğinizde kaybolmasını önlüyorlar. Program biterken bilgisayar daha önce taşıyıcı return'lerle (CHR$(13)) uygun biçimde hazırladığımız input buffer'da ne varsa bunları aktif hale getirir. Yani program gerekli komutları kendisi yazar ve bunları taşıyıcı return'lerle sizin yerinize kendisi girer. Aşağıdaki kayma rutini aynı kavramlara göre çalışmaktadır. Bu rutin bir defada tek bir program satırı görmenize imkân tanımaktadır.

Bu programı kullanmak için şunları yapın: 1) Kaydırmak istediğiniz programı yükleyin. 2) BASIC'ten satır numarası kullanmadan direkt modda şu satırı girin: CLR: POKE 43,PEEK(45)-2: POKE 44, PEEK(46) Böylece bilgisayar sonraki adım için gerekli belleğin uçtuğunu sanacak. 3) Kaydırma programını yükleyin. 4) Aşağıdaki satırı direkt modda girin. POKE 43,1:POKE 44,8 5) RUN yazıp return'e basın. 6) Eksi (-) tuşuna basarak programı bir sonraki satıra kaydırın. Artı (+) tuşuyla önceki satıra dönebilirsiniz, ancak en başta en az bir kere aşağıya kaydırma yapmalısınız, yoksa program duracaktır. Gelecek ay alt adresleri incelemeye devam edeceğiz. Şimdilik hoşça kalın.

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