]> 4ch.mooo.com Git - 16.git/blobdiff - src/emmtest.c
16_pm worked on~
[16.git] / src / emmtest.c
index eefab9ea8cf7337f1a8740d6b0ba38818e92614e..e8bfe1f549254a0d9c32df7287073c8b8e6b001d 100755 (executable)
@@ -8,8 +8,8 @@
 \r
         minor mods by Alex Russell to simplify\r
 \r
-        Must use memory model with FAR code
-
+        Must use memory model with FAR code\r
+\r
                Open Watcom patch by sparky4~\r
 \r
  */\r
 #include <stdio.h>\r
 #include <stdlib.h>\r
 #include <mem.h>\r
-#include <conio.h>
+#include <conio.h>\r
+\r
+#include "src/lib/exmm/memory.h"\r
+#include "src/lib/types.h"\r
 \r
-#include "src/lib/exmm/memory.h"
-#include "src/lib/types.h"
-
 #define PEMMDATAPAGENUM        4\r
 \r
 void TransformData(char *pEmmData, unsigned int len)\r
@@ -37,30 +37,30 @@ void TransformData(char *pEmmData, unsigned int len)
 \r
 int main(int argc, char *argv[])\r
 {\r
-       byte *pEmmData;
-       int hEData;
-       unsigned long advi;
-       unsigned long i=0;
-       char huge *p =(char huge *)(GetEMMSeg0()*0x10000);
+       byte *pEmmData;\r
+       int hEData;\r
+       unsigned long advi;\r
+       unsigned long i=0;\r
+       char huge *p =(char huge *)(GetEMMSeg0()*0x10000);\r
 \r
        if(OpenEMM() != SUCCESS)\r
        {               // make sure we got EMM\r
                printf("EMM unavailable.\n");\r
                exit(1);\r
        }\r
-       else
+       else\r
        {\r
-               printf("Emm %x available\n", EMVer());
-               printf("EMS pages available are %lu\n", EMMCoreLeft());
-               //printf("EMM Hardware Information %lu\n", EMInfo());
+               printf("Emm %x available\n", EMVer());\r
+               printf("EMS pages available are %lu\n", EMMCoreLeft());\r
+               //printf("EMM Hardware Information %lu\n", EMInfo());\r
        }\r
-
-       printf("b4 EMS          pEmmData=%p\n", pEmmData);
-       //printf("b4 EMS        *pEmmData=%s\n", *pEmmData);
-       advi=EMMCoreLeft()*EMMPAGESIZE;
-       printf("advi=%lu\n", advi);
-
-       pEmmData = (byte *)EMMalloc(&hEData, EMMCoreLeft());  // get 6 * 16K bytes - 96K
+\r
+       printf("b4 EMS          pEmmData=%p\n", pEmmData);\r
+       //printf("b4 EMS        *pEmmData=%s\n", *pEmmData);\r
+       advi=EMMCoreLeft()*EMMPAGESIZE;\r
+       printf("advi=%lu\n", advi);\r
+\r
+       pEmmData = (byte *)EMMalloc(&hEData, EMMCoreLeft());  // get 6 * 16K bytes - 96K\r
        if(pEmmData == NULL/* ||  pEmmData0 == NULL*/)\r
        {\r
                printf("Not enough EMM or out of handles.\n");\r
@@ -68,73 +68,73 @@ int main(int argc, char *argv[])
        }\r
        else\r
                printf("EMM allocate OK\n");\r
-
-       printf("EMS pages available are %lu\n", EMMCoreLeft());
-
-
-
+\r
+       printf("EMS pages available are %lu\n", EMMCoreLeft());\r
+\r
+\r
+\r
        printf("Map 1st 4 pages\n");\r
        MapEMM(hEData, 0, PEMMDATAPAGENUM);   // load 1st 4 pages into page frame: 0-3\r
-       //memset(pEmmData, 0x0e, 64000u);
-//0000 printf("(advi*EMMPAGESIZE)=%lu\n", advi);
-       memset(pEmmData, atoi(argv[1]), 0xffff);//sizeof(atoi(argv[1])));//((EMMCoreLeft())*EMMPAGESIZE));
-//qqqq memset(pEmmData+0x10000, atoi(argv[1]), 0xffff);//sizeof(atoi(argv[1])));//((EMMCoreLeft())*EMMPAGESIZE));
-//---- UnmapEMM(hEData, 0, 4);          // not absolutely necessary
-       printf("%p= %c %c %c %c %c %c %c %c\n", pEmmData,
-*pEmmData, *(pEmmData+1), *(pEmmData+2), *(pEmmData+3), *(pEmmData+4), *(pEmmData+5), *(pEmmData+6), *(pEmmData+7));
+       //memset(pEmmData, 0x0e, 64000u);\r
+//0000 printf("(advi*EMMPAGESIZE)=%lu\n", advi);\r
+       memset(pEmmData, atoi(argv[1]), 0xffff);//sizeof(atoi(argv[1])));//((EMMCoreLeft())*EMMPAGESIZE));\r
+//qqqq memset(pEmmData+0x10000, atoi(argv[1]), 0xffff);//sizeof(atoi(argv[1])));//((EMMCoreLeft())*EMMPAGESIZE));\r
+//---- UnmapEMM(hEData, 0, 4);          // not absolutely necessary\r
+       printf("%p= %c %c %c %c %c %c %c %c\n", pEmmData,\r
+*pEmmData, *(pEmmData+1), *(pEmmData+2), *(pEmmData+3), *(pEmmData+4), *(pEmmData+5), *(pEmmData+6), *(pEmmData+7));\r
 \r
        /*printf("Map next 2 pages\n");\r
        MapEMM(hEData, 4, 2);            // map last 2 pages: 4-5\r
-       memset(pEmmData, 0x04, 32768u);
-//     memset(pEmmData, atoi(argv[0]), 32768u);
-       printf("*pEmmData=%c\n", *pEmmData);
-       printf(" pEmmData=%p\n", pEmmData);*/
+       memset(pEmmData, 0x04, 32768u);\r
+//     memset(pEmmData, atoi(argv[0]), 32768u);\r
+       printf("*pEmmData=%c\n", *pEmmData);\r
+       printf(" pEmmData=%p\n", pEmmData);*/\r
 \r
    /*MapEMM(hEData, 0, 4);\r
    // do some stuff with the first 64K of file data.\r
    printf("Transform data\n");\r
-   TransformData(pEmmData, 64000UL);
+   TransformData(pEmmData, 64000UL);\r
        printf("*pEmmData=%lu\n", *pEmmData);\r
    MapEMM(hEData, 4, 2);  // only unmaps 1st two pages of prior 64k mapping\r
    // do stuff with remaining 32K of data\r
-   TransformData(pEmmData, 32768UL);
-       printf("*pEmmData=%lu\n", *pEmmData);*/
-       if(atoi(argv[2]))
-       {
-               while(p<(char huge *)((GetEMMSeg0()*0x10000)+0xffff) && !kbhit())
-               {
-                       if((i%16)==0) printf("%p= %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c\n", p,
-*p, *(p+1), *(p+2), *(p+3), *(p+4), *(p+5), *(p+6), *(p+7),
-*(p+8), *(p+9), *(p+10), *(p+11), *(p+12), *(p+13), *(p+14), *(p+15));
-       //              (*p)++;
-                       i++;
-                       p++;
-               }
-       }
-       /*if(atoi(argv[3]))
-               p =(char huge *)(GetEMMSeg0()*0x20000);
-               while(p<(char huge *)((GetEMMSeg0()*0x20000)+0xffff) && !kbhit())
-               {
-                       if((i%16)==0) printf("%p= %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c\n", p,
-*p, *(p+1), *(p+2), *(p+3), *(p+4), *(p+5), *(p+6), *(p+7),
-*(p+8), *(p+9), *(p+10), *(p+11), *(p+12), *(p+13), *(p+14), *(p+15));
-       //              (*p)++;
-                       i++;
-                       p++;
-               }
-               //free(p);
-       }*/
-       if(!atoi(argv[3]))
+   TransformData(pEmmData, 32768UL);\r
+       printf("*pEmmData=%lu\n", *pEmmData);*/\r
+       if(atoi(argv[2]))\r
        {\r
-               UnmapEMM(hEData, 0, PEMMDATAPAGENUM);  // should unmap before freeing
+               while(p<(char huge *)((GetEMMSeg0()*0x10000)+0xffff) && !kbhit())\r
+               {\r
+                       if((i%16)==0) printf("%p= %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c\n", p,\r
+*p, *(p+1), *(p+2), *(p+3), *(p+4), *(p+5), *(p+6), *(p+7),\r
+*(p+8), *(p+9), *(p+10), *(p+11), *(p+12), *(p+13), *(p+14), *(p+15));\r
+       //              (*p)++;\r
+                       i++;\r
+                       p++;\r
+               }\r
+       }\r
+       /*if(atoi(argv[3]))\r
+               p =(char huge *)(GetEMMSeg0()*0x20000);\r
+               while(p<(char huge *)((GetEMMSeg0()*0x20000)+0xffff) && !kbhit())\r
+               {\r
+                       if((i%16)==0) printf("%p= %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c %c\n", p,\r
+*p, *(p+1), *(p+2), *(p+3), *(p+4), *(p+5), *(p+6), *(p+7),\r
+*(p+8), *(p+9), *(p+10), *(p+11), *(p+12), *(p+13), *(p+14), *(p+15));\r
+       //              (*p)++;\r
+                       i++;\r
+                       p++;\r
+               }\r
+               //free(p);\r
+       }*/\r
+       if(!atoi(argv[3]))\r
+       {\r
+               UnmapEMM(hEData, 0, PEMMDATAPAGENUM);  // should unmap before freeing\r
                //printf("after EMS     *pEmmData=%c\n", *pEmmData);\r
                printf("Close emm\n");\r
                EMMFree(hEData);     // finished with the file data\r
-               CloseEMM();
-       }
-       printf("after EMS       pEmmData=%p\n", pEmmData);
-       printf("EMS pages available are %lu\n", EMMCoreLeft());
-       printf("GetEMMSeg0=%p\n", GetEMMSeg0()*0x10000);
-       //printf("EMMPAGESIZE=%d\n", EMMPAGESIZE);
-       return 0;
+               CloseEMM();\r
+       }\r
+       printf("after EMS       pEmmData=%p\n", pEmmData);\r
+       printf("EMS pages available are %lu\n", EMMCoreLeft());\r
+       printf("GetEMMSeg0=%p\n", GetEMMSeg0()*0x10000);\r
+       //printf("EMMPAGESIZE=%d\n", EMMPAGESIZE);\r
+       return 0;\r
 }\r