Home » Archimedes archive » Acorn User » AU 1995-09.adf » !Regulars » Regulars/StarInfo/Vibe/ANAMORPH2

Regulars/StarInfo/Vibe/ANAMORPH2

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 1995-09.adf » !Regulars
Filename: Regulars/StarInfo/Vibe/ANAMORPH2
Read OK:
File size: 0368 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM > ANAMORPH2
   20
   30CLS:INPUT'"Spritefile="NAME$
   40PRINT"Upside down Y/N? ";:A$=GET$
   50MODE15:OFF:RECTANGLE FILL 0,0,1280,1024
   60DIM SPR &60000,BUF 16,OX%(999,2),OY%(999,2),OC%(999),OT%(999)
   70SPR!0=&5FFFF:SPR!4=0:SPR!8=16:SPR!12=16:P1%=1:P2%=2
   80SYS"OS_SpriteOp",256+10,SPR,NAME$
   90SYS"OS_SpriteOp",256+13,SPR,BUF,16,1 TO ,,,BL%
  100SP$="":FORN%=0TOBL%-1:SP$=SP$+CHR$(BUF?N%):NEXT
  110SYS"OS_SpriteOp",256+40,SPR,SP$ TO ,,,WP%,HP%
  120W%=WP%*2:H%=HP%*4:RD=512/HP%:CA=250/WP%:R=640
  130FORY%=H%TO4STEP-4:SWAP P1%,P2%:L=PI*R:A=-126:R=R-RD
  140FORN%=0TOWP%-1:X%=N%*2
  150K%=HP%-Y%/4:IF A$="Y" OR A$="y" K%=Y%/4-1
  160SYS"OS_SpriteOp",256+41,SPR,SP$,X%/2,K% TO ,,,,,OC%(N%),OT%(N%)
  170A=A+CA:T=RADA:OX%(N%,P1%)=640+R*SINT:OY%(N%,P1%)=384+R*COST
  180NEXT
  190IF Y%<>H% THEN
  200FORN%=0TOWP%-2:GCOL OC%(N%) TINT OT%(N%)
  210MOVEOX%(N%,P1%),OY%(N%,P1%):MOVEOX%(N%+1,P1%),OY%(N%+1,P1%)
  220PLOT85,OX%(N%,P2%),OY%(N%,P2%):PLOT85,OX%(N%+1,P2%),OY%(N%+1,P2%)
  230NEXT
  240ENDIF
  250NEXT

� > ANAMORPH2

