base: cleanup

This commit is contained in:
luboslenco
2026-04-05 23:53:54 +02:00
parent 142045f510
commit 0ef40c4702
9 changed files with 48 additions and 28 deletions
+32 -2
View File
@@ -23,7 +23,7 @@ char *hlsl_to_bin(char *source, char *shader_type, char *to) {
ID3DBlob *error_message;
ID3DBlob *shader_buffer;
UINT flags = D3DCOMPILE_OPTIMIZATION_LEVEL3 | D3DCOMPILE_PACK_MATRIX_COLUMN_MAJOR;
UINT flags = D3DCOMPILE_OPTIMIZATION_LEVEL3;
HRESULT hr = D3DCompile(source, strlen(source) + 1, NULL, NULL, NULL, "main", type, flags, 0, &shader_buffer, &error_message);
if (hr != S_OK) {
printf("%s\n", (char *)error_message->lpVtbl->GetBufferPointer(error_message));
@@ -77,7 +77,6 @@ void kong_compile(char *shader_lang, const char *from, const char *to) {
names_init();
types_init();
functions_init();
globals_init();
tokens tokens = tokenize(from, data);
parse(from, &tokens);
resolve_types();
@@ -223,3 +222,34 @@ int ashader(char *shader_lang, char *from, char *to) {
kong_compile(shader_lang, from, to);
return 0;
}
#ifdef IRON_WINDOWS
void iron_microsoft_format(const char *format, va_list args, wchar_t *buffer) {
char cbuffer[4096];
vsprintf(cbuffer, format, args);
MultiByteToWideChar(CP_UTF8, 0, cbuffer, -1, buffer, 4096);
}
#endif
void iron_log_args(iron_log_level_t level, const char *format, va_list args) {
#ifdef IRON_WINDOWS
wchar_t buffer[4096];
iron_microsoft_format(format, args, buffer);
wcscat(buffer, L"\r\n");
OutputDebugStringW(buffer);
DWORD written;
WriteConsoleW(GetStdHandle(level == IRON_LOG_LEVEL_INFO ? STD_OUTPUT_HANDLE : STD_ERROR_HANDLE), buffer, (DWORD)wcslen(buffer), &written, NULL);
#else
char buffer[4096];
vsnprintf(buffer, 4090, format, args);
strcat(buffer, "\n");
fprintf(level == IRON_LOG_LEVEL_INFO ? stdout : stderr, "%s", buffer);
#endif
}
void iron_log(const char *format, ...) {
va_list args;
va_start(args, format);
iron_log_args(IRON_LOG_LEVEL_INFO, format == NULL ? "null" : format, args);
va_end(args);
}