- char *pEmmData;\r
- int hEData;\r
-\r
- if ( OpenEMM() != SUCCESS )\r
- { // make sure we got EMM\r
- printf("EMM unavailable.\n");\r
- exit(1);\r
- }\r
- else\r
- printf("Emm %x available\n", EMVer());
- printf("EMS pages available are %lu\n", EMMCoreLeft());\r
-\r
- pEmmData = (char *)EMMalloc(&hEData, 6); // get 6 * 16K bytes - 96K\r
- if ( pEmmData == NULL )\r
- {\r
- printf("Not enough EMM or out of handles.\n");\r
- exit(2);\r
- }\r
- else\r
- printf("emm alloced OK\n");\r
-\r
-\r
- printf("Map 1st 4 pages\n");\r
- MapEMM(hEData, 0, 4); // load 1st 4 pages into page frame: 0-3\r
-\r
- memset(pEmmData, 0x0e, 64000u);\r
- UnmapEMM(hEData, 0, 4); // not absolutely necessary\r
- \r
- printf("Map next 2 pages\n");\r
- MapEMM(hEData, 4, 2); // map last 2 pages: 4-5\r
- memset(pEmmData, 0x0e, 32768u);\r
-\r
- MapEMM(hEData, 0, 4);\r
+ byte *pEmmData;
+ int hEData;
+ unsigned long advi;
+ unsigned long i=0;
+ char huge *p =(char huge *)(GetEMMSeg0()*0x10000);
+\r
+ if(OpenEMM() != SUCCESS)\r
+ { // make sure we got EMM\r
+ printf("EMM unavailable.\n");\r
+ exit(1);\r
+ }\r
+ else
+ {\r
+ printf("Emm %x available\n", EMVer());
+ printf("EMS pages available are %lu\n", EMMCoreLeft());
+ //printf("EMM Hardware Information %lu\n", EMInfo());
+ }\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
+ if(pEmmData == NULL/* || pEmmData0 == NULL*/)\r
+ {\r
+ printf("Not enough EMM or out of handles.\n");\r
+ exit(2);\r
+ }\r
+ else\r
+ printf("EMM allocate OK\n");\r
+
+ printf("EMS pages available are %lu\n", EMMCoreLeft());
+
+
+
+ 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));
+\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);*/
+\r
+ /*MapEMM(hEData, 0, 4);\r