Un intento de juego de salto del caballo programado en 2023 para el concurso de ByteManiacos. Al final no lo mandé.
El juego está escrito en el IDE Basinc (mucho más fácil de usar que el ZX original).
Archivo (contiene algún bug):caballo-sinclair.zip
Ver también: Salto del caballo Spectrum Versión 2
Check 8C7ED9DF Auto 8224 # Run-time Variables Var r: Num = -2 Var x: Num = 4 Var y: Num = 2 Var BYTE: Num = 0 Var codi: Num = 46 Var movi: Num = 13 Var letra: Num = 40 Var xnow: Num = 1 Var lastgoodx: Num = 1 Var ynow: Num = 1 Var lastgoody: Num = 1 Var colores: Num = 1 Var m: NumArray(16) = 4, 3, 8, 5, 2, 8, 6, 3, 1, 6, 4, 1, 7, 5, 0, 0 Var u: NumArray(4, 4) = 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 Var k: NumArray(8, 2) = 1, -2, 2, -1, 2, 1, 1, 2, -1, 2, -2, 1, -2, -1, -1, -2 Var e: NumArray(14, 2) = 193, 144, 201, 145, 205, 146, 211, 147, 218, 148, 220, 149, 209, 150, 225, 151, 233, 152, 237, 153, 243, 154, 250, 155, 252, 156, 241, 157 Var f: NumFOR = 5, 4, 1, 300, 3 Var g: NumFOR = 5, 4, 1, 310, 2 Var h: NumFOR = 15, 14, 1, 7130, 2 Var d$: STR = "ntilde" Var s$: STR = "A-ca-da-cer-do-le-lle-ga-su-san-Mar-t\jn" Var q$: STR = "A cada cerdo le llega su San Mart\jn" Var a$: STR = "Indica que el culpable pagar\h su ofensa, aunque sea tarde." Var r$: STR = "Indica que el culpable pagar\h su ofensa, aunque sea tarde." Var h$: STR = "A ca da cer do le lle ga su san Mar t\j " Var c$: STR = "" Var z$: STR = "A " Var i$: STR = "" Var t$: StrArray(4, 4, 5) = "A ga XXXXXXXXXXXXXXXMar ca do lle cer su t\j san XXXXXle da " # End Run-time Variables 5 INK 0: PAPER 7: INVERSE 0: OVER 0: BRIGHT 0 10 REM SALTO DEL CABALLO 20 DATA 1,-2,2,-1,2,1,1,2,-1,2,-2,1,-2,-1,-1,-2 30 GO SUB 8000: REM CARGA UDG 35 REM M: movimientes en viaje del caballo, U: casilla ya usada; T=texto de las casillas H=Solucion en ancho fijo 40 DIM M(16): DIM U(4,4): DIM T$(4,4,5): LET H$="": FOR F=1 TO 4: FOR G=1 TO 4: LET T$(F,G)="XXXXX": LET U(F,G)=1: NEXT g: NEXT F 50 REM CARGA LAS 8 DIRECCIONES POSIBLES 60 DIM K(8,2) 70 RESTORE 20 80 FOR F=1 TO 8: READ R: LET K(F,1)=R: READ R: LET K(F,2)=R: NEXT F 90 RESTORE INT (RND*48)*10+5000 100 REM SOLUCIONES VIAJE DEL CABALLO: DE 5000 A 5470 110 FOR F=1 TO 14: READ M(F): LET M(F)=M(F)+1: NEXT F 120 REM REFRANES: DE 6000 A 6280 125 REM GO TO 9000: REM DEBUG SOLUCIONES 130 RESTORE INT (RND*28)*10+6000 140 REM RESTORE 6170 150 READ S$,Q$,R$ 160 LET a$=S$: GO SUB 7000: LET S$=A$ 170 PRINT S$ 180 LET A$=Q$: GO SUB 7100: LET Q$=A$ 190 LET A$=R$: GO SUB 7100: LET R$=A$ 200 REM COLOCAR LAS SILABAS 210 LET MOVI=1: LET LETRA=1: LET X=1: LET Y=1 220 LET C$="" 230 IF S$(LETRA)<>"-" THEN LET C$=C$+S$(LETRA): LET LETRA=LETRA+1: IF LEN (S$)>LETRA THEN GO TO 230 235 IF MOVI>14 THEN GO TO 270: REM Hay un error que fuerza a romper los refranes de 15 silabas o mas 240 IF T$(X,Y)="XXXXX" THEN LET T$(X,Y)=C$: LET H$=H$+T$(X,Y): LET U(X,Y)=0: LET X=X+K(M(MOVI),1): LET Y=Y+K(M(MOVI),2): LET MOVI=MOVI+1 242 REM PRINT AT (Y-1)*2+1,(X-1)*5+1;T$(X,Y); 250 LET C$="" 260 LET LETRA=LETRA+1: IF LEN (S$)>=LETRA THEN GO TO 230 270 CLS : LET XNOW=1: LET LASTGOODX=XNOW: LET YNOW=1: LET LASTGOODY=YNOW: LET Z$=T$(XNOW,YNOW): LET U(XNOW,YNOW)=1 275 REM LET L=LEN (Z$): IF L>1 THEN IF Z$(L TO L-1)=" " THEN LET Z$=Z$(1 TO L): GO TO 275 300 LET cOLORES=1: FOR F=1 TO 4: LET COLORES=COLORES+1: IF COLORES>=2 THEN LET COLORES=0 310 FOR G=1 TO 4 320 INK 7: PAPER 0: BRIGHT 0: IF COLORES=0 THEN INK 0: PAPER 7 330 LET COLORES=COLORES+1: IF COLORES>=2 THEN LET COLORES=0: 340 PRINT AT ((G-1)*4)+1,((F-1)*5)+1;" "; 345 IF ABS (G-LASTGOODX)=2 THEN IF ABS (F-LASTGOODY)=1 THEN BRIGHT 1 346 IF ABS (G-LASTGOODX)=1 THEN IF ABS (F-LASTGOODY)=2 THEN BRIGHT 1 350 IF T$(F,G)="" THEN LET T$(F,G)="XXXXX": LET U(F,G)=1 360 IF T$(F,G)="XXXXX" OR U(F,G)=1 THEN GO TO 420 370 PRINT AT ((G-1)*4)+1,((F-1)*5)+1;" "; 380 PRINT AT ((G-1)*4)+4,((F-1)*5)+1;" "; 390 PRINT AT ((G-1)*4)+2,((F-1)*5)+1;" ";T$(F,G,1 TO 3);" " 400 PRINT AT ((G-1)*4)+3,((F-1)*5)+1;" ";T$(F,G,4 TO 5);" " 410 GO TO 460 420 PRINT AT ((G-1)*4)+1,((F-1)*5)+1;" \ . \. " 430 PRINT AT ((G-1)*4)+2,((F-1)*5)+1;" \'.\.' " 440 PRINT AT ((G-1)*4)+3,((F-1)*5)+1;" \.'\'. " 450 PRINT AT ((G-1)*4)+4,((F-1)*5)+1;" \ ' \' " 460 NEXT G 470 NEXT F 500 PAPER 0: INK 7 502 PRINT AT 1,21;" TECLAS ";AT 3,24;"Q";AT 4,23;"O P";AT 5,24;"A";AT 7,21;"SELECCION";AT 8,23;"ENTER" 505 IF INT ((XNOW+YNOW)/2)=(XNOW+YNOW)/2 THEN PAPER 7: INK 0 510 IF U(XNOW,YNOW)=1 THEN IF XNOW<>LASTGOODX THEN IF YNOW<>LASTGOODY THEN GO TO 560 520 IF T$(XNOW,YNOW)="XXXXX" THEN GO TO 560 530 PRINT AT (YNOW-1)*4+1,(XNOW-1)*5+1;"\:'";AT (YNOW-1)*4+1,(XNOW-1)*5+5;"\':";AT (YNOW-1)*4+2,(XNOW-1)*5+1;"\: ";T$(XNOW,YNOW,1 TO 3);"\ :" 540 PRINT AT (YNOW-1)*4+4,(XNOW-1)*5+1;"\:.";AT (YNOW-1)*4+4,(XNOW-1)*5+5;"\.:";AT (YNOW-1)*4+3,(XNOW-1)*5+1;"\: ";T$(XNOW,YNOW,4 TO 5);" \ :" 550 GO TO 600 560 PRINT AT ((YNOW-1)*4)+1,((XNOW-1)*5)+1;"\:'\ . \::" 570 PRINT AT ((YNOW-1)*4)+2,((XNOW-1)*5)+1;"\: \'.\.'\ :" 580 PRINT AT ((YNOW-1)*4)+3,((XNOW-1)*5)+1;"\: \.'\'.\ :" 590 PRINT AT ((YNOW-1)*4)+4,((XNOW-1)*5)+1;"\:.\ ' \::" 600 PRINT AT 19,0;"REFR\aN:";Z$ 610 LET I$=INKEY$: IF I$="" THEN GO TO 610 620 IF (I$="q" OR I$="Q") AND YNOW>1 THEN LET YNOW=YNOW-1 630 IF (I$="a" OR I$="A") AND YNOW<4 THEN LET YNOW=YNOW+1 640 IF (I$="o" OR I$="O") AND XNOW>1 THEN LET XNOW=XNOW-1 650 IF (I$="p" OR I$="P") AND XNOW<4 THEN LET XNOW=XNOW+1 660 IF I$=CHR$ (13) AND (U(XNOW,YNOW)=0) THEN GO SUB 800 670 GO TO 300 800 IF ABS (XNOW-LASTGOODX)=2 THEN IF ABS (YNOW-LASTGOODY)=1 THEN GO TO 850 810 IF ABS (XNOW-LASTGOODX)=1 THEN IF ABS (YNOW-LASTGOODY)=2 THEN GO TO 850 820 INK 7: PAPER 1: PRINT AT 19,1;"DEBE SALTAR 2 vertical y 1 horizontal o viceversa": PAUSE 10: INK 7: PAPER 1: PRINT AT 190,1;TAB 32;TAB 32;: RETURN 850 LET Z$=Z$+T$(XNOW,YNOW) 855 REM LET L=LEN (Z$): IF L>1 THEN IF Z$(L TO L-1)=" " THEN LET Z$=Z$(1 TO L): GO TO 855 860 LET LASTGOODX=XNOW: LET LASTGOODY=YNOW 870 LET U(XNOW,YNOW)=1 880 IF Z$=H$ THEN GO TO 3000 890 RETURN 3000 INK 0: PAPER 7: CLS : PRINT "SOLUCION CORRECTA" 3010 INK 7: PAPER 0: PRINT Q$ 3020 INK 0: PAPER 7: PRINT R$ 3500 INPUT "OTRA VEZ? (S/N)";A$ 3510 IF A$="S" OR A$="s" THEN RUN 4999 STOP 5000 DATA 2,3,6,0,3,5,7,2,0,5,3,0,6,4 5010 DATA 2,3,6,0,3,5,7,2,0,5,3,6,0,2 5020 DATA 2,3,6,0,3,5,7,2,5,0,3,0,6,4 5030 DATA 2,3,6,0,3,5,7,2,5,0,3,6,0,2 5040 DATA 2,3,6,0,5,3,1,6,1,4,7,2,4,6 5050 DATA 2,3,6,0,5,3,1,6,1,4,7,4,2,0 5060 DATA 2,3,6,0,5,3,1,6,4,1,7,2,4,6 5070 DATA 2,3,6,0,5,3,1,6,4,1,7,4,2,0 5080 DATA 2,3,6,1,4,6,0,3,0,5,2,5,7,1 5090 DATA 2,3,6,1,4,6,0,3,0,5,2,7,5,3 5100 DATA 2,3,6,1,4,6,0,3,5,0,2,5,7,1 5110 DATA 2,3,6,1,4,6,0,3,5,0,2,7,5,3 5120 DATA 2,3,6,1,6,4,2,7,1,4,6,1,3,5 5130 DATA 2,3,6,1,6,4,2,7,1,4,6,3,1,7 5140 DATA 2,3,6,1,6,4,2,7,4,1,6,1,3,5 5150 DATA 2,3,6,1,6,4,2,7,4,1,6,3,1,7 5160 DATA 2,4,1,7,5,2,0,5,3,6,0,2,5,2 5170 DATA 2,4,1,7,5,2,5,0,3,6,0,2,5,2 5180 DATA 2,4,7,1,3,6,1,4,7,4,2,0,5,2 5190 DATA 2,4,7,1,3,6,4,1,7,4,2,0,5,2 5200 DATA 2,5,0,2,4,7,1,4,6,3,1,7,4,2 5210 DATA 2,5,0,2,4,7,4,1,6,3,1,7,4,2 5220 DATA 2,5,2,0,6,3,0,5,2,5,7,1,4,2 5230 DATA 2,5,2,0,6,3,5,0,2,5,7,1,4,2 5240 DATA 3,0,3,5,7,2,0,5,3,0,6,4,1,3 5250 DATA 3,0,3,5,7,2,5,0,3,0,6,4,1,3 5260 DATA 3,0,5,3,1,6,1,4,7,2,4,6,1,3 5270 DATA 3,0,5,3,1,6,4,1,7,2,4,6,1,3 5280 DATA 3,1,4,6,0,3,0,5,2,7,5,3,0,3 5290 DATA 3,1,4,6,0,3,5,0,2,7,5,3,0,3 5300 DATA 3,1,6,4,2,7,1,4,6,1,3,5,0,3 5310 DATA 3,1,6,4,2,7,4,1,6,1,3,5,0,3 5320 DATA 3,2,7,4,1,7,5,2,0,5,3,0,6,4 5330 DATA 3,2,7,4,1,7,5,2,0,5,3,6,0,2 5340 DATA 3,2,7,4,1,7,5,2,5,0,3,0,6,4 5350 DATA 3,2,7,4,1,7,5,2,5,0,3,6,0,2 5360 DATA 3,2,7,4,7,1,3,6,1,4,7,2,4,6 5370 DATA 3,2,7,4,7,1,3,6,1,4,7,4,2,0 5380 DATA 3,2,7,4,7,1,3,6,4,1,7,2,4,6 5390 DATA 3,2,7,4,7,1,3,6,4,1,7,4,2,0 5400 DATA 3,2,7,5,0,2,4,7,1,4,6,1,3,5 5410 DATA 3,2,7,5,0,2,4,7,1,4,6,3,1,7 5420 DATA 3,2,7,5,0,2,4,7,4,1,6,1,3,5 5430 DATA 3,2,7,5,0,2,4,7,4,1,6,3,1,7 5440 DATA 3,2,7,5,2,0,6,3,0,5,2,5,7,1 5450 DATA 3,2,7,5,2,0,6,3,0,5,2,7,5,3 5460 DATA 3,2,7,5,2,0,6,3,5,0,2,5,7,1 5470 DATA 3,2,7,5,2,0,6,3,5,0,2,7,5,3 6000 DATA "A-buen-en-ten-de-dor-po-cas-pa-la-bras-bas-tan","A buen entendedor, pocas palabras bastan","Quien es discreto, no necesita grandes explicaciones." 6010 DATA "A-ca-ba-llo-re-ga-la-do-no-le-mi-res-el-dien-te","A caballo regalado, no le mires el diente","Se pueden disculpar los defectos en aquello que nada cuesta." 6020 DATA "A-ca-da-cer-do-le-lle-ga-su-san-Mar-t\#237n","A cada cerdo le llega su San Mart\#237n","Indica que el culpable pagar\#225 su ofensa, aunque sea tarde." 6030 DATA "A-Dios-ro-gan-do-y-con-el-ma-zo-dan-do","A Dios rogando y con el mazo dando","No nos dar\#225 la fortuna lo que no obtengamos con nuestro esfuerzo." 6040 DATA "A-gos-to-y-Sep-tiem-bre-no-du-ran-siem-pre.","Agosto y septiembre no duran siempre","Hay que guardar la cosecha para todo el a\#241o." 6050 DATA "A-gua-co-rrien-te-no-ma-ta-a-la-gen-te","Agua corriente, no mata a la gente","Basada en la creencia com\#250n de que el agua de los arroyos es potable." 6060 DATA "A-gua-de-ma-yo-no-ca-la-el-sa-yo","Agua de mayo no cala el sayo","Indica que algo no nos preocupa." 6070 DATA "Has-ta-el-cua-ren-ta-de-ma-yo-no-te-qui-tes-el-sa-yo","Hasta el cuarenta de mayo, no te quites el sayo","Hasta principios de junio sigue haciendo mal tiempo." 6080 DATA "A-gua-que-no-has-de-be-ber-d\#233-ja-la-co-rrer","Agua que no has de beber, d\#233jala correr","No hay que inmiscuirse en asuntos ajenos." 6090 DATA "A-in-vier-no-llu-vio-so-ve-ra-no-a-bun-do-so","A invierno lluvioso, verano abundoso","" 6100 DATA "A-la-ca-ma-no-te-i-r\#225s-sin-sa-ber-u-na-co-sa-m\#225s","A la cama no te ir\#225s sin saber una cosa m\#225s","Siempre se aprenden cosas nuevas" 6110 DATA "A-quien-Dios-se-la-d\#233-san-Pe-dro-se-la-ben-di-ga","A quien Dios se la d\#233, san Pedro se la bendiga","Que acate cada cual su suerte" 6120 DATA "An-tes-se-pi-lla-al-men-ti-ro-so-que-al-co-jo","Antes se pilla al mentiroso que al cojo","Los embustes siempre se descubren" 6130 DATA "A-pe-rro-fla-co-to-do-son-pul-gas","A perro flaco, todo son pulgas","La desgracia se ensa\#241a con el d\#233bil" 6140 DATA "Bue-na-es-la-nie-ve-que-en-su-tiem-po-vie-ne","Buena es la nieve que en su tiempo viene","Todo es bueno si sucede oportunamente" 6150 DATA "Ca-ba-llo-gran-de-an-de-o-no-an-de","Caballo grande, ande o no ande","Por presunci\#243n, se descuida la utilidad" 6160 DATA "Ca-ba-llo-que-vue-la-no-quie-re-es-pue-la","Caballo que vuela no conoce espuela","Quien es voluntarioso no necesita ser animado" 6170 DATA "Ca-ba-llo-que-al-can-za-pa-sar-que-rr\#237-a","Caballo que alcanza, pasar querr\#237a","La ambici\#243n no conoce l\#237mite" 6180 DATA "Ca-da-ma-es-tri-llo-tie-ne-su-li-bri-llo","Cada maestrillo tiene su librillo","Cada cual hace las cosas a su manera" 6190 DATA "Ca-sa-con-dos-puer-tas-ma-la-es-de-guar-dar","Casa con dos puertas, mala es de guardar","" 6200 DATA "Di-me-con-qui\#233n-an-das-y-te-di-r\#233-qui\#233n-e-res","Dime con quien andas y te dir\#233 qui\#233n eres","La compa\#241\#237a influye grandemente en las costumbres" 6210 DATA "El-o-jo-del-a-mo-en-gor-da-al-ca-ba-llo","El ojo del amo engorda al caballo","La prosperidad de un negocio requiere de supervisi\#243n" 6220 DATA "En-bo-ca-ce-rra-da-no-en-tran-mos-cas","En boca cerrada, no entran moscas","Se deben callar ciertas cosas" 6230 DATA "En-ca-sa-de-he-rre-ro-cu-cha-ra-de-pa-lo","En casa de herrero, cuchara de palo","No todo el mundo hace lo que predica" 6240 DATA "M\#225s-va-le-un-to-ma-que-dos-te-da-r\#233","M\#225s vale un \#171toma\#187 que dos \#171te dar\#233\#187","Cumplen m\#225s las acciones que las promesas" 6250 DATA "Muer-to-el-pe-rro-se-a-ca-b\#243-la-ra-bia","Muerto el perro, se acab\#243 la rabia","El problema cesa al desaparecer su causa." 6260 DATA "Cuan-do-u-na-puer-ta-se-cie-rra-o-tra-se-a-bre","Cuando una puerta se cierra, otra se abre","Nunca hay que perder la esperanza." 6270 DATA "Pien-sa-el-la-dr\#243n-que-to-dos-son-de-su-con-di-ci\#243n","Piensa el ladr\#243n que todos son de su condici\#243n","El malo se excusa atribuy\#233ndoles a los dem\#225s las mismas acciones que \#233l hace." 6280 DATA "Nun-ca-di-gas-de-es-ta-a-gua-no-be-be-r\#233","Nunca digas \#171de esta agua no beber\#233\#187","El futuro puede hacernos caer en lo que hoy criticamos" 7000 REM Carga tabla para Cambiar de ISO-8859-1 A MIS UDG 7005 RESTORE 7010 7010 DATA 193,144,"Aacute",201,145,"Eacute",205,146,"Iacute",211,147,"Oacute",218,148,"Uacute",220,149,"Uumlaut",209,150,"Ntilde",225,151,"aacute",233,152,"eacute",237,153,"iacute",243,154,"oacute",250,155,"uacute",252,156,"uumlaut",241,157,"ntilde" 7020 DIM E(14,2) 7030 FOR F=1 TO 14: READ E(F,1),E(F,2): READ d$: NEXT F 7100 REM Cambiar de ISO-8859-1 A MIS UDG 7105 CLS : PRINT AT 1,1;"SUSTITUYENDO ISO-8859-1 POR UDGs..." 7110 FOR G=1 TO LEN (A$) 7120 LET CODI= CODE (A$(G)): IF CODI<127 THEN GO TO 7160 7130 FOR H=1 TO 14 7140 IF CODI=E(H,1) THEN LET A$(G)=CHR$ (E(H,2)): LET H=15: GO TO 7160 7150 NEXT H: PRINT A$(1 TO G)+"(";CODI;")"+A$(G TO ) 7160 NEXT G 7170 RETURN 8000 DATA 8: REM 00001000 8001 DATA 16: REM 00010000 8002 DATA 60: REM 00111100 8003 DATA 66: REM 01000010 8004 DATA 66: REM 01000010 8005 DATA 126: REM 01111110 8006 DATA 66: REM 01000010 8007 DATA 0: REM 00000000 8010 DATA 8: REM 00001000 8011 DATA 16: REM 00010000 8012 DATA 126: REM 01111110 8013 DATA 64: REM 01000000 8014 DATA 124: REM 01111100 8015 DATA 64: REM 01000000 8016 DATA 126: REM 01111110 8017 DATA 0: REM 00000000 8020 DATA 4: REM 00000100 8021 DATA 8: REM 00001000 8022 DATA 62: REM 00111110 8023 DATA 8: REM 00001000 8024 DATA 8: REM 00001000 8025 DATA 8: REM 00001000 8026 DATA 62: REM 00111110 8027 DATA 0: REM 00000000 8030 DATA 8: REM 00001000 8031 DATA 16: REM 00010000 8032 DATA 60: REM 00111100 8033 DATA 66: REM 01000010 8034 DATA 66: REM 01000010 8035 DATA 66: REM 01000010 8036 DATA 60: REM 00111100 8037 DATA 0: REM 00000000 8040 DATA 8: REM 00001000 8041 DATA 16: REM 00010000 8042 DATA 66: REM 01000010 8043 DATA 66: REM 01000010 8044 DATA 66: REM 01000010 8045 DATA 66: REM 01000010 8046 DATA 60: REM 00111100 8047 DATA 0: REM 00000000 8050 DATA 102: REM 01100110 8051 DATA 0: REM 00000000 8052 DATA 66: REM 01000010 8053 DATA 66: REM 01000010 8054 DATA 66: REM 01000010 8055 DATA 66: REM 01000010 8056 DATA 60: REM 00111100 8057 DATA 0: REM 00000000 8060 DATA 50: REM 00110010 8061 DATA 76: REM 01001100 8062 DATA 0: REM 00000000 8063 DATA 98: REM 01100010 8064 DATA 82: REM 01010010 8065 DATA 74: REM 01001010 8066 DATA 70: REM 01000110 8067 DATA 0: REM 00000000 8070 DATA 8: REM 00001000 8071 DATA 16: REM 00010000 8072 DATA 56: REM 00111000 8073 DATA 4: REM 00000100 8074 DATA 60: REM 00111100 8075 DATA 68: REM 01000100 8076 DATA 60: REM 00111100 8077 DATA 0: REM 00000000 8080 DATA 8: REM 00001000 8081 DATA 16: REM 00010000 8082 DATA 56: REM 00111000 8083 DATA 68: REM 01000100 8084 DATA 120: REM 01111000 8085 DATA 64: REM 01000000 8086 DATA 60: REM 00111100 8087 DATA 0: REM 00000000 8090 DATA 8: REM 00001000 8091 DATA 16: REM 00010000 8092 DATA 0: REM 00000000 8093 DATA 48: REM 00110000 8094 DATA 16: REM 00010000 8095 DATA 16: REM 00010000 8096 DATA 56: REM 00111000 8097 DATA 0: REM 00000000 8100 DATA 8: REM 00001000 8101 DATA 16: REM 00010000 8102 DATA 56: REM 00111000 8103 DATA 68: REM 01000100 8104 DATA 68: REM 01000100 8105 DATA 68: REM 01000100 8106 DATA 56: REM 00111000 8107 DATA 0: REM 00000000 8110 DATA 8: REM 00001000 8111 DATA 16: REM 00010000 8112 DATA 68: REM 01000100 8113 DATA 68: REM 01000100 8114 DATA 68: REM 01000100 8115 DATA 68: REM 01000100 8116 DATA 56: REM 00111000 8117 DATA 0: REM 00000000 8120 DATA 68: REM 01000100 8121 DATA 0: REM 00000000 8122 DATA 68: REM 01000100 8123 DATA 68: REM 01000100 8124 DATA 68: REM 01000100 8125 DATA 68: REM 01000100 8126 DATA 56: REM 00111000 8127 DATA 0: REM 00000000 8130 DATA 52: REM 00110100 8131 DATA 72: REM 01001000 8132 DATA 0: REM 00000000 8133 DATA 120: REM 01111000 8134 DATA 68: REM 01000100 8135 DATA 68: REM 01000100 8136 DATA 68: REM 01000100 8137 DATA 0: REM 00000000 8500 RESTORE 8000 8505 CLS : PRINT AT 1,1;"GENERANDO UDGs..." 8510 FOR F=0 TO (8*7*2)-1 8520 READ BYTE: POKE USR "A"+F,BYTE 8530 NEXT f 8540 RETURN 9000 REM test movimientos caballo 9010 LET x=1: LET y=1 9020 FOR n=1 TO 14 9030 LET x=x+k(m(n),1): LET y=y+k(m(n),2) 9035 PRINT AT y,x*2;: IF n>=10 THEN PRINT STR$ (n) 9036 IF n<10 THEN PRINT " "+STR$ (n) 9040 PAUSE 10: NEXT n