A 6502 Based Computer on a Single Breadboard

Ғылым және технология

In this video I build a complete 6502 based computer on one breadboard using the 28 pin 6502 version, the 6507.
Come join the free clubhouse on Discord: / discord
In the next video I show how you can use #i2c to control thousands of different peripherals - and make an Arduino-like PCB for it!
• I²C on a 6502 Single B...
Source code and schematic: github.com/AndersBNielsen/650...
My mentioned videos:
MS Basic on a 6502: • Microsoft BASIC from 1...
My sub-20$ 6502 computer: www.youtube.com/watch?v=7Sufp...
My video on the 6532 RIOT: • The amazing 6502 suppo...
Fixing an IBM 5160 MB: • Fixing an IBM PC XT 51...
Credits:
Lot's of 6502 stuff on 6502.org/
Ben' Eater's SUPER educational 6502 series: eater.net/6502
Garth Wilson's 6502 Primer that Ben used(and anyone building a 6502 project should check out): wilsonminesco.com/6502primer/p...
Fair use clips from "Close Encounters of the Third Kind - 1977, renewed 2005, 1980, 1998 Columbia Pictures Industries, Inc. All Rights Reserved."
Atari 2600 photo
Evan-Amos, Public domain, via Wikimedia Commons

Пікірлер: 105

  • @TheGamingComputerBomb
    @TheGamingComputerBomb Жыл бұрын

    Oh, so this is what a single board computer is.

  • @GregStrike
    @GregStrike Жыл бұрын

    I've never used those Riot chips before but they seem interesting! Thanks Anders!

  • @dagobertkrikelin1587
    @dagobertkrikelin1587 Жыл бұрын

    I've never heard of the 6507 - and I'm old! :)

  • @petermuller608
    @petermuller608 Жыл бұрын

    Great video, especially leaving in the debugging part. This is an interesting take on the 6502 breadboard PC :)

  • @RistarteYoshiCH
    @RistarteYoshiCH Жыл бұрын

    Thank you for making this vid! The RIOT is truly a lifesaver chip in this case xD. I also got inspired by your 65uino project and is in the process of making something similar except with a 6502 40dip. I guess it'll be more similar to Ben Eater's 6502 but Uno-sized.

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    You’re welcome! New one coming soon. I have a feeling you’ll find that you need to switch to SMD for the rest if you want to fit a 40 pin 6502 in an Uno form factor :) Impossible to fit more than one 40 pin dip if you also want to fit a third 28-40pin DIP.

  • @jasonblewis
    @jasonblewis Жыл бұрын

    Amazing project! Well done

  • @oscar-n-mori
    @oscar-n-mori Жыл бұрын

    Congratulations Anders!

  • @cbmeeks
    @cbmeeks Жыл бұрын

    Great video as usual. Thanks!

  • @bzoli5706
    @bzoli570610 ай бұрын

    As you said the 555 IC can blink a LED, but with the button shorted a resistor in the timing circuit the 555 IC also can do what your program does, two different blinking rate. But for example blinking an SOS Morse code is not possible with the 555 IC but you can code it in your 6502 based program. Sorry for my poor English.

  • @AndersNielsenAA

    @AndersNielsenAA

    10 ай бұрын

    Good point :)

  • @luheartswarm4573
    @luheartswarm4573 Жыл бұрын

    what an amazing project!

  • @Barnaclebeard
    @Barnaclebeard Жыл бұрын

    Darn near got a 2600 on a breadboard, there.

  • @vanhetgoor
    @vanhetgoor7 ай бұрын

    Don Lancaster was a wise man, it was nice that you quoted him.

  • @AndersNielsenAA

    @AndersNielsenAA

    7 ай бұрын

    I was sad to hear he passed a few months after I said that. I would've loved to have a talk with him about pretty much anything.

  • @AndersNielsenAA
    @AndersNielsenAA9 ай бұрын

    I now have a free Discord server - come say hi in the hackerspace clubhouse! discord.gg/kmhbxAjQc3

  • @HansOtten
    @HansOtten Жыл бұрын

    A 6532 based 6502 system is so simple! My compliments for this video and design! Would a larger 6502 and a smaller 28C16/64 EEPROM be possible too? 6507 are rare nowadays.

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    Maybe a 24 pin C16 and a 6502 would barely fit - maybe by using the crystal oscillator in the schematic instead of the can since that takes up more space than it should. Otherwise you’d still be two pins width short, as I already already use the whole width. @HansOtten as in, retro.hansotten.nl/6502-sbc/ ? If so, thank you very much for that resource!

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    Also - the 6507 seems plentiful in the Asian markets. I think I only had to pay 1-2$ :)

  • @MostlyPennyCat

    @MostlyPennyCat

    Жыл бұрын

    They're available for £1 on AliExpress.

  • @MostlyPennyCat

    @MostlyPennyCat

    Жыл бұрын

    I'm particularly excited by all the Yamaha FM Synthesis chips for a pound on AliExpress 😁

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    @James, me too :D

  • @MikeK8LH
    @MikeK8LH Жыл бұрын

    Thank you for another nice video, Anders. Can you add a schematic in PDF format on your GITHUB, please?

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    I just uploaded the PDF to the hardware folder on Github.

  • @krallja
    @krallja Жыл бұрын

    6507+RIOT is 2/3 of an Atari 2600!

  • @krallja

    @krallja

    Жыл бұрын

    oh lol, you got there at 19:57 😂

  • @GodmanchesterGoblin
    @GodmanchesterGoblin Жыл бұрын

    Neat. Of course, with only 4k bytes accessible in the ROM due to the limited address space and simple decoding, you could have saved two more pins in breadboard length by going truly retro and using a 2532 EPROM instead of the 27512 monster. 😀

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    Indeed :) I used the w27c512 because - strangely - they are cheaper and I have a good bunch of them... And I don't need a UV eraser. I really wish I had a box of '70's PROMs...

  • @8088argentina
    @8088argentina Жыл бұрын

    Nice, i suscribed

  • @dgnrlento
    @dgnrlento3 ай бұрын

    Gracias

  • @AndersNielsenAA

    @AndersNielsenAA

    3 ай бұрын

    De nada!

  • @markgreco1962
    @markgreco1962 Жыл бұрын

    New subscriber!

  • @NicoDsSBCs
    @NicoDsSBCs Жыл бұрын

    I'd like to review this SBC. But not sure if the browser video playback would be good enough for my subscribers 😅And can it play Xonotic? Nice job to get this working. My hat goes off. Greetings.

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    In that case I suggest you make your own - instructions provided in the video and Github :D Xonotic might require a RAM upgrade of a few orders of magnitude from the current 128 bytes XD

  • @prometheus4130
    @prometheus4130 Жыл бұрын

    Big Apple II vibes, or a modern version of the Heathkit MCU kit (although 68000 based)

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    I really wish I could've played with an H100 kit :)

  • @prometheus4130

    @prometheus4130

    Жыл бұрын

    @@AndersNielsenAA I still have it 😎

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    @@prometheus4130 Oh the envy! :D

  • @tr1p1ea
    @tr1p1ea Жыл бұрын

    Awesome, think you can do it with a z80?

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    I think I'll need a bigger breadboard if I don't start stacking IC's :)

  • @petermuller608
    @petermuller608 Жыл бұрын

    Can the RIOT memory mapping be changed? Would not be great if it's fixed at 0x80..., cluttering the zero page

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    Like I said in the video RS can be connected to A9 to put only RAM in zp + stack(like the Atari 2600). But with I/O in zp you get faster I/O and there’s only RAM enough for half of zp anyway.

  • @chexo3
    @chexo3 Жыл бұрын

    Huh, RIOT chips seem useful! You should consider socketing the bigger ICs here for ease of changing them. At least the EEPROM?

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    A breadboard really is one big socket ;-) I've wired it so it's pretty easy to pop out the ROM. Most of the development for this board I'll probably be testing on my 6502SBC r1 though, since that'll accept code wirelessly.

  • @chexo3

    @chexo3

    Жыл бұрын

    @@AndersNielsenAA huh. How does that work? Also, went and looked up the RIOT chips. It seems there was a variant with ROM too, RRIOT. Unfortunately, it is mask ROM, not EPROM/EEPROM. So no reprogramming it… only whatever the original program on the chip was.

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    @@chexo3 That’s the 6530 - what MOS used in the KIM-1 :) I made another video on the wireless interface of my SBC r1.

  • @kBashumUclugam
    @kBashumUclugam4 ай бұрын

    Hi 👋 cool project.But can we use 6522 as i/o port and not 6532. And for example, if we need to connect ram?

  • @AndersNielsenAA

    @AndersNielsenAA

    4 ай бұрын

    Sure you can :) The limit of "on a single breadbord" if pretty arbitrary but if you use the 6522 you will end up needing a second breadboard for RAM and change the address decoding of course. Like the Garth Wilson's 6502 potpourri @ wilsonminesco.com

  • @kBashumUclugam

    @kBashumUclugam

    3 ай бұрын

    ​@@AndersNielsenAAThank you. I missed 1 month without seeing what you wrote

  • @AngelMcDove
    @AngelMcDove5 ай бұрын

    It's funny how the random numbers for ICs won't make sense if you don't have electronics experience.

  • @AndersNielsenAA

    @AndersNielsenAA

    5 ай бұрын

    I still remember when they were all nonsense and I didn’t even know what to google :)

  • @melanierhianna
    @melanierhianna Жыл бұрын

    The Atari 2600's only built in RAM was 2 RIOTs. 64 bytes for page zero and 64 bytes for stack.

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    Actually only a single RIOT :) I mentioned it in the video - by connecting A9 to RS of the riot, RAM was available to both zero page and stack. So they both had 128 bytes - the same bytes though.

  • @typedeaf
    @typedeaf9 ай бұрын

    Where do you buy old MOS chips? Ebay?

  • @AndersNielsenAA

    @AndersNielsenAA

    9 ай бұрын

    There's an almost infinite amount coming out of Asia from recycled consoles, industrial control boards etc. The 6507 I use here with the Rockwell branding is from 1988 and probably came out of some industrial unit. More specifically: You'll find a lot on Aliexpress or Ebay.

  • @JarppaGuru
    @JarppaGuru6 ай бұрын

    rom and ram pinout is same you can stack them and bend 1 or 2 pins to make them work. better do it for ram

  • @AndersNielsenAA

    @AndersNielsenAA

    6 ай бұрын

    They stack just fine but require additional address decoding :) 128 bytes was fine for the Atari 2600 and I have a feeling I can get a lot out of it too ;-)

  • @petermuller608
    @petermuller608 Жыл бұрын

    What's the movie in the beginning, didn't quite get the title

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    Close Encounters of the Third Kind

  • @ipebyx
    @ipebyx4 ай бұрын

    You can insert TIA on second breadboard and you will have working A2600

  • @AndersNielsenAA

    @AndersNielsenAA

    4 ай бұрын

    Indeed. I chose a different way though - and got 128x64 characters instead :)

  • @MostlyPennyCat
    @MostlyPennyCat Жыл бұрын

    Doesn't that make this an Atari 2600?

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    A 2600 didn’t fit on a breadboard and this is missing a TIA - but like I mention at the end of the video, we’re close :)

  • @rimmersbryggeri
    @rimmersbryggeri Жыл бұрын

    Why not do it on perforated proto breadboard with a wire wrap tool? Tehn you could the the full compliment of components with the same amount of holes as the solderless breadboard and probably more relible aswell.

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    I always thought wire wrapping was none of the fun for the price of even more work and well.. price. Those tools are expensive! It gets points for being “era correct” but I have to admit that my next step after the breadboard - if it’s more than a handful of connections - is to order 5 pcbs for almost no money and have them delivered in a week. If it’s one or two dip14’s I’ll happily grab a radio shack protoboard - no tools needed. And if it’s really about size we can always emulate everything in a modern MCU or FPGA in a BGA package and call it a day - but wouldn’t that be boring :)

  • @rimmersbryggeri

    @rimmersbryggeri

    Жыл бұрын

    @@AndersNielsenAA It would be boring indeed. I remember when a company I helped out in was prototyping a X-ray/Laser bone density meter andthey had bought a wire wrap gun, And indeed it was expensive. I heard someone on youtube say it wasnt the other week though so I thought maybe they chinese had come up with a remedy for that. My thought was mostly because my solderless breadboards are so unbelievably unreliable in their connections. These days there are probably farts with more computing power than a 6502 that you could emulate them with if you wanted to be boring.

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    @@rimmersbryggeri There are some horrible breadboards out there - the ones I use now are great but some are basically single use. Ben Eater even did a video on how different they can be.

  • @rimmersbryggeri

    @rimmersbryggeri

    Жыл бұрын

    @@AndersNielsenAA I think Mr Carlsons lab did a breadboard video also. But the internet makes it so difficlt to buy consistently since you may not get the same item even if you order the same item from the same source, very annoing indeed.

  • @nilsskansar416

    @nilsskansar416

    Жыл бұрын

    @@AndersNielsenAA Wire wrapping was very much used to build prototypes about 30 years ago.I once watched a customer building a 80286 board for a Telecom device. He had no schematics or drawings. Just wiring from his own memory. Personally I have built many 8039 and 8051 boards using wire wrapping back in 1987-94.The back plane on a DEC VAX 11/780 was also wire wrapped. I have done a lot of mods on the 11/780 using OK tools and later invested in a Vero electrical wrapping gun.

  • @StevDoesBigJumps
    @StevDoesBigJumps Жыл бұрын

    Nice build. Doom video when?

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    I think I’ll have to put my own spin on Doom to make it fit.. Doom 2D?

  • @timotejkesa7117
    @timotejkesa7117 Жыл бұрын

    How thick are those cables?

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    23 AWG.

  • @Wyld1one
    @Wyld1one Жыл бұрын

    hm. how about no eeprom, instead just sram loaded from i^2c then run. forth can be coded in < 1k

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    I've been thinking about a few no-ROM designs - with and without battery backup. Since holding an NMOS 6502/6507 in reset for a long period of time can damage it - I've heard - loading the RAM without bus contention becomes the issue. Then it needs 24 bits worth of bus transceivers "n stuff" :/ A 65C02 with a BE line is a better candidate though.

  • @8bitwiz_

    @8bitwiz_

    Жыл бұрын

    @@AndersNielsenAA Holding it in reset doesn't damage the chip, but its registers are basically DRAM cells and will not hold data very long without the clock. Very few microprocessors used static memory registers and could be clocked down to 0Hz, but the 1802 was one of them. As for the original question, what is listening to i2c, and/or where do you get an SRAM chip with both a parallel and an i2c interface?

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    @@8bitwiz_ I’d like to see that i2c device too. Beware of holding down rst on a 6502 though - some do have a bug. Quoting Garth Wilson about the bug from his RST site: “Now if you really must use an old NMOS 6502 (I don't recommend it), you should be aware that some NMOS 6502's had an internal heating problem that could damage the part if the reset line was held down very long. It is recommended that you not hold it down more than about a tenth of a second.”

  • @nilsskansar416

    @nilsskansar416

    Жыл бұрын

    @@8bitwiz_ There is an Apple I board out there using Arduino Nano as interface. I have the board but not built it yet.Gary Evans also has a project on KZread using a Raspberry PI Pico as program loader/interface.Other people have used Atmega 644 and Atmega 1284P. I have also seen a PIC18F46xx to load code into RAM and boot a 6502. My plan now is to learn a PCB Cad program so I can design boards and send the Gerber files to China and have the boards made. A board using Motorola 68000 has also been on my to do list for many years but too much wiring. A ready made board could also be used if I found one.

  • @robo7014
    @robo7014 Жыл бұрын

    Can i use it as a pc

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    People used hardware like this as a PC in the 1970's

  • @robo7014

    @robo7014

    Жыл бұрын

    @@AndersNielsenAA how to connect mouse,keyboard and monitor and how to install operating system

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    You can connect a keyboard using a ps/2 to parallel adapter but with the 6507 you will need to poll the keyboard port since the 6507 doesn't have hardware interrupts. Monitor will need a video card. You'll probably get the idea from "My 6502 SBC R1 complete hardware overview" video. Due to limited RAM you probably want to write your own operating system depending on what you want it to do.

  • @Jkauppa
    @Jkauppa Жыл бұрын

    try pentium 100MHz fast cache chip based rom alu logic

  • @Jkauppa

    @Jkauppa

    Жыл бұрын

    yes load the fast cache memory from rom

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    You want me to interface a ROM to a 273 pin Pentium, essentially making a chipset? Not sure I follow your suggestion but sounds interesting.

  • @Jkauppa

    @Jkauppa

    Жыл бұрын

    @@AndersNielsenAA dont include a pentium chip, only external cache chips (for pentium) that run at 100MHz

  • @Jkauppa

    @Jkauppa

    Жыл бұрын

    @@AndersNielsenAA the cache chip is much more simpler (as memory chip) than the pentium itself, use the cache memory chip as the processor core itself, ie rom alu fast result storage, the cache is the alu, like in old 8-bit machines

  • @Jkauppa

    @Jkauppa

    Жыл бұрын

    @@AndersNielsenAA you can fit various 8/16 bit float operations (single or dual argument) in one cache chip

  • @davidpodolske8376
    @davidpodolske8376 Жыл бұрын

    You can get much larger breadboards. Just sayin'

  • @AndersNielsenAA

    @AndersNielsenAA

    Жыл бұрын

    You can also get smaller components :) This is absolutely one of those “because you can” things.

Келесі