10 SFLAG -1 @ ON ERROR GOTO 30 @ DESTROY ALL 20 PURGE DUMMY 30 ON ERROR GOTO 220 40 INPUT '# of bytes: ';N 50 CREATE TEXT DUMMY,N 60 A=HTD(ADDR$('DUMMY')) @ A1=A @ P$="----------------" 70 Q=1 @ X=0 @ INPUT '000: ',P$;A$ @ C$=A$ @ GOSUB 200 80 Q=2 @ X=1 @ GOSUB 190 90 A$=A$&C$ @ A=A+37 @ N=N*2+31 @ Q=3 @ SFLAG 5 100 FOR X=2 TO N DIV 16-1 110 GOSUB 190 120 IF FLAG(5) THEN C$=C$[6] 130 POKE DTH$(A),C$ @ A=A+16-5*FLAG(5,0) @ NEXT X @ Q=4 140 DISP DTH$(X)[3]; @ INPUT ': ',P$[1,MOD(N,16)];C$ 150 GOSUB 200 160 L=LEN(C$) @ IF C$[L,L]='-' THEN C$=C$[1,L-1] @ GOTO 160 170 POKE DTH$(A),C$ @ POKE DTH$(A1),A$ 180 OFF ERROR @ CFLAG -1 @ END 190 DISP DTH$(X)[3]; @ INPUT ': ',P$;C$ 200 DISP DTH$(X)[3]; @ INPUT ' ck ','--';C1$ 210 S=0 @ FOR Z=1 TO LEN(C$) @ S=IP(NUM(C$[Z,Z])*Z+S) @ NEXT Z 220 IF C1$=DTH$(MOD(S,256))[4] THEN RETURN 230 DISP 'Checksum Error' @ BEEP @ POP @ ON Q GOTO 70,80,110,140 240 DISP 'Error:'&ERRM$ @ BEEP @ GOTO 180