X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2F16_dbg.c;h=854615b0fb3b02c3db97325c873f09a00518da30;hb=fd22359b3cf8abccf814365b79906b15a98c8e4e;hp=321388c91b4270e8ef3113ec61186abb63d44a94;hpb=5d9205e1e89bb330c1930f0260039edb846091eb;p=16.git
diff --git a/src/lib/16_dbg.c b/src/lib/16_dbg.c
index 321388c9..854615b0 100755
--- a/src/lib/16_dbg.c
+++ b/src/lib/16_dbg.c
@@ -1,3 +1,25 @@
+/* Project 16 Source Code~
+ * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover
+ *
+ * This file is part of Project 16.
+ *
+ * Project 16 is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Project 16 is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see , or
+ * write to the Free Software Foundation, Inc., 51 Franklin Street,
+ * Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ */
+
#include "src/lib/16_dbg.h"
#ifdef __DEBUG__
@@ -11,7 +33,7 @@ boolean dbg_debugpm=0;
boolean dbg_debugca=0;
#endif
#ifdef __DEBUG_InputMgr__
-boolean dbg_testkeyin=0,dbg_testcontrolnoisy=0,dbg_nointest=0;
+boolean dbg_testkeyin=0,dbg_testcontrolnoisy=0,dbg_nointest=0,dbg_joymousedelta=0;
#endif
#ifdef __DEBUG_MAP__
boolean dbg_maptext=0;
@@ -235,3 +257,157 @@ static char buf[10];
//SD_StopDigitized();
}
#pragma warn +pia
+
+#ifdef __WATCOMC__
+#ifdef __DEBUG_VL__
+
+//===========================================================================
+
+/*
+================
+=
+= ShowPalVarSync
+=
+================
+*/
+
+//#define SHOWPALVARIMODQUAD ((spv.i)%QUADWH)
+#define SHOWPALVARIMOD ((spv.i)%TILEWH)
+#define SHOWPALVARIDIV ((spv.i)/TILEWH)
+#define SHOWPALVARIMODIFCOND if((!SHOWPALVARIMOD) && spv.i)
+#define SHOWPALVARIDIVIFCOND if((!SHOWPALVARIDIV) && spv.i)
+//video.page[0], result.palx+TILEWH, result.paly+TILEWH, result.mult, result.mult, result.i);
+ return result;
+}
+
+/*
+================
+=
+= ShowPalVal
+=
+================
+*/
+
+void ShowPalVal (global_game_variables_t *gvar)
+{
+ boolean done ,err;
+ ScanCode scan;
+ spv_t spv;
+ word ccolor = 3, xpos = gvar->video.page[0].dx, ypos = gvar->video.page[0].dy;
+
+ spv.mult=(QUADWH);
+ spv.palq=(spv.mult)*TILEWH;
+ spv.i = 0;
+
+// IN_UserInput(1, gvar);
+ modexpdump(0, gvar);
+
+ for (spv.oi = 1,done = false;!done;)
+ {
+ SHOWPALVARIMODIFCOND
+ {
+ if(err) printf("SHOWPALVARIMODIFCOND\n");
+ if(spv.i==SHOWPALVARPALSIZELIMIT) spv.paly=(TILEWH*8)+spv.mult*SHOWPALVARIDIV;
+ spv.palx=(TILEWH*12);
+ }else spv.palx=(TILEWH*12)+spv.mult*SHOWPALVARIMOD;
+ if(spv.ivideo.page[0], spv.palx+TILEWH, spv.paly+TILEWH, spv.mult, spv.mult, 5);
+ modexClearRegion(&gvar->video.page[0], spv.palx+TILEWH+1, spv.paly+TILEWH+1, spv.mult-2, spv.mult-2, spv.i);
+ spv.oi = spv.i;
+ }
+
+#define SHOWPALVARPRINT modexprint(&(gvar->video.page[0]), xpos, ypos, 1, 1, ccolor, 8, gvar->video.VL_Started, global_temp_status_text); ypos+=8;
+ sprintf(global_temp_status_text, "%03u", spv.i); SHOWPALVARPRINT
+ sprintf(global_temp_status_text, "r %03u", gvar->video.palette[(spv.i*3)+0]/*>>2*/); SHOWPALVARPRINT
+ sprintf(global_temp_status_text, "g %03u", gvar->video.palette[(spv.i*3)+1]/*>>2*/); SHOWPALVARPRINT
+ sprintf(global_temp_status_text, "b %03u", gvar->video.palette[(spv.i*3)+2]/*>>2*/); SHOWPALVARPRINT
+ xpos = gvar->video.page[0].dx; ypos = gvar->video.page[0].dy;
+
+ while (!(scan = gvar->in.inst->LastScan))
+ {}
+
+ IN_ClearKey(scan);
+ switch (scan)
+ {
+ case sc_LeftArrow:
+ if (spv.i > 0)
+ {
+ spv.i--;
+ }
+ else
+ {
+ spv.palx=gvar->video.page[0].sw-spv.mult;
+ spv.paly=gvar->video.page[0].sh-spv.mult;
+ spv.i = SHOWPALVARPALSIZELIMIT;
+ }
+ break;
+ case sc_RightArrow:
+ if (spv.i < SHOWPALVARPALSIZELIMIT)
+ {
+ spv.i++;
+ }
+ else
+ {
+ spv.palx=TILEWH*12;
+ spv.paly=TILEWH*8;
+ spv.i = 0;
+ }
+ break;
+ case sc_UpArrow:
+ if (spv.i > 0)
+ {
+ spv.i-=16;
+ }
+ else
+ {
+ spv.palx=gvar->video.page[0].sw-spv.mult;
+ spv.paly=gvar->video.page[0].sh-spv.mult;
+ spv.i = SHOWPALVARPALSIZELIMIT;
+ }
+ break;
+ case sc_DownArrow:
+ if (spv.i < SHOWPALVARPALSIZELIMIT)
+ {
+ spv.i+=16;
+ }
+ else
+ {
+ spv.palx=TILEWH*12;
+ spv.paly=TILEWH*8;
+ spv.i = 0;
+ }
+ break;
+ case sc_W: // Walls
+ spv.i = 0;
+ break;
+ case sc_Escape:
+ done = true;
+ break;
+ }
+ }
+// IN_UserInput(1, gvar);
+}
+#endif //debug vl
+#endif //watcomc