IRQ-LOADER-SYSTEM
- Daten Laden ohne Zeitverlust -
----------------------------------------
Das IRQ-Loader-System soll vor allem den
Spieleprogrammierern unter Ihnen eine
Hilfe sein. Wie allgemeinhin bekannt, so
sperren die Laderoutinen des Betriebssy-
stems während des Ladens desöfteren den
IRQ-Interrupt, um so ein exakteres Lade-
timing zu erzielen. Der Nachteil dieser
Sache: Musiken, oder Raster-IRQ-Effekte,
die während des Ladens laufen, werden
gebremst und kommen mit ihrem Timing
durcheinander, was sich in einem ver-
langsamten Abspielen der Musik, oder
Rastergeflacker manifestiert. Das IRQ-
Loader-System soll hier nun Abhilfe
schaffen. Es stellt Ihnen eine Laderou-
tine zur Verfügung, die während des La-
dens den IRQ nicht abschaltet, und es
somit erlaubt, Musiken und/oder Raster-
IRQ-Effekte ungestört weiterlaufen zu
lassen.
1) PROGRAMM-BEDIENUNG
Laden Sie das Programm zunächst mittels
LOAD"IRQ-LOAD-SYSTEM!",8 und starten Sie
es durch "RUN". Nach kurzer Entpackzeit
erscheint nun das Programmintro, aus dem
Sie durch Drücken der <SPACE>-Taste in
das eigentliche Programm gelangen. Die-
ses dient lediglich der Relokation der
Laderoutine an eine, von Ihnen gewünsch-
te, Adresse. Sie können hierzu lediglich
das Highbyte der gewünschten Adresse mit
Hilfe des keinen Quadratcursors verän-
dern. Ist die Eingabe korrekt, so
schließen Sie mit <RETURN> ab. Mit <DEL>
können Sie zuvor noch Korrekturen vor-
nehmen. Hiernach verlangt das Programm
eine Zieldiskette von Ihnen, auf die es
die IRQ-Loader-Routine ab der gewünsch-
ten Adresse ablegen soll. Diese Diskette
sollte noch mindestens 5 freie Blöcke
enthalten, da der Loader exakt 1KB
($0400 Bytes) lang ist. Drücken Sie nun
die <SPACE>-Taste, so wird der Loader
unter dem Namen "IRQ-LOADER" gespeichert
und anschließend ein Reset ausgelöst.
2) DER LOADER
Die vom IRQ-Loader-System erzeugte Lade-
routine können Sie nun mit LOAD"IRQ-
LOADER",8,1 an die angegebene Ladeadres-
se laden. Der Loader muß nun zunächst
mit einem "SYS Adresse" initialisiert
werden, wobei "Adresse" für die angege-
bene Ladeadresse steht. Nach 1-2 Sekun-
den kehrt das Programm zurück, womit der
Loader nun betriebsbereit ist. Beachten
Sie bitte, daß während der einmaligen
Initialiserung der IRQ abgeschaltet
wird. Initialisieren Sie den Loader also
immer VOR der Initialisierung des IRQs!
Von nun an können Sie jederzeit die La-
deroutine selbst aufrufen, um Programm-
daten nachzuladen, ohne daß der IRQ da-
von gestört wird.
Beachten Sie bitte, daß der Loader aus-
schließlich Files mit zwei Zeichen im
Filenamen nachladen kann. Die nachzula-
denen Files dürfen also keine längeren
Filenamen aufweisen.
Desweiteren wurde während der Initiali-
sierung ein spezielles Programm in den
Floppyspeicher geschrieben, das aus-
schließlich dem Laden von Files mit Hil-
fe des IRQ-Loaders dient. Bei normalen
LOAD-Befehlen wird der C64 abstürzen.
Leider kann diese Routine auch softwa-
remässig nicht mehr deaktiviert werden.
Dies können Sie nur durch einen Floppy-
reset (im einfachsten Fall ein kurzes
aus- und wiedereinschalten der Floppy)
erzielen!
Die Laderoutine selbst kann nun sehr
einfach angewandt werden. Nachdem die
Initialisierung durchgeführt wurde, la-
den Sie ein File mit den folgenden drei
Assembler-Befehlen nach:
LDX #$XX
LDY #$YY
JSR Adresse+3
Die Werte "$XX" und "$YY" stehen dabei
für die ASCII-Codes der beiden Buchsta-
ben des Filenamens, die der IRQ-LOADER
laden soll. Für den Namen "FM" z.B. müs-
sen Sie also die Hexwerte $46 und $4D in
X- und Y-Register laden. Der anschlies-
sende JSR-Befehl an die Startadresse des
Loaders plus 3 (z.B. $1003, wenn der
Loader bei $1000 liegt), lädt dieses
File nun an die, in seinen ersten beiden
Bytes abgelegte Startadresse.
Beachten Sie bitte, daß die Laderoutine
selbst KEINE IRQ-Routine ist. Sie läuft
in der Hauptschleife des Computers und
blockiert während des Ablaufs Ihr Pro-
gramm. Der Unterschied besteht nur da-
rin, daß ein von Ihnen zuvor Initiali-
sierter IRQ ungestört während des Ladens
weiterläuft und es somit zu keinen Stör-
effekten kommt.
(ub)