aboutsummaryrefslogtreecommitdiff
path: root/nes/bus.go
blob: d9fd5214c5b17da12083ad15f87096a07a072aea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package nes

func (n *Console) Read(addr uint16) uint8 {
	switch {
	case addr < 0x2000:
		return n.RAM[addr&0x7FF]
	case addr >= 0x4020:
		return n.Cart.Mapper.CPURead(addr)
	default:
		return 0
	}
}

func (n *Console) Write(addr uint16, v uint8) {
	switch {
	case addr < 0x2000:
		n.RAM[addr&0x7FF] = v
	case addr >= 0x4020:
		n.Cart.Mapper.CPUWrite(addr, v)
	}
}