Rev 4330 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4330 | Rev 8236 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | ;£à®¬ ï ¡« £®¤ à®áâì Maxxxx32, Diamond, Heavyiron |
1 | ;£à®¬ ï ¡« £®¤ à®áâì Maxxxx32, Diamond, Heavyiron |
2 | ;¨ ¤à㣨¬ ¯à®£à ¬¬¨áâ ¬, â ª¦¥ |
2 | ;¨ ¤à㣨¬ ¯à®£à ¬¬¨áâ ¬, â ª¦¥ |
3 | ;¥¯«®¢ã «¥ªá¥î ( |
3 | ;¥¯«®¢ã «¥ªá¥î ( |
4 | use32 |
4 | use32 |
5 | org 0x0 |
5 | org 0 |
6 | db 'MENUET01' ;¨¤¥â¨ä. ¨á¯®«ï¥¬®£® ä ©« ¢á¥£¤ 8 ¡ ©â |
6 | db 'MENUET01' ;¨¤¥â¨ä. ¨á¯®«ï¥¬®£® ä ©« ¢á¥£¤ 8 ¡ ©â |
7 | dd 0x1 |
- | |
8 | dd start |
- | |
9 | dd i_end ; à §¬¥à ¯à¨«®¦¥¨ï |
7 | dd 0,start,i_end,mem,stacktop,0,cur_dir_path |
10 | dd mem |
- | |
11 | dd stacktop |
- | |
12 | dd 0x0 ;library_path |
- | |
13 | dd cur_dir_path |
- | |
Line -... | Line 8... | ||
- | 8 | ||
14 | 9 | include '../../KOSfuncs.inc' |
|
- | 10 | include '../../macros.inc' |
|
15 | include '../../macros.inc' |
11 | include '../../proc32.inc' |
16 | include '../../develop/libraries/box_lib/load_lib.mac' |
12 | include '../../load_lib.mac' |
Line 17... | Line 13... | ||
17 | include 'lang.inc' |
13 | include 'lang.inc' |
Line 18... | Line 14... | ||
18 | 14 | ||
19 | @use_library |
15 | @use_library |
- | 16 | ||
Line 20... | Line -... | ||
20 | - | ||
21 | align 4 |
- | |
22 | start: |
- | |
23 | - | ||
24 | mov eax,40 |
17 | align 4 |
25 | mov ebx,0x25 ;¬ ᪠®¦¨¤ ¥¬ëå ᮡë⨩ |
- | |
Line 26... | Line 18... | ||
26 | mcall |
18 | start: |
27 | 19 | mcall SF_SET_EVENTS_MASK,0x25 ;¬ ᪠®¦¨¤ ¥¬ëå ᮡë⨩ |
|
Line 28... | Line 20... | ||
28 | sys_load_library msgbox_name, cur_dir_path, library_path, system_path, \ |
20 | |
29 | err_message_found_lib, head_f_l, msgbox_lib_import, err_message_import, head_f_i |
21 | sys_load_library msgbox_name, library_path, system_path, msgbox_lib_import |
30 | 22 | ||
31 | 23 | ||
32 | red_win: |
24 | red_win: |
33 | mcall 12,1 |
25 | mcall SF_REDRAW,SSF_BEGIN_DRAW |
34 | 26 | ||
Line 35... | Line 27... | ||
35 | xor eax,eax |
27 | xor eax,eax |
36 | mov ebx,50*65536+200 |
28 | mov ebx,50*65536+200 |
37 | mov ecx,30*65536+170 |
29 | mov ecx,30*65536+170 |
38 | mov edx,0xffffd0 |
30 | mov edx,0xffffd0 |
39 | or edx,0x33000000 |
31 | or edx,0x33000000 |
40 | mov edi,hed |
32 | mov edi,hed |
Line 69... | Line 61... | ||
69 | 61 | ||
70 | mov eax,4 ;à¨á®¢ ¨¥ ⥪áâ |
62 | mov eax,4 ;à¨á®¢ ¨¥ ⥪áâ |
71 | mov ebx,50*65536+115 |
63 | mov ebx,50*65536+115 |
72 | mov ecx,0x4000d0 |
64 | mov ecx,0x4000d0 |
73 | or ecx,0x80000000 |
65 | or ecx,0x80000000 |
74 | mov edx,txt140 |
66 | mov edx,txt5 |
Line 75... | Line 67... | ||
75 | mcall |
67 | mcall |
76 | 68 | ||
77 | mov ebx,50*65536+90 |
69 | mov ebx,50*65536+90 |
Line 78... | Line 70... | ||
78 | mov edx,txt139 |
70 | mov edx,txt4 |
79 | mcall |
71 | mcall |
80 | 72 | ||
Line 81... | Line 73... | ||
81 | mov ebx,50*65536+65 |
73 | mov ebx,50*65536+65 |
82 | mov edx,txt138 |
74 | mov edx,txt3 |
83 | mcall |
75 | mcall |
Line 84... | Line 76... | ||
84 | 76 | ||
85 | mov ebx,50*65536+40 |
77 | mov ebx,50*65536+40 |
86 | mov edx,txt137 |
78 | mov edx,txt2 |
Line 87... | Line 79... | ||
87 | mcall |
79 | mcall |
88 | 80 | ||
89 | mov ebx,50*65536+15 |
81 | mov ebx,50*65536+15 |
90 | mov edx,txt136 |
82 | mov edx,txt1 |
91 | mcall |
83 | mcall |
Line 92... | Line 84... | ||
92 | 84 | ||
93 | push eax ebx ecx edx esi |
85 | push eax ebx ecx edx esi |
Line 120... | Line 112... | ||
120 | add dx,25 |
112 | add dx,25 |
121 | int 0x40 |
113 | int 0x40 |
Line 122... | Line 114... | ||
122 | 114 | ||
123 | pop esi edx ecx ebx eax |
115 | pop esi edx ecx ebx eax |
124 | call draw_square |
116 | call draw_square |
Line -... | Line 117... | ||
- | 117 | mcall SF_REDRAW,SSF_END_DRAW |
|
125 | mcall 12,2 |
118 | |
126 | - | ||
127 | still: |
119 | align 4 |
Line 128... | Line 120... | ||
128 | mov eax,10 |
120 | still: |
129 | mcall |
121 | mcall SF_WAIT_EVENT |
130 | 122 | ||
131 | cmp al,1 ;¨§¬. ¯®«®¦¥¨¥ ®ª |
123 | cmp al,1 ;¨§¬. ¯®«®¦¥¨¥ ®ª |
132 | jz red_win |
124 | jz red_win |
Line 133... | Line 125... | ||
133 | cmp al,3 |
125 | cmp al,3 |
134 | jz button |
126 | jz button |
Line 135... | Line 127... | ||
135 | jmp still |
127 | jmp still |
136 | 128 | ||
137 | button: |
129 | button: |
138 | mcall 17 ;¯®«ãç¨âì ª®¤ ¦ ⮩ ª®¯ª¨ |
130 | mcall SF_GET_BUTTON |
Line 149... | Line 141... | ||
149 | jz but_5 |
141 | jz but_5 |
Line 150... | Line 142... | ||
150 | 142 | ||
151 | cmp ah,1 |
143 | cmp ah,1 |
152 | jne still |
144 | jne still |
153 | .exit: |
145 | .exit: |
Line 154... | Line 146... | ||
154 | mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë |
146 | mcall SF_TERMINATE_PROCESS |
155 | - | ||
156 | but_1: |
- | |
157 | push thread |
147 | |
158 | push msgbox_1 |
148 | but_1: |
Line 159... | Line 149... | ||
159 | call [mb_create] |
149 | stdcall [mb_create],msgbox_1,thread |
160 | jmp still |
- | |
161 | - | ||
162 | but_2: |
150 | jmp still |
163 | push thread |
- | |
164 | push msgbox_2 |
- | |
165 | call [mb_create] |
- | |
166 | ;mov eax,5 |
- | |
167 | ;mov ebx,50 |
151 | |
168 | ;int 0x40 |
152 | but_2: |
Line 169... | Line 153... | ||
169 | push msgbox_2_funct |
153 | stdcall [mb_create],msgbox_2,thread |
170 | call [mb_setfunctions] |
- | |
171 | jmp still |
- | |
172 | 154 | stdcall [mb_setfunctions],msgbox_2_funct |
|
173 | but_3: |
155 | jmp still |
Line 174... | Line 156... | ||
174 | push thread |
156 | |
175 | push msgbox_3 |
- | |
176 | call [mb_create] |
- | |
177 | jmp still |
157 | but_3: |
178 | 158 | stdcall [mb_create],msgbox_3,thread |
|
Line 179... | Line 159... | ||
179 | but_4: |
159 | jmp still |
180 | push thread |
- | |
181 | push msgbox_4 |
- | |
182 | call [mb_create] |
160 | |
183 | jmp still |
- | |
184 | 161 | but_4: |
|
185 | but_5: |
- | |
186 | push thread |
- | |
187 | push msgbox_5 |
162 | stdcall [mb_create],msgbox_4,thread |
188 | call [mb_create] |
- | |
189 | 163 | jmp still |
|
Line 190... | Line 164... | ||
190 | mcall 5,100 ;stop program |
164 | |
191 | 165 | but_5: |
|
192 | push msgbox_5_2 |
166 | stdcall [mb_create],msgbox_5,thread |
193 | call [mb_reinit] |
167 | mcall SF_SLEEP,100 ;stop program |
194 | 168 | stdcall [mb_reinit],msgbox_5_2 |
|
195 | jmp still |
169 | jmp still |
196 | 170 | ||
197 | if lang eq ru |
171 | if lang eq ru |
198 | txt136 db '¯à®á⮥',0 |
172 | txt1 db '¯à®á⮥',0 |
199 | txt137 db '3 ª®¯ª¨',0 |
173 | txt2 db '3 ª®¯ª¨',0 |
200 | txt138 db '3 áâப¨',0 |
174 | txt3 db '3 áâப¨',0 |
201 | txt139 db '¡®«ì讥',0 |
175 | txt4 db '¡®«ì讥',0 |
202 | txt140 db 'mb_reinit',0 |
176 | txt5 db 'mb_reinit',0 |
203 | hed db 'ਬ¥à ¨á¯®«ì§®¢ ¨ï MsgBox',0 |
177 | hed db 'ਬ¥à ¨á¯®«ì§®¢ ¨ï MsgBox',0 |
204 | else |
178 | else |
205 | txt136 db 'Simple',0 |
179 | txt1 db 'Simple',0 |
Line 238... | Line 212... | ||
238 | db 'Cancel',0 ;button2 |
212 | db 'Cancel',0 ;button2 |
239 | db 'Help',0 ;button3 |
213 | db 'Help',0 ;button3 |
240 | end if |
214 | end if |
241 | db 0 |
215 | db 0 |
242 | msgbox_2_funct: |
216 | msgbox_2_funct: |
243 | dd 0 |
- | |
244 | dd 0 |
- | |
245 | dd fun_show_help |
217 | dd 0,0,fun_show_help |
Line 246... | Line 218... | ||
246 | 218 | ||
247 | msgbox_3: |
219 | msgbox_3: |
248 | dw 0 |
220 | dw 0 |
249 | db 'MBox 3 lines',0 ;+2 = +MB_TEXT_OFFSET |
221 | db 'MBox 3 lines',0 ;+2 = +MB_TEXT_OFFSET |
250 | if lang eq ru |
222 | if lang eq ru |
251 | db 'âப 1',13,'âப 2',13,'âப 3',0 |
223 | db 'âப 1',13,'âப 2',13,'âப 3',0 |
252 | db '2009 £.',0 ;button1 |
224 | db '2020 £.',0 ;button1 |
253 | else |
225 | else |
254 | db 'Line 1',13,'Line 2',13,'Line 3',0 |
226 | db 'Line 1',13,'Line 2',13,'Line 3',0 |
255 | db 'Year 2009',0 ;button1 |
227 | db 'Year 2020',0 ;button1 |
256 | end if |
228 | end if |
257 | db 0 |
229 | db 0 |
258 | msgbox_4: |
230 | msgbox_4: |
259 | dw 0 |
231 | dw 0 |
Line 280... | Line 252... | ||
280 | db ' @.......@@......@@......@ @@',13 |
252 | db ' @.......@@......@@......@ @@',13 |
281 | db ' @......@....@..@....@.....@@..@',13 |
253 | db ' @......@....@..@....@.....@@..@',13 |
282 | db ' @......@....@..@....@.........@',13 |
254 | db ' @......@....@..@....@.........@',13 |
283 | db ' @@@@@@@@@@@@@@@@@@@@@@@@@@@@@',0 |
255 | db ' @@@@@@@@@@@@@@@@@@@@@@@@@@@@@',0 |
284 | if lang eq ru |
256 | if lang eq ru |
285 | db '',0 |
- | |
286 | db 'â',0 |
- | |
287 | db 'à',0 |
- | |
288 | db 'â',0 |
- | |
289 | db 'â',0 |
- | |
290 | db '¡',0 |
- | |
291 | db '®áªà¥á¥¨¥',0 |
257 | db '',0,'â',0,'à',0,'â',0,'â',0,'¡',0,'®áªà¥á¥¨¥',0 |
292 | else |
258 | else |
293 | db 'Sun',0 |
- | |
294 | db 'Mon',0 |
- | |
295 | db 'Tue',0 |
- | |
296 | db 'Wed',0 |
- | |
297 | db 'Thu',0 |
- | |
298 | db 'Fri',0 |
- | |
299 | db 'Sat',0 |
259 | db 'Sun',0,'Mon',0,'Tue',0,'Wed',0,'Thu',0,'Fri',0,'Sat',0 |
300 | end if |
260 | end if |
301 | db 0 |
261 | db 0 |
302 | msgbox_5: |
262 | msgbox_5: |
303 | dw 0 |
263 | dw 0 |
304 | if lang eq ru |
264 | if lang eq ru |
Line 308... | Line 268... | ||
308 | db 'à¥à¢ âì',0 |
268 | db 'à¥à¢ âì',0 |
309 | else |
269 | else |
310 | db 'Message',0 ;+2 = +MB_TEXT_OFFSET |
270 | db 'Message',0 ;+2 = +MB_TEXT_OFFSET |
311 | db 'Running process ...',0 |
271 | db 'Running process ...',0 |
312 | db 'Stop',0 |
272 | db 'Stop',0 |
313 | db 'Abort',0 |
273 | db 'Terminate',0 |
314 | end if |
274 | end if |
315 | db 0 |
275 | db 0 |
316 | msgbox_5_2: |
276 | msgbox_5_2: |
317 | dw 0 |
277 | dw 0 |
318 | if lang eq ru |
278 | if lang eq ru |
Line 337... | Line 297... | ||
337 | amb_reinit db 'mb_reinit',0 |
297 | amb_reinit db 'mb_reinit',0 |
338 | amb_setfunctions db 'mb_setfunctions',0 |
298 | amb_setfunctions db 'mb_setfunctions',0 |
339 | ;-------------------------------------------------- |
299 | ;-------------------------------------------------- |
340 | system_path db '/sys/lib/' |
300 | system_path db '/sys/lib/' |
341 | msgbox_name db 'msgbox.obj',0 |
301 | msgbox_name db 'msgbox.obj',0 |
342 | err_message_found_lib db 'Sorry I cannot load library msgbox.obj',0 |
- | |
343 | head_f_i: |
- | |
344 | head_f_l db 'System error',0 |
- | |
345 | err_message_import db 'Error on load import library msgbox.obj',0 |
- | |
346 | ;-------------------------------------------------- |
302 | ;-------------------------------------------------- |
Line 347... | Line 303... | ||
347 | 303 | ||
348 | draw_square: |
304 | draw_square: |
349 | cmp byte[sh_help],0 |
305 | cmp byte[sh_help],0 |
350 | je @f |
306 | je @f |
351 | push eax ebx ecx edx |
307 | push eax ebx ecx edx |
352 | mov eax,13 ;à¨á®¢ ¨¥ ¯àאַ㣮«ì¨ª |
- | |
353 | mov ebx,105*65536+70 |
- | |
354 | mov ecx,15*65536+50 |
- | |
355 | mov edx,0x8080ff |
- | |
356 | int 0x40 |
- | |
357 | - | ||
358 | mov eax,4 ;à¨á®¢ ¨¥ ⥪áâ |
308 | mcall SF_DRAW_RECT, 105*65536+70, 15*65536+50, 0x8080ff |
359 | mov ebx,110*65536+25 |
- | |
360 | mov ecx,0xffffff |
- | |
361 | mov edx,txt_help |
- | |
362 | mov esi,9 |
- | |
Line 363... | Line -... | ||
363 | mcall |
- | |
364 | 309 | mcall SF_DRAW_TEXT, 110*65536+25, 0xffffff, txt_help |
|
365 | mov eax,47 |
310 | |
366 | mov esi,0xffff |
- | |
367 | mov ebx,0x10000 ;format |
311 | mov esi,0xffff |
368 | xor ecx,ecx |
312 | mov ebx,0x10000 ;format |
369 | mov cl,byte[sh_help] |
313 | movzx ecx,byte[sh_help] |
370 | mov dx,150 |
- | |
371 | shl edx,16 |
- | |
Line 372... | Line 314... | ||
372 | mov dx,40 |
314 | mov edx,(150 shl 16)+40 |
373 | int 0x40 |
315 | mcall SF_DRAW_NUMBER |
374 | 316 | ||
375 | pop edx ecx ebx eax |
317 | pop edx ecx ebx eax |
Line 388... | Line 330... | ||
388 | txt_help db '®¬®éì...' |
330 | txt_help db '®¬®éì...' |
389 | else |
331 | else |
390 | txt_help db 'Help...' |
332 | txt_help db 'Help...' |
391 | end if |
333 | end if |
Line -... | Line 334... | ||
- | 334 | ||
392 | 335 | align 16 |
|
393 | i_end: ;ª®¥æ ª®¤ |
336 | i_end: ;ª®¥æ ª®¤ |
394 | rb 1024 |
337 | rb 1024 |
395 | thread: |
338 | thread: |
396 | rb 1024 |
339 | rb 1024 |