basic heap implementation
[cortex-from-scratch] / sysinfo.c
index 2792f14..3f632a3 100644 (file)
--- a/sysinfo.c
+++ b/sysinfo.c
@@ -24,16 +24,17 @@ uint32_t get_msp(void);
 void sysinfo() {
 
        uint32_t tmp = *MCU_ID;
-       printf("# DEVICE ID: ");
+       printf("SYSTEM LOADING...\n\n");
+       printf("DEV ID: ");
 
        if (tmp & 0x414) 
-               printf("HIGH DENSITY\n");
+               printf("H. DENSITY\n");
        else {
                printf("UNKNOWN\n");
        }
 
-       tmp = (tmp >> 16);
-       printf("# REVISION: ");
+       /* tmp = (tmp >> 16);
+       printf("REV: ");
        switch  (tmp) {
                case 0x1000:
                      printf("REVISION A\n");
@@ -46,18 +47,21 @@ void sysinfo() {
                      break;
                default:
                      printf("UNKNOWN\n");
-       }
+       } */
 
        extern char _endofbss;
-       
+
        uint32_t current_stack = get_msp();
        uint32_t stack_usage = (SRAM_OFFSET + SRAM_SIZE) - current_stack;
        uint32_t data_bss = (uint32_t) &_endofbss - SRAM_OFFSET;
        uint32_t mem_free = SRAM_SIZE - stack_usage - data_bss;
 
-       printf("# TOTAL MEMORY: %#x\n", SRAM_SIZE);
-       printf("# FREE MEMORY: %#x\n", mem_free);
-       printf("# STACK USAGE: %#x\n", stack_usage);
+       extern uint32_t HEAP_SIZE;
+       
+       printf("TOTAL MEM: %#x\n", SRAM_SIZE);
+       printf("FREE MEM: %#x\n", mem_free);
+       printf("STACK USE: %#x\n", stack_usage);
+       printf("HEAP_SIZE: %#x\n\n", &HEAP_SIZE);
 
 }