Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGES
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ Emulation fixes:
- GBA Video: Fix edge case with double-height sprites wrapping (fixes mgba.io/i/2824)
- GBA Video: VCOUNTER flag should be updated on DISPSTAT write (fixes mgba.io/i/1873)
Other fixes:
- 3DS: Don't detach autosave thread (fixes mgba.io/i/3561)
- Core: Fix inconsistencies with setting game-specific overrides (fixes mgba.io/i/2963)
- Debugger: Fix writing to specific segment in command-line debugger
- GB Video: Fix video log replaying freezing when video is disabled
Expand Down
5 changes: 4 additions & 1 deletion src/platform/3ds/gui-font.c
Original file line number Diff line number Diff line change
Expand Up @@ -91,10 +91,13 @@ void GUIFontIconMetrics(const struct GUIFont* font, enum GUIIcon icon, unsigned*

void GUIFontDrawGlyph(struct GUIFont* font, int glyph_x, int glyph_y, uint32_t color, uint32_t glyph) {
int index = fontGlyphIndexFromCodePoint(font->font, glyph);
if (index < 0) {
return;
}
fontGlyphPos_s data;
fontCalcGlyphPos(&data, font->font, index, 0, 1.0, 1.0);

C3D_Tex* tex = &font->sheets[data.sheetIndex];
const C3D_Tex* tex = &font->sheets[data.sheetIndex];
ctrActivateTexture(tex);

float width = data.texcoord.right - data.texcoord.left;
Expand Down
4 changes: 3 additions & 1 deletion src/platform/3ds/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -1066,7 +1066,7 @@ int main(int argc, char* argv[]) {
ConditionInit(&runner.autosave.cond);

APT_SetAppCpuTimeLimit(20);
runner.autosave.thread = threadCreate(mGUIAutosaveThread, &runner.autosave, 0x4000, 0x1F, 1, true);
runner.autosave.thread = threadCreate(mGUIAutosaveThread, &runner.autosave, 0x2000, 0x1F, 1, false);

Thread thread2;
if (ThreadCreate(&thread2, _core2Test, NULL) == 0) {
Expand All @@ -1093,6 +1093,7 @@ int main(int argc, char* argv[]) {
useRomfs = mGUIGetRom(&runner, initialPath, sizeof(initialPath));
if (!useRomfs) {
romfsExit();
GUIFontDestroy(font);
_cleanup();
return 1;
}
Expand All @@ -1110,6 +1111,7 @@ int main(int argc, char* argv[]) {
if (useRomfs) {
romfsExit();
}
GUIFontDestroy(font);
_cleanup();
return 0;
}