Text content (OCR)
hard core
THE JOURNAL
OF THE
BRITISH APPLE
SYSTEMS
USER GROUP
9 MERRE
EHRISTMAS
Page 2 HARDCORE - The Journal of the British Apple Systems User Group — December 1984
‘Ady AYLESBURY A405 SLOUGH =
ow eh,
aa 0 <——
a
“wane HOW TO
6 ST ALBANS
1aand)
FIND
Lux
[oox computer [\
ices LiMiTED! \O
SLONIAL WAY |
| tFst gate on ght
{am Ra ns
Services Ld
COLONIAL WAY. WATFORD, HERTS tat
TEL. WATFORD (092 67
Call in now for a
Macintosh demonstratio:
3 micro-communications
(prices include VAT and Post & Packing)
Modems : PACE NIGHTINGALE Multi-stendard modem
Selected 300/300 and 1200/75 modes. Full ‘oval by
elected @8 | BABT. Auto-snswer/diel eveileble soon.
excellent £136.00 «xx
volute 10% | Miracle Technology W52000 moduler design
al for future exoension. Multi-stenderd. BABT
epproved. £149.90
Seriel Cord : PACE MASTERCARD 300/300 ond 1200/75
options, CCS 7710 competidle with ASCII-Pro
compenionto DATA HIGHWAY £8600 xx
Software: PACE DATA HIGHWAY by Ewen Wennop
C tibt The complete communicetions program
compatible |! Feeturing PRESTEL modes end ASCII.
with Apple || with 1200/75 whole disk trenofer ond fuli
I+ ¢/e & //c || remote mode. Packed with features £75.00 KX
: FileVisiom the Meciatosh dets-bese xx
of the future: Amaze your friends for £180.00
£ cell for price
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 3
hardcore
THE JOURNAL OF
THE BRITISH APPLE SYSTEMS USER GROUP
P.O.BOX 176 WATFORD WO2 6NF
BASUG Ltd. is a non-profit-making
company limited by guarantee.
Basug Committee
Bob Raikes Chairman
Norah Arnold Secretary
Roger Gear-Evans Treasurer
Graham Attwood Software Library
Richard Beck Courses
Richard Boyd Meetings, Local Groups
KeithChamberlain Membership
Tony Game Bulletin Board
Roger Harris Literature Library
Jim Panks ACC Representative
Quentin Reidford
John Rogers
Peter Trinder
EwenWannop
Special Release Software
Press Officer, Updates
Prestel
Fran Teo Administrator
Yvette Raikes Hardcore Editor
Teresa McKenzie
Peter Blair &
Jim Panks Assistants
eretiteteertterteet titer ett ttt rer tt ers
(HBA) HERR,
is administration
BASUG Telephone No.: (iil
Please note: This number
ONLY.
Bulletin Board: (itil) Satie,
Founder members of the Association of
Computer Clubs.
COPYRIGHT (C) - The contents of this journal
are copyright of the British Apple Systems
User Group and /or the respective authors.
However permission will normally be granted
for non-commercial reproduction by user |
affiliated to the International Apple)
provided the author and source are
properly credited.
The opinions and views expressed are those
of the various contributors, and are not
necessarily supported by the British Apple
Systems User Group.
CONTENTS
.
Editorial
Chairman's Corner
Expert Systems
12 Software Library
15 Special Offer
16 Mac Clock
17 Mac Notes
18 Wildcard Plus
20 Beginners’ Page
21 Correspondence
24 Applewriter IT & Graphics
Dr. M. G. Johnston
Patrick Bermingham
& Phil King
Roger Harris
a
Leo Crossfield
Peter Trinder
Mark Whelan
John Sharp
Gerry Corti
25 Course Reviews
26 Computer Music
Book Reviews
36 Epson Pages
44 New Opcodes For the 65C02
45 Local Groups
46 Super Editor
Ray Harris
Dave Miller
Patrick Bermingham
Utility Graham Ashdowne
47 Listings for HI80 Plotter John Sharp
48 Exec Tip Phil King
Re- inking Ribbons
Readers' Letters
54 Three Years of Hardcore
58 Diary
Roger Harris
INTERNATIONAL
APPLE CORE
MEMBER OF THE
INTERNATIONAL APPLE CORE
HARDCORE iis produced using Applewriter
I, and printed on an APTEC Flowriter with
a Madeleine Daisy-wheel
Front Cover: A seasonal Macintosh grecting
from Norah Arnold,
Page 4
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
Editorial
As most of you will be aware, this is the
last issue of which 1 will be the editor. Peter
Baron will be taking over the reins and 1
hope you will all give him the help and
support you have given me. Please continue
to send in your tips, hints, problems,
articles (learned or otherwise), reviews,
news, small ads. etc. and don't forget to
let us know what is happening so that we can
keep the diary up to date and pass on
information about local groups and special
interest groups.
Also, please support our advertisers, Without
them there would be no magazine and they are
unlikely to keep advertising if they don't
have any response. So if you deal with one
of our advertisers, tell them you saw their
ad. in Hardcore, It helps us and them.
Following on from that we would like to take
this opportunity of thanking our advertisers
for their support. over the past year and
look forward to working with you again next
year, We wish you all a prosperous New Year,
Regarding sending things in
issue, do remember that the
is January 4th. In view of
there may still be delays in the post after
Christmas as well as before, it would be a
great help if you could send things to us
early. Apart from the convenience to us, it
may be inconvenient to you to miss the next
issue. We cannot guarantee space to anyone
for the next
next copy date
the fact that
but do try to get all entries in the first
possible issue. However, there is _ little
chance of late entries getting in. If you
know you would like something in Hardcore
but cannot produce your entry in time (for
whatever reason), just let Peter know how
much space your entry will take and when it
will arrive. If he knows it is on the way,
he will be able to consider whether to
include it or not and can give a couple of
days grace on receipt of your item,
1 wish everyone a Merry Christmas and a
Happy New Year,
Roger has an Apple /// for which he wants to
make custom hardware interfaces. Apple will
not give information about the signals
available on the slots. At one time they
advertised an OEM prototyping card which
included full hardware details (Apple part
no. A3B0001). Can anybody help with
information? Please contact Roger Jenkins on
HERE BT,
Chairman’ Corner
It has been very heartening that, following
our appeal for a new editor, we had four
candidates. 1 hope thar this reflects an
increased feeling that BASUG is a club, and
that members always feel that if they have
something to contribute, they can. | would
like to wish Dr Peter Baron, a member for
some time of BASUG, success in his role as
editor, Without your help, he will not be
able to do such a good job. If you can help
in any way, please let us know.
1 would also like to thank Yvette on behalf
of all the members for the work that she has
put in on the magazine. The standard of
presentation is surely the highest of any of
the user group magazines.
Thanks are also due to Jim Panks who has
been unable to carry on as Software Librarian
because of work commitments. Graham Attwood
has taken on the full job. As you may know,
the Software Library is currently being
upgraded to DOS 3.3, and soon will consist of
fewer, but better disks. Recent additions
such as those from Washington Apple Pi are
already to a very high standard.
We are currently looking for a volunteer to
man the BASUG hotline, a job that involves
pointing people to an expert within the group
who may be able to help with a problem. If
anybody is interested in helping with this
valuable service, please contact Martin on
the hot line to discuss what is involved or
Fran to put your name forward. We are always
looking for more ‘experts'. It doesn't matter
how specialised your knowledgey we can use
it.
BASUG has a number of areas for ‘first aid’
with technical problems. We would like to
establish a Technical group who could help
solve more detailed, or written problems. If
you are interested in acting as the coordin-
-ator, or as one of the group, let me know.
Please can I stress again that the BASUG
committee and helpers are volunteers who have
full-time jobs. Unless we print otherwise,
please do not call outside weekday evenings.
Finally, some of will already know that this
is my last Chairman's Corner. At the time of
writing, my successor is not yet elected, but
1 would like to wish him (or her) the best of
luck, and ask all of you to give the same
support and encouragement that I have
received in my time as chairman.
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 5
Expert Systems
EXPERT SYSTEMS : an overview
by Leo Crossfield
Computer Assisted Learning Group
Department of Educational Studies
University of Surrey
October 1984
INTRODUCTION.
Since the late 1960s a sub-discipline of
main line artificial intelligence (Al)
research has developed. This research has
tended to concentrate upon the development
of programs which capture a level of expert
performance within a small field of
speciality (domain), Expert system research
is a sub-set of intelligent knowledge-based
systems (IKBS) research; thus the main
emphasis of this research effort lies upon
the concept of ‘knowledge’ and __ its
representation within the computer.
The programs that were the outcome of Al
research during the late 1950s and early
1960s, were attempts to develop domain
independent problem solving routines, that
is, programs which are capable of solving
problems of a general nature. These early
programs were found to be limited and the
general approach was abandoned, although it
still stands as an ideal. The new emphasis
has tended to focus upon programs which are
domain specific problem solvers that have a
knowledge base of domain dependent facts and
procedures (relevant to the specific problem
domain) available to them. This new approach
can be seen as a fundamental change in the
principles of the approach towards the
development of research into intelligent
programs.
WHAT DO WE MEAN BY THE TERM 'EXPERT'?
There are many problems that are associated
with what we understand by the concept of
‘knowledge’. Also there are problems as to
what we mean when we say that a person is an
‘expert’ or that a person has ‘expertise’. If
a person is said to have expertise, what
does that person actually possess? Firstly
we can say that the person is knowledgeable
about a certain field or a given ‘topic,
secondly we would usually feel quite
justified to say that the person is capable
of understanding and solving many of the
problems which relate to the field or topic.
Also, if such a person did not know the
answer to a problem they would usually have
the skills and knowledge to seek out
appropriate journals, books, articles, or
other experts in an attempt to find an
answer, or they would at least have some
idea as to where an answer might be found. So,
our expert has two main areas of knowledge
available to him - private and public
knowledge and also two levels of knowledge,
that which is specific to the problem and
that which allows the expert to gain extra
knowledge (usually when the private
knowledge is either exhausted = or
insufficient).
THE EMPHASIS OF KNOWLEDGE IN EXPERT
SYSTEM RESEARCH.
"ae expert performance depends critically
‘on expert knowledge." (Hayes-Roth, Waterman
& Lenat 1983 p 5).
The move towards an emphasis on knowledge is
of fundamental importance to Al research for
a number of reasons; first, the most
difficult problems do not have tractable
algorithmic solutions for they are usually
resistant to precise analysis = and
description, unlike the problem areas of
traditional. data processing (i.e., stock
control, accounts, etc.) Secondly, such
problems tend to have different levels of
abstraction; this joined with an imprecise
nature of the problem requires mechanisms
which are capable of dealing with imprecise
facts and thereby making inferences on the
basis of the knowledge which is represented
within the system. Furthermore, by
emphasising the role of a knowledge base,
within a system, we can see that there are
many complex areas of human endeavour which
might well be represented such as aspects of
legal reasoning, medical diagnosis, criminal
analysis, geological exploration as well as
a number of military applications, The most
immediate significance of this research
effort has major relevance tor industry, the
military and the government in general;
although there has been a large number of
developments in medical consultation. To
date expert systems have tended to focus on
several application areas which fall into
the main categories of /—_diagnosis,
monitoring, control, interpretation and
prediction.
The main concern of expert system research
is in the area of private knowledge with the
main question being ‘how can such knowledge
be extracted from the expert?’ and if it can
be extracted "how can this knowledge be
represented within a computer?'. This
Page 6
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
‘approach has tended to view knowledge as
some form of inexhaustible entity which
people possess, Private knowledge can be
viewed as ‘rules of thumb' (procedures) by
which an expert arrives at a conclusion,
with the expert sometimes not knowing what
tules, if any, were actually applied to the
problem. Such rules of thumb have been
termed as heuristics which enable experts to
deal with incomplete information yet still
arrive at a meaningful conclusion. The use
of heuristics play a major role in Al
programs for they allow the program to limit
the search space by differentiating between
paths which could lead to a valid or
reasonable conclusion from paths which are
obviously irrelevant. The use of these
strategies aim at reducing the possibility
of an exhaustive search and by so doing
reduce the amount of processing required.
WHAT CONSTITUTES AN EXPERT SYSTEM?
As we have briefly discussed above, an
expert system is a computer program which
embodies the expertise of one or more
experts within a particular, usually quite
small, domain. This expertise is seen as
both factual knowledge and procedural
knowledge. Therefore an expert system, as
well as having facts about the domain, also
encompasses stategies for applying the
knowledge to specific problems, within that
domain. Such strategies also allow the
system to make useful inferences, but the
development usually moves along. a
development path which is quite different to
standard data processing (DP). Because of
the conceptual complexity of AI systems
their development can often go through a
number of cyclic development phases. Such a
procedure could involve the results of each
phase being discarded and the experience
gained constituting the basis for the next
phase. This approach to software development
perhaps highlights the fact that Al programs
can be considered as working hypotheses;
consequently such an approach to software
development is time consuming.
The development of a useful expert system
can represent a couple of years work for a
small research team, but such time scales
are difficult to assess because of the
individual problems which are associated
with each particular domain. These problems
tend to vary considerably and depend very
much upon the availability of experts in the
field and/or expert information from other
sources. The other major factor in
development time comes down to the amount of
effort which is required in extracting
knowledge and representing it in a machine-
like form. (The title of ‘Knowledge
Engineer’ has been termed for the individual
or individuals that are involved in this
Process (Feigenbaum 1977). The amount of
effort depends very much on the nature and
accessibility of relevant software tools
(and methodologies) that the team has at
their disposal,
SOFTWARE TOOLS.
An important focus of expert system research
(ike any good software development effort)
is the development of software tools which
aid the development of intelligent knowledge-
based software. Artificial intelligence research
has spent a number of years in developing
appropriate tools for specific domains. Such
tools are intended to ease the process of
building an expert system with the focus
upon knowledge elicitation, the knowledge
representation process, and the actual
development of the software. The main area
that has been found to be problematic is
that different areas of expertise, when
being represented, often require different
tools and methods.
Tools for expert system research range from
languages that have been developed for
symbolic manipulation, such as LISP, (which
is an acronym for LISt Processing) to programs
which aid the design, construction and
testing of an expert system. This software
sometimes taking the form of a powerful
programming environment.
SHELLS.
Expert system shelis (or frameworks) are
also considered as tools, A shell is in
effect an empty expert system, that is, it
is empty of any knowledge and therefore
domain independent. The user is expected to
fill the shell with knowledge from the
relevant area of interest. Such shells
include set search strategies (which the
user cannot change) which are often based on
some specific existing expert system, such
as MYCIN or PROSPECTOR. This, in effect,
defines the nature of the ‘system by
restraining its overall function towards a
specific activity such as_ diagnosis,
monitoring, control, etc.
The main idea of a shell is that a potential
expert system user can buy a shell ‘off the
shelf! (so to speak) and adapt it to their
own specific needs. This approach has
received some criticism in recent years for
although it is possible to buy a shell for
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 7
as little as £400 to run on an Apple or
approx. £4000 to run on a more substantial
machine such as a VAX. It is generally
agreed that there are a number of problems
associated with expert system shells. First,
there is a consensus of opinion that a
microcomputer with less than 512Kb of RAM is
impractical for any serious application of
this technology. This fact stands whether
the development involves using a shell or
weiting the entire system in LISP. Generally
Al tools are quite large and consequently
heavy on memory, also a reasonable expert
system might entail anything from 150 to
2000 rules. Secondly there are problems in
the fact that the knowledge engineer's role
involves the difficult process of knowledge
elicitation which is undoubtably a difficult
process. This process involves a number of
skills in interviewing techniques although
the main difficulties arise in regard to the
nature of expertise, for often even the
expert is not exactly sure of what he or she
knows, or what procedures are used to solve
specific problems.
KNOWLEDGE ELICITATION.
Knowledge elicitation is therefore usually a
long cyclic process of eliciting the
knowledge in the form of key elements and
tules, extracting certainty factors from the
expert, representing the —_ knowledge,
discussing the representation with the
expert and making the necessary
modifications. The entire process involves a
number of cyclic paths of refinement until
an agreement is eventually arrived at and
the knowledge base appears to be stable. But,
this is rarely the end of the story, for
when the knowledge base is represented
within the computer the performance of the
expert system may still show errors and
inconsistencies. Consequently the knowledge
base will have to be ‘tuned’ (small or major
corrections made, perhaps only to some
aspect such as the confidence factors) until
a specific performance level is achieved. The
tuning of the expert system is usually done
in consultation with the expert until the
expert feels that the system's performance
is similar to how the expert would have
performed on similar problems.
Overall it seems to be generally considered
that the main use of an expert system shell
is for the first step in developing an
expert system, constituting a valid
feasibility study before a company needs to
fully commit themselves to the development
of a fully fledged system. In effect, shells
can be viewed as a useful and practical
method of assessing the feasibility of what
this technology can offer over traditional
data processing techniques. (For a more in
depth discussion of software tools see
Hayes-Roth, Waterman and Lenat (1983) Ch: 6
and also O'Shea and Eisenstadt (1984).
SYMBOL MANIPULATION AND THE
REPRESENTATION OF KNOWLEDGE.
Perhaps the most distinguishing feature of
expert systems, that has been briefly
discussed above, are the techniques for
representing knowledge (discussed in detail
below), symbolic inference and heuristic
search, Each of these features depend
heavily upon symbolic manipulation and
consequently the language LISP (which was
originally developed by John McCarthy)
allows the implementation of — symbol
manipulation on a computer. It was mentioned
in the previous paper ‘ARTIFICIAL
INTELLIGENCE (in Hardcore June 1984) that
Al attempted to move the use of the computer
away from its traditional role of being a
purely mathematical tool towards a tool for
the manipulation of symbols which could be
realised in the ‘real world’, Consequently
the role of symbol manipulation has come to
play a fundamental role in all aspects of Al
research from natural language understanding
and visual perception to robotics and expert
systems, Specifically, expert systems are
seen as a method of implementing symbolic
reasoning, and the recent move towards the
representation of knowledge could not have
been achieved without a symbol manipulation
paradigm.
The area of knowledge representation is a
complex field which holds many problems with
some being seen as effectively in the domain
of philosophy; problems such as ‘what do we
mean by knowing’, although Al research seems
to be founded on the premise that 'knowing'
must begin with some form of symbolic
representation of facts about the world, From
this view point it can perhaps be argued
that AI programs differ from conventional
data processing programs because they
utilise symbolic representational inferences
and reasoning.
There are a number of ways in which
knowledge can be represented within an Al
program and basically these can be narrowed
down to four main methods: formal logic,
associative networks, frames and production
systems.
SOME — KNOWLEDGE
TECHNIQUES.
REPRESENTATION
Page &
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
We have discussed (above) that for a
computer program to use knowledge we must
first find a convenient way to represent
that knowledge so that the program can make
full use of it. Such a usage involves the
manipulation of the specialised data
structure (knowledge base) so that the
program can make use of it when making
intelligent inferences.
In general each of the knowledge
representation schemes (which are outlined
below) although seemingly un-exciting, have
had influences on issues in cognitive
psychology for they touch upon some major
issues and concerns for the study of
cognition and intelligence in general.
1, LOGIC - Declarative Representation.
Logical representation can perhaps be
considered as the classical approach of Al
to the problem of representing knowledge. This
approach has been termed ‘declarative’
representation, which means that the
knowledge is declared in a formal logic,
such as predicate calculus, which allows
inferences to be made from the declared
facts. This approach guarantees that any
deductions are true if they are based upon
true premises. This is perhaps the strongest
reason why formal logic has been found to be
useful in Al research.
An example of this approach can be seen in
the following example:
All swans are white
which can be
calculus as:
translated into predicate
V x. Swan (x) => Are white
which is read as:
Wx) for all x which exists in the
world and,
(Swan (x) if x is a Swan,
@) then (implies),
x is white.
Within the framework of formal logic there
are specific rules called ‘rules of
inference’, which state that if the facts
(premises) of an argument are true,. then
they can be used to derive other facts which
will, of necessity, also be true
(deduction). A typical example is found in
the form of syllogisms:
T. All men are mortal. (premise)
2. Socrates is a man. (premise)
therefore
3, Socrates is mortal. (conclusion)
where I, and 2. are declared facts and 3, is
the deduction which MUST be true, as long as
the premises are true,
Predicate calculus has been —_used
successfully in many Al programs, and has
been popular because new facts can be
derived from old existing facts (or existing
knowledge base). But, these techniques were
found to be limited because there was a need
for the program to have access to procedural
as well as declarative knowledge, therefore
allowing the system to infer how relevant
certain facts were to a given situation. (For
a more detailed discussion of predicate
logic see Quine (1980).
There is a controversy in Al between the
declarative and procedural representations
of knowledge. Winograd (1975) explains that
the debate can be viewed as an incarnation
of the old philosophical distinction between
‘knowing that’ and ‘knowing how'. "The
declarativists ... do not believe that
knowledge of a subject is intimately bound
with the procedures for its use." (Winograd
1975 p 186). On the other hand the
proceduralists believe that many things
we know are best seen as procedures, and it
is difficult to describe them in a purely
declarative way." (Winograd 1975 p 189). So
how can knowledge be represented in a
procedural form? There are three major forms
of procedural representation: associative
networks, frames, and production systems.
2, ASSOCIATIVE’NET WORKS.
The associative network (or semantic
network) was developed by Quillian (1968)
and others as a psychological model of human
semantic memory, and has been further
developed in Al research in general and the
field of natural language understanding in
particular.
The overall structure of an associative
network can be considered as a network, or
graph, where each main item that” is
specified (node) is linked to other items by
lines (arcs) The following diagram is an
example of a simple associative network. Some
points to note are that arcs are usually
labelled, in our example we have a label IST
which stands for ‘instance', e.g., a swan is
WILD-WORD
word processing, without sacrificing efficiency.
The cheaper alternative
Wild-word is a powerful 40 column word processor for the Apple Il and //e.
What you see is what you get. Over 20 format and editing commands
with three modes give total editing flexibility, and have immediate
effect on the screen. Wild-word features true SHIFT key operation
using a simple clip-on modification. Lower case is generated in
software using the graphics screen. Any character, including printer
control codes, can be inserted into the text.
Wild-word also features a built-in mailing list and merge feature, and
can store over 1000 names and addresses on each disc. It is also
core-resident, leaving all drives free for text and mailing list data.
Header with automatic page numbering is available for print-out.
Wild-word is not copy protected, and is supplied complete with
keyboard modification and full reference manual, for £35 + VAT. &
Contact your local dealer or Sx
ELITE SOFTWARE COMPANY, oe
93 Eastworth Road, Chertsey, Surrey, XT16 8DX. 2
Tel: 09328 67839
December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 9
Page 10
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
an instance of the category bird.
<BIRD>
IST
COLOUR
<Wi >
We could make a more complex network by
increasing the associations:
AGT = AGENT
IST = INSTANCE
AGT <PERSON?
wae
IST
<DAVID>
IST
ACT-DROVE
<CAR>
HT
Ist —~»
<MARY>
<VEHICLE>
1s
<TRUCK>
This network suggests that <DAVID> was the
main agent who committed an act of driving a
<CAR> (which is an instance of <VEHICLE>)
that hit <MARY>. Where both <DAVID> and
<MARY? are instances of <PERSON> and <CAR>
and <TRUCK? are instances of <VEHICLE>. We
can see from these examples that it is
fairly easy to represent a quite complex set
of associations within a given situation.
One major problem of associative networks,
unlike predicate calculus, is that there is
no intrinsic guarantee that a given
inference which is made from the
representation will be valid. Therefore
although we have a more flexible
representation scheme, which can be easily
manipulated, we have a scheme which depends
solely upon the program which manipulates
the data structure. (For a more in depth
discussion see Barr and Feigenbaum 1981 pp
180-189).
3. FRAMES.
the most
Frames are recently developed
scheme (see Minsky 1975). Frames can include
both declarative knowledge and procedural
knowledge, but both of these forms of
knowledge are contained within a data
structure which gives the __ situational
context. A frame can be viewed as a block of
information about a specific area which
contains information that can be either
declarative facts or procedural information;
these areas are called 'slots', It is common
to have general frames as well as specific
instance frames, for example a general frame
could contain general details of a person
with a specific frame being the details of
some specific person.
A frame can be conceptualised as:
| SLOTS
For example a frame could be developed to
contain information about a specific area
and within the frame the slots (or knowledge
hooks) will contain knowledge of the area
that is represented by the frame. Kuipers
(1975) details a number of properties which
he sees as fundamental. He also gives a
detailed scenario to explain the main idea
behind a frame representation; this example
scenario suggests that whenever we meet a
new situation we take to that situation a
number of pre-conceived ideas, notions and
expectations, Any reasonable expectation
that we hold is usually based upon both our
previous general experience of the world as
well as our experiences of similar
situations. These expectations might be 100%
correct, totally wrong or somewhere between
these two extremes. When we are confronted
with our actual observations of the new
situation we might well change our
expectations to encompass the newly gained
knowledge. In effect we start with
generalised frames and gradually either
modify these existing frames or pull in more
relevant frames - often discarding the
general frame completely.
It could be argued that we code many stereo-
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 11
typical situations in this manner and modify
them on the basis of our experience. Indeed
it could also be argued that within these
frames we might well store actual facts such
as ‘dogs have four legs' (in a general dog
frame) as well as procedural knowledge such
as ‘if I want to go through a door my first
action must be to open it’. One can see that
this simple rule involves other knowledge
such as knowledge that doors can be opened,
and knowledge of facts such as doors can be
opened if they are closed except when they
are locked. If they are locked we will need
information about locks, therefore the door
frame could involve a pointer to a lock
frame. Within the lock frame there would be
information about keys which would allow us
to gain the knowledge that ‘one must find
the appropriate key for the lock’.
One can therefore see the importance of
knowledge representation schemes which can
handle both declarative and procedural
knowledge. Barr and Feigenbaum (1981) give a
good example of a generic frame for a dog:
Generic DOG Frame
Selfs an ANIMAL; a PET
Breed:
Owner: a PERSON
(If-Needed: find a PERSON with PET=MYSELF)
Name: a PROPER-NAME (DEFAULT=ROVER)
DOG-NEXT-DOOR Frame
Self: a DOG
Breed: MUTT
(Barr & Feigenbaum 1981 p 159)
Barr and Feigenbaum (1981) suggest that
frame based processing allows the system to
determine whether a given frame is
applicable within a given situation. Also
that a likely frame can be selected to aid
in the process of understanding the current
situation. If this frame finds that it is
not appropriate, it could transfer control
to amore appropriate frame.
It is also possible, from a frame based
system to implement other knowledge
representation schemes within a given slot,
such as associative networks or rules; thus
creating a ‘hybrid’ representation scheme.
4, PRODUCTION SYSTEMS,
Production systems were developed by Newell
and Simon in 1972 and represent the scheme
which is most often used in current expert
systems. In essence a production system is a
scheme in which knowledge is represented by
rules in the form of: IF <condition> THEN
<action>
This structure is formally known as.
‘antecedant-consequent pairs' where the
antecedant can be either a simple condition
or a more complex condition.
A knowledge base is made up of a number of
tules (production rules) and are used in an
attempt to mechanise complex decision
making. Barr and Feigenbaum (1981) explain
that a production system consists of three
parts: a rule-base, a context list, and an
interpreter. The production system's
interpreter will use a specific control
strategy, and (depending upon the control
strategy which is implemented within the
expert system, in the case of a forward
chaining strategy) will first take the
user's input and try to match the condition
(left hand side of the rule) of the first
rule in the relevant section of the
knowledge-base. If the interpreter fails to
find a match it will then try to match the
condition of the next rule (and so on
through the rule base). Alternatively, if
the first rule was a successful match, then
the rule will be stored as the first element
in the context list (but the action, or
right hand side of the rule will not yet be
acted upon). The interpreter will then try
to match the condition part of the second
rule. If this second match is also
successful, then this rule will also be
added to the context list and so on until
the interpreter fails to find any further
candidates. When the cule base (or relevant
section of the rule base) has been
exhausted, there may be cither a number of
rules in the context list, or only one. If
it is the latter then there is not a problem
and that rule can be 'fired', ise. the
action (or right hand) side of the rule can
be implemented. On the other hand, if the
context list contains more than one rule
then there is a problem. This problem is
termed as a ‘conflict! and it must be
resolved before a rule can be selected to be
fired. The criteria which the interpreter
will use to resolve this conflict can vary
tremendously depending on the actual
application and requirements. For instance,
the criteria for conflict resolution can be
as simple as ‘take the first rule that was
found to be appropriate’, or it could take a
more complex form such as
'take note of all the certainty factors,
which are associated with each rule, and
fire the rule which has the highest
RECENT ADDITIONS disk
88 Utilities Visicale (Magicalc etc) and spreadsheet models
89 Personal/educational programs for domestic use
90 DOS 3.3 utilities and disk maintenance programs
91 Action and adventure game mixture
92 More personal/educational/domestic programs
93 Educational tests of maths
94 Educational tests of algebra, spelling, geography and maths
95 Textfile reader/mailing listinvoicer/grades database
96 Four different pinball games from ‘Pinball Constructor Set’
97 More educational maths and arithmetic programs and tests
* all the above have full instructions and documentation on the disk *
Disk 99 Printer utilities
Apple DMP/Imagewriter [ay
Make proper use of this superb printer's scenario disks __
facilities which t well explained EN andl
acilities which are not well explaine e \slant
in the manual. (How unusual!) | E13 Treasur
iso
Sey NEW E14 Fur Castle
Heroes
Formats disks for DOS, ProDOS, us Mondamen Caves
Pascal and CP/M EY sAatin's Cas
Fast copies disk-to-disk with 1 or 2 drives eH Hogarths Cas'
Checks drive speeds. E18 iba Trap b
Includes free ‘Dog-fight’ game. fat:) eat Death
a
Disk 101POM's 6 Disk102 POM’s 7 Silay £20 —_
Parlez vous francais? Special ‘
Two disks from the French Apple Club. EAMON Starter Pacl sgt
Good graphics and various utilities. Disk E1 eae £5 for
BAI disks are £5.00 inclusive. scenario disks 5
Send your order form and cheque (or Access No.) to P.0. Box 174, £20... save £
Watford, WO2 BNF or ring Fran on 0635 48385 for Access sales a
———_
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 13
certainty factor. If two rules have the same
certaintly factor then fire the rule with
the highest certainty factor which was first
found on the context list’.
Once a rule is selected from the context
list it is then fired.
The control strategy, which has been
detailed above, is known as ‘forward
chaining', that is antecedant to consequent. A
number of expert systems have been developed
using this chain of reasoning, the most
classical example being MYCIN (Shortliffe,
1976). Forward chaining usually involves the
user to enter a specific enquiry including
as many details as possible; such enquiries
could obviously be highly detailed, Once the
entry has been completed the expert system
will attempt to solve the problems which are
associated with the enquiry, eventually
displaying an answer. The main problem which
is associated with this strategy is that
some of the enquiry details might be found,
by the expert system, to be irrelevant. An
example of this point being that to make a
detailed enquiry about a person's child
including age, name etc., is irrelevant if
the system finds that the person does not
have any children, An alternative control
strategy is backward chaining, that is from
consequent to antecedant, an example of this
control strategy can be seen in PROSPECTOR
(Duda et al, 1979). Backward chaining
starts with a goal, if it cannot solve the
goal it will break it down to smaller
sub-goals. It will continue to further
sub-divide the goal until it eventually
reaches a level of detail where it succeeds.
Once the system has been successful, at the
lowest level, it will work up the list of
sub-goals until it can solve the main (top
level) goal. This strategy involves the user
typing in the minimum of information, with
the system asking the user for further, more
detailed information, as, or if, it requires
it.
An ideal control strategy needs to encompass
a flexibility which will allow it to switch
between these two classical strategies as
the need arises. (For a more detailed
discussion of production systems see Barr &
Feigenbaum 1981 pp 190-199),
SELF KNOWLEDGE AND JUSTIFICATION.
We have seen how knowledge can be
represented within a system but gencrally it
would be agreed that people have the very:
special ability of being able to reason
about their own thought processes. This is a
specific problem area for Al in general, for
if we could develop a system which could
reason about itself we would be brought
sharply into the realms of cognition and
self-knowledge. An important point to make
is that Al research is explicitly interested
in this area, for if an IKBS could implement
some form of self-knowledge then it would be
possible to develop expert systems which are
capable of rationalising their decisions as
well as offering the user valuable
explanations of how it had reached a
specific conclusion,
The need for reliable explanation functions
has been found to be fundamental to the
development of expert systems. For example,
when an expert system is being used as a
professional consultancy system one can see
that any diagnosis or recommendation that
the system makes will need to be justified.
Generally current expert systems do involve
a fairly simple explanatory mechanism which,
upon the user's request, can offer the user
a backtrack over its decision tree. Such
systems may present the user with the
previous rule, or the chain of rules that it
was attempting to satisfy. In a fairly crude
sense this can be seen as a_ form of
explanation, but it begs the question ‘can a
rule stand as its own justification’. The
alternatives are to either have the system
generate an explanation automatically (this
would involve the system 'knowing' the basic
principles on which the explanation is
founded) or perhaps a less grand alternative
would be to associate some text with the
relevant high level (or meta) rule. This
latter solution would, of course, only
provide an approximation, but might serve as
a better explanatory function than relying
upon the generation of the system's
historical path through the knowledge base.
ARE EXPERT SYSTEMS 'INTELLIGENT'?
Whether one could consider an expert system
as a truly ‘intelligent! system is an
interesting question. One might — perhaps
expect an intelligent system to be capable
of learning from its experience, and it
would be reasonable to expect that such
learning should enable the system to not
only improve its overall performance (which
could involve adding new facts to its
knowledge base) but it should also be
capable of improving its method of
performance. Such a learning system would
involve a great deal of high level
knowledge, possibly involving another expert
system to manage the — re-organisation,
connections and relations of the existing
Page 14
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
‘and newly acquired knowledge,
“An ‘expert’ system can use a knowledge
system which is hierarchically organised, An
‘intelligent’ system can ‘detect’ hierachical
structures (and build them) from knowledge-
items which are connected by relations in a
tangled network." (Moore, 1984).
This suggests that the ability to reorganise
a knowledge hase is a creative ability, and
also that machines will never be capable of
creative action. (This issue is a complex
area of debate in its own right).
CONCLUSIONS.
The area of expert systems is becoming a
major focus of government funds even though
this research is still in its most
elementary experimental stage. Yet, even
though this research is still in its infancy
it has grabbed the imagination of many
people in both industry and academia,
perhaps due to the important role that it
could play in assisting control as well as
legislation based organisations. Expert
systems have evolved to a stage where
development is quite well understood and
considered as feasible to many areas of
commerce and industry. This research area i:
therefore seen as the first major practical
contribution that Al research has offered to
the world at large. Along this line of
thought we can see that government bodies
are actually recognising the potential of
expert systems in many diverse fields and to
that extent the British government have
actually financed a large number of
‘demonstrator’ projects, via the Alvey
programme, to demonstrate the use of this
aspect of high technology in specific fields
of endeavour.
There are a number of reasons why expert
systems research is important, but
primarily, expert systems encompass a number
of important features (some of which have
been mentioned in this paper). There is
little doubt that the research into expert
systems has somewhat enriched our
understanding of the cognitive processes, as
well as offering us a product which has
practical implications for industry and
commerce, We have also gained a great deal
by having the tools and methodologies which
have been developed by this area of research
with such tools inevitably aiding us in the
task of developing more powerful and
‘intelligent’ systems in the future.
REFERENCES AND RECOMMENDED READING,
** Barr, A. & Feigenbaum, E.A, (1981). The
Handbook of Artificial Intelligence. Vol
1. Pub: William Kaufman Inc.
** Barr, A. & Feigenbaum, E.A. (1982). The
Handbook of Artificial Intelligence. Vol
2, Pubs William Kaufman Inc.
* Bobrow, D.G. and Collins, A. (1975). (Eds.)
Representation and Understanding. Pub:
Academic Press.
** Cohen, P.R. & Feigenbaum, E.A. (1982). The
Handbook of Artificial Intelligence. Vol
3, Pub: William Kaufman Inc.
** Dehn, N., and Schank, R. (1982). Artificial
and Human Intelligence. In Steinberg
(1982), pp 382-391.
Duda, R., Gaschnig, J., and Hart, P.E.
(1979). Model Design in the PROSPECTOR
Consultation System —for_—_—-Mineral
Exploration. In Michie, D. (Ed.) Expert
Systems in the micro-electronic age. Pub:
Edinburgh University Press, pp 153-167.
Feigenbaum, E.A. (1977). The Art Of
Artificial intelligence: Themes and Case
Studies in Knowldege Engineering. In
LJCAL, pp. 1014-1029,
* Hartley,R.T. (1980). TheCompetentComputer.
Technical Report MCSG/6. Department
of Computer Science, Brunel University,
Uxbridge, Middx.
** Hayes-Roth, F., Waterman, D.A., Lenat,
D.B. (1983). Building Expert Systems. Pub:
Addison-Wesley 1983.
* Johnson, L., and Keravnou, E. T. (1984).
Expert Systems Technology : 4 guide. Pub:
Abacus Press.
** Johnson-Laird, P.N. (1983). Mental Models.
Pub: Cambridge University Press.
* Kuipers, B.1. (1975). Representing Knowledge
for Recognition. In Bobrow and Collins
(1975).
Minsky,M. (1968). (Ed) Semantic Information
Processing. Pub: Massachusetts Institute
of Technology.
Minsky, M. (1975). A Framework for
Representing Knowledge. In Winston, P-
(Ed.) The Psychology of Computer Vision.
Pub: McGraw Hill, New York.
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 15
Moore, L. (1984). The Unknown Generation.
In Burns, A., (Ed.) New Information
Technology. Pub: Ellis Horwood Ltd.
pp. 159-169.
** O'Shea, T. & Eisenstadt, M. (1984): ARTI-
FICIAL INTELLIGENCE: Tools, Techniques
and Applications, Pub: Harper Row.
Quillian, M.R. (1968). Semantic Memory.
In Minsky (1968).
* Quine, W. V. O. (1980), Elementary Logic.
Pub: Harvard University Press.
Shortliffe, E.H. (1976). Computer-based
Medical Consultations: MYCIN. Pub:
American Elsevier.
Steinberg, R.J., (1982). Handbook of Human
Intelligence. Pub: Cambridge University
Press.
Weis and Kulikowski
Guide to Designing Expert Systems.
Chapman and Hall.
(1984). A Practical
Pub:
* Winograd, T. (1975), Frame Representations
and the Declarative/Procedural Controversy.
In Bobrow and Collins (1975).
Winston, P.H. (1970). Learning Structural
Descriptions from Examples. In Winston,
H. (Ed). The Psychology of Computer
Vision. Pub: McGraw Hill, 1975. pp 157-209.
* = Recommended reading
Essential reading
Special Offer
BASUG SPECIAL OFFER FROM ELITE
ITEM R.R.P. DISCOUNTED
(INC VAT) PRICE
Ramview £ 69,00 £ 55.00
Ramview 64k £138.00 £110.00
Wildcard £ 92.00 £ 70.00
Wildcard Plus £136.85 £110.00
$-C Macro Assembler
£79.35 £ 62.00
Wild-Word & 40.25 £ 33.00
Appli-Kit &£ 28.75 & 23.00
Edit-JIL £ 28.75 L 23.00
Symbo!-77 & 28.75 & 23.00
Password-69 & 28.75 & 23.00
Edit-JIl_is a line based editor which can be
co-resident with Appli-Kit, Symbol-77 is a
graphics utility which allows text and other
symbols to be displayed on the hi-res
screen, Password-69 allows a password to be
placed on a disk - until the password is
given to unlock it, the disk is almost
unusable. The other product descriptions can
be seen in Elite ads in this issue.
Any order for ten or more of any one item
received from BASUG will be given the
discount. Elite will be happy to mail direct
to the people concerned and postage and
packing are included in the price. However
overseas members should add £2 for postage.
To take advantage of these offers, send a
cheque made payable to BASUG Ltd. for the
appropriate amount to BASUG at the P.O. Box,
stating clearly your name and address and
what you require. As soon as Fran has the
orders, she will send the list of names and
addresses to Elite, assuming that there are
enough to warrant the discount. If not, she
will let you know. We must have your orders
by 15th December.
Small Ads
WANTED
I would like to buy a copy of Stoneware's
Professional Graphics Processing System or
any other software that is compatible with a
Symtec light pen. Details to David Steward,
Ji (anita these,
Nien HW. Fabs bes ity
eet rete ee ie Steerer rt eee ttrrerttr ss
For Sale. Apple cooling fan made by MR
Engineering, Chicago. Sits on top of power
supply, 240V. Originally $69 - sale price
£20. Mike Watson, fisifi (Mil-dtil! 2th (day)
(A 4H 454% (evening).
peeree Tee teee eet t titi setter ttt tt titer ees
FOR SALE.
Parallel Printer Card, suitable for Apple
DMP or C.ltoh. Built in text & hi-res dumps.
Special character design & driver software.
Complete with manual and demo disk. £60 o.n.o.
Ring Clive Benjamin on iWissliviasy (iti) ail
{COD BD HEE EBO SUE EBOU I BODODS SEIU
ITT 2020 fitted with Apple motherboard,
Digitek RAM Master, Kaga Monitor, 2 disk
drives (1 brand new) plus manuals, disks,
etc.
Offers to Mrs. J. Brooks on:
Page 16 HARDCORE - The Journal of the British Apple Systems User Group December 1984
Mac Clock
‘a
St.Mac Clock
g
This clock 1s produced from the following listing in MS-Basic:-
1O CLS : Pi85.1415926*: HR = 12
2005S =-1
30 DEF FNX (R) =110 +100" SINC)
40 DEF FNY(P}=110 ~ 100 *COS(R)
SOFORR = 2" PITO OSTEP -PI/6
60 CALL MOVETOXFNX(R),FNY(R))
65 CALL TEXTFONT(9):CALL TEXTMODE(2):CALL TEXTSIZE(9):CALL TEXTFACE(16) :
70 PRINT HR::; HR=HR-1
80 NEXT R
81 DEF FNA(R)=125+90*SIN(R)
02 DEF FNB(R)= 105-90" COS(R)
83 DEF FNC(R)#125 +85" SIN(R)
84 DEF FNO(R)=105 -85 * COS (R)
GS FOR R = 2 * PI TOO STEP -PI/30
86 LINE (FNA(R),FNB(R)-CFNC(R),FNO(R))
87 NEXTR
88 DEF FNE(R)= 125 + 60 * SIN(R)
89 DEF FNF(R) = 105 -80 * COS(R)
90 FORR= 2" PI TOO STEP -PI/6
92 CALL PENSIZE(2.2)
94 LINE(FNA(R),FNB(R))4FNE(R),FNF(R))
96 NEXT R
98 CIRCLE (125, 105),90
100 T$=TIMES
110 M=VAL (MID$(T$.4.2))
120 H=VAL(MID$(T$.1,2)}4INT(M/S)/ 12:1F 9 H>=13 THEN H=H-12
130 S=VAL (MID$(T$,7,2))
140 IF S=OS THEN 100 From a listing in ST Mac enhanced by Peter Trinder
150 HI = H2*PI/12
160 M1= M¥2*PI/60
170 $1=S*2*P1/60
180 CALL PENSIZE(S,3)
190 IF OM «IM THEN LINE(125.105)-(125+80*SIN(EM), 105-80* COS(EM)).350
200 CALL PENSIZE(S,5)
210 IF OH¢OH THEN LINE(125, 105)-(125+60 SIN(EH), 105-60" COS(EH)),30
220 CALL PENSIZE(1.1)
230 = IF O5<9S THEN LINE (125,105)-(125+80"SINES), 105 - 80 * COS (€5)).30
240 LINE (125, 105)-(125+80"SIN(S1),105-80 ™ COS (S1))
250 CALL PENSIZE(S.S)
260 LINE (125, 105)-(125460* SIN(H1), 105-60" COS(H1))
270 CALL PENSIZE (3,3)
280 LINE (125.105) 125+80"SIN (M1).105-80"COS(M1))
290 OS*S: Oris: OH=H: Ert=ri: EHH: ES*S1
300 GOTO 100
| December 1984 HARDCORE - The Journal of the British Apple Systems User Group
Page 17
Mac Notes
The following is a discussion posted by a
Compuserve user pointing out some of the
improvements to Microsoft Basic for the
Macintosh:
I received my upgrade (Version 1.01) to MS
Basic by calling Microsoft some weeks ago,
getting a return authorisation number and
mailing my old master back. The upgrade
contained the following ‘enhancements':
LPRINT no longer causes buffer overflow
when Imagewriter DIP switch is changed
from DTR handshake to XON/XOFF.
Files can now be edited with MacWrite and
moved from MW to Basic if they have been
saved with 'text only’,
‘Command-' now stops program and is
equivalent to 'Command-C'. Hopefully at
some point they will pass Command C
through; it still stops program in the
update.
Running on Lisa under Macworks, CIRCLE
statement is ok and full screen is now
available.
‘A dumb terminal demo program is included
and shows quickdraw calls.
SOR is nearly twice as fast.
The following corrections have been made:
A SAVE no longer saves only part of the
file if you go to the FILE menu before the
disk write is complete.
NEW now resets the output window title.
A bug in passing a numeric display to a
ROM function or using it in aGET or PUT
Statement is cured; it produced a fatal
system error.
A bug causing 10 GOTO 30; 20 GOTO 40;
RENUM to cause undefined line number
messages has been fixed.
Files now keep their folder identity when
opened.
A bug causing two scroll thumbs with three
list windows is fixed,
NOTE: The bug that caused some icons to
become ‘generic! reported in several
messages here has apparently been fixed,
‘although that's not reported on Microsoft's
list. One way to update old MS Basic program
disks so that icons are correct is: load the
new basic; make a copy to a clean, newly
formatted disk; delete any files you don't
want to end up on all your upgraded disks
from the copy; if you have Fontmover, remove
any excess fonts from the system folder of
the copy to save space; put everything left
in the copy in one folder. Then use the copy
disk as follows: make it the boot disk
(restart); copy everything except system and
empty folders and MS-Basic from each old
disk in turn to the copy disk; use either
the 4-pass (if you only have one drive) or
the disk icon move to copy the entire copy
disk back to the old disk; trash everything
‘on the copy disk except the system and empty
folders and their contents; empty trash;
continue.
Another tip: If you use File, the sample
text editor from the Mac Software Supplement
on many of your disks, as I do, since it
saves a lot of space compared with MacWrite
if you only want to do program editing, then
you will find that if you remove all the
fonts except the system fonts from those
disks to save space, File may produce
funny-looking characters. If it does, a
solution is to use Resource Mover to change
the FREF entry numbers for File to match two
system font FONT entries in System.
DATACRAFT
SOFTWARE SERVICES
Introducing
The SP€€Demon”
for @geppia II, 1fPlus and/le.
Make your Apple run up to 34 times
faster. Simply plug in and go.
Now available at the special
introductory price of £265+\VAT.
16 Brune Street, London E1, 01377-8693
mcoeorovie Comte Params sua. Siam Daan ton,
Page 18
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
Wildcard Plus
by Mark Whelan
Judging from recent letters to Hardcore and
other publications, there is a fair amount
of interest in 'Copy-cards', or the hardware
devices for copying your precious software.
However, there is little in the way of
practical help published. 1 hope the
following may help those trying to decide if
they need a back-up device, as well as those
who already have one.
The obvious application is in backing-up
protected software, so that you don't have
to wait months for that replacement disk
that is always an American product. The WC+
will back up 48K, 64K, or 128K programs,
giving the added advantage of faster loading
times too.
An example of the card's use in speeding
things up is the ability to do away with
pre-boot disks, Simply boot the pre-boot,
then the main program. When everything is as
you want it, press the WC+ button and dump
it as one file that is unprotected and
auto-booting. This is fine for memory-
resident programs which load fully first
time.
For ones which access the disk after
booting, a combination of hardware and
software is required. It is often the case
that the most heavily protected part of a
program is the boot routine. Copying this
with the WC+ is accomplished readily. As
before, simply get your program through to
the required menu, and make a copy at this
point. From now on this disk can be booted
to get up to the point where data is
accessed. The data which is referred to from
time to time is very often unprotected, or
can at the very least be handled by a bit
copier. By copying the disk itself with some
piece of software, the data is readily
available and can be swapped for the boot
disk at the appropriate point. This may be a
little inconvenient, requiring two disks. How
much more inconvenient though to lose the
program entirely, through carelessness or
simply overuse.
A less obvious use is in controlling your
Apple. An example that will appeal to games
fans is one I used on a Wizardry scenario
disk. These had an annoying habit of going
down just as I was getting a decent party of
characters built up. And of course my
back-up scenario was sufficiently out of
date as to be useless. Whilst there is a
‘Recover Out Characters’ utility, this
requires a readable disk. Often mine were so
corrupt as to be missing the vital areas.
Perhaps a good programmer could sort this
out with enough utilities. If not, try this:
1) Run the Recover utility.
2) Put in a good scenario copy and press
<RETURN>
3) When it gives the message "Recovering"
press the WC+ button.
At this point the drive continues to turn,
but nothing is happening. Now put in. the
corrupt disk. More often than not (mine only
failed once) the characters are readable,
only the disk recognition fails. So once the
damaged disk is in place, press <R> (for
RESUME). The WC+ now returns control to the
Apple, the recovery utility loads up your
characters, and they can be dumped to a good
disk.
Another use for the card turned up when I
was sent a copy of RAMDRIVE e/c by CCS & S,
for evaluation. This is the latest release
of the //e only disk emulation package (now
//c compatible) as reviewed in August's
Hardcore. This is a great package for anyone
unable to warrant the extra cost of a second
drive. It readily took all the little
utilities 1 seem to spend hours looking for,
because they are always on unlabelled disks. A
128K WC+ dump, and I was left with a quick
loading package of my most often used
software, without the bottom 64K being
touched, as it all lies in the //e 80 column
card's extra RAM.
At the other end of the disk storage
spectrum lies the hard disk. These show
particular problems in getting protected
software transferred onto them. Using a copy
card such as WC+, the program can be copied,
turned into a binary file if necessary
(using the WC utilities), and put onto a
free volume of the hard disk.
These are areas in which I have found the
card useful. There are bound to be others
not covered here, and any suggestions would
be appreciated.
WILDCARD PLUS
COPIES 64K PROGRAMS IN 12 SECONDS
The new WILDCARD PLUS is the card that thinks for itself. One push of the
button, one simple menu - with its own 6502 processor WILDCARD PLUS
makes a perfect copy on any Apple, from a 48K J[ to an extended 128K //e.
Automatically. Does for copy protection what Atilla the Hun did for social
FEATURES
CHardware copying
device push button
operation.
OCopies 48K programs
in 8 seconds, 128K
programs in less than
25.
O Creates autobooting,
unprotected disks.
OSoftware in ROM,
always there...no
need to preboot
CNo language card
required, works
equally well with or
without.
OUtilities include:
‘compression software-
several backups may
be stored on a single
disk, recover BASIC
programs, disassemble
machine code soft-
ware, screen dumps,
etc.
WILDCARD PLUS
£119
From your local dealer,
or direct from:
Elite Software Company
93 Eastworth Road
Chertsey, Surrey
KT16 80x
Tel: 09328 67839
Add 15% VAT for
delivery in UK P & P
included.
Dealer enquiries
welcome
Apple is a registered trademark of Apple Computers Inc.
Page 20
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
Beginners’ Page
by John Sharp
When I'm CALLing you.
When we dealt with PEEKs and POKEs, we also
mentioned that sometimes you might POKE in a
machine language program and then CALL it.
The word CALL suggests that you can call on
something that is already there. There are
some routines in the Apple that are waiting
to be used which are not commands in BASIC.
In fact in Integer Basic there is a need to
carry out certain operations for which there
is no command, even though it might be there
in Applesoft. One such case is the HOME
command in Applesoft, which clears the
screen and sets the cursor to the top left
of the screen. If you are in Integer Basic
you have no alternative but to use CALL
~936. This will work in Applesoft as well
and you sometimes still see it in Applesoft
listings where an Integer programmer has not
lost the habit when moving over to
Applesoft. There are two other CALLs which
are very useful for which there are no
commands in either Integer or Applesoft. One
clears to the end of a line (the equivalent
of ESC E if you are in the editing mode),
and the other clears to the end of the page
(the equivalent of ESC F in editing mode). But
first let's look at an example of why you
may need to use them.
Suppose you have an INPUT statement which
you then check to see if a number or string
has been input correctly, and if not repeat
the input until it is cight. You might write
@ program thus:-
10 TEXT : HOME
20 PRINT "IF YOU HAVE TEN CATS AND
THREE DOGS"
30 INPUT "HOW MANY ANIMALS DO YOU
HAVE ALTOGETHER? ";A$
40 IF A$<>"13" THEN GOTO 30
If you run this program and the person
answering types in the wrong answer, another
input line will come up on the screen.
Eventually the PRINTed statement in line 20
will scroll off the top of the screen and
the condition will disappear. There will be
a list of wrong answers with the question
before them. We could rewrite the program,
so that by using VTAB we write the question
(ie, line 30) on the same line of the
screen each time, overwriting the last one. So
insert a line
25 VTAB 10
and alter line 40 to:-
40 IF A$<>"13" THEN GOTO 25
Now if you run the program there will not be
scrolling and lots of answers, if a wrong
result is typed in. However, if the first
answer was I111, when you come to type in
the second answer, the 1111 is still sitting
on the screen, although the cursor is
waiting on the first 1. In order to clear
the line first you could use a PRINT
statement, but this would _—_ produce
complications in VTABbing. However, if we
put a CALL -868 in line 30 before we carry
on the problem is solved. Line 30 would now
read:
30 CALL -868: INPUT “HOW MANY ANIMALS
DO YOU HAVE ALTOGETHER? ";A$
Try the program as outlined making the
changes and see the result. 1 much prefer
this sort of program instead of a screenful
of wrong answers.
CALL -958 is useful in the same way. You
might have a screen which is full of text
but which has some instructions at the top,
and you want to print only on the bottom
half of the screen. There are two ways to do
this. One is to alter the TEXT WINDOW. If
you POKE 34,T where T is the number of lines
down you do not want to print. You can only
write below this line. So the following
short program will print four lines then
only print below those lines. If it is
necessary to clear the screen below the
line, the HOME command will do this.
10 TEXT : HOME
20 FOR N= 1 TO’
30 PRINT "THIS IS LINE "5N
60 NEXT N
50 POKE 34,4
60 FOR M = | TO 50; PRINT "A LOAD OF
RUBBISH AND YET MORE RUBBISH" :NEXT
70 HOME
Note that line 10 has a TEXT : HOME to clear
the screen, whereas line 70 only has HOME, If
you put a TEXT command in a line it will
automatically remove any TEXT WINDOW
settings you may have. This is why it is
often a good idea to use it as the first
line of your program, so that anything left
over from another program does not cause
problems. To help others a TEXT:HOME in the
last line when you exit your program will
help when cunning another program where it
is not the first line.
But suppose you wanted to clear the screen
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 21
starting at the middle of a line. You now
need to use a CALL, CALL -958, This is a
less likely problem, but could occur if you
want to delete the text starting from the
beginning of a particular sentence. It is so
unusual that I cannot think of an example
program. It will allow you to clear the
screen and still keep the scrolling, whereas
the text window setting will keep above the
line you have designated until you alter it.
If you want to print on the left of the
screen or just in one corner, you can set
the sides and the bottom of the text window
with other POKEs. Look in the Applesoft
Reference Manual for more details.
DIFFERENT CATALOGS.
When I wrote last time about using the
cursor to run over the catalog title to run
it, I assumed many people were as lazy as
me. This doesn't appear to be so. So let me
extend it to let you put inverse or even
flashing catalog titles,
To recap first. Let me go over the method of
moving the cursor over a title to run a
program, Type CATALOG and get the catalog up
on the screen. If you have a very big
catalog, you will not be able to use the
method if the program has disappeared off
the top of the screen. Press the ESC key and
then the I key until you are on the line
where the program name sits. Now type R
(twice so that first you break the control
over the cursor, and then print an R) then U
and N. You will probably find that a number
still exists from the file length, so use
the space bar to type over with a blank. Now
using the right arrow, run over the rest of
the name of the file. Press return and you
should be away.
When you carry out the following sequence of
events, to give you flashing or inverse
titles, this is the only way (or the
modification [ shall describe) of cunning
the program. So if you are sitting
comfortably in front of your machine, I'll
begin.
Suppose we want to save a program under the
name "TESTING INVERSE". Type the following
in immediate mode:-
PRINT "SAVE : INVERSE : PRINT
"TESTING INVERSE": NORMAL
The words
SAVE TESTING INVERSE
will come up, but with the last two in
inverse of course. Now press the ESC key and
as with the method outlined for running the
CATALOG program, copy over this line with
the right arrow once you have positioned the
cursor on the S of SAVE. Now catalog the
disk and there will be a program called
TESTING INVERSE written up in inverse. To
run the program, use either the method of
writing a line (but with LOAD or RUN instead
of SAVE) or copy over the CATALOG heading as
described. If you just type RUN TESTING
INVERSE then FILE NOT FOUND will come up
because the comparison does not match. To
FLASH the name just write FLASH instead of
INVERSE when writing in immediate mode.
As a last note, you may like to try the
following CALL to see what it does:-
CALL -1184,
Correspondence
Gerry Corti has sent us the following:
I think members of BASUG might like to see
the following exchange of letters. Having
spotted some material in our competitor
‘Apple User', I thought it right to try and
send a letter to Mr. Steve Jobs. This is
quite normal practice in the oil industry
where clients - even retail clients - do not
hesitate to test out the attitude of a firm
by writing to its Chairman or Chief
Executive. I'm afraid the response conveys
an extremely poor impression. Neither Jobs
nor his office replied (nowadays this would
be almost unthinkable in the biggest oil
companies) and | finally got a telephone
call from Mr. Kissach in the U.K. a month
after I had written. He seemed surprised
that | should press for a written reply but
he eventually agreed to provide one. As you
will see it hardly addresses itself to my
letter, and I had to prompt him on the point
covered in the last paragraph.
I think this is where our hope lies, i.e. with
vigorous independent software companies who
will spot the hole in Apple's development. For
the present I do not think we can look for
much from Apple on this front. Incidentally
if any members know that the 80 column card
/Ie and c is in any way adaptable to the T+
then I think we should let Apple Computer
(UK) know.
sereeeneee
22nd August 1984
Dear Mr. Jobs,
Page 22
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
You gave an interview to the British
magazine ‘Apple User’ in June 1984. In it
you laid out how Apple Computers will fight
and survive IBM. You went on to say that it
is innovative software which will keep Apple
there. "Il would never start a hardware
company now - I would start a software
company", and then later “we think that the
Apple 2 operating system is standard ....... we
have shipped over 2 million Apple 2s in
several years".
All this is fine and after a deal of market
research I invested in an Apple 2 a couple
of years ago, to be specific an Apple I
Europlus. Now the very next month Apple User
had an article on AppleWorks, the software
program, It said "now the bad news. It will
only work on //e, //c and /// = not on the
Apple I or I+." I know you are not
responsible for Apple User or their
lighthearted dismissal of nearly 2 million
Apple users, but | got my dealer to approach
Apple Computer UK Limited and they tell me
they got a reply that there was no intent to
make AppleWorks available for the Apple I
and they frankly did not seem very
interested.
1 know that your company has developed some
excellent new hardware, having seen Mac and
the adapted Apple 2, named //c. Fine, but on
your own say-so it is the software that
counts and I cannot see IBM making a
marketing error of tl sort. Quite a few
Apple J owners in Britain are in a dilemma
at the moment and they will not thank Apple
for being forced into a re-investment in
their primary hardware as opposed to an
adaptation or upgrading of it.
Are we being correctly informed about
Apple's intention on AppleWorks and its
future availability in Britain? Are you
going to introduce a four way package
including graphics, which will be "multi
task retrievable"? If you are not going to
do either of these things in Apple, can you
recommend any software house which is likely
to do so or has done so?
1 would prefer to make the contents of your
reply known to fellow members of the British
Apple Systems User Group, but as this is a
personal letter should you prefer not I
would respect your request.
Yours sincerely,
G. Corti
25th September 1984
Dear Mr. Conti (sic)
Thanks for your letter of 22nd August
addressed to Mr. Jobs.
1 understand — your concern with the
availability of AppleWorks on the Apple I
Europlus. AppleWorks makes use of the
firmware on the 80 column card which is
available as an option on the Apple //e and
is built into the Apple //c.
There is vigorous software development
activity ongoing in the Apple // family and
should 1 hear of an integrated package which
functions on the Apple J Europlus, [ll
drop you a line,
Yours sincerely,
WR Kissach
UK Marketing Manager.
SoGOOO UG
Ed. - We know there are a number of
allegedly integrated packages on the market.
Has anybody used one?
APPLE STOCK
CLEARANCE
HARDWARE
FAULTY APPLE II,ITT 2020,
APPLE DISK
+PAL CARDS,
DIGITEK 80 COL CARD,
DIPLOMAT COMMS CARD, DOS 3.2 I/F
CARD, LANGUAGE CARD, PARALLEL
PRINTER CARD. APPLE II EUROPLUS 48K
SATURN 32k CARD, SERIAL CARDS, SNAP-
SHOT 2, LOWER CASE CHIP, MODULATORS.
SOME PRINTERS AND MONITORS LEFT.
DRIVES,MITAC DISK DRIV:
6MB HARD DISK,
SOFTWARE
ADVANCED VISICALC,
APPLEWRITER 1.1,
MAIL,
EASYBANKER,
WORDHANDLER II,
APPLEPLOT,
CA DATABASE, CHAIN
DESK TOP PLANNER, DOS TOOLKIT.
MAGIC WINDOW,
SOME GAMES LEFT.
SLITS AND
APPLE CARRY BAGS, APPLE DUST
COVERS. APPLE II PADDLES. APPLE IIe
PADDLES, WORDSTAR AUDIO TUTOR.
THERE ARE NO PRICES QUOTED BECAUSE
WE WANT YOU TO MAKE US AN OFFER ON
THE ABOVE ARTICLES.
PHONE BRACKNELL (034) 480023
ACCESS BARCLAYCARD
PRINTERS
OUR
PRICE
BROTHER
P22 £129
ep aa £219
HRS . ceorieeease EID
HR 1B cesses -. £399
Keyboard for HR 15... £149
HR 25 ... £695
HR 35, £895
—M 101 £849
CANON
PW 1080A NLQ 80 Col... £299
PW 1156ANLO 156 Col £399
EPSON
RX 80T . wo» £189
RX 8OFT ... . £239
RX 100FT .- £399
MX 100111 £379
FX BOFT £359
FX 100FT .. £479
0X 100 ve £419
TOA BOD escrtencerees . £999
JUKE
6100 £359
MONITORS
KAGA
12” hi-res (green) £109
12” hi-res (amber) £109
12” norm-res (PAL/RGB) £199
12" med-res (RGB) £259
12" hi-res (RGB) ... £359
SANYO
12" norm-res (gr
12" hi-ros (green!
14" norm-res (RGB)
14" med-res (RGB)
14” hi-res (RGB)
NORMENDE
14" TV/RGB monitor ..
. £219
P & P: Computer,
add £3 + VAT,
289 Birchfi
EN
\
printer,
{
DISC DRIVES
Apple Compatible (full height) ...
Apple Compatible
(half height, direct drive)
a
ai
Se ee
£149
. £159
PERIPHERAL CARDS
NB: Rosco printer cards are CP/M,
Pascal & Applesott compatible + full
graphic dump.
Printer Contronic
Printer + 16k buffer
Printer + 64k butter
Printer Cable ..
80 column (Not tle) £48
80 column Inc inverse video
chip. (Now version. Not ile) ..... £54
Expandable 80 column Ile) ........ £49
Extended 80 column (+64k) ....... £89
64k upgrade kit «0.
Disc controller ..
PAL (+ modulator) £49
16k RAM £aa
Eprom writer (upto 2764) ...... £54
over £100 add £5 + VAT.
All prices subject to 15% VAT.
I —- Rosco Ltd
Road, Birmingham B20 3DD. Tel: (021) 356 7402.
Telex: 334303 TKAGWMG
‘Anple'is the Trace Mark of Apple Computer inc.
Fre
id we “
re
ig sorta
30
n
Baty
Eprom wHter (upto 27256 }..
S232 (serial card)
ParalleV/serial interface
280 CP/M ... o
AtoD (16 channels)
Real time clock (battery backup)
VO intertace (4 ports) ‘
ACCESSORIES
52 key Ascii
(upper and lower case)
Power supply
AC cooling fan «.....
40/80 column switch .
Inverse video chip (not rea.
for new 80 color lie 80 col)
SOFTWARE
Format 80
MagiCale.,
Multiplan ..
Sage Accounts + Payroll
Merlin ..
Routine Machine
Microsoft Compilers .
Copy Il Plus
monitor, sheet feeder £8 + VAT. Other under £100
a» OAK
90 col eenare
unt)
er
=
.. £99
£42
. £59
£44
£69
£59
£49
encoded keyboard
£59
.. £59
£29
£9
£6
Page 24
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
~ AW Il & Graphics
APPLEWRITER II WITH GRAPHICS
by Dr. M. G. Johnston
On countless occasions in the past (so many
that it would be pointless to cite any
particular references) the problems
associated with producing graphics together
with text from within a word-processor has
been highlighted and, as yet, no overall
solutions to these problems has been put
forward. Sure, we could all go out and buy a
Lisa tomorrow, probably much to the bank
manager's annoyance, but I think that
constant updating of one's system is
expensive and, in general, unnecessary -
let's make the most of what we've got. There's
no great mystery as to why these problems
occur - quite simply, word-processors deal
with text files and not binary graphics
files - but they are not insurmountable
problems given the graphics _ facilities
offered by certain printers which have the
ability to convert text characters (or more
accurately ASCII codes) into graphics
patterns to produce pictures, logos, graphs
etc. whilst printing text files. So what's
the problem?..... Well, there are several
which | shall outline with — particular
reference to the EPSON FX-80 dot-matrix
printer and Applewriter II, although much of
the article is of a very general nature
applicable to all other EPSON dot-matrix
printers and in all probability to all other
printers with graphics _—capabilities
(although I am unsure of the exact details
involved with these).
The most simple way to produce graphics
within text, no doubt used by many, is to
print a text file, leaving gaps for the
graphics, and then to insert these later
using HIRES screen dumping methods, or,
indeed, to insert them by hand. This is a
tedious business if more than a few diagrams
are involved,
A neater solution is to create a text fil
from one or both of the HIRES screens, which
is compatible with the Epson bit-image print
mode, and to save this to disk for
subsequent use with Applewriter Il. I shall
not enter into a description of bit-image
printing here as it has already been
adequately covered in previous articles by
Mike Glover in Windfall and by Norah Arnold
in Hardcore. See refs. 1) 2) 3). These
articles outlined — several ~—_problems
encountered with 8-pin bit-image printing
with the Epson printers, not least being the
inability of the interface cards to pass all
of the codes they receive onto the printer. It
is not possible to use a by-pass routine
from within Applewriter so these limitations
must be accepted. Including the codes which
Applewriter cannot generate itself there are
20 codes which fall into this category and
any bit image column requiring any of these
cannot be printed in 8-pin bit image mode. This
makes for very scrappy pictures.
However, there is one very important point
about the Epson 8132 interface which is not
mentioned in the interface manual even
though it is VITAL to the operation. This is
the ‘Transparency’ character (CTRL-T). 1
call it this because the normal mode of
operation of the interface is to mask off
the high bit of all characters it receives
before sending them onto the printer but
issuing a CTRL-T unsets this condition and
makes the interface transparent thus giving
it the ability to send characters with their
high bit set. A subsequent CTRL-T resets
this condition. So now, at least we can get
8-pin bit image printing from within
Applewriter (which sends all codes with
their high bit set) simply by enclosing some
characters between CTRL-Ts. e.g.
CTRL-@ sends 0 to the printer
CTRL-TCTRL-@CTRL-T sends 128 to the printer
But 8-pin bit-image printing is still
severely limited because of the characters
which cannot be sent from Applewriter Il. 4-pin
bit image printing, however, is not! (Don't
go rushing to your manuals for notes on this
because there aren't any!), Pseudo 4-pin
bit-image printing is actually 8-pin in
which four of the bits are not used,
specifically the low order bits, Line
spacing is normally set to 1/9-inch for
8-pin bit-image printing in order to connect
dots in the vertical direction, For 4-pin
bit-image printing the line spacing is set
to 1/18-inch using the command from
Applewriter Il:
fesc] 'A' [CTRL-D]
and subsequent bit-image codes are sent in
which all of the four low order bits are set
to zero (ie. $00, $10, $F0) and
all of these codes can be sent from within
Applewriter although, as outlined above, the
ones with their high bit set must be sent
after a CTRL-T has been issued to the
interface. So there we have it, an unbroken
series of sixteen vertical dot patterns
(including the null pattern) which can be
built into an image quite easily using
standard Epson bit-image —_ printing
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 25
techniques. This can be quite easily
implemented directly from Applewriter II
even though it is rather a large task to
type in a complete picture in this way.
Remember, of course, to reset page length
and interval to take account of the lines
being printed ‘on top of each other’.
Converting information from the HIRES
screens to this 4-pin bit-image from is not
an easy matter. However, much of the work
involved has already been done by Epson (and
others before them) since the Epson 8132
interface ROM contains a routine to convert
the HIRES screens to a series of 8-pin
bit-image columns (SCA00 to $CCFF) - How
else could it dump the HIRES screens? So,
the procedure is fairly straightforward -
simply copy this routine, together with the
character output routine ($C96F to $C9A5) to
a convenient area of memory ($6000 is best)
and then modify it to route its output to
another convenient area instead of to the
printer (this is rather more involved than
it sounds). After running the program the
8-bit codes necessary to generate the
graphics screen on the printer are stored in
memory and it is a simple matter to convert
these to two sets of pseudo 4-bit codes
ready to be sent to the text file together
with any necessary CTRL-T characters and
Escape code sequences necessary to set the
printer into bit image mode. The whole HIRES
screen cannot be sent in this way because
Applewriter has a maximum line length of 254
characters (compared to 284 needed for one
complete graphics line) but a substantial
part of it can. I find it easiest to keep
all ‘graphics files’ separately from the
text and to execute a WPL file to insert
them where necessary.
1 shall make the conversion programs
available to the BASUG library as soon as I
have made them user friendly. For further
information on the Epson 8132 interface and
Applewriter Il I refer readers to an article
by myself in a forthcoming issue of
‘Laboratory Microcomputer’ (vol.3 No.4) due
out in November or December of this year.
References:
1) N. Arnold, Epson Pages.
Hardcore (vol.3. No.4.) August 1983.
2) M. Glover, C. Roper. Epson pages.
Windfall May 1983.
3) M. Glover, C. Roper. Epson pages.
Windfall June 1983.
Courses
By Patrick Bermingham,
Thanks are due to Richard Beck, BASUG's
organiser of courses, for the excellent
one-day course on the Apple's Assembly
Language, held at the County Hall, London,
on Saturday October 20,
Lecturer Ken Kelso began by outlining the
main advantages of Machine Code over Basic:
its economic use of Ram space and very much
greater speed of program execution. After
explai the fundamental architecture of
the Apple's 6502 microprocessor, _ its
ae
registers and supporting elements, Ken
guided the group through Binary and
Hexadecimal arithmetic onto the use of
Assembly Language Instruction Codes. By the
time the morning session was over the group
had reached the stage where they could
understand a simple bubble sort program
written in Assembler Code.
The afternoon finished with each course
member keying-in on the available Apple
micros the sort program; and using a Prodos
Editor/Assembler disk, loaned by Ken to
everyone for the day, to create the Object
Code. It was a revelation of the power of
machine code programming to compare the
speed of execution of the bubble sort
program written in Applesoft basic with the
same sort program written in machine code. The
Basic program took 16 minutes to sort 200
random alphabet letters. The machine code
program took less than | second!
As with all BASUG meetings that | have
attended, new friendships were struck up,
and arrangements made to help each other in
various ways. There is nearly always someone
who has the solution to the problem that you
are currently despairing of ever solving. The
room at County Hall was an ideal place. It
was crammed with all kinds of microcomputing
equipment and had many visual aids to assist
a lecturer. I think all of us attending the
course agreed that it would be a fine thing
to have a follow-up course in the future. OK
Richard? Incidently, Ken Kelso will be
taking up a lecturing post at Watford
College after Xmas, specialising in aspects
of Computing.
pereerr er ee treet tee et tee t tree terri retires
From Phil King of March, Cambridgeshire.
1 would like to thank everyone concerned
with the Assembly Language Course which took
Page 26
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
place at London County Hall on the 20th
October.
Everything went extremely well. The only
problems were minor problems due to the
electricity supply and unfamiliarity with
the equipment which I suggest should be
rectified by having more courses.
As with all things it is easier to see
things after the event, and looking back on
the day I find that Ken Kelso (our tutor,
who coped admirably and in a highly
professional manner) may have been helped a
little if each "student" had previous to the
course answered a questionnaire on what they
did or did not know.
Questions such as
1. Are you familiar with
notation?
2. Can you do basic hexadecimal arithmetic?
3. Do you know how to enter the Monitor?
4. Are you familiar with the Monitor
commands?
hexadecimal
This 1 would imagine would apply to most of
the one day courses held by BASUG. That
having been said I am looking torward to the
next instalment.
Computer Music
by Roger Harris
Months ago - it was in June - I attended a
performance given by the Electro-Acoustic
Music Association (EMAS) in the Almeida
Theatre in Islington, North London.
EMAS “encourages membership from anyone with
an interest in electro-acoustic music: this
is electronic and tape music, live
electronics, computer music, indeed, any
interface of science, technology and music"
and its membership includes those "who have
a stake in the creation and performance of
music using electronics or computers".
They presented several works: all involved
some form of electronic equipment. Some even
had human accompaniment. Whatever the merits
of the music, the musical scores can often
be very beautiful for those of calligraphic
bent.
Membership costs £6.00, (students, £3.00),
Details from the Hon. Secretary,
EMAS,
72 Hillside Road,
London
N15 6NB.
Book Reviews
Title: Mind and Media - The Effects of
Television, Computers and Video Games
Author: Patricia Marks Greenfield
Publisher: Fontana
Price: £2.50
Paperback 1 193 pages
reviewed by Danielle R. Bernstein
This very readable book is part of a series
on the developing child, It compares the
"new" media of TV and computers with print
and radio. Why the feeling that you can only
learn by reading? Reading is a serial media
(one thing at a time) good for memorising
facts. With TV and computers, many things
happen at the same time (much like life).
But it is when Dr. Greentield (Professor of
Psychology at the University of California)
writes about the merits of video games that
she really started me thinking. This is the
first serious discussion of the benefits of
Pac-man and other such games that | had ever
seen. She observed her son playing Pac-man
and assumed that she would be able to play
it but she was in for a surprise. She
explains Pac-man and her attempts at it. For
one thing, no one tells you the detailed
rules of behaviour for each monster.
In Pac-man, you must deduce the rules from
observation (again like the real world). Is
that why there is no documentation? Video
games teach parallel processing and
interaction between things. In contrast, a
game like chess is one-dimensional with no
speed factor. Players cannot change the
characteristics of the pieces in chess. In
the fantasy (adventure) games, you add new
dimensions to the characters by using
parameters and levels of difficulty.
She thinks that the most harmful aspect of
violent games are that they are solitary in
nature and that two-person games are best.
Children teach other children when computers
are used. Computing is really a social
activity, especially when you need to share
computers in school.
How are girls to get interested in action
games? For it is action, not violence, that
both boys and girls of the TV generation
enjoy. Unfortunately she does not spend much
time ‘on any practical answers. Instead, she
goes on to discuss the educational values of
programming and Word Processing. She
finishes up by recommending a multi-media
approach to education. A recommended book.
Kx
THE WILDCARD
Now available for the Apple //e
Copies 48K core resident programs.
No parameter list needed.
Copies most programs requiring RAM
Card.
Wildcard copies may be copied with
standard copy programs.
Copies even the bit copiers.
Programs copied are saved as standard
binary files.
Works with any RAM card — plugs into
any slot.
Tel: 09328 67839
NEW FEATURES
Auto selects screens on //e.
Extracts foreign DOSes.
Patches to the Inspector.
Creates ‘BRUN ‘able files.
Recovers listable, runable Applesoft
programs.
KKK K
System requirements:
64K Apple + Disc Drive
Price: £80.00 + VAT
Available from your loca! dealer, or contact:
ELITE SOFTWARE COMPANY,
& 93 Eastworth Road, Chertsey, Surrey, kT16 8DXx.
Page 28
HARDCORE - The Journal of the British Apple Systems User Group
December 1984
Title: Kids 10 Kids on the Apple Computer
Authors: Billy Saunders and Sam Edge
Publisher: Prentice/Hall (Reston)
Price: £8.95
Paperback + 8.25" x 11" : 168 pp.
Reviewed by Patrick Bermingham, and son
Sean.
If you have an Apple I, I+ or //e and if
you are one of those kind (but foolhardy?)
parents who let your children use it
occasionally for games, then why not give
them the chance to broaden their interests
and skills by putting a copy of this
excellent "Kids to Kids..." in their
Christmas pillowcase. Well written and
cheerfully illustrated, its chapters progress
from using Print and Maths statements to
Loops, Low-Res Graphics, High-Res Graphics
and Sound, How to Make a Game to How to do
your Homework on an Apple. My 13-year-old
Son, Sean, rated the book very highly.
Title: Astounding Games for your Apple
‘Computer
Authorst Hal Renko and Sam Edwards
Publisher: Addison-Wesley
Price: £3.95
Paperback # 6" x 6" + 147 pp.
Reviewed by Patrick Bermingham
If you have decided to buy "Kids to Kids..."
reviewed above, then craftily slip into one
of the family's Christmas stocking a copy of
this feast of Games Programs, for yourself!
The 31 programs are well chosen and cover a
wide spectrum of challenge and excitement. As
the blurb on the back cover truthfully says
"Battle with GALACTIC MONSTERS and ZOMBIE
IN THE SWAMP, compete in a thrilling ROAD
RACE, defend yourself against a SHIP'S
ATTACK and set out on a nerve jangling SHARK
HUNT. Gamble at LAS VEGAS and KENTUCKY
DERBY, stretch your mind with board games
like ONE TO FIVE and SHAKESPEARIAN
SHUFFLE; and test your _ intellectual
capabilities with VOWELS AND CONSONANTS,
KEYBOARD-MEMORY and AT THE MARKET".
Apart from the fun of playing, a lot of
programming tricks can be learnt through
keying in the programs. Good value for
money.
Title: Applesoft BASIC Toolbox
Author: Larry G. Wintermeyer
Publisher: Addison-Wesley
Price: £10.95
Paperback + 23.5cm x 18,5cm (9.25" x 7.25")
2514 pp.
ISBN: 0-201-14775-0
Reviewed by Dave Miller
"Stymied by the complexity of more advanced
programming? Unsure what you can do with a
beginner's knowledge of BASIC? Looking for a
thorough and practical guide to using
Applesoft BASIC? This book is just what you
need." So "Applesoft. BASIC — Toolbox"
proclaims on its back cover, If goes on to
say that this book is ideal for the advanced
programmer or the rank beginner and that
this book will téach the following:
to design more efficient BASIC programs
to organise, store and retrieve data
to use serial, sequential and random access
disk files
to create and use a complete data-file
system.
The book is split into two main parts: the
first section deals with Applesoft while the
second deals with disk files. The part on
Applesoft is split into 33 sections which
cover either a single command or a group of
similar commands. Commands are explained by
using the following format:
instruction name & format
examples of instruction usage
purpose of instruction
rules for use
illustrations of these rules.
Section one titled "Getting started" is an
introduction to the Applesoft part of the
book. The author advises the beginner to
study not only the text but the program code
as well while the advanced programmer, who
is not familiar with Applesoft, should look
at the coding rules. The following sections
introduce each BASIC (and DOS) instruction.
There seems to be no specific order in
introducing the instructions except that the
easier instructions tend to be at the
beginning. There are, though, one or two
anomalies such as dealing with DOS commands
before even starting with BASIC and
introducing ON...GOTO and ON...GOSUB before
IF...THEN. It would serve no useful purpose
to list the contents of each section,
suffice it to say that most of the Applesoft
instructions are dealt with in some detail.
The second part of the book covers using
disk files. It is split into six sections. Section
one, called "Information Storage on Disks",
introduces the basic structure of the Apple
disk and such concepts as a ‘track’ and
‘sector’. A diagram of a disk neatly shows
the main parts of the disk including the
position of the catalog and VTOC track.
Although there is no mention in the text,
December 1984
HARDCORE - The Journal of the British Apple Systems User Group
Page 29
DOS 3.3 is assumed and those readers with
DOS 3.2 will find that some of the
information given will be incorrect although
it will not affect the example programs
given. A small program which creates a text
file is fully explained.
Section two is called “Introduction to DOS
disk instructions" and, not surprisingly,
covers the commands available from DOS 3.3.
All the commands except INIT are covered in
quite some detail, including the use of
ONERR GOTO to trap DOS errors. This is
unfortunate since on the first page the
author says that a disk is available with
all the example programs used in the book
(good idea, especially as many of the later
Programs are quite long) but, since the disk
is full, it has to be copied to another disk
which should be initialised before running
FID. INIT is covered in the first part of
the book but it would have been nice if the
author at least referenced the user to this
section without just saying "make sure to
initialise your disk before running FID".
Section three is called "The GET
Subroutine"; most of this section deals in
great detail with a useful BASIC and machine
Code subroutine which allows the programmer
to circumvent some of the disadvantages and
problems of using the INPUT statement. This
is not only a useful utility but also very
educational, The author advises the user to
use this very comprehensive routine although
it is compact and not very readable. The
rest of section three goes into some length
addressing topics such as string storage and
others related to the function of the GET
routine.
Section four is called "Serial and
Sequential Disk Files". The author lists the
programs from the optional program disk
accompanying this book which will be used in
this section. He also gives details on how
to make the disk operate as a turnkey system
although there is no explanation of what a
turnkey system is and it seems out of place
here. He makes a good job of distinguishing
between serial and sequential files: most
people use sequential when they mean serial.
The section continues with a detailed look
at the use of serial/sequential files by
producing, stage by stage, a directory
program storing names, addresses and
telephone numbers The program allows data to
be inserted, modified and listed and is
quite sophisticated. Provided that the
reader understands the text, he/she will be
brought up to a high level of competence.
Section five is called "Random Disk Files"
‘and is of a very similar format to section
four. Section six, called "Index Disk
Files", uses the same methods but this topic
is quite tricky and I feel that the author
has handled it well.
Appendix A follows section six. It consists
of an ASCII list giving the binary and
decimal codes for the restricted ASCII set
used on Apple Is. I would have liked to
have seen a full set because many old Apples
can use it all. I have doubts on the
usefulness of the binary codes given.
The book is well presented but slightly hard
to read. Program listings appear to have
been produced on a daisy wheel printer and |
could find no mistakes, The only fault was
that GQTOs referenced REMs. The book is very
large which enables the author to indulge in
detailed descriptions of many facets of
computing which smaller books could not hope
to achieve. I found that this produced a
feeling of being swamped with information. 1
think the book succeeds in three out of four
of its main objectives but that not enough
is said about producing well structured and
efficient programs. 1 would have liked to
have seen @ Glossary even though most of the
terms introduced are well explained in the
text.
This book is a serious educational text book
and I think that it is ideal for schools and
colleges where the students are led through
the book by their teacher. Outside guidance
is necessary since there is little logical
order in the first part of the book. | feel
that the rank beginner would prefer a more
easy going book but the experienced computer
programmer not used to Applesoft BASIC will
find this book very useful,
Title: Art and Graphics on the Apple II/Ile
Author: William H. Dewitt
Publisher: Wiley Press
Price: £12.25
Paperback : 10" x 6.8" : 128pp.
Reviewed by lan Sidwell
This book is intended tor the non-programmer
who is interested in the graphics capabilities
of the Apple. It starts from simple BASIC
commands such as FOR-NEXT loops and thence
onto LORES commands and use and then HIRES
commands, including the use of shape-tables.
It also has chapters on how to photograph
your monitor/TV as well as the use of
video-recorders.
The book deals solely with creating graphics
Apple Compatible Peripherals
£50 OFF
‘MICROLEDGER’ BUSINESS SOFTWARE! Peanut
Return a copy of this advertisement with any order over
£50 and we will arrange to offer you this new business
software system for £145 — a discount of £50 off list price.
Spend £50 — get back £50!
HARD DRIVE HD1.
10Mbyte mi
PC2000 BUSINESS cepacity unit =
_ running all
COMPUTER : fanning —
CP/M, Pascal programs. Supplied
complete with Keele Codes’ CLIP
software for CP/M file back-up. Full
gervice contract available ...........
£1,095.00
PLUG-IN CARDS
80 COLUMN High resolution, 9 x 7
dot matrix fully CP/M DOS, Pascal
DISK DRIVES compatible, Il+ version ......... £52.50
terface ouput drvers RGB, PAL ADT Pasnie 80 COLUMN lle version ........ £49.50
chroma reonivocs: parsiiel printer full height f A J
RS232: all b Languages: Basic, Pascal, drive. Shugart (Ile version with 64K ....... £89.50)
GPa, orth Logo cic, varabe. mechanism INVERSE CHIP for 80 column card,
complete ready. Lebar ayy i+ version, suitable for use with, for
com .. £145.00
systems with various options of PDO2 Peanut half height, direct drive example, Magicale, Formet-80,
Beers ene OO Gouble sided, 280K capacity ...... £149.00 Multiplan, etc . £9.50
STOP PRESS —~ See °C2000 in London at PDD3 NEW Peanut helf height. direct I fi
Textstore Ltd. Twickenham, phone 01-888 drive, double density, single 40/80 column switch ... £12.50
280 runs all CP/M .. £44.50
9911 capacity .......
(ITT version, 280 ... . £49.50
nd learning to use this mechine partic bale idOK-cepectty en overt
price anywhere = £99.00 16K RAM adds 16K to memory so,
for example, a 64K machine has
easy
MONITORS 34K for Visicale ......... sesenseee £44,50
PEANUT GOES SOFT!
—— Top name software at PEANUT prices PARALLEL PRINTER standard
Peanut high resolution monitors 20
MHz bandwidth, on tilt/swivel
mount — green or amber
screen . £89.00
PRINTERS
NEW Shinwa CPA8O,
100 cps .. £199.00
Daisystep 2000, daisywheel, 20
characters/second ............. £239.00
Peanut KGP40, 40 column, two
colour, complete, with interface
card. ssssccscdeasise £49.95
NEW 2 speed, near letter quality
85cps fast 165 cps
PEANUT NLO
£295.00
MICROLEDGER the pertect integrated
accounts package for the sma
business, special offer with
voucher .... £145.00
FORMAT-80 ENHANCED the ultimate
word processor — prints what you
see! £99.00
HILDERBAY Modules: Invoicer, Payroll
Book-keeper. SSP allat ..... - £69.00
HILDERBAY ACCESS catabase, power
speed, versa’
value... £69.00
MAGICALC the faster-than-Visicalc
spreadsheet with many pluses — no
compatible commands
HARDWARE
KEYBOARDS: two types aveilabie: V3 Apple
style unit giving lower case as an extra with
80 column card or special character ROM in
40 columns £59.50
V5 NEW detached unit. 24 function keys.
separate numeric and operator section,
independent four way cursor control ~ 96
keys in all, IBM style. fully Apple Il
compatible . £99.00
JOYSTICK £11.95
£27.00
FAN, UK manufacture
POWER SUPPLIES: two types: 5A heavy
duty £56.50
7A extra HD, with fan £86.50
NEW PEANUT DISKETTES, own-brand.
SSOD top quality 5 year guarantee. Packs of
| 10 (Acd £1.00 carriage £14.95
Centronics interlace, FeECOgnISes all
control codes, including cable ......
£38.50
PRINTER/BUFFER CARDS free
computer of time-consuming delays
— dump text straight into buffer
printer takes it out at its own rate.
Three capaci es available
16K «£79.50
32K £89.50
64K ., £119.50
DISK DRIVE CONTROLLER 13 or
16 sector disks auto-run ....... £38.50
SERIAL RS232 adjustable baud
tate, half duplex, includes 25 way
standard connector . £42.50
VO four port, 6522 chips, versatile
card .. .. £39.50
EPROM WRITER programs popular
eprom chips with compare, verify,
copy,
Showing the first 100000 of 186855 characters.