Magic Disk 64

home to index to html: MD9212-UTILITIES-BETA-SKIP_1.html
Mit dem BetaSkip-System wollen wir Ihnen
wieder  einmal  ein Utility der ganz be-
sonderen Sorte  vorstellen.  Der  Anwen-
dungsbereich  dieses Programmpaketes ist
so vielseitig, daß er nicht sehr einfach
zu beschreiben ist. Primär ist  das  Be-
taSkip-System   eines   der  schnellsten
softwaremäßigen Ladesysteme, die für den
64er zu haben sind. Darüberhinaus bietet
es dem einfachen Anwender  die  Möglich-
keit,  die Files einer Diskette zu einem
einzigen, lauffähigen  File  zusammenzu-
binden,  und die darin enthaltenen Teile
über ein komfortables Menu auzufrufen.  
Ein   weiterer   Vorteil  des  BetaSkip-
Systems sind die darin enthaltenen  Pak-
ker,  die  für  nahezu jeden Anwendungs-
zweck verwendbar sind und bei einer  ho-
hen  Effizienz  dennoch annehmbare Pack-
zeiten haben.                           
Doch damit nicht genug: zusätzlich bein-
haltet  das  BetaSkip-System  einen sehr
effektiven Kopierschutz, der auch  schon
in   komerziellen  Produkten  Verwendung
fand. Diesen  können  Sie  einfach,  per
Programm,  auf einer Diskette installie-
ren. Einmal darauf vorhanden, kann diese
Diskette nicht mehr so  einfach  kopiert
werden.  Selbst  die besten Nibbler-Pro-
gramme versagen bei ihm!!!              
Wir  wollen  nun die einzelnen Programme
des BetaSkip-Systems durchgehen und  de-
ren Funktion erläutern.                 
1) DER BETA-DYNAMIC-LEVEL-COMPRESSOR    
Dies ist der komfortabelste und Effizen-
teste Packer des Beta-Systems. Im Zusam-
menhang  mit  dem Beta-Ladesystem werden
Sie ihn wohl am häufigsten verwenden, da
er spezielle Pack-Files  generiert,  die
von diesem direkt weiterverarbeitet wer-
den können. Optional  können  aber  auch
einfach  durch 'RUN' startbare Files ge-
neriert werden. Der  Vorteil  an  diesem
Packer  ist seine hohe Packeffizienz (im
Test hat er ein ungepacktes File mit  65
Blocks  auf  sage und schreibe 17 Blocks
heruntergekürzt)  und  die  Möglichkeit,
die  Files  einer ganzen Diskette zu se-
lektieren. Da er relativ hohe Packzeiten
hat (ca. 1.5 Std. für ein File  von  208
Blocks  Länge), können Sie so eine ganze
Diskette getrost einmal über  Nacht  zu-
sammenpacken  lassen.  Kommen wir nun zu
seiner Beschreibung:                    
Laden  Sie  den  Cruncher  mit LOAD"BETA
SEQ.LEV.CRU",8 von dieser MD und starten
Sie ihn mit 'RUN'. Nach kurzer  Entpack-
zeit präsentiert sich Ihnen das Hauptme-
nu, in dem Ihnen folgende Menupunkte zur
Verfügung stehen:                       
F1 - GO PACKER                          
Mit  diesem  Menupunkt rufen Sie den ei-
gentlichen Packer auf. Hierzu kommen wir
später.                                 
F3 - DIRECTORY                          
Durch Druck auf die 'F3'-Taste wird  das
Directory der Diskette im Floppylaufwerk
mit  der Gerätenummer 8 angezeigt. Durch
Druck auf irgeneine Taste  gelangen  Sie
ins Hauptmenu zurück.                   
F5 - DOS COMMAND                        
Mit  diesem  Menupunkt  können Sie einen
DOS-Befehl an die Floppy senden.  Hierzu
erscheint in der unteren Bildschirmhälf-
te der Prompt "DOS:" und ein Cursor war-
tet auf Ihre Eingabe. Nach Ausführen des
Befehls  liest  das Programm den Floppy-
Status aus, und  zeigt  ihn  am  unteren
Bildschirmrand an. Mit einem Tastendruck
gelangen Sie zurück ins Hauptmenu.      
F7 - MODE                               
Hier stellen Sie den Packmodus  ein.  Es
gibt  derer drei. Sie unterscheiden sich
nur in  der  Art  der  Weiterverwendeung
eines  Programms.  Durch  Druck auf 'F7'
wird der jeweils  nächste  Modus  einge-
schaltet.  Hier  die  einzelnen Modi und
deren Bedeutung:                        
LOAD: Ist dieser Modus  aktiv,  so  wird
      ein  gepacktes  Programm  so abge-
      speichert, daß es  später  während
      des  Ladevorgangs  entpackt werden
      kann. Diese  Einstellung  ist  nur
      dann  sinnvoll,  wenn Sie das File
      später mit dem BetaSkip-Ladesystem
      in ein Menu einbinden wollen. Ver-
      suchen  Sie es normal zu laden, so
      wird es nicht zum Laufen zu  brin-
      gen  sein.  Wird  ein so gepacktes
      File vom Menu des BetaSkip-Systems
      aufgerufen, so bewirkt  dies  zwar
      eine  Geschwindigkeitseinbuße beim
      Laden, jedoch wird das  File  ohne
      zusätzlichen  Speicheraufwand dann
      direkt an seinen Platz im Speicher
      geladen, von wo aus direkt aufruf-
      bar  ist.  Eine  weitere Anwendung
      wäre auch das Nachladen von Levels
      bei einem Spiel. Sie können so die
      Leveldaten direkt an  ihren  Platz
      im Speicher laden lassen.         
MEMO: Auch  diese Einstellung können Sie
      nur  in   Verbindung   mit    dem 
      BetaSkip-Ladesystem verwenden. Sie
      gibt  an,  daß  ein File erst nach
      dem Laden entpackt wird. Dies  er-
      ledigt   dann  das  BetaSkip-Lade-
      system automatisch  für  Sie.  Der
      Vorteil gegenüber des 'RUN!'-Modus
      (s.u.)   ist,  daß  der  Entpacker
      nicht noch  eigens  mitgespeichert
      werden muß.                       
RUN!: Dieser Modus generiert Files,  die
      durch 'RUN' startbar sind. Er kann
      somit  auch  für  Zwecke außerhalb
      eines   BetaSkip-Menus   verwendet
      werden.                           
F8- DESTINATION                         
Durch Druck auf diese Taste schalten Sie
zwischen  den  Floppylaufwerken  mit den
Numern 8 und 9 als  Ziellaufwerken  hin-
und her. Dies funktioniert natürlich nur
dann, wenn Sie über ein zweites Laufwerk
verfügen, das über die Devicenummer 9 zu
erreichen ist. Der Vorteil eines zweiten
Laufwerks  als Ziellaufwerk ist der, daß
die Daten der Quelldiskette im Original-
zustand bleiben (s.u.)!                 
DER EIGENTLICHE PACKER                  
Zum eigentlichen Packprogramm des  Dyna-
mic-Level-Compressors  gelangen  Sie mit
Hilfe der 'F1'-Taste. Sie sehen  nun  im
obersten  Viertel  des  Bildschirms eine
Anzeige der  verfügbaren  Tastenfunktio-
nen.  Im unteren Teil sind die Namen al-
ler Files der eingelegten  Diskette  (in
Laufwerk  8)  angezeigt.  Mit  Hilfe der
Cursor-Tasten steuern Sie einen inversen
Balken durch die File-Liste. Sie  können
nun die zu packenden Files mit Hilfe der
folgenden Tastenfunktionen anwählen:    
CR : (=Return)  Hiermit  wird  ein  File
     angewählt. Dies wird durch ein Häk-
     chen  am  Ende des Filenamens ange-
     zeigt.                             
DEL: Hiermit  deselektieren Sie ein File
     wieder. Das Häkchen  am  Ende  ver-
     schwindet.                         
  T: (Toggle) Mit dieser Taste wird  die
     Selektion  invertiert.  Alle  nicht
     gewählten  Files  werden  als  'ge-
     wählt'   gekennzeichnet  und  umge-
     kehrt. Sie  können  diese  Funktion
     auch verwenden, wenn Sie alle Files
     packen  lassen wollen. Benutzen Sie
     sie einfach, wenn  Sie  noch  keine
     Files angewählt haben.             
  R: (Rename)  Hiermit  können  Sie  ein
     File umbenennen. Drücken Sie  diese
     Taste,  so verschwindet der inverse
     Balken über dem aktuellen Filenamen
     und ein Cursor erscheint. Sie  kön-
     nen  nun  einen neuen Namen für das
     File eingeben. Während der  Eingabe
     können  Sie  mit  den  Tasten 'CRSR
     LEFT' und 'CRSR RIGHT'  den  Cursor
     im  Filenamen  hin- und herbewegen.
     Durch Druck auf 'RETURN'  schließen
     Sie die Eingabe ab. Ein umbenanntes
     File  wird  auch automatisch selek-
     tiert.                             
   : Mit  dieser  Taste  geben Sie einem
     zuvor umbenannten File seinen alten
     Namen zurück.                      
CLR: Mit dieser Taste löschen  Sie  alle
     Selektionen  wieder. Zusätzlich er-
     halten alle umbenannten Files ihren
     alten Namen zurück.                
HOME:Hiermit springen Sie mit dem Selek-
     tionsbalkten  auf  den  ersten  Fi-
     leeintrag.                         
R/S: (=RUN/STOP)  Diese Taste bricht die
     Fileselektion  ab  und  kehrt   ins
     Hauptmenu zurück.                  
SPC: (SPACE)  Diese  Taste  startet  den
     Packvorgang.  Wenn  Sie  kein  File
     selektiert haben, so erscheint eine
     Fehlermeldung und es wird mit einem
     Tastendruck zum Hauptmenu zurückge-
     kehrt  (ebenso bei leerer Diskette,
     bzw. leerem Laufwerk).             
  <: Mit  dieser  Taste  rufen  Sie eine
     Sonderfunktion auf. Sie benennt das
     aktuelle File in "BETAxx" um,  mar-
     kiert  es als 'gewählt' und springt
     gleich weiter zum nächsten Eintrag.
     Hierbei steht "xx" für eine hexade-
     zimale  Zahl  zwischen $01 und $63.
     Diese spezielle Art der Umbenennung
     ist  unter  Verwendung  des   Beta-
     Ladesystems  (und  des Menu-Makers)
     von Bedeutung (sh. dort). Jedesmal,
     wenn Sie nun die '<'-Taste drücken,
     wird dem File der Name  "BETA"  und
     eine  fortlaufende  Nummer zugewie-
     sen. Die Nummer, die  als  nächstes
     erscheint, wird ganz rechts oben am
     Bildschirm  angezeigt.  Durch Druck
     auf die '↑'-Taste setzten  Sie  sie
     wieder  auf  "01" zurück und können
     somit erneut mit einer Namensverga-
     be  beginnen.  Natürlich können Sie
     mit Hilfe der  ' '-Taste  so  umbe-
     nannten  Files  ihren  alten  Namen
     wieder zurückgeben.                
Wenn Sie nun  alle  zu  packenden  Files
markiert haben, so starten Sie den Pack-
vorgang mit 'SPACE'. Der Bilschirm  wird
nun  gelöscht  und  auf der linken Bild-
schirmseite erscheint der Text "LOADING:
Name". Es wird nun das erste File in den
Rechner eingelesen. Ist dies  geschehen,
so  wird  der Bildschirm grau. Ab und zu
werden Sie weiße  Linien  darüberhuschen
sehen.  Dies  zeigt  an,  daß der Packer
gerade am arbeiten ist. Durch Druck  auf
die  'SPACE'-Taste  sehen Sie wieder den
normalen Bildschirm, auf dem links  oben
der  Text  "PACKING: Name" steht. In der
Ecke rechts oben sehen Sie  die  Anzeige
"LEFT:$XXXX",  wobei "$XXXX" für die he-
xadezimale Anzahl der Bytes, die noch zu
packen sind, steht. Sie  zählt  von  der
Länge  des  Files bis auf "$0000" herun-
ter. Ist  dies  geschehen,  so  ist  der
Packvorgang  beendet. Wenn Sie die 'SPA-
CE'-Taste wieder loslassen, so erscheint
wiederum der graue  Bildschirm.  Drücken
Sie  diese Taste bitte immer nur zur Ih-
rer Information und lassen Sie sie  bald
wieder los. Der abgeschaltete Bildschirm
beschleunigt  den Packvorgang nämlich um
ca. 5%.                                 
Ist ein File zu Ende  gepackt,  so  wird
seine ungepackte Version zunächst einmal
von  der  Diskette  gelöscht.  Dies wird
durch den  Text  "SCRATCH:  Name"  ange-
zeigt.  Hiernach wird es (evtl. auch un-
ter einem neuen Namen)  wieder  auf  der
Diskette   gespeichert.  Angezeigt  wird
dies durch den Text "SAVING: Name".  Das
File  wird  nun mit einem Häkchen verse-
hen, um anzuzeigen, daß es fertig  bear-
beitet  wurde.  Der  Vorgang  wiederholt
sich nun so lange, bis alle  angewählten
Files der Diskette bearbeitet wurden. Am
Ende des Packvorgangs gelangen Sie durch
einen   Tastendruck  wieder  zurück  zum
Hauptmenu.                              
Wenn Sie über ein zweites Floppylaufwerk
verfügen  und  dieses  als  Ziellaufwerk
angaben, so löscht der Packer die Quell-
files nicht. Er schreibt  die  gepackten
Files  dann  auf das zweite Laufwerk und
beläßt die Quelldiskette im  Originalzu-
stand.  Wenn Sie nur ein Laufwerk besit-
zen und dennoch ihre alten Files  behal-
ten  möchten, so müssen Sie vor dem Pak-
ken ein Backup der Quelldiskette erstel-
len  (auch  bei den ersten Versuchen mit
diesem Programm ist das  zu  empfehlen),
da  die  darauf enthaltenen Daten später
unweigerlich gelöscht sind!             
2) DER BETA-DYNAMIC-COMPRESSOR          
Dieser Packer  stellt  im  Prinzip  eine
'abgespeckte'  Version des Beta-Dynamic-
Level-Compressors dar. Er  arbeitet  wie
der  RUN!-Modus  desselben, erzeugt also
durch  'RUN'  startbare  Files.  Hierbei
unterscheidet  er sich jedoch in folgen-
den Punkten:                            
* Es können auch Files  gepackt  werden,
  die  nicht  mit 'RUN', sondern mit di-
  rektem Aufruf zu starten sind.        
