PC-Tools

Ciderpress
CiderPress
Sehr komfortables Programm zum Bearbeiten von Apple Diskimages. Es gibt auch noch Versionen für Windows-XP. CP/M Images sind nur-lesen. Das Programm ist Freeware.
Hier der Link zur Ciderpress Homepage.

ADT
AdtPro
ADT/ADTPro
dient der Uebertragung von Disketten-Images zum und vom Apple. Benötigt ein serielles Interface auf der Apple-Seite. Kommt mit DOS, ProDOS, Pascal und CP/M Formaten klar.
ADTPro ist eine Java Applikation und unterstützt nebst der seriellen auch die Audio-Schnittstelle.
Hier die Homepage von AdtPRO

PsPad IDE
Windows Ordner-Kontextmenu
Windows Datei-Kontextmenu
Entwicklungsumgebung
PsPad ist eine umfangreich konfigurierbare Freeware-IDE mit Syntax-Highlighting und einbindbaren Tools. Mit dem ASL Assembler können 6502 und Z80 Assemblerprogramme erstellt und dann mit TeraTerm auf den Apple geladen werden. Dies kann entweder von PsPad oder über das Ordner- bzw. Datei-Kontextmenu erfolgen. Für das Kontextmenu ist ein Registry Patch notwendig. Die .REG Dateien sind im Download enthalten (Pfade müssen ggf angepasst werden).

TeraTerm ist ein Freeware-Kommunikationsprogramm für den PC mit kräftiger Makrosprache. XFER.TTL ist wie ASL in PsdPad eingebunden und ist eine Zusammenstellung verschiedener Funktionen zur Uebertragung zum und vom Apple. Dieser benötigt dazu eine SuperSerialCard. Die Wahl des Uebertragungsparameter und der Zeilenverzögerung erfolgt automatisch in Abhängigkeit der File Extension:
.BAS Basic Programme, wahlweise mit oder ohne Kommentarzeilen. Da Basic mit zunehmender Zeilenzahl langsamer in der Verarbeitung wird, erhöht sich die Zeilenverzögerung um 15mS pro 50 Zeilen. Damit die Programme einigermassen LISTbar bleiben, werden "REM " durch "REM" ersetzt, Applesoft fügt in jedem Fall ein Leerzeichen ein.
.A65 Assembler Source für Apple's EdAsm. Der Code wird so aufbereitet, damit er mit EdAsm korrekt dargestellt wird. Zudem werden ASL spezifische Instruktionen entfernt und Pseudo-Ops werden konvertiert, wo nötig. Auf Appleseite wird DOWNLOAD benötigt.
.B65 Binärdatei, wie sie von ASL erstellt wird. Auf Appleseite muss DOWNLOAD.BIN laufen. Die tiefste Bufferadresse ist $2000, ein Programm für tiefere Adressen muss mit dem Monitor entsprechend verschoben werden.
.L65 Konvertierung und Uebertragung von Adressen und Daten aus ASL-Listfiles zum Apple Monitor.
.DOS Upload von Textdateien zum PC, wie z.B. PR#2, LIST zum Uebertragen von Basic Programmen.
.AZ8 Z80 Assembler Sourcefile für CP/M. Benötigt RDRGET.COM auf CP/M Seite.
.BZ8 CP/M Binärdateien, z.B. mit ASL erstellte Programme. Benötigt RDRGET.COM auf CP/M Seite.
.CPM Upload von beliebigen Dateien von CP/M. Benötigt PUNPUT.COM auf Apple Seite.
.BIN Upload beliebiger Dateien im Binärformat, ohne Protokoll.

Basic Library

Basic Library
BASLIB ist eine Zusammenstellung von Subroutinen mit Exportmöglichkeit der einzelnen SUBs als Textdateien, die wiederum mit EXEC in ein zu erstellendes Programm importiert werden können. Ueber definierte Einsprung- Zeilennummern lassen sich die Subprogramme einzeln testen.
Für die LIBBAS Funktionen ist der Zeilenbereich 5000-9999 reserviert. Die GOSUB Nummern sind jeweils xx20.
8020:HB() Konvertiert einen HEX String nach binär
8120:BH() Konvertiert eine Binärzahl zu einem HEX String. Die Anzahl Stellen (1-4) ist wählbar
8220:KD() Eingabe einer Dezimalzahl. Es werden nur 0-9 und Dezimalpunkt akzeptiert. Anzahl Stellen ist wählbar
8420:KH() Eingabe einer HEX Zahl. Es werden nur 0-9 und A-F akzeptiert. Anzahl Stellen wählbar
8620:KS() Eingabe eines Textes, entweder normal oder Dateiname. Bei letzterem wird an erster Stelle nur ein Buchstabe, bei den übrigen Buchstaben, Ziffern, "." und "/" akzeptiert.
8820:FA() Eingabe eines Dateinamens. Bei DOS3.3 kann otional das Laufwerk gewählt werden. Erlaubt auch die Anzeige des Directory
8920:TV() Gibt Text an beliebiger Position durch direktes Schreiben ins VRAM aus. Wird benötigt, wenn Textausgaben während aktivem Datei-WRITE erfolgen sollen
9120:TX() Senden eines Zeichens zur SuperSerialCard
9820:PD() Prüft, ob ProDOS aktiv ist. Verwendet dazu die Copyright Message des ProDOS
9920:EH() DOS Error Handler, zeigt DOS Fehler im Klartext, andere als Nummer. Kehrt zu Zeile 900 im Hauptprogramm zurück

