]> 4ch.mooo.com Git - 16.git/blobdiff - src/lib/ems.c
i do not know how to allocate and move variables to EMS
[16.git] / src / lib / ems.c
index 9883f60c4c173acab50af9748d3729bca00923ff..52658e56ef689c237e8e8a8257e6414abec2ae1a 100644 (file)
@@ -287,3 +287,33 @@ int mem_emem(unsigned int *total, unsigned int *freeall)
 \r
  return( 1 );\r
 }\r
+
+void emmmove(int page, short *str, int n)\r
+     {\r
+          /*\r
+          Move 'n' bytes from conventional memory to the specified\r
+     expanded memory\r
+          page\r
+          */\r
+     \r
+          char far *ptr;\r
+     \r
+          ptr = pageframeEMS() + page * 16384;\r
+          while(n-- > 0)\r
+               *ptr++ = *str++;\r
+     }\r
+     \r
+     void emmget(int page, short *str, int n)\r
+     {\r
+          /*\r
+          Move 'n' bytes from the specified expanded memory page into\r
+     conventional\r
+          memory\r
+          */\r
+     \r
+          char far *ptr;\r
+     \r
+          ptr = pageframeEMS() + page * 16384;\r
+          while(n-- > 0)\r
+               *str++ = *ptr++;\r
+     }