Giter VIP home page Giter VIP logo

freedink-lua's Introduction

This is GNU FreeDink, a portable and enhanced version of the Dink
Smallwood game engine.

FreeDink is free software, and you are welcome to redistribute it
under certain conditions; see the GNU GPL for details.
( cf. COPYING and http://gnu.org/licenses/gpl.html )


Building
--------

If you are compiling GNU FreeDink from sources, check BUILD for
instructions.


About Dink Smallwood
--------------------

Dink Smallwood is an adventure/role-playing game, similar to Zelda,
made by RTsoft. Besides twisted humour, it includes the actual game
editor, allowing players to create hundreds of new adventures called
Dink Modules or D-Mods for short. The Dink Network
(http://www.dinknetwork.com/) hosts a copy of almost all of them.


GNU FreeDink
------------

GNU FreeDink is a new and portable version of the game engine, which
runs the original game as well as its D-Mods, with close
compatibility, under multiple platforms.

FreeDink can run in 2 modes:

* v1.08 (default): this matches the latest release of the Dink engine,
  which includes some new features and some backward-incompatible
  changes. Use it for recent D-Mods.

* v1.07 (with option '--v1.07'): this matches v1.07 of the Dink
  engine, essentially unmodified since 1998. Use it to play D-Mods
  released before 2006.

Next step is extending the engine while preserving accurate support
for released D-Mods.

On the technical level, the internals of the engines experience a
clean-up to allow for portability and later improvements.

Check out FreeDink's website at http://www.freedink.org/ .


Game keys
---------

Keyboard controls
  <ARROW KEYS>	Makes Dink walk/push
  <CTRL>	Attack/Use equipped item/Select option
  <SPACE>	Talk/Examine/Manipulate
  <SHIFT>	Use equipped magic
  <ENTER>	Inventory/Equip screen
  <ESC>		Options
  <M>		Display map (if you have one)
  <Alt-Return>	Toggle fullscreen mode
  <Tab>		When maintained, enable Turbo mode

Keyboard controls: Inventory/Equip screen
  <ARROW KEYS>	Highlight Item/Weapon or Magic
  <CTRL>	Select highlighted Item/Weapon or Magic
  <ENTER>	Exit inventory screen

Joystick/Gamepad controls
  <ANY DIR.>	Makes Dink walk/push
  <BUTTON 1>	Attack/Use equipped item/Select option
  <BUTTON 2>	Talk/Examine/Manipulate
  <BUTTON 3>	Use equipped magic
  <BUTTON 4>	Inventory/Equip screen
  <BUTTON 5>	Options
  <BUTTON 6>	Display map (if you have one)

Joystick/Gamepad controls: Inventory/Equip screen
  <ANY DIR.>	Highlight Item/Weapon or Magic
  <BUTTON 1>	Select highlighted Item/Weapon or Magic
  <BUTTON 4>	Exit Inventory/Equip screen

Other
  <Alt-M>	Stop playing current MIDI song
  <Alt-Q>	Quick quit to Windows
  <Alt-D>	Enable debug mode

D-Mods may add additional keys, usually they will explain it within
the game.


About GNU
---------

FreeDink is part of the GNU project, whose aim is to create "GNU", a
completely free (as in freedom) operating system. Its most famous
variant these days is GNU/Linux. A engine to play the Dink Smallwood
game and D-Mods is definitely a must for the GNU OS ;) Check
http://www.gnu.org/ for more information.


Game data
---------

Get the free game data separately from the 'freedink-data' package at:

  http://ftp.gnu.org/gnu/freedink/

Note:
The original game contained sounds that were not owned by RTsoft and
hence could not be released under a free license.  We're looking for
free replacements!  Please send contributions at [email protected].
See http://www.freedink.org/doc/sounds/ for more information.


Other FreeDink applications
---------------------------

DFArc, a graphical front-end run the game and manage D-Mods, was also
ported and extended. Get new version 3 at http://www.freedink.org/ .


Technical information
---------------------

Check the 'doc' directory for technical/developer considerations.


---
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.

freedink-lua's People

Contributors

beuc avatar ilyvion avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

weimingtom

freedink-lua's Issues

build problems

I'm unable to build this from source. What I'm trying:

Copy gnulib into the gnulib/ folder.

autoreconf -fis
./configure --prefix=/tmp/dinklua
make
make install

This fails with the error that RELOCATABLE_VIA_LD can only be used inside AM_CONDITIONAL; I just commented it out, because it is set on my system. That's not a fix, obviously.

It has some trouble with gnulib/po/, which is likely my inability to use it properly; I've removed all references to it from configure.ac and Makefile.am, for now I don't care if i18n works.

Then make fails with a lot of errors for which I don't see an obvious solution. They may have to do with gnulib (which I shouldn't need at all; I'm running on a GNU system; but hash.h isn't available here).

