Building a SCSI-to-IDE bridge for the X68000 on a custom PCB

Modern storage is abundant, but the Sharp X68000’s native disk interface is not IDE. Its SCSI or model-specific SASI hardware expects a SCSI-style target, while an ATA disk listens to a completely different set of registers and handshake signals. That mismatch is why an ordinary cable cannot turn an IDE drive into an X68000 hard disk. A bridge that is only a connector adapter will look promising on the bench and still fail every read, write, or error recovery.

Building a custom PCB for this job means designing a SCSI target and an ATA host, then making them behave like one device. The design must satisfy the X68000’s boot code, preserve enough SCSI semantics for normal operation, and avoid damage to a connector or controller that may be hard to replace. This article follows a practical path from bus reconnaissance through PCB layout, firmware, testing, and public documentation. It is aimed at builders in Australia, where local swap meets and online marketplaces can supply both ordinary parts and hard-to-find Japanese spares.

Start with the storage behaviour

Identify the exact X68000 revision before choosing any IC. Depending on the model and installed storage options, the original disk path may expose a SASI subset or narrow SCSI. The bridge should therefore be designed around the signals actually present at the 50-pin connector, not a generic SCSI pinout assumed from a desktop. A logic analyser, the machine’s service information, and a careful inspection of existing terminators will show whether the bus is single-ended and eight-bit and where the X68000 expects termination.

Next, record what the boot ROM asks a disk to do. INQUIRY, TEST UNIT READY, READ CAPACITY, READ, WRITE, and REQUEST SENSE are likely to matter, but the exact sequence can vary by model and BIOS. Watch for sector-size assumptions, capacity reporting, and any attempt to read a partition table. A bridge that passes a generic disk test may still need the right SCSI identity, geometry, or sense data before the X68000 will mount it.

Expansion work on the same platform provides useful context for the mechanical and electrical decisions. The Nereid-X expansion board shows how new circuitry can be added without losing the character of the original machine. It is not a ready-made SCSI converter, but its published approach is a good reminder to preserve connectors, document pin assignments, and make each board independently testable before connecting it to a valuable X68000.

Define the electrical boundary

Keep the SCSI and ATA sides physically and logically distinct. SCSI carries REQ/ACK handshakes, phase and message signals, parity, and reset; ATA presents a register file, interrupt, and device-selected lines. Most X68000 installations use the older single-ended SCSI style, so differential transceivers would add cost without helping. Conversely, an ATA target may require 3.3 V-compatible strobes or level translation if the bridge controller runs at a lower voltage.

The IDE side needs a proper 40-pin ATA header, a defined master/slave role, and enough clean 5 V power for the chosen drive. Older spinning disks may also need 12 V for spin-up, whereas a 2.5-inch SSD may need only 5 V. Add a keyed connector or a mechanically protected header so the notorious ATA cable cannot be fitted backwards. Bulk and local decoupling, reverse-polarity protection, and a controlled reset arrangement are cheap insurance.

Australian mains power is nominally 230 V and uses Type I plugs, while the original Japanese machine was designed around 100 V. That difference does not belong on the logic board. Use an enclosed, certified external supply with an Australian plug, or have the internal supply rebuilt by someone qualified, and never apply mains voltage to the PCB. A compact metal enclosure may solve grounding and connector strain, but it must remain serviceable rather than becoming a sealed retrofitted brick.

Translate the protocol in firmware

The central design choice is to treat the bridge as two cooperating bus engines. One side behaves as a SCSI target: it responds to the X68000’s bus-free detection, selection, command, and data phases. The other behaves as an ATA host: it selects the drive, writes the task file, transfers data, and reads status and error registers. A microcontroller can handle policy and error translation, while a CPLD or FPGA handles the timing-critical handshakes, FIFO, and optional DMA.

Command mapping is more than copying byte names. READ and WRITE can use ATA PIO or DMA, but INQUIRY, TEST UNIT READY, MODE SENSE, SYNCHRONIZE CACHE, and REQUEST SENSE must be synthesised or carefully emulated at the SCSI side. Report capacity in the form expected by the boot code, translate byte counts correctly, and decide whether to expose 512-byte logical sectors or reject a 4Kn drive. Stable vendor, product, and revision strings matter because operators use them to identify the mounted device.

Error handling can make the difference between a disk and a pile of retries. Convert an ATA error register into CHECK CONDITION and meaningful SCSI sense data, including the original ATA error in a vendor-specific area. Define timeouts for a missing drive, a stalled handshake, and an aborted command. Support SCSI bus reset, request-sense behaviour, and, if the target advertises it, disconnect and reconnect. Parity generation and checking must match the bus on which the board will actually operate.

Choose parts and plan the layout

