From 5e42adafd63db11fa5dd7e726a16e802200060db Mon Sep 17 00:00:00 2001
From: sparky4 <sparky4@cock.li>
Date: Fri, 10 Nov 2017 11:38:28 -0600
Subject: [PATCH] paltest nolonger stack overflows

---
 src/lib/16_vlpal.c | 9 ++++++---
 src/lib/16_vlpal.h | 2 +-
 src/lib/doslib     | 2 +-
 src/paltest.c      | 4 ++--
 4 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/src/lib/16_vlpal.c b/src/lib/16_vlpal.c
index 57a97f0a..a6af2618 100755
--- a/src/lib/16_vlpal.c
+++ b/src/lib/16_vlpal.c
@@ -92,14 +92,17 @@ no... wait.... no wwww
 		//free(pal);
 }
 
+//what is *i, w, q, qq, z, aq, aa, pp, qp, and aqoffset...
+//pp is related to i
+
 void
-VL_palette(imgtestpal_t *bmp, byte *p, word *i, word qp, word aqoffset, global_game_variables_t *gv)
+VL_palette(imgtestpal_t *bmp, byte *p, word *i, word qp, word aqoffset, word *apal, global_game_variables_t *gv)
 {
 	//byte *p = bmp->palette;
 	word w=0;
 	word q=0;
 	word qq=0;
-	static word a[PAL_SIZE];	//palette array of change values!
+	word a[PAL_SIZE];	//palette array of change values!
 	word z=0, aq=0, aa=0, pp=0;
 
 	//modexWaitBorder();
@@ -253,7 +256,7 @@ printf("		  aq=%02d\n", aq);//
 printf("		  aa=%02d\n", aa);//
 #endif
 	//update the palette~
-	VL_palette(bmp, p, &pp, aq, aqoffset, gv);
+	VL_palette(bmp, p, &pp, aq, aqoffset, &a, gv);
 	(*i)=pp;
 
 	if(aq<aa){ pp=q; aq++; goto aqpee; }
diff --git a/src/lib/16_vlpal.h b/src/lib/16_vlpal.h
index aa6e1c3d..4184b057 100755
--- a/src/lib/16_vlpal.h
+++ b/src/lib/16_vlpal.h
@@ -14,7 +14,7 @@ typedef struct
 } imgtestpal_t;
 
 void VL_modexPalUpdate(bitmap_t *bmp, word *i, word qp, word aqpp, global_game_variables_t *gv);
-void VL_palette(imgtestpal_t *bmp, byte *p, word *i, word qp, word aqoffset, global_game_variables_t *gv);
+void VL_palette(imgtestpal_t *bmp, byte *p, word *i, word qp, word aqoffset, word *apal, global_game_variables_t *gv);
 
 
 #endif //__16_VLPAL_H__
diff --git a/src/lib/doslib b/src/lib/doslib
index 2b7b2ed6..6d2fa67a 160000
--- a/src/lib/doslib
+++ b/src/lib/doslib
@@ -1 +1 @@
-Subproject commit 2b7b2ed6b38382723b80be134cb5d22284de2eb4
+Subproject commit 6d2fa67ac4b68bc93ad2533fcc7baeb115197511
diff --git a/src/paltest.c b/src/paltest.c
index b353468e..f79ea35f 100755
--- a/src/paltest.c
+++ b/src/paltest.c
@@ -78,13 +78,13 @@ void main(int argc, char *argv[])
 	VL_LoadPalFile("data/16.pal", &gvar.video.palette, &gvar);
 #ifndef DONOTPALCHECK
 	bmp1.offset=(paloffset/3);
-//	VL_palette(&bmp1, &gvar.video.palette, &paloffset, 0, 0, &gvar);
+	VL_palette(&bmp1, &gvar.video.palette, &paloffset, 0, 0, NULL, &gvar);
 
 	//VL_LoadPalFilewithoffset("data/default.pal", &palette, paloffset);
 	modexLoadPalFile("data/16t.pal", &gvar.video.dpal);
 	//VLL_LoadPalFilewithoffset("data/16t.pal", &gvar.video.palette, paloffset, 8, &gvar);
 	bmp2.offset=(paloffset/3);
-//	VL_palette(&bmp2, &gvar.video.dpal, &paloffset, 0, 0, &gvar);
+	VL_palette(&bmp2, &gvar.video.dpal, &paloffset, 0, 0, NULL, &gvar);
 	//====modexLoadPalFile("data/default.pal", &pal2);
 #endif
 	VL_PaletteSync(&gvar);
-- 
2.39.5