]> 4ch.mooo.com Git - 16.git/blobdiff - 16/dos_gfx.cpp
modified: 16/DOS_GFX.EXE
[16.git] / 16 / dos_gfx.cpp
index 52e259db4066d21dfad93766a8770d85208b968c..cbfa2d61702ef04eaa5aeb1dee463d8cdd7a205a 100644 (file)
@@ -19,7 +19,7 @@ byte *vga = (byte *) MK_FP(0xA000, 0);
  * to be included.\r
  */\r
 #define TESTING\r
-//#define TILE\r
+#define TILE\r
 \r
 /////////////////////////////////////////////////////////////////////////////\r
 //                                                                         //\r
@@ -245,7 +245,12 @@ short ding(int q){
                                        #endif\r
                                } \r
 \r
-                               if(q==2) mxPutPixel(rand()%VW, rand()%(VH), 0);\r
+                               if(q==2)
+                               #ifdef TILE
+                                       mxFillBox((rand()*TILEWH)%VW, (rand()*TILEWH)%(VH), TILEWH, TILEWH, 0, OP_SET);
+                               #else
+                                       mxPutPixel(rand()%VW, rand()%(VH), 0);
+                               #endif\r
                                if(q==16) mxPutPixel(rand()%VW, rand()%(VH), 0);\r
                                if(q==2||q==4||q==16){ bakax = rand()%3; bakay = rand()%3; }  //random 3 switch\r
                                gq++;\r
@@ -272,7 +277,7 @@ int main(void)
                int ch=0x0;\r
                // main variables\r
                d=4; // switch variable\r
-               key=4; // default screensaver number\r
+               key=2; // default screensaver number\r
                xpos=TILEWH*2;\r
                ypos=TILEWH*2;\r
                xdir=1;\r
@@ -299,7 +304,7 @@ int main(void)
                }\r
                //end of screen savers\r
                //doTest();\r
-               for (int x = 0; x < VW; ++x)\r
+/*             for (int x = 0; x < VW; ++x)\r
                        {\r
                                mxPutPixel(x, 0, 15);\r
                                mxPutPixel(x, SH-1, 15);\r
@@ -320,11 +325,11 @@ int main(void)
                                mxPutPixel(VW-1, y, 15);\r
                        }\r
                        \r
-                       getch();\r
+                       getch();*/\r
                        //text box\r
                        mxSetTextColor(10, OP_TRANS); //set font\r
-                       mxBitBlt(xpos, ypos+(TILEWH*12), 320, TILEWH*BUFFMX, 0, BS); //copy background\r
-                       mxFillBox(xpos, ypos+(TILEWH*12), 320, TILEWH*BUFFMX, 0, OP_SET); // background for text box\r
+                       mxBitBlt(xpos, ypos+(TILEWH*12), SW, TILEWH*BUFFMX, 0, BS); //copy background\r
+                       mxFillBox(xpos, ypos+(TILEWH*12), SW, TILEWH*BUFFMX, 0, OP_SET); // background for text box\r
                        //+(QUADWH*6)\r
                        mxOutText(xpos+1, ypos+SH-48, "========================================");\r
                        mxOutText(xpos+1, ypos+SH-40, "|    |Chikyuu:$line1");\r
@@ -334,7 +339,7 @@ int main(void)
                        mxOutText(xpos+1, ypos+SH-8,  "========================================");\r
                        mxFillBox(xpos+QUADWH, ypos+QUADWH+(TILEWH*12), TILEWH*2, TILEWH*2, 9, OP_SET); //portriat~\r
                        getch();\r
-                       mxBitBlt(0, BS, 320, TILEWH*BUFFMX, xpos, ypos+(TILEWH*12)); //copy background\r
+                       mxBitBlt(0, BS, SW, TILEWH*BUFFMX, xpos, ypos+(TILEWH*12)); //copy background\r
                        //mxBitBlt(0, (TILEWH*12)+1, 320, TILEWH*3, 0, 0);\r
                        getch();\r
                while(!kbhit()){\r
@@ -345,17 +350,21 @@ int main(void)
                        //for(int i=0;i<TILEWH;i++){\r
                                \r
                                ding(key);\r
-                               mxPan(xpos,ypos);\r
+                               mxPan(xpos,ypos);
+                               mxBitBlt(xpos, ypos, SW, SH, 0, SH);\r
                                //for(short o = 0; o<TILEWH; o++){\r
                                        xpos+=xdir;\r
                                        ypos+=ydir;\r
                                        //if(ypos==1 || (ypos==(BH-SH-1)))delay(500);
                                        //if((xpos>(VW-SW-1)) || (xpos<1))delay(500);\r
-                                       mxWaitRetrace();\r
+                                       //mxWaitRetrace();
+                                       mxPan(TILEWH*2,TILEWH*2);
+                                       mxBitBlt(0, SH, SW, SH, xpos, ypos);\r
                                //}\r
                                if( (xpos>(VW-SW-1))  || (xpos<1)){xdir=-xdir;}\r
                                if( (ypos>(BH-SH-1)) || (ypos<1)){ydir=-ydir;} // { Hit a boundry, change\r
-                       //    direction! }\r
+                       //    direction! }
+                       \r
                        }\r
                        ch=getch();\r
                        if(ch==0x71)break; // 'q'\r