game_em/graphics.c \
game_em/init.c \
game_em/input.c \
- game_em/main.c \
- game_em/sound.c \
game_em/synchro_1.c \
game_em/synchro_2.c \
game_em/synchro_3.c \
game_em/tab_generate.c \
- game_em/ulaw_generate.c \
game_sp/init.c \
game_sp/file.c \
game_sp/main.c \
graphics.c \
init.c \
input.c \
- main.c \
- sound.c \
synchro_1.c \
synchro_2.c \
synchro_3.c \
- tab_generate.c \
- ulaw_generate.c
+ tab_generate.c
OBJS = cave.o \
convert.o \
graphics.o \
init.o \
input.o \
- main.o \
- sound.o \
synchro_1.o \
synchro_2.o \
synchro_3.o \
- tab_generate.o \
- ulaw_generate.o
+ tab_generate.o
GAME_EM = game_em.a
#include "main_em.h"
-#define EM_GFX_DIR "graphics.EM"
-#define EM_SND_DIR "sounds.EM"
-#define EM_LVL_DIR "levels.EM"
-
-/* arbitrary maximum length of filenames (cos i am lazy) */
-#define MAXNAME 1024
-
-extern int debug;
-extern char *progname;
-extern char *arg_basedir;
-
extern int frame;
-extern short ulaw_to_linear[256];
-extern unsigned char linear_to_ulaw[65536];
-
/* all global function prototypes */
int open_all(void);
void close_all(void);
void readjoy(byte, struct PLAYER *);
-void input_eventloop(void);
void game_initscreen(void);
+void game_init_vars(void);
void play_sound(int, int, int);
-void sound_play(void);
-
-int cave_convert(char *);
-
-void game_init_vars(void);
-void game_play_init(int, char *);
-void game_loop(byte);
+void play_element_sound(int, int, int, int);
void synchro_1(void);
void synchro_2(void);
void convert_em_level(unsigned char *, int);
void prepare_em_level(void);
-int sound_thread(void);
-int read_sample(char *, short **, int *);
-
-void read_cave_list(void);
-void free_cave_list(void);
-
#endif
Bitmap *screenBitmap;
-char play[SAMPLE_MAX];
-int play_x[SAMPLE_MAX];
-int play_y[SAMPLE_MAX];
-int play_element[SAMPLE_MAX];
-
struct GlobalInfo_EM global_em_info;
struct GameInfo_EM game_em;
-char *progname;
-char *arg_basedir;
-
int open_all(void)
{
Bitmap *emc_bitmaps[2];
/* pre-calculate some data */
tab_generate();
- progname = "emerald mine";
-
if (open_all() != 0)
Error(ERR_EXIT, "em_open_all(): open_all() failed");
play_element_sound(x, y, sample, -1);
}
-void sound_play(void)
-{
-}
-
unsigned int InitEngineRandom_EM(int seed)
{
if (seed == NEW_RANDOMIZE)
if (frame == 6)
{
synchro_3();
- sound_play();
UpdateGameDoorValues_EM();
}
+++ /dev/null
-/* Emerald Mine
- *
- * David Tritscher
- *
- * v0.0 2000-01-06T06:43:39Z
- *
- * set everything up and close everything down
- */
// ============================================================================
#include "global.h"
-#include "sample.h"
// ----------------------------------------------------------------------------
+++ /dev/null
-#ifndef SAMPLE_H
-#define SAMPLE_H
-
-#include "main_em.h"
-
-
-void play_sound(int, int, int);
-void play_element_sound(int, int, int, int);
-
-extern char play[SAMPLE_MAX];
-extern int sound_pipe[2];
-extern short *sound_data[SAMPLE_MAX];
-extern int sound_length[SAMPLE_MAX];
-
-#define MIXER_MAX 4 /* maximum number of samples we can play at once */
-
-#endif /* SAMPLE_H */
+++ /dev/null
-/* 2000-08-10T17:39:15Z
- *
- * handle sounds in emerald mine
- */
-
-#include "main_em.h"
*
* construct some tables to be included directly in emerald mine source.
* i made this because dynamically building the tables every time sucks and i
- * need to be able to easily modify tile.h.
+ * need to be able to easily modify tile definitions.
*
* this is key data which almost everything depends on.
*
+++ /dev/null
-#ifndef TILE_H
-#define TILE_H
-
-#include "main_em.h"
-
-#ifdef EM_ENGINE_BAD_ROLL
-#define BAD_ROLL
-#endif
-
-#ifdef EM_ENGINE_BAD_SPRING
-#define BAD_SPRING
-#endif
-
-
-#if 0
-
-/* 2000-07-30T11:06:03Z
- */
-
-/* define these for backwards compatibility */
-#define BAD_ROLL
-#define BAD_SPRING
-
-enum
-{
- Xblank = 0, /* still */
- Yacid_splash_eB, /* hmm */
- Yacid_splash_wB, /* hmm */
-
-#ifdef BAD_ROLL
- Xstone_force_e, /* only use these in eater */
- Xstone_force_w,
- Xnut_force_e,
- Xnut_force_w,
- Xspring_force_e,
- Xspring_force_w,
- Xemerald_force_e,
- Xemerald_force_w,
- Xdiamond_force_e,
- Xdiamond_force_w,
- Xbomb_force_e,
- Xbomb_force_w,
-#endif
-
- Xstone,
- Xstone_pause,
- Xstone_fall,
- Ystone_s,
- Ystone_sB,
- Ystone_e,
- Ystone_eB,
- Ystone_w,
- Ystone_wB,
- Xnut,
- Xnut_pause,
- Xnut_fall,
- Ynut_s,
- Ynut_sB,
- Ynut_e,
- Ynut_eB,
- Ynut_w,
- Ynut_wB,
- Xbug_n,
- Xbug_e,
- Xbug_s,
- Xbug_w,
- Xbug_gon,
- Xbug_goe,
- Xbug_gos,
- Xbug_gow,
- Ybug_n,
- Ybug_nB,
- Ybug_e,
- Ybug_eB,
- Ybug_s,
- Ybug_sB,
- Ybug_w,
- Ybug_wB,
- Ybug_w_n,
- Ybug_n_e,
- Ybug_e_s,
- Ybug_s_w,
- Ybug_e_n,
- Ybug_s_e,
- Ybug_w_s,
- Ybug_n_w,
- Ybug_stone,
- Ybug_spring,
- Xtank_n,
- Xtank_e,
- Xtank_s,
- Xtank_w,
- Xtank_gon,
- Xtank_goe,
- Xtank_gos,
- Xtank_gow,
- Ytank_n,
- Ytank_nB,
- Ytank_e,
- Ytank_eB,
- Ytank_s,
- Ytank_sB,
- Ytank_w,
- Ytank_wB,
- Ytank_w_n,
- Ytank_n_e,
- Ytank_e_s,
- Ytank_s_w,
- Ytank_e_n,
- Ytank_s_e,
- Ytank_w_s,
- Ytank_n_w,
- Ytank_stone,
- Ytank_spring,
- Xandroid,
- Xandroid_1_n,
- Xandroid_2_n,
- Xandroid_1_e,
- Xandroid_2_e,
- Xandroid_1_w,
- Xandroid_2_w,
- Xandroid_1_s,
- Xandroid_2_s,
- Yandroid_n,
- Yandroid_nB,
- Yandroid_ne,
- Yandroid_neB,
- Yandroid_e,
- Yandroid_eB,
- Yandroid_se,
- Yandroid_seB,
- Yandroid_s,
- Yandroid_sB,
- Yandroid_sw,
- Yandroid_swB,
- Yandroid_w,
- Yandroid_wB,
- Yandroid_nw,
- Yandroid_nwB,
- Xspring,
- Xspring_pause,
- Xspring_e,
- Xspring_w,
- Xspring_fall,
- Yspring_s,
- Yspring_sB,
- Yspring_e,
- Yspring_eB,
- Yspring_w,
- Yspring_wB,
- Yspring_kill_e,
- Yspring_kill_eB,
- Yspring_kill_w,
- Yspring_kill_wB,
- Xeater_n,
- Xeater_e,
- Xeater_w,
- Xeater_s,
- Yeater_n,
- Yeater_nB,
- Yeater_e,
- Yeater_eB,
- Yeater_s,
- Yeater_sB,
- Yeater_w,
- Yeater_wB,
- Yeater_stone,
- Yeater_spring,
- Xalien,
- Xalien_pause,
- Yalien_n,
- Yalien_nB,
- Yalien_e,
- Yalien_eB,
- Yalien_s,
- Yalien_sB,
- Yalien_w,
- Yalien_wB,
- Yalien_stone,
- Yalien_spring,
- Xemerald,
- Xemerald_pause,
- Xemerald_fall,
- Xemerald_shine,
- Yemerald_s,
- Yemerald_sB,
- Yemerald_e,
- Yemerald_eB,
- Yemerald_w,
- Yemerald_wB,
- Yemerald_eat,
- Yemerald_stone,
- Xdiamond,
- Xdiamond_pause,
- Xdiamond_fall,
- Xdiamond_shine,
- Ydiamond_s,
- Ydiamond_sB,
- Ydiamond_e,
- Ydiamond_eB,
- Ydiamond_w,
- Ydiamond_wB,
- Ydiamond_eat,
- Ydiamond_stone,
- Xdrip_fall,
- Xdrip_stretch,
- Xdrip_stretchB,
- Xdrip_eat,
- Ydrip_s1,
- Ydrip_s1B,
- Ydrip_s2,
- Ydrip_s2B,
- Xbomb,
- Xbomb_pause,
- Xbomb_fall,
- Ybomb_s,
- Ybomb_sB,
- Ybomb_e,
- Ybomb_eB,
- Ybomb_w,
- Ybomb_wB,
- Ybomb_eat,
- Xballoon,
- Yballoon_n,
- Yballoon_nB,
- Yballoon_e,
- Yballoon_eB,
- Yballoon_s,
- Yballoon_sB,
- Yballoon_w,
- Yballoon_wB,
- Xgrass,
- Ygrass_nB,
- Ygrass_eB,
- Ygrass_sB,
- Ygrass_wB,
- Xdirt,
- Ydirt_nB,
- Ydirt_eB,
- Ydirt_sB,
- Ydirt_wB,
- Xacid_ne,
- Xacid_se,
- Xacid_s,
- Xacid_sw,
- Xacid_nw,
- Xacid_1,
- Xacid_2,
- Xacid_3,
- Xacid_4,
- Xacid_5,
- Xacid_6,
- Xacid_7,
- Xacid_8,
- Xball_1,
- Xball_1B,
- Xball_2,
- Xball_2B,
- Yball_eat,
- Xgrow_ns,
- Ygrow_ns_eat,
- Xgrow_ew,
- Ygrow_ew_eat,
- Xwonderwall,
- XwonderwallB,
- Xamoeba_1,
- Xamoeba_2,
- Xamoeba_3,
- Xamoeba_4,
- Xamoeba_5,
- Xamoeba_6,
- Xamoeba_7,
- Xamoeba_8,
- Xdoor_1,
- Xdoor_2,
- Xdoor_3,
- Xdoor_4,
- Xdoor_5,
- Xdoor_6,
- Xdoor_7,
- Xdoor_8,
- Xkey_1,
- Xkey_2,
- Xkey_3,
- Xkey_4,
- Xkey_5,
- Xkey_6,
- Xkey_7,
- Xkey_8,
- Xwind_n,
- Xwind_e,
- Xwind_s,
- Xwind_w,
- Xwind_nesw,
- Xwind_stop,
- Xexit,
- Xexit_1,
- Xexit_2,
- Xexit_3,
- Xdynamite,
- Ydynamite_eat,
- Xdynamite_1,
- Xdynamite_2,
- Xdynamite_3,
- Xdynamite_4,
- Xbumper,
- XbumperB,
- Xwheel,
- XwheelB,
- Xswitch,
- XswitchB,
- Xsand,
- Xsand_stone,
- Xsand_stonein_1,
- Xsand_stonein_2,
- Xsand_stonein_3,
- Xsand_stonein_4,
- Xsand_stonesand_1,
- Xsand_stonesand_2,
- Xsand_stonesand_3,
- Xsand_stonesand_4,
- Xsand_stoneout_1,
- Xsand_stoneout_2,
- Xsand_sandstone_1,
- Xsand_sandstone_2,
- Xsand_sandstone_3,
- Xsand_sandstone_4,
- Xplant,
- Yplant,
- Xlenses,
- Xmagnify,
- Xdripper,
- XdripperB,
- Xfake_blank,
- Xfake_blankB,
- Xfake_grass,
- Xfake_grassB,
- Xfake_door_1,
- Xfake_door_2,
- Xfake_door_3,
- Xfake_door_4,
- Xfake_door_5,
- Xfake_door_6,
- Xfake_door_7,
- Xfake_door_8,
- Xsteel_1,
- Xsteel_2,
- Xsteel_3,
- Xsteel_4,
- Xwall_1,
- Xwall_2,
- Xwall_3,
- Xwall_4,
- Xround_wall_1,
- Xround_wall_2,
- Xround_wall_3,
- Xround_wall_4,
- Xdecor_1,
- Xdecor_2,
- Xdecor_3,
- Xdecor_4,
- Xdecor_5,
- Xdecor_6,
- Xdecor_7,
- Xdecor_8,
- Xdecor_9,
- Xdecor_10,
- Xdecor_11,
- Xdecor_12,
- Xalpha_0,
- Xalpha_1,
- Xalpha_2,
- Xalpha_3,
- Xalpha_4,
- Xalpha_5,
- Xalpha_6,
- Xalpha_7,
- Xalpha_8,
- Xalpha_9,
- Xalpha_excla,
- Xalpha_quote,
- Xalpha_comma,
- Xalpha_minus,
- Xalpha_perio,
- Xalpha_colon,
- Xalpha_quest,
- Xalpha_a,
- Xalpha_b,
- Xalpha_c,
- Xalpha_d,
- Xalpha_e,
- Xalpha_f,
- Xalpha_g,
- Xalpha_h,
- Xalpha_i,
- Xalpha_j,
- Xalpha_k,
- Xalpha_l,
- Xalpha_m,
- Xalpha_n,
- Xalpha_o,
- Xalpha_p,
- Xalpha_q,
- Xalpha_r,
- Xalpha_s,
- Xalpha_t,
- Xalpha_u,
- Xalpha_v,
- Xalpha_w,
- Xalpha_x,
- Xalpha_y,
- Xalpha_z,
- Xalpha_arrow_e,
- Xalpha_arrow_w,
- Xalpha_copyr,
-
- Xboom_bug, /* passed from explode to synchro (linked explosion); transition to explode_normal */
- Xboom_bomb, /* passed from explode to synchro (linked explosion); transition to explode_normal */
- Xboom_android, /* passed from explode to synchro; transition to boom_2 */
- Xboom_1, /* passed from explode to synchro; transition to boom_2 */
- Xboom_2, /* transition to boom[] */
-
- Znormal, /* no picture */ /* this tile is passed from synchro to explode, only in next[] */
- Zdynamite, /* no picture */ /* this tile is passed from synchro to explode, only in next[] */
- Zplayer, /* no picture */ /* special code to indicate player */
- ZBORDER, /* no picture */ /* special code to indicate border */
-
- TILE_MAX
-};
-
-enum
-{
- SPR_still = 0,
- SPR_walk = 1,
- SPR_push = 5,
- SPR_spray = 9,
-
- SPR_MAX = 13
-};
-
-#endif
-
-extern unsigned char tab_blank[TILE_MAX];
-extern unsigned char tab_acid[TILE_MAX];
-extern unsigned char tab_amoeba[TILE_MAX];
-extern unsigned char tab_android_move[TILE_MAX];
-extern unsigned short tab_explode_normal[TILE_MAX];
-extern unsigned short tab_explode_dynamite[TILE_MAX];
-
-extern unsigned short map_obj[8][TILE_MAX];
-extern unsigned short map_spr[2][8][SPR_MAX];
-extern unsigned short map_ttl[128];
-
-#endif
+++ /dev/null
-/* 2000-08-10T04:29:10Z
- *
- * generate ulaw<->linear conversion tables to be included
- * directly in emerald mine source
- */
-
-#include "main_em.h"