mem

package
v0.0.0-...-0692f3d Latest Latest
Warning

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

Go to latest
Published: Mar 2, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Menu = cli.Menu{
	{"d8", cmdDisplay8, helpMemRegion},
	{"d16", cmdDisplay16, helpMemRegion},
	{"d32", cmdDisplay32, helpMemRegion},
	{"d64", cmdDisplay64, helpMemRegion},
	{"r8", cmdRead8, helpMemRead},
	{"r16", cmdRead16, helpMemRead},
	{"r32", cmdRead32, helpMemRead},
	{"r64", cmdRead64, helpMemRead},
	{"t8", cmdTest8, helpMemRegion},
	{"t16", cmdTest16, helpMemRegion},
	{"t32", cmdTest32, helpMemRegion},
	{"t64", cmdTest64, helpMemRegion},
	{"w8", cmdWrite8, helpMemWrite},
	{"w16", cmdWrite16, helpMemWrite},
	{"w32", cmdWrite32, helpMemWrite},
	{"w64", cmdWrite64, helpMemWrite},
	{">file", cmdToFile, helpMemToFile},
	{"md5", cmdCheckSum, helpMemRegion},
	{"pic", cmdPic, helpMemRegion},
}

Menu memory submenu items

Functions

This section is empty.

Types

type Driver

type Driver interface {
	GetAddressSize() uint                      // get address width in bits
	GetDefaultRegion() *Region                 // get a default region
	LookupSymbol(name string) *Region          // lookup a symbol
	RdMem(width, addr, n uint) ([]uint, error) // read width-bit memory buffer
	WrMem(width, addr uint, val []uint) error  // write width-bit memory buffer
}

Driver is the memory driver api.

type Meta

type Meta interface {
	String() string
}

Meta contains target/vendor specific region data.

type Region

type Region struct {
	Name string // name
	Addr uint   // start address
	Size uint   // size in bytes
	// contains filtered or unexported fields
}

Region is a contiguous region of memory.

func FileRegionArg

func FileRegionArg(drv RegionDriver, args []string) (string, *Region, error)

FileRegionArg converts filename and memory region arguments.

func NewRegion

func NewRegion(name string, addr, size uint, meta Meta) *Region

NewRegion returns a new memory region.

func RegionArg

func RegionArg(drv RegionDriver, args []string) (*Region, error)

RegionArg converts command line arguments to a memory region.

func (*Region) Align32

func (r *Region) Align32()

Align32 adjusts a region for 32-bit alignment.

func (*Region) ColString

func (r *Region) ColString() []string

ColString returns a 4 string description of the memory region.

func (*Region) Overlaps

func (r *Region) Overlaps(x *Region) bool

Overlaps returns true if the regions overlap.

func (*Region) SetAddrSize

func (r *Region) SetAddrSize(bits uint)

SetAddrSize sets the region address size in bits.

func (*Region) SetSize

func (r *Region) SetSize(size uint)

SetSize sets the region size in bytes.

func (*Region) String

func (r *Region) String() string

type RegionDriver

type RegionDriver interface {
	GetDefaultRegion() *Region        // get a default region
	GetAddressSize() uint             // get address size in bits
	LookupSymbol(name string) *Region // lookup the address of a symbol
}

RegionDriver has the methods to process the command line arguments for memory regions.

Jump to

Keyboard shortcuts

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