mirror of
https://github.com/romychs/Orion-PRO.git
synced 2025-11-09 20:35:59 +03:00
176 lines
9.2 KiB
HTML
176 lines
9.2 KiB
HTML
;==============================
|
||
; Порты Ориона-128 и Ориона-ПРО
|
||
;==============================
|
||
|
||
PORT_00_DIPSW EQU 0x00
|
||
PORT_01_PRNT_DAT EQU 0x01
|
||
PORT_02_PRNT_CTL EQU 0x02
|
||
PORT_03_CTL EQU 0x03
|
||
|
||
PORT_04_RAM0P EQU 0x04
|
||
PORT_05_RAM1P EQU 0x05
|
||
PORT_06_RAM2P EQU 0x06
|
||
PORT_07_CTL EQU 0x07
|
||
|
||
PORT_08_RAM_PG EQU 0x08
|
||
PORT_09_ROM2_SEG EQU 0x09
|
||
PORT_0A_MEM_CFG EQU 0x0A
|
||
PORT_0B_CTL EQU 0x0B
|
||
|
||
PORT_10_VG_CMD EQU 0x10
|
||
PORT_11_VG_TRK EQU 0x11
|
||
PORT_12_VG_SECT EQU 0x12
|
||
PORT_13_VG_DATA EQU 0x13
|
||
PORT_14_VG_CTL EQU 0x14
|
||
|
||
|
||
; Порты клавиатуры
|
||
PORT_18_KBD EQU 0x18 ; F400 - port KBRD
|
||
PORT_19_KBD EQU 0x19
|
||
PORT_1A_KBD EQU 0x1A
|
||
PORT_1B_CTL EQU 0x1B
|
||
|
||
; Мультикарта
|
||
PORT_1D_MCARD_CTL EQU 0x1d
|
||
PORT_1E_MOUSE EQU 0x1e
|
||
|
||
; ROM-диск
|
||
PORT_28_ROMD_DATA EQU 0x28 ; данные ROM-диска
|
||
PORT_29_ROMD_ADRL EQU 0x29 ; мл. адрес в ROM-диске
|
||
PORT_2A_ROMD_ADRH EQU 0x2A ; ст. адрес в ROM-диске
|
||
PORT_2B_CTL EQU 0x2B ; управление ВВ55 ROM-диска
|
||
PORT_2C_ROMD_PAGE EQU 0x2C
|
||
|
||
PORT_3B_VI53_CTL EQU 0x3b ; ВИ53 на плате портов COM
|
||
|
||
; порты IDE
|
||
PORT_56_HDD_CTL EQU 0x56
|
||
PORT_57_HDD_HB EQU 0x57
|
||
PORT_58_HDD_LB EQU 0x58
|
||
PORT_59_HDD_ERR EQU 0x59
|
||
PORT_5F_HDD_STAT_CMD EQU 0x5F
|
||
|
||
; порты палитры
|
||
PORT_E0_PAL_R EQU 0xE0
|
||
PORT_E1_PAL_G EQU 0xE1
|
||
PORT_E2_PAL_B EQU 0xE2
|
||
|
||
PORT_F8_VMODE EQU 0xF8
|
||
REG_F9_RAM_PG EQU 0xF9
|
||
REG_FA_SCRN_CFG EQU 0xFA
|
||
PORT_FB_TMR_INT EQU 0xFB ; порт вкл прерывания и разблок. ROM
|
||
REG_FC_COLOR EQU 0xFC
|
||
PORT_FF_SPEAKER EQU 0xFF
|
||
|
||
; Порты через память для Ориона-128
|
||
PORT_128_F400 EQU 0xF400 ; Клавиатура
|
||
PORT_128_F500 EQU 0xF500 ; Порт пользователя 1
|
||
PORT_128_F600 EQU 0xF600 ; Порт пользователя 2
|
||
PORT_128_F700 EQU 0xF700 ; Порт платы расширения
|
||
PORT_128_F800 EQU 0xF800 ; WR Цветные режимы
|
||
PORT_128_F900 EQU 0xF900 ; WR Управление памятью
|
||
PORT_128_FA00 EQU 0xFA00 ; WR Переключение экранов
|
||
PORT_128_FB00 EQU 0xFB00 ; WR Переключение типа экрана граф/симв (не импользуется)
|
||
|
||
|
||
;
|
||
; Биты конфигурации порта 00 (DIP Switch)
|
||
;
|
||
SW_O128_MODE EQU 7
|
||
SW_INT_ROM_DISK EQU 6
|
||
SW_MENU EQU 5
|
||
SW_CHR_DISP EQU 4
|
||
SW_CMP_PG1 EQU 3
|
||
SW_KBD_RK86 EQU 2
|
||
SW_HDD EQU 1
|
||
SW_FDD EQU 0
|
||
|
||
;
|
||
; Биты порта 0A
|
||
;
|
||
RAM0_WND EQU 0 ; Окно 0 если 1 - Открыто (0000-3FFFF)
|
||
RAM1_WND EQU 1 ; Окно 1 если 1 - Открыто (4000-7FFFF)
|
||
RAM2_WND EQU 2 ; Окно 2 если 1 - Открыто (8000-BFFFF)
|
||
ROM2_WND EQU 3 ; Если 1 - Включено окно ROM2
|
||
ROM2_WND_ON EQU 0x08
|
||
ROM2_WND_OFF EQU 0xF7
|
||
ROM1_WND EQU 4 ; Если 1 - Включено окно ROM1
|
||
|
||
; ПОРТЫ "ОРИОН-ПРО"
|
||
; =================
|
||
; 00H - DIP-переключатели (чтение);
|
||
; 01H - данные принтера, инверсные (запись);
|
||
; 02H - управляющие сигналы принтера (чтение, запись);
|
||
; 03H - регистр управления для портов 00H..02H;
|
||
; 04H - регистр сегментов для окна ОЗУ RAM-0 (чтение, запись);
|
||
; 05H - регистр сегментов для окна ОЗУ RAM-1 (чтение, запись);
|
||
; 06H - регистр сегментов для окна ОЗУ RAM-2 (чтение, запись);
|
||
; 07H - регистр управления для портов 04H..05H;
|
||
; 08H - регистр страниц ОЗУ для режима "Pro" (чтение, запись);
|
||
; 09H - регистр сегментов ПЗУ ROM-2 (чтение, запись);
|
||
; 0AH - диспетчер памяти (чтение, запись);
|
||
; 0BH - регистр управления для портов 08H..0AH;
|
||
; 10H - регистр состояния/команд ВГ93 (чтение, запись)
|
||
; в режиме "128" доступен через адрес 0F710H;
|
||
; 11H - регистр дорожки ВГ93 (чтение, запись),
|
||
; в режиме "128" доступен через адрес 0F711H;
|
||
; 12H - регистр сектора ВГ93 (чтение, запись),
|
||
; в режиме "128" доступен через адрес 0F712H;
|
||
; 13H - регистр данных ВГ93 (чтение, запись),
|
||
; в режиме "128" доступен через адрес 0F713H;
|
||
; 14H - порт управления НГМД (запись),
|
||
; в режиме "128" доступен через адрес 0F714H;
|
||
; 18H..1BH - порты клавиатуры,
|
||
; в режиме "128" в зависимости от положения перемычки
|
||
; доступны через адреса 0F4XXH / 0F5XXH / 0F6XXH;
|
||
; 1CH - свободный порт Мультикарты (чтение, запись);
|
||
; 1DH - регистр управления портами 1CH,1EH,1FH;
|
||
; 1EH - порт параллельной мыши на Мультикарте (чтение);
|
||
; 1FH - порт джойстика на Мультикарте (чтение);
|
||
; 20H..23H - универсальный порт на Мультикарте, в зависимости
|
||
; от положения перемычки может быть доступен в режиме
|
||
; "128" по адресам 0F6XXH;
|
||
|
||
; 30H - регистр данных ВВ51 "COM1" (DD7)
|
||
; 31H - регистр управления ВВ51 "COM1" (DD7)
|
||
; 34H - регистр данных ВВ51 "COM2" (DD8)
|
||
; 35H - регистр управления ВВ51 "COM2" (DD8)
|
||
; 38H - счетчик 1 ВИ53 (DD6)
|
||
; 39H - счетчик 2 ВИ53 (DD6)
|
||
; 3AH - счетчик 3 ВИ53 (DD6)
|
||
; 3BH - регистр управления ВИ53 (DD6)
|
||
|
||
; 3EH - запись данных музыкального процессора (DD9)
|
||
; 3FH - чтение данных музыкального процессора (DD9)
|
||
; 3FH - запись номера регистра музыкального процессора (DD9)
|
||
; 50H - регистр данных RTC, CMOS ВИ1 (чтение, запись);
|
||
; 51H - регистр адреса RTC, CMOS ВИ1 (запись);
|
||
; 56H - регистр состояния/управления IDE (чтение, запись);
|
||
; 57H - старший байт регистра данных IDE (чтение, запись);
|
||
; 58H - младший байт регистра данных IDE (чтение, запись);
|
||
; 59H - регистр ошибок/свойств IDE;
|
||
; 5AH - счетчик секторов IDE
|
||
; 5BH - регистр сектора IDE
|
||
; 5CH - младший байт номера цилиндра IDE;
|
||
; 5DH - старший байт номера цилиндра IDE;
|
||
; 5EH - регистр головки и устройства IDE;
|
||
; 5FH - регистр состояния (чтение) и команд (запись) IDE;
|
||
; A0H,A1H,A2H - регистры адреса Квазидиска 1Мб/128К (запись);
|
||
; A3H - регистр данных Квазидиска 1Мб (чтение, запись);
|
||
; A4H - регистр данных Квазидиска 128К (чтение, запись);
|
||
; E0H - порт управления палитрой R на Мультикарте (запись);
|
||
; E1H - порт управления палитрой G на Мультикарте (запись);
|
||
; E2H - порт управления палитрой B на Мультикарте (запись);
|
||
; F8H - порт управления цветовым режимом экрана (запись),
|
||
; в режиме "128" доступен" через ячейку 0F800H;
|
||
; F9H - порт выбора страницы ОЗУ для режима "128" (запись),
|
||
; в режиме "128" доступен" через ячейку 0F900H;
|
||
; FAH - порт выбора номера экрана и ширины (запись),
|
||
; в режиме "128" доступен" через ячейку 0FA00H;
|
||
; FBH - регистр разрешения прерываний IRQ0 - 50Гц (запись);
|
||
; FCH - регистр псевдоцвета (запись);
|
||
; FDH - резерв для портов "ZX";
|
||
; FEH - порт ЦАП /звук (запись);
|
||
; FFH - динамик (запись).
|
||
|