Age | Commit message (Collapse) | Author |
|
before the menu, and restart it after it ends.
|
|
sizes are also tested at 32 kHz and 44.1 kHz.
|
|
|
|
|
|
|
|
Hz audio at 2000-microsecond intervals works.
|
|
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.
|
|
|
|
the code is drawing a frame early in automatic frame skip mode. Otherwise, overflow occurs, and we skip 4 billion images.
|
|
frameskip mode."
This reverts commit d9b6322caafcbd355848a32acd8b8c0fa1746264.
|
|
Remove old automatic frameskip code.
|
|
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.
|
|
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.
|
|
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.
|
|
It's actually reloading icons that takes so much time.
|
|
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?).
|
|
|
|
parse, but is required by Super Mario All-Stars at least.
|
|
as of commit 3cd20e203f3b0af8c32921f86547a126d74b34eb (still not fixed in this commit!), Donkey Kong Country's Rareware icon is split by black columns.
|
|
|
|
is to eventually move it from the resolved-address ops as well, reducing the number of memory stores.
|
|
extent this will save on battery usage, though I do set the DSTWO's CPU to the lowest frequency while it sleeps.
|
|
|
|
* source/nds/displaymodes.cpp: Rewritten, assigned copyright to myself (GPLv2).
* CATSFC/system/language.msg: Changed the English and French text for display modes.
|
|
unicode.c, unicode.h, charsets.c, charsets.h: UTF-8 is universally used in CATSFC. Drop unused support for GBK/SJIS encodings.
|
|
This makes the menu text in Secret of Mana readable.
Sprites in Background Mode 5 are still messed up. At least they're at the right X coordinate, roughly...
|
|
|
|
(little-endian). Fold more identical case statements in the huge switch.
|
|
|
|
FAST_ALIGNED_LSB_WORD_ACCESS and use it to read absolute 24-bit addresses as either 1 byte & 1 halfword, or 1 halfword & 1 byte.
|
|
CATSFC/system/gui/boot.bmp: Remove the Engrish, although it was funny ("Enjoy yourself! All pleasure in it"). Replace it with a controller and the text "Loading...".
catsfc.bmp: Remove the CAT and replace it with a controller. In the .ini, it's already written as CATSFC anyway.
copyright: Update with image attribution per CC-BY-NC-ND 3.0.
source/images: Create, with .psd files for the two modified .bmp files.
|
|
|
|
|
|
|
|
|
|
tile.cpp: Optimise the common case of drawing an unclipped but possibly flipped 8x8 tile. Instead of calling WRITE_4PIXELS16 16 times, each performing setup and teardown, move the loop into DrawTile16.
tile.h, tile.cpp, gfx.h, gfx.cpp: End the use of global variable GFX.ScreenColors to pass around the current frame's palette. This saves on memory stores/loads.
|
|
At -O3 these get unrolled; at -Os they become shorter code, fitting into the cache with other code.
|
|
audio for a game. This allows some games that synchronise on the APU's actions to continue working.
|
|
match the version used in NDSSFC, and I failed to port to 1.53 anyway.
This reverts commit 2b23b5cbaf15bccc2aae0ff3ee91cedd26f101bd.
|
|
|
|
|
|
gfx.cpp, others: Avoid always checking for Settings.SixteenBit if FOREVER_16_BIT is defined.
port.h: Define FOREVER_16_BIT below PIXEL_FORMAT.
|
|
|
|
memory addresses being loaded every opcode.
|
|
|
|
screen. Method 1 causes problems after about 15 minutes; despite the double-buffering, screen updates start to tear in the middle consistently.
|
|
states, instead of delaying.
|
|
|
|
store instructions in many SNES, SA1 and APU opcodes.
Fix the APU half-carry bug, which may be audible.
globals.cpp: Get rid of A1, A2, A3, A4, W1, W2, W3, W4, Int8, Int16, Int32, Work8, Work16, Work32, Ans8, Ans16, Ans32.
|
|
source.txt.
|