elf

package
v0.8.1 Latest Latest
Warning

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

Go to latest
Published: May 7, 2026 License: GPL-3.0 Imports: 17 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 (
	CartridgeBits = 0x0fff
	OriginCart    = 0xf000
	Memtop        = 0x1fff
)
View Source
const (
	ADDR_IDR    = 0x10
	DATA_IDR    = 0x20
	DATA_ODR    = 0x30
	DATA_MODER  = 0x40
	GPIO_MEMTOP = 0x50
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Context

type Context interface {
	Rand8Bit() uint8
	Break(e error)
	Spec() spec.Spec
	IsAtari7800() bool
}

type DisasmAnnotation

type DisasmAnnotation struct {
	StrongarmFunction string
}

DisasmAnnotation is used as part of the implementation of the arm.CartridgeHookDisassembly interface

func (DisasmAnnotation) String

func (a DisasmAnnotation) String() string

type Elf

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

func NewElf

func NewElf(ctx Context, d []byte) (*Elf, error)

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

func (*Elf) ARMinterrupt

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

func (*Elf) Access

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

func (*Elf) AnnotateDisassembly

func (cart *Elf) AnnotateDisassembly(e *arm.DisasmEntry) fmt.Stringer

AnnotateDisassembly implements the arm.CartridgeHookDisassembly interface

func (*Elf) BusChange

func (cart *Elf) BusChange(addr uint16, data uint8) error

func (*Elf) BusStuff

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

func (*Elf) CoProcExecutionState

func (cart *Elf) CoProcExecutionState() coprocessor.CoProcExecutionState

func (*Elf) GetCoProc

func (cart *Elf) GetCoProc() coprocessor.CartCoProc

func (*Elf) Label

func (cart *Elf) Label() string

func (*Elf) NumBanks

func (cart *Elf) NumBanks() int

func (*Elf) Section added in v0.7.3

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

func (*Elf) SetYieldHook

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

func (*Elf) Step

func (cart *Elf) Step(clock float32)

Jump to

Keyboard shortcuts

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