Home » Personal collection » Acorn ADFS disks » Electron » Cheat_finder.ADF » Scroll2

Scroll2

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn ADFS disks » Electron » Cheat_finder.ADF
Filename: Scroll2
Read OK:
File size: 05CE bytes
Load address: FFFF1D00
Exec address: FFFF8023
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
   10 MODE1
   20 PRINT TAB(0,30)"ABCDEFGHIJKLMNOPQRSTUVWXYZZZZZZZZZZZZZZZ"
   30 line=30
   40 osword=&FFF1
   50 shift=&7B:row=&7C:col=&7D
   60 FOR pass=0 TO 2 STEP 2
   70 P%=&A00
   80 [OPTpass
   90 SEI
  100 LDA#mess MOD256:STA&70:LDA#mess DIV256:STA&71
  110 .mainloop
  120 LDY#0:LDA(&70),Y:BNEcont:CLI:RTS:.cont STA&72:LDX#&72:LDA#&A:JSRosword
  130 LDA#8:STAshift
  140 .charloop
  150 LDA#0:STArow
  160 LDA#((&3000+line/32*&5000) MOD256):STA&80:LDA#((&3000+line/32*&5000) DIV256):STA&81
  170 .downloop
  180 LDA#82:STAcol
  190 LDA#82:STAcol
  200 LDA&80:STA&8C:LDA&81:STA&8D
  210 LDXrow
  220 LDAshift:CMP#8:BNEoldvalue
  230 LDY&73,X:TYA:AND#&F0:STA&82:TYA:LSR A:LSR A:LSR A:LSR A:CLC:ADC&82:STA&84
  240 TYA:AND#&F:STA&82:TYA:ASL A:ASL A:ASL A:ASL A:CLC:ADC&82:STA&85
  250 JMPlineloop
  260 .oldvalue LDA&100,X:STA&84:LDA&108,X:STA&85
  270 .lineloop
  280 LDY#8:LDA(&8C),Y:LSR A:LSR A:LSR A:AND#&11:STA&82:LDY#0:LDA(&8C),Y:ASL A:AND#&EE:CLC:ADC&82:STA(&8C),Y
  290 DECcol:CLC:LDA&8C:ADC#8:STA&8C:LDA&8D:ADC#0:STA&8D:LDAcol:CMP#4:BCSlineloop
  300 LDA&84:LSR A:LSR A:LSR A:AND#11:STA&82:LDA(&8C),Y:ASL A:AND#&EE:ADC&82:STA(&8C),Y
  310 LDA&85:LSR A:LSR A:LSR A:AND#11:STA&82:LDA&84:ASL A:AND#&EE:ADC&82:STA&84
  320 LDA&85:ASL A:AND#&EE:STA&85
  330 LDXrow:LDA&84:STA&100,X:LDA&85:STA&108,X
  340 INC&80:INCrow:LDArow:CMP#8:BEQcont2:JMPdownloop:.cont2
  350 DECshift:BEQcont3:JMPcharloop:.cont3
  360 INC&70:BNEa:INC&71:.a JMPmainloop
  370 ]
  380 mess=&C00:A$="HELLO ABCDEFGHIJKLMNOPQRSTUVWXYZ ZYXWVUTSRQPONMLKJIHGFEDCBA GOODBYE!":$mess=A$:?(mess+LEN(A$))=0
  390 NEXT
  400 A$=GET$
  410 CALL&A00

 �1
7 � �0,30)"ABCDEFGHIJKLMNOPQRSTUVWXYZZZZZZZZZZZZZZZ"
 line=30
