blob: c7e5d5fcfafccfbbb291f91f4f0c938cb7dc0429 (
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
29
30
31
32
33
34
35
36
37
38
|
#ifndef D_BG_PLC_H
#define D_BG_PLC_H
#include "d/col/bg/d_bg_pc.h"
enum {
ZELDA_CODE_SIZE = 0x14
};
struct PLC {
/* 0x0 */ u32 magic;
/* 0x4 */ u16 m_code_size;
/* 0x6 */ u16 m_num;
/* 0x8 */ sBgPc field_0x8[0];
};
class dBgPlc {
public:
dBgPlc() : mBase(nullptr) {}
void setBase(void *);
const sBgPc *getCode(int idx) const {
sBgPc *rv = mBase->field_0x8;
rv += idx;
return rv;
}
const dBgPc *GetDBgPc(int idx) const {
return (const dBgPc *)getCode(idx);
}
u32 getGrpCode(int idx) const;
private:
/* 0x00 */ PLC *mBase;
};
#endif
|