Aaron's To-Do List: Difference between revisions
From MAMEDEV Wiki
m (→Drivers) |
|||
(19 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
Note that nothing here is a promise. This all just represents ideas in my head. Who knows if I'll get to it all! | Note that nothing here is a promise. This all just represents ideas in my head. Who knows if I'll get to it all! | ||
== | ==High-level== | ||
* (done | * (done) <strike>convert sound cores into devices</strike> | ||
* | * (in progress) make scheduling a device thing instead of a CPU thing, allowing any device to participate | ||
* | * integrate proper localization (work with MAMEPlus!) | ||
* | * compile with UNICODE=1 for all builds (will deprecate Windows 9x support) | ||
* define & implement more general pipe-like interface for external communication | |||
* change OSD sound interface so it creates sound "targets" much like render targets | |||
* allow setting of realtime clock to fixed value from command line for regression testing | |||
==CPUs== | |||
* write x86 DRC front-end, unifying all x86/NEC variants | |||
* investigate and fix TMS32031 calculation bug | |||
==Debugger== | |||
* add timer window | |||
* add CHD viewer window | |||
* make workable in a fully command-line fashion | |||
* convert to using pipes | |||
* separate debugger from core application | |||
==3D== | |||
* Add texture management to poly.c | |||
** Accepts array of 8 32-bit parameters | |||
** Hashes those parameters and performs lookups | |||
** Automatically manages via LRU | |||
* Pre-compute textures in voodoo at upload time and remove on-the-fly format conversion for a bit more speed | |||
==Video== | ==Video== | ||
* render crosshairs in UI layer not in game containers | |||
* game-specific crosshair bitmaps and sizes | * game-specific crosshair bitmaps and sizes | ||
** user selectable? | ** user selectable? | ||
* | * fix crosshair rendering to understand scale and offset factors | ||
* font improvements: | * font improvements: | ||
** start with built-in font, then load others | ** start with built-in font, then load others | ||
** | ** standardize on BDC as the font format, provide BDF2BDC converter | ||
** good unicode font | ** find a good unicode font | ||
** user-selectable | ** user-selectable at runtime via menu? | ||
==Outputs== | ==Outputs== | ||
* convert output system to use pipes | |||
* add ability to get XML description of current game | * add ability to get XML description of current game | ||
== | ==Drivers== | ||
* write tests to figure out 3dfx mipmapping algorithm | |||
* remove use of MDRV_VBLANK_INT(count) where count > 1 | |||
* cliffhgr.c: | * cliffhgr.c: | ||
** add proper latching/buffering to ensure no dropouts | ** add proper latching/buffering to ensure no dropouts | ||
** fix 9928a emulation to match [http://www.sventech.com/~dereks/gallery2/main.php?g2_view=core:ShowItem&g2_itemId=2499 screenshot] | ** fix 9928a emulation to match [http://www.sventech.com/~dereks/gallery2/main.php?g2_view=core:ShowItem&g2_itemId=2499 screenshot] (broken link) | ||
* 3DO-based systems | * 3DO-based systems | ||
==Documentation== | ==Documentation== | ||
* write debugger documentation | |||
** Debugger basics (covers the main window, the keyboard shortcuts, and a couple of very basic commands) | |||
** Viewing memory (covers disasm/dump, memory and disassembly windows) | |||
** Breakpoints and watchpoints (covers basic breakpoints and watchpoint usage) | |||
** Expressions (covers using expressions to change values and the whole expression syntax) | |||
** Advanced breakpoints and watchpoints (covers conditionals, actions, etc) | |||
** Other techniques (covers tracing and other things) | |||
* write description for how to compute crosshair parameters | * write description for how to compute crosshair parameters | ||
==Other Stuff== | ==Other Stuff== | ||
* look into inpout32.dll for hooking up ZVG to WinMAME | * look into inpout32.dll for hooking up ZVG to WinMAME |
Latest revision as of 02:38, 25 November 2014
Note that nothing here is a promise. This all just represents ideas in my head. Who knows if I'll get to it all!
High-level
- (done)
convert sound cores into devices - (in progress) make scheduling a device thing instead of a CPU thing, allowing any device to participate
- integrate proper localization (work with MAMEPlus!)
- compile with UNICODE=1 for all builds (will deprecate Windows 9x support)
- define & implement more general pipe-like interface for external communication
- change OSD sound interface so it creates sound "targets" much like render targets
- allow setting of realtime clock to fixed value from command line for regression testing
CPUs
- write x86 DRC front-end, unifying all x86/NEC variants
- investigate and fix TMS32031 calculation bug
Debugger
- add timer window
- add CHD viewer window
- make workable in a fully command-line fashion
- convert to using pipes
- separate debugger from core application
3D
- Add texture management to poly.c
- Accepts array of 8 32-bit parameters
- Hashes those parameters and performs lookups
- Automatically manages via LRU
- Pre-compute textures in voodoo at upload time and remove on-the-fly format conversion for a bit more speed
Video
- render crosshairs in UI layer not in game containers
- game-specific crosshair bitmaps and sizes
- user selectable?
- fix crosshair rendering to understand scale and offset factors
- font improvements:
- start with built-in font, then load others
- standardize on BDC as the font format, provide BDF2BDC converter
- find a good unicode font
- user-selectable at runtime via menu?
Outputs
- convert output system to use pipes
- add ability to get XML description of current game
Drivers
- write tests to figure out 3dfx mipmapping algorithm
- remove use of MDRV_VBLANK_INT(count) where count > 1
- cliffhgr.c:
- add proper latching/buffering to ensure no dropouts
- fix 9928a emulation to match screenshot (broken link)
- 3DO-based systems
Documentation
- write debugger documentation
- Debugger basics (covers the main window, the keyboard shortcuts, and a couple of very basic commands)
- Viewing memory (covers disasm/dump, memory and disassembly windows)
- Breakpoints and watchpoints (covers basic breakpoints and watchpoint usage)
- Expressions (covers using expressions to change values and the whole expression syntax)
- Advanced breakpoints and watchpoints (covers conditionals, actions, etc)
- Other techniques (covers tracing and other things)
- write description for how to compute crosshair parameters
Other Stuff
- look into inpout32.dll for hooking up ZVG to WinMAME