Libndls
Jump to navigation
Jump to search
libndls is a set of macros and functions available as a static library when building with Ndless.
These definitions are available in Ndless 1.7. Definitions marked with (C) are only available in C. Definitions marked with (asm) are only available in assembly.
Common types
- typedef enum bool {FALSE = 0, TRUE = 1} BOOL;
Math
- number abs(number)
- number min(number, number)
- number max(number, number)
Screen
- SCREEN_BASE_ADDRESS: address of the screen buffer. Each grayscaled pixel is 4-bit long. 1111 is white, 0000 is black.
- SCREEN_BYTES_SIZE: size of the screen buffer
- SCREEN_WIDTH: screen width in pixels
- SCREEN_HEIGHT: screen height in pixels
Keyboard
isKeyPressed(key): non-blocking key press test. key must be one of the KEY_NSPIRE_* constants defined in ndls.h.
Time
- void idle(void): switch to low-power state until the next interrupt occurs. The use of this function is encouraged when waiting in loops for something to save the batteries.
Debugging
- void halt(void): stops the execution flow with an endless loop. If you are using the Ncubate emulator, use the j debugger command to jump over the instruction.
- halt (asm) (macro): similar to halt()