nanoPEB

nanoPEB

Endlich auch die erste Story zum TI-99/4A. Leider ist es nicht ganz so einfach an Peripheriegeräte für den 99er zu kommen, da sie in Deutschland selten angeboten werden oder aus USA nur verbunden mit hohen Kosten zu uns geholt werden können. Zum Glück bin ich bei meinen Recherchen über eine moderne Erweiterung „gestolpert“, die es ermöglicht auf  Software zurückzugreifen, die mir bisher verwehrt war.
Die nanoPEB (nano Peripheral Expansion Box) habe ich zusammen mit einer 4GB CF-Karte aus den USA erhalten. Was ist das nun?

Es ist ein komplettes Peripheral Expansion System das die schwer zu findende Peripheral Expansion Box ersetzt.

Mit 32K RAM, drei simulierten Disketten-Laufwerken und einem RS-232 Anschluss, sollte der größte Teil der Software die für den Originalen TI-99/4a geschrieben wurde und für die ein PEB benötigt wird, funktionieren.
Die simulierten Diskettenlaufwerke haben die Namen DSK1, DSK2 und DSK3. Wie beim richtigen PEB.
Die Compact Flash wird in 400K große simulierte Diskettenlaufwerke aufgeteilt – sogenannte Volumes. Bis zu drei Laufwerke können gleichzeitig „gemounted“ werden. Disks werden mit dem BASIC-Befehl CALL MOUNT eingebunden.
Zusätzlich kann der RS-232 Anschluss mit bis zu 19.200 bps übertragen, was eine Geschwindigkeitsstufe höher ist als das Original RS-232 Board (für die PEB) und benutzt einen modernen DB9 Anschluß. Die DB9 Pins entsprechen dem Standard „DTE“ (data terminal equipment).

Es gibt PC Software mit der man Disk Images auf die CF-Karte kopieren kann und von der CF-Karte wieder zurück auf den PC. Jedes 400K Volume ist ein exaktes Image einer 99/4a Diskette. Windows kann die CF-Karte ohne diese Software nicht lesen. Sie wird als „unformatiert“ angezeigt!

nanoPEB - Komponenten

nanoPEB – Komponenten

Funktionsweise

Compact Flash
nanoPEB-SIO hat ein abgespecktes IDE Interface. Ein Compact-Flash zu IDE Adapter ist an das Interface angesteckt. Natürlich steckt die CF-Karte im Adapter. Strom für den Adapter und die Compact Flash wird durch das nanoPEB-SIO zur Verfügung gestellt, welches mit einer 5 Volt Stromquelle verbunden sein muss (Netzteil: reguliert – 2A – 5V)

nanoPEB-SIO hat ein ROM in dem das DSR (Gerätetreiber-ROM) ist. Dies erlaubt es BASIC und dem Disk Manager mit der Compact Flash zu arbeiten.

Das DSR simuliert drei Diskettenlaufwerke: DSK1, DSK2 und DSK3. Es simuliert auch 400k Disketten, die Volumes genannt werden auf der CF. Jedes Volume ist so formatiert, damit es aussieht wie eine 99/4A Diskette, mit einem großen Unterschied – die original 99/4A Disketten hatten nur 90K!

Damit die Volumes benutzt werden können, stellt das Basic den Befehl CALL MOUNT zur Verfügung. Das Mounten eines Volumes entspricht dem Einlegen einer Diskette in das Disketten-Laufwerk. Mit dem Befehl CALL MOUNT(1,7) wird das siebte Volume in DSK1 gemountet.

nanoPEB-SIO speichert die Einstellungen der „Mounts“ ab, so dass diese immer zur Verfügung stehen wenn es benutzt wird. Auch wenn es ausgeschaltet wurde.

Die tatsächliche Anzahl der Volumes hängt von der Größe der CF Karte ab. Eine 32 MB CF-Karte z.B. enthält 39 Volumes.

Wegen dem Bus-Timing des TI-99/4a funktionieren Festplatten und einige CF-Karten nicht. SanDisk und Kingston-Karten sind sehr zuverlässig.
CF-Karten sind normalerweise mit FAT formatiert. Das DSR überschreibt das mit dem TI-99/4A Format.

RAM
32K RAM sind auf dem nanoPEB-SIO installiert.

RS-232
Der RS-232 Anschluss auf dem nanoPEB verwendet den gleichen UART, wie im Original 99/4A PEB Board. Der DSR Name lautet „SIO“. Zu Rückwärtskompatibilität werden „RS232“ und „RS232/1“ ebenfalls unterstützt. Terminal Emulator II, Basic und andere Programme die den seriellen Port benutzen sollten funktionieren.

nanoPEB

nanoPEB

Basic Befehle
Es gibt drei Erweiterungen für Basic damit das Laufwerk funktioniert.
CALL FORMAT () – führt eine schnelle Formatierung des Volumes aus. Ein Volume muss formatiert werden, bevor es benutzt werden kann. Die Anzahl der Volumes, die ein Compact Flash beinhalten kann, wird berechnet, indem man die Größe der CF durch 819.200 teilt. Beispiel 8MB Karte: 8*1024*1024/819.200 = 10,24 – Daher kann diese Karte 10 Volumes haben. Beachte: die aktuelle Größe einer CF kann von der aufgedruckten Größe abweichen. Der beste Weg das zu prüfen, ist die CF mit der höchst möglichen Volume Nummer zu formatieren und versuchen darauf eine Datei zu speichern. Wenn es einen Fehler gibt, dann hat die Karte wenige Kapazität als angegeben.
CALL MOUNT (,) – einhängen eines Volumes in das angegebene Laufwerk. Laufwerknummer muss 1, 2 oder 3 sein.
CALL UNMONT () – hängt das aktuelle Volume aus dem Laufwerk aus und setzt das Volume mit dem Laufwerk gleich. In anderen Worten: DSK3 wird wieder mit Volume 3 verbunden.

Beispiele für Befehle
Gültig
CALL FORMAT(15) – Formatiert Volume 15
CALL MOUNT(2,5) – Volume 5 wird DSK2 zugewiesen
CALL UNMOUNT(2) – Entfernt das Volume aus DSK2
Ungültig
CALL FORMAT(A) – A ist keine Konstante
CALL MOUNT(5,5)  – Es gibt kein Laufwerk 5
CALL UNMOUNT(D$) – D$ ist keine Konstante

Einschränkungen

  • das Gerät unterstützt das alte TI Dateisystem, Windows FAT oder NTFS werden nicht unterstützt.
  • Microdrives funktionieren nicht
  • Nur die Hälfte der 512-byte Sektoren der Compact Flash werden benutzt. Das original TI-99/4A Disksystem verwendete einen 256-byte Sektor. Das Benutzen dieser Technik machte die Schaltung einfach und maximierte die Kompatibilität.
  • Drei Diskettenlaufwerke werden simuliert. Nur drei Volumes können gleichzeitig eingehängt sein. Anfänglich werden Volume 1-3 automatisch eingehängt wenn der Rechner eingeschaltet wird. Der MOUNT-Befehl speichert die Einstellungen der Volumes. Daher sind nach einem Neustart des Rechners immer noch die gleichen Volumes verbunden.

TI-99/4A Software

CATALOG
Catalog ist ein Basic Programm, das die Dateien auf Laufwerk 1, 2 oder 3 anzeigt. Wenn man den Inhalt von Laufwerk 4 und höher sehen will, muss man diese erst mit CALL MOUNT einhängen und dann CATALOG nochmal aufrufen. Das Programm ist normal immer auf DSK1 wenn schon eine CF-Karte mit bei dem Rechner war. Laden:
OLD DSK1.CATALOG

Windows Software

cf2dsk.exe – Version 1.0
Dies ist ein DOS-Programm, das Dateien von einer CF-Karte in eine Datei auf dem PC überträgt.
Es wird ein CF-Kartenleser benötigt. Starte cf2dsk aus einer DOS-Box. Folgendes sollte angezeigt werden wenn der Befehl ohne Parameter eingegeben wird:

cf2dsk

cf2dsk

wobei –

  • 5 – ist die Nummer des Volumes (virtuelle Floppy). Das Compact-Flash Laufwerk emuliert 3 Diskettenlaufwerke mit vielen Disketten
  • c:\ti_dsk\dm5.dsk – ist eine TI Diskette auf dem PC
  • somit erzeugt das Beispiel oben ein Diskettenimage von Volume 5 (z.b. wenn man ein Basicprogramm abgespeichert hat und das nun Sichern will)

