100 'ACU Proofreader v1.5
110 'By Aimo Niemi 120 'CPC 464, 664, 6128 130 ' 140 MEMORY HIMEM-129 150 addr=HIMEM+1:rst=48 160 ad=INT(addr/256):dr=addr-256*ad 170 FOR bit=0 TO 15 180 READ a$,check:sum=bit 190 FOR k=1 TO 15 STEP 2 200 b=VAL("&"+MID$(a$,k,2)) 210 POKE addr,b 220 addr=addr+1 230 sum=(sum+k*b)MOD &FF 240 NEXT 250 PRINT "Line";460+10*bit; 260 IF sum<>check THEN PRINT"Checksum error.":STOP ELSE PRINT"Ok." 270 NEXT 280 ' 290 pr=&BD2B :'printer address 300 sc=&BB5A :'screen address 310 REM sc=pr ' Add this line when using LIST#8.Observe, however, that the proofcodes may be lost if the printer buffer happens to be full. 320 ' 330 FOR i=0 TO 2 340 POKE rst+i,PEEK(sc+i) 350 NEXT 360 POKE sc,&C3 370 POKE sc+1,dr 380 POKE sc+2,ad 390 IF PEEK(6)=&80 THEN POKE HIMEM+10,&A4 400 ' 410 POKE HIMEM+7,&20 420 PRINT "Proofcodes to "; 430 IF sc=pr THEN PRINT "Printer";ELSE PRINT "screen "; 440 PRINT "are on.":END 450 ' 460 DATA e5f5c5d5fe0d203a,15 470 DATA 218aac5faf47577e,210 480 DATA fe30382efe3a302a,80 490 DATA 7ef600202ebb2028,243 500 DATA 3e20f73e5bf77a07,173 510 DATA 070707e60ff630fe,28 520 DATA 3a3802c607f77a1c,39 530 DATA cb4320ef3e5df73e,61 540 DATA 12f7d1c1f1e1f7c9,8 550 DATA 2b3e27bb2004fe20,246 560 DATA 282804fe27f52007,180 570 DATA 3e20bb200daf5ff6,135 580 DATA 20f5afbb2003f1af,117 590 DATA f5f15f0e007a8357,39 600 DATA 0c79b820f8f12002,232 610 DATA 1e0023189b000000,253 620 ' 630 ' poke himem+7,&20 = on 640 ' poke himem+7,&18 = off |