libdragon
|
N64 System Interface. More...
Macros | |
#define | cache_op(op, linesize) |
Helper macro to perform cache refresh operations. More... | |
#define | TV_TYPE_LOC 0x80000300 |
Memory location to read which determines the TV type. | |
Functions | |
bool | sys_bbplayer (void) |
Return true if we are running on a iQue player. | |
int | sys_get_boot_cic () |
Return the boot CIC. More... | |
void | sys_set_boot_cic (int bc) |
Set the boot CIC. More... | |
void | data_cache_hit_writeback (volatile const void *addr, unsigned long length) |
Force a data cache writeback over a memory region. More... | |
void | __data_cache_hit_invalidate (volatile void *addr, unsigned long length) |
Underlying implementation of data_cache_hit_invalidate. | |
void | data_cache_hit_writeback_invalidate (volatile void *addr, unsigned long length) |
Force a data cache writeback invalidate over a memory region. More... | |
void | data_cache_index_writeback_invalidate (volatile void *addr, unsigned long length) |
Force a data cache index writeback invalidate over a memory region. More... | |
void | data_cache_writeback_invalidate_all (void) |
Force a data cache writeback invalidate over whole memory. More... | |
void | inst_cache_hit_writeback (volatile const void *addr, unsigned long length) |
Force an instruction cache writeback over a memory region. More... | |
void | inst_cache_hit_invalidate (volatile void *addr, unsigned long length) |
Force an instruction cache invalidate over a memory region. More... | |
void | inst_cache_index_invalidate (volatile void *addr, unsigned long length) |
Force an instruction cache index invalidate over a memory region. More... | |
void | inst_cache_invalidate_all (void) |
Force an instruction cache invalidate over whole memory. More... | |
void * | malloc_uncached (size_t size) |
Allocate a buffer that will be accessed as uncached memory. More... | |
void * | malloc_uncached_aligned (int align, size_t size) |
Allocate a buffer that will be accessed as uncached memory, specifying alignment. More... | |
void | free_uncached (void *buf) |
Free an uncached memory buffer. More... | |
int | get_memory_size () |
Get amount of available memory. More... | |
bool | is_memory_expanded () |
Is expansion pak in use. More... | |
tv_type_t | get_tv_type () |
Is system NTSC/PAL/MPAL. More... | |
uint64_t | get_ticks (void) |
Read the number of ticks since system startup. More... | |
uint64_t | get_ticks_us (void) |
Read the number of microseconds since system startup. More... | |
uint64_t | get_ticks_ms (void) |
Read the number of millisecounds since system startup. More... | |
void | wait_ticks (unsigned long wait) |
Spin wait until the number of ticks have elapsed. More... | |
void | wait_ms (unsigned long wait_ms) |
Spin wait until the number of milliseconds have elapsed. More... | |
void | __init_cop1 (void) |
Initialize COP1 with default settings that prevent undesirable exceptions. More... | |
Variables | |
int | __bbplayer = 0 |
Indicates whether we are running on a vanilla N64 or a iQue player. | |
int | __bootcic = 6102 |
Boot CIC. More... | |
N64 System Interface.
#define cache_op | ( | op, | |
linesize | |||
) |
Helper macro to perform cache refresh operations.
[in] | op | Operation to perform |
[in] | linesize | Size of a cacheline in bytes |
void __init_cop1 | ( | void | ) |
Initialize COP1 with default settings that prevent undesirable exceptions.
Enable FPU exceptions that can help programmers avoid bugs in their code. Underflow exceptions are not enabled because they are triggered whenever a denormalized float is generated, even if the FS bit is set (see below). So basically having the underflow exception enabled seems to be useless unless also the underflow (and the inexact) exceptions are off. Notice that underflows can happen also with library code such as tanf(BITCAST_I2F(0x3f490fdb)) (0.785398185253).
int __bootcic = 6102 |
Boot CIC.
Defaults to 6102.