Hola, muy buenas a todos y a todas. La pregunta es cómo podría imprimir un carácter en la consola de Windows, trabajando en 32 bits. No querría tener que usar ni GCC (querría usar NASM puro), ni tampoco DosBox. ¡Muchas gracias!
Tenes que usar los servicios del S.O. en este caso la API de Windows. Con GetStdHandle (https://msdn.microsoft.com/en-us/library/windows/desktop/ms683231%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396) obtenes el HANDLE correspondiente (STD_OUTPUT_HANDLE para escribir en consola) y despues podes usar WriteFile (y ReadFile para leer con STD_INPUT_HANDLE).
Cita de: Eternal Idol en 23 Agosto 2015, 10:31 AM
Tenes que usar los servicios del S.O. en este caso la API de Windows. Con GetStdHandle (https://msdn.microsoft.com/en-us/library/windows/desktop/ms683231%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396) obtenes el HANDLE correspondiente (STD_OUTPUT_HANDLE para escribir en consola) y despues podes usar WriteFile (y ReadFile para leer con STD_INPUT_HANDLE).
Y... No podría usar printf?
Cita de: Shout en 23 Agosto 2015, 17:46 PM
Y... No podría usar printf?
Aunque yo diria que con "NASM puro" se asume usar los servicios del S.O. para llamar a printf tendria que enlazar
(o cargar) una RTL de C, si sabes como hacerlo con NASM (yo siempre trabajo con MASM) explicaselo a HelloWorldCodigo.
Entonces, si no tengo que usar C Standard, donde están definidos GetStdHandle?
Aca (http://lmgtfy.com/?q=getstdhandle+nasm).