Bien, ahora me pongo SANGUIJUELA... les cuento que estoy creando un TRACKER para el AY 3-8912 con zx boriel puramente en basic, para poder hacerle Musica y FX a mis juegos, claro que tambien para compartirlo (y aunque alguien me explique algun dia como rayos compilo el WYZ player, creo que tiene mucho mas mérito para mi, lo tomo como desafio propio).
No es la primera vez que me sucede que alguna rutina no me funciona. Puntualmente en este post les dejare' las que mas me dieron problema y no entiendo donde esta mi error.
Este "retazo" de rutina funciona con una doble tabla ascii alojada en memoria (50000) brindando 64 columnas a imprimir, para aprovechar mas pantalla. (si, ya se que en LIBRARY de ZX BORIEL hay un programita que imprime en 64 col, pero como dije, a mi me gusta el desafio: "hazlo tu mismo"... tambien se que esta' es bastante precaria a lo basic espectrumero, pero para mejorarla, necesito primero que nada que funcione)
Código: Seleccionar todo
9550 '------------------------------
'| IMPRIME PATTERN |
'------------------------------
PAUSE 0
BRIGHT 0
FOR f= 0 TO 15
PAPER 7
IF f=0 OR f=4 OR f=8 OR f=12 OR f=16 THEN
PAPER 3
END IF
LET fil = 8 + f
LET col = 1
LET numero = f
LET decimales = 2
GOSUB 9605
NEXT f
STOP
9605 '------------------------------------------------
'\ /
' | INPRESION DE NUMEROS EN 64 COLUMNAS |
'/ \
'------------------------------------------------
'enviar a esta sub rutina:
' fil = fila
' col = columna
' numero
' decimales = 1-unidades
' 2-decenas
' 3-centenas
' 4-mil
' 5-decenas de mil
9606 LET X$=STR$ (numero)
9607 IF decimales > LEN X$ THEN
LET X$="0"+X$
GOTO 9607
END IF
FOR z=0 TO LEN X$ STEP 2
POKE 23607,194
POKE 23606,80
PRINT AT fil,col+(z/2); X$(z)
IF z+1 <= LEN X$ THEN
POKE 23607,197
POKE 23606,80
PRINT AT fil,col+(z/2) ; OVER 1 ; X$(z+1)
END IF
IF z+col > 31 THEN
LET col = 0
LET fil = fil + 1
END IF
NEXT z
POKE 23606,0
POKE 23607,60
RETURN
Aqui les dejo el el .z80 en spectrum basic, el cual funciona a la perfeccion
http://www.mediafire.com/?e1331ilv7wa7k42
el siguiente es el archivo .TAP generado por el compilador del codigo escrito arriba (se resetea)
http://www.mediafire.com/?nubshu8qjaj1kwa
...y el .BIN que debe cargarse en la direccion 50000 con los graficos
http://www.mediafire.com/?fwar9f2ly17hinm
Gracias Boriel por devolverme a la vida; perdon Mojon Twins por atomizarlos por facebook y mails gracias a todos, espero respuestas