Subversion Repositories Kolibri OS

Rev

Rev 3138 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3138 Rev 8271
1
use32
1
use32
2
	org 0x0
2
	org 0
3
	db 'MENUET01' ;¨¤¥­â¨ä. ¨á¯®«­ï¥¬®£® ä ©«  ¢á¥£¤  8 ¡ ©â
3
	db 'MENUET01' ;¨¤¥­â¨ä. ¨á¯®«­ï¥¬®£® ä ©«  ¢á¥£¤  8 ¡ ©â
4
	dd 0x1
-
 
5
	dd start
-
 
6
	dd i_end ;à §¬¥à ¯à¨«®¦¥­¨ï
-
 
7
	dd mem,stacktop
4
	dd 1,start,i_end,mem,stacktop,0,sys_path
8
	dd 0,sys_path
-
 
9
 
5
 
10
include '../../../../../macros.inc'
6
include '../../../../../macros.inc'
11
include '../../../../../proc32.inc'
7
include '../../../../../proc32.inc'
-
 
8
include '../../../../../KOSfuncs.inc'
12
include '../../../../../develop/libraries/box_lib/load_lib.mac'
9
include '../../../../../load_lib.mac'
13
include '../../../../../dll.inc'
10
include '../../../../../dll.inc'
14
 
11
 
15
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc, dll.Load
12
@use_library mem.Alloc,mem.Free,mem.ReAlloc, dll.Load
16
 
13
 
17
struct FileInfoBlock
14
struct FileInfoBlock
18
	Function dd ?
15
	Function dd ?
19
	Position dd ?
16
	Position dd ?
20
	Flags	 dd ?
17
	Flags	 dd ?
21
	Count	 dd ?
18
	Count	 dd ?
22
	Buffer	 dd ?
19
	Buffer	 dd ?
23
		db ?
20
		db ?
24
	FileName dd ?
21
	FileName dd ?
25
ends
22
ends
26
 
23
 
27
IMAGE_FILE1_SIZE equ 200*186*3 ;à §¬¥à ä ©«  á ¨§®¡à ¦¥­¨¥¬ 200 x 100
24
IMAGE_FILE1_SIZE equ 200*186*3 ;à §¬¥à ä ©«  á ¨§®¡à ¦¥­¨¥¬ 200 x 100
28
 
25
 
29
BUF_STRUCT_SIZE equ 21
26
BUF_STRUCT_SIZE equ 21
30
buf2d_data equ dword[edi] ;¤ ­­ë¥ ¡ãä¥à  ¨§®¡à ¦¥­¨ï
27
buf2d_data equ dword[edi] ;¤ ­­ë¥ ¡ãä¥à  ¨§®¡à ¦¥­¨ï
31
buf2d_w equ dword[edi+8] ;è¨à¨­  ¡ãä¥à 
28
buf2d_w equ dword[edi+8] ;è¨à¨­  ¡ãä¥à 
32
buf2d_h equ dword[edi+12] ;¢ëá®â  ¡ãä¥à 
29
buf2d_h equ dword[edi+12] ;¢ëá®â  ¡ãä¥à 
33
buf2d_l equ word[edi+4]
30
buf2d_l equ word[edi+4]
34
buf2d_t equ word[edi+6] ;®âáâ㯠ᢥàåã
31
buf2d_t equ word[edi+6] ;®âáâ㯠ᢥàåã
35
buf2d_size_lt equ dword[edi+4] ;®âáâ㯠᫥¢  ¨ á¯à ¢  ¤«ï ¡ãä¥à 
32
buf2d_size_lt equ dword[edi+4] ;®âáâ㯠᫥¢  ¨ á¯à ¢  ¤«ï ¡ãä¥à 
36
buf2d_color equ dword[edi+16] ;梥â ä®­  ¡ãä¥à 
33
buf2d_color equ dword[edi+16] ;梥â ä®­  ¡ãä¥à 
37
buf2d_bits equ byte[edi+20] ;ª®«¨ç¥á⢮ ¡¨â ¢ 1-© â®çª¥ ¨§®¡à ¦¥­¨ï
34
buf2d_bits equ byte[edi+20] ;ª®«¨ç¥á⢮ ¡¨â ¢ 1-© â®çª¥ ¨§®¡à ¦¥­¨ï
38
vox_offs_tree_table equ 4
35
vox_offs_tree_table equ 4
39
 
