Thinking about ADLO and the shadow enable/disable got some wheels turning.
I've been spending lots of time in V2 and I was wondering if the same type of methodology can't work for ADLO.
In V2 there are specifc .c files that do thing in a chipset specific way and the auto.c includes them as necesary. Those get compiled and then stuck in the startup assembly.
What if we created a shadow.c file that was in the northbridge directory with a simple API type setup that enabled and disabled the various shadow ranges.
Then the ADLO build system could just romcc these files and the loader would include them just like crt0.S does. That way there are no callbacks across the payload boundry yet you could setup ADLO or other payloads so they would work in a chipset agnostic way.
I suppose that that FILO and the emulator render most of ADLO un-needed but if you are going to try and use FreeDOS or Windoze as an OS then you will need ADLO.