Skip to content

Instantly share code, notes, and snippets.

@greg76
greg76 / helloworld.asm
Created June 29, 2025 12:42
C64 assembly hello world
;
; assembly example to write a message on the Commodore 64 screen
;
; address of the basic loader. the RUN command is looking for the first instruction here.
; the assembly code should be compiled to start here as well, so it can be run with a sys command
*=$0801
; this is the basic loader, this is mimicing of jumping in to the assembly code with a sys command
!byte $0c,$08,$b5,$07,$9e,$20,$32,$30,$36,$32,$00,$00,$00
@greg76
greg76 / boids.py
Last active December 5, 2023 10:55
simple demonstration of boids
"""\
Boids is an artificial life program, which simulates the flocking behaviour of birds, and related group motion.
Some resources I'd recommend if you wanted to learn more about boids:
* https://en.wikipedia.org/wiki/Boids
* https://people.ece.cornell.edu/land/courses/ece4760/labs/s2021/Boids/Boids.html
* http://www.red3d.com/cwr/boids/
This is my quick excercise to make a simplified, 2d, retro inspiried implementation.
"""
@greg76
greg76 / race.py
Created November 4, 2022 12:46
emojie animals racing in the terminal
import os
import time
import random
animals = "🐅🐆🦓🦣🐘🦛🦏🐪🦒🦘🦬🐃🐂🐄🐎🐖🐏🦙🐐🦌🐕🐈🐓🐇🦝"
#animals = "🐶🐱🐭🐰🦊🐻🐼🦁🐯🐨🐻🐮"
width = os.get_terminal_size().columns - 2
pos = [width] * len(animals)
@greg76
greg76 / bootstrap.sh
Last active December 5, 2023 10:27 — forked from GrfxGuru/bootstrap_mac.sh
Bootstrap for setting up a new macOS machine
#!/usr/bin/env bash
#
# Bootstrap script for setting up a macOS machine
#
# Requires xcode and tools!
xcode-select -p || exit "XCode must be installed! (use the app store)"
echo "Starting bootstrapping"
@greg76
greg76 / panic.py
Created March 31, 2022 15:18
check the time of the last kernel panic on you mac
import os
import datetime
with os.popen("nvram -p") as out:
ts_line = next((line for line in out.readlines() if line.startswith("panicmedic-timestamps")), None)
if ts_line:
ts_hex = ts_line.split("\t")[-1]
ts_int = int(ts_hex, 16)
ts = datetime.datetime.fromtimestamp(ts_int // 1000000)
print(f"Last kernel panic: {ts}")
@greg76
greg76 / wordle.py
Last active February 14, 2022 09:42
what are the best words to start wordle with?
import collections
with open("words.txt") as f:
# let's read the words from the file, but ignore anything that ends with s
# just to remove plurals
words = [line.strip() for line in f.read().splitlines() if line[4] != "s"]
# how often the different letter occur?
occurances = collections.Counter()
for word in words:
@greg76
greg76 / homebrew-top.py
Last active September 14, 2021 18:09
fastest growing homebrew packages
import locale
import requests
import tabulate
locale.setlocale(locale.LC_ALL, "en_US")
# available snapshots: 30, 90, 365 days
data_ranges = {"new": 30, "old": 90}
@greg76
greg76 / tilted-chessboard.py
Last active May 18, 2020 06:02
recreated a tiny effect in python. for the lulz.
import pyxel
class Intro:
def __init__(self):
pyxel.init(160, 120, caption="Greg was here")
self.timer = 0
pyxel.run(self.update, self.draw)
def update(self):
@greg76
greg76 / emoji_terrain.py
Created March 21, 2020 22:18
terrain generation
import random
import math
size = (40, 25)
field_types = "🏔⛰🌲🌳🌴🏜🌊"
def voronoi_map():
no_seeds = 20
seeds = [
{
@greg76
greg76 / matrix.py
Last active January 25, 2020 16:09
simple code rain effect from the movie Matrix
import random
import pyxel
class Matrix:
def __init__(self):
pyxel.init(160, 120, caption="there's no spoon")
self.loop = 0
self.width = pyxel.width // 4