]> 4ch.mooo.com Git - 16.git/blobdiff - src/exmmtest.c
16_ca needs huge amounts of work and I should remember what needs to be done soon...
[16.git] / src / exmmtest.c
index fe5f0ad24a980c508e985104d324ad79a9a0efa7..ea73aa996358518a0b7b5e279202d17271ea8579 100755 (executable)
 //#define EXMMVERBOSE__\r
 //     #define PRINTBBDUMP\r
 #define BUFFDUMP\r
+\r
+#ifdef __BORLANDC__\r
+#define NOVID\r
+#endif\r
+#ifdef __WATCOMC__\r
 #define NOVID\r
+#endif\r
 \r
 \r
 #define KEYP IN_Shutdown(&gvar); printf("\n\npress any key to continue!\n"); getch(); IN_Startup(&gvar);\r
 \r
 #define BBUFNAME gvar.mm.bufferseg//bigbuffer\r
 //#define INITBBUF static memptr BBUFNAME;\r
-#define BBUFPTR        MEMPTR BBUFNAME\r
+#define BBUFPTR        MEMPTRCONV BBUFNAME\r
 \r
 #ifdef __BORLANDC__\r
 #define BBUF           (memptr *)BBUFPTR\r
 #endif\r
 \r
 ////////////////////////////////////////////////////////////////////////////\r
+//#ifdef NOVID\r
 #ifdef __BORLANDC__\r
+void VL_Startup (global_game_variables_t *gvar){ gvar=gvar; }\r
+void VL_Shutdown (global_game_variables_t *gvar){ gvar=gvar; }\r
 void VGAmodeX(sword vq, boolean cmem, global_game_variables_t *gv)\r
 {\r
        printf("VGAmodeX dummy:\n       %Fp     %Fp     %Fp\n", &vq, &cmem, gv);\r
 }\r
+\r
+word modexPalOverscan(word col)\r
+{\r
+       //modexWaitBorder();\r
+       outp(PAL_WRITE_REG, 0);  /* start at the beginning of palette */\r
+       outp(PAL_DATA_REG, col);\r
+       return col;\r
+}\r
+void   TL_VidInit(global_game_variables_t *gvar)\r
+{\r
+       gvar->video.old_mode = 3;\r
+}\r
 #endif\r
 \r
 //printf("*    %Fp\t", *BBUF);\r
@@ -109,18 +130,6 @@ void segatesuto()
 }\r
 #endif\r
 \r
-#ifdef __16_PM__\r
-#ifdef __DEBUG_PM__\r
-       dbg_debugpm=1;  //debug pm\r
-#endif\r
-#endif\r
-#ifdef __DEBUG_CA__\r
-       dbg_debugca=1;\r
-#endif\r
-#ifdef __DEBUG_MM__\r
-       dbg_debugmm=1;\r
-#endif\r
-\r
 //===========================================================================//\r
 \r
 //=======================================//\r
