© 1985 ASCII CORP. / NIPPON GAKKI CO.
Page 14 of 108
© 2010-2015 Eugeny Brychkov
Note:
data in register R#17 can not be changed by indirect addressing.
MSB 7 6 5 4 3 2 1 0 LSB
Register
#17
AII
0 R5 R4 R3 R2 R1 R0 Register
#
0: Auto-increment is enabled
1: Auto-increment is disabled
Port #3 first byte
D7 D6 D5 D4 D3 D2 D1 D0
Data
Port #3 second byte
D7 D6 D5 D4 D3 D2 D1 D0 Data
…
Port #3 n
th
byte
D7 D6 D5 D4 D3 D2 D1 D0 Data
1.2. Accessing the Palette Registers
To set data in the MSX-VIDEO palette registers (P#0 to P#15) you must first set the
palette register number in register R#16 (Color palette address pointer) and subsequently
write two bytes of data (in specific order) into port #2. Every color consists of 3 sets of 3
bits: red, green and blue component (value 0…7).
Note:
after writing pair of data to port #2 palette register number (pointer) in
register R#16 auto-increments.
MSB 7 6 5 4 3 2 1 0 LSB
Register
#16
0 0 0 0 C3
C2
C1
C0
Palette
#
Port #2 first byte
0 R2 R1 R0 0
B2 B1 B0
Data 1
Red data
Blue data
Port #2 second byte
0
0
0
0
0 G2 G1 G0
Data 2
Green data
1.3. Accessing the status registers
To read the status registers of MSX-VIDEO (S#0 to S#9) you must first set the
register number in R#15 (Status register pointer) and then read data from port #1.
MSB 7 6 5 4 3 2 1 0 LSB
Register #15 (write)
0
0
0
0
S3 S2 S1 S0
Stat Reg #
Port #1 data (read)
D7 D6 D5 D4 D3 D2 D1 D0
Data read