Subversion Repositories pentevo

Rev

Rev 1041 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1041 Rev 1186
Line 1... Line 1...
1
 
1
 
2
; LAST UPDATE: 25.11.2022 savelij
2
; LAST UPDATE: 16.02.2025 savelij
3
 
3
 
4
                include ports_evo.a80
4
                include ports_evo.a80
5
 
5
 
6
; страницы VIDEO RAM
6
; страницы VIDEO RAM
7
VMODE7_0        EQU LOW (-0x08)-1               ; 0xF7 страница одностраничного текстмода 0 экран
7
VMODE7_0        EQU LOW (-0x08)-1               ; 0xF7 страница одностраничного текстмода 0 экран
8
VMODE7_1        EQU LOW (-0x0A)-1               ; 0xF5 страница одностраничного текстмода 1 экран
8
VMODE7_1        EQU LOW (-0x0A)-1               ; 0xF5 страница одностраничного текстмода 1 экран
9
VMODE6_0M       EQU LOW (-0x05)-1               ; 0xFA страница ATM текстмода монохром 0 экран
9
VMODE6_0M       EQU LOW (-0x05)-1               ; 0xFA страница ATM текстмода монохром 0 экран
10
VMODE6_0C       EQU LOW (-0x01)-1               ; 0xFE страница ATM текстмода цвет 0 экран
10
VMODE6_0C       EQU LOW (-0x01)-1               ; 0xFE страница ATM текстмода цвет 0 экран
11
VMODE6_1M       EQU LOW (-0x07)-1               ; 0xF8 страница ATM текстмода монохром 1 экран
11
VMODE6_1M       EQU LOW (-0x07)-1               ; 0xF8 страница ATM текстмода монохром 1 экран
12
VMODE6_1C       EQU LOW (-0x03)-1               ; 0xFC страница ATM текстмода цвет 1 экран
12
VMODE6_1C       EQU LOW (-0x03)-1               ; 0xFC страница ATM текстмода цвет 1 экран
13
ZXSCR_0         EQU LOW (-0x05)-1               ; 0xFA страница ZX экрана 0
13
ZXSCR_0         EQU VMODE6_0M                   ; 0xFA страница ZX экрана 0
14
ZXSCR_1         EQU LOW (-0x07)-1               ; 0xF8 страница ZX экрана 1
14
ZXSCR_1         EQU LOW (-0x07)-1               ; 0xF8 страница ZX экрана 1
15
 
15
 
16
; страницы памяти ZX стандарта
16
; страницы памяти ZX стандарта
17
ZXSTD_CPU1      EQU LOW (-0x05)-1; 0xFA         ; страница 1 окна проецирования
17
ZXSTD_CPU1      EQU VMODE6_0M                   ; 0xFA страница 1 окна проецирования
18
ZXSTD_CPU2      EQU LOW (-0x02)-1; 0xFD         ; страница 2 окна проецирования
18
ZXSTD_CPU2      EQU LOW (-0x02)-1               ; 0xFD страница 2 окна проецирования
19
 
19
 
20
; страницы RAM
20
; страницы RAM
-
 
21
 INIT_VAR
-
 
22
 SETVAR RAM_NMI                                 ; страница основных переменных RST 8 и обработчика NMI
21
RAM_EVODOS      EQU 1                           ; страница копии EVO-DOS для перехвата
23
 SETVAR RAM_EVODOS                              ; страница копии EVO-DOS для перехвата
22
RAM_FATVARS     EQU 2                           ; страница для переменых FAT
24
 SETVAR RAM_FATVARS                             ; страница для переменых FAT
23
RAM_BASIC       EQU 3                           ; страница BASIC стандартная версия
25
 SETVAR RAM_SORTFILES                           ; страница сортированных описателей FAT
24
RAM_PROFROM     EQU 4                           ; страница переменных PROFROM
26
 SETVAR RAM_PROFROM                             ; страница переменных PROFROM
25
RAM_MOUNTER     EQU 5                           ; страница для монтирования образов
27
 SETVAR RAM_MOUNTER                             ; страница для монтирования образов
26
RAM_STS         EQU 6                           ; страница для отладчика STS
28
 SETVAR RAM_STS                                 ; страница для отладчика STS
27
RAM_ADDSTS      EQU 7                           ; страница для отладки ROM
29
 SETVAR RAM_ADDSTS                              ; страница для отладки ROM
28
RAM_SCR_FONT    EQU 8                           ; страница сохраненных экранов и фонтов
30
 SETVAR RAM_SCR_FONT                            ; страница сохраненных экранов и фонтов
29
RAM_TEMP        EQU 9                           ; страница всяких временных переменных
31
 SETVAR RAM_TEMP                                ; страница всяких временных переменных
30
RAM_RAMDISK     EQU 0x0A                        ; страница начала рамдиска
32
 SETVAR RAM_RAMDISK                             ; страница начала описателя рамдиска
31
RAM_DATARAMD    EQU 0x0B                        ; страница начала данных рамдиска
33
 SETVAR RAM_DATARAMD,   800/16                  ; страница начала данных рамдиска
32
RAM_TEMP2       EQU 0x3F                        ; страница сортировки файлов и просмотра содержимого образов
-
 
33
RAM_FLASHER     EQU 0x40                        ; страница начала загрузки прошивки
34
 SETVAR RAM_TAPE,       0                       ; страница для загрузки TAP файла
34
RAM_TAPE        EQU 0x60                        ; страница для загрузки TAP файла
35
 SETVAR RAM_FLASHER,    512/16                  ; страница начала загрузки прошивки
35
 
36
 
36
; страницы ROM
37
; страницы ROM
-
 
38
 INIT_VAR
37
ROM_ERS         EQU 0                           ; номер страницы ROM EVO RESET SERVICE
39
 SETVAR ROM_ERS                                 ; номер страницы ROM EVO RESET SERVICE
38
ROM_BAS128      EQU 1                           ; номер страницы ROM BASIC 128
40
 SETVAR ROM_BAS128                              ; номер страницы ROM BASIC 128
39
ROM_DOS         EQU 2                           ; номер страницы ROM EVO-DOS для реальной дискеты
41
 SETVAR ROM_DOS                                 ; номер страницы ROM EVO-DOS для реальной дискеты
40
ROM_BAS48       EQU 3                           ; номер страницы ROM BASIC 48
42
 SETVAR ROM_BAS48                               ; номер страницы ROM BASIC 48
41
 
-
 
-
 
43
 SETVAR ROM_EMPTY                               ; свободна
42
ROM_MAINMENU    EQU 5                           ; номер страницы упакованного главное меню
44
 SETVAR ROM_MAINMENU                            ; номер страницы упакованного главное меню
43
ROM_RST80       EQU 6                           ; номер страницы ROM RST 8
45
 SETVAR ROM_RST80                               ; номер страницы ROM RST 8
44
ROM_RST81       EQU 7                           ; номер страницы ROM RST 8
46
 SETVAR ROM_RST81                               ; номер страницы ROM RST 8
45
ROM_RST82       EQU 8                           ; номер страницы ROM RST 8
47
 SETVAR ROM_RST82                               ; номер страницы ROM RST 8
46
ROM_RST83       EQU 9                           ; номер страницы ROM RST 8
48
 SETVAR ROM_RST83                               ; номер страницы ROM RST 8
47
ROM_ADD_DOS     EQU 0x0A                        ; номер страницы ROM EVO-DOS для эмуляции
49
 SETVAR ROM_ADD_DOS                             ; номер страницы ROM EVO-DOS для эмуляции
48
ROM_ADD_BAS48   EQU 0x0B                        ; номер страницы ROM BASIC 48
50
 SETVAR ROM_ADD_BAS48                           ; номер страницы ROM BASIC 48
-
 
51
; стандартные бейсики и TURBO 2+
-
 
52
 INIT_VAR 0x18
49
ROM_BAS48_STD   EQU 0x18                        ; номер страницы ROM BASIC 48 (стандартная версия)
53
 SETVAR ROM_BAS48_STD                           ; номер страницы ROM BASIC 48 (стандартная версия)
