Entwicklungsumgebung auf dem PC
PsPad ist ein Programmier-Editor, der sich hervorragend eignet, Programme, sei es Basic, Pascal oder Assembler, auf dem PC zu bearbeiten. Zudem lassen sich Assembler (z.B. ASL) und Scripts (z.B. TeraTerm Makros) einbinden. Mit TeraTerm können Dateien vom und zum PX-8 transferiert werden, ohne PsPad zu verlassen. Der Teraterm Script verfügt auch über die Möglichkeit, Basic Dateien ohne Komentare zu senden, Assembler Sourcen in verschiedene Formate (SLR/M80/GEN80) zu konvertieren, damit diese dann auf dem PX assembliert werden können. Natürlich ist es auch möglich, vom ASL Assembler erzeugte Binärdateien direkt zu übertragen. Für des Empfangen von Dateien (ausser Basic, die mit LOAD COM0: funktionieren) ist RDRGET auf dem PX erforderlich (siehe unten).
Utilities
PUNPUT / RDRGET
Diese zwei Programme erlauben das Senden und Empfangen beliebiger Dateien vom und zum PX-8, entweder mit dem TeraTerm-Script oder einem anderen CP/M System. Die maximale Dateigrösse ist dabei vom verfügbaren Speicher abhängig. Beide Programme benötigen die Assembler-Library (siehe unten).
RDRGET ohne Parameter empfängt eine oder mehrere Dateien von TeraTerm oder PUNPUT.
RDRGET [d:]fn.ext empfängt eine Datei und speichert diese als fn.ext
PUNPUT muss mit einem Dateiparameter oder Wildcard gestartet werden und sendet eine oder mehrere Dateien,.
VIEW
Zeigt Textdateien an mit zeilen- und seitenweisem Scrolling, Rücksprung zum Dateianfang und link/rechts Schieben. TABs werden auf 8 Leerzeichen erweitert. Als Parameter ist auch ein Wildcard möglich, es wird die erste entsprechende Datei angezeigt. View benötigt die Assembler-Library (siehe unten).
BASASM
Die Idee stammt aus dem Web, leicht erweitert. BASASM (original GENDRV) ist ein kleines Assemblerprogramm, das Funktionen enthält, die von Basic aufgerufen werden können. Es installiert sich unterhalb des BDOS und startet Basic. Das Interface zu Basic besteht aus einer Tabelle, wo Funktionsadressen und Rückgabewerte gespeichert werden.
Auf Basic-Seite existiert ein Loader-Programm, welches Programme, die die Assemblerfunktionen nutzen, via CHAIN/MERGE nachlädt. Der Download enthält eine kleine Demo (BASASMT.BAA) welches zwei Funktionen nutzt.
Assembler Library
Eine Sammlung nützlicher Routinen zur Programmierung des PX-8 in Assembler. Diese ist aufgeteilt in zwei Hauptmodule, Hardware und Allgemein. Das Hardwaremodul enthält PX-8 spezifischen Code, das Allgemeine den Code, der auf allen CP/M Systemen läuft. Damit beim Assemblieren nicht alle Source-Module vorhanden sein müssen, befindet sich der Objektcode in einer REL Datei, die mit dem Applikationscode gelinkt wird. Der Z80-ASM von SLR Systems hat den Vorzug, undefinierte Symbole als EXTRN zu deklarieren. Daruch wird das Erstellen wesentlich vereinfacht, auf dem PX-8 ohne Diskettenlaufwerk überhaupt erst möglich. Eine 120k RAM-Disk ist jedoch erforderlich. Details zur Verwendung der Library sind im Download enthalten.
RAM-Disk Images
Hier einige Images zum Download auf die PX-8 120k RAM-Disk.
Assembler enthält SLR Assembler, Linker und Librarian sowie die Library-Objektdatei LIB.REL. Zusätzlich die Definitionen der Library (.DZ8) wie sie zum Assemblieren benötigt werden.
Basic enhält nebst dem Basic selbst das BASASM Utility
Turbo-Pascal ist eine gepatchte Version, dessen Editor keine .BAK Dateien erstellt. Nützlich bei beschränkter Disk-Kapazität.
dBaseII V2.4, angepasst für den PX-8.
ROM Images
Assembler enthält ZSM Assembler, LOAD/UNLOAD sowie den VDE Editor
Utiliy enthält den DDTZ Debugger, VDE Editor, VIEW, RDRGET und PUNPUT
System mit CONFIG, PIP, STAT, SUBMIT, XSUB, TERM, PX und D.COM
Turbo-Pascal V3.0, Original
Turbo-Pascal V3.0, erstellt keine .BAK Dateien