Z88DK - Ayudita pasando parámetros a una función

Soporte técnico sobre los lanzamientos de MojonTwins y comentarios sobre los güegos. Ofrecemos soporte técnico con Fourspriter, te ayudamos con ZX Basic o Z88DK, te damos pistas some cómo saltarse un bicho y cosas así.

Moderador: na_th_an

Avatar de Usuario
radastan
Mensajes: 692
Registrado: Vie, 20 Ago 2010, 12:54
Contactar:

Z88DK - Ayudita pasando parámetros a una función

Mensajepor radastan » Mié, 13 Nov 2013, 18:31

Veamos, estoy tratando de hacer una pruebecilla, y necesito pasarle parámetros a una función. Pasar parámetros no es problema en si mismo, se hacerlo, lo que no se es como pasarle el puntero de un sprites a HL.

Es decir, supongamos el sprite:

$this->bbcode_second_pass_code('', 'extern unsigned char sprite_cubo [];

#asm
._sprite_cubo
defb 255,255,128,1,128,1,128,1,128,1,128,1,128,1,128,1
defb 128,1,128,1,128,1,128,1,128,1,128,1,128,1,255,255
defb 12,13,14,15
#endasm')

Yo quiero hacer algo parecido a:

$this->bbcode_second_pass_code('', 'put_sprite_x16 (sprite_cubo, 10, 10);')

Y que la rutina sea:

$this->bbcode_second_pass_quote('', 'v')oid put_sprite_x16 (int posicion, int x, int y)
{
#asm
ld hl,2 ;pasamos y a D, x a E, y posicion a HL
add hl,sp
ld d, (hl)
inc hl
inc hl
ld e, (hl)
inc hl
inc hl
.
.
.
}


¿Qué demonios hago mal? se que es culpa del puntero que no he pasado a entero, pero es que estoy tratando de cambiar mi mente de ensamblador a C con ensamblador (que tiene su miga, oiga).