50
ROM_BAS128_STD  EQU 0x19                        ; номер страницы ROM BASIC 128 (стандартная версия)
54
 SETVAR ROM_BAS128_STD                          ; номер страницы ROM BASIC 128 (стандартная версия)
51
ROM_BAS48_128   EQU 0x1A                        ; номер страницы ROM BASIC 48 (стандартная версия для BASIC 128)
55
 SETVAR ROM_BAS48_128                           ; номер страницы ROM BASIC 48 (стандартная версия для BASIC 128)
52
ROM_ATMCPM      EQU 0x1B                        ; номер страницы ROM АТМ CP/M
56
 SETVAR ROM_ATMCPM                              ; номер страницы ROM АТМ CP/M
53
 
-
 
-
 
57
; страницы конфигов
54
CONF4PROF       EQU 0x90                        ; стартовая страница для EVO PROFROM 128K
58
CONF4PROF       EQU 0x90                        ; стартовая страница для EVO PROFROM 128K
55
CONF4GLUK       EQU 0x94                        ; стартовая страница для GLUK 64K
59
CONF4GLUK       EQU 0x94                        ; стартовая страница для GLUK 64K
56
CONF4CUSTOM     EQU 0x9C                        ; стартовая страница для пользовательской прошивки 64К
60
CONF4CUSTOM     EQU 0x9C                        ; стартовая страница для пользовательской прошивки 64К
57
 
61
 
-
 
62
; границы страниц
58
CPU0            EQU 0x0000                      ; начало окна проецирования 0
63
CPU0            EQU 0x0000                      ; начало окна проецирования 0
59
CPU1            EQU 0x4000                      ; начало окна проецирования 1
64
CPU1            EQU 0x4000                      ; начало окна проецирования 1
60
CPU2            EQU 0x8000                      ; начало окна проецирования 2
65
CPU2            EQU 0x8000                      ; начало окна проецирования 2
61
CPU3            EQU 0xC000                      ; начало окна проецирования 3
66
CPU3            EQU 0xC000                      ; начало окна проецирования 3
62
 
67
 
Line 148... Line 153...
148
V_ZXSCR         EQU NUM_ZXSCR    | 0xA0
153
V_ZXSCR         EQU NUM_ZXSCR    | 0xA0
149
V_TXTATM        EQU NUM_TXTATM   | 0xA0
154
V_TXTATM        EQU NUM_TXTATM   | 0xA0
150
V_TXT1PAGE      EQU NUM_TXTSCR   | 0xA0
155
V_TXT1PAGE      EQU NUM_TXTSCR   | 0xA0
151
 
156
 
152
; маски отладчика
157
; маски отладчика
-
 
158
DEBUGGER
153
 BITMASK DBG_ACTIV,     7                       ; активен отладчик
159
 _BITMASK ACTIV,                7               ; активен отладчик
154
 BITMASK TRACE_DBG,     6                       ; трассировка
160
 _BITMASK TRACE,                6               ; трассировка
155
 BITMASK STEP_DBG,      5                       ; пошаговая отладка
161
 _BITMASK STEP,                 5               ; пошаговая отладка
156
; BITMASK CASH_INST,    4                       ; установлен CASH REMEMBER
162
; BITMASK CASH_INST,            4               ; установлен CASH REMEMBER
157
; BITMASK CASH_ACTIV,   3                       ; активен CASH REMEMBER
163
; BITMASK CASH_ACTIV,           3               ; активен CASH REMEMBER
158
 
164
 
159
; смещения FDI образа
165
; смещения FDI образа
160
FDI_TABLE_CYL   EQU 0x4000                      ; адрес таблицы начал дорожек в образе
166
FDI_TABLE_CYL   EQU 0x4000                      ; адрес таблицы начал дорожек в образе
Line 162... Line 168...
162
FDI_BYTE_SMESH  EQU 0x41FE                      ; смещение в байтах начала образа загруженного в рамдиск
168
FDI_BYTE_SMESH  EQU 0x41FE                      ; смещение в байтах начала образа загруженного в рамдиск
163
FDI_BLOCK_SMESH EQU 0x41FF                      ; смещение в блоках (по 256 байт) начала секторов образа
169
FDI_BLOCK_SMESH EQU 0x41FF                      ; смещение в блоках (по 256 байт) начала секторов образа
164
FDI_IMAGE1SECT  EQU 0x4400                      ; адрес загрузки первого сектора для определения смещения
170
FDI_IMAGE1SECT  EQU 0x4400                      ; адрес загрузки первого сектора для определения смещения
165
 
