Oric-1 & Oric Atmos Machine Hub

Tangerine 6502A workbench reference — Oric-1 (16K/48K) & Atmos architecture, 7905 negative-ground PSU quirk, HCS10017 ULA & DRAM diagnostics, active RGB SCART buffer schematic, and 34-pin expansion pinouts.

+9V DC Centre-Positive PSU & Why the Oric Uses a 7905 Negative Regulator!

Don't be fooled when you open an Oric-1 or Oric Atmos and see a 7905 (−5 V negative voltage regulator, `IC23`) bolted to the heatsink! Instead of regulating the +9 V line with a 7805, Tangerine's engineers tied the +9 V DC input tip directly to the system's +5 V VCC rail and placed the 7905 regulator on the negative return path to regulate the ground line 5.0 V below the positive rail! Because of this "positive-common" regulator topology, you must NEVER connect an Oric's power supply ground to the same DC power supply powering an external peripheral or monitor, or you will short out the 7905 regulator and send raw +9 V straight into the 6502A, ULA, and DRAM!

1 External Power Jack Spec

ParameterOric-1 & Oric Atmos Spec
Input Voltage+9.0 V DC (7.5 V–9.0 V Regulated Switching PSU recommended)
Current RatingMinimum 600 mA – 1.0 A
Barrel Plug2.1 mm inner × 5.5 mm outer DC barrel jack
PolarityCENTRE-POSITIVE (Tip = +9 V, Outer Barrel = Negative Return to 7905 In)

Why the ZX Spectrum PSU Kills an Oric: Both sit on UK benches, both are 9 V, and both use a 5.5×2.1 mm plug — but the ZX Spectrum is Centre-Negative while the Oric is Centre-Positive! Always check polarity before plugging in.

2 How to Measure Rails Correctly

  • Always clip your black DMM probe to a logic IC's GND pin (`Pin 20 of IC6 6522 VIA` or the outer shield of the RGB/Tape DIN socket) — NOT to the outer barrel of the 9 V DC input jack!
  • Measured between `6502A Pin 8 (VCC)` and `6502A Pin 1/21 (VSS)`, you must read +4.85 V to +5.15 V DC.
  • 7905 Pinout (`IC23` TO-220): Pin 1 = `GND (Logic V_CC/+5V bus!)`, Pin 2 (Middle/Tab) = `INPUT (Negative barrel from 9V jack)`, Pin 3 = `OUTPUT (Logic 0V VSS ground!)`. Because the metal tab of the 7905 is at −4 V relative to logic ground, never short the 7905 heatsink to the RF modulator shield!

3 16K Oric-1 (`4116`) vs 48K (`4164`) DRAM

  • 48K Oric-1 & All Oric Atmos Boards: Populated with eight single-rail 4164 (64K×1, +5 V only) DRAMs (`IC12–IC19`).
  • Rare 16K Oric-1 Boards: Populated with eight 4116 (16K×1) DRAMs that require an onboard DC-DC inverter stage for +12 V (Pin 8) and −5 V (Pin 1) alongside +5 V (Pin 9). If upgrading a 16K Oric-1 to 48K with 4164s, you must change the motherboard RAM link jumpers so +12 V/−5 V are removed from the DRAM sockets!
  • Switching Regulator Upgrade: To replace the hot 7905 (`IC23`) with a cool-running negative switching module, you must use a negative-output 7905 drop-in (such as a Mornsun `K7805M-1000R3` wired in negative mode or a dedicated `7905` buck converter) — a standard positive 7805 TSR-1 buck converter will NOT work in the 7905 footprint without modifying the PCB tracks!

System Selector: Oric-1 vs. Oric Atmos

Toggle between the 1983 Oric-1 (16K/48K) and the 1984 Oric Atmos to compare keyboards, BASIC ROM v1.0 vs v1.1 bugs, and motherboard revisions.

Oric Atmos 48K 1984–1986 • Red & Black Styling • BASIC v1.1

Released in early 1984 to address criticisms of the Oric-1's calculator-style keyboard and ROM bugs, the Oric Atmos houses an electrically identical core motherboard (Issue 3 / Issue 4 PCB) inside a striking red-and-black ABS wedge case with full-travel Futaba / Stackpole mechanical plungers, an updated 16 KB BASIC v1.1 ROM, and a modified cassette input conditioner for cleaner tape loading.

