Subversion Repositories Kolibri OS

Rev

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

Rev 5881 Rev 5911
Line 64... Line 64...
64
	end if
64
	end if
Line 65... Line 65...
65
 
65
 
66
	stdcall mem.Alloc, dword size ;¢ë¤¥«ï¥¬ ¯ ¬ïâì ¤«ï ¨§®¡à ¦¥­¨ï
66
	stdcall mem.Alloc, dword size ;¢ë¤¥«ï¥¬ ¯ ¬ïâì ¤«ï ¨§®¡à ¦¥­¨ï
Line 67... Line -...
67
	mov [buf],eax
-
 
68
 
67
	mov [buf],eax
69
	mov eax,70 ;70-ï äã­ªæ¨ï à ¡®â  á ä ©« ¬¨
68
 
70
	mov [run_file_70.Function], 0
69
	mov [run_file_70.Function], 0
71
	mov [run_file_70.Position], 0
70
	mov [run_file_70.Position], 0
72
	mov [run_file_70.Flags], 0
71
	mov [run_file_70.Flags], 0
73
	mov [run_file_70.Count], dword size
72
	mov [run_file_70.Count], dword size
74
	m2m [run_file_70.Buffer], [buf]
73
	m2m [run_file_70.Buffer], eax
75
	mov byte[run_file_70+20], 0
-
 
76
	mov [run_file_70.FileName], file_name
74
	mov byte[run_file_70+20], 0
77
	mov ebx,run_file_70
75
	mov [run_file_70.FileName], file_name
78
	int 0x40 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥­¨ï
76
	mcall 70,run_file_70 ;§ £à㦠¥¬ ä ©« ¨§®¡à ¦¥­¨ï
79
	cmp ebx,0xffffffff
77
	cmp ebx,0xffffffff
80
	je @f
78
	je @f
81
		;®¯à¥¤¥«ï¥¬ ¢¨¤ ¨§®¡à ¦¥­¨ï ¨ ¯¥à¥¢®¤¨¬ ¥£® ¢® ¢à¥¬¥­­ë© ¡ãä¥à image_data
79
		;®¯à¥¤¥«ï¥¬ ¢¨¤ ¨§®¡à ¦¥­¨ï ¨ ¯¥à¥¢®¤¨¬ ¥£® ¢® ¢à¥¬¥­­ë© ¡ãä¥à image_data
Line 120... Line 118...
120
 
118
 
121
align 4
119
align 4
122
start:
120
start:
123
	load_libraries l_libs_start,l_libs_end
121
	load_libraries l_libs_start,l_libs_end
124
	;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨«¨áì ¡¨¡«¨®â¥ª¨
-
 
125
	mov ebp,lib_0
122
	;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨«¨áì ¡¨¡«¨®â¥ª¨
126
	cmp dword [ebp+ll_struc_size-4],0
123
	cmp	dword [lib_0+ll_struc_size-4],0
127
	jz @f
-
 
128
	mov ebp,lib_1
124
	jnz @f
129
	cmp dword [ebp+ll_struc_size-4],0
125
	cmp	dword [lib_1+ll_struc_size-4],0
130
	jz @f
-
 
131
	mov ebp,lib_2
126
	jnz @f
132
	cmp dword [ebp+ll_struc_size-4],0
127
	cmp	dword [lib_2+ll_struc_size-4],0
133
	jz @f
-
 
134
	mov ebp,lib_3
128
	jnz @f
135
	cmp dword [ebp+ll_struc_size-4],0
129
	cmp	dword [lib_3+ll_struc_size-4],0
136
	jz @f
130
	jnz @f
137
		mcall -1 ;exit not correct
131
	jmp .lib
-
 
132
	@@:
-
 
133
		mcall -1 ;exit not correct
138
	@@:
134
	.lib:
139
	mcall 48,3,sc,sizeof.system_colors