* Es  können noch einige zusätzliche Op-
  tionen angegeben werden, die  den  In-
  halt  der Speicherstelle $0001 und den
  Zustand des Interrupt-Flags  des  Pro-
  zessors bei Einsprung in das entpackte
  Programm festlegen.                   
* Es  wird  immer nur EIN EINZELNES File
  gepackt. Die Fileselektion fällt weg. 
Laden Sie diesen  Packer  mit  LOAD"BETA
SEQ.PRG.CRU",8  und  starten Sie ihn mit
'RUN'. Nach kurzer Entpackzeit erscheint
der Hauptbildschirm,  auf  dem  Sie  den
Packer  mit den notwenigen Eingaben ver-
sorgen.                                 
Zunächst  einmal wird nach dem Namen des
zu  ladenden  Files  gefragt.  Nach  dem
Prompt  "Load:"  sehen  Sie  einen Rota-
tionscursor, mit dem Sie den  Namen  des
Files  eingeben. Hierbei erlaubte Tasten
sind die normalen  alphanumerischen  Ta-
sten,  die  'DEL'-Taste  zum Löschen des
letzten Zeichens und die  'RETURN'-Taste
zum Abschließen der Eingabe.            
Als nächstes werden Sie nach  dem  Namen
gefragt,  unter  dem  das  gepackte File
gespeichert werden soll. Geben Sie  sel-
bigen hinter dem Prompt "Save:" ein.    
Mit dem Prompt  "jmp$:"  wird  nach  der
Einsprungadresse    (in    hexadezimaler
Schreibweise) des  entpackten  Programms
gefragt.  Hier  gibt es mehrere Möglich-
keiten:                                 
a) Ist das zu packende Programm ein  As-
   semblerprogramm,   daß  normalerweise
   mit  einem  "SYS"-Befehl   aufgerufen
   wird,  so  müssen Sie die Adresse des
   SYS-Aufrufs in hexadezimale  Darstel-
   lung umrechnen und hier angeben.     
b) Ist das zu packende Programm ein  As-
   semblerprogramm, das jedoch mit 'RUN'
   startbar  ist,  so  müssen Sie dieses
   Programm  vorher  mit  LIST  auf  den
   Bildschirm  bringen  und  die Adresse
   des  dort   angezeigten   SYS-Befehls
   (natürlich  in  Hex  umgerechnet) als
   Aufrufadresse angeben. Oder aber  Sie
   verfahren wie in "c)".               
