Skip to content

Instantly share code, notes, and snippets.

View terickson001's full-sized avatar

Tyler Erickson terickson001

View GitHub Profile
@terickson001
terickson001 / AndroidManifest.xml
Created March 18, 2024 08:12
Basic Watch Face
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-feature android:name="android.hardware.type.watch" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.permission.PROVIDE_BACKGROUND" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application
@terickson001
terickson001 / index.cpp
Last active March 5, 2024 20:20
Optional Semicolons for Odin in 4coder
function Code_Index_Nest *odin_parse_statement(Code_Index_File *index, Generic_Parse_State *state)
{
Token *token = token_it_read(&state->it);
Code_Index_Nest *result = push_array_zero(state->arena, Code_Index_Nest, 1);
result->kind = CodeIndexNest_Statement;
result->open = Ii64(token->pos);
result->close = Ii64(max_i64);
result->file = index;
u8 check_buffer[1024] = {0};
buffer_read_range(state->app, index->buffer, Ii64(token), check_buffer);
@terickson001
terickson001 / main.odin
Last active May 2, 2024 17:40
vulkan-tutorial example in Odin
import "shared:shaderc"
import "vendor:glfw"
import vk "vendor:vulkan"
MAX_FRAMES_IN_FLIGHT :: 2
Context :: struct
{
instance: vk.Instance,
@terickson001
terickson001 / curl.odin
Created August 23, 2021 01:30
libCURL bindings generated with bind-odin
package curl
import _c "core:c"
/* Macros */
SOCKET_BAD :: -1;
SSLBACKEND_LIBRESSL :: SSLBACKEND_OPENSSL;
SSLBACKEND_BORINGSSL :: SSLBACKEND_OPENSSL;
SSLBACKEND_CYASSL :: SSLBACKEND_WOLFSSL;
@terickson001
terickson001 / sdl_net.odin
Last active March 8, 2021 04:01
SDL2_net bindings generated with bind-odin
package sdl_net
import _c "core:c"
import sdl "shared:sdl"
/* Macros */
MAJOR_VERSION :: 2;
MINOR_VERSION :: 0;
PATCHLEVEL :: 1;
@terickson001
terickson001 / sdl.odin
Last active March 4, 2021 04:20
SDL bindings generated with bind-odin-port
package sdl
import _c "core:c"
/* Macros */
ASSERT_LEVEL :: 2;
SIZEOF_VOIDP :: 8;
HAVE_GCC_ATOMICS :: 1;
HAVE_LIBC :: 1;
@terickson001
terickson001 / GCC.s
Last active September 22, 2020 19:49
Fibonacci C vs. Odin
fib:
.LFB0:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
pushq %rbx
subq $24, %rsp
@terickson001
terickson001 / Windows.odin
Last active June 25, 2021 12:57
Windows.h bindings for Odin. Generated with bind-odin
This file has been truncated, but you can view the full file.
package win32
foreign import kernel32 "system:kernel32.lib";
foreign import user32 "system:user32.lib";
foreign import ole32 "system:ole32.lib";
foreign import shell32 "system:shell32.lib";
foreign import gdi32 "system:gdi32.lib";
foreign import comdlg32 "system:comdlg32.lib";
foreign import bcrypt "system:bcrypt.lib";
foreign import advapi32 "system:advapi32.lib";
@terickson001
terickson001 / Windows.odin
Created July 29, 2019 19:10
Odin bindings for `Windows.h`
This file has been truncated, but you can view the full file.
package win32
foreign import win32 "system:kernel32.lib";
uintptr_t :: u32;
va_list :: cstring;
size_t :: u32;