home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ARM Club 3
/
TheARMClub_PDCD3.iso
/
hensa
/
documentation
/
documents
/
a252eur1
< prev
next >
Wrap
Text File
|
1999-04-27
|
24KB
|
408 lines
|
EEEEEEEE K A |
EE R R EE K AA | The BITS ArcSIG
EE U U RR RR E E K K A A | Newsletter
EEEEEEE U U R EEEE KK AA A |
EE U U R E K K A AA | Issue #01
EEEEEEEE UUUU R EEE K K A A |
------------------------------------------------------------------------
Editor's Preamble and Ego Trip
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
First of all, despite the fact that you should have heard this many times now,
welcome to BITS, and welcome to ArcSIG. For the information of those of you new
to Bristol University, we aim to provide a means of exchange of legitimate
public-domain software and shareware, hints, tips and OS hacks, and generally
to help everybody get the most out of these wonderful 32-bit machines. Having
left the now-thriving HP 48 SIG in the capable hands of Tony Duell (although I
still expect to write the occasional article for Cassini), the job of providing
all this and holding things together falls to me, and I sincerely hope I can
get ArcSIG off to an equally good start. However, societies require
contributors, and as I'm doing an MSc this year, I don't foresee myself having
either the time or the energy to keep things going without help, so if you have
any items for inclusion in the ArcSIG Library, or indeed hints and articles for
this newsletter , please let me have 'em, as at the moment, this newsletter is
a one-Dave production.
-Dave Walker (ArcSIG Leader)
*INFO
~~~~
Latest news from Acorn is that RISC OS 3 is now on release as an upgrade;
BEEBUG have already started taking orders. To my knowledge, the package will
cost in the region of #40 (apparently Acorn made a considerable loss on the
original Arthur to RISC OS upgrade), and will be supplied, as usual, on four
ROMs. However, these ROMs will be about double the capacity of the c urrent
chipset (as anyone who owns a 5000 or has used one will appreciate; all the
apps released as part of the Welcome suite are now on chip), which means that
users of the old A300 series machines may fall by the wayside, as their
machines cannot physically map ICs of such a large size. So far, I have not
heard any murmurings from third party suppliers as to whether a patch for this,
such as a PAL switching system, will be made available. Finally,I hope users of
A5000s will bear with me for the next few issues, as I haven't got RISC OS 3
myself, so I can't hack it (I only run an 8Mb A540(!!!) with RISC OS 2.01). As
a final addendum, I would not be surprised to see Acorn re-blowing the EPROMs
(yes, EPROMs!) containing the original "fragile" version of RISC OS 3 for a
nominal fee in all the A5000s sold before the final release was made.
*OBEY !RUN
~~~~~~~~~
Marginal Hacks (Part 1 of1<<31)
~~~~~~~~~~~~~
This column is intended as a list of useful hacks found in the more obscure
backwaters of RISC OS. As stated above, all of these hacks originated on RISC
OS 2, but most of them should work under RISC OS 3. Please let me know which
don't!
More MIPS
---------
For those of you with the MEMC (300 series and early 440s) as opposed to the
MEMC 1A, it's possible to squeeze an extra MIPS out of your machine by
including the command SYS "OS_UpdateMEMC",64,64 in your boot-up sequence.
This reprograms the MEMC to re-clock your ROMs at the same speed as RAM, as
opposed to the default of half RAM speed. However, this hack should be used
with caution, as sone ROM sets (dependent on individual machines) may fall out
of synch as a result and hang the machine, requiring a hard reset to fix
things. Basically, don't use this when you are processing something
valuable.
Hidden Output Streams
---------------------
In much the same vein as other rather more prevalent (I won't say popular!)
machines, the Arc has a number of streams to which output can be directed .
With one possible exception, these act as output-only filing systems, such that
files may be moved or copied to them from the desktop. To open a window to the
output stream, use*Filer_OpenDir <stream>: (the colon MUST be typed) where
<stream> is
null The null device, black hole, bit bucket, great disc drive in the
sky, etc... A stream to be used with extreme caution, but very
useful for recursive directory deletions; performing a desktop
"move" (ie a drag but with shift held down) to null gets round the
problem of the delete aborting due to locked files somewhere down
the tree.
printer In my case, the printer stream on the parallel port. Should work
equally well with serial printers, but haven't tried it. Carries
the warning that files need to be in plain ASCII, as control codes
are interpretable by the printer; I've seen somebody accidentally
do 30 form feeds before any text came out as a result of leading
codes!
vdu The screen. Control codes either wind up causing some unusual
effects (they get translated into the equivalent VDU calls; see
your BASIC manuals for details) or, if not covered by the VDU
calls, they appear as their hex value contained in square
brackets. I find it very useful to dump files to the screen in
this way as a preview option before dumping to the printer stream.
serial The serial port, complying with any previous directives concerning
baud rate, stop bits, parity etc. I find it excellent for dumping
binary to my HP 48, although as there's no error checking in this,
it's advisable to keep the baud rate low (I use 300). Although I
haven't tried this yet, it would be interesting to see, as the
serial port is a two-way device, if a file icon and descriptor
would appear in a serial stream window on the desktop when a file
is sent to it from another machine.. perhaps one of you would like
to try it, and let me know the result for publication.
Just OSing Around
-----------------
To determine the exact nature of the machine a piece of software is running on,
Acorn were kind enough to provide INKEY(-256), which returns a unique number
associated with each operating system version. These numbers are consistent all
the way down to the old 8-bit BBC Micro, although only the list for the
Archimedes series is supplied below.
Operating System INKEY(-256) Machine
~~~~~~~~~~~~~~~~ ~~~~~~~~~~~ ~~~~~~~
Arthur 1.2 160 A300 series, early A440s.
RISC OS 2.0 161 Upgraded A300 series, A400 series,
A3000, R140
RISC OS 2.01 162 A540, R200 series
RISC OS 3.0 163 A5000
In addition, I strongly suspect that RISC OS 3.01, as supplied with the Acorn
A4 Portable, will have INKEY(-256)=164, although I have yet to get my hands on
one to verify this. In addition, it's interesting to note that the changes
between 2.0 and 2.01 were made because 2.0 could only logically map 4 Mb of
physical RAM, and the 540 and R series needed to be upgradable to 16 Mb (2.01
and 3.n actually map 32 Mb); the differences between 3.0 and 3.01 cover the
inclusion of the battery status monitor and the facility to simulate mouse
control via the keyboard. In addition, 2.01 expan ds the screen modes
available. Alternatively (but not accessible from within programs without a few
obscure SWIs), the version number of the MOS Utilities RM in RISC OS is the
version number of the OS, and we still have the faithful *FX 0.
The Secret Life of the Desktop
------------------------------
Ever wanted to move your icon bar from the same old place at the bottom of the
screen, or put scroll bars on it? Or if you're feeling sarcastic and want to
give the Task Manager a REALLY bad day, how about a close icon? It turns out
that the Desktop has its own filing system in which all window definitions are
kept, known as DeskFS. For those of you with !FormEd (which should be all of
you, since the latest version is on the ArcSIG PD Disc), editing this is
possible directly by launching !FormEd from the command line, with the argument
of the Desktop utility you wish to modify; these arguments are easy to obtain
using *CAT DeskFS: For instance,
*Obey <FormEd$Dir>.!Run DeskFS:Templates.Filer
allows you to edit the templates used by the Desktop Filer. Note: !FormEd MUST
be launched from the command line in order to gain access to this filing
system as an argument. The windows available under the given files are:
Templates.Filer
Templates.Netfiler
Templates.Palette
Templates.Switcher Task Display
Templates.Wimp Icon Bar, general error box, command window
However, useful though this system is, I've had an incredibly unpleasant
experience with it; if the template file contains a large number of windows,
FormEd may hang up with a "Too many windows" error; if you have unsaved work on
the desktop, trying to save it via anything other than an automatic hotkey to a
predefined filename (PipeDream, I love ya) causes the apps to bomb as they try
to open a window containing a save box. As menus are also counted as windows in
DeskFS, apps are also unquittable. Other than a hard reset, the only way out of
this is to close some windows; just make sure that they don't have any unsaved
data in them, or the app may try to open an error box.....
Features
~~~~~~~
Trials and Tribulations of the PCM
----------------------------------
Were it not for the vast amount of information available only on PC format
discs, I would have said that there was no virtue in being PC compatible; we
can do anything they can do, and we can generally do it over 200% faster (watch
over the shoulder of a PC user running MicroSoft Windows, and time that window
drag with a calendar!). However, although the Arc file system is far better
optimised, it leaves us incompatible, (except for those of you with A5000s)
which means we don't normally have access to the mountain of software and
information available, and this persuaded me to keep the option of temporarily
downgrading to DOS. Currently, I run the multitasking 1.60 PC Emulator on my
A540, which turns out a snail-pace equivalent to an original IBM AT clocked at
4.7 MHz. YAWN! However, considering that emulation is achieved at chip level in
most cases, Acorn have done a most commendable job; rumour has it that some
poor woman at Acorn has the unenviable job of testing every piece of commercial
PC software available for the 80188 processor (the chip Acorn chose to emulate)
and compiling a list of those which won't run; further rumour has it that her
list numbers zero items. But why the 80188? Unlike the 80386 and 80486 chips
used in modern PCs, the 188 is a piece of 8 bit history, which (horrors) won't
let you multitask in MicroSoft Windows properly. However, it has a spare
register, completely unused in the PC architecture, which Acorn capitalised on
to pass messages between DOS and RISC OS; to my knowledge, there is no
analogous 80388 or 488 to emulate which would allow this to work, although a
great deal of good for future software-only emulations may come from the OS
interface used in the recent Aleph One hardware PC Emulator. Concerning the
emulator itself, I found that the supplied mouse drive works only
intermittently, and Windows doesn't like it at all. In addition, when it does
work, it only moves a very small vertical distance for a large movement of the
mouse; however, horizontal movement seems fine. I suspect that this is a
feature of the screen mode conversion required by my standard medium-res
monitor. (Please note that this review was written on my first, defective A540;
the problem described here appears to have cured itself on the final machine I
was supplied with). And so to business. One useful feature in the higher
releases of DOS which will appeal to UNIX fans is the capability to swap the
DOS directory delimiters and preference switches for the conventional UNIX
ones; so it's now possible to use
dir c:/progs/utils/compils/c -w
instead of the DOS-conventional
dir c:\progs\utils\compils\c /w
; this can be done by including the command
switchchar -
in your AUTOEXEC.BAT file. (However, I couldn't get this working.) I recently
upgraded from DOS 3.21 as supplied with the Emulator to the latest release,
MS-DOS 5; a move I now consider well worth making, even though it now takes up
about 2 Mb of disc space. MicroSoft have finally got round to putting a decent
full-screen editor together (in QBASIC!) which can be mouse-driven, all of
which saves me having to export files to RISC OS in order to modify them, and
many of the routines now run both faster and slicker. In many cases, Acorn
could do with taking a close look at some of the bells and whistles available;
for example, the floppy formatter now report s format progress as a percentage,
so there is no need to remember the number of tracks and sectors on every disc
format. Probably the most potentially useful utility is Undo, which will
undelete deleted files and even unformat a hard disc, recovering all the
contents lost. Will someone please write it for RISC OS?! In addition, DOS now
has a help facility very much like RISC OS; just type help <keyword> at any DOS
prompt. For BASIC fans, the new dialect (QBASIC) shipped with DOS 5 replaces
the old, obsolete and generally appallingly primitive GWBasic with a quite
acceptable language, which is capable of handling procedures, functions,
DO...UNTIL loops and IF...THEN...ELSE tests. It still isn't up to the standard
of ARM BASICs V and VI, but it's still easy to write code for, functions being
declared in a manner similar to C. However, in every way (except for the
Virtual Memory capability), Windows is still a poor man's RISC OS Desktop.
Unfortunately, this is not helped by the emulator limiting us to a 188
emulation, as it means that we can only run Windows in real mode anyway, and
not multitask properly. Fortunately, this can be avoided by users with 4 Mb of
RAM, who can simply run two copies of the PC Emulator and a copy of Windows on
each! Finally, for the amusement of DEC hackers, remember Arthur C. Clarke's
in-joke about HAL? (Take the letters in turn and shift them one place right,
and you get IBM.)If you take Windows New Technology (WNT), due for release
"real soon now," and shift the letters one place left, you get VMS! Currently,
I'm only running CGA graphic emulation, as I still use the original Acorn
non-multisync monitor purchased with my A310 way back in 1988. I hope to
upgrade this to a multisync soon; more news when it happens.
Archimedes-Supporting Bulletin Boards
-------------------------------------
Despite its regrettably small user base, the Arc has attracted several private
SYSOPs to dedicate sections of their BB systems to its uses and software.
Unfortunately, it seems that large systems such as Compu$erve have yet to see
the light, but there follows below a list of BBSes supporting Arcs, and their
relevant comms details.
------------------------ ----- -------- ---------------------------------
ARCbbs Software users Times Speeds MNP Numbers/comments
------------------------ ----- -------- ---------------------------------
Arcade - London 24hrs 300-2400 (081) 654 2212 (3 lines)
Archive - Norwich 24hrs 300-2400 (0603)745932 (3 lines)
Atlantis - Gloucester 24Hrs 300-9600 (0452) 330328& 330244
DarcWorld - Oxford 24hrs 300-2400 2 (08675) 77724 (1line)
ICON - Ireland 24Hrs 300-9600 5 (0001) 971660 (1line)
Meganet - Wakefield 24hrs 300-2400 (0924) 223456 (1line)
Noah - Bristol 24hrs 300-2400 (0272) 572322 (1line)
Starnet - Norwich 24Hrs 300-2400 (0603) 507216 (1line)
The World of Cryton IX 24hrs 300-2400 5/V42b (0749) 679794 (1 line)
- Wells 300-14.4 5/HST (0749) 670030 (2lines)
-------------------------------------------------------------------------
Other Boards of interest to Archimedes users
-------------------------------------------------------------------------
Acorn Support Information 0223243642 and via PRESTEL
Database (SID)
Charon - Alton 24hrs 300-2400 (0420) 63115 (1 line)
Chrono's Lair - Birmingham (021) 744 5561(sub. of #3 for
downloads) (021) 7457154
Conquest - Bedford PC based, but has growing Archie area (0234)742940
Narvik Online System (NOS) - Norway (010 47) 82 57344
Arc conference by Bjorn Floetten (2 lines)
Daily Information BBS 24hrs 300-9600 (0865) 53999(Oxford -
Archimedes/PC based)
This list was unashamedly culled from the info on David Pilling's RISC OS
Terminals+ disc; although the excellent applications thereon are in no way
Public Domain, I hope that the list above is freely available for reproduction,
as the info it contains may be found on most of the BB systems themselves; in
addition, its inclusion here should serve (I hope!) to benefit the Arc
community without putting Mr Pilling out of pocket through loss of sales. In
addition, an increasingly comprehensive collection of Arc PD software is
available on the lancs.pdsoft library, and Newcastle is rapidly becoming a
major resource base. For those of you with USENET access, comp.binaries.acorn
and comp.sys.acorn provide invaluable news, and some of the software is rather
good as well.
Down to the Metal: RISC OS RAM Allocation
-----------------------------------------
I originally bought my A310 in 1988; it was then supplied with Arthur 1.2, and
RISC OS was still a gleam in Roger Wilson's eye. In my ignorance I bought the
Programmer's Reference Manuals, and like everyone else, had cause to curse
when RISC OS came out and made them obsolete. As it happens, I never got
round to purchasing the RISC OS PRM, which now that RISC OS 3 has been
released, is rather fortunate. However, I still wanted to find out how the
memory was allotted; this is what I turned up, and it's surprisingly similar
to the old Arthur setup. Please note that this map applies to an A310; I'll
see if I can find out where the extra RAM goes in higher-spec machines. A
further point to note is that 300 series machines (at least, if left with
their original 1 Mb of RAM) use a smaller page length than the 400 and later
machines; I often had problems convincing apps that they had enough memory
assigned to them. The catch is that the RISC OS translation between page size
and memory quantity in K was often "out" by a sufficient amount to cause
problems on tightly-written apps. Basically, if you have a 310 and some apps
refuse to fit for no good reason, add another 8K to the WimpSlot -min call in
the !Run file; it very often proves to do the trick.
0 -----------------------------------------
Bootstrap and hardware exception vectors
1C -----------------------------------------
System and BASIC workspace
8000 ----------------------------------------- ]
Application RAM ] 639K
(RISC OS Desktop Tasks map to here) ]
A7FFF ----------------------------------------- ]
Unassigned address space
1800000 ----------------------------------------- ]
RAM-based Relocatable Modules ]
(incl. those downloaded from podules) ] 152K
]
Font definitions grow downwards ]
1825FFF ----------------------------------------- ]
Unassigned address space
1C00000 ----------------------------------------- ]
System Heap ] 16K
1C03FFF ----------------------------------------- ]
Unassigned address space
1F00000 ----------------------------------------- ]
Cursor data and Desktop scratchpad ] 32K
1F07FFF ----------------------------------------- ]
Unassigned address space
1FEC000 ----------------------------------------- ]
Screen RAM ] 80K
(grows downwards) ]
1FFFFFF ----------------------------------------- ]
Unassigned address space
380873C -----------------------------------------
ROM-resident Relocatable Modules
Of course, most of this setup reflects the configuration status of my A310;
however, some useful information of invariants can be gained from it. I hope to
continue with this theme of the low-level setup of the Archimedes as a series
running through future issues of Eureka; let me know what you think.
Obviously, the first thing I'll do is go through those intriguing exception
vectors! It's likely that this will be followed by a treatment of the Heap
Manager (the entire Relocatable Module stack is managed as a single contracting
heap), but this remains to be seen.
*LIB
~~~
The ArcSIG Library comprises a large selection of PD software and Shareware
(lists available on request) and the following items on paper:
Full RISC OS 2 SWI list & their vectored entry points
Full University of Columbia KERMIT document set
Archimedes Assembly Language (Dabs Press; an excellent book)
ARM Assembler Programmer's Pocket Reference (BITS' first publication; in
typesetting)
The new BBC Basic Guide (I got it free!)
Disassembler listings of:
RISC OS Bootstrap (commented)
UtilModule
TaskManager
MemAlloc
As I've been rather busy over the summer vac getting my other systems
(primarily my DEC PDP 11/34) up and running and trying to put a VM system
together, the last three listings aren't commented; please feel free to have a
go!
*SHUTDOWN
~~~~~~~~
Well, that's it for the first issue of Eureka. I don't know whether this will
become a regular publication like Cassini, but it's a start; I'll put another
issue together when I find out enough useful things to go in it. The bottom
line is: if you found Eureka interesting and want it to become regular and up
to date, please let me know and, if at all possible, write me some
contributions; I swear on my ARM 3 that you'll be credited with whatever
contributions I release. If you didn't like Eureka, let me know as well, and
tell me what I can do to make future issues better.
Further Notice
--------------
This Newsletter was written during August 1992, before the release of the RISC
OS 3 upgrade (apparently, the release issue is 3.1) and the release of the new
A3010, A3020 and A4000 machines. If anyone has bought one of these latter
items, please let me know; reviews would be appreciated. I hope to receive a
beta-test copy of RISC OS 3.20 soon, and (for those of you who may also have
A540s) I should be getting the blueprints to this machine as
well.