I learned programming in 1977, age 12, on an RCA VIP (CDP1802 cpu) with 2K RAM, a hex keypad, composite video out (thru an RF modulator) and cassettes. None of that fancy ASCII stuff, and floppy drives were an unimaginable luxury.<p>CHIP-8 was a fun, approachable language. "Hacking" was hand-disassembling the CHIP-8 programs in the user manual.<p>It was easy to understand how computers were simply more complex TTL and CMOS projects like my father and I built each month from Popular Electronics and Radio Electronics. Dad worked at RCA, programmed in IBM 360 Assembler, FORTRAN, and at that time was helping write the ATLAS language (IEEE 416). Together we learned Tiny BASIC, and this launched my computer business for forty years.<p>Kudos to all the folks keeping CHIP-8 alive as a vital link from Boole and Shannon thru machine code to the "modern" world.
> I decided to use C. Wait a minute, isn't that illegal? This might surprise you but, it is not! You are not forced to use Rust for all new projects henceforth!<p>That made my day!
I have previously written about coding a chip8 emu inside the nand2tetris emu: <a href="https://abhaynayar.github.io/blog/chip8-in-jack.html" rel="nofollow noreferrer">https://abhaynayar.github.io/blog/chip8-in-jack.html</a>
Nice to see someone implementing a chip8 emulator.
This is always a great learning project.<p>However, I do not think that he needs to go so far to explain what a stack does.
If you can understand the rest of the text you probably have enough context and knowledge to know that already.
What stack is this blog using? It looks like plain HTML/CSS/JS. It's very nice.<p>I'm asking because the choice of stack to use is keeping me away from starting my own blog.
Maybe a typo, maybe I didn't get it:<p>> 6101 is simply telling the CPU "set V1 (1 comes from the 3rd nibble) to the value of 0c"<p>Shouldn't it set V1 to 0x01?