home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Best of Mecomp Multimedia 1
/
Mecomp-CD.iso
/
amiga
/
tools
/
wb
/
swread_020
/
swread.doc
< prev
next >
Wrap
Text File
|
1997-06-16
|
42KB
|
961 lines
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* SWread Program Documentation *
* *
* Version 5.1 M.L. Barlow June 1997 *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
INTRODUCTION.
What it Does:
SWread is a simplified version of the WreadFiles vocal text reader
program for use on the Amiga. The large internal USA English translation
enhancement library (about 250 Kbytes) has been removed. The huge
!USA.accent provided with Translator43 restores most of the functionality
removed from WreadFiles51. The basic features are summarized as follows:
o The text is both printed to the screen and spoken.
o Text is read in sentences rather than lines.
o ANSI color codes stripped from text displayed or spoken.
o Single file or indexed multi-file read modes.
o Run from Workbench or CLI.
o ASL file requester for input file selection for OS 2.04+.
o Alternate high-contrast color setup: white text on black background
in addition to the normal black text on lavender green.
o Standard Hard and Soft (default) voice options.
o Program icon tooltypes enable user pre-selection of reading
rate, color and full screen ASL file requester.
o Program and file icon tooltypes enable selection of accent
(language), Quote Processing, and default voice.
o Text Width Declaration: Menu option allows user declaration of
the text width parameter for optimum sentence recognition.
o Vocal Annotation Options: File and program tooltypes enable
partial or complete suppression of vocal annotation.
o Exit Option: a -r option suppresses the normal Workbench-to-front
action on program exit.
o Silent Fast-Forward Function: This enables skipping tiresome or
tedious text..
o File Position Indicator: A decade graduated reading position
indicator (and selector) is provided at the top of the screen.
o File Position Seek Function: The File Position Indicator may be used
to select (and re-select) the reading point.
o Different voices and languages for user interface and reading.
*********** Optional Special Processing Mode Features ***********
o Tonal representation of "Narrative Quoted text."*
o Tonal representation of Internet/BBS reference quote levels.*
o Splits words with Embedded capitals (DogHouse->dog house)
o Repeated character suppression.
o Minor case-sensitive English text fixes.
----------------------------------------------------------------------
COPYRIGHT
----------------------------------------------------------------------
The Author RESERVES the option to copyright this program. By the
provisions of the Hague Copyright Convention, to which the U.S. has
become a signatory, I am reserving the option to copyright this
program. Any reproduction of SWread, in whole or in part, without my
permission is a potential copyright violation.
Permission is granted for telecommunication services to distribute this
program if distributed unmodified and intact with this documentation and if
no special charges beyond the normal service rates are made. This program
may also be included on public domain software disks if distributed on a
non-profit basis under the same conditions as above.
I am not requesting payment from any person receiving this program
under the conditions above. If you were charged for any version of this
program beyond the limits set forth above then you may have been
defrauded.
Anyone distributing modified or incomplete versions of this program or
documentation may be fully liable for any consequence of such action.
----------------------------------------------------------------------
PREREQUISITES
----------------------------------------------------------------------
SWread uses the USA versions of Amiga translator.library, or the
multilingual translator replacement libraries (Translator42 or
Translator43) and narrator.device provided with Commodore Amiga operating
systems 2.04 and earlier to generate speech. Commodore and Escom did not
include these files with the newer operating systems. SWread will not
run if you have a later version of the operating system lacking these
files or if you have removed the translator.library or the
narrator.device from your Workbench disk.
Fonts: SWread will attempt to load either the clean 8 font, the
pearl 8 font, or the topaz 8 font in that order. If the first font found
is one you have replaced with a larger or smaller font, then SWread
may not function properly. Versions of the clean.font or pearl.font
which have the control characters defined are recommended (in the event
the file you try to read has control characters in it).
----------------------------------------------------------------------
INSTALLATION
----------------------------------------------------------------------
There are no extra configuration or setup files required for this
program. All user configurable options are implemented as tooltypes of the
SWread.info icon. It may be installed on a floppy or hard disk. For
the OS 1.3 or earlier operating systems, I find it most convenient to
install SWread on the root directory of the hard disk so that its icon
is directly available. With OS 2.0x the "leave out" option in the
Workbench Icons menu will accomplish the same function if the program and
its icon are in a subdirectory. There should be no reason to change your
Startup-Sequence for this program. You may wish to add a shorthand alias,
for CLI use, to your Shell-Startup such as:
alias Wread run >NIL: sys:system/SWread []
if SWread were in your sys:system directory. This is not required
and I do not recommend that you do this if you have any doubts about this
process.
You may rename your copy of the program if you wish.
----------------------------------------------------------------------
OPERATING MODES
----------------------------------------------------------------------
SWread has two basic operating modes: single file mode and index file
mode. In single file mode SWread is given the name of a single file to
read. This is the default mode of the program and no special action is
required to invoke it.
In index file mode SWread is given the name of a text file which
contains a list of files to read. The index may contain as many as 300
files which will be read automatically in the sequence listed. You invoke
the index file mode by typing an @ character before entering the file
name in the program's requester or on the CLI line. If a file name starts
with an @ character, place a single quote (') ahead of the name to enable
reading it as a single file.
Index file ICONS are identified by a MODE=filelist tool type entry.
----------------------------------------------------------------------
STARTING THE PROGRAM
----------------------------------------------------------------------
There are four basic methods of starting SWread. Mode 2 below is
the best method for general use with Workbench, especially with OS 2.0x.
In each case SWread will start using the command color palette and
using the control voice (Andy). As soon as the file to read is loaded,
the screen will switch to the text color palette and the voice will
switch to the reading voice (Tex). There may be a slight cough or pop
at the very beginning as SWread clears its throat (initializes the
narrator).
A. Method 1: Directly From its Workbench Icon.
Running SWread from its Workbench icon is the most direct way to
start SWread. For versions 4.2 and below, you must know the full CLI
name of the file you wish to read as there is no internal file selector.
The program will say "hello there" and ask for a file name.
A standard ASL file requester will appear if you are using OS 2.04 or
greater. That requester will provide a filtered list of the files
available (#?.info, #?.o, #?.lzh and #?.lha files are not listed) This will
allow you to search for the file you wish to hear.
Enter the file name in the text gadget presented. If the file is an
index file (you must know this) then place an @ character ahead of the file
name. If the program cannot access the file name entered then the program
will apologize and exit with a red screen abort. Also, if you push enter
without entering or selecting a filename, SWread will assume that you
wish to abort(quit). This is also what happens if you select the "Abort"
gadget on the ASL requester.
The following are sample non-ASL entries:
|-----------------------|
| ram:SWread.doc | single file name: ram:SWread.doc
|=======================|
| @ram:File_list | index file name: ram:File_list
|=======================|
| '@oddname | single file name: @oddname
|=======================|
| @@oddlist | index file name: @oddlist
|-----------------------|
To select an index file with the ASL requester, you must insert an '@'
symbol ahead of the selected file name in the bottom text box.
B. Method 2: Using Extended (shift) Icon Select
Extended Select is the easiest method of selecting the file to be read
from Workbench. For best operation, the SWread icon and the icon for
the target file to be read should both be visible. The icon for the target
file may be an OS 2.x pseudo-icon displayed with the "view all files"
window option set. The procedure is as follows:
First: Single click on the SWread icon. A face should appear on the
icon.
Second: Push and hold either shift key down and then: double click on the
icon for the target file to be read.
The program will say "hello there" and acknowledge the selection of the
file before reading it.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* NOTE: This file, SWread.doc, has been created with a standard *
* sys:utilities/more project icon. You may use the method above to *
* have SWread read this file for you. Read the Caveats and *
* Warnings first! *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
C. Method 3: SWread Project Icon Select.
If the file has a true SWread Project icon, then it is only necessary
to double click that icon to start SWread. This method requires that
SWread be located on a fixed directory path in your system so that the
default tool entry is always valid. The following is an example of such
an entry:
========================
Default Tool: |sys:system/SWread |
========================
D. Method 4: From the CLI.
Finally, you may start SWread from the CLI just like any other CLI
function. If you just type:
1> directory_name/SWread
then SWread will start up the same as in method (1) above. You may
also provide the name of the target file to be read on the CLI command line
in lieu of entering it in the program. An example of this might be the
line:
1> ram:SWread ram:Wread.doc
An example of calling an index file, df0:Wread.list, is:
1> dh0:SWread @df0:Wread.list
SWread can be used by a CLI batch file with commands like
those above.
CLI OPTIONS
SWread version 5.1 will accept a cluster of options preceded by a
single dash following the program name. Currently supported options are as
follows:
-q no greetings and minimal vocal annotation;
-a no greetings or normal vocal annotations;
-r no automatic Workbench screen to front on exit.
An example of usage in an ARexx script line called by another program
would be:
ADDRESS COMMAND 'Work:Wread/SWread -qr ram:tempfile.txt'
In this case the use of the -r option would prevent the disruption of
the pre-existing screen arrangement.
----------------------------------------------------------------------
USING THE PROGRAM: MENU OPTIONS
----------------------------------------------------------------------
When a menu option is selected, the screen will change to command
colors and the control voice will announce the selection.
SWread cannot respond to commands while it is reading a sentence.
Thus the program's response to a menu selection will be delayed until
after it has finished reading the current sentence. SWread does
limit the length of any sentence to one screen of text to prevent
intolerable delays. Command delay is not a problem with normal text.
A. Project Menu
1. Start Over [Pick File]: Right-Amiga P
Selecting this option in single file mode will restart reading from
the beginning. In index file mode this is the Pick File option.
Pick File presents a menu of the files on the index for selecting the
next file to read.
2. Silent Fast-Forward: Right-Amiga F
When this option is selected, the program toggles in or out of the
silent fast forward mode. The program in this mode prints text to
the screen without pausing to speak. You may also toggle this mode
on and off by Alt-Left-mouse clicking (clicking the left mouse button
with the ALT key held down) on the File Position Indicator. Normal
vocal reading will resume after selecting pause or if the mouse is
clicked on the lower part of the screen. The silent reading speed
is reduced if the mouse pointer is brought down from the top of the
screen. If the end of the file is encountered in this mode, normal
vocal reading is restarted at the beginning of the file.
3. Skip this File: Right-Amiga S
Selecting this option in single file mode is the same as selecting
Exit/Quit. In index file mode this option aborts reading the
current file and goes on to the next file or exits the program if the
last file was being read.
4. Exit/Quit: Right-Amiga Q
Ends the program. The program will acknowledge that you have opted
to exit and say good-bye.
B. Options Menu
1. Special Processing: Right-Amiga C
Toggles special processing on and off. When special processing
is enabled, the following features are normally enabled:
(a.) Tone-shift indication of "quoted text."
(b.) Tone-shift indication of the BBS quote level
(c.) Repetitive text patterns are detected and ignored.
(d.) Words with embedded capitals (TestEngine) are split apart.
(e.) Recognition of some in-line symbolic letters (\/\/,/\/\).
(f.) International accented letters converted to simple Roman.
(g.) A few English, case sensitive [of Job -> of joab] word
fixes.
2. Pick Reading Rate: Right-Amiga R
Allows you to pick the reading rate. For fast processors the
default reading rate is 210 words per minute. For slower Amigas, such
as the A1000, the default rate is set at 250 words per minute to
compensate for the longer processing time required.
3, Declare Text Width; Submenu 40: Right-Amiga 4
Submenu 60: Right-Amiga 6
Submenu 80: Right-Amiga 8
Permits user declaration of a text width parameter for the current
file. This parameter is used in the determination of unusually short
text lines. A short line is one of the criteria used to detect
sentence ends. The user may select 40, 60, or 80 characters depending
on which best describes the current file.
This parameter will be saved as set with any file icon created as
described below.
4. Next Display Palette: Right-Amiga D
Switch from normal palette (black text on lavender background) to
the high contrast palette (white text on black) or vice versa. The
high contrast palette has been added at the request of a user for
better visibility.
5. Change Voice.
SWread5.1 (and WreadFiles5.1 [unreleased]) feature 2 optional
voices when used with Narrator37.7. The "Hard" voice is the standard
flat response settings used with earlier versions of WreadFiles. The
new "Soft" voice features maximum low frequency boost and high frequency
cut to minimize "telephone" voice sound effect. This menu option
toggles between the two voices.
C. Icon Menu
The Icon Menu is only available if the target file to be read has been
selected by name (start-up methods 1 or 4 above).
Notes:
1. Do not have two disks with the SAME volume name in your system
when you use these options.
2. These icon create/modify options are the only functions of this
program which will write to your disk. If you have any concern about
the compatibility of SWread with your system, I recommend that you
avoid creating or modifying icons while multitasking or using disks
containing valuable non-replaceable data. The only problem I have had
with the current versions of these functions has been icons ending up
on the wrong disk when disks with duplicate volume names were in the
system.
1. Make New Icon
Creates a new project icon with SWread as the default tool. If
the file is an index file then the MODE=filelist tool type will be
added. Otherwise a default MODE=singlefile tool type will be used.
2. Modify Old Icon
Attempts to modify the default tool and tool types entry of the
existing icon of the file or index file selected at start-up without
changing its image. If no existing icon is found for that file, then a
new icon will be made.
D. [Copyright] "Menu"
This is not a menu but a notice:
|===========================|
| The Author RESERVES the |
| option to copyright |
| this program. |
| |
| M.L. Barlow |
| Silverdale, WA, USA |
|===========================|
----------------------------------------------------------------------
USING THE PROGRAM: FILE POSITION INDICATOR FUNCTIONS
----------------------------------------------------------------------
TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTTT|TTT
_________|_________|_________|_________|_________|_________|_________|_______
'
The File Position Indicator
The File Position Indicator is a decade graduated indicator bar at the
top of the screen. This bar functions as an indicator and pseudo gadget
for fast file navigation. The indicator shows the current reading
position as a percentage of the total file being read. The indicator is
graduated in 1 percent increments with a resolution of about 1/6th of a
percent and is updated for each line of text processed.
File Reading Position Select
The File Position Seek is invoked by Shift-Left-mouse clicking
(clicking the LEFT mouse button with a SHIFT key held down) at the
desired target reading position on the File Position Indicator gadget.
The program sets the file pointer just ahead of your target point and
pre-reads the file up to the target point. During the pre-reading
interval, only the file position indicator is updated. This allows
reading to resume at the target point on a complete sentence.
----------------------------------------------------------------------
USING THE PROGRAM: KEYBOARD OPTIONS
----------------------------------------------------------------------
A. Menu Hot Keys.
The following are menu hot keys; see above for a description of the
menu functions.
1. Right-Amiga P ... Start Over [Pick File from index]
2. Right-Amiga F ... Toggle Silent Fast Forward mode in/out.
3. Right-Amiga S ... Skip this File.
4. Right-Amiga Q ... Exit/Quit.
5. Right-Amiga C ... Special Processing (on/off).
6. Right-Amiga R ... Pick Reading Rate.
7a. Right-Amiga 4 ... Declare 40 column file.
7b. Right-Amiga 6 ... Declare 60 column file.
7c. Right-Amiga 8 ... Declare 80 column file (default).
8. Right-Amiga D ... Next Display Palette (toggle).
9. Right-Amiga V ... Change Voice.
B. Keyboard Pause
Striking any active key, other than those specified above, will pause
the program. The screen color will change to command colors and the
control voice will announce that the program is paused. SWread will
remain paused until another key is struck. The normal menu is removed
while the program is paused.
----------------------------------------------------------------------
USING THE PROGRAM: WORKBENCH TOOL-TYPE OPTIONS
----------------------------------------------------------------------
You may customize some features of this program by manually adding or
changing the tooltypes entries of the SWread program icon. This is
accomplished by selecting the icon (single click) and using the Workbench
[Project] Info menu item on OS 1.3 or the [Icons] information menu item on
OS 2.x/3.x. There are nine user selectable parameters available. If the
program is started from the CLI, it will also search for its icon (e.g.
SWread.info) file and use the options found. File-icon tool-type options
normally supercede the equivalent program-icon options.
TOOL-TYPE OPTIONS SUMMARY
A. Mode (MODE=) Select single or multifile wread mode: (file only)
1. (MODE=filelist) multifile mode.
2. (MODE=singlefile,40) single file, text width 40.
3. (MODE=singlefile,60) single file, text width 60.
4. (MODE=singlefile) single file, text width 80 (default).
B. Andyoff (ANDYOFF=) Vocal annotation suppression:
1. (ANDYOFF=all) Maximum vocal annotation suppression (file only).
2. (ANDYOFF=) Partial vocal annotation suppression.
3 (ANDYOFF=none) Normal vocal annotation (default).
C. Voice (VOICE=) Select voice type:
1. (VOICE=soft) select soft voice (default).
2. (VOICE=hard) select hard voice.
D. Accent (ACCENT=) Select Accent:
1. (ACCENT=accent_name) Select accent_name.accent.
2. (ACCENT=@accent_name) Select accent_name.accent with special
processing.
3. (ACCENT=@!USA) Select !USA.accent with special processing
(default).
Note. Selected accents must be in the Locale:accents drawer.
E. Text Quotes (TEXTQUOTES=) Select "text quote" processing mode:
1. (TEXTQUOTES=say) Always pass quotes to Translator.
2. (TEXTQUOTES=fix) Tone shift with special processing (default).
3. (TEXTQUOTES=tone) Tone shift with normal and special processing.
4. (TEXTQUOTES=cut) Remove double quotes from spoken text stream.
F. Reference Quotes (REFQUOTES=) Select maximum BBS style reference
quote level tonal indication:
1. (REFQUOTES=n) Set maximum reference tone level to n where
0<=n<=8.
2. (REFQUOTES=8) Set 8 reference tone levels (default).
G. Speak Rate (SPEAK_RATE=) Set normal speaking rate:
1. (SPEAK_RATE=nnn) Set speaking rate to nnn where 99<nnn<301.
2. (SPEAK_RATE=210) Set speaking rate to 210 (default).
H. Preset (PRESET=) Select fixed display palette:
1. (PRESET=normal) Select the normal display palette (default).
2. (PRESET=hcontrast) Select the high contrast display palette.
I. ASL Size (ASL_SIZE=) Select optional full-screen ASL requester:
1. (ASL_SIZE=full) Select full-screen, low-res ASL requester
(aid to visually impaired users).
2. (ASL_SIZE=normal) Normal ASL requester (default).
-------------------------------------------------------------------------
VOCAL ANNOTATION OPTIONS
-------------------------------------------------------------------------
Two general options enable partial or complete suppression of vocal
annotation. Partial suppression is accomplished by proceeding the file
name with a -q option for CLI invocation or adding an ANDYOFF tooltype to
the file or program icon. This will cause the greeting and most of the
exit messages to be skipped. Some of the normal menu responses will be
less verbose with this option. The -a option in CLI invocation or
ANDYOFF=all file tooltype (but not for the program) icon
will suppress all vocal messages except for the final "GOODBYE" and error
reports. The ANDYOFF=none file tooltype will restore normal vocal
messages for that file.
----------------------------------------------------------------------
PROGRAM NOTES: MULTITASKING
----------------------------------------------------------------------
SWread does multitask, even with itself. The user is cautioned that
there is no guarantee that multitasking SWread will be safe on his or her
system. The program has been tested with Mungwall and Enforcer.
Translator42 has been found to have a potential buffer overflow software
failure problem. Upgrading to Translator43 is recommended.
The CPU is under intensive use while this program is talking. This is a
serious limitation to effectively multitasking this program on 68000 based
systems.
-------------------------------------------------------------------------
GENERAL WARNING
-------------------------------------------------------------------------
I have noticed that some programs, such as AmigaBasic, may fail [GURU]
if they start using the audio hardware while another program is using the
narrator or audio system. In each case where I have observed this with
WreadFiles running [No such problem has yet occurred with SWread], the
program in question will also fail if also multitasked with the Commodore
Speak: device. I suspect these programs may not been written to deal with
multi-process contention for the audio channel resources.
----------------------------------------------------------------------
NARRATIVE QUOTED TEXT HANDLING
----------------------------------------------------------------------
Narrative quoted text handling is normally a Special Processing
function. This feature is only invoked if the default accent file name
is prefixed with an '@' character, such as @!USA in the tooltype list.
It may also be invoked with its own tooltype.
The previous versions of WreadFiles let the Translator Library put the
words `quote' and `unquote' around each segment of quoted text. With
WreadFiles version 5.0, standard "quoted segments" of text are indicated
by a 15 Hz tone increase. `Single' quotes are ignored as before.
"Pending quotes like this will remain in effect for a maximum of 24
sentences. Pending quotes will end with the next quote encountered while
they are in effect or at the next blank or cosmetic line encountered"
unless a quotation mark is at the very beginning of the next sentence.
Pending quotes are not allowed to continue across changes of the BBS
quote level.
A noticeable delay will occur around short "quoted" phrases within a
sentence because each tonal segment must be sent to the narrator
separately.
----------------------------------------------------------------------
INTERNET/BBS TEXT REFERENCE QUOTE HANDLING
----------------------------------------------------------------------
Internet/BBS quoted text handling is normally a Special Processing
function. This feature is only invoked if the default accent file name
is prefixed with an '@' character, such as @!USA in the tooltype list.
It may also be invoked with its own tooltype.
SWread provides support for tonal representation of 8 levels of
Internet/BBS style quoted text. The tone of the voice is increased 10 Hz
per recognized quote indicator. Valid quote indicators now include the
leading colon, bar and right square bracket. Initialled quotes [MB>] are
not recognized because they may occur in normal text. The number of
tones provided may be changed by the (REFQUOTES=) tool-type on the
program or reading object file icon. Setting (REFQUOTES=0) will suppress
this feature.
Reference level 0 with a "narrative quote" test example.
> Reference level 1 with a "narrative quote" test example.
>> Reference level 2 with a "narrative quote" test example.
:>| Reference level 3 with a "narrative quote" test example.
>> >> Reference level 4 with a "narrative quote" test example.
>| > >> Reference level 5 with a "narrative quote" test example.
::>> >> Reference level 6 with a "narrative quote" test example.
::>>| >> Reference level 7 with a "narrative quote" test example.
]:>>|] >> Reference level 8 with a "narrative quote" test example.
----------------------------------------------------------------------
PROGRAM NOTES: FILE COMPATIBILITY
----------------------------------------------------------------------
SWread works best with single column ASCII text files having a
maximum length of 80 characters. These files are printed to the screen in
their original format. The program recognizes ^J (CONTROL J which is ASCII
code 10), ^M, or sequential ^M^J or ^J^M as end of line (EOL)indicators.
SWread will strip out many standard ANSI escape sequences, such as
those used for color formatting (^[[33;41m). The program ignores these
codes, since color is used by the program to show where active reading is
taking place. (Lines containing sentences which have been read are black
and the unread lines are blue.)
If the text lines in the file are longer than 80 characters then the
program will reformat the lines to fit on the screen. This also applies
to files which only have end of line indicators at the ends of paragraphs.
Files containing tables of numbers or mathematical formulas are not
recommended for use with SWread. The program works best with
narrative text.
If you attempt to read a specially formatted, word processor file
(or any binary file) the result will usually be gibberish. Some word
processors which use near ASCII format (Scribble!) may be partially
readable.
If the file contains special angle bracket indicators such as f<o:>gel
for fögel or t<e^>te-<a`>-t<e^>te for tête-à-tête, then it is best to use
a text editor to search and replace all such bracket structures with
their equivalents. Reading un-converted HTML or SGML files is not
recommended. HTMLess may be used to convert many HTML files to plain
ASCII.
----------------------------------------------------------------------
SHORT TEXT LINE FILES
----------------------------------------------------------------------
Since unusually short text lines (like the line above) are one of the
criteria that SWread uses to identify sentence ends. Thus files with
narrow text will not be properly processed. The reading of files known
to be 60 or 40 characters wide, maximum, can be improved by adding one of
the two standard text width identifiers, {60} or {40} respectively, after
the file name. The curly brackets are required. At least one space must
precede the first bracket. See the section on index files for an
example.
SWread project icons may also contain a text width code with a tool
type of the form:
[MODE=singlefile,40]
With SWread version 5.1, the text width in effect will be saved
with any icon created. This parameter may be declared in the options
menu.
This type of entry is not relevant for index file icons because that
information is contained in the file.
----------------------------------------------------------------------
INDEX FILES: Multi-File Read Mode
----------------------------------------------------------------------
Index files are ASCII text files where each line contains a file
description in the first 41 characters of the line and a file name which
begins at the 42nd character. The file description is what the user will
see if he uses the Pick File option. The file name is what SWread uses
to access the file. If any file cannot be accessed by the name provided
then the program will "good-bye" with a red screen abort. For best
results, use the volume name rather than device name to identify the root
directory of each file. The entry can also contain the narrow text width
indicators. An example of a typical entry line is as follows:
File description File name at column 42 Text width code
| | |
SuperWord from GnSoft by Ron Jennings UG_Disk:Reviews/SuperWord {60}
In this example, the file name is followed by an optional text width
code. The entries should be sequential with no blank lines. The last text
line should end with a carriage return. Lines will be ignored which
reference the same file name as that of the preceding line. The
tool-types of indexed files are not accessed by SWread.
----------------------------------------------------------------------
PROGRAM NOTES: HOW IT WORKS:
----------------------------------------------------------------------
SWread reads a text file in 36 K-Byte segments. This enables the
program to handle files of any size without exceeding normal memory
limitations. The text in the buffer is processed as it is read to avoid
processing delays. The first stage of this processing is the conversion
of the file end of line (EOL) characters to the standard C programming
language end of text-string indicators. If the file lacks EOLs, there
may be a noticeable delay at this point while the program searches to the
end of the buffer.
SWread next uses standard punctuation marks and other criteria to
determine the location of sentence breaks. This allows the text to be
spoken one sentence at a time to achieve a natural speech rhythm.
Sentences may be fractions of lines or any number of whole and partial
lines up to one full screen. The text lines are printed to the screen as
is except that long lines are wrapped and joined with the next line and
some ANSI control codes are stripped out.
This program uses its own private screen to provide a simple fixed
environment for the 'bare-bones' high-speed direct text rendering
routines and reduce Workbench clutter. Each sentence is written once,
before it is read or processed for speaking in the New-Text color and
precisely over-written again, after it has been read in the Normal-Text
color.
The program keeps track of the number of bytes read as each sentence
is resolved to update the file position indicator and implement file
position seek.
When special processing is invoked, SWread will use high-speed
conditional, search and replace routines to modify the spoken form of
each sentence. Each modification is performed in sequence to the whole
sentence to be spoken. The program will attempt to identify and remove
cosmetic text patterns from the spoken text so that the listener does not
have to hear such things as the word "asterisk" repeated 76 times. This
program mode cannot protect the listener from general ASCII art, but it
will remove some combinations of slashes, spaces and backslashes which
are abnormal for spoken text.
When the reading is finished, the Workbench screen is popped forward.
This may be suppressed by the -r CLI invocation option.
----------------------------------------------------------------------
PROGRAM NOTES: POTENTIAL APPLICATIONS
----------------------------------------------------------------------
The following are potential applications of this program:
A. Reading ASCII Text Files.
SWread may be used to read standard ASCII text files. In this
application using SWread is similar to typing a file to SPEAK: except
that SWread also displays the text being read and allows random access
to any part of the document by shift-clicking on the file reading
position indicator.
B. ETEXT Book Reader.
Many classic books have now become available on the Internet. The
!USA.accent has been developed with many of these texts. Most of these
texts are quite readable as is, however I find it helpful in many cases
to remove the special annotation and sentence breaking pagination that is
frequently used or retained to attempt to make the file a faithful
representation of the appearance of the original text.
C. Aid For Visually Impaired
While SWread has not been specifically written for this application,
I have made the menu selection boxes large so that someone with minor
visual impairment might make them out. Perhaps SWread combined with
another utility would be beneficial for people with more severe visual
impediments. SWread does allow other programs to obtain access to the
translator, narrator, and audio.device between each sentence break.
----------------------------------------------------------------------
PROGRAM NOTES: DEFICIENCIES
-------------------------------------------------------------------------
My primary emphasis on WreadFiles has been the speech correction.
There remain several areas where this program should be improved.
A. No Locale Support.
As of this version, there is no Locale support for annotation. All
annotation is in English and the American.accent is used for spoken
annotation. Foreign users may wish to disable the vocal annotation
with the (ANDYOFF=) too.
B. Sentence Speaking Cannot Be Interrupted.
This is normally not a problem. However, if you load a file which
contains a long segment of text lacking the criteria which identify
sentence breaks, then the program may not respond to your commands or
attempts to stop the program for several minutes.
D. No ARexx Port
It is conceivable that an ARexx port could be useful for interactive
multitasking. I have not yet considered what should be done in this
regard.
The -r CLI option allows SWread to be invoked with an ADDRESS
COMMAND call to read a file prepared by another application. I have
developed an ARexx script for AWeb that calls WreadFiles to read the
current WWW page text.
----------------------------------------------------------------------
CAVEATS AND WARNINGS
-------------------------------------------------------------------------
This is a program I wrote initially for my own use. No warranty is
made on the accuracy of this documentation or the fitness of this
software for any purpose. There is no guarantee that future improvements
in the operating system software will not degrade or disrupt the
operation of this program. It is quite likely that any replacement system
would be incompatible with this program. No commitment is made to release
future versions of this program.
I have only used SWread on two computer systems:
1. Amiga A1000 with 512 kilobytes of chip and 2 megabytes of fast ram
using Kickstart 1.2 with Workbench 1.3. I cannot guarantee
operation with a 512K Amiga.
2. A4000/040 system with 16 megabytes total ram, OS 3.0.
The only background programs I have had running are ConMan on the A1000
and on the A4000; Enforcer-quiet and GRABBIT.
This software has not been tested in other systems or with all
possible settings and combinations as commercial software is normally
tested during the beta test stage. The user must assume FULL
responsibility for backing up important files etc. should this program
malfunction in his or her system or expose a weakness in other software
while multitasking.
You may find the steady drone of the Amiga voice produced by SWread
sleep inducing. :}
I hope you find SWread useful and that none of the dire possibilities
mentioned above ever occurs.
M.L. Barlow 16 June 1997