port 0 "extended memory"
bits D0 - D3 switch pages by 32Kb
page 0 - ROM
digits D4 - D7 are not used

ports 1 - 5 "provide communication with SPECTRUM"

port 1
read command by General Sound
D0 - D7 - command code

port 2
reading data by General Sound
D0 - D7 - data

port 3
General Sound data recording for SPECTRUM
D0 - D7 - data

port 4
read status word by General Sound
D0 - command flag
D7 - data flag

port 5
clears bit D0 (command flag) of the status word

ports 6 - 9 "volume control"
respectively in channels 1 - 4
D0 - D5 - volume
D6, D7 - not used

port A
sets bit D7 of the status word to not equal to bit D0 of port 0

port B
sets bit D0 of the status word equal to bit D5 of port 6

                         Memory allocation

# 0000 - # 3FFF - first 16Kb of ROM
# 4000 - # 7FFF - first 16Kb of the first page of RAM
# 8000 - #FFFF - turnable pages of 32Kb
                  page 0 - ROM,
                  page 1 - first page of RAM
                  page 2 ... RAM


Data are entered into channels when the processor reads RAM at addresses # 6000
- # 7FFF automatically.
Data for channels should be located at the following addresses:
╔═════════════╤═══════════════╗
║address bit  │ for channel   ║ # 6000 - # 60FF - channel 1 data
║             ├───┬───┬───┬───╢ # 6100 - # 61FF - channel 2 data
║             │ 1 │ 2 │ 3 │ 4 ║ # 6200 - # 62FF - channel 3 data
╟─────────────┼───┼───┼───┼───╢ # 6300 - # 63FF - channel 4 data
║ A0 - A7     │ X │ X │ X │ X ║ # 6400 - # 64FF - channel 1 data
║             │   │   │   │   ║                 .
║ 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 - channel 2 data
║             │   │   │   │   ║ # 7E00 - # 7EFF - channel 3 data
╚═════════════╧═══╧═══╧═══╧═══╝ # 7F00 - # 7FFF - channel 4 data
