Subversion Repositories Kolibri OS

Rev

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

Rev 2159 Rev 2819
1
use32
1
use32
2
  org 0x0
2
  org 0x0
3
  db 'MENUET01' ;¨¤¥­â¨ä. ¨á¯®«­ï¥¬®£® ä ©«  ¢á¥£¤  8 ¡ ©â
3
  db 'MENUET01' ;¨¤¥­â¨ä. ¨á¯®«­ï¥¬®£® ä ©«  ¢á¥£¤  8 ¡ ©â
4
  dd 0x01
4
  dd 0x01
5
  dd start
5
  dd start
6
  dd i_end ; à §¬¥à ¯à¨«®¦¥­¨ï
6
  dd i_end ; à §¬¥à ¯à¨«®¦¥­¨ï
7
  dd mem
7
  dd mem
8
  dd stacktop
8
  dd stacktop
9
  dd file_name
9
  dd file_name
10
  dd sys_path
10
  dd sys_path
11
 
11
 
12
MAX_COLOR_WORD_LEN equ 40
12
MAX_COLOR_WORD_LEN equ 40
13
BUF_SIZE equ 1000 ;buffer for copy|paste
13
BUF_SIZE equ 4096 ;buffer for copy|paste
14
maxSyntaxFileSize equ 310000
14
maxSyntaxFileSize equ 310000
15
CAPT_PATH_WIDTH equ 50 ;è¨à¨­  ¯®¤¯¨á¨ ¯¥à¥¤ ⥪áâ®¢ë¬ ¯®«¥¬
15
CAPT_PATH_WIDTH equ 50 ;è¨à¨­  ¯®¤¯¨á¨ ¯¥à¥¤ ⥪áâ®¢ë¬ ¯®«¥¬
16
 
16
 
17
include '../../macros.inc'
17
include '../../macros.inc'
18
include '../../proc32.inc'
18
include '../../proc32.inc'
19
include '../../develop/libraries/box_lib/load_lib.mac'
19
include '../../develop/libraries/box_lib/load_lib.mac'
20
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
20
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
21
include '../t_edit/mem.inc'
21
include '../t_edit/mem.inc'
22
include 'te_data.inc'
22
include 'te_data.inc'
23
include 'te_work.inc' ;text work functions
23
include 'te_work.inc' ;text work functions
24
 
24
 
25
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,0
25
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,0
26
 
26
 
27
align 4
27
align 4
28
start:
28
start:
29
  mov eax,48
-
 
30
  mov ebx,3
-
 
31
  mov ecx,sc
-
 
32
  mov edx,sizeof.system_colors
29
	mcall 48,3,sc,sizeof.system_colors
33
  mcall
-
 
34
 
30
 
35
  mcall 68,11
31
	mcall 68,11
36
  or eax,eax
32
	or eax,eax
37
  jz button.exit
33
	jz button.exit
-
 
34
 
38
 
35
	mcall 66,1,1 ;scan code
39
  mcall 40,0x27
36
	mcall 40,0x27
40
 
37
 
41
;-------------------------------------------------
38
;-------------------------------------------------
42
  mov ecx,maxSyntaxFileSize
39
	mov ecx,maxSyntaxFileSize
43
  stdcall mem.Alloc,ecx
40
	stdcall mem.Alloc,ecx
44
  mov [options_file],eax
41
	mov [options_file],eax
45
  mov [options_file_end],eax
42
	mov [options_file_end],eax
46
  add [options_file_end],ecx
43
	add [options_file_end],ecx
47
 
44
 
48
 
45
 
49
load_libraries l_libs_start,load_lib_end
46
load_libraries l_libs_start,load_lib_end
50
 
47
 
51
;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨« áì ­ è  «¨¡ 
48
;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨« áì ­ è  «¨¡ 
52
	mov	ebp,lib0
49
	mov	ebp,lib0
53
	cmp	dword [ebp+ll_struc_size-4],0
50
	cmp	dword [ebp+ll_struc_size-4],0
54
	jz	@f
51
	jz	@f
55
	mcall	-1	;exit not correct
52
	mcall	-1	;exit not correct
56
@@:
53
@@:
57
 
54
 
58
;---------------------------------------------------------------------
55
;---------------------------------------------------------------------
59
  stdcall dword[tl_data_init],dword tree1
56
  stdcall dword[tl_data_init],dword tree1
60
  copy_path fn_icon_tl_sys,sys_path,file_name,0
57
  copy_path fn_icon_tl_sys,sys_path,file_name,0
61
 
58
 
62
  mov ecx,3*256*13
59
  mov ecx,3*256*13
63
  stdcall mem.Alloc,ecx
60
  stdcall mem.Alloc,ecx
64
  mov dword[tree1.data_img_sys],eax
61
  mov dword[tree1.data_img_sys],eax
65
 
62
 
66
  mov [run_file_70.Function], 0
63
  mov [run_file_70.Function], 0
67
  mov [run_file_70.Position], 54
64
  mov [run_file_70.Position], 54
68
  mov [run_file_70.Flags], 0
65
  mov [run_file_70.Flags], 0
69
  mov [run_file_70.Count], ecx
66
  mov [run_file_70.Count], ecx
70
  mov [run_file_70.Buffer], eax
67
  mov [run_file_70.Buffer], eax
71
  mov byte[run_file_70+20], 0
68
  mov byte[run_file_70+20], 0
72
  mov [run_file_70.FileName], file_name
69
  mov [run_file_70.FileName], file_name
73
 
70
 
74
  mov eax,70 ;load icon file
71
  mov eax,70 ;load icon file
75
  mov ebx,run_file_70
72
  mov ebx,run_file_70
76
  int 0x40
73
  int 0x40
77
  cmp ebx,0
74
  cmp ebx,0
78
  jg @f
75
  jg @f
79
    mov dword[tree1.data_img_sys],0
76
    mov dword[tree1.data_img_sys],0
80
  @@:
77
  @@:
81
;---------------------------------------------------------------------
78
;---------------------------------------------------------------------
82
; ç¨â ¥¬ bmp ä ©« á ¨ª®­ª ¬¨ 㧫®¢
79
; ç¨â ¥¬ bmp ä ©« á ¨ª®­ª ¬¨ 㧫®¢
83
  copy_path fn_icon_tl_nod,sys_path,file_name,0
80
  copy_path fn_icon_tl_nod,sys_path,file_name,0
84
 
81
 
85
  mov ecx,3*256*2
82
  mov ecx,3*256*2
86
  stdcall mem.Alloc,ecx
83
  stdcall mem.Alloc,ecx
87
  mov dword[tree1.data_img],eax
84
  mov dword[tree1.data_img],eax
88
 
85
 
89
;  mov [run_file_70.Function], 0
86
;  mov [run_file_70.Function], 0
90
;  mov [run_file_70.Position], 54
87
;  mov [run_file_70.Position], 54
91
;  mov [run_file_70.Flags], 0
88
;  mov [run_file_70.Flags], 0
92
  mov [run_file_70.Count], ecx
89
  mov [run_file_70.Count], ecx
93
  mov [run_file_70.Buffer], eax
90
  mov [run_file_70.Buffer], eax
94
;  mov byte[run_file_70+20], 0
91
;  mov byte[run_file_70+20], 0
95
;  mov [run_file_70.FileName], file_name
92
;  mov [run_file_70.FileName], file_name
96
 
93
 
97
  mov eax,70 ;load icon file
94
  mov eax,70 ;load icon file
98
  mov ebx,run_file_70
95
  mov ebx,run_file_70
99
  int 0x40
96
  int 0x40
100
  cmp ebx,0
97
  cmp ebx,0
101
  jg @f
98
  jg @f
102
    mov dword[tree1.data_img],0
99
    mov dword[tree1.data_img],0
103
  @@:
100
  @@:
104
;------------------------------------------------------------------------------
101
;------------------------------------------------------------------------------
105
  copy_path fn_syntax_dir,sys_path,file_name,0 ;¡¥à¥¬ ¯ãâì ª ¯ ¯ª¥ á ä ©« ¬¨ ᨭ⠪á¨á 
102
  copy_path fn_syntax_dir,sys_path,file_name,0 ;¡¥à¥¬ ¯ãâì ª ¯ ¯ª¥ á ä ©« ¬¨ ᨭ⠪á¨á 
106
  mov eax,70
103
  mov eax,70
107
  mov ebx,tree_file_struct
104
  mov ebx,tree_file_struct
108
  int 0x40
105
  int 0x40
109
 
106
 
110
cmp ebx,-1
107
cmp ebx,-1
111
je .end_dir_init
108
je .end_dir_init
112
 
109
 
113
  mov eax,dir_mem
110
  mov eax,dir_mem
114
  add eax,32+4+1+3+4*6+8
111
  add eax,32+4+1+3+4*6+8
115
mov ecx,ebx
112
mov ecx,ebx
116
@@:
113
@@:
117
  cmp byte[eax],'.' ;䨫ìâà㥬 ä ©«ë á ¨¬¥­ ¬¨ '.' ¨ '..'
114
  cmp byte[eax],'.' ;䨫ìâà㥬 ä ©«ë á ¨¬¥­ ¬¨ '.' ¨ '..'
118
  je .filter
115
  je .filter
119
    push dword tree1
116
    push dword tree1
120
    push dword 0x10000 ;1*2^16 - £¤¥ 1 ­®¬¥à ¨ª®­ª¨ á ª­¨£®©
117
    push dword 0x10000 ;1*2^16 - £¤¥ 1 ­®¬¥à ¨ª®­ª¨ á ª­¨£®©
121
    push dword eax
118
    push dword eax
122
    call dword[tl_node_add]
119
    call dword[tl_node_add]
123
 
120
 
124
    stdcall dword[tl_cur_next],tree1
121
    stdcall dword[tl_cur_next],tree1
125
  .filter:
122
  .filter:
126
  add eax,304
123
  add eax,304
127
  loop @b
124
  loop @b
128
  stdcall dword[tl_cur_beg],tree1 ;áâ ¢¨¬ ªãàá®à ­  ­ ç «® ᯨ᪠
125
  stdcall dword[tl_cur_beg],tree1 ;áâ ¢¨¬ ªãàá®à ­  ­ ç «® ᯨ᪠
129
.end_dir_init:
126
.end_dir_init:
130
 
127
 
131
;--- load color option file ---
128
;--- load color option file ---
132
stdcall [ted_init], tedit0
129
stdcall [ted_init], tedit0
133
mov byte[file_name],0
130
mov byte[file_name],0
134
 
131
 
135
align 4
132
align 4
136
red_win:
133
red_win:
137
	call draw_window
134
	call draw_window
138
 
135
 
139
align 4
136
align 4
140
still:
137
still:
141
  mcall 10
138
  mcall 10
142
 
139
 
143
  cmp al,1 ;¨§¬. ¯®«®¦¥­¨¥ ®ª­ 
140
  cmp al,1 ;¨§¬. ¯®«®¦¥­¨¥ ®ª­ 
144
  jz red_win
141
  jz red_win
145
  cmp al,2
142
  cmp al,2
146
  jz key
143
  jz key
147
  cmp al,3
144
  cmp al,3
148
  jz button
145
  jz button
149
  cmp al,6
146
  cmp al,6
150
  jz mouse
147
  jz mouse
151
 
148
 
152
  jmp still
149
  jmp still
153
 
150
 
154
 
151
 
155
align 4
152
align 4
156
draw_window:
153
draw_window:
157
	pushad
154
	pushad
158
	mcall 12,1
155
	mcall 12,1
159
 
156
 
160
	mov edx,[sc.work]
157
	mov edx,[sc.work]
161
	or  edx,0x33000000
158
	or  edx,0x33000000
162
	mov edi,hed
159
	mov edi,hed
163
	mcall 0,<10,555>,<10,333>
160
	mcall 0,<10,555>,<10,333>
164
 
161
 
165
	mcall 9,procinfo,-1
162
	mcall 9,procinfo,-1
166
 
163
 
167
	mov eax,8 ;ª­®¯ª 
164
	mov eax,8 ;ª­®¯ª 
168
	mov ebx,5*65536+90
165
	mov ebx,5*65536+90
169
	mov ecx,195*65536+20
166
	mov ecx,195*65536+20
170
	mov edx,200
167
	mov edx,200
171
	mov esi,[sc.work_button];0xd0
168
	mov esi,[sc.work_button];0xd0
172
	mcall
169
	mcall
173
 
170
 
174
	;mov eax,8
171
	;mov eax,8
175
	mov ebx,100*65536+85
172
	mov ebx,100*65536+85
176
	mov ecx,195*65536+20
173
	mov ecx,195*65536+20
177
	mov edx,201
174
	mov edx,201
178
	mov esi,0xd00000
175
	mov esi,0xd00000
179
	mcall
176
	mcall
180
 
177
 
181
	mov eax,4 ;à¨á®¢ ­¨¥ ⥪áâ 
178
	mov eax,4 ;à¨á®¢ ­¨¥ ⥪áâ 
182
	mov ebx,10*65536+200
179
	mov ebx,10*65536+200
183
	mov ecx,[sc.work_button_text]
180
	mov ecx,[sc.work_button_text]
184
	or  ecx,0x80000000
181
	or  ecx,0x80000000
185
	mov edx,txt122
182
	mov edx,txt122
186
	mcall
183
	mcall
187
 
184
 
188
	mov ebx,105*65536+200
185
	mov ebx,105*65536+200
189
	mov ecx,0xffff00
186
	mov ecx,0xffff00
190
	or  ecx,0x80000000
187
	or  ecx,0x80000000
191
	mov edx,txt148
188
	mov edx,txt148
192
	mcall
189
	mcall
193
 
190
 
194
	mov ebx,195*65536+10
191
	mov ebx,195*65536+10
195
	mov ecx,[sc.work_text]
192
	mov ecx,[sc.work_text]
196
	or  ecx,0x80000000
193
	or  ecx,0x80000000
197
	mov edx,txt_inp_file
194
	mov edx,txt_inp_file
198
	int 0x40
195
	int 0x40
199
 
196
 
200
	add ebx,20
197
	add ebx,20
201
	mov edx,txt_out_file
198
	mov edx,txt_out_file
202
	int 0x40
199
	int 0x40
203
 
200
 
204
	push dword PathShow_data_1
201
	push dword PathShow_data_1
205
	call [PathShow_draw]
202
	call [PathShow_draw]
206
	
203
	
207
	stdcall [edit_box_draw],dword edit1
204
	stdcall [edit_box_draw],dword edit1
208
	stdcall [tl_draw],dword tree1
205
	stdcall [tl_draw],dword tree1
209
 
206
 
210
	;scroll 1
207
	;scroll 1
211
	mov [ws_dir_lbox.all_redraw],1
208
	mov [ws_dir_lbox.all_redraw],1
212
	stdcall [scrollbar_ver_draw],dword ws_dir_lbox
209
	stdcall [scrollbar_ver_draw],dword ws_dir_lbox
213
	stdcall [ted_draw], tedit0
210
	stdcall [ted_draw], tedit0
214
 
211
 
215
	mcall 12,2
212
	mcall 12,2
216
	popad
213
	popad
217
	ret
214
	ret
218
 
215
 
219
align 4
216
align 4
220
mouse:
217
mouse:
221
	stdcall [tl_mouse],tree1
218
	stdcall [tl_mouse],tree1
222
	stdcall [edit_box_mouse],edit1
219
	stdcall [edit_box_mouse],edit1
223
	stdcall [ted_mouse], tedit0
220
	stdcall [ted_mouse], tedit0
224
	jmp still
221
	jmp still
-
 
222
 
-
 
223
;output:
-
 
224
; ah = symbol
-
 
225
align 4
-
 
226
proc KeyConvertToASCII, table:dword
-
 
227
	push ebx
-
 
228
	mov ebx,dword[table] ;convert scan to ascii
-
 
229
	ror ax,8
-
 
230
	xor ah,ah
-
 
231
	add bx,ax
-
 
232
	mov ah,byte[ebx]
-
 
233
	pop ebx
-
 
234
	ret
225
 
235
endp
226
 
236
 
227
align 4
237
align 4
228
key:
238
key:
-
 
239
	mcall 66,3 ;66.3 ¯®«ãç¨âì á®áâ®ï­¨¥ ã¯à ¢«ïîé¨å ª« ¢¨è
-
 
240
	xor esi,esi
-
 
241
	mov ecx,1
-
 
242
	test al,0x03 ;[Shift]
-
 
243
	jz @f
-
 
244
		mov cl,2
-
 
245
		or esi,KM_SHIFT
-
 
246
	@@:
-
 
247
	test al,0x0c ;[Ctrl]
-
 
248
	jz @f
-
 
249
		or esi,KM_CTRL
-
 
250
	@@:
-
 
251
	test al,0x30 ;[Alt]
-
 
252
	jz @f
-
 
253
		mov cl,3
-
 
254
		or esi,KM_ALT
-
 
255
	@@:
-
 
256
	test al,0x80 ;[NumLock]
-
 
257
	jz @f
-
 
258
		or esi,KM_NUMLOCK
-
 
259
	@@:
-
 
260
 
-
 
261
	mcall 26,2,,conv_tabl ;26.2 ¯®«ãç¨âì à áª« ¤ªã ª« ¢¨ âãàë
229
	mcall 2
262
	mcall 2
230
	stdcall [tl_key],tree1
263
	stdcall [tl_key],tree1
-
 
264
 
-
 
265
	test word [edit1.flags],10b;ed_focus ; ¥á«¨ ­¥ ¢ 䮪ãá¥, ¢ë室¨¬
-
 
266
	je @f
-
 
267
		cmp ah,0x80 ;if key up
-
 
268
		ja still
-
 
269
		cmp ah,42 ;[Shift] (left)
-
 
270
		je still
-
 
271
		cmp ah,54 ;[Shift] (right)
-
 
272
		je still
-
 
273
		cmp ah,56 ;[Alt]
-
 
274
		je still
-
 
275
		cmp ah,29 ;[Ctrl]
-
 
276
		je still
-
 
277
		cmp ah,69 ;[Pause Break]
-
 
278
		je still
-
 
279
 
-
 
280
		stdcall KeyConvertToASCII, dword conv_tabl
231
	stdcall [edit_box_key],edit1
281
		stdcall [edit_box_key],edit1
-
 
282
		jmp still
-
 
283
	@@:
-
 
284
 
232
;;;stdcall [ted_key], tedit0, conv_tabl,esi
285
	stdcall [ted_key], tedit0, conv_tabl,esi
233
	jmp still
286
	jmp still
234
 
287
 
235
align 4
288
align 4
236
button:
289
button:
237
;  cmp [menu_active],1 ;¥á«¨ ­ ¦ «¨ ¬¥­î, â® á­ ç «  ॠªæ¨ï ­  ¬¥­î
290
;  cmp [menu_active],1 ;¥á«¨ ­ ¦ «¨ ¬¥­î, â® á­ ç «  ॠªæ¨ï ­  ¬¥­î
238
;  jne @f ;mouse.menu_bar_1
291
;  jne @f ;mouse.menu_bar_1
239
;    mov [menu_active],0
292
;    mov [menu_active],0
240
;    jmp still
293
;    jmp still
241
;  @@:
294
;  @@:
242
 
295
 
243
  mcall 17 ;¯®«ãç¨âì ª®¤ ­ ¦ â®© ª­®¯ª¨
296
  mcall 17 ;¯®«ãç¨âì ª®¤ ­ ¦ â®© ª­®¯ª¨
244
 
297
 
245
  cmp ah,200
298
  cmp ah,200
246
  jne @f
299
  jne @f
247
    call but_OpenSyntax
300
    call but_OpenSyntax
248
  @@:
301
  @@:
249
  cmp ah,201
302
  cmp ah,201
250
  jne @f
303
  jne @f
251
    call but_SaveSyntax
304
    call but_SaveSyntax
252
  @@:
305
  @@:
253
 
306
 
254
  cmp ah,1
307
  cmp ah,1
255
  jne still
308
  jne still
256
.exit:
309
.exit:
257
  ;push eax
310
  ;push eax
258
 
311
 
259
  stdcall mem.Free,[options_file]
312
  stdcall mem.Free,[options_file]
260
 
313
 
261
  stdcall [tl_data_clear], tree1
314
  stdcall [tl_data_clear], tree1
262
  stdcall [ted_delete], tedit0
315
  stdcall [ted_delete], tedit0
263
  mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
316
  mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
264
 
317
 
265
align 4
318
align 4
266
but_OpenSyntax:
319
but_OpenSyntax:
267
  stdcall [tl_node_get_data],tree1
320
  stdcall [tl_node_get_data],tree1
268
  pop dword [fn_col_option]
321
  pop dword [fn_col_option]
269
  call InitColText
322
  call InitColText
270
  ret
323
  ret
271
 
324
 
272
align 4
325
align 4
273
but_SaveSyntax:
326
but_SaveSyntax:
274
	stdcall [ted_but_save_file], tedit0,run_file_70,[edit1.text]
327
	stdcall [ted_but_save_file], tedit0,run_file_70,[edit1.text]
275
	ret
328
	ret
276
 
329
 
277
align 4
330
align 4
278
but_ctrl_o:
331
but_ctrl_o:
279
	push eax
332
	push eax
280
	call get_wnd_in_focus
333
	call get_wnd_in_focus
281
	cmp eax,0
334
	cmp eax,0
282
	je @f
335
	je @f
283
		stdcall [ted_open_file], eax,str_file_70,[edit1.text]
336
		stdcall [ted_open_file], eax,str_file_70,[edit1.text]
284
	@@:
337
	@@:
285
	pop eax
338
	pop eax
286
	ret
339
	ret
287
 
340
 
288
;ᮧ¤ ­¨¥ ­®¢®£® ä ©« 
341
;ᮧ¤ ­¨¥ ­®¢®£® ä ©« 
289
align 4
342
align 4
290
but_ctrl_n:
343
but_ctrl_n:
291
	push eax
344
	push eax
292
	call get_wnd_in_focus
345
	call get_wnd_in_focus
293
	cmp eax,0
346
	cmp eax,0
294
	je @f
347
	je @f
295
		stdcall [ted_clear], eax,1
348
		stdcall [ted_clear], eax,1
296
		stdcall [ted_draw], eax
349
		stdcall [ted_draw], eax
297
	@@:
350
	@@:
298
	pop eax
351
	pop eax
299
	ret
352
	ret
300
 
353
 
301
;®¯à¥¤¥«ï¥¬ ª ª®¥ ¨§ ®ª®­ । ªâ®à  ¢ 䮪ãá¥
354
;®¯à¥¤¥«ï¥¬ ª ª®¥ ¨§ ®ª®­ । ªâ®à  ¢ 䮪ãá¥
302
align 4
355
align 4
303
get_wnd_in_focus:
356
get_wnd_in_focus:
304
	xor eax,eax
357
	xor eax,eax
305
	cmp dword[el_focus],tedit0
358
	cmp dword[el_focus],tedit0
306
	jne @f
359
	jne @f
307
		mov eax,tedit0
360
		mov eax,tedit0
308
	@@:
361
	@@:
309
	;cmp dword[el_focus],tedit1
362
	;cmp dword[el_focus],tedit1
310
	;jne @f
363
	;jne @f
311
	;       mov eax,tedit1
364
	;       mov eax,tedit1
312
	;@@:
365
	;@@:
313
	ret
366
	ret
314
 
367
 
-
 
368
hed db 'TextEditor syntax file converter 23.06.12',0 ;¯®¤¯¨áì ®ª­ 
315
hed db 'TextEditor syntax file converter 06.09.11',0 ;¯®¤¯¨áì ®ª­ 
369
conv_tabl rb 128 ; â ¡«¨æ  ¤«ï ª®­¢¥àâ¨à®¢ ­¨ï scan-ª®¤  ¢ ascii-ª®¤
316
 
370
 
317
txt122 db '‡ £à. ä ©«',0
371
txt122 db '‡ £à. ä ©«',0
318
txt148 db '‘®åà. ä ©«',0
372
txt148 db '‘®åà. ä ©«',0
319
txt_inp_file db 'ˆáå. ä ©«:',0
373
txt_inp_file db 'ˆáå. ä ©«:',0
320
txt_out_file db '‚ëå. ä ©«:',0
374
txt_out_file db '‚ëå. ä ©«:',0
321
 
375
 
322
err_message_found_lib0	 db 'Sorry I cannot found library box_lib.obj',0
376
err_message_found_lib0	 db 'Sorry I cannot found library box_lib.obj',0
323
head_f_i0:
377
head_f_i0:
324
head_f_l0	  db 'System error',0
378
head_f_l0	  db 'System error',0
325
err_message_import0	 db 'Error on load import library box_lib.obj',0
379
err_message_import0	 db 'Error on load import library box_lib.obj',0
326
err_message_found_lib1	db 'Sorry I cannot found library msgbox.obj',0
380
err_message_found_lib1	db 'Sorry I cannot found library msgbox.obj',0
327
 
381
 
328
;library structures
382
;library structures
329
l_libs_start:
383
l_libs_start:
330
  lib0 l_libs boxlib_name, sys_path, file_name, system_dir0, err_message_found_lib0, head_f_l0, boxlib_import,err_message_import0, head_f_i0
384
  lib0 l_libs boxlib_name, sys_path, file_name, system_dir0, err_message_found_lib0, head_f_l0, boxlib_import,err_message_import0, head_f_i0
331
load_lib_end:
385
load_lib_end:
332
 
386
 
333
 
387
 
334
i_end:
388
i_end:
335
	rb 1024
389
	rb 1024
336
	align 16
390
	align 16
337
	procinfo process_information
391
	procinfo process_information
338
	thread:
392
	thread:
339
		rb 1024
393
		rb 1024
340
stacktop:
394
stacktop:
341
  sys_path:
395
  sys_path:
342
    rb 4096
396
    rb 4096
343
  file_name:
397
  file_name:
344
    rb 4096
398
    rb 4096
345
  file_name_rez:
399
  file_name_rez:
346
    rb 4096
400
    rb 4096
347
mem:
401
mem: