Magic Disk 64

home to index to html: MD8712-TIPS_+_TRICKS-9.1.html
             Tips & Tricks              
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Trotz der großen Zahl an Programmen, die
derzeit  für  den  C64  auf  dem   Markt
erhältlich sind, nimmt die Schar  derer,
die sich  für  spezielle  Probleme  ihre
eigenen Programme schreiben, täglich zu.
Das ist gut so, denn schließlich soll es
ja auch in  ein  paar  Jahrzehnten  noch
Menschen geben,  die  programmieren  und
nicht nur vorgekaute Programme verarbei-
ten können.                             
Die Programmierarbeit wird oftmals durch
kleine Tricks, die  nicht  unbedingt  in
jedem Handbuch zu finden sind  erheblich
erleichtert.                            
Solche Programmierkniffe wird Ihnen  das
Magic team in jeder  Ausgabe  an  dieser
Stelle präsentieren.  Zusammen  mit  den
kleinen Hilfsprogrammen, die Sie auf je-
der Magic disk unter der Rubrik  "UTILI-
TIES" finden, können Sie sich so mit der
Zeit eine Bibliothek  an  Utilities  und
Tricks erstellen,  durch  die  das  pro-
grammieren auf Ihrem C64 noch mehr Freu-
de macht.                               
In dieser ersten Folge beschäftigen  wir
uns mit  dem  Programmschutz  und  einer
Deluxe-Cursordarstellung, wie sie  sonst
nur bei den PC's zu finden ist.         
Sicher kennen Sie das folgende Problem: 
Sie haben ein Programm geschrieben,  bei
dem  es  Ihnen  nicht  von  Vorteil  er-
scheint, daß andere Personen  es  abbre-
chen, listen, verändern (z.B. durch eine
falsche Urhebererklärung) etc.          
Ein  laufendes  Basicprogramm  kann  man
normalerweise durch die Taste "RUN/STOP"
unterbrechen.  Diese  Möglichkeit   kann
jeodch durch folgenden Befehl  unterbun-
den werden:                             
POKE 788,52                             
Er bewirkt, daß das  Betriebssystem  die
Routine,  die  die  Stoptaste   abfragt,
nicht mehr anspringt. Probieren  Sie  es
aus:                                    
FOR I = 1 TO 100 : PRINT I : NEXT I     
Diese Zeile, im Direktmodus  eingegeben,
druckt die Zahlen 1 bis 100 aus.  Versu-
chen Sie nun, die durchlaufende  Zahlen-
reihe mit der STOP-Taste anzuhalten,  so
werden sie feststellen,  daß  ein  Druck
auf dieselbe nicht mehr fruchtet.  Geben
sie diese Zeile  als  Programm  ein  und
starten es mit RUN, so kann auch  dieses
nicht mehr unterbrochen werden.         
Eine Unterbrechung erreicht  man  jedoch
immer noch durch  die  Tastenkombination
RUN/STOP + RESTORE. Um auch  diese  Mög-
lichkeit außer Kraft  zu  setzen,  geben
sie nur:                                
POKE 808,225                            
ein. Probieren Sie wieder die Wirkung am
Beispiel der FOR ... NEXT Schleife.     
Ein noch raffinierterer Trick besteht im
Ausschalten des LIST-Befehls. Geben  Sie
einmal folgenden Befehl ein:            
POKE 775,199                            
Jetzt versuchen Sie bitte, sich  ein  im
Speicher vorhandenes Basicprogramm durch
LIST anzusehen ... überrascht?          
Durch RUN läßt sich Ihr Programm  natür-
lich noch ganz normal starten,  als  sei
nichts passiert.                        
Nun zur versprochenen  Cursordarstellung
a la PC. Wenn Sie das Inhaltsverzeichnis
der Magic disk 64 anschauen,  so  finden
Sie dort das Programm "STRICHCURSOR".   
Das kurze  Basicprogramm  verändert  den
Zeichensatz Ihres C64.  Reverse  Zeichen
werden nach dem Durchlaufen dieses  Pro-
gramms nicht mehr als  reverse  Zeichen,
sondern als normale  Zeichen  mit  einem
Unterstrich  dargestellt.  Da  normaler-
weise  das  Zeichen  an  der   Cursorpo-
sition  ständig  invertiert  wird,   er-
scheint stattdessen nun  ein  blinkender
Unterstrich.                            
Das Programm kopiert den Zeichensatz aus
dem Festspeicher (ROM)  Ihres  Computers
in den Schreib-Lesespeicher (RAM).  Dies
erkennen  Sie  am  Aufbau  des  Zeichen-
satzes, welcher zum Zweck  der  besseren
Erkennbarkeit  dieses  Vorgangs  ab  der
linken oberen Ecke des Bildschirms  kom-
plett dargestellt wird. Man kann so  gut
beobachten, wie  die  Zeichen  aufgebaut
werden. Das ganze geschieht zweimal,  da
es ja im C64 zwei Zeichensätze gibt: Den
für die Blockgrafikzeichen und  den  für
die Kleinschrift.                       
Am Schluß werden die Zeichen, die norma-
lerweise  revers   dargestellt   werden,
unterstrichen. Das Programm läuft ca.  2
Minuten, bis alle Zeichen kopiert  sind.
Danach ist der Anfang  des  durch  Basic
programmierbaren  Speichers  auf   12288
erhöht,  damit  der  Zeichensatz   nicht
durch ein Programm überschrieben  werden
kann, und der Speicher ist gelöscht. Für
eigene Programme stehen Ihnen  nun  noch
ca. 28 kByte  Speicherplatz  zur  Verfü-
gung, was wohl  in  den  meisten  Fällen
ausreichen dürfte.                      
Valid HTML 4.0 Transitional Valid CSS!