forked from KolibriOS/kolibrios
deleted function of memory of the 'box_lib.obj' now they are connected through 'lib_init'
all programs that use 'tree_list' and 't_edit' must use 'lib_init' git-svn-id: svn://kolibrios.org@1489 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -21,47 +21,10 @@ include 'bl_sys.mac'
|
||||
include 'box_lib.mac' ;macro which should make life easier :)
|
||||
|
||||
;-----------------------------------------------------------------------------
|
||||
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
;input:
|
||||
; ecx = size data
|
||||
;otput:
|
||||
; eax = pointer to memory
|
||||
align 4
|
||||
mem_Alloc:
|
||||
push ebx
|
||||
mov eax,68
|
||||
mov ebx,12
|
||||
int 0x40
|
||||
pop ebx
|
||||
ret
|
||||
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
;input:
|
||||
; ecx = pointer to memory
|
||||
align 4
|
||||
proc mem_Free, mptr:dword
|
||||
push eax ebx ecx
|
||||
mov ecx,[mptr]
|
||||
cmp ecx,0
|
||||
jz @f
|
||||
mov eax,68
|
||||
mov ebx,13
|
||||
int 0x40
|
||||
@@:
|
||||
pop ecx ebx eax
|
||||
ret
|
||||
endp
|
||||
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
;otput:
|
||||
; eax = pointer to memory
|
||||
align 4
|
||||
proc mem_ReAlloc, mptr:dword, size:dword
|
||||
push ebx ecx edx
|
||||
mov edx, [mptr]
|
||||
mov ecx, [size]
|
||||
mcall 68, 20
|
||||
pop edx ecx ebx
|
||||
ret
|
||||
endp
|
||||
mem.alloc dd ? ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
mem.free dd ? ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
mem.realloc dd ? ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
dll.load dd ?
|
||||
|
||||
;----------------------------------------------------
|
||||
;EditBox
|
||||
@@ -138,8 +101,17 @@ use_path_show
|
||||
align 16
|
||||
use_text_edit
|
||||
|
||||
;input:
|
||||
; eax = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; ebx = ... <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; ecx = ... <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; edx = ... <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
align 16
|
||||
init:
|
||||
lib_init:
|
||||
mov [mem.alloc], eax
|
||||
mov [mem.free], ebx
|
||||
mov [mem.realloc], ecx
|
||||
mov [dll.load], edx
|
||||
ret
|
||||
|
||||
|
||||
@@ -147,7 +119,7 @@ align 16
|
||||
EXPORTS:
|
||||
|
||||
|
||||
dd sz_init, init
|
||||
dd sz_init, lib_init
|
||||
dd sz_version, 0x00000001
|
||||
|
||||
dd sz_edit_box, edit_box
|
||||
|
@@ -1,6 +1,6 @@
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> box_lib.obj
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TextEditor <20><><EFBFBD> Kolibri OS
|
||||
; 䠩<> <20><><EFBFBD><E1ABA5><EFBFBD><EFBFBD> ࠧ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 17.05.2010 IgorA
|
||||
; 䠩<> <20><><EFBFBD><E1ABA5><EFBFBD><EFBFBD> ࠧ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 09.06.2010 IgorA
|
||||
; <20><> <20><><EFBFBD> <20>ਬ<EFBFBD><E0A8AC><EFBFBD><EFBFBD><EFBFBD> GPL2 <20><>業<EFBFBD><E6A5AD><EFBFBD>
|
||||
|
||||
;input:
|
||||
@@ -154,7 +154,7 @@ proc ted_init, edit:dword
|
||||
|
||||
mov ecx,sizeof.symbol
|
||||
imul ecx,ted_max_chars
|
||||
call mem_Alloc ;<3B>뤥<EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
invoke mem.alloc,ecx ;<3B>뤥<EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
mov ted_tex,eax
|
||||
mov ted_tex_1,eax
|
||||
add ted_tex_1,sizeof.symbol
|
||||
@@ -166,7 +166,7 @@ proc ted_init, edit:dword
|
||||
;-------------------------------------------------
|
||||
mov ecx,1024 ;1024 - <20><><EFBFBD> <20><><EFBFBD>ᨢ<EFBFBD> ted_arr_key_pos
|
||||
add ecx,ted_syntax_file_size
|
||||
call mem_Alloc
|
||||
invoke mem.alloc,ecx
|
||||
mov ted_arr_key_pos,eax
|
||||
add eax,1024
|
||||
mov ted_syntax_file,eax
|
||||
@@ -255,8 +255,8 @@ align 4
|
||||
proc ted_delete, edit:dword
|
||||
push edi
|
||||
mov edi,dword[edit]
|
||||
stdcall mem_Free,ted_tex
|
||||
stdcall mem_Free,ted_arr_key_pos ;ted_syntax_file
|
||||
invoke mem.free,ted_tex
|
||||
invoke mem.free,ted_arr_key_pos ;ted_syntax_file
|
||||
pop edi
|
||||
ret
|
||||
endp
|
||||
@@ -1204,7 +1204,7 @@ proc ted_memory_increase
|
||||
add ecx,ted_max_chars
|
||||
mov ted_max_chars,ecx
|
||||
imul ecx,sizeof.symbol
|
||||
stdcall mem_ReAlloc, ted_tex,ecx
|
||||
invoke mem.realloc, ted_tex,ecx
|
||||
mov ebx,ted_tex
|
||||
mov ted_tex,eax
|
||||
mov ted_tex_1,eax
|
||||
@@ -3946,7 +3946,7 @@ proc ted_but_save_file, edit:dword, file:dword, f_name:dword
|
||||
je .no_save
|
||||
|
||||
mov ecx,ted_max_chars
|
||||
call mem_Alloc
|
||||
invoke mem.alloc,ecx
|
||||
push eax ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
mov edx,ted_tex
|
||||
@@ -3999,7 +3999,7 @@ call ted_fun_save_err
|
||||
@@:
|
||||
|
||||
pop ecx ;<3B><><EFBFBD><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
stdcall mem_Free,ecx
|
||||
invoke mem.free,ecx
|
||||
.no_save:
|
||||
popad
|
||||
ret
|
||||
|
@@ -1,6 +1,6 @@
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> box_lib.obj
|
||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TreeList <20><><EFBFBD> Kolibri OS
|
||||
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 15.05.2010 IgorA
|
||||
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 09.06.2010 IgorA
|
||||
; <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GPL2 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
@@ -27,14 +27,14 @@ tl_data_init: ;
|
||||
xor ecx,ecx
|
||||
mov cx,tl_info_size
|
||||
imul ecx,tl_info_max_count
|
||||
call mem_Alloc
|
||||
invoke mem.alloc,ecx
|
||||
mov dword[edi],eax ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
mov tl_data_img,0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'data_img'
|
||||
mov tl_data_img_sys,0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'data_img_sys'
|
||||
|
||||
mov ecx,sizeof.TreeList
|
||||
imul ecx,tl_info_max_count
|
||||
call mem_Alloc
|
||||
invoke mem.alloc,ecx
|
||||
mov tl_data_nodes,eax ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
push dword edi
|
||||
@@ -70,15 +70,15 @@ proc tl_data_clear, tlist:dword ;
|
||||
mov edi,dword[tlist]
|
||||
cmp tl_data_img,0
|
||||
je @f
|
||||
stdcall mem_Free,tl_data_img ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
invoke mem.free,tl_data_img ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@@:
|
||||
cmp tl_data_img_sys,0
|
||||
je @f
|
||||
stdcall mem_Free,tl_data_img_sys ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
invoke mem.free,tl_data_img_sys ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@@:
|
||||
stdcall mem_Free,dword[edi]
|
||||
invoke mem.free,dword[edi]
|
||||
|
||||
stdcall mem_Free,tl_data_nodes
|
||||
invoke mem.free,tl_data_nodes
|
||||
pop edi
|
||||
ret
|
||||
endp
|
||||
|
Reference in New Issue
Block a user