From ab57b3067e7c7f7f89434a4d0178ffffca19f95d Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Sat, 14 Jun 2025 23:20:23 +0200 Subject: [PATCH] doc bug in `KaleidoScope_DrawWorldMap` --- src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c index 00c57579b0..10361bdf79 100644 --- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c +++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c @@ -592,7 +592,13 @@ void KaleidoScope_DrawWorldMap(PlayState* play, GraphicsContext* gfxCtx) { PAGE_BG_QUADS + WORLD_MAP_QUAD_POINT_FIRST + pauseCtx->cursorPoint[PAUSE_WORLD_MAP]; KaleidoScope_SetCursorPos(pauseCtx, pauseCtx->cursorSlot[PAUSE_MAP] * 4, pauseCtx->mapPageVtx); } else { + + //! @bug This causes a weird DMA request in `KaleidoScope_UpdateNamePanel`, + //! either for unintended data or outside the intended segment. + // This isn't a visual issue in practice because drawing the texture loaded in + // `KaleidoScope_UpdateNamePanel` is only done under `cursorSpecialPos == 0`. pauseCtx->cursorItem[PAUSE_MAP] = gSaveContext.worldMapArea + 0x18; + if (pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) { if (pauseCtx->stickAdjX > 30) { pauseCtx->cursorSpecialPos = 0;