The build output is (I would have attached it, but github doesn't let me attach text files):

make all-recursive
make[1]: Entering directory '/home/shevek/src/freedink-lua'
Making all in gnulib/lib
make[2]: Entering directory '/home/shevek/src/freedink-lua/gnulib/lib'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/shevek/src/freedink-lua/gnulib/lib'
Making all in nsis
make[2]: Entering directory '/home/shevek/src/freedink-lua/nsis'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/shevek/src/freedink-lua/nsis'
Making all in po
make[2]: Entering directory '/home/shevek/src/freedink-lua/po'
make[2]: Leaving directory '/home/shevek/src/freedink-lua/po'
Making all in src
make[2]: Entering directory '/home/shevek/src/freedink-lua/src'
gcc -DHAVE_CONFIG_H -I. -I.. -DDEFAULT_DATA_DIR="/tmp/dinklua/share" -I../gnulib/lib -I../gnulib/lib -DINSTALLDIR="/tmp/dinklua/bin" -DLOCALEDIR="/tmp/dinklua/share/locale" -I../intl -I../intl -g -O2 -Wall -std=c99 -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -I/usr/include/lua5.2 -I/usr/include/freetype2 -I/usr/lib/i386-linux-gnu/libzip/include -MT bgm.o -MD -MP -MF .deps/bgm.Tpo -c -o bgm.o bgm.c
In file included from sp_custom.h:26:0,
from game_engine.h:34,
from bgm.c:37:
../gnulib/lib/hash.h: In function ‘hash_get_n_buckets’:
../gnulib/lib/hash.h:72:48: error: expected declaration specifiers before ‘_GL_ATTRIBUTE_PURE’
size_t hash_get_n_buckets (const Hash_table *) _GL_ATTRIBUTE_PURE;
^
../gnulib/lib/hash.h:73:53: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘_GL_ATTRIBUTE_PURE’
size_t hash_get_n_buckets_used (const Hash_table *) _GL_ATTRIBUTE_PURE;
^
../gnulib/lib/hash.h:74:48: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘_GL_ATTRIBUTE_PURE’
size_t hash_get_n_entries (const Hash_table *) _GL_ATTRIBUTE_PURE;
^
../gnulib/lib/hash.h:75:56: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘_GL_ATTRIBUTE_PURE’
size_t hash_get_max_bucket_length (const Hash_table *) _GL_ATTRIBUTE_PURE;
^
../gnulib/lib/hash.h:76:41: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘_GL_ATTRIBUTE_PURE’
bool hash_table_ok (const Hash_table *) _GL_ATTRIBUTE_PURE;
^
../gnulib/lib/hash.h:81:43: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘_GL_ATTRIBUTE_PURE’
void *hash_get_first (const Hash_table *) _GL_ATTRIBUTE_PURE;
^
../gnulib/lib/hash.h:87:43: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘_GL_ATTRIBUTE_PURE’
size_t hash_string (const char _, size_t) GL_ATTRIBUTE_PURE;
^
In file included from game_engine.h:34:0,
from bgm.c:37:
sp_custom.h:28:21: error: storage class specified for parameter ‘sp_custom’
typedef Hash_table
sp_custom;
^
sp_custom.h:30:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘sp_custom_new’
extern sp_custom sp_custom_new();
^
sp_custom.h:31:28: error: expected declaration specifiers or ‘...’ before ‘sp_custom’
extern void sp_custom_free(sp_custom hash);
^
sp_custom.h:32:27: error: expected declaration specifiers or ‘...’ before ‘sp_custom’
extern void sp_custom_set(sp_custom hash, const char key[200], int val);
^
sp_custom.h:33:26: error: expected declaration specifiers or ‘...’ before ‘sp_custom’
extern int sp_custom_get(sp_custom hash, const char key[200]);
^
sp_custom.h:34:29: error: expected declaration specifiers or ‘...’ before ‘sp_custom’
extern void sp_custom_clear(sp_custom hash);
^
In file included from game_engine.h:35:0,
from bgm.c:37:
scripting.h:30:1: warning: empty declaration [enabled by default]
struct script_engine
^
scripting.h:104:1: warning: empty declaration [enabled by default]
struct scriptinfo
^
scripting.h:112:27: error: storage class specified for parameter ‘sinfo’
extern struct scriptinfo sinfo[];
^
scripting.h:114:1: warning: empty declaration [enabled by default]
struct call_back
^
scripting.h:125:25: error: storage class specified for parameter ‘callback’
extern struct call_back callback[MAX_CALLBACKS];
^
scripting.h:132:1: warning: empty declaration [enabled by default]
struct varman
^
scripting.h:141:1: warning: empty declaration [enabled by default]
struct global_function
^
scripting.h:147:13: error: storage class specified for parameter ‘scripting_error’
extern char scripting_error[255];
^
scripting.h:150:12: error: storage class specified for parameter ‘var_exists’
extern int var_exists(const char name[20], int scope);
^
scripting.h:151:12: error: storage class specified for parameter ‘scripting_make_int’
extern int scripting_make_int(const char name[80], int value, int scope);
^
scripting.h:152:12: error: storage class specified for parameter ‘search_var_with_this_scope’
extern int search_var_with_this_scope(char
variable, int scope);
^
scripting.h:153:12: error: storage class specified for parameter ‘search_var_with_this_scope_108’
extern int search_var_with_this_scope_108(char* variable, int var_scope);
^
scripting.h:154:20: error: storage class specified for parameter ‘load_game_small’
extern /bool/int load_game_small(int num, char line[196], int mytime);
^
scripting.h:155:13: error: storage class specified for parameter ‘var_replace’
extern void var_replace(char
* line_p, int scope);
^
scripting.h:156:14: error: storage class specified for parameter ‘scripting_find_script_for_engine’
extern char* scripting_find_script_for_engine(struct script_engine script_engine, const char filename);
^
scripting.h:158:13: error: storage class specified for parameter ‘scripting_init’
extern void scripting_init();
^
scripting.h:159:13: error: storage class specified for parameter ‘scripting_quit’
extern void scripting_quit();
^
scripting.h:160:12: error: storage class specified for parameter ‘scripting_load_script’
extern int scripting_load_script(const char filename[15], int sprite, /bool/int set_sprite);
^
scripting.h:161:12: error: storage class specified for parameter ‘scripting_proc_exists’
extern int scripting_proc_exists(int script, const char* proc);
^
scripting.h:162:12: error: storage class specified for parameter ‘scripting_run_proc’
extern int scripting_run_proc(int script, const char* proc);
^
scripting.h:163:13: error: storage class specified for parameter ‘scripting_resume_script’
extern void scripting_resume_script(int script);
^
scripting.h:164:13: error: storage class specified for parameter ‘scripting_kill_scripts_owned_by’
extern void scripting_kill_scripts_owned_by(int sprite);
^
scripting.h:165:13: error: storage class specified for parameter ‘scripting_kill_all_scripts’
extern void scripting_kill_all_scripts(void);
^
scripting.h:166:13: error: storage class specified for parameter ‘scripting_kill_all_scripts_for_real’
extern void scripting_kill_all_scripts_for_real(void);
^
scripting.h:167:12: error: storage class specified for parameter ‘scripting_add_callback’
extern int scripting_add_callback(const char name[20], int n1, int n2, int script);
^
scripting.h:168:13: error: storage class specified for parameter ‘scripting_kill_callbacks’
extern void scripting_kill_callbacks(int script);
^
scripting.h:169:13: error: storage class specified for parameter ‘scripting_kill_callback’
extern void scripting_kill_callback(int cb);
^
scripting.h:170:13: error: storage class specified for parameter ‘scripting_kill_callbacks_owned_by_script’
extern void scripting_kill_callbacks_owned_by_script(int script);
^
scripting.h:171:13: error: storage class specified for parameter ‘scripting_process_callbacks’
extern void scripting_process_callbacks(void);
^
scripting.h:172:13: error: storage class specified for parameter ‘scripting_kill_script’
extern void scripting_kill_script(int k);
^
scripting.h:173:13: error: storage class specified for parameter ‘scripting_init_scripts’
extern void scripting_init_scripts();
^
In file included from bgm.c:37:0:
game_engine.h:124:3: error: expected specifier-qualifier-list before ‘sp_custom’
sp_custom custom;
^
game_engine.h:41:1: warning: empty declaration [enabled by default]
struct sp
^
game_engine.h:127:1: warning: empty declaration [enabled by default]
struct item_struct
^
game_engine.h:135:1: warning: empty declaration [enabled by default]
struct mydata
^
game_engine.h:147:1: warning: empty declaration [enabled by default]
struct player_info_tile
^
game_engine.h:153:1: warning: empty declaration [enabled by default]
struct player_info
^
game_engine.h:185:18: error: storage class specified for parameter ‘spr’
extern struct sp spr[];
^
game_engine.h:186:27: error: storage class specified for parameter ‘play’
extern struct player_info play;
^
game_engine.h:187:12: error: storage class specified for parameter ‘last_sprite_created’
extern int last_sprite_created;
^
game_engine.h:190:13: error: storage class specified for parameter ‘pvision’
extern int _pvision, *plife, *presult, *pspeed, *ptiming, *plifemax,
^
game_engine.h:190:23: error: storage class specified for parameter ‘plife’
extern int *pvision, *plife, *presult, *pspeed, *ptiming, *plifemax,
^
game_engine.h:190:31: error: storage class specified for parameter ‘presult’
extern int *pvision, *plife, *presult, *pspeed, *ptiming, *plifemax,
^
game_engine.h:190:41: error: storage class specified for parameter ‘pspeed’
extern int *pvision, *plife, *presult, *pspeed, *ptiming, *plifemax,
^
game_engine.h:190:50: error: storage class specified for parameter ‘ptiming’
extern int *pvision, *plife, *presult, *pspeed, *ptiming, *plifemax,
^
game_engine.h:190:60: error: storage class specified for parameter ‘plifemax’
extern int *pvision, *plife, *presult, *pspeed, *ptiming, *plifemax,
^
game_engine.h:191:4: error: storage class specified for parameter ‘pexper’
*pexper, *pmap, *pstrength, *pcur_weapon,_pcur_magic, _pdefense,
^
game_engine.h:191:13: error: storage class specified for parameter ‘pmap’
*pexper, *pmap, *pstrength, *pcur_weapon,_pcur_magic, _pdefense,
^
game_engine.h:191:20: error: storage class specified for parameter ‘pstrength’
*pexper, *pmap, *pstrength, *pcur_weapon,_pcur_magic, _pdefense,
^
game_engine.h:191:32: error: storage class specified for parameter ‘pcur_weapon’
*pexper, *pmap, *pstrength, *pcur_weapon,_pcur_magic, _pdefense,
^
game_engine.h:191:45: error: storage class specified for parameter ‘pcur_magic’
*pexper, *pmap, *pstrength, *pcur_weapon,_pcur_magic, _pdefense,
^
game_engine.h:191:58: error: storage class specified for parameter ‘pdefense’
*pexper, *pmap, *pstrength, *pcur_weapon,_pcur_magic, pdefense,
^
game_engine.h:192:4: error: storage class specified for parameter ‘pgold’
*pgold, *pmagic, *plevel, *plast_text, *pmagic_level;
^
game_engine.h:192:12: error: storage class specified for parameter ‘pmagic’
*pgold, *pmagic, *plevel, *plast_text, *pmagic_level;
^
game_engine.h:192:21: error: storage class specified for parameter ‘plevel’
*pgold, *pmagic, *plevel, *plast_text, *pmagic_level;
^
game_engine.h:192:30: error: storage class specified for parameter ‘plast_text’
*pgold, *pmagic, *plevel, *plast_text, *pmagic_level;
^
game_engine.h:192:43: error: storage class specified for parameter ‘pmagic_level’
*pgold, *pmagic, *plevel, *plast_text, *pmagic_level;
^
game_engine.h:193:13: error: storage class specified for parameter ‘pupdate_status’
extern int *pupdate_status, *pmissile_target, *penemy_sprite,
^
game_engine.h:193:30: error: storage class specified for parameter ‘pmissile_target’
extern int *pupdate_status, *pmissile_target, *penemy_sprite,
^
game_engine.h:193:48: error: storage class specified for parameter ‘penemy_sprite’
extern int *pupdate_status, *pmissile_target, *penemy_sprite,
^
game_engine.h:194:4: error: storage class specified for parameter ‘pmagic_cost’
*pmagic_cost, *pmissle_source;
^
game_engine.h:194:18: error: storage class specified for parameter ‘pmissle_source’
*pmagic_cost, *pmissle_source;
^
game_engine.h:197:12: error: storage class specified for parameter ‘flife’
extern int flife, fexp, fstrength, fdefense, fgold, fmagic,
^
game_engine.h:197:19: error: storage class specified for parameter ‘fexp’
extern int flife, fexp, fstrength, fdefense, fgold, fmagic,
^
game_engine.h:197:25: error: storage class specified for parameter ‘fstrength’
extern int flife, fexp, fstrength, fdefense, fgold, fmagic,
^
game_engine.h:197:36: error: storage class specified for parameter ‘fdefense’
extern int flife, fexp, fstrength, fdefense, fgold, fmagic,
^
game_engine.h:197:46: error: storage class specified for parameter ‘fgold’
extern int flife, fexp, fstrength, fdefense, fgold, fmagic,
^
game_engine.h:197:53: error: storage class specified for parameter ‘fmagic’
extern int flife, fexp, fstrength, fdefense, fgold, fmagic,
^
game_engine.h:198:3: error: storage class specified for parameter ‘fmagic_level’
fmagic_level, flifemax, fraise, last_magic_draw;
^
game_engine.h:198:17: error: storage class specified for parameter ‘flifemax’
fmagic_level, flifemax, fraise, last_magic_draw;
^
game_engine.h:198:27: error: storage class specified for parameter ‘fraise’
fmagic_level, flifemax, fraise, last_magic_draw;
^
game_engine.h:198:35: error: storage class specified for parameter ‘last_magic_draw’
fmagic_level, flifemax, fraise, last_magic_draw;
^
game_engine.h:203:20: error: storage class specified for parameter ‘midi_active’
extern /bool/int midi_active;
^
game_engine.h:204:20: error: storage class specified for parameter ‘sound_on’
extern /bool/int sound_on;
^
game_engine.h:205:20: error: storage class specified for parameter ‘cd_inserted’
extern /bool/int cd_inserted;
^
game_engine.h:209:1: warning: empty declaration [enabled by default]
struct map_info
^
game_engine.h:215:24: error: storage class specified for parameter ‘map’
extern struct map_info map;
^
game_engine.h:220:20: error: storage class specified for parameter ‘joystick’
extern /BOOL/int joystick;
^
game_engine.h:222:22: error: storage class specified for parameter ‘jinfo’
extern SDL_Joystick *jinfo;
^
game_engine.h:223:1: warning: empty declaration [enabled by default]
struct wait_for_button
^
game_engine.h:229:31: error: storage class specified for parameter ‘wait4b’
extern struct wait_for_button wait4b;
^
game_engine.h:232:12: error: storage class specified for parameter ‘last_saved_game’
extern int last_saved_game;
^
game_engine.h:234:14: error: storage class specified for parameter ‘dversion_string’
extern char *dversion_string;
^
game_engine.h:235:12: error: storage class specified for parameter ‘dversion’
extern int dversion;
^
game_engine.h:237:13: error: storage class specified for parameter ‘save_game_info’
extern char save_game_info[LEN_SAVE_GAME_INFO];
^
game_engine.h:238:13: error: storage class specified for parameter ‘current_map’
extern char current_map[50];
^
game_engine.h:239:13: error: storage class specified for parameter ‘current_dat’
extern char current_dat[50];
^
game_engine.h:241:15: error: storage class specified for parameter ‘time_start’
extern time_t time_start;
^
game_engine.h:243:12: error: storage class specified for parameter ‘smooth_follow’
extern int smooth_follow;
^
game_engine.h:245:12: error: storage class specified for parameter ‘get_pan’
extern int get_pan(int h);
^
game_engine.h:246:12: error: storage class specified for parameter ‘get_vol’
extern int get_vol(int h);
^
game_engine.h:250:12: error: storage class specified for parameter ‘process_warp’
extern int process_warp;
^
game_engine.h:251:12: error: storage class specified for parameter ‘process_downcycle’
extern int process_downcycle;
^
game_engine.h:252:12: error: storage class specified for parameter ‘process_upcycle’
extern int process_upcycle;
^
game_engine.h:253:22: error: storage class specified for parameter ‘cycle_clock’
extern unsigned long cycle_clock;
^
game_engine.h:254:12: error: storage class specified for parameter ‘cycle_script’
extern int cycle_script;
^
game_engine.h:256:21: error: storage class specified for parameter ‘dink_base_push’
extern unsigned int dink_base_push;
^
game_engine.h:258:13: error: storage class specified for parameter ‘game_init’
extern void game_init(void);
^
game_engine.h:259:13: error: storage class specified for parameter ‘game_quit’
extern void game_quit(void);
^
game_engine.h:261:15: error: storage class specified for parameter ‘game_GetTicks’
extern Uint32 game_GetTicks(void);
^
game_engine.h:262:13: error: storage class specified for parameter ‘game_set_high_speed’
extern void game_set_high_speed(void);
^
game_engine.h:263:13: error: storage class specified for parameter ‘game_set_normal_speed’
extern void game_set_normal_speed(void);
^
game_engine.h:265:13: error: storage class specified for parameter ‘attach’
extern void attach(void);
^
In file included from bgm.c:38:0:
bgm.h:27:12: error: storage class specified for parameter ‘last_cd_track’
extern int last_cd_track;
^
bgm.h:29:12: error: storage class specified for parameter ‘cdplaying’
extern int cdplaying();
^
bgm.h:30:12: error: storage class specified for parameter ‘killcd’
extern int killcd();
^
bgm.h:31:12: error: storage class specified for parameter ‘PlayCD’
extern int PlayCD(int cd_track);
^
bgm.h:32:12: error: storage class specified for parameter ‘something_playing’
extern int something_playing(void);
^
bgm.h:33:12: error: storage class specified for parameter ‘PlayMidi’
extern int PlayMidi(const char *sFileName);
^
bgm.h:34:12: error: storage class specified for parameter ‘PauseMidi’
extern int PauseMidi();
^
bgm.h:35:12: error: storage class specified for parameter ‘ResumeMidi’
extern int ResumeMidi();
^
bgm.h:36:12: error: storage class specified for parameter ‘StopMidi’
extern int StopMidi();
^
bgm.h:37:12: error: storage class specified for parameter ‘ReplayMidi’
extern int ReplayMidi();
^
bgm.h:38:13: error: storage class specified for parameter ‘check_midi’
extern void check_midi();
^
bgm.h:39:13: error: storage class specified for parameter ‘bgm_init’
extern void bgm_init(void);
^
bgm.h:40:13: error: storage class specified for parameter ‘bgm_quit’
extern void bgm_quit(void);
^
bgm.h:41:13: error: storage class specified for parameter ‘loopmidi’
extern void loopmidi(int loop_midi);
^
In file included from bgm.c:40:0:
str_util.h:32:15: error: storage class specified for parameter ‘strtoupper’
extern void strtoupper(char *s);
^
str_util.h:33:15: error: storage class specified for parameter ‘strtolower’
extern void strtolower(char *s);
^
str_util.h:34:15: error: storage class specified for parameter ‘strcpy_nooverlap’
extern void strcpy_nooverlap(char *dst, char
src);
^
str_util.h:35:14: error: storage class specified for parameter ‘asprintf_append’
extern int asprintf_append(char strp, const char* fmt, ...);
^
str_util.h:36:15: error: storage class specified for parameter ‘reverse’
extern void reverse(char st);
^
str_util.h:37:15: error: storage class specified for parameter ‘strchar’
extern void strchar(char *string, char ch);
^
str_util.h:38:16: error: storage class specified for parameter ‘separate_string’
extern char
separate_string (const char* str, int num, char sep);
^
str_util.h:39:16: error: storage class specified for parameter ‘get_word’
extern char* get_word(char* line, int word);
^
str_util.h:40:22: error: storage class specified for parameter ‘compare’
extern /bool/int compare(const char orig, const char *comp);
^
str_util.h:41:15: error: storage class specified for parameter ‘replace’
extern void replace(const char
find, const char* repl, char
line_p);
^
str_util.h:42:15: error: storage class specified for parameter ‘replace_norealloc’
extern void replace_norealloc(const char* find, const char* repl, char* line);
^
str_util.h:43:16: error: storage class specified for parameter ‘latin1_to_utf8’
extern char* latin1_to_utf8(char* source);
^
In file included from bgm.c:41:0:
paths.h:33:15: error: storage class specified for parameter ‘paths_init’
extern void paths_init(char* argv0, char* refdir_opt, char* dmoddir_opt);
^
paths.h:34:22: error: storage class specified for parameter ‘paths_getdmoddir’
extern const char paths_getdmoddir(void);
^
paths.h:35:22: error: storage class specified for parameter ‘paths_getdmodname’
extern const char *paths_getdmodname(void);
^
paths.h:36:22: error: storage class specified for parameter ‘paths_getfallbackdir’
extern const char *paths_getfallbackdir(void);
^
paths.h:37:22: error: storage class specified for parameter ‘paths_getdefaultpkgdatadir’
extern const char *paths_getdefaultpkgdatadir(void);
^
paths.h:38:22: error: storage class specified for parameter ‘paths_getpkgdatadir’
extern const char *paths_getpkgdatadir(void);
^
paths.h:39:22: error: storage class specified for parameter ‘paths_getexedir’
extern const char *paths_getexedir(void);
^
paths.h:40:22: error: storage class specified for parameter ‘paths_getexefile’
extern const char *paths_getexefile(void);
^
paths.h:42:16: error: storage class specified for parameter ‘paths_dmodfile’
extern char
paths_dmodfile(const char* file);
^
paths.h:43:16: error: storage class specified for parameter ‘paths_fallbackfile’
extern char* paths_fallbackfile(const char* file);
^
paths.h:44:16: error: storage class specified for parameter ‘paths_defaultpkgdatafile’
extern char* paths_defaultpkgdatafile(const char* file);
^
paths.h:45:16: error: storage class specified for parameter ‘paths_pkgdatafile’
extern char* paths_pkgdatafile(const char* file);
^
paths.h:46:16: error: storage class specified for parameter ‘paths_exedirfile’
extern char* paths_exedirfile(const char* file);
^
paths.h:48:16: error: storage class specified for parameter ‘paths_dmodfile_fopen’
extern FILE* paths_dmodfile_fopen(const char* file, const char* mode);
^
paths.h:49:16: error: storage class specified for parameter ‘paths_fallbackfile_fopen’
extern FILE* paths_fallbackfile_fopen(const char* file, const char* mode);
^
paths.h:50:16: error: storage class specified for parameter ‘paths_defaultpkgdatafile_fopen’
extern FILE* paths_defaultpkgdatafile_fopen(const char* file, const char* mode);
^
paths.h:51:16: error: storage class specified for parameter ‘paths_pkgdatafile_fopen’
extern FILE* paths_pkgdatafile_fopen(const char* file, const char* mode);
^
paths.h:52:16: error: storage class specified for parameter ‘paths_exedirfile_fopen’
extern FILE* paths_exedirfile_fopen(const char* file, const char* mode);
^
paths.h:54:16: error: storage class specified for parameter ‘paths_savegame_fopen’
extern FILE* paths_savegame_fopen(int num, const char* mode);
^
paths.h:55:15: error: storage class specified for parameter ‘paths_quit’
extern void paths_quit(void);
^
In file included from bgm.c:42:0:
log.h:26:13: error: storage class specified for parameter ‘last_debug’
extern char last_debug[200];
^
log.h:27:12: error: storage class specified for parameter ‘debug_mode’
extern int debug_mode;
^
log.h:29:1: warning: empty declaration [enabled by default]
enum log_priority
^
log.h:48:13: error: storage class specified for parameter ‘log_debug_on’
extern void log_debug_on(void);
^
log.h:49:13: error: storage class specified for parameter ‘log_debug_off’
extern void log_debug_off(void);
^
log.h:50:13: error: storage class specified for parameter ‘log_set_priority’
extern void log_set_priority(enum log_priority priority);
^
log.h:51:13: error: storage class specified for parameter ‘log_output’
extern void log_output(enum log_priority priority, const char fmt, ...);
^
bgm.c:53:16: error: storage class specified for parameter ‘cdrom’
static SDL_CD *cdrom = NULL;
^
bgm.c:53:1: error: parameter ‘cdrom’ is initialized
static SDL_CD *cdrom = NULL;
^
bgm.c:57:19: error: storage class specified for parameter ‘music_data’
static Mix_Music *music_data = NULL;
^
bgm.c:57:1: error: parameter ‘music_data’ is initialized
static Mix_Music *music_data = NULL;
^
bgm.c:58:14: error: storage class specified for parameter ‘last_midi’
static char
last_midi = NULL;
^
bgm.c:58:1: error: parameter ‘last_midi’ is initialized
static char* last_midi = NULL;
^
bgm.c:59:1: error: parameter ‘last_cd_track’ is initialized
int last_cd_track = 0;
^
bgm.c:59:5: error: redefinition of parameter ‘last_cd_track’
int last_cd_track = 0;
^
In file included from bgm.c:38:0:
bgm.h:27:12: note: previous definition of ‘last_cd_track’ was here
extern int last_cd_track;
^
bgm.c:60:12: error: storage class specified for parameter ‘loop_midi’
static int loop_midi = 0;
^
bgm.c:60:1: error: parameter ‘loop_midi’ is initialized
static int loop_midi = 0;
^
bgm.c:72:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:82:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:92:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:117:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:126:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:135:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:241:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:253:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:266:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:275:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:321:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:361:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
bgm.c:381:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘{’ token
{
^
In file included from sp_custom.h:26:0,
from game_engine.h:34,
from bgm.c:37:
../gnulib/lib/hash.h:72:8: error: old-style parameter declarations in prototyped function definition
size_t hash_get_n_buckets (const Hash_table _) _GL_ATTRIBUTE_PURE;
^
../gnulib/lib/hash.h:72:1: error: parameter name omitted
size_t hash_get_n_buckets (const Hash_table *) GL_ATTRIBUTE_PURE;
^
bgm.c:386:1: error: expected ‘{’ at end of input
}
^
bgm.c:386:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
Makefile:594: recipe for target 'bgm.o' failed
make[2]: *
* [bgm.o] Error 1
make[2]: Leaving directory '/home/shevek/src/freedink-lua/src'
Makefile:417: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/shevek/src/freedink-lua'
Makefile:357: recipe for target 'all' failed
make: *** [all] Error 2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.