home *** CD-ROM | disk | FTP | other *** search
- 0 REM " Y[166]L[174][167]" : SNAPFIX V2.2
- 1 REM BY: JON PURKEY - 01/29/90
- 2 REM ORIGNAL SNAPFIX BY ANDY BARBOLLA
- 3 :
- 4 Z$=CHR$(0):X=0:A$="":GOTO10
- 6 OPEN1,D,15:OPEN5,D,5,"#":POKE53280,PEEK(53280)-15:PRINT#1,"U1:";5;0;T;S
- 7 FORX=BTOE:GET#5,A$:POKEX,ASC(A$+Z$):NEXT:CLOSE1:CLOSE5:RETURN
- 10 PRINTCHR$(142):GOSUB600:GOSUB500
- 15 PRINT"SNAPFIX ONLY? (Y/N):";
- 20 GOSUB700
- 25 IFX$<>"Y"ANDX$<>"N"THEN20
- 30 PRINTX$:IFX$="Y"THENSX=1
- 35 PRINT"PROGRAM WILL CHECK FOR DRIVE TYPE."
- 50 PRINT"DEVICE? (8-11):";:T=0:DD$=""
- 52 GOSUB700
- 56 IFX$>="0"ANDX$<="9"ANDT<2THENPRINTX$;:DD$=DD$+X$:T=T+1:GOTO52
- 57 IFX$=CHR$(20)ANDT=2THENPRINTX$;:DD$=LEFT$(DD$,1):T=1:GOTO52
- 58 IFX$=CHR$(20)ANDT=1THENPRINTX$;:DD$="":T=0:GOTO52
- 59 IFX$<>CHR$(13)THEN52
- 60 D=VAL(DD$):IFD>11ORD<8THENPRINTCHR$(20);CHR$(20);"[145][145]":GOTO50
- 65 PRINT:PRINT"NOTE: IF THE SNAPSHOT IS IN TWO FILES,"
- 66 PRINT"PLEASE ENTER THE FILENAME INCLUDING THE"
- 67 PRINT"'1' PREFIX."
- 70 FF$="":T=0:PRINT"FILENAME:";
- 72 GOSUB700
- 74 IFX$>=CHR$(32)ANDX$<=CHR$(127)ANDT<16THENPRINTX$;:FF$=FF$+X$:T=T+1:GOTO72
- 75 IFX$=CHR$(20)ANDT>=2THENPRINTX$;:FF$=LEFT$(FF$,LEN(FF$)-1):T=T-1:GOTO72
- 76 IFX$=CHR$(20)ANDT=1THENPRINTX$;:FF$="":T=0:GOTO72
- 77 IFX$<>CHR$(13)THEN72
- 78 IFT=0THEN72
- 79 PRINT:PRINT"DRIVE TYPE:";
- 80 OPEN1,D,15:PRINT#1,"M-R"Z$;CHR$(128):GET#1,A$:DT=ASC(A$+Z$):CLOSE1
- 82 IFDT=77THENPRINT"1581":T=40:S=3:GOTO85
- 83 T=18:S=1:IFDT=151THENPRINT"1541":GOTO85
- 84 PRINT"1571 OR OTHER?"
- 85 FORX=1TO500:NEXT:PRINT"CHECKING DISK...":OPEN1,D,15:OPEN2,D,2,FF$
- 92 INPUT#1,A$,B$,C$,D$:CLOSE1:CLOSE2
- 94 IFA$<>"00"THENPRINT"*ERROR* - "B$"!":END
- 100 POKE53280,0:POKE53281,0:PRINT"[147]SCANNING DIRECTORY..."
- 103 V1=160:V2=0:V3=32:V4=49382:V5=1:B=49152:E=49407
- 106 GOSUB6:T=PEEK(B):S=PEEK(B+1):X=B+5
- 108 B$="":Y=X
- 109 P=PEEK(Y):IFP=V1ORP=V2THEN111
- 110 B$=B$+CHR$(P):Y=Y+V5:GOTO109
- 111 PRINT"-";:IFB$=FF$THEN115
- 112 X=X+V3:IFX<V4THEN108
- 113 GOTO106
- 115 T=PEEK(X-2):S=PEEK(X-1)
- 120 PRINT:PRINT"READING CURRENT VALUES...":PRINT"SNAPFIX:";
- 122 E=49153:GOSUB6:T=PEEK(B):S=PEEK(E):T2=T:S2=S:E=49407:GOSUB6
- 123 IFPEEK(49337)=234THENSF$="NO":PRINTSF$:GOTO126
- 124 IFPEEK(49337)=169THENSF$="YES":SF=1:PRINTSF$:GOTO126
- 125 PRINT:PRINT"[145]*ERROR* - NOT A SNAPSHOT FILE!!":END
- 126 IFSX=1THENGOSUB2100:GOTO2200
- 127 GOSUB2000:PRINT"VECTORS...":B=49408:E=49409
- 128 GOSUB6:T=PEEK(B):S=PEEK(B+1):T6=T:S6=S
- 129 E=49663:GOSUB6:T=PEEK(B):S=PEEK(B+1):T7=T:S7=S:B=49664:E=49919:GOSUB6
- 130 POKE53280,0
- 134 LO=49536:PRINT"F-KEYS:";
- 135 FL=0:L1=72:L2=247:H1=235:H2=223:H3=222:GOSUB150:FK$=X$:FK=FL:PRINTFK$
- 136 KF=LO:PRINT"WEDGE:";:FL=0:L1=131:L2=250:H1=164:GOSUB150:WE$=X$:WE=FL
- 137 PRINTWE$:EW=LO:PRINT"NMI:";:FL=0:L1=71:L2=244:H1=254:GOSUB150:NM$=X$:NM=FL
- 139 PRINTNM$:MN=LO:PRINT"TURBO LOAD:";:FL=0:L1=165:L2=253:H1=244:GOSUB150
- 141 TL$=X$:TL=FL:PRINTTL$:LT=LO:PRINT"TURBO SAVE:";:FL=0:L1=237:L2=241:H1=245
- 143 GOSUB150:TS$=X$:TS=FL:PRINTTS$:SU=LO:IFSM<>2THENGOTO200
- 144 SX=1:GOTO2200
- 150 X=LO
- 153 X=X+1:IFX=49870THENX$=UN$:FL=2:RETURN
- 155 P=PEEK(X):IFP<>L1ANDP<>L2THEN153
- 160 P1=PEEK(X+1):IFP=L1ANDP1<>H1THEN153
- 162 IFP=L2ANDP1<>H2ANDP1<>H3THEN153
- 163 LO=X
- 164 IFP=L1THENX$="OFF":FL=0:IFSS<>1THENSM=0:SM$="SS DISABLED/NO SS"
- 165 IFP=L1THENRETURN
- 166 X$="ON":FL=1:IFSS=1THENRETURN
- 167 SS=1:IFP=L2ANDP1=H2THENSM$="V3/4":SM=3:RETURN
- 168 SM$="V5":SM=5:RETURN
- 200 GOSUB500:PRINT" CURRENT SETTINGS ARE LISTED BELOW"
- 201 PRINT" USE CRSR KEYS TO SELECT AND SPACE"
- 202 PRINT"[160] TO TOGGLE SELECTIONS OFF AND ON"
- 203 PRINT"[160] PRESS RETURN TO UPDATE THE FILE":CF=0
- 204 PRINT" FILE: "FF$
- 210 GOSUB800:P=1545:POKEP,62
- 230 GETX$:IFX$=""THEN230
- 232 IFX$=""ANDP<1785THENP=P+40:POKEP,62:POKEP-40,32:GOTO230
- 233 IFX$="[145]"ANDP>1545THENP=P-40:POKEP,62:POKEP+40,32:GOTO230
- 234 IFX$=CHR$(32)THEN250
- 236 IFX$<>CHR$(13)THEN230
- 238 IFCF=1THENPOKE53280,0:POKE53281,0:PRINT"[147]UPDATING FILE...":GOTO300
- 240 PRINT" * NO CHANGES HAVE BEEN MADE * "
- 241 FORY=1TO1000:NEXT:PRINT"[145]"S$S$S$S$:GOTO230
- 250 ON(P-1505)/40GOSUB1100,1200,1300,1400,1500,1600,1700:CF=1
- 251 GOSUB800:POKEP,62:GOTO230
- 300 IFFS=0THEN306
- 301 IFSF=0THEN304
- 302 POKE49337,169:POKE49338,PEEK(49478):POKE49478,0:POKE49339,141:POKE49340,17
- 303 POKE49341,208:GOTO305
- 304 POKE49478,PEEK(49338):FORX=49337TO49341:POKEX,234:NEXT
- 305 IFSX=1THEN375
- 306 IFFK$="OFF"THENPOKEKF, 72:POKEKF+1,235
- 307 IFWE$="OFF"THENPOKEEW,131:POKEEW+1,164
- 308 IFNM$="OFF"THENPOKEMN, 71:POKEMN+1,254
- 309 IFTL$="OFF"THENPOKELT,165:POKELT+1,244
- 310 IFTS$="OFF"THENPOKESU,237:POKESU+1,245
- 311 IFSM=3THEN350
- 312 IFSM=5THEN325
- 315 GOTO365
- 325 IFFK=1THENPOKEKF,247:POKEKF+1,H3
- 327 IFWE=1THENPOKEEW,250:POKEEW+1,H3
- 329 IFNM=1THENPOKEMN,244:POKEMN+1,H3
- 331 IFTL=1THENPOKELT,253:POKELT+1,H3
- 333 IFTS=1THENPOKESU,241:POKESU+1,H3
- 335 GOTO365
- 350 IFFK=1THENPOKEKF,247:POKEKF+1,H2
- 357 IFWE=1THENPOKEEW,250:POKEEW+1,H2
- 359 IFNM=1THENPOKEMN,244:POKEMN+1,H2
- 361 IFTL=1THENPOKELT,253:POKELT+1,H2
- 363 IFTS=1THENPOKESU,241:POKESU+1,H2
- 364 REM
- 365 IFOS=2THEN375
- 366 IFNS=OSTHENOS=2:GOTO375
- 367 IFOS=0ANDNS=3THENPOKEOL,180:POKEOL+1,223:GOTO375
- 368 IFOS=0ANDNS=5THENPOKEOL,186:POKEOL+1,222:GOTO375
- 369 IFOS=3ANDNS=5THENPOKEOL,186:POKEOL+1,222:GOTO375
- 370 IFOS=5ANDNS=3THENPOKEOL,180:POKEOL+1,223:GOTO375
- 371 POKEOL,133:POKEOL+1,164:POKEOL+2,121:POKEOL+3,166:POKEOL+4,156:POKEOL+5,227
- 375 REM
- 377 T=T2:S=S2:B=49152:E=49407:GOSUB1800
- 378 T=T6:S=S6:B=B+256:E=E+256:GOSUB1800:IFSX=1THEN385
- 379 T=T7:S=S7:B=B+256:E=E+256:GOSUB1800
- 381 IFOS=2THEN385
- 382 B=50176:E=50431:T=T3:S=S3:GOSUB1800
- 383 B=B+256:E=E+256:T=T4:S=S4:GOSUB1800
- 385 POKE53280,0:PRINT"DONE!"
- 386 PRINT"R: RUN SNAPFIX ON ANOTHER FILE":PRINT"L: LOAD/RUN SNAPSHOT FILE"
- 387 PRINT"E: EXIT TO SNAPSHOT OR BASIC":PRINT"ENTER R, L, OR E:";
- 388 GOSUB700:IFX$<>"R"ANDX$<>"E"ANDX$<>"L"THEN388
- 389 PRINTX$:IFX$="L"THEN396
- 390 IFX$="R"THENGOSUB500:RUN
- 391 PRINT"OK!":FORY=1TO500:NEXT
- 392 POKE828,169:POKE829,0:POKE830,141:POKE831,0:POKE833,108:POKE834,252
- 393 POKE835,255:IFPEEK(56832)=2THENPOKE832,222:SYS828
- 394 IFPEEK(57088)=50THENPOKE832,223:SYS828
- 395 SYS64738
- 396 IFLEFT$(FF$,1)="1"THENFF$=RIGHT$(FF$,LEN(FF$)-1)
- 397 PRINT"[144]>#";D:PRINT"%"FF$"*":PRINT"RUN:":PRINT"[145][145][145][145][145][145][145][145][145][145]"
- 398 POKE631,13:POKE632,13:POKE633,13:POKE198,3:END
- 500 POKE53281,14:POKE53280,14:Q$="[192][192][192][192][192][192][192][192][192]"
- 501 PRINT"[147] [160]"Q$Q$Q$Q$
- 502 PRINT" [144]SNAPSHOT FILE FIXER - BY: JON PURKEY"
- 503 PRINT" "Q$Q$Q$Q$:RETURN
- 600 POKE53280,0:POKE53281,0:PRINT"[154][147]V2.2 - JANUARY 29TH 1990"
- 601 PRINT"THIS PROGRAM WILL ALLOW YOU TO CHANGE"
- 602 PRINT"THE F-KEYS, LOAD/SAVE, WEDGE AND OTHER"
- 603 PRINT"VECTORS ON A SNAPSHOT FILE WITHOUT HAV-"
- 604 PRINT"ING TO MAKE A NEW SNAPSHOT."
- 608 PRINT"NOTE: THIS MAY NOT WORK ON V3 SNAPSHOTS,";
- 609 PRINT"BUT I AM PRETTY SURE IT WILL."
- 610 PRINT"THE SNAPFIX OPTION WILL MAKE THE "
- 611 PRINT"START-UP ON RUN CLEANER."
- 612 PRINT"ORIGINAL SNAPFIX PROGRAM WRITTEN BY"
- 613 PRINT"ANDY BARBOLLA.
- 614 [153]"IF YOU HAVE ANY QUESTIONS OR COMMENTS"
- 615 [153]"ABOUT THIS PROGRAM, PLEASE SEND A "
- 616 [153]"MESSAGE TO 'GULLIBLE' ON THE SSI BOARD"
- 617 [153]"OR SEND E-MAIL TO EITHER 'JON PURKEY'"
- 618 [153]"OR 'GULLIBLE' ON Q-LINK. - THANK YOU."
- 619 [153]"ANY KEY TO CONTINUE";:[141]700:[142]
- 700 FL[178]0:[153]"TOCMD";:[129]Y[178]1[164]50:[161]X$:[139]X$[179][177]""[167]Y[178]50:FL[178]1
- 701 [130]Y:[139]FL[178]1[167][153]" CMD";:[142]
- 702 [153]" CMD";:[129]Y[178]1[164]50:[161]X$:[139]X$[179][177]""[167]Y[178]50:FL[178]1
- 703 [130]Y:[139]FL[178]1[167][142]
- 704 [137]700
- 800 S$[178]" ":[141]808:[153]"CLOSE SNAPSHOT MODE: "SM$
- 801 [153]S$"SNAPFIX: "SF$
- 802 [153]S$" WEDGE: "WE$
- 803 [153]S$"F-KEYS: "FK$
- 804 [153]" TURBO LOAD: "TL$
- 805 [153]" TURBO SAVE: "TS$
- 806 [153]S$" NMI: "NM$:[142]
- 808 [153]"";:[129]X[178]1[164]7:[153]S$S$S$S$" ":[130]:[142]
- 900 [129]X[178]1[164]15:[151]54296,15:[151]54296,0:[130]:[142]
- 1100 [139]SM[178]2[167][141]900:[142]
- 1102 [139]SM$[178]"V5"[167]SM$[178]"V3/4":SM[178]3:NS[178]3:[142]
- 1105 [139]SM$[178]"V3/4"[167][137]1150
- 1110 SM$[178]"V5":SM[178]5:NS[178]5
- 1115 [139]WE[178]1[167]WE$[178]"ON"
- 1120 [139]FK[178]1[167]FK$[178]"ON"
- 1125 [139]TL[178]1[167]TL$[178]"ON"
- 1130 [139]TS[178]1[167]TS$[178]"ON"
- 1140 [139]NM[178]1[167]NM$[178]"ON"
- 1146 [142]
- 1150 SM$[178]"SS DISABLED/NO SS":SM[178]0:NS[178]0
- 1151 [139]WE[179][177]2[167]WE$[178]"OFF"
- 1152 [139]FK[179][177]2[167]FK$[178]"OFF"
- 1153 [139]TL[179][177]2[167]TL$[178]"OFF"
- 1154 [139]TS[179][177]2[167]TS$[178]"OFF"
- 1155 [139]NM[179][177]2[167]NM$[178]"OFF"
- 1156 [142]
- 1200 [139]SF[178]1[167]SF$[178]"NO":SF[178]0:[137]1202
- 1201 SF$[178]"YES":SF[178]1
- 1202 [139]FS[178]1[167]FS[178]0:[142]
- 1203 FS[178]1:[142]
- 1300 [139]WE[178]1[175]SM[179][177]0[167]WE$[178]"OFF":WE[178]0:[142]
- 1305 [139]WE[179][177]2[175](SM[178]5[176]SM[178]3)[167]WE$[178]"ON":WE[178]1:[142]
- 1310 [141]900:[142]
- 1400 [139]FK[178]1[175]SM[179][177]0[167]FK$[178]"OFF":FK[178]0:[142]
- 1405 [139]FK[179][177]2[175](SM[178]5[176]SM[178]3)[167]FK$[178]"ON":FK[178]1:[142]
- 1410 [141]900:[142]
- 1500 [139]TL[178]1[175]SM[179][177]0[167]TL$[178]"OFF":TL[178]0:[142]
- 1505 [139]TL[179][177]2[175](SM[178]5[176]SM[178]3)[167]TL$[178]"ON":TL[178]1:[142]
- 1510 [141]900:[142]
- 1600 [139]TS[178]1[175]SM[179][177]0[167]TS$[178]"OFF":TS[178]0:[142]
- 1605 [139]TS[179][177]2[175](SM[178]5[176]SM[178]3)[167]TS$[178]"ON":TS[178]1:[142]
- 1610 [141]900:[142]
- 1700 [139]NM[178]1[175]SM[179][177]0[167]NM$[178]"OFF":NM[178]0:[142]
- 1705 [139]NM[179][177]2[175](SM[178]5[176]SM[178]3)[167]NM$[178]"ON":NM[178]1:[142]
- 1710 [141]900:[142]
- 1800 A$[178]"":[159]1,D,15:[159]4,D,4,"#1":[151]53280,[194](53280)[171]15
- 1805 [129]X[178]B[170]1[164]E:A$[178]A$[170][199]([194](X)):[130]:[152]4,A$;[199]([194](B));
- 1810 [152]1,"U2";4;0;T;S:[160]4:[132]1,A$,B$,C$,D$
- 1815 [160]1:[139]B$[179][177]"OK"[167][153]"*DISK ERROR* - "B$"!":[128]
- 1820 [142]
- 2000 UN$[178]"UNKNOWN CAN'T CHANGE!!":[153]"STACK:";:T[178][194](B):S[178][194](B[170]1):T3[178]T:S3[178]S
- 2001 B[178]50176:E[178]50431:[141]6:T[178][194](B):S[178][194](B[170]1):T4[178]T:S4[178]S:B[178]B[170]256:E[178]E[170]256
- 2002 [141]6:T[178][194](B):S[178][194](B[170]1)
- 2004 X[178]50380
- 2006 X[178]X[170]1:P[178][194](X):P1[178][194](X[170]1)
- 2008 [139]P[178]133[175]P1[178]164[167]OS[178]0:NS[178]OS:SM[178]0:SM$[178]"SS DISABLED/NO SS":[137]2020
- 2010 [139]P[178]180[175]P1[178]223[167]OS[178]3:NS[178]OS:SS[178]1:SM[178]3:SM$[178]"V3/4":[137]2020
- 2012 [139]P[178]186[175]P1[178]222[167]OS[178]5:NS[178]OS:SS[178]1:SM[178]5:SM$[178]"V5":[137]2020
- 2015 [139]X[178]50441[167]OS[178]2:NS[178]OS:SM[178]2:SM$[178]UN$:[137]2020
- 2017 [137]2006
- 2020 OL[178]X
- 2025 [139]OS[178]2[167][153]"UNKNOWN! - THIS WON'T BE CHANGED!":[142]
- 2027 [153]SM$:[142]
- 2100 T[178][194](B):S[178][194](B[170]1):B[178]49408:E[178]49409
- 2110 [129]XX[178]1[164]3:[141]6:T[178][194](B):S[178][194](E):[130]:T6[178]T:S6[178]S:E[178]49663:[141]6:[142]
- 2200 [141]500:[139]SF[178]1[167]2250
- 2210 [153]"THIS SNAPSHOT DOES NOT CURRENTLY HAVE"
- 2212 [153]"'SNAPFIX' INSTALLED. DO YOU WISH TO"
- 2214 [153]"INSTALL IT? (Y/N):";
- 2216 [141]700
- 2218 [139]X$[179][177]"Y"[175]X$[179][177]"N"[167]2216
- 2220 [153]X$:[139]X$[178]"Y"[167]SF[178]1:FS[178]1:SF$[178]"YES":[137]2270
- 2225 [137]2265
- 2250 [153]"THE 'SNAPFIX' OPTION IS CURRENTLY "
- 2255 [153]"INSTALLED ON THIS SNAPSHOT. DO YOU WISH"
- 2257 [153]"TO REMOVE IT? (Y/N):";
- 2259 [141]700
- 2261 [139]X$[179][177]"Y"[175]X$[179][177]"N"[167]2259
- 2263 [153]X$:[139]X$[178]"Y"[167]SF[178]0:FS[178]1:SF$[178]"NO":[137]2270
- 2265 [151]53280,0:[151]53281,0:[153]"LOAD":[137]386
- 2270 [151]53280,0:[151]53281,0:[153]"LOADWORKING...":[137]300
-