SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: fachamix en Jueves 26 de Octubre de 2006, 03:02

Título: C & Assembly - Parametros
Publicado por: fachamix en Jueves 26 de Octubre de 2006, 03:02
quiero utilizar las funciones del BIOS, lo ke mas me intereza es trabajar con las funciones graficas, como poner a la pantalla en 320 x 200, y dibujar un pixel en pantalla para despues progresar.


mi pregunta es la siguiente.........................

desde un programa en C, como hago para llamar a una funcion en assembler y pasarle parametros ?????? la funcion en assembler esta en otro archivo . ej:

------------------------------ MAIN.C --------------------
void bios_line(int x, int y, int x2, int y2);
....
....
/*en algun momento del codigo llamar a esa funcion que esta en un archivo ensamblador */
bios_line(0,0,100,100);

/* COMO MANDO EL 0 , 0 , 100 , 100. COMO MANDO ESOS PARAMETROS!!!!!!!!!!!!! */
...
...
...
----------------------------------------------------------------

el problema que tengo no se trata de saber mezclar C con ASSEMBLY, sino que no se como enviar parametros desde C a ASSEMBLY
Título: Re: C & Assembly - Parametros
Publicado por: fachamix en Jueves 26 de Octubre de 2006, 03:05
uso DJGPP (gcc de windows) y NASM
Título: Re: C & Assembly - Parametros
Publicado por: Eternal Idol en Jueves 26 de Octubre de 2006, 08:22
DJGPP es para MS-DOS (no genera ejecutables PE), en cuanto a lo que queres hacer te recomiendo leer esto y tener muy en cuenta que tu programa usando DJGPP sera de 32 bits y no de 16:

http://www.delorie.com/djgpp/doc/eli-m17n99.html (http://www.delorie.com/djgpp/doc/eli-m17n99.html)
Título: Re: C & Assembly - Parametros
Publicado por: fachamix en Viernes 27 de Octubre de 2006, 02:58
gracias hermano, me sirvio mucho ya se donde estaban los parametrios.

respondanme esta otra pregunta (otro topico)
Título: Re: C & Assembly - Parametros
Publicado por: Eternal Idol en Viernes 27 de Octubre de 2006, 08:04
Los parametros se pasan de dos maneras mas o menos establecidas, en registros o en la pila.