171
 
166
; ячейки в CMOS
172
; ячейки в CMOS
-
 
173
CMOS
167
 INIT_VAR
174
 _INIT_VAR
168
 SETVAR _CMOS_SECOND                            ; секунды
175
 _SETVAR .SECOND                        ; секунды
169
 SETVAR _CMOS_SECOND_AL                         ; секунды будильника
176
 _SETVAR .SECOND_AL                     ; секунды будильника
170
 SETVAR _CMOS_MINUTE                            ; минуты
177
 _SETVAR .MINUTE                        ; минуты
171
 SETVAR _CMOS_MINUTE_AL                         ; минуты будильника
178
 _SETVAR .MINUTE_AL                     ; минуты будильника
172
 SETVAR _CMOS_HOUR                              ; часы
179
 _SETVAR .HOUR                          ; часы
173
 SETVAR _CMOS_HOUR_AL                           ; часы будильника
180
 _SETVAR .HOUR_AL                       ; часы будильника
174
 SETVAR _CMOS_DAY                               ; день недели
181
 _SETVAR .DAY                           ; день недели
175
 SETVAR _CMOS_DAY_MONTH                         ; день месяца
182
 _SETVAR .DAY_MONTH                     ; день месяца
176
 SETVAR _CMOS_MONTH                             ; месяц
183
 _SETVAR .MONTH                         ; месяц
177
 SETVAR _CMOS_YEAR                              ; год
184
 _SETVAR .YEAR                          ; год
178
 
-
 
-
 
185
 _SETVAR .REG_A                         ; регистр A
-
 
186
 _SETVAR .REG_B                         ; регистр B
-
 
187
 _SETVAR .REG_C                         ; регистр C
-
 
188
 _SETVAR .REG_D                         ; регистр D
179
; номера ячеек CMOS и их содержимое
189
; сохранения настроек ERS
-
 
190
 _INIT_VAR 0xF0
180
CRCCMOSHIGH     EQU 0xEF                        ; старший байт CRC CMOS
191
 _MINUSVAR .CRCHIGH                     ; EF старший байт CRC CMOS
181
CRCCMOSLOW      EQU 0xEE                        ; младший байт CRC CMOS
192
 _MINUSVAR .CRCLOW                      ; EE младший байт CRC CMOS
182
CMOS_BYTE_00    EQU 0xED                        ; адрес хранения в CMOS
193
 _MINUSVAR .BYTE_00                     ; ED адрес хранения в CMOS
183
CMOS_BYTE_01    EQU 0xEC                        ; адрес хранения в CMOS
194
 _MINUSVAR .BYTE_01                     ; EC адрес хранения в CMOS
184
VIRT_REAL_DRIVE EQU 0xEB                        ; хранение номера реального и виртуального дисковода, тип DOS
195
 _MINUSVAR .VIRT_REAL_DRIVE             ; EB хранение номера реального и виртуального дисковода, тип DOS
185
HDD_TIMEOUT     EQU 0xEA                        ; задержка опредения наличия винта после включения питания
196
 _MINUSVAR .HDD_TIMEOUT                 ; EA задержка опредения наличия винта после включения питания
186
CMOS_BYTE_02    EQU 0xE9                        ; адрес хранения в CMOS
197
 _MINUSVAR .BYTE_02                     ; E9 адрес хранения в CMOS
187
CMOS_BYTE_03    EQU 0xE8                        ; адрес хранения в CMOS
198
 _MINUSVAR .BYTE_03                     ; E8 адрес хранения в CMOS
-
 
199
; расширенный доступ через CMOS к AVR
-
 
200
 _INIT_VAR 0xF0
-
 
201
 _SETVAR .READ_PS2
-
 
202
; битовые поля в CMOS регистры A-D
-
 
203
CMOSREG
-
 
204
 _BITMASK A_RO_UIP,             7
-
 
205
 _BITMASK A_RW_DV2,             6
-
 
206
 _BITMASK A_RW_DV1,             5
-
 
207
 _BITMASK A_RW_DV0,             4
-
 
208
 _BITMASK A_RW_RS3,             3
-
 
209
 _BITMASK A_RW_RS2,             2
-
 
210
 _BITMASK A_RW_RS1,             1
-
 
211
 _BITMASK A_RW_RS0,             0
-
 
212
 _BITMASK B_RW_SET,             7
-
 
213
 _BITMASK B_RW_PIE,             6
-
 
214
 _BITMASK B_RW_AIE,             5
-
 
215
 _BITMASK B_RW_UIE,             4
-
 
216
 _BITMASK B_RW_SQWE,            3
-
 
217
 _BITMASK B_RW_DM,              2
-
 
218
 _BITMASK B_RW_24_12,           1
-
 
219
 _BITMASK B_RW_DSE,             0
-
 
220
 _BITMASK C_RO_IRQF,            7
-
 
221
 _BITMASK C_RO_PF,              6
-
 
222
 _BITMASK C_RO_AF,              5
-
 
223
 _BITMASK C_RO_UF,              4
-
 
224
 _BITMASK D_RO_VRT,             7
188
 
225
 
189
; ячейка CMOS 0xED CMOS_BYTE_00
226
; ячейка CMOS 0xED CMOS_BYTE_00
-
 
227
CMOS_ED
190
 BITMASK TURBO14,       7                       ; разрешение включения TURBO 14MHZ
228
 _BITMASK TURBO14,              7               ; разрешение включения TURBO 14MHZ
191
 BITMASK EMUL_TAPE,     6                       ; разрешение эмуляции загрузки с ленты
229
 _BITMASK EMUL_TAPE,            6               ; разрешение эмуляции загрузки с ленты
192
 BITMASK PRINTER_AY,    5                       ; разрешение подмены драйвера печати в BASIC48
230
 _BITMASK PRINTER_AY,           5               ; разрешение подмены драйвера печати в BASIC48
193
 BITMASK RELOAD_FONT,   4                       ; разрешение перезагрузки шрифта при сбросе
231
 _BITMASK RELOAD_FONT,          4               ; разрешение перезагрузки шрифта при сбросе
194
 BITMASK TYPE_FONT,     3                       ; выбор кодировки шрифта
232
 _BITMASK TYPE_FONT,            3               ; выбор кодировки шрифта
195
 BITMASK AUTO_TAPE,     2                       ; автозапуск TAP файлов
233
 _BITMASK AUTO_TAPE,            2               ; автозапуск TAP файлов
196
 
234
 
197
; номера сбросов, биты 1-0 ячейки 0xED (CMOS_BYTE_00)
235
; номера сбросов, биты 1-0 ячейки 0xED (CMOS_BYTE_00)
198
 INIT_VAR
236
 _INIT_VAR
199
 SETVAR RESET2EVOSERV                           ; сброс в EVO SERVICE
237
 _SETVAR .RESET2EVOSERV                         ; сброс в EVO SERVICE
200
 SETVAR RESET2GLUK                              ; сброс в GLUK SERVICE
238
 _SETVAR .RESET2GLUK                            ; сброс в GLUK SERVICE
201
 SETVAR RESET2PROFROM                           ; сброс в PROFROM
239
 _SETVAR .RESET2PROFROM                         ; сброс в PROFROM
202
 SETVAR RESET2CUSTOM                            ; сброс в CUSTOM ROM
240
 _SETVAR .RESET2CUSTOM                          ; сброс в CUSTOM ROM
203
 
241
 
204
; ячейка CMOS 0xEC CMOS_BYTE_01
242
; ячейка CMOS 0xEC CMOS_BYTE_01
-
 
243
CMOS_EC
205
 BITMASK TURBO357,      7                       ; турбо режим 3,5 или 7 Мгц
244
 _BITMASK TURBO357,             7               ; турбо режим 3,5 или 7 Мгц
