User Tools

Site Tools


plot

Plot routines


PLOT2    ld   a,b             ;přesuň Y-ovou souřadnici do A 
         and  a               ;vynuluj příznak CARRY 
         rra                  ;zarotuj O zleva 
         scf                  ;nastav příznak CARRY 
         rra                  ;zarotuj l zleva 
         and  a               ;vynuluj příznak CARRY 
         rra                  ;zarotuj O zleva 
         xor  b               ;nyní do A přidáme spodní tři bity 
         and  #F8             ;z původní Y-ové souřadnice 
         xor  b               ;v A je nyní 64+8*INT(b/64)+(b mod 8) 
         ld   h,a             ;vyšší byte adresy je tedy připraven 
         ld   a,c             ;nyní budeme počítat nižší byte adresy 
         rlca                 ;zarotuj třikrát doleva 
         rlca                 ;pro správné umístění části Y-ové 
         rlca                 ;souřadnice mající vliv na nižší byte 
         xor  b               ;přidáme bity 5,4,3 z Y-ové souřadnice 
         and  %11000111       ;místo původních bitů - ty určují polohu 
         xor  b               ;uvnitř bitu a pro adresu nemají význam 
         rlca                 ;nyní rotuj ještě dvakrát doleva, 
         rlca                 ;a takto vytvořený spodní byte 
         ld   l,a             ;dej do registru L, v HL je nyní adresa 
         ld   a,c             ;do A dáme ještě polohu bitu uvnitř bytu 
         and  7               ;zde podprogram z ROM končí 
 
         add  a,a             ;vynásob získané číslo 8
         add  a,a
         add  a,a
         ld   b,a             ;dej číslo do registru B 
         ld   a,254           ;kód instrukce set 7,(hl) do registru A 
         sub  b               ;odečti osminásobek polohy a takto 
         ld   (CODE+1),a      ;získaný kód zapiš do instrukce, 
CODE     set  0,(hl)          ;kterou okamžitě proveď 
         ret                  ;vrať se z podprogramu

Navigation: general . math . graphic . sound . system . other . back to start

plot.txt · Last modified: 2017/02/16 13:38 by darkbyte