summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorMichal Idziorek <m.i@gmx.at>2014-11-23 19:28:40 +0100
committerMichal Idziorek <m.i@gmx.at>2014-11-23 19:28:40 +0100
commit9a13aedd4ef04711fc5139c86025272e9648cc4c (patch)
tree49cf0f4e6923df17f023abd5dbb50bd8fa53e8e5 /asm
parent6b8c02a9cf4ac36e42d07c668a2be27d2bf1a733 (diff)
double indirect block support to ELF and check sum calc
Diffstat (limited to 'asm')
-rw-r--r--asm/int_syscall_handler.asm16
1 files changed, 16 insertions, 0 deletions
diff --git a/asm/int_syscall_handler.asm b/asm/int_syscall_handler.asm
index 3ffdd25..f90ba51 100644
--- a/asm/int_syscall_handler.asm
+++ b/asm/int_syscall_handler.asm
@@ -11,6 +11,8 @@ global int_syscall_handler
[extern syscall_isatty]
[extern syscall_lseek]
[extern syscall_sbrk]
+[extern syscall_stat]
+[extern syscall_lstat]
[extern syscall_unhandled]
[bits 32]
@@ -55,6 +57,12 @@ int_syscall_handler:
cmp eax, 70
je call_sbrk
+ cmp eax, 74
+ je call_stat
+
+ cmp eax, 79
+ je call_lstat
+
push eax
jmp call_unhandled
@@ -81,6 +89,14 @@ done_blocking:
iret ;Interrupt-Return
+call_stat:
+ call syscall_stat
+ jmp done
+
+call_lstat:
+ call syscall_lstat
+ jmp done
+
call_write:
call syscall_write
jmp done