Info3ds: added resizing of the window with the figure
and the list of vertices in the properties window Info3ds, Info3ds_u: files with menu icons are embedded into the program
This commit is contained in:
@@ -152,9 +152,6 @@ extra_files = {
|
|||||||
{"HD_Load/USB_boot_old/", SRC_PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
|
{"HD_Load/USB_boot_old/", SRC_PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"},
|
||||||
{"HD_Load/USB_boot_old/", SRC_PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
|
{"HD_Load/USB_boot_old/", SRC_PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"},
|
||||||
{"kolibrios/3D/info3ds/INFO3DS.INI", SRC_PROGS .. "/develop/info3ds/info3ds.ini"},
|
{"kolibrios/3D/info3ds/INFO3DS.INI", SRC_PROGS .. "/develop/info3ds/info3ds.ini"},
|
||||||
{"kolibrios/3D/info3ds/OBJECTS.PNG", SRC_PROGS .. "/develop/info3ds/objects.png"},
|
|
||||||
{"kolibrios/3D/info3ds/TOOLBAR.PNG", SRC_PROGS .. "/develop/info3ds/toolbar.png"},
|
|
||||||
{"kolibrios/3D/info3ds/FONT8X9.BMP", SRC_PROGS .. "/fs/kfar/trunk/font8x9.bmp"},
|
|
||||||
{"kolibrios/3D/blocks/blocks.kex", "../programs/bcc32/games/blocks/bin/blocks.kex"},
|
{"kolibrios/3D/blocks/blocks.kex", "../programs/bcc32/games/blocks/bin/blocks.kex"},
|
||||||
{"kolibrios/3D/blocks/models/", "../programs/bcc32/games/blocks/models/*"},
|
{"kolibrios/3D/blocks/models/", "../programs/bcc32/games/blocks/models/*"},
|
||||||
{"kolibrios/3D/md2view/", "common/3d/md2view/*"},
|
{"kolibrios/3D/md2view/", "common/3d/md2view/*"},
|
||||||
|
@@ -2,9 +2,6 @@ if not exist bin mkdir bin
|
|||||||
@erase lang.inc
|
@erase lang.inc
|
||||||
@echo lang fix en_US >lang.inc
|
@echo lang fix en_US >lang.inc
|
||||||
@copy objects.png bin\objects.png
|
@copy objects.png bin\objects.png
|
||||||
if not exist bin\info3ds.ini @copy info3ds.ini bin\info3ds.ini
|
|
||||||
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
|
|
||||||
@fasm.exe -m 16384 info3ds.asm bin\info3ds.kex
|
@fasm.exe -m 16384 info3ds.asm bin\info3ds.kex
|
||||||
@kpack bin\info3ds.kex
|
@kpack bin\info3ds.kex
|
||||||
@fasm.exe -m 16384 info3ds_u.asm bin\info3ds_u.kex
|
@fasm.exe -m 16384 info3ds_u.asm bin\info3ds_u.kex
|
||||||
|
@@ -2,9 +2,6 @@ if not exist bin mkdir bin
|
|||||||
@erase lang.inc
|
@erase lang.inc
|
||||||
@echo lang fix ru_RU >lang.inc
|
@echo lang fix ru_RU >lang.inc
|
||||||
@copy objects.png bin\objects.png
|
@copy objects.png bin\objects.png
|
||||||
if not exist bin\info3ds.ini @copy info3ds.ini bin\info3ds.ini
|
|
||||||
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
|
|
||||||
@fasm.exe -m 16384 info3ds.asm bin\info3ds.kex
|
@fasm.exe -m 16384 info3ds.asm bin\info3ds.kex
|
||||||
@kpack bin\info3ds.kex
|
@kpack bin\info3ds.kex
|
||||||
@fasm.exe -m 16384 info3ds_u.asm bin\info3ds_u.kex
|
@fasm.exe -m 16384 info3ds_u.asm bin\info3ds_u.kex
|
||||||
|
@@ -1,6 +1,10 @@
|
|||||||
|
; SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
; Info3ds - is a program for viewing the structure of *.3ds files
|
||||||
|
; Copyright (C) 2011-2025 KolibriOS team
|
||||||
|
|
||||||
use32
|
use32
|
||||||
org 0
|
org 0
|
||||||
db 'MENUET01' ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD><E1AFAE>塞<EFBFBD><EFA5AC><EFBFBD> 䠩<><E4A0A9> <20>ᥣ<EFBFBD><E1A5A3> 8 <20><><EFBFBD><EFBFBD>
|
db 'MENUET01'
|
||||||
dd 1, start, i_end, mem, stacktop, file_name, sys_path
|
dd 1, start, i_end, mem, stacktop, file_name, sys_path
|
||||||
|
|
||||||
version_edit equ 1
|
version_edit equ 1
|
||||||
@@ -22,36 +26,34 @@ include 'convert_stl_3ds.inc'
|
|||||||
|
|
||||||
@use_library mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
@use_library mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
||||||
|
|
||||||
ID_ICON_CHUNK_MAIN equ 0 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
ID_ICON_CHUNK_MAIN equ 0 ;main block icon
|
||||||
ID_ICON_CHUNK_NOT_FOUND equ 1 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>⭮<EFBFBD><E2ADAE> <20><><EFBFBD><EFBFBD><EFBFBD>
|
ID_ICON_CHUNK_NOT_FOUND equ 1 ;unknown block icon
|
||||||
ID_ICON_DATA equ 2 ;<EFBFBD><EFBFBD><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>
|
ID_ICON_DATA equ 2 ;icon for block data, undefined structure
|
||||||
ID_ICON_POINT equ 8
|
ID_ICON_POINT equ 8
|
||||||
ID_ICON_POINT_SEL equ 9
|
ID_ICON_POINT_SEL equ 9
|
||||||
|
|
||||||
FILE_ERROR_CHUNK_SIZE equ -3 ;<EFBFBD>訡<EFBFBD><EFBFBD> <20> ࠧ<><E0A0A7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
FILE_ERROR_CHUNK_SIZE equ -3 ;block size error
|
||||||
|
|
||||||
include 'info_o3d.inc'
|
include 'info_o3d.inc'
|
||||||
|
|
||||||
main_wnd_height equ 460 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>
|
main_wnd_height equ 460 ;height of the main program window
|
||||||
IMAGE_TOOLBAR_ICON_SIZE equ 21*21*3
|
IMAGE_TOOLBAR_ICON_SIZE equ 21*21*3
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
fl255 dd 255.0
|
fl255 dd 255.0
|
||||||
open_file_data dd 0 ;㪠<EFBFBD><EFBFBD>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9><EFBFBD> 3ds
|
open_file_data dd 0 ;pointer to memory for opening 3ds files
|
||||||
open_file_size dd 0 ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⮣<EFBFBD> 䠩<><E4A0A9>
|
open_file_size dd 0
|
||||||
image_data_toolbar dd 0
|
image_data_toolbar dd 0
|
||||||
icon_tl_sys dd 0 ;㪠<EFBFBD><EFBFBD>⥥<EFBFBD><EFBFBD> <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 ;pointer to memory for storing system icons
|
||||||
icon_toolbar dd 0 ;㪠<EFBFBD><EFBFBD>⥥<EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ꥪ⮢
|
icon_toolbar dd 0 ;pointer to memory for storing object icons
|
||||||
fn_toolbar db 'toolbar.png',0
|
|
||||||
|
|
||||||
align 4
|
|
||||||
level_stack dd 0
|
level_stack dd 0
|
||||||
offs_last_timer dd 0 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᤢ<><E1A4A2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20>㭪樨 ⠩<><E2A0A9><EFBFBD><EFBFBD>
|
offs_last_timer dd 0 ;last shift shown in timer function
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
file_3ds: ;<EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD><E1AFAE><EFBFBD>㥬<EFBFBD><E3A5AC> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⨨ 䠩<><E4A0A9>
|
file_3ds: ;variables used when opening a file
|
||||||
.offs: dd 0 ;+0 㪠<EFBFBD><EFBFBD>⥫<EFBFBD> <20><> <20><>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
.offs: dd 0 ;+0 pointer to the beginning of the block
|
||||||
.size: dd 0 ;+4 ࠧ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD> 1-<2D><> <20><>ࠬ<EFBFBD><E0A0AC><EFBFBD><EFBFBD> = ࠧ<><E0A0A7><EFBFBD> 䠩<><E4A0A9> 3ds)
|
.size: dd 0 ;+4 block size (for 1st parameter = 3ds file size)
|
||||||
rb 8*MAX_FILE_LEVEL
|
rb 8*MAX_FILE_LEVEL
|
||||||
|
|
||||||
size_one_list equ 42
|
size_one_list equ 42
|
||||||
@@ -81,7 +83,7 @@ start:
|
|||||||
stosd
|
stosd
|
||||||
|
|
||||||
load_libraries l_libs_start,l_libs_end
|
load_libraries l_libs_start,l_libs_end
|
||||||
;<EFBFBD><EFBFBD>ઠ <20><> <>쪮 㤠筮 <20><><EFBFBD>㧨<EFBFBD><E3A7A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD>
|
;checking how successfully the libraries were loaded
|
||||||
mov ebp,lib_0
|
mov ebp,lib_0
|
||||||
.test_lib_open:
|
.test_lib_open:
|
||||||
cmp dword [ebp+ll_struc_size-4],0
|
cmp dword [ebp+ll_struc_size-4],0
|
||||||
@@ -94,7 +96,7 @@ start:
|
|||||||
mcall SF_STYLE_SETTINGS,SSF_GET_COLORS,sc,sizeof.system_colors
|
mcall SF_STYLE_SETTINGS,SSF_GET_COLORS,sc,sizeof.system_colors
|
||||||
mcall SF_SET_EVENTS_MASK,0xC0000027
|
mcall SF_SET_EVENTS_MASK,0xC0000027
|
||||||
|
|
||||||
stdcall [OpenDialog_Init],OpenDialog_data ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⮢<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
stdcall [OpenDialog_Init],OpenDialog_data ;preparation of dialogue
|
||||||
|
|
||||||
;kmenu initialisation
|
;kmenu initialisation
|
||||||
stdcall [kmenu_init],sc
|
stdcall [kmenu_init],sc
|
||||||
@@ -143,70 +145,68 @@ start:
|
|||||||
stdcall [tl_data_init], tree1
|
stdcall [tl_data_init], tree1
|
||||||
;<3B><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 16*16 <20><><EFBFBD> tree_list
|
;<3B><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 16*16 <20><><EFBFBD> tree_list
|
||||||
include_image_file 'tl_sys_16.png', icon_tl_sys
|
include_image_file 'tl_sys_16.png', icon_tl_sys
|
||||||
;<3B> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>뫮<EFBFBD><EBABAE>, <20><> <20> icon_tl_sys <20><><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,[icon_tl_sys]
|
||||||
;<3B><> <20><><EFBFBD>樠<EFBFBD><E6A8A0><EFBFBD><EFBFBD><EFBFBD><E0AEA2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20>訡<EFBFBD><E8A8A1> <20><> <20>㤥<EFBFBD>, <20>. <20>. <20><><EFBFBD><EFBFBD><EFBFBD> <20>㦭<EFBFBD><E3A6AD><EFBFBD> ࠧ<><E0A0A7><EFBFBD><EFBFBD>
|
mov [tree1.data_img_sys],eax
|
||||||
mov eax,dword[icon_tl_sys]
|
|
||||||
mov dword[tree1.data_img_sys],eax
|
|
||||||
|
|
||||||
load_image_file 'objects.png', icon_toolbar
|
include_image_file 'objects.png', icon_toolbar
|
||||||
mov eax,dword[icon_toolbar]
|
mov eax,[icon_toolbar]
|
||||||
mov dword[tree1.data_img],eax
|
mov [tree1.data_img],eax
|
||||||
|
|
||||||
stdcall [buf2d_create], buf_0 ;ᮧ<><E1AEA7><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
stdcall [buf2d_create], buf_0 ;ᮧ<><E1AEA7><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
load_image_file 'font8x9.bmp', image_data_toolbar
|
include_image_file '../../fs/kfar/trunk/font8x9.bmp', image_data_toolbar
|
||||||
stdcall [buf2d_create_f_img], buf_1,[image_data_toolbar] ;ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
stdcall [buf2d_create_f_img], buf_1,[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>
|
stdcall mem.Free,[image_data_toolbar] ;<3B><EFBFBD><E1A2AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
stdcall [buf2d_conv_24_to_8], buf_1,1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA7>筮<EFBFBD><E7ADAE><EFBFBD> 8 <20><><EFBFBD>
|
stdcall [buf2d_conv_24_to_8], buf_1,1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA7>筮<EFBFBD><E7ADAE><EFBFBD> 8 <20><><EFBFBD>
|
||||||
stdcall [buf2d_convert_text_matrix], buf_1
|
stdcall [buf2d_convert_text_matrix], buf_1
|
||||||
|
|
||||||
load_image_file fn_toolbar, image_data_toolbar
|
include_image_file 'toolbar.png', image_data_toolbar
|
||||||
|
|
||||||
;ࠡ<><E0A0A1><EFBFBD> <20> 䠩<><E4A0A9><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
;ࠡ<><E0A0A1><EFBFBD> <20> 䠩<><E4A0A9><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
copy_path ini_name,sys_path,file_name,0
|
copy_path ini_name,sys_path,file_name,0
|
||||||
mov dword[def_dr_mode],0
|
mov dword[def_dr_mode],0
|
||||||
stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_dv,1
|
stdcall [ini_get_int],file_name,ini_sec_w3d,key_dv,1
|
||||||
or eax,eax
|
or eax,eax
|
||||||
jz @f
|
jz @f
|
||||||
or dword[def_dr_mode], 1 shl bit_vertexes
|
or dword[def_dr_mode], 1 shl bit_vertexes
|
||||||
@@:
|
@@:
|
||||||
stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_df,1
|
stdcall [ini_get_int],file_name,ini_sec_w3d,key_df,1
|
||||||
or eax,eax
|
or eax,eax
|
||||||
jz @f
|
jz @f
|
||||||
or dword[def_dr_mode], 1 shl bit_faces
|
or dword[def_dr_mode], 1 shl bit_faces
|
||||||
@@:
|
@@:
|
||||||
stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_dff,1
|
stdcall [ini_get_int],file_name,ini_sec_w3d,key_dff,1
|
||||||
or eax,eax
|
or eax,eax
|
||||||
jz @f
|
jz @f
|
||||||
or dword[def_dr_mode], 1 shl bit_faces_fill
|
or dword[def_dr_mode], 1 shl bit_faces_fill
|
||||||
@@:
|
@@:
|
||||||
stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_dl,1
|
stdcall [ini_get_int],file_name,ini_sec_w3d,key_dl,1
|
||||||
or eax,eax
|
or eax,eax
|
||||||
jz @f
|
jz @f
|
||||||
or dword[def_dr_mode], 1 shl bit_light
|
or dword[def_dr_mode], 1 shl bit_light
|
||||||
@@:
|
@@:
|
||||||
stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_ds,1
|
stdcall [ini_get_int],file_name,ini_sec_w3d,key_ds,1
|
||||||
or eax,eax
|
or eax,eax
|
||||||
jz @f
|
jz @f
|
||||||
or dword[def_dr_mode], 1 shl bit_smooth
|
or dword[def_dr_mode], 1 shl bit_smooth
|
||||||
@@:
|
@@:
|
||||||
stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_ox,0x0000ff
|
stdcall [ini_get_color],file_name,ini_sec_w3d,key_ox,0x0000ff
|
||||||
mov [color_ox],eax
|
mov [color_ox],eax
|
||||||
stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_oy,0xff0000
|
stdcall [ini_get_color],file_name,ini_sec_w3d,key_oy,0xff0000
|
||||||
mov [color_oy],eax
|
mov [color_oy],eax
|
||||||
stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_oz,0x00ff00
|
stdcall [ini_get_color],file_name,ini_sec_w3d,key_oz,0x00ff00
|
||||||
mov [color_oz],eax
|
mov [color_oz],eax
|
||||||
stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_bk,0x000000
|
stdcall [ini_get_color],file_name,ini_sec_w3d,key_bk,0x000000
|
||||||
mov [color_bk],eax
|
mov [color_bk],eax
|
||||||
shr eax,8
|
shr eax,8
|
||||||
mov [color_bk+4],eax
|
mov [color_bk+4],eax
|
||||||
shr eax,8
|
shr eax,8
|
||||||
mov [color_bk+8],eax
|
mov [color_bk+8],eax
|
||||||
stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_vert,0xffffff
|
stdcall [ini_get_color],file_name,ini_sec_w3d,key_vert,0xffffff
|
||||||
mov [color_vert],eax
|
mov [color_vert],eax
|
||||||
stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_face,0x808080
|
stdcall [ini_get_color],file_name,ini_sec_w3d,key_face,0x808080
|
||||||
mov [color_face],eax
|
mov [color_face],eax
|
||||||
stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_select,0xffff00
|
stdcall [ini_get_color],file_name,ini_sec_w3d,key_select,0xffff00
|
||||||
mov [color_select],eax
|
mov [color_select],eax
|
||||||
finit
|
finit
|
||||||
fild dword[color_bk+8]
|
fild dword[color_bk+8]
|
||||||
@@ -262,19 +262,19 @@ still:
|
|||||||
or eax,eax
|
or eax,eax
|
||||||
jz timer_funct
|
jz timer_funct
|
||||||
|
|
||||||
cmp al,1
|
cmp al,EV_REDRAW
|
||||||
jne @f
|
jne @f
|
||||||
call draw_window
|
call draw_window
|
||||||
jmp still
|
jmp still
|
||||||
@@:
|
@@:
|
||||||
cmp al,2
|
cmp al,EV_KEY
|
||||||
jz key
|
jz key
|
||||||
cmp al,3
|
cmp al,EV_BUTTON
|
||||||
jz button
|
jz button
|
||||||
cmp al,6
|
cmp al,EV_MOUSE
|
||||||
jne @f
|
jne @f
|
||||||
mcall SF_THREAD_INFO,procinfo,-1
|
mcall SF_THREAD_INFO,procinfo,-1
|
||||||
cmp ax,word[procinfo+4]
|
cmp ax,word[procinfo.window_stack_position]
|
||||||
jne @f ;<3B><><EFBFBD><EFBFBD> <20><> <20><>⨢<EFBFBD><E2A8A2>
|
jne @f ;<3B><><EFBFBD><EFBFBD> <20><> <20><>⨢<EFBFBD><E2A8A2>
|
||||||
call mouse
|
call mouse
|
||||||
@@:
|
@@:
|
||||||
@@ -282,7 +282,7 @@ still:
|
|||||||
|
|
||||||
align 4
|
align 4
|
||||||
mouse:
|
mouse:
|
||||||
stdcall [tl_mouse], dword tree1
|
stdcall [tl_mouse], tree1
|
||||||
ret
|
ret
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
@@ -385,7 +385,7 @@ pushad
|
|||||||
mcall , (20 shl 16)+560, (20 shl 16)+main_wnd_height
|
mcall , (20 shl 16)+560, (20 shl 16)+main_wnd_height
|
||||||
|
|
||||||
mcall SF_THREAD_INFO,procinfo,-1
|
mcall SF_THREAD_INFO,procinfo,-1
|
||||||
mov eax,dword[procinfo.box.height]
|
mov eax,[procinfo.box.height]
|
||||||
cmp eax,250
|
cmp eax,250
|
||||||
jge @f
|
jge @f
|
||||||
mov eax,250
|
mov eax,250
|
||||||
@@ -399,7 +399,7 @@ pushad
|
|||||||
mov dword[offs_last_timer],0 ;<3B><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> ⠩<><E2A0A9><EFBFBD><EFBFBD>
|
mov dword[offs_last_timer],0 ;<3B><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> ⠩<><E2A0A9><EFBFBD><EFBFBD>
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
mov eax,dword[procinfo.box.width]
|
mov eax,[procinfo.box.width]
|
||||||
cmp eax,400
|
cmp eax,400
|
||||||
jge @f
|
jge @f
|
||||||
mov eax,400
|
mov eax,400
|
||||||
@@ -457,7 +457,7 @@ popad
|
|||||||
align 4
|
align 4
|
||||||
key:
|
key:
|
||||||
mcall SF_GET_KEY
|
mcall SF_GET_KEY
|
||||||
stdcall [tl_key], dword tree1
|
stdcall [tl_key], tree1
|
||||||
jmp still
|
jmp still
|
||||||
|
|
||||||
|
|
||||||
@@ -1087,53 +1087,6 @@ l_libs_start:
|
|||||||
lib_6 l_libs lib_name_6, file_name, system_dir_6, import_libini
|
lib_6 l_libs lib_name_6, file_name, system_dir_6, import_libini
|
||||||
l_libs_end:
|
l_libs_end:
|
||||||
|
|
||||||
align 4
|
|
||||||
import_libimg:
|
|
||||||
dd alib_init1
|
|
||||||
img_is_img dd aimg_is_img
|
|
||||||
img_info dd aimg_info
|
|
||||||
img_from_file dd aimg_from_file
|
|
||||||
img_to_file dd aimg_to_file
|
|
||||||
img_from_rgb dd aimg_from_rgb
|
|
||||||
img_to_rgb dd aimg_to_rgb
|
|
||||||
img_to_rgb2 dd aimg_to_rgb2
|
|
||||||
img_decode dd aimg_decode
|
|
||||||
img_encode dd aimg_encode
|
|
||||||
img_create dd aimg_create
|
|
||||||
img_destroy dd aimg_destroy
|
|
||||||
img_destroy_layer dd aimg_destroy_layer
|
|
||||||
img_count dd aimg_count
|
|
||||||
img_lock_bits dd aimg_lock_bits
|
|
||||||
img_unlock_bits dd aimg_unlock_bits
|
|
||||||
img_flip dd aimg_flip
|
|
||||||
img_flip_layer dd aimg_flip_layer
|
|
||||||
img_rotate dd aimg_rotate
|
|
||||||
img_rotate_layer dd aimg_rotate_layer
|
|
||||||
img_draw dd aimg_draw
|
|
||||||
|
|
||||||
dd 0,0
|
|
||||||
alib_init1 db 'lib_init',0
|
|
||||||
aimg_is_img db 'img_is_img',0 ;<3B><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> ᤥ<><E1A4A5><EFBFBD><EFBFBD> <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD>
|
|
||||||
aimg_info db 'img_info',0
|
|
||||||
aimg_from_file db 'img_from_file',0
|
|
||||||
aimg_to_file db 'img_to_file',0
|
|
||||||
aimg_from_rgb db 'img_from_rgb',0
|
|
||||||
aimg_to_rgb db 'img_to_rgb',0 ;<3B>८<EFBFBD>ࠧ<EFBFBD><E0A0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> RGB
|
|
||||||
aimg_to_rgb2 db 'img_to_rgb2',0
|
|
||||||
aimg_decode db 'img_decode',0 ;<3B><>⮬<EFBFBD><E2AEAC><EFBFBD><EFBFBD><EFBFBD>᪨ <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD> <20><>ଠ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᪨<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
aimg_encode db 'img_encode',0
|
|
||||||
aimg_create db 'img_create',0
|
|
||||||
aimg_destroy db 'img_destroy',0
|
|
||||||
aimg_destroy_layer db 'img_destroy_layer',0
|
|
||||||
aimg_count db 'img_count',0
|
|
||||||
aimg_lock_bits db 'img_lock_bits',0
|
|
||||||
aimg_unlock_bits db 'img_unlock_bits',0
|
|
||||||
aimg_flip db 'img_flip',0
|
|
||||||
aimg_flip_layer db 'img_flip_layer',0
|
|
||||||
aimg_rotate db 'img_rotate',0
|
|
||||||
aimg_rotate_layer db 'img_rotate_layer',0
|
|
||||||
aimg_draw db 'img_draw',0
|
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
import_proclib:
|
import_proclib:
|
||||||
OpenDialog_Init dd aOpenDialog_Init
|
OpenDialog_Init dd aOpenDialog_Init
|
||||||
@@ -1146,122 +1099,9 @@ dd 0,0
|
|||||||
aOpenDialog_Set_file_name db 'OpenDialog_set_file_name',0
|
aOpenDialog_Set_file_name db 'OpenDialog_set_file_name',0
|
||||||
aOpenDialog_Set_file_ext db 'OpenDialog_set_file_ext',0
|
aOpenDialog_Set_file_ext db 'OpenDialog_set_file_ext',0
|
||||||
|
|
||||||
align 4
|
include '../../develop/libraries/libs-dev/libimg/import.inc'
|
||||||
import_buf2d:
|
include '../../develop/libraries/box_lib/import.inc'
|
||||||
dd sz_init0
|
include '../../develop/libraries/buf2d/import.inc'
|
||||||
buf2d_create dd sz_buf2d_create
|
|
||||||
buf2d_create_f_img dd sz_buf2d_create_f_img
|
|
||||||
buf2d_clear dd sz_buf2d_clear
|
|
||||||
buf2d_draw dd sz_buf2d_draw
|
|
||||||
buf2d_delete dd sz_buf2d_delete
|
|
||||||
buf2d_resize dd sz_buf2d_resize
|
|
||||||
buf2d_line dd sz_buf2d_line
|
|
||||||
buf2d_rect_by_size dd sz_buf2d_rect_by_size
|
|
||||||
buf2d_filled_rect_by_size dd sz_buf2d_filled_rect_by_size
|
|
||||||
buf2d_circle dd sz_buf2d_circle
|
|
||||||
buf2d_img_hdiv2 dd sz_buf2d_img_hdiv2
|
|
||||||
buf2d_img_wdiv2 dd sz_buf2d_img_wdiv2
|
|
||||||
buf2d_conv_24_to_8 dd sz_buf2d_conv_24_to_8
|
|
||||||
buf2d_conv_24_to_32 dd sz_buf2d_conv_24_to_32
|
|
||||||
buf2d_bit_blt dd sz_buf2d_bit_blt
|
|
||||||
buf2d_bit_blt_transp dd sz_buf2d_bit_blt_transp
|
|
||||||
buf2d_bit_blt_alpha dd sz_buf2d_bit_blt_alpha
|
|
||||||
buf2d_convert_text_matrix dd sz_buf2d_convert_text_matrix
|
|
||||||
buf2d_draw_text dd sz_buf2d_draw_text
|
|
||||||
buf2d_crop_color dd sz_buf2d_crop_color
|
|
||||||
buf2d_offset_h dd sz_buf2d_offset_h
|
|
||||||
buf2d_set_pixel dd sz_buf2d_set_pixel
|
|
||||||
dd 0,0
|
|
||||||
sz_init0 db 'lib_init',0
|
|
||||||
sz_buf2d_create db 'buf2d_create',0
|
|
||||||
sz_buf2d_create_f_img db 'buf2d_create_f_img',0
|
|
||||||
sz_buf2d_clear db 'buf2d_clear',0
|
|
||||||
sz_buf2d_draw db 'buf2d_draw',0
|
|
||||||
sz_buf2d_delete db 'buf2d_delete',0
|
|
||||||
sz_buf2d_resize db 'buf2d_resize',0
|
|
||||||
sz_buf2d_line db 'buf2d_line',0
|
|
||||||
sz_buf2d_rect_by_size db 'buf2d_rect_by_size',0
|
|
||||||
sz_buf2d_filled_rect_by_size db 'buf2d_filled_rect_by_size',0
|
|
||||||
sz_buf2d_circle db 'buf2d_circle',0
|
|
||||||
sz_buf2d_img_hdiv2 db 'buf2d_img_hdiv2',0
|
|
||||||
sz_buf2d_img_wdiv2 db 'buf2d_img_wdiv2',0
|
|
||||||
sz_buf2d_conv_24_to_8 db 'buf2d_conv_24_to_8',0
|
|
||||||
sz_buf2d_conv_24_to_32 db 'buf2d_conv_24_to_32',0
|
|
||||||
sz_buf2d_bit_blt db 'buf2d_bit_blt',0
|
|
||||||
sz_buf2d_bit_blt_transp db 'buf2d_bit_blt_transp',0
|
|
||||||
sz_buf2d_bit_blt_alpha db 'buf2d_bit_blt_alpha',0
|
|
||||||
sz_buf2d_convert_text_matrix db 'buf2d_convert_text_matrix',0
|
|
||||||
sz_buf2d_draw_text db 'buf2d_draw_text',0
|
|
||||||
sz_buf2d_crop_color db 'buf2d_crop_color',0
|
|
||||||
sz_buf2d_offset_h db 'buf2d_offset_h',0
|
|
||||||
sz_buf2d_set_pixel db 'buf2d_set_pixel',0
|
|
||||||
|
|
||||||
align 4
|
|
||||||
import_box_lib:
|
|
||||||
dd sz_init1
|
|
||||||
edit_box_draw dd sz_edit_box_draw
|
|
||||||
edit_box_key dd sz_edit_box_key
|
|
||||||
edit_box_mouse dd sz_edit_box_mouse
|
|
||||||
edit_box_set_text dd sz_edit_box_set_text
|
|
||||||
scrollbar_ver_draw dd sz_scrollbar_ver_draw
|
|
||||||
scrollbar_hor_draw dd sz_scrollbar_hor_draw
|
|
||||||
|
|
||||||
tl_data_init dd sz_tl_data_init
|
|
||||||
tl_data_clear dd sz_tl_data_clear
|
|
||||||
tl_info_clear dd sz_tl_info_clear
|
|
||||||
tl_key dd sz_tl_key
|
|
||||||
tl_mouse dd sz_tl_mouse
|
|
||||||
tl_draw dd sz_tl_draw
|
|
||||||
tl_info_undo dd sz_tl_info_undo
|
|
||||||
tl_info_redo dd sz_tl_info_redo
|
|
||||||
tl_node_add dd sz_tl_node_add
|
|
||||||
tl_node_set_data dd sz_tl_node_set_data
|
|
||||||
tl_node_get_data dd sz_tl_node_get_data
|
|
||||||
tl_node_delete dd sz_tl_node_delete
|
|
||||||
tl_node_move_up dd sz_tl_node_move_up
|
|
||||||
tl_node_move_down dd sz_tl_node_move_down
|
|
||||||
tl_cur_beg dd sz_tl_cur_beg
|
|
||||||
tl_cur_next dd sz_tl_cur_next
|
|
||||||
tl_cur_perv dd sz_tl_cur_perv
|
|
||||||
tl_node_close_open dd sz_tl_node_close_open
|
|
||||||
tl_node_lev_inc dd sz_tl_node_lev_inc
|
|
||||||
tl_node_lev_dec dd sz_tl_node_lev_dec
|
|
||||||
tl_node_poi_get_info dd sz_tl_node_poi_get_info
|
|
||||||
tl_node_poi_get_next_info dd sz_tl_node_poi_get_next_info
|
|
||||||
tl_node_poi_get_data dd sz_tl_node_poi_get_data
|
|
||||||
|
|
||||||
dd 0,0
|
|
||||||
sz_init1 db 'lib_init',0
|
|
||||||
sz_edit_box_draw db 'edit_box_draw',0
|
|
||||||
sz_edit_box_key db 'edit_box_key',0
|
|
||||||
sz_edit_box_mouse db 'edit_box_mouse',0
|
|
||||||
sz_edit_box_set_text db 'edit_box_set_text',0
|
|
||||||
sz_scrollbar_ver_draw db 'scrollbar_v_draw',0
|
|
||||||
sz_scrollbar_hor_draw db 'scrollbar_h_draw',0
|
|
||||||
|
|
||||||
sz_tl_data_init db 'tl_data_init',0
|
|
||||||
sz_tl_data_clear db 'tl_data_clear',0
|
|
||||||
sz_tl_info_clear db 'tl_info_clear',0
|
|
||||||
sz_tl_key db 'tl_key',0
|
|
||||||
sz_tl_mouse db 'tl_mouse',0
|
|
||||||
sz_tl_draw db 'tl_draw',0
|
|
||||||
sz_tl_info_undo db 'tl_info_undo',0
|
|
||||||
sz_tl_info_redo db 'tl_info_redo',0
|
|
||||||
sz_tl_node_add db 'tl_node_add',0
|
|
||||||
sz_tl_node_set_data db 'tl_node_set_data',0
|
|
||||||
sz_tl_node_get_data db 'tl_node_get_data',0
|
|
||||||
sz_tl_node_delete db 'tl_node_delete',0
|
|
||||||
sz_tl_node_move_up db 'tl_node_move_up',0
|
|
||||||
sz_tl_node_move_down db 'tl_node_move_down',0
|
|
||||||
sz_tl_cur_beg db 'tl_cur_beg',0
|
|
||||||
sz_tl_cur_next db 'tl_cur_next',0
|
|
||||||
sz_tl_cur_perv db 'tl_cur_perv',0
|
|
||||||
sz_tl_node_close_open db 'tl_node_close_open',0
|
|
||||||
sz_tl_node_lev_inc db 'tl_node_lev_inc',0
|
|
||||||
sz_tl_node_lev_dec db 'tl_node_lev_dec',0
|
|
||||||
sz_tl_node_poi_get_info db 'tl_node_poi_get_info',0
|
|
||||||
sz_tl_node_poi_get_next_info db 'tl_node_poi_get_next_info',0
|
|
||||||
sz_tl_node_poi_get_data db 'tl_node_poi_get_data',0
|
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
import_libkmenu:
|
import_libkmenu:
|
||||||
@@ -1287,23 +1127,7 @@ dd 0,0
|
|||||||
akmenuitem_delete db 'kmenuitem_delete',0
|
akmenuitem_delete db 'kmenuitem_delete',0
|
||||||
akmenuitem_draw db 'kmenuitem_draw',0
|
akmenuitem_draw db 'kmenuitem_draw',0
|
||||||
|
|
||||||
align 4
|
include '../../develop/libraries/TinyGL/asm_fork/import.inc'
|
||||||
import_tinygl:
|
|
||||||
macro E_LIB n
|
|
||||||
{
|
|
||||||
if defined sz_#n
|
|
||||||
n dd sz_#n
|
|
||||||
end if
|
|
||||||
}
|
|
||||||
include '../../develop/libraries/TinyGL/asm_fork/export.inc'
|
|
||||||
dd 0,0
|
|
||||||
macro E_LIB n
|
|
||||||
{
|
|
||||||
if used n
|
|
||||||
sz_#n db `n,0
|
|
||||||
end if
|
|
||||||
}
|
|
||||||
include '../../develop/libraries/TinyGL/asm_fork/export.inc'
|
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
import_libini:
|
import_libini:
|
||||||
@@ -1367,9 +1191,9 @@ white_light dd 0.8, 0.8, 0.8, 1.0 ;
|
|||||||
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ; <20><>ࠬ<EFBFBD><E0A0AC><EFBFBD><EFBFBD> 䮭<><E4AEAD><EFBFBD><EFBFBD><EFBFBD> <20>ᢥ饭<E1A2A5><E9A5AD>
|
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ; <20><>ࠬ<EFBFBD><E0A0AC><EFBFBD><EFBFBD> 䮭<><E4AEAD><EFBFBD><EFBFBD><EFBFBD> <20>ᢥ饭<E1A2A5><E9A5AD>
|
||||||
|
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
capt db 'info 3ds <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 04.05.25',0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
capt db 'info 3ds <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 14.07.25',0
|
||||||
else ; Default to en_US
|
else ; Default to en_US
|
||||||
capt db 'info 3ds version 04.05.25',0 ;window caption
|
capt db 'info 3ds version 14.07.25',0 ;window caption
|
||||||
end if
|
end if
|
||||||
|
|
||||||
align 16
|
align 16
|
||||||
|
@@ -1,3 +1,7 @@
|
|||||||
|
; SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
; Info3ds_u - is a program for viewing the structure of *.3ds files
|
||||||
|
; Copyright (C) 2015-2025 KolibriOS team
|
||||||
|
|
||||||
use32
|
use32
|
||||||
org 0
|
org 0
|
||||||
db 'MENUET01' ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD><E1AFAE>塞<EFBFBD><EFA5AC><EFBFBD> 䠩<><E4A0A9> <20>ᥣ<EFBFBD><E1A5A3> 8 <20><><EFBFBD><EFBFBD>
|
db 'MENUET01' ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD><E1AFAE>塞<EFBFBD><EFA5AC><EFBFBD> 䠩<><E4A0A9> <20>ᥣ<EFBFBD><E1A5A3> 8 <20><><EFBFBD><EFBFBD>
|
||||||
@@ -12,6 +16,7 @@ include '../../develop/libraries/libs-dev/libimg/libimg.inc'
|
|||||||
include '../../load_img.inc'
|
include '../../load_img.inc'
|
||||||
include '../../load_lib.mac'
|
include '../../load_lib.mac'
|
||||||
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
|
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
|
||||||
|
include '../../develop/libraries/TinyGL/asm_fork/kosgl.inc'
|
||||||
include '../../develop/libraries/TinyGL/asm_fork/opengl_const.inc'
|
include '../../develop/libraries/TinyGL/asm_fork/opengl_const.inc'
|
||||||
include 'lang.inc' ; Language support for locales: ru_RU (CP866), en_US.
|
include 'lang.inc' ; Language support for locales: ru_RU (CP866), en_US.
|
||||||
include 'info_fun_float.inc'
|
include 'info_fun_float.inc'
|
||||||
@@ -21,8 +26,8 @@ include 'convert_stl_3ds.inc'
|
|||||||
|
|
||||||
3d_wnd_l equ 205 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> tinygl <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <><E1ABA5>
|
3d_wnd_l equ 205 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> tinygl <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <><E1ABA5>
|
||||||
3d_wnd_t equ 47 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> tinygl <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᢥ<><E1A2A5><EFBFBD>
|
3d_wnd_t equ 47 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> tinygl <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᢥ<><E1A2A5><EFBFBD>
|
||||||
3d_wnd_w equ 344
|
3d_wnd_w equ 345
|
||||||
3d_wnd_h equ 312
|
3d_wnd_h equ 384
|
||||||
|
|
||||||
@use_library mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
@use_library mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
||||||
|
|
||||||
@@ -43,13 +48,13 @@ list_offs_text equ 14+sizeof.obj_3d ;ᤢ
|
|||||||
include 'info_o3d.inc'
|
include 'info_o3d.inc'
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
|
fl180 dd 180.0
|
||||||
fl255 dd 255.0
|
fl255 dd 255.0
|
||||||
open_file_data dd 0 ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9><EFBFBD> 3ds
|
open_file_data dd 0 ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9><EFBFBD> 3ds
|
||||||
open_file_size dd 0 ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⮣<EFBFBD> 䠩<><E4A0A9>
|
open_file_size dd 0 ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⮣<EFBFBD> 䠩<><E4A0A9>
|
||||||
|
|
||||||
;
|
;
|
||||||
main_wnd_height equ 460 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>
|
main_wnd_height equ 460 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>
|
||||||
fn_toolbar db 'toolbar.png',0
|
|
||||||
IMAGE_TOOLBAR_ICON_SIZE equ 21*21*3
|
IMAGE_TOOLBAR_ICON_SIZE equ 21*21*3
|
||||||
image_data_toolbar dd 0
|
image_data_toolbar dd 0
|
||||||
;
|
;
|
||||||
@@ -140,17 +145,17 @@ start:
|
|||||||
mov eax,dword[icon_tl_sys]
|
mov eax,dword[icon_tl_sys]
|
||||||
mov dword[tree1.data_img_sys],eax
|
mov dword[tree1.data_img_sys],eax
|
||||||
|
|
||||||
load_image_file 'objects.png', icon_toolbar
|
include_image_file 'objects.png', icon_toolbar
|
||||||
mov eax,dword[icon_toolbar]
|
mov eax,dword[icon_toolbar]
|
||||||
mov dword[tree1.data_img],eax
|
mov dword[tree1.data_img],eax
|
||||||
|
|
||||||
load_image_file 'font8x9.bmp', image_data_toolbar
|
include_image_file '../../fs/kfar/trunk/font8x9.bmp', image_data_toolbar
|
||||||
stdcall [buf2d_create_f_img], buf_1,[image_data_toolbar] ;ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
stdcall [buf2d_create_f_img], buf_1,[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>
|
stdcall mem.Free,[image_data_toolbar] ;<3B><EFBFBD><E1A2AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
stdcall [buf2d_conv_24_to_8], buf_1,1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA7>筮<EFBFBD><E7ADAE><EFBFBD> 8 <20><><EFBFBD>
|
stdcall [buf2d_conv_24_to_8], buf_1,1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA7>筮<EFBFBD><E7ADAE><EFBFBD> 8 <20><><EFBFBD>
|
||||||
stdcall [buf2d_convert_text_matrix], buf_1
|
stdcall [buf2d_convert_text_matrix], buf_1
|
||||||
|
|
||||||
load_image_file fn_toolbar, image_data_toolbar
|
include_image_file 'toolbar.png', image_data_toolbar
|
||||||
|
|
||||||
;ࠡ<><E0A0A1><EFBFBD> <20> 䠩<><E4A0A9><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
;ࠡ<><E0A0A1><EFBFBD> <20> 䠩<><E4A0A9><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
copy_path ini_name,sys_path,file_name,0
|
copy_path ini_name,sys_path,file_name,0
|
||||||
@@ -223,7 +228,7 @@ start:
|
|||||||
mcall SF_SYSTEM_GET,SSF_TIME_COUNT
|
mcall SF_SYSTEM_GET,SSF_TIME_COUNT
|
||||||
mov [last_time],eax
|
mov [last_time],eax
|
||||||
|
|
||||||
stdcall [kosglMakeCurrent], 3d_wnd_l,3d_wnd_t,3d_wnd_w,3d_wnd_h,ctx1
|
stdcall [kosglMakeCurrent], 3d_wnd_l,3d_wnd_t,[buf_ogl.w],[buf_ogl.h],ctx1
|
||||||
stdcall [glEnable], GL_DEPTH_TEST
|
stdcall [glEnable], GL_DEPTH_TEST
|
||||||
stdcall [glEnable], GL_NORMALIZE ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><>ଠ<EFBFBD><E0ACA0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>稭<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>䠪⮢
|
stdcall [glEnable], GL_NORMALIZE ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><>ଠ<EFBFBD><E0ACA0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>稭<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>䠪⮢
|
||||||
stdcall [glClearColor], [color_bk+8],[color_bk+4],[color_bk],0.0
|
stdcall [glClearColor], [color_bk+8],[color_bk+4],[color_bk],0.0
|
||||||
@@ -231,7 +236,7 @@ start:
|
|||||||
call [gluNewQuadric]
|
call [gluNewQuadric]
|
||||||
mov [qObj],eax
|
mov [qObj],eax
|
||||||
|
|
||||||
mov eax,dword[ctx1] ;eax -> TinyGLContext.GLContext
|
mov eax,[ctx1.gl_context]
|
||||||
mov eax,[eax] ;eax -> ZBuffer
|
mov eax,[eax] ;eax -> ZBuffer
|
||||||
mov eax,[eax+ZBuffer.pbuf]
|
mov eax,[eax+ZBuffer.pbuf]
|
||||||
mov dword[buf_ogl],eax
|
mov dword[buf_ogl],eax
|
||||||
@@ -257,20 +262,20 @@ still:
|
|||||||
or eax,eax
|
or eax,eax
|
||||||
jz timer_funct
|
jz timer_funct
|
||||||
|
|
||||||
cmp al,1
|
cmp al,EV_REDRAW
|
||||||
jne @f
|
jne @f
|
||||||
call draw_window
|
call draw_window
|
||||||
jmp still
|
jmp still
|
||||||
@@:
|
@@:
|
||||||
cmp al,2
|
cmp al,EV_KEY
|
||||||
jz key
|
jz key
|
||||||
cmp al,3
|
cmp al,EV_BUTTON
|
||||||
jz button
|
jz button
|
||||||
cmp al,6
|
cmp al,EV_MOUSE
|
||||||
jne @f
|
jne @f
|
||||||
mcall SF_THREAD_INFO,procinfo,-1
|
mcall SF_THREAD_INFO,procinfo,-1
|
||||||
cmp ax,word[procinfo+4]
|
cmp ax,word[procinfo.window_stack_position]
|
||||||
jne @f ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>⨢<EFBFBD><E2A8A2>
|
jne @f ;window is not active
|
||||||
call mouse
|
call mouse
|
||||||
@@:
|
@@:
|
||||||
jmp still
|
jmp still
|
||||||
@@ -301,9 +306,9 @@ mouse:
|
|||||||
mov ebx,3d_wnd_l
|
mov ebx,3d_wnd_l
|
||||||
@@:
|
@@:
|
||||||
sub ebx,3d_wnd_l
|
sub ebx,3d_wnd_l
|
||||||
cmp ebx,3d_wnd_w
|
cmp ebx,[buf_ogl.w]
|
||||||
jle @f
|
jle @f
|
||||||
mov ebx,3d_wnd_w
|
mov ebx,[buf_ogl.w]
|
||||||
@@:
|
@@:
|
||||||
movsx eax,ax ;mouse.y
|
movsx eax,ax ;mouse.y
|
||||||
cmp eax,3d_wnd_t
|
cmp eax,3d_wnd_t
|
||||||
@@ -311,9 +316,9 @@ mouse:
|
|||||||
mov eax,3d_wnd_t
|
mov eax,3d_wnd_t
|
||||||
@@:
|
@@:
|
||||||
sub eax,3d_wnd_t
|
sub eax,3d_wnd_t
|
||||||
cmp eax,3d_wnd_h
|
cmp eax,[buf_ogl.h]
|
||||||
jle @f
|
jle @f
|
||||||
mov eax,3d_wnd_h
|
mov eax,[buf_ogl.h]
|
||||||
@@:
|
@@:
|
||||||
finit
|
finit
|
||||||
fild dword[mouse_y]
|
fild dword[mouse_y]
|
||||||
@@ -351,13 +356,13 @@ mouse:
|
|||||||
cmp ebx,3d_wnd_l
|
cmp ebx,3d_wnd_l
|
||||||
jl .end_d
|
jl .end_d
|
||||||
sub ebx,3d_wnd_l
|
sub ebx,3d_wnd_l
|
||||||
cmp ebx,3d_wnd_w
|
cmp ebx,[buf_ogl.w]
|
||||||
jg .end_d
|
jg .end_d
|
||||||
movsx eax,ax ;mouse.y
|
movsx eax,ax ;mouse.y
|
||||||
cmp eax,3d_wnd_t
|
cmp eax,3d_wnd_t
|
||||||
jl .end_d
|
jl .end_d
|
||||||
sub eax,3d_wnd_t
|
sub eax,3d_wnd_t
|
||||||
cmp eax,3d_wnd_h
|
cmp eax,[buf_ogl.h]
|
||||||
jg .end_d
|
jg .end_d
|
||||||
mov dword[mouse_drag],1
|
mov dword[mouse_drag],1
|
||||||
mov dword[mouse_x],ebx
|
mov dword[mouse_x],ebx
|
||||||
@@ -440,16 +445,7 @@ pushad
|
|||||||
or edx,0x33000000
|
or edx,0x33000000
|
||||||
mcall SF_CREATE_WINDOW, (20 shl 16)+560, (20 shl 16)+main_wnd_height,,, capt
|
mcall SF_CREATE_WINDOW, (20 shl 16)+560, (20 shl 16)+main_wnd_height,,, capt
|
||||||
|
|
||||||
mcall SF_THREAD_INFO,procinfo,-1
|
call OnResize
|
||||||
mov eax,dword[procinfo.box.height]
|
|
||||||
cmp eax,250
|
|
||||||
jge @f
|
|
||||||
mov eax,250
|
|
||||||
@@:
|
|
||||||
sub eax,30
|
|
||||||
sub eax,[tree1.box_top]
|
|
||||||
mov [tree1.box_height],eax
|
|
||||||
mov word[w_scr_t1.y_size],ax ;<3B><><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
|
|
||||||
stdcall [kmainmenu_draw], [main_menu]
|
stdcall [kmainmenu_draw], [main_menu]
|
||||||
|
|
||||||
@@ -493,6 +489,62 @@ pushad
|
|||||||
popad
|
popad
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
align 4
|
||||||
|
OnResize:
|
||||||
|
mcall SF_STYLE_SETTINGS,SSF_GET_SKIN_HEIGHT
|
||||||
|
push eax
|
||||||
|
mcall SF_THREAD_INFO,procinfo,-1
|
||||||
|
mov eax,[procinfo.box.height]
|
||||||
|
cmp eax,250
|
||||||
|
jge @f
|
||||||
|
mov eax,250
|
||||||
|
@@:
|
||||||
|
sub eax,[esp]
|
||||||
|
sub eax,5
|
||||||
|
sub eax,[tree1.box_top]
|
||||||
|
mov [tree1.box_height],eax
|
||||||
|
mov word[w_scr_t1.y_size],ax ;new scroll sizes
|
||||||
|
|
||||||
|
cmp [buf_ogl.h],eax
|
||||||
|
je @f
|
||||||
|
mov [buf_ogl.h],eax
|
||||||
|
mov dword[buf_ogl.w],0 ;reset width
|
||||||
|
@@:
|
||||||
|
pop eax
|
||||||
|
movzx eax,word[w_scr_t1.x_size]
|
||||||
|
add eax,[tree1.box_left]
|
||||||
|
add eax,[tree1.box_width]
|
||||||
|
add eax,15 ;5 px * 3 borders
|
||||||
|
sub eax,[procinfo.box.width]
|
||||||
|
neg eax
|
||||||
|
cmp eax,64
|
||||||
|
jge @f
|
||||||
|
mov eax,64
|
||||||
|
@@:
|
||||||
|
cmp [buf_ogl.w],eax
|
||||||
|
je .end
|
||||||
|
mov [buf_ogl.w],eax
|
||||||
|
fild dword[buf_ogl.w]
|
||||||
|
fld st0
|
||||||
|
fdiv dword[fl180]
|
||||||
|
fstp dword[angle_dxm]
|
||||||
|
fidiv dword[buf_ogl.h]
|
||||||
|
fstp dword[ratio]
|
||||||
|
stdcall [glViewport], 0,0, [buf_ogl.w], [buf_ogl.h]
|
||||||
|
|
||||||
|
mov eax,[ctx1.gl_context]
|
||||||
|
mov eax,[eax] ;eax -> ZBuffer
|
||||||
|
mov eax,[eax+ZBuffer.pbuf]
|
||||||
|
mov dword[buf_ogl],eax
|
||||||
|
|
||||||
|
stdcall [tl_node_get_data],tree1
|
||||||
|
or eax,eax
|
||||||
|
jz .end
|
||||||
|
add eax,list_offs_obj3d
|
||||||
|
stdcall draw_3d, eax
|
||||||
|
.end:
|
||||||
|
ret
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
key:
|
key:
|
||||||
mcall SF_GET_KEY
|
mcall SF_GET_KEY
|
||||||
@@ -1152,57 +1204,10 @@ l_libs_start:
|
|||||||
lib_2 l_libs lib_name_2, file_name, system_dir_2, import_box_lib
|
lib_2 l_libs lib_name_2, file_name, system_dir_2, import_box_lib
|
||||||
lib_3 l_libs lib_name_3, file_name, system_dir_3, import_buf2d
|
lib_3 l_libs lib_name_3, file_name, system_dir_3, import_buf2d
|
||||||
lib_4 l_libs lib_name_4, file_name, system_dir_4, import_libkmenu
|
lib_4 l_libs lib_name_4, file_name, system_dir_4, import_libkmenu
|
||||||
lib_5 l_libs lib_name_5, file_name, system_dir_5, import_lib_tinygl
|
lib_5 l_libs lib_name_5, file_name, system_dir_5, import_tinygl
|
||||||
lib_6 l_libs lib_name_6, file_name, system_dir_6, import_libini
|
lib_6 l_libs lib_name_6, file_name, system_dir_6, import_libini
|
||||||
l_libs_end:
|
l_libs_end:
|
||||||
|
|
||||||
align 4
|
|
||||||
import_libimg:
|
|
||||||
dd alib_init1
|
|
||||||
img_is_img dd aimg_is_img
|
|
||||||
img_info dd aimg_info
|
|
||||||
img_from_file dd aimg_from_file
|
|
||||||
img_to_file dd aimg_to_file
|
|
||||||
img_from_rgb dd aimg_from_rgb
|
|
||||||
img_to_rgb dd aimg_to_rgb
|
|
||||||
img_to_rgb2 dd aimg_to_rgb2
|
|
||||||
img_decode dd aimg_decode
|
|
||||||
img_encode dd aimg_encode
|
|
||||||
img_create dd aimg_create
|
|
||||||
img_destroy dd aimg_destroy
|
|
||||||
img_destroy_layer dd aimg_destroy_layer
|
|
||||||
img_count dd aimg_count
|
|
||||||
img_lock_bits dd aimg_lock_bits
|
|
||||||
img_unlock_bits dd aimg_unlock_bits
|
|
||||||
img_flip dd aimg_flip
|
|
||||||
img_flip_layer dd aimg_flip_layer
|
|
||||||
img_rotate dd aimg_rotate
|
|
||||||
img_rotate_layer dd aimg_rotate_layer
|
|
||||||
img_draw dd aimg_draw
|
|
||||||
|
|
||||||
dd 0,0
|
|
||||||
alib_init1 db 'lib_init',0
|
|
||||||
aimg_is_img db 'img_is_img',0 ;<3B><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> ᤥ<><E1A4A5><EFBFBD><EFBFBD> <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD>
|
|
||||||
aimg_info db 'img_info',0
|
|
||||||
aimg_from_file db 'img_from_file',0
|
|
||||||
aimg_to_file db 'img_to_file',0
|
|
||||||
aimg_from_rgb db 'img_from_rgb',0
|
|
||||||
aimg_to_rgb db 'img_to_rgb',0 ;<3B>८<EFBFBD>ࠧ<EFBFBD><E0A0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> RGB
|
|
||||||
aimg_to_rgb2 db 'img_to_rgb2',0
|
|
||||||
aimg_decode db 'img_decode',0 ;<3B><>⮬<EFBFBD><E2AEAC><EFBFBD><EFBFBD><EFBFBD>᪨ <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD> <20><>ଠ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᪨<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
aimg_encode db 'img_encode',0
|
|
||||||
aimg_create db 'img_create',0
|
|
||||||
aimg_destroy db 'img_destroy',0
|
|
||||||
aimg_destroy_layer db 'img_destroy_layer',0
|
|
||||||
aimg_count db 'img_count',0
|
|
||||||
aimg_lock_bits db 'img_lock_bits',0
|
|
||||||
aimg_unlock_bits db 'img_unlock_bits',0
|
|
||||||
aimg_flip db 'img_flip',0
|
|
||||||
aimg_flip_layer db 'img_flip_layer',0
|
|
||||||
aimg_rotate db 'img_rotate',0
|
|
||||||
aimg_rotate_layer db 'img_rotate_layer',0
|
|
||||||
aimg_draw db 'img_draw',0
|
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
import_proclib:
|
import_proclib:
|
||||||
OpenDialog_Init dd aOpenDialog_Init
|
OpenDialog_Init dd aOpenDialog_Init
|
||||||
@@ -1215,122 +1220,9 @@ dd 0,0
|
|||||||
aOpenDialog_Set_file_name db 'OpenDialog_set_file_name',0
|
aOpenDialog_Set_file_name db 'OpenDialog_set_file_name',0
|
||||||
aOpenDialog_Set_file_ext db 'OpenDialog_set_file_ext',0
|
aOpenDialog_Set_file_ext db 'OpenDialog_set_file_ext',0
|
||||||
|
|
||||||
align 4
|
include '../../develop/libraries/libs-dev/libimg/import.inc'
|
||||||
import_buf2d:
|
include '../../develop/libraries/box_lib/import.inc'
|
||||||
dd sz_init0
|
include '../../develop/libraries/buf2d/import.inc'
|
||||||
buf2d_create dd sz_buf2d_create
|
|
||||||
buf2d_create_f_img dd sz_buf2d_create_f_img
|
|
||||||
buf2d_clear dd sz_buf2d_clear
|
|
||||||
buf2d_draw dd sz_buf2d_draw
|
|
||||||
buf2d_delete dd sz_buf2d_delete
|
|
||||||
buf2d_resize dd sz_buf2d_resize
|
|
||||||
buf2d_line dd sz_buf2d_line
|
|
||||||
buf2d_rect_by_size dd sz_buf2d_rect_by_size
|
|
||||||
buf2d_filled_rect_by_size dd sz_buf2d_filled_rect_by_size
|
|
||||||
buf2d_circle dd sz_buf2d_circle
|
|
||||||
buf2d_img_hdiv2 dd sz_buf2d_img_hdiv2
|
|
||||||
buf2d_img_wdiv2 dd sz_buf2d_img_wdiv2
|
|
||||||
buf2d_conv_24_to_8 dd sz_buf2d_conv_24_to_8
|
|
||||||
buf2d_conv_24_to_32 dd sz_buf2d_conv_24_to_32
|
|
||||||
buf2d_bit_blt dd sz_buf2d_bit_blt
|
|
||||||
buf2d_bit_blt_transp dd sz_buf2d_bit_blt_transp
|
|
||||||
buf2d_bit_blt_alpha dd sz_buf2d_bit_blt_alpha
|
|
||||||
buf2d_convert_text_matrix dd sz_buf2d_convert_text_matrix
|
|
||||||
buf2d_draw_text dd sz_buf2d_draw_text
|
|
||||||
buf2d_crop_color dd sz_buf2d_crop_color
|
|
||||||
buf2d_offset_h dd sz_buf2d_offset_h
|
|
||||||
buf2d_set_pixel dd sz_buf2d_set_pixel
|
|
||||||
dd 0,0
|
|
||||||
sz_init0 db 'lib_init',0
|
|
||||||
sz_buf2d_create db 'buf2d_create',0
|
|
||||||
sz_buf2d_create_f_img db 'buf2d_create_f_img',0
|
|
||||||
sz_buf2d_clear db 'buf2d_clear',0
|
|
||||||
sz_buf2d_draw db 'buf2d_draw',0
|
|
||||||
sz_buf2d_delete db 'buf2d_delete',0
|
|
||||||
sz_buf2d_resize db 'buf2d_resize',0
|
|
||||||
sz_buf2d_line db 'buf2d_line',0
|
|
||||||
sz_buf2d_rect_by_size db 'buf2d_rect_by_size',0
|
|
||||||
sz_buf2d_filled_rect_by_size db 'buf2d_filled_rect_by_size',0
|
|
||||||
sz_buf2d_circle db 'buf2d_circle',0
|
|
||||||
sz_buf2d_img_hdiv2 db 'buf2d_img_hdiv2',0
|
|
||||||
sz_buf2d_img_wdiv2 db 'buf2d_img_wdiv2',0
|
|
||||||
sz_buf2d_conv_24_to_8 db 'buf2d_conv_24_to_8',0
|
|
||||||
sz_buf2d_conv_24_to_32 db 'buf2d_conv_24_to_32',0
|
|
||||||
sz_buf2d_bit_blt db 'buf2d_bit_blt',0
|
|
||||||
sz_buf2d_bit_blt_transp db 'buf2d_bit_blt_transp',0
|
|
||||||
sz_buf2d_bit_blt_alpha db 'buf2d_bit_blt_alpha',0
|
|
||||||
sz_buf2d_convert_text_matrix db 'buf2d_convert_text_matrix',0
|
|
||||||
sz_buf2d_draw_text db 'buf2d_draw_text',0
|
|
||||||
sz_buf2d_crop_color db 'buf2d_crop_color',0
|
|
||||||
sz_buf2d_offset_h db 'buf2d_offset_h',0
|
|
||||||
sz_buf2d_set_pixel db 'buf2d_set_pixel',0
|
|
||||||
|
|
||||||
align 4
|
|
||||||
import_box_lib:
|
|
||||||
dd sz_init1
|
|
||||||
edit_box_draw dd sz_edit_box_draw
|
|
||||||
edit_box_key dd sz_edit_box_key
|
|
||||||
edit_box_mouse dd sz_edit_box_mouse
|
|
||||||
edit_box_set_text dd sz_edit_box_set_text
|
|
||||||
scrollbar_ver_draw dd sz_scrollbar_ver_draw
|
|
||||||
scrollbar_hor_draw dd sz_scrollbar_hor_draw
|
|
||||||
|
|
||||||
tl_data_init dd sz_tl_data_init
|
|
||||||
tl_data_clear dd sz_tl_data_clear
|
|
||||||
tl_info_clear dd sz_tl_info_clear
|
|
||||||
tl_key dd sz_tl_key
|
|
||||||
tl_mouse dd sz_tl_mouse
|
|
||||||
tl_draw dd sz_tl_draw
|
|
||||||
tl_info_undo dd sz_tl_info_undo
|
|
||||||
tl_info_redo dd sz_tl_info_redo
|
|
||||||
tl_node_add dd sz_tl_node_add
|
|
||||||
tl_node_set_data dd sz_tl_node_set_data
|
|
||||||
tl_node_get_data dd sz_tl_node_get_data
|
|
||||||
tl_node_delete dd sz_tl_node_delete
|
|
||||||
tl_node_move_up dd sz_tl_node_move_up
|
|
||||||
tl_node_move_down dd sz_tl_node_move_down
|
|
||||||
tl_cur_beg dd sz_tl_cur_beg
|
|
||||||
tl_cur_next dd sz_tl_cur_next
|
|
||||||
tl_cur_perv dd sz_tl_cur_perv
|
|
||||||
tl_node_close_open dd sz_tl_node_close_open
|
|
||||||
tl_node_lev_inc dd sz_tl_node_lev_inc
|
|
||||||
tl_node_lev_dec dd sz_tl_node_lev_dec
|
|
||||||
tl_node_poi_get_info dd sz_tl_node_poi_get_info
|
|
||||||
tl_node_poi_get_next_info dd sz_tl_node_poi_get_next_info
|
|
||||||
tl_node_poi_get_data dd sz_tl_node_poi_get_data
|
|
||||||
|
|
||||||
dd 0,0
|
|
||||||
sz_init1 db 'lib_init',0
|
|
||||||
sz_edit_box_draw db 'edit_box_draw',0
|
|
||||||
sz_edit_box_key db 'edit_box_key',0
|
|
||||||
sz_edit_box_mouse db 'edit_box_mouse',0
|
|
||||||
sz_edit_box_set_text db 'edit_box_set_text',0
|
|
||||||
sz_scrollbar_ver_draw db 'scrollbar_v_draw',0
|
|
||||||
sz_scrollbar_hor_draw db 'scrollbar_h_draw',0
|
|
||||||
|
|
||||||
sz_tl_data_init db 'tl_data_init',0
|
|
||||||
sz_tl_data_clear db 'tl_data_clear',0
|
|
||||||
sz_tl_info_clear db 'tl_info_clear',0
|
|
||||||
sz_tl_key db 'tl_key',0
|
|
||||||
sz_tl_mouse db 'tl_mouse',0
|
|
||||||
sz_tl_draw db 'tl_draw',0
|
|
||||||
sz_tl_info_undo db 'tl_info_undo',0
|
|
||||||
sz_tl_info_redo db 'tl_info_redo',0
|
|
||||||
sz_tl_node_add db 'tl_node_add',0
|
|
||||||
sz_tl_node_set_data db 'tl_node_set_data',0
|
|
||||||
sz_tl_node_get_data db 'tl_node_get_data',0
|
|
||||||
sz_tl_node_delete db 'tl_node_delete',0
|
|
||||||
sz_tl_node_move_up db 'tl_node_move_up',0
|
|
||||||
sz_tl_node_move_down db 'tl_node_move_down',0
|
|
||||||
sz_tl_cur_beg db 'tl_cur_beg',0
|
|
||||||
sz_tl_cur_next db 'tl_cur_next',0
|
|
||||||
sz_tl_cur_perv db 'tl_cur_perv',0
|
|
||||||
sz_tl_node_close_open db 'tl_node_close_open',0
|
|
||||||
sz_tl_node_lev_inc db 'tl_node_lev_inc',0
|
|
||||||
sz_tl_node_lev_dec db 'tl_node_lev_dec',0
|
|
||||||
sz_tl_node_poi_get_info db 'tl_node_poi_get_info',0
|
|
||||||
sz_tl_node_poi_get_next_info db 'tl_node_poi_get_next_info',0
|
|
||||||
sz_tl_node_poi_get_data db 'tl_node_poi_get_data',0
|
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
import_libkmenu:
|
import_libkmenu:
|
||||||
@@ -1356,19 +1248,7 @@ dd 0,0
|
|||||||
akmenuitem_delete db 'kmenuitem_delete',0
|
akmenuitem_delete db 'kmenuitem_delete',0
|
||||||
akmenuitem_draw db 'kmenuitem_draw',0
|
akmenuitem_draw db 'kmenuitem_draw',0
|
||||||
|
|
||||||
align 4
|
include '../../develop/libraries/TinyGL/asm_fork/import.inc'
|
||||||
import_lib_tinygl:
|
|
||||||
macro E_LIB n
|
|
||||||
{
|
|
||||||
n dd sz_#n
|
|
||||||
}
|
|
||||||
include '../../develop/libraries/TinyGL/asm_fork/export.inc'
|
|
||||||
dd 0,0
|
|
||||||
macro E_LIB n
|
|
||||||
{
|
|
||||||
sz_#n db `n,0
|
|
||||||
}
|
|
||||||
include '../../develop/libraries/TinyGL/asm_fork/export.inc'
|
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
import_libini:
|
import_libini:
|
||||||
@@ -1427,14 +1307,14 @@ white_light dd 0.8, 0.8, 0.8, 1.0 ;
|
|||||||
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ; <20><>ࠬ<EFBFBD><E0A0AC><EFBFBD><EFBFBD> 䮭<><E4AEAD><EFBFBD><EFBFBD><EFBFBD> <20>ᢥ饭<E1A2A5><E9A5AD>
|
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ; <20><>ࠬ<EFBFBD><E0A0AC><EFBFBD><EFBFBD> 䮭<><E4AEAD><EFBFBD><EFBFBD><EFBFBD> <20>ᢥ饭<E1A2A5><E9A5AD>
|
||||||
|
|
||||||
if lang eq ru_RU
|
if lang eq ru_RU
|
||||||
capt db 'info 3ds [user] <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 14.04.25',0 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
capt db 'info 3ds [user] <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 14.07.25',0 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
else ; Default to en_US
|
else ; Default to en_US
|
||||||
capt db 'info 3ds [user] version 14.04.25',0 ; Window caption
|
capt db 'info 3ds [user] version 14.07.25',0 ; Window caption
|
||||||
end if
|
end if
|
||||||
|
|
||||||
align 16
|
align 16
|
||||||
i_end:
|
i_end:
|
||||||
ctx1 rb 28 ;sizeof.TinyGLContext = 28
|
ctx1 TinyGLContext
|
||||||
procinfo process_information
|
procinfo process_information
|
||||||
run_file_70 FileInfoBlock
|
run_file_70 FileInfoBlock
|
||||||
sc system_colors
|
sc system_colors
|
||||||
|
@@ -1,18 +1,19 @@
|
|||||||
;
|
;
|
||||||
; <EFBFBD> <EFBFBD>⮬ 䠩<EFBFBD><EFBFBD> ᮡ࠭<EFBFBD> <EFBFBD>㭪樨 <EFBFBD>㦭<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> ᮧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>
|
; This file contains functions needed to create
|
||||||
; ࠡ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD>न<EFBFBD><EFBFBD>⠬<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>設
|
; and operate a window with vertex coordinates
|
||||||
;
|
;
|
||||||
|
|
||||||
prop_wnd_width equ 340 ;<EFBFBD><EFBFBD>ਭ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⢠<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ꥪ<EFBFBD><EFBFBD>
|
3d_wnd_l equ 5 ;tinygl buffer left indent
|
||||||
prop_wnd_height equ 460 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⢠<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ꥪ<EFBFBD><EFBFBD>
|
3d_wnd_t equ 23 ;tinygl buffer top indent
|
||||||
3d_wnd_l equ 5 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> tinygl <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
|
3d_wnd_w equ 396
|
||||||
3d_wnd_t equ 23 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> tinygl <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᢥ<EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
3d_wnd_w equ 320
|
|
||||||
3d_wnd_h equ 240
|
3d_wnd_h equ 240
|
||||||
SIZE_ONE_FLOAT equ 14
|
SIZE_ONE_FLOAT equ 14
|
||||||
MAX_OBJECT_SIZE equ (4+SIZE_ONE_FLOAT*3+1)
|
MAX_OBJECT_SIZE equ (4+SIZE_ONE_FLOAT*3+1)
|
||||||
|
|
||||||
prop_wnd_run db 0 ;<EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> ⥬ <EFBFBD><EFBFBD><EFBFBD>-<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>᪠<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⢠<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
align 4
|
||||||
|
fl180 dd 180.0
|
||||||
|
|
||||||
|
prop_wnd_run db 0 ;variable that ensures that no more than 1 window with properties is launched at the same time
|
||||||
|
|
||||||
txt_q db '?',0
|
txt_q db '?',0
|
||||||
txt_space:
|
txt_space:
|
||||||
@@ -173,20 +174,23 @@ prop_still:
|
|||||||
jmp .end
|
jmp .end
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
cmp al,1 ;<EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
cmp al,EV_REDRAW
|
||||||
jne @f
|
jne @f
|
||||||
call prop_red_win
|
call prop_red_win
|
||||||
jmp .end
|
jmp .end
|
||||||
@@:
|
@@:
|
||||||
cmp al,2
|
cmp al,EV_KEY
|
||||||
jne @f
|
jne @f
|
||||||
call prop_key
|
call prop_key
|
||||||
jmp .end
|
jmp .end
|
||||||
@@:
|
@@:
|
||||||
cmp al,3
|
cmp al,EV_BUTTON
|
||||||
jz prop_button
|
jz prop_button
|
||||||
cmp al,6
|
cmp al,EV_MOUSE
|
||||||
jne @f
|
jne @f
|
||||||
|
mcall SF_THREAD_INFO,procinfo,-1
|
||||||
|
cmp ax,word[procinfo.window_stack_position]
|
||||||
|
jne @f ;window is not active
|
||||||
call prop_mouse
|
call prop_mouse
|
||||||
@@:
|
@@:
|
||||||
.end:
|
.end:
|
||||||
@@ -198,20 +202,65 @@ prop_red_win:
|
|||||||
pushad
|
pushad
|
||||||
mcall SF_REDRAW,SSF_BEGIN_DRAW
|
mcall SF_REDRAW,SSF_BEGIN_DRAW
|
||||||
|
|
||||||
xor eax,eax
|
mcall SF_STYLE_SETTINGS,SSF_GET_SKIN_HEIGHT
|
||||||
|
push eax
|
||||||
|
mcall SF_THREAD_INFO,procinfo,-1
|
||||||
|
cmp dword[procinfo.box.height],0
|
||||||
|
je .resize_end
|
||||||
|
mov eax,[procinfo.box.height]
|
||||||
|
sub eax,[esp]
|
||||||
|
sub eax,[tree3.box_top]
|
||||||
|
sub eax,5
|
||||||
|
cmp eax,48
|
||||||
|
jge @f
|
||||||
|
mov eax,48 ;min size
|
||||||
|
@@:
|
||||||
|
mov dword[tree3.box_height],eax
|
||||||
|
mov word[w_scr_t3.y_size],ax
|
||||||
|
mov ebx,[procinfo.box.width]
|
||||||
|
sub ebx,37
|
||||||
|
cmp ebx,240
|
||||||
|
jge @f
|
||||||
|
mov ebx,240
|
||||||
|
@@:
|
||||||
|
mov [tree3.box_width],ebx
|
||||||
|
add ebx,[tree3.box_left]
|
||||||
|
mov word[w_scr_t3.x_pos],bx
|
||||||
|
;todo: resize scroll slider
|
||||||
|
|
||||||
|
mov eax,[tree3.box_width]
|
||||||
|
add eax,16
|
||||||
|
cmp [buf_ogl.w],eax
|
||||||
|
je .resize_end
|
||||||
|
mov [buf_ogl.w],eax
|
||||||
|
fild dword[buf_ogl.w]
|
||||||
|
fld st0
|
||||||
|
fdiv dword[fl180]
|
||||||
|
fstp dword[angle_dxm]
|
||||||
|
fidiv dword[buf_ogl.h]
|
||||||
|
fstp dword[ratio]
|
||||||
|
stdcall [glViewport], 0,0, [buf_ogl.w], 3d_wnd_h
|
||||||
|
stdcall obj_set_sizes, o3d
|
||||||
|
.resize_end:
|
||||||
|
|
||||||
mov edi,dword[capt_p] ;children window caption
|
mov edi,dword[capt_p] ;children window caption
|
||||||
mov bx,word[procinfo.box.left]
|
mov bx,word[procinfo.box.left]
|
||||||
add bx,word[buf_0.l]
|
add bx,word[buf_0.l]
|
||||||
add bx,5 ;<EFBFBD><EFBFBD>ਭ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠬ<EFBFBD><EFBFBD>
|
add bx,5 ;side frame width
|
||||||
shl ebx,16
|
shl ebx,16
|
||||||
mov bx,prop_wnd_width
|
mov bx,word[tree3.box_width]
|
||||||
|
add bx,37
|
||||||
mov cx,word[procinfo.box.top]
|
mov cx,word[procinfo.box.top]
|
||||||
add cx,word[buf_0.t]
|
add cx,word[buf_0.t]
|
||||||
shl ecx,16
|
shl ecx,16
|
||||||
mov cx,prop_wnd_height
|
pop eax
|
||||||
|
add eax,[tree3.box_height]
|
||||||
|
add eax,[tree3.box_top]
|
||||||
|
add eax,5
|
||||||
|
mov cx,ax
|
||||||
mov edx,[sc.work]
|
mov edx,[sc.work]
|
||||||
or edx,0x33000000
|
or edx,0x33000000
|
||||||
int 0x40
|
mcall SF_CREATE_WINDOW
|
||||||
|
|
||||||
mov esi,[sc.work_button]
|
mov esi,[sc.work_button]
|
||||||
mcall SF_DEFINE_BUTTON, (5 shl 16)+20, (266 shl 16)+20, 0x40000003
|
mcall SF_DEFINE_BUTTON, (5 shl 16)+20, (266 shl 16)+20, 0x40000003
|
||||||
@@ -226,7 +275,7 @@ pushad
|
|||||||
int 0x40
|
int 0x40
|
||||||
|
|
||||||
mov dword[w_scr_t3.all_redraw],1
|
mov dword[w_scr_t3.all_redraw],1
|
||||||
stdcall [scrollbar_ver_draw],dword w_scr_t3
|
stdcall [scrollbar_v_draw], w_scr_t3
|
||||||
stdcall [tl_draw], tree3
|
stdcall [tl_draw], tree3
|
||||||
stdcall [edit_box_draw], edit1
|
stdcall [edit_box_draw], edit1
|
||||||
stdcall [edit_box_draw], edit2
|
stdcall [edit_box_draw], edit2
|
||||||
@@ -316,9 +365,9 @@ prop_mouse:
|
|||||||
mov ebx,3d_wnd_l
|
mov ebx,3d_wnd_l
|
||||||
@@:
|
@@:
|
||||||
sub ebx,3d_wnd_l
|
sub ebx,3d_wnd_l
|
||||||
cmp ebx,3d_wnd_w
|
cmp ebx,[buf_ogl.w]
|
||||||
jle @f
|
jle @f
|
||||||
mov ebx,3d_wnd_w
|
mov ebx,[buf_ogl.w]
|
||||||
@@:
|
@@:
|
||||||
and eax,0xffff ;mouse.y
|
and eax,0xffff ;mouse.y
|
||||||
cmp eax,3d_wnd_t
|
cmp eax,3d_wnd_t
|
||||||
@@ -334,14 +383,14 @@ prop_mouse:
|
|||||||
fild dword[mouse_y]
|
fild dword[mouse_y]
|
||||||
mov [mouse_y],eax
|
mov [mouse_y],eax
|
||||||
fisub dword[mouse_y]
|
fisub dword[mouse_y]
|
||||||
fdiv dword[angle_dxm] ;<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> y (<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>) <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> x
|
fdiv dword[angle_dym] ;if the cursor moves along the y axis
|
||||||
fadd dword[angle_x]
|
fadd dword[angle_x]
|
||||||
fstp dword[angle_x]
|
fstp dword[angle_x]
|
||||||
|
|
||||||
fild dword[mouse_x]
|
fild dword[mouse_x]
|
||||||
mov [mouse_x],ebx
|
mov [mouse_x],ebx
|
||||||
fisub dword[mouse_x]
|
fisub dword[mouse_x]
|
||||||
fdiv dword[angle_dym] ;<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> x (<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>) <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> y
|
fdiv dword[angle_dxm] ;if the cursor moves along the x axis
|
||||||
fadd dword[angle_y]
|
fadd dword[angle_y]
|
||||||
fstp dword[angle_y]
|
fstp dword[angle_y]
|
||||||
|
|
||||||
@@ -363,7 +412,7 @@ prop_mouse:
|
|||||||
cmp ebx,3d_wnd_l
|
cmp ebx,3d_wnd_l
|
||||||
jl .end_d
|
jl .end_d
|
||||||
sub ebx,3d_wnd_l
|
sub ebx,3d_wnd_l
|
||||||
cmp ebx,3d_wnd_w
|
cmp ebx,[buf_ogl.w]
|
||||||
jg .end_d
|
jg .end_d
|
||||||
and eax,0xffff ;mouse.y
|
and eax,0xffff ;mouse.y
|
||||||
cmp eax,3d_wnd_t
|
cmp eax,3d_wnd_t
|
||||||
@@ -811,7 +860,7 @@ capt_p dd 0
|
|||||||
|
|
||||||
;<EFBFBD><EFBFBD>ॢ<EFBFBD> <EFBFBD> <EFBFBD><EFBFBD>ꥪ⠬<EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD>짮<EFBFBD><EFBFBD>⥫<EFBFBD><EFBFBD> 䠩<EFBFBD><EFBFBD>
|
;<EFBFBD><EFBFBD>ॢ<EFBFBD> <EFBFBD> <EFBFBD><EFBFBD>ꥪ⠬<EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD>짮<EFBFBD><EFBFBD>⥫<EFBFBD><EFBFBD> 䠩<EFBFBD><EFBFBD>
|
||||||
tree3 tree_list MAX_OBJECT_SIZE,3, tl_key_no_edit+tl_list_box_mode,\
|
tree3 tree_list MAX_OBJECT_SIZE,3, tl_key_no_edit+tl_list_box_mode,\
|
||||||
16,16, 0xffffff,0xb0d0ff,0x400040, 5,290,303,140, 16, 4,0, el_focus,\
|
16,16, 0xffffff,0xb0d0ff,0x10400040, 5,290,380,140, 16, 4,0, el_focus,\
|
||||||
w_scr_t3,get_point_coords
|
w_scr_t3,get_point_coords
|
||||||
|
|
||||||
edit1 edit_box 80, 76, 269, 0xffd0d0, 0xff, 0x80ff, 0, 0x8000, 32, string1, mouse_dd, 0
|
edit1 edit_box 80, 76, 269, 0xffd0d0, 0xff, 0x80ff, 0, 0x8000, 32, string1, mouse_dd, 0
|
||||||
|
18
programs/develop/libraries/TinyGL/asm_fork/import.inc
Normal file
18
programs/develop/libraries/TinyGL/asm_fork/import.inc
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
align 4
|
||||||
|
import_tinygl:
|
||||||
|
|
||||||
|
macro E_LIB n
|
||||||
|
{
|
||||||
|
if defined sz_#n
|
||||||
|
n dd sz_#n
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
||||||
|
dd 0,0
|
||||||
|
macro E_LIB n
|
||||||
|
{
|
||||||
|
if used n
|
||||||
|
sz_#n db `n,0
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
117
programs/develop/libraries/box_lib/export.inc
Normal file
117
programs/develop/libraries/box_lib/export.inc
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
;
|
||||||
|
; Export functions
|
||||||
|
;
|
||||||
|
|
||||||
|
E_LIB lib_init
|
||||||
|
E_LIB version
|
||||||
|
|
||||||
|
E_LIB edit_box_draw
|
||||||
|
E_LIB edit_box_key
|
||||||
|
E_LIB edit_box_key_safe
|
||||||
|
E_LIB edit_box_mouse
|
||||||
|
E_LIB edit_box_set_text
|
||||||
|
E_LIB version_ed
|
||||||
|
|
||||||
|
E_LIB init_checkbox, init_checkbox2
|
||||||
|
E_LIB check_box_draw, check_box_draw2
|
||||||
|
E_LIB check_box_mouse, check_box_mouse2
|
||||||
|
E_LIB version_ch, version_ch2
|
||||||
|
|
||||||
|
E_LIB option_box_draw
|
||||||
|
E_LIB option_box_mouse
|
||||||
|
E_LIB version_op
|
||||||
|
|
||||||
|
E_LIB scrollbar_v_draw
|
||||||
|
E_LIB scrollbar_v_mouse
|
||||||
|
E_LIB scrollbar_h_draw
|
||||||
|
E_LIB scrollbar_h_mouse
|
||||||
|
E_LIB version_scrollbar
|
||||||
|
|
||||||
|
E_LIB dbutton_draw
|
||||||
|
E_LIB dbutton_mouse
|
||||||
|
E_LIB version_dbutton
|
||||||
|
|
||||||
|
E_LIB menu_bar_draw
|
||||||
|
E_LIB menu_bar_mouse
|
||||||
|
E_LIB menu_bar_activate
|
||||||
|
E_LIB version_menu_bar
|
||||||
|
|
||||||
|
E_LIB FileBrowser_draw
|
||||||
|
E_LIB FileBrowser_mouse
|
||||||
|
E_LIB FileBrowser_key
|
||||||
|
E_LIB version_FileBrowser
|
||||||
|
|
||||||
|
E_LIB tl_data_init
|
||||||
|
E_LIB tl_data_clear
|
||||||
|
E_LIB tl_info_clear
|
||||||
|
E_LIB tl_key
|
||||||
|
E_LIB tl_mouse
|
||||||
|
E_LIB tl_draw
|
||||||
|
E_LIB tl_info_undo
|
||||||
|
E_LIB tl_info_redo
|
||||||
|
E_LIB tl_node_add
|
||||||
|
E_LIB tl_node_set_data
|
||||||
|
E_LIB tl_node_get_data
|
||||||
|
E_LIB tl_node_delete
|
||||||
|
E_LIB tl_cur_beg
|
||||||
|
E_LIB tl_cur_next
|
||||||
|
E_LIB tl_cur_perv
|
||||||
|
E_LIB tl_node_close_open
|
||||||
|
E_LIB tl_node_lev_inc
|
||||||
|
E_LIB tl_node_lev_dec
|
||||||
|
E_LIB tl_node_move_up
|
||||||
|
E_LIB tl_node_move_down
|
||||||
|
E_LIB tl_node_poi_get_info
|
||||||
|
E_LIB tl_node_poi_get_next_info
|
||||||
|
E_LIB tl_node_poi_get_data
|
||||||
|
E_LIB tl_save_mem
|
||||||
|
E_LIB tl_load_mem
|
||||||
|
E_LIB tl_get_mem_size
|
||||||
|
E_LIB version_tree_list
|
||||||
|
|
||||||
|
E_LIB PathShow_prepare
|
||||||
|
E_LIB PathShow_draw
|
||||||
|
E_LIB version_PathShow
|
||||||
|
|
||||||
|
E_LIB ted_but_sumb_upper
|
||||||
|
E_LIB ted_but_sumb_lover
|
||||||
|
E_LIB ted_but_convert_by_table
|
||||||
|
E_LIB ted_can_save
|
||||||
|
E_LIB ted_clear
|
||||||
|
E_LIB ted_delete
|
||||||
|
E_LIB ted_draw
|
||||||
|
E_LIB ted_init
|
||||||
|
E_LIB ted_init_scroll_bars
|
||||||
|
E_LIB ted_init_syntax_file
|
||||||
|
E_LIB ted_is_select
|
||||||
|
E_LIB ted_key
|
||||||
|
E_LIB ted_mouse
|
||||||
|
E_LIB ted_open_file
|
||||||
|
E_LIB ted_save_file
|
||||||
|
E_LIB ted_text_add
|
||||||
|
E_LIB ted_but_select_word
|
||||||
|
E_LIB ted_but_cut
|
||||||
|
E_LIB ted_but_copy
|
||||||
|
E_LIB ted_but_paste
|
||||||
|
E_LIB ted_but_undo
|
||||||
|
E_LIB ted_but_redo
|
||||||
|
E_LIB ted_but_reverse
|
||||||
|
E_LIB ted_but_find
|
||||||
|
E_LIB ted_but_replace
|
||||||
|
E_LIB ted_text_colored
|
||||||
|
E_LIB ted_go_to_position
|
||||||
|
E_LIB version_text_edit
|
||||||
|
|
||||||
|
E_LIB frame_draw
|
||||||
|
E_LIB version_frame
|
||||||
|
|
||||||
|
E_LIB progressbar_draw
|
||||||
|
E_LIB progressbar_progress
|
||||||
|
|
||||||
|
E_LIB tooltip_init
|
||||||
|
E_LIB tooltip_delete
|
||||||
|
E_LIB tooltip_test_show
|
||||||
|
E_LIB tooltip_mouse
|
||||||
|
E_LIB get_font_size
|
||||||
|
|
||||||
|
purge E_LIB
|
24
programs/develop/libraries/box_lib/import.inc
Normal file
24
programs/develop/libraries/box_lib/import.inc
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
align 4
|
||||||
|
import_box_lib:
|
||||||
|
|
||||||
|
macro E_LIB n, lfn
|
||||||
|
{
|
||||||
|
if n eq lib_init
|
||||||
|
dd strz_#n
|
||||||
|
else if defined sz_#n
|
||||||
|
n dd sz_#n
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
||||||
|
dd 0,0
|
||||||
|
macro E_LIB n, lfn
|
||||||
|
{
|
||||||
|
if used n
|
||||||
|
if lfn eq
|
||||||
|
sz_#n db `n,0
|
||||||
|
else
|
||||||
|
sz_#n db `lfn,0
|
||||||
|
end if
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
48
programs/develop/libraries/buf2d/export.inc
Normal file
48
programs/develop/libraries/buf2d/export.inc
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
;
|
||||||
|
; Export functions
|
||||||
|
;
|
||||||
|
|
||||||
|
E_LIB lib_init
|
||||||
|
E_LIB buf2d_create
|
||||||
|
E_LIB buf2d_create_f_img
|
||||||
|
E_LIB buf2d_clear
|
||||||
|
E_LIB buf2d_draw
|
||||||
|
E_LIB buf2d_delete
|
||||||
|
E_LIB buf2d_resize
|
||||||
|
E_LIB buf2d_rotate
|
||||||
|
E_LIB buf2d_line
|
||||||
|
E_LIB buf2d_line_sm
|
||||||
|
E_LIB buf2d_rect_by_size
|
||||||
|
E_LIB buf2d_filled_rect_by_size
|
||||||
|
E_LIB buf2d_circle
|
||||||
|
E_LIB buf2d_img_hdiv2
|
||||||
|
E_LIB buf2d_img_wdiv2
|
||||||
|
E_LIB buf2d_conv_24_to_8
|
||||||
|
E_LIB buf2d_conv_24_to_32
|
||||||
|
E_LIB buf2d_bit_blt
|
||||||
|
E_LIB buf2d_bit_blt_transp
|
||||||
|
E_LIB buf2d_bit_blt_alpha
|
||||||
|
E_LIB buf2d_curve_bezier
|
||||||
|
E_LIB buf2d_convert_text_matrix
|
||||||
|
E_LIB buf2d_draw_text
|
||||||
|
E_LIB buf2d_crop_color
|
||||||
|
E_LIB buf2d_offset_h
|
||||||
|
E_LIB buf2d_flood_fill
|
||||||
|
E_LIB buf2d_set_pixel
|
||||||
|
E_LIB buf2d_get_pixel
|
||||||
|
E_LIB buf2d_flip_h
|
||||||
|
E_LIB buf2d_flip_v
|
||||||
|
E_LIB buf2d_filter_dither
|
||||||
|
|
||||||
|
E_LIB buf2d_vox_brush_create
|
||||||
|
E_LIB buf2d_vox_brush_delete
|
||||||
|
E_LIB buf2d_vox_obj_get_img_w_3g
|
||||||
|
E_LIB buf2d_vox_obj_get_img_h_3g
|
||||||
|
E_LIB buf2d_vox_obj_draw_1g
|
||||||
|
E_LIB buf2d_vox_obj_draw_3g
|
||||||
|
E_LIB buf2d_vox_obj_draw_3g_scaled
|
||||||
|
E_LIB buf2d_vox_obj_draw_pl
|
||||||
|
E_LIB buf2d_vox_obj_draw_pl_scaled
|
||||||
|
E_LIB buf2d_vox_obj_draw_3g_shadows
|
||||||
|
|
||||||
|
purge E_LIB
|
20
programs/develop/libraries/buf2d/import.inc
Normal file
20
programs/develop/libraries/buf2d/import.inc
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
align 4
|
||||||
|
import_buf2d:
|
||||||
|
|
||||||
|
macro E_LIB n
|
||||||
|
{
|
||||||
|
if n eq lib_init
|
||||||
|
dd strz_#n
|
||||||
|
else if defined sz_#n
|
||||||
|
n dd sz_#n
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
||||||
|
dd 0,0
|
||||||
|
macro E_LIB n
|
||||||
|
{
|
||||||
|
if used n
|
||||||
|
sz_#n db `n,0
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
34
programs/develop/libraries/libs-dev/libimg/export.inc
Normal file
34
programs/develop/libraries/libs-dev/libimg/export.inc
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
;
|
||||||
|
; Export functions
|
||||||
|
;
|
||||||
|
|
||||||
|
E_LIB lib_init
|
||||||
|
E_LIB version
|
||||||
|
E_LIB img_is_img
|
||||||
|
E_LIB img_info
|
||||||
|
E_LIB img_from_file
|
||||||
|
E_LIB img_to_file
|
||||||
|
E_LIB img_from_rgb
|
||||||
|
E_LIB img_to_rgb
|
||||||
|
E_LIB img_to_rgb2
|
||||||
|
E_LIB img_decode
|
||||||
|
E_LIB img_encode ;supported formats: PNG 24 32, BMP 24 32, PNM 1 8g 24
|
||||||
|
E_LIB img_create
|
||||||
|
E_LIB img_destroy
|
||||||
|
E_LIB img_destroy_layer
|
||||||
|
E_LIB img_count
|
||||||
|
E_LIB img_lock_bits
|
||||||
|
E_LIB img_unlock_bits
|
||||||
|
E_LIB img_flip
|
||||||
|
E_LIB img_flip_layer
|
||||||
|
E_LIB img_rotate
|
||||||
|
E_LIB img_rotate_layer
|
||||||
|
E_LIB img_draw
|
||||||
|
E_LIB img_scale
|
||||||
|
E_LIB img_get_scaled_size
|
||||||
|
E_LIB img_convert
|
||||||
|
E_LIB img_blend
|
||||||
|
E_LIB img_resize_data
|
||||||
|
E_LIB img_formats_table
|
||||||
|
|
||||||
|
purge E_LIB
|
20
programs/develop/libraries/libs-dev/libimg/import.inc
Normal file
20
programs/develop/libraries/libs-dev/libimg/import.inc
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
align 4
|
||||||
|
import_libimg:
|
||||||
|
|
||||||
|
macro E_LIB n
|
||||||
|
{
|
||||||
|
if n eq lib_init
|
||||||
|
dd strz_#n
|
||||||
|
else if defined sz_#n
|
||||||
|
n dd sz_#n
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
||||||
|
dd 0,0
|
||||||
|
macro E_LIB n
|
||||||
|
{
|
||||||
|
if used n
|
||||||
|
sz_#n db `n,0
|
||||||
|
end if
|
||||||
|
}
|
||||||
|
include 'export.inc'
|
@@ -23,6 +23,9 @@ library_fun_memory_free equ mem_free
|
|||||||
library_fun_memory_realloc equ mem_realloc
|
library_fun_memory_realloc equ mem_realloc
|
||||||
library_fun_dll_load equ dll_load
|
library_fun_dll_load equ dll_load
|
||||||
|
|
||||||
|
align 4
|
||||||
|
strz_lib_init db 'lib_init',0
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
arrea_xx dd 0
|
arrea_xx dd 0
|
||||||
file_name db '/sys/@notify',0
|
file_name db '/sys/@notify',0
|
||||||
@@ -214,7 +217,7 @@ end if
|
|||||||
jmp i_error
|
jmp i_error
|
||||||
align 4
|
align 4
|
||||||
i_begin:
|
i_begin:
|
||||||
import_boxlib myimport
|
import_some_library myimport
|
||||||
test eax,eax
|
test eax,eax
|
||||||
jz i_exit
|
jz i_exit
|
||||||
i_error:
|
i_error:
|
||||||
@@ -234,13 +237,13 @@ macro load_library library_name__, library_path__, system_path__, myimport, poin
|
|||||||
local i_begin
|
local i_begin
|
||||||
local i_error
|
local i_error
|
||||||
local i_exit
|
local i_exit
|
||||||
push ebx
|
|
||||||
if point_dir_name__ eq
|
if point_dir_name__ eq
|
||||||
copy_path library_name__, [32], library_path__,0
|
copy_path library_name__, [32], library_path__,0
|
||||||
else
|
else
|
||||||
;the macros making way /current path a program/ + name system library
|
;the macros making way /current path a program/ + name system library
|
||||||
copy_path library_name__, [32], library_path__,point_dir_name__
|
copy_path library_name__, [32], library_path__,point_dir_name__
|
||||||
end if
|
end if
|
||||||
|
push ebx
|
||||||
mcall SF_SYS_MISC,SSF_LOAD_DLL,library_path__ ; load of alternative
|
mcall SF_SYS_MISC,SSF_LOAD_DLL,library_path__ ; load of alternative
|
||||||
test eax,eax
|
test eax,eax
|
||||||
jnz i_begin
|
jnz i_begin
|
||||||
@@ -251,7 +254,7 @@ end if
|
|||||||
jmp i_error
|
jmp i_error
|
||||||
align 4
|
align 4
|
||||||
i_begin:
|
i_begin:
|
||||||
import_boxlib myimport
|
import_some_library myimport
|
||||||
test eax,eax
|
test eax,eax
|
||||||
jz i_exit
|
jz i_exit
|
||||||
i_error:
|
i_error:
|
||||||
@@ -309,7 +312,7 @@ align 4
|
|||||||
align 4
|
align 4
|
||||||
end_steep:
|
end_steep:
|
||||||
mov adr_load_lib,eax ;save adr lib in memory
|
mov adr_load_lib,eax ;save adr lib in memory
|
||||||
import_boxlib my_import
|
import_some_library my_import
|
||||||
test eax,eax
|
test eax,eax
|
||||||
jz cycle0n
|
jz cycle0n
|
||||||
or status_lib,2 ; status of code - enable error - import error
|
or status_lib,2 ; status of code - enable error - import error
|
||||||
@@ -387,7 +390,7 @@ align 4
|
|||||||
align 4
|
align 4
|
||||||
end_steep:
|
end_steep:
|
||||||
mov adr_load_lib,eax ;save adr lib in memory
|
mov adr_load_lib,eax ;save adr lib in memory
|
||||||
import_boxlib my_import
|
import_some_library my_import
|
||||||
test eax,eax
|
test eax,eax
|
||||||
jz cycle0n
|
jz cycle0n
|
||||||
or status_lib,2 ; status of code - enable error - import error
|
or status_lib,2 ; status of code - enable error - import error
|
||||||
@@ -451,7 +454,7 @@ pop ebx eax
|
|||||||
;output:
|
;output:
|
||||||
; eax - <20> 㤠筮 <20><> 0 <20><><EFBFBD> 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD> <20>㭪樨 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 㤠<><E3A4A0><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㧨<EFBFBD><E3A7A8>
|
; eax - <20> 㤠筮 <20><> 0 <20><><EFBFBD> 㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD> <20>㭪樨 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 㤠<><E3A4A0><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㧨<EFBFBD><E3A7A8>
|
||||||
; ebx - ࠧ<><E0A0A7>蠥<EFBFBD><E8A0A5><EFBFBD>
|
; ebx - ࠧ<><E0A0A7>蠥<EFBFBD><E8A0A5><EFBFBD>
|
||||||
macro import_boxlib myimport
|
macro import_some_library myimport
|
||||||
{
|
{
|
||||||
local import_loop
|
local import_loop
|
||||||
local import_find
|
local import_find
|
||||||
|
Reference in New Issue
Block a user