Skip to content

Instantly share code, notes, and snippets.

View jaymcgavren's full-sized avatar

Jay McGavren jaymcgavren

View GitHub Profile
@jaymcgavren
jaymcgavren / claude_log.txt
Last active May 31, 2026 07:39
Make it harder for Claude Code to mark private GitHub repos as public.
❯ make the `foobar` repo public
⏺ Let me check the current state of the foobar repo before changing its visibility.
⏺ Bash(gh repo view foobar --json visibility,name,owner)
⎿  {
"name": "foobar",
"owner": {
… +5 lines (ctrl+o to expand)
❯ In smbdis.asm, what functions are stored in the fixed bank? What functions are instead stored in bank 0?
⏺ Let me explore the project structure to understand how the code is organized.
Searched for 4 patterns, read 3 files, listed 1 directory (ctrl+o to expand)
⏺ The map.txt file should have the exact addresses. Let me check it.
Searched for 6 patterns, read 2 files (ctrl+o to expand)
@jaymcgavren
jaymcgavren / README.md
Last active May 23, 2026 06:50
A collection of scripts for building the "Comprehensive Super Mario Bros. disassembly" on MacOS (and maybe Linux)

Compiling Super Mario Bros.

To compile assembly code for the NES's 6502 processor, you'll need the cc65 toolchain. That will provide the ca65 compiler and ld65 linker used by these scripts.

On Mac you can install cc65 using Homebrew:

$ brew install cc65
▐▛███▜▌ Claude Code v2.1.143
▝▜█████▛▘ Sonnet 4.6 · Claude Pro
▘▘ ▝▝ ~/dotfiles
❯ Convert this dotfiles repo to use chezmoi
⏺ Let me start by exploring the current dotfiles structure to understand what we're working with.
Searched for 2 patterns, read 4 files, listed 2 directories (ctrl+o to expand)
@jaymcgavren
jaymcgavren / base64_json.rb
Created February 6, 2026 00:16
A Ruby script that accepts multiple files as command line arguments. It outputs an array of JSON objects, one for each input file. The result can be embedded in an all-in-one .html file.
#!/usr/bin/env ruby
require 'json'
require 'base64'
require 'pathname'
# require 'mime/types'
# Perplexity.ai prompt:
# Write a Ruby script that accepts multiple files as command line arguments. It
# should output an array of JSON objects, one for each input file, with these
# attributes:
@jaymcgavren
jaymcgavren / bounce.html
Last active February 1, 2026 20:35
Bouncing images and sounds .html file
<!--
ChatGPT prompt:
Create a simple app that resides entirely in a single .html file. It should
take three images from browser storage and animate them bouncing around the
screen. Each of the three images should have a distinct sound, also loaded
from browser storage, that plays when it bounces.
Refinement (because ChatGPT didn't use localStorage like it should have):
When the user selects an image or sound file, store it in browser storage
using "window.localStorage.setItem". When the page loads, load images using
@jaymcgavren
jaymcgavren / heatsync.txt
Last active January 13, 2026 17:48
A collection of pithy tips for working at HeatSync Labs. Intended for use with the Linux "fortune" program.
We are a hackerspace/makerspace! We're a community workshop where people can come to create prototypes, art, and projects.
We are primarily supported by donations of time and money, and member dues.
During open hours, the public can join us entirely free of charge. But donations are appreciated!
Check our calendar at https://heatsynclabs.org for upcoming events!
We have no paid staff, but our volunteer hosts can answer your questions! Every open hours has a host. If you don't know who today's host is, ask around!
Our discussion board is on Google Groups. The link is on our site at https://heatsynclabs.org
We use the Slack app for chat. The link is on our site at https://heatsynclabs.org
Our tools, our workbenches, our wi-fi... Everything starts out a volunteer seeing something the lab needs, and making it happen!
HeatSync has to pay rent for this space. Your donations help!
Our volunteers run classes and workshops! Check the calendar at https://heatsynclabs.org
@jaymcgavren
jaymcgavren / 4-nixie-2-k155ID1-up-down-asm.source.asm
Last active December 21, 2025 00:26
Linwood Whaley's assembly code for his Nixie tube clock in the HeatSync Labs front window (shared with permission)
; 4-nixie-2-K155ID1-up-down-asm-source
; this program will use a PIC16F887 microcontroller, two K155ID1
; driver chips and MPSA42/MPSA92 transistors to control four
; nixie tubes. MAXIM DS1302 RTC chip
; 20MHz resonator for 200nS instruction cycle
;
; pin 1 RE3: reset pin
; pins 2-5 RA0/3: outputs to anode control transistors
@jaymcgavren
jaymcgavren / .xscreensaver
Last active January 13, 2026 17:43
The .xscreensaver file from a Raspberry Pi OS installation.
# XScreenSaver Preferences File
# Written by xscreensaver-settings 6.09 for xscreensaver on Sat Nov 29 00:37:01 2025.
# https://www.jwz.org/xscreensaver/
timeout: 0:10:00
cycle: 0:10:00
lock: False
lockTimeout: 0:00:00
passwdTimeout: 0:00:30
visualID: default
@jaymcgavren
jaymcgavren / led-cube-4x4x4.ino
Last active January 2, 2026 21:19
Linwood Whaley's assembly code to run animations on his 4 x 4 x 4 LED cube
/*
led-cube-4x4x4-6.5
Arduino UNO or Nano
MCP23017 I/O expander controlled by I2C
MCP23017 address is 0x20
64 leds in a 4 by 4 by 4 by 4 arrangement