Subversion Repositories Kolibri OS

Rev

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

Rev 6046 Rev 6060
Line 10... Line 10...
10
include '../../develop/libraries/TinyGL/asm_fork/opengl_const.inc'
10
include '../../develop/libraries/TinyGL/asm_fork/opengl_const.inc'
11
include '../../dll.inc'
11
include '../../dll.inc'
12
include 'lang.inc'
12
include 'lang.inc'
13
include 'info_fun_float.inc'
13
include 'info_fun_float.inc'
14
include 'info_menu.inc'
14
include 'info_menu.inc'
-
 
15
include 'data.inc'
Line 15... Line 16...
15
 
16
 
Line 16... Line 17...
16
version_edit equ 1
17
version_edit equ 1
Line 46... Line 47...
46
 
47
 
47
;
48
;
48
main_wnd_height equ 460 ;¢ëá®â  £« ¢­®£® ®ª­  ¯à®£à ¬¬ë
49
main_wnd_height equ 460 ;¢ëá®â  £« ¢­®£® ®ª­  ¯à®£à ¬¬ë
49
fn_toolbar db 'toolbar.png',0
50
fn_toolbar db 'toolbar.png',0
50
IMAGE_TOOLBAR_ICON_SIZE equ 16*16*3
51
IMAGE_TOOLBAR_ICON_SIZE equ 16*16*3
51
IMAGE_TOOLBAR_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*7
52
IMAGE_TOOLBAR_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*12+54
52
image_data_toolbar dd 0
53
image_data_toolbar dd 0
53
;
54
;
54
TREE_ICON_SYS16_BMP_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*11+54 ;à §¬¥à bmp ä ©«  á á¨á⥬­ë¬¨ ¨ª®­ª ¬¨
55
TREE_ICON_SYS16_BMP_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*11+54 ;à §¬¥à bmp ä ©«  á á¨á⥬­ë¬¨ ¨ª®­ª ¬¨
55
icon_tl_sys dd 0 ;㪠§ â¥¥«ì ­  ¯ ¬ïâì ¤«ï åà ­¥­¨ï á¨á⥬­ëå ¨ª®­®ª
56
icon_tl_sys dd 0 ;㪠§ â¥¥«ì ­  ¯ ¬ïâì ¤«ï åà ­¥­¨ï á¨á⥬­ëå ¨ª®­®ª
56
icon_toolbar dd 0 ;㪠§ â¥¥«ì ­  ¯ ¬ïâì ¤«ï åà ­¥­¨ï ¨ª®­®ª ®¡ê¥ªâ®¢
57
icon_toolbar dd 0 ;㪠§ â¥¥«ì ­  ¯ ¬ïâì ¤«ï åà ­¥­¨ï ¨ª®­®ª ®¡ê¥ªâ®¢
57
TOOLBAR_ICON_BMP_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*10+54 ;à §¬¥à bmp ä ©«  á ¨ª®­ª ¬¨ ®¡ê¥ªâ®¢
58
IMAGE_CHUNKS_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*10+54 ;à §¬¥à bmp ä ©«  á ¨ª®­ª ¬¨ ®¡ê¥ªâ®¢
58
;
59
;
Line 59... Line 60...
59
IMAGE_FILE1_SIZE equ 128*144*3+54 ;à §¬¥à ä ©«  á ¨§®¡à ¦¥­¨¥¬
60
IMAGE_FILE1_SIZE equ 128*144*3+54 ;à §¬¥à ä ©«  á ¨§®¡à ¦¥­¨¥¬
60
 
61
 
Line 94... Line 95...
94
		stdcall dword[img_destroy], dword[image_data]
95
		stdcall dword[img_destroy], dword[image_data]
95
	@@:
96
	@@:
96
}
97
}
Line 97... Line 98...
97
 
98
 
98
;--------------------------------------
-
 
99
include 'data.inc'
-
 
100
 
99
;--------------------------------------
101
level_stack dd 0
100
level_stack dd 0
Line 102... Line 101...
102
offs_last_timer dd 0 ;¯®á«¥¤­¨© ᤢ¨£ ¯®ª § ­ë© ¢ ä㭪樨 â ©¬¥à 
101
offs_last_timer dd 0 ;¯®á«¥¤­¨© ᤢ¨£ ¯®ª § ­ë© ¢ ä㭪樨 â ©¬¥à 
103
 
102
 
Line 182... Line 181...
182
	;¥á«¨ ¨§®¡à ¦¥­¨¥ ­¥ ®âªàë«®áì, â® ¢ icon_tl_sys ¡ã¤ãâ
