Skip to content

Instantly share code, notes, and snippets.

View gojimmypi's full-sized avatar

gojimmypi gojimmypi

View GitHub Profile
@gojimmypi
gojimmypi / install_icestorm.sh
Last active December 14, 2018 22:03
icestorm FPGA install
#!/bin/bash
sudo apt-get update
sudo apt-get install build-essential clang bison flex libreadline-dev \
gawk tcl-dev libffi-dev git mercurial graphviz \
xdot pkg-config python python3 libftdi-dev
# RPi supplments needed:
@gojimmypi
gojimmypi / search_all_tables.sql
Created September 7, 2018 17:24
Search all SQL tables for a specific value (useful for reverse engineering to find where data is stored in a database)
-- this stored proc will generate a list of SELECT statements to show the rows of all tables containing search results.
-- by gojimmypi
CREATE PROCEDURE dbo.proc_SEARCH_ALL_TABLES
@search_string as varchar(255), -- use exact text or SQL wildcards (e.g. '%XYZZY%')
@min_length as int = 0, -- give hints for performance, such as the minimum field size to search, or
@search_numeric as char(1) = 'N', -- could the data be in a numeric field?
@search_text as char(1) = 'Y', -- or perhaps the data could be in a text field?
@echo_output as varchar(8) = Null,
@debug_status as varchar(8) = Null
AS
@gojimmypi
gojimmypi / wsl_lsusb_strace_output.txt
Created December 31, 2018 12:52
wsl: strace -o lsusb.strace -f lsusb
327 execve("/usr/bin/lsusb", ["lsusb"], [/* 19 vars */]) = 0
327 brk(NULL) = 0x13ba000
327 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
327 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
327 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
327 fstat(3, {st_mode=S_IFREG|0644, st_size=45228, ...}) = 0
327 mmap(NULL, 45228, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fed18fa8000
327 close(3) = 0
327 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
327 open("/lib/x86_64-linux-gnu/libusb-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3
@gojimmypi
gojimmypi / cmake-3.13.3-install.sh
Created January 18, 2019 00:19
cmake-3.13.3 install
#!/bin/bash
# see https://askubuntu.com/questions/610291/how-to-install-cmake-3-2-on-ubuntu
# see https://cmake.org/download/
# sudo apt-get remove cmake
cd ~/workspace/
sudo apt-get install build-essential
@gojimmypi
gojimmypi / TinyFPGA_WSL_Toolchain.sh
Last active March 25, 2019 12:06
TinyFPGA Verilog icestorm toolchain installer
#!/bin/bash
WORKSPACE=~/workspace
export TinyFPGA_COM=/dev/ttyS8
sudo ls # pause if copy/paste password prompt
# This WSL Ubuntu bash script will update the system, fetch all dependencies, and git clone
# all of the libraries for creating a picosoc RISC-V on the TinyFPGA with riscv-gnu-toolchain-rv32i toolchain,
# including icestorm, nextpnr (or arachne-pnr), yosys
#
@gojimmypi
gojimmypi / Makefile
Last active February 8, 2019 21:03
TinyFGPA Makefile for picosoc example created on WSL using nextpnr
version = 1.2
riscvbin = /opt/riscv32i/bin/
tinyFPGA_COM ?= /dev/ttyS8
upload: hardware.bin firmware.bin
sudo chmod 0666 $(tinyFPGA_COM)
tinyprog --com $(tinyFPGA_COM) -p hardware.bin -u firmware.bin
hardware.blif: hardware.v spimemio.v simpleuart.v picosoc.v picorv32.v
@gojimmypi
gojimmypi / Makefile
Created February 8, 2019 21:03
TinyFGPA Makefile for picosoc example created on WSL using arachne-pnr
version = 1.2
riscvbin = /opt/riscv32i/bin/
tinyFPGA_COM ?= /dev/ttyS8
upload: hardware.bin firmware.bin
sudo chmod 0666 $(tinyFPGA_COM)
tinyprog --com $(tinyFPGA_COM) -p hardware.bin -u firmware.bin
@gojimmypi
gojimmypi / ULX3S_WSL_Toolchain.sh
Last active March 5, 2020 23:53
ULX3S Verilog icestorm prjtrellis nextpnr ecp5 toolchain installer
#!/bin/bash
WORKSPACE=~/workspace # put your workspace parent directory here. avoid spaces in path
export ULX3S_COM=/dev/ttyS8 # put your device name here
# This WSL Ubuntu bash script will update the system, fetch all dependencies, and git clone
# all of the libraries for running the @DoctorWkt Blinky for the ecp5 ULX3S Board
# including icestorm, nextpnr (or arachne-pnr), yosys
#
#
# A WSL-specific Makefile will also be fetched. (TODO)
@gojimmypi
gojimmypi / Makefile
Last active February 16, 2019 23:46
ULX3S 12F blinky Makefile
.PHONY: all
.DELETE_ON_ERROR:
TOPMOD := blinky
VLOGFIL := $(TOPMOD).v
VCDFILE := $(TOPMOD).vcd
SIMPROG := $(TOPMOD)_tb
RPTFILE := $(TOPMOD).rpt
BINFILE := $(TOPMOD).bin
SIMFILE := $(SIMPROG).cpp
VDIRFB := ./obj_dir
@gojimmypi
gojimmypi / Glasgow_WSL_Toolchain.sh
Last active February 16, 2019 17:51
Glasgow toolchain setup notes
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python-setuptools
sudo apt-get install python3-setuptools
# see https://gist.github.com/gojimmypi/b570c4c0dab4a5d65d03c89071e9d037 for most recent sdcc
sudo apt-get install sdcc
cd ~/workspace
git clone https://github.com/whitequark/Glasgow
git submodule update --init --recursive