Commit dd97540c authored by Steven Fuller's avatar Steven Fuller

Fixed the status bar pics

parent 0dde4e74
......@@ -4,11 +4,13 @@
handles this transparently
* Audio support using OpenAL
- Problem is, that SDL and OpenAL would need pthread, which with SVGAlib is
a no-go... oh well.
a no-go... oh well. Using DGA (if possible at 320x200) would fulfill the
desire for full screen mode
* Add support for the Mac version, if possible
* Network support!
* Fully compile with no warnings/errors using -Wall -ansi -pedantic
* Port to: Linux/SVGAlib, Linux/X, Linux/OpenGL, DOS/Allegro, Win32/GDI,
Win32/DX, Win32/D3D, Win32/OpenGL, BeOS?, MacOS?
* Port to: Linux/SVGAlib, Linux/X (Windowed and DGA), Linux/OpenGL,
DOS/Allegro, Win32/GDI, Win32/DX, Win32/D3D, Win32/OpenGL, BeOS?, MacOS?
* Ease in using demos. Playing demos from files, recording to files, batch
playing, and so on.
* Make Wolf3D the game it was originally planned to be...
Just some random facts/thoughts/ideas/musings:
Wolfenstein 3D was originally planned to be a much more complex game. ...
... lots of unused code ... possibly from previous projects and incarnations
of wolf3d.
Someone is actually reading the README...
......@@ -42,3 +42,11 @@ CA_FarRead hit EOF?
CA_FarRead hit EOF?
CA_FarRead hit EOF?
* if possible fix/or at least add ViewMap?
* remove the #else at the end of each header since nothing is being doubly
included now (if ever)
* i don't like this latch nonsense. i think it was for originally storing
data in vga memory. so figure it out, fix it, and remove
* especially with the video functions, there are functions/defines which
just call a different function (most are left from the update block code)
remove them
* implement fizzlefade, and get that last pixel!
......@@ -10,7 +10,11 @@ int px,py;
byte fontcolor,backcolor;
int fontnumber;
/* TODO: more latch nonsense
unsigned freelatch;
unsigned latchpics[NUMLATCHPICS];
*/
/* ======================================================================== */
void VW_DrawPropString(char *string)
......@@ -65,9 +69,10 @@ void VW_MeasurePropString (char *string, word *width, word *height)
=============================================================================
*/
void VWB_DrawTile8 (int x, int y, int tile)
void VWB_DrawTile8(int x, int y, int tile)
{
LatchDrawChar(x,y,tile);
/* TODO: 'latches' do not work */
/* LatchDrawChar(x,y,tile); */
}
void VWB_DrawPic(int x, int y, int chunknum)
......@@ -85,13 +90,12 @@ void VWB_DrawPic(int x, int y, int chunknum)
void VWB_DrawPropString(char *string)
{
VW_DrawPropString (string);
VW_DrawPropString(string);
}
void VWB_Bar(int x, int y, int width, int height, int color)
{
VW_Bar (x,y,width,height,color);
VW_Bar(x,y,width,height,color);
}
void VWB_Plot(int x, int y, int color)
......@@ -111,17 +115,9 @@ void VWB_Vlin(int y1, int y2, int x, int color)
void VW_UpdateScreen(void)
{
VL_UpdateScreen ();
VL_UpdateScreen();
}
/*
=============================================================================
WOLFENSTEIN STUFF
=============================================================================
*/
/*
=====================
=
......@@ -130,15 +126,9 @@ void VW_UpdateScreen(void)
=====================
*/
void LatchDrawPic (unsigned x, unsigned y, unsigned picnum)
void LatchDrawPic(unsigned x, unsigned y, unsigned picnum)
{
unsigned wide, height, source;
wide = pictable[picnum-STARTPICS].width;
height = pictable[picnum-STARTPICS].height;
source = latchpics[2+picnum-LATCHPICS_LUMP_START];
VL_LatchToScreen (source,wide/4,height,x*8,y);
VWB_DrawPic(x*8, y+160, picnum);
}
/* ======================================================================== */
......@@ -160,6 +150,7 @@ void LoadLatchMem(void)
/*
tile 8s
*/
#if 0 /* I can't get these to extract, if at all */
latchpics[0] = freelatch;
CA_CacheGrChunk (STARTTILE8);
src = (byte *)grsegs[STARTTILE8];
......@@ -172,8 +163,9 @@ void LoadLatchMem(void)
destoff +=16;
}
UNCACHEGRCHUNK (STARTTILE8);
#endif
#if 0 /* ran out of latch space! */
#if 0
/*
tile 16s
*/
......@@ -199,13 +191,16 @@ void LoadLatchMem(void)
for (i=start;i<=end;i++)
{
latchpics[2+i-start] = destoff;
/* TODO: this just caches them for eternity */
CA_CacheGrChunk (i);
#if 0
latchpics[2+i-start] = destoff;
width = pictable[i-STARTPICS].width;
height = pictable[i-STARTPICS].height;
VL_MemToLatch (grsegs[i],width,height,destoff);
destoff += width/4 *height;
UNCACHEGRCHUNK(i);
#endif
}
}
......
......@@ -28,12 +28,6 @@ extern int px,py;
void VW_UpdateScreen (void);
//
// mode independant routines
// coordinates in pixels, rounded to best screen res
// regions marked in double buffer
//
void VWB_DrawTile8(int x, int y, int tile);
void VWB_DrawPic(int x, int y, int chunknum);
void VWB_Bar(int x, int y, int width, int height, int color);
......@@ -57,16 +51,19 @@ extern byte gamepal;
#define VW_FadeOut() VL_FadeOut(0,255,0,0,0,30);
void VW_MeasurePropString(char *string, word *width, word *height);
#define LatchDrawChar(x,y,p) VL_LatchToScreen(latchpics[0]+(p)*16,2,8,x,y)
#define LatchDrawTile(x,y,p) VL_LatchToScreen(latchpics[1]+(p)*64,4,16,x,y)
boolean FizzleFade(byte *source, unsigned width,unsigned height, unsigned frames,boolean abortable);
void LatchDrawPic(unsigned x, unsigned y, unsigned picnum);
void LoadLatchMem(void);
boolean FizzleFade(byte *source, unsigned width,unsigned height, unsigned frames,boolean abortable);
#if 0 /* TODO: find some way to remove this ... */
#define LatchDrawChar(x,y,p) VL_LatchToScreen(latchpics[0]+(p)*16,2,8,x,y)
#define LatchDrawTile(x,y,p) VL_LatchToScreen(latchpics[1]+(p)*64,4,16,x,y)
#define NUMLATCHPICS 100
extern unsigned latchpics[NUMLATCHPICS];
extern unsigned freelatch;
#endif
#else
#error "fix me: TODO"
......
......@@ -355,45 +355,6 @@ void VL_Bar(int x, int y, int width, int height, int color)
============================================================================
*/
/*
=================
=
= VL_MemToLatch
=
=================
*/
void VL_MemToLatch (byte *source, int width, int height, word dest)
{
#if 0
unsigned count;
byte plane,mask;
count = ((width+3)/4)*height;
mask = 1;
for (plane = 0; plane<4 ; plane++)
{
VGAMAPMASK(mask);
mask <<= 1;
asm mov cx,count
asm mov ax,SCREENSEG
asm mov es,ax
asm mov di,[dest]
asm lds si,[source]
asm rep movsb
asm mov ax,ss
asm mov ds,ax
source+= count;
}
#endif
}
//===========================================================================
/*
=================
=
......@@ -414,53 +375,6 @@ void VL_MemToScreen(byte *source, int width, int height, int x, int y)
}
}
/* ======================================================================== */
/*
=================
=
= VL_LatchToScreen
=
=================
*/
void VL_LatchToScreen (unsigned source, int width, int height, int x, int y)
{
#if 0
VGAWRITEMODE(1);
VGAMAPMASK(15);
asm mov di,[y] // dest = bufferofs+ylookup[y]+(x>>2)
asm shl di,1
asm mov di,[WORD PTR ylookup+di]
asm add di,[bufferofs]
asm mov ax,[x]
asm shr ax,2
asm add di,ax
asm mov si,[source]
asm mov ax,[width]
asm mov bx,[linewidth]
asm sub bx,ax
asm mov dx,[height]
asm mov cx,SCREENSEG
asm mov ds,cx
asm mov es,cx
drawline:
asm mov cx,ax
asm rep movsb
asm add di,bx
asm dec dx
asm jnz drawline
asm mov ax,ss
asm mov ds,ax
VGAWRITEMODE(0);
#endif
}
void VL_DeModeXize(byte *buf, int width, int height)
{
byte *mem, *ptr, *destline;
......
......@@ -270,13 +270,15 @@ int CalcHeight (void)
unsigned postx;
void ScalePost (byte *wall, int texture) // VGA version
void ScalePost(byte *wall, int texture)
{
int height;
byte *source;
height = (wallheight [postx] & 0xfff8) >> 1;
if (height > maxscaleshl2)
height = maxscaleshl2;
source = wall+texture;
xBuildCompScale (height/2, source, postx);
}
......@@ -320,7 +322,6 @@ void HitHorizDoor (void)
wall = PM_GetPage (doorpage);
ScalePost (wall, texture);
}
//==========================================================================
......@@ -695,7 +696,7 @@ void ThreeDRefresh (void)
//
// clear out the traced array
//
memset (spotvis, 0, sizeof (spotvis));
memset(spotvis, 0, sizeof(spotvis));
//
// follow the walls from there to the right, drawwing as we go
......@@ -736,8 +737,8 @@ void ThreeDRefresh (void)
ystep = 32 bit fixed 32,16
*/
#define xpartialbyystep() FixedByFrac (xpartial, ystep)
#define ypartialbyxstep() FixedByFrac (ypartial, xstep)
#define xpartialbyystep() FixedByFrac(xpartial, ystep)
#define ypartialbyxstep() FixedByFrac(ypartial, xstep)
int samex (int intercept, int tile)
{
......@@ -746,8 +747,7 @@ int samex (int intercept, int tile)
return 0;
else
return 1;
}
else {
} else {
if ((intercept>>16) <= tile)
return 0;
else
......@@ -762,8 +762,7 @@ int samey (int intercept, int tile)
return 0;
else
return 1;
}
else {
} else {
if ((intercept>>16) <= tile)
return 0;
else
......@@ -980,8 +979,7 @@ void HitVertWall (void)
}
void
HitHorizWall (void)
void HitHorizWall (void)
{
int wallpic;
unsigned texture;
......
......@@ -20,7 +20,6 @@
*/
boolean ingame,fizzlein;
unsigned latchpics[NUMLATCHPICS];
gametype gamestate;
long spearx,speary;
......
......@@ -49,7 +49,11 @@ char endStrings[9][80]=
};
CP_iteminfo
#if !defined(GOODTIMES) && !defined(SPEAR)
MainItems={MENU_X,MENU_Y,10,STARTITEM,24},
#else
MainItems={MENU_X,MENU_Y, 9,STARTITEM,24},
#endif
SndItems={SM_X,SM_Y1,12,0,52},
LSItems={LSM_X,LSM_Y,10,0,24},
CtlItems={CTL_X,CTL_Y,6,-1,56},
......
......@@ -202,13 +202,9 @@ enum
loadgame,
savegame,
changeview,
#ifndef GOODTIMES
#ifndef SPEAR
#if !defined(GOODTIMES) && !defined(SPEAR)
readthis,
#endif
#endif
viewscores,
backtodemo,
quit
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment