Subversion Repositories Kolibri OS

Rev

Rev 2000 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1951 mario79 1
;---------------------------------------------------------------------
2
  kinfo:
3
	test dword [status],2
4
	jnz      still
5
	or	dword [status],2
6
 
7
	call	get_memory_for_tread_stack
8
	mov	[thread_stack_2],eax
9
	mcall	51,1,thread2	;, thread_stack_2
10
	jmp	still
11
;---------------------------------------------------------------------
12
thread2:			    ; start of info thread
13
	mcall 9, procinfo_threads, -1
14
	mov   eax,[ebx+30]
15
	mov   [PID2],eax
16
	mcall 40, 0x7
17
	call load_directory.copy_dir_path
18
.red:
19
	call .draw_window
20
 
21
.still:
22
 
23
	mov  eax,10	     ; wait here for event
24
	mcall
25
 
26
	cmp  eax,1			; redraw request ?
27
	je	.red
28
	cmp  eax,2			; key in buffer ?
29
	je	.close
30
	cmp  eax,3			; button in buffer ?
31
	je	.button
32
 
33
	jmp  .still
34
 
35
.button:			   ; button
36
	mov  eax,17	     ; get id
37
	mcall
38
 
39
	cmp  ah,1			 ; button id=1 ?
40
	jne  .still  ;.noclose
41
.close:
42
;	btr dword [status],1
43
;	bts dword [status],2
44
	xor	dword [status],2
45
	xor	eax,eax
46
	mov	[PID2],eax
47
	mcall	68,13,[thread_stack_2]
48
	mov	eax,-1	     ; close this program
49
	mcall
50
;.noclose:
51
;	jmp  .still
52
 
53
 
54
 
55
 
56
;   *********************************************
57
;   *******  WINDOW DEFINITIONS AND DRAW ********
58
;   *********************************************
59
 
60
 
61
.draw_window:
62
 
63
 
64
	mov  eax,12		 ; function 12:tell os about windowdraw
65
	mov  ebx,1			   ; 1, start of draw
66
	mcall
67
 
68
					; DRAW WINDOW
69
	xor  eax,eax		; function 0 : define and draw window
70
	mov  ebx,100*65536+330     ; [x start] *65536 + [x size]
71
	mov  ecx,100*65536+120  ;290	; [y start] *65536 + [y size]
72
	mov  edx,0x03eeeeee	; color of work area RRGGBB,8->color gl
73
	mcall
74
 
75
					; WINDOW LABEL
76
	mcall 71,1, labelt2
77
 
78
;	mov  ecx,0x80000000	; font 1 & color ( 0xF0RRGGBB )
79
;	mov  ebx,120*65536+30
80
;	mov  edx,file_name  ;string
81
;	mov  esi,1  ;43
82
	mcall 4,<120,30>,0x80000000,file_name
83
	mov  edx,fitext
84
	mov  esi,14
85
	mov  ebx,10*65536+30
86
	mov  ecx,0x10000000
87
@@:
88
	mcall
89
	add  ebx,10
90
	add  edx,esi
91
	cmp  ebx,10*65536+80
92
	jbe  @r
93
	mov  eax,47
94
	mov  edx,120*65536+40
95
	mov  esi,ecx
96
	mov  ecx, [img_size]
97
	mov  ebx,0x800a0000
98
	mcall
99
	add  edx,10
100
	mov  ecx,[img_width_2]
101
	mcall
102
	add  edx,10
103
	mov  ecx,[img_high_2]
104
	mcall
105
	add  edx,10
106
	mov  ecx,[img_resolution_2]
107
	mcall
108
	add  edx,10
109
	mov  ecx,[Total_Repeat_N]
110
	mcall
111
 
112
;	add  edx,10
113
;	mov	ecx,[communication_area]
114
;	mov ecx,[ecx+4096]
115
;	mcall
116
 
117
;	add  edx,10
118
;	mov	ecx,[communication_area]
119
;	mov ecx,[ecx+4096+4]
120
;	mcall
121
 
122
;	add  edx,10+10
123
;	mov  ecx,[zoom_auto_factor]
124
;	mcall
125
 
126
;	add  edx,10+10
127
;	mov  ecx,[scroll_bar_data_vertical.max_area] ;[img_resolution]
128
;	mcall
129
;	add  edx,10
130
;	mov  ecx,[scroll_bar_data_vertical.cur_area]  ;[return_code]
131
;	mcall
132
;	add  edx,10
133
;	mov  ecx,[scroll_bar_data_vertical.position]
134
;	mcall
135
;	add  edx,10
136
;	xor  ecx,ecx
137
;	mov  cx,[scroll_bar_data_vertical.size_y]
138
;	mcall
139
 
140
;	add  edx,10+10
141
;	mcall 47,0x80000,[OpenDialog_Init]
142
 
143
;	add  edx,10+10
144
;	mcall 47,0x80000,[OpenDialog_Start]
145
 
146
;	add  edx,10+10
147
;	mcall 47,0x80000,[OpenDialog_data.com_area]
148
 
149
;	add  edx,10+10
150
;	mcall 47,0x80000,I_END
151
 
152
;	add  edx,10+10
153
;	mov  ecx,[scroll_bar_data_horizontal.max_area]  ;[img_resolution]
154
;	mcall
155
;	add  edx,10
156
;	mov  ecx,[scroll_bar_data_horizontal.cur_area]  ;[return_code]
157
;	mcall
158
;	add  edx,10
159
;	mov  ecx,[scroll_bar_data_horizontal.position]
160
;	mcall
161
;	add  edx,10
162
;	xor  ecx,ecx
163
;	mov  cx,[scroll_bar_data_horizontal.size_x]
164
;	mcall
165
 
166
;	add  edx,10
167
;	mov  ecx,[raw_pointer] ;[deflate_unpack]
168
;	mcall
169
 
170
;	add  edx,10+10
171
;	mov  ebp,test1  ;raw_pointer_2
172
;	mov  ecx,[ebp]
173
;	mcall
174
 
175
;	add  edx,10+10
176
;	mov  ebp,size_before_open_dir ;lib_init   ;test1  ;raw_pointer_2
177
;	mov  ecx,[ebp]
178
;	mcall
179
;	add  edx,10
180
;	add  ebp,4
181
;	mov  ecx,[ebp]
182
;	mcall
183
;	add  edx,10
184
;	add  ebp,4
185
;	mov  ecx,[ebp]
186
;	mcall
187
;	add  edx,10
188
;	add  ebp,4
189
;	mov  ecx,[ebp]
190
;	mcall
191
;	add  edx,10
192
;	add  ebp,4
193
;	mov  ecx,[ebp]
194
;	mcall
195
;	add  edx,10
196
;	add  ebp,4
197
;	mov  ecx,[ebp]
198
;	mcall
199
;	add  edx,10
200
;	add  ebp,4
201
;	mov  ecx,[ebp]
202
;	mcall
203
;	add  edx,10
204
;	add  ebp,4
205
;	mov  ecx,[ebp]
206
;	mcall
207
;	add  edx,10
208
;	add  ebp,4
209
;	mov  ecx,[ebp]
210
;	mcall
211
;	add  edx,10
212
;	add  ebp,4
213
;	mov  ecx,[ebp]
214
;	mcall
215
 
216
;	add  edx,10
217
;	add  ebp,4
218
;	mov  ecx,[version_lib_ini]
219
;;	mov  ecx,[ecx]
220
;	mcall
221
 
222
;	add  edx,10
223
;	movzx  ecx,word  [image_draw_size.x]
224
;	mcall
225
;	add  edx,10
226
;	movzx  ecx,word [image_draw_size.y]
227
;	mcall
228
;	add  edx,10+10
229
;	movzx  ecx,word [wa_width]
230
;	mcall
231
;	add  edx,10
232
;	movzx  ecx,word [wa_high]
233
;	mcall
234
;	add  edx,10
235
;	movzx  ecx,word [wa_width_1]
236
;	mcall
237
;	add  edx,10
238
;	movzx  ecx,word [wa_width_2]
239
;	mcall
240
;	add  edx,10
241
;	movzx  ecx,word [wa_high_1]
242
;	mcall
243
;	add  edx,10
244
;	movzx  ecx,word [wa_high_2]
245
;	mcall
246
 
247
;	add  edx,10+10
248
;	mov  ecx,[window_width]
249
;	mcall
250
;	add  edx,10
251
;	mov  ecx,[window_high]
252
;	mcall
253
 
254
;	add  edx,10
255
;	xor  ecx,ecx
256
;	mov  cl,[Disposal_Method]
257
;	mcall
258
 
259
;	add  edx,10
260
;	mov  ecx,[soi]
261
;	mcall
262
;	mcall 47,0x80000,[PID2],<200, 5>,0xffffff
263
;	mcall 47,0x800a0000,[error_locate],<140,5>,0x10ffffff
264
	mov  eax,12		 ; function 12:tell os about windowdraw
265
	mov  ebx,2			   ; 2, end of draw
266
	mcall
267
 
268
	ret
269
;---------------------------------------------------------------------