PXCAL BASPXCAL DOC ÿ 1 CLS:PRINT "SUPERPRO enr.":PRINT "C.BAS 1.1":PRINT:PRINT "R. Lachapelle":A$=INPUT$(1):SCREEN 0:CLS:SCREEN ,,0 2 LOCATE 5,1:PRINT"CALCULATRICE";SPC(13);"Memoires";SPC(15);"Decimales":PRINT SPC(4);"============";SPC(13);"-------" 3 GOSUB 1210:GOTO 10 6 GOSUB 1110:GOTO 10 7 IF P=2 THEN S=O 8 GOSUB 1100 10 LOCATE 5,4:IF P=2 THEN LOCATE 5,5 11 A$=INPUT$(1):IF ASC(A$)=13 THEN A$="":GOTO 1000 18 IF A$="*"THEN A$=":" 19 IF A$="+"THEN A$=";" 20 IF A$=";"THEN A$="+":O=1:GOTO 900 30 IF A$="-"THEN O=2:GOTO 900 40 IF A$=":"THEN A$="x":O=3:GOTO 900 50 IF A$="/"THEN O=4:GOTO 900 51 IF F=1 THEN 1340 52 IF A$="a"THEN 1300 53 IF A$="b"THEN 1300 54 IF A$="c"THEN 1300 55 IF A$="d"THEN 1300 56 IF A$="e"THEN 1300 60 IF A$="m"THEN A$="0" 61 IF A$="j"THEN A$="1" 62 IF A$="k"THEN A$="2" 63 IF A$="l"THEN A$="3" 64 IF A$="u"THEN A$="4" 65 IF A$="i"THEN A$="5" 66 IF A$="o"THEN A$="6" 70 IF ASC(A$)=46 THEN 73 71 IF ASC(A$)<48 THEN 11 72 IF ASC(A$)>57 THEN 11 73 PRINT A$;:B$=B$+A$ 80 GOTO 11 900 IF F=1 THEN 910 901 F=0:IF P=2 THEN GOSUB 1100 902 D#=VAL(B$):IF P=3 THEN IF B$=""THEN LOCATE 4,4:PRINT C#:D#=C# 910 P=2:LOCATE 3,5:B$="":PRINT A$;:S$=A$:S=O:IF F=1 THEN F=0 920 GOTO 10 1000 IF P=2 THEN GOTO 7 1001 IF B$>""THEN A$="":B$="":GOSUB 2000:GOTO 10 1010 PRINT "abcde----------)"; 1011 A$=INPUT$(1) 1020 IF A$="a"THEN E#=C#:GOTO 3 1030 IF A$="b"THEN F#=C#:GOTO 3 1040 IF A$="c"THEN G#=C#:GOTO 3 1041 IF A$="d"THEN H#=C#:GOTO 3 1042 IF A$="e"THEN I#=C#:GOTO 3 1050 GOSUB 2002:GOTO 10 1100 B#=VAL(B$) 1110 IF S=1 THEN C#=D#+B# 1120 IF S=2 THEN C#=D#-B# 1130 IF S=3 THEN C#=D#*B# 1135 IF S=4 THEN C#=D#/B# 1140 GOSUB 3000:LOCATE 2,7:PRINT USING "############.##";C#:P=3:B$="":LOCATE 51,4 1141 PRINT D#:LOCATE 50,5:PRINT S$;B#:LOCATE 51,7:PRINT C# 1210 LOCATE 26,3:PRINT "A: ";E#:LOCATE 26,4:PRINT "B: ";F#:LOCATE 26,5:PRINT "C: ";G# 1211 LOCATE 26,6:PRINT "D: ";H#:LOCATE 26,7:PRINT "E: ";I# 1220 GOSUB 2000:RETURN 1300 IF P=2 THEN 1500 1301 GOSUB 2002:LOCATE 4,4:IF A$="a"THEN IF B$=""THEN D#=E#:PRINT E#; 1320 IF A$="b"THEN IF B$=""THEN D#=F#:PRINT F#; 1330 IF A$="c"THEN IF B$=""THEN D#=G#:PRINT G#; 1331 IF A$="d"THEN IF B$=""THEN D#=H#:PRINT H#; 1332 IF A$="e"THEN IF B$=""THEN D#=I#:PRINT I#; 1340 A$=INPUT$(1):IF A$="-"THEN O=2:GOTO 910 1341 F=1:GOTO 18 1500 LOCATE 4,5:IF A$="a"THEN IF B$=""THEN B#=E#:PRINT E#:GOTO 6 1510 IF A$="b"THEN IF B$=""THEN B#=F#:PRINT F#:GOTO 6 1520 IF A$="c"THEN IF B$=""THEN B#=G#:PRINT G#:GOTO 6 1521 IF A$="d"THEN IF B$=""THEN B#=H#:PRINT H#:GOTO 6 1522 IF A$="e"THEN IF B$=""THEN B#=I#:PRINT I#:GOTO 6 1530 A$=INPUT$(1):GOTO 1500 2000 X=3:Y=5:GOSUB 2010 2002 X=4:Y=4 2010 LOCATE X,Y:PRINT SPC(21):RETURN 3000 X=4:Y=7:GOTO 2010 SUPERPRO ENR. C.BAS (The super calculator for PX-8) from Robert Lachapelle (72057,123) HOW TO USE C.BAS This superb program has three sections. The left section is the calculation area. The center one is the memories area. The right one is the scientific calculations area. You can use the "KEYPAD" but without the SHIFT+NUMGRPH touch, to keep control over the memories. You use +-*/ keys for operations. You don't need to SHIFT for the + and * signs. Example: you push a "2" on the KEY, or on the KEYPAD. you want to multiply by 7, so you push "*" and "7". you can obtain the result in two different ways: push ENTER or continue the calculations farther... for example, "+". At this step, you receive a response for the first operation. To complete, you push "4" if it's your choice, and then ENTER to receive the answer: 18. If you want to put "18" into a memory, you push ENTER again: you will see an arrow asking you to make a choice between ABCDE. Pushing "A" will put "18" into A memory. It is possible to fill all the five memories, and if you want to erase memory B, you punch ENTER+"B". The new result will take place into memory B. You can now perform many other calculations, using "abcde" as in algebra: a*2 or 2/a ...etc... You can perform: c+2-b*a/e ... Don't push RETURN if the last entry is a letter: it's automatic! The right area is only a consultation one. In the case you need scientific precision about your calculations, you look at the right to see more details. Have a good time with C.BAS !!! Robert Lachapelle.