Schönes Ding, dieser MPF-1. Macht richtig Spass, damit zu spielen...
Es ist nur etwas mühsam, die Programme, assembliert mit z.B. CP/M's M80, einzutippen. Vor allem, wenn etwas an der Grösse verändert wurde, alle absoluten Sprünge und Calls händisch ändern. Wäre doch schön, wenn die Programme anstelle des Eintippens seriell übertragen werden könnten, etwa so:
Nur, der MPF hat keine UART. Bietet sich also Bit-Banging über den Tape-Eingang an. Dies ist problemlos ohne Hardware-Anpassung möglich. Der TX-Pin des Senders kann direkt an die EAR Buchse des MPF angeschlossen werden, Beim Kabel ist darauf zu achten, dass senderseitig RTS/CTS und DTR/DSR überbrückt werden müssen.
Seriewiderstand und Schutzdioden sind vorhanden, es können keine verbotenen Spannungspegel auftreten.
Fehlt noch die Software. Ziel ist es, keine Aenderung an der Firmware durchzuführen, der MPF soll original bleiben und Laden von Band soll weiterhin möglich sein. Deshalb wird das Empfangsprogramm im EPROM U7 abgelegt. Wer nicht auf das BASIC verzichten will, kann anstelle des MPF-1 Monitors den des MPF-1B verwenden, hier ist BASIC integriert. Zu beachten ist dabei, dass ein 2532 EPROM benötigt wird, ein 2732 funktioniert nicht.
Ein wesentlicher Teil der Entwicklung war das Ableichen der Zeiten für die Sampling-Punkte des seriellen Bit-Stroms (rot ist das serielle Signal, gelb die Sampling-Punkte des Empfangsprogramms)
Es ist kein Handshake verfügbar, durch die Verarbeitungszeit einer Zeile der HEX-Datei (Umwandlung nach binär, Adressen-Test, Checksummenberechnung, Verifizierung) ist eine maximale Geschwindigkeit von 300 Baud, und erst noch mit zwei Stoppbits, möglich. Damit wird in etwa die Geschwindigkeit des Ladens von Band erreicht.
Im Anhang MPF-1.ZIP sind die Sourcen, das EPROM Image und WAV Dateien. Die WAVs dienen dem Debugging und können nur verwendet werden, wenn in U7 ein RAM sitzt. Zusätzlich zum Empfangsprogramm sind auch eine CTC-Interrupt gesteuerte Uhr sowie verschiedene Hilfsroutinen, u.A. Interrupt-Serviceroutinen für CTC und PIO mit konfigurierbaren Callbackadressen, vorhanden.
Viel Spass damit!
Tony