diff --git a/src/sbbs3/startup.h b/src/sbbs3/startup.h index f04300ff6f86b13ad57fe670a4627a7b785358e5..6f85b30afbd20251dee20d1f819c2faf268d2361 100644 --- a/src/sbbs3/startup.h +++ b/src/sbbs3/startup.h @@ -35,6 +35,9 @@ * Note: If this box doesn't appear square, then you need to fix your tabs. * ****************************************************************************/ +#ifndef _STARTUP_H_ +#define _STARTUP_H_ + #ifdef _WIN32 #include <windows.h> #endif @@ -103,3 +106,42 @@ typedef struct { #define BBS_OPT_LOCAL_TIMEZONE (1<<30) /* Don't force UCT/GMT */ #define BBS_OPT_MUTE (1<<31) /* Mute sounds */ +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef DLLEXPORT +#undef DLLEXPORT +#endif +#ifdef DLLCALL +#undef DLLCALL +#endif + +#ifdef _WIN32 + #ifdef SBBS_EXPORTS + #define DLLEXPORT __declspec(dllexport) + #else + #define DLLEXPORT __declspec(dllimport) + #endif + #ifdef __BORLANDC__ + #define DLLCALL __stdcall + #else + #define DLLCALL + #endif +#else + #define DLLEXPORT + #define DLLCALL +#endif + +/* arg is pointer to static bbs_startup_t* */ +DLLEXPORT void DLLCALL bbs_thread(void* arg); +DLLEXPORT void DLLCALL bbs_terminate(void); +DLLEXPORT const char* DLLCALL js_ver(void); +DLLEXPORT const char* DLLCALL bbs_ver(void); +DLLEXPORT long DLLCALL bbs_ver_num(void); + +#ifdef __cplusplus +} +#endif + +#endif /* Don't add anything after this line */