Subversion Repositories Kolibri OS

Rev

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

Rev 2897 Rev 2915
Line 14... Line 14...
14
include '../../../../programs/develop/libraries/box_lib/load_lib.mac'
14
include '../../../../programs/develop/libraries/box_lib/load_lib.mac'
15
include '../trunk/mem.inc'
15
include '../trunk/mem.inc'
16
include '../trunk/dll.inc'
16
include '../trunk/dll.inc'
Line 17... Line 17...
17
 
17
 
18
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
18
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
Line 19... Line 19...
19
caption db 'Voxel creator 1.08.12',0 ;¯®¤¯¨áì ®ª­ 
19
caption db 'Voxel creator 8.08.12',0 ;¯®¤¯¨áì ®ª­ 
20
 
20
 
21
struct FileInfoBlock
21
struct FileInfoBlock
22
	Function dd ?
22
	Function dd ?
Line 42... Line 42...
42
vox_offs_data equ 12
42
vox_offs_data equ 12
Line 43... Line 43...
43
 
43
 
44
run_file_70 FileInfoBlock
44
run_file_70 FileInfoBlock
45
image_data dd 0 ;㪠§ â¥«ì ­  ¢à¥¬¥­­ãî ¯ ¬ïâì. ¤«ï ­ã¦¥­ ¯à¥®¡à §®¢ ­¨ï ¨§®¡à ¦¥­¨ï
45
image_data dd 0 ;㪠§ â¥«ì ­  ¢à¥¬¥­­ãî ¯ ¬ïâì. ¤«ï ­ã¦¥­ ¯à¥®¡à §®¢ ­¨ï ¨§®¡à ¦¥­¨ï
-
 
46
vox_obj_size dd 0 ;à §¬¥à ¢®ªá¥«ì­®£® ®¡ê¥ªâ  (¤«ï ã᪮७¨ï ¢áâ ¢ª¨)
-
 
47
txt_space db ' ',0
-
 
48
txt_pref db ' ¡ ',0,' Š¡',0,' Œ¡',0,' ƒ¡',0 ;¯à¨áâ ¢ª¨: ª¨«®, ¬¥£ , £¨£ 
-
 
49
txt_f_size: db ' §¬¥à: '
Line 46... Line 50...
46
vox_obj_size dd 0 ;à §¬¥à ¢®ªá¥«ì­®£® ®¡ê¥ªâ  (¤«ï ã᪮७¨ï ¢áâ ¢ª¨)
50
.size: rb 16
47
 
51
 
48
fn_toolbar db 'toolbar.png',0
52
fn_toolbar db 'toolbar.png',0
49
IMAGE_TOOLBAR_ICON_SIZE equ 16*16*3
53
IMAGE_TOOLBAR_ICON_SIZE equ 16*16*3
Line 215... Line 219...
215
		cmp edx,ebx
219
		cmp edx,ebx
216
		jle .cycle_0
220
		jle .cycle_0
Line 217... Line 221...
217
 
221
 
218
	stdcall [buf2d_draw], buf_npl
222
	stdcall [buf2d_draw], buf_npl
-
 
223
	inc dword[n_plane] ;¯¥à¥¬¥é ¥¬ ¯«®áª®áâì á¥ç¥­¨ï
219
	inc dword[n_plane] ;¯¥à¥¬¥é ¥¬ ¯«®áª®áâì á¥ç¥­¨ï
224
	call draw_pok
220
	.end_f:
225
	.end_f:
221
	popad
226
	popad
Line 222... Line 227...
222
	jmp still
227
	jmp still
Line 497... Line 502...
497
	add ebx,IMAGE_TOOLBAR_ICON_SIZE
502
	add ebx,IMAGE_TOOLBAR_ICON_SIZE
498
	add edx,(25 shl 16) ;
503
	add edx,(25 shl 16) ;
499
	int 0x40
504
	int 0x40
Line 500... Line 505...
500
 
505
 
-
 
506
	call draw_buffers
Line 501... Line 507...
501
	call draw_buffers
507
	call draw_pok
502
 
508
 
503
	mcall 12,2
509
	mcall 12,2
Line 512... Line 518...
512
	stdcall [buf2d_draw], buf_i1
518
	stdcall [buf2d_draw], buf_i1
513
	stdcall [buf2d_draw], buf_i2
519
	stdcall [buf2d_draw], buf_i2
514
	ret
520
	ret
Line 515... Line 521...
515
 
521
 
-
 
522
align 4
-
 
523
draw_pok:
-
 
524
	;®¡­®¢«¥­¨¥ ¯®¤¯¨á¨ à §¬¥à  ä ©« 
-
 
525
	mov edi,txt_f_size.size
-
 
526
	mov dword[edi],0
-
 
527
	mov eax,dword[vox_obj_size]
-
 
528
	mov ebx,txt_pref
-
 
529
	.cycle:
-
 
530
		cmp eax,1024
-
 
531
		jl @f
-
 
532
		shr eax,10
-
 
533
		add ebx,4
-
 
534
		jmp .cycle
-
 
535
	@@:
-
 
536
	call convert_int_to_str
-
 
537
	stdcall str_cat, edi,ebx
-
 
538
	stdcall str_cat, edi,txt_space ;§ ¢¥àè î騩 ¯à®¡¥«
-
 
539
 
-
 
540
	mov eax,4 ;à¨á®¢ ­¨¥ ⥪áâ 
-
 
541
	mov ebx,(275 shl 16)+7
