Subversion Repositories Kolibri OS

Rev

Rev 1108 | Rev 1373 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1108 Rev 1214
1
;§ £®«®¢®ª ¯à¨«®¦¥­¨ï
1
;§ £®«®¢®ª ¯à¨«®¦¥­¨ï
2
use32                ; âà ­á«ïâ®à, ¨á¯®«ì§ãî騩 32 à §à來ëå ª®¬ ­¤ë
2
use32                ; âà ­á«ïâ®à, ¨á¯®«ì§ãî騩 32 à §à來ëå ª®¬ ­¤ë
3
    org 0x0                ; ¡ §®¢ë©  ¤à¥á ª®¤ , ¢á¥£¤  0x0
3
    org 0x0                ; ¡ §®¢ë©  ¤à¥á ª®¤ , ¢á¥£¤  0x0
4
    db 'MENUET01'        ; ¨¤¥­â¨ä¨ª â®à ¨á¯®«­ï¥¬®£® ä ©«  (8 ¡ ©â)
4
    db 'MENUET01'        ; ¨¤¥­â¨ä¨ª â®à ¨á¯®«­ï¥¬®£® ä ©«  (8 ¡ ©â)
5
    dd 0x1                ; ¢¥àá¨ï ä®à¬ â  § £®«®¢ª  ¨á¯®«­ï¥¬®£® ä ©« 
5
    dd 0x1                ; ¢¥àá¨ï ä®à¬ â  § £®«®¢ª  ¨á¯®«­ï¥¬®£® ä ©« 
6
    dd start                ;  ¤à¥á, ­  ª®â®àë© á¨á⥬  ¯¥à¥¤ ñâ ã¯à ¢«¥­¨¥
6
    dd start                ;  ¤à¥á, ­  ª®â®àë© á¨á⥬  ¯¥à¥¤ ñâ ã¯à ¢«¥­¨¥
7
                        ; ¯®á«¥ § £à㧪¨ ¯à¨«®¦¥­¨ï ¢ ¯ ¬ïâì
7
                        ; ¯®á«¥ § £à㧪¨ ¯à¨«®¦¥­¨ï ¢ ¯ ¬ïâì
8
    dd i_end                ; à §¬¥à ¯à¨«®¦¥­¨ï
8
    dd i_end                ; à §¬¥à ¯à¨«®¦¥­¨ï
9
    dd mem                  ; Ž¡ê¥¬ ¨á¯®«ì§ã¥¬®© ¯ ¬ïâ¨, ¤«ï á⥪  ®â¢¥¤¥¬ 0å100 ¡ ©â ¨ ¢ë஢­¨¬ ­  £à­¨æã 4 ¡ ©â 
9
    dd mem                  ; Ž¡ê¥¬ ¨á¯®«ì§ã¥¬®© ¯ ¬ïâ¨, ¤«ï á⥪  ®â¢¥¤¥¬ 0å100 ¡ ©â ¨ ¢ë஢­¨¬ ­  £à­¨æã 4 ¡ ©â 
10
    dd mem                  ; à á¯®«®¦¨¬ ¯®§¨æ¨î á⥪  ¢ ®¡« á⨠¯ ¬ïâ¨, áࠧ㠧  ⥫®¬ ¯à®£à ¬¬ë. ‚¥à設  á⥪  ¢ ¤¨ ¯ §®­¥ ¯ ¬ïâ¨, 㪠§ ­­®¬ ¢ëè¥
10
    dd mem                  ; à á¯®«®¦¨¬ ¯®§¨æ¨î á⥪  ¢ ®¡« á⨠¯ ¬ïâ¨, áࠧ㠧  ⥫®¬ ¯à®£à ¬¬ë. ‚¥à設  á⥪  ¢ ¤¨ ¯ §®­¥ ¯ ¬ïâ¨, 㪠§ ­­®¬ ¢ëè¥
11
    dd 0x0              ; 㪠§ â¥«ì ­  áâபã á ¯ à ¬¥âà ¬¨.
11
    dd 0x0              ; 㪠§ â¥«ì ­  áâபã á ¯ à ¬¥âà ¬¨.
12
    dd cur_dir_path
