Connessione slip tra il
C64 ed un PC
(pcNOS)
- Questo piccolo documento
indica come connettere a mezzo di una connessione SLIP un
Commodore 64 sul quale e' in funzione il sistema
operativo LUnix e un PC funzionante in DOS o Win9x.
- Per il momento sto
testando un programma chiamato NOS (Network Operating
System) che mi permette di interfacciarmi a LUnix in
TCP/IP a mezzo appunto di una interfaccia seriale.
- NOS e' un programma
scritto da e per i Radioamatori e permette lo scambio di
informazioni, posta e files a mezzo di canali radio.
- Nos puo' interfacciarsi
direttamente con le porte seriali del PC tramite il puro
protocollo SLIP, e questo e' proprio cio' che useremo..
- NOS include altri
servizi, come server TELNET, FTP, HTTP, SMTP, NNTP e un
vero e proprio BBS.
- In questo documento
verranno descritti solo server TELNET e FTP in quanto
solo questi servizi possono essere usati dal C64
- E' necessaria una
interfaccia seriale per la userport del C64, vi sono
molti kit di montaggio in commercio..
- Un cavo NULL-MODEM
- Pacchetto Lunix for C64, ';Up and Running';, ready for Tcp/Ip.
- NOS 1.10 or successivo, e' reperibile all'indirizzo:
http://www.gb7iph.demon.co.uk/AR_Soft/arsoft.html
- Scaricate NOS e copiatelo
nella directory c:/nos . Non lanciatelo per il momento,
create invece una directory chiamata c:\nos\public.
Create 3 nuofi files vuoti:
-
- c:\nos\ftpusers
c:\nos\domain.txt
c:\nos\autoexec.nos
-
- Scegliete un nome di
fantasia per il vostro pc ed un indirizzo IP. Se non
avete un indirizzo IP usate 192.168.0.1 . Non usate mai
questo indirizzo per collegarvi ad internet ma solo per
interfacciarvi con il vostro C64. Assumiamo che voi
abbiate scelto ';johnny'; come hostname e
192.168.0.1 come indirizzo IP.
- Il file ftpusers contiene
informazioni sugli utenti e sui loro privilegi di
accesso, per i nostri scopi andremo a definire solo 3
utenti, uno per il c64, uno per johnny e uno anonymous.
- Il file domain.txt contiene
informazioni sulla corrispondenza tra gli utenti ed i
loro indirizzi IP.
- Il file autoexec.nos infine
contiene i comandi che NOS eseguira' alla sua partenza,
parleremo piu' diffusamente di questi comandi piu' avanti.
- Editate il file ftpusers e
aggiungete le seguenti linee:
-
- anonymous * /public 1
c64 c64 /public 127
johnny johnny /public 1
-
- Il primo campo e' la login
dell;utente, il secondo e' la password (* significa
qualsiasi password) e il terzo specifica il path quando
accede a NOS tramite FTP. Il quarto numero varia tra 1 e
127 e rappresenta le permission degli utenti. Riferirsi
all Addendum per una spiegazione piu' approfondita.
- Editate il file domain.txt
file e aggiungete le seguenti linee:
-
- johnny IN A [192.168.0.1]
c64 IN A [192.168.0.1]
-
- I campi sono separati dal
carattere di tabulazione (TAB). Questo file definisce
l'associazione tra hostname e indirizzo IP.
- Editate il file
autoexec.nos file e aggiungete le seguenti linee:
-
- ip addr [192.168.0.1]
isa on
domain trace on
domain translate off
attach asy 0x3f8 4 slip c64 1024 200 2400
host johnny
trace c64 1111
tcp ti linear
tcp mss 1024
attended off
mbox max 8
route add 192.168.0.64 c64
echo refuse
smtp gate 192.168.0.64
start telnet
start ftp
start smtp
-
- In questo file andiamo a
definire l'indirizzo IP del NOS, il monitor dei frame, e
la porta seriale connessa al C64. Nell'esempio e' la
COM1, cambiatela se necessario come segue:
-
- 0x3f8 4 per base address
03f8 irq 4 (com1) oppure
0x2f8 3 per base address 02f8 irq 3 (com2)
...
- Definiamo anche
l'hostname ';johnny';, la traduzione dei
nomi/indirizzi IP, le temporizzazioni, il massimo numero
di utenti del BBS e la route verso il C64.
- Configuriamo inoltre ed
attiviamo il server SMTP (mail)
Alla fine del file attivimo inoltre i server TELNET e FTP.
- Collegare il cavo Null-Modem
tra la scheda seriale del C64 e il PC.
- Se state usando Win9x aprite una
sessione DOS e cambiate la directory a c:\nos.
Digitate il nome del file eseguibile (il nome puo'
cambiare a seconda della versione e di chi l'ha
compilato) seguito dalle opzioni ';-d c:/nos';
(notate la barra stile Unix), ad esempio:
-
- jn111dls -d c:/nos
-
- oppure
-
- u110l386 -d c:/nos
-
- Se tutto va come dovrebbe apparira'
il prompt ';Jnos>'; senza nessun tipo di
messaggio di errore.
- Accendete il C64, inserite il disco
di LUnix che avete creato precedentemente e digitate:
-
- LOAD ';LOADER';,8
-
- Al termine del caricamento del
loader digitate:
-
- RUN
- e aspettate che appaia il prompt di
LUnix.
Caricate la shell:
-
- L sh
-
- e aspettate il prompt ';#';.
-
- Caricate ora tutti i moduli
richiesti per il TCP/IP. Seguite la seguente lista:
-
- srs232std
slip 2400&
tcpip 192.168.0.64&
connd 23 sh&
-
- Con la prima linea di comandi
carichiamo il driver standard per la porta rs232, se usi
una cartuccia esterna tipo swiftlink dovrai caricare il
driver adatto, di seguito viene caricato il modulo che
inzializza il protocollo SLIP, la velocita' scelta e'
2400 baud.
- Il baudrate puo' variare in
funzione dell'interfaccia usata.
Andiamo quindi a caricare il modulo per il TCP/IP,
specificando l'IP address.
- Nota: questo indirizzo e' fisso ma
puo' essere variato ricompilando il kernel di LUnixl.
L'ultima linea inzializza un demone di connessione, tutte
le richieste alla porta 192.168.0.64:23 causeranno
l'esecuzione della shell (sh).
E' possibile caricare piu' di un demone
contemporaneamente, per esempio associando alla porta 100
il programma ';tcpipstat'; e aprendo una sessione
TELNET a 192.168.0.64:100 verra' eseguito il programma
sopracitato e l'output verra' rediretto opportunemente.
Al termine del programma la sessione verra' chiusa.
- Ora siamo pronti a connetere i 2
sistemi. I servizi forniti da NOS e che abbiamo
configurato sono:
-
- TELNET server:
-
- Dal lato C64 side digitare ';telnet
192.168.0.1 23'; In pochi secondi dovreste avere
sullo schermo il prompt ';login:'; di NOS.
Digitate ';c64';, ora dovrebbe apparire il prompt
';password:';... digitate nuovamente
';c64'; e vi troverete connessi al BBS di NOS.
- Notate che la porta 23 e' usata di
default da tutti i client di TELNET, cio' non ostante va
specificata sempre, almeno dal lato C64.
Riferitevi al manuale di NOS per maggiori informazioni
riguardanti i comandi del BBS.
-
- FTP server:
-
- Dal lato C64 side digitare ';ftp 192.168.0.1';. Avrete gli
stessi prompt di ';login:'; e
';password:';, ripetete le operazioni di cui
sopra.
- Al termine dell'operazione di login
avrete accesso ai servizi FTP offerti da NOS.
I file scaricabili dovrebbero essere messi nella
directory c:\nos\public.
Riferitevi al manuale di LUnix per i comandi supportati.
- TELNET Client:
-
- E'possibile aprire sessioni TELNET dal
prompt Jnos> Provate con:
- telnet c64
- Il programma di IP resolver dovrebbe
tradurre ';c64'; in ';192.168.0.64'; e
tentare la connessione, la porta di default e' la 23 (la
stessa associata dal comando ';connd'; su LUnix)
.
- Il motore del floppy drive del C64
dovrebbe girare per qualche secondo, al termine del quale
dovrebbe apparire il prompt ';Lunix ...... #'; di
LUnix sullo schermo del PC.
Da questa shell remota di LUnix e' possibile effettuare
qualsiasi operazione, come se si fosse realmente alla
console del C64.
- E' possibile aprire connessioni
multiple da/verso il C64, sfruttando il vero ambiente
multitasking offerto da LUnix.i
E' oltremodo possibile avere dei loop per testare le
prestazioni del link e del protocollo.i
Provate per esempio ad aprire una sessione dal PC vero il
C64 e (al prompt di LUnix) dare telnet verso il PC,
facendo questo sullo schermo del vostro PC avrete il
prompt del vostro BBS, con la differenza che state
transitando attraverso il C64 !
- Usando il comando del BBS
';s'; (send) e' possibile lasciare un messaggio
per l'utente del C64.
- Per prima cosa entrate nel
vostro BBS locale usando appunto il comando
';BBS';, usate login e password dell'account
';johnny';.
- Digitate ';s c64';,
specificate poi il titolo del messaggio e il messaggio
vero e proprio. Terminate il messaggio con
';/EX'; all'inizio di una nuova linea. Alcune
versioni di JNOS chiedono una ulteriore conferma per
l'inoltro del messaggio.
- Ora il messaggio e' memorizzato
nel database di NOS, se un utente si collega con
l'account ';c64'; apparira' un messaggio
';You have got new mail';.
- Con i comandi (R)ead, (L)ist o
(K)ill e' possibile leggere, listare o cancellare i
messaggi.
Naturalmente e' possibile fare la procedura opposta e
lasciare un messaggio per ';johnny'; o per
chiuque altro acceda al BBS.
- who access the BBS.
- Molte versioni sono disponibili
su internet, alcune sono adatte ai nostri scopi, altre
no. Non tutte le versioni infatti implementano il
protocollo SLIP. Io ho provato le seguenti versioni:
u110l386 (versione compilata da IW2DVL)
jn111dls (versione pre-compilata scaricata dal sito di
GB7IPH)
- Come detto prima, il file ftpusers
definisce i provilegi degli utenti.
- L'ultimo numero va calcolando sommando
i seguenti:
-
- 1 = Lettura files
2 = Scrittura files
3 = Sovrascrittura di files esistenti
4 = Gateway verso porte ax.25 port consentito (inutile se
NOS non fa da gateway)
16 = Telnet consentito dal prompt del BBS
32 = Gateway verso porte NET/ROM consentito (inutile per
quanto descritto in questo documento)
64 = Sysop remoto.
-
- Esempio: Un utente anonymous
dovrebbe essere in grado solo di leggere files e ninente
di piu', il suo privilegio sara' quindi ';1';.
- Esempio 2: Un sysop remoto dovrebbe
avere tutti i privilegi, il suo numero sara' quindi 127
(1+2+4+8+16+32+64).
-
- Il ';64'; permette
all'utente di digitare il carattere speciale
';@'; al prompt of BBS e di accedere al prompt
';Jnos>'; da console remote.
- La mia idea e' che NOS per DOS
e' uno dei programmi TCP/IP piu' flessibili e potenti per
i Radioamatori, anche se negli ultimi anni e' stato
rimpiazzato da FLEXNET, che e' molto piu' facile da
configurare.
- Lo sviluppo di NOS e' continuato
infatti in ambienti Unix/Linux, queste versioni sono
chiamate TNOS.
- In ogni caso la ritengo un
ottimo banco di prova per il nostro vecchio C64...!
- Riferitevi al manuale ufficiale
NOS per ulteriori settaggi o approfondimenti sui
parametri o sui comandi.
- Mandatemi soprattutto commenti,
domande, suggerimenti e correzioni su questo argomento,
grazie !
-
- Milano, 25 Ottobre 1999
Claudio Parmigiani, IW2FER
cparmig@tiscalinet.it