Subversion Repositories Kolibri OS

Rev

Rev 5935 | Rev 5944 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5935 Rev 5938
Line 25... Line 25...
25
	Buffer	 dd ?
25
	Buffer	 dd ?
26
		db ?
26
		db ?
27
	FileName dd ?
27
	FileName dd ?
28
ends
28
ends
Line -... Line 29...
-
 
29
 
29
 
30
align 4
30
run_file_70 FileInfoBlock
31
fl255 dd 255.0
31
image_data dd 0 ;㪠§ â¥«ì ­  ¢à¥¬¥­­ãî ¯ ¬ïâì, ­ã¦¥­ ¤«ï ¯à¥®¡à §®¢ ­¨ï ¨§®¡à ¦¥­¨ï
32
image_data dd 0 ;㪠§ â¥«ì ­  ¢à¥¬¥­­ãî ¯ ¬ïâì, ­ã¦¥­ ¤«ï ¯à¥®¡à §®¢ ­¨ï ¨§®¡à ¦¥­¨ï
32
open_file_lif dd 0 ;㪠§ â¥«ì ­  ¯ ¬ïâì ¤«ï ®âªàëâ¨ï ä ©«®¢ 3ds
33
open_file_data dd 0 ;㪠§ â¥«ì ­  ¯ ¬ïâì ¤«ï ®âªàëâ¨ï ä ©«®¢ 3ds
-
 
34
open_file_size dd 0 ;à §¬¥à ®âªàë⮣® ä ©« 
Line 33... Line 35...
33
open_file_size dd 0 ;à §¬¥à ®âªàë⮣® ä ©« 
35
open_b rb 560
34
 
36
 
35
;
37
;
36
main_wnd_height equ 460 ;¢ëá®â  £« ¢­®£® ®ª­  ¯à®£à ¬¬ë
38
main_wnd_height equ 460 ;¢ëá®â  £« ¢­®£® ®ª­  ¯à®£à ¬¬ë
Line 124... Line 126...
124
		mcall -1 ;exit not correct
126
		mcall -1 ;exit not correct
125
	@@:
127
	@@:
126
	add ebp,ll_struc_size
128
	add ebp,ll_struc_size
127
	cmp ebp,l_libs_end
129
	cmp ebp,l_libs_end
128
	jl .test_lib_open
130
	jl .test_lib_open
129
	mcall 48,3,sc,sizeof.system_colors
131
	mcall 48,3,sc,sizeof.sys_colors_new
130
	mcall 40,0x27
132
	mcall 40,0x27
131
	stdcall [OpenDialog_Init],OpenDialog_data ;¯®¤£®â®¢ª  ¤¨ «®£ 
133
	stdcall [OpenDialog_Init],OpenDialog_data ;¯®¤£®â®¢ª  ¤¨ «®£ 
Line 132... Line 134...
132
 
134
 
133
	;kmenu initialisation
135
	;kmenu initialisation
Line 139... Line 141...
139
	mov [main_menu_view], eax
141
	mov [main_menu_view], eax
140
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Vertexes, 5
142
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Vertexes, 5
141
	stdcall [ksubmenu_add], [main_menu_view], eax
143
	stdcall [ksubmenu_add], [main_menu_view], eax
142
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Faces, 6
144
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Faces, 6
143
	stdcall [ksubmenu_add], [main_menu_view], eax
145
	stdcall [ksubmenu_add], [main_menu_view], eax
144
	stdcall [kmenuitem_new], KMENUITEM_SEPARATOR, 0, 0
146
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Faces_Fill, 7
145
	stdcall [ksubmenu_add], [main_menu_view], eax
147
	stdcall [ksubmenu_add], [main_menu_view], eax
146
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Light, 7
148
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Light, 8
-
 
149
	stdcall [ksubmenu_add], [main_menu_view], eax
-
 
150
	stdcall [kmenuitem_new], KMENUITEM_SEPARATOR, 0, 0
147
	stdcall [ksubmenu_add], [main_menu_view], eax	
151
	stdcall [ksubmenu_add], [main_menu_view], eax
148
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_View, [main_menu_view]
152
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_View, [main_menu_view]
149
	stdcall [ksubmenu_add], [main_menu], eax
153
	stdcall [ksubmenu_add], [main_menu], eax
-
 
154
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_Reset, 9
-
 
155
	stdcall [ksubmenu_add], [main_menu_view], eax
Line 150... Line 156...
150
 
156
 
151
	mov dword[w_scr_t1.type],1
157
	mov dword[w_scr_t1.type],1
152
	stdcall dword[tl_data_init], tree1
158
	stdcall dword[tl_data_init], tree1
153
	;á¨á⥬­ë¥ ¨ª®­ª¨ 16*16 ¤«ï tree_list
