Update libraries for new fonts

git-svn-id: svn://kolibrios.org@5692 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Kirill Lipatov (Leency) 2015-08-07 09:51:01 +00:00
parent 1883cc1ab5
commit ece7ffbd2b
3 changed files with 67 additions and 124 deletions

View File

@ -8,26 +8,24 @@ macro use_editbox_draw
edit_box: edit_box:
.draw: .draw:
pushad pushad
.draw_1: .draw_1:
;--- à¨á㥬 à ¬ªã --- ;--- à¨á㥬 à ¬ªã ---
mov edi,dword [esp+36] mov edi,dword [esp+36]
call .draw_border ; ”ã­ªæ¨ï áâ ¡¨«ì­  call .draw_border
.draw_bg_cursor_text: .draw_bg_cursor_text:
;--- ¨§¬¥­ï¥¬ ᬥ饭¨¥, ¥á«¨ ­ ¤® --- ;--- ¨§¬¥­ï¥¬ ᬥ饭¨¥, ¥á«¨ ­ ¤® ---
call .check_offset ;¢ëç¨á«¥­¨¥ ¯®§¨æ¨¨ ªãàá®à  áâ ¡¨«ì­  call .check_offset
;--- à¨á㥬 ¢­ãâ७­îî ®¡« áâì --- ;--- à¨á㥬 ¢­ãâ७­îî ®¡« áâì ---
call .draw_bg ;­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª à ¡®ç¥© ®¡« á⨠call .draw_bg
;---- à¨á㥬 ¢ë¤¥«¥­¨¥, ¯® shift ¥á«¨ ¥áâì ;--- à¨á㥬 ¢ë¤¥«¥­¨¥, ¯® shift ¥á«¨ ¥áâì ---
call .draw_shift call .draw_shift
.draw_cursor_text: .draw_cursor_text:
;--- à¨á㥬 ªãàá®à ---
;--- ¬®¦¥â ¥£® ­¥ ­ ¤® à¨á®¢ âì ----
test word ed_flags,ed_focus
jz @f
call .draw_cursor
@@:
call .draw_text call .draw_text
; ret ;--- à¨á㥬 ªãàá®à ---
;--- ¬®¦¥â ¥£® ­¥ ­ ¤® à¨á®¢ âì ---
test word ed_flags,ed_focus
jz .editbox_exit
call .draw_cursor
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Ž¡é¨© ¢ë室 ¨§ editbox ¤«ï ¢á¥å ä㭪権 ¨ ¯®áâ ®¡à ¡®â稪®¢;; ;Ž¡é¨© ¢ë室 ¨§ editbox ¤«ï ¢á¥å ä㭪権 ¨ ¯®áâ ®¡à ¡®â稪®¢;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -194,13 +192,13 @@ macro use_general_func
{ {
;debug_func ;debug_func
;---------------------------------------------------------- ;----------------------------------------------------------
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ¢ë¤¥«¥­­®© ç á⨠----------------- ;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ¢ë¤¥«¥­­®© ç á⨠----------------
;---------------------------------------------------------- ;----------------------------------------------------------
edit_box.draw_shift: edit_box.draw_shift:
test word ed_flags,ed_shift_bac ;ãáâ ­®¢ª  ä« £ , ¢ë¤¥«¥­­®© ®¡« á⨠test word ed_flags,ed_shift_bac ;ãáâ ­®¢ª  ä« £ , ¢ë¤¥«¥­­®© ®¡« áâ¨
jz @f jz @f
mov ebp,shift_color mov ebp,shift_color
mov ebx,dword ed_shift_pos mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_ call edit_box_key.sh_cl_
@@: ret @@: ret
;---------------------------------------------------------- ;----------------------------------------------------------
@ -208,14 +206,13 @@ edit_box.draw_shift:
;---------------------------------------------------------- ;----------------------------------------------------------
edit_box.draw_text: edit_box.draw_text:
;--- ¢ëç¨á«ï¥¬, ᪮«ìª® ¯®¬¥é ¥âáï ᨬ¢®«®¢ --- ;--- ¢ëç¨á«ï¥¬, ᪮«ìª® ¯®¬¥é ¥âáï ᨬ¢®«®¢ ---
;--- çâ®¡ë ¬ãá®à ­¥ à¨á®¢ âì ---
call edit_box.get_n call edit_box.get_n
mov esi,ed_size mov esi,ed_size
mov ebx,ed_offset mov ebx,ed_offset
sub esi,ebx sub esi,ebx
cmp eax,esi cmp eax,esi
jae @F jae @F
mov esi,eax ;çâ®¡ë ­¥ ¢ë室¨âì §  ¯à¥¤¥«ë íªà ­  mov esi,eax
;--- à¨á㥬 ⥪áâ --- ;--- à¨á㥬 ⥪áâ ---
@@: mov eax,4 @@: mov eax,4
mov ebx,ed_left mov ebx,ed_left
@ -226,17 +223,11 @@ edit_box.draw_text:
mov ecx,ed_text_color mov ecx,ed_text_color
add ebx,4 add ebx,4
add edx,ed_text add edx,ed_text
test word ed_flags,ed_pass test word ed_flags,ed_pass
jz @f jnz edit_box.draw_password
call edit_box.draw_password
jmp .end_f
@@:
mcall mcall
.end_f: ret
ret
txt_pass db '*',0 txt_pass db '*',0
proc edit_box.draw_password proc edit_box.draw_password
locals locals
s_len dw ? ;¤«¨­  ¢ë¢®¤¨¬®£® ⥪áâ  s_len dw ? ;¤«¨­  ¢ë¢®¤¨¬®£® ⥪áâ 
@ -254,7 +245,7 @@ endl
cmp word[s_len],0 cmp word[s_len],0
jg @b jg @b
.end_f: .end_f:
ret ret
endp endp
;---------------------------------------------------------- ;----------------------------------------------------------
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ä®­  ---------------------------- ;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ä®­  ----------------------------
@ -458,10 +449,11 @@ macro use_key_func
{ {
;Ž¡à ¡®âª  Shift ¤«ï á­ïâ¨ï ¢ë¤¥«¥­¨ï ­¥¨§¢¥áâ­®© ®¡« á⨠;Ž¡à ¡®âª  Shift ¤«ï á­ïâ¨ï ¢ë¤¥«¥­¨ï ­¥¨§¢¥áâ­®© ®¡« áâ¨
edit_box_key.shift: ;;;;;;;SHIFT edit_box_key.shift: ;;;;;;;SHIFT
call edit_box.draw_bg
test word ed_flags,ed_shift test word ed_flags,ed_shift
je edit_box_key.f_exit je edit_box_key.f_exit
@@: mov ebp,shift_color mov ebp,shift_color
or word ed_flags,ed_shift_bac ;ãáâ ­®¢ª  ä« £ , ¢ë¤¥«¥­­®© ®¡« á⨠or word ed_flags,ed_shift_bac ;ãáâ ­®¢ª  ä« £ , ¢ë¤¥«¥­­®© ®¡« áâ¨
mov ebx,dword ed_shift_pos mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_ call edit_box_key.sh_cl_
@ -592,6 +584,7 @@ edit_box_key.sh_st_of:
jne @f jne @f
test word ed_flags,ed_shift_bac test word ed_flags,ed_shift_bac
je @f je @f
call edit_box.draw_bg
mov ebp,ed_color mov ebp,ed_color
mov ebx,dword ed_shift_pos mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_ ;®ç¨á⪠ ¢ë¤¥«¥­®£® äà £¬¥­â  call edit_box_key.sh_cl_ ;®ç¨á⪠ ¢ë¤¥«¥­®£® äà £¬¥­â 
@ -1047,6 +1040,8 @@ edit_box_key.left:
or word ed_flags,ed_left_fl or word ed_flags,ed_left_fl
call edit_box_key.sh_first_sh call edit_box_key.sh_first_sh
dec dword ed_pos dec dword ed_pos
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_enable call edit_box_key.sh_enable
jmp edit_box.draw_cursor_text jmp edit_box.draw_cursor_text
;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -1058,6 +1053,8 @@ edit_box_key.right:
and word ed_flags,ed_right_fl and word ed_flags,ed_right_fl
call edit_box_key.sh_first_sh call edit_box_key.sh_first_sh
inc dword ed_pos inc dword ed_pos
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_enable call edit_box_key.sh_enable
jmp edit_box.draw_cursor_text jmp edit_box.draw_cursor_text
;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -1068,6 +1065,8 @@ edit_box_key.home:
call edit_box_key.sh_first_sh call edit_box_key.sh_first_sh
xor eax,eax xor eax,eax
mov ed_pos,eax mov ed_pos,eax
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_home_end call edit_box_key.sh_home_end
jmp edit_box.draw_cursor_text jmp edit_box.draw_cursor_text
;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -1078,6 +1077,8 @@ edit_box_key.end:
call edit_box_key.sh_first_sh call edit_box_key.sh_first_sh
mov eax,ed_size mov eax,ed_size
mov ed_pos,eax mov ed_pos,eax
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_home_end call edit_box_key.sh_home_end
jmp edit_box.draw_cursor_text jmp edit_box.draw_cursor_text
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------
@ -1194,6 +1195,10 @@ macro use_mouse_func
;--- Ž¡à ¡®âª  .mouse_wigwag ;--- Ž¡à ¡®âª  .mouse_wigwag
;---------------------------------------------------------- ;----------------------------------------------------------
edit_box_mouse.mouse_wigwag: edit_box_mouse.mouse_wigwag:
push eax
call edit_box.draw_bg
call edit_box.draw_shift
pop eax
shr eax,16 shr eax,16
or word ed_flags,ed_shift_bac+ed_shift_on+ed_shift or word ed_flags,ed_shift_bac+ed_shift_on+ed_shift
;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;
@ -1258,8 +1263,6 @@ edit_box_mouse.m1_shem:
edit_box_mouse.mwigvag: edit_box_mouse.mwigvag:
and word ed_flags,ed_shift_mcl and word ed_flags,ed_shift_mcl
jmp edit_box.draw_cursor_text jmp edit_box.draw_cursor_text
; popa
; ret
edit_box_mouse.mleft: edit_box_mouse.mleft:
mov eax,ed_pos mov eax,ed_pos
cmp eax,0 cmp eax,0
@ -1347,26 +1350,20 @@ edit_box_mouse._mshift:
@@: @@:
test word ed_flags,ed_mouse_on test word ed_flags,ed_mouse_on
jne @f jne @f
mov dword ed_shift_pos,eax mov dword ed_shift_pos,eax
or word ed_flags,ed_mouse_on or word ed_flags,ed_mouse_on
mov dword ed_pos,eax mov dword ed_pos,eax
; mov dword [mouse_flag],edi ;ãáâ ­®¢¨¬ ¨¤¥­â¨ä¨ª â®à
mov ebx,dword ed_mouse_variable mov ebx,dword ed_mouse_variable
push edi push edi
pop dword [ebx] pop dword [ebx]
bts word ed_flags,1 ;ãáâ ­®¢ª  䮪ãá  bts word ed_flags,1 ;ãáâ ­®¢ª  䮪ãá 
call edit_box.draw_bg
jmp edit_box_mouse.m_sh jmp edit_box_mouse.m_sh
@@: @@:
cmp eax,dword ed_shift_pos ;¥á«¨ ¯®§¨æ¨¨ ­¥ ¨§¬¥­¨«¨áì cmp eax,dword ed_shift_pos ;¥á«¨ ¯®§¨æ¨¨ ­¥ ¨§¬¥­¨«¨áì
je edit_box.editbox_exit je edit_box.editbox_exit
mov ed_pos,eax mov ed_pos,eax
call edit_box.draw_bg
mov ebp,dword shift_color mov ebp,dword shift_color
mov ebx,dword ed_shift_pos mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_ call edit_box_key.sh_cl_

View File

@ -187,7 +187,6 @@ fb_draw_panel_selection:
mov fb_start_draw_cursor_line,cx mov fb_start_draw_cursor_line,cx
mov ebx,fb_size_x mov ebx,fb_size_x
add cx,fb_start_y add cx,fb_start_y
;.1:
shl ecx,16 shl ecx,16
mov cx,fb_line_size_y mov cx,fb_line_size_y
mov edx,fb_select_color mov edx,fb_select_color
@ -209,7 +208,6 @@ fb_draw_panel_selection:
ret ret
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
fb_for_all_panel_selection: fb_for_all_panel_selection:
; dec eax
xor edx,edx xor edx,edx
mov dx,fb_line_size_y mov dx,fb_line_size_y
imul eax,edx imul eax,edx
@ -258,7 +256,6 @@ fb_draw_folder_data:
div ebx div ebx
cmp eax,fb_folder_block cmp eax,fb_folder_block
je .end_1 je .end_1
;.continue_1:
popa popa
cmp eax,fb_max_panel_line cmp eax,fb_max_panel_line
je .end_2 je .end_2
@ -302,11 +299,10 @@ fb_draw_folder_data:
mov ecx,fb_text_color mov ecx,fb_text_color
cmp fb_marked_file,0 cmp fb_marked_file,0
je @f je @f
mov ecx,fb_reduct_text_color ;0xff0000 mov ecx,fb_reduct_text_color
@@: @@:
mov ax,fb_line_size_y mov ax,fb_line_size_y
sub ax,fb_font_size_y sub ax,fb_font_size_y
push ebx push ebx
mov bx,ax mov bx,ax
shr ax,1 shr ax,1
@ -315,10 +311,11 @@ fb_draw_folder_data:
inc ax inc ax
@@: @@:
pop ebx pop ebx
push ebx push ebx
add bx,ax add bx,ax
call .draw_name_temp_area call .draw_name_temp_area
cmp fb_temp_counter,0
jz .continue
xor eax,eax xor eax,eax
mov ax,fb_font_size_x mov ax,fb_font_size_x
imul eax,fb_display_name_max_length imul eax,fb_display_name_max_length
@ -326,40 +323,9 @@ fb_draw_folder_data:
push edx push edx
add ebx,eax add ebx,eax
mov esi,2 mov esi,2
mov ecx,fb_reduct_text_color ;0xff0000 mov ecx,fb_reduct_text_color
mov edx,dword fb_truncated_filename_char mov edx,dword fb_truncated_filename_char
cmp fb_temp_counter,0
jne @f
mov edx,dword fb_truncated_filename_clear
mov ecx,fb_text_color
@@:
push edi
and ecx,0x30ffffff
add ecx,0x40000000
mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1
jne @f
mov eax,fb_select_color
@@:
mov edi,eax
mcall 4 mcall 4
pop edi
cmp fb_temp_counter,0
je .continue_1
push edi
mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1
jne @f
mov eax,fb_select_color
@@:
mov edi,eax
add ebx,1 shl 16
mcall 4
pop edi
.continue_1:
pop edx pop edx
.continue: .continue:
pop ebx pop ebx
@ -371,42 +337,41 @@ fb_draw_folder_data:
;-------------------------------------- ;--------------------------------------
.draw_name_temp_area: .draw_name_temp_area:
pusha pusha
mov ebx,esi mov eax,fb_max_name_temp_size
mov eax,dword ' ' add eax,2
mov ecx,256/4 sub eax,esi
cld mov ecx,esi
push edi
mov edi,fb_name_temp_area
rep stosd
pop edi
mov esi,edx mov esi,edx
mov ecx,ebx
cld
mov edi,fb_name_temp_area mov edi,fb_name_temp_area
cld
jcxz @f
rep movsb rep movsb
cmp byte [edi-1],0
jnz @f
dec edi
inc eax
@@:
mov ecx,eax
shr ecx,2
mov eax,dword ' '
rep stosd
popa popa
pusha pusha
mov edx,fb_name_temp_area mov edx,fb_name_temp_area
cmp fb_all_redraw,2 cmp fb_all_redraw,2
jne .draw_name_temp_area_1 jne @f
mov esi,fb_max_name_temp_size mov esi,fb_max_name_temp_size
and ecx,0xffffff add esi,2
add ecx,0x40000000 @@:
bts ecx,30
mov eax,fb_background_color mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1 cmp fb_draw_panel_selection_flag,1
jne @f jne @f
mov eax,fb_select_color mov eax,fb_select_color
@@: @@:
mov edi,eax mov edi,eax
.draw_name_temp_area_1:
mcall 4 mcall 4
popa popa
ret ret
;-------------------------------------- ;--------------------------------------
.end_1: .end_1:
@ -414,7 +379,6 @@ fb_draw_folder_data:
.end_2: .end_2:
cmp fb_all_redraw,1 cmp fb_all_redraw,1
jne @f jne @f
mov ax,fb_start_y mov ax,fb_start_y
add ax,fb_size_y add ax,fb_size_y
mov cx,bx mov cx,bx
@ -433,9 +397,6 @@ fb_draw_folder_data:
mov edx,fb_background_color ;0xffffff mov edx,fb_background_color ;0xffffff
mcall 13 mcall 13
@@: @@:
.end:
; mov fb_draw_scroll_bar,dword 1
ret ret
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
fb_clear_line: fb_clear_line:
@ -443,7 +404,6 @@ fb_clear_line:
pusha pusha
shl ebx,16 shl ebx,16
shr ebx,16 shr ebx,16
; dec ebx
cmp fb_select_panel_counter,0 cmp fb_select_panel_counter,0
je .continue je .continue
mov ax,fb_start_draw_cursor_line mov ax,fb_start_draw_cursor_line
@ -459,7 +419,6 @@ fb_clear_line:
je .end je .end
mov ebx,[esp+16] mov ebx,[esp+16]
mov cx,bx mov cx,bx
; dec cx
rol ecx,16 rol ecx,16
mov cx,fb_line_size_y mov cx,fb_line_size_y
mov bx,fb_size_x mov bx,fb_size_x
@ -484,8 +443,8 @@ fb_draw_type_size_date:
mov fb_extension_size,0 mov fb_extension_size,0
jmp .start jmp .start
.copy_type: .copy_type:
mov [eax],dword ' ' mov [eax],dword ' '
mov [eax+4],word ' ' mov [eax+4],word ' '
.start: .start:
mov esi,edx mov esi,edx
xor eax,eax xor eax,eax
@ -499,7 +458,6 @@ fb_draw_type_size_date:
mov fb_temp_counter,esi mov fb_temp_counter,esi
test [edx-40],byte 0x10 test [edx-40],byte 0x10
jnz .size jnz .size
;@@:
dec esi dec esi
dec edx dec edx
@@: @@:
@ -583,7 +541,6 @@ fb_draw_type_size_date:
jmp .call_decimal_string jmp .call_decimal_string
@@: @@:
mov eax,ebx mov eax,ebx
;.size_convert:
mov ebx,fb_type_table mov ebx,fb_type_table
add ebx,6 add ebx,6
call fb_decimal_string_4 call fb_decimal_string_4
@ -638,14 +595,12 @@ fb_draw_type_size_date:
mov ecx,fb_text_color mov ecx,fb_text_color
cmp fb_marked_file,0 cmp fb_marked_file,0
je @f je @f
mov ecx,fb_reduct_text_color ;0xff0000 mov ecx,fb_reduct_text_color
@@: @@:
mov edx,fb_type_table mov edx,fb_type_table
mov esi,20 mov esi,20
mov ax,fb_line_size_y mov ax,fb_line_size_y
sub ax,fb_font_size_y sub ax,fb_font_size_y
push ebx push ebx
mov bx,ax mov bx,ax
shr ax,1 shr ax,1
@ -655,18 +610,13 @@ fb_draw_type_size_date:
@@: @@:
pop ebx pop ebx
add bx,ax add bx,ax
cmp fb_all_redraw,2 bts ecx,30
jne .draw ;@f
and ecx,0xffffff
add ecx,0x40000000
mov eax,fb_background_color mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1 cmp fb_draw_panel_selection_flag,1
jne @f jne @f
mov eax,fb_select_color mov eax,fb_select_color
@@: @@:
mov edi,eax mov edi,eax
.draw:
mcall 4 mcall 4
popa popa
ret ret
@ -687,9 +637,7 @@ fb_draw_icon:
@@: @@:
test [edx-40],byte 0x10 test [edx-40],byte 0x10
jnz .draw_dir_pic jnz .draw_dir_pic
call fb_get_icon_number call fb_get_icon_number
; mov ebx,2
imul ebx,eax ;16*16*3 imul ebx,eax ;16*16*3
jmp .draw jmp .draw
.draw_dir_pic: .draw_dir_pic:
@ -702,22 +650,17 @@ fb_draw_icon:
mov cx,fb_icon_size_x mov cx,fb_icon_size_x
shl ecx,16 shl ecx,16
mov cx,fb_icon_size_y mov cx,fb_icon_size_y
mov edx,[esp+16] mov edx,[esp+16]
ror edx,16 ror edx,16
sub edx,2 sub edx,2
sub dx,fb_icon_size_x sub dx,fb_icon_size_x
rol edx,16 rol edx,16
mov ax,fb_line_size_y mov ax,fb_line_size_y
sub ax,fb_icon_size_y sub ax,fb_icon_size_y
shr ax,1 shr ax,1
add dx,ax add dx,ax
mov esi,fb_resolution_raw mov esi,fb_resolution_raw
xor ebp,ebp xor ebp,ebp
push edi push edi
mov edi,fb_palette_raw mov edi,fb_palette_raw
mcall 65 mcall 65
@ -926,8 +869,6 @@ fb_char_todown:
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
fb_truncated_filename_char: fb_truncated_filename_char:
db '..' db '..'
fb_truncated_filename_clear:
db ' '
;--------------------------------------------------------------------- ;---------------------------------------------------------------------
;***************************************************************************** ;*****************************************************************************
;***************************************************************************** ;*****************************************************************************

View File

@ -160,12 +160,17 @@ m_get_mouse_flag equ [edi+116]
cmp ebp,m_cursor cmp ebp,m_cursor
jne .no_active_text jne .no_active_text
mov ecx,m_frnt_text_col mov ecx,m_frnt_text_col
mov eax,m_menu_sel_col
jmp .active_text jmp .active_text
.no_active_text: .no_active_text:
mov ecx,m_bckg_text_col mov ecx,m_bckg_text_col
mov eax,m_menu_col
.active_text: .active_text:
add ecx,0x80000000 add ecx,0xC0000000
push edi
mov edi,eax
mcall 4 mcall 4
pop edi
call .get_next_text call .get_next_text
inc ebp inc ebp
add ebx,m_interval add ebx,m_interval