[vcf-midatlantic] If anyone's interested: latest robot program

Jeffrey Brace ark72axow at gmail.com
Mon Feb 20 02:47:00 EST 2017


Yeah! No more spaghetti code! And using GOSUBs instead of GOTO.

Well I will have to work on ways to defeat your Lego robot in a future
robot war! ;)

On Sun, Feb 19, 2017 at 8:41 PM, Evan Koblentz via vcf-midatlantic <
vcf-midatlantic at lists.vintagecomputerfederation.org> wrote:

> Here is my new-and-improved Lego robotic forklift program. Special thanks
> this time to Paul Hagstrom for his helpful suggestion that I detect all the
> joystick direction options, save the active one to a variable, and then
> POKE once as needed vs. trying to detect/POKE after each possible case.
>
>
> ----------
>
>  10  GOSUB 1000: REM  INIT LEGO
>  20  POKE L,0: REM  ALL OFF
>  30  GOSUB 2000: REM  NAVIGATION
>  40  GOSUB 3000: REM  BUTTONS
>  50  GOTO 30
>  60  END
>  1000 S = 7:L = 49280 + S * 16
>  1010  POKE L + 3,1
>  1020  POKE L + 2,63
>  1030  POKE L + 1,0
>  1040  POKE L,0
>  1050  RETURN
>  2000  REM  NAVIGATION
>  2010 FB =  PDL (1):LR =  PDL (0)
>  2020 M = 0
>  2030  IF FB < 75 THEN M = 5
>  2040  IF FB > 180 THEN M = 10
>  2050  IF LR < 75 THEN M = 9
>  2060  IF LR > 180 THEN M = 6
>  2070  POKE L,M
>  2080  IF M = 10 THEN  CALL  - 198: FOR W = 1 TO 500: NEXT W
>  2090  RETURN
>  3000  REM  FORLIFT
>  3010  IF  PEEK (49249) > 127 THEN  POKE L,16: GOTO 3010
>  3020  IF  PEEK (49250) > 127 THEN  POKE L,32: GOTO 3020
>  3030  RETURN
>
> Real simple: Lines 10-60 are the main program, 1000-1050 are the required
> Lego initialization, 2000-2090 are the robot control (front - back - left -
> right), and 3000-3030 make the forklift go up/down.
>
> Hey Jeff and Dan, I think I've graduated from spaghetti code. :)
>
> As I told Dan already, the next thing I'll add is a Lego sensor to prevent
> the forklift from trying to continue going up/down when it reaches its
> mechanical limit. This did not work on my previous robot (to detect the
> limits of rack-and-pinion steering and disable the relevant motor) because
> the motor moved too fast. Not a problem with the forklift: it intentionally
> moves veeeeeeeeeery slow.
>
> I also ordered mini banana plugs so I can make new connecting wires
> between the Lego interface box and the motors, lights, and sensors. The
> 30-year-old wires from Lego are badly worn out. The difference when I
> connected a motor using these old wires vs. using modern alligator clips
> was palpable.
>
> Jeff B., all I have to do to dominate your Capsella robot is corner it,
> get the forklift under its drive wheels, and press the up button before you
> escape. :)
>
> Then your robot will be (ahem) forked.
>
> ________________________________
> Evan Koblentz, director
> Vintage Computer Federation
> a 501(c)3 educational non-profit
>
> evan at vcfed.org
> (646) 546-9999
>
> www.vcfed.org
> facebook.com/vcfederation
> twitter.com/vcfederation
>



-- 
Jeff Brace - ark72axow at gmail.com
Sent from my Commodore 64



More information about the vcf-midatlantic mailing list