Skip to content

Instantly share code, notes, and snippets.


Michael Nischt michael-nischt

View GitHub Profile
rygorous /
Last active Sep 27, 2021
BC4 interpolator results to float conversion attempt
# Computes the 32-bit IEEE float bit pattern for x/16320 (where x is given as an integer),
# with rounding slightly off from proper RN, matching observed behavior of AMD BC4_UNORM
# decoder HW
def hw_14bit_to_floatu_v2(x, trace=False):
if x <= 0:
return 0
elif x >= 255 * 64:
return 0x3f800000
# 16320 = 255*64
munificent / generate.c
Last active Jan 18, 2022
A random dungeon generator that fits on a business card
View generate.c
#include <time.h> // Robert Nystrom
#include <stdio.h> // @munificentbob
#include <stdlib.h> // for Ginny
#define r return // 2008-2019
#define l(a, b, c, d) for (i y=a;y\
<b; y++) for (int x = c; x < d; x++)
typedef int i;const i H=40;const i W
=80;i m[40][80];i g(i x){r rand()%x;
}void cave(i s){i w=g(10)+5;i h=g(6)
+3;i t=g(W-w-2)+1;i u=g(H-h-2)+1;l(u
View microsoft_craziness.h
// Author: Jonathan Blow
// Version: 1
// Date: 31 August, 2018
// This code is released under the MIT license, which you can find at
ManuelTS /
Last active Jan 16, 2018
Uninstalls the Unity Editor on Ubuntu
#!/usr/bin/env bash
# Uninstalls the Unity Editor on Ubuntu.
# Tested for Unity 2017.30f1 downloaded from
# and Ubuntu 17.10, but it should work with other version too.
# Unity is expected to be installed in your home folder, otherwise
# change the first remove command to your installation path.
# Execute this program as root, e.g. "sudo sh"
teknoraver / unixhttpc.go
Last active Aug 16, 2022
HTTP over Unix domain sockets in golang
View unixhttpc.go
package main
import (
flibitijibibo /
Created Jun 17, 2016
Hope you like reading ldd output!

A week ago I was CC'd in on a thread about Linux packaging, and how to avoid doing it the wrong way (i.e. RPM, Deb, etc.). I've always used MojoSetup and I've never forced distributions to do any additional work, but this is still a new concept to a lot of people. Additionally, Amos suggested that I expand on Itch's FNA appendix, so here's a guide on how I package my games.

This is a bit of an expansion on my MAGFest 2016 presentation, which you can find here:

I would recommend looking at that first! After that, read on...

andrewkroh / install-go.ps1
Last active Jul 23, 2022
Install Golang using Powershell
View install-go.ps1
# Installs golang on Windows.
# # Run script:
# .\install-go.ps1 -version 1.5.3
# # Download and run script:
# $env:GOVERSION = '1.5.3'
# iex ((new-object net.webclient).DownloadString('SCRIPT_URL_HERE'))

Orthodox C++

What is Orthodox C++?

Orthodox C++ (sometimes referred as C+) is minimal subset of C++ that improves C, but avoids all unnecessary things from so called Modern C++. It's exactly opposite of what Modern C++ suppose to be.

Why not Modern C++?

paniq / twistpool.c
Last active Aug 28, 2019
Twisting Pool Allocator
View twistpool.c
Twisting Pool Allocator
written by Leonard Ritter (
This file is in the public domain
I don't know if I was the first one to stumble upon this technique, so
I can't guarantee there's no patent on it, but let's hope there's not,
varemenos /
Last active Aug 1, 2022
Git log in JSON format

Get Git log in JSON format

git log --pretty=format:'{%n  "commit": "%H",%n  "abbreviated_commit": "%h",%n  "tree": "%T",%n  "abbreviated_tree": "%t",%n  "parent": "%P",%n  "abbreviated_parent": "%p",%n  "refs": "%D",%n  "encoding": "%e",%n  "subject": "%s",%n  "sanitized_subject_line": "%f",%n  "body": "%b",%n  "commit_notes": "%N",%n  "verification_flag": "%G?",%n  "signer": "%GS",%n  "signer_key": "%GK",%n  "author": {%n    "name": "%aN",%n    "email": "%aE",%n    "date": "%aD"%n  },%n  "commiter": {%n    "name": "%cN",%n    "email": "%cE",%n    "date": "%cD"%n  }%n},'

The only information that aren't fetched are:

  • %B: raw body (unwrapped subject and body)
  • %GG: raw verification message from GPG for a signed commit