/data/eng/kpack |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/eng/File Managers/kfm_keys.txt |
---|
File deleted |
/data/eng/File Managers/buttons.bmp |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/eng/File Managers/icons.bmp |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/eng/File Managers/kfm |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/eng/Makefile |
---|
60,6 → 60,7 |
hdd_info:HDD_INFO:$(PROGS)/system/hdd_info/trunk/hdd_info.asm \ |
icon:ICON:$(PROGS)/system/icon/trunk/icon.asm \ |
kbd:KBD:$(PROGS)/system/kbd/trunk/kbd.ASM \ |
kpack:KPACK:$(PROGS)/other/kpack/trunk/kpack.asm \ |
launcher:LAUNCHER:$(PROGS)/system/launcher/trunk/launcher.asm \ |
magnify:MAGNIFY:$(PROGS)/demos/magnify/trunk/magnify.asm \ |
mgb:MGB:$(PROGS)/system/mgb/trunk/mgb.asm \ |
124,6 → 125,7 |
drivers/vmode.mdr:DRIVERS/VMODE.MDR:$(KERNEL)/drivers/vmode.asm \ |
drivers/vt8235.obj:DRIVERS/VT8235.OBJ:$(KERNEL)/drivers/vt823x.asm \ |
File|Managers/kfar:File|Managers/KFAR:$(PROGS)/fs/kfar/trunk/kfar.asm \ |
File|Managers/kfm:File|Managers/KFM:$(PROGS)/fs/kfm/trunk/kfm.asm \ |
File|Managers/OpenDial:File|Managers/OPENDIAL:$(PROGS)/develop/libraries/box_lib/asm/trunk/OpenDial.asm \ |
fonts/bgitest:FONTS/BGITEST:$(PROGS)/demos/bgitest/trunk/bgitest.asm \ |
games/15:GAMES/15:$(PROGS)/games/15/trunk/15.ASM \ |
195,6 → 197,9 |
config.inc:CONFIG.INC:$(PROGS)/config.inc \ |
struct.inc:STRUCT.INC:$(PROGS)/struct.inc \ |
File|Managers/z_icons.png:File|Managers/Z_ICONS.PNG:$(PROGS)/develop/libraries/box_lib/asm/trunk/z_icons.png \ |
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT:$(PROGS)/fs/kfm/trunk/docs/english/kfm_keys.txt \ |
File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP:$(PROGS)/fs/kfm/trunk/buttons.bmp \ |
File|Managers/icons.bmp:File|Managers/ICONS.BMP:$(PROGS)/fs/kfm/trunk/icons.bmp \ |
fonts/euro.chr:FONTS/EURO.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/EURO.CHR \ |
fonts/goth.chr:FONTS/GOTH.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/GOTH.CHR \ |
fonts/lcom.chr:FONTS/LCOM.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/LCOM.CHR \ |
225,7 → 230,7 |
background.gif:background.gif default.skn:DEFAULT.SKN \ |
e80:E80 graph:GRAPH hdread:HDREAD htmlv:HTMLV \ |
icons.dat:ICONS.DAT iconstrp.gif:ICONSTRP.GIF index_htm:INDEX.HTM \ |
kernel.mnt:KERNEL.MNT kerpack:KERPACK keymap.key:KEYMAP.KEY kpack:KPACK \ |
kernel.mnt:KERNEL.MNT kerpack:KERPACK keymap.key:KEYMAP.KEY \ |
kuzkina.mid:KUZKINA.MID lang.inc:LANG.INC lang.ini:LANG.INI \ |
menu.dat:MENU.DAT \ |
panel.dat:PANEL.DAT setup.dat:SETUP.DAT \ |
237,14 → 242,10 |
demos/relay.lif:DEMOS/RELAY.LIF demos/rpento.lif:DEMOS/RPENTO.LIF \ |
demos/use_mb:DEMOS/USE_MB \ |
drivers/atikms.dll:DRIVERS/ATIKMS.DLL \ |
File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP \ |
File|Managers/eolite.ini:File|Managers/EOLITE.INI \ |
File|Managers/icons.bmp:File|Managers/ICONS.BMP \ |
File|Managers/icons.ini:File|Managers/ICONS.INI \ |
File|Managers/kfar.ini:File|Managers/KFAR.INI \ |
File|Managers/kfm:File|Managers/KFM \ |
File|Managers/kfm.ini:File|Managers/KFM.INI \ |
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT \ |
fonts/bold.chr:FONTS/BOLD.CHR fonts/char2.mt:FONTS/CHAR2.MT \ |
fonts/char.mt:FONTS/CHAR.MT \ |
games/checkers:GAMES/CHECKERS games/klavisha:GAMES/KLAVISHA \ |
/data/rus/kpack |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/rus/File Managers/kfm_keys.txt |
---|
File deleted |
/data/rus/File Managers/buttons.bmp |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/rus/File Managers/icons.bmp |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/rus/File Managers/kfm |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/data/rus/Makefile |
---|
60,6 → 60,7 |
hdd_info:HDD_INFO:$(PROGS)/system/hdd_info/trunk/hdd_info.asm \ |
icon:ICON:$(PROGS)/system/icon/trunk/icon.asm \ |
kbd:KBD:$(PROGS)/system/kbd/trunk/kbd.ASM \ |
kpack:KPACK:$(PROGS)/other/kpack/trunk/kpack.asm \ |
launcher:LAUNCHER:$(PROGS)/system/launcher/trunk/launcher.asm \ |
magnify:MAGNIFY:$(PROGS)/demos/magnify/trunk/magnify.asm \ |
mgb:MGB:$(PROGS)/system/mgb/trunk/mgb.asm \ |
124,6 → 125,7 |
drivers/vmode.mdr:DRIVERS/VMODE.MDR:$(KERNEL)/drivers/vmode.asm \ |
drivers/vt8235.obj:DRIVERS/VT8235.OBJ:$(KERNEL)/drivers/vt823x.asm \ |
File|Managers/kfar:File|Managers/KFAR:$(PROGS)/fs/kfar/trunk/kfar.asm \ |
File|Managers/kfm:File|Managers/KFM:$(PROGS)/fs/kfm/trunk/kfm.asm \ |
File|Managers/OpenDial:File|Managers/OPENDIAL:$(PROGS)/develop/libraries/box_lib/asm/trunk/OpenDial.asm \ |
fonts/bgitest:FONTS/BGITEST:$(PROGS)/demos/bgitest/trunk/bgitest.asm \ |
games/15:GAMES/15:$(PROGS)/games/15/trunk/15.ASM \ |
195,6 → 197,9 |
config.inc:CONFIG.INC:$(PROGS)/config.inc \ |
struct.inc:STRUCT.INC:$(PROGS)/struct.inc \ |
File|Managers/z_icons.png:File|Managers/Z_ICONS.PNG:$(PROGS)/develop/libraries/box_lib/asm/trunk/z_icons.png \ |
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT:$(PROGS)/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt \ |
File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP:$(PROGS)/fs/kfm/trunk/buttons.bmp \ |
File|Managers/icons.bmp:File|Managers/ICONS.BMP:$(PROGS)/fs/kfm/trunk/icons.bmp \ |
fonts/euro.chr:FONTS/EURO.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/EURO.CHR \ |
fonts/goth.chr:FONTS/GOTH.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/GOTH.CHR \ |
fonts/lcom.chr:FONTS/LCOM.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/LCOM.CHR \ |
225,7 → 230,7 |
background.gif:background.gif default.skn:DEFAULT.SKN \ |
e80:E80 graph:GRAPH hdread:HDREAD htmlv:HTMLV \ |
icons.dat:ICONS.DAT iconstrp.gif:ICONSTRP.GIF index_htm:INDEX.HTM \ |
kernel.mnt:KERNEL.MNT kerpack:KERPACK keymap.key:KEYMAP.KEY kpack:KPACK \ |
kernel.mnt:KERNEL.MNT kerpack:KERPACK keymap.key:KEYMAP.KEY \ |
kuzkina.mid:KUZKINA.MID lang.inc:LANG.INC lang.ini:LANG.INI \ |
menu.dat:MENU.DAT \ |
panel.dat:PANEL.DAT pipetka:PIPETKA setup.dat:SETUP.DAT \ |
237,14 → 242,10 |
demos/relay.lif:DEMOS/RELAY.LIF demos/rpento.lif:DEMOS/RPENTO.LIF \ |
demos/use_mb:DEMOS/USE_MB \ |
drivers/atikms.dll:DRIVERS/ATIKMS.DLL \ |
File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP \ |
File|Managers/eolite.ini:File|Managers/EOLITE.INI \ |
File|Managers/icons.bmp:File|Managers/ICONS.BMP \ |
File|Managers/icons.ini:File|Managers/ICONS.INI \ |
File|Managers/kfar.ini:File|Managers/KFAR.INI \ |
File|Managers/kfm:File|Managers/KFM \ |
File|Managers/kfm.ini:File|Managers/KFM.INI \ |
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT \ |
fonts/bold.chr:FONTS/BOLD.CHR fonts/char2.mt:FONTS/CHAR2.MT \ |
fonts/char.mt:FONTS/CHAR.MT \ |
games/appdata.dat:GAMES/APPDATA.DAT games/ataka:GAMES/ATAKA \ |
/programs/fs/kfm/trunk/EDITBOX.INC |
---|
File deleted |
\ No newline at end of file |
/programs/fs/kfm/trunk/KFM.ASM |
---|
File deleted |
/programs/fs/kfm/trunk/editbox.inc |
---|
0,0 → 1,278 |
; SEE YOU File FAQ.txt and HISTORY. Good Like! |
;;;;;;;;;;;;;;;;;; |
include 'editbox.mac' ;¬ ªà®á ª®â®àë© ¤®«¦¥ ®¡«¥£ç¨âì ¦¨§ì :) á¯¥æ¨ «ì® ¤«ï editbox |
;;;;;;;;;;;;;;;;;; |
macro use_edit_box procinfo,scr_h,scr_w |
{ |
edit_box: |
ed_width equ [edi] ;è¨à¨ ª®¬¯®¥â |
ed_left equ [edi+4] ;¯®«®¦¥¨¥ ¯® ®á¨ å |
ed_top equ [edi+8] ;¯®«®¦¥¨¥ ¯® ®á¨ ã |
ed_color equ [edi+12] ;梥â ä® ª®¬¯®¥â |
shift_color equ [edi+16] ;=0x6a9480 |
ed_focus_border_color equ [edi+20] ;梥â à ¬ª¨ ª®¬¯®¥â |
ed_blur_border_color equ [edi+24] ;梥⠥ ªâ¨¢®£® ª®¬¯®¥â |
ed_text_color equ [edi+28] ;梥â ⥪áâ |
ed_max equ [edi+32] ;ª®«-¢® ᨬ¢®«®¢ ª®â®àë¥ ¬®¦® ¬ ªá¨¬ «ì® ¢¢¥á⨠|
ed_text equ [edi+36] ;㪠§ â¥«ì ¡ãä¥à |
ed_flags equ [edi+40] ;ä« £¨ |
ed_size equ [edi+42] ;ª®«-¢® ᨬ¢®«®¢ |
ed_pos equ [edi+46] ;¯®§¨æ¨ï ªãàá®à |
ed_offset equ [edi+50] ;ᬥ饨¥ |
cl_curs_x equ [edi+54] ;¯à¥¤ë¤ã饥 ª®®à¤¨ â ªãàá®à ¯® å |
cl_curs_y equ [edi+58] ;¯à¥¤ë¤ã饥 ª®®à¤¨ â ªãàá®à ¯® ã |
ed_shift_pos equ [edi+62] ;¯®«®¦¥¨¥ ªãàá®à |
ed_shift_pos_old equ [edi+66] ;áâ ஥ ¯®«®¦¥¨¥ ªãàá®à |
;========================================================== |
;=== ¯à®æ¥¤ãà ¯à®à¨á®¢ª¨ ================================= |
;========================================================== |
.draw: |
pusha |
;--- à¨á㥬 à ¬ªã --- |
call .draw_border ; ãªæ¨ï áâ ¡¨«ì |
.draw_bg_cursor_text: |
;--- ¨§¬¥ï¥¬ ᬥ饨¥, ¥á«¨ ¤® --- |
call .check_offset ;¢ëç¨á«¥¨¥ ¯®§¨æ¨¨ ªãàá®à áâ ¡¨«ì |
;--- à¨á㥬 ¢ãâà¥îî ®¡« áâì --- |
call .draw_bg ; à¨á®¢ âì ¯àאַ㣮«ì¨ª à ¡®ç¥© ®¡« á⨠|
;---- à¨á㥬 ¢ë¤¥«¥¨¥, ¯® shift ¥á«¨ ¥áâì |
call .draw_shift |
.draw_cursor_text: |
;--- à¨á㥬 ªãàá®à --- |
;--- ¬®¦¥â ¥£® ¥ ¤® à¨á®¢ âì ---- |
test word ed_flags,ed_focus |
je @f |
call .draw_cursor |
@@: |
call .draw_text |
;;;;;;;;;;;;;;;;;;;;;;;;;; |
;¡é¨© ¢ë室 ¨§ editbox ¤«ï ¢á¥å äãªæ¨© ¨ ¯®áâ ®¡à ¡®â稪®¢ |
;;;;;;;;;;;;;;;;;;;;;;;;;; |
.editbox_exit: |
edit_ex |
;========================================================== |
;=== ®¡à ¡®âª ª« ¢¨ âãàë ================================= |
;========================================================== |
.key: |
pusha |
test word ed_flags,ed_focus ; ¥á«¨ ¥ ¢ 䮪ãá¥, ¢ë室¨¬ |
je .editbox_exit |
test word ed_flags,ed_mouse_on |
jne .editbox_exit |
;஢¥àª ¦ â shift ? |
call .check_shift |
;---------------------------------------------------------- |
;--- ¯à®¢¥à塞, çâ® ¦ â® -------------------------------- |
;---------------------------------------------------------- |
use_key_process backspase,delete,left,right,home,end,insert |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
; £«ãèª ®¡à ¡®âªã ª« ¢¨è ¢¢¥àå ¨ ¢¨§ â.¥. ¯à¨ ®¡ à㦥¨¨ íâ¨å ª®¤®¢ ¯à®¨á室¨â ¢ë室 ¨§ ®¡à ¡®â稪 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use_key_no_process up,down,esc |
;--- ¦ â ¤àã£ ï ª« ¢¨è --- |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;஢¥àª ãáâ ®¢«¥ «¨ ä« £ ¯à¨ ª®â®à®¬ 㦮 ¢ë¢®¤¨âì ⮫쪮 æ¨äàë ¢ 㦮¬ ¡®ªá¥ ¥á«¨ â ª®©¥®¡å®¤¨¬®á⨠¥â 㦮 § ª®¬¥â¨à®¢ âì ¬ ªà®á |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use_key_figures_only |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;¯à®¢¥àª shift ¡ë« «¨ ¦ â |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
are_key_shift_press |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
; ¯à®¢¥à塞, 室¨âáï «¨ ªãàá®à ¢ ª®æ¥ + ¤ «ì¥©è ï ®¡à ¡®âª |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
are_key_cur_end |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;¡à ¡®âª ª« ¢¨è insert,delete.backspase,home,end,left,right |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use_work_key |
;========================================================== |
;=== ®¡à ¡®âª ¬ëè¨ ======================================= |
;========================================================== |
.mouse: |
pusha |
;debug |
;---------------------------------------------------------- |
;--- ¯®«ãç ¥¬ á®áâ®ï¨¥ ª®¯®ª ¬ëè¨ ----------------------- |
;---------------------------------------------------------- |
mcall 37,2 |
;---------------------------------------------------------- |
;--- ¯à®¢¥à塞 á®áâ®ï¨¥ ---------------------------------- |
;---------------------------------------------------------- |
test eax,1 |
jnz .mouse_left_button |
and word ed_flags,ed_mouse_on_off |
xor ebx,ebx |
mov dword [mouse_flag],ebx |
jmp .editbox_exit |
.mouse_left_button: |
;---------------------------------------------------------- |
;--- ¡«®ª¨à®¢ª ®â 䮪ãá¨à®¢ª¨ ¢ ¤àã£¨å ¡®ªá å ¯à¨ ¯®¯ ¤ ¨¨ ¨å ªãàá®à |
;---------------------------------------------------------- |
mov eax,dword [mouse_flag] |
test eax,eax |
jz @f |
cmp eax,edi |
je @f |
jmp ._blur |
;---------------------------------------------------------- |
;--- ¯®«ãç ¥¬ ª®®à¤¨ âë ¬ëè¨ ®â®á¨â¥«ì® 0 â.¥ ¢á¥© ®¡« á⨠íªà |
;---------------------------------------------------------- |
@@: mcall 37,0 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;ãªæ¨ï ®¡à ¡®âª¨ ¬ë誨 ¯®«ã票¥ ª®®à¤¨ â ¨ ¯à®¢¥àª ¨å + ¢ë¤¥«¥¨ï |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use_work_mause scr_h,scr_w |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;¡é¨¥ äãªæ¨¨ ®¡à ¡®âª¨ |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use_general_func |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;ãªæ¨¨ ¤«ï à ¡®âë á key |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use_key_func |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;ãªæ¨¨ ¤«ï à ¡®âë á mouse |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use_mouse_func scr_w |
} |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;Bit mask from editbox |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
ed_figure_only= 1000000000000000b ;®¤¨ ᨬ¢®«ë |
ed_always_focus= 100000000000000b |
ed_focus= 10b ;䮪ãá ¯à¨«®¦¥¨ï |
ed_shift_on= 1000b ;¥á«¨ ¥ ãáâ ®¢«¥ -§ ç¨â ¢¯¥à¢ë¥ ¦ â shift,¥á«¨ ¡ë« ãáâ ®¢«¥, § ç¨â ¬ë 㦥 çâ® - â® ¤¥« «¨ 㤥ন¢ ï shift |
ed_shift_on_off=1111111111110111b |
ed_shift= 100b ;¢ª«îç ¥âáï ¯à¨ ¦ ⨨ shift â.¥. ¥á«¨ ¦¨¬ î |
ed_shift_off= 1111111111111011b |
ed_shift_bac= 10000b ;¡¨â ¤«ï ®ç¨á⪨ ¢ë¤¥«¥®£® shift â.¥. ¯à¨ ãáâ ®¢ª¥ £®¢®à¨â çâ® ¥áâì ¢ë¤¥«¥¨¥ |
ed_shift_bac_cl=1111111111101111b ;®ç¨á⪠¯à¨ 㤠«¥¨¨ ¢ë¤¥«¥¨ï |
ed_shift_cl= 1111111111100011b |
ed_shift_mcl= 1111111111111011b |
ed_left_fl= 100000b |
ed_right_fl= 1111111111011111b |
ed_offset_fl= 1000000b |
ed_offset_cl= 1111111110111111b |
ed_insert= 10000000b |
ed_insert_cl= 1111111101111111b |
ed_mouse_on = 100000000b |
ed_mous_adn_b= 100011000b |
ed_mouse_on_off=1111111011111111b |
ed_height=14 ; ¢ëá®â |
macro draw_edit_boxes start,_end,use_f9,procinfo |
{ |
if use_f9 eq |
else |
mcall 9,procinfo,-1 |
end if |
mov edi,start |
mov ecx,((_end-start)/ed_struc_size) |
@@: |
call edit_box.draw |
add edi,ed_struc_size |
loop @b |
} |
macro mouse_edit_boxes start,_end |
{ |
mov edi,start |
mov ecx,((_end-start)/ed_struc_size) |
@@: |
call edit_box.mouse |
add edi,ed_struc_size |
loop @b |
} |
macro key_edit_boxes start,end |
{ |
mov edi,start |
mov ecx,((end-start)/ed_struc_size) |
@@: |
call edit_box.key |
add edi,ed_struc_size |
loop @b |
} |
ed_struc_size=70 |
struc edit_box width,left,top,color,shift_color,focus_border_color,\ |
blur_border_color,text_color,max,text,flags,size,pos |
{ |
.width dd width |
.left dd left |
.top dd top |
.color dd color |
.shift_color dd shift_color |
.focus_border_color dd focus_border_color |
.blur_border_color dd blur_border_color |
.text_color dd text_color |
.max dd max |
.text dd text |
.flags dw flags+0 |
.size dd size+0 |
.pos dd pos+0 |
.offset dd 0 |
.cl_curs_x dd 0 |
.cl_curs_y dd 0 |
.shift dd 0 |
.shift_old dd 0 |
} |
macro edit_boxes_set_sys_color start,end,color_table |
{ |
mov edi,start |
mov ecx,((end-start)/ed_struc_size) |
mov esi,color_table |
@@: |
mov eax,[esi+36] |
mov ebx,[esi+20] |
mov ed_focus_border_color,eax |
shr bh,1 |
shr bl,1 |
shr ah,1 |
shr al,1 |
add ah,bh |
add al,bl |
ror eax,16 |
ror ebx,16 |
shr bl,1 |
shr al,1 |
add al,bl |
ror eax,16 |
mov ed_blur_border_color,eax |
add edi,ed_struc_size |
loop @b |
} |
macro draw_edit_box ed_ptr,use_f9,procinfo |
{ |
if use_f9 eq |
else |
mcall 9,procinfo,-1 |
end if |
mov edi,ed_ptr |
call edit_box.draw |
} |
macro mouse_edit_box ed_ptr |
{ |
mov edi,ed_ptr |
call edit_box.mouse |
} |
macro key_edit_box ed_ptr |
{ |
mov edi,ed_ptr |
call edit_box.key |
} |
macro default_box ed_ptr |
{ |
pusha |
; xor eax,eax |
; mov ed_shift_pos,eax |
; mov ed_shift_pos_old,eax |
and word ed_flags,ed_shift_cl |
; mov ed_offset,eax |
popa |
} |
/programs/fs/kfm/trunk/kfm.asm |
---|
0,0 → 1,410 |
;************************************************************** |
; KFM - Kolibri File Manager |
;************************************************************** |
use32 |
db 'MENUET01' |
dd 0x01 |
dd START |
dd I_END |
dd mem |
dd stacktop |
dd 0x0 |
dd path |
;include 'lang.inc' |
;include 'kglobals.inc' |
include 'macros.inc' |
include 'editbox.inc' |
;use_edit_box |
use_edit_box procinfo |
;include 'ASCGL.INC' |
;--------------------------------------------------------------------- |
include 'files.inc' |
;--------------------------------------------------------------------- |
STRLEN = 1024 |
;--------------------------------------------------------------------- |
START: |
mcall 9, procinfo, -1 |
mov eax,[ebx+30] |
mov [PID],eax |
xor ecx,ecx |
@@: |
inc ecx |
mcall 9, procinfo |
mov eax,[PID] |
cmp eax,[ebx+30] |
jne @r |
mov [active_process],ecx |
mov [appl_memory],mem |
mov ax,[select_disk_char] |
mov [read_folder_name],ax |
mov [read_folder_1_name],ax |
call load_icon_and_convert_to_img |
call load_buttons_and_convert_to_img |
call load_initiation_file |
call add_memory_for_folders |
call device_detect |
call device_detect_f70 |
mcall 66, 1, 1 |
; call draw_window |
; xor eax,eax |
mov eax,1 |
mov [left_sort_flag],eax |
mov [right_sort_flag],eax |
call proc_read_left_folder |
test eax,eax |
jz @f |
cmp eax,6 |
jne read_folder_error |
@@: |
call proc_read_right_folder |
test eax,eax |
jz @f |
cmp eax,6 |
jne read_folder_1_error |
@@: |
mcall 40, 0x27 |
jmp red_1 |
;--------------------------------------------------------------------- |
red: |
call get_window_param |
test [window_status],10b |
jnz red_1 ;still |
test [window_status],100b |
jnz red_1 |
cmp [window_high],180 |
ja @f |
mov esi,180 |
mcall 67,-1,ebx,ebx |
@@: |
cmp [window_width],495 |
ja red_1 |
mov edx,495 |
mcall 67,-1,ebx, ,ebx |
red_1: |
call draw_window |
;--------------------------------------------------------------------- |
still: |
mcall 10 |
cmp eax,1 |
je red |
cmp eax,2 |
je key |
cmp eax,3 |
je button |
cmp eax,6 |
je mouse |
jmp still |
;--------------------------------------------------------------------- |
get_window_param: |
mcall 9, procinfo, -1 |
mov eax,[ebx+46] |
mov [window_high],eax |
mov eax,[ebx+42] |
mov [window_width],eax |
mov eax,[ebx+70] |
mov [window_status],eax |
mcall 48,4 |
mov [skin_high],eax |
ret |
;--------------------------------------------------------------------- |
draw_window: |
mcall 12, 1 |
; mcall 0, <20,620>, <20,460>, 0x03cccccc ; 0x805080D0, 0x005080D0 |
xor esi,esi |
mcall 0, <20,620>, <20,460>, 0x43cccccc ; 0x805080D0, 0x005080D0 |
call get_window_param |
; mov ecx,[temp_esi] |
test [window_status],10b |
jnz @f |
mcall 71, 1 , header |
; create_dir_name |
; start_parameter |
; file_name |
; [temp_edi] |
; header |
; delete_file_data.name |
; start_file_data.name |
; start_parameter |
; start_file_data.name |
; read_icon_file.name |
; read_file_features.name ;path ;header |
cmp [window_high],180 |
jb @f |
cmp [window_width],495 |
jb @f |
; pusha |
; mcall 4,<15,25>,0,read_folder.name,100 |
; popa |
call draw_fbutton |
; mov [left_panel_clear_all],1 |
call draw_left_panel |
; mov [right_panel_clear_all],1 |
call draw_right_panel |
call draw_device_button |
call draw_left_select_disk_button |
call draw_left_sort_button |
call draw_right_select_disk_button |
call draw_right_sort_button |
call draw_menu_bar |
call draw_buttons_panel |
call draw_ATAPI_tray_control |
; mcall 47,0x80000,[left_scroll_compens],<300, 5>,0xffffff |
; call mouse.draw_data |
; mcall 18, 7 |
; mov [temp_eax],eax |
; mcall 47,0x80000,[active_process],<300, 5>,0xffffff |
; mcall 47,0x80000,[left_marked_counter],<300, 5>,0xffffff |
; mcall 47,0x80000,[right_marked_counter],<400, 5>,0xffffff |
; mcall 47,0x80000,[sorting_low_limit],<100, 5>,0xffffff |
; mcall 47,0x80000,[sort_counter],<200, 5>,0xffffff |
; mcall 47,0x80000,[sorting_high_limit],<300, 5>,0xffffff |
; mcall 47,0x80000,[dir_temp_counter],<400, 5>,0xffffff |
; mcall 47,0x80000,[timer_tick],<500, 5>,0xffffff |
; mcall 47,0x80000,[temp_eax],<400, 5>,0xffffff |
; mcall 47,0x80000,[temp_ebx],<400, 5>,0xffffff |
; mcall 47,0x80000,[temp_ecx],<500, 5>,0xffffff |
; mcall 47,0x80000,[temp_ebx],<500, 5>,0xffffff |
; mcall 47,0x80000,[ini_file_start],<100, 5>,0xffffff |
; mcall 47,0x80000,[left_folder_data],<200, 5>,0xffffff |
; mcall 47,0x80000,[right_folder_data],<300, 5>,0xffffff |
; mcall 47,0x80000,[appl_memory],<500, 5>,0xffffff |
; mcall 47,0x80000,[temp_znak],<500, 5>,0xffffff |
; mcall 47,0x80000,[sort_counter],<200, 5>,0xffffff |
; mcall 47,0x80000,[temp_edi],<250, 5>,0xffffff |
; mcall 47,0x80000,[temp_esi],<300, 5>,0xffffff |
; mcall 47,0x80000,[temp_ecx],<350, 5>,0xffffff |
; mcall 47,0x80000,[temp_znak],<400, 5>,0xffffff |
; movzx ecx,[left_start_draw_cursor_line] |
; mcall 47,0x40000, ,<300, 5>,0xffffff |
; mcall 47,0x40000,[left_start_draw_line],<400, 5>,0xffffff |
; mcall 47,0x40000,[window_width],<100, 5>,0xffffff |
; mcall 47,0x40000,[window_high],<130, 5>,0xffffff |
; mcall 47,0x80100,[left_panel_x],<200, 5>,0xffffff |
; mcall 47,0x80100,[left_panel_y],<250, 5>,0xffffff |
; mov edx,[temp_counter_dword_1] |
; mcall 4,<150,3>,0x80000000 |
; mov edx,[temp_counter_dword] |
; mcall 4,<5,3>,0x80000000 |
@@: |
mcall 12, 2 |
ret |
;temp_eax dd 0 |
;temp_ebx dd 0 |
;temp_ecx dd 0 |
;temp_edx dd 0 |
;temp_esi dd 0 |
;temp_edi dd 0 |
;temp_ebp dd 0 |
;temp_esp dd 0 |
;temp_znak dd 0 |
;temp_counter_dword_1 dd 0 |
;extension_size_1 dd 0 |
;timer_tick dd 0 |
;--------------------------------------------------------------------- |
prepare_load_data: |
mov esi,path |
mov edi,file_name |
call copy_path |
call get_file_size |
test eax,eax |
ret |
;--------------------------------------------------------------------- |
prepare_load_data_1: |
mov [read_file.return],eax |
mov ebp,eax |
prepare_load_data_4: |
call load_file |
test eax,eax |
ret |
;--------------------------------------------------------------------- |
prepare_load_data_2: |
call add_application_memory |
prepare_load_data_3: |
call add_application_memory |
mov eax,[file_features_temp_area+32] |
mov [read_file.size],eax |
ret |
;--------------------------------------------------------------------- |
load_icon_and_convert_to_img: |
mov ebx,icons_file_name |
call prepare_load_data |
jnz icon_error |
call prepare_load_data_2 |
add eax,mem |
call prepare_load_data_1 |
jnz icon_error |
call convert_bmp_to_img |
call sub_application_memory |
ret |
;--------------------------------------------------------------------- |
load_buttons_and_convert_to_img: |
mov ebx,buttons_file_name |
call prepare_load_data |
jnz buttons_error |
mov eax,[appl_memory] |
mov [buttons_img_start],eax |
call prepare_load_data_2 |
add eax,[buttons_img_start] |
call prepare_load_data_1 |
jnz buttons_error |
call convert_bmp_to_img |
call sub_application_memory |
ret |
;--------------------------------------------------------------------- |
load_initiation_file: |
mov ebx,ini_file_name |
call prepare_load_data |
jnz initiation_error |
call prepare_load_data_3 |
mov eax,[appl_memory] |
mov [left_folder_data],eax |
sub eax,[read_file.size] |
mov [read_file.return],eax |
mov [ini_file_start],eax |
call load_file |
test eax,eax |
jnz initiation_error |
mov ebp,icons_associations |
call search_star_and_end_tags |
; cmp ebp,-1 |
; je .end |
mov eax,[end_tag] |
mov [icons_end_tag],eax |
ret |
;--------------------------------------------------------------------- |
add_memory_for_folders: |
mov ecx,[appl_memory] |
add ecx,304*32+32 |
mov [right_folder_data],ecx |
add ecx,304*32+32 |
mov [appl_memory],ecx |
mcall 64,1 |
ret |
;--------------------------------------------------------------------- |
copy_path: |
xor eax,eax |
@@: |
cld |
lodsb |
stosb |
test eax,eax |
jnz @b |
mov esi,edi |
; dec esi |
@@: |
std |
lodsb |
cmp al,'/' |
jnz @b |
mov edi,esi |
add edi,2 |
mov esi,ebx |
@@: |
cld |
lodsb |
stosb |
test eax,eax |
jnz @b |
ret |
;--------------------------------------------------------------------- |
copy_path_1: |
xor eax,eax |
@@: |
cld |
lodsb |
stosb |
test eax,eax |
jnz @b |
mov esi,ebx |
mov [edi-1],byte '/' |
@@: |
cld |
lodsb |
stosb |
test eax,eax |
jnz @b |
ret |
;--------------------------------------------------------------------- |
add_application_memory: |
mov ecx,[file_features_temp_area+32] |
.1: |
add ecx,[appl_memory] |
mov [appl_memory],ecx |
mcall 64,1 |
ret |
;--------------------------------------------------------------------- |
sub_application_memory: |
mov ecx,[appl_memory] |
sub ecx,[file_features_temp_area+32] |
.1: |
mov [appl_memory],ecx |
mcall 64,1 |
ret |
;--------------------------------------------------------------------- |
include 'key.inc' |
;--------------------------------------------------------------------- |
include 'markfile.inc' |
;--------------------------------------------------------------------- |
include 'button.inc' |
;--------------------------------------------------------------------- |
include 'mouse.inc' |
;--------------------------------------------------------------------- |
include 'openfile.inc' |
;--------------------------------------------------------------------- |
include 'draw.inc' |
;--------------------------------------------------------------------- |
include 'menu_bar.inc' |
;--------------------------------------------------------------------- |
include 'menu_drv.inc' |
;--------------------------------------------------------------------- |
include 'delete.inc' |
;--------------------------------------------------------------------- |
include 'copy.inc' |
;--------------------------------------------------------------------- |
include 'creatdir.inc' |
;--------------------------------------------------------------------- |
include 'confirm.inc' |
;--------------------------------------------------------------------- |
include 'err_wind.inc' |
;--------------------------------------------------------------------- |
include 'detect.inc' |
;--------------------------------------------------------------------- |
include 'conv_bmp.inc' |
;--------------------------------------------------------------------- |
include 'tran_ini.inc' |
;--------------------------------------------------------------------- |
include 'help.inc' |
;--------------------------------------------------------------------- |
include 'convchar.inc' |
;--------------------------------------------------------------------- |
include 'sort.inc' |
;--------------------------------------------------------------------- |
include 'exit.inc' |
;--------------------------------------------------------------------- |
include 'progrbar.inc' |
;--------------------------------------------------------------------- |
include 'scroll.inc' |
;--------------------------------------------------------------------- |
include 'file_inf.inc' |
;--------------------------------------------------------------------- |
include 'text.inc' |
;--------------------------------------------------------------------- |
I_END: |
;--------------------------------------------------------------------- |
include 'data.inc' |
;--------------------------------------------------------------------- |
mem: |