LEX 'CONNLEX' * Guy Toublanc (276), PPC-Paris, PPCJ#59 t EQU 145 ID #5C MSG 0 POLL 0 ENTRY CONSe CHAR #D ENTRY GRAPe CHAR #D KEY 'CONPS' TOKEN t KEY 'GRAPS' TOKEN 1+t ENDTXT pop1r D1=D1+ 16 GOSBVL #0E8FD =POP1R ST=0 0 ?A=0 S GOYES L37 ST=1 0 L37 GOSBVL #12AE2 =RJUST C=A W GOVLNG #0ECDC =DCHXW popa D1=D1+ 16 GOSBVL #136CB =RNDAHX GONC argerr C=0 W C=A A RTN argerr GOVLNG #0BF19 =ARGERR CONSd GOVLNG #05470 =DROPDC CONSp LC(1) 6 L40 C=C-1 P R2=C GOSBVL #0369D =NUMCK GOSUB resptr C=R2 ?C=0 P GOYES resptr GOSBVL #036CD =COMCK GONC mspare C=R2 GOC L40 resptr GOVLNG #03172 =RESPTR mspare GOVLNG #02E5C =MSPARe invvar LC(2) 83 GOVLNG #09393 =MFERR REL(5) CONSd REL(5) CONSp GRAPe ST=1 3 GOTO CONS REL(5) CONSd REL(5) CONSp CONSe ST=0 3 CONS GOSBVL #0F178 =EXPEX- LC(3) 'g' B=C X GOSBVL #0F551 =ADRS50 GOC invvar D0=D0+ 11 C=DAT0 A AD0EX A=A-C A D0=A D0=D0+ 4 LC(1) 9 B=C P C=0 W BOUCL DAT0=C 16 D0=D0+ 16 B=B-1 P GONC BOUCL GOSBVL #0E8FD =POP1R ST=0 2 ?A=0 M GOYES L94 ST=1 2 L94 GOSUB pop1r ST=0 1 ?ST=0 0 GOYES L99 ST=1 1 L99 R0=C GOSUB pop1r R1=C GOSUB popa R2=C GOSUB popa R3=C A=R2 GOSBVL #0ECBB =MPY A=R0 ?ST=0 1 GOYES ADD A=A-C W GONC MUL A=-A W ST=0 1 GOC MUL ADD A=A+C W MUL C=R3 GOSBVL #0ECBB R0=A GOSUB popa D=C W A=C W GOSBVL #0ECBB =MPY R3=A A=R2 C=D W C=C+1 A GOSBVL #0ECBB =MPY A=R1 ?ST=0 0 GOYES ADD2 A=A-C W GONC STO A=-A W ST=0 0 GOC STO ADD2 A=A+C W STO R1=A C=D W A=C W A=A-1 A B=A P ASRB ASRB LC(1) 3 B=B&C P B=C-B P ?B=0 P GOYES SK A=A+1 A SK CD0EX C=C-A A D0=C D=0 S D=D+1 S GONC PS2 PS D=D+D S PS2 B=B-1 P GONC PS LOOP A=R1 C=R2 ?ST=1 0 GOYES L138 A=A-C W GONC L139 A=-A W ST=1 0 GOC L139 L138 A=A+C W L139 R1=A C=D A GOSBVL #0ECBB =MPY A=R0 ?ST=1 0 GOYES L149 ?ST=0 1 GOYES L155 ?ST=0 3 GOYES L151 L149 ?ST=1 1 GOYES L155 L151 A=A-C W GONC L156 A=-A W GOC L156 L155 A=A+C W L156 C=R3 GOSBVL #0EC7B =IDIV ?ST=0 2 GOYES L162 A=A+1 B L162 SB=0 ASRB ?SB=0 GOYES PSET DCR D=D+D S GONC DCR2 D=D+1 S D0=D0+ 1 DCR2 D=D-1 X ?D#0 X GOYES LOOP FIN GOVLNG #08A48 =NXTSTM PSET C=DAT0 S C=C!D S DAT0=C S GOC DCR END