Rev 7832 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7832 | Rev 7833 | ||
---|---|---|---|
1 | ; |
1 | ; |
2 | ; Screenshooter for Kolibri |
2 | ; Screenshooter for Kolibri |
3 | ; |
3 | ; |
4 | ;--------------------------------------------------------------------- |
4 | ;--------------------------------------------------------------------- |
5 | ; ¢â®à ¯à®£à ¬¬ë ¢â¨å®¢ ªá¨¬ (Maxxxx32) |
5 | ; ¢â®à ¯à®£à ¬¬ë ¢â¨å®¢ ªá¨¬ (Maxxxx32) |
6 | ; |
6 | ; |
7 | ; 26.11.16 - IgorA ᨬª¨ á®åà ïîâìáï ¢ ä®à¬ ⥠*.png |
7 | ; 26.11.16 - IgorA ᨬª¨ á®åà ïîâìáï ¢ ä®à¬ ⥠*.png |
8 | ; 02.11.10 - ᯮ«ì§ã¥âáï checkbox ¢¥àᨨ 2 |
8 | ; 02.11.10 - ᯮ«ì§ã¥âáï checkbox ¢¥àᨨ 2 |
9 | ; |
9 | ; |
10 | ; version: 1.2 |
10 | ; version: 1.2 |
11 | ; last update: 08/09/2010 |
11 | ; last update: 08/09/2010 |
12 | ; written by: Marat Zakiyanov aka Mario79, aka Mario |
12 | ; written by: Marat Zakiyanov aka Mario79, aka Mario |
13 | ; changes: select path for save with OpenDialog, |
13 | ; changes: select path for save with OpenDialog, |
14 | ; bag fix for threads stacks |
14 | ; bag fix for threads stacks |
15 | ; 01.06.09 - |
15 | ; 01.06.09 - |
16 | ; 24.07.08 - |
16 | ; 24.07.08 - |
17 | ; 01.02.07 - ®¡®¢«ñ editbox |
17 | ; 01.02.07 - ®¡®¢«ñ editbox |
18 | ; 31.01.07 - ¢áñ ⥯¥àì à¨áã¥âáï ®â®á¨â¥«ì® ª«¨¥â᪮© ®¡« á⨠|
18 | ; 31.01.07 - ¢áñ ⥯¥àì à¨áã¥âáï ®â®á¨â¥«ì® ª«¨¥â᪮© ®¡« á⨠|
19 | 19 | ||
20 | 20 | ||
21 | format binary as "" |
21 | format binary as "" |
22 | 22 | ||
23 | title equ 'Screenshooter v1.21' ; £®«®¢®ª ®ª |
23 | title equ 'Screenshooter v1.21' ; £®«®¢®ª ®ª |
24 | include '../../develop/libraries/box_lib/load_lib.mac' |
24 | include '../../develop/libraries/box_lib/load_lib.mac' |
25 | include '../../develop/libraries/box_lib/trunk/box_lib.mac' |
25 | include '../../develop/libraries/box_lib/trunk/box_lib.mac' |
26 | include '../../config.inc' ;for nightbuild |
26 | include '../../config.inc' ;for nightbuild |
27 | include '../../proc32.inc' |
27 | include '../../proc32.inc' |
28 | include '../../macros.inc' |
28 | include '../../macros.inc' |
29 | include '../../KOSfuncs.inc' |
29 | include '../../KOSfuncs.inc' |
30 | include '../../develop/libraries/libs-dev/libimg/libimg.inc' |
30 | include '../../develop/libraries/libs-dev/libimg/libimg.inc' |
31 | include 'txtbut.inc' |
31 | include 'txtbut.inc' |
32 | include 'label.inc' |
32 | include 'label.inc' |
33 | include 'textwork.inc' |
33 | include 'textwork.inc' |
34 | include 'scrshoot.mac' |
34 | include 'scrshoot.mac' |
35 | 35 | ||
36 | use32 |
36 | use32 |
37 | org 0x0 |
37 | org 0x0 |
38 | db 'MENUET01' |
38 | db 'MENUET01' |
39 | dd 0x1 |
39 | dd 0x1 |
40 | dd start |
40 | dd start |
41 | dd IM_END |
41 | dd IM_END |
42 | dd i_end |
42 | dd i_end |
43 | dd stacktop |
43 | dd stacktop |
44 | dd cmdstr |
44 | dd cmdstr |
45 | dd cur_dir_path |
45 | dd cur_dir_path |
46 | 46 | ||
47 | include 'lang.inc' |
47 | include 'lang.inc' |
48 | include '../../dll.inc' |
48 | include '../../dll.inc' |
49 | 49 | ||
50 | align 4 |
50 | align 4 |
51 | @use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load |
51 | @use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load |
52 | use_txt_button ; | |
52 | use_txt_button ; | |
53 | use_label ; |-- GUI ª®¬¯®¥âë ¨ ¥ª®â®àë¥ ¯à®æ¥¤ãàë |
53 | use_label ; |-- GUI ª®¬¯®¥âë ¨ ¥ª®â®àë¥ ¯à®æ¥¤ãàë |
54 | use_text_work ; / |
54 | use_text_work ; / |
55 | 55 | ||
56 | include 'scrwin.inc' ; ¢áâ ¢«ï¥¬ ª®¤ ®ª ¯à¤¯à®á¬®âà |
56 | include 'scrwin.inc' ; ¢áâ ¢«ï¥¬ ª®¤ ®ª ¯à¤¯à®á¬®âà |
57 | include 'scrsavef.inc'; ¢áâ ¢«ï¥¬ ¯à®æ¥¤ãàã á®åà ¥¨ï ä ©« |
57 | include 'scrsavef.inc'; ¢áâ ¢«ï¥¬ ¯à®æ¥¤ãàã á®åà ¥¨ï ä ©« |
58 | include 'gp.inc' |
58 | include 'gp.inc' |
59 | include 'srectwin.inc' |
59 | include 'srectwin.inc' |
60 | 60 | ||
61 | macro get_sys_colors col_buf |
61 | macro get_sys_colors col_buf |
62 | { |
62 | { |
63 | mcall SF_STYLE_SETTINGS, SSF_GET_COLORS, col_buf, 40 |
63 | mcall SF_STYLE_SETTINGS, SSF_GET_COLORS, col_buf, 40 |
64 | } |
64 | } |
65 | 65 | ||
66 | ;--- ç «® ¯à®£à ¬¬ë --- |
66 | ;--- ç «® ¯à®£à ¬¬ë --- |
67 | align 4 |
67 | align 4 |
68 | start: |
68 | start: |
69 | 69 | ||
70 | load_libraries l_libs_start,end_l_libs |
70 | load_libraries l_libs_start,end_l_libs |
71 | 71 | ||
72 | ;if return code =-1 then exit, else nornary work |
72 | ;if return code =-1 then exit, else nornary work |
73 | ; cmp eax,-1 |
73 | ; cmp eax,-1 |
74 | inc eax |
74 | inc eax |
75 | test eax,eax |
75 | test eax,eax |
76 | jz close |
76 | jz close |
77 | ;;;;;;;;;;;;;;;; init memory 68/11 |
77 | ;;;;;;;;;;;;;;;; init memory 68/11 |
78 | mcall SF_SYS_MISC, SSF_HEAP_INIT |
78 | mcall SF_SYS_MISC, SSF_HEAP_INIT |
79 | test eax,eax |
79 | test eax,eax |
80 | jz close |
80 | jz close |
81 | 81 | ||
82 | ;--------------------------------------------------------------------- |
82 | ;--------------------------------------------------------------------- |
83 | mov edi,filename_area |
83 | mov edi,filename_area |
84 | mov esi,start_temp_file_name |
84 | mov esi,start_temp_file_name |
85 | xor eax,eax |
85 | xor eax,eax |
86 | cld |
86 | cld |
87 | @@: |
87 | @@: |
88 | lodsb |
88 | lodsb |
89 | stosb |
89 | stosb |
90 | test eax,eax |
90 | test eax,eax |
91 | jnz @b |
91 | jnz @b |
92 | 92 | ||
93 | 93 | ||
94 | mov edi,fname_buf |
94 | mov edi,fname_buf |
95 | mov esi,ed_buffer.1 |
95 | mov esi,ed_buffer.1 |
96 | xor eax,eax |
96 | xor eax,eax |
97 | cld |
97 | cld |
98 | @@: |
98 | @@: |
99 | lodsb |
99 | lodsb |
100 | stosb |
100 | stosb |
101 | test eax,eax |
101 | test eax,eax |
102 | jnz @b |
102 | jnz @b |
103 | 103 | ||
104 | ;OpenDialog initialisation |
104 | ;OpenDialog initialisation |
105 | stdcall [OpenDialog_Init], OpenDialog_data |
105 | stdcall [OpenDialog_Init], OpenDialog_data |
106 | 106 | ||
107 | ; prepare for PathShow |
107 | ; prepare for PathShow |
108 | stdcall [PathShow_prepare], PathShow_data_1 |
108 | stdcall [PathShow_prepare], PathShow_data_1 |
109 | ;--------------------------------------------------------------------- |
109 | ;--------------------------------------------------------------------- |
110 | ;mov al,[gs:1280*4*1024] |
110 | ;mov al,[gs:1280*4*1024] |
111 | ; ãáâ ¢«¨¢ ¥¬ ipc ¡ãää¥à |
111 | ; ãáâ ¢«¨¢ ¥¬ ipc ¡ãää¥à |
112 | xor ebx,ebx |
112 | xor ebx,ebx |
113 | inc ebx |
113 | inc ebx |
114 | mcall SF_IPC,, app_ipc, 32 |
114 | mcall SF_IPC,, app_ipc, 32 |
115 | 115 | ||
116 | ; ãáâ ¢«¨¢ ¥¬ £«®¡ «ìãî £®àïçãî ª« ¢¨èã |
116 | ; ãáâ ¢«¨¢ ¥¬ £«®¡ «ìãî £®àïçãî ª« ¢¨èã |
117 | mov cl,55 ; 55 - PrintScrn |
117 | mov cl,55 ; 55 - PrintScrn |
118 | xor edx,edx |
118 | xor edx,edx |
119 | mcall SF_KEYBOARD, SSF_SET_SYS_HOTKEY |
119 | mcall SF_KEYBOARD, SSF_SET_SYS_HOTKEY |
120 | 120 | ||
121 | mov ebx,app |
121 | mov ebx,app |
122 | call get_slot_n |
122 | call get_slot_n |
123 | mov [slot_n],ecx |
123 | mov [slot_n],ecx |
124 | 124 | ||
125 | ; ãáâ ¢«¨¢ ¥¬ ¬ áªã ᮡë⨩ |
125 | ; ãáâ ¢«¨¢ ¥¬ ¬ áªã ᮡë⨩ |
126 | set_events_mask (evm_redraw+evm_key+evm_button+evm_mouse+evm_ipc) |
126 | set_events_mask (evm_redraw+evm_key+evm_button+evm_mouse+evm_ipc) |
127 | ;¨¨æ¨ «¨§ æ¨ï checkboxes |
127 | ;¨¨æ¨ «¨§ æ¨ï checkboxes |
128 | init_checkboxes2 check_boxes,check_boxes_end |
128 | init_checkboxes2 check_boxes,check_boxes_end |
129 | 129 | ||
130 | ; áî¤ ¯àë£ ¥¬ ¯à¨ ª ¦¤®© ¯¥à¥à¨á®¢ª¥ |
130 | ; áî¤ ¯àë£ ¥¬ ¯à¨ ª ¦¤®© ¯¥à¥à¨á®¢ª¥ |
131 | red: |
131 | red: |
132 | get_procinfo app ; ¯®«ãç ¥¬ ¨ä®à¬ æ¨î ® ¯à®æ¥áᥠ|
132 | get_procinfo app ; ¯®«ãç ¥¬ ¨ä®à¬ æ¨î ® ¯à®æ¥áᥠ|
133 | get_sys_colors sc ; ¯®«ãç ¥¬ á¨áâ¥¬ë¥ æ¢¥â |
133 | get_sys_colors sc ; ¯®«ãç ¥¬ á¨áâ¥¬ë¥ æ¢¥â |
134 | 134 | ||
135 | ; ãáâ ¢«¨¢ ¥¬ á¨áâ¥¬ë¥ æ¢¥â ã GUI ª®¬¯®¥â®¢ |
135 | ; ãáâ ¢«¨¢ ¥¬ á¨áâ¥¬ë¥ æ¢¥â ã GUI ª®¬¯®¥â®¢ |
136 | txt_but_set_sys_color buttons,buttons_end,sc ; \ |
136 | txt_but_set_sys_color buttons,buttons_end,sc ; \ |
137 | labels_set_sys_color labels,labels_end,sc ; | |
137 | labels_set_sys_color labels,labels_end,sc ; | |
138 | check_boxes_set_sys_color2 check_boxes,check_boxes_end,sc; | |
138 | check_boxes_set_sys_color2 check_boxes,check_boxes_end,sc; | |
139 | edit_boxes_set_sys_color editboxes,editboxes_end,sc ; / |
139 | edit_boxes_set_sys_color editboxes,editboxes_end,sc ; / |
140 | 140 | ||
141 | get_screen_prop scr ; ¯®«ãç ¥¬ ¨ä®à¬ æ¨î ®¡ íªà ¥ |
141 | get_screen_prop scr ; ¯®«ãç ¥¬ ¨ä®à¬ æ¨î ®¡ íªà ¥ |
142 | ;------------------------------------------------------------------------------ |
142 | ;------------------------------------------------------------------------------ |
143 | ; Boot with "DIRECT" parameter - get screen and save |
143 | ; Boot with "DIRECT" parameter - get screen and save |
144 | mov eax,cmdstr |
144 | mov eax,cmdstr |
145 | cmp [eax],byte 0 |
145 | cmp [eax],byte 0 |
146 | je no_boot |
146 | je no_boot |
147 | 147 | ||
148 | cmp [eax],dword 'DIRE' |
148 | cmp [eax],dword 'DIRE' |
149 | jne no_boot |
149 | jne no_boot |
150 | 150 | ||
151 | cmp [eax+4],word 'CT' |
151 | cmp [eax+4],word 'CT' |
152 | jne no_boot |
152 | jne no_boot |
153 | 153 | ||
154 | and [ch2.flags],dword 0 |
154 | and [ch2.flags],dword 0 |
155 | or [ch5.flags],dword 1 |
155 | or [ch5.flags],dword 1 |
156 | mov [OpenDialog_data.draw_window],dword draw_window_direct |
156 | mov [OpenDialog_data.draw_window],dword draw_window_direct |
157 | 157 | ||
158 | call shoot |
158 | call shoot |
159 | jmp close |
159 | jmp close |
160 | ;------------------------------------------------------------------------------ |
160 | ;------------------------------------------------------------------------------ |
161 | draw_window_direct: |
161 | draw_window_direct: |
162 | mcall SF_REDRAW, SSF_BEGIN_DRAW |
162 | mcall SF_REDRAW, SSF_BEGIN_DRAW |
163 | mcall SF_GET_SCREEN_SIZE |
163 | mcall SF_GET_SCREEN_SIZE |
164 | ; eax = [xsize]*65536 + [ysize] |
164 | ; eax = [xsize]*65536 + [ysize] |
165 | mov ebx,eax |
165 | mov ebx,eax |
166 | shr ebx,17 |
166 | shr ebx,17 |
167 | sub ebx,100 |
167 | sub ebx,100 |
168 | shl ebx,16 |
168 | shl ebx,16 |
169 | mov bx,200 |
169 | mov bx,200 |
170 | mov ecx,eax |
170 | mov ecx,eax |
171 | and ecx,0xffff |
171 | and ecx,0xffff |
172 | shr ecx,1 |
172 | shr ecx,1 |
173 | sub ecx,50 |
173 | sub ecx,50 |
174 | shl ecx,16 |
174 | shl ecx,16 |
175 | mov cx,100 |
175 | mov cx,100 |
176 | xor esi,esi |
176 | xor esi,esi |
177 | mcall SF_CREATE_WINDOW,,,0x34ffffff,,grab_text |
177 | mcall SF_CREATE_WINDOW,,,0x34ffffff,,grab_text |
178 | 178 | ||
179 | mcall SF_DRAW_TEXT, <10,30>,0x90000000,saving |
179 | mcall SF_DRAW_TEXT, <10,30>,0x90000000,saving |
180 | 180 | ||
181 | mcall SF_REDRAW, SSF_END_DRAW |
181 | mcall SF_REDRAW, SSF_END_DRAW |
182 | ret |
182 | ret |
183 | ;------------------------------------------------------------------------------ |
183 | ;------------------------------------------------------------------------------ |
184 | no_boot: |
184 | no_boot: |
185 | call draw_window ; ¯¥à¥à¨á®¢ë¢ ¥¬ ®ª® |
185 | call draw_window ; ¯¥à¥à¨á®¢ë¢ ¥¬ ®ª® |
186 | still: |
186 | still: |
187 | wait_event red,key,button,mouse,ipc,still ; ¦¤¥¬ ᮡë⨩ |
187 | wait_event red,key,button,mouse,ipc,still ; ¦¤¥¬ ᮡë⨩ |
188 | 188 | ||
189 | key: |
189 | key: |
190 | get_key |
190 | get_key |
191 | cmp al,2 |
191 | cmp al,2 |
192 | jne @f |
192 | jne @f |
193 | cmp ah,55 |
193 | cmp ah,55 |
194 | jne still |
194 | jne still |
195 | mov [PrintScreen],1 |
195 | mov [PrintScreen],1 |
196 | call shoot |
196 | call shoot |
197 | mov [PrintScreen],0 |
197 | mov [PrintScreen],0 |
198 | jmp still |
198 | jmp still |
199 | @@: |
199 | @@: |
200 | ; stdcall [edit_box_key], edit1 |
200 | ; stdcall [edit_box_key], edit1 |
201 | stdcall [edit_box_key], edit2 |
201 | stdcall [edit_box_key], edit2 |
202 | stdcall [edit_box_key], edit3 |
202 | stdcall [edit_box_key], edit3 |
203 | 203 | ||
204 | jmp still |
204 | jmp still |
205 | button: |
205 | button: |
206 | get_pressed_button |
206 | get_pressed_button |
207 | cmp ah,1 |
207 | cmp ah,1 |
208 | je p_close |
208 | je p_close |
209 | txt_but_ev buttons,buttons_end |
209 | txt_but_ev buttons,buttons_end |
210 | jmp still |
210 | jmp still |
211 | mouse: |
211 | mouse: |
212 | get_active_window |
212 | get_active_window |
213 | cmp eax,[slot_n] |
213 | cmp eax,[slot_n] |
214 | jne still |
214 | jne still |
215 | ;---------------------------------- |
215 | ;---------------------------------- |
216 | ; stdcall [edit_box_mouse], edit1 |
216 | ; stdcall [edit_box_mouse], edit1 |
217 | stdcall [edit_box_mouse], edit2 |
217 | stdcall [edit_box_mouse], edit2 |
218 | stdcall [edit_box_mouse], edit3 |
218 | stdcall [edit_box_mouse], edit3 |
219 | ;---------------------------------- |
219 | ;---------------------------------- |
220 | checkboxes_mouse2 check_boxes,check_boxes_end |
220 | checkboxes_mouse2 check_boxes,check_boxes_end |
221 | ;----------------------------------- |
221 | ;----------------------------------- |
222 | jmp still |
222 | jmp still |
223 | ipc: |
223 | ipc: |
224 | cmp word [app_ipc+8],2 |
224 | cmp word [app_ipc+8],2 |
225 | jne @f |
225 | jne @f |
226 | min_window |
226 | min_window |
227 | jmp .clear_ipc |
227 | jmp .clear_ipc |
228 | @@: |
228 | @@: |
229 | cmp word [app_ipc+8],3 |
229 | cmp word [app_ipc+8],3 |
230 | jne @f |
230 | jne @f |
231 | mov ecx,[slot_n] |
231 | mov ecx,[slot_n] |
232 | activ_window |
232 | activ_window |
233 | jmp .clear_ipc |
233 | jmp .clear_ipc |
234 | @@: |
234 | @@: |
235 | call draw_number |
235 | call draw_number |
236 | call dr_st |
236 | call dr_st |
237 | 237 | ||
238 | .clear_ipc: |
238 | .clear_ipc: |
239 | cld |
239 | cld |
240 | xor eax,eax |
240 | xor eax,eax |
241 | mov ecx,32/4 |
241 | mov ecx,32/4 |
242 | mov edi,app_ipc |
242 | mov edi,app_ipc |
243 | rep stosd |
243 | rep stosd |
244 | jmp still |
244 | jmp still |
245 | 245 | ||
246 | p_close: |
246 | p_close: |
247 | btr dword [flags],1 |
247 | btr dword [flags],1 |
248 | 248 | ||
249 | bt dword [flags],3 |
249 | bt dword [flags],3 |
250 | jnc @f |
250 | jnc @f |
251 | mcall SF_SYSTEM, SSF_TERMINATE_THREAD_ID, [set_rect_window_pid] |
251 | mcall SF_SYSTEM, SSF_TERMINATE_THREAD_ID, [set_rect_window_pid] |
252 | @@: |
252 | @@: |
253 | 253 | ||
254 | close: |
254 | close: |
255 | app_close |
255 | app_close |
256 | 256 | ||
257 | ;--------------------------------------------------------------------- |
257 | ;--------------------------------------------------------------------- |
258 | draw_PathShow: |
258 | draw_PathShow: |
259 | pusha |
259 | pusha |
260 | mcall SF_DRAW_RECT, <4,302>, <35,15>, 0xffffff |
260 | mcall SF_DRAW_RECT, <4,302>, <35,15>, 0xffffff |
261 | ; draw for PathShow |
261 | ; draw for PathShow |
262 | push dword PathShow_data_1 |
262 | push dword PathShow_data_1 |
263 | call [PathShow_draw] |
263 | call [PathShow_draw] |
264 | popa |
264 | popa |
265 | ret |
265 | ret |
266 | ;-------------------------------------------------------------------- |
266 | ;-------------------------------------------------------------------- |
267 | ;--- ¯à®®æ¥¤ãà ¯¥à¥à¨á®¢ª¨ £« ¢®£® ®ª --------------------------- |
267 | ;--- ¯à®®æ¥¤ãà ¯¥à¥à¨á®¢ª¨ £« ¢®£® ®ª --------------------------- |
268 | ;-------------------------------------------------------------------- |
268 | ;-------------------------------------------------------------------- |
269 | draw_window: |
269 | draw_window: |
270 | start_draw_window ; ç «® ¯¥à¥à¨á®¢ª¨ |
270 | start_draw_window ; ç «® ¯¥à¥à¨á®¢ª¨ |
271 | ; ®¯à¥¤¥«ï¥¬ ®ª® |
271 | ; ®¯à¥¤¥«ï¥¬ ®ª® |
272 | get_skin_height |
272 | get_skin_height |
273 | mov ecx,100*65536+220 |
273 | mov ecx,100*65536+220 |
274 | add cx,ax |
274 | add cx,ax |
275 | mov edx,[sc.work] |
275 | mov edx,[sc.work] |
276 | or edx,0x34000000;0x33000000 |
276 | or edx,0x34000000;0x33000000 |
277 | xor esi,esi |
277 | xor esi,esi |
278 | ;xor edi,edi |
278 | ;xor edi,edi |
279 | mov edi,grab_text |
279 | mov edi,grab_text |
280 | mcall SF_CREATE_WINDOW, 100*65536+320 |
280 | mcall SF_CREATE_WINDOW, 100*65536+320 |
281 | 281 | ||
282 | ; ¢ë¢®¤¨¬ ç¨á« ¢ ®ª® |
282 | ; ¢ë¢®¤¨¬ ç¨á« ¢ ®ª® |
283 | movsx ecx,word [scr.width] ; è¨à¨ íªà |
283 | movsx ecx,word [scr.width] ; è¨à¨ íªà |
284 | mcall SF_DRAW_NUMBER, <4,0>, , <188,[label1.top]>, [sc.work_text] |
284 | mcall SF_DRAW_NUMBER, <4,0>, , <188,[label1.top]>, [sc.work_text] |
285 | movsx ecx,word [scr.height] ; ¢ëá®â íªà |
285 | movsx ecx,word [scr.height] ; ¢ëá®â íªà |
286 | add edx, 37 shl 16 |
286 | add edx, 37 shl 16 |
287 | mcall |
287 | mcall |
288 | add edx, 36 shl 16 |
288 | add edx, 36 shl 16 |
289 | mov ebx,2 shl 16 |
289 | mov ebx,2 shl 16 |
290 | movsx ecx,word [scr.bitspp] ; ¡¨â ¯¨ªá¥«ì |
290 | movsx ecx,word [scr.bitspp] ; ¡¨â ¯¨ªá¥«ì |
291 | mcall |
291 | mcall |
292 | 292 | ||
293 | call draw_number ; ¯à®à¨á®¢ë¢ ¥¬ ®¬¥à ᨬª |
293 | call draw_number ; ¯à®à¨á®¢ë¢ ¥¬ ®¬¥à ᨬª |
294 | call dr_st |
294 | call dr_st |
295 | 295 | ||
296 | draw_labels labels,labels_end ; ¬¥âª¨ |
296 | draw_labels labels,labels_end ; ¬¥âª¨ |
297 | ;------ show check editbox ----------- |
297 | ;------ show check editbox ----------- |
298 | ; stdcall [edit_box_draw], edit1 |
298 | ; stdcall [edit_box_draw], edit1 |
299 | stdcall [edit_box_draw], edit2 |
299 | stdcall [edit_box_draw], edit2 |
300 | stdcall [edit_box_draw], edit3 |
300 | stdcall [edit_box_draw], edit3 |
301 | ;------ end check all editbox ------- |
301 | ;------ end check all editbox ------- |
302 | 302 | ||
303 | call draw_PathShow |
303 | call draw_PathShow |
304 | 304 | ||
305 | draw_txt_buttons buttons,buttons_end ; ª®¯ª¨ |
305 | draw_txt_buttons buttons,buttons_end ; ª®¯ª¨ |
306 | ;------ check all checkbox --------- |
306 | ;------ check all checkbox --------- |
307 | 307 | ||
308 | checkboxes_draw2 check_boxes,check_boxes_end |
308 | checkboxes_draw2 check_boxes,check_boxes_end |
309 | 309 | ||
310 | ;------ end check all checkbox ------ |
310 | ;------ end check all checkbox ------ |
311 | 311 | ||
312 | stop_draw_window ; ª®¥æ ¯¥à¥à¨á®¢ª¨ |
312 | stop_draw_window ; ª®¥æ ¯¥à¥à¨á®¢ª¨ |
313 | ret |
313 | ret |
314 | 314 | ||
315 | shoot: |
315 | shoot: |
316 | bt dword [ch4.flags],1 ; ¢ª«îç¥ «¨ § ¤¥à¦ª ? |
316 | bt dword [ch4.flags],1 ; ¢ª«îç¥ «¨ § ¤¥à¦ª ? |
317 | jnc @f |
317 | jnc @f |
318 | draw_status delay_now |
318 | draw_status delay_now |
319 | mov edi,ed_buffer.2 |
319 | mov edi,ed_buffer.2 |
320 | call zstr_to_int |
320 | call zstr_to_int |
321 | mov ebx,eax |
321 | mov ebx,eax |
322 | delay |
322 | delay |
323 | @@: |
323 | @@: |
324 | call get_mem_for_shoot; ¯®«ãç ¥¬ ¯ ¬ïâì ¤«ï ᨬª |
324 | call get_mem_for_shoot; ¯®«ãç ¥¬ ¯ ¬ïâì ¤«ï ᨬª |
325 | 325 | ||
326 | 326 | ||
327 | bts dword [flags],0 ; ã«¥¢®© ä« £ - ᨬ®ª ¥áâì ¢ ¯ ¬ï⨠|
327 | bts dword [flags],0 ; ã«¥¢®© ä« £ - ᨬ®ª ¥áâì ¢ ¯ ¬ï⨠|
328 | 328 | ||
329 | ; ¤¥« ¥¬ ᨬ®ª |
329 | ; ¤¥« ¥¬ ᨬ®ª |
330 | draw_status shooting |
330 | draw_status shooting |
331 | mov esi,scr |
331 | mov esi,scr |
332 | mov edi,[scr_buf.ptr] |
332 | mov edi,[scr_buf.ptr] |
333 | call copy_screen_to_image |
333 | call copy_screen_to_image |
334 | 334 | ||
335 | bt dword [use_rect.flags],1 |
335 | bt dword [use_rect.flags],1 |
336 | jc .use_rect |
336 | jc .use_rect |
337 | push dword [scr] |
337 | push dword [scr] |
338 | jmp @f |
338 | jmp @f |
339 | .use_rect: |
339 | .use_rect: |
340 | push dword [rect.height] |
340 | push dword [rect.height] |
341 | @@: |
341 | @@: |
342 | pop dword [scr_buf.size] |
342 | pop dword [scr_buf.size] |
343 | 343 | ||
344 | cmp [autoshoot_flag],1 |
344 | cmp [autoshoot_flag],1 |
345 | jne .2 |
345 | jne .2 |
346 | 346 | ||
347 | bt dword [ch5.flags],1 ; ¢ª«î祮 «¨ ¢â®á®åà ¥¨¥ ? |
347 | bt dword [ch5.flags],1 ; ¢ª«î祮 «¨ ¢â®á®åà ¥¨¥ ? |
348 | jnc @f |
348 | jnc @f |
349 | call save_file |
349 | call save_file |
350 | @@: |
350 | @@: |
351 | draw_status shooted_ok |
351 | draw_status shooted_ok |
352 | .2: |
352 | .2: |
353 | bt dword [flags],1 |
353 | bt dword [flags],1 |
354 | jnc @f |
354 | jnc @f |
355 | ret |
355 | ret |
356 | @@: |
356 | @@: |
357 | bt dword [ch2.flags],1 ; ¯®ª § âì ®ª® ¯à¥¤¯à®á¬®âà ? |
357 | bt dword [ch2.flags],1 ; ¯®ª § âì ®ª® ¯à¥¤¯à®á¬®âà ? |
358 | jnc @f |
358 | jnc @f |
359 | cmp [PrintScreen],0 |
359 | cmp [PrintScreen],0 |
360 | jne @f |
360 | jne @f |
361 | call show_scr_window |
361 | call show_scr_window |
362 | ret |
362 | ret |
363 | @@: |
363 | @@: |
364 | bt dword [ch5.flags],1 ; ¢ª«î祮 «¨ ¢â®á®åà ¥¨¥ ? |
364 | bt dword [ch5.flags],1 ; ¢ª«î祮 «¨ ¢â®á®åà ¥¨¥ ? |
365 | jnc @f |
365 | jnc @f |
366 | 366 | ||
367 | call [OpenDialog_data.draw_window] |
367 | call [OpenDialog_data.draw_window] |
368 | ; invoke OpenDialog |
368 | ; invoke OpenDialog |
369 | stdcall [OpenDialog_Start], OpenDialog_data |
369 | stdcall [OpenDialog_Start], OpenDialog_data |
370 | cmp [OpenDialog_data.status],1 |
370 | cmp [OpenDialog_data.status],1 |
371 | je .1 |
371 | je .1 |
372 | ret |
372 | ret |
373 | .1: |
373 | .1: |
374 | ; prepare for PathShow |
374 | ; prepare for PathShow |
375 | stdcall [PathShow_prepare], PathShow_data_1 |
375 | stdcall [PathShow_prepare], PathShow_data_1 |
376 | call [OpenDialog_data.draw_window] |
376 | call [OpenDialog_data.draw_window] |
377 | call save_file |
377 | call save_file |
378 | @@: |
378 | @@: |
379 | ret |
379 | ret |
380 | 380 | ||
381 | ;--- ¯®«ãç¨âì ¯ ¬ïâì ¤«ï ᨬª --- |
381 | ;--- ¯®«ãç¨âì ¯ ¬ïâì ¤«ï ᨬª --- |
382 | get_mem_for_shoot: |
382 | get_mem_for_shoot: |
383 | ;clean memory |
383 | ;clean memory |
384 | mcall SF_SYS_MISC, SSF_MEM_FREE, [scr_buf.ptr] |
384 | mcall SF_SYS_MISC, SSF_MEM_FREE, [scr_buf.ptr] |
385 | 385 | ||
386 | bt dword [use_rect.flags],1 ; ä®âª âì ®¡« áâì íªà |
386 | bt dword [use_rect.flags],1 ; ä®âª âì ®¡« áâì íªà |
387 | jc .use_area |
387 | jc .use_area |
388 | movzx ecx, word [scr.width] |
388 | movzx ecx, word [scr.width] |
389 | movzx ebx, word [scr.height] |
389 | movzx ebx, word [scr.height] |
390 | jmp @f |
390 | jmp @f |
391 | .use_area: |
391 | .use_area: |
392 | call read_rect |
392 | call read_rect |
393 | movzx ecx, word [rect.width] |
393 | movzx ecx, word [rect.width] |
394 | movzx ebx, word [rect.height] |
394 | movzx ebx, word [rect.height] |
395 | @@: |
395 | @@: |
396 | imul ecx,ebx |
396 | imul ecx,ebx |
397 | lea ecx,[ecx*3] |
397 | lea ecx,[ecx*3] |
398 | ; add ecx,i_end |
398 | ; add ecx,i_end |
399 | mcall SF_SYS_MISC, SSF_MEM_ALLOC |
399 | mcall SF_SYS_MISC, SSF_MEM_ALLOC |
400 | mov [scr_buf.ptr],eax |
400 | mov [scr_buf.ptr],eax |
401 | add eax,ecx |
401 | add eax,ecx |
402 | mov [scr_buf.end_ptr],ecx |
402 | mov [scr_buf.end_ptr],ecx |
403 | ret |
403 | ret |
404 | 404 | ||
405 | ;--- ᮤ âì ®ª® ¯à¥¤¯à®á¬®âà --- |
405 | ;--- ᮤ âì ®ª® ¯à¥¤¯à®á¬®âà --- |
406 | show_scr_window: |
406 | show_scr_window: |
407 | pusha |
407 | pusha |
408 | bt dword [flags],0 |
408 | bt dword [flags],0 |
409 | jnc @f |
409 | jnc @f |
410 | xor ebx,ebx |
410 | xor ebx,ebx |
411 | inc ebx |
411 | inc ebx |
412 | mcall SF_CREATE_THREAD,, scr_window, i_end_tread-512 |
412 | mcall SF_CREATE_THREAD,, scr_window, i_end_tread-512 |
413 | @@: |
413 | @@: |
414 | popa |
414 | popa |
415 | ret |
415 | ret |
416 | 416 | ||
417 | ;--- ¯à®ç¨â âì ¨ à¨á®¢ âì ⥪ã騩 ®¬¥à --- |
417 | ;--- ¯à®ç¨â âì ¨ à¨á®¢ âì ⥪ã騩 ®¬¥à --- |
418 | apply_number: |
418 | apply_number: |
419 | mov edi,ed_buffer.3 |
419 | mov edi,ed_buffer.3 |
420 | call zstr_to_int |
420 | call zstr_to_int |
421 | mov [cur_number],eax |
421 | mov [cur_number],eax |
422 | call draw_number |
422 | call draw_number |
423 | ret |
423 | ret |
424 | 424 | ||
425 | ;--- ¯à®æ¥¤ãà ¯à®à¨á®¢ª¨ ⥪ã饣® ®¬¥à --- |
425 | ;--- ¯à®æ¥¤ãà ¯à®à¨á®¢ª¨ ⥪ã饣® ®¬¥à --- |
426 | draw_number: |
426 | draw_number: |
427 | mov [sign_n],4 |
427 | mov [sign_n],4 |
428 | mov cx,[label9.top] |
428 | mov cx,[label9.top] |
429 | shl ecx,16 |
429 | shl ecx,16 |
430 | mov cx,10 |
430 | mov cx,10 |
431 | mov edx,[sc.work] |
431 | mov edx,[sc.work] |
432 | mcall SF_DRAW_RECT, 150*65536+96 |
432 | mcall SF_DRAW_RECT, 150*65536+96 |
433 | movsx bx,byte [sign_n] |
433 | movsx bx,byte [sign_n] |
434 | shl ebx,16 |
434 | shl ebx,16 |
435 | mov edx,150 shl 16 |
435 | mov edx,150 shl 16 |
436 | mov dx,[label9.top] |
436 | mov dx,[label9.top] |
437 | mov esi,[sc.work_text] |
437 | mov esi,[sc.work_text] |
438 | mcall SF_DRAW_NUMBER,, [cur_number] |
438 | mcall SF_DRAW_NUMBER,, [cur_number] |
439 | ret |
439 | ret |
440 | 440 | ||
441 | ;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª ¢â®áꥬª¨ --- |
441 | ;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª ¢â®áꥬª¨ --- |
442 | start_autoshoot: |
442 | start_autoshoot: |
443 | bts dword [flags],1 |
443 | bts dword [flags],1 |
444 | jc @f |
444 | jc @f |
445 | xor ebx,ebx |
445 | xor ebx,ebx |
446 | inc ebx |
446 | inc ebx |
447 | mcall SF_CREATE_THREAD,, autoshoot, i_end_tread |
447 | mcall SF_CREATE_THREAD,, autoshoot, i_end_tread |
448 | @@: |
448 | @@: |
449 | ret |
449 | ret |
450 | 450 | ||
451 | ;--- ®áâ ¢«¨¢ ¥â íâ®â ¯®â®ª --- |
451 | ;--- ®áâ ¢«¨¢ ¥â íâ®â ¯®â®ª --- |
452 | stop_autoshoot: |
452 | stop_autoshoot: |
453 | btr dword [flags],1 |
453 | btr dword [flags],1 |
454 | ret |
454 | ret |
455 | 455 | ||
456 | ;--- 横« ¯®â®ª ¢â®áꥬª¨ --- |
456 | ;--- 横« ¯®â®ª ¢â®áꥬª¨ --- |
457 | autoshoot: |
457 | autoshoot: |
458 | mov [autoshoot_flag],1 |
458 | mov [autoshoot_flag],1 |
459 | mov ecx,[slot_n] |
459 | mov ecx,[slot_n] |
460 | activ_window |
460 | activ_window |
461 | .next: |
461 | .next: |
462 | bt dword [flags],1 |
462 | bt dword [flags],1 |
463 | jnc close |
463 | jnc close |
464 | mov esi,2 |
464 | mov esi,2 |
465 | mcall SF_IPC, SSF_SEND_MESSAGE, [app.pid], messages.draw_number |
465 | mcall SF_IPC, SSF_SEND_MESSAGE, [app.pid], messages.draw_number |
466 | call shoot |
466 | call shoot |
467 | jmp autoshoot.next |
467 | jmp autoshoot.next |
468 | .close: |
468 | .close: |
469 | mov [autoshoot_flag],0 |
469 | mov [autoshoot_flag],0 |
470 | jmp close |
470 | jmp close |
471 | ;--- ¯à®æ¥¤ãà ¯à®à¨á®¢ª¨ áâப¨ á®áâ®ï¨ï --- |
471 | ;--- ¯à®æ¥¤ãà ¯à®à¨á®¢ª¨ áâப¨ á®áâ®ï¨ï --- |
472 | ; (¤®«¦ ¢ë§ë¢ âìáï ¯®â®ª®¬ £« ¢®£® ®ª ) |
472 | ; (¤®«¦ ¢ë§ë¢ âìáï ¯®â®ª®¬ £« ¢®£® ®ª ) |
473 | dr_st: |
473 | dr_st: |
474 | mcall SF_DRAW_LINE, 0*65536+310, 198*65536+198, [sc.work_graph] |
474 | mcall SF_DRAW_LINE, 0*65536+310, 198*65536+198, [sc.work_graph] |
475 | 475 | ||
476 | mov bx,310 |
476 | mov bx,310 |
477 | mov ecx,199*65536+15 |
477 | mov ecx,199*65536+15 |
478 | mov edx,[sc.work] |
478 | mov edx,[sc.work] |
479 | mcall SF_DRAW_RECT ; ¯®«®áª |
479 | mcall SF_DRAW_RECT ; ¯®«®áª |
480 | 480 | ||
481 | mov edi,status |
481 | mov edi,status |
482 | call draw_label |
482 | call draw_label |
483 | ret |
483 | ret |
484 | 484 | ||
485 | ;--- ¯à®æ¥¤ãà ¯®«ãç¥¨ï ®¬¥à ᫮⠯®â®ª --- |
485 | ;--- ¯à®æ¥¤ãà ¯®«ãç¥¨ï ®¬¥à ᫮⠯®â®ª --- |
486 | ; ¢å®¤ ebx - ¡ãää¥à 1024 ¡ ©â |
486 | ; ¢å®¤ ebx - ¡ãää¥à 1024 ¡ ©â |
487 | ; ¢ë室 ecx - ®¬¥à á«®â |
487 | ; ¢ë室 ecx - ®¬¥à á«®â |
488 | get_slot_n: |
488 | get_slot_n: |
489 | xor ecx,ecx |
489 | xor ecx,ecx |
490 | dec ecx |
490 | dec ecx |
491 | mcall SF_THREAD_INFO |
491 | mcall SF_THREAD_INFO |
492 | 492 | ||
493 | mov edx,[ebx+30] |
493 | mov edx,[ebx+30] |
494 | xor ecx,ecx |
494 | xor ecx,ecx |
495 | @@: |
495 | @@: |
496 | inc ecx |
496 | inc ecx |
497 | mcall SF_THREAD_INFO |
497 | mcall SF_THREAD_INFO |
498 | cmp [ebx+30],edx |
498 | cmp [ebx+30],edx |
499 | je @f |
499 | je @f |
500 | jmp @b |
500 | jmp @b |
501 | @@: |
501 | @@: |
502 | ret |
502 | ret |
503 | 503 | ||
504 | ;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª, ¤¥« î騩 1 ᨬ®ª --- |
504 | ;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª, ¤¥« î騩 1 ᨬ®ª --- |
505 | one_shoot: |
505 | one_shoot: |
506 | mov ecx,one_shoot_thread |
506 | mov ecx,one_shoot_thread |
507 | mov edx,shoot_esp |
507 | mov edx,shoot_esp |
508 | jmp @f |
508 | jmp @f |
509 | ;--- ¯à®æ¥¤à , § ¯ã᪠îé ï ¯®â®ª, á®åà ïî騩 ᨬ®ª --- |
509 | ;--- ¯à®æ¥¤à , § ¯ã᪠îé ï ¯®â®ª, á®åà ïî騩 ᨬ®ª --- |
510 | save_shoot: |
510 | save_shoot: |
511 | ; invoke OpenDialog |
511 | ; invoke OpenDialog |
512 | stdcall [OpenDialog_Start], OpenDialog_data |
512 | stdcall [OpenDialog_Start], OpenDialog_data |
513 | cmp [OpenDialog_data.status],1 |
513 | cmp [OpenDialog_data.status],1 |
514 | je .1 |
514 | je .1 |
515 | ret |
515 | ret |
516 | .1: |
516 | .1: |
517 | ; prepare for PathShow |
517 | ; prepare for PathShow |
518 | stdcall [PathShow_prepare], PathShow_data_1 |
518 | stdcall [PathShow_prepare], PathShow_data_1 |
519 | 519 | ||
520 | call draw_PathShow |
520 | call draw_PathShow |
521 | 521 | ||
522 | mov ecx,save_shoot_thread |
522 | mov ecx,save_shoot_thread |
523 | mov edx,shoot_esp |
523 | mov edx,shoot_esp |
524 | @@: |
524 | @@: |
525 | bts dword [flags],2 |
525 | bts dword [flags],2 |
526 | jc .running |
526 | jc .running |
527 | bt dword [flags],1 |
527 | bt dword [flags],1 |
528 | jc .running |
528 | jc .running |
529 | 529 | ||
530 | xor ebx,ebx |
530 | xor ebx,ebx |
531 | inc ebx |
531 | inc ebx |
532 | mcall SF_CREATE_THREAD |
532 | mcall SF_CREATE_THREAD |
533 | .running: |
533 | .running: |
534 | ret |
534 | ret |
535 | 535 | ||
536 | ;--- ¯®â®ª, ¤¥« î騩 1 ᨬ®ª --- |
536 | ;--- ¯®â®ª, ¤¥« î騩 1 ᨬ®ª --- |
537 | one_shoot_thread: |
537 | one_shoot_thread: |
538 | mov ecx,[slot_n] |
538 | mov ecx,[slot_n] |
539 | activ_window |
539 | activ_window |
540 | bt dword [ch1.flags],1 ; ¬¨¨¬¨§¨à®¢ âì ®ª® ? |
540 | bt dword [ch1.flags],1 ; ¬¨¨¬¨§¨à®¢ âì ®ª® ? |
541 | jnc @f |
541 | jnc @f |
542 | mov esi,2 |
542 | mov esi,2 |
543 | mcall SF_IPC, SSF_SEND_MESSAGE, [app.pid], messages.min_window |
543 | mcall SF_IPC, SSF_SEND_MESSAGE, [app.pid], messages.min_window |
544 | @@: |
544 | @@: |
545 | call shoot |
545 | call shoot |
546 | btr dword [flags],2 |
546 | btr dword [flags],2 |
547 | jmp close |
547 | jmp close |
548 | 548 | ||
549 | ;--- ¯à®æ¥¤ãà , ®â¯à ¢«ïîé ï £« ¢®¬ã ®ªã á®®¡é¥¨¥ ® ¯¥à¥à¨á®¢ª¥ |
549 | ;--- ¯à®æ¥¤ãà , ®â¯à ¢«ïîé ï £« ¢®¬ã ®ªã á®®¡é¥¨¥ ® ¯¥à¥à¨á®¢ª¥ |
550 | ; áâப¨ á®áâ®ï¨ï --- |
550 | ; áâப¨ á®áâ®ï¨ï --- |
551 | send_draw_status: |
551 | send_draw_status: |
552 | mov esi,2 |
552 | mov esi,2 |
553 | mcall SF_IPC, SSF_SEND_MESSAGE, [app.pid], messages.draw_status |
553 | mcall SF_IPC, SSF_SEND_MESSAGE, [app.pid], messages.draw_status |
554 | ret |
554 | ret |
555 | 555 | ||
556 | ;--- ¯®â®ª, á®åà ï ä ©« --- |
556 | ;--- ¯®â®ª, á®åà ï ä ©« --- |
557 | save_shoot_thread: |
557 | save_shoot_thread: |
558 | mov ecx,[slot_n] |
558 | mov ecx,[slot_n] |
559 | activ_window |
559 | activ_window |
560 | call save_file |
560 | call save_file |
561 | btr dword [flags],2 |
561 | btr dword [flags],2 |
562 | jmp close |
562 | jmp close |
563 | 563 | ||
564 | ;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª ®ª ãáâ ®¢ª¨ ®¡« á⨠áꥬª¨ --- |
564 | ;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª ®ª ãáâ ®¢ª¨ ®¡« á⨠áꥬª¨ --- |
565 | show_set_rect_window: |
565 | show_set_rect_window: |
566 | bts dword [flags],3 |
566 | bts dword [flags],3 |
567 | jc @f |
567 | jc @f |
568 | xor ebx,ebx |
568 | xor ebx,ebx |
569 | inc ebx |
569 | inc ebx |
570 | mcall SF_CREATE_THREAD,, set_rect_window, set_rect_window_esp |
570 | mcall SF_CREATE_THREAD,, set_rect_window, set_rect_window_esp |
571 | 571 | ||
572 | mov [set_rect_window_pid],eax |
572 | mov [set_rect_window_pid],eax |
573 | ret |
573 | ret |
574 | 574 | ||
575 | @@: |
575 | @@: |
576 | mcall SF_SYSTEM, SSF_TERMINATE_THREAD_ID, [set_rect_window_pid] |
576 | mcall SF_SYSTEM, SSF_TERMINATE_THREAD_ID, [set_rect_window_pid] |
577 | btr dword [flags],3 |
577 | btr dword [flags],3 |
578 | ret |
578 | ret |
579 | 579 | ||
580 | ;--- ¯®«ã票¥ ¨ä®à¬ 樨 ®¡ ªâ¨¢®¬ ®ª¥ --- |
580 | ;--- ¯®«ã票¥ ¨ä®à¬ 樨 ®¡ ªâ¨¢®¬ ®ª¥ --- |
581 | get_active_window_info: |
581 | get_active_window_info: |
582 | mcall SF_SYSTEM, SSF_GET_ACTIVE_WINDOW |
582 | mcall SF_SYSTEM, SSF_GET_ACTIVE_WINDOW |
583 | 583 | ||
584 | mov ecx,eax |
584 | mov ecx,eax |
585 | mcall SF_THREAD_INFO, active_app |
585 | mcall SF_THREAD_INFO, active_app |
586 | ret |
586 | ret |
587 | 587 | ||
588 | ;==================================================================== |
588 | ;==================================================================== |
589 | ;=== ¤ ë¥ ¯à®£à ¬¬ë =============================================== |
589 | ;=== ¤ ë¥ ¯à®£à ¬¬ë =============================================== |
590 | ;==================================================================== |
590 | ;==================================================================== |
591 | messages: |
591 | messages: |
592 | .draw_number dw 0 |
592 | .draw_number dw 0 |
593 | .draw_status dw 1 |
593 | .draw_status dw 1 |
594 | .min_window dw 2 |
594 | .min_window dw 2 |
595 | .act_window dw 3 |
595 | .act_window dw 3 |
596 | 596 | ||
597 | grab_text: |
597 | grab_text: |
598 | db title,0 |
598 | db title,0 |
599 | 599 | ||
600 | labels: |
600 | labels: |
601 | label1 label 5,8,0,text.1 ; screen size and color depth |
601 | label1 label 5,8,0,text.1 ; screen size and color depth |
602 | label3 label 5,25,0,text.3 ; ¢¢¥¤¨â¥ ¨¬ï ä ©« |
602 | label3 label 5,25,0,text.3 ; ¢¢¥¤¨â¥ ¨¬ï ä ©« |
603 | label9 label 5,52,0,text.9 ; ®¬¥à ⥪ã饣® ᨬª |
603 | label9 label 5,52,0,text.9 ; ®¬¥à ⥪ã饣® ᨬª |
604 | status label 5,201,0,no_shoot |
604 | status label 5,201,0,no_shoot |
605 | labels_end: |
605 | labels_end: |
606 | 606 | ||
607 | ;--------------------------------------------------------------------- |
607 | ;--------------------------------------------------------------------- |
608 | l_libs_start: |
608 | l_libs_start: |
609 | 609 | ||
610 | library01 l_libs system_dir_Boxlib+9, cur_dir_path, library_path, system_dir_Boxlib, \ |
610 | library01 l_libs system_dir_Boxlib+9, cur_dir_path, library_path, system_dir_Boxlib, \ |
611 | err_message_found_lib1, head_f_l, Box_lib_import, err_message_import1, head_f_i |
611 | err_message_found_lib1, head_f_l, Box_lib_import, err_message_import1, head_f_i |
612 | 612 | ||
613 | library02 l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \ |
613 | library02 l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \ |
614 | err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i |
614 | err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i |
615 | 615 | ||
616 | library03 l_libs system_dir_LibImg+9, cur_dir_path, library_path, system_dir_LibImg, \ |
616 | library03 l_libs system_dir_LibImg+9, cur_dir_path, library_path, system_dir_LibImg, \ |
617 | err_message_found_lib3, head_f_l, import_libimg, err_message_import3, head_f_i |
617 | err_message_found_lib3, head_f_l, import_libimg, err_message_import3, head_f_i |
618 | 618 | ||
619 | end_l_libs: |
619 | end_l_libs: |
620 | ;--------------------------------------------------------------------- |
620 | ;--------------------------------------------------------------------- |
621 | editboxes: |
621 | editboxes: |
622 | ;edit1 edit_box 300,5,35,cl_white,0,0,0,0,300,ed_buffer.1,mouse_dd,ed_focus,10,10 ; ¯ãâì ª ä ©«ã |
622 | ;edit1 edit_box 300,5,35,cl_white,0,0,0,0,300,ed_buffer.1,mouse_dd,ed_focus,10,10 ; ¯ãâì ª ä ©«ã |
623 | edit2 edit_box 35,170,134,cl_white,0,0,0,0,9,ed_buffer.2,mouse_dd,ed_figure_only,3,3 ; § ¤¥à¦ª |
623 | edit2 edit_box 35,170,134,cl_white,0,0,0,0,9,ed_buffer.2,mouse_dd,ed_figure_only,3,3 ; § ¤¥à¦ª |
624 | edit3 edit_box 35,165,164,cl_white,0,0,0,0,9,ed_buffer.3,mouse_dd,ed_figure_only ; ¢â®ã¬¥à æ¨ï |
624 | edit3 edit_box 35,165,164,cl_white,0,0,0,0,9,ed_buffer.3,mouse_dd,ed_figure_only ; ¢â®ã¬¥à æ¨ï |
625 | editboxes_end: |
625 | editboxes_end: |
626 | ;--------------------------------------------------------------------- |
626 | ;--------------------------------------------------------------------- |
627 | buttons: |
627 | buttons: |
628 | but1 txt_button 150,5,15,65,2,0,0,but_text.1,one_shoot ; ᤥ« âì ᨬ®ª |
628 | but1 txt_button 150,5,15,65,2,0,0,but_text.1,one_shoot ; ᤥ« âì ᨬ®ª |
629 | but2 txt_button 34,274,15,34,3,0,0,but_text.2,save_shoot ; "..." - ¢ë¡à âì ¯ãâì á®åà ¥¨ï |
629 | but2 txt_button 34,274,15,34,3,0,0,but_text.2,save_shoot ; "..." - ¢ë¡à âì ¯ãâì á®åà ¥¨ï |
630 | but3 txt_button 145,160,15,65,3,0,0,but_text.3,show_scr_window ; ¯®ª § âì ᨬ®ª |
630 | but3 txt_button 145,160,15,65,3,0,0,but_text.3,show_scr_window ; ¯®ª § âì ᨬ®ª |
631 | but4 txt_button 80,205,15,163,5,0,0,but_text.4,apply_number ; ¯à¨¬¥¨âì ®¬¥à |
631 | but4 txt_button 80,205,15,163,5,0,0,but_text.4,apply_number ; ¯à¨¬¥¨âì ®¬¥à |
632 | but5 txt_button 150,5,15,85,6,0,0,but_text.5,start_autoshoot ; ç âì ¢â®áêñ¬ªã |
632 | but5 txt_button 150,5,15,85,6,0,0,but_text.5,start_autoshoot ; ç âì ¢â®áêñ¬ªã |
633 | but6 txt_button 145,160,15,85,7,0,0,but_text.6,stop_autoshoot ; ®áâ ®¢¨âì ¢â®áêñ¬ªã |
633 | but6 txt_button 145,160,15,85,7,0,0,but_text.6,stop_autoshoot ; ®áâ ®¢¨âì ¢â®áêñ¬ªã |
634 | but7 txt_button 40,70,10,180,8,0,0,but_text.7,show_set_rect_window ; § ¤ âì ®¡« áâì |
634 | but7 txt_button 40,70,10,180,8,0,0,but_text.7,show_set_rect_window ; § ¤ âì ®¡« áâì |
635 | buttons_end: |
635 | buttons_end: |
636 | ;--------------------------------------------------------------------- |
636 | ;--------------------------------------------------------------------- |
637 | check_boxes: |
637 | check_boxes: |
638 | ch1 check_box2 (5 shl 16+11),(105 shl 16 +11),5,cl_white,0,0x80000000,ch_text.1,ch_flag_en+ch_flag_middle ; ᢥàãâì ®ª® |
638 | ch1 check_box2 (5 shl 16+11),(105 shl 16 +11),5,cl_white,0,0x80000000,ch_text.1,ch_flag_en+ch_flag_middle ; ᢥàãâì ®ª® |
639 | ch2 check_box2 (5 shl 16+11),(120 shl 16 +11),5,cl_white,0,0x80000000,ch_text.2,ch_flag_en+ch_flag_middle ; show screenshot |
639 | ch2 check_box2 (5 shl 16+11),(120 shl 16 +11),5,cl_white,0,0x80000000,ch_text.2,ch_flag_en+ch_flag_middle ; show screenshot |
640 | ch4 check_box2 (5 shl 16+11),(135 shl 16 +11),5,cl_white,0,0x80000000,ch_text.4,ch_flag_en+ch_flag_middle ; § ¤¥à¦ª |
640 | ch4 check_box2 (5 shl 16+11),(135 shl 16 +11),5,cl_white,0,0x80000000,ch_text.4,ch_flag_en+ch_flag_middle ; § ¤¥à¦ª |
641 | ch5 check_box2 (5 shl 16+11),(150 shl 16 +11),5,cl_white,0,0x80000000,ch_text.5,ch_flag_en+ch_flag_middle |
641 | ch5 check_box2 (5 shl 16+11),(150 shl 16 +11),5,cl_white,0,0x80000000,ch_text.5,ch_flag_en+ch_flag_middle |
642 | ch6 check_box2 (5 shl 16+11),(165 shl 16 +11),5,cl_white,0,0x80000000,ch_text.6,ch_flag_en+ch_flag_middle |
642 | ch6 check_box2 (5 shl 16+11),(165 shl 16 +11),5,cl_white,0,0x80000000,ch_text.6,ch_flag_en+ch_flag_middle |
643 | use_rect check_box2 (5 shl 16+11),(180 shl 16 +11),5,cl_white,0,0x80000000,ch_text.7,ch_flag_middle ; ¨á¯. ®¡« áâì |
643 | use_rect check_box2 (5 shl 16+11),(180 shl 16 +11),5,cl_white,0,0x80000000,ch_text.7,ch_flag_middle ; ¨á¯. ®¡« áâì |
644 | ; ¢â®ã¬¥à æ¨ï |
644 | ; ¢â®ã¬¥à æ¨ï |
645 | check_boxes_end: |
645 | check_boxes_end: |
646 | ;--------------------------------------------------------------------- |
646 | ;--------------------------------------------------------------------- |
647 | if lang eq ru |
647 | if lang eq ru |
648 | text: |
648 | text: |
649 | .1 db ' §¬¥à íªà ¨ £«ã¡¨ 梥â : å å bit',0 |
649 | .1 db ' §¬¥à íªà ¨ £«ã¡¨ 梥â : å å bit',0 |
650 | .3 db 'ãâì ¤«ï á®åà ¥¨ï ᨬª :',0 |
650 | .3 db 'ãâì ¤«ï á®åà ¥¨ï ᨬª :',0 |
651 | .9 db '®¬¥à ⥪ã饣® ᨬª :',0 |
651 | .9 db '®¬¥à ⥪ã饣® ᨬª :',0 |
652 | 652 | ||
653 | but_text: |
653 | but_text: |
654 | .1 db '¤¥« âì ᨬ®ª íªà ',0 |
654 | .1 db '¤¥« âì ᨬ®ª íªà ',0 |
655 | .2 db '...',0 |
655 | .2 db '...',0 |
656 | .3 db '®ª § âì ᨬ®ª ᥩç á',0 |
656 | .3 db '®ª § âì ᨬ®ª ᥩç á',0 |
657 | .4 db 'ਬ¥¨âì',0 |
657 | .4 db 'ਬ¥¨âì',0 |
658 | .5 db ' ç âì ¢â®áꥬªã',0 |
658 | .5 db ' ç âì ¢â®áꥬªã',0 |
659 | .6 db 'áâ ®¢¨âì ¢â®áꥬªã',0 |
659 | .6 db 'áâ ®¢¨âì ¢â®áꥬªã',0 |
660 | .7 db '§ ¤ âì',0 |
660 | .7 db '§ ¤ âì',0 |
661 | 661 | ||
662 | ch_text: |
662 | ch_text: |
663 | .1 db '¢¥àãâì ®ª®',0 |
663 | .1 db '¢¥àãâì ®ª®',0 |
664 | .2 db '®ª § âì ᨬ®ª',0 |
664 | .2 db '®ª § âì ᨬ®ª',0 |
665 | .4 db ' ¤¥à¦ª ¢ ¬¨««¨á¥ªã¤ å:',0 |
665 | .4 db ' ¤¥à¦ª ¢ ¬¨««¨á¥ªã¤ å:',0 |
666 | .5 db '¢â®á®åà ¥¨¥',0 |
666 | .5 db '¢â®á®åà ¥¨¥',0 |
667 | .6 db '¢â®ã¬¥à æ¨ï, ç¨ ï á',0 |
667 | .6 db '¢â®ã¬¥à æ¨ï, ç¨ ï á',0 |
668 | .7 db '¡« áâì',0 |
668 | .7 db '¡« áâì',0 |
669 | 669 | ||
670 | no_shoot db '¨¬®ª ¥ ᤥ« ',0 |
670 | no_shoot db '¨¬®ª ¥ ᤥ« ',0 |
671 | shooting db '®â®£à ä¨à®¢ ¨¥...',0 |
671 | shooting db '®â®£à ä¨à®¢ ¨¥...',0 |
672 | shooted_ok db '¨¬®ª ᤥ« ',0 |
672 | shooted_ok db '¨¬®ª ᤥ« ',0 |
673 | saving db '®åà ¥¨¥...',0 |
673 | saving db '®åà ¥¨¥...',0 |
674 | saved_ok db '¨¬®ª á®åà ¥',0 |
674 | saved_ok db '¨¬®ª á®åà ¥',0 |
675 | delay_now db ' ¤¥à¦ª ...',0 |
675 | delay_now db ' ¤¥à¦ª ...',0 |
676 | bad_file_name db '¬ï ä ©« ¢¢¥¤¥® ¥¢¥à®',0 |
676 | bad_file_name db '¬ï ä ©« ¢¢¥¤¥® ¥¢¥à®',0 |
677 | disk_filled db '¨áª § ¯®«¥',0 |
677 | disk_filled db '¨áª § ¯®«¥',0 |
678 | bad_fat_table db ' ¡«¨æ FAT à §àãè¥ ',0 |
678 | bad_fat_table db ' ¡«¨æ FAT à §àãè¥ ',0 |
679 | ac_den db '®áâ㯠§ ¯à¥é¥',0 |
679 | ac_den db '®áâ㯠§ ¯à¥é¥',0 |
680 | device_er db '訡ª ãáâனá⢠',0 |
680 | device_er db '訡ª ãáâனá⢠',0 |
681 | not_shooted db '訡ª : ¢ ç «¥ ᤥ« ©â¥ ᨬ®ª',0 |
681 | not_shooted db '訡ª : ¢ ç «¥ ᤥ« ©â¥ ᨬ®ª',0 |
682 | no_file_name db '訡ª : á«¥¤ã¥â ¢¢¥á⨠¨¬ï ä ©« ',0 |
682 | no_file_name db '訡ª : á«¥¤ã¥â ¢¢¥á⨠¨¬ï ä ©« ',0 |
683 | invalid_rect db '¥¤®¯ãáâ¨¬ë¥ à §¬¥àë ®¡« áâ¨',0 |
683 | invalid_rect db '¥¤®¯ãáâ¨¬ë¥ à §¬¥àë ®¡« áâ¨',0 |
684 | keyforexit db 'â® ¢ è ᨬ®ª. ë室 - «î¡ ï ª« ¢¨è .',0 |
684 | keyforexit db 'â® ¢ è ᨬ®ª. ë室 - «î¡ ï ª« ¢¨è .',0 |
685 | 685 | ||
686 | 686 | ||
687 | else |
687 | else |
688 | text: |
688 | text: |
689 | .1 db ' §¬¥à íªà ¨ £«ã¡¨ 梥â : å å ¡¨â',0 |
- | |
690 | .1 db 'Screen size and color depth: å å bit',0 |
689 | .1 db 'Screen size and color depth: å å bit',0 |
691 | .3 db 'Screenshot save path:',0 |
690 | .3 db 'Screenshot save path:',0 |
692 | .9 db 'Current photo number:',0 |
691 | .9 db 'Current photo number:',0 |
693 | 692 | ||
694 | but_text: |
693 | but_text: |
695 | .1 db 'Make screen photo',0 |
694 | .1 db 'Make screen photo',0 |
696 | .2 db 'Save screen photo',0 |
695 | .2 db 'Save screen photo',0 |
697 | .3 db 'Show photo now',0 |
696 | .3 db 'Show photo now',0 |
698 | .4 db 'Apply',0 |
697 | .4 db 'Apply',0 |
699 | .5 db 'Start autoshooting',0 |
698 | .5 db 'Start autoshooting',0 |
700 | .6 db 'Stop autoshooting',0 |
699 | .6 db 'Stop autoshooting',0 |
701 | .7 db 'Set',0 |
700 | .7 db 'Set',0 |
702 | 701 | ||
703 | ch_text: |
702 | ch_text: |
704 | .1 db 'Minimize window',0 |
703 | .1 db 'Minimize window',0 |
705 | .2 db 'Show photo',0 |
704 | .2 db 'Show photo',0 |
706 | .4 db 'Delay in milliseconds:',0 |
705 | .4 db 'Delay in milliseconds:',0 |
707 | .5 db 'Autosave',0 |
706 | .5 db 'Autosave',0 |
708 | .6 db 'Start numeration from',0 |
707 | .6 db 'Start numeration from',0 |
709 | .7 db 'Area',0 |
708 | .7 db 'Area',0 |
710 | 709 | ||
711 | no_shoot db 'There is no photo',0 |
710 | no_shoot db 'There is no photo',0 |
712 | shooting db 'Photographing...',0 |
711 | shooting db 'Photographing...',0 |
713 | shooted_ok db 'Photo created',0 |
712 | shooted_ok db 'Photo created',0 |
714 | saving db 'Saving...',0 |
713 | saving db 'Saving...',0 |
715 | saved_ok db 'Photo saved',0 |
714 | saved_ok db 'Photo saved',0 |
716 | delay_now db 'Delay...',0 |
715 | delay_now db 'Delay...',0 |
717 | bad_file_name db 'File name is wrong',0 |
716 | bad_file_name db 'File name is wrong',0 |
718 | disk_filled db 'Disk is full',0 |
717 | disk_filled db 'Disk is full',0 |
719 | bad_fat_table db 'FAT table destroyed',0 |
718 | bad_fat_table db 'FAT table destroyed',0 |
720 | ac_den db 'Access denied',0 |
719 | ac_den db 'Access denied',0 |
721 | device_er db 'Device error',0 |
720 | device_er db 'Device error',0 |
722 | not_shooted db 'Error: you need to make a photo first',0 |
721 | not_shooted db 'Error: you need to make a photo first',0 |
723 | no_file_name db 'Please, enter file name.',0 |
722 | no_file_name db 'Please, enter file name.',0 |
724 | invalid_rect db 'Wrong area size',0 |
723 | invalid_rect db 'Wrong area size',0 |
725 | keyforexit db 'This is your screenshot. Press any key.',0 |
724 | keyforexit db 'This is your screenshot. Press any key.',0 |
726 | 725 | ||
727 | end if |
726 | end if |
728 | 727 | ||
729 | 728 | ||
730 | 729 | ||
731 | 730 | ||
732 | ;--------------------------------------------------------------------- |
731 | ;--------------------------------------------------------------------- |
733 | PathShow_data_1: |
732 | PathShow_data_1: |
734 | .type dd 0 ;+0 |
733 | .type dd 0 ;+0 |
735 | .start_y dw 38 ;+4 |
734 | .start_y dw 38 ;+4 |
736 | .start_x dw 6 ;+6 |
735 | .start_x dw 6 ;+6 |
737 | .font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
736 | .font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
738 | .area_size_x dw 300 ;+10 |
737 | .area_size_x dw 300 ;+10 |
739 | .font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
738 | .font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
740 | .background_flag dd 0 ;+16 |
739 | .background_flag dd 0 ;+16 |
741 | .font_color dd 0x0 ;+20 |
740 | .font_color dd 0x0 ;+20 |
742 | .background_color dd 0x0 ;+24 |
741 | .background_color dd 0x0 ;+24 |
743 | .text_pointer dd fname_buf ;+28 |
742 | .text_pointer dd fname_buf ;+28 |
744 | .work_area_pointer dd text_work_area ;+32 |
743 | .work_area_pointer dd text_work_area ;+32 |
745 | .temp_text_length dd 0 ;+36 |
744 | .temp_text_length dd 0 ;+36 |
746 | ;--------------------------------------------------------------------- |
745 | ;--------------------------------------------------------------------- |
747 | OpenDialog_data: |
746 | OpenDialog_data: |
748 | .type dd 1 ; Save |
747 | .type dd 1 ; Save |
749 | .procinfo dd procinfo ;+4 |
748 | .procinfo dd procinfo ;+4 |
750 | .com_area_name dd communication_area_name ;+8 |
749 | .com_area_name dd communication_area_name ;+8 |
751 | .com_area dd 0 ;+12 |
750 | .com_area dd 0 ;+12 |
752 | .opendir_pach dd temp_dir_pach ;+16 |
751 | .opendir_pach dd temp_dir_pach ;+16 |
753 | .dir_default_pach dd communication_area_default_pach ;+20 |
752 | .dir_default_pach dd communication_area_default_pach ;+20 |
754 | .start_path dd open_dialog_path ;+24 |
753 | .start_path dd open_dialog_path ;+24 |
755 | .draw_window dd draw_window ;+28 |
754 | .draw_window dd draw_window ;+28 |
756 | .status dd 0 ;+32 |
755 | .status dd 0 ;+32 |
757 | .openfile_pach dd fname_buf ;+36 |
756 | .openfile_pach dd fname_buf ;+36 |
758 | .filename_area dd filename_area ;+40 |
757 | .filename_area dd filename_area ;+40 |
759 | .filter_area dd Filter |
758 | .filter_area dd Filter |
760 | .x: |
759 | .x: |
761 | .x_size dw 420 ;+48 ; Window X size |
760 | .x_size dw 420 ;+48 ; Window X size |
762 | .x_start dw 10 ;+50 ; Window X position |
761 | .x_start dw 10 ;+50 ; Window X position |
763 | .y: |
762 | .y: |
764 | .y_size dw 320 ;+52 ; Window y size |
763 | .y_size dw 320 ;+52 ; Window y size |
765 | .y_start dw 10 ;+54 ; Window Y position |
764 | .y_start dw 10 ;+54 ; Window Y position |
766 | 765 | ||
767 | communication_area_name: |
766 | communication_area_name: |
768 | db 'FFFFFFFF_open_dialog',0 |
767 | db 'FFFFFFFF_open_dialog',0 |
769 | open_dialog_path: |
768 | open_dialog_path: |
770 | if __nightbuild eq yes |
769 | if __nightbuild eq yes |
771 | db '/sys/MANAGERS/opendial',0 |
770 | db '/sys/MANAGERS/opendial',0 |
772 | else |
771 | else |
773 | db '/sys/File Managers/opendial',0 |
772 | db '/sys/File Managers/opendial',0 |
774 | end if |
773 | end if |
775 | communication_area_default_pach: |
774 | communication_area_default_pach: |
776 | db '/sys',0 |
775 | db '/sys',0 |
777 | 776 | ||
778 | Filter: |
777 | Filter: |
779 | dd Filter.end - Filter |
778 | dd Filter.end - Filter |
780 | .1: |
779 | .1: |
781 | db 'PNG',0 |
780 | db 'PNG',0 |
782 | .end: |
781 | .end: |
783 | db 0 |
782 | db 0 |
784 | 783 | ||
785 | start_temp_file_name: db '1.png',0 |
784 | start_temp_file_name: db '1.png',0 |
786 | 785 | ||
787 | ;--------------------------------------------------------------------- |
786 | ;--------------------------------------------------------------------- |
788 | 787 | ||
789 | PrintScreen db 0 |
788 | PrintScreen db 0 |
790 | autoshoot_flag db 0 |
789 | autoshoot_flag db 0 |
791 | 790 | ||
792 | app_ipc ipc_buffer 32 |
791 | app_ipc ipc_buffer 32 |
793 | align 4 |
792 | align 4 |
794 | 793 | ||
795 | mouse_flag: dd 0x0 |
794 | mouse_flag: dd 0x0 |
796 | ;--------------------------------------------------------------------- |
795 | ;--------------------------------------------------------------------- |
797 | align 4 |
796 | align 4 |
798 | 797 | ||
799 | ed_buffer: |
798 | ed_buffer: |
800 | .1: db '/sys/1.png',0 |
799 | .1: db '/sys/1.png',0 |
801 | ;rb 287 |
800 | ;rb 287 |
802 | .2: |
801 | .2: |
803 | db '100',0 |
802 | db '100',0 |
804 | rb 6 |
803 | rb 6 |
805 | .3: |
804 | .3: |
806 | rb 10 |
805 | rb 10 |
807 | ;--------------------------------------------------------------------- |
806 | ;--------------------------------------------------------------------- |
808 | IM_END: |
807 | IM_END: |
809 | ;--------------------------------------------------------------------- |
808 | ;--------------------------------------------------------------------- |
810 | structure_of_potock: |
809 | structure_of_potock: |
811 | rb 100 |
810 | rb 100 |
812 | ;--------------------------------------------------------------------- |
811 | ;--------------------------------------------------------------------- |
813 | align 4 |
812 | align 4 |
814 | 813 | ||
815 | cur_number dd ? |
814 | cur_number dd ? |
816 | 815 | ||
817 | sign_n db ? |
816 | sign_n db ? |
818 | 817 | ||
819 | slot_n dd ? |
818 | slot_n dd ? |
820 | 819 | ||
821 | flags dd ? |
820 | flags dd ? |
822 | 821 | ||
823 | scr_buf: |
822 | scr_buf: |
824 | .ptr dd ? |
823 | .ptr dd ? |
825 | .end_ptr dd ? |
824 | .end_ptr dd ? |
826 | .size: |
825 | .size: |
827 | .height dw ? |
826 | .height dw ? |
828 | .width dw ? |
827 | .width dw ? |
829 | 828 | ||
830 | fs_struc: |
829 | fs_struc: |
831 | .funk_n dd ? |
830 | .funk_n dd ? |
832 | dd ? |
831 | dd ? |
833 | dd ? |
832 | dd ? |
834 | .bytes_to_write dd ? |
833 | .bytes_to_write dd ? |
835 | .data_ptr dd ?,? |
834 | .data_ptr dd ?,? |
836 | .fn_ptr dd ? |
835 | .fn_ptr dd ? |
837 | 836 | ||
838 | sf_buf: |
837 | sf_buf: |
839 | .bmp_header dd ? |
838 | .bmp_header dd ? |
840 | .bmp_area dd ? |
839 | .bmp_area dd ? |
841 | .end dd ? |
840 | .end dd ? |
842 | 841 | ||
843 | set_rect_window_pid dd ? |
842 | set_rect_window_pid dd ? |
844 | set_rect_window_slot dd ? |
843 | set_rect_window_slot dd ? |
845 | ;--------------------------------------------------------------------- |
844 | ;--------------------------------------------------------------------- |
846 | align 4 |
845 | align 4 |
847 | rect_input_buffer: |
846 | rect_input_buffer: |
848 | .left rb 8 |
847 | .left rb 8 |
849 | .top rb 8 |
848 | .top rb 8 |
850 | .width rb 8 |
849 | .width rb 8 |
851 | .height rb 8 |
850 | .height rb 8 |
852 | 851 | ||
853 | cmdstr rb 257 |
852 | cmdstr rb 257 |
854 | ;--------------------------------------------------------------------- |
853 | ;--------------------------------------------------------------------- |
855 | align 4 |
854 | align 4 |
856 | 855 | ||
857 | file_name: |
856 | file_name: |
858 | rb 1058 |
857 | rb 1058 |
859 | 858 | ||
860 | scr screen_prop |
859 | scr screen_prop |
861 | rect: |
860 | rect: |
862 | .left dw ? |
861 | .left dw ? |
863 | .top dw ? |
862 | .top dw ? |
864 | .height dw ? |
863 | .height dw ? |
865 | .width dw ? |
864 | .width dw ? |
866 | 865 | ||
867 | sc sys_color_table |
866 | sc sys_color_table |
868 | app procinfo ; ¨ä®à¬ æ¨ï ® £« ¢®¬ ®ª¥ |
867 | app procinfo ; ¨ä®à¬ æ¨ï ® £« ¢®¬ ®ª¥ |
869 | active_app procinfo ; ¨ä®à¬ æ¨ï ®¡ ªâ¨¢®¬ ®ª¥ |
868 | active_app procinfo ; ¨ä®à¬ æ¨ï ®¡ ªâ¨¢®¬ ®ª¥ |
870 | set_rect_window_procinfo procinfo ; ¨ä®à¬ æ¨ï ®¡ ®ª¥ ®¡« á⨠|
869 | set_rect_window_procinfo procinfo ; ¨ä®à¬ æ¨ï ®¡ ®ª¥ ®¡« á⨠|
871 | ;--------------------------------------------------------------------- |
870 | ;--------------------------------------------------------------------- |
872 | rb 512 ; á⥪ ¯®â®ª ä®âª ìï |
871 | rb 512 ; á⥪ ¯®â®ª ä®âª ìï |
873 | shoot_esp: |
872 | shoot_esp: |
874 | ;--------------------------------------------------------------------- |
873 | ;--------------------------------------------------------------------- |
875 | rb 512 ; á⥪ ®ª ®¡« á⨠|
874 | rb 512 ; á⥪ ®ª ®¡« á⨠|
876 | set_rect_window_esp: |
875 | set_rect_window_esp: |
877 | ;--------------------------------------------------------------------- |
876 | ;--------------------------------------------------------------------- |
878 | ; app_end ; ª®¥æ ¯à®£à ¬¬ë |
877 | ; app_end ; ª®¥æ ¯à®£à ¬¬ë |
879 | mouse_dd rd 1 |
878 | mouse_dd rd 1 |
880 | ;--------------------------------------------------------------------- |
879 | ;--------------------------------------------------------------------- |
881 | align 4 |
880 | align 4 |
882 | cur_dir_path rb 4096 |
881 | cur_dir_path rb 4096 |
883 | library_path rb 4096 |
882 | library_path rb 4096 |
884 | temp_dir_pach rb 4096 |
883 | temp_dir_pach rb 4096 |
885 | text_work_area rb 1024 |
884 | text_work_area rb 1024 |
886 | fname_buf rb 4096 |
885 | fname_buf rb 4096 |
887 | procinfo rb 1024 |
886 | procinfo rb 1024 |
888 | filename_area rb 256 |
887 | filename_area rb 256 |
889 | ;--------------------------------------------------------------------- |
888 | ;--------------------------------------------------------------------- |
890 | rb 1024 |
889 | rb 1024 |
891 | i_end_tread: |
890 | i_end_tread: |
892 | ;--------------------------------------------------------------------- |
891 | ;--------------------------------------------------------------------- |
893 | rb 1024 |
892 | rb 1024 |
894 | stacktop: |
893 | stacktop: |
895 | ;--------------------------------------------------------------------- |
894 | ;--------------------------------------------------------------------- |
896 | i_end:188,[label1.top]>4,0>35,15>4,302>10,30> |
895 | i_end:188,[label1.top]>4,0>35,15>4,302>10,30> |