diff --git a/COPYING.LESSER b/COPYING.LESSER
new file mode 100644
index 0000000..fc8a5de
--- /dev/null
+++ b/COPYING.LESSER
@@ -0,0 +1,165 @@
+		   GNU LESSER GENERAL PUBLIC LICENSE
+                       Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+
+  This version of the GNU Lesser General Public License incorporates
+the terms and conditions of version 3 of the GNU General Public
+License, supplemented by the additional permissions listed below.
+
+  0. Additional Definitions. 
+
+  As used herein, "this License" refers to version 3 of the GNU Lesser
+General Public License, and the "GNU GPL" refers to version 3 of the GNU
+General Public License.
+
+  "The Library" refers to a covered work governed by this License,
+other than an Application or a Combined Work as defined below.
+
+  An "Application" is any work that makes use of an interface provided
+by the Library, but which is not otherwise based on the Library.
+Defining a subclass of a class defined by the Library is deemed a mode
+of using an interface provided by the Library.
+
+  A "Combined Work" is a work produced by combining or linking an
+Application with the Library.  The particular version of the Library
+with which the Combined Work was made is also called the "Linked
+Version".
+
+  The "Minimal Corresponding Source" for a Combined Work means the
+Corresponding Source for the Combined Work, excluding any source code
+for portions of the Combined Work that, considered in isolation, are
+based on the Application, and not on the Linked Version.
+
+  The "Corresponding Application Code" for a Combined Work means the
+object code and/or source code for the Application, including any data
+and utility programs needed for reproducing the Combined Work from the
+Application, but excluding the System Libraries of the Combined Work.
+
+  1. Exception to Section 3 of the GNU GPL.
+
+  You may convey a covered work under sections 3 and 4 of this License
+without being bound by section 3 of the GNU GPL.
+
+  2. Conveying Modified Versions.
+
+  If you modify a copy of the Library, and, in your modifications, a
+facility refers to a function or data to be supplied by an Application
+that uses the facility (other than as an argument passed when the
+facility is invoked), then you may convey a copy of the modified
+version:
+
+   a) under this License, provided that you make a good faith effort to
+   ensure that, in the event an Application does not supply the
+   function or data, the facility still operates, and performs
+   whatever part of its purpose remains meaningful, or
+
+   b) under the GNU GPL, with none of the additional permissions of
+   this License applicable to that copy.
+
+  3. Object Code Incorporating Material from Library Header Files.
+
+  The object code form of an Application may incorporate material from
+a header file that is part of the Library.  You may convey such object
+code under terms of your choice, provided that, if the incorporated
+material is not limited to numerical parameters, data structure
+layouts and accessors, or small macros, inline functions and templates
+(ten or fewer lines in length), you do both of the following:
+
+   a) Give prominent notice with each copy of the object code that the
+   Library is used in it and that the Library and its use are
+   covered by this License.
+
+   b) Accompany the object code with a copy of the GNU GPL and this license
+   document.
+
+  4. Combined Works.
+
+  You may convey a Combined Work under terms of your choice that,
+taken together, effectively do not restrict modification of the
+portions of the Library contained in the Combined Work and reverse
+engineering for debugging such modifications, if you also do each of
+the following:
+
+   a) Give prominent notice with each copy of the Combined Work that
+   the Library is used in it and that the Library and its use are
+   covered by this License.
+
+   b) Accompany the Combined Work with a copy of the GNU GPL and this license
+   document.
+
+   c) For a Combined Work that displays copyright notices during
+   execution, include the copyright notice for the Library among
+   these notices, as well as a reference directing the user to the
+   copies of the GNU GPL and this license document.
+
+   d) Do one of the following:
+
+       0) Convey the Minimal Corresponding Source under the terms of this
+       License, and the Corresponding Application Code in a form
+       suitable for, and under terms that permit, the user to
+       recombine or relink the Application with a modified version of
+       the Linked Version to produce a modified Combined Work, in the
+       manner specified by section 6 of the GNU GPL for conveying
+       Corresponding Source.
+
+       1) Use a suitable shared library mechanism for linking with the
+       Library.  A suitable mechanism is one that (a) uses at run time
+       a copy of the Library already present on the user's computer
+       system, and (b) will operate properly with a modified version
+       of the Library that is interface-compatible with the Linked
+       Version. 
+
+   e) Provide Installation Information, but only if you would otherwise
+   be required to provide such information under section 6 of the
+   GNU GPL, and only to the extent that such information is
+   necessary to install and execute a modified version of the
+   Combined Work produced by recombining or relinking the
+   Application with a modified version of the Linked Version. (If
+   you use option 4d0, the Installation Information must accompany
+   the Minimal Corresponding Source and Corresponding Application
+   Code. If you use option 4d1, you must provide the Installation
+   Information in the manner specified by section 6 of the GNU GPL
+   for conveying Corresponding Source.)
+
+  5. Combined Libraries.
+
+  You may place library facilities that are a work based on the
+Library side by side in a single library together with other library
+facilities that are not Applications and are not covered by this
+License, and convey such a combined library under terms of your
+choice, if you do both of the following:
+
+   a) Accompany the combined library with a copy of the same work based
+   on the Library, uncombined with any other library facilities,
+   conveyed under the terms of this License.
+
+   b) Give prominent notice with the combined library that part of it
+   is a work based on the Library, and explaining where to find the
+   accompanying uncombined form of the same work.
+
+  6. Revised Versions of the GNU Lesser General Public License.
+
+  The Free Software Foundation may publish revised and/or new versions
+of the GNU Lesser General Public License from time to time. Such new
+versions will be similar in spirit to the present version, but may
+differ in detail to address new problems or concerns.
+
+  Each version is given a distinguishing version number. If the
+Library as you received it specifies that a certain numbered version
+of the GNU Lesser General Public License "or any later version"
+applies to it, you have the option of following the terms and
+conditions either of that published version or of any later version
+published by the Free Software Foundation. If the Library as you
+received it does not specify a version number of the GNU Lesser
+General Public License, you may choose any version of the GNU Lesser
+General Public License ever published by the Free Software Foundation.
+
+  If the Library as you received it specifies that a proxy can decide
+whether future versions of the GNU Lesser General Public License shall
+apply, that proxy's public statement of acceptance of any version is
+permanent authorization for you to choose that version for the
+Library.
diff --git a/Makefile b/Makefile
index a6473d7..13ef54b 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@
 #
 # Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 #
