Página 31 de 37

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 16:47
por na_th_an
Este lo has hecho bien. Ahora tienes que tocar el loader. Pon el tuyo y te digo qué hacerle.

Sobre los 150 bytes, es básicamente eliminar la definición estática de map_buff (o de map_attr, el que más coraje te de) y apuntarlo a una dirección fija que cae entre dos buffers de splib2 y que no se usa para nada.

Abre definitions.h y cambia esto:

$this->bbcode_second_pass_code('', 'unsigned char map_buff [150];')

Por esto:

$this->bbcode_second_pass_code('', 'unsigned char *map_buff = 61697;
')

En 61697 hay 240 bytes libres. Con eso utilizamos 150. Nos quedan 90. Podemos mover ahí más arrays. Por ejemplo, vamos a probar a mover a los enemigos. Esto no lo he probado, que conste. Vamos a poner en_an en 61697 + 150 = 61847 Sustituye

$this->bbcode_second_pass_code('', 'ANIMADO en_an [3];')

Por

$this->bbcode_second_pass_code('', 'ANIMADO *en_an = 61847;')

en_an ocupa 54 bytes. Con estos dos cambios tienes 204 bytes más para tí, lo que está genial. Aún podríamos ahorrar 36 bytes más, pero ahora mismo no recuerdo ningún array pequeño que quepa ahí. Prueba esos dos cambios y me cuentas. El primero funciona seguro. El segundo, es posible, aunque no lo he probado.

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 16:55
por Nightwolf
$this->bbcode_second_pass_code('', 'El loader es tal que así:

10 BORDER NOT PI:PAPER NOT PI:INK NOT PI:CLEAR VAL"24099":LET a=VAL"25000":LET b=a+VAL"2":LOAD""SCREEN$:POKE VAL"23739",CODE"o":LOAD""CODE:LOAD""CODE:POKE a,VAL"1":RANDOMIZE USR b:LOAD""CODE:POKE a,VAL"3":RANDOMIZE USR b:LOAD""CODE:RANDOMIZE USR VAL"24100"')

La verdad que no sé donde empieza uno y acaba el otro... :(

EDIT: He probado los cambios.... ¡genial! 200 bytes más!!!! :D ¡Gracias! :D

:ymca: :picha: :ymca:

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 17:04
por na_th_an
Indentado se ve mejor:

$this->bbcode_second_pass_code('', '10 BORDER NOT PI:
PAPER NOT PI:
INK NOT PI:
CLEAR VAL"24099":
LET a=VAL"25000":LET b=a+VAL"2":
LOAD""SCREEN$:POKE VAL"23739",CODE"o":
LOAD""CODE:
LOAD""CODE:POKE a,VAL"1":RANDOMIZE USR b:
LOAD""CODE:POKE a,VAL"3":RANDOMIZE USR b:
LOAD""CODE:RANDOMIZE USR VAL"24100"')

Ahí están todos los bloques: pantalla, reubica, RAM1, RAM3, y binario. Habría que meter un "LOAD""CODE:POKE a,VAL"4":RANDOMIZE USR b" para cargar RAM4 y moverlo a la RAM4:

$this->bbcode_second_pass_code('', '10 BORDER NOT PI:PAPER NOT PI:INK NOT PI:CLEAR VAL"24099":LET a=VAL"25000":LET b=a+VAL"2":LOAD""SCREEN$:POKE VAL"23739",CODE"o":LOAD""CODE:LOAD""CODE:POKE a,VAL"1":RANDOMIZE USR b:LOAD""CODE:POKE a,VAL"3":RANDOMIZE USR b:LOAD""CODE:POKE a,VAL"4":RANDOMIZE USR b:LOAD""CODE:RANDOMIZE USR VAL"24100"')

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 17:04
por na_th_an
Lo mejor de la Churrera es que cuando te falta sitio le puedes tocar un poco el totete para estas cosas :lol:

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 17:17
por Nightwolf
Muchas gracias, ¡funciona todo perfectamente! :) De mayor... ¡como vosotros! Me voy corriendo al Spectrum a probarlo ^^

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 18:05
por Nightwolf
Bueno, va genial en el spectrum. Pero si configuramos los cursores como teclas, no funciona.

Hice este cambio para poder redefinir las teclas en el juego. Pero por la razón que sea, los cursores luego en el juego no funcionan. (Esto se puede poner en cualquier juego churrero y tenemos configuración de teclado, que mola :D) )


$this->bbcode_second_pass_code('', ' print_str (10, 11, 7, "PRESS A KEY FOR");
tecla=0;
do
{
sp_WaitForNoKey ();
if(tecla==0) {print_str (13, 13, 7, " LEFT ");}
if(tecla==1) {print_str (15, 13, 7, "RIGHT");}
if(tecla==2) {print_str (15, 13, 7, "JUMP ");}
if(tecla==3) {print_str (15, 13, 7, "USE ");}
if(tecla==4) {print_str (14, 13, 7, "SELECT");}
if(tecla==5) {print_str (14, 13, 7, " ABORT");}
sp_UpdateNow ();
do {
gpjt = sp_GetKey ();
} while (!gpjt);
if(tecla==0){keys.left = sp_LookupKey(gpjt);}
if(tecla==1){keys.right = sp_LookupKey(gpjt);}
if(tecla==2){keys.fire = sp_LookupKey(gpjt);}
if(tecla==3){keys.down = sp_LookupKey(gpjt);}
if(tecla==4){keys.up = sp_LookupKey(gpjt);}
if(tecla==5){key_y = sp_LookupKey(gpjt);}
arkos_play_sound (0);
tecla+=1;
if(tecla==6) {break;}
}while (1);
')
¿Se podría hacer de alguna forma mejor para que funcionaran los cursores? En un spectrum nadie se pondrá a usarlos seguro, aunque no funcinan :S , pero en un emulador de seguro...

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 18:12
por na_th_an
Eso es porque los cursores en el +2 son "shift + 5" "shift + 6"... y no sé cómo detectará eso getKey, que sólo devuelve un ascii y usando una tabla interna de splib2. Habría que mirar esa tabla y tunearla. A ver si me pongo dale fran mañana.

Pero es que eso no es ya tocarle el totete, es ya operar a tripa abierta :lol:

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Lun, 09 Feb 2015, 18:18
por Nightwolf
$this->bbcode_second_pass_quote('na_th_an', 'P')ero es que eso no es ya tocarle el totete, es ya operar a tripa abierta :lol:


:D

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Vie, 13 Feb 2015, 16:25
por Hark0
$this->bbcode_second_pass_quote('Jarlaxe', 'V')amos que nos vamos!!!

Que ahora ya si que está a punto de caramelo... 8-)

Image



CULLONS!!!!!!!!!!!!!

BUENAAAAAAAAAAAAAAAAAAAAAAAAAA!

:cheer:

Re: Proyecto Churrero: AVORCHA - Pentacorn Quest

Publicado: Dom, 22 Feb 2015, 13:50
por alxinho
Me quedo embobado mirando la pantalla de carga :adore:

¿Está hecha de 0 o previamente haces un escaneo de un dibujo hecho a mano?

Yo lo hago de esa manera y siento curiosidad :D