12
    dd cur_dir_path
13
 
13
 
14
 
14
 
15
include '../../../../../macros.inc'
15
include '../../../../../macros.inc'
16
include 'editbox_ex.mac'
16
include 'editbox_ex.mac'
17
include '../../load_lib.mac'
17
include '../../load_lib.mac'
18
	@use_library	;use load lib macros
18
	@use_library	;use load lib macros
19
start:
19
start:
20
;universal load library/librarys
20
;universal load library/librarys
21
sys_load_library  library_name, cur_dir_path, library_path, system_path, \
21
sys_load_library  library_name, cur_dir_path, library_path, system_path, \
22
err_message_found_lib, head_f_l, myimport, err_message_import, head_f_i
22
err_message_found_lib, head_f_l, myimport, err_message_import, head_f_i
23
;if return code =-1 then exit, else nornary work
23
;if return code =-1 then exit, else nornary work
24
        cmp     eax,-1
24
        cmp     eax,-1
25
        jz      exit
25
        jz      exit
26
        mcall   40,0x27         ;ãáâ ­®¢¨âì ¬ áªã ¤«ï ®¦¨¤ ¥¬ëå ᮡë⨩
26
        mcall   40,0x27         ;ãáâ ­®¢¨âì ¬ áªã ¤«ï ®¦¨¤ ¥¬ëå ᮡë⨩
27
red_win:
27
red_win:
28
    call draw_window            ;¯¥à¢®­ ç «ì­® ­¥®¡å®¤¨¬® ­ à¨á®¢ âì ®ª­®
28
    call draw_window            ;¯¥à¢®­ ç «ì­® ­¥®¡å®¤¨¬® ­ à¨á®¢ âì ®ª­®
29
align 4
29
align 4
30
still:                          ;®á­®¢­®© ®¡à ¡®â稪
30
still:                          ;®á­®¢­®© ®¡à ¡®â稪
31
        mcall   10              ;Ž¦¨¤ âì ᮡëâ¨ï
31
        mcall   10              ;Ž¦¨¤ âì ᮡëâ¨ï
32
        dec  eax
32
        dec  eax
33
        jz   red_win
33
        jz   red_win
34
        dec  eax
34
        dec  eax
35
        jz   key
35
        jz   key
36
        dec  eax
36
        dec  eax
37
        jz   button
37
        jz   button
38
 
38
 
39
        push    dword edit1
39
        push    dword edit1
40
        call    [edit_box_mouse]
40
        call    [edit_box_mouse]
41
 
41
 
42
        push    dword edit2
42
        push    dword edit2
43
        call    [edit_box_mouse]
43
        call    [edit_box_mouse]
44
 
44
 
45
        push    dword check1
45
        push    dword check1
46
        call    [check_box_mouse]
46
        call    [check_box_mouse]
47
 
47
 
48
        push    dword check2
48
        push    dword check2
49
        call    [check_box_mouse]
49
        call    [check_box_mouse]
50
 
50
 
51
        push    dword Option_boxs
51
        push    dword Option_boxs
52
        call    [option_box_mouse]
52
        call    [option_box_mouse]
53
 
53
 
54
        push    dword Option_boxs2
54
        push    dword Option_boxs2
55
        call    [option_box_mouse]
55
        call    [option_box_mouse]
56
 
56
 
57
        jmp still    ;¥á«¨ ­¨ç¥£® ¨§ ¯¥à¥ç¨á«¥­­®£® â® á­®¢  ¢ 横«
57
        jmp still    ;¥á«¨ ­¨ç¥£® ¨§ ¯¥à¥ç¨á«¥­­®£® â® á­®¢  ¢ 横«
58
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
58
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
59
button:
59
button:
60
        mcall   17      ;¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª« ¢¨è¨
60
        mcall   17      ;¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª« ¢¨è¨
61
        test ah,ah      ;¥á«¨ ¢ ah 0, â® ¯¥à¥©â¨ ­  ®¡à ¡®â稪 ᮡë⨩ still
61
        test ah,ah      ;¥á«¨ ¢ ah 0, â® ¯¥à¥©â¨ ­  ®¡à ¡®â稪 ᮡë⨩ still
