Rev 2068 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2068 | Rev 3271 | ||
---|---|---|---|
1 | ; |
1 | ; |
2 | ; UNIFORM WINDOW COLOURS & SKIN |
2 | ; UNIFORM WINDOW COLOURS & SKIN |
3 | ; |
3 | ; |
4 | ; Compile with FASM for Menuet |
4 | ; Compile with FASM for Menuet |
5 | ; |
5 | ; |
6 | ; < russian edition by Ivan Poddubny > |
6 | ; < russian edition by Ivan Poddubny > |
7 | ; < skin selection by Mike Semenyako > |
7 | ; < skin selection by Mike Semenyako > |
8 | ; |
8 | ; |
9 | ; last update: 10/09/2010 |
9 | ; last update: 10/09/2010 |
10 | ; written by: Marat Zakiyanov aka Mario79, aka Mario |
10 | ; written by: Marat Zakiyanov aka Mario79, aka Mario |
11 | ; changes: select path with OpenDialog |
11 | ; changes: select path with OpenDialog |
12 | ;****************************************************************************** |
12 | ;****************************************************************************** |
13 | use32 |
13 | use32 |
14 | org 0 |
14 | org 0 |
15 | db 'MENUET01' ; identifier |
15 | db 'MENUET01' ; identifier |
16 | dd 1 ; header version |
16 | dd 1 ; header version |
17 | dd START ; start address |
17 | dd START ; start address |
18 | dd I_END ; file size |
18 | dd I_END ; file size |
19 | dd i_end ;28000h ; memory |
19 | dd i_end ; memory |
20 | dd stacktop ; stack pointer |
20 | dd stacktop ; stack pointer |
21 | dd skin_info ; parameters |
21 | dd skin_info ; parameters |
22 | dd cur_dir_path ; path to file |
22 | dd cur_dir_path ; path to file |
23 | 23 | ||
24 | include 'lang.inc' |
24 | include 'lang.inc' |
25 | include '../../../config.inc' ;for nightbuild |
25 | include '../../../config.inc' ;for nightbuild |
26 | include '../../../macros.inc' |
26 | include '../../../macros.inc' |
27 | include 'kglobals.inc' |
27 | include 'kglobals.inc' |
28 | include 'unpacker.inc' |
28 | include 'unpacker.inc' |
29 | include '../../../develop/libraries/box_lib/load_lib.mac' |
29 | include '../../../develop/libraries/box_lib/load_lib.mac' |
30 | @use_library |
30 | @use_library |
31 | ;****************************************************************************** |
31 | ;****************************************************************************** |
32 | 32 | ||
33 | 33 | ||
34 | struct SKIN_HEADER |
34 | struct SKIN_HEADER |
35 | ident dd ? |
35 | ident dd ? |
36 | version dd ? |
36 | version dd ? |
37 | params dd ? |
37 | params dd ? |
38 | buttons dd ? |
38 | buttons dd ? |
39 | bitmaps dd ? |
39 | bitmaps dd ? |
40 | ends |
40 | ends |
41 | 41 | ||
42 | struct SKIN_PARAMS |
42 | struct SKIN_PARAMS |
43 | skin_height dd ? |
43 | skin_height dd ? |
44 | margin.right dw ? |
44 | margin.right dw ? |
45 | margin.left dw ? |
45 | margin.left dw ? |
46 | margin.bottom dw ? |
46 | margin.bottom dw ? |
47 | margin.top dw ? |
47 | margin.top dw ? |
48 | colors.inner dd ? |
48 | colors.inner dd ? |
49 | colors.outer dd ? |
49 | colors.outer dd ? |
50 | colors.frame dd ? |
50 | colors.frame dd ? |
51 | colors_1.inner dd ? |
51 | colors_1.inner dd ? |
52 | colors_1.outer dd ? |
52 | colors_1.outer dd ? |
53 | colors_1.frame dd ? |
53 | colors_1.frame dd ? |
54 | dtp.size dd ? |
54 | dtp.size dd ? |
55 | dtp.data db 40 dup (?) |
55 | dtp.data db 40 dup (?) |
56 | ends |
56 | ends |
57 | 57 | ||
58 | struct SKIN_BUTTONS |
58 | struct SKIN_BUTTONS |
59 | type dd ? |
59 | type dd ? |
60 | pos: |
60 | pos: |
61 | left dw ? |
61 | left dw ? |
62 | top dw ? |
62 | top dw ? |
63 | size: |
63 | size: |
64 | width dw ? |
64 | width dw ? |
65 | height dw ? |
65 | height dw ? |
66 | ends |
66 | ends |
67 | 67 | ||
68 | struct SKIN_BITMAPS |
68 | struct SKIN_BITMAPS |
69 | kind dw ? |
69 | kind dw ? |
70 | type dw ? |
70 | type dw ? |
71 | _data dd ? |
71 | _data dd ? |
72 | ends |
72 | ends |
73 | - | ||
- | 73 | ||
74 | 74 | ;--------------------------------------------------------------------- |
|
75 | START: ; start of execution |
75 | START: ; start of execution |
76 | ;--------------------------------------------------------------------- |
76 | ;--------------------------------------------------------------------- |
77 | mcall 68,11 |
77 | mcall 68,11 |
78 | 78 | ||
79 | test eax,eax |
79 | test eax,eax |
80 | jz close |
80 | jz close |
81 | 81 | ||
82 | load_libraries l_libs_start,end_l_libs |
82 | load_libraries l_libs_start,end_l_libs |
83 | 83 | ||
84 | ;if return code =-1 then exit, else nornary work |
84 | ;if return code =-1 then exit, else nornary work |
85 | ; cmp eax,-1 |
- | |
86 | inc eax |
85 | inc eax |
87 | test eax,eax |
86 | test eax,eax |
88 | jz close |
87 | jz close |
89 | - | ||
90 | ;--------------------------------------------------------------------- |
88 | ;--------------------------------------------------------------------- |
91 | mov edi,filename_area |
89 | mov edi,filename_area |
92 | mov esi,start_temp_file_name |
90 | mov esi,start_temp_file_name |
93 | xor eax,eax |
91 | xor eax,eax |
94 | cld |
92 | cld |
95 | @@: |
93 | @@: |
96 | lodsb |
94 | lodsb |
97 | stosb |
95 | stosb |
98 | test eax,eax |
96 | test eax,eax |
99 | jnz @b |
97 | jnz @b |
100 | 98 | ||
101 | 99 | ||
102 | mov edi,fname |
100 | mov edi,fname |
103 | mov esi,default_dtp |
101 | mov esi,default_dtp |
104 | xor eax,eax |
102 | xor eax,eax |
105 | cld |
103 | cld |
106 | @@: |
104 | @@: |
107 | lodsb |
105 | lodsb |
108 | stosb |
106 | stosb |
109 | test eax,eax |
107 | test eax,eax |
110 | jnz @b |
108 | jnz @b |
111 | 109 | ||
112 | ;--------------------------------------------------------------------- |
110 | ;--------------------------------------------------------------------- |
113 | ; mov esi, param |
- | |
114 | ; cmp byte [esi], 0 |
- | |
115 | ; je @f |
- | |
116 | ; jnz has_param |
- | |
117 | ; mov esi,default_skn |
- | |
118 | ; mov edi,fname |
- | |
119 | ; mov ecx,default_skn.size |
- | |
120 | ; rep movsb |
- | |
121 | ; jmp skin_path_ready |
- | |
122 | ;has_param: |
- | |
123 | ; mov ecx, 256/4 |
- | |
124 | ; mov edi, fname |
- | |
125 | ; rep movsd |
- | |
126 | ; skin_path_ready |
- | |
127 | ;--------------------------------------------------------------------- |
- | |
128 | mov edi,skin_info |
111 | mov edi,skin_info |
129 | cmp byte [edi], 0 |
112 | cmp byte [edi], 0 |
130 | jne skin_path_ready |
113 | jne skin_path_ready |
131 | mov esi,default_skin |
114 | mov esi,default_skin |
132 | xor eax,eax |
115 | xor eax,eax |
133 | cld |
116 | cld |
134 | @@: |
117 | @@: |
135 | lodsb |
118 | lodsb |
136 | stosb |
119 | stosb |
137 | test eax,eax |
120 | test eax,eax |
138 | jnz @b |
121 | jnz @b |
139 | skin_path_ready: |
122 | skin_path_ready: |
140 | ;--------------------------------------------------------------------- |
123 | ;--------------------------------------------------------------------- |
141 | ;OpenDialog initialisation |
124 | ;OpenDialog initialisation |
142 | push dword OpenDialog_data |
125 | push dword OpenDialog_data |
143 | call [OpenDialog_Init] |
126 | call [OpenDialog_Init] |
144 | 127 | ||
145 | push dword OpenDialog_data2 |
128 | push dword OpenDialog_data2 |
146 | call [OpenDialog_Init] |
129 | call [OpenDialog_Init] |
147 | 130 | ||
148 | ; prepare for PathShow |
131 | ; prepare for PathShow |
149 | push dword PathShow_data_1 |
132 | push dword PathShow_data_1 |
150 | call [PathShow_prepare] |
133 | call [PathShow_prepare] |
151 | 134 | ||
152 | push dword PathShow_data_2 |
135 | push dword PathShow_data_2 |
153 | call [PathShow_prepare] |
136 | call [PathShow_prepare] |
154 | ;--------------------------------------------------------------------- |
137 | ;--------------------------------------------------------------------- |
155 | mov eax,48 ; get current colors |
138 | mcall 48,3,color_table,4*10 ; get current colors |
156 | mov ebx,3 |
- | |
157 | mov ecx,color_table |
- | |
158 | mov edx,4*10 |
- | |
159 | mcall |
- | |
160 | - | ||
161 | call load_skin_file.2 |
139 | call load_skin_file.2 |
162 | - | ||
163 | ; mov esi, default_dtp |
- | |
164 | ; mov edi, fname |
- | |
165 | ; mov ecx, default_dtp.size |
140 | ;--------------------------------------------------------------------- |
166 | ; rep movsb |
- | |
167 | - | ||
168 | red: |
141 | red: |
169 | call draw_window ; at first, draw the window |
142 | call draw_window ; at first, draw the window |
170 | - | ||
- | 143 | ;--------------------------------------------------------------------- |
|
171 | still: |
144 | still: |
172 | - | ||
173 | mov eax,23 ; wait here for event |
145 | mcall 23,5 ; wait here for event |
174 | mov ebx,5 |
- | |
175 | mcall |
- | |
176 | 146 | ||
177 | dec eax ; redraw request ? |
147 | dec eax ; redraw request ? |
178 | jz red |
148 | jz red |
179 | dec eax ; key in buffer ? |
149 | dec eax ; key in buffer ? |
180 | jz key |
150 | jz key |
181 | dec eax ; button in buffer ? |
151 | dec eax ; button in buffer ? |
182 | jz button |
152 | jz button |
183 | 153 | ||
184 | call draw_cursor |
154 | call draw_cursor |
185 | 155 | ||
186 | jmp still |
156 | jmp still |
187 | - | ||
188 | - | ||
- | 157 | ;--------------------------------------------------------------------- |
|
189 | key: ; key |
158 | key: ; key |
190 | mov al,2 ; just read it and ignore |
159 | mcall 2 ; just read it and ignore |
191 | mcall |
- | |
192 | jmp still |
160 | jmp still |
193 | - | ||
- | 161 | ;--------------------------------------------------------------------- |
|
194 | button: ; button |
162 | button: ; button |
195 | mov al,17 ; get id |
- | |
196 | mcall |
- | |
197 | - | ||
198 | ; cmp ah,11 ; read string |
- | |
199 | ; jne no_string |
- | |
200 | ; call read_string |
163 | mcall 17 ; get id |
201 | ; jmp still |
- | |
202 | ; no_string: |
- | |
203 | 164 | ||
204 | cmp ah,12 ; load file |
165 | cmp ah,12 ; load file |
205 | jne no_load |
166 | jne no_load |
- | 167 | ||
206 | call load_file |
168 | call load_file |
207 | call draw_window |
169 | call draw_window |
208 | jmp still |
170 | jmp still |
- | 171 | ;-------------------------------------- |
|
209 | no_load: |
172 | no_load: |
210 | - | ||
211 | cmp ah,13 ; save file |
173 | cmp ah,13 ; save file |
212 | jne no_save |
174 | jne no_save |
- | 175 | ||
213 | call save_file |
176 | call save_file |
214 | jmp still |
177 | jmp still |
- | 178 | ;-------------------------------------- |
|
215 | no_save: |
179 | no_save: |
216 | - | ||
217 | cmp ah,14 ; set 3d buttons |
180 | cmp ah,14 ; set 3d buttons |
218 | jne no_3d |
181 | jne no_3d |
219 | mov eax,48 |
- | |
220 | mov ebx,1 |
182 | |
221 | mov ecx,1 |
183 | mcall 48,1,1 |
222 | mcall |
- | |
223 | jmp doapply |
184 | jmp doapply |
- | 185 | ;-------------------------------------- |
|
224 | no_3d: |
186 | no_3d: |
225 | - | ||
226 | cmp ah,15 ; set flat buttons |
187 | cmp ah,15 ; set flat buttons |
227 | jne no_flat |
188 | jne no_flat |
- | 189 | ||
228 | mcall 48, 1, 0 |
190 | mcall 48, 1, 0 |
- | 191 | ;-------------------------------------- |
|
229 | doapply: |
192 | doapply: |
230 | mcall 48, 0, 0 |
193 | mcall 48, 0, 0 |
231 | jmp still |
194 | jmp still |
- | 195 | ;-------------------------------------- |
|
232 | no_flat: |
196 | no_flat: |
233 | - | ||
234 | cmp ah,16 ; apply |
197 | cmp ah,16 ; apply |
235 | jne no_apply |
198 | jne no_apply |
- | 199 | ;-------------------------------------- |
|
236 | apply_direct: |
200 | apply_direct: |
237 | mov eax,48 |
- | |
238 | mov ebx,2 |
- | |
239 | mov ecx,color_table |
201 | mcall 48,2,color_table,10*4 |
240 | mov edx,10*4 |
- | |
241 | mcall |
- | |
242 | jmp doapply |
202 | jmp doapply |
- | 203 | ;-------------------------------------- |
|
243 | no_apply: |
204 | no_apply: |
244 | - | ||
245 | cmp ah,17 ; load skin file |
205 | cmp ah,17 ; load skin file |
246 | jne no_load_skin |
206 | jne no_load_skin |
- | 207 | ||
247 | call load_skin_file |
208 | call load_skin_file |
248 | call draw_window |
209 | call draw_window |
249 | jmp still |
210 | jmp still |
- | 211 | ;-------------------------------------- |
|
250 | no_load_skin: |
212 | no_load_skin: |
251 | - | ||
252 | cmp ah,18 ; apply skin |
213 | cmp ah,18 ; apply skin |
253 | jne no_apply_skin |
214 | jne no_apply_skin |
- | 215 | ||
254 | cmp [skin_info],0 |
216 | cmp [skin_info],0 |
255 | je no_apply_skin |
217 | je no_apply_skin |
- | 218 | ||
256 | mcall 48,8,skin_info |
219 | mcall 48,8,skin_info |
257 | call draw_window |
220 | call draw_window |
258 | jmp still |
221 | jmp still |
- | 222 | ;-------------------------------------- |
|
259 | no_apply_skin: |
223 | no_apply_skin: |
260 | - | ||
261 | cmp ah,31 |
224 | cmp ah,31 |
262 | jb no_new_colour |
225 | jb no_new_colour |
- | 226 | ||
263 | cmp ah,41 |
227 | cmp ah,41 |
264 | jg no_new_colour |
228 | jg no_new_colour |
- | 229 | ||
265 | shr eax,8 |
230 | shr eax,8 |
266 | sub eax,31 |
231 | sub eax,31 |
267 | shl eax,2 |
232 | shl eax,2 |
268 | mov ebx,[color] |
233 | mov ebx,[color] |
269 | mov [eax+color_table],ebx |
234 | mov [eax+color_table],ebx |
270 | cmp dword[not_packed_area+SKIN_HEADER.ident],'SKIN' |
235 | cmp dword[not_packed_area+SKIN_HEADER.ident],'SKIN' |
271 | jne @f |
236 | jne @f |
- | 237 | ||
272 | mov edi,[not_packed_area+SKIN_HEADER.params] |
238 | mov edi,[not_packed_area+SKIN_HEADER.params] |
273 | mov dword[edi+not_packed_area+SKIN_PARAMS.dtp.data+eax],ebx |
239 | mov dword[edi+not_packed_area+SKIN_PARAMS.dtp.data+eax],ebx |
274 | call draw_skin |
240 | call draw_skin |
- | 241 | ;-------------------------------------- |
|
- | 242 | @@: |
|
275 | @@: call draw_colours |
243 | call draw_colours |
276 | jmp still |
244 | jmp still |
- | 245 | ;-------------------------------------- |
|
277 | no_new_colour: |
246 | no_new_colour: |
278 | - | ||
279 | cmp ah,1 ; terminate |
247 | cmp ah,1 ; terminate |
280 | jnz noid1 |
248 | jnz noid1 |
- | 249 | ;-------------------------------------- |
|
281 | close: |
250 | close: |
282 | or eax,-1 |
251 | or eax,-1 |
283 | mcall |
252 | mcall |
- | 253 | ;-------------------------------------- |
|
284 | noid1: |
254 | noid1: |
285 | - | ||
286 | jmp still |
255 | jmp still |
287 | - | ||
288 | - | ||
- | 256 | ;--------------------------------------------------------------------- |
|
289 | draw_cursor: |
257 | draw_cursor: |
290 | - | ||
291 | pusha |
258 | pusha |
292 | mov eax,37 |
- | |
293 | mov ebx,2 |
- | |
294 | mcall |
259 | mcall 37,2 |
295 | - | ||
296 | cmp eax,0 |
260 | cmp eax,0 |
297 | jne dc1 |
261 | jne dc1 |
298 | popa |
262 | popa |
299 | ret |
263 | ret |
300 | - | ||
- | 264 | ;-------------------------------------- |
|
301 | dc1: |
265 | dc1: |
302 | - | ||
303 | mov eax,37 |
- | |
304 | mov ebx,1 |
- | |
305 | mcall |
266 | mcall 37,1 |
306 | - | ||
307 | mov ebx,eax |
267 | mov ebx,eax |
308 | shr ebx,16 |
268 | shr ebx,16 |
309 | mov ecx,eax |
269 | mov ecx,eax |
310 | and ecx,0xffff |
270 | and ecx,0xffff |
311 | - | ||
312 | cmp ecx,32 |
271 | cmp ecx,29 |
313 | jbe no_color |
272 | jbe no_color |
- | 273 | ||
314 | cmp ebx,32 |
274 | cmp ebx,32 |
315 | jbe no_color |
275 | jbe no_color |
316 | 276 | ||
317 | cmp ebx,266 ; CHANGE COLOR |
277 | cmp ebx,266 ; CHANGE COLOR |
318 | jb no_color |
278 | jb no_color |
- | 279 | ||
319 | cmp ebx,266+20*3 |
280 | cmp ebx,266+20*3 |
320 | jg no_color |
281 | jg no_color |
321 | 282 | ||
322 | cmp ecx,30+128 |
283 | cmp ecx,30+128 |
323 | jge no_color |
284 | jge no_color |
- | 285 | ||
324 | cmp ecx,30 |
286 | cmp ecx,29 |
325 | jb no_color |
287 | jb no_color |
326 | 288 | ||
327 | sub ebx,266 |
289 | sub ebx,266 |
328 | mov eax,ebx |
290 | mov eax,ebx |
329 | cdq |
291 | cdq |
330 | mov ebx,20 |
292 | mov ebx,20 |
331 | div ebx |
293 | div ebx |
332 | mov ebx,2 |
294 | mov ebx,2 |
333 | sub ebx,eax |
295 | sub ebx,eax |
334 | - | ||
335 | add ecx,-30 |
296 | add ecx,-30 |
336 | not ecx |
297 | not ecx |
337 | shl ecx,1 |
298 | shl ecx,1 |
338 | 299 | ||
339 | mov byte [ebx+color],cl |
300 | mov byte [ebx+color],cl |
340 | call draw_color |
301 | call draw_color |
341 | - | ||
342 | popa |
- | |
343 | ret |
- | |
344 | - | ||
345 | no_color: |
302 | no_color: |
346 | - | ||
347 | popa |
303 | popa |
348 | ret |
304 | ret |
349 | - | ||
350 | ;--------------------------------------------------------------------- |
305 | ;--------------------------------------------------------------------- |
351 | load_file: |
306 | load_file: |
352 | ;--------------------------------------------------------------------- |
307 | ;--------------------------------------------------------------------- |
353 | ; invoke OpenDialog |
308 | ; invoke OpenDialog |
354 | mov [OpenDialog_data.type],dword 0 |
309 | mov [OpenDialog_data.type],dword 0 |
355 | push dword OpenDialog_data |
310 | push dword OpenDialog_data |
356 | call [OpenDialog_Start] |
311 | call [OpenDialog_Start] |
357 | cmp [OpenDialog_data.status],1 |
312 | cmp [OpenDialog_data.status],1 |
358 | je .1 |
313 | je .1 |
359 | ret |
314 | ret |
360 | .1: |
315 | .1: |
361 | ; prepare for PathShow |
316 | ; prepare for PathShow |
362 | push dword PathShow_data_1 |
317 | push dword PathShow_data_1 |
363 | call [PathShow_prepare] |
318 | call [PathShow_prepare] |
364 | 319 | ||
365 | call draw_PathShow |
320 | call draw_PathShow |
366 | ;--------------------------------------------------------------------- |
321 | ;--------------------------------------------------------------------- |
367 | xor eax, eax |
322 | xor eax, eax |
368 | mov ebx, read_info |
323 | mov ebx, read_info |
369 | mov dword [ebx], eax ; subfunction: read |
324 | mov dword [ebx], eax ; subfunction: read |
370 | mov dword [ebx+4], eax ; offset (low dword) |
325 | mov dword [ebx+4], eax ; offset (low dword) |
371 | mov dword [ebx+8], eax ; offset (high dword) |
326 | mov dword [ebx+8], eax ; offset (high dword) |
372 | mov dword [ebx+12], 40 ; read colors file: 4*10 bytes |
327 | mov dword [ebx+12], 40 ; read colors file: 4*10 bytes |
373 | mov dword [ebx+16], color_table ; address |
328 | mov dword [ebx+16], color_table ; address |
374 | mcall 70 |
329 | mcall 70 |
375 | ret |
330 | ret |
376 | ;--------------------------------------------------------------------- |
331 | ;--------------------------------------------------------------------- |
377 | load_skin_file: |
332 | load_skin_file: |
378 | ;--------------------------------------------------------------------- |
333 | ;--------------------------------------------------------------------- |
379 | ; invoke OpenDialog |
334 | ; invoke OpenDialog |
380 | push dword OpenDialog_data2 |
335 | push dword OpenDialog_data2 |
381 | call [OpenDialog_Start] |
336 | call [OpenDialog_Start] |
382 | cmp [OpenDialog_data2.status],1 |
337 | cmp [OpenDialog_data2.status],1 |
383 | je .1 |
338 | je .1 |
384 | ret |
339 | ret |
385 | .1: |
340 | .1: |
386 | ; prepare for PathShow |
341 | ; prepare for PathShow |
387 | push dword PathShow_data_2 |
342 | push dword PathShow_data_2 |
388 | call [PathShow_prepare] |
343 | call [PathShow_prepare] |
389 | 344 | ||
390 | call draw_PathShow |
345 | call draw_PathShow |
391 | ;--------------------------------------------------------------------- |
346 | ;--------------------------------------------------------------------- |
392 | .2: |
347 | .2: |
393 | xor eax, eax |
348 | xor eax,eax |
394 | mov ebx, read_info2 |
349 | mov ebx,read_info2 |
395 | mov dword [ebx], eax ; subfunction: read |
350 | mov dword [ebx], eax ; subfunction: read |
396 | mov dword [ebx+4], eax ; offset (low dword) |
351 | mov dword [ebx+4], eax ; offset (low dword) |
397 | mov dword [ebx+8], eax ; offset (high dword) |
352 | mov dword [ebx+8], eax ; offset (high dword) |
398 | mov dword [ebx+12], 32*1024 ; read: max 32 KBytes |
353 | mov dword [ebx+12], 32*1024 ; read: max 32 KBytes |
399 | mov dword [ebx+16], file_load_area ; address |
354 | mov dword [ebx+16], file_load_area ; address |
400 | mcall 70 |
355 | mcall 70 |
401 | 356 | ||
402 | mov esi, file_load_area |
357 | mov esi, file_load_area |
403 | 358 | ||
404 | cmp dword [esi], 'KPCK' |
359 | cmp dword [esi], 'KPCK' |
405 | jnz notpacked |
360 | jnz notpacked |
- | 361 | ||
406 | cmp dword [esi+4], 32*1024 ; max 32 KBytes |
362 | cmp dword [esi+4], 32*1024 ; max 32 KBytes |
407 | ja doret |
363 | ja doret |
- | 364 | ||
408 | push unpack_area |
365 | push unpack_area |
409 | push esi |
366 | push esi |
410 | call unpack |
367 | call unpack |
411 | mov esi, unpack_area |
368 | mov esi,unpack_area |
- | 369 | ;-------------------------------------- |
|
412 | notpacked: |
370 | notpacked: |
413 | - | ||
414 | cmp dword[esi+SKIN_HEADER.ident],'SKIN' |
371 | cmp [esi+SKIN_HEADER.ident],dword 'SKIN' |
415 | jne doret |
372 | jne doret |
416 | 373 | ||
417 | mov edi,not_packed_area |
374 | mov edi,not_packed_area |
418 | mov ecx,0x8000/4 |
375 | mov ecx,0x8000/4 |
419 | rep movsd |
376 | rep movsd |
420 | - | ||
421 | ; mov esi,fname |
- | |
422 | ; mov edi,skin_info.fname |
- | |
423 | ; mov ecx,257 |
- | |
424 | ; rep movsb |
- | |
425 | 377 | ||
426 | mov ebp,not_packed_area |
378 | mov ebp,not_packed_area |
427 | mov esi,[ebp+SKIN_HEADER.params] |
379 | mov esi,[ebp+SKIN_HEADER.params] |
428 | add esi,ebp |
380 | add esi,ebp |
429 | lea esi,[esi+SKIN_PARAMS.dtp.data] |
381 | lea esi,[esi+SKIN_PARAMS.dtp.data] |
430 | mov edi,color_table |
382 | mov edi,color_table |
431 | mov ecx,10 |
383 | mov ecx,10 |
432 | rep movsd |
384 | rep movsd |
- | 385 | ;-------------------------------------- |
|
433 | doret: |
386 | doret: |
434 | - | ||
435 | ret |
387 | ret |
436 | - | ||
437 | ;--------------------------------------------------------------------- |
388 | ;--------------------------------------------------------------------- |
438 | save_file: |
389 | save_file: |
439 | ;--------------------------------------------------------------------- |
390 | ;--------------------------------------------------------------------- |
440 | ; invoke OpenDialog |
391 | ; invoke OpenDialog |
441 | mov [OpenDialog_data.type],dword 1 |
392 | mov [OpenDialog_data.type],dword 1 |
442 | push dword OpenDialog_data |
393 | push dword OpenDialog_data |
443 | call [OpenDialog_Start] |
394 | call [OpenDialog_Start] |
444 | cmp [OpenDialog_data.status],1 |
395 | cmp [OpenDialog_data.status],1 |
445 | je .1 |
396 | je .1 |
446 | ret |
397 | ret |
447 | .1: |
398 | .1: |
448 | ; prepare for PathShow |
399 | ; prepare for PathShow |
449 | push dword PathShow_data_1 |
400 | push dword PathShow_data_1 |
450 | call [PathShow_prepare] |
401 | call [PathShow_prepare] |
451 | 402 | ||
452 | call draw_PathShow |
403 | call draw_PathShow |
453 | ;--------------------------------------------------------------------- |
404 | ;--------------------------------------------------------------------- |
- | 405 | xor eax,eax |
|
454 | mov ebx, write_info |
406 | mov ebx,write_info |
455 | mov dword [ebx], 2 ; subfunction: write |
407 | mov [ebx],dword 2 ; subfunction: write |
456 | and dword [ebx+4], 0 ; (reserved) |
408 | and [ebx+4],eax ; (reserved) |
457 | and dword [ebx+8], 0 ; (reserved) |
409 | and [ebx+8],eax ; (reserved) |
458 | mov dword [ebx+12], 10*4 ; bytes to write |
410 | mov [ebx+12],dword 10*4 ; bytes to write |
459 | mov dword [ebx+16], color_table ; address |
411 | mov [ebx+16],dword color_table ; address |
460 | mcall 70 |
412 | mcall 70 |
461 | ret |
413 | ret |
462 | ;--------------------------------------------------------------------- |
414 | ;--------------------------------------------------------------------- |
463 | draw_color: |
415 | draw_color: |
464 | - | ||
465 | pusha |
416 | pusha |
466 | - | ||
467 | mov eax,13 |
- | |
468 | mov ebx,266*65536+60 |
- | |
469 | mov ecx,170*65536+30 |
- | |
470 | mov edx,[color] |
417 | mcall 13,<266,60>,<170,30>,[color] |
471 | mcall |
- | |
472 | - | ||
473 | ; mov eax,13 |
- | |
474 | mov ebx,266*65536+60 |
- | |
475 | mov ecx,200*65536+10 |
- | |
476 | mov edx,[w_work] |
418 | mcall ,,<200,10>,[w_work] |
477 | mcall |
- | |
478 | - | ||
479 | mov eax,47 |
- | |
480 | mov ebx,0+1*256+8*65536 |
- | |
481 | mov ecx,[color] |
- | |
482 | mov edx,272*65536+201 |
- | |
483 | mov esi,[w_work_text] |
419 | mcall 47,<8,0+1*256>,[color],<272,201>,[w_work_text] |
484 | mcall |
- | |
485 | - | ||
486 | popa |
420 | popa |
487 | ret |
421 | ret |
488 | ;---------------------------------------------------------------------- |
422 | ;---------------------------------------------------------------------- |
489 | draw_colours: |
423 | draw_colours: |
490 | - | ||
491 | pusha |
424 | pusha |
492 | - | ||
493 | mov esi,color_table |
425 | mov esi,color_table |
494 | - | ||
495 | mov ebx,225*65536+32 |
426 | mov ebx,225*65536+32 |
496 | mov ecx,32*65536+12 |
427 | mov ecx,32*65536+12 |
- | 428 | ;-------------------------------------- |
|
497 | newcol: |
429 | newcol: |
498 | mov eax,13 |
- | |
499 | mov edx,[esi] |
430 | mov edx,[esi] |
500 | mcall |
431 | mcall 13 |
501 | add ecx,18*65536 |
432 | add ecx,18*65536 |
502 | add esi,4 |
433 | add esi,4 |
503 | cmp esi,color_table+4*9 |
434 | cmp esi,color_table+4*9 |
504 | jbe newcol |
435 | jbe newcol |
505 | 436 | ||
506 | popa |
437 | popa |
507 | ret |
438 | ret |
508 | ;---------------------------------------------------------------------- |
439 | ;---------------------------------------------------------------------- |
509 | draw_framerect: ; ebx,ecx |
440 | draw_framerect: ; ebx,ecx |
510 | push ebx ecx |
441 | push ebx ecx |
511 | add bx,[esp+6] |
442 | add bx,[esp+6] |
512 | mov cx,[esp+2] |
443 | mov cx,[esp+2] |
513 | dec ebx |
444 | dec ebx |
514 | mcall 38 |
445 | mcall 38 |
515 | add cx,[esp] |
446 | add cx,[esp] |
516 | rol ecx,16 |
447 | rol ecx,16 |
517 | add cx,[esp] |
448 | add cx,[esp] |
518 | sub ecx,0x00010001 |
449 | sub ecx,0x00010001 |
519 | mcall |
450 | mcall |
520 | mov ebx,[esp+4] |
451 | mov ebx,[esp+4] |
521 | mov ecx,[esp] |
452 | mov ecx,[esp] |
522 | mov bx,[esp+6] |
453 | mov bx,[esp+6] |
523 | add cx,[esp+2] |
454 | add cx,[esp+2] |
524 | dec ecx |
455 | dec ecx |
525 | mcall |
456 | mcall |
526 | add bx,[esp+4] |
457 | add bx,[esp+4] |
527 | rol ebx,16 |
458 | rol ebx,16 |
528 | add bx,[esp+4] |
459 | add bx,[esp+4] |
529 | sub ebx,0x00010001 |
460 | sub ebx,0x00010001 |
530 | mcall |
461 | mcall |
531 | add esp,8 |
462 | add esp,8 |
532 | ret |
463 | ret |
533 | ;---------------------------------------------------------------------- |
464 | ;---------------------------------------------------------------------- |
534 | find_bitmap: |
465 | find_bitmap: |
535 | mov edi,[ebp+SKIN_HEADER.bitmaps] |
466 | mov edi,[ebp+SKIN_HEADER.bitmaps] |
536 | add edi,ebp |
467 | add edi,ebp |
537 | xor ebx,ebx |
468 | xor ebx,ebx |
- | 469 | ;-------------------------------------- |
|
- | 470 | .lp1: |
|
538 | .lp1: cmp dword[edi],0 |
471 | cmp dword[edi],0 |
539 | je .lp2 |
472 | je .lp2 |
- | 473 | ||
540 | cmp dword[edi+0],eax |
474 | cmp dword[edi+0],eax |
541 | jne @f |
475 | jne @f |
- | 476 | ;-------------------------------------- |
|
542 | mov ebx,[edi+SKIN_BITMAPS._data] |
477 | mov ebx,[edi+SKIN_BITMAPS._data] |
543 | add ebx,ebp |
478 | add ebx,ebp |
544 | mov ecx,[ebx-2] |
479 | mov ecx,[ebx-2] |
545 | mov cx,[ebx+4] |
480 | mov cx,[ebx+4] |
546 | add ebx,8 |
481 | add ebx,8 |
- | 482 | ;-------------------------------------- |
|
547 | .lp2: ret |
483 | .lp2: |
- | 484 | ret |
|
- | 485 | ;-------------------------------------- |
|
- | 486 | @@: |
|
548 | @@: add edi,8 |
487 | add edi,8 |
549 | jmp .lp1 |
488 | jmp .lp1 |
550 | ;---------------------------------------------------------------------- |
489 | ;---------------------------------------------------------------------- |
551 | dec_edx: |
490 | dec_edx: |
552 | sub dl,4 |
491 | sub dl,4 |
553 | jnc @f |
492 | jnc @f |
- | 493 | ||
554 | xor dl,dl |
494 | xor dl,dl |
- | 495 | ;-------------------------------------- |
|
- | 496 | @@: |
|
555 | @@: sub dh,4 |
497 | sub dh,4 |
556 | jnc @f |
498 | jnc @f |
- | 499 | ||
557 | xor dh,dh |
500 | xor dh,dh |
- | 501 | ;-------------------------------------- |
|
- | 502 | @@: |
|
558 | @@: rol edx,16 |
503 | rol edx,16 |
559 | sub dl,4 |
504 | sub dl,4 |
560 | jnc @f |
505 | jnc @f |
- | 506 | ||
561 | xor dl,dl |
507 | xor dl,dl |
- | 508 | ;-------------------------------------- |
|
- | 509 | @@: |
|
562 | @@: rol edx,16 |
510 | rol edx,16 |
563 | ret |
511 | ret |
564 | ;---------------------------------------------------------------------- |
512 | ;---------------------------------------------------------------------- |
565 | area: |
513 | area: |
566 | .x = 345 |
514 | .x = 345 |
567 | .y = 20 |
515 | .y = 20 |
568 | .width = 206 |
516 | .width = 206 |
569 | .height = 191 |
517 | .height = 191 |
570 | - | ||
- | 518 | ;-------------------------------------- |
|
571 | wnd1: |
519 | wnd1: |
572 | .x = area.x+49 |
520 | .x = area.x+49 |
573 | .y = area.y+5 |
521 | .y = area.y+5 |
574 | .width = 150 |
522 | .width = 150 |
575 | .height = 90 |
523 | .height = 90 |
- | 524 | ;-------------------------------------- |
|
576 | wnd2: |
525 | wnd2: |
577 | .x = area.x+35 |
526 | .x = area.x+35 |
578 | .y = area.y+35 |
527 | .y = area.y+35 |
579 | .width = 150 |
528 | .width = 150 |
580 | .height = 90 |
529 | .height = 90 |
- | 530 | ;-------------------------------------- |
|
581 | wnd3: |
531 | wnd3: |
582 | .x = area.x+21 |
532 | .x = area.x+21 |
583 | .y = area.y+65 |
533 | .y = area.y+65 |
584 | .width = 150 |
534 | .width = 150 |
585 | .height = 90 |
535 | .height = 90 |
- | 536 | ;-------------------------------------- |
|
586 | wnd4: |
537 | wnd4: |
587 | .x = area.x+7 |
538 | .x = area.x+7 |
588 | .y = area.y+95 |
539 | .y = area.y+95 |
589 | .width = 150 |
540 | .width = 150 |
590 | .height = 90 |
541 | .height = 90 |
591 | - | ||
- | 542 | ;-------------------------------------- |
|
592 | virtual at edi+SKIN_PARAMS.dtp.data |
543 | virtual at edi+SKIN_PARAMS.dtp.data |
593 | dtp system_colors |
544 | dtp system_colors |
594 | end virtual |
545 | end virtual |
595 | ;---------------------------------------------------------------------- |
546 | ;---------------------------------------------------------------------- |
596 | draw_skin: |
547 | draw_skin: |
597 | mcall 13, |
548 | mcall 13, |
598 | - | ||
599 | mov ebp,not_packed_area |
549 | mov ebp,not_packed_area |
600 | mov edi,[ebp+SKIN_HEADER.params] |
550 | mov edi,[ebp+SKIN_HEADER.params] |
601 | add edi,ebp |
551 | add edi,ebp |
602 | mpack ebx,wnd1.x,wnd1.width |
552 | mpack ebx,wnd1.x,wnd1.width |
603 | mpack ecx,wnd1.y,wnd1.height |
553 | mpack ecx,wnd1.y,wnd1.height |
604 | mov edx,[dtp.frame] |
554 | mov edx,[dtp.frame] |
605 | call draw_framerect |
555 | call draw_framerect |
606 | mcall 13, |
556 | mcall 13, |
607 | - | ||
608 | mov eax,38 |
557 | mov eax,38 |
609 | mpack ebx,wnd1.x+1,wnd1.x+wnd1.width-2 |
558 | mpack ebx,wnd1.x+1,wnd1.x+wnd1.width-2 |
610 | mpack ecx,wnd1.y+1,wnd1.y+1 |
559 | mpack ecx,wnd1.y+1,wnd1.y+1 |
611 | mov edx,[dtp.grab] |
560 | mov edx,[dtp.grab] |
612 | mov esi,20 |
561 | mov esi,20 |
- | 562 | ;-------------------------------------- |
|
- | 563 | @@: |
|
613 | @@: mcall |
564 | mcall |
614 | call dec_edx |
565 | call dec_edx |
615 | add ecx,0x00010001 |
566 | add ecx,0x00010001 |
616 | dec esi |
567 | dec esi |
617 | jnz @b |
568 | jnz @b |
618 | 569 | ||
619 | mov edi,[ebp+SKIN_HEADER.params] |
570 | mov edi,[ebp+SKIN_HEADER.params] |
620 | add edi,ebp |
571 | add edi,ebp |
621 | mcall 4, |
572 | mcall 4, |
622 | - | ||
623 | mcall 8, |
573 | mcall 8, |
624 | mcall 4, |
574 | mcall 4, |
625 | - | ||
626 | ;---------------------------------------------------------------------- |
575 | ;---------------------------------------------------------------------- |
627 | - | ||
628 | mov edi,[ebp+SKIN_HEADER.params] |
576 | mov edi,[ebp+SKIN_HEADER.params] |
629 | add edi,ebp |
577 | add edi,ebp |
630 | mpack ebx,wnd2.x,wnd2.width |
578 | mpack ebx,wnd2.x,wnd2.width |
631 | mpack ecx,wnd2.y,wnd2.height |
579 | mpack ecx,wnd2.y,wnd2.height |
632 | mov edx,[dtp.frame] |
580 | mov edx,[dtp.frame] |
633 | shr edx,1 |
581 | shr edx,1 |
634 | and edx,0x007F7F7F |
582 | and edx,0x007F7F7F |
635 | call draw_framerect |
583 | call draw_framerect |
636 | mpack ebx,wnd2.x+4,wnd2.width-8 |
584 | mpack ebx,wnd2.x+4,wnd2.width-8 |
637 | mpack ecx,wnd2.y+4,wnd2.height-8 |
585 | mpack ecx,wnd2.y+4,wnd2.height-8 |
638 | call draw_framerect |
586 | call draw_framerect |
639 | mcall 13, |
587 | mcall 13, |
640 | add ecx,(wnd2.height-5)*65536 |
588 | add ecx,(wnd2.height-5)*65536 |
641 | mcall |
589 | mcall |
642 | mcall , |
590 | mcall , |
643 | add ebx,(wnd2.width-5)*65536 |
591 | add ebx,(wnd2.width-5)*65536 |
644 | mcall |
592 | mcall |
645 | mcall , |
593 | mcall , |
646 | 594 | ||
647 | mov eax,38 |
595 | mov eax,38 |
648 | mpack ebx,wnd2.x+4,wnd2.x+wnd2.width-5 |
596 | mpack ebx,wnd2.x+4,wnd2.x+wnd2.width-5 |
649 | mpack ecx,wnd2.y+4,wnd2.y+4 |
597 | mpack ecx,wnd2.y+4,wnd2.y+4 |
650 | mov edx,[dtp.grab] |
598 | mov edx,[dtp.grab] |
651 | mov esi,16 |
599 | mov esi,16 |
- | 600 | ;-------------------------------------- |
|
- | 601 | @@: |
|
652 | @@: mcall |
602 | mcall |
653 | call dec_edx |
603 | call dec_edx |
654 | add ecx,0x00010001 |
604 | add ecx,0x00010001 |
655 | dec esi |
605 | dec esi |
656 | jnz @b |
606 | jnz @b |
657 | 607 | ||
658 | mov edi,[ebp+SKIN_HEADER.params] |
608 | mov edi,[ebp+SKIN_HEADER.params] |
659 | add edi,ebp |
609 | add edi,ebp |
660 | mcall 4, |
610 | mcall 4, |
661 | - | ||
662 | mcall 8, |
611 | mcall 8, |
663 | mcall 4, |
612 | mcall 4, |
664 | - | ||
665 | ;---------------------------------------------------------------------- |
613 | ;---------------------------------------------------------------------- |
666 | - | ||
667 | mov edi,[ebp+SKIN_HEADER.params] |
614 | mov edi,[ebp+SKIN_HEADER.params] |
668 | add edi,ebp |
615 | add edi,ebp |
669 | mpack ebx,wnd3.x,wnd3.width |
616 | mpack ebx,wnd3.x,wnd3.width |
670 | mpack ecx,wnd3.y,wnd3.height |
617 | mpack ecx,wnd3.y,wnd3.height |
671 | mov edx,[edi+SKIN_PARAMS.colors_1.outer] |
618 | mov edx,[edi+SKIN_PARAMS.colors_1.outer] |
672 | call draw_framerect |
619 | call draw_framerect |
673 | mpack ebx,wnd3.x+4,wnd3.width-8 |
620 | mpack ebx,wnd3.x+4,wnd3.width-8 |
674 | mpack ecx,wnd3.y+4,wnd3.height-8 |
621 | mpack ecx,wnd3.y+4,wnd3.height-8 |
675 | mov edx,[edi+SKIN_PARAMS.colors_1.inner] |
622 | mov edx,[edi+SKIN_PARAMS.colors_1.inner] |
676 | call draw_framerect |
623 | call draw_framerect |
677 | mcall 13, |
624 | mcall 13, |
678 | add ecx,(wnd3.height-5)*65536 |
625 | add ecx,(wnd3.height-5)*65536 |
679 | mcall |
626 | mcall |
680 | mcall , |
627 | mcall , |
681 | add ebx,(wnd3.width-5)*65536 |
628 | add ebx,(wnd3.width-5)*65536 |
682 | mcall |
629 | mcall |
683 | mcall , |
630 | mcall , |
684 | 631 | ||
685 | mov eax,0x00000001 ; left, inactive |
632 | mov eax,0x00000001 ; left, inactive |
686 | call find_bitmap |
633 | call find_bitmap |
687 | mcall 7,,, |
634 | mcall 7,,, |
688 | 635 | ||
689 | pushd [ebx-8] |
636 | pushd [ebx-8] |
690 | mov eax,0x00000003 ; base, inactive |
637 | mov eax,0x00000003 ; base, inactive |
691 | call find_bitmap |
638 | call find_bitmap |
692 | pop edx |
639 | pop edx |
693 | mov esi,wnd3.x+wnd3.width-1 |
640 | mov esi,wnd3.x+wnd3.width-1 |
694 | sub esi,edx |
641 | sub esi,edx |
695 | shl edx,16 |
642 | shl edx,16 |
696 | add edx,wnd3.x*65536+wnd3.y |
643 | add edx,wnd3.x*65536+wnd3.y |
697 | mcall 7 |
644 | mcall 7 |
- | 645 | ;-------------------------------------- |
|
- | 646 | @@: |
|
698 | @@: rol edx,16 |
647 | rol edx,16 |
699 | add dx,[ebx-8] |
648 | add dx,[ebx-8] |
700 | cmp dx,si |
649 | cmp dx,si |
701 | ja @f |
650 | ja @f |
- | 651 | ||
702 | rol edx,16 |
652 | rol edx,16 |
703 | mcall 7 |
653 | mcall 7 |
704 | jmp @b |
654 | jmp @b |
- | 655 | ;-------------------------------------- |
|
705 | @@: |
656 | @@: |
706 | - | ||
707 | mov eax,0x00000002 ; oper, inactive |
657 | mov eax,0x00000002 ; oper, inactive |
708 | call find_bitmap |
658 | call find_bitmap |
709 | mov edx,ecx |
659 | mov edx,ecx |
710 | shr edx,16 |
660 | shr edx,16 |
711 | neg edx |
661 | neg edx |
712 | shl edx,16 |
662 | shl edx,16 |
713 | add edx,(wnd3.x+wnd3.width)*65536+wnd3.y |
663 | add edx,(wnd3.x+wnd3.width)*65536+wnd3.y |
714 | mcall 7 |
664 | mcall 7 |
715 | 665 | ||
716 | mov ebp,not_packed_area |
666 | mov ebp,not_packed_area |
717 | mov edi,[ebp+SKIN_HEADER.params] |
667 | mov edi,[ebp+SKIN_HEADER.params] |
718 | add edi,ebp |
668 | add edi,ebp |
719 | mov eax,dword[edi+SKIN_PARAMS.margin.left-2] |
669 | mov eax,dword[edi+SKIN_PARAMS.margin.left-2] |
720 | mov ax,word[edi+SKIN_PARAMS.skin_height] |
670 | mov ax,word[edi+SKIN_PARAMS.skin_height] |
721 | sub ax,[edi+SKIN_PARAMS.margin.bottom] |
671 | sub ax,[edi+SKIN_PARAMS.margin.bottom] |
722 | shr ax,1 |
672 | shr ax,1 |
723 | add ax,[edi+SKIN_PARAMS.margin.top] |
673 | add ax,[edi+SKIN_PARAMS.margin.top] |
724 | add ax,-4 |
674 | add ax,-4 |
725 | push eax |
675 | push eax |
726 | lea ebx,[eax+wnd3.x*65536+wnd3.y] |
676 | lea ebx,[eax+wnd3.x*65536+wnd3.y] |
727 | mcall 4,,dword[dtp.grab_text],caption_text,caption_text.size |
677 | mcall 4,,dword[dtp.grab_text],caption_text,caption_text.size |
728 | - | ||
729 | ;--------------------------------------------------------- |
678 | ;--------------------------------------------------------- |
730 | - | ||
731 | mov edi,[ebp+SKIN_HEADER.params] |
679 | mov edi,[ebp+SKIN_HEADER.params] |
732 | add edi,ebp |
680 | add edi,ebp |
733 | mpack ebx,wnd4.x,wnd4.width |
681 | mpack ebx,wnd4.x,wnd4.width |
734 | mpack ecx,wnd4.y,wnd4.height |
682 | mpack ecx,wnd4.y,wnd4.height |
735 | mov edx,[edi+SKIN_PARAMS.colors.outer] |
683 | mov edx,[edi+SKIN_PARAMS.colors.outer] |
736 | call draw_framerect |
684 | call draw_framerect |
737 | mpack ebx,wnd4.x+4,wnd4.width-8 |
685 | mpack ebx,wnd4.x+4,wnd4.width-8 |
738 | mpack ecx,wnd4.y+4,wnd4.height-8 |
686 | mpack ecx,wnd4.y+4,wnd4.height-8 |
739 | mov edx,[edi+SKIN_PARAMS.colors.inner] |
687 | mov edx,[edi+SKIN_PARAMS.colors.inner] |
740 | call draw_framerect |
688 | call draw_framerect |
741 | mcall 13, |
689 | mcall 13, |
742 | add ecx,(wnd4.height-5)*65536 |
690 | add ecx,(wnd4.height-5)*65536 |
743 | mcall |
691 | mcall |
744 | mcall , |
692 | mcall , |
745 | add ebx,(wnd4.width-5)*65536 |
693 | add ebx,(wnd4.width-5)*65536 |
746 | mcall |
694 | mcall |
747 | mcall , |
695 | mcall , |
748 | 696 | ||
749 | mov eax,0x00010001 ; left, inactive |
697 | mov eax,0x00010001 ; left, inactive |
750 | call find_bitmap |
698 | call find_bitmap |
751 | mcall 7,,, |
699 | mcall 7,,, |
752 | 700 | ||
753 | pushd [ebx-8] |
701 | pushd [ebx-8] |
754 | mov eax,0x00010003 ; base, inactive |
702 | mov eax,0x00010003 ; base, inactive |
755 | call find_bitmap |
703 | call find_bitmap |
756 | pop edx |
704 | pop edx |
757 | mov esi,wnd4.x+wnd4.width-1 |
705 | mov esi,wnd4.x+wnd4.width-1 |
758 | sub esi,edx |
706 | sub esi,edx |
759 | shl edx,16 |
707 | shl edx,16 |
760 | add edx,wnd4.x*65536+wnd4.y |
708 | add edx,wnd4.x*65536+wnd4.y |
761 | mcall 7 |
709 | mcall 7 |
- | 710 | ;-------------------------------------- |
|
- | 711 | @@: |
|
762 | @@: rol edx,16 |
712 | rol edx,16 |
763 | add dx,[ebx-8] |
713 | add dx,[ebx-8] |
764 | cmp dx,si |
714 | cmp dx,si |
765 | ja @f |
715 | ja @f |
- | 716 | ||
766 | rol edx,16 |
717 | rol edx,16 |
767 | mcall 7 |
718 | mcall 7 |
768 | jmp @b |
719 | jmp @b |
- | 720 | ;-------------------------------------- |
|
769 | @@: |
721 | @@: |
770 | - | ||
771 | mov eax,0x00010002 ; oper, inactive |
722 | mov eax,0x00010002 ; oper, inactive |
772 | call find_bitmap |
723 | call find_bitmap |
773 | mov edx,ecx |
724 | mov edx,ecx |
774 | shr edx,16 |
725 | shr edx,16 |
775 | neg edx |
726 | neg edx |
776 | shl edx,16 |
727 | shl edx,16 |
777 | add edx,(wnd4.x+wnd4.width)*65536+wnd4.y |
728 | add edx,(wnd4.x+wnd4.width)*65536+wnd4.y |
778 | mcall 7 |
729 | mcall 7 |
779 | 730 | ||
780 | mov ebp,not_packed_area |
731 | mov ebp,not_packed_area |
781 | mov edi,[ebp+SKIN_HEADER.params] |
732 | mov edi,[ebp+SKIN_HEADER.params] |
782 | add edi,ebp |
733 | add edi,ebp |
783 | pop eax |
734 | pop eax |
784 | lea ebx,[eax+wnd4.x*65536+wnd4.y] |
735 | lea ebx,[eax+wnd4.x*65536+wnd4.y] |
785 | mcall 4,,dword[dtp.grab_text],caption_text,caption_text.size |
736 | mcall 4,,dword[dtp.grab_text],caption_text,caption_text.size |
786 | - | ||
787 | ;---------------------------------------------------------------------- |
737 | ;---------------------------------------------------------------------- |
788 | - | ||
789 | mov edi,[ebp+SKIN_HEADER.buttons] |
738 | mov edi,[ebp+SKIN_HEADER.buttons] |
790 | add edi,ebp |
739 | add edi,ebp |
- | 740 | ;-------------------------------------- |
|
- | 741 | .lp1: |
|
791 | .lp1: cmp dword[edi],0 |
742 | cmp dword[edi],0 |
792 | je .lp2 |
743 | je .lp2 |
- | 744 | ||
793 | mov ebx,dword[edi+SKIN_BUTTONS.left-2] |
745 | mov ebx,dword[edi+SKIN_BUTTONS.left-2] |
794 | mov bx,[edi+SKIN_BUTTONS.width] |
746 | mov bx,[edi+SKIN_BUTTONS.width] |
795 | mov ecx,dword[edi+SKIN_BUTTONS.top-2] |
747 | mov ecx,dword[edi+SKIN_BUTTONS.top-2] |
796 | mov cx,[edi+SKIN_BUTTONS.height] |
748 | mov cx,[edi+SKIN_BUTTONS.height] |
797 | add ebx,(wnd4.x+wnd4.width)*65536 |
749 | add ebx,(wnd4.x+wnd4.width)*65536 |
798 | add ecx,wnd4.y*65536 |
750 | add ecx,wnd4.y*65536 |
799 | dec ebx |
751 | dec ebx |
800 | dec ecx |
752 | dec ecx |
801 | mcall 8,,,0x40000000 |
753 | mcall 8,,,0x40000000 |
802 | add edi,12 |
754 | add edi,12 |
803 | jmp .lp1 |
755 | jmp .lp1 |
- | 756 | ;-------------------------------------- |
|
804 | .lp2: |
757 | .lp2: |
805 | - | ||
806 | mov edi,[ebp+SKIN_HEADER.params] |
758 | mov edi,[ebp+SKIN_HEADER.params] |
807 | add edi,ebp |
759 | add edi,ebp |
808 | mpack ebx,wnd4.x+10,wnd4.y+10 |
760 | mpack ebx,wnd4.x+10,wnd4.y+10 |
809 | add bx,word[edi+SKIN_PARAMS.skin_height] |
761 | add bx,word[edi+SKIN_PARAMS.skin_height] |
810 | mcall 4,,[dtp.work_text],window_text,window_text.size |
762 | mcall 4,,[dtp.work_text],window_text,window_text.size |
811 | 763 | ||
812 | mov ecx,[edi+SKIN_PARAMS.skin_height] |
764 | mov ecx,[edi+SKIN_PARAMS.skin_height] |
813 | shl ecx,16 |
765 | shl ecx,16 |
814 | add ecx,(wnd4.y+8)*65536+10 |
766 | add ecx,(wnd4.y+8)*65536+10 |
815 | mcall 13, |
767 | mcall 13, |
816 | (wnd4.x+window_text.size*6+20)>,,[dtp.work_graph] |
768 | (wnd4.x+window_text.size*6+20)>,,[dtp.work_graph] |
817 | 769 | ||
818 | add ecx,25*65536+8 |
770 | add ecx,25*65536+8 |
819 | mcall 8, |
771 | mcall 8, |
820 | button_text.size*6+11>,,0,[dtp.work_button] |
772 | button_text.size*6+11>,,0,[dtp.work_button] |
821 | 773 | ||
822 | shr ecx,16 |
774 | shr ecx,16 |
823 | mov bx,cx |
775 | mov bx,cx |
824 | add ebx,0x00060006 |
776 | add ebx,0x00060006 |
825 | mcall 4,,[dtp.work_button_text],button_text,button_text.size |
777 | mcall 4,,[dtp.work_button_text],button_text,button_text.size |
826 | - | ||
827 | ret |
778 | ret |
828 | ;--------------------------------------------------------------------- |
779 | ;--------------------------------------------------------------------- |
829 | draw_PathShow: |
780 | draw_PathShow: |
830 | pusha |
781 | pusha |
831 | mcall 13,<10,534>,<214,15>,0xffffff |
782 | mcall 13,<10,534>,<214,15>,0xffffff |
832 | mcall 13,<10,534>,<232,15>,0xffffff |
783 | mcall 13,<10,534>,<232,15>,0xffffff |
833 | ; draw for PathShow |
784 | ; draw for PathShow |
834 | push dword PathShow_data_1 |
785 | push dword PathShow_data_1 |
835 | call [PathShow_draw] |
786 | call [PathShow_draw] |
836 | 787 | ||
837 | push dword PathShow_data_2 |
788 | push dword PathShow_data_2 |
838 | call [PathShow_draw] |
789 | call [PathShow_draw] |
839 | popa |
790 | popa |
840 | ret |
791 | ret |
841 | ;--------------------------------------------------------------------- |
792 | ;--------------------------------------------------------------------- |
842 | ; ********************************************* |
793 | ; ********************************************* |
843 | ; ******* WINDOW DEFINITIONS AND DRAW ******** |
794 | ; ******* WINDOW DEFINITIONS AND DRAW ******** |
844 | ; ********************************************* |
795 | ; ********************************************* |
845 | draw_window: |
796 | draw_window: |
846 | mcall 12,1 |
797 | mcall 12,1 |
847 | mcall 48,3,app_colours,10*4 |
798 | mcall 48,3,app_colours,10*4 |
848 | mcall 14 |
799 | mcall 14 |
849 | ; DRAW WINDOW |
800 | ; DRAW WINDOW |
850 | xor eax,eax ; function 0 : define and draw window |
801 | xor eax,eax ; function 0 : define and draw window |
851 | xor esi,esi |
802 | xor esi,esi |
852 | mov edx,[w_work] ; color of work area RRGGBB,8->color |
803 | mov edx,[w_work] ; color of work area RRGGBB,8->color |
853 | or edx,0x14000000 |
804 | or edx,0x14000000 |
854 | mcall ,<110,555>,<50,275>,,,title |
805 | mcall ,<110,555>,<50,275>,,,title |
855 | 806 | ||
856 | mcall 9,procinfo,-1 |
807 | mcall 9,procinfo,-1 |
857 | 808 | ||
858 | mov eax,[procinfo+70] ;status of window |
809 | mov eax,[procinfo+70] ;status of window |
859 | test eax,100b |
810 | test eax,100b |
860 | jne .end |
811 | jne .end |
861 | 812 | ||
862 | if lang eq ru |
813 | if lang eq ru |
863 | load_w = (5*2+6*9) |
814 | load_w = (5*2+6*9) |
864 | save_w = (5*2+6*9) |
815 | save_w = (5*2+6*9) |
865 | flat_w = (5*2+6*7) |
816 | flat_w = (5*2+6*7) |
866 | apply_w = (5*2+6*9) |
817 | apply_w = (5*2+6*9) |
867 | else |
818 | else |
868 | load_w = (5*2+6*6) |
819 | load_w = (5*2+6*6) |
869 | save_w = (5*2+6*8) |
820 | save_w = (5*2+6*8) |
870 | flat_w = (5*2+6*4) |
821 | flat_w = (5*2+6*4) |
871 | apply_w = (5*2+6*7) |
822 | apply_w = (5*2+6*7) |
872 | end if |
823 | end if |
873 | 824 | ||
874 | ; LOAD BUTTON |
825 | ; LOAD BUTTON |
875 | ; mov ebx,15*65536+load_w |
- | |
876 | ; mov ecx,(35+18*12)*65536+14 |
- | |
877 | mcall 8,<15,load_w>,<35+18*12,14>,12,[w_work_button] |
826 | mcall 8,<15,load_w>,<35+18*12,14>,12,[w_work_button] |
878 | ; SAVE BUTTON |
827 | ; SAVE BUTTON |
879 | add ebx,(load_w+2)*65536-load_w+save_w |
828 | add ebx,(load_w+2)*65536-load_w+save_w |
880 | inc edx |
829 | inc edx |
881 | mcall |
830 | mcall |
882 | ; 3D |
831 | ; 3D |
883 | mov ebx,(340-t1.size*6-13)*65536+(5*2+6*4) |
832 | mov ebx,(340-t1.size*6-13)*65536+(5*2+6*4) |
884 | inc edx |
833 | inc edx |
885 | mcall |
834 | mcall |
886 | ; FLAT |
835 | ; FLAT |
887 | add ebx,(5*2+6*4+2)*65536-(5*2+6*4)+flat_w |
836 | add ebx,(5*2+6*4+2)*65536-(5*2+6*4)+flat_w |
888 | inc edx |
837 | inc edx |
889 | mcall |
838 | mcall |
890 | ; APPLY BUTTON |
839 | ; APPLY BUTTON |
891 | add ebx,(flat_w+6+2)*65536-flat_w+apply_w |
840 | add ebx,(flat_w+6+2)*65536-flat_w+apply_w |
892 | inc edx |
841 | inc edx |
893 | mcall |
842 | mcall |
894 | ; LOAD SKIN BUTTON |
843 | ; LOAD SKIN BUTTON |
895 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+load_w |
844 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+load_w |
896 | inc edx |
845 | inc edx |
897 | mcall |
846 | mcall |
898 | ; APPLY SKIN BUTTON |
847 | ; APPLY SKIN BUTTON |
899 | add ebx,(load_w+6+2)*65536-load_w+apply_w |
848 | add ebx,(load_w+6+2)*65536-load_w+apply_w |
900 | inc edx |
849 | inc edx |
901 | mcall |
850 | mcall |
902 | 851 | ||
903 | mov ebx,(339-t1.size*6-12)*65536+(35+18*12+4) |
852 | mov ebx,(339-t1.size*6-12)*65536+(35+18*12+4) |
904 | mcall 4,,[w_work_button_text],t1,t1.size |
853 | mcall 4,,[w_work_button_text],t1,t1.size |
905 | 854 | ||
906 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+(35+18*12+4) |
855 | mov ebx,(336+(555-335)/2-t2.size*6/2)*65536+(35+18*12+4) |
907 | mcall ,,,t2,t2.size |
856 | mcall ,,,t2,t2.size |
908 | 857 | ||
909 | mov ebx,(15+(load_w+save_w+2-t3.size*6)/2)*65536+(35+18*12+4) |
858 | mov ebx,(15+(load_w+save_w+2-t3.size*6)/2)*65536+(35+18*12+4) |
910 | mcall ,,,t3,t3.size |
859 | mcall ,,,t3,t3.size |
911 | 860 | ||
912 | mov eax,38 ; R G B COLOR GLIDES |
861 | mov eax,38 ; R G B COLOR GLIDES |
913 | mov ebx,266*65536+285 |
862 | mov ebx,266*65536+285 |
914 | mov ecx,30*65536+30 |
863 | mov ecx,30*65536+30 |
915 | mov edx,0xff0000 |
864 | mov edx,0xff0000 |
916 | ;----------------------------------- |
865 | ;----------------------------------- |
917 | .newl: |
866 | .newl: |
918 | mcall |
867 | mcall |
919 | pusha |
868 | pusha |
920 | add ebx,20*65536+20 |
869 | add ebx,20*65536+20 |
921 | shr edx,8 |
870 | shr edx,8 |
922 | mcall |
871 | mcall |
923 | add ebx,20*65536+20 |
872 | add ebx,20*65536+20 |
924 | shr edx,8 |
873 | shr edx,8 |
925 | mcall |
874 | mcall |
926 | popa |
875 | popa |
927 | sub edx,0x020000 |
876 | sub edx,0x020000 |
928 | add ecx,0x00010001 |
877 | add ecx,0x00010001 |
929 | cmp ecx,158*65536+158 |
878 | cmp ecx,158*65536+158 |
930 | jnz .newl |
879 | jnz .newl |
931 | ;----------------------------------- |
880 | ;----------------------------------- |
932 | call draw_color |
881 | call draw_color |
933 | 882 | ||
934 | mov edx,31 ; BUTTON ROW |
883 | mov edx,31 ; BUTTON ROW |
935 | mov ebx,15*65536+200 |
884 | mov ebx,15*65536+200 |
936 | mov ecx,30*65536+14 |
885 | mov ecx,30*65536+14 |
937 | mov esi,[w_work_button] |
886 | mov esi,[w_work_button] |
938 | 887 | ||
939 | mov eax,8 |
888 | mov eax,8 |
940 | ;----------------------------------- |
889 | ;----------------------------------- |
941 | .newb: |
890 | .newb: |
942 | mcall |
891 | mcall |
943 | add ecx,18*65536 |
892 | add ecx,18*65536 |
944 | inc edx |
893 | inc edx |
945 | cmp edx,40 |
894 | cmp edx,40 |
946 | jbe .newb |
895 | jbe .newb |
947 | ;----------------------------------- |
896 | ;----------------------------------- |
948 | mov ebx,15*65536+34 ; ROW OF TEXTS |
897 | mov ebx,15*65536+34 ; ROW OF TEXTS |
949 | mov ecx,[w_work_button_text] |
898 | mov ecx,[w_work_button_text] |
950 | mov edx,text |
899 | mov edx,text |
951 | mov esi,32 |
900 | mov esi,32 |
952 | 901 | ||
953 | mov eax,4 |
902 | mov eax,4 |
954 | ;----------------------------------- |
903 | ;----------------------------------- |
955 | .newline: |
904 | .newline: |
956 | mcall |
905 | mcall |
957 | add ebx,18 |
906 | add ebx,18 |
958 | add edx,32 |
907 | add edx,32 |
959 | cmp [edx],byte 'x' |
908 | cmp [edx],byte 'x' |
960 | jne .newline |
909 | jne .newline |
961 | ;----------------------------------- |
910 | ;----------------------------------- |
962 | call draw_colours |
911 | call draw_colours |
963 | call draw_PathShow |
912 | call draw_PathShow |
964 | cmp dword[not_packed_area+SKIN_HEADER.ident],'SKIN' |
913 | cmp dword[not_packed_area+SKIN_HEADER.ident],'SKIN' |
965 | jne @f |
914 | jne @f |
966 | call draw_skin |
915 | call draw_skin |
967 | @@: |
916 | @@: |
968 | .end: |
917 | .end: |
969 | mcall 12,2 |
918 | mcall 12,2 |
970 | ret |
919 | ret |
971 | ;--------------------------------------------------------------------- |
920 | ;--------------------------------------------------------------------- |
972 | ; DATA AREA |
921 | ; DATA AREA |
973 | ;--------------------------------------------------------------------- |
922 | ;--------------------------------------------------------------------- |
974 | lsz text,\ |
923 | lsz text,\ |
975 | ru, ' ',\ |
924 | ru, ' ',\ |
976 | ru, ' ',\ |
925 | ru, ' ',\ |
977 | ru, ' ',\ |
926 | ru, ' ',\ |
978 | ru, ' ',\ |
927 | ru, ' ',\ |
979 | ru, ' ',\ |
928 | ru, ' ',\ |
980 | ru, ' ',\ |
929 | ru, ' ',\ |
981 | ru, ' ',\ |
930 | ru, ' ',\ |
982 | ru, ' ',\ |
931 | ru, ' ',\ |
983 | ru, ' ',\ |
932 | ru, ' ',\ |
984 | ru, ' ',\ |
933 | ru, ' ',\ |
985 | ru, 'x',\ |
934 | ru, 'x',\ |
986 | en, ' WINDOW FRAME ',\ |
935 | en, ' WINDOW FRAME ',\ |
987 | en, ' WINDOW GRAB BAR ',\ |
936 | en, ' WINDOW GRAB BAR ',\ |
988 | en, ' WINDOW GRAB BUTTON ',\ |
937 | en, ' WINDOW GRAB BUTTON ',\ |
989 | en, ' WINDOW GRAB BUTTON TEXT ',\ |
938 | en, ' WINDOW GRAB BUTTON TEXT ',\ |
990 | en, ' WINDOW GRAB TITLE ',\ |
939 | en, ' WINDOW GRAB TITLE ',\ |
991 | en, ' WINDOW WORK AREA ',\ |
940 | en, ' WINDOW WORK AREA ',\ |
992 | en, ' WINDOW WORK AREA BUTTON ',\ |
941 | en, ' WINDOW WORK AREA BUTTON ',\ |
993 | en, ' WINDOW WORK AREA BUTTON TEXT ',\ |
942 | en, ' WINDOW WORK AREA BUTTON TEXT ',\ |
994 | en, ' WINDOW WORK AREA TEXT ',\ |
943 | en, ' WINDOW WORK AREA TEXT ',\ |
995 | en, ' WINDOW WORK AREA GRAPH ',\ |
944 | en, ' WINDOW WORK AREA GRAPH ',\ |
996 | en, 'x',\ |
945 | en, 'x',\ |
997 | et, ' AKNA RAAM ',\ |
946 | et, ' AKNA RAAM ',\ |
998 | et, ' AKNA HAARAMISE RIBA ',\ |
947 | et, ' AKNA HAARAMISE RIBA ',\ |
999 | et, ' AKNA HAARAMISE NUPP ',\ |
948 | et, ' AKNA HAARAMISE NUPP ',\ |
1000 | et, ' AKNA HAARAMISE NUPU TEKST ',\ |
949 | et, ' AKNA HAARAMISE NUPU TEKST ',\ |
1001 | et, ' AKNA HAARAMISE PEALKIRI ',\ |
950 | et, ' AKNA HAARAMISE PEALKIRI ',\ |
1002 | et, ' AKNA TÖÖPIIRKOND ',\ |
951 | et, ' AKNA TÖÖPIIRKOND ',\ |
1003 | et, ' AKNA TÖÖPIIRKONNA NUPP ',\ |
952 | et, ' AKNA TÖÖPIIRKONNA NUPP ',\ |
1004 | et, ' AKNA TÖÖPIIRKONNA NUPPU TEKST ',\ |
953 | et, ' AKNA TÖÖPIIRKONNA NUPPU TEKST ',\ |
1005 | et, ' AKNA TÖÖPIIRKONNA TEKST ',\ |
954 | et, ' AKNA TÖÖPIIRKONNA TEKST ',\ |
1006 | et, ' AKNA TÖÖPIIRKONNA GRAAFIKA ',\ |
955 | et, ' AKNA TÖÖPIIRKONNA GRAAFIKA ',\ |
1007 | et, 'x' |
956 | et, 'x' |
1008 | 957 | ||
1009 | lsz t1,\ |
958 | lsz t1,\ |
1010 | ru, ' 3D ',\ |
959 | ru, ' 3D ',\ |
1011 | en, ' 3D FLAT APPLY ',\ |
960 | en, ' 3D FLAT APPLY ',\ |
1012 | et, ' 3D LAME KINNITA ' |
961 | et, ' 3D LAME KINNITA ' |
1013 | 962 | ||
1014 | lsz t2,\ |
963 | lsz t2,\ |
1015 | ru, ' ',\ |
964 | ru, ' ',\ |
1016 | en, ' LOAD APPLY ',\ |
965 | en, ' LOAD APPLY ',\ |
1017 | et, ' LAADI KINNITA ' |
966 | et, ' LAADI KINNITA ' |
1018 | 967 | ||
1019 | lsz t3,\ |
968 | lsz t3,\ |
1020 | ru, ' ',\ |
969 | ru, ' ',\ |
1021 | en, ' LOAD SAVE ',\ |
970 | en, ' LOAD SAVE ',\ |
1022 | et, ' LAADI SALVESTA',\ |
971 | et, ' LAADI SALVESTA',\ |
1023 | 972 | ||
1024 | lsz caption_text,\ |
973 | lsz caption_text,\ |
1025 | ru, ' £®«®¢®ª',\ |
974 | ru, ' £®«®¢®ª',\ |
1026 | en, 'Caption',\ |
975 | en, 'Caption',\ |
1027 | et, 'Pealkiri' |
976 | et, 'Pealkiri' |
1028 | 977 | ||
1029 | sz close_text,'x' |
978 | sz close_text,'x' |
1030 | 979 | ||
1031 | lsz window_text,\ |
980 | lsz window_text,\ |
1032 | ru, '¥ªáâ ¢ ®ª¥',\ |
981 | ru, '¥ªáâ ¢ ®ª¥',\ |
1033 | en, 'Window text',\ |
982 | en, 'Window text',\ |
1034 | et, 'Akna tekst' |
983 | et, 'Akna tekst' |
1035 | 984 | ||
1036 | lsz button_text,\ |
985 | lsz button_text,\ |
1037 | ru, '¥ªáâ ª®¯ª¥',\ |
986 | ru, '¥ªáâ ª®¯ª¥',\ |
1038 | en, 'Button text',\ |
987 | en, 'Button text',\ |
1039 | et, 'Nupu tekst' |
988 | et, 'Nupu tekst' |
1040 | 989 | ||
1041 | ;sz default_skn, '/sys/DEFAULT.SKN',0 |
990 | ;sz default_skn, '/sys/DEFAULT.SKN',0 |
1042 | 991 | ||
1043 | if lang eq ru |
992 | if lang eq ru |
1044 | title db ' ',0 |
993 | title db ' ',0 |
1045 | else if lang eq et |
994 | else if lang eq et |
1046 | title db 'AKNA SEADED - VALI VÄRV JA VAJUTA OBJEKTILE',0 |
995 | title db 'AKNA SEADED - VALI VÄRV JA VAJUTA OBJEKTILE',0 |
1047 | else |
996 | else |
1048 | title db 'WINDOWS SETTINGS - DEFINE COLOR AND CLICK ON TARGET',0 |
997 | title db 'WINDOWS SETTINGS - DEFINE COLOR AND CLICK ON TARGET',0 |
1049 | end if |
998 | end if |
1050 | 999 | ||
1051 | 1000 | ||
1052 | color dd 0 |
1001 | color dd 0 |
1053 | 1002 | ||
1054 | ;--------------------------------------------------------------------- |
1003 | ;--------------------------------------------------------------------- |
1055 | l_libs_start: |
1004 | l_libs_start: |
1056 | 1005 | ||
1057 | library01 l_libs system_dir_Boxlib+9, cur_dir_path, library_path, system_dir_Boxlib, \ |
1006 | library01 l_libs system_dir_Boxlib+9, cur_dir_path, library_path, system_dir_Boxlib, \ |
1058 | err_message_found_lib1, head_f_l, Box_lib_import, err_message_import1, head_f_i |
1007 | err_message_found_lib1, head_f_l, Box_lib_import, err_message_import1, head_f_i |
1059 | 1008 | ||
1060 | library02 l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \ |
1009 | library02 l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \ |
1061 | err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i |
1010 | err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i |
1062 | 1011 | ||
1063 | end_l_libs: |
1012 | end_l_libs: |
1064 | ;--------------------------------------------------------------------- |
1013 | ;--------------------------------------------------------------------- |
1065 | system_dir_Boxlib db '/sys/lib/box_lib.obj',0 |
1014 | system_dir_Boxlib db '/sys/lib/box_lib.obj',0 |
1066 | system_dir_ProcLib db '/sys/lib/proc_lib.obj',0 |
1015 | system_dir_ProcLib db '/sys/lib/proc_lib.obj',0 |
1067 | 1016 | ||
1068 | head_f_i: |
1017 | head_f_i: |
1069 | head_f_l db 'System error',0 |
1018 | head_f_l db 'System error',0 |
1070 | 1019 | ||
1071 | err_message_found_lib1 db 'box_lib.obj - Not found!',0 |
1020 | err_message_found_lib1 db 'box_lib.obj - Not found!',0 |
1072 | err_message_found_lib2 db 'proc_lib.obj - Not found!',0 |
1021 | err_message_found_lib2 db 'proc_lib.obj - Not found!',0 |
1073 | 1022 | ||
1074 | err_message_import1 db 'box_lib.obj - Wrong import!',0 |
1023 | err_message_import1 db 'box_lib.obj - Wrong import!',0 |
1075 | err_message_import2 db 'proc_lib.obj - Wrong import!',0 |
1024 | err_message_import2 db 'proc_lib.obj - Wrong import!',0 |
1076 | 1025 | ||
1077 | ;--------------------------------------------------------------------- |
1026 | ;--------------------------------------------------------------------- |
1078 | align 4 |
1027 | align 4 |
1079 | ProcLib_import: |
1028 | ProcLib_import: |
1080 | OpenDialog_Init dd aOpenDialog_Init |
1029 | OpenDialog_Init dd aOpenDialog_Init |
1081 | OpenDialog_Start dd aOpenDialog_Start |
1030 | OpenDialog_Start dd aOpenDialog_Start |
1082 | ;OpenDialog__Version dd aOpenDialog_Version |
1031 | ;OpenDialog__Version dd aOpenDialog_Version |
1083 | dd 0 |
1032 | dd 0 |
1084 | dd 0 |
1033 | dd 0 |
1085 | aOpenDialog_Init db 'OpenDialog_init',0 |
1034 | aOpenDialog_Init db 'OpenDialog_init',0 |
1086 | aOpenDialog_Start db 'OpenDialog_start',0 |
1035 | aOpenDialog_Start db 'OpenDialog_start',0 |
1087 | ;aOpenDialog_Version db 'Version_OpenDialog',0 |
1036 | ;aOpenDialog_Version db 'Version_OpenDialog',0 |
1088 | ;--------------------------------------------------------------------- |
1037 | ;--------------------------------------------------------------------- |
1089 | align 4 |
1038 | align 4 |
1090 | Box_lib_import: |
1039 | Box_lib_import: |
1091 | ;init_lib dd a_init |
1040 | ;init_lib dd a_init |
1092 | ;version_lib dd a_version |
1041 | ;version_lib dd a_version |
1093 | 1042 | ||
1094 | 1043 | ||
1095 | ;edit_box_draw dd aEdit_box_draw |
1044 | ;edit_box_draw dd aEdit_box_draw |
1096 | ;edit_box_key dd aEdit_box_key |
1045 | ;edit_box_key dd aEdit_box_key |
1097 | ;edit_box_mouse dd aEdit_box_mouse |
1046 | ;edit_box_mouse dd aEdit_box_mouse |
1098 | ;version_ed dd aVersion_ed |
1047 | ;version_ed dd aVersion_ed |
1099 | 1048 | ||
1100 | ;check_box_draw dd aCheck_box_draw |
1049 | ;check_box_draw dd aCheck_box_draw |
1101 | ;check_box_mouse dd aCheck_box_mouse |
1050 | ;check_box_mouse dd aCheck_box_mouse |
1102 | ;version_ch dd aVersion_ch |
1051 | ;version_ch dd aVersion_ch |
1103 | 1052 | ||
1104 | ;option_box_draw dd aOption_box_draw |
1053 | ;option_box_draw dd aOption_box_draw |
1105 | ;option_box_mouse dd aOption_box_mouse |
1054 | ;option_box_mouse dd aOption_box_mouse |
1106 | ;version_op dd aVersion_op |
1055 | ;version_op dd aVersion_op |
1107 | 1056 | ||
1108 | ;scrollbar_ver_draw dd aScrollbar_ver_draw |
1057 | ;scrollbar_ver_draw dd aScrollbar_ver_draw |
1109 | ;scrollbar_ver_mouse dd aScrollbar_ver_mouse |
1058 | ;scrollbar_ver_mouse dd aScrollbar_ver_mouse |
1110 | ;scrollbar_hor_draw dd aScrollbar_hor_draw |
1059 | ;scrollbar_hor_draw dd aScrollbar_hor_draw |
1111 | ;scrollbar_hor_mouse dd aScrollbar_hor_mouse |
1060 | ;scrollbar_hor_mouse dd aScrollbar_hor_mouse |
1112 | ;version_scrollbar dd aVersion_scrollbar |
1061 | ;version_scrollbar dd aVersion_scrollbar |
1113 | 1062 | ||
1114 | ;dinamic_button_draw dd aDbutton_draw |
1063 | ;dinamic_button_draw dd aDbutton_draw |
1115 | ;dinamic_button_mouse dd aDbutton_mouse |
1064 | ;dinamic_button_mouse dd aDbutton_mouse |
1116 | ;version_dbutton dd aVersion_dbutton |
1065 | ;version_dbutton dd aVersion_dbutton |
1117 | 1066 | ||
1118 | ;menu_bar_draw dd aMenu_bar_draw |
1067 | ;menu_bar_draw dd aMenu_bar_draw |
1119 | ;menu_bar_mouse dd aMenu_bar_mouse |
1068 | ;menu_bar_mouse dd aMenu_bar_mouse |
1120 | ;menu_bar_activate dd aMenu_bar_activate |
1069 | ;menu_bar_activate dd aMenu_bar_activate |
1121 | ;version_menu_bar dd aVersion_menu_bar |
1070 | ;version_menu_bar dd aVersion_menu_bar |
1122 | 1071 | ||
1123 | ;FileBrowser_draw dd aFileBrowser_draw |
1072 | ;FileBrowser_draw dd aFileBrowser_draw |
1124 | ;FileBrowser_mouse dd aFileBrowser_mouse |
1073 | ;FileBrowser_mouse dd aFileBrowser_mouse |
1125 | ;FileBrowser_key dd aFileBrowser_key |
1074 | ;FileBrowser_key dd aFileBrowser_key |
1126 | ;Version_FileBrowser dd aVersion_FileBrowser |
1075 | ;Version_FileBrowser dd aVersion_FileBrowser |
1127 | 1076 | ||
1128 | PathShow_prepare dd sz_PathShow_prepare |
1077 | PathShow_prepare dd sz_PathShow_prepare |
1129 | PathShow_draw dd sz_PathShow_draw |
1078 | PathShow_draw dd sz_PathShow_draw |
1130 | ;Version_path_show dd szVersion_path_show |
1079 | ;Version_path_show dd szVersion_path_show |
1131 | dd 0 |
1080 | dd 0 |
1132 | dd 0 |
1081 | dd 0 |
1133 | 1082 | ||
1134 | ;a_init db 'lib_init',0 |
1083 | ;a_init db 'lib_init',0 |
1135 | ;a_version db 'version',0 |
1084 | ;a_version db 'version',0 |
1136 | 1085 | ||
1137 | ;aEdit_box_draw db 'edit_box',0 |
1086 | ;aEdit_box_draw db 'edit_box',0 |
1138 | ;aEdit_box_key db 'edit_box_key',0 |
1087 | ;aEdit_box_key db 'edit_box_key',0 |
1139 | ;aEdit_box_mouse db 'edit_box_mouse',0 |
1088 | ;aEdit_box_mouse db 'edit_box_mouse',0 |
1140 | ;aVersion_ed db 'version_ed',0 |
1089 | ;aVersion_ed db 'version_ed',0 |
1141 | 1090 | ||
1142 | ;aCheck_box_draw db 'check_box_draw',0 |
1091 | ;aCheck_box_draw db 'check_box_draw',0 |
1143 | ;aCheck_box_mouse db 'check_box_mouse',0 |
1092 | ;aCheck_box_mouse db 'check_box_mouse',0 |
1144 | ;aVersion_ch db 'version_ch',0 |
1093 | ;aVersion_ch db 'version_ch',0 |
1145 | 1094 | ||
1146 | ;aOption_box_draw db 'option_box_draw',0 |
1095 | ;aOption_box_draw db 'option_box_draw',0 |
1147 | ;aOption_box_mouse db 'option_box_mouse',0 |
1096 | ;aOption_box_mouse db 'option_box_mouse',0 |
1148 | ;aVersion_op db 'version_op',0 |
1097 | ;aVersion_op db 'version_op',0 |
1149 | 1098 | ||
1150 | ;aScrollbar_ver_draw db 'scrollbar_v_draw',0 |
1099 | ;aScrollbar_ver_draw db 'scrollbar_v_draw',0 |
1151 | ;aScrollbar_ver_mouse db 'scrollbar_v_mouse',0 |
1100 | ;aScrollbar_ver_mouse db 'scrollbar_v_mouse',0 |
1152 | ;aScrollbar_hor_draw db 'scrollbar_h_draw',0 |
1101 | ;aScrollbar_hor_draw db 'scrollbar_h_draw',0 |
1153 | ;aScrollbar_hor_mouse db 'scrollbar_h_mouse',0 |
1102 | ;aScrollbar_hor_mouse db 'scrollbar_h_mouse',0 |
1154 | ;aVersion_scrollbar db 'version_scrollbar',0 |
1103 | ;aVersion_scrollbar db 'version_scrollbar',0 |
1155 | 1104 | ||
1156 | ;aDbutton_draw db 'dbutton_draw',0 |
1105 | ;aDbutton_draw db 'dbutton_draw',0 |
1157 | ;aDbutton_mouse db 'dbutton_mouse',0 |
1106 | ;aDbutton_mouse db 'dbutton_mouse',0 |
1158 | ;aVersion_dbutton db 'version_dbutton',0 |
1107 | ;aVersion_dbutton db 'version_dbutton',0 |
1159 | 1108 | ||
1160 | ;aMenu_bar_draw db 'menu_bar_draw',0 |
1109 | ;aMenu_bar_draw db 'menu_bar_draw',0 |
1161 | ;aMenu_bar_mouse db 'menu_bar_mouse',0 |
1110 | ;aMenu_bar_mouse db 'menu_bar_mouse',0 |
1162 | ;aMenu_bar_activate db 'menu_bar_activate',0 |
1111 | ;aMenu_bar_activate db 'menu_bar_activate',0 |
1163 | ;aVersion_menu_bar db 'version_menu_bar',0 |
1112 | ;aVersion_menu_bar db 'version_menu_bar',0 |
1164 | 1113 | ||
1165 | ;aFileBrowser_draw db 'FileBrowser_draw',0 |
1114 | ;aFileBrowser_draw db 'FileBrowser_draw',0 |
1166 | ;aFileBrowser_mouse db 'FileBrowser_mouse',0 |
1115 | ;aFileBrowser_mouse db 'FileBrowser_mouse',0 |
1167 | ;aFileBrowser_key db 'FileBrowser_key',0 |
1116 | ;aFileBrowser_key db 'FileBrowser_key',0 |
1168 | ;aVersion_FileBrowser db 'version_FileBrowser',0 |
1117 | ;aVersion_FileBrowser db 'version_FileBrowser',0 |
1169 | 1118 | ||
1170 | sz_PathShow_prepare db 'PathShow_prepare',0 |
1119 | sz_PathShow_prepare db 'PathShow_prepare',0 |
1171 | sz_PathShow_draw db 'PathShow_draw',0 |
1120 | sz_PathShow_draw db 'PathShow_draw',0 |
1172 | ;szVersion_path_show db 'version_PathShow',0 |
1121 | ;szVersion_path_show db 'version_PathShow',0 |
1173 | ;--------------------------------------------------------------------- |
1122 | ;--------------------------------------------------------------------- |
1174 | PathShow_data_1: |
1123 | PathShow_data_1: |
1175 | .type dd 0 ;+0 |
1124 | .type dd 0 ;+0 |
1176 | .start_y dw 217 ;+4 |
1125 | .start_y dw 217 ;+4 |
1177 | .start_x dw 12 ;+6 |
1126 | .start_x dw 12 ;+6 |
1178 | .font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
1127 | .font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
1179 | .area_size_x dw 530 ;+10 |
1128 | .area_size_x dw 530 ;+10 |
1180 | .font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
1129 | .font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
1181 | .background_flag dd 0 ;+16 |
1130 | .background_flag dd 0 ;+16 |
1182 | .font_color dd 0x0 ;+20 |
1131 | .font_color dd 0x0 ;+20 |
1183 | .background_color dd 0x0 ;+24 |
1132 | .background_color dd 0x0 ;+24 |
1184 | .text_pointer dd fname ;+28 |
1133 | .text_pointer dd fname ;+28 |
1185 | .work_area_pointer dd text_work_area ;+32 |
1134 | .work_area_pointer dd text_work_area ;+32 |
1186 | .temp_text_length dd 0 ;+36 |
1135 | .temp_text_length dd 0 ;+36 |
1187 | ;--------------------------------------------------------------------- |
1136 | ;--------------------------------------------------------------------- |
1188 | PathShow_data_2: |
1137 | PathShow_data_2: |
1189 | .type dd 0 ;+0 |
1138 | .type dd 0 ;+0 |
1190 | .start_y dw 235 ;+4 |
1139 | .start_y dw 235 ;+4 |
1191 | .start_x dw 12 ;+6 |
1140 | .start_x dw 12 ;+6 |
1192 | .font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
1141 | .font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
1193 | .area_size_x dw 530 ;+10 |
1142 | .area_size_x dw 530 ;+10 |
1194 | .font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
1143 | .font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
1195 | .background_flag dd 0 ;+16 |
1144 | .background_flag dd 0 ;+16 |
1196 | .font_color dd 0x0 ;+20 |
1145 | .font_color dd 0x0 ;+20 |
1197 | .background_color dd 0x0 ;+24 |
1146 | .background_color dd 0x0 ;+24 |
1198 | .text_pointer dd skin_info ;+28 |
1147 | .text_pointer dd skin_info ;+28 |
1199 | .work_area_pointer dd text_work_area2 ;+32 |
1148 | .work_area_pointer dd text_work_area2 ;+32 |
1200 | .temp_text_length dd 0 ;+36 |
1149 | .temp_text_length dd 0 ;+36 |
1201 | ;--------------------------------------------------------------------- |
1150 | ;--------------------------------------------------------------------- |
1202 | OpenDialog_data: |
1151 | OpenDialog_data: |
1203 | .type dd 0 |
1152 | .type dd 0 |
1204 | .procinfo dd procinfo ;+4 |
1153 | .procinfo dd procinfo ;+4 |
1205 | .com_area_name dd communication_area_name ;+8 |
1154 | .com_area_name dd communication_area_name ;+8 |
1206 | .com_area dd 0 ;+12 |
1155 | .com_area dd 0 ;+12 |
1207 | .opendir_pach dd temp_dir_pach ;+16 |
1156 | .opendir_pach dd temp_dir_pach ;+16 |
1208 | .dir_default_pach dd communication_area_default_pach ;+20 |
1157 | .dir_default_pach dd communication_area_default_pach ;+20 |
1209 | .start_path dd open_dialog_path ;+24 |
1158 | .start_path dd open_dialog_path ;+24 |
1210 | .draw_window dd draw_window ;+28 |
1159 | .draw_window dd draw_window ;+28 |
1211 | .status dd 0 ;+32 |
1160 | .status dd 0 ;+32 |
1212 | .openfile_pach dd fname ;+36 |
1161 | .openfile_pach dd fname ;+36 |
1213 | .filename_area dd filename_area ;+40 |
1162 | .filename_area dd filename_area ;+40 |
1214 | .filter_area dd Filter |
1163 | .filter_area dd Filter |
1215 | .x: |
1164 | .x: |
1216 | .x_size dw 420 ;+48 ; Window X size |
1165 | .x_size dw 420 ;+48 ; Window X size |
1217 | .x_start dw 10 ;+50 ; Window X position |
1166 | .x_start dw 10 ;+50 ; Window X position |
1218 | .y: |
1167 | .y: |
1219 | .y_size dw 320 ;+52 ; Window y size |
1168 | .y_size dw 320 ;+52 ; Window y size |
1220 | .y_start dw 10 ;+54 ; Window Y position |
1169 | .y_start dw 10 ;+54 ; Window Y position |
1221 | 1170 | ||
1222 | OpenDialog_data2: |
1171 | OpenDialog_data2: |
1223 | .type dd 0 |
1172 | .type dd 0 |
1224 | .procinfo dd procinfo ;+4 |
1173 | .procinfo dd procinfo ;+4 |
1225 | .com_area_name dd communication_area_name2 ;+8 |
1174 | .com_area_name dd communication_area_name2 ;+8 |
1226 | .com_area dd 0 ;+12 |
1175 | .com_area dd 0 ;+12 |
1227 | .opendir_pach dd temp_dir_pach2 ;+16 |
1176 | .opendir_pach dd temp_dir_pach2 ;+16 |
1228 | .dir_default_pach dd communication_area_default_pach ;+20 |
1177 | .dir_default_pach dd communication_area_default_pach ;+20 |
1229 | .start_path dd open_dialog_path ;+24 |
1178 | .start_path dd open_dialog_path ;+24 |
1230 | .draw_window dd draw_window ;+28 |
1179 | .draw_window dd draw_window ;+28 |
1231 | .status dd 0 ;+32 |
1180 | .status dd 0 ;+32 |
1232 | .openfile_pach dd skin_info ;+36 |
1181 | .openfile_pach dd skin_info ;+36 |
1233 | .filename_area dd filename_area2 ;+40 |
1182 | .filename_area dd filename_area2 ;+40 |
1234 | .filter_area dd Filter2 |
1183 | .filter_area dd Filter2 |
1235 | .x: |
1184 | .x: |
1236 | .x_size dw 420 ;+48 ; Window X size |
1185 | .x_size dw 420 ;+48 ; Window X size |
1237 | .x_start dw 10 ;+50 ; Window X position |
1186 | .x_start dw 10 ;+50 ; Window X position |
1238 | .y: |
1187 | .y: |
1239 | .y_size dw 320 ;+52 ; Window y size |
1188 | .y_size dw 320 ;+52 ; Window y size |
1240 | .y_start dw 10 ;+54 ; Window Y position |
1189 | .y_start dw 10 ;+54 ; Window Y position |
1241 | 1190 | ||
1242 | communication_area_name2: |
1191 | communication_area_name2: |
1243 | db 'FFFFFFFF_open_dialog',0 |
1192 | db 'FFFFFFFF_open_dialog',0 |
1244 | 1193 | ||
1245 | communication_area_name: |
1194 | communication_area_name: |
1246 | db 'FFFFFFFF_open_dialog2',0 |
1195 | db 'FFFFFFFF_open_dialog2',0 |
1247 | open_dialog_path: |
1196 | open_dialog_path: |
1248 | if __nightbuild eq yes |
1197 | if __nightbuild eq yes |
1249 | db '/sys/MANAGERS/opendial',0 |
1198 | db '/sys/MANAGERS/opendial',0 |
1250 | else |
1199 | else |
1251 | db '/sys/File Managers/opendial',0 |
1200 | db '/sys/File Managers/opendial',0 |
1252 | end if |
1201 | end if |
1253 | communication_area_default_pach: |
1202 | communication_area_default_pach: |
1254 | db '/sys',0 |
1203 | db '/sys',0 |
1255 | 1204 | ||
1256 | Filter: |
1205 | Filter: |
1257 | dd Filter.end - Filter |
1206 | dd Filter.end - Filter |
1258 | .1: |
1207 | .1: |
1259 | db 'DTP',0 |
1208 | db 'DTP',0 |
1260 | .end: |
1209 | .end: |
1261 | db 0 |
1210 | db 0 |
1262 | 1211 | ||
1263 | Filter2: |
1212 | Filter2: |
1264 | dd Filter.end - Filter |
1213 | dd Filter.end - Filter |
1265 | .1: |
1214 | .1: |
1266 | db 'SKN',0 |
1215 | db 'SKN',0 |
1267 | .end: |
1216 | .end: |
1268 | db 0 |
1217 | db 0 |
1269 | 1218 | ||
- | 1219 | start_temp_file_name: |
|
1270 | start_temp_file_name: db 'default.dtp',0 |
1220 | db 'default.dtp',0 |
1271 | 1221 | ||
1272 | default_skin: |
1222 | default_skin: |
1273 | db '/sys/default.skn',0 |
1223 | db '/sys/default.skn',0 |
1274 | default_dtp: |
1224 | default_dtp: |
1275 | db '/sys/default.dtp',0 |
1225 | db '/sys/default.dtp',0 |
1276 | ;--------------------------------------------------------------------- |
1226 | ;--------------------------------------------------------------------- |
1277 | IncludeIGlobals |
1227 | IncludeIGlobals |
1278 | 1228 | ||
1279 | I_END: |
1229 | I_END: |
1280 | 1230 | ||
1281 | IncludeUGlobals |
1231 | IncludeUGlobals |
1282 | 1232 | ||
1283 | read_info: |
1233 | read_info: |
1284 | .mode dd ? ; read |
1234 | .mode dd ? ; read |
1285 | .start_block dd ? ; first block |
1235 | .start_block dd ? ; first block |
1286 | .blocks dd ? ; 512 bytes |
1236 | .blocks dd ? ; 512 bytes |
1287 | .address dd ? |
1237 | .address dd ? |
1288 | .workarea dd ? |
1238 | .workarea dd ? |
1289 | fname rb 4096 ; filename |
1239 | fname rb 4096 ; filename |
1290 | 1240 | ||
1291 | virtual at read_info |
1241 | virtual at read_info |
1292 | write_info: |
1242 | write_info: |
1293 | .mode dd ? |
1243 | .mode dd ? |
1294 | rd 1 |
1244 | rd 1 |
1295 | .bytes2write dd ? |
1245 | .bytes2write dd ? |
1296 | .address dd ? |
1246 | .address dd ? |
1297 | .workarea dd ? |
1247 | .workarea dd ? |
1298 | end virtual |
1248 | end virtual |
1299 | 1249 | ||
1300 | read_info2: |
1250 | read_info2: |
1301 | .mode dd ? ; read |
1251 | .mode dd ? ; read |
1302 | .start_block dd ? ; first block |
1252 | .start_block dd ? ; first block |
1303 | .blocks dd ? ; 512 bytes |
1253 | .blocks dd ? ; 512 bytes |
1304 | .address dd ? |
1254 | .address dd ? |
1305 | .workarea dd ? |
1255 | .workarea dd ? |
1306 | skin_info rb 4096 |
1256 | skin_info rb 4096 |
1307 | 1257 | ||
1308 | ;param rb 257 |
1258 | ;param rb 257 |
1309 | 1259 | ||
1310 | align 4 |
1260 | align 4 |
1311 | app_colours: |
1261 | app_colours: |
1312 | 1262 | ||
1313 | w_frame dd ? |
1263 | w_frame dd ? |
1314 | w_grab dd ? |
1264 | w_grab dd ? |
1315 | w_grab_button dd ? |
1265 | w_grab_button dd ? |
1316 | w_grab_button_text dd ? |
1266 | w_grab_button_text dd ? |
1317 | w_grab_text dd ? |
1267 | w_grab_text dd ? |
1318 | w_work dd ? |
1268 | w_work dd ? |
1319 | w_work_button dd ? |
1269 | w_work_button dd ? |
1320 | w_work_button_text dd ? |
1270 | w_work_button_text dd ? |
1321 | w_work_text dd ? |
1271 | w_work_text dd ? |
1322 | w_work_graph dd ? |
1272 | w_work_graph dd ? |
1323 | 1273 | ||
1324 | color_table: |
1274 | color_table: |
1325 | times 10 dd ? |
1275 | times 10 dd ? |
1326 | ;--------------------------------------------------------------------- |
1276 | ;--------------------------------------------------------------------- |
1327 | align 4 |
1277 | align 4 |
1328 | cur_dir_path: |
1278 | cur_dir_path: |
1329 | rb 4096 |
1279 | rb 4096 |
1330 | ;--------------------------------------------------------------------- |
1280 | ;--------------------------------------------------------------------- |
1331 | library_path: |
1281 | library_path: |
1332 | rb 4096 |
1282 | rb 4096 |
1333 | ;--------------------------------------------------------------------- |
1283 | ;--------------------------------------------------------------------- |
1334 | ;fname_buf: |
- | |
1335 | ; rb 4096 |
- | |
1336 | ;--------------------------------------------------------------------- |
- | |
1337 | temp_dir_pach: |
1284 | temp_dir_pach: |
1338 | rb 4096 |
1285 | rb 4096 |
1339 | ;--------------------------------------------------------------------- |
1286 | ;--------------------------------------------------------------------- |
1340 | temp_dir_pach2: |
1287 | temp_dir_pach2: |
1341 | rb 4096 |
1288 | rb 4096 |
1342 | ;--------------------------------------------------------------------- |
1289 | ;--------------------------------------------------------------------- |
1343 | text_work_area: |
1290 | text_work_area: |
1344 | rb 1024 |
1291 | rb 1024 |
1345 | ;--------------------------------------------------------------------- |
1292 | ;--------------------------------------------------------------------- |
1346 | text_work_area2: |
1293 | text_work_area2: |
1347 | rb 1024 |
1294 | rb 1024 |
1348 | ;--------------------------------------------------------------------- |
1295 | ;--------------------------------------------------------------------- |
1349 | procinfo: |
1296 | procinfo: |
1350 | rb 1024 |
1297 | rb 1024 |
1351 | ;--------------------------------------------------------------------- |
1298 | ;--------------------------------------------------------------------- |
1352 | filename_area: |
1299 | filename_area: |
1353 | rb 256 |
1300 | rb 256 |
1354 | ;--------------------------------------------------------------------- |
1301 | ;--------------------------------------------------------------------- |
1355 | filename_area2: |
1302 | filename_area2: |
1356 | rb 256 |
1303 | rb 256 |
1357 | ;--------------------------------------------------------------------- |
1304 | ;--------------------------------------------------------------------- |
1358 | rb 4096 |
1305 | rb 4096 |
1359 | stacktop: |
1306 | stacktop: |
1360 | ;--------------------------------------------------------------------- |
1307 | ;--------------------------------------------------------------------- |
1361 | file_load_area: ; old 0x10000 |
1308 | file_load_area: ; old 0x10000 |
1362 | rb 32*1024 |
1309 | rb 32*1024 |
1363 | ;--------------------------------------------------------------------- |
1310 | ;--------------------------------------------------------------------- |
1364 | not_packed_area: ; old 0x18000 |
1311 | not_packed_area: ; old 0x18000 |
1365 | rb 32*1024 |
1312 | rb 32*1024 |
1366 | ;--------------------------------------------------------------------- |
1313 | ;--------------------------------------------------------------------- |
1367 | unpack_area: ; old 0x20000 |
1314 | unpack_area: ; old 0x20000 |
1368 | rb 32*1024 |
1315 | rb 32*1024 |
1369 | ;--------------------------------------------------------------------- |
1316 | ;--------------------------------------------------------------------- |
1370 | i_end:35+18*12,14>15,load_w>50,275>110,555>232,15>10,534>214,15>10,534> |
1317 | i_end:35+18*12,14>15,load_w>50,275>110,555>232,15>10,534>214,15>10,534> |
1371 | > |
1318 | > |
1372 | >>> |
1319 | >272,201>8,0+1*256>200,10>170,30>266,60>>> |