206
 BITMASK SD_NGS_ONOFF,  6                       ; включение/выключение доступа к SD КАРТЕ NEOGS
245
 _BITMASK SD_NGS_ONOFF,         6               ; включение/выключение доступа к SD КАРТЕ NEOGS
207
 BITMASK AUTOMOUNT,     5                       ; вкл/выкл автомонтирования из файла
246
 _BITMASK AUTOMOUNT,            5               ; вкл/выкл автомонтирования из файла
208
 BITMASK CLOCK_VIEW,    4                       ; хранение отображение часов
247
 _BITMASK CLOCK_VIEW,           4               ; хранение отображение часов
209
 BITMASK SOUNDKEYS,     3                       ; разрешение озвучивания нажатых клавиш
248
 _BITMASK SOUNDKEYS,            3               ; разрешение озвучивания нажатых клавиш
210
 BITMASK REZIDENT,      2                       ; разрешение проверки наличия резидента
249
 _BITMASK REZIDENT,             2               ; разрешение проверки наличия резидента
211
 
250
 
212
; номера моделей памяти, биты 1-0 ячейки 0xEC (CMOS_BYTE_01)
251
; номера моделей памяти, биты 1-0 ячейки 0xEC (CMOS_BYTE_01)
213
 INIT_VAR
252
 _INIT_VAR
214
 SETVAR _1MB                                    ; память 1 Мб
253
 _SETVAR ._1MB                                  ; память 1 Мб
215
 SETVAR _48K                                    ; память 48 Кб
254
 _SETVAR ._48K                                  ; память 48 Кб
216
 SETVAR _128K                                   ; память 128 Кб
255
 _SETVAR ._128K                                 ; память 128 Кб
217
 
256
 
218
KOL_MODES       EQU 4                           ; количество режимов сброса
257
.KOL_MODES      EQU 4                           ; количество режимов сброса
219
MKOL_MODES      EQU %00000011                   ; маска для количества режимов сброса
258
.MKOL_MODES     EQU %00000011                   ; маска для количества режимов сброса
220
 
259
 
221
; ячейка CMOS 0xEB
260
; ячейка CMOS 0xEB
-
 
261
CMOS_EB
222
 BITMASK ACCESSZCSD,    7                       ; разрешение доступа к ZC SD CARD
262
 _BITMASK ACCESSZCSD,           7               ; разрешение доступа к ZC SD CARD
223
 BITMASK ACCESSSDG,     6                       ; разрешения доступа к SD карте NEOGS
-
 
224
 BITMASK ACCESSHDDM,    5                       ; разрешение доступа к HDD MASTER
263
 _BITMASK ACCESSHDDM,           6               ; разрешение доступа к HDD MASTER
225
 BITMASK ACCESSHDDS,    4                       ; разрешение доступа к HDD SLAVE
264
 _BITMASK ACCESSHDDS,           5               ; разрешение доступа к HDD SLAVE
226
_REAL_DRIVE     EQU %00001100                   ; маска номера реального дисковода
265
.REAL_DRIVE     EQU %00001100                   ; маска номера реального дисковода
227
_VIRT_DRIVE     EQU %00000011                   ; маска номера виртуального дисковода
266
.VIRT_DRIVE     EQU %00000011                   ; маска номера виртуального дисковода
-
 
267
 
-
 
268
; ячейка CMOS 0xEA
-
 
269
CMOS_EA
-
 
270
.SCREENSAVER    EQU %11110000                   ; таймаут до запуска скринсейвера
-
 
271
.DETECTHDD      EQU %00001111                   ; таймаут до начала детекта HDD
228
 
272
 
229
; ячейка CMOS 0xE9
273
; ячейка CMOS 0xE9
-
 
274
CMOS_E9
-
 
275
 _BITMASK KILL_REZIDENT,        7               ; изменение резидента перед запуском
230
 BITMASK AUTOBOOT,      7                       ; автостарт загружаемого устройства
276
 _BITMASK AUTOBOOT,             6               ; автостарт загружаемого устройства
231
BOOTDEVICE      EQU %00000011                   ; номер загружаемого устройства
277
.BOOTDEVICE     EQU %00000011                   ; номер загружаемого устройства
232
 
-
 
233
; ячейка CMOS 0xE8
-
 
234
 BITMASK KILL_REZIDENT, 7                       ; изменение резидента перед запуском
-
 
235
 
278
 
236
; номера загружаемых устройств
279
; номера загружаемых устройств
237
 INIT_VAR
280
 INIT_VAR
238
 SETVAR _FDD                                    ; дисковод
281
 SETVAR _FDD                                    ; дисковод
239
 SETVAR _HDD                                    ; винчестер
282
 SETVAR _HDD                                    ; винчестер
Line 261... Line 304...
261
 SETVAR OFFSET_FNTSAVE,         0x800           ; смещение в странице для сохранения считанного шрифта
304
 SETVAR OFFSET_FNTSAVE,         0x800           ; смещение в странице для сохранения считанного шрифта
262
 SETVAR OFFSET_BUFSYM,          0x800           ; смещение в странице текущего шрифта
305
 SETVAR OFFSET_BUFSYM,          0x800           ; смещение в странице текущего шрифта
263
 SETVAR OFFSET_SCRSAVE,         0x1B00          ; смещение в странице для сохранения экрана
306
 SETVAR OFFSET_SCRSAVE,         0x1B00          ; смещение в странице для сохранения экрана
264
 SETVAR OFFSET_USBDRV,          0               ; ??? смещение до начала USB драйвера
307
 SETVAR OFFSET_USBDRV,          0               ; ??? смещение до начала USB драйвера
265
 
308
 
266
BUF_512         EQU CPU3-0x200                  ; буфер сектора
-
 
267
BUF_TABLVOL     EQU BUF_512-0x100               ; буфер таблицы найденных разделов
-
 
268
BUF_TEKVOL      EQU BUF_TABLVOL-0x100           ; буфер выбранного раздела
-
 
269
BUF_TDIRCLS     EQU BUF_TEKVOL-0x800            ; буфер кластеров текущей директории
-
 
270
BUF_256         EQU BUF_TDIRCLS-0x100           ; буфер 256 байт для переносов
-
 
271
BUF_PATH        EQU BUF_256-0x100               ; буфер текущего пути
-
 
272
MOUNT_DRIVES    EQU BUF_PATH-0x100              ; буфер описателей примонтированных файлов
-
 
273
BUF_LEVELDIR    EQU MOUNT_DRIVES-0x100          ; буфер сохранения позиций окон при переходах по директориям
-
 
274
BUF_WINPATH     EQU BUF_LEVELDIR-0x400          ; буфер сохранения позиций в окне при хождении по директориям
-
 
275
 
-
 
276
; переменные для менеджера устройств
309
; переменные для менеджера устройств
-
 
310
DEVMAN_VARS
277
 INIT_VAR BUF_TABLVOL + 0xE0
311
 _INIT_VAR BUF_VOLUMES + 0xE0
278
 SETVAR DEVICES,                0x10            ; список обнаруженных девайсов
312
 _SETVAR .DEVICES,              0x10            ; список обнаруженных девайсов
279
 SETVAR GO_DEV,                 WORD            ; адрес вызова драйвера устройства
313
 _SETVAR .GO_DEV,               WORD            ; адрес вызова драйвера устройства
280
 SETVAR KOLDVOL,                BYTE            ; количество найденных разделов
314
 _SETVAR .KOLDVOL,              BYTE            ; количество найденных разделов
281
 SETVAR SETDVOL,                BYTE            ; номер выбранного раздела
315
 _SETVAR .SETDVOL,              BYTE            ; номер выбранного раздела
282
 SETVAR ADRTEKV,                WORD            ; адрес описателя текущего раздела
316
 _SETVAR .ADRTEKV,              WORD            ; адрес описателя текущего раздела
283
 SETVAR SAVE_TEK_VOL,           BYTE            ; временное сохранение текущего раздела
317
 _SETVAR .SAVE_TEK_VOL,         BYTE            ; временное сохранение текущего раздела
284
 SETVAR TEK_TYPE,               BYTE            ; временное хранение типа текущего устройства
318
 _SETVAR .TEK_TYPE,             BYTE            ; временное хранение типа текущего устройства
285
 SETVAR FLAGS_DRV,              BYTE            ; флаговый байт драйверов
319
 _SETVAR .FLAGS_DRV,            BYTE            ; флаговый байт драйверов
286
;7 =0-драйвер SD карты NEOGS не установлен, =1-установлен
320
;7 =0-драйвер SD карты NEOGS не установлен, =1-установлен
287
;6
321
;6
288
;5
322
;5
289
;4
323
;4
290
;3
324
;3
291
;2
325
;2
292
;1 =0-SD ZC карта не обнаружена, 1-обнаружена
326
;1 =0-SD ZC карта не обнаружена, 1-обнаружена
293
;0 =0-SD NeoGS не обнаружена, 1-обнаружена
327
;0 =0-SD NeoGS не обнаружен, 1-обнаружен
294
CRC_DRVS        EQU BUF_TABLVOL + 0xFE          ; контрольная сумма таблицы найденных разделов
-
 
295
 
328
 
296
; переменные для 1 окна проецирования
329
; переменные для 1 окна проецирования
297
 INIT_VAR
330
 INIT_VAR
298
 SETVAR BUF_ALLVOL,             0x1000          ; буфер переменных для всех разделов (16 MAX)
331
 SETVAR BUF_ALLVOL,             16 * 0x100      ; буфер переменных для всех разделов (16 MAX)
299
 SETVAR MOUNT_CLS,              0x1000          ; буфер кластеров примонтированных файлов
332
 SETVAR MOUNT_CLS,              0x1000          ; буфер кластеров примонтированных файлов
300
 SETVAR TEK_BUFPATH,            0x1000          ; буфер текущих путей на разделах
333
 SETVAR BUF_CURRPATH,           0x1000          ; буфер текущих путей на разделах
301
 SETVAR BUF_PATHMOUNT,          0x400           ; буфер путей для поиска примонтированных файлов
334
 SETVAR BUF_PATHMOUNT,          0x400           ; буфер путей для поиска примонтированных файлов
-
 
335
 
-
 
336
; буферы в 0 паге с конца страницы (растет вниз)
-
 
337
 INIT_VAR CPU3
-
 
338
 MINUSVAR BUF_512,              0x200           ; буфер сектора
-
 
339
 MINUSVAR BUF_MOVE256,          0x100           ; буфер 256 байт для переносов
-
 
340
 MINUSVAR BUF_MOUNTDRIVES,      0x100           ; буфер описателей примонтированных файлов
-
 
341
 MINUSVAR BUF_VOLUMES,          0x100           ; буфер таблицы найденных разделов
-
 
342
 MINUSVAR BUF_CURRFATVAR,       0x100           ; буфер выбранного раздела
302
 SETVAR BUF_DIRCEP,             0x100           ; буфер цепочки текущей директории
343
 MINUSVAR BUF_DIRCLS,           0x800           ; буфер кластеров текущей директории
303
 SETVAR BUF_TEMPSEC,            0x200           ; буфер сектора для загрузки образов
344
 MINUSVAR BUF_DIRCEP,           0x100           ; буфер цепочки номеров текущей директории
-
 
345
 
-
 
346
FATVARS
-
 
347
 _INIT_VAR CPU3
-
 
348
 _SETVAR .WINPOS,               0x600           ; буфер сохранения позиций в окне при хождении по директориям FILE BROWSER NMI
-
 
349
 _SETVAR .COPY_VARS_INT,        BUF_DIRCEP_Size + \
-
 
350
                                BUF_DIRCLS_Size + \
-
 
351
                                BUF_CURRFATVAR_Size + \
-
 
352
                                BUF_VOLUMES_Size        ; внутренние FAT переменные
-
 
353
 _SETVAR .COPY_VARS_EXT,        BUF_DIRCEP_Size + \
-
 
354
                                BUF_DIRCLS_Size + \
-
 
355
                                BUF_CURRFATVAR_Size + \
-
 
356
                                BUF_VOLUMES_Size        ; внешние FAT переменные