Skip to content

Instantly share code, notes, and snippets.

View tomtor's full-sized avatar

Tom Vijlbrief tomtor

View GitHub Profile
@tomtor
tomtor / rdtape.c
Created March 19, 2016 22:40
Convert SIMH simulator tapes to normal files
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/*
* Convert SIMH simulator tapes to normal files
*
* Copyright 2016 Tom Vijlbrief
*
* tvijlbrief at gmail dot com
@tomtor
tomtor / MendixWidgetWrapper.html
Created May 26, 2016 15:57
A simple Wrapper for Mendix Widgets
<html>
<head>
<script src="../lib/jquery-1-11-3.js"></script>
</head>
<body>
<script>
function declare_f(w, a, p) {
p.domNode= $('body')[0];
p._contextObj= { set: function(k,v) { console.log(v); }};
-- See
-- http://stackoverflow.com/questions/18209625/how-do-i-modify-fields-inside-the-new-postgresql-json-datatype
-- All credits to the original author
---------------------------------------------------------------------------------------------------------------
CREATE OR REPLACE FUNCTION "json_object_set_key"(
"json" json,
"key_to_set" TEXT,
"value_to_set" anyelement
)
----------------------------------------------------------------------------
-- CRS conversion functions for GeoJSON coordinates and lat/long pairs
-- in PostgreSQL/PostGIS:
--
-- from (Google) Web Mercator (OpenLayers:900913, EPSG:3785 and EPSG:3857 (prefered))
-- and WGS-84 Lat (y) Long (x) (EPSG:4326)
--
-- to EPSG:28992 (RD new)
--
-- Needs the PostGIS extension (surprise ;-)
@tomtor
tomtor / CCS811_test.ino
Last active June 2, 2017 13:46
CCS811 low power Arduino sketch
/***************************************************
This is an example for the CCS811 digital TVOC/eCO2 Sensor by CCMOSS/AMS
http://www.ccmoss.com/gas-sensors#CCS811
Updated: March 28, 2017
The sensor uses I2C protocol to communicate, and requires 2 pins - SDA and SCL
Another GPIO is also required to assert the WAKE pin for communication. this
pin is passed by an argument in the begin function.
/*******************************************************************************
Copyright (c) 2015 Thomas Telkamp and Matthijs Kooijman
(c) 2017 Tom Vijlbrief
Permission is hereby granted, free of charge, to anyone
obtaining a copy of this document and accompanying files,
to do whatever they want with them without any restriction,
including, but not limited to, copying, modification and redistribution.
NO WARRANTY OF ANY KIND IS PROVIDED.
@tomtor
tomtor / XOR.S
Last active October 13, 2017 11:18
Esp32 ULP macro function
/* r0 = r0 xor r2, spills r1 */
.macro xor
/*
See https://stackoverflow.com/a/5377173
int bitwise_XOR(int a, int b)
{
return (a + b) - (a & b) - (a & b);
}
@tomtor
tomtor / upload.py
Last active May 18, 2018 06:47
Upload file to Google Drive
#!/usr/bin/python
import sys
import os
from optparse import OptionParser
from os.path import expanduser
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
@tomtor
tomtor / clone_drive.py
Last active August 16, 2018 15:23
Clone fishtest LTC PGN files to Google Drive
#!/usr/bin/env python3
import os
import sys
import subprocess
import re
import requests
import bz2
from pymongo import MongoClient, ASCENDING, DESCENDING
@tomtor
tomtor / up2.sh
Created August 16, 2018 15:25
Wrapper to make upload.py more robust
#!/bin/sh
while :
do
if upload.py "$@"
then
break
else
echo Retry in 60s
sleep 60