Flash Programming Pod

A project log for Build of David Hunter's FPGA-based COSMAC VIP

Nothing "new" here, just my build of it.

Steve LSteve L 10/31/2017 at 01:250 Comments

So,  I built a small "pod" to program the flash chip, using an ESP8266. The "right" way to do this would be by modification of the FPGA and by using the serial port, but I don't know how to do that; this, I know how to do. "When all you have is a hammer, everything looks like a nail".

This pod is ESP8266 (ESP-12E, 4MB flash) based. If you press the button within 5 seconds of power on, it goes into Wifi mode; you connect to the access point and then you FTP a "file.bin" image to it. Then, reboot, and AFTER 5 seconds, you press the button and the flash chip is erased and programmed. Ugly code so far, but it works. Later, I'll make it entirely wireless with Telnet and OTA.

I used an assembler (capable of images >64K in size, specifically, NASM, an x86 assembler) to make 4K blocks, with the CHIP-8 monitor and a game in each block in the proper locations. So, in this use (where I'm really using only to structure bytes), it becomes a sort of pseudo-assembler. A bin2hex program was used  to create fake "DB 0xXX entries of the object CHIP-8 code of various games, which were INCluded. I'm working on a "big" file.bin image of perhaps 60 games that I found on Github.