Skip to content

Instantly share code, notes, and snippets.

🎼

Aaron Hinojosa 67hz

🎼
Block or report user

Report or block 67hz

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@67hz
67hz / CMakeLists.txt
Created Mar 21, 2020
C++ CMake starter - loads Gtest and Boost into deps - Change MainMain to whatever your app name is
View CMakeLists.txt
cmake_minimum_required(VERSION 3.13.0)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS ON)
# for gdb - remove before prod
# this is left to developer
# run: cmake -DCMAKE_BUILD_TYPE=Debug ..
set(CMAKE_BUILD_TYPE Debug)
add_compile_options(-Wall -Wextra -Wpedantic)
@67hz
67hz / Makefile
Created Mar 12, 2020
Makefile for STM32 development
View Makefile
TARGET=main
CC=arm-none-eabi-gcc
LD=arm-none-eabi-gcc
AR=arm-none-eabi-ar
AS=arm-none-eabi-as
CP=arm-none-eabi-objcopy
OD=arm-none-eabi-objdump
SE=arm-none-eabi-size
SF=st-flash
View cc_notes.md
@67hz
67hz / .ycm_extra_conf.py
Created Feb 28, 2020
Simple ycm_extra_conf.py with gtk support (adjust gtk path as necessary)
View .ycm_extra_conf.py
def Settings( ** kwargs):
return {
'flags': [
'-x',
'c',
'-std=c99',
'-Wall',
'-Wextra',
'-Werror',
'-I/usr/local/Cellar/gtk+3/3.24.14/include/gtk-3.0',
@67hz
67hz / erlang_notes.md
Last active Jul 26, 2019
My Erlang Notes circa 2004 with some recent additions
View erlang_notes.md

Erlang

  • let it crash philosophy - supervisors handle actor crashes
    • most common - restart actor with initial state
    • actor recieve messages in mailbox - can be across nodes
  • dynamically typed and strongly typed so no implicit conversion
  • atoms, tuples, pattern-matchingå
  • no true strings
  • atoms can't be garbage collected
  • Some BIFS implemented in C for speed
@67hz
67hz / main.asm
Created Apr 4, 2019
x86 Assembly: Scanning an array for a non-zero value
View main.asm
; Scanning array for non-zero value
.386
.model flat
.data
;intArray SWORD 0,0,0,0,4,3,0,-34,-56,7,8
intArray SWORD 0,0,0,0,0,0,0,0,0,0,0,0
.code
main proc
@67hz
67hz / finding_duplicates_in_string_using_bitwise_ops.cpp
Created Mar 27, 2019
A simple program to illustrate bitwise masking and merging to determine if a string contains duplicates.
View finding_duplicates_in_string_using_bitwise_ops.cpp
// Simple program to illustrate bitwise ops to check string for duplicates
#include <iostream>
using namespace std;
int main()
{
char * A = new char[20];
cout << "Enter string to be checked for duplicates" << endl;
cin >> A;
@67hz
67hz / find_duplicates_in_unsorted_array.cpp
Last active Apr 13, 2019
passing array as ref to maintain size info in C++
View find_duplicates_in_unsorted_array.cpp
// If std::array is not an option (e.g embedded), use the following tactic to maintain size info of array as param
// This method uses non-type template arguments to retain size of array.
// See std::begin() and std::end() for similar approaches.
#include <iostream>
using namespace std;
// @param h {T} represents highest number in given array
// used to determine size of hash array
@67hz
67hz / x86MemoryAddressingModes.md
Last active Mar 4, 2019
x86 Memory Addressing Modes with examples
View x86MemoryAddressingModes.md

x86 Memory Addressing Modes

Effective Address

effectiveAddress = BaseReg + IndexReg * ScaleFactor + Displacement

BaseReg = any general purpose register
IndexReg = Index Register - any gen purpose register except Stack Pointer Reg (ESP)
ScaleFactor = 1,2,4,8
Displacement = Constant offset encoded w/in instruction
@67hz
67hz / gist:fa626bef810d1fe1024b
Created Sep 15, 2014
Underscore chaining. This example scans a collection, finds all items that match a condition, then returns a new collection from the matches with custom structure.
View gist:fa626bef810d1fe1024b
var subscribersModel = {
users: [
{
'id': '1asdf',
'activeSubscriptions': ['monthly', 'gold'],
'gender': 'm',
'age': '31',
'username': 'CowboyWayne'
},
{
You can’t perform that action at this time.