Herramientas de usuario

Herramientas del sitio


es:the_magic_maze

¡Esta es una revisión vieja del documento!


THE MAGIC MAZE

Ficha

Autor DGC Software
Computadora Amstrad PCW 8256 / 8512 / 9512
Año 1993
Género Arcade
Controles Teclado
Lenguajes Inglés
Estado Preservado

Capturas

Descripción

Listado

  • Listado - AMAZE.BAS
10 OPTION RUN
20 GOSUB 450:PRINT e$"0"e$"f":POKE paper,170
30 a$="                                             ":aa=0:bb=0:CALL pr(aa,bb,a$)
40 a$="                                             ":aa=0:bb=2:CALL pr(aa,bb,a$)
50 a$="    THE MAGIC MAZE":aa=24:bb=0:CALL pr(aa,bb,a$):POKE double,0
60 a$="  ¤1993 DGC Software  ":aa=22:bb=2:CALL pr(aa,bb,a$):POKE double,1
70 a$="                                             ":aa=0:bb=28:CALL pr(aa,bb,a$)
80 a$="  ":FOR bb=4 TO 28:FOR aa=0 TO 86 STEP 86:CALL pr(aa,bb,a$):NEXT:NEXT
90 a$="                                             ":aa=0:bb=30:CALL pr(aa,bb,a$)
100 a$="THE MAZE IS NOW BEING PRINTED: PLEASE WAIT  ":aa=2:bb=29:CALL pr(aa,bb,a$)
110 POKE paper,0
120 key=0:FOR a=0 TO 19:FOR b=0 TO 11:z=INT(RND*12)+1:s(a,b)=z:GOSUB 350:GOSUB 420:NEXT:NEXT
130 a=10:b=7:z=13:IF s(a,b)=12 THEN key=key-1
131 s(a,b)=z:GOSUB 350
140 POKE paper,170:a$="    LEVEL:                  SCORE:        ":aa=2:bb=29:CALL pr(aa,bb,a$):POKE paper,0
150 GOSUB 440
160 lev=lev+1:a$=STR$(lev):aa=23:bb=29:CALL pr(aa,bb,a$)
170 z$=INPUT$(1):z=INSTR(CHR$(1)+CHR$(6)+CHR$(30)+CHR$(31)+CHR$(27),z$):IF z=0 GOTO 170
180 ON z GOSUB 190,220,250,280,310:GOTO 170
190 IF a>0 THEN IF NOT(s(a-1,b)=5 OR s(a-1,b)=6 OR s(a-1,b)=10 OR s(a-1,b)=11 OR s(a-1,b)=12) THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:a=a-1:z=13:GOSUB 350:RETURN 
200 IF a>0 THEN IF s(a-1,b)=12 THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:a=a-1:z=13:GOSUB 350:GOSUB 410:RETURN
210 RETURN
220 IF a<19 THEN IF NOT(s(a+1,b)=3 OR s(a+1,b)=6 OR s(a+1,b)=8 OR s(a+1,b)=9 OR s(a+1,b)=12) THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:a=a+1:z=13:GOSUB 350:RETURN
230 IF a<19 THEN IF s(a+1,b)=12 THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:a=a+1:z=13:GOSUB 350:GOSUB 410:RETURN
240 RETURN
250 IF b<11 THEN IF NOT(s(a,b+1)=4 OR s(a,b+1)=7 OR s(a,b+1)=9 OR s(a,b+1)=10 OR s(a,b+1)=12) THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:b=b+1:z=13:GOSUB 350:RETURN
260 IF b<11 THEN IF s(a,b+1)=12 THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:b=b+1:z=13:GOSUB 350:GOSUB 410:RETURN
270 RETURN
280 IF b>0 THEN IF NOT(s(a,b-1)=2 OR s(a,b-1)=7 OR s(a,b-1)=8 OR s(a,b-1)=11 OR s(a,b-1)=12) THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:b=b-1:z=13:GOSUB 350:RETURN
290 IF b>0 THEN IF s(a,b-1)=12 THEN z=INT(RND*11)+1:s(a,b)=z:GOSUB 350:b=b-1:z=13:GOSUB 350:GOSUB 410:RETURN
300 RETURN
310 PRINT FNat$(14,25)"                                          "
320 PRINT FNat$(15,25)"               ANOTHER GO?                "
330 PRINT FNat$(16,25)"                                          "
340 x$=INPUT$(1):IF UPPER$(x$)="Y" THEN lev=0:sc=0:GOTO 430 ELSE PRINT e$ "e":MEMORY highmem!:END
350 IF a=10 AND b=8 THEN a(a,b)=5
351 aa=(a*4)+5:bb=(b*2)+4:a$=g$(z):IF z>11 THEN POKE pen,170
360 IF z=13 THEN POKE paper,255
370 CALL pr(aa,bb,a$)
380 IF z>11 THEN POKE pen,255
390 IF z=13 THEN POKE paper,0
400 RETURN
410 FOR f=1 TO 10:FOR ff=1 TO 80:NEXT:OUT 248,11:OUT 248,12:sc=sc+1:a$=STR$(sc):aa=71:bb=29:CALL pr(aa,bb,a$):NEXT:key=key-1:IF key<1 THEN GOTO 430 ELSE RETURN
420 IF z=12 THEN key=key+1:RETURN ELSE RETURN
430 ERASE s:DIM s(20,12):POKE paper,170:GOTO 100
440 PRINT FNat$(0,0)CHR$(7):a$=STR$(sc):aa=71:bb=29:CALL pr(aa,bb,a$):RETURN
450 DEFINT a-z:highmem!=HIMEM:MEMORY &HCFFF:e$=CHR$(27):cls$=e$+"E"+e$+"H"
460 rev$=e$+"p":rof$=e$+"q"
470 DEF FNat$(x,y)=e$+"Y"+CHR$(32+x)+CHR$(32+y)
480 DIM s(21,15),g$(15):a=2
490 RESTORE 660:address=&HE000
500 READ code:WHILE code<256:POKE address,code:address=address+1:READ code:WEND
510 screen=&HE000:pr=&HE003:UDGs=&HD100:pen=&HD001:paper=&HD000:double=&HD006
520 RESTORE 560:FOR i=0 TO 151:READ j:POKE udgs+i,j:NEXT
530 RANDOMIZE PEEK(64504!):FOR x=0 TO 13:READ l,m:g$(x)=CHR$(l)+CHR$(m):NEXT
540 POKE DOUBLE,a:POKE paper,0:POKE pen,255
550 PRINT cls$:CALL screen:RETURN
560 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
570 DATA 3,3,3,3,3,3,3,3,192,192,192,192,192,192,192,192
580 DATA 0,0,0,255,255,0,0,0,3,3,3,255,255,3,3,3
590 DATA 192,192,192,255,255,192,192,192,3,3,3,255,255,0,0,0
600 DATA 192,192,192,255,255,0,0,0,0,0,0,255,255,3,3,3
610 DATA 0,0,0,255,255,192,192,192,192,192,192,192,192,0,0,0
620 DATA 3,3,3,3,3,0,0,0,0,0,0,192,192,192,192,192,0,0,0,3,3,3,3,3
630 DATA 255,195,153,152,152,153,195,255,255,255,255,1,1,171,41,255
640 DATA 252,249,252,128,144,144,243,227,63,159,63,1,9,9,207,199
650 DATA 0,1,5,6,7,8,2,6,9,10,5,3,2,3,4,4,12,8,14,10,9,13,7,11,15,16,17,18
660 DATA 195,6,224,195,91,224,205,41,224,17,152,44,33,0,182,1,104,1,62
670 DATA 32,245,213,62,8,115,35,114,35,19,61,32,248,209,235,9,235,241,61
680 DATA 32,236,201,193,205,90,252,233,0,201,102,26,111,34,2,208,10,50,16
690 DATA 208,3,10,111,3,10,103,237,75,16,208,6,0,17,19,208,237,176,42
700 DATA 2,208,205,252,224,34,4,208,33,19,208,34,17,208,201,205,48,224,205
710 DATA 41,224,243,42,17,208,126,35,34,17,208,205,234,224,17,79,225,1,8
720 DATA 0,237,176,221,42,4,208,14,8,253,33,79,225,42,0,208,125,6,8
730 DATA 253,203,0,6,56,13,7,221,203,8,22,221,203,0,22,7,195,164,224
740 DATA 203,4,221,203,8,22,221,203,0,22,203,4,221,203,8,22,221,203,0
750 DATA 22,16,215,253,35,58,6,208,167,202,209,224,221,126,8,221,119,9,221
760 DATA 126,0,221,119,1,221,35,121,254,5,194,209,224,1,200,2,221,9,79
770 DATA 221,35,13,194,130,224,42,4,208,1,16,0,9,34,4,208,33,16,208
780 DATA 53,194,98,224,251,201,17,0,184,254,32,48,3,17,0,209,111,38,0
790 DATA 41,41,41,25,201,92,38,0,84,203,37,1,15,225,9,78,35,70,235
800 DATA 41,41,41,9,201,48,89,0,92,208,94,160,97,112,100,64,103,16,106
810 DATA 224,108,176,111,128,114,80,117,32,120,240,122,192,125,144,128,96,131,48
820 DATA 134,0,137,208,139,160,142,112,145,64,148,16,151,224,153,176,156,128,159
830 DATA 80,162,32,165,240,167,192,170,144,173,96,176,0,0,0,0,0,0,256

Controles

      ↑ = ARRIBA
      ↓ = ABAJO
      → = DERECHA
      ← = IZQUIERDA
   EXIT = ABANDONAR PARTIDA

Carga del programa

1.- Introducir el disco CP/M por la cara 2
2.- Escribir BASIC y esperar a que cargue
3.- Retirar el disco CP/M e introducir el disco que contiene el juego The Magic Maze
4.- Teclear run "Amaze" y pulsar la tecla "ENTER"

Extras

Descarga

Enlaces

es/the_magic_maze.1484603384.txt.gz · Última modificación: 2017/01/17 00:49 por jevicac