CD drive: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
 
(39 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[File:Cd2_cdboard1.jpg|thumb|right|Top-loading drive control board.]]
[[File:Cd2_cdboard1.jpg|thumb|right|Top-loading drive control board.]]


The part that fails before everything else in [[CD systems]]. Made of a control board and an [[optical pickups|optical pickup]].
The part that makes you wait and fails in [[CD systems]]. The ones used in the NeoGeo consoles are very similar to those found in the Sega CD. They're basically enhanced audio CD drives, which are also able to read CD-ROM data tracks.
 
Made of a control board and an [[optical pickups|optical pickup]].


The NeoGeo CD top-loading model drive was made by Sony. The [[CDZ]] one was made by Sharp ?
The NeoGeo CD top-loading model drive was made by Sony. The [[CDZ]] one was made by Sharp ?
Line 13: Line 15:
=Connections=
=Connections=


Some say the protocol was standard for the time, but clear information is hard to find. This was guessed from the [[system ROM]] disassembly, Sega MegaCD documents and a logic analyzer.
Some say the protocol was standard for the time, but clear information is hard to find. This was guessed from the [[system ROM]] disassembly, Sega CD documents and a logic analyzer.


==Top-loading model==
==Top-loading model==
Line 275: Line 277:
|}
|}


=Communication=
==Capacitor values==


CDD to CDC communication uses a special protocol handled by the [[system ROM]]. {{Chipname|NEO-MGA}} provides the I/Os through registers {{Reg|REG_CDDCTRL}}, {{Reg|REG_CDDINPUT}}, {{Reg|REG_CDDOUTPUT}}.
PCB CD Controller Type NO.4 F3801AF


[[File:Cdunit4bit.png]]
{| class="regdef"
 
|'''Capa #'''
* The CDD regularly (~64Hz not 75) sends a low pulse on its /IRQ output to initiate a data exchange.
|'''Type'''
* HOCK goes low, indicating that the CDC aknowledges the request. The 4-bit bus direction is set to CDD to CDC.
|'''Value'''
* CDCK goes low, indicating that the CDD is starting to send its status data (A).
|'''Voltage'''
* HOCK goes high and the CDC reads the status data (A).
|-
* CDCK returns high.
| C101
* HOCK returns low.
| POLARISED
* CDCK goes low again, the B word is ready.
| 47 uF
* The cycle continues on for 10 words...
| 16V
 
|-
(The delay here is not necessary, it is seen on the NeoGeo CD because of the [[system ROM]] preparing stuff).
|-
 
| C102
* HOCK goes low and the 4-bit bus direction is reversed (CDC to CDD). The first command word is set (K).
| POLARISED
* CDCK goes low, indicating that the CDD has read the data (A).
| 47 uF
* HOCK returns high.
| 16V
* CDCK returns high.
|-
* HOCK goes low again, the B word is ready.
|-
* The cycle continues on for 10 words...
| C108
 
| SMD 0805
==Status data (green)==
| 100 nF
 
|
* A: Status
|-
** 0=Stop mode
|-
** 1=Playing data or music
| C109
** 2=Seeking
| SMD 0805
** 4=Paused
| 100 nF
** 5=Tray opened
|
** 6=Comm. checksum error
|-
** 7=Command error
|-
** 8=Function error (mech/laser ?)
| C110
** 9=Reading TOC
| SMD 0805
** 10=Sled moving
| 100 nF
** 11=Couldn't focus, no disk
|
** 12=Sled at edge, end of disk
|-
** 14=Tray moving
|-
** 15=In test mode
| C112
* B: Status
| SMD 0805
* C: Minutes high digit
| 35 nF
* D: Minutes low digit
|
* E: Seconds high digit
|-
* F: Seconds low digit
|-
* G: Frames high digit
| C113
* H: Frames low digit
| POLARISED
* I: Extension
| 330 uF
* J: Checksum (see below)
| 16V
 
|-
==Command data (red)==
|-
 
| C114
* K: Command
| POLARISED
* L~S: Depends on command (see below)
| 100 uF
* T: Checksum (see below)
| 16V
 
|-
==Checksum==
|-
 
| C116
The checksum digit is the sum of all 9 previous digits, + 5, XOR 15, modulo 15: ((sum + 5) ^ 0xF) & 0xF.
| SMD 0805
 
| 100 nF
==Commands==
|
 
|-
See [[CD drive commands]].
|-
 
| C117
==Adjustment pots==
| SMD 0805
| 100 nF
|
|-
|-
| C118
| SMD 0805
| 35 nF
|
|-
|-
| C119
| SMD 0805
| 25 nF
|
|-
|-
| C124
| POLARISED
| 100 uF
| 16V
|-
|-
| C125
| SMD 0805
| 35 nF
|
|-
|-
| C127
| POLARISED
| 4,7 uF
| 16V
|-
|-
| C128
| SMD 0805
| 100 nF
|
|-
|-
| C131
| SMD 0805
| 100 nF
|
|-
|-
| C132
| POLARISED
| 1 uF
| 50V
|-
|-
| C133
| POLARISED
| 47 uF
| 16V
|-
|-
| C134
| POLARISED
| 33 uF
| 25V
|-
|-
| C137
| SMD 0805
| 100 nF
|
|-
|-
| C141
| SMD 0805
| 100 nF
|
|-
|-
| C143
| POLARISED
| 0,47 uF
| 50V
|-
|-
| C144
| SMD 0805
| 1,5 nF
|
|-
|-
| C145
| SMD 0805
| 1,5 nF
|
|-
|-
| C146
| SMD 0805
| 100 nF
|
|-
|-
| C149
| SMD 0805
| 60 nF
|
|-
|-
| C154
| SMD 0805
| 35 nF
|
|-
|-
| C155
| POLARISED
| 100 uF
| 16V
|-
|-
| C159
| SMD 0805
| 60 nF
|
|-
|-
| C161
| POLARISED
| 100 uF
| 16V
|-
|-
| C166
| POLARISED
| 100 uF
| 16V
|-
|-
| C167
| SMD 0805
| 12 pF
|
|-
|-
| C168
| SMD 0805
| 4 pF
|
|-
|-
| C170
| SMD 0805
| 1 uF
|
|-
|-
| C171
| SMD 0805
| 1 uF
|
|-
|-
| C180
| SMD 0805
| 100 nF
|
|-
|-
| C181
| SMD 0805
| 100 nF
|
|-
|-
| C182
| SMD 0805
| 100 nF
|
|-
|}


