Also remove all calls to memcpy in favor of memmove, which has defined semantics when the ranges overlap. The fact that memcpy was working in console.c to scroll the screen is not guaranteed by all implementations.
disk interrupts (assuming bochs has a bug)
and plan 9 code, at least boots and gets into C code.