135
	mcall 48,3,sc,sizeof.system_colors
140
	mcall 40,0x27
136
	mcall 40,0x27
Line -... Line 137...
-
 
137
	stdcall [OpenDialog_Init],OpenDialog_data ;¯®¤£®â®¢ª  ¤¨ «®£ 
141
	stdcall [OpenDialog_Init],OpenDialog_data ;¯®¤£®â®¢ª  ¤¨ «®£ 
138
 
142
 
139
	mov dword[w_scr_t1.type],1
143
	stdcall dword[tl_data_init], tree1
140
	stdcall dword[tl_data_init], tree1
144
	;á¨á⥬­ë¥ ¨ª®­ª¨ 16*16 ¤«ï tree_list
141
	;á¨á⥬­ë¥ ¨ª®­ª¨ 16*16 ¤«ï tree_list
145
	load_image_file 'tl_sys_16.png', icon_tl_sys,TREE_ICON_SYS16_BMP_SIZE
142
	load_image_file 'tl_sys_16.png', icon_tl_sys,TREE_ICON_SYS16_BMP_SIZE
Line 219... Line 216...
219
	mcall 26,9
216
	mcall 26,9
220
	mov [last_time],eax
217
	mov [last_time],eax
Line 221... Line 218...
221
 
218
 
222
	;
219
	;
223
	stdcall [tl_node_get_data],tree1
-
 
224
	pop ebx
220
	stdcall [tl_node_get_data],tree1
225
	cmp ebx,0
221
	cmp eax,0
-
 
222
	je @f
226
	je @f
223
		mov ebx,eax
227
		mov eax,dword[ebx] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
224
		mov eax,dword[ebx] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
228
		mov ecx,dword[ebx+4] ;à §¬¥à ¡«®ª 
225
		mov ecx,dword[ebx+4] ;à §¬¥à ¡«®ª 
229
		stdcall hex_in_str, txt_3ds_offs.dig, eax,8
226
		stdcall hex_in_str, txt_3ds_offs.dig, eax,8
Line 348... Line 345...
348
	@@:
345
	@@:
349
	sub eax,[buf_0.w]
346
	sub eax,[buf_0.w]
350
	sub eax,41
347
	sub eax,41
351
	mov dword[tree1.box_width],eax
348
	mov dword[tree1.box_width],eax
352
	add ax,word[tree1.box_left]
349
	add ax,word[tree1.box_left]
353
	mov word[w_scr_t1.start_x],ax
350
	mov word[w_scr_t1+sb_offs_start_x],ax
354
	add ax,16+5
351
	add ax,16+5
355
	mov word[buf_0.l],ax
352
	mov word[buf_0.l],ax
Line 356... Line -...
356
 
-
 
357
	mov eax,8
-
 
358
	mov ebx,(5 shl 16)+20
-
 
359
	mov ecx,(5 shl 16)+20
-
 
360
	mov edx,3
353
 
361
	mov esi,[sc.work_button]
354
	mov esi,[sc.work_button]
Line 362... Line 355...
362
	int 0x40
355
	mcall 8,(5 shl 16)+20,(5 shl 16)+20,3
363
 
356
 
364
	mov ebx,(30 shl 16)+20
357
	mov ebx,(30 shl 16)+20
Line 370... Line 363...
370
		mov ebx,(55 shl 16)+20
363
		mov ebx,(55 shl 16)+20
371
		mov edx,5
364
		mov edx,5
372
		int 0x40
365
		int 0x40
373
	@@:
366
	@@:
Line 374... Line 367...
374
 
367
 
375
	mov ebx,(85 shl 16)+20
368
	mcall ,(85 shl 16)+20,,6 ;®ª­® á ª®®à¤¨­ â ¬¨
376
	mov edx,6 ;®ª­® á ª®®à¤¨­ â ¬¨
-
 
Line 377... Line -...
377
	int 0x40
-
 
378
 
-
 
