10 REM >1770tst
   20 ?&284=&FF:`fdc%=&FCC4:MODE4:PRINT
   30 FORQ%=0TO2STEP2:P%=&900:[OPTQ%
   40   .`dly0%CLC:EQUD&900090:ADC#1:EQUW&FAD0:RTS:.`dly1%CLC:EQUW&90:CLC:NOP:EQUW&90:ADC#1:EQUW&FAD0:INX:EQUW&F5D0:RTS
   50   .`cmmd%STA `fdc%:LDA `fdc%:LSRA:EQUW&FA90:LDA#2:.`wtbs%AND `fdc%:EQUW&FBD0:RTS:LDA#1:.`wnbs%BIT `fdc%:BEQ `wnbs%:RTS
   60   .`ceki%ORA&F4:STA&FE05:RTS:.`rlvd%JSR `ckvd%:EQUW&5B0:LDX#0:JSR `wevc%:STA&FE07:RTS:.`clvd%JSR `ckvd%:BCS `clvd%-1:AND#&C0:ORA#32:LDX#1:BNE `clvd%-7
   70   .`ckvd%LDA&282:TAX:AND#56:CLC:ADC#8:AND#56:CMP#40:TXA:RTS:.`wevc%PHA:LDA&355:PHA:LDA#&73:STX&355:JSR&FFF4:PLA:STA&355:PLA:RTS
   80   .`clnm%LDY#&FF:LDX#&C:JSR `rlnm%+8:STY&D5F:.stnm%LDA#&40:STA&D00:RTS:.`rlnm%JSR stnm%:LDY&D5F:LDX#&B:LDA#&8F:JMP&FFF4
   90   .cde%CLD:JSR `clnm%
  100   LDA#&22:STA `fdc%-4
  110   LDA#0:STA `fdc%+1:STA `fdc%+3:LDA#4:STA `fdc%+2
  120   PHP:SEI:LDA#0:JSR `cmmd%:PLP:LDA#1:JSR `wtbs%
  130   LDA#0:STA&A0:LDA#&62:STA&A1
  140   LDA#&23:STA&A7
  150   PHP:SEI:JSR `clvd%
  160   LDX#0:LDY#0:LDA#&80:JSR `cmmd%
  170   .rdal0%LDA#2:AND `fdc%:EQUW&FD0:LDA&A7:AND `fdc%:CMP#1:BEQ rdal0%:BCC rdal_%:AND#32:BNE rdal2%
  180   LDA `fdc%+3:STA(&A0),Y:INY:BNE rdal0%
  190   INC&A1:DEX:BEQ rdal2%
  200   .rdal1%LDA#2:AND `fdc%:EQUW&FD0:LDA&A7:AND `fdc%:CMP#1:BEQ rdal1%:BCC rdal_%:AND#32:BNE rdal2%
  210   LDA `fdc%+3:STA(&A0),Y:INY:BNE rdal0%
  220   .rdal2%LDA `fdc%:LSRA:BCC rdal_%:LSRA:BCC rdal2%:LDA `fdc%+3:BCS rdal2%
  230   .rdal_%TYA:CLC:ADC&A0:STA&A0:EQUW&290:INC&A1:LDA `fdc%
  240   PHA:TXA:PHA:TYA:PHA:JSR `rlvd%:PLA:TAY:PLA:TAX:PLA:PLP
  250   PHA:TXA:PHA:TYA:PHA:JSR `rlnm%:PLA:TAY:PLA:TAX:PLA:RTS
  260 ]:NEXT
  270 IFINKEY-256<>1THEN?`rlvd%=96:?`clvd%=96:?`ckvd%=96:?`wevc%=96:?`ceki%=96
  280 DEFFNhex(X%,Y%)=RIGHT$("0000000"+STR$~X%,Y%)
  290 PRINT~USRcde%" ";~!`fdc%" ";~!&A0
  300 GOTO290