ChipsGraphics & videoCRT controllers › Motorola MC6845

Motorola MC6845

1977

Motorola's widely used CRT controller, generating video timing for the IBM MDA/CGA, Amstrad CPC, BBC Micro and many terminals.

Machines

Emulators

EmulatorTypeLicenseSite
B-emdownloadableGPL-2.0Website ↗
Sharp X1onlineMITWebsite ↗
b2downloadableGPL-3.0Website ↗
beebjitdownloadableGPL-3.0Website ↗
cpcjsonlineGPLv3Website ↗

Reference & documentation

External technical references for programming Motorola MC6845 and for writing emulators.

ResourceTypeNotes
Motorola MC6845 CRTC Datasheet ↗DatasheetOfficial 6845 CRTC datasheet: registers, pinout, timing.
Motorola MC6845 CRTC Reference ↗PinoutPin functions: data bus, MA/RA lines, sync signals
The 6845/6545 CRTC operation (6502.org) ↗ProgrammingRegister programming, timing math, addressing modes
The Mighty CRTC 6845 (CPCRulez) ↗ProgrammingCounter/trigger model, variants, assembly examples
MC6845 CRTC Simplifies Video Displays (Motorola AN-0851) ↗ProgrammingMotorola app note on programming the 6845.
Motorola MC6845 CRTC Reference ↗ReferenceDetailed walkthrough of all 18 CRTC registers
CRTC emulation for MESS (Reenigne) ↗ReferenceCycle-accurate emulation approach and variant differences
CGA 6845 CRTC Phantom VSync Glitch ↗ReferenceR7 rewrite metastability quirk during active display
6845 Quirks and FPGA implementation (stardot) ↗ReferenceRVI, R0=1, end-of-frame latch, variant behaviors
floooh/chips mc6845.h emulator ↗SourceHeader-only cycle-accurate C emulator for the MC6845