Subversion Repositories Kolibri OS

Rev

Rev 307 | Rev 451 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 307 Rev 310
1
; €¢â®à ¯à®£à ¬¬ë …¢â¨å®¢ Œ ªá¨¬ (Maxxxx32)
1
; €¢â®à ¯à®£à ¬¬ë …¢â¨å®¢ Œ ªá¨¬ (Maxxxx32)
2
; 01.02.07 - ®¡­®¢«ñ­ editbox
2
; 01.02.07 - ®¡­®¢«ñ­ editbox
3
; 31.01.07 - ¢áñ ⥯¥àì à¨áã¥âáï ®â­®á¨â¥«ì­® ª«¨¥­â᪮© ®¡« áâ¨
3
; 31.01.07 - ¢áñ ⥯¥àì à¨áã¥âáï ®â­®á¨â¥«ì­® ª«¨¥­â᪮© ®¡« áâ¨
4
macro draw_status text_ptr
4
macro draw_status text_ptr
5
{
5
{
6
	mov	[status.text],dword text_ptr
6
	mov	[status.text],dword text_ptr
7
	call	send_draw_status
7
	call	send_draw_status
8
}
8
}
9
 
9
 
10
 
10
 
11
title equ 'Screenshooter v 0.9' ; ‡ £®«®¢®ª ®ª­ 
11
title equ 'Screenshooter v 0.9' ; ‡ £®«®¢®ª ®ª­ 
12
include 'macros.inc'  ; ¢áâ ¢«ï¥¬ ¬ ªà®áë
12
include 'macros.inc'  ; ¢áâ ¢«ï¥¬ ¬ ªà®áë
13
	meos_header  cmdstr ; ¢áâ ¢«ï¥¬ § £®«®¢®ª ¯à®£à ¬¬ë
13
	meos_header  cmdstr ; ¢áâ ¢«ï¥¬ § £®«®¢®ª ¯à®£à ¬¬ë
14
include 'scrwin.inc'  ; ¢áâ ¢«ï¥¬ ª®¤ ®ª­  ¯à¤¯à®á¬®âà 
14
include 'scrwin.inc'  ; ¢áâ ¢«ï¥¬ ª®¤ ®ª­  ¯à¤¯à®á¬®âà 
15
include 'scrsavef.inc'; ¢áâ ¢«ï¥¬ ¯à®æ¥¤ãàã á®åà ­¥­¨ï ä ©« 
15
include 'scrsavef.inc'; ¢áâ ¢«ï¥¬ ¯à®æ¥¤ãàã á®åà ­¥­¨ï ä ©« 
16
	use_edit_box   ; \
16
	use_edit_box   ; \
17
	use_txt_button ;  |
17
	use_txt_button ;  |
18
	use_label      ;  |-- GUI ª®¬¯®­¥­âë ¨ ­¥ª®â®àë¥ ¯à®æ¥¤ãàë
18
	use_label      ;  |-- GUI ª®¬¯®­¥­âë ¨ ­¥ª®â®àë¥ ¯à®æ¥¤ãàë
19
	use_check_box  ;  |
19
	use_check_box  ;  |
20
	use_text_work  ; /
20
	use_text_work  ; /
21
include 'gp.inc'
21
include 'gp.inc'
22
include 'srectwin.inc'
22
include 'srectwin.inc'
-
 
23
include 'lang.inc'
23
;--- ­ ç «® ¯à®£à ¬¬ë ---
24
;--- ­ ç «® ¯à®£à ¬¬ë ---
24
	app_start
25
	app_start
25
	;mov     al,[gs:1280*4*1024]
26
	;mov     al,[gs:1280*4*1024]
26
		    ; ãáâ ­ ¢«¨¢ ¥¬ ipc ¡ãää¥à
27
		    ; ãáâ ­ ¢«¨¢ ¥¬ ipc ¡ãää¥à
27
	push	60
28
	push	60
28
	pop	eax
29
	pop	eax
29
	;mov     ebx,1
30
	;mov     ebx,1
30
	xor	ebx,ebx
31
	xor	ebx,ebx
31
	inc	ebx
32
	inc	ebx
32
	mov	ecx,app_ipc
33
	mov	ecx,app_ipc
33
	mov	edx,32
34
	mov	edx,32
34
	int	0x40
35
	int	0x40
35
 
36
 
36
	push	66   ; ãáâ ­ ¢«¨¢ ¥¬ £«®¡ «ì­ãî £®àïçãî ª« ¢¨èã
37
	push	66   ; ãáâ ­ ¢«¨¢ ¥¬ £«®¡ «ì­ãî £®àïçãî ª« ¢¨èã
37
	pop	eax
38
	pop	eax
38
	push	eax
39
	push	eax
39
	mov	ebx,4
40
	mov	ebx,4
40
	mov	cl,55	 ; 55 - PrintScrn
41
	mov	cl,55	 ; 55 - PrintScrn
41
	xor	edx,edx
42
	xor	edx,edx
42
	int	0x40
43
	int	0x40
43
 
44
 
44
	mov	ebx,app
45
	mov	ebx,app
45
	call	get_slot_n
46
	call	get_slot_n
46
	mov	[slot_n],ecx
47
	mov	[slot_n],ecx
47
 
48
 
48
	; ãáâ ­ ¢«¨¢ ¥¬ ¬ áªã ᮡë⨩
49
	; ãáâ ­ ¢«¨¢ ¥¬ ¬ áªã ᮡë⨩
49
	set_events_mask (evm_redraw+evm_key+evm_button+evm_mouse+evm_ipc)
50
	set_events_mask (evm_redraw+evm_key+evm_button+evm_mouse+evm_ipc)
50
 
51
 
51
; á ¯à룠¥¬ ¯à¨ ª ¦¤®© ¯¥à¥à¨á®¢ª¥
52
; á ¯à룠¥¬ ¯à¨ ª ¦¤®© ¯¥à¥à¨á®¢ª¥
52
red:
53
red:
53
	get_procinfo app   ; ¯®«ãç ¥¬ ¨­ä®à¬ æ¨î ® ¯à®æ¥áá¥
54
	get_procinfo app   ; ¯®«ãç ¥¬ ¨­ä®à¬ æ¨î ® ¯à®æ¥áá¥
54
	get_sys_colors sc  ; ¯®«ãç ¥¬ á¨á⥬­ë¥ 梥â 
55
	get_sys_colors sc  ; ¯®«ãç ¥¬ á¨á⥬­ë¥ 梥â 
55
 
56
 
56
	; ãáâ ­ ¢«¨¢ ¥¬ á¨á⥬­ë¥ æ¢¥â  ã GUI ª®¬¯®­¥­â®¢
57
	; ãáâ ­ ¢«¨¢ ¥¬ á¨á⥬­ë¥ æ¢¥â  ã GUI ª®¬¯®­¥­â®¢
57
	txt_but_set_sys_color buttons,buttons_end,sc		 ; \
58
	txt_but_set_sys_color buttons,buttons_end,sc		 ; \
58
	labels_set_sys_color labels,labels_end,sc		 ; |
59
	labels_set_sys_color labels,labels_end,sc		 ; |
59
	check_boxes_set_sys_color check_boxes,check_boxes_end,sc ; |
60
	check_boxes_set_sys_color check_boxes,check_boxes_end,sc ; |
