Newer
Older
honey-os / src / kernel / syscalls / syscallStub.asm
section .sharedFunctions
bits 32

global syscallStub
global handleSyscallEnd
extern handleSyscall
extern temporaryESP

temporaryEAX: resb 4

syscallStub:
  mov [temporaryEAX], eax
  mov eax, 0x500000
  mov cr3, eax
  mov eax, [temporaryEAX]
  push esi
  push edx
  push ecx
  push ebx
  push eax
  push edi
  call handleSyscall
handleSyscallEnd:
  mov eax, [temporaryESP]
  mov esp, eax
  pop ebp
  ret