Rev 1649 | Rev 3328 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
205 | heavyiron | 1 | ; |
341 | heavyiron | 2 | ; RDsave для Kolibri (0.6.5.0 и старше) |
1649 | diamond | 3 | ; Save RAM disk to a hard or floppy drive |
1606 | mario79 | 4 | ; |
5 | ; version: 1.3 |
||
6 | ; last update: 08/09/2010 |
||
7 | ; written by: Marat Zakiyanov aka Mario79, aka Mario |
||
8 | ; changes: select path with OpenDialog, |
||
9 | ; keys 1,2,3,4 for select options |
||
10 | ;--------------------------------------------------------------------- |
||
205 | heavyiron | 11 | ; Mario79 2005 |
341 | heavyiron | 12 | ; Heavyiron 12.02.2007 |
1070 | Lrz | 13 | ; |
341 | heavyiron | 14 | ; Компилировать FASM'ом |
15 | ; |
||
16 | ;--------------------------------------------------------------------- |
||
205 | heavyiron | 17 | include 'lang.inc' |
1702 | Lrz | 18 | include '../../../config.inc' ;for nightbuild |
485 | heavyiron | 19 | include '..\..\..\macros.inc' |
205 | heavyiron | 20 | |
21 | appname equ 'RDsave ' |
||
1606 | mario79 | 22 | version equ '1.3' |
341 | heavyiron | 23 | |
1606 | mario79 | 24 | use32 ; включить 32-битный режим ассемблера |
25 | org 0x0 ; адресация с нуля |
||
205 | heavyiron | 26 | |
1606 | mario79 | 27 | db 'MENUET01' ; 8-байтный идентификатор MenuetOS |
28 | dd 0x01 ; версия заголовка (всегда 1) |
||
29 | dd START ; адрес первой команды |
||
30 | dd IM_END ; размер программы |
||
31 | dd I_END ; количество памяти |
||
32 | dd stacktop ; адрес вершины стэка |
||
33 | dd 0x0 ; адрес буфера для параметров (не используется) |
||
34 | dd cur_dir_path |
||
205 | heavyiron | 35 | |
1070 | Lrz | 36 | ;include '..\..\..\develop\examples\editbox\trunk\editbox.inc' |
1111 | Lrz | 37 | include '../../../develop/libraries/box_lib/load_lib.mac' |
1373 | IgorA | 38 | include '../../../develop/libraries/box_lib/trunk/box_lib.mac' |
1070 | Lrz | 39 | @use_library |
40 | |||
41 | ;use_edit_box |
||
1228 | Lrz | 42 | ;al equ eax ; \ decrease kpack'ed size |
43 | ;purge mov ; / |
||
205 | heavyiron | 44 | |
341 | heavyiron | 45 | ;--------------------------------------------------------------------- |
46 | ;--- НАЧАЛО ПРОГРАММЫ ---------------------------------------------- |
||
47 | ;--------------------------------------------------------------------- |
||
1070 | Lrz | 48 | align 4 |
49 | START: |
||
1606 | mario79 | 50 | mcall 68,11 |
51 | |||
52 | load_libraries l_libs_start,end_l_libs |
||
53 | |||
1373 | IgorA | 54 | cmp eax,-1 |
55 | jz close |
||
205 | heavyiron | 56 | |
1606 | mario79 | 57 | mov edi,filename_area |
58 | mov esi,start_temp_file_name |
||
59 | xor eax,eax |
||
60 | cld |
||
61 | @@: |
||
62 | lodsb |
||
63 | stosb |
||
64 | test eax,eax |
||
65 | jnz @b |
||
1228 | Lrz | 66 | |
1606 | mario79 | 67 | |
68 | mov edi,fname_buf |
||
69 | mov esi,path4 |
||
70 | xor eax,eax |
||
71 | cld |
||
72 | @@: |
||
73 | lodsb |
||
74 | stosb |
||
75 | test eax,eax |
||
76 | jnz @b |
||
77 | |||
78 | ;OpenDialog initialisation |
||
79 | push dword OpenDialog_data |
||
80 | call [OpenDialog_Init] |
||
81 | |||
82 | ; prepare for PathShow |
||
83 | push dword PathShow_data_1 |
||
84 | call [PathShow_prepare] |
||
85 | |||
86 | mcall 40,100111b |
||
1373 | IgorA | 87 | red: ; перерисовать окно |
1606 | mario79 | 88 | mcall 48,3,sc,sizeof.system_colors |
205 | heavyiron | 89 | |
1606 | mario79 | 90 | call draw_window ; вызываем процедуру отрисовки окна |
341 | heavyiron | 91 | ;--------------------------------------------------------------------- |
92 | ;--- ЦИКЛ ОБРАБОТКИ СОБЫТИЙ ---------------------------------------- |
||
93 | ;--------------------------------------------------------------------- |
||
94 | still: |
||
1606 | mario79 | 95 | mcall 10 |
205 | heavyiron | 96 | |
1606 | mario79 | 97 | dec eax ; перерисовать окно? |
98 | jz red ; если да - на метку red |
||
99 | dec eax |
||
100 | jz key |
||
101 | dec eax |
||
102 | jz button |
||
205 | heavyiron | 103 | |
1373 | IgorA | 104 | jmp still |
1606 | mario79 | 105 | ;--------------------------------------------------------------------- |
341 | heavyiron | 106 | button: |
1606 | mario79 | 107 | mcall 17 ; получить идентификатор нажатой кнопки |
108 | cmp ah,1 ; кнопка с id=1("закрыть")? |
||
109 | jne noclose |
||
1070 | Lrz | 110 | close: |
1606 | mario79 | 111 | or eax,-1 ; функция -1: завершить программу |
112 | mcall |
||
205 | heavyiron | 113 | |
341 | heavyiron | 114 | noclose: |
1373 | IgorA | 115 | push eax |
116 | call clear_err |
||
117 | pop eax |
||
118 | push 16 |
||
1606 | mario79 | 119 | xor ebx,ebx |
1373 | IgorA | 120 | inc ebx ; 16.1 = save to /FD/1 |
1606 | mario79 | 121 | cmp ah,2 |
1373 | IgorA | 122 | je doit |
123 | inc ebx ; 16.2 = save to /FD/2 |
||
1606 | mario79 | 124 | cmp ah,3 |
1373 | IgorA | 125 | je doit |
126 | pop ebx |
||
127 | push 18 |
||
1606 | mario79 | 128 | mov bl,6 ; 18.6 = save to specified folder |
1373 | IgorA | 129 | mov ecx, path3 |
1606 | mario79 | 130 | cmp ah,4 |
1373 | IgorA | 131 | je doit |
1606 | mario79 | 132 | |
133 | ; invoke OpenDialog |
||
134 | push dword OpenDialog_data |
||
135 | call [OpenDialog_Start] |
||
136 | cmp [OpenDialog_data.status],1 |
||
137 | jne still |
||
138 | |||
139 | ; prepare for PathShow |
||
140 | push dword PathShow_data_1 |
||
141 | call [PathShow_prepare] |
||
142 | |||
143 | call draw_PathShow |
||
144 | |||
145 | mov ecx,fname_buf ;path4 |
||
532 | diamond | 146 | doit: |
1373 | IgorA | 147 | pop eax |
148 | mcall |
||
149 | call check_for_error |
||
150 | jmp still |
||
1606 | mario79 | 151 | ;--------------------------------------------------------------------- |
152 | key: |
||
153 | mcall 2 |
||
154 | cmp ah,0x31 |
||
155 | jb still |
||
156 | cmp ah,0x34 |
||
157 | ja still |
||
158 | sub ah,0x30 |
||
159 | inc ah |
||
160 | jmp noclose |
||
161 | ;--------------------------------------------------------------------- |
||
1373 | IgorA | 162 | check_for_error: ;Обработчик ошибок |
1606 | mario79 | 163 | mov ecx,[sc.work_text] |
164 | mov edx,ok |
||
165 | test eax,eax |
||
1373 | IgorA | 166 | jz print |
1606 | mario79 | 167 | mov ecx,0xdd2222 |
168 | add edx,error3 - ok |
||
1373 | IgorA | 169 | dec eax |
170 | dec eax |
||
171 | jz print |
||
1606 | mario79 | 172 | add edx,error5 - error3 |
1373 | IgorA | 173 | dec eax |
174 | dec eax |
||
175 | jz print |
||
1606 | mario79 | 176 | add edx,error8 - error5 |
1373 | IgorA | 177 | dec eax |
178 | dec eax |
||
179 | dec eax |
||
180 | jz print |
||
1606 | mario79 | 181 | add edx,error9 - error8 |
1373 | IgorA | 182 | dec eax |
183 | jz print |
||
1606 | mario79 | 184 | add edx,error10 - error9 |
1373 | IgorA | 185 | dec eax |
186 | jz print |
||
1606 | mario79 | 187 | add edx,error11 - error10 |
1373 | IgorA | 188 | dec eax |
189 | jz print |
||
1606 | mario79 | 190 | add edx,aUnknownError - error11 |
191 | print: |
||
192 | mov eax,4 ;надписи |
||
193 | mov ebx,20 shl 16 + 148 |
||
194 | or ecx,0x80000000 |
||
195 | mcall |
||
196 | ret |
||
197 | ;--------------------------------------------------------------------- |
||
341 | heavyiron | 198 | clear_err: |
1606 | mario79 | 199 | mov eax,13 |
200 | mov ebx,15 shl 16 + 240 |
||
201 | mov ecx,145 shl 16 +15 |
||
202 | mov edx,[sc.work] |
||
203 | mcall |
||
204 | ret |
||
341 | heavyiron | 205 | ;--------------------------------------------------------------------- |
1606 | mario79 | 206 | draw_PathShow: |
207 | pusha |
||
208 | mcall 13,<8,172>,<110,15>,0xffffff |
||
209 | ; draw for PathShow |
||
210 | push dword PathShow_data_1 |
||
211 | call [PathShow_draw] |
||
212 | popa |
||
213 | ret |
||
214 | ;--------------------------------------------------------------------- |
||
341 | heavyiron | 215 | ;--- ОПРЕДЕЛЕНИЕ И ОТРИСОВКА ОКНА ---------------------------------- |
216 | ;--------------------------------------------------------------------- |
||
205 | heavyiron | 217 | draw_window: |
1606 | mario79 | 218 | mcall 12,1 ; функция 12: сообщить ОС об отрисовке окна |
219 | ; 1 - начинаем рисовать |
||
1373 | IgorA | 220 | ; СОЗДАЁМ ОКНО |
1606 | mario79 | 221 | xor eax,eax ; функция 0 : определить и отрисовать окно |
222 | mov ebx,200 shl 16 + 300 ; [x старт] *65536 + [x размер] |
||
223 | mov ecx,200 shl 16 + 190 ; [y старт] *65536 + [y размер] |
||
224 | mov edx,[sc.work] ; цвет рабочей области RRGGBB,8->color gl |
||
225 | or edx,0x34000000 |
||
226 | mov edi,title ; ЗАГОЛОВОК ОКНА |
||
227 | mcall |
||
205 | heavyiron | 228 | |
1606 | mario79 | 229 | call draw_PathShow |
205 | heavyiron | 230 | |
1606 | mario79 | 231 | ;отрисовка теней кнопок |
232 | mcall 13,<194,60>,<34,15>,0x444444 |
||
1070 | Lrz | 233 | |
1606 | mario79 | 234 | add ecx,20 shl 16 |
235 | mcall |
||
205 | heavyiron | 236 | |
1606 | mario79 | 237 | add ecx,20 shl 16 |
238 | mcall |
||
205 | heavyiron | 239 | |
1606 | mario79 | 240 | add ecx,40 shl 16 |
241 | mcall |
||
242 | ;отрисовка кнопок |
||
243 | sub ebx,4 shl 16 |
||
244 | sub ecx,4 shl 16 |
||
245 | mcall 8,,,5,[sc.work_button] |
||
205 | heavyiron | 246 | |
1606 | mario79 | 247 | sub ecx,40 shl 16 |
248 | dec edx |
||
249 | mcall |
||
205 | heavyiron | 250 | |
1606 | mario79 | 251 | sub ecx,20 shl 16 |
252 | dec edx |
||
253 | mcall |
||
205 | heavyiron | 254 | |
1606 | mario79 | 255 | sub ecx,20 shl 16 |
256 | dec edx |
||
257 | mcall |
||
258 | ; надписи |
||
259 | mov ecx,[sc.work_text] |
||
260 | or ecx,0x80000000 |
||
261 | mcall 4,<45,12>,,label1 |
||
205 | heavyiron | 262 | |
1606 | mario79 | 263 | mov ebx,150 shl 16 + 35 |
264 | mov edx,path1 |
||
265 | mcall |
||
341 | heavyiron | 266 | |
1606 | mario79 | 267 | add ebx,20 |
268 | mov edx,path2 |
||
269 | mcall |
||
341 | heavyiron | 270 | |
1606 | mario79 | 271 | mov ebx,75 shl 16 + 75 |
272 | mov edx,path3 |
||
273 | mcall |
||
341 | heavyiron | 274 | |
1606 | mario79 | 275 | mov ebx,30 shl 16 + 97 |
276 | mov edx,label2 |
||
277 | mcall |
||
341 | heavyiron | 278 | |
1606 | mario79 | 279 | mov ebx,40 shl 16 + 135 |
280 | mov edx,label3 |
||
281 | mcall |
||
341 | heavyiron | 282 | |
1606 | mario79 | 283 | mov ecx,[sc.work_button_text] |
284 | or ecx,0x80000000 |
||
285 | mov ebx,195 shl 16 + 35 |
||
286 | mov edx,save |
||
287 | mcall |
||
341 | heavyiron | 288 | |
1606 | mario79 | 289 | push edx |
290 | mov edx,key_help |
||
291 | call key_help_correct |
||
292 | pop edx |
||
341 | heavyiron | 293 | |
1606 | mario79 | 294 | add ebx,20 |
295 | mcall |
||
341 | heavyiron | 296 | |
1606 | mario79 | 297 | push edx |
298 | mov edx,key_help+2 |
||
299 | call key_help_correct |
||
300 | pop edx |
||
341 | heavyiron | 301 | |
1606 | mario79 | 302 | add ebx,20 |
303 | mcall |
||
341 | heavyiron | 304 | |
1606 | mario79 | 305 | push edx |
306 | mov edx,key_help+4 |
||
307 | call key_help_correct |
||
308 | pop edx |
||
341 | heavyiron | 309 | |
1606 | mario79 | 310 | mov edx,select |
311 | add ebx,40 |
||
312 | mcall |
||
341 | heavyiron | 313 | |
1606 | mario79 | 314 | mov edx,key_help+6 |
315 | call key_help_correct |
||
341 | heavyiron | 316 | |
1606 | mario79 | 317 | mcall 12,2 ; функция 12: сообщить ОС об отрисовке окна |
318 | ; 2, закончили рисовать |
||
319 | ret ; выходим из процедуры |
||
341 | heavyiron | 320 | ;--------------------------------------------------------------------- |
1606 | mario79 | 321 | key_help_correct: |
322 | push ebx |
||
323 | ror ebx,16 |
||
324 | mov bx,270 |
||
325 | rol ebx,16 |
||
326 | pusha |
||
327 | mov ecx,ebx |
||
328 | sub ebx,3 shl 16 |
||
329 | mov bx,13 |
||
330 | sub cx,3 |
||
331 | shl ecx,16 |
||
332 | mov cx,13 |
||
333 | mcall 13,,,0xffffff |
||
334 | popa |
||
335 | mcall |
||
336 | pop ebx |
||
337 | ret |
||
338 | ;--------------------------------------------------------------------- |
||
341 | heavyiron | 339 | ;--- ДАННЫЕ ПРОГРАММЫ ---------------------------------------------- |
340 | ;--------------------------------------------------------------------- |
||
341 | |||
1606 | mario79 | 342 | title db appname,version,0 |
341 | heavyiron | 343 | |
1606 | mario79 | 344 | ;--------------------------------------------------------------------- |
345 | PathShow_data_1: |
||
346 | .type dd 0 ;+0 |
||
347 | .start_y dw 113 ;+4 |
||
348 | .start_x dw 10 ;+6 |
||
349 | .font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
||
350 | .area_size_x dw 170 ;+10 |
||
351 | .font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
||
352 | .background_flag dd 0 ;+16 |
||
353 | .font_color dd 0x0 ;+20 |
||
354 | .background_color dd 0x0 ;+24 |
||
355 | .text_pointer dd fname_buf ;+28 |
||
356 | .work_area_pointer dd text_work_area ;+32 |
||
357 | .temp_text_length dd 0 ;+36 |
||
358 | ;--------------------------------------------------------------------- |
||
205 | heavyiron | 359 | if lang eq ru |
1606 | mario79 | 360 | save db 'Сохранить',0 |
361 | select db ' Выбрать',0 |
||
362 | label1 db 'Выберите один из вариантов:',0 |
||
363 | label2 db 'Или выберите полный путь к файлу:',0 |
||
364 | label3 db 'Все папки должны существовать',0 |
||
365 | ok db 'RAM-диск сохранен успешно',0 |
||
366 | error3 db 'Неизвестная файловая система',0 |
||
367 | error5 db 'Несуществующий путь',0 |
||
368 | error8 db 'Нет места на диске',0 |
||
369 | error9 db 'Таблица FAT разрушена',0 |
||
370 | error10 db 'Доступ запрещен',0 |
||
371 | error11 db 'Ошибка устройства',0 |
||
372 | aUnknownError db 'Неизвестная ошибка',0 |
||
373 | ;--------------------------------------------------------------------- |
||
605 | kaitz | 374 | else if lang eq et |
1606 | mario79 | 375 | save db 'Salvesta',0 |
376 | select db ' Valige',0 |
||
377 | label1 db 'Vali №ks variantidest:',0 |
||
378 | label2 db 'Vїi valige teekond failinimeni:',0 |
||
379 | label3 db 'Kїik kataloogid peavad eksisteerima',0 |
||
380 | ok db 'RAM-ketas salvestatud edukalt',0 |
||
381 | error3 db 'Tundmatu failis№steem',0 |
||
382 | error5 db 'Vigane teekond',0 |
||
383 | error8 db 'Ketas tфis',0 |
||
384 | error9 db 'FAT tabel vigane',0 |
||
385 | error10 db 'Juurdepффs keelatud',0 |
||
386 | error11 db 'Seadme viga',0 |
||
387 | aUnknownError db 'Tundmatu viga',0 |
||
388 | ;--------------------------------------------------------------------- |
||
205 | heavyiron | 389 | else |
1606 | mario79 | 390 | save db ' Save',0 |
391 | select db ' Select',0 |
||
392 | label1 db 'Select one of the variants:',0 |
||
393 | label2 db ' Or select full path to file:',0 |
||
394 | label3 db ' All folders must exist',0 |
||
395 | ok db 'RAM-drive was saved successfully',0 |
||
396 | error3 db 'Unknown file system',0 |
||
397 | error5 db 'Incorrect path',0 |
||
398 | error8 db 'Disk is full',0 |
||
399 | error9 db 'FAT table corrupted',0 |
||
400 | error10 db 'Access denied',0 |
||
401 | error11 db 'Device error',0 |
||
402 | aUnknownError db 'Unknown error',0 |
||
205 | heavyiron | 403 | |
404 | end if |
||
1070 | Lrz | 405 | ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
406 | ;DATA данные |
||
407 | ;Всегда соблюдать последовательность в имени. |
||
1606 | mario79 | 408 | system_dir_Boxlib db '/sys/lib/box_lib.obj',0 |
409 | system_dir_ProcLib db '/sys/lib/proc_lib.obj',0 |
||
1070 | Lrz | 410 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
205 | heavyiron | 411 | |
1070 | Lrz | 412 | head_f_i: |
1373 | IgorA | 413 | head_f_l db 'System error',0 |
1606 | mario79 | 414 | |
415 | err_message_found_lib1 db 'box_lib.obj - Not found!',0 |
||
416 | err_message_found_lib2 db 'proc_lib.obj - Not found!',0 |
||
417 | |||
418 | err_message_import1 db 'box_lib.obj - Wrong import!',0 |
||
419 | err_message_import2 db 'proc_lib.obj - Wrong import!',0 |
||
420 | |||
421 | ;--------------------------------------------------------------------- |
||
422 | l_libs_start: |
||
423 | |||
424 | library01 l_libs system_dir_Boxlib+9, cur_dir_path, library_path, system_dir_Boxlib, \ |
||
425 | err_message_found_lib1, head_f_l, Box_lib_import, err_message_import1, head_f_i |
||
426 | |||
427 | library02 l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \ |
||
428 | err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i |
||
429 | |||
430 | end_l_libs: |
||
431 | ;--------------------------------------------------------------------- |
||
432 | OpenDialog_data: |
||
433 | .type dd 1 ; Save |
||
434 | .procinfo dd procinfo ;+4 |
||
435 | .com_area_name dd communication_area_name ;+8 |
||
436 | .com_area dd 0 ;+12 |
||
437 | .opendir_pach dd temp_dir_pach ;+16 |
||
438 | .dir_default_pach dd communication_area_default_pach ;+20 |
||
439 | .start_path dd open_dialog_path ;+24 |
||
440 | .draw_window dd draw_window ;+28 |
||
441 | .status dd 0 ;+32 |
||
442 | .openfile_pach dd fname_buf ;+36 |
||
443 | .filename_area dd filename_area ;+40 |
||
444 | .filter_area dd Filter |
||
445 | .x: |
||
446 | .x_size dw 420 ;+48 ; Window X size |
||
447 | .x_start dw 10 ;+50 ; Window X position |
||
448 | .y: |
||
449 | .y_size dw 320 ;+52 ; Window y size |
||
450 | .y_start dw 10 ;+54 ; Window Y position |
||
451 | |||
452 | communication_area_name: |
||
453 | db 'FFFFFFFF_open_dialog',0 |
||
454 | open_dialog_path: |
||
1702 | Lrz | 455 | if __nightbuild eq yes |
456 | db '/sys/MANAGERS/opendial',0 |
||
457 | else |
||
458 | db '/sys/File Managers/opendial',0 |
||
459 | end if |
||
1606 | mario79 | 460 | communication_area_default_pach: |
461 | db '/hd0/1/kolibri',0 |
||
462 | |||
463 | Filter: |
||
1608 | mario79 | 464 | dd Filter.end - Filter |
1606 | mario79 | 465 | .1: |
466 | db 'IMG',0 |
||
467 | db 'IMA',0 |
||
468 | .end: |
||
469 | db 0 |
||
470 | |||
471 | start_temp_file_name: db 'kolibri.img',0 |
||
472 | |||
473 | ;--------------------------------------------------------------------- |
||
1070 | Lrz | 474 | align 4 |
1606 | mario79 | 475 | ProcLib_import: |
476 | OpenDialog_Init dd aOpenDialog_Init |
||
477 | OpenDialog_Start dd aOpenDialog_Start |
||
478 | ;OpenDialog__Version dd aOpenDialog_Version |
||
479 | dd 0 |
||
480 | dd 0 |
||
481 | aOpenDialog_Init db 'OpenDialog_init',0 |
||
482 | aOpenDialog_Start db 'OpenDialog_start',0 |
||
483 | ;aOpenDialog_Version db 'Version_OpenDialog',0 |
||
484 | ;--------------------------------------------------------------------- |
||
485 | align 4 |
||
486 | Box_lib_import: |
||
487 | ;init_lib dd a_init |
||
488 | ;version_lib dd a_version |
||
485 | heavyiron | 489 | |
1070 | Lrz | 490 | |
1606 | mario79 | 491 | ;edit_box_draw dd aEdit_box_draw |
492 | ;edit_box_key dd aEdit_box_key |
||
493 | ;edit_box_mouse dd aEdit_box_mouse |
||
494 | ;version_ed dd aVersion_ed |
||
1070 | Lrz | 495 | |
1606 | mario79 | 496 | ;check_box_draw dd aCheck_box_draw |
497 | ;check_box_mouse dd aCheck_box_mouse |
||
498 | ;version_ch dd aVersion_ch |
||
1070 | Lrz | 499 | |
1606 | mario79 | 500 | ;option_box_draw dd aOption_box_draw |
501 | ;option_box_mouse dd aOption_box_mouse |
||
502 | ;version_op dd aVersion_op |
||
1070 | Lrz | 503 | |
1606 | mario79 | 504 | ;scrollbar_ver_draw dd aScrollbar_ver_draw |
505 | ;scrollbar_ver_mouse dd aScrollbar_ver_mouse |
||
506 | ;scrollbar_hor_draw dd aScrollbar_hor_draw |
||
507 | ;scrollbar_hor_mouse dd aScrollbar_hor_mouse |
||
508 | ;version_scrollbar dd aVersion_scrollbar |
||
1070 | Lrz | 509 | |
1606 | mario79 | 510 | ;dinamic_button_draw dd aDbutton_draw |
511 | ;dinamic_button_mouse dd aDbutton_mouse |
||
512 | ;version_dbutton dd aVersion_dbutton |
||
513 | |||
514 | ;menu_bar_draw dd aMenu_bar_draw |
||
515 | ;menu_bar_mouse dd aMenu_bar_mouse |
||
516 | ;menu_bar_activate dd aMenu_bar_activate |
||
517 | ;version_menu_bar dd aVersion_menu_bar |
||
518 | |||
519 | ;FileBrowser_draw dd aFileBrowser_draw |
||
520 | ;FileBrowser_mouse dd aFileBrowser_mouse |
||
521 | ;FileBrowser_key dd aFileBrowser_key |
||
522 | ;Version_FileBrowser dd aVersion_FileBrowser |
||
523 | |||
524 | PathShow_prepare dd sz_PathShow_prepare |
||
525 | PathShow_draw dd sz_PathShow_draw |
||
526 | ;Version_path_show dd szVersion_path_show |
||
527 | dd 0 |
||
528 | dd 0 |
||
529 | |||
530 | ;a_init db 'lib_init',0 |
||
531 | ;a_version db 'version',0 |
||
532 | |||
533 | ;aEdit_box_draw db 'edit_box',0 |
||
534 | ;aEdit_box_key db 'edit_box_key',0 |
||
535 | ;aEdit_box_mouse db 'edit_box_mouse',0 |
||
536 | ;aVersion_ed db 'version_ed',0 |
||
537 | |||
538 | ;aCheck_box_draw db 'check_box_draw',0 |
||
539 | ;aCheck_box_mouse db 'check_box_mouse',0 |
||
540 | ;aVersion_ch db 'version_ch',0 |
||
541 | |||
542 | ;aOption_box_draw db 'option_box_draw',0 |
||
543 | ;aOption_box_mouse db 'option_box_mouse',0 |
||
544 | ;aVersion_op db 'version_op',0 |
||
545 | |||
546 | ;aScrollbar_ver_draw db 'scrollbar_v_draw',0 |
||
547 | ;aScrollbar_ver_mouse db 'scrollbar_v_mouse',0 |
||
548 | ;aScrollbar_hor_draw db 'scrollbar_h_draw',0 |
||
549 | ;aScrollbar_hor_mouse db 'scrollbar_h_mouse',0 |
||
550 | ;aVersion_scrollbar db 'version_scrollbar',0 |
||
551 | |||
552 | ;aDbutton_draw db 'dbutton_draw',0 |
||
553 | ;aDbutton_mouse db 'dbutton_mouse',0 |
||
554 | ;aVersion_dbutton db 'version_dbutton',0 |
||
555 | |||
556 | ;aMenu_bar_draw db 'menu_bar_draw',0 |
||
557 | ;aMenu_bar_mouse db 'menu_bar_mouse',0 |
||
558 | ;aMenu_bar_activate db 'menu_bar_activate',0 |
||
559 | ;aVersion_menu_bar db 'version_menu_bar',0 |
||
560 | |||
561 | ;aFileBrowser_draw db 'FileBrowser_draw',0 |
||
562 | ;aFileBrowser_mouse db 'FileBrowser_mouse',0 |
||
563 | ;aFileBrowser_key db 'FileBrowser_key',0 |
||
564 | ;aVersion_FileBrowser db 'version_FileBrowser',0 |
||
565 | |||
566 | sz_PathShow_prepare db 'PathShow_prepare',0 |
||
567 | sz_PathShow_draw db 'PathShow_draw',0 |
||
568 | ;szVersion_path_show db 'version_PathShow',0 |
||
569 | ;--------------------------------------------------------------------- |
||
570 | |||
1373 | IgorA | 571 | path1 db '/fd/1/',0 |
572 | path2 db '/fd/2/',0 |
||
573 | path3 db '/hd0/1/kolibri.img',0 |
||
574 | path4 db '/hd0/1/kolibri/kolibri.img',0 ;для резервного сохранения |
||
485 | heavyiron | 575 | ;--------------------------------------------------------------------- |
1606 | mario79 | 576 | key_help: |
577 | db '1',0 |
||
578 | db '2',0 |
||
579 | db '3',0 |
||
580 | db '4',0 |
||
581 | ;--------------------------------------------------------------------- |
||
582 | IM_END: |
||
583 | ;--------------------------------------------------------------------- |
||
485 | heavyiron | 584 | sc system_colors |
1214 | Lrz | 585 | mouse_dd rd 1 |
1606 | mario79 | 586 | ;--------------------------------------------------------------------- |
587 | cur_dir_path: |
||
588 | rb 4096 |
||
589 | ;--------------------------------------------------------------------- |
||
590 | library_path: |
||
591 | rb 4096 |
||
592 | ;--------------------------------------------------------------------- |
||
593 | temp_dir_pach: |
||
594 | rb 4096 |
||
595 | ;--------------------------------------------------------------------- |
||
596 | fname_buf: |
||
597 | rb 4096 |
||
598 | ;--------------------------------------------------------------------- |
||
599 | procinfo: |
||
600 | rb 1024 |
||
601 | ;--------------------------------------------------------------------- |
||
602 | filename_area: |
||
603 | rb 256 |
||
604 | ;--------------------------------------------------------------------- |
||
605 | text_work_area: |
||
606 | rb 1024 |
||
607 | ;--------------------------------------------------------------------- |
||
833 | Lrz | 608 | align 4 |
1606 | mario79 | 609 | rb 4096 |
610 | stacktop: |
||
611 | I_END: ; метка конца программы45,12>34,15>194,60>110,15>8,172> |