60
	edit_boxes_set_sys_color editboxes,editboxes_end,sc	 ; /
61
	edit_boxes_set_sys_color editboxes,editboxes_end,sc	 ; /
61
 
62
 
62
	get_screen_prop scr ; ¯®«ãç ¥¬ ¨­ä®à¬ æ¨î ®¡ íªà ­¥
63
	get_screen_prop scr ; ¯®«ãç ¥¬ ¨­ä®à¬ æ¨î ®¡ íªà ­¥
63
	call	draw_window ; ¯¥à¥à¨á®¢ë¢ ¥¬ ®ª­®
64
	call	draw_window ; ¯¥à¥à¨á®¢ë¢ ¥¬ ®ª­®
64
still:
65
still:
65
	wait_event red,key,button,mouse,ipc,still ; ¦¤¥¬ ᮡë⨩
66
	wait_event red,key,button,mouse,ipc,still ; ¦¤¥¬ ᮡë⨩
66
 
67
 
67
key:
68
key:
68
	get_key
69
	get_key
69
	cmp	al,2
70
	cmp	al,2
70
	jne	@f
71
	jne	@f
71
	cmp	ah,55
72
	cmp	ah,55
72
	jne	@f
73
	jne	@f
73
	call	shoot
74
	call	shoot
74
	jmp	still
75
	jmp	still
75
@@:
76
@@:
76
	key_edit_boxes editboxes,editboxes_end
77
	key_edit_boxes editboxes,editboxes_end
77
	jmp	still
78
	jmp	still
78
button:
79
button:
79
	get_pressed_button
80
	get_pressed_button
80
	cmp	ah,1
81
	cmp	ah,1
81
	je	p_close
82
	je	p_close
82
	txt_but_ev buttons,buttons_end
83
	txt_but_ev buttons,buttons_end
83
	jmp	still
84
	jmp	still
84
mouse:
85
mouse:
85
	get_active_window
86
	get_active_window
86
	cmp	eax,[slot_n]
87
	cmp	eax,[slot_n]
87
	jne	still
88
	jne	still
88
	mouse_check_boxes check_boxes,check_boxes_end
89
	mouse_check_boxes check_boxes,check_boxes_end
89
	mouse_edit_boxes editboxes,editboxes_end
90
	mouse_edit_boxes editboxes,editboxes_end
90
	jmp	still
91
	jmp	still
91
ipc:
92
ipc:
92
	cmp	word [app_ipc+8],2
93
	cmp	word [app_ipc+8],2
93
	jne	@f
94
	jne	@f
94
	min_window
95
	min_window
95
	jmp	.clear_ipc
96
	jmp	.clear_ipc
96
@@:
97
@@:
97
 
98
 
98
	call	draw_number
99
	call	draw_number
99
	call	dr_st
100
	call	dr_st
100
 
101
 
101
.clear_ipc:
102
.clear_ipc:
102
	cld
103
	cld
103
	xor	eax,eax
104
	xor	eax,eax
104
	movr	 ecx,32
105
	movr	 ecx,32
105
	mov	edi,app_ipc
106
	mov	edi,app_ipc
106
	rep	stosb
107
	rep	stosb
107
	jmp	still
108
	jmp	still
108
 
109
 
109
p_close:
110
p_close:
110
	btr	dword [flags],1
111
	btr	dword [flags],1
111
 
112
 
112
	bt	dword [flags],3
113
	bt	dword [flags],3
113
	jnc	@f
114
	jnc	@f
114
	movr	eax,18
115
	movr	eax,18
115
	mov	ebx,eax
116
	mov	ebx,eax
116
	mov	ecx,[set_rect_window_pid]
117
	mov	ecx,[set_rect_window_pid]
117
	int	0x40
118
	int	0x40
118
@@:
119
@@:
119
 
120
 
120
close:
121
close:
121
	app_close
122
	app_close
122
 
123
 
123
;--------------------------------------------------------------------
124
;--------------------------------------------------------------------
124
;--- ¯à®®æ¥¤ãà  ¯¥à¥à¨á®¢ª¨ £« ¢­®£® ®ª­  ---------------------------
125
;--- ¯à®®æ¥¤ãà  ¯¥à¥à¨á®¢ª¨ £« ¢­®£® ®ª­  ---------------------------
125
;--------------------------------------------------------------------
126
;--------------------------------------------------------------------
126
draw_window:
127
draw_window:
127
start_draw_window	 ; ­ ç «® ¯¥à¥à¨á®¢ª¨
128
start_draw_window	 ; ­ ç «® ¯¥à¥à¨á®¢ª¨
128
	; ®¯à¥¤¥«ï¥¬ ®ª­®
129
	; ®¯à¥¤¥«ï¥¬ ®ª­®
129
	get_skin_height
130
	get_skin_height
130
	mov	ebx,100*65536+320
131
	mov	ebx,100*65536+320
131
	mov	ecx,100*65536+220
132
	mov	ecx,100*65536+220
132
	add	cx,ax
133
	add	cx,ax
133
	mov	edx,[sc.work]
134
	mov	edx,[sc.work]
134
	add	edx,0x33000000;0x33000000
135
	add	edx,0x33000000;0x33000000
135
	xor	esi,esi
136
	xor	esi,esi
136
	;xor     edi,edi
137
	;xor     edi,edi
137
	mov	edi,grab_text
138
	mov	edi,grab_text
138
	xor	eax,eax
139
	xor	eax,eax
139
	int	0x40
140
	int	0x40
140
 
141
 
141
	movr	 eax,47 	    ; ¢ë¢®¤¨¬ ç¨á«  ¢ ®ª­®
142
	movr	 eax,47 	    ; ¢ë¢®¤¨¬ ç¨á«  ¢ ®ª­®
142
	mov	bx,4
143
	mov	bx,4
143
	shl	ebx,16
144
	shl	ebx,16
144
	movsx	ecx,word [scr.width] ; è¨à¨­  íªà ­ 
145
	movsx	ecx,word [scr.width] ; è¨à¨­  íªà ­ 
145
	mov	dx,95
146
	mov	dx,95
146
	shl	edx,16
147
	shl	edx,16
147
	mov	dx,[label1.top]
148
	mov	dx,[label1.top]
148
	push	dx
149
	push	dx
149
	mov	esi,[sc.work_text]
150
	mov	esi,[sc.work_text]
150
	int	0x40
151
	int	0x40
151
	movsx	ecx,word [scr.height]	; ¢ëá®â  íªà ­ 
152
	movsx	ecx,word [scr.height]	; ¢ëá®â  íªà ­ 
152
	mov	dx,[label2.top]
153
	mov	dx,[label2.top]
153
	int	0x40
154
	int	0x40
154
	mov	bx,2
155
	mov	bx,2
155
	shl	ebx,16
156
	shl	ebx,16
156
	movsx	ecx,word [scr.bitspp]	; ¡¨â ­  ¯¨ªá¥«ì
157
	movsx	ecx,word [scr.bitspp]	; ¡¨â ­  ¯¨ªá¥«ì
157
	mov	dx,240
158
	mov	dx,240
158
	shl	edx,16
159
	shl	edx,16
159
	pop	dx
160
	pop	dx
160
	int	0x40
161
	int	0x40
161
	mov	bx,6
162
	mov	bx,6
162
	shl	ebx,16
163
	shl	ebx,16
163
	mov	ecx,[scr.bytesps]	; ¡ ©â ­  áâபã
164
	mov	ecx,[scr.bytesps]	; ¡ ©â ­  áâபã
164
	mov	dx,[label2.top]
165
	mov	dx,[label2.top]
165
	int	0x40
166
	int	0x40
166
 
167
 
167
	call	draw_number	 ; ¯à®à¨á®¢ë¢ ¥¬ ­®¬¥à á­¨¬ª 
168
	call	draw_number	 ; ¯à®à¨á®¢ë¢ ¥¬ ­®¬¥à á­¨¬ª 
168
	call	dr_st
169
	call	dr_st
169
 
170
 
170
	draw_labels labels,labels_end		 ; ¬¥âª¨
171
	draw_labels labels,labels_end		 ; ¬¥âª¨
171
	draw_edit_boxes editboxes,editboxes_end  ; edit_box
172
	draw_edit_boxes editboxes,editboxes_end  ; edit_box
172
	draw_txt_buttons buttons,buttons_end	 ; ª­®¯ª¨
173
	draw_txt_buttons buttons,buttons_end	 ; ª­®¯ª¨
173
	draw_check_boxes check_boxes,check_boxes_end ; ä« ¦ª¨
174
	draw_check_boxes check_boxes,check_boxes_end ; ä« ¦ª¨
174
stop_draw_window      ; ª®­¥æ ¯¥à¥à¨á®¢ª¨
175
stop_draw_window      ; ª®­¥æ ¯¥à¥à¨á®¢ª¨
175
ret
176
ret
176
 
177
 
177
shoot:
178
shoot:
178
	bt	dword [ch4.flags],1   ; ¢ª«î祭  «¨ § ¤¥à¦ª  ?
179
	bt	dword [ch4.flags],1   ; ¢ª«î祭  «¨ § ¤¥à¦ª  ?
179
	jnc	@f
180
	jnc	@f
180
	draw_status delay_now
181
	draw_status delay_now
181
	mov	edi,ed_buffer.2
182
	mov	edi,ed_buffer.2
182
	call	zstr_to_int
183
	call	zstr_to_int
183
	mov	ebx,eax
184
	mov	ebx,eax
184
	delay
185
	delay
185
@@:
186
@@:
186
	call	get_mem_for_shoot; ¯®«ãç ¥¬ ¯ ¬ïâì ¤«ï á­¨¬ª 
187
	call	get_mem_for_shoot; ¯®«ãç ¥¬ ¯ ¬ïâì ¤«ï á­¨¬ª 
187
 
188
 
188
 
189
 
189
	bts	dword [flags],0       ; ­ã«¥¢®© ä« £ - á­¨¬®ª ¥áâì ¢ ¯ ¬ïâ¨
190
	bts	dword [flags],0       ; ­ã«¥¢®© ä« £ - á­¨¬®ª ¥áâì ¢ ¯ ¬ïâ¨
190
 
191
 
191
	; ¤¥« ¥¬ á­¨¬®ª
192
	; ¤¥« ¥¬ á­¨¬®ª
192
	draw_status shooting
193
	draw_status shooting
193
	mov	esi,scr
194
	mov	esi,scr
194
	mov	edi,[scr_buf.ptr]
195
	mov	edi,[scr_buf.ptr]
195
	call	copy_screen_to_image
196
	call	copy_screen_to_image
196
 
197
 
197
	bt	dword [use_rect.flags],1
198
	bt	dword [use_rect.flags],1
198
	jc	.use_rect
199
	jc	.use_rect
199
	push	dword [scr]
200
	push	dword [scr]
200
	jmp	@f
201
	jmp	@f
201
.use_rect:
202
.use_rect:
202
	push	dword [rect.height]
203
	push	dword [rect.height]
203
@@:
204
@@:
204
	pop	dword [scr_buf.size]
205
	pop	dword [scr_buf.size]
205
 
206
 
206
	bt	dword [ch5.flags],1  ; ¢ª«î祭® «¨  ¢â®á®åà ­¥­¨¥ ?
207
	bt	dword [ch5.flags],1  ; ¢ª«î祭® «¨  ¢â®á®åà ­¥­¨¥ ?
207
	jnc	@f
208
	jnc	@f
208
	call	save_file
209
	call	save_file
209
@@:
210
@@:
210
	draw_status	shooted_ok
211
	draw_status	shooted_ok
211
 
212
 
212
	bt	dword [flags],1
213
	bt	dword [flags],1
213
	jnc	@f
214
	jnc	@f
214
	ret
215
	ret
215
@@:
216
@@:
216
 
217
 
217
	bt	dword [ch2.flags],1  ; ¯®ª § âì ®ª­® ¯à¥¤¯à®á¬®âà  ?
218
	bt	dword [ch2.flags],1  ; ¯®ª § âì ®ª­® ¯à¥¤¯à®á¬®âà  ?
218
	jnc	@f
219
	jnc	@f
219
	call	show_scr_window
220
	call	show_scr_window
220
@@:
221
@@:
221
	bt	word [ch3.flags],1   ; ¢®ááâ ­®¢¨âì ®ª­® ?
222
	bt	word [ch3.flags],1   ; ¢®ááâ ­®¢¨âì ®ª­® ?
222
	jnc	@f
223
	jnc	@f
223
 
224
 
224
	delay 100
225
	delay 100
225
	mov	ecx,[slot_n]
226
	mov	ecx,[slot_n]
226
	activ_window
227
	activ_window
227
@@:
228
@@:
228
ret
229
ret
229
 
230
 
230
;--- ¯®«ãç¨âì ¯ ¬ïâì ¤«ï á­¨¬ª  ---
231
;--- ¯®«ãç¨âì ¯ ¬ïâì ¤«ï á­¨¬ª  ---
231
get_mem_for_shoot:
232
get_mem_for_shoot:
232
	mov	[scr_buf.ptr],dword __app_end
233
	mov	[scr_buf.ptr],dword __app_end
233
	bt	dword [use_rect.flags],1 ; ä®âª âì ®¡« áâì íªà ­ 
234
	bt	dword [use_rect.flags],1 ; ä®âª âì ®¡« áâì íªà ­ 
234
	jc	.use_area
235
	jc	.use_area
235
	movzx	ecx, word [scr.width]
236
	movzx	ecx, word [scr.width]
236
	movzx	ebx, word [scr.height]
237
	movzx	ebx, word [scr.height]
237
	jmp	@f
238
	jmp	@f
238
.use_area:
239
.use_area:
239
	call	read_rect
240
	call	read_rect
240
	movzx	ecx, word [rect.width]
241
	movzx	ecx, word [rect.width]
241
	movzx	ebx, word [rect.height]
242
	movzx	ebx, word [rect.height]
242
@@:
243
@@:
243
	imul	ecx,ebx
244
	imul	ecx,ebx
244
	lea	ecx,[ecx*3]
245
	lea	ecx,[ecx*3]
245
	add	ecx,__app_end
246
	add	ecx,__app_end
246
	mov	[scr_buf.end_ptr],ecx
247
	mov	[scr_buf.end_ptr],ecx
247
	xor	ebx,ebx
248
	xor	ebx,ebx
248
	inc	ebx
249
	inc	ebx
