Index: /trunk/src/VBox/Devices/Config.kmk
===================================================================
--- /trunk/src/VBox/Devices/Config.kmk	(revision 42356)
+++ /trunk/src/VBox/Devices/Config.kmk	(revision 42357)
@@ -24,18 +24,19 @@
 
 #
-# VBoxBios - Template for building the BIOS bits.
+# VBoxBios - Template for building 16-bit BIOS code.
 #
 TEMPLATE_VBoxBios = ROM
-TEMPLATE_VBoxBios_TOOL    = OPENWATCOM-16
-TEMPLATE_VBoxBios_LDTOOL  = OPENWATCOM-WL
-TEMPLATE_VBoxBios_ASTOOL  = OPENWATCOM-16
-TEMPLATE_VBoxBios_BLD_TRG = os-agnostic
+TEMPLATE_VBoxBios_TOOL         = OPENWATCOM-16
+TEMPLATE_VBoxBios_LDTOOL       = OPENWATCOM-WL
+TEMPLATE_VBoxBios_ASTOOL       = OPENWATCOM-16
+TEMPLATE_VBoxBios_BLD_TRG      = os-agnostic
 TEMPLATE_VBoxBios_BLD_TRG_ARCH = x86
-TEMPLATE_VBoxBios_BINSUFF = .rom
-TEMPLATE_VBoxBios_INCS    = .
-TEMPLATE_VBoxBios_ASFLAGS = -q -wx ## @todo add -0?
-TEMPLATE_VBoxBios_CFLAGS  = -q -3 -wx -zl -zu -s -oas -d1+ -ms
-TEMPLATE_VBoxBios_DEPS    = $(VBOX_VERSION_HEADER)
-TEMPLATE_VBoxBios_LDFLAGS = system dos  \
+TEMPLATE_VBoxBios_BINSUFF      = .rom
+TEMPLATE_VBoxBios_INCS         = .
+TEMPLATE_VBoxBios_ASFLAGS      = -q -wx ## @todo add -0?
+TEMPLATE_VBoxBios_CFLAGS       = -q -3 -wx -zl -zu -s -oas -d1+ -ms
+TEMPLATE_VBoxBios_CXXFLAGS     = $(TEMPLATE_VBoxBios_CFLAGS)
+TEMPLATE_VBoxBios_DEPS         = $(VBOX_VERSION_HEADER)
+TEMPLATE_VBoxBios_LDFLAGS      = system dos  \
 	debug all \
 	option quiet, nofarcalls, map, verbose, statics, symfile \
@@ -46,2 +47,15 @@
 	&& $(VBOX_BIOSSUMS) $(out).tmp $(out) \
 	&& $(RM_EXT) -f $(out).tmp
+
+#
+# VBoxBios - Template for building 32-bit BIOS code.
+#
+TEMPLATE_VBoxBios32Lib = ROM
+TEMPLATE_VBoxBios32Lib_EXTENDS    = VBoxBios
+TEMPLATE_VBoxBios32Lib_TOOL       = OPENWATCOM
+TEMPLATE_VBoxBios32Lib_ASTOOL     = OPENWATCOM
+TEMPLATE_VBoxBios32Lib_CFLAGS     = -q -wx -zu -s -oas -d1+ -ms -nt=BIOS32 -nd=BIOS32
+TEMPLATE_VBoxBios32Lib_CXXFLAGS   = $(TEMPLATE_VBoxBios32_CFLAGS)
+TEMPLATE_VBoxBios32Lib_LNK_DEPS   = $(NO_SUCH_VARIABLE)
+TEMPLATE_VBoxBios32Lib_POST_CMDS  = $(NO_SUCH_VARIABLE)
+
Index: /trunk/src/VBox/Devices/PC/BIOS/Makefile.kmk
===================================================================
--- /trunk/src/VBox/Devices/PC/BIOS/Makefile.kmk	(revision 42356)
+++ /trunk/src/VBox/Devices/PC/BIOS/Makefile.kmk	(revision 42357)
@@ -39,5 +39,5 @@
  	 clname CODE \
  	  segment _TEXT   segaddr=0xF000 offset=0x1600 \
- 	  segment BIOS32  segaddr=0xF000 offset=0xDE00 \
+ 	  segment BIOS32  segaddr=0xF000 offset=0xDB00 \
  	  segment BIOSSEG segaddr=0xF000 offset=0xE000
  VBoxPcBios_SOURCES = \
@@ -53,5 +53,4 @@
  	system.c \
  	timepci.c \
- 	pcibios.c \
  	ps2mouse.c \
  	parallel.c \
@@ -59,9 +58,17 @@
  	scsi.c \
  	ahci.c \
+ 	pcibios.c \
  	pciutil.c \
  	vds.c \
  	../../BiosCommonCode/support.asm \
  	pcibio32.asm \
+ 	$(VBoxPcBios32_1_TARGET) \
  	orgs.asm
+
+ # For 32-bit C code in PC BIOS.
+ LIBRARIES += VBoxPcBios32Lib
+ VBoxPcBios32_TEMPLATE = VBoxBios32
+ VBoxPcBios32_SOURCES = \
+       pci32.c
 
  #
