Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

1MB memory address space access and linker scriptings for real mode programs

Chris Hoy
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
May 15, 2023

Today I was investigating the basics for real mode programs and sub-systems. I'm prototyping a build of a minimal graphical BIOS on int 10h till I realized that my object files only address until 0xFFFF (64 kb). Now that isn't including any of the boot sequence that leaves only a small fraction of the 1MB of use so I'm trying to modify the settings or configurations for more regular use.

Here is where I was looking into the linker scriptings. As is I had a simple mapping method that graphs a full screen and I was going to add a second map to save changes

The algebra is simple for this (int 10 mode 0x13 => 320x200 = 40x25x(8)(8)=2560(25) )
When I increment this instruction past row 5 of the settings

times 2560*6 db 0
.stub: equ $-Map2

I get an LMA overlap section from my ld script.So I was trying to research ld's scripting language but the online references are fewer than I had hoped. Currently I was trying to add a

INCLUDE linkcmds.memory
into the link.ld for the new memory command however I now get a "relocation truncated to fit R_386_16 against `.data

0 answers

Suggest an answer

Log in or Sign up to answer
Site Admin
AUG Leaders

Atlassian Community Events