62
        jz  still
62
        jz  still
63
exit:   mcall   -1
63
exit:   mcall   -1
64
key:
64
key:
65
        mcall   2       ;§ £à㧨¬ §­ ç¥­¨¥ 2 ¢ ॣ¨áâ®à eax ¨ ¯®«ã稬 ª®¤ ­ ¦ â®© ª« ¢¨è¨
65
        mcall   2       ;§ £à㧨¬ §­ ç¥­¨¥ 2 ¢ ॣ¨áâ®à eax ¨ ¯®«ã稬 ª®¤ ­ ¦ â®© ª« ¢¨è¨
66
 
66
 
67
        push    dword edit1
67
        push    dword edit1
68
        call    [edit_box_key]
68
        call    [edit_box_key]
69
 
69
 
70
        push    dword edit2
70
        push    dword edit2
71
        call    [edit_box_key]
71
        call    [edit_box_key]
72
 
72
 
73
        jmp still
73
        jmp still
74
 
74
 
75
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
75
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
76
align 4
76
align 4
77
draw_window:            ;à¨á®¢ ­¨¥ ®ª­  ¯à¨«®¦¥­¨ï
77
draw_window:            ;à¨á®¢ ­¨¥ ®ª­  ¯à¨«®¦¥­¨ï
78
        mcall   12,1
78
        mcall   12,1
79
        mcall   0,(50*65536+390),(30*65536+200),0x33AABBCC,0x805080DD,hed
79
        mcall   0,(50*65536+390),(30*65536+200),0x33AABBCC,0x805080DD,hed
80
 
80
 
81
        push    dword edit1
81
        push    dword edit1
82
        call    [edit_box_draw]
82
        call    [edit_box_draw]
83
 
83
 
84
        push    dword edit2
84
        push    dword edit2
85
        call    [edit_box_draw]
85
        call    [edit_box_draw]
86
 
86
 
87
        push    dword check1
87
        push    dword check1
88
        call    [check_box_draw]
88
        call    [check_box_draw]
89
 
89
 
90
        push    dword check2
90
        push    dword check2
91
        call    [check_box_draw]
91
        call    [check_box_draw]
92
 
92
 
93
        push    dword Option_boxs
93
        push    dword Option_boxs
94
        call    [option_box_draw]        
94
        call    [option_box_draw]        
95
 
95
 
96
        push    dword Option_boxs2
96
        push    dword Option_boxs2
97
        call    [option_box_draw]
97
        call    [option_box_draw]
98
 
98
 
99
        mcall   12,2
99
        mcall   12,2
100
    ret
100
    ret
101
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
101
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
102
;DATA ¤ ­­ë¥
102
;DATA ¤ ­­ë¥
103
;‚ᥣ¤  ᮡ«î¤ âì ¯®á«¥¤®¢ â¥«ì­®áâì ¢ ¨¬¥­¨.
103
;‚ᥣ¤  ᮡ«î¤ âì ¯®á«¥¤®¢ â¥«ì­®áâì ¢ ¨¬¥­¨.
104
system_path      db '/sys/lib/'
104
system_path      db '/sys/lib/'
105
library_name     db 'box_lib.obj',0
105
library_name     db 'box_lib.obj',0
106
; …᫨ ¥áâì ¦¥« ­¨¥ ࠧꥤ¨­¨âì, â® ­ã¦­® ¨á¯®«ì§®¢ âì á«¥¤ãîé¨î ª®­áâàãªæ¨î
106
; …᫨ ¥áâì ¦¥« ­¨¥ ࠧꥤ¨­¨âì, â® ­ã¦­® ¨á¯®«ì§®¢ âì á«¥¤ãîé¨î ª®­áâàãªæ¨î
107
;system_path      db '/sys/lib/box_lib.obj',0
107
;system_path      db '/sys/lib/box_lib.obj',0
108
;... «î¡ ï ¯®á«¥¤®¢ â¥«ì­®áâì ¤àã£¨å ª®¬ ­¤ ¨ ®¯à¥¤¥«¥­¨©.
108
;... «î¡ ï ¯®á«¥¤®¢ â¥«ì­®áâì ¤àã£¨å ª®¬ ­¤ ¨ ®¯à¥¤¥«¥­¨©.
109
;library_name     db 'box_lib.obj',0
109
;library_name     db 'box_lib.obj',0
110
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
110
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
111
 