181
	;¥á«¨ ¨§®¡à ¦¥­¨¥ ­¥ ®âªàë«®áì, â® ¢ icon_tl_sys ¡ã¤ãâ
183
	;­¥ ¨­¨æ¨ «¨§¨à®¢ ­­ë¥ ¤ ­­ë¥, ­® ®è¨¡ª¨ ­¥ ¡ã¤¥â, â. ª. ¡ãä¥à ­ã¦­®£® à §¬¥à 
182
	;­¥ ¨­¨æ¨ «¨§¨à®¢ ­­ë¥ ¤ ­­ë¥, ­® ®è¨¡ª¨ ­¥ ¡ã¤¥â, â. ª. ¡ãä¥à ­ã¦­®£® à §¬¥à 
184
	mov eax,dword[icon_tl_sys]
183
	mov eax,dword[icon_tl_sys]
185
	mov dword[tree1.data_img_sys],eax
184
	mov dword[tree1.data_img_sys],eax
Line 186... Line 185...
186
 
185
 
187
	load_image_file 'objects.png', icon_toolbar,TOOLBAR_ICON_BMP_SIZE
186
	load_image_file 'objects.png', icon_toolbar,IMAGE_CHUNKS_SIZE
188
	mov eax,dword[icon_toolbar]
187
	mov eax,dword[icon_toolbar]
Line 189... Line 188...
189
	mov dword[tree1.data_img],eax
188
	mov dword[tree1.data_img],eax
Line 422... Line 421...
422
	jge @f
421
	jge @f
423
		mov eax,250
422
		mov eax,250
424
	@@:
423
	@@:
425
	sub eax,65
424
	sub eax,65
426
	mov dword[tree1.box_height],eax
425
	mov dword[tree1.box_height],eax
427
	mov word[w_scr_t1+4],ax ;­®¢ë¥ à §¬¥àë áªà®««¨­£ 
426
	mov word[w_scr_t1.y_size],ax ;­®¢ë¥ à §¬¥àë áªà®««¨­£ 
428
	cmp eax,dword[buf_0.h] ;㢥«¨ç¨¢ ¥¬ ¢ëá®âã ¡ãä¥à 
427
	cmp eax,dword[buf_0.h] ;㢥«¨ç¨¢ ¥¬ ¢ëá®âã ¡ãä¥à 
429
	jle @f
428
	jle @f
430
		stdcall [buf2d_resize],buf_0,0,eax
429
		stdcall [buf2d_resize],buf_0,0,eax
431
		mov dword[offs_last_timer],0 ;¤«ï ®¡­®¢«¥­¨ï ¡ãä¥à  ¢ â ©¬¥à¥
430
		mov dword[offs_last_timer],0 ;¤«ï ®¡­®¢«¥­¨ï ¡ãä¥à  ¢ â ©¬¥à¥
432
	@@:
431
	@@:
Line 438... Line 437...
438
	@@:
437
	@@:
439
	sub eax,[buf_0.w]
438
	sub eax,[buf_0.w]
440
	sub eax,41
439
	sub eax,41
441
	mov dword[tree1.box_width],eax
440
	mov dword[tree1.box_width],eax
442
	add ax,word[tree1.box_left]
441
	add ax,word[tree1.box_left]
443
	mov word[w_scr_t1+sb_offs_start_x],ax
442
	mov word[w_scr_t1.x_pos],ax
444
	add ax,16+5
443
	add ax,16+5
445
	mov word[buf_0.l],ax
444
	mov word[buf_0.l],ax
Line 446... Line 445...
446
 
445
 
447
	mov esi,[sc.work_button]
446
	mov esi,[sc.work_button]
Line 706... Line 705...
706
		@@:
705
		@@:
707
		cmp dx,CHUNK_FACELIST ;ᯨ᮪ £à ­¥©
706
		cmp dx,CHUNK_FACELIST ;ᯨ᮪ £à ­¥©
708
		jne @f
707
		jne @f
709
			stdcall add_3ds_object, ID_ICON_DATA,ebx,2,txt_count ;ç¨á«® £à ­¥©
708
			stdcall add_3ds_object, ID_ICON_DATA,ebx,2,txt_count ;ç¨á«® £à ­¥©
710
			push eax
709
			push eax
711
			xor eax,eax
-
 
712
			mov ax,[esi]
710
			movzx eax,word[esi]
713
			shl eax,3
