nds-bootstrap icon indicating copy to clipboard operation
nds-bootstrap copied to clipboard

Sonic Rush Adventure intro audio video desync due to slowdown

Open DarthPidgey opened this issue 10 months ago • 5 comments

Game Console(s) used

  • [ ] Nintendo DS
  • [ ] Nintendo DS Lite
  • [ ] Nintendo DSi
  • [x] Nintendo DSi XL/LL
  • [ ] Nintendo 3DS
  • [ ] Nintendo 3DS XL/LL
  • [ ] New Nintendo 3DS XL/LL
  • [ ] Nintendo 2DS
  • [ ] New Nintendo 2DS XL/LL

Launch Method

Launched via SD card, latest Twilight Menu ++v27.12.3 and NDS Bootsrap v2.3.3 hotfix 3

Version used

v2.3.3 hotfix 3 release

Game tested/used/applicable

Sonic Rush Adventure (USA)

Expected Behavior

The intro is supposed to not slowdown

Actual Behavior

Slowdown occurs when Tails and Marine show up in the intro causing desyncs with the sound effects in the intro like the dolphins splashing and the nametags appearing and disappearing and a moment of silence when the intro song is supposed to lead right into the title screen song

Steps to reproduce

Start game and watch intro play automatically or skip the logos with start

nds-bootstrap.ini

[NDS-BOOTSTRAP] DEBUG = 0 LOGGING = 1 ROMREAD_LED = 0 LOADING_SCREEN = 1 CONSOLE_MODEL = 0 PRECISE_VOLUME_CONTROL = 0 COLOR_MODE = 0 LOADING_DARK_THEME = 0 LOADING_SWAP_LCDS = 0 LOADING_SCREEN_FOLDER = /_nds/TWiLightMenu/dsimenu/loading/ LOADING_FRAMES = 0 LOADING_FPS = 0 LOADING_BAR = 1 LOADING_BAR_Y = 0 NDS_PATH = sd:/roms/nds/Sonic Rush Adventure (U).nds LANGUAGE = 1 DSI_MODE = 1 BOOST_CPU = 0 BOOST_VRAM = 1 SAV_PATH = sd:/roms/nds/saves/Sonic Rush Adventure (U).sav RAM_DRIVE_PATH = sd:/null.img DONOR_SDK_VER = 0 GAME_SOFT_RESET = 0 PATCH_MPU_REGION = 0 PATCH_MPU_SIZE = 0 CARDENGINE_CACHED = 1 FORCE_SLEEP_PATCH = 0 SOUND_FREQ = 1 AP_FIX_PATH = CACHE_FAT_TABLE = 0 DMA_ROMREAD_LED = -1 EXTENDED_MEMORY = 0 CACHE_BLOCK_SIZE = 0 SDNAND = 0 MACRO_MODE = 0 HOTKEY = 184 GUI_LANGUAGE = en REGION = 1 CARD_READ_DMA = 1 ASYNC_CARD_READ = 0 USE_ROM_REGION = 1 B4DS_MODE = 0 HOMEBREW_ARG = SLEEP_MODE = 1

Logs

NDSBTSRP.LOG

Other notes

this seems to be an oddly widespread issue when it comes to playing DS games on anything besides original carts. The same kind of slowdown occurs on every flashcart i've tested except N-cards (CycloDS, R4i3DS Plus, No name generics) and also in Desmume but doesn't occur in MelonDS. Changing the CPU speed to DSi fixes the issue but that feels like not a true solution when this isn't supposed to happen in the first place and for all I know DSi mode could cause issues later.

Will you be available for future issues and/or replies?

yes

DarthPidgey avatar Jan 28 '25 10:01 DarthPidgey

Try downgrading to v2.2.2.

RocketRobz avatar Jan 28 '25 21:01 RocketRobz

doesn't make a difference, still desyncs

DarthPidgey avatar Jan 28 '25 22:01 DarthPidgey

I see no reason for this to happen, considering the opening music already gets pre-loaded before boot. Is the ROM modified in any way?

RocketRobz avatar Jan 28 '25 22:01 RocketRobz

No, the CRC and MD5 matches the good known dumps. The music plays fine, it's just that it gets desynced cause the game slows down from seemingly too much on screen, which is the odd thing cause a real cart doesn't get slowdown. From more research notably this game was considered a "Benchmark game" for of the era flashcarts as a test to see if games would have extra slowdown compared to a real cart or a N-Card flashcart. I feel like this implies there is some extra overhead that interferes with games that really push the DS graphically.

DarthPidgey avatar Jan 28 '25 23:01 DarthPidgey

Ok, I can reproduce this on DS and DSi as well. It seems pre-loading the opening music only partially fixes the issue. Unfortunately, pre-loading more data on 3DS (with commit 88db8b44) does not fully fix it on that console's side.

RocketRobz avatar Jan 30 '25 02:01 RocketRobz