소스 검색

Kernel: Move Multiboot header into a separate file

Gunnar Beutner 4 년 전
부모
커밋
13e4093da4
4개의 변경된 파일29개의 추가작업 그리고 56개의 파일을 삭제
  1. 28 0
      Kernel/Arch/x86/common/Boot/multiboot.S
  2. 0 28
      Kernel/Arch/x86/i386/Boot/boot.S
  3. 0 28
      Kernel/Arch/x86/x86_64/Boot/boot.S
  4. 1 0
      Kernel/CMakeLists.txt

+ 28 - 0
Kernel/Arch/x86/common/Boot/multiboot.S

@@ -0,0 +1,28 @@
+.code32
+.set MULTIBOOT_MAGIC,         0x1badb002
+.set MULTIBOOT_PAGE_ALIGN,    0x1
+.set MULTIBOOT_MEMORY_INFO,   0x2
+.set MULTIBOOT_VIDEO_MODE,    0x4
+.set multiboot_flags,         MULTIBOOT_PAGE_ALIGN | MULTIBOOT_MEMORY_INFO
+.set multiboot_checksum,      -(MULTIBOOT_MAGIC + multiboot_flags)
+
+.section .multiboot, "a"
+.align 4
+
+.long MULTIBOOT_MAGIC
+.long multiboot_flags
+.long multiboot_checksum
+
+
+/* for MULTIBOOT_MEMORY_INFO */
+.long 0x00000000    /* header_addr */
+.long 0x00000000    /* load_addr */
+.long 0x00000000    /* load_end_addr */
+.long 0x00000000    /* bss_end_addr */
+.long 0x00000000    /* entry_addr */
+
+/* for MULTIBOOT_VIDEO_MODE */
+.long 0x00000000    /* mode_type */
+.long 1280          /* width */
+.long 1024          /* height */
+.long 32            /* depth */

+ 0 - 28
Kernel/Arch/x86/i386/Boot/boot.S

@@ -1,31 +1,3 @@
-.set MULTIBOOT_MAGIC,         0x1badb002
-.set MULTIBOOT_PAGE_ALIGN,    0x1
-.set MULTIBOOT_MEMORY_INFO,   0x2
-.set MULTIBOOT_VIDEO_MODE,    0x4
-.set multiboot_flags,         MULTIBOOT_PAGE_ALIGN | MULTIBOOT_MEMORY_INFO
-.set multiboot_checksum,      -(MULTIBOOT_MAGIC + multiboot_flags)
-
-.section .multiboot, "a"
-.align 4
-
-.long MULTIBOOT_MAGIC
-.long multiboot_flags
-.long multiboot_checksum
-
-
-/* for MULTIBOOT_MEMORY_INFO */
-.long 0x00000000    /* header_addr */
-.long 0x00000000    /* load_addr */
-.long 0x00000000    /* load_end_addr */
-.long 0x00000000    /* bss_end_addr */
-.long 0x00000000    /* entry_addr */
-
-/* for MULTIBOOT_VIDEO_MODE */
-.long 0x00000000    /* mode_type */
-.long 1280          /* width */
-.long 1024          /* height */
-.long 32            /* depth */
-
 .section .stack, "aw", @nobits
 stack_bottom:
 .skip 32768

+ 0 - 28
Kernel/Arch/x86/x86_64/Boot/boot.S

@@ -1,32 +1,4 @@
 .code32
-.set MULTIBOOT_MAGIC,         0x1badb002
-.set MULTIBOOT_PAGE_ALIGN,    0x1
-.set MULTIBOOT_MEMORY_INFO,   0x2
-.set MULTIBOOT_VIDEO_MODE,    0x4
-.set multiboot_flags,         MULTIBOOT_PAGE_ALIGN | MULTIBOOT_MEMORY_INFO | MULTIBOOT_VIDEO_MODE
-.set multiboot_checksum,      -(MULTIBOOT_MAGIC + multiboot_flags)
-
-.section .multiboot
-.align 4
-
-.long MULTIBOOT_MAGIC
-.long multiboot_flags
-.long multiboot_checksum
-
-
-/* for MULTIBOOT_MEMORY_INFO */
-.long 0x00000000    /* header_addr */
-.long 0x00000000    /* load_addr */
-.long 0x00000000    /* load_end_addr */
-.long 0x00000000    /* bss_end_addr */
-.long 0x00000000    /* entry_addr */
-
-/* for MULTIBOOT_VIDEO_MODE */
-.long 0x00000000    /* mode_type */
-.long 1280          /* width */
-.long 1024          /* height */
-.long 32            /* depth */
-
 .section .stack, "aw", @nobits
 stack_bottom:
 .skip 32768

+ 1 - 0
Kernel/CMakeLists.txt

@@ -281,6 +281,7 @@ set(KERNEL_SOURCES
 set(KERNEL_SOURCES
     ${KERNEL_SOURCES}
     ${CMAKE_CURRENT_SOURCE_DIR}/Arch/x86/common/ASM_wrapper.cpp
+    ${CMAKE_CURRENT_SOURCE_DIR}/Arch/x86/common/Boot/multiboot.S
     ${CMAKE_CURRENT_SOURCE_DIR}/Arch/x86/common/CPU.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/Arch/x86/common/Interrupts.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/Arch/x86/common/Processor.cpp