Adria is my second attempt to build a simple computer, based on a WDC65C816 CPU.


My first attempt of a homebrew computer is Lilith. Lilith was/is a single board computer attempt.


I learned a lot from this project, but found that the single board idea is nice, but for creating additional hardware options I found it limiting. For example I missed some signals on the expansion ‘ports’ on Lilith. Also I had Lilith made with a Synertek SY6551 ACIA, I recoverd from an Apple Super Serial Card. This chip has limited PHI2 support (the -A variant is max 2 MHz) and I want to increase the clock of Adria in the future.

Why, what, how

For my next design I wanted to have these features:

  • Being able to use higher clock frequencies;
  • Using devices/parts which are better available;
  • Being able to switch parts “on the fly”;
  • Make available more (all?) signals to all slots;
  • Have the ability to include on-card ROM switched in;
  • Cards should be easy/cheap to produce (keeping costs low;

This is were I designed Adria, a modular 65C816 based computer (however, I think we can re-use the base design also for 65C02 based CPUs?). Mostly I broke down the schematics for Lilith and created sub projects, but with all lessons learned.

Being inspired by Ben Eater and Joe’s Computer Museum on YouTube and the RC2014 project(s), I designed Adria to be based on a “backplane” with connectors and the most basic devices. All other parts/functions will be based on modules/cards, which we plug into the connectors.

  • Size of backplane is 162mm x 95 mm;
  • Size of plug-in card is 95mm x 50 mm;
  • Uses “standard” 50-pin 0.1″, 2 row right angle headers;
  • By trial and error I found that the Farnell Multicomp headers and sockets have a “not to tight” feel;
  • Use as much 5V TTL as possible;
  • All address lines (A0..A15 and A16..A23) are available to all slots;

For now I have boards for the backplane, CPU, MMU/decoder (2x GAL22v10), RAM (128 kB) and ROM. For the ROM I created two boards, one to hold a 27/28C268 (E)EPROM (DIP), and another for 32-pin PLCC eon29F040 flash.


Adria runs at the moment with a Supermon 816 monitor (rewrite, as I use cc65/ca65), with an Intel Hex loader by Ross Archer.


This project is will be available in github when I have cleaned the files, added the latest updates, etc…
But it will be soon, very soon