mem.h File Reference

VM Memory. More...

Go to the source code of this file.

Defines

#define mem_getByte(memspace, paddr)   plat_memGetByte((memspace), (paddr))

Typedefs

typedef enum PmMemSpace_e PmMemSpace_t
typedef enum PmMemSpace_epPmMemSpace_t

Enumerations

enum  PmMemSpace_e {
  MEMSPACE_RAM = 0, MEMSPACE_PROG, MEMSPACE_EEPROM, MEMSPACE_SEEPROM,
  MEMSPACE_OTHER0, MEMSPACE_OTHER1, MEMSPACE_OTHER2, MEMSPACE_OTHER3
}

Functions

uint16_t mem_getWord (PmMemSpace_t memspace, uint8_t const **paddr)
uint32_t mem_getInt (PmMemSpace_t memspace, uint8_t const **paddr)
void mem_copy (PmMemSpace_t memspace, uint8_t **pdest, uint8_t const **psrc, uint16_t count)
uint16_t mem_getStringLength (PmMemSpace_t memspace, uint8_t const *const pstr)
PmReturn_t mem_cmpn (uint8_t *cname, uint8_t cnamelen, PmMemSpace_t memspace, uint8_t const **paddr)


Detailed Description

VM Memory.

VM memory header.


Define Documentation

#define mem_getByte ( memspace,
paddr   )     plat_memGetByte((memspace), (paddr))

Returns the byte at the given address in memspace.

Increments the address (just like getc and read(1)) to make image loading work (recursive).

Parameters:
memspace memory space/type
paddr ptr to address
Returns:
byte from memory. paddr - points to the next byte


Typedef Documentation

typedef enum PmMemSpace_e PmMemSpace_t

Memory Space enum.

Defines the different addressable areas of the system.


Enumeration Type Documentation

Memory Space enum.

Defines the different addressable areas of the system.


Function Documentation

PmReturn_t mem_cmpn ( uint8_t *  cname,
uint8_t  cnamelen,
PmMemSpace_t  memspace,
uint8_t const **  paddr 
)

Compares a byte array in RAM to a byte array in the given memory space

Parameters:
cname Pointer to byte array in RAM
cnamelen Length of byte array to compare
memspace Memory space of other byte array
paddr Pointer to address of other byte array
Returns:
PM_RET_OK if all bytes in both arrays match; PM_RET_NO otherwise

void mem_copy ( PmMemSpace_t  memspace,
uint8_t **  pdest,
uint8_t const **  psrc,
uint16_t  count 
)

Copies count number of bytes from src in memspace to dest in RAM. Leaves dest and src pointing one byte past end of the data.

Parameters:
memspace memory space/type of source
pdest ptr to destination address
psrc ptr to source address
count number of bytes to copy
Returns:
nothing. src, dest - point 1 past end of data
See also:
sli_memcpy

uint32_t mem_getInt ( PmMemSpace_t  memspace,
uint8_t const **  paddr 
)

Returns the 4-byte int at the given address in memspace.

Int obtained in LITTLE ENDIAN order (per Python convention). afterward, addr points one byte past the int.

Parameters:
memspace memory space
paddr ptr to address
Returns:
int from memory. addr - points one byte past the word

uint16_t mem_getStringLength ( PmMemSpace_t  memspace,
uint8_t const *const   pstr 
)

Returns the number of bytes in the C string pointed to by pstr. Does not modify pstr

Parameters:
memspace memory space/type of source
psrc ptr to source address
Returns:
Number of bytes in the string.

uint16_t mem_getWord ( PmMemSpace_t  memspace,
uint8_t const **  paddr 
)

Returns the 2-byte word at the given address in memspace.

Word obtained in LITTLE ENDIAN order (per Python convention). afterward, addr points one byte past the word.

Parameters:
memspace memory space
paddr ptr to address
Returns:
word from memory. addr - points one byte past the word


Generated on Wed Feb 24 13:37:02 2010 for Python-on-a-chip by  doxygen 1.5.9