Rev 5388 | Rev 7205 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5388 | Rev 6259 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | use32 |
1 | use32 |
2 | org 0x0 |
2 | org 0x0 |
3 | db 'MENUET01' ;¨¤¥â¨ä. ¨á¯®«ï¥¬®£® ä ©« ¢á¥£¤ 8 ¡ ©â |
3 | db 'MENUET01' ;¨¤¥â¨ä. ¨á¯®«ï¥¬®£® ä ©« ¢á¥£¤ 8 ¡ ©â |
4 | dd 0x1 |
- | |
5 | dd start |
- | |
6 | dd i_end ;à §¬¥à ¯à¨«®¦¥¨ï |
4 | dd 1, start, i_end, mem, stacktop, 0, sys_path |
7 | dd mem |
- | |
8 | dd stacktop |
- | |
9 | dd 0 |
- | |
10 | dd sys_path |
- | |
Line 11... | Line 5... | ||
11 | 5 | ||
12 | include '../../../../programs/macros.inc' |
6 | include '../../../../programs/macros.inc' |
13 | include '../../../../programs/proc32.inc' |
7 | include '../../../../programs/proc32.inc' |
14 | include '../../../../programs/develop/libraries/box_lib/load_lib.mac' |
8 | include '../../../../programs/KOSfuncs.inc' |
15 | include '../../../../programs/dll.inc' |
9 | include '../../../../programs/load_img.inc' |
16 | include '../trunk/vox_draw.inc' |
10 | include '../trunk/vox_draw.inc' |
17 | include '../trunk/vox_rotate.inc' |
11 | include '../trunk/vox_rotate.inc' |
Line 18... | Line 12... | ||
18 | include '../trunk/str.inc' |
12 | include '../trunk/str.inc' |
19 | 13 | ||
20 | @use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load |
- | |
21 | caption db 'Voxel mover 29.01.15',0 ;¯®¤¯¨áì ®ª |
- | |
22 | - | ||
23 | struct FileInfoBlock |
- | |
24 | Function dd ? |
- | |
25 | Position dd ? |
- | |
26 | Flags dd ? |
- | |
27 | Count dd ? |
- | |
28 | Buffer dd ? |
- | |
29 | db ? |
- | |
Line 30... | Line 14... | ||
30 | FileName dd ? |
14 | @use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load |
31 | ends |
- | |
Line 32... | Line 15... | ||
32 | 15 | caption db 'Voxel mover 19.02.16',0 ;¯®¤¯¨áì ®ª |
|
33 | run_file_70 FileInfoBlock |
- | |
34 | image_data dd 0 ;㪠§ â¥«ì ¢à¥¬¥ãî ¯ ¬ïâì. ¤«ï 㦥 ¯à¥®¡à §®¢ ¨ï ¨§®¡à ¦¥¨ï |
16 | |
Line 35... | Line 17... | ||
35 | 17 | run_file_70 FileInfoBlock |
|
36 | IMAGE_TOOLBAR_ICON_SIZE equ 16*16*3 |
18 | |
37 | IMAGE_TOOLBAR_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*18 |
19 | IMAGE_TOOLBAR_ICON_SIZE equ 16*16*3 |
Line 60... | Line 42... | ||
60 | key_s_zoom db 's_zoom',0 |
42 | key_s_zoom db 's_zoom',0 |
61 | key_t_size db 'tile_size',0 |
43 | key_t_size db 'tile_size',0 |
62 | key_f_size db 'file_size',0 |
44 | key_f_size db 'file_size',0 |
63 | key_col_b db 'c_background',0 |
45 | key_col_b db 'c_background',0 |
Line 64... | Line -... | ||
64 | - | ||
65 | macro load_image_file path,buf,size { ;¬ ªà®á ¤«ï § £à㧪¨ ¨§®¡à ¦¥¨© |
- | |
66 | ;path - ¬®¦¥â ¡ëâì ¯¥à¥¬¥®© ¨«¨ áâப®¢ë¬ ¯ à ¬¥â஬ |
- | |
67 | if path eqtype '' ;¯à®¢¥à塞 § ¤ «¨ áâப®© ¯ à ¬¥âà path |
- | |
68 | jmp @f |
- | |
69 | local .path_str |
- | |
70 | .path_str db path ;ä®à¬¨à㥬 «®ª «ìãî ¯¥à¥¬¥ãî |
- | |
71 | db 0 |
- | |
72 | @@: |
- | |
73 | ;32 - áâ ¤ àâë© ¤à¥á ¯® ª®â®à®¬ã ¤®«¦¥ ¡ëâì ¡ãä¥à á á¨áâ¥¬ë¬ ¯ã⥬ |
- | |
74 | copy_path .path_str,[32],file_name,0x0 |
- | |
75 | else |
- | |
76 | copy_path path,[32],file_name,0x0 ;ä®à¬¨à㥬 ¯®«ë© ¯ãâì ª ä ©«ã ¨§®¡à ¦¥¨ï, ¯®¤à §ã¬¥¢ ¥¬ çâ® ® ¢ ®¤®© ¯ ¯ª¥ á ¯à®£à ¬¬®© |
- | |
77 | end if |
- | |
78 | - | ||
79 | stdcall mem.Alloc, dword size ;¢ë¤¥«ï¥¬ ¯ ¬ïâì ¤«ï ¨§®¡à ¦¥¨ï |
- | |
80 | mov [buf],eax |
- | |
81 | - | ||
82 | mov eax,70 ;70-ï äãªæ¨ï à ¡®â á ä ©« ¬¨ |
- | |
83 | mov [run_file_70.Function], 0 |
- | |
84 | mov [run_file_70.Position], 0 |
- | |
85 | mov [run_file_70.Flags], 0 |
- | |
86 | mov [run_file_70.Count], dword size |
- | |
87 | m2m [run_file_70.Buffer], [buf] |
- | |
88 | mov byte[run_file_70+20], 0 |
- | |
89 | mov [run_file_70.FileName], file_name |
- | |
90 | mov ebx,run_file_70 |
- | |
91 | int 0x40 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥¨ï |
- | |
92 | cmp ebx,0xffffffff |
- | |
93 | je @f |
- | |
94 | ;®¯à¥¤¥«ï¥¬ ¢¨¤ ¨§®¡à ¦¥¨ï ¨ ¯¥à¥¢®¤¨¬ ¥£® ¢® ¢à¥¬¥ë© ¡ãä¥à image_data |
- | |
95 | stdcall dword[img_decode], dword[buf],ebx,0 |
- | |
96 | mov dword[image_data],eax |
- | |
97 | ;¯à¥®¡à §ã¥¬ ¨§®¡à ¦¥¨¥ ª ä®à¬ âã rgb |
- | |
98 | stdcall dword[img_to_rgb2], dword[image_data],dword[buf] |
- | |
99 | ;㤠«ï¥¬ ¢à¥¬¥ë© ¡ãä¥à image_data |
- | |
100 | stdcall dword[img_destroy], dword[image_data] |
- | |
101 | @@: |
- | |
102 | } |
- | |
103 | 46 | ||
104 | OT_MAP_X equ 0 |
47 | OT_MAP_X equ 0 |
105 | OT_MAP_Y equ 0 |
48 | OT_MAP_Y equ 0 |
106 | OT_CAPT_X_COLOR equ 5 ;®âáâ㯠¤«ï ¯®¤¯¨á¨ 梥â |
49 | OT_CAPT_X_COLOR equ 5 ;®âáâ㯠¤«ï ¯®¤¯¨á¨ 梥â |
107 | OT_CAPT_Y_COLOR equ 30 |
50 | OT_CAPT_Y_COLOR equ 30 |
Line 114... | Line 57... | ||
114 | load_libraries l_libs_start,l_libs_end |
57 | load_libraries l_libs_start,l_libs_end |
115 | ;¯à®¢¥àª ᪮«ìª® ã¤ ç® § £ã§¨« áì ¡¨¡«¨®â¥ª |
58 | ;¯à®¢¥àª ᪮«ìª® ã¤ ç® § £ã§¨« áì ¡¨¡«¨®â¥ª |
116 | mov ebp,lib_2 |
59 | mov ebp,lib_2 |
117 | cmp dword [ebp+ll_struc_size-4],0 |
60 | cmp dword [ebp+ll_struc_size-4],0 |
118 | jz @f |
61 | jz @f |
119 | mcall -1 ;exit not correct |
62 | mcall SF_TERMINATE_PROCESS |
120 | @@: |
63 | @@: |
121 | mcall 48,3,sc,sizeof.system_colors |
64 | mcall SF_STYLE_SETTINGS,SSF_GET_COLORS,sc,sizeof.system_colors |
122 | mcall 40,0x27 |
65 | mcall SF_SET_EVENTS_MASK,0xC0000027 |
123 | stdcall [OpenDialog_Init],OpenDialog_data ;¯®¤£®â®¢ª ¤¨ «®£ |
66 | stdcall [OpenDialog_Init],OpenDialog_data ;¯®¤£®â®¢ª ¤¨ «®£ |
Line 124... | Line 67... | ||
124 | 67 | ||
125 | ;--- load ini file --- |
68 | ;--- load ini file --- |
126 | copy_path ini_name,sys_path,file_name,0 |
69 | copy_path ini_name,sys_path,file_name,0 |
Line 172... | Line 115... | ||
172 | stdcall [buf2d_create], buf_0z ;ᮧ¤ ¨¥ ¡ãä¥à £«ã¡¨ë |
115 | stdcall [buf2d_create], buf_0z ;ᮧ¤ ¨¥ ¡ãä¥à £«ã¡¨ë |
173 | stdcall [buf2d_create], buf_pl ;ᮧ¤ ¨¥ ¡ãä¥à ¤«ï á¥ç¥¨ï |
116 | stdcall [buf2d_create], buf_pl ;ᮧ¤ ¨¥ ¡ãä¥à ¤«ï á¥ç¥¨ï |
Line 174... | Line 117... | ||
174 | 117 | ||
Line 175... | Line 118... | ||
175 | stdcall [buf2d_vox_brush_create], buf_vox, vox_6_7_z |
118 | stdcall [buf2d_vox_brush_create], buf_vox, vox_6_7_z |
Line 176... | Line 119... | ||
176 | 119 | ||
177 | load_image_file 'toolbar_m.png', image_data_toolbar,IMAGE_TOOLBAR_SIZE |
120 | load_image_file 'toolbar_m.png', image_data_toolbar |
178 | 121 | ||
179 | stdcall mem.Alloc,[max_open_file_size] |
122 | stdcall mem.Alloc,[max_open_file_size] |
Line 188... | Line 131... | ||
188 | red_win: |
131 | red_win: |
189 | call draw_window |
132 | call draw_window |
Line 190... | Line 133... | ||
190 | 133 | ||
191 | align 4 |
134 | align 4 |
192 | still: |
135 | still: |
Line 193... | Line 136... | ||
193 | mcall 10 |
136 | mcall SF_WAIT_EVENT |
194 | 137 | ||
195 | cmp al,1 |
138 | cmp al,1 |
196 | jz red_win |
139 | jz red_win |
197 | cmp al,2 |
140 | cmp al,2 |
198 | jz key |
141 | jz key |
199 | cmp al,3 |
142 | cmp al,3 |
200 | jz button |
143 | jz button |
201 | cmp al,6 |
144 | cmp al,6 |
202 | jne @f |
145 | jne @f |
203 | mcall 9,procinfo,-1 |
146 | mcall SF_THREAD_INFO,procinfo,-1 |
204 | cmp ax,word[procinfo+4] |
147 | cmp ax,word[procinfo+4] |
205 | jne @f ;®ª® ¥ ªâ¨¢® |
148 | jne @f ;®ª® ¥ ªâ¨¢® |
206 | call mouse |
149 | call mouse |
Line 207... | Line 150... | ||
207 | @@: |
150 | @@: |
208 | jmp still |
151 | jmp still |
209 | 152 | ||
210 | align 4 |
153 | align 4 |
211 | mouse: |
154 | mouse: |
212 | pushad |
155 | pushad |
213 | mcall 37,2 |
156 | mcall SF_MOUSE_GET,SSF_BUTTON |
214 | bt eax,1 ;right button |
157 | bt eax,1 ;right button |
215 | jnc @f |
158 | jnc @f |
216 | mcall 37,1 ;get mouse coords |
159 | mcall SF_MOUSE_GET,SSF_WINDOW_POSITION |
217 | mov ebx,eax |
160 | mov ebx,eax |
218 | shr ebx,16 |
161 | shr ebx,16 |
219 | and eax,0xffff |
162 | and eax,0xffff |
220 | stdcall get_buf_color, buf_0 |
163 | stdcall get_buf_color, buf_0 |
221 | stdcall get_buf_color, buf_pl |
164 | stdcall get_buf_color, buf_pl |
222 | jmp .end_f |
165 | jmp .end_f |
223 | @@: |
166 | @@: |
224 | bt eax,0 ;left button |
167 | bt eax,0 ;left button |
225 | jnc .end_f |
168 | jnc .end_f |
226 | mcall 37,1 ;get mouse coords |
169 | mcall SF_MOUSE_GET,SSF_WINDOW_POSITION |
Line 227... | Line 170... | ||
227 | mov ebx,eax |
170 | mov ebx,eax |
Line 345... | Line 288... | ||
345 | ret |
288 | ret |
Line 346... | Line 289... | ||
346 | 289 | ||
347 | align 4 |
290 | align 4 |
348 | draw_window: |
291 | draw_window: |
349 | pushad |
292 | pushad |
Line 350... | Line 293... | ||
350 | mcall 12,1 |
293 | mcall SF_REDRAW,SSF_BEGIN_DRAW |
351 | 294 | ||
352 | ; *** à¨á®¢ ¨¥ £« ¢®£® ®ª (¢ë¯®«ï¥âáï 1 à § ¯à¨ § ¯ã᪥) *** |
295 | ; *** à¨á®¢ ¨¥ £« ¢®£® ®ª (¢ë¯®«ï¥âáï 1 à § ¯à¨ § ¯ã᪥) *** |
353 | mov edx,[sc.work] |
296 | mov edx,[sc.work] |
Line 354... | Line 297... | ||
354 | or edx,(3 shl 24)+0x30000000 |
297 | or edx,(3 shl 24)+0x30000000 |
355 | mcall 0,dword[wnd_s_pos],dword[wnd_s_pos+4],,,caption |
298 | mcall SF_CREATE_WINDOW,dword[wnd_s_pos],dword[wnd_s_pos+4],,,caption |
356 | 299 | ||
Line 357... | Line 300... | ||
357 | ; *** ᮧ¤ ¨¥ ª®¯®ª ¯ ¥«ì *** |
300 | ; *** ᮧ¤ ¨¥ ª®¯®ª ¯ ¥«ì *** |
358 | mov esi,[sc.work_button] |
301 | mov esi,[sc.work_button] |
359 | mcall 8,(5 shl 16)+20,(5 shl 16)+20,3 |
302 | mcall SF_DEFINE_BUTTON,(5 shl 16)+20,(5 shl 16)+20,3 |
360 | 303 | ||
Line 410... | Line 353... | ||
410 | mov edx,20 |
353 | mov edx,20 |
411 | int 0x40 |
354 | int 0x40 |
Line 412... | Line 355... | ||
412 | 355 | ||
413 | ; *** à¨á®¢ ¨¥ ¨ª®®ª ª®¯ª å *** |
356 | ; *** à¨á®¢ ¨¥ ¨ª®®ª ª®¯ª å *** |
414 | mov edx,(7 shl 16)+7 ;icon new |
357 | mov edx,(7 shl 16)+7 ;icon new |
Line 415... | Line 358... | ||
415 | mcall 7,[image_data_toolbar],(16 shl 16)+16 |
358 | mcall SF_PUT_IMAGE,[image_data_toolbar],(16 shl 16)+16 |
416 | 359 | ||
417 | add ebx,IMAGE_TOOLBAR_ICON_SIZE |
360 | add ebx,IMAGE_TOOLBAR_ICON_SIZE |
418 | add edx,(25 shl 16) ;icon open |
361 | add edx,(25 shl 16) ;icon open |
Line 469... | Line 412... | ||
469 | 412 | ||
470 | ; *** à¨á®¢ ¨¥ ¡ãä¥à®¢ *** |
413 | ; *** à¨á®¢ ¨¥ ¡ãä¥à®¢ *** |
471 | call draw_objects |
414 | call draw_objects |
Line 472... | Line 415... | ||
472 | call draw_pok |
415 | call draw_pok |
473 | 416 | ||
474 | mcall 12,2 |
417 | mcall SF_REDRAW,SSF_END_DRAW |
Line 475... | Line 418... | ||
475 | popad |
418 | popad |
476 | ret |
419 | ret |
477 | 420 | ||
478 | align 4 |
421 | align 4 |
479 | draw_pok: |
422 | draw_pok: |
480 | mov esi,[sc.work_button_text] |
423 | mov esi,[sc.work_button_text] |
481 | or esi,(1 shl 30) |
424 | or esi,(1 shl 30) |
482 | mov edi,[sc.work_button] |
425 | mov edi,[sc.work_button] |
483 | mcall 47, (3 shl 16)+(1 shl 31), [v_zoom], ((350+6*9) shl 16)+OT_CAPT_Y_COLOR+2 ;¬ áèâ ¡ |
426 | mcall SF_DRAW_NUMBER, (3 shl 16)+(1 shl 31), [v_zoom], ((350+6*9) shl 16)+OT_CAPT_Y_COLOR+2 ;¬ áèâ ¡ |
Line 484... | Line 427... | ||
484 | mov ecx,[n_plane] |
427 | mov ecx,[n_plane] |
Line 515... | Line 458... | ||
515 | stdcall str_cat, txt_mov_offs.size,txt_space ;§ ¢¥àè î騩 ¯à®¡¥« |
458 | stdcall str_cat, txt_mov_offs.size,txt_space ;§ ¢¥àè î騩 ¯à®¡¥« |
Line 516... | Line 459... | ||
516 | 459 | ||
517 | ;à¨á®¢ ¨¥ ⥪áâ |
460 | ;à¨á®¢ ¨¥ ⥪áâ |
518 | mov ecx,[sc.work_text] |
461 | mov ecx,[sc.work_text] |
519 | or ecx,0x80000000 ;or (1 shl 30) |
462 | or ecx,0x80000000 ;or (1 shl 30) |
Line 520... | Line 463... | ||
520 | mcall 4, (OT_CAPT_X_COLOR shl 16)+OT_CAPT_Y_COLOR+2,,txt_color |
463 | mcall SF_DRAW_TEXT, (OT_CAPT_X_COLOR shl 16)+OT_CAPT_Y_COLOR+2,,txt_color |
521 | 464 | ||
522 | mov edx,txt_curor |
465 | mov edx,txt_curor |
523 | add ebx,115 shl 16 |
466 | add ebx,115 shl 16 |
Line 543... | Line 486... | ||
543 | align 4 |
486 | align 4 |
544 | on_change_color: |
487 | on_change_color: |
545 | pushad |
488 | pushad |
546 | mov ebx,((OT_CAPT_X_COLOR+35) shl 16)+16 ;¯® ®á¨ x |
489 | mov ebx,((OT_CAPT_X_COLOR+35) shl 16)+16 ;¯® ®á¨ x |
547 | mov ecx,(OT_CAPT_Y_COLOR shl 16)+12 ;¯® ®á¨ y |
490 | mov ecx,(OT_CAPT_Y_COLOR shl 16)+12 ;¯® ®á¨ y |
548 | mcall 13,,,[v_color] |
491 | mcall SF_DRAW_RECT,,,[v_color] |
Line 549... | Line 492... | ||
549 | 492 | ||
550 | mov ecx,edx |
493 | mov ecx,edx |
551 | mov edx,((OT_CAPT_X_COLOR+55) shl 16)+OT_CAPT_Y_COLOR+2 |
494 | mov edx,((OT_CAPT_X_COLOR+55) shl 16)+OT_CAPT_Y_COLOR+2 |
552 | mov esi,[sc.work_text] |
495 | mov esi,[sc.work_text] |
553 | add esi,(1 shl 30) |
496 | add esi,(1 shl 30) |
554 | mov edi,[sc.work] |
497 | mov edi,[sc.work] |
555 | mcall 47,(1 shl 8)+(6 shl 16) |
498 | mcall SF_DRAW_NUMBER,(1 shl 8)+(6 shl 16) |
556 | popad |
499 | popad |
Line 557... | Line 500... | ||
557 | ret |
500 | ret |
558 | 501 | ||
559 | align 4 |
502 | align 4 |
560 | key: |
503 | key: |
Line 561... | Line 504... | ||
561 | mcall 2 |
504 | mcall SF_GET_KEY |
562 | jmp still |
505 | jmp still |
563 | 506 | ||
564 | 507 | ||
565 | align 4 |
508 | align 4 |
566 | button: |
509 | button: |
567 | mcall 17 |
510 | mcall SF_GET_BUTTON |
568 | cmp ah,3 |
511 | cmp ah,3 |
Line 657... | Line 600... | ||
657 | @@: |
600 | @@: |
658 | stdcall [buf2d_vox_brush_delete], buf_vox |
601 | stdcall [buf2d_vox_brush_delete], buf_vox |
659 | stdcall mem.Free,[image_data_toolbar] |
602 | stdcall mem.Free,[image_data_toolbar] |
660 | stdcall mem.Free,[open_file_vox] |
603 | stdcall mem.Free,[open_file_vox] |
661 | stdcall mem.Free,[moved_file_vox] |
604 | stdcall mem.Free,[moved_file_vox] |
662 | mcall -1 |
605 | mcall SF_TERMINATE_PROCESS |
Line 663... | Line 606... | ||
663 | 606 | ||
664 | ;¤ ë¥ ¤«ï ¨¨æ¨ «¨§ 樨 ¢®ªá¥«ì®£® ®¡ê¥ªâ |
607 | ;¤ ë¥ ¤«ï ¨¨æ¨ «¨§ 樨 ¢®ªá¥«ì®£® ®¡ê¥ªâ |
665 | align 4 |
608 | align 4 |
666 | vox_new_data: |
609 | vox_new_data: |
Line 691... | Line 634... | ||
691 | stdcall [OpenDialog_Start],OpenDialog_data |
634 | stdcall [OpenDialog_Start],OpenDialog_data |
692 | cmp [OpenDialog_data.status],2 |
635 | cmp [OpenDialog_data.status],2 |
693 | je .end_open_file |
636 | je .end_open_file |
694 | ;ª®¤ ¯à¨ 㤠箬 ®âªàë⨨ ¤¨ «®£ |
637 | ;ª®¤ ¯à¨ 㤠箬 ®âªàë⨨ ¤¨ «®£ |
Line 695... | Line -... | ||
695 | - | ||
696 | mov eax,70 ;70-ï äãªæ¨ï à ¡®â á ä ©« ¬¨ |
638 | |
697 | mov [run_file_70.Function], 0 |
639 | mov [run_file_70.Function], SSF_READ_FILE |
698 | mov [run_file_70.Position], 0 |
640 | mov [run_file_70.Position], 0 |
699 | mov [run_file_70.Flags], 0 |
641 | mov [run_file_70.Flags], 0 |
700 | m2m dword[run_file_70.Count], dword[max_open_file_size] |
642 | m2m dword[run_file_70.Count], dword[max_open_file_size] |
701 | m2m [run_file_70.Buffer], [open_file_vox] |
643 | m2m [run_file_70.Buffer], [open_file_vox] |
702 | mov byte[run_file_70+20], 0 |
644 | mov byte[run_file_70+20], 0 |
703 | mov dword[run_file_70.FileName], openfile_path |
645 | mov dword[run_file_70.FileName], openfile_path |
704 | mov ebx,run_file_70 |
- | |
705 | int 0x40 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥¨ï |
646 | mcall SF_FILE,run_file_70 |
706 | cmp ebx,0xffffffff |
647 | cmp ebx,0xffffffff |
Line 707... | Line 648... | ||
707 | je .end_open_file |
648 | je .end_open_file |
708 | 649 | ||
709 | ;add ebx,[open_file_vox] |
650 | ;add ebx,[open_file_vox] |
Line 710... | Line 651... | ||
710 | ;mov byte[ebx],0 ; á«ãç © ¥á«¨ à ¥¥ ¡ë« ®âªàëâ ä ©« ¡®«ì襣® à §¬¥à ç¨á⨬ ª®¥æ ¡ãä¥à á ä ©«®¬ |
651 | ;mov byte[ebx],0 ; á«ãç © ¥á«¨ à ¥¥ ¡ë« ®âªàëâ ä ©« ¡®«ì襣® à §¬¥à ç¨á⨬ ª®¥æ ¡ãä¥à á ä ©«®¬ |
711 | mcall 71,1,openfile_path |
652 | mcall SF_SET_CAPTION,1,openfile_path |
712 | 653 | ||
713 | ;--- |
654 | ;--- |
Line 737... | Line 678... | ||
737 | mov ebx,[moved_file_vox] |
678 | mov ebx,[moved_file_vox] |
738 | mov byte[ebx],al |
679 | mov byte[ebx],al |
Line 739... | Line 680... | ||
739 | 680 | ||
740 | stdcall buf2d_vox_obj_get_size, ebx |
681 | stdcall buf2d_vox_obj_get_size, ebx |
741 | mov dword[run_file_70.Count], eax ;à §¬¥à ä ©« |
- | |
742 | mov eax,70 ;70-ï äãªæ¨ï à ¡®â á ä ©« ¬¨ |
682 | mov dword[run_file_70.Count], eax ;à §¬¥à ä ©« |
743 | mov [run_file_70.Function], 2 |
683 | mov [run_file_70.Function], SSF_CREATE_FILE |
744 | mov [run_file_70.Position], 0 |
684 | mov [run_file_70.Position], 0 |
745 | mov [run_file_70.Flags], 0 |
685 | mov [run_file_70.Flags], 0 |
746 | mov ebx, dword[moved_file_vox] |
686 | mov ebx, dword[moved_file_vox] |
747 | mov [run_file_70.Buffer], ebx |
687 | mov [run_file_70.Buffer], ebx |
748 | mov byte[run_file_70+20], 0 |
688 | mov byte[run_file_70+20], 0 |
749 | mov dword[run_file_70.FileName], openfile_path |
689 | mov dword[run_file_70.FileName], openfile_path |
750 | mov ebx,run_file_70 |
- | |
751 | int 0x40 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥¨ï |
690 | mcall SF_FILE,run_file_70 |
752 | cmp ebx,0xffffffff |
691 | cmp ebx,0xffffffff |
Line 753... | Line 692... | ||
753 | je .end_save_file |
692 | je .end_save_file |
754 | 693 |