Apagada docs

Aprendiendo a programar el pasado

Herramientas de usuario

Herramientas del sitio


es:basic:sinclair:salto_del_caballo_spectrum_version_2

Salto del caballo Spectrum Versión 2

Características de esta versión:

  • Se da a elegir entre hasta 4 casillas válidas, numeradas del 1 al 8.

Bugs conocidos:

  • Es muy lento.
  • A veces el camino del caballo pasa sobre sí mismo, sobreescribiendo la frase. No sé en qué condiciones sucede (siempre es en una segunda frase, dado que la primera siempre parece ser “A cada cerdo le llega su san Martín”). He comprobado los saltos del caballo y todos son perfectos, así que no sé por qué el camino pasa sobre sí mismo.
  • No sé qué ocurre si la casilla de destino es la 8.

Archivo basinc (borrar hasta la “#End run time variables” para obtener el archivo basic puro):

zxcaballo_v2.bas
Check 281E2B66
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 = 4
Var lastgoodx: Num = 4
Var ynow: Num = 4
Var lastgoody: Num = 4
Var colores: Num = 1
Var gg: Num = 12
Var ff: Num = 16
Var mx: Num = 3
Var my: Num = 2
Var espacios: Num = 3
Var m: NumArray(16) = 3, 4, 7, 1, 4, 6, 8, 3, 1, 6, 4, 1, 7, 5, 0, 0
Var u: NumArray(4, 4) = 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1
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, 340, 3
Var g: NumFOR = 5, 4, 1, 350, 2
Var h: NumFOR = 15, 14, 1, 7130, 2
Var i: NumFOR = 9, 8, 1, 540, 2
Var n: NumFOR = 16, 15, 1, 655, 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    ca   da   "
Var l$: STR = "A ca da "
Var i$: STR = ""
Var t$: StrArray(4, 4, 5) = "A    ga   XXXXXXXXXXXXXXXMar  cer  lle  do   ca   su   t\j   san  XXXXXle   da   "
 
# End Run-time Variables
 
  10 INK 0: PAPER 7: INVERSE 0: OVER 0: BRIGHT 0
  20 REM SALTO DEL CABALLO
  30 DATA 1,-2,2,-1,2,1,1,2,-1,2,-2,1,-2,-1,-1,-2
  40 IF PEEK (USR ("A")=0) THEN GO SUB 8000: REM CARGA UDG
  50 REM M: movimientes en viaje del caballo, U: casilla ya usada; T=texto de las casillas H=Solucion en ancho fijo
  60 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
  70 REM CARGA LAS 8 DIRECCIONES POSIBLES
  80 DIM K(8,2)
  90 RESTORE 30
 100 FOR F=1 TO 8: READ R: LET K(F,1)=R: READ R: LET K(F,2)=R: NEXT F
 110 RESTORE INT (RND*48)*10+5000
 120 REM SOLUCIONES VIAJE DEL CABALLO: DE 5000 A 5470
 130 FOR F=1 TO 14: READ M(F): LET M(F)=M(F)+1: NEXT F
 140 REM REFRANES: DE 6000 A 6280
 150 REM GO TO 9000: REM DEBUG SOLUCIONES
 160 RESTORE INT (RND*28)*10+6000
 170 REM RESTORE 6050
 180 READ S$,Q$,R$
 190 LET a$=S$: GO SUB 7000: LET S$=A$
 200 REM PRINT S$
 210 LET A$=Q$: GO SUB 7100: LET Q$=A$
 220 LET A$=R$: GO SUB 7100: LET R$=A$
 230 REM COLOCAR LAS SILABAS
 240 LET MOVI=1: LET LETRA=1: LET X=1: LET Y=1
 250 LET C$=""
 260 IF S$(LETRA)<>"-" THEN LET C$=C$+S$(LETRA): LET LETRA=LETRA+1: IF LEN (S$)>LETRA THEN GO TO 260
 270 IF MOVI>14 THEN GO TO 320: REM Hay un error que fuerza a romper los refranes de 15 silabas o mas
 280 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
 290 REM PRINT AT (Y-1)*2+1,(X-1)*5+1;T$(X,Y);
 300 LET C$=""
 310 LET LETRA=LETRA+1: IF LEN (S$)>=LETRA THEN GO TO 260
 320 CLS : LET XNOW=1: LET LASTGOODX=XNOW: LET YNOW=1: LET LASTGOODY=YNOW: LET Z$=T$(XNOW,YNOW): LET U(XNOW,YNOW)=1
 330 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
 340 LET cOLORES=1: FOR F=1 TO 4: LET COLORES=COLORES+1: IF COLORES>=2 THEN LET COLORES=0
 350 FOR G=1 TO 4
 360 INK 7: PAPER 0: BRIGHT 0: IF COLORES=0 THEN INK 0: PAPER 7
 370 LET COLORES=COLORES+1: IF COLORES>=2 THEN LET COLORES=0:
 380 PRINT AT ((G-1)*4)+1,((F-1)*5)+1;"     ";
 390 IF T$(F,G)="" THEN LET T$(F,G)="XXXXX": LET U(F,G)=1
 400 IF T$(F,G)<>"XXXXX" THEN IF ABS ((G-LASTGOODX)*(F-LASTGOODY))=2 THEN BRIGHT 1: REM si la diferencia es 2, la multiplicaci\*on es 2*1 o 1*2
 410 LET GG=((G-1)*4): LET FF=((F-1)*5)+1
 420 IF T$(F,G)="XXXXX" OR U(F,G)=1 THEN GO TO 480
 430 PRINT AT GG+1,FF;"     ";
 440 PRINT AT GG+4,FF;"     ";
 450 PRINT AT GG+2,FF;" ";T$(F,G,1 TO 3);" "
 460 PRINT AT GG+3,FF;" ";T$(F,G,4 TO 5);"  "
 470 GO TO 520
 480 PRINT AT GG+1,FF;" \ .  \. "
 490 PRINT AT GG+2,FF;"  \'.\.' "
 500 PRINT AT GG+3,FF;"  \.'\'. "
 510 PRINT AT GG+4,FF;" \ '  \' "
 520 NEXT G
 530 NEXT F
 540 FOR i=1 TO 8
 550 PAPER 8: INK 8: REM TRANSPARENT
 560 LET MX=K(I,1)+LASTGOODX: LET MY=K(I,2)+LASTGOODY
 570 IF MX<=0 THEN GO TO 620
 580 IF MX>4 THEN GO TO 620
 590 IF MY<=0 THEN GO TO 620
 600 IF MY>4 THEN GO TO 620
 605 IF U(MX,MY)=1 OR T$(MX,MY)="XXXXX" THEN GO TO 620
 610 PRINT AT ((MY-1)*4)+4,((MX-1)*5)+4;STR$ (I)
 620 NEXT I
 630 PAPER 0: INK 7
 640 PRINT AT 18,0;" PULSE UNA CIFRA (0-7)";
 650 LET l$="": LET espacios=0
 655 FOR n=1 TO LEN (z$)
 660 IF z$(n)=" " THEN LET espacios=espacios+1: GO TO 670
 665 LET espacios=0
 670 IF espacios<2 THEN LET l$=l$+z$(n)
 680 NEXT n
 690 PRINT AT 19,0;"REFR\aN:";l$
 700 IF INT ((LASTGOODX+LASTGOODY)/2)=(LASTGOODX+LASTGOODY)/2 THEN PAPER 7: INK 0
 710 PRINT AT (LASTGOODY-1)*4+1,(LASTGOODX-1)*5+1;"\:'";AT (LASTGOODY-1)*4+1,(LASTGOODX-1)*5+5;"\':";AT (LASTGOODY-1)*4+2,(LASTGOODX-1)*5+1;"\: ";T$(LASTGOODX,LASTGOODY,1 TO 3);"\ :"
 720 PRINT AT (LASTGOODY-1)*4+4,(LASTGOODX-1)*5+1;"\:.";AT (LASTGOODY-1)*4+4,(LASTGOODX-1)*5+5;"\.:";AT (LASTGOODY-1)*4+3,(LASTGOODX-1)*5+1;"\: ";T$(LASTGOODX,LASTGOODY,4 TO 5);" \ :"
 730 GO TO 740
 740 LET I$=INKEY$: IF I$<"0" OR I$>"8" THEN GO TO 740
 750 LET I=VAL (I$)
 760 IF (K(I,1)+LASTGOODX)<0 OR (K(I,1)+LASTGOODX>4) THEN GO TO 340
 770 IF (K(I,2)+LASTGOODY)<0 OR (K(I,1)+LASTGOODY>4) THEN GO TO 340
 780 LET XNOW=LASTGOODX+K(I,1): LET YNOW=LASTGOODY+K(I,2)
 790 IF U(XNOW,YNOW)=0 THEN GO SUB 810
 800 GO TO 340
 810 LET Z$=Z$+T$(XNOW,YNOW)
 820 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
 830 LET LASTGOODX=XNOW: LET LASTGOODY=YNOW
 840 LET U(XNOW,YNOW)=1
 850 IF Z$=H$ THEN GO TO 3000
 860 RETURN
3000 INK 0: PAPER 7: CLS : PRINT "SOLUCI\dN 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";AT 2,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: REM  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
Este sitio web utiliza cookies. Al utilizar el sitio web, usted acepta almacenar cookies en su computadora. También reconoce que ha leído y entendido nuestra Política de privacidad. Si no está de acuerdo abandone el sitio web.Más información
es/basic/sinclair/salto_del_caballo_spectrum_version_2.txt · Última modificación: 2024/03/31 12:19 por nepenthes