711
			shl eax,3
714
			add esi,2
712
			add esi,2
715
			sub ecx,2
713
			sub ecx,2
716
			stdcall add_3ds_object, ID_ICON_DATA,ebx,eax,0 ;¤ ­­ë¥ £à ­¥©
714
			stdcall add_3ds_object, ID_ICON_DATA,ebx,eax,0 ;¤ ­­ë¥ £à ­¥©
Line 766... Line 764...
766
		.end_f:
764
		.end_f:
767
	pop edi edx ecx ebx
765
	pop edi edx ecx ebx
768
	ret
766
	ret
Line 769... Line 767...
769
 
767
 
-
 
768
;¢å®¤ ¢ 1-© ¤®ç¥à­¨© ¡«®ª
-
 
769
;input:
-
 
770
; eax - 㪠§ â¥«ì ­  ¢à¥¬¥­­ë© á⥪ ä ©«  file_3ds
770
;¢å®¤ ¢ 1-© ¤®ç¥à­¨© ¡«®ª
771
; esi - ­ ç «® த¨â¥«ì᪮£® ¡«®ª 
771
;output:
772
;output:
-
 
773
; ebx - destroy
772
; edx - destroy
774
; esi - ­ ç «® ¤ ­­ëå த¨â¥«ì᪮£® ¡«®ª 
773
align 4
775
align 4
774
block_children:
776
block_children:
775
	push ecx
777
	push ecx
776
		;¯à®¢¥àª  ¯à ¢¨«ì­®á⨠ࠧ¬¥à®¢ ¤®ç¥à­¥£® ¡«®ª 
778
		;¯à®¢¥àª  ¯à ¢¨«ì­®á⨠ࠧ¬¥à®¢ ¤®ç¥à­¥£® ¡«®ª 
777
		mov ebx,esi ;ᬥ饭¨¥ ­ ç «  த¨â¥«ì᪮£® ¡«®ª 
779
		mov ebx,esi
778
		add ebx,6 ;¯¥à¥å®¤ ­  ­ ç «® ¤®ç¥à­¥£® ¡«®ª 
780
		add ebx,6 ;¯¥à¥å®¤ ­  ­ ç «® ¤®ç¥à­¥£® ¡«®ª 
779
		add ebx,dword[ebx+2] ;¤®¡ ¢«ï¥¬ à §¬¥à ¤®ç¥à­¥£® ¡«®ª 
781
		add ebx,dword[ebx+2] ;¤®¡ ¢«ï¥¬ à §¬¥à ¤®ç¥à­¥£® ¡«®ª 
780
		mov ecx,esi ;ᬥ饭¨¥ ­ ç «  த¨â¥«ì᪮£® ¡«®ª 
782
		mov ecx,esi
781
		add ecx,dword[esi+2] ;¤®¡ ¢«ï¥¬ à §¬¥à த¨â¥«ì᪮£® ¡«®ª 
783
		add ecx,dword[esi+2] ;¤®¡ ¢«ï¥¬ à §¬¥à த¨â¥«ì᪮£® ¡«®ª 
782
		cmp ebx,ecx ;ãç¨â뢠âì § £®«®¢ª¨ ­¥ ­ã¦­®, â. ª. áà ¢­¨¢ îâáï ⮫쪮 ¤ ­­ë¥ ¡«®ª®¢
784
		cmp ebx,ecx ;ãç¨â뢠âì § £®«®¢ª¨ ­¥ ­ã¦­®, â. ª. áà ¢­¨¢ îâáï ⮫쪮 ¤ ­­ë¥ ¡«®ª®¢
783
		jle @f
785
		jle @f
784
			;¤¨ £­®áâ¨à®¢ «¨ ®è¨¡ªã ä ©« , ¤®ç¥à­¨© ¡«®ª ¢ë室¨â §  ¯à¥¤¥«ë த¨â¥«ì᪮£®
786
			;¤¨ £­®áâ¨à®¢ «¨ ®è¨¡ªã ä ©« , ¤®ç¥à­¨© ¡«®ª ¢ë室¨â §  ¯à¥¤¥«ë த¨â¥«ì᪮£®
Line 1226... Line 1228...
1226
	buf2d_conv_24_to_8 dd sz_buf2d_conv_24_to_8
1228
	buf2d_conv_24_to_8 dd sz_buf2d_conv_24_to_8
1227
	buf2d_conv_24_to_32 dd sz_buf2d_conv_24_to_32
1229
	buf2d_conv_24_to_32 dd sz_buf2d_conv_24_to_32