( osword=&FFF1
2 shift=&7B:row=&7C:col=&7D
< � pass=0 � 2 � 2
F P%=&A00
P
 [OPTpass
Z SEI
d. LDA#mess �256:STA&70:LDA#mess �256:STA&71
n .mainloop
xK LDY#0:LDA(&70),Y:BNEcont:CLI:RTS:.cont STA&72:LDX#&72:LDA#&A:JSRosword
� LDA#8:STAshift
� .charloop
� LDA#0:STArow
�T LDA#((&3000+line/32*&5000) �256):STA&80:LDA#((&3000+line/32*&5000) �256):STA&81
� .downloop
� LDA#82:STAcol
� LDA#82:STAcol
�  LDA&80:STA&8C:LDA&81:STA&8D
� LDXrow
� LDAshift:CMP#8:BNEoldvalue
�L LDY&73,X:TYA:�#&F0:STA&82:TYA:LSR A:LSR A:LSR A:LSR A:CLC:ADC&82:STA&84
�B TYA:�#&F:STA&82:TYA:ASL A:ASL A:ASL A:ASL A:CLC:ADC&82:STA&85
� JMPlineloop
0 .oldvalue LDA&100,X:STA&84:LDA&108,X:STA&85
 .lineloop
g LDY#8:LDA(&8C),Y:LSR A:LSR A:LSR A:�#&11:STA&82:LDY#0:LDA(&8C),Y:ASL A:�#&EE:CLC:ADC&82:STA(&8C),Y
"P DECcol:CLC:LDA&8C:ADC#8:STA&8C:LDA&8D:ADC#0:STA&8D:LDAcol:CMP#4:BCSlineloop
,R LDA&84:LSR A:LSR A:LSR A:�#11:STA&82:LDA(&8C),Y:ASL A:�#&EE:ADC&82:STA(&8C),Y
6J LDA&85:LSR A:LSR A:LSR A:�#11:STA&82:LDA&84:ASL A:�#&EE:ADC&82:STA&84
@ LDA&85:ASL A:�#&EE:STA&85
J- LDXrow:LDA&84:STA&100,X:LDA&85:STA&108,X
T; INC&80:INCrow:LDArow:CMP#8:BEQcont2:JMPdownloop:.cont2
^) DECshift:BEQcont3:JMPcharloop:.cont3
h& INC&70:BNEa:INC&71:.a JMPmainloop
r ]
|q mess=&C00:A$="HELLO ABCDEFGHIJKLMNOPQRSTUVWXYZ ZYXWVUTSRQPONMLKJIHGFEDCBA GOODBYE!":$mess=A$:?(mess+�(A$))=0
� �
�	 A$=�
�
 �&A00