-# 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.
 
 # Output directory
 OUT=out/
diff --git a/src/acpi.c b/src/acpi.c
index cf8e3fa..17b0a92 100644
--- a/src/acpi.c
+++ b/src/acpi.c
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "acpi.h" // struct rsdp_descriptor
 #include "util.h" // memcpy
diff --git a/src/apm.c b/src/apm.c
index fbbd511..6efead0 100644
--- a/src/apm.c
+++ b/src/apm.c
@@ -4,7 +4,7 @@
 // Copyright (C) 2005 Struan Bartlett
 // Copyright (C) 2004 Fabrice Bellard
 //
-// 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 "farptr.h" // GET_VAR
 #include "bregs.h" // struct bregs
diff --git a/src/ata.c b/src/ata.c
index 81d00cd..0b0bdc1 100644
--- a/src/ata.c
+++ b/src/ata.c
@@ -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 "types.h" // u8
 #include "ioport.h" // inb
diff --git a/src/biosvar.h b/src/biosvar.h
index 5c948ca..5105696 100644
--- a/src/biosvar.h
+++ b/src/biosvar.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 #ifndef __BIOSVAR_H
 #define __BIOSVAR_H
 
diff --git a/src/boot.c b/src/boot.c
index bc13f79..e0fb67a 100644
--- a/src/boot.c
+++ b/src/boot.c
@@ -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 "util.h" // irq_enable
 #include "biosvar.h" // GET_EBDA
diff --git a/src/bregs.h b/src/bregs.h
index 4d6a699..e420bbe 100644
--- a/src/bregs.h
+++ b/src/bregs.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 
 #ifndef __BREGS_H
 #define __BREGS_H
diff --git a/src/cbt.c b/src/cbt.c
index 5554fda..bb7aea3 100644
--- a/src/cbt.c
+++ b/src/cbt.c
@@ -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 "biosvar.h" // CONFIG_BIOS_TABLE
 
diff --git a/src/cdrom.c b/src/cdrom.c
index dbf4379..a7cf6c2 100644
--- a/src/cdrom.c
+++ b/src/cdrom.c
@@ -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 "disk.h" // cdrom_13
 #include "util.h" // memset
diff --git a/src/clock.c b/src/clock.c
index caa94ba..ccc05f4 100644
--- a/src/clock.c
+++ b/src/clock.c
@@ -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 "biosvar.h" // SET_BDA
 #include "util.h" // debug_enter
diff --git a/src/cmos.h b/src/cmos.h
index 5c7b39d..aa8bcae 100644
--- a/src/cmos.h
+++ b/src/cmos.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 #ifndef __CMOS_H
 #define __CMOS_H
 
diff --git a/src/coreboot.c b/src/coreboot.c
index 8b93e26..051cd80 100644
--- a/src/coreboot.c
+++ b/src/coreboot.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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 "memmap.h" // add_e820
 #include "util.h" // dprintf
diff --git a/src/disk.c b/src/disk.c
index f63a833..d5c7df2 100644
--- a/src/disk.c
+++ b/src/disk.c
@@ -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 "disk.h" // floppy_13
 #include "biosvar.h" // SET_BDA