To do !
*Big thanks to Domkid for letting me borrow his Neo CD!


[[Category:Chips]]
[[Category:Chips]]
[[Category:Repairs]]
[[Category:Repairs]]
[[Category:CD systems]]
[[Category:CD systems]]

Latest revision as of 07:36, 1 November 2025

File:Cd2 cdboard1.jpg
Top-loading drive control board.

The part that makes you wait and fails in CD systems. The ones used in the NeoGeo consoles are very similar to those found in the Sega CD. They're basically enhanced audio CD drives, which are also able to read CD-ROM data tracks.

Made of a control board and an optical pickup.

The NeoGeo CD top-loading model drive was made by Sony. The CDZ one was made by Sharp ?

The control board has:

  • A 4-bit mask ROM MCU (Sony CXP5084), taking care of operation sequencing and communication with the NeoGeo.
  • A DSP (Sony CXD2500) to process analog data from the pickup.
  • A servo controler (Sony CXA1372) to drive the pickup coils for tracking and focus.
  • A spindle, sled (and tray) motor driver.

Connections

Some say the protocol was standard for the time, but clear information is hard to find. This was guessed from the system ROM disassembly, Sega CD documents and a logic analyzer.

Top-loading model

Connector pinout, directions are from CDD (CD Drive) to CDC (CD Controller):

Pin # Name Type Direction Description
1 CDCK Clock Output Communication clock to CDC
2 ? ? ? High ?
3 /IRQ Signal Output Asks the CDC for a data exchange (low pulse at ~64Hz)
4 ? ? ? High ?
5 HOCK Clock Input Communication clock from CDC
6 D0~3 Data Both 4-bit command/status data bus
7
8
9
10 ? ? ? ?
11 BCLK? Clock Output Serial bit clock, should be 44100 * 32 = 1.4112MHz
12 SDATA Data Output Serial data
13 LRCK Signal Output I2S word clock, should be 44100Hz. Audio L/R switch for the DAC.
14 D/M ? Signal Output Data/Music. Low during music playback ?
15 GND Power - Ground
16 5V Power - +5V for logic
17 9V Power - +9V for motors and coils
18 GND Power - Ground

Missing: /RESET, C2PO, and 16MHz.

Front-loading model

Connector pinout, directions are from CDD (CD Drive) to CDC (CD Controller):

Pin # Name Type Direction Description
1 SGND Power - Ground
2 SVCC Power -
3 VCC Power -
4 WFCK Clock Output Write Frame Clock
5 GND Power - Ground
6 SCOR Pulse Output Subcode sync
7 MUTE ?
8 SBSO Data Output Subcode data
9 EXCK Clock Input Subcode clock
10 EMP ? ? EMPty ?
11 DOUT Data Output ?
12 6MHz Clock ? ?
13 LRCK Clock Output DATA L or R channel (44100Hz)
14 DATA Data ? Data stream
15 BCLK Clock Output DATA bit clock (44100 * 24 * 2 = 2.12MHz)
16 C2PO Data Output Error flag
17 DB0~3 Data Both 4-bit command/status data bus
18
19
20
21 HOCK Clock Input Communication clock from CDC
22 RESET Pulse Input The name says it all
23 /IRQ Signal Output Asks the CDC for a data exchange
24 L-MUTE ?
25 CDCK Clock Output Communication clock to CDC

Capacitor values

PCB CD Controller Type NO.4 F3801AF

Capa # Type Value Voltage
C101 POLARISED 47 uF 16V
C102 POLARISED 47 uF 16V
C108 SMD 0805 100 nF
C109 SMD 0805 100 nF
C110 SMD 0805 100 nF
C112 SMD 0805 35 nF
C113 POLARISED 330 uF 16V
C114 POLARISED 100 uF 16V
C116 SMD 0805 100 nF
C117 SMD 0805 100 nF
C118 SMD 0805 35 nF
C119 SMD 0805 25 nF
C124 POLARISED 100 uF 16V
C125 SMD 0805 35 nF
C127 POLARISED 4,7 uF 16V
C128 SMD 0805 100 nF
C131 SMD 0805 100 nF
C132 POLARISED 1 uF 50V
C133 POLARISED 47 uF 16V
C134 POLARISED 33 uF 25V
C137 SMD 0805 100 nF
C141 SMD 0805 100 nF
C143 POLARISED 0,47 uF 50V
C144 SMD 0805 1,5 nF
C145 SMD 0805 1,5 nF
C146 SMD 0805 100 nF
C149 SMD 0805 60 nF
C154 SMD 0805 35 nF
C155 POLARISED 100 uF 16V
C159 SMD 0805 60 nF
C161 POLARISED 100 uF 16V
C166 POLARISED 100 uF 16V
C167 SMD 0805 12 pF
C168 SMD 0805 4 pF
C170 SMD 0805 1 uF
C171 SMD 0805 1 uF
C180 SMD 0805 100 nF
C181 SMD 0805 100 nF
C182 SMD 0805 100 nF
  • Big thanks to Domkid for letting me borrow his Neo CD!