порт 0 "расширенная память" разряды D0 - D3 переключают страници по 32Kb страница 0 - ПЗУ разряды D4 - D7 не используются порты 1 - 5 "обеспечивают связь с SPECTRUM'ом" порт 1 чтение команды General Sound'ом D0 - D7 - код команды порт 2 чтение данных General Sound'ом D0 - D7 - данные порт 3 запись данных General Sound'ом для SPECTRUM'a D0 - D7 - данные порт 4 чтение слова состояния General Sound'ом D0 - флаг команд D7 - флаг данных порт 5 сбрасывает бит D0 (флаг команд) слова состояния порты 6 - 9 "регулировка громкости" соответственно в каналах 1 - 4 D0 - D5 - громкость D6,D7 - не используются порт А устанавливает бит D7 слова состояния не равным биту D0 порта 0 порт B устанавливает бит D0 слова состояния равным биту D5 порта 6 Распределение памяти #0000 - #3FFF - первые 16Kb ПЗУ #4000 - #7FFF - первые 16Kb первой страницы ОЗУ #8000 - #FFFF - листаемые страницы по 32Kb страница 0 - ПЗУ, страница 1 - первая страница ОЗУ страницы 2... ОЗУ Данные в каналы заносятся при чтении процессором ОЗУ по адресам #6000 - #7FFF автоматически. Данные для каналов должны находиться по следующим адресам: ╔═════════════╤═══════════════╗ ║разряд адреса│ для канала ║ #6000 - #60FF - данные канала 1 ║ ├───┬───┬───┬───╢ #6100 - #61FF - данные канала 2 ║ │ 1 │ 2 │ 3 │ 4 ║ #6200 - #62FF - данные канала 3 ╟─────────────┼───┼───┼───┼───╢ #6300 - #63FF - данные канала 4 ║ A0 - A7 │ X │ X │ X │ X ║ #6400 - #64FF - данные канала 1 ║ │ │ │ │ ║ . ║ A8 │ 0 │ 1 │ 0 │ 1 ║ . ║ │ │ │ │ ║ . ║ A9 │ 0 │ 0 │ 1 │ 1 ║ . ║ │ │ │ │ ║ . ║ A10-A12 │ X │ X │ X │ X ║ . ║ │ │ │ │ ║ . ║ A13,A14 │ 1 │ 1 │ 1 │ 1 ║ . ║ │ │ │ │ ║ . ║ A15 │ 0 │ 0 │ 0 │ 0 ║ #7D00 - #7DFF - данные канала 2 ║ │ │ │ │ ║ #7E00 - #7EFF - данные канала 3 ╚═════════════╧═══╧═══╧═══╧═══╝ #7F00 - #7FFF - данные канала 4