- DONE: Fix C++ CPU_SHUTDOWN - Get/Set Byte/Word.
- DONE: Pitch modulation.
- DONE: Asm version NMI/IRQ problem.
- DONE: 16 bit support to tile redraw code.
- DONE: Write test for FIR filter code.
- DONE: Puzzle Bobble and mode 4 - is mode 4 offset per tile? Yes.
- DONE: Why doesn't the speech work properly in the MK* series, it used to in older
versions? (Watches for ENVX to reach a particular value).
- DONE: Hi res mode.
- DONE: interlace mode.
- DONE: Make envx reading switchable.
- DONE: Add my improved ROM type detection code.
- DONE: Snapshot to be called at anytime.
- DONE: Hi-res with interlace graphics mode.
- DONE: Finish mode 4 offset-per-tile support (Puzzle Bobble)
- DONE: Fix 8-bit sound code.
- DONE: Fix old-style joypad access via 0x4016 and 0x4017.
- DONE: Remove gfx.cpp once transparency is working
- DONE: Colour addition/subtraction (#2 attempt).
- DONE: Build array to show what areas of memory are ROM - routine to build WriteMap
array could use it. Also cheat code could use it.
- DONE: Save ROM values before applying cheats.
- DONE: Move command line parsing from unix.cpp into snes9x.cpp.
- DONE: Change snapshot code so it can be called at any time - will need flag to
stop graphics code rendering screen.
- DONE: Improve hi-res support.
- DONE: Add/sub support to tile redraw code.
- DONE: Analyze ROM format of other copy of Yoshi's Island - DOOM could be in same
- DONE: Add CPU_SHUTDOWN to asm version.
- DONE: Fix WAI instruction on asm version not to skip SPC700 instructions.
- DONE: Asm version crashes with X-Men Gem Wars.
- DONE: Fix asm MainLoop to correctly setup flags and PC's in structures so
snapshot saving works.
- DONE: extern "C" all structures accessed by the asm code.
- DONE: Fix sprite vertical scaling on a hi-res. interlaced screen.
- DONE: Portable snapshot format.
- DONE: AND, XOR and X-NOR graphics window combination modes.
- DONE: Colour window.
- DONE: Add mouse and SuperScope support.
- DONE: Add GrIP support.
- DONE: Add Micro$oft Sidewinder support.
- DONE: Change DOS port to use new allegro v3.0 library.
- DONE: Fix game genie codes support.
- DONE: Replace printfs with more general output function.
- Trigger sound register changes during/in sync with sound processing.
- Exact sound CPU and sound generation sychronisation.
- Write 65c816 test ROM.
- Ignore ADRS value setting if channel is key'ed off.
- Mode 6 - offset per tile, hi-res and interlace.
- Change 65c816 code to only use _Zero flag rather than _Zero and _Negative.
- Change 65c816 code to only increment PC after instruction has executed -
makes CPU_SHUTDOWN code slightly simpler and might be faster.
- Script to convert AT&T format code to NASM.
- SyncSpeed broken when very slow frame drawing in use - hi-res. interlace.
- Seems to be problem with Linux.
- Replicate SNES ROM image throught ROM memory range.
- Finish the SuperFX emulation.
- Improve portability of code.
- Change DOS port to use the SEAL sound library to get greater sound card
- Add DSP1 support.
- Cycle counting on SPC700 emulation.
- Re-write graphics and sound code in assembler.
- GUI on the DOS port.
- Fix mosaic effect on hi-res. modes.
- Add fixed colour addition on the hi-res. modes.
- Re-write SPC700 code in assembler (#2 attempt)
- Revisit ROM loading code to see if can improve ROM type detection.
- Clear old screen area if SNES screen changes size - coolworld changes
from 239 to 224 lines.
- Mode 7 128 colour, priority-per-pixel mode. (Winter Skiing)
- Mosaic effect and mode 7. (Street Fighter 2)
- Mosaic effect and hi-res.
- Mode 6 scroll offset-per-pixel and hi-res.
- Fixed colour addition/subtraction on modes 2, 4 and 6 (hi-res.)
- Mode 2, 4 and 6 horizontal scroll offset-per-pixel. (Chrono Trigger)
- Full 15-bit colour addition/subtraction rather than the current 13-bit code.
- Correct pixel priority when background is on both sub and main screens and
colour transparency effects are switched on.
- Pseudo 512 horizontal resolution (interpolation).
- A few SPC700 instructions missing or their exact function not known: BRK, DAA,
DAS and DIV.
- Cycle counting not exact for some addressing modes.
- 6502 emulation mode not fully supported.
- Mostly not working.
- Completely missing.