console: __stdcall function must preserve ebx register

git-svn-id: svn://kolibrios.org@6067 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Sergey Semyonov (Serge) 2016-01-17 23:55:03 +00:00
parent 3d94132d09
commit 73fdb3cb47

View File

@ -17,11 +17,13 @@ START:
; evident heap initialization, because if DLL is loaded, heap is already initialized ; evident heap initialization, because if DLL is loaded, heap is already initialized
; (if heap was not initialized, loader does this implicitly). ; (if heap was not initialized, loader does this implicitly).
; So this action does nothing useful, but nothing harmful. ; So this action does nothing useful, but nothing harmful.
push ebx
push 68 push 68
pop eax pop eax
push 11 push 11
pop ebx pop ebx
int 0x40 int 0x40
pop ebx
or eax, -1 or eax, -1
ret 4 ret 4
@ -31,7 +33,7 @@ START:
align 4 align 4
con_init: con_init:
pop eax pop eax
pop [con.wnd_width] pop [con.wnd_width]
pop [con.wnd_height] pop [con.wnd_height]
@ -43,7 +45,7 @@ con_init:
push ebx push ebx
mov [con.init_cmd],1 mov [con.init_cmd],1
mov ecx, 4 mov ecx, 4
mov eax, con.wnd_width mov eax, con.wnd_width
mov edx, con.def_wnd_width mov edx, con.def_wnd_width
@ -154,17 +156,17 @@ con_init_check:
mov ah,[con.init_cmd] mov ah,[con.init_cmd]
test ah,ah test ah,ah
jne cmd_init_yes jne cmd_init_yes
push con.title_init_console push con.title_init_console
push -1 push -1
push -1 push -1
push -1 push -1
push -1 push -1
call con_init call con_init
cmd_init_yes: cmd_init_yes:
ret ret
; void __stdcall con_write_asciiz(const char* string); ; void __stdcall con_write_asciiz(const char* string);
con_write_asciiz: con_write_asciiz: