Super Disc Expansion Drive

This drive uses the EXT port for communication (while not directly plugged). Because this uses the B-Bus Memory, it can only use $21xx registers.

$21D0 - ? (Always zeroes it)
$21E0 - ?
$21E1 - NEC D75P308GF Interface
$21E2 - Sony CXD1800Q Register Select
$21E3 - Sony CXD1800Q Interface
$21E4 - Interrupt Enable
          d1 = ?
          d2 = Sony CXD1800Q (Decoder)
          d3 = NEC D75P308GF (Mecha)
$21E5 - ?

NEC D75P308GF Interface

Status

0x0X - Nibble Receive
0x80 - Ready Flag

Commands

Nibbles (a hex digit here) are sent back and forth:

At every nibble you send, a nibble should be read when the Ready flag is set. An interrupt seems to be sent when the ready flag is set.

Command            | Serve (Hex)            | Receive (Hex)
----------------------------------------------------------------------
ACCESS TRACK/INDEX | CttiiF                 | FFFFFF
ACCESS MM/SS/FF    | BmmssffF               | FFFFFFFF
STOP               | D01F                   | FFFF
PLAY               | D02F                   | FFFF
PAUSE              | D03F                   | FFFF
OPEN / CLOSE       | D04F                   | FFFF
FAST FORWARD       | D10F                   | FFFF
FAST REVERSE       | D11F                   | FFFF
FORWARD            | D12F                   | FFFF
REVERSE            | D13F                   | FFFF
KEY DIRECT         | D40F                   | FFFF
KEY IGNORE         | D41F                   | FFFF
CONTINUOUS PLAY    | D42F                   | FFFF
AUTO TRACK PAUSE   | D43F                   | FFFF
AUTO INDEX PAUSE   | D44F                   | FFFF
NORMAL SPEED       | D45F                   | FFFF
DOUBLE SPEED       | D46F                   | FFFF
Q-DATA REQUEST     | D50F 0000000000000000F | FFFF ................F
STATUS REQUEST     | D51F 01234F            | FFFF .....F
RESTORE            | F                      | F

Q-Data Request

TODO

Status Request

TODO

Sony CXD1800Q Interface

Write Selection to $21E2, then write/read byte by byte to/from $21E3.

Seems to be similar to CXD1196AR (which the datasheet could be found).

Selection - Size - Name
[WRITE MODE]
X1 - 8-bit  - DRIF
X2 - 8-bit  - CHCT
X3 - 8-bit  - DECT
X4 - 8-bit  - INMS
X5 - 8-bit  - INCL
X6 - 8-bit  - CI
X7 - 16-bit - DMAD
X9 - 16-bit - DMXF
XB - 16-bit - DRAD
0D - 8-bit  - PLBA

[READ MODE]
00 - 8-bit  - DMA
01 - 8-bit  - INST
02 - 8-bit  - STS
03 - 8-bit  - HFLG
X4 - 8-bit  - HMIN
X5 - 8-bit  - HSEC
X6 - 8-bit  - HBLK
X7 - 8-bit  - HMOD
08 - 8-bit  - SFIL
09 - 8-bit  - SCH
0A - 8-bit  - SMOD
0B - 8-bit  - SCI
0C - 16-bit - CMAD
XE - 8-bit  - MDFM
XF - 8-bit  - ADPC
18 - 16-bit - DMXF
1A - 16-bit - DMAD
1C - 16-bit - DRAD