build: Make a start on the new build system

This commit puts the very first files into place to make the new build
system do something. The compilation currently still goes through the
old system, but slowly build files will be added.

Within a couple of days to weeks, dependent on my work load, we should
be over to the new build system.

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
build: Add all compile units to build system

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
build: Turn new build system into the default

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
build: Fix a bunch of warnings

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
system: Start work on system abstraction layer.

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
scripts: move the doxyfile and write doxy make target

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
hal: Add system init functions

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
system: Hook up memory allocation to system node

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
system: Make kmalloc dependent of abstraction

All references to kalloc, kzalloc and free have been removed, to make
way for kmalloc.

In order to be able to plug in other memory allocation schemes, kmalloc
has been turned into a macro which references the abstraction layer.
In order to test this, we had to remove the references to the old
system.

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
system: Add memory allocating documentation

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
system: alloc: Make slob and slab system swappable

Previously some systems used slab, some used slob, requiring both to be
present in the system.

This patch fixes that issue, making it so that now either the slab or
the slob allocator gets used. Future implementations in build should
make it possible to select only one at configure time.

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
build: Fix some stuff that build broke

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
system: Add paging to the system abstraction layer

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
iso: Reenable iso building in makefiles

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
scripts: Move floppy scripts over to new location

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
Fix problems with booting on physical hardware

This particular issue was related to machines with memory ranges
extending to over 4GiB.

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
Test: Add qemu-kvm for added realism

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
mm: paging: Remove old paging code

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
text: Fix bug in debug macro

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>
arch: irq: Fix keyboard handling bug (somehow)

Signed-off-by: Bart Kuivenhoven <bemkuivenhoven@gmail.com>