c) Ist  das zu packende Programm ein BA-
   SIC-Programm (oder eines wie in  "b)"
   beschrieben,  so  müssen Sie die RUN-
   Routine des  Basic-Interpreters  ans-
   pringen.   Diese  liegt  bei  Adresse
   $A659.                               
Hieran anschließend fragt Sie der Packer
nach dem Inhalt  der  Speicherzelle  $01
("$01$:"),  vor  Einsprung  in  das Pro-
gramm. Diese Adresse  regelt  das  Bank-
Switching im 64er. Im Normalfall enthält
sie den Wert $37 (dez. 55).             
Nun wird noch gefragt, ob etwaige Inter-
rupts  (IRQs)  erlaubt  sein sollen oder
nicht ("cli?:"). Dies trifft  im  Regel-
fall  zu.  Hier  können  Sie nur mit 'Y'
oder 'N' antworten. Im Regelfall antwor-
ten Sie also mit 'Y'.                   
Die letzte Abfrage lautet "run  start?".
Sie ist ganz wichtig im Zusammenhang mit
der  Art  und  Weise in der das Programm
später weiterverwandt  wird.  Geben  Sie
hier  'Y'  an, so wird das gepackte Pro-
gramm hinterher so gespeichert,  daß  es
mit  'RUN'  startbar  ist.  Hierbei  ge-
schieht dann  nichts  anderes,  daß  Sie
damit  den  Entpacker  aufrufen, der das
Programm entsprechend  entpackt  und  an
der  zuvor  gegebenen  Adresse  aufruft.
Geben Sie hier jedoch ein  'N'  ein,  so
richtet  sich der Packer nach der Ladea-
dresse des Programms. Steht es  z.B.  im
Speicherbereich  von  $1000-$XXXX,  dann
würde das  gepackte  File  ebenfalls  an
diese  Adresse geladen werden, wobei der
Packer dann bei $1000 liegt (und dort zu
starten wäre). Für den normalen  Hausge-
brauch  ist  es  allerdings ausreichend,
wenn Sie 'Y' eingeben.                  
Der  Packer  fragt Sie nun abschließend,
ob alle Angaben  richtig  sind  ("Every-
thing ok ?"). Wenn ja, antworten Sie mit
'Y'  und  der  Packvorgang beginnt. Wenn
nein, so antworten Sie mit 'N'  um  alle
Eingaben nochmals durchführen zu können.
Haben Sie den Packer mit 'Y'  gestartet,
so fordert er Sie zunächst dazu auf, die
Quelldiskette einzulegen ("Insert Source
Disk").  Tun Sie dies und bestätigen Sie
mit einem  Tastendruck.  Das  angegebene
File  wird nun geladen und gepackt. Wäh-
rend des Packens wird, wie gewohnt,  der
Bildschirm      abgeschaltet.      Durch
Gedrückt-halten der 'SPACE'-Taste werden
Ihnen die noch verbleibenden zu  packen-
den Bytes angezeigt.                    
Nach dem Packen werden Sie dazu aufgefo-
dert die Zieldiskette  einzulegen  ("In-
sert  Target  Disk").  Tun  Sie dies und
bestätigen Sie  mit  einem  Tastendruck.
Nachdem  das  Programm gespeichert wurde
erhalten Sie nochmals  die  Möglichkeit,
es  auf  einer anderen Diskette zu spei-
chern. Drücken Sie hier die  'RUN/STOP'-
Taste  um einen Reset auszulösen und da-
mit das Programm zu verlassen. Jede  an-
dere  Taste  speichert das gepackte Pro-
gramm nochmals ab.                      
3) DER BETA-DYNAMIC-TURBO-COMPRESSOR    
Der  dritte  Packer des Beta-Systems ist
für eine ganz besondere Art von Program-
men  geschrieben  worden.  So ist es mö-
glich, mit diversen Freezer-Modulen  den
Speicherinhalt des 64ers auf Diskette zu
speichern.  So können Sie z.B. aus einem
Spiel aussteigen und  es  später  wieder
starten.  Wichtig dabei ist auch der In-
halt des Stack-Pointers.                
In der Regel werden bei so einem Vorgang
zwei Files auf die Diskette geschrieben:
ein langes File (meist mit 202  Blocks),
das  den Bereich von $0100-$CFFF enthal-
ten  kann,  und  ein  kürzeres  (ca.  50
Blocks),  das  in  der Regel den Bereich
von $D000-$FFFF enthält. Man wählt diese
Methode, da das erste File auf sehr ein-
fache  Weise auch mit dem normalen LOAD-
Befehl geladen werden kann, ohne irgend-
welchen großen Schaden anzurichten. Wür-
de das zweite File an seine Adresse  ge-
laden  werden, so würde es in den norma-
lerweise eingeschalteten I/O-Bereich des
64ers schreiben und  somit  den  Rechner
zum  Absturz  bringen.  Mit  dem  Turbo-
Compressor haben Sie nun die Möglichkeit
zwei solche Files zu verarbeiten. Er ist
speziell darauf ausgelegt,  kann  jedoch
auch  'normale' Files packen. Ein weite-
rer Vorteil an diesem Packer  ist  seine
Geschwindigkeit.  Er lädt die Daten sehr
schnell in den Speicher des Rechners und
benötigt zum Packen nicht länger als  10
Sekunden!  Desweiteren  kann er fast den
gesamten Speicher des  C64  zusammenpak-
ken. Sein maximaler Packbereich geht von
$0035-$FFFF!!  Kommen wir nun jedoch zur
Beschreibung des Packers.               
Bitte laden Sie nun Teil 2 der Anleitung
für das BETA SKIP SYSTEM !              
Valid HTML 4.0 Transitional Valid CSS!