JustPaste.it

alias dSatellite d0
alias dCurrentDisplay d1
alias dStartLoopDisplay d2
alias dSignalID d3

alias rSignalStrength r0
alias rHorizontal r1
alias rVertical r2
alias rTempStrength r3
alias rSignalID r4
alias rDirection r5

move rDirection 2
define maxDiff 0.01

loop:
l rHorizontal dSatellite Horizontal
l rVertical dSatellite Vertical
l rSignalID dSatellite SignalID
s dStartLoopDisplay Setting rTempStrength
j vSeek

hSeek:
l rTempStrength dSatellite SignalStrength
s db Setting rSignalID
add rHorizontal rHorizontal rDirection
brlt rHorizontal 360 2
mul rDirection rDirection -1
brgt rHorizontal 0 2
mul rDirection rDirection -1
s dSatellite Horizontal rHorizontal
sleep 1
l r11 dSatellite SignalID
bne r11 rSignalID loop
l rSignalStrength dSatellite SignalStrength
s dCurrentDisplay Setting rSignalStrength

sub r12 rSignalStrength rTempStrength
abs r12 r12
s dSignalID Setting r12

blt r12 maxDiff loop
brgt rSignalStrength rTempStrength 2
mul rDirection rDirection -1
j hSeek

vSeek:
l rTempStrength dSatellite SignalStrength
s db Setting rSignalID
add rVertical rVertical rDirection
brlt rVertical 90 2
mul rDirection rDirection -1
brgt rVertical 0 2
mul rDirection rDirection -1
s dSatellite Vertical rVertical
sleep 1
l r11 dSatellite SignalID
bne r11 rSignalID loop
l rSignalStrength dSatellite SignalStrength
s dCurrentDisplay Setting rSignalStrength

sub r10 rSignalStrength rTempStrength
abs r10 r10
s dSignalID Setting r10

blt r10 maxDiff hSeek
brgt rSignalStrength rTempStrength 2
mul rDirection rDirection -1
j vSeek

yield
j loop