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/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 MemoryManager/PhysMem.ns.o .group 0x00000000 0x0 MemoryManager/PhysMem.ns.o .text._Znwj 0x00000000 0x0 MemoryManager/PhysMem.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 DeviceManager/Dev.ns.o .text._ZnwjPv 0x00000000 0x0 DeviceManager/Dev.ns.o .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o .group 0x00000000 0x0 VTManager/VirtualTerminal.class.o .text._ZdaPv 0x00000000 0x0 VTManager/VirtualTerminal.class.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 VTManager/VT.ns.o .text._ZnwjPv 0x00000000 0x0 VTManager/VT.ns.o .text._ZdaPv 0x00000000 0x0 VTManager/VT.ns.o .group 0x00000000 0x0 Library/String.class.o .group 0x00000000 0x0 Library/String.class.o .group 0x00000000 0x0 Library/String.class.o .group 0x00000000 0x0 Library/String.class.o .text._ZnwjPv 0x00000000 0x0 Library/String.class.o .group 0x00000000 0x0 SyscallManager/IDT.ns.o .group 0x00000000 0x0 SyscallManager/IDT.ns.o .group 0x00000000 0x0 SyscallManager/IDT.ns.o .group 0x00000000 0x0 SyscallManager/IDT.ns.o .text._Znwj 0x00000000 0x0 SyscallManager/IDT.ns.o .text._ZN15VirtualTerminallsEPc 0x00000000 0x0 SyscallManager/IDT.ns.o .text._ZN15VirtualTerminallsEi 0x00000000 0x0 SyscallManager/IDT.ns.o .text._ZN15VirtualTerminallsEj 0x00000000 0x0 SyscallManager/IDT.ns.o .group 0x00000000 0x0 Devices/Display/VGATextOutput.class.o .group 0x00000000 0x0 Devices/Display/VGATextOutput.class.o .text._ZN6Device9handleIRQE11registers_ti 0x00000000 0x0 Devices/Display/VGATextOutput.class.o .group 0x00000000 0x0 Devices/Timer.class.o .group 0x00000000 0x0 Devices/Timer.class.o .group 0x00000000 0x0 Devices/Timer.class.o .group 0x00000000 0x0 Devices/Timer.class.o .text._ZN6Device9handleIRQE11registers_ti 0x00000000 0x0 Devices/Timer.class.o .text._ZN6DeviceC2Ev 0x00000000 0x0 Devices/Timer.class.o .rodata._ZTV6Device 0x00000000 0x0 Devices/Timer.class.o Memory Configuration Name Origin Length Attributes *default* 0x00000000 0xffffffff Linker script and memory map 0x00100000 . = 0x100000 .setup 0x00100000 0x1e *(.setup) .setup 0x00100000 0x1e Core/loader.wtf.o 0xc010001e . = (. + 0xc0000000) .text 0xc0100020 0x4e2e load address 0x00100020 *(.text) .text 0xc0100020 0x533 Core/kmain.wtf.o 0xc0100020 kmain *fill* 0xc0100553 0xd 00 .text 0xc0100560 0x75 Core/loader.wtf.o 0xc010056c loader *fill* 0xc01005d5 0x3 00 .text 0xc01005d8 0xf Core/cppsupport.wtf.o 0xc01005d8 __cxa_pure_virtual 0xc01005dd __cxa_atexit *fill* 0xc01005e7 0x1 00 .text 0xc01005e8 0x41a Core/Sys.ns.o 0xc0100642 Sys::bochs_output(char*, char*, unsigned int) 0xc0100606 Sys::inb(unsigned short) 0xc0100623 Sys::inw(unsigned short) 0xc01007c6 Sys::panic(char*, char*, unsigned int) 0xc01009e6 Sys::reboot() 0xc01005e8 Sys::outb(unsigned short, unsigned char) 0xc010073c Sys::bochs_output_hex(unsigned int) 0xc01008d6 Sys::panic_assert(char*, unsigned int, char*) *fill* 0xc0100a02 0x2 00 .text 0xc0100a04 0xd5 Core/CMem.ns.o 0xc0100a3a CMem::memset(unsigned char*, unsigned char, int) 0xc0100a71 CMem::memsetw(unsigned short*, unsigned short, int) 0xc0100aac CMem::strlen(char const*) 0xc0100a04 CMem::memcpy(unsigned char*, unsigned char const*, int) *fill* 0xc0100ad9 0x3 00 .text 0xc0100adc 0x8b4 MemoryManager/Mem.ns.o 0xc0100f8f Mem::contractHeap() 0xc0100b96 Mem::insertIntoHeapIndex(Mem::heap_header_t*) 0xc0100d3a Mem::removeFromHeapIndex(Mem::heap_header_t*) 0xc0100cf1 Mem::removeFromHeapIndex(unsigned int) 0xc0100d61 Mem::createHeap() 0xc0100e6f Mem::expandHeap(unsigned int) 0xc010122e Mem::kfree(void*) 0xc010109f Mem::kalloc(unsigned int, bool) 0xc0100caf Mem::heapIndexFindEntry(Mem::heap_header_t*) 0xc0100adc Mem::kallocInternal(unsigned int, bool) .text 0xc0101390 0x35c MemoryManager/PhysMem.ns.o 0xc01016e2 PhysMem::total() 0xc0101532 PhysMem::removeTemporaryPages() 0xc010166d PhysMem::freeFrame(page_t*) 0xc01016bc PhysMem::free() 0xc0101586 PhysMem::allocFrame(page_t*, bool, bool) 0xc0101390 PhysMem::initPaging(unsigned int) *fill* 0xc01016ec 0x4 00 .text 0xc01016f0 0x1d MemoryManager/GDT.wtf.o 0xc01016f0 gdt_flush *fill* 0xc010170d 0x3 00 .text 0xc0101710 0x193 MemoryManager/GDT.ns.o 0xc010179f GDT::init() 0xc0101710 GDT::setGate(int, unsigned int, unsigned int, unsigned char, unsigned char) *fill* 0xc01018a3 0x1 00 .text 0xc01018a4 0x2db MemoryManager/PageDirectory.class.o 0xc0101a0c PageDirectory::getPage(unsigned int, bool) 0xc01018a4 PageDirectory::PageDirectory() 0xc01019ba PageDirectory::~PageDirectory() 0xc0101968 PageDirectory::~PageDirectory() 0xc0101b1e PageDirectory::freeFrame(unsigned int) 0xc0101906 PageDirectory::PageDirectory() 0xc0101acc PageDirectory::allocFrame(unsigned int, bool, bool) 0xc0101b58 PageDirectory::switchTo() *fill* 0xc0101b7f 0x1 00 .text 0xc0101b80 0x239 MemoryManager/PageAlloc.ns.o 0xc0101d9d PageAlloc::free(void*) 0xc0101bd4 PageAlloc::alloc(unsigned int*) 0xc0101b80 PageAlloc::init() *fill* 0xc0101db9 0x3 00 .text 0xc0101dbc 0x16a DeviceManager/Disp.ns.o 0xc0101dc6 Disp::textRows() 0xc0101eb2 Disp::clear() 0xc0101dbc Disp::textCols() 0xc0101ed0 Disp::setDisplay(Display*) 0xc0101e51 Disp::moveCursor(unsigned short, unsigned short) 0xc0101dd0 Disp::putChar(unsigned short, unsigned short, char, unsigned char) *fill* 0xc0101f26 0x2 00 .text 0xc0101f28 0x37d DeviceManager/Dev.ns.o 0xc0101fd9 Dev::registerDevice(Device*) 0xc01020ad Dev::findDevice(String) 0xc0101fff Dev::unregisterDevice(Device*) 0xc0102081 Dev::requestIRQ(Device*, int) 0xc0101f28 Dev::handleIRQ(registers_t, int) *fill* 0xc01022a5 0x3 00 .text 0xc01022a8 0x37 DeviceManager/Time.ns.o 0xc01022a8 Time::setTimer(Timer*) 0xc01022ca Time::time() 0xc01022b5 Time::uptime() *fill* 0xc01022df 0x1 00 .text 0xc01022e0 0x941 VTManager/VirtualTerminal.class.o 0xc01025d2 VirtualTerminal::map(int, int) 0xc010264c VirtualTerminal::unmap() 0xc01028da VirtualTerminal::put(char, bool) 0xc01028a2 VirtualTerminal::setCursorLine(unsigned int) 0xc0102448 VirtualTerminal::setColor(unsigned char, unsigned char) 0xc01023e0 VirtualTerminal::~VirtualTerminal() 0xc01028be VirtualTerminal::setCursorCol(unsigned int) 0xc0102360 VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) 0xc0102840 VirtualTerminal::updateCursor() 0xc0102a30 VirtualTerminal::write(char*, bool) 0xc0102a84 VirtualTerminal::writeDec(int, bool) 0xc0102414 VirtualTerminal::~VirtualTerminal() 0xc0102666 VirtualTerminal::redraw() 0xc0102496 VirtualTerminal::putChar(unsigned int, unsigned int, char) 0xc0102b86 VirtualTerminal::writeHex(unsigned int, bool) 0xc0102740 VirtualTerminal::scroll() 0xc01022e0 VirtualTerminal::VirtualTerminal(unsigned int, unsigned int, unsigned char, unsigned char) 0xc0102568 VirtualTerminal::clear() 0xc010287c VirtualTerminal::moveCursor(unsigned int, unsigned int) *fill* 0xc0102c21 0x3 00 .text 0xc0102c24 0x156 VTManager/VT.ns.o 0xc0102c4a VT::unmap(VirtualTerminal*) 0xc0102cd1 VT::redrawScreen() 0xc0102c24 VT::map(VirtualTerminal*) *fill* 0xc0102d7a 0x2 00 .text 0xc0102d7c 0x2f1 Library/Bitset.class.o 0xc0103062 Bitset::usedBits() 0xc0102d7c Bitset::Bitset() 0xc0102f84 Bitset::testBit(unsigned int) 0xc0102e4a Bitset::~Bitset() 0xc0102f1c Bitset::clearBit(unsigned int) 0xc0102e60 Bitset::init(unsigned int, unsigned int*) 0xc0102d88 Bitset::Bitset(unsigned int) 0xc0102d82 Bitset::Bitset() 0xc0102dbc Bitset::Bitset(unsigned int) 0xc0102eb6 Bitset::setBit(unsigned int) 0xc0102e34 Bitset::~Bitset() 0xc0102e12 Bitset::Bitset(unsigned int, unsigned int*) 0xc0102df0 Bitset::Bitset(unsigned int, unsigned int*) 0xc0102fcc Bitset::firstFreeBit() *fill* 0xc010306d 0x3 00 .text 0xc0103070 0xd2c Library/String.class.o 0xc0103070 String::hex(unsigned int) 0xc0103694 String::operator==(char*) 0xc0103a66 String::toInt() 0xc010345c String::String(String const&) 0xc01032b8 String::String() 0xc01032d0 String::String() 0xc0103be2 String::size() 0xc0103124 String::number(int) 0xc0103632 String::operator==(String&) 0xc01039c4 String::operator+(char*) 0xc01034f2 String::~String() 0xc01033e4 String::String(String const&) 0xc0103a4c String::operator char*() 0xc01034d4 String::~String() 0xc0103510 String::operator=(String const&) 0xc01032e8 String::String(char*) 0xc0103706 String::operator+=(String&) 0xc0103bd2 String::operator[](int) 0xc0103bee String::clear() 0xc0103c16 String::empty() 0xc01038d4 String::operator+=(char) 0xc0103c26 String::split(char) 0xc0103b1a String::toInt16() 0xc0103d00 String::substr(int, int) 0xc0103a04 String::operator+(char) 0xc0103366 String::String(char*) 0xc01037e2 String::operator+=(char*) 0xc010359e String::operator=(char*) 0xc0103984 String::operator+(String&) .text 0xc0103d9c 0xabf SyscallManager/IDT.ns.o 0xc010474e IDT::handleException(registers_t, int) 0xc0103f51 IDT::init() 0xc0103eea IDT::setGate(unsigned char, unsigned int, unsigned short, unsigned char) 0xc0103d9c interrupt_handler *fill* 0xc010485b 0x5 00 .text 0xc0104860 0x204 SyscallManager/IDT.wtf.o 0xc0104890 isr4 0xc010496a isr27 0xc01048e2 isr13 0xc0104a14 irq12 0xc0104938 isr22 0xc01048f2 isr15 0xc0104a00 irq10 0xc0104a28 irq14 0xc01048c0 isr9 0xc01049ec irq8 0xc0104942 isr23 0xc010497e isr29 0xc0104992 isr31 0xc010492e isr21 0xc0104a0a irq11 0xc0104974 isr28 0xc01048b8 isr8 0xc01049ce irq5 0xc0104924 isr20 0xc01048ea isr14 0xc010489a isr5 0xc01049d8 irq6 0xc01049a6 irq1 0xc0104872 isr1 0xc01049f6 irq9 0xc0104960 isr26 0xc01048d2 isr11 0xc0104a1e irq13 0xc01048da isr12 0xc0104868 isr0 0xc01049b0 irq2 0xc010494c isr24 0xc01048fc isr16 0xc0104886 isr3 0xc01048a4 isr6 0xc01049e2 irq7 0xc0104910 isr18 0xc010499c irq0 0xc01048ca isr10 0xc0104906 isr17 0xc010487c isr2 0xc010491a isr19 0xc0104860 idt_flush 0xc0104988 isr30 0xc0104a32 irq15 0xc01048ae isr7 0xc0104956 isr25 0xc01049c4 irq4 0xc01049ba irq3 .text 0xc0104a64 0x17f Devices/Display/VGATextOutput.class.o 0xc0104a8c VGATextOutput::getName() 0xc0104ab4 VGATextOutput::textCols() 0xc0104bac VGATextOutput::clear() 0xc0104a64 VGATextOutput::getClass() 0xc0104b26 VGATextOutput::moveCursor(unsigned short, unsigned short) 0xc0104ac8 VGATextOutput::putChar(unsigned short, unsigned short, char, unsigned char) 0xc0104abe VGATextOutput::textRows() *fill* 0xc0104be3 0x1 00 .text 0xc0104be4 0x26a Devices/Timer.class.o 0xc0104cfc Timer::setFrequency(unsigned char) 0xc0104be4 Timer::Timer(unsigned char) 0xc0104cac Timer::getClass() 0xc0104cd4 Timer::getName() 0xc0104d80 Timer::time() 0xc0104dba Timer::handleIRQ(registers_t, int) 0xc0104d74 Timer::uptime() 0xc0104c48 Timer::Timer(unsigned char) .text._Znwj 0xc0104e4e 0x1b load address 0x00104e4e .text._Znwj 0xc0104e4e 0x1b Core/kmain.wtf.o 0xc0104e4e operator new(unsigned int) .text._ZN6Device9handleIRQE11registers_ti 0xc0104e6a 0x5 load address 0x00104e6a .text._ZN6Device9handleIRQE11registers_ti 0xc0104e6a 0x5 Core/kmain.wtf.o 0xc0104e6a Device::handleIRQ(registers_t, int) .text._ZN15VirtualTerminallsEPc 0xc0104e70 0x25 load address 0x00104e70 .text._ZN15VirtualTerminallsEPc 0xc0104e70 0x25 Core/kmain.wtf.o 0xc0104e70 VirtualTerminal::operator<<(char*) .text._ZN15VirtualTerminallsEi 0xc0104e96 0x25 load address 0x00104e96 .text._ZN15VirtualTerminallsEi 0xc0104e96 0x25 Core/kmain.wtf.o 0xc0104e96 VirtualTerminal::operator<<(int) .text._ZN15VirtualTerminallsEj 0xc0104ebc 0x25 load address 0x00104ebc .text._ZN15VirtualTerminallsEj 0xc0104ebc 0x25 Core/kmain.wtf.o 0xc0104ebc VirtualTerminal::operator<<(unsigned int) .text._ZN6DeviceC2Ev 0xc0104ee2 0xe load address 0x00104ee2 .text._ZN6DeviceC2Ev 0xc0104ee2 0xe Core/kmain.wtf.o 0xc0104ee2 Device::Device() .text._ZN7DisplayC2Ev 0xc0104ef0 0x1c load address 0x00104ef0 .text._ZN7DisplayC2Ev 0xc0104ef0 0x1c Core/kmain.wtf.o 0xc0104ef0 Display::Display() .text._ZN13VGATextOutputC1Ev 0xc0104f0c 0x1c load address 0x00104f0c .text._ZN13VGATextOutputC1Ev 0xc0104f0c 0x1c Core/kmain.wtf.o 0xc0104f0c VGATextOutput::VGATextOutput() .text._ZnwjPv 0xc0104f28 0x8 load address 0x00104f28 .text._ZnwjPv 0xc0104f28 0x8 MemoryManager/PhysMem.ns.o 0xc0104f28 operator new(unsigned int, void*) .text._ZdaPv 0xc0104f30 0x13 load address 0x00104f30 .text._ZdaPv 0xc0104f30 0x13 DeviceManager/Dev.ns.o 0xc0104f30 operator delete[](void*) .text._ZN6VectorIP6DeviceEC1Ev 0xc0104f44 0x18 load address 0x00104f44 .text._ZN6VectorIP6DeviceEC1Ev 0xc0104f44 0x18 DeviceManager/Dev.ns.o 0xc0104f44 Vector::Vector() .text._ZN6VectorIP6DeviceE4pushES1_ 0xc0104f5c 0x91 load address 0x00104f5c .text._ZN6VectorIP6DeviceE4pushES1_ 0xc0104f5c 0x91 DeviceManager/Dev.ns.o 0xc0104f5c Vector::push(Device*) .text._ZN6VectorIP6DeviceE4sizeEv 0xc0104fee 0xb load address 0x00104fee .text._ZN6VectorIP6DeviceE4sizeEv 0xc0104fee 0xb DeviceManager/Dev.ns.o 0xc0104fee Vector::size() .text._ZN6VectorIP6DeviceEixEj 0xc0104ffa 0x12 load address 0x00104ffa .text._ZN6VectorIP6DeviceEixEj 0xc0104ffa 0x12 DeviceManager/Dev.ns.o 0xc0104ffa Vector::operator[](unsigned int) .text._ZN6VectorIP6DeviceE4backEv 0xc010500c 0x19 load address 0x0010500c .text._ZN6VectorIP6DeviceE4backEv 0xc010500c 0x19 DeviceManager/Dev.ns.o 0xc010500c Vector::back() .text._ZN6VectorIP6DeviceE3popEv 0xc0105026 0x6d load address 0x00105026 .text._ZN6VectorIP6DeviceE3popEv 0xc0105026 0x6d DeviceManager/Dev.ns.o 0xc0105026 Vector::pop() .text._ZN6VectorIP6DeviceEC1ERKS2_ 0xc0105094 0x7f load address 0x00105094 .text._ZN6VectorIP6DeviceEC1ERKS2_ 0xc0105094 0x7f DeviceManager/Dev.ns.o 0xc0105094 Vector::Vector(Vector const&) .text._ZN6VectorIP6DeviceED1Ev 0xc0105114 0x27 load address 0x00105114 .text._ZN6VectorIP6DeviceED1Ev 0xc0105114 0x27 DeviceManager/Dev.ns.o 0xc0105114 Vector::~Vector() .text._Znaj 0xc010513b 0x1b load address 0x0010513b .text._Znaj 0xc010513b 0x1b VTManager/VirtualTerminal.class.o 0xc010513b operator new[](unsigned int) .text._ZN6VectorIP15VirtualTerminalEC1Ev 0xc0105156 0x18 load address 0x00105156 .text._ZN6VectorIP15VirtualTerminalEC1Ev 0xc0105156 0x18 VTManager/VT.ns.o 0xc0105156 Vector::Vector() .text._ZN6VectorIP15VirtualTerminalE4pushES1_ 0xc010516e 0x91 load address 0x0010516e .text._ZN6VectorIP15VirtualTerminalE4pushES1_ 0xc010516e 0x91 VTManager/VT.ns.o 0xc010516e Vector::push(VirtualTerminal*) .text._ZN6VectorIP15VirtualTerminalE4sizeEv 0xc0105200 0xb load address 0x00105200 .text._ZN6VectorIP15VirtualTerminalE4sizeEv 0xc0105200 0xb VTManager/VT.ns.o 0xc0105200 Vector::size() .text._ZN6VectorIP15VirtualTerminalEixEj 0xc010520c 0x12 load address 0x0010520c .text._ZN6VectorIP15VirtualTerminalEixEj 0xc010520c 0x12 VTManager/VT.ns.o 0xc010520c Vector::operator[](unsigned int) .text._ZN6VectorIP15VirtualTerminalE4backEv 0xc010521e 0x19 load address 0x0010521e .text._ZN6VectorIP15VirtualTerminalE4backEv 0xc010521e 0x19 VTManager/VT.ns.o 0xc010521e Vector::back() .text._ZN6VectorIP15VirtualTerminalE3popEv 0xc0105238 0x6d load address 0x00105238 .text._ZN6VectorIP15VirtualTerminalE3popEv 0xc0105238 0x6d VTManager/VT.ns.o 0xc0105238 Vector::pop() .text._ZN6VectorIP15VirtualTerminalED1Ev 0xc01052a6 0x27 load address 0x001052a6 .text._ZN6VectorIP15VirtualTerminalED1Ev 0xc01052a6 0x27 VTManager/VT.ns.o 0xc01052a6 Vector::~Vector() .text._ZN6VectorI6StringEC1Ev 0xc01052ce 0x18 load address 0x001052ce .text._ZN6VectorI6StringEC1Ev 0xc01052ce 0x18 Library/String.class.o 0xc01052ce Vector::Vector() .text._ZN6VectorI6StringE4pushES0_ 0xc01052e6 0x9b load address 0x001052e6 .text._ZN6VectorI6StringE4pushES0_ 0xc01052e6 0x9b Library/String.class.o 0xc01052e6 Vector::push(String) .text._ZN6VectorI6StringE4backEv 0xc0105382 0x19 load address 0x00105382 .text._ZN6VectorI6StringE4backEv 0xc0105382 0x19 Library/String.class.o 0xc0105382 Vector::back() .rodata 0xc0106000 0x6f3 load address 0x00106000 *(.rodata) .rodata 0xc0106000 0x353 Core/kmain.wtf.o .rodata 0xc0106353 0x4f Core/Sys.ns.o .rodata 0xc01063a2 0x5c MemoryManager/PhysMem.ns.o *fill* 0xc01063fe 0x2 00 .rodata 0xc0106400 0x6f MemoryManager/PageAlloc.ns.o .rodata 0xc010646f 0x3 VTManager/VirtualTerminal.class.o .rodata 0xc0106472 0x5 Library/String.class.o *fill* 0xc0106477 0x9 00 .rodata 0xc0106480 0x220 SyscallManager/IDT.ns.o .rodata 0xc01066a0 0x30 Devices/Display/VGATextOutput.class.o .rodata 0xc01066d0 0x23 Devices/Timer.class.o .rodata._ZTV7Display 0xc0106700 0x28 load address 0x00106700 .rodata._ZTV7Display 0xc0106700 0x28 Core/kmain.wtf.o 0xc0106700 vtable for Display .rodata._ZTV6Device 0xc0106728 0x14 load address 0x00106728 .rodata._ZTV6Device 0xc0106728 0x14 Core/kmain.wtf.o 0xc0106728 vtable for Device .rodata._ZTV13VGATextOutput 0xc0106740 0x28 load address 0x00106740 .rodata._ZTV13VGATextOutput 0xc0106740 0x28 Devices/Display/VGATextOutput.class.o 0xc0106740 vtable for VGATextOutput .rodata._ZTV5Timer 0xc0106768 0x14 load address 0x00106768 .rodata._ZTV5Timer 0xc0106768 0x14 Devices/Timer.class.o 0xc0106768 vtable for Timer .rel.dyn 0xc010677c 0x0 load address 0x0010677c .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._ZN15VirtualTerminallsEj 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN6DeviceC2Ev 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN7DisplayC2Ev 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN13VGATextOutputC1Ev 0x00000000 0x0 Core/kmain.wtf.o .rel.rodata._ZTV7Display 0x00000000 0x0 Core/kmain.wtf.o .rel.rodata._ZTV6Device 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN6VectorIP6DeviceE4pushES1_ 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN6VectorIP6DeviceEC1ERKS2_ 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN6VectorIP6DeviceED1Ev 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN6VectorIP15VirtualTerminalE4pushES1_ 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN6VectorIP15VirtualTerminalED1Ev 0x00000000 0x0 Core/kmain.wtf.o .rel.text._ZN6VectorI6StringE4pushES0_ 0x00000000 0x0 Core/kmain.wtf.o .rel.rodata._ZTV13VGATextOutput 0x00000000 0x0 Core/kmain.wtf.o .data 0xc0107000 0x2c load address 0x00107000 0xc0107000 start_ctors = . *(.ctor*) .ctors 0xc0107000 0x4 DeviceManager/Dev.ns.o .ctors 0xc0107004 0x4 VTManager/VT.ns.o 0xc0107008 end_ctors = . 0xc0107008 start_dtors = . *(.dtor*) 0xc0107008 end_dtors = . *(.data) .data 0xc0107008 0x24 Core/kmain.wtf.o 0xc0107028 melonLogoCols 0xc0107008 melonLogo 0xc0107024 melonLogoLines .data 0xc010702c 0x0 Core/cppsupport.wtf.o .data 0xc010702c 0x0 Core/Sys.ns.o .data 0xc010702c 0x0 Core/CMem.ns.o .data 0xc010702c 0x0 MemoryManager/Mem.ns.o .data 0xc010702c 0x0 MemoryManager/PhysMem.ns.o .data 0xc010702c 0x0 MemoryManager/GDT.ns.o .data 0xc010702c 0x0 MemoryManager/PageDirectory.class.o .data 0xc010702c 0x0 MemoryManager/PageAlloc.ns.o .data 0xc010702c 0x0 DeviceManager/Disp.ns.o .data 0xc010702c 0x0 DeviceManager/Dev.ns.o .data 0xc010702c 0x0 DeviceManager/Time.ns.o .data 0xc010702c 0x0 VTManager/VirtualTerminal.class.o .data 0xc010702c 0x0 VTManager/VT.ns.o .data 0xc010702c 0x0 Library/Bitset.class.o .data 0xc010702c 0x0 Library/String.class.o .data 0xc010702c 0x0 SyscallManager/IDT.ns.o .data 0xc010702c 0x0 Devices/Display/VGATextOutput.class.o .data 0xc010702c 0x0 Devices/Timer.class.o .bss 0xc0107040 0x4928 load address 0x00107040 0xc0107040 sbss = . *(COMMON) *(.bss) .bss 0xc0107040 0x0 Core/kmain.wtf.o .bss 0xc0107040 0x4000 Core/loader.wtf.o .bss 0xc010b040 0x4 Core/cppsupport.wtf.o 0xc010b040 __dso_handle .bss 0xc010b044 0x0 Core/Sys.ns.o .bss 0xc010b044 0x0 Core/CMem.ns.o .bss 0xc010b044 0x1c MemoryManager/Mem.ns.o 0xc010b058 Mem::heapStart 0xc010b045 Mem::pagingEnabled 0xc010b04c Mem::kheapFree 0xc010b05c Mem::heapEnd 0xc010b044 Mem::kheapUsable 0xc010b048 Mem::placementAddress 0xc010b050 Mem::heapIndex .bss 0xc010b060 0xc MemoryManager/PhysMem.ns.o 0xc010b060 kernelPageDirectory 0xc010b068 PhysMem::frames 0xc010b064 PhysMem::nframes *fill* 0xc010b06c 0x14 00 .bss 0xc010b080 0x2e MemoryManager/GDT.ns.o 0xc010b0a8 GDT::gdt_ptr 0xc010b080 GDT::gdt_entries *fill* 0xc010b0ae 0x2 00 .bss 0xc010b0b0 0x0 MemoryManager/PageDirectory.class.o .bss 0xc010b0b0 0x12 MemoryManager/PageAlloc.ns.o 0xc010b0c0 PageAlloc::usable 0xc010b0b0 PageAlloc::freePage 0xc010b0bc PageAlloc::freec 0xc010b0c1 PageAlloc::locked *fill* 0xc010b0c2 0x2 00 .bss 0xc010b0c4 0xc DeviceManager/Disp.ns.o 0xc010b0c4 Disp::mode *fill* 0xc010b0d0 0x10 00 .bss 0xc010b0e0 0x60 DeviceManager/Dev.ns.o 0xc010b0e0 Dev::devices 0xc010b100 Dev::irqHandler .bss 0xc010b140 0x4 DeviceManager/Time.ns.o 0xc010b140 Time::timer .bss 0xc010b144 0x0 VTManager/VirtualTerminal.class.o .bss 0xc010b144 0x8 VTManager/VT.ns.o 0xc010b144 VT::mappedVTs .bss 0xc010b14c 0x0 Library/Bitset.class.o .bss 0xc010b14c 0x0 Library/String.class.o *fill* 0xc010b14c 0x14 00 .bss 0xc010b160 0x806 SyscallManager/IDT.ns.o 0xc010b160 IDT::idt_entries 0xc010b960 IDT::idt_ptr *fill* 0xc010b966 0x2 00 .bss 0xc010b968 0x0 Devices/Display/VGATextOutput.class.o .bss 0xc010b968 0x0 Devices/Timer.class.o 0xc010b968 ebss = . 0xc010b968 end = . 0xc010b968 _end = . 0xc010b968 __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 MemoryManager/PhysMem.ns.o LOAD MemoryManager/GDT.wtf.o LOAD MemoryManager/GDT.ns.o LOAD MemoryManager/PageDirectory.class.o LOAD MemoryManager/PageAlloc.ns.o LOAD DeviceManager/Disp.ns.o LOAD DeviceManager/Dev.ns.o LOAD DeviceManager/Time.ns.o LOAD VTManager/VirtualTerminal.class.o LOAD VTManager/VT.ns.o LOAD Library/Bitset.class.o LOAD Library/String.class.o LOAD SyscallManager/IDT.ns.o LOAD SyscallManager/IDT.wtf.o LOAD Devices/Display/VGATextOutput.class.o LOAD Devices/Timer.class.o OUTPUT(Melon.ke elf32-i386) .comment 0x00000000 0x1b3 .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 MemoryManager/Mem.ns.o .comment 0x00000079 0x12 MemoryManager/PhysMem.ns.o .comment 0x0000008b 0x1f MemoryManager/GDT.wtf.o .comment 0x000000aa 0x12 MemoryManager/GDT.ns.o .comment 0x000000bc 0x12 MemoryManager/PageDirectory.class.o .comment 0x000000ce 0x12 MemoryManager/PageAlloc.ns.o .comment 0x000000e0 0x12 DeviceManager/Disp.ns.o .comment 0x000000f2 0x12 DeviceManager/Dev.ns.o .comment 0x00000104 0x12 DeviceManager/Time.ns.o .comment 0x00000116 0x12 VTManager/VirtualTerminal.class.o .comment 0x00000128 0x12 VTManager/VT.ns.o .comment 0x0000013a 0x12 Library/Bitset.class.o .comment 0x0000014c 0x12 Library/String.class.o .comment 0x0000015e 0x12 SyscallManager/IDT.ns.o .comment 0x00000170 0x1f SyscallManager/IDT.wtf.o .comment 0x0000018f 0x12 Devices/Display/VGATextOutput.class.o .comment 0x000001a1 0x12 Devices/Timer.class.o .note.GNU-stack 0x00000000 0x0 .note.GNU-stack 0x00000000 0x0 Core/kmain.wtf.o .note.GNU-stack 0x00000000 0x0 Core/cppsupport.wtf.o .note.GNU-stack 0x00000000 0x0 Core/Sys.ns.o .note.GNU-stack 0x00000000 0x0 Core/CMem.ns.o .note.GNU-stack 0x00000000 0x0 MemoryManager/Mem.ns.o .note.GNU-stack 0x00000000 0x0 MemoryManager/PhysMem.ns.o .note.GNU-stack 0x00000000 0x0 MemoryManager/GDT.ns.o .note.GNU-stack 0x00000000 0x0 MemoryManager/PageDirectory.class.o .note.GNU-stack 0x00000000 0x0 MemoryManager/PageAlloc.ns.o .note.GNU-stack 0x00000000 0x0 DeviceManager/Disp.ns.o .note.GNU-stack 0x00000000 0x0 DeviceManager/Dev.ns.o .note.GNU-stack 0x00000000 0x0 DeviceManager/Time.ns.o .note.GNU-stack 0x00000000 0x0 VTManager/VirtualTerminal.class.o .note.GNU-stack 0x00000000 0x0 VTManager/VT.ns.o .note.GNU-stack 0x00000000 0x0 Library/Bitset.class.o .note.GNU-stack 0x00000000 0x0 Library/String.class.o .note.GNU-stack 0x00000000 0x0 SyscallManager/IDT.ns.o .note.GNU-stack 0x00000000 0x0 Devices/Display/VGATextOutput.class.o .note.GNU-stack 0x00000000 0x0 Devices/Timer.class.o