home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Archive Magazine 1997
/
ARCHIVE_97.iso
/
text
/
hints
/
vol_06
/
issue12
< prev
Wrap
Text File
|
1995-02-16
|
22KB
|
510 lines
Hints and Tips
6.12
Å Cfs and the cluttered iconbar Ö There are five drive icons on my
iconbar, together with five Cfs (i.e. Computer Conceptsæ Compression)
icons, so there is hardly room for anything else!
6.12
Since version 1.17 of Cfs, however, things have rather changed for the
better, due to the key combination <ctrl-insert> which lets you switch
between the Cfs and the normal window.
6.12
I now find that one Cfs icon on the iconbar is all I need. What I have
done is this: My !Boot file contains nine lines concerning Cfs:
6.12
<d>.!Cfs
6.12
(This runs the application. <d> gives the path for the program, as
described in Archive 3.9, p.8)
6.12
RMEnsure CFSModule 1.17 RMLoad <d> .!Cfs.CFSModule
6.12
RMEnsure CFSModule 1.17 Error CFSModule not loaded
6.12
(These two lines are just to make doubly sure.)
6.12
CFStemp <s>!Scrap.ScrapDir
6.12
NewCFS ADFS::0
6.12
NewCFS ADFS::intern
6.12
NewCFS SCSI::SCSIDrive0
6.12
NewCFS SCSI::SCSIDrive4
6.12
NewCFS SCSI::extern
6.12
(The last six lines duplicate the way in which everything was first set
up from the Cfs iconbar icons.)
6.12
With these commands in the !Boot file, it is now possible to delete all
but one Cfs icon from the iconbar and save the changes. Now one of my
drives (the one I use most often) can have its Cfs directory windows
opened directly. On all the others, I open the relevant uncompressed
window, then press <ctrl-insert>.á Jochen Konietzko, K÷ln, Germany
6.12
Å Impression arrows Ö Left and right arrows in Impression are extremely
easy to generate. You start with ö<ÖÖò or öÖÖ>ò and use <ctrl-R>
inbetween the characters to reduce the spacing (kerning) between the
characters so that you end up with ö<ÖÖò or öÖÖ>ò. Those two needed one
<ctrl-R> between the dashes and nine <ctrl-R>s between the angle bracket
(inequality sign) and the dash but it will depend on the font size.
(These ödashesò are produced in Impression with <shift-ctrl-hyphen>.
Actually, they are supposed to be minus signs, I think but I prefer them
to the öproperò dash which is <alt-152>. Certainly when I tried the
öproperò dash for this purpose, it produced öÿ>ò which isnæt quite as
good as the height is different and it doesnæt hit quite at the centre
of the angle of the hairpin.) You can see it better at a bigger point
size:
6.12
Two minus signs: öÖÖ>ò One dash: öÿ>>ò
6.12
In Times font, which I am using here, the long dash is slightly lighter
and doesnæt match the weight of the angle bracket. However, this trick
does depend on the particular font used Ö itæs a Ésuck it and seeò job.á
Ed.
6.12
Å Multistore alphabetical sorting Ö I recently created a large database
for my church roll in which there was a single name field presenting the
information in the form öSue Adamsò. I set up an index on this field
using the Surname function only to discover that it persisted in sorting
öSue Adamsò after öMargaret Adamsonò. An examination of BaseLib (found
by shift-clicking !Multistore and dragging into !Edit) revealed how the
Base Function FNsurn worked and led to the idea of creating another Base
Function, FNchristian, to select the Christian name and any initial.
Using !Edit, I adapted FNsurn and then saved it as a further Base
Function in BaseLib. Then, using the Sort facility with the expression
öFNsurn(@ Name)+FNchristian(@Name)ò, the names were sorted into correct
alphabetical order. It is necessary to quit and re-load Multistore to
ensure that it knows of the new Base Function. FNchristian is as
follows:
6.12
DEFFNchristian(A$):LOCALI%,C%
6.12
WHILERIGHT$(A$,1)=ö ò:A$=LEFT$(A$) :ENDWHILE:I%=LENA$: C%=ASCMID$(A$,I%)
6.12
WHILEI%>0AND((C%>64ANDC%<91)OR(C%> 96ANDC%<123)ORC%=45):I%-=1
6.12
C%=ASCMID$(A$,I%):ENDWHILE
6.12
IF INSTR(A$,ö ò)>0THEN=LEFT$(A$, I%-1)ELSE=öò
6.12
Colin Brockie, Kilmarnock.
6.12
Å Multiple stories on one page in Impression Ö It can sometimes be
extremely desirable to have two or more independent stories on a single
page in Impression. Normally, when you enter text in a single-frame page
and the text fills the frame, a new page is created and the text
continues to flow onto the new page. Creating a second frame on any
given page simply makes a local frame which does not exhibit this
ability to flow text onto a new page when it is full. However, if it
were possible to have two or more frames on a page which could
independently create new pages when full, this would be very useful Ö it
would make for easy creation of footnotes, for one thing.
6.12
I was recently asked how to achieve this effect by a user who was
setting opera libretti, and who wanted to have two columns side by side
for different languages. A two-column master page layout did not achieve
the desired effect because the text flowed from one column to the next
on the same page, rather than from any given column to the equivalent
column on the following page.
6.12
There is, in fact, a way of achieving the required effect in Impression,
but the technique is a little subtle.
6.12
How to do it Ö Either choose a suitable master page which exists already
or use the ÉNew master pageæ menu option to create an appropriate page
with the desired number of columns on it. Create whatever extra frames
you need on your master page in the normal way.
6.12
Now use the ÉShow flowæ option from Impressionæs iconbar menu to see how
the text will flow between the frames. Under normal circumstances, to
link frames into the text flow sequence you click <select> on the first
frame in the sequence, followed by <adjust> on the succeeding frames in
the correct order. However, it is not possible to remove frames from the
sequence using this method and so, if you try to alter the order of flow
which is automatically assigned on the master page, you will find you
are not able to do so. Therefore, the only way to remove a frame from
the text flow sequence is to actually delete it and then recreate it.
6.12
So, for each frame which is to contain its own page-creating story,
first select the frame and then open the ÉAlter frameæ dialogue box with
<ctrl-f10>. Make a note (mental or otherwise) of the X and Y coordinates
of the frame, close the dialogue box and press <ctrl-X> to cut the frame
to the clipboard. Immediately you have done this, press <insert> (or
<ctrl-V>) and paste the frame back to where you cut it from. Finally,
open the ÉAlter frameæ box again and restore the coordinates to what
they were before.
6.12
On the face of it, this seems pretty pointless. All you have done is
delete a frame and then put it back again in the same place. However,
the practical effect of the action is to un-link the frame from the text
flow sequence. If you choose ÉShow flowæ from the iconbar menu again,
you will see that the frame no longer has an arrow pointing to or from
it. (In fact, if you have a layout of three or more columns, you will
see that the flow has bypassed this frame, but still connects the
others.)
6.12
What this boils down to is that you can have as many individual stories
as you want on a single master page. Each story can consist either of a
separate frame or any number of linked frames. Any such set of frames on
an Impression master page will cause the creation of a new page when
filled with text in the document.
6.12
The layout shown in the illustration is not intended to be a serious
example but it merely illustrates the idea. The frames for both Story 1
and Story 2 have been linked, whilst the frame for Story 3 is a separate
entity, as is the frame for footnotes.
6.12
As for practical examples of this idea, one has only to look at the old-
style (RISC OS 2) Acorn manuals, such as the BBC Basic Guide or PRM.
These manuals all have a vertical line about a third of the way across
each page, to the right of which is the main text. The headings and sub-
headings all appear to the left of the line. Although the creation of
such pages by conventional methods would be perfectly possible, having
two independent stories (one for the main text, another for the
headings) would greatly simplify the process.
6.12
A similar idea commonly found in educational material is to have a
column, at the right hand side of the page, which contains comments
relating to the ideas presented in the main body of the text.
6.12
Another good use for this idea is the presentation of tabulated material
such as a printed index. If you want a column of numbers to be in a
different style to the reference text the numbers accompany, it is far
easier to have two independent stories than to apply a specific style
for each number on a line.
6.12
When using this approach, there is just one thing to watch out for. If
there is not a direct one-to-one correspondence between the number of
lines in the stories (which there may or may not be, depending on the
document), you must remember to press <ctrl-G> (which corresponds to the
ÉFrame=>Force to nextæ menu option) when you have typed in all the text
for the shorter story on each page. If you donæt do this, you may find
that, when you position the caret in the frame in which you want to
start typing, the text appears on the previous page. However, you will
soon get used to this.
6.12
As for footnotes, if you know that none of your footnotes will exceed a
single line in depth, you should create your footnote master page frame
to be just large enough to contain one line of text. Then, each time you
press <return>, the caret will advance one page. If you need longer
footnotes, however, make the master page frame large enough to hold the
largest note and remember to use the <ctrl-G> method.á Richard Hallas,
Huddersfield.
6.12
Is it possible to have two or more independent stories running side-by-
side in Ovation? If so, can anyone explain how? Ed.
6.12
Å Printing to files Ö I experienced the same problem as Tom Rank
(Archive 6.9 p63) with printing to a file. This involved an address
exception being caused at the end of each print run which prevented the
last few graphics lines from being printed. The problem is caused by
ADFSBuffers. Setting this to zero using:
6.12
*Configure ADFSBuffers 0
6.12
solves the problem.á Paul Mellor, Derby.
6.12
Å Vector overlays Ö The new version 1.10 of Vector offers the option to
draw lines with overlays (i.e. between 1% and 99% of the lineæs interior
is drawn in a different colour), a feature which makes drawing little
map sketches very simple.
6.12
A problem arises if you want to join two roads or two rivers without a
seam.Vector produces something like this (overlay 50%):
6.12
For a decent map you need, instead, something like this:
6.12
If, as in this case, all paths have the same width, it is simple: Just
select them all and merge them through the öSpecialò menu. (This also
saves memory: The five paths in the first picture take up 1071 bytes,
the merged path only 883 bytes.)
6.12
If the width differs, the thickest line will force its width upon all
the others, making a merge inadvisable; then you will have to apply
little öbeauty patchesò in the form of completely white rectangles to
cover the unwanted black lines.
6.12
While you rotate the rectangles to align them with the road, it is best
to switch the amount of detail shown on the screen from stage 5 to stage
3, so that all the rectangles appear just as thin black outlines (even
if they are not selected) and this makes an öinvisibleò shape rather
more easy to handle.
6.12
When you go about rotating those rectangles, it makes sense to lock
everything else first with <ctrl¡H> because else it is very simple to
rotate something else besides the little patch.á Jochen Konietzko, K÷ln,
Germany.ááA
Using RISCáOSá3.1
6.12
Hugh Eagle
6.12
SCSI problems
6.12
Barry Thompson found one day that he was unable to access the hard
drive, an Oak Worra Winnie 45Mb on an A340 with RISCáOSá3.11. The error
message, ÉDisc not understood ù has it been formatted?æ came into view.
On Oakæs advice, he refitted RISCáOSá2 and the message became ÉBad free
space map.æ Adrian Lookæs !FixMap was unable to help, so the disc had to
be reformatted and, of course, all the data was lost. Someone at Oak
suggested to Barry that SCSI can be less reliable with RISCáOSá3 than
with RISCáOSá2 and recommended doing a *Checkmap every couple of days
and, if errors were reported, to back everything up and reinitialise the
disc.
6.12
Synonymous pathnames
6.12
Mick Day writes, öI wrote some time ago that the operating system did
not check for synonymous valid references to the RAMDisc pathnames. This
is, in fact, more general. If full and accurate pathnames are always
used, this is no problem; and where removable media are concerned, it is
probably necessary. However, comparison of the ÉBytes freeæ or a CRC
number could have largely eliminated this. Alternatively, if an
abbreviated Disc Spec was given, the filer could have filled it in
completely and thus discovered identical manifestations of filer
windows! It does no harm, but is confusing. If you set the pathnames for
your harddisc in the following short program:
6.12
*Filer_OpenDir RAM::RamDisc0.$
6.12
*Filer_OpenDir RAM::0.$
6.12
*Filer_OpenDir RAM:$
6.12
*Filer_OpenDir SCSI::HardDisc4.$ | set these
6.12
*Filer_OpenDir SCSI::4.$| names to
6.12
*Filer_OpenDir SCSI:$| your system
6.12
*Filer_OpenDir ADFS::MCDay.$
6.12
*Filer_OpenDir ADFS::0.$
6.12
END
6.12
you will find, on running, three identical filer windows on the screen
for RAMDisc, three for Fixed disc and two ADFS floppy! I think this is
sloppy implementation, akin to not checking the disc before issuing
ÉFreeæ!ò
6.12
Top bit set characters
6.12
Mick Day uses a Star LC10 mainly for address labels. The dip switches
set it to the Epson character set. However, he sometimes needs to use
top-bit characters in foreign addresses. He thus has implemented a
complete look-up table for the characters 160-255, trying as near as
possible to get the Latin1 set. He says that, interestingly, it is
possible to dodge about and use the IBM set in addition to the Epson
set! The Basic program $.Latin1 on the monthly program disc summarises
it; anyone with a Star LC10 should be able to get it going. It might
work on some others as well.
6.12
Form feeds
6.12
Mick Day also writes: öI have spent a lot of time trying to stop the
PDriver module or its front end from issuing formfeeds. I would rather
decide for myself when the paper is to be thrown out onto the desk. Am I
missing some glaring instruction or is it really impossible to configure
this simple option? I experimented further with !Printers after reading
Tim Nicholsonæs article (Archive 6.10 pp 43-47), but got no further. I
suspect that the formfeed is done by PDriver; I have set the printer
configure to the start sequence instead of the end and removed the
formfeed character, but all to no avail. It means that if you drag a
single address to print on labels, you need a specific Printer with a
page length of 9 Ö a sledgehammer to crack a nut! I want one driver for
the printer which does what I tell it. Can anyone tell me definitively
if the terminal formfeed is configurable or not? Otherwise I could be
experimenting until I die!ò
6.12
Testing a printeræs on-line status
6.12
(See Archive 6.11 p51) Mick Day says that he prefers the following
routine to the one published last month (which he says is slower and
escape can interrupt it):
6.12
DEF FNCheckPrinter
6.12
*FX 5,1
6.12
*VDU 2,1,0
6.12
SYS öOS_Byteò,152,3 to ;f%
6.12
f%=f%AND2
6.12
*FX 21,3
6.12
VDU 3
6.12
*FX 5,5
6.12
=f%
6.12
(Iæm no expert in these matters, but I believe that the *FX 5,1 only
applies if your printer is connected to the parallel port and the *FX
5,5 might have unwanted effects if your system is set up differently
from Mickæs ù HE.)
6.12
He adds that the important point to emphasise is that öthe fundamental
difference between earlier Acorn systems and RISCáOSá3.1 is that, in
RISCáOSá3.1, once you have issued a VDU 3 or equivalent, you are dead!
You can only switch the printer on or press <esc> (if it is enabled).
Page 18 of the Release Notes specifically refers to freezing when
attempting to print to Énon-existentæ printers. They could have been
much more helpful here in only a few words. I wonder how many man-months
of time-wasting this has generated?ò
6.12
AZERTY keyboard
6.12
Mick Day says that, try as he might, he cannot get an AZERTY keyboard
with *Country/*Language/*Keyboard France. He knows of at least one
Belgian colleague who was impressed by his Archimedes but who did not
buy one because he could not get the keyboard he wanted. (We have a
couple of modules that get round this problem Ö for French and German,
anyway Ö they are on this monthæs program disc.)
12
The following are taken from extracts from recent Acorn Customer Service
Newsletters which Barry Thompson has kindly forwarded:
6.12
RISCáOSá3 CMOS problems
6.12
There have been a number of reports of systems not powering up properly.
Acorn suspect this is due to rogue CMOS RAM settings which occurred
while the system was used with RISCáOSá2 and they östrongly recommend
that a ÉDelete-power-onæ is performed before the RISCáOSá2 upgrade is
removed. This will ensure that CMOS RAM locations now used by RISCáOSá3
are set correctly.ò
6.12
First Word Plus ÉWindow Definitionæ error
6.12
If First Word Plus issues the message ÉWindow definition will not fitæ,
a ÉDelete power onæ will cure the problem (but may well, of course,
corrupt other CMOS settings)!
6.12
Maximum DOS partition sizes
6.12
DOSFS only supports DOS hard disc partitions up to 32Mb. If you create a
larger DOS partition, it will not be possible to access it from the RISC
OS desktop environment.
6.12
DOS partitions larger than 32Mb can only be accessed from within the PC
card or PC Soft (i.e. PC emulator) environment. Therefore, if you wish
to transfer files between a large DOS partition and a RISC OS based
filing system, this should be done via floppy disc(s) or another
(smaller) DOS partition.
6.12
Windows driver with the Acorn 486 card
6.12
Following on from the last point ...
6.12
The Windows Driver disc supplied with the PC card is in Acorn ADFS
format. So, if you have created a DOS partition which is larger than 32
Mb, it will not be possible to use the procedure outlined in the PC Card
User Guide to copy the file on this disc to the DOS partition. Instead,
you should use the following procedure:
6.12
ù From within the RISC OS desktop, format a blank floppy disc to 720Kb
DOS format.
6.12
ù Click <select> on the floppy disc drive icon to open a Filer window
showing the contents of the root directory of the DOS format floppy (at
this stage it will be empty).
6.12
ù Remove the DOS floppy and insert the Windows Driver disc. Click
<select> again and copy the file ARMVGA/DRV from the Windows Driver disc
to the DOS floppy.
6.12
ù Start the !PC Card application.
6.12
ù Insert the DOS floppy again.
6.12
ù At the DOS prompt type:
6.12
copy a:*.* C:\WINDOWS\SYSTEM
6.12
to copy the correct Windows driver for use with the PC card into the DOS
partition.
6.12
ù Load the \WINDOWS\SYSTEM.INI file into the DR DOS text editor by
typing at the DR DOS prompt:
6.12
C:\DRDOS\EDITOR C:\WINDOWS\ SYSTEM.INI
6.12
ù Use the cursor keys to move down to the line that reads:
6.12
display.drv=vga.drv
6.12
and change it to read:
6.12
display.drv=armvga.drv
6.12
ù Save the modified file by holding down <ctrl> and pressing <K> and
then <Q>. Then press <escape> to return to the DR DOS prompt.
6.12
ù The new driver will be loaded the next time you start Windows, and a
different hourglass shape will indicate its presence.
6.12
MEMC1a or no MEMC1a
6.12
The following short command can be used from within Basic to find out
whether a MEMC1a chip is fitted:
6.12
PRINT ?274 AND 1
6.12
If the result is 1 then a MEMC1a is fitted.
6.12
RISCáOSá4 Wish List (continued)
6.12
The following are from Richard Burnell:
6.12
Å Shutdown ù Include an öare you sureò window after you press <ctrl-
shift-F12> with an option to cancel the Shutdown, in case you press it
by accident.
6.12
Å Unlimited directories ù Allow more than 77 files in a directory.
6.12
Å Filer windows ù Allow file icons to be positioned where you want them
(as on an Apple Macintosh).
6.12
Å Other disc formats ù Include another extension to the filing system to
allow the reading and writing of Amiga and BBC B discs.
6.12
Å Outline fonts ù Allow unfilled outlines to be printed (without having
to convert them to paths in !Draw first) as you can in Windows on PCs.
6.12
Å !Draw and !Edit should warn you when you try to save files with names
that already exist.
6.12
Å !Draw ù When you drag selected objects, it would be helpful to see the
shape of the objects moving (as you do in Artworks), not just the
bounding box.
6.12
Å !Edit ù should allow the option not to strip line numbers to be saved
in the configuration.
6.12
Å Printer buffer ù Provide one that allows background printing. (Richard
observes that this was advertised as a feature in the pre-release
RISCáOSá3 reviews and finds it surprising that Acorn havenæt yet
released öa working printer buffer moduleò.)
6.12
Finally, a point from Roger King. A similar suggestion has been made
before but it is worth repeating:
6.12
Å Distinguishing non-ADFS discs ù When a non-ADFS disc (e.g. a DOS disc)
is mounted, the disc drive icon on the iconbar should change to a
different colour. (Some form of indication like this is particularly
important because the directory names in Filer windows for DOSFS, as for
other öimage filing systemsò, are prefixed ADFS!) Roger receives many
discs through the post and increasingly often he finds that the discs
are DOS format, presumably because people buy them pre-formatted. The
great snag in using DOS discs in the Acorn environment is the shorter
length of filename allowed. Roger often checks and modifies files sent
to him, then saves them back to the same disc with a öUò (for öUpdatedò)
tacked onto the end of the filename. If the original file has a name 8
characters long and is on a DOS disc this results in the original file
being overwritten by the updated file since the öUò is discarded from
the filename!ááA
6.12