Home » Archimedes archive » Micro User » MU 1991-10.adf » Listings » Routines/SmrtTxt

Routines/SmrtTxt

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 » Micro User » MU 1991-10.adf » Listings
Filename: Routines/SmrtTxt
Read OK:
File size: 02AF bytes
Load address: 0000
Exec address: 0000
File contents
   10REM Smart Text
   20REM by Pete Goodliffe
   30REM (c) The Micro User
   40MODE 2:VDU 23,1,0;0;0;0;
   50DIM G%(7):A%=&A:X%=&80:Y%=0
   60FOR M=1 TO 8:READ col,A$,X1,Y1,X2,Y2:GCOL 0,col:PROCxtext(A$,X1,Y1,X2,Y2):NEXT:GCOL 0,2:MOVE 50,850:DRAW 1230,850
   70VDU 31,0,20:END
   80DEF PROCxtext(A$,X,Y,L,H)
   90L=(L-X)/LENA$/8:H=(Y-H)/8
  100FOR N=1 TO LEN(A$)
  110?&80=ASC(MID$(A$,N,1)):CALL &FFF1
  120FOR A=0 TO 7:FOR B=8 TO 1 STEP-1
  130IF(?(&81+A)AND 2^(B-1))<>0 MOVE X+(N-1)*L*8+(8-B)*L,Y-A*H:PLOT 0,L,0:PLOT 81,-L,-H:PLOT 81,L,0
  140NEXT:NEXT:NEXT:ENDPROC
  150DATA 6,SMART-TEXT,50,1015,1230,850
  160DATA 1,By Pete Goodliffe,50,840,1230,810
  170DATA 4,ROUTINE,0,800,1250,550
  180DATA 5,MATTERS,30,550,1220,450
  190DATA 3,1,1210,800,1280,735
  200DATA 3,9,1210,735,1280,670
  210DATA 3,9,1210,670,1280,605
  220DATA 3,1,1210,605,1280,540

� Smart Text
� by Pete Goodliffe
� (c) The Micro User
(� 2:� 23,1,0;0;0;0;
2� G%(7):A%=&A:X%=&80:Y%=0
<]� M=1 � 8:� col,A$,X1,Y1,X2,Y2:� 0,col:�xtext(A$,X1,Y1,X2,Y2):�:� 0,2:� 50,850:� 1230,850
F� 31,0,20:�
P� �xtext(A$,X,Y,L,H)
ZL=(L-X)/�A$/8:H=(Y-H)/8
d� N=1 � �(A$)
n?&80=�(�A$,N,1)):� &FFF1
x� A=0 � 7:� B=8 � 1 �-1
�S�(?(&81+A)� 2^(B-1))<>0 � X+(N-1)*L*8+(8-B)*L,Y-A*H:� 0,L,0:� 81,-L,-H:� 81,L,0
��:�:�:�
�#� 6,SMART-TEXT,50,1015,1230,850
�)� 1,By Pete Goodliffe,50,840,1230,810
�� 4,ROUTINE,0,800,1250,550
�� 5,MATTERS,30,550,1220,450
�� 3,1,1210,800,1280,735
�� 3,9,1210,735,1280,670
�� 3,9,1210,670,1280,605
�� 3,1,1210,605,1280,540
�
00000000  0d 00 0a 10 f4 20 53 6d  61 72 74 20 54 65 78 74  |..... Smart Text|
00000010  0d 00 14 17 f4 20 62 79  20 50 65 74 65 20 47 6f  |..... by Pete Go|
00000020  6f 64 6c 69 66 66 65 0d  00 1e 18 f4 20 28 63 29  |odliffe..... (c)|
00000030  20 54 68 65 20 4d 69 63  72 6f 20 55 73 65 72 0d  | The Micro User.|
00000040  00 28 17 eb 20 32 3a ef  20 32 33 2c 31 2c 30 3b  |.(.. 2:. 23,1,0;|
00000050  30 3b 30 3b 30 3b 0d 00  32 1d de 20 47 25 28 37  |0;0;0;..2.. G%(7|
00000060  29 3a 41 25 3d 26 41 3a  58 25 3d 26 38 30 3a 59  |):A%=&A:X%=&80:Y|
00000070  25 3d 30 0d 00 3c 5d e3  20 4d 3d 31 20 b8 20 38  |%=0..<]. M=1 . 8|
00000080  3a f3 20 63 6f 6c 2c 41  24 2c 58 31 2c 59 31 2c  |:. col,A$,X1,Y1,|
00000090  58 32 2c 59 32 3a e6 20  30 2c 63 6f 6c 3a f2 78  |X2,Y2:. 0,col:.x|
000000a0  74 65 78 74 28 41 24 2c  58 31 2c 59 31 2c 58 32  |text(A$,X1,Y1,X2|
000000b0  2c 59 32 29 3a ed 3a e6  20 30 2c 32 3a ec 20 35  |,Y2):.:. 0,2:. 5|
000000c0  30 2c 38 35 30 3a df 20  31 32 33 30 2c 38 35 30  |0,850:. 1230,850|
000000d0  0d 00 46 0f ef 20 33 31  2c 30 2c 32 30 3a e0 0d  |..F.. 31,0,20:..|
000000e0  00 50 18 dd 20 f2 78 74  65 78 74 28 41 24 2c 58  |.P.. .xtext(A$,X|
000000f0  2c 59 2c 4c 2c 48 29 0d  00 5a 1b 4c 3d 28 4c 2d  |,Y,L,H)..Z.L=(L-|
00000100  58 29 2f a9 41 24 2f 38  3a 48 3d 28 59 2d 48 29  |X)/.A$/8:H=(Y-H)|
00000110  2f 38 0d 00 64 11 e3 20  4e 3d 31 20 b8 20 a9 28  |/8..d.. N=1 . .(|
00000120  41 24 29 0d 00 6e 1c 3f  26 38 30 3d 97 28 c1 41  |A$)..n.?&80=.(.A|
00000130  24 2c 4e 2c 31 29 29 3a  d6 20 26 46 46 46 31 0d  |$,N,1)):. &FFF1.|
00000140  00 78 1b e3 20 41 3d 30  20 b8 20 37 3a e3 20 42  |.x.. A=0 . 7:. B|
00000150  3d 38 20 b8 20 31 20 88  2d 31 0d 00 82 53 e7 28  |=8 . 1 .-1...S.(|
00000160  3f 28 26 38 31 2b 41 29  80 20 32 5e 28 42 2d 31  |?(&81+A). 2^(B-1|
00000170  29 29 3c 3e 30 20 ec 20  58 2b 28 4e 2d 31 29 2a  |))<>0 . X+(N-1)*|
00000180  4c 2a 38 2b 28 38 2d 42  29 2a 4c 2c 59 2d 41 2a  |L*8+(8-B)*L,Y-A*|
00000190  48 3a f0 20 30 2c 4c 2c  30 3a f0 20 38 31 2c 2d  |H:. 0,L,0:. 81,-|
000001a0  4c 2c 2d 48 3a f0 20 38  31 2c 4c 2c 30 0d 00 8c  |L,-H:. 81,L,0...|
000001b0  0b ed 3a ed 3a ed 3a e1  0d 00 96 23 dc 20 36 2c  |..:.:.:....#. 6,|
000001c0  53 4d 41 52 54 2d 54 45  58 54 2c 35 30 2c 31 30  |SMART-TEXT,50,10|
000001d0  31 35 2c 31 32 33 30 2c  38 35 30 0d 00 a0 29 dc  |15,1230,850...).|
000001e0  20 31 2c 42 79 20 50 65  74 65 20 47 6f 6f 64 6c  | 1,By Pete Goodl|
000001f0  69 66 66 65 2c 35 30 2c  38 34 30 2c 31 32 33 30  |iffe,50,840,1230|
00000200  2c 38 31 30 0d 00 aa 1e  dc 20 34 2c 52 4f 55 54  |,810..... 4,ROUT|
00000210  49 4e 45 2c 30 2c 38 30  30 2c 31 32 35 30 2c 35  |INE,0,800,1250,5|
00000220  35 30 0d 00 b4 1f dc 20  35 2c 4d 41 54 54 45 52  |50..... 5,MATTER|
00000230  53 2c 33 30 2c 35 35 30  2c 31 32 32 30 2c 34 35  |S,30,550,1220,45|
00000240  30 0d 00 be 1b dc 20 33  2c 31 2c 31 32 31 30 2c  |0..... 3,1,1210,|
00000250  38 30 30 2c 31 32 38 30  2c 37 33 35 0d 00 c8 1b  |800,1280,735....|
00000260  dc 20 33 2c 39 2c 31 32  31 30 2c 37 33 35 2c 31  |. 3,9,1210,735,1|
00000270  32 38 30 2c 36 37 30 0d  00 d2 1b dc 20 33 2c 39  |280,670..... 3,9|
00000280  2c 31 32 31 30 2c 36 37  30 2c 31 32 38 30 2c 36  |,1210,670,1280,6|
00000290  30 35 0d 00 dc 1b dc 20  33 2c 31 2c 31 32 31 30  |05..... 3,1,1210|
000002a0  2c 36 30 35 2c 31 32 38  30 2c 35 34 30 0d ff     |,605,1280,540..|
000002af