mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-18 18:31:43 +00:00
3237c6b4e8
contain enough music to fill the initial output buffers. - Removed the read barrier around ADehackedPickup::RealPickup. If the real pickup is picked up, it may very well destroy itself before the dehacked wrapper's stubs that use it are called. - Reverted revision 840. For a file we don't want end users to be touching, making DEHSUPP plain text sends out mixed messages: "Don't mess with this. Oh, by the way, it's plain text now to make it easier for you to edit." Is there some reason other than a desire to do away with binary lumps to make the distributed lump text? - Added a new speakermode for Stereo + HRTF: "Headphones". This is the only way to get the HRTF low pass filter effect now. - Fixed: No more than one sector could make noise at once. - Trying out sound without varying priorities again. - Fixed: Need to use setSpeakerMix to let 2D sounds (aka streamed music) use their full volume range. SVN r842 (trunk)
124 lines
2.6 KiB
C
124 lines
2.6 KiB
C
#include <stdio.h>
|
|
#include "parse.h"
|
|
|
|
typedef enum { false, true } bool;
|
|
typedef short name;
|
|
typedef unsigned char uchar;
|
|
typedef unsigned int uint;
|
|
|
|
typedef struct Scanner {
|
|
FILE *fd;
|
|
uchar *bot, *tok, *ptr, *cur, *pos, *lim, *top, *eof;
|
|
uint line;
|
|
} Scanner;
|
|
|
|
struct Token
|
|
{
|
|
int val;
|
|
char *string;
|
|
};
|
|
|
|
int lex(Scanner *s, struct Token *tok);
|
|
|
|
int yyerror (char *s);
|
|
void yyparse (void);
|
|
|
|
extern FILE *Source, *Dest;
|
|
extern int SourceLine;
|
|
extern int ErrorCount;
|
|
|
|
|
|
void WriteWord (int word);
|
|
void WriteLabel (char *label);
|
|
void WriteWords (int count, short *array);
|
|
void WriteBytes (int count, unsigned char *array);
|
|
|
|
void WriteNameTable ();
|
|
|
|
void WriteActions ();
|
|
void WriteActionMap ();
|
|
void WriteHeights ();
|
|
void WriteCodePConv ();
|
|
void WriteSprites ();
|
|
void WriteStates ();
|
|
void WriteSounds ();
|
|
void WriteInfoNames ();
|
|
void WriteThingBits ();
|
|
void WriteRenderStyles ();
|
|
|
|
|
|
struct StringList
|
|
{
|
|
struct StringList *Next;
|
|
char String[1];
|
|
};
|
|
|
|
struct StringSorter
|
|
{
|
|
name OldName;
|
|
struct StringList *Entry;
|
|
};
|
|
|
|
extern struct StringList *NameList, **NameListLast;
|
|
extern int NameCount;
|
|
|
|
name AddName (char *name);
|
|
name FindName (char *name);
|
|
|
|
void SortNames ();
|
|
|
|
struct StateMapE
|
|
{
|
|
name Name;
|
|
unsigned char State;
|
|
unsigned char Count;
|
|
};
|
|
|
|
struct ThingBitsE
|
|
{
|
|
name Name;
|
|
unsigned char BitNum;
|
|
unsigned char FlagNum;
|
|
};
|
|
|
|
struct RenderStylesE
|
|
{
|
|
name Name;
|
|
unsigned char StyleNum;
|
|
};
|
|
|
|
void AddAction (char *name);
|
|
int FindAction (char *name);
|
|
|
|
extern name *ActionsList;
|
|
extern unsigned char *HeightsArray;
|
|
extern unsigned char *ActionMap;
|
|
extern unsigned short *CodePMap;
|
|
extern char *SpriteNames;
|
|
extern struct StateMapE *StateMaps;
|
|
extern name *SoundMaps;
|
|
extern name *InfoNamesArray;
|
|
extern struct ThingBitsE *ThingBitsMap;
|
|
extern struct RenderStylesE *RenderStylesMap;
|
|
|
|
extern int ActionsListSize, MaxActionsListSize;
|
|
extern int HeightsSize, MaxHeightsSize;
|
|
extern int ActionMapSize, MaxActionMapSize;
|
|
extern int CodePMapSize, MaxCodePMapSize;
|
|
extern int SpriteNamesSize, MaxSpriteNamesSize;
|
|
extern int StateMapsSize, MaxStateMapsSize;
|
|
extern int SoundMapsSize, MaxSoundMapsSize;
|
|
extern int InfoNamesSize, MaxInfoNamesSize;
|
|
extern int ThingBitsMapSize, MaxThingBitsMapSize;
|
|
extern int RenderStylesSize, MaxRenderStylesSize;
|
|
|
|
void AddHeight (int h);
|
|
void AddActionMap (char *name);
|
|
void AddCodeP (int codep);
|
|
void AddSpriteName (char *name);
|
|
void AddStateMap (char *name, int type, int count);
|
|
void AddSoundMap (char *sound);
|
|
void AddInfoName (char *sound);
|
|
void AddThingBits (char *name, int bitnum, int flagnum);
|
|
void AddRenderStyle (char *name, int stylenum);
|
|
|