Skip to content

Instantly share code, notes, and snippets.

View bjonnh's full-sized avatar
馃悎

Jonathan Bisson bjonnh

馃悎
View GitHub Profile
import random
def parse_wiegand_32(binary_str):
"""
Parse a 32-bit Wiegand code
Args:
binary_str (str): 32-bit binary string
Returns:
dict: Contains parity check result, facility code, and card number
"""
#!/usr/bin/env python3
# Usage:
# To convert:
# ./display_raw.py thingy.raw --convert more_accessible_thingy.tiff
# To display:
# ./display_raw.py thingy.raw
import numpy as np
import matplotlib.pyplot as plt
import argparse
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
/* @settings
name: Bjonnh
id: bjonnh-theme-snippet
settings:
-
id: bjonnh-page-width
title: Page width
type: variable-number
@bjonnh
bjonnh / Redirector.json
Last active April 9, 2024 07:49
A redirector configuration file that allows to get direct access to PDFs for Wiley's publications. (this will not bypass the paywall)
{
"createdBy": "Redirector v3.5.3",
"createdAt": "2020-07-07T19:44:24.659Z",
"redirects": [
{
"description": "Wiley pdf",
"exampleUrl": "https://onlinelibrary.wiley.com/doi/epdf/10.1002/mrc.4283",
"exampleResult": "https://onlinelibrary.wiley.com/doi/pdfdirect/10.1002/mrc.4283",
"error": null,
"includePattern": "(https://onlinelibrary[\\-\\.]wiley[\\-\\.]com[a-z\\-\\.]*)/doi/epdf/(.*)",
module top
(
input clk_25mhz,
output [27:0] gp,
);
wire [3:0] clocks;
wire [3:0] clocks2;
ecp5pll
module I2SInterface(
input sclk, // 25 MHz System clock
input bclk, // 6.25 MHz Bit Clock
input lr, // Left/Right Channel Select
input linData, // Line In Data
output loutData, // Line Out Data
input [23:0] inLeft, // left signal to line out
input [23:0] inRight, // right signal to line out
@bjonnh
bjonnh / results.txt
Created December 2, 2020 04:40
Results of Advent of code 2020 - Day 1
Benchmark Mode Cnt Score Error Units
Day1Bench.Dumb sample 1687 2.966 卤 0.006 ms/op
Day1Bench.Dumb:Dumb路p0.00 sample 2.925 ms/op
Day1Bench.Dumb:Dumb路p0.50 sample 2.953 ms/op
Day1Bench.Dumb:Dumb路p0.90 sample 2.990 ms/op
Day1Bench.Dumb:Dumb路p0.95 sample 3.015 ms/op
Day1Bench.Dumb:Dumb路p0.99 sample 3.191 ms/op
Day1Bench.Dumb:Dumb路p0.999 sample 4.326 ms/op
Day1Bench.Dumb:Dumb路p0.9999 sample 4.473 ms/op
Day1Bench.Dumb:Dumb路p1.00 sample 4.473 ms/op
@bjonnh
bjonnh / decode_outlook.el
Last active November 10, 2020 17:32
Decode outlook protection urls in elisp
(defun decode-url-at-point (&optional arg)
"Decode the outlook protection encoded url, display it as a message and put in the kill-ring."
(interactive "P")
(let ((url (browse-url-url-at-point)))
(if url
(let ((decodedurl (url-unhex-string (nth 1 (split-string (nth 0 (split-string url "&")) "=")))))
(message "%s" decodedurl)
(kill-new decodedurl))
(error "No URL found"))))
@bjonnh
bjonnh / decode_outlook.py
Created November 10, 2020 17:11
Decode outlook safe whatever urls
# Adapted from https://modernsecuritymethods.com/2019/10/04/url-decoding/
from urllib.parse import unquote
import re
import sys
def decode_url(url):
decoded_url = unquote(url.lower())
try:
final_url = ''
h = decoded_url.split('http')