From c498f6cdd6477e2f40c2f940d02ab91b65b8e7fe Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Mon, 16 Jul 2018 08:19:20 -0700 Subject: 4352 - subx: write() syscall --- subx/019syscalls.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/subx/019syscalls.cc b/subx/019syscalls.cc index fdafd7d4..f9698957 100644 --- a/subx/019syscalls.cc +++ b/subx/019syscalls.cc @@ -14,11 +14,14 @@ case 0xcd: { // int imm8 (software interrupt) void process_int80() { switch (Reg[EAX].u) { case 1: - exit(Reg[EBX].u); + exit(/*exit code*/Reg[EBX].u); break; case 3: Reg[EAX].i = read(/*file descriptor*/Reg[EBX].u, /*memory buffer*/mem_addr_u8(Reg[ECX].u), /*size*/Reg[EDX].u); break; + case 4: + Reg[EAX].i = write(/*file descriptor*/Reg[EBX].u, /*memory buffer*/mem_addr_u8(Reg[ECX].u), /*size*/Reg[EDX].u); + break; } } -- cgit 1.4.1-2-gfad0