elf

package
v0.24.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 18, 2023 License: GPL-3.0, GPL-3.0 Imports: 15 Imported by: 0

Documentation

Overview

Package ace implements the ELF cartridge mapper.

ARM ELF/relocation information in the legacy ARM development suite. Convenient copy of relevant document (using the ARM document numbering as reference in the comments - "SWS ESPC 0003 A-08")

https://developer.arm.com/documentation/dui0067/d/Chddidgj

Index

Constants

View Source
const (
	ADDR_IDR    = 0x10
	DATA_IDR    = 0x20
	DATA_ODR    = 0x30
	DATA_MODER  = 0x40
	GPIO_MEMTOP = 0x50
)

Variables

This section is empty.

Functions

func NewElf

func NewElf(env *environment.Environment, pathToROM string, inACE bool) (mapper.CartMapper, error)

NewElf is the preferred method of initialisation for the Elf type.

Types

type Elf

type Elf struct {
	// contains filtered or unexported fields
}

Elf implements the mapper.CartMapper interface.

func (*Elf) ARMinterrupt

func (cart *Elf) ARMinterrupt(addr uint32, val1 uint32, val2 uint32) (arm.ARMinterruptReturn, error)

implements arm.CartridgeHook interface.

func (*Elf) Access added in v0.20.0

func (cart *Elf) Access(addr uint16, _ bool) (uint8, uint8, error)

Access implements the mapper.CartMapper interface.

func (*Elf) AccessPassive added in v0.20.0

func (cart *Elf) AccessPassive(addr uint16, data uint8)

AccessPassive implements the mapper.CartMapper interface.

func (*Elf) AccessVolatile added in v0.20.0

func (cart *Elf) AccessVolatile(addr uint16, data uint8, _ bool) error

AccessVolatile implements the mapper.CartMapper interface.

func (*Elf) BreakpointsEnable added in v0.20.0

func (cart *Elf) BreakpointsEnable(enable bool)

BreakpointsEnable implements the mapper.CartCoProc interface.

func (*Elf) BusStuff

func (cart *Elf) BusStuff() (uint8, bool)

BusStuff implements the mapper.CartBusStuff interface.

func (*Elf) CoProcID

func (cart *Elf) CoProcID() string

CoProcID implements the mapper.CartCoProc interface.

func (*Elf) CoProcRead16bit added in v0.20.0

func (cart *Elf) CoProcRead16bit(addr uint32) (uint16, bool)

CoProcRead16bit implements the mapper.CartCoProc interface.

func (*Elf) CoProcRead32bit added in v0.20.0

func (cart *Elf) CoProcRead32bit(addr uint32) (uint32, bool)

CoProcRead32bit implements the mapper.CartCoProc interface.

func (*Elf) CoProcRead8bit added in v0.20.0

func (cart *Elf) CoProcRead8bit(addr uint32) (uint8, bool)

CoProcRead8bit implements the mapper.CartCoProc interface.

func (*Elf) CoProcRegister added in v0.20.0

func (cart *Elf) CoProcRegister(n int) (uint32, bool)

CoProcRegister implements the mapper.CartCoProc interface.

func (*Elf) CoProcRegisterSet added in v0.20.0

func (cart *Elf) CoProcRegisterSet(n int, value uint32) bool

CoProcRegister implements the mapper.CartCoProc interface.

func (*Elf) CoProcStackFrame added in v0.20.0

func (cart *Elf) CoProcStackFrame() uint32

CoProcStackFrame implements the mapper.CartCoProc interface.

func (*Elf) CoProcState

func (cart *Elf) CoProcState() mapper.CoProcState

CoProcState implements the mapper.CartCoProc interface.

func (*Elf) CopyBanks

func (cart *Elf) CopyBanks() []mapper.BankContent

IterateBank implements the mapper.CartMapper interface.

func (*Elf) ELFSection

func (cart *Elf) ELFSection(name string) ([]uint8, uint32, bool)

ELFSection implements the mapper.CartCoProcELF interface.

func (*Elf) GetBank

func (cart *Elf) GetBank(_ uint16) mapper.BankInfo

GetBank implements the mapper.CartMapper interface.

func (*Elf) GetStatic added in v0.20.0

func (cart *Elf) GetStatic() mapper.CartStatic

GetStatic implements the mapper.CartStaticBus interface.

func (*Elf) ID

func (cart *Elf) ID() string

ID implements the mapper.CartMapper interface.

func (*Elf) MappedBanks

func (cart *Elf) MappedBanks() string

MappedBanks implements the mapper.CartMapper interface.

func (*Elf) NumBanks

func (cart *Elf) NumBanks() int

NumBanks implements the mapper.CartMapper interface.

func (*Elf) Patch

func (cart *Elf) Patch(_ int, _ uint8) error

Patch implements the mapper.CartMapper interface.

func (*Elf) Plumb

func (cart *Elf) Plumb(env *environment.Environment)

Plumb implements the mapper.CartMapper interface.

func (*Elf) PlumbFromDifferentEmulation

func (cart *Elf) PlumbFromDifferentEmulation(env *environment.Environment)

Plumb implements the mapper.CartMapper interface.

func (*Elf) PutStatic added in v0.20.0

func (cart *Elf) PutStatic(segment string, idx int, data uint8) bool

StaticWrite implements the mapper.CartStaticBus interface.

func (*Elf) Reset

func (cart *Elf) Reset()

Reset implements the mapper.CartMapper interface.

func (*Elf) SetDeveloper

func (cart *Elf) SetDeveloper(dev mapper.CartCoProcDeveloper)

SetDeveloper implements the mapper.CartCoProc interface.

func (*Elf) SetDisassembler

func (cart *Elf) SetDisassembler(disasm mapper.CartCoProcDisassembler)

SetDisassembler implements the mapper.CartCoProc interface.

func (*Elf) SetYieldHook added in v0.20.0

func (cart *Elf) SetYieldHook(hook mapper.CartYieldHook)

SetYieldHook implements the mapper.CartCoProc interface.

func (*Elf) Snapshot

func (cart *Elf) Snapshot() mapper.CartMapper

Snapshot implements the mapper.CartMapper interface.

func (*Elf) Step

func (cart *Elf) Step(clock float32)

Step implements the mapper.CartMapper interface.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL