ReturnInfinity / BareMetal-OS-legacy

BareMetal is a 64-bit OS for x86-64 based computers. The OS is written entirely in Assembly while applications can be written in Assembly, C/C++, and Rust.
1.74k stars 302 forks source link

NewLib printf() output missing #36

Closed IanSeyler closed 11 years ago

IanSeyler commented 11 years ago

printf("NewLib Test Application\n=======================\n");

Seems to only print "NewLib Test Application\n"

printf("You entered: '%s'", tempstring);

Seems to only print "You entered: '%s". Trailing ' is gone.

Need to investigate what is being passed to os_output_chars.

IanSeyler commented 11 years ago

This was caused by an error in the Newlib <-> BareMetal OS "glue".

write() was set to return 0 instead of the number of bytes it actually wrote.