Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 8270 → Rev 8271

/programs/develop/libraries/buf2d/trunk/examples/build.bat
1,6 → 1,4
if not exist bin mkdir bin
@fasm.exe -m 16384 ..\buf2d.asm bin\buf2d.obj
@kpack bin\buf2d.obj
 
if not exist bin\font8x9.bmp @copy ..\..\..\..\..\fs\kfar\trunk\font8x9.bmp bin\font8x9.bmp
@copy foto.jpg bin\foto.jpg
/programs/develop/libraries/buf2d/trunk/examples/e6_vox_1g.asm
1,18 → 1,15
use32
org 0x0
org 0
db 'MENUET01' ;¨¤¥­â¨ä. ¨á¯®«­ï¥¬®£® ä ©«  ¢á¥£¤  8 ¡ ©â
dd 0x1
dd start
dd i_end ;à §¬¥à ¯à¨«®¦¥­¨ï
dd mem,stacktop
dd 0,cur_dir_path
dd 1,start,i_end,mem,stacktop,0,cur_dir_path
 
include '../../../../../macros.inc'
include '../../../../../proc32.inc'
include '../../../../../develop/libraries/box_lib/load_lib.mac'
include '../../../../../KOSfuncs.inc'
include '../../../../../load_lib.mac'
include '../../../../../dll.inc'
 
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc, 0 ;dll.Load
@use_library mem.Alloc,mem.Free,mem.ReAlloc, 0 ;dll.Load
 
struct FileInfoBlock
Function dd ?
60,12 → 57,11
 
align 4
start:
load_library vectors_name, cur_dir_path, library_path, system_path, \
err_message_found_lib, head_f_l, import_buf2d_lib, err_message_import, head_f_i
load_library name_buf2d, library_path, system_path, import_buf2d_lib
cmp eax,-1
jz button.exit
 
mcall 40,0x27
mcall SF_SET_EVENTS_MASK,0x27
stdcall [buf2d_create], buf_0 ;ᮧ¤ ¥¬ ¡ãä¥à
stdcall [buf2d_create], buf_z
 
72,7 → 68,7
stdcall mem.Alloc,max_open_file_size
mov dword[open_file_vox],eax
 
copy_path f_name,[32],file_name,0x0
copy_path f_name,[32],file_name,0
 
mov eax,70 ;70-ï äã­ªæ¨ï à ¡®â  á ä ©« ¬¨
mov [run_file_70.Function], 0
99,7 → 95,7
 
align 4
still:
mcall 10
mcall SF_WAIT_EVENT
cmp al,1 ;¨§¬¥­¨«®áì ¯®«®¦¥­¨¥ ®ª­ 
jz red_win
cmp al,2
111,20 → 107,20
align 4
draw_window:
pushad
mcall 12,1
mcall SF_REDRAW,SSF_BEGIN_DRAW
 
mov edx,0x33000000
mcall 0,(50 shl 16)+330,(30 shl 16)+295,,,caption
mcall SF_CREATE_WINDOW,(50 shl 16)+330,(30 shl 16)+295,,,caption
 
stdcall [buf2d_draw], buf_0
 
mcall 12,2
mcall SF_REDRAW,SSF_END_DRAW
popad
ret
 
align 4
key:
mcall 2
mcall SF_GET_KEY
 
cmp ah,27 ;Esc
je button.exit
133,7 → 129,7
 
align 4
button:
mcall 17 ;¯®«ãç¨âì ª®¤ ­ ¦ â®© ª­®¯ª¨
mcall SF_GET_BUTTON
cmp ah,1
jne still
.exit:
140,7 → 136,7
stdcall [buf2d_delete],buf_0 ;㤠«ï¥¬ ¡ãä¥à
stdcall [buf2d_delete],buf_z
stdcall mem.Free,[open_file_vox]
mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
mcall SF_TERMINATE_PROCESS
 
caption db 'Test buf2d library, [Esc] - exit',0
 
206,16 → 202,11
 
;--------------------------------------------------
system_path db '/sys/lib/'
vectors_name db 'buf2d.obj',0
err_message_found_lib db 'Sorry I cannot load library buf2d.obj',0
head_f_i:
head_f_l db 'System error',0
err_message_import db 'Error on load import library buf2d.obj',0
name_buf2d db 'buf2d.obj',0
;--------------------------------------------------
 