�:�'"Spritefile="NAME$
(�"Upside down Y/N? ";:A$=�
2�15:�:ȓ Ȑ 0,0,1280,1024
<?� SPR &60000,BUF 16,OX%(999,2),OY%(999,2),OC%(999),OT%(999)
F7SPR!0=&5FFFF:SPR!4=0:SPR!8=16:SPR!12=16:P1%=1:P2%=2
P$ș"OS_SpriteOp",256+10,SPR,NAME$
Z0ș"OS_SpriteOp",256+13,SPR,BUF,16,1 � ,,,BL%
d*SP$="":�N%=0�BL%-1:SP$=SP$+�(BUF?N%):�
n/ș"OS_SpriteOp",256+40,SPR,SP$ � ,,,WP%,HP%
x1W%=WP%*2:H%=HP%*4:RD=512/HP%:CA=250/WP%:R=640
�.�Y%=H%�4�-4:Ȕ P1%,P2%:L=�*R:A=-126:R=R-RD
��N%=0�WP%-1:X%=N%*2
�+K%=HP%-Y%/4:� A$="Y" � A$="y" K%=Y%/4-1
�Aș"OS_SpriteOp",256+41,SPR,SP$,X%/2,K% � ,,,,,OC%(N%),OT%(N%)
�9A=A+CA:T=�A:OX%(N%,P1%)=640+R*�T:OY%(N%,P1%)=384+R*�T
��
�� Y%<>H% �
�$�N%=0�WP%-2:� OC%(N%) Ȝ OT%(N%)
�9�OX%(N%,P1%),OY%(N%,P1%):�OX%(N%+1,P1%),OY%(N%+1,P1%)
�?�85,OX%(N%,P2%),OY%(N%,P2%):�85,OX%(N%+1,P2%),OY%(N%+1,P2%)
��
��
��
�
00000000  0d 00 0a 11 f4 20 3e 20  41 4e 41 4d 4f 52 50 48  |..... > ANAMORPH|
00000010  32 0d 00 14 04 0d 00 1e  1a db 3a e8 27 22 53 70  |2.........:.'"Sp|
00000020  72 69 74 65 66 69 6c 65  3d 22 4e 41 4d 45 24 0d  |ritefile="NAME$.|
00000030  00 28 1e f1 22 55 70 73  69 64 65 20 64 6f 77 6e  |.(.."Upside down|
00000040  20 59 2f 4e 3f 20 22 3b  3a 41 24 3d be 0d 00 32  | Y/N? ";:A$=...2|
00000050  1d eb 31 35 3a 87 3a c8  93 20 c8 90 20 30 2c 30  |..15:.:.. .. 0,0|
00000060  2c 31 32 38 30 2c 31 30  32 34 0d 00 3c 3f de 20  |,1280,1024..<?. |
00000070  53 50 52 20 26 36 30 30  30 30 2c 42 55 46 20 31  |SPR &60000,BUF 1|
00000080  36 2c 4f 58 25 28 39 39  39 2c 32 29 2c 4f 59 25  |6,OX%(999,2),OY%|
00000090  28 39 39 39 2c 32 29 2c  4f 43 25 28 39 39 39 29  |(999,2),OC%(999)|
000000a0  2c 4f 54 25 28 39 39 39  29 0d 00 46 37 53 50 52  |,OT%(999)..F7SPR|
000000b0  21 30 3d 26 35 46 46 46  46 3a 53 50 52 21 34 3d  |!0=&5FFFF:SPR!4=|
000000c0  30 3a 53 50 52 21 38 3d  31 36 3a 53 50 52 21 31  |0:SPR!8=16:SPR!1|
000000d0  32 3d 31 36 3a 50 31 25  3d 31 3a 50 32 25 3d 32  |2=16:P1%=1:P2%=2|
000000e0  0d 00 50 24 c8 99 22 4f  53 5f 53 70 72 69 74 65  |..P$.."OS_Sprite|
000000f0  4f 70 22 2c 32 35 36 2b  31 30 2c 53 50 52 2c 4e  |Op",256+10,SPR,N|
00000100  41 4d 45 24 0d 00 5a 30  c8 99 22 4f 53 5f 53 70  |AME$..Z0.."OS_Sp|
00000110  72 69 74 65 4f 70 22 2c  32 35 36 2b 31 33 2c 53  |riteOp",256+13,S|
00000120  50 52 2c 42 55 46 2c 31  36 2c 31 20 b8 20 2c 2c  |PR,BUF,16,1 . ,,|
00000130  2c 42 4c 25 0d 00 64 2a  53 50 24 3d 22 22 3a e3  |,BL%..d*SP$="":.|
00000140  4e 25 3d 30 b8 42 4c 25  2d 31 3a 53 50 24 3d 53  |N%=0.BL%-1:SP$=S|
00000150  50 24 2b bd 28 42 55 46  3f 4e 25 29 3a ed 0d 00  |P$+.(BUF?N%):...|
00000160  6e 2f c8 99 22 4f 53 5f  53 70 72 69 74 65 4f 70  |n/.."OS_SpriteOp|
00000170  22 2c 32 35 36 2b 34 30  2c 53 50 52 2c 53 50 24  |",256+40,SPR,SP$|
00000180  20 b8 20 2c 2c 2c 57 50  25 2c 48 50 25 0d 00 78  | . ,,,WP%,HP%..x|
00000190  31 57 25 3d 57 50 25 2a  32 3a 48 25 3d 48 50 25  |1W%=WP%*2:H%=HP%|
000001a0  2a 34 3a 52 44 3d 35 31  32 2f 48 50 25 3a 43 41  |*4:RD=512/HP%:CA|
000001b0  3d 32 35 30 2f 57 50 25  3a 52 3d 36 34 30 0d 00  |=250/WP%:R=640..|
000001c0  82 2e e3 59 25 3d 48 25  b8 34 88 2d 34 3a c8 94  |...Y%=H%.4.-4:..|
000001d0  20 50 31 25 2c 50 32 25  3a 4c 3d af 2a 52 3a 41  | P1%,P2%:L=.*R:A|
000001e0  3d 2d 31 32 36 3a 52 3d  52 2d 52 44 0d 00 8c 17  |=-126:R=R-RD....|
000001f0  e3 4e 25 3d 30 b8 57 50  25 2d 31 3a 58 25 3d 4e  |.N%=0.WP%-1:X%=N|
00000200  25 2a 32 0d 00 96 2b 4b  25 3d 48 50 25 2d 59 25  |%*2...+K%=HP%-Y%|
00000210  2f 34 3a e7 20 41 24 3d  22 59 22 20 84 20 41 24  |/4:. A$="Y" . A$|
00000220  3d 22 79 22 20 4b 25 3d  59 25 2f 34 2d 31 0d 00  |="y" K%=Y%/4-1..|
00000230  a0 41 c8 99 22 4f 53 5f  53 70 72 69 74 65 4f 70  |.A.."OS_SpriteOp|
00000240  22 2c 32 35 36 2b 34 31  2c 53 50 52 2c 53 50 24  |",256+41,SPR,SP$|
00000250  2c 58 25 2f 32 2c 4b 25  20 b8 20 2c 2c 2c 2c 2c  |,X%/2,K% . ,,,,,|
00000260  4f 43 25 28 4e 25 29 2c  4f 54 25 28 4e 25 29 0d  |OC%(N%),OT%(N%).|
00000270  00 aa 39 41 3d 41 2b 43  41 3a 54 3d b2 41 3a 4f  |..9A=A+CA:T=.A:O|
00000280  58 25 28 4e 25 2c 50 31  25 29 3d 36 34 30 2b 52  |X%(N%,P1%)=640+R|
00000290  2a b5 54 3a 4f 59 25 28  4e 25 2c 50 31 25 29 3d  |*.T:OY%(N%,P1%)=|
000002a0  33 38 34 2b 52 2a 9b 54  0d 00 b4 05 ed 0d 00 be  |384+R*.T........|
000002b0  0e e7 20 59 25 3c 3e 48  25 20 8c 0d 00 c8 24 e3  |.. Y%<>H% ....$.|
000002c0  4e 25 3d 30 b8 57 50 25  2d 32 3a e6 20 4f 43 25  |N%=0.WP%-2:. OC%|
000002d0  28 4e 25 29 20 c8 9c 20  4f 54 25 28 4e 25 29 0d  |(N%) .. OT%(N%).|
000002e0  00 d2 39 ec 4f 58 25 28  4e 25 2c 50 31 25 29 2c  |..9.OX%(N%,P1%),|
000002f0  4f 59 25 28 4e 25 2c 50  31 25 29 3a ec 4f 58 25  |OY%(N%,P1%):.OX%|
00000300  28 4e 25 2b 31 2c 50 31  25 29 2c 4f 59 25 28 4e  |(N%+1,P1%),OY%(N|
00000310  25 2b 31 2c 50 31 25 29  0d 00 dc 3f f0 38 35 2c  |%+1,P1%)...?.85,|
00000320  4f 58 25 28 4e 25 2c 50  32 25 29 2c 4f 59 25 28  |OX%(N%,P2%),OY%(|
00000330  4e 25 2c 50 32 25 29 3a  f0 38 35 2c 4f 58 25 28  |N%,P2%):.85,OX%(|
00000340  4e 25 2b 31 2c 50 32 25  29 2c 4f 59 25 28 4e 25  |N%+1,P2%),OY%(N%|
00000350  2b 31 2c 50 32 25 29 0d  00 e6 05 ed 0d 00 f0 05  |+1,P2%).........|
00000360  cd 0d 00 fa 05 ed 0d ff                           |........|
00000368