The Past Master Club

ZX81 SIGNATURE EXPLAINED:
16514 33,185,64  LET HL = 16569   Start address of signature DATA.
16517 126     ,----->LET A=PEEK HL Write: "BYE BYE"
16518 35     | INC HL     Inc address.
16519 31     | RRA       Odd # 85 gives carry.
16520 245     | PUSH AF     Store carry flag.
16521 215     | PRINT A     Print character A.
16522 245     | POP AF     Restore carry flag.
16523 48,248   '-----<JNC 16517   Jump if no carry.
16525 6,128    LET B = 128   Delay loop.
16527 6     ,----->DEC A     Dec A count.
16528 32,253   +-----<JNZ 16527   Jump if A is non zero.
16530 16,251   '-----<BJNZ 16527   Loop NEXT B.
16532 1,36,10  LET BC = 2596   BC is pixel SCREEN location.
16535 197     ,----->PUSH BC     Store BC SCREEN location.
16536 229     |  / / PUSH HL     Store HL DATA address.
16537 205,182,11 |  | | CALL 2998   Call 'Plot pixel' at BC SCREEN location.
16540 193     |  | \ POP BC     Restore BC = HL DATA address.
16541 10     |  |   LET A = PEEK BC Get RAY OFFSET.
16542 111     |  |   LET L = A   Let L = RAY low address OFFSET.
16543 38,64   |  |   LET H = 64   Set H = RAY high address OFFSET.
16545 94     |  |   LET E = PEEK HL Get pixel low address OFFSET.
16546 44     |  |   INC L     Inc RAY address OFFSET.
16547 86     |  |   LET D = PEEK HL Get pixel high address OFFSET.
16548 225     |  \   POP HL     Restore BC SCREEN address in HL.
16549 200     |      JZ RET     A = 0 program is DONE ==>>>.
16550 25     |      ADD DE to HL   Update pixel SCREEN address in HL = BC.
16551 197     |    / PUSH BC     Store BC = HL DATA address.
16552 77     |    | LET C = L   Restore updated C low pixel SCREEN address.
16553 68     |    | LET B = H   Restore updated BC pixel SCREEN address.
16554 225     |    \ POP HL     Restore HL DATA address.
16555 35     | INC HL     Inc HL DATA address.
16556 24,233   '-----<JMP 16517   Jump to 16535.
=================================================================
Address  DATA+INC  RAY
16558 = 174 , 64 :  1 , 255  (+0,+1) [0,1] <176> 
16559 = 175 , 64 :  255 , 0  (-1,+1) [255,0] <175>ãáä(+1,+1) [1,1] <177>
16560 = 176 , 64 :  0 , 1   \|/  
16561 = 177 , 64 :  1 , 1    \|/   
16562 = 178 , 64 :  1 , 0  (-1,+0) [255,255] <180>ß-- - * - --à(+1,+0) [1,0] <178>
16563 = 179 , 64 :  0 , 255    /|\   
16564 = 180 , 64 :  255 , 255   /|\  
16565 = 181 , 64 :  255 , 254  (-1,-1) [255,254] <181>åâæ(+1,-1) [1,255] <174>
16566 = 182 , 64 :  254 , 0   (+0,-1) [0,255] <179> 
16567 = 183 , 64 :  0 , 12   
====================================================


Address  RRA LABEL
16569 = 185 , 64 :  78 > = 39=B
16570 = 186 , 64 :  124 > = 62=Y
16571 = 187 , 64 :  84 > = 42=E
16572 = 188 , 64 :  0 > = 0= 
16573 = 185 , 64 :  78 > = 39=B
16574 = 186 , 64 :  124 > = 62=Y
16575 = 187 , 64 :  84 > = 42=E
16576 = 188 , 64 :  85 > = 42=+carry
=============================

Address HL  OFFSET
DATA
 BC + VECTOR DIRECTION GRAPHICS
16577 = 189 , 64 :  180 255,255 = (-1,0) ç  
16578 = 190 , 64 :  179 0,255 = (0,-1) ê   
16579 = 191 , 64 :  174 1,255 = (1,-1) î   
16580 = 192 , 64 :  172 1,0 = (1,0) è  
16581 = 193 , 64 :  172 1,0 = (1,0) è     
16582 = 194 , 64 :  177 1,1 = (1,1) ì    
16583 = 195 , 64 :  177 1,1 = (1,1) ì     
16584 = 196 , 64 :  177 1,1 = (1,1) ì  
16585 = 197 , 64 :  177 1,1 = (1,1) ì  
16586 = 198 , 64 :  177 1,1 = (1,1) ì  
16587 = 199 , 64 :  175 255,0 = (-1,1) ë   
16588 = 200 , 64 :  181 255,254 = (-1,-1) í    
16589 = 201 , 64 :  179 0,255 = (0,-1) ê 
16590 = 202 , 64 :  179 0,255 = (0,-1) ê 
16591 = 203 , 64 :  179 0,255 = (0,-1) ê 
16592 = 204 , 64 :  179 0,255 = (0,-1) ê 
16593 = 205 , 64 :  179 0,255 = (0,-1) ê 
16594 = 206 , 64 :  179 0,255 = (0,-1) ê 
16595 = 207 , 64 :  179 0,255 = (0,-1) ê 
16596 = 208 , 64 :  179 0,255 = (0,-1) ê 
16597 = 209 , 64 :  179 0,255 = (0,-1) ê 
16598 = 210 , 64 :  181 255,254 = (-1,-1) í 
16599 = 211 , 64 :  181 255,254 = (-1,-1) í 
16600 = 212 , 64 :  180 255,255 = (-1,0) ç 
16601 = 213 , 64 :  180 255,255 = (-1,0) ç 
16602 = 214 , 64 :  176 0,1 = (0,+1) á 
16603 = 215 , 64 :  183 0,12 = (0,+12) jumpè 
16604 = 216 , 64 :  0 nul,nul = nul RETURN 
=======================================================

1