1) new function 'edit_box_set_text' in 'box_lib'

2) small updates in 'fasm', 'planet_v', 'nu_pogodi'

git-svn-id: svn://kolibrios.org@1619 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
IgorA
2010-09-17 16:05:21 +00:00
parent 1362808317
commit 37863c906d
9 changed files with 138 additions and 29 deletions

View File

@@ -327,7 +327,7 @@ ret
;--- <20><><EFBFBD><EFBFBD><EFBFBD>塞 ᬥ饭<E1ACA5><E9A5AD> ------------------------------------
;--- <20>᫨ ᬥ饭<E1ACA5><E9A5AD> <20><20><><EFBFBD><E2A0AD><EFBFBD><EFBFBD><><E4ABA0> ed_offset_cl <20><><EFBFBD><EFBFBD><EFBFBD>
; <20><20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><E2A0A2><EFBFBD><EFBFBD><EFBFBD> ed_offset_fl
; <20> <20><><20><><EFBFBD><E2AEA2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⮢ word ed_flags
; <20> <20><><20><><EFBFBD><E2AEA2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⮢ word ed_flags
;----------------------------------------------------------
edit_box.check_offset:
pushad
@@ -378,6 +378,31 @@ edit_ex
or word ed_flags,ed_offset_fl
edit_ex
align 4
proc edit_box_set_text, edit:dword, text:dword
pushad
mov edi,dword[edit]
mov ecx,ed_max
inc ecx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD><20><><EFBFBD><E0A5A7><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> ascii 0
mov edi,dword[text]
xor al,al
cld
repne scasb ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD> edi ᨬ<><E1A8AC><EFBFBD><EFBFBD> al
mov ecx,edi ;ecx = text + <20><><EFBFBD>. <20><><EFBFBD><EFBFBD><E7A5AD> <20><>: 1) ed_max <20><><EFBFBD> 2) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> text
mov edi,dword[edit]
mov esi,dword[text]
sub ecx,esi ;ecx = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> text (<28><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 祬 ed_max)
dec ecx
mov ed_size,ecx ;<3B><EFBFBD><E2A0A2> <20><><EFBFBD><EFBFBD><EFBFBD><><E0A0A7><EFBFBD> <20><><EFBFBD>
mov ed_pos,ecx ;<3B><EFBFBD><E2A0A2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>
mov edi,ed_text
repne movsb ;<3B><><EFBFBD><EFBFBD><EFBFBD><E0AEA2><EFBFBD><EFBFBD><><EFBFBD><E2AEA2> <20><><EFBFBD> text <20> edit_box
mov byte[edi],0 ;<3B><EFBFBD><E2A0A2> ascii 0 <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>
popad
ret
endp
}
macro use_key_func