Anders Nielsen
Anders Nielsen
  • 39
  • 241 200
Open 9$ ROM Burner just got even better and easier to use!
JLCPCB $2 for 1-8 layer PCB jlcpcb.com/?from=Anders_N
Sign Up Here to Get $60 New User Coupons
Relatively Universal ROM Programmer kit for ~9$ (+VAT if sending to EU) www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm
Video TL;DW: Anders Nielsen shows how to add a voltage divider to the Relatively Universal ROM Programmer and how to install the Firestarter FW by Henrik Olsson and use that to erase and burn an EEPROM in almost no time.
00:00 Introduction
01:00 Overview of the $9 ROM Burner
02:05 Introducing Firestarter Firmware
02:49 Sponsored segment and LED current myths
03:58 ZIFs on DIPs
04:22 Upgrading the Original Shield
04:49 How the Voltage Divider Works
07:50 Installing Firestarter Firmware
10:00 Programming and Testing ROMs
11:14 Using Firestarter Features
11:50 Future Improvements and Features
12:22 Conclusion and Final Thoughts
Join the free clubhouse on Discord: discord.gg/kmhbxAjQc3
Let's chat about what you like best about old chips, electronics, breadboards and hacking all sorts of things!
Firestarter Python app on github: github.com/henols/firestarter_app
Henrik's video about Firestarter: th-cam.com/video/JDHOKbyNnrE/w-d-xo.html&ab_channel=HenrikOlsson
65uino kit (ICs BACK IN STOCK): www.imania.dk/samlesaet-hobbyelektronik-og-ic-er.htm
Shipping available to 51 destinations worldwide.
If you'd rather pay for an expensive (and much less DIY) T48 programmer you can use with Minipro, you can buy one here: s.click.aliexpress.com/e/_DCCVoMX
(Affiliate link)
Schematic and KiCAD project files for the programmer: github.com/AndersBNielsen/Relatively-Universal-ROM-Programmer
Complete schematic, source code and everything about the 65uino (including the source code used for the programmer):
github.com/AndersBNielsen/65uino
Check out my other 6502-inspired videos: th-cam.com/play/PL9Njj9WL8poFsM4C6Gi8V5FRoidOOL0Fv.html
Join this channel to get access to perks that let you see videos early and make you stand out in comments:
th-cam.com/channels/1XztF03rWRJJ4Gt3csya0A.htmljoin
Song: NEYVO - My Heart Is Broken [NCS Release]
Music provided by NoCopyrightSounds
Free Download/Stream: ncs.io/MHIB
Watch: ncs.lnk.to/MHIBAT/youtube
มุมมอง: 774

วีดีโอ

Myth: The 6502 Cannot Single Cycle!
มุมมอง 19K14 วันที่ผ่านมา
JLCPCB $2 for 1-8 layer PCB jlcpcb.com/?from=Anders_N Sign Up Here to Get $60 New User Coupons Let's figure out if Single Cycling an original 6502 CPU is impossible just because it's an NMOS version with dynamic registers - didn't Steve Wozniak make a circuit for the Apple 1 for exactly that purpose? Single Cycle Board, 65uino and Programmer available here: www.imania.dk/samlesaet-hobbyelektron...
This IBM Model M2 Keyboard from 1993 has issues... Let's fix it!
มุมมอง 1.6Kหลายเดือนก่อน
Join the free clubhouse on Discord: discord.gg/kmhbxAjQc3 Let's chat about what you like best about old chips, electronics, breadboards and hacking all sorts of things! In this video I go through the steps to fix a broken IBM Selectric Touch Keyboard from 1993 - also known as the IBM M2 Buckling Spring Keyboard. Takes a little bit of soldering and 3 cents worth of components. We also explore ho...
This 9$ Open Source ROM Burner got upgraded!
มุมมอง 5Kหลายเดือนก่อน
Mid-Year Mega Sale $250 Coupon & More Surprises: jlcpcb.com/midyearsales?from=Anders_N JLCPCB: 48-Hour Turnaround for 6 Layer PCBs! : jlcpcb.com/6-layer-pcb/?from=Anders_N The Relatively Universal ROM Programmer got some gooood upgrades. It now supports the Arduino Uno and clones, it has standalone features using the SSD1306 and the Adafruit GFX library - and it can now be calibrated using the ...
DIY "Breadboard" UV-C EPROM Eraser for under 10$
มุมมอง 1K2 หลายเดือนก่อน
Relatively Universal ROM Programmer shield kit REV 1 now in stock: www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm In this video I make a cheap Do-It-Yourself UV-C EPROM eraser with a 254nm lamp kit. 65uino kit (ICs BACK IN STOCK ): www.imania.dk/samlesaet-hobbyelektronik-og-ic-er.htm Shipping available to 51 destinations worldwide. Buy a ready made comm...
This 9$ Universal ROM Burner is Open Source!
มุมมอง 34K3 หลายเดือนก่อน
JLCPCB $2 for 1-8 layer PCB jlcpcb.com/?from=Anders_N Sign Up Here to Get $60 New User Coupons Relatively Universal ROM Programmer kit: www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm 65uino kit (ICs BACK IN STOCK): www.imania.dk/samlesaet-hobbyelektronik-og-ic-er.htm Shipping available to 51 destinations worldwide. If you'd rather pay for a new (and muc...
Relatively Universal ROM Programmer - Hardware Walkthrough
มุมมอง 1.2K3 หลายเดือนก่อน
I am so excited! Printed Circuit Boards are coming and they might actually work. This programmer will be cheaper than anything else and it'll program basically any ROM imaginable. If you'd rather pay for a new (and much less DIY) T48 programmer you can use with Minipro, you can buy one here: s.click.aliexpress.com/e/_DBRyPxJ (Affiliate link) Dedicated EPROM eraser: s.click.aliexpress.com/e/_DmA...
21V EPROMs on a breadboard - Programming and failing to erase them..
มุมมอง 5574 หลายเดือนก่อน
Universal ROM programmer on a breadboard capable of programming even the 21V "high voltage programmable" EPROMs. In this video we successfully program a 21 Volt EPROM and also try to erase it. Dedicated EPROM eraser: s.click.aliexpress.com/e/_DmALSQh (Affiliate link) If you'd rather pay for a new (and much less DIY) T48 programmer you can use with Minipro, you can buy one here: s.click.aliexpre...
You just saved $60 on a ROM programmer. Thank AI.
มุมมอง 3.5K4 หลายเดือนก่อน
EEPROM programmer on a breadboard capable of programming even the 21V "high voltage programmable" EPROMs. In this video we get a little bit of help from ChatGPT to write the bit masks but of course it can't be left unattended, so we give it some help to get over the finish line. If you'd rather pay for a new (and much less DIY) T48 programmer you can use with Minipro, you can buy one here: s.cl...
Erasing an EEPROM with 14.02 Volts on a breadboard
มุมมอง 1.1K6 หลายเดือนก่อน
Buy a 65uino kit (ICs BACK IN STOCK!): www.imania.dk/samlesaet-hobbyelektronik-og-ic-er.htm In this video I continue building an EEPROM / EPROM programming circuit from scratch - or at the very least from integrated circuits. I'm not going to be doping any semiconductors in this series. Eventually it'll turn into something Arduino-shield-like but in this video we focus on erasing an EEPROM usin...
Programming old ROMs with HIGH voltage
มุมมอง 2K7 หลายเดือนก่อน
Buy a 65uino kit: www.imania.dk/samlesaet-hobbyelektronik-og-ic-er.htm In this series I start building an EEPROM / EPROM programming circuit from scratch - or at the very least from integrated circuits. I'm not going to be doping any semiconductors in this series. Eventually it'll turn into something Arduino-shield-like but for this video we focus on generating a 14V erasure voltage on a breadb...
I gave away 35 8-bit motherboards
มุมมอง 2.5K8 หลายเดือนก่อน
JLCPCB $2 for 1-8 Layers PCBs. Get $54 New User Coupons at: jlcpcb.com/?from=Anders_N How to Get a $7 3D Printing Coupon: 3d.jlcpcb.com/?from=Anders3DP In this video I'm announcing that I'm giving away -25- 35 motherboards for the 65uino 6502 Single Board Computer and giving a quick demonstration of depanelizing a board and soldering it. Update: 25 disappeared super fast, so I added another 10,...
Serial Flow Control. What's CTS RTS XOFF XON and why should you care?
มุมมอง 2.9K9 หลายเดือนก่อน
How do you control serial besides TX and RX? That's what I try to explain in this video featuring a Raspberry Pi Zero W, a USB to Serial FTDI232 dongle and my very own 6502 Single Board Computer - the 65uino. Guest starring: An 8 channel logic analyzer. Free Discord Clubhouse: discord.gg/kmhbxAjQc3 Let's chat about what you like best about old chips, electronics, breadboards and hacking all sor...
Scrolling OLED on a 6502 Single Board Computer
มุมมอง 2.3K9 หลายเดือนก่อน
Join the free clubhouse on Discord: discord.gg/kmhbxAjQc3 Let's chat about what you like best about old chips, electronics, breadboards and hacking all sorts of things! In this video we write a some more 6502 assembly code from scratch for my little homemade single board computer and make the SSD1306 scroll text automatically. Previous video in case you missed it: th-cam.com/video/QYN7VGy-H6Y/w...
Can a 6502 computer control a Raspberry Pi?
มุมมอง 1.4K10 หลายเดือนก่อน
Can a 6502 computer control a Raspberry Pi?
I finally did it!
มุมมอง 78910 หลายเดือนก่อน
I finally did it!
Hacking ROMs for fun and profit!
มุมมอง 3.6K11 หลายเดือนก่อน
Hacking ROMs for fun and profit!
Serial Bootloader for ANY 6502 Single Board Computer #65uino
มุมมอง 2.7K11 หลายเดือนก่อน
Serial Bootloader for ANY 6502 Single Board Computer #65uino
OLED display on a 6502 Single Board Computer using i2c #65uino
มุมมอง 2.7Kปีที่แล้ว
OLED display on a 6502 Single Board Computer using i2c #65uino
I²C on a 6502 Single Board Computer - The 65uino #i2c #6502
มุมมอง 7Kปีที่แล้ว
I²C on a 6502 Single Board Computer - The 65uino #i2c #6502
Coding x86 Pong as a BIOS extension is fun!
มุมมอง 3.4Kปีที่แล้ว
Coding x86 Pong as a BIOS extension is fun!
Pong on a PC/XT with NO operating system.. Is it possible?
มุมมอง 2.3Kปีที่แล้ว
Pong on a PC/XT with NO operating system.. Is it possible?
Building an IBM PC XT from SCRATCH
มุมมอง 7Kปีที่แล้ว
Building an IBM PC XT from SCRATCH
A 6502 Based Computer on a Single Breadboard
มุมมอง 32Kปีที่แล้ว
A 6502 Based Computer on a Single Breadboard
Fixing an IBM PC XT 5160 Motherboard
มุมมอง 4.4Kปีที่แล้ว
Fixing an IBM PC XT 5160 Motherboard
A Simple Universal Modem for your project!
มุมมอง 8Kปีที่แล้ว
A Simple Universal Modem for your project!
A 6502 Single Board Computer built from scrap!
มุมมอง 14Kปีที่แล้ว
A 6502 Single Board Computer built from scrap!
The amazing 6502 support chip: The 6532 RIOT!
มุมมอง 9Kปีที่แล้ว
The amazing 6502 support chip: The 6532 RIOT!
Microsoft BASIC from 1977 on my 6502 computer!
มุมมอง 10Kปีที่แล้ว
Microsoft BASIC from 1977 on my 6502 computer!
Backup like it's 1975. 6502 data to TAPE!
มุมมอง 3.7K2 ปีที่แล้ว
Backup like it's 1975. 6502 data to TAPE!