379
	mov ebx,(110 shl 16)+20
-
 
380
	mov edx,7 ;㤠«¥­¨¥ ¡«®ª 
-
 
381
	int 0x40
-
 
382
 
369
	mcall ,(110 shl 16)+20,,7 ;㤠«¥­¨¥ ¡«®ª 
383
	mov eax,7
-
 
384
	mov ebx,[image_data_toolbar]
-
 
385
	mov ecx,(16 shl 16)+16
-
 
Line 386... Line 370...
386
	mov edx,(7 shl 16)+7 ;new
370
 
387
	int 0x40
371
	mcall 7,[image_data_toolbar],(16 shl 16)+16,(7 shl 16)+7 ;new
388
 
372
 
Line 454... Line 438...
454
	cmp ah,1
438
	cmp ah,1
455
	jne still
439
	jne still
456
.exit:
440
.exit:
457
	mov dword[tree1.data_img],0
441
	mov dword[tree1.data_img],0
458
	mov dword[tree1.data_img_sys],0
442
	mov dword[tree1.data_img_sys],0
459
	stdcall dword[tl_data_clear], tree1
443
	stdcall [tl_data_clear], tree1
460
	stdcall [buf2d_delete],buf_0
444
	stdcall [buf2d_delete],buf_0
461
	stdcall [buf2d_delete],buf_1 ;㤠«ï¥¬ ¡ãä¥à
445
	stdcall [buf2d_delete],buf_1 ;㤠«ï¥¬ ¡ãä¥à
462
	stdcall mem.Free,[image_data_toolbar]
446
	stdcall mem.Free,[image_data_toolbar]
463
	stdcall mem.Free,[open_file_lif]
447
	stdcall mem.Free,[open_file_lif]
464
	mcall -1
448
	mcall -1
Line 793... Line 777...
793
			mov ecx,size_one_list-(list_offs_text+5)
777
			mov ecx,size_one_list-(list_offs_text+5)
794
			cld
778
			cld
795
			rep movsb
779
			rep movsb
796
			mov byte[buffer+size_one_list-1],0 ;0 - ᨬ¢®« ª®­¥æ  áâப¨
780
			mov byte[buffer+size_one_list-1],0 ;0 - ᨬ¢®« ª®­¥æ  áâப¨
797
		.no_capt:
781
		.no_capt:
798
		stdcall [tl_node_add], buffer, ebx, tree1
782
		stdcall [tl_node_add], tree1, ebx, buffer
799
		stdcall [tl_cur_next], tree1
783
		stdcall [tl_cur_next], tree1
800
		if debug
784
		if debug
801
			stdcall print_err,sz_add_3ds_object,buffer+list_offs_text
785
			stdcall print_err,sz_add_3ds_object,buffer+list_offs_text
802
		end if
786
		end if
803
	popad
787
	popad
Line 905... Line 889...
905
; 㤠«¥­¨¥ ¢ë¡à ­­®£® ¡«®ª  ¨§ ®âªàë⮣® ä ©« 
889
; 㤠«¥­¨¥ ¢ë¡à ­­®£® ¡«®ª  ¨§ ®âªàë⮣® ä ©« 
906
align 4
890
align 4
907
but_delete_chunk:
891
but_delete_chunk:
908
	pushad
892
	pushad
909
	stdcall [tl_node_get_data],tree1
893
	stdcall [tl_node_get_data],tree1
910
	pop ebx
-
 
911
	cmp ebx,0
894
	cmp eax,0
912
	je .end_f
895
	je .end_f
913
	cmp byte[ebx+list_offs_chunk_del],0 ;¥á«¨ ¡«®ª § é¨é¥­ ®â 㤠«¥­¨ï
896
	cmp byte[eax+list_offs_chunk_del],0 ;¥á«¨ ¡«®ª § é¨é¥­ ®â 㤠«¥­¨ï
914
	jne .notify