align 16
i_end: ;ª®­¥æ ª®¤ 
rb 1024
stacktop:
file_name:
rb 4096
cur_dir_path:
222,5 → 213,7
rb 4096
library_path:
rb 4096
rb 1024
stacktop:
mem:
 
/programs/develop/libraries/buf2d/trunk/examples/e7_vox_3g.asm
1,18 → 1,15
use32
org 0x0
org 0
db 'MENUET01' ;¨¤¥­â¨ä. ¨á¯®«­ï¥¬®£® ä ©«  ¢á¥£¤  8 ¡ ©â
dd 0x1
dd start
dd i_end ;à §¬¥à ¯à¨«®¦¥­¨ï
dd mem,stacktop
dd 0,cur_dir_path
dd 1,start,i_end,mem,stacktop,0,cur_dir_path
 
include '../../../../../macros.inc'
include '../../../../../proc32.inc'
include '../../../../../develop/libraries/box_lib/load_lib.mac'
include '../../../../../KOSfuncs.inc'
include '../../../../../load_lib.mac'
include '../../../../../dll.inc'
 
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc, 0 ;dll.Load
@use_library mem.Alloc,mem.Free,mem.ReAlloc, 0 ;dll.Load
 
struct FileInfoBlock
Function dd ?
61,12 → 58,11
 
align 4
start:
load_library vectors_name, cur_dir_path, library_path, system_path, \
err_message_found_lib, head_f_l, import_buf2d_lib, err_message_import, head_f_i
load_library name_buf2d, library_path, system_path, import_buf2d_lib
cmp eax,-1
jz button.exit
 
mcall 40,0x27
mcall SF_SET_EVENTS_MASK,0x27
stdcall [buf2d_create], buf_0 ;ᮧ¤ ¥¬ ¡ãä¥à
stdcall [buf2d_create], buf_z
stdcall [buf2d_vox_brush_create], buf_vox, vox_6_7_z ;ᮧ¤ ¥¬ ¢®ªá¥«ì­ãî ª¨áâì
74,7 → 70,7
stdcall mem.Alloc,max_open_file_size
mov dword[open_file_vox],eax
 
copy_path f_name,[32],file_name,0x0
copy_path f_name,[32],file_name,0
 
mov eax,70 ;70-ï äã­ªæ¨ï à ¡®â  á ä ©« ¬¨
mov [run_file_70.Function], 0
105,7 → 101,7
 
align 4
still:
mcall 10
mcall SF_WAIT_EVENT
cmp al,1 ;¨§¬¥­¨«®áì ¯®«®¦¥­¨¥ ®ª­ 
jz red_win
cmp al,2
117,20 → 113,20
align 4
draw_window:
pushad
mcall 12,1
mcall SF_REDRAW,SSF_BEGIN_DRAW
 
mov edx,0x33000000
mcall 0,(50 shl 16)+410,(30 shl 16)+480,,,caption
mcall SF_CREATE_WINDOW,(50 shl 16)+410,(30 shl 16)+480,,,caption
 
stdcall [buf2d_draw], buf_0
 
mcall 12,2
mcall SF_REDRAW,SSF_END_DRAW
popad
ret
 
align 4
key:
mcall 2
mcall SF_GET_KEY
 
cmp ah,27 ;Esc
je button.exit
139,7 → 135,7
 
align 4
button:
mcall 17 ;¯®«ãç¨âì ª®¤ ­ ¦ â®© ª­®¯ª¨
mcall SF_GET_BUTTON
cmp ah,1
jne still
.exit:
147,7 → 143,7
stdcall [buf2d_delete],buf_z
stdcall [buf2d_vox_brush_delete],buf_vox
stdcall mem.Free,[open_file_vox]
mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
mcall SF_TERMINATE_PROCESS
 
caption db 'Test buf2d library, [Esc] - exit',0
 
229,16 → 225,11
 
;--------------------------------------------------
system_path db '/sys/lib/'
vectors_name db 'buf2d.obj',0
err_message_found_lib db 'Sorry I cannot load library buf2d.obj',0
head_f_i:
head_f_l db 'System error',0
err_message_import db 'Error on load import library buf2d.obj',0
name_buf2d db 'buf2d.obj',0
;--------------------------------------------------
 
align 16
i_end: ;ª®­¥æ ª®¤ 
rb 1024
stacktop:
file_name:
rb 4096
cur_dir_path:
245,5 → 236,7
rb 4096
library_path:
rb 4096
rb 1024
stacktop:
mem:
 
