#pragma intel_syntax inline asm void exit() { ? mvi c, 0 call 5 ? ret } inline asm void putchar (byte e) { ? mvi c, 2 call 5 ? ret } inline void new_line() { putchar(13) putchar(10) } inline asm byte getchar() { ? mvi c, 1 call 5 ? ret } #if 0 inline asm void putstr_cpm(pointer de) { ? mvi c, 9 call 5 ? ret } #endif inline asm byte readychar() { ? mvi c, 11 call 5 ? ret } inline asm word cpm_version() { ? mvi c, 12 call 5 ? ret } inline asm void reset_disk_system() { ? mvi c, 13 call 5 ? ret } inline asm byte current_disk() { ? mvi c,25 call 5 ? ret } #if 0 inline asm word console_mode(word de) { ? mvi c, 109 call 5 ? ret } inline word get_console_mode() { return console_mode($ffff) } inline asm void set_console_mode(word de) { console_mode(mode) } #endif