* gpios: isBrainPinValid helper
* LCD HD44780: do not touch pins if DM_NONE or invalid gpio
* Fix isEnabled checks for GPS and Joystick
* LCD HD44780: writePad use this method wider
* change acSwitch name, add mode
* fix
* remove some adc stuff
* remove some adc stuff
* semicolon stupid
* left behind
* add readpinstate
* wrong var name
* add functions back
* fix name
* bool, not void, plus fix name
* move
* not sure what I broke
* try setMockValue
* namespace
* whoops missed one
* switch values because adc was set up for pullup
* try 5
* comment for now
* comment for now
* uncomment tests, add function to mock, add mock to efiReadPin
* fixes
* for F's sake
* if
* add defy
* pass params
* use ASSERT_TRUE/FALSE
* advance time
* remove ifdef from readPin
* try moving if
* move to separate func
* move extern
* move include
* try engine_test_helper
* am confuse
* move func to else
* include hal
* add efi prod check
* remove include
* try extern
* move include
* semicolon stupid
* move extern again
* include
* move mockPinStates
* size
* add if
* add comment
* clean on instantiation
* add linked list
* macros, and use in buttonshift
* unit_tests macros
* add extern
* add parens
* move extern
* move extern
* move buttonDebounceListHead
* move buttonDebouncePointerHead
* merge gore
* undo
* reduce unused size
* don't store pointer if already initialized
* few changes
* remove oldPin
* fix merge conflict
* merge in changes commited to wrong branch
* fix definition
* out of class?
* brute force programming
* fix few problemos
* am confuse
* am confuse
* am confuse
* am confuse
* oldPin snuck in
* move to public?
* define again
* try constexpr
* def in cpp
* remove constexpr
* fix def
* fix?
* update active
* fix a few things