897
	jne .notify
Line 915... Line 898...
915
 
898
 
916
	;(1) ª®¯¨à®¢ ­¨¥ ­¨¦­¥© ç á⨠䠩« 
899
	;(1) ª®¯¨à®¢ ­¨¥ ­¨¦­¥© ç á⨠䠩« 
917
	mov edx,dword[ebx+4] ;à §¬¥à ¡«®ª 
900
	mov edx,dword[eax+4] ;à §¬¥à ¡«®ª 
918
	sub [open_file_size],edx ;¨§¬¥­¥­¨¥ à §¬¥à®¢ ä ©« 
901
	sub [open_file_size],edx ;¨§¬¥­¥­¨¥ à §¬¥à®¢ ä ©« 
919
	mov ecx,[open_file_size]
902
	mov ecx,[open_file_size]
920
	mov eax,dword[ebx] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
903
	mov ebx,dword[eax] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ë¡à ­­®£® ¡«®ª  ®â­®á¨â¥«ì­® ­ ç «  ä ©« 
921
	sub ecx,eax ;ecx - à §¬¥à ­¨¦­¥© ᤢ¨£ ¥¬®© ç á⨠䠩« 
904
	sub ecx,ebx ;ecx - à §¬¥à ­¨¦­¥© ᤢ¨£ ¥¬®© ç á⨠䠩« 
922
	add eax,dword[open_file_lif] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ ¯ ¬ïâ¨
905
	add ebx,dword[open_file_lif] ;¯®«ãç ¥¬ §­ ç¥­¨¥ ᤢ¨£  ¢ ¯ ¬ïâ¨
923
	mov edi,eax
906
	mov edi,ebx
924
	mov esi,eax
907
	mov esi,ebx
925
	add esi,edx
908
	add esi,edx
926
	mov al,byte[ebx+list_offs_chunk_lev] ;¡¥à¥¬ ã஢¥­ì ⥪ã饣® 㧫 
909
	mov bl,byte[eax+list_offs_chunk_lev] ;¡¥à¥¬ ã஢¥­ì ⥪ã饣® 㧫 
927
	rep movsb
910
	rep movsb
Line 928... Line 911...
928
	mov byte[can_save],1
911
	mov byte[can_save],1
929
 
912
 
930
	;(2) ¨§¬¥­¥­¨¥ à §¬¥à®¢ த¨â¥«ìáª¨å ¡«®ª®¢
913
	;(2) ¨§¬¥­¥­¨¥ à §¬¥à®¢ த¨â¥«ìáª¨å ¡«®ª®¢
931
	cmp al,0
914
	cmp bl,0
932
	je .end_2
915
	je .end_2
933
	.cycle_2:
916
	.cycle_2:
934
	stdcall [tl_cur_perv], tree1
-
 
935
	stdcall [tl_node_get_data],tree1
917
	stdcall [tl_cur_perv], tree1
936
	pop ebx
918
	stdcall [tl_node_get_data],tree1
937
	cmp ebx,0
919
	cmp eax,0
938
	je .end_2
920
	je .end_2
939
		cmp byte[ebx+list_offs_chunk_lev],al
921
		cmp byte[eax+list_offs_chunk_lev],bl
940
		jge .cycle_2
922
		jge .cycle_2
941
		mov al,byte[ebx+list_offs_chunk_lev]
923
		mov bl,byte[eax+list_offs_chunk_lev]
942
		mov ecx,[ebx]
924
		mov ecx,[eax]
943
		add ecx,[open_file_lif]
925
		add ecx,[open_file_lif]
944
		sub dword[ecx+2],edx
926
		sub dword[ecx+2],edx
945
		cmp al,0 ;¥á«¨ á ¬ë© ¢¥àå­¨© 㧥«, â® al=0
927
		cmp bl,0 ;¥á«¨ á ¬ë© ¢¥àå­¨© 㧥«, â® bl=0
