Why not use some sort of dynamic linking system?
use some sort of dynamic linking system
The VBE/AF interface already provides this for the video drivers: see
the FreeBE/AF project on http://www.talula.demon.co.uk/freebe/
For more general things like the sound, VESA, and mode-X routines,
this would be very difficult to do because the drivers depend on a lot
of helper functions from the core lib. The djgpp DXE format is nowhere
near flexible enough to support this, and we don't want to make Allegro
dependent on any other dynamic linking packages.