diff options
author | Alexis211 <alexis211@gmail.com> | 2009-08-21 23:59:19 +0200 |
---|---|---|
committer | Alexis211 <alexis211@gmail.com> | 2009-08-21 23:59:19 +0200 |
commit | 74e721676ddd5d996ccf2e1d35da57320f658609 (patch) | |
tree | b39d766c8e27a654c89c2435131e5eaf193125d8 /Source/Kernel/Map.txt | |
parent | ae803baa4e0ec584c7afd3f6d55f2e6b32010b46 (diff) | |
download | Melon-74e721676ddd5d996ccf2e1d35da57320f658609.tar.gz Melon-74e721676ddd5d996ccf2e1d35da57320f658609.zip |
Kernel now loads in higher half, and uses a VT for output.
Diffstat (limited to 'Source/Kernel/Map.txt')
-rw-r--r-- | Source/Kernel/Map.txt | 257 |
1 files changed, 169 insertions, 88 deletions
diff --git a/Source/Kernel/Map.txt b/Source/Kernel/Map.txt index 9049ad0..fec07b3 100644 --- a/Source/Kernel/Map.txt +++ b/Source/Kernel/Map.txt @@ -4,6 +4,18 @@ Discarded input sections .group 0x00000000 0x0 Core/kmain.wtf.o .group 0x00000000 0x0 Core/kmain.wtf.o .group 0x00000000 0x0 Core/kmain.wtf.o + .group 0x00000000 0x0 Core/kmain.wtf.o + .group 0x00000000 0x0 Core/kmain.wtf.o + .group 0x00000000 0x0 Core/kmain.wtf.o + .group 0x00000000 0x0 Core/Sys.ns.o + .group 0x00000000 0x0 Core/Sys.ns.o + .group 0x00000000 0x0 Core/Sys.ns.o + .text._Znwj 0x00000000 0x0 Core/Sys.ns.o + .text._ZN15VirtualTerminallsEPc + 0x00000000 0x0 Core/Sys.ns.o + .text._ZN15VirtualTerminallsEi + 0x00000000 0x0 Core/Sys.ns.o + .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o .group 0x00000000 0x0 Devices/Display/VGATextOutput.class.o Memory Configuration @@ -15,78 +27,132 @@ Linker script and memory map 0x00100000 . = 0x100000 -.text 0x00100000 0x6cf +.setup 0x00100000 0x1e + *(.setup) + .setup 0x00100000 0x1e Core/loader.wtf.o + 0xc010001e . = (. + 0xc0000000) + +.text 0xc0100020 0x1277 load address 0x00100020 *(.text) - .text 0x00100000 0x106 Core/kmain.wtf.o - 0x00100000 kmain - *fill* 0x00100106 0xa 00 - .text 0x00100110 0x53 Core/loader.wtf.o - 0x0010011c loader - *fill* 0x00100163 0x1 00 - .text 0x00100164 0xf Core/cppsupport.wtf.o - 0x00100164 __cxa_pure_virtual - 0x00100169 __cxa_atexit - *fill* 0x00100173 0x1 00 - .text 0x00100174 0x1ec Core/Sys.ns.o - 0x001001ce Sys::bochs_output(char*, char*, unsigned int) - 0x00100192 Sys::inb(unsigned short) - 0x001001af Sys::inw(unsigned short) - 0x001002c8 Sys::panic(char*, char*, unsigned int) - 0x00100344 Sys::reboot() - 0x00100174 Sys::outb(unsigned short, unsigned char) - 0x00100306 Sys::panic_assert(char*, unsigned int, char*) - .text 0x00100360 0xd5 Core/CMem.ns.o - 0x00100396 CMem::memset(unsigned char*, unsigned char, int) - 0x001003cd CMem::memsetw(unsigned short*, unsigned short, int) - 0x00100408 CMem::strlen(char const*) - 0x00100360 CMem::memcpy(unsigned char*, unsigned char const*, int) - *fill* 0x00100435 0x3 00 - .text 0x00100438 0x167 DisplayManager/Disp.ns.o - 0x0010044c Disp::putChar(unsigned short, unsigned short, char, char) - 0x00100442 Disp::textRows() - 0x0010052e Disp::clear() - 0x00100438 Disp::textCols() - 0x0010054c Disp::setDisplay(Display*) - 0x001004cd Disp::moveCursor(unsigned short, unsigned short) - *fill* 0x0010059f 0x1 00 - .text 0x001005a0 0x12f Devices/Display/VGATextOutput.class.o - 0x001005a0 VGATextOutput::textCols() - 0x00100698 VGATextOutput::clear() - 0x00100612 VGATextOutput::moveCursor(unsigned short, unsigned short) - 0x001005aa VGATextOutput::textRows() - 0x001005b4 VGATextOutput::putChar(unsigned short, unsigned short, char, char) + .text 0xc0100020 0x1f0 Core/kmain.wtf.o + 0xc0100020 kmain + .text 0xc0100210 0x75 Core/loader.wtf.o + 0xc010021c loader + *fill* 0xc0100285 0x3 00 + .text 0xc0100288 0xf Core/cppsupport.wtf.o + 0xc0100288 __cxa_pure_virtual + 0xc010028d __cxa_atexit + *fill* 0xc0100297 0x1 00 + .text 0xc0100298 0x3b0 Core/Sys.ns.o + 0xc01002f2 Sys::bochs_output(char*, char*, unsigned int) + 0xc01002b6 Sys::inb(unsigned short) + 0xc01002d3 Sys::inw(unsigned short) + 0xc01003ec Sys::panic(char*, char*, unsigned int) + 0xc010062c Sys::reboot() + 0xc0100298 Sys::outb(unsigned short, unsigned char) + 0xc010050c Sys::panic_assert(char*, unsigned int, char*) + .text 0xc0100648 0xd5 Core/CMem.ns.o + 0xc010067e CMem::memset(unsigned char*, unsigned char, int) + 0xc01006b5 CMem::memsetw(unsigned short*, unsigned short, int) + 0xc01006f0 CMem::strlen(char const*) + 0xc0100648 CMem::memcpy(unsigned char*, unsigned char const*, int) + *fill* 0xc010071d 0x3 00 + .text 0xc0100720 0x8e MemoryManager/Mem.ns.o + 0xc0100778 Mem::kalloc(unsigned int, bool) + 0xc0100720 Mem::kallocInternal(unsigned int, bool) + *fill* 0xc01007ae 0x2 00 + .text 0xc01007b0 0x167 DisplayManager/Disp.ns.o + 0xc01007ba Disp::textRows() + 0xc01008a6 Disp::clear() + 0xc01007b0 Disp::textCols() + 0xc01008c4 Disp::setDisplay(Display*) + 0xc0100845 Disp::moveCursor(unsigned short, unsigned short) + 0xc01007c4 Disp::putChar(unsigned short, unsigned short, char, unsigned char) + *fill* 0xc0100917 0x1 00 + .text 0xc0100918 0x84d VTManager/VirtualTerminal.class.o + 0xc0100b7e VirtualTerminal::map(int, int) + 0xc0100bec VirtualTerminal::unmap() + 0xc0100e26 VirtualTerminal::put(char, bool) + 0xc0100dee VirtualTerminal::setCursorLine(unsigned int) + 0xc0100a18 VirtualTerminal::setColor(unsigned char, unsigned char) + 0xc0100e0a VirtualTerminal::setCursorCol(unsigned int) + 0xc0100998 VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) + 0xc0100d8c VirtualTerminal::updateCursor() + 0xc0100f74 VirtualTerminal::write(char*, bool) + 0xc0100fc8 VirtualTerminal::writeDec(int, bool) + 0xc0100bf8 VirtualTerminal::redraw() + 0xc0100a66 VirtualTerminal::putChar(unsigned int, unsigned int, char) + 0xc01010ca VirtualTerminal::writeHex(unsigned int, bool) + 0xc0100cd2 VirtualTerminal::scroll() + 0xc0100918 VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) + 0xc0100b14 VirtualTerminal::clear() + 0xc0100dc8 VirtualTerminal::moveCursor(unsigned int, unsigned int) + *fill* 0xc0101165 0x3 00 + .text 0xc0101168 0x12f Devices/Display/VGATextOutput.class.o + 0xc0101168 VGATextOutput::textCols() + 0xc0101260 VGATextOutput::clear() + 0xc01011da VGATextOutput::moveCursor(unsigned short, unsigned short) + 0xc010117c VGATextOutput::putChar(unsigned short, unsigned short, char, unsigned char) + 0xc0101172 VGATextOutput::textRows() + +.text._Znwj 0xc0101297 0x1b load address 0x00101297 + .text._Znwj 0xc0101297 0x1b Core/kmain.wtf.o + 0xc0101297 operator new(unsigned int) + +.text._ZN15VirtualTerminallsEPc + 0xc01012b2 0x25 load address 0x001012b2 + .text._ZN15VirtualTerminallsEPc + 0xc01012b2 0x25 Core/kmain.wtf.o + 0xc01012b2 VirtualTerminal::operator<<(char*) + +.text._ZN15VirtualTerminallsEi + 0xc01012d8 0x25 load address 0x001012d8 + .text._ZN15VirtualTerminallsEi + 0xc01012d8 0x25 Core/kmain.wtf.o + 0xc01012d8 VirtualTerminal::operator<<(int) .text._ZN7DisplayC2Ev - 0x001006d0 0xe + 0xc01012fe 0xe load address 0x001012fe .text._ZN7DisplayC2Ev - 0x001006d0 0xe Core/kmain.wtf.o - 0x001006d0 Display::Display() + 0xc01012fe 0xe Core/kmain.wtf.o + 0xc01012fe Display::Display() .text._ZN13VGATextOutputC1Ev - 0x001006de 0x1c + 0xc010130c 0x1c load address 0x0010130c .text._ZN13VGATextOutputC1Ev - 0x001006de 0x1c Core/kmain.wtf.o - 0x001006de VGATextOutput::VGATextOutput() + 0xc010130c 0x1c Core/kmain.wtf.o + 0xc010130c VGATextOutput::VGATextOutput() -.rodata 0x00101000 0x220 +.text._Znaj 0xc0101328 0x1b load address 0x00101328 + .text._Znaj 0xc0101328 0x1b VTManager/VirtualTerminal.class.o + 0xc0101328 operator new[](unsigned int) + +.rodata 0xc0102000 0x293 load address 0x00102000 *(.rodata) - .rodata 0x00101000 0x1fd Core/kmain.wtf.o - .rodata 0x001011fd 0x23 Core/Sys.ns.o + .rodata 0xc0102000 0x23f Core/kmain.wtf.o + .rodata 0xc010223f 0x51 Core/Sys.ns.o + .rodata 0xc0102290 0x3 VTManager/VirtualTerminal.class.o .rodata._ZTV7Display - 0x00101220 0x1c + 0xc0102298 0x1c load address 0x00102298 .rodata._ZTV7Display - 0x00101220 0x1c Core/kmain.wtf.o - 0x00101220 vtable for Display + 0xc0102298 0x1c Core/kmain.wtf.o + 0xc0102298 vtable for Display .rodata._ZTV13VGATextOutput - 0x00101240 0x1c + 0xc01022b8 0x1c load address 0x001022b8 .rodata._ZTV13VGATextOutput - 0x00101240 0x1c Devices/Display/VGATextOutput.class.o - 0x00101240 vtable for VGATextOutput + 0xc01022b8 0x1c Devices/Display/VGATextOutput.class.o + 0xc01022b8 vtable for VGATextOutput -.rel.dyn 0x0010125c 0x0 +.rel.dyn 0xc01022d4 0x0 load address 0x001022d4 .rel.text 0x00000000 0x0 Core/kmain.wtf.o + .rel.text._Znwj + 0x00000000 0x0 Core/kmain.wtf.o + .rel.text._ZN15VirtualTerminallsEPc + 0x00000000 0x0 Core/kmain.wtf.o + .rel.text._ZN15VirtualTerminallsEi + 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN7DisplayC2Ev 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN13VGATextOutputC1Ev @@ -94,58 +160,69 @@ Linker script and memory map .rel.rodata._ZTV7Display 0x00000000 0x0 Core/kmain.wtf.o -.data 0x00102000 0x24 - 0x00102000 start_ctors = . +.data 0xc0103000 0x24 load address 0x00103000 + 0xc0103000 start_ctors = . *(.ctor*) - 0x00102000 end_ctors = . - 0x00102000 start_dtors = . + 0xc0103000 end_ctors = . + 0xc0103000 start_dtors = . *(.dtor*) - 0x00102000 end_dtors = . + 0xc0103000 end_dtors = . *(.data) - .data 0x00102000 0x24 Core/kmain.wtf.o - 0x00102020 melonLogoCols - 0x00102000 melonLogo - 0x0010201c melonLogoLines - .data 0x00102024 0x0 Core/cppsupport.wtf.o - .data 0x00102024 0x0 Core/Sys.ns.o - .data 0x00102024 0x0 Core/CMem.ns.o - .data 0x00102024 0x0 DisplayManager/Disp.ns.o - .data 0x00102024 0x0 Devices/Display/VGATextOutput.class.o - -.bss 0x00102024 0x4010 - 0x00102024 sbss = . + .data 0xc0103000 0x24 Core/kmain.wtf.o + 0xc0103020 melonLogoCols + 0xc0103000 melonLogo + 0xc010301c melonLogoLines + .data 0xc0103024 0x0 Core/cppsupport.wtf.o + .data 0xc0103024 0x0 Core/Sys.ns.o + .data 0xc0103024 0x0 Core/CMem.ns.o + .data 0xc0103024 0x0 MemoryManager/Mem.ns.o + .data 0xc0103024 0x0 DisplayManager/Disp.ns.o + .data 0xc0103024 0x0 VTManager/VirtualTerminal.class.o + .data 0xc0103024 0x0 Devices/Display/VGATextOutput.class.o + +.bss 0xc0103024 0x401c load address 0x00103024 + 0xc0103024 sbss = . *(COMMON) *(.bss) - .bss 0x00102024 0x0 Core/kmain.wtf.o - .bss 0x00102024 0x4000 Core/loader.wtf.o - .bss 0x00106024 0x4 Core/cppsupport.wtf.o - 0x00106024 __dso_handle - .bss 0x00106028 0x0 Core/Sys.ns.o - .bss 0x00106028 0x0 Core/CMem.ns.o - .bss 0x00106028 0xc DisplayManager/Disp.ns.o - 0x00106028 Disp::mode - .bss 0x00106034 0x0 Devices/Display/VGATextOutput.class.o - 0x00106034 ebss = . - 0x00106034 end = . - 0x00106034 _end = . - 0x00106034 __end = . + .bss 0xc0103024 0x0 Core/kmain.wtf.o + .bss 0xc0103024 0x4000 Core/loader.wtf.o + .bss 0xc0107024 0x4 Core/cppsupport.wtf.o + 0xc0107024 __dso_handle + .bss 0xc0107028 0x0 Core/Sys.ns.o + .bss 0xc0107028 0x0 Core/CMem.ns.o + .bss 0xc0107028 0xc MemoryManager/Mem.ns.o + 0xc0107030 Mem::kheapFree + 0xc0107028 Mem::kheapUsable + 0xc010702c Mem::placementAddress + .bss 0xc0107034 0xc DisplayManager/Disp.ns.o + 0xc0107034 Disp::mode + .bss 0xc0107040 0x0 VTManager/VirtualTerminal.class.o + .bss 0xc0107040 0x0 Devices/Display/VGATextOutput.class.o + 0xc0107040 ebss = . + 0xc0107040 end = . + 0xc0107040 _end = . + 0xc0107040 __end = . LOAD Core/kmain.wtf.o LOAD Core/loader.wtf.o LOAD Core/cppsupport.wtf.o LOAD Core/Sys.ns.o LOAD Core/CMem.ns.o +LOAD MemoryManager/Mem.ns.o LOAD DisplayManager/Disp.ns.o +LOAD VTManager/VirtualTerminal.class.o LOAD Devices/Display/VGATextOutput.class.o OUTPUT(Melon.ke elf32-i386) -.comment 0x00000000 0x8b +.comment 0x00000000 0xaf .comment 0x00000000 0x12 Core/kmain.wtf.o .comment 0x00000012 0x1f Core/loader.wtf.o .comment 0x00000031 0x12 Core/cppsupport.wtf.o .comment 0x00000043 0x12 Core/Sys.ns.o .comment 0x00000055 0x12 Core/CMem.ns.o - .comment 0x00000067 0x12 DisplayManager/Disp.ns.o - .comment 0x00000079 0x12 Devices/Display/VGATextOutput.class.o + .comment 0x00000067 0x12 MemoryManager/Mem.ns.o + .comment 0x00000079 0x12 DisplayManager/Disp.ns.o + .comment 0x0000008b 0x12 VTManager/VirtualTerminal.class.o + .comment 0x0000009d 0x12 Devices/Display/VGATextOutput.class.o .note.GNU-stack 0x00000000 0x0 @@ -158,6 +235,10 @@ OUTPUT(Melon.ke elf32-i386) .note.GNU-stack 0x00000000 0x0 Core/CMem.ns.o .note.GNU-stack + 0x00000000 0x0 MemoryManager/Mem.ns.o + .note.GNU-stack 0x00000000 0x0 DisplayManager/Disp.ns.o .note.GNU-stack + 0x00000000 0x0 VTManager/VirtualTerminal.class.o + .note.GNU-stack 0x00000000 0x0 Devices/Display/VGATextOutput.class.o |