aboutsummaryrefslogtreecommitdiff
path: root/source/nds/gui.h
AgeCommit message (Collapse)Author
2013-05-20Add an option to put the game on the Lower Screen.Nebuleon Fumika
* Before entering the menu, copy the game screen to the Upper Screen if it's on the Lower Screen. * Now, the frame that's shown in the menu doesn't appear to be the previous frame for a fraction of a second anymore.
2013-03-30Increase the row count from 6 to 8 in the GUI, file selector and cheats. ↵Nebuleon Fumika
Remove the useless "dynamic cheat" functions.
2013-03-26Uniformise the location of the title icon across all interfaces, default and ↵Nebuleon Fumika
custom.
2013-03-26Uniformise the location of the back button across all interfaces, default ↵Nebuleon Fumika
and custom.
2013-03-10Center text without needing endless spaces; also support \n in centered text.Nebuleon Fumika
* Text positioning in message boxes is now controlled by #defines. * The various MSG_PLAY_SLIDE<n> messages are now one, MSG_SCREENSHOT_SLIDESHOW_KEYS, with \n between lines. * Use \n in some more message pairs. * Lengthy scrollers broke. This will be investigated in a later commit.
2013-02-19Start option text more to the left to fit more text in a line. Widen cheat ↵Nebuleon Fumika
descriptions and file names in selectors, to the left AND to the right, to make the interface consistent again (and for practical purposes).
2013-02-14Add hotkeys to quickly load from and save to saved state #1, as well as to ↵Nebuleon Fumika
toggle full-screen (going from mode 3, middle of screen, to mode 4, full-screen smoothed). This commit uses text that has not been validated in some languages.
2013-02-09Add retro sound as a setting in all languages except Chinese.Nebuleon Fumika
2013-02-06Yeah... Despite the audio optimisations, sound still crackles with display ↵Nebuleon Fumika
double-buffering. Disable that, again.
2013-02-06Reinstate frame skipping options 0 and 1, but keep the new meaning (>= 2 ↵Nebuleon Fumika
equivalent skip level) for automatic frame skipping. Remove the automatic CPU frequency option, which was making audio emit 0.25 second of silence every so often.
2013-02-06Implement automatic CPU frequency switching, which improves battery life if ↵Nebuleon Fumika
playing games that don't use all of the MIPS CPU. If all of it is indeed needed, then the game will constantly play at 396 MHz.
2013-02-05Force both manual and automatic frameskipping to be at or above 2. Resets ↵Nebuleon Fumika
the default value for all games which previously had this value configured.
2013-02-05Change the upper screen updates to be double-buffered. Require that one ↵Nebuleon Fumika
audio buffer be free (1 out of 4).
2013-02-03Synchronise the controller status more spread out inside a rendered frame:Nebuleon Fumika
* before rendering a background; * before rendering sprites; * while rendering more than 128 samples of audio at once ("Prefer fluid video"); * after every 16 scanlines of CPU execution instead of every 1; * while waiting for an audio buffer to become available; * while killing time between frames with fast-forward disabled. Controller presses and releases are now combined in a DS button bitfield using a shorter 32-bit algorithm. See entry.cpp:NDSSFCAccumulateJoypad and #define ACCUMULATE_JOYPAD in the source. This is still not suitable for playing platformers frame-perfectly, but it's much better than half a second of latency to press or release a button, and one still needs to press buttons a bit more than just light taps. I'd say 50 milliseconds is the latency now. Platformers requiring more precision can be played with frameskip 0. DMA does not require double-buffered displaying, so synchronise the controller more often by disabling double-buffered displaying again.
2013-02-03Force waiting for a screen to be transferred (update mode 1) because ↵Nebuleon Fumika
otherwise the next screen can go into DMA. Use channel 1 instead of channel 5, which must be busy for some reason.
2013-02-03Make it easier to change the "high" and "low" CPU frequencies, as well as to ↵Nebuleon Fumika
switch to the user's chosen frequency for the game. Conflicts: source/nds/ds2_main.c source/nds/entry.cpp source/nds/gui.c
2013-02-01Add an option that controls which element should be more fluid, per game: ↵Nebuleon Fumika
video or audio. This makes most games playable, but the player can choose to get fluid audio instead of fluid video in sound-test modes or games with epic soundtracks.
2013-02-01When starting CATSFC, assume the backlights are both on, so don't delay 100 ↵Nebuleon Fumika
milliseconds and set both backlights to on.
2013-01-20Prepare data structures for adding hotkeys.Nebuleon Fumika
2013-01-19Prepare code to ask for a hotkey. Prepare a temporary fast-forward switch.Nebuleon Fumika
2013-01-18Fix multiple compiler warnings: forward declaration, implicit declaration, ↵Nebuleon Fumika
unused variable, variable used uninitialised, unused function (when not used anywhere else with a #define).
2013-01-07Add support for user-selected and automatic frame skipping. Add support for ↵Nebuleon Fumika
PAL timings (20 ms per frame). User-selected frameskip causes slowdowns if the game runs slower than the resulting frame rate, but synchronises correctly if the game runs faster. Automatic frame skipping is still the default. It now only skips up to 8 frames, but in some games still skips that entire 8 frames. What's needed is an algorithm that averages frame latencies over a few seconds and skips while the latency is LOWER than the average.
2013-01-02Sleep when the lid is closed AND emulation is running. I don't know to what ↵Nebuleon Fumika
extent this will save on battery usage, though I do set the DSTWO's CPU to the lowest frequency while it sleeps.
2012-12-26Add the update methods for the upper and lower screen into defines.Nebuleon Fumika
2012-12-22Preliminary Snes9x-based cheat code support. Not tested, because the file ↵Nebuleon Fumika
selection interface freezes when it gets to the folder containing Mightymo's cheat files, whereas it did not do this before with the converted Mightymo cheats. (335 files -> 679, though.)
2011-03-05first commitKitty Draper