/programs/develop/libraries/box_lib/trunk/t_edit.mac |
---|
1,6 → 1,6 |
; ¬ ªà®á ¤«ï á¨á⥬®© ¡¨¡«¨®â¥ª¨ box_lib.obj |
; í«¥¬¥â TextEditor ¤«ï Kolibri OS |
; ä ©« ¯®á«¥¤¨© à § ¨§¬¥ï«áï 22.08.2011 IgorA |
; ä ©« ¯®á«¥¤¨© à § ¨§¬¥ï«áï 19.06.2012 IgorA |
; ª®¤ ¯à¨¬¥¥ GPL2 «¨æ¥§¨ï |
;input: |
2339,15 → 2339,60 |
; ebx = ª®««¨ç¥á⢮ ¯à®ç¨â ëå ¡ ©â |
align 4 |
proc ted_open_file, edit:dword, file:dword, f_name:dword ;äãªæ¨ï ®âªàëâ¨ï ä ©« |
push edi |
push ecx edx edi |
mov edi,dword[edit] |
; *** ¯à®¢¥à塞 à §¬¥à ¯ ¬ï⨠¨ ¥á«¨ ¥ å¢ â ¥â ⮠㢥«¨ç¨¢ ¥¬ *** |
;¯à®¡ã¥¬ ¯®«ãç¨âì ¨ä®à¬ æ¨î ® ä ©«¥ |
mov eax,70 |
mov ebx,dword[file] |
mov dword[ebx], 5 |
mov dword[ebx+4], 0 |
mov dword[ebx+8], 0 |
mov dword[ebx+12], 0 |
m2m dword[ebx+16], ted_tex |
mov byte[ebx+20], 0 |
push dword[f_name] |
pop dword[ebx+21] |
int 0x40 |
cmp eax,0 |
je .end_0 |
mov edx,ted_max_chars |
cmp eax,2 ;äãªæ¨ï ¥ ¯®¤¤¥à¦¨¢ ¥âáï ¤«ï ¤ ®© ä ©«®¢®© á¨á⥬ë |
je @f |
jmp .ret_f |
.end_0: |
;¯à®¢¥à塞 å¢ â¨â «¨ ¯ ¬ï⨠¤«ï § £à㧪¨ ä ©« |
mov ecx,ted_max_chars |
sub ecx,2 ;ecx = ¬ ªá¨¬ «ì®¥ ç¨á«® ¡ ©â, ¤«ï ª®â®àëå ¡ë« ¢ë¤¥«¥ ¯ ¬ïâì |
mov edx,ted_tex |
mov edx,dword[edx+32] ;+32 = +0x20: qword: à §¬¥à ä ©« ¢ ¡ ©â å |
cmp edx,ecx |
jl @f |
;㢥«¨ç¨¢ ¥¬ ¯ ¬ïâì ¥á«¨ ¥ å¢ â¨«® |
mov ecx,edx ;¯ ¬ïâì ¥®¡å®¤¨¬ ï ¤«ï ®âªàëâ¨ï ä ©« |
add ecx,2 ;¯ ¬ïâì ¤«ï á«ã¦¥¡ëå ç «ì®£® ¨ ª®¥ç®£® ᨬ¢®«®¢ |
add ecx,ted_increase_size ;¯ ¬ïâì ¤«ï । ªâ¨à®¢ ¨ï ä ©« |
mov ted_max_chars,ecx |
imul ecx,sizeof.symbol |
invoke mem.realloc, ted_tex,ecx |
mov ted_tex,eax |
mov ted_tex_1,eax |
add ted_tex_1,sizeof.symbol |
add eax,ecx |
mov ted_tex_end,eax |
mov ecx,ted_tex_1 |
add ecx,sizeof.symbol |
mov ted_ptr_free_symb,ecx |
@@: |
; *** ¯à®¡ã¥¬ ®âªàëâì ä ©« *** |
mov eax,70 |
mov ebx,dword[file] |
mov dword[ebx], 0 |
mov dword[ebx+4], 0 |
mov dword[ebx+8], 0 |
m2m dword[ebx+12], ted_max_chars ;ç¨á«® ¡ ©â, ª®â®àë¥ ¬®£ãâ ¡ëâì áç¨â ë á ä ©« |
m2m dword[ebx+12], edx ;ç¨á«® ¡ ©â, ª®â®àë¥ ¬®£ãâ ¡ëâì áç¨â ë á ä ©« (¥ ¡®«ìè¥ ç¥¬ ted_max_chars) |
m2m dword[ebx+16], ted_tex |
mov byte[ebx+20], 0 |
push dword[f_name] |
2365,7 → 2410,7 |
;if open file |
call ted_on_open_file |
.ret_f: |
pop edi |
pop edi edx ecx |
ret |
endp |
/programs/media/voxel_editor/trunk/vaz2106.vox |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/programs/media/voxel_editor/trunk/voxel_editor.asm |
---|
17,7 → 17,7 |
include 'vox_draw.inc' |
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load |
caption db 'Voxel editor 12.06.12',0 ;¯®¤¯¨áì ®ª |
caption db 'Voxel editor 19.06.12',0 ;¯®¤¯¨áì ®ª |
struct FileInfoBlock |
Function dd ? |
474,13 → 474,13 |
mov edi,[sc.work_button] |
int 0x40 ;¬ áèâ ¡ |
mov ecx,[v_cur_x] |
add edx,(6*2)*65536+9 |
int 0x40 ; |
add edx,9 |
int 0x40 ;ªãàá®à x |
mov ecx,[v_cur_y] |
add edx,(6*0)*65536+9 |
int 0x40 ; |
add edx,9 |
int 0x40 ;ªãàá®à y |
mov ecx,[n_plane] |
add edx,(6*0)*65536+9 |
add edx,9 |
int 0x40 ;®¬¥à á¥ç¥¨ï |
mov eax,4 ;à¨á®¢ ¨¥ ⥪áâ |
914,7 → 914,8 |
mov ebx,[scaled_zoom] |
sub eax,ebx |
inc ebx |
stdcall [buf2d_vox_obj_draw_3g_scaled], buf_r_img, buf_r_z, buf_vox, [open_file_vox], 0,0, 0, ebx, [cam_x],[cam_y],[cam_z],eax, 0xd080d0 |
stdcall [buf2d_vox_obj_draw_3g_scaled], buf_r_img, buf_r_z, buf_vox,\ |
[open_file_vox], 0,0, 0, ebx, [cam_x],[cam_y],[cam_z],eax, [sc.work_graph] |
bt dword[mode_light],0 |
jnc @f |
stdcall [buf2d_vox_obj_draw_3g_shadows], buf_r_img, buf_r_z, buf_vox, 0,0, 0, ebx, 3 |
1038,14 → 1039,66 |
stdcall [buf2d_vox_obj_draw_3g_shadows], buf_0, buf_0z, buf_vox, 0,0, 0, [scaled_zoom], 3 |
.end_2: |
.end_0: |
pop ecx ebx eax |
call draw_vox_cursor |
stdcall [buf2d_draw], buf_0 ;®¡®¢«ï¥¬ ¡ãä¥à íªà ¥ |
stdcall [buf2d_draw], buf_pl ;®¡®¢«ï¥¬ ¡ãä¥à íªà ¥ |
.end_f: |
ret |
;à¨á®¢ ¨¥ ªãàá®à |
align 4 |
draw_vox_cursor: |
pushad |
mov ecx,[v_zoom] |
cmp ecx,[scaled_zoom] |
jle @f |
mov ecx,[scaled_zoom] |
@@: |
xor edx,edx |
inc edx |
shl edx,cl |
mov eax,[v_cur_x] |
cmp eax,edx |
jge .end_f ;ªãàá®à § ¯à¥¤¥« ¬¨ ¯®«ï |
mov edi,TILE_SIZE |
imul eax,edi |
add eax,OT_MAP_X |
mov ebx,edx |
dec ebx |
sub ebx,[v_cur_y] |
imul ebx,edi |
add ebx,OT_MAP_Y |
inc eax |
inc ebx |
sub edi,2 |
stdcall [buf2d_rect_by_size], buf_pl, eax,ebx, edi,edi,[sc.work_graph] |
dec ebx |
add edi,2 |
;£®à¨§®â «ìë¥ «¨¨¨ |
sub eax,2 |
mov ecx,edi |
imul edi,edx |
shr ecx,1 |
add ebx,ecx ;æ¥â஢ª ¯® á¥à¥¤¨¥ ª«¥âª¨ |
mov ecx,OT_MAP_X |
add edi,ecx |
stdcall [buf2d_line], buf_pl, ecx,ebx, eax,ebx,[sc.work_graph] |
add eax,TILE_SIZE |
inc eax |
cmp eax,edi |
jge @f ;¥á«¨ ªãàá®à ªà î ¯®«ï |
dec edi |
stdcall [buf2d_line], buf_pl, eax,ebx, edi,ebx,[sc.work_graph] |
@@: |
.end_f: |
popad |
ret |
if 0 |
;input: |
; buf - 㪠§ ⥫ì áâபã, ç¨á«® ¤®«¦® ¡ëâì ¢ 10 ¨«¨ 16 à¨ç®¬ ¢¨¤¥ |
/programs/other/t_edit/readme.htm |
---|
76,16 → 76,10 |
<td>ïîäñâåòêà çàðàíåå çàøèòà â ïðîãðàììó</td><td>ïîäñâåòêà áåðåòñÿ èç ôàéëîâ, êîòîðûå ìîæåò óêàçàòü ïîëüçîâàòåëü. Òàêæå åñòü âîçìîæíîñòü ïîëó÷àòü ñïðàâêó ïî ïîäñâå÷èâàåìûì ñëîâàì (åñëè îíà åñòü â ôàéëàõ ïîäñâåòêè, íàâåñòè êóðñîð íà ñëîâî è íàæàòü F1).</td></tr> |
<tr><td>Ìíîãîêðàòíàÿ îòìåíà/ïîâòîð äåéñòâèé</td> |
<td>íåò</td><td>åñòü</td></tr> |
<tr><td>Îãðàíè÷åíèÿ íà ðàçìåð ôàéëîâ</td> |
<td>íåò</td><td>åñòü ïðè îòêðûòèè ôàéëîâ, ïðè ðåäàêòèðîâàíèè íåò</td></tr> |
</table> |
<h2>Íåêîòîðûå íåäîðàáîòêè</h2> |
<ul> |
<li>Åñëè îòêðûòü áîëüøîé ôàéë, ðàçìåð êîòîðîãî áîëüøå ÷åì: |
maxChars equ 100002 ;(...+2) |
îí îòêðîåòñÿ íå âåñü, à ïåðâûå maxChars-2 ñèìâîëîâ èç ôàéëà |
(î ÷åì âûäàåòñÿ ñîîáùåíèå).</li> |
<li>Ïðè ñîõðàíåíèè ïðîãðàììà íå ñïðàøèâàåò î çàìåíå ñóùåñòâ. ôàéëà.</li> |
<li>Ñðàáàòûâàëè êíîïêè ïîä ìåíþ, ïîòîìó ÿ èõ ñäâèíóë âëåâî.</li> |
</ul> |