Skip to content

Instantly share code, notes, and snippets.

View mshroyer's full-sized avatar

Mark Shroyer mshroyer

View GitHub Profile
#!/bin/sh
# From Arch Linux wiki
#xmodmap -e "pointer = 1 8 3 4 5 6 7 2 9 10 11 12 13"
# Based on https://help.ubuntu.com/community/Logitech_Marblemouse_USB, but
# with modifications to the button map and inverted axes for scrolling.
xinput set-button-map "Logitech USB Trackball" 1 8 3 4 5 6 7 2 9
xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation Button" 8 8
xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation" 8 1
#include "ti86asm.inc"
; ===========================
; Emblem 86 version 1.1 gamma
; ===========================
; Mark's new label
; This is an 86 assembly program that allows users to draw a custom emblem for
; their calculators (on-calc) and install it in a user-interrupt routine so that
; it will be constantly present in the upper-right corners of their screens.
@mshroyer
mshroyer / keybase.md
Created May 26, 2017 06:13
Keybase verification

Keybase proof

I hereby claim:

  • I am mshroyer on github.
  • I am mshroyer (https://keybase.io/mshroyer) on keybase.
  • I have a public key ASBE2vOmDs6o0yxIi8V0LhJEAoCtkDuXe3QqM8VJPib5hQo

To claim this, I am signing this object:

@mshroyer
mshroyer / icalendar_todos.py
Created December 28, 2016 16:46
Extract plaintext TODOs from Remember the Milk (RTM) iCalendar export
#!/usr/bin/env python3
import argparse
import functools
import icalendar
import operator
import re
TAGS_PATTERN = re.compile(r'Tags: ([\w\d]+(?:, [\w\d]+)*)')
INGREDIENTS
2 cups buttermilk (Bisquick) baking mix
2/3 cup milk
1/2 cup shredded sharp Cheddar cheese
1/4 cup butter, melted
1/4 tsp garlic powder
DIRECTIONS
@mshroyer
mshroyer / switch.c
Created May 3, 2014 20:07
Example of GCC's -Werror=switch
/*
* gcc -Werror=switch will produce an error for this
*/
#include <stdio.h>
enum language {
ENGLISH,
SPANISH,
GERMAN
@mshroyer
mshroyer / config.json
Last active August 29, 2015 13:59
Bootstrap 3 customization for markshroyer.com
{
"vars": {
"@gray-darker": "lighten(#000, 13.5%)",
"@gray-dark": "lighten(#000, 20%)",
"@gray": "lighten(#000, 33.5%)",
"@gray-light": "lighten(#000, 60%)",
"@gray-lighter": "lighten(#000, 93.5%)",
"@brand-primary": "#070",
"@brand-success": "#5cb85c",
"@brand-info": "#5bc0de",
#!/usr/bin/env python
"""webhook
Implements web hooks for BitBucket, etc. on my Amazon EC2 instance.
"""
__author__ = 'Mark Shroyer'
;; nasm -f elf64 prog.asm && gcc -o prog prog.o
%define under 1000
section .data
output:
db "Result: %lu",10,0
section .text
extern printf
(destructuring-bind (offset in-path out-path) (cdr sb-ext:*posix-argv*)
(with-open-file (in in-path :element-type '(unsigned-byte 8))
(with-open-file (out out-path :direction :output :if-exists :supersede)
(do ((c (make-array 32)) (n 0) (a (parse-integer offset :radix 16) (+ a n)))
((zerop (setq n (read-sequence c in))))
(format out ":~2,'0X~4,'0X00" n a)
(format out "~2,'0X~%" (mod (- (apply #'+ a (ash a -8) n (map 'list (lambda (b) (format out "~2,'0X" b) b) (subseq c 0 n)))) 256)))
(format out ":00000001FF~%"))))