Aaron's To-Do List: Difference between revisions

From MAMEDEV Wiki
No edit summary
No edit summary
Line 45: Line 45:
* add pause notifications
* add pause notifications
* add ability to get XML description of current game
* add ability to get XML description of current game
===Debugger===
* clean up APIs
* add timer window
* add CHD viewer window


===Driver cleanups/To do===
===Driver cleanups/To do===

Revision as of 21:19, 8 February 2007

Note that nothing here is a promise. This all just represents ideas in my head. Who knows if I'll get to it all!

Immediate Bugs

  • add warning/error about wacky performance counter results
  • identify and fix up 64-bit specific errors
  • add proper latching to the Cliffhanger driver

Video

  • add support for separate visible versus blanking rects
  • font improvements:
    • built-in font that is smaller, proportional
    • good unicode font
    • change UI logic to allow for minimum font sizes

Interrupts

  • add asserts to ensure proper PULSE_LINE/HOLD_LINE usage
  • add MDRV_SCANLINE interrupt generators
  • change MDRV_CPU_VBLANK_INT to specify a screen number
  • add timed interrupt generator: cpunum_toggle_input_line_timed(cpu, input, time). This will ASSERT_LINE immediately and then CLEAR_LINE after the specified time. 'time' can be zero, which is equivalent to PULSE_LINE, though perhaps we should discourage such usage since it's not realistic. If you've asserted the line via this function, and another cpunum_assert_input_line_timed() call is made, it will override the previous CLEAR_LINE time with the new time. Note that this is not a proper wire-OR, so we could alternatively reschedule the CLEAR_LINE to the maximum of the new time and the previously pending time.

Sound

  • fix all sound cores to be independent of Machine->sample_rate
  • remove OSD hack that allows changing of sample rates on the fly

Graphics

  • fix drawgfx/palette global palette-ness
    • certain formats should imply a palette
    • palettes should be independent objects
    • each palette can have multiple clients
    • each client can request a list of changes, and clear out flags

CPUs

  • automatically respect CPUINFO_INT_CLOCK_DIVIDER
  • finish work on 64-bit DRC engine
  • write 64-bit MIPS3 DRC
  • investigate and fix TMS32031 calculation bug

Sources

  • move fronthlp.c into common code
  • push more options into the code to reduce OSD burden
  • break core fileio.c into fileio.c and corefile.c
  • make util directory with corefile.c and all other utilities with light dependencies

Outputs

  • add pause notifications
  • add ability to get XML description of current game

Debugger

  • clean up APIs
  • add timer window
  • add CHD viewer window

Driver cleanups/To do

  • astrocde.c
  • vicdual.c
  • Cubo CD32 (Amiga AGA-based)
  • 3DO-based systems

Documentation

  • write description for how to compute crosshair parameters

mamedev.org

  • source code browsing (a la MAWS but with proper spacing)