
There are 5 buttons that can be used. only programmed stuff on 3. Enter up and down. Buttons are connected electically like this:

Circuit simulator: http://lushprojects.com/circuitjs/circuitjs.html
Here is video of the menu working.
https://www.dropbox.com/s/aq7gced5vn5dl ... 8.mov?dl=0
Using 2ms delays around the code, but it still is so slow.
code for refrence:
phyButton = "none"
menuLevel = 0
menuRow = 1
cooldown = 2
oledcls
goto [ajastin]
wait
[ajastin]
if cooldown > 0 then goto [away]
analogPin = ""
ai analogPin
analogPin = analogPin & " "
if analogPin < 350 then gosub [leftdown]
if analogPin > 350 then gosub [rightup]
if analogPin < 20 then phyButton = "none"
if analogPin > 1000 then phyButton = "enter"
if phyButton == "enter" then goto [pressEnter]
if phyButton == "left" then goto [pressLeft]
if phyButton == "right" then goto [pressRight]
if phyButton == "up" then goto [pressUp]
if phyButton == "down" then goto [pressDown]
if menuLevel = 0 then goto [drawOledMain]
delay 2
goto [ajastin]
[pressEnter]
if menuRow = 7 then goto [back]
if menuLevel = 0 then goto [drawOledMenuOne]
delay 2
goto [ajastin]
[back]
menuLevel = 0
menuRow = 0
delay 2
oledcls
goto [ajastin]
[pressLeft]
delay 2
goto [ajastin]
[pressRight]
delay 2
goto [ajastin]
[pressUp]
oledprint " " 0 menuRow
menuRow = menuRow - 1
oledprint "-> " 0 menuRow
delay 2
goto [ajastin]
[pressDown]
oledprint " " 0 menuRow
menuRow = menuRow + 1
oledprint "-> " 0 menuRow
delay 2
goto [ajastin]
[drawOledMain]
oledprint cooldown 0 2
oledprint analogPin 0 0
oledprint phyButton 0 1
goto [ajastin]
[drawOledMenuOne]
oledprint " Menu " 0 0
oledprint "-> Item 1 " 0 1
delay 1
oledprint " Item 2 " 0 2
delay 1
oledprint " Item 3 " 0 3
delay 1
oledprint " Item 4 " 0 4
delay 1
oledprint " Item 5 " 0 5
delay 1
oledprint " Item 6 " 0 6
delay 1
oledprint " Exit " 0 7
delay 1
menuLevel = 1
delay 2
goto [ajastin]
[away]
cooldown = cooldown - 1
goto [ajastin]
wait
[leftdown]
if analogPin < 20 then return
cooldown = 2
if analogPin > 1000 then return
if analogPin > 280 then phyButton = "down"
if analogPin < 280 then phyButton = "left"
return
[rightup]
if analogPin < 20 then return
cooldown = 2
if analogPin > 1000 then return
if analogPin > 480 then phyButton = "up"
if analogPin < 480 then phyButton = "right"
return
http://jokenkosto.blogspot.com/