/programs/develop/libraries/buf2d/trunk/examples/e8_filters.asm
1,18 → 1,15
use32
org 0x0
org 0
db 'MENUET01' ;¨¤¥­â¨ä. ¨á¯®«­ï¥¬®£® ä ©«  ¢á¥£¤  8 ¡ ©â
dd 0x1
dd start
dd i_end ;à §¬¥à ¯à¨«®¦¥­¨ï
dd mem,stacktop
dd 0,sys_path
dd 1,start,i_end,mem,stacktop,0,sys_path
 
include '../../../../../macros.inc'
include '../../../../../proc32.inc'
include '../../../../../develop/libraries/box_lib/load_lib.mac'
include '../../../../../KOSfuncs.inc'
include '../../../../../load_lib.mac'
include '../../../../../dll.inc'
 
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc, dll.Load
@use_library mem.Alloc,mem.Free,mem.ReAlloc, dll.Load
 
struct FileInfoBlock
Function dd ?
46,9 → 43,9
db 0
@@:
;32 - áâ ­¤ àâ­ë©  ¤à¥á ¯® ª®â®à®¬ã ¤®«¦¥­ ¡ëâì ¡ãä¥à á á¨á⥬­ë¬ ¯ã⥬
copy_path .path_str,[32],file_name,0x0
copy_path .path_str,[32],file_name,0
else
copy_path path,[32],file_name,0x0 ;ä®à¬¨à㥬 ¯®«­ë© ¯ãâì ª ä ©«ã ¨§®¡à ¦¥­¨ï, ¯®¤à §ã¬¥¢ ¥¬ çâ® ®­ ¢ ®¤­®© ¯ ¯ª¥ á ¯à®£à ¬¬®©
copy_path path,[32],file_name,0 ;ä®à¬¨à㥬 ¯®«­ë© ¯ãâì ª ä ©«ã ¨§®¡à ¦¥­¨ï, ¯®¤à §ã¬¥¢ ¥¬ çâ® ®­ ¢ ®¤­®© ¯ ¯ª¥ á ¯à®£à ¬¬®©
end if
 
stdcall mem.Alloc, dword size ;¢ë¤¥«ï¥¬ ¯ ¬ïâì ¤«ï ¨§®¡à ¦¥­¨ï
67,12 → 64,12
cmp ebx,0xffffffff
je @f
;®¯à¥¤¥«ï¥¬ ¢¨¤ ¨§®¡à ¦¥­¨ï ¨ ¯¥à¥¢®¤¨¬ ¥£® ¢® ¢à¥¬¥­­ë© ¡ãä¥à image_data
stdcall dword[img_decode], dword[buf],ebx,0
mov dword[image_data],eax
stdcall [img_decode], [buf],ebx,0
mov [image_data],eax
;¯à¥®¡à §ã¥¬ ¨§®¡à ¦¥­¨¥ ª ä®à¬ âã rgb
stdcall dword[img_to_rgb2], dword[image_data],dword[buf]
stdcall [img_to_rgb2], [image_data],[buf]
;㤠«ï¥¬ ¢à¥¬¥­­ë© ¡ãä¥à image_data
stdcall dword[img_destroy], dword[image_data]
stdcall [img_destroy], [image_data]
@@:
}
 
84,16 → 81,16
mov ebp,lib0
cmp dword [ebp+ll_struc_size-4],0
jz @f
mcall -1 ;exit not correct
mcall SF_TERMINATE_PROCESS
@@:
mov ebp,lib1
cmp dword [ebp+ll_struc_size-4],0
jz @f
mcall -1 ;exit not correct
mcall SF_TERMINATE_PROCESS
@@:
 
mcall 40,0x27
mcall 48,3,sc,sizeof.system_colors ;¯®«ãç ¥¬ á¨á⥬­ë¥ 梥â 
mcall SF_SET_EVENTS_MASK,0x27
mcall SF_STYLE_SETTINGS,SSF_GET_COLORS,sc,sizeof.system_colors ;¯®«ãç ¥¬ á¨á⥬­ë¥ 梥â 
 
load_image_file 'img1.png',image_data_rgb, IMAGE_FILE1_SIZE
stdcall [buf2d_create_f_img], buf_0,[image_data_rgb] ;ᮧ¤ ¥¬ ¡ãä¥à
110,13 → 107,13
 
