Displays the contents of the variable area.
Content
Source Code
1 PAPER 0: BORDER 0: INK 9
5 DIM b(5)
10 LET p=PEEK 23627+256*PEEK 23628
20 PRINT p;TAB 6;: LET p1=PEEK p
25 IF p1=128 THEN PRINT TAB 7;"END OF VARIABLE AREA": STOP
30 LET p2=INT (p1/32)
35 IF p2=3 THEN GO TO 100: REM number (single-letter name)
40 IF p2=5 THEN GO TO 200: REM number (multi-character name)
45 IF p2=4 THEN GO TO 300: REM number array
50 IF p2=7 THEN GO TO 400: REM loop control
55 IF p2=2 THEN GO TO 500: REM string
60 IF p2=6 THEN GO TO 600: REM string aray
70 STOP : REM error if this line is reached
100 REM number:-
105 PRINT CHR$ p1;
110 GO SUB 800
115 PRINT TAB 16;n
120 LET p=p+1: GO TO 20
200 PRINT CHR$ (p1-64);: REM first letter
210 LET p=p+1
220 LET p1=PEEK p
230 IF p1>=128 THEN GO TO 260
240 PRINT CHR$ p1;: REM middle letters (if any)
250 GO TO 210
260 PRINT CHR$ (p1-128);: REM last letter
270 GO TO 110
300 PRINT CHR$ (p1-32);"(";
305 GO SUB 900
310 FOR k=1 TO t
315 GO SUB 800
320 PRINT TAB 3;"element #";k;TAB 16;n
325 NEXT k
330 LET p=p+1: GO TO 20
400 PRINT CHR$ (p1-128);
410 GO SUB 800
420 PRINT TAB 9;"(LOOP)";TAB 16;n;TAB 22;"Current"
425 GO SUB 800
430 PRINT TAB 16;n;TAB 22;"Limit (TO)"
435 GO SUB 800
440 PRINT TAB 16;n;TAB 22;"STEP"
450 LET l=PEEK (p+1)+256*PEEK (p+2): LET s=PEEK (p+3): LET p=p+4
455 PRINT TAB 16;l;TAB 22;"Line No."
460 PRINT TAB 16;s;TAB 22;"Statement"
465 GO TO 20
500 PRINT CHR$ p1;"$";TAB 16;
510 LET l=PEEK (p+1)+256*PEEK (p+2): LET p=p+2
520 FOR j=1 TO l
530 PRINT CHR$ PEEK (p+j);
540 NEXT j: PRINT
550 LET p=p+j: GO TO 20
600 PRINT CHR$ (p1-128);"$(";
605 GO SUB 900
610 FOR k=1 TO t
620 LET p=p+1
630 PRINT TAB 3;"element #";k;TAB 16;CHR$ PEEK p
640 NEXT k
650 LET p=p+1: GO TO 20
800 REM integer
805 FOR j=1 TO 5
810 LET p=p+1: LET b(j)=PEEK p
815 NEXT j
820 IF b(1) THEN GO TO 845
825 LET n=b(3)+256*b(4): IF b(2)=255 THEN LET n=n-65536
830 RETURN
845 REM floating point
850 LET m=1: IF b(2)<128 THEN LET m=0: LET b(2)=b(2)+128
855 LET n=0: FOR j=2 TO 5: LET n=n+b(j)/256^(j-1): NEXT j
860 LET b(1)=b(1)-128
865 LET n=n*2^b(1)
870 IF m THEN LET n=-n
875 RETURN
900 REM arrays
905 LET p1=PEEK (p+1)+256*PEEK (p+2): LET p=p+3
910 LET d=PEEK p: LET p=p+1
915 LET t=1: FOR j=1 TO d
920 LET el=PEEK p+256*PEEK (p+1): LET t=t*el: PRINT el
925 IF d<>1 AND j<>d THEN PRINT ",";
930 LET p=p+2: NEXT j: PRINT ")"
940 LET p=p-1
945 RETURN
9998 SAVE "VARIABLE A" LINE 1