REM ZOOM BY RICKY REM HTTPS://LOWRESNX.INUTILIS.COM/TOPIC.PHP?ID=1769 REM USED CHARS = 1,11,12,13,14,28,29,30,31,44,45,46,47,60,61,62,63 REM AVAILABLE SPRITES = 0-9,48-63 RANDOMIZE TIMER REPLAY: SCALE = 1 X = 6 + RND(2)*74 DY=RND IF X<80 THEN DX=RND ELSE IF X>80 THEN DX=-RND ELSE DX=RND-RND DO IF RND(2)=0 THEN W=(W+1) MOD 20 IF W=0 THEN COPY $8000+16*2,16 TO $8000+16 IF W=10 THEN COPY $8000+16*3,16 TO $8000+16 ELSE IF RND(10)=0 THEN COPY $8000+16*4,16 TO $8000+16 ELSE IF RND(10)=0 THEN COPY $8000+16*6,16 TO $8000+16 END IF IF RND(100)=0 THEN DY=RND IF X<80 THEN DX=RND ELSE IF X>80 THEN DX=-RND ELSE DX=RND-RND END IF IF 1=2 THEN W=(W+1) MOD 20 IF W=0 THEN COPY $8000+16*2,16 TO $8000+16 IF W=10 THEN COPY $8000+16*3,16 TO $8000+16 ELSE IF 1=3 THEN COPY $8000+16*4,16 TO $8000+16 ELSE IF 1=4 THEN COPY $8000+16*6,16 TO $8000+16 END IF SCALE = SCALE*(1 + (DY)*0.03) REM IF SCALE > 16 THEN SCALE = 16 IF SCALE>16 THEN GOTO REPLAY IF SCALE < 1 THEN SCALE = 1 X = X + (DX)*SCALE*0.5 IF X 20*8 + SCALE THEN X = 20*8 + SCALE CALL ZSPRITE(1, X - 4*SCALE, 45 + 4*SCALE, SCALE) WAIT VBL LOOP SUB ZSPRITE(SPR, X, Y, SCALE) S = 10 SC = INT(SCALE + 0.99) SC1 = SC - 8 IF SC > 8 THEN SC = 8 IF SC1 > 8 THEN SC1 = 8 FOR I=0 TO 7 POKE $80E0 + I, 2^( 8- SC)*(I < SC) IF SC1 > 0 THEN POKE $80F0 + I, -2^(8-SC1) POKE $81F0 + I, 2^(8-SC1)*(I < SC1) POKE $81E0 + I, (I < SC1) END IF NEXT I FOR I=0 TO 7 LIN = PEEK($8000 + SPR*16 + I) + 256*PEEK($8008 + SPR*16 + I) FOR J=0 TO 7 IF (LIN AND $8080) <> 0 THEN PX = X+J*SCALE PY = Y+I*SCALE IF(PY < 16*8 AND PY > -16 AND PX < 20*8 AND PX > -16) THEN SPRITE S, X + J*SCALE, Y + I*SCALE-16, 14 SPRITE S PAL ((LIN\128) AND 1) + ((LIN\16384)AND 2) SPRITE S SIZE -(SCALE>8) ELSE SPRITE OFF S END IF S = S + 1 END IF LIN = LIN*2 NEXT J NEXT I END SUB #1:MAIN PALETTES 040C2430000C082F00240A2F00300000 003F2A15003F2A15003F2A15003F2A15 #2:MAIN CHARACTERS 00000000000000000000000000000000 001A1A42000000660002023C18182400 021A1A00400006600202003C181C2000 00185A02020060060000023E18380400 001C0018182000660018040400183C00 00180042420018001800008181000018 001A1A42000000660002023C18182400 #3:MAIN BG 00001410020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 0202020202020202020203020401030A 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 0202020203020401030A020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202020202 02020202020202020202020202010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201