commodore.gen.tr

Commodore => Commodore Donanım => Konuyu başlatan: ilkerficicilar üzerinde Temmuz 18, 2014, 13:38:52 ÖS



Konu Başlığı: Commodore Programlarını RS232 ile Uzaktan Kullanma Yöntemi:
Gönderen: ilkerficicilar üzerinde Temmuz 18, 2014, 13:38:52 ÖS
Merhabalar,

C64'ü minimum değişiklikle uzaktan kullanabilmek için RS232 arabirimlerini modemleri vb. ortaya çıkarıp bir deneme yapmıştım. Sonuçlar şöyle:

BASIC'te ve komut satırında CMD ile ekran çıktısını başka cihazlara, dosyalara yönlendirebildiğimizi biliyoruz. Ancak, doğrudan modda (sanıyorum normal yolla başlangıç ayarları yapamadığımızdan) girişi yönlendiremiyoruz.

Ama, doğrudan modda olmasa da herhangi bir BASIC programını RS232 üzerinden çalışacak hale getirmek kolay.

Önce, programın en başlarına (değişkenlerden önce, çünkü BASIC alanının tavanı tamponlara ayrılacak) RS232 ayarını koyuyoruz ve ilk ayarlar için rastgele bir okuma yapıyoruz:

1 OPEN 129,2,0,CHR$(10)+CHR$(0):GET#129,A$

Ardından giriş çıkışı klavye ve ekran yerine RS232 cihazına yönlendiriyoruz:

2 POKE 153,2:POKE 154,2

hepsi bu.

programdan çıkarken ise

32767 POKE 153,0:POKE 154,3:CLOSE 129:END

ile giriş çıkışı eski haline getirebiliriz.

OPEN komutunun RS232 ile kullanımı için ayrıntılar C64 Programcının El Kitabında var, ben de oradan baktım. Ayarlar kısaca:

Open'daki 129= dosya no (127'den büyük olunca CR yerine CRLF karakterleri gönderiyor. 2= RS232 cihazı. CHR$(10) 2048bps için. 10 yerine 6 girilirse 300, 8 girilirse 1200bps oluyor. Default olarak en yüksek hız C64'te 2400bps ne yazık ki.

Örnek program:

50 REM BASIT GIRDI CIKTI ORNEK PROGRAMI
100 GOSUB 1000:REM EKRANI SIL
110 PRINT "==== MENU ===="
120 PRINT "1) SECENEK 1"
130 PRINT "2) SECENEK 2"
140 PRINT "0) CIKIS"
200 GET A$:IF A$="" GOTO 200
210 A=1+ASC(A$)AND7
220 ON A GOTO 300,400,500
290 GOTO 200
300 GOSUB 1000
310 PRINT "=== MENU 1 ==="
320 PRINT "..."
330 REM
390 GOTO 110
400 GOSUB 1000
410 PRINT "=== MENU 2 ==="
420 PRINT "..."
430 REM
490 GOTO 110
500 END
1000 FORI=1TO25:PRINT:NEXT:RETURN
1010 REM BASIT TERMINALLERI DE DUSUNEREK EKRAN TEMIZLEME
1020 REM

Şimdi bu örnekteki gibi basit bir BASIC programını RS232 ile uzaktan kullanılır hale getirmek için sadece şu değişiklikleri yapıyoruz:

0 OPEN 129,2,0,CHR$(10)+CHR$(0):GET#129,A$:POKE 153,2:POKE 154,2
500 POKE 153,0:POKE 154,3:CLOSE 129:END


Programın yeni hali:

0 OPEN 129,2,0,CHR$(10)+CHR$(0):GET#129,A$:POKE 153,2:POKE 154,2
50 REM BASIT GIRDI CIKTI ORNEK PROGRAMI
100 GOSUB 1000:REM EKRANI SIL
110 PRINT "==== MENU ===="
120 PRINT "1) SECENEK 1"
130 PRINT "2) SECENEK 2"
140 PRINT "0) CIKIS"
200 GET A$:IF A$="" GOTO 200
210 A=1+ASC(A$)AND7
220 ON A GOTO 300,400,500
290 GOTO 200
300 GOSUB 1000
310 PRINT "=== MENU 1 ==="
320 PRINT "..."
330 REM
390 GOTO 110
400 GOSUB 1000
410 PRINT "=== MENU 2 ==="
420 PRINT "..."
430 REM
490 GOTO 110
500 POKE 153,0:POKE 154,3:CLOSE 129:END
1000 FORI=1TO25:PRINT:NEXT:RETURN
1010 REM BASIT TERMINALLERI DE DUSUNEREK EKRAN TEMIZLEME
1020 REM
20000 REM ===============
21000 REM ILKER FICICILAR
22000 REM 17.07.2014
23000 REM ===============



Peki bu ne işe yarar?

Örneğin evdeki C64'ünüzü modeme ve telefon hattına bağlarsınız. Modeminiz otomatik yanıta ayarlanır. Ve işten ev telinizi laptopunuzun modemiyle arar ve C64'teki sevdiğiniz filanca programınıza bağlanırsınız.

Ya da masada monitör fazlalığı istemiyorsanız Commodore' bir NULL-MODEM kablosuyla bilgisayarınıza bağlar öyle kullanırsınız.

Bu arada bu yöntemin verimli kullanımı için PETSCII destekli bir terminal emülatörü programı fena olmaz.


Yöntemin amacıysa mevcut BASIC programlarından basitlerini sadece 2 satır ekle RS232 ile uzaktan kullanılır hale getirmek.

En basitinden bir RS232 arabirimi ise şurada: http://cbm.ficicilar.name.tr/uncorrected/rs232c24.txt (http://cbm.ficicilar.name.tr/uncorrected/rs232c24.txt)

Deneyeceklere kolay gelsin.

Şimdilik hoşçakalın.

-ilker.


Konu Başlığı: Ynt: Commodore Programlarını RS232 ile Uzaktan Kullanma Yöntemi:
Gönderen: Geos üzerinde Temmuz 18, 2014, 22:34:34 ÖS
elimde c64 modem var deniyecem .tş


Konu Başlığı: Ynt: Commodore Programlarını RS232 ile Uzaktan Kullanma Yöntemi:
Gönderen: guru68 üzerinde Temmuz 19, 2014, 00:11:59 ÖÖ
ise yarar... tesekkurler