perm filename WALK.SAI[GEM,BGB]1 blob
sn#064459 filedate 1973-10-01 generic text, type T, neo UTF8
COMMENT ⊗ VALID 00003 PAGES
RECORD PAGE DESCRIPTION
00001 00001
00002 00002 BEGIN "WALK"
00003 00003 α RAISE THREE OF THE LEGS OFF THE GROUND.
00005 ENDMK
⊗;
BEGIN "WALK"
REQUIRE "ABBREV[SYS,BGB]" SOURCE_FILE;
REQUIRE "GEOMES.HDR[GEM,HE]" SOURCE_FILE;
ITG BUG,I,J,K;
REAL DEL1,DEL2;
ITG LEG1,LEG2,LEG3,LEG4,LEG5,LEG6;
ITG HI1,HI2,HI3,HI4,HI5,HI6;
ITG LO1,LO2,LO3,LO4,LO5,LO6;
ITG ARRAY LEG[1:6];
GEONIT;
BUG ← IGEM("BUG[GEM,BGB]");
LEG1←SON(BUG);LEG2←SIS(LEG1);LEG3←SIS(LEG2);
LEG4←SIS(LEG3);LEG5←SIS(LEG4);LEG6←SIS(LEG5);
HI1←SON(LEG1);LO1←SON(HI1);
HI2←SON(LEG2);LO2←SON(HI2);
HI3←SON(LEG3);LO3←SON(HI3);
HI4←SON(LEG4);LO4←SON(HI4);
HI5←SON(LEG5);LO5←SON(HI5);
HI6←SON(LEG6);LO6←SON(HI6);
α RAISE THREE OF THE LEGS OFF THE GROUND.;
DEL2 ← (π/6);
ROTATE(-HI1,0,0,DEL2);
ROTATE(-HI5,0,0,DEL2);
ROTATE(-HI3,0,0,DEL2);
SHOW1(0,1);GEOMED;
DEL1 ← π/50; J←4;
DEL2 ← -DEL2/4;
WHILE TRUE DO
BEGIN
FOR I←1 STEP 1 UNTIL J DO
BEGIN
ROTATE(-LEG1,0, DEL1,0);
ROTATE(-LEG2,0,-DEL1,0);
ROTATE(-LEG3,0, DEL1,0);
ROTATE(-LEG4,0,-DEL1,0);
ROTATE(-LEG5,0, DEL1,0);
ROTATE(-LEG6,0,-DEL1,0);
IF DEL1<0 THEN
⊂ ROTATE(-HI1,0,0,DEL2);
ROTATE(-HI3,0,0,DEL2);
ROTATE(-HI5,0,0,DEL2);⊃ ELSE
⊂ ROTATE(-HI2,0,0,-DEL2);
ROTATE(-HI4,0,0,-DEL2);
ROTATE(-HI6,0,0,-DEL2);⊃;
IF I=4 THEN DEL2←-DEL2;
SHOW1(0,1);
END;
DEL1 ← -DEL1; J←8;
IF INCHRS≥0 THEN GEOMED;
END;
END "WALK";