36
 
40
macro load_image_file path,buf,size { ;¬ ªà®á ¤«ï § £à㧪¨ ¨§®¡à ¦¥­¨©
37
macro load_image_file path,buf,size { ;¬ ªà®á ¤«ï § £à㧪¨ ¨§®¡à ¦¥­¨©
41
	;path - ¬®¦¥â ¡ëâì ¯¥à¥¬¥­­®© ¨«¨ áâப®¢ë¬ ¯ à ¬¥â஬
38
	;path - ¬®¦¥â ¡ëâì ¯¥à¥¬¥­­®© ¨«¨ áâப®¢ë¬ ¯ à ¬¥â஬
42
	if path eqtype '' ;¯à®¢¥à塞 § ¤ ­ «¨ áâப®© ¯ à ¬¥âà path
39
	if path eqtype '' ;¯à®¢¥à塞 § ¤ ­ «¨ áâப®© ¯ à ¬¥âà path
43
		jmp @f
40
		jmp @f
44
			local .path_str
41
			local .path_str
45
			.path_str db path ;ä®à¬¨à㥬 «®ª «ì­ãî ¯¥à¥¬¥­­ãî
42
			.path_str db path ;ä®à¬¨à㥬 «®ª «ì­ãî ¯¥à¥¬¥­­ãî
46
			db 0
43
			db 0
47
		@@:
44
		@@:
48
		;32 - áâ ­¤ àâ­ë©  ¤à¥á ¯® ª®â®à®¬ã ¤®«¦¥­ ¡ëâì ¡ãä¥à á á¨á⥬­ë¬ ¯ã⥬
45
		;32 - áâ ­¤ àâ­ë©  ¤à¥á ¯® ª®â®à®¬ã ¤®«¦¥­ ¡ëâì ¡ãä¥à á á¨á⥬­ë¬ ¯ã⥬
49
		copy_path .path_str,[32],file_name,0x0
46
		copy_path .path_str,[32],file_name,0
50
	else
47
	else
51
		copy_path path,[32],file_name,0x0 ;ä®à¬¨à㥬 ¯®«­ë© ¯ãâì ª ä ©«ã ¨§®¡à ¦¥­¨ï, ¯®¤à §ã¬¥¢ ¥¬ çâ® ®­ ¢ ®¤­®© ¯ ¯ª¥ á ¯à®£à ¬¬®©
48
		copy_path path,[32],file_name,0 ;ä®à¬¨à㥬 ¯®«­ë© ¯ãâì ª ä ©«ã ¨§®¡à ¦¥­¨ï, ¯®¤à §ã¬¥¢ ¥¬ çâ® ®­ ¢ ®¤­®© ¯ ¯ª¥ á ¯à®£à ¬¬®©
52
	end if
49
	end if
53
 
50
 
54
	stdcall mem.Alloc, dword size ;¢ë¤¥«ï¥¬ ¯ ¬ïâì ¤«ï ¨§®¡à ¦¥­¨ï
51
	stdcall mem.Alloc, dword size ;¢ë¤¥«ï¥¬ ¯ ¬ïâì ¤«ï ¨§®¡à ¦¥­¨ï
55
	mov [buf],eax
52
	mov [buf],eax
56
 
53
 
57
	mov eax,70 ;70-ï äã­ªæ¨ï à ¡®â  á ä ©« ¬¨
54
	mov eax,70 ;70-ï äã­ªæ¨ï à ¡®â  á ä ©« ¬¨
58
	mov [run_file_70.Function], 0
55
	mov [run_file_70.Function], 0
59
	mov [run_file_70.Position], 0
56
	mov [run_file_70.Position], 0
60
	mov [run_file_70.Flags], 0
57
	mov [run_file_70.Flags], 0
61
	mov [run_file_70.Count], dword size
58
	mov [run_file_70.Count], dword size
62
	m2m [run_file_70.Buffer], [buf]
59
	m2m [run_file_70.Buffer], [buf]
63
	mov byte[run_file_70+20], 0
60
	mov byte[run_file_70+20], 0
64
	mov [run_file_70.FileName], file_name
61
	mov [run_file_70.FileName], file_name
65
	mov ebx,run_file_70
62
	mov ebx,run_file_70
66
	int 0x40 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥­¨ï
63
	int 0x40 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥­¨ï
67
	cmp ebx,0xffffffff
64
	cmp ebx,0xffffffff
68
	je @f
65
	je @f
69
		;®¯à¥¤¥«ï¥¬ ¢¨¤ ¨§®¡à ¦¥­¨ï ¨ ¯¥à¥¢®¤¨¬ ¥£® ¢® ¢à¥¬¥­­ë© ¡ãä¥à image_data
66
		;®¯à¥¤¥«ï¥¬ ¢¨¤ ¨§®¡à ¦¥­¨ï ¨ ¯¥à¥¢®¤¨¬ ¥£® ¢® ¢à¥¬¥­­ë© ¡ãä¥à image_data
70
		stdcall dword[img_decode], dword[buf],ebx,0
67
		stdcall [img_decode], [buf],ebx,0
71
		mov dword[image_data],eax
68
		mov [image_data],eax
72
		;¯à¥®¡à §ã¥¬ ¨§®¡à ¦¥­¨¥ ª ä®à¬ âã rgb
69
		;¯à¥®¡à §ã¥¬ ¨§®¡à ¦¥­¨¥ ª ä®à¬ âã rgb
73
		stdcall dword[img_to_rgb2], dword[image_data],dword[buf]
70
		stdcall [img_to_rgb2], [image_data],[buf]
74
		;㤠«ï¥¬ ¢à¥¬¥­­ë© ¡ãä¥à image_data
71
		;㤠«ï¥¬ ¢à¥¬¥­­ë© ¡ãä¥à image_data
75
		stdcall dword[img_destroy], dword[image_data]
72
		stdcall [img_destroy], [image_data]
76
	@@:
73
	@@:
77
}
74
}
78
 