align 4
still: ;£« ¢­ë© 横«
mcall 10
mcall SF_WAIT_EVENT
 
cmp al,0x1 ;¨§¬¥­¨«®áì ¯®«®¦¥­¨¥ ®ª­ 
cmp al,1 ;¨§¬¥­¨«®áì ¯®«®¦¥­¨¥ ®ª­ 
jz red_win
cmp al,0x2
cmp al,2
jz key
cmp al,0x3
cmp al,3
jz button
 
jmp still
124,7 → 121,7
align 4
key:
push eax ebx
mcall 2
mcall SF_GET_KEY
;...
pop ebx eax
jmp still
133,42 → 130,35
align 4
draw_window:
pushad
mcall 12,1
mcall SF_REDRAW,SSF_BEGIN_DRAW
 
mov edx,[sc.work]
or edx,0x33000000
mcall 0,(20 shl 16)+670,(20 shl 16)+520,,,caption ;ᮧ¤ ­¨¥ ®ª­ 
mcall SF_CREATE_WINDOW,(20 shl 16)+670,(20 shl 16)+520,,,caption ;ᮧ¤ ­¨¥ ®ª­ 
 
stdcall [buf2d_draw], buf_0
stdcall [buf2d_draw], buf_1
stdcall [buf2d_draw], buf_2
mcall 12,2
mcall SF_REDRAW,SSF_END_DRAW
popad
ret
 
head_f_i:
head_f_l db '‘¨á⥬­ ï ®è¨¡ª ',0
 
system_dir0 db '/sys/lib/'
name_buf2d db 'buf2d.obj',0
err_message_found_lib0 db '¥ 㤠«®áì ­ ©â¨ ¡¨¡«¨®â¥ªã buf2d.obj',0
err_message_import0 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ buf2d.obj',0
 
system_dir1 db '/sys/lib/'
name_libimg db 'libimg.obj',0
err_message_found_lib1 db '¥ 㤠«®áì ­ ©â¨ ¡¨¡«¨®â¥ªã libimg.obj',0
err_message_import1 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ libimg.obj',0
 
;library structures
l_libs_start:
lib0 l_libs name_buf2d, sys_path, file_name, system_dir0, err_message_found_lib0, head_f_l, import_buf2d_lib, err_message_import0, head_f_i
lib1 l_libs name_libimg, sys_path, file_name, system_dir1, err_message_found_lib1, head_f_l, import_libimg, err_message_import1, head_f_i
lib0 l_libs name_buf2d, file_name, system_dir0, import_buf2d_lib
lib1 l_libs name_libimg, file_name, system_dir1, import_libimg
load_lib_end:
 
align 4
button:
mcall 17 ;¯®«ãç¨âì ª®¤ ­ ¦ â®© ª­®¯ª¨
mcall SF_GET_BUTTON
cmp ah,1
jne still
.exit:
175,7 → 165,7
stdcall [buf2d_delete],buf_0 ;㤠«ï¥¬ ¡ãä¥à
stdcall [buf2d_delete],buf_1 ;㤠«ï¥¬ ¡ãä¥à
stdcall [buf2d_delete],buf_2 ;㤠«ï¥¬ ¡ãä¥à
mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
mcall SF_TERMINATE_PROCESS
 
image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ­¨ï ª à⨭ª¨ äã­ªæ¨ï¬¨ libimg
image_data_gray dd 0 ;¯ ¬ïâì á ¯à¥®¡à §®¢ ­­ë¬ ¨§®¡à ¦¥­¨¥¬ ¢ ä®à¬ â¥ 8-bit
183,7 → 173,7
image_data_foto dd 0
 
run_file_70 FileInfoBlock
caption db 'Draw images 13.09.11',0 ;¯®¤¯¨áì ®ª­ 
caption db 'Draw images 28.11.20',0 ;¯®¤¯¨áì ®ª­ 
sc system_colors ;á¨á⥬­ë¥ 梥â 
 
align 4
281,9 → 271,8
sz_buf2d_delete db 'buf2d_delete',0
sz_buf2d_filter_dither db 'buf2d_filter_dither',0
 
align 16
i_end:
rb 1024
stacktop:
sys_path rb 4096
file_name:
rb 4096
293,4 → 282,6
rb 4096
filename_area:
rb 256
rb 1024
stacktop:
mem: