diff --git a/README.md b/README.md index 088be0f..e30e860 100644 --- a/README.md +++ b/README.md @@ -23,13 +23,30 @@ An assembler for the 6502 microprocessor written in Ruby on FCEUX, got it to make some sounds, etc. Some Todos: - - I need to add the .byte operator to add data bytes. - I need to add the #\<$800 and #\>$800 style operators to select the MSB and LSB of immediate values during assembly. - - I need to make the text/code/data sections easier to configure, it is - currently set to 0x8000 like NES Prog ROM - - I need to add commandline options through the OptionParser library - I may make this into a Rubygem - - I need to split the project up into one class per file like usual. - Maybe I can put some better error messages. - I should just make a 6502 CPU emulator probably now too. + + Some new additions: + - added .org directive + - added .dw directive + - added .bytes directive + - added .incbin directive + - Invented my own iNES header directive that is JSON + - Split the project up into separate files per class + - Wrote some more unit tests + - Added OptionParser for commandline opts + - Tested a ROM with Sound output + - Tested a ROM that changes background color + +I decided that during the first pass of assembly, I should just initialize +an entire 65535 byte virtual memory images, and write the instructions to +their correct places, and then after resolving symbols during the second pass, +I just clip out the Cartridge ROM area and iNES header at the end, works great +so far. + +Next up I will port some more tutorials that use sprites and use controller input +and sound all together. +