Line 946... Line 928...
946
		jne .cycle_2
928
		jne .cycle_2
947
	.end_2:
929
	.end_2:
Line 1282... Line 1264...
1282
	sz_tl_node_poi_get_info db 'tl_node_poi_get_info',0
1264
	sz_tl_node_poi_get_info db 'tl_node_poi_get_info',0
1283
	sz_tl_node_poi_get_next_info db 'tl_node_poi_get_next_info',0
1265
	sz_tl_node_poi_get_next_info db 'tl_node_poi_get_next_info',0
1284
	sz_tl_node_poi_get_data db 'tl_node_poi_get_data',0
1266
	sz_tl_node_poi_get_data db 'tl_node_poi_get_data',0
Line 1285... Line 1267...
1285
 
1267
 
1286
 
1268
 
1287
 
1269
align 4
1288
mouse_dd dd 0x0
1270
mouse_dd dd 0x0
Line 1289... Line -...
1289
sc system_colors 
-
 
1290
last_time dd 0
-
 
1291
 
-
 
1292
align 16
1271
sc system_colors 
1293
procinfo process_information 
1272
last_time dd 0
1294
 
1273
 
1295
align 4
1274
align 4
1296
buf_0: dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
1275
buf_0: dd 0 ;㪠§ â¥«ì ­  ¡ãä¥à ¨§®¡à ¦¥­¨ï
Line 1309... Line 1288...
1309
	dd 128 ;+8 w
1288
	dd 128 ;+8 w
1310
	dd 144 ;+12 h
1289
	dd 144 ;+12 h
1311
	dd 0 ;+16 color
1290
	dd 0 ;+16 color
1312
	db 24 ;+20 bit in pixel
1291
	db 24 ;+20 bit in pixel
Line -... Line 1292...
-
 
1292
 
1313
 
1293
align 4
1314
el_focus dd tree1
1294
el_focus dd tree1
1315
tree1 tree_list size_one_list,300+2, tl_key_no_edit+tl_draw_par_line,\
1295
tree1 tree_list size_one_list,300+2, tl_key_no_edit+tl_draw_par_line,\
1316
	16,16, 0xffffff,0xb0d0ff,0xd000ff, 5,35,195-16,250, 16,list_offs_text,0, el_focus,\
1296
	16,16, 0xffffff,0xb0d0ff,0xd000ff, 5,35,195-16,250, 16,list_offs_text,0, el_focus,\
Line 1317... Line 1297...
1317
	w_scr_t1,0
1297
	w_scr_t1,0
1318
 
-
 
1319
align 4
-
 
1320
w_scr_t1:
-
 
1321
.size_x     dw 16 ;+0
-
 
1322
.start_x    dw 0
-
 
1323
rb 2+2
-
 
1324
.btn_high   dd 15 ;+8
-
 
1325
.type	    dd 1  ;+12
-
 
1326
.max_area   dd 100  ;+16
-
 
1327
rb 4+4
1298
 
1328
.bckg_col   dd 0xeeeeee ;+28
-
 
1329
.frnt_col   dd 0xbbddff ;+32
-
 
1330
.line_col   dd 0  ;+36
-
 
1331
rb 4+2+2
-
 
1332
.run_x:
-
 
1333
rb 2+2+2+2+4+4+4+4+4+4
-
 
1334
.all_redraw dd 0 ;+80
-
 
Line 1335... Line 1299...
1335
.ar_offset  dd 1 ;+84
1299
align 4
1336
 
1300
w_scr_t1 scrollbar 16,0, 3,0, 15, 100, 0,0, 0xeeeeee, 0xbbddff, 0, 1
-
 
1301
 
1337
 
1302
align 16
1338
align 4
1303
i_end:
1339
i_end:
1304
	procinfo process_information
1340
	rb 1024
1305
	rb 1024
1341
thread_coords:
1306
thread_coords: