70 lines
3.0 KiB
Plaintext
70 lines
3.0 KiB
Plaintext
Cxbx Todo (* denotes high priority, + denotes medium priority)
|
|
|
|
* Configurable dead zone, for touchy controllers
|
|
|
|
* For accurate timing, hijack QueryPerformanceCounter and his friends.
|
|
|
|
* Push Buffer Size is stored in a global. This may be important (hard to tell)
|
|
|
|
* PointSprite demo glitch is caused by incorrect textures being assigned.
|
|
Hacking the demo's code to re-set the texture before rendering the air
|
|
particles causes it to run perfectly. This should be fixed.
|
|
|
|
* As a solution to the Xbox-Never-Sleeps problem, EmuSwapFS can increment
|
|
and check a global variable, and Sleep(1) after N number of function
|
|
interceptions. This could be included in the core configuration options.
|
|
Be careful that these sleeps dont take place inside of a critical section.
|
|
|
|
* Perhaps for global variable detection, have some sort of array of
|
|
function + offset pairs to check. That way if an Xbe happens to not
|
|
use a particular function (wont get linked in), there are other chances
|
|
to locate the variable. In the even that none are found, the global ptr
|
|
should be set to NULL, and any references to it should not assume it
|
|
will not be NULL.
|
|
|
|
* Special temporarily X_D3DResource handles need to be kept track of and
|
|
periodically garbage collected. Garbage collection frequency can be a
|
|
core configuration option.
|
|
|
|
* Register() probably needn't re-unswizzle each time. cache a copy of
|
|
the address it was registered to (or a global table) and simply update
|
|
the data pointer to that IDirect3DTexture8 instance.
|
|
|
|
* Support cards that just plain dont have 32 bit color?
|
|
|
|
* The notorious Heap Allocation crash still needs to be solved on a low
|
|
level. It is strongly preferable to debug this instead of having to
|
|
intercept the entire Rtl heap set of functions.
|
|
|
|
* Stabilize TLS (it's close...)
|
|
|
|
+ Closing a console should not terminate the entire process.
|
|
|
|
+ Perfect the timing on KeTickCount. This could be updated periodically,
|
|
similar to the Xbox-Never-Sleeps problem.
|
|
|
|
+ Some sort of delete-after-emulation type of functionality?
|
|
|
|
+ Use SetDataFormat instead of parsing device input by hand?
|
|
|
|
+ Batch config all buttons (should be very easy..just click one by one)
|
|
|
|
+ Configuration screens may not necessarily need to be modal windows.
|
|
|
|
+ Xbe file associations via user configuration. This could include an
|
|
option to either automatically execute the Xbe, or simply open it up
|
|
in Cxbx's main window. For this purpose, Cxbx.dll should also be
|
|
registered in the system so that a converted Exe can run from anywhere.
|
|
|
|
Converted Exe files should use the Cxbx icon
|
|
|
|
When loading a file, menus and WM_CLOSE should be disabled and an update
|
|
progress should be sent via callback from core.
|
|
|
|
Encapsulate RecentFiles into a nice little class
|
|
|
|
Allow a logo bitmap to be added if one does not exist. This may require that
|
|
the size of headers be increased. (sizeof_headers).
|
|
|
|
Xbe::m_Header should be allocated dynamically to make room for huge headers.
|