Key ICs & Designators (Issue 3 / 4 PCB)

  • IC3 (CPU): MOS / Rockwell / Synertek 6502A @ 1.00 MHz
  • IC1 (Custom ULA): Ferranti / Mietec HCS10017 / HLA011A / HAP201 (40-pin DIP) — generates 40×28 `TEXT` and 240×200 `HIRES` serial attribute RGB video, divides the 12.00 MHz crystal down to 1.0 MHz CPU `Φ2`, and handles interleaved DRAM refresh
  • IC6 (VIA): MOS / Synertek 6522A (`$0300–$030F`) — interfaces the AY-3-8912 sound chip, Centronics parallel printer port, cassette FSK input/output & motor relay, and keyboard row strobe
  • IC5 (PSG): General Instrument AY-3-8912A (28-pin DIP) — 3-channel sound generator (`PING`, `SHOOT`, `EXPLODE`, `ZAP` built into BASIC!) + 8-bit keyboard column selector on I/O Port A
  • IC4 (ROM): 16 KB Mask ROM (`BASIC v1.1`, `$C000–$FFFF`, 28-pin)
  • IC12–IC19 (RAM): 8× 4164 (64K×1, +5 V) DRAMs (with the top 16 KB `$C000–$FFFF` shadowed under the BASIC ROM and unlocked by disk interfaces using `/MAP`!)
  • IC7 (Audio Amp): LM386N-1 driving the internal piezo/moving-coil speaker

Oric-1 vs Oric Atmos Hardware & ROM Comparison

FeatureOric-1 (1983)Oric Atmos (1984)
Keyboard Type57 hard plastic "chiclet" keys over PCB dome contacts58 full-travel mechanical keycaps (with new FUNCT key!)
ROM VersionTangerine BASIC v1.0 (`24-pin` or `28-pin`)Oric Extended BASIC v1.1 (`28-pin`)
Tape Error CheckingBuggy in v1.0 (prints false errors or ignores checksums)Fixed checksum routines & improved schmitt-trigger input
64KB Overlay RAMPresent on all 8×4164 48K boards (16K hidden under ROM)Present on all Atmos boards (unlocked by Microdisc / Erebus)
Dual-ROM SwitcherCan add v1.1 ROM for Atmos gamesMany French/UK Atmos owners fit a 27C256 Dual-ROM (v1.0 + v1.1) for 100% Oric-1 game compatibility!

Diagnostic Checklist & IC12–IC19 DRAM Locator

Decoding the Oric's power-on black-and-white vertical bars, isolating HCS10017 ULA vs 4164 DRAM faults, and testing AY-3-8912 sound.

▦

"Black & White Vertical Bars" on Boot & IC12–IC19 4164 DRAM Locator

When you power on an Oric-1 or Oric Atmos, the HCS10017 ULA (`IC1`) immediately begins scanning screen RAM (`$BB80–$BFDF`) before the 6502A CPU clears it — which is why every Oric briefly displays a screen of thick black-and-white vertical bars for ~0.5 seconds before clearing to the white/black `ORIC EXTENDED BASIC` prompt! If the machine stays frozen on the black-and-white vertical bars (or shows coloured/corrupted blocks), use this decision tree:

IC12–IC19 4164 DRAM Bit-to-IC Map (Issue 3 / 4 PCB)

Data BitOric DRAM ICVisual Symptom When Stuck High / Low
Bit 0 (D0)IC12Rightmost pixel of every 6-pixel character cell stuck on/off; ASCII bit 0 flipped (`A` → `@`)
Bit 1 (D1)IC132nd pixel from right stuck; ASCII bit 1 flipped (`A` → `C`)
Bit 2 (D2)IC143rd pixel from right stuck; colour attribute codes change to wrong ink/paper
Bit 3 (D3)IC154th pixel from right stuck; flash/double-height serial attributes triggered randomly
Bit 4 (D4)IC165th pixel from right stuck; numbers turn into letters
Bit 5 (D5)IC17Leftmost pixel of every character cell stuck; serial attribute vs character mode bit corrupted!
Bit 6 (D6)IC18Every character cell turns into a coloured/flashing attribute block (`Bit 6 = 0` means Attribute!)
Bit 7 (D7)IC19Entire screen inverted (Black on White / Inverse video bit 7 stuck on!)

Why Frozen Vertical Bars = Good ULA!

  1. Good News: If you see clean, steady black-and-white vertical bars on screen, your HCS10017 ULA (`IC1`) video timing, 12 MHz crystal, and RGB/PAL video output are WORKING!
  2. Check 6502A Reset (`Pin 40`) & Clock (`Pin 37`): Probe 6502A Pin 40 (`/RES`) to verify capacitor `C21` (10 μF) isn't holding the CPU in reset, and verify 1.0 MHz `Φ0` clock from ULA Pin 15.
  3. Check the Two 74LS257 Address Multiplexers (`IC10` & `IC11`): Positioned right beside the 8 DRAM chips. A failed 74LS257 (especially Texas Instruments or Fujitsu batches from 1983) prevents the CPU from reading Zero-Page/Stack RAM (`$0000–$01FF`), freezing the machine on the initial vertical bars!
  4. Swap / Socket the BASIC ROM (`IC4`): A dead mask ROM at `IC4` also freezes the machine on the initial power-on bars. Or plug in an external Erebus / Microdisc (which disables internal ROM via `/ROMDIS`) containing a diagnostic ROM!
⚙

HCS10017 ULA Failure & "Constant Beep" Diagnosis

Pure black screen (no sync, no vertical bars) or a continuous tone/buzz from the internal speaker on power-up.

  1. Why the Oric Screams/Buzzes on a Failed Boot: When the AY-3-8912 (`IC5`) powers up, its internal tone/noise registers contain random uninitialised values until the 6502A executes the BASIC ROM reset routine (which silences the AY via the 6522 VIA). Therefore, a constant tone on boot simply means the 6502A crashed before reaching the VIA/AY initialisation code (usually due to bad RAM `IC12–IC19`, bad 74LS257 `IC10/11`, or bad ROM `IC4`)!
  2. True ULA Failure (`IC1` — `HCS10017` / `HLA011A` / `HAP201`):
    • If the 12 MHz crystal (`X1`) is oscillating into ULA Pin 2, +5 V is present on ULA Pin 40 (and GND on Pin 20), but there is no 1 MHz clock on ULA Pin 15 (`PHI`) and no 15.6 kHz sync on ULA Pin 17 (`SYNC`), the ULA has failed.
    • Always clean the 40-pin ULA socket and stick a low-profile aluminium heatsink on top of `IC1`.
    • Modern Drop-In Replacement: The community open-source Harlequin / CPLD Oric ULA replacement drops straight into the 40-pin `IC1` socket!
♫

Sound (`AY-3-8912` / `LM386`) & Keyboard (`6522 VIA`) Testing

No keyclick, `PING` / `EXPLODE` commands are silent, or entire keyboard rows/columns don't respond.

  1. Quick Audio Test in BASIC: Type PING or ZAP and press RETURN.
  2. Sound Present on RGB DIN (Pin 2), Silent on Internal Speaker: Proves the AY-3-8912 (`IC5`) is healthy! Check the 8-pin LM386N-1 audio amplifier (`IC7`), coupling capacitor `C10`, or measure the underside loudspeaker voice coil (~8–16 Ω).
  3. Both Sound AND Keyboard Dead:
    • On the Oric, the 6522 VIA (`IC6`) drives the 8 keyboard rows (via a `74LS145` BCD-to-decimal decoder or direct port lines) AND controls the AY-3-8912 (`IC5`) (whose 8-bit I/O Port A selects the 8 keyboard columns!) while comparing the result on `6522 PB3`.
    • If the machine boots to `Ready` with a blinking cursor, swap the socketed AY-3-8912 (`IC5`) or 6522 VIA (`IC6`) to restore both audio and keyboard scanning!

5-Pin DIN RGB Video to SCART / Upscaler Guide

Why a passive Oric RGB cable shows a dark or rolling picture on modern TVs — and how to wire the active emitter-follower SCART buffer.

5-Pin DIN RGB Socket Pinout DIN 180° • Viewed Looking at Rear Socket

The Oric-1 and Oric Atmos output RGB, Composite Sync, and Mono Audio on a standard 180° 5-pin DIN socket (`RGB`). However, the R/G/B outputs inside the Oric are driven through high-impedance 1 kΩ series resistors straight from the ULA, and there is NO +5 V/+12 V pin on the RGB DIN socket to trigger SCART Pin 16 (RGB fast-blanking)!