dsk2cf.exe – Version 1.0
Dies ist ein DOS-Programm das Dateien von einem PC auf eine CF-Karte überträgt.
Es wird ein CF-Kartenleser benötigt. Starte dsk2cf aus einer DOS-Box. Folgendes sollte angezeigt werden wenn der Befehl ohne Parameter eingegeben wird:

dsk2cf

dsk2cf

wobei –

  • 5 – ist die Nummer des Volumes (virtuelle Floppy). Das Compact-Flash Laufwerk emuliert 3 Diskettenlaufwerke mit vielen Disketten
  • c:\ti_dsk\dm5.dsk – ist eine TI Diskette auf dem PC
  • somit schreibt das Beispiel oben ein Diskettenimage (dm5.dsk) in Volume 5

Ti99Dir 5.4b (unter Software)
Dies ist eine Alternative zu den beiden Kommandozeilen-Tools. Es sieht aus wie der gute alte Norton-Commander. Damit können Volumes gesichert, auf Karten geschrieben und neue Volumes erstellt werden, außerdem kann man den Inhalt von Disketten-Images anzeigen und neu zusammenstellen. Ebenso können die Mounts der drei Laufwerke und der Volumes geändert werden. Auch kann ein Backup der gesamten Karte erstellt werden. Wie ich finde, ist dieses Tool fast unverzichtbar! 🙂

Ti99Dir54b

Ti99Dir 5.4b – linkes Fenster: CF-Karte | rechts Fenster : Dateien eines Disk-Images

Um einzelne Dateien aus einem Disk-Image auf die CF-Karte zu bekommen, muss man folgende Schritte machen
1. Disk Image öffnen
2. Leeres Disk Image erstellen -> Files -> Create new DSK image -> CF7A+…..
3. Leeres Disk Image im zweiten Fenster öffnen
4. zu kopierende Dateien mit „+“ markieren
5. mit rechtsklick -> copy File(s) Dateien kopieren
6. CF-Karte einlesen -> Files -> Read CF7A+ Volume List
7. rechtsklick auf das neu erstellte Image -> Copy File(s)
8. gewünschtes Volume auf der CF-Karte auswählen
9. Volume mounten ->Files -> Mount CF7A+ Volumes

Starten eines Programms mit TI Extended Basic !! Am Anfang habe ich immer Fehlermeldungen erhalten beim Laden oder Speichern eines Programms. Es ist tatsächlich wichtig alles in Großbuchstaben einzugeben!
OLD LAUFWERK.DATEINAME
OLD DSK1.TEST
RUN
oder
RUN „DSK1.TEST“
Programme: ftp://ftp.whtech.com/
Es werden V9T9 Disketten-Images verwendet. Mit der Software TI99DIR kann man auch PC99 Disketten-Images in das V9T9-format umwandeln. Außerdem kann mit der Software auf den Inhalt der Images zugegriffen und diese auch manipuliert werden.

nanoPEB - ansgeschlossen

nanoPEB – angeschlossen

Zum Starten von Assembler Programmen, wird die Editor/Assembler Cartridge benötigt.
Programme vom Typ DIS/Fix
Editor/Assembler Menü 3: LOAD AND RUN – auf dem nächsten Bildschirm gibt man auf die Frage nach dem Dateinamen den Pfad und den Namen ein: DSK1.TEST. Sollte das Spiel mehrere Disketten haben, kann man einfach die Dateinamen nacheinander eingeben. Nach dem letzten Namen die Zeile leer lassen und Enter drücken. Dann frägt Editor/Assembler nach dem „PROGRAME NAME?„. Das sollte automatisch mit dem richtigen Namen ausgefüllt werden. Einfach Enter Drücken und Spielen.
Programme vom Typ PROG
Editor/Assembler Menü 5: RUN PROGRAM FILE. Auf dem nächsten Bildschirm wird wieder nach dem „PROGRAM FILE NAME“ gefragt. Richtigen Namen und Pfad eingeben – DSK1.TEST und Enter drücken. Hier sollte alles automatisch geladen werden.

Links
nanoPEB Homepage Update 07/2015: diese Seite ist im Moment nicht erreichbar.
Karten können evt. hier erworben werden: Stargames
Atari Age – General nanoPEB Fragen