Rev 403 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 403 | Rev 404 | ||
---|---|---|---|
Line -... | Line 1... | ||
- | 1 | ; |
|
1 | ; |
2 | ; |
2 | ; |
3 | ; |
3 | ; |
4 | ; |
4 | ; |
5 | ; |
5 | ; ¤®¡ ¢¨« ä¨âçã ¢¥á¥¨ï 0å0 ¯® ¤à¥áã ed_size ¨ ç¥ ã Maxxx32 ¡ë«¨ ¥á®áâ몮¢ª¨ ¢ ª®¤¥. à¨ç¨ ¢ ⮬, çâ® ®¯â¨¬¨§ æ¨ï ¡ë« ᢥ¤¥ ª ⮬ã, çâ® ï ¥ ç¨á⨫ ᨬ¢®«ë ¢ ¡ãä¥à¥, ª®£¤ 㤠«ï«, ï ¯à®áâ® ¨å ¥ ¢ë¢®¤¨«, ¨ ¯®â®¬, ª®£¤ ¢®á¨«áï ®¢ë© ᨬ¢®«, ® ¯®¯à®áâã § â¨à « 㦥 ¨¬¥î騩áï. ᫨ ¡ë, ¯à®£à ¬¬ ®¡à ¡ âë¢ « ª®¥æ áâப¨ ¯® ed_size, ¯à®¡«¥¬ë ¥ ¢®§¨ª«®. ® ᥩç á íâ®â ¥¤®áâ ⮪ ¨á¯à ¢«¥. |
6 | ; ¤®¡ ¢¨« ä¨âçã ¢¥á¥¨ï 0å0 ¯® ¤à¥áã ed_size ¨ ç¥ ã Maxxx32 ¡ë«¨ ¥á®áâ몮¢ª¨ ¢ ª®¤¥. à¨ç¨ ¢ ⮬, çâ® ®¯â¨¬¨§ æ¨ï ¡ë« ᢥ¤¥ ª ⮬ã, çâ® ï ¥ ç¨á⨫ ᨬ¢®«ë ¢ ¡ãä¥à¥, ª®£¤ 㤠«ï«, ï ¯à®áâ® ¨å ¥ ¢ë¢®¤¨«, ¨ ¯®â®¬, ª®£¤ ¢®á¨«áï ®¢ë© ᨬ¢®«, ® ¯®¯à®áâã § â¨à « 㦥 ¨¬¥î騩áï. ᫨ ¡ë, ¯à®£à ¬¬ ®¡à ¡ âë¢ « ª®¥æ áâப¨ ¯® ed_size, ¯à®¡«¥¬ë ¥ ¢®§¨ª«®. ® ᥩç á íâ®â ¥¤®áâ ⮪ ¨á¯à ¢«¥. |
Line 307... | Line 308... | ||
307 | .key: |
308 | .key: |
308 | pusha |
309 | pusha |
309 | test word ed_flags,ed_focus ; ¥á«¨ ¥ ¢ 䮪ãá¥, ¢ë室¨¬ |
310 | test word ed_flags,ed_focus ; ¥á«¨ ¥ ¢ 䮪ãá¥, ¢ë室¨¬ |
310 | je @b |
311 | je @b |
311 | ;஢¥àª ¦ âë shift |
312 | ;஢¥àª ¦ âë shift |
312 | xor ecx,ecx |
313 | call .check_shift |
313 | push eax |
- | |
314 | inc ecx |
- | |
315 | mov eax,66 |
- | |
316 | mov ebx,3 |
- | |
317 | int 0x40 |
- | |
318 | test al,0x03 |
- | |
319 | je @f |
- | |
320 | or word ed_flags,ed_shift ;ãáâ ®¢¨¬ ä« £ |
- | |
321 | @@: pop eax ;¢®ááâ ®¢¨¬ áç¨â ë© á¨¬¢®« á ª« ¢¨ âãàë |
- | |
322 | ;---------------------------------------------------------- |
314 | ;---------------------------------------------------------- |
323 | ;--- ¯à®¢¥à塞, çâ® ¦ â® -------------------------------- |
315 | ;--- ¯à®¢¥à塞, çâ® ¦ â® -------------------------------- |
324 | ;---------------------------------------------------------- |
316 | ;---------------------------------------------------------- |
325 | cmp ah,8 |
317 | cmp ah,8 |
326 | jz .backspace |
318 | jz .backspace |
Line 873... | Line 865... | ||
873 | shl ebx,16 |
865 | shl ebx,16 |
874 | mov bx,6 |
866 | mov bx,6 |
875 | mov edx,ebp |
867 | mov edx,ebp |
876 | call .draw_bg_eax |
868 | call .draw_bg_eax |
877 | ret |
869 | ret |
- | 870 | ;;;;;;;;;;;;;;;;;; |
|
- | 871 | ;;஢¥àª ¦ â «¨ shift |
|
- | 872 | ;;;;;;;;;;;;;;;;;; |
|
- | 873 | .check_shift: |
|
- | 874 | pusha ;á®åà ¨¬ ¢á¥ ॣ¨áâàë |
|
- | 875 | xor ecx,ecx |
|
- | 876 | inc ecx |
|
- | 877 | mov eax,66 |
|
- | 878 | mov ebx,3 |
|
- | 879 | int 0x40 |
|
- | 880 | test al,0x03 |
|
- | 881 | je @f |
|
- | 882 | or word ed_flags,ed_shift ;ãáâ ®¢¨¬ ä« £ |
|
- | 883 | @@: popa ;¢®ááâ ®¢¨¬ ॣ¨áâàë |
|
- | 884 | ret |
|
- | 885 | ||
878 | ;========================================================== |
886 | ;========================================================== |
879 | ;=== ®¡à ¡®âª ¬ëè¨ ======================================= |
887 | ;=== ®¡à ¡®âª ¬ëè¨ ======================================= |
880 | ;========================================================== |
888 | ;========================================================== |
881 | .mouse: |
889 | .mouse: |
882 | pusha |
890 | pusha |
Line 935... | Line 943... | ||
935 | add ax,ed_offset |
943 | add ax,ed_offset |
936 | cmp ax,ed_size |
944 | cmp ax,ed_size |
937 | jna @f |
945 | jna @f |
938 | mov ax,ed_size |
946 | mov ax,ed_size |
939 | @@: |
947 | @@: |
- | 948 | ;;;;;;; |
|
- | 949 | ;;¥ªæ¨ï ®¡à ¡®âª¨ shift ¨ ¢ë¤¥«¥¨ï ¯® shift |
|
- | 950 | ;;;;;;; |
|
940 | test word ed_flags,ed_shift_bac |
951 | test word ed_flags,ed_shift_bac |
941 | je @f |
952 | je @f |
942 | mov ebp,dword ed_color |
953 | mov ebp,dword ed_color |
943 | mov ebx,dword ed_shift_pos |
954 | mov ebx,dword ed_shift_pos |
944 | push eax |
955 | push eax |
945 | call .sh_cl_ |
956 | call .sh_cl_ |
946 | and word ed_flags,ed_shift_cl |
957 | and word ed_flags,ed_shift_bac_cl |
947 | pop eax |
958 | pop eax |
Line -... | Line 959... | ||
- | 959 | ||
948 | 960 | @@: call .check_shift ;¯à®¢¥à¨¬ ¦ â «¨ shift |
|
949 | @@: |
961 | |
950 | test word ed_flags,ed_shift |
962 | test word ed_flags,ed_shift |
951 | je @f |
963 | je ._msh_exit |
952 | mov ebx,ed_pos |
964 | test word ed_flags,ed_shift_on |
Line -... | Line 965... | ||
- | 965 | jne @f |
|
- | 966 | ||
- | 967 | push dword ed_pos |
|
- | 968 | pop dword ed_shift_pos |
|
953 | mov ed_shift_pos,ebx |
969 | or word ed_flags,ed_shift_on |
954 | 970 | @@: |
|
955 | mov ed_pos,eax |
- | |
- | 971 | mov ed_pos,eax |
|
956 | mov ebp,dword shift_color |
972 | mov ebp,dword shift_color |
957 | 973 | mov ebx,dword ed_shift_pos |
|
958 | call .sh_cl_ |
- | |
959 | or word ed_flags,ed_shift_bac ;ãáâ ®¢¨¬ ¡¨â çâ® ¬ë ¢ë¤¥«¨«¨ |
974 | call .sh_cl_ |
960 | and word ed_flags,ed_shift_off |
975 | or word ed_flags,ed_shift_bac ;ãáâ ®¢¨¬ ¡¨â çâ® ¬ë ¢ë¤¥«¨«¨ |
961 | jmp .m_sh |
976 | jmp .m_sh |
- | 977 | ._msh_exit: |
|
- | 978 | mov ed_pos,eax |
|
962 | @@: |
979 | mov dword ed_shift_pos,eax |
963 | mov ed_pos,ax |
980 | |
- | 981 | .m_sh: call .draw_text |
|
- | 982 | call .draw_cursor |
|
- | 983 | ||
964 | .m_sh: call .draw_text |
984 | |
965 | call .draw_cursor |
985 | and word ed_flags,ed_shift_off ;¢ëª«î稬 ¢ «î¡®¬ á«ãç ¥ shift |
966 | ;---------------------------------------------------------- |
986 | ;---------------------------------------------------------- |
967 | ;--- ¯à®æ¥¤ãà ãáâ ®¢ª¨ 䮪ãá --------------------------- |
987 | ;--- ¯à®æ¥¤ãà ãáâ ®¢ª¨ 䮪ãá --------------------------- |
968 | ;---------------------------------------------------------- |
988 | ;---------------------------------------------------------- |
Line 1002... | Line 1022... | ||
1002 | ed_focus= 10b ;䮪ãá ¯à¨«®¦¥¨ï |
1022 | ed_focus= 10b ;䮪ãá ¯à¨«®¦¥¨ï |
1003 | ed_shift_on= 1000b ;¥á«¨ ¥ ãáâ ®¢«¥ -§ ç¨â ¢¯¥à¢ë¥ ¦ â shift,¥á«¨ ¡ë« ãáâ ®¢«¥, § ç¨â ¬ë 㦥 çâ® - â® ¤¥« «¨ 㤥ন¢ ï shift |
1023 | ed_shift_on= 1000b ;¥á«¨ ¥ ãáâ ®¢«¥ -§ ç¨â ¢¯¥à¢ë¥ ¦ â shift,¥á«¨ ¡ë« ãáâ ®¢«¥, § ç¨â ¬ë 㦥 çâ® - â® ¤¥« «¨ 㤥ন¢ ï shift |
1004 | ed_shift= 100b ;¢ª«îç ¥âáï ¯à¨ ¦ ⨨ shift â.¥. ¥á«¨ ¦¨¬ î |
1024 | ed_shift= 100b ;¢ª«îç ¥âáï ¯à¨ ¦ ⨨ shift â.¥. ¥á«¨ ¦¨¬ î |
1005 | ed_shift_off= 1111111111111011b |
1025 | ed_shift_off= 1111111111111011b |
1006 | ed_shift_bac= 10000b ;¡¨â ¤«ï ®ç¨á⪨ ¢ë¤¥«¥®£® shift â.¥. ¯à¨ ãáâ ®¢ª¥ £®¢®à¨â çâ® ¥áâì ¢ë¤¥«¥¨¥ |
1026 | ed_shift_bac= 10000b ;¡¨â ¤«ï ®ç¨á⪨ ¢ë¤¥«¥®£® shift â.¥. ¯à¨ ãáâ ®¢ª¥ £®¢®à¨â çâ® ¥áâì ¢ë¤¥«¥¨¥ |
- | 1027 | ed_shift_bac_cl=1111111111101111b ;®ç¨á⪠¯à¨ 㤠«¥¨¨ ¢ë¤¥«¥¨ï |
|
1007 | ed_shift_cl= 1111111111100011b |
1028 | ed_shift_cl= 1111111111100011b |
1008 | ed_left_fl= 100000b |
1029 | ed_left_fl= 100000b |
1009 | ed_right_fl= 1111111111011111b |
1030 | ed_right_fl= 1111111111011111b |
1010 | ed_offset_fl= 1000000b |
1031 | ed_offset_fl= 1000000b |
1011 | ed_offset_cl= 1111111110111111b |
1032 | ed_offset_cl= 1111111110111111b |
Line 1036... | Line 1057... | ||
1036 | macro key_edit_boxes start,end |
1057 | macro key_edit_boxes start,end |
1037 | { |
1058 | { |
1038 | mov edi,start |
1059 | mov edi,start |
1039 | mov ecx,((end-start)/ed_struc_size) |
1060 | mov ecx,((end-start)/ed_struc_size) |
1040 | @@: |
1061 | @@: |
1041 | ; push eax |
- | |
1042 | call edit_box.key |
1062 | call edit_box.key |
1043 | ; pop eax |
- | |
1044 | add edi,ed_struc_size |
1063 | add edi,ed_struc_size |
1045 | loop @b |
1064 | loop @b |
1046 | } |
1065 | } |
1047 | ed_struc_size=66 |
1066 | ed_struc_size=66 |
1048 | struc edit_box width,left,top,color,focus_border_color,\ |
1067 | struc edit_box width,left,top,color,focus_border_color,\ |
1049 | blur_border_color,text_color,max,text,flags |
1068 | blur_border_color,text_color,max,text,flags,size |
1050 | { |
1069 | { |
1051 | .width dd width |
1070 | .width dd width |
1052 | .left dd left |
1071 | .left dd left |
1053 | .top dd top |
1072 | .top dd top |
1054 | .color dd color |
1073 | .color dd color |