Hey all, I am in week 2 of CS 467, and things are progressing. I have been assigned to a group, and our group project is to build an emulator that can run a rom of Space Invaders! We are taking this project step by step, and have just finished going over the plan.
At first glance, it looked like this project was going to be extremely easy, that there was no way this would take 4 people all term to complete. When I started digging into the project, it quickly became overwhelming. Now that our team has met, and formulated a plan, and talked a few details out, the difficulty level is back down to doable.
Our first step, after the project planning, is to create a Disassembler. The Disassembler is a giant Switch function that reads through a rom file, byte by byte, and identifies the instruction based on the predetermined instructions for the 8080 Intel Chip. We need to go through the System Manual of the 8080 in order to determine what each of the bytes do, and if they coordinate with 1 or 2 of the bytes after it.
I estimate that for the next week or so, we will be looking up the binary address for each of the 256 instructions, and labeling them. When finished, we will be able to run the Disassembler using the rom file we downloaded from the internets, and it should spit out what each byte in the rom does. This is all new and exciting, so I and the team are looking forward to it.