;LAST UPDATE: 25.02.2013 savelij
;СТРАНИЦЫ RAM
VMODE7_0 EQU 0XF7 ;СТРАНИЦА ОДНОСТРАНИЧНОГО ТЕКСТМОДА 0 ЭКРАН
VMODE7_1 EQU 0XF5 ;СТРАНИЦА ОДНОСТРАНИЧНОГО ТЕКСТМОДА 1 ЭКРАН
PAGE_FATVARS EQU 1 ;СТРАНИЦА ДЛЯ ПЕРЕМЕНЫХ FAT
PAGE_EVODOS EQU 2 ;СТРАНИЦА КОПИИ EVO-DOS ДЛЯ ПЕРЕХВАТА
PAGE_PROFROM EQU 3 ;СТРАНИЦА ПЕРЕМЕННЫХ PROFROM
PAGE_MOUNTER EQU 4 ;СТРАНИЦА ДЛЯ МОНТИРОВАНИЯ ОБРАЗОВ
PAGE_STS EQU 5 ;СТРАНИЦА ДЛЯ ОТЛАДЧИКА STS
PAGE_SCR_FONT EQU 6 ;СТРАНИЦА СОХРАНЕННЫХ ЭКРАНОВ И ФОНТОВ
PAGE_TEMP EQU 7 ;СТРАНИЦА ВСЯКИХ ВРЕМЕННЫХ ПЕРЕМЕННЫХ
PAGE_RAMDISK EQU 8 ;СТРАНИЦА НАЧАЛА РАМДИСКА
PAGE_DATARAMD EQU 9 ;СТРАНИЦА НАЧАЛА ДАННЫХ РАМДИСКА
PAGE4FLASHER EQU 0X40 ;СТРАНИЦА НАЧАЛА ЗАГРУЗКИ ПРОШИВКИ
PAGE4TAP EQU 0X60 ;СТРАНИЦА ДЛЯ ЗАГРУЗКИ TAP ФАЙЛА
;СТРАНИЦЫ ROM
P_ERS EQU 0 ;НОМЕР СТРАНИЦЫ ROM EVO RESET SERVICE
P_BAS128 EQU 1 ;НОМЕР СТРАНИЦЫ ROM BASIC 128
P_DOS EQU 2 ;НОМЕР СТРАНИЦЫ ROM EVO-DOS ДЛЯ РЕАЛЬНОЙ ДИСКЕТЫ
P_BAS48 EQU 3 ;НОМЕР СТРАНИЦЫ ROM BASIC 48
P_ADDON2 EQU 4 ;НОМЕР СТРАНИЦЫ ROM ВСЯКИХ ДОПОЛНЕНИЙ
P_ADDON1 EQU 5 ;НОМЕР СТРАНИЦЫ ROM ВСЯКИХ ДОПОЛНЕНИЙ
P_ADDONS EQU 6 ;НОМЕР СТРАНИЦЫ ROM ДОПОЛНЕНИЙ RST 8
P_RST8 EQU 7 ;НОМЕР СТРАНИЦЫ ROM ОБРАБОТКИ RST 8
P_MSXDOS EQU 9 ;НОМЕР СТРАНИЦЫ ROM MSX-DOS
P_ADD_DOS EQU 0X0A ;НОМЕР СТРАНИЦЫ ROM EVO-DOS ДЛЯ ЭМУЛЯЦИИ
P_ADD_BAS48 EQU 0X0B ;НОМЕР СТРАНИЦЫ ROM BASIC 48
CONF4PROF EQU 0X90 ;СТАРТОВАЯ СТРАНИЦА ДЛЯ EVO PROFROM 128K
CONF4GLUK EQU 0X94 ;СТАРТОВАЯ СТРАНИЦА ДЛЯ GLUK 64K
CONF4CUSTOM EQU 0X9C ;СТАРТОВАЯ СТРАНИЦА ДЛЯ ПОЛЬЗОВАТЕЛЬСКОЙ ПРОШИВКИ 64К
CPU0 EQU 0X0000 ;НАЧАЛО ОКНА ПРОЕЦИРОВАНИЯ 0
CPU1 EQU 0X4000 ;НАЧАЛО ОКНА ПРОЕЦИРОВАНИЯ 1
CPU2 EQU 0X8000 ;НАЧАЛО ОКНА ПРОЕЦИРОВАНИЯ 2
CPU3 EQU 0XC000 ;НАЧАЛО ОКНА ПРОЕЦИРОВАНИЯ 3
WIN_P0 EQU 0X37F7 ;АДРЕС 0 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ PENTEVO
WIN_P1 EQU 0X77F7 ;АДРЕС 1 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ PENTEVO
WIN_P2 EQU 0XB7F7 ;АДРЕС 2 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ PENTEVO
WIN_P3 EQU 0XF7F7 ;АДРЕС 3 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ PENTEVO
WIN_A0 EQU 0X3FF7 ;АДРЕС 0 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ ATM
WIN_A1 EQU 0X7FF7 ;АДРЕС 1 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ ATM
WIN_A2 EQU 0XBFF7 ;АДРЕС 2 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ ATM
WIN_A3 EQU 0XFFF7 ;АДРЕС 3 СТРАНИЦЫ ПРОЕЦИРОВАНИЯ ATM
PEVO_CONF EQU 0XBF ;АДРЕС ПОРТА КОНФИГА PENTEVO
CMOSD_SET_ADR EQU 0XDEF7 ;АДРЕС ПОРТА УСТАНОВКИ АДРЕСА CMOS ЯЧЕЙКИ ИЗ DOS
CMOSD_RD_WR EQU 0XBEF7 ;АДРЕС ПОРТА ЧТЕНИЯ/ЗАПИСИ БАЙТ CMOS ИЗ ДОСА
CMOS_SET_ADR EQU 0XDFF7 ;АДРЕС ПОРТА УСТАНОВКИ АДРЕСА CMOS ЯЧЕЙКИ
CMOS_RD_WR EQU 0XBFF7 ;АДРЕС ПОРТА ЧТЕНИЯ/ЗАПИСИ БАЙТ CMOS
PENT_CONF EQU 0XEFF7 ;АДРЕС ПОРТА КОНФИГА РЕЖИМА ПЕНТАГОНА
CONF_128 EQU 0X7FFD ;АДРЕС ПОРТА КОНФИГА 128 ПАМЯТИ
;ПОРТА ДЛЯ ЧТЕНИЯ ПОРТОВ КОНФИГУРАЦИИ
RD_0WINA0 EQU 0X00BE ;АДРЕС ПОРТА 0 ОКНА ПРОЕЦИРОВАНИЯ 0 МАПЕРА
RD_0WINA1 EQU 0X01BE ;АДРЕС ПОРТА 1 ОКНА ПРОЕЦИРОВАНИЯ 0 МАПЕРА
RD_0WINA2 EQU 0X02BE ;АДРЕС ПОРТА 2 ОКНА ПРОЕЦИРОВАНИЯ 0 МАПЕРА
RD_0WINA3 EQU 0X03BE ;АДРЕС ПОРТА 3 ОКНА ПРОЕЦИРОВАНИЯ 0 МАПЕРА
RD_1WINA0 EQU 0X04BE ;АДРЕС ПОРТА 0 ОКНА ПРОЕЦИРОВАНИЯ 1 МАПЕРА
RD_1WINA1 EQU 0X05BE ;АДРЕС ПОРТА 1 ОКНА ПРОЕЦИРОВАНИЯ 1 МАПЕРА
RD_1WINA2 EQU 0X06BE ;АДРЕС ПОРТА 2 ОКНА ПРОЕЦИРОВАНИЯ 1 МАПЕРА
RD_1WINA3 EQU 0X07BE ;АДРЕС ПОРТА 3 ОКНА ПРОЕЦИРОВАНИЯ 1 МАПЕРА
RD_RAMNROM EQU 0X08BE ;АДРЕС ПОРТА БИТОВ RAM & ROM
RD_DOS7FFD EQU 0X09BE ;АДРЕС ПОРТА БИТОВ DOS & 7FFD
RD_7FFD EQU 0X0ABE ;АДРЕС ПОРТА 7FFD
RD_EFF7 EQU 0X0BBE ;АДРЕС ПОРТА EFF7
RD_77 EQU 0X0CBE ;АДРЕС ПОРТА xx77
RD_PALITRA EQU 0X0DBE ;АДРЕС ПОРТА ПАЛИТРЫ
BREAK_LOW_RD EQU 0X10BE ;МЛАДШИЙ БАЙТ АДРЕСА ПОРТА НА ЧТЕНИЕ АДРЕСА BREAK
BREAK_HIGH_RD EQU 0X11BE ;СТАРШИЙ БАЙТ АДРЕСА ПОРТА НА ЧТЕНИЕ АДРЕСА BREAK
BREAK_LOW_WR EQU 0X00BD ;МЛАДШИЙ БАЙТ АДРЕСА ПОРТА НА ЗАПИСЬ АДРЕСА BREAK
BREAK_HIGH_WR EQU 0X01BD ;СТАРШИЙ БАЙТ АДРЕСА ПОРТА НА ЗАПИСЬ АДРЕСА BREAK
;АДРЕСА ПОРТОВ-ЯЧЕЕК ПАМЯТИ
RW_PORT0 EQU 0X2F
RW_PORT1 EQU 0X4F
RW_PORT2 EQU 0X6F
RW_PORT3 EQU 0X8F
LSYM EQU 0X01C0 ;СМЕЩЕНИЕ В СТРАНИЦЕ НАЧАЛА ЛЕВЫХ СИМВОЛОВ ТЕКСТМОДА
LATTR EQU 0X31C0 ;СМЕЩЕНИЕ В СТРАНИЦЕ НАЧАЛА ЛЕВЫХ АТРИБУТОВ СИМВОЛОВ
RSYM EQU 0X11C0 ;СМЕЩЕНИЕ В СТРАНИЦЕ НАЧАЛА ПРАВЫХ СИМВОЛОВ ТЕКСТМОДА
RATTR EQU 0X21C1 ;СМЕЩЕНИЕ В СТРАНИЦЕ НАЧАЛА ПРАВЫХ АТРИБУТОВ СИМВОЛОВ
;ЦВЕТА И ЯРКОСТИ
BLACK EQU 0
BLUE EQU 1
RED EQU 2
MAGENTA EQU 3
GREEN EQU 4
CYAN EQU 5
YELLOW EQU 6
WHITE EQU 7
BR_INK EQU 0X40
BR_PAPER EQU 0X80
G_L EQU %10000000
G_H EQU %00010000
R_L EQU %01000000
R_H EQU %00000010
B_L EQU %00100000
B_H EQU %00000001
;МАСКА ПОРТА 7FFD
ZX_SCREEN EQU %00001000
ZX_ROM EQU %00010000
;МАСКА ПОРТА 0XBF
SHADOW_BF EQU %00000001
FLASH_BF EQU %00000010
FONT_BF EQU %00000100
NMI_BF EQU %00001000
BREAK_BF EQU %00010000
;МАСКИ РЕЖИМОВ
ZXSCR_MODE EQU 1
TXTSCR_MODE EQU 2
MEMORY_ALL EQU 0X10
MEMORY_48 EQU 0X20
MEMORY_128 EQU 0X30
TURBO_3 EQU 0X40
TURBO_7 EQU 0X80
TURBO_14 EQU 0XC0
NUM_ZXSCR EQU 3
NUM_TXTSCR EQU 7
;МАСКИ ОТЛАДЧИКА
JMP_DBG EQU 0X80 ;АКТИВЕН ОТЛАДЧИК
TRACE_DBG EQU 0X40 ;ТРАССИРОВКА
STEP_DBG EQU 0X20 ;ПОШАГОВАЯ ОТЛАДКА
FDI_TABLE_CYL EQU 0X4000 ;АДРЕС ТАБЛИЦЫ НАЧАЛ ДОРОЖЕК В ОБРАЗЕ
FDI_PAGE_START EQU 0X40FF ;СМЕЩЕНИЕ В СТРАНИЦАХ НАЧАЛА СЕКТОРОВ ОБРАЗА
FDI_BYTE_SMESH EQU 0X41FE ;СМЕЩЕНИЕ В БАЙТАХ НАЧАЛА ОБРАЗА ЗАГРУЖЕННОГО В РАМДИСК
FDI_BLOCK_SMESH EQU 0X41FF ;СМЕЩЕНИЕ В БЛОКАХ (ПО 256 БАЙТ) НАЧАЛА СЕКТОРОВ ОБРАЗА
FDI_IMAGE1SECT EQU 0X4400 ;АДРЕС ЗАГРУЗКИ ПЕРВОГО СЕКТОРА ДЛЯ ОПРЕДЕЛЕНИЯ СМЕЩЕНИЯ
;НОМЕРА ЯЧЕЕК CMOS И СОДЕРЖИМОЕ
CRCCMOSHIGH EQU 0XEF ;СТАРШИЙ БАЙТ CRC CMOS
CRCCMOSLOW EQU 0XEE ;МЛАДШИЙ БАЙТ CRC CMOS
CMOS_BYTE_00 EQU 0XED ;АДРЕС ХРАНЕНИЯ В CMOS
TURBO14 EQU 0X80 ;РАЗРЕШЕНИЕ ВКЛЮЧЕНИЯ TURBO 14MHZ
EMUL_TAPE EQU 0X40 ;РАЗРЕШЕНИЕ ЭМУЛЯЦИИ ЗАГРУЗКИ С ЛЕНТЫ
PRINTER_AY EQU 0X20 ;РАЗРЕШЕНИЕ ПОДМЕНЫ ДРАЙВЕРА ПЕЧАТИ В BASIC48
RELOAD_FONT EQU 0X10 ;РАЗРЕШЕНИЕ ПЕРЕЗАГРУЗКИ ШРИФТА ПРИ СБРОСЕ
TYPE_FONT EQU 0X08 ;ВЫБОР КОДИРОВКИ ШРИФТА
CMOS_BYTE_01 EQU 0XEC ;АДРЕС ХРАНЕНИЯ В CMOS
SOUNDKEYS EQU 0X80 ;РАЗРЕШЕНИЕ ОЗВУЧИВАНИЯ НАЖАТЫХ КЛАВИШ
ACCESSSDG EQU 0X40 ;РАЗРЕШЕНИЯ ДОСТУПА С SD КАРТЕ NEOGS
AUTOMOUNT EQU 0X20 ;ВКЛ/ВЫКД АВТОМОНТИРОВАНИЯ ИЗ ФАЙЛА
AUTODET_SD EQU 0X10 ;АВТОДЕТЕКТ НАЛИЧИЯ SD КАРТЫ
CLOCK_ONOFF EQU 0X11 ;ХРАНЕНИЕ ОТОБРАЖЕНИЯ ЧАСОВ
REAL_DRIVE EQU 0X10 ;ХРАНЕНИЕ НОМЕРА РЕАЛЬНОГО ДИСКОВОДА
VIRTUAL_DRIVE EQU 0X0F ;ХРАНЕНИЕ НОМЕРА ВИРТУАЛЬНОГО ДИСКОВОДА
TURBO_MEMORY EQU 0X0E ;ХРАНЕНИЕ ТУРБО 3,5/7MHZ И РЕЖИМА ПАМЯТИ
;НОМЕРА СБРОСОВ
RESET2EVOSERV EQU 0 ;СБРОС В EVO SERVICE
RESET2GLUK EQU 1 ;СБРОС В GLUK SERVICE
RESET2PROFROM EQU 2 ;СБРОС В PROFROM
RESET2CUSTOM EQU 3 ;СБРОС В CUSTOM ROM
;ПЕРЕМЕННЫЕ ДЛЯ 0 ОКНА ПРОЕЦИРОВАНИЯ
DEBUG_ONOFF EQU 0X0013 ;ВКЛ/ВЫКЛ ОТЛАДЧИКА
ADR_SEL_ROM EQU 0X0014 ;АДРЕС ПЕРЕКЛЮЧЕНИЯ СТРАНИЦ ROM
CONT_RST8 EQU 0X002C ;АДРЕС ПРОДОЛЖЕНИЯ ОБРАБОТКИ RST 8
CONTINUE_MAGIC EQU 0X0034 ;АДРЕС ПЕРЕХОДА ПРОДОЛЖЕНИЯ ОБРАБОТЧИКА MAGIC
ADR_PERFECT EQU 0X0036 ;АДРЕС РАСПОЛОЖЕНИЯ PERFECT COMANDER
EI_RET EQU 0X003E ;АДРЕС РАСПОЛОЖЕНИЯ EI:RET
INST_NMIRST EQU 0X0040 ;АДРЕС УСТАНОВЩИКА NMI И RST ОБРАБОТЧИКОВ
UNP_MICROBOOT EQU 0X0043 ;АДРЕС РАСПАКОВКИ ЗАПУСКАЛКИ С FAT
UNPACK EQU 0X0080 ;АДРЕС РАСПАКОВЩИКА
START_STS EQU 0XC000;0300 ;АДРЕС ВХОДА В ОТЛАДЧИК
ADR_RST8END EQU 0X3CE8 ;АДРЕС ВОЗВРАТА ИЗ RST 8
OFFSET_SCRSAVE EQU 0X4000-0X1B00 ;1B00 СМЕЩЕНИЕ В СТРАНИЦЕ ДЛЯ СОХРАНЕНИЯ ЭКРАНА
OFFSET_FNTSAVE EQU CPU2+0X4000-0X800 ;800 СМЕЩЕНИЕ В СТРАНИЦЕ ДЛЯ СОХРАНЕНИЯ ШРИФТА
OFFSET_BUFSYM EQU OFFSET_FNTSAVE-0X800 ;800 СМЕЩЕНИЕ В СТРАНИЦЕ ТЕКУЩЕГО ШРИФТА ДЛЯ MAGIC РЕЖИМА
BUF_512 EQU OFFSET_BUFSYM-0X200 ;200 БУФЕР СЕКТОРА
BUF_TABLVOL EQU BUF_512-0X100 ;100 БУФЕР ТАБЛИЦЫ НАЙДЕННЫХ РАЗДЕЛОВ
BUF_TEKVOL EQU BUF_TABLVOL-0X100 ;100 БУФЕР ВЫБРАННОГО РАЗДЕЛА
BUF_TDIRCLS EQU BUF_TEKVOL-0X800 ;800 БУФЕР КЛАСТЕРОВ ТЕКУЩЕЙ ДИРЕКТОРИИ
BUF_256 EQU BUF_TDIRCLS-0X100 ;100 БУФЕР 256 БАЙТ ДЛЯ ПЕРЕНОСОВ
BUF_PATH EQU BUF_256-0X100 ;100 БУФЕР ТЕКУЩЕГО ПУТИ
MOUNT_DRIVES EQU BUF_PATH-0X100 ;100 БУФЕР ОПИСАТЕЛЕЙ ПРИМОНТИРОВАННЫХ ФАЙЛОВ
BUF_LEVELDIR EQU MOUNT_DRIVES-0X100 ;200 БУФЕР СОХРАНЕНИЯ ПОЗИЦИЙ ОКОН ПРИ ПЕРЕХОДАХ ПО ДИРЕКТОРИЯМ
BUF_WINPATH EQU BUF_LEVELDIR-0X400 ;400 БУФЕР СОХРАНЕНИЯ ПОЗИЦИЙ В ОКНЕ ПРИ ХОЖДЕНИИ ПО ДИРЕКТОРИЯМ
;ПЕРЕМЕННЫЕ ДЛЯ МЕНЕДЖЕРА УСТРОЙСТВ
DEVICES EQU BUF_TABLVOL+0XE0 ;10 СПИСОК ОБНАРУЖЕННЫХ ДЕВАЙСОВ
GO_DEV EQU DEVICES+0X10 ;2 АДРЕС ВЫЗОВА ДРАЙВЕРА УСТРОЙСТВА
KOLDVOL EQU GO_DEV+2 ;1 КОЛИЧЕСТВО НАЙДЕННЫХ РАЗДЕЛОВ
SETDVOL EQU KOLDVOL+1 ;1 НОМЕР ВЫБРАННОГО РАЗДЕЛА
ADRTEKV EQU SETDVOL+1 ;2 АДРЕС ОПИСАТЕЛЯ ТЕКУЩЕГО РАЗДЕЛА
SAVE_TEK_VOL EQU ADRTEKV+2 ;1 ВРЕМЕННОЕ СОХРАНЕНИЕ ТЕКУЩЕГО РАЗДЕЛА
TEK_TYPE EQU SAVE_TEK_VOL+1 ;1 ВРЕМЕННОЕ ХРАНЕНИЕ ТИПА ТЕКУЩЕГО УСТРОЙСТВА
FLAGS_DRV EQU TEK_TYPE+1 ;1 ФЛАГОВЫЙ БАЙТ ДРАЙВЕРОВ
;7 =0-ДРАЙВЕР SD КАРТЫ NROGS НЕ УСТАНОВЛЕН, =1-НЕ УСТАНОВЛЕН
CRC_DRVS EQU BUF_TABLVOL+0XFE ;2 КОНТРОЛЬНАЯ СУММА ТАБЛИЦЫ НАЙДЕННЫХ РАЗДЕЛОВ
;ПЕРЕМЕННЫЕ ДЛЯ 1 ОКНА ПРОЕЦИРОВАНИЯ
BUF_ALLVOL EQU 0 ;1000 БУФЕР ПЕРЕМЕННЫХ ДЛЯ ВСЕХ РАЗДЕЛОВ (16 MAX)
MOUNT_CLS EQU BUF_ALLVOL+0X1000 ;1000 БУФЕР КЛАСТЕРОВ ПРИМОНТИРОВАННЫХ ФАЙЛОВ
TEK_BUFPATH EQU MOUNT_CLS+0X1000 ;1000 БУФЕР ТЕКУЩИХ ПУТЕЙ НА РАЗДЕЛАХ
BUF_PATHMOUNT EQU TEK_BUFPATH+0X1000 ;400 БУФЕР ПУТЕЙ ДЛЯ ПОИСКА ПРИМОНТИРОВАННЫХ ФАЙЛОВ
BUF_DIRCEP EQU BUF_PATHMOUNT+0X400 ;100 БУФЕР ЦЕПОЧКИ ТЕКУЩЕЙ ДИРЕКТОРИИ
BUF_TEMPSEC EQU BUF_DIRCEP+0X100 ;200 БУФЕР СЕКТОРА ДЛЯ ЗАГРУЗКИ ОБРАЗОВ