ความคิดเห็น

  • @3vi1J
    @3vi1J 8 ชั่วโมงที่ผ่านมา

    Great project that just keeps getting better. Good job!

  • @kBashumUclugam
    @kBashumUclugam 15 ชั่วโมงที่ผ่านมา

    Hello 👋🏿

  • @AndersNielsenAA
    @AndersNielsenAA 16 ชั่วโมงที่ผ่านมา

    Kits are here! www.imania.dk/index.php?currency=EUR&cPath=204&sort=5a&language=en Join the free clubhouse on Discord: discord.gg/kmhbxAjQc3 Let's chat about what you like best about old chips, electronics, breadboards and hacking all sorts of things!

  • @htcmagichtc1987
    @htcmagichtc1987 วันที่ผ่านมา

    HA HA HA "ready for more abuse" It's so good!!! 🤣🤣🤣

  • @woreno
    @woreno 4 วันที่ผ่านมา

    Why lies? There's two versions

    • @AndersNielsenAA
      @AndersNielsenAA 4 วันที่ผ่านมา

      What lies? BOTH single steps - that’s the whole point :)

  • @BEdmonson85
    @BEdmonson85 10 วันที่ผ่านมา

    This was a great watch, here's my comment for the algorithm gods! This channel needs more subscribers!

  • @DeVibe.
    @DeVibe. 10 วันที่ผ่านมา

    The world is past this.

    • @AndersNielsenAA
      @AndersNielsenAA 9 วันที่ผ่านมา

      What, i2c?

    • @DeVibe.
      @DeVibe. 9 วันที่ผ่านมา

      @@AndersNielsenAA No. I²C on on a huge 6502 system.

  • @DeVibe.
    @DeVibe. 10 วันที่ผ่านมา

    The world is past this.

    • @AndersNielsenAA
      @AndersNielsenAA 9 วันที่ผ่านมา

      I think you’ll find a billion devices disagree :)

  • @nickolasgaspar9660
    @nickolasgaspar9660 10 วันที่ผ่านมา

    So the 65C02(1981 - found in Atari 8bit XL/XE and some later 800/400 models)essentially has the halting circuit onboard? Since later Atari 800/400 motherboards could accept the 65C02 does that mean that a similar circuit to yours exists on their earlier motherboards?

    • @AndersNielsenAA
      @AndersNielsenAA 10 วันที่ผ่านมา

      No. The 65C02 simply doesn’t mind stopping the clock completely - so you can essentially just use a (debounced) button instead of the input clock. Edit: It can still use the circuit though

  • @EpsilonsReviews
    @EpsilonsReviews 11 วันที่ผ่านมา

    Now to give my 5150 a work over and add an extra five to that number!

  • @tschak909
    @tschak909 11 วันที่ผ่านมา

    The Atari VCS (2600) WSYNC register in the TIA causes the RDY pin to be deserted, until the next scan line. This is CRITICAL for display timing.

    • @AndersNielsenAA
      @AndersNielsenAA 11 วันที่ผ่านมา

      Indeed, and there are no CMOS 6507s out there - that’s still “pretty fast” though, so I guess the myth started because it’s not immediately obvious to everyone that means you can halt it indefinitely and move it forward with a push of a button. And it’s also in all the manuals :)

  • @TheOfAndTo
    @TheOfAndTo 13 วันที่ผ่านมา

    great !!!!

  • @VandalIO
    @VandalIO 14 วันที่ผ่านมา

    Can this processor run windows?

    • @AndersNielsenAA
      @AndersNielsenAA 14 วันที่ผ่านมา

      Sure! Just emulate RISCV in 6502 and emulate x86 in RISCV.. kinda slow tho

    • @AndersNielsenAA
      @AndersNielsenAA 14 วันที่ผ่านมา

      Sure! Just emulate RISCV in 6502 and emulate x86 in RISCV.. kinda slow tho

  • @VandalIO
    @VandalIO 15 วันที่ผ่านมา

    Is this true ?

  • @TrimeshSZ
    @TrimeshSZ 15 วันที่ผ่านมา

    Another mildly irritating feature of the original 6502 is that it ignores RDY on write cycles, so if you need to slow writes you have to resort to clock stretching. I guess this made sense at the time, since RAM was faster than the CPU anyway and you normally only had to add waits for ROM reads.

    • @AndersNielsenAA
      @AndersNielsenAA 14 วันที่ผ่านมา

      I think it’s more about the fact that you don’t really need it to pause as you can just latch whatever the 6502 wants to offload to a register pretty easily on the ~W signal if you want to inspect what’s coming out. But that’s basically what you said :)

  • @andrewowens5653
    @andrewowens5653 16 วันที่ผ่านมา

    Kim-1 had single step button.

    • @AndersNielsenAA
      @AndersNielsenAA 15 วันที่ผ่านมา

      And somehow people still forgot - it’s also in the original MOS HW Manual :)

    • @andrewowens5653
      @andrewowens5653 15 วันที่ผ่านมา

      @@AndersNielsenAA my first computer was a Kim-1. I had to make my own power supply. My second computer was Apple II serial number 000745. I was 15 years old and I worked at The Byte Shop in Englewood Colorado. 8-)

    • @AndersNielsenAA
      @AndersNielsenAA 15 วันที่ผ่านมา

      @@andrewowens5653 Sounds like some great memories

  • @tomwimmenhove4652
    @tomwimmenhove4652 16 วันที่ผ่านมา

    Now try this on a Z80. It uses capacitors as temporary bit-storage elements. If you wait too long, capacitors discharge. That's why it had a minimal clock frequency. EDIT: I should've watched the first minute before commenting. Of course the Z80 can also be put in wait state, so there might be a way around it (although, I don't think it has a 'sync' pin)

    • @AndersNielsenAA
      @AndersNielsenAA 15 วันที่ผ่านมา

      I think the Z80 doesn’t mind being clocked at 1Hz but I haven’t dug into it. And I think you’re right it doesn’t have a sync pin 📍

    • @gcewing
      @gcewing 15 วันที่ผ่านมา

      @@AndersNielsenAA It does have an equivalent to SYNC: M1 together with MREQ indicates an opcode fetch cycle. There seems to be no minimum clock frequency. From the manual: "When the clock input to the Z80 CPU is stopped at either a High or Low level, the Z80 CPU stops its operation and maintains all registers and control signals." So it looks like you can single-cycle a Z80 by either method -- stop the clock, or use WAIT.

  • @keiyakins
    @keiyakins 16 วันที่ผ่านมา

    i mostly just heard to get the cmos version becsuse they're easier to find and interface with modern othrr chips

    • @AndersNielsenAA
      @AndersNielsenAA 16 วันที่ผ่านมา

      Well neither of those actually apply. On the Asian markets it’s super easy to get both - but the CMOS versions are a bit more expensive. Much more if going for a new one. Interfacing should be the same except the 90s versions run faster. Then there’s also the whole CMOS software incompatibility thing between manufacturers.. and HW incompatibility for the WDC version too

  • @anderskirchenbauer3723
    @anderskirchenbauer3723 17 วันที่ผ่านมา

    Guess of what this is a step towards: Making a computer that is in a function and form factor similar to an Altair 8080, but using a nice 6502 chip instead of an 8080.

    • @AndersNielsenAA
      @AndersNielsenAA 16 วันที่ผ่านมา

      You are very close :)

    • @TrimeshSZ
      @TrimeshSZ 14 วันที่ผ่านมา

      So, like the Altair 680?

  • @user-wo6qn3vf9n
    @user-wo6qn3vf9n 17 วันที่ผ่านมา

    What shocking news, I had a 6502 on my bike and could never work out why I had to keep peddling. The shop that sold me it said it would certainly cycle, I took it back and he said I must have installed it wrong. It never worked properly and now I know why, so after showing the shop your video I asked for my money back. He said since I bought it over 10 years ago it had probably has failed anyway. So if you can make known to all cycle outlets of your findings, this will help a lot of people.

  • @phill6859
    @phill6859 17 วันที่ผ่านมา

    I never realised that people thought you could not do it. Several 80s computers from the 80s used the rdy line to stall the CPU when the graphics chip needed cycles (even when the ram ran twice the speed of the CPU and the graphics chip, with each getting access alternately). Even the Atari 2600 6507 has a rdy pin, but single stepping it will cause the screen to fall apart.

    • @R.B.
      @R.B. 11 วันที่ผ่านมา

      The issue is that the registers need a clock to keep refreshing their state. The way you would typically stop a CPU and make it single step would be to stop the clock signal. This is how it was handled later when it was a static register. The board here doesn't stop the clock signal, it instead latches the signals which allow the CPU to fetch instructions. It's still getting clocked and still refreshing the register states, but it is waiting for the bus to be free to read, hence a single step.

  • @gasparinizuzzurro6306
    @gasparinizuzzurro6306 17 วันที่ผ่านมา

    It does not do single cycle. What you achieved is by "help" or external logic. But by itself, the non CMOS version cannot do this. It is the same to achieve BUS arbitration by disconnecting electrically the CPU. the 6502 cannot do this without external logic whereas the 6510 can

    • @AndersNielsenAA
      @AndersNielsenAA 17 วันที่ผ่านมา

      That’s incorrect. All the 6502’s put the data bus into high Z half the cycle - the 6502 and 6510 are the same in that regard. And this actually does let us halt after each CPU cycle.

    • @gasparinizuzzurro6306
      @gasparinizuzzurro6306 17 วันที่ผ่านมา

      @@AndersNielsenAA the 6502 has no tri-state capability. this is proved by the fact that C64 engineer employed a 6510 cpu which is a 6502 with integrated bus tristate capability (AEC signal) plus one memory mapped hw port

    • @AndersNielsenAA
      @AndersNielsenAA 17 วันที่ผ่านมา

      @@gasparinizuzzurro6306 The 6502 databus tristates. The address bus does not. I take advantage of that on my ABN6502 SBC.

    • @gasparinizuzzurro6306
      @gasparinizuzzurro6306 17 วันที่ผ่านมา

      @@AndersNielsenAA so not a full tristate functionality. it always require a custom electronic around it.

    • @AndersNielsenAA
      @AndersNielsenAA 17 วันที่ผ่านมา

      @@gasparinizuzzurro6306 Plenty of tristating to single cycle and feed it instructions. You don’t need to tristate the address bus for that. The 6502 won’t do anything at all without support circuitry. It’s a CPU. Anything except the most basic address decoding requires more circuitry. Doing the same thing on a 65c02 would also require a minimum of an IC to stop the clock in the right state - so you might as well use the same circuit and leave the clock running. And the 6510 is NMOS just like the 6502 so it needs a running clock too.

  • @cianmoriarty7345
    @cianmoriarty7345 18 วันที่ผ่านมา

    Lol eww. Who has Windows in their autoexec.bat? 😂❤

  • @mitsuruyamada
    @mitsuruyamada 18 วันที่ผ่านมา

    Thanks for the great video! It consists of only two D-FF, so maybe this is the minimum configuration. In my case, I configured it with two JK-FFs and NAND gates. And in my case, when I do a CPU RESET with the CPU stopped, in rare cases the RESET sequence is not performed correctly, so I added a circuit to keep the CPU in RUN state during the RESET period.

    • @AndersNielsenAA
      @AndersNielsenAA 17 วันที่ผ่านมา

      Thank you and thank you for the insight! The way the circuit is setup relies heavily on the button’s DPDT nature and makes it harder to control digitally - or just with SPST buttons. A few more logic ICs like you did would certainly make it more versatile and robust. The 6502s can differ quite a bit when it comes to the reset - I’ve heard some of the NMOS ones can overheat if held in reset for too long so a short reset pulse is very important too. Luckily I’ve never experienced that with a 6507. I appreciate having access to your Perseus schematics very much so I can sanity check a few things while moving forward, thank you 🙏 :)

    • @mitsuruyamada
      @mitsuruyamada 17 วันที่ผ่านมา

      @@AndersNielsenAA Thank you very much. To explain my case in detail, when I powered on the CPU board with the RDY signal at a “L” level and in a stop state, CPU reset, and then proceeded with the step operation, it occurred with a certain probability that the execution address progress was not correct. In this case, I believe that the start vector setting within the CPU is not correct. So, I think this kind of problem does not occur in the case of a configuration where the first state is always RUN state by power-on reset. I had to solve this problem with my PERSEUS-7, because it is assumed that it is often operated in step operation only, not in RUN state at all from power-on. I have made four PERSEUS-7 units and verified the operation with multiple CPUs as well, and confirmed that it is not a defect in only one unit by chance. defect occurred on a Rockwell NMOS R6502A and not on a CMOS R65C02. The R65C02 has a different number of clocks before the first instruction execution and I believe has an improved reset sequence. The additional circuit that solved the defect is R54 in PERSEUS-7 and R4 in PERSEUS-8.

    • @AndersNielsenAA
      @AndersNielsenAA 15 วันที่ผ่านมา

      @@mitsuruyamadaThank you for the details. Since Sync stays low during reset, I wonder if it would be sufficient to ensure “single instruction mode” during reset. I guess that would do the same as keeping it in run state - but of course that means you can’t read the reset vector the CPU reads either way.

    • @mitsuruyamada
      @mitsuruyamada 15 วันที่ผ่านมา

      ​@@AndersNielsenAA Thank you very much. You are right. According to the datasheet, it is sufficient to maintain “single instruction mode” even during RESET. This phenomenon and the countermeasure is based on my personal experiment. I have not been able to reproduce the defect within the conditions and number of times I have re-tested now. Since this circuit allows the same number of dummy steps until the first program instruction for the R6502A and the R65C02, I am going to continue evaluation with this circuit. Thank you again.

  • @francoisleveille409
    @francoisleveille409 18 วันที่ผ่านมา

    I tried to debunk so many myths like that on various Commodore forums and was pelted with insults. I was even expelled from Lemon64. Making videos like yours requires lots of efforts and I didn't have the energy and time.

    • @AureliusR
      @AureliusR 18 วันที่ผ่านมา

      If you were banned from Lemon64 it wasn't because you were just trying to debunk myths. As long as you showed evidence and stayed civil then you wouldn't have been banned.

    • @francoisleveille409
      @francoisleveille409 18 วันที่ผ่านมา

      ​@@AureliusR I can give you a copy of no less than 500 posts Groepaz left there that were directed at me that were all personal attacks including questioning my mental health. Everyone has their limits. What you say is patently false. He was an acquaintance of TNT and that is the only reason it ended the way it did. In any case it resulted in me selling more than 200k$ worth of merchandise that according to him should not have worked and caused damage to C64. All false. Added edit : The document titled 'The C64 PLA Dissected' by Thomas 'Skoe' Giesel proved everything I said was true and all the disparage from Groepaz was lies.

    • @AndersNielsenAA
      @AndersNielsenAA 17 วันที่ผ่านมา

      It requires quite a bit more effort than most believe - and a lot of love for the subject and patience with externalities :) Constructive dialogue is great - if people aren’t nice it’s easy to disregard :)

    • @francoisleveille409
      @francoisleveille409 17 วันที่ผ่านมา

      @@AndersNielsenAA Groepaz became very offensive with me around 2008 when I indicated ST's M27C512-90B6 PROM chip (only 1$ US at Mouser back then) had a low slew rate on output and therefore did not generate the glitches other 27(C)512 would cause when used as a PLA replacement for the C64. He was involved with Individual Computers' SuperPLA V3 which sold for about 30 Euros so this would have been a significant loss of market. I had proof from logic analyzers from the university where I was studying but couldn't take the results out. Eventually the genuine Super Zaxxon cartridge became the litmus test. The ST chips were discontinued in 2011 and would have saved huge sums to C64 users. See video from MindFlareRetro : #10 'The PLAin Truth About the Commodore 64 PLA' at World of Commodore 2017

    • @francoisleveille409
      @francoisleveille409 17 วันที่ผ่านมา

      @@AndersNielsenAA Groepaz became very offensive with me around 2008 when I indicated ST's M27C512-90B6 PROM chip (only 1$ US at Mouser back then) had a low slew rate on output and therefore did not generate the glitches other 27(C)512 would cause when used as a PLA replacement for the C64. He was involved with Individual Computers' SuperPLA V3 which sold for about 30 Euros so this would have been a significant loss of market. I had proof from logic analyzers from the university where I was studying but couldn't take the results out. Eventually the genuine Super Zaxxon cartridge became the litmus test. The ST chips were discontinued in 2011 and would have saved huge sums to C64 users. See video from MindFlareRetro : #10 'The PLAin Truth About the Commodore 64 PLA' at World of Commodore 2017

  • @jxtq27
    @jxtq27 18 วันที่ผ่านมา

    Oh, you mean single step not single cycle. Now I understand.

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      Well - both, hence the instruction/cycle switch :) But I know what you mean - titles are hard..

    • @jxtq27
      @jxtq27 11 วันที่ผ่านมา

      @@AndersNielsenAA yes there are two hard problems in computer science, cache invalidation, naming, and off-by-one errors.

    • @AndersNielsenAA
      @AndersNielsenAA 11 วันที่ผ่านมา

      @@jxtq27 Not the 0th time I’ve heard that one ;-)

  • @tigheklory
    @tigheklory 18 วันที่ผ่านมา

    This is fun, it would be cool if you used segmented displays for the output!

  • @benjaminshropshire2900
    @benjaminshropshire2900 18 วันที่ผ่านมา

    It would be a bit more complex, but I'd think it should be possible to adapt that concept to make a break point debugger as well. E.g. feed all the relevant pins into a RAM chip's address-in pins and use one of the data-out pins as break signal. (Thought at that point, just using another CPU to track things might be easier and cheaper.)

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      Gotta admit - at that point my hands would be tingling to grab the modern 16bit logic analyzer :) …but no break points though

    • @benjaminshropshire2900
      @benjaminshropshire2900 18 วันที่ผ่านมา

      I'm sure there's better options, but I'd be itching to see how much can be done without specialized tools. ("We did it with the wrong tools, as a joke")

  • @MCPicoli
    @MCPicoli 18 วันที่ผ่านมา

    But what happens if the clock speed gets down to zero hertz (regardless of the circuit shown), specially if using the older versions of the processor? I think part of the myth may still be true - not being able to run if single clock cycles are fed to it. In the video the 6502 still receives the clock at full speed, but execution is "gated" by the RDY pin.

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      I did mention it in the video - if the clock gets below about 10 kHz the registers start getting corrupted :)

    • @MCPicoli
      @MCPicoli 18 วันที่ผ่านมา

      @AndersNielsenAA Sorry didn't notice that.

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      @@MCPicoli np :) I still don’t have a complete picture of how exactly the registers lose their contents on a silicon level - but I plan to find out :)

    • @gcewing
      @gcewing 15 วันที่ผ่านมา

      @@AndersNielsenAA The register state is held in capacitors, like a dynamic RAM. The charge leaks away and has to be refreshed periodically.

  • @colonthree
    @colonthree 18 วันที่ผ่านมา

    "I adore my Commodore Sixtyfour" uwu

  • @johnrickard8512
    @johnrickard8512 18 วันที่ผ่านมา

    So that wasn't exactly an intentional feature, but Woz never really cared what features were intentional when he was looking for them.

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      Section 1.4.2.3 of the MCS6500 Hardware Programming Manual shows it was absolutely an intentional feature - and where Woz got it from :)

  • @bryede
    @bryede 18 วันที่ผ่านมา

    4:08 I don't think the C64's 6510 CPU has SYNC capability.

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      It doesn't - but you don't need it to single cycle. It works fine with just the RDY pin :)

  • @NorthWay_no
    @NorthWay_no 18 วันที่ผ่านมา

    Slightly confused here; didn't both the Ataris and the C= 64 have special pins to let the gfx chip halt the cpu? Was that working different from what you described here?

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      Absolutely - they used the RDY pin to slow down execution just like the description in the 6500 datasheets. My point here is the 65C02 is often credited as the only chip you can use on a breadboard and step one instruction forward at a time - but actually the NMOS 6502 has the RDY pin for exactly that purpose and has no limits as to how long you can pause between instructions if you keep the clock running. ...and then I show how to do it :)

  • @A3Kr0n
    @A3Kr0n 18 วันที่ผ่านมา

    Why bother with a 6502 when the 6809E is SO much better? Quit wasting your time son!

    • @user-sd3ik9rt6d
      @user-sd3ik9rt6d 18 วันที่ผ่านมา

      Why bother driving a classic car when newer ones exist?

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      Fancy 16 bit registers and everything. No no, I like the budget friendly 6502 ;-)

    • @bryede
      @bryede 18 วันที่ผ่านมา

      You could argue that working with any 1970's CPU is just wasting your time, as is whining on videos about them.

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      @@bryede I think he’s joking 🙃

  • @blarghblargh
    @blarghblargh 18 วันที่ผ่านมา

    ohhhh cool! I heard this information about the registers losing data with no clock refresh, and was a bit disappointed. I am interested in running a real 6502 as a hardware unit test and source of truth against an emulator I want to make, so this information should be pretty useful.

    • @williammentink
      @williammentink 18 วันที่ผ่านมา

      That's the trick here, that the clock never stops.

  • @AffidavidDonda
    @AffidavidDonda 19 วันที่ผ่านมา

    ldx #0 lda #0 ????? TXA, man!!!

    • @AndersNielsenAA
      @AndersNielsenAA 18 วันที่ผ่านมา

      Absolutely! It's been a few years since I wrote that and I wouldn't make the blunder today - but I can't believe I didn't catch it myself while making the video XD

  • @weirdboyjim
    @weirdboyjim 19 วันที่ผ่านมา

    Interesting, I didn't know that about the early 6502's.

    • @skmgeek
      @skmgeek 18 วันที่ผ่านมา

      james sharman spotted!

    • @weirdboyjim
      @weirdboyjim 18 วันที่ผ่านมา

      @@skmgeek Shh, nobody would ever guess I watch retro electronics videos.

    • @jesset2550
      @jesset2550 18 วันที่ผ่านมา

      Lol

  • @ArneChristianRosenfeldt
    @ArneChristianRosenfeldt 19 วันที่ผ่านมา

    I thought static for a CPU means that it does not rely on race conditions between edges. So you can slowly change the voltage on the clock pin. And as long as your noise amplitude is below the range between high and low, it wouldn’t accidentally go backwards or double step. A lot of flip flops need edges which transit faster than the speed of some logic gates? They store information on the gate capacity? 10 kHz is really slow and more like dynamic RAM. Again data is stored in a capacitor. Intel had a refresh circuit for this. In 6502 only temporary registers are dynamic. Are we sure that this isn’t really the pre-charge of the bus? It leaks away, and then when a device on the bus fires, no voltage changes. So you say that VIC-II in C64 should have used an input buffer to accept early data if the current instruction does not 7 cycles? I still don’t get how Atari 8 bit stalled the CPU for individual cycles. Surely, they did not manipulate the core. So they could only keep up the clock high for longer. Is the difference that commodore has a clean rhythm with the clock: 64 always half as slow. Plus4 : faster in the border (separate enable bit for side and bottom border). While Atari comes up with the signal on the fly?

    • @AndersNielsenAA
      @AndersNielsenAA 19 วันที่ผ่านมา

      I’m not completely sure and you may be right I stretched the comparison between DRAM and SRAM over to registers a bit too far. Woz actually ran into the issue with the Apple II - he thought he could keep the clock high while refreshing RAM because it was faster than the spec for a cycle - but he missed that keeping the clock high for a whole cycle at 10kHz is essentially 5kHz.. and he started losing registers. He kept swapping to new 6502s because brand new ICs have greater register capacitance than slightly used ones - it worked for a little while.. I bet he was real happy to switch to CMOS :)

    • @ArneChristianRosenfeldt
      @ArneChristianRosenfeldt 19 วันที่ผ่านมา

      @@AndersNielsenAA so we really talk about the non-temporary registers? So even for NOP the 6502 goes through A X Y SP on instruction load and refreshes a capacitor? I don’t see the metal lines for this. Intel had a register file and a refresh counter just below. And for each cycle (or instruction) this counter would advance. Ah, so on clock low registers live forever? To check if real registers are lost we need to keep the clock high for long and sta something with an addressing mode with z or t or SP . Then record the address bus. Then execution the same instruction, but with short high. If Y survived, we now record the correct address . This tests AH and AL . Or is it some trick with the instruction pointer? Or ALU input: LDA, CMP, PHA . Slow and fast . Test TAX … In a way 6502 is dynamic: it uses a line of inverters to delay the clock to create 4 phases. The clock edge needs to be sharp, not jitter. I don’t think that there is a Schmidt Trigger . I know that Intel and others need two clock pins with non-overlapping phases. I feel like this is mandatory for static operation. So 65C02 has two clock pins? In the end CMOS is mostly great for battery life because at that feature size leakage was zero and energy consumption also while holding a phase. I would like to see a joule thief where the 65c02 uses solar power and reduces it clock at dawn until it stops. Just wanted to add: static CMOS must not have an overlap where PNP and NPN both conduct. I guess that 1.1 V core voltage 5 GHz CPUs don’t really care that much. I also wonder how old discrete CMOS avoided this at 12 V max on the rails. Scrap that slow clock. Even a CMOS circuit on solar power needs a clean step clock edge and enough energy in an accompanying capacitor to run a full physical cycle ( but not a whole instruction).

    • @AndersNielsenAA
      @AndersNielsenAA 19 วันที่ผ่านมา

      @@ArneChristianRosenfeldt Neither - in those 1/10.000ths of a second you need to pass both phases. I’ve seen NOP running continuously slower than 10kHz without the program counter losing count - but something is out of spec for sure. Not completely sure what’s going on at the silicon level - would love a detailed description - but I am guessing it is in some way caps leaking.

    • @ArneChristianRosenfeldt
      @ArneChristianRosenfeldt 19 วันที่ผ่านมา

      @@AndersNielsenAA I found that in the NES: The sprite memory in the PPU is DRAM, but its refresh is the same as evaluation. Nintendo is explicit about it as Intel. Weird that MOS is not. I should check visual 6502 if the bits use 6 transistors or 1. DRAM needs sense amps and an SRAM buffer. AH AL only serve as buffers. I read that the MOS designers were speed freaks who wanted to squeeze the most MHz out of their ancient fab / large feature size for yield. So with 8 transistors an SRAM bit could be put to the middle between low and high (turn off power) then connect to the bus (phase change), and then power up feedback (delayed phase ). I babbled on in my last comment.

    • @AndersNielsenAA
      @AndersNielsenAA 19 วันที่ผ่านมา

      @@ArneChristianRosenfeldt You’re certainly digging into a deep subject I’ve only scratched the surface of - I guess I should go deep with Visual 6502 some time :) I appreciate the thoughts, thanks! 😊

  • @asadityas67
    @asadityas67 19 วันที่ผ่านมา

    Nice design!

  • @phils_arcade
    @phils_arcade 19 วันที่ผ่านมา

    This is very interesting, love how simple the final board looks. Can you single step Z80 range of processors as well?

    • @AndersNielsenAA
      @AndersNielsenAA 19 วันที่ผ่านมา

      Thanks - I think the Z80 has static registers and doesn't mind stopping the clock. I guess technically you could use this circuit just for debouncing and hook it up to the clock - but less would do :)

    • @phils_arcade
      @phils_arcade 19 วันที่ผ่านมา

      @@AndersNielsenAA Thanks for that. I'd be looking to use this for stepping through old Z80 and 6502 arcade PCBs to see what makes them tick. Before the likes of custom chips were a thing.

    • @AndersNielsenAA
      @AndersNielsenAA 19 วันที่ผ่านมา

      @@phils_arcade In that case you would probably need a bit more work for the Z80 in circuit since you would have to manually do all the steps. But maybe you get some inspiration on how to make that happen on a breadboard from this :)

    • @blahblahblahblah2933
      @blahblahblahblah2933 19 วันที่ผ่านมา

      Z80 has an M1 pin that signals when the CPU is fetching an instruction so plenty of designs are around that single step it.

    • @MrWaalkman
      @MrWaalkman 19 วันที่ผ่านมา

      The E&L MT-80Z "The Fox" trainer has a single-step setup built in. Which works just fine.

  • @johncloar1692
    @johncloar1692 19 วันที่ผ่านมา

    Nice project, looks like a lot of fun. Thanks for the video.

  • @AndersNielsenAA
    @AndersNielsenAA 19 วันที่ผ่านมา

    Thanks for watching! You can get the kits here: www.imania.dk/index.php?currency=EUR&cPath=204&sort=5a&language=en Come hang out in the Retrocomputing Hackerspace Clubhouse on Discord! discord.com/invite/kmhbxAjQc3

  • @PlaceholderforBjorn
    @PlaceholderforBjorn หลายเดือนก่อน

    When I dissembled mine a couples of years ago I think I managed to brake one of the stabilizers on the spacebar. As those is also made of brittle plastic. Think it can be good to mention that. Thanks for a good video!

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      Thank you. Yes, it's not a very durable design. Same for most other larger keys - they really should've put a metal bracket to hold them but I guess it's another cost cutting measure.

    • @cianmoriarty7345
      @cianmoriarty7345 18 วันที่ผ่านมา

      ​@@AndersNielsenAA they sold it for a really outrageous price.

  • @markmullineux8671
    @markmullineux8671 หลายเดือนก่อน

    Would this count as a mechnical keyboard?

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      Good question. It has very distinct spring mechanism providing the switching.. but on the other hand it’s still a membrane keyboard. Both and neither I guess.

    • @colinstu
      @colinstu หลายเดือนก่อน

      @@AndersNielsenAA Model Ms used a membrane too and folks would usually consider that mechanical (due to the buckling spring). I'd consider it mechanical.

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      @@colinstu Usually the distinction is made between individual switches vs a membrane but it doesn’t really make much sense as a measure of “quality”. You can find plenty of horrible mechanical switches and some great rubber dome keyboards too - I can’t handle 20 minutes of typing on a C64 keyboard no matter how “mechanical” it is ⌨️ 😆

    • @philrod1
      @philrod1 หลายเดือนก่อน

      I love mechanical keyboards and I'm a big fan of the old Model M. I was surprised to find out they had membranes under the buckling springs. I feel like a Coca-Cola fanatic who finds out they've been drinking Pepsi all this time without realising. All I can say is they _feel_ mechanical. I guess that's the main thing, right?

  • @kBashumUclugam
    @kBashumUclugam หลายเดือนก่อน

    Arduino ❌ t48-tl866 ❌ homemade 6507 computer ✅

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      And it even has software now :)

    • @kBashumUclugam
      @kBashumUclugam หลายเดือนก่อน

      @@AndersNielsenAA Cool 👍🏿

  • @gilbertvera1678
    @gilbertvera1678 หลายเดือนก่อน

    Holy cow that is basically a cheap commander x16.

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      I like that perspective :)

    • @gilbertvera1678
      @gilbertvera1678 หลายเดือนก่อน

      @@AndersNielsenAA well how else should it be describe? The only way to make it more in line with it is to include basic with a keyboard

  • @gilbertvera1678
    @gilbertvera1678 หลายเดือนก่อน

    Do you have a video of how you assembled and made the keyboard adapter ? Or a bom for it ?

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      There’s a link to it on my GitHub in the description :)

    • @gilbertvera1678
      @gilbertvera1678 หลายเดือนก่อน

      @@AndersNielsenAA I see the github just kinda overwhelmed but it. I think I need to use a arduino and then just build some stuff together. But not sure where to start I was given a 5150 project and while it works it needs a keyboard 😀

  • @robertlarsen7489
    @robertlarsen7489 หลายเดือนก่อน

    Is there an option to be able to save the rom code to the computer. Regards RL

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      Yes, of course. The demo you see here erases the ROM, burns a new one, and reads it back for comparison - you can skip the first two parts ;-)

  • @John_Smith__
    @John_Smith__ หลายเดือนก่อน

    Very very Nice! I will get one from you for sure! Thanks for sharing.

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      Thanks for your support! :)

  • @hydos0694
    @hydos0694 หลายเดือนก่อน

    you should try the rp2040

    • @AndersNielsenAA
      @AndersNielsenAA หลายเดือนก่อน

      Not the easiest to port to as it doesn’t have 5V tolerant IO - wouldn’t be too hard to make a RPDuino with level shifting tho :)