Listing of file='IDS2PS31' on disk='vmedia/701-2724B.wvd.zip'
# Sector 461, program filename = 'IDS2PS31'
1000 REM "IDS2PS31" - Release 2.1 - DOCUMENTATION FOR MATH CALCULATIONS
1010 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
: GOSUB '33("IDS2sS20")
: DIM F9$(4)14,J1$(2)31
: FOR I=21TO 84STEP 9
: GOSUB '43(I)
: IF E$=" "THEN 3020
: E4$()="Field "&STR(E$,,8)&" ="
: GOSUB '48(0,E4$(),0)
: GOSUB '43(I+1)
: IF E$="MOD"THEN Y=1
: ELSE Y=3
1050 E6$=E$
: IF E$="MAX"OR E$="MOD"OR E$="MIN"OR E$="INT"OR E$="ABS"OR E$="SGN"THEN E4
$()=E$&"("
: ELSE GOTO 1070
: GOSUB '48(-1,E4$(),0)
1070 F9$(),J1$()=" "
: FOR J=0TO Y
: GOSUB '43(I+2+J*2)
: F5$=E$
: IF F5$=" "THEN 1121
: IF F5$<"CONSTNT1"OR F5$>"CONSTNT8"THEN 1120
: GOSUB '43(VAL(STR(F5$,8))-36)
: IF E$=" "THEN E$="0"
: ELSE E$=STR(E$,POS(E$<>" "))
: F9$(J+1)=E$
: GOTO 1121
1120 F9$(J+1)="Field "&E$
1121 NEXT J
: F6$,E$=E6$
: IF E6$<HEX(F0)THEN 2000
: FOR J=1TO Y+1
: IF F9$(J)<>" "THEN E$=E$&F9$(J)&","
: NEXT J
: STR(E$,LEN(E$))=")"
: GOTO 3000
2000 IF F9$(2)=" "THEN E$=" "
: ELSE GOSUB '43(I+3)
: J1$(1)=F9$(1)&E$
: J1$(1)=J1$(1)&STR(F9$(2),MAX(1,POS(F9$(2)>20)))
: J1$()=STR(J1$(1),MAX(1,POS(J1$(1)>20)))
: IF F9$(4)=" "THEN E$=" "
: ELSE GOSUB '43(I+7)
: J1$(2)=F9$(3)&E$
: J1$(2)=J1$(2)&STR(F9$(4),MAX(1,POS(F9$(4)>20)))
: J1$(2)=STR(J1$(2),MAX(1,POS(J1$(2)>20)))
2010 GOSUB '43(I+5)
: F9$=E$
: IF J1$(2)=" "OR POS("*/^"=E$)=0OR F9$(1)=" "OR F9$(2)=" "THEN F0$=J1$(1)
: ELSE F0$="("&J1$(1)&")"
: GOSUB '43(I+7)
: E6$=E$
: E$=F0$
: IF F9$="+"AND E6$="+"OR POS(" -^*/"=F9$)=0OR F9$(4)=" "OR J1$(2)=" "OR J1
$(1)=" "THEN E$=E$&F9$&J1$(2)
: ELSE E$=E$&F9$&"("&J1$(2)&")"
: IF F6$<>" "THEN E$=E$&")"
3000 E$=STR(E$,POS(E$>20))
: GOSUB '48(0,E$,0)
: GOSUB '49(0)
: IF C5$<>"S"OR STR(R3$(1),6,1)<>"S"THEN D6=D6+1
: ELSE F4=F4+1
3020 NEXT I
: IF E2(6)<>0THEN LOAD T#2,"IDS2PS30"1000,
: IF C5$<>"S"OR STR(R3$(1),6,1)<>"S"THEN LOAD T#2,"IDS2PR36"1000,
: LOAD T#2,"IDS2PS27"1000,
3699 ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
: E$="IDS2PS31"
: IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
: STOP "ERROR"