Tools (DOS/ProDOS)

 
Die hier vorgestellten Programme laufen auf einem Apple II+ mit Disk-Controller in Slot 6, I/O-RPI in Slot 5 und der SuperSerialCard in Slot 2.  Die Programme sind weder grössen- noch geschwindigkeitsoptimiert. Es geht um die LIST- und Lesbarkeit.

Download
DOWNLOAD.BIN
Ist ein 6502 Assemblerprogramm und dient dem Empfangen von Text- und Binärdaten von der SuperSerialCard. Es verwendet ein einfaches Protokoll zum Starten der Uebertragung und eine Checksumme über alle empfangenen Daten. Ein Ueberschreiben von DOS/ProDOS wird verhindert. Die Uebertragung wird nach Ablauf eines Timeout beendet. Danach werden Buffer Start, Ende und Länge ausgegeben, diese Werte können direkt als BSAVE A$ bzw. L$ Parameter verwendet werden.
DOWNLOAD
Es existiert auch ein Basic Programm, mit dem sich die Bufferadresse einstellen lässt, sollte der Standardwert von $2000 zu niedrig sein. Dann werden DOWNLOAD.BIN und nach erfolgreicher Uebertragung DOWNSAVE gestartet.

Download Save
DOWNSAVE
dient dem Speichern von zuvor mit DOWNLOAD.BIN empfangenen Daten als Textdatei. Zuerst wird geprüft, ob eine gültige Signatur von DOWNLOAD.BIN vorhanden ist. Wenn ja, wird der Buffer in der einzugebenden Datei gespeichert. Unter DOS3.3 geschieht dies mit einem weiteren Assemblerprogramm, DOWNSAVE.BIN, weil hier für BSAVE kein Dateityp spezifiziert werden kann. Mit ProDOS wird der BSAVE ,TTXT Parameter verwendet, was ein direktes Speichern in eine Textdatei erlaubt.

DOWNSAVE ist als eigenes Programm ausgeführt, um Speicherplatz zu sparen und so den Bufferstart von $2000 möglich zu machen. DOWNSAVE wird von DOWNLOAD nach erfolgreicher Uebertragung ausgeführt.

TYPE
zeigt Texdateien an.  Dies ist sonst nur mit Programmen wie COPYII möglich. Reines Basic, nicht sonderlich schnell. Kann mit vorgehendem PR#n auf Drucker oder SSC umgeleitet werden. ProCmd bietet die gleiche Funktion, jedoch nur mit ProDOS.

SENDROM
überträgt der Inhalt des ausgewählten ROMs im Binärformat zur SuperSerialCard. War schon hilfreich zum Aufspüren defekter ROMs.

Tools (CP/M)

Die CP/M Programme benötigen eine 80-Zeichen- und eine Z80 Karte.

