Try to automatically fit sections into open spaces in the fixed area.
[seabios.git] / src / romlayout.S
index 6c5429ddf7cd9a5cd7045739e26b58cb5ae35fbe..e8cc9b4c84d50a8b1e5b000cd9797747d7aea633 100644 (file)
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2002  MandrakeSoft S.A.
 //
-// This file may be distributed under the terms of the GNU GPLv3 license.
+// This file may be distributed under the terms of the GNU LGPLv3 license.
 
 #include "config.h" // CONFIG_*
 #include "ioport.h" // PORT_A20
 
         // Specify a location in the fixed part of bios area.
         .macro ORG addr
-        .section .text.fixed.addr
-        .org \addr - BUILD_START_FIXED
+        .section .fixedaddr.\addr
         .endm
 
 
@@ -488,7 +487,7 @@ rombios32_gdt_48:
         .word (rombios32_gdt_end - rombios32_gdt)
         .long (BUILD_BIOS_ADDR + rombios32_gdt)
 
-        .balign 8
+        //.balign 8
         .type rombios32_gdt, @object
 rombios32_gdt:
         .word 0, 0, 0, 0
@@ -521,6 +520,7 @@ entry_13_official:
         .type __fdpt, @object
 __fdpt:
         // XXX - Fixed Disk Parameter Table
+        .space 16
 
         ORG 0xe6f2
         .global entry_19_official
@@ -535,6 +535,7 @@ entry_19_official:
         .type __brgt, @object
 __brgt:
         // XXX - Baud Rate Generator Table
+        .space 16
 
         ORG 0xe739
         IRQ_ENTRY_ARG 14
@@ -572,11 +573,7 @@ __int1d:
         // XXX - INT 1D - SYSTEM DATA - VIDEO PARAMETER TABLES
         .space 0x58
 
-        .global freespace2_start, freespace2_end
-freespace2_start:
-
         ORG 0xf841
-freespace2_end:
         .global entry_12_official
 entry_12_official:
         jmp entry_12
@@ -627,6 +624,7 @@ entry_18:
         ORG 0xfef3
 __initvector:
         // XXX - Initial Interrupt Vector Offsets Loaded by POST
+        .space 13
 
         ORG 0xff00
         .type __copyright, @object