75
 
79
align 4
76
align 4
80
start:
77
start:
81
	load_libraries l_libs_start,load_lib_end
78
	load_libraries l_libs_start,load_lib_end
82
 
79
 
83
	;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨« áì ­ è  «¨¡ 
80
	;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨« áì ­ è  «¨¡ 
84
	mov	ebp,lib0
81
	mov	ebp,lib0
85
	cmp	dword [ebp+ll_struc_size-4],0
82
	cmp	dword [ebp+ll_struc_size-4],0
86
	jz	@f
83
	jz	@f
87
		mcall -1 ;exit not correct
84
		mcall SF_TERMINATE_PROCESS
88
	@@:
85
	@@:
89
	mov	ebp,lib1
86
	mov	ebp,lib1
90
	cmp	dword [ebp+ll_struc_size-4],0
87
	cmp	dword [ebp+ll_struc_size-4],0
91
	jz	@f
88
	jz	@f
92
		mcall -1 ;exit not correct
89
		mcall SF_TERMINATE_PROCESS
93
	@@:
90
	@@:
94
 
91
 
95
	mcall 40,0x27
92
	mcall SF_SET_EVENTS_MASK,0x27
96
	mcall 48,3,sc,sizeof.system_colors ;¯®«ãç ¥¬ á¨á⥬­ë¥ 梥â 
93
	mcall SF_STYLE_SETTINGS,SSF_GET_COLORS,sc,sizeof.system_colors ;¯®«ãç ¥¬ á¨á⥬­ë¥ 梥â 
97
 
94
 
98
	load_image_file 'img1.png',image_data_rgb, IMAGE_FILE1_SIZE
95
	load_image_file 'img1.png',image_data_rgb, IMAGE_FILE1_SIZE
99
	stdcall [buf2d_create_f_img], buf_0,[image_data_rgb] ;ᮧ¤ ¥¬ ¡ãä¥à
96
	stdcall [buf2d_create_f_img], buf_0,[image_data_rgb] ;ᮧ¤ ¥¬ ¡ãä¥à
100
	stdcall [buf2d_create_f_img], buf_1,[image_data_rgb] ;ᮧ¤ ¥¬ ¡ãä¥à
97
	stdcall [buf2d_create_f_img], buf_1,[image_data_rgb] ;ᮧ¤ ¥¬ ¡ãä¥à
101
	stdcall [buf2d_create_f_img], buf_2,[image_data_rgb] ;ᮧ¤ ¥¬ ¡ãä¥à
98
	stdcall [buf2d_create_f_img], buf_2,[image_data_rgb] ;ᮧ¤ ¥¬ ¡ãä¥à
