CELL SIZE 0,1 BG 1 BG COPY 0,0,20,16 TO 0,0 BG 0 RANDOMIZE TIMER REM WAS8BIT TOUCHSCREEN DIM GLOBAL MAP(4,6),TILE(24),CTILE(24) GLOBAL X0,Y0,ISHUFFLE,TX,TY,IWIN X0=4 Y0=6 FOR I=1 TO 23 READ CTILE(I) NEXT I DATA 4,6,8,10,12,14,32,34,36,38,40,42 DATA 44,46,64,66,68,70,72,74,76,78,96 NEWGAME: CALL RESETMAP WAIT 30 CALL MIXMAP DO IF TAP THEN BG 0 TX=TOUCH.X\16-2 TY=TOUCH.Y\16 IF TX>=1 AND TX<=4 AND TY>=1 AND TY<=6 THEN REM CX=TX+2 REM CY=TY REM N=MAP(TX,TY) CALL MOVEMAP CALL WINCHECK IF IWIN=1 THEN GOTO NEWGAME END IF END IF WAIT VBL LOOP SUB WINCHECK IWIN=1 I=0 FOR Y=1 TO 6 FOR X=1 TO 4 INC I IF I=24 THEN I=0 IF MAP(X,Y)<>I THEN IWIN=0 NEXT X NEXT Y CALL PRINTMAP IF IWIN=1 THEN PLAY 0,20,90 PLAY 1,30,90 PLAY 2,40,90 PLAY 3,50,90 WAIT 90 END IF END SUB SUB MIXMAP IWIN=0 ISHUFFLE=1 WHILE NOT TAP WAIT VBL WEND WHILE TOUCH IF RND(1)=0 THEN TX=X0 TY=RND(5)+1 CALL MOVEMAP ELSE TY=Y0 TX=RND(3)+1 CALL MOVEMAP END IF PLAY 0,RND(90),1 WEND ISHUFFLE=0 END SUB SUB MOVEMAP IF TX=X0 AND TY<>Y0 THEN REM TRACE "Y"+STR$(TY) IF TYX0 THEN REM TRACE "X"+STR$(TX) IF TX