rlm@439: * Apr 22 rlm@439: - [ ] get third-kind to play, with square-wave modulation. rlm@439: - [ ] multiple tracks rlm@439: rlm@439: rlm@439: rlm@51: * Low level rlm@51: rlm@51: ** simplifications rlm@51: - [ ] remove vba code rlm@51: - [ ] remove prof rlm@51: - [ ] remove lua rlm@51: rlm@51: ** additional functionality rlm@55: - [X] step the simulator rlm@62: - [X] get CPU data (registers) rlm@61: - [X] get RAM / ROM data rlm@57: - [X] save / load state (use savestates) rlm@62: - [ ] write current frame as image rlm@62: - [ ] write sound to wav file rlm@55: - [X] send button presses to the GB rlm@51: rlm@51: * high level rlm@85: - [X] write vbm files from clojure rlm@85: - [X] remove battery backup files rlm@52: rlm@52: rlm@52: rlm@52: rlm@52: rlm@52: rlm@52: saveState() --- returns a SaveState object rlm@52: loadState(SaveState) --- restores a state rlm@52: writeState(SaveState) --- writes a SaveState to a file. rlm@52: rlm@52: getRAM() --- returns the ram of the GB in native buffer. rlm@52: getRegisters() --- returns a map of register-keywords => values rlm@52: rlm@52: getFrame() --- returns a BufferedImage of data which represents the rlm@52: current frame. rlm@52: rlm@52: step(int buttons) --- steps the game while pressing the chosen button(s) rlm@54: rlm@66: rlm@66: idea: use konami code to invoke ram writer