Size% = 20 DIM P&(Size%-1,Size%-1), Q&(Size%-1,Size%-1) VDU 23,22,Size%*8;Size%*8;64,64,16,0 OFF DATA "tH........." DATA ". . " DATA " ... " DATA ". . " DATA "Ht.. ......" FOR Y% = 12 TO 8 STEP -1 READ A$ FOR X% = 1 TO LEN(A$) P&(X%+4, Y%) = ASCMID$(A$, X%, 1) AND 15 NEXT NEXT Y% COLOUR 8,0,0,255 : REM Electron head = blue COLOUR 4,255,0,0 : REM Electron tail = red COLOUR 14,255,200,0 : REM Conductor orange REPEAT FOR Y% = 1 TO Size%-2 FOR X% = 1 TO Size%-2 IF P&(X%,Y%)<>Q&(X%,Y%) GCOL P&(X%,Y%) : PLOT X%*16, Y%*16 CASE P&(X%,Y%) OF WHEN 0: Q&(X%,Y%) = 0 WHEN 8: Q&(X%,Y%) = 4 WHEN 4: Q&(X%,Y%) = 14 WHEN 14: T% = (P&(X%+1,Y%)=8) + (P&(X%+1,Y%+1)=8) + (P&(X%+1,Y%-1)=8) + \ \ (P&(X%-1,Y%)=8) + (P&(X%-1,Y%+1)=8) + (P&(X%-1,Y%-1)=8) + \ \ (P&(X%,Y%-1)=8) + (P&(X%,Y%+1)=8) IF T%=-1 OR T%=-2 THEN Q&(X%,Y%) = 8 ELSE Q&(X%,Y%) = 14 ENDCASE NEXT NEXT Y% SWAP P&(), Q&() WAIT 50 UNTIL FALSE