102
	stdcall mem.Free,[image_data_rgb] ;®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì
99
	stdcall mem.Free,[image_data_rgb] ;®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì
103
 
100
 
104
	stdcall [buf2d_filter_dither], buf_1,2
101
	stdcall [buf2d_filter_dither], buf_1,2
105
	stdcall [buf2d_filter_dither], buf_2,3
102
	stdcall [buf2d_filter_dither], buf_2,3
106
 
103
 
107
align 4
104
align 4
108
red_win:
105
red_win:
109
	call draw_window
106
	call draw_window
110
 
107
 
111
align 4
108
align 4
112
still: ;£« ¢­ë© 横«
109
still: ;£« ¢­ë© 横«
113
	mcall 10
110
	mcall SF_WAIT_EVENT
114
 
111
 
115
	cmp al,0x1 ;¨§¬¥­¨«®áì ¯®«®¦¥­¨¥ ®ª­ 
112
	cmp al,1 ;¨§¬¥­¨«®áì ¯®«®¦¥­¨¥ ®ª­ 
116
	jz red_win
113
	jz red_win
117
	cmp al,0x2
114
	cmp al,2
118
	jz key
115
	jz key
119
	cmp al,0x3
116
	cmp al,3
120
	jz button
117
	jz button
121
 
118
 
122
	jmp still
119
	jmp still
123
 
120
 
124
align 4
121
align 4
125
key:
122
key:
126
	push eax ebx
123
	push eax ebx
127
	mcall 2
124
	mcall SF_GET_KEY
128
;...
125
;...
129
	pop ebx eax
126
	pop ebx eax
130
	jmp still
127
	jmp still
131
 
128
 
132
 
129
 
133
align 4
130
align 4
134
draw_window:
131
draw_window:
135
	pushad
132
	pushad
136
	mcall 12,1
133
	mcall SF_REDRAW,SSF_BEGIN_DRAW
137
 
134
 
138
	mov edx,[sc.work]
135
	mov edx,[sc.work]
139
	or  edx,0x33000000
136
	or  edx,0x33000000
140
	mcall 0,(20 shl 16)+670,(20 shl 16)+520,,,caption ;ᮧ¤ ­¨¥ ®ª­ 
137
	mcall SF_CREATE_WINDOW,(20 shl 16)+670,(20 shl 16)+520,,,caption ;ᮧ¤ ­¨¥ ®ª­ 
141
 
138
 
142
	stdcall [buf2d_draw], buf_0
139
	stdcall [buf2d_draw], buf_0
143
	stdcall [buf2d_draw], buf_1
140
	stdcall [buf2d_draw], buf_1
144
	stdcall [buf2d_draw], buf_2
141
	stdcall [buf2d_draw], buf_2
145
	
142
	
146
	mcall 12,2
143
	mcall SF_REDRAW,SSF_END_DRAW
147
	popad
144
	popad
148
	ret
145
	ret
149
 
-
 
150
head_f_i:
-
 
151
head_f_l  db '‘¨á⥬­ ï ®è¨¡ª ',0
-
 
152
 
146
 
153
system_dir0 db '/sys/lib/'
147
system_dir0 db '/sys/lib/'
154
name_buf2d db 'buf2d.obj',0
-
 
155
err_message_found_lib0 db '¥ 㤠«®áì ­ ©â¨ ¡¨¡«¨®â¥ªã buf2d.obj',0
-
 
156
err_message_import0 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ buf2d.obj',0
148
name_buf2d db 'buf2d.obj',0
157
 
149
 
158
system_dir1 db '/sys/lib/'
150
system_dir1 db '/sys/lib/'
159
name_libimg db 'libimg.obj',0
151
name_libimg db 'libimg.obj',0
160
err_message_found_lib1 db '¥ 㤠«®áì ­ ©â¨ ¡¨¡«¨®â¥ªã libimg.obj',0
-
 
161
err_message_import1 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ libimg.obj',0
-
 
162
 
152
 
163
;library structures
153
;library structures
164
l_libs_start:
154
l_libs_start:
165
	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
155
	lib0 l_libs name_buf2d,  file_name, system_dir0, import_buf2d_lib
166
	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
156
	lib1 l_libs name_libimg, file_name, system_dir1, import_libimg
