diff --git a/4ed_app_target.cpp b/4ed_app_target.cpp index 544c875a..dd6e8d1d 100644 --- a/4ed_app_target.cpp +++ b/4ed_app_target.cpp @@ -11,8 +11,6 @@ #include "4coder_custom.h" -#include "4ed_config.h" - #define BUFFER_EXPERIMENT_SCALPEL 0 #include "4ed_meta.h" @@ -28,8 +26,6 @@ #include "4ed_rendering.h" #include "4ed.h" -#include "4ed_internal.h" - #include "4tech_table.cpp" #define FCPP_LEXER_IMPLEMENTATION diff --git a/4ed_config.h b/4ed_config.h deleted file mode 100644 index 4b09fb1a..00000000 --- a/4ed_config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Mr. 4th Dimention - Allen Webster - * - * 13.11.2014 - * - * Application layer build target - * - */ - -// TOP - -#ifdef FRED_NOT_PACKAGE - -#define FRED_INTERNAL 1 -#define FRED_SLOW 1 - -#define FRED_PRINT_DEBUG 1 -#define FRED_PRINT_DEBUG_FILE_LINE 0 -#define FRED_PROFILING 1 -#define FRED_PROFILING_OS 0 -#define FRED_FULL_ERRORS 0 - -#else - -#define FRED_SLOW 0 -#define FRED_INTERNAL 0 - -#define FRED_PRINT_DEBUG 0 -#define FRED_PRINT_DEBUG_FILE_LINE 0 -#define FRED_PROFILING 0 -#define FRED_PROFILING_OS 0 -#define FRED_FULL_ERRORS 0 - -#endif - -#if FRED_INTERNAL == 0 -#undef FRED_PRINT_DEBUG -#define FRED_PRINT_DEBUG 0 -#undef FRED_PROFILING -#define FRED_PROFILING 0 -#undef FRED_PROFILING_OS -#define FRED_PROFILING_OS 0 -#endif - -#if FRED_PRINT_DEBUG == 0 -#undef FRED_PRINT_DEBUG_FILE_LINE -#define FRED_PRINT_DEBUG_FILE_LINE 0 -#undef FRED_PRINT_DEBUG_FILE_LINE -#define FRED_PROFILING_OS 0 -#endif - -// BOTTOM diff --git a/4ed_internal.h b/4ed_internal.h deleted file mode 100644 index f1ec5827..00000000 --- a/4ed_internal.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Mr. 4th Dimention - Allen Webster - * - * 16.05.2015 - * - * Fascilities available for development but not intended for shipping. - * - */ - -// TOP - -#if FRED_INTERNAL == 1 - -struct Sys_Bubble : public Bubble{ - i32 line_number; - char *file_name; -}; - -#else - -#endif - -// BOTTOM - diff --git a/4ed_math.cpp b/4ed_math.cpp index 86919308..cb49e7c0 100644 --- a/4ed_math.cpp +++ b/4ed_math.cpp @@ -9,17 +9,16 @@ // TOP +#define C_MATH 1 + /* * Scalar operators */ -#define C_MATH 1 - #define DEG_TO_RAD 0.0174533f #if C_MATH #include -#endif inline f32 ABS(f32 x){ @@ -27,7 +26,6 @@ ABS(f32 x){ return x; } -#if C_MATH inline f32 MOD(f32 x, i32 m){ f32 whole, frac; @@ -428,39 +426,6 @@ rotate(Vec2 v, real32 theta_degrees){ return result; } -#if 0 -/* - * Coordinates - */ - -struct Matrix2{ - Vec2 x_axis; - Vec2 y_axis; -}; - -internal Matrix2 -invert(Vec2 x_axis, Vec2 y_axis){ - Matrix2 result = {}; - real32 det = 1.f / (x_axis.x*y_axis.y - x_axis.y*y_axis.x); - result.x_axis.x = y_axis.y*det; - result.y_axis.x = -y_axis.x*det; - result.x_axis.y = -x_axis.y*det; - result.y_axis.y = x_axis.x*det; - return result; -} - -internal Matrix2 -invert(Matrix2 m){ - Matrix2 result = {}; - real32 det = 1.f / (m.x_axis.x*m.y_axis.y - m.x_axis.y*m.y_axis.x); - result.x_axis.x = m.y_axis.y*det; - result.y_axis.x = -m.y_axis.x*det; - result.x_axis.y = -m.x_axis.y*det; - result.y_axis.y = m.x_axis.x*det; - return result; -} -#endif - /* * Lerps, Clamps, Thresholds, Etc */ @@ -509,7 +474,7 @@ clamp(f32 a, f32 n, f32 z){ */ // TODO(allen): Convert colors to Vec4 -inline internal u32 +inline u32 color_blend(u32 a, real32 t, u32 b){ union{ u8 byte[4]; @@ -527,7 +492,7 @@ color_blend(u32 a, real32 t, u32 b){ return R.comp; } -internal Vec3 +inline Vec3 unpack_color3(u32 color){ Vec3 result; result.r = ((color >> 16) & 0xFF) / 255.f; @@ -536,7 +501,7 @@ unpack_color3(u32 color){ return result; } -internal Vec4 +inline Vec4 unpack_color4(u32 color){ Vec4 result; result.a = ((color >> 24) & 0xFF) / 255.f; @@ -546,7 +511,7 @@ unpack_color4(u32 color){ return result; } -internal u32 +inline u32 pack_color4(Vec4 color){ u32 result = ((u8)(color.a * 255) << 24) | diff --git a/4ed_meta.h b/4ed_meta.h index 77bfbdde..c899630e 100644 --- a/4ed_meta.h +++ b/4ed_meta.h @@ -57,57 +57,23 @@ raw_ptr_dif(void *a, void *b) { return (i32)((u8*)a - (u8*)b); } #define S_(X) S(X) #define S__LINE__ S_(__LINE__) -#if FRED_PRINT_DEBUG == 1 -internal void -_OutDbgStr(u8*); -# include -# if FRED_PRINT_DEBUG_FILE_LINE -# define FredDbg(con, size, ...) {_OutDbgStr((u8*)("FILE:"__FILE__"LINE:"S__LINE__"\n")); char msg[size]; sprintf(msg, __VA_ARGS__); _OutDbgStr((u8*)msg);} -# else -# define FredDbg(con, size, ...) {char msg[size]; sprintf(msg, __VA_ARGS__); _OutDbgStr((u8*)msg);} -# endif -#elif FRED_PRINT_DEBUG == 2 -# include -# if FRED_PRINT_DEBUG_FILE_LINE -# define FredDbg(con, size, ...) {fprintf((con)->log, ("FILE:"__FILE__"LINE:"S__LINE__"\n")); fprintf(__VA_ARGS__);} -# else -# define FredDbg(con, size, ...) {fprintf((con)->log, __VA_ARGS__);} -# endif -#else -# define FredDbg(con, size, ...) -#endif - -#if FRED_INTERNAL && FRED_FULL_ERRORS -# include -# define FatalErrorFormat(alt, size, ...) {char msg[size]; sprintf(msg, __VA_ARGS__); FatalError(msg);} -#else -# define FatalErrorFormat(alt, size, ...) {FatalError(alt);} -#endif - -#if FRED_SLOW +#if FRED_INTERNAL || FRED_KEEP_ASSERT # define Assert(c) assert(c) #else # define Assert(c) #endif - #define TentativeAssert(c) Assert(c) #define NotImplemented Assert(!"This is not implemented yet!") -#define FatalError(message) system_fatal_error((u8*)message) - #define AllowLocal(name) (void)name #ifndef ArrayCount -#define ArrayCount(array) (sizeof(array)/sizeof(array[0])) +# define ArrayCount(array) (sizeof(array)/sizeof(array[0])) #endif #define OffsetOfStruct(S,c) ((i64)(& ((S*)0)->c )) #define OffsetOfPtr(s,c) ((i64)((char*)(&(s)->c) - (char*)(s))) #define Swap(T,a,b) do{ T t = a; a = b; b = t; } while(0) -#ifndef literal -#define literal(s) s, (sizeof(s)-1) -#endif - #define Min(a,b) (((a)<(b))?(a):(b)) #define Max(a,b) (((a)>(b))?(a):(b)) @@ -184,15 +150,6 @@ LargeRoundUp(i32 x, i32 granularity){ #define Bit_30 (1 << 30) #define Bit_31 (1 << 31) -#define Byte_0 (0xFFU) -#define Byte_1 (0xFFU << 8) -#define Byte_2 (0xFFU << 16) -#define Byte_3 (0xFFU << 24) -#define Byte_4 (0xFFU << 32) -#define Byte_5 (0xFFU << 40) -#define Byte_6 (0xFFU << 48) -#define Byte_7 (0xFFU << 56) - #define bytes(n) (n) #define Kbytes(n) ((n) << 10) #define Mbytes(n) ((n) << 20) diff --git a/build.bat b/build.bat index d796a480..93eb7560 100644 --- a/build.bat +++ b/build.bat @@ -1,5 +1,5 @@ @echo off REM "build_exp.bat" /Zi -"build_all.bat" /DFRED_SUPER /DFRED_NOT_PACKAGE /Zi +"build_all.bat" /DFRED_SUPER /DFRED_INTERNAL /Zi REM "build_all.bat" /O2 /Zi diff --git a/package.bat b/package.bat index c24546fe..f09b8923 100644 --- a/package.bat +++ b/package.bat @@ -8,7 +8,7 @@ pushd W:\4ed\code ..\meta\readmegen -call "build_all.bat" /O2 +call "build_all.bat" /O2 /DFRED_KEEP_ASSERT copy ..\build\4ed.exe ..\current_dist\4coder\* copy ..\build\4ed.pdb ..\current_dist\4coder\* copy ..\build\4ed_app.dll ..\current_dist\4coder\* @@ -20,7 +20,7 @@ del ..\current_dist\SUPERREADME.txt del ..\current_dist\4coder\basic.cpp del ..\current_dist\4coder\.4coder_settings -call "build_all.bat" /O2 /DFRED_SUPER +call "build_all.bat" /O2 /DFRED_SUPER /DFRED_KEEP_ASSERT copy ..\build\4ed.exe ..\current_dist_super\4coder\* copy ..\build\4ed.pdb ..\current_dist_super\4coder\* copy ..\build\4ed_app.dll ..\current_dist_super\4coder\* diff --git a/win32_4ed.cpp b/win32_4ed.cpp index 2144b406..5b29d9ec 100644 --- a/win32_4ed.cpp +++ b/win32_4ed.cpp @@ -14,8 +14,6 @@ #undef exec_command_keep_stack #undef clear_parameters -#include "4ed_config.h" - #include "4ed_meta.h" #define FCPP_FORBID_MALLOC @@ -27,8 +25,6 @@ #include "4ed_mem.cpp" #include "4ed_math.cpp" -#include "4ed_dll_reader.h" - #include #include "4ed_system.h" @@ -38,10 +34,17 @@ #include #include -#include "4ed_dll_reader.cpp" -#include "4ed_internal.h" #include "system_shared.h" +#if FRED_INTERNAL + +struct Sys_Bubble : public Bubble{ + i32 line_number; + char *file_name; +}; + +#endif + #define FPS 60 #define frame_useconds (1000000 / FPS) @@ -70,6 +73,11 @@ struct Thread_Group{ #define UseWinDll 1 +#if UseWinDll == 0 +#include "4ed_dll_reader.h" +#include "4ed_dll_reader.cpp" +#endif + struct Control_Keys{ b8 l_ctrl; b8 r_ctrl; @@ -1166,7 +1174,7 @@ Win32LoadSystemCode(){ win32vars.system->acquire_lock = system_acquire_lock; win32vars.system->release_lock = system_release_lock; -#ifdef FRED_NOT_PACKAGE +#ifdef FRED_INTERNAL win32vars.system->internal_sentinel = INTERNAL_system_sentinel; win32vars.system->internal_get_thread_states = INTERNAL_get_thread_states; win32vars.system->internal_debug_message = INTERNAL_system_debug_message; @@ -1790,11 +1798,6 @@ UpdateLoop(LPVOID param){ return(0); } -// TODO(allen): What is this doing here? -#ifndef FRED_NOT_PACKAGE -#include -#endif - #define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242 #define GL_DEBUG_OUTPUT 0x92E0 @@ -1923,7 +1926,7 @@ int main(int argc, char **argv){ #ifdef FRED_SUPER char *custom_file_default = "4coder_custom.dll"; - char *custom_file; + char *custom_file = 0; if (win32vars.settings.custom_dll) custom_file = win32vars.settings.custom_dll; else custom_file = custom_file_default; @@ -1940,7 +1943,7 @@ int main(int argc, char **argv){ if (win32vars.custom_api.get_alpha_4coder_version == 0 || win32vars.custom_api.get_alpha_4coder_version(MAJOR, MINOR, PATCH) == 0){ - printf("Error: application and custom version numbers don't match"); + OutputDebugStringA("Error: application and custom version numbers don't match"); return 22; } win32vars.custom_api.get_bindings = (Get_Binding_Data_Function*)