PART 1
-4 *.eye1 *.eye9 sub sgn 0 floor mult
subtracting *.eye9 from *.eye1 returns 0 if equal, positive if .eye1 is greater, and negative if .eye9 is greater. (sgn simple reduces this difference to -1, 0 or 1.)
0 floor makes both -1 and 0 equal to 0.
the resultant is multiplied by -4, the focuseye value for eye1.
repeat this process for each of the eye pairings with .eye1:
-4 *.eye1 *.eye9 sub sgn 0 floor mult
*.eye1 *.eye8 sub sgn 0 floor mult
*.eye1 *.eye7 sub sgn 0 floor mult
*.eye1 *.eye6 sub sgn 0 floor mult
*.eye1 *.eye5 sub sgn 0 floor mult
*.eye1 *.eye4 sub sgn 0 floor mult
*.eye1 *.eye3 sub sgn 0 floor mult
*.eye1 *.eye2 sub sgn 0 floor mult
(Looks so much neater that way, but not as impressive )
and voila, you know whether .eye1 should be selected or not!
This process is repeated for each eye.
Sometimes, you have to use ++ sgn instead of 0 floor. This makes -1 to 0, and 0 and 1 to 1. This gives certain eyes priority over others when there's a clash eg. both eyes have same readings.
PART 2
Because of the priority setting bit, only one number will equate to a nonzero value (unless each eye is equal to 0 or eye5 takes priority). However, there's still a whole lot of zeros on the stack. To get rid of these, simply add them all together. This will leave you with one nice number to finish it all off:
.focuseye store
This code is practically unreadable unless you know how it works, and I had to remind myself (believe me, I found a glitch in it and it took me forever to find it )
Anyways, that's about as simple as I can make it.