Subversion Repositories Kolibri OS

Rev

Rev 3693 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

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