; Последнее редактирование: 4.01.2006 ; ; В странице (page_sys_screen) сохранения сист. экрана и временного ; сохранения экрана менеджера, по адресу #E800 находятся буферы ; данных User-меню. Остаток страницы после всего массива #0944 байт. ; ; При сканировании папки (процедура ScanTree), для врем. буфера выделяется ; 1 страница памяти. После отработки процедуры, страница освобождается. ; EDEPTH equ 36 ; слишком большая влож. папок или >= 1024 папок EUABORT equ 37 ; User abort (операция прервана пользователем) max_len_comline equ 126;254 ; макс. длина ком-строки (больше не делать) history_size equ 128;256 ; размер history-буфера ; Адреса секций врем. массива цветов в буфере tmp_color_list equ work_buffer + 511 - len_color_array ; начало врем. массива color_list2 equ tmp_color_list + col_lst1 color_list3 equ color_list2 + col_lst2 color_list4 equ color_list3 + col_lst3 color_list5 equ color_list4 + col_lst4 color_list6 equ color_list5 + col_lst5 color_list7 equ color_list6 + col_lst6 color_list8 equ color_list7 + col_lst7 color_list9 equ color_list8 + col_lst8 color_list10 equ color_list9 + col_lst9 color_list11 equ color_list10 + col_lst10 ;len_modul1 equ FM_CORE_BLK.Size ; размер осн. кода (#8000) ;len_modul2 equ FM_MOD_0_BLK.Size ; размер модуля (#0000) ;len_modul3 equ FM_MOD_1_BLK.Size ; размер модуля (#4000) ;len_modul4 equ FM_SPEC_BLK.Size ; размер спек-модуля (#0000) ;len_modul5 equ FM_FVIEW_BLK.Size ; размер вьюера (#4000) ;---- Цвета менеджера ---- ; Панель color_pointer equ 3Fh ; указатель color_markpoint equ 3Eh ; выдел. указатель color_panel equ 1Bh ; панель/список файлов color_markfile equ 1Eh ; помеч. файлы списка color_seltitle equ 3Fh ; выдел. титл панели color_title equ 1Eh ; титл колонок панели color_markline equ 3Eh ; информ. строка отмеч. файлов color_highlighted_info equ 1Eh ; данные в info/qview панелях color_info_names equ 1Fh ; файлы/путь в info/qview панелях ; Гориз. меню color_hmenu equ 30h ; меню color_hmenu_pointer equ 0Fh ; указатель color_hmenu_hotkey equ 0Eh ; hot-буквы ; Pull-меню color_vmenu equ 3Fh ; popup-меню color_vmenu_pointer equ 0Fh ; указатели меню color_vmenu_hotkey equ 0Eh ; hot-буквы меню (мл.ниббл) ; Key-бар kb_f equ 30h ; пункты kb_b equ 0Eh ; hot-числа ; Командная строка color_comline equ 07h ; Диал. окна color_dial_win equ 70h ; диал. окна color_dial_hotkey equ 0Eh ; hot-букв диал. окон color_sel_dial_title equ 30h ; Selected title объекта диал. окна color_info_win equ 70h ; info-окна color_warn_win equ 4Fh ; warning/errors окна color_listbox equ 17h ; ListBox color_list_point equ 2Fh ; указателя ListBox-а color_list_hpoint equ 1Eh ; после указателя color_vscrl_bar equ 13h ; скролл-бара ListBox-а color_inputline equ 30h ; строка ввода color_selbuttons equ 30h ; выдел. бутон color_selbuttons_err equ 70h ; выдел. бутон Warning/Errors окон color_shadow equ 03h ; тень окон (не настраивается) ; Вьюер color_viewer equ 1Bh ; Normal text color_viewer_seltext equ 30h ; Selected text color_viewer_status equ 30h ; Status line color_viewer_scrl_arrow equ 1Eh ; Scrolling arrows ; Редактор color_editor equ 1Bh ; Normal text color_edit_seltext equ 30h ; Selected text color_edit_status equ 30h ; Status line ; Окно помощи color_help equ 30h ; Normal text color_help_seltext equ 3Eh ; Highlighted text color_help_title equ 3Fh ; Title color_help_scrl_bar equ 30h ; Scrollbar ; Остальное color_process_line equ 30h ; линейка процесса color_clock equ 30h ; часы ; Раскраска файлов color_folder equ 1Fh ; папки color_exe equ 1Ah ; исполняемые файлы (exe,bat) color_archive equ 1Dh ; архивы color_ro equ 17h ; файлы r/o, system color_hidden equ 13h ; скрытые файлы color_spec equ 1Ch ; спек-файлы (trd, scl) ORG 0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;======================================================================= ; Основной Модуль CORE ;======================================================================= ; всегда подключен ; DISP #8000 FM_CORE_BLK.Start EQU $ include "core/_core_.asm" FM_CORE_BLK: .End EQU $ .Size EQU .End - .Start ENT ; DISPLAY "CORE ",/H,FM_CORE_BLK.Start," ",/H,FM_CORE_BLK.End," ",/A,FM_CORE_BLK.Size ;======================================================================= ;======================================================================= ; Подгружаемый Модуль 0 ; Драйверы клавы, мышки, обработчик диал. окон, tv-объекты ;======================================================================= ; всегда подключен (кроме вызовов rst 10h, rst 18h) ; DISP 0 FM_MOD_0_BLK.Start EQU $ include 'mod0/vectors.asm' ; векторы прерываний include 'mod0/keybdrv.asm' ; драйвер клавы include 'mod0/cursor.asm' ; программный курсор include 'mod0/mousedrv.asm' ; драйвер мышки include 'mod0/objs/dialog.asm' ; обработчик диал. окон include 'mod0/objs/button.asm' ; объект ~Button~ include 'mod0/objs/inline.asm' ; объекты ~Input Line~, ~Inp Line~ include 'mod0/objs/listbox.asm' ; объект ~List Box~ include 'mod0/objs/radio.asm' ; объекты ~Radio Button~, ~Check Box~ include 'mod0/objs/process.asm' ; объект ~Process Line~ include 'mod0/objs/pallete.asm' ; объект ~Pallete~ include 'mod0/objs/dialog1.asm' ; объекты ~Text Line~, ~Horiz. Line~ include 'mod0/objs/hmenu.asm' ; Меню: "Horizontal", "Pull", "Select disk" include 'mod0/objs/umenu.asm' ; вызов User-Menu include 'mod0/chdisk.asm' ; вызов меню Select Disk include 'mod0/listdrv.asm' ; иниц. список типов дисков include 'mod0/usermenu.asm' ; подготовка Меню Пользователя FM_MOD_0_BLK: .End EQU $ .Size EQU .End - .Start ENT ; DISPLAY "MODULE 0 ",/H,FM_MOD_0_BLK.Start," ",/H,FM_MOD_0_BLK.End," ",/A,FM_MOD_0_BLK.Size ;======================================================================= ;======================================================================= ; Подгружаемый Модуль 1 ;======================================================================= ; постоянно включен, кроме вызова вьюера ; DISP #4000 FM_MOD_1_BLK.Start EQU $ include 'mod1/buffers.asm' ; раб. буферы объектов include 'mod1/comline.asm' ; ком-строка include 'mod1/width.asm' ; огран. длины пути панели include 'mod1/sort.asm' ; сортировка списка include 'mod1/tree.asm' ; сканирование папки include 'mod1/pullcmnd.asm' ; переходы на выполн. pull-пунктов include 'mod1/seldrv.asm' ; выбор левого/правого дисков панелей include 'mod1/intrface.asm' ; настройка "Interface settings" include 'mod1/confirm.asm' ; настройка "Confirmations" include 'mod1/color.asm' ; настройка "Colors" include 'mod1/setcolor.asm' ; настройка цветов ФМ include 'mod1/panels.z80' ; описатели форматов панелей include 'mod1/info.z80' ; описатель info-панели include 'mod1/info2.z80' ; описатель info-панели спек-формата include 'mod1/qview.z80' ; описатель qview-панели include 'mod1/hmenu.z80' ; описатели гориз/pull меню include 'mod1/chdisk.z80' ; описатель окна Select Disk include 'mod1/umenu.z80' ; описатель окна User Menu include 'mod1/intrface.z80' ; описатель окна "Interface settings" include 'mod1/confirm.z80' ; описатель окна "Confirmations" include 'mod1/color.z80' ; описатель окна "Colors" include 'mod1/quit.z80' ; описатель окна выхода из ФМ include 'mod1/space.z80' ; описатель окна "Calc. free space disk" include 'mod1/abort.z80' ; описатель окна "Operation has been interrupted" include 'mod1/dialerr.z80' ; описатели окон ошибок include 'mod1/copy.z80' ; описатели окон копирования include 'mod1/mkdir.z80' ; описатель окна создания папки include 'mod1/delete.z80' ; описатель окна удаление файла/папки include 'mod1/rename.z80' ; описатель окна переимен. файла FM_MOD_1_BLK: .End EQU $ .Size EQU .End - .Start ENT ; DISPLAY "MODULE 1 ",/H,FM_MOD_1_BLK.Start," ",/H,FM_MOD_1_BLK.End," ",/A,FM_MOD_1_BLK.Size ;======================================================================= ;======================================================================= ; Подгружаемый Модуль 3. Спек-код ;======================================================================= ; подкл. на время вызова спек-функций ; DISP 0 FM_SPEC_BLK.Start EQU $ include 'spec_fn/vect.asm' ; векторы include 'spec_fn/funcs.asm' ; спек-функции FM_SPEC_BLK: .End EQU $ .Size EQU .End - .Start ENT ; DISPLAY "SPEC_FN ",/H,FM_SPEC_BLK.Start," ",/H,FM_SPEC_BLK.End," ",/A,FM_SPEC_BLK.Size ;======================================================================= ; ;=========================================================== ; ; Подгружаемый Модуль 4. Вьюер ; ;=========================================================== ; ; подкл. на время вызова вьюера ; ; ; DISP #4000 ; FM_FVIEW_BLK.Start EQU $ ; include 'fview/fview.asm' ; вьюер ; include 'fview/msfview.asm' ; события мышки ; include 'fview/setview.asm' ; настройка вьюера ; include 'fview/chfont.asm' ; win-1251, koi8-r кодовые таблицы ; include 'fview/fview.z80' ; описатель окна "Reading file..." ; FM_FVIEW_BLK: ; .End EQU $ ; .Size EQU .End - .Start ; ENT ; ; ; DISPLAY "FVIEW ",/H,FM_FVIEW_BLK.Start," ",/H,FM_FVIEW_BLK.End," ",/A,FM_FVIEW_BLK.Size ; ;=======================================================================