Magic Disk 64

home to index to html: MD9503-UTILITIES-IRQ-LOAD-SYSTEM.html
            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)
Valid HTML 4.0 Transitional Valid CSS!