diff options
Diffstat (limited to 'packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp')
-rw-r--r-- | packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp b/packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp new file mode 100644 index 0000000000..086a1c6307 --- /dev/null +++ b/packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp @@ -0,0 +1,25 @@ +program main; + +{$apptype arm9} +{$mode objfpc} + +uses + ctypes, nds9; + +// The default exception handler displays the exception type - data abort or undefined instruction +// you can relate the exception to your code using arm-eabi-addr2line -e <elf file> <address> +// assuming you built with debug info this will display a source file and a line number +// The address of the instruction is shown as pc, beside the address which faulted +// the rest of the screen is a dump of the registers. + +begin + // install the default exception handler + defaultExceptionHandler(); + + // generate an exception + pu32(250)^ := 100; + + while true do + swiWaitForVBlank(); + +end. |