For the first prototype, a small FPGA or CPLD plus a microcontroller is more realistic than old plug-in SCSI chips. Legacy SCSI controller ICs are often difficult to source, locked to vendor firmware, or intended for the opposite bus role. Commercial ATA controller blocks can save effort, but they may hide the command and error hooks needed for transparent SCSI operation. Keep the hardware generic enough that a later board revision can use a faster ATA interface without rewriting the whole design.

On the PCB, give SCSI and ATA their own connector zones and return the useful connector pins to a quiet ground plane. A four-layer board is a sensible starting point: uninterrupted planes, short high-speed paths, and a controlled impedance arrangement are easier to debug than a crowded two-layer board. Place regulators and switching supplies away from the bus circuitry, fit bulk capacitors near the drive connector, and put local decoupling beside every IC. Series termination, pull-ups, and configurable SCSI termination need clear silkscreen notes.

Parts procurement in Australia needs a little judgement. General connectors, wire, and prototyping tools are available from local electronics shops such as Jaycar, while eBay Australia, Gumtree, and Facebook Marketplace often have used drives and obsolete adapters. Compare A$ prices including GST, seller location, and return terms; an imported Japanese board may use 100 V parts or a different termination scheme. Practical engineering references can also help when comparing controller options, but verify timing and availability independently.

Test without risking the X68000

Bring the board up without an X68000 attached. First verify power rails, reset polarity, and the absence of shorts with the drive disconnected. Then use a known-good SCSI initiator or a test harness to issue commands and watch REQ/ACK, parity, and the ATA status lines with a logic analyser. Check that the SCSI bus is terminated only at its physical ends. A desktop SCSI controller can provide a convenient test platform when one is already part of the local retrocomputing scene.

Once basic reads and writes work, run a deliberate test suite: inquiry data, sequential and random transfers, repeated writes to verify data integrity, flush or cache-synchronise commands, syntax-error cases, unplug tests, and power-cycle recovery. Compare reported capacity with the drive’s actual usable sectors, and test the exact X68000 BIOS and partitioning tools rather than assuming ATA and SCSI geometry are interchangeable. Save raw command logs; they turn a vague failure into a repeatable fault.

Australian collectors can make good test partners without posting a machine through the post. Swap meets in Sydney, Melbourne, and other capital cities often include people with SCSI hosts, odd cables, and diagnostic equipment, while a Gumtree pickup can avoid the wait for an adapter to arrive. For a board that must travel, use tracked Courier Australia or Australia Post with suitable insurance, and retain the original packaging. Photograph connector orientation before dispatch; a cheap PCB can be replaced, but a damaged vintage socket cannot.

Share a reproducible design

A custom board becomes useful to the community when the failed experiments are published with the successful one. Put the schematic, PCB Gerbers, drill files, bill of materials, firmware source, and programming instructions in one archive. Include board photographs, test equipment settings, accepted drive models, and a short troubleshooting guide. Explain any departures from a standard connector or SCSI behaviour, because an undocumented workaround can cause the next builder to damage an original machine.

Source availability matters as much as the hardware. Prefer open firmware and a permissive hardware licence, and list substitute parts that were actually tested rather than a speculative wish list. A stable revision number prevents support discussions drifting between incompatible board versions. Documentation written in plain English can include the Australian phrase “have a go” without losing precision: a proper test log should tell a reader exactly what was attempted and what happened.

The final step is to turn the prototype into a reproducible community project. Place the design files and results on X68K.NET alongside the Nereid-X material already documented there, then invite corrections and compatibility reports through the site’s community links. Record whether the bridge is intended only for experimentation or has enough testing to support routine use. Build the board, verify every command path, and publish the schematics, firmware, PCB files, and test results so another X68000 owner can reproduce it.

Nereid-X Expansion Board

A personally-produced LAN+USB+Memory expansion board for Sharp X68000 series computers. Multiple production runs were offered, including a final batch and a later revival reproduction run.

Power Supply Repair

X68 power supply repair and modification services were offered by the site owner, with documentation shared through diary entries spanning 2001–2006.

Server & Networking

Notes on FreeBSD administration, ISP changes, server migration, and networking topics. The site itself ran on FreeBSD with the hns diary system and Namazu search integration.

A two-ink risograph print in muted slate-blue and charcoal on off-white paper, showing a stylized desktop computer monitor beside a circuit board with soft geometric trace lines, conveying a calm retro-computing workshop atmosphere. A two-ink risograph print in deep purple and dark grey on cream stock, depicting a compact expansion card with connector ports and subtle Japanese technical annotations, evoking a hobbyist electronics bench. A two-ink risograph print in teal and charcoal on warm white paper, showing a server rack silhouette with soft network-line motifs and a small weather icon, suggesting a personal server room corner.

Get in touch

X68K.NET connects Sharp X68000 enthusiasts through community links and shared projects. Reach out with questions about the Nereid project or X68 resources.