Hello.
 
I propose to change the structure of the HAL.
i.e. to build different hal's (hal.dll, halacpi.dll etc not from different libs (generic, acpi, apic, up, legacy etc.),
and using constructs like #ifdef _ACPI_HAL_.
For example, generic/dma.c in the acpi version need when entering sleep mode and exit from it, you need to save the state of the dma controller, and in non acpi hal - this is not necessary.
this is for the future.
 
 
p. S. sorry for my English if anything.
p. p. S. who speaks Russian, if not difficult, can I write in Russian