MooglyGuy's To-Do List: Difference between revisions

From MAMEDEV Wiki
(Initial version)
 
(Updated based on recent things.)
Line 1: Line 1:
My To-Do list, in no particular order:
My To-Do list, in no particular order:


* Finish the Nintendo 64 driver in MESS:
* 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.
** Determine exactly how vertices are rounded, in order to fix gaps between triangles and overlapping triangles
* 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.
** Determine exactly how vertex parameters are rounded, in order to fix mis-aligned textures and texture jitter in rounded triangles
* HLSL long-term plans:
** Determine how the Color Combiner handles parameter overflow and underflow. Currently it is not possible to have the balloons at a race's start in Mario Kart 64, the title-screen car in Roadsters Trophy, and the rotating N on the Ocarina of Time opening screen all appear correctly in the same build.
** Add a GLSL port of my CRT shader suite.
** Figure out why there is static in the N64 driver's audio stream, but not when directly logging the samples that are pushed out to the DMADAC
** Add support for shader-based hardware rendering of 3D hardware polygons.
** Fix MIPS TLB functionality or coerce someone else into doing so, in order to get Indiana Jones and the Infernal Machine, Goldeneye, and probably other games to boot.  Indiana Jones currently does not boot because it fails a tlbp opcode that should succeed.
* N64 driver improvements (MAME/MESS):
** Determine why other games completely fail to boot.
** Continue performance profiling and branch flattening in the RDP renderer.
** Figure out the functionality of the RDP's texture LOD system.  Should fix the moon in Ocarina of Time.
** Accelerate the RDP renderer by threading off non-overlapping triangles.
** Figure out the functionality of the RDP's Z-compression system.  should fix Z-fighting decal textures.
** Emulate the 64DD peripheral.
** Emulate the 64DD peripheral.
** Emulate the Transfer Pak peripheral.
** Emulate the Transfer Pak peripheral.
* Add an 8-bit Atmel AVR core to MAME / MESS and emulate "Craft", by [lft].
* Continue improving the 8-bit Atmel AVR core and emulate "Craft", by [lft], in MESS.
* Continue adding savestates to drivers.
* CD-i Improvements (MAME/MESS):
* Continue merging memory maps.
** 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, contact me through my site, http://moogle-tech.com/
If anyone wants to take these tasks off my plate, please feel welcome to do so.

Revision as of 07:52, 18 November 2011

My To-Do list, in no particular order:

  • 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.