muta...@gmail.com
2022-04-22 12:16:34 UTC
With recent (approx a year ago) enhancements to
SubC, the text segment exceeded 64k, and since
SubC only supports small memory model for DOS,
that meant that DOS stopped being self-hosting.
The solution is to move to medium/large, but I'm
wondering whether anything other than the 8086
supported more than 64k of code while still using
16-bit registers.
I know some things like the Commodore 128
allow memory to be banked out to access more
than 64k, but correct me if I'm wrong, but I assume
that means getting the C programmer to add
bank-switching code to their program, instead of it
being transparent like it is on the 8086 (the compiler
takes care of generating segment loads).
And I know that "overlays" exist, but once again it is
something the programmer needs to be involved in
(I think - I don't know much about overlays).
For a non-kludged solution, is the 8086 all there is?
Thanks. Paul.
SubC, the text segment exceeded 64k, and since
SubC only supports small memory model for DOS,
that meant that DOS stopped being self-hosting.
The solution is to move to medium/large, but I'm
wondering whether anything other than the 8086
supported more than 64k of code while still using
16-bit registers.
I know some things like the Commodore 128
allow memory to be banked out to access more
than 64k, but correct me if I'm wrong, but I assume
that means getting the C programmer to add
bank-switching code to their program, instead of it
being transparent like it is on the 8086 (the compiler
takes care of generating segment loads).
And I know that "overlays" exist, but once again it is
something the programmer needs to be involved in
(I think - I don't know much about overlays).
For a non-kludged solution, is the 8086 all there is?
Thanks. Paul.