159
	;á¨á⥬­ë¥ ¨ª®­ª¨ 16*16 ¤«ï tree_list
Line 169... Line 175...
169
	stdcall [buf2d_conv_24_to_8], buf_1,1 ;¤¥« ¥¬ ¡ãä¥à ¯à®§à ç­®á⨠8 ¡¨â
175
	stdcall [buf2d_conv_24_to_8], buf_1,1 ;¤¥« ¥¬ ¡ãä¥à ¯à®§à ç­®á⨠8 ¡¨â
170
	stdcall [buf2d_convert_text_matrix], buf_1
176
	stdcall [buf2d_convert_text_matrix], buf_1
Line 171... Line 177...
171
 
177
 
Line -... Line 178...
-
 
178
	load_image_file fn_toolbar, image_data_toolbar,IMAGE_TOOLBAR_SIZE
172
	load_image_file fn_toolbar, image_data_toolbar,IMAGE_TOOLBAR_SIZE
179
 
173
 
180
	;à ¡®â  á ä ©«®¬ ­ áâ஥ª
-
 
181
	copy_path ini_name,sys_path,file_name,0
-
 
182
	mov dword[def_dr_mode],0
-
 
183
	stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_dv,1
-
 
184
	or eax,eax
-
 
185
	jz @f
-
 
186
		or dword[def_dr_mode], 1 shl bit_vertexes
-
 
187
	@@:
-
 
188
	stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_df,1
-
 
189
	or eax,eax
-
 
190
	jz @f
-
 
191
		or dword[def_dr_mode], 1 shl bit_faces
-
 
192
	@@:
-
 
193
	stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_dff,1
-
 
194
	or eax,eax
-
 
195
	jz @f
-
 
196
		or dword[def_dr_mode], 1 shl bit_faces_fill
-
 
197
	@@:
-
 
198
	stdcall dword[ini_get_int],file_name,ini_sec_w3d,key_dl,1
-
 
199
	or eax,eax
-
 
200
	jz @f
-
 
201
		or dword[def_dr_mode], 1 shl bit_light
-
 
202
	@@:
-
 
203
	stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_ox,0x0000ff
-
 
204
	mov [color_ox],eax
-
 
205
	stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_oy,0xff0000
-
 
206
	mov [color_oy],eax
-
 
207
	stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_oz,0x00ff00
-
 
208
	mov [color_oz],eax
-
 
209
	stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_bk,0x000000
-
 
210
	mov [color_bk],eax
-
 
211
	shr eax,8
-
 
212
	mov [color_bk+4],eax
-
 
213
	shr eax,8
-
 
214
	mov [color_bk+8],eax
-
 
215
	stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_vert,0xffffff
-
 
216
	mov [color_vert],eax
-
 
217
	stdcall dword[ini_get_color],file_name,ini_sec_w3d,key_face,0x808080
-
 
218
	mov [color_face],eax
-
 
219
	finit
-
 
220
	fild dword[color_bk+8]
-
 
221
	fdiv dword[fl255]
-
 
222
	fstp dword[color_bk+8]
-
 
223
	mov eax,[color_bk+4]
-
 
224
	and eax,0xff
-
 
225
	mov [color_bk+4],eax
-
 
226
	fild dword[color_bk+4]
-
 
227
	fdiv dword[fl255]
-
 
228
	fstp dword[color_bk+4]
-
 
229
	mov eax,[color_bk]
-
 
230
	and eax,0xff
-
 
231
	mov [color_bk],eax
-
 
232
	fild dword[color_bk]
Line 174... Line 233...
174
	stdcall mem.Alloc,MAX_FILE_SIZE
233
	fdiv dword[fl255]
175
	mov dword[open_file_lif],eax
234
	fstp dword[color_bk]
Line 176... Line 235...
176
 
235
 
177
	mcall 26,9
236
	mcall 26,9
178
	mov [last_time],eax
237
	mov [last_time],eax
179
 
238
 
180
	stdcall [kosglMakeCurrent], 5,23,320,240,ctx1
239
	stdcall [kosglMakeCurrent], 3d_wnd_l,3d_wnd_t,3d_wnd_w,3d_wnd_h,ctx1
181
	stdcall [glEnable], GL_DEPTH_TEST
240
	stdcall [glEnable], GL_DEPTH_TEST
182
	stdcall [glEnable], GL_NORMALIZE ;¤¥« ¬ ­®à¬ «¨ ®¤¨­ ª®¢®© ¢¥«¨ç¨­ë ¢® ¨§¡¥¦ ­¨¥  àâ¥ä ªâ®¢
241
	stdcall [glEnable], GL_NORMALIZE ;¤¥« ¬ ­®à¬ «¨ ®¤¨­ ª®¢®© ¢¥«¨ç¨­ë ¢® ¨§¡¥¦ ­¨¥  àâ¥ä ªâ®¢
Line 183... Line 242...
183
	stdcall [glClearColor], 0.0,0.0,0.0,0.0
242
	stdcall [glClearColor], [color_bk+8],[color_bk+4],[color_bk],0.0
Line 238... Line 297...
238
		mov eax,dword[ebx] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
297
		mov eax,dword[ebx] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
239
		mov ecx,dword[ebx+4] ;à §¬¥à ¡«®ª 
298
		mov ecx,dword[ebx+4] ;à §¬¥à ¡«®ª 
240
		stdcall hex_in_str, txt_3ds_offs.dig, eax,8
299
		stdcall hex_in_str, txt_3ds_offs.dig, eax,8
241
		stdcall hex_in_str, txt_3ds_offs.siz, ecx,8
300
		stdcall hex_in_str, txt_3ds_offs.siz, ecx,8
Line 242... Line 301...
242
 
301
 
243
		add eax,dword[open_file_lif] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ ¯ ¬ïâ¨
302
		add eax,dword[open_file_data] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ ¯ ¬ïâ¨
244
		cmp dword[offs_last_timer],eax
303
		cmp dword[offs_last_timer],eax
245
		je @f
304
		je @f
246
			;¥á«¨ ¢ë¤¥«¥­­ë© ¡«®ª ¤ ­­ëå ­¥ ᮢ¯ ¤ ¥â á ¯®á«¥¤­¨¬ § ¯®¬­¥­­ë¬
305
			;¥á«¨ ¢ë¤¥«¥­­ë© ¡«®ª ¤ ­­ëå ­¥ ᮢ¯ ¤ ¥â á ¯®á«¥¤­¨¬ § ¯®¬­¥­­ë¬
247
			mov dword[offs_last_timer],eax
306
			mov dword[offs_last_timer],eax
Line 255... Line 314...
255
			add ecx,eax ;¯®«ãç ¥¬ à §¬¥à ¡«®ª 
314
			add ecx,eax ;¯®«ãç ¥¬ à §¬¥à ¡«®ª 
256
			stdcall buf_draw_hex_table,eax,ecx ;¤®¡ ¢«¥­¨¥ 16-à¨ç­ëå ¤ ­­ëå
315
			stdcall buf_draw_hex_table,eax,ecx ;¤®¡ ¢«¥­¨¥ 16-à¨ç­ëå ¤ ­­ëå
257
			stdcall [buf2d_draw], buf_0 ;®¡­®¢«ï¥¬ ¡ãä¥à ­  íªà ­¥
316
			stdcall [buf2d_draw], buf_0 ;®¡­®¢«ï¥¬ ¡ãä¥à ­  íªà ­¥
258
	@@:
317
	@@:
259
	popad
318
	popad
260
 
-
 
261
	;¯à®á¬®âà ®ª­  á ª®®à¤¨­ â ¬¨ â®ç¥ª
-
 
262
	;cmp byte[prop_wnd_run],0
-
 
263
	;je @f
-
 
264
	;	call prop_timer_funct
-
 
265
	;@@:
-
 
266
	jmp still
319
	jmp still
Line 267... Line 320...
267
 
320
 
268
align 4
321
align 4
269
buf_draw_beg:
322
buf_draw_beg:
Line 281... Line 334...
281
	pushad
334
	pushad
282
	locals
335
	locals
283
		coord_y dd 55 ;ª®®à¤¨­ â  y ¤«ï ­ ç «  ¢ë¢®¤  â ¡«¨æë
336
		coord_y dd 55 ;ª®®à¤¨­ â  y ¤«ï ­ ç «  ¢ë¢®¤  â ¡«¨æë
284
	endl
337
	endl
285
		mov esi,dword[offs]
338
		mov esi,dword[offs]
286
		mov edi,dword[open_file_lif]
339
		mov edi,dword[open_file_data]
287
		add edi,dword[file_3ds.size] ;edi - 㪠§ â¥«ì ­  ª®­¥æ ä ©«  ¢ ¯ ¬ïâ¨
340
		add edi,dword[file_3ds.size] ;edi - 㪠§ â¥«ì ­  ª®­¥æ ä ©«  ¢ ¯ ¬ïâ¨
288
		mov dword[txt_3ds_offs.dig],0
341
		mov dword[txt_3ds_offs.dig],0
289
		cld
342
		cld
290
		.cycle_rows:
343
		.cycle_rows:
291
			mov ebx,5 ;®âáâ㯠᫥¢  ¤«ï æ¨äà
344
			mov ebx,5 ;®âáâ㯠᫥¢  ¤«ï æ¨äà
Line 459... Line 512...
459
	mov dword[tree1.data_img_sys],0
512
	mov dword[tree1.data_img_sys],0
460
	stdcall [tl_data_clear], tree1
513
	stdcall [tl_data_clear], tree1
461
	stdcall [buf2d_delete],buf_0
514
	stdcall [buf2d_delete],buf_0
462
	stdcall [buf2d_delete],buf_1 ;㤠«ï¥¬ ¡ãä¥à
515
	stdcall [buf2d_delete],buf_1 ;㤠«ï¥¬ ¡ãä¥à
463
	stdcall mem.Free,[image_data_toolbar]
516
	stdcall mem.Free,[image_data_toolbar]
464
	stdcall mem.Free,[open_file_lif]
517
	stdcall mem.Free,[open_file_data]
465
	stdcall [gluDeleteQuadric], [qObj]
518
	stdcall [gluDeleteQuadric], [qObj]
466
	mcall -1
519
	mcall -1
Line 467... Line 520...
467
 
520
 
Line 483... Line 536...
483
	stdcall [OpenDialog_Start],OpenDialog_data
536
	stdcall [OpenDialog_Start],OpenDialog_data
484
	cmp [OpenDialog_data.status],2
537
	cmp [OpenDialog_data.status],2
485
	je .end_open_file
538
	je .end_open_file
486
	;ª®¤ ¯à¨ 㤠筮¬ ®âªàë⨨ ¤¨ «®£ 
539
	;ª®¤ ¯à¨ 㤠筮¬ ®âªàë⨨ ¤¨ «®£ 
Line -... Line 540...
-
 
540
 
-
 
541
    mov [run_file_70.Function], 5
-
 
542
    mov [run_file_70.Position], 0
-
 
543
    mov [run_file_70.Flags], 0
-
 
544
    mov dword[run_file_70.Count], 0
-
 
545
    mov dword[run_file_70.Buffer], open_b
-
 
546
    mov byte[run_file_70+20], 0
-
 
547
    mov dword[run_file_70.FileName], openfile_path
-
 
548
    mcall 70,run_file_70
-
 
549
 
-
 
550
    mov ecx,dword[open_b+32] ;+32 qword: à §¬¥à ä ©«  ¢ ¡ ©â å
-
 
551
    stdcall mem.ReAlloc,[open_file_data],ecx
-
 
552
    mov [open_file_data],eax
487
 
553
    
488
	mov [run_file_70.Function], 0
554
    mov [run_file_70.Function], 0
489
	mov [run_file_70.Position], 0
555
    mov [run_file_70.Position], 0
490
	mov [run_file_70.Flags], 0
556
    mov [run_file_70.Flags], 0
491
	mov dword[run_file_70.Count], MAX_FILE_SIZE
557
    mov dword[run_file_70.Count], ecx
492
	m2m [run_file_70.Buffer], dword[open_file_lif]
558
    m2m dword[run_file_70.Buffer], dword[open_file_data]
493
	mov byte[run_file_70+20], 0
559
    mov byte[run_file_70+20], 0
494
	mov dword[run_file_70.FileName], openfile_path
560
    mov dword[run_file_70.FileName], openfile_path
495
	mcall 70,run_file_70 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥­¨ï
561
    mcall 70,run_file_70 ;§ £à㦠¥¬ ä ©« 3ds
496
	cmp ebx,0xffffffff
562
    cmp ebx,0xffffffff
Line 497... Line 563...
497
	je .end_open_file
563
    je .end_open_file
498
 
564
 
Line 515... Line 581...
515
 
581
 
516
align 4
582
align 4
517
init_tree:
583
init_tree:
Line 518... Line 584...
518
	stdcall [tl_info_clear], tree1 ;®ç¨á⪠ ᯨ᪠ ®¡ê¥ªâ®¢
584
	stdcall [tl_info_clear], tree1 ;®ç¨á⪠ ᯨ᪠ ®¡ê¥ªâ®¢
519
 
585
 
520
	mov esi,dword[open_file_lif]
586
	mov esi,dword[open_file_data]
521
	cmp word[esi],CHUNK_MAIN
587
	cmp word[esi],CHUNK_MAIN
522
	je @f
588
	je @f
523
		call buf_draw_beg
589
		call buf_draw_beg
524
		stdcall [buf2d_draw_text], buf_0, buf_1,txt_no_3ds,5,25,0xff0000 ;à¨á㥬 áâபã á ⥪á⮬
590
		stdcall [buf2d_draw_text], buf_0, buf_1,txt_no_3ds,5,25,0xff0000 ;à¨á㥬 áâபã á ⥪á⮬
525
		jmp .end_open
-
 
526
	@@:
-
 
527
	cmp dword[esi+2],MAX_FILE_SIZE
-
 
528
	jle @f
-
 
529
		call buf_draw_beg
-
 
530
		stdcall [buf2d_draw_text], buf_0, buf_1,txt_3ds_big_file,5,25,0xff0000 ;à¨á㥬 áâபã á ⥪á⮬
-
 
531
		jmp .end_open
591
		jmp .end_open
532
	@@:
592
	@@:
533
	;--- ®¡à ¡®âª  ®âªàë⮣® *.3ds ä ©« 
593
	;--- ®¡à ¡®âª  ®âªàë⮣® *.3ds ä ©« 
534
	mov eax,file_3ds
594
	mov eax,file_3ds
535
	mov dword[level_stack],0 ;®¡­ã«ï¥¬ ã஢¥­ì á⥪ 
595
	mov dword[level_stack],0 ;®¡­ã«ï¥¬ ã஢¥­ì á⥪ 
Line 769... Line 829...
769
		mov bx,word[icon]
829
		mov bx,word[icon]
770
		shl ebx,16
830
		shl ebx,16
771
		mov bx,word[level]
831
		mov bx,word[level]
Line 772... Line 832...
772
 
832
 
773
		mov eax,esi
833
		mov eax,esi
774
		sub eax,dword[open_file_lif]
834
		sub eax,dword[open_file_data]
775
		mov dword[buffer],eax ;ᬥ饭¨¥ ¡«®ª 
835
		mov dword[buffer],eax ;ᬥ饭¨¥ ¡«®ª 
776
		mov ecx,dword[size_bl]
836
		mov ecx,dword[size_bl]
777
		mov dword[buffer+4],ecx ;à §¬¥à ¡«®ª  (¨á¯®«ì§ã¥âáï ¢ ä㭪樨 buf_draw_hex_table ¤«ï à¨á®¢ ­¨ï «¨­¨¨)
837
		mov dword[buffer+4],ecx ;à §¬¥à ¡«®ª  (¨á¯®«ì§ã¥âáï ¢ ä㭪樨 buf_draw_hex_table ¤«ï à¨á®¢ ­¨ï «¨­¨¨)
778
		mov ecx,dword[bl_found]
838
		mov ecx,dword[bl_found]
Line 839... Line 899...
839
		jne @b
899
		jne @b
840
	popad
900
	popad
841
	ret
901
	ret
842
endp
902
endp
Line -... Line 903...
-
 
903
 
-
 
904
end if
843
 
905
 
844
;input:
906
;input:
845
; eax - value
907
; eax - value
846
; edi - string buffer
908
; buf - string buffer
847
; len - buffer len
909
; len - buffer len
848
;output:
910
;output:
849
align 4
911
align 4
850
proc convert_int_to_str, len:dword
912
proc convert_int_to_str, buf:dword, len:dword
-
 
913
pushad
851
pushad
914
	mov edi,[buf]
852
	mov esi,[len]
915
	mov esi,[len]
853
	add esi,edi
916
	add esi,edi
854
	dec esi
917
	dec esi
855
	call .str
918
	call .str
Line 874... Line 937...
874
		stosb
937
		stosb
875
		mov byte[edi],0
938
		mov byte[edi],0
876
	@@:
939
	@@:
877
	ret
940
	ret
Line 878... Line -...
878
 
-
 
879
end if
-
 
880
 
941
 
881
align 4
942
align 4
882
proc hex_in_str, buf:dword,val:dword,zif:dword
943
proc hex_in_str, buf:dword,val:dword,zif:dword
883
	pushad
944
	pushad
884
		mov edi,dword[buf]
945
		mov edi,dword[buf]
Line 915... Line 976...
915
	;ª®¤ ¯à¨ 㤠筮¬ ®âªàë⨨ ¤¨ «®£ 
976
	;ª®¤ ¯à¨ 㤠筮¬ ®âªàë⨨ ¤¨ «®£ 
Line 916... Line 977...
916
 
977
 
917
	mov [run_file_70.Function], 2
978
	mov [run_file_70.Function], 2
918
	mov [run_file_70.Position], 0
979
	mov [run_file_70.Position], 0
919
	mov [run_file_70.Flags], 0
980
	mov [run_file_70.Flags], 0
920
	mov ebx, dword[open_file_lif]
981
	mov ebx, dword[open_file_data]
921
	mov [run_file_70.Buffer], ebx
982
	mov [run_file_70.Buffer], ebx
922
	mov ebx,dword[ebx+2]
983
	mov ebx,dword[ebx+2]
923
	mov dword[run_file_70.Count], ebx ;à §¬¥à ä ©« 
984
	mov dword[run_file_70.Count], ebx ;à §¬¥à ä ©« 
924
	mov byte[run_file_70+20], 0
985
	mov byte[run_file_70+20], 0
Line 956... Line 1017...
956
	mov edx,dword[eax+4] ;à §¬¥à ¡«®ª 
1017
	mov edx,dword[eax+4] ;à §¬¥à ¡«®ª 
957
	sub [open_file_size],edx ;¨§¬¥­¥­¨¥ à §¬¥à®¢ ä ©« 
1018
	sub [open_file_size],edx ;¨§¬¥­¥­¨¥ à §¬¥à®¢ ä ©« 
958
	mov ecx,[open_file_size]
1019
	mov ecx,[open_file_size]
959
	mov ebx,dword[eax] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
1020
	mov ebx,dword[eax] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
960
	sub ecx,ebx ;ecx - à §¬¥à ­¨¦­¥© ᤢ¨£ ¥¬®© ç á⨠䠩« 
1021
	sub ecx,ebx ;ecx - à §¬¥à ­¨¦­¥© ᤢ¨£ ¥¬®© ç á⨠䠩« 
961
	add ebx,dword[open_file_lif] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ ¯ ¬ïâ¨
1022
	add ebx,dword[open_file_data] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ ¯ ¬ïâ¨
962
	mov edi,ebx
1023
	mov edi,ebx
963
	mov esi,ebx
1024
	mov esi,ebx
964
	add esi,edx
1025
	add esi,edx
965
	mov bl,byte[eax+list_offs_chunk_lev] ;¡¥à¥¬ ã஢¥­ì ⥪ã饣® 㧫 
1026
	mov bl,byte[eax+list_offs_chunk_lev] ;¡¥à¥¬ ã஢¥­ì ⥪ã饣® 㧫 
966
	rep movsb
1027
	rep movsb
Line 976... Line 1037...
976
	je .end_2
1037
	je .end_2
977
		cmp byte[eax+list_offs_chunk_lev],bl
1038
		cmp byte[eax+list_offs_chunk_lev],bl
978
		jge .cycle_2
1039
		jge .cycle_2
979
		mov bl,byte[eax+list_offs_chunk_lev]
1040
		mov bl,byte[eax+list_offs_chunk_lev]
980
		mov ecx,[eax]
1041
		mov ecx,[eax]
981
		add ecx,[open_file_lif]
1042
		add ecx,[open_file_data]
982
		sub dword[ecx+2],edx
1043
		sub dword[ecx+2],edx
983
		cmp bl,0 ;¥á«¨ á ¬ë© ¢¥àå­¨© 㧥«, â® bl=0
1044
		cmp bl,0 ;¥á«¨ á ¬ë© ¢¥àå­¨© 㧥«, â® bl=0
984
		jne .cycle_2
1045
		jne .cycle_2
985
	.end_2:
1046
	.end_2:
Line 1117... Line 1178...
1117
lib_name_3 db 'buf2d.obj',0
1178
lib_name_3 db 'buf2d.obj',0
1118
system_dir_4 db '/sys/lib/'
1179
system_dir_4 db '/sys/lib/'
1119
lib_name_4 db 'kmenu.obj',0
1180
lib_name_4 db 'kmenu.obj',0
1120
system_dir_5 db '/sys/lib/'
1181
system_dir_5 db '/sys/lib/'
1121
lib_name_5 db 'tinygl.obj',0
1182
lib_name_5 db 'tinygl.obj',0
-
 
1183
system_dir_6 db '/sys/lib/'
-
 
1184
lib_name_6 db 'libini.obj',0
Line 1122... Line 1185...
1122
 
1185
 
1123
if lang eq ru
1186
if lang eq ru
1124
	head_f_i:
1187
	head_f_i:
1125
	head_f_l db '‘¨á⥬­ ï ®è¨¡ª ',0
1188
	head_f_l db '‘¨á⥬­ ï ®è¨¡ª ',0
Line 1133... Line 1196...
1133
	err_msg_import_3 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'buf2d',39,0
1196
	err_msg_import_3 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'buf2d',39,0
1134
	err_msg_found_lib_4 db '¥ ­ ©¤¥­  ¡¨¡«¨®â¥ª  ',39,'kmenu.obj',39,0
1197
	err_msg_found_lib_4 db '¥ ­ ©¤¥­  ¡¨¡«¨®â¥ª  ',39,'kmenu.obj',39,0
1135
	err_msg_import_4 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'kmenu',39,0
1198
	err_msg_import_4 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'kmenu',39,0
1136
	err_msg_found_lib_5 db '¥ ­ ©¤¥­  ¡¨¡«¨®â¥ª  ',39,'tinygl.obj',39,0
1199
	err_msg_found_lib_5 db '¥ ­ ©¤¥­  ¡¨¡«¨®â¥ª  ',39,'tinygl.obj',39,0
1137
	err_msg_import_5 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'tinygl',39,0
1200
	err_msg_import_5 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'tinygl',39,0
-
 
1201
	err_msg_found_lib_6 db '¥ ­ ©¤¥­  ¡¨¡«¨®â¥ª  ',39,'libini.obj',39,0
-
 
1202
	err_msg_import_6 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'libini',39,0
1138
else
1203
else
1139
	head_f_i:
1204
	head_f_i:
1140
	head_f_l db 'System error',0
1205
	head_f_l db 'System error',0
1141
	err_msg_found_lib_0 db 'Sorry I cannot found library ',39,'proc_lib.obj',39,0
1206
	err_msg_found_lib_0 db 'Sorry I cannot found library ',39,'proc_lib.obj',39,0
1142
	err_msg_import_0 db 'Error on load import library ',39,'proc_lib.obj',39,0
1207
	err_msg_import_0 db 'Error on load import library ',39,'proc_lib.obj',39,0
Line 1148... Line 1213...
1148
	err_msg_import_3 db 'Error on load import library ',39,'buf2d.obj',39,0
1213
	err_msg_import_3 db 'Error on load import library ',39,'buf2d.obj',39,0
1149
	err_msg_found_lib_4 db 'Sorry I cannot found library ',39,'kmenu.obj',39,0
1214
	err_msg_found_lib_4 db 'Sorry I cannot found library ',39,'kmenu.obj',39,0
1150
	err_msg_import_4 db 'Error on load import library ',39,'kmenu.obj',39,0
1215
	err_msg_import_4 db 'Error on load import library ',39,'kmenu.obj',39,0
1151
	err_msg_found_lib_5 db 'Sorry I cannot found library ',39,'tinygl.obj',39,0
1216
	err_msg_found_lib_5 db 'Sorry I cannot found library ',39,'tinygl.obj',39,0
1152
	err_msg_import_5 db 'Error on load import library ',39,'tinygl',39,0
1217
	err_msg_import_5 db 'Error on load import library ',39,'tinygl',39,0
-
 
1218
	err_msg_found_lib_6 db 'Sorry I cannot found library ',39,'libini.obj',39,0
-
 
1219
	err_msg_import_6 db 'Error on load import library ',39,'libini',39,0
1153
end if
1220
end if
Line 1154... Line 1221...
1154
 
1221
 
1155
align 4
1222
align 4
1156
l_libs_start:
1223
l_libs_start:
Line 1164... Line 1231...
1164
		err_msg_found_lib_3, head_f_l, import_buf2d,  err_msg_import_3,head_f_i
1231
		err_msg_found_lib_3, head_f_l, import_buf2d,  err_msg_import_3,head_f_i
1165
	lib_4 l_libs lib_name_4, sys_path, library_path,  system_dir_4,\
1232
	lib_4 l_libs lib_name_4, sys_path, library_path,  system_dir_4,\
1166
		err_msg_found_lib_4, head_f_l, import_libkmenu,err_msg_import_4,head_f_i
1233
		err_msg_found_lib_4, head_f_l, import_libkmenu,err_msg_import_4,head_f_i
1167
	lib_5 l_libs lib_name_5, sys_path, library_path,  system_dir_5,\
1234
	lib_5 l_libs lib_name_5, sys_path, library_path,  system_dir_5,\
1168
		err_msg_found_lib_5, head_f_l, import_lib_tinygl,err_msg_import_5,head_f_i		
1235
		err_msg_found_lib_5, head_f_l, import_lib_tinygl,err_msg_import_5,head_f_i
-
 
1236
	lib_6 l_libs lib_name_6, sys_path, library_path,  system_dir_6,\
-
 
1237
		err_msg_found_lib_6, head_f_l, import_libini, err_msg_import_6,head_f_i		
1169
l_libs_end:
1238
l_libs_end:
Line 1170... Line 1239...
1170
 
1239
 
1171
align 4
1240
align 4
1172
import_libimg:
1241
import_libimg:
Line 1385... Line 1454...
1385
	sz_#n db `n,0
1454
	sz_#n db `n,0
1386
}
1455
}
1387
include '../../develop/libraries/TinyGL/asm_fork/export.inc'
1456
include '../../develop/libraries/TinyGL/asm_fork/export.inc'
Line 1388... Line 1457...
1388
 
1457
 
-
 
1458
align 4
-
 
1459
import_libini:
-
 
1460
	dd alib_init0
-
 
1461
	ini_get_str   dd aini_get_str
-
 
1462
	ini_get_int   dd aini_get_int
-
 
1463
	ini_get_color dd aini_get_color
-
 
1464
dd 0,0
-
 
1465
	alib_init0     db 'lib_init',0
-
 
1466
	aini_get_str   db 'ini_get_str',0
-
 
1467
	aini_get_int   db 'ini_get_int',0
-
 
1468
	aini_get_color db 'ini_get_color',0
-
 
1469
 
1389
align 4
1470
align 4
1390
mouse_dd dd 0x0
1471
mouse_dd dd 0x0
Line 1391... Line 1472...
1391
last_time dd 0
1472
last_time dd 0
1392
 
1473
 
Line 1418... Line 1499...
1418
align 4
1499
align 4
1419
ctx1 db 28 dup (0) ;TinyGLContext or KOSGLContext
1500
ctx1 db 28 dup (0) ;TinyGLContext or KOSGLContext
1420
;sizeof.TinyGLContext = 28
1501
;sizeof.TinyGLContext = 28
Line 1421... Line 1502...
1421
 
1502
 
1422
qObj dd 0
-
 
1423
angle_x dd 0.0
-
 
1424
angle_y dd 0.0
-
 
1425
angle_z dd 0.0
-
 
Line 1426... Line 1503...
1426
delt_size dd 3.0
1503
qObj dd 0
1427
 
1504
 
1428
light_position dd 0.0, 0.0, -2.0, 1.0 ;  á¯®«®¦¥­¨¥ ¨áâ®ç­¨ª  [0][1][2]
1505
light_position dd 0.0, 0.0, -2.0, 1.0 ;  á¯®«®¦¥­¨¥ ¨áâ®ç­¨ª  [0][1][2]
Line 1429... Line 1506...
1429
	;[3] = (0.0 - ¡¥áª®­¥ç­® 㤠«¥­­ë© ¨áâ®ç­¨ª, 1.0 - ¨áâ®ç­¨ª á¢¥â  ­  ®¯à¥¤¥«¥­­®¬ à ááâ®ï­¨¨)
1506
	;[3] = (0.0 - ¡¥áª®­¥ç­® 㤠«¥­­ë© ¨áâ®ç­¨ª, 1.0 - ¨áâ®ç­¨ª á¢¥â  ­  ®¯à¥¤¥«¥­­®¬ à ááâ®ï­¨¨)
1430
light_dir dd 0.0,0.0,0.0 ;­ ¯à ¢«¥­¨¥ « ¬¯ë
1507
light_dir dd 0.0,0.0,0.0 ;­ ¯à ¢«¥­¨¥ « ¬¯ë
1431
 
1508
 
1432
mat_specular dd 0.3, 0.3, 0.3, 1.0 ; –¢¥â ¡«¨ª 
1509
mat_specular dd 0.3, 0.3, 0.3, 1.0 ; –¢¥â ¡«¨ª 
Line -... Line 1510...
-
 
1510
mat_shininess dd 3.0 ;  §¬¥à ¡«¨ª  (®¡à â­ ï ¯à®¯®àæ¨ï)
-
 
1511
white_light dd 0.8, 0.8, 0.8, 1.0 ; –¢¥â ¨ ¨­â¥­á¨¢­®áâì ®á¢¥é¥­¨ï, £¥­¥à¨à㥬®£® ¨áâ®ç­¨ª®¬
-
 
1512
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ;  à ¬¥âàë ä®­®¢®£® ®á¢¥é¥­¨ï
-
 
1513
 
-
 
1514
if lang eq ru
-
 
1515
capt db 'info 3ds ¢¥àá¨ï 29.11.15',0 ;¯®¤¯¨áì ®ª­ 
1433
mat_shininess dd 3.0 ;  §¬¥à ¡«¨ª  (®¡à â­ ï ¯à®¯®àæ¨ï)
1516
else
1434
white_light dd 0.8, 0.8, 0.8, 1.0 ; –¢¥â ¨ ¨­â¥­á¨¢­®áâì ®á¢¥é¥­¨ï, £¥­¥à¨à㥬®£® ¨áâ®ç­¨ª®¬
1517
capt db 'info 3ds version 29.11.15',0 ;window caption
1435
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ;  à ¬¥âàë ä®­®¢®£® ®á¢¥é¥­¨ï
1518
end if
-
 
1519
 
1436
 
1520
align 16
-
 
1521
i_end:
-
 
1522
	procinfo process_information
-
 
1523
	run_file_70 FileInfoBlock
-
 
1524
	sc system_colors
-
 
1525
		rb sizeof.sys_colors_new-sizeof.system_colors
-
 
1526
	angle_x rd 1 ;ã£«ë ¯®¢®à®â  á業ë
-
 
1527
	angle_y rd 1
-
 
1528
	angle_z rd 1
-
 
1529
	color_ox rd 1
-
 
1530
	color_oy rd 1
1437
align 16
1531
	color_oz rd 1
1438
i_end:
1532
	color_bk rd 3
1439
	procinfo process_information
1533
	color_vert rd 1
1440
	sc system_colors
1534
	color_face rd 1
1441
	rb 2048
1535
	rb 2048