So there we are. My blog about my project, the 6502 simulator. And surely you’re wondering why? Why another 6502 simulator?
Read MoreBlog
The progress…
If you want to see what opcodes are implemented yet, milestones etc. …
Read MoreSTX & STY – Store the X and Y Registers
After learning about STA, the instructions STX and STY follow naturally. They allow your program to store the contents of the X and Y index registers into memory. If you’re managing data structures, looping through arrays, or setting up pointers, you’ll frequently want to move index values into memory — and that’s where these instructions.
Read MoreSTA – Store Accumulator
After learning how to load values into the accumulator using LDA, it’s time to store them back into memory. That’s exactly what the STA instruction does. Where LDA is about input, STA is about output. It allows your 6502 program to write the value currently held in the accumulator (A) to a specific memory address..
Read MoreLDX and LDY – Load Index Registers
Let’s continue the blog series with a combined post about the 6502’s LDX and LDY instructions.The sibling instructions of LDA. In the 6502 instruction set, LDX and LDY are the counterparts to LDA. While LDA loads a value into the accumulator, LDX and LDY load values into the index registers X and Y, respectively. These.
Read MoreLDA – Load Accumulator
The LDA (Load Accumulator) instruction is one of the most frequently used opcodes on the 6502 processor. It loads an 8-bit value into the A register, also known as the accumulator. This value can come from memory or be embedded directly in the instruction itself. Understanding LDA is a great starting point for learning how.
Read MoreUnderstanding the 6502: What is an Opcode?
If you’re new to programming the 6502 microprocessor—or revisiting it from the world of modern computing—one of the first terms you’ll encounter is the opcode. This blog post lays the foundation for the rest of the series by explaining what opcodes are, how they relate to the 6502’s architecture, and why understanding them is key.
Read MoreUnderstanding 6502 Memory Layout on the Commodore 64
When diving into programming for the Commodore 64, one of the most crucial aspects to grasp is how memory is organized and accessed by the 6502-based CPU. Unlike modern systems with gigabytes of RAM and virtual memory management, the C64 operates within a tight 64KB address space, and every byte counts. The 6502’s 16-bit Address.
Read MoreDecoupling the CPU and Memory
When building a 6502 emulator, one of the most fundamental architectural decisions you’ll face is how to organize memory access. It’s tempting to embed the memory array directly into the CPU class – especially for early prototypes – but as your emulator grows, this tight coupling becomes a liability. A better approach is to implement.
Read MoreOpcode Attribute
Regarding observing the cycles, I changed my mind. At first, I didn’t attach any importance to it. After some more reading and getting a better understanding of the importance the cycles have, even in a simulation, I will will do some changes to the code.To do this in a way that keeps the code flexible.
Read More