249
	mov	eax,64
250
	mov	eax,64
250
	int	0x40
251
	int	0x40
251
ret
252
ret
252
 
253
 
253
;--- ᮤ âì ®ª­® ¯à®¥¤¯à®á¬®âà  ---
254
;--- ᮤ âì ®ª­® ¯à®¥¤¯à®á¬®âà  ---
254
show_scr_window:
255
show_scr_window:
255
pusha
256
pusha
256
	bt	dword [flags],0
257
	bt	dword [flags],0
257
	jnc	@f
258
	jnc	@f
258
	mov	eax,51
259
	mov	eax,51
259
	xor	ebx,ebx
260
	xor	ebx,ebx
260
	inc	ebx
261
	inc	ebx
261
	movr	 ecx,scr_window
262
	movr	 ecx,scr_window
262
	mov	edx,__app_end-1000
263
	mov	edx,__app_end-1000
263
	int	0x40
264
	int	0x40
264
@@:
265
@@:
265
popa
266
popa
266
ret
267
ret
267
 
268
 
268
;--- ¯à®ç¨â âì ¨ ­ à¨á®¢ âì ⥪ã騩 ­®¬¥à ---
269
;--- ¯à®ç¨â âì ¨ ­ à¨á®¢ âì ⥪ã騩 ­®¬¥à ---
269
apply_number:
270
apply_number:
270
	mov	edi,ed_buffer.3
271
	mov	edi,ed_buffer.3
271
	call	zstr_to_int
272
	call	zstr_to_int
272
	mov	[cur_number],eax
273
	mov	[cur_number],eax
273
	call	draw_number
274
	call	draw_number
274
ret
275
ret
275
 
276
 
276
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ⥪ã饣® ­®¬¥à  ---
277
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ⥪ã饣® ­®¬¥à  ---
277
draw_number:
278
draw_number:
278
	mov	edi,sign_n_input
279
	mov	edi,sign_n_input
279
	call	zstr_to_int
280
	call	zstr_to_int
280
	mov	[sign_n],al
281
	mov	[sign_n],al
281
	movr	 eax,13
282
	movr	 eax,13
282
	mov	ebx,150*65536+96
283
	mov	ebx,150*65536+96
283
	mov	cx,[label9.top]
284
	mov	cx,[label9.top]
284
	shl	ecx,16
285
	shl	ecx,16
285
	mov	cx,10
286
	mov	cx,10
286
	mov	edx,[sc.work]
287
	mov	edx,[sc.work]
287
	int	0x40
288
	int	0x40
288
	movr	 eax,47
289
	movr	 eax,47
289
	movsx	bx,byte [sign_n]
290
	movsx	bx,byte [sign_n]
290
	shl	ebx,16
291
	shl	ebx,16
291
	mov	ecx,[cur_number]
292
	mov	ecx,[cur_number]
292
	mov	dx,150
293
	mov	dx,150
293
	shl	edx,16
294
	shl	edx,16
294
	mov	dx,[label9.top]
295
	mov	dx,[label9.top]
295
	mov	esi,[sc.work_text]
296
	mov	esi,[sc.work_text]
296
	int	0x40
297
	int	0x40
297
ret
298
ret
298
 
299
 
299
;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª  ¢â®áꥬª¨ ---
300
;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª  ¢â®áꥬª¨ ---
300
start_autoshoot:
301
start_autoshoot:
301
	bts	dword [flags],1
302
	bts	dword [flags],1
302
	jc	@f
303
	jc	@f
303
	movr	 eax,51
304
	movr	 eax,51
304
	;mov     ebx,1
305
	;mov     ebx,1
305
	xor	ebx,ebx
306
	xor	ebx,ebx
306
	inc	ebx
307
	inc	ebx
307
	mov	ecx,autoshoot
308
	mov	ecx,autoshoot
308
	mov	edx,__app_end-512
309
	mov	edx,__app_end-512
309
	int	0x40
310
	int	0x40
310
@@:
311
@@:
311
ret
312
ret
312
 
313
 
313
;--- ®áâ ­ ¢«¨¢ ¥â íâ®â ¯®â®ª ---
314
;--- ®áâ ­ ¢«¨¢ ¥â íâ®â ¯®â®ª ---
314
stop_autoshoot:
315
stop_autoshoot:
315
	btr	dword [flags],1
316
	btr	dword [flags],1
316
ret
317
ret
317
 
318
 
318
;--- 横« ¯®â®ª   ¢â®áꥬª¨ ---
319
;--- 横« ¯®â®ª   ¢â®áꥬª¨ ---
319
autoshoot:
320
autoshoot:
320
	mov	ecx,[slot_n]
321
	mov	ecx,[slot_n]
321
	activ_window
322
	activ_window
322
.next:
323
.next:
323
	bt	dword [flags],1
324
	bt	dword [flags],1
324
	jnc	close
325
	jnc	close
325
	movr	 eax,60
326
	movr	 eax,60
326
	movr	 ebx,2
327
	movr	 ebx,2
327
	mov	ecx,[app.pid]
328
	mov	ecx,[app.pid]
328
	mov	edx,messages.draw_number
329
	mov	edx,messages.draw_number
329
	mov	esi,2
330
	mov	esi,2
330
	int	0x40
331
	int	0x40
331
	call	shoot
332
	call	shoot
332
	jmp	autoshoot.next
333
	jmp	autoshoot.next
333
 
334
 
334
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ áâப¨ á®áâ®ï­¨ï ---
335
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ áâப¨ á®áâ®ï­¨ï ---
335
; (¤®«¦­  ¢ë§ë¢ âìáï ¯®â®ª®¬ £« ¢­®£® ®ª­ )
336
; (¤®«¦­  ¢ë§ë¢ âìáï ¯®â®ª®¬ £« ¢­®£® ®ª­ )
336
dr_st:
337
dr_st:
337
	movr	 eax,38 	     ; ®â१®ª
338
	movr	 eax,38 	     ; ®â१®ª
338
	mov	ebx,0*65536+310
339
	mov	ebx,0*65536+310
339
	mov	ecx,198*65536+198
340
	mov	ecx,198*65536+198
340
	mov	edx,[sc.work_graph]
341
	mov	edx,[sc.work_graph]
341
	int	0x40
342
	int	0x40
342
 
343
 
343
	movr	 eax,13 	     ; ¯®«®áª 
344
	movr	 eax,13 	     ; ¯®«®áª 
344
	mov	bx,310
345
	mov	bx,310
345
	mov	ecx,199*65536+15
346
	mov	ecx,199*65536+15
346
	mov	edx,[sc.work]
347
	mov	edx,[sc.work]
347
	int	0x40
348
	int	0x40
348
 
349
 
349
	mov	edi,status
350
	mov	edi,status
350
	call	draw_label
351
	call	draw_label
351
ret
352
ret
352
 
353
 
353
;--- ¯à®æ¥¤ãà  ¯®«ã祭¨ï ­®¬¥à  á«®â  ¯®â®ª  ---
354
;--- ¯à®æ¥¤ãà  ¯®«ã祭¨ï ­®¬¥à  á«®â  ¯®â®ª  ---
354
; ¢å®¤ ebx - ¡ãää¥à 1024 ¡ ©â
355
; ¢å®¤ ebx - ¡ãää¥à 1024 ¡ ©â
355
; ¢ë室 ecx - ­®¬¥à á«®â 
356
; ¢ë室 ecx - ­®¬¥à á«®â 
356
get_slot_n:
357
get_slot_n:
357
	movr	 eax,9
