Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape18a_acorn_eu_1991_january.wav » R.TextChk
R.TextChk
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 tapes » Electron_User » Electron_User_tape18a_acorn_eu_1991_january.wav |
Filename: | R.TextChk |
Read OK: | ✔ |
File size: | 0380 bytes |
Load address: | FFFF1900 |
Exec address: | FFFF802B |
Duplicates
There are 2 duplicate copies of this file in the archive:
- AEW website » mu » mu_5_25_discs_Micro_User_08_11_D-MU08_11.ssd » R.TextChk
- Personal collection » Acorn tapes » Electron_User » Electron_User_tape18a_acorn_eu_1991_january.wav » R.TextChk
- Personal collection » Acorn tapes » Electron_User » Electron_User_tape18b_acorn_eu_1991_january.wav » R.TextChk
File contents
10REM Sentence Checker 20REM by Graham Kendall 30REM (c) The Micro User 40REM January 1991 50REPEAT:PROCinit:CLS:PROChead:PROCcn("Please input your sentence"+CHR$(&0A)+CHR$(&0D),10):INPUT LINE Inp$:PROCcvrt:ans%=FNask:UNTIL ans%=FALSE:END 60DEF PROCinit:Prev$="":Work$="":OutSent$="":ENDPROC 70DEF PROCcvrt:FOR I%=1 TO LEN(Inp$):p$=MID$(Inp$,I%,1):IF (Prev$=". ") OR (RIGHT$(Prev$,1)=".") OR (I%=1) THEN PROCCheckCap ELSE PROCCheckSmall 80OutSent$=OutSent$+p$:Prev$=RIGHT$((Prev$+p$),2):NEXT:CLS:PROChead:PROCcn("Sentence now looks like this",6):PROCcn(STRING$(28,"="),7):PROCcn(OutSent$,9):PROCspace:ENDPROC 90DEF PROCCheckSmall:IF (ASC(p$)>&40) AND (ASC(p$)<&5B) THEN p$=CHR$(ASC(p$)OR&20):ENDPROC ELSE ENDPROC 100DEF PROCCheckCap:IF (ASC(p$)>&60) AND (ASC(p$)<&7B) THEN p$=CHR$(ASC(p$)EOR&20):ENDPROC ELSE ENDPROC 110DEF FNask:REPEAT CLS:PROChead 120PROCcn("Do you want to input another sentence",10):A%=INSTR("YyNn",GET$) 130UNTIL A%>0:IF A%=1 OR A%=2 THEN A%=TRUE:CLS:=A% ELSE A%=FALSE:CLS:=A% 140DEF PROCcn(t$,Y%):LOCAL X%:X%=19-LENt$/2:PRINTTAB(X%,Y%)t$:ENDPROC 150DEF PROChead:PROCcn("SENTENCE CHECKER",2):ENDPROC 160DEF PROCspace:PROCcn("Press Space to continue",24):REPEAT UNTIL GET=32:ENDPROC
� Sentence Checker � by Graham Kendall � (c) The Micro User (� January 1991 2j�:�init:�:�head:�cn("Please input your sentence"+�(&0A)+�(&0D),10):� � Inp$:�cvrt:ans%=�ask:� ans%=�:� <+� �init:Prev$="":Work$="":OutSent$="":� Fo� �cvrt:� I%=1 � �(Inp$):p$=�Inp$,I%,1):� (Prev$=". ") � (�Prev$,1)=".") � (I%=1) � �CheckCap � �CheckSmall P�OutSent$=OutSent$+p$:Prev$=�(Prev$+p$),2):�:�:�head:�cn("Sentence now looks like this",6):�cn(�28,"="),7):�cn(OutSent$,9):�space:� ZE� �CheckSmall:� (�(p$)>&40) � (�(p$)<&5B) � p$=�(�(p$)�&20):� � � dC� �CheckCap:� (�(p$)>&60) � (�(p$)<&7B) � p$=�(�(p$)�&20):� � � n� �ask:� �:�head xA�cn("Do you want to input another sentence",10):A%=�"YyNn",�) �2� A%>0:� A%=1 � A%=2 � A%=�:�:=A% � A%=�:�:=A% �.� �cn(t$,Y%):� X%:X%=19-�t$/2:�X%,Y%)t$:� �'� �head:�cn("SENTENCE CHECKER",2):� �9� �space:�cn("Press Space to continue",24):� � �=32:� �
00000000 0d 00 0a 16 f4 20 53 65 6e 74 65 6e 63 65 20 43 |..... Sentence C| 00000010 68 65 63 6b 65 72 0d 00 14 17 f4 20 62 79 20 47 |hecker..... by G| 00000020 72 61 68 61 6d 20 4b 65 6e 64 61 6c 6c 0d 00 1e |raham Kendall...| 00000030 18 f4 20 28 63 29 20 54 68 65 20 4d 69 63 72 6f |.. (c) The Micro| 00000040 20 55 73 65 72 0d 00 28 12 f4 20 4a 61 6e 75 61 | User..(.. Janua| 00000050 72 79 20 31 39 39 31 0d 00 32 6a f5 3a f2 69 6e |ry 1991..2j.:.in| 00000060 69 74 3a db 3a f2 68 65 61 64 3a f2 63 6e 28 22 |it:.:.head:.cn("| 00000070 50 6c 65 61 73 65 20 69 6e 70 75 74 20 79 6f 75 |Please input you| 00000080 72 20 73 65 6e 74 65 6e 63 65 22 2b bd 28 26 30 |r sentence"+.(&0| 00000090 41 29 2b bd 28 26 30 44 29 2c 31 30 29 3a e8 20 |A)+.(&0D),10):. | 000000a0 86 20 49 6e 70 24 3a f2 63 76 72 74 3a 61 6e 73 |. Inp$:.cvrt:ans| 000000b0 25 3d a4 61 73 6b 3a fd 20 61 6e 73 25 3d a3 3a |%=.ask:. ans%=.:| 000000c0 e0 0d 00 3c 2b dd 20 f2 69 6e 69 74 3a 50 72 65 |...<+. .init:Pre| 000000d0 76 24 3d 22 22 3a 57 6f 72 6b 24 3d 22 22 3a 4f |v$="":Work$="":O| 000000e0 75 74 53 65 6e 74 24 3d 22 22 3a e1 0d 00 46 6f |utSent$="":...Fo| 000000f0 dd 20 f2 63 76 72 74 3a e3 20 49 25 3d 31 20 b8 |. .cvrt:. I%=1 .| 00000100 20 a9 28 49 6e 70 24 29 3a 70 24 3d c1 49 6e 70 | .(Inp$):p$=.Inp| 00000110 24 2c 49 25 2c 31 29 3a e7 20 28 50 72 65 76 24 |$,I%,1):. (Prev$| 00000120 3d 22 2e 20 22 29 20 84 20 28 c2 50 72 65 76 24 |=". ") . (.Prev$| 00000130 2c 31 29 3d 22 2e 22 29 20 84 20 28 49 25 3d 31 |,1)=".") . (I%=1| 00000140 29 20 8c 20 f2 43 68 65 63 6b 43 61 70 20 8b 20 |) . .CheckCap . | 00000150 f2 43 68 65 63 6b 53 6d 61 6c 6c 0d 00 50 86 4f |.CheckSmall..P.O| 00000160 75 74 53 65 6e 74 24 3d 4f 75 74 53 65 6e 74 24 |utSent$=OutSent$| 00000170 2b 70 24 3a 50 72 65 76 24 3d c2 28 50 72 65 76 |+p$:Prev$=.(Prev| 00000180 24 2b 70 24 29 2c 32 29 3a ed 3a db 3a f2 68 65 |$+p$),2):.:.:.he| 00000190 61 64 3a f2 63 6e 28 22 53 65 6e 74 65 6e 63 65 |ad:.cn("Sentence| 000001a0 20 6e 6f 77 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 | now looks like | 000001b0 74 68 69 73 22 2c 36 29 3a f2 63 6e 28 c4 32 38 |this",6):.cn(.28| 000001c0 2c 22 3d 22 29 2c 37 29 3a f2 63 6e 28 4f 75 74 |,"="),7):.cn(Out| 000001d0 53 65 6e 74 24 2c 39 29 3a f2 73 70 61 63 65 3a |Sent$,9):.space:| 000001e0 e1 0d 00 5a 45 dd 20 f2 43 68 65 63 6b 53 6d 61 |...ZE. .CheckSma| 000001f0 6c 6c 3a e7 20 28 97 28 70 24 29 3e 26 34 30 29 |ll:. (.(p$)>&40)| 00000200 20 80 20 28 97 28 70 24 29 3c 26 35 42 29 20 8c | . (.(p$)<&5B) .| 00000210 20 70 24 3d bd 28 97 28 70 24 29 84 26 32 30 29 | p$=.(.(p$).&20)| 00000220 3a e1 20 8b 20 e1 0d 00 64 43 dd 20 f2 43 68 65 |:. . ...dC. .Che| 00000230 63 6b 43 61 70 3a e7 20 28 97 28 70 24 29 3e 26 |ckCap:. (.(p$)>&| 00000240 36 30 29 20 80 20 28 97 28 70 24 29 3c 26 37 42 |60) . (.(p$)<&7B| 00000250 29 20 8c 20 70 24 3d bd 28 97 28 70 24 29 82 26 |) . p$=.(.(p$).&| 00000260 32 30 29 3a e1 20 8b 20 e1 0d 00 6e 14 dd 20 a4 |20):. . ...n.. .| 00000270 61 73 6b 3a f5 20 db 3a f2 68 65 61 64 0d 00 78 |ask:. .:.head..x| 00000280 41 f2 63 6e 28 22 44 6f 20 79 6f 75 20 77 61 6e |A.cn("Do you wan| 00000290 74 20 74 6f 20 69 6e 70 75 74 20 61 6e 6f 74 68 |t to input anoth| 000002a0 65 72 20 73 65 6e 74 65 6e 63 65 22 2c 31 30 29 |er sentence",10)| 000002b0 3a 41 25 3d a7 22 59 79 4e 6e 22 2c be 29 0d 00 |:A%=."YyNn",.)..| 000002c0 82 32 fd 20 41 25 3e 30 3a e7 20 41 25 3d 31 20 |.2. A%>0:. A%=1 | 000002d0 84 20 41 25 3d 32 20 8c 20 41 25 3d b9 3a db 3a |. A%=2 . A%=.:.:| 000002e0 3d 41 25 20 8b 20 41 25 3d a3 3a db 3a 3d 41 25 |=A% . A%=.:.:=A%| 000002f0 0d 00 8c 2e dd 20 f2 63 6e 28 74 24 2c 59 25 29 |..... .cn(t$,Y%)| 00000300 3a ea 20 58 25 3a 58 25 3d 31 39 2d a9 74 24 2f |:. X%:X%=19-.t$/| 00000310 32 3a f1 8a 58 25 2c 59 25 29 74 24 3a e1 0d 00 |2:..X%,Y%)t$:...| 00000320 96 27 dd 20 f2 68 65 61 64 3a f2 63 6e 28 22 53 |.'. .head:.cn("S| 00000330 45 4e 54 45 4e 43 45 20 43 48 45 43 4b 45 52 22 |ENTENCE CHECKER"| 00000340 2c 32 29 3a e1 0d 00 a0 39 dd 20 f2 73 70 61 63 |,2):....9. .spac| 00000350 65 3a f2 63 6e 28 22 50 72 65 73 73 20 53 70 61 |e:.cn("Press Spa| 00000360 63 65 20 74 6f 20 63 6f 6e 74 69 6e 75 65 22 2c |ce to continue",| 00000370 32 34 29 3a f5 20 fd 20 a5 3d 33 32 3a e1 0d ff |24):. . .=32:...| 00000380