Blob Blame History Raw
diff -up keen/src/misc.c~ keen/src/misc.c
--- keen/src/misc.c~	2008-04-03 12:01:37.000000000 +0200
+++ keen/src/misc.c	2008-04-03 12:01:37.000000000 +0200
@@ -7,6 +7,9 @@
 */
 
 #include "keen.h"
+#ifdef BUILD_SDL
+#include <SDL.h>
+#endif
 
 void banner(void)
 {
diff -up keen/src/funcdefs.h~ keen/src/funcdefs.h
--- keen/src/funcdefs.h~	2005-11-16 20:08:16.000000000 +0100
+++ keen/src/funcdefs.h	2008-04-03 12:02:38.000000000 +0200
@@ -88,6 +88,7 @@ void map_animate(int x, int y);
 char map_findobject(int obj, int *xout, int *yout);
 char map_findtile(int tile, int *xout, int *yout);
 void map_redraw(void);
+void map_chgtile(int x, int y, int newtile);
 // dos\snddrv.c
 char SoundDrv_Start(void);
 void SoundDrv_Stop(void);
@@ -123,12 +124,18 @@ void pal_fade(int fadeamt);
 void font_draw(unsigned char *text, int xoff, int yoff, int highlight);
 void sb_font_draw(unsigned char *text, int xoff, int yoff);
 void sb_font_draw_inverse(unsigned char *text, int xoff, int yoff);
+int GetBitmapNumberFromName(char *bmname);
+void DrawBitmap(int xa, int ya, int b);
+void freemem(void);
 // viddrv.c
 char VidDrv_Start(void);
 char VidDrv_CreateSurfaces(void);
 void VidDrv_Stop(void);
 void VidDrv_reset(void);
+void VidDrv_InitConsole(void);
+void VidDrv_printf(const char *str, ...);
 void pal_set(char colour, char red, char green, char blue);
+void pal_apply(void);
 void setpixel(int x, int y, unsigned char c);
 unsigned char getpixel(int x, int y);
 void sb_blit(void);
@@ -176,13 +183,17 @@ void nessie_ai(int o);
 void addmaptile(unsigned int t);
 void addenemytile(unsigned int t);
 unsigned int fgeti(FILE *fp);
+unsigned long fgetl(FILE *fp);
 unsigned int loadmap(char *fname, int lvlnum, int isworldmap);
 char loadtiles(char *fname);
 char loadsprites(char *spritename);
 char loadfont(char *fontname);
 char loadstrings(char *fname);
+char loadtileattributes(int episode);
 int freestrings(void);
 char* getstring(char *name);
+int GetStringAttribute(char *stringName, char *attrName);
+
 // keydrv.c
 char KeyDrv_Start(void);
 void KeyDrv_Stop(void);
@@ -210,12 +221,14 @@ char gameiswon(void);
 void usage(void);
 void radar(void);
 void SetAllCanSupportPlayer(int o, int state);
+void AllPlayersInvisible(void);
 
 // menu.c
 int mainmenu(int defaultopt);
 char configmenu(void);
 void showmapatpos(int level, int xoff, int yoff, int wm);
 int intro(void);
+void keensleft(void);
 
 // keen.c
 void playgame_levelmanager(int argc, char **argv, int dtm);
@@ -234,6 +247,7 @@ void eseq2_vibrate(void);
 int eseq2_HeadsForEarth(void);
 int eseq2_LimpsHome(void);
 void eseq_showmsg(char *text, int boxleft, int boxtop, int boxwidth, int boxheight, char autodismiss);
+int eseq2_SnowedOutside(void);
 
 // eseq_ep3.c
 void eseq3_Mortimer(void);
@@ -244,3 +258,20 @@ char TimeDrv_Start(void);
 void TimeDrv_Stop(void);
 void SpeedThrottle(void);
 
+// latch.c
+char latch_loadgraphics(int episode);
+
+// sglre.c
+void sgrle_reset(void);
+void sgrle_compress(FILE *fp, unsigned char *ptr, unsigned long nbytes);
+void sgrle_decompress(FILE *fp, unsigned char *ptr, unsigned long nbytes);
+unsigned char sgrle_get_next_byte(FILE *fp);
+
+// lz.c
+char lz_decompress(FILE *lzfile, unsigned char *outbuffer);
+
+// finale.c
+void finale_draw(char *filename);
+
+// scalerx.c
+void scale2x(void* void_dst, unsigned dst_slice, const void* void_src, unsigned src_slice, unsigned pixel, unsigned width, unsigned height);