Age | Commit message (Collapse) | Author | |
---|---|---|---|
2013-01-13 | Revert timer-interrupt audio, but not optimisations done since then. Get the ↵ | Nebuleon Fumika | |
controller status every scanline again. | |||
2013-01-13 | Raise the CPU only after the delay required by ds2_setBacklight(). | Nebuleon Fumika | |
2013-01-12 | Stop using the deprecated function S9xMixSamplesO and use S9xMixSamples instead. | Nebuleon Fumika | |
Wrap the offset into the audio buffer less often. | |||
2013-01-12 | Remove 2 extraneous delays. The 100-millisecond delays before ↵ | Nebuleon Fumika | |
ds2_setBacklight() MUST STAY, however, otherwise the emulator can crash with the bottom backlight off if a touch is recognised twice in a row. That happens with some broken styluses, so it's not unexpected. | |||
2013-01-12 | Fix a buffer overflow in audio handling code that corrupted memory used to ↵ | Nebuleon Fumika | |
carry the state of the GUI. | |||
2013-01-12 | ds2sound.h: Set the interrupt interval to 15.36 milliseconds and explain why. | Nebuleon Fumika | |
2013-01-11 | Stop constantly testing for 16-bit and stereo in sound handlers. Define ↵ | Nebuleon Fumika | |
FOREVER_16_BIT_SOUND and FOREVER_STEREO and use them throughout the code. This is essentially commit 6b36e79013d4c9273a96a9783a2bccdb516f174a, but for sound instead of graphics. | |||
2013-01-11 | Fix the interrupts glitching sound. Put the sound back at 22050 Hz. | Nebuleon Fumika | |
2013-01-11 | Reinstate some delays needed by the code to avoid crashing, and actually ↵ | Nebuleon Fumika | |
explain in code comments why they're needed. I know ds2_setBacklight(unsigned int) needs a delay before it, otherwise if done too close to another call, it crashes. This partially reverts commit 8951fdff1aada126257e07699ea6f132cb8d2e65. | |||
2013-01-09 | Release 1.17. | Nebuleon Fumika | |
2013-01-09 | Attempt to fix the crashing with sound interrupts, part 2: Stop the timer ↵ | Nebuleon Fumika | |
before the menu, and restart it after it ends. | |||
2013-01-09 | Increase the audio frequency to 48 kHz. Timer interrupt intervals and buffer ↵ | Nebuleon Fumika | |
sizes are also tested at 32 kHz and 44.1 kHz. | |||
2013-01-08 | Try fixing a crash in the sound interrupt. | Nebuleon Fumika | |
2013-01-08 | Release 1.16. | Nebuleon Fumika | |
2013-01-08 | Configurable interrupt interval for the sound timer. Right now, only 22050 ↵ | Nebuleon Fumika | |
Hz audio at 2000-microsecond intervals works. | |||
2013-01-08 | GLORIOUS interrupt-based sound playback. Now, the note-length-hopping ↵ | Nebuleon Fumika | |
problem isn't as apparent anymore, and automatic frame skipping doesn't go to 8 FPS all the time in Super Mario World. Thank the deities! Reverses the auto frameskip synchronisation from commit dac11c74ac112728016e51625ac9f2a727152ddd, because that doesn't play well with interrupts. | |||
2013-01-07 | Release 1.15. | Nebuleon Fumika | |
2013-01-07 | Require auto_equivalent_skip to be greater than 0 before decrementing it if ↵ | Nebuleon Fumika | |
the code is drawing a frame early in automatic frame skip mode. Otherwise, overflow occurs, and we skip 4 billion images. | |||
2013-01-07 | Revert "Add a bit that tolerates 1/16 latency per frame in automatic ↵ | Nebuleon Fumika | |
frameskip mode." This reverts commit d9b6322caafcbd355848a32acd8b8c0fa1746264. | |||
2013-01-07 | Add a bit that tolerates 1/16 latency per frame in automatic frameskip mode. | Nebuleon Fumika | |
Remove old automatic frameskip code. | |||
2013-01-07 | Smooth out the automatic frame skipping such that it doesn't go from 1 FPS ↵ | Nebuleon Fumika | |
to 8 FPS right away and constantly. The equivalent frame skip will be 2, 3, 5 or 8 most of the time, depending on the game, and will vary a bit depending on rendering demands. For example, the frame skipping in Super Mario World is 3 on the map and in graphically simple levels, and 5 in complex levels. | |||
2013-01-07 | Fix an off-by-one in the manual frameskip code. It would raise the sound ↵ | Nebuleon Fumika | |
speed by 25% if frame skip 3 (Show 1 in 4) rendered a frame early. Optimise the controller code. I don't expect to allow remapping any time soon, because the DS has buttons for every single SNES controller button and nothing more. | |||
2013-01-07 | Add 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-06 | Language file overhaul, part 2. Remove unused messages in all languages. | Nebuleon Fumika | |
It's actually reloading icons that takes so much time. | |||
2013-01-06 | Language message overhaul, part 1. | Nebuleon Fumika | |
Clean up the names of messages. Mark those that are unused as such in code comments. Raise the CPU level while loading a message file, because it really does take half a second to load a 16 KB file on the lowest frequency (what the eff?). | |||
2013-01-05 | Release 1.14. | Nebuleon Fumika | |
2013-01-05 | Sync ALL bits of the joypad again. This may make controls a bit slower to ↵ | Nebuleon Fumika | |
parse, but is required by Super Mario All-Stars at least. | |||
2013-01-02 | Sleep 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. | |||
2013-01-02 | Release 1.13. | Nebuleon Fumika | |
2013-01-02 | Make Display Mode 4 an antialiased whole-screen mode. | Nebuleon Fumika | |
* source/nds/displaymodes.cpp: Rewritten, assigned copyright to myself (GPLv2). * CATSFC/system/language.msg: Changed the English and French text for display modes. | |||
2013-01-01 | Remove unused files. This reduces the plugin's size by 214 KB. | Nebuleon Fumika | |
unicode.c, unicode.h, charsets.c, charsets.h: UTF-8 is universally used in CATSFC. Drop unused support for GBK/SJIS encodings. | |||
2012-12-31 | Release 1.12. | Nebuleon Fumika | |
2012-12-30 | Bump to version 1.11 for another release. | Nebuleon Fumika | |
2012-12-30 | Return to 22050 Hz audio. 48000 Hz was just too much to handle, apparently. | Nebuleon Fumika | |
2012-12-28 | Keep the audio processing unit (APU) enabled even when the user disabled the ↵ | Nebuleon Fumika | |
audio for a game. This allows some games that synchronise on the APU's actions to continue working. | |||
2012-12-27 | Accidentally committed the previous revision with sound functions emptied. | Nebuleon Fumika | |
2012-12-27 | Speed up rendering by an unknown amount. | Nebuleon Fumika | |
gfx.cpp, others: Avoid always checking for Settings.SixteenBit if FOREVER_16_BIT is defined. port.h: Define FOREVER_16_BIT below PIXEL_FORMAT. | |||
2012-12-26 | Add the update methods for the upper and lower screen into defines. | Nebuleon Fumika | |
2012-12-26 | Smoother sound. Raise the sound sampling frequency to 48000 Hz. | Nebuleon Fumika | |
2012-12-26 | Universally use update method 2 for the lower screen and 0 for the upper ↵ | Nebuleon Fumika | |
screen. Method 1 causes problems after about 15 minutes; despite the double-buffering, screen updates start to tear in the middle consistently. | |||
2012-12-26 | Wait for keys to be released after the yes/no dialog for deleting saved ↵ | Nebuleon Fumika | |
states, instead of delaying. | |||
2012-12-24 | Bump version number to 1.10 for the APU half-carry bug and optimisations. | Nebuleon Fumika | |
2012-12-24 | Bump to v. 1.09. Update the readme for cheats. Update the github link in ↵ | Nebuleon Fumika | |
source.txt. | |||
2012-12-24 | Merge branch 'cheats' | Nebuleon Fumika | |
2012-12-24 | Make the GUI accept and save Snes9x's cheat file format. Improve support for ↵ | Nebuleon Fumika | |
saving the values present in ROM/RAM before a cheat is applied. Beautify the cheat selection menu, making it more tabular. | |||
2012-12-23 | Correctly handle multi-part codes, for all cheat types (GG, PAR, GF). | Nebuleon Fumika | |
They are currently loaded as multiple codes, however. | |||
2012-12-23 | Screen tearing-related fix. | Nebuleon Fumika | |
2012-12-22 | Preliminary 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.) | |||
2012-12-21 | Eliminate the latency of button press recognition, which was bad enough to ↵ | Nebuleon Fumika | |
lose keys entirely sometimes, and could otherwise delay a button press or release by 200 ms. This was the entire reason I created the fork, and I finally did it! It syncs the controls every scanline of a frame, which costs about 60,000 MIPS instructions per frame to deal with. Luckily, the processor runs at 396 MHz, which means the cost of checking the controls is 1% of the CPU's power. | |||
2012-12-21 | Looks like only having 'lang' crashes the options dialog. Restore the array ↵ | Nebuleon Fumika | |
of pointers. |