Skip to content
This repository has been archived by the owner on Mar 19, 2019. It is now read-only.

Commit

Permalink
cleaned up code structure a bit
Browse files Browse the repository at this point in the history
  • Loading branch information
Magnus Auvinen committed Dec 15, 2007
1 parent ac98730 commit a2566b3
Show file tree
Hide file tree
Showing 77 changed files with 206 additions and 2,054 deletions.
45 changes: 32 additions & 13 deletions default.bam
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,10 @@ function dc_header(output, data, script)
return os.execute(dc_compiler .. " " .. data .. " " .. script .. " -h " .. output)
end

function dc_source(output, data, script)
print("dc_source " .. PathFilename(output) .. " = " .. PathFilename(data) .. " ~ " .. PathFilename(script))
return os.execute(dc_compiler .. " " .. data .. " " .. script .. " -s " .. output)
function dc_source(output, data, script, headerfile)
print("dc_source " .. PathFilename(output) .. "+" .. PathFilename(headerfile) .. " = " .. PathFilename(data) .. " ~ " .. PathFilename(script))
cmd = dc_compiler .. " " .. data .. " " .. script .. " -s " .. output .. " " .. headerfile
return os.execute(cmd)
end

function dc_data(output, data, script)
Expand Down Expand Up @@ -94,14 +95,14 @@ function DataCompile(datafile, scriptfile, headerfile, sourcefile, outputdatafil
datafile = Path(datafile)
scriptfile = Path(scriptfile)
headerfile = Path(headerfile)

bam_add_job("dc_header", headerfile, datafile, scriptfile)
bam_add_dependency(headerfile, datafile)
bam_add_dependency(headerfile, scriptfile)

if sourcefile then
sourcefile = Path(sourcefile)
bam_add_job("dc_source", sourcefile, datafile, scriptfile)
bam_add_job("dc_source", sourcefile, datafile, scriptfile, headerfile)
bam_add_dependency(sourcefile, datafile)
bam_add_dependency(sourcefile, scriptfile)
bam_add_dependency(sourcefile, headerfile)
Expand All @@ -120,31 +121,49 @@ end
serverdata = DataCompile(
"datasrc/teewars.ds",
"datasrc/server.dts",
"src/game/server/data.h",
"src/game/server/data/server_data.cpp",
"src/game/server/data/server_internal.cpp")
"src/game/generated/gs_data.h",
"src/game/generated/gs_data.cpp",
"src/game/generated/gs_internaldata.cpp")

clientdata = DataCompile(
"datasrc/teewars.ds",
"datasrc/client.dts",
"src/game/client/data.h",
"src/game/client/data/client_data.cpp",
"src/game/client/data/client_internal.cpp")
"src/game/generated/gc_data.h",
"src/game/generated/gc_data.cpp",
"src/game/generated/gc_internaldata.cpp")

networkdata = DataCompile(
"datasrc/teewars.ds",
"datasrc/network.dts",
"src/game/protocol_ids.h")
"src/game/generated/g_protocol_ids.h",
"src/game/generated/g_protocol_ids.cpp")

nethash = CHash("src/game/nethash.c", "src/engine/protocol.h", "src/game/game_protocol.h", networkdata.header)
nethash = CHash("src/game/generated/nethash.c", "src/engine/e_protocol.h", "src/game/g_protocol.h", networkdata.header)

client_link_other = {}
if family == "windows" then
client_link_other = {ResCompile("other/icons/teewars.rc")}
end


-- [TODO: Should be in C]
function file_ext(s)
for ext in string.gfind(s, "%.%a+$") do
return string.sub(ext, 2)
end
return ""
end

function intermediate_output_func(dir, input, extension)
if not (dir == "") then
return Path(dir .. "/" .. PathBase(PathFilename(input)) .. extension)
end
return PathBase(input) .. extension
end

function build(settings)
settings.objdir = Path("objs")
settings.cc.output = intermediate_output_func

if family == "windows" then
settings.cc.flags = "/wd4244"
Expand Down
Empty file added objs/createdir.txt
Empty file.
11 changes: 7 additions & 4 deletions scripts/compiler.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import sys
import struct
import os

option_ptrsize = struct.calcsize("P")
option_intsize = struct.calcsize("l")
Expand Down Expand Up @@ -491,18 +492,18 @@ def emit_header_code(self, out):
print >>out, ""


