Hi,
Dne 10. 02. 24 v 20:09 Kevin O'Connor napsal(a):
So it might not be a gcc issue really, but just a too large bios and gcc-13 is able to produce more compact code which actually fits.
Ah, that makes sense. In the future, if you enable the seabios logs it should help track these things down. (Take the log from the working version and compare it to the log from the non-working version.) I suspect in the log would be messages from seabios/seavgabios hinting to the issue.
Just a random idea, maybe there is something wrong with windows failing to emulate stuff? (the vgafixup.py)
# It is also known that the Windows vgabios emulator has issues with # addressing negative offsets to the %esp register. That has been # worked around by not using the gcc parameter "-fomit-frame-pointer" # when compiling.
I would try to boot with non working vgabios something else, like grub2, and there I would do: insmod vbe videotest
And then probably one can use videotest to try to setup the mode. Or boot some payload with set gfxpayload.
Thanks, Rudolf