�
00000000  0d 00 0a 07 20 eb 31 0d  00 14 37 20 f1 20 8a 30  |.... .1...7 . .0|
00000010  2c 33 30 29 22 41 42 43  44 45 46 47 48 49 4a 4b  |,30)"ABCDEFGHIJK|
00000020  4c 4d 4e 4f 50 51 52 53  54 55 56 57 58 59 5a 5a  |LMNOPQRSTUVWXYZZ|
00000030  5a 5a 5a 5a 5a 5a 5a 5a  5a 5a 5a 5a 5a 22 0d 00  |ZZZZZZZZZZZZZ"..|
00000040  1e 0c 20 6c 69 6e 65 3d  33 30 0d 00 28 11 20 6f  |.. line=30..(. o|
00000050  73 77 6f 72 64 3d 26 46  46 46 31 0d 00 32 1e 20  |sword=&FFF1..2. |
00000060  73 68 69 66 74 3d 26 37  42 3a 72 6f 77 3d 26 37  |shift=&7B:row=&7|
00000070  43 3a 63 6f 6c 3d 26 37  44 0d 00 3c 15 20 e3 20  |C:col=&7D..<. . |
00000080  70 61 73 73 3d 30 20 b8  20 32 20 88 20 32 0d 00  |pass=0 . 2 . 2..|
00000090  46 0c 20 50 25 3d 26 41  30 30 0d 00 50 0d 20 5b  |F. P%=&A00..P. [|
000000a0  4f 50 54 70 61 73 73 0d  00 5a 08 20 53 45 49 0d  |OPTpass..Z. SEI.|
000000b0  00 64 2e 20 4c 44 41 23  6d 65 73 73 20 83 32 35  |.d. LDA#mess .25|
000000c0  36 3a 53 54 41 26 37 30  3a 4c 44 41 23 6d 65 73  |6:STA&70:LDA#mes|
000000d0  73 20 81 32 35 36 3a 53  54 41 26 37 31 0d 00 6e  |s .256:STA&71..n|
000000e0  0e 20 2e 6d 61 69 6e 6c  6f 6f 70 0d 00 78 4b 20  |. .mainloop..xK |
000000f0  4c 44 59 23 30 3a 4c 44  41 28 26 37 30 29 2c 59  |LDY#0:LDA(&70),Y|
00000100  3a 42 4e 45 63 6f 6e 74  3a 43 4c 49 3a 52 54 53  |:BNEcont:CLI:RTS|
00000110  3a 2e 63 6f 6e 74 20 53  54 41 26 37 32 3a 4c 44  |:.cont STA&72:LD|
00000120  58 23 26 37 32 3a 4c 44  41 23 26 41 3a 4a 53 52  |X#&72:LDA#&A:JSR|
00000130  6f 73 77 6f 72 64 0d 00  82 13 20 4c 44 41 23 38  |osword.... LDA#8|
00000140  3a 53 54 41 73 68 69 66  74 0d 00 8c 0e 20 2e 63  |:STAshift.... .c|
00000150  68 61 72 6c 6f 6f 70 0d  00 96 11 20 4c 44 41 23  |harloop.... LDA#|
00000160  30 3a 53 54 41 72 6f 77  0d 00 a0 54 20 4c 44 41  |0:STArow...T LDA|
00000170  23 28 28 26 33 30 30 30  2b 6c 69 6e 65 2f 33 32  |#((&3000+line/32|
00000180  2a 26 35 30 30 30 29 20  83 32 35 36 29 3a 53 54  |*&5000) .256):ST|
00000190  41 26 38 30 3a 4c 44 41  23 28 28 26 33 30 30 30  |A&80:LDA#((&3000|
000001a0  2b 6c 69 6e 65 2f 33 32  2a 26 35 30 30 30 29 20  |+line/32*&5000) |
000001b0  81 32 35 36 29 3a 53 54  41 26 38 31 0d 00 aa 0e  |.256):STA&81....|
000001c0  20 2e 64 6f 77 6e 6c 6f  6f 70 0d 00 b4 12 20 4c  | .downloop.... L|
000001d0  44 41 23 38 32 3a 53 54  41 63 6f 6c 0d 00 be 12  |DA#82:STAcol....|
000001e0  20 4c 44 41 23 38 32 3a  53 54 41 63 6f 6c 0d 00  | LDA#82:STAcol..|
000001f0  c8 20 20 4c 44 41 26 38  30 3a 53 54 41 26 38 43  |.  LDA&80:STA&8C|
00000200  3a 4c 44 41 26 38 31 3a  53 54 41 26 38 44 0d 00  |:LDA&81:STA&8D..|
00000210  d2 0b 20 4c 44 58 72 6f  77 0d 00 dc 1f 20 4c 44  |.. LDXrow.... LD|
00000220  41 73 68 69 66 74 3a 43  4d 50 23 38 3a 42 4e 45  |Ashift:CMP#8:BNE|
00000230  6f 6c 64 76 61 6c 75 65  0d 00 e6 4c 20 4c 44 59  |oldvalue...L LDY|
00000240  26 37 33 2c 58 3a 54 59  41 3a 80 23 26 46 30 3a  |&73,X:TYA:.#&F0:|
00000250  53 54 41 26 38 32 3a 54  59 41 3a 4c 53 52 20 41  |STA&82:TYA:LSR A|
00000260  3a 4c 53 52 20 41 3a 4c  53 52 20 41 3a 4c 53 52  |:LSR A:LSR A:LSR|
00000270  20 41 3a 43 4c 43 3a 41  44 43 26 38 32 3a 53 54  | A:CLC:ADC&82:ST|
00000280  41 26 38 34 0d 00 f0 42  20 54 59 41 3a 80 23 26  |A&84...B TYA:.#&|
00000290  46 3a 53 54 41 26 38 32  3a 54 59 41 3a 41 53 4c  |F:STA&82:TYA:ASL|
000002a0  20 41 3a 41 53 4c 20 41  3a 41 53 4c 20 41 3a 41  | A:ASL A:ASL A:A|
000002b0  53 4c 20 41 3a 43 4c 43  3a 41 44 43 26 38 32 3a  |SL A:CLC:ADC&82:|
000002c0  53 54 41 26 38 35 0d 00  fa 10 20 4a 4d 50 6c 69  |STA&85.... JMPli|
000002d0  6e 65 6c 6f 6f 70 0d 01  04 30 20 2e 6f 6c 64 76  |neloop...0 .oldv|
000002e0  61 6c 75 65 20 4c 44 41  26 31 30 30 2c 58 3a 53  |alue LDA&100,X:S|
000002f0  54 41 26 38 34 3a 4c 44  41 26 31 30 38 2c 58 3a  |TA&84:LDA&108,X:|
00000300  53 54 41 26 38 35 0d 01  0e 0e 20 2e 6c 69 6e 65  |STA&85.... .line|
00000310  6c 6f 6f 70 0d 01 18 67  20 4c 44 59 23 38 3a 4c  |loop...g LDY#8:L|
00000320  44 41 28 26 38 43 29 2c  59 3a 4c 53 52 20 41 3a  |DA(&8C),Y:LSR A:|
00000330  4c 53 52 20 41 3a 4c 53  52 20 41 3a 80 23 26 31  |LSR A:LSR A:.#&1|
00000340  31 3a 53 54 41 26 38 32  3a 4c 44 59 23 30 3a 4c  |1:STA&82:LDY#0:L|
00000350  44 41 28 26 38 43 29 2c  59 3a 41 53 4c 20 41 3a  |DA(&8C),Y:ASL A:|
00000360  80 23 26 45 45 3a 43 4c  43 3a 41 44 43 26 38 32  |.#&EE:CLC:ADC&82|
00000370  3a 53 54 41 28 26 38 43  29 2c 59 0d 01 22 50 20  |:STA(&8C),Y.."P |
00000380  44 45 43 63 6f 6c 3a 43  4c 43 3a 4c 44 41 26 38  |DECcol:CLC:LDA&8|
00000390  43 3a 41 44 43 23 38 3a  53 54 41 26 38 43 3a 4c  |C:ADC#8:STA&8C:L|
000003a0  44 41 26 38 44 3a 41 44  43 23 30 3a 53 54 41 26  |DA&8D:ADC#0:STA&|
000003b0  38 44 3a 4c 44 41 63 6f  6c 3a 43 4d 50 23 34 3a  |8D:LDAcol:CMP#4:|
000003c0  42 43 53 6c 69 6e 65 6c  6f 6f 70 0d 01 2c 52 20  |BCSlineloop..,R |
000003d0  4c 44 41 26 38 34 3a 4c  53 52 20 41 3a 4c 53 52  |LDA&84:LSR A:LSR|
000003e0  20 41 3a 4c 53 52 20 41  3a 80 23 31 31 3a 53 54  | A:LSR A:.#11:ST|
000003f0  41 26 38 32 3a 4c 44 41  28 26 38 43 29 2c 59 3a  |A&82:LDA(&8C),Y:|
00000400  41 53 4c 20 41 3a 80 23  26 45 45 3a 41 44 43 26  |ASL A:.#&EE:ADC&|
00000410  38 32 3a 53 54 41 28 26  38 43 29 2c 59 0d 01 36  |82:STA(&8C),Y..6|
00000420  4a 20 4c 44 41 26 38 35  3a 4c 53 52 20 41 3a 4c  |J LDA&85:LSR A:L|
00000430  53 52 20 41 3a 4c 53 52  20 41 3a 80 23 31 31 3a  |SR A:LSR A:.#11:|
00000440  53 54 41 26 38 32 3a 4c  44 41 26 38 34 3a 41 53  |STA&82:LDA&84:AS|
00000450  4c 20 41 3a 80 23 26 45  45 3a 41 44 43 26 38 32  |L A:.#&EE:ADC&82|
00000460  3a 53 54 41 26 38 34 0d  01 40 1e 20 4c 44 41 26  |:STA&84..@. LDA&|
00000470  38 35 3a 41 53 4c 20 41  3a 80 23 26 45 45 3a 53  |85:ASL A:.#&EE:S|
00000480  54 41 26 38 35 0d 01 4a  2d 20 4c 44 58 72 6f 77  |TA&85..J- LDXrow|
00000490  3a 4c 44 41 26 38 34 3a  53 54 41 26 31 30 30 2c  |:LDA&84:STA&100,|
000004a0  58 3a 4c 44 41 26 38 35  3a 53 54 41 26 31 30 38  |X:LDA&85:STA&108|
000004b0  2c 58 0d 01 54 3b 20 49  4e 43 26 38 30 3a 49 4e  |,X..T; INC&80:IN|
000004c0  43 72 6f 77 3a 4c 44 41  72 6f 77 3a 43 4d 50 23  |Crow:LDArow:CMP#|
000004d0  38 3a 42 45 51 63 6f 6e  74 32 3a 4a 4d 50 64 6f  |8:BEQcont2:JMPdo|
000004e0  77 6e 6c 6f 6f 70 3a 2e  63 6f 6e 74 32 0d 01 5e  |wnloop:.cont2..^|
000004f0  29 20 44 45 43 73 68 69  66 74 3a 42 45 51 63 6f  |) DECshift:BEQco|
00000500  6e 74 33 3a 4a 4d 50 63  68 61 72 6c 6f 6f 70 3a  |nt3:JMPcharloop:|
00000510  2e 63 6f 6e 74 33 0d 01  68 26 20 49 4e 43 26 37  |.cont3..h& INC&7|
00000520  30 3a 42 4e 45 61 3a 49  4e 43 26 37 31 3a 2e 61  |0:BNEa:INC&71:.a|
00000530  20 4a 4d 50 6d 61 69 6e  6c 6f 6f 70 0d 01 72 06  | JMPmainloop..r.|
00000540  20 5d 0d 01 7c 71 20 6d  65 73 73 3d 26 43 30 30  | ]..|q mess=&C00|
00000550  3a 41 24 3d 22 48 45 4c  4c 4f 20 41 42 43 44 45  |:A$="HELLO ABCDE|
00000560  46 47 48 49 4a 4b 4c 4d  4e 4f 50 51 52 53 54 55  |FGHIJKLMNOPQRSTU|
00000570  56 57 58 59 5a 20 5a 59  58 57 56 55 54 53 52 51  |VWXYZ ZYXWVUTSRQ|
00000580  50 4f 4e 4d 4c 4b 4a 49  48 47 46 45 44 43 42 41  |PONMLKJIHGFEDCBA|
00000590  20 47 4f 4f 44 42 59 45  21 22 3a 24 6d 65 73 73  | GOODBYE!":$mess|
000005a0  3d 41 24 3a 3f 28 6d 65  73 73 2b a9 28 41 24 29  |=A$:?(mess+.(A$)|
000005b0  29 3d 30 0d 01 86 06 20  ed 0d 01 90 09 20 41 24  |)=0.... ..... A$|
000005c0  3d be 0d 01 9a 0a 20 d6  26 41 30 30 0d ff        |=..... .&A00..|
000005ce
Scroll2.m0
Scroll2.m1
Scroll2.m2
Scroll2.m4
Scroll2.m5