From 85c221f39b9ac0217882c70fbbdae2f1470ff5ad Mon Sep 17 00:00:00 2001 From: Mark Sowden Date: Sun, 3 Dec 2023 23:49:24 +0000 Subject: [PATCH] Update all references of hosae to new name. --- .clang-format | 16 ++++------ .github/workflows/build-linux-gcc_x64.yml | 2 +- .github/workflows/build-windows-gcc_x64.yml | 2 +- CMakeLists.txt | 14 ++++---- engine/CMakeLists.txt | 24 +++++++------- engine/ape/ape.h | 2 +- engine/app.cpp | 26 +++++++-------- engine/app.h | 2 +- engine/client/cl_input.cpp | 2 +- engine/client/cl_main.cpp | 20 ++++++------ engine/client/cl_parse.cpp | 2 +- engine/client/cl_scrn.cpp | 8 ++--- engine/client/cl_view.cpp | 8 ++--- engine/client/keys.cpp | 2 +- engine/client/menu.cpp | 2 +- engine/client/qmenu.cpp | 8 ++--- engine/client/renderer/material.h | 2 +- engine/client/renderer/ref_gl/gl_image.cpp | 6 ++-- engine/client/renderer/ref_gl/gl_model.cpp | 32 +++++++++---------- engine/client/renderer/ref_gl/gl_rmain.cpp | 4 +-- .../renderer/ref_gl/gl_shader_manager.cpp | 12 +++---- .../renderer/ref_gl/gl_shader_manager.h | 2 +- engine/client/renderer/shader_manager.cpp | 2 +- engine/client/renderer/shader_manager.h | 4 +-- engine/input.cpp | 6 ++-- engine/server/sv_main.cpp | 6 ++-- engine/server/sv_send.cpp | 2 +- engine/system.cpp | 4 +-- game/CMakeLists.txt | 4 +-- game/g_spawn.cpp | 6 ++-- game/q_shared.h | 4 +-- qcommon/common.cpp | 8 ++--- qcommon/include/qcommon/math_vector.h | 4 +-- qcommon/net_chan.cpp | 8 ++--- qcommon/qcommon.h | 4 +-- qcommon/qfiles.h | 2 +- readme.md | 4 +-- 37 files changed, 132 insertions(+), 134 deletions(-) diff --git a/.clang-format b/.clang-format index 6fc3be7..a366838 100644 --- a/.clang-format +++ b/.clang-format @@ -1,17 +1,15 @@ -# Generated from CLion C/C++ Code Style settings -BasedOnStyle: LLVM +BasedOnStyle: Microsoft AccessModifierOffset: -4 AlignAfterOpenBracket: Align -#AlignConsecutiveAssignments: AcrossComments AlignConsecutiveBitFields: Consecutive AlignConsecutiveMacros: Consecutive -AlignConsecutiveDeclarations: Consecutive AlignEscapedNewlines: Left AlignTrailingComments: true AlignOperands: true -AllowAllArgumentsOnNextLine: false -AllowAllConstructorInitializersOnNextLine: false -AllowAllParametersOfDeclarationOnNextLine: false +AlignArrayOfStructures: Left +AllowAllArgumentsOnNextLine: true +AllowAllConstructorInitializersOnNextLine: true +AllowAllParametersOfDeclarationOnNextLine: true AllowShortBlocksOnASingleLine: Always AllowShortCaseLabelsOnASingleLine: true AllowShortFunctionsOnASingleLine: All @@ -51,9 +49,9 @@ SpaceInEmptyParentheses: false SpacesBeforeTrailingComments: 0 SpacesInAngles: true SpacesInCStyleCastParentheses: true -SpacesInContainerLiterals: false +SpacesInContainerLiterals: true SpacesInParentheses: true SpacesInSquareBrackets: true TabWidth: 4 -UseTab: AlignWithSpaces +UseTab: ForIndentation SortIncludes: Never diff --git a/.github/workflows/build-linux-gcc_x64.yml b/.github/workflows/build-linux-gcc_x64.yml index 0b013da..252ad21 100644 --- a/.github/workflows/build-linux-gcc_x64.yml +++ b/.github/workflows/build-linux-gcc_x64.yml @@ -27,7 +27,7 @@ jobs: - name: 'Upload Artifact' uses: actions/upload-artifact@v2.2.4 with: - name: hosae-release + name: chronon-release path: release/ retention-days: 30 diff --git a/.github/workflows/build-windows-gcc_x64.yml b/.github/workflows/build-windows-gcc_x64.yml index 9f06bd9..ef8a2be 100644 --- a/.github/workflows/build-windows-gcc_x64.yml +++ b/.github/workflows/build-windows-gcc_x64.yml @@ -37,7 +37,7 @@ jobs: - name: 'Upload Artifact' uses: actions/upload-artifact@v2.2.4 with: - name: hosae-release + name: chronon-release path: release/ retention-days: 30 diff --git a/CMakeLists.txt b/CMakeLists.txt index d56fbed..1dc9e20 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,7 +19,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. cmake_minimum_required(VERSION 3.5.1) -project(hosae) +project(Chronon) set(CMAKE_CXX_STANDARD 20) set(CMAKE_C_STANDARD 11) @@ -66,15 +66,15 @@ add_definitions(-DGIT_BRANCH="${GIT_BRANCH}") ############################################################## -set(HOSAE_OUTPUT_DIR "${CMAKE_SOURCE_DIR}/release/") -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${HOSAE_OUTPUT_DIR}") -set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${HOSAE_OUTPUT_DIR}") +set(CHRONON_OUTPUT_DIR "${CMAKE_SOURCE_DIR}/release/") +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CHRONON_OUTPUT_DIR}") +set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CHRONON_OUTPUT_DIR}") set(CMAKE_SHARED_LIBRARY_PREFIX "") foreach (OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES}) string(TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG) - set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${HOSAE_OUTPUT_DIR}) - set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${HOSAE_OUTPUT_DIR}) - set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${HOSAE_OUTPUT_DIR}) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CHRONON_OUTPUT_DIR}) + set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CHRONON_OUTPUT_DIR}) + set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CHRONON_OUTPUT_DIR}) endforeach (OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES) include_directories(qcommon/include/) diff --git a/engine/CMakeLists.txt b/engine/CMakeLists.txt index ab28ae1..4b9ca96 100644 --- a/engine/CMakeLists.txt +++ b/engine/CMakeLists.txt @@ -43,7 +43,7 @@ elseif (UNIX) ) endif () -add_executable(hosae-engine WIN32 +add_executable(chronon-engine WIN32 app.cpp hunk.cpp input.cpp @@ -122,36 +122,36 @@ add_executable(hosae-engine WIN32 ../3rdparty/glew/src/glew.c ) -set_target_properties(hosae-engine PROPERTIES OUTPUT_NAME hosae) +set_target_properties(chronon-engine PROPERTIES OUTPUT_NAME Chronon) -target_compile_definitions(hosae-engine PRIVATE +target_compile_definitions(chronon-engine PRIVATE GLEW_STATIC ) -target_include_directories(hosae-engine PRIVATE +target_include_directories(chronon-engine PRIVATE ./ ../ ../3rdparty/ ../3rdparty/glew/include/ ) -target_link_libraries(hosae-engine hosae-game) +target_link_libraries(chronon-engine chronon-game) find_package(SDL2 CONFIG) if (${SDL2_FOUND}) - target_link_libraries(hosae-engine ${SDL2_LIBRARIES}) + target_link_libraries(chronon-engine ${SDL2_LIBRARIES}) else () message("Linking against SDL2 in repository.") - target_include_directories(hosae-engine PRIVATE ../3rdparty/sdl2/include/) - target_link_directories(hosae-engine PRIVATE ../3rdparty/sdl2/lib/) - target_link_libraries(hosae-engine SDL2) + target_include_directories(chronon-engine PRIVATE ../3rdparty/sdl2/include/) + target_link_directories(chronon-engine PRIVATE ../3rdparty/sdl2/lib/) + target_link_libraries(chronon-engine SDL2) endif () set(OpenGL_GL_PREFERENCE GLVND) find_package(OpenGL REQUIRED) -target_link_libraries(hosae-engine ${OPENGL_LIBRARIES}) +target_link_libraries(chronon-engine ${OPENGL_LIBRARIES}) if (WIN32) - target_link_libraries(hosae-engine + target_link_libraries(chronon-engine mingw32 Imm32 Setupapi @@ -160,5 +160,5 @@ if (WIN32) Winmm ) elseif (UNIX AND NOT APPLE) - target_link_libraries(hosae-engine X11 Xext dl) + target_link_libraries(chronon-engine X11 Xext dl) endif () diff --git a/engine/ape/ape.h b/engine/ape/ape.h index 4e30524..3f408d9 100644 --- a/engine/ape/ape.h +++ b/engine/ape/ape.h @@ -5,7 +5,7 @@ #include "../client/client.h" -namespace nox::ape +namespace chr::ape { enum class OpCode { diff --git a/engine/app.cpp b/engine/app.cpp index a286119..5fbd0d1 100644 --- a/engine/app.cpp +++ b/engine/app.cpp @@ -31,9 +31,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "client/keys.h" #include "client/input.h" -nox::App *nox::globalApp = nullptr; +chr::App *chr::globalApp = nullptr; -void nox::App::Initialize() +void chr::App::Initialize() { int status = SDL_Init( SDL_INIT_VIDEO | @@ -48,13 +48,13 @@ void nox::App::Initialize() Qcommon_Init( argc_, argv_ ); } -[[noreturn]] void nox::App::Run() +[[noreturn]] void chr::App::Run() { unsigned int time, newTime; unsigned int oldTime = GetNumMilliseconds(); while ( true ) { - nox::globalApp->PollEvents(); + chr::globalApp->PollEvents(); do { @@ -73,7 +73,7 @@ void nox::App::Initialize() unsigned int sys_frame_time = 0;// todo: kill -void nox::App::SendKeyEvents() +void chr::App::SendKeyEvents() { SDL_PumpEvents(); @@ -82,13 +82,13 @@ void nox::App::SendKeyEvents() sys_frame_time = GetNumMilliseconds();// FIXME: should this be at start? } -unsigned int nox::App::GetNumMilliseconds() +unsigned int chr::App::GetNumMilliseconds() { lastMs_ = SDL_GetTicks(); return lastMs_; } -char *nox::App::GetClipboardData() +char *chr::App::GetClipboardData() { if ( !SDL_HasClipboardText() ) { @@ -99,7 +99,7 @@ char *nox::App::GetClipboardData() } bool IN_HandleEvent( const SDL_Event &event ); -void nox::App::PollEvents() +void chr::App::PollEvents() { SDL_Event event; while ( SDL_PollEvent( &event ) ) @@ -140,7 +140,7 @@ void nox::App::PollEvents() /** * This pushes the given string to the native terminal/console. */ -void nox::App::PushConsoleOutput( const char *text ) +void chr::App::PushConsoleOutput( const char *text ) { #if defined( _WIN32 ) && defined( _MSC_VER ) OutputDebugString( text ); @@ -149,7 +149,7 @@ void nox::App::PushConsoleOutput( const char *text ) #endif } -void nox::App::ShowCursor( bool show ) +void chr::App::ShowCursor( bool show ) { SDL_ShowCursor( show ); } @@ -163,9 +163,9 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLin extern "C" int main( int argc, char **argv ) { #endif - nox::globalApp = new nox::App( argc, argv ); + chr::globalApp = new chr::App( argc, argv ); // todo: consider combining these?? - nox::globalApp->Initialize(); - nox::globalApp->Run(); + chr::globalApp->Initialize(); + chr::globalApp->Run(); } diff --git a/engine/app.h b/engine/app.h index c7b7e8f..103b522 100644 --- a/engine/app.h +++ b/engine/app.h @@ -21,7 +21,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #pragma once -namespace nox +namespace chr { class App { diff --git a/engine/client/cl_input.cpp b/engine/client/cl_input.cpp index 511898b..f2df218 100644 --- a/engine/client/cl_input.cpp +++ b/engine/client/cl_input.cpp @@ -475,7 +475,7 @@ void CL_SendCmd( void ) if ( cls.state == ca_connected ) { - if ( cls.netchan.message.cursize || nox::globalApp->GetCurrentMillisecond() - cls.netchan.last_sent > 1000 ) + if ( cls.netchan.message.cursize || chr::globalApp->GetCurrentMillisecond() - cls.netchan.last_sent > 1000 ) Netchan_Transmit( &cls.netchan, 0, buf.data ); return; } diff --git a/engine/client/cl_main.cpp b/engine/client/cl_main.cpp index d1abdbb..c6f70d5 100644 --- a/engine/client/cl_main.cpp +++ b/engine/client/cl_main.cpp @@ -611,7 +611,7 @@ void CL_Disconnect( void ) { int time; - time = nox::globalApp->GetNumMilliseconds() - cl.timedemo_start; + time = chr::globalApp->GetNumMilliseconds() - cl.timedemo_start; if ( time > 0 ) Com_Printf( "%i frames, %3.1f seconds: %3.1f fps\n", cl.timedemo_frames, time / 1000.0, cl.timedemo_frames * 1000.0 / time ); @@ -858,7 +858,7 @@ void CL_Skins_f( void ) continue; Com_Printf( "client %i: %s\n", i, cl.configstrings[ CS_PLAYERSKINS + i ] ); SCR_UpdateScreen(); - nox::globalApp->SendKeyEvents();// pump message loop + chr::globalApp->SendKeyEvents();// pump message loop CL_ParseClientinfo( i ); } } @@ -1443,7 +1443,7 @@ CL_InitLocal void CL_InitLocal( void ) { cls.state = ca_disconnected; - cls.realtime = nox::globalApp->GetNumMilliseconds(); + cls.realtime = chr::globalApp->GetNumMilliseconds(); CL_InitInput(); @@ -1683,7 +1683,7 @@ CL_SendCommand void CL_SendCommand() { // get new key events - nox::globalApp->SendKeyEvents(); + chr::globalApp->SendKeyEvents(); // allow mice or other external controllers to add commands IN_Commands(); @@ -1725,7 +1725,7 @@ void CL_Frame( unsigned int msec ) // decide the simulation time cls.frametime = extratime / 1000.0; cl.time += extratime; - cls.realtime = nox::globalApp->GetCurrentMillisecond(); + cls.realtime = chr::globalApp->GetCurrentMillisecond(); extratime = 0; #if 0 @@ -1738,7 +1738,7 @@ void CL_Frame( unsigned int msec ) // if in the debugger last frame, don't timeout if ( msec > 5000 ) - cls.netchan.last_received = nox::globalApp->GetNumMilliseconds(); + cls.netchan.last_received = chr::globalApp->GetNumMilliseconds(); // fetch results from server CL_ReadPackets(); @@ -1756,10 +1756,10 @@ void CL_Frame( unsigned int msec ) // update the screen if ( host_speeds->value ) - time_before_ref = nox::globalApp->GetNumMilliseconds(); + time_before_ref = chr::globalApp->GetNumMilliseconds(); SCR_UpdateScreen(); if ( host_speeds->value ) - time_after_ref = nox::globalApp->GetNumMilliseconds(); + time_after_ref = chr::globalApp->GetNumMilliseconds(); // update audio S_Update( cl.refdef.vieworg, cl.v_forward, cl.v_right, cl.v_up ); @@ -1780,13 +1780,13 @@ void CL_Frame( unsigned int msec ) { if ( !lasttimecalled ) { - lasttimecalled = nox::globalApp->GetNumMilliseconds(); + lasttimecalled = chr::globalApp->GetNumMilliseconds(); if ( log_stats_file ) fprintf( log_stats_file, "0\n" ); } else { - unsigned int now = nox::globalApp->GetNumMilliseconds(); + unsigned int now = chr::globalApp->GetNumMilliseconds(); if ( log_stats_file ) fprintf( log_stats_file, "%d\n", now - lasttimecalled ); diff --git a/engine/client/cl_parse.cpp b/engine/client/cl_parse.cpp index c33074c..e224789 100644 --- a/engine/client/cl_parse.cpp +++ b/engine/client/cl_parse.cpp @@ -198,7 +198,7 @@ void CL_RegisterSounds( void ) if ( !cl.configstrings[ CS_SOUNDS + i ][ 0 ] ) break; cl.sound_precache[ i ] = S_RegisterSound( cl.configstrings[ CS_SOUNDS + i ] ); - nox::globalApp->SendKeyEvents();// pump message loop + chr::globalApp->SendKeyEvents();// pump message loop } S_EndRegistration(); } diff --git a/engine/client/cl_scrn.cpp b/engine/client/cl_scrn.cpp index c44c333..194efac 100644 --- a/engine/client/cl_scrn.cpp +++ b/engine/client/cl_scrn.cpp @@ -574,7 +574,7 @@ void SCR_BeginLoadingPlaque( void ) else scr_draw_loading = 1; SCR_UpdateScreen(); - cls.disable_screen = nox::globalApp->GetNumMilliseconds(); + cls.disable_screen = chr::globalApp->GetNumMilliseconds(); cls.disable_servercount = cl.servercount; } @@ -629,7 +629,7 @@ void SCR_TimeRefresh_f() return; } - start = nox::globalApp->GetNumMilliseconds(); + start = chr::globalApp->GetNumMilliseconds(); if ( Cmd_Argc() == 2 ) {// run without page flipping @@ -653,7 +653,7 @@ void SCR_TimeRefresh_f() } } - stop = nox::globalApp->GetNumMilliseconds(); + stop = chr::globalApp->GetNumMilliseconds(); time = ( stop - start ) / 1000.0; Com_Printf( "%lf seconds (%lf fps)\n", time, 128 / time ); } @@ -1267,7 +1267,7 @@ void SCR_UpdateScreen() // do nothing at all if ( cls.disable_screen ) { - if ( nox::globalApp->GetNumMilliseconds() - cls.disable_screen > 120000 ) + if ( chr::globalApp->GetNumMilliseconds() - cls.disable_screen > 120000 ) { cls.disable_screen = 0; Com_Printf( "Loading plaque timed out.\n" ); diff --git a/engine/client/cl_view.cpp b/engine/client/cl_view.cpp index 1cae3a5..c6dc57f 100644 --- a/engine/client/cl_view.cpp +++ b/engine/client/cl_view.cpp @@ -290,7 +290,7 @@ void CL_PrepRefresh( void ) if ( name[ 0 ] != '*' ) Com_Printf( "%s\r", name ); SCR_UpdateScreen(); - nox::globalApp->SendKeyEvents();// pump message loop + chr::globalApp->SendKeyEvents();// pump message loop if ( name[ 0 ] == '#' ) { // special player weapon model @@ -318,7 +318,7 @@ void CL_PrepRefresh( void ) for ( i = 1; i < MAX_IMAGES && cl.configstrings[ CS_IMAGES + i ][ 0 ]; i++ ) { cl.image_precache[ i ] = Draw_FindPic( cl.configstrings[ CS_IMAGES + i ] ); - nox::globalApp->SendKeyEvents();// pump message loop + chr::globalApp->SendKeyEvents();// pump message loop } Com_Printf( " \r" ); @@ -328,7 +328,7 @@ void CL_PrepRefresh( void ) continue; Com_Printf( "client %i\r", i ); SCR_UpdateScreen(); - nox::globalApp->SendKeyEvents();// pump message loop + chr::globalApp->SendKeyEvents();// pump message loop CL_ParseClientinfo( i ); Com_Printf( " \r" ); } @@ -461,7 +461,7 @@ void V_RenderView() if ( cl_timedemo->value ) { if ( !cl.timedemo_start ) - cl.timedemo_start = nox::globalApp->GetNumMilliseconds(); + cl.timedemo_start = chr::globalApp->GetNumMilliseconds(); cl.timedemo_frames++; } diff --git a/engine/client/keys.cpp b/engine/client/keys.cpp index 4a5bff1..67b6fe2 100644 --- a/engine/client/keys.cpp +++ b/engine/client/keys.cpp @@ -247,7 +247,7 @@ void Key_Console( int key ) ( ( ( key == K_INS ) || ( key == K_KP_INS ) ) && keydown[ K_SHIFT ] ) ) { char *cbd; - if ( ( cbd = nox::globalApp->GetClipboardData() ) != 0 ) + if ( ( cbd = chr::globalApp->GetClipboardData() ) != 0 ) { int i; diff --git a/engine/client/menu.cpp b/engine/client/menu.cpp index 9e9e5f3..f114c63 100644 --- a/engine/client/menu.cpp +++ b/engine/client/menu.cpp @@ -690,7 +690,7 @@ static void KeyCursorDrawFunc( menuframework_s *menu ) if ( bind_grab ) Draw_Char( menu->x, menu->y + menu->cursor * 9, '=' ); else - Draw_Char( menu->x, menu->y + menu->cursor * 9, 12 + ( ( int ) ( nox::globalApp->GetNumMilliseconds() / 250 ) & 1 ) ); + Draw_Char( menu->x, menu->y + menu->cursor * 9, 12 + ( ( int ) ( chr::globalApp->GetNumMilliseconds() / 250 ) & 1 ) ); } static void DrawKeyBindingFunc( void *self ) diff --git a/engine/client/qmenu.cpp b/engine/client/qmenu.cpp index 97c600c..3093e1c 100644 --- a/engine/client/qmenu.cpp +++ b/engine/client/qmenu.cpp @@ -112,7 +112,7 @@ void Field_Draw( menufield_s *f ) else offset = f->cursor; - if ( ( ( int ) ( nox::globalApp->GetNumMilliseconds() / 250 ) ) & 1 ) + if ( ( ( int ) ( chr::globalApp->GetNumMilliseconds() / 250 ) ) & 1 ) { Draw_Char( f->generic.x + f->generic.parent->x + ( offset + 2 ) * 8 + 8, f->generic.y + f->generic.parent->y, @@ -195,7 +195,7 @@ bool Field_Key( menufield_s *f, int key ) { char *cbd; - if ( ( cbd = nox::globalApp->GetClipboardData() ) != nullptr ) + if ( ( cbd = chr::globalApp->GetClipboardData() ) != nullptr ) { strtok( cbd, "\n\r\b" ); @@ -385,11 +385,11 @@ void Menu_Draw( menuframework_s *menu ) { if ( item->flags & QMF_LEFT_JUSTIFY ) { - Draw_Char( menu->x + item->x - 24 + item->cursor_offset, menu->y + item->y, 12 + ( ( int ) ( nox::globalApp->GetNumMilliseconds() / 250 ) & 1 ) ); + Draw_Char( menu->x + item->x - 24 + item->cursor_offset, menu->y + item->y, 12 + ( ( int ) ( chr::globalApp->GetNumMilliseconds() / 250 ) & 1 ) ); } else { - Draw_Char( menu->x + item->cursor_offset, menu->y + item->y, 12 + ( ( int ) ( nox::globalApp->GetNumMilliseconds() / 250 ) & 1 ) ); + Draw_Char( menu->x + item->cursor_offset, menu->y + item->y, 12 + ( ( int ) ( chr::globalApp->GetNumMilliseconds() / 250 ) & 1 ) ); } } diff --git a/engine/client/renderer/material.h b/engine/client/renderer/material.h index befac18..bf97ab5 100644 --- a/engine/client/renderer/material.h +++ b/engine/client/renderer/material.h @@ -20,7 +20,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. struct image_t; -namespace nox::renderer +namespace chr::renderer { class Pass { diff --git a/engine/client/renderer/ref_gl/gl_image.cpp b/engine/client/renderer/ref_gl/gl_image.cpp index d78ab24..9f2205b 100644 --- a/engine/client/renderer/ref_gl/gl_image.cpp +++ b/engine/client/renderer/ref_gl/gl_image.cpp @@ -220,7 +220,7 @@ gltmode_t gl_solid_modes[] = { void GL_TextureMode( char *string ) { - nox::uint mode; + chr::uint mode; for ( mode = 0; mode < NUM_GL_MODES; mode++ ) { if ( !Q_stricmp( modes[ mode ].name, string ) ) @@ -1230,7 +1230,7 @@ static void Image_LoadTextureInfo() // Copy the string into a temporary buffer without the extension (if there is one) char tmp[ MAX_QPATH ]; - for ( nox::uint i = 0; i < MAX_QPATH - 1; ++i ) + for ( chr::uint i = 0; i < MAX_QPATH - 1; ++i ) { if ( *token == '\0' || *token == '.' ) { @@ -1259,7 +1259,7 @@ static void Image_LoadTextureInfo() */ int Image_GetSurfaceFlagsForName( const std::string &path ) { - auto i = textureSurfaceFlags.find( nox::StringToLower( path ) ); + auto i = textureSurfaceFlags.find( chr::StringToLower( path ) ); if ( i == textureSurfaceFlags.end() ) return 0; diff --git a/engine/client/renderer/ref_gl/gl_model.cpp b/engine/client/renderer/ref_gl/gl_model.cpp index 3a00c50..8199634 100644 --- a/engine/client/renderer/ref_gl/gl_model.cpp +++ b/engine/client/renderer/ref_gl/gl_model.cpp @@ -957,7 +957,7 @@ void Mod_LoadMDAModel( model_t *mod, void *buffer ) void Mod_LoadAliasModel( model_t *mod, void *buffer ) { - auto *aliasModel = new nox::AliasModel(); + auto *aliasModel = new chr::AliasModel(); if ( !aliasModel->LoadFromBuffer( buffer ) ) { Com_Printf( "Failed to load model, \"%s\", from buffer!\n", mod->name ); @@ -975,7 +975,7 @@ void Mod_LoadAliasModel( model_t *mod, void *buffer ) mod->maxs[ 2 ] = 32.0f; mod->extradata = aliasModel; - mod->extradatasize = sizeof( nox::AliasModel ); + mod->extradatasize = sizeof( chr::AliasModel ); mod->numframes = aliasModel->GetNumFrames(); @@ -1119,7 +1119,7 @@ void Mod_Free( model_t *mod ) { if ( mod->type == mod_alias ) { - auto *aliasModel = static_cast< nox::AliasModel * >( mod->extradata ); + auto *aliasModel = static_cast< chr::AliasModel * >( mod->extradata ); delete aliasModel; } else @@ -1148,10 +1148,10 @@ void Mod_FreeAll( void ) //============================================================================= -nox::AliasModel::AliasModel() = default; -nox::AliasModel::~AliasModel() = default; +chr::AliasModel::AliasModel() = default; +chr::AliasModel::~AliasModel() = default; -bool nox::AliasModel::LoadFromBuffer( const void *buffer ) +bool chr::AliasModel::LoadFromBuffer( const void *buffer ) { const dmdl_t *pinmodel = ( dmdl_t * ) buffer; int version = LittleLong( pinmodel->version ); @@ -1214,7 +1214,7 @@ bool nox::AliasModel::LoadFromBuffer( const void *buffer ) return true; } -void nox::AliasModel::LoadSkins( const dmdl_t *mdl, int numSkins ) +void chr::AliasModel::LoadSkins( const dmdl_t *mdl, int numSkins ) { uint ofs = LittleLong( mdl->ofs_skins ); for ( int i = 0; i < numSkins; ++i ) @@ -1226,7 +1226,7 @@ void nox::AliasModel::LoadSkins( const dmdl_t *mdl, int numSkins ) } } -void nox::AliasModel::LoadTriangles( const dmdl_t *mdl ) +void chr::AliasModel::LoadTriangles( const dmdl_t *mdl ) { struct dtriangle_t { @@ -1249,7 +1249,7 @@ void nox::AliasModel::LoadTriangles( const dmdl_t *mdl ) } } -void nox::AliasModel::LoadTaggedTriangles( const dmdl_t *mdl ) +void chr::AliasModel::LoadTaggedTriangles( const dmdl_t *mdl ) { struct MD2TaggedSurface { @@ -1264,7 +1264,7 @@ void nox::AliasModel::LoadTaggedTriangles( const dmdl_t *mdl ) taggedTriangles_.emplace( taggedSurface->name, LittleLong( taggedSurface->triangleIndex ) ); } -void nox::AliasModel::LoadCommands( const dmdl_t *mdl ) +void chr::AliasModel::LoadCommands( const dmdl_t *mdl ) { uint ofs = LittleLong( mdl->ofs_glcmds ); const int *dcmd = ( int * ) ( ( byte * ) mdl + ofs ); @@ -1272,7 +1272,7 @@ void nox::AliasModel::LoadCommands( const dmdl_t *mdl ) glCmds_.push_back( LittleLong( dcmd[ i ] ) ); } -void nox::AliasModel::LoadFrames( const dmdl_t *mdl, int resolution ) +void chr::AliasModel::LoadFrames( const dmdl_t *mdl, int resolution ) { frames_.resize( numFrames_ ); @@ -1380,7 +1380,7 @@ float r_avertexnormal_dots[ SHADEDOT_QUANT ][ 256 ] = { #include "anormtab.h" }; -void nox::AliasModel::LerpVertices( const VertexGroup *v, const VertexGroup *ov, const VertexGroup *verts, Vector3 *lerp, float move[ 3 ], float frontv[ 3 ], float backv[ 3 ] ) const +void chr::AliasModel::LerpVertices( const VertexGroup *v, const VertexGroup *ov, const VertexGroup *verts, Vector3 *lerp, float move[ 3 ], float frontv[ 3 ], float backv[ 3 ] ) const { // PMM -- added RF_SHELL_DOUBLE, RF_SHELL_HALF_DAM if ( currententity->flags & ( RF_SHELL_RED | RF_SHELL_GREEN | RF_SHELL_BLUE | @@ -1405,7 +1405,7 @@ void nox::AliasModel::LerpVertices( const VertexGroup *v, const VertexGroup *ov, } } -void nox::AliasModel::ApplyLighting( const entity_t *e ) +void chr::AliasModel::ApplyLighting( const entity_t *e ) { if ( e->flags & RF_FULLBRIGHT ) { @@ -1477,7 +1477,7 @@ void nox::AliasModel::ApplyLighting( const entity_t *e ) VectorNormalize( shadeVector_ ); } -void nox::AliasModel::DrawFrameLerp( entity_t *e ) +void chr::AliasModel::DrawFrameLerp( entity_t *e ) { // move should be the delta back to the previous frame * backlerp vec3_t delta; @@ -1585,7 +1585,7 @@ void nox::AliasModel::DrawFrameLerp( entity_t *e ) c_alias_polys += numTriangles_; } -void nox::AliasModel::Draw( entity_t *e ) +void chr::AliasModel::Draw( entity_t *e ) { if ( e->frame >= numFrames_ || e->frame < 0 ) { @@ -1646,7 +1646,7 @@ void nox::AliasModel::Draw( entity_t *e ) if ( e->flags & RF_DEPTHHACK ) glDepthRange( gldepthmin, gldepthmax ); } -bool nox::AliasModel::Cull( vec3_t bbox[ 8 ], entity_t *e ) +bool chr::AliasModel::Cull( vec3_t bbox[ 8 ], entity_t *e ) { Frame *frame = &frames_[ e->frame ]; Frame *oldFrame = &frames_[ e->oldframe ]; diff --git a/engine/client/renderer/ref_gl/gl_rmain.cpp b/engine/client/renderer/ref_gl/gl_rmain.cpp index ea6206a..c2c40de 100644 --- a/engine/client/renderer/ref_gl/gl_rmain.cpp +++ b/engine/client/renderer/ref_gl/gl_rmain.cpp @@ -330,7 +330,7 @@ void R_DrawEntitiesOnList() switch ( currentmodel->type ) { case mod_alias: - ( ( nox::AliasModel * ) currentmodel->extradata )->Draw( currententity ); + ( ( chr::AliasModel * ) currentmodel->extradata )->Draw( currententity ); break; case mod_brush: R_DrawBrushModel( currententity ); @@ -369,7 +369,7 @@ void R_DrawEntitiesOnList() switch ( currentmodel->type ) { case mod_alias: - ( ( nox::AliasModel * ) currentmodel->extradata )->Draw( currententity ); + ( ( chr::AliasModel * ) currentmodel->extradata )->Draw( currententity ); break; case mod_brush: R_DrawBrushModel( currententity ); diff --git a/engine/client/renderer/ref_gl/gl_shader_manager.cpp b/engine/client/renderer/ref_gl/gl_shader_manager.cpp index 22feb86..a25631c 100644 --- a/engine/client/renderer/ref_gl/gl_shader_manager.cpp +++ b/engine/client/renderer/ref_gl/gl_shader_manager.cpp @@ -4,16 +4,16 @@ #include "gl_local.h" #include "gl_shader_manager.h" -nox::renderer::gl::ShaderProgram::ShaderProgram() +chr::renderer::gl::ShaderProgram::ShaderProgram() { Q_ZERO( glStages, sizeof( uint32_t ) * Stage::MAX_STAGES ); } -nox::renderer::gl::ShaderProgram::~ShaderProgram() +chr::renderer::gl::ShaderProgram::~ShaderProgram() { } -bool nox::renderer::gl::ShaderProgram::LoadShaderStage( const std::string &path, Stage stage ) +bool chr::renderer::gl::ShaderProgram::LoadShaderStage( const std::string &path, Stage stage ) { assert( glStages[ stage ] == 0 ); if ( glStages[ stage ] != 0 ) @@ -58,7 +58,7 @@ bool nox::renderer::gl::ShaderProgram::LoadShaderStage( const std::string &path, return false; } -void nox::renderer::gl::ShaderProgram::Enable() +void chr::renderer::gl::ShaderProgram::Enable() { assert( glProgram != 0 ); if ( glProgram == 0 ) @@ -69,11 +69,11 @@ void nox::renderer::gl::ShaderProgram::Enable() XGL_CALL( glUseProgram( glProgram ) ); } -void nox::renderer::gl::ShaderProgram::Disable() +void chr::renderer::gl::ShaderProgram::Disable() { XGL_CALL( glUseProgram( 0 ) ); } -void nox::renderer::gl::ShaderProgram::Reload() +void chr::renderer::gl::ShaderProgram::Reload() { } diff --git a/engine/client/renderer/ref_gl/gl_shader_manager.h b/engine/client/renderer/ref_gl/gl_shader_manager.h index faed873..04d3203 100644 --- a/engine/client/renderer/ref_gl/gl_shader_manager.h +++ b/engine/client/renderer/ref_gl/gl_shader_manager.h @@ -5,7 +5,7 @@ #include "../shader_manager.h" -namespace nox::renderer::gl +namespace chr::renderer::gl { class ShaderProgram : public IShaderProgram { diff --git a/engine/client/renderer/shader_manager.cpp b/engine/client/renderer/shader_manager.cpp index a907bda..01059a3 100644 --- a/engine/client/renderer/shader_manager.cpp +++ b/engine/client/renderer/shader_manager.cpp @@ -4,7 +4,7 @@ #include "../client.h" #include "shader_manager.h" -nox::renderer::IShaderProgram *nox::renderer::IShaderManager::FetchProgram( const std::string &name ) +chr::renderer::IShaderProgram *chr::renderer::IShaderManager::FetchProgram( const std::string &name ) { auto i = programs.find( name ); if ( i == programs.end() ) diff --git a/engine/client/renderer/shader_manager.h b/engine/client/renderer/shader_manager.h index 4c06bec..8bf4c7b 100644 --- a/engine/client/renderer/shader_manager.h +++ b/engine/client/renderer/shader_manager.h @@ -3,7 +3,7 @@ #pragma once -namespace nox::renderer +namespace chr::renderer { class IShaderProgram { @@ -35,5 +35,5 @@ namespace nox::renderer std::map< std::string, IShaderProgram * > programs; }; - nox::renderer::IShaderProgram *InitializeShaderManager(); + chr::renderer::IShaderProgram *InitializeShaderManager(); }// namespace nox::renderer diff --git a/engine/input.cpp b/engine/input.cpp index 0ac94e9..9fd8eab 100644 --- a/engine/input.cpp +++ b/engine/input.cpp @@ -186,7 +186,7 @@ static int MapKey( int key ) bool IN_HandleEvent( const SDL_Event &event ) { - sys_msg_time = nox::globalApp->GetNumMilliseconds(); + sys_msg_time = chr::globalApp->GetNumMilliseconds(); switch ( event.type ) { @@ -278,7 +278,7 @@ void IN_ActivateMouse() window_center_x = ( int ) viddef.width / 2; window_center_y = ( int ) viddef.height / 2; - nox::globalApp->ShowCursor( false ); + chr::globalApp->ShowCursor( false ); } /** @@ -293,7 +293,7 @@ void IN_DeactivateMouse() isMouseActive = false; - nox::globalApp->ShowCursor( true ); + chr::globalApp->ShowCursor( true ); } void IN_StartupMouse() diff --git a/engine/server/sv_main.cpp b/engine/server/sv_main.cpp index c3462ba..de53f99 100644 --- a/engine/server/sv_main.cpp +++ b/engine/server/sv_main.cpp @@ -249,7 +249,7 @@ void SVC_GetChallenge( void ) // overwrite the oldest svs.challenges[ oldest ].challenge = rand() & 0x7fff; svs.challenges[ oldest ].adr = net_from; - svs.challenges[ oldest ].time = nox::globalApp->GetCurrentMillisecond(); + svs.challenges[ oldest ].time = chr::globalApp->GetCurrentMillisecond(); i = oldest; } @@ -711,7 +711,7 @@ void SV_PrepWorldFrame( void ) void SV_RunGameFrame( void ) { if ( host_speeds->value ) - time_before_game = nox::globalApp->GetNumMilliseconds(); + time_before_game = chr::globalApp->GetNumMilliseconds(); // we always need to bump framenum, even if we // don't run the world, otherwise the delta @@ -735,7 +735,7 @@ void SV_RunGameFrame( void ) } if ( host_speeds->value ) - time_after_game = nox::globalApp->GetNumMilliseconds(); + time_after_game = chr::globalApp->GetNumMilliseconds(); } /* diff --git a/engine/server/sv_send.cpp b/engine/server/sv_send.cpp index 83e6944..47ef3e7 100644 --- a/engine/server/sv_send.cpp +++ b/engine/server/sv_send.cpp @@ -552,7 +552,7 @@ void SV_SendClientMessages( void ) else { // just update reliable if needed - if ( c->netchan.message.cursize || nox::globalApp->GetCurrentMillisecond() - c->netchan.last_sent > 1000 ) + if ( c->netchan.message.cursize || chr::globalApp->GetCurrentMillisecond() - c->netchan.last_sent > 1000 ) Netchan_Transmit( &c->netchan, 0, NULL ); } } diff --git a/engine/system.cpp b/engine/system.cpp index 9b67305..d5889f4 100644 --- a/engine/system.cpp +++ b/engine/system.cpp @@ -28,7 +28,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "qcommon/qcommon.h" -void nox::Sys_MessageBox( const char *error, MessageBoxType boxType ) +void chr::Sys_MessageBox( const char *error, MessageBoxType boxType ) { uint32_t flags = 0; switch ( boxType ) @@ -56,7 +56,7 @@ void Sys_Error( const char *error, ... ) vsprintf( text, error, argptr ); va_end( argptr ); - Sys_MessageBox( text, nox::MessageBoxType::MB_ERROR ); + Sys_MessageBox( text, chr::MessageBoxType::MB_ERROR ); delete[] text; diff --git a/game/CMakeLists.txt b/game/CMakeLists.txt index 2d28fd9..407dce2 100644 --- a/game/CMakeLists.txt +++ b/game/CMakeLists.txt @@ -17,7 +17,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ]] -add_library(hosae-game STATIC +add_library(chronon-game STATIC g_ai.cpp g_chase.cpp g_cmds.cpp @@ -46,4 +46,4 @@ add_library(hosae-game STATIC q_shared.cpp ) -target_compile_definitions(hosae-game PRIVATE GAME_HARD_LINKED) \ No newline at end of file +target_compile_definitions(chronon-game PRIVATE GAME_HARD_LINKED) \ No newline at end of file diff --git a/game/g_spawn.cpp b/game/g_spawn.cpp index f901655..4fe75ee 100644 --- a/game/g_spawn.cpp +++ b/game/g_spawn.cpp @@ -90,7 +90,7 @@ static const std::map< std::string, EntityCustomClassSpawnFunction > entityTypes static void Spawn_ParseCustomClass( const char *lineDef, size_t lineLength ) { EntityCustomClassDeclaration customClass; - for ( nox::uint i = 0; i < 24; ++i ) + for ( chr::uint i = 0; i < 24; ++i ) { const char *token = Script_Parse( &lineDef, "|\n" ); if ( token == nullptr ) @@ -467,7 +467,7 @@ void ED_ParseField( const char *key, const char *value, edict_t *ent ) { { vec3_t vec; sscanf( value, "%f %f %f", &vec[ 0 ], &vec[ 1 ], &vec[ 2 ] ); - for ( nox::uint i = 0; i < 3; ++i ) + for ( chr::uint i = 0; i < 3; ++i ) { ( ( float * ) ( b + f->ofs ) )[ i ] = vec[ i ]; } @@ -477,7 +477,7 @@ void ED_ParseField( const char *key, const char *value, edict_t *ent ) { { vec4_t vec; sscanf( value, "%f %f %f %f", &vec[ 0 ], &vec[ 1 ], &vec[ 2 ], &vec[ 3 ] ); - for ( nox::uint i = 0; i < 4; ++i ) + for ( chr::uint i = 0; i < 4; ++i ) { ( ( float * ) ( b + f->ofs ) )[ i ] = vec[ i ]; } diff --git a/game/q_shared.h b/game/q_shared.h index 8d90919..161768b 100644 --- a/game/q_shared.h +++ b/game/q_shared.h @@ -57,7 +57,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define idaxp 0 #endif -namespace nox +namespace chr { typedef unsigned int uint; } @@ -207,7 +207,7 @@ void Com_PageInMemory(byte *buffer, int size); # define Q_strdup( A ) strdup( ( A ) ) #endif -namespace nox +namespace chr { inline std::string StringToLower( const std::string &string ) { diff --git a/qcommon/common.cpp b/qcommon/common.cpp index 57efbc5..8c86e4e 100644 --- a/qcommon/common.cpp +++ b/qcommon/common.cpp @@ -115,7 +115,7 @@ void Com_Printf( const char *fmt, ... ) { Con_Print( msg ); // also echo to debugging console - nox::globalApp->PushConsoleOutput( msg ); + chr::globalApp->PushConsoleOutput( msg ); // logfile if( logfile_active && logfile_active->value ) { @@ -1277,18 +1277,18 @@ void Qcommon_Frame( unsigned int msec ) Cbuf_Execute(); unsigned int time_before; - if ( host_speeds->value >= 1.0f ) time_before = nox::globalApp->GetNumMilliseconds(); + if ( host_speeds->value >= 1.0f ) time_before = chr::globalApp->GetNumMilliseconds(); SV_Frame( msec ); unsigned int time_between; - if ( host_speeds->value >= 1.0f ) time_between = nox::globalApp->GetNumMilliseconds(); + if ( host_speeds->value >= 1.0f ) time_between = chr::globalApp->GetNumMilliseconds(); CL_Frame( msec ); if ( host_speeds->value >= 1.0f ) { - unsigned int time_after = nox::globalApp->GetNumMilliseconds(); + unsigned int time_after = chr::globalApp->GetNumMilliseconds(); unsigned int all, sv, gm, cl, rf; all = time_after - time_before; diff --git a/qcommon/include/qcommon/math_vector.h b/qcommon/include/qcommon/math_vector.h index 33de045..df33e78 100644 --- a/qcommon/include/qcommon/math_vector.h +++ b/qcommon/include/qcommon/math_vector.h @@ -21,7 +21,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #pragma once -namespace nox +namespace chr { struct Vector2 { @@ -159,7 +159,7 @@ int VectorCompare( vec3_t v1, vec3_t v2 ); static inline vec_t VectorLength( const vec3_t v ) { float length = 0.0f; - for ( nox::uint i = 0; i < 3; i++ ) + for ( chr::uint i = 0; i < 3; i++ ) length += v[ i ] * v[ i ]; return std::sqrt( length ); diff --git a/qcommon/net_chan.cpp b/qcommon/net_chan.cpp index cdcc909..818b984 100644 --- a/qcommon/net_chan.cpp +++ b/qcommon/net_chan.cpp @@ -92,7 +92,7 @@ Netchan_Init void Netchan_Init (void) { // pick a port value that should be nice and random - unsigned int port = nox::globalApp->GetNumMilliseconds() & 0xffff; + unsigned int port = chr::globalApp->GetNumMilliseconds() & 0xffff; showpackets = Cvar_Get ("showpackets", "0", 0); showdrop = Cvar_Get ("showdrop", "0", 0); @@ -155,7 +155,7 @@ void Netchan_Setup (netsrc_t sock, netchan_t *chan, netadr_t adr, int qport) chan->sock = sock; chan->remote_address = adr; chan->qport = qport; - chan->last_received = nox::globalApp->GetCurrentMillisecond(); + chan->last_received = chr::globalApp->GetCurrentMillisecond(); chan->incoming_sequence = 0; chan->outgoing_sequence = 1; @@ -243,7 +243,7 @@ void Netchan_Transmit (netchan_t *chan, int length, byte *data) w2 = ( chan->incoming_sequence & ~(1<<31) ) | (chan->incoming_reliable_sequence<<31); chan->outgoing_sequence++; - chan->last_sent = nox::globalApp->GetCurrentMillisecond(); + chan->last_sent = chr::globalApp->GetCurrentMillisecond(); MSG_WriteLong (&send, w1); MSG_WriteLong (&send, w2); @@ -378,7 +378,7 @@ bool Netchan_Process (netchan_t *chan, sizebuf_t *msg) // // the message can now be read from the current message pointer // - chan->last_received = nox::globalApp->GetCurrentMillisecond(); + chan->last_received = chr::globalApp->GetCurrentMillisecond(); return true; } diff --git a/qcommon/qcommon.h b/qcommon/qcommon.h index 4ec50b2..fecac96 100644 --- a/qcommon/qcommon.h +++ b/qcommon/qcommon.h @@ -6,7 +6,7 @@ #include "../game/q_shared.h" -#define ENGINE_NAME "hosae" +#define ENGINE_NAME "Chronon" #define ENGINE_VERSION 4.00 #define BASEDIRNAME "anoxdata" @@ -749,7 +749,7 @@ NON-PORTABLE SYSTEM SERVICES ============================================================== */ -namespace nox +namespace chr { enum class MessageBoxType { diff --git a/qcommon/qfiles.h b/qcommon/qfiles.h index 55d8f28..aaeba13 100644 --- a/qcommon/qfiles.h +++ b/qcommon/qfiles.h @@ -161,7 +161,7 @@ typedef struct { typedef struct entity_s entity_t; // TODO: move this... -namespace nox +namespace chr { class AliasModel { diff --git a/readme.md b/readme.md index 7c4abbf..76ac982 100644 --- a/readme.md +++ b/readme.md @@ -1,7 +1,7 @@ # Chronon -[![Build (Windows GCC x64)](https://github.com/hogsy/hosae/actions/workflows/build-windows-gcc_x64.yml/badge.svg)](https://github.com/hogsy/hosae/actions/workflows/build-windows-gcc_x64.yml) -[![Build (Linux GCC x64)](https://github.com/hogsy/hosae/actions/workflows/build-linux-gcc_x64.yml/badge.svg)](https://github.com/hogsy/hosae/actions/workflows/build-linux-gcc_x64.yml) +[![Build (Windows GCC x64)](https://github.com/hogsy/chronon/actions/workflows/build-windows-gcc_x64.yml/badge.svg)](https://github.com/hogsy/hosae/actions/workflows/build-windows-gcc_x64.yml) +[![Build (Linux GCC x64)](https://github.com/hogsy/chronon/actions/workflows/build-linux-gcc_x64.yml/badge.svg)](https://github.com/hogsy/hosae/actions/workflows/build-linux-gcc_x64.yml) ## What is this?