schuylermartin45 / seegol

Master's Thesis Project: Shoyler's Extremely Experimental Graphical Operating Library (SeeGOL)
https://shoyler.com/html/projects.html
MIT License
7 stars 1 forks source link

Better Memory Management: The search for more money #7

Open schuylermartin45 opened 7 years ago

schuylermartin45 commented 7 years ago

From what I can gather and what I have seen online, gcc will not use the segment registers in 16 bit mode. This means that I am limited to 64kb of RAM and after a the floppy image reaches a certain size (somewhere between 27-32kb) gcc will fail to link the OS.

Leveraging the segment registers and some clever x86, it should be possible to access 1mb of RAM (everything below the famed A20 gate). It might be possible, at the very least, to store large data arrays (SeeFont, images, etc) at a different memory segment, modifying the segment registers only when necessary.

schuylermartin45 commented 7 years ago

Commit 7f5d1c3a916cfcec339b5d9c9e7be11375c542f2 adds new gcc flags to optimize the project for size. This saves an additional ~4kb