Boot-Meldung des ZCPR
CCP Erweiterung ZCPR D&J
Das Apple II CP/M kommt bereits mit einem ZCPR, allerdings in Version 2. Diesem fehlen jedoch nützliche Befehle wie PEEK und POKE. Hier ist die Adaptierung des ZCPR D&J V1.4 für den Apple II. Die residenten Befehle dieses CCP:
BELL Sendet ein BELL zu Konsole, nützlich für Batchjobs
CLS Löscht den Bildschirm (neu hinzugefügt)
DFU n Setzt den USER Bereich (0-15) in dem .COM Dateien auf Drive A gesucht werden sollen. Default ist 0
DIR [afn] Directory aller Dateien, exclusive jener mit dem SYS Attribut (gleich wie Standard-CCP)
DIR <afn> S Directory aller Dateien mit dem SYS Attribut. Dateimaske ist zwingend
DIR <afn> B Directory aller DIR und SYS Dateien
DIR <afn> A Directory aller DIR Dateien in allen Userbereichen
ERA <afn> Löschen von Dateien (gleich wie Standard-CCP)
ERAQ <afn> Löschen von Dateien mit Bestätigungsabfrage jeder Datei
GET <addr> <ufn> Laden einer Datei an eine bestimmte Adresse, ohne Ausführung
GO   [cmdtail] Bearbeiten des cmdtail, falls vorhanden, und Sprung zu Adresse 0100H
JUMP <addr> [cmdtail] Bearbeiten des cmdtail, falls vorhanden, und Sprung zur angegebenen Adresse
LIST <ufn> Ausgabe einer Datei auf den Drucker (LST:)
LIST <ufn> P Ausgabe einer Datei auf den Drucker, ohne Formfeeds
PAGE Sendet Formfeed zum LST: Device
PEEK <addr> [count] Anzeige von count Bytes ab angegebener Adresse, ohne count 256 Bytes
POKE <addr> <data ..> Schreiben von data data data... (2-Digit-HEX) ab der angegebenen Adresse
REN  <[du:]newufn>=<oldufn> Datei umbenennen, Drive und Usernummer sind unterstützt
SAK StrikeAnyKey: Wartet auf Tastendruck
SAVE <pages> <ufn> Schreibt <pages> Seiten (256 Bytes) in Datei, beginnend bei 0100H
SAVE <records> <ufn> R Schreibt <records> Records (128 Bytes) in Datei, beginnend bei 0100H
SCL Erlaubt Eingabe mehrerer Befehle auf einer Zeile, getrennt mit Semikolon
TYPE <ufn> Textdatei auf Konsole anzeigen mit Pause wenn Bildschirm voll
TYPE <ufn> P Textdatei auf Konsole anzeigen, ohne Pause
N: Userbereich wechseln (N=0..15)


Assembler Bibliothek
Eine Sammlung häufig gebrauchter Routinen, besteht aus verschiedenen Modulen. Damit die Herkunft der Routinen ersichtlich sind beginnen die Namen der Routinen mit einem entsprechenden Prefix (sinnvollerweise werden diese in der Applikation nicht verwendet):

'h': Apple II hardwarespezifische Routinen
'u': Utility Routinen
'c': Console I/O Routinen
'd': Disk I/O Routinen
'o': BDOS/BIOS Calls

Die Bibliothek ist ausgelegt zur Verwendung mit dem Z80ASM von SLR. Der Assembler verfügt, anders als z.B. M80, über die Möglichkeit, undefinierte Symbole automatisch als EXTRN zu deklarieren. Dieses Feature ermöglicht das Assemblieren ohne Deklaration der Library Routinen. Der gesamte Librarycode ist in einer Objektdatei LIB.REL enthalten und muss beim Linken der Applikation mit dem /S Switch eingebunden werden. Zudem ist Z80ASM etwa 10x schneller als der M80...
Zum Assemblieren einer Applikation werden zwei Definitionsdateien, LIBC.DZ8 und LIBH.DZ8 benötigt. Diese enthalten Konstantendefinitionen, die dem Assembler bekannt sein müssen.

Text File Viewer Optionen
VIEW
Programm zur Anzeige von Textdateien. Unterstützt Seitenpause, zeilen- und seitenweises Scrollen vor- und rückwärts, links-rechtsscrollen um je 8 Zeichen sowie Rückkehr zur ersten Seite. Bit7 wird maskiert, so werden auch z.B. WordStar Dateien korrekt angezeigt. Dateigrösse unbeschränkt.

Text File Printerr Optionen
PRINT
Ausgabe von Textdateien auf Drucker oder SuperSerialCard. Als Drucker ist der Epson FX-80 konfiguriert. Die Druckseiten enthalten eine Kopfzeile mit Dateiname und Seitennummer, ausser die Datei enthält Zeilen mit mehr als 96 Zeichen. In diesem Fall wird angenommen, dass es sich um ein Assemblerlisting handelt, das ja bereits Kopfzeilen enthält. Der Druck erfolgt im Elite Modus mit linkem Rand, Assemblerlisting werden Condensed gedruckt. Stoppt für Papierwechsel, falls kein Einzelblatteinzug oder Endlospapier vorhanden ist (konfigurierbar).

Terminal mit Menu
TERMINAL
Einfaches Terminalprogramm mit wählbarer Baudrate, ASCII/HEX Anzeige, Umleitung auf den Drucker oder in eine Datei. Kein Interrupt-Betrieb, um Zeichenverluste zu vermeiden, wird ein Buffer mit Timeout und Handshake verwendet. Dadurch wird die Uebertragungsrate eingeschränkt.

PUNPUT hat Dateien gesendet
RDRGET hat Dateien empfangen
PUNPUT/RDRGET
Diese beiden Programme dienen der Dateiübertragung zwischen AppleII und PC oder einem anderen CP/M System. Dabei können mehrere Dateien aufs Mal übertragen werden. Die maximale Grösse pro Datei ist beschränkt auf das verfügbare RAM in der TPA.
Auf dem PC wird ein TeraTerm Script zur Aufbereitung der Daten und zum Senden/Empfangen verwendet. Dieser ist im Download oben auf dieser Seite enthalten.