info3ds:
1) fixed a bug with the definition of block size 2) some improvements git-svn-id: svn://kolibrios.org@2052 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
if not exist bin mkdir bin
|
if not exist bin mkdir bin
|
||||||
@erase lang.inc
|
@erase lang.inc
|
||||||
@echo lang fix en >lang.inc
|
@echo lang fix en >lang.inc
|
||||||
if not exist bin\objects.png @copy objects.png bin\objects.png
|
@copy objects.png bin\objects.png
|
||||||
if not exist bin\tl_sys_16.png @copy tl_sys_16.png bin\tl_sys_16.png
|
if not exist bin\tl_sys_16.png @copy tl_sys_16.png bin\tl_sys_16.png
|
||||||
if not exist bin\toolbar.png @copy toolbar.png bin\toolbar.png
|
if not exist bin\toolbar.png @copy toolbar.png bin\toolbar.png
|
||||||
if not exist bin\font8x9.bmp @copy ..\..\fs\kfar\trunk\font8x9.bmp bin\font8x9.bmp
|
if not exist bin\font8x9.bmp @copy ..\..\fs\kfar\trunk\font8x9.bmp bin\font8x9.bmp
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
if not exist bin mkdir bin
|
if not exist bin mkdir bin
|
||||||
@erase lang.inc
|
@erase lang.inc
|
||||||
@echo lang fix ru >lang.inc
|
@echo lang fix ru >lang.inc
|
||||||
if not exist bin\objects.png @copy objects.png bin\objects.png
|
@copy objects.png bin\objects.png
|
||||||
if not exist bin\tl_sys_16.png @copy tl_sys_16.png bin\tl_sys_16.png
|
if not exist bin\tl_sys_16.png @copy tl_sys_16.png bin\tl_sys_16.png
|
||||||
if not exist bin\toolbar.png @copy toolbar.png bin\toolbar.png
|
if not exist bin\toolbar.png @copy toolbar.png bin\toolbar.png
|
||||||
if not exist bin\font8x9.bmp @copy ..\..\fs\kfar\trunk\font8x9.bmp bin\font8x9.bmp
|
if not exist bin\font8x9.bmp @copy ..\..\fs\kfar\trunk\font8x9.bmp bin\font8x9.bmp
|
||||||
|
@@ -20,7 +20,7 @@ include 'lang.inc'
|
|||||||
debug equ 0
|
debug equ 0
|
||||||
|
|
||||||
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
||||||
capt db 'info 3ds 17.08.11',0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
capt db 'info 3ds 18.08.11',0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
struct FileInfoBlock
|
struct FileInfoBlock
|
||||||
Function dd ?
|
Function dd ?
|
||||||
@@ -45,7 +45,7 @@ image_data_toolbar dd 0
|
|||||||
TREE_ICON_SYS16_BMP_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*11+54 ;ࠧ<><E0A0A7><EFBFBD> bmp 䠩<><E4A0A9> <20> <20><><EFBFBD>⥬<EFBFBD>묨 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
TREE_ICON_SYS16_BMP_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*11+54 ;ࠧ<><E0A0A7><EFBFBD> bmp 䠩<><E4A0A9> <20> <20><><EFBFBD>⥬<EFBFBD>묨 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
icon_tl_sys dd 0 ;㪠<><E3AAA0>⥥<EFBFBD><E2A5A5> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
icon_tl_sys dd 0 ;㪠<><E3AAA0>⥥<EFBFBD><E2A5A5> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
icon_toolbar dd 0 ;㪠<><E3AAA0>⥥<EFBFBD><E2A5A5> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ꥪ⮢
|
icon_toolbar dd 0 ;㪠<><E3AAA0>⥥<EFBFBD><E2A5A5> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ꥪ⮢
|
||||||
TOOLBAR_ICON_BMP_SIZE equ 256*5 ;ࠧ<><E0A0A7><EFBFBD> bmp 䠩<><E4A0A9> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ꥪ⮢
|
TOOLBAR_ICON_BMP_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*6+54 ;ࠧ<><E0A0A7><EFBFBD> bmp 䠩<><E4A0A9> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ꥪ⮢
|
||||||
;
|
;
|
||||||
IMAGE_FILE1_SIZE equ 128*144*3 ;ࠧ<><E0A0A7><EFBFBD> 䠩<><E4A0A9> <20> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD><EFBFBD> 640 x 480
|
IMAGE_FILE1_SIZE equ 128*144*3 ;ࠧ<><E0A0A7><EFBFBD> 䠩<><E4A0A9> <20> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD><EFBFBD> 640 x 480
|
||||||
|
|
||||||
@@ -101,7 +101,6 @@ macro block_3ds id,icon,par
|
|||||||
CHUNK_MAIN equ 0x4D4D ; [-] <20>業<EFBFBD>
|
CHUNK_MAIN equ 0x4D4D ; [-] <20>業<EFBFBD>
|
||||||
CHUNK_color_1 equ 0x0011 ; [+] 梥<> rgb (byte format)
|
CHUNK_color_1 equ 0x0011 ; [+] 梥<> rgb (byte format)
|
||||||
CHUNK_ambient_color equ 0x2100 ; [-] ambient color
|
CHUNK_ambient_color equ 0x2100 ; [-] ambient color
|
||||||
CHUNK_VERSIONF equ 0x0002 ; [+] <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20> <20><><EFBFBD>ᨨ 䠩<><E4A0A9>
|
|
||||||
CHUNK_OBJMESH equ 0x3D3D ; [-] <20><><EFBFBD><EFBFBD><EFBFBD>᪨<EFBFBD> <20><>ꥪ<EFBFBD><EAA5AA>
|
CHUNK_OBJMESH equ 0x3D3D ; [-] <20><><EFBFBD><EFBFBD><EFBFBD>᪨<EFBFBD> <20><>ꥪ<EFBFBD><EAA5AA>
|
||||||
CHUNK_OBJBLOCK equ 0x4000 ; [+] <20><>ꥪ<EFBFBD>
|
CHUNK_OBJBLOCK equ 0x4000 ; [+] <20><>ꥪ<EFBFBD>
|
||||||
CHUNK_TRIMESH equ 0x4100 ; [-] trimesh-<2D><>ꥪ<EFBFBD>
|
CHUNK_TRIMESH equ 0x4100 ; [-] trimesh-<2D><>ꥪ<EFBFBD>
|
||||||
@@ -134,15 +133,21 @@ MAX_FILE_SIZE equ 150*0x400 ;
|
|||||||
level_stack dd 0
|
level_stack dd 0
|
||||||
offs_last_timer dd 0 ;<3B><><EFBFBD><E1ABA5><EFBFBD><EFBFBD> ᤢ<><E1A4A2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20>㭪樨 ⠩<><E2A0A9><EFBFBD><EFBFBD>
|
offs_last_timer dd 0 ;<3B><><EFBFBD><E1ABA5><EFBFBD><EFBFBD> ᤢ<><E1A4A2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20>㭪樨 ⠩<><E2A0A9><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
ID_ICON_CHUNK_MAIN equ 0
|
ID_ICON_CHUNK_MAIN equ 0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
ID_ICON_CHUNK_NOT_FOUND equ 1
|
ID_ICON_CHUNK_NOT_FOUND equ 1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>⭮<EFBFBD><E2ADAE> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
ID_ICON_DATA equ 2
|
ID_ICON_DATA equ 2 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
|
FILE_ERROR_CHUNK_SIZE equ -3 ;<3B>訡<EFBFBD><E8A8A1> <20> ࠧ<><E0A0A7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
type_bloks:
|
type_bloks:
|
||||||
|
block_3ds 0x0002,5,1 ;<3B><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20> <20><><EFBFBD>ᨨ 䠩<><E4A0A9>
|
||||||
|
block_3ds 0x3d3e,5,1 ;mesh version
|
||||||
|
block_3ds 0xA010,4,0 ;material ambient color
|
||||||
|
block_3ds 0xA020,4,0 ;material diffuse color
|
||||||
|
block_3ds 0xA030,4,0 ;material specular color
|
||||||
block_3ds CHUNK_color_1, 4,1 ; [+] 梥<> rgb (byte format)
|
block_3ds CHUNK_color_1, 4,1 ; [+] 梥<> rgb (byte format)
|
||||||
block_3ds CHUNK_ambient_color,3,0 ; [-] ambient color
|
block_3ds CHUNK_ambient_color,3,0 ; [-] ambient color
|
||||||
block_3ds CHUNK_VERSIONF, 3,1 ; [+] <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20> <20><><EFBFBD>ᨨ 䠩<><E4A0A9>
|
|
||||||
block_3ds CHUNK_OBJMESH, 3,0 ; [-] <20><><EFBFBD><EFBFBD><EFBFBD>᪨<EFBFBD> <20><>ꥪ<EFBFBD><EAA5AA>
|
block_3ds CHUNK_OBJMESH, 3,0 ; [-] <20><><EFBFBD><EFBFBD><EFBFBD>᪨<EFBFBD> <20><>ꥪ<EFBFBD><EAA5AA>
|
||||||
block_3ds CHUNK_OBJBLOCK, 3,1 ; [+] <20><>ꥪ<EFBFBD>
|
block_3ds CHUNK_OBJBLOCK, 3,1 ; [+] <20><>ꥪ<EFBFBD>
|
||||||
block_3ds CHUNK_TRIMESH, 3,0 ; [-] trimesh-<2D><>ꥪ<EFBFBD>
|
block_3ds CHUNK_TRIMESH, 3,0 ; [-] trimesh-<2D><>ꥪ<EFBFBD>
|
||||||
@@ -181,6 +186,7 @@ if lang eq ru
|
|||||||
txt_open_3ds db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<>:',0
|
txt_open_3ds db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<>:',0
|
||||||
txt_no_3ds db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><> <20> <20><>ଠ<EFBFBD><E0ACA0> *.3ds',0
|
txt_no_3ds db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><> <20> <20><>ଠ<EFBFBD><E0ACA0> *.3ds',0
|
||||||
txt_3ds_big_file db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MAX_FILE_SIZE',0
|
txt_3ds_big_file db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MAX_FILE_SIZE',0
|
||||||
|
txt_3ds_err_sizes db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><><EFBFBD>०<EFBFBD><E0A5A6><EFBFBD>',0
|
||||||
txt_3ds_offs:
|
txt_3ds_offs:
|
||||||
db '<27><><EFBFBD>饭<EFBFBD><E9A5AD>: '
|
db '<27><><EFBFBD>饭<EFBFBD><E9A5AD>: '
|
||||||
.dig: rb 8
|
.dig: rb 8
|
||||||
@@ -189,6 +195,7 @@ else
|
|||||||
txt_open_3ds db 'Open file:',0
|
txt_open_3ds db 'Open file:',0
|
||||||
txt_no_3ds db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><> <20> <20><>ଠ<EFBFBD><E0ACA0> *.3ds',0
|
txt_no_3ds db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><> <20> <20><>ଠ<EFBFBD><E0ACA0> *.3ds',0
|
||||||
txt_3ds_big_file db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MAX_FILE_SIZE',0
|
txt_3ds_big_file db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MAX_FILE_SIZE',0
|
||||||
|
txt_3ds_err_sizes db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><><EFBFBD>०<EFBFBD><E0A5A6><EFBFBD>',0
|
||||||
txt_3ds_offs:
|
txt_3ds_offs:
|
||||||
db 'Offset: '
|
db 'Offset: '
|
||||||
.dig: rb 8
|
.dig: rb 8
|
||||||
@@ -311,6 +318,10 @@ buf_draw_beg:
|
|||||||
stdcall [buf2d_clear], buf_0, [buf_0.color] ;<3B><><EFBFBD>⨬ <20><><EFBFBD><EFBFBD><EFBFBD>
|
stdcall [buf2d_clear], buf_0, [buf_0.color] ;<3B><><EFBFBD>⨬ <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
stdcall [buf2d_draw_text], buf_0, buf_1,txt_open_3ds,5,5,0xff
|
stdcall [buf2d_draw_text], buf_0, buf_1,txt_open_3ds,5,5,0xff
|
||||||
stdcall [buf2d_draw_text], buf_0, buf_1,openfile_path,5,15,0xff
|
stdcall [buf2d_draw_text], buf_0, buf_1,openfile_path,5,15,0xff
|
||||||
|
cmp dword[level_stack],FILE_ERROR_CHUNK_SIZE ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>訡<EFBFBD><E8A8A1> 䠩<><E4A0A9>
|
||||||
|
jne @f
|
||||||
|
stdcall [buf2d_draw_text], buf_0, buf_1,txt_3ds_err_sizes,5,25,0xff0000
|
||||||
|
@@:
|
||||||
ret
|
ret
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
@@ -321,7 +332,6 @@ proc buf_draw_hex_table, offs:dword, size_line:dword
|
|||||||
endl
|
endl
|
||||||
mov esi,dword[offs]
|
mov esi,dword[offs]
|
||||||
mov edi,dword[open_file_lif]
|
mov edi,dword[open_file_lif]
|
||||||
add edi,6
|
|
||||||
add edi,dword[file_3ds+4] ;edi - 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
add edi,dword[file_3ds+4] ;edi - 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov dword[txt_3ds_offs.dig],0
|
mov dword[txt_3ds_offs.dig],0
|
||||||
cld
|
cld
|
||||||
@@ -375,7 +385,7 @@ draw_window:
|
|||||||
pushad
|
pushad
|
||||||
mcall 12,1
|
mcall 12,1
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov ebx,(20 shl 16)+510
|
mov ebx,(20 shl 16)+560
|
||||||
mov ecx,(20 shl 16)+315
|
mov ecx,(20 shl 16)+315
|
||||||
mov edx,[sc.work]
|
mov edx,[sc.work]
|
||||||
or edx,(3 shl 24)+0x10000000+0x20000000
|
or edx,(3 shl 24)+0x10000000+0x20000000
|
||||||
@@ -394,10 +404,10 @@ pushad
|
|||||||
mov edx,4
|
mov edx,4
|
||||||
int 0x40
|
int 0x40
|
||||||
|
|
||||||
mov ebx,(55 shl 16)+20
|
;mov ebx,(55 shl 16)+20
|
||||||
mov ecx,(5 shl 16)+20
|
;mov ecx,(5 shl 16)+20
|
||||||
mov edx,5
|
;mov edx,5
|
||||||
int 0x40
|
;int 0x40
|
||||||
|
|
||||||
|
|
||||||
mov eax,7
|
mov eax,7
|
||||||
@@ -410,9 +420,9 @@ pushad
|
|||||||
mov edx,(32 shl 16)+7 ;open
|
mov edx,(32 shl 16)+7 ;open
|
||||||
int 0x40
|
int 0x40
|
||||||
|
|
||||||
add ebx,IMAGE_TOOLBAR_ICON_SIZE
|
;add ebx,IMAGE_TOOLBAR_ICON_SIZE
|
||||||
mov edx,(57 shl 16)+7 ;open
|
;mov edx,(57 shl 16)+7 ;save
|
||||||
int 0x40
|
;int 0x40
|
||||||
|
|
||||||
mov dword[w_scr_t1.all_redraw],1
|
mov dword[w_scr_t1.all_redraw],1
|
||||||
stdcall [tl_draw],dword tree1
|
stdcall [tl_draw],dword tree1
|
||||||
@@ -518,13 +528,17 @@ but_open_file:
|
|||||||
stdcall add_3ds_object, ID_ICON_CHUNK_MAIN,0,dword[esi+2]
|
stdcall add_3ds_object, ID_ICON_CHUNK_MAIN,0,dword[esi+2]
|
||||||
call block_children ;<3B>室 <20> <20><><EFBFBD><EFBFBD>୨<EFBFBD> <20><><EFBFBD><EFBFBD>
|
call block_children ;<3B>室 <20> <20><><EFBFBD><EFBFBD>୨<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
|
mov edi,dword[file_3ds.offs]
|
||||||
|
add edi,dword[file_3ds.size]
|
||||||
.cycle_main:
|
.cycle_main:
|
||||||
cmp dword[level_stack],0
|
cmp dword[level_stack],0
|
||||||
je .end_cycle
|
jle .end_cycle
|
||||||
|
|
||||||
|
cmp esi,edi ;<3B> <20><><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9>
|
||||||
|
jge .end_cycle
|
||||||
|
|
||||||
call block_analiz
|
call block_analiz
|
||||||
mov edx,dword[esi+2] ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov edx,dword[esi+2] ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
add edx,6 ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
|
|
||||||
cmp dword[eax],0
|
cmp dword[eax],0
|
||||||
jne @f
|
jne @f
|
||||||
@@ -564,7 +578,8 @@ align 4
|
|||||||
block_analiz_data:
|
block_analiz_data:
|
||||||
pushad
|
pushad
|
||||||
mov ax,word[esi]
|
mov ax,word[esi]
|
||||||
mov ecx,dword[esi+2] ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
mov ecx,dword[esi+2]
|
||||||
|
sub ecx,6 ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
add esi,6
|
add esi,6
|
||||||
mov ebx,dword[level_stack]
|
mov ebx,dword[level_stack]
|
||||||
inc ebx
|
inc ebx
|
||||||
@@ -583,15 +598,32 @@ block_analiz_data:
|
|||||||
popad
|
popad
|
||||||
ret
|
ret
|
||||||
|
|
||||||
;<3B>室 <20> <20><><EFBFBD><EFBFBD>୨<EFBFBD> <20><><EFBFBD><EFBFBD>
|
;<3B>室 <20> 1-<2D> <20><><EFBFBD><EFBFBD>୨<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
;output:
|
||||||
|
; edx - destroy
|
||||||
align 4
|
align 4
|
||||||
block_children:
|
block_children:
|
||||||
mov dword[eax],esi ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
push ecx
|
||||||
mov ebx,dword[esi+2]
|
;<3B><EFBFBD>ઠ <20>ࠢ<EFBFBD><E0A0A2>쭮<EFBFBD><ECADAE><EFBFBD> ࠧ<><E0A0A7> <20><><EFBFBD><EFBFBD><EFBFBD><E0ADA5> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov dword[eax+4],ebx ;ࠧ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
mov ebx,esi ;ᬥ饭<EFBFBD><EFBFBD> <20><>砫<EFBFBD> த<>⥫<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
add esi,6 ;<3B><><EFBFBD><EFBFBD>室<EFBFBD><E5AEA4> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
add ebx,6 ;<3B><><EFBFBD><EFBFBD>室 <EFBFBD><EFBFBD> <20><EFBFBD>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
inc dword[level_stack]
|
add ebx,dword[ebx+2] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><E0ADA5> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
add eax,8
|
mov ecx,esi ;ᬥ饭<E1ACA5><E9A5AD> <20><>砫<EFBFBD> த<>⥫<EFBFBD><EFBFBD><E1AAAE> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
add ecx,dword[esi+2] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 ࠧ<><E0A0A7><EFBFBD> த<>⥫<EFBFBD><EFBFBD><E1AAAE> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
cmp ebx,ecx ;<3B><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>㦭<EFBFBD>, <20>. <20>. <20>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⮫쪮 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
jle @f
|
||||||
|
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0AEA2><EFBFBD> <20>訡<EFBFBD><E8A8A1> 䠩<><E4A0A9>, <20><><EFBFBD><EFBFBD>୨<EFBFBD> <20><><EFBFBD><EFBFBD> <20><>室<EFBFBD><E5AEA4> <20><> <20>।<EFBFBD><E0A5A4><EFBFBD> த<>⥫<EFBFBD><EFBFBD><E1AAAE>
|
||||||
|
mov dword[level_stack],FILE_ERROR_CHUNK_SIZE
|
||||||
|
jmp .end_f
|
||||||
|
@@:
|
||||||
|
mov dword[eax],esi ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
mov ebx,dword[esi+2]
|
||||||
|
mov dword[eax+4],ebx ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
add esi,6 ;<3B><><EFBFBD><EFBFBD>室<EFBFBD><E5AEA4> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
inc dword[level_stack]
|
||||||
|
add eax,8
|
||||||
|
.end_f:
|
||||||
|
pop ecx
|
||||||
ret
|
ret
|
||||||
|
|
||||||
;<3B><><EFBFBD><EFBFBD>室 <20> <><E1ABA5>饬<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ⥪<>饣<EFBFBD> <20><EFBFBD><E0AEA2>
|
;<3B><><EFBFBD><EFBFBD>室 <20> <><E1ABA5>饬<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ⥪<>饣<EFBFBD> <20><EFBFBD><E0AEA2>
|
||||||
@@ -599,12 +631,10 @@ align 4
|
|||||||
block_next:
|
block_next:
|
||||||
push ebx
|
push ebx
|
||||||
add esi,dword[esi+2] ;<3B>ய<EFBFBD>᪠<EFBFBD><E1AAA0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
add esi,dword[esi+2] ;<3B>ய<EFBFBD>᪠<EFBFBD><E1AAA0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
add esi,6
|
|
||||||
|
|
||||||
;<3B><EFBFBD>ઠ ࠧ<><E0A0A7> த<>⥫<EFBFBD><EFBFBD><E1AAAE> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>室<EFBFBD> <20><> <20><><EFBFBD>孨<EFBFBD> <20><EFBFBD><E0AEA2><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
;<3B><EFBFBD>ઠ ࠧ<><E0A0A7> த<>⥫<EFBFBD><EFBFBD><E1AAAE> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>室<EFBFBD> <20><> <20><><EFBFBD>孨<EFBFBD> <20><EFBFBD><E0AEA2><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov ebx,dword[eax-8]
|
mov ebx,dword[eax-8]
|
||||||
add ebx,dword[eax-4]
|
add ebx,dword[eax-4]
|
||||||
add ebx,6
|
|
||||||
cmp esi,ebx
|
cmp esi,ebx
|
||||||
jl @f
|
jl @f
|
||||||
dec dword[level_stack]
|
dec dword[level_stack]
|
||||||
@@ -1080,7 +1110,7 @@ procinfo process_information
|
|||||||
|
|
||||||
align 4
|
align 4
|
||||||
buf_0: dd 0 ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD>
|
buf_0: dd 0 ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD>
|
||||||
dw 155 ;+4 left
|
dw 205 ;+4 left
|
||||||
dw 35 ;+6 top
|
dw 35 ;+6 top
|
||||||
.w: dd 340 ;+8 w
|
.w: dd 340 ;+8 w
|
||||||
.h: dd 250 ;+12 h
|
.h: dd 250 ;+12 h
|
||||||
@@ -1099,7 +1129,7 @@ buf_1:
|
|||||||
|
|
||||||
el_focus dd tree1
|
el_focus dd tree1
|
||||||
tree1 tree_list size_one_list,100+2, tl_key_no_edit+tl_draw_par_line,\
|
tree1 tree_list size_one_list,100+2, tl_key_no_edit+tl_draw_par_line,\
|
||||||
16,16, 0xffffff,0xb0d0ff,0xd000ff, 5,35,145-16,250, 0,8,0, el_focus,\
|
16,16, 0xffffff,0xb0d0ff,0xd000ff, 5,35,195-16,250, 0,8,0, el_focus,\
|
||||||
w_scr_t1,0
|
w_scr_t1,0
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.7 KiB |
Reference in New Issue
Block a user