REM Munching squares (slow version) W% = 512 VDU 23,22,W%;W%;8,16,16,0 : OFF FOR X% = 0 TO W%-1 FOR Y% = 0 TO W%-1 B% = (X% EOR Y%) AND 255 COLOUR 7, B%, B%>>1, 255-B% PLOT 2*X%, 2*Y% NEXT NEXT REPEAT UNTIL INKEY(1)=0 END
REM Munching squares (fast version) SetPixel% = FNSYS_NameToAddress("SetPixel") H% = @memhdc% W% = 512 VDU 23,22,W%;W%;8,16,16,0 : OFF FOR X% = 0 TO W%-1 FOR Y% = 0 TO W%-1 B% = (X% EOR Y%) AND 255 C% = &10000*(255-B%) OR &100*(B%>>1) OR B% SYS SetPixel%, H%, X%, W%-Y%-1, C% NEXT NEXT SYS "InvalidateRect", @hwnd%, 0, 0 REPEAT UNTIL INKEY(1)=0 END DEFFNSYS_NameToAddress(f$):LOCALP%:DIMP%LOCAL5:[OPT 0:call f$:]:=P%!-4+P%