CONST pit = 20
SCREEN 13
DIM SHARED tsin(0 TO 4096) AS INTEGER
DIM SHARED tcos(0 TO 4096) AS INTEGER
DIM x AS LONG
DIM y AS LONG
DIM r AS INTEGER
DIM g AS INTEGER
DIM b AS INTEGER
'' PRECALC COS/SIN
FOR x = 1 TO 64
FOR y = 1 TO 64
i = i + 1
tsin(i) = 128 + SIN(x / 6) * 127
tcos(i) = 128 + COS(y / 10) * 127
NEXT
NEXT
'' PALETTE
FOR i = 1 TO 255
OUT &H3C8, i
r = 32 + SIN(i / pit) * 31
OUT &H3C9, INT(r - 1)
g = 32 + COS(i / pit) * 31
OUT &H3C9, INT(g - 1)
b = 32 + SIN(i / pit) * 31
OUT &H3C9, INT(b - 1)
NEXT
'' RENDER
DEF SEG = &HA000
t = TIMER
DO
FOR x = 32 TO 288
FOR y = 20 TO 180
POKE y * 320 + x, tsin(x * 11) + tsin(y * 20)
NEXT
NEXT
LOOP UNTIL INKEY$ = CHR(27)
aika = TIMER - t
PRINT aika
SLEEP