Currently don't have an end goal for this planned. I'm going to make everything I can out of Snap Circuits, but if there is a part I really need that isn't officially made I will use a custom part.
symbol shift1 = b1
symbol shift2 = b2
symbol shift3 = b3
symbol shift4 = b4
symbol shift5 = b5
symbol shift6 = b6
symbol shift7 = b7
symbol shift8 = b8
symbol shift9 = b9
symbol shift10 = b10
symbol shift11 = b11
symbol shift12 = b12
symbol shift13 = b13
symbol shift14 = b14
symbol shift15 = b15
symbol shift16 = b16
symbol shiftValue = b17
symbol index = b0
main:
gosub write_shift
goto main_loop
main_loop:
gosub poll_input
pause 50
goto main_loop
write_shift:
disconnect
for index = 0 to 15
lookup index, (shift1, shift2, shift3, shift4, shift5, shift6, shift7, shift8, shift9, shift10, shift11, shift12, shift13, shift14, shift15, shift16), shiftValue
if shiftValue != 1 then
high 1
else
low 1
end if
high 0
low 0
next index
reconnect
return
poll_input:
if pin4 = 1 then
shift16 = 1
gosub write_shift
end if
return