HAL is a great attempt. It is just badly done. ..
HAL tries to handle the hundreds of permutations of hardware combinations... and mostly fails. However ..
On the contrary, it serves its purpose very well. Most software developers understand very well that it is meant as learning support, something like a tutorial. If you can't use it, that's fine with everybody.
You can ask Santa Claus for a present - libraries written to your specs. All these rants because he didn't respond?
Regards, Dieter