167
load_lib_end:
157
load_lib_end:
168
 
158
 
169
align 4
159
align 4
170
button:
160
button:
171
	mcall 17 ;¯®«ãç¨âì ª®¤ ­ ¦ â®© ª­®¯ª¨
161
	mcall SF_GET_BUTTON
172
	cmp ah,1
162
	cmp ah,1
173
	jne still
163
	jne still
174
.exit:
164
.exit:
175
	stdcall [buf2d_delete],buf_0 ;㤠«ï¥¬ ¡ãä¥à
165
	stdcall [buf2d_delete],buf_0 ;㤠«ï¥¬ ¡ãä¥à
176
	stdcall [buf2d_delete],buf_1 ;㤠«ï¥¬ ¡ãä¥à
166
	stdcall [buf2d_delete],buf_1 ;㤠«ï¥¬ ¡ãä¥à
177
	stdcall [buf2d_delete],buf_2 ;㤠«ï¥¬ ¡ãä¥à
167
	stdcall [buf2d_delete],buf_2 ;㤠«ï¥¬ ¡ãä¥à
178
	mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
168
	mcall SF_TERMINATE_PROCESS
179
 
169
 
180
image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ­¨ï ª à⨭ª¨ äã­ªæ¨ï¬¨ libimg
170
image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ­¨ï ª à⨭ª¨ äã­ªæ¨ï¬¨ libimg
181
image_data_gray dd 0 ;¯ ¬ïâì á ¯à¥®¡à §®¢ ­­ë¬ ¨§®¡à ¦¥­¨¥¬ ¢ ä®à¬ â¥ 8-bit
171
image_data_gray dd 0 ;¯ ¬ïâì á ¯à¥®¡à §®¢ ­­ë¬ ¨§®¡à ¦¥­¨¥¬ ¢ ä®à¬ â¥ 8-bit
182
image_data_rgb dd 0 ;¯ ¬ïâì á ¯à¥®¡à §®¢ ­­ë¬ ¨§®¡à ¦¥­¨¥¬ ¢ ä®à¬ â¥ rgb
172
image_data_rgb dd 0 ;¯ ¬ïâì á ¯à¥®¡à §®¢ ­­ë¬ ¨§®¡à ¦¥­¨¥¬ ¢ ä®à¬ â¥ rgb
183
image_data_foto dd 0
173
image_data_foto dd 0
184
 
174
 
185
run_file_70 FileInfoBlock
175
run_file_70 FileInfoBlock
186
caption db 'Draw images 13.09.11',0 ;¯®¤¯¨áì ®ª­ 
176
caption db 'Draw images 28.11.20',0 ;¯®¤¯¨áì ®ª­ 
187
sc system_colors  ;á¨á⥬­ë¥ 梥â 
177
sc system_colors  ;á¨á⥬­ë¥ 梥â 
188
 
178
 
189
align 4
179
align 4
190
buf_0:
180
buf_0:
191
	dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
181
	dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
192
	dw 5 ;+4 left
182
	dw 5 ;+4 left
193
	dw 5 ;+6 top
183
	dw 5 ;+6 top
194
	dd 200 ;+8 w
184
	dd 200 ;+8 w
195
	dd 186 ;+12 h
185
	dd 186 ;+12 h
196
	dd 0xffffff ;+16 color
186
	dd 0xffffff ;+16 color
197
	db 24 ;+20 bit in pixel
187
	db 24 ;+20 bit in pixel
198
 
188
 
199
align 4
189
align 4
200
buf_1:
190
buf_1:
201
	dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
191
	dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
202
	dw 5 ;+4 left
192
	dw 5 ;+4 left
203
	dw 200 ;+6 top
193
	dw 200 ;+6 top
204
	dd 200 ;+8 w
194
	dd 200 ;+8 w
205
	dd 186 ;+12 h
195
	dd 186 ;+12 h
206
	dd 0 ;+16 color
196
	dd 0 ;+16 color
207
	db 24 ;+20 bit in pixel
197
	db 24 ;+20 bit in pixel
208
 
198
 
209
align 4
199
align 4
210
buf_2:
200
buf_2:
211
	dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
201
	dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
212
	dw 210 ;+4 left
202
	dw 210 ;+4 left
213
	dw 200 ;+6 top
203
	dw 200 ;+6 top
214
	dd 200 ;+8 w