-
 
542
	mov ecx,[sc.work_text]
-
 
543
	or  ecx,0x80000000 or (1 shl 30)
-
 
544
	mov edx,txt_f_size
-
 
545
	mov edi,[sc.work] ;梥â ä®­  ®ª­ 
-
 
546
	int 0x40
-
 
547
 
-
 
548
	ret
-
 
549
 
516
align 4
550
align 4
517
key:
551
key:
518
	mcall 2
552
	mcall 2
Line 1291... Line 1325...
1291
	@@:
1325
	@@:
1292
	pop esi ecx ebx
1326
	pop esi ecx ebx
1293
	ret
1327
	ret
1294
endp
1328
endp
Line -... Line 1329...
-
 
1329
 
-
 
1330
align 4
-
 
1331
proc str_cat uses eax ecx edi esi, str1:dword, str2:dword
-
 
1332
	mov esi,dword[str2]
-
 
1333
	stdcall str_len,esi
-
 
1334
	mov ecx,eax
-
 
1335
	inc ecx
-
 
1336
	mov edi,dword[str1]
-
 
1337
	stdcall str_len,edi
-
 
1338
	add edi,eax
-
 
1339
	cld
-
 
1340
	repne movsb
-
 
1341
	ret
-
 
1342
endp
-
 
1343
 
-
 
1344
;output:
-
 
1345
; eax = strlen
-
 
1346
align 4
-
 
1347
proc str_len, str1:dword
-
 
1348
	mov eax,[str1]
-
 
1349
	@@:
-
 
1350
		cmp byte[eax],0
-
 
1351
		je @f
-
 
1352
		inc eax
-
 
1353
		jmp @b
-
 
1354
	@@:
-
 
1355
	sub eax,[str1]
-
 
1356
	ret
-
 
1357
endp
1295
 
1358
 
1296
msgbox_0:
1359
msgbox_0:
1297
	db 1,0
1360
	db 1,0
1298
	db '‚­¨¬ ­¨¥',0
1361
	db '‚­¨¬ ­¨¥',0
1299
	db ' §¬¥à ¢¥àå­¥£® ¨§®¡à ¦¥­¨ï ­¥ ª®à¥ªâ­ë©',0
1362
	db ' §¬¥à ¢¥àå­¥£® ¨§®¡à ¦¥­¨ï ­¥ ª®à¥ªâ­ë©',0
Line 1644... Line 1707...
1644
	db 6,7,4,3 ;w,h,h_osn,n
1707
	db 6,7,4,3 ;w,h,h_osn,n
1645
	rb BUF_STRUCT_SIZE*(2+1)
1708
	rb BUF_STRUCT_SIZE*(2+1)
Line 1646... Line -...
1646
 
-
 
1647
 
1709
 
1648
 
1710
 
1649
;íâ®â ª®¤ ­¥ ¬®©, ®­ ¯à¥®¡à §ã¥â ç¨á«® ¢ áâபã
1711
 
1650
;input:
1712
;input:
1651
; eax = value
1713
; eax = value
1652
; edi = string buffer
1714
; edi = string buffer
1653
;output:
1715
;output:
-
 
1716
align 4
1654
align 4
1717
convert_int_to_str:
-
 
1718
	pushad
1655
tl_convert_to_str:
1719
		cld
1656
	pushad
1720
		mov dword[edi+1],0
1657
		mov dword[edi+1],0
1721
		mov word[edi+5],0
Line 1658... Line 1722...
1658
		call .str
1722
		call .str
Line 1675... Line 1739...
1675
	or al,0x30  ;¤ ­­ ï ª®¬ ­¤  ª®à®ç¥  祬 ¤¢¥ ¢ëè¥
1739
	or al,0x30  ;¤ ­­ ï ª®¬ ­¤  ª®à®ç¥  祬 ¤¢¥ ¢ëè¥
1676
	stosb	    ;§ ¯¨á âì í«¥¬¥­â ¨§ ॣ¨áâà  al ¢ ï祪㠯 ¬ï⨠es:edi
1740
	stosb	    ;§ ¯¨á âì í«¥¬¥­â ¨§ ॣ¨áâà  al ¢ ï祪㠯 ¬ï⨠es:edi
1677
	ret	      ;¢¥à­ãâìáï ç¥­ì ¨­â¥à¥á­ë© 室 â.ª. ¯®ª  ¢ á⥪¥ åà ­¨âìáï ª®«-¢® ¢ë§®¢®¢ â® á⮫쪮 à § ¬ë ¨ ¡ã¤¥¬ ¢ë§ë¢ âìáï
1741
	ret	      ;¢¥à­ãâìáï ç¥­ì ¨­â¥à¥á­ë© 室 â.ª. ¯®ª  ¢ á⥪¥ åà ­¨âìáï ª®«-¢® ¢ë§®¢®¢ â® á⮫쪮 à § ¬ë ¨ ¡ã¤¥¬ ¢ë§ë¢ âìáï
Line 1678... Line 1742...
1678
 
1742
 
1679
i_end:
1743
i_end:
1680
		rb 1024
1744
		rb 2048
1681
	thread:
1745
	thread:
1682
		rb 1024
1746
		rb 2048
1683
stacktop:
1747
stacktop:
1684
	sys_path rb 1024
1748
	sys_path rb 1024
1685
	file_name:
1749
	file_name:
1686
		rb 1024 ;4096 
1750
		rb 1024 ;4096