diff --git a/src/disk.h b/src/disk.h
index 5e7d0fb..ea42cf8 100644
--- a/src/disk.h
+++ b/src/disk.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 #ifndef __DISK_H
 #define __DISK_H
 
diff --git a/src/farptr.h b/src/farptr.h
index cb301b1..a32bf73 100644
--- a/src/farptr.h
+++ b/src/farptr.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 #ifndef __FARPTR_H
 #define __FARPTR_H
 
diff --git a/src/floppy.c b/src/floppy.c
index 3e78214..6214acb 100644
--- a/src/floppy.c
+++ b/src/floppy.c
@@ -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 "types.h" // u8
 #include "disk.h" // DISK_RET_SUCCESS
diff --git a/src/floppy_dbt.c b/src/floppy_dbt.c
index 2a686dc..a988201 100644
--- a/src/floppy_dbt.c
+++ b/src/floppy_dbt.c
@@ -2,7 +2,7 @@
 //
 // 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 "disk.h" // struct floppy_dbt_s
 
diff --git a/src/ioport.h b/src/ioport.h
index cb11a3d..97546a6 100644
--- a/src/ioport.h
+++ b/src/ioport.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 #ifndef __IOPORT_H
 #define __IOPORT_H
 
diff --git a/src/kbd.c b/src/kbd.c
index a88f1ea..e976350 100644
--- a/src/kbd.c
+++ b/src/kbd.c
@@ -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 "biosvar.h" // GET_BDA
 #include "util.h" // debug_enter
diff --git a/src/memmap.c b/src/memmap.c
index 2bcb254..372ec52 100644
--- a/src/memmap.c
+++ b/src/memmap.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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 "memmap.h" // struct e820entry
 #include "util.h" // dprintf.h
diff --git a/src/mouse.c b/src/mouse.c
index b57a7e7..19fc6ec 100644
--- a/src/mouse.c
+++ b/src/mouse.c
@@ -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 "biosvar.h" // GET_EBDA
 #include "util.h" // debug_isr
diff --git a/src/mptable.c b/src/mptable.c
index 1dd45ec..bdb1f2e 100644
--- a/src/mptable.c
+++ b/src/mptable.c
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "util.h" // dprintf
 #include "memmap.h" // bios_table_cur_addr
diff --git a/src/mtrr.c b/src/mtrr.c
index 161c1c0..d14a25c 100644
--- a/src/mtrr.c
+++ b/src/mtrr.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "util.h" // dprintf
 #include "biosvar.h" // GET_EBDA
diff --git a/src/optionroms.c b/src/optionroms.c
index 44001ee..c2a563b 100644
--- a/src/optionroms.c
+++ b/src/optionroms.c
@@ -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 "bregs.h" // struct bregs
 #include "farptr.h" // FARPTR_TO_SEG
diff --git a/src/output.c b/src/output.c
index 356f2e5..63aec9d 100644
--- a/src/output.c
+++ b/src/output.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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 <stdarg.h> // va_list
 
diff --git a/src/pci.c b/src/pci.c
index 5e8d7bb..a59af07 100644
--- a/src/pci.c
+++ b/src/pci.c
@@ -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 "pci.h" // pci_config_writel
 #include "ioport.h" // outl
diff --git a/src/pcibios.c b/src/pcibios.c
index cdda347..0dafcf1 100644
--- a/src/pcibios.c
+++ b/src/pcibios.c
@@ -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 "types.h" // u32
 #include "util.h" // handle_1ab1
diff --git a/src/pciinit.c b/src/pciinit.c
index 95b8dd9..78f4212 100644
--- a/src/pciinit.c
+++ b/src/pciinit.c
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "util.h" // dprintf
 #include "pci.h" // pci_config_readl
diff --git a/src/pic.c b/src/pic.c
index 7ffdcb4..aa0453a 100644
--- a/src/pic.c
+++ b/src/pic.c
@@ -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 "pic.h" // get_pic1_isr
 #include "util.h" // dprintf
diff --git a/src/pic.h b/src/pic.h
index d4228e1..3056676 100644
--- a/src/pic.h
+++ b/src/pic.h
@@ -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.
 #ifndef __PIC_H
 #define __PIC_H
 
diff --git a/src/pirtable.c b/src/pirtable.c
index ba141a5..ad5cf27 100644
--- a/src/pirtable.c
+++ b/src/pirtable.c
@@ -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 "pci.h" // struct pir_header
 #include "util.h" // checksum
diff --git a/src/pnpbios.c b/src/pnpbios.c
index 8bf71dc..6daa025 100644
--- a/src/pnpbios.c
+++ b/src/pnpbios.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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 "util.h" // checksum
 #include "config.h" // BUILD_BIOS_ADDR
diff --git a/src/post.c b/src/post.c
index 0fd41f9..bfa6562 100644
--- a/src/post.c
+++ b/src/post.c
@@ -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 "ioport.h" // PORT_*
 #include "config.h" // CONFIG_*
diff --git a/src/post_menu.c b/src/post_menu.c
index 8b6e58a..3182d3c 100644
--- a/src/post_menu.c
+++ b/src/post_menu.c
@@ -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 "biosvar.h" // GET_EBDA
 #include "util.h" // mdelay
diff --git a/src/ps2port.c b/src/ps2port.c
index ed401bf..3f2fee7 100644
--- a/src/ps2port.c
+++ b/src/ps2port.c
@@ -1,9 +1,9 @@
 // Support for handling the PS/2 mouse/keyboard ports.
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
-// Based on code Copyright (c) 1999-2004 Vojtech Pavlik
+// Several ideas taken from code Copyright (c) 1999-2004 Vojtech Pavlik
 //
-// 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 "ioport.h" // inb
 #include "util.h" // dprintf
diff --git a/src/resume.c b/src/resume.c
index 2100383..1bffd49 100644
--- a/src/resume.c
+++ b/src/resume.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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 "util.h" // dprintf
 #include "ioport.h" // outb
diff --git a/src/rombios.lds.S b/src/rombios.lds.S
index 1305c40..56bf643 100644
--- a/src/rombios.lds.S
+++ b/src/rombios.lds.S
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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"
 
diff --git a/src/rombios16.lds.S b/src/rombios16.lds.S
index 2966ce6..b2d7ecc 100644
--- a/src/rombios16.lds.S
+++ b/src/rombios16.lds.S
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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"
 
diff --git a/src/rombios32.lds.S b/src/rombios32.lds.S
index cc3fc36..6d73537 100644
--- a/src/rombios32.lds.S
+++ b/src/rombios32.lds.S
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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"
 
diff --git a/src/romlayout.S b/src/romlayout.S
index 6c5429d..7fd7f3e 100644
--- a/src/romlayout.S
+++ b/src/romlayout.S
@@ -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
diff --git a/src/serial.c b/src/serial.c
index 6d1f928..6de6636 100644
--- a/src/serial.c
+++ b/src/serial.c
@@ -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 "biosvar.h" // SET_BDA
 #include "util.h" // debug_enter
diff --git a/src/shadow.c b/src/shadow.c
index 4e13922..264656d 100644
--- a/src/shadow.c
+++ b/src/shadow.c
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "util.h" // memcpy
 #include "pci.h" // pci_config_writeb
diff --git a/src/smbios.c b/src/smbios.c
index d0e1ebe..e2f2190 100644
--- a/src/smbios.c
+++ b/src/smbios.c
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "util.h" // dprintf
 #include "memmap.h" // bios_table_cur_addr
diff --git a/src/smm.c b/src/smm.c
index 07c2898..ac65837 100644
--- a/src/smm.c
+++ b/src/smm.c
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "pci.h" // pci_config_writel
 #include "util.h" // wbinvd
diff --git a/src/smpdetect.c b/src/smpdetect.c
index b334649..0617be4 100644
--- a/src/smpdetect.c
+++ b/src/smpdetect.c
@@ -3,7 +3,7 @@
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 // Copyright (C) 2006 Fabrice Bellard
 //
-// 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 "util.h" // dprintf
 #include "config.h" // CONFIG_*
diff --git a/src/system.c b/src/system.c
index 47d5817..9bf4a5d 100644
--- a/src/system.c
+++ b/src/system.c
@@ -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 "util.h" // irq_restore
 #include "biosvar.h" // BIOS_CONFIG_TABLE
diff --git a/src/types.h b/src/types.h
index 587cb41..74d9e71 100644
--- a/src/types.h
+++ b/src/types.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 #ifndef __TYPES_H
 #define __TYPES_H
 
diff --git a/src/util.c b/src/util.c
index abc1fb2..af5dbd3 100644
--- a/src/util.c
+++ b/src/util.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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 "util.h" // usleep
 #include "bregs.h" // struct bregs
diff --git a/src/util.h b/src/util.h
index 0c9be5e..7492c55 100644
--- a/src/util.h
+++ b/src/util.h
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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.
 #ifndef __UTIL_H
 #define __UTIL_H
 
diff --git a/src/vgahooks.c b/src/vgahooks.c
index 7cacbdf..fcb7793 100644
--- a/src/vgahooks.c
+++ b/src/vgahooks.c
@@ -2,7 +2,7 @@
 //
 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
 //
-// 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 "bregs.h" // set_code_fail
 #include "biosvar.h" // GET_GLOBAL