def emit_source_code(self, out):
def emit_source_code(self, out, header_filename):
print >>out, '''
#include "../data.h"
#include "%s"
#include <stdio.h>
#include <stdlib.h>
static void patch_ptr(char **ptr, char *base)
{
*ptr = base+(size_t)(*ptr);
}
'''
''' % header_filename

for s in self.structs:
s.emit_source_code(out)
Expand Down Expand Up @@ -611,11 +612,13 @@ def validate_values(values, check):
coutput_filename = 0
header_filename = 0
source_filename = 0
sheader_filename = 0

if sys.argv[3] == '-h':
header_filename = sys.argv[4]
elif sys.argv[3] == '-s':
source_filename = sys.argv[4]
sheader_filename = sys.argv[5]
elif sys.argv[3] == '-d':
output_filename = sys.argv[4]
elif sys.argv[3] == '-c':
Expand All @@ -629,7 +632,7 @@ def validate_values(values, check):
if header_filename:
translator.emit_header_code(file(header_filename, "w"))
if source_filename:
translator.emit_source_code(file(source_filename, "w"))
translator.emit_source_code(file(source_filename, "w"), os.path.basename(sheader_filename))

if output_filename:
rawdata = translator.emit_data()
Expand Down
18 changes: 9 additions & 9 deletions src/editor/editor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,18 @@
#include <string.h>

extern "C" {
#include <engine/system.h>
#include <engine/client/ui.h>
#include <engine/interface.h>
#include <engine/datafile.h>
#include <engine/config.h>
#include <engine/e_system.h>
#include <engine/client/ec_ui.h>
#include <engine/e_interface.h>
#include <engine/e_datafile.h>
#include <engine/e_config.h>
}

#include <game/client/mapres_image.h>
#include <game/client/mapres_tilemap.h>
#include <game/client/gc_mapres_image.h>
#include <game/client/gc_mapres_tilemap.h>
//#include "game/mapres_col.h"
#include <game/mapres.h>
#include <game/game.h>
#include <game/g_mapres.h>
#include <game/g_game.h>

static int font_texture = 0;
static int checker_texture = 0;
Expand Down
26 changes: 13 additions & 13 deletions src/engine/client/client.c → src/engine/client/ec_client.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,19 @@
#include <stdio.h>
#include <math.h>

#include <engine/system.h>
#include <engine/engine.h>
#include <engine/interface.h>
#include "ui.h"

#include <engine/protocol.h>
#include <engine/snapshot.h>
#include <engine/compression.h>
#include <engine/network.h>
#include <engine/config.h>
#include <engine/packer.h>
#include <engine/memheap.h>
#include <engine/datafile.h>
#include <engine/e_system.h>
#include <engine/e_engine.h>
#include <engine/e_interface.h>
#include "ec_ui.h"

#include <engine/e_protocol.h>
#include <engine/e_snapshot.h>
#include <engine/e_compression.h>
#include <engine/e_network.h>
#include <engine/e_config.h>
#include <engine/e_packer.h>
#include <engine/e_memheap.h>
#include <engine/e_datafile.h>

#include <mastersrv/mastersrv.h>

Expand Down
10 changes: 5 additions & 5 deletions src/engine/client/gfx.c → src/engine/client/ec_gfx.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
#include <engine/external/glfw/include/GL/glfw.h>
#include <engine/external/pnglite/pnglite.h>

#include <engine/system.h>
#include <engine/interface.h>
#include <engine/engine.h>
#include <engine/config.h>
#include <engine/keys.h>
#include <engine/e_system.h>
#include <engine/e_interface.h>
#include <engine/e_engine.h>
#include <engine/e_config.h>
#include <engine/e_keys.h>

#include <string.h>
#include <stdio.h>
Expand Down
6 changes: 3 additions & 3 deletions src/engine/client/inp.c → src/engine/client/ec_inp.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
#include <string.h>
#include <engine/external/glfw/include/GL/glfw.h>

#include <engine/system.h>
#include <engine/interface.h>
#include <engine/config.h>
#include <engine/e_system.h>
#include <engine/e_interface.h>
#include <engine/e_config.h>

static int keyboard_state[2][1024]; /* TODO: fix this!! */
static int keyboard_current = 0;
Expand Down
6 changes: 3 additions & 3 deletions src/engine/client/snd.c → src/engine/client/ec_snd.c
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
#include <engine/system.h>
#include <engine/interface.h>
#include <engine/config.h>
#include <engine/e_system.h>
#include <engine/e_interface.h>
#include <engine/e_config.h>

#include <engine/external/portaudio/portaudio.h>
#include <engine/external/wavpack/wavpack.h>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
#include <engine/system.h>
#include <engine/network.h>
#include <engine/interface.h>
#include <engine/config.h>
#include <engine/memheap.h>
#include <engine/e_system.h>
#include <engine/e_network.h>
#include <engine/e_interface.h>
#include <engine/e_config.h>
#include <engine/e_memheap.h>

#include <mastersrv/mastersrv.h>

Expand Down
8 changes: 4 additions & 4 deletions src/engine/client/ui.c → src/engine/client/ec_ui.c
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
#include <engine/system.h>
#include <engine/interface.h>
#include <engine/config.h>
#include "ui.h"
#include <engine/e_system.h>
#include <engine/e_interface.h>
#include <engine/e_config.h>
#include "ec_ui.h"

/********************************************************
UI
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion src/engine/compression.c → src/engine/e_compression.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
#include "system.h"
#include "e_system.h"
#include <string.h>

/* Format: ESDDDDDD EDDDDDDD EDD... Extended, Data, Sign */
Expand Down
File renamed without changes.
14 changes: 7 additions & 7 deletions src/engine/config.c → src/engine/e_config.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
#include <stdio.h>
#include <stdlib.h>

#include "system.h"
#include "config.h"
#include "e_system.h"
#include "e_config.h"


/* buffered stream for reading lines, should perhaps be something smaller */
Expand Down Expand Up @@ -86,7 +86,7 @@ void config_reset()
#define MACRO_CONFIG_INT(name,def,min,max) config.name = def;
#define MACRO_CONFIG_STR(name,len,def) strncpy(config.name, def, len);

#include "config_variables.h"
#include "e_config_variables.h"

#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR
Expand Down Expand Up @@ -127,7 +127,7 @@ void config_set(const char *line)
#define MACRO_CONFIG_INT(name,def,min,max) { if (strcmp(#name, var_str) == 0) config_set_ ## name (&config, atoi(val_str)); }
#define MACRO_CONFIG_STR(name,len,def) { if (strcmp(#name, var_str) == 0) { config_set_ ## name (&config, val_str); } }

#include "config_variables.h"
#include "e_config_variables.h"

#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR
Expand Down Expand Up @@ -172,7 +172,7 @@ void config_save(const char *filename)
#define MACRO_CONFIG_INT(name,def,min,max) { char str[256]; sprintf(str, "%s=%i%s", #name, config.name, newline); io_write(file, str, strlen(str)); }
#define MACRO_CONFIG_STR(name,len,def) { io_write(file, #name, strlen(#name)); io_write(file, "=", 1); io_write(file, config.name, strlen(config.name)); io_write(file, newline, newline_len); }

#include "config_variables.h"
#include "e_config_variables.h"

#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR
Expand All @@ -185,12 +185,12 @@ void config_save(const char *filename)

#define MACRO_CONFIG_INT(name,def,min,max) int config_get_ ## name (CONFIGURATION *c) { return c->name; }
#define MACRO_CONFIG_STR(name,len,def) const char *config_get_ ## name (CONFIGURATION *c) { return c->name; }
#include "config_variables.h"
#include "e_config_variables.h"
#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR

#define MACRO_CONFIG_INT(name,def,min,max) void config_set_ ## name (CONFIGURATION *c, int val) { if(min != max) { if (val < min) val = min; if (max != 0 && val > max) val = max; } c->name = val; }
#define MACRO_CONFIG_STR(name,len,def) void config_set_ ## name (CONFIGURATION *c, const char *str) { strncpy(c->name, str, len-1); c->name[sizeof(c->name)-1] = 0; }
#include "config_variables.h"
#include "e_config_variables.h"
#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR
6 changes: 3 additions & 3 deletions src/engine/config.h → src/engine/e_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ typedef struct
{
#define MACRO_CONFIG_INT(name,def,min,max) int name;
#define MACRO_CONFIG_STR(name,len,def) char name[len];
#include "config_variables.h"
#include "e_config_variables.h"
#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR
} CONFIGURATION;
Expand All @@ -24,13 +24,13 @@ void config_save(const char *filename);

#define MACRO_CONFIG_INT(name,def,min,max) int config_get_ ## name (CONFIGURATION *c);
#define MACRO_CONFIG_STR(name,len,def) const char *config_get_ ## name (CONFIGURATION *c);
#include "config_variables.h"
#include "e_config_variables.h"
#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR

#define MACRO_CONFIG_INT(name,def,min,max) void config_set_ ## name (CONFIGURATION *c, int val);
#define MACRO_CONFIG_STR(name,len,def) void config_set_ ## name (CONFIGURATION *c, const char *str);
#include "config_variables.h"
#include "e_config_variables.h"
#undef MACRO_CONFIG_INT
#undef MACRO_CONFIG_STR

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
#include "../game/game_variables.h"
#include "../game/g_variables.h"


MACRO_CONFIG_STR(player_name, 32, "nameless tee")
Expand Down
4 changes: 2 additions & 2 deletions src/engine/datafile.c → src/engine/e_datafile.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */
#include "system.h"
#include "datafile.h"
#include "e_system.h"
#include "e_datafile.h"
#include "external/zlib/zlib.h"

static const int DEBUG=0;
Expand Down
File renamed without changes.
File renamed without changes.
6 changes: 3 additions & 3 deletions src/engine/engine.c → src/engine/e_engine.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
#include <string.h>
#include <stdio.h>

#include <engine/system.h>
#include <engine/interface.h>
#include <engine/config.h>
#include <engine/e_system.h>
#include <engine/e_interface.h>
#include <engine/e_config.h>

static char application_save_path[512] = {0};

Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion src/engine/interface.h → src/engine/e_interface.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ extern "C" {
Title: Engine Interface
*/

#include "keys.h"
#include "e_keys.h"

enum
{
Expand Down
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit a2566b3

Please sign in to comment.