/
constants.go
61 lines (50 loc) · 1.17 KB
/
constants.go
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package gpu
import "github.com/Teshima-Tatsuya/GoBoy/pkg/types"
const SPRITE_NUM = 40
const CyclePerLine = 456
const (
SCREEN_WIDTH = 160
SCREEN_HEIGHT = 144
)
const OAMSTARTAddr types.Addr = 0xFE00
// Offset is FF00
const (
LCDCAddr types.Addr = 0x40
LCDSAddr = 0x41
SCYAddr = 0x42
SCXAddr = 0x43
LYAddr = 0x44
LYCAddr = 0x45
DMAAddr = 0x46
BGPAddr = 0x47
OBP0Addr = 0x48
OBP1Addr = 0x49
WYAddr = 0x4A
WXAddr = 0x4B
BCPSAddr = 0x68
BCPDAddr = 0x69
OCPSAddr = 0x6A
OCPDAddr = 0x6B
)
type Mode byte
const (
Mode_HBlank Mode = iota
Mode_VBlank
Mode_SearchingOAM
Mode_TransferringData
)
type WindowTileMapArea types.Addr
const (
WindowTileMapArea0 WindowTileMapArea = 0x9800
WindowTileMapArea1 = 0x9C00
)
type BGWindowTileDataArea types.Addr
const (
BGWindowTileDataArea0 BGWindowTileDataArea = 0x8800
BGWindowTileDataArea1 = 0x8000
)
type BGTileMapArea types.Addr
const (
BGTileMapArea0 BGTileMapArea = 0x9800
BGTileMapArea1 = 0x9C00
)