Home » Archimedes archive » Acorn User » AU 1994-03.adf » !StarInfo_StarInfo » Turnbull/!Pyramid/Library/ADR
Turnbull/!Pyramid/Library/ADR
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 » Archimedes archive » Acorn User » AU 1994-03.adf » !StarInfo_StarInfo |
Filename: | Turnbull/!Pyramid/Library/ADR |
Read OK: | ✔ |
File size: | 017F bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10DEFFNadr(R%,A%,I%) 20LOCALerr$:err$="ADR" 30LOCALN%,O%,H%,U% 40H%=A%-P%-8:O%=15:N%=0 50FORU%=1TOI% 60IFH%=0THEN 70[OPT T%:MOV R%,O%:] 80ELSEWHILE(H%AND3)=0:H%=H%>>2:N%+=2:ENDWHILE 90IF(H%AND256)=0THEN 100[OPT T%:ADD R%,O%,#(H%AND255)<<N%:]:H%-=H%AND255 110ELSE[OPT T%:SUB R%,O%,#(256-H%AND255)<<N%:]:H%+=256-H%AND255 120ENDIF 130ENDIF 140O%=R%:NEXT 150IFH%<>0THENPRINT"Not enough instructions for ADR "'"R%=";R%'"A%=";A%'"I%=";I%:END 160=T%
ݤadr(R%,A%,I%) �err$:err$="ADR" �N%,O%,H%,U% (H%=A%-P%-8:O%=15:N%=0 2�U%=1�I% < �H%=0� F[OPT T%:MOV R%,O%:] P �ȕ(H%�3)=0:H%=H%>>2:N%+=2:� Z�(H%�256)=0� d0[OPT T%:ADD R%,O%,#(H%�255)<<N%:]:H%-=H%�255 n9�[OPT T%:SUB R%,O%,#(256-H%�255)<<N%:]:H%+=256-H%�255 x� �� �O%=R%:� �K�H%<>0��"Not enough instructions for ADR "'"R%=";R%'"A%=";A%'"I%=";I%:� �=T% �
00000000 0d 00 0a 13 dd a4 61 64 72 28 52 25 2c 41 25 2c |......adr(R%,A%,| 00000010 49 25 29 0d 00 14 14 ea 65 72 72 24 3a 65 72 72 |I%).....err$:err| 00000020 24 3d 22 41 44 52 22 0d 00 1e 10 ea 4e 25 2c 4f |$="ADR".....N%,O| 00000030 25 2c 48 25 2c 55 25 0d 00 28 19 48 25 3d 41 25 |%,H%,U%..(.H%=A%| 00000040 2d 50 25 2d 38 3a 4f 25 3d 31 35 3a 4e 25 3d 30 |-P%-8:O%=15:N%=0| 00000050 0d 00 32 0c e3 55 25 3d 31 b8 49 25 0d 00 3c 0a |..2..U%=1.I%..<.| 00000060 e7 48 25 3d 30 8c 0d 00 46 17 5b 4f 50 54 20 54 |.H%=0...F.[OPT T| 00000070 25 3a 4d 4f 56 20 52 25 2c 4f 25 3a 5d 0d 00 50 |%:MOV R%,O%:]..P| 00000080 20 cc c8 95 28 48 25 80 33 29 3d 30 3a 48 25 3d | ...(H%.3)=0:H%=| 00000090 48 25 3e 3e 32 3a 4e 25 2b 3d 32 3a ce 0d 00 5a |H%>>2:N%+=2:...Z| 000000a0 10 e7 28 48 25 80 32 35 36 29 3d 30 8c 0d 00 64 |..(H%.256)=0...d| 000000b0 30 5b 4f 50 54 20 54 25 3a 41 44 44 20 52 25 2c |0[OPT T%:ADD R%,| 000000c0 4f 25 2c 23 28 48 25 80 32 35 35 29 3c 3c 4e 25 |O%,#(H%.255)<<N%| 000000d0 3a 5d 3a 48 25 2d 3d 48 25 80 32 35 35 0d 00 6e |:]:H%-=H%.255..n| 000000e0 39 cc 5b 4f 50 54 20 54 25 3a 53 55 42 20 52 25 |9.[OPT T%:SUB R%| 000000f0 2c 4f 25 2c 23 28 32 35 36 2d 48 25 80 32 35 35 |,O%,#(256-H%.255| 00000100 29 3c 3c 4e 25 3a 5d 3a 48 25 2b 3d 32 35 36 2d |)<<N%:]:H%+=256-| 00000110 48 25 80 32 35 35 0d 00 78 05 cd 0d 00 82 05 cd |H%.255..x.......| 00000120 0d 00 8c 0b 4f 25 3d 52 25 3a ed 0d 00 96 4b e7 |....O%=R%:....K.| 00000130 48 25 3c 3e 30 8c f1 22 4e 6f 74 20 65 6e 6f 75 |H%<>0.."Not enou| 00000140 67 68 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 |gh instructions | 00000150 66 6f 72 20 41 44 52 20 22 27 22 52 25 3d 22 3b |for ADR "'"R%=";| 00000160 52 25 27 22 41 25 3d 22 3b 41 25 27 22 49 25 3d |R%'"A%=";A%'"I%=| 00000170 22 3b 49 25 3a e0 0d 00 a0 07 3d 54 25 0d ff |";I%:.....=T%..| 0000017f