]> 4ch.mooo.com Git - 16.git/commitdiff
ok!!
authorsparky4 <sparky4@cock.li>
Thu, 30 Jul 2015 21:09:59 +0000 (16:09 -0500)
committersparky4 <sparky4@cock.li>
Thu, 30 Jul 2015 21:09:59 +0000 (16:09 -0500)
modified:   16/segm/pee.c
modified:   sega.exe
modified:   src/sega.c

16/segm/pee.c
sega.exe
src/sega.c

index 6532eed7a7ca2e901ea1eaa3106ea7a87e377fbe..d23ef07f934f9a078f13297e326fb1aa1cbc3cf2 100644 (file)
        Segment experiment!
 */
 #include <stdio.h>
+#include <malloc.h>
 #ifdef __WATCOMC__
-//typedef void __based(__self) * memptr;
-typedef __segment memptr;
+typedef void __based(__self) * memptr;
+//typedef __segment memptr;
 #endif
 #ifdef __BORLANDC__
 typedef void _seg * memptr;
 #endif
 
 void
-main(/*int argc, char *argv[]*/)
+main(int argc, char *argv[])
 {
+       __segment segu;
        unsigned bee=0;
+#ifdef __WATCOMC__
+       void __based(segu)* pee;
+#endif
+#ifdef __BORLANDC__
        memptr pee;
+#endif
+       argc=argc;
        printf("local variable bee=             %Fp\n", &bee);
        printf("local variable bee=             %p\n", &bee);
        printf("far pointer value of pee=       %Fp\n", pee);
index b0ad2b8b8434207d9a75b69776017d2d5515e08f..f71de577db4e1ed077142e50d01f126460fa06e4 100644 (file)
Binary files a/sega.exe and b/sega.exe differ
index 27c74b2d6a135d3ab7a6bb9fe4b8bf501c59b542..3a271cd2a94be177795a3fc0e4057fe7c38620f4 100644 (file)
@@ -2,18 +2,30 @@
 #include <stdlib.h>\r
 #include <malloc.h>\r
 \r
-struct list {\r
-    struct list __based(__self) *next;\r
-    int         value;\r
+struct list {
+#ifdef __WATCOMC__\r
+       struct list __based(__self) *next;
+#endif
+#ifdef __BORLANDC__
+       struct list _seg *next;
+#endif\r
+       int         value;\r
 };\r
 \r
 void main(int argc, char *argv[])\r
-  {\r
-    int         i;\r
-    __segment   segu;
+{\r
+       int         i;
+#ifdef __WATCOMC__\r
+       __segment   segu;
        void __based(__self) *pee;\r
-    struct list __based(segu) *head;\r
-    struct list __based(segu) *p;\r
+       struct list __based(segu) *head;\r
+       struct list __based(segu) *p;
+#endif
+#ifdef __BORLANDC__
+       void _seg *pee;\r
+       struct list _seg *head;\r
+       struct list _seg *p;
+#endif\r
 \r
     /* allocate based heap */\r
     segu = _bheapseg( 65536 );\r