Forums before death by AOL, social media and spammers... "We can't have nice things"
|    alt.os.development    |    Operating system development chatter    |    4,255 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 3,245 of 4,255    |
|    mutazilah@gmail.com to wolfgang kern    |
|    Re: segmentation    |
|    02 Sep 22 10:20:37    |
      From: muta...@gmail.com              On Friday, September 2, 2022 at 6:53:49 PM UTC+8, wolfgang kern wrote:       > On 01/09/2022 14:48, muta...@gmail.com wrote:       >       > [...]       > > No, default status is no wraparound, but some       > > environments may wrap around anyway due to the fact       > > that there are 20 or fewer address lines.       > The KEY to wrap around at 1MB once was the A20 gate,       > it's now just an historical thing found only in museums.       > PCs don't even have an A20 gate anymore (==always ON).       >       > the HMA (0010_0000 aka FFFF:0010..) was very often used       > by DOS and friends, so they needed A20 ON.       >       > easy to make it wrap at 1MB with segment limits.       > but it will wrap only if the access is aligned while       > crossing the boundary with a multi-byte instruction       > end up in a Seg-Fault or with an GP-error if PM.       > __       > wolfgang              Sure. What I'm looking for is a set of rules       to follow, with the benefit of hindsight.              From memory, the PSP used when a .com file       is loaded, makes use of address wrap.              Rather than just say that .com files should       not be supported, given that someone       actually wants this feature, the rule simply       needs to say that you need to do a deliberate       bios call to switch this feature on.              If you don't, your code will work now, but when       the 80286 comes out with more than 20       address lines, your code will break.              I don't care if code breaks, I just want       sensible rules to follow.              If msdos 2.0 breaks because they didn't       do the required bios call, I don't care. I will just       email bill asking for a bug fix.              If he doesn't reply to my email, I don't       care. I will use pdos/86 instead.              And I think when I was looking at the PSP       I saw that an alternative solution would be       to store a little bit of code at the 1 MB location.              If existing code is using the beginning of       the HMA, then my response is to change       your code.              I am not trying to run every bit of       unsupported binary code in existence.              I am trying to run supported software with       source code where the vendor agrees       with the desire to clean up rm16.              Note that the above probably restricts the       number of vendors to 1, but I don't care about       that either.              It's a theoretical problem.              It isn't just the 8086, it's any       16:16 processor with an initial shift       of 4 bits, with intention to be flexible       in the future regarding shift bits.              Shift bits could be anything from 0 to 16,       because there is a mathematical possibility.       Actually, I think 0 should be ruled out as a       logical number in segmentation.              Basically this is a theoretical problem in       computer science I would like to solve or explore.              Actually constructing a time machine and hiring       ninjas to assassinate certain key engineers       and managers at Intel is beyond scope.       For now.              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca