Close
0%
0%

The 20c

welcome to the 20C, a modular 6502 computer with a very simple architecture designed from the ground up to learn and experiment.

Similar projects worth following
0 followers
Hello, welcome to the 20C, a modular computer with a very simple architecture designed from the ground up to learn and experiment.

Let's see together how to learn more easily how a computer works in depth, how to program it in assembly language and what happens electrically inside the computer with each line of our programs.

You can start by watching the videos where we perform some experiments (audio spanish, captions in English) or read the articles (English) where we detail how the computer works and how you can build it yourself.

The 20c is a learninfg platform consiting on hardware, articles and videos created to learn about computer architecture.

The articles

In the articles there we will find the theoretical framework for the architecture in general and each of its components, here we will see things such as what each pin of the ICs are used for (the pinout), what is the internal architecture of the registers they have and what functions each one performs. 

The videos

In the videos we develop the experiments for each part of the computer. For example, we can use two different CPU models, connect them to a protocol analyzer, add some LEDs or other devices and show how to read from the RAM and ROM step by step, electrically comparing what happens in the hardware simultaneously with what happens in the program we have created.

The Hardware

If I want to see how a Commodore 64 works, I have specific modules that reflect its components, such as a 6510 CPU or a CIA 6526 I/O device. To test an Atari 2600, we have 6507, RIOT and TIA CPU modules.

  • ROM
  • RAM
  • Address and Data BUS
  • GLUE LOGIC
  • I/O (PIA, VIA, CIA)
  • CLOCK
  • CONNECTOR for connecting modules
  • ARDUINO CONNECTOR to connect and Arduino and use it as a protocol analyzer

Having different modules allows me to make the combination that I require in my experiment, always being sure that I can connect the chip the right way respecting the expected pinout every time using the right socket.

Each module has a single function to easily explain the operation of the computer, you can clearly distinguish between the CPU, RAM, ROM, the data and address buses that connect the equipment and the input and output interfaces.

Each part of the module is clearly labeled by indicating the name of each pin and connector and having the connections between the different components of the same module clearly identified through the PCB traces.

We use headers that accept dupont type jumper wires that you do not need to strip or cut ad they come ready made in different lenghts. If you do not want to use so many cables we have a special module called CONNECTOR that connect to modules address and data buses.

Why Open Source

I owe much of what I learned about the 6502, the Commodore and computing in general to the Public University (hello UTN!!) and to thousands of hours of video and millions of words from people who wrote articles on their blogs, forums, The Internet Archive, and Social media groups on Facebook, Twitter and WhatsApp. All these people disinterestedly, or rather interested more than anything in disseminating knowledge, shared their hours of research with me and the world.

To add to these efforts, 20c is Open Source, with each episode while we talk about a module, its IC and the experiments we can carry, we will also talk about its circuit, how the PCB was created with diagrams included and how it is sent to manufacture. The Gerber files to create the board will be available on the OsoLabs.tech github after each episode (https://github.com/osolabstech/The20c/).

To Learn the right way

Since I started desinging and using The 20c, I am able to better express my love for computerts and it inner workings, basing everything on first principles and developing the experiments from there.

I invite you to join me in the voyage of fun learning, reading the articles, seeing the videos and building your own 20c

View all 5 instructions

Enjoy this project?

Share

Discussions

Does this project spark your interest?

Become a member to follow this project and never miss any updates