358
	movr	 eax,9
358
	xor	ecx,ecx
359
	xor	ecx,ecx
359
	dec	ecx
360
	dec	ecx
360
	int	0x40
361
	int	0x40
361
 
362
 
362
	mov	edx,[ebx+30]
363
	mov	edx,[ebx+30]
363
	xor	ecx,ecx
364
	xor	ecx,ecx
364
@@:
365
@@:
365
	movr	 eax,9
366
	movr	 eax,9
366
	inc	ecx
367
	inc	ecx
367
	int	0x40
368
	int	0x40
368
	cmp	[ebx+30],edx
369
	cmp	[ebx+30],edx
369
	je	@f
370
	je	@f
370
	jmp	@b
371
	jmp	@b
371
@@:
372
@@:
372
ret
373
ret
373
 
374
 
374
;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª, ¤¥« î騩 1 á­¨¬®ª ---
375
;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª, ¤¥« î騩 1 á­¨¬®ª ---
375
one_shoot:
376
one_shoot:
376
	mov	ecx,one_shoot_thread
377
	mov	ecx,one_shoot_thread
377
	mov	edx,shoot_esp
378
	mov	edx,shoot_esp
378
	jmp	@f
379
	jmp	@f
379
;--- ¯à®æ¥¤à , § ¯ã᪠îé ï ¯®â®ª, á®åà ­ïî騩 á­¨¬®ª ---
380
;--- ¯à®æ¥¤à , § ¯ã᪠îé ï ¯®â®ª, á®åà ­ïî騩 á­¨¬®ª ---
380
save_shoot:
381
save_shoot:
381
	mov	ecx,save_shoot_thread
382
	mov	ecx,save_shoot_thread
382
	mov	edx,shoot_esp
383
	mov	edx,shoot_esp
383
@@:
384
@@:
384
	bts	dword [flags],2
385
	bts	dword [flags],2
385
	jc	.running
386
	jc	.running
386
	bt	dword [flags],1
387
	bt	dword [flags],1
387
	jc	.running
388
	jc	.running
388
 
389
 
389
	movr	 eax,51
390
	movr	 eax,51
390
	;mov     ebx,1
391
	;mov     ebx,1
391
	xor	ebx,ebx
392
	xor	ebx,ebx
392
	inc	ebx
393
	inc	ebx
393
	int	0x40
394
	int	0x40
394
.running:
395
.running:
395
ret
396
ret
396
 
397
 
397
;--- ¯®â®ª, ¤¥« î騩 1 á­¨¬®ª ---
398
;--- ¯®â®ª, ¤¥« î騩 1 á­¨¬®ª ---
398
one_shoot_thread:
399
one_shoot_thread:
399
	mov	ecx,[slot_n]
400
	mov	ecx,[slot_n]
400
	activ_window
401
	activ_window
401
	bt	dword [ch1.flags],1   ; ¬¨­¨¬¨§¨à®¢ âì ®ª­® ?
402
	bt	dword [ch1.flags],1   ; ¬¨­¨¬¨§¨à®¢ âì ®ª­® ?
402
	jnc	 @f
403
	jnc	 @f
403
	movr	 eax,60
404
	movr	 eax,60
404
	movr	 ebx,2
405
	movr	 ebx,2
405
	mov	ecx,[app.pid]
406
	mov	ecx,[app.pid]
406
	mov	edx,messages.min_window
407
	mov	edx,messages.min_window
407
	mov	esi,2
408
	mov	esi,2
408
	int	0x40
409
	int	0x40
409
@@:
410
@@:
410
	call	shoot
411
	call	shoot
411
	btr	dword [flags],2
412
	btr	dword [flags],2
412
	jmp	close
413
	jmp	close
413
 
414
 
414
;--- ¯à®æ¥¤ãà , ®â¯à ¢«ïîé ï £« ¢­®¬ã ®ª­ã á®®¡é¥­¨¥ ® ¯¥à¥à¨á®¢ª¥
415
;--- ¯à®æ¥¤ãà , ®â¯à ¢«ïîé ï £« ¢­®¬ã ®ª­ã á®®¡é¥­¨¥ ® ¯¥à¥à¨á®¢ª¥
415
; áâப¨ á®áâ®ï­¨ï ---
416
; áâப¨ á®áâ®ï­¨ï ---
416
send_draw_status:
417
send_draw_status:
417
	movr	 eax,60
418
	movr	 eax,60
418
	movr	 ebx,2
419
	movr	 ebx,2
419
	mov	ecx,[app.pid]
420
	mov	ecx,[app.pid]
420
	mov	edx,messages.draw_status
421
	mov	edx,messages.draw_status
421
	mov	esi,2
422
	mov	esi,2
422
	int	0x40
423
	int	0x40
423
ret
424
ret
424
 
425
 
425
;--- ¯®â®ª, á®åà ­ï ä ©« ---
426
;--- ¯®â®ª, á®åà ­ï ä ©« ---
426
save_shoot_thread:
427
save_shoot_thread:
427
	mov	ecx,[slot_n]
428
	mov	ecx,[slot_n]
428
	activ_window
429
	activ_window
429
	call	save_file
430
	call	save_file
430
	btr	dword [flags],2
431
	btr	dword [flags],2
431
	jmp	close
432
	jmp	close
432
 
433
 
433
;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª ®ª­  ãáâ ­®¢ª¨ ®¡« á⨠áꥬª¨ ---
434
;--- ¯à®æ¥¤ãà , § ¯ã᪠îé ï ¯®â®ª ®ª­  ãáâ ­®¢ª¨ ®¡« á⨠áꥬª¨ ---
434
show_set_rect_window:
435
show_set_rect_window:
435
	bts	dword [flags],3
436
	bts	dword [flags],3
436
	jc	@f
437
	jc	@f
437
	movr	 eax,51
438
	movr	 eax,51
438
	xor	ebx,ebx
439
	xor	ebx,ebx
439
	inc	ebx
440
	inc	ebx
440
	mov	ecx,set_rect_window
441
	mov	ecx,set_rect_window
441
	mov	edx,set_rect_window_esp
442
	mov	edx,set_rect_window_esp
442
	int	0x40
443
	int	0x40
443
 
444
 
444
	mov	[set_rect_window_pid],eax
445
	mov	[set_rect_window_pid],eax
445
ret
446
ret
446
 
447
 
447
@@:
448
@@:
448
	movr	eax,18
449
	movr	eax,18
449
	mov	ebx,eax
450
	mov	ebx,eax
450
	mov	ecx,[set_rect_window_pid]
451
	mov	ecx,[set_rect_window_pid]
451
	int	0x40
452
	int	0x40
452
	btr	dword [flags],3
453
	btr	dword [flags],3
453
ret
454
ret
454
 
455
 
455
;--- ¯®«ã祭¨¥ ¨­ä®à¬ æ¨¨ ®¡  ªâ¨¢­®¬ ®ª­¥ ---
456
;--- ¯®«ã祭¨¥ ¨­ä®à¬ æ¨¨ ®¡  ªâ¨¢­®¬ ®ª­¥ ---
456
get_active_window_info:
457
get_active_window_info:
457
	movr	eax,18
458
	movr	eax,18
458
	movr	ebx,7
459
	movr	ebx,7
459
	int	0x40
460
	int	0x40
460
 
461
 
461
	mov	ecx,eax
462
	mov	ecx,eax
462
	movr	eax,9
463
	movr	eax,9
463
	mov	ebx,active_app
464
	mov	ebx,active_app
464
	int	0x40
465
	int	0x40
465
ret
466
ret
466
 
467
 
467
;====================================================================
468
;====================================================================
468
;=== ¤ ­­ë¥ ¯à®£à ¬¬ë ===============================================
469
;=== ¤ ­­ë¥ ¯à®£à ¬¬ë ===============================================
469
;====================================================================
470
;====================================================================
470
messages:
471
messages:
471
.draw_number dw 0
472
.draw_number dw 0
472
.draw_status dw 1
473
.draw_status dw 1
473
.min_window  dw 2
474
.min_window  dw 2
474
 
475
 
475
 
476
 
476
grab_text:
477
grab_text:
477
	db	title,0
478
	db	title,0
478
 
479
 
479
labels:
480
labels:
480
label1 label 5,5,0,text.1   ; è¨à¨­  íªà ­ 
481
label1 label 5,5,0,text.1   ; è¨à¨­  íªà ­ 
481
label2 label 5,15,0,text.2   ; ¢ëá®â  íªà ­ 
482
label2 label 5,15,0,text.2   ; ¢ëá®â  íªà ­ 
482
label3 label 5,25,0,text.3   ; ¢¢¥¤¨â¥ ¨¬ï ä ©« 
483
label3 label 5,25,0,text.3   ; ¢¢¥¤¨â¥ ¨¬ï ä ©« 
483
label4 label 150,5,0,text.4  ; ¡¨â ­  ¯¨ªá¥«ì
484
label4 label 150,5,0,text.4  ; ¡¨â ­  ¯¨ªá¥«ì
484
label5 label 150,15,0,text.5  ; ¡ ©â ­  áâபã
485
label5 label 150,15,0,text.5  ; ¡ ©â ­  áâபã
485
label6 label 115,138,0,text.6  ; 100 = 1 ᥪ.
486
label6 label 115,138,0,text.6  ; 100 = 1 ᥪ.
486
;label7 label 10,190,0,text.7
487
;label7 label 10,190,0,text.7
487
;label8 label 10,225,0,text.8
488
;label8 label 10,225,0,text.8
488
label9 label 5,52,0,text.9   ; ­®¬¥à ⥪ã饣® ᨬª 
489
label9 label 5,52,0,text.9   ; ­®¬¥à ⥪ã饣® ᨬª 
489
label10 label 5,185,0,text.10
490
label10 label 5,185,0,text.10
490
status label 5,201,0,no_shoot
491
status label 5,201,0,no_shoot
491
labels_end:
492
labels_end:
492
 
493
 
493
editboxes:
494
editboxes:
494
edit1 edit_box 300,5,35,cl_white,0,0,0,1024,ed_buffer.1,ed_focus	 ; ¯ãâì ª ä ©«ã
495
edit1 edit_box 300,5,35,cl_white,0,0,0,1024,ed_buffer.1,ed_focus	 ; ¯ãâì ª ä ©«ã
495
edit2 edit_box 35,75,134,cl_white,0,0,0,9,ed_buffer.2,ed_figure_only	 ; § ¤¥à¦ª 
496
edit2 edit_box 35,75,134,cl_white,0,0,0,9,ed_buffer.2,ed_figure_only	 ; § ¤¥à¦ª 
496
edit3 edit_box 35,165,164,cl_white,0,0,0,9,ed_buffer.3,ed_figure_only
497
edit3 edit_box 35,165,164,cl_white,0,0,0,9,ed_buffer.3,ed_figure_only
497
edit4 edit_box 16,165,181,cl_white,0,0,0,1,sign_n_input,ed_figure_only,1
498
edit4 edit_box 16,165,181,cl_white,0,0,0,1,sign_n_input,ed_figure_only,1
498
editboxes_end:
499
editboxes_end:
499
 
500
 
500
buttons:
501
buttons:
501
but1 txt_button 150,5,15,65,2,0,0,but_text.1,one_shoot		  ; ᤥ« âì á­¨¬®ª
502
but1 txt_button 150,5,15,65,2,0,0,but_text.1,one_shoot		  ; ᤥ« âì á­¨¬®ª
502
but2 txt_button 145,160,15,65,3,0,0,but_text.2,save_shoot	   ; á®åà ­¨âì á­¨¬®ª
503
but2 txt_button 145,160,15,65,3,0,0,but_text.2,save_shoot	   ; á®åà ­¨âì á­¨¬®ª
503
but3 txt_button 140,115,12,120,4,0,0,but_text.3,show_scr_window    ; ¯®ª § âì á­¨¬®ª
504
but3 txt_button 140,115,12,120,4,0,0,but_text.3,show_scr_window    ; ¯®ª § âì á­¨¬®ª
504
but4 txt_button 80,205,15,163,5,0,0,but_text.4,apply_number	   ; ¯à¨¬¥­¨âì ­®¬¥à
505
but4 txt_button 80,205,15,163,5,0,0,but_text.4,apply_number	   ; ¯à¨¬¥­¨âì ­®¬¥à
505
but5 txt_button 150,5,15,85,6,0,0,but_text.5,start_autoshoot	 ; ­ ç âì  ¢â®áêñ¬ªã
506
but5 txt_button 150,5,15,85,6,0,0,but_text.5,start_autoshoot	 ; ­ ç âì  ¢â®áêñ¬ªã
506
but6 txt_button 145,160,15,85,7,0,0,but_text.6,stop_autoshoot	  ; ®áâ ­®¢¨âì  ¢â®áêñ¬ªã
507
but6 txt_button 145,160,15,85,7,0,0,but_text.6,stop_autoshoot	  ; ®áâ ­®¢¨âì  ¢â®áêñ¬ªã
507
but7 txt_button 40,205,10,150,8,0,0,but_text.7,show_set_rect_window ; § ¤ âì ®¡« áâì
508
but7 txt_button 40,205,10,150,8,0,0,but_text.7,show_set_rect_window ; § ¤ âì ®¡« áâì
508
buttons_end:
509
buttons_end:
509
 
510
 
510
check_boxes:
511
check_boxes:
511
ch1 check_box 5,105,cl_white,0,0,ch_text.1,(ch_text.2-ch_text.1)  ; ᢥà­ãâì ®ª­®
512
ch1 check_box 5,105,cl_white,0,0,ch_text.1,(ch_text.2-ch_text.1)  ; ᢥà­ãâì ®ª­®
512
ch2 check_box 5,120,cl_white,0,0,ch_text.2,(ch_text.3-ch_text.2)  ; § â¥¬ ᤥ« âì  ªâ¨¢­ë¬
513
ch2 check_box 5,120,cl_white,0,0,ch_text.2,(ch_text.3-ch_text.2)  ; § â¥¬ ᤥ« âì  ªâ¨¢­ë¬
513
ch3 check_box 145,105,cl_white,0,0,ch_text.3,(ch_text.4-ch_text.3) ; ¯®ª § âì á­¨¬®ª
514
ch3 check_box 145,105,cl_white,0,0,ch_text.3,(ch_text.4-ch_text.3) ; ¯®ª § âì á­¨¬®ª
514
ch4 check_box 5,135,cl_white,0,0,ch_text.4,(ch_text.5-ch_text.4)  ;
515
ch4 check_box 5,135,cl_white,0,0,ch_text.4,(ch_text.5-ch_text.4)  ;
515
ch5 check_box 5,150,cl_white,0,0,ch_text.5,(ch_text.6-ch_text.5)
516
ch5 check_box 5,150,cl_white,0,0,ch_text.5,(ch_text.6-ch_text.5)
516
ch6 check_box 5,165,cl_white,0,0,ch_text.6,(ch_text.7-ch_text.6)
517
ch6 check_box 5,165,cl_white,0,0,ch_text.6,(ch_text.7-ch_text.6)
517
use_rect check_box 145,150,cl_white,0,0,ch_text.7,(ch_text.8-ch_text.7) ; ¨á¯. ®¡« áâì
518
use_rect check_box 145,150,cl_white,0,0,ch_text.7,(ch_text.8-ch_text.7) ; ¨á¯. ®¡« áâì
518
;  ¢â®­ã¬¥à æ¨ï
519
;  ¢â®­ã¬¥à æ¨ï
519
check_boxes_end:
520
check_boxes_end:
520
 
521
 
521
if lang eq ru
522
if lang eq ru
522
text:
523
text:
523
.2 db '‚ëá®â  íªà ­ :',0
524
.2 db '‚ëá®â  íªà ­ :',0
524
.1 db '˜¨à¨­  íªà ­ :',0
525
.1 db '˜¨à¨­  íªà ­ :',0
525
.3 db '‚¢¥¤¨â¥ ¯®«­ë© ¯ãâì ª ä ©«ã:',0
526
.3 db '‚¢¥¤¨â¥ ¯®«­ë© ¯ãâì ª ä ©«ã:',0
526
.4 db '¨â ­  ¯¨ªá¥«ì:',0
527
.4 db '¨â ­  ¯¨ªá¥«ì:',0
527
.5 db ' ©â ­  áâபã:',0
528
.5 db ' ©â ­  áâபã:',0
528
.6 db '100 = 1 ᥪ㭤 ',0
529
.6 db '100 = 1 ᥪ㭤 ',0
529
;.7: db '‚¢¥¤¨â¥ ¨¬ï ä ©« :',0
530
;.7: db '‚¢¥¤¨â¥ ¨¬ï ä ©« :',0
530
;.8: db '‚¬¥áâ® "*" ¢ ¨¬¥­¨ ä ©«  ¡ã¤¥â ¢áâ ¢«ïâìáï ­®¬¥à.',0
531
;.8: db '‚¬¥áâ® "*" ¢ ¨¬¥­¨ ä ©«  ¡ã¤¥â ¢áâ ¢«ïâìáï ­®¬¥à.',0
531
.9 db '®¬¥à ⥪ã饣® á­¨¬ª :',0
532
.9 db '®¬¥à ⥪ã饣® á­¨¬ª :',0
532
.10 db 'Š®«¨ç¥á⢮ §­ ª®¢ ¢ ­®¬¥à¥:',0
533
.10 db 'Š®«¨ç¥á⢮ §­ ª®¢ ¢ ­®¬¥à¥:',0
533
 
534
 
534
but_text:
535
but_text:
535
.1 db '‘¤¥« âì á­¨¬®ª íªà ­ ',0
536
.1 db '‘¤¥« âì á­¨¬®ª íªà ­ ',0
536
.2 db '‘®åà ­¨âì á­¨¬®ª íªà ­ ',0
537
.2 db '‘®åà ­¨âì á­¨¬®ª íªà ­ ',0
537
.3 db '®ª § âì á­¨¬®ª ᥩç á',0
538
.3 db '®ª § âì á­¨¬®ª ᥩç á',0
538
.4 db 'à¨¬¥­¨âì',0
539
.4 db 'à¨¬¥­¨âì',0
539
.5 db ' ç âì  ¢â®áꥬªã',0
540
.5 db ' ç âì  ¢â®áꥬªã',0
540
.6 db 'Žáâ ­®¢¨âì  ¢â®áꥬªã',0
541
.6 db 'Žáâ ­®¢¨âì  ¢â®áꥬªã',0
541
.7 db '§ ¤ âì',0
542
.7 db '§ ¤ âì',0
542
 
543
 
543
ch_text:
544
ch_text:
544
.1 db '‘¢¥à­ãâì ®ª­®';,0
545
.1 db '‘¢¥à­ãâì ®ª­®';,0
545
.2 db '®ª § âì á­¨¬®ª';,0
546
.2 db '®ª § âì á­¨¬®ª';,0
546
.3 db '§ â¥¬ ᤥ« âì  ªâ¨¢­ë¬';,0
547
.3 db '§ â¥¬ ᤥ« âì  ªâ¨¢­ë¬';,0
547
.4 db '‡ ¤¥à¦ª :';,0
548
.4 db '‡ ¤¥à¦ª :';,0
548
.5 db '€¢â®á®åà ­¥­¨¥';,0
549
.5 db '€¢â®á®åà ­¥­¨¥';,0
549
.6 db '€¢â®­ã¬¥à æ¨ï, ­ ç¨­ ï á';,0
550
.6 db '€¢â®­ã¬¥à æ¨ï, ­ ç¨­ ï á';,0
550
.7 db 'Ž¡« áâì'
551
.7 db 'Ž¡« áâì'
551
.8:
552
.8:
552
 
553
 
553
no_shoot db '‘­¨¬®ª ­¥ ᤥ« ­',0
554
no_shoot db '‘­¨¬®ª ­¥ ᤥ« ­',0
554
shooting db '”®â®£à ä¨à®¢ ­¨¥...',0
555
shooting db '”®â®£à ä¨à®¢ ­¨¥...',0
555
shooted_ok db '‘­¨¬®ª ᤥ« ­',0
556
shooted_ok db '‘­¨¬®ª ᤥ« ­',0
556
saving db '‘®åà ­¥­¨¥...',0
557
saving db '‘®åà ­¥­¨¥...',0
557
saved_ok db '‘­¨¬®ª á®åà ­¥­',0
558
saved_ok db '‘­¨¬®ª á®åà ­¥­',0
558
delay_now db '‡ ¤¥à¦ª ...',0
559
delay_now db '‡ ¤¥à¦ª ...',0
559
bad_file_name db 'ˆ¬ï ä ©«  ¢¢¥¤¥­® ­¥¢¥à­®',0
560
bad_file_name db 'ˆ¬ï ä ©«  ¢¢¥¤¥­® ­¥¢¥à­®',0
560
disk_filled db '„¨áª § ¯®«­¥­',0
561
disk_filled db '„¨áª § ¯®«­¥­',0
561
bad_fat_table db '’ ¡«¨æ  FAT à §àã襭 ',0
562
bad_fat_table db '’ ¡«¨æ  FAT à §àã襭 ',0
562
ac_den db '„®áâ㯠§ ¯à¥é¥­',0
563
ac_den db '„®áâ㯠§ ¯à¥é¥­',0
563
device_er db 'Žè¨¡ª  ãáâனá⢠',0
564
device_er db 'Žè¨¡ª  ãáâனá⢠',0
564
not_shooted db '‘¤¥« ©â¥ á­¨¬®ª !!!',0
565
not_shooted db '‘¤¥« ©â¥ á­¨¬®ª !!!',0
565
no_file_name db '‚¢¥¤¨â¥ ¨¬ï ä ©«  !!!',0
566
no_file_name db '‚¢¥¤¨â¥ ¨¬ï ä ©«  !!!',0
566
invalid_rect db '¥¤®¯ãáâ¨¬ë¥ à §¬¥àë ®¡« áâ¨',0
567
invalid_rect db '¥¤®¯ãáâ¨¬ë¥ à §¬¥àë ®¡« áâ¨',0
-
 
