@@ -1,44 +1,23 @@
use32
org 0x0
db 'MENUET01' ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . <20> ᯮ<EFBFBD> <E1AFAE> 塞<EFBFBD> <EFA5AC> <EFBFBD> 䠩<> <E4A0A9> <20> ᥣ<EFBFBD> <E1A5A3> 8 <20> <> <EFBFBD> <EFBFBD>
dd 0x1
dd start
dd i_end ;ࠧ<> <E0A0A7> <EFBFBD> <20> ਫ<EFBFBD> <E0A8AB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
dd mem
dd stacktop
dd 0
dd sys_path
dd 1 , start , i_end , mem , stacktop , 0 , sys_path
include '../../../../programs/macros.inc'
include '../../../../programs/proc32.inc'
include '../../../../programs/develop/libraries/box_lib/load_lib.ma c'
include '../../../dll .inc'
include '../../../../programs/KOSfuncs.in c'
include '../../../../programs/load_img .inc'
include 'vox_draw.inc'
include 'vox_rotate.inc'
include 'str.inc'
@ use_library_mem mem.Alloc , mem.Free , mem.ReAlloc , dl l.Load
caption db 'Voxel editor 02 .02.15 ' , 0 ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struc t FileInfoBlock
Function dd ?
Position dd ?
Flags dd ?
Count dd ?
Buffer dd ?
db ?
FileName dd ?
ends
run_file_70 FileInfoBlock
image_data dd 0 ;㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> ६<EFBFBD> <E0A5AC> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> . <20> <> <EFBFBD> <20> 㦥<EFBFBD> <20> ८<EFBFBD> ࠧ<EFBFBD> <E0A0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
caption db 'Voxel editor 18 .02.16 ' , 0 ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
fn_toolbar db 'toolbar.png' , 0
IMAGE_TOOLBAR_ICON_SIZE equ 16 * 16 * 3
IMAGE_TOOLBAR_SIZE equ IMAGE_TOOLBAR_ICON_SIZE * 27
image_data_toolbar dd 0
cursors_count equ 4
IMAGE_CURSORS_SIZE equ 4096 * cursors_count ;ࠧ<> <E0A0A7> <EFBFBD> <20> <> <EFBFBD> ⨭<EFBFBD> <E2A8AD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ࠬ<EFBFBD>
;<3B> <> <EFBFBD> 祭<EFBFBD> <E7A5AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 㬮<> 砭<EFBFBD> <E7A0AD> , <20> <> <EFBFBD> ini 䠩<> <E4A0A9>
ini_def_window_t equ 10
@@ -65,45 +44,6 @@ key_t_size db 'tile_size',0
key_f_size db 'file_size' , 0
key_col_b db 'c_background' , 0
macro load_image_file path , buf , si ze { ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 㧪<EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
;path - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ६<EFBFBD> <E0A5AC> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> ப<EFBFBD> <E0AEAA> <EFBFBD> <EFBFBD> <20> <> ࠬ<EFBFBD> <E0A0AC>
if path eqtype '' ;<3B> <EFBFBD> <E0AEA2> 塞 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> ப<EFBFBD> <E0AEAA> <20> <> ࠬ<EFBFBD> <E0A0AC> <EFBFBD> path
jmp @ f
local .path_str
.path_str db path ;<3B> <> ନ<EFBFBD> 㥬 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ६<EFBFBD> <E0A5AC> <EFBFBD> <EFBFBD> <EFBFBD>
db 0
@ @ :
;32 - <20> ⠭<EFBFBD> <E2A0AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> <> <EFBFBD> ⥬<EFBFBD> <E2A5AC> <EFBFBD> <20> <> ⥬
copy_path .path_str ,[ 32 ], file_name , 0x0
else
copy_path path ,[ 32 ], file_name , 0x0 ;<3B> <> ନ<EFBFBD> 㥬 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> 䠩<> <E4A0A9> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> ࠧ㬥<E0A0A7> <E3ACA5> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <20> ணࠬ<E0AEA3> <E0A0AC> <EFBFBD>
end if
stdcall mem.Alloc , dword si ze ;<3B> 뤥<EFBFBD> 塞 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
mov [ buf ], eax
mov eax , 70 ;70-<2D> <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> ࠡ<> <E0A0A1> <EFBFBD> <20> 䠩<> <E4A0A9> <EFBFBD> <EFBFBD>
mov [ run_file_70.Function ], 0
mov [ run_file_70.Position ], 0
mov [ run_file_70.Flags ], 0
mov [ run_file_70.Count ], dword si ze
m2m [ run_file_70.Buffer ], [ buf ]
mov byte [ run_file_70 + 20 ], 0
mov [ run_file_70.FileName ], file_name
mov ebx , run_file_70
int 0x40 ;<3B> <> <EFBFBD> <EFBFBD> 㦠<EFBFBD> <E3A6A0> 䠩<> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
cmp ebx , 0xffffffff
je @ f
;<3B> <> ।<EFBFBD> <E0A5A4> 塞 <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD> <20> <20> <> ॢ<EFBFBD> <E0A5A2> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <20> ६<EFBFBD> <E0A5AC> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> image_data
stdcall dword [ img_decode ], dword [ buf ], ebx , 0
mov dword [ image_data ], eax
;<3B> ८<EFBFBD> ࠧ㥬 <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD> <20> <20> <> ଠ <EFBFBD> <E0ACA0> rgb
stdcall dword [ img_to_rgb2 ], dword [ image_data ], dword [ buf ]
;㤠<> 塞 <20> ६<EFBFBD> <E0A5AC> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> image_data
stdcall dword [ img_destroy ], dword [ image_data ]
@ @ :
}
OT_MAP_X equ 0
OT_MAP_Y equ 0
OT_CAPT_X_COLOR equ 5 ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 梥<> <E6A2A5>
@@ -113,17 +53,23 @@ PEN_MODE_CLEAR equ 0 ;०
PEN_MODE_SELECT_COLOR equ 2 ;० <> <E0A5A6> <20> 롮<EFBFBD> <EBA1AE> 梥<> <E6A2A5>
PEN_MODE_BRUSH equ 3 ;० <> <E0A5A6> ࠡ<> <E0A0A1> <EFBFBD> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
run_file_70 FileInfoBlock
align 4
start:
load_libraries l_libs_start , l_libs_end
;<3B> <EFBFBD> ઠ <20> <> <> 쪮 㤠筮 <20> <> <EFBFBD> 㧨<EFBFBD> <E3A7A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⥪<EFBFBD>
mov ebp , lib_2
;<3B> <EFBFBD> ઠ <20> <> <> 쪮 㤠筮 <20> <> <EFBFBD> 㧨<EFBFBD> <E3A7A8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⥪<EFBFBD>
mov ebp , lib_0
.test_lib_open:
cmp dword [ ebp + ll_struc_size - 4 ], 0
jz @ f
mcall - 1 ;exit not correct
mcall SF_TERMINATE_PROCESS ;exit not correct
@ @ :
mcall 48 , 3 , sc , si zeof.system_colors
mcall 40 , 0x27
add ebp , ll_struc_size
cmp ebp , l_libs_end
jl .test_lib_open
mcall SF_STYLE_SETTINGS , SS F_GET_COLORS , sc , si zeof.system_colors
mcall SF_SET_EVENTS_MASK , 0xC0000027
stdcall [ OpenDialog_Init ], OpenDialog_data ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> ⮢<EFBFBD> <E2AEA2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
;--- load ini file ---
@@ -172,11 +118,11 @@ start:
mov [ buf_pl.h ], eax
;*** <20> <> <EFBFBD> <EFBFBD> 㧪<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
load_image_file 'cursors_gr.png' , image_data_toolbar , IMAGE_CURSORS_SIZE
load_image_file 'cursors_gr.png' , image_data_toolbar
stdcall [ buf2d_create_f_img ], buf_curs_8 ,[ image_data_toolbar ] ;ᮧ<> <E1AEA7> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
stdcall mem.Free ,[ image_data_toolbar ] ;<3B> <EFBFBD> <E1A2AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
load_image_file 'cursors.png' , image_data_toolbar , IMAGE_CURSORS_SIZE
load_image_file 'cursors.png' , image_data_toolbar
stdcall [ buf2d_create_f_img ], buf_curs ,[ image_data_toolbar ] ;ᮧ<> <E1AEA7> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
stdcall mem.Free ,[ image_data_toolbar ] ;<3B> <EFBFBD> <E1A2AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
@@ -191,7 +137,7 @@ start:
stdcall [ buf2d_vox_brush_create ], buf_vox_g3 , vox_6_7_z
stdcall [ buf2d_vox_brush_create ], buf_vox_g2 , vox_6_4_z
load_image_file fn_toolbar , image_data_toolbar , IMAGE_TOOLBAR_SIZE
load_image_file fn_toolbar , image_data_toolbar
stdcall mem.Alloc ,[ max_open_file_size ]
mov dword [ open_file_vox ], eax
@@ -207,7 +153,7 @@ red_win:
align 4
still:
mcall 10
mcall SF_WAIT_EVENT
cmp al , 1
jz red_win
@@ -217,7 +163,7 @@ still:
jz button
cmp al , 6
jne @ f
mcall 9 , procinfo , - 1
mcall SF_THREAD_INFO , procinfo , - 1
cmp ax , word [ procinfo + 4 ]
jne @ f ;<3B> <> <EFBFBD> <EFBFBD> <20> <> <20> <> ⨢<EFBFBD> <E2A8A2>
call mouse
@@ -227,10 +173,10 @@ still:
align 4
mouse:
pushad
mcall 37 , 2
mcall SF_MOUSE_GET , SS F_BUTTON
bt eax , 1 ;right button
jnc @ f
mcall 37 , 1 ;get mouse coords
mcall SF_MOUSE_GET , SS F_WINDOW_POSITION
mov ebx , eax
shr ebx , 16
and eax , 0xffff
@@ -240,7 +186,7 @@ mouse:
@ @ :
bt eax , 0 ;left button
jnc .end_f
mcall 37 , 1 ;get mouse coords
mcall SF_MOUSE_GET , SS F_WINDOW_POSITION
mov ebx , eax
shr ebx , 16
and eax , 0xffff
@@ -352,7 +298,7 @@ mouse:
mov ecx , dword [ v_zoom ]
mov edi , eax
mov esi , ebx
mcall 66 , 3
mcall SF_KEYBOARD , SS F_GET_CONTROL_KEYS
and eax , 3 ;3 -> <20> <> <EFBFBD> 0 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Shift <20> <> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> 1 <20> ࠢ<EFBFBD> <E0A0A2> Shift <20> <> <EFBFBD> <EFBFBD> <EFBFBD>
jz .shift_end
;<3B> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Shift, <20> <> ।<> <E0A5A4> <EFBFBD> <EFBFBD> <EFBFBD> 㥬 <20> <> <20> <> <EFBFBD> 孥<EFBFBD> <20> <EFBFBD> <E0AEA2>
@@ -432,21 +378,16 @@ convert_y:
align 4
draw_window:
pushad
mcall 12 , 1
mcall SF_REDRAW , SS F_BEGIN_DRAW
; *** <20> <> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (<28> 믮<EFBFBD> <EBAFAE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1 ࠧ <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ᪥) ***
mov edx ,[ sc.work ]
or edx ,( 3 shl 24 ) + 0x30000000
mov edi , caption
mcall 0 , dword [ wnd_s_pos ], dword [ wnd_s_pos + 4 ]
mcall SF_CREATE_WINDOW , dword [ wnd_s_pos ], dword [ wnd_s_pos + 4 ]
; *** ᮧ<> <E1AEA7> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ***
mov eax , 8
mov ebx ,( 5 shl 16 ) + 20
mov ecx ,( 5 shl 16 ) + 20
mov edx , 3
mov esi ,[ sc.work_button ]
int 0x40
mcall SF_DEFINE_BUTTON ,( 5 shl 16 ) + 20 ,( 5 shl 16 ) + 20 , 3 ,[ sc.work_button ]
mov ebx ,( 30 shl 16 ) + 20
inc edx
@@ -528,11 +469,7 @@ pushad
int 0x40
; *** <20> <> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ***
mov eax , 7
mov ebx ,[ image_data_toolbar ]
mov ecx ,( 16 shl 16 ) + 16
mov edx ,( 7 shl 16 ) + 7 ;icon new
int 0x40
mcall SF_PUT_IMAGE ,[ image_data_toolbar ],( 16 shl 16 ) + 16 ,( 7 shl 16 ) + 7 ;icon new
add ebx , IMAGE_TOOLBAR_ICON_SIZE
add edx ,( 25 shl 16 ) ;icon open
@@ -618,7 +555,7 @@ pushad
call draw_objects
call draw_pok
mcall 12 , 2
mcall SF_REDRAW , SS F_END_DRAW
popad
ret
@@ -660,12 +597,10 @@ draw_pok:
stdcall str_cat , txt_brush.size , edi
stdcall str_cat , txt_brush.size , txt_space ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 騩 <20> <EFBFBD> <E0AEA1>
mov eax , 4 ;<3B> <> ᮢ<EFBFBD> <E1AEA2> <EFBFBD> <EFBFBD> ⥪<> <E2A5AA> <EFBFBD>
mov ebx ,( OT_CAPT_X_COLOR shl 16 ) + OT_CAPT_Y_COLOR + 2
mov ecx ,[ sc.work_text ]
or ecx , 0x80000000 ;or (1 shl 30)
mov edx , txt_color
int 0x40
mcall SF_DRAW_TEXT ,( OT_CAPT_X_COLOR shl 16 ) + OT_CAPT_Y_COLOR + 2
mov edx , txt_curor
add ebx , 115 shl 16
@@ -691,30 +626,26 @@ draw_pok:
align 4
on_change_color:
pushad
mov ebx ,(( OT_CAPT_X_COLOR + 35 ) shl 16 ) + 16 ;<3B> <> <20> <> <EFBFBD> x
mov ecx ,( OT_CAPT_Y_COLOR shl 16 ) + 12 ;<3B> <> <20> <> <EFBFBD> y
mov edx ,[ v_color ]
mcall 13
mcall SF_DRAW_RECT ,(( OT_CAPT_X_COLOR + 35 ) shl 16 ) + 16 ,( OT_CAPT_Y_COLOR shl 16 ) + 12 ,[ v_color ]
mov ebx ,( 1 shl 8 ) + ( 6 shl 16 )
mov ecx , edx
mov edx ,(( OT_CAPT_X_COLOR + 55 ) shl 16 ) + OT_CAPT_Y_COLOR + 2
mov esi ,[ sc.work_text ]
add esi ,( 1 shl 30 )
mov edi ,[ sc.work ]
mcall 47
mcall SF_DRAW_NUMBER ,( 1 shl 8 ) + ( 6 shl 16 )
popad
ret
align 4
key:
mcall 2
mcall SF_GET_KEY
jmp still
align 4
button:
mcall 17
mcall SF_GET_BUTTON
cmp ah , 3
jne @ f
call but_new_file
@@ -842,7 +773,7 @@ button:
stdcall [ buf2d_delete ], buf_curs_8
stdcall mem.Free ,[ image_data_toolbar ]
stdcall mem.Free ,[ open_file_vox ]
mcall - 1
mcall SF_TERMINATE_PROCESS
;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> 樠<EFBFBD> <E6A8A0> <EFBFBD> <EFBFBD> 樨 <20> <> <EFBFBD> ᥫ쭮<E1A5AB> <ECADAE> <20> <> ꥪ<EFBFBD> <EAA5AA>
align 4
@@ -864,7 +795,6 @@ endp
align 4
open_file_vox dd 0 ;㪠<> <E3AAA0> ⥫<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䠩<> <E4A0A9> <EFBFBD>
open_b rb 560
align 4
but_open_file:
@@ -876,16 +806,14 @@ but_open_file:
je .end_open_file
;<3B> <> <EFBFBD> <20> <> <EFBFBD> 㤠筮<E3A4A0> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ⨨ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
mov eax , 70 ;70-<2D> <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> ࠡ<> <E0A0A1> <EFBFBD> <20> 䠩<> <E4A0A9> <EFBFBD> <EFBFBD>
mov [ run_file_70.Function ], 5
mov [ run_file_70.Function ] , SS F_GET_INFO
mov [ run_file_70.Position ], 0
mov [ run_file_70.Flags ], 0
mov dword [ run_file_70.Count ], 0
mov dword [ run_file_70.Buffer ], open_b
mov byte [ run_file_70 + 20 ], 0
mov dword [ run_file_70.FileName ], openfile_path
mov ebx , run_file_70
int 0x40
mcall SF_FILE , run_file_70
mov ecx , dword [ open_b + 32 ] ;+32 qword: ࠧ<> <E0A0A7> <EFBFBD> 䠩<> <E4A0A9> <20> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
cmp ecx ,[ max_open_file_size ] ;<3B> <EFBFBD> <E0AEA2> 塞 ࠧ<> <E0A0A7> <EFBFBD> <20> 뤥<EFBFBD> <EBA4A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
@@ -896,23 +824,20 @@ but_open_file:
notify_window_run txt_need_memory
@ @ :
mov eax , 70 ;70-<2D> <20> 㭪<EFBFBD> <E3ADAA> <EFBFBD> ࠡ<> <E0A0A1> <EFBFBD> <20> 䠩<> <E4A0A9> <EFBFBD> <EFBFBD>
mov [ run_file_70.Function ], 0
mov [ run_file_70.Function ], SS F_READ_FILE
mov [ run_file_70.Position ], 0
mov [ run_file_70.Flags ], 0
mov dword [ run_file_70.Count ], ecx
m2m dword [ run_file_70.Buffer ], dword [ open_file_vox ]
mov byte [ run_file_70 + 20 ], 0
mov dword [ run_file_70.FileName ], openfile_path
mov ebx , run_file_70
int 0x40 ;<3B> <> <EFBFBD> <EFBFBD> 㦠<EFBFBD> <E3A6A0> 䠩<> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
mcall SF_FILE , run_file_70
cmp ebx , 0xffffffff
je .end_open_file
mcall 71 , 1 , openfile_path
mcall SF_SET_CAPTION , 1 , openfile_path
;---
;
mov eax ,[ open_file_vox ]
movzx eax , byte [ eax ]
and eax , 0xff ;<3B> <> ६ <20> <> <EFBFBD> <EFBFBD> ⠡ <20> <> 㬮<> 砭<EFBFBD> <E7A0AD>
@@ -941,14 +866,14 @@ but_save_file:
stdcall buf2d_vox_obj_get_size , ebx
mov dword [ run_file_70.Count ], eax ;ࠧ<> <E0A0A7> <EFBFBD> 䠩<> <E4A0A9>
mov [ run_file_70.Function ], 2
mov [ run_file_70.Function ], SS F_CREATE_FILE
mov [ run_file_70.Position ], 0
mov [ run_file_70.Flags ], 0
mov ebx , dword [ open_file_vox ]
mov [ run_file_70.Buffer ], ebx
mov byte [ run_file_70 + 20 ], 0
mov dword [ run_file_70.FileName ], openfile_path
mcall 70 , run_file_70 ;<3B> <> <EFBFBD> <EFBFBD> 㦠<EFBFBD> <E3A6A0> 䠩<> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
mcall SF_FILE , run_file_70 ;<3B> <> <EFBFBD> <EFBFBD> 㦠<EFBFBD> <E3A6A0> 䠩<> <20> <> <EFBFBD> <EFBFBD> ࠦ<EFBFBD> <E0A0A6> <EFBFBD> <EFBFBD>
cmp ebx , 0xffffffff
je .end_save_file
@@ -1743,12 +1668,12 @@ proc set_pen_mode uses eax ebx ecx edx, mode:dword, icon:dword, hot_p:dword
mov ecx ,[ icon ]
shl ecx , 12 ;㬭<> <E3ACAD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> 4 <20> <>
add ecx ,[ buf_curs.data ]
mcall 37 , 4
mcall SF_MOUSE_GET , SS F_LOAD_CURSOR
cmp eax , 0
je @ f
mov [ cursor_pointer ], eax
mcall 37 , 5 ,[ cursor_pointer ]
mcall SF_MOUSE_GET , SS F_SET_CURSOR ,[ cursor_pointer ]
@ @ :
ret
endp
@@ -1817,9 +1742,9 @@ err_msg_found_lib_3 db '
err_msg_import_3 db '<27> 訡<EFBFBD> <E8A8A1> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⥪<EFBFBD> ' , 39 , 'libini' , 39 , 0
l_libs_start:
lib0 l_libs lib_name_0 , sys_path , file_name , system_dir_0 , \
lib_ 0 l_libs lib_name_0 , sys_path , file_name , system_dir_0 , \
err_message_found_lib_0 , head_f_l , proclib_import , err_message_import_0 , head_f_i
lib1 l_libs lib_name_1 , sys_path , file_name , system_dir_1 , \
lib_ 1 l_libs lib_name_1 , sys_path , file_name , system_dir_1 , \
err_message_found_lib_1 , head_f_l , import_libimg , err_message_import_1 , head_f_i
lib_2 l_libs lib_name_2 , sys_path , library_path , system_dir_2 , \
err_msg_found_lib_2 , head_f_l , import_buf2d , err_msg_import_2 , head_f_i
@@ -2075,7 +2000,8 @@ align 16
i_end:
wnd_s_pos: ;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ⮢<EFBFBD> <E2AEA2> <20> <> <EFBFBD> <EFBFBD> 樨 <20> <> <EFBFBD> <EFBFBD>
rq 0
rb 4096 ;2048
rb 4096
align 16
stacktop:
sys_path rb 1024
file_name: