HPGCC3 Documentation 3.0 R003
|
Data Structures | |
struct | _sat_cpu |
The BOOLEAN constant FALSE . More... | |
Typedefs | |
typedef struct _sat_cpu | SAT_CPU |
The BOOLEAN constant FALSE . | |
typedef struct _sat_cpu * | SAT_PCPU |
Functions | |
SAT_OBJECT | sat3_createtemp (int objsize) |
Create a memory block in TEMPOB. | |
SAT_OBJECT | sat3_skipob (SAT_OBJECT object) |
Skip an object, find next object within a composite. | |
SAT_OBJECT | sat3_sknameup (SAT_OBJECT name) |
Skip the name on a named object. | |
SAT_OBJECT | sat3_sknamedn (SAT_OBJECT name) |
Skip the name on a named object, reverse direction. | |
LONGLONG | sat3_bcd2llong (SAT_OBJECT data, int digits) |
Read a 4-bit packed BCD number. | |
unsigned int | sat3_s2a (SAT_OBJECT sat_addr) |
Convert a SAT_OBJECT pointer into a valid ARM domain address. | |
int | sat3_typesize (int prologtype) |
Get the size in nibbles for objects of a given type, similar to sizeof() in C. |
All functions, constants and macros in this group are not part of the user API and its use is NOT recommended. Documentation is provided for sysRPL programmers that need low-level access to Saturn objects. Most of these functions have no error checking. Use at your own risk.
The BOOLEAN constant FALSE
.
The BOOLEAN constant TRUE
The emulated Saturn CPU registers and status
LONGLONG sat3_bcd2llong | ( | SAT_OBJECT | data, |
int | digits | ||
) |
Read a 4-bit packed BCD number.
Read a BCD number of up to 18 digits and converts it to LONGLONG format
** LOW-LEVEL ROUTINE **
data | SAT_OBJECT pointer to bcd data. |
digits | Number of nibbles (digits) to read. |
SAT_OBJECT sat3_createtemp | ( | int | objsize | ) |
Create a memory block in TEMPOB.
** LOW-LEVEL ROUTINE - SUPERSEDED BY sat3_alloc ** C implementation of the HP49's ROM library routine.
objsize | Size of object in nibbles |
NULL
on error unsigned int sat3_s2a | ( | SAT_OBJECT | sat_addr | ) |
Convert a SAT_OBJECT pointer into a valid ARM domain address.
** LOW-LEVEL ROUTINE - DO NOT USE ** This function interprets the value of a SAT_OBJECT pointer and convert it to a suitable byte-aligned ARM address for direct memory access.
sat_addr | Any SAT_OBJECT address, pointing to Saturn RAM, ERAM, FLASH or the C heap. |
SAT_OBJECT sat3_skipob | ( | SAT_OBJECT | object | ) |
Skip an object, find next object within a composite.
** LOW-LEVEL ROUTINE - USE HIGHER LEVEL FUNCTIONS FOR COMPOSITES ** C implementation of the HP49's ROM library routine SKIPOB.
object | Object to skip. Must be a valid object. |
SAT_OBJECT sat3_sknamedn | ( | SAT_OBJECT | name | ) |
Skip the name on a named object, reverse direction.
** LOW-LEVEL ROUTINE - DO NOT USE **
name | Object name to skip. |
SAT_OBJECT sat3_sknameup | ( | SAT_OBJECT | name | ) |
Skip the name on a named object.
** LOW-LEVEL ROUTINE - DO NOT USE **
name | Object name to skip. |
int sat3_typesize | ( | int | prologtype | ) |
Get the size in nibbles for objects of a given type, similar to sizeof() in C.
prologtype | Any SAT_DOXXX constant corresponding to an object prolog. |