summaryrefslogtreecommitdiff
path: root/lib/ultralib/src/os/initialize_emu.c
blob: cac68d382d5a8c11445ec0141decb251532fde21 (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
#ifndef _FINALROM

#include "PR/os_internal.h"
#include "PR/rdb.h"
#include "PRinternal/osint.h"

typedef struct {
    /* 0x0 */ unsigned int inst1;
    /* 0x4 */ unsigned int inst2;
    /* 0x8 */ unsigned int inst3;
    /* 0xC */ unsigned int inst4;
} __osExceptionVector;

static void* proutSyncPrintf(void* str, const char* buf, size_t n) {
    size_t sent = 0;

    while (sent < n) {
        sent += __osRdbSend(buf + sent, n - sent, RDB_TYPE_GtoH_PRINT);
    }
    return 1;
}

void __osInitialize_emu(void) {
    __printfunc = proutSyncPrintf;
}

#endif