This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page,
please contact me immediatelly so I can remove it!
Entry name:
Variable Locate Program
|
Publisher/Developer:
BELLCOM - Public Domain Library (Software library) |
|
|
-
Entry name:Variable Locate Program
-
Category:Programming utilities
-
Publisher/Developer:BELLCOM - Public Domain Library
-
Year:1984
Listing 1
1FORJRZQ=1705TO1779:READA:POKEJRZQ,A:NEXTJRZQ:FORI=1536TO1702:READA:POKEI,A:NEXTI:GOTO29035
2DATA104,169,0,170,168,133,207,133,204,177,205,221,244,6,208,19,32,222,6,200,169,0,197,204,240,1,96,232
3DATA228,203,208,233,230,207,96,32,222,6,177,205,200,56,233,128,48,245,230,207,162,0,76,178,6,192,255,208
4DATA2,230,206,152,101,205,197,134,208,8,165,206,197,135,208,2,230,204,96
5DATA104,160,0,177,205,133,207,32,141,6,177,205,133,208,32,141,6,177,205,170,133,203,32,141,6,202,169,14
6DATA209,205,208,71,197,204,208,29,32,148,6,138,72,162,0,177,205,221,159,6,208,4,169,6,133,209,232,32,141
7DATA6,224,8,208,239,76,93,6,138,72,162,0,32,141,6,224,6,240,17,232,196,204,208,244,189,243,6,209,205,208
8DATA237,230,209,76,69,6,104,233,7,170,165,209,201,6,240,29,152,133,209,196,204,240,6,177,205,197,204,240
9DATA16,224,3,208,158,32,141,6,165,208,201,113,240,11,76,3,6,32,141,6,202,224,2,208,248,96,230,205,208
10DATA2,230,206,96,198,205,165,205,201,255,208,2,198,206,96,4,10,12,13,23,24,27,35
29000CLR
29005REMPROGRAMNAME"FINDVAR.LST"
29010REMROBERTEYERMAN,JR.4/15/84
29015REM
29030GRAPHICS0:F=1:GOTO1
29035DIMA$(10),Z9$(10)
29040NAMSTRT=PEEK(130)+PEEK(131)*256
29045NAMEND=PEEK(132)+PEEK(133)*256
29050IFF=0THEN29075
29055?:?:?"29030":?"29055":?"1":?"2":?"3":?"4":?"5":?"6":?"7":?"8":?"9":?"10":?"CONT"
29060POSITION0,0
29065POKE842,13:STOP
29070POKE842,12
29075GRAPHICS0:F=0
29080REMBEGIN,ENDVAR.NAMETABLE
29085?:?"***VARIABLELOCATEPROGRAM***":?:?
29090?"DOYOUWANTLISTOFVARIABLES(1)":?"LOCATEAVARIABLE(2)"
29095?"LOCATEACONSTANT(3)":?"LOCATELINEREFS.(4)":?:?:?"HIT1,2,3,OR4"
29100INPUTA$:IFA$<"1"ORA$>"4"THEN?"INPUTEITHER1,2,3OR4":GOTO29100
29105IFA$="1"THEN29295
29110IFA$="3"THEN29365
29115IFA$="4"THEN29440
29120GRAPHICS0:?:?:?"INPUTVARIABLENAME"
29125?"ARRAYNAMEMUSTENDWITH("
29130INPUTA$
29135ALEN=LEN(A$)
29140A=ASC(A$(ALEN,ALEN))
29145A=A+128:REMSETLASTCHAR.TOINVERSEVIDEO
29150A$(ALEN,ALEN)=CHR$(A)
29155REMFINDVARIABLENO.INTABLE
29160POKE205,PEEK(130):POKE206,PEEK(131):POKE203,ALEN:POKE208,PEEK(132):POKE209,PEEK(133)
29165C=1
29170FORI=1780TO1779+ALEN:POKEI,ASC(A$(C,C)):C=C+1:NEXTI
29175A=USR(1705)
29180NAME=127+PEEK(207)
29185IFPEEK(204)=1THEN?:?"**VARIABLE";A$;"NOTUSED**":GOTO29265
29190GRAPHICS0
29195POKE204,NAME:POKE205,PEEK(136):POKE206,PEEK(137)
29200IFA$="N"THENEND
29205A=USR(1536):REMFINDLINES
29210LINEN0=PEEK(207)+PEEK(208)*256
29215IFLINEN0>28999THEN29265
29220IFLINEN0=LSTLINTHEN29230
29225REMAVOIDPRINTDUPLICATELINES
29230LINELOC=PEEK(205)+PEEK(206)*256-PEEK(203)
29235IFPEEK(LINELOC+4)=0THEN29205
29240REMSKIPLINESTARTINGWITHREM
29245IFNAME=155THENIFPEEK(LINELOC+PEEK(LINELOC+2)-1)=155THEN29205
29250REMSKIPEOLCHARACTERIFONEATENDOFLINE
29255LISTLINEN0:LSTLIN=LINEN0
29260GOTO29205
29265?"WANTTOCONTINUE?YORN":GOTO29270
29270INPUTA$
29275IFA$="N"THENEND
29280IFA$<>"Y"THEN29265
29285GOTO29000
29290REMLISTALLVARIABLENAMESOFUSERPROGRAM
29295GRAPHICS0:C=1:?"***VARIABLENAMELIST***":?
29300FORI=1TO10:Z9$(I,I)="0":NEXTI
29305FORI=NAMSTRTTONAMEND
29310IFPEEK(I)>128THENA=PEEK(I)-128:Z9=PEEK(I):Z9$(C,C)=CHR$(A):GOTO29320
29315Z9=PEEK(I):Z9$(C,C)=CHR$(Z9):C=C+1:GOTO29345
29320IFZ9$(1,4)="JRZQ"THEN29350
29325C2=C2+1
29330IFC1=2THEN29340
29335?Z9$(1,C),"";:C=1:C1=C1+1:GOTO29345
29340?Z9$(1,C):C=1:C1=0
29345NEXTI
29350?:?:?"TOTALNUMBEROFVARIABLES=";C2
29355GOTO29265
29360REM**************************
29365REMFINDCONSTANT
29370REM**************************
29375XXX=1780:POKE209,0:POKE204,0
29380POKE205,PEEK(136):POKE206,PEEK(137)
29385C=1:C1=1:GRAPHICS0:?:?"INPUTCONSTANT"
29390INPUTA:A$=STR$(A):ALEN=LEN(A$):Z9$=A$
29395I=ALEN/2:IFI<>INT(I)THENI=INT(I+1):ALEN=ALEN+1:A$(2,ALEN)=Z9$:A$(1,1)="0"
29400POKEXXX,63+I
29405Z9$=A$(ALEN-C,ALEN-C+1):A=VAL(Z9$(1,1))*16+VAL(Z9$(2,2)):POKEXXX+PEEK(XXX)-63-C1+1,A
29410IFALEN-C=1THEN29420
29415C1=C1+1:C=C+2:GOTO29405
29420FORI=6TOC1+1STEP-1:POKEXXX+I,0:NEXTI
29425A=USR(1536)
29430LINEN0=PEEK(207)+PEEK(208)*256:IFLINEN0>28999THEN29265
29435LISTLINEN0:GOTO29425
29437REM****************
29438REMFINDLINEREFERENCES
29439REM****************
29440GRAPHICS0:POKE205,PEEK(136):POKE206,PEEK(137)
29455POKE209,0:POKE204,14
29460A=USR(1536)
29465LINEN0=PEEK(207)+PEEK(208)*256:IFLINEN0>28999THEN29265
29470LISTLINEN0:GOTO29455
References
Listing downloads
Copyright holder
