Home » Archimedes archive » Acorn User » AU 1994-12.adf » !StarInfo_StarInfo » Marriott/SmallText

Marriott/SmallText

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-12.adf » !StarInfo_StarInfo
Filename: Marriott/SmallText
Read OK:
File size: 0464 bytes
Load address: 0000
Exec address: 0000
File contents
    1MODE 9
    2REM Needs SmallFont
    3CLOSE#0
    4line%=0
    5SYS "OS_RemoveCursors"
    6ON ERROR CLOSE#0: REPORT: PRINT ERL: END
    7PROCload
    8line%=0
    9*FX 4,1
   10PROCplot(line%)
   11REPEAT
   12key$=GET$
   13IF key$="�" IF line%>0 line%-=1: PROCscrollup(line%)
   14IF key$="�" IF line%<lines% line%+=1: PROCscrolldown(line%)
   15UNTIL 0
   16END
   17:
   18DEF PROCload
   19f$="SmallFontI"
   20DIM line$(10000)
   21f%=OPENUP(f$)
   22lines%=0
   23REPEAT
   24str$=GET$#f%
   25line$(lines%)=FNprocess(str$)
   26lines%+=1
   27PRINT TAB(0,0);"Lines = ";lines%
   28UNTIL EOF#f%
   29CLOSE#f%
   30CLS
   31PRINT " Use � and � to move up and down."'" Press any key to continue."
   32REPEAT UNTIL GET
   33ENDPROC
   34:
   35DEF PROCplot(line%)
   36CLS
   37FOR pos%=0 TO 42
   38SYS "Small_String",line$(line%+pos%),0,1024-(pos%*24)
   39NEXT
   40ENDPROC
   41:
   42DEF PROCscrolldown(line%)
   43RECTANGLE FILL 0,0,1280,1024 TO 0,24
   44SYS "Small_String",line$(line%+42),0,1024-(42*24)
   45ENDPROC
   46:
   47DEF PROCscrollup(line%)
   48RECTANGLE FILL 0,0,1280,1024 TO 0,-24
   49SYS "Small_String",line$(line%+1),0,1024-(1*24)
   50GCOL 0
   51WAIT
   52RECTANGLE FILL 0,0,1280,12
   53GCOL 7
   54ENDPROC
   55:
   56DEF FNprocess(str$)
   57FOR char%=1 TO LEN(str$)
   58byte%=ASC(MID$(str$,char%,1))
   59IF (byte%>96 AND byte%<123) byte%-=32
   60IF (byte%<32 OR byte%>95) byte%=32
   61MID$(str$,char%)=CHR$(byte%)
   62NEXT
   63=str$
� 9
� Needs SmallFont
�#0
line%=0
ș "OS_RemoveCursors"
� � �#0: �: � �: �
	�load
line%=0
	*FX 4,1

�plot(line%)
�

key$=�

3� key$="�" � line%>0 line%-=1: �scrollup(line%)
:� key$="�" � line%<lines% line%+=1: �scrolldown(line%)
� 0
�
:
� �load
f$="SmallFontI"
� line$(10000)
f%=�(f$)
lines%=0
�

str$=�#f%
 line$(lines%)=�process(str$)

lines%+=1
� �0,0);"Lines = ";lines%

� �#f%
�#f%
�
G� " Use � and � to move up and down."'" Press any key to continue."
 	� � �
!�
":
#� �plot(line%)
$�
%� pos%=0 � 42
&8ș "Small_String",line$(line%+pos%),0,1024-(pos%*24)
'�
(�
):
*� �scrolldown(line%)
+ȓ Ȑ 0,0,1280,1024 � 0,24
,4ș "Small_String",line$(line%+42),0,1024-(42*24)
-�
.:
/� �scrollup(line%)
0ȓ Ȑ 0,0,1280,1024 � 0,-24
12ș "Small_String",line$(line%+1),0,1024-(1*24)
2� 0
3Ȗ
4ȓ Ȑ 0,0,1280,12
5� 7
6�
7:
8� �process(str$)
9� char%=1 � �(str$)
:byte%=�(�str$,char%,1))
;&� (byte%>96 � byte%<123) byte%-=32
<$� (byte%<32 � byte%>95) byte%=32
=�str$,char%)=�(byte%)
>�
?	=str$
�
00000000  0d 00 01 07 eb 20 39 0d  00 02 15 f4 20 4e 65 65  |..... 9..... Nee|
00000010  64 73 20 53 6d 61 6c 6c  46 6f 6e 74 0d 00 03 07  |ds SmallFont....|
00000020  d9 23 30 0d 00 04 0b 6c  69 6e 65 25 3d 30 0d 00  |.#0....line%=0..|
00000030  05 19 c8 99 20 22 4f 53  5f 52 65 6d 6f 76 65 43  |.... "OS_RemoveC|
00000040  75 72 73 6f 72 73 22 0d  00 06 16 ee 20 85 20 d9  |ursors"..... . .|
00000050  23 30 3a 20 f6 3a 20 f1  20 9e 3a 20 e0 0d 00 07  |#0: .: . .: ....|
00000060  09 f2 6c 6f 61 64 0d 00  08 0b 6c 69 6e 65 25 3d  |..load....line%=|
00000070  30 0d 00 09 0b 2a 46 58  20 34 2c 31 0d 00 0a 10  |0....*FX 4,1....|
00000080  f2 70 6c 6f 74 28 6c 69  6e 65 25 29 0d 00 0b 05  |.plot(line%)....|
00000090  f5 0d 00 0c 0a 6b 65 79  24 3d be 0d 00 0d 33 e7  |.....key$=....3.|
000000a0  20 6b 65 79 24 3d 22 8b  22 20 e7 20 6c 69 6e 65  | key$="." . line|
000000b0  25 3e 30 20 6c 69 6e 65  25 2d 3d 31 3a 20 f2 73  |%>0 line%-=1: .s|
000000c0  63 72 6f 6c 6c 75 70 28  6c 69 6e 65 25 29 0d 00  |crollup(line%)..|
000000d0  0e 3a e7 20 6b 65 79 24  3d 22 8a 22 20 e7 20 6c  |.:. key$="." . l|
000000e0  69 6e 65 25 3c 6c 69 6e  65 73 25 20 6c 69 6e 65  |ine%<lines% line|
000000f0  25 2b 3d 31 3a 20 f2 73  63 72 6f 6c 6c 64 6f 77  |%+=1: .scrolldow|
00000100  6e 28 6c 69 6e 65 25 29  0d 00 0f 07 fd 20 30 0d  |n(line%)..... 0.|
00000110  00 10 05 e0 0d 00 11 05  3a 0d 00 12 0b dd 20 f2  |........:..... .|
00000120  6c 6f 61 64 0d 00 13 13  66 24 3d 22 53 6d 61 6c  |load....f$="Smal|
00000130  6c 46 6f 6e 74 49 22 0d  00 14 12 de 20 6c 69 6e  |lFontI"..... lin|
00000140  65 24 28 31 30 30 30 30  29 0d 00 15 0c 66 25 3d  |e$(10000)....f%=|
00000150  ad 28 66 24 29 0d 00 16  0c 6c 69 6e 65 73 25 3d  |.(f$)....lines%=|
00000160  30 0d 00 17 05 f5 0d 00  18 0d 73 74 72 24 3d be  |0.........str$=.|
00000170  23 66 25 0d 00 19 20 6c  69 6e 65 24 28 6c 69 6e  |#f%... line$(lin|
00000180  65 73 25 29 3d a4 70 72  6f 63 65 73 73 28 73 74  |es%)=.process(st|
00000190  72 24 29 0d 00 1a 0d 6c  69 6e 65 73 25 2b 3d 31  |r$)....lines%+=1|
000001a0  0d 00 1b 1d f1 20 8a 30  2c 30 29 3b 22 4c 69 6e  |..... .0,0);"Lin|
000001b0  65 73 20 3d 20 22 3b 6c  69 6e 65 73 25 0d 00 1c  |es = ";lines%...|
000001c0  0a fd 20 c5 23 66 25 0d  00 1d 08 d9 23 66 25 0d  |.. .#f%.....#f%.|
000001d0  00 1e 05 db 0d 00 1f 47  f1 20 22 20 55 73 65 20  |.......G. " Use |
000001e0  8a 20 61 6e 64 20 8b 20  74 6f 20 6d 6f 76 65 20  |. and . to move |
000001f0  75 70 20 61 6e 64 20 64  6f 77 6e 2e 22 27 22 20  |up and down."'" |
00000200  50 72 65 73 73 20 61 6e  79 20 6b 65 79 20 74 6f  |Press any key to|
00000210  20 63 6f 6e 74 69 6e 75  65 2e 22 0d 00 20 09 f5  | continue.".. ..|
00000220  20 fd 20 a5 0d 00 21 05  e1 0d 00 22 05 3a 0d 00  | . ...!....".:..|
00000230  23 12 dd 20 f2 70 6c 6f  74 28 6c 69 6e 65 25 29  |#.. .plot(line%)|
00000240  0d 00 24 05 db 0d 00 25  11 e3 20 70 6f 73 25 3d  |..$....%.. pos%=|
00000250  30 20 b8 20 34 32 0d 00  26 38 c8 99 20 22 53 6d  |0 . 42..&8.. "Sm|
00000260  61 6c 6c 5f 53 74 72 69  6e 67 22 2c 6c 69 6e 65  |all_String",line|
00000270  24 28 6c 69 6e 65 25 2b  70 6f 73 25 29 2c 30 2c  |$(line%+pos%),0,|
00000280  31 30 32 34 2d 28 70 6f  73 25 2a 32 34 29 0d 00  |1024-(pos%*24)..|
00000290  27 05 ed 0d 00 28 05 e1  0d 00 29 05 3a 0d 00 2a  |'....(....).:..*|
000002a0  18 dd 20 f2 73 63 72 6f  6c 6c 64 6f 77 6e 28 6c  |.. .scrolldown(l|
000002b0  69 6e 65 25 29 0d 00 2b  1e c8 93 20 c8 90 20 30  |ine%)..+... .. 0|
000002c0  2c 30 2c 31 32 38 30 2c  31 30 32 34 20 b8 20 30  |,0,1280,1024 . 0|
000002d0  2c 32 34 0d 00 2c 34 c8  99 20 22 53 6d 61 6c 6c  |,24..,4.. "Small|
000002e0  5f 53 74 72 69 6e 67 22  2c 6c 69 6e 65 24 28 6c  |_String",line$(l|
000002f0  69 6e 65 25 2b 34 32 29  2c 30 2c 31 30 32 34 2d  |ine%+42),0,1024-|
00000300  28 34 32 2a 32 34 29 0d  00 2d 05 e1 0d 00 2e 05  |(42*24)..-......|
00000310  3a 0d 00 2f 16 dd 20 f2  73 63 72 6f 6c 6c 75 70  |:../.. .scrollup|
00000320  28 6c 69 6e 65 25 29 0d  00 30 1f c8 93 20 c8 90  |(line%)..0... ..|
00000330  20 30 2c 30 2c 31 32 38  30 2c 31 30 32 34 20 b8  | 0,0,1280,1024 .|
00000340  20 30 2c 2d 32 34 0d 00  31 32 c8 99 20 22 53 6d  | 0,-24..12.. "Sm|
00000350  61 6c 6c 5f 53 74 72 69  6e 67 22 2c 6c 69 6e 65  |all_String",line|
00000360  24 28 6c 69 6e 65 25 2b  31 29 2c 30 2c 31 30 32  |$(line%+1),0,102|
00000370  34 2d 28 31 2a 32 34 29  0d 00 32 07 e6 20 30 0d  |4-(1*24)..2.. 0.|
00000380  00 33 06 c8 96 0d 00 34  15 c8 93 20 c8 90 20 30  |.3.....4... .. 0|
00000390  2c 30 2c 31 32 38 30 2c  31 32 0d 00 35 07 e6 20  |,0,1280,12..5.. |
000003a0  37 0d 00 36 05 e1 0d 00  37 05 3a 0d 00 38 14 dd  |7..6....7.:..8..|
000003b0  20 a4 70 72 6f 63 65 73  73 28 73 74 72 24 29 0d  | .process(str$).|
000003c0  00 39 17 e3 20 63 68 61  72 25 3d 31 20 b8 20 a9  |.9.. char%=1 . .|
000003d0  28 73 74 72 24 29 0d 00  3a 1b 62 79 74 65 25 3d  |(str$)..:.byte%=|
000003e0  97 28 c1 73 74 72 24 2c  63 68 61 72 25 2c 31 29  |.(.str$,char%,1)|
000003f0  29 0d 00 3b 26 e7 20 28  62 79 74 65 25 3e 39 36  |)..;&. (byte%>96|
00000400  20 80 20 62 79 74 65 25  3c 31 32 33 29 20 62 79  | . byte%<123) by|
00000410  74 65 25 2d 3d 33 32 0d  00 3c 24 e7 20 28 62 79  |te%-=32..<$. (by|
00000420  74 65 25 3c 33 32 20 84  20 62 79 74 65 25 3e 39  |te%<32 . byte%>9|
00000430  35 29 20 62 79 74 65 25  3d 33 32 0d 00 3d 19 c1  |5) byte%=32..=..|
00000440  73 74 72 24 2c 63 68 61  72 25 29 3d bd 28 62 79  |str$,char%)=.(by|
00000450  74 65 25 29 0d 00 3e 05  ed 0d 00 3f 09 3d 73 74  |te%)..>....?.=st|
00000460  72 24 0d ff                                       |r$..|
00000464