================================================================ 
I                                                              I 
I         Zapojení obvodu 8255 v počítači SHARP MZ-821         I 
I                                                              I 
================================================================ 
      by Ivo MUSIL from MAIV SOFTWARE         1987.-11.-14.      
                                                                 
       Všechny údaje jsou uvedeny v HEXADECIMALNIM tvaru.        
                                                                 
Popis obvodu:    Obvod  8255  se  v  počítačích  využívá    jako 
=============    paralelní vstupní a výstupní port. Obsahuje tři 
                 progamovatelné brány PA,  PB  a  PC,  které  se 
                 programují  pomocí  stavového  registru.  Tento 
                 registr se používá i k "bitovému"  programování 
                 PC, která se na rozdíl od bran  PA  a  PB  múže 
                 používat jako obousměrná. Například  v počítači 
                 SHARP MZ-821 se PA využívá jako  výstupní  port 
                 adresovaný OUT # D0, brána PB se adresuje IN  # 
                 D1  (je tedy vstupní) a  brána  PC  se  využívá 
                 jako vstupní  ( horní  4  bity  )  a   výstupní 
                 (dolní 4 bity ).                                
                                                                 
Port # D0 :      Tento výstupní port se využívá následovně:      
===========      7.bit        vynulování  časovače  pro  blikání 
                              cursoru                            
                 6.bit        nevyužit                           
                 5.bit        puštění joysticku 2                
                 4.bit        puštění joysticku 1                
                 3.- 0.bit    volba řádku  klávesnice  (viz  též 
                              port # D1)                         
                                                                 
Port # D1 :     Tento vstupní port se používá spolu se  spodními 
===========     čtyřmi bity portu #  D0  k  ovládání  klávesnice 
                a to následujícím zpúsobem:                      
                 Na OUT # D0 (3.-0.bit) se pošle  binární  číslo 
                určující  řádek,  který  se  má  testovat   (viz 
                tabulka  dále).  Potom  na  tomto    portu    je 
                nastavena  0  na  příslušném  sloupci,kde   leží 
                stisknutá klávesa.                               
                                                                 
    - Tabulka klávesnice:                                        
      ===================                                        
         na port PA  #      PB7        PB6        PB5        PB4 
                                                                 
            ....0000 #     BLANK      GRAPH      LIBRA     ALPHA 
            ....0001 #       Y          Z          @         [   
            ....0010 #       Q          R          S         T   
            ....0011 #       I          J          K         L   
            ....0100 #       A          B          C         D   
            ....0101 #       1          2          3         4   
            ....0110 #       \          ^          -         SP  
            ....0111 #     INST        DEL        UP        DOWN 
            ....1000 #     BREAK      CTRL                       
            ....1001 #      F1         F2         F3         F4  
                                                                 
                            PB3        PB2        PB1        PB0 
                                                                 
            ....0000 #      TAB         ;          :         CR  
            ....0001 #       ]                                   
            ....0010 #       U          V          W          X  
            ....0011 #       M          N          O          P  
            ....0100 #       E          F          G          H  
            ....0101 #       5          6          7          8  
            ....0110 #       0          9          ,          .  
            ....0111 #      LEFT      RIGHT        ?          /  
            ....1000 #                                     SHIFT 
            ....1001 #       F5                                  
                                                                 
Port # D2:       Tento port adresuje bránu PC obvodu 8255, která 
==========       je obousměrná. Přímý zápis není možný, a  proto 
                 se  používá  stavový  registr,  který  se  plní 
                 takto:                                          
                 LD  A , 0  0  0  0  x x x +                     
                 OUT ( # D3 ), A                                 
                 x x x   ....  číslo bitu,který se má  nastavit  
                 +       ....  hodnota, která se má danému bitu  
                               přiřadit                          
                 Čtení z tohoto portu  se  provádí  přímo,  t.j. 
                 pomocí instrukce IN A,(# D2).                   
                 A jak se jednotlivé bity využívají ?            
              /  7.bit        signál pro vertikální blikání      
             /   6.bit        vstup časovače pro blikání cursoru 
      vstup  \   5.bit čtení dat z magnetofonu                   
              \  4.bit        přečte stav magnetofonu (ON/OFF)   
               / 3.bit        změní stav magnetofonu (ON-OFF)    
              /  2.bit        zablokuje přerušení časovače       
      výstup  \  1.bit        zápis dat na magnetofon            
               \ 0.bit        obsazeno zvukovým výstupem obvodu  
                              8253                               
                                                                 
Režim  700:      Protože  počítač MZ-821 je plně  kompatibiní  s 
===========      počítači  řady  SHARP  MZ-700,  je  nutné    se 
                 zmínit o zapojení 8255 v těchto  počítačích.Zde 
                 se  totiž  brány PA, PB, PC a  stavový  registr 
                 neadresují  porty  #  D0  -  D3,  ale    přímým 
                 uložením  údaje na  adresy    E000-E003.  Tento 
                 zpúsob je  jinak úplně  stejný.                 
                                                                 
                              KONEC 