My To-Do list, in no particular order:

  • Finish writing "Let's Emulate Space Invaders!" article for MAME dev wiki.
  • HLSL short-term plan: Improve shadow mask simulation by operating at very-high-res internally and splitting the frame across multiple quads in order to stay below individual texture size limits, then performing repeated 4x4-averaging downsizing passes to scale to the target resolution for maximum visual quality.
  • HLSL mid-term plan: Vector post-processing support. This is tricky, as currently there is a non-trivial amount of overhead from dispatching quads in immediate mode, and with each vector as an individual quad, performance goes south very quickly. However, this will need to be rectified in order to eventually support hardware rendering of individual polygons for 3D hardware.
  • HLSL long-term plans:
    • Add a GLSL port of my CRT shader suite.
    • Add support for shader-based hardware rendering of 3D hardware polygons.
  • N64 driver improvements (MAME/MESS):
    • Continue performance profiling and branch flattening in the RDP renderer.
    • Accelerate the RDP renderer by threading off non-overlapping triangles.
    • Emulate the 64DD peripheral.
    • Emulate the Transfer Pak peripheral.
  • Continue improving the 8-bit Atmel AVR core and emulate "Craft", by [lft], in MESS.
  • CD-i Improvements (MAME/MESS):
    • Work out more of the communications protocol in later versions of Quizard. This may require decapping or an actual CD-i unit on which to run tests, as inputs and possibly other things like protection are handled by a small PCB with an 8051 MCU on it that communicates with the base CD-i unit through the standard rear serial port.
    • Work out more of the CDIC behavior. Specifically, work out how to make Zelda's Adventure not hang when walking onto the next screen while also not making Lemmings crash immediately upon playing PCM audio.
    • Possibly emulate other CD-i models in order to improve compatibility by cross-checking behavior on different hardware revisions.
  • Palm improvements (MESS): Add support for more hardware revisions by emulating the different 68k system-on-a-chip revisions.

If anyone wants to take these tasks off my plate, please feel welcome to do so.