                     LC 80.2 - Beschreibung                - 1 -
                     ======================                     
                                                                
Das Betriebs-System LC 80.2 ist in Bezug auf die in  der  Bedie-
nungsanleitung erwhnten Unterprogramme voll kompatibel.        
  Das genderte Betriebssystem bentigt 4k  RAM.  Es  lt  sich
jedoch auch mit 1k starten. Wegen des negativen  RAM-Check  geht
der Rechner in HALT und kann jetzt mit NMI in die Registeranzei-
ge und von dort mit der ADR-Taste ins Betriebsystem gelangen.   
 Der RAM- und ROM-Check wird aus Zeitgrnden nur noch beim  Ein-
schalten durchgefhrt. RESET setzt dann nur noch den  Stack  neu
und geht in die Grundanzeige. Aus Grnden der  Speicherplatzein-
sparung wurde die Anfangsmelodie verkrzt  und  die  Laufschrift
weggelassen.                                                    
 Die RST-Adr. wurden im ROM festgelegt, um hufig benutzte  UP's
einfacher zu nutzen. Gleichzeitig werden  die  meisten  Register
gerettet.                                                       
                                                                
      RST 08  #CF     DAK 1  (zerstrt AF und Hintergrundreg.)  
      RST 10  #D7     ADR    (zerstrt keine Register)          
      RST 18  #DF     DADP   (zerstrt keine Register)          
      RST 30  #F7     DAK 2  (zerstrt AF und Hintergrundreg.)  
                                                                
 Die folgenden beiden RST drfen nur symmetrisch (wie  PUSH  und
POP) benutzt werden!                                            
                                                                
      RST 20  #E7     PUSH  alle Register                       
      RST 28  #EF     POP   alle Register                       
                                                                
Starttabelle    ADR #0FD8                                       
-------------------------                                       
                                                                
 Die ziemlich berflssige Anzeige RST 38 wurde in eine Art  In-
haltsverzeichnis abgendert, welches den Ansprung von  USER-Pro-
grammen vereinfacht (s.u.). (Anzeige: "StArt")                  
                                                                
      RST 38  #FF     Sprung zum Sprungverteiler                
                                                                
      Taste   Startadresse       Programmname                   
                                                                
        0        #2400           USER-Programm ab #2400         
        1        #0B00           U 2716/2732                    
        2        #0C00           Tape                           
        3        #0D00           Breakpoint                     
        4        #0C90           Taktermittlung                 
        5        #1700                                          
        6        #1300                                          
        7        #0FD0           1 kHz-Dauerton                 
        8        #0B80           Shift                          
        9        #0D50           Code-Suchen                    
        A        #1500                                          
        B        #5700                                          
        C        #2000           USER-Programm ab #2000         
        D        #2100                - " -       #2100         
        E        #2200                - " -       #2200         
        F        #2300                - " -       #2300         
        +        #0BC0           Checksummenbildung             
        -                                                       
        DAT                                                     
.       ADR      #0000           Rcksprung ins Betriebssystem .
                                                           - 2 -
Ein Druck auf die angegebene Taste in dieser Tabelle whrend der
Anzeige "StArt" bewirkt einen Sprung zur  nachfolgenden  Adresse
in RAM oder ROM. Die Startadresstabelle kann in jedem Nutzer-ROM
ab #800 neu vereinbart werden. Als Beispiel  wird  sie  fr  das
z.Z. gngige ROM mit den  im  folgenden  erluterten  Programmen
angegeben.                                                      
                                                                
                                                                
Eingabe-Routine                                                 
---------------                                                 
                                                                
Das EPROM auf #800 enthlt eine Routine zur Eingabe, die univer-
sell genutzt werden kann.                                       
                                                                
Beispiel: LD   HL,PUFFER   ;Eingabepuffer                       
          LD   C,#0A       ;es werden die Tasten 0-9 akzeptiert 
          LD   B,#03       ;3 Ziffern werden angezeigt          
          LD   E,2         ;und in 2 Byte des Puffers geschrieb.
          CALL #0ABA       ;Eingaberoutine, mit "EX" RETURN     
                                                                
CALL #0AB5 erlaubt die Eingabe einer 4-stelligen HEX-Zahl in ei-
nen mit HL adressierten Puffer.                                 
                                                                
                                                                
NMI - Routine                                                   
-------------                                                   
 Ebenso wurde die NMI-Taste sinnvoller belegt. Beim Einschalten 
