Skip to content

Instantly share code, notes, and snippets.

@hcs64
hcs64 / firesign-liner-notes.md
Created March 24, 2025 01:23
Eat or Be Eaten Laugh.com liner notes

Eat or Be Eaten, a hilarious and byzantine comedy adventure, is one of the few surviving artifacts of a time when the Firesign Theatre was somehow both blazing a technological trail ten years ahead of their time and nearly breaking up for lack of work.

The four founding members of Firesign--Philip Austin, Peter Bergman, David Ossman, and Philip Proctor--had spent their first ten years as a group on Columbia Records under contract: a handy thing that insured there was a big company paying them to make records. That went away in 1976 when their deal went unrenewed. For five years they scrambled to find new ways to keep the band together. Geographically, they all still lived nearby--Ossman in Santa Barbara, the others in greater Los Angeles--but Firesign only existed as long as they could manage to will it back into being. They did local gigs, they did short national tours, and they recorded a series of EPs and LPs for local indie Rhino Records. Rhino was a reissue label with a big sense of humor but without

@hcs64
hcs64 / dec.py
Created February 1, 2023 21:57
Decode strings from some feelplus games
# Translate feelplus packed strings
# Derived from examples at https://pastebin.com/UkfBaSga
import itertools
import struct
# Unknown char 39 is shown as "{39}"
charset1 = ['{%s}'%(i,) for i in range(40)]
for i in range(10):
@hcs64
hcs64 / a.c
Last active August 9, 2022 19:40
Find and check matching codebooks
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include "vorbis_custom_data_wwise.h"
int main(void) {
#if 1
for (int ai = 0; ai < 0x256; ++ai) {
const wvc_info * ao = &wvc_list_aotuv603[ai];
@hcs64
hcs64 / script.txt
Last active July 4, 2022 08:43
Original Add Man
title Add Man
author Adam Gashlin
homepage gashlin.net
key_repeat_interval 0.5
noaction
========
OBJECTS
========
@hcs64
hcs64 / ucode.asm
Created May 31, 2020 13:35
4bpp and 8bpp conversions
// RSP ucode for converting 2bpp NES to 4bpp and 8bpp N64
// TODO sprite priority
align(8)
scope Ucode: {
InitialDMEM:
pushvar base
base 0x0000
@hcs64
hcs64 / PPU2BPPTile8x8.asm
Created May 13, 2020 05:57
Faster PPU swizzle ucode
// N64 'Bare Metal' 16BPP 272x240 SNES PPU 2BPP Tile 8x8 Demo by krom (Peter Lemon):
// Modified for faster vector ops and benchmark output (count register) by hcs:
arch n64.cpu
endian msb
output "PPU2BPPTile8x8.N64", create
fill 1052672 // Set ROM Size
origin $00000000
base $80000000 // Entry Point Of Code
include "LIB/N64.INC" // Include N64 Definitions
@hcs64
hcs64 / readme.md
Last active October 25, 2018 16:39
Example of using a Rust crate in a binary

This creates a crate called lib_test in toolkit/mozapps/update/rust and links it into the updater.

Because we're only currently allowing one Rust static library per C++ program (see bug 1310063) it may be best to introduce a level of indirection in case we want to include any other Rust in the updater, e.g. an updater_rust crate that just reexports everything. toolkit/library/rust uses this setup.

The lib_test.h file for inclusion in C++ came out of cbindgen, it seems like we manually run that rather than autogenerating as part of the build, you can find some instructions in another such file at source/gfx/webrender_bindings/webrender_ffi_generated.h

Though... we added cbindgen to the build environment, so we may be able to use it to generate a header as in [bug 1478813](https://bugzil

@hcs64
hcs64 / Bugzilla hide by user.user.js
Last active November 15, 2018 18:08
Hide all Bugzilla comments by an author
// ==UserScript==
// @name Bugzilla hide by user
// @description Add a button to hide all comments by a user.
// @author Adam Gashlin <[email protected]>
// @version 4
// @grant none
// @match https://bugzilla.mozilla.org/*
// ==/UserScript==
function quoteCssString(s) {
@hcs64
hcs64 / main.cpp
Last active August 28, 2018 20:54
Fullscreen test
#include <windows.h>
#include <shobjidl.h>
void MarkFullscreen(HWND hWnd, bool fullscreen);
void
Fullscreen(HWND hWnd, bool removeFrame, bool fillScreen, bool less1Width, bool mark)
{
if (removeFrame) {
LONG_PTR style = GetWindowLong(hWnd, GWL_STYLE);
@hcs64
hcs64 / Cargo.toml
Last active July 25, 2018 16:37
Default features test
[package]
name = "cargotest2"
version = "0.1.0"
authors = ["Adam Gashlin <[email protected]>"]
[dependencies]
walkdir = { version = "2.1.4", optional = true }
scoped-pool = { version = "1.0.0", optional = true }
blake2 = { version = "0.7.1", optional = true }
base64 = { version = "0.9.2", optional = true }