568
 
-
 
569
else
-
 
570
text:
-
 
571
.2 db 'Screen width:',0
-
 
572
.1 db 'Screen height:',0
-
 
573
.3 db 'Enter full path to the file:',0
-
 
574
.4 db 'Bits per pixel:',0
-
 
575
.5 db 'Bytes per line:',0
-
 
576
.6 db '100 = 1 second',0
-
 
577
;.7: db 'Enter name of file:',0
-
 
578
;.8: db 'Instead of "*" in filename the number will be included.',0
-
 
579
.9 db 'Current photo number:',0
-
 
580
.10 db 'Amount of digits in number:',0
-
 
581
 
-
 
582
but_text:
-
 
583
.1 db 'Make screen photo',0
-
 
584
.2 db 'Save screen photo',0
-
 
585
.3 db 'Show photo now',0
-
 
586
.4 db 'Apply',0
-
 
587
.5 db 'Start autoshooting',0
-
 
588
.6 db 'Stop autoshooting',0
-
 
589
.7 db 'Set',0
-
 
590
 
-
 
591
ch_text:
-
 
592
.1 db 'Minimize window';,0
-
 
593
.2 db 'Show photo';,0
-
 
594
.3 db 'then make active';,0
-
 
595
.4 db 'Delay:';,0
-
 
596
.5 db 'Autosave';,0
-
 
597
.6 db 'Start numeration from';,0
-
 
598
.7 db 'Area'
-
 
599
.8:
-
 
600
 
-
 
601
no_shoot db 'There is no photo',0
-
 
602
shooting db 'Photographing...',0
-
 
603
shooted_ok db 'Photo created',0
-
 
604
saving db 'Saving...',0
-
 
605
saved_ok db 'Photo saved',0
-
 
606
delay_now db 'Delay...',0
-
 
607
bad_file_name db 'File name is wrong',0
-
 
608
disk_filled db 'Disk is full',0
-
 
609
bad_fat_table db 'FAT table destroyed',0
-
 
610
ac_den db 'Access denied',0
-
 
611
device_er db 'Device error',0
-
 
612
not_shooted db 'Make photo !!!',0
-
 
613
no_file_name db 'Enter file name !!!',0
-
 
614
invalid_rect db 'Wrong area size',0
-
 
615
 
567
end if
616
end if
568
 
617
 
569
sign_n_input:
618
sign_n_input:
570
	db	'2',0
619
	db	'2',0
571
 
620
 
572
app_ipc ipc_buffer 32
621
app_ipc ipc_buffer 32
573
 
622
 
574
cur_number	  dd	  ?
623
cur_number	  dd	  ?
575
 
624
 
576
sign_n	      db      ?
625
sign_n	      db      ?
577
 
626
 
578
slot_n	      dd ?
627
slot_n	      dd ?
579
 
628
 
580
flags	     dd ?
629
flags	     dd ?
581
 
630
 
582
scr_buf:
631
scr_buf:
583
.ptr	    dd	    ?
632
.ptr	    dd	    ?
584
.end_ptr	dd	?
633
.end_ptr	dd	?
585
.size:
634
.size:
586
.height        dw      ?
635
.height        dw      ?
587
.width	      dw      ?
636
.width	      dw      ?
588
 
637
 
589
fs_struc:
638
fs_struc:
590
.funk_n        dd      ?
639
.funk_n        dd      ?
591
	dd	?
640
	dd	?
592
	dd	?
641
	dd	?
593
.bytes_to_write  dd	 ?
642
.bytes_to_write  dd	 ?
594
.data_ptr	 dd    ?,?
643
.data_ptr	 dd    ?,?
595
.fn_ptr        dd      ?
644
.fn_ptr        dd      ?
596
 
645
 
597
sf_buf:
646
sf_buf:
598
.bmp_header   dd      ?
647
.bmp_header   dd      ?
599
.bmp_area     dd      ?
648
.bmp_area     dd      ?
600
.end	      dd      ?
649
.end	      dd      ?
601
 
650
 
602
set_rect_window_pid dd ?
651
set_rect_window_pid dd ?
603
set_rect_window_slot dd ?
652
set_rect_window_slot dd ?
604
 
653
 
605
rect_input_buffer:
654
rect_input_buffer:
606
.left rb 6
655
.left rb 6
607
.top  rb 6
656
.top  rb 6
608
.width	rb 6
657
.width	rb 6
609
.height rb 6
658
.height rb 6
610
 
659
 
611
cmdstr rb 257
660
cmdstr rb 257
612
 
661
 
613
ed_buffer:
662
ed_buffer:
614
.1: rb 1025
663
.1: rb 1025
615
.2: rb 10
664
.2: rb 10
616
.3: rb 10
665
.3: rb 10
617
 
666
 
618
file_name:
667
file_name:
619
	rb	1058
668
	rb	1058
620
 
669
 
621
scr screen_prop
670
scr screen_prop
622
rect:
671
rect:
623
.left dw ?
672
.left dw ?
624
.top dw ?
673
.top dw ?
625
.height dw ?
674
.height dw ?
626
.width dw ?
675
.width dw ?
627
 
676
 
628
 
677
 
629
sc sys_color_table
678
sc sys_color_table
630
app procinfo	    ; ¨­ä®à¬ æ¨ï ® £« ¢­®¬ ®ª­¥
679
app procinfo	    ; ¨­ä®à¬ æ¨ï ® £« ¢­®¬ ®ª­¥
631
active_app procinfo ; ¨­ä®à¬ æ¨ï ®¡  ªâ¨¢­®¬ ®ª­¥
680
active_app procinfo ; ¨­ä®à¬ æ¨ï ®¡  ªâ¨¢­®¬ ®ª­¥
632
set_rect_window_procinfo procinfo  ; ¨­ä®à¬ æ¨ï ®¡ ®ª­¥ ®¡« áâ¨
681
set_rect_window_procinfo procinfo  ; ¨­ä®à¬ æ¨ï ®¡ ®ª­¥ ®¡« áâ¨
633
shoot_esp rb 512		   ; á⥪ ¯®â®ª  ä®âª ­ìï
682
shoot_esp rb 512		   ; á⥪ ¯®â®ª  ä®âª ­ìï
634
set_rect_window_esp rb 512	   ; á⥪ ®ª­  ®¡« áâ¨
683
set_rect_window_esp rb 512	   ; á⥪ ®ª­  ®¡« áâ¨
635
	app_end    ; ª®­¥æ ¯à®£à ¬¬ë
684
	app_end    ; ª®­¥æ ¯à®£à ¬¬ë