DIN-5 Pin (180°)Oric SignalInternal Source / ImpedanceSCART Target Pin
Pin 1REDULA Pin 19 via 1 kΩ (`R27`)SCART Pin 15 (Red In)
Pin 2 (Center)GND (0 V)Logic 0 V ground (output of 7905!)SCART Pins 4, 5, 9, 13, 17, 18, 21
Pin 3CSYNC (Composite Sync)ULA Pin 17 via 1 kΩ (`R25`)SCART Pin 20 (Composite Sync In)
Pin 4GREENULA Pin 21 via 1 kΩ (`R26`)SCART Pin 11 (Green In)
Pin 5BLUEULA Pin 22 via 1 kΩ (`R24`)SCART Pin 7 (Blue In)

Where to Tap Audio for Your SCART Cable: Notice that all 5 pins of the Oric's `RGB` DIN socket are used by `R, G, B, CSYNC, and GND`! For audio, run a twin fly-lead into the adjacent 7-pin `TAPE` DIN socket (Pin 3 = Line Audio Out, Pin 2 = GND) to feed SCART Pins 2 & 6!

Schematic Active RGB Buffer & SCART Pin 16 Blanking

When a 75 Ω SCART TV or OSSC/RetroTINK terminates the Oric's 1 kΩ internal RGB resistors, the voltage divider (`75 / 1075`) crushes the 5 V TTL signal down to just 0.35 V p-p (half brightness!). You can fix both the dim picture and the missing SCART Pin 16 RGB switch in two ways:

  Option A: Using OSSC / RetroTINK 5X / 4K (No External Power Needed!)
  ====================================================================
  * Wire DIN Red, Green, Blue, CSYNC, and GND straight to SCART.
  * Manually select "RGBS (SCART)" input on the OSSC / RetroTINK
    and raise Pre-ADC Gain to compensate for the 1kOhm internal resistors!

  Option B: For CRT SCART TVs (Driving SCART Pin 16 RGB Blanking)
  ====================================================================
  Tap +5V from Pin 34 of the Expansion Bus (or USB 5V ONLY if isolated
  via a 100R resistor to SCART Pin 16 & Pin 18 — NEVER tie an external
  non-isolated PSU ground to Oric GND if powered from the same strip!):

   +5V (Exp Pin 34) o----[ 150 Ohm ]----o SCART Pin 16 (Forces RGB Mode!)
   Oric GND (Pin 2) o-------------------o SCART Pins 4, 5, 9, 13, 17, 18

Internal 1 kΩ Resistor Bypass Mod: For full 0.7 V p-p RGB brightness without an active transistor cable, many Oric owners solder three 470 Ω resistors in parallel across the internal `R25, R26, R27` (1 kΩ) RGB output resistors on the motherboard (bringing them down to ~320 Ω)!

Cassette 7-Pin DIN & 34-Pin Expansion Port Pinouts

Wiring the 7-pin DIN Tape/Audio socket and the 34-way Microdisc / Cumana / Erebus / Twilighte expansion bus.

7-Pin DIN Cassette & Audio Output Port DIN 270° (`TAPE`)

Accepts a standard 5-pin 180° DIN plug in its central 5 pins (for tape EAR/MIC/GND) while using the two extra bottom pins (Pins 6 & 7) for the internal cassette motor relay (`REMOTE`):

DIN-7 PinSignal3.5 mm / 2.5 mm Target Plug
Pin 1TAPE OUT (to Recorder MIC)Red/Black 3.5 mm Tip (`SAVING`)
Pin 2 (Center)GND (0 V)3.5 mm Sleeve (Common Ground)
Pin 3AUDIO OUT (AY-3-8912 Line Out!)Tap this pin for clean external sound to your SCART cable or speakers!
Pin 4TAPE IN (from Recorder EAR)White/Green 3.5 mm Tip (`CLOAD` — needs ~1.5 V p-p high volume!)
Pin 5NCUnconnected
Pin 6 & Pin 7Cassette Motor Relay Contacts2.5 mm Sub-mini `REM` plug (closed during `CLOAD` / `CSAVE`)

Best Place to Tap Audio for a SCART Cable: Because the 5-pin RGB DIN does not carry audio on a dedicated pin on all Oric revisions, tapping Pin 3 (`AUDIO OUT`) and Pin 2 (`GND`) of the 7-pin `TAPE` DIN socket gives you crystal-clear line-level AY-3-8912 sound for your TV!