204
	dd 200 ;+8 w
215
	dd 186 ;+12 h
205
	dd 186 ;+12 h
216
	dd 0 ;+16 color
206
	dd 0 ;+16 color
217
	db 24 ;+20 bit in pixel
207
	db 24 ;+20 bit in pixel
218
 
208
 
219
align 4
209
align 4
220
import_libimg:
210
import_libimg:
221
	dd alib_init1
211
	dd alib_init1
222
	img_is_img  dd aimg_is_img
212
	img_is_img  dd aimg_is_img
223
	img_info    dd aimg_info
213
	img_info    dd aimg_info
224
	img_from_file dd aimg_from_file
214
	img_from_file dd aimg_from_file
225
	img_to_file dd aimg_to_file
215
	img_to_file dd aimg_to_file
226
	img_from_rgb dd aimg_from_rgb
216
	img_from_rgb dd aimg_from_rgb
227
	img_to_rgb  dd aimg_to_rgb
217
	img_to_rgb  dd aimg_to_rgb
228
	img_to_rgb2 dd aimg_to_rgb2
218
	img_to_rgb2 dd aimg_to_rgb2
229
	img_decode  dd aimg_decode
219
	img_decode  dd aimg_decode
230
	img_encode  dd aimg_encode
220
	img_encode  dd aimg_encode
231
	img_create  dd aimg_create
221
	img_create  dd aimg_create
232
	img_destroy dd aimg_destroy
222
	img_destroy dd aimg_destroy
233
	img_destroy_layer dd aimg_destroy_layer
223
	img_destroy_layer dd aimg_destroy_layer
234
	img_count   dd aimg_count
224
	img_count   dd aimg_count
235
	img_lock_bits dd aimg_lock_bits
225
	img_lock_bits dd aimg_lock_bits
236
	img_unlock_bits dd aimg_unlock_bits
226
	img_unlock_bits dd aimg_unlock_bits
237
	img_flip    dd aimg_flip
227
	img_flip    dd aimg_flip
238
	img_flip_layer dd aimg_flip_layer
228
	img_flip_layer dd aimg_flip_layer
239
	img_rotate  dd aimg_rotate
229
	img_rotate  dd aimg_rotate
240
	img_rotate_layer dd aimg_rotate_layer
230
	img_rotate_layer dd aimg_rotate_layer
241
	img_draw    dd aimg_draw
231
	img_draw    dd aimg_draw
242
 
232
 
243
	dd 0,0
233
	dd 0,0
244
	alib_init1   db 'lib_init',0
234
	alib_init1   db 'lib_init',0
245
	aimg_is_img  db 'img_is_img',0 ;®¯à¥¤¥«ï¥â ¯® ¤ ­­ë¬, ¬®¦¥â «¨ ¡¨¡«¨®â¥ª  ᤥ« âì ¨§ ­¨å ¨§®¡à ¦¥­¨¥
235
	aimg_is_img  db 'img_is_img',0 ;®¯à¥¤¥«ï¥â ¯® ¤ ­­ë¬, ¬®¦¥â «¨ ¡¨¡«¨®â¥ª  ᤥ« âì ¨§ ­¨å ¨§®¡à ¦¥­¨¥
246
	aimg_info    db 'img_info',0
236
	aimg_info    db 'img_info',0
247
	aimg_from_file db 'img_from_file',0
237
	aimg_from_file db 'img_from_file',0
248
	aimg_to_file db 'img_to_file',0
238
	aimg_to_file db 'img_to_file',0
249
	aimg_from_rgb db 'img_from_rgb',0
239
	aimg_from_rgb db 'img_from_rgb',0
250
	aimg_to_rgb  db 'img_to_rgb',0 ;¯à¥®¡à §®¢ ­¨¥ ¨§®¡à ¦¥­¨ï ¢ ¤ ­­ë¥ RGB
240
	aimg_to_rgb  db 'img_to_rgb',0 ;¯à¥®¡à §®¢ ­¨¥ ¨§®¡à ¦¥­¨ï ¢ ¤ ­­ë¥ RGB
251
	aimg_to_rgb2 db 'img_to_rgb2',0
241
	aimg_to_rgb2 db 'img_to_rgb2',0
