New direct mapping support
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1134
This commit is contained in:
parent
344afaf577
commit
7c02953cfc
3 changed files with 11 additions and 4 deletions
|
@ -631,18 +631,24 @@ void MEM_UnmapPages(Bitu phys_page,Bitu pages) {
|
|||
}
|
||||
}
|
||||
|
||||
void MEM_MapPages(Bitu phys_page,MemHandle mem,Bitu mem_page,Bitu pages) {
|
||||
void MEM_MapPagesHandle(Bitu lin_page,MemHandle mem,Bitu mem_page,Bitu pages) {
|
||||
for (;mem_page;mem_page--) {
|
||||
if (mem<=0) E_Exit("MEM:MapPages:Fault in memory tables");
|
||||
mem=memory.entries[mem].next_handle;
|
||||
}
|
||||
for (;pages;pages--) {
|
||||
if (mem<=0) E_Exit("MEM:MapPages:Fault in memory tables");
|
||||
memory.dir.LinkPage(phys_page++,mem);
|
||||
memory.dir.LinkPage(lin_page++,mem);
|
||||
mem=memory.entries[mem].next_handle;
|
||||
}
|
||||
}
|
||||
|
||||
void MEM_MapPagesDirect(Bitu lin_page,Bitu phys_page,Bitu pages) {
|
||||
for (;pages;pages--) {
|
||||
memory.dir.LinkPage(lin_page++,phys_page++);
|
||||
}
|
||||
}
|
||||
|
||||
MemHandle MEM_NextHandle(MemHandle handle) {
|
||||
return memory.entries[handle].next_handle;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue