Порт 7FFD — различия между версиями
Zxdn (обсуждение | вклад) |
Zxdn (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | '''Порт #7FFD (32765)''' | + | '''Порт #7FFD (32765)''' — порт управления конфигурацией для [[ZX Spectrum 128K]]. Позволяет управлять расширенной памятью и отображаемой видеостраницей. Возможна только запись в порт, чтение из порта будет возвращать различные значения в зависимости от состояния шины данных, как при чтении из любого другого несуществующего порта. |
== Декодирование == | == Декодирование == | ||
− | На оригинальном ZX Spectrum 128K и многих клонах используется упрощённая дешифрация адреса порта, по сброшенным разрядам '''A1''' и '''A15'''. Однако, во избежание конфликтов с дополнительной аппаратурой требуется использовать указанный адрес. В частности, использование адреса #FD для управления расширенной памятью во многих программах для [[Pentagon]] привело к проблеме их совместимости с другими отечественными клонами. | + | На оригинальном ZX Spectrum 128K и многих клонах используется [[упрощённая дешифрация]] адреса порта, по сброшенным разрядам '''A1''' и '''A15'''. Однако, во избежание конфликтов с дополнительной аппаратурой требуется использовать указанный адрес. В частности, использование адреса #FD для управления расширенной памятью во многих программах для [[Pentagon]] привело к проблеме их совместимости с другими отечественными клонами. |
На [[ZX Spectrum +2A]] и [[ZX Spectrum +3]] при декодировании адреса порта также учитывается '''A14'''. | На [[ZX Spectrum +2A]] и [[ZX Spectrum +3]] при декодировании адреса порта также учитывается '''A14'''. |
Версия 23:37, 21 ноября 2009
Порт #7FFD (32765) — порт управления конфигурацией для ZX Spectrum 128K. Позволяет управлять расширенной памятью и отображаемой видеостраницей. Возможна только запись в порт, чтение из порта будет возвращать различные значения в зависимости от состояния шины данных, как при чтении из любого другого несуществующего порта.
Декодирование
На оригинальном ZX Spectrum 128K и многих клонах используется упрощённая дешифрация адреса порта, по сброшенным разрядам A1 и A15. Однако, во избежание конфликтов с дополнительной аппаратурой требуется использовать указанный адрес. В частности, использование адреса #FD для управления расширенной памятью во многих программах для Pentagon привело к проблеме их совместимости с другими отечественными клонами.
На ZX Spectrum +2A и ZX Spectrum +3 при декодировании адреса порта также учитывается A14.
Назначение битов порта
- D0-D2 - номер страницы ОЗУ, подключенной в верхние 16 КБ памяти (с адреса #C000)
- D3 - выбор отображаемой видеостраницы. 0 - страница в банке 5, 1 - в банке 7.
- D4 - номер страницы ПЗУ. 0 - BASIC128, 1 - BASIC48.
- D5 - запрещение расширенной памяти. При установке бита управление расширенной памятью будет невозможно до сброса компьютера.