VCFe25.0
VCFe25.0 has been awesome, as always. This time, all the talks have been recorded and will be available soon.
The slides for our talk about our ATF150x toolchain are available here
The Steckschwein is a homebrew 8bit computer based on the 65c02 CPU.

The project began with a simple idea: create an 8‑bit computer that feels like it came straight out of the home‑computer era, yet works comfortably in today’s world. So instead of floppy disks, the system uses SD cards via SPI, blending classic design with modern convenience.
We started by using genuine period‑correct chips to stay as close as possible to the machines of that time. As those components have become harder to find, we’re gradually introducing modern replacements—always with the goal of preserving the original spirit.
The name “Steckschwein” comes from our breadboard beginnings—Steckbrett in German. With all those unruly wires, the prototypes behaved like little pigs, so the name stuck.
| Component | Specification |
|---|---|
| CPU | 65c02-CPU @ 10MHz |
| Memory | 512k SRAM / 512k Flash EEPROM |
| Storage | SD-Card (SPI) |
| Serial (rs232) | UART 16550 |
| IO | VIA 65c22 (2 Atari Joystick Ports + SPI (bit banged)) |
| Video | V9958 |
| Sound | YM3812 (OPL2) |
| Keyboard | PS/2 via ATmega8 over SPI |
| RTC | Maxim DS1306 |
Further reading and more details on Steckschwein Hardware.
It all started with a NOP. We put a 65C02 CPU on a breadboard and hard‑wired its data bus to $EA — the 6502’s NOP instruction, meaning “no operation.” The address bus was connected to LEDs, and the CPU clock ran at about 1 kHz. The question was simple: would the LEDs show something that looked like binary counting?
The photo series below highlights several milestones from the past years. For more detailed information about our development steps and processes, please visit our Blog.
VCFe25.0 has been awesome, as always. This time, all the talks have been recorded and will be available soon.
The slides for our talk about our ATF150x toolchain are available here
The DUART TL16c2752 is supposed to be a rather big upgrade to the Steckschwein “core”. Now two serial interfaces, with 64 byte FIFOs each, instead of only one interface with 16 byte FIFOs. Oh, the possibilities. Using one line to explore UART interrupt handling while still having another one to upload code. Cool!
With the 16C2752 being a part of the 16C550 family, we did expect it to be a simple drop in replacement for the latter one. As we all know, happiness is reality minus expectation, and oh boy did things get dreadful!
We are going back to breadboarding for designing what will be the base for the new Steckschwein computer core. By “core” we mean CPU, RAM, ROM and the glue logic which will be accommodated in the ATF1508 CPLD. In order to communicate with the outside word, we also count the 16C550 UART as part of the core.
Our main design goals are:
Other things that will be optimized are:
Since we introduced our new banking logic to access 512k RAM, our glue logic is being accommodated by a Xilinx XC9572 (without XL) CPLD. This component has long been deprecated when we started using it. We chose it because it was what we had available. The upgrade path would be the successor family XC95..XL. Those have been rather expensive lately, and finally AMD/Xilinx axed their whole CPLD line in 2024, leaving us at a dead end. Where do we go from here? The market for CPLDs is not exactly growing. Only a few manufacturers are still actively producing them.
After we moved this website to Codeberg Pages, we now finished moving our Repositories to www.codeberg.org.
The resources page has been updated with the new URLs.
Our repositories on GitHub will remain available as push mirrors, but may vanish at some point.
Codeberg is a non-profit, community-led effort that provides Git hosting and other services for free and open source projects.