APPLICATIONSDIVERS ★ CP/M PLUS PATCH MIT DK'TRONICS RAM|SCHNEIDER MAGAZIN) ★

CP/M Plus Patch mit dk'tronics RAM (Schneider Magazin)Applications Divers
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Ein CPC 464 mit CP/M 3.0 und dk'tronics-RAM ergibt praktisch einen CPC 6128. Besagte Speichererweiterung ist vollständig kompatibel zu den zweiten 64KByte des 6128. Sie wird mit denselben Kommandos wie bei diesem Rechner über das Gate Array angesprochen (OUT &7F00, &C0 ... &C7).

CP/M Plus läßt sich mit der von dk'tronics gelieferten Software ohne Änderung sofort nach Eingabe folgender Befehle starten: |emulate: |cpm (vergl. Kapitel 3.15 des dk'tronics-Handbuchs). Meine Lösung, das EMS-File direkt zu patchen, bietet jedoch gegenüber der von dk'tronics vorgeschlagenen Methode drei Vorteile:

  1. Es muß nicht nach jedem Booten durch ein Submit-file zeitaufwendig ein Patch-Programm gestartet werden, das eine korrekte Tastaturabfrage ermöglicht. Dies läßt sich durch die Einrichtung der KM-Indirection bei &BDF4 erreichen, die normalerweise auf dem 464 nicht existiert. Dazu ist der ROM-Bereich von &B1 bis &E7 ins RAM zu verlegen, damit der Call bei &D9 durch CALL &BDF4 ersetzt werden kann. CP/M Plus patched dann diese Indirection. Wenn sie auf dem 464 fehlt, führt dies dazu, daß die BIOS-Funktion 2 (Get Consol Status) nicht funktioniert. Beim veränderten EMS-File arbeitet sie dann korrekt.
  2. Ein Reset mit SHIFT CTRL ESC führt nun wirklich zur Einschaltmeldung. Da beim 464 normalerweise keine Speichererweiterung angeschlossen ist, wird sie bei einem Reset vom Betriebssystem auch nicht initialisiert. Deshalb ist dann Block 4 der zweiten Bank anstelle des Bildschirmspeichers eingeblendet. Beim 6128 schaltet MC START PROGRAM Bank 0 ein. Beim gepatchten EMS-File wird nun die ROM-Routine KM TEST BREAK durch eine RAM-Routine ersetzt, die vor einem Reset die RAM-Bank 0 aktiviert.
  3. Es ist eine schnellere Zeichenausgabe eingebaut. Dies wird durch eine sehr flinke Ersatzroutine für TXT WRITE CHAR ermöglicht. Allerdings wird jetzt immer der Zeichensatz aus dem ROM genommen, d.h., ein anderer oder inverse Schrift sind nicht mehr möglich. Deshalb läßt sich die schnellere Zeichenausgabe, die beim Booten aktiviert wurde, mittels des Dienstprogramms ONOFF.COM auch wieder zurücknehmen. ONOFF S schaltet den Patch ab, ONOFF F schaltet ihn an.

Dateien für automatische Tastaturbelegung

Für die Erzeugung von ONOFF.COM wird der Quellcode normal assembliert und anschließend als ONOFF.BIN abgelegt. Dann erfolgt mittels DDT

oder SID die Verschiebung nach 0100 und die Speicherung als ONOFF.COM. Das gemäß dem abgedruckten Quellcode gepatchte CP/M läuft allerdings nur auf dem 464. CP/M läßt sich jedoch auch auf dem 6128 und 664 vom veränderten EMS-File aus starten, wenn die Zeilen 23 bis 25 von Listing 1 zwischen die Zeilen 18 und 19 kommen. Das Label W1 bleibt an seinem Platz. Die Patches für Tastaturabfrage und Reset werden nur auf dem 464 initialisiert. Somit verfügt dann auch der 6128 über eine schnellere Zeichenausgabe unter CP/ M.

Im folgenden finden Sie eine Anleitung für die Herstellung einer auf dem CPC 464 mit angeschlossener dk'tronics-Speichererweiterung lauffähigen CP/M-Plus-Version:

Beginnen Sie die Arbeit mit CP/M 2.2. Zunächst ist die A-Seite der CPC-6128-Systemdisketten mit dem DISCKIT2-Utility auf eine leere Diskette zu kopieren. Löschen Sie nun alle Files außer C10CPM3.EMS, und kopieren Sie SID.COM mit FILECOPY auf diese Diskette. Assemblieren Sie den CPM-Patch mit einem AMSDOS-Assembler (wenn nötig, Code an anderer Adresse ablegen) und speichern Sie den erzeugten Code als Binär-File CPM + PATC.BIN auf der Diskette ab. Dann sind, wie in Abschnitt 3.11.2 des dk'tronics-Handbuchs beschrieben, die Files BANK.BAS und RSX.BIN von der von dk'tronics mitgelieferten Cassette auf diese Diskette zu übertragen.

Geben Sie jetzt bitte folgende Zeilen ein, die Sie jeweils mit ENTER abschließen:

run ”bank
ENTER
|emulate: lcpm
sid cpm + patc.bin
m180, 280, a000
rc 10 cpm 3.ems
ma000, a043, 1260
ma044, a0dc, 6110
a1da
mov a, h
cpi 1
jmp 01d60
ENTER
wcpmplus.ems, 100, 64ff
g0
era c10 cpm 3.ems

Nach einem Reset booten Sie nun erneut CP/M. Es müßte korrekt gestartet werden. Kopieren Sie ONOFF.COM auf die Diskette und lassen Sie nach ONOFF F und ONOFF S eine Directory ausgeben. Der Unterschied in der Geschwindigkeit und beim
großen O wird Ihnen auffallen. Führen Sie dann einen Reset mit SHIFT CTRL ESC durch. Es müßte die normale Einschaltmeldung auftauchen.

Leider bietet CP/M Plus nicht die Möglichkeit wie CP/M 2.2, direkt beim Booten Tastatur und Bildschirm einzustellen. Dies läßt sich jedoch einigermaßen über eine PROFILE. SUB-Batch-Datei erreichen.

Jürgen Weber , Schneider Magazin

★ PUBLISHER: Schneider Magazin
★ YEARE: 1987 , 1988
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LICENCE: LISTING
★ AUTHOR: Jürgen Weber

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» CPM  Plus  Patch  mit  DK  tronics  RAM    (Schneider  Magazin)    LISTING    GERMANDATE: 2020-06-12
DL: 28 fois
TYPE: PDF
SIZE: 228Ko
NOTE: 4 pages/PDFlib v1.6

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » GigaCAD Grafikkonvertierung unter CP/M (CPC Amstrad International)
» Applications » Condor 1 (Amstrad Action)
» Applications » CPM Starter
» Applications » CP/M Plus on ROM
» Applications » Camsoft Stock Control
» Applications » Initiation à CP/M : Le CP/M sur CPC 6128 (Amstrad Magazine)

CPCrulez[Content Management System] v8.7-desktop/cache
Page créée en 220 millisecondes et consultée 189 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.