1	REM *******************************
2	REM *	   PARA LINHA APPLE	  *
3	REM *				  *
4	REM *     PALACIO DE CRISTAL	  *
5	REM *******************************
6	REM
7	REM *	 INICIALIZA PALAVRA '&'   *
10	DATA201,084,208,015,032,177,000,032
	   ,248,230,138,072,032,183,000,201
	   ,044,240,003,076,201,222,032,177
	   ,000,032,248,230
20 	FOR I=768 TO 833:READ P:POKE I,P:NE
	XT I
30	DATA104,134,003,134,001,133,000,170
	   ,160,001,132,002,173,048,192,136
	   ,208,004,198
40	DATA001,240,007,202,208,246,166,000
	   ,208,239,165,003,133,001,198,002
	   ,208,241,096
50	POKE 1013,76:POKE 1014,0:POKE 1015,
	3
60	TEXT:HOME
70	GOSUB 2000
100	DIM FC(5,7):DIM FC$(5)
105	FC$(1)="NORTE":FC$(2)="SUL":FC$(3)=
	"LESTE":FC$(4)="OESTE"
110	FOR B=1 TO 4:FOR I=1 TO 6:READ FC(B
	,I):NEXT:NEXT
115	GOTO 155
116	REM *				  *
117	REM * DESENHA SALAS DO LABIRINTO  *
118 	REM *				  *
120	HPLOT 0,0 TO 279,0 TO 279,159 TO 0,
	159 TO 0,0 TO 69,29 TO 209,29 TO 20
	9,129 TO 69,129 TO 69,29:HPLOT 209,
	29 TO 279,0:HPLOT 209,129 TO 279,15
	9:HPLOT 69,129 TO 0,159:RETURN
125	RETURN
130	HPLOT 109,9 TO 169,9 TO 159,19 TO 1
	19,19 TO 109,9:HPLOT 119,19 TO 119,
	9: HPLOT 159,19 TO 159,9:RETURN
135	HPLOT 119,139 TO 159,139 TO 169,149
	TO 109,149 TO 119,139:HPLOT 119,139
	TO 119,149:HPLOT 159,139 TO 159,149
	:RETURN
140	HPLOT 19,39 TO 49,49 TO 49,139:HPLO
	T 19,149 TO 19,39:HPLOT 19,139 TO 4
	9,139:HPLOT 19,49 TO 49,49:RETURN
145	HPLOT 119,59 TO 159,59 TO 159,129 T
	O 119,129 TO 119,59 TO 129,69 TO 14
	9,69 TO 149,119 TO 129,119 TO 129,6
	9:HPLOT 149,69 TO 159,59:HPLOT 149,
	119 TO 159,129:HPLOT 129,119 TO 119
	129:RETURN
150	HPLOT 229,49 TO 259,39 TO 259,149:
	HPLOT 229,139 TO 229,49:HPLOT 229,4
	9 TO 259,49:HPLOT 229,139 TO 259,13
	9:RETURN
151	REM *				  *
152	REM * GERA PASSAGENS ENTRE SALAS  *
153	REM *				  *
155	DIM S$(6,6)
165	FOR A=1 TO 5:FOR X=1 TO 5:FOR Y=1
	TO 5
167	& T10 * A + 10 * X + 10 * Y,10
170	IF A <> 5 AND RND(1) < .80 THEN S$(
	X,A)=S$(X,A)+"O":GOTO 180
175	S$(X,A)=S$(X,A)+"X"
180	IF MID$(S$(X,A-1),(Y-1)*6+1,1)="O"
	THEN S$(X,A)=S$(X,A)+"O":GOTO 190
185	S$(X,A)=S$(X,A)+"X"
190	IF Y-2 < 0 THEN 200
195	IF MID$(S$(X,A),(Y-2)*6+4,1)="O"
	THEN S$(X,A)=S$(X,A)+"O":GOTO 205
200	S$(X,A)=S$(X,A)+"X"
205	IF Y <> 5 AND RND(1) < .8 THEN S$(
	X,A)=S$(X,A)+"O":GOTO 215
210	S$(X,A)=S$(X,A)+"X"
215	IF X <> 5 AND RND(1) < .8 THEN S$(
	X,A)=S$(X,A)+"O":GOTO 225
220	S$(X,A)=S$(X,A)+"X"
225	IF MID$(S$(X-1,A),(X-1)*6+5,1)="O"
	THEN S$(X,A)=S$(X,A)+"O":GOTO 235
230	S$(X,A)=S$(X,A)+"X"
235	NEXT:NEXT:NEXT
240	X = INT (RND (1) * 3) + 2  :
	Y = INT (RND (1) * 3) + 2  :
	A = INT (RND (1) * 3) + 2
245	RD = INT (RND (1) * 6) + 1; ON RD
	GOTO 250,255,260,265,270,275
250	A=5:P1$=LEFT$(S$(X,A),(Y-1)*6):L=29
	-LEN(P1$):P2$=RIGHT$(S$(X,A),L):S$(
	X,A)=P1$+"O"+P2$:GOTO280
255 	A=1:P1$=LEFT$(S$(X,A),(Y-1)*6+1):L=
	29-LEN(P1$):P2$=RIGHT$(S$(X,A),L):
	S$(X,A)=P1$+"O"+P2$:GOTO 280
260	Y=5:P1$=LEFT$(S$(X,A),(Y-1)*6+3):L=
	29-LEN(P1$):P2$=RIGHT$(S$(X,A),L):
	S$(X,A)=P1$+"O"+P2$:GOTO 280
265	Y=1:P1$=LEFT$(S$(X,A),(Y-1)*6+2):L=
	29-LEN(P1$):P2$=RIGHT$(S$(X,A),L):
	S$(X,A)=P1$+"O"+P2$:GOTO 280
270	X=5:P1$=LEFT$(S$(X,A),(Y-1)*6+4):L=
	29-LEN(P1$):P2$=RIGHT$(S$(X,A),L):
	S$(X,A)=P1$+"O"+P2$:GOTO 280
275	X=1:P1$=LEFT$(S$(X,A),(Y-1)*6+5):L=
	29-LEN(P1$):P2$=RIGHT$(S$(X,A),L):
	S$(X,A)=P1$+"O"+P2$:GOTO 280
280	SX=X:SY=Y:SA=A
290	VTAB 23:PRINT "QUALQUER TECLA PARA 
	COMECAR"
300	IF PEEK(-16384) < 127 THEN 300
310	POKE -16368,0
1000	X = INT (RND (1) * 5) + 1   :
	Y = INT (RND (1) * 5) + 1   :
	A = INT (RND (1) * 5) + 1   :
	FC=1:GOTO 1220
1010	HOME:VTAB 22:HTAB 18:PRINT FC$(FC)
	:A$="":D=0:IF LS=1 THEN PRINT X,Y,A
1020	VTAB 22:PRINT "TEMPO :";T:FOR TEMPO
	=1 TO 80
1025	IF PEEK(-16384) > 127 THEN 1030
1027	NEXT:T=T+1:VTAB 22:PRINT "TEMPO :";
	T:GOTO 1020
1030	GET A$
1035	IF A$ = "*" THEN LS = 1
1040	IF A$ = "F" THEN 1300
1050	IF A$ = "C" THEN D = 1
1060	IF A$ = "B" THEN D = 2
1070	IF A$ = "N" THEN D = 3
1080	IF A$ = "S" THEN D = 4
1090	IF A$ = "L" THEN D = 5
1100	IF A$ = "?" THEN 1290
1110	IF A$ = "O" THEN D = 6
1120	IF A$ = "V" THEN 1280
1130	IF D = 0 THEN 1010
1135	T=T+1
1140	IF MID$(S$(X,A),(Y-1)*6+D,1) <> "O"
	THEN PRINT CHR$(7): GOTO 1010
1150	ON D GOTO 1160,1170,1180,1190,1200,
	1210	
1160	A=A+1:GOTO 1220
1170	A=A-1:GOTO 1220
1180	Y=Y-1:GOTO 1220
1190	Y=Y+1:GOTO 1220
1200	X=X+1:GOTO 1220
1210	X=X-1
1220	IF X > 5 OR X < 1 OR Y > 5 OR Y < I
	OR A > 5 OR A < I THEN PRINT "VOCE
	GANHOU":& T100,100:& T100,50:& T100
	,50:& T75,66:& T100,66:& T75,66:& T
	60,255:GOTO 3000
1230	HGR:HCOLOR=3:HPLOT0,0:CALL 62454:HC
	OLOR=0:GOSUB 120
1240	FOR I=1 TO 6:IF MID$(S$(X,A),(Y-1)*
	6+I,1)="X" THEN NEXT:GOTO 1010
1250	R=FC(FC,I)+1
1260	HCOLOR=0:ON R GOSUB 125,130,135,140
	,145,150
1270	NEXT:GOTO 1010
1280	INPUT "QUE DIRECAO 1-N 2-S 3-L 4-O"
	;FC:IF FC <1 OR FC >4 THEN 1280
1285	GOTO 1220
1286	REM *          PERDIDO ?	  *
1290	INVERSE:HTAB 18:PRINT SX;"  ";SY;" 
	 ";SA:NORMAL:GOTO 1220
1295	REM *	  FIM POR DESISTENCIA	  *
1300	TEXT:HOME:END
1400	REM *				  *
1410	REM *	      INSTRUCOES	  *
1420	REM *				  *
2000	VTAB 12:HTAB 14:INVERSE:PRINT "PALA
	CIO DE CRISTAL":NORMAL:VTAB 22:INPU
	T "QUER INSTRUCOES ?";Y$: IF LEFT$(
	Y$,1) <> "S" THEN RETURN
2010	HOME:VTAB 2:PRINT "O  OBJETIVO DO J
	OGO E' ACHAR A SAIDA DE":PRINT:PRIN
	T "UM PALACIO COM 5 ANDARES E 25 SA
	LAS POR":PRINT:PRINT "ANDAR. OU SEJ
	A,UM LABIRINTO ONDE APENAS"
2020	PRINT:PRINT "UMA SALA CONTEM A SAID
	A, E  VOCE DEVERA":PRINT:PRINT "ENC
	ONTRA-LA NO MENOR TEMPO POSSIVEL.":
	PRINT:PRINT "OS COMANDOS SAO:"
2030	PRINT:HTAB 6:INVERSE:PRINT "C";:NOR
	MAL:PRINT "-CIMA";:HTAB 17:INVERSE:
	PRINT "S";:NORMAL:PRINT "-SUL"
2040	PRINT:HTAB 6:INVERSE:PRINT "B";:NOR
	MAL:PRINT "-BAIXO";:HTAB 17:INVERSE
	:PRINT "L";:NORMAL:PRINT "-LESTE"
2050	PRINT:HTAB 6:INVERSE:PRINT "N";:NOR
	MAL:PRINT "-NORTE";:HTAB 17:INVERSE
	:PRINT "O";:NORMAL:PRINT "-OESTE"
2060	PRINT:HTAB 6:INVERSE:PRINT "F";:NOR
	MAL:PRINT "-FIM";:HTAB 17:INVERSE:P
	RINT "V";:NORMAL:PRINT "-VISAO"
2070	VTAB 23:INVERSE:PRINT "ESPACO";:NOR
	MAL:PRINT " PARA CONTINUAR"
2080	IF PEEK(-16384) < 127 THEN 2080
2090	POKE -16368,0:HOME:INVERSE:PRINT "V
	";:NORMAL:PRINT " O COMPUTADOR PERG
	UNTARA EM QUE DIRE-":PRINT:PRINT "C
	AO VOCE DESEJA OLHAR."
2100	PRINT:PRINT "POR FAVOR AGUARDE ENQU
	ANTO E GERADO  ":PRINT:PRINT "NOVO
	LABIRINTO":PRINT:PRINT:RETURN
2500	REM *				  *
2510	REM *	   MISSAO CUMPRIDA	  *
2520	REM *				  *
3000	TEXT:HOME:VTAB 5:HTAB 16:PRINT "PAR
	ABENS !!!"
3010	PRINT:PRINT "VOCE CONCLUIU SUA MISS
	AO EM ";T;" SEGUNDOS"
3030	VTAB 20:INPUT "QUER JOGAR NOVAMENTE
	?";Y$
3040	IF LEFT$(Y$,1) = "S" THEN RUN
9990	NORMAL
9999	DATA1,2,4,0,5,3,1,2,0,4,3,5,1,2,3,5
	,4,0,1,2,5,3,0,4
