RANDOMIZE TIMER GAMEPAD 1 REM WAS8BIT REM PLACE ROCKS FOR I=1 TO 25 CELL RND(19),RND(15),1 NEXT I REM PLACE RINGS FOR I=1 TO 10 CELL RND(19),RND(15),3 NEXT I REM PLACE BOARDERS BG FILL 0,0 TO 19,0 CHAR 1 BG FILL 0,15 TO 19,15 CHAR 1 BG FILL 0,0 TO 0,15 CHAR 1 BG FILL 19,0 TO 19,15 CHAR 1 REM PLACE PLAYER PX=9 PY=7 CELL PX,PY,2 GLOBAL RINGS RINGS=0 PAL 1 TEXT 0,0,"RINGS=" REM MAIN GAME LOOP DO REM SHOW HOW MANY RINGS COLLECTED PAL 1 NUMBER 6,0,RINGS,2 REM PROCESS GAMEPAD IF RIGHT(0) THEN CALL CHECKMOVE(PX,PY,1,0) ELSE IF LEFT(0) THEN CALL CHECKMOVE(PX,PY,-1,0) ELSE IF UP(0) THEN CALL CHECKMOVE(PX,PY,0,-1) ELSE IF DOWN(0) THEN CALL CHECKMOVE(PX,PY,0,1) END IF WAIT VBL LOOP REM PROCESS COLLISION CHECK REM MOVE IF POSSIBLE REM PICK UP RINGS IF POSSIBLE SUB CHECKMOVE(X,Y,DX,DY) XCHECK=X+DX YCHECK=Y+DY CELLCHECK=CELL.C(XCHECK,YCHECK) REM CAN MOVE? IF CELLCHECK=0 THEN CELL X,Y,0 X=XCHECK Y=YCHECK PAL 0 CELL X,Y,2 PLAY 1,50,1 WAIT 15 END IF REM PICKUP RING IF CELLCHECK=3 THEN INC RINGS PLAY 0,90,1 CELL X,Y,0 X=XCHECK Y=YCHECK PAL 0 CELL X,Y,2 WAIT 15 END IF REM HIT A WALL IF CELLCHECK=1 THEN PLAY 2,20,5 WAIT 10 PLAY 2,20,5 END IF END SUB #1:MAIN PALETTES 140C3C3000303015003C0C00003F3C00 003F2A15003F2A15003F2A15003F2A15 #2:MAIN CHARACTERS 00000000000000000000000000000000 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 0018187E182442000000000000000000 00000000000000000000182424180000