Página 1 de 1

¡Puertos!

Publicado: Mar, 10 Dic 2013, 12:11
por radastan
Más cosicas, decidme donde estoy metiendo la pata con esta rutina:

$this->bbcode_second_pass_code('', '
void port_out (int port, int value)
{
#asm
ld hl,2 ;pasamos la variable de entrada al acumulador
add hl,sp
inc hl
inc hl
ld c, (hl)
inc hl
inc hl
inc hl
inc hl
ld a, (hl)
out (c),a
#endasm
}')

El problema es seguro que no estoy haciendo bien el paso de las variables de Z88DK a los registros.
Con lo sencillo que es todo en ensamblador, mecachis.

Re: ¡Puertos!

Publicado: Mar, 10 Dic 2013, 12:16
por na_th_an
Creo que estás leyendo los parámetros al revés e incrementando de más hl. Sin probar, yo lo haría asín:

$this->bbcode_second_pass_code('', 'void port_out (int port, int value)
{
#asm
ld hl,2
add hl,sp
; value -> A
ld a, (hl)
inc hl
inc hl
; port -> BC
ld c, (hl)
inc hl
ld b, (hl)
;
out (c),a
#endasm
}')

Re: ¡Puertos!

Publicado: Mar, 10 Dic 2013, 12:26
por radastan
Eso era. De mayor quiero tener éxito con las mujeres como tu.

Re: ¡Puertos!

Publicado: Mar, 10 Dic 2013, 12:32
por na_th_an
Pero solo encueras y sartando en la corchoneta.

Re: ¡Puertos!

Publicado: Mar, 10 Dic 2013, 12:37
por radastan
$this->bbcode_second_pass_quote('na_th_an', 'P')ero solo encueras y sartando en la corchoneta.


¿Me crecerá el pito?