summaryrefslogtreecommitdiff
path: root/src/dolphin/os/OSFont.c
blob: 7d15a8a9905663ca8c1c288e79429bb5805500b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include "dolphin/os/OSFont.h"
#include "dolphin/os/OS.h"
#include "dolphin/vi/vi.h"

u16 OSGetFontEncode(void) {
    static u16 fontEncode = 0xFFFF;

    if (fontEncode <= 1) {
        return fontEncode;
    }

    switch (*(u32*)OSPhysicalToCached(0xCC)) {
    case VI_NTSC:
        fontEncode = ((__VIRegs[55] & 2) != 0)
                         ? OS_FONT_ENCODE_SJIS
                         : OS_FONT_ENCODE_ANSI;
        break;
    case VI_PAL:
    case VI_MPAL:
    case VI_DEBUG:
    case VI_DEBUG_PAL:
    case VI_EURGB60:
    default:
        fontEncode = OS_FONT_ENCODE_ANSI;
    }

    return fontEncode;
}