Netzwerktaugliche Programme für den C64
Um das RR-Net wirklich sinnvoll nutzen zu können, braucht ihr natürlich auch entsprechende Software. Ich gebe hier einen kleinen Überblick, was so möglich ist, ohne jeglichen Anspruch auf Vollständigkeit. Einige Programme (z. B. Contiki) beschreibe ich ausführlich, andere erwähne ich nur kurz. Außerdem gehe ich davon aus, dass das RR-Net im Turbo Chameleon 64 steckt.
The Final Replay (TFR)
Eine Möglichkeit, das im Turbo Chameleon verbaute RR-Net MK3 zu nutzen, besteht darin, ein ROM-Image mit Netzwerkunterstützung zu verwenden. Ich habe ja bereits gezeigt, wie man die CODENET-Funktion von ‚The Final Replay‘ (TFR) verwendet. Dieses Freezer-Modul bietet u. a. neben CODENET auch noch ein sog. NETDRIVE. Wo ihr ‚The Final Replay‘ herbekommt und wie ihr es einrichtet und eine Testübertragung durchführt, wurde ja bereits bei ‚RR-Net: Am Turbo Chameleon 64‚ beschrieben.
Hier möchte ich jetzt auf NETDRIVE eingehen:
NETDRIVE erlaubt es euch, vom C64 auf einen bestimmten PC zuzugreifen und so direkt vom PC Programme zu laden oder D64-Images zu verwenden. Damit dies klappt, muss die zweite IP im ROM korrekt gesetzt werden.
Um an die benötigte IP-Adresse zu kommen, startet auf einem Windows-System die Eingabeaufforderung und gebt ipconfig /all ein. Nun solltet ihr eure sämtlichen Netzwerkverbindungen aufgelistet bekommen.
Diese IP müssen wir jetzt ins ROM von ‚The Final Replay‘ eintragen. Wechselt also wieder ins entsprechende Verzeichnis und ‚patcht‘ das Abbild nach dem bekannten Muster setip <RR-Net-IP> <PC-IP>, hier in meinem Fall also mit setip 192.168.178.64 192.168.178.29.
Jetzt ist das ROM einsatzbereit und kann wieder auf die SD-Karte für das Chameleon kopiert werden, bitte vergesst nicht die Endung auf .rom zu ändern.
Kleiner Exkurs:
Möchtet ihr das ROM nicht jedes Mal manuell mit dem Cartridge SLOT-2 verbinden, dann benennt es einfach in SLOT2.ROM um und kopiert es zur Online-Hilfe in das CHAM64-Verzeichnis eurer SD-Karte. Fehlt euch der CHAM64-Ordner, dann wird es Zeit, dass ihr diesen aus dem Chameleon Update-ZIP auf die SD-Karte kopiert, nur so kommt ihr in den Genuss der Online-Hilfe! Aktiviert dann in den Optionen boot from SD-card und ab jetzt wird ‚The Final Replay‘ immer automatisch mit dem Modul-Slot-2 verbunden, wenn der C64-Core des Chameleons startet. Alternativ könnt ihr das ROM natürlich auch mit dem Core direkt in den Speicher des Chameleons ‚flashen‘, dann steht euch das Modul unabhängig von der SD-Karte zur Verfügung. Werft bei Bedarf einfach mal einen Blick in die Anleitung zum Turbo Chameleon.
Bevor ihr nun aber auf den PC zugreifen könnt, braucht ihr noch den ‚Netdrive-Server‘ für den Windows-Rechner. Ladet euch also ‚Network Drive‚ herunter und entpackt die netdrive.exe z. B. in euer C64-Verzeichnis. Öffnet anschließend die Eingabeaufforderung, wechselt in das Verzeichnis, in dem die netdrive.exe liegt und startet den ‚Server‘ mit NETDRIVE -r „<Basisverzeichnis>“. Vom C64 könnt ihr später nur auf das hier angegebene Basisverzeichnis und seine Unterordner zugreifen. Ich verwende NETDRIVE -r „N:/Emulatoren/C64/_Disc/“ und habe so vom C64, über das Netbook, Zugriff auf mein NAS.
Startet nun das Chameleon und drückt im Menü die Taste mit der Nr. des Slots für ‚The Final Replay‘ (bei mir die 2). Eine weitere Möglichkeit wäre, den Default Slot auf Slot-2 zu stellen, dann könnt ihr auch einfach mit F7 die Cartridge starten. An der Einschaltmeldung sollte ihr erkennen, dass das Modul gestartet wurde.
Kontrolliert noch mal durch Eingabe von INFO+<RETURN>, ob die richtigen IP-Adressen im ROM stehen.
TFR verwendet die Geräte-Nr. 6, für den Netdrive-Zugriff. Um die aktuelle Geräte-Nr. umzustellen könnt ihr entweder einen DOS-Befehl DOS“6″+<RETURN> verwenden oder einfach NET+<RETURN> eingeben.
Nun könnt ihr die bekannten LOAD-Befehle benutzen, nur um ein Verzeichnis zu wechseln bzw. ein D64-Image zu verwenden (wird von TFR wie ein Verzeichnis behandelt), benötigt ihr einen DOS-Befehl. Schaut euch einfach die folgenden Bilder und Erklärungen an:
Wie ihr seht kann man über das bekannte LOAD“$“,6 und einem anschließendem LIST das Inhaltsverzeichnis anzeigen lassen. Wichtig ist nur, dass ihr darauf achtet, die Geräte-Nr. 6 zuverwenden, die wie oben erwähnt für das Netz-Laufwerk steht. Ich habe meine Anzeige auf Groß- & Kleinbuchstaben umgeschaltet, damit das Verzeichnis besser lesbar ist.
Ein Verzeichnis wird mit DOS“CD:<Verzeichnisname>“ gewechselt, um jetzt in den Ordner GAMES zu gelangen, gebt einfach dos“cd:Games“ ein.
Dann wieder den Inhalt anzeigen lassen (hier ein Ausschnitt):
Ich bin ins Verzeichnis LucasArts gewechselt und habe wieder das Inhaltsverzeichnis aufgelistet.
D64-Images könnt ihr wie die bisherigen Verzeichnisse behandeln. Wir wechseln also mit einem DOS-Befehl einfach ins Image. Dann wieder das Inhaltsverzeichnis lesen und anzeigen, schon könnt ihr das gewünschte Programm starten:
Um euch Tipparbeit zu ersparen, sind bei ‚The Final Replay‘ die Funktionstasten des C64 mit diesen Befehlen vorbelegt:
F1 DOS"CD: -> Muster fürs Verzeichnis wechseln F2 MONITOR -> Monitorprogramm starten F3 RUN: -> geladenes Programm starten F4 FLUSH: -> Daten 'flushen' F5 DLOAD -> Programm laden F6 CODENET -> CODENET-Server starten F7 DOS"$": -> Inhaltsverzeichnis laden und automatisch auflisten F8 DOS" -> Muster für DOS-Befehl
Die Übertragungen werden übrigens am PC im Ausgabefenster protokolliert.
Das ich ‚The Final Replay‘ so ausführlich behandel liegt daran, dass es weitere Programme gibt, die auf CODENET oder NETDRIVE aufbauen (z. B. 0xPaint, Arc64 oder Sidplay64).
Außerdem findet ihr auf der ‚The Final Replay‘-Homepage noch ein Windowsprogramm für die Übertragung zu CODENET codenet04_w32.zip.
Damit könnt ihr Daten und Programme direkt in den Speicher des C64 ‚schieben‘. Dies könnt ihr z. B. auch automatisieren, um ein auf dem PC erstelltes Programm zum Testen direkt an einen echten C64 zu schicken.
WarpCopy
Habt ihr die vorherigen Schritte zur Installation des RR-Net ‚durchgespielt‘, dann ist euch WarpCopy bereits bekannt. Für alle, die diese Seite als erstes lesen:
WarpCopy erlaubt es euch über das Netzwerk D64-Images direkt von der Floppy auf dem PC zu speichern. Auch der umgekehrte Weg ist natürlich möglich, ihr könnt auch ein D64-Image vom PC wieder zurück auf die Floppy schreiben. Das Programm macht dabei seinem Namen alle Ehre, für die Übertragung vom C64 zum PC braucht es nur ca. 22 Sek., der Rückweg zur Floppy ist mit 37 Sekunden auch sehr schnell. WarpCopy überträgt nach einem Klick das benötigte Programm per CODENET direkt zum C64.
Ein Beispiel zu Bedienung, findet ihr bei ‚RR-Net: Modulbetrieb‚.
NETMON
Ein weiteres schönes Tool, um direkt auf den C64 zuzugreifen ist NETMON. Ihr könnt vom PC auf den Speicher (inkl. REU!) zugreifen, dabei könnt ihr Daten dort hin übertragen oder diese auslesen (dump und disassembly). Außerdem könnt ihr auf die Laufwerke zugreifen. NETMON besteht wieder aus zwei Komponenten. Entpackt das ZIP nach dem Download. Als erstes muss dann der Sever NETSERV auf dem C64 gestartet werden. Kopiert das Programm aus dem ZIP am besten auf die SD-Karte fürs TC64. Ihr solltet nun das Chameleon starten und in den Optionen den Clock Port am besten auf DE02-DE0F (RR) stellen. ‚Startet‘ nun über F3 den C64. Drückt danach den Freeze-Knopf und ladet über den File-Browser das Programm NETSERV.
Der Server verwendet standardmäßig die IP 192.168.0.1. Um ihm eine andere IP Adresse mitzuteilen, startet den Server mit SYS49152[,IP]. Die einzelnen Blöcke der IP-Adresse müssen wir dabei mit Komma , statt wie gewohnt mit Punkt . getrennt angeben (bei mir also die bekannte Adresse SYS49152,192,168,178,64).
Öffnet jetzt auf dem PC die Eingabeaufforderung und startet NETMON.
Auch hier muss evtl. die korrekte IP angegeben werden.
Nun habt ihr ein Terminalfenster und könnt mit dem C64 kommunizieren. Eine vollständige Liste mit den möglichen Befehlen findet ihr im ZIP.
Hier mal einige Beispiele:
Als erstes solltet ihr die Verbindung mit status prüfen. Wenn alles klappt, bekommt ihr folgende Anzeige.
Mit m[adr] könnt ihr euch einen Auszug des C64-Speichers anzeigen lassen:
Oben seht ihr den Beginn des Bildschirmspeichers, auf dem noch die Einschaltmeldung zu sehen ist. Da PETSCII und ASCII sich unterscheiden, sind die meisten Texte nicht direkt lesebar. Am Schluß erkennt ihr auch noch unseren SYS-Befehl.
Wir können aber nicht nur den Speicher auslesen, mit POKE könnt ihr auch BYTES oder STRINGS in den C64-Speicher schreiben. Geben wir doch mal etwas über das Terminal auf dem C64 aus:
Sofort erscheint der Text auf dem Bildschirm des C64. Allerdings müssen wir noch den Zeichensatz auf Groß- / Kleinschreibung umschalten.
Ihr könnt auch auf die Laufwerke zugreifen. Mit $ wird das Inhaltsverzeichnis des aktuellen Laufwerks angezeigt.
Abschließend wollen wir noch ein Programm direkt zum C64 übertragen und starten. Mit dem PUT-Befehl könnt ihr dies bewerkstelligen. Gebt ihr nur den Programmnamen (hier game.prg) an, dann werden die ersten beiden BYTES als Ladeadresse verwendet.
Während der Übertragung flackert der Rahmen des C64 kurz. Anschließend zeigt sich erstmal keine Änderung. Wir müssen das Programm noch mit RUN starten…
… und sofort läuft das Spiel auf dem C64.
Für uns als Programmierer sind bestimmt die oben aufgeführten Möglichkeiten für den Zugriff vom PC über Netzwerk auf den C64 am Interessantesten. Es gibt aber auch z. B. den Zugriff vom C64 aufs World Wide Web. Beispielhaft für solche Anwendungen, möchte ich hier noch das bekannte Contiki und den dort verwendeten Web-Browser vorstellen.
Contiki
Mit Contiki bekommt ihr ein umfassendes Netzwerkpaket. Ich habe mir zum Testen nochmal die Version 1.2-Devel1 vorgenommen und manuell eingerichtet. Damit Contiki überhaupt funktioniert, müsst ihr im Turbo Chameleon entweder das Retro Replay starten oder (so wie ich) in den Optionen den Clock Port auf DE02-DE0F (RR) stellen.
Ich gehe davon aus, dass ihr den Clock Port umgestellt habt! Jetzt könnt ihr über den Filebrowser Contiki starten.
Sobald uns der Desktop anlächelt, sollten wir uns die obigen Tasten kurz einprägen und das Fenster schließen. Dann ist es an der Zeit, die Configuration starten.
Die ersten beiden Felder sind bereits korrekt gefüllt, kümmern wir uns daher als erstes um den Treiber für die Netzwerkkarte. Gebt im dritten Feld rrnet.drv ein, damit wird dann in Zukunft auch unser RR-Net MK3 korrekt erkannt.
Den Screensaver überspringen wir und füllen noch die unteren vier Felder, in die wir die benötigten IP-Adressen eintragen. Ihr findet diese bei Bedarf wieder über ipconfig /all.
Eure Einstellungen sollten den obigen ähneln. Sobald ihr diese mit [Save & close] speichert, startet Contiki neu und lädt nun auch den Treiber fürs RR-Net. (Falls ihr ein D64-Image am Chameleon verwendet, denkt daran, dass ihr die Änderungen evtl. noch über das Menü dauerhaft speichern müsst! Je nach Einstellung kann es sein, dass sich das D64-Image mit den obigen Änderungen bisher nur im Speicher des TC64 befindet und noch nicht auf der SD-Karte gespeichert wurde!)
Jetzt könnt ihr z. B. den Web-Browser benutzen. Wählt dazu Directory aus, um den Disketteninhalt anzeigen zu lassen.
Da auf der Diskette sehr viele Programme gespeichert sind, müssen wir über [More] ‚weiterblättern‘ um zum Web-Browser zu gelangen. Startet das Programm dann einfach durch Auswahl des Icons Web browser.
Um in Zukunft Programme schneller zu starten, könnt ihr alternativ auch F1 drücken und Run program… auswählen.
Dann im Fenster einfach den kompletten Programmnamen z. B. www.prg für den Web-Browser eingeben und auf [Load] klicken.
Im Web-Browser könnt ihr nun eure Lieblings-Seiten direkt auf dem C64 aufrufen…
Wer möchte kann die (mehr oder weniger) aktuelle Version 2.5 herunterladen. Allerdings sind hier ‚nur‘ die einzelnen Programme ohne die oben erwähnte Oberfläche enthalten, Mausbedienung ist aber möglich. Hier mal der Web-Browser…
Die restlichen Möglichkeiten von Contiki zu ergründen, überlasse ich nun eurem Forscherdrang 😉 .
Spiele
Leif Bloomquist hat u. a. Artillery Duel
und das Rennspiel NetRacer
mit Netzwerkunterstützung entwickelt. Beide Spiele lassen sich im LAN und über Internet spielen.
Außerdem kündigt er ein neues Netzwerk-Spiel (ein Shoot‘em up) für den C64 an, dass evtl. noch dieses Jahr erscheint.
Mittlerweile steht das Spiel Vortex 2 zum Testen bereit.
Schlußbemerkung
Für meine Zwecke sind ‚The Final Replay‘, ‚NETMON‘ und ‚WarpCopy‘ die interessantesten Projekte, daher haben diese auch am meisten Platz spendiert bekommen. Es gibt aber auch noch eine Reihe weiterer Programme zu entdecken. Schaut ggf. noch mal in die Anleitung des RR-Net oder ‚googelt‘ etwas. Programme wie z. B. HTTP-Load, Breadbox64, geoLink oder der Singular Browser könnten für euch evtl. von Interesse sein.
Außerdem sollten wir nicht vergessen, dass sich diese Seite primär ums Programmieren dreht! Daher werfen wir später auch mal einen Blick auf die Programmierung des RR-Net MK3 und lassen so hoffentlich weitere Netzwerk-Software für den C64 entstehen.
Huhu all.
Ich würde gerne mal Geos in vice laufen lassen. Habt ihr da einen Tipp wie man das unkompliziert hin bekommt.
Gruessle
Oliver
Ich hab einfach die Diskette eingelegt und schon lief es.
Hi!
Bei mir läuft zwar der Webbrowser (unter der 2.5 Version, d.h. die Version ohne bunten Bildschirm), aber nicht das Emailprogramm. Wie soll man da Namen und Emailadresse in EINEM (!) Feld eingeben?
Wenn ich zur Version 1.2 greife, funktioniert weder der Webbrowser, noch das Emailprogramm: Beim Webbrowser (vorher dhcp.prg ausprobiert) wird kein Host gefunden und das Emailprogramm sieht zwar die Eingabe von Passwort und Eingangsserver vor, lässt aber den Eintrag nicht zu.
Ich verwende das RRnet3 in einem TC mit der Firmware 9 und einen C64SX.
Vielen im Voraus für eine Antwort!
Freundlichen Gruß,
mac/tugcs
Hallo,
ich persönlich habe leider keine zufriedenstellende Antwort für dich. Da mich Contiki aktuell kaum interessiert, habe ich mir nur die im Beitrag erwähnten Punkte angesehen.
Dass der WebBrowser nichts findet deutet eigentlich darauf hin, dass die IP-Adressen (DNS, Gateway, usw.) nicht korrekt gesetzt sind.
Falls du die von mir erwähnte 1.2 Version verwendest, starte am besten noch mal die Configuration (configedit.prg) und kontrolliere die IP-Einstellungen und den RR-Net-Treiber.