111
 
112
err_message_found_lib   db 'Sorry I cannot load library box_lib.obj',0
112
err_message_found_lib   db 'Sorry I cannot load library box_lib.obj',0
113
head_f_i:
113
head_f_i:
114
head_f_l        db 'System error',0
114
head_f_l        db 'System error',0
115
err_message_import      db 'Error on load import library box_lib.obj',0
115
err_message_import      db 'Error on load import library box_lib.obj',0
116
 
116
 
117
myimport:   
117
myimport:   
118
 
118
 
119
edit_box_draw   dd      aEdit_box_draw
119
edit_box_draw   dd      aEdit_box_draw
120
edit_box_key    dd      aEdit_box_key
120
edit_box_key    dd      aEdit_box_key
121
edit_box_mouse  dd      aEdit_box_mouse
121
edit_box_mouse  dd      aEdit_box_mouse
122
version_ed      dd      aVersion_ed
122
version_ed      dd      aVersion_ed
123
 
123
 
124
check_box_draw  dd      aCheck_box_draw
124
check_box_draw  dd      aCheck_box_draw
125
check_box_mouse dd      aCheck_box_mouse
125
check_box_mouse dd      aCheck_box_mouse
126
version_ch      dd      aVersion_ch
126
version_ch      dd      aVersion_ch
127
 
127
 
128
option_box_draw  dd      aOption_box_draw
128
option_box_draw  dd      aOption_box_draw
129
option_box_mouse dd      aOption_box_mouse
129
option_box_mouse dd      aOption_box_mouse
130
version_op       dd      aVersion_op
130
version_op       dd      aVersion_op
131
 
131
 
132
                dd      0
132
                dd      0
133
                dd      0
133
                dd      0
134
 
134
 
135
aEdit_box_draw  db 'edit_box',0
135
aEdit_box_draw  db 'edit_box',0
136
aEdit_box_key   db 'edit_box_key',0
136
aEdit_box_key   db 'edit_box_key',0
137
aEdit_box_mouse db 'edit_box_mouse',0
137
aEdit_box_mouse db 'edit_box_mouse',0
138
aVersion_ed     db 'version_ed',0
138
aVersion_ed     db 'version_ed',0
139
 
139
 
140
aCheck_box_draw  db 'check_box_draw',0
140
aCheck_box_draw  db 'check_box_draw',0
141
aCheck_box_mouse db 'check_box_mouse',0
141
aCheck_box_mouse db 'check_box_mouse',0
142
aVersion_ch      db 'version_ch',0
142
aVersion_ch      db 'version_ch',0
143
 
143
 
144
aOption_box_draw  db 'option_box_draw',0
144
aOption_box_draw  db 'option_box_draw',0
145
aOption_box_mouse db 'option_box_mouse',0
145
aOption_box_mouse db 'option_box_mouse',0
146
aVersion_op       db 'version_op',0
146
aVersion_op       db 'version_op',0
147
 
147
 
148
 
148
 
149
 
149
 
150
 
150
 
151
check1 check_box 10,45,6,12,0x80AABBCC,0,0,check_text,14,ch_flag_en
151
check1 check_box 10,45,6,12,0x80AABBCC,0,0,check_text,14,ch_flag_en
152
check2 check_box 10,60,6,12,0x80AABBCC,0,0,check_text2,15
152
check2 check_box 10,60,6,12,0x80AABBCC,0,0,check_text2,15
153
 
153
 
154
edit1 edit_box 350,3,5,0xffffff,0x6f9480,0,0xAABBCC,0,308,hed,ed_focus,hed_end-hed-1,hed_end-hed-1
154
edit1 edit_box 350,3,5,0xffffff,0x6f9480,0,0xAABBCC,0,308,hed,mouse_dd,ed_focus,hed_end-hed-1,hed_end-hed-1
155
edit2 edit_box 350,3,25,0xffffff,0x6a9480,0,0,0,99,ed_buffer,ed_figure_only
155
edit2 edit_box 350,3,25,0xffffff,0x6a9480,0,0,0,99,ed_buffer,mouse_dd,ed_figure_only
156
 
156
 
157
op1 option_box option_group1,10,90,6,12,0xffffff,0,0,op_text.1,op_text.e1-op_text.1
157
op1 option_box option_group1,10,90,6,12,0xffffff,0,0,op_text.1,op_text.e1-op_text.1
158
op2 option_box option_group1,10,105,6,12,0xFFFFFF,0,0,op_text.2,op_text.e2-op_text.2
158
op2 option_box option_group1,10,105,6,12,0xFFFFFF,0,0,op_text.2,op_text.e2-op_text.2
159
op3 option_box option_group1,10,120,6,12,0xffffff,0,0,op_text.3,op_text.e3-op_text.3
159
op3 option_box option_group1,10,120,6,12,0xffffff,0,0,op_text.3,op_text.e3-op_text.3
160
op11 option_box option_group2,120,90,6,12,0xffffff,0,0,op_text.1,op_text.e1-op_text.1
160
op11 option_box option_group2,120,90,6,12,0xffffff,0,0,op_text.1,op_text.e1-op_text.1
161
op12 option_box option_group2,120,105,6,12,0xffffff,0,0,op_text.2,op_text.e2-op_text.2
161
op12 option_box option_group2,120,105,6,12,0xffffff,0,0,op_text.2,op_text.e2-op_text.2
162
op13 option_box option_group2,120,120,6,12,0xffffff,0,0,op_text.3,op_text.e3-op_text.3
162
op13 option_box option_group2,120,120,6,12,0xffffff,0,0,op_text.3,op_text.e3-op_text.3
163
 
163
 
164
option_group1   dd op1  ;㪠§ â¥«¨, ®­¨ ®â®¡à ¦ îâáï ¯® 㬮«ç ­¨î, ª®£¤  ¢ë¢®¤¨âáï 
164
option_group1   dd op1  ;㪠§ â¥«¨, ®­¨ ®â®¡à ¦ îâáï ¯® 㬮«ç ­¨î, ª®£¤  ¢ë¢®¤¨âáï 
165
option_group2   dd op12 ;¯à¨«®¦¥­¨¥
165
option_group2   dd op12 ;¯à¨«®¦¥­¨¥
166
Option_boxs     dd  op1,op2,op3,0
166
Option_boxs     dd  op1,op2,op3,0
167
Option_boxs2    dd  op11,op12,op13,0
167
Option_boxs2    dd  op11,op12,op13,0
168
hed db   'BOXs load from lib  date 27.04.2009',0
168
hed db   'BOXs load from lib  date 27.04.2009',0
169
hed_end:
169
hed_end:
170
rb  256
170
rb  256
171
check_text db 'First checkbox'
171
check_text db 'First checkbox'
172
check_text2 db 'Second checkbox'
172
check_text2 db 'Second checkbox'
173
op_text:                ; ‘®¯à®¢®¦¤ î騩 ⥪áâ ¤«ï 祪 ¡®ªá®¢
173
op_text:                ; ‘®¯à®¢®¦¤ î騩 ⥪áâ ¤«ï 祪 ¡®ªá®¢
174
.1 db 'Option_Box #1' 
174
.1 db 'Option_Box #1' 
175
.e1:
175
.e1:
176
.2 db 'Option_Box #2'
176
.2 db 'Option_Box #2'
177
.e2:
177
.e2:
178
.3 db 'Option_Box #3'
178
.3 db 'Option_Box #3'
179
.e3:
179
.e3:
180
ed_buffer       rb 100
180
ed_buffer       rb 100
181
;-----------------------
181
;-----------------------
182
;sc      system_colors
182
;sc      system_colors
-
 
183
 
-
 
184
mouse_dd	rd 1
183
p_info  process_information
185
p_info  process_information
184
cur_dir_path    rb 4096
186
cur_dir_path    rb 4096
185
library_path    rb 4096
187
library_path    rb 4096
186
i_end:
188
i_end:
187
rb 1024
189
rb 1024
188
mem:
190
mem: