From 9017de60829d4d12e7f453482cbbb9f9bfbca3b3 Mon Sep 17 00:00:00 2001 From: Aurora Date: Fri, 27 May 2016 15:15:25 +0200 Subject: [PATCH] More cleanup --- source/exceptions.c | 30 ++++++++++++++---------------- source/fs.c | 2 +- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/source/exceptions.c b/source/exceptions.c index 5dc5856..99a2511 100644 --- a/source/exceptions.c +++ b/source/exceptions.c @@ -20,29 +20,27 @@ void installArm9Handlers(void) ((void (*)())payloadAddress)(); } -static void hexItoa(u32 n, char* out) +static void hexItoa(u32 n, char *out) { - static const char hexDigits[] = "0123456789ABCDEF"; - int i = 0; - + const char hexDigits[] = "0123456789ABCDEF"; + u32 i = 0; + while(n > 0) { - out[7-i++] = hexDigits[(int)(n & 0xf)]; + out[7 - i++] = hexDigits[n & 0xF]; n >>= 4; } - - for(; i < 8; ++i) out[7-i] = '0'; - - out[8] = '\x00'; + + for(; i < 8; i++) out[7 - i] = '0'; } void detectAndProcessExceptionDumps(void) { - static const char* handledExceptionNames[] = { + const char *handledExceptionNames[] = { "FIQ", "undefined instruction", "prefetch abort", "data abort" }; - static const char* registerNames[] = { + const char *registerNames[] = { "R0", "R1", "R2", "R3", "R4", "R5", "R6", "R7", "R8", "R9", "R10", "R11", "R12", "SP", "LR", "PC", "CPSR" }; @@ -69,29 +67,29 @@ void detectAndProcessExceptionDumps(void) int posY = drawString("Processor: ARM9", 10, 30, COLOR_WHITE) + SPACING_Y; posY = drawString("Exception type: ", 10, posY, COLOR_WHITE); posY = drawString(handledExceptionNames[dump[4]], 10 + 16 * SPACING_X, posY, COLOR_WHITE); - + posY += 3 * SPACING_Y; for(u32 i = 0; i < 17; i += 2) { posY = drawString(registerNames[i], 10, posY, COLOR_WHITE); hexItoa(dump[10 + i], hexstring); posY = drawString(hexstring, 10 + 7 * SPACING_X, posY, COLOR_WHITE); - + if(i != 16) { posY = drawString(registerNames[i + 1], 10 + 22 * SPACING_X, posY, COLOR_WHITE); hexItoa(dump[10 + i + 1], hexstring); posY = drawString(hexstring, 10 + 29 * SPACING_X, posY, COLOR_WHITE); } - + posY += SPACING_Y; } - + posY += 2 * SPACING_Y; posY = drawString("You can find a dump in the following file:", 10, posY, COLOR_WHITE) + SPACING_Y; posY = drawString(path, 10, posY, COLOR_WHITE) + 2 * SPACING_Y; drawString("Press any button to shutdown", 10, posY, COLOR_WHITE); - + waitInput(); i2cWriteRegister(I2C_DEV_MCU, 0x20, 1); diff --git a/source/fs.c b/source/fs.c index eb54b55..1eeb7fe 100644 --- a/source/fs.c +++ b/source/fs.c @@ -160,4 +160,4 @@ void firmRead(void *dest, const char *firmFolder) } fileRead(dest, path); -} +} \ No newline at end of file