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