1) some programs use new macros load_lib.mac
2) bcc32 add example use libimg.obj git-svn-id: svn://kolibrios.org@8236 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -192,7 +192,7 @@ macro sys_load_library library_name__, library_path__, system_path__, myimport,
|
||||
local i_begin
|
||||
local i_error
|
||||
local i_exit
|
||||
|
||||
push ebx
|
||||
mcall SF_SYS_MISC,SSF_LOAD_DLL,system_path__ ; load of sys directory
|
||||
test eax,eax
|
||||
jnz i_begin
|
||||
@@ -218,15 +218,18 @@ align 4
|
||||
call l_lib_init_error_window
|
||||
notify_window_run [arrea_xx] ; ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> @notify
|
||||
i_exit:
|
||||
pop ebx
|
||||
}
|
||||
;---------------------------------------------------------------------
|
||||
|
||||
;output:
|
||||
; eax - <20> 㤠筮 <20><> 0
|
||||
macro load_library library_name__, library_path__, system_path__, myimport, point_dir_name__
|
||||
{
|
||||
local i_begin
|
||||
local i_error
|
||||
local i_exit
|
||||
|
||||
push ebx
|
||||
if point_dir_name__ eq
|
||||
copy_path library_name__, [32], library_path__,0
|
||||
else
|
||||
@@ -252,6 +255,7 @@ align 4
|
||||
call l_lib_init_error_window
|
||||
notify_window_run [arrea_xx] ; ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> @notify
|
||||
i_exit:
|
||||
pop ebx
|
||||
;---------------------------------------------------------------------
|
||||
}
|
||||
|
||||
@@ -441,6 +445,7 @@ pop ebx eax
|
||||
; myimport - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㥬<EFBFBD><E3A5AC> <20>㭪樨
|
||||
;output:
|
||||
; eax - <20> 㤠筮 <20><> 0 <20><><EFBFBD> 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD> <20>㭪樨 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 㤠<><E3A4A0><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㧨<EFBFBD><E3A7A8>
|
||||
; ebx - ࠧ<><E0A0A7>蠥<EFBFBD><E8A0A5><EFBFBD>
|
||||
macro import_boxlib myimport
|
||||
{
|
||||
local import_loop
|
||||
@@ -452,9 +457,10 @@ local import_done
|
||||
local exit
|
||||
local import_not_found
|
||||
; initialize import
|
||||
|
||||
push esi
|
||||
mov edx, eax
|
||||
mov esi,myimport
|
||||
mov esi, myimport
|
||||
cld
|
||||
import_loop:
|
||||
lodsd ;mov eax,dword[esi] ;add esi,4 ;<3B><><EFBFBD><EFBFBD>砥<EFBFBD> <20> eax 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㥬<EFBFBD><E3A5AC> <20>㭪樨
|
||||
test eax, eax
|
||||
@@ -465,6 +471,7 @@ import_find:
|
||||
test ebx, ebx
|
||||
jz import_not_found ;<3B> 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD> <20>㭪樨 = 0 (<28> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD>)
|
||||
push eax ;eax - 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD> <20><>ᯮ<EFBFBD><E1AFAE><EFBFBD><EFBFBD>㥬<EFBFBD><E3A5AC> <20>㭪樨 (<28> <20><><EFBFBD>짮<EFBFBD><ECA7AE>⥫<EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>)
|
||||
align 4
|
||||
lp:
|
||||
mov cl, [eax]
|
||||
cmp cl, [ebx] ;<3B>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪権 <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> <20> <20> <20><><EFBFBD>짮<EFBFBD><ECA7AE>⥫<EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>
|
||||
@@ -512,6 +519,7 @@ import_not_found:
|
||||
import_done:
|
||||
xor eax,eax ;=0 <20><><EFBFBD> <20><><EFBFBD><EFBFBD>㧨<EFBFBD><E3A7A8><EFBFBD><EFBFBD> 㤠筮
|
||||
exit:
|
||||
pop esi
|
||||
}
|
||||
;---------------------------------------------------------------------
|
||||
|
||||
|
Reference in New Issue
Block a user