oder RAM lschen wird auf der Adresse #2340 ein Sprung zur neuen
NMI-Routine ab #031B eingetragen. Damit bleibt eine  vom  Nutzer
erwnschte [nderung mglich.                                    
 Nach Drcken der NMI-Taste befindet man sich in einer  Auswahl-
schleife, die mit jeder  beliebigen  Taste  auer  "ST"  weiter-
schaltet. Wenn die gewnschte Anzeige erscheint,  kann  mit  der
Taste "ST" das Programm gestartet werden.                       
                                                                
   Anzeige       Bemerkung                                      
                                                                
   " rEG "       Registeranzeige gem Anleitung ab Adr.#690    
                                                                
   " StEP "      Stepbetrieb gem Anleitung ab Adr. #790       
                                                                
   " InS "       Ab der aktuellen Adresse wird alles im RAM um  
                 1 Byte zu hheren Adressen verschoben, um Platz
                 zu schaffen und 00 eingetragen.                
                                                                
   " dEL "       Das Byte auf der aktuellen Adresse wird gel-  
                 scht und der Rest des RAM um 1 Byte zu niede-  
                 ren Adressen verschoben.                       
                                                                
 !ACHTUNG!     " DEL " und " INS" drfen nur oberhalb des  STACK
      (#2400) angewendet werden, da es sonst zum Absturz kommt!!
                                                                
   " rEL "       Berechnung des relativen Sprunges zu dem ein-  
                 zugebenden Ziel (E-XXXX) von dem Byte (sinn-   
                 vollerweise OP-Code des Sprungbefehles), bei   
                 dem NMI gedrckt wurde und Eintrag des Ergeb-  
                 nisses im nchsten Byte.                       
                                                                
.                                                              .
U2716/2732   ADR #0B00                                     - 3 -
----------------------                                          
                                                                
Der Einsprung erfolgt aus der  "StArt"-Anzeige  mit  Taste  "1".
Danach wird der Typ angezeigt.                                  
                                                                
Taste  Anzeige   Bemerkung                                      
                                                                
 A    rA 2400    Eingabe des Speicheranfangs (RAM od. ROM)      
 E    EP 0000    Eingabe der ersten EPROM-Adresse               
                 (#0000 - #07FF bei U 2716)                     
                 (#0000 - #0FFF bei U 2732)                     
 B    bY 0800    Eingabe der Anzahl der Bytes                   
 F    Funct.     Funktion                                       
 !-0     LEEr?     Leerkontrolle                                
 !-1     LESEn     Einlesen ab Speicheranfang RAM               
 !-2     ProG      Programmieren (10ms je Zelle)                
 !-3     IdEnt     Vergleichen                                  
 !-4     tESt      Test,  ob  ]berprogammieren  mglich ist     
 !-C     COPY      kopieren mit Leerkontrolle und Vergleich (5*)
   !-EX            Start der Funktion/Quittung der Eingabe sowie
                   R]cksprung in die Grundanzeige (U 2716/2732) 
 ST              Abbruch von "Copy" whrend der Anzeige "PASS"  
                 oder "FAIL" nach jeweils 10ms pro Zelle        
ADR  Start       Rcksprung in das Betriebssystem               
                                                                
                                                                
Tape     ADR #0C00                                              
------------------                                              
                                                                
Mit "2" aus der Anzeige "StArt" wird das Programm TAPE  aufgeru-
fen. Es entspricht dem Aufzeichnungsverfahren des POLY-Computers
und wurde um einen Programmnamen erweitert, der, wenn nicht ein-
gelesen wird, wie beim LC-80 angezeigt wird und so  eine  Orien-
tierung auf der Kassette ermglicht. (Anzeige "tAPE")           
                                                                
 Taste      Anzeige       Bemerkung                             
                                                                
  A         A - XXXX      Eingabe Anf.-Adr.                     
  E         E - XXXX      Eingabe End.-Adr.                     
  F         F - XXXX      Eingabe File-Name                     
  ST        out           Ausgabe auf Band                      
  LD        in            Einlesen von Band                     
  EX        Start         nach "in" oder "out" - Quittunng  der 
                          Eingabe/Rcksprung in die Grundanzeige
                                                                
                                                                
                                                                
Breakpoint     ADR #0D00                                        
------------------------                                        
                                                                
Mit "3" wird das Programm gestartet. (Anzeige "br.Pnt")         
Dieses Programm arbeitet ein USER-Programm von der Anfangsadres-
se (A-XXXX) bis zum Breakpoint  (E-XXXX)  interruptgesteuert  ab
und springt dann zur Registeranzeige. Dabei ist folgendes zu be-
achten: -Die Endadresse (Breakpoint)  mu  bei  Mehrbytebefehlen
         unbedingt auf das erste Byte zeigen.                   
        -Die Abarbeitung verluft 100* langsamer, daraus  resul-
         tieren Probleme, wenn z.B. bei DAK1 oder DAK2.         
        -Es wird der Hilfsstack (#22D5-#2307) fr STEP belegt. .
                                                           - 4 -
        -In #23EA wird der Status gespeichert. #00 bedeutet, da
         kein Stepbetrieb von Hand mglich ist. Falls Breakpoint
         mit RESET abgebrochen wird,  mu  in  diese  Zelle  #FF
         eingetragen werden.                                    
                                                                
Taste        Anzeige       Bemerkung                            
                                                                
 EX          A - XXXX      Anf.-Adr. des zu testenden Programms 
 EX          E - XXXX      letzte Adr., die selbstndig         
                           abgearbeitet wird (Haltepunkt)       
                           eingeben                             
                                                                
                                                                
                                                                
Taktzahlermittlung     ADR #0C90                                
--------------------------------                                
                                                                
 Ab Adresse #2000 werden Befehle oder Befehlsfolgen eingetragen,
deren Taktzahl ermittelt werden sollen, und mit RET (#C9)  abge-
schlossen.  Danach  wird  ab  Adresse  #0C90  oder    aus    der
"StArt"-Anzeige mit Taste "4" gestartet. Die  Anzahl  der  Takte
mu kleiner als 65535 sein. Hardwareseitig  mssen die CTC-Kan-
le 0,1 und 2 verbunden werden.                                  
                                           USER-Steckverbinder  
                                                                
                    ZC/TO 0 - C/TRG 1         A08 - B12         
                    ZC/TO 1 - C/TRG 2         A09 - A11         
                    ZC/TO 2 - C/TRG 3         A10 - A12         
                                                                
                                                                
                                                                
Speicherbereich verschieben     ADR #0B80                       
-----------------------------------------                       
                                                                
Das Programm SHIFT (Anzeige "SHIFt")  verschiebt  Speicherberei-
che, die sich auch berlappen knnen. Start mit Taste 8.        
                                                                
Taste    Anzeige   Bemerkung                                    
                                                                
 bel.    A-XXXX    Eingabe der Anfangsadresse des Quellbereiches
 EX      E-XXXX    Eingabe der Anfangsadresse des Zielbereiches 
 Ex      bYXXXX    Eingabe der Bytezahl                         
 EX      StArt     Ausfhrung beendet                           
                                                                
                                                                
Code-Suchen (1,2 oder 3 Byte)     ADR #0D50                     
-------------------------------------------                     
                                                                
Dieses Programm sucht ab einer Anfangsadresse  nach  einem  Byte
oder einer Bytefolge bis zu 3 Byte und kehrt beim  letzten  Byte
der ersten gefundenen Code (-folge) in die Adressanzeige zurck.
                                                                
Taste    Anzeige   Bemerkung                                    
                                                                
 bel.    A-XXXX    Anfangsadresse des zu durchsuchenden         
                           Bereichs eingeben                    
 EX      bY1 XX    erstes Byte eingeben                         
 "+"     bY2 XX    zweites Byte eingeben                        
 "+"     bY3 XX    drittes Byte eingeben                       .
                                                           - 5 -
Nach Eingabe des 1., 2. oder 3. Byte wird die Suche mit "ST" ge-
startet. Die Anzeige "not Fnd" (not found) erscheint,  wenn  die
Bytefolge nicht vorhanden ist.                                  
                                                                
Checksummenbildung     ADR #0BC0                                
--------------------------------                                
                                                                
Mit der Taste "+" wird die Bildung einer Prfsumme gestartet. Es
erfolgt eine einfache Addition. Mit diesem  Programm  lt  sich
bei [nderungen des Betriebssystems das  LOW-Byte  der  Prfsumme
ermitteln, die in der Speicherzelle #7FF abgelegt sein  mu,  um
den ROM-Check positiv zu bestehen. (Anf.-adr. #0000, #7FF Bytes)
                                                                
Taste    Anzeige    Bemerkung                                   
                                                                
 EX      A-XXXX     Eingabe der Anf.-adr. des zu ber. Bereiches 
 EX      bYXXXX     Eingabe der Lnge des Bereichs              
 EX      XXXX       Prfsumme (einfache Addition aller Bytes)   
                                                                
                                                                
                                                                
System - RAM                                                    
------------                                                    
                                                                
Adresse     Verwendung                                          
                                                                
#23E9       Stack - Top nach RESET                              
#23EA       darzustellendes Zeichen bei "LOAD"                  
            Hilfszelle bei Breakpoint (0=Step selbstndig)      
#23EB/EC    Programmname (Tape), Bytezahl (U2716,Shift)         
#23ED/EE    Anf.-Adresse (Tape, Shift, Code), RAM-Adr. (U2716)  
#23EF/F0    End-Adr. (Tape, Brk.p), EPROM-Adr., Zieladr. (Shift)
#23F1       Checksumme (Tape) , Hilfszelle Code #FE = 1 Byte    
                                                #FF = 2 Bytes   
#23F2       L S D      Datenanzeige-Speicher (IX zeigt hierher) 
#23F3       M S D              - " -                            
#23F4       L S D      Adressenanzeige-Speicher                 
#23F5                          - " -                            
#23F6                          - " -                            
#23F7       M S D              - " -                            
#23F8/F9    User-PC (akt. Adr.-anzeige,  Breakp. auch Anf.-adr.)
#23FA       AT - Flag                                           
#23FB       aktueller Tastencode                                
#23FC       Init.-Flag    80 = keine Neuinitialisierung         
#23FD       Funkt.- und Fehler-Flag                             
#23FE       L - Teil          gelesenes File, Byte 1 (Code)     
#23FF       H - Teil          (Tape, LOAD)  , Byte 2 (code)     
     