Rev 50 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 50 | Rev 51 | ||
---|---|---|---|
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ; ; |
2 | ; ; |
3 | ; MENUBAR for MenuetOS - Compile with fasm ; |
3 | ; MENUBAR for MenuetOS - Compile with fasm ; |
4 | ; ; |
4 | ; ; |
5 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
5 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | 6 | ||
7 | use32 |
7 | use32 |
8 | org 0x0 |
8 | org 0x0 |
9 | db 'MENUET01' ; 8 byte id |
9 | db 'MENUET01' ; 8 byte id |
10 | dd 0x01 ; required OS version |
10 | dd 0x01 ; required OS version |
11 | dd START ; program start |
11 | dd START ; program start |
12 | dd I_END ; program image size |
12 | dd I_END ; program image size |
13 | dd 0xB000 ; reguired amount of memory - 64 Kb |
13 | dd 0xB000 ; reguired amount of memory - 64 Kb |
14 | dd 0xA000 ; esp |
14 | dd 0xA000 ; esp |
15 | dd 0x0,0x0 ; param, icon |
15 | dd 0x0,0x0 ; param, icon |
16 | 16 | ||
17 | include 'lang.inc' |
17 | include 'lang.inc' |
18 | include 'macros.inc' |
18 | include 'macros.inc' |
19 | 19 | ||
20 | width dd 305 |
20 | width dd 305 |
21 | buttons dd 1 ; 0 no frames ; 1 frames |
21 | buttons dd 1 ; 0 no frames ; 1 frames |
22 | soften_up dd 1 ; 0 no ; 1 yes |
22 | soften_up dd 1 ; 0 no ; 1 yes |
23 | soften_down dd 0 ; 0 no ; 1 yes |
23 | soften_down dd 0 ; 0 no ; 1 yes |
24 | minimize_left dd 1 |
24 | minimize_left dd 1 |
25 | minimize_right dd 1 |
25 | minimize_right dd 1 |
26 | icons_position dd 95 |
26 | icons_position dd 95 |
27 | menu_enable dd 1 |
27 | menu_enable dd 1 |
28 | setup_enable dd 0 |
28 | setup_enable dd 0 |
29 | graph_text dd 1 |
29 | graph_text dd 1 |
30 | soften_middle dd 1 ; 0 no ; 1 yes |
30 | soften_middle dd 1 ; 0 no ; 1 yes |
31 | icons dd 1 ; 0 defaults ; 1 activate |
31 | icons dd 1 ; 0 defaults ; 1 activate |
32 | 32 | ||
33 | dat db 'PANEL DAT' |
33 | dat db 'PANEL DAT' |
34 | 34 | ||
35 | PANEL_HEIGHT = 18 |
35 | PANEL_HEIGHT = 18 |
36 | 36 | ||
37 | ;mainalive db 1 |
37 | ;mainalive db 1 |
38 | 38 | ||
39 | ;correct_display: |
39 | ;correct_display: |
40 | ; mov eax,15 |
40 | ; mov eax,15 |
41 | ; mov ebx,3 |
41 | ; mov ebx,3 |
42 | ; int 0x40 |
42 | ; int 0x40 |
43 | ; mcall 5, 300 |
43 | ; mcall 5, 300 |
44 | ; jmp correct_display |
44 | ; jmp correct_display |
45 | 45 | ||
46 | chlangproc: |
46 | chlangproc: |
47 | ; mcall 18, 7 |
47 | ; mcall 18, 7 |
48 | ; mov [my_process],eax |
48 | ; mov [my_process],eax |
49 | begin_2: |
49 | begin_2: |
50 | mcall 40,0b ; 0 |
50 | mcall 40,0b ; 0 |
51 | begin: |
51 | begin: |
52 | .begin: |
52 | .begin: |
53 | mcall 5, eax |
53 | mcall 5, eax |
54 | begin_3: |
54 | begin_3: |
55 | mcall 18, 7 |
55 | mcall 18, 7 |
56 | mov [active_process],eax |
56 | mov [active_process],eax |
57 | ; cmp [mainalive], 0 |
57 | ; cmp [mainalive], 0 |
58 | ; je .exit |
58 | ; je .exit |
59 | 59 | ||
60 | mcall 66, 3 |
60 | mcall 66, 3 |
61 | mov ah,al |
61 | mov ah,al |
62 | and al,100000b |
62 | and al,100000b |
63 | cmp al,100000b |
63 | cmp al,100000b |
64 | je change_start_end |
64 | je change_start_end |
65 | mov al,ah |
65 | mov al,ah |
66 | and al,10000b |
66 | and al,10000b |
67 | cmp al,10000b |
67 | cmp al,10000b |
68 | je change_start_end |
68 | je change_start_end |
69 | mov al,ah |
69 | mov al,ah |
70 | and al,1000b |
70 | and al,1000b |
71 | cmp al,1000b |
71 | cmp al,1000b |
72 | je change_key_lang_1 |
72 | je change_key_lang_1 |
73 | mov al,ah |
73 | mov al,ah |
74 | and al,100b |
74 | and al,100b |
75 | cmp al,100b |
75 | cmp al,100b |
76 | je change_key_lang_1 |
76 | je change_key_lang_1 |
77 | mov al,ah |
77 | mov al,ah |
78 | and al,1111b |
78 | and al,1111b |
79 | cmp al,11b |
79 | cmp al,11b |
80 | jne begin |
80 | jne begin |
81 | mcall 19, file_sys, syslang |
81 | mcall 19, file_sys, syslang |
82 | call syslang_music |
82 | call syslang_music |
83 | ; mcall 5, 25 |
83 | ; mcall 5, 25 |
84 | begin_1: |
84 | begin_1: |
85 | mov ecx,[active_process] |
85 | mov ecx,[active_process] |
86 | mcall 18, 3 |
86 | mcall 18, 3 |
87 | mcall 5, 25 |
87 | mcall 5, 25 |
88 | jmp begin |
88 | jmp begin |
89 | change_key_lang_1: |
89 | change_key_lang_1: |
90 | mov al,ah |
90 | mov al,ah |
91 | and al,11b |
91 | and al,11b |
92 | cmp al,01b |
92 | cmp al,01b |
93 | je change_key_lang |
93 | je change_key_lang |
94 | cmp al,10b |
94 | cmp al,10b |
95 | jne begin |
95 | jne begin |
96 | change_key_lang: |
96 | change_key_lang: |
97 | mcall 19, file_sys, chlang |
97 | mcall 19, file_sys, chlang |
98 | call chlang_music |
98 | call chlang_music |
99 | ; mcall 5, 25 |
99 | ; mcall 5, 25 |
100 | jmp begin_1 |
100 | jmp begin_1 |
101 | change_start_end: |
101 | change_start_end: |
102 | mov al,ah |
102 | mov al,ah |
103 | and al,1100b |
103 | and al,1100b |
104 | cmp al,1000b |
104 | cmp al,1000b |
105 | je start_end |
105 | je start_end |
106 | cmp al,100b |
106 | cmp al,100b |
107 | jne start_menu |
107 | jne start_menu |
108 | start_end: |
108 | start_end: |
109 | ; mov ecx,[my_process] |
109 | ; mov ecx,[my_process] |
110 | ; mcall 18, 3 |
110 | ; mcall 18, 3 |
111 | mcall 18,12 |
111 | mcall 18,12 |
112 | cmp al,1 |
112 | cmp al,1 |
113 | je scan_codes |
113 | je scan_codes |
114 | cmp ah,255 |
114 | cmp ah,255 |
115 | jne begin |
115 | jne begin |
116 | start_end_application: |
116 | start_end_application: |
117 | mcall 19,file_end,0 |
117 | mcall 19,file_end,0 |
118 | mcall 5 ,50 |
118 | mcall 5 ,50 |
119 | jmp begin |
119 | jmp begin |
120 | scan_codes: |
120 | scan_codes: |
121 | cmp ah,88 |
121 | cmp ah,88 |
122 | je start_end_application |
122 | je start_end_application |
123 | jmp begin |
123 | jmp begin |
124 | start_menu: |
124 | start_menu: |
125 | mcall 18,12 |
125 | mcall 18,12 |
126 | mov [button_presssed_alt],eax |
126 | mov [button_presssed_alt],eax |
- | 127 | mov [draw_window_1],1 |
|
127 | ; mov ecx,eax |
128 | ; mov ecx,eax |
128 | ; mcall 47,0x40100, ,10 shl 16+5,0 |
129 | ; mcall 47,0x40100, ,10 shl 16+5,0 |
129 | ; mov eax,ecx |
130 | ; mov eax,ecx |
130 | cmp al,1 |
131 | cmp al,1 |
131 | je scan_codes2 |
132 | je scan_codes2 |
132 | cmp ah,72 ;232 |
133 | cmp ah,72 ;232 |
133 | je start_menu_application |
134 | je start_menu_application |
134 | cmp ah,73 ;233 |
135 | cmp ah,73 ;233 |
135 | je start_menu_application |
136 | je start_menu_application |
136 | cmp ah,0x35 ;b6 ;53 |
137 | cmp ah,0x35 ;b6 ;53 |
137 | je kill_active_application |
138 | je kill_active_application |
138 | cmp ah,0x9 |
139 | cmp ah,0x9 |
139 | jne begin |
140 | jne begin |
140 | jmp begin |
141 | jmp begin |
141 | 142 | ||
142 | kill_active_application: |
143 | kill_active_application: |
143 | mcall 18, 7 |
144 | mcall 18, 7 |
144 | mov ecx,eax |
145 | mov ecx,eax |
145 | ; mcall 9, area9 |
146 | ; mcall 9, area9 |
146 | ; mov eax,area9 |
147 | ; mov eax,area9 |
147 | ; mov ecx,[eax+4] |
148 | ; mov ecx,[eax+4] |
148 | mcall 18, 2 |
149 | mcall 18, 2 |
149 | jmp begin |
150 | jmp begin |
150 | start_menu_application: |
151 | start_menu_application: |
151 | mcall 19,filename,0 |
152 | mcall 19,filename,0 |
152 | call menu_music |
153 | call menu_music |
153 | mcall 5,50 |
154 | mcall 5,50 |
154 | jmp begin |
155 | jmp begin |
155 | scan_codes2: |
156 | scan_codes2: |
156 | cmp ah,91 |
157 | cmp ah,91 |
157 | je start_menu_application |
158 | je start_menu_application |
158 | cmp ah,92 |
159 | cmp ah,92 |
159 | je start_menu_application |
160 | je start_menu_application |
160 | cmp ah,83 ;62 |
161 | cmp ah,83 ;62 |
161 | je kill_active_application |
162 | je kill_active_application |
- | 163 | cmp ah,71 ;179 |
|
- | 164 | jne no_test_179 |
|
- | 165 | cmp [page_list],15 |
|
- | 166 | je @f |
|
- | 167 | inc [page_list] |
|
- | 168 | mov [draw_window_1],1 |
|
- | 169 | @@: |
|
- | 170 | jmp begin |
|
- | 171 | ||
- | 172 | no_test_179: |
|
- | 173 | cmp ah,72 ;180 |
|
- | 174 | jne no_test_180 |
|
- | 175 | cmp [page_list],0 |
|
- | 176 | je @f |
|
- | 177 | dec [page_list] |
|
- | 178 | mov [draw_window_1],1 |
|
- | 179 | @@: |
|
- | 180 | jmp begin |
|
- | 181 | ||
- | 182 | no_test_180: |
|
- | 183 | ||
162 | jmp begin |
184 | jmp begin |
163 | 185 | ||
164 | button_presssed_alt dd 0 |
186 | button_presssed_alt dd 0 |
165 | 187 | ||
166 | active_process dd 0 |
188 | active_process dd 0 |
167 | my_process dd 0 |
189 | my_process dd 0 |
168 | 190 | ||
169 | calendar_music: |
191 | calendar_music: |
170 | mcall 55, eax, , , calendarmusic |
192 | mcall 55, eax, , , calendarmusic |
171 | ret |
193 | ret |
172 | setup_music: |
194 | setup_music: |
173 | mcall 55,eax, , ,setupmusic |
195 | mcall 55,eax, , ,setupmusic |
174 | ret |
196 | ret |
175 | sysmeter_music: |
197 | sysmeter_music: |
176 | mcall 55,eax, , ,sysmetermusic |
198 | mcall 55,eax, , ,sysmetermusic |
177 | ret |
199 | ret |
178 | button_music: |
200 | button_music: |
179 | mcall 55,eax, , ,buttonmusic |
201 | mcall 55,eax, , ,buttonmusic |
180 | ret |
202 | ret |
181 | syslang_music: |
203 | syslang_music: |
182 | mcall 55, eax, , , syslangmusic |
204 | mcall 55, eax, , , syslangmusic |
183 | ret |
205 | ret |
184 | chlang_music: |
206 | chlang_music: |
185 | mcall 55, eax, , , chlangmusic |
207 | mcall 55, eax, , , chlangmusic |
186 | ret |
208 | ret |
187 | menu_music: |
209 | menu_music: |
188 | mcall 55,eax, , ,menumusic |
210 | mcall 55,eax, , ,menumusic |
189 | ret |
211 | ret |
190 | 212 | ||
191 | chlangmusic: db 0x82,0x60,0x83,0x65,0x82,0x60,0 |
213 | chlangmusic: db 0x82,0x60,0x83,0x65,0x82,0x60,0 |
192 | 214 | ||
193 | syslangmusic: db 0x82,0x65,0x83,0x70,0x82,0x65,0 |
215 | syslangmusic: db 0x82,0x65,0x83,0x70,0x82,0x65,0 |
194 | 216 | ||
195 | menumusic: db 0x82,0x50,0x84,0x48,0x82,0x50,0x84,0x53,0x82,0x51,0 |
217 | menumusic: db 0x82,0x50,0x84,0x48,0x82,0x50,0x84,0x53,0x82,0x51,0 |
196 | 218 | ||
197 | activatemusic: db 0x83,0x30,0x85,0x60,0 |
219 | activatemusic: db 0x83,0x30,0x85,0x60,0 |
198 | 220 | ||
199 | buttonmusic: db 0x85,0x25,0x85,0x40,0 |
221 | buttonmusic: db 0x85,0x25,0x85,0x40,0 |
200 | 222 | ||
201 | sysmetermusic: db 0x85,0x35,0x85,0x45,0 |
223 | sysmetermusic: db 0x85,0x35,0x85,0x45,0 |
202 | 224 | ||
203 | setupmusic: db 0x85,0x40,0x85,0x50,0 |
225 | setupmusic: db 0x85,0x40,0x85,0x50,0 |
204 | 226 | ||
205 | calendarmusic: db 0x85,0x37,0x85,0x48,0 |
227 | calendarmusic: db 0x85,0x37,0x85,0x48,0 |
206 | 228 | ||
207 | ; .exit: mcall -1 |
229 | ; .exit: mcall -1 |
208 | 230 | ||
209 | 231 | ||
210 | START: |
232 | START: |
211 | mov eax, 6 |
233 | mov eax, 6 |
212 | mov ebx, dat |
234 | mov ebx, dat |
213 | mov ecx, 0 |
235 | mov ecx, 0 |
214 | mov edx, -1 |
236 | mov edx, -1 |
215 | mov esi, I_END |
237 | mov esi, I_END |
216 | int 0x40 |
238 | int 0x40 |
217 | 239 | ||
218 | mov eax,40 |
240 | mov eax,40 |
219 | mov ebx,0101b |
241 | mov ebx,0101b |
220 | int 0x40 |
242 | int 0x40 |
221 | 243 | ||
222 | mov edi,width |
244 | mov edi,width |
223 | mov esi,I_END |
245 | mov esi,I_END |
224 | mov eax,0 |
246 | mov eax,0 |
225 | new_number: |
247 | new_number: |
226 | cmp [esi],byte ';' |
248 | cmp [esi],byte ';' |
227 | je number_ready |
249 | je number_ready |
228 | imul eax,10 |
250 | imul eax,10 |
229 | movzx ebx,byte [esi] |
251 | movzx ebx,byte [esi] |
230 | sub ebx,'0' |
252 | sub ebx,'0' |
231 | add eax,ebx |
253 | add eax,ebx |
232 | inc esi |
254 | inc esi |
233 | jmp new_number |
255 | jmp new_number |
234 | number_ready: |
256 | number_ready: |
235 | mov [edi],eax |
257 | mov [edi],eax |
236 | mov eax,0 |
258 | mov eax,0 |
237 | add edi,4 |
259 | add edi,4 |
238 | inc esi |
260 | inc esi |
239 | cmp [esi],byte 'x' |
261 | cmp [esi],byte 'x' |
240 | jne new_number |
262 | jne new_number |
- | 263 | ||
- | 264 | mcall 14 |
|
- | 265 | mov [screen_size],eax |
|
241 | 266 | ||
242 | mcall 48,5 |
267 | mcall 48,5 |
243 | mov ecx,eax |
268 | mov ecx,eax |
244 | lea edx,[ebx-PANEL_HEIGHT-1] |
269 | lea edx,[ebx-PANEL_HEIGHT-1] |
245 | mcall 48,6 |
270 | mcall 48,6 |
246 | 271 | ||
247 | call set_variables |
272 | call set_variables |
248 | 273 | ||
249 | mcall 51, 1, chlangproc, 0xB000 |
274 | mcall 51, 1, chlangproc, 0xB000 |
250 | ; mcall 5, 5 |
275 | ; mcall 5, 5 |
251 | ; mcall 51, 1, correct_display, 0xA800 |
276 | ; mcall 51, 1, correct_display, 0xA800 |
252 | 277 | ||
253 | start_after_minimize: |
278 | start_after_minimize: |
254 | 279 | ||
255 | call draw_window |
280 | call draw_window |
256 | call draw_info |
281 | call draw_info |
257 | call draw_running_applications |
282 | call draw_running_applications |
258 | 283 | ||
259 | mov eax, 23 |
284 | mov eax, 23 |
260 | mov ebx, 30 |
285 | mov ebx, 30 |
261 | int 0x40 |
286 | int 0x40 |
262 | 287 | ||
263 | still: |
288 | still: |
264 | ; mcall 13,<390,70>,<3,11>,0xffffff |
289 | ; mcall 13,<390,70>,<3,11>,0xffffff |
265 | ; mov ecx,[button_presssed_alt] |
290 | ; mov ecx,[button_presssed_alt] |
266 | ; mcall 47,0x80100,ecx ,400 shl 16+5,0 |
291 | ; mcall 47,0x80100,ecx ,400 shl 16+5,0 |
267 | 292 | ||
268 | call draw_info |
293 | call draw_info |
269 | call draw_running_applications |
294 | call draw_running_applications |
270 | 295 | ||
271 | mov eax, 23 |
296 | mov eax, 23 |
272 | mov ebx, 20 |
297 | mov ebx, 20 |
273 | int 0x40 |
298 | int 0x40 |
274 | 299 | ||
275 | cmp eax,1 ; redraw ? |
300 | cmp eax,1 ; redraw ? |
276 | jz red |
301 | jz red |
277 | cmp eax,3 ; button ? |
302 | cmp eax,3 ; button ? |
278 | jz button |
303 | jz button |
279 | 304 | ||
280 | jmp still |
305 | jmp still |
281 | 306 | ||
282 | red: ; redraw window |
307 | red: ; redraw window |
- | 308 | ||
- | 309 | mcall 14 |
|
- | 310 | movzx ecx,ax |
|
- | 311 | mov edx,eax |
|
- | 312 | shr edx,16 |
|
- | 313 | cmp [screen_size.height],ax |
|
- | 314 | jne @f |
|
- | 315 | rol eax,16 |
|
- | 316 | cmp [screen_size.width],ax |
|
- | 317 | je .lp1 |
|
- | 318 | rol eax,16 |
|
- | 319 | @@: mov [screen_size],eax |
|
- | 320 | sub ecx,PANEL_HEIGHT |
|
- | 321 | mcall 67,0,,,PANEL_HEIGHT |
|
- | 322 | ||
- | 323 | .lp1: |
|
283 | call draw_window |
324 | call draw_window |
284 | call draw_info |
325 | call draw_info |
285 | jmp still |
326 | jmp still |
286 | 327 | ||
287 | button: ; button |
328 | button: ; button |
288 | mov eax,17 |
329 | mov eax,17 |
289 | int 0x40 |
330 | int 0x40 |
290 | 331 | ||
291 | cmp ah,50 |
332 | cmp ah,50 |
292 | jb no_activate |
333 | jb no_activate |
293 | cmp ah,70 |
334 | cmp ah,70 |
294 | jg no_activate |
335 | jg no_activate |
295 | 336 | ||
296 | movzx ecx,byte ah |
337 | movzx ecx,byte ah |
297 | sub ecx,52 |
338 | sub ecx,52 |
298 | shl ecx,2 |
339 | shl ecx,2 |
299 | 340 | ||
300 | mov eax,18 |
341 | mov eax,18 |
301 | mov ebx,3 |
342 | mov ebx,3 |
302 | mov ecx,[app_list+ecx] |
343 | mov ecx,[app_list+ecx] |
303 | int 0x40 |
344 | int 0x40 |
304 | ; cmp [music_type],0 |
345 | ; cmp [music_type],0 |
305 | ; je still |
346 | ; je still |
306 | mcall 55,eax, , ,activatemusic |
347 | mcall 55,eax, , ,activatemusic |
307 | jmp still |
348 | jmp still |
308 | no_activate: |
349 | no_activate: |
309 | 350 | ||
310 | 351 | ||
311 | cmp ah,101 ; minimize to left |
352 | cmp ah,101 ; minimize to left |
312 | je left_button |
353 | je left_button |
313 | 354 | ||
314 | cmp ah,102 ; minimize to right |
355 | cmp ah,102 ; minimize to right |
315 | je right_button |
356 | je right_button |
316 | 357 | ||
317 | cmp ah,byte 1 ; start/terminate menu |
358 | cmp ah,byte 1 ; start/terminate menu |
318 | jnz noselect |
359 | jnz noselect |
319 | call menu_handler |
360 | call menu_handler |
320 | ; cmp [music_type],0 |
361 | ; cmp [music_type],0 |
321 | ; je still |
362 | ; je still |
322 | call menu_music |
363 | call menu_music |
323 | jmp still |
364 | jmp still |
324 | noselect: |
365 | noselect: |
325 | 366 | ||
326 | cmp ah,byte 2 ; start calendar |
367 | cmp ah,byte 2 ; start calendar |
327 | jnz noid15 ;noclock |
368 | jnz noid15 ;noclock |
328 | mov eax, 19 |
369 | mov eax, 19 |
329 | mov ebx, file6 |
370 | mov ebx, file6 |
330 | xor ecx, ecx |
371 | xor ecx, ecx |
331 | int 0x40 |
372 | int 0x40 |
332 | call calendar_music |
373 | call calendar_music |
333 | jmp still |
374 | jmp still |
334 | ; noclock: |
375 | ; noclock: |
335 | 376 | ||
336 | ; cmp ah,byte 11 ; start file 1 |
377 | ; cmp ah,byte 11 ; start file 1 |
337 | ; jnz nob1 |
378 | ; jnz nob1 |
338 | ; mov eax,19 |
379 | ; mov eax,19 |
339 | ; mov ebx,file1 |
380 | ; mov ebx,file1 |
340 | ; int 0x40 |
381 | ; int 0x40 |
341 | ; jmp still |
382 | ; jmp still |
342 | ; nob1: |
383 | ; nob1: |
343 | 384 | ||
344 | ; cmp ah,byte 12 ; start file 2 |
385 | ; cmp ah,byte 12 ; start file 2 |
345 | ; jnz nob2 |
386 | ; jnz nob2 |
346 | ; mov eax,19 |
387 | ; mov eax,19 |
347 | ; mov ebx,file2 |
388 | ; mov ebx,file2 |
348 | ; int 0x40 |
389 | ; int 0x40 |
349 | ; jmp still |
390 | ; jmp still |
350 | ; nob2: |
391 | ; nob2: |
351 | 392 | ||
352 | ; cmp ah,byte 13 ; start file 3 |
393 | ; cmp ah,byte 13 ; start file 3 |
353 | ; jnz nob3 |
394 | ; jnz nob3 |
354 | ; mov eax,19 |
395 | ; mov eax,19 |
355 | ; mov ebx,file3 |
396 | ; mov ebx,file3 |
356 | ; int 0x40 |
397 | ; int 0x40 |
357 | ; jmp still |
398 | ; jmp still |
358 | ; nob3: |
399 | ; nob3: |
359 | 400 | ||
360 | ; cmp ah,14 ; start file 4 |
401 | ; cmp ah,14 ; start file 4 |
361 | ; jne noid14 |
402 | ; jne noid14 |
362 | ; mov eax,19 |
403 | ; mov eax,19 |
363 | ; mov ebx,file4 |
404 | ; mov ebx,file4 |
364 | ; mov ecx,file4_par |
405 | ; mov ecx,file4_par |
365 | ; int 0x40 |
406 | ; int 0x40 |
366 | ; jmp still |
407 | ; jmp still |
367 | ; noid14: |
408 | ; noid14: |
368 | 409 | ||
369 | ; cmp ah,15 ; start file 5 |
410 | ; cmp ah,15 ; start file 5 |
370 | ; jne noid15 |
411 | ; jne noid15 |
371 | ; mov eax,19 |
412 | ; mov eax,19 |
372 | ; mov ebx,file5 |
413 | ; mov ebx,file5 |
373 | ; int 0x40 |
414 | ; int 0x40 |
374 | ; jmp still |
415 | ; jmp still |
375 | 416 | ||
376 | noid15: |
417 | noid15: |
377 | cmp ah,16 |
418 | cmp ah,16 |
378 | jne noid16 |
419 | jne noid16 |
379 | mcall 19, file_sys, chlang |
420 | mcall 19, file_sys, chlang |
380 | call chlang_music |
421 | call chlang_music |
381 | mcall 5, 25 |
422 | mcall 5, 25 |
382 | jmp still |
423 | jmp still |
383 | 424 | ||
384 | noid16: |
425 | noid16: |
385 | cmp ah,17 |
426 | cmp ah,17 |
386 | jne noid17 |
427 | jne noid17 |
387 | mcall 19, file_sys, syslang |
428 | mcall 19, file_sys, syslang |
388 | call syslang_music |
429 | call syslang_music |
389 | mcall 5, 25 |
430 | mcall 5, 25 |
390 | jmp still |
431 | jmp still |
391 | 432 | ||
392 | noid17: |
433 | noid17: |
393 | cmp ah,18 |
434 | cmp ah,18 |
394 | jne noid18 |
435 | jne noid18 |
395 | mcall 19, sysmeter, 0 |
436 | mcall 19, sysmeter, 0 |
396 | call sysmeter_music |
437 | call sysmeter_music |
397 | jmp still |
438 | jmp still |
398 | 439 | ||
399 | noid18: |
440 | noid18: |
400 | cmp ah,19 |
441 | cmp ah,19 |
401 | jne noid19 |
442 | jne noid19 |
402 | ; inc [music_type] |
443 | ; inc [music_type] |
403 | ; and [music_type],1 |
444 | ; and [music_type],1 |
404 | mcall 18,8,2 |
445 | mcall 18,8,2 |
405 | ; mcall 18,8 |
446 | ; mcall 18,8 |
406 | ; mov [sound_flag],al |
447 | ; mov [sound_flag],al |
407 | 448 | ||
408 | ; mcall 15,4,2 |
449 | ; mcall 15,4,2 |
409 | mcall 15,3 |
450 | mcall 15,3 |
410 | jmp red |
451 | jmp red |
411 | 452 | ||
412 | noid19: |
453 | noid19: |
413 | cmp ah,20 ; start system setup |
454 | cmp ah,20 ; start system setup |
414 | jnz noid20 |
455 | jnz noid20 |
415 | mov eax, 19 |
456 | mov eax, 19 |
416 | mov ebx, file_sys |
457 | mov ebx, file_sys |
417 | xor ecx, ecx |
458 | xor ecx, ecx |
418 | int 0x40 |
459 | int 0x40 |
419 | call setup_music |
460 | call setup_music |
420 | 461 | ||
421 | noid20: |
462 | noid20: |
- | 463 | cmp ah,21 |
|
- | 464 | jnz noid21 |
|
- | 465 | cmp [page_list],15 |
|
- | 466 | je @f |
|
- | 467 | inc [page_list] |
|
- | 468 | jmp red |
|
- | 469 | @@: |
|
- | 470 | jmp still |
|
- | 471 | ||
- | 472 | noid21: |
|
- | 473 | cmp ah,22 |
|
- | 474 | jnz noid22 |
|
- | 475 | cmp [page_list],0 |
|
- | 476 | je @f |
|
- | 477 | dec [page_list] |
|
- | 478 | jmp red |
|
- | 479 | @@: |
|
- | 480 | jmp still |
|
- | 481 | ||
- | 482 | noid22: |
|
422 | 483 | ||
423 | jmp still |
484 | jmp still |
424 | 485 | ||
425 | 486 | ||
426 | 487 | ||
427 | draw_running_applications: |
488 | draw_running_applications: |
428 | 489 | ||
429 | pusha |
490 | pusha |
430 | 491 | ||
431 | cmp [icons],1 |
492 | cmp [icons],1 |
432 | jne dr_ret |
493 | jne dr_ret |
433 | 494 | ||
434 | call calculate_applications |
495 | call calculate_applications |
435 | 496 | ||
436 | cmp edi,[running_applications] |
497 | cmp edi,[running_applications] |
437 | jne noret |
498 | jne noret |
438 | popa |
499 | popa |
439 | ret |
500 | ret |
440 | noret: |
501 | noret: |
441 | 502 | ||
442 | ; cmp edi,[running_applications] |
503 | ; cmp edi,[running_applications] |
443 | ; jge no_application_decrease |
504 | ; jge no_application_decrease |
444 | call draw_window |
505 | call draw_window |
445 | ; no_application_decrease: |
506 | ; no_application_decrease: |
446 | 507 | ||
447 | mov [running_applications],edi |
508 | mov [running_applications],edi |
448 | 509 | ||
449 | mov edi,0 |
510 | mov edi,0 |
450 | mov ecx,2 |
511 | mov ecx,2 |
451 | mov [contrast],0 |
512 | mov [contrast],0 |
- | 513 | mov eax,[max_applications] |
|
- | 514 | mov ebx,[page_list] |
|
- | 515 | xor edx,edx |
|
- | 516 | mul ebx |
|
- | 517 | cmp eax,0 |
|
- | 518 | je @f |
|
- | 519 | inc eax |
|
- | 520 | @@: |
|
- | 521 | mov [draw_start_position],eax |
|
- | 522 | ||
452 | 523 | ||
453 | newpr: |
524 | newpr: |
454 | 525 | ||
455 | mov eax,9 |
526 | mov eax,9 |
456 | mov ebx,0x8000 |
527 | mov ebx,0x8000 |
457 | int 0x40 |
528 | int 0x40 |
458 | 529 | ||
459 | push eax |
530 | push eax |
460 | push ecx |
531 | push ecx |
461 | 532 | ||
462 | cmp eax,ecx |
533 | cmp eax,ecx |
463 | jb norpl2 |
534 | jb norpl2 |
464 | 535 | ||
465 | cmp byte [0x8000+10], '@' |
536 | cmp byte [0x8000+10], '@' |
466 | je norpl |
537 | je norpl |
467 | cmp [0x8000+11],dword 'CON ' |
538 | cmp [0x8000+10],dword 'ICON' |
- | 539 | jne .noicon |
|
- | 540 | cmp dword[0x8000+42],51 |
|
- | 541 | jne .noicon |
|
- | 542 | cmp dword[0x8000+46],51 |
|
468 | je norpl |
543 | je norpl |
- | 544 | .noicon: |
|
469 | cmp [0x8000+11],dword 'ENU ' |
545 | cmp [0x8000+11],dword 'ENU ' |
470 | je norpl |
546 | je norpl |
471 | ; cmp [0x8000+12],dword 'NEL ' |
547 | ; cmp [0x8000+12],dword 'NEL ' |
472 | ; je norpl |
548 | ; je norpl |
473 | cmp [0x8000+10],dword ' ' |
549 | cmp [0x8000+10],dword ' ' |
474 | je norpl |
550 | je norpl |
- | 551 | dec [draw_start_position] |
|
- | 552 | cmp [draw_start_position],0 |
|
475 | 553 | jg norpl |
|
476 | mov eax,13 |
554 | mov eax,13 |
477 | mov ebx,edi |
555 | mov ebx,edi |
478 | inc ebx |
556 | inc ebx |
479 | shl ebx,16 |
557 | shl ebx,16 |
480 | imul ebx,6*10 |
558 | imul ebx,6*10 |
481 | add ebx,17 shl 16+54 |
559 | add ebx,17 shl 16+54 |
482 | mov ecx,3 shl 16+14 |
560 | mov ecx,3 shl 16+14 |
483 | xor edx,edx |
561 | xor edx,edx |
484 | sub ebx,10 shl 16 |
562 | sub ebx,10 shl 16 |
485 | int 0x40 |
563 | int 0x40 |
486 | 564 | ||
487 | sub ebx,1 shl 16 |
565 | sub ebx,1 shl 16 |
488 | mov bx,1 |
566 | mov bx,1 |
489 | mov ecx,4 shl 16+12 |
567 | mov ecx,4 shl 16+12 |
490 | int 0x40 |
568 | int 0x40 |
491 | 569 | ||
492 | sub ebx,1 shl 16 |
570 | sub ebx,1 shl 16 |
493 | mov ecx,5 shl 16+10 |
571 | mov ecx,5 shl 16+10 |
494 | int 0x40 |
572 | int 0x40 |
495 | 573 | ||
496 | add ebx,56 shl 16 |
574 | add ebx,56 shl 16 |
497 | mov ecx,4 shl 16+12 |
575 | mov ecx,4 shl 16+12 |
498 | int 0x40 |
576 | int 0x40 |
499 | 577 | ||
500 | add ebx,1 shl 16 |
578 | add ebx,1 shl 16 |
501 | mov ecx,5 shl 16+10 |
579 | mov ecx,5 shl 16+10 |
502 | int 0x40 |
580 | int 0x40 |
503 | 581 | ||
504 | inc [contrast] |
582 | inc [contrast] |
505 | and [contrast],1 |
583 | and [contrast],1 |
506 | cmp [contrast],1 |
584 | cmp [contrast],1 |
507 | je contrast1 |
585 | je contrast1 |
508 | mov edx,0x88ff |
586 | mov edx,0x88ff |
509 | jmp contrast2 |
587 | jmp contrast2 |
510 | contrast1: |
588 | contrast1: |
511 | mov edx,0x55ff |
589 | mov edx,0x55ff |
512 | contrast2: |
590 | contrast2: |
513 | sub ebx,55 shl 16 |
591 | sub ebx,55 shl 16 |
514 | mov bx,54 |
592 | mov bx,54 |
515 | mov ecx,4 shl 16+12 |
593 | mov ecx,4 shl 16+12 |
516 | ; mov edx,0x66ff |
594 | ; mov edx,0x66ff |
517 | int 0x40 |
595 | int 0x40 |
518 | 596 | ||
519 | sub ebx,1 shl 16 |
597 | sub ebx,1 shl 16 |
520 | mov bx,1 |
598 | mov bx,1 |
521 | mov ecx,5 shl 16+10 |
599 | mov ecx,5 shl 16+10 |
522 | int 0x40 |
600 | int 0x40 |
523 | 601 | ||
524 | add ebx,55 shl 16 |
602 | add ebx,55 shl 16 |
525 | int 0x40 |
603 | int 0x40 |
526 | 604 | ||
527 | mov eax,4 |
605 | mov eax,4 |
528 | mov ebx,edi |
606 | mov ebx,edi |
529 | inc ebx |
607 | inc ebx |
530 | shl ebx,16 |
608 | shl ebx,16 |
531 | imul ebx,6*10 ;13 |
609 | imul ebx,6*10 ;13 |
532 | add ebx,20*65536+7 |
610 | add ebx,20*65536+7 |
533 | mov ecx,0xffffff ;[wcolor] |
611 | mov ecx,0xffffff ;[wcolor] |
534 | ; add ecx,0x303030 |
612 | ; add ecx,0x303030 |
535 | mov edx,0x8000+10 |
613 | mov edx,0x8000+10 |
536 | mov esi,11 |
614 | mov esi,11 |
537 | sub ebx,10 shl 16 |
615 | sub ebx,10 shl 16 |
538 | int 0x40 |
616 | int 0x40 |
539 | 617 | ||
540 | norpl2: |
618 | norpl2: |
541 | 619 | ||
542 | inc edi |
620 | inc edi |
543 | 621 | ||
544 | norpl: |
622 | norpl: |
545 | 623 | ||
546 | pop ecx |
624 | pop ecx |
547 | pop eax |
625 | pop eax |
548 | 626 | ||
549 | inc ecx |
627 | inc ecx |
550 | 628 | ||
551 | cmp edi,[max_applications] |
629 | cmp edi,[max_applications] |
552 | jb newpr |
630 | jb newpr |
553 | 631 | ||
554 | nompr: |
632 | nompr: |
555 | 633 | ||
556 | dr_ret: |
634 | dr_ret: |
557 | 635 | ||
558 | popa |
636 | popa |
559 | 637 | ||
560 | ret |
638 | ret |
561 | 639 | ||
562 | 640 | ||
563 | calculate_applications: |
641 | calculate_applications: |
- | 642 | ||
- | 643 | mov eax,[max_applications] |
|
- | 644 | mov ebx,[page_list] |
|
- | 645 | xor edx,edx |
|
- | 646 | mul ebx |
|
- | 647 | cmp eax,0 |
|
- | 648 | je @f |
|
- | 649 | inc eax |
|
- | 650 | @@: |
|
- | 651 | mov [draw_start_position],eax |
|
564 | 652 | ||
565 | mov edi,app_list |
653 | mov edi,app_list |
566 | mov ecx,20 |
654 | mov ecx,20 |
567 | mov eax,0xff |
655 | mov eax,0xff |
568 | cld |
656 | cld |
569 | rep stosd |
657 | rep stosd |
570 | 658 | ||
571 | mov edi,0 |
659 | mov edi,0 |
572 | mov ecx,2 |
660 | mov ecx,2 |
573 | 661 | ||
574 | cnewpr: |
662 | cnewpr: |
575 | 663 | ||
576 | mov eax,9 |
664 | mov eax,9 |
577 | mov ebx,0x8000 |
665 | mov ebx,0x8000 |
578 | int 0x40 |
666 | int 0x40 |
579 | 667 | ||
580 | cmp byte [0x8000+10], '@' |
668 | cmp byte [0x8000+10], '@' |
581 | je cnorpl |
669 | je cnorpl |
- | 670 | cmp [0x8000+10],dword 'ICON' |
|
- | 671 | jne .noicon |
|
- | 672 | cmp dword[0x8000+42],51 |
|
- | 673 | jne .noicon |
|
- | 674 | cmp dword[0x8000+46],51 |
|
- | 675 | je cnorpl |
|
- | 676 | .noicon: |
|
582 | cmp [0x8000+11],dword 'CON ' |
677 | cmp [0x8000+11],dword 'CON ' |
583 | je cnorpl |
678 | je cnorpl |
584 | cmp [0x8000+11],dword 'ENU ' |
679 | cmp [0x8000+11],dword 'ENU ' |
585 | je cnorpl |
680 | je cnorpl |
586 | ; cmp [0x8000+12],dword 'NEL ' |
681 | ; cmp [0x8000+12],dword 'NEL ' |
587 | ; je cnorpl |
682 | ; je cnorpl |
588 | cmp [0x8000+10],dword ' ' |
683 | cmp [0x8000+10],dword ' ' |
589 | je cnorpl |
684 | je cnorpl |
- | 685 | dec [draw_start_position] |
|
- | 686 | cmp [draw_start_position],0 |
|
- | 687 | jg cnorpl |
|
590 | 688 | ||
591 | mov [app_list+edi*4],ecx |
689 | mov [app_list+edi*4],ecx |
592 | 690 | ||
593 | inc edi |
691 | inc edi |
594 | 692 | ||
595 | cnorpl: |
693 | cnorpl: |
596 | inc ecx |
694 | inc ecx |
597 | 695 | ||
598 | cmp eax,ecx |
696 | cmp eax,ecx |
599 | jge cnewpr |
697 | jge cnewpr |
600 | 698 | ||
601 | ret |
699 | ret |
602 | 700 | ||
603 | 701 | ||
604 | draw_application_buttons: |
702 | draw_application_buttons: |
605 | 703 | ||
606 | pusha |
704 | pusha |
607 | 705 | ||
608 | cmp [icons],1 |
706 | cmp [icons],1 |
609 | jne da_ret |
707 | jne da_ret |
610 | 708 | ||
611 | mov eax,14 |
709 | mov eax,14 |
612 | int 0x40 |
710 | int 0x40 |
613 | 711 | ||
614 | shr eax,16 |
712 | shr eax,16 |
615 | 713 | ||
616 | cmp eax,639 |
714 | cmp eax,639 |
617 | jne now1 |
715 | jne now1 |
618 | mov [max_applications],7 ;6 |
716 | mov [max_applications],7 ;6 |
619 | now1: |
717 | now1: |
620 | cmp eax,799 |
718 | cmp eax,799 |
621 | jne now2 |
719 | jne now2 |
622 | mov [max_applications],10 ;8 |
720 | mov [max_applications],9 ;10 ;8 |
623 | now2: |
721 | now2: |
624 | cmp eax,1023 |
722 | cmp eax,1023 |
625 | jne now3 |
723 | jne now3 |
626 | mov [max_applications],13 ;8 |
724 | mov [max_applications],12 ;13 ;8 |
627 | now3: |
725 | now3: |
628 | cmp eax,1279 |
726 | cmp eax,1279 |
629 | jne now4 |
727 | jne now4 |
630 | mov [max_applications],18 ;8 |
728 | mov [max_applications],17 ;18 ;8 |
631 | now4: |
729 | now4: |
632 | mov edi,1 |
730 | mov edi,1 |
633 | 731 | ||
634 | nb: |
732 | nb: |
635 | 733 | ||
636 | mov eax,8 |
734 | mov eax,8 |
637 | mov ebx,edi |
735 | mov ebx,edi |
638 | shl ebx,16 |
736 | shl ebx,16 |
639 | imul ebx,6*10 ;13 |
737 | imul ebx,6*10 ;13 |
640 | add ebx,15*65536+10*6-1 ;13 |
738 | add ebx,15*65536+10*6-1 ;13 |
641 | mov ecx,1*65536+17 |
739 | mov ecx,1*65536+17 |
642 | mov edx,edi |
740 | mov edx,edi |
643 | add edx,51 |
741 | add edx,51 |
644 | cmp [buttons],1 |
742 | cmp [buttons],1 |
645 | je bufr |
743 | je bufr |
646 | or edx,0x60000000 |
744 | or edx,0x60000000 |
647 | bufr: |
745 | bufr: |
648 | mov esi,[wcolor] |
746 | mov esi,[wcolor] |
649 | sub ebx,11 shl 16 |
747 | sub ebx,11 shl 16 |
650 | int 0x40 |
748 | int 0x40 |
651 | 749 | ||
652 | inc edi |
750 | inc edi |
653 | cmp edi,[max_applications] |
751 | cmp edi,[max_applications] |
654 | jbe nb |
752 | jbe nb |
655 | 753 | ||
656 | da_ret: |
754 | da_ret: |
657 | 755 | ||
658 | popa |
756 | popa |
659 | 757 | ||
660 | ret |
758 | ret |
661 | 759 | ||
662 | 760 | ||
663 | menu_handler: |
761 | menu_handler: |
664 | mov eax, 19 |
762 | mov eax, 19 |
665 | mov ebx, filename |
763 | mov ebx, filename |
666 | xor ecx, ecx |
764 | xor ecx, ecx |
667 | int 0x40 |
765 | int 0x40 |
668 | ret |
766 | ret |
669 | 767 | ||
670 | draw_small_right: |
768 | draw_small_right: |
671 | 769 | ||
672 | pusha |
770 | pusha |
673 | 771 | ||
674 | mov eax,12 |
772 | mov eax,12 |
675 | mov ebx,1 |
773 | mov ebx,1 |
676 | int 0x40 |
774 | int 0x40 |
677 | 775 | ||
678 | mov eax,0 |
776 | mov eax,0 |
679 | mov edx,[wcolor] |
777 | mov edx,[wcolor] |
680 | mov esi,edx |
778 | mov esi,edx |
681 | mov edi,edx |
779 | mov edi,edx |
682 | or edx, 0x01000000 |
780 | or edx, 0x01000000 |
683 | int 0x40 |
781 | int 0x40 |
684 | 782 | ||
685 | mov eax,8 |
783 | mov eax,8 |
686 | mov ebx,0*65536+9 |
784 | mov ebx,0*65536+9 |
687 | mov ecx,0*65536 |
785 | mov ecx,0*65536 |
688 | mov cx,[b_size_y] |
786 | mov cx,[b_size_y] |
689 | mov edx,1 |
787 | mov edx,1 |
690 | mov esi,[wcolor] |
788 | mov esi,[wcolor] |
691 | int 0x40 |
789 | int 0x40 |
692 | 790 | ||
693 | mov eax,4 |
791 | mov eax,4 |
694 | mov ebx,2*65536+16 |
792 | mov ebx,2*65536+16 |
695 | cmp [graph_text],1 |
793 | cmp [graph_text],1 |
696 | jne nos3 |
794 | jne nos3 |
697 | mov ebx,2*65536+7 |
795 | mov ebx,2*65536+7 |
698 | nos3: |
796 | nos3: |
699 | mov ecx,[wcolor] |
797 | mov ecx,[wcolor] |
700 | add ecx,0x303030 |
798 | add ecx,0x303030 |
701 | mov edx,hidetext |
799 | mov edx,hidetext |
702 | mov esi,1 |
800 | mov esi,1 |
703 | int 0x40 |
801 | int 0x40 |
704 | 802 | ||
705 | mov eax,12 |
803 | mov eax,12 |
706 | mov ebx,2 |
804 | mov ebx,2 |
707 | int 0x40 |
805 | int 0x40 |
708 | 806 | ||
709 | popa |
807 | popa |
710 | 808 | ||
711 | ret |
809 | ret |
712 | 810 | ||
713 | 811 | ||
714 | 812 | ||
715 | draw_small_left: |
813 | draw_small_left: |
716 | 814 | ||
717 | pusha |
815 | pusha |
718 | 816 | ||
719 | mov eax,12 |
817 | mov eax,12 |
720 | mov ebx,1 |
818 | mov ebx,1 |
721 | int 0x40 |
819 | int 0x40 |
722 | 820 | ||
723 | mov eax,0 |
821 | mov eax,0 |
724 | mov edx,[wcolor] |
822 | mov edx,[wcolor] |
725 | mov esi,edx |
823 | mov esi,edx |
726 | mov edi,edx |
824 | mov edi,edx |
727 | or edx, 0x01000000 |
825 | or edx, 0x01000000 |
728 | int 0x40 |
826 | int 0x40 |
729 | 827 | ||
730 | cmp [graph_text],1 |
828 | cmp [graph_text],1 |
731 | je nos4 |
829 | je nos4 |
732 | 830 | ||
733 | mov eax,8 |
831 | mov eax,8 |
734 | mov ebx,0*65536+9 |
832 | mov ebx,0*65536+9 |
735 | mov ecx,0*65536+18-6 |
833 | mov ecx,0*65536+18-6 |
736 | mov edx,2 |
834 | mov edx,2 |
737 | mov esi,[wcolor] |
835 | mov esi,[wcolor] |
738 | int 0x40 |
836 | int 0x40 |
739 | 837 | ||
740 | mov eax,4 |
838 | mov eax,4 |
741 | mov ebx,2*65536+4 |
839 | mov ebx,2*65536+4 |
742 | mov ecx,[wcolor] |
840 | mov ecx,[wcolor] |
743 | add ecx,0x303030 |
841 | add ecx,0x303030 |
744 | mov edx,hidetext+2 |
842 | mov edx,hidetext+2 |
745 | mov esi,1 |
843 | mov esi,1 |
746 | int 0x40 |
844 | int 0x40 |
747 | 845 | ||
748 | nos4: |
846 | nos4: |
749 | 847 | ||
750 | mov eax,8 |
848 | mov eax,8 |
751 | mov ebx,0*65536+9 |
849 | mov ebx,0*65536+9 |
752 | mov ecx,13*65536+25 |
850 | mov ecx,13*65536+25 |
753 | cmp [graph_text],1 |
851 | cmp [graph_text],1 |
754 | jne nos6 |
852 | jne nos6 |
755 | mov ecx,0*65536 |
853 | mov ecx,0*65536 |
756 | mov cx,word [b_size_y] |
854 | mov cx,word [b_size_y] |
757 | nos6: |
855 | nos6: |
758 | mov edx,1 |
856 | mov edx,1 |
759 | mov esi,[wcolor] |
857 | mov esi,[wcolor] |
760 | int 0x40 |
858 | int 0x40 |
761 | 859 | ||
762 | mov eax,4 |
860 | mov eax,4 |
763 | mov ebx,3*65536+22 |
861 | mov ebx,3*65536+22 |
764 | cmp [graph_text],1 |
862 | cmp [graph_text],1 |
765 | jne nos7 |
863 | jne nos7 |
766 | mov ebx,3*65536+7 |
864 | mov ebx,3*65536+7 |
767 | nos7: |
865 | nos7: |
768 | mov ecx,[wcolor] |
866 | mov ecx,[wcolor] |
769 | add ecx,0x303030 |
867 | add ecx,0x303030 |
770 | mov edx,hidetext+1 |
868 | mov edx,hidetext+1 |
771 | mov esi,1 |
869 | mov esi,1 |
772 | int 0x40 |
870 | int 0x40 |
773 | 871 | ||
774 | mov eax,12 |
872 | mov eax,12 |
775 | mov ebx,2 |
873 | mov ebx,2 |
776 | int 0x40 |
874 | int 0x40 |
777 | 875 | ||
778 | popa |
876 | popa |
779 | ret |
877 | ret |
780 | 878 | ||
781 | 879 | ||
782 | ;------------------------------------------------- |
880 | ;------------------------------------------------- |
783 | 881 | ||
784 | right_button: |
882 | right_button: |
785 | 883 | ||
786 | call button_music |
884 | call button_music |
787 | 885 | ||
788 | mov [small_draw],dword draw_small_right |
886 | mov [small_draw],dword draw_small_right |
789 | 887 | ||
790 | mcall 14 |
888 | mcall 14 |
791 | shr eax, 16 |
889 | shr eax, 16 |
792 | mov ebx, eax |
890 | mov ebx, eax |
793 | mov ecx, -1 |
891 | mov ecx, -1 |
794 | mov edx, 9 |
892 | mov edx, 9 |
795 | sub ebx, edx |
893 | sub ebx, edx |
796 | mov esi, -1 |
894 | mov esi, -1 |
797 | mcall 67 |
895 | mcall 67 |
798 | 896 | ||
799 | call draw_small_right |
897 | call draw_small_right |
800 | 898 | ||
801 | mov eax, 23 |
899 | mov eax, 23 |
802 | mov ebx, 30 |
900 | mov ebx, 30 |
803 | int 0x40 |
901 | int 0x40 |
804 | 902 | ||
805 | jmp small_wait |
903 | jmp small_wait |
806 | 904 | ||
807 | ;------------------------------------------------- |
905 | ;------------------------------------------------- |
808 | 906 | ||
809 | left_button: |
907 | left_button: |
810 | 908 | ||
811 | call button_music |
909 | call button_music |
812 | 910 | ||
813 | mov [small_draw],dword draw_small_left |
911 | mov [small_draw],dword draw_small_left |
814 | 912 | ||
815 | mov ebx, 0 |
913 | mov ebx, 0 |
816 | mov edx, 9 |
914 | mov edx, 9 |
817 | mov ecx, -1 |
915 | mov ecx, -1 |
818 | mov esi, -1 |
916 | mov esi, -1 |
819 | mcall 67 |
917 | mcall 67 |
820 | 918 | ||
821 | call draw_small_left |
919 | call draw_small_left |
822 | 920 | ||
823 | mov eax, 23 |
921 | mov eax, 23 |
824 | mov ebx, 30 |
922 | mov ebx, 30 |
825 | int 0x40 |
923 | int 0x40 |
826 | 924 | ||
827 | ;------------------------------------------------- |
925 | ;------------------------------------------------- |
828 | 926 | ||
829 | small_wait: |
927 | small_wait: |
830 | 928 | ||
831 | mov eax, 10 |
929 | mov eax, 10 |
832 | int 0x40 |
930 | int 0x40 |
833 | 931 | ||
834 | cmp eax,1 |
932 | cmp eax,1 |
835 | jne no_win |
933 | jne no_win |
836 | call [small_draw] |
934 | call [small_draw] |
837 | jmp small_wait |
935 | jmp small_wait |
838 | no_win: |
936 | no_win: |
839 | 937 | ||
840 | mov eax,17 |
938 | mov eax,17 |
841 | int 0x40 |
939 | int 0x40 |
842 | 940 | ||
843 | cmp ah,1 |
941 | cmp ah,1 |
844 | jne no_full |
942 | jne no_full |
845 | 943 | ||
846 | mov eax, 14 ; get screen max x & max y |
944 | mov eax, 14 ; get screen max x & max y |
847 | int 0x40 |
945 | int 0x40 |
848 | mov edx, eax |
946 | mov edx, eax |
849 | shr edx, 16 |
947 | shr edx, 16 |
850 | xor ebx, ebx |
948 | xor ebx, ebx |
851 | mov ecx, -1 |
949 | mov ecx, -1 |
852 | mov esi, -1 |
950 | mov esi, -1 |
853 | mcall 67 ; x0 y0 xs ys |
951 | mcall 67 ; x0 y0 xs ys |
854 | 952 | ||
855 | call button_music |
953 | call button_music |
856 | 954 | ||
857 | jmp still |
955 | jmp still |
858 | 956 | ||
859 | 957 | ||
860 | no_full: |
958 | no_full: |
861 | 959 | ||
862 | call menu_handler |
960 | call menu_handler |
863 | 961 | ||
864 | jmp small_wait |
962 | jmp small_wait |
865 | 963 | ||
866 | 964 | ||
867 | 965 | ||
868 | set_variables: |
966 | set_variables: |
869 | 967 | ||
870 | pusha |
968 | pusha |
871 | 969 | ||
872 | mov [b_size_y],dword 38 |
970 | mov [b_size_y],dword 38 |
873 | cmp [graph_text],1 |
971 | cmp [graph_text],1 |
874 | jne noy2 |
972 | jne noy2 |
875 | mov [b_size_y],dword 18 |
973 | mov [b_size_y],dword 18 |
876 | noy2: |
974 | noy2: |
877 | 975 | ||
878 | mov [button_frames],0x0 |
976 | mov [button_frames],0x0 |
879 | cmp [buttons],0 |
977 | cmp [buttons],0 |
880 | jne no_frames |
978 | jne no_frames |
881 | mov [button_frames],0x40000000 |
979 | mov [button_frames],0x40000000 |
882 | no_frames: |
980 | no_frames: |
883 | 981 | ||
884 | 982 | ||
885 | mov eax,48 ; 3d button look |
983 | mov eax,48 ; 3d button look |
886 | mov ebx,1 |
984 | mov ebx,1 |
887 | mov ecx,1 |
985 | mov ecx,1 |
888 | int 0x40 |
986 | int 0x40 |
889 | 987 | ||
890 | mov eax,0x40404040 ; dividers for processes |
988 | mov eax,0x40404040 ; dividers for processes |
891 | mov edi,pros |
989 | mov edi,pros |
892 | mov ecx,10 |
990 | mov ecx,10 |
893 | cld |
991 | cld |
894 | rep stosd |
992 | rep stosd |
895 | 993 | ||
896 | popa |
994 | popa |
897 | ret |
995 | ret |
898 | 996 | ||
899 | 997 | ||
900 | 998 | ||
901 | ; eax = number (1 or 2) |
999 | ; eax = number (1 or 2) |
902 | ; ebx = language id |
1000 | ; ebx = language id |
903 | draw_flag: |
1001 | draw_flag: |
904 | pusha |
1002 | pusha |
905 | 1003 | ||
906 | ; cmp [graph_text],0 |
1004 | ; cmp [graph_text],0 |
907 | ; je mini_flag |
1005 | ; je mini_flag |
908 | 1006 | ||
909 | ; eax = 2 BIG |
1007 | ; eax = 2 BIG |
910 | ; eax = 1 small |
1008 | ; eax = 1 small |
911 | 1009 | ||
912 | mov edx,ebx |
1010 | mov edx,ebx |
913 | 1011 | ||
914 | mov ebx,[maxx] |
1012 | mov ebx,[maxx] |
915 | and eax,1 |
1013 | and eax,1 |
916 | imul eax,17 ;17 |
1014 | imul eax,17 ;17 |
917 | sub ebx,eax |
1015 | sub ebx,eax |
918 | sub ebx,76 ;79 ;28 |
1016 | sub ebx,76 ;79 ;28 |
919 | 1017 | ||
920 | pushad |
1018 | pushad |
921 | ; dec ebx |
1019 | ; dec ebx |
922 | sub ebx,2 |
1020 | sub ebx,2 |
923 | shl ebx, 16 |
1021 | shl ebx, 16 |
924 | add ebx, 15 ;25 |
1022 | add ebx, 15 ;25 |
925 | mov ecx, 4*65536+13 |
1023 | mov ecx, 4*65536+13 |
926 | mov edx,0 |
1024 | mov edx,0 |
927 | mov eax,13 |
1025 | mov eax,13 |
928 | int 0x40 |
1026 | int 0x40 |
929 | add ebx,1 shl 16 |
1027 | add ebx,1 shl 16 |
930 | sub ebx,2 |
1028 | sub ebx,2 |
931 | mov ecx, 5 shl 16+11 |
1029 | mov ecx, 5 shl 16+11 |
932 | cmp [type_lang],1 |
1030 | cmp [type_lang],1 |
933 | je label_1 |
1031 | je label_1 |
934 | mov edx,0xff ;[wcolor] |
1032 | mov edx,0xff ;[wcolor] |
935 | jmp label_2 |
1033 | jmp label_2 |
936 | label_1: |
1034 | label_1: |
937 | mov edx,0x7700 |
1035 | mov edx,0x7700 |
938 | label_2: |
1036 | label_2: |
939 | mov eax, 13 |
1037 | mov eax, 13 |
940 | int 0x40 |
1038 | int 0x40 |
941 | popad |
1039 | popad |
942 | 1040 | ||
943 | shl ebx,16 |
1041 | shl ebx,16 |
944 | add ebx,7 ;24 |
1042 | add ebx,7 ;24 |
945 | 1043 | ||
946 | mov ecx,[bte] ; color |
1044 | mov ecx,[bte] ; color |
947 | 1045 | ||
948 | dec edx |
1046 | dec edx |
949 | shl edx,1 |
1047 | shl edx,1 |
950 | add edx,flag_text |
1048 | add edx,flag_text |
951 | mov esi,2 |
1049 | mov esi,2 |
952 | mov eax,4 |
1050 | mov eax,4 |
953 | int 0x40 |
1051 | int 0x40 |
954 | 1052 | ||
955 | mov ebx,[maxx] |
1053 | mov ebx,[maxx] |
956 | sub ebx,48 |
1054 | sub ebx,48 |
957 | shl ebx,16 |
1055 | shl ebx,16 |
958 | mov bx,34 |
1056 | mov bx,34 |
959 | mov ecx,3 shl 16+14 |
1057 | mov ecx,3 shl 16+14 |
960 | xor edx,edx |
1058 | xor edx,edx |
961 | mov eax,13 |
1059 | mov eax,13 |
962 | int 0x40 |
1060 | int 0x40 |
963 | add ebx,1 shl 16 |
1061 | add ebx,1 shl 16 |
964 | sub ebx,2 |
1062 | sub ebx,2 |
965 | mov ecx,4 shl 16+12 |
1063 | mov ecx,4 shl 16+12 |
966 | mov edx,0x66cc |
1064 | mov edx,0x66cc |
967 | int 0x40 |
1065 | int 0x40 |
968 | 1066 | ||
969 | popa |
1067 | popa |
970 | ret |
1068 | ret |
971 | 1069 | ||
972 | ;mini_flag: |
1070 | ;mini_flag: |
973 | ; popa |
1071 | ; popa |
974 | ; ret |
1072 | ; ret |
975 | 1073 | ||
976 | 1074 | ||
977 | 1075 | ||
978 | 1076 | ||
979 | ; *************************************************** |
1077 | ; *************************************************** |
980 | ; ********* WINDOW DEFINITIONS AND DRAW ************* |
1078 | ; ********* WINDOW DEFINITIONS AND DRAW ************* |
981 | ; *************************************************** |
1079 | ; *************************************************** |
982 | 1080 | ||
983 | 1081 | ||
984 | draw_window: |
1082 | draw_window: |
985 | 1083 | ||
986 | pusha |
1084 | pusha |
987 | 1085 | ||
988 | mov [running_applications],-1 |
1086 | mov [running_applications],-1 |
989 | mov [checks],-1 |
1087 | mov [checks],-1 |
990 | 1088 | ||
991 | mov eax, 12 ; tell os about redraw |
1089 | mov eax, 12 ; tell os about redraw |
992 | mov ebx, 1 |
1090 | mov ebx, 1 |
993 | int 0x40 |
1091 | int 0x40 |
994 | 1092 | ||
995 | mov eax, 48 |
1093 | mov eax, 48 |
996 | mov ebx, 3 |
1094 | mov ebx, 3 |
997 | mov ecx, system_colours |
1095 | mov ecx, system_colours |
998 | mov edx, 10*4 |
1096 | mov edx, 10*4 |
999 | int 0x40 |
1097 | int 0x40 |
1000 | 1098 | ||
1001 | mov eax, [system_colours+4*6] |
1099 | mov eax, [system_colours+4*6] |
1002 | mov [wcolor], eax |
1100 | mov [wcolor], eax |
1003 | 1101 | ||
1004 | mov eax,14 ; get screen max x & max y |
1102 | mov eax,14 ; get screen max x & max y |
1005 | int 0x40 |
1103 | int 0x40 |
1006 | 1104 | ||
1007 | cmp [width],0 |
1105 | cmp [width],0 |
1008 | je no_def_width |
1106 | je no_def_width |
1009 | and eax,0xffff |
1107 | and eax,0xffff |
1010 | mov ebx,[width] |
1108 | mov ebx,[width] |
1011 | shl ebx,16 |
1109 | shl ebx,16 |
1012 | add eax,ebx |
1110 | add eax,ebx |
1013 | no_def_width: |
1111 | no_def_width: |
1014 | 1112 | ||
1015 | mov ebx,eax |
1113 | mov ebx,eax |
1016 | mov [screenxy],ebx |
1114 | mov [screenxy],ebx |
1017 | shr ebx,16 |
1115 | shr ebx,16 |
1018 | sub ax,38 |
1116 | sub ax,38 |
1019 | shl eax,16 |
1117 | shl eax,16 |
1020 | mov ecx,eax |
1118 | mov ecx,eax |
1021 | add ecx,0*65536+38 |
1119 | add ecx,0*65536+38 |
1022 | cmp [graph_text],1 |
1120 | cmp [graph_text],1 |
1023 | jne no_text_1 |
1121 | jne no_text_1 |
1024 | mov cx,PANEL_HEIGHT |
1122 | mov cx,PANEL_HEIGHT |
1025 | add ecx,20*65536 |
1123 | add ecx,20*65536 |
1026 | no_text_1: |
1124 | no_text_1: |
1027 | mov eax, 0 ; DEFINE AND DRAW WINDOW |
1125 | mov eax, 0 ; DEFINE AND DRAW WINDOW |
1028 | mov edx, [wcolor] |
1126 | mov edx, [wcolor] |
1029 | or edx, 0x01000000 ; do not draw the window |
1127 | or edx, 0x01000000 ; do not draw the window |
1030 | mov esi, [wcolor] |
1128 | mov esi, [wcolor] |
1031 | or esi, 0x01000000 ; unmovable window |
1129 | or esi, 0x01000000 ; unmovable window |
1032 | mov edi, [wcolor] |
1130 | mov edi, [wcolor] |
1033 | int 0x40 |
1131 | int 0x40 |
1034 | 1132 | ||
1035 | movzx ebx,word [screenxy+2] |
1133 | movzx ebx,word [screenxy+2] |
1036 | mov ecx,0*65536+0 |
1134 | mov ecx,0*65536+0 |
1037 | mov edx,[wcolor] |
1135 | mov edx,[wcolor] |
1038 | add edx,0x161616 |
1136 | add edx,0x161616 |
1039 | newline: |
1137 | newline: |
1040 | sub edx,0x040404 |
1138 | sub edx,0x040404 |
1041 | mov eax,38 |
1139 | mov eax,38 |
1042 | cmp [soften_up],1 |
1140 | cmp [soften_up],1 |
1043 | jne no_su |
1141 | jne no_su |
- | 1142 | and edx,0x00FFFFFF |
|
1044 | int 0x40 |
1143 | int 0x40 |
1045 | no_su: |
1144 | no_su: |
1046 | 1145 | ||
1047 | pusha |
1146 | pusha |
1048 | cmp [soften_down],1 |
1147 | cmp [soften_down],1 |
1049 | jne no_sd |
1148 | jne no_sd |
1050 | sub edx,0x141414 |
1149 | sub edx,0x141414 |
1051 | mov edi,[b_size_y] |
1150 | mov edi,[b_size_y] |
1052 | shl edi,16 |
1151 | shl edi,16 |
1053 | add edi,[b_size_y] |
1152 | add edi,[b_size_y] |
1054 | add ecx,edi |
1153 | add ecx,edi |
1055 | sub ecx,3*65536+3 |
1154 | sub ecx,3*65536+3 |
- | 1155 | and edx,0x00FFFFFF |
|
1056 | int 0x40 |
1156 | int 0x40 |
1057 | no_sd: |
1157 | no_sd: |
1058 | popa |
1158 | popa |
1059 | 1159 | ||
1060 | add ecx,1*65536+1 |
1160 | add ecx,1*65536+1 |
1061 | cmp cx,5 |
1161 | cmp cx,5 |
1062 | jb newline |
1162 | jb newline |
1063 | 1163 | ||
1064 | cmp [soften_middle],1 |
1164 | cmp [soften_middle],1 |
1065 | jne no_sm |
1165 | jne no_sm |
1066 | 1166 | ||
1067 | movzx ebx,word [screenxy+2] |
1167 | movzx ebx,word [screenxy+2] |
1068 | mov ecx,5*65536+5 |
1168 | mov ecx,5*65536+5 |
1069 | mov esi,stripe |
1169 | mov esi,stripe |
1070 | mov edx,[wcolor] |
1170 | mov edx,[wcolor] |
1071 | newline3: |
1171 | newline3: |
1072 | add edx,[esi] |
1172 | add edx,[esi] |
1073 | add esi,4 |
1173 | add esi,4 |
1074 | 1174 | ||
1075 | mov eax,38 |
1175 | mov eax,38 |
- | 1176 | and edx,0x00FFFFFF |
|
1076 | int 0x40 |
1177 | int 0x40 |
1077 | add ecx,1*65536+1 |
1178 | add ecx,1*65536+1 |
1078 | cmp cx,15 |
1179 | cmp cx,15 |
1079 | jb newline3 |
1180 | jb newline3 |
1080 | 1181 | ||
1081 | no_sm: |
1182 | no_sm: |
1082 | 1183 | ||
1083 | cmp [minimize_left],1 |
1184 | cmp [minimize_left],1 |
1084 | jne no_mleft |
1185 | jne no_mleft |
1085 | mov eax,8 ; ABS LEFT |
1186 | mov eax,8 ; ABS LEFT |
1086 | mov ebx,0 *65536+9 |
1187 | mov ebx,0 *65536+9 |
1087 | mov ecx,1 *65536 |
1188 | mov ecx,1 *65536 |
1088 | add ecx,[b_size_y] |
1189 | add ecx,[b_size_y] |
1089 | dec ecx |
1190 | dec ecx |
1090 | mov edx,101 |
1191 | mov edx,101 |
1091 | add edx,[button_frames] |
1192 | add edx,[button_frames] |
1092 | mov esi,[wcolor] |
1193 | mov esi,[wcolor] |
1093 | int 0x40 |
1194 | int 0x40 |
1094 | mov eax,4 ; HIDE TEXT |
1195 | mov eax,4 ; HIDE TEXT |
1095 | mov ebx,2*65536+17 |
1196 | mov ebx,2*65536+17 |
1096 | cmp [graph_text],1 |
1197 | cmp [graph_text],1 |
1097 | jne no_y1 |
1198 | jne no_y1 |
1098 | mov bx,7 |
1199 | mov bx,7 |
1099 | no_y1: |
1200 | no_y1: |
1100 | mov ecx,[wcolor] |
1201 | mov ecx,[wcolor] |
1101 | add ecx,0x303030 |
1202 | add ecx,0x303030 |
1102 | mov edx,hidetext |
1203 | mov edx,hidetext |
1103 | mov esi,1 |
1204 | mov esi,1 |
1104 | int 0x40 |
1205 | int 0x40 |
1105 | no_mleft: |
1206 | no_mleft: |
1106 | 1207 | ||
1107 | movzx eax,word [screenxy+2] |
1208 | movzx eax,word [screenxy+2] |
1108 | mov [maxx],eax |
1209 | mov [maxx],eax |
1109 | 1210 | ||
1110 | cmp [minimize_right],1 |
1211 | cmp [minimize_right],1 |
1111 | jne no_mright |
1212 | jne no_mright |
1112 | mov eax,[maxx] |
1213 | mov eax,[maxx] |
1113 | sub eax,77 |
1214 | sub eax,77 |
1114 | shl eax,16 |
1215 | shl eax,16 |
1115 | mov ebx,eax |
1216 | mov ebx,eax |
1116 | add ebx,67 |
1217 | add ebx,67 |
1117 | mov eax,8 ; ABS RIGHT |
1218 | mov eax,8 ; ABS RIGHT |
1118 | mov ecx,1 *65536 |
1219 | mov ecx,1 *65536 |
1119 | add ecx,[b_size_y] |
1220 | add ecx,[b_size_y] |
1120 | dec ecx |
1221 | dec ecx |
1121 | add ebx,68*65536 |
1222 | add ebx,68*65536 |
1122 | mov bx,9 |
1223 | mov bx,9 |
1123 | mov edx,102 |
1224 | mov edx,102 |
1124 | add edx,[button_frames] |
1225 | add edx,[button_frames] |
1125 | mov esi,[wcolor] |
1226 | mov esi,[wcolor] |
1126 | int 0x40 |
1227 | int 0x40 |
1127 | mov edx,hidetext+1 |
1228 | mov edx,hidetext+1 |
1128 | mov eax,4 |
1229 | mov eax,4 |
1129 | mov ebx,[maxx] |
1230 | mov ebx,[maxx] |
1130 | sub ebx,6 |
1231 | sub ebx,6 |
1131 | shl ebx,16 |
1232 | shl ebx,16 |
1132 | mov bx,17 |
1233 | mov bx,17 |
1133 | cmp [graph_text],1 |
1234 | cmp [graph_text],1 |
1134 | jne no_y2 |
1235 | jne no_y2 |
1135 | mov bx,7 |
1236 | mov bx,7 |
1136 | no_y2: |
1237 | no_y2: |
1137 | mov ecx,[wcolor] |
1238 | mov ecx,[wcolor] |
1138 | add ecx,0x303030 |
1239 | add ecx,0x303030 |
1139 | mov esi,1 |
1240 | mov esi,1 |
1140 | int 0x40 |
1241 | int 0x40 |
1141 | no_mright: |
1242 | no_mright: |
1142 | 1243 | ||
1143 | call draw_menuet_icon |
1244 | call draw_menuet_icon |
1144 | 1245 | ||
1145 | call draw_program_icons |
1246 | call draw_program_icons |
1146 | 1247 | ||
1147 | mov [ptime],0 |
1248 | mov [ptime],0 |
1148 | call draw_info |
1249 | call draw_info |
1149 | 1250 | ||
1150 | call draw_application_buttons |
1251 | call draw_application_buttons |
1151 | 1252 | ||
1152 | ; mov ecx,[button_presssed_alt] |
1253 | ; mov ecx,[button_presssed_alt] |
1153 | ; mcall 47,0x80100,ecx ,400 shl 16+5,0 |
1254 | ; mcall 47,0x80100,ecx ,400 shl 16+5,0 |
1154 | 1255 | ||
1155 | mov eax,12 |
1256 | mov eax,12 |
1156 | mov ebx,2 |
1257 | mov ebx,2 |
1157 | int 0x40 |
1258 | int 0x40 |
1158 | 1259 | ||
1159 | popa |
1260 | popa |
1160 | ret |
1261 | ret |
1161 | 1262 | ||
1162 | 1263 | ||
1163 | 1264 | ||
1164 | draw_menuet_icon: |
1265 | draw_menuet_icon: |
1165 | 1266 | ||
1166 | pusha |
1267 | pusha |
1167 | 1268 | ||
1168 | cmp [menu_enable],1 |
1269 | cmp [menu_enable],1 |
1169 | jne no_menu |
1270 | jne no_menu |
1170 | 1271 | ||
1171 | 1272 | ||
1172 | mov eax, 8 ; M BUTTON |
1273 | mov eax, 8 ; M BUTTON |
1173 | mov ebx, 10*65536 + 47 |
1274 | mov ebx, 10*65536 + 47 |
1174 | cmp [minimize_left], 0 |
1275 | cmp [minimize_left], 0 |
1175 | jne @f |
1276 | jne @f |
1176 | sub ebx, 10*65536 |
1277 | sub ebx, 10*65536 |
1177 | @@: |
1278 | @@: |
1178 | mov ecx, 1*65536 |
1279 | mov ecx, 1*65536 |
1179 | add ecx, [b_size_y] |
1280 | add ecx, [b_size_y] |
1180 | dec ecx |
1281 | dec ecx |
1181 | mov edx, 0x20000001 |
1282 | mov edx, 0x20000001 |
1182 | add edx, [button_frames] |
1283 | add edx, [button_frames] |
1183 | mov esi, [wcolor] |
1284 | mov esi, [wcolor] |
1184 | int 0x40 |
1285 | int 0x40 |
1185 | 1286 | ||
1186 | cmp [graph_text], 1 |
1287 | cmp [graph_text], 1 |
1187 | jne no_mtext |
1288 | jne no_mtext |
1188 | 1289 | ||
1189 | push ebx |
1290 | push ebx |
1190 | mov eax,13 |
1291 | mov eax,13 |
1191 | mov ebx,12 shl 16+44 ;51 |
1292 | mov ebx,12 shl 16+44 ;51 |
1192 | mov ecx,1 shl 16+17 |
1293 | mov ecx,1 shl 16+17 |
1193 | xor edx,edx |
1294 | xor edx,edx |
1194 | int 0x40 |
1295 | int 0x40 |
1195 | ; mov ebx,63 shl 16+1 |
1296 | ; mov ebx,63 shl 16+1 |
1196 | mov ebx,56 shl 16+1 |
1297 | mov ebx,56 shl 16+1 |
1197 | mov ecx,2 shl 16+15 |
1298 | mov ecx,2 shl 16+15 |
1198 | int 0x40 |
1299 | int 0x40 |
1199 | mov ebx,57 shl 16+1 |
1300 | mov ebx,57 shl 16+1 |
1200 | mov ecx,4 shl 16+11 |
1301 | mov ecx,4 shl 16+11 |
1201 | int 0x40 |
1302 | int 0x40 |
1202 | mov ebx,58 shl 16+1 |
1303 | mov ebx,58 shl 16+1 |
1203 | mov ecx,6 shl 16+7 |
1304 | mov ecx,6 shl 16+7 |
1204 | int 0x40 |
1305 | int 0x40 |
1205 | ; mov ebx,66 shl 16+1 |
1306 | ; mov ebx,66 shl 16+1 |
1206 | ; mov ecx,9 shl 16+1 |
1307 | ; mov ecx,9 shl 16+1 |
1207 | ; int 0x40 |
1308 | ; int 0x40 |
1208 | mov ebx,13 shl 16+43 ;50 |
1309 | mov ebx,13 shl 16+43 ;50 |
1209 | mov ecx,2 shl 16+15 |
1310 | mov ecx,2 shl 16+15 |
1210 | mov edx,0x7700 |
1311 | mov edx,0x7700 |
1211 | int 0x40 |
1312 | int 0x40 |
1212 | ; mov ebx,62 shl 16+1 |
1313 | ; mov ebx,62 shl 16+1 |
1213 | ; mov ecx,3 shl 16+14 |
1314 | ; mov ecx,3 shl 16+14 |
1214 | ; int 0x40 |
1315 | ; int 0x40 |
1215 | mov ebx,56 shl 16+1 |
1316 | mov ebx,56 shl 16+1 |
1216 | mov ecx,4 shl 16+11 |
1317 | mov ecx,4 shl 16+11 |
1217 | int 0x40 |
1318 | int 0x40 |
1218 | mov ebx,57 shl 16+1 |
1319 | mov ebx,57 shl 16+1 |
1219 | mov ecx,6 shl 16+7 |
1320 | mov ecx,6 shl 16+7 |
1220 | int 0x40 |
1321 | int 0x40 |
1221 | pop ebx |
1322 | pop ebx |
1222 | 1323 | ||
1223 | mov eax, 4 |
1324 | mov eax, 4 |
1224 | mov bx, 7 |
1325 | mov bx, 7 |
1225 | add ebx, 8*65536 |
1326 | add ebx, 8*65536 |
1226 | mov ecx, 0x10ffffff |
1327 | mov ecx, 0x10ffffff |
1227 | mov edx, m_text |
1328 | mov edx, m_text |
1228 | mov esi, 4 |
1329 | mov esi, 4 |
1229 | int 0x40 |
1330 | int 0x40 |
1230 | 1331 | ||
1231 | popa |
1332 | popa |
1232 | ret |
1333 | ret |
1233 | 1334 | ||
1234 | no_mtext: |
1335 | no_mtext: |
1235 | 1336 | ||
1236 | 1337 | ||
1237 | 1338 | ||
1238 | mov eax,[wcolor] |
1339 | mov eax,[wcolor] |
1239 | mov [m_icon+4],eax |
1340 | mov [m_icon+4],eax |
1240 | 1341 | ||
1241 | mov eax,6 ; load file |
1342 | mov eax,6 ; load file |
1242 | mov ebx,m_bmp |
1343 | mov ebx,m_bmp |
1243 | mov ecx,0 |
1344 | mov ecx,0 |
1244 | mov edx,200000 |
1345 | mov edx,200000 |
1245 | mov esi,image |
1346 | mov esi,image |
1246 | mov edi,0 |
1347 | mov edi,0 |
1247 | int 0x40 |
1348 | int 0x40 |
1248 | 1349 | ||
1249 | mov eax,40 |
1350 | mov eax,40 |
1250 | mov ebx,0 |
1351 | mov ebx,0 |
1251 | mov edi,image+53 |
1352 | mov edi,image+53 |
1252 | 1353 | ||
1253 | new_m_pix: |
1354 | new_m_pix: |
1254 | 1355 | ||
1255 | ; movzx ecx,byte [edi] |
1356 | ; movzx ecx,byte [edi] |
1256 | ; shr ecx,5 |
1357 | ; shr ecx,5 |
1257 | 1358 | ||
1258 | mov cl,[edi] |
1359 | mov cl,[edi] |
1259 | cmp cl,10 |
1360 | cmp cl,10 |
1260 | jb nopix |
1361 | jb nopix |
1261 | mov cl,[edi+1] |
1362 | mov cl,[edi+1] |
1262 | cmp cl,10 |
1363 | cmp cl,10 |
1263 | jb nopix |
1364 | jb nopix |
1264 | mov cl,[edi+2] |
1365 | mov cl,[edi+2] |
1265 | cmp cl,10 |
1366 | cmp cl,10 |
1266 | jb nopix |
1367 | jb nopix |
1267 | 1368 | ||
1268 | pusha |
1369 | pusha |
1269 | cmp [minimize_left],0 |
1370 | cmp [minimize_left],0 |
1270 | jne no_m_s2 |
1371 | jne no_m_s2 |
1271 | sub ebx,10 |
1372 | sub ebx,10 |
1272 | no_m_s2: |
1373 | no_m_s2: |
1273 | ; mov edx,[ecx*4+m_icon] |
1374 | ; mov edx,[ecx*4+m_icon] |
1274 | mov edx,[edi+1] |
1375 | mov edx,[edi+1] |
1275 | 1376 | ||
1276 | mov ecx,eax |
1377 | mov ecx,eax |
1277 | mov eax,1 |
1378 | mov eax,1 |
1278 | add ebx,12 |
1379 | add ebx,12 |
1279 | int 0x40 |
1380 | int 0x40 |
1280 | popa |
1381 | popa |
1281 | 1382 | ||
1282 | nopix: |
1383 | nopix: |
1283 | 1384 | ||
1284 | add edi,3 |
1385 | add edi,3 |
1285 | add ebx,1 |
1386 | add ebx,1 |
1286 | cmp ebx,40 |
1387 | cmp ebx,40 |
1287 | jnz new_m_pix |
1388 | jnz new_m_pix |
1288 | 1389 | ||
1289 | mov ebx,0 |
1390 | mov ebx,0 |
1290 | dec eax |
1391 | dec eax |
1291 | jnz new_m_pix |
1392 | jnz new_m_pix |
1292 | 1393 | ||
1293 | no_menu: |
1394 | no_menu: |
1294 | 1395 | ||
1295 | popa |
1396 | popa |
1296 | ret |
1397 | ret |
1297 | 1398 | ||
1298 | 1399 | ||
1299 | draw_program_icons: |
1400 | draw_program_icons: |
1300 | 1401 | ||
1301 | pusha |
1402 | pusha |
1302 | 1403 | ||
1303 | cmp [icons],0 |
1404 | cmp [icons],0 |
1304 | jne dp_ret |
1405 | jne dp_ret |
1305 | 1406 | ||
1306 | mov edi,1 |
1407 | mov edi,1 |
1307 | push edi |
1408 | push edi |
1308 | 1409 | ||
1309 | new_icon_file: |
1410 | new_icon_file: |
1310 | 1411 | ||
1311 | pusha |
1412 | pusha |
1312 | mov edx,[esp+32] |
1413 | mov edx,[esp+32] |
1313 | add edx,10 |
1414 | add edx,10 |
1314 | push edx |
1415 | push edx |
1315 | mov esi,[wcolor] |
1416 | mov esi,[wcolor] |
1316 | mov ecx,1*65536 |
1417 | mov ecx,1*65536 |
1317 | add ecx,[b_size_y] |
1418 | add ecx,[b_size_y] |
1318 | dec ecx |
1419 | dec ecx |
1319 | mov eax,edi |
1420 | mov eax,edi |
1320 | dec eax |
1421 | dec eax |
1321 | imul eax,40 |
1422 | imul eax,40 |
1322 | mov ebx,eax |
1423 | mov ebx,eax |
1323 | add ebx,[icons_position] |
1424 | add ebx,[icons_position] |
1324 | shl ebx,16 |
1425 | shl ebx,16 |
1325 | mov bx,39 |
1426 | mov bx,39 |
1326 | pop edx |
1427 | pop edx |
1327 | add edx,[button_frames] |
1428 | add edx,[button_frames] |
1328 | or edx, 0x20000000 |
1429 | or edx, 0x20000000 |
1329 | mov eax,8 |
1430 | mov eax,8 |
1330 | int 0x40 |
1431 | int 0x40 |
1331 | popa |
1432 | popa |
1332 | 1433 | ||
1333 | mov ecx,[esp] |
1434 | mov ecx,[esp] |
1334 | add ecx,48 |
1435 | add ecx,48 |
1335 | mov [iconf+6],cl |
1436 | mov [iconf+6],cl |
1336 | 1437 | ||
1337 | mov eax,6 ; load file |
1438 | mov eax,6 ; load file |
1338 | mov ebx,iconf |
1439 | mov ebx,iconf |
1339 | mov ecx,0 |
1440 | mov ecx,0 |
1340 | mov edx,200000 |
1441 | mov edx,200000 |
1341 | mov esi,image |
1442 | mov esi,image |
1342 | int 0x40 |
1443 | int 0x40 |
1343 | 1444 | ||
1344 | mov eax,0 |
1445 | mov eax,0 |
1345 | mov ebx,32 |
1446 | mov ebx,32 |
1346 | mov edi,image+51+32*33*3 |
1447 | mov edi,image+51+32*33*3 |
1347 | 1448 | ||
1348 | np2: ; new pixel of file |
1449 | np2: ; new pixel of file |
1349 | 1450 | ||
1350 | mov edx,[edi] |
1451 | mov edx,[edi] |
1351 | and edx,0xffffff |
1452 | and edx,0xffffff |
1352 | 1453 | ||
1353 | cmp eax,3 ; Y draw limits |
1454 | cmp eax,3 ; Y draw limits |
1354 | jb nopix2 |
1455 | jb nopix2 |
1355 | cmp eax,36 |
1456 | cmp eax,36 |
1356 | jg nopix2 |
1457 | jg nopix2 |
1357 | cmp ebx,38 ; X draw limits |
1458 | cmp ebx,38 ; X draw limits |
1358 | jg nopix2 |
1459 | jg nopix2 |
1359 | cmp ebx,2 |
1460 | cmp ebx,2 |
1360 | jb nopix2 |
1461 | jb nopix2 |
1361 | 1462 | ||
1362 | cmp edx,0 |
1463 | cmp edx,0 |
1363 | jz nopix2 |
1464 | jz nopix2 |
1364 | 1465 | ||
1365 | cmp [graph_text],1 |
1466 | cmp [graph_text],1 |
1366 | jne no_icon_text |
1467 | jne no_icon_text |
1367 | 1468 | ||
1368 | pusha |
1469 | pusha |
1369 | 1470 | ||
1370 | mov ebx,[esp+32] |
1471 | mov ebx,[esp+32] |
1371 | dec ebx |
1472 | dec ebx |
1372 | imul ebx,40 |
1473 | imul ebx,40 |
1373 | add ebx,8 |
1474 | add ebx,8 |
1374 | add ebx,[icons_position] |
1475 | add ebx,[icons_position] |
1375 | shl ebx,16 |
1476 | shl ebx,16 |
1376 | mov bx,7 |
1477 | mov bx,7 |
1377 | 1478 | ||
1378 | mov eax,4 |
1479 | mov eax,4 |
1379 | mov ecx,0xffffff |
1480 | mov ecx,0xffffff |
1380 | mov edx,[esp+32] |
1481 | mov edx,[esp+32] |
1381 | dec edx |
1482 | dec edx |
1382 | imul edx,4 |
1483 | imul edx,4 |
1383 | add edx,mi_text |
1484 | add edx,mi_text |
1384 | mov esi,4 |
1485 | mov esi,4 |
1385 | int 0x40 |
1486 | int 0x40 |
1386 | 1487 | ||
1387 | popa |
1488 | popa |
1388 | 1489 | ||
1389 | jmp nopix2 |
1490 | jmp nopix2 |
1390 | 1491 | ||
1391 | no_icon_text: |
1492 | no_icon_text: |
1392 | 1493 | ||
1393 | mov esi,[esp] |
1494 | mov esi,[esp] |
1394 | pusha |
1495 | pusha |
1395 | push edx |
1496 | push edx |
1396 | mov ecx,eax |
1497 | mov ecx,eax |
1397 | add ecx,2 |
1498 | add ecx,2 |
1398 | mov eax,esi |
1499 | mov eax,esi |
1399 | dec eax |
1500 | dec eax |
1400 | imul eax,40 |
1501 | imul eax,40 |
1401 | add ebx,eax |
1502 | add ebx,eax |
1402 | add ebx,3 |
1503 | add ebx,3 |
1403 | add ebx,[icons_position] |
1504 | add ebx,[icons_position] |
1404 | pop edx |
1505 | pop edx |
1405 | mov eax,1 |
1506 | mov eax,1 |
1406 | int 0x40 |
1507 | int 0x40 |
1407 | popa |
1508 | popa |
1408 | 1509 | ||
1409 | nopix2: |
1510 | nopix2: |
1410 | 1511 | ||
1411 | sub edi,3 |
1512 | sub edi,3 |
1412 | dec ebx |
1513 | dec ebx |
1413 | jnz np2 |
1514 | jnz np2 |
1414 | 1515 | ||
1415 | mov ebx,32 |
1516 | mov ebx,32 |
1416 | add eax,1 |
1517 | add eax,1 |
1417 | cmp eax,32 |
1518 | cmp eax,32 |
1418 | jnz np2 |
1519 | jnz np2 |
1419 | 1520 | ||
1420 | add dword [esp],1 |
1521 | add dword [esp],1 |
1421 | mov edi,[esp] |
1522 | mov edi,[esp] |
1422 | cmp dword [esp],4 |
1523 | cmp dword [esp],4 |
1423 | jbe new_icon_file |
1524 | jbe new_icon_file |
1424 | add esp,4 |
1525 | add esp,4 |
1425 | 1526 | ||
1426 | mov eax,4 |
1527 | mov eax,4 |
1427 | mov ebx,40 |
1528 | mov ebx,40 |
1428 | imul ebx,3 |
1529 | imul ebx,3 |
1429 | add ebx,[icons_position] |
1530 | add ebx,[icons_position] |
1430 | add ebx,10 |
1531 | add ebx,10 |
1431 | shl ebx,16 |
1532 | shl ebx,16 |
1432 | mov bx,23 |
1533 | mov bx,23 |
1433 | mov ecx,[wcolor] |
1534 | mov ecx,[wcolor] |
1434 | mov edx,gpl |
1535 | mov edx,gpl |
1435 | mov esi,3 |
1536 | mov esi,3 |
1436 | int 0x40 |
1537 | int 0x40 |
1437 | 1538 | ||
1438 | dp_ret: |
1539 | dp_ret: |
1439 | 1540 | ||
1440 | popa |
1541 | popa |
1441 | ret |
1542 | ret |
1442 | 1543 | ||
1443 | 1544 | ||
1444 | 1545 | ||
1445 | draw_info: ; draw cpu usage, time, date |
1546 | draw_info: ; draw cpu usage, time, date |
1446 | 1547 | ||
1447 | pusha |
1548 | pusha |
1448 | 1549 | ||
1449 | cmp [setup_enable],1 |
1550 | cmp [setup_enable],1 |
1450 | jne no_setup |
1551 | jne no_setup |
1451 | 1552 | ||
1452 | cmp [minimize_right],0 |
1553 | cmp [minimize_right],0 |
1453 | jne no_m_r |
1554 | jne no_m_r |
1454 | add [maxx],10 |
1555 | add [maxx],10 |
1455 | 1556 | ||
1456 | no_m_r: |
1557 | no_m_r: |
1457 | 1558 | ||
1458 | mov eax,3 |
1559 | mov eax,3 |
1459 | int 0x40 |
1560 | int 0x40 |
1460 | cmp eax,[ptime] |
1561 | cmp eax,[ptime] |
1461 | jz _ret |
1562 | jz _ret |
1462 | mov [ptime],eax |
1563 | mov [ptime],eax |
1463 | 1564 | ||
1464 | call draw_cpu_usage |
1565 | call draw_cpu_usage |
1465 | 1566 | ||
1466 | mov eax,[maxx] ; blink sec |
1567 | mov eax,[maxx] ; blink sec |
1467 | sub eax,33 |
1568 | sub eax,33 |
1468 | shl eax,16 |
1569 | shl eax,16 |
1469 | mov ebx,eax |
1570 | mov ebx,eax |
1470 | add ebx,9 |
1571 | add ebx,9 |
1471 | mov eax,3 |
1572 | mov eax,3 |
1472 | int 0x40 |
1573 | int 0x40 |
1473 | cmp [graph_text],1 |
1574 | cmp [graph_text],1 |
1474 | jne no_y4 |
1575 | jne no_y4 |
1475 | sub bx,2 |
1576 | sub bx,2 |
1476 | no_y4: |
1577 | no_y4: |
1477 | mov ecx,eax |
1578 | mov ecx,eax |
1478 | shr ecx,16 |
1579 | shr ecx,16 |
1479 | and ecx,1 |
1580 | and ecx,1 |
1480 | mov edx,[bte] |
1581 | mov edx,[bte] |
1481 | sub edx,[wcolor] |
1582 | sub edx,[wcolor] |
1482 | imul ecx,edx |
1583 | imul ecx,edx |
1483 | add ecx,[wcolor] |
1584 | add ecx,[wcolor] |
1484 | mov edx,sec |
1585 | mov edx,sec |
1485 | mov eax,4 |
1586 | mov eax,4 |
1486 | mov esi,1 |
1587 | mov esi,1 |
1487 | int 0x40 |
1588 | int 0x40 |
1488 | 1589 | ||
1489 | 1590 | ||
1490 | mov eax,26 ; check for change in time or country |
1591 | mov eax,26 ; check for change in time or country |
1491 | mov ebx,5 |
1592 | mov ebx,5 |
1492 | int 0x40 |
1593 | int 0x40 |
1493 | mov edx,eax |
1594 | mov edx,eax |
1494 | mov eax,26 |
1595 | mov eax,26 |
1495 | mov ebx,2 |
1596 | mov ebx,2 |
1496 | mov ecx,9 |
1597 | mov ecx,9 |
1497 | int 0x40 |
1598 | int 0x40 |
1498 | add edx,eax |
1599 | add edx,eax |
1499 | mov eax,3 |
1600 | mov eax,3 |
1500 | int 0x40 |
1601 | int 0x40 |
1501 | and eax,0xffff |
1602 | and eax,0xffff |
1502 | add edx,eax |
1603 | add edx,eax |
1503 | cmp edx,[checks] |
1604 | cmp edx,[checks] |
1504 | je _ret |
1605 | je _ret |
1505 | mov [checks],edx |
1606 | mov [checks],edx |
1506 | 1607 | ||
1507 | mov ebx,[maxx] |
1608 | mov ebx,[maxx] |
1508 | sub ebx,48 ;;94 ;;74 |
1609 | sub ebx,48 ;;94 ;;74 |
1509 | shl ebx,16 |
1610 | shl ebx,16 |
1510 | add ebx,33 ;;84 ;;64 |
1611 | add ebx,33 ;;84 ;;64 |
1511 | 1612 | ||
1512 | mov eax,8 ; time/date button |
1613 | mov eax,8 ; time/date button |
1513 | mov ecx,3 *65536 |
1614 | mov ecx,3 *65536 |
1514 | add ecx,[b_size_y] |
1615 | add ecx,[b_size_y] |
1515 | ; dec ecx |
1616 | ; dec ecx |
1516 | sub cx,5 |
1617 | sub cx,5 |
1517 | mov edx,2+0x20000000 |
1618 | mov edx,2+0x20000000 |
1518 | mov esi,[wcolor] |
1619 | mov esi,[wcolor] |
1519 | int 0x40 |
1620 | int 0x40 |
1520 | pusha |
1621 | pusha |
1521 | mov eax,13 |
1622 | mov eax,13 |
1522 | add ebx,10*65536-16 |
1623 | add ebx,10*65536-16 |
1523 | add ecx,5*65536-8 |
1624 | add ecx,5*65536-8 |
1524 | mov edx,[wcolor] |
1625 | mov edx,[wcolor] |
1525 | int 0x40 |
1626 | int 0x40 |
1526 | popa |
1627 | popa |
1527 | and edx,0xffff |
1628 | and edx,0xffff |
1528 | add edx,[button_frames] |
1629 | add edx,[button_frames] |
1529 | int 0x40 |
1630 | int 0x40 |
1530 | 1631 | ||
1531 | mov eax,8 |
1632 | mov eax,8 |
1532 | mov ebx,[maxx] |
1633 | mov ebx,[maxx] |
1533 | sub ebx,77 ;80 |
1634 | sub ebx,77 ;80 |
1534 | shl ebx,16 |
1635 | shl ebx,16 |
1535 | add ebx,12 |
1636 | add ebx,12 |
1536 | mov ecx,5 shl 16+10 |
1637 | mov ecx,5 shl 16+10 |
1537 | mov edx,16+0x20000000 ;button 16 |
1638 | mov edx,16+0x20000000 ;button 16 |
1538 | mov esi,[wcolor] |
1639 | mov esi,[wcolor] |
1539 | int 0x40 |
1640 | int 0x40 |
1540 | sub ebx,17 shl 16 |
1641 | sub ebx,17 shl 16 |
1541 | inc edx ;button 17 |
1642 | inc edx ;button 17 |
1542 | int 0x40 |
1643 | int 0x40 |
1543 | add ebx,33 shl 16 |
1644 | add ebx,33 shl 16 |
1544 | mov bx,8 |
1645 | mov bx,8 |
1545 | inc edx ;button 18 |
1646 | inc edx ;button 18 |
1546 | int 0x40 |
1647 | int 0x40 |
1547 | sub ebx,47 shl 16 |
1648 | sub ebx,47 shl 16 |
1548 | mov bx,10 |
1649 | mov bx,10 |
1549 | inc edx ;button 19 |
1650 | inc edx ;button 19 |
1550 | int 0x40 |
1651 | int 0x40 |
1551 | sub ebx,14 shl 16 |
1652 | sub ebx,14 shl 16 |
1552 | inc edx ;button 20 |
1653 | inc edx ;button 20 |
1553 | int 0x40 |
1654 | int 0x40 |
- | 1655 | sub ebx,12 shl 16 |
|
- | 1656 | mov bx,8 |
|
- | 1657 | mov ecx,6 shl 16+10 |
|
- | 1658 | inc edx ;button 21 |
|
- | 1659 | int 0x40 |
|
- | 1660 | sub ebx,18 shl 16 |
|
- | 1661 | inc edx ;button 22 |
|
- | 1662 | int 0x40 |
|
- | 1663 | ||
1554 | ; flags |
1664 | ; flags |
1555 | 1665 | ||
1556 | mov eax,26 |
1666 | mov eax,26 |
1557 | mov ebx,5 |
1667 | mov ebx,5 |
1558 | int 0x40 |
1668 | int 0x40 |
1559 | mov ebx,eax |
1669 | mov ebx,eax |
1560 | 1670 | ||
1561 | mov eax,1 |
1671 | mov eax,1 |
1562 | mov [type_lang],al |
1672 | mov [type_lang],al |
1563 | call draw_flag |
1673 | call draw_flag |
1564 | 1674 | ||
1565 | mov eax,26 |
1675 | mov eax,26 |
1566 | mov ebx,2 |
1676 | mov ebx,2 |
1567 | mov ecx,9 |
1677 | mov ecx,9 |
1568 | int 0x40 |
1678 | int 0x40 |
1569 | mov ebx,eax |
1679 | mov ebx,eax |
1570 | 1680 | ||
1571 | mov eax,2 |
1681 | mov eax,2 |
1572 | mov [type_lang],al |
1682 | mov [type_lang],al |
1573 | call draw_flag |
1683 | call draw_flag |
1574 | 1684 | ||
1575 | mcall 18,8,1 |
1685 | mcall 18,8,1 |
1576 | mov [sound_flag],al |
1686 | mov [sound_flag],al |
1577 | 1687 | ||
1578 | mov ebx,[maxx] |
1688 | mov ebx,[maxx] |
1579 | sub ebx,109 ;112 ;28 |
1689 | sub ebx,109 ;112 ;28 |
1580 | shl ebx,16 |
1690 | shl ebx,16 |
1581 | mov bx,12 |
1691 | mov bx,12 |
1582 | mov ecx, 4*65536+13 |
1692 | mov ecx, 4*65536+13 |
1583 | mov edx,0 |
1693 | mov edx,0 |
1584 | mov eax,13 |
1694 | mov eax,13 |
1585 | int 0x40 |
1695 | int 0x40 |
1586 | add ebx,1 shl 16 |
1696 | add ebx,1 shl 16 |
1587 | sub bx,2 |
1697 | sub bx,2 |
1588 | mov ecx,5 shl 16+11 |
1698 | mov ecx,5 shl 16+11 |
1589 | mov edx,0xcc |
1699 | mov edx,0xcc |
1590 | int 0x40 |
1700 | int 0x40 |
1591 | add ebx,1 shl 16 |
1701 | add ebx,1 shl 16 |
1592 | mov bx,5 |
1702 | mov bx,5 |
1593 | mov ecx,8 shl 16+5 |
1703 | mov ecx,8 shl 16+5 |
1594 | mov edx,0xdddd00 |
1704 | mov edx,0xdddd00 |
1595 | int 0x40 |
1705 | int 0x40 |
1596 | add ebx,5 shl 16 |
1706 | add ebx,5 shl 16 |
1597 | mov bx,1 |
1707 | mov bx,1 |
1598 | mov ecx,7 shl 16+7 |
1708 | mov ecx,7 shl 16+7 |
1599 | int 0x40 |
1709 | int 0x40 |
1600 | add ebx,1 shl 16 |
1710 | add ebx,1 shl 16 |
1601 | mov ecx,6 shl 16+9 |
1711 | mov ecx,6 shl 16+9 |
1602 | int 0x40 |
1712 | int 0x40 |
1603 | add ebx,1 shl 16 |
1713 | add ebx,1 shl 16 |
1604 | mov ecx,5 shl 16+11 |
1714 | mov ecx,5 shl 16+11 |
1605 | int 0x40 |
1715 | int 0x40 |
1606 | 1716 | ||
1607 | ; cmp [music_type],0 |
1717 | ; cmp [music_type],0 |
1608 | ; jne dalshe |
1718 | ; jne dalshe |
1609 | cmp [sound_flag],0 |
1719 | cmp [sound_flag],0 |
1610 | je dalshe |
1720 | je dalshe |
1611 | 1721 | ||
1612 | sub ebx,8 shl 16 |
1722 | sub ebx,8 shl 16 |
1613 | ror ebx,16 |
1723 | ror ebx,16 |
1614 | mov cx,bx |
1724 | mov cx,bx |
1615 | rol ebx,16 |
1725 | rol ebx,16 |
1616 | mov bx,cx |
1726 | mov bx,cx |
1617 | add bx,8 |
1727 | add bx,8 |
1618 | mov ecx,5 shl 16+15 |
1728 | mov ecx,5 shl 16+15 |
1619 | mov edx,0xff0000 |
1729 | mov edx,0xff0000 |
1620 | mov eax,38 |
1730 | mov eax,38 |
1621 | int 0x40 |
1731 | int 0x40 |
1622 | add ebx,1 shl 16 |
1732 | add ebx,1 shl 16 |
1623 | inc bx |
1733 | inc bx |
1624 | int 0x40 |
1734 | int 0x40 |
1625 | rol ecx,16 |
1735 | rol ecx,16 |
1626 | int 0x40 |
1736 | int 0x40 |
1627 | sub ebx,1 shl 16 |
1737 | sub ebx,1 shl 16 |
1628 | dec bx |
1738 | dec bx |
1629 | int 0x40 |
1739 | int 0x40 |
1630 | 1740 | ||
1631 | dalshe: |
1741 | dalshe: |
1632 | 1742 | ||
1633 | mov ebx,[maxx] |
1743 | mov ebx,[maxx] |
1634 | sub ebx,123 |
1744 | sub ebx,123 |
1635 | shl ebx,16 |
1745 | shl ebx,16 |
1636 | mov bx,12 |
1746 | mov bx,12 |
1637 | mov ecx, 4*65536+13 |
1747 | mov ecx, 4*65536+13 |
1638 | mov edx,0 |
1748 | mov edx,0 |
1639 | mov eax,13 |
1749 | mov eax,13 |
1640 | int 0x40 |
1750 | int 0x40 |
1641 | add ebx,1 shl 16 |
1751 | add ebx,1 shl 16 |
1642 | sub bx,2 |
1752 | sub bx,2 |
1643 | mov ecx,5 shl 16+11 |
1753 | mov ecx,5 shl 16+11 |
1644 | mov edx,0xffcc00 |
1754 | mov edx,0xffcc00 |
1645 | int 0x40 |
1755 | int 0x40 |
1646 | mov eax,4 |
1756 | mov eax,4 |
1647 | mov ebx,[maxx] |
1757 | mov ebx,[maxx] |
1648 | sub ebx,121 |
1758 | sub ebx,121 |
1649 | shl ebx,16 |
1759 | shl ebx,16 |
1650 | mov bx,7 |
1760 | mov bx,7 |
1651 | mov ecx,0x10000000 |
1761 | mov ecx,0x10000000 |
1652 | mov edx,file_sys |
1762 | mov edx,file_sys |
1653 | mov esi,1 |
1763 | mov esi,1 |
1654 | int 0x40 |
1764 | int 0x40 |
1655 | add ebx,1 shl 16 |
1765 | add ebx,1 shl 16 |
1656 | int 0x40 |
1766 | int 0x40 |
- | 1767 | ||
- | 1768 | mov edx,0 |
|
- | 1769 | mov eax,13 |
|
- | 1770 | mov ebx,[maxx] |
|
- | 1771 | sub ebx,134 |
|
- | 1772 | shl ebx,16 |
|
- | 1773 | mov bx,9 |
|
- | 1774 | mov ecx,6 shl 16+11 |
|
- | 1775 | int 0x40 |
|
- | 1776 | sub ebx,18 shl 16 |
|
- | 1777 | int 0x40 |
|
- | 1778 | add ebx,19 shl 16 |
|
- | 1779 | sub bx,2 |
|
- | 1780 | mov ecx,7 shl 16+9 |
|
- | 1781 | mov edx,0xffffff |
|
- | 1782 | int 0x40 |
|
- | 1783 | sub ebx,18 shl 16 |
|
- | 1784 | int 0x40 |
|
- | 1785 | ||
- | 1786 | mov eax,4 |
|
- | 1787 | mov edx,page_a1 |
|
- | 1788 | mov ebx,[maxx] |
|
- | 1789 | sub ebx,150 |
|
- | 1790 | shl ebx,16 |
|
- | 1791 | mov bx,8 |
|
- | 1792 | mov esi,4 |
|
- | 1793 | int 0x40 |
|
- | 1794 | add ebx,1 shl 16 |
|
- | 1795 | int 0x40 |
|
- | 1796 | ||
- | 1797 | mov eax,47 |
|
- | 1798 | mov ebx,0x10100 |
|
- | 1799 | mov ecx,[page_list] |
|
- | 1800 | mov edx,[maxx] |
|
- | 1801 | sub edx,141 |
|
- | 1802 | shl edx,16 |
|
- | 1803 | mov dx,7 |
|
- | 1804 | mov esi,0xffffff |
|
- | 1805 | int 0x40 |
|
1657 | 1806 | ||
1658 | ; sub ebx,14 shl 16 |
1807 | ; sub ebx,14 shl 16 |
1659 | ; mov bx,7 |
1808 | ; mov bx,7 |
1660 | ; mov edx,turn_text |
1809 | ; mov edx,turn_text |
1661 | ; mov esi,1 |
1810 | ; mov esi,1 |
1662 | 1811 | ||
1663 | ; mov ecx,0x60a060 ;[wcolor] |
1812 | ; mov ecx,0x60a060 ;[wcolor] |
1664 | ; add ecx,0x303030 |
1813 | ; add ecx,0x303030 |
1665 | ; mov eax,4 |
1814 | ; mov eax,4 |
1666 | ; int 0x40 |
1815 | ; int 0x40 |
1667 | ; add ebx,1 shl 16 |
1816 | ; add ebx,1 shl 16 |
1668 | ; int 0x40 |
1817 | ; int 0x40 |
1669 | ; add ebx,1 shl 16 |
1818 | ; add ebx,1 shl 16 |
1670 | ; int 0x40 |
1819 | ; int 0x40 |
1671 | ; add ebx,1 shl 16 |
1820 | ; add ebx,1 shl 16 |
1672 | ; int 0x40 |
1821 | ; int 0x40 |
1673 | 1822 | ||
1674 | ; add ebx,1 shl 16 |
1823 | ; add ebx,1 shl 16 |
1675 | ; mov ecx,0x60a060 ;[wcolor] |
1824 | ; mov ecx,0x60a060 ;[wcolor] |
1676 | ; int 0x40 |
1825 | ; int 0x40 |
1677 | ; add ebx,1 shl 16 |
1826 | ; add ebx,1 shl 16 |
1678 | ; int 0x40 |
1827 | ; int 0x40 |
1679 | ; add ebx,1 shl 16 |
1828 | ; add ebx,1 shl 16 |
1680 | ; sub ecx,0x303030 |
1829 | ; sub ecx,0x303030 |
1681 | ; int 0x40 |
1830 | ; int 0x40 |
1682 | 1831 | ||
1683 | ; sub ebx,6 shl 16 |
1832 | ; sub ebx,6 shl 16 |
1684 | ; mov bx,1 |
1833 | ; mov bx,1 |
1685 | ; mov ecx,2 shl 16+15 |
1834 | ; mov ecx,2 shl 16+15 |
1686 | ; mov edx,0x60a060 ;[wcolor] |
1835 | ; mov edx,0x60a060 ;[wcolor] |
1687 | ; add edx,0x303030 |
1836 | ; add edx,0x303030 |
1688 | ; mov eax,13 |
1837 | ; mov eax,13 |
1689 | ; int 0x40 |
1838 | ; int 0x40 |
1690 | ; add ebx,1 shl 16 |
1839 | ; add ebx,1 shl 16 |
1691 | ; mov bx,1 |
1840 | ; mov bx,1 |
1692 | ; mov edx,0x60a060 ;[wcolor] |
1841 | ; mov edx,0x60a060 ;[wcolor] |
1693 | ; int 0x40 |
1842 | ; int 0x40 |
1694 | ; add ebx,1 shl 16 |
1843 | ; add ebx,1 shl 16 |
1695 | ; mov bx,1 |
1844 | ; mov bx,1 |
1696 | ; sub edx,0x303030 |
1845 | ; sub edx,0x303030 |
1697 | ; int 0x40 |
1846 | ; int 0x40 |
1698 | ; add ebx,1 shl 16 |
1847 | ; add ebx,1 shl 16 |
1699 | ; mov edx,[wcolor] |
1848 | ; mov edx,[wcolor] |
1700 | ; int 0x40 |
1849 | ; int 0x40 |
1701 | 1850 | ||
1702 | mov eax,3 ; get time |
1851 | mov eax,3 ; get time |
1703 | int 0x40 |
1852 | int 0x40 |
1704 | 1853 | ||
1705 | movzx ebx,al |
1854 | movzx ebx,al |
1706 | shr eax,8 |
1855 | shr eax,8 |
1707 | movzx ecx,al |
1856 | movzx ecx,al |
1708 | shr eax,8 |
1857 | shr eax,8 |
1709 | movzx edx,al |
1858 | movzx edx,al |
1710 | 1859 | ||
1711 | ; ebx ecx edx h m s |
1860 | ; ebx ecx edx h m s |
1712 | 1861 | ||
1713 | push ebx |
1862 | push ebx |
1714 | push ecx |
1863 | push ecx |
1715 | 1864 | ||
1716 | mov eax,[maxx] |
1865 | mov eax,[maxx] |
1717 | sub eax,32 |
1866 | sub eax,32 |
1718 | shl eax,16 |
1867 | shl eax,16 |
1719 | mov ebx,eax |
1868 | mov ebx,eax |
1720 | add ebx,9 |
1869 | add ebx,9 |
1721 | 1870 | ||
1722 | mov ecx,[bte] |
1871 | mov ecx,[bte] |
1723 | 1872 | ||
1724 | cmp [graph_text],1 |
1873 | cmp [graph_text],1 |
1725 | jne no_y3 |
1874 | jne no_y3 |
1726 | sub bx,2 |
1875 | sub bx,2 |
1727 | mov ecx,0xffffff |
1876 | mov ecx,0xffffff |
1728 | no_y3: |
1877 | no_y3: |
1729 | 1878 | ||
1730 | 1879 | ||
1731 | mov edx,[esp] ; __:_X |
1880 | mov edx,[esp] ; __:_X |
1732 | and edx,15 |
1881 | and edx,15 |
1733 | mov eax,4 |
1882 | mov eax,4 |
1734 | add ebx,10*65536 |
1883 | add ebx,10*65536 |
1735 | add edx,text |
1884 | add edx,text |
1736 | mov esi,1 |
1885 | mov esi,1 |
1737 | int 0x40 |
1886 | int 0x40 |
1738 | 1887 | ||
1739 | pop edx ; __:X_ |
1888 | pop edx ; __:X_ |
1740 | shr edx,4 |
1889 | shr edx,4 |
1741 | and edx,15 |
1890 | and edx,15 |
1742 | mov eax,4 |
1891 | mov eax,4 |
1743 | sub ebx,6*65536 |
1892 | sub ebx,6*65536 |
1744 | add edx,text |
1893 | add edx,text |
1745 | mov esi,1 |
1894 | mov esi,1 |
1746 | int 0x40 |
1895 | int 0x40 |
1747 | 1896 | ||
1748 | mov edx,[esp] ; _X:__ |
1897 | mov edx,[esp] ; _X:__ |
1749 | and edx,15 |
1898 | and edx,15 |
1750 | mov eax,4 |
1899 | mov eax,4 |
1751 | sub ebx,11*65536 |
1900 | sub ebx,11*65536 |
1752 | add edx,text |
1901 | add edx,text |
1753 | mov esi,1 |
1902 | mov esi,1 |
1754 | int 0x40 |
1903 | int 0x40 |
1755 | 1904 | ||
1756 | pop edx ; X_:__ |
1905 | pop edx ; X_:__ |
1757 | shr edx,4 |
1906 | shr edx,4 |
1758 | and edx,15 |
1907 | and edx,15 |
1759 | mov eax,4 |
1908 | mov eax,4 |
1760 | sub ebx,6*65536 |
1909 | sub ebx,6*65536 |
1761 | add edx,text |
1910 | add edx,text |
1762 | mov esi,1 |
1911 | mov esi,1 |
1763 | int 0x40 |
1912 | int 0x40 |
1764 | 1913 | ||
1765 | call draw_cpu_usage |
1914 | call draw_cpu_usage |
1766 | 1915 | ||
1767 | _ret: |
1916 | _ret: |
1768 | 1917 | ||
1769 | cmp [minimize_right],0 |
1918 | cmp [minimize_right],0 |
1770 | jne no_m_r2 |
1919 | jne no_m_r2 |
1771 | sub [maxx],10 |
1920 | sub [maxx],10 |
1772 | no_m_r2: |
1921 | no_m_r2: |
1773 | 1922 | ||
1774 | no_setup: |
1923 | no_setup: |
1775 | 1924 | ||
1776 | popa |
1925 | popa |
1777 | ret |
1926 | ret |
1778 | 1927 | ||
1779 | 1928 | ||
1780 | 1929 | ||
1781 | draw_cpu_usage: |
1930 | draw_cpu_usage: |
1782 | 1931 | ||
1783 | pusha |
1932 | pusha |
1784 | 1933 | ||
1785 | mov [ysi],30 |
1934 | mov [ysi],30 |
1786 | cmp [graph_text],1 |
1935 | cmp [graph_text],1 |
1787 | jne @f |
1936 | jne @f |
1788 | mov [ysi],10 |
1937 | mov [ysi],10 |
1789 | @@: |
1938 | @@: |
1790 | 1939 | ||
1791 | 1940 | ||
1792 | mov eax,18 ; TSC / SEC |
1941 | mov eax,18 ; TSC / SEC |
1793 | mov ebx,5 |
1942 | mov ebx,5 |
1794 | int 0x40 |
1943 | int 0x40 |
1795 | shr eax,20 |
1944 | shr eax,20 |
1796 | push eax |
1945 | push eax |
1797 | mov eax,18 ; IDLE / SEC |
1946 | mov eax,18 ; IDLE / SEC |
1798 | mov ebx,4 |
1947 | mov ebx,4 |
1799 | int 0x40 |
1948 | int 0x40 |
1800 | shr eax,20 |
1949 | shr eax,20 |
1801 | xor edx,edx |
1950 | xor edx,edx |
1802 | imul eax,[ysi] |
1951 | imul eax,[ysi] |
1803 | 1952 | ||
1804 | cdq |
1953 | cdq |
1805 | pop ebx |
1954 | pop ebx |
1806 | inc ebx |
1955 | inc ebx |
1807 | div ebx |
1956 | div ebx |
1808 | push eax |
1957 | push eax |
1809 | 1958 | ||
1810 | mov eax,13 |
1959 | mov eax,13 |
1811 | mov ebx,[maxx] |
1960 | mov ebx,[maxx] |
1812 | sub ebx,60 ;;65 |
1961 | sub ebx,60 ;;65 |
1813 | shl ebx,16 |
1962 | shl ebx,16 |
1814 | mov bx,8 |
1963 | mov bx,8 |
1815 | push ebx |
1964 | push ebx |
1816 | mov eax,13 |
1965 | mov eax,13 |
1817 | mov ecx,5*65536 |
1966 | mov ecx,5*65536 |
1818 | add cx,word [ysi] |
1967 | add cx,word [ysi] |
1819 | inc cx |
1968 | inc cx |
1820 | 1969 | ||
1821 | push ebx |
1970 | push ebx |
1822 | inc ecx |
1971 | inc ecx |
1823 | sub ebx,1 shl 16 |
1972 | sub ebx,1 shl 16 |
1824 | add ebx,2 |
1973 | add ebx,2 |
1825 | xor edx,edx |
1974 | xor edx,edx |
1826 | int 0x40 |
1975 | int 0x40 |
1827 | dec ecx |
1976 | dec ecx |
1828 | pop ebx |
1977 | pop ebx |
1829 | 1978 | ||
1830 | mov edx,0xff0000 ;[wcolor] |
1979 | mov edx,0xff0000 ;[wcolor] |
1831 | ; sub edx,0x303030 |
1980 | ; sub edx,0x303030 |
1832 | int 0x40 |
1981 | int 0x40 |
1833 | pop ebx |
1982 | pop ebx |
1834 | pop eax |
1983 | pop eax |
1835 | 1984 | ||
1836 | ; push ebx |
1985 | ; push ebx |
1837 | inc eax |
1986 | inc eax |
1838 | mov ecx,5*65536 |
1987 | mov ecx,5*65536 |
1839 | mov cx,ax |
1988 | mov cx,ax |
1840 | ; pop ebx |
1989 | ; pop ebx |
1841 | push ecx |
1990 | push ecx |
1842 | push ebx |
1991 | push ebx |
1843 | sub ecx,1 shl 16 |
1992 | sub ecx,1 shl 16 |
1844 | add ecx,1 |
1993 | add ecx,1 |
1845 | sub ebx,1 shl 16 |
1994 | sub ebx,1 shl 16 |
1846 | add ebx,2 |
1995 | add ebx,2 |
1847 | mov eax,13 |
1996 | mov eax,13 |
1848 | xor edx,edx |
1997 | xor edx,edx |
1849 | int 0x40 |
1998 | int 0x40 |
1850 | pop ebx |
1999 | pop ebx |
1851 | pop ecx |
2000 | pop ecx |
1852 | mov edx,0x44aa44 ;[wcolor] |
2001 | mov edx,0x44aa44 ;[wcolor] |
1853 | ; add edx,0x00101010 |
2002 | ; add edx,0x00101010 |
1854 | int 0x40 |
2003 | int 0x40 |
1855 | 2004 | ||
1856 | popa |
2005 | popa |
1857 | 2006 | ||
1858 | ret |
2007 | ret |
1859 | - | ||
1860 | - | ||
1861 | - | ||
1862 | 2008 | ||
1863 | ; DATA |
2009 | ; DATA |
1864 | 2010 | ||
1865 | stripe: |
2011 | stripe: |
1866 | dd -0x010101 |
2012 | dd -0x010101 |
1867 | dd -0x010101 |
2013 | dd -0x010101 |
1868 | dd -0x020202 |
2014 | dd -0x020202 |
1869 | dd -0x010101 |
2015 | dd -0x010101 |
1870 | dd -0x000000 |
2016 | dd -0x000000 |
1871 | 2017 | ||
1872 | dd 0x000000 |
2018 | dd 0x000000 |
1873 | dd 0x010101 |
2019 | dd 0x010101 |
1874 | dd 0x020202 |
2020 | dd 0x020202 |
1875 | dd 0x010101 |
2021 | dd 0x010101 |
1876 | dd 0x010101 |
2022 | dd 0x010101 |
1877 | 2023 | ||
1878 | m_icon: |
2024 | m_icon: |
1879 | dd 0x0 |
2025 | dd 0x0 |
1880 | dd 0x808080 |
2026 | dd 0x808080 |
1881 | dd 0x000000 |
2027 | dd 0x000000 |
1882 | dd 0x000000 |
2028 | dd 0x000000 |
1883 | dd 0xffffff |
2029 | dd 0xffffff |
1884 | 2030 | ||
1885 | 2031 | ||
1886 | lsz m_text,\ |
2032 | lsz m_text,\ |
1887 | ru, " ",\ |
2033 | ru, " ",\ |
1888 | en, "MENU" |
2034 | en, "MENU" |
1889 | 2035 | ||
1890 | mi_text db 'WAVETETRBGRDGPL ' |
2036 | mi_text db 'WAVETETRBGRDGPL ' |
1891 | 2037 | ||
1892 | flag_text db 'EnFiGeRuFr' |
2038 | flag_text db 'EnFiGeRuFr' |
1893 | 2039 | ||
1894 | type_lang db 0 |
2040 | type_lang db 0 |
1895 | ;music_type db 1 |
2041 | ;music_type db 1 |
1896 | sound_flag db 0 |
2042 | sound_flag db 0 |
1897 | button_frames dd 0x0 |
2043 | button_frames dd 0x0 |
1898 | 2044 | ||
1899 | checks dd -1 |
2045 | checks dd -1 |
1900 | hidetext db 0x11,0x10,0x1e |
2046 | hidetext db 0x11,0x10,0x1e |
1901 | iconf db 'MBAR_IX BMP' |
2047 | iconf db 'MBAR_IX BMP' |
1902 | m_bmp db 'MENUET BMP' |
2048 | m_bmp db 'MENUET BMP' |
1903 | 2049 | ||
1904 | sysmeter db 'SYSMETER ' |
2050 | sysmeter db 'SYSMETER ' |
1905 | file_end db 'END ' |
2051 | file_end db 'END ' |
1906 | file_sys db 'SETUP ' |
2052 | file_sys db 'SETUP ' |
1907 | filename db 'MENU ' |
2053 | filename db 'MENU ' |
1908 | turn_text db '><' |
2054 | turn_text db '><' |
1909 | ;file1 db 'SB ' |
2055 | ;file1 db 'SB ' |
1910 | ;file2 db 'TETRIS ' |
2056 | ;file2 db 'TETRIS ' |
1911 | ;file3 db 'PIC4 ' |
2057 | ;file3 db 'PIC4 ' |
1912 | ;file4 db 'TINYPAD ' |
2058 | ;file4 db 'TINYPAD ' |
1913 | ;file4_par db 'COPYING.TXT',0 |
2059 | ;file4_par db 'COPYING.TXT',0 |
1914 | ;file5 db 'MFASM ' |
2060 | ;file5 db 'MFASM ' |
1915 | file6 db 'CALENDAR ' |
2061 | file6 db 'CALENDAR ' |
1916 | gpl db 'GPL' |
2062 | gpl db 'GPL' |
1917 | 2063 | ||
1918 | chlang db 'LANG',0 |
2064 | chlang db 'LANG',0 |
1919 | syslang db 'SLAN',0 |
2065 | syslang db 'SLAN',0 |
1920 | 2066 | ||
1921 | contrast db 0 |
2067 | contrast db 0 |
1922 | 2068 | ||
1923 | running_applications dd 0x100 |
2069 | running_applications dd 0x100 |
1924 | max_applications dd 11 |
2070 | max_applications dd 11 |
- | 2071 | ||
- | 2072 | page_list dd 0 |
|
- | 2073 | draw_start_position dd 0 |
|
- | 2074 | draw_window_1 db 0 |
|
1925 | 2075 | ||
1926 | b_size_y: dd 0x0 |
2076 | b_size_y: dd 0x0 |
1927 | ysi dd 0 |
2077 | ysi dd 0 |
1928 | small_draw dd 0x0 |
2078 | small_draw dd 0x0 |
1929 | 2079 | ||
1930 | ptime dd 0x0 |
2080 | ptime dd 0x0 |
1931 | maxx dd 0x0 |
2081 | maxx dd 0x0 |
1932 | text db '0123456789' |
2082 | text db '0123456789' |
- | 2083 | page_a1 db '< >' |
|
1933 | bte dd 0xccddee |
2084 | bte dd 0xccddee |
1934 | 2085 | ||
1935 | wcolor dd 0x506070 |
2086 | wcolor dd 0x506070 |
1936 | 2087 | ||
1937 | sec db ': ' |
2088 | sec db ': ' |
1938 | pros db ' ' |
2089 | pros db ' ' |
1939 | db ' ' |
2090 | db ' ' |
1940 | 2091 | ||
1941 | screenxy dd 0x0 |
2092 | screenxy dd 0x0 |
1942 | stcount dd 0x0 |
2093 | stcount dd 0x0 |
1943 | 2094 | ||
1944 | I_END: |
2095 | I_END: |
- | 2096 | ||
- | 2097 | screen_size: |
|
- | 2098 | .height dw ? |
|
- | 2099 | .width dw ? |
|
- | 2100 | ||
1945 | area9 rb 100 |
2101 | area9 rb 100 |
1946 | system_colours rd 10 |
2102 | system_colours rd 10 |
1947 | app_list rd 50 |
2103 | app_list rd 50 |
1948 | tictable: |
2104 | tictable: |
1949 | rd 256 |
2105 | rd 256 |
1950 | image:' |
2106 | image:>' |
1951 | ;file1>3,11>390,70> |
2107 | ;file1>3,11>390,70> |