252
	aimg_decode  db 'img_decode',0 ; ¢â®¬ â¨ç¥áª¨ ®¯à¥¤¥«ï¥â ä®à¬ â £à ä¨ç¥áª¨å ¤ ­­ëå
242
	aimg_decode  db 'img_decode',0 ; ¢â®¬ â¨ç¥áª¨ ®¯à¥¤¥«ï¥â ä®à¬ â £à ä¨ç¥áª¨å ¤ ­­ëå
253
	aimg_encode  db 'img_encode',0
243
	aimg_encode  db 'img_encode',0
254
	aimg_create  db 'img_create',0
244
	aimg_create  db 'img_create',0
255
	aimg_destroy db 'img_destroy',0
245
	aimg_destroy db 'img_destroy',0
256
	aimg_destroy_layer db 'img_destroy_layer',0
246
	aimg_destroy_layer db 'img_destroy_layer',0
257
	aimg_count   db 'img_count',0
247
	aimg_count   db 'img_count',0
258
	aimg_lock_bits db 'img_lock_bits',0
248
	aimg_lock_bits db 'img_lock_bits',0
259
	aimg_unlock_bits db 'img_unlock_bits',0
249
	aimg_unlock_bits db 'img_unlock_bits',0
260
	aimg_flip    db 'img_flip',0
250
	aimg_flip    db 'img_flip',0
261
	aimg_flip_layer db 'img_flip_layer',0
251
	aimg_flip_layer db 'img_flip_layer',0
262
	aimg_rotate  db 'img_rotate',0
252
	aimg_rotate  db 'img_rotate',0
263
	aimg_rotate_layer db 'img_rotate_layer',0
253
	aimg_rotate_layer db 'img_rotate_layer',0
264
	aimg_draw    db 'img_draw',0
254
	aimg_draw    db 'img_draw',0
265
 
255
 
266
align 4
256
align 4
267
import_buf2d_lib:
257
import_buf2d_lib:
268
	dd sz_lib_init
258
	dd sz_lib_init
269
	buf2d_create dd sz_buf2d_create
259
	buf2d_create dd sz_buf2d_create
270
	buf2d_create_f_img dd sz_buf2d_create_f_img
260
	buf2d_create_f_img dd sz_buf2d_create_f_img
271
	buf2d_clear dd sz_buf2d_clear
261
	buf2d_clear dd sz_buf2d_clear
272
	buf2d_draw dd sz_buf2d_draw
262
	buf2d_draw dd sz_buf2d_draw
273
	buf2d_delete dd sz_buf2d_delete
263
	buf2d_delete dd sz_buf2d_delete
274
	buf2d_filter_dither dd sz_buf2d_filter_dither
264
	buf2d_filter_dither dd sz_buf2d_filter_dither
275
	dd 0,0
265
	dd 0,0
276
	sz_lib_init db 'lib_init',0
266
	sz_lib_init db 'lib_init',0
277
	sz_buf2d_create db 'buf2d_create',0
267
	sz_buf2d_create db 'buf2d_create',0
278
	sz_buf2d_create_f_img db 'buf2d_create_f_img',0
268
	sz_buf2d_create_f_img db 'buf2d_create_f_img',0
279
	sz_buf2d_clear db 'buf2d_clear',0
269
	sz_buf2d_clear db 'buf2d_clear',0
280
	sz_buf2d_draw db 'buf2d_draw',0
270
	sz_buf2d_draw db 'buf2d_draw',0
281
	sz_buf2d_delete db 'buf2d_delete',0
271
	sz_buf2d_delete db 'buf2d_delete',0
282
	sz_buf2d_filter_dither db 'buf2d_filter_dither',0
272
	sz_buf2d_filter_dither db 'buf2d_filter_dither',0
-
 
273
 
283
 
274
align 16
284
i_end:
-
 
285
	rb 1024
-
 
286
stacktop:
275
i_end:
287
	sys_path rb 4096
276
	sys_path rb 4096
288
	file_name:
277
	file_name:
289
		rb 4096
278
		rb 4096
290
	plugin_path:
279
	plugin_path:
291
		rb 4096
280
		rb 4096
292
	openfile_path:
281
	openfile_path:
293
		rb 4096
282
		rb 4096
294
	filename_area:
283
	filename_area:
295
		rb 256
284
		rb 256
-
 
285
		rb 1024
-
 
286
stacktop:
296
mem:
287
mem: