Skip to content

Instantly share code, notes, and snippets.

@carlynorama
carlynorama / bink_main.s
Created April 14, 2024 22:55
Pulled from bigger project for reference.
.cpu cortex-m0
.fpu softvfp
.thumb
.section .text.program_code
.equ portA_address, 0x41004400
.equ portA_DIRSET, 0x41004400+0x08
.equ portA_OUTTGL, 0x41004400+0x1C
@carlynorama
carlynorama / FixedSizeArray.swift
Last active February 3, 2024 07:09
FixedArray
//
// FixedWidth.swift
// TestingTwo
//
// Created by Carlyn Maw on 2/2/24.
// Inspired by 25:52 of WWDC 2020 "Safely Manage Pointers in Swift."
// In the subscript, using .load(fromByteOffset:as) prevents rebinding of memory for access. This struct can point to memory bound as a different type without overriding.
//TODO: Add tuplebride to help with C
//examples: https://github.com/carlynorama/UnsafeWrapCSampler/blob/main/Sources/Swift/TupleBridge.swift
@carlynorama
carlynorama / AdventOfCode_2023_Day12.swift
Last active December 17, 2023 02:53
Day 12 a la gregtitus. I made a super crazy switch statement in my original code, but when I went back to do the whole memoize dance... someone else had shown you didn't have to! This felt much nicer.
//https://adventofcode.com/2023/day/12
//Based on https://forums.swift.org/t/advent-of-code-2023/68749/61
//Intro video Lydia
//https://www.youtube.com/watch?v=PK3wL7DXuuw
//Compterphile: Computers Without Memory
//https://www.youtube.com/watch?v=vhiiia1_hC4
@carlynorama
carlynorama / String+Int.swift
Last active December 9, 2023 23:18
Int Extraction Sampler
//So MyString[3] just works. Don't use in projects with real input.
extension StringProtocol {
subscript(offset: Int) -> Character {
self[index(startIndex, offsetBy: offset)]
}
}
extension StringProtocol {
//Ignores negative signs.
public extension ClosedRange<Int> {
func crop(by other: ClosedRange<Int>) -> [ClosedRange<Int>] {
//print("cropping...")
guard self.overlaps(other) else {
//return [self]
fatalError("No overlap")
}
print("they overlap")
//
// SwiftUIStyle.swift
//
//
// Created by Carlyn Maw on 8/1/23.
//
import Foundation
//https://talk.objc.io/episodes/S01E225-view-protocols-and-shapes
@carlynorama
carlynorama / vm_setup.sh
Last active July 24, 2023 20:49
Linux-VM History (Labtanza)
sudo apt update
sudo apt upgrade
sudo apt install clang libicu-dev build-essential pkg-config
apt install git gh
apt install libpng-dev
## NOTE THIS WAS DELETED LATER
apt install cmake
mkdir ~/swift
@carlynorama
carlynorama / StringNode.swift
Last active July 17, 2023 17:49
Generic StringNode tree for constructing nested text in Swift, with Result Builder
//
// StringNode.swift
//
//
// Created by Carlyn Maw on 7/16/23.
// MIT License
// https://www.whynotestflight.com/excuses/hello-usd-part-11-gotta-make-it-easier-to-write-file-builders/
public struct Indent {
let count:Int
@carlynorama
carlynorama / rainbow_mesh.usd
Created June 28, 2023 23:08
Rainbow Cube USD examples
#usda 1.0
def Xform "Rainbow"
{
def Mesh "cubeMesh"
{
float3[] extent = [(-2, -2, -2), (2, 2, 2)]
int[] faceVertexCounts = [4, 4, 4, 4, 4, 4]
int[] faceVertexIndices = [0, 1, 2, 3, 4, 5, 6, 7, 0, 6, 5, 1, 4, 7, 3, 2, 0, 3, 7, 6, 4, 2, 1, 5]