I found the 74hc299 shift register was giving me fits, so I removed it for now and wired the data bus temporarily directly to the arduino to work through reading and writing to ram. I started by writing a repeating but easily distinguishable pattern to the ram to make sure it can write to all the ram and read it back. 64kb in 2 chips of 32kb.
I can come back later and add the shift register back.
I then patched the 6502 emulator code to read and write to the RAM. There seems to be some slower performance that I am tracking down. I hope that the shift register performance isnt too slow. I did notice that splitting the address into two bytes by doing bitshift seems slow. And I haven’t started figuring out what to use for rom or sdcard, and memory mapping.
I have to collect up the links for the EHBasic project and the Arduino 6502 project I based my modifications on. I do plan on cleaning up the code and posting it.
One step closer. I have both the address bus (orange wires) and data bus (green wires) working and reading. I am able to select the memory address and bank (chip select) and the data bus latches and displays the bits stored. I still have to work through the details of using the universal shift register and timing the memory writes with it so it can read and write bytes to the bus.
Once I have that working I can patch the 6502 emulator to use the external ram instead of the microcontroller ram. Turns out the method I used to select the ram, is similar to how you would do bank switching on an Apple II. Once I have a method to dynamically map memory, I have to decide where the zero page and registers will reside, if I use microcontroller ram, I can’t spy on those items, but it may prove faster. I haven’t even thought about video display or physical I/O
Thank you MakerBot for being the catalyst for a new generation.
Makerbot has generously donated a majority of the funding needed to get our school it’s own Makerbot 3d printer through Donors Choose
Back when I was younger, the biggest impact to my future, and education was the Commodore Pet computers that my elementary school had acquired, later on the Apple IIe’s that Apple computer helped get into our schools. It taught me how to problem solve, program, and follow through.
The new generation was slowly losing touch with this do it yourself, figure it out sense of accomplishment. Computers and technology have become so much like appliances that there just isn’t that same feeling when you figure something out for the first time.
3d printing is currently at a stage where home personal computers were in the 70’s and 80’s. It was magical, and inspiring to figure things out. This is the opportunity we get to give this generation. The chance to adopt a technology and mold it to their own liking.
Thanks again to Makerbot and the maker community for creating a revolution in technology for future engineers, artists, and tinkerers.