10unsigned ldle(uint8_t
const *
const p_arr,
unsigned const p_index) {
11 uint32_t v = p_arr[p_index];
16void stle(uint8_t *
const p_arr,
size_t const p_index,
unsigned const p_val) {
17 uint8_t v = (p_val >> (8 * p_index)) & 0xff;
21void stle0(uint8_t *
const p_arr,
unsigned const p_val) {
22 stle(p_arr, 0, p_val);
25void stle1(uint8_t *
const p_arr,
unsigned const p_val) {
26 stle(p_arr, 1, p_val);
29void stle2(uint8_t *
const p_arr,
unsigned const p_val) {
30 stle(p_arr, 2, p_val);
33void stle3(uint8_t *
const p_arr,
unsigned const p_val) {
34 stle(p_arr, 3, p_val);
38uint32_t
ldle0(uint8_t
const *
const p_arr) {
return ldle(p_arr, 0); }
41uint32_t
ldle1(uint8_t
const *
const p_arr) {
return ldle(p_arr, 1); }
44uint32_t
ldle2(uint8_t
const *
const p_arr) {
return ldle(p_arr, 2); }
47uint32_t
ldle3(uint8_t
const *
const p_arr) {
return ldle(p_arr, 3); }
51void stle16b_i(uint8_t *
const p_arr,
size_t const p_index,
52 uint16_t
const p_val) {
53 stle16b(p_arr + (p_index * 2), p_val);
56void stle16b(uint8_t *
const p_arr, uint16_t
const p_val) {
61uint16_t
ldle16b(uint8_t
const *
const p_arr) {
63 v |= (ldle0(p_arr) | ldle1(p_arr));
67uint16_t
ldle16b_i(uint8_t
const *
const p_arr,
size_t const p_index) {
68 return ldle16b(p_arr + (2 * p_index));
uint32_t ldle2(uint8_t const *const p_arr)
uint32_t ldle0(uint8_t const *const p_arr)
void stle2(uint8_t *const p_arr, unsigned const p_val)
void stle(uint8_t *const p_arr, size_t const p_index, unsigned const p_val)
unsigned ldle(uint8_t const *const p_arr, unsigned const p_index)
void stle0(uint8_t *const p_arr, unsigned const p_val)
uint32_t ldle3(uint8_t const *const p_arr)
void stle1(uint8_t *const p_arr, unsigned const p_val)
uint32_t ldle1(uint8_t const *const p_arr)
void stle3(uint8_t *const p_arr, unsigned const p_val)
Zelda 3 specific classes and functions.
void stle16b_i(uint8_t *const p_arr, size_t const p_index, uint16_t const p_val)
Store little endian 16-bit value using a byte pointer, offset by an index before dereferencing.
uint16_t ldle16b_i(uint8_t const *const p_arr, size_t const p_index)
Load little endian halfword (16-bit) dereferenced from an arrays of bytes. This version provides an i...
uint16_t ldle16b(uint8_t const *const p_arr)
void stle16b(uint8_t *const p_arr, uint16_t const p_val)
Main namespace for the application.