Text content (OCR)
hard core
THE JOURNAL
OF THE
BRITIGH APPLE
ora Teila
USER GROUP
APRIL 1°32 #1 VOLUME 2 Noe 2
Perce So] E 1
sa is A ad THU 25 MAR 1982 26:21
ENTERPRISE COMPUTER
NEW MESSAGES FOR YOU.KEY *936%
Welcome to Prestel
o-<
pe
on
=
Soe
MH
_
=n
om
zo
=
‘ox
oom
ipa es
ee
=>
bo. | SS
Om
hor
KEY # TO CONTINUE
Page 2
* Business Software *
Recreational Software *
* Level 1 Service Centre
Supplies * Accessories *
BOOK Sboks BOOKS
BOOLEAN ALGEBRA
FOR COMPUTER LOGIC
by HAROLD ENNES £6.65
Not a book specifically for programmers, but also
for digital circuit design. Deals with BOOLEAN
ALGEBRA in a lucid way} since Boolean Algebra
is only an extension of conventional algbebra,
you need only start with such a general
understanding and go on through this self
instructional book through symbolic logic,
algebra and Venn diagrams, There are many
examples and excercises with answers,
ASSEMBLY LANGUAGE
PROGRAMMING
by Inman and Inman £10,50
A beginners route from BASIC- not the final
word but a gentle introduction,
ASSEMBLY LANGUAGE
by Randy Hyde £11.95
At the next level (not a beginners book) a book
that helps you program and gives you some useful
routines, as well as being one of the few places
you can learn to use the SWEET 16 routines,
e MICRO OURCE
HARDCORE - The Journal of the British Apple Systems User Group
Professional
Intertacing
S Utilities ©
Enthusiasm *
April 1982
— ——
LJ
For everything appic = ring
Lud Computer Services Lid.
108 THE PARADE HIGH STREET WATFORD WD1 2AW
Telephone: Watford (0923) 29513
Courses ©* “Pascal ©
* Cromemco Systems *
Colour Monitors *
Open Tues - Sat °*
BUSINESS
PROGRAMMING
BASIC BUSINESS
SOFTWARE
by
E,G,BROONER £8.70
A general introduction to all aspects of computer
software for business, with programs analysed,
chapters on information storage, word
Processing, and simulation as well as inventory
control payroll etc,
APPLE BASIC FOR
BUSINESS
by Parker and Stewart £12.50
This is a practical guide to writing business
software on the APPLE, The step by step
Problem approach leads you through all types of
file access in a logical manner using problems
you are likely to find useful in the programs you
need. It is also useful for those needing to
handle files in other contexts,
APPLE BASIC DATA
FILE PROGRAMMING
by
Finkel and Brown £10
This is a self teaching book, even more modular
and program based. It is one of the Wiley Self
Teaching Guide series.
1, BRANCH ROAD, PARK STREET, ST, ALBANS, HERTS, AL1 47R,
et
——
April 1982 HARDCORE - The Journal of the British Apple Systems User Group Page 3
Hardcore coun
THE JOURNAL OF SEaitoria
THE BRITISH APPLE SYSTEMS USER GROUP 5 hairman’s Corner
P.O. BOX 174 WATFORD WD2 6NF Working with the Apple /// Suibteeeraiee
11 Mnemomic Puzzler D.R.Daniells
EDITED BY DAVID BOLTON
BRITISH APPLE SYSTEMS USER GROUP
COMMITTEE
FRANK KAY Chairman
JOHN SHARP Secretary
DAVID BOLTON ‘Treasurer
JOHN RODGER Librarian/
Information Officer
JOHN ROGERS Software Librarian
TONY WILLIAMS Membership Secretary
BANKERS
National Westminster Bank Ltd.,
Brompton Square, London SW? 1HH,
MEMBER OF THE
INTERNATIONAL APPLE CORE
oe
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 groups
affiliated to the International Apple Core,
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.
12 Education Column Norah Arnold
13 Another First for the Apple
Dr.B.E.Weller
14 More on Apple-Writer & Go-Between
Ian Trackman
21 Two Programs Co-Resident in Memory
Les Budgen
22 Pippin’s Page Vernon Quaintance
23 Local Groups
24 Repeat,..Until Bob Raikes
24 Basug Toolkit No.1 - Machine Code Print
Routine
Cliff Wootton
26 The Nicelister T.Tse
31 Compu-Read
Reviewed by Norah Arnold
32 CS Textmaster Word-Processor
Reviewed by G-P,Ognibeni
34 Type-Right Lower Case Modification
Reviewed by Fran Teo
35 Apple Pilot
Reviewed by Leo Crossfield
38 Jailbreak (ITT Graphics Modification)
Reviewed by Chris Chapman
41 Using 6502 Assembly Language
Book Review by Ian Trackman
42 Structured Basic and Beyond
Book Review by Michael Tickle
42 Astro-Apple
Reviewed by Chester Kemp
43 Reader’s Letters
Page 4 HARDCORE - The Journal of the British Apple Systems User Group April 1982
eae A em i eet a SLE RE st ESS RR A
EDITORIAL
Once again I write these notes in haste, with the
magazine at last ready for the printers, and the
deadline, as usual, missed. From out there, it
may be only once every two months that you
receive the magazine, but from in here it seems
as if we put one together every couple of weeks!
Hopefully things will improve from next month,
with some daytime effort available ( see the
Chairman’s Report herein), One certain change is
that we will be able to more positively ‘market’
Hardcore, so the advertising revenue should
increase, This will enable us both to increase the
size and quality of the magazine still further,
and to start paying a (modest) page rate to
contributors.
April will see BASUG at two shows - the 3rd
London Computer Fair at the North London
Polytechnic on 15 - 17th April, and the Computer
Fair ( a bit naughty of Practical Computing to use
that name!) at Earls Court on 23 - 25th April. We
also expect to be at Windfall’s "Apple’82"
exhibition in Slough on 4-é6th June, although this
has yet to be confirmed. Finally, on Saturday &
Sunday 1ith & 12th June, we shall be holding our
A:G.M. and Convention at Wallingford. We
propose that the weekend be made up of a large
number of events, each catering for a small group
of people, In this way people can better get to
know each other, which is the main purpose of the
weekend,
At the first of the above exhibitions ( 15-17th
April) PRESTEL will be launching their
TELESOFTWARE project, featuring software for
the Apple, which has been supplied mainly by
BASUG, Which leads me into the main news of the
month,
One of PRESTEL’s main ‘pushes’ of 1982
(Information Technology Year) is to deyelop
Telesoftware, and as part of this they have
approached the various national user groups for
assistance, BASUG has reached what we think
will be mutually very attractive arrangements
whereby we can make available to our members a
comprehensive range of PRESTEL services, as
followsi-
a)Telesoftware- As much as possible of
BASUG’s software library will be put onto
PRESTEL, to ease the cost and effort of
distribution by more conventional ( and
old-fashioned!) methods, Although some
Programs will be available to all PRESTEL
users free, to act as a ‘shop window’ for
BASUG, in general there will be a-small charge
to cover the group’s costs, as there is for
disks. This charge will usually be higher for
non-members, Although we can (and indeed in
some cases will) restrict access to programs
to BASUG members only, the committee feels
that in general, provided our costs are
covered, it is in our best interest, as well as
in the spirit in which the programs are made
available to us in the first place, to distribute
programs as widely as possible, No doubt this
issue will lead to some lively discussion,
b)Closed User Group- BASUG members will
belong to a PRESTEL ‘closed user group’
giving access to various information,
programs, ordering facilities, etc, to which
access is barred for non-members,
c)Order Facility- Members will be able to
order BASUG products, book places on courses,
etc, via PRESTEL
d)Database- Details of forthcoming events, an
index to the software and book/magazine
libraries, an Apple bibliography (this latter
provided some of you out there help to compile
it!), etc, will be available on PRESTEL,
e)An_ electronic version of Hardcore
(Softcore’,; perhaps?) will be developed, both
by providing information pages specially for
BASUG members, and by cross-referencing to
existing pages of interest,
f) We hope to be able to provide a ‘BULLETIN
BOARD’ facility, whereby members can
interactively use PRESTEL to communicate
with each other.
g) We expect that PRESTEL will make available
on loan to the group for a limited period a
small number of PRESTEL ADAPTORS, The
first priority for these will be that local
groups have them available at meetings for
demonstration and for downloading software.
Within this constraint we intend to lend them
out to individual members for short periods,
subject of course to suitable undertakings
concerning responsibilty for the safety and
return in due course of the adaptor, and for
the payment of the Prestel Access Charges
incurred,
We should stae here that there will be no net
cost to the group in respect of these facilities,
The already established principle whereby any
minority activity (Prestel, Equipment Sales,
Courses, etc) is self-funding will apply.
If you’re interested in these developments,
either write in for a PRESTEL ‘Information Pack’
which will give you all the information you could
want, or come along to one of the exhibitions. If
you already have access to PRESTEL, then we
need to know your user number, and which
PRESTEL computers you are registered with, so
that you can be included in our Closed User
Group,
April 1982
These developments are on the ‘leading edge’ of
(to coin a phrase) information technology and all
the people who’ve been involved so far are very
excited at the implications of what’s happening,
PRESTEL has been rather slow to take off so far
but this time, by tapping the "innovative,
technologically-aware" population of
microcomputer users (and there are some 400,000
of us in the U.K, compared with 15,000 PRESTEL
users) it looks set to go somewhere,
Your editor, incidentally, has two vested
interests in these developments, Firstly, the
software to upload and download Apple
Telesoftware has been written by myself and
John Sharp, Secondly, I see this as a way to
spread the load and widen the involvement (and if
we are to be truly a national group this is
essential!) in the production of ‘Hardcore’, We
can already transmit BASIC programs via
PRESTEL, and it’s just a matter of sorting out a
protocol to do the same with Applewriter files,
The next issue of Hardcore will contain articles
that have been transmitted in this way! The much
vaunted, futuristic concept of sitting at home,
typing an article and editing it, and then
‘sqirting’ it down the ‘phone to a central location
for printing is no longer in the future. For us, its
here, now!
BASUG’s first course took place in March - a
Beginner’s Machine Language two-day course
attended by ten people, and presented by Ian
Trackman, First reports suggest that the
participants got a lot out of the course, and we
hope to repeat it from time to time, If you would
like to attend, let us know and we’ll keep you
informed about dates, The PASCAL course that
didn’t take place last year will take place this
year, in July. Members should all have received
details already - if you haven’t then write in,
Finally, an apology. ‘The Last 0,8’, an article in
the last issue of Hardcore, was wrongly credited
to Cliff Wootton who rang me up to say that he
had no recollection of writing it, but it was good,
wasn’t it, It was in fact written by Ted Lepley.
Sorry, Ted!
David Bolton
B VG?
For those readers who aren’t members, it stands
for British Apple Systems User Group.
Membership is £10 per annum, and there is a
one-time joining fee of £2.50. Just send a cheque
to our PO Box address — we’ll do the rest,
HARDCORE - The Journal of the British Apple Systems User Group
SS Ss et hhc nena es ne hn A
Page 5
CHATRMAN’S CORNER
This is the first chance I have had to write in
Hardcore this year, which is evidence, I hope, of.
the busy life that faces anyone who decides to
enter the microcomputer world to make a living -
and I am pleased to be able to report that even
with the turmoil in the market place at present,
with each manufacturer bringing out their latest
offerings, our favourite machine is still offering
a versatility which is among the best in the
business, If you really must have the
third-degree burns that can result from dabbling
in the white heat of technology, you can plug the
latest 16-bit microprocessor into your Apple
anyway, and enjoy the best of all worlds!
I have been told by the Editor that space is
limited this time, so straight to the main points
- firstly, renewals of memberships have been
coming in thick and fast, although despite our
best efforts to inform everyone of the need to
renew, there are still some latecomers! As you
know, this will eventually cost you money, and I
am sure that no BASUG member will want to miss
out on the goodies that the Group provides,
Secondly, as has been evident over the past few
months, BASUG has been so successful that the
Purely voluntary efforts of your Committee
simply cannot cope with the flood of
correspondence, and it must be said, the odd
complaint about something or the other. Steps
have been taken to do something about this!
John Sharp, who since BASUG started has been
putting in more than a full week’s work in his
Spare time each week on the Group’s behalf, has
recently ceased gainful employment to
concentrate upon developing his own business,
The committee, keen to protect members’
interests, have seized upon this. chance, and have
decided to pay John to work one day each week on
behalf of the Group. He is not going to get rich
this way, but it seems to the committee that this
is a good way of ensuring that the management of
the Group is put on a more businesslike footing,
without the problems that ensue when one tries
to do things during the day while actually holding
down a job as well, I hope.that you will all join
us in wishing John success in his own enterprise,
and in thanking him for the unselfish way he has
helped to create BASUG. As a further step in
the direction of efficiency, we have converted the
BASUG membership records to a “more
sophisticated Database, and we hope that from
here on in our publications and correspondence
with you will be tidier!
Frank Kay
Page 4
WORKING WITH THE
APPLE 7/77
by Roger Swaine
Having had the opportunity
to work with the Apple /// for some
weeks now, I am beginning to get
the hang of it, and this article 15
for these who are interested in
this intriguing new machine
BE must be pointed eut
right at the outset that this
machine is not aimed at the
hobbyist Liss, very much a small
business computer, and in this
article Wet try to look at it
from this point of view
Well, how does the machine
compare with the Apple Ii? Lets
look at the hardware first. -
(id The Aople /// has an
upper and lower case keyboard, with
the ease eohange being through the
shift key $. @:.. a standard typists
keyboard (advantageous if the
machine is going to be used by
typists as a word processor),
There's also a numeric pad (with
its own ‘Enter’ key) for fast data
entry All keys tTepeat, while the
cursor movement keys, if pressed
hard, repeat at treble speed
(iid The standard monitor
is styled to sit on, and blend with
the rest of the computer Tt has
80 columns with genuine descenders
on the lower case letters The 80
columns makes the machine easier to
use for word processing, and also
makes for easier link-up to
(where BO columns is
mainframes
standard)
Ciiid The machine can
generate, and receive, the whole
128 ASCII character set (for easy
compatability with other machines)
still
(iv) The processor is
6502 - based but runs effectively
about 40% faster, and can address
more memory (128 kbytes at present,
though a 128K add-on card is in the
offing giving a total of 256K)
However, about 64K of memory is
HARDCORE - The Journal of the British Apple Systems User Group
ee lS SE en mit
April 1982
occupied by the operating system
and interpreter so that you have
60-70K available to the programmer
cw?
There is a built-in
disco drive, and a socket at the
back to plug in the first external
drive The second external drive
plugs into the back of the first
and so on, up to a@ maximum of 4
drives in all There is no
Provision for tape
Now, you could probably get
most of the above on an Apple II by
hooking up various pieces of
hardware, but by the time you had
done so you would have paid almost
as much as the Apple ///, and you
would also have the tisk of
incompatability when using packaged
sottware In addition you
not have got the benefit of
really big change, which is in
software
would
the
the
This
hotted-up Apple
different animal
totally “soft”.
when you switch
operating system nor language in
rt In fact, the only thing in ROM
on the machine is, I believe, about
4K of diagnostics This has the
disadvantage that your boot
diskettes must contain not only
your Program but your operating
system and your interpreter Since
the last two can take up about half
the space on a diskette, your
Programs and data files are
correspondingly restricted in size
if you want to keep everything on
the one diskette. Set
this, however, the
advantages: -
machine is in no way a
Il; it is a very
since it is almost
The is to say,
it on there is no
against
are following
(id
configures
Since what you load in
the machine, you can
write your programs in any language
you like, provided you load in the
corresponding interpreter. Thus,
for example, the standard utilities
diskette supplied with the machine
is in Pascal code.
citd As
upgrades to the
April 1982 HARDCORE - The Journal of the British Apple Systems User Group Page 7
SS At RE IE SNE AEE AR Nie A na SS UE ARIMA
operating system and/or languages machine which drive a particular
become available, they can be file is in - as long as it is in
incorporated by copying them into one of the drives the machine will
your boot diskette you do not find it!
have to change the hardware.
Finally in this section,
This “sott machine" for those who have software written
approach means that the Apple /// for the Apple If it should be
is more like a mini/maintrame pointed out that, by the use of a
computer than the conventional special program supplied with the
micro, and this is carried through machine, it's possible to turn the
into the control of the hardware /// into a 48k Apple II & cun your
(i.e the console, the printer, existing programmes The only
the disk drives, and any other limitation is that you cannot use
peripherals), all of which is slots 1 to 4 in your fictitious
controlled through the use of Apple II, and you may have problems
software drivers. it your program uses the games
paddles.
Supplied with the computer
is a diskette with a variety of BUSINESS BASIC
drivers: you copy onto your hoot
diskettes the drivers that you The standard language
need, reconfigure them as necessary Supplied with the machine is
Cand there is a variety of options) Business Basic, which is
and from then on you don't have to differently orientated from
worry about then You can send Applesott in that it reflects the
data to the screen, to the printer, requirements of the business user
or to a disk file - it is all. the Who requires that his programs
same command, just a different Should be easy to write, easy to
destination. This use of software read and easy to maintain To this
drivers also means that you do not end, variables can now have names
necessarily have to put cards into up to 64 characters iong. so that
the machine to attach you can have variables with
peripherals(which is probably -why meaningful names e.g “Ttemcode”,
the machine only has four slots). “Price”, “Packsize”" In addition
In this way the software looks to the usually string, integer, and
after the hardware, and the real variable types there is also a
programmer does not have to worry new "long integer", that enables
about Ce Farewell to the Control very large numbers Cup to 19
“D's! digits) to be handled accurately
Conspicuous by their absence are
Launched at the same time PEEKs and POKEs. machine code
as the Apple /// is the "Profile" programming is rather more complex
hard disk, and the Apple di? oon the Apple III with its enhanced
operating system has obviously been addressing, and not advised, and
designed with this in mind, as it (for the reasons given above) their
is possible to group files into use is not normally cost~justified
directories, and instead of for the business user
specifying a file just by its name File 1/0 is improved, you
you specify its "pathway", which can have random access to binary
defines the directory, data files to speed up file access
sub-directory (if required), and (Incidentally, there seems to be an
then the actual file Since a hard error in the manual here; it
disk oould contain a iarge number appears to say that each successive
of files, this facility for "Read" statement reads from
grouping related files together is successive records, but in my
obviously sensible. A nice point experience with fixed record -
is that you do not have to tell the length data files I have always had
Page 8 HARDCORE - The Journal of the British Apple Systems User Group April 1982
pp es
to specify the record number to get embedding formatting commands in
it to read properly.) the text, they complicate the input
Formatting commands have of the text to the point where it
been much improved by the would be quicker to do it on an
introduction of the "Print using “ordinary typewriter where you can
and "Image" statements see what you are doing You really
One particular bugbear of oyght to be able to see the result
mine about the Apple It however of any commands immediately
still remains in the Apple V113) petlected in the text on the
this is that there is no screen There is no horizontal
distinotion between “saving” and gerolling, while vertical sorolling
“replacing” a file, so that if you js jerky and unpredictable. The
accidentally save a file under a cursor displaces the line that it
name that already exists, it will is on so that all text to the right
wipe out the old version without of tt is moved over one place, and
warning you (Incidentally, the new when you try to move the cursor
Visicalo that runs on the Apple /// vertically up or down it jumps
does warn you, se it must be around like a demented flea. All
possible !) in all, and bearing in mind the
flexibility of the machine, it
looks to me like a bit of a rush
VISICALC /// job it must be possible to
produce 2 much better w.p. package
This is pretty much the than this
same as the DOS 3.3 Visicalo except
that you can see 80 columns across Now, if the above seems
¥ou also have 66K of available pnarsh, I should point out that I am
space, though the maximum number of comparing with a purpose-designed
rows and columns is no larger In word-processor If you have bought
order to fit in with the new the Apple /// already howevever,
operating system, you have to read and are Iooking at the cost of just
the drivers file and configure it the Applewriter software then it
to suit your hardware and then probably is worth having, though
write the new file back onto the not necessarily for use a oS
disk. Therefore the disk is not word-processor. This is because
write-protected However, you are on the Apple ///, the Applewriter
provided with a back-up diskette reads and creates straight forward
text files, and therefore can be
APPLEWRITER /// used to create and edit Basic EXEC
files, Visicale /SS files and (I am
This is being sold as 4 pretty sure, though I have not
word processing package with the tried it) DIF files, as well as
implication that the Apple /// plus peing used as a fairly rudimentary
Applewriter le At might be a better word-processor.
buy than a purpose designed
word-processor. Quite frankly,
viewed in that light it is a bit of
a disappointment
As with Applewriter I the tinal
formatting of the document is
carried out at the printing stage
and although this is adequate for
text that is blocked up against the
margin, it is not adequate for most
business typing, where more complex
formatting is required, and
although you can get this by
April 1982 HARDCORE - The Journal of the British Apple Systems User Group Page 9
introductory offer:
‘og Wida Software
BUSINESSMAN'S Specialists in Educational Software for Schools
SPECIAL APFELDEUTSCH.......... 120.00
° Apple Il plus 48K TAL course in German; Beginners to O'Level and
* Apple Disc Drive II and beyond. Textbook: Workbook: 6 Language Lab
interface DOS 3.3 cassettes: 9 Apple disk of teaching and testing
, ial routines.
* 12” Green High Apple only. (20% discount for schools)
Resolution Monitor
* Visicalc 3.3 Software
TEACHER'S TOOLKIT......... (Apple disk) £ 20.00
(Pet cassette) £ 15.00
Starter pack for building up library of tests.
No knowledge of computing needed. Suite of five
programmes; Tester, Testmaker, Editor, Multiple
ee GRAPHICS TBLT 375 Choice specimen, Directory of tests
2 £
LERARENPAKKET... -(Apple disk) £ 25.00
Evrococoun caro £ EF Teacher's Tool 3 above’ but: with ‘on-sereen
instructions in Dutch
Nv SILENTYPE 189 GERMAN ROUTINE, (Apple disk) £ 15.00
PRINTER (Pet cassette) £ 10.00
ACCUTAAC /WAGALH/ memtoneX ch
Stand alone teaching and testing routines -
article and adjective endings, word order, pro-
35} nouns, etc. Send s.a.e for details
Ame PASCAL LANGUAGE System £
1 a SVECIAL DELIVERY SOFTWARE AT SPECIAL PRICES 5
SHAPE MANAGER - (Apple kit) £59.65
“ The easy way to build up shapes and use them in
BMC 12 GREen 19 your program. Does for shapes what a word pro=
cessor does for words. From Sinta Software
MONITOR,
TYPE-RIGHT (Apple kit) £ 46.50
= SAVER. $0 C8 CARP VEL gO, Lower case word processing with Apple Writer
c ord processin rh Apple Writer.
~. DISCOUNT PRICES- NoT SERVICE} |} Full snirt key operation. Plug-in fitting with
ROMWAITER, ROPIPLUS, Clock CARD, SPEECHUNE AVAILARLE disable switch. Manual, fitting instructions,
software on disk.
BPP ON BIS £285 APPLE PILOT..........-.00- (2 disks) £76.00
YSPISK DRIVE WITH conrTrote f
omer E325 rie CR The ultimate language for teachers; mix sound,
MANY OTHER’ BARGAINS, CAU For DETAILS Hef BTaPHics and text on-screen in your teaching
programmes. And much el Disks and manuals
‘computer _ 618 ARISTOTLE'S APPL (Apple disk)& 20.00
‘Authorized Dealer 48K Rathoring system; easy to use multiple choice
Accept No Less matching tests. Includes alternative answers.
LUDINSKI'S LOGS..........-. (Apple disk)£ 20.00
evel revision of logs problems. Teaching,
testing and scoring. Correct solution rewarded
by 25 seconds of arcade game.
COMPUTERS FOR KIDS........ (book) & 4,00
jasic programming manual written just for
kids. Special section for teachers and parents.
WARRANTY | by Sally Greenwood Larsen Apple II plus edition
ALL PRODUCTS
TIMETABLING] Let Keith Johnson - England's
TIMETABLING| foremost authority on time-
TIMETABLING | tabling guide you through
mxserlr £330, Tee 2e%. ¢325 TIMETABLING | next August's trauma!
TIMETABLING | Book with CBM listings £8.95
TIMETABLING | Apple software on disk £30.00
TIMETABLING | Software on cassette for
ALL PRICES EX-VAT2 DELIVERY
TIMETABLING | 380Z, TRS80, CBM £30.00
MASS All prices inclusive of VAT postage & packing
free
Contact Wida Software
The Red House
2 Nicholas Gardens
London W5 SHY EN
EPSON MXg2
TEL WELWYN GARDEN (07072) 31436/ Us Tel (01) 567 6941
882) 5206
WELLSON HOUSE, BROWNFIELDS or (062 5
WELWYN GARDEN CITY AL7 TAR
Page 10 HARDCORE - The Journal of the British Apple Systems User Group
April 1982
kay-jay studios OWN
1% COLES Nex Foe NW2 7HN Now i
Finally you can realize the
FULL graphic capabilities
® Any area of the Hi-Res screen can be printed as of your printer.
large or small as you like.
© Zoom “Window” feature allows you to frame and
see the specific area of the Hi-Res screen to be
printed
© Picture can be printed horizontally or vertically. 3 ~ m1 -
o Men ee be completely adjusted for custom paces SE Hee ee Ug eens
placement of picture. 4 5 : .
© Form (eed and line feed can be controlled from the Apple Silentype, Epson, IDS, Nec and Pro-Writer
keyboard -
® Prints either Hi-Res screen 1 or 2 Only £29.95 inclusive of V.A,T., postage and
© Prints charts, graphs or pictures. packing
* Menu driven . . . extremely easy to use
Pr emer
me APPLE
@
mw £
che ) Cy (o-w
An "intelligent" sound effects/music board. ce } — uv
The latest mind-blowing (well, eardran-blowing
actually) board - the ZAPPLE for your Apple.
On board Eprom means easy to use from Basic
On board amplirier for volume control (also control of Bleep: )
Uses simple "sound tables" (Compiler software supplied FREE)
Once sound is set up no processor time to maintain - Doesn't slow down graphics
Sockets for 3 AY-3-8910s (1 supplied, extra at £5 each)
Send cheque for £49.50 (including post etc.) or £44.50 to first 20 BASUG members
(quote membership No.) or send. S.A.E. for furtner details. State disk or cassette,
Meekrose Ltd
85 Waterdell
Leighton Buzzard
MY EEKROSE _A . ‘ee
Telephone: Leighton Buzzard
(0525) 370621
April 1982
MNEMEROIC PUZZLER
by D.R, Daniells
Currently I am trying to write a machine code
Editor/Assembler for the Apple, and in the
process I came across an intriguing problem...
In order to save space in the source file the
editor ‘crunches’ each input line by removing
unnecessary spaces and replacing the three
character mnemonic by a token, in much the same
way as each line of BASIC is compressed before
being stored in memory.
Now in order to tokemise the mnemonics, it is
convenient to treat them as reserved words
which must be stored in memory for comparison
purposes, As standard there are 56 such
mnemonics (listed in the Apple Reference
Manual), to which I have added four
"pseudo-ops"i- ORG, EQU, BYT, and ASC, making
a total of 40, 3-letter reserved words.
I have chosen to store this information as three
tables, each having 60 entries, where the tables
consist of a list of all the first letters of each
mnemonic, all the second letters, and all the
third respectively, j
Now we get to the puzzle, Although each table is
60 characters long, the combination of three such
tables can be made to fit into less than 180 bytes
of memory.
Consider the following list:-
0 STA 15 CLI 30 DEX 45 LOA
1 SX 16 ADC 31 INX 46 SEC
2 CLD 17 CPY 32 INY 47 ORG
3 BNE 18 RTS 3 OP 48 INC
4 BPL 19 ROR 34 PHP A9 TAX
5 TSX 20 DEY 35 CH 50 TxS
6 USR 21 SBC 36 TYA Si LOX
7 BEQ 22 BES 37 TAY 52 DEC
8 CLV 23 BCC 38 LOR 53 PLA
9 PLP 24 BRK 39 NOP 54 TXA
10 ASL 25 BYT 40 PHA 5S ORA
11 ROL 26 ASC 41 SEI 56 EQU
12 BIT 27 AND 42 SED 57 BVC
13 RII 28 BAI 43 EOR 58 CPx
14 STY 29 BVS 44 LOY 5? CLC
The numbers to the left indicate the order in
which the words are stored, The three tables
then look as follows}
Table 1 - SSCsssererBCC
Table 2 — TTlessvevVPL
Table 3 - AXDesssneCXC
HARDCORE - The Journal of the British Apple Systems User Group
ESET TEES eh En NR na ee a RN ET cae Pe ne ee emer ta
Page 11
Although the order in which the mnemonics have
been written may seem strange, it enables the
180 characters to be stored in 145 bytes of
memory,
Inspection will reveal that the last 24 characters
of Table 1 (36-59) and the first 24 characters of
Table 2 (0 to 23) are identical. At the same time,
the last 11 characters of Table 2 (49-59) and the
first 11 characters of Table 3 (0 to 10) are
identical. Consequently the three tables can he
overlapped in memory, saving 35 bytes, but
without losing any information,
TABLE 1 TABLE 3
nee peer
$5 oe sCTT +46 oCERs ++ NAXs os PLLe oe XC
tee =
60 CHARS
TOTAL LENGTH = 145 CHARS
This is the way in which I have stored my data at
Present, but it is inevitable that a better
solution exists - the question is then "Who can
re-order the mnemonic list to make the greatest
saving on overall length?"
I hope you find this entertaining, It certainly
kept me engrossed for a few days.
Won'T BELEV
TRATS NoT WHAT
Boor Your sysTEM
Page 12
EDUCATION COLUMN
Edited by Norah Arnold
TERRAPIN LOGO FOR THE APPLE II
During the last few weeks I have had the
great pleasure of introducing some intelligent
eight to nine year olds to the Terrapin Logo
language. I have been inundated with turtle
graphics programs, worked out in spare moments
by little groups of children and neatly written
out with accompanying diagrams showing the
intended result, all the angles having been
marked carefully with the number of degrees.
Logo was the first language ever to use
turtle graphics and has undergone continual
development since its creation in 1768, In 1979
the Logo Group at the Massachusetts Institute
of Technology began work on adapting Logo for
two micros, the TI99/4 and the Apple II. Using
Logo even young children can write programs to
draw complex figures on the screen in black and
white or hi-res colour graphics.
The Terrapin Logo language is a procedure
orientated language. Each procedure can take any
number of arguments of any typer and can output
a result, Procedures may be recursive and use
local, global and free variables. There is a fully
integrated screen editor and more than one
hundred and twenty primitives including thirty
graphics commands. Floating point arithmetic may
be used and an assembly language interface
includes an assembler written in Logo,
The documentation of Logo for the Apple IT is
still not finalised, but we were sent
prepublication copies of the Terrapin Logo
Technical Manual developed at M.I.T., and of
Professor Harold Abelson’s book ‘Apple Logo’, to
be published by Byte books,
Since the language is interpretive, response
is immediate, and it is this fact combined with
the ease of control over turtle graphics which
makes Logo an excellent way to introduce
children to computers, The only cloud to darken
the horizon has been the insistence of the G.P.0.
that our parcel containing Logo straight from
Massachusetts would not be released from
Customs until we had paid over twelve pounds in
duty and V.A,T.
SOFTWARE FOR SCHOOLS
On a recent trip to York I paid a visit to the
Resources Unit of Longman Group Ltd, at 33-35
Tanner Row. Under the name of Longman Micro
Software, they are marketing programs on
HARDCORE - The Journal of the British Apple Systems User Group
April 1982
SLRS
biology, chemistry, economics, geography:
mathematics and physics: Mr. Duncan Beal, the
manager of the unit stressed that anyone writing
educational software who would like their
programs to be marketed by an established
company, is welcome to submit a copy of their
product to him.
Longman have also taken over from Edward
Arnold the job of publishing the Schools Council
“Computers in the Curriculum’ software. The
Schools Council Economics package, which
includes programs on the elasticity of demand,
price fluctuations, price stabilisation, theory of
the firm, the multiplier, fiscal policy, creation of
credit, monetary policy and gains from trade,
seems very good value to me at approximately
twenty-two pounds, coming as it does with
extensive documentation for both pupils and
teachers.
This is in great contrast to some other
software which has attracted my attention
recently, Science Research Associates are
offering several packages of Apple II computer
software for primary schools, Traditional S.R.A.
material tends to be well thought-out and
produced but rather on the expensive side, and
their computer software appears to be similar, A
set of six S.R.A arithmetic games are priced at
approximately one hundred pounds, while a@
program called Fact Track which provides timed
practice in the four rules of number comes at
sixty-five pounds, Other programs giving
practice in arithmetic skills range from over one
hundred to just above three hundred pounds.
Having paid these amounts for the software, a
school finds that the material is available under
a licence agreement rather than through sale.
Customers obtain the right to possession and
use,
If any teachers have experience of using
these programs I would be most interested in
their comments, Most primary schools are short
of money at present and the thought of spending
over three hundred pounds for a maths tutor
program which can be used by only one child at a
time sounds like heresy to any headteacher,
S.R.A. are also offering Computer Discovery,
a complete course in computer literacy for the
secondary school and available on Apple II. This
aims to introduce pupils to programming concepts
and to the social issues related to computers,
Computer Discovery covers much the same
ground as the Pedagog Programs (Aids to O!
Level) from Pedagog Computer Services, but
there is one vital difference. The Pedagog ‘O’
Level Aids consist of screen after screen of text
which the pupils read, and hopefully, absorb. It
April 1982
is hard to see the point of putting this material
on the computer when it is not interactive and
consists almost wholly of reading from the text
screen. The Computer Discovery program from
S.R-Ay however, handles things in a far more
lively and interactive manner, For example, in
the section on analysis and programming pupils
use a ‘robot’ whose. movements they can
‘program’ themselves, They are also given an
opportunity to create simple algorithms and
flowcharts, and are able to practice using binary
numbers,
Computer Discovery from SRA. is
ninety-nine pounds and twenty = student
workbooks are included in the price, Although the
Pedagog ‘Aids’ are cheaper at sixty pounds, in my
opinion Computer Discovery is probably a far
better buy,
Computer
Games Review
COMPUTER GAMES REVIEW is a new bi-monthly
Magazine entirely devoted to evaluating,
rating and reviewing new and established
computer games software.
Most of us use our computers to play
games - at least some of the time.
the range of games on the market is
staggering; and as software isn't cheap
its important to have a reliable idea of
which games are good, which are merely
indifferent, and which shouldn't even
be on the market!
That's of course where COMPUTER GAMES
REVIEW comes in: with detailed and
informed analysis of games of all kinds.
Whether your interests include Adventure,
Arcade, Simulation or Educational games -
CGR is for you.
The first issue of COMPUTER GAMES REVIEW
is due out in June. CGR is available
only on subscription, price £10 per year
(6 issues) inc. p&p, from Computer
Publications Ltd., 10 Star Lane, St.Mary
Cray, Kent BRS 3LJ.
But
HARDCORE - The Journal of the British Apple Systems User Group
Page 13
ANOTHER FIRST FOR
THE APPLE
BASUG members, especially those concerned with
education will be interested to hear of a new
degree course in Microcomputing Applications,
The Department
of Physical Sciences and
Technology at the Polytechnic of the South Bank
is offering a BSc Honours degree in Physical
Sciences with Computing starting in September,
1982, Degree courses in Polytechnics must pass a
detailed scrutiny from a specialist panel of the
Council of National Academic Awards (CNAA) and
after an extensive period of development this
course was approved in December, 1781, Related
courses leading to, Higher Diploma and Higher
Certificate Awards of the Technician Education
Council (T.E.C) are in the process of validation.
The particular point of interest for BASUG
members is that the Apple II was selected as the
microcomputer on which the above courses would
be based. The choice was made partly on the
basis of the Apple’s graphics facility which is
essential to the instrumental work which is at
the heart of these courses.
The department now has a substantial number of
Apples and many members of staff are involved
in the hardware and software development
necessary for such courses. The material in Hard
Core has proved very useful in this connection
and we look forward to contributing some of our
own ideas which others may find helpful,
These courses are an exciting venture as they
are the first of their kind in Britain and
represent an important development in the field
of education for microcomputer applications in
industry. They are already attracting a a great
deal of interest and if any BASUG member would
like further information please contact the
undersigned. Further developments will include a
consultancy service for small firms and various
research projects in the field of microcomputer
applications to instrumentation and control.
Anyone interested should contacti-
Dr.B.E.Weller
Head of Department
Physical Sciences and Technology
Polytechnic of the South Bank
Borough Road
London SE1
Page 14
MORE ON APPLE WRITER and
GCO-BETWEEN
By Ian Trackman
I was very interested to read the articles in the
last edition of Hard Core (Vol. 2 No. 1) about
relocating Apple Writer after moving DOS onto
the language card. I would like to add some
further suggestions for the switching routines
and then explain how the same procedures might
be adapted for use with Go-Between,
Memory expansion
But to start with, there is alternative advantage
to relocating DOS, Instead of using the released
memory for copies of Teditor and Printer, it
could simply be made available as an extension to
the text-file processing area, At the cost of
having to Bload Teditor and Printer as before,
the free memory is increased by about 30%, It’s
simply a matter of re-setting Apple Writer’s
standard “end of memory" address.
In Teditor, change $95 to $BD at these addresses
$234, $23F, $848 and $11Bi.
In Printer, change $95 to $BD at $84D and $85E.
Change $9B to $BE. at these addresses ‘-
$F74, $FAD, $FC3, $117E, $1198, $119B, $11B0,
$11BE and $11C9,
No guarantees that I’m right - but it seemed to
work for me. Don’t forget to move DOS before
you try it!
Switch Routine
Rather than using Applesoft’s "STROUT" routine;
I prefer to keep Apple Writer completely
independent of any Language Rom and so I would
use COUT ($FDED) to send messages to DOS,
Other readers may also have their own ideas for
enhancing the switching routine. To avoid having
different Apple Writer patches for each
variation, it would be better to operate the
switch between the modules of Apple Writer by
way of an indirect jump. For that, we will need
two double-byte vectors, The ampersand hook at
$3F6/7 is available for one vector, There are two
free bytes in the DOS Page 3 area at $3ED and
$3EE (they are normally set to NOP NOP) which
we can use as the other vector. Having two
vectors does away with the need to test for
which module is active, since each module will
call its partner’s vector.
HARDCORE - The Journal of the British Apple Systems User Group
April 1982
SS
The switching code itself can be streamlined as
suggested in the listing below.
As to the actual patches, Teditor’s patch now
becomes an indirect jump command JMP ($3DE),
Ler t=
128C + 6C ED 03
I think that a better place to patch Printer is at
$ABO, where it first responds to the "R"
command, viz i~
ABO : 6C Fé 03
I would not patch out the Save Constants routine
at $B54, as I assume that it would be desirable
to save new constants. I think that the correct
place to patch out the “load constants" routine is
at $AFB with a simple RTS (60),
I also ‘suggest moving the maximum possible size
of each Apple Writer module, This should
therefore cover all other patches (e.g.
lower-case, Chain Mail) which are "tagged on"
after the end of the main code,
Go-Between
Patching Go-Between is slightly more
complicated because it contains internal routines
to enable the program disk and text-file disk to
operate automatically on different drives, I have
not done any programming using relocated DOS
and so I cannot guarantee that the patches which
follow will work infallibly. They are unofficial
and not fully tested ! Please let me know of any
problems or - better still - the solutions !
Since I wrote the original Centronics version of
Go-Between, I have made a few minor
adjustments to the code, which means that care
must be taken to patch the correct addresses,
One of the changes put right a wrong calculation
in the "continuous paper mode" routine, I have
also recently discovered that the firmware on the
Aristocard and Grappler interface cards does not
handle "Control I 255 N" properly for unlimited
line length Version 1.2 of Centronics
Go-Between deals with the first bug and Version
1,3 also covers the second problem, The version
number is shown in a REM statement in the
HELLO program. I would be happy to up-grade
any earlier versions on receipt of the original
disk and 50p to cover the return postage, There
is only one version of the Standard Go-Between.
The patching addresses that I will now give will
be for Centronics Version 1.3. The addresses for
the Standard Version are shown in brackets,
Because of the change mentioned above from
"255" to "0", the changes to Centronics Version
April 1982
1.2 will be offset by two bytes, Owners of
Version 1.2 should disassemble the code to
ensure that they are making the correct changes,
As an aside - I think that whenever a patch to
any program is suggested, the bytes in the
Original code should be indicated. This will help
to confirm that you are patching the bytes
intended by the author,
After initialisation, the program begins by
loading the constants and the correct character
set, This should now be done by the DOS Patcher
and is simply a matter of giving the correct
commands in the "Text" section. Note that
loading addresses are needed in the Standard
Version,
The loading code in Go-Between is at $816
($816), starting with a LDA, LDX, This can be
skipped over with a jump to the next routine at
$827 ($81D) (ive. enter 4C 27 (1D) 08 at $816),
Bear in mind the warning given in the original
article - the constants conflict with Basic’s use
of zero page. If you leave Apple Writer and then
return via the ampersand, you must reload the
Constants, In the Centronics Versions, you can
do this either with a Control D command from
Teditor or by entering the Change Constants
Program (you needn’t make any changes, of
course). In the Standard Version, you must
“BLOAD CONSTANTS, A$50" and "BLOAD USER
CONSTANTS, A$1780" (these are the commands to
put into the DOS Patcher program.
At $831 and $83A ($836 and $83F), I pick up the
current slot and drive from $B7E9 and B7EA.
These should now be taken from $BFE4 and
$BFE5,
SOURCE FILE: A-W RAMCARD PATCHER
HARDCORE - The Journal of the British Apple Systems User Group
A SS cS a ss eS hc
After ideas of Michael
John Rodger & John Sharp
Page 15
At $85F ($864), there is a JSR to $A85i to
re-hook DOS. This should now be vectored
through $3EA,
At $86B, $870, $916, $91B, $9FF and $A04 ($870,
$875, $91E, $923, n/a, n/a) I use $AA6A and
$AA68 to reinstate slot and drive references,
These should be changed to $EA4A and $EAé3,
To prevent DOS from intercepting any output, I
disabled it at $A46A ($A78) with a call to $9ED1,
Cornelius Bongers (the author of DOS MOVER)
does not appear to have provided us with a
simple call to do this and so I suggest that the
easiest method is to patch out my JSR $9ED1
with three NOPs (EA EA EA) and hope that there
are no Control Ds in your text-file !
The error trap vector is set at $E52 and $E55
($E3? and $E40) and, as with the original
PRINTER, should now refer to $DD5A and $DD5B
instead of $9D5A and $9D5B,
The routine to call Teditor starts at $900 ($908)
(with a LDA #0 STA $200) and that is the place
for JMP ($3F6) ive, 6C Fé 03.
In the Centronics Version, "Change Constants”
also has to be patched, At $813, remove JSR
$9ED1 with NOPs (as above), At $B84, re-hook
DOS with a JSR $3EA (which is strictly
unnecessary if you don’t unhook it), Return to
Go-Between at $BA2 with a JMP ($3F4) - 6C Fé
03,
Finally, if you want memory expansion (as
explained at the beginning of this article) with
Go-Between, you shouldn’t need to make any
changes to it,
FOO OOO OOO OI OIOK
APPLE WRITER SWITCHER
FOR LANGUAGE CARD DOS
Clark,
0000: x
0000: 2 *
0000: 3 *
0000: 4k
9000: Sx
0000: 6& k By Tan Trackman
7 *
8 x
9 *
0000: 10 *
9000: 11
12
13 FROMBGNL EGU
FROMBGNH EQU
FROMENDL EQU
FROMENDH EQU
DESTL Eou
DESTH EOU
UJMPVECTL EQU
JMPVECTH EQU
ANDVECTL EQU
ANDVECTH EQU
SOGOU OOO GCI IC
x
$3C
$3D
$3E
$3F
$42
$43
$3ED
$3EE
$
$SF7
SFS
Page 16 HARDCORE - The Journal of the British Apple Systems User Group April 1982
23 PROGRAM EQU $803
24 TEDSAVE EQU $9D035
ADFF: 25 TEDEND EQU %ADFF
AEOS: 26 PRNTSAVE EGU $AEOS
BEFF: 27 PRNTEND EQU $BEFF
FDED: 28 COUT EQU $FDED
FE2C: 29 MOVE EQU $FE2C
0000: BO 3
OBJECT FILE NAME IS A-W RAMCARD PATCHER,. OBJO
S31 ORG $9000
32 3
33 3; Bload all files
34 5
35 LDx £0
9C 36 GO.LOAD LDA TEXT,X
37 BE@ LOADDONE
FD 38 JSR COUT
39 INX
40 BNE GO.LOAD sAlways
413
42 LOADDONE LDA £<GET.TED ;Lo-byte
oS 43 STA ANDVECTL
a4 LDA £>GET.TED ;Hi-byte
9C14:8D F7 OS 45 STA ANDVECTH
9C172A9 9C 46 LDA £<GETPRNTR
9019:8D ED 03 47 STA JMPVECTL
9C1IC2AI 27 48 LDA £>GETPRNTR
9C1E:8D EE OS 49 STA JMPVECTH
9C21: SO 5
9C21: 51 ; Set up high bytes
9G21: 52 ;
9C21:AP9 OS 53 GET.TED LDA £>TEDSAVE
9C23:A2 FF 54 LDX £>TEDEND
9025:D0 04 SS BNE DO,.MOVE yAlways
9C27: S6 3
9C27:AF OS 57 GETPRNTR LDA £>PRNTSAVE
9029:A2Z FF 58 LDX £>PRNTEND
9C2B: S93
9C2B:85 3D 60 DO.MOVE STA FROMEGNH
9C2D:86 SF 61 STX FROMENDH
9C2F:A9 9D 62 LDA £<TEDSAVE ;Lo-byte is same for Printer
9C31:85 3C 63 STA FROMBGNL
9C3352A? AD 64 LDA £<TEDEND ;Lo-byte is same for Printer
9C35:85 SE 65 STA FROMENDL
9C37:A9 08 66 LDA £<PROGRAM
9C39:85 42 67 STA DESTL
9CSB2A9 OS 68 LDA #£>PROGRAM
9C3D:85 43 69 STA DESTH
9CSFIAQ 90 7o LDY £0 3As required by Move
9C041:20 2C FE 71 JSR MOVE
9044:4C 03 08 ehrA JUMP PROGRAM
9C47: 73.3
9C47:8D 84 74 TEXT DFB #$8D, #684
9049:C2 CC CF 75 Asc "BLOAD TEDITOR, AS7DO5"
9C4C:C1 C4 AQ
9C4F:D4 CS C4
9C052:C9 D4 CF
9C55:D2 Ac Ci
9C58:A4 B9 C4
9CSB:BO BS
9C5D:8D 84 76 DFR $8D, 494
9C5F:C2 CC CF 77 asc "BLOAD PRINTER, ASAEOS"
HARDCORE - The Journal of the British Apple Systems User Group Page 17
Sn meiimmemmmerimnmneieneenmimenar enter Eee
April 1982
9C62:C1 C4 AQ
9C65:DO0 D2 C9
9C68:CE D4 CS
9C6B:D2 AC C1
9C6E:A4 Ci CS
9C71:BO BS
9C73:8D 84 78
9C75:C2 CC CF 72
9078:C1 C4 AO
9C7B:DO0 D2 CZ
9C7E:CE D4 Ad
9C81:C3 CF CE
9C84:D3 D4 Cl
9C87:CE D4 DS
9C8A:8D OO 80
SOURCE FILE:
0000: 1
Oooo: 2
o000: 5
0000; 4
G000: Ss
Q0003 co
Q000;: PA
0000: 8
OO000: 5:
0000: 10
0000: 11
9000: 12
9000: 13
OO3C: 14
OO3D: 15
OOSE: 16
OOSF 17
0042: 18
OO43: 19
OSED: 20
OSEE: 21
OSFé: 22
OSF7: 23
OBO03: 24
9DOS: 25
ADFF: 26
AEOS: 27
BEFF: 28
FDED: 29
FE2C: 30
0000: Si
ee NEXT OBJECT F
9COO: 32
9COO: 33
9000: 34
9C00: 35
9C00:A2 00 36
9CO2:BD 47 9C 37
9COS:FO 06 38
9C07:20 ED FD 39
9COA:ES 40
9COB:DO FS 41
9COD: 42
9COD: AI 9C 43
9COF:8D Fé OS 44
9C12Z:A9 21 45
9C14:8D F7 03 46
DFB 8D, $84
ASC "BLOAD PRINT CONSTANTS"
DFB #8D,0
G-B RAMCARD PATCHER
FOO OOO IIDC IOI
APPLE WRITER SWITCHER
FOR LANGUAGE CARD DOS
GO-BETWEEN 737 VERSION
By Ian Trackman
After ideas of Michael Clark,
John Rodger & John Sharp
MMMM HR RHR
SOOO OO OGIO OIG OOK
x
FROMBGNL EGU $3C
FROMBGNH EQ@U $3D
FROMENDL EQU $3E
FROMENDH EQU, $3F
DESTL EQU $42
DESTH EQU $43
JMPVECTL EGU $3ED
JMPVECTH EQU $3EE
ANDVECTL EQU $3F4
ANDVECTH EGU $3F7
PROGRAM EGU #803
TEDSAVE EQU $9D05
TEDEND EQGQU ‘¢ADFF
PRNTSAVE EQU $AEOS
PRNTEND EQU %$BEFF
COUT EQU ¢FDED
MOVE E@QU $FE2C
3
ILE NAME IS G-B RAMCARD PATCHER. OBJO
ORG #9000
Bload all files
LDX £0
GO.LOAD LDA TEXT,X
BEQ LOADDONE
JSR COUT
INX
BNE GO.LOAD pAlways
:
LOADDONE LDA £<GET.TED ;Lo-byte
STA ANDVECTL
LDA £>GET.TED ;Hi-byte
STA ANDVECTH
Page 18 HARDCORE - The Journal of the British Apple Systems User Group April 1982
penne st mt tn A SAA A
47 LDA £<GETPRNTR
Ke 48 STA JMPVECTL
49 LDA £>GETPRNTR
9CiE:8D EE OS So STA JMPVECTH
C21: Si;
S2 ; Set up high bytes
SS 5
54 GET.TED LDA £>TEDSAVE
55 LDX £>TEDEND
S56 BNE DO.MOVE ;Always
bn? a
58 GETPRNTR LDA £>PRNTSAVE
59 LDX #£>PRNTEND
9C2B: 60 §
9C2R:85 3D 61 DO.MOVE STA FROMBGNH
9C2D:86 SF 62 STX FROMENDH
63 LDA £<TEDSAVE ;Lo-byte is same for Printer
64 STA FROMBGNL
65 LDA £<TEDEND ;Lo-byte is same for Printer
66 STA FROMENDL
67 LDA £<PROGRAM
68 STA DESTL
69 LDA £>FROGRAM
70 STA DESTH
71 LDY £0 3As required by Move
FE 72 JSR MOVE
9044:4C O3 08 K) JMP PROGRAM
GCA7: 74a 3:
9C47:8D 84 73 TEXT DFR 8D, $84
9049:C2 CC CF 76 ASC "BLOAD TEDITOR, AS9DOS"
9C4C:C1 C4 AQ
9C4F:D4 CS C4
9cs2:C9 D4 CF
9C55:bD2 AC Ci
9C58:A4 BI C4
9C5SB: BO BS
9C5D:8D 84 rae DFR $8D,%84
9C5F:C2 CC CF 78 asc "BLOAD PRINTER, ASAEOS"
9C6z:Ci C4 AO
9C65:D0 D2 CF
9C68:CE D4 CS
9C6B:DZ AC C1
9C4E:A4 C1 CS
9C71:BO BS
9C73:8D 84 tT? DFB $8D,%84
9C75:C2 CC CF B80 asc "BLOAD CHARACTERS — COUNTRY 2,A%BE80
9C078:C1 C4 AQ
9C7B:C3 C8 C1
9090:;B2 AC Cl
9093:A4 C2 CS
9C096:B8 BO
9098:8D 84 81 DFB 8D, %84
9C9A:C2 CC CF 82 asc "BLOAD CONSTANTS"
9C9D:C1 C4 AO
9cAO:CS CF CE
9CAS:DS D4 Cl
9CAG:CE D4 DS
9TA928D OO 83 DFB #8D,0
April 1982 HARDCORE - The Journal of the British A ople Systems User Group Page 19
sts het sessed
MICROSOuRcE ppd Lh gn t= Fae BLUE CHIP
appointment as
1 Branch Road, Park Street, St. Albans. < 7.
Tel: Park Street (0727) 72917 ie Ce RSE SLo SOFTWARE
SUPER EDTTOR £22,50
Super Editor is an essential tool for anyone writing programs in Applesoft or Palsoft. Using a simple
command format, this machine-code routine will speedily list out every program line which contains a
Basic command, function, variable or string designated by the user, highlighting it in inverse
characters, Super Editor also enables the user optionally to substitute any other command, function,
variable or string for the item found, whatever their respective sizes,
#* Remains in memory whilst programs are loaded and saved
* Reduce long descriptive variable names in final versions of programs
* List every occurence of a designated variable for debugging
* Check all GOTO, GOSUB and THEN references before deleting a line
* Change integer arrays to real arrays and vice versa
* Convert Integer programs to Applesoft and vice versa
SUPER TRACE £22.50
Super Trace is a high-speed 6502 machine-code utility routine for use in debugging Applesoft programs.
As each of your program statements is executed, it is displayed at the bottom of the screen, together
with the values of any variable types or functions that you may have pre-selected,
* Programs can be written, loaded and edited without affecting Super Trace
* Does not interfere with DOS
Can be invoked and disconnected as often as required during program run-time
Simple to use, Run-time control by single keystrokes
Optional display of all statements or only statements containing selected variable types or functions
Variables highlighted in inverse display and their values displayed
Normal screen display not affected
6 run-time speed settings plus instantaneous stop and single-step
Optional review of previous 10 program statements without destruction of screen display
THE PACKING SUITE £22.50
The Packing Suite is an essential series of high-speed machine-code utility programs for anyone
working with Applesoft / Palsoft programs.
UNPACKER separates lines consisting of multiple statements into new consecutive line consisting of
single statements, to assist with editing and debugging,
REM STRIPPER removes REM statements and, if required, lines consisting of a single colon (which
might be used for spacing),
PACKER puts statements together to form maximum-size multi-statement Program lines for faster
operation and memory saving,
All the routines observe Applesoft’s rules of syntax (e.g, multiple statements after an IF are
protected) and all line-number cross-references to deleted lines are Properly adjusted to a valid
line-number,
SYMDITS 2650
Symdis will take a block of machine code from anywhere in ROM or RAM (except zero-page) and produce
from it a disassembled source code with all relative branches and internal absolute address references
converted to alpha-numeric labels, Every affected operand will be replaced by an address-related
symbol and all target addresses will be labelled with their correct symbols, Optionally, the source file
can be produced with the hexadecimal or ASCII values of the object code displayed, The source file, in
standard ASCII format, is saved directly to disk so that the only additional memory area required is for
the operational symbol table, The source file can be reloaded into any Assembler/Text Editor which
handles standard ASCII format source-files, Alternatively, by using the conversion program provided,
the source file can be presented to the Assembler/Editor in the form of a binary-file block memory
dump,
All Blue Chip Software programs are supplied with comprehensive instructions and require 48K of
memory, one disk drive with DOS 3.3 and (except for Symdis) Applesoft / Palsoft in ROM,
SPECIAL OFFER TO BASUG MEMBERS — VALID TO 3ist MAY only!!!
Any two — £40 #HHeHHHH All Four — £75
Dealer enquiries welcome.
Page 20
HARDCORE - The Journal of the British Apple Systems User Group
Accutrack Disks...
2
Because data reliability Ds
is the important difference :
in disk construction.
Anatomy of a disk.
Flexible disks are simple information
storage devices consisting of 0
magnetic disk enclosed in a semi-stiff
protective jacket The disk rotates
within the jacket while magnetic
recording heads on your dota or
word processing systems “read” or
“write” information on the disk’s
magnetic surface Since disk
operation is simple, it’s relotively easy
to moke one thot works. But building
in reliability is something else again, It
tokes specialized technology to build
disks thot operate flawlessly over an
extended period of time.
What counts in
disk construction.
Key design objectives for o disk ore
listed below How well a disk
measures up to these objectives
relates directly to the throughput.
occuracy and overall costs for your
doto or word processing system No
disk measures up better than
Accutrock.
° The magnetic coating must be
precisely formulated and unifarmly
opplied Imperfections as small as five
millionths of an inch cause signal
dropouts, data checks and wasted
processing time as well as errors
* The disk surface must be
absolwWely clean. totally flat ond
permanently lubricated to prevent
excessive head wear with
subsequent signal degradation and
eventual loss of information (This is
the most critical objective and the
one thot’s most often compromised
since poor operating results foke o
while to show up. It’s also the area
thot most effects the long term
reliability of your data)
© The disk must be free to rotate
within its jacket without interno! drag
to avoid further doto checks.
excessive processing times ond
errors
© The jacket must protect the disk
from external contamination and
damage. It should also remove
microscopic particles of debris from
the disk surface before they can
domage the disk
Why you'll never find
the best disk bargain
in the bargain basement.
While there’s little apporent
difference between other disks and
Accutrak. the pertormance
differences can be substantial Simply
stated. an Accutrack disk is premium
priced But the protection it gives
your information the reliability it
provides fo your operations: and its
substantially longer life make it the
best disk buy After all. the real cost
of your operations is constructing
and processing the dato stored on
the disk - not the disk ifself If doesn't
make sense to trust that dato to
anything but the best disk
Accutrack
BASUG BULK BUYING -SOOofr PRICE FOR IOs
£17:50 inctFREE LIBRARY CASE !
(ADD 50p POSTAGE / PACKING)
BRITISH APPLE SYSTEMS USER GROUP
P.O. Box 174, Watford WD2 6NF.
April 1982
Program then the program will be loaded at a new
location-For example if they are set to $01 and
$60 the program will be loaded at $6001 ie,just
above hires graphics page 2,The next important
pointers point to the end of the FP program and
are located at $AF and £B0.These pointers tell
basic where the end of the program is for the
purpose of ww
1)Saving the program correctly,
2)Where to start if a new line is added to the
program.
If you look on pages 140 and 141 of the Applesoft
Manual and in Hardcore Volume 1 Number 1 you
will find a list of zero page usage,these pointers
are explained there,
O.K.- now for the two program bit...
Enter the following machine code program from
the monitor,
o300- A? 4G LDA «#4
o302- a2 18 LDX #818
0304- AO OF LDY #$035
0306- 8D F5 03 STA $03F5
0309- BE Fé 03 STX $03F6
o30C- 8C F7 OS STY $03F7
O30F- 60 RTS
9310- 01 60 ORA = ($60, x)
0312-01 60 ORA = ($60, X)
o314- 04 2???
0315-60 RTS
0316-04 222
0317-60 RTS
0318- Az 00 LDA #00
O31A- 8D 00 60 STA $6000
O31D- AS 67 LDA $67
OS1F- Ab 68 LDX $68
April 1982 HARDCORE - The Journal of the British Apple Systems User Group Page Z1
Se — ——
PROGRAMS 0321- 8D 10 03 STA
CO-RESTDENT IN 0324-— SE 11 03 STX
MEMORY. 0327- AD 12 03 LDA
O32A- AE 13 03 LDXx
By Les Budgen, o32D- 85 67 STA
O32F— B46 68 STXx
Have you ever wished that you could have two O331— AD 10 Of LDA
Applesoft or Palsoft (FP) programs in your micro 0334-— AE 11 O38 LDx
and be able to access either easily.IF you have O337- 8D 12 03 STA
your wish is granted.With the aid of a short OS3A- SE 13 03 STX
machine code program and the Apple ampersand O33D-— AS AF LDA
function you can have two readily accessible O3SF— AS BO LDX
programs. 0341- BD 14 03 STA
0344-— GE 15 03 STX
FP basic is loaded into memory begining at a 0347- AD 16 O03 LDA
location determined by the value of two zero page O34A- AE 17 03 LDX
memory locations (called pointers from the fact 0O34D-— 85 AF STA
that they direct basic to some other O34F-— 84 BO STx
location),These pointers are located at $47and o351- AD 14 03 LDA $0314
$68.FP basic normaly sets these to $01 and $08 0354- AE 15 03 LDX $0315
respectively.This sets the start of a program O357- 8D 16 O38 STA $OS16
loaded or entered from the keyboard at $801,If o35A- 8E 17 03 STX $0317
these pointers are altered before loading a O35D-— 60 RTS
Having entered the program check it against the
listing above, Then save the program-
BSAVE(name),A$300,L$5F
To use the program,
1,BRUN(name) before loading your programs
2.Load or enter your first program.
3.Press & and CRETURND,
4.Type NEW <RETURN>,
S,Load or enter your second program,
You may now switch from one to the other when
you wish just with &CRETURND,
Explanation.
0300 to 030F sets the & pointer to 0318, 0318 is
the begining of the change-over routine.
The numbers stored between 0310 and 0317 are
the new values for the pointers.These will be
exchanged with the actual pointers each time you
press & and RETURN,
If you wish to have your second program at
another location alter the value $40 at
0311,0313,0315,0317 and 031C to your own
value.E.G.if you alter them to $40 your second
program will be located at $4001,
It is possible for the two programs to share the
same variables, Having set them with one
program you can switch to the other one with &
RETURN.Do not run the second program as this
will set the variables to zero,instead you should
type GOTO (first line number).
If you are using hires graphics you may need to
set LOMEM to keep the variables out of the
graphics screen memory.If you do, remember to
set it above the second program. You may find the
end of a program with...
PRINT PEEK(175)}+256#PEEK(174)
Page 22
Pippin’s
HARDCORE - The Journal of the British Apple Systems User Group
April 1982
Page ~~~~
Edited for younger readers by Vernon Quaintance
Welcome to another Pippin’s Page, I would
welcome your letters saying how useful you find
this page, and what changes, if any, you would
like to see here, Your programs would also be
welcomed. You can write to Pippin’s Page c/o
P.O Box 174, Watford, WD2 6NF.
In the last Hardcore we saw how to use the
GOTO command to cause a program to run
indefinitely, At some time, however; we will
want to stop the program from running, One way
is to switch off - but this loses the program
Another would be to use the RESET key} this will
be OK if you have an Apple JE Plus, but not with
an Apple JL.
There is another way to stop a program
without risk of it being lost. Enter a program
with a GOTO placed at the end to cause it to
keep on running. Now RUN the program,
Next press the key marked CTRL and hold it
down whilst pressing the letter ‘c’, Has the
program stopped? Has the 1 symbol and the
flashing cursor appeared? If not, you may have
stopped at an INPUT statement. press the
RETURN key. The J and cursor should now be on
the screen.
Notice that the program will not stop on
CTRL-C alone if it is waiting for an INPUT it
will then also need a RETURN, at any other point
in the program a CTRL-C alone will stop it.
Supposing now that we wish to control the
number of times that a program repeats itself,
We will need some means of counting the number
of repeats and also of testing to see if this is
the required number.
Type in the following program! (Don’t forget
the NEW first)
10 REM LINES GENERATOR
20 TEXT | HOME
30 INPUT "HOW MANY LINES ARE TO BE
WRITTEN? "} N
40 HOME
50 PRINT "I MUST PAY ATTENTION IN CLASS"
60 LET COUNT = COUNT + 1
70 IF COUNT < N THEN GOTO 50
80 END
Now RUN it, choose a small number of lines to
start with (say 5) Your ‘lines’ should have been
printed on an otherwise blank screen, Did you
get the right number of them?
The two new ideas in this program occur in
lines 60 and 70, line 60 should be read as "let
count become count plus one", that is, take the
present value of the variable COUNT and add one
to it, then store this new value in the variable
COUNT.
Line 70 performs a test to find out if the
value of COUNT is less than the value of N, all
the time that COUNT is less than N, the program
loops back to line 50. Let us assume that you
asked for ten lines, therefore N = 10, As soon as
COUNT reaches 10 (which is after 10 lines have
been written) then the test is no longer true
(COUNT is not less than N) and the program does
not loop back but carries on to line 30 where it
ends,
You should note that when you RUN a
program, the value of all numeric variables is set
to 0. COUNT did not become 1 until after we had
written the first ‘line’.
Let us now change the program slightly,
Re-type lines 70 and 80 to readi-
70 IF COUNT = N THEN END
80 GOTO 50
Now RUN this program. It should do exactly
the same as the previous one, Depending upon
exactly what we want to do, we can test for
greater than (>), less than (<), equal to (=), less
than or equal to (<=), greater than or equal to
=), or not equal to (), Try writing some
simple programs of your own using each of these
comparisons, see how you can change the program
to do the same job with a different comparison.
I expect most of you have Applesoft or
Palsoft BASIC. In these articles I will use the
name Applesoft to mean both Applesoft itself
and also Palsoft. I will only mention Palsoft
specifically if I know it to be different,
If you have Applesoft then try this program:-
10 TEXT : HOME
20 PRINT N
30N=N+1
40 IF N © 11 THEN PRINT "," GOTO 20
50 END
April 1982
When you RUN this program you should find
that it prints the numbers from 0 to 10 in a line,
separated by a comma and a space, There will be
no comma after the 10 though. You will see that
the program tests to find out if N is not equal to
11, Whilst this is so it will do two things (a) it
will print a comma and a space, (b) it will loop
back to line 20, In fact, every command which
follows the THEN in line 40 will be obeyed if,
and only if, the test is true. As soon as the test
is not true then none of the remaining commands
in that line will be obeyed,
If you have Integer BASIC and try this
Program you will see a distinct difference. The
program will loop indeffinitely and continue
writing numbers to the screen until you stop it
with CTRL-C, There will be a comma and a space
after all the numbers except the 10 (which is
when N = 11) With Integer BASIC only the
command immediately following the THEN
depends on the test. All other commands in the
line will be obeyed anyway,
THE HERTS LOCAL
GROUP
Meetings of this group are held on the first
Tuesday of the month at The Old School, 1 Branch
Road, Park Street, St. Albans, Forthcoming
meetings have been planned as follows!-
Tuesday May 4th - VisiCalc
business applications, etc,
Tuesday June ist - Terrapin Logo
powerful turtle-graphics for the Apples
Provisional topics for Tuly/Octi-
Tues, July 6th - Amateur Radio
Tues, August 3rd - Games evening,
Tues. Sept. 7th - Music on the Apple
Tues, Oct. Sth - 280 Board/CPM
All members are welcome, whether beginners
searching for encouragement and help or those
with more experience. If you have any
suggestions regarding the topics you would like
to see covered in future meetings, contact Bob
Raikes (525 = SWS) or have a word with Bob
or myself when you come along to a meeting,
Norah Arnold,
HARDCORE - The Journal of the British Apple Systems User Group
ea CPA BTS NS OATS CAE te marae cunahedothian min
Page 23
In some versions of BASIC (as used on other
computers or with the Softcard) you can write a
line like?
90 IF N = 15 THEN PRINT :
FINISHED" ELSE GOTO 20
PRINT "RUN
Note the new command ELSE used here, If the
test is true then all that is between the THEN
and the ELSE will be obeyed. If the test is not
true then only what follows the ELSE will be
obeyed,
Next time we will learn how to control looping
in another way, which is the one we will then
normally want to use,
LEIC APPLE
USER GROUP FOR HELP
AND SUPPORT
(L.A+U+G.H.S.)
(AFFILIATED TO B,A.S,U,G,)
This is a thriving group of lively Apple users
which started nine months ago, With our
increasing membership we have now outgrown our
present premises at the "Leicester Computer
Centre", and from 7th April will be meeting at
The Winstanley Arms,
The Glade,
Narborough Road,
Leicester,
(Near M1 Junction 21)
Our meetings vary in content and include
interesting discussions and speakers,
demonstrations of software, and ‘Help Forums’,
Member facilities include embryo software and
text libraries, and discounts on Computer
Products,
If you are a BASUG member or an Apple user
living in the East Midlands area you would be
welcome at our meetings which start at 7,30 pm
on the first Wednesday of each month,
If you require further information this can be
obtained from the secretary
Hazel Bown,
7 Mums Divine,
Ted OID aT
or from the chairman
Mike Preston
Tiel 977 7
Hazel Bown
Page 24
HARDCORE - The Journal of the British Apple Systems User Group
April 1982
REPEAT..--UNT
By Bob Raikes
In Hardcore 3 there was an interesting article
by Ian Trackman about the uses of Apple’s
ability to return Boolean values for tests of
equality (Hard Core 3, p12, "The Disappearing ‘If’
trick"),
In the September issue of BYTE there is a
short routine which demonstrates the use of this
ability to simulate the "Repeate-Until"
statement available on some machines,
The routine is!-
10 FOR D=0 TO 1
20 action
30 D=CONDITION
40 NEXTD
As an example:-
10 FOR D=0 TO 1
20 PRINT "X"3
30 D=(PEEK(-16287)>127)
40 NEXT D
The first time the program performs the loop
D=0 until line 30, At that point the condition is
evaluated either as true or false. If it is false D
remains at 0, but if it is true D becomes 1,
At line 40 D is incremented by the BASIC
default value of 1. BASIC will continue with a
FOR....NEXT loop until the index is greater than
the value after the ‘TO’,
If the condition was false then D becomes 1
at the line 40, This is not greater than the
highest value (1) so the loop repeats, If,
however, the condition is true, D becomes 2 at
line 40. As this is greater than the highest loop
value, control will pass to the line following 40,
The example program will keep printing
asterisks until the button on paddle 0 is pushed,
This could, of course, be done with a routine
such ast
10 PRINT"#";
20 IF PEEK(-16287)<128THEN 10
The author of the BYTE article claimed that
the REPEAT...UNTIL method was quicker, I
havent, as yet, fully tested this,
MACHINE CONE PRINT ROUT TIVE
By Cliff Wootton
Have you ever wanted to put lots of text into a
program written in assembly language, but been
daunted by the writing of an indexed loop? Well I
have used this routine for the last 3 years and it
has been possibly the most used of all my
subroutines. The comments on the source listing
should be self evident. The program should be
included with the other subroutines in your source
code and should be used as follows:-
Print Statement JSR PRINT
DCI "THIS IS YOUR TEXT"
Next line of
code LDA {$FF
(Need not be LDA £$FF)
The construct DCI "string" will assemble the
ASCII values of each character into the object
code. Bit 7 of each character except the last will
| be clear. The last character has its Bit 7 set to
indicate the end of the string, It’s just as easy to
use for one character since that character is
assumed to be the last character of the string,
Thus JSR PRINT
ASC "A" consumes 4 bytes af memory
While LDA £ $C1JSR COUT
consumes 5 bytes of memory,
The operation is quite simple and relies on the
fact that when a JSR is performed, the return
address minus 1 is stored on the stack. This can
be pulled and used as a pointer to the string.
When the string is completed the Y register holds
its length, This is added to the pointer value
which is then pushed back onto the stack. When an
RTS is next encountered the program execution
carries on with the first instruction following the
string of text.
There are several advantages to be gained
from this technique, One of the most useful being
that it is well nigh impossible to disassemble the
object code quickly and easily. This only makes it
harder for the would be copyright notice remover.
The other main advantage is that the text appears
in the source code where required and not
elsewhere, Be careful not to use this function
with strings longer than 256 characters. It could
be modified to handle more but would probably be
of limited appeal were it so modified, It is also
possible to modify it to use some encription
algorithim to make it harder to find text
messages within the object code,
April 1982 HARDCORE - The Journal of the British Apple Systems User Group Page 25
ee ht
do estassobssokakatab aati
2 +
3 * MACRO PRINT RTN +
4% *
SS eka dobsta
6 +
o ORG se008 + START IT HERE
3 UBS Foube + JUST FOR CUNYENTENCE
3+
(GQ festsoiotctotoatokdotatot taba
ai + *
12 * PRINT EQUATES TABLE *
13% *
14 fetetsetoiacisiaiai aidan
15 *
a6 PTRL EGU $00 + ZERO PAGE POINTER CAN BE ANYWHERE
ir #
418 COUT EQU $FDED ; MONITOR PRINT CHAR IN ACC
19 *
2B feistobokaitateteiotobaidbsbotscsa bob aos
21 * *
22 * MACRO PRINT SUBROUTINE #
24 deietetotototetototoisiotatotototstotetteistaistst:
25 *
26 PRINT PLA 3 PULL THE RETURN
86 27 STA PTRL + ADDRESS OFF THE STACK
2 PLA 3 AND STICK IT INTO
61 29 STA PIRL+L + THE ZERO PHGE PUINTER BYTE PAIR
Lala] 38 LOY £208 j SET THE Y REG OFFSET TO @
34 LOOP Int + AND POINT AT THE FIRST CHARACTER
66 32 LDA <PTRL2,% 4 THEN GET THE NEAT CHAR
33 FHA 3 SAVE IT ON THE STK FOR LATER
3a 34 ORA £486 +} SET THE BIT SEVEN HIGH
ED FD 39 JSR COUT 3 AND PRINT THE CHAR
36 PLA i RETREIVE THE ORIGINAL VALUE
F4 37 BPL LOOP + AND LOOP IF BIT 7 WAS AG
38 TA 3 ELSE GET OFF™SET
33 cic 3 CLEAR ANY CARRY OVER
6a 46 ADC PTRL + AND ADD THE OFFSET TO
44 TAY 3 THE BASE ADDRESS TO
61 42 LOR FTRL+4 + GENERATE THE NEW RETURN
a6 a3 ADC 4400 + ADORESS FOR THE RT
44 PHA » SAVE THE HIGH BYTE
45 TYA » THEN GET THE LOBYTE BACK
46 PHA + AND SAYE THAT
47 RTS 3 WHEN YOU RTS OU GO BACK AFTER STRING
43 #
499 SSO ono
Sa * *
Si * END OF MACRO PRINT *
S2 * *
: SZ seek cokatsobtsobabsobotcek atest
6 ERRORS IN THIS ASSEMBLY
PL ent cena ae
Page 26
HARDCORE - The Journal of the British Apple Systems User Group
April 1982
THE NICELISTER
(c) By T Tse
One day ALL Applesoft programs will be nicely
listed!!
The Applesoft Manual, on page 48, specifically
warns you that the LIST command adds spaces
liberally, The Basic Interpreter LIST routine
always adds two extra spaces for each Applesoft
token disassembled - one immediately before
listing the Basic command and one immediately
after listing the Basic reserved word, This
method produces a perfectly readable listing, is
rather wasteful of spaces and is somewhat
irritable to the eyes when most of your Basic
lines tend to list on more than one line, The
degree of irritation is dependent upon the type
of printer/interface being employed.
The solution is The NiceLister routine presented
here. Some of its obvious advantages are?
Si ti
The NiceLoader program, listed further on, will
BLOAD The NiceLister routine and set up the
&-Ampersand jump vector for user interface,
After that, NiceLister is invoked simply by
typing &nnn, where nnn is a numeric argument in
the range 7 to 255, to specify the column width of
the listing required. (Note? the printer has to be
initialised first via a PRfn if printer output is
desired),
2. A really Nice Listing
All Basic line numbers are right-justified on the
Sth listing column, while all Basic statements
listed are left-justified on the 7th listing
column,
3. More compact listings
The NiceLister is very mean on spaces, yet does
not suffer any consequential loss in program
readability, A single space is added before
dislisting a token ONLY if that token will
disassemble into more than one character,
Another space is added after dislisting the token
ONLY if the next Basic byte to be listed is nota
token!! This logic works out quite satisfactorily,
4. Virtual printer/interface independence
NiceLister is believed to work on ANY printer
with ANY interface card. To list on, say, 80
column printer width, all you need to do is to
type in the sequence PR£n and &80, There is no
longer the need for controlling commands such as
CTRL-I 80n or POKE 1913,80,
—
Finally, an apology, folks! The whole NiceLister
routine was typed in, debugged, tested and
eventually patched using the old monitor and
mini-assembler supplied with Integer Basic, So
you will have to key it all in again!! To save the
routine onto diskette, enter BSAVE NICELISTER,
A$8000,L$260.
00 00 00
00 00 00
BS Eb £9.
FD O01 05
49 4C
0 D0
fit Da
Ol [a
id 01
Td wa
DL D1
80CO- D1 fi G1
6oce- [1 2 te
S0n0- fi2 2 b2
S0n8- D2 i2 LZ
GOEO- fie 2 b2
S0E8- f2 Qo 00
80F0- 03 03 04
ROFB- 02 04 04
04 03 04 04
04 07 05
06 03 06 06
9S 07 01
- 05 06 03 04 02 04 04 04
03 04 OS 04 04 05 03 03
04 02 02 04 04 02 03 04
- 91 01 O1 01 O1 03 02 01
O1 01 03 03 03 03 03 05
03 03 03 03 03 03 03 03
03 03 04 03 04 03 03 04
05 06 04 00 00 00 00 00
April 1982 HARDCORE - The Journal of the British Apple Systems User Group
Page 27
I a = ER oN — ad “- a nee
8160- 20 FB E46 86 EO 20 BE FD
B168- AS 67 A4 68 84 EZ 84 EB
B170- AO 01 Bi EZ DO 02 40 00
178- 20 8E FIA 02 BL E2 85 5
8180- 9F AO 03 BL EZ 85 9E AO 34400
8188- 04 84 E4 AZ 00 AS 9E C9
8190- 28 BO 2F C9 27 90 08 AS
8198- 9F C9 10 BO 25 AS 9E C9 hy :
B1A0- 04 BO 1B C9 03 90 06 AS EHEC Se tect toree
gia8- 9F C9 EB KO 11 AS 9E DO Sess cette GETTER AY: basLBE
B1BO- 0C AS 9F CF 64 BO 06 C9 a
B1B8- OA HO O1 £8 E8 EB EB 20 St REM (C) COPYRIGHT 13-OCT-1981
BICO- 4A EP 20 28° ED a0iay 62 6 ¢ REM ALL RIGHTS RESERVED
BiCB- 20 54 B2 As E4 ES E4 Bl om
B1D0- E2 FO 3C 30 07 20 3F 82 sinsrecennr Pate
B1DB- 4C CE 81 00 29 7F 85 ES 110 YTAE 3} PRINT "NICELISTER"
B1E0- AB B? 10 80 BE*80' 80. BS 120 VTAB 6} PRINT "WRITTEN BY T TSE"
B1E8- E6 86 E7 BY FO 80 CF OL tog UTAR 72 PRINT “UOKOOIOEIEORK"
BIFO- FOLG? AS. ELSEO erro 05 130 VTAR 9} PRINT "(C) OCTOBER 1981"
S1FB- 20 3D 82 AZ 00 86 EB A4 — 449 YTAB 133 PRINT "TO USE $-"
8200- £8 E6 ES B1 E46 48 20 3F iso YTAB 153 PRINT “JPR#1 © - FOR PRINTER OUTPUT"
8208- 82 68 10 F3 30.11 00 AO ass yTAB 16; PRINT " PRINTER ASSUMED 1N SLOT 1"
8210- 00 Bi E2 AA C8 Bi E2 86 160 VIAB 18% PRINT "J& 39 - TO LIST ON 39 CHRS FER LINE"
8218- E2 85 ES 40 70 B1 00 A4 = gs TAB 19t PRINT " NUMBER RANGE } 7-255"
8220- ES BY FO 80 C7 O01 FO AS 200 PRINT CHRS(4)"BLOAN NICELISTER"
8228- A4 E4 Bi E2 30 9D C7 28 210 POXE 1014503 FOKE 1015128
8230- FO 99 20 30 82 4C CB Bl 220 PRINT + PRINT “READY !"$ END
8238- 00 AY 00 85 E1 AF 20 09
8240- 80 20 ED FI E4 E1 AS Et
8248- C5 £0 90 OC 20 BE FL AZ
8250~ 06 20 4A FF AZ 06 84 El
8258- 60 00 00 00 00 00 00 00
8240- 00
aS
Gg
135 COLES GREEN ROAD LONDON NW2 7HN
kay-jay studios OLS
VG
TEL: 01 450 6993
COMPUTERS BY APPLE
MONITORS BY KAGA
PAPER BY THE THOUSAND
FINANCE BY BOWMAKER LTD
DISKETTES BY BASF
CASSETTES BY AUDIO MEDIA
PRINTERS BY EPSON & QUME
SOFTWARE BY MANY
BUGS BY MISTAKE
PLASTIC MONEY BY ACCESS & BARCLAYCARD
PRICE LIST BY REQUEST
PERSONAL SERVICE BY KEN JONES & HIS CREW
Page 28
Cool things down with the APPLEFAN!
Your Apple will not only run more efficiently, with less
risk of breakdown, but will be well organised, with easy
access to all input/output ports.
Simple to fit, no soldering or drilling — the APPLEFAN
still allows access to the lid of your Apple.
APPLEFAN may be removed at any time.
Basic mode! only £68.60 +VAT,
Ask your Apple dealer for a demonstration,
or post the coupon for our brochuret
FIRST DIvVistrion
COMPUTERS.
Snodene , Style Loke , Barford , Norfolk NR?
4BE, (060-545-481)
The Following Items are for sale to B.A.S.U.G,
Members i-
1 ANADEX DP8000 Printer. Secondhand £200.00
1 PAPER TIGER 445 Printer with Parallel
Interface, NEW & UNUSED, £320.00
2 MICRO-CONNECTION Telephone interfaces
with Diplomat Card & Computech software (used
for evaluation purposes only), £250,00 Each,
2 C.1,C.C, Mercury Operating Systems (used for
evaluation purposes only), £250,00 Each,
1 Set TABS Software including hardware card
OFFERS?
50 Walters BDi36 High Speed Matrix Printers
(240 cps, Logic Seeking Bi-Directional 10K
buffer) £450.00 Each,
The BD136 Printers are still selling for
£1,200.00 , and are Brand New. We have
purchased them as a result of a take-over and at
£450.00 they must be the bargain of the Decade,
These are the printers which First Division
Computers install at leading Football Clubs for
ticket printing. FIRST COME FIRST SERVED,
All the above prices EXCLUDE V.A.T, and are for
C.0.D. or Pro-Forma only.
HARDCORE - The Journal of the British Apple Systems User Group
Are you overheating?
Hiteck Products 21 Station Rd, Knebworth, Herts. Tel 0438 812137
April 1982
EE SS ee es ee cee
Please send me your brochure of APPLEFANI
| NAME: —_
ADDRESS:
FANTASTIC PRICE
5%" DISCS FOR APPLES
WITH
2 YEARS WARRANTY
OUR PRICES INCLUDE VAT
1+ Boxes (10 DISCS) £16
10+ Boxes £15
100+ Boxes £14
+ Postage £1 for up to 5 boxes £2 for
6 boxes
COMPUTER SCIENCE
Beacon House, P.O. BOX 46
London N20 0YA
Telephone: 01-368 3290
Telex: 83247 INTLAB
April 1982
HARDCORE - The Journal of the British Apple Systems User Group
Page 29
YY
@OMNIS is written in UCSD Pascal*, this
means a better structured. faster running
set of programs than could ever be possi
ble using Basic — We believe that UCSD.
Pascal+ is the best microcomputer
language available — OMNIS proves it —
@ OMNIS is structured around powerful file
handling modules. These modules give
you the flexibility to store and retrieve
your information in the way that you
want. Full multi-key indexed access is
available to all your database files, you say
what you.want — OMNIS does the rest
an YOU HAVE AN
APPLE MICROCOMPUTER
YOU'LL NEED
+ ONES
All you’ve ever wished for in an
information management
system.
OMNIS sets new standards in database programs and levels of
performance that you never believed were possible on a
microcomputer
@Omnis provides you with a versatile
report generating module that enables
you to define your own reports, lists, mail
Ing labels etc
@OMNIS has unparalleled search facilities
to allow you to be selective. Those hours
of fruitless searching through rows of card
indexes becomes a thing of the past
@OMNIS lets you design your own screen
layouts for data entry and inspection
you may have up to 10 screens per file
OMNIS has an application waiting for it in
every business, school and laboratory and
workshop. Wherever information needs to be
stored and retrieved. OMNIS is available for
both APPLE Il and APPLE ///. We can also sup
ply OMNIS for use on APPLE microcomputer
networks (yes. with true multi-user record lock
ing). Trade enquiries welcome
All registered users of OMNIS will be sent FREE
BACKUP disc and you will be kept informed of
all updates and upgrades. Free help
given to all registered users via an OMNIS hot
line.
Son De?
strademarks
+ trademark of the Regents of the
ty of Calterrua
os er
© angen Trace Ma
aS
OMNIS — All you ever wanted
APPLE II* version - £174.00 (incl VAT & pp)
APPLE ///* version - £225.75 (incl VAT & ie:
BLYTH COMPUTERS LIMITED
Wenhaston, Halesworth, Suffolk
= 9DH
Of APPLE Conner Inx
RY
The biggest Apple (0) mes
event ever held PRINTERS?
in Britain! OZWISE GIVES YOU THE BEST PRICES!
Zappic?:
'® Ist National Apple User Convention
Epson MX80 F/T 2 only £339
Epson MX100 only £479
NEC 8023 only £339
Integrex CX80 colour only £729
Best prices on Anadex, Anacom,
Centronics, Epson, Mannesman Tally,
Nec, Oki, Olivetti, Olympia, Paper
Whether you're an active Apple user, or just fascinated Tiger, Qume, Ricoh, Tec
by the rapid development of microcomputing generally,
you won't want to miss the action-packed weekend that .
will make up Apple ‘82. WE SUPPLY OVER 40 PRINTERS!
From Friday. June 4, to Sunday, June 6, the whole of 12 DIFFERENT MONITORS!
the ultra-modern Fulcrum Centre in Slough will be com-
pletely devoted to the onward march of the micro, when
some of Britain’s top computing experts will be revealing
their secrets.
12" green screen monitors from £95
14" colour monitors from £229
FRIDAY
is education day — the staging of the first National Apple OVER 60 INTERFACE & EXPANSION CARDS:
Education Forum and a chance for teachers and lecturers =
to exchange ideas, evaluate software and listen to a Ramex 16K RAM card only £69
series of lectures covering every aspect of computer-
| assisted learning. Some 25 Apples will be on show, Videx 80 column card only £159
demonstrating a wide range of applications in the school CPS multifunction card only £119
envircnment Z80 card only £89
SATURDAY and SUNDAY
will be for users generally — the first National Apple Users OVER 100 UTILITIES, COMPILERS
Convention. So many leading figures in microcomputing & LANGUAGE SYSTEMS!
1} want to take part that presentations will be given
s lt sly in two adjoining theatres throughout the ry
oeakend og eae 2 cd Tasc Applesoft compiler only £89
The full timetable of events covers database systems, Lisa Assembly Lang Develp Sys £59
graphics, music and speech synthesis, Pascal, Cobol and Pascal language system only £209
other languages, commercial and industrial applications,
hard) software troubleshooting and micros in
eens i Re § OVER 100 BUSINESS PROGRAMS!
A central feature of the convention will be a
communications workshop, to explore latest DB Master only £109
developments in linking Apple to Apple, Apple to Zardax word processor only £139
mainframe, remote information retrieval systems and Visi 1 ly £94
bulletin boards. It will give a unique insight into a subject a sicaic only
that is rapidly becoming one of the most exciting aspects Visipak (calc/trend/file) £329
of computing today.
And for light relief, there will also be the national finals OVER 230 EDUCATIONAL
of the nail-biting Apple Olympics. %& GAMES PROGRAMS!
Mail the coupon below for full details of plans for
Apple 82 — and about the first-class accommodation that
oo
can be reserved for you at some of the best hotels in the Wizardry adventure game £25.95
area for a modest £17 a night — far below their normal Zork adventure game only £23.95
Sees ; : 4 . Lettermind stermind game £12.95
his major event in the Apple world is attracting users a —
from all parts of the British Isles and overseas. But tickets
are limited, so early booking is advisable. ALSO DISCS, RIBBONS, ETC
AT UNBEATABLE PRICES!
+ plist ps ers ae mn tho arma Ts OVER 700 APPLE ITEMS!
Please send full details of Apple 82 to: =
I I Write or phone for free catalogue
I ae + I Please add 15% VAT to orders
Address Access/Barclaycard holders
; . I EN telephone your order rr ed
! Write or ‘phone for full details ==
| Post TO: Apple ‘82, Europa House, I
68 Chester Road, Hazel Grove, Stockport SK7 5NY. OZ! compute
eee See oor aa
28 CROFTS ROAD, HARROW, MIDDX. HA1 2PH.
01-863 2309 24 hour service
April 1982
COMPU—-READ
A Review by Norah Arnold
The set of programs known as COMPU-READ
was written by Steven W. Pederson and Sherwin
A, Steffin and are distributed by Edu-Ware
Services, Inc. of California. They consist of four
skill-building programs which are designed to
increase certain aspects of the user’s reading
ability, Also provided are two programs which
are specifically for creating new word-files to be
employed in two of the skill-builders.
When booted the disk gives a colourful
introduction then asks whether instructions are
needed, If you opt for the instructions you are
presented with several well arranged screens of
information which make good use of inverse for
added clarity and emphasis,
According to the objectives given in the
instructions the programs are aimed specifically
at increasing a person’s reading speed and also
for improving retention of words read. It should
be obvious from this that they are definitely not
programs to help with the initial acquisition of
reading skills by very young children but may be
used after this period to increase motivation and
to remedy difficulties such as letter reversals,
The first of the skill-building programs is
called Compu-Read I and is concerned with
letters only. The user can control the number of
attempts and the starting speed of the test (1 to
21), Three single letters are displayed spaced
accross the screen horizontally. The user must
retain the three letters and type t'em in after
they have disappeared from view. If the attempt
was successful then the next three letters will
be shown on the screen for a shorter period of
time. However, if you reach a point where you are
unsuccessful then the program reacts and slows
down the display until a correct response is
achieved, The slowest display time appears to be
1,33 seconds giving a reading rate of 2,25 letters
per second. This may seem fast but a teen-ager
with no reading problems can get down to a
display time of 0,06 seconds giving a rate of 50
letters per second within a few minutes of using
the test,
Compu-Read II moves on to present not
letters but words, phrases or short sentences at
very high speed. This is the only Compu-Read
program where the progress of the user does not
control the display speed. Each time a correct
response is made new words or phrases are
presented, If the response is incorrect the same
word is repeated, A file of 100 words to be used
with Compu-Read II is provided on the disk but
new files can be compiled by using File-Builder
II, The screen prompts controlling the entry
procedure for the new file are very clear and
easy to follows However, thorough préparation of
material is necessary before starting to enter,
HARDCORE - The Journal of the British Apple Systems User Group
Page 31
RE att SA ec ner emt a enone CA ne CE Hien RY
Compu-Read III appears to be the most
demanding of the programs. Again the number of
attempts to be made and the display time can be
controlled by the user. One word is displayed on
the left of the screen for a short time. On the
right side a list of four other words is shown.
Hidden in this list is a word which is either a
synonym or an antonym of the word shown on the
left, All five words have to be taken in
simultaneously, then one must decide which word
means the same or the opposite of the original
shown on the left,
Correct responses are confirmed and the
display time is decreased accordingly,
Corrections are given if the response was wrong
and the display time is increased. Display speeds
start at 1.26 seconds giving a reading rate of
238,09 words per minute, Both my teen-age son
and I achieved success at a display time of 0.06
seconds which according to Compu-Read gives a
reading rate of 4999.8 words per minute, which
seems rather high to me.
Again a file-builder program is provided so
that new source lists can be built up at any
difficulty level which you choose.
In Compu-Read IV sentences are flashed on
the screen for shorter and shorter times, Four
different types of sentence construction are used
and individual words in the sentences.are altered
to give variety, The user controls the starting
speed and the number of attempts, After each
sentence is displayed a question about it is
presented. A word from the sentence usually has
to be reproduced as the answer, This program
also responds to the standard of the user,
becoming faster or slower as necessary,
The slowest display time for each sentence is
1,26 seconds, giving a reading rate of 380.9
words per minute. The fastest time we have
achieved gave a rate of 48000 words per minute!
Most of the questions asked seem to require only
part of the sentence to have been read, nearly
always the first few words, This appears to lead
to highly inflated scores,
A clear, concise performance report can be
obtained after using any of the four programs,
Children with whom I have used the programs
have seen them as a challenge and responded
accordingly. The programs certainly increased
motivation and led to a great interest in
achieving a higher score than previously.
The Compu-Read programs present some
interesting possibilities for research, especially
in view of their adjustment to the user’s
performance, Personally, I am hoping to conduct a
small research program based on certain aspects
of Compu-Read, The Compu-Read documentation
states that Edu-Ware will support research
efforts with listings or other information,
Page 32
i TECIMaAsrEeEn — ”&
N- TECIMWINIC «4.1. FTES
OF THE LATEST TIORD —
PROCESSOR F Core
ATISTRALTA
By G.P,Ognibeni
Textmaster by Computer Solutions is the latest in
the long line of Apple word- processors and is
quite clearly aimed at the professional market, At
£160 + VAT it is rather more expensive than most
and must certainly be measured against such an
established competitor as Supertext II which is
priced at £125 + VAT but can be bought cheaper
than that.
Textmaster sports quite an impressive array of
features, It has LOWER CASE in software, SHIFT
ON THE SHIFT BUTTON (where it belongs - have
you ever seen a car which had its clutch on the
passenger side?) works on the ordinary Apple 40-
column display but can also be used with any of
the better known 80- column cards. It is a nice
touch to have all the necessary software for the
various cards already provided on the program
disk - not all of us (myself included) are
adaptation wizards and in any case the quality of
professional software should in no small degree
be measured in terms of user friendliness. This
must indeed be Textmaster’s strongest area, As I
have learned to use both in the last 6 weeks, I
feel confident to predict that anyone who has
struggled through the Supertext- jungle will find
the logical structure of Textmaster an absolute
joy. There are no numbers to remember, no
sequences to be got right, no distinctions between
“add mode", "change mode", and “cursor mode"
(Supertext) which, in order to complicate things,
each use different controls but all the editing can
be done simply from any point in the text without
any fiddling about. Both arrows are destructive
which makes forward and backward deletions easy
whilst movement around the text is effected by
CTRL- plus D= down, U= up, L= left, R= right, B=
beginning of text, E= end of text. The first four
of these can be used in conjunction with the
repeat key and while I find the stretch for
CTRL-R awkward, I defy anyone not to remember
the necessary commands, In addition, CTRL-V will
move the cursor down 10 lines, CTRL-shift-N up
10 lines:
THE MENU?! Textmaster uses a main menu and an
inner menu, The main menu displays the files on
disk and the options available. You choose
between C= create a new document, R= retrieve a
HARDCORE - The Journal of the British Apple Systems User Group
April 1982
0 SRE RS AR AA A AS EAS ST
document, ie. load an existing file, P= print a
document from disk, T= transfer a file from one
disk to another, L= lock, U= unlock a file, G=
glossary! this decides which glossary (see below)
you want to use, N= newdisk, initialize storage
disk, and I= index, print a copy of all file names
on the disk. All options are accessed by their
initial letters, all files by a 2- character code, so
that all you do to load a file is to press RA4, If
you have changed disks in between working on
Textmaster and you want to see the directory of
the new disk, all you need ta do from the main
menu is to press the space bar and the directory
will be displayed. Very useful in this context is
the inclusion of a free sectors figure in the top
left corner. Obviously useful in an office
environment is the option of including a 3-
character “author” code in the file name, Once
inside the document, you can approach an inner
menu by pressing the escape key. You then have
the following options: C= change (or examine) the
text of the document in memory, D= draft: print a
single copy of file in memory, M= go to main menu,
P= print document in memory, R= rename document
in memory, S= save onto disk, Y= videoprint file
on screen as it will be printed on paper. You can
change freely between the various commands of
the inner menu except for option M= go to main
menu which will delete the file from the
computer’s menu. Escape will get you out of all
sorts of mistakes and simply return you to
whichever menu you are working from, again very
nice.
Once INSIDE THE TEXT, you get all the usual
functions that you would expect except for the
number of bytes left available. Here, sadly, you
are left to guess, Textmaster does display the
cursor position inside each paragraph which can be
useful if you are tabbing, etc, There is, of course,
a global find and replace function built in which
asks if you want to change "Y/N/A", ive. change
just this one word, leave it as it is or change
every occurrence in the text, Pressing the space
bar will drop you out of the find and replace mode
at any point. Supertext at this point allows you to
"Autolink" your files so that you could search
through an entire disk but Textmaster does not
have this feature, It can, however, link documents
for printing very easily, and will allow you to "cut
and paste", i.e, to combine paragraphs of text in
any way you like, You can also insert (CTRL-I)
other documents into the file you are creating
although with the cut and paste option there is
less need to do this than with other word
processors,
April 1982
TEXT MOVEMENT: This to me is Textmaster’s
weakest area, The only way of moving text is by
moving paragraphs up or down, This in itself could
not be easier, however as every carriage return is
interpreted as a mew paragraph, moving text in
large doauments can be a pain, The use of markers
would have made such operations a lot easier and
I think these should be included in future
versions of Textmaster.
GLOSSARY: Textmaster has a wonderful little
gimmick which I find extremely useful. It can
store up to 26 words or phrases which can be up to
several lines long and retrieve these at any point
in the text by a simple CTRL-G plus code letter
A-2, This can reduce the typing of repetitive
phrases, book titles, formulae etc. very
considerably. In addition, several glossaries can
be used on the same disk and could even be
swapped in the same document, A great idea!
As already indicated, Textmaster appears to be
strongly business/ office orientated and has same
very impressive functions for writing circulars,
etc, by defining “labels" and then filling them
with “info sets", e.g, addresses, titles, etc, You
can also print "footers" at the bottom of pages,
ei
Showing the first 100000 of 162699 characters.