34-Pin Rear Expansion Bus (`EXPANSION`) 2×17 IDC Header

Connects the Oric Microdisc, Cumana Disk Interface, Jasmin, Erebus (TAP/DSK SD-card loader), or Twilighte / Locus boards directly to the 6502A bus:

Pin (Odd)SignalPin (Even)Signal
1/MAP (Pull low to replace ROM `$C000` with internal 16K overlay RAM!)2D0
3/ROMDIS (Pull low to disable internal 16K BASIC ROM `IC4`)4D1
5Φ2 (1.0 MHz CPU Phase 2 Clock)6D2
7R/W (CPU Read / Write)8D3
9/IO (`$0300–$03FF` Page 3 I/O Strobe)10D4
11/IOCTRL (Pull low to disable internal 6522 VIA at `$0300`!)12D5
13A1514D6
15A1316D7
17A1218A14
19A1020A11
21A822A9
23A624A7
25A526A4
27A328A2
29A130A0
31−5 V / NC32/NMI (Non-Maskable Interrupt)
33/IRQ (Interrupt Request)34+5 V DC / GND (Note: Pin 34 = GND on Issue 3/4; check schematic before drawing power!)

How `/MAP` (Pin 1) & `/ROMDIS` (Pin 3) Unlock Full 64KB RAM: Although the Oric Atmos is advertised as "48K", it actually has 64 KB of 4164 DRAM installed! When a Microdisc or Cumana drive pulls Pin 1 (`/MAP`) low, the HCS10017 ULA unmaps the internal BASIC ROM at `$C000–$FFFF` and exposes the hidden top 16 KB of DRAM so Sedoric / Oric DOS can run in a full 64 KB RAM space!

Chip & EPROM Reference

Interactive IC Pinout Finder cards plus HCS10017 ULA and BASIC v1.0 / v1.1 EPROM upgrade notes.

Oric Custom ULA (`IC1`) Part Number Cross-Reference

All three part markings found in `IC1` across Oric-1 and Oric Atmos production are 100% pin-for-pin identical:

ULA MarkingManufacturerNotes
HCS10017Hughes / Plessey / FerrantiMost common marking on both Oric-1 and Oric Atmos boards.
HLA011A / ULA1O10PFerranti / MietecEarly Oric-1 marking; identical pinout and serial attribute logic.
HAP201 / 10017Late ProductionFound on late 1984/85 Atmos and Eureka/Nova 64 units.

BASIC ROM (`IC4`) EPROM Substitution & Jumper Links

On Issue 3 and Issue 4 motherboards, the 28-pin ROM socket at `IC4` is surrounded by solder jumper pads that configure it for either a 28-pin mask ROM (`23128`) or a standard 27C128 / 27C256 UV EPROM:

EPROM TypeSizeInstallation & Link Notes
27C128 (16 KB, 28-Pin) 16 KB Direct 28-pin fit! Check that Pin 27 (`/PGM`) and Pin 28 (`+5V`) are tied high via the motherboard ROM links (or bend out Pin 27 if the board routes an inverted enable signal there and tie Pin 27 to Pin 28 `+5V`).
27C256 (32 KB, 28-Pin)
(Dual v1.0 / v1.1 Switcher)
32 KB Burn `BASIC10.ROM` (`16KB`) into `$0000–$3FFF` and `BASIC11B.ROM` (`16KB`) into `$4000–$7FFF`. Lift Pin 27 (`A14`), solder a 4.7 kΩ pull-up resistor from Pin 27 to Pin 28 (`+5V`), and wire a switch from Pin 27 to Pin 14 (`GND`) to toggle between Oric-1 and Atmos modes!

Resources & Further Reading

Blog posts, interactive bench tools, and essential Oric-1 & Atmos communities.

Bench Tools & Machine Hubs

External Oric Resources

Theme Palette

Default Dark
High-contrast dark
Amber Terminal
Monochrome amber
Matrix CRT
Phosphor green
Workbench Light
Clean light mode

Audio & Display

Relay Click Sounds Web Audio API — soft mechanical clicks
CRT Scanline & Flicker Pure CSS overlay effect

System Info

Customization Panel Theme preference, audio FX, and CRT overlay settings are saved to your browser's localStorage and persist between visits. No cookies or server-side storage is used.
Keyboard Shortcuts Press Esc to close this panel. Use the header moon/sun icon to cycle themes.