#include "vg_platform.h"
#include "vg_mem.h"
-
- #ifndef _WIN32
- #include <execinfo.h>
- #endif
-
-VG_STATIC void vg_print_backtrace(void)
-{
-#ifndef _WIN32
-
- void *array[20];
- char **strings;
- int size, i;
-
- size = backtrace( array, 20 );
- strings = backtrace_symbols( array, size );
-
- if( strings != NULL ){
- vg_error( "---------------- gnu backtrace -------------\n" );
-
- for( int i=0; i<size; i++ )
- vg_info( "%s\n", strings[i] );
-
- vg_error( "---------------- gnu backtrace -------------\n" );
- }
-
- free( strings );
-
-#endif
-}
#ifdef VG_GAME
#include "dep/glad/glad.h"
}
}
+VG_STATIC void vg_assert_thread( enum vg_thread_purpose required ){
+ enum vg_thread_purpose purpose = vg_thread_purpose();
+
+ if( purpose != required ){
+ vg_fatal_error( "thread_purpose must be %u not %u\n", required, purpose );
+ }
+}
+
VG_STATIC void _vg_opengl_sync_init(void)
{
vg.sem_loader = SDL_CreateSemaphore(1);
display_index = 0,
mode_index = 0;
-#ifdef VG_DEVWINDOW
- vg.window_x = 1600;
- vg.window_y = 1000;
-#else
-
SDL_DisplayMode video_mode;
if( SDL_GetDesktopDisplayMode( display_index, &video_mode ) ){
vg_error( "SDL_GetDesktopDisplayMode failed: %s\n", SDL_GetError() );
vg.display_refresh_rate = video_mode.refresh_rate;
vg.window_x = video_mode.w;
vg.window_y = video_mode.h;
+
+#ifdef VG_DEVWINDOW
+ vg.window_x = 1200;
+ vg.window_y = 880;
#endif
#ifndef _WIN32
#ifdef VG_DEVWINDOW
0, 0, vg.window_x, vg.window_y,
SDL_WINDOW_BORDERLESS|SDL_WINDOW_OPENGL|SDL_WINDOW_INPUT_GRABBED
- ))){}
+ ))){
+ SDL_SetWindowPosition( vg.window, video_mode.w-vg.window_x, 0 );
+ }
#else
0, 0,
vg.window_x, vg.window_y,
{
va_list args;
va_start( args, fmt );
- _vg_log_write( stderr, KRED " fatal" KWHT "| " KRED, fmt, args );
+ _vg_logx_va( stderr, NULL, "fatal", KRED, fmt, args );
va_end( args );
vg_print_backtrace();
{
va_list args;
va_start( args, fmt );
- _vg_log_write( stderr, KRED " fatal" KWHT "| " KRED, fmt, args );
+ _vg_logx_va( stderr, NULL, "fatal", KRED, fmt, args );
va_end( args );
exit(0);
}
u32 NvOptimusEnablement = 0x00000001;
int AmdPowerXpressRequestHighPerformance = 1;
+#include "vg_log.c"
+
#endif /* VG_HEADER_H */