kernel: use undefined_syscall for undefined fn's in f68 family

git-svn-id: svn://kolibrios.org@6599 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Sergey Semyonov (Serge) 2016-10-16 20:32:10 +00:00
parent 67be24f81c
commit 18d0ffcc1c

View File

@ -1103,30 +1103,30 @@ f68:
jbe sys_sheduler jbe sys_sheduler
cmp ebx, 11 cmp ebx, 11
jb .fail jb undefined_syscall
cmp ebx, 27 cmp ebx, 27
ja .fail ja undefined_syscall
jmp dword [f68call+ebx*4-11*4] jmp dword [f68call+ebx*4-11*4]
.11: .11:
call init_heap call init_heap
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.12: .12:
stdcall user_alloc, ecx stdcall user_alloc, ecx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.13: .13:
stdcall user_free, ecx stdcall user_free, ecx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.14: .14:
cmp ecx, OS_BASE cmp ecx, OS_BASE
jae .fail jae .fail
mov edi, ecx mov edi, ecx
call get_event_ex call get_event_ex
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.16: .16:
test ecx, ecx test ecx, ecx
@ -1134,23 +1134,23 @@ f68:
cmp ecx, OS_BASE cmp ecx, OS_BASE
jae .fail jae .fail
stdcall get_service, ecx stdcall get_service, ecx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.17: .17:
call srv_handlerEx ;ecx call srv_handlerEx ;ecx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.19: .19:
cmp ecx, OS_BASE cmp ecx, OS_BASE
jae .fail jae .fail
stdcall load_library, ecx stdcall load_library, ecx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.20: .20:
mov eax, edx mov eax, edx
mov ebx, ecx mov ebx, ecx
call user_realloc ;in: eax = pointer, ebx = new size call user_realloc ;in: eax = pointer, ebx = new size
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.21: .21:
cmp ecx, OS_BASE cmp ecx, OS_BASE
@ -1160,15 +1160,15 @@ f68:
jae .fail jae .fail
stdcall load_pe_driver, ecx, edx stdcall load_pe_driver, ecx, edx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.22: .22:
cmp ecx, OS_BASE cmp ecx, OS_BASE
jae .fail jae .fail
stdcall shmem_open, ecx, edx, esi stdcall shmem_open, ecx, edx, esi
mov [esp+24], edx mov [esp+SYSCALL_STACK._edx], edx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.23: .23:
@ -1176,21 +1176,21 @@ f68:
jae .fail jae .fail
stdcall shmem_close, ecx stdcall shmem_close, ecx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.24: .24:
mov eax, [current_slot] mov eax, [current_slot]
xchg ecx, [eax+APPDATA.exc_handler] xchg ecx, [eax+APPDATA.exc_handler]
xchg edx, [eax+APPDATA.except_mask] xchg edx, [eax+APPDATA.except_mask]
mov [esp+32], ecx ; reg_eax+8 mov [esp+SYSCALL_STACK._ebx], edx
mov [esp+20], edx ; reg_ebx+8 mov [esp+SYSCALL_STACK._eax], ecx
ret ret
.25: .25:
cmp ecx, 32 cmp ecx, 32
jae .fail jae .fail
mov eax, [current_slot] mov eax, [current_slot]
btr [eax+APPDATA.except_mask], ecx btr [eax+APPDATA.except_mask], ecx
setc byte[esp+32] setc byte[esp+SYSCALL_STACK._eax]
jecxz @f jecxz @f
bts [eax+APPDATA.except_mask], ecx bts [eax+APPDATA.except_mask], ecx
@@: @@:
@ -1198,7 +1198,7 @@ f68:
.26: .26:
stdcall user_unmap, ecx, edx, esi stdcall user_unmap, ecx, edx, esi
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.27: .27:
@ -1206,13 +1206,13 @@ f68:
jae .fail jae .fail
stdcall load_file_umode, ecx stdcall load_file_umode, ecx
mov [esp+24], edx mov [esp+SYSCALL_STACK._edx], edx
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret
.fail: .fail:
xor eax, eax xor eax, eax
mov [esp+32], eax mov [esp+SYSCALL_STACK._eax], eax
ret ret