1,5 → 1,5 |
use32 |
org 0x0 |
org 0 |
db 'MENUET01' ;¨¤¥â¨ä. ¨á¯®«ï¥¬®£® ä ©« ¢á¥£¤ 8 ¡ ©â |
dd 1, start, i_end, mem, stacktop, file_name, sys_path |
|
16,6 → 16,7 |
include 'info_fun_float.inc' |
include 'info_menu.inc' |
include 'data.inc' |
include 'convert_stl_3ds.inc' |
|
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load |
|
70,8 → 71,8 |
mov edi,openfile_path |
@@: |
lodsd |
cmp eax,0 |
je @f ;¢ë室, ¥á«¨ 0 |
or eax,eax |
jz @f ;¢ë室, ¥á«¨ 0 |
stosd |
jmp @b |
@@: |
137,9 → 138,9 |
stdcall [ksubmenu_add], [main_menu], eax |
|
mov dword[w_scr_t1.type],1 |
stdcall dword[tl_data_init], tree1 |
stdcall [tl_data_init], tree1 |
;á¨áâ¥¬ë¥ ¨ª®ª¨ 16*16 ¤«ï tree_list |
load_image_file 'tl_sys_16.png', icon_tl_sys |
include_image_file 'tl_sys_16.png', icon_tl_sys |
;¥á«¨ ¨§®¡à ¦¥¨¥ ¥ ®âªàë«®áì, â® ¢ icon_tl_sys ¡ã¤ãâ |
;¥ ¨¨æ¨ «¨§¨à®¢ ë¥ ¤ ë¥, ® ®è¨¡ª¨ ¥ ¡ã¤¥â, â. ª. ¡ãä¥à 㦮£® à §¬¥à |
mov eax,dword[icon_tl_sys] |
256,8 → 257,8 |
@@: |
sub ebx,eax |
mcall SF_WAIT_EVENT_TIMEOUT |
cmp eax,0 |
je timer_funct |
or eax,eax |
jz timer_funct |
|
cmp al,1 |
jne @f |
443,7 → 444,7 |
int 0x40 |
|
mov dword[w_scr_t1.all_redraw],1 |
stdcall [tl_draw],dword tree1 |
stdcall [tl_draw], tree1 |
|
stdcall [buf2d_draw], buf_0 |
|
568,7 → 569,17 |
init_tree: |
stdcall [tl_info_clear], tree1 ;®ç¨á⪠ᯨ᪠®¡ê¥ªâ®¢ |
|
mov esi,dword[open_file_data] |
mov esi,[open_file_data] |
stdcall convert_stl_3ds, esi,[open_file_size] ;¯à®¢¥à塞 ä ©« ä®à¬ â *.stl ? |
or eax,eax |
jz @f |
;¥á«¨ ä ©« ¢ ä®à¬ ⥠*.stl |
mov [open_file_size],ecx |
mov esi,eax |
stdcall mem.Free,[open_file_data] |
mov [open_file_data],esi |
mov byte[can_save],1 |
@@: |
cmp word[esi],CHUNK_MAIN |
je @f |
stdcall buf_draw_beg, buf_0 |
583,8 → 594,8 |
stdcall add_3ds_object, ID_ICON_CHUNK_MAIN,0,dword[esi+2],0 |
call block_children ;¢å®¤ ¢ ¤®ç¥à¨© ¡«®ª |
|
mov edi,dword[file_3ds.offs] |
add edi,dword[file_3ds.size] |
mov edi,[file_3ds.offs] |
add edi,[file_3ds.size] |
.cycle_main: |
cmp dword[level_stack],0 |
jle .end_cycle |
592,7 → 603,7 |
cmp esi,edi ;¥á«¨ ª®¥æ ä ©« |
jge .end_cycle |
|
mov edx,dword[esi+2] ;à §¬¥à ¡«®ª |
mov edx,[esi+2] ;à §¬¥à ¡«®ª |
call block_analiz |
cmp dword[bl_found],0 |
jne @f |
756,9 → 767,9 |
mov dword[level_stack],FILE_ERROR_CHUNK_SIZE |
jmp .end_f |
@@: |
mov dword[eax],esi ;㪠§ ⥫ì ç «® ¡«®ª |
mov ebx,dword[esi+2] |
mov dword[eax+4],ebx ;à §¬¥à ¡«®ª |
mov [eax],esi ;㪠§ ⥫ì ç «® ¡«®ª |
mov ebx,[esi+2] |
mov [eax+4],ebx ;à §¬¥à ¡«®ª |
add esi,6 ;¯¥à¥å®¤¨¬ ª ¤ ë¬ ¡«®ª |
inc dword[level_stack] |
add eax,8 |
815,8 → 826,10 |
|
;input: |
; esi - 㪠§ â¥«ì «¨§¨àã¥¬ë¥ ¤ ë¥ |
; icon - ®¬¥à ¨ª®ª¨ |
; level - ã஢¥ì ¢«®¦¥®á⨠㧫 |
; size_bl - à §¬¥à ¡«®ª |
; info_bl - áâப á ®¯¨á ¨¥¬ ¡«®ª |
align 4 |
proc add_3ds_object, icon:dword,level:dword,size_bl:dword,info_bl:dword |
pushad |
830,8 → 843,8 |
mov ecx,dword[size_bl] |
mov dword[buffer+4],ecx ;à §¬¥à ¡«®ª (¨á¯®«ì§ã¥âáï ¢ äãªæ¨¨ buf_draw_hex_table ¤«ï à¨á®¢ ¨ï «¨¨¨) |
mov ecx,dword[bl_found] |
cmp ecx,0 |
je @f |
or ecx,ecx |
jz @f |
;... §¤¥áì 㦥 ¤à㣮© «£®à¨â¬ § é¨âë ®â 㤠«¥¨ï |
mov cl,byte[ecx+4] |
@@: |
842,8 → 855,8 |
mov dword[buffer+list_offs_p_data],ecx |
stdcall hex_in_str, buffer+list_offs_text,dword[esi+1],2 |
stdcall hex_in_str, buffer+list_offs_text+2,dword[esi],2 ;ª®¤ 3ds ¡«®ª |
cmp ecx,0 |
jne @f |
or ecx,ecx |
jnz @f |
mov byte[buffer+list_offs_text+4],0 ;0 - ᨬ¢®« ª®æ áâப¨ |
jmp .no_capt |
@@: |
880,7 → 893,7 |
|
align 4 |
.str: |
mov ecx,0x0a |
mov ecx,10 |
cmp eax,ecx |
jb @f |
xor edx,edx |
1023,6 → 1036,7 |
dd Filter.end - Filter.1 |
.1: |
db '3DS',0 |
db 'STL',0 |
db 'PNG',0 |
.end: |
db 0 |
1046,38 → 1060,38 |
|
if lang eq ru |
head_f_i: |
head_f_l db '¨á⥬ ï ®è¨¡ª ',0 |
err_msg_found_lib_0 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'proc_lib.obj',39,0 |
err_msg_import_0 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'proc_lib.obj',39,0 |
err_msg_found_lib_1 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'libimg.obj',39,0 |
err_msg_import_1 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'libimg.obj',39,0 |
err_msg_found_lib_2 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'box_lib.obj',39,0 |
err_msg_import_2 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'box_lib',39,0 |
err_msg_found_lib_3 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'buf2d.obj',39,0 |
err_msg_import_3 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'buf2d',39,0 |
err_msg_found_lib_4 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'kmenu.obj',39,0 |
err_msg_import_4 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'kmenu',39,0 |
err_msg_found_lib_5 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'tinygl.obj',39,0 |
err_msg_import_5 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'tinygl',39,0 |
err_msg_found_lib_6 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'libini.obj',39,0 |
err_msg_import_6 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'libini',39,0 |
head_f_l db '"¨á⥬ ï ®è¨¡ª ',0 |
err_msg_found_lib_0 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'proc_lib.obj',39,'" -tE',0 |
err_msg_import_0 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'proc_lib.obj',39,'" -tW',0 |
err_msg_found_lib_1 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'libimg.obj',39,'" -tE',0 |
err_msg_import_1 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'libimg.obj',39,'" -tW',0 |
err_msg_found_lib_2 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'box_lib.obj',39,'" -tE',0 |
err_msg_import_2 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'box_lib',39,'" -tW',0 |
err_msg_found_lib_3 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'buf2d.obj',39,'" -tE',0 |
err_msg_import_3 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'buf2d',39,'" -tW',0 |
err_msg_found_lib_4 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'kmenu.obj',39,'" -tE',0 |
err_msg_import_4 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'kmenu',39,'" -tW',0 |
err_msg_found_lib_5 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'tinygl.obj',39,'" -tE',0 |
err_msg_import_5 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'tinygl',39,'" -tW',0 |
err_msg_found_lib_6 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'libini.obj',39,'" -tE',0 |
err_msg_import_6 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'libini',39,'" -tW',0 |
else |
head_f_i: |
head_f_l db 'System error',0 |
err_msg_found_lib_0 db 'Sorry I cannot found library ',39,'proc_lib.obj',39,0 |
err_msg_import_0 db 'Error on load import library ',39,'proc_lib.obj',39,0 |
err_msg_found_lib_1 db 'Sorry I cannot found library ',39,'libimg.obj',39,0 |
err_msg_import_1 db 'Error on load import library ',39,'libimg.obj',39,0 |
err_msg_found_lib_2 db 'Sorry I cannot found library ',39,'box_lib.obj',39,0 |
err_msg_import_2 db 'Error on load import library ',39,'box_lib.obj',39,0 |
err_msg_found_lib_3 db 'Sorry I cannot found library ',39,'buf2d.obj',39,0 |
err_msg_import_3 db 'Error on load import library ',39,'buf2d.obj',39,0 |
err_msg_found_lib_4 db 'Sorry I cannot found library ',39,'kmenu.obj',39,0 |
err_msg_import_4 db 'Error on load import library ',39,'kmenu.obj',39,0 |
err_msg_found_lib_5 db 'Sorry I cannot found library ',39,'tinygl.obj',39,0 |
err_msg_import_5 db 'Error on load import library ',39,'tinygl',39,0 |
err_msg_found_lib_6 db 'Sorry I cannot found library ',39,'libini.obj',39,0 |
err_msg_import_6 db 'Error on load import library ',39,'libini',39,0 |
head_f_l db '"System error',0 |
err_msg_found_lib_0 db 'Sorry I cannot found library ',39,'proc_lib.obj',39,'" -tE',0 |
err_msg_import_0 db 'Error on load import library ',39,'proc_lib.obj',39,'" -tW',0 |
err_msg_found_lib_1 db 'Sorry I cannot found library ',39,'libimg.obj',39,'" -tE',0 |
err_msg_import_1 db 'Error on load import library ',39,'libimg.obj',39,'" -tW',0 |
err_msg_found_lib_2 db 'Sorry I cannot found library ',39,'box_lib.obj',39,'" -tE',0 |
err_msg_import_2 db 'Error on load import library ',39,'box_lib.obj',39,'" -tW',0 |
err_msg_found_lib_3 db 'Sorry I cannot found library ',39,'buf2d.obj',39,'" -tE',0 |
err_msg_import_3 db 'Error on load import library ',39,'buf2d.obj',39,'" -tW',0 |
err_msg_found_lib_4 db 'Sorry I cannot found library ',39,'kmenu.obj',39,'" -tE',0 |
err_msg_import_4 db 'Error on load import library ',39,'kmenu.obj',39,'" -tW',0 |
err_msg_found_lib_5 db 'Sorry I cannot found library ',39,'tinygl.obj',39,'" -tE',0 |
err_msg_import_5 db 'Error on load import library ',39,'tinygl',39,'" -tW',0 |
err_msg_found_lib_6 db 'Sorry I cannot found library ',39,'libini.obj',39,'" -tE',0 |
err_msg_import_6 db 'Error on load import library ',39,'libini',39,'" -tW',0 |
end if |
|
align 4 |
1373,9 → 1387,9 |
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ; à ¬¥âàë ä®®¢®£® ®á¢¥é¥¨ï |
|
if lang eq ru |
capt db 'info 3ds ¢¥àá¨ï 10.12.17',0 ;¯®¤¯¨áì ®ª |
capt db 'info 3ds ¢¥àá¨ï 14.03.19',0 ;¯®¤¯¨áì ®ª |
else |
capt db 'info 3ds version 10.12.17',0 ;window caption |
capt db 'info 3ds version 14.03.19',0 ;window caption |
end if |
|
align 16 |