@@ -132,10 +141,6 @@ void
 main(int argc, char *argv[])\r
 {\r
        byte w;\r
-                                                               #ifndef NOVID\r
-       boolean                 done;\r
-       ScanCode                scan;\r
-                                                               #endif\r
        static global_game_variables_t gvar;\r
                                                                #ifdef INITBBUF\r
        INITBBUF\r
@@ -155,6 +160,17 @@ main(int argc, char *argv[])
                                                                #ifdef PRINTBBDUMP\r
                                                                //0000PRINTBB; KEYP\r
                                                                #endif\r
+#ifdef __16_PM__\r
+#ifdef __DEBUG_PM__\r
+       dbg_debugpm=1;  //debug pm\r
+#endif\r
+#endif\r
+#ifdef __DEBUG_CA__\r
+       dbg_debugca=1;\r
+#endif\r
+#ifdef __DEBUG_MM__\r
+       dbg_debugmm=1;\r
+#endif\r
 \r
        if(argv[1]){ strcpy(bakapee1, argv[1]);//bakapee1[] = *argv[1];\r
        if(argv[2]) strcpy(bakapee2, argv[2]); }//bakapee2[] = argv[2]; }\r
@@ -172,12 +188,10 @@ main(int argc, char *argv[])
                                                                #ifndef NOVID\r
        Startup16(&gvar);\r
        // save the palette\r
-                                                               #ifdef __WATCOMC__\r
        modexPalSave(&gvar.video.dpal); modexFadeOff(4, &gvar.video.dpal); //modexPalBlack();\r
-                                                               #endif\r
                                                                #else //NOVID\r
-       //printf("main()=%Fp    start MM\n", *argv[0]);\r
-       MM_Startup(&gvar);\r
+       StartupCAMMPM(&gvar);\r
+/*     MM_Startup(&gvar);\r
                                                                #ifdef __16_PM__\r
                                                                #ifdef __DEBUG_PM__\r
                                                                        if(dbg_debugpm>0)\r
@@ -189,9 +203,8 @@ main(int argc, char *argv[])
                                                                        }\r
                                                                #endif //__DEBUG_PM__\r
                                                                #endif //__16_PM__\r
+       CA_Startup(&gvar);*/\r
                                                                #endif //elsed NOVID\r
-\r
-       CA_Startup(&gvar);\r
                                                                #ifdef PRINTBBDUMP\r
                                                                //0000\r
 PRINTBB; KEYP\r
@@ -245,10 +258,14 @@ PRINTBB; KEYP
 \r
 #ifdef __WATCOMC__\r
 #ifndef NOVID\r
-       VGAmodeX(1, 0, &gvar);\r
+       VGAmodeX(8, 0, &gvar);\r
 //     modexPalUpdate0(&gvar.video.palette);\r
 //     ShapeTest_(&gvar);\r
-\r
+       MM_ShowMemory(&gvar);\r
+#if 0\r
+       {\r
+       boolean                 done;\r
+       ScanCode                scan;\r
        for (done = false;!done;)\r
        {\r
                while (!(scan = gvar.in.inst->LastScan))\r
@@ -263,7 +280,7 @@ PRINTBB; KEYP
 //                     break;\r
 //#ifdef __WATCOMC__\r
                        case sc_O:\r
-                               modexPalUpdate0(&gvar.video.palette); modexpdump(&gvar.video.page);\r
+                               VL_modexPalScramble(&gvar.video.palette); modexpdump(&gvar.video.page);\r
                        break;\r
                        case sc_P:\r
                                modexpdump(&gvar.video.page[0]);\r
@@ -278,10 +295,12 @@ PRINTBB; KEYP
                        break;\r
                }\r
        }\r
+}\r
+#endif\r
        VGAmodeX(0, 0, &gvar);\r
 #endif\r
 #endif\r
-//     MM_ShowMemory(&gvar);\r
+       MM_ShowMemory(&gvar);\r
        DebugMemory_(&gvar, 1);\r
        MM_DumpData(&gvar);\r
        MM_Report_(&gvar);\r
@@ -291,14 +310,15 @@ PRINTBB; KEYP
                                                                #ifndef NOVID\r
        Shutdown16(&gvar);\r
                                                                #else //novid\r
-                                                               #ifdef __16_PM__\r
+       ShutdownCAMMPM(&gvar);\r
+/*                                                             #ifdef __16_PM__\r
                                                                #ifdef __DEBUG_PM__\r
                                                                        if(dbg_debugpm>0)\r
                                                                #endif //__DEBUG_PM__\r
        PM_Shutdown(&gvar);\r
                                                                #endif //__16_PM__\r
        CA_Shutdown(&gvar);\r
-       MM_Shutdown(&gvar);\r
+       MM_Shutdown(&gvar);*/\r
                                                                #endif //NOVID\r
        IN_Shutdown(&gvar);\r
        printf("========================================\n");\r
@@ -358,6 +378,8 @@ PRINTBB; KEYP
 #endif\r
        printf("\n");\r
 #endif\r
+//     printf("curr_mode=%u\n", gvar.video.curr_mode);\r
+//     VL_PrintmodexmemInfo(&gvar.video);\r
        //printf("old_mode=%u   VL_Started=%u", gvar.video.old_mode, gvar.video.VL_Started);\r
        //printf("based core left:                      %lu\n", (dword)_basedcoreleft());\r
        //printf("huge core left:                       %lu\n", (dword)_hugecoreleft());\r