In the PCI driver's device enumeration function, there was a mistake
where a register that is being used in that function wasn't preserved
as it should've been. It didn't cause any errors (at least yet), but
it's better to fix such stuff once found.
The driver manager's function for initializing all builtin drivers is
now being called in the 'stage2_protected_entry'-function, a function
that is called once the GDT is set up and calls all other functions
to get the system to boot.
The first one was a stray letter 'Z' somewhere in the source.
The second one was an error due to some changes being half-done; an
assembly label that did not yet exist was used.
Those two errors are fixed now.
The ACPI driver is not required yet, but some stubs have already been
added to the sources; only to test the driver initialization function
of the driver manager.
In the GDT, the direction in which the stack grows in x86 has been
ignored; for reserving space on the stack, the ESP register was added
to and for cleaning up that space, ESP was subtracted from. That is
obviously wrong and is fixed with this commit.
The newly added function only searchs the "RSD PTR "-signature in the
Main BIOS Area, not in the *Extended* BIOS Area. That should be fixed,
but right now, it's of little relevance.