Add retn, change calling convention
Fix assembler bug, work on terminal stuff