1228
	buf2d_bit_blt dd sz_buf2d_bit_blt
1230
	buf2d_bit_blt dd sz_buf2d_bit_blt
1229
	buf2d_bit_blt_transp dd sz_buf2d_bit_blt_transp
1231
	buf2d_bit_blt_transp dd sz_buf2d_bit_blt_transp
1230
	buf2d_bit_blt_alpha dd sz_buf2d_bit_blt_alpha
1232
	buf2d_bit_blt_alpha dd sz_buf2d_bit_blt_alpha
1231
	buf2d_curve_bezier dd sz_buf2d_curve_bezier
-
 
1232
	buf2d_convert_text_matrix dd sz_buf2d_convert_text_matrix
1233
	buf2d_convert_text_matrix dd sz_buf2d_convert_text_matrix
1233
	buf2d_draw_text dd sz_buf2d_draw_text
1234
	buf2d_draw_text dd sz_buf2d_draw_text
1234
	buf2d_crop_color dd sz_buf2d_crop_color
1235
	buf2d_crop_color dd sz_buf2d_crop_color
1235
	buf2d_offset_h dd sz_buf2d_offset_h
1236
	buf2d_offset_h dd sz_buf2d_offset_h
1236
	buf2d_flood_fill dd sz_buf2d_flood_fill
-
 
1237
	buf2d_set_pixel dd sz_buf2d_set_pixel
1237
	buf2d_set_pixel dd sz_buf2d_set_pixel
1238
	dd 0,0
1238
	dd 0,0
1239
	sz_init0 db 'lib_init',0
1239
	sz_init0 db 'lib_init',0
1240
	sz_buf2d_create db 'buf2d_create',0
1240
	sz_buf2d_create db 'buf2d_create',0
1241
	sz_buf2d_create_f_img db 'buf2d_create_f_img',0
1241
	sz_buf2d_create_f_img db 'buf2d_create_f_img',0
Line 1252... Line 1252...
1252
	sz_buf2d_conv_24_to_8 db 'buf2d_conv_24_to_8',0
1252
	sz_buf2d_conv_24_to_8 db 'buf2d_conv_24_to_8',0
1253
	sz_buf2d_conv_24_to_32 db 'buf2d_conv_24_to_32',0
1253
	sz_buf2d_conv_24_to_32 db 'buf2d_conv_24_to_32',0
1254
	sz_buf2d_bit_blt db 'buf2d_bit_blt',0
1254
	sz_buf2d_bit_blt db 'buf2d_bit_blt',0
1255
	sz_buf2d_bit_blt_transp db 'buf2d_bit_blt_transp',0
1255
	sz_buf2d_bit_blt_transp db 'buf2d_bit_blt_transp',0
1256
	sz_buf2d_bit_blt_alpha db 'buf2d_bit_blt_alpha',0
1256
	sz_buf2d_bit_blt_alpha db 'buf2d_bit_blt_alpha',0
1257
	sz_buf2d_curve_bezier db 'buf2d_curve_bezier',0
-
 
1258
	sz_buf2d_convert_text_matrix db 'buf2d_convert_text_matrix',0
1257
	sz_buf2d_convert_text_matrix db 'buf2d_convert_text_matrix',0
1259
	sz_buf2d_draw_text db 'buf2d_draw_text',0
1258
	sz_buf2d_draw_text db 'buf2d_draw_text',0
1260
	sz_buf2d_crop_color db 'buf2d_crop_color',0
1259
	sz_buf2d_crop_color db 'buf2d_crop_color',0
1261
	sz_buf2d_offset_h db 'buf2d_offset_h',0
1260
	sz_buf2d_offset_h db 'buf2d_offset_h',0
1262
	sz_buf2d_flood_fill db 'buf2d_flood_fill',0
-
 
1263
	sz_buf2d_set_pixel db 'buf2d_set_pixel',0
1261
	sz_buf2d_set_pixel db 'buf2d_set_pixel',0
Line 1264... Line 1262...
1264
 
1262
 
1265
align 4
1263
align 4
1266
import_box_lib:
1264
import_box_lib:
1267
	dd sz_init1
-
 
1268
	init_checkbox dd sz_init_checkbox
-
 
1269
	check_box_draw dd sz_check_box_draw
1265
	dd sz_init1
1270
	edit_box_draw dd sz_edit_box_draw
1266
	edit_box_draw dd sz_edit_box_draw
1271
	edit_box_key dd sz_edit_box_key
1267
	edit_box_key dd sz_edit_box_key
1272
	edit_box_mouse dd sz_edit_box_mouse
1268
	edit_box_mouse dd sz_edit_box_mouse
1273
	edit_box_set_text dd sz_edit_box_set_text
1269
	edit_box_set_text dd sz_edit_box_set_text
Line 1298... Line 1294...
1298
	tl_node_poi_get_next_info dd sz_tl_node_poi_get_next_info
1294
	tl_node_poi_get_next_info dd sz_tl_node_poi_get_next_info
1299
	tl_node_poi_get_data dd sz_tl_node_poi_get_data
1295
	tl_node_poi_get_data dd sz_tl_node_poi_get_data
Line 1300... Line 1296...
1300
 
1296
 
1301
	dd 0,0
1297
	dd 0,0
1302
	sz_init1 db 'lib_init',0
-
 
1303
	sz_init_checkbox db 'init_checkbox2',0
-
 
1304
	sz_check_box_draw db 'check_box_draw2',0
1298
	sz_init1 db 'lib_init',0
1305
	sz_edit_box_draw db 'edit_box',0
1299
	sz_edit_box_draw db 'edit_box',0
1306
	sz_edit_box_key db 'edit_box_key',0
1300
	sz_edit_box_key db 'edit_box_key',0
1307
	sz_edit_box_mouse db 'edit_box_mouse',0
1301
	sz_edit_box_mouse db 'edit_box_mouse',0
1308
	sz_edit_box_set_text db 'edit_box_set_text',0
1302
	sz_edit_box_set_text db 'edit_box_set_text',0
Line 1411... Line 1405...
1411
	dd 0,24 ;+16 color,bit in pixel
1405
	dd 0,24 ;+16 color,bit in pixel
Line 1412... Line 1406...
1412
 
1406
 
1413
align 4
1407
align 4
1414
el_focus dd tree1
1408
el_focus dd tree1
1415
tree1 tree_list size_one_list,300+2, tl_key_no_edit+tl_draw_par_line,\
1409
tree1 tree_list size_one_list,300+2, tl_key_no_edit+tl_draw_par_line,\
1416
	16,16, 0xffffff,0xb0d0ff,0x400040, 5,35,195-16,250, 16,list_offs_text,0, el_focus,\
1410
	16,16, 0xffffff,0xb0d0ff,0x400040, 5,35,195-16,250, 16,list_offs_text,0,\
Line 1417... Line 1411...
1417
	w_scr_t1,0
1411
	el_focus,w_scr_t1,0
1418
 
1412
 
Line 1419... Line 1413...
1419
align 4
1413
align 4
Line 1433... Line 1427...
1433
mat_shininess dd 3.0 ;  §¬¥à ¡«¨ª  (®¡à â­ ï ¯à®¯®àæ¨ï)
1427
mat_shininess dd 3.0 ;  §¬¥à ¡«¨ª  (®¡à â­ ï ¯à®¯®àæ¨ï)
1434
white_light dd 0.8, 0.8, 0.8, 1.0 ; –¢¥â ¨ ¨­â¥­á¨¢­®áâì ®á¢¥é¥­¨ï, £¥­¥à¨à㥬®£® ¨áâ®ç­¨ª®¬
1428
white_light dd 0.8, 0.8, 0.8, 1.0 ; –¢¥â ¨ ¨­â¥­á¨¢­®áâì ®á¢¥é¥­¨ï, £¥­¥à¨à㥬®£® ¨áâ®ç­¨ª®¬
1435
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ;  à ¬¥âàë ä®­®¢®£® ®á¢¥é¥­¨ï
1429
lmodel_ambient dd 0.3, 0.3, 0.3, 1.0 ;  à ¬¥âàë ä®­®¢®£® ®á¢¥é¥­¨ï
Line 1436... Line 1430...
1436
 
1430
 
1437
if lang eq ru
1431
if lang eq ru
1438
capt db 'info 3ds ¢¥àá¨ï 09.01.16',0 ;¯®¤¯¨áì ®ª­ 
1432
capt db 'info 3ds ¢¥àá¨ï 16.01.16',0 ;¯®¤¯¨áì ®ª­ 
1439
else
1433
else
1440
capt db 'info 3ds version 09.01.16',0 ;window caption
1434
capt db 'info 3ds version 16.01.16',0 ;window caption
Line 1441... Line 1435...
1441
end if
1435
end if
1442
 
1436
 
1443
align 16
1437
align 16