Define handle_post as VISIBLE32FLAT as work around for QEmu memory layout.

QEmu only copies the top 128K of the BIOS image to low memory
(0xe0000-0xfffff).  Images over 128K are only fully mapped in high
memory (0xfff00000).  However, the SeaBIOS shadow functions
(make_bios_writable_intel) will copy up to 256K to low memory.

SeaBIOS generally works with 256K roms because they are automatically
copied to low memory during the BIOS init.  However, this only works
if the shadow function code is itself part of the bios image that is
placed in low memory by QEmu.

Defining handle_post() as VISIBLE32FLAT will make the linker scripts
more likely to place the initial shadow code in the last 128K of the
image.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
1 file changed
tree: 9299a8a52b7d3f6e11836b0f5d743667dec76ec6
  1. .gitignore
  2. COPYING
  3. COPYING.LESSER
  4. Makefile
  5. README
  6. TODO
  7. src/
  8. tools/
  9. vgasrc/