flat assembler
Message board for the users of flat assembler.
Index
> OS Construction > Hints about segmentation... |
Author |
|
sid123 11 Jan 2014, 16:15
Hi,
Been thinking about this lately, here's how I'll set up things for files more than 64K. 1. First Load only the first 64K (little less), at 0x3000:0x0000 2. Then Load the other 64K (little lesser) at 0x4000:0x0000 3. Copy this code to somewhere at the end of segment 0x3000, Code: mov ax, 0x4000 mov es, ax mov ds, ax call 0x4000:0x0000 Enjoy up to 128K! The loading part would be a little tougher since I would have to partially load the file into RAM. So is this possible? What did DOS use? Can someone explain me or point to a link that theoretically describes how the MZ Format functioned? What was the trick behind it? Thanks, sid123 _________________ "Those who can make you believe in absurdities can make you commit atrocities" -- Voltaire https://github.com/Benderx2/R3X XD |
|||
11 Jan 2014, 16:15 |
|
DOS386 11 Jan 2014, 16:52
> So is this possible?
If you insist, YES. > What does DOS use? Segmentation. > Can someone explain me or point to a link that theoretically describes > how the MZ Format functioned? What was the trick behind it? COM never has fixups, but MZ EXE has fixups if it has far calls. RTFF (on the top of the DOS subforum): http://board.flatassembler.net/topic.php?t=9473 http://board.flatassembler.net/topic.php?p=91767#91767 |
|||
11 Jan 2014, 16:52 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.