Text from Ninja-Tools
Description: | German documentation |
Text: | Original-Dokumentation aus Magic Disk 07/94:
NINJA-TOOLS
- Lautlose und flinke Helfer -
----------------------------------------
Die Ninja-Tools bestehen aus vier klei-
nen Programmen, die Ihnen das Zusammens-
piel zwischen C64 und Floppy erleichten
sollen. Es handelt sich dabei um kleine
Helfer zum Schnelladen, -kopieren und
-formatieren, sowie um eine Packroutine,
die während des Ladens entpackt.
1) ALLGEMEINE BEDIENUNGSHINWEISE
Auf dieser MD finden Sie ingesamt fünf
"Ninja-Files". Das erste davon, mit Na-
men "NINJA-TOOLS", dient quasi als Aus-
wahl-Menu für die vier eigentlichen
Tool-Programme. Laden Sie es mit LOAD
"NINJA-TOOLS",8 und starten Sie es durch
'RUN'. Sie können nun eines der Tool-
Programme mit Hilfe der Tasten von '1'
bis '4' auswählen, woraufhin das gewähl-
te Programm automatisch nachgeladen und
gestartet wird. Sie können aber auch
jedes der Ninja-Programme "von Hand"
laden und starten (das erspart das Laden
des Menus), indem Sie es ganz normal mit
LOAD"NINJA-XXX",8 laden und ebenfalls
mittels 'RUN' starten.
2) NINJA-LOAD
Dies ist der serielle Flopyspeeder des
Ninja-Tool-Systems. Laden und starten
Sie ihn, so erscheint die Meldung "NIN-
JA-LOAD BY TEKLSOFT" auf dem Bildschirm,
die Sie darüber informiert, daß der
Schnellader aktiv ist. Laden Sie nun ein
File mittels LOAD in den Speicher, so
wird automatisch der Schnellader akti-
viert, der bis zu 25 Mal schneller ist,
als die original Laderoutine des C64.
Ninja-Load bleibt solange aktiv, bis die
Tastenkombination 'RUN/STOP-RESTORE'
gedrückt, oder ein Reset ausgelöst wird.
Danach kann sie mit einem "SYS320" wie-
der reaktiviert werden. Einige Programme
können nach dem Laden und Starten
abstürzen, da sie den Speicherbeich von
$E000 bis $FFFF nutzen, in dem Ninja-
Load sich breitgemacht hat. In diesen
Fällen sollten Sie den Schnellader vor
dem Starten des geladenen Programs immer
mit 'RUN/STOP-RESTORE' deaktivieren,
damit alles wieder wie gewünscht funk-
tioniert. Aus technischen Gründen kann
Ninja-Load nur Programme mit einer maxi-
malen Länge von 202 Blocks (bis Adresse
$D000) laden, was jedoch bei der Lade-
routine des Betriebssystems ebenfalls
der Fall ist.
2) NINJA-COPY
Hierbei handelt es sich um ein schnelles
Disketten-Kopier-Programm. Es kopiert
eine ganze Diskette in nur 90 Sekunden
(mit Verify in 145 Sekunden). Nach dem
Laden und Starten erscheint zunächst ein
kleiner Intro-Bildschirm, aus dem Sie
mit einem Druck auf die 'SPACE'-Taste in
das eigentliche Programm gelangen. Hier
stehen Ihnen nun einige Funktionen zur
Verfügung die mit den folgenden Tasten
aufgerufen werden:
a) 'D' - DIRECTORY
Dieser Menupunkt zeigt das Inhaltsver-
zeichnis der momentan eingelegten Dis-
kette auf dem Bildschirm an. Mit einem
beliebigen Tastendruck gelangen Sie dann
wieder ins Hauptmenu zurück.
b) 'C' - COPY DISK
Dies ist der eigentliche Kopierteil des
Programms. Hierbei werden Sie zunächst
dazu aufgefordert, eine Quelldiskette
einzulegen, was mit einem Druck auf die
'RETURN'-Taste bestätigt wird. Es wird
nun das erste Drittel der Diskette in
den Speicher geladen, wobei der Bild-
schirm in grauen Farben flackert. An-
schließend sind Sie dazu aufgefordert,
eine Zieldiskette einzulegen, was eben-
falls mit 'RETURN' bestätigt wird, und
woraufhin das erste Drittel der Quell-
diskette geschrieben wird. Dieser Vor-
gang wiederholt sich nun insgesamt drei
Mal, bis die gesamte Diskette kopiert
ist. Zum Abschluß gelangen Sie mit der
'RETURN'-Taste wieder ins Hauptmenu
zurück.
Sollte der Bildschirm während des Kopie-
rens nicht flackern, so gibt es Probleme
mit Erweiterungen am User Port. Sie
sollten diese dann vorher entfernen,
damit das Programm einwandfrei läuft
(bei einem Drucker mit Centronics-
Interface, reicht es in der Regel, den
Drucker einzuschalten, damit alles funk-
tioniert).
c) 'R' - RESET
Diese Funktion setzt nach einer, mit 'Y'
oder 'N' zu beantwortenden, Sicherheit-
sabfrage, den C64, sowie die Floppy wie-
der in den Einschaltzustand zurück, wo-
mit Sie Ninja-Copy auch verlassen.
d) 'F1' - VERIFY
Mit dieser Taste schalten Sie die Ve-
rify-Funktion ein und aus. Bei einge-
schaltetem Verify wird während des Ko-
pierens geprüft, ob die geschriebenen
Daten auch wirklich sauber auf die Dis-
kette übertragen wurden. Gerade bei al-
ten oder kaputten Disketten sollte diese
Option zur Datensicherheit verwendet
werden.
4) NINJA-FORMAT
Dies ist ein Programm zum besonders
schnellen Formatieren von Disketten.
Nach dem Programmstart wird zunächst
nach dem Namen der zu formatierenden
Diskette, sowie ihrer zweistelligen ID
gefragt. Hiernach kann noch gewählt wer-
den, ob ein Verify während des Formatie-
rens durchgeführt werden soll ('Y' für
"Verify an", 'N' für "Verify aus"). Nun
muß nur noch die Zieldiskette eingelegt
werden, was Sie mit einem Druck auf die
'SPACE'-Taste bestätigen. Die eingelegte
Diskette wird in nur 12(!) Sekunden (oh-
ne Verify) formatiert. Mit Verify dauert
es etwas länger. Nach abgeschlossener
Formatierung gibt Ihnen das Programm
noch den Diskettenstatus aus und wartet
Anschließend auf einen beliebigen Ta-
stendruck, der Sie wieder zum Program-
manfang zurückbringt.
5) NINJA-LOREPA
Dies ist ein Programm, das besonders für
die Programmierer unter Ihnen interes-
sant sein dürfte. Es handelt sich dabei
um einen Bytefolgen-Packer, mit dem es
möglich ist, eine gepackte Datei WÄHREND
des Ladens zu entpacken. Das hat mehrere
Vorteile: Zunächst einmal nimmt eine
Datei auf Diskette weniger Platz ein.
Zudem wird sie schneller geladen, da ja
weniger Daten zu transferieren sind.
Nicht zuletzt sparen Sie auch noch kost-
baren Speicherplatz im Hauptspeicher des
Computers, da herkömmliche Packer erst
nach dem Laden entpacken, wobei Spei-
cherplatz für die gepackten und entpack-
ten benötigt wird. Mit Ninja-LoRePa kön-
nen Sie nun also z.B. die Level- oder
Grafikdaten eines selbstprogrammierten
Spiels effizienter nachladen, wobei die
Daten während des Ladens automatisch an
der richtigen Fileadesse untergebracht
werden.
Nach dem Starten des Programms erscheint
gleich auch schon das Hauptmenu, aus dem
Sie die folgenden vier Menupunkte wählen
können:
a) 'F1' - START PACKER
Hiermit starten Sie den eigentlichen
Packer. Bitte beachten Sie, daß Sie vom
Packer nicht mehr ins Hauptmenu zurück-
kehren können (wohl aber können Sie meh-
rere Files hintereinander packen).
Nach dem Starten des Packers sind Sie
zunächst dazu aufgefordert, den Namen
des Files anzugeben, das gepackt werden
soll. Nach Eingabe und Bestätigung mit-
tels 'RETURN'-Taste, wird die Datei nun
geladen und gepackt, was durch ein Bild-
schirmflackern angezeigt wird. Nach dem
Packen erscheint eine Information über
die erreichte Verkürzung der Daten. Sie
sehen hier zunächst die ursprüngliche
Länge des Files, sowie die gepackte Län-
ge, jeweils in Disketten-Blocks. Es wird
nun nach dem Namen gefragt, unter dem
das File wieder auf Diskette gelangen
soll. Nach Eingabe desselben werden die
gepackten Daten auf Diskette geschrie-
ben. Hiernach haben Sie die Möglichkeit,
die Daten beliebig oft unter anderem
Namen oder auf andere Disketten noch
einmal zu schreiben. Geben Sie hier "<-"
an, so kehrt der LoRePa wieder zum An-
fang zurück, von wo Sie ein neues File
packen können.
Bei allen Filenamensabfragen kann als
Name übrigens auch das "$"-Zeichen ange-
geben werden, was das Programm dazu ver-
anlasst, das Inhaltsverzeichnis der ein-
gelegten Diskette anzuzeigen (Bedienung
wie 'F7' im Hauptmenu).
b) 'F3' - ENTER MEM OF LOREPA
Mit diesem Menupunkt können Sie die
Startadresse der Lade- und Entpackrouti-
ne verändern. Hierzu erscheint ein Ein-
gabecursor in der untersten Menuzeile
("Adress"), wo Sie die neue Adresse in
hexadezimaler Schreibweise eingeben kön-
nen.
c) 'F5' - RELOCATE AND SAVE LOREPA
Mit diesem Menupunkt wird die Lade- und
Entpackroutine von LoRoPa an die mit
'F3' eingegebene Adresse relokiert und
kann anschließend gespeichert werden.
Geben Sie hierzu lediglich den gewünsch-
ten Namen an, unter dem die Routine auf
Diskette wandern soll, und bestätigen
Sie mit 'RETURN'. Nach dem Speichervor-
gang wird ein Reset ausgelöst, und damit
das Programm verlassen. Die Routine kann
nun unter dem angegebenen Namen, mit der
Endung ",8,1" in den Speicher geladen,
und zum Entpacken während des Ladens
benutzt werden (s.u.).
d) 'F7' DIRECTORY
Dieser Menupunkt liest das Inhaltsver-
zeichnis der eingelegten Diskette und
gibt es auf dem Bildschirm aus. Hiernach
kann mit der 'SPACE'-Taste wieder zum
Hauptmenu zurückgekert werden.
6) DIE LOREPA-ENTPACKROUTINE
Möchten Sie nun aus einem eignen Pro-
gramm heraus gepackte Daten nachladen,
so haben Sie zwei Möglichkeiten die Lo-
RePa-Entpackroutine zu verwenden. In
unseren Beispielen gehen wir von einer
an Adresse $C000 relokierten Routine
aus. Haben Sie die Routine an eine ande-
ren Adresse untergebracht, so müssen Sie
jeweils diese Startadresse als Aufrufa-
dresse der LoRePa-Laderoutine verwenden.
In beiden Anwendungsmethoden muß die
Routine zuvor natürlich mit LOAD"NA-
ME",8,1 in den Speicher geladen worden
sein:
a) DIREKTES LADEN
Hier setzen Sie den Namen und die Devi-
cenummer mit Hilfe des BASIC-Befehls
<SYS57812 "NAME",8> fest. Nun wird die
LoRePa-Routine mit "SYS <Startadresse>"
aufgerufen, um die gepackten Daten zu
laden. Hier ein Beispielprogramm:
10 SYS57812"GEPACKT",8:SYS49152
20 ...weiter im Programm...
b) INDIREKTER AUFRUF
Bei dieser Methode wird die Startadresse
der LoRePa-Routine direkt in die Sprung-
vektoren der LOAD-Routine des Be-
triebssystems geschrieben. Dadurch wird
bei jedem normalen LOAD-Befehl automa-
tisch die LoRePa-Routine aufgerufen. Um
die Routine zu installieren, müssen Sie
zunächst Low- und Highbyte der Start-
adresse der Routine berechnen, und dann
in die Adressen 816 und 817 schreiben.
Für die Beispieladresse von $C000 lauten
Low- und Highbyte 0 und 192 (192*256+0=
49152= $C000). Mit den folgenden beiden
POKEs wird nun der LOAD-Vektor verbogen:
POKE816,0: POKE817,192
Geben Sie nun den Befehl LOAD"NAME",8,1
ein, so wird die bezeichnete Datei auto-
matisch mit der LoRePa-Routine geladen
und entpackt. Bitte beachten Sie jedoch,
daß die Routine jedes angegebene File zu
entpacken versucht. Sie können nun also
keine ungepackten Files mehr laden.
Hierzu müssten Sie den LOAD-Vektor mit
den folgenden beiden POKEs wieder auf
die normale Betriebssystems-Routine
zurücksetzen:
POKE816,165: POKE817,244
c) BENUTZUNG VON ASSEMBLER AUS
In Assembler muss lediglich mit Hilfe
der SETNAM-Routine des Betriebssystems
der Name des zu ladenden Files gesetzt
werden. Ein anschließender Sprung auf
die LoRePa-Routine lädt das File dann:
LDA #04 ;Länge d. Filenamens
LDX #<(NAME) ;Low-Byte Namensadresse
LDY #>(NAME) ;High-Byte Namensadresse
JSR $FFBD ;SETNAM aufrufen
JSR $C000 ;LoRePa-Routine aufrufen
...
Natürlich kann auch von Assembler aus
die LOAD-Routine des Betriebssystems
verwendet werden. Einfach mittels LDA
und STA den Vektor bei $0330/$0331
verändern und dann wie gewohnt die LOAD-
Routine bei $FFD5 verweden.
(ub)
|
<-- Back
|
|
|