Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
YOI B<br />
DELVE IN<br />
YOUR COMMO<br />
AMIGA —<br />
The detailed story<br />
10<br />
de<br />
11<br />
r<br />
P<br />
J<br />
1<br />
* )<br />
US Gold<br />
Kong la Masters)<br />
must be won<br />
CIA<br />
O<br />
REM<br />
ZINE<br />
O<br />
of to<br />
cbt<br />
JUNE 1986<br />
a<br />
ge<br />
s<br />
t
IEVENTS<br />
16/PLII<br />
141"g"<br />
'Compete in the six<br />
thrilling events -<br />
Biathlon, Bobsled, Ski-<br />
Jump, Slalom, Down<br />
Hill and Speed Skating.<br />
The events start with open-<br />
ing ceremony accompanied<br />
by thrilling music. One to four<br />
players can select the country<br />
they wish to represent. The events<br />
with some of the most stunning graphics<br />
seen on C16/PLUS 4 provide a perfect back<br />
drop as the chase for medals progresses.<br />
TURBO LOAD ensures that you don't get a<br />
chance to cool down between the events.<br />
A QUALITY GAME<br />
FOR C16 AND PLUS 4 OWNERS E 7 . 9 5<br />
Trade Enquiries:<br />
C16-PLUS 4 CENTRE, ANCO SOFTWARE,<br />
85, TILE KILN LANE, BEXLEY, KENT, U.K.<br />
Telephone: 0322 92513/8<br />
Mail Order: Payment by Cheque, P.O., VISA or ACCESS<br />
24 Hour Credit Card Service: 0322 522631
JUNE 1986<br />
VOLUME 2<br />
NUMBER 9<br />
Editor:<br />
Stuart Cooke<br />
Assistant Editor:<br />
Marie Curry<br />
Advertisement Manager<br />
John McGarry<br />
Advertisement Copy<br />
Control:<br />
Laura Champion<br />
Group Editor:<br />
Dave Bradshaw<br />
Group Managing<br />
Editor:<br />
Wendy Palmer<br />
Managing Director:<br />
Peter Welham<br />
Origination:<br />
Ebony Typesetting<br />
Design:<br />
Argus Design<br />
Editorial & Advertisement Office<br />
No 1 Golden Square,<br />
London W1R 3A8<br />
Telephone<br />
.<br />
Telex: 8811896<br />
0Your 1 -Commodore 4 incorporating<br />
3Your 7 64 is a monthly magazine<br />
0appearing 6 on the first Friday of<br />
each month.<br />
2 6<br />
Distribution by: Argus Press<br />
Sales & Distribution Ltd. 12-18<br />
Paul Street, London EC2A 4JS.<br />
Printed by: Alabaster Passmore<br />
& Sons Ltd, Tovil, Maidstone,<br />
Kent.<br />
Subscription rates upon<br />
application to Your<br />
Commodore Subscriptions<br />
Department, Infonet Ltd, Times<br />
House, 179 The Marlowes,<br />
Hemel Hempstead, Herts. HP1<br />
1813.<br />
The contents of this publication<br />
including all articles, designs,<br />
plans, drawings and programs<br />
and all copyright and other<br />
intellectual property rights<br />
therein belong to Argut<br />
Specialist Publications Limited.<br />
All rights conferred by the Law<br />
of Copyright and other<br />
intellectual property rights and<br />
by virtue of international<br />
copyright conventions are<br />
specifically reserved to Argus<br />
Specialist Publications Limited<br />
and any reproduction requires<br />
the prior written consent of the<br />
Company. 1986 Argus<br />
Specialist Publications Limited<br />
• Chip Chat 1 0<br />
Eric Doyle begins a new series on chips,<br />
• Amiga - the Detailed Story 1 4<br />
We show you what the Amiga can do.<br />
• 3 into 1 3 1<br />
Utility special — Stuart Cooke reveals all.<br />
• Reader's Survery 4 5<br />
How you can help us to help you.<br />
• Data, Time and Memory 5 8<br />
Hints on memory to save you minutes.<br />
• Stateside News 7 0<br />
The US computer scene.<br />
• Business on a Budget 8 0<br />
Low price utilities from Argus Press Software,<br />
• In Print 8 2<br />
Hardware review - the Ibico<br />
ikAlt SERIES 111<br />
• Top Draw 5 2<br />
Graphics tricks from Allen Webb.<br />
• Welcome to the Machine 5 4<br />
Another part in our machine code training program.<br />
• Froggy 6 2<br />
Add more touches to our arcade game<br />
• Language Lab-C 6 4<br />
Part one of an in-depth look at C.<br />
• Programming the C-16 7 1<br />
Yet deeper into the complexities of the C-16,<br />
• Programming the 1541 7 5<br />
Inside your disk drive.<br />
• Club 128<br />
A special offer for Your Commodore readers.<br />
REGULAROM<br />
it<br />
,<br />
• Data Statements 4<br />
• US Gold Competition 8<br />
• Sense of Adventure 2 6<br />
• Action Replay 3 4<br />
• Software for Sale 4 0<br />
• Sprite Ideas 4 1<br />
• Listings 4 4<br />
• Game of the Month 5 0<br />
• Teacher's Pet 5 6<br />
• Scratch Pad 6 0<br />
• Communications Corner 6 8<br />
• Program Submissions 7 8<br />
MPETITION<br />
• Database 64<br />
Type in our C64 Database.<br />
1 6<br />
• Professional Packaging<br />
Smarten up your tape collection.<br />
• Better Matrix 6 6<br />
Power for your MPS<br />
• Budget 64 8 3<br />
Get your finances under control.<br />
88<br />
29
Soft in the Head<br />
SHOPPING FOR SOFTWARE? LOOK NO<br />
further than these pages. This month it<br />
seems as if there's never been a wider<br />
choice of program available and you have<br />
to congratulate the software houses in the<br />
ingenuity of their staff.<br />
Ariolasoft info<br />
Ariolasoft is making headlines and movies<br />
this month. Did you ever think that you<br />
could play at being Steven Spielberg<br />
with the aid of your C64? Movie Maker<br />
allows you to do just that. You can create<br />
your own animated pictures with the aid<br />
of this program. You probably won't<br />
make as much money as the great<br />
directors but you should have some fun.<br />
Claims for the program include:<br />
mixing text and graphics, creating tracks<br />
of up to 30 frame each, and combining six<br />
of these in a single animated sequence.<br />
There are also hundreds of built in<br />
pictures, ready for use plus the power to<br />
create your own. There are numerous<br />
animated greetings cards and a music and<br />
sound library. You can videotape your<br />
efforts and bore your friends with them -<br />
if you feel that way inclined.<br />
It's on twin disks and costs E16.95.<br />
Two other newies from this Covent<br />
Garden based house- they've just moved<br />
- are Starship Andromeda and<br />
Panzadrome.<br />
The latter is a futuristic war game set<br />
on a robot inhabited island. The Robots<br />
are tanks and hostile, of course, and you<br />
must build a better one in order to defeat<br />
them. Look out for mines and mortars.<br />
Panzadrome costs f8.95 and is a<br />
product of the programming and design<br />
skills of the Ramjam Corporation.<br />
Starship Andromeda sees you battling<br />
the evil tyrant Alana, who wears a crystal<br />
around her neck which just happens to be<br />
the security key to the great computer<br />
which controls the galaxy. A tough<br />
situation - especially since the only thing<br />
that will free the crystal is a Proton lance.<br />
Get the lance and get the crystal. Easy,<br />
huh?<br />
The program includes 12 arcade/<br />
strategy games and 10.000 locations. It's<br />
also E9.95.<br />
Not content with these launches,<br />
Ariolasoft is entering the Amiga software<br />
market with a collection of Electronic<br />
Arts' utilities.<br />
Deluxepaint is an incredible graphics<br />
program which allows the beginner to<br />
explore the Amiga's capabilities whilst<br />
giving the more experienced user an<br />
excellent tool. Features include tools to<br />
create lines, curves, shapes and textures.<br />
There's also split screen zoom enlarging<br />
and colour cycling to create animation.<br />
DeluxePrint is a sister program with 15<br />
formats for easy customisation of print<br />
outs - in colour or black and white. The<br />
formats include greetings cards, business<br />
cards, stationary, calendars, letterheads,<br />
• • sters and many more.<br />
A6 Amiga range from Ariolasoft<br />
Ariolasoll, Electronic Arts and the Amiga
DeluxeVideo brings another<br />
dimension to computing. Make video<br />
slide shows, animation, business presentations.<br />
Find out about wipes, fades, and<br />
dissolves. Also compression of images,<br />
control of the foreground and background<br />
and much more.<br />
Ariolasoft's Ashley Gray said: "The<br />
Deluxe series of Amiga programs are the<br />
most powerful, integrated, creative tools<br />
ever released for a personal computer."<br />
Maybe you should try them when<br />
you've saved up for your Amiga?<br />
Activision — Out of Time?<br />
WANTED - DEAD OR ALIVE! SAM<br />
Harlow, that's you, a marked man. Your<br />
past has caught up with you, punk.<br />
They're out to get your - but you don't<br />
know who they are. Check your files, Sam,<br />
you need to prevent your own murder,<br />
and it's one of those bums who you've put<br />
away behind bars during your auspicious<br />
career.<br />
Interested? Activision's latest<br />
adventure - Borrowed Time - puts you in<br />
the position of both hunter and prey.<br />
There are 20 serious suspects who are out<br />
of your blood. Track the murderer down<br />
before it's too late.<br />
Perils including getting shot at,<br />
burned, anaesthetised, beaten up, strung<br />
up, sentenced to life imprisonment,<br />
bopped on the head, ripped to pieces by<br />
mad dogs etc.<br />
If you've got £14.99 and want to die<br />
horribly then you know how to spend it.<br />
And the Rest<br />
IF YOU'RE AN AVID WATCHER OF NOEL<br />
Edmond's ridiculous Late Late Breakfast<br />
Show, then you'll know the background<br />
to Mr Puniverse. Now Mastertronic has<br />
jumped on the bandwagon yet again to<br />
bring you Big Mac - 2 which features the<br />
character immortalised in this hilarious TV<br />
spoof. It's on the C-16 and is in the £1.99<br />
range of course.<br />
Halley's Comet fever has now hit the<br />
software industry with a release from<br />
Firebird to mark the approach of the<br />
space probe Giotto to the heart of the<br />
comet.<br />
It's one of those games in which, once<br />
again, you play the part of an intrepid<br />
spaceman coming to the aird of the entire<br />
human race. This time the danger involves<br />
germ bags from the comet which are<br />
threatening the health of the world.<br />
The game has three phases starting<br />
with the launch, followed by controlling<br />
the ship's computer in its flight to the<br />
comet (the spaceman is in suspended<br />
animation at this point), and finally the<br />
destruction of the germbags so that they<br />
won't reproduce and infect the globe.<br />
f 7.95 on the CM, and available now.<br />
Rino Software is taking the bull by the<br />
horns in its decision to call a spade a spade<br />
- or more accurately a shoot 'em up a<br />
shoot 'em up.<br />
Gone are the days when zappy games<br />
had zappy names. Rino's new release is<br />
for the CM, priced at £2.99 and is<br />
unabashedly entitled Shoot 'Em Up.<br />
Generally Speaking<br />
IN THIS HIGHLY TECHNOLOGICAL BUSiness,<br />
the Japanese are still the people<br />
who are often first with the newest ideas.<br />
Now Cumana has brought another<br />
Japanese invention to this country in the<br />
form of the Astron IC card.<br />
Physically, the card resembles a credit<br />
card but contains integrated circuitry<br />
which enables it to be used as a solid state<br />
memory device. It has a 38 pin connector<br />
which plugs into a cheap (about E2) socket<br />
and does not need a magnetic or laser<br />
reader.<br />
There are four different types of card:<br />
ROM, Masked ROM, EPROM and RAM.<br />
The Astron integrated Circuit Card<br />
5<br />
AMMO MIN<br />
• sioet tam gams<br />
• see the t o t e h r l a l<br />
News<br />
Cumana claims that they are totally<br />
reliable and durable and are unaffected<br />
by electromagnetic/electrostatic conditions,<br />
extreme temperatures, humidity<br />
and minor scratches. It is also an added<br />
protection against software piracy.<br />
Adaptors for the cards will be available<br />
for the CM and C128.<br />
Cumana has proposed a host of<br />
applications for the new card: Memory<br />
for telecommunication devices; identification<br />
for security keys, bank accounts,<br />
computer input and cashless shopping;<br />
speech for vending machines, language<br />
labs, measuring and sensing warning<br />
devices; instructions for robots and other<br />
automated equipment; personal identity;<br />
applications and ROM software; portable<br />
memory for hand held micros,<br />
programmable printers, process control,<br />
alarm systems. And this is only the tip of<br />
the iceberg. Look out for them.
Mike Mahoney and Tony Crowther<br />
After an absence of two years, Games<br />
programmer Tony Crowther has returned<br />
to Alligata software and as you can see<br />
from the picture he seems to be having<br />
quite a good time there already.<br />
Because of this new arrangement<br />
Alligata is promising some exciting<br />
releases in the near future.<br />
If you've bought an A'n'F game<br />
recently or in the past then a new service<br />
is being offered to you by the company to<br />
help you out with any problems which<br />
you may have run into.<br />
A new mail order and queries line has<br />
been established which will provide a 24<br />
hour service. The number is Rochdale (0706)<br />
341111. There's also been an announcement<br />
from A'n'F that a new arcade<br />
adventure is in the pipeline at the<br />
moment. We'll bring you more news on<br />
that as soon as we have it.<br />
A company called Mupados has come<br />
up with an original idea. It has launched a<br />
software/audio cassette. It combines<br />
theme tunes in 'full, fantastic stereo'<br />
dance mix from some popular games -<br />
namely Rambo, Neverending Story,<br />
Ghostbusters, Crazy Comets and Hypersports<br />
- with a database called Softwhere?<br />
which should help you organise a<br />
reference system for your programs,<br />
games, or record collection.<br />
The idea behind it is apparently to<br />
combine the purely functional with pure<br />
entertainment. Whether the punters will<br />
think this worthwhile is another question<br />
but at 14.99 from W H Smiths it may be<br />
worth a shot.<br />
On Line<br />
MICRONET USERS HAVE RALLIED<br />
round and forked out to make the lives of<br />
some disabled young people a lot easier.<br />
A user called Jon Bye, who became<br />
non-vocal as the result of an accident<br />
several years ago, let Micronet know, via<br />
mailbox, that communications services<br />
had made an incredible difference to his<br />
life.<br />
His comments created a lot of interest<br />
amongst other users. John lives at Hatchford<br />
Park School in Guildford and an<br />
appeal put up on Micronet to raise f 300<br />
for 10 other non-vocal residents was<br />
greeted with a fantastic response.<br />
Not only did members donate over<br />
1350 in 24 hours, but also Keith Rose of<br />
Modem House offered all the required<br />
modems free.<br />
Rick Wakeman tackles Commodore's Music System<br />
*Ales' •?'"<br />
Hard Lines<br />
COMMODORE 128 OWNERS WHO<br />
have had trouble finding a suitable<br />
monitor for their computer (other than<br />
Commodore's own product) could find<br />
that Cascade has come to their aid.<br />
The RGBI output of the 128 is incompatible<br />
with the majority of monitors on the<br />
market. Commodore's 1901 monitor is<br />
expensive and peoplewho already own a<br />
Microvitec probably feel that this is a high<br />
price to pay.<br />
Cascade has come up with an interface<br />
which provides a full RGB 80 column<br />
display via the RGB TTI input. Microvitec<br />
1431 dual mode monitor can now provide<br />
full 40 column composite video and 80<br />
column RGB with simple switching<br />
between modes, thus allowing full use of<br />
the 128's three operating modes.<br />
At 119.95 it could be a worthwhile<br />
investment.<br />
Musical computer owners will be<br />
tempted by Commodore's new Complete<br />
Music System. It costs 1330 including a<br />
C64 and the Music Expansion system<br />
priced at 1149.99 for those who already<br />
own a C64 or C128, contains everything<br />
needed to produce music which is<br />
normally only possible on expensive synthesisers.<br />
Or so Commodore claims.<br />
Launched at the Ideal Home Exhibition<br />
the products should be in your local<br />
shop now.<br />
COMAIOD<br />
'<br />
1<br />
••••
1<br />
1<br />
1<br />
,<br />
v<br />
L<br />
i<br />
-<br />
t<br />
^,111E-WAY 11G<br />
-<br />
E0<br />
•00*?),<br />
Screenshots from Spectrum 48K<br />
av<br />
lux<br />
----<br />
_<br />
t-<br />
gibe<br />
-<br />
-<br />
-<br />
IbAt l o o l j r . . 1 4<br />
Enter the world of Avenger, a Ninja warrior<br />
Of unparalleled skills and deadly powers, as<br />
he battles the forces of evil in defence Of his<br />
faith and protection of the weak.<br />
Be calm and stay silent as the outstanding<br />
animation and unrivalled combat routines<br />
take you to levels Of aCtlOn yOu'd never have<br />
thought possible.<br />
Experience the stunning effects of triple<br />
scrolling action as you master the techniques<br />
of Hand to Hand combat, Pole Fighting and<br />
the skills of the Samuri Sword_<br />
And when you believe you've succeeded In<br />
overcoming all the odds, the next in this<br />
thrilling seties of adventures will beckon you<br />
forward to a further challenge of death.<br />
Spectru imstrad CBM c 28<br />
tremIlh Craphics Software Limited, Alpha House, 10 Carver Street, Shetabbilan. Tel: 0742-753423<br />
ft<br />
Alit<br />
A
- 11111111=111111111<br />
r<br />
- 411•1111111=111<br />
[be yours irc47.1 enter otial<br />
SINCE KUNG FU IS AN EVER POPULAR<br />
topic for computer games, we've decided<br />
to give you the chance to win your own<br />
copy of US Gold's excellent Kung Fu<br />
master.<br />
We've got 50 copies for the readers<br />
who pick out the differences between the<br />
two cartoons and get their names picked<br />
out of the bag first.<br />
What are you wailing for?<br />
How to Enter<br />
Study the two cartoons. There are several<br />
differences between them. Mark the<br />
differences clearly on the picture<br />
attached to the entry coupon. Fill in the<br />
coupon and send it off to US Gold<br />
Competition, Your Commodore. 1<br />
Golden Square, London W1 R 3AB. Write<br />
the number of differences you found on<br />
the back of your envelope.<br />
The Rules<br />
Entries will not be accepted from<br />
employees of Argus Specialist<br />
Publications or US Gold. This restriction<br />
applies to employee's families and agents<br />
of the company.<br />
The How to Enter section forms part of<br />
the rules. The editor's decision is final and<br />
no correspondence will be entered into.<br />
Entry Coupon<br />
Name<br />
Address<br />
p o s t code<br />
Number of differences found<br />
Send your entry to: US Gold Competition, Your Commodore, 1 Golden<br />
Square, London W1R 3AB. Closing date: Friday 27 June1986. Write clearly and<br />
don't forget to put the number of differences on the back of your envelope.
300,000 pages of information on the huge<br />
P R E S T E L Prestel database<br />
PRESTEL is a trademark of British Telecommunkations<br />
die?/0<br />
0,4401tAA<br />
-<br />
r<br />
fi"0<br />
Micmnet 800<br />
800<br />
8 Herbal Hill, London EC1R 5E1<br />
Telephone: 01-278 3143<br />
FREE Electronic Mail International<br />
Telex 1 0 National Chatlines (Interactive<br />
Bulletin Boards) 70,000 users across the<br />
UK Teleshopping Multi-User<br />
Interactive Strategy Games<br />
Instant computer news Hardware and<br />
software reviews Technical features<br />
Hints and tips On-line business advice<br />
and features<br />
FREE and discounted quality software to<br />
download direct to your micro-24 hours a<br />
day<br />
for just 20p a day<br />
To: Micronet 800, 8 Herbal Hill, London EC1<br />
Please send me a brochure on Micronet 800<br />
Name<br />
Address<br />
T e l e p h o n e No<br />
Age M i c r o<br />
v-com 618 6 1
In the first of a new<br />
series, Eric Doyle<br />
introduces you to the<br />
secret of your<br />
Commodore's<br />
memory.<br />
WE ALL TAKE THE CHIPS INside<br />
our computers for granted<br />
but a greater understanding of<br />
them can lead to better<br />
programs. Over the next few<br />
months I hope to clarify the Another difference is that<br />
function of each chip and to ROM is a permanent, nonreveal<br />
the inner workings and volatile store which cannot be<br />
hidden secrets of the Comma- erased by turning the power on<br />
dare range of computers: the and off but RAM is volatile and<br />
Vic 20, C64, C-16, Plus/4 and its contents disappear when<br />
C126. t h e computer is switched off.<br />
The heart of any computer ROM is where the Basic<br />
is the central processor and the operating system is stored and<br />
most common application of at power up it reserves certain<br />
the computer is to run Basic parts of RAM for storing the<br />
programs so this is where our transient values generated as its<br />
Odyssey will begin, r o u t i n e s are executed.<br />
The microprocessor in<br />
Commodore micros is a one of<br />
several derivatives of the<br />
Motorola 6500 series microchip.<br />
This processor is the<br />
number cruncher inside which<br />
are the registers that assist in all<br />
of the computer's mathematical<br />
operations. Diagram 1<br />
shows the basic architecture of<br />
all 6500 range microprocessors.<br />
As far as the processor is<br />
concerned the whole of the<br />
computer memory is an extension<br />
of itself from which<br />
numerical values can be loaded<br />
(read) or sent (written).<br />
A good way of imagining<br />
memory is as a large, pigeon<br />
hole internal mailing system.<br />
Each box represents a byte of<br />
memory and can contain a<br />
value from zero to 255. Don't<br />
worry if you don't know how<br />
computers deal with numbers<br />
larger than 255, all will become<br />
clear later.<br />
Memory comes in two<br />
varieties Read Only Memory<br />
(ROM) and Random Access<br />
Memory (RAM). As the name<br />
implies ROM can only be read<br />
from but RAM can either be<br />
read from or written to if it is<br />
necessary to change its value.<br />
For example variables defined<br />
by a Basic program must be<br />
stored in RAM for two reasons.<br />
Firstly, because it must have a<br />
value written to it to start with<br />
and, secondly, because that<br />
value may change later on in<br />
the program.<br />
Processing<br />
Load and run Listing 1 to see<br />
how the processor operates.<br />
The program counter tells<br />
the processor where the<br />
current instruction is located in<br />
RAM/ROM memory. When<br />
commanded to execute a piece<br />
of machine code, the current<br />
value of the program counter is<br />
stored in a special reserved<br />
PRO6RAM: LISTING 1<br />
0<br />
180 L=0-0/16;60SUB200<br />
10 0013:60SU8360<br />
190 RETURN<br />
20 LLsPEEX(S+1)4PEEK(S+2)125 200 IF 09 THEN VS=CHRS(550.<br />
6<br />
)+VS;6010220<br />
30 LC20<br />
210 VS.RIGHTS(STRICL1pLEN(ST<br />
40 LN2PEEK(S+3)+PEEK(S+4)125 RS(L))-1)0$<br />
61PRINT"(CLR)(WHT)LIMEN;LN:" 220 RETURN<br />
(VW'<br />
230 LL=PEEK(S+LC+1)+PEEK(S+L<br />
50 LO.LNIGOSUB280:1FLCO0T Cf2)$256<br />
HEN50<br />
240 FLINO:IFLL.OTHEN LC=0:PRI<br />
60 A:S400<br />
NTNICYN)00 1<br />
70 PRINT<br />
1:0010 250 PRINT:00110:001PEEK(S+LCi.<br />
6EASE<br />
WAIT'<br />
270 3)+PEEK(S+LC+4)$256:IFLN=40T<br />
(YEL) 80 PIA+1:1FPEEK(A)21ANDPEEK( HENLC80:60T0270<br />
(DOWN A4.1)1.143THEN100<br />
260 PRINTI(DOWN)(WHT)LINPO.<br />
1(DOW 90 SOT080<br />
N)PL 100 PRINT"(UP) PRESS °<br />
N;a(CYN)°<br />
270 RETURN<br />
280 WEEK(PLC):GOSUB170<br />
110 6ET AS:IF A$O" THEN11 290 IF 00.2 AND FL.0 THEN PR<br />
0<br />
INTs(YEL)';<br />
120 SA-4<br />
300 IF CO.4 AND FL.0 THEN PR<br />
130 LL.PEEK(S4.1).0PEEK(S4.2)12 INTICLDLUPpFL.1<br />
56<br />
310 IF CO.CN THEN PRINT:C0=0<br />
140 LN=PEEK(64.3)+PEEK(S+4)12 320 IF FL.1 AND D>127 AND D<<br />
56:PRINT*(CLR)(WHT)LINE";LN; 203 THEN PRINP(GRN)<br />
':00.0:FL:0<br />
1LU)';:60T0340<br />
150 LO:LC+1:60SUB280:IFL000 VSe 330 PRINT (LB Vs";<br />
THEN150<br />
340 CORC04.1:IF S.H.C2LL-1 THE<br />
160 PRINT<br />
N 60SUB230<br />
:END 1<br />
350 RETURN<br />
170 00(LBL YS.":L=D AND 15:60SUD20 360 PRINT<br />
U)':LI6T<br />
1<br />
440—<br />
(OLR)<br />
•IO (DOWN)<br />
(DOWN)<br />
(<br />
area of RAM memory (the<br />
processor stack area) and the<br />
internal stack pointer is adjusted<br />
to point to the next free<br />
location in the stack. The start<br />
address of the new machine<br />
code routine is then placed<br />
into the counter. This value is<br />
then loaded into the address<br />
buffer which directs the data<br />
bus to the correct location.<br />
The data bus copies the<br />
information found in the given<br />
location and carries this back to<br />
the processor which is expecting<br />
a machine code operator.<br />
When this is evaluated in the<br />
instruction decoder it determines<br />
whether an operand or<br />
two will follow. Depending on<br />
the type of operator, any<br />
operands are evaluated and<br />
stored in the X or Y register or<br />
in the accumulator,<br />
If the operator is a finite<br />
address the address buffer is<br />
given this value and the data<br />
bus reacts accordingly. If the<br />
value is an offset address, the<br />
finite address has the value of<br />
the X or Y register added to it<br />
and this value is passed to the<br />
address buffer.<br />
All mathematical work is<br />
performed in the ALL,' which<br />
can access all of the registers<br />
which merely act as passive<br />
stores for transient values.<br />
The instruction decoder<br />
determines whether the data<br />
bus is reading or writing its<br />
encoded information and<br />
which internal register<br />
provides or accepts the<br />
information.<br />
When an RTS command is<br />
detected the last value to be<br />
stored on the stack is read into<br />
the program counter and the<br />
processor continues from<br />
where it was before it was<br />
asked to execute the routine.<br />
I have said that the processor<br />
only responds to machine<br />
code routines so how does it<br />
respond to Basic?
Down to Basics<br />
When the computer is<br />
switched on the program<br />
counter automatically loads<br />
the value it fi nds at VFW,<br />
which causes the processor to<br />
run the ROM machine code<br />
routine for power reset. This<br />
organises the memory ready<br />
for Basic and ends by printing<br />
READY on the screen_ The<br />
routine then loops around<br />
until kravho3rd input is<br />
After typing in or loading a<br />
program, the command RUN<br />
brings the Basic execution<br />
system into operation. To<br />
understand how this works we<br />
have to look at the way a<br />
program is stored in memory.<br />
Now enter Listing 2 to reveal<br />
the structure of a line of Basic.<br />
The program PEEKs the<br />
program storage area and<br />
writes the actual contents of<br />
the memory locations to the<br />
screen. The first screenful of<br />
information shows the first<br />
three lines. Notice how all the<br />
lines end with a zero byte<br />
which causes the operating<br />
system to start a new line when<br />
LISTing to the screen or a<br />
printer.<br />
The first four bytes of information<br />
have been coloured to<br />
highlight their special significance.<br />
The yellow pair of bytes<br />
gives the line number. Their<br />
actual value can be revealed in<br />
the following way:<br />
i) Write down the first of the<br />
two bytes and then write the<br />
second byte after it (e.g. 2C<br />
01 becomes 012C).<br />
ii) This is the hexadecimal<br />
value of the line number_ To<br />
convert it to decimal multiply<br />
the first figure by 4096,<br />
the second by 256, third by<br />
16 and the fourth by one_<br />
Then add the new values<br />
together. e.g. (0'4096) +<br />
(1*256)+(2*161+(12*1)=300)<br />
Remember that A=10. B=-11<br />
etc_<br />
The cyan coloured figures<br />
also reveal a two byte number<br />
in the same way but this<br />
number indicates the memory<br />
location at which the next line<br />
starts. These bytes are called<br />
the line link and they help the<br />
operating system to fi nd a<br />
particular line quickly when<br />
GOTO and GOSUB are<br />
executed or when DATA is<br />
being READ in. In other words<br />
the line links always point to<br />
the first byte of the next line<br />
link.<br />
After these first four bytes<br />
the details of the Basic instructions<br />
follow_ To make sense of<br />
DOWN)(DOWN)(DOWN)(R6HT) (RSHT<br />
)(RGHT)11 VIC 20 (3.510":PRI<br />
NT<br />
1)<br />
VIC 20 EXPANDED<br />
(D 370 PRINT"(DOWN)(RSHT)(R5HT)<br />
O(R6HT)3)<br />
C128<br />
WRSHTHRSHTHRSHT14)<br />
1<br />
C64<br />
N) 1NT"(DOWN)(RSHT)<br />
:PRINT (RSHTHRGHT15<br />
I:PRI<br />
1 C16/PLUS 4<br />
R380<br />
(DOWN) INPUT"(HOME)WHICH MACHIN<br />
E ( (1-5)"0<br />
I<br />
390 IFM>50RM(ITHENRUN<br />
H<br />
T<br />
H<br />
PROGRAM: LISTING 2<br />
R<br />
S<br />
H<br />
10 REM $t THIS WILL NOT WORK<br />
ON UNEXPANDED VICS<br />
T<br />
ORRY<br />
H<br />
20 REM tt FOR VIC-20 OWNERS<br />
R<br />
I HAVE LIMITED THE SCREEN SI<br />
E<br />
ZE TO 22 COLUMNS<br />
I<br />
30 REM IS OWNERS OF VIC-20S<br />
HSHOULD<br />
USE THE REAMED INSTRU<br />
TCT<br />
IONS<br />
) 401<br />
250<br />
F0ROIT033:READAS:NEXT<br />
60 ACW(RSHT1(RSHT) (RSHTHR<br />
GHTHRSHTHREIHTHRGHTHRSHT)<br />
(RGHT) (RSHIHRSHTHRGHT1(RSH<br />
THRGHTHRSHTI(RSHTHRSHTHR<br />
SHTHRSHT1'<br />
70 PRINT' (CLR)<br />
1BO<br />
FORA=1T015:READASIPRINTAC<br />
; $"Al:NEXT<br />
90 REM lit ON VIC-20 OMIT AC<br />
100 PRINT'(DOWN)(DOWN) (DOWN)<br />
PRESS SPACE-BAR"<br />
110 GETAS:IFASO" "THEN110<br />
120 PRINT<br />
1SIM<br />
ON VIC-20 USE PRINT"(<br />
CLR)'; (HOME)<br />
";:REM 130 60S118720:PRINT"(HOME)<br />
MO:PA:7 M1 I<br />
S:X<br />
140 RON(HOME) (DOWN)(DOWN)(D<br />
OWN)(DOWN)(DOWN)(DOWN)(DOWN)<br />
(DOWN)(DOWN)(DOWNI(DOWN)(DOW<br />
N)(DOWN)(DOWN)(DOWN)(DOWN)"<br />
150 D8S(1)=" (OFF) (RVS)<br />
:D8S(2)." (OFF) (RVS) 1<br />
:08 $(3)1<br />
0 160 81$a"(DOWN)(LEFT)(LEFT)(<br />
OFF) ( O(RVS)":808.<br />
1T)<br />
F(LEFT)<br />
(DOWN) F 170 ) O$(1)."41$40$40$<br />
( 180 LD$(2)." E F 4800.83480$<br />
R190<br />
0$(3)=<br />
+80P81$<br />
V1<br />
S(OFF)<br />
) ( R V S<br />
" ) " 4 . 8<br />
0 1<br />
400 IFMal THEN Sa4096:POKE36<br />
879,8:CN:7<br />
410 IFN.2THENS.4608:POKE3687<br />
9<br />
1420<br />
IFM=3THENSa7168:LIST0,1:<br />
8LIST4,1<br />
:<br />
430 IFM=4THENS:2048:P0KE5328<br />
C0,0:P0KE53281,0<br />
N<br />
440 REM<br />
a<br />
450 IFMa5THENS.4096:LIST0,1:<br />
7<br />
LIST4,1<br />
460 RETURN:REM<br />
•<br />
200 REWI(LEFT)(0P)t(LEFT)(<br />
UP11(LEFT)(UP)':ROSa<br />
. (UP) (LEFT) (LEFT)(UP) (LEFT)(UP) IL<br />
EFT)) (LEFT)"<br />
210 FOROIT06:RES(P)REWES<br />
(A-1)<br />
220 IF4=3THENRE1(3):RES(3).0<br />
I(LEFT)(UP) ':REI(0)=RES(0)0<br />
(LEFT) (UP)'<br />
230 RE;(0):RES(01401:NEXT<br />
240 FORA.ITO6IRES(A).RW(DO<br />
WN)(DOWN)(DOWN)(DOWN)(RGHT)"<br />
413+RES(A)+"(LEFT14-1<br />
1250<br />
RECO) aRS0 (DOWN) (DOWN)(<br />
:NEXT DOWN) (DOWN) (RGHT)<br />
1<br />
4CPRES(0<br />
260 MS(1)2<br />
1P)<br />
(LEFT11(UP)(LEFT)r-<br />
(---J(UP)<br />
1al4----1(DOWN)(LEFT)<br />
'-<br />
(LEFT) :11$(2) 1270 MI(0).<br />
I 1)(DOWN)(DOWN)(DOWN)(LEFT)<br />
( U<br />
(LE<br />
1 FTHLEFT) r<br />
" 280 0FORO0T02:MS(A).R0"(UP) 1<br />
0(UP)(UP)".fLEFTS(ACI,7) 0 "<br />
H:NEXT 4 D<br />
O290 MS(A) 8.17:FOROITO6<br />
W<br />
, N<br />
3))+"(DOON)"+RIGHTS(ACS,14)<br />
0310<br />
IFA=2THENBa16<br />
0 320 NEXT<br />
A330<br />
FORAa1T03:ACS(A)=LEFTI(A<br />
CCS(A),LEN(ACS(A))-ABS(INT(1-<br />
S<br />
4/01)1):NEXT<br />
( 340 MDOLEFTS(RS,14W(R6HT)<br />
(RGHT)":RO$2<br />
A<br />
YASOCW-1(DOWN)(LEFT)"<br />
1<br />
)<br />
350 1(DOWN) FORAa1T06:DPS.DPW01:NE<br />
.<br />
XTIABSOAPDPS+DPS:DPSaYAOD<br />
(LEFT)':<br />
L<br />
PS:YAS.ABS<br />
E<br />
360 ABS=LEFTS(RS,8)+ADS:DPS:<br />
F<br />
LEFTS(14,11)+DPSO(LEFT)-J":<br />
TWiSam(HOME)(DOONPOAS<br />
S370<br />
STS=LEFTS(AC41,91.04"<br />
( 380<br />
R390<br />
REMIt1113$1:11 MAIN PROS<br />
S 1811t311181.<br />
,<br />
B<br />
-<br />
3<br />
1<br />
1<br />
11<br />
Memory<br />
this note tht the green figures<br />
are tokenised keywords. Yes, a<br />
word like PRINT is converted<br />
into a single figure when the<br />
line is encoded but a variable<br />
such as SB would occupy two<br />
bytes corresponding to the<br />
CHR$ (or ASCII) values for<br />
each letter.<br />
Another point worthy of<br />
note is that arithmetic<br />
operators have a value which is<br />
at variance with their ASCII<br />
values. When words such as<br />
PRINT or arithmetic signs are<br />
used within quotes they are not<br />
given their special status and<br />
are just evaluated as normal<br />
ASCII characters.<br />
Slow Motion<br />
Now back to the question of<br />
how a program RUNs.<br />
First of all the operating<br />
system causes the processor to<br />
check if there is a program in<br />
memory. If the first two bytes of<br />
user RAM have a value then the<br />
system assumes a program is in<br />
residence. These two bytes are<br />
assumed to be a line link and<br />
are stored away for reference.<br />
The whole line up to the link<br />
location is copied into a special<br />
area of memory for analysis.<br />
This is the Basic buffer. Similarly<br />
the line number bytes are<br />
stowed away elsewhere in<br />
RAM.<br />
After the line number the<br />
system expects to fi nd a<br />
command of some sort. Evaluation<br />
of the token value representing<br />
the command<br />
(reserved word) is found by<br />
storing the value in the<br />
processor's accumulator and<br />
ornparing this value with a list<br />
of values stored in Basic ROM.<br />
It no match is found the line is<br />
scanned in the buffer by<br />
sequentially loading each byte<br />
into the accumulator to see if<br />
there is an equals sign. The<br />
system is also comparing the<br />
accumulator's value with the<br />
token values of various<br />
punctuation marks or looking<br />
for the end-of-line zero byte. If<br />
one of these is found instead of<br />
the equals sign an error is<br />
signaled_<br />
When such an error is indicated<br />
a SYNTAX ERROR IN LINE<br />
message is printed on the<br />
screen by loading each letter<br />
into the accumulator and<br />
moving it into screen display<br />
RAM. Next, the line number<br />
stored in RAM is dragged out,<br />
converted into a decimal value<br />
and printed after the message.<br />
If the system has detected a
variable being created it checks<br />
the syntax of the variable name.<br />
Then an area of RAM is used to<br />
store the value along with the<br />
variable name.<br />
If a reserved word has been<br />
found the position of the token<br />
value in the ROM list<br />
determines where the program<br />
jumps to in the Basic ROM to<br />
verify the correct syntax of any<br />
characters which follow the<br />
word until a colon or zero byte<br />
is discovered, For example, if<br />
the line was PRINT "HELLO",<br />
the PRINT token would be 99<br />
Hex, The system would then<br />
expect a variable name, a<br />
quotation mark, a colon or a<br />
zero. In this case it finds a<br />
space. which is ignored, followed<br />
by a quotation mark.<br />
The system then takes the<br />
ASCII code from between the<br />
quotes one by one. The ASCII is<br />
converted into a screen POKE<br />
value and this places the letters<br />
which spell HELLO on the next<br />
available screen location.<br />
When the end of a line is<br />
found the line link is retrieved<br />
from memory and the next line<br />
link is stored along with the<br />
new line number. The line is<br />
then copied into the Basic<br />
buffer and the line is scanned<br />
and interpreted as before.<br />
This process continues until<br />
there are no more lines left or<br />
an END or STOP command is<br />
located.<br />
Obviously with all this<br />
memory movement, evaluation<br />
and syntax checking going<br />
on the program runs a lot more<br />
slowly than a pure machine<br />
code program written<br />
specifically to create the same<br />
effect but it should be remembered<br />
that all programs are<br />
executed by the microprocessor<br />
in machine code, Basic is<br />
only a figment of the ROM's<br />
memory. When a language<br />
such as Logo or Pascal is loaded<br />
the Basic ROM is switched out<br />
in favour of the new machine<br />
code routines which interpret<br />
the syntax of the new language.<br />
Any language on a<br />
computer is a language of<br />
convenience rather like<br />
Margaret Thatcher and<br />
President Mitterand discussing<br />
policies through the medium<br />
of an interpreter. As we all<br />
know this not only lengthens<br />
the time taken for the<br />
discussion but can also lead to<br />
misunderstandings unless<br />
great care is taken.<br />
Next month we shall see<br />
how the processor helps to<br />
store numerical and string<br />
variables.<br />
400 FORL=1T04:60SU8690:PRINT<br />
RES(11):60SU81150:NEXT:REM LD<br />
907:LDA1120<br />
410 FORBL=7T00 STEP-I:YRS."(<br />
LEFT)-':RESTORE:BLS=RIGHTS(<br />
STRS(BL),I)<br />
420 IF8L=6THENXX=0:PA=3<br />
430 IFBL=5THENPA=0<br />
440 FORL=0102:605U8690:PR:NT<br />
RES(01):60SU81150:NEXT:REM SY<br />
A 0800,Y<br />
450 60SUB710ta="(R6H1)(R6HT<br />
)0a+BLS<br />
460 P0S=ACS(6)<br />
,0 "+CS:60SUB1190<br />
(LEFT)(LEFT)<br />
470 READW:606U81150:PRINTRES<br />
(0)<br />
480 PRINTMS(2):POS=MDP'080"<br />
+BLI:60SUB1190<br />
490 CS=<br />
1439313532<br />
20 (RVS) 1<br />
"+MI0 , 500 TS="(HOME)10804RISHTI(S<br />
S("13 81.12+1,2)<br />
TROL),1)4"(0001N)(LEFT)(LEF<br />
19133 :606U811<br />
THLEFTI(LEFT)(LEFT)a+RISHTS<br />
(51S,BL4.3)<br />
510 PRINT4BS:PO3=AES(4)+"20"<br />
:60SUB1190<br />
520 60SUB1000:PRIN<br />
-SUB10001READCS:60SUB1120<br />
RES(0):60<br />
530 PRINTa(HOMEHDOWN)<br />
540 P0S=1:606U81190<br />
550 PRINT"(HOME) (DOWNI(DOWN)<br />
POISHTS(ACS,BL+2);"<br />
560 609U8690:PRINTRES(I):605<br />
UB1150<br />
570 YPS="1(DOWN)(LEFT) 1(DOWN<br />
)(LEFT)1(DOWN)(LEFT)(LEFT)--<br />
1•:60SUB710<br />
580 CS="0<br />
1,1):IFEL=0THENC$<br />
+RIGHT 590 0 READW:60SUB1150:PR!NTRES<br />
S(STRII -1" (0)<br />
(BL-1) 600 FORIAT01:605U8690:PRINT<br />
RES(W):60SUB11601NEXT<br />
610 IFBL=OTHENREADAS,AS:XX=5<br />
014=7:60T0630<br />
620 READCS,0:606U81160<br />
630 606UB960:PRINTDPS:FORD=0<br />
TOXX310:NEXTIPRINTRES(0):NEX<br />
TBL<br />
640 60SU8690:PRINTRES(W):60S<br />
UB1150<br />
650 PRINT"(HOME)(DOWN)(DOON)<br />
(DONN)(DONN)(R6HT) (RGHT)READ<br />
Ya:XX=250<br />
660 POW(HOME)(DOWN)(DOWN)(<br />
DOWNI(DOWN)(DOWN)(R6HT)(R6HT<br />
I 1<br />
:<br />
6<br />
0<br />
6<br />
U<br />
12<br />
670 PRINTa(CLR)"<br />
680 END<br />
690 60SU81060:60SUB1100:READ<br />
CS:60SUE11120:FOROOT01:60SUB<br />
990:NEXT:READC$01<br />
700 RETURN<br />
710 PRINTYWYPS:6OSUB960:RE<br />
TURN<br />
720 PRINTIOBOO (C64) ______<br />
730 PRINT' I<br />
I<br />
740 . PRINT" ISYS491521 HRVS)<br />
Y RES (OFF)I"<br />
750 PRINT"<br />
760 PRINT' 1<br />
1 a<br />
I I<br />
770 PRINT' 1 I HRVS)<br />
X RES (OFF)la<br />
780 PRINT'<br />
a<br />
1<br />
770 PRINT" 1<br />
1'<br />
I I<br />
800 PRINT" 1<br />
ACC (OFF)1<br />
I IERVS)<br />
810 PRINT' L(RVS)<br />
----<br />
(OFF 820 PRINT" HRVS)SCREEN(OFF<br />
I RRVS) C000 (OFF)!<br />
830 PRINT' HRVSIP<br />
RDSRAM(OFF)I°<br />
840 PRINT' __ 1111VS)C<br />
OUNTER(OFF)1"<br />
850 PRINT" I 1<br />
a<br />
860 PRINT" 1 1 I<br />
la<br />
870 PRINT' (RVS) (OFF)<br />
----ERVS)ADDRESSIOFFI"<br />
880 PRINT'<br />
a<br />
890 PRINT' (RVS) (OFF)____<br />
900 PRINT' (RYS) DATA(OFF)I<br />
RRVS) DECODER (OFF)1<br />
910 PRINT' (RVS) BUS(OFFII<br />
920 PRINT" (RVS) (OFF) (R<br />
VS) (OFF) (RVS) (OFF)<br />
(RVS) (OFF)"<br />
930 PRINT (RVS) (OFF) (R<br />
VS) (OFF) (RVS) (OFF)<br />
(RVS) (OFF)"<br />
940 RETURN<br />
950 REM 11111 DELAY<br />
960 FORDOTOXX:NEXT<br />
970 RETURN<br />
980 REM IS1: DATA BUS<br />
990 FOR 8=1T03:60T01010<br />
Memory<br />
1000 FOR B=3TOISTEP-1<br />
1010 PRINTRW(R6HTI(RVS)<br />
CB) 1<br />
1020 0 FORC=1102:PRINT"(RSHT)(<br />
RVS)18$(8)D8S(B)D8S(B)140(8<br />
):NEXT<br />
1030 605U89601NEXT<br />
1040 RETURN<br />
1050 REM MI PC VALUE<br />
1060 READPS<br />
1070 POS=ACS(3)+<br />
+":60SUB11901PRINTN(RVS)"<br />
6<br />
(LEFT) PDS "+PS<br />
1080 PRINT/ISM:RETURN<br />
1090 REM 1111 MEMLOC<br />
1100 605U8960:PRINTMDSPS:RET<br />
URN<br />
1110 REM 3111 MEMCONT<br />
1120 POSOID14."(DOON)(R6HT)1<br />
M60901190 4.<br />
1130 PRINTMS(0):RETURN<br />
1140 REM MI DECODER<br />
1150 IFOITHENPRINTACS(10"<br />
1160 P0S=ACS(11)43:60SU81190<br />
1170 PRINTRECOMETURN<br />
1180 REM Mt FLASH<br />
1190 FORA=OTOPAIPRINT"(RVS)"<br />
P01"(0FFIN:60SUB960:PRINTPOS<br />
:609U0960:NEXT:RETURN<br />
1200 REM litt DATA<br />
1210 DATA0004,99,"STA 0<br />
11,0005,00,<br />
8,2 , 1<br />
1220 00', DATA2,20<br />
1230 2,C0 DATAC007,88,1EY " ,<br />
1,6 06,0<br />
1240 8,0 DATAC008,10,BPL,14009,<br />
FA,"(R6HT)(R6HTIORSHTI(R6HT)<br />
SFA<br />
1004'0<br />
,1 1250 DATA000A,60,"RTS a,<br />
1<br />
"(R 1260 DATACPU DEMONSTRATION,"<br />
6HT :2<br />
HOW I(R - SOW<br />
6HT !"<br />
tD0WNiCr.4. ) 0<br />
_ D<br />
Al ( D120<br />
1.7 RA<br />
, G7<br />
HY.:Q0E<br />
C H-<br />
DT<br />
- DATA'iDOWN:E wO4D<br />
LEAV.PAFO 4)<br />
.<br />
. A TD<br />
S:64.<br />
OF<br />
71Z:0<br />
AE<br />
C r.<br />
, I,07,07<br />
" .<br />
:..,S: ATA s1320<br />
C;<br />
DA<br />
REEN CUO o7<br />
.20.20.4 C(<br />
.A0 A[K:. :: A<br />
•<br />
—Cc A9.L 4 !<br />
, DA0. S,<br />
#.!.: 1.:: T<br />
: A
The event every Commodore<br />
user is waiting for . .<br />
&<br />
147<br />
o<br />
0<br />
n<br />
/<br />
n<br />
Champagne Suite and<br />
Exhibition Centre, Novotel,<br />
Hammersmith, London W6<br />
t<br />
-<br />
See the Amiga Village<br />
with its continuous<br />
demonstrations of the<br />
first wave of software<br />
n<br />
for the sensational<br />
machine<br />
Tickets-f3 (Adults),<br />
/2 (Children under<br />
16). Special mtes for<br />
group bookings (over<br />
10 in a party).<br />
SHOW HOTLINE:<br />
061-456 8835<br />
or write to:<br />
Seventh Official<br />
Commodore Show<br />
Tickets,<br />
Europa House,<br />
68 Chester Road,<br />
Hazel Grove,<br />
Stockport SK7 51W<br />
o11<br />
c<br />
l2 m Music Expansion System for<br />
6<br />
1<br />
Organised by<br />
Database Exhibitions<br />
featuring the UK launch<br />
of the fabulous Amiga<br />
Saturday<br />
1 Ma0<br />
y<br />
10am-6pm<br />
This is YOUR chance to see the very latest<br />
developments for the ENTIRE Commodore range<br />
Visit the 100-seat Show<br />
Theatre, where non-stop<br />
events will be held including<br />
music from top groups<br />
How to get there:<br />
Novotel London is right by the A4/M4 and is only two minutes from<br />
Hammersmith underground station (for the West End. City and<br />
aimort). For those bringing their own car, there is a large<br />
underground car park at the hotel.<br />
1111•110•1111•1•1•111111•111••••111•• OE IN MIIMINIE1<br />
111<br />
1111<br />
111<br />
Come to the show and<br />
enter the FREE DRAW<br />
1<br />
7<br />
111111111111ERE •<br />
M1 cootAtateltdow<br />
I 71 N 4 N %<br />
e The Commodore 128<br />
1 Compendium (Commodore<br />
1 St 7128k,<br />
cassette and four pieces<br />
PRIZE c of software worth UN_<br />
t<br />
o h<br />
i the Commodore 64 or 128 (5<br />
m11C1<br />
ooctave<br />
keyboard, sound<br />
Al] you need to do is to cut this coupon out and<br />
hand it in at the door when you arrive.<br />
Name<br />
Address<br />
1<br />
PRIZE expander and sound studio<br />
m lsoftware)<br />
worth i:150.<br />
Tel No<br />
d<br />
IbmoonmolomenumnimmoommommomminimmmYdl<br />
o<br />
i<br />
d d
the insides of the<br />
Commodore Amiga.<br />
Whenever the word 'Amiga' is<br />
mentioned, someone will have<br />
something to say about Commodore's<br />
wonder-baby. At first all that was said was<br />
how wonderful this machine was, and<br />
how it would take the world by storm;<br />
gradually, however, people saw the Atari<br />
520ST, at less than half the price — and<br />
started wondering.<br />
I have owned an Amiga for nearly six<br />
months now, and in that time I think it is<br />
safe to say that I have formed a very<br />
personal view about a machine which, if<br />
used to its potential, can really show the<br />
true power of a personal computer.<br />
What makes the Amiga so different<br />
from all the other personal computers is<br />
its sheer versatility. Being a true multitasking<br />
machine means that it can do<br />
almost as many things as you want<br />
simultaneously, enabling you to jump<br />
from one task to another with the<br />
knowledge that all the other tasks will<br />
continue.<br />
Hardware<br />
To successfully explain the Amiga you<br />
must really split the hardware into<br />
different sections; specifi cation,<br />
workbench, graphics, sound, and<br />
peripherals. Although this cannot cover<br />
everything to do with the Amiga, it should<br />
give you a valuable insight into this<br />
machine.<br />
Specification<br />
The specification given here is of the<br />
American Amiga, when launched in<br />
Europe it will probably come with two<br />
disk drives and 512K as standard.<br />
Basically the components of the Amiga<br />
are:<br />
Motorola MC 68000 16/32 bit main<br />
processor.<br />
256K bytes of internal RAM, expandable<br />
to 512K,<br />
256K bytes of ROM containing a realtime,<br />
multi-tasking, operating system with<br />
sound, graphics and animation routines.<br />
Built in 3" double sided disk drive.<br />
Expansion port for up to 3 external disk<br />
drives with either 3<br />
1<br />
sided.<br />
/ Fully programmable serial port.<br />
Fully programmable parallel port.<br />
Two 2 button mechanical mouse.<br />
Two ' o9 r pin D 5type y controller ports.<br />
4Detached<br />
89-key keyboard with numeric<br />
" keypad, , 10 function keys and cursor<br />
section.<br />
d o u b l<br />
Ports for analog or digital RGB output, as<br />
e<br />
well as composite video.<br />
Left and right stereo audio output ports.<br />
Expansion connector that allows you to<br />
add RAM, hard disks, or other<br />
peripherals.<br />
Workbench<br />
At present, to start up an Amiga system,<br />
you must first insert a disk that loads the<br />
operating system into write-protected<br />
RAM. Although this does take time, it<br />
means that in the future, when new<br />
versions are released, you will not have to<br />
mess about switching chips around.<br />
Having done this you will be requested to<br />
insert what is called a Workbench disk.<br />
This is the program that makes the Amiga<br />
so easy to use, and enables a complete<br />
beginner to start harnessing the<br />
machine's power.<br />
Once in the Workbench, most people<br />
will immediately recognise the<br />
Macintosh-esque windows and icons,<br />
however this time they are in colour!<br />
Workbench is provided for two real<br />
reasons; firstly it lets you control the<br />
computer's functions via a mouse, and<br />
secondly it lets each individual owner<br />
customise his Amiga. Using a program<br />
called Preferences, you can choose the<br />
colour of text, the colour of the<br />
background, how sensite you want the<br />
mouse to be, and also redefine the cursor<br />
which indicates the mouse position. On<br />
the more technical side, Preferences<br />
allows you to set baud rates, and redefine<br />
the bit images required for your printer.<br />
The Workbench screen, when<br />
operated, displays one large window,<br />
within which are a variety of draws, On<br />
selecting a draw with the mouse, a new<br />
window will appear, giving you another<br />
selection of Icons to choose from. Icons<br />
can best be described as small pictures<br />
which appear on the screen representing;<br />
tools, projects, disks, draws and the<br />
Trashcan. Windows let you see the<br />
contents of projects, drawers, disks, and<br />
the Trashcan. Windows can be altered<br />
both in size and position.<br />
On the current version of the<br />
Workbench disk (v1.1) there are four<br />
draws — Demos, Utilities, System and
the detailed stor<br />
Empty. Demos are three different<br />
programs which show well how efficient a<br />
multi-tasker, the Amiga really is, Utilities<br />
gives you an on-screen calculator and<br />
notepad, a la Mac, and System prod uces a<br />
disk copier. The Empty draw allows you to<br />
create a personal file for the Workbench<br />
disk.<br />
To make the most of the system, it is<br />
preferable to create your own<br />
Workbench disk to suit the type of<br />
application you will be running, I, for<br />
instance, would rather use the keyboard<br />
than the mouse, and have my Workbench<br />
set up accordingly.<br />
Graphics<br />
If one feature makes the Amiga stand out<br />
in a crowd more than any other it has to be<br />
the graphics. What makes this, and the<br />
sound, so outstanding are the three<br />
dedicated chips designed by Jay Miner,<br />
founder of Amiga. These chips,<br />
affectionately called AGN US, DENISE,<br />
and PAULA, effectively allow the main<br />
CPU to do other things while they take on<br />
specific roles, such as controlling graphics<br />
and sound.<br />
In exact terms, the Amiga has four<br />
resolutions; 320 * 200, 320 * 400,640 • 200,<br />
and 640 • 400. However, the two modes<br />
that involve the use of 400 vertical pixels<br />
are more difficult to control as it requires<br />
a special feature called Interlacing. This<br />
allows the programmer to utilise the<br />
unused spaces to double the vertical<br />
resolution.<br />
In each different mode you also have<br />
different amounts of available colours. In<br />
total the Amiga has a palette of 4096<br />
colours, and in low-resolution you can<br />
put up to 32 different colours onscreen at<br />
once. However, the higher resolution<br />
modes have correspondingly less<br />
available colours. One clever trick that<br />
can be used in certain situations however<br />
is called HAM (Hold And Modify). This<br />
method allows all 4096 colours to be<br />
displayed on screen simultaneously,<br />
while only sacrificing 48K. By producing<br />
this quality of colour resolution you can<br />
produce pictures of a standard as yet<br />
unsurpassed on a personal computer.<br />
One word that will be recognisable to<br />
almost all of you is sprites. The Amiga can<br />
cope with up to eight sprites on screen at<br />
once, each of which can be as tall as is<br />
required, although only 16 pixels across.<br />
For animation purposes the Amiga also<br />
has something called a Blitter (Block<br />
Image Transferrer), and although this is by<br />
no means limited to graphics, it can be<br />
used to move large amounts of graphics<br />
data around the screen at amazing<br />
speeds, creating some outstanding<br />
effects.<br />
It is features such as the colour palette,<br />
as well as the Blitter, that make it obvious<br />
what potential the Amiga has as a graphics<br />
machine.<br />
Sound<br />
To complement the Amiga's graphics, it<br />
comes with a dazzling potential for sound<br />
generation. Controlled by the Paula chip,<br />
it can produce stereo output through the<br />
left and right external sockets, and<br />
without too much difficulty, can produce<br />
sounds to rival some more expensive<br />
synthesisers.<br />
The Amiga provide5 the user with four<br />
separate sound channels, each of which<br />
can be used to carry a wide range of<br />
sounds, they do not have to be<br />
monophonic. By using digital sounds<br />
and envelopes, the Amiga is quite capable<br />
of producing sounds which have been<br />
sampled, and then converted to the<br />
correct format, only to reproduce them<br />
perfectly later.<br />
As well as producing excellent quality<br />
sound, the standard Amiga can produce<br />
quite breathtaking speech, simply by<br />
using simple commands, thus narrating<br />
software packages are no longer a thing of<br />
the past!<br />
Peripherals<br />
If you want a machine that will grow as a<br />
system, then the Amiga certainly has the<br />
potential. With its plethora of ports (I), it<br />
should be possible to interface almost<br />
anything to this machine, with the right<br />
software,<br />
Printers are well provided for in the<br />
Preferences program, with most popular<br />
makes such as Epson, Diablo,<br />
Commodore, and others all having<br />
software already written to take<br />
advantage of the graphics,<br />
Modems too are easy to rig up, with a<br />
totally programmable serial port, it should<br />
just be a question of plug in and go. I am<br />
currently running a 1200 baud modem<br />
with no troubles.<br />
Conclusion<br />
Although I have only managed to touch<br />
the surface of what the Amiga is really<br />
capable of, it is clear to me that, lilt is<br />
marketed properly, this machine could<br />
succeed by creating a market, rather than<br />
fitting in as a run of the mill PC,that would<br />
be a real shame!
Gareth Thomas brings<br />
The Mic Loader<br />
MICROFILE64 IS A COMPLETE<br />
database creation and<br />
management system for the<br />
C64. It consists of a suite of<br />
three programs, the fi rst<br />
IISE<br />
program is mainly a machine<br />
code loader but it also carries<br />
out 'once only' operations such<br />
as setting up the SID and VIC<br />
chips etc. for the main pro-<br />
PROGRAM: MF64.M/C<br />
0 REMESPC2IISSIIIIUMISIII<br />
2020 DATA 51,240,45,201,4,<br />
240,8,201,5,240,1235<br />
2030 DATA 4,201,6,208,9,133,<br />
grams, and then auto-runs the<br />
254,169,1,133,1118<br />
management program. The<br />
management program consists<br />
of shell-metzner sorting routines,<br />
a very powerful data<br />
10 REM IE8PC21MICROFILE64<br />
N/CCSPC2A<br />
20 REM ItSPC6NER1.0ESPC7II<br />
2040 DATA 203,76,72,235,165,<br />
214,201,1,208,7,1382<br />
2050 DATA 169,2,133,214,76,<br />
search and edit system and a 30 REM I ICI 1985 ETHOMAS 72,235,201,23,208,1333<br />
unique data access method for<br />
tape and disk. The third<br />
program is the format program,<br />
this allows the user to design a<br />
complete screen layout for the<br />
input of data using any of the<br />
available colours, rvs video,<br />
graphics characters and even<br />
the fullscreen editing facilities<br />
of the 64. Then by using a sprite<br />
cursor and an overlayed popup<br />
menu, it defi nes the<br />
40 REM<br />
50 :<br />
60 REM LOCK INTO CHARACTER<br />
SET 2<br />
70 PRINT CHRSII4ICHRSI8)<br />
80 REM BLACK SCREEN<br />
90 POKE 53280,0:POKE 53281,0<br />
100<br />
120 PRINT<br />
2060 DATA 249,169,22,133,214,<br />
76,72,235,169,127,1466<br />
2070 DATA 141„220,96,120,<br />
169,67,141,143,2,1099<br />
2080 DATA 169,202,141,144,2,<br />
88,96,120,169,72,1203<br />
2090 DATA 141,143,2,169,235,<br />
141,144,2,88,96,1161<br />
2100 DATA 169,185,32,210,255,<br />
32,228,255,240,251,1857<br />
parameters affecting each of<br />
the fields i.e. length. datatype,<br />
input position and name.<br />
The mic is placed above<br />
Basic in the 4K block at SC000<br />
from $CA43 to SCAC5. So<br />
taking no Basic memory. The<br />
m/c is wedged between the<br />
stored screen definition which<br />
is split into two; the screen<br />
memory from $C000 and the<br />
colour 'memory from SCCO5<br />
1 (WHITE,RVSON,DOWNfl<br />
(CLEAR LOADING DATA<br />
PTA8II2<br />
130 051779:LNa2000<br />
I" 140 READ 8:IF 8.(256 THEN POK<br />
E A,8:12T+804+1:6OTO 140<br />
150 IF T2B THEN Tt0:00L144.10<br />
:SOTO 140<br />
160 IF B2999 THEN 190<br />
180 PRINT TA819)<br />
. ERROR IN LINE<br />
2110 DATA 170,76,206,202,165,<br />
251,197,252,240,241,2000<br />
2120 DATA 230,251,169,157,32,<br />
210,255,138,32,210,1684<br />
2130 DATA 255,169,185,32,210,<br />
255,138,96,133,254,1727<br />
2140 DATA 201,133,240,249,<br />
201,134,240,245,201,135,<br />
1979<br />
2150 DATA 240,241,201,13,240,<br />
using mic routines the screen<br />
can be stored and recalled<br />
instantly for updating the file.<br />
Being stored in this block<br />
means that over 28.5K is free for<br />
EDOWN3DAT<br />
190 POKE 1 650,128:S1)254272<br />
A IVC253248 LN:STOP<br />
200 REM SET UP SID AND VIC<br />
CHIPS<br />
237,201,20,208,21,1622<br />
2160 DATA 165,251,240,197,<br />
198,251,198,251,169,29,<br />
1949<br />
data. This is allocated to 200 210 FOR LtSD TO 50+24 2170 DATA 32,210,255,169,20,<br />
records of up to nine fields<br />
each one being allowed a maximum<br />
length of 255 characters<br />
this number of records could<br />
easily be altered up to two or<br />
three times more and although<br />
the maximum field length is 255<br />
this would probably never be<br />
used and is set at this to impose<br />
no constraints on the user.<br />
Since string storage is dynamic,<br />
the field length could be set to<br />
this and it would not<br />
immediately be allocated 255<br />
bytes. Details on how to extend<br />
the program will be given later<br />
in the documentation).<br />
The leader itself stores 5<br />
m/c routines. They are:<br />
1. Interrupt driven routine<br />
($CAA8 - CB43): To control the<br />
:POKE L,OINEXT<br />
220 POKE SD+24<br />
1230<br />
POKE SP5,64:POKE SI:14.6,64<br />
15 240 POKE SP2,64:POKE SD+3,2<br />
250 POKE SD,21POKE SD+1,20<br />
260 POKE 2040<br />
270 1 POKE VC4.21,0:POKE VC+1,58<br />
13:POKE<br />
280 POKE VC4.39,1<br />
V290 REM C , AUTO-RUN 2 4 MAIN PROBRAM<br />
310 POKE 631,1311POKE 198,1<br />
NEW<br />
320<br />
330 REM NC DATA<br />
2000 DATA 165,203,170,173,<br />
141,2,201,1,240,9,138,1443<br />
2010 DATA 201,45,240,54,201,<br />
47,240,50,138,201,1417<br />
32,210,255,76,182,1441<br />
2180 DATA 202,201,32,48,176,<br />
201,95,16,172,165,1308<br />
2190 DATA 253,201,1,208,16,<br />
138,201,32,240,170,1460<br />
2200 DATA 201,65,48,157,201,<br />
91,16,153,76,182,1190<br />
2210 DATA 202,201,2,208,33,<br />
138,201,43,240,150,1418<br />
2220 DATA 201,47,240,146,201,<br />
42,240,142,201,45,1505<br />
2230 DATA 240,138,138,201,46,<br />
240,133,201,48,48,1433<br />
2240 DATA 14,201,58,16,10,76,<br />
182,202,201,3,963<br />
2250 DATA 240,236,76,182,202,<br />
you your own type-in<br />
C64 Database.<br />
16<br />
Basic input routine and use the<br />
full cursor editing. This has<br />
three purposes: to stop the<br />
cursor scrolling the screen by<br />
denying it access to the top and<br />
bottom lines; de-activate the<br />
colon and comma keys while<br />
allowing their shifted, controlled<br />
and CBM functions to<br />
be registered: allows the<br />
INPUT routine to be exited by<br />
pressing function keys as well<br />
as RETURN.<br />
2. Input routine (SCAM -<br />
SCB43): This routine simulates<br />
the Basic input routine but<br />
improves on it by adding: the<br />
ability to preset the maximum<br />
number of characters to be<br />
entered; allowing only certain<br />
data to be entered which can<br />
be preset and can be of four<br />
types - alphanumeric, digit.<br />
numeric or for any other<br />
numeric data being entered it<br />
is possible to specify a particular<br />
amount i.e. less than„<br />
greater than or between.<br />
3. Cursor. AT(SCB46 - SCB72):<br />
this simulates the PRINT AT<br />
command found in many other<br />
Basics. It uses the kernal PLOT<br />
routine at SHFCland a few Basic<br />
ROM calls to allow parameter<br />
passing of the row and column<br />
positions from the SYS call.<br />
4. Screen sdlore (SCB73 -<br />
SCBBB): This stores a copy of<br />
the screen layout defined by<br />
the format program (except for<br />
the top and bottom rows). It<br />
stores the screen memory at<br />
$CCO5, the colour memory at<br />
SC000.<br />
5. Screen recall (SCBBC -<br />
SCC04): This recalls a copy of<br />
the screen stored by the<br />
routine above.<br />
If you wish to use the system<br />
on disk then the three<br />
programs must be saved under<br />
the fi lenames MF64.M/C,<br />
MF64. MAIN and MF64. FORM<br />
in order to maintain the compatibility<br />
with the routines<br />
used in the main arid format<br />
programs. Also certain lines<br />
need to be altered in the<br />
machine code loader so that<br />
the main program is auto-run<br />
correctly, this is shown below.<br />
Type in the following lines,<br />
with the m/c loader in<br />
memory:
76,173,202,32,121,1540 145,251,177,20,145,163,<br />
IDOWN2P:INPUPIRIEHT,SEl<br />
2260 DATA 0,32,253,174,32, 1770<br />
PROGRAM: MF64.MAIN<br />
NTER FILENAME.."04<br />
138,173,32,247,183,1264 2370 DATA 200,192,152,208,<br />
175 IF F4="sOR LEN(F4))16 TH<br />
2270 DATA 165,20,201,40,144, 243,96,169,40,133,251,1684<br />
0 REM $$$$$$$$$$$$$$$$$$$$<br />
EN 170<br />
3,32,72,178,72,927<br />
1 REM ICSPCEMICROFILE64<br />
2380 DATA 169,4,133,252,169,<br />
176 IF FWENTHEN PRINT'<br />
2280 DATA 32,253,174,32,138,<br />
ESPC431<br />
5,133,253,169,204,1491<br />
ICLEARI":60TO 100<br />
173,32,247,183,165,1429 2390 DATA 133,254,167,133<br />
3 REM CSPC2]MAINISPC2l<br />
190 PRINT<br />
2290 DATA 20,201,25,176,237,<br />
PROGRAMISPCM<br />
1 20,169,192,133,21,1224<br />
. :ON VAL(64)60SUB 1000,<br />
170,104,168,24,32,1157 2400 DATA 169,40,133,163,169,<br />
4 REM $ (C)1986 B.THOMAS 3<br />
CCLEAR 1110,1200,1300,1400<br />
2300 DATA 240,255,96,169,5,<br />
5 REM 111111311111:11MIS<br />
216,133,164,160„1347<br />
I° 1PRINPICLEARPI6OTO 100<br />
133,251,169,204,133,1655<br />
6 1<br />
2410 DATA 177,253,145,251,<br />
200 :<br />
2310 DATA 252,169,40,133,253,<br />
15 1<br />
177,20,145,163,200,208,<br />
900 REM OUTPUT FILE TO DISK<br />
169,4,133,254,169,1576 1739<br />
17 PRINT'ICLEAR,00WN4,WHITE 1000 OPEN 15,8,15,"10°<br />
2320 DATA 40,133,20,169,216, 2420 DATA 245,230,252,230,<br />
uTAB(9)'441ISPC,SM,SI,SC, :OPEN 2,8,2,<br />
133,21,167„133,1034 254,230,21,230,164,166,<br />
SR,SO,SF,SI,SL,SEl64 Ill'<br />
1:GOSUB<br />
1350:IF EI•63 THEN<br />
2330 DATA 163,169,192,133, 2022<br />
:PRINT TAMPEDOWN2,<br />
01"44.0,<br />
1000<br />
164,160„177,253,145,1556 2430 DATA 252<br />
GREENIVER4.2(C)1986ISPC, 1005 6,0* IF El THEN RETURN<br />
2340 DATA 251,177,20,145,163, 1 177,253,145,251,177,1925<br />
SEARETHESPC,STMOMAS 1010 60SUB 1600:CLOSE 15<br />
200,208,245,230,252,1891<br />
224,7,20<br />
2440 DATA 20,145,163,200,192, 20 PRINT TABOPEDOWN3 :RETURN<br />
2350 DATA 230,254,230,21,230,<br />
I YELLOW,SPC<br />
8,231, 152,208,243,96,1419<br />
1020<br />
164,166,254,224,7,1780 2450 DATA 797<br />
RYSON, 1SE,SYl<br />
IST,SOl ISC,SO,SN, 1030 REM INPUT FILE FROM DISK<br />
2360 DATA 208,231,177,253,<br />
• SA,SN,SYI<br />
ST,SI,SN,SU,SE,SPCl" 1110 OPEN 15,8,15,<br />
(SK IAT=52038:WAIT 198,1:RC21 1 :OPEN 2,8,2,<br />
25<br />
310 PRINT' (WO (DOWN) MINH_ you've typed this in, the next I<br />
10' 1:60SUB<br />
1350:IF El THEN RE<br />
°ADIDAS 00 "064. PIAIN•CHRS( step is to design the screen<br />
26 REM MAIN LOOP TURN 01<br />
30 GOSUB 9500:IF 1108 THEN CLR<br />
34) ',8<br />
1120<br />
1<br />
GOSUB 1700:CLOSE 15<br />
A cursor will start flashing 108<br />
14<br />
44-0,601<br />
:RETURN<br />
320 POKE631,13:POKE632,13 near the top left, you can move<br />
35 ON ii+1 GOSH 6000,100,30<br />
1PO 330 PRINT '(DOWN) (DOWN) (DOWN it anywhere on the screen<br />
1130<br />
"<br />
1 1800,2500,3100,3500,8000, 1140 REM OUTPUT FILE TO TAPE<br />
KE1 1 tDOWN)RUCHOPIE)<br />
4490,5825<br />
98, 1 ; :NEN<br />
of the C64. Care should be<br />
1200 OPEN 2,1,1,F1160SUB 1600<br />
40 IF 09 AND RF.0 THEN CLR :RETURN<br />
2<br />
u s i n<br />
taken though, since use of the<br />
The Format Program insert can cause the whole :RC1<br />
g<br />
1210<br />
l<br />
screen to move down a line<br />
50 6070 30<br />
t 1220 REM INPUT FILE FROM TAPE<br />
aThe<br />
format h program can be run which can mess up your design.<br />
55<br />
e by selecting option eight of the Apart from colon and comma<br />
1300 OPEN 2,1,0,F4160SUB 1700<br />
y<br />
fmain menu u of microfile64 (this keys which cause the awful 56 REM DATA I/O S/R :RETURN<br />
o<br />
lis discussed l fully in the section "?Extra ignored" message, all 100 PRINT TAB:12)'[SD,SA,ST, 1310<br />
udealing<br />
e d<br />
with<br />
i<br />
the mai<br />
SA] (61)/CSOl ISM,SE,SN, 1320 REM READ DISK ERROR STA<br />
tn<br />
program).<br />
t<br />
o<br />
i<br />
t hThe n<br />
e r format program including graphics, also colour Stir:PRINT TAB(12)'ICT131<br />
transfers data to the main and reverse can be used in the<br />
TUS<br />
_c<br />
g<br />
h a r a c t e r s<br />
1:PRINT<br />
TABi9PIDOWNll -<br />
program by saving the data as a usual way. All this means that<br />
1350 INPUT415,EI,M4<br />
a<br />
ffile r<br />
called<br />
e<br />
u "FORMAT" n<br />
which pretty nifty displays can be ISPC,SUAVE TO DISK. :IF EI(20 THEN EIO:RETURN<br />
acan c be c<br />
t loaded c<br />
i<br />
e into p the t main designed if time and care is 120 PRINT TAB(9)'IDOWN)2 -<br />
1370 PRINT TAB(6)<br />
a<br />
oprogram b<br />
n<br />
lagain s<br />
e by using option taken.<br />
(SPC,SIJOAD FROM DISK.' 1 RVSON,SPC,SEISK ERROR<br />
eight. The screen data is not I n the design screen mode, :PRINT TAB(9)<br />
actually saved since this could the top line shows the user the<br />
CDOWN, ISPC,00WN2r:PRINT TAB(5)<br />
1<br />
only be lost if the computer is job for each of the function<br />
ISPC,SEAVE TO TAPE. El'- 914:60SUB 9800<br />
switched off as it is stored keys; Fl (Exit) allows you to 140 PRINT (DOWN)3 TAB(9) 1380 IF E1063 THEN CLOSE 2<br />
above Basic. The transferring of start designing the database 1 -ESPC,SUOAD<br />
FROM TAPE.'<br />
:CLOSE 151WAIT 198,1<br />
data has to be carried out this again from the beginning if you (DOWNl4 :PRINT TAB(9)<br />
:RETURN<br />
way since no CHAIN command made a mistake; F3 (Clear) will<br />
- . CSPC,SE1XIT.CDOWN31<br />
exists in CBM Basic to control clear the screen to allow you to<br />
1390 REM IF FILE EXITS CONFI<br />
150 60SUB CDOWNl5 5800:IF 6401"OR 6<br />
variable storage when a new start designing the screen<br />
RM SAVE<br />
program is loaded in. l a y o u t again without having to<br />
0"5 -<br />
1400 PRINT'EDOWN2l'ISRPTO<br />
When the program is run, go back to the beginning; F5 160 1IF<br />
648<br />
REPLACE OR '[SC]<br />
you are asked how many fields (Next) skips to the next process 1170<br />
TH PRINT'ICLEAR,DOWN,RIGHT, 'TO CHANGE FILENAME F<br />
you will need from one to nine of defining the fields and 5"THEN EN SENTER '(SE]' TO EXIT<br />
(this maximum of nine could recalls a previously defined<br />
be increased easily if necessary. screen, this is useful if you wish<br />
R 1E<br />
T<br />
The method is described later). to redesign the parameters for program U 5R<br />
Nis<br />
more complex, this you reach this section, the first<br />
A field is an individual data the database without having to is where 0 the parameters thing to notice is the fast<br />
item within a record, for design the screen layout again_ affecting each field are de- flashing cursor in the top left -<br />
example, if you wished to On ce you've fi nished fi ned. This is in four steps. First move this cursor to where you<br />
design a layout for a club designing your screen, press the input position, secondly wish each field to be input in<br />
membership booking system RETURN. The new screen will the field datatype, thirdly the turn, pressing RETURN to store<br />
you might need four fields; be stored instantly, wiping over input length and last of all the the position. In the top right of<br />
name, address, telephone and any previous definition_ n a m e of the field, this is the screen the number of the<br />
membership number, After T h e next part of the repeated for each field, When fi eld currently being defined is<br />
17
displayed. If we take the<br />
example of the club membership<br />
system, then the display<br />
might look something like this:<br />
Club Membership System<br />
Name -<br />
Address -<br />
Tel. no -<br />
Membership no. -<br />
Then, to define the input position<br />
for 'Name', you might<br />
move the cursor to the column<br />
next to the dash after *Name'<br />
and then store the position by<br />
pressing RETURN.<br />
After the input position has<br />
been set an overlayed menu<br />
will come down (if you've just<br />
typed the program in it's not a<br />
bug). This is where you select<br />
the type of data the field will<br />
hold, there are four types;<br />
alphabetic, numeric, digit and<br />
other. These options are on the<br />
menu plus another five, The<br />
extra ones are used to limit the<br />
values of data entered and all<br />
conform to the rules for<br />
'DIGIT' data;<br />
1 ALPHABETIC - alphabetic<br />
characters only<br />
2 NUMERIC - 0 to 9 plus+,-,/,*<br />
and point<br />
3 DIGIT - 0 to 9 only<br />
4 ANYTHING - any keyboard<br />
character<br />
5 BETWEEN between but NOT<br />
equal to two numbers<br />
6 < than<br />
7 > than<br />
8 < than or = to<br />
9 > than or = to<br />
To select datatype move the<br />
blue cursor with the up/down<br />
cursor key to the required type<br />
and press RETURN. If you<br />
select any datatype above four<br />
then you will be asked to input<br />
the relevant values.which must<br />
be conformed to, in the<br />
window at the bottom of the<br />
menu. If you have made a<br />
mistake in selecting the input<br />
position, pressing 'E' will return<br />
back to this part without updating<br />
the field pointer to the<br />
next field, so that you may redefine.<br />
The third parameter to<br />
define is the length_ After the<br />
datatype menu has disappeared,<br />
a cross cursor will<br />
appear next to the position you<br />
defined for the input, with a<br />
reverse video representation of<br />
the field number in the exact<br />
location. Holding down any<br />
key will move the cursor which<br />
will leave a trail of dots behind<br />
it, each representing one<br />
1410 GET GS:IF 6$2"R"THEN 14<br />
50<br />
1420 IF ESOPCITHEN 1410<br />
1430 60SU8 1500:IF FWE'THE<br />
N EI.IIRETURN<br />
1440 CLOSE 2:CLOSE 15:RETURN<br />
1441 REM SCRATCH OLD FILE<br />
1450 PRINT115,<br />
1 :CLOSE 2:CLOSE 15:RETURN<br />
50: 1451<br />
11530<br />
REM SAVE FILES<br />
41 1535 REM BET DATATYPE<br />
1600 GOSS 9800:PRINT<br />
1 RI6HT,SF1ORMAT OR DATA'<br />
1601 1DOWN2, GET 6$:1F 6$.1"THEN 16<br />
30<br />
1602 IF 6$0<br />
11603<br />
REM SAVE FORMAT<br />
F"THEN 1609 PRINT02,FO:PRINT#2,7<br />
11610 6FOR 06.0 1TO<br />
6<br />
:FOR H.0 TO FD<br />
:IF 8$(6,10."THEN 8$16,<br />
H1."<br />
1615 PRINT12,86(6,H1INEXT<br />
:NEXT<br />
1620 REM SAYE SCREEN LAYOUT<br />
1621 SC.49152:C0.52229<br />
:FOR I.SC TO SC+919<br />
IPRINT62,CHRSCPEEK(I)1CHR<br />
CPEEK1C0.11-SC)1i<br />
1622 NEXT:CLOSE 2:RETURN<br />
1623 t<br />
1624 REM SAVE DATA<br />
1630 PRINT12,1":PRINT42,RC<br />
1631 FOR 6=1 TO RC-1<br />
:FOR H=0 TO FD<br />
1PRINT112,AC4,6::NEXT:NEXT<br />
:CLOSE 2:RETURN<br />
1632<br />
1633 REM INPUT FILES<br />
1700 IF RF THEN 1720<br />
1701 REM SAYE FORMAT<br />
1709 INPUT02,FD:INPUT112,MI<br />
1711 IF MSOINTHEN PRINT'<br />
1DOWN3,RIGHTZI ESHATA<br />
TYPE MISMATCH I I"<br />
:WAIT 198,1:CLOSE 2:RETURN<br />
1712 HSU 9980:FOR 6.0 TO 6<br />
:FOR H.0 TO FD<br />
:INPUT12,11$(6,H::NEXT:NEXT<br />
1715 REM INPUT SCREEN LAYOUT<br />
1716 SC=491521C0.52229<br />
:FOR I.SC TO SC+919<br />
:BET112,ACIF A$<br />
01 .CHRS(0)<br />
1717 THEN POKE I,ASCCACIGET02,A$<br />
A:IF AS."THEN l AS=CHRS(0)<br />
1718 POKE CO+I-SC,ASCCAI:<br />
INEXT:RF.1:CLOSE 2:RETURN<br />
1719 REM INPUT DATA<br />
1720 INPUT112,M$<br />
18<br />
1721 IF MS(PD"THEN PRINT'<br />
EDOWN3,SPC11 ICSDI<br />
ATA TYPE MISMATCHI t"<br />
:WAIT 198,1:RC=1:CLOSE 2<br />
:RETURN<br />
1722 INPUT#2,RC:FOR 621 TO R<br />
C-11FOR H.0 TO FD<br />
:INPUT#2<br />
1:CLOSE<br />
2:RETURN<br />
1723<br />
ACH,<br />
1724<br />
61:NEXT:<br />
REM UPDATE S/R<br />
1800<br />
NEXT<br />
PRINTIELEARP:EF.0<br />
:IF RC.200 THEN SYS AT,6,<br />
12:PRINT"CSN10 MORE ROOM<br />
FOR DATA':WAIT 198,1<br />
:RETURN<br />
1810 PRINT'1HOME,C7,RVSON,<br />
SPC,WHITUF1-1SEHIEC7,<br />
SPC2,WHITE1F3-ISR1EDOEC7,<br />
SPC2,WHITE1F5-1SCEMORY<br />
(07)11SR1ECORPSTRURC1"<br />
CSPC31':SYS 52156<br />
1820 FOR 1.0 TO FD:60SUB 2000<br />
:IF P.133 THEN RETURN<br />
1825 IF A$(1,RC).<br />
11RC1.":60TO<br />
1850<br />
THEN 1826 REM REMOVE EXTRA SPACES<br />
1830 C0.01FOR 1.0 TO-1 STEP 0<br />
:CO.004.11T.:RIGHTI(A$11,<br />
RC:,C010" "11NEXTICO2C0-1<br />
1840 AS(I,RC1.LEFTICAI1I,RC1,<br />
LENCAS:1,R01-00/<br />
1850 NEXT:RC.RC4.1:60TO 1810<br />
1860 1<br />
1870 REM MAIN INPUT S/R<br />
1880 REM SET UP ZERO-PAGE<br />
LOCATIONS FOR M/C INPUT<br />
2000 Y.VAL(8$10,M<br />
1 X2VAL (8$ (10 )<br />
:SYS AT,X-3,Y-61POKE 231<br />
:POKE 1 252,VAL(6$(3,1)1<br />
2010 0POKE<br />
253,VAL(LEFTS:13114,<br />
1/0))<br />
2011 REM PRINT CURSOR AND<br />
SET INPUT POSITION<br />
2020 PRINT"1CO,UPP<br />
:SYS AT,X-2,Y-6:It.""<br />
:FOR T.0 TO 1 STEP 0<br />
:SYS 51885:P=PEEK(254)<br />
IF EF THEN 2035<br />
2021 IF P2135 THEN 60SU8 9800<br />
:GOSH 2400:NEXT<br />
2025 IF P.I34 AND I THEN I$.<br />
1$.0 ":60SUB 2420:T=1:NEXT<br />
:60TO 2000<br />
2030 IF P.133 THEN T.IINEXT<br />
:RETURN<br />
2031 REM DELETE CHARS<br />
2035 IF P.20 THEN IS.LEFTSCI<br />
$,PEEK(25111:NEXT<br />
character. This gives a visual<br />
representation of the fi eld<br />
length, but on the bottom line<br />
is a count of the number of<br />
characters. The cursor may be<br />
moved until either a length of<br />
255 is reached, or another<br />
character is encountered in<br />
front of the cursor. RETURN<br />
sets the length and DEL allows<br />
you to move back the cursor.<br />
The final part of this section<br />
of the program is typing in the<br />
field name. You will be<br />
prompted to do this on the<br />
bottom line after defining the<br />
length. All the processes discussed<br />
then have to be<br />
repeated for each field. As in<br />
the previous section for<br />
defining the screen layout, in<br />
this section the function keys<br />
have certain uses. They are; Fl<br />
(Exit) returns back to the<br />
beginning of the program; F3<br />
(Clear) homes the cursor and<br />
resets the field count to one; F5<br />
(Back) allows you to go back<br />
and redefine the previous field<br />
if you made a mistake.<br />
When you have finished<br />
defining the database the<br />
program will ask if you wish to<br />
save the data to tape or disk. If<br />
you choose tape remember to<br />
take note of the tape count.<br />
You must also wind the tape<br />
back to the position of the main<br />
program so that it can be autorun<br />
(of course on disk this is<br />
automatic).<br />
Management or Main<br />
Program<br />
When the main program has<br />
auto-run, press any key to exit<br />
the intro screen so that you are<br />
then presented with the main<br />
menu. In the top right of the<br />
screen is printed the number of<br />
empty records remaining i.e.<br />
how many more records can be<br />
input. Laid out below this are<br />
the 10 main functions of the<br />
management program which<br />
can be accessed by pressing<br />
zero to nine, When the<br />
program is fi rst run only<br />
options one and eight can be<br />
selected since no data is<br />
present and also there is no<br />
'format' where it can be held.<br />
The formatting can be done<br />
using option eight, which will<br />
be described later, or option<br />
one can be used to lead in a<br />
format or any data.<br />
To describe how to use the<br />
program ril go through each<br />
option in turn:<br />
1 — Press this yields yet<br />
another menu with five more<br />
options all of which are really
self-explanatory. When any of<br />
these are selected you will be<br />
asked to supply a filename. This<br />
must be no longer than 16<br />
characters. Typing 'E' will exit<br />
to the main menu. Before<br />
describing other parts of DATA<br />
I/O, I must first describe the<br />
unusual method in which the<br />
program handles data files_<br />
Files can be loaded/saved in<br />
one of two forms either<br />
program data, i.e. the actual<br />
records of data or the format<br />
data. The format data takes a<br />
while to load/save even with<br />
disk since it is itself split into<br />
two halves. Firstly, the format<br />
parameters are saved i.e. field<br />
length, name etc, and then the<br />
screen layout data which takes<br />
the time to load. Saving the<br />
data as two separate files may<br />
sound strange but it creates a<br />
very fl exible system. For<br />
example, if you select load<br />
from tape and a format is<br />
already present (if not then<br />
program automatically<br />
assumes you wish to load a<br />
format), firstly, you will be<br />
prompted to enter the type of<br />
file to be loaded: "Format or<br />
data?". This means that if you<br />
select data you can load in<br />
different sets of data for the<br />
same format, so it is possible to<br />
create many data files from one<br />
format fi le so overcoming<br />
memory limitations. If you<br />
select format and load a new<br />
format then the data present<br />
will be erased and new data file<br />
must be loaded.<br />
If you try to load a file which<br />
is data but you select format<br />
when prompted the computer<br />
will give an error message after<br />
reading the fi le header and<br />
return to the menu.<br />
Note<br />
The data I/O option cannot be<br />
used to load a transfer file from<br />
the format program. Option<br />
eight must be used for this.<br />
The next, option two, is<br />
print fi le. I have left this<br />
unwritten since I have no<br />
printer and also there are many<br />
different types, but provision<br />
has been made for a subroutine.<br />
If pressed the menu<br />
will just be listed again. My<br />
suggestion is to place the<br />
subroutine starting at line 4200<br />
which means the third line<br />
number (30) in the ON...<br />
GOSUB at line 35 must be<br />
altered. To help you the sir at<br />
4005 will list all the records<br />
found by a search. Also look at<br />
the view option. Finally, the<br />
C64/C128<br />
2040 IF P013 THEN ISEISI.CHR<br />
S(P):NEXT<br />
2041 REM CHECK FOR EDIT FLAB<br />
2610 PRINT<br />
1 ON VAL(BCGOSUB 2620,<br />
CCLEAR 3000,3093,2890<br />
array B$ holds the format data<br />
and B$ 'fi eld number two)<br />
contains the name of each field<br />
and records are held by AS in<br />
2045 IF EF AND 6$0"0"THEN<br />
EI1NEXT:RETURN<br />
r :PRINT'ICLEAR,WHITEr<br />
:IF RC>1 THEN 2500<br />
the form A$ (field number,<br />
record number).<br />
2050 AS(I,RC)EISIIF LEFTS(BS<br />
(40),1)0"3"THEN PRINT C<br />
HRS(20):RETURN<br />
2060<br />
2615 SYS AT,8,101PRINT"<br />
IRVSON,SPC,S1110 RECORDS<br />
REMAININS 1<br />
:WAIT : 198,1:RETURN<br />
The third option Updateallows<br />
the updating of the file<br />
i.e. typing in new records.<br />
When pressed, the layout you<br />
designed using the format<br />
2070 REM CHECK IF INPUT IS<br />
IN RANH<br />
2300 VL.VAL(AS(I,RC))<br />
:KS.MIDS(BS(4,1),2<br />
2620 6OSUB SYS AT,10,8:INPUPUR)<br />
ECORD 9 8NO.";ER:IF 0 ER KSE"B"ANDO/LVA1ORi<br />
KS.">=<br />
UB 1 9800:NEXT<br />
2360 AND ASII,RNEISIPRINT CHRS(<br />
CSF3ORWARDIC7,SPC,WHITE,<br />
SC-CSAJLTEREC7,SPC,WHITE,<br />
SD)-ESD3ELIC7,SPC,WHITE,<br />
SE)-ISENITEC7,SPC,HOMEr<br />
:GOSUB 3420<br />
2631 IF SWA'THEN 2640<br />
2635 IF SWEITHEN RETURN<br />
2636 SOSUB 2830:IF RC>1 THEN<br />
POKE 198,11POKE 631,60<br />
;SOTO 2630<br />
hand corner,a number displays<br />
the current record being typed<br />
in, as usual the function keys<br />
have been used which are also<br />
displayed on the top line they<br />
are: (Exit) will exit back to the<br />
main menu, this will not update<br />
the record counter and any<br />
data that was typed for the<br />
current record will be last: F3<br />
(REDO) this allows the user to<br />
retype the previous field, while<br />
VL< 20):RETURN<br />
2370YA1<br />
2380 THE REM FREE BYTES ROUTINE<br />
2400 N PSESTRUFRE(0))+<br />
1 BYTES B<br />
FREMLNELEN(PS)<br />
O<br />
;FOR PEI TO LW<br />
S:POKE<br />
19904.P,ASCNIDCPS,<br />
P,11)<br />
2410 POKE 562624,1:NEXT<br />
2637 RETURN<br />
2640 SOSUB 98001PRINTs[NOME,<br />
RVSON,C7,SPC5,WHITE,SPC,<br />
SUELECT DATA AND PRESS<br />
ESPC,SR,SE,ST,SU,SR,SN,<br />
SPC,C7,SPC43<br />
2650 6SYS<br />
AT,0,241PRINT<br />
1 RVSON,SPC,SHITE,SU)<br />
(C7, SE CURSOR KEY TO MOVE UP/<br />
deleting any data that has been<br />
typed on the current field; FS<br />
(Memory) displays on the<br />
bottom line the number of free<br />
bytes remaining, this may take<br />
a few seconds and is due to<br />
FRE(0) and not to my program.<br />
The number will remain on the<br />
bottom line until any key is<br />
pressed.<br />
The fourth option - Edit- is<br />
:POKE 198,01WAIT 198,1<br />
:FOR P.1 TO LW<br />
:POKE 19904,32:NEXT<br />
:RETURN<br />
2415 1<br />
2416 REM REDO S/R<br />
DOWN(C7,6PC,WHITE,SEHSE1<br />
XITIC7,SPC,HOME)<br />
2655 DEO:606UB 2980<br />
2660 SET GS:IF StePTHEN 26<br />
30<br />
2680 IF DetUPPTHEN GOSUB<br />
probably the most complex in<br />
the program but has some very<br />
powerful function. When<br />
pressed you are presented with<br />
another menu. Again I will go<br />
through these options in order<br />
starting with Edit. After<br />
2420 AS(I,RC)EISIDEI:ERERC<br />
160SUB 2970:PRINT L$11E1-1<br />
:DEI:50SUB 2970:PRINT LS<br />
:RETURN<br />
2985:D4-1:IF DO-1 THEN<br />
GOSUB 2980<br />
2690 IF DO THEN D.FD<br />
:SOSUB 2980<br />
selecting this and entering the<br />
number of the record you wish<br />
to edit, once entered, the<br />
screen will display the record,<br />
and the bottom line will list the<br />
2430 1<br />
2440 REM EDIT SIR<br />
2500 PRINT TAB(13)<br />
1 STI ISM,SE,SN,SUP<br />
ESEpSD ;PRINT TAB(13)<br />
I SPRINT 1 TABI8)<br />
SI, 1ISPC,SUDIT<br />
(C19r RECORDS.<br />
2530 (DOWN11<br />
PRINT TAB(8)<br />
1 --ESPC,SEEARCH<br />
& REPLACE<br />
2700 IF 6WEDOWN3<br />
'THEN SOSUB 2985:114+1<br />
:IF DOF0+1 THEN GOSUB 29<br />
80<br />
2710 IF D>F1) THEN 2635<br />
2720 IF 61OCHRS(13)THEN 2660<br />
2730 GOSUB 9800:PRINT"EHOME,<br />
RVSON,C7,SPC4,WHITE,SPC,<br />
SEELECT EDIT OPTIONkey<br />
function. The top right<br />
shows the record currently<br />
being displayed using the<br />
inequality keys ( ). You can<br />
look at other records going<br />
backwards/forwards and when<br />
you have definitely found the<br />
record you wish to edit,<br />
pressing 'D' will delete the<br />
whole record, 'E' will exit back<br />
to the menu or 'A' will allow<br />
[DOWN]2 .<br />
1-ISPC,SEEARCH<br />
& DELETE.<br />
2550 1PRINT<br />
TABIEIEDOWN)4<br />
P-[SPC,SELOCK<br />
DELETE.'<br />
R:PRINT<br />
TAMPIDOWN]5 -<br />
ISPC11,C7,SPC4I°<br />
2740 SYS AT,0,24:PRINTqC7,<br />
RYSON,SPC2,WHITE,SPC,S0)-<br />
CSOIYERWRITE[SPC,C7,5P02,<br />
WHITE,SPC,SONSUELETE<br />
you to alter it. Selecting 'A'<br />
changes the prompts on the<br />
bottom and top lines and also<br />
turns the data in the first field to<br />
inverse video. Using the cursor<br />
up/down key, you can select<br />
IESPC,SENIT.CDOWN31<br />
2590 NSOSUB<br />
5800:IF SWPOR<br />
T<br />
6S>"5"THEN 2590<br />
2600<br />
T<br />
IF 611.<br />
1<br />
A<br />
5<br />
B<br />
1<br />
(<br />
THEN<br />
B<br />
R<br />
)<br />
E T U<br />
CSPC,C7,SPC,WHITE,SPC,SE<br />
-ISEHIT[SPC,C7,SPC2,HOME)<br />
2750 SET SS:IF SWEITHEN SO<br />
19<br />
the field to alter when you have<br />
it, pressing RETURN will<br />
change the prompts again for<br />
the third and final time asking<br />
you to select the 'Edit option',<br />
D will delete all the data in the
field or '0' will allow you to<br />
overwrite new data into it. If<br />
you made a mistake selecting<br />
thefield,Ewill let you exit back<br />
to choose another field.<br />
Next on the EDIT menu is<br />
SEARCH and REPLACE.Thisisa<br />
very powerful feature using<br />
fully all the SEARCH routines in<br />
the program. After selecting<br />
the field you wish to search,<br />
type in the search data. The<br />
String must be prefixed with<br />
character to indicate which<br />
type of search is to be done.<br />
The sixdifferenttypesarelisted<br />
at the top of the screen (for<br />
information on these see the<br />
documentation on for the<br />
search option).<br />
If scan string is used it can<br />
be made to insert data in a<br />
number of records e.g. to insert<br />
a middle name into MARK<br />
ANTHONY you would type;<br />
Search data ?@ANTHONY<br />
Replace data?ANDREW<br />
ANTHONY<br />
The name ANDREW would<br />
then be inserted at every<br />
occurrence of this name, but<br />
be careful since the routine<br />
searches for the fi rst<br />
occurrence of the string within<br />
a field, Le. if you wanted to<br />
insert my middle name DANIEL<br />
into GARETH THOMAS you<br />
could not use the shortened<br />
version e.g.<br />
Search data?@TH<br />
Replace data?DANIEL TH<br />
since the result would be<br />
GAREDANIEL TH THOMAS<br />
because TH occurs twice in my<br />
name, instead you would have<br />
to type the whole e.g.<br />
Search data?gTHOMAS<br />
Replace data?DANIEL THOMAS<br />
Search and Delete is similar<br />
in operation and replace. If you<br />
select any of the search options<br />
apart from '@' scan string the<br />
whole fi eld will be deleted.<br />
Using scan string can enable<br />
you to delete from inside a<br />
string e.g. to delete my middle<br />
name;<br />
Search data? @ DANIEL<br />
Note the space before DANIEL,<br />
since otherwise the result<br />
would be CARETHTHOMAS<br />
because the new string is<br />
reassembled around the<br />
position of the old one and<br />
their are two spaces around the<br />
old one.<br />
SUB 4400:60TO 2640<br />
2760 REM DELETE FIELD<br />
HOMEPIGOSUB 9800<br />
2906 GET 68:IF 68=<br />
2770 IF 6$N<br />
1 ER)N":GOSUB 4400<br />
DITHEN 160TO 2640<br />
A2780 S IF ( 6$0 D<br />
2781<br />
, 1 REM OVERWRITE FIELD-CAL<br />
0 L INPUT S/R WITH EDIT FLA<br />
1 6 SET SAVE MAIN VARIABL<br />
THEN ES<br />
2790 2 7GOSUB 5 29701ECACIRCNER<br />
0 1120160SUB 2000<br />
2800 IF ISN"THEN AS(D,ER)N<br />
1<br />
2810 RCNEC:GOSUB 4400<br />
:60TO 2640<br />
1 TURN<br />
N2907<br />
IF 610<br />
1 12910<br />
PRINPECLEARY<br />
THEN Y :SYS AT,9,14:PRINT R E<br />
1 1ESPC,SD,SE,SL,SE,ST,SI,SN,<br />
THEN 8SG,SPC3$<br />
8<br />
22911 9REM 0MOVE<br />
RECORDS DOWN<br />
6 TO DELETE BLOCK<br />
2920 FOR 0N07+1 TO RC-1<br />
FOR FNO TO FD<br />
:Al(F,OF-1+(0-0T))=AliF,DI<br />
!NEXT:NEXT<br />
2930 RENRC-M-OFWIRETURN<br />
2940 1<br />
2830 SYS AT,0,24:PRINT 2950 REM DELETE DATA ON SCRE<br />
1 RVSON,SPC6,WHITE,SPC3,SU<br />
EC7, RE YOU SURE7ESPC4,C7,<br />
EN FOR OVERWRITE<br />
2970 LIN":FOR LN1 TO LENCAS<br />
SPC12,HOME1<br />
2840 GET GIF 6$N<br />
1 TURN<br />
N2860<br />
IF 6$0<br />
1 12870<br />
SYS AT,0,24:PRINT'EC7<br />
THEN Y1<br />
RYSON,SPC8,WHITE,SPC5,SU<br />
R E<br />
1 ELETING DATA.. ESPC4,C7<br />
THEN 1SPC4,HOME/<br />
22871 8REM 4MOVE<br />
RECORDS ABOVE<br />
0<br />
DELETED ONE DOWN<br />
2880 FOR CNER TO RC<br />
:FOR FNO TO FD<br />
:A1(F,C)NAliF,C41/1NEXT<br />
INEXTIRCNRC-IRETURN<br />
2881<br />
2882 REM BLOCK DELETE S/R<br />
iD,ERHILSNLO"INEXT<br />
:GOSUB 2995:PRINT L$<br />
:RETURN<br />
2975<br />
2976 REM S/R TO HIGHLIGHT<br />
CURRENT FIELD TO EDIT<br />
2980 GOSUB 29951PRINT<br />
1 'AS(D,ER)IRETURN<br />
ERVSON1<br />
2985 USUB 2995:PRINT A$(D<br />
1<br />
2890 SYS AT,5,6:INPUT'ESDI<br />
ELETE FROM-<br />
1:IF<br />
DF(1 OR DFAC-2 THEN<br />
0F 2890<br />
2895 ERNDF:M$N<br />
1 SPC9,WHITE,SPC,SURE YOU<br />
ERYSON,C7 SUREEY/WESPC,C7,SPC10,<br />
1<br />
HOMEMGOSUB 9800<br />
:60SUB 4390<br />
2896 EET GSIIF 6$N<br />
1 .N"ECLEARY:60TO 2890<br />
N2897<br />
IF 5$0<br />
1 12900<br />
PRINT<br />
THEN Y"THEN<br />
1 1SYS AT,5,101INPUTIESD1<br />
P R<br />
2ECLEAR ELETE 8 9 6<br />
Y :IF DT(NDF OR DI)RC-1 THE<br />
N 2900<br />
2902 ERNDT:SOSUB 9800<br />
:GOSUB 4390<br />
2903 GET GS:IF ESNWTHEN PR<br />
INT<br />
2904 1IF<br />
6$0<br />
12905<br />
EC SYS AT,0,24:PRINT<br />
Y1<br />
ERVSON,C7,SPC,WHITE,SPC,<br />
LE<br />
1 SD10 ARYOU<br />
WISH THE DELETE<br />
THEN 1TO<br />
60 AHEAD<br />
2 191<br />
0<br />
3 00 ESPC,C7,S<br />
TO PC,<br />
2<br />
ER):RETURN<br />
3040 ITSNLEFTWS,1)<br />
:LNNLECSSI-IISSNRIGHTItS<br />
$,LN1:GOSUB 3599<br />
3050 IF CPS:"THEN 3000<br />
3060 PRINT TABEIOPEDOWN2,S111<br />
EPLACING—ESPC,DOWN31<br />
1FOR DN1 TO LENICPSI<br />
IPNASCiMIDS(CPS,D,1))<br />
3070 IF IT$0<br />
1 PINIS:GOTO 3092<br />
83075<br />
REM CHECK LENGTH OF STR<br />
1 ING DOES NOT EXCEED FIELD<br />
THEN<br />
LENGTH<br />
A3000 lIF i LENiAS(SI, S I<br />
, P1)-LPLENtIWNVALE8$0,<br />
SIHTHEN 3091<br />
3090 PRINT TAB(3)<br />
1 ESPC,SS1TRIN6 TOO LONG<br />
EUMI IN?' 1 1<br />
2990 SYS AT,0,24:PRINT"EC7,<br />
1 RVSON,SPC,WHITEWI-ESDI<br />
ELETEESPC,C7,SPC,WHITE,<br />
SPC1F3-ESONERWRITESPC,<br />
C7,SPC,WHITE,SPC)F5-[SE)<br />
XIT(SPC,C7,SPC2,HOME)<br />
:GOTO 1 3092<br />
3091 ACSI,P)NLEFICASiSI,P/<br />
1GOS<br />
PS-IMPRIGHTSEASESI<br />
UB<br />
ILENiAS(S1<br />
9 8<br />
3092 N, 1NEXTIGOSUB<br />
0 0 98001RETURN<br />
3093 P))- EFNIIISNO6OSUB 4350<br />
(PS-1+1.Ni<br />
IINPUT<br />
I1IELD<br />
N0.(-1 TO EXIWOI<br />
EDOW :IF SIN-1 THEN RETURN<br />
3094 N2 IF 5I(1 OR SI)FD+1 THEN<br />
I<br />
3093<br />
3095 RIGHT SINSI-1:INPUT<br />
1 2,SF] RIGHT2,SEEARCH DATA<br />
EDOWN2, 1:IF<br />
SIN"THEN 3093<br />
3096 0$ ITSNLEFTS(9,1)<br />
:LNNLEN(SS)-119NRIGHTSiS<br />
2991 REM CURSOR SET SIR<br />
2995 SYS ATM:L(13(1,0)1-3,<br />
YAL(BC0<br />
2996 I 1<br />
2997 D)-61RE REM SEARCH & REPLACE<br />
TURN<br />
S/11<br />
3000 EFN ISNO:GOSUB 4350<br />
:INPUT<br />
1IELD<br />
WO.(-1 TO EXIT)"01<br />
EDOW :IF SIN-1 THEN RETURN<br />
3010 N,RIG IF SI(1 OR SI>F0+1 THEN<br />
HT2,S<br />
3000<br />
3020<br />
N<br />
SSN"ISINSI-1<br />
:SYS AT,2,16:INPUT<br />
1EARCH<br />
DATA<br />
ESS1 1:IF<br />
Ste<br />
3025 0$ 1SYS<br />
AT,2,18:PRINT<br />
1 THEN EPLACE DATA<br />
ESRI 371 :SYS 0AT,15,18:POKE<br />
251,0<br />
3026 01XN181Y REM 0CALL<br />
INPUT ROUTINE<br />
224 TO MAKE SURE DATA CONFOR<br />
MS TO FIELD TYPE<br />
3030 POKE 252,VAL(B$(3,61))<br />
:POKE 253,VAL(LEFTSEBS(4,<br />
SII,1))00SU8 2020<br />
3031 REM CALL SEARCH SiR<br />
20<br />
$,LN)00SUB 3599<br />
:IF CP$<br />
3097 01 PRINT TAB(9)IEDOWN2,<br />
RVSON,SPC,SIDELETING—<br />
THEN<br />
3':FOR 0 ON1 9 TO LENiCPSI<br />
3:PNASCEMIDS(CPS,D,1))<br />
3098 IF IT$0<br />
1 P/N":NEXTIRETURN<br />
13099<br />
ASiSI,P/NLEFTS(ACSI,PI<br />
1o<br />
PS-1)4111MACSI,PI,PPLN,<br />
THEN LENCASiSI,P I:NEXTIRETURN<br />
3100 A tPRINPECLEAR,WHITE, i S I<br />
,<br />
DOWN3,RIGHT2,SP3RESSO<br />
:PRINT TABE5PIDOWN211<br />
-ESPC,ST10 VIEW A RECORD.<br />
3101 PRINT TA8(3)<br />
1 -ESPC,S110 VIEW ALL RECO<br />
EDOWN2I2<br />
RDS.<br />
13<br />
-ESPC,SENIT.<br />
3102 :PRI GET GS:IF 6S=<br />
1 NT 20<br />
23103<br />
TA IF 6$<br />
10<br />
3104 Bi5 IF 6$0<br />
THEN 33105<br />
1 I<br />
PRINT 3 1<br />
1<br />
1<br />
THEN CCLEAR 1 ED<br />
R1THEN OW E T<br />
U3 N2] R1 0N<br />
2
3106 SYS AT,4,8:INPUTICSR1<br />
ECORD NMIER:IF ER(1 OR<br />
EURC-1 THEN 3106<br />
3108 MOTIVSON,C7,SPC7,<br />
WHITE,SPC,SPIRESS A KEY<br />
TO EXITISPC,C7,SPC11,<br />
HOME1<br />
3109 1WAIT<br />
198,1:GOTO 3100<br />
3120 160SU PRINT'ECLEAR,DOWN4,<br />
B RI5HT4,SA,SN,SY,SPC,SK,SE<br />
4SY,5PC1TO 3 9 SCROLL 1<br />
01BEPTO<br />
EXIDOWN21<br />
3150 SYS AT,6,10:INPUT<br />
. ECORD NO.(-1 TO EXIT)'ISP<br />
(SR) :IF SPs-1 THEN RETURN<br />
3160 IF SP(' OR SP)RC-1 THEN<br />
3150<br />
3165 REM DISPLAY FILES BY<br />
SCROLLING<br />
3170 PRINT'ECLEAR]<br />
3220 FOR PsSP TO RC-1<br />
:PRINT'UNSON,SPC,SR1<br />
ECORD 11FOR S1120 TO FD<br />
'PRINT 88(2,SR)'<br />
I "ACSR,P)<br />
3230 GET 6$:1F GWE'THEN 31<br />
00<br />
3240 NEXT: PRINT'<br />
- - -ESPC,UP21<br />
3260 WAIT 198,1tNEXT<br />
:WAIT 197,64:POKE 198,0<br />
:WAIT 198,1:6010 3100<br />
3400 SYS AT,7,31INPUMSR1<br />
ECORD NMIERIIF ER(1 OR<br />
EURC-1 THEN 3400<br />
3415 Mits'IC7,RVSON,SPC4,<br />
WHITE,SPC(-1SEACK1SPC,<br />
C7,SPC2,WHITE,SPC))-(SF1<br />
ORWARD(SPC,C7,SPC2,WHITE,<br />
SPC,SE)-1SE3X1T1SPC,C7,<br />
SPC4,HOME1<br />
3416 REM S/R TO DISPLAY RECO<br />
RDS WITHOUT SCROLLING USI<br />
N6 SCREEN LAYOUT<br />
3420 FOR Ts0 TO 1 STEP 0<br />
1PRINT'EHOME,C7,RVSON,<br />
SPC2<br />
1CSPC29P<br />
3430 SR1E 60SUB 4400<br />
3450<br />
COR<br />
GET 6$:1F 60<br />
0<br />
D<br />
D'OR 6$.<br />
POR<br />
i<br />
1:RETURN<br />
S<br />
6 3470<br />
T<br />
PTHE $ IF<br />
R<br />
8 5$0yTHEN ° 3480<br />
3475 C<br />
N ERsER-1:IF E<br />
1 ERs0 THEN ER<br />
R<br />
. •RC-1<br />
P<br />
3478 '1:N NEXT<br />
3480 EXT IF 6$0<br />
13490<br />
ERsER4.1:IF ERaRC THEN E<br />
. Ral<br />
1<br />
THEN<br />
3 4 5<br />
0<br />
3495 NEXT<br />
3496 i<br />
3497 REM SEARCH 6/R<br />
3500 EFs01PRINTIECLEAR1'<br />
:SOSUB 4350:PRINTIEDOWN,<br />
RIGHT3,GREEN,SEATER IN<br />
FORM<br />
1ELERVSON,SS,RVSOFF1<br />
11<br />
EARCHTYPE1RVSON,SD,RVSOFF1<br />
RV<br />
ATA SO<br />
3505 N, PRINT'IDOWN,RIGHT,<br />
YELLOWYESEY<br />
SF<br />
TO EXIT<br />
(SC)<br />
,R<br />
1 YIEW(DOWN2)<br />
VS<br />
3510 T<br />
OF<br />
SO":POKE 198,0<br />
O :INPUT S$11F SWE<br />
F1<br />
C.<br />
PO: RETURN<br />
3520 LTHEN<br />
IF SW I<br />
0 E<br />
ICPW.":60TO 3500<br />
C"THEN<br />
3525<br />
A<br />
IF SlierAND CP$0"THE<br />
I SR N PRINT*ICLEARr<br />
a<br />
0 '<br />
:605U8 4005<br />
3526 IF S$s"OR LEN(S$)(3 TH<br />
1<br />
EN 3500<br />
S<br />
3530 SIS.LEFTS(9,1)<br />
V<br />
ilF SI$C1<br />
r<br />
STRWD+11,1)THEN 1<br />
3500<br />
3535<br />
T<br />
OR SIEVAL1SICISIsSI-1<br />
O<br />
SIOR 1606U8 359815010 3500<br />
3536 IGHT 1<br />
3537 li( REM MAIN S/R<br />
3598 ITOMIDS(9,2,1)<br />
tOOLEN:9)-21SWERIEHTS(6<br />
$,LN)<br />
3599 IF ITS0*!"AND ITSOlt"<br />
AND IT$0<br />
. ND ITS()">"AND ITC)"<br />
1"AND (UP-ARROWTHEN RETURN<br />
3600 I IF T EF S THEN 0 PRINT'ECLEARI<br />
1'1SYS<br />
AT,0,8<br />
3601 ( PRINT " A TAB(5)sIDOWN,SS)<br />
EARCHIN6.,<br />
3602 IF IS.0 THEN IN<br />
:60SUB 380016010 3621<br />
3610 60SUB 3810<br />
3621 IF CPSONNTHEN 3630<br />
3625 60SUB 9800:PRINT TAB(5)<br />
'IUP11 SERVSON,SPC,SN10<br />
DATA FOUNDESPCOVSOFFA<br />
1':60SUB 3900<br />
3626 IF IS THEN CPPCN$<br />
3627 RETURN<br />
3630 114LENICPC:PRINT TAM<br />
)'1UP1'STRCIM1<br />
1 FOUND't6OSUB 9800<br />
3640 RECOR GOSU8 39001RE1URN<br />
3700 DS 1<br />
3710 REM SEARCH SUBROUTINES<br />
3720 REM DIRECT COMPARISON<br />
3781 IF ITSe!'AND SS.A$(61<br />
$ WHEN CPS.CPOCHRS(6)<br />
C64/C1213<br />
For both edit related<br />
3782 IF ITSO[UP<br />
searches it should be noted<br />
- 'AND SWACSI,<br />
ARRON] 6)THEN CPOCPOCHRS(6)<br />
3783 IF ITWOAND SOACSI,<br />
6)THEN CPS.CPOCHRS(6)<br />
that the first occurrence of the<br />
string is used and also that the<br />
whole of !the fi le will be<br />
searched for the necessary data<br />
even if one alteration is made.<br />
3784 IF ITS."”AND SCA$(S1,<br />
6)THEN CPS•CPS+CHRS(6)<br />
The fi nal EDIT option is<br />
Block Delete. This allows you to<br />
3785 NEXT:RETURN<br />
delete large chunks of records<br />
3786 1<br />
3787 REM WILDCARD<br />
3790 IF LEFTS(ACSI,6),<br />
quickly, just enter the numbers<br />
of the first and last records to<br />
be deleted and the program<br />
will do the rest.<br />
0).SITHEN CPW=CPS+CHRS(6) Now back to the main<br />
3795 NEXT:RETURN<br />
3796 REM SEARCH STRIN6<br />
3797 FOR Sal TO LEN(ACSI,<br />
60-L01<br />
menu. Next is the view option<br />
file. This is very simple, you can<br />
either view one record (this<br />
uses the format layout) or you<br />
can select a record to start from<br />
3798 IF SW.MIDUAS(91,6),S<br />
1 LN)THEN CPS.CPS+CHRS(6)<br />
3799 NEXT:NEXT:RETURN<br />
3800 CPS.":FOR 6.1 TO RC-1<br />
:60TO 3820<br />
3810 CNS.CPW:CPS.'<br />
:FOR Tail TO LEN:CNS)<br />
IGEASC(MIDS(CNS,T,1))<br />
and scroll the whole file. If you<br />
wish to view all the records,<br />
holding down a key will cause<br />
them to scroll down the screen.<br />
If you release the key the<br />
records will pause. Pressing 'E'<br />
will exit back to the start.<br />
Sixth on the main menu is<br />
the Search option. To make it as<br />
fast and easy as possible<br />
information is entered about<br />
3820 IF ITS."S'THEN 3790 the field and search type in one<br />
3830 IF ITS<br />
string e.g. to search field three<br />
03840<br />
IF ITS."("OR 11.<br />
1"THEN 1 ITte(UP-ARROW]<br />
3) 'OR 7 ITS."!"THEN 9 3781<br />
comparing directly and<br />
searching for LONDON you<br />
would enter;<br />
71<br />
3900 FOR Nil TO 1000:NEXT<br />
0R:RETURN<br />
3905 1<br />
3910 REM DISPLAY RECORDS FOU<br />
ND<br />
4000 PRINT TAB(6)<br />
. RVSON,SP,SR,SE,SS2] (BA,<br />
[DONN2, SN,SY] 1SK,SE,SY1 E51,901<br />
:MON DON<br />
The computer will then tell<br />
you how many records it finds<br />
but it will not display them.<br />
Instead the screen is set to its<br />
original form and you are<br />
prompted for more data. The<br />
next search done will not<br />
ISS,ST,SA,SR,ST,RYSOFF1' search all the records but it will<br />
:WAIT 198,1:PRINPECLEAR1 search only these found by the<br />
4005 FOR Ds1 TO LEN1CPC previous search, this means<br />
:PEASNMID$(CP$,D,1))<br />
4010 PRINT<br />
1 ECORD 'P:FOR Slis0 TO FD<br />
CRYSON :PRINT B$(2,SR)"<br />
,SPC,SRI 1 "AUSR,P):GET 6$<br />
OF 8WEITNEN RETURN<br />
4040 NEXTIPRINT°<br />
that you can continually search<br />
a decreasing number of<br />
records using different search<br />
formats and so narrowing<br />
down the records to the few<br />
you are looking for. This is a<br />
very powerful feature if used<br />
properly. Suppose a fi le was<br />
created of names and<br />
addresses of people for a tennis<br />
WM. - 48PC<br />
club, you might need to search<br />
INAIT I198<br />
4050 1WAIT<br />
UP21 197,641WAIT 198,1<br />
11NEX !RETURN 1<br />
4060<br />
T<br />
t<br />
4070 REM SEARCH INTRO SIR<br />
for all the people living in<br />
BATH who play singles and<br />
have a name beginning with A.<br />
Let's suppose that field one is<br />
Name, two is Address and three<br />
is type of player. You would<br />
4350 PRINT*1CLEAR,RVSON]l<br />
MVSOFFIWILDCARDISPC,<br />
RVSONflERYSOFFICOMPARE<br />
enter 2@BATH (need to scan<br />
all of the address for the string<br />
BATH)<br />
DIRECTLYESPC 1*<br />
CRYSOFFNCAN I PRIM<br />
3!SINGLES<br />
RVSON11<br />
a rid then enter 'v' to view.
4360 PRINT"IRISHT,RVSON3(<br />
AM<br />
YOU WISH TO SAYE DATAIY/ 8250 REM MAIN MENU<br />
CRYSOFF1LESS THANISPC<br />
4600 GOSUB 4735:IF 8$2"TITHE<br />
QPIN'THEN 6060 9500 PRININCLEARYTA8(8)"<br />
1RVSONDIRYSOFF3SREATER N 4700<br />
6050 IF QSWY"THEN 6030 ENHITE,SM,SI,SC,SR,S0,8F,<br />
THANISPC,RYSON,UP-ARROW, 4610 SET GS:SYS 41,I7,11 6055 PRINPICLEAR3 SI,SL,SE364(SPC,SM,SA,SI,<br />
RVSOFF3NOT EQUAL TOIDOWN1" :PRINT GS:IF EIS 6060 1 SYS 64738<br />
SN) ESM,SE,SN,SU,SPC1<br />
:60SUB 5000:RETURN<br />
700 0<br />
:60SUB 6070 : 1 0 0<br />
"201-RCIFREEI:PRINT TAUB<br />
4370 REM RECORD IN SCREEN 4615 TITHEN IF 6t2<br />
7830 REM SORESPC21S/R<br />
1<br />
FORMAT<br />
4630 1 4PRINT'ICLEAR,0OWN21<br />
8000 PRINT"ECLEAR1<br />
9520 1PRINT<br />
TABIWI -ISPC,SD1<br />
4385 REM 6 AND 25 SPACES E LOAPCHRSI3414F64.FORMsC 1 :SOSUB 5000<br />
EATAESPC,S11/B01."<br />
4390 PRINT'ICLEAR,RVSON,C7, 1 HRS(34)°,8<br />
8010 INPUT<br />
C:PRINT<br />
TABI8)'EDOWN32 -<br />
SPC6,SRECORD- THEN 4650 6POKE<br />
631,131POKE 632,13 1 WHICH FIELD(-1 TO EXIT)'; TISPC,SPAINT<br />
FILE.'<br />
1ISPC251<br />
R :POKE :PRINT'IDOWN41RUNIHOMEI'l<br />
E T<br />
IDOWN2, SF<br />
2:PRINT<br />
TABI8)'IDOWN33 -<br />
4400 STRSIER1<br />
1SYS<br />
521561FOR 020 TO FD U 1RNEW 9N8 , 2<br />
SEORT 8020 IF SF•-1 THEN RETURN 1ISPC,SUPDATE<br />
FILE.<br />
1:SYS<br />
AT<br />
4700 PRINT<br />
B8030 IF YSRI<br />
OR SF)F0+1 THEN 9550 1PRINT<br />
TAB(8)'IDOWN34<br />
IVALCBS(0,D11-6<br />
. IND TO FORMAT PROGRAM t PRINT<br />
-ISPC,SE3DIT FILE.'<br />
VAL( :PRINT ASCD,ER):NEXT IDOWN2, PRESSISPC,RYSON,SR,SE,ST, 8040 1PRINT<br />
TAB(9)'IDOWN411 :PRINT TAB(8)<br />
4410 BS(1 SYS AT,0,241PRINT M$ RI5HT, SU,SR,SNI<br />
CUP2 IESPC,RVSON,SPC,SS,SO,SR, ISPC,SVIEW 1 FILE.'<br />
0))-3<br />
:RETURN<br />
911 4720 WAIT 197,11POKE 631,131 ST,SI,SN,SS,SPC,RYSOFF<br />
MBOT<br />
CDOWN35<br />
:PRINT TAB(8)<br />
4420<br />
,<br />
1<br />
:POKE 198,11NEW<br />
1SPC38 O 1<br />
-1<br />
ISPC,SEEARCH FILE.<br />
4430 REM FORMAT S/R<br />
4730 t<br />
8050 18IF<br />
08$(1,SF)2<br />
9580 CDOWN36<br />
PRINT TAB(8)'EDOWN37<br />
4440 REM EITHER LOADS FORMAT 4735 PRINT TABO4)IDOWN2,ST3 18060<br />
:N2 1<br />
:<br />
0<br />
--ISPC,SEORT<br />
FILE.'<br />
DATA CREATED BY FORMAT APE ORISPC,S01ISKIT/0)? 2"THEN 8070 RC- REM ALPHABETIC SORT :PRINT TAB(8)<br />
PROSRAM<br />
4736 6ET SS:SYS 41,22,11 88100 2IISF M2INT(N/21:FOR 0 0 A2-1 TO ISPC,SF1ORMAT 1 DATABASE.'<br />
4450 REM OR AUTO-RUNS FORMAT :PRINT 6$11F 6$0<br />
2SF 0 STEP 0:FOR J21 TO 11-M CDOWN18<br />
:PRINT TAB(8)<br />
PROSRAM<br />
1SOIDIAND<br />
6$01<br />
-1<br />
:FOR HEJ TO 0 STEP-M:LOOM -1<br />
ISPC<br />
4490 AT252038:SYS AT,6,4 4737 PAND 1RETURN<br />
6<br />
:K20<br />
9605 (DOWN39<br />
I PRINT TABIBPIDOWN10<br />
IPRINT'ESP1RESS 'EP TO 4740 THEN REM B/R TO PRINT FIELDS 8110 IF ASISF,HDAS(SF, -SNIE<br />
-ISPC,SE3XIT PROSRAM.<br />
EXIT<br />
5000 4FOR 7 620 3 TO 6 FO<br />
L)THEN FOR Y20 TO FD W BONNE<br />
4495 SYS AT,4,81PRINNSP1 :PRINT SWILEFT1. IZSEACY,H11ACY,H) 9620 DSOSUB A 5800:IF 6S(<br />
ROGRAM 0RESPC,SD3ATA(P/0)? INEXTHRETURN<br />
1<br />
L)IASIY,L12ZSINEXTIK<br />
2<br />
1 T<br />
6S)"9"THEN<br />
A<br />
9620<br />
4500 SET BS:SYS AT,25,8 50108$(2,6)<br />
8120 2ASIY,<br />
OK:NEXT:NEXT:M2INT(M/2) 09R 9650<br />
.<br />
OVALISS1:IF RF20 AND W<br />
:PRINT GS:IF 6$2 5020 REM S/R TO FLASH PROMPT H10000):NEXTI60SUB<br />
9E00 01 AND WOO AND 1108 THE<br />
600 1<br />
5800 PRINT TAB(11)1UP,SP,SR, :RETURN<br />
N 9620<br />
4505 P"THEN IF 021<br />
SE,SS21 IST,S01 ISS,SE,SL, 8130 :<br />
9655 IF RF AND 1128 THEN 9620<br />
1 4:RETURN<br />
SE,SC,STP:FOR D21 TO 65 8140 REM NUMERIC SORT 9660 IFIRF AND RC211AND W03<br />
THEN 4510 IF 6$0"DITHEN 4500 :SET 6S:IF 6$0"THEN RET 8200 M=INTIN12):FOR A2-1 TO AND WO1 AND 1109 THEN 9<br />
R4520 CGOSUB 2 14735:IF<br />
6$0*T URN<br />
0 STEP OIFOR J21 TO N-M 620<br />
1 EN 4531<br />
5810 NEXT:PRINT TAB(11) :FOR H2J TO 0 STEP-M:1.20M 9670 PRINT'ECLEARPIRETURN<br />
TH 4521 PRINT'EDOWN2,RISHT,SW1 1 RYSON,SP,SR,SE,S521 EST, 11(20<br />
9680<br />
IND TO FORMAT DATA 11 PRES EUP, SO) ISS,SE,SL 8210 IF VAL(ASI9F1<br />
9690 REM BEEP S/R<br />
SISPC,RVSON,SR,SE,ST,SU, I:FOR<br />
D21 TO 65:SET GS HOUALIAS(SF 9800 POKE 54276,65<br />
SR,SNr:WAIT 197,1<br />
SE :IF 6$0"THEN RETURN 8220 oFOR<br />
Y20 TO F8INRACY,H) :FOR DE2I TO 1501NEXT<br />
:OPEN 2,1,0,IFORMAT" 5820 I NEXT:SOTO 5800<br />
L)1THEN IASIY,H1•AS(Y,L)<br />
:POKE 54276,0:RETURN<br />
:SOTO 4550<br />
5821<br />
8:AS(Y,L)2ZS:NEXTIK2H 9810 t<br />
SC,ST1'<br />
2 3 0<br />
4531 IF SWE'THEN RC21 5822 REM NEW DATA S/R 8230 H2K:NEXT:NEXT:M2INT(M/2) 9820 REM SIR TO REORSANISE<br />
:RETURN<br />
5825 SYS AT,2,511NPUTNISO3 :42000):NEXT:60SU8 9800<br />
ARRAYS TO MAXIMIZE MEMOIR<br />
4536 REM OPEN FILE TO DISK ATA OR DATA t DEFINITIONS :RETURN<br />
Y STORAGE<br />
4540 OPEN 15,8,15,'I0'<br />
IISD3/ESFWISS<br />
8240 1<br />
7980 DIM AS(FD,200):RC<br />
2<br />
:OPEN 2,8,2,<br />
:IF GSWPAND SSOINTHE<br />
:Al252038:RETURN<br />
N<br />
1 1<br />
1160SUB<br />
13501IF El THEN RE N 5825<br />
1<br />
FORMAT,<br />
TURN<br />
5830 SYS AT,8,10:INPUTISA3<br />
4545 S,R REM INPUT DATA<br />
RE YOU SUREIISMISNWIQS<br />
4550 . INPUTS2,F0:60SUB 9980 :IF QSN'THEN RETURN<br />
FOR 520 TO 6IFOR H20 TO 5840 IF Q$0<br />
ISPC41:<br />
FB:INPUT112,B$(6,H)INEXT 15850<br />
IF DePTHEN RF20<br />
PROSRAM: MF64.FORM 30 REM SVER1.2IC11985 EI.THOM<br />
INEXT:RF21<br />
Y"THEN 5860 RNIRETURN<br />
ASS<br />
4570 IF BerTHEN CLOSE 2 56000 8SYS 3AT,8,51INPUT 0<br />
0 REMESPC2AttitlIttISISItti 40 REM $1111108188111118111<br />
:RETURN<br />
1 YOU SUREILSY3/I8N31":0$ HMO<br />
1st<br />
4580 CLOSE 151CLOSE 2:RETURN ISCRE :IF Q$24"THEN RETURN 10 REM SISPC61MICROFILE64 64 :<br />
4590 1<br />
6020 IF 0$0<br />
ISPO531<br />
65 REM SET UP SPRITE CURSOR<br />
4595 REM AUTO-RUN MAIN PROSR 16030<br />
SYS A1,3,9:INPUT 20 REM SESPC41FORMAT PROSRAM<br />
Y"THEN 1<br />
6ISD10 0 0 0
•<br />
C84/C128<br />
70 AT.52038:V.53248 220 SYS 52083:PRINTsIHOME 370 POKE 55296+PS,255:RETURN CM,SPC315,CSPC,SBETWEEN<br />
:FOR La832 TO 896:POKE L,0<br />
:NEXT:FOR L.832 TO 854 ST<br />
EP 3:POKE 1455INEXT<br />
80 REM SET SPRITE POINTERS<br />
1 RVSON,SPC,WHITEFI-(SE]<br />
C7, XITN7,SPC3,WHITEIF3-ESCI<br />
LEAREC7,SPC3,WHITE3F5-ES93<br />
ACKIC711ISPC,SEIELD 1<br />
380<br />
390 REM OVERLAY MENU<br />
:REM THE _ IN NEXT LINE<br />
IS ECO243<br />
(SPCII,CG3<br />
480 SYS ATp6,15:PRINTIERVSON,<br />
CN,SPC336.
630 SYS AT,0,24:PRINT"[GREEM,<br />
SPC3,SCUMBER OF CHARACTE<br />
RS = 1[SPC12,HOMEr<br />
:POKE 2023,32<br />
640 CM:P5*1020PS<br />
:POKE PS<br />
P9,I1POKE 4 650,128<br />
650 FOR . T.0 TO 1 STEP 0<br />
:SET 1,43: 6$:1F GO"THEN NEXT<br />
660 POKE IF GS.CHR$(13)THEN B113,<br />
1/=STRUCO):505U9<br />
5 4<br />
720:T=1<br />
INEXT:60SUB<br />
2 7<br />
1190:RETURN<br />
670 IF<br />
3<br />
GOCHR$(20)AND<br />
+<br />
CO>1<br />
HEN CO.00-1:POKE PX0,43<br />
:POKE PS+C0<br />
680 4, IF PEEK(PS‹041)032 OR<br />
C0.255 1,32:6010 OR PX0=1983 THEN<br />
7<br />
NEXT<br />
1 0<br />
690 POKE PS+CO<br />
3 :POKE PPCO<br />
46:C0=C0+1<br />
:POKE 3 54272+PK0,1<br />
710 SYS 43 AT,25,24:PRINT STRIU<br />
COPISPC2,HOMEMNEXT<br />
720 EF=1:12$="<br />
870 8$140/1"313":RETURN<br />
880 XP.19:SYS AT,8,20<br />
1PRINTIESUESS THAN?"<br />
:SYS AT,18,20:60SUB 960<br />
:14(5,1).1$<br />
890 B$14,11=<br />
900 1 XP:22:SYS AT,8,20<br />
3< :PRINT"[SUREATER THAN?'<br />
1 :SYS AT,21,20:GOSUB 960<br />
:RETURN :13$(5,1)=1$<br />
910 11$(40)="3><br />
1920<br />
XP.23:SYS AT,13<br />
:RETURN<br />
1 :PRINT"( THAN OR :TO?'<br />
20:SYS<br />
A1,22,20:6OSUE 960<br />
:8115,11=1$<br />
930 13$(4,11="3(.<br />
1940<br />
XP.23:SYS AT,8,2a<br />
:RETURN :PRINT') THEN OR =TO?'<br />
:SYS AT,22,20:GOSUB 960<br />
03$15,11=18<br />
950 8$14,11=<br />
1955<br />
REM GRAPHICS CHAR IS CBM<br />
3>e:RETUR<br />
0 [CRP]<br />
960 N PRINT'ECO,UPY<br />
1 1PRINT"[YELLOW,SF]<br />
:SYS AT,XP,YP:1$.""<br />
:SYS IELD AT<br />
:FOR 1.0 TO I STEP 0<br />
1 . (SPC16,HOME)"<br />
:SYS 51885:P.PEEKI254/<br />
730 0,24 POKE STR251,01POKE<br />
252,24 970 IF P.20 THEN 1$.LEFT$(1$,<br />
:POKE CI 253,4SYS AT,13,24 PEEK12511)1NEXT<br />
+11" HIP=14:YP.24:60SU9 960 980 IF P(>13 THEN 1$.10CHR$<br />
740 NIF<br />
1$."THEN 720<br />
IP1:NEXT<br />
750 AS=ASCIIEtIF A AS>64 AND 990 RETURN<br />
A5(91 M THEN IOCHRWS4.128 1000 :<br />
) E /<br />
1010 REM TRANSFER FORMAT TO<br />
760 B$12,11=1$:SYS 4<br />
AT,0,24 MAIN PRO&<br />
. :PRINT<br />
1020 PRINT"[CLEAR)'<br />
R1<br />
CURSOR TO INPUT POS & :SYS AT,5,3:PRINT'(SP]<br />
11C7,R<br />
PRESSESPC,WHITE,SR,SE,ST, RESS 'R' TO RE-RUN<br />
SU,SR,SN,HOMEI<br />
6VSON,<br />
1023 SYS AT,3,6:PRINT'EWHITE,<br />
770 POKE 1SMAYE<br />
2023,160<br />
HAVE TOESPC,STIAPE OR<br />
:POKE 1 56295,190:RETURN ESPC,SMISKIT/DP<br />
780 POKE 7 T,CL:RETURN 1029 GET a:SYS AT,29,6<br />
790 1<br />
$<br />
:PRINT 6$<br />
800 REM<br />
(<br />
SET UP VARS FOR M/C 1031 1IF<br />
G$="T"THEN PRINT'<br />
INPUT<br />
1<br />
1DOW (DOWN,RIGHT3,SP)RESESPC,<br />
810 K$411$(4,1]:POKE<br />
$<br />
251,0 N2] RVSON,SR1SE,ST,SU,SR,SN,<br />
:POKE 252,61POKE 253,3 RVSOFF,SPC)T0 SAVE"<br />
:YP.20 ,<br />
L<br />
:WAIT 197,1:OPEN 2,1,1,<br />
820 ON ASC[10)-52 50SUB 830, I<br />
880,900,920,940:RETURN<br />
E<br />
1035 FIF<br />
6O<br />
830 XP.21 N<br />
11040<br />
OIF<br />
G$WPTHEN 1029<br />
840 SYS C AT,8,20:PRINT'ESL1 R1050<br />
RPRINT<br />
TA13151<br />
OWER I LIMIT<br />
1 M<br />
, IGOSUB $ 960:8$15,11=1$ 1060 THEN [DOWN3,SS]<br />
AOPEN<br />
15,8,15,<br />
":SYS :POKE 1 251,0<br />
1R<br />
:OPEN TU<br />
2,8,2,40<br />
850 SYS A- T 4T,8,20:PRINT"[SO<br />
,<br />
10' N IFORMAT "<br />
PPER 210 LIMIPESPC11,RVSON,<br />
, 2<br />
1070 I:<br />
PRINTI2,FD:FOR 8.0 TO 6<br />
CWISYS<br />
0)<br />
AT,20,20<br />
:FOR S,11 G<br />
1.0 TO FD<br />
;GOSH 960:81(6,1).1$ 1O<br />
IF 8$(6,14)=""THEN B$18,<br />
860 IF VAL18$(6,11)(VALIB$I5, HI="<br />
IOTHEN 840<br />
T<br />
1080<br />
O<br />
PRINT112,[4(5,H):NEXT<br />
1<br />
2<br />
0<br />
7<br />
0<br />
:NEXT<br />
1090 IF 6l="0"THEN CLOSE 15<br />
1100 CLOSE 2<br />
1110 IF GO"T'THEN POKE 198,0<br />
;GPO 1140<br />
1120 PRINT"[CLEAR,00WN2]<br />
/0R(6$)=<br />
1EF5P1)<br />
1230 [F1PAN REM ANY 4 DIRECTIONS<br />
1240 D IF GWERIGHTI G<br />
'AND $ < X(336 . " THEN X=X4.8<br />
1250 IF 68="[LEFT]<br />
LOAD<br />
'AND X>24 THEN X=X-8<br />
HR$(34)",8<br />
1<br />
1260 IF G$."[DOWN]<br />
6CHR<br />
:POKE 631,13 'AND Y(232 THEN Y=08<br />
1130 1POKE $134 POKE 632,13:PRINT' 1270 IF Gle[UPPAND Y>58 TH<br />
11"MF [DOWNCRUNEHOMErpNEW 9 8 , 2<br />
1140 64.M PRINT"[CLEARI"<br />
EN Y.Y-8<br />
1280 REM CONTROL SPRITEI MSB<br />
AIN. :SYS AT,2,61PRINT*ESCIND<br />
0<br />
TO MAIN PROGRAM & PRESS<br />
1290 IF X)255 THEN POKE 016,<br />
1:F.11POKE V,X-255<br />
[SPC,RVSON,SR,SE,ST,SU :POKE 01,Y:NEXT:RETURN<br />
SN,DOWN2] 1<br />
1150 SR, GET 6$:1F G$OCHR$(13/T<br />
HEN 1150<br />
1300 IF F THEN FeO<br />
:POKE 016,0<br />
1310 8<br />
1160 POKE 198,1:POKE 631,131<br />
NEW<br />
1170 1<br />
1320 REM FLASH SPRITE<br />
1330 POKE V,X:PCKE 01,Y;NEXT<br />
:RETURN<br />
1180 REM MAKE SOUND 1340 FOR W.0 TO 40:6ET 6$<br />
1190 POKE 54276,65 :IF 6$0"THEN RETURN<br />
:FOR DE=I TO 150:NEXT 1350 NEXT:POKE 021,0<br />
:POKE 54276,0:RETURN<br />
1200<br />
1210 REM SPRITE MOVE ROUTINE<br />
1360 FOR W=0 TO 40:6E1 G$<br />
:IF 6$0"THEN POKE 021,1<br />
:RETURN<br />
1220 FOR T=0 TO-1 STEP 0 1370 NEXT:POKE 021,1<br />
;SNUB 1340:T=16OCHR$113 :GOTO 1340
from direct or<br />
to pubbc<br />
Mon s e ms. Action<br />
ken abgainst yone so<br />
Itng th,s, app, ltrA<br />
At last! The perfect modem for your<br />
Commodore • 64 or 128, giving you<br />
access to Prester, , Micronet • viewdata<br />
and a host of other services — plus<br />
user-user communications.<br />
It couldn't be simpler. The 64<br />
-1<br />
Mautoanswer,<br />
with all comms<br />
software on-board in<br />
ul<br />
ROM. 64 Multimodem fits<br />
your Commodore's cartridge port, and has Just<br />
one external connection<br />
ti<br />
— the telephone<br />
lead.<br />
m<br />
The 64 Multimodem ois<br />
menu driven and<br />
multispeed, with CCITT d V21/23 and Bell<br />
103 standards, handling baud rates of<br />
300/300, 1200/75 and e 75/1200.<br />
Functions include save m and<br />
print frame and automailbox h<br />
with edit and save.<br />
9<br />
a<br />
Buy your 64 Multimodem now and<br />
well give you free s introductory<br />
e<br />
subscriptions to Micronet a and<br />
o<br />
Microlink • an unbeatable u package<br />
at an unbeatable price<br />
t<br />
— Its pure<br />
C6<br />
genius!<br />
eC<br />
o<br />
\G e<br />
Approva l a pplie d for • r e g d trade marks ohne companies concerned<br />
From the Communications<br />
i<br />
a<br />
Powerhouse<br />
l<br />
a<br />
n<br />
GIVES YOU DATABASES, BULLETIN<br />
BOARDS, ELECTRONIC MAIL,<br />
PRESTEL ALL ON YOUR<br />
COMMODORE 64 OR 128<br />
d<br />
d<br />
\°<br />
c<br />
\<br />
e<br />
z<br />
5<br />
e<br />
(i,v<br />
\Nc<br />
3<br />
eg e<br />
-<br />
‘ \A<br />
\<br />
0\ ,\\1\N6e<br />
e(\<br />
S'<br />
s ociS\QC<br />
Gocc\cc\c)<br />
6‘<br />
\<br />
tx N4.) \)_6.,<br />
N<br />
•clg) •<br />
6'<br />
-,cecpc\o\oZIN.l.cev-:e<br />
c<br />
,\cs\ti\c, \<br />
5. e<br />
?<br />
ik0 (\\9<br />
e<br />
‘0 9N<br />
\<br />
‘%<br />
txost.(‘ O<br />
1\f°\c'N°b.<br />
ti\54s<br />
6e a 0<br />
\<br />
0e $<br />
'<br />
se c\ e\Cel G<br />
'0<br />
66° e<br />
\<br />
\<br />
1<br />
TC',$1.0GY<br />
1‘.1<br />
MIRACLE TECHNOLOGY (UK) LTD ST PETERS STREET IPSWICH !Pi 1XB ENGLAND<br />
(0473) 216141 6 LINES TELECOM GOLD 79: KEY 001 (Dealerlink 72: DTB 10135)<br />
946240 CWEASY G 19002985 PRESTEL MAILBOX 919992265<br />
et<br />
e<br />
•<br />
•<br />
•<br />
•<br />
p<br />
o<br />
e<br />
s<br />
•<br />
•<br />
?os\c() •61a<br />
.•<br />
..•<br />
•• •<br />
••<br />
•
Runecaster delves once more<br />
into the secrets of<br />
adventuring.<br />
AS WE WATCH MANY SOFTWARE<br />
houses striving to improve the graphics<br />
which now illustrate most adventures, it is<br />
interesting to talk to the actual players of<br />
these modern-day marvels.<br />
Whilst nearly everyone agrees that<br />
swiftly drawn, colourful graphics can<br />
always enhance the appearance of an adventure.<br />
most of the players I have spoken<br />
to recently, also go on to say that unless<br />
the pictures have some relevance to the<br />
game play, then the contents - either<br />
descriptive text and/or good puzzles - is<br />
what really matters.<br />
Following this is usually a discussion<br />
on the attributes of the latest parsei<br />
These too seem to become more complex<br />
as time goes by, with longer and longer<br />
sentences being understood and<br />
actioned with astounding accuracy. But<br />
do many players use these wonderworkers?<br />
Most, it seems, tend to use the<br />
least possible number of words and<br />
letters. The exception occurs when<br />
repeating a set series of commands to get<br />
to a previously attained position.<br />
Interesting ain't it? Who are we all<br />
trying to kid? Probably the only people to<br />
gain from all this are the promoters of<br />
programs - you have to admit it sounds<br />
better if you are advertising an all-singing,<br />
all-dancing program. Then there is the<br />
newcomer to adventures. It certainly<br />
provides something to look at while trying<br />
desperately to think about what to do<br />
next!<br />
Let us know what you think. And give<br />
us some examples of what you like listed<br />
in the order of preference. Whilst<br />
thinking about it, try playing a text only<br />
adventure like The Secret of St Brides.<br />
Back to School<br />
St Brides is a real location and a real<br />
school. Girls pay money to stay there but it<br />
is no ordinary school. It is as though time<br />
was stopped 50 years ago. The scenario is<br />
straight out of those storybooks our<br />
parents used to read, although this<br />
adventure takes things a step further.<br />
You play the part of a recently joined<br />
'pupil', puzzled by the apparently total<br />
belief of all the others, that the time is 1929<br />
and not 1986. Your self-determined quest<br />
is to find out The Secret of St Brides.<br />
The program has been around for<br />
some time for the Spectrum but has only<br />
recently been produced for the C64, It is a<br />
Quill-based game and is not easy! There is<br />
plenty of descriptive text and lots of things<br />
to find. The problem is working out what<br />
to do with them.<br />
There are two approaches to the game<br />
- the basic one of tracking down what is<br />
91ti<br />
s<br />
s<br />
t<br />
o<br />
e<br />
v<br />
g<br />
i<br />
t<br />
e<br />
1<br />
t<br />
s<br />
kommomE64<br />
going on and also an additional one to<br />
find the Amulet, If you can find it and let<br />
St Brides know, the school will award you<br />
an 'A' Level in Adventuring.<br />
The vocabulary is fairly extensive and<br />
the problems met along the way are<br />
devious - the instructions suggest that<br />
they may all be solved by logic, inventiveness<br />
and a little homework. All I can say is<br />
that I must have missed some of the<br />
lessons where they explained this<br />
homework. I'm stuck!<br />
A neat touch is the option to save a<br />
game position to either disk or tape the<br />
program is on tape). It is not an expensive<br />
program but it will keep you frustrated for<br />
hours. Try it and see, then let me know<br />
what to do with the cat basket!<br />
26<br />
Come Home Mike Hammer<br />
Thr latest detective adventure to hit the<br />
C64 is from US Gold's All American<br />
Adventure series. It's entitled Masquerade.<br />
This is a fairly middle of the road<br />
program without unusual features to<br />
make it remarkable. It is only available on<br />
disk, from which the graphics aee called<br />
up each time they are needed and take<br />
about eight seconds to appear.<br />
The pictures are clear and colourful<br />
and are in a semi-cartoon style that comes<br />
across well. There are three modes of<br />
presentation - text only, all graphics<br />
shown, and a neat variation called up by<br />
the command 'MIXED'. This will display<br />
text only but a null 'RETURN' flips the<br />
display into 'all graphics' until the next<br />
null 'RETURN'.<br />
You play the part of a private-eye on<br />
the trail of a Mr Big in the crime world.<br />
The accent is on observation and you<br />
must not expect to see everything<br />
immediately at fi rst glance. Various<br />
messages and descriptions are not<br />
repeated so have your notebook handy!<br />
There is a time element to your play, as<br />
the initial locations will explode into thin<br />
air, 75 minutes (not real time!) after you<br />
start out on your investigations. This could<br />
be 'crucial as you must intercept a<br />
telephone message before this happens!<br />
The command interpreter is the basic<br />
VERB/NOUN input and the vocabulary<br />
does not appear to be very large. The first<br />
five letters of most commands must be<br />
given for them to be actioned. This is very<br />
important since the response to anything<br />
it does not recognise is "SORRY CAN'T<br />
DO THAT RIGHT NOW". Fortunately this<br />
does not apply to direction commands<br />
(N,S,E,W) and things like inventory (I) and<br />
look (L).<br />
The general style is reminiscent of<br />
Mindshadow (which is now available on<br />
cassette) but does not have quite the same<br />
polish exhibited by Activision's game, It<br />
should prove an ample challenge to the<br />
detective brigade and although not<br />
excessively difficult, is probably not to be<br />
recommended to the novice adventurer.<br />
•
Diabolical<br />
I always knew that I had a strong tendency<br />
towards the more active type of<br />
adventure games - Halls of Death, The<br />
Valley, Exodus: Ultima ill and more<br />
recently the reconstituted Temple of<br />
Apshai Trilogy - but I never thought that I<br />
would suffer a program that crashed so<br />
many times, that I lost count.<br />
Just browsing through the shelves of a<br />
software emporium not so far from home<br />
base, I came across Telengard produced<br />
by Eclipse Software for The Avalon Hill<br />
Game Company. I thought I remembered<br />
seeing this advertised in some American<br />
magazines but could not remember it<br />
being pushed at all in this Country, so, at<br />
f7.95, I gave it a try.<br />
There have been many attempts to<br />
reproduce Dungeons and Dragons style<br />
games on computers. Some have been<br />
reasonably successful, some have been<br />
pretty ghastly. Telengard, I find horribly<br />
addictive, but it is true to the main aim of a<br />
D & D type of scenario.<br />
Telengard is a graphics adventure in<br />
which the main aim is to gain experience<br />
and find treasure whilst fighting off all the<br />
nasties that hinder your progress. The<br />
graphics are reasonable and the tension<br />
mounts from the first few moves to the last<br />
moments of life.<br />
You start at the bottom of stairs that<br />
lead up to a congenial inn. So far so good.<br />
All around you is a maze of passages.<br />
These you must explore to find treasure,<br />
gems, gold, silver, even refuse! You start<br />
out with sword, shield and armour, all of a<br />
pretty mediocre brand, because if you<br />
search diligently you can fi nd better<br />
quality items, indicated by such as "A+7<br />
SWORD".<br />
All of this is very much par for the<br />
D & D course, even the opening determination<br />
of your characteristics is very<br />
sensible. You see a series of random<br />
numbers allocated for your character's<br />
attributes - strength, intelligence,<br />
wisdom, constitution, dexterity and<br />
charisma.<br />
These series of numbers will continually<br />
be updated until you press<br />
'RETURN' to signify your acceptance of<br />
the present batch. This may sound as<br />
though you can cheat to get the character<br />
you want, but in practice, all this means is<br />
that you can sway the result by concentrating<br />
on one or two characteristics - you<br />
are not likely to see an 'all 18s' series very<br />
often! You may also choose your<br />
character's name.<br />
The instruction booklet firmly recommends<br />
that you choose a character with a<br />
sound constitution! Heed the advice well,<br />
it's based on knowledge, of the game. A<br />
character's 'hit points' are initially equal<br />
to its constitution. As these are whittled<br />
away each time you are hit by a monster,<br />
the larger the starting value the better.<br />
Lost 'hit points' may be regained by a<br />
restful night's zizz at an inn, Unfor-<br />
tunately, it is not often possible to return<br />
alive to said inn in time to recuperate!<br />
Although you start beneath an inn, this<br />
is by no means the only inn to be found -<br />
there are lots of them. Thank the gods for<br />
small mercies! On arriving at an inn, any<br />
gold you have with you is banked safely<br />
away and your experience credited with<br />
the amount of gold with which you<br />
arrived.<br />
All valuable treasure - gems, silver etc.<br />
- is converted to the gold standard for this<br />
calculation. Neither does it matter which<br />
inn you decide to visit, they are all linked<br />
by 'computer-inn'. a fantasy world<br />
version of Barclay's Bank!<br />
TELENGARD<br />
CO M M O DO RE 64<br />
1<br />
,<br />
5<br />
f<br />
•<br />
As your experience increases, certain<br />
values trigger a change in your 'hit points',<br />
this means that you can take more punishment<br />
and can venture further into<br />
Telengard in search of more dangerous<br />
monsters and greater loot.<br />
Amongst the maze of rooms and<br />
caverns which you explore will be found<br />
numerous stairways that reach down into<br />
the depths of Telengard - travel that way<br />
at your peril! It is quite dangerous enough<br />
for even the Level three adventurer to<br />
travel far from the initial position, let<br />
alone look for further trouble down<br />
below!<br />
Not only will your level be<br />
incremented by your increase in experience<br />
but also your ability to cast spells<br />
will increase. Initially you only have the<br />
skill to cast level one spells, and only one<br />
of those between visits to rest and<br />
recuperate at one of the thoughtfully<br />
provided alehouses.<br />
Magical spells are divided into six<br />
levels of relative power. Each spell level<br />
has six distinct spells. Characters at.experience<br />
Level one or two, have only the<br />
27<br />
Adventures<br />
six spells at level one at their disposal. As<br />
characters gain levels of experience the<br />
use of higher level (and therefore more<br />
powerful) spells becomes possible.<br />
Every three levels of experience<br />
gained, permits the use of the next higher<br />
level of spells. Spells are of roughly two<br />
types - 'combat' spells and 'duration'<br />
spells. The former are active offensive<br />
spells such as 'magic missile', lightening<br />
bolt* or 'fireball'. The latter allow you to<br />
cure wounds, search for traps or pass<br />
through walls etc<br />
All commands are given via the<br />
keyboard as single key inputs and, except<br />
in the novice's training exercise (entered<br />
by calling your character Demo!), action<br />
takes place in 'real time', so you have to<br />
have your wits about you, There is in fact<br />
plenty of lime to take the appropriate<br />
action - but it does not seem like it when<br />
you first start!<br />
Commands are divided into two types<br />
- 'action' and 'encounter', There are nine<br />
of the first type and they are very easy to<br />
remember. 'H' for help will tell you what<br />
they are! The 'encounter' commands are<br />
'E'vade, 'C'ast (a spell) and to picl.<br />
up something you will be prompted to<br />
press 'RETURN'. Movement is controlled<br />
by the four keys W,XS,A (NSEW), U and<br />
D.<br />
There are 20 different types of<br />
monsters roaming around Telerigard.<br />
Most of them are hideously opposed to<br />
your continuing existence! A very small<br />
proporticn meet you with the greeting<br />
that they -<br />
like taken two ways to start with, initially<br />
y<br />
thought<br />
o u<br />
they<br />
r<br />
were going to eat me but,<br />
they actually help you, perhaps curing<br />
b<br />
you<br />
o<br />
of all<br />
d<br />
wounds or maybe giving you a<br />
y powerful " . weapon.<br />
T The hmonsters<br />
have a similar system to<br />
ayou and t your experience, so they have a<br />
c<br />
different level, this level and their rank<br />
(Gnoll, lowest - Dragon highest), deter-<br />
a<br />
mines how many experience points you<br />
n gain in defeating them. It also determines<br />
bhow<br />
difficult they are to defeat! Although<br />
eyou<br />
may be only on the first level, a<br />
surprising number of powerful creatures<br />
appear right from the start.<br />
When I first came up against a level 60<br />
Giant, I thought there must have been a<br />
glitch in the program but then I found the<br />
instruction booklet hints at level 76! As<br />
befits a game of this type, some of the<br />
monsters have quite nasty habits - several<br />
drain your energy and knock you down a<br />
level of experience. Dragon fire is not<br />
much fun either!<br />
There are a number of 'features' such<br />
as stairways, pits, altars etc. which remain<br />
at the same locations - if you can find<br />
them again. Fountains seem to crop up<br />
quite often. The water from these varies in<br />
colour as does its properties when drunk.<br />
Some colours are benefi cial, and,<br />
surprise. surprise, some are not!<br />
There are potions to heal and also<br />
those to increase your strength. Various
artefacts found have 'plus' factors. Careful<br />
that you don't inadvertently press<br />
'RETURN' to pick up an item which has a<br />
smaller 'plus' factor than the one you<br />
already have. Its very easy to do in the heat<br />
of the moment! Sadly, you will have lost<br />
the one you were carrying.<br />
I have found items up to 'plus 8' but I<br />
suspect that there are more powerful<br />
creations deeper down. One of the most<br />
useful is a 'Ring of Regeneration', this aids<br />
the recovery of your hit points by its 'plus<br />
factor' with each step you take, a definite<br />
necessity for exploration below level two.<br />
There are also the useful 'Scrolls of<br />
Rescue' - you may pick up several of<br />
these. Using one will take you back to<br />
your original place of entry to Telengard<br />
(under that inn), but there is a cost, any<br />
gold you have with you is lost on the way.<br />
This is sometimes a fair price to pay if you<br />
have been teleported to an unknown<br />
corner of the underworld.<br />
Characters may be saved on a separate<br />
cassette and I would recommend doing<br />
this immediately you enter the game -<br />
especially if you have taken any time in<br />
trying to get the character's attributes to<br />
your liking!<br />
The instruction booklet burbles on<br />
about being able to load dead characters<br />
if their name begins with SV - I think this<br />
must be a throw back to a disk based<br />
predecessor, as I died with monotonous<br />
regularity and had no trouble time-<br />
•<br />
shifting my character to a 'save' before he<br />
died!<br />
I hope I have whetted a few appetites<br />
of the more adventurous amongst you<br />
with what has gone before perhaps now is<br />
the time to look at the other side of<br />
Telengard.<br />
For a start, it cannot be in the true spirit<br />
of the dedicated D & D game. Why?<br />
Because I do not think you could stay alive<br />
for long enough to ever get anywhere<br />
without 'saving' your character to tape at<br />
very frequent intervals. I was prepared to<br />
accept this as part of the 'overall battle',<br />
others may not be so sanguine about it.<br />
There are other problems you have to<br />
overcome too. And not part of the game<br />
either! I have never had a program crash<br />
so often before. It loaded perfectly and<br />
within the first few moments crashed with<br />
a SYNTAX ERROR IN LINE XXXX.<br />
Sometimes RUN got it going again, only to<br />
crash once more with a syntax error in a<br />
different line!<br />
Once past the first few minutes, things<br />
were OK until I 'saved' a character. Most<br />
times this went perfectly but there were<br />
many occasions when the program<br />
crashed after a successful 'save' and the<br />
main program had to be loaded from<br />
scratch (about four minutes).<br />
The program as you must have<br />
guessed from the above is written in Basic<br />
and of course is a little slow to re-draw<br />
your character's surroundings as you<br />
Tr1 • ' I ;<br />
7<br />
* •<br />
A U T<br />
O M A<br />
T I C<br />
MegaUtility •<br />
Disk V.4.0<br />
N<br />
O<br />
U<br />
S<br />
E<br />
R<br />
K<br />
N<br />
O<br />
W<br />
L E<br />
D<br />
G<br />
E<br />
Adventures<br />
COMPARE THE REST WITH THE BEST<br />
NOW DOSOFT OFFERS YOU EVEN MORE!<br />
S<br />
. 1<br />
MegaTransfer<br />
Disk V-4.0<br />
Before mu decide w Inch tape-to-disk utility<br />
to buy. consider if it gives you.<br />
WITH TEN<br />
MegaTape<br />
Super Value s<br />
• Full C<br />
Programs - to load from Disk • Filtuen top<br />
titles OftWitt includistit the latest sports. flight and<br />
light SiOttii simulations. No more up• winding!<br />
No i sother 1 1 unlit, Ofa m<br />
FREE DISKS<br />
this . 1 a• rrcript General purpose transfer • NE' Alplulood disk Turboloader 1or<br />
minines .<br />
i o n<br />
fa r OM' major turboload g l o w s co. Add this live block program to<br />
systems 1 1 u l Nova. Burner, Visiloa d. Flash e a ch disk and your pro warns will load at<br />
;ind Ct iPa S2tt a(including<br />
1 1 . the tre y latest VAk loader Lover hour limes he normal raw. No menu is<br />
as og used e t iin tcurrem e chart nippers 1 and more re quire d and you don't h;mc hilmad<br />
rThese<br />
rout Uses will transfer progra<br />
won't . h inorma c h lly load with the Disk Drive pre vious versions. • Programmer's<br />
present. • A huge colle ct Ion of specific TimboDha t Utility. hast load. sat e. and<br />
rout<br />
A l<br />
ines<br />
p h<br />
fi r Irian<br />
a l o<br />
prra<br />
a d<br />
e irtvl ve rify L , with 211,1.1<br />
ply)grams, -<br />
s e p a ll a Vr ia a t an eeaiq<br />
Menu D ispla ys program sun and end addresses<br />
System<br />
let<br />
l y<br />
numbe<br />
• A program<br />
r, .<br />
identifier„ and the I nclude s east I X'S commands. Compatible<br />
classic M Diskus u 1.2 to c transfer your vintage with most expanskon cartridges. • %%Me<br />
skisyload collect ion, D i s k Copier backs up ;in entire disk<br />
h<br />
MegaTransfer V.A.O. is economical unde r three minutes. • Turbo/ 1 k Copy<br />
i mspate. ptransferring r oonly<br />
the actual se le cte d I from Disk ti, Disk Re-ad, and<br />
program v etit:uteri d<br />
-reit<br />
o lad at over vfour<br />
times the normal rate • Nibble Disk Copy backs up most<br />
with the incorporated Disk llarbotorader, prote cte d disks in just M C R e a d<br />
Ai e I ra r<br />
,which also allows your existing disk a n d Oath., all errors automatically • Fast<br />
nprogram, s f e lobe r n fastback's' from disk. Forma t, homtat your disks in a traction of<br />
Fwith Visi.Screen R E E Stripe .<br />
TurboLoad. Also handle,<br />
old Rib'. and Fastback<br />
e d klegaTealisfer V.4 .0 is ra sily extended the normal nine • D isitiola pt Plus.<br />
p<br />
from<br />
r<br />
pwytous<br />
o g<br />
editions Despite. claims to Tra nsie nt wide ••Icici). Id single and<br />
the contrary. it will tra nsfe r programs multipa rt disk programs to tape with<br />
r<br />
whkh<br />
a<br />
no<br />
m<br />
other<br />
s<br />
utility will handke. scre e n.M ripe hunter turboload.<br />
wBeware i of simila r sounding utilitie s, I nclude s pro ifessiona I mastering scheduler<br />
lwhich l consent almost entirely of disgulAed An interesting program tnot r.. protected<br />
w<br />
versions<br />
r<br />
of our old male ria l I f you want to disks) • M e ga Utillty Disk is supplied<br />
hie up to date, mu need Megifrainier, thecomple te with 10 FREE 3M Bla nk Disks<br />
ireal "Turbo t Smasher'. 1 W lib plastic- hot a s<br />
e s<br />
a<br />
At Turbo-to-Disk outman, press time. Mall softwa AdVere rte I is, if( icl t 1i 1 .7 l spe t cifie KM 1,17 d in (It) this I ad. low's<br />
t<br />
t hal tor value' S ) 1 7<br />
• nu<br />
to , II r(pricv34.00<br />
/uc1i.th<br />
Disks (& Boa land receive Aleprapc (on<br />
"<br />
n,t disk) and I our D pra tied sprite libraryieditor<br />
I MPro-Sprite)<br />
alisolutely FREE!<br />
F<br />
• e Punhasers<br />
R E<br />
will<br />
E<br />
receive details of future<br />
updates g and caning new DoSoft Programs<br />
at iiiCIV2O4alte01.15 pries,<br />
a<br />
Existing<br />
l<br />
Cusinmcra; send /Jan. likAnli<br />
!mina ra<br />
-pounds<br />
n s only I1 tr Alcgatranlier Filth<br />
l<br />
firm f e<br />
b<br />
cr h<br />
w<br />
t<br />
i<br />
m<br />
e<br />
a<br />
o<br />
t<br />
28n<br />
( d<br />
i<br />
d<br />
s<br />
k ?<br />
e<br />
os<br />
s<br />
r l<br />
n<br />
te<br />
I<br />
- e<br />
3M Disks at<br />
Low, Low Prices<br />
• t our famous tape utilit s Icor One w hy buy unlabelled, unbranded disks ot<br />
Daussette (or equiyakmit N o additional unce rta in origin and specificatrimP<br />
hardware is re quire d. MeataTape • %St offer top class, 3SI Disks bearing the<br />
comprises: • Tape-to-Tape transfer ma nufa clure r's label, at an unprecedentedly<br />
rout inesi A vast collectil Si hir thy major low, low price • Specification 55,1113<br />
I urlsoltrad Warn., • Simple to operate. '4 4 1 >-0 , suitable for all VA - drives •<br />
MegaTape handles a vast range C o m p l e t e with labels, ss'rite protect cabs.<br />
of diffrivril fastkiad systems. and 1.-wat Tyca c spun acrylic sleeves and a FREE<br />
increases loading ,peed in many CaieS Flip/ File High impact Pia stk Storage<br />
• Features our Yisi-Screen. Stripe H o t worth S2 , 7S Our Inclusive Price is<br />
Turbotoader • The most powe rful pa st SA Z.S0 per box of ten.<br />
Tape-IniTspe software ort dev iscd • R RS N it extras N o catches.<br />
Pius. Our c12%.ile turbo conversion utility This is the price you pal.. 2<br />
gist-s a new !casco( life to )stir vintage<br />
- slow Uload tape K colkxtiim Converted<br />
P<br />
pnograms<br />
O<br />
load<br />
S<br />
independent's<br />
T<br />
at STArEN<br />
We take a<br />
times the normal ram,<br />
• FAST DISK UTILITIES • LOADERS • 3-MIN DISK COPY • FAST DISK FILE COPY •<br />
move location. But it is not that slow, if it<br />
was, I do not think I could have become so<br />
involved, In this day and age it is surprising<br />
that the present version was not<br />
compiled. One must surely ask -why not?<br />
Neither does the keyboard buffer get<br />
cleared, so you have to watch that you do<br />
not type in ahead of yourself or you will<br />
find you have not picked up that '+8<br />
Armour!<br />
For all these genuine criticisms, I have<br />
to admit I enjoyed the game enormously.,<br />
quite addictive in fact, and that's<br />
something, for someone who plays as<br />
many adventures as I do. But then I'm a<br />
simple barbarian at heart.<br />
I do not think that Eclipse Software still<br />
exists - it was an 'imprint' for Longmans<br />
(the publishers) but the program is still for<br />
sale. The cost is not high, so if you are a<br />
frustrated 'dungeon dweller' why not<br />
have a try - I really would like to hear what<br />
you think of it.<br />
If you cannot find it in your local shops<br />
you can get it direct from: Customer<br />
Services Dept, Longmans Group Ltd, 4th<br />
Avenue, Pinnacles, Harlow, Essex CM19<br />
5AA. The price is £7.95 plus 75p post and<br />
packing. Mine may have been a rogue<br />
copy, but if yours crashes like mine just<br />
consider it as part of the adventure, and<br />
please do not complain - you have been<br />
warned!<br />
5<br />
9<br />
bite Out of<br />
Disk Prices!<br />
How to get your DoSoftwrare<br />
Please send cashwheque'PO with order<br />
for last despan hiSAE lush fur full de la ils<br />
i.<br />
Send off thy. tot<br />
DoSoft (De pt YC), 2 Cla kincsor Ave ,<br />
Blackpool, FY2 OEE<br />
1.2 LIE it Postage order includes included Blank Eurog Disks. sadd s eW) era 7s<br />
5. add aor l SO for Airmail. or 43.50 if corder<br />
include, Blank Disks<br />
°Soft<br />
You'll Do it Better<br />
%kith DoSoft
1<br />
lain Murray provides al<br />
program to smarten<br />
up your cassette<br />
library.<br />
This program allows the u5er to<br />
produce neat inlay cards for<br />
cassette tape boxes for music<br />
tapes or computer data tapes<br />
using a Commodore 1520<br />
Printer/Plotter. It uses many of<br />
the features of the 1520<br />
including the four character<br />
sizes, four colours, and vertical<br />
text for the spine of the inlay.<br />
The program requests input<br />
of the tape number, a title for<br />
the tape and for each side, and<br />
the option to list up to 10 items<br />
on the index of each side of the<br />
tape. If any input is made<br />
incorrectly, then pressing<br />
1<br />
op<br />
13<br />
rn<br />
rn<br />
c.n<br />
U<br />
)<br />
S<br />
.<br />
3<br />
3<br />
I<br />
d<br />
1<br />
V<br />
3<br />
S<br />
S<br />
E2 N- BACH<br />
T<br />
RETURN on its own at the next<br />
input will cause a jump back to<br />
the previous prompt. The<br />
plotter will then produce the<br />
required inlay card.<br />
The plotter draws an outline<br />
for cutting out and folding the<br />
card. The tape number and title<br />
are then printed, followed by<br />
the title and index for each<br />
side. The tape number and title<br />
are then printed on the spine.<br />
The character size is set automatically<br />
depending on the<br />
length of the titles required.<br />
Finally, the tape title and side<br />
titles are printed on the back<br />
flap (though if the tape title and<br />
side titles are the same, then<br />
only one will appear). On completion<br />
of the card, the option<br />
to print another is given.<br />
Control characters in the<br />
text are detailed in preceding<br />
REM statements, but these<br />
REM statements need not be<br />
typed in.<br />
CLASSICAL PIECES<br />
- BEETHOVEN<br />
PIANO SONATA Re 'PATHETIGUE'<br />
PIANO SONATA 014 .<br />
NOOHLt8HT.<br />
PIANO SONATA •73 .APPASSIONATA<br />
.<br />
PIANO CONCERTO AS .<br />
ENFERON<br />
FYIIPHENY L SI MOVEMENT<br />
ETTIPhISNY AS ATH MOUEMENT<br />
. s i c<br />
M O V E M<br />
.1.ITT1E. FUGUE IN 8 MINOR<br />
BRANCENBURG CONCERTO AI<br />
AIR FROM CRCHESTRAL SUIT .3<br />
JESU JOY OF nAws DESIRING<br />
TOCCATA AND FLU& IN O NtNOR<br />
TIC ART OF FUGUE CSFLECTIONS)<br />
SINFONIA TO CANTATA .29<br />
SHHEP rwr SAFELY GRAZE<br />
064 + 1520<br />
FROGRA1<br />
1<br />
10 REM 1 TAPE INLAY MAKER 80 TN$1<br />
20 REM<br />
1<br />
1 BY IAIN MURAY<br />
:TN8INTWAL(TNS)1<br />
1; CO) 1986 1 01:IF<br />
BI6!":60TO<br />
TN)99 THEN<br />
70<br />
PRINT 'TOO<br />
30 REM 1 FOR YOUR COMODOR<br />
INLAY E 1INPU<br />
85<br />
90 PRINT<br />
IF INS"<br />
"EDOWNESIVE<br />
THEN 70<br />
TAPE<br />
35 6A1."(SPC551"<br />
NAME 1 mi<br />
40 DIM ES(2,15)<br />
MAK 50<br />
60 PRINT<br />
POKE 53280,6:POKE<br />
'EOLEAR,NHITE,DONN3,<br />
53281,6<br />
T 10 TNSK":INPUT INS<br />
ER RIEHT13,RVSON,SPUTAPE INS I<br />
:IF<br />
"(DOWN)TOO<br />
LEN(INS)25<br />
LONE!'<br />
THEN PRIN<br />
70 PRINT<br />
INLAY MAKERESPC,RVSOF1 105<br />
:60TO 90<br />
1 10 NL.2:IF<br />
IF MO" THEN 70<br />
1DO<br />
1NUMBER<br />
1 NL.1<br />
LEN(TNS)>12 THEN<br />
29 WN3<br />
HIV
1<br />
120 Ill<br />
130 PRINT IDOON2lGIVE SDP;<br />
WTITLE :<br />
140 T$111<br />
01 IF LEN1T$1111)42 THEN PR<br />
:1NPUT INT 'CDOON1100 LONE'<br />
T $ 160TO 130<br />
340 PRINT11,"D",469,-505<br />
:REM 16010 BOTTOM<br />
350 PRINT11,4<br />
1 :REM $ BOTTOM LINE<br />
,0 360 PRINT81,4",76,-505<br />
1 1REM t 6010 SPINE 1<br />
-505 370 PRINT81<br />
1 :REM I SPINE 1<br />
4",76,0 380 PRINT81,W<br />
1 :REM I GOTO SPINE 2<br />
139 390 PRINT81<br />
1 :REM I SPINE 2<br />
01",139<br />
400 PRINT01<br />
1 1410<br />
PRINT$3,3:REM 1 10 CHARS<br />
-505 4420<br />
PRINT114:REM t LINE FEED<br />
1430<br />
PRINT12<br />
:REM 1440<br />
NMOSTRCTN):IF<br />
$<br />
TN21 OR<br />
LEN111(2)1)21 THEN TOO<br />
240 PRINT "CDOWN6,RI5HT101<br />
PRESSISPC,RVSON,SPC1SPACE<br />
(SPC,RVSOFF,SPC1TO PRINT°<br />
250 GET AtlIF AtOCHR$1131 I<br />
HEN 255<br />
251 IF NE1200 THEN 1.2<br />
tJuNE(2):6OTO 200<br />
252 1.2:6OTO 150<br />
255 IF A$0' THEN 250<br />
260 PRINT 1<br />
11)00 C C U "<br />
3,RI5 270 PRINT "CRI6H114<br />
HT14, 1 PRINTINSESPC2,S-1"<br />
CAl S-,5PC2l 280 PRINT 'ERIGHT14,C21<br />
E C X 3<br />
,<br />
530 PRINT11,9"<br />
540 PRINT113,11:REM $ 40/80<br />
CHARS<br />
550 IF 11:1 THEN PRINT84,"<br />
ESPCI3r01<br />
560 1IF<br />
TOO THEN PRINT84,'<br />
- I9PC271"11:<br />
570 PRINTO3,01REM "r1$1 6<br />
1 90 -<br />
11 - 6<br />
580 1111I/ IF NE(t)0 THEN 625<br />
590 PRINTI2,0:REM 1 BLACK<br />
600 FOR J.I TO NEM<br />
610 PRINT84,<br />
1620<br />
NEXT J<br />
1SPC28PIE<br />
625 PRINT84:PRINT841PRINTI4<br />
11(1,J) 630 NEXT 1<br />
640 M8.1101(NE11)4E(2)11+(2<br />
011TO111.0160<br />
650 SPO<br />
1 :PS$<br />
TAPP 660 0PRINTI3,2:REM<br />
8 20 CHARS<br />
670 +STR PR1NT$2,3:REM 4TN 1 RED<br />
$1TN/ 680 $ PRINT844<br />
1 ) 1:HOLEFTCGA$,C2122)<br />
+<br />
900<br />
LC<br />
IF T1111/rat THEN 990<br />
E910 F2PRINT82,2sREN<br />
I GREEN<br />
920 FOR 121 TO 122E21<br />
T 1<br />
$ I2<br />
B 2A<br />
1<br />
-<br />
L<br />
E<br />
N<br />
How<br />
(<br />
it Works<br />
T<br />
10-60 set up and title<br />
70-85 $<br />
input tape number<br />
90-120 (<br />
input tape name<br />
130-235 2<br />
input side titles and index entries<br />
240 ready for output<br />
)<br />
, 290 set up printer<br />
280 , 320-390 )<br />
draw card outline<br />
310 400-450 )<br />
print tape number<br />
460-500<br />
1<br />
print tape title<br />
510-560 print side and title<br />
570-630 print index<br />
640-730 print tape number on spine<br />
740-800 print tape title on spine<br />
810-890 print tape title on back flap<br />
900-1040 print side titles on back flap<br />
1050-1060 close file<br />
1070-1110 request repeat or end<br />
290 OPEN 1 4<br />
690 1 PRINT$1,<br />
1 :OPEN 2,6,210PEN 3,6,3<br />
610PE :OPEN 44,6,4<br />
1<br />
11 700 FOR 1.1 TO LEN(SP8)<br />
N 300 PRINT82,0:REM BLACK 1710<br />
PRINT81,1":PRINT81,4<br />
1 310 , PRINT$44,01REN 6<br />
$ UPRIGHT 1PRINT111,<br />
1 0<br />
1320<br />
PRINT11,<br />
1 1330<br />
PRINT81,"D',469<br />
11";REM 1 1REM TOP LINE<br />
1 0<br />
H O M E<br />
41 , 720 1PRINT84,'ESPC41<br />
1 1<br />
730<br />
, 8<br />
NEXT 1 I<br />
1<br />
1<br />
4<br />
(<br />
30<br />
990 PRINT83,1:REM 8 40 CHARS<br />
1000 PRINT$2,1:REM t BLUE<br />
1010 FOR 1.1 TO 26<br />
1020 PRINT84,<br />
1 MIDI(F8,1,1)<br />
1SPC43 1030 PRINTI1,'M<br />
1 11040<br />
NEXT I<br />
1060 PRINT114:PRINT841PRINT84<br />
tPRINT$4:PRINT14:PRINT14<br />
:PRINTO4<br />
1070 PRINT 'IDOWN3,RIGHT123<br />
PRINTING COMPLETE'<br />
1080 PRINT "IDOWN3ANOTHER<br />
INLAY CARD MN/ ?"<br />
1090 GET At:1F Ater THEN C<br />
LR:SOTO 30<br />
1100 IF A$04" THEN 1090<br />
1110 END
Stuart Cooke puts Ariolasoft's<br />
I<br />
H<br />
o<br />
m<br />
e<br />
p<br />
a<br />
k<br />
t<br />
o<br />
w<br />
o<br />
r<br />
k<br />
IF, LIKE ME, YOU USE A COMPUTER FOR<br />
a lot of your work it is very important that<br />
it gives quick access to everything that you<br />
wish to do. For example you may do a lot<br />
of wordprocessing and require access to a<br />
database or a spreadsheet occasionally.<br />
No problem, I hear you say, buy one of<br />
each program. This is a great idea, but one<br />
major thing is being forgotten, time.<br />
The C64 and its disk drive are not<br />
exactly well known for their speed, in fact<br />
most people moan about the lack of it. A<br />
typical wordprocessor will take about five<br />
minutes to load, a database around the<br />
same. Now the problem becomes<br />
apparent. If you need to do a lot of<br />
swapping between programs then a lot of<br />
time is wasted loading them all in, defeating<br />
the whole point of having a<br />
. computer around in the first place. Why<br />
use a database when a card index box is a<br />
lot quicker?<br />
Obviously, if all of the programs that<br />
you require are available on one disk, a lot<br />
of time can be saved in exchanging disks<br />
etc. This is exactly what Ariolasoft has<br />
done with one of its latest releases,<br />
Homepak. A wordprocessor, database,<br />
and communications program are all<br />
available on one disk.<br />
It is also possible to go one step<br />
further. Wouldn't it be great if all of the<br />
programs that you needed to use<br />
regularly could all be in the computer's<br />
memory at the same time? Press a couple<br />
of keys and the program needed would<br />
burst into life ready to obey your every<br />
command. Team-Mate, a program that<br />
looks extremely similar to the 3+1<br />
software that is found on a Plus/4, offers<br />
just this facility. With Team-Mate up to<br />
three programs can be in memory at any<br />
one time. The programs are a Wordprocessor,<br />
a Database and a Spreadsheet.<br />
As an added bonus a graphics package,<br />
for drawing graphs, pie charts etc. is also<br />
present on the software disk.<br />
Homepak<br />
A5 previously mentioned this suite of<br />
programs goes some way to solving some<br />
of the speed problems of the CM as all of<br />
the programs are on one disk. However<br />
they are all quite slow in loading and a<br />
great deal of disk swapping is necessary if<br />
you need to use the other programs.<br />
Each of the available programs are<br />
extremely well presented and easy to use<br />
- the 61 page manual makes sure of that -<br />
and have facilities that you would<br />
probably only expect to see on individual<br />
pieces of software costing as much as this<br />
complete package.<br />
The manual, even though it is very<br />
good, can only be described as microscopic,<br />
It has been reduced so that it will<br />
fit inside ihe standard disk box that the<br />
programs come in. Get a magnifying glass<br />
if you are going to be reading a lot of it at<br />
once, you'll probably need it.<br />
Each of the programs are dealt with in<br />
turn. Screen shots are used to give you a<br />
general idea of what you should see on<br />
the screen when certain menus are<br />
accessed. And a handy crib sheet at the<br />
end of each program's documentation<br />
gives a handy reminder of the keys<br />
needed to operate the software. I must<br />
admit that I fail to see the relevance of a<br />
very large section of the manual (seven<br />
pages) being given over to an explanation<br />
31<br />
of how to use the telecommunications<br />
software with Compuserve and the Commodore<br />
Information Service, these are<br />
American software services. Come on<br />
Ariolasoft, you've gone to the trouble of<br />
printing your name on the front of the<br />
manual, why not alter the last section so<br />
that it refers to a British system such as one<br />
of the many bulletin boards available or<br />
even Telecom Gold. I wouldn't have<br />
thought that too many people would be<br />
phoning America so that they can follow<br />
your instructions.<br />
Hometext - yes you've guessed it -the<br />
wordprocessor, has some extremely<br />
interesting features. All of the available<br />
commands are selected from 'pull down<br />
menus' that are controlled by the<br />
function keys. This means that when you<br />
press the relevant key a menu, for<br />
example the printer format menu, will<br />
appear on the screen on top of your text,<br />
replacing the text underneath when you<br />
have finished using the menu. This is great<br />
as you never have to memorise any of the<br />
commands, such as those for headers or<br />
setting margins, as they can all be called<br />
up on screen. There is one slight gripe<br />
here however. A reminder could have<br />
been put on the editing screen so that you
could see at a glance what function key<br />
brought up which menu, it's frustrating to<br />
go through them all every time you want<br />
to do something. I suppose if you were<br />
really bothered you could always stick a<br />
bit of paper over your function keys.<br />
When you have finished typing your<br />
latest novel you can have a look at what<br />
the page layout looks like with the view<br />
function, This 'draws a picture of every<br />
page with each letter being represented<br />
by a dot. This does come in very useful<br />
when things need to be positioned<br />
correctly, it may even help you to spot<br />
your mistakes in the layout.<br />
Of course all of the normal printer<br />
facilities such as underlining and spacing<br />
are catered for, though headers and<br />
footers are dealt with in a strange way. Not<br />
only do you have to tell I lometext where a<br />
heading starts you must also tell it where<br />
the heading finishes. This means that it is<br />
possible to have headers that run over<br />
more than one line of the paper when<br />
printed. I must admit this did leave me a<br />
little confused at first as I didn't tell the<br />
program where my header finished the<br />
first time that I tried to use this function.<br />
The view option showed that something<br />
was amiss and I was able to correct the<br />
problem before I sent the document to<br />
the printer, I told you that view was<br />
handy.<br />
Homefind - the database is a little<br />
strange. In case you have never used a<br />
database I should explain how you would<br />
normally use one. Your computer is<br />
treated as an electronic card index box.<br />
You would set up a series of fields into<br />
which you should enter information. You<br />
can then ask the computer to find specific<br />
information from what it has stored on<br />
disk. An example of a layout for a database<br />
may be:<br />
NAME<br />
ADDRESS<br />
TELEPHONE<br />
You can no doubt see where the<br />
similarity to the old card-index comes in.<br />
Well, Hometind is totally different Yes, it<br />
is still used for information storage and<br />
retrieval but there is no fixed format as to<br />
what can be entered into the system. For<br />
example a few entries to the database may<br />
be:<br />
Fred's Birthday's August 23rd<br />
jim's Birthday's June 5th<br />
Fred's Address's 123 Main Street<br />
As you can see you almost talk to the<br />
computer, and any information can be<br />
stored. Once the information has been<br />
stored you can ask questions such as:<br />
What's Fred's Address?<br />
And the answer will appear as if by magic.<br />
There is no provision within the<br />
program for getting printouts of specific<br />
information though it is possible to keep a<br />
printed copy of any 'conversations<br />
. you that have with the computer. And of<br />
course information can be stored on disk<br />
for later inclusion in the wordprocessor.<br />
Personally, I find this structure for a<br />
database very restricting, I can't see any<br />
way that you could use the program to run<br />
a mailing list or store information about a<br />
record collection. Even so the program is<br />
very clever and great fun to use. No dou bt<br />
many people will love the 'friendliness' of<br />
the program and use it for just those<br />
things that I said I couldn't see a way of<br />
doing.<br />
IP<br />
Hometerm I consider to be one of the<br />
most important things about this<br />
program. Modems are becoming cheaper<br />
all of the time and more and more people<br />
are becoming interested in communicating<br />
via computer. Before I go any<br />
further it is worth stressing that this<br />
program is a terminal emulation program<br />
which can be used to access bulletin<br />
boards and systems such as Telecom Gold.<br />
It is not a Viewdata type system and<br />
cannot be used with systems such as<br />
Prestel or Compunet.<br />
With Hometerm and an RS232 modem<br />
it is possible to talk to your friends who<br />
have this software and modems, swap<br />
programs with each other and talk to each<br />
other via your computer keyboard. Many<br />
of the bulletin boards now have Commodore<br />
sections on them so you can ask<br />
questions to other people who use the<br />
system etc. In fact the day of the electronic<br />
office is here. One person can write<br />
an article using Hometext. Send it to<br />
someone else via Hometerm and they can<br />
then print it out using Hometext<br />
For the more technical bods out there<br />
the following data formats are catered for,<br />
ASCII, CBM (commodore characters),<br />
Vidtex and the very popular )(modem.<br />
32<br />
One handy facility that the program<br />
has is that of Macros. It is possible to set up<br />
a file that holds information such as your<br />
name, and your password. These macros<br />
can then be used to send the information<br />
required to the computer saving you a lot<br />
of typing if you access a particular system a<br />
lot.<br />
Not much more can be said about<br />
these packages. They are all very good<br />
and would be worth a look at if the asking<br />
price was just for one of them. As I have<br />
said I found Homefind a little limiting but<br />
no doubt others will love it. All of the<br />
programs are well presented and easy to<br />
use. If you need any of the programs then<br />
the package is well worth the price even<br />
though some of the 'polish' may be<br />
missing that its more expensive,<br />
individual program, competitors have,<br />
All in one<br />
The other package mentioned is Team-<br />
Mate. What makes this program stand out<br />
from the rest is the fact that it is possible to<br />
have all of the programs in memory at any<br />
one time. Obviously, this means that you<br />
are limited to how much space is available<br />
at once for a specific task. Team-Mate gets<br />
around this in a very clever way, It allows<br />
you to choose, upon loading the software,<br />
exactly what you want in memory. Below<br />
is the menu presented when you load the<br />
software:<br />
(1) Desktop (3 prgs)<br />
(2) Plus Graph (1 prg)<br />
(3) Write File (2 prgs)<br />
(4) Home Office (2 prgs)<br />
(5) Utilities
1<br />
Dealing with each option in term.<br />
Desktop comprises of a Wordprocessor.<br />
Spread sheet and file manager (database)<br />
all of which are loaded into memory at the<br />
same time and very easy to switch<br />
between.<br />
Plus Graph is a stand alone business<br />
graphics program that is used to display<br />
information from either the spreadsheet<br />
or entered by hand.<br />
Write fi le comprises of the wordprocessor<br />
and the file manager both now<br />
with a help facility.<br />
Horne Office is Wordprocessor plus<br />
help and a spreadsheet plus help.<br />
Utilities are such things as 'Format<br />
Disk' and 'Rename File'.<br />
As can be seen from the above<br />
breakdown quite a number of differing<br />
tastes are catered for. My personal<br />
favourite is Writefile. This allows me to<br />
have a database at my fingertips with<br />
information such as company addresses<br />
and telephone numbers, and access to a<br />
fairly decent wordprocessor at the same<br />
time. Up until now the only that this has<br />
been possible was to have two C64s on my<br />
desk.<br />
As I have previously mentioned the<br />
software is very similar to that found in the<br />
Commodore Plu5/4 computer. The layout<br />
of the programs and the instructions for<br />
use are very similar, i.e. the same. For this<br />
reason the software will probably get the<br />
same stick that the Plus/4 did when it<br />
arrived on the market, 'only 99 lines in the<br />
wordprocessor and other such<br />
comments abounded when that beastie<br />
hit the streets. Granted that the software<br />
does have its limitations but in my eyes<br />
these are more than adequately<br />
overcome due to the software's<br />
convenience.<br />
As with the Plus/4 only 99 lines of text<br />
can be entered into the wordprocessor.<br />
This doesn't sound too many but when<br />
you realise that a line is 80 characters a<br />
quick calculation will show that around<br />
1000 words can be entered before you run<br />
out of room. T<br />
his the standard i s letter that you wish to write.<br />
mAll of o the r e usual commands are present in<br />
t<br />
the<br />
h<br />
wordprocessor,<br />
a<br />
such as line spacing<br />
and margins. There are however some<br />
n notable omissions, such as the lack of<br />
eheaders n and o footers. An interesting way of<br />
uovercoming g h this problem is given in the<br />
fmanual, obut<br />
more of this later.<br />
r Obviously the wordprocessor is not as<br />
sophisticated as many of its competitors.<br />
There are no fancy menus or icons in this<br />
program. Don't forget that you do have<br />
the Help function in the expanded<br />
versions which soon solves this problem.<br />
It is remarkably easy to transfer data<br />
from both the spreadsheet and database<br />
into the wordprocessor. In fact the only<br />
way to print information from the<br />
database is via the wordprocessor. It is<br />
even possible to select certain fields for<br />
printing, this makes the program very<br />
good for addressing letters or printing<br />
labels. It is this facility that allows you to<br />
add headers to articles, Simply leave room<br />
at the top of every page for the header<br />
when you print your text. Then set up<br />
your header as a database file, then put<br />
33<br />
C64<br />
your paper back in the printer and tell the<br />
program to print the information in the<br />
database at the top of every piece of<br />
paper, clever huh!<br />
As with Homepak a preview function<br />
is also available within the wordprocessor<br />
(this function is not present in Desktop)<br />
this prints out the text to the screen as it<br />
will appear on the printer. The 40 columns<br />
of the screen act as a window over the<br />
larger BO columns of the text.<br />
The database or file manager is more<br />
of what I would call a real database.<br />
Before you use the program you must set<br />
up a specific format for all entries, such as<br />
the one given earlier in this article.<br />
Information is then entered as requested<br />
by the program and stored on a disk for<br />
retrival at a later date. Again no fancy<br />
icons or prompts in this program and it is a<br />
little awkward to use in places. But it does<br />
its job and is very handy.<br />
Commands available allow the user to<br />
move to specified records, search for a<br />
specific piece of information, review<br />
records, update records and even copy<br />
records. It is possible to sort records using<br />
a specified field, it is even possible to do a<br />
sort on disk with up to three fields.<br />
The expanded file manager, available<br />
from write fi le but without the wordprocessor<br />
present, offers even more<br />
facilities for the more advanced user.<br />
Examples of added commands are<br />
'makekeyfield' and 'showkey' which<br />
make a specified field the main field in a<br />
record, speeding up all searching and<br />
sorting and print the contents of the key<br />
field respectively.<br />
The Spreadsheet is not exceptionally<br />
large, 50 rows by 17 columns. This means<br />
that it is not suitable for use in a large<br />
business but is great for working out<br />
budgets or totalling expenses. Don't<br />
forget you can even get the wordprocessor<br />
to print out a letter taking<br />
information from the spreadsheet making<br />
printing bills very easy. In fact one very<br />
nice touch is the ability to have half of the<br />
screen displaying the contents of the<br />
wordprocessor and the other half the<br />
spreadsheet. This makes it very easy for<br />
you to see exactly what you are doing.<br />
The manual for the suite of programs is<br />
written in such a way that even a beginner<br />
could get started without too much<br />
difficulty. All aspects of the programs are<br />
dealt with via little examples, for instance<br />
the section on the spread sheet shows<br />
how you could set up a budget sheet<br />
showing all the money that you have<br />
spent or saved.<br />
Team-mate can only be described as<br />
the program that a lot of C64 owners have<br />
been waiting for. OK, so it has its limitations<br />
but there are ways to get around<br />
these. The fact that the programs you are<br />
going to need can be loaded into memory<br />
just the once and that data can be stored<br />
on one disk is superb. Load in the<br />
programs in the morning and that's it.<br />
Everything is at your finger tips. Now I've<br />
started using the programs I wouldn't be<br />
without them.
::i-ACTION REP L A N<br />
ir<br />
PSI 5 TRADING Co.<br />
US Gold it4.9; Disk atamai n a<br />
t 'Jf<br />
? ancel Rank Accel. I.<br />
1 • .1.<br />
nknown<br />
Requested u u r r e n t<br />
Evasive—Course= A Stopped--Course= A<br />
Speed = 1 S p e e d = 0<br />
ID Course-Description RFT(' PS K DIS ETA<br />
A Shortest Path<br />
8 Medtun Port<br />
380 04<br />
C MediuN Starboard<br />
328<br />
D Full Port<br />
372<br />
E Full Starboard<br />
348<br />
HAVING WATCHED COUNTless<br />
episodes of Star Trek, I<br />
always thought that Captain<br />
Kirk had things very easy<br />
commanding a space ship.<br />
Especially if you have a reliable<br />
crew to carry out your every<br />
order quickly and efficiently.<br />
Psi 5 Trading Co., from US Gold<br />
seemed to be just the game I<br />
needed to prove my point. All I<br />
had to do was to select a<br />
suitable crew to enable me to<br />
deliver a cargo to some remote<br />
outpost of the universe and<br />
collect a handsome bonus.<br />
One hour into the game and I<br />
was a total wreck. My crew<br />
were tearing their hair out in<br />
despair and countermanding<br />
my orders, looters were<br />
stealing my cargo willy-nilly<br />
and I no longer knew whether I<br />
was coming or going.<br />
Your first decisions are<br />
involved with crew selection<br />
and the success of your mission<br />
TOM THUMB<br />
Anicog C-16, PI<br />
Tom 16<br />
b9 tido Gertz<br />
(c) Kingsort<br />
H I -So<br />
Sopre<br />
Extra<br />
could well be put into jeopardy<br />
straight away if you get it<br />
wrong. There are five positions<br />
to be filled in the scanning,<br />
weapons, navigation, engineering<br />
and repair departments<br />
with six candidates for each<br />
job. A screen illustrating the<br />
candidates is displayed - they<br />
may be humanoids, aliens or<br />
vaccdroids and you can call up<br />
details of each applicant before<br />
making your selection. From<br />
these resumes, you can learn<br />
about a character's qualifications,<br />
education, experience,<br />
strengths and weaknesses. For<br />
example, you may learn that<br />
whilst someone knows their<br />
job inside out, they fall to<br />
pieces under pressure, whilst a<br />
rival might be a loner and a<br />
poor communicator but won't<br />
bat an eyelid when the ship is<br />
under heavy attack.<br />
Having agonised over your<br />
recruitment, it is on to the<br />
m000 0<br />
20000<br />
kIng.o<br />
ft<br />
Kesis<br />
Lives fl<br />
•<br />
mission itself. The screen<br />
depicts your communication<br />
console with your current view<br />
displayed top left and the<br />
appropriate crew member top<br />
right. The bottom half of the<br />
screen gives various status<br />
reports whilst the central bars<br />
contain assorted indicators for<br />
you to monitor and a menu of<br />
your current choices.<br />
Your initial menu allows<br />
you to read all the pending<br />
messages or contact a specific<br />
department. If you don't keep<br />
in touch with sections regularly,<br />
they will go off and do<br />
their own thing. Most of your<br />
decisions involve what the<br />
Americans call prioritizing -<br />
working out which orders take<br />
precedence. Is it more<br />
important to get the ship<br />
travelling at full speed or<br />
should you divert some power<br />
into defensive shields? Which<br />
items should be repaired first?<br />
Strangely, every department<br />
thinks that they should have<br />
priority. As things get worse, so<br />
the animated pictures of the<br />
crew show their feelings -<br />
totally laid back or gibbering<br />
wrecks. To give some idea of<br />
what you have to control, here<br />
is a quick look at the five<br />
departments and their various<br />
tasks.<br />
The scanning department is<br />
in charge of the radars and will<br />
try and identify and track other<br />
spacecraft. In time, they can<br />
determine whether a craft is<br />
friend or foe, lock on to it and<br />
recommend which weapon is<br />
best to use against it.<br />
to find the treasure that was<br />
buried with him.<br />
Evidently you know where<br />
the treasure is. at least the<br />
instructions say that you do,<br />
but in order to gain access to<br />
the treasure you must collect a<br />
number of keys that are<br />
scattered around no fewer<br />
than 178 screens. Yes, that's<br />
right, somehow Anirog has<br />
managed to get a 178 different<br />
screens into the C-16.<br />
You would expect that the<br />
screens would be very small in<br />
order to fit so many into the<br />
game. Well, they aren't.<br />
Tom always stays in the<br />
same position on the screen.<br />
YOU, TAKING ON THE PART Thumb, have entered the tomb Whenever he moves around it<br />
of that childhood hero Tom of the Pharoah Manilo in order is the background that scrolls<br />
" a<br />
V<br />
g<br />
g<br />
R<br />
Originality PI ay abailv Graphics<br />
9<br />
ALL<br />
VanatFor<br />
Mmay<br />
Once an enemy ha% been<br />
identified, the weapons section<br />
can attack it with missiles,<br />
blasters, cannons and thermos.<br />
By analysing various statistics,<br />
you can assess how efficient<br />
your crew is with each weapon<br />
type.<br />
The navigation section will<br />
estimate the time of arrival at<br />
your destination and show you<br />
the risk involved with various<br />
routes. You can change speed<br />
and take evasive action if<br />
necessary.<br />
All sections of the ship have<br />
various power requirements<br />
and allocating that power is the<br />
responsibility of the engineering<br />
department.<br />
It will not be long before<br />
your ship suffers damage and it<br />
is necessary to request the<br />
services of the repair section.<br />
Items can be operable (at a<br />
higher power cost), repairable<br />
or destroyed. There are several<br />
droids at your disposal and<br />
again, you will need to decide<br />
what needs to be done, who's<br />
available to do it and how long<br />
it will take.<br />
Control of the game is very<br />
simple via either joystick or<br />
keyboard - it is just the decisions<br />
that are difficult. There is<br />
so much going on, that it will<br />
take some considerable time to<br />
get the hang of things.<br />
Graphically, the game is<br />
stunning so you can always sit<br />
back and watch as your ship is<br />
destroyed around you. A<br />
highly original and thoroughly<br />
excellent game.<br />
G.R.H.<br />
bringing new sections of the<br />
playing area into view. An<br />
excellent bit of programming<br />
when you consider how simple<br />
many C-16 & Plus/4 games are.<br />
Tom's journey around the<br />
tomb is hindered by all sorts of<br />
nasties. There are guards<br />
moving their spears up and<br />
down which Tom must jump<br />
over - just like the arcade game<br />
Hunchback - monsters,<br />
spiders, snakes and collapsing<br />
floors. Tom certainly has his<br />
work cut out, even the flowers<br />
and plants scattered around are<br />
out to get him.<br />
If you fancy a little adventuring<br />
then why not buy a copy<br />
and give Tom a hand?<br />
S.C.
ACTION REP L A<br />
PHANTOMS OF THE ASTEROID<br />
Masterironic i 1.99 C64<br />
0000385 0002876 P. ERTURtS 0001<br />
'ammo<br />
HELPLESSLY FLOATING Around<br />
the eerie tunnels inside<br />
MUGSY'S REVE<br />
Melbourne House<br />
M ONE 'ft<br />
by weird looking bug e‘ pc!<br />
monsters whose immai e<br />
qualities allow them to pass<br />
through roc k and appear when<br />
you are least expecting it.<br />
You, a lone astronaut, are<br />
armed only with a pathetic<br />
laser gun which Itic kily has an<br />
inexhaustible power supply.<br />
Ghastly music pings in your<br />
ears as you boost yourself<br />
through the male of caves with<br />
the aid of your trusty jet pack.<br />
Suddenly. you hit a laser<br />
force field and death comes<br />
quit kly as your whole being is<br />
pulverised and you disappear<br />
in a puff of sulphurous<br />
bubbles.<br />
a great hunk ot rock in the sky Then comes the tedious bit.<br />
you are inert ilessly assaulted Since you are a normal homo<br />
SPUO SHOtAD GO 'ROUND<br />
T t w o NA NAG<br />
OAT'S A JOICE BOSS!<br />
MAYBE WE 511011t0 HIRE<br />
SONE MORE BOY5,_MUGSY.<br />
CAN GET HOLO OF TWO AT<br />
OA MOST, SO NOW MANY<br />
oft VA HANNA HIRE, 0,10R<br />
2?<br />
17 GRAND BARRELS:<br />
AS THE NIGHT CLOSED IN. my hands tumbled with<br />
blac k as a Mt( k I inn dream. cellophane and loaded<br />
BONGO<br />
C-16, Plus/4<br />
-<br />
1<br />
the<br />
the<br />
THIS VARIATION OF A PLAT- our hero trying to rescue a<br />
form anti ladders game finds damsel in distress. Before the<br />
Mugsy file in the sleepy blue<br />
4.11.<br />
glow of the monitor. Colours<br />
flashed and I was transported<br />
back to the heady, dry days of<br />
1917. As Mugsy blinked under<br />
the unaccustomed daylight<br />
outside the stammer, the Feds<br />
welt'tamping, down on liquor.<br />
Through half-closed eyes the<br />
Boss dreamed of empire as my<br />
spirit slipped easily into his<br />
mind.<br />
First we got the boys<br />
together and made a deal with<br />
the Canadian hoods across the<br />
Parallel. All the gin joints had<br />
been driven underground like<br />
worms in a drought and easy<br />
pickings were the harvest, All<br />
we needed were the boom.<br />
the speakeasies. the dames and<br />
damsel can be rescued Bongo<br />
must collect 10 sparkling jewels<br />
(flashing dots) from around the<br />
screen.<br />
Travel around the playing<br />
area is via a number of slides,<br />
trampolines. ladders and teleportation<br />
chambers. Of course,<br />
movement around the<br />
platforms isn't easy as the everpresent<br />
baddie is out to stop<br />
wcr.<br />
As well as collecting the<br />
jewels. Bongo can also get<br />
himself extra points by<br />
gathering the letters that are<br />
'loafing around the screen.<br />
Ok, so there's nothing original<br />
so far. Even so I he game has<br />
some interesting aspects. For a<br />
Originality Playability Graphics<br />
sapien p O S S C<br />
, , , o n l y<br />
o n e<br />
% -;•••1"<br />
ahae For<br />
life and must wait for the Game<br />
Over screen to conclude<br />
several dischordant bars of<br />
'music' before you can send<br />
another unfortunate spacer to<br />
certain death.<br />
The green force fields aren't<br />
too bad since they disappear<br />
every few seconds and you can<br />
nip through. Apparently there<br />
is away to deactivate the blue<br />
and purple ones but I never<br />
lived long enough to find out<br />
how to do it.<br />
This is definitely one of<br />
Mastertronic's better offerings.<br />
Spend fl .99 and die as many<br />
times as you like.<br />
M.C.<br />
the dough.<br />
New Year brings resolutions,<br />
mine is to kick the rotgut<br />
for the duration and show a<br />
profit. I've hired the Pixel<br />
Brothers to record the high<br />
points in full colour. They even<br />
came up with a slick cartoon of<br />
'Chalk' McHugh getting his<br />
card marked down the Pool<br />
Hall. I'll show it each New Year<br />
as a warning to any other<br />
creeps till they get bored with<br />
the message. Life is still as dull<br />
as the shine on felt spats. Even<br />
the shoot-outs are rituals of<br />
emptiness. Everything is the<br />
greyness behind a rainbow, a<br />
pig in a poke.<br />
J.G.<br />
start all of the characters are<br />
extremely large and well<br />
defined, the colour facilities of<br />
the C-16 and Plus/4 being used<br />
io their full. This certainly<br />
makes a change from being<br />
chased around a screen by a<br />
single colour, one-characterhigh<br />
monster.<br />
Secondly. Bongo comes<br />
complete with a built-in screen<br />
designer. Once you get fed up<br />
of running around the screens<br />
provided you have the option<br />
of designing your own.<br />
Well done, Anirogl A<br />
program that all games-playing<br />
C-16 and Plus/4 owners should<br />
not be without.<br />
S.C.
ACTION R E Fs L A<br />
DR WHO AND THE MINES OF TERROR<br />
Micropower (64<br />
"I<br />
p<br />
tl<br />
I<br />
g<br />
"<br />
1<br />
•<br />
1<br />
1<br />
I<br />
I<br />
T<br />
I<br />
1<br />
s:r:0Z00011.1als:riCr:i.:r11 ...<br />
p.<br />
CLOSELY GUARDED COPYrights<br />
had to be skirted around<br />
in the production of this game,<br />
based around television's most<br />
successful science fiction<br />
series. The BBC seem pleased<br />
to be associated with the<br />
product but I suspect that the<br />
series' creator decided that it<br />
was against the national<br />
interest to tarry with Micropower.<br />
No doubt royalty fees<br />
lie at the heart of this situation.<br />
The result is reflected in the<br />
appearance of, dare I say it.<br />
Dalek-like creatures called<br />
Controllers who guard the<br />
TIRU machine which the<br />
Doctor must disable before the<br />
fabric of the time-space continuum<br />
is torn to shreds.<br />
The TIRU (Time Instant<br />
Replay Unit) is a temporal<br />
editing suite. An instant in time<br />
can be recorded, edited and<br />
replaced for good or evil<br />
sur soses by the use of this<br />
COMMANDO<br />
Elite C-16, Plus/4 E7.95<br />
COMMANDO ON THE C64<br />
was exstremely popular, it was<br />
machine. It is therefore the real<br />
time equivalent of our humble<br />
VHS video system_ The source<br />
of its power lies in rods of<br />
Heatonite crystal which is only<br />
found in sufficient quantity on<br />
the planet Rijar. For obvious<br />
reasons this is where the TRU<br />
has been built and it is now<br />
controlled by the Doctor's<br />
arch-enemy, the Master.<br />
The pre-publicity claims<br />
that the game starts with the<br />
familiar Dr Who theme. Well, if<br />
this is true then rm a toreador.<br />
Maybe, there were more<br />
copyright - problems but<br />
judging by the voicing of the<br />
existing tune it appears that we<br />
haven't missed much. I strongly<br />
advise that you play this game<br />
with the volume turned off_<br />
The good old Police Box<br />
Tardis gradually materialises at<br />
the start of the game and out<br />
pops the Doctor and his new<br />
assistant Spinx. the robotic cat.<br />
i his white feline is an amazing<br />
invention of the Time Lords<br />
and it can wander at will<br />
through the ensuing unobserved<br />
by all except the<br />
Doctor. It is a secret weapon in<br />
every sense of the word and if<br />
lost it will be impossible for the<br />
good Doctor to complete his<br />
mission to destroy the TIRU<br />
and recover the plans_<br />
Splinx can be programmed<br />
to perform a range of tasks as<br />
long as it does not involve<br />
climbing! Whether it suffers<br />
from vertigo or not is not<br />
explained but the only way to<br />
persuade it to go up a ladder is<br />
to force the Doctor to carry it. It<br />
is nonetheless a very useful<br />
beast which can be sent to<br />
recover any item whith is near<br />
one of the markers which the<br />
Doctor can throw around the<br />
place.<br />
Ii is not long before Splinx's<br />
assistance is necessary. After a<br />
short exploratory walk around<br />
the Heatonite mine a dinosaurlike<br />
creature, a Madrag, will be<br />
encountered. Normally this<br />
will first be in the form of<br />
Madrag eggs which hatch<br />
spontaneously as soon as a<br />
suitable food source comes<br />
near. Guess Who is suitable!<br />
The eggs are also jealously<br />
guarded by mother Madrag<br />
and this is a useful key to the<br />
solution of the first of many<br />
problems which must be faced.<br />
The documentation with<br />
the game is superb. an area in<br />
which Micropower usually<br />
excells_ Apart from the usual<br />
loading and playing instruc-<br />
I would be very easy to expect<br />
that a conversion of the game<br />
by the same company would be<br />
of the same high quality. Well it<br />
isn't. The only similarity<br />
between this and the C64<br />
version is the fact that you<br />
control a Commando who is<br />
under heavy enemy fire.<br />
In this version of the game<br />
the screens are static. Before<br />
you can get on to the next level<br />
you have to clear the screen of<br />
enemy personnel.<br />
The first level places your<br />
commando under heavy<br />
enemy fi re from enemy<br />
trerxhes. I said heavy and I<br />
mean it, if you so much as<br />
lull ot scrolling screens and pause for a second you will<br />
excellent sound effects. It probably lose a life, There is a<br />
4.<br />
1<br />
Playability Gra phics Va lue<br />
)<br />
For<br />
Money<br />
)<br />
tions the pack also includes a<br />
sealed solution to the Madrag<br />
problem, a detailed breakdown<br />
of the main elements of<br />
the game, a map of part of the<br />
mining complex and a printout<br />
of the major objects<br />
encountered in the game. The<br />
final card in the pack is vital<br />
because it gives the code used<br />
to recover the memory capsule<br />
containing the TIRU plans_ By<br />
far the greatest challenge is an<br />
encounter with a controller_<br />
They are fast and persistent in<br />
their pursuit of an enemy. As<br />
long as they can see which way<br />
you went they will give chase.<br />
Fortunately, they cannot climb<br />
ladders or move off the grid<br />
floor which supplied their<br />
power.<br />
The Doctor regenerates<br />
each time he is killed. This<br />
means that he returns to the<br />
TAR DIS or the last Cryogenic<br />
Sleep Chamber (CSC) that he<br />
passed. All of the objects which<br />
have been found and tucked<br />
away in his copious pockets will<br />
be retained but he will always<br />
have to relocate Splinx. The<br />
CSCs have a second, important<br />
purpose. By standing next to<br />
one of these the game can be<br />
saved until another day.<br />
Graphically. the game is<br />
quite pleasant. the casual lope<br />
of the Doctor is particularly<br />
impressive. The challenges are<br />
difficult but logical and, apart<br />
from the nagging music. I<br />
wholeheartedly recommend<br />
this game.<br />
I.G.<br />
simple trick to this scr een that<br />
enables you to get through it<br />
quickly. Dodge all of the<br />
enemy bullets and get behind<br />
the trenches in which the men<br />
hide.<br />
In the second screen our<br />
commando finds himself in •<br />
front of a bridge guarded by<br />
the enemy_ This is about as<br />
much as I can tell you. As soon<br />
as this screen opens, missiles<br />
and bullets are winging their<br />
way towards you, you don't<br />
stand a chance.<br />
In my mind the only<br />
commando that should tackle<br />
this game is one with a death<br />
wish_<br />
S.<br />
C<br />
.
1<br />
ACTION Ft EP L A 0<br />
DEFENSE MENU<br />
3-4-4 Off(NSJ<br />
4-2-6 coiruisi<br />
4-3-4 DEEENSJ<br />
7-1-3 DEFENSJ<br />
RETURN TO PEA<br />
THIR I Y SIX. TWENTY FOUR.<br />
Thirty six. Hup! Hupt Yes, after<br />
considerable delays, Ocean's<br />
Superbowl has finally arrived<br />
amidst considerable razzamatazz<br />
and waving of pompoms.<br />
Most of the delays were due to<br />
various gameplay problems<br />
(scores of over 100 points were<br />
being recorded) but these have<br />
now been sorted out.<br />
Fans of American Football<br />
will know that despite initial<br />
appearances, there is actually a<br />
great deal of skill involved in<br />
the game, organising tactics<br />
and running to predetermined<br />
patterns. Ocean has managed<br />
to pack a lot of detail into this<br />
game although some patriotic<br />
prejudice is displayed with a<br />
reference to real football in the<br />
instructions! For people who<br />
know nothing at all about this<br />
thrilling game, there isan audio<br />
tape included in the package<br />
which gives you a quick run<br />
down on the rules, terms and<br />
basic tactics. This works very<br />
well and is a lot better than the<br />
normal 12 page booklet that<br />
you usually get.<br />
The screen is divided into<br />
two main sections. On the right<br />
is an overhead view of the<br />
playing area. This depicts the<br />
starting positions of the move<br />
that you want to try and<br />
execute and then follows the<br />
move through once the ball has<br />
been snapped. You control<br />
one previously determined<br />
player although it is possible to<br />
change this during the course<br />
of the play if you are fast<br />
enough. Eleven men On each<br />
side running in 22 different<br />
directions takes quite a bit of<br />
getting used to!<br />
The left hand side of the<br />
screen serves two functions. As<br />
a purely decorative part of the<br />
game, an action replay of the<br />
previous play appears on the<br />
giant screen. This shows the<br />
players running, throwing,<br />
tackling and catching the ball<br />
and is nicely animated<br />
although it tends to get a bit<br />
repetitive after a while (you can<br />
stop the display with a quick<br />
press of the fire button).<br />
The nitty gritty part of the<br />
game -deciding on your tactics<br />
is determined through a series<br />
of menus. Starting with the<br />
offense, an initial menu gives<br />
you the chance to try a long or<br />
short pass, a rushing play or a<br />
special play (fi eld goal<br />
attempts, punts and goal line<br />
rushes). These choices lead<br />
into sub-menus giving you a<br />
choice of starting formations<br />
with such esoteric names as<br />
shotgun and split red. Selecting<br />
"view next frame" from the<br />
menu allows you to watch the<br />
players moving to their<br />
designated positions - a very<br />
useful option that gives you<br />
some understanding of the<br />
theory behind the manoeuvres.<br />
You can also change which<br />
player you want to receive the<br />
ball once 'the move has started.<br />
When you are happy with<br />
your choices, the "play games"<br />
option allows your opponent<br />
(or the computer) to decide on<br />
their defensive strategy. As<br />
soon as that is ready, the move<br />
is ready to be executed. The<br />
center snaps the ball back to<br />
the quarterback whilst the<br />
other players start to move<br />
upfield according to your<br />
instructions. A quick press of<br />
l<br />
i<br />
t<br />
7 , G-7<br />
Otialinality<br />
the lire button moves the<br />
cursor around the eligible<br />
receivers starting with the one<br />
that you previously designated.<br />
As your finger is removed from<br />
the button, so the ball is thrown<br />
and the receiver comes under<br />
joystick control. He must then<br />
move to where he thinks the<br />
ball is going to land as he<br />
endeavours to catch it.<br />
Instead of passing the ball,<br />
the offense may try to kick it,<br />
either attempting to score a<br />
field goal or simply punting to<br />
relieve their lines. Keeping the<br />
fire button pressed brings up a<br />
power scale showing the<br />
percentage of the maximum<br />
kick currently chosen. It is<br />
tempting to go for full range<br />
every time but this is wrong as<br />
the accuracy of a kick<br />
decreases with power.<br />
The defense is somewhat<br />
more complicated to organise.<br />
Apart from choosing your<br />
initial formation from 3-4-4, 4-<br />
3-4, 4-2-5 and 7-1-3, you must<br />
also decide who is going to<br />
mark whom, which players are<br />
going to go for the opponent<br />
•OSS<br />
e<br />
OS s a s s<br />
O Se<br />
aaa. 4810<br />
L<br />
-<br />
( A<br />
Valuta<br />
4 • Fat<br />
Maley<br />
.<br />
'<br />
)<br />
holding the ball and which<br />
offensive players will remain<br />
unmarked. Again, you can<br />
decide which player you wish<br />
to control in the ensuing move<br />
(number 73 William 'The<br />
Fridge Perry is likely to be a<br />
popular choice).<br />
Superbowl is the best<br />
American Football game seen<br />
to date. Based on this January's<br />
game in which the Chicago<br />
Bears thrashed the New<br />
England Patriots 46-10, it is an<br />
extremely credible situation.<br />
Devotees of the game need<br />
look no further. For people<br />
who know absolutely nothing<br />
about the game, why not try<br />
your hand before the new<br />
season starts on Channel 4.<br />
C.R.H.<br />
as a i<br />
saes. sea<br />
•0 8 • 8<br />
se 8 • 8 SO S i 0 81<br />
• • SOS 1 8 0 8 8 0 0 8 8 8 8<br />
• s S U S 8 • 8 • SO •<br />
e O M S • I S<br />
Il NaM S O 8 8 0 0<br />
It • II 8 8 8 4 1 8 a 0 a 0<br />
• S 8 8 • • O 0 0 • 0 8<br />
• 8 • a O S 8 0 8 8 880,<br />
SS Sae 0 8 8 8 8 8 8 SO a S S<br />
a ass • a 8 SO 8 • 8 • 0 8<br />
SeS888 S O S 8 4 1 0 0 8 O a .<br />
81188 O S &SO S O 0 8 1 1 8<br />
O8 8 8 8 8 8 1 1 8 0 O 8 8<br />
0810 a 8 SO 8 8 8 • a<br />
• S O 0 0 8 8 a 8 *<br />
• 8 8 8 8 8 S 8 0 8 a a<br />
• 5 1 1 8 1 1 • a a a • •<br />
• O S S O 8 8 8 8 •<br />
• • S O 8 • 8 8<br />
a a s a a a •<br />
• • a s • • • •<br />
a 0 S a • •<br />
• • a • s<br />
• a • a *<br />
• S a a a<br />
• I a • •<br />
a • a a s s a<br />
• • • • • • • • •<br />
• 0 • • •<br />
• a • • •<br />
• • 8 • a<br />
a • • s<br />
R tip sb<br />
i<br />
aMM<br />
-<br />
721<br />
1<br />
W e s e m a i l .<br />
SCORLS (3<br />
BEARS 90<br />
BO<br />
P 70P<br />
_ 0 6 0 0<br />
"SOW<br />
(40E<br />
R3OR<br />
20<br />
10<br />
00<br />
T 1 ME<br />
2ND WART R<br />
2ND DOWN AND 10
-<br />
-<br />
ARCHON II: ADEPT<br />
Ariolasoft<br />
E12.95, joystick required, C64<br />
2<br />
:<br />
-<br />
A<br />
C<br />
T<br />
I ARCHON WAS ONE OF THE<br />
most original strategy games<br />
ever<br />
O<br />
written, justifi ably<br />
winning several awards. Now<br />
Electronic Arts has released a<br />
sequel on the Ariolasoft label.<br />
Archon<br />
N<br />
II. Adept sees you<br />
taking sides in an epic struggle<br />
between the Master of Order<br />
and the Mistress of Chaos in a<br />
game<br />
R<br />
featuring both strategy<br />
and arcade elements.<br />
The strategy takes place on<br />
a screen featuring the four<br />
concentric<br />
E<br />
rings representing<br />
the classical elements of Earth<br />
Water, Air and Fire. In addition,<br />
there are two neutral squares<br />
which<br />
P<br />
represent the void and<br />
the home squares for each side<br />
- the Fortress of Order and the<br />
Temple of Chaos.<br />
L<br />
The aim of the game is to<br />
occupy six power points. Two<br />
of these are the void squares<br />
and the other four are the<br />
outer corners of the elemental<br />
bands,<br />
A<br />
These four rotate in turn<br />
from band to band. You can<br />
also win by the total annihilation<br />
of the opposition's forces.<br />
You start the game with four<br />
adepts - one in each element.<br />
Each turn, they can either move<br />
or cast a spell providing that<br />
you have sufficient energy to<br />
carry out your choice. There<br />
are seven spells to choose from<br />
but the one that you will use<br />
more than any other is<br />
summon". This is used to<br />
bring another piece on the<br />
board.<br />
The other spells available to<br />
you are: heal one of your<br />
pieces, weaken an opponent's<br />
piece, imprison an enemy,<br />
release one of your own<br />
imprisoned pieces, banish a<br />
hostile enemy or something<br />
called apocalypse which is a<br />
final battle used to put your<br />
adversary out of his misery.<br />
Casting spells costs varying<br />
amounts of energy depending<br />
on its potency. How much<br />
energy you have at your<br />
disposal depends on how many<br />
power points you occupy.<br />
There are two types of<br />
pieces that can be summoned,<br />
demons and elementals, Both<br />
sides have the same demons at<br />
their disposal - juggernauts,<br />
wraiths, gorgons and chimera<br />
whilst their elementals are<br />
different. Order can call on the<br />
services of a giant, kraken,<br />
thunderbird and salamander,<br />
representing earth, water, air<br />
and fi re whilst Chaos has a<br />
behemoth, siren, itrit and<br />
firebird available to him.<br />
All these characters have<br />
different strengths and weaknesses<br />
when it comes to<br />
combat. Sirens for example just<br />
have to sing and the opposition<br />
starts to die. Salamanders hurl<br />
fireballs, gorgons paralyse<br />
whilst wraiths get stronger as<br />
you get weaker - they are also<br />
invisible most of the time and<br />
'so make extremely formidable<br />
opponents. Not quite as bad as<br />
a juggernaut though which is<br />
best described as pure energy<br />
on wheels. It just steamrollers<br />
opposition out of the way.<br />
Combat occurs when two<br />
Originality Graphics Vaasa For<br />
Money<br />
2 s 1 0<br />
. , N<br />
, (c21<br />
.<br />
.<br />
.<br />
.<br />
.<br />
L<br />
pieces want to occupy the same<br />
square. The scene switches to<br />
the battleground where you<br />
must make instant decisions as<br />
you ltry to probe the opposition's<br />
weaknesses and utilise<br />
your own strengths to their<br />
best advantage. Each piece's<br />
strength is displayed as an<br />
energy bar down the side of the<br />
screen. This reduces for each<br />
successful wound infl icted.<br />
When the bar reaches zero, the<br />
icon dies leaving the victor in<br />
sole possession of the disputed<br />
square.<br />
As might be expected,<br />
pieces fight best when in their<br />
home element e.g. krakens in<br />
the water band. After you have<br />
fired your thunderbolt or<br />
whatever, it takes time before<br />
you are allowed to fire your<br />
next. This time interval varies<br />
from piece to piece and the<br />
computer lets you know with a<br />
ping - high or low depending<br />
0011P0111<br />
on which side you're on. The<br />
battle ground has a number of<br />
barriers w•hich must be dodged<br />
round or used strategically. The<br />
different elements have<br />
differing effects on missiles and<br />
icons. For example, fi re<br />
wounds an icon but leaves<br />
missiles untouched whilst earth<br />
destroys missiles and slows<br />
icons.<br />
Control of the game is<br />
entirely via a joystick. Spells are<br />
selected from a menu whilst<br />
movement is achieved by<br />
moving a square shaped<br />
cursor. Moving round the<br />
combat screen is straightforward.<br />
Aiming a missile<br />
involves pressing the fi re<br />
button and moving the joystick<br />
in the desired direction.<br />
Adepts can move their missiles<br />
whilst in flight a useful trick to<br />
know.<br />
Archon II features a wide<br />
range of options to choose<br />
from: Which side you play,<br />
number of players and their<br />
skill levels. Be warned though.<br />
the computer plays a very<br />
mean game and you are likely<br />
to be thrashed in your first few<br />
games. I would strongly<br />
recommend that you watch the<br />
demonstration games a few<br />
times so that you can get some<br />
idea of the strategies and tactics<br />
required.<br />
Archon II is an excellent<br />
strategy game and one that will<br />
take you a lifetime to master -<br />
then you can play with the<br />
other side and learn a totally<br />
new set of tactics. Whilst it<br />
doesn't quite reach the exalted<br />
standards set by the original,<br />
that is no real criticism and the<br />
game can be unreservedly<br />
recommended.<br />
GYM.
THE Fl<br />
THE FIRST OUTSIDE OPERATING<br />
SYSTEM FOR TKE CBM 64 *<br />
UTILITY<br />
OF THE YEAR<br />
1985 ,---<br />
NEW FINAL<br />
CARTRIDGE<br />
INCLUDING<br />
FREEZER<br />
This new operating system built in a cartridge<br />
does not use any memory and is always there.<br />
Compatible with 98% of all programs.<br />
DISK TURBO - 6 times faster loading •<br />
is times faster saving.<br />
TAPE TURBO - 10 times faster, even<br />
with files • normal Commodore<br />
commands compatible with standard<br />
turbo's.<br />
ADVANCED CENTRONICS INTER-<br />
FACE - compatible with all the wellknown<br />
centronics printers and Commodore<br />
printer programs. Prints all the<br />
Commodore graphics and control codes<br />
(important for listings)<br />
SCREEN DUMP FACILITIES - of low<br />
res a n d multicolour screens!!<br />
Prints full page with 12 shades of grey<br />
for multicolour pictures even from games<br />
and programs like Doodle, Koala pad,<br />
Printshop etc. Searches automaticly for<br />
the memory-address of the Picture.<br />
Special version available for the CBM<br />
801 and 803 printers.<br />
24K EXTRA RAM FOR BASIC-<br />
PROGRAMS AVAILABLE: TwLi new<br />
commands _Memory read", „Memory<br />
write". They move 192 bytes with<br />
machinelanguage-speed anywhere in the<br />
64K Ram of the CBM 64. Can be used<br />
with strings and variables<br />
BASIC 4.0 COMMANDS - like Dload.<br />
Dsave, Dappend, Catalog. etc.<br />
BASIC TOOLKIT - with Auto, Renurn<br />
(incl. (3oto and Gosub). Find, Help, Old,<br />
etc.<br />
• works with C128 in the 64 mode.<br />
AL CARTRIDGE<br />
Original multicolour full page screen<br />
dump print Out<br />
PREPROGRAMMED FUNCTION<br />
KEYS: - Run. Load, Save. Catalog, Disk<br />
commands, List !removes all listprotections).<br />
KEYBOARD EXTRA'S - Allows you to<br />
delete part of a line; stop and continues<br />
listings: move cursor to lower lefthand<br />
corner Pokes and Syscalls in Hex. Typcommand<br />
operates your printer as a<br />
typewriter<br />
Cl.HAPUTE1-4<br />
COMFORTABLE EXTENDED MI_<br />
MONITOR: - with relocated load<br />
scrolling up and down. Bankswitching,<br />
etc. - does not reside in memory.<br />
RESET SWITCH: - resets to monitor;<br />
resets with old, resets to Hi-res printing;<br />
resets every protected program.<br />
ON/OFF SWITCH - we hope you never<br />
need that one<br />
FREEZER:<br />
Stops and continues almost every<br />
program and allows you to make a total<br />
back up to disk or tape automatically.<br />
Specs: Creates one file on disk or tape.<br />
Packs the program.<br />
Freezes 4 to 6 times faster than<br />
dedicated freezers.<br />
Menu driven.<br />
Freezer options include:<br />
full page printing<br />
fore- and background colour changes<br />
reverse printing<br />
jumps to monitor or reset<br />
Training mode:<br />
kills sprite collision detection.<br />
14 Days money<br />
back guarantee<br />
if you are 1 2 Months repladissatisfied_<br />
c e m e n t guarantee<br />
U.K. ORDERS Available by the wellknown<br />
Commodore Dealers or directly from<br />
H & P Computers<br />
9 Hornbeemwalk<br />
Witham Essex CM8 2 SZ England d.<br />
Telephone: 0376 - 51 14<br />
71<br />
.<br />
copyright and registered trademark H&P computers<br />
Wolph•mtsbucht 236 30E13 folV Rotterdam F11etheriandy ray 01031 - 10231982 Tellit• 213401 a intx nt
Save your fingers a lot of<br />
work with our new software<br />
[service.<br />
IT'S THREE O'CLOCK IN THE MORNING.<br />
You sit at the computer keyboard having<br />
Just finished a marathon typing session<br />
entering one of the superb programs<br />
from Your Commodore. Your fingers<br />
reach for the keyboard and press the<br />
letters R. U and Ni. You sit back<br />
expet tautly and...nothing happens.<br />
Well. I'm sure that we have all had<br />
problem before now. When it does<br />
happen it's a matter of spending hours<br />
searching through the program for any<br />
typing mistakes. No matter how long you<br />
look or how many people help you, you<br />
can usually guarantee that at least one<br />
little bug slips through unnoticed.<br />
Here, at YOUT Commodore, we pride<br />
ourselves on the quality ot listing that we<br />
print. Unfortunately, this usually means<br />
that they are also very long, thus taking<br />
longer to type in and leaving more room<br />
for errors. All of the listings in Your<br />
Commodore are taken straight from a<br />
printout of working programs, it is<br />
therefore very unusual for errors to<br />
appear in the magazine.<br />
Because of the length of our programs<br />
we do get a large number of requests from<br />
readers who would like us to put specific<br />
E<br />
P<br />
1<br />
1<br />
r/A<br />
programs on tape or disk for them.<br />
Obviously this is very time consuming and<br />
means that we can't spend as much time<br />
working on the magazine as we would<br />
like.<br />
We are therefore proud to announce<br />
the start of the Your Commodore Software<br />
Service'. Most of the programs from<br />
each issue of the magazine will now be<br />
available on a single cassette for a price of<br />
just €4.00. We will not be making disks<br />
available since they would have to be a lot<br />
more expensive and more difficult to<br />
post. This shouldn't cause you any<br />
L<br />
ARGUS SPECIALIST PUBLICATIONS LTD<br />
I A l l cheques/postal orders should be made payable to:<br />
-E<br />
A<br />
I would like to order the following cassettes: (please tick box)<br />
S<br />
E<br />
UTILITY SPECIAL YCMA862 E4.00<br />
C<br />
1O<br />
M<br />
P<br />
L<br />
E<br />
APRIL '86<br />
MAY '86<br />
JUNIE'86<br />
YCAPR86 E4.00<br />
YCMAY86 £4.00<br />
YCJUNlit) 1 UN I I<br />
T I enclose a cheque/postal order for f<br />
E<br />
I<br />
N<br />
B<br />
L<br />
NAME<br />
ADDRESS<br />
O POSTCODE<br />
C All orders should be sent to:-<br />
K YOUR COMMODORE SOFTWARE, READERS SERVICES, ARGUS SPECIALIST PUBLICATIONS,<br />
C WOLSEY HOUSE, WOLSEY ROAD, HEMEL HEMPSTEAD, HERTFORDSHIRE HP2 LISS.<br />
A<br />
P<br />
I<br />
T<br />
A<br />
L<br />
S<br />
Please allow at least 28 days for delivery.<br />
problems though as none of the programs<br />
will be protected and it will be a simple<br />
matter to save the programs to disk<br />
yourselves.<br />
All programs on the cassette will be<br />
saved using a tape turbo routine.<br />
However, we cannot guarantee that all<br />
programs will work correctly with this<br />
turbo routine present We therefore<br />
recommend that betore you use any of<br />
the programs you make a copy of the<br />
programs on your own cassette or disk<br />
and use this version of the program not<br />
the original.<br />
)RDER
lin 1111 EOM EIMIIIM M E M III • EN<br />
•<br />
When you are designing a game one of the longest jobs is de-<br />
.<br />
in.<br />
M..<br />
• • . .1<br />
. . . 11 signing the sprites. If you are good at art then fine, if not your<br />
. 11 • • • • 1 •••• next monster will probably end up looking like a square box<br />
.<br />
• K•• 10 • • • I ••I•1 •IMI with legs,<br />
OM ES N M U S • •1 • Now, Your Commodore comes to the rescue once again<br />
. • • • • • • • •<br />
II II • 1 1<br />
•••<br />
EI••• • • • • • • with Sprite Ideas. If you have designed any sprites for games<br />
S • E• • mom • •No • and you don't mind other people seeing your masterworks<br />
UO<br />
M MEE E M I EMU lollim... then why not send them into us. Each month we will be offering<br />
•II SU U•.0U U U 1. CIO for the best entries.<br />
U•<br />
• • IUUUU •UU • • ••••• • Your sprites can be anything at all (within reason), if you've<br />
U•<br />
• • 1111 USUSU UUU MS MU• • •<br />
OM<br />
• •<br />
• designed a series of animated characters then send in the lot.<br />
. ••<br />
ME •<br />
• •. . •• We'd love to have a look at them.<br />
U•<br />
• 111 O H•III<br />
• rat..<br />
ME<br />
I . r<br />
ME IMI So, next timeyou areafter anOgreto put in your newgame,<br />
MOM • MOO have a look in this section of the magazine and you may find<br />
U•<br />
OM • • M<br />
.<br />
• •••II<br />
just what you are looking for.<br />
0 • • NOMMEN • II<br />
U<br />
.<br />
This U month's sprites are from Aman Khan from Hayes, Middlesex.<br />
.<br />
.<br />
.<br />
•<br />
.<br />
S<br />
•<br />
m<br />
U<br />
•<br />
U<br />
r<br />
U<br />
U<br />
U<br />
U<br />
U<br />
U<br />
U<br />
I<br />
.."4•40.<br />
• . . . . . . .<br />
• • • • • • • • .• „<br />
•<br />
IPS • • • •<br />
11••••<br />
-<br />
• • • •<br />
1<br />
•••• .......<br />
• • •<br />
•••••<br />
... .4.<br />
••<br />
••• . .<br />
4<br />
. . . 41<br />
,<br />
•• •1 • 4 4 4 fl<br />
,<br />
4<br />
4" 1 4 0 fl<br />
11<br />
-<br />
4 fl<br />
•• •. • • •<br />
•••• •<br />
•••<br />
1<br />
11”<br />
0<br />
”<br />
-<br />
••••<br />
' • 0 . 0 . .<br />
• 1F• • • • • •<br />
• • • • • • • • • • •<br />
"Iltntv,<br />
5 POKE53251.0:POKE53280.0:PRINT"ICLR)"IREM SETS UP SCREEN COLOURS AND CLEARS SCR<br />
EEN<br />
10 FORA...0T01407READQ:P0KE12288.A.0:NEXT:REM POKES DATA INTO 12288 ONWARDS.<br />
20 REM ONCE DATA HAS BEEN READ IN ONCE TYPE 'RUN 1200 TO RUN THE PROGRAM AGAIN<br />
100 REM FRAME ONE...SPRITE ONE<br />
105 DATA0,0,10.0.3.105.0.63,213.0.253.85.3.255.117.3,255.245.15,2<br />
55 110 DATA213.21.255.85.85.117.85.85.253.85.87.255.85,31.255.85.23.<br />
. 255,213,5,255<br />
120 DATA85.1.127.85.1.125.85.0.93.214.0.21.90.0.1.106.0.0.10.<br />
245 0130 REM FRAME ONE.. SPRITE TWO<br />
135 DATA160.0.0,213.192.0.93.252.0,125.127.0.85.255.192.87,255.192.8<br />
.<br />
7140<br />
DATA85.215.252.85.85.124.87,245.127.95.253,95,95,255.255,8<br />
23<br />
.255.2 150 7 DATA220,85.127.80.85.127.64.85.93.64.85.85.0,153.84.0.170.64.0.160.0.0.0<br />
.<br />
40 .25 200 REM FRAME T W O<br />
255 205<br />
5, - DATA0.0.10.0.1.93.0.21.85,0,245,87,3.213.85.3.221,85.15.253.85,63.245.8<br />
5<br />
252.85.<br />
SPRITE<br />
255 O N E
210 DATA63.245.85.255.85.85.117.85,85.253.85.87.63.85.85,63.213.85.15,213.85<br />
220 DATA3.85.85.3.117.85.0.85.85.0.21.106.0.1.170.0.0.10.0<br />
230 REM FRAME TWO...SPRITE TWO<br />
235 DATA160.0.0.107.192.0.223.252.0,223.255.0.95.255,192,255,255.192.127.255<br />
240 DATA240.93.127.252.85,87.252.127.87.255.255.255,255.255.253.247.255.253.244<br />
250 OATAl27,245.212,127.245.80.95.245.64.87.213.64.85,213.0.89.84.0.170.64.0<br />
260 DATA192.0.0.0<br />
300 REM FRAME THREE...SPRITE ONE<br />
305 DATA0.0.10.0.3.126.0.21.223.0.87.223.1.85.95.1.85.255.13.85.127.61.85.93<br />
310 OATA53.85.85.245.85.127.213.85,255.213.87.255.53.85.255.61.65.255.15.85.127<br />
320 DATA3.85.95.3.85.137.0.117,85.0.21.105.0.1.170.0.0.10.0<br />
330 REM FRAME THREE...SPRITE TWO<br />
335 DATA160.0.0.149.64.0.255.252.0.255,255.0.255.255.192,127.255.192.253.255<br />
340 DATA240.255.255.252.87,255.252.87,255.255,255.255.255.255.255,255.253.253<br />
350 DATA252.253,125.116,245.117.80,245.85.64.213.85.64.213.85.0.85.84.0.153.6<br />
360 DATA0,160.0.0.0<br />
400 REM FRAME FOUR...SPRITE ONE<br />
405 DATA0.0.10.0.3.235.0.55.255.0.247,255.•.87.255.1.255.223.5.127.253.21.93<br />
410 DATAl27.21,85.87.85.127.87.85,255.255.87.255.247.21,255.245.21.255,213.5<br />
420 DATAl27.213.1.127.85.1.93.85.0.93.85.0.21,90,0.2.170.0.0.10.0<br />
430 REM FRAME FOUR...SPRITE TWO<br />
435 DATA160.0.0.235.192.0.255.252.0.255.255.0.255.255.192.255.255.192.255.255<br />
440 DATA240.255,255.244.255.255.244.255.255.85.255.253.85.255.245.85,253,245.84<br />
450 DATAl25.93.84.117.85.240,85.117.192.85.87.192.85.87.0,85.84.0.169.64.0.160<br />
460 0ATA0.0.0<br />
500 REM FRAME FIVE...SPRITE ONE<br />
505 DATA0.0.10.0.3.254.0.63.255.0.255.255,3,247.255.3.255.127.13.127,255.21.87<br />
510 DATA255.63.87.255.255.255.255.255.247,255,255,245.253.63.213.245.63.213.117<br />
520 DATA15.85.85.3.85.85.1.85.85.0.85.85.0.21,85.0.1.106.0.0.10.0<br />
530 REM FRAME FIVE.. SPRITE TWO<br />
535 DATA160.0.0.171.192.0.255.252.0.255.255.0.255.255.192.255.255.192.255.253<br />
540 DATA208.255.253.84.255.245.212.255.87.213.253,85.85.245,85.85.245.117.84,93<br />
550 DATA85.84.85.95.112.117.127.192.85.95.192.85,95.0.165.84.0.170.64.0.160.0.0<br />
560 DATA°<br />
600 REM FRAME SIX...SPRITE ONE<br />
605 DATA0.0.10.0.3.235.0.63,255.0.255.255.3.255.255.3.127,255.5.255.255.21.255<br />
610 DATA255.63.255.255.255,255.255.255.127.255.255.95,125.61,93.125.53,85.87.5<br />
620 DATA85,85.1.85.93.1.85.85.0.85.85.0.21.90.0.1.170.0.0.10.0<br />
630 REM FRAME SIX.. .SPRITE TWO<br />
635 DATA160.0.0.175.192.0.255.244.0.255.245.0.255.253,64.255.255,192.255,247.80<br />
640 DATA255.85.87.253.117.87.213.245,85.85.85.85.85.85.85.117,85.84.85.85.84.95<br />
650 DATA93,80.127.255.64.127.255.64.95.221.0.85,84.0.170,64.0.160.0.0.0<br />
700 REM FRAME SEVEN...SPRITE ONE<br />
705 DATA0.0.10.0.3.254.0.63.255.0.255.255.3.255.255.3.255.255.15,255.255.63.25-t<br />
710 OATA255.63,255.253.255.255.213.127,255.85,95,125.85.29.125.117,21,87.85,5<br />
720 OATA85.95,1.93.127.1.85.127.0.85.95.0.21,85.0.1.106.0.0.10.0<br />
730 REM FRAME SEVEN.. SPRITE TWO<br />
735 DATA160.0.0.233.64.0.253.84.0.253.87.0.255.87.192.255.223.192.247.87.240.85<br />
740 DATA85.124.117.85.124.245.85.93.85.85.95.85.85.127.85.85.124.85,85.92.93.85<br />
750 DATA80.255.85,64.255.93.64.221.117.0.85.84.0.169.64,0,160.0.0.0<br />
800 REM FRAME EIGHT.,. SPRITE ONE<br />
805 DAT10.0.10.0.3.234.0.63.253.0.255.253.3.255.255.3.2551255.15.255.247,63.25t<br />
810 DATA85.63.253.117.255.213.245.255.85,85.253,85.85.61.117.85.23.87.117.5.127<br />
820 DATA253.1.127.253,1.95.117.0.85.135.0.21.86.0.2.170.0.0.10.0<br />
830 REM FRAME EIGHT...SPRITE TWO<br />
835 DATA160.0.0.170.64.0.85.84.0.87.247.0.95.255.192.215.255.192.85,127.240.85<br />
840 DATAl27.252.85.127.252,85.95,245,85.87,85.85.87.245.65.95.252.85,95.252.85<br />
850 DATA87.240.117.87.192.213.85.192.85.85.0.149.84.0.169.64.0.160.0.0.0<br />
900 REM FRAME NINE...SPRITE ONE<br />
905 DATA0.0.10.0.1.106.0.61.85.0.253.87.3.255,95.3.255.215.15,247.85.63.85.85<br />
910 DATA61,85.85.213.85,85,85.85.85.85.85.85.23.117.85.63,253.85.15.253.117.3<br />
920 DATA117.213.1.85.85.0.85,85.0.21.105.0.1.170.0.0.10.0<br />
930 REM FRAME NINE.. .SPRITE TWO<br />
935 DATA160,0.0.85.64.0.85,124.0.247,253.0.255.255.64.255.255,192.127.255.240<br />
940 OATAl27.255.212.127.255.84.95.245.85,87.85.85,87,253.85.127.255.84.95.255<br />
950 DATA84.95.253.80.87.245.64.87.213.64.85.221.0.101.84.0.169.64.0.160.0.0.0<br />
1000 REM FRAME TEN.. .SPRITE ONE<br />
1005 DATA0,0.10.0.1,85.0.21.85.0.87.247.3.95.255.3.215.255.7.85.127.21.85,127<br />
1010 DATA53.85.127.245.85,95.85.85.87.85.85.87.53.85.127.61.85,95.13.117.95.1<br />
1020 DATA213.87.1.85.87.0.85.85.0.21.89.0.1.170.0.0.10.0<br />
1030 REM FRAME TEN...SPRITE TWO<br />
1035 DATA160.0.0.149.64.0.127.212.0.253.85.0.255.117.64.255.245.64.255.245.80<br />
1040 DATA255.213.92.255,85.84.245.85,85.85.85.85.253.85.95,255.85.124,255.85<br />
1050 DATAl24.253.85.80.245.85.64.213.85.64.221.85.0.85.84.0.105.64.0.160.0.0.0<br />
1100 REM FRAME ELEVEN., SPRITE ONE<br />
1105 DATA0.0.10.0.1.85.0.21.127.0.247.253.3.255.255.3.255.255.5.127.255.21.127<br />
1110 DATA255.21.127.255.85.95.245.85.87.85.85.95.245,21.127.255.21.95.255.5.95<br />
1120 DATA253.1.87.245.1.87.213.0.135.221.0.21.85.0.1.106.0.0.10.0<br />
1130 REM FRAME ELEVEN...SPRITE TWO<br />
1135 DATA160.0.0.105.64.0.213.220.0.85.125.0.117.85.192.245.87.192.245.87.240<br />
1140 11ATA213.85,212,85,85.84.85.87.245.85.95.253.85.95.255,85.87.252.85.85.252<br />
1150 DATA85.85.112.85.85.64.85.85,64,85.85.0.165.84.0.170.64.0.160.0.0.0.0<br />
1200 REM THIS SETS UP THE PARAMETERS,<br />
1205 V-53248:POKEV-0-21.3;POKEV-1-39.1.:POKEV-1-40.1!PRINT-ICLRHYEL)":P0KE53281.0:POKE<br />
53280.7<br />
1210 POKEV4-23.3:POKEV4-28.3:P0KEV-0-37.6:POKEV-38.5<br />
1220 POKEV.170:P0KEV42.194:PONEV4-1.125:POKEV03,125<br />
1230 A.•192<br />
1235 REM THIS PART SPINS THE PLANET.<br />
1240 POKE2040.A:P0KE2041,A41<br />
1250 F O R B<br />
-0 1260 00T01240 •<br />
T<br />
0 1 2 5<br />
•NEXMAA<br />
-1-<br />
2 : 1 F A - 2 1
Listings will be much easier to<br />
enter with our new system.<br />
COMMODORE LISTINGS ARE RATHER<br />
well known for the horrible little black<br />
blobs that always abound. Unfortunately<br />
the graphics characters which are used to<br />
represent graphic and control characters<br />
do not reproduce very well and they are<br />
also difficult to find on the Commodore<br />
keyboard<br />
In future all control and graphics<br />
commands will be replaced by a mnemonic<br />
within square brackets. This mnemonic is<br />
not typed out as printed in the magazine<br />
but rather the corresponding key or keys<br />
on the keyboard are pressed. For example<br />
[RIGHT] means press the cursor right key,<br />
you do not type in [RIGHT]. All of the<br />
keywords, what keys to press and how<br />
they are shown on the screen are shown<br />
below<br />
Any character that is accessed by pressing<br />
shift and a letter will be printed as<br />
(Sletter].<br />
[SA] shift and A<br />
[St] shift and +<br />
Any chdracter that is accessed by<br />
pressing the Commodore key and a letter<br />
will be printed as [Cletter]<br />
CA] Commodore and A<br />
C+j Commodore and +<br />
[Clj Commodore and 1<br />
Mnemonic Symbol what to press<br />
[RIGHT]<br />
[LEFT]<br />
[UP]<br />
[DOWN]<br />
[H]<br />
IF21<br />
(151<br />
[F41<br />
• M O<br />
MOM •<br />
OMOM<br />
•m 4 8 0<br />
moo mEM<br />
moo • • 8<br />
MOM • E M<br />
MOM MOM<br />
OM. M O<br />
MEMO<br />
left/right<br />
Mt left/ri<br />
ght<br />
Shif<br />
t cl o wn<br />
&<br />
u<br />
pup/down<br />
ti<br />
shift & fl<br />
f3<br />
shift 8,e 13<br />
If any characters are repeated the<br />
mnemonic will be followed by a number.<br />
This number is how many times you<br />
should enter the character. Any number<br />
of spaces over one will also be<br />
epresented in this form<br />
RIGHT10] press cursor right 10 times<br />
C+10] press Commodore and + 10<br />
imes<br />
SPC10] Press the space bar 10 times<br />
Mnemonic Symbol what to press<br />
IF5j<br />
[F6]<br />
IF131<br />
[CLEAR]<br />
[HOME]<br />
IRVSON]<br />
[RVSOFF]<br />
MOMS<br />
IMMO<br />
mums<br />
DOOM<br />
MOO•<br />
.008<br />
MO<br />
MO<br />
mai<br />
OM<br />
OM<br />
OM<br />
• • E<br />
• •<br />
MO M O<br />
MOM 800<br />
010M•<br />
MMOOMSOS<br />
MM•M •<br />
f5<br />
shift & 15<br />
17<br />
shift & 17<br />
shift & CLR<br />
/HOME<br />
CLR/HONit<br />
CTRL & 9<br />
CTRL & 0<br />
Any other characters should be easily<br />
recognisable for example CTRL-N means<br />
press CTRL and N and LEFT-ARROW<br />
means press the left arrow.<br />
Any number of mnemonics can be<br />
enclosed in brackets for example<br />
[SA10,SPC10,SA10]<br />
means type 10 shift A's 10 spaces and<br />
another 10 shift A's.<br />
Mnemonic Symbol what to press<br />
[BLACK]<br />
[WHITE]<br />
[RED]<br />
[CYAN]<br />
[PURPLE]<br />
[GREEN]<br />
[BLUE]<br />
[YELLOW]<br />
MOOS<br />
•OMM<br />
O•<br />
••118110<br />
•M • EMM<br />
•m MEMO<br />
m• mMEM<br />
MO MOOM<br />
CTRL & 1<br />
CTRL & 2<br />
CTRL & 3<br />
CTRL & 4<br />
CTRL & 5<br />
CTRL & 6<br />
CTRL & 7<br />
CTRL & 8
THE CREATOR SERIES<br />
Now you can let your mind go in a<br />
crescendo of creativity. You may think<br />
you are unable to program, you may<br />
know nothing about computing but now<br />
YOU are able to write stunning original<br />
machine code programs. ARCADE<br />
ARCADE CREATOR<br />
CREATOR, the first release in the<br />
CREATOR SERIES, allows you to<br />
program your own arcade games in the<br />
language you know best - English.<br />
If you prefer the complex mind<br />
stretching world of the strategy<br />
program, then the second in the series,<br />
BATTLE CREATOR, is for you. Using<br />
simple commands you can devise your<br />
own brain buster, without busting your<br />
own brain in the process.<br />
For the budding musician, the third in<br />
the series, MUSIC CREATOR, helps you<br />
to compose your own melodies and<br />
rhythms.<br />
The Arg u s Pre ss So f t w a re Gro u p L t d<br />
Liberty Ho u se . 2 2 2 Re g e n t St re e t , L o n d o n WiR 7(!43<br />
Telephone 01-439 0 6 6 6<br />
Music Creator - CBM64 T H E C R E A M E R S E R I E S Arcade/Battle Creator -<br />
UNLEASHES THE POWER OF YOUR IMAGINATION C 8 M 6 4 , Spectrum & Ams
READER'S<br />
45
1. Would you please tick the box against<br />
the statement which best describes how<br />
much of Your Commodore you normally<br />
read or look through:<br />
Read or look through most or nearly all<br />
the articles/features 0<br />
Read or look through some of the<br />
articles/features<br />
Just read or look through the occasional<br />
article/feature 0<br />
2. With regard to the advertisements in<br />
Your Commodore, do you:<br />
Read or look through most or nearly all of<br />
the advertisements? 0<br />
Read or look through some of the<br />
advertisements? 0<br />
Just read or look through the occasional<br />
advertisement? 0<br />
Very rarely/never look at the<br />
advertisments? 0<br />
3. Thinking specifically about the advertising<br />
content of Your Commodore,<br />
would you please rate the two main types<br />
of advertising matter - Display and<br />
Classified - in terms of usefulness (please<br />
tick one against each type):<br />
Display Classified<br />
Very useful 0<br />
Useful 0 0<br />
Not very useful 0 0<br />
Not at all useful 0<br />
4. Have you ever ordered or bought<br />
equipment/products after reading an<br />
advertisement in Your Commodore?<br />
Regularly<br />
Occasionally<br />
Never 0<br />
If the answer to Question 4 is yes, what<br />
was the last item you purchased in this<br />
wray and what was its value?<br />
5. Does anyone else read your copy of<br />
Your Commodore?<br />
No<br />
1 or 2<br />
3 or 4 0<br />
More than 4 0<br />
6. Do you keep your copies of Your<br />
Commodore for:<br />
One month? 0<br />
Three months? 0<br />
Six months?<br />
A year or more?<br />
11 KEPT, PLEASE ANSWER THE NEXT<br />
QUESTION.<br />
7. How often do you refer to back issues of<br />
Your Commodore?<br />
Once a week or more often 0<br />
About once a month 0<br />
Once every three months 0<br />
Less often 0<br />
Never refer to back issues 0<br />
ff. What magaiines other than Your<br />
Commodore's competitors do you read?<br />
9. What Daily newspaper do you regularly<br />
read?<br />
Daily Mail<br />
Daily Express<br />
Daily Mirror<br />
The Sun<br />
Ioday<br />
The Guardian<br />
The Times<br />
0<br />
The Daily Telegraph<br />
Financial Times<br />
10. What Sunday newspaper do<br />
regularly read?<br />
Sunday Times<br />
Sunday Telegraph<br />
The Observer<br />
Sunday Express<br />
Mail on Sunday<br />
News of the World<br />
Sunday People<br />
17. Do you use your computer for the following:<br />
13. Do you own one of the following disk<br />
drives?<br />
1541 0<br />
1551 0<br />
1570 0<br />
1571<br />
Original programmings All the time More than half the time Sometimes Never<br />
Typing in games listings<br />
Typing in utility listings<br />
Playing games<br />
Educational uses<br />
Business uses<br />
you<br />
11. Name the three television<br />
programmes you view most regularly.<br />
12. Which computer(s) do you<br />
C16<br />
Plus/4<br />
C64<br />
C128<br />
Vic 20<br />
PET<br />
Spectrum<br />
Amstrad<br />
BBC<br />
Electron<br />
Atari<br />
own?<br />
14. Do you own any of the following<br />
printers?<br />
Commodore printer<br />
Epson-compatible printer<br />
Other 0<br />
15. Do you own any of the following<br />
peripherals?<br />
Joystick 0<br />
Lightpen<br />
Mouse 0<br />
Graphics pad<br />
O 16. How long have you had a Commodore<br />
• computer?<br />
O Less than three months<br />
O Three to six months<br />
O Seven months to one year<br />
O One year to two years<br />
O Over two years
18. Who else uses your computer?<br />
Nobody<br />
Spouse<br />
Parent<br />
Children<br />
Friends<br />
Other<br />
19. How much do you estimate you have<br />
spent in total in the last 12 months on your<br />
computing activities?<br />
0- £50<br />
f51-100<br />
El 01-200<br />
1201-500<br />
1 1500-11000<br />
11000-1500<br />
11500-2000<br />
Over 12000<br />
20. How much do you expect to spend on<br />
hardware over the next year?<br />
0-150<br />
151-1100<br />
1101-200<br />
a<br />
1201-1500<br />
Over 1500<br />
0-150<br />
151-1100<br />
1101-f 200<br />
1201-1300<br />
1301-1500<br />
0<br />
0<br />
0<br />
21. How much do you normally spend in a<br />
12-month period on the following types<br />
of software?<br />
22. Do software reviews influence your<br />
buying?<br />
Yes<br />
No<br />
23. Do Software Charts influence your<br />
buying?<br />
Yes<br />
No<br />
24. Please tick the box which best<br />
describes you:<br />
New reader (within the last 3 months) 0<br />
Established reader 0<br />
Occasional reader<br />
25. Were you previously a regular reader<br />
of Your 64?<br />
Yes 0<br />
No 0<br />
a<br />
26. Were you previously a regular reader<br />
of Your Commodore before we<br />
incorporated Your 64? Yes<br />
No 0<br />
27. Were you previously a regular reader<br />
of BOTH Your Commodore and Your 64?<br />
Yes 0<br />
No<br />
28. Since we incorporated Your 64, do you<br />
think that Your Commodore is:<br />
Better<br />
Same 0<br />
Worse<br />
PLEASE STATE WHY<br />
29. What do you think about the balance<br />
of articles in Your Commodore?<br />
About<br />
More right<br />
New 0 a<br />
Programming articles 0 0<br />
Software reviews 0 0<br />
Hardware reviews 0 0<br />
Book reviews 0 a<br />
Games to type in 0 0<br />
Utilities to type in D 0<br />
Business page 0 0<br />
Adventure column 0 0<br />
Letters 0 0<br />
Competitions 0 a<br />
What else would you like to see in Your<br />
Cornmodore?<br />
Games Business Software Educational Software Utilities<br />
Less<br />
0<br />
30. Which listings do you type in?<br />
All Some None<br />
Games 0 a<br />
Utilities 0 a<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
31. Which other computer magazines do<br />
you regularly buy?<br />
Commodore Horizons a<br />
Commodore User 0<br />
Commodore Computing International 0<br />
Zzapp 64<br />
0<br />
Compute<br />
a<br />
Your Computer<br />
Popular Computing Weekly<br />
0<br />
Personal Computer World<br />
Other<br />
32. Are you aware of Your Commodore's<br />
scheduled publication date?<br />
Yes 0<br />
No<br />
33. If you answered yes to Question 32, do<br />
you attempt to purchase the magazine on<br />
that day?<br />
Yes<br />
No 0<br />
34. Do you normally obtain your copy by:<br />
Casual purchase<br />
Newsagent home delivery a<br />
Newsagent shop collection a<br />
Subscription 0<br />
IS. If you do not obtain your copy be<br />
subscription, is it due to one of the<br />
following?<br />
Subscription too expensive 0<br />
Good availability through local<br />
newsagent<br />
Not every issue is required 0<br />
Have subscribed previously but lapsed<br />
36. If you do not subscribe, from which<br />
type of newsagent do you most often<br />
obtain your copy?<br />
High Street shop 0<br />
Estate shop 0<br />
Travel Point 0<br />
Corner shop<br />
37. Are you a member of a computer club?<br />
Yes<br />
No 0<br />
If yes, please give details<br />
PERSONAL DETAILS<br />
38. Please tick the box which represents<br />
the annual total of your NET income (i.e,<br />
after tax, National Insurance, pension<br />
contributions, etc):<br />
From 111690+ 0<br />
From 19350 to 111680<br />
From 17480 to 19340<br />
From 15980 to 17470<br />
From 14780 to 15970 0<br />
Name<br />
Address<br />
Marital status<br />
Sex<br />
Age<br />
Occupation<br />
Number of children<br />
0<br />
O<br />
0<br />
0<br />
We would like to thank you very much for<br />
your help. The information will be<br />
regarded as confidential and will be used<br />
solely for the purpose of the survey.
Postage<br />
will be<br />
paid by<br />
licensee<br />
r<br />
B<br />
U<br />
S<br />
I<br />
N<br />
E<br />
S<br />
S<br />
R<br />
E<br />
P<br />
L<br />
Y<br />
S<br />
E<br />
R<br />
V<br />
I<br />
C<br />
E<br />
TUCK INTO A<br />
THIRD FOLD<br />
Do not affix Postage Stamps if posted in<br />
Gt Britain, Channel Islands, N Ireland<br />
or the Isle of Man<br />
Licence No. WC 3970<br />
Your Commodore<br />
Argus Specialist Publications Limited<br />
No. 1, Golden Square,<br />
LONDON W1R 3AB<br />
SECOND FOLD<br />
010d ISUIA<br />
1
i<br />
S<br />
O<br />
F<br />
T<br />
W<br />
A<br />
R<br />
E<br />
PRIN<br />
29<br />
TER<br />
5<br />
-if•S 1101 Detsywneel S .... L23 '<br />
8<br />
t<br />
1<br />
o00<br />
ckaE.1 5 9<br />
s 1<br />
9<br />
1 ornprtra interlace • •<br />
0A<br />
01<br />
0 ‘<br />
N"<br />
MONITOR<br />
k4<br />
S<br />
-1<br />
a)(<br />
1900M.80 COL M • .......... 145,00<br />
1902 COL M o n ito r ...... 285.00<br />
PHILLIPS<br />
Green/Amber • • . ........ .95.00<br />
PhittipsCarne.<br />
.........<br />
..<br />
1 1<br />
9 S<br />
Superscript 04 - D isk<br />
Superscript 128 - Disk<br />
Superscript • Supeibase 64 D isk<br />
Superbase 64 - Disk<br />
Superbase 128 - Disk<br />
Stioeibasc • Su p e rscrip t 128 - Disk<br />
176 OiSC 0 0 9 0<br />
70 CL EAR!<br />
MPS aot (New). • • • 129.00<br />
MPS 80) (Shop Sotratt) • - 00<br />
c64 (Shup Sneed) , • ..... • • 99.00<br />
100 sin e Oe ct. d iN e A95.611<br />
,t97•, d u p le ste le . &Alt dtWe 265.<br />
t a 9 .<br />
00<br />
"INSTANT CREDIT"<br />
000<br />
cor)r<br />
12817 rEitatirteas Package<br />
airpa<br />
g<br />
1280 . 8 0 Ca.) M onitor • Pn n ter<br />
toctuoing • 5 tusks • Sok Per<br />
Inc, Superscript.<br />
....... 49.00<br />
7 4 . 0 0<br />
9 9 . 0 0<br />
5 9 . 0 0<br />
7 9 00<br />
t 39 00<br />
Elt75 inc<br />
Yes Its Its true !!!<br />
rvE<br />
LC<br />
Om<br />
b<br />
For a limited period we are giving away a E5.00<br />
Travel Chek for spending money on your next<br />
holiday with EVERY E50 SPENT.<br />
Thats not all folks<br />
your vouchers could also win you a FREE stay<br />
HOLIDAY for two or four people in our lucky<br />
numbers draw.<br />
ONE ENTRY FOR EVERY E5 VOUCHER<br />
1243<br />
T$70 0<br />
aCk<br />
CT S? 28 "<br />
P ° l Cf<br />
- a disk e'<br />
eires r S<br />
E445<br />
k<br />
.00<br />
a<br />
a eg<br />
I c.<br />
r<br />
„<br />
i<br />
Computer Centres<br />
48 Junction Road, Archway, London N19 5RD<br />
01-263-9493/5<br />
238 Muswell Hilt Broadway, London N10 3SH<br />
01-883-3705<br />
ma,ntenanc<br />
• CONDITIONS OF REDEM PTION OF TRAVELLERF, C;HEKS PRINTED ON EACH VOUCHER<br />
Terms<br />
all fro e , St4<br />
rn your tvo 1 cc;<br />
rvioe s u<br />
L TO t<br />
) 7 P<br />
O<br />
D ° r t<br />
'<br />
T r<br />
a<br />
m s<br />
,<br />
g<br />
Ivo<br />
cit<br />
,<br />
G<br />
'<br />
o<br />
r<br />
e<br />
c<br />
„<br />
,,<br />
t<br />
r<br />
"INSTANT CREDIT"<br />
' Op" ,_0<br />
r.. A CO<br />
MPe ' .<br />
C°6"I'<br />
...<br />
2n<br />
e<br />
pr<br />
"<br />
a<br />
c<br />
e<br />
C12l<br />
8 •<br />
All products are guaranteed for one year unless otherwise stated. Payment may be made by Access, Barclaycard. Bankers draft. Building Society theque<br />
cash or postal order. Sorry, cheques need five days for clearance. We reserve the right to change prices without prior notice All prices are inclusive of VAT<br />
Please check before ordering for carriage charges.<br />
GOO<br />
CIA<br />
/<br />
14<br />
44<br />
19<br />
9057<br />
TI<br />
0 TI<br />
-<br />
t<br />
',DO% competibte wan C64 software<br />
i<br />
,TBK RAM e l<br />
, 7214. ROM, 6510 1 .6 0 A CPUS<br />
c..2.6 00<br />
e . 3<br />
i<br />
n —MEDIA<br />
1<br />
Verbatim wh ich are the best d isks<br />
c<br />
o SS DO 40T Diskettes 1 7 9 5<br />
m OS DO 40T Diskette 2 4 , 7 5<br />
p SS DO 80T ........ .„ 2 4 1 5<br />
u<br />
t<br />
OS DO 80T Diskettes 3 2 .7 5<br />
e PAPER<br />
r I I••• 9.5 12000 sheets) 1 2 _ 6 5<br />
11 213 9 114 1 1 9b<br />
LABELS<br />
35 x i 7 ,<br />
, 3 5 1 7/18<br />
16<br />
1 1 0<br />
0 0 I<br />
4<br />
.<br />
5<br />
0<br />
1 6 . 0 6<br />
VISA
1<br />
1<br />
Gordon Hamlett explores the<br />
complexities of US Gold's<br />
Ultima IV.<br />
SINCE THE MENACE OF EXODUS WAS<br />
destroyed, Lord British is looking for<br />
someone to improve the quality of life<br />
throughout the land of Britannia. This involves<br />
finding or achieving something<br />
called Avatar about which. everybody hds<br />
heard and nobody appears to know<br />
an<br />
How you came to be volunteered for<br />
this quest is an interesting story. Whilst<br />
walking in the countryside, you see a<br />
bright light and hear d strange noise. From<br />
then on, things get curiouser and<br />
curiouser and you are inexorably lured by<br />
some music into a gipsy caravan. There, an<br />
old woman asks you some questions<br />
based on honour, valour, justice and<br />
other virtues. Depending on your<br />
answers, your character is assessed and<br />
your profession determined. This may be<br />
one of eight types including fighter,<br />
mage, druid and ranger.<br />
The land of Britannia is a large and<br />
varied place. There are eight major towns,<br />
each one specialising in one of the eighth<br />
professions. , The people inside are<br />
friendly and you will need to talk to everyone<br />
you meet, trying to glean useful<br />
scraps of information. There are castles<br />
and villages to be explored too- if you can<br />
find them. Outside of the towns, the land<br />
is more hostile- wandering bands of orcs,<br />
rogues, trolls and two-headed ettins etc.<br />
roam the countryside intent on trying to<br />
kill you. The land itself can also be hostile<br />
- marshes give off poisonous gases that<br />
can rapidly deplete your strength<br />
although there are healers in several of<br />
the towns who will cure you - for a price_<br />
There are dungeons to be discovered<br />
and explored, and shrines to be sought<br />
out. Travel is usually on foot although you<br />
may be able to beg. steal or borrow horses<br />
to speed up your journey. You will certainly<br />
need a ship to visit the islands, not<br />
all of which are on your map and you will<br />
have to learn how to use the moongates<br />
efficiently. There is also rumoured to be a<br />
balloon or something similar hidden<br />
away.<br />
As you travel the land and talk to the<br />
people, you can try and persuade them to<br />
CAJ<br />
Me<br />
n1<br />
0<br />
HE SAYSt<br />
THOU ART DOING<br />
VERY WELL INDEED<br />
ON THE PATH TO<br />
AVATARHOOD!<br />
STRIVE YE TO<br />
ACHIEVE THE<br />
ILEVATION IS ALL<br />
EIGHT VIRTUES!<br />
uHAT ELSE<br />
-<br />
!<br />
C<br />
Thou ar sworn o op o a ord 4 o<br />
p a r t a t e s in the forbidden torture of<br />
prisoners, lach nisht their cries of<br />
Pdin re('ct% thee. Dolt thou A) Show<br />
ComPassion by rgportins the deedst or<br />
8) Honor thy oath aria ignore the deeds<br />
1
join your party. Up to seven others can<br />
join - one from each of the other profession<br />
types - paladin, bard, tinker and<br />
shepherd being the others. Some will only<br />
join you when you prove yourself worthy<br />
to a certain degree. Experience points are<br />
awarded for killing an enemy. Visit Lord<br />
British and he will promote you when you<br />
have gained sufficient points.<br />
Magic plays a crucial part in the game.<br />
There are 26 spelk to be mastered but<br />
before you can think about casting one,<br />
you need to know the ingredients and mix<br />
them in their correct proportions. There<br />
are six main ingredients that can be<br />
bought at any good herb shop but all the<br />
powerful spells require mandrake or<br />
nightshade which are not so easily come<br />
by. The spells range in power from simple<br />
ones, such as healing wounds or casting a<br />
magical light, through fireballs and<br />
assorted protections to kill and jinx - a<br />
jolly little trick that causes your<br />
opponents to attack themselves instead of<br />
you. Everybody except fighters and shepherds<br />
has some magical ability although<br />
how much depends on your job and<br />
experience level.<br />
There is a lot of fighting to be done if<br />
you are to attain your quest. Combat takes<br />
place on a variety of tactical displays and<br />
you can move, attack or cast spells for<br />
each of your characters in turn. How the<br />
battle goes depends on what weapons<br />
Y'?8 1 E9.95<br />
1<br />
1s<br />
nEi.10,,,9 FREE Watch odd Pos ace<br />
n KEY. MULTIFUNCTION<br />
CALCULATOR WATCH<br />
with Olney order<br />
for a Cassette 50<br />
• Normal 12 and<br />
24 hour lime<br />
mode<br />
• Calendar mode I1 1<br />
• Alarm mode<br />
• Calculator<br />
mode<br />
WORTH OVER 110<br />
and armour your party owns and how you<br />
deploy your forces. The use of slings and<br />
bows, especially by the members at the<br />
back of your party is recommended. The<br />
monsters - over 20 different types - fight<br />
intelligently and will run away if hard<br />
pressed leaving behind a treasure chest,<br />
although this is frequently trapped as you<br />
try to open it.<br />
So what of the quest itself? The first<br />
part involves attaining a partial Avatarhood<br />
in the eight virtues- honour, valour,<br />
humility, sacrifice, honesty. compassion.<br />
justice and spirituality. The seer<br />
Hawkwind keeps you informed as to your<br />
progress and should be visited frequently.<br />
At the appropriate time, you have to go<br />
and meditate at a shrine - provided that<br />
you have found the correct rune to gain<br />
you admission and have learned the<br />
apposite mantra to chant. Only then will<br />
you be granted a vision. Apart from that,<br />
you will need to fi nd some coloured<br />
stones - I found the red one on the eight<br />
level of Dungeon Destard. After that, I<br />
don't know apart from the fact that there<br />
will be some final conflict in a place<br />
known only as the Abyss.<br />
Other things to look out for are secret<br />
passages (which abound in castles and<br />
dungeons) and the guild where you will<br />
need to purchase magical keys and gems<br />
(very useful for mapping dungeons). A<br />
sextant will also be an essential purchase-<br />
L'-]E&<br />
CASSETTE 50 IS AVAILABLE ON<br />
OCIOA.11 ATARI DRAGON ELECTRON<br />
inCE th9 ORICI 1X81 toppIa Atmos<br />
Spectrum commodore AMSTRAD<br />
•<br />
M<br />
E<br />
M<br />
•<br />
it fl aw , MI ling• • • •<br />
with every<br />
F R E E calculator Cassette watch 50<br />
EXPRESS DELIVERY-ORDER NOW<br />
ONLY E9.95<br />
'acne<br />
Address<br />
SPECIAL<br />
FREE WATCH<br />
OFFER...<br />
Poet Code<br />
51<br />
if you can find someone to sell you one.<br />
Above all, you gain information and write<br />
everything down. The amount of work<br />
and expense that you have to put into<br />
gaining even the smallest clue is<br />
phenomenal.<br />
The display is in three main boxes. A<br />
large map displays your current position<br />
(line of sight vision only). The top right<br />
hand box displays the statistics for you and<br />
your party whilst the bottom box is used<br />
for command entry and as a general<br />
information box. Everything in the game<br />
is controlled by single keystroke<br />
commands apart from conversations<br />
which usually only require a single word.<br />
The game comes beautifully packaged<br />
with two large books, a map and a<br />
reference card.<br />
Ultima IV is a superb game and streets<br />
ahead of any of its rivals. To date. I have<br />
played it for well over 60 hours and still<br />
feel that I have only scratched the surface<br />
of it. If you only buy one game this year,<br />
make sure it's Ultima IV.<br />
To<br />
Ultima IV — C64<br />
US Gold: Unit 10, The Parkway Industrial<br />
Lstate, Heneage St, Birmingham R7 47Y<br />
Price: 09.95 - two disks<br />
Commodore 64<br />
Only you can save Europe from<br />
destruction! Its ROCKET LAUNCH, the<br />
thrilling war game that reproduces a<br />
European map. More ambitious? Try<br />
rescuing your crew under an ultrafast<br />
GALACTIC ATTACK and escaping back to<br />
your spaceship! Just two of the great<br />
games an your Cassette 50, featuring<br />
high resolution and useudefined<br />
graphics, sprites, sound and music.<br />
1 M aze Eater I I<br />
. Galactic W e Attica I S Thin Ire<br />
3 Since Pi113Sion<br />
B o n i<br />
4 Loner Landing<br />
P11$1111 Bolt<br />
19 Orbitte i<br />
20 Motorway<br />
21 Forte Field<br />
li Ste /tre k 22 Nun<br />
Radei landing<br />
8 Atte cke r<br />
9 Galactic<br />
23 Tunnel he lve<br />
24 Ba rre l Jump<br />
25 Cannonball<br />
Dog Nett<br />
Battle<br />
10 Piing Attecil 2$ Otertake<br />
II I ve sive Action 21 Sitting Target<br />
12. Noughts I t 28 Sra•ah the<br />
Crosses<br />
Window<br />
13 Bogglas 29 Space Ship<br />
14 Pontoon 30 Je<br />
15. Ski Jump 31 Phew<br />
lb Hangmen 32. intruder<br />
I enclose a cheen.ie<br />
tomitall order kw<br />
33 Intorno<br />
34. Ghosts<br />
35 &de mi s<br />
35 Aocke t Launch<br />
32 Planets<br />
35 Bla ck Hole<br />
39 Dynamite<br />
40 Do Your Sums<br />
41 De rby Dash<br />
42 Space Search<br />
43 Universe<br />
44. Rate<br />
15. Tanker<br />
16, Parachute<br />
U. Je t Mobile<br />
MI High Rise<br />
49 rrim Force<br />
50 hichirig,<br />
POSISGIO FREE in U K. Add El 00 ror overseas (motor'<br />
Free watch and tape will be despatched within 20 days_<br />
rrmd e pay OA to<br />
Cascade Games Lid<br />
.P<br />
F., 0, • • / ebtlbr c0Tter0v Whin 010• 00<br />
, N41044 Win um our N Sour tonne, W231000143<br />
7<br />
0g n/ 1 0 A 0 Irm1 0 p =a- [ ... .<br />
0 0 0 - 1 1 1 0 1 1 , 0<br />
1 0.<br />
•sitsrtio<br />
OTAN I<br />
,--<br />
0 01VIC<br />
1— 1 TRIM V , .IC 20 v 4 l t e l .., AM U<br />
CONIACOD85 0 f 0 0<br />
o RIA i ATHOS c<br />
L.I ORAGON b. ELiCIPDsi<br />
P<br />
Cascade i Ga ms. Ltd,. 1 .3 Hayvera Croscent<br />
o<br />
Harrogate,<br />
d E North l Yorkshire, HD1 BUM Enghkord,<br />
YC 6186 Telephone 104231504E63 ke,?•sre.,16,,rnbe• r ••<br />
0<br />
1<br />
B B C<br />
1<br />
',51,..r.4<br />
e t<br />
1<br />
.<br />
c<br />
.<br />
b<br />
y<br />
T<br />
R<br />
A
kllen Webb explores] 1— draws the dot<br />
[the complexities of ]<br />
2 — flips the dot i.e.sets it if it's<br />
clear, clears it if it's set<br />
C O L O U R specifiesthecolour<br />
Imedium-res l c h agraphics.1 n g of e the dot. the Values colour. of A zero value to 15 of<br />
16 leaves the colour unaltered.<br />
2) Lines<br />
Everyone rabbits on about high SYS 51715,X1,Y1,X2,Y2,MODE,<br />
resolution graphics and how COLOUR<br />
they can be used for brilliant X1,Y1,X2,Y2 are the coeffects<br />
and works of art. I am ordinates at the ends of the<br />
equally guilty having in the past lines.<br />
discussed their use (January<br />
3) Area manipulation<br />
issue). For some applications, SYS 5 1 7 1 8,XC,YC,WI,HI,<br />
however it may be possible to COLOUR,MODE,[CHARACsettle<br />
for a lower resulution TER]<br />
systern. X C , Y C specify the position of<br />
The C64, in common with the top left hand corner of the<br />
most other micros, has a area.<br />
resident set of standard WI is the width of the area.<br />
characters. Amongst these are HI is the height of the area.<br />
a number which represent COLOUR acts in the same way<br />
squares one quarter the size of as the previous commands.<br />
a normal character, These MODE has the effects:<br />
squares can be used to plot 0 — EOR's the area i,e, changes<br />
lines or dots. Using this system it to reverse field. Repeating<br />
you can achieve a resolution of the command restores the<br />
80 points across and 50 points area,<br />
up. Whilst you may not 1 — fills the area with the<br />
consider this too much of an character specified.<br />
idea, I recently saw two superb CHARACTER is only<br />
pictures drawn in this required if MODE equals one.<br />
resolution. This emphasises A syntax error is generated if it<br />
that artistic ability can is omitted when MODE=1 or if<br />
overcome system limitations, it is added when MODE-0. The<br />
Remember, also, that Jeff character value is the POKE<br />
Minter's excellent Psychedelia value so that a value of 32 erases<br />
uses this sort of resolution. t h e area and a value of one fills<br />
The routines given here the area with the letter A.<br />
give complete control over thee This command acts on a 40<br />
drawing of lines and dots and by 25 resolution and, as before,<br />
the manipulation of screen out of range values are<br />
areas. i g n o r e d .<br />
The commands have the<br />
I've included a simple<br />
following syntax: demonstration which shows<br />
1) Dots s o m e ways of using these<br />
SYS 51 71 2,XP.YP, MODE, commands. The fi rst uses<br />
COLOUR s h a d e s of grey and dotted lines<br />
XP,YP are the co-ordinates of<br />
to give a-3D effect. The second<br />
the dot. i s just pretty and uses the area<br />
MODE decides how the dot is command to [OR the pattern.<br />
drawn:<br />
(1 — erases the dot<br />
MODE has the following Both the dot and line<br />
effects: c o m m a n d s use the 80 by 50<br />
0 — erases the line, r e s o l u t i o n with the origin in<br />
1 — draws-the line, t h e bottom left corner of the<br />
2 — flips the line, s c r e e n . All out of range values<br />
3 — draws a dotted line. a r e ignored.<br />
COLOUR is the same as for the<br />
dot command.<br />
I PROERAN: LOW RES LOADER<br />
2000 FOR L.0 TO 56:CX.0<br />
:FOR D.0 TO 15:READ A<br />
:CX.CX4:POKE 51712+0164.<br />
FYI:NEXT D<br />
2010 READ A:IF AOCX THEN PR<br />
INPERROR IN LINEN:<br />
2040+1L810):STOP<br />
2020 NEXT L:END<br />
2040 DATA 76,9,202,76,99,204,<br />
76,193,204,32<br />
1135,3,32,1697<br />
2050 12,203,141,<br />
DATA 12,203,141,134<br />
1 32,12,203,141,136,3<br />
3, 1240,6,169,1638<br />
2060 201,2, DATA 1,56,237,136,3,141<br />
1 136,3,32,12,203,141,137,3,<br />
72,152,1465<br />
2070 DATA 72,138,72,169,0,<br />
141,132,3,141,133,3,133<br />
92 52<br />
2080 1DATA<br />
133,251,201,50,144,<br />
173 3<br />
, 1201,80,144,3,2046<br />
2090 134 7DATA<br />
76,247,202,169,49,<br />
, 656,229,251,133,251,78,135,<br />
3,1 , 3,46<br />
2100 699 21<br />
DATA 70,251,46,133,3,6,<br />
4133,<br />
251,6,251,6,251,165,251,6,<br />
73,20<br />
251,38,1985<br />
2110<br />
, 61 DATA 252,6,251,38,252,<br />
24,101,251,133,251,133,<br />
2<br />
253,165,252,109,136,2607<br />
0<br />
2120 DATA 2,133,252,174,133,<br />
2<br />
3,169,1,141,133,3,224,0,<br />
,<br />
240,6,14,1628<br />
1<br />
7<br />
3<br />
,<br />
52 I<br />
2130 DATA 133,3,202,144,246,<br />
172<br />
221,252,202,240,2543<br />
9<br />
2140 135 DATA 8,232,224,16,144,<br />
, 246,76,247,202,173,136,3,<br />
3,1 201,1,240,20,2169<br />
2150 77, DATA 201,2,240,8,138,13<br />
1 251 133,3,24,170,144,21,138,<br />
,<br />
77,133,3,1448<br />
2160<br />
162<br />
DATA 24,170,144,13,173,<br />
,0,<br />
133,3,73,255,141,133,3,<br />
138,45,133,3,1584<br />
2170 DATA 170,189,252,202,<br />
172,135,3,145,251,56,169,<br />
216,237,136,2,141,2476<br />
2180 DATA 138,3,165,251,133,<br />
253,24,165,252,109,138,3,<br />
133,254,173,137,2331<br />
2190 DATA 3,201,16,240,2,145,<br />
253,104,104,168,104,96,32<br />
126,123,97,1814<br />
2200 DATA 124,226,255,236<br />
1 108,127<br />
1254,160,32<br />
2210 98 1DATA<br />
138<br />
1 1253,174,32<br />
165,20,96,72,152,72,138,<br />
173,32,2 252,225 ,280? 72,169,1,141,1871<br />
47,183,<br />
2220 ,251, DATA 136,3,173,139,3,<br />
201,80,144,3<br />
1173,140,3,201,1924<br />
2230 76,247 DATA 80,144,3,76,247,<br />
1202,173,141,3,201,50,144,<br />
202, 3,76,247,202,1992<br />
2240 DATA 173,142,3,201,50,<br />
144,3,76,247,202,173,140,<br />
3,56,237,139,1989<br />
2250 DATA 3,141,143,3,173,
1<br />
142,3,56,237,141,3,141,<br />
144,3,169,1,1503<br />
2260 DATA 141,145,3,141,146,<br />
3,173,144,3,16,10,160,255,<br />
140,145,3,1628<br />
2270 DATA 73,255,24,105,1,<br />
141,147,3,173,143,3,16,10,<br />
160,255,141,1650<br />
2280 DATA 146,3,73,255,24,<br />
105,1,141,148,3,173,148,3,<br />
56,237,147,1663<br />
2290 DATA 3,141,149,3,16,35,<br />
169,255,141,150,3,169,0,<br />
141,151,3,1529<br />
2300 DATA 173,147,3,141,152,<br />
3,173,148,3,141,153,3,173,<br />
144,3,48,1608<br />
2310 DATA 5,169,1,141,150,3,<br />
76,217,203,169,0,141,150,<br />
3,169,255,1852<br />
2320 DATA 141,151,3,173,148,<br />
3<br />
1153,3,173,1708<br />
2330 1DATA<br />
143,3,48,5,169,1,<br />
4141,151,3,173,152,3,141,<br />
1154,3,56,1346<br />
2340 , DATA 237,153,3,141,155,<br />
1<br />
5<br />
2<br />
PROGRAM: , LOW RES DEMO<br />
3<br />
,<br />
1 POKE 53281,11<br />
2 C1.121C2.15<br />
1<br />
10 SA.51712<br />
7<br />
20 PRINT<br />
3<br />
CHRS(147)<br />
21 FOR , X.0 TO 49<br />
22 SYS<br />
1<br />
SA+3,11,0,X,20,3,02<br />
23 SYS<br />
4<br />
SA+3,X,49,X,29,3,C2<br />
25 NEXT 7<br />
26 FOR , X.50 TO 60<br />
27 SYS 3 503,1,0,X,49,2,C2<br />
, :NEXT<br />
28 FOR 1 X.61 TO 79<br />
29 SYS 4 SA4.34,0,X,49,241<br />
1:NEXT<br />
30 SYS , SA+3,61,0,61,49,0,C2<br />
35 Y1.01Y2.49:DX.49<br />
:FOR X.0 TO 19<br />
40 SYS SA4.3,X,Y1,X,Y2,1,C2<br />
50 SYS SA+3,X+DX,Y1,X+DX,Y2,<br />
142<br />
60 Y1=Y141:Y28Y2-1:DX4X-2<br />
:NEXT<br />
70 FOR X.8 TO 11<br />
80 SYS 9+3,1,0,X,49,0,0<br />
90 SYS SA+3,X,12,X,37,1,C1<br />
3,173,153,3,141,156,3,78,<br />
152,3,173,1727<br />
2350 DATA 153,3,56,237<br />
0 141,157,3,173,139,3,141,<br />
152,3, 135,3,173,1672<br />
2360 DATA 141,3,141,134,3,<br />
173,158,1,201,3,208,5,173,<br />
136,3,73,1558<br />
2370 DATA 255,141,136,3,32,<br />
46,202,173,157,3,16,30,24,<br />
109,156,3,1486<br />
2380 DATA 141,157,3,173,139,<br />
3,24,109,151,3,141,139,3,<br />
173,141,3,1503<br />
2390 DATA 24,109,150,3,141,<br />
141<br />
1155,3,141,157,1685<br />
2400 3,7 DATA 3,173,139,3,24,109,<br />
6,8 146,3<br />
24,109,1333 5,2 1<br />
2410 04, 141 DATA 145,3,141,141,3,<br />
206,154,3,48,3,76,249,203,<br />
56, 1<br />
237 139,3 104,170,104,1753<br />
2420<br />
, DATA 168,104,96,32,12,<br />
203,141,139,3,32,12,203,<br />
173,1<br />
41,3, 141,141,3,32,1462<br />
2430 DATA 12,203,141,140,3,<br />
120 SYS SA+3,X,0,X,11,3,C2<br />
125 SYS SA.#3,X,39,X,49,3,C2<br />
:NEXT<br />
130 FOR X.40 TO 47<br />
140 SYS SA4.3,X,0,X,49,0,0<br />
150 SYS SA1.3,X,10,X,39,1,C1<br />
160 SYS SA+3,X,0,X,9,3,02<br />
165 SYS SA+3,X,41,X,49,3,02<br />
170 NEXT<br />
175 FOR D.1 TO 1000:NEXT<br />
:POKE 53281,0:PRINT'<br />
[BLACK,CLEAR)<br />
180 PRINT'ECLEARY<br />
.<br />
190 FOR A.0 TO 216TEP.1<br />
200 XL.40+COS(A)S39<br />
:YL.25+SIN(A):24<br />
210 SYS SA+3,39,24,XL,YL,I,C<br />
:C.C+1<br />
220 NEXT<br />
230 FOR D.1 TO 1000:NEXT<br />
240 FOR 1.1 TO 30<br />
IXO.RND(1)820:YO.RND(1)810<br />
:1118RND(1)140:HIERND(1)125<br />
250 SYS SA+640,Y0,11I,H1,16,0<br />
:NEXT<br />
260 FOR Y.0 TO 39<br />
270 SYS SA+6,0,Y,39,1,16,0<br />
:NEXT:GOTO 240<br />
32,12,203,141,142,3,32,12,<br />
203,141,158,1578<br />
2440 DATA 3,201,2,240,13,201,<br />
3,240,9,169,1,56,237,158,<br />
3,141,1677<br />
2450 DATA 158,3,32,12,203,<br />
141,137,3,173,139,3,205,<br />
140,3,144,11,1507<br />
2460 DATA 72,173,140,3,141,<br />
139,3,104,141,140,3,173,<br />
141,3,205,142,1723<br />
2470 DATA 3,144,11,72,173,<br />
142,3,141,141,3,104,141,<br />
142,3,76,24,1323<br />
2480 DATA 203,32,12,203,141,<br />
139,3<br />
132,12,203,1512<br />
2490 32,12 DATA 141,148,3,32,12,<br />
203 ,<br />
1203,1<br />
141<br />
2500 141 41,14 1DATA<br />
12,203,141,138,3<br />
1 , 240,6,32,12,203,141,158,3,<br />
1,3, 137<br />
147 , 24,24,173,1513<br />
2510 , 3,3 DATA 139,3,109,148,3,<br />
3,3 201,41,144,1,96,24,173,<br />
2,1<br />
2,1 390 141,3,109,147,1482<br />
2520 2,2 DATA 3,201,26,144,1,96,<br />
03,<br />
53<br />
v<br />
-<br />
VAMP'<br />
A<br />
z<br />
I<br />
rillWAWAr<br />
Graphics<br />
173,148,3,240,238,173,147,<br />
3,240,233,2069<br />
2530 DATA 173,147,3,109,141,<br />
3,141,147,3,32,85,205,160,<br />
0,173,138,1660<br />
2540 DATA 3,208,18,177,251,<br />
73,128,145,251,173,137,3,<br />
201,16,240,19,2043<br />
2550 DATA 145,253,76,67,205,<br />
173,158,3,145,251,173,137,<br />
3,201,16,240,2246<br />
2560 DATA 2,145,253,200,204,<br />
148,3,2011,213,238,141,3,<br />
173,141,3,205,2280<br />
2570 DATA 147,3,208,197,96,<br />
169,0,133,251,133,252,172,<br />
141,3,240,16,2161<br />
2580 DATA 24,165,251,105,40,<br />
133,251,165,252,105,0,133,<br />
252,136,208,240,2460<br />
2590 DATA 24,165,251,109,139,<br />
3,133,251,165,252,105,0,<br />
72,109,136,2,1916<br />
2600 DATA 133,252,104,24,105,<br />
216,133,254,165,251,133,<br />
253,96,255,21,255,2650<br />
•<br />
Compumert<br />
_ - -<br />
c,00Ds M<br />
5 SAmed<br />
tg<br />
" 0<br />
s<br />
T"WD.<br />
- —<br />
1 MOW, SACK<br />
C Gos<br />
4 ,<br />
s A<br />
0. ,<br />
. K"<br />
m<br />
t<br />
invemmulliman<br />
wesom<br />
--<br />
1 111111101111<br />
1<br />
111W<br />
_ owatity<br />
3—<br />
1 iVii<br />
sog:=117,,,I 0dwoj!)Tai<br />
c69. s<br />
_<br />
i<br />
i - 5<br />
--<br />
I . KM!. Pit% Maki<br />
:<br />
1<br />
4<br />
a -1<br />
6 1 P<br />
"<br />
Loulobwowgh 7 r• - - vgiC4<br />
3<br />
:<br />
t<br />
t<br />
4<br />
1 ...!A Ill3elx Soot .<br />
0.<br />
::7171•7, , " ' :' i LL - j<br />
Please svm1 Co,m1.1.1, chwq. kw Y64<br />
,<br />
PC.1.1.41 Lacs. L111 OW<br />
1<br />
1 ,<br />
c<br />
4<br />
-<br />
;<br />
'<br />
; #<br />
, N )<br />
I t t<br />
( e
1<br />
Alien Webb takes youl<br />
l<br />
o[your<br />
quest to master<br />
n<br />
[machine code.<br />
e<br />
s<br />
t<br />
e<br />
p<br />
f<br />
u<br />
rproblem.<br />
t<br />
h<br />
solution: e<br />
r 10 ASSEMBLE 100, I<br />
100 REM *-<br />
i-110<br />
REM LDA i19<br />
n120<br />
REM JSR SFED2<br />
LAST MONTH WL STARTED TO<br />
look at the various ways of movinv<br />
data about. Whilst we<br />
concentrated on the screen,<br />
the principles apply equally to<br />
movement of data anywhere. I<br />
hope you found the homework<br />
easy. With the material we<br />
covered last time, you should<br />
be able to come up with two or<br />
three solutions to each<br />
First. I wanted a routine to<br />
put a row of stars along the top<br />
of the screen. Here is one<br />
$C000<br />
130 REM WY £0<br />
140 REM WA [42<br />
150 REM .LOOP: JSR SEEM<br />
160 RLM INY<br />
170 REM CPY E40<br />
180 REM BNE LOOP<br />
190 REM RTS<br />
200 REM<br />
This uses the print character<br />
routine in ROM to print<br />
asterisks to the screen at the<br />
current cursor position. Lines<br />
110 and 120 print HOME<br />
(CHRS(19)). I used this method<br />
since there is no need to worry<br />
about updating the colour<br />
matrix. Those of you with old<br />
ROM 64s will no doubt be<br />
aware that when you set the<br />
cursor colour, the colour<br />
matrix is not updated. That<br />
means that if you move data<br />
direct to the screen memory,<br />
you will not necessarily get the<br />
colours you want. New ROM<br />
64s have had this fixed.<br />
1he second problem asked<br />
you to print the character set<br />
on the screen. Here is my<br />
solution:<br />
10 ASSEMBLE 100,1<br />
100 REM •=SC000<br />
WELCOME TO THE<br />
110 REM LDY EO<br />
120 REM .LOOP: TYA<br />
130 REM STA E0400, Y<br />
140 REM IDA fl<br />
150 REM STA $D800, Y<br />
160 REM INY<br />
170 REM BNE LOOP<br />
180 REM !US<br />
190 REM 1<br />
In this routine, I have used<br />
simple indexing to put<br />
characters at the start of the<br />
screen memory. Since I don't<br />
want to change the address<br />
indexed, indirect indexing is<br />
unnecessary. There are 256<br />
characters with POKE values<br />
ranging from /ero to 255. I use<br />
this fact in line 120 by using the<br />
Y register to update the<br />
character to be POKEd. Lines<br />
140 and 150 take care of the<br />
colour matrix for old ROM<br />
routines. The Basic equivalent<br />
to this routine is:<br />
10 FOR I = 0 to 255<br />
20 POKE 1024+1, I<br />
30 POKE 55296,1<br />
40 NEXT I<br />
Line 170 acts in a slightly<br />
different way to the looping<br />
we've used previously, but I'll<br />
cover that shortly.<br />
There is one more<br />
addressing mode which you<br />
should be aware of. This is an<br />
infrequently used mode called<br />
Pre-Indexed Indirect Addressing.<br />
This mode uses the X<br />
register to look for an address<br />
in a table and act on the<br />
address. The mnemonic for this<br />
mode has the form:<br />
(address,X)<br />
where address is a zero page<br />
location. Here are some<br />
examples:<br />
LDA (SFB,X)<br />
STA (SSAA,X)<br />
IN operation takes a little<br />
understanding, but here is<br />
what it does. Imagine that you<br />
have a table of 16 bit addresses<br />
stored as a table in zero page<br />
starting at SAA.<br />
$AA low byte address 1<br />
SAB high byte address 1<br />
SAC low byte address 2<br />
SAD high byte address 2<br />
SAE low byte address 3<br />
SAT high byte address 3<br />
and so on...<br />
Amon&<br />
It X contains the value zero,<br />
the instruction IDA (SAA•X)<br />
does the following:<br />
1) Adds the contents of X (i.e.<br />
zero) to the address IAA to give<br />
SAA.<br />
2) the accumulator is loaded by<br />
the contents of the address<br />
held in the resulting byte pair<br />
IAA and SAB.<br />
Similarly, if X contains two,<br />
then the accumulator will be<br />
loaded with the contents of the<br />
address pointed at by SAE,SAE.<br />
This is not an addressing<br />
mode that you will use often,<br />
but it's worth knowing about,<br />
in case you have a need for it<br />
one day.<br />
Last month, I introduced<br />
the use of conditional<br />
branchng. At that time, it was<br />
simply to allow us to make<br />
progress and I made no<br />
attempt to discuss it at length. It<br />
is now necessary to look at it in<br />
some depth.<br />
In the microprocessor is a<br />
register called the Status<br />
Register. This eight bit register<br />
is used to hold seven flags, each<br />
using one bit. The flags held are<br />
as follows:<br />
i) The Carry Flag (C)<br />
This fl ag is used to carry<br />
information on which<br />
arithmetic operations are<br />
performed. If, for example., two<br />
numbers are added to give a<br />
result greater than 256, the<br />
carry flag is set so that you can<br />
take appropriate action. We'll<br />
discuss this when I deal with 16<br />
bit arithmetic.<br />
ii) The Overflow Flag (V)<br />
Only the first seven bits are<br />
used for holding data, the<br />
eighth being a sign bit. Hence<br />
only numbers in the range +127<br />
to -127 are used. If an<br />
operation attempts to store<br />
greater than +127, then the<br />
overflow flag is set. Again,we'll<br />
discuss at a later date.<br />
iii) The Negative Flag (N)<br />
This is set if an operation results<br />
in a negative answer.<br />
iv) The Decimal Flag (0)<br />
This is set if you wish to work in<br />
decimal (BCD) mode.<br />
vi) The Interrupt Flag (I)<br />
Set if an interrupt is in progress.<br />
vii) The Zero Flag (l)<br />
Set if an arithmetic operation<br />
gives a zero result.<br />
The branch instructions test<br />
the status of a flag and act<br />
accordingly. The instructions<br />
provided are:<br />
BCS — branch if carry flag is set<br />
BCC — branch if carry flag is<br />
clear<br />
BEC? — branch if zero flag is set<br />
BNE — branch if zero flag is<br />
clear<br />
BMI — branch if negative flag is<br />
set<br />
BPL branch if negative flag is<br />
clear<br />
BVC branch if overflow flag<br />
is clear<br />
BVS branch if overflow flag is<br />
set<br />
You will generally use these<br />
instructions directly after an<br />
arithmetic operation. [he most<br />
usual are:<br />
CMP — this compares the<br />
accumulator to data or the<br />
contents of a location.<br />
CPY — compares the Y register<br />
to data.<br />
CPX — X analogue to CPY,
These three instructions<br />
perform a non-destructive<br />
comparison by subtracting the<br />
data from the register and<br />
updating the status fl ag<br />
accordingly depending on<br />
whether the result is zero,<br />
positive or negative.<br />
Register = Data — set carry<br />
flag<br />
Register = Data — set zero<br />
flag<br />
Negative register is changed by<br />
the sign bit.<br />
So to detect various results, you<br />
use:<br />
Register = data — use BCS,<br />
e.g.<br />
CMP £4<br />
BCS LOOP<br />
branches of LOOP if<br />
accumulator holds four or<br />
more.<br />
Register data — use BCC,<br />
e.g.<br />
CPY flO<br />
BCC LOOP<br />
branches to LOOP if Y register<br />
holds less than 10.<br />
Register data — use BEQ. e.g.<br />
CPX £6<br />
BEQ LOOP<br />
branches if X register holds six.<br />
Register data — use BNE.<br />
e.g.<br />
CMP f 3<br />
BNE LOOP<br />
branches if accumulator does<br />
not hold three.<br />
If you now look back at last<br />
month's examples you will see<br />
how these tests are used.<br />
Arithmetic instructions such as<br />
INY,INX,INC,DEY,DEX,DEC<br />
change the negative and zero<br />
flags depending on the result.<br />
(INC and DEC increment and<br />
decrement a memory location<br />
by one.)<br />
My answer to question two<br />
from last month's homework<br />
uses this effect, Line 160<br />
increments the counter. When<br />
it reaches 255, adding one<br />
more will result in zero, Since<br />
this signifies that we have<br />
finished, I use BEQ in line 170 to<br />
detect this situation.<br />
Now we've collected<br />
together the basic tools, let's<br />
start writing some decent<br />
routines. In the last part, we<br />
discussed the use of NOP<br />
instructions to create delays. To<br />
achieve more substantial<br />
pauses we need to use more<br />
complex routines. Here is a<br />
simple delay routine:<br />
100 ASSEMBLE 110.1<br />
110 REM *=$C000<br />
120 REM LDX f$10<br />
130 REM .1.00P1: LDY 1$10<br />
140 REM 100P2: DEY<br />
150 REM BNE 1.00P2<br />
160 REM DEX<br />
170 REM BNE LOOP1<br />
180 REM RTS<br />
This routine uses a pair of<br />
nested loops to wait a short<br />
lime. The values loaded into<br />
the X and Y registers in lines 120<br />
and 130 decide the delay. Lines<br />
140 and 150 count down the Y<br />
register to zero. This process is<br />
then repeated the number of<br />
times in the X register. The<br />
Basic equivalent of this routine<br />
would be a pair of nested loops<br />
such as:<br />
FOR X=0 TO 10: 1 OR Y=0 TO<br />
10: NEXT Y„X<br />
An alternative method is to<br />
call the routine at SEEB3. This<br />
routine generates a one<br />
millisecond delay.<br />
Let's use this delay routine<br />
to generate a synapse tweaking<br />
pattern. Consider the routine:<br />
100 ASSEMBLE 110,1<br />
110 REM *=$C000<br />
120 REM LDA 16<br />
130 REM STA 998<br />
140 REM IDA E4<br />
150 REM STA 999<br />
160 REM .LOOP: INC $D020<br />
170 REM INC 1000<br />
180 REM JSR DELAY<br />
190 REM JSR $FIE1<br />
200 REM BEQ FINISH<br />
210 REM IMP LOOP<br />
220 REM .FINISH: RTS<br />
230 REM .DELAY: LDX 998<br />
240 REM 100P2: LDY 999<br />
250 REM 100P1: DEY<br />
260 REM BNE LOOP1<br />
270 REM DEX<br />
280 REM BNE LOOP2<br />
290 REM RTS<br />
300 REM I<br />
You'll immediately recognise<br />
lines 250 onwards as being<br />
our delay routine. The delay<br />
55<br />
parameters are held in<br />
locations 998 and 999 rather<br />
than being loaded as direct<br />
values. The line 120 to 150 set<br />
up the delay parameters. The<br />
core of the routine is lines 160<br />
to 210. It is an infinite loop<br />
which changes the colour of<br />
the border, delays a bit and<br />
then loops back. The<br />
subroutine call in line 19 tests<br />
the RUN/STOP key. If this key<br />
is pressed, then the Z flag is set.<br />
Line 200 checks this and stops if<br />
the flag is set. Try messing<br />
about with the delay values and<br />
see the effect. If you use a bit of<br />
care and possibly the odd NOP<br />
to fine tune it, you may be able<br />
to get some starionary<br />
coloured bands in the border.<br />
The next, and last example,<br />
is a little more useful:<br />
100 ASSEMBLE 110.1<br />
110 REM *=$C000<br />
120 REM LDA OA°<br />
130 REM STA 998<br />
140 REM LDA<br />
150 REM STA 999<br />
160 REM 1 DY [0<br />
170 REM 100P3: LDA £42<br />
180 REM STA $0400,Y<br />
190 REM IDA El<br />
1<br />
0210<br />
REM TYA •<br />
0 220 REM ISR DELAY<br />
R230<br />
REM TM<br />
E<br />
240 REM LDA £32<br />
250 REM STA $0400.Y<br />
M<br />
260 REM TVA<br />
S<br />
270 REM JSR DELAY<br />
T280<br />
REM TAY<br />
A 290 REM LDA TABLE,Y<br />
$ 300 REM BEQ FINISH<br />
D310<br />
REM STA $0400,Y<br />
8320<br />
REM TYA<br />
0330<br />
REM ISR DELAY<br />
0340<br />
REM JAY<br />
, 350 REM INY<br />
C64<br />
simulates a device rather like<br />
the "vidiprinter" used on the<br />
Saturday afternoon football<br />
results service on TV. A<br />
message is slowly printed<br />
across the screen with a<br />
flashing asterisk cursor. The<br />
routine is quite simple.<br />
Line 160 zeros the Y register<br />
which will act as our counter.<br />
Lines 170 and 180 print an<br />
asterisk in the top left hand<br />
corner of the screen. Lines 190<br />
and 200 update the colour<br />
matrix for you folks with old<br />
ROM machines. The next three<br />
lines force a delay. The TYA and<br />
TAY either side of the call to the<br />
delay loop save the contents of<br />
the Y register since it is used in<br />
the delay. Lines 240 and 250<br />
erase the asterisk with a space<br />
and we wait a while longer.<br />
Finally, lines 290 and 310 take a<br />
letter from the table and put it<br />
on the screen. Line 300 checks<br />
for a zero value in the table.<br />
This is used to mark the end of<br />
the table so that the routine<br />
stops at the end of the message.<br />
Line 350 increments the<br />
counter and provided that we<br />
dont go over a value of 255,<br />
line 3611 sends us back for the<br />
next character,<br />
I realise that I'm spending a<br />
lot of time explaining how the<br />
routines work. As we progress.<br />
I will make briefer comments<br />
since you should soon be able<br />
to suss things out for<br />
yourselves.<br />
OK, homework time, First, I<br />
want a routine which will fill<br />
the entire screen with a<br />
specified character. I don't<br />
expect the best solution but<br />
I've told you enough for a<br />
crude but effective routine.<br />
Secondly, I want a routine<br />
which will more a block of data<br />
from the top line of the screen<br />
to, say, the 20th line. A single<br />
line of data will suffice but you<br />
can easily move u to 256 bytes.<br />
This sort of routine is<br />
frequently used in a range of<br />
situations.<br />
360 REM BNE LOOP3<br />
Y<br />
370 REM .FINISH: RTS<br />
380 REM .TABLE: E13:25,15,21,<br />
18,32,3,15,13,13,15,4,15,18,5,0<br />
390 REM DELAY: LDX 998<br />
400 REM 100P2: LDY 999<br />
410 REM ,LOOM: DEY<br />
420 REM BNE LOOP1<br />
430 REM DEX<br />
Finally, how about • a routine<br />
440 REM BNE LOOP?.<br />
which will scroll the top line of<br />
450 REM RTS<br />
the screen one step to the right<br />
460 REM I<br />
with the leftmost character<br />
replaced with a space?<br />
Again the delay routine Next month we'll explore<br />
uses two locations to hold the eight and 16 unsigned<br />
parameters. This routine arithmetic,
•<br />
available educational<br />
software.<br />
The supply of new educational software<br />
seems to have dried up, so I decided to<br />
look around the local shops to see what<br />
was on offer. The answer seems to be, very<br />
little. The reasons for this could be<br />
threefold:<br />
1. My hometown is poor for shops selling<br />
software.<br />
2. The storeowners are very cautious<br />
about stocking educational software.<br />
3. There may genuinely be little software.<br />
I suspect that notwithstanding the<br />
claims of the value of computers for<br />
education, the reality is that education is<br />
poor business. Much more money can be<br />
made by selling games. The majority of<br />
games only require good programming<br />
whilst educational material requires<br />
detailed teaching knowledge as well as<br />
programming ability. These rather<br />
disappointing facts of life were only too<br />
evident at the last PCW show where a<br />
number of exhibitors stated that they<br />
were no longer interested in educational<br />
software since it had no future. This is all<br />
rather sad since quite a lot of the<br />
important pre-school spade work can be<br />
carried Out with computer assistance with<br />
the software acting as a type of expert<br />
system (parents aren't always teachers).<br />
For the older children, software can be<br />
used to provide revision material and to<br />
support conventional didactic methods.<br />
Whilst rummaging through the shops,<br />
however, I did see an interesting item.<br />
Not a new product, this is a triple pack of<br />
Hill MacGibbon software for a touch less<br />
than the original price of one. Hill<br />
MacGibbon is an interesting company in<br />
that it has produced software for most of<br />
the popular computers. In some of these<br />
packages there has been collaboration<br />
with well known companies such as<br />
Collins and Pan.<br />
In light of this, this is a good time to<br />
take a look at which packages are<br />
available for the C64. The triple pack<br />
contains Ballooning, Car Journey and<br />
Secret Agent. Between them they provide<br />
quite a comprehensive package, each<br />
coming with a colour booklet dealing<br />
with diverse aspects of the topic and ideas<br />
for further work.<br />
Ballooning<br />
The title is self explanatory. The booklet<br />
deals with the historical aspects of<br />
mono<br />
ballooning and then goes on to look at the<br />
Hindenburg disaster and how a hot air<br />
balloon works, The ability to read and use<br />
a map is very important when flying a<br />
balloon and this topic is also covered. The<br />
software provides a balloon simulator<br />
with controls showing your<br />
s(it's<br />
a hot air balloon), rate of climb and<br />
altitude,<br />
atmospheric temperature.<br />
f u e l<br />
Using the<br />
information given on the instruments,<br />
you must guide the balloon over varying<br />
terrain. In this way, ballooning covers<br />
aspects such as physics, map-reading,<br />
mathematics and geography.<br />
Car Journey<br />
This would appear to be a misnomer since<br />
the software involves the operation of a<br />
light haulage business. In it you must run<br />
the firm and keep it financially viable. This<br />
is done by judiciously securing contracts<br />
to move goods from point to point and<br />
selecting the optimum routes. You get<br />
bonuses or penalties depending on<br />
whether to keep to the time limits.<br />
Naturally, you must attempt to choose<br />
• contracts which end up at the starting<br />
points of other contracts. It doesn't pay to<br />
run an empty truck 1 Different size<br />
vehicles are available to suit different size<br />
consignments.<br />
The accompanying booklet deals with<br />
aspects of the car, how it works and its<br />
history. It also covers the history of roads<br />
and transport and the motorway system. A<br />
nice touch is an extract from Toad of Toad<br />
Hall describing Toad's discovery of the<br />
joys of motoring. The pack covers<br />
reading, mathematics, geography and<br />
mechanics.<br />
Special Agent<br />
This package puts you in the shoes of a<br />
budding James Bond searching Europe<br />
for the dastardly enemy agent who's gaily<br />
killing off your operatives. The game<br />
centres around a map of Europe showing<br />
the major cities. From time to time<br />
intelligence reports flash up at the foot of<br />
the screen. Some of these are in code<br />
presenting additional problems. You<br />
must act on the received information and<br />
travel from city to city. You must choose<br />
your trains and planes from timetables.<br />
As usual, the booklet covers subjects<br />
connected with the central theme. You<br />
are introduced to the elements of<br />
56<br />
as<br />
cryptography, the capital cities of Europe<br />
and a little information on real life spies is<br />
given. It covers geography, reading,<br />
lateral thought and some mathematics.<br />
Hill MacGibbon also offers a number<br />
of packages covering more specific<br />
subjects. Teaching the mechanics of<br />
reading isn't that much of a problem<br />
since children generally soon grasp the<br />
form of words. What is more difficult to<br />
grasp and contributes most to the<br />
subtleties of English is punctuation.<br />
Punctuation Pete is a program intended to<br />
help in this area. The child is presented<br />
with a graded piece of text which has had<br />
all punctuation and capital letters<br />
removed. The child must read the text and<br />
attempt to punctuate it so that the<br />
meaning is clear. When he feels that all is<br />
finished, the program marks the result<br />
showing any mistakes. Surprisingly,<br />
finding the correct punctuation is quite<br />
tricky.<br />
Technically, the program is slick with<br />
large legible text and the use of an<br />
animated man as the cursor. I highly<br />
recommend it.<br />
The last two programs are for the<br />
younger child. First, there is Picture<br />
Builder. As the name suggests, this<br />
program allows the manipulation of basic<br />
shapes such as squares, circles and<br />
triangles for the creation of pictures. The<br />
shapes can be stretched, shrunk, rotated<br />
and painted to give the required effect.<br />
Multicolour mode is used to allow up to<br />
four colours. For those of you with<br />
printers, there is a hard copy facility —<br />
nicely done and easy to use.<br />
Finally, we have Run Rabbit Run. This<br />
is a simple game played on a matrix of<br />
squares, rather like a board game. You<br />
must guide a number of rabbits to their<br />
homes and away from the hungry fox. The<br />
game tells you how many squares your<br />
rabbits may jump on each move. These<br />
jumps must be distributed between the<br />
rabbits. There are bushes in which the<br />
rabbits can hide, if the fox isn't there first.<br />
The game ends when all rabbits are home<br />
or have been eaten.<br />
This game is quite tough and forces the<br />
child to use a little logic, lateral thought<br />
and some counting skills.<br />
The impressive features about Hill<br />
MacGibbon software are that a high<br />
standard of programming is used and<br />
there is a decent level of content. Unlike<br />
some educational material, there is<br />
evidence of real teaching input.<br />
Touchline<br />
Collins Soft/Hill MacGibbon: 7 Grafton<br />
St, London WU 31A Tel: 01 493 7070.<br />
malt
A 0<br />
1 1<br />
e a<br />
l l<br />
a<br />
n %<br />
vesha<br />
THE<br />
NEW MK. II VERSION<br />
THE NEW GENERATION OF<br />
BACKUP METHODS<br />
IS NOW EVEN BETTER<br />
MORE FINAL r HAN THE "FINAL CARTRIDGE • •<br />
THE LAST WORD IN BACKUP TECHNOLOGY<br />
"Freese Frame' 1.10yeC: lentet4113111 ti.ireglit tor the pan Sew months. Salm both in the<br />
moat<br />
U.K. and ,thr Dad have been very good and the...froth of tatisfl ed nallothers are ttit••Conti developreord has enabled us to labor e Improved varliOn CO the prwurt thee nual<br />
tnc Ot ,ets<br />
-- out thorough testing could not fi nd one single, memory restated, pregnant that<br />
-.1'<br />
Fa",<br />
OPERATING ..<br />
r.<br />
1<br />
FREEZE<br />
en<br />
'Freeze<br />
r<br />
Prattle<br />
F R A M<br />
Met<br />
e,<br />
- When . Me tomptder 5 swrtrhed E " on a message is disprerd peesvog • VETURN•• tail clear the<br />
s.<br />
tehols<br />
othrezie, r o hack to the nCerldi Start to streen Softwiee Cat<br />
COMphstely<br />
e ,<br />
o, DCVO l y as normal. b e The lla teit o werittinCt a d e "Freeze d Ftarte t,nIl lb the Mil of Our ft remtledge. allow<br />
ANY Fe<br />
if e software<br />
t<br />
. rs eo<br />
Co m Inati and km t normaly a White p COmprouve e productst<br />
rn<br />
lo e<br />
f<br />
r r<br />
can a'Freele<br />
,<br />
td<br />
n Frame A<br />
i<br />
e ' can or<br />
s<br />
three be tin...pelt things then roetattro co rivrn ie n t point byptelsny the Pottco on IL You<br />
c<br />
m,<br />
o<br />
s<br />
1. eP<br />
u<br />
Pressing<br />
s<br />
-<br />
"<br />
disc, This version will include a high speed reload.<br />
El" L<br />
e<br />
w<br />
.<br />
i l l<br />
c<br />
1.<br />
sU IPressing<br />
a v e<br />
• S will do the tame as •0 except that the reload will be at ttandard 1541<br />
a oS<br />
t<br />
u<br />
load speed. lAtto suitable for US. spec- machines. 4040 drives, ten load cartridges,<br />
w• c<br />
o<br />
a<br />
r<br />
kl• n<br />
i<br />
n g<br />
3, vd ! Pressing<br />
a<br />
e<br />
a<br />
r *la will sat a working pe el<br />
Incorporates a high speed reload at approx. 2400 baud.<br />
, snu e<br />
i o<br />
' n oA<br />
ion o f t h e<br />
b<br />
THAT IS IT 1<br />
pot V r o g r a m<br />
a<br />
If hI<br />
n<br />
s<br />
mtaA e m o<br />
ALL PROGRAMS<br />
r y<br />
SAVED WITH 'FREEZE FRAME CAN<br />
e<br />
thnAo BE RELOADED INDEPENDANTLT OF THE UTILITY<br />
d<br />
te df<br />
a p e ,<br />
t<br />
Tpl o<br />
r h i n<br />
oer ,<br />
g IN tscs*Ditso 7<br />
r. e<br />
i<br />
a<br />
THE COMPETMON<br />
Ore. any Other UtOilly oiler all (hi,?<br />
m . p<br />
t TAPE TO DISC M S C TO TAPE<br />
i.<br />
o<br />
fl aa<br />
i MSC vo DISC O e s c To TAPE<br />
.<br />
- te m, FIn .s celLer, 0 enfpla<br />
n w<br />
mPUIS<br />
Ire trued nesoset CO berg env to ra..<br />
resi a , PA prytta., rk.t .F g e t 0 t coo lea n.al.nrrt<br />
•<br />
1 me<br />
p.Wry<br />
THE , Mari<br />
ta<br />
k<br />
- esr<br />
lIttl<br />
,..<br />
l Y<br />
c<br />
Peened<br />
"Thy<br />
e mt-f<br />
e<br />
f O alma Cartylagy omer,..,00.at t<br />
Y a e n<br />
y Ct<br />
a i n t E<br />
a oc<br />
uw4<br />
r aAnew,<br />
enweg orreo c.rte<br />
u l<br />
,<br />
t c -<br />
p .<br />
t<br />
a, l-erxr f na<br />
u n , rn...t dp<br />
U cusfonoe<br />
rll<br />
P cycrx a...0, p.rvinPOrfil kr erek,<br />
ne.r<br />
u1<br />
V<br />
S<br />
,<br />
, n t r<br />
r<br />
..oft. etc errl Me, we yen me ante<br />
OTAT 0.<br />
S<br />
y iAr<br />
T<br />
S<br />
mtatl. rellanded wiw ttot tarylagr at Ma<br />
te<br />
.<br />
g.<br />
$<br />
tzeT<br />
E1?...,<br />
nle,EA<br />
'Tee! 1<br />
i<br />
r<br />
t<br />
N gt<br />
,,, T , ',wane •eszet<br />
AM . / 7 1 . . 1 4 W morp,t4fl , n<br />
o e<br />
, w<br />
- t<br />
eo<br />
,,, A,At . 3 ANSWER, NO<br />
a<br />
l<br />
1 a t<br />
et 0<br />
h,<br />
y<br />
a<br />
d ,, I 0 FriaTTF MAME<br />
fef<br />
a1 q<br />
t<br />
e<br />
io<br />
l.. ,<br />
• UPC• t<br />
1 A r<br />
nrks NO St IVI,DUI CClittllEtrT,ON<br />
ro D.<br />
ar, r•ritoart,rt , I , ,<br />
es<br />
t . .<br />
t a<br />
nI<br />
,<br />
e •<br />
r<br />
rAe<br />
t t A r r y i<br />
i • n<br />
t<br />
tI<br />
t<br />
". "".....a a a e t y „seater<br />
nL<br />
a g e<br />
a.<br />
a<br />
r<br />
e<br />
o l s<br />
•<br />
n<br />
race."'<br />
iL<br />
m<br />
Mw<br />
m<br />
ONLY E39.95 r m<br />
n<br />
at<br />
a.<br />
t<br />
Int ;eV/a, O g i s . to mcd Met check<br />
ca<br />
e t<br />
Owners ldx o<br />
c<br />
t<br />
. h Of 'earlier versions con t•turn them<br />
r.<br />
e<br />
and upgrade t for E 1 4.95<br />
ei<br />
f.<br />
lesti cOnett aignaefl ..rnt route,-<br />
.<br />
t<br />
a,<br />
e 5ER701.15A<br />
r<br />
Osieett every &tilted me rckrond<br />
dn<br />
e<br />
l<br />
ph<br />
r , SeRiCITT FOR CC ICSOALAI. USE DONT COMPARF a IT WITH AM<br />
,c10., steps se nap ..re se n t ..4<br />
t r<br />
t<br />
i<br />
cacoe<br />
a<br />
t.<br />
s ARNINC,<br />
PROOtXT , O T HNO E Rn<br />
t<br />
ONLY Ot.95<br />
s<br />
P<br />
-<br />
t<br />
•<br />
rJo<br />
7 -<br />
co<br />
.<br />
iw<br />
Hrier, I S<br />
I ra<br />
s<br />
r l<br />
rn<br />
j L 1<br />
T<br />
do<br />
w I E L% S E<br />
i<br />
n<br />
O<br />
gs<br />
h AO F N F E E STOPS<br />
w<br />
,<br />
pe<br />
e a ER XS QUIET T R DRI<br />
a<br />
r<br />
rt<br />
ET I HA<br />
E<br />
r<br />
y<br />
et<br />
LE Y<br />
• 11603<br />
e sh<br />
P O<br />
OSDO ••• • • E20 CV<br />
p,„. 020,140 I . . , r . e l O t M O I Wit 108 win WWI kir geed ire<br />
us<br />
e dreaded W Wesioftlpecen- EF<br />
Ire larret croceo A ,..erf A w l a PloOrafe praadeet<br />
NEW SPECIAL PACKS WITM<br />
p co n kthe Wore Helps per.cri loccr dalnaccl larlOcca C a r a arh.r Po, wc"<br />
N R F<br />
FIASFECCASE<br />
t M Uo L ONLY ECOS<br />
r.L DO • .• •• E 1200 f<br />
o . Pr R<br />
-L'C'DD<br />
•_• 2 1 .0 7 Lrizt4<br />
a.<br />
C• O<br />
c4 n; C d 5 ,<br />
L<br />
, 1<br />
. L• RX<br />
-<br />
l , " E E<br />
s<br />
0.12<br />
AZ<br />
E<br />
M<br />
C a s e<br />
kF<br />
All a prices z R include P&P and VAT. Send cheque, Postal<br />
r<br />
Order ) A<br />
c or Credit Card No. Credit Card orders accepted<br />
M<br />
by h phone. E Callers welcome. Wide range of goods<br />
.<br />
stocked. 1 Trade enquiries welcome. European orders<br />
send 9 price as advertised. Outside Europe E2.00 for air-<br />
1 mail. Mail order to Evesham Shop please.<br />
3<br />
6<br />
I<br />
ALL OFFERS SUBJECT TO AVAILABILITY<br />
EVESHAM MICROS<br />
BRIDGE STREET, EVESHAM,<br />
WORCESTERSHIRE<br />
Tel: 0386 41989<br />
M oa back LIP 6"I"<br />
T t , s o t t a i<br />
ket Leh'<br />
gcsailet • nr<br />
.,<br />
"<br />
,<br />
(11 -tele* ;S<br />
3<br />
eim"'<br />
liesaut , Lk<br />
,,<br />
s<br />
p<br />
u<br />
f e<br />
t<br />
t e e d<br />
mer teat ,<br />
s<br />
zStf re .<br />
s r<br />
k<br />
, ytoteseate<br />
a " „ 4 . ,<br />
ce s.<br />
o " U1<br />
,•esslis "<br />
ta<br />
r'<br />
1,<br />
, v d s<br />
, '<br />
, s<br />
„<br />
-1<br />
°<br />
,<br />
2"<br />
17,:<br />
C<br />
w<br />
1<br />
1s<br />
)<br />
m<br />
,,,,,<br />
s'<br />
t<br />
a<br />
,r<br />
e n<br />
r<br />
t<br />
o,<br />
no<br />
a<br />
e o<br />
c<br />
t<br />
r s<br />
t<br />
i<br />
e e<br />
i<br />
t<br />
c<br />
h<br />
a<br />
q<br />
a<br />
t<br />
a<br />
e<br />
r<br />
2<br />
7<br />
7<br />
,<br />
,<br />
wry svd,. s m 4 1 3 ,<br />
Cut legs lw<br />
"... r<br />
mote<br />
.<br />
7;,;,gis<br />
Re que ti o<br />
e<br />
ts m y 4 110-4/11111""<br />
1.c--<br />
, .<br />
&1<br />
2 M<br />
n<br />
e<br />
FAST LOAD<br />
anckoisc+ e<br />
,<br />
r<br />
uns rre ACAPTIAAGz<br />
"<br />
u<br />
,<br />
s<br />
o<br />
Ge r P O r D i s C 4 ar I r.sege plogstee) into your 64 and your<br />
!Sal wnl r0ait<br />
d<br />
I<br />
e<br />
y st a rt<br />
I' Fart s<br />
s<br />
t Shoortatd<br />
LOAD (faur in live I.rne, norm,W gx<br />
m.lonly .<br />
o<br />
l<br />
Or p<br />
FATI et<br />
p SAVE e n t wo ce rctosal SpErd<br />
Fast<br />
e<br />
otrae . t<br />
n Format o n takes/cast 20 Seconds.<br />
eroterred Fast<br />
, .1) / * 'lockup W screntarat o rcofws k s at mere w diSc pes four m !Amu t es ihi01 haroly<br />
ludew,v<br />
Fent mS<br />
e<br />
Otte Copier klr, Selective fasi copying<br />
Improved<br />
gc<br />
,<br />
C<br />
/<br />
a 005 coalman* IDOS5 rl mAn Tor e,s•yrne<br />
oathnut to, m<br />
t cis,. drive o syne<br />
q SIFT EILMEE \LI van LOAD and dmptay a direr tmy<br />
-o<br />
M<br />
b<br />
a•<br />
I eV Pk eery sery src useful sr<br />
a<br />
Incorporates wrion e n<br />
t<br />
Controency - Printer software ?LAD Perri<br />
Couneoon with g s y<br />
wCern m Sc! r gropreice soit,Ole redO r capabady See "Commotions<br />
A mtResrr<br />
o<br />
Wc EhswitgftOS<br />
hued<br />
e<br />
u L o . . R /We u have rouod ChIt tO Of<br />
LenSIclepeOlec .,ISO ;deserves Me rape butler<br />
NO ,<br />
w.<br />
Attmot6r . IS usro N by Mil r ad<br />
-<br />
tranSilirent<br />
21I' d<br />
ae<br />
coelpatIlde<br />
and ent<br />
s in<br />
soma<br />
OS moot.<br />
salt chng tentniques<br />
n<br />
S<br />
now<br />
maw lp<br />
I t t o t a l l y<br />
Can a you<br />
the<br />
at'<br />
peice. No not t<br />
479h o<br />
e<br />
t o<br />
, 1<br />
5<br />
r<br />
. a<br />
n a<br />
t ett o<br />
l t h<br />
d ONLY p El 9.95<br />
e m<br />
a p<br />
v e n<br />
Pas s -<br />
h<br />
err o t<br />
Second y<br />
t<br />
O fL<br />
o<br />
&mak a d<br />
,,,c kinkke<br />
M<br />
m014 l<br />
a<br />
Simla,<br />
t<br />
protium it Is trynoatitur with punters end<br />
o i r<br />
eu<br />
u<br />
m<br />
, c K<br />
u t<br />
AE o<br />
e<br />
e R<br />
ln<br />
S<br />
.<br />
f<br />
s t m<br />
vd<br />
n<br />
t<br />
v<br />
o . e<br />
c<br />
* l MICRO O CENTRE<br />
a i<br />
n k 1756 nPERSHORE<br />
ROAD.<br />
a<br />
c<br />
c<br />
s<br />
a<br />
t<br />
COTTERIDGE, o BIRMINGHAM.<br />
Tel: 021-458 4564<br />
e u<br />
s c<br />
s l<br />
a e<br />
r s<br />
y •<br />
t t<br />
r h<br />
o e
P Green brings you<br />
some hints on saying<br />
time and memory.<br />
TIME AND MEMORY CAN BE<br />
wasted when a Basic program<br />
contains a lot of numerical data<br />
statements. This article<br />
suggests ways in which you can<br />
save both, even on programs<br />
copied from magazines.<br />
The Facts and Figures<br />
If you have a lot of numerical<br />
data to be stored, there is a<br />
fairly quick and easy way to<br />
save time and memory. Save<br />
the block of memory straight<br />
on to the disk or tape and get<br />
the Basic program to load this<br />
data straight into memory<br />
instead of POKEing it in.<br />
Time is saved by this<br />
method because when you use<br />
data statements within a<br />
program, you must first load<br />
the data in Basic form and then<br />
run the program to POKE the<br />
data into memory. This takes 12<br />
seconds for the first half of the<br />
operation and six for the<br />
second half for each 1K of<br />
memory when using a disk<br />
drive. Alternatively, to transfer<br />
the data straight into memory<br />
from disk takes only five seconds<br />
for each 1K of memory. Of<br />
course, the saving is much<br />
greater- if you are using tape<br />
since tape loading is a much<br />
more lengthy process.<br />
Memory can be saved, both<br />
in the computer and on the<br />
disk or tape. In the computer,<br />
1K of directly entered data, of<br />
course, takes up just 1K of<br />
memory. On the disk or tape, it<br />
takes up just over 1K of storage<br />
space. On the disk, this is five<br />
blocks. In the case of Basic data<br />
statements, besides occupying<br />
the 1K of memory once the<br />
program has been run, the<br />
Basic data also takes up<br />
memory - just under 3K. Altogether<br />
this method actually<br />
uses just under 4K of memory.<br />
On the disk or tape, it takes up<br />
well over 3K of storage space -<br />
that is, 15 blocks on the disk.<br />
Saving the Data<br />
So, firstly, how can we save a<br />
block of memory? And<br />
secondly, how can we get our<br />
Basic program to load it again?<br />
DATA, TIME<br />
°MEMORY<br />
This can be done in two<br />
ways. You can use a machine<br />
code monitor to save an area of<br />
memory. To do this you will<br />
have to get the start address of<br />
the block of memory that you<br />
wish to save and then calculate<br />
the end address and add one.<br />
Your machine code<br />
monitor, of course, must not<br />
occupy the same area as the<br />
memory which you wish to<br />
save.<br />
The procedure should be as<br />
follows;<br />
1. Load and run the Basic<br />
program. or at least the part<br />
which POKEs the data into<br />
memory.<br />
2. New the Basic program and<br />
load the machine code<br />
monitor.<br />
3. On most machine code<br />
monitors, the instructions to<br />
save a block of memory is<br />
something like:<br />
S "file name",C000,C200,08<br />
This will save the block of<br />
memory from $C000 (the start<br />
address) to SC1U (the end<br />
address) on a disk drive with<br />
the device number of 8 or 08<br />
hex (01 for tape) with a<br />
filename "SPRITES<br />
-choose<br />
the filename although<br />
. you ( do Y not o uactually<br />
need one<br />
for files saved on tape).<br />
4. You may need to save more<br />
than one block of data, for<br />
instance, a block of character<br />
data at 12288 and a block of<br />
machine code data at 49152. All<br />
you need to do for this is to<br />
repeat instruction three for the<br />
new block of data, bearing in<br />
mind that for disks you will<br />
need a different filename.<br />
Another and possibly easier<br />
method is to alter certain<br />
pointers in the zero page of<br />
memory so that you fool the<br />
computer into thinking that the<br />
block that you wish to save is a<br />
Basic program. The locations to<br />
note are 43 to 46 inclusive.<br />
Locations 43 and 44 are the low<br />
and high bytes of the start of<br />
Basic which are normally one<br />
and eight respectively.<br />
(256<br />
Basic 4 area). Locations 45 and 46<br />
are '8+1 the low and high bytes of<br />
the start of variables which is<br />
=<br />
normally the end of the Basic<br />
2program 0 Plus one.<br />
4 9 The procedure is as follows:<br />
= 1. Calculate the start and end of<br />
sthe tblock<br />
of memory which<br />
a<br />
you<br />
r<br />
wish to save, not forgetting<br />
to add one to the end.<br />
t<br />
2. Calculate the high and low<br />
obytes<br />
from these figures in<br />
f decimal.<br />
n3.<br />
Run the Basic program. or<br />
o<br />
the section of it that POKEs the<br />
data into memory.<br />
r4.<br />
In direct mode, POKE in<br />
mthese<br />
figures into locations 43<br />
ato<br />
46.<br />
l5.<br />
Save the block of memory by<br />
typing in SAVE "filename",13.1<br />
or SAVE "filename",1,1<br />
6. Repeat this for other blocks<br />
of memory if necessary.<br />
58<br />
The Basic Loader<br />
Now that you have saved your<br />
block of memory, how do you<br />
get your program to load it<br />
again automatically? There are<br />
two ways in which you can do<br />
this. The first is to write a short<br />
machine code routine to load<br />
the blocks of memory. The<br />
second is to add one or more<br />
lines to the beginning of your<br />
Basic program. The machine<br />
code method requires an<br />
understanding of how the<br />
KERNAL load routine works<br />
and would take too long to<br />
describe here. Instead, I will<br />
concentrate on describing the<br />
Basic method.<br />
It is actually very easy to get<br />
your Basic program to do the<br />
loading for you. The most<br />
important thing to remember is<br />
that once the first block of<br />
memory has been loaded, the<br />
program will start again from<br />
the beginning and if you do not<br />
do something to prevent it, the<br />
same block will be loaded<br />
again and again.<br />
The first thing to do is save a<br />
copy of the full program, data<br />
statements and all, in case<br />
sornthing goes wrong, and<br />
keep it safe. Next, remove the<br />
data statements and the READ-<br />
POKE routine and any error<br />
traps, and save the program<br />
again.<br />
The first line of the program<br />
can be used to load the block of<br />
memory by using a line such as:<br />
10 X=X+1 IFX=1THENLOAD<br />
"filename",8,1<br />
This filename is the same as<br />
the one you used to save the<br />
block of memory. If a tape is<br />
used, then first change the<br />
eight to a one, and then, don't<br />
use a filename. The figure one<br />
after the eight or one is required<br />
so that the block of<br />
memory goes back to whence<br />
it came.<br />
If there is more than one<br />
block of memory to load,<br />
another line needs to be<br />
added, as follows:<br />
20 IF X=2THENLOAD" 2nd<br />
filename",8,1 etc.<br />
or, in the case of tape, the first<br />
line can become:<br />
10 X=X+1 IFX 3THENLOAD"<br />
",1,1<br />
Do not use a filename. This<br />
will load the first two blocks of<br />
memory found on the tape.<br />
The way in which the loader<br />
works, is as follows:<br />
1. When the program is run,<br />
X=0.<br />
2. Al line 1, X becomes 1 and<br />
the first load takes place.<br />
3. After the load, the program<br />
starts again at line 10 but the<br />
variable X is still 1. Therefore X<br />
becomes 2 and since this is not<br />
equal to 1, the program<br />
continues to the next line.<br />
4. This will go on until all the<br />
blocks of memory have been<br />
loaded and the rest of the<br />
program can continue.
FONT<br />
Evelyn Mills looks at a new<br />
product from Impex.<br />
THE FONT FACTORY (FF) IS APTI.N<br />
named and works hard for you, doing<br />
overtime at your request!<br />
Firstly the requirements are a disk<br />
drive, printer and word processor. The<br />
printer should, for preference. be the<br />
Commodore Vic 1525/MPS 801 although<br />
directions are given for using a printer<br />
interface emulating the MPS 801 or 803. It<br />
is claimed that FF will work with most<br />
word processors with open sequential<br />
files and I have used Easyscript throughout<br />
with no problems; however it would<br />
be worthwhile doing a double-check with<br />
the distributors before purchase if you<br />
have another word processor as some do<br />
not link up.<br />
Noticeably there is no manual<br />
supplied with FF; instead the program<br />
gets to work right away printing out full<br />
instructions using the directions given.<br />
The resulting 16 page manual is in two<br />
parts - one for Font Factory and one for<br />
Signwriter 64. Both are very well written<br />
and the full concepts of the programs are<br />
easily understood - no hidden complaints<br />
here!<br />
Before using FF ,create a file document<br />
with your word processor and save this to<br />
disk. There is no necessity to use the<br />
commands of your processor other than<br />
direct typing mode. However and this is<br />
most important - your MUST enter • ii fni'<br />
at the beginning followed by (return).<br />
Should you wish to use a different font in<br />
the middle of your document, insert a<br />
new ' Oln2 header, followed by (return).<br />
FF has eight in-built fonts with which to<br />
play around.<br />
Having saved your file to disk, load FF<br />
and let it take over. Initially I suggest that<br />
you use option three to print your<br />
document (there are plenty of screen<br />
instructions to help you along), Essentially<br />
FF will ask you to define your first font by<br />
selection from a list of eight; this will then<br />
be processed for you. The second font<br />
style will then be requested and FF gets<br />
back to work. When you have defined the<br />
number of fonts in your document, a<br />
simple (return) will exit you to the next<br />
option. If you select the parameters given<br />
on the screen (a good idea initially) insert<br />
your document when told to do so and FF<br />
will print your letter in the fonts selected.<br />
very simple indeed and very effective.<br />
There are eight in built fonts including<br />
Micro, Bold. Roman, Gothic and, most<br />
important of all, the Descender. The latter<br />
gives you 'true type face' of a high quality<br />
as its name implies.<br />
FF is full of options using normal or<br />
double width letters and has a very<br />
comprehensive list of embedded<br />
commands for centering, setting line<br />
width, left and right margins, optional<br />
page numbering and line spacing. All<br />
these commands are speedily screen<br />
controlled, Fonts may also be changed<br />
within your document (did I say<br />
versatile?).<br />
More to come. You may define your<br />
own fonts, if desired, or edit existing ones.<br />
The whole process is extremely easy to<br />
use and 15 fonts may then be accessed at<br />
any one time within your document,<br />
including the in built fonts. Instructions<br />
are clear, concise and readily handled.<br />
In effect you can create an entire<br />
character set or change characters from<br />
an existing set; if you do not like the A in<br />
Gothic font then change it! If you want to<br />
design the Greek alphabet - do it!<br />
FF also has a signi.vriter program which<br />
may be loaded independently. Here again<br />
instructions are readily handled, when<br />
complemented with the manual. This<br />
functions independently of a word<br />
processor. character widths are Normal.<br />
Skinny or Double width and the output<br />
has two options; one selects print<br />
according to the printing characters in<br />
your slogan while the other selects solid<br />
line printing (note - the word cat in<br />
normal width prints a banner around two<br />
feet long!) F5 will stop the printer if you<br />
have been too enthusiastic.<br />
As in FF, fonts may be changed and<br />
stored on disk. There is one Standard fon<br />
,in signwriter.<br />
I see no problems in this program.<br />
consider it excellent value for money and<br />
doubt if you will be disappointed with its<br />
performance.<br />
A really professional tool, agreeahly<br />
prices and certainly "user friendly"<br />
59<br />
Review
1111=1111Eskil<br />
11<br />
11<br />
1<br />
0<br />
11<br />
11<br />
11<br />
11<br />
11<br />
11<br />
to add to<br />
This month we are pleased to<br />
print three short utility<br />
programs. The First of these<br />
comes from Steven Freeman<br />
from Orpington and is a list<br />
utility.<br />
How often have you tried to<br />
list a program on the screen of<br />
your C64 only to have the line<br />
that you want scroll off the top<br />
of the screen before you can<br />
read it? OK so you can slow this<br />
listing down with the CTRL key<br />
but the program still scrolls.<br />
Steven's handy routine alters<br />
the speed of the LIST command<br />
by changing the list vectors so<br />
that it jumps to a short machine<br />
code routine in spare memory<br />
(locations 679 to 702). Line 30 of<br />
the Basic loader contains the<br />
POKE that alters the speed of<br />
the list, you can change this if<br />
required. The other controls<br />
are:<br />
CI To pause the listing<br />
13 To slow down the listing<br />
For all of those people who<br />
have stored machine code<br />
prOgrams on tape only to<br />
forget where they load in<br />
memory, Mr K Peppin from<br />
Little Neston has provided an<br />
extremely handy Tape Header<br />
Reader program. The routine is<br />
very handy for locating a<br />
machine code program and<br />
giving its length.<br />
This routine is reliant on a<br />
machine code call to the Kemal<br />
ROM which searches for any<br />
header to a program. The<br />
information is then stored in<br />
PROGRAM: CATALOG<br />
5 REM PROGRAM FOR THE PLUS/4<br />
10 SO<br />
115<br />
PRINTSI<br />
(CL 20 PRINT:READX:FORI=1TOX:READAS:PRINT" "AS:NEXTI<br />
R) 25 PRINT"(DOWN1WHICH PROGRAM ?":PRINMDOWN)ENTER THE PROGRAM NUMBER":INPUTA<br />
(RV 30 IFA(IORAnTHEN25<br />
S)1 35 POKE0,7<br />
RED 40 PRINTCW(DOWNHDOWN)PRESS THE FAST FORWARD BUTTON":PRINT"(DOWN)THEN PRESS ANY KEY'<br />
) 45 POKE239,0<br />
$<br />
50 IFPEEK(239)=0THEN50<br />
t<br />
55 IFPEEK(64784).255T4EN40<br />
i<br />
60 PRINT(DOWN)PLEASE WAIT FOR PROGRAM TO BE FOUND"<br />
M<br />
65 POKE0,151TIS=<br />
A<br />
170<br />
IFTI/60(8THEN70<br />
S<br />
000000:8(A-1)10<br />
75 POKE0,7<br />
80 PRINT"(CLR)":PRINISS:PRINT"(DOWN)lDONWRESS THE STOP BUTTON ON THE CASSETTE'<br />
T<br />
85 1/0L6:SOUND1,850,20:FORT=1T090:NEXTT:SOUND1,800,20<br />
E<br />
90 IF PEEK(64784)E2551HEN100<br />
R<br />
95 GOTO 90<br />
T100<br />
PRINTSS:PUNT"(DOWN)YOU ARE NOW READY TO 1<br />
A:PRINP1DOWN)LOAD/<br />
105 RESTORE:FORI=1T001:NEXTT:READAS:NEXT<br />
PSAYE<br />
110 PRINTAIpPOKE0,15<br />
E 115 POKE239,0<br />
P120<br />
DATA 10:REM NUMBER OF PROGRAMS<br />
R125<br />
DATA"PROGRAM 1<br />
O130<br />
DATA"PROGRAM 2<br />
G135<br />
DATA"PROGRAM<br />
R140<br />
DATAIROGRAM 4<br />
A145<br />
DATA<br />
M 1150<br />
DATA"PROGRAM 6<br />
CPROGR<br />
155 DATA<br />
AAM<br />
1160<br />
DATA"PROBRAM 8<br />
T5<br />
PROGR 165 DATA"PROGRAM 9<br />
AAM<br />
170 DATA"PROGIRAM 10<br />
L7<br />
O<br />
G<br />
60<br />
U<br />
E<br />
1
the cassette buffer, address<br />
828-1019, where it can be easily<br />
used<br />
The fi nal routine in this<br />
monthrs Scratchpad is a very<br />
handy cassette tape catalogue<br />
system from N V Newen from<br />
Oxford_ The object of the<br />
program is to allow easy access<br />
to either programs or<br />
subroutines stored on a master<br />
cassette.<br />
The program as it stands will<br />
store 10 sections of approx 8K<br />
in length on a C60 cassette but<br />
this could quite easily be<br />
changed to suit individual<br />
requirements. if you use the C-<br />
16/Plus/4 fast tape routine<br />
from our Feb '86 issue about 10<br />
programs of 25K can be saved.<br />
The data can be altered to suit<br />
the names of your programs.<br />
Don't forget to put the<br />
program number at the start of<br />
each line as it is this that you<br />
will have to press to access that<br />
file.<br />
IPROGRAM: LIST<br />
10 REM 'SLOW LIST'ESPMSTEVEN FREMAN 1986<br />
20 REM EF1] . PAUSE : EF3] . SLOW DOWN.<br />
30 POKE 251,248 : REM SPED OF LIST<br />
40<br />
NEXT<br />
FOR<br />
CODE<br />
CODE=0 TO 2:READ MC:CS.CS+MC:POKE 679+CODE,mC:<br />
45 IF C903262 THEN PRINNATA ERROW:END<br />
50 POKE 774,167:POKE 775,2<br />
60 DATA 72,165,197,201,4<br />
70 DATA 208,8,165,251,133,162,165,162<br />
180<br />
DATA 48,252<br />
240,250,201,1<br />
1!PROGRAM:<br />
TAPE HEADER[<br />
104,76,26 20<br />
10 PRINT'ECLEAR]":POKE<br />
SOSUB 270<br />
53280,0:POKE 53281,0<br />
,167 30 PRINTIDOWN6,RISHTEINSERT TAPE AND PRES A KEY.'<br />
COMMODORE 64<br />
EVER HAD A LOADING PROBLEM?<br />
Then send off for WI ZARDS TAPE HEAD ALIGNM ENT KIT - No one sh ou Id be without<br />
Oriel<br />
The most common cause of loading failure is bed alignment of your tape heads This kit<br />
allows you to set up the taps heads of your cassette unit for the best possible loading<br />
conditions. In many cases this will make re ma rka ble difference In loading re lla bility.<br />
Our kit comprise s of<br />
(1) A precision recorded cassette containing a sophisticated teal program_ (2) A special<br />
adlutitment acrewckiver (3 ) A direction indicator 441 A turning meter (5 ) A detailed<br />
instruction bookle t with diagrams 161 A Loading Doctor - to help you diagnose any<br />
loading problems All of this for only 059911<br />
COPY KING - PLUS<br />
• RevOluiponary new copier for FAST LOADING prOgrams * FREE this month • suite of<br />
additional beck us routines. • Striped larders, Picture loaders, e tc.. handled with ease<br />
* Ba ck up copie s are made on bla nk TAPES at fast speed (faster than disci) - VERY<br />
reliable loading, unlike some competing utilities we could mention!* Easy to use *<br />
second cassette unit required * Ore m value at Er 95.<br />
HALF PRICE SPECIAL THIS MONTH!!!<br />
Copycat and Lightning Load together for only E5 95 U sua lly E5 95 e ge t<br />
COPYCAT - Our highly popular tape to tape back-up copier for Commodorastandard<br />
rate toackno systems * Wizard sound effects Cassette magic se nse * Thousands sold<br />
LIGHTNING LOAD I I - Converts almost a li your slow loading games/programs into<br />
SUPERFAST TURBO loading versions on tape * The tedious wait for lO5 ng rs over<br />
when you buy this excellent program<br />
COMMODORE PLUS-4/C18<br />
THE MIRROR - Superb la pe (° lape back up copier catering lot Me majority 01 Plus-4/<br />
C16 gamin. Ba cks up both standard and FAST loading software. Excellent value - E7 Ei5<br />
TAPE HEAD ALIGNM ENT KIT D e scription the same as Commodore 64 VOrls00 i see<br />
above). H ighly popular utility - EE 95<br />
MERLIN ASSEM BLER - 100% machine code aleentbler for Me Plus-4/C16 Ve ry fast<br />
Hearn* of source code Ea sy entry/editing of code via thefull screen editor. Full error<br />
message pinpointing the errors. Full load/save and printer fa cilitie s. Va ria ble names,<br />
labels, hex/decimal - M a ny other fa cilitie s too numerous to mention H ighly recommended<br />
- A truly superb la te M ble r Come s with instruction booklet and FREE booklet<br />
Of machine COde routines Cassette Eiti 95 D isc E13.95<br />
RAPID dispatch of orders<br />
U.K postage is included in the price Europeans prime ADD 50p Outside Europe ADD<br />
E1.00. Overseas orders welcome, AI payments must be in pounds sterling Che que s<br />
POI to.<br />
,<br />
WIZARD SOFTWARE (Dept. K)<br />
59 THE MARLES, EXMOUTH,<br />
DEVON EX8 4NE<br />
40 SET Alt IF AS."THEN 40<br />
50 PRINT<br />
60 SYS 63276<br />
. 70 PRINT"(CLEARr<br />
80 SOSUB 270<br />
ICLEAR 90 POKE 646,141PRINPEDOWN2,RISHT1PROGRAM NAME:";<br />
10 POKE 646,2:FOR A.833 TO 848<br />
P<br />
120<br />
10 PRINT<br />
PRINT<br />
CHRUPEEK(A)0NEXT<br />
130 1.(PEEK(830)$2561+PEEK:829)<br />
140 Y.(PEEK(832)1256)+PEEK(831)<br />
150 POKE 646,141PRINT"CDOWN2,RIGHUSTART ADDRESS:':<br />
160 POKE 646,2:PRINT X<br />
170 POKE 646,14:PRINT'IDOWN2,RISHT1END ADDRESS:";<br />
180 POKE 646,2:PRINT<br />
190 POKE 646,14:PRINP[DOWN2,RI6HTHEN6TH:";<br />
20 POKE 646,2:PRINT Y-X;:POKE 646,14:PRINTIYTES."<br />
210 PRINTIDOWN2,RISHUTYPEI'l:POKE 646,2<br />
20 IF PEEK:8281=1 THEN PRINT<br />
230 IF PEEK:828)=3 THEN PRINT "[RIGHT]MACHINE CODE"<br />
6240<br />
POKE 646,14:PRINT"[DOWN2,RISHT12]PRESS ANY KEY'<br />
250 SET AS:IF AS.'"THEN 250<br />
260 tRIEHTHASICI<br />
SOTO 10<br />
270 PRINP(RIGHT10)TAPE HEADER READER'<br />
280 PRINT'EDOWN,RIGHTIMY°<br />
290<br />
30<br />
PRINT"IDOWN,RIEHT13K.PEPPIN<br />
RETURN<br />
1985'<br />
TAPE BACKUP DEVICES FOR C8M 64, 128, VIC 20<br />
OCL1 FON C111144, C 1 2111 SHOT SO ODAT ASITTES _ ..... — ---- ...... - ...... ----, ........ -.... a 10<br />
U g ko s Ad ..e. d vd ,w Nick Apar! a hoc orei 01045844i5 NO hew) A. 5,4141 IE44 wowah<br />
, hack,* n o ab l powern o i l wa o41Mo:talc r m tubas m eair aOC L411 i l<br />
d a l<br />
, Mates a de wi dia MI intor-Lin on either a seconder...WM or on Sr. mach° Weal Oat h41)501tvoare<br />
0111C , new xi km411156 Vechlen LED MN monk* ewes omen irwater a con<br />
OSIS1/ modoct - N o<br />
1 owe A l t o b e c k e<br />
Syrilatto OCIA WI well<br />
i.. 2WMIAS 1e<br />
t t r u n i<br />
, b.11 FORCOMS4112111 TOO<br />
i g<br />
m<br />
t<br />
a c owl SUMO RECORDER E I S SO ,<br />
A 1 i,<br />
n I 11 ** NEW ** THE EXPERT CARTRIDGE,<br />
n m,<br />
TAPE TO DISK & DISK TO DISK SYSTEM<br />
l a t a l k h a a 4<br />
eto<br />
4 1<br />
teo<br />
tOtr FINEZESANO y p TRANSFERS ALMOST ALL PROGRAMS AT THE PRESS 01A OUTION<br />
. Mo*<br />
TEM BEST SYSTEM OF ITS KIND<br />
e a l .<br />
D E<br />
it * OUT .PERFORMS ALL OTHERS REGARD' Fss of E.,0ST<br />
4gi x SAVES 4 : PRCGRAM 1 IN I FILE<br />
M I 4 o* DOES NOT , NEED CARTRIDGE FOR LOADING BACK<br />
& Oj00<br />
COMPACTS a l PROGRAMS TO REDUCE DISK SPACE USED ir OR MORE PROGRAMS PER DISK<br />
V R e0*<br />
FAST LOADS BACK PROGRAMS. MOST IN LESS THAN PO SECONDS<br />
0* USES RAM CARTRIDGE AND DISK BASED SOFTWARE FOR INSTANT UPGRADING<br />
! 1 o * RESTART. ALTER OR DISASSEMBLE PROGRAMS USING BUILT-IN MACHINE COOL MONITOR<br />
, Ao* NONF I OF Ti* OTHERIAPE TO DASKTREEZE FRAME PRODUCTS CAN MATOt THI EXPIRY<br />
SC A IM<br />
I T I 1 1 0 0<br />
N<br />
1<br />
O<br />
R<br />
E<br />
INC . VAT M I V O * ClS C61064111 VERSION AVAILAILE " L SOONY<br />
C128 80 COLUMN CONVERTERS & LEADS<br />
e2.."<br />
C VIOCON 23 RGIII TO VIDEO CONVERTER FOR CON I70i & 1702 MONITORS.<br />
Orh<br />
is it a sophishcAtad mains operahhd and r, spiays ail la C•215 rolaurs an0 ha5 a 40 80 token."<br />
Rtwit+C<br />
4 1 2 . 5<br />
VIDCON3;04 COLUMN PAColOCHROME ADA PTOR FO lq TVs i 34.95<br />
D<br />
EC<br />
1 ts at COLUMNLEADS/ADAPTORI—ALLALSOINCLUOECONNECTIONFOR SOUND<br />
TAIL 34i titie,1 VIDEO! FADSFOR F ERGUSONOACOI AMIGOS a itlita<br />
R TIIL a I t Hall I LAD 1<br />
. , TIMM Mir FIGOLEAD FOR FIDELITYCTM 140D C Mee<br />
. 0TML 4 131711ORNONOCHROME H I T A C H I T<br />
MON-0'01<br />
. V ,<br />
Leads end Adaptors made-to-order tor other mimitors —see with enquiries plows<br />
M O N I T<br />
.<br />
G Pi E A S E<br />
O R S<br />
.<br />
S P F 4 7 1<br />
W I<br />
_<br />
, C ela 6 4 SPEC TR U M R EPAI R S — PLEASE TELEPH ON E FOR D ETAI LS<br />
T<br />
_<br />
Y 5 4 4 0 0 E 1 t r<br />
& C<br />
u<br />
OM PETI TI VE PRI CES<br />
H<br />
_<br />
,<br />
R<br />
_O<br />
C<br />
FREE<br />
9<br />
C<br />
,<br />
ATALOGU<br />
1 1<br />
E<br />
1<br />
SENT<br />
)<br />
UPON RECEI PT OF LAR GE SAE (1 Te Sta mp)<br />
eaST M AI L-ORDER SERVICE crs',<br />
. h<br />
*<br />
I N<br />
.<br />
PPayment U by Claque, , postal order. cash. Transcash loay at any post office, by quoting<br />
.<br />
T<br />
.<br />
our a t no A650•3659,<br />
your name and address and which items you requireO<br />
a<br />
,<br />
.<br />
EXPORT: PIOASO add El extra paym eni in sterling only please<br />
I<br />
.<br />
A<br />
1 MAIL-ORDERS TO: 211 H OU SE LAN S, BRAD FOR D 5 D 4 0 0 A<br />
. 0<br />
CALLERS L WELC OM E AT 3 2 9 TON G STR EET,<br />
. 1<br />
5<br />
_<br />
6<br />
r<br />
i<br />
L<br />
P<br />
R<br />
I<br />
ADFORD m D4 BOY (027410384290<br />
Trpt7pGle<br />
7<br />
C<br />
E<br />
S<br />
I<br />
N
iparyl Bowers shows 1<br />
you how to kill the<br />
WELCOME BACK TO THE<br />
saga of the Frog. This month we<br />
will be adding the routine<br />
which controls the status panel<br />
at the bottom of the screen,<br />
and the routine which kills the<br />
Frog. Although the latter will<br />
not function until the checking<br />
routines are added in the next<br />
issue.<br />
Info<br />
The routine begins by printing<br />
the value of LIVES on to the<br />
status panel. ONLY indicates<br />
whether the frog is dead or<br />
alive and if dead (ONLY = 1)<br />
then we exit from the routine.<br />
The next four instructions<br />
print the values in FOOD and<br />
FOOD+1 and the following<br />
seven use the X register as an<br />
index to point to the five digits<br />
of MURES and SCORE and to<br />
place them correctly on the<br />
screen.<br />
One of the features of the<br />
game is that it becomes more<br />
difficult as you progress, and<br />
this is achieved by increasing<br />
the speed of the BIRD and the<br />
FLY. Their speed is increased by<br />
a small amount every time<br />
another 100 points is scored.<br />
The next two lines store the<br />
current digit in the 100 column<br />
of the score into NXTHLJN. The<br />
code which carries out the<br />
increase in speed appears later<br />
i n the routine.<br />
Lines 10010 to 10100<br />
decrease the two byte delay<br />
METDEL and METDEL2 to<br />
check whether another metre<br />
has passed. If not then we jump<br />
to FOD, which simply returns<br />
from the routine.<br />
The next eight lines use the<br />
X register as an index to<br />
int rease the METRES value. If<br />
the digit being increased<br />
reaches nine-plus-one in<br />
value, (i.e. 10), then that digit is<br />
set to zero, and the next<br />
highest digit is increased.<br />
Mt ISPD contains the value<br />
which is placed hack into<br />
1430 TABMOV MORD MOVE I , MOVE 4, 11OVE1, MOVE5, MOVE6, MOVE2<br />
1520 JSR PLAYER 10210<br />
10220 OK23<br />
10230<br />
1<br />
1560 JSR INFO 10240 LDA METSPD<br />
10250 STA METDEL2<br />
9790<br />
10260<br />
10270<br />
1<br />
DEC FOOD+1<br />
9800<br />
9810 INFO<br />
1 10280<br />
10290<br />
LDA FOOD+1<br />
CMP 1<br />
9820<br />
9830<br />
9840<br />
1 10300<br />
10310<br />
10320<br />
1LINE<br />
SUR<br />
0'- LDA 1<br />
STA 1 F000+1<br />
9850 LOA LIVES 10330 9' DEC FOOD<br />
9860<br />
9870<br />
9880<br />
9890<br />
9900 NOTONLY<br />
9910<br />
STA $0769<br />
LDA ONLY<br />
BE O NOTONLY<br />
RTS<br />
10340<br />
10350<br />
10360<br />
10370<br />
10380<br />
10390<br />
LDA FOOD<br />
CMP l'0'-1<br />
BNE SCOR<br />
LDA tl<br />
STA DED<br />
9920<br />
9930<br />
9940<br />
LDA FOOD<br />
STA $0789<br />
LDA F0004.1<br />
10400<br />
10410 SCOR<br />
10420<br />
1<br />
9950<br />
9960<br />
9970<br />
9980 100P23<br />
9990<br />
10000<br />
10010<br />
10020<br />
STA $078A<br />
1<br />
LOX 14<br />
LDA METERS, X<br />
STA $07560<br />
LDA SCDRE,X<br />
STA $07A6<br />
DEX 1<br />
10430<br />
10440 LOOP25<br />
10450<br />
10460<br />
10470<br />
10480<br />
10490<br />
10500<br />
LOX 14<br />
INC SCORE,X<br />
LDA SCORE,X<br />
CMP $<br />
1BNE<br />
0K24<br />
9LDA<br />
4<br />
13<br />
STA SCORE,X<br />
DEX 4.1 0'<br />
10030 BPL X L00P23 10510 8PL LOOP25<br />
10040 10520 RTS<br />
10050 LDA SCORE+2 10530<br />
10060 STA NXTHUN 10540 OK24<br />
10070 DEC KETDEL 10550 LDA SCORE+2<br />
10080 BNE FOD 10560 CMP NXTHUN<br />
10090 DEC METDEL2 10570 RE NOINC<br />
10100 BNE FOD 10580 DEC FLYSPD<br />
10110 LOX 14 10590 DEC BRDSPD<br />
10120 LOOP24 INC METERS,X 10600 NOINC<br />
10130 LDA METERS,X 10610 LDY 111<br />
10140 CMP $'9'+1 10620 LDA BRDSPD<br />
10150 BNE 0K23 10630 BNE 0K33<br />
10160 LDA $'0' 10640 STY BRDSPD<br />
10170 STA METERS,X 10650 OK33<br />
10180 DEX 10660 LDA FLYSPD<br />
10190 BPL L00P24 10670 BNE OK34<br />
10200 RTS Joao STY FLYSPD
10690 OK34 11280 LOP •'9<br />
10700 FOP<br />
10710<br />
10720<br />
10730<br />
10740<br />
10750<br />
10760 DEAD<br />
10770 1<br />
11290<br />
11300<br />
11310<br />
11320<br />
11330<br />
11340<br />
11350<br />
11360<br />
SIP 1 FOOD<br />
SIP FOOD+1<br />
LOP 10<br />
SIP DED<br />
LDA 11$FF<br />
SIP FLYXL0<br />
SIP BRDXLO<br />
LDA *I<br />
10780<br />
10790<br />
10800<br />
10810<br />
101320 0EADED<br />
10830<br />
101340<br />
10850<br />
LOP DED<br />
BNE DEADED<br />
RTS<br />
LDX 1217<br />
STX $07F9<br />
1NX<br />
SIX 107F8<br />
11370<br />
11380<br />
11390<br />
11400 L00P32<br />
11410<br />
11420<br />
11430<br />
11440<br />
SIP FLYXHI<br />
SIP BRDXHI<br />
LOX t3<br />
LDA FRENCH2, X<br />
SIP FRENCH,X<br />
DEX<br />
BPL L00P32<br />
10860 LDY STASE 11450<br />
10870 LOA JUMPTYPE 11460 RTS<br />
10880 BNE 9I13 11470<br />
101390<br />
10900 BACK<br />
10910<br />
LOP XTAB1,Y<br />
SEC<br />
SBC 148<br />
11480<br />
11490<br />
11500<br />
1<br />
1<br />
10920 SIP 10002 11510<br />
10930<br />
10940 BM<br />
10950<br />
10960<br />
JPIP YPOS<br />
LDA ITABIB,Y<br />
09 BACK<br />
11520<br />
11530<br />
11540<br />
11550 WAIT2<br />
10970 YPOS<br />
10980<br />
10990<br />
11000<br />
11010<br />
11020<br />
11030<br />
11040<br />
11050<br />
11060<br />
11070<br />
11080<br />
11090<br />
11100<br />
11110<br />
11120<br />
11130<br />
11140<br />
11150<br />
11160<br />
11170<br />
11180<br />
11190<br />
11200<br />
11210<br />
11220<br />
11230<br />
11240<br />
LDA 0158<br />
SIP $0001<br />
SIP 10003<br />
LOP #13<br />
SIP $0020<br />
SIP $0021<br />
;<br />
;<br />
1<br />
SEI<br />
LDA IFININT&235<br />
SIP $0314<br />
LDA 11FININT/256<br />
SIP $0315<br />
DEC LIVES<br />
JSR WAIT2<br />
LOP 01<br />
SIP ONLY<br />
JSR INFO<br />
LOP 10<br />
SIP ONLY<br />
JSR WAIT3<br />
LOP LIVES<br />
CHP #'0'<br />
BEO FINAL<br />
LOP SHANDLE11255<br />
11560<br />
11570 L00P29<br />
11580<br />
11590<br />
11600<br />
11610<br />
11620<br />
11630 WAIT3<br />
11640<br />
11650 LOOP30<br />
11660<br />
11670<br />
11680<br />
11690<br />
11700<br />
11710 BIGSY<br />
11720<br />
11730<br />
11740 LOOP28<br />
11750<br />
11760<br />
11770<br />
11780<br />
11790 NOTDEAD<br />
11800 FINAL<br />
11820<br />
11830<br />
LDA 15<br />
JSR 11156Y<br />
SEC<br />
SBC 11<br />
BNE L00P29<br />
RIB<br />
LDA #10<br />
JSR BIER<br />
SEC<br />
SBC 11<br />
BNE LOOP30<br />
RTS<br />
LOX ilIFF<br />
LDY t$FF<br />
DEY<br />
ENE L00P28<br />
DEX<br />
BNE 100P28<br />
RTS<br />
JSR WAIT3<br />
1<br />
JSR INIT<br />
RTS<br />
11250<br />
11260<br />
11270<br />
SIP $0314<br />
LDA tHANDLE/256<br />
SIP $0315<br />
11840<br />
11850 FINISH<br />
11860<br />
1<br />
.END<br />
63<br />
METDEL2, so by changing this<br />
value (line 1360) you can adfust<br />
the distance that must be<br />
travelled before the value of<br />
METRES is increased.<br />
The same principle used for<br />
increasing the metres is used<br />
next to decrease FOOD and<br />
increase SCORE,<br />
Which brings us to 0K24, If<br />
the value of NXTHLIN is<br />
different to the current value of<br />
SCORE+2, then it is time to<br />
decrease the delays which<br />
control the speeds of the BIRD<br />
and FLY, BRDSPD and FLSPD.<br />
Finally they are checked to<br />
ensure that their values have<br />
not decreased too far.<br />
Dead<br />
This routine prints the dead<br />
frog and decreases the value of<br />
LIVES.<br />
I he first step is to check<br />
whether the variable DED has<br />
been set by the collision<br />
routines which we will add next<br />
issue.<br />
Lines 10820 to 10850 set up<br />
the sprite definitions to point<br />
to the correct sprites for a dead<br />
frog. 10860 to 11010 simply ;et<br />
up the correct X and Y coordinates<br />
of the frog he would<br />
look pretty silly hovering in<br />
mid air!). Next the colours are<br />
set up in lines 11020 to 11040.<br />
Now the interesting bit!<br />
Remember the interrupt<br />
handling routine, 'HANDLE'<br />
that we added in the second<br />
article? Well, unless we stop<br />
this from being called, the dead<br />
frog will continue moving<br />
(actually the background<br />
would move, not the frog),<br />
To stop this from happening,<br />
we point the interrupt<br />
vector at $0314 and $0315 to the<br />
end of the routine, thus<br />
executing no code.<br />
The rest of this section is<br />
simple to follow, and does this:<br />
Decrease Lives, pause, reprint<br />
status panel, pause, set up<br />
interrupts, refill FOOD. re-set<br />
Bird and Fly positions, re-set<br />
Cycle position,<br />
The last pieces of code from<br />
line 11500 onwards, are simply<br />
delay loops used by the<br />
previous routine,<br />
Next issue - collisions!
INEMEMENEIREIREENEEMENEENEEMENEMEMEEMENNEEMEMEEN E N E M E N •<br />
....••••••••••••••••••••••••••••••••••••••• ••0•••••••••••<br />
11<br />
•NEE M O W ,<br />
E• •E• I • •••EN' R E N E I ' E F Ago. I • • INE' V W mob III -<br />
o. MEE<br />
A I r M<br />
E<br />
E<br />
M<br />
E<br />
U A 1111 1 1 1 MENE• E N I•F A IM' ••ME• —<br />
1•EN• 1 1 1U1 •1 E 1 , 1 A, 'MI k I RE 11 E N INF A. 11 E l • ____11111E•<br />
lNEON mm•N m I I I N. I I M Y II 111, IE I l k MN' I IlmENEE<br />
NENE I mom II 1116 E L I L A l atom lb. . 11 • E E<br />
•EMEEMBEIBINMEoubmillEmillEimmillodEbiniEdEb•MENIEEMEnumEnNommEllEN<br />
• NEMENEMENEENE•ENEEMEMEME•E•ENEEMENE•••1111MEMEENEENEEMENEMEN<br />
11 1 1<br />
This month David Janda<br />
1 1 1<br />
F begins a look at C — a very<br />
I E<br />
LE<br />
M<br />
vPlanguage.<br />
•<br />
'<br />
e<br />
9<br />
r1<br />
1<br />
sC<br />
1 IS AN APPLICATIONS LANGUAGE.<br />
That<br />
aN<br />
is, it's used by programmers to write a<br />
variety<br />
E<br />
of programs such as text editors,<br />
tprogramming<br />
utilities and such like. It is<br />
also N the 'flavour of the day' in the micro<br />
iworld.<br />
E Partly because of the popularity of<br />
lthe<br />
UNIX operating system (of which C is<br />
the language) and partly because of other<br />
e features such as its compactness, portability<br />
and speed of execution.<br />
p The good thing about C is that it is a<br />
rlanguage<br />
for programmers. Many<br />
programming languages get designed by<br />
ocommittee,<br />
but not C. C has gained its<br />
gpopularity<br />
not because of any hype or<br />
backing from a government (as the USA<br />
rhas<br />
backed ADA), but because programmers<br />
LIKE C.<br />
a So what is C, what can you do with it,<br />
and m how good is it?<br />
mWhy<br />
C?<br />
i<br />
C has many virtues. It is a modern<br />
nlanguage<br />
which incorporates modern<br />
control g features. It is also a compact<br />
language; C can be installed on small<br />
micros - such as the 64 - and the code that<br />
it produces is compact and fast. Another<br />
benefit of C is that it is portable. We have<br />
all heard claim that this or that language is<br />
portable, only to discover that a major rewrite<br />
is necessary before a program can<br />
be run on a different system. But with C it<br />
really is portable between different<br />
computers. If any changes to the source<br />
code are necessary, it usually means<br />
altering a few lines in a 'header* file which<br />
can accompany the main program.<br />
For those of you who are interested in<br />
the 'real' world of programming, it is<br />
worth noting that C is the programming<br />
language of the UNIX operating system.<br />
UNIX is already an accepted operating<br />
system in the PC world, and the EEC have<br />
• E N<br />
• N<br />
E<br />
N<br />
E•EN•••<br />
•E•NE<br />
• •<br />
•<br />
E,<br />
M EI RNE EINNEN. I<br />
E l l i •EL IME•IMIET ,,,A, 111E<br />
MENEM M • MIEN, A 1•1 -<br />
•<br />
N1 w• MENEM<br />
•<br />
•1<br />
1 1MEMO' 1 a INI - . ' f f<br />
•<br />
•1 A-EINE• -•<br />
1 E mE o No<br />
, M I ImMI IR-...11‘ w AUN<br />
MENNEN EM<br />
E • I• F • a • t 11 AMEMEEMb. a l l I N<br />
M<br />
• E 1•ENEMENENNEINEIN•MEEMiinEENEENEEENE•millEEN I1<br />
r 1 M E E M E N<br />
E<br />
•<br />
I' •<br />
•ENEMENEEMEN•ENEMENEENE•••NNEENEORIEE•E<br />
I<br />
E E<br />
M<br />
I n E I • •<br />
N<br />
IEI E<br />
E<br />
submitted E<br />
I<br />
M to the compiler, which, C Power V2.4 by Pro<br />
providing E<br />
N<br />
N their are no errors, will compile<br />
the<br />
•<br />
E program into machine code and store -<br />
Software Ltd<br />
it<br />
E<br />
M<br />
E<br />
as a file which is called the object code. Line<br />
The I steps in developing a C program To the best of my knowledge., thec power<br />
are N<br />
M a Ebit<br />
more complex than what was package is the only C compiler available<br />
mentioned E<br />
M above, but it should give you a in the UK so far. By the time you read this a<br />
rough<br />
E<br />
N idea.<br />
cheaper package called Super C should<br />
be available from First Software. The<br />
C M<br />
EBASICS<br />
E<br />
reason for this longer-than-normal<br />
E<br />
M<br />
review is to give you an idea of what the<br />
E •<br />
E<br />
package offers and is capable of, as it is not<br />
Here is a small C program:<br />
the cheapest available!<br />
1) N#<br />
include
1<br />
has got a very compatible package with C<br />
Power, but of course, there are some<br />
differences.<br />
In brief, the omissions from standard C<br />
are: no bit fi eld manipulation; static<br />
pointers may not be initialised except for<br />
character points initialised with strings;<br />
certain operators under certain conditions<br />
will not work unless the expressions<br />
are parenthesised. Most of these<br />
omissions are not serious, and can be got<br />
round quite easily.<br />
The following table lists the size, in<br />
bytes of all data types supported by the<br />
compiler:<br />
Type S i z e<br />
char 1<br />
short 2<br />
int 2<br />
long 2<br />
unsigned 2<br />
float 5<br />
double 5<br />
pointer 2<br />
Looking at the table, you can see that<br />
types short, int and long are the same, as<br />
are float and double. This practice is not<br />
uncommon in micro implementations of<br />
C. but is a strange one. For a package of<br />
this price I would have expected to see<br />
long and double supported.<br />
The library supplied with the C Power<br />
compiler is quite standard. However, it<br />
would have been a good idea to include<br />
functions dependent on the 64, such as<br />
some sound and graphics functions.<br />
Documentation<br />
The user manual is supplied as sheets of<br />
paper which is stapled near the top.<br />
Punch holes enable the manual to be<br />
fitted into a ring binder, which is a good<br />
suggestion as my copy started to fall to bits<br />
after a short while. The manual itself<br />
makes no attempt to teach or introduce<br />
the user to C - that's left to the tutorial<br />
book. Instead the manual provides<br />
information on the implementation of C<br />
Power and descriptions of the editor,<br />
compiler, linker and so on. One section<br />
lists the functions provided with the<br />
library that is part of the package. The<br />
majority of functions are listed with name,<br />
number, order and types the function<br />
takes, description of the function and an<br />
example. A good idea this, as it will enable<br />
the user who wishes to port C source<br />
from another machine, to check up on<br />
functions to see if they are compatible.<br />
The book 'C Primer Plus' by Waite,<br />
Praia & Martin (Sams, $19.95, ISBN 0-672-<br />
22090-3) is supplied with the C Power<br />
package. Quite simply it is the best<br />
language tutorial book I have ever read!<br />
This hefty tome (531 pages) takes the<br />
reader from the concept of programming<br />
right up to detailed discussion on C I/O.<br />
What's more, it is well written in a friendly<br />
(and amusing) manner with plenty of illustrations,<br />
summary pages and so on. Even<br />
if you don't intend to get the C Power<br />
package get this book!<br />
C Power in Use<br />
TABLE 1 — COMMANDS SUPPORTED BY THE SHELL<br />
list work disk directory<br />
Is l i s t system disk directory<br />
rm scratch file from work disk<br />
my rename file on work disk<br />
pr l i s t contents of a file on work disk<br />
disk send command string to work disk<br />
The user manual suggests that the system<br />
disk should be backed up. To do this, the<br />
shell, editor, syntax checker, linker and so<br />
on should be copied on to one disk.<br />
Another disk should be used to copy the<br />
flip side of the system disk; this contains<br />
the Stdlib.1 and Syslib.1 function libraries.<br />
load load, but not run, command from work or system disk<br />
work show or set device and drive numbers<br />
sys a s above but for system disk<br />
ed l o a d and run editor<br />
ced load and run syntax checker<br />
cc compile C source<br />
link r u n linker<br />
NOTE: All the commands are followed by<br />
arguments such as fi le names, drive or<br />
device numbers.<br />
65<br />
Programming<br />
The compiler itself is copy protected (not<br />
very well though) so once working copies<br />
are made, three disks should be at hand:<br />
One containing the shell etc; another the<br />
libraries; and the third being the master<br />
disk.<br />
The SHELL is the first program that is<br />
run when using C Power. SHELL itself is a<br />
mini-command interpreter. It supports<br />
command line arguments and I/O redirection<br />
along with the compiler and<br />
other programs that are designed to work<br />
under it. The nearest comparison would<br />
be Basic's screen editor, which can be<br />
used to develop, edit and run programs as<br />
well as issue I/O commands (such as disk<br />
directory, opening fi les etc). The<br />
command available from the Shell are<br />
listed in Table 1.<br />
Entering some C source code first<br />
requires the editor to be loaded and run.<br />
This is simple done by entering 'ed'<br />
(optionally followed by a file name if an<br />
existing file is to be amended). The editor<br />
is a very comprehensive bit of code that<br />
provides numerous commands for<br />
moving about the text buffer. Once the<br />
code is written it can then be saved to<br />
disk. A syntax checker is also provided<br />
which does what its name suggests -<br />
checks the syntax of a C source file. The<br />
program is listed as it is being checked,<br />
and will stop if an error in syntax is found.<br />
If this is the case, a couple of key presses<br />
and you are back into the editor at the<br />
place where the error was found. Needless<br />
to say that the editor, syntax checker<br />
and all the other Shell commands are<br />
written in C!<br />
The next stage is to invoke the compiler<br />
by entering cc filename. This loads<br />
and runs the compiler which produces an<br />
object code file.<br />
The first stage is to load and run the<br />
linker. This will produce a runable file and<br />
three options are available. First it is<br />
possible to produce a C program that will<br />
run under the Shell (just like the Shell<br />
commands). It is also possible to specify a<br />
starting address, this means that the C<br />
program will have to be loaded and a SYS<br />
call made to the starting address. The third<br />
option is to produce a file that starts at the<br />
start of Basic.<br />
Summary<br />
Without a doubt C Power is a very powerful<br />
package. It is quite feasible that it can<br />
be used to develop commercial<br />
programs, and its numerous features give<br />
the user a great deal of flexibility.<br />
The only drawback with C Power is its<br />
price. It's a very expensive package, and I<br />
would have expected such things as more<br />
C64 dependent functions, long integers<br />
and double precision floating point.<br />
Having said that, its pros far outweigh<br />
the cons, and I would recommend the C<br />
Power package to the novice as well as the<br />
professional.
William Fong adds a<br />
little more power to<br />
your MN<br />
Simply type it in as you<br />
would any other program and<br />
SAVE it. When you RUN it, any<br />
typing errors in the data will be<br />
found and the line of the error<br />
given. Correct any offending<br />
lines and run again until the<br />
program runs without any<br />
errors. Do not attempt to use<br />
the program before 411 errors<br />
have been found or you could<br />
cause your machine to crash.<br />
Once the program is in<br />
memory you can get rid of the<br />
loader by typing NEW, Then<br />
type SYS 49152 to initialise<br />
better matrix. A 3D title/menu<br />
page should be displayed<br />
showing you the simple<br />
controls that are needed to use<br />
the program.<br />
Trying It Out<br />
When everything is working<br />
type in the short program in<br />
Figure 2. Now press function<br />
key 3, which will give a blue<br />
border, and RUN the program.<br />
Not very nice is it?<br />
Now press function key 1,<br />
which will give a cyan border,<br />
and RUN the program again.<br />
This time the letters will have<br />
descenders.<br />
Better matrix should therefore<br />
give a better appearance<br />
to many of your printouts.<br />
However, as each wordprocessor<br />
is different it is<br />
impossible to say whether it<br />
will work with them loaded<br />
into your machine. At the<br />
moment better matrix sits at<br />
memory location $C000 (49152)<br />
so it will definitely not work<br />
with progrms that use this area<br />
of memory.<br />
THE COMMODORE MPS 801<br />
is an extremely popular printer<br />
because of its cheap price. If<br />
you are only after the<br />
occasional computer listing<br />
then it is quite adequate. A<br />
problem arises however if you<br />
wish to use the MPS 801 to<br />
produce quality text output as<br />
none of the lower case letters<br />
have descenders. This means<br />
that a letter '1' would simply sit<br />
on the same line as a letter 'a'.<br />
This makes it very difficult to<br />
read large amounts of text.<br />
If you want to enter the<br />
wonderul world of word-<br />
BETTER<br />
MATRIX<br />
processing and are thinking of<br />
trading in your MPS 801 and<br />
purchasing a more expensive<br />
printer then wan a minute.<br />
Before you take any money out<br />
of your depleted bank account<br />
take a look at Better Matrix.<br />
So how does it help? Well<br />
Better Matrix uses a similar<br />
method of printing as the more<br />
expensive near letter quality<br />
(NLQ) printers. First one part of<br />
the letter is printed then the<br />
printer goes back over the<br />
letter and adds the missing<br />
parts of the letter to the page.<br />
By implementing this on the<br />
MPS 801 we can obtain an<br />
acceptable print resolution of<br />
14 dots by 16 dots. Obviously<br />
this does not improve the<br />
definition of the character, as<br />
proper NLQ does, but it does<br />
allow you to print characters<br />
with descenders. Take a look at<br />
Figure 1 which shows the<br />
normal printout of the MPS 801<br />
compared to that of the newer<br />
matrix.<br />
However, printing in this<br />
manner does have a disadvantage.<br />
As the printer has to go<br />
over each line of text more<br />
than once it takes a tot longer<br />
to print out any text, this is not<br />
only common to the MPS 801<br />
but all NLQ printer suffer in the<br />
same way. On the MPS 801 the<br />
speed is reduced from SO<br />
characters per second to 20<br />
characters per second.<br />
Getting It In<br />
Better matrix is quite short and<br />
the program is all in machin<br />
code but is presented here in<br />
the form of a Basic loader.<br />
PROGRAM; BETTER MATRIX<br />
2000 FOR L=0 TO 98:CX=0<br />
FOR D=0 TO 15:READ A<br />
:CX=CX+A:POKE 49152414164,<br />
A:NEXT D<br />
2010 READ A:1F AOCX THEN PR!<br />
NT<br />
120401.(LIIMSTOP<br />
2020 ENEXT<br />
L:60T0 4000<br />
2040 RDATA<br />
120,169,192,141,21,<br />
R3,169,73,141,21,3,88,169,6,<br />
O141,33,1489<br />
2050 R DATA 208,141,32,208,162,<br />
I<br />
0,189,246,194,32,210,255,<br />
232,224,255,208,2796<br />
N<br />
2060 DATA 245,162,0,189,245,<br />
L<br />
195,32,211,255,232,224,255,<br />
I<br />
208,245,162,0,2859<br />
2070<br />
N<br />
DATA 189,244,196,32,210,<br />
E<br />
255,232,224,255,208,245,<br />
'<br />
162,0,189,243,197,3081<br />
208e : DATA 32,210,255,232,224,<br />
43,208,245,96,165,203,201,<br />
4,208,18,169,2513<br />
2090 DATA 119,141,38,3,169,<br />
192,141,39,3,169,3,141.32,<br />
208,76,49,1523<br />
2100 DATA 234,201,5,208,15,<br />
169,202,141,38,3,169,241,<br />
141,39,3,169,1978<br />
2110 DATA 6,141,32,208,76,49,<br />
234,72,165,154,201,3,240,5,<br />
144,3,1733<br />
2120 DATA 76,135,192,104,76,<br />
202,241,104,141,100,194,72,<br />
138,72,152,72,2071<br />
2130 DATA 173,100,194,201,80,<br />
208,3,76,6,191,201,81.206,<br />
3,76,12,1835<br />
2140 DATA 193,201,71,208,3,76,<br />
58,193,201,74,208,3,76,84,<br />
193,201,2043<br />
2150 DATA 89,208,3,76,110,193,<br />
201,70,206,3,76,136,173,<br />
201,13,208,1988<br />
2160 DATA 3,76,36,194,201,65,<br />
208,3,76,162,193,201,67,<br />
206,3,76,1772<br />
2170 DATA 188,193,201,69,208,<br />
3,76,214,193,201,82,208,3,<br />
76,240,193,2348<br />
21130 DATA 201,87,208,3,76,10,<br />
194,201,32,144,19,201,145,<br />
240,15,201,1977<br />
2190 DATA 146,240,11,174,99,<br />
194,169,32,157,245,194,238,<br />
99,194,104,168.7.464<br />
2200 DATA 104,170,104,76,221,<br />
237,160,7,185,101,194,32,<br />
221,237,185,109.2343<br />
2710 DATA 194,174,99,194,157,<br />
245,194,238,99,194,136,16,<br />
235,76,93,194,2538<br />
2220 DATA 160,7,185,117,194,<br />
32,221,237,185,125,194,174,<br />
99,194,157,2451,2526<br />
2230 DATA 194,238,99,194,136,<br />
16,235,76,93,194,160,7,185,<br />
133,194,32,2186<br />
2240 DATA 221,237,185,141,194,<br />
174,99,194,157,245,194,238,<br />
99,194,136,16,2724<br />
2250 DATA 235,76,93,194,160,7,<br />
185,149,194,32,221,237,185,<br />
157,194,174,2493<br />
2260 DATA 99,194,157,245,194,
E,<br />
5,<br />
239;79,194,126,16,225,76,<br />
93,194,160,7,2227<br />
2270 DATA 195,165,194,32,221,<br />
237,185,173,194,174,99,194,<br />
157,245,194,238,2887<br />
2280 DATA 99,194,136,16,235,<br />
76,93,194,160,7,185,181,<br />
194,32,221,237,2260<br />
2290 DATA 185,199,194,174,99,<br />
194,157,245,194,239,99.194,<br />
136,16,235,76,2625<br />
:700 DATA in,194,10,7,:eE,<br />
197,194,22,221,227,195,237,<br />
194,174,99,194,2607<br />
2310 DATA 157,245,194,238,99,<br />
194,126,16,225,76,92,194,<br />
160,7,105,205,2434<br />
2120 DATA 194,32,221,237,185.<br />
237,194,174,79,194,157,245,<br />
194,279,99,194,2894<br />
::30 DATA 1:6,16,235,76,93,<br />
194,160,7,185,213,194,32,<br />
221,237,185,227,2421<br />
2340 DATA 194,174,99,194,157,<br />
245,194,238,99,194,136,16,<br />
235,76,97,194,2538<br />
:350 DATA 160,7,185,221,194,<br />
32,221,237,185,237,194,174,<br />
99,194,157,245,2742<br />
:10 DATA 194,238,99,194,136,<br />
16,235,76,93,194,160,7,185,<br />
229,194,32,2282<br />
2370 DATA 221,237,195,237,194,<br />
174,99,194,157,245,194,238.<br />
99,194,136,16.2820<br />
2380 DATA 235,76,97.194,169,8,<br />
22,221,227,169,17,32,221,<br />
237,169,15,2121<br />
2390 DATA 32,221,237,173,99,<br />
194,240,17,206,99,194,162,<br />
255,222.189,245,2795<br />
2400 DATA 194,32,221,237,236,<br />
99,194,208,244,169,8,32,<br />
221,237,169,13,2514<br />
2410 DATA 32,221,237,169,15,<br />
32,221,237,169,0,141,99,<br />
194,104,168,104,2143<br />
2420 DATA 170,104,96,0,0,15,<br />
128,184,196,196,169,252,8,<br />
15,128,128,1788<br />
2430 DATA 128,128,128,143,8,<br />
15,128,132,246,196,196,184,<br />
8,15,128,132,1917<br />
2440 DATA 143,128,128,128,8,<br />
15,128,248,164,196,196,184,<br />
8,15,128,125,19E2<br />
2450 DATA 126,136,136,132,8,<br />
15,128,132,253,128,128,128,<br />
8,15,128,128,1739<br />
Cede + MPS 801<br />
2460 DATA 1:S.126,136,122,5, 72,51:<br />
195,195,195,195,195,195,<br />
15,128,252,192,192,188,128. 2660 DATA<br />
195,195,195,195,175,3120<br />
8,15,128,135,1928<br />
22,32,194,144,166,152,166, 2860 DATA 189,144,32,166,152,<br />
2470 DATA 136,136,122.128,8, 166,166,166,1576<br />
166,166,13,32,18,166,32,<br />
15,128,126,196,176,248,192, 2670 DATA 166,166,166,166,166, 166,32,166,32,1672<br />
8,15,128,128,1970<br />
13,159,18,194,72.40,67,41, 2870 DATA 166,32,166,32,166,<br />
24130 DATA 128,128,143,128,8, 32,41,57,1522<br />
166,144,32,166,32,166,166,<br />
15,128,192.188,196,196,184, 2680 DATA 56.54,72.158,176, 166,166.166,166.2098<br />
8,15,128,200,1985<br />
1<br />
2880 DATA 166,32,166,166,22,<br />
2490 DATA 196,196,196,184,8, 9195,195.195,195,195,2621<br />
166,32,166,166,32,166,166,<br />
15,128,200,212,212,212,184,<br />
8,15,128,136,2270<br />
2500 DATA 132,132,248,132,8,<br />
15,128,188,192,184,192,198,<br />
8,15,128,128,2018<br />
2510 DATA 12E1,128,128,128,8,0,<br />
147,152,32,18,166,166,166,<br />
166,166,166,1865<br />
2520 DATA 166,166,166,166,166,<br />
166.166,166,166,166,166,<br />
166,166,166,166,166,2656<br />
2530 DATA 166,166,166,166,166,<br />
166,166,166,166,166,166,<br />
166,166,166,166,13,2503<br />
2540 DATA 159,18,176,195,195,<br />
195,195,195,195,195,195,<br />
195,195,195,195,195,2898<br />
2550 DATA 195,195,195,195,195,<br />
195,195,195,195,195,195,<br />
195,1<br />
2560 9DATA<br />
166,166,166,166,166,<br />
5,174 166,166,166066,13,159,18,<br />
, 194,32,66,69.2045<br />
2570 152,1 DATA 84,84,6<br />
9 66,30 65,94,82,73,98,32,79,78.32,<br />
,82,32,77,<br />
27<br />
7/,',118<br />
25e0 DATA 8033,45.56,48.49.<br />
2690 5DATA<br />
195,195,195,195.1 32,166,152,166,1972<br />
9 , 195,195,195.195,195,174. 2890 DATA 166,13,32,18,166,32.<br />
5. 1152,32,32,32,166,253e<br />
166,166,32,166,166,32,166,<br />
2700 9DATA<br />
13.18,159,173.1K, 32,32,32,1417<br />
5<br />
195,195,195,195,195,195, 2900 DATA 144,32,166,32,32,32,<br />
,<br />
195,195,195,159,194,2665 32,166,32,32,166,166,32,32,<br />
2<br />
166,166,1428<br />
1<br />
7<br />
9<br />
85,67,84,73,79,78.83,32,32, 2910 DATA 32,166,166,32,166,<br />
1 22,1077<br />
166,32.166,152,166,166,12,<br />
5<br />
0 2720 DATA 32,32,32.22,32.194, 32,18,166,32,1671<br />
.<br />
D 152,22,166,166,166,13,22, 2920 DATA 166,166,32,166,166,<br />
1<br />
A 144.2,156,:40°<br />
32,166,32,166,166,166,166.<br />
9<br />
T2720<br />
DATA 32,166,166,166,72, 166,166,166,32,2120<br />
5<br />
A<br />
166.22,166.32,158.194.162, 2930 DATA 166,166,166,166,32,<br />
1<br />
3<br />
167,163,163,163,2125 166,166,32,166,32,166,166,<br />
2740 1DATA<br />
162.163.162.163,163, 32,166,166,32,1986<br />
2<br />
9<br />
,<br />
163,163,163,161,22,32,32, 2948 DATA 166,166,166,13,32,<br />
532,72.32,32,1691<br />
18,166,32,166,166,166,166.<br />
7<br />
2750 , DATA 194,144:Z2,32,152. 186,32,166,32,1819<br />
3<br />
132,:66.1:,32=42,166.72.<br />
2950 DATA 166,166,166,166,32,<br />
,<br />
9166,166,166,1667<br />
32,32,32,166,166,166,166,<br />
7<br />
2760 5DATA<br />
22,166.72,166,32. 166,32,32,166,1852<br />
8<br />
, 158,194,22.70.05,78,67.84, 2960 DATA 166,166,32,32,166,<br />
. 73.79,78,1426<br />
166,32,32,32,166,166,13,32,<br />
82770<br />
DATA 32,75,69,89.32,9, 18,166,166,1551<br />
7 32.58,32,79,78,22,194.144, 2970 DATA 166,166,166,166,166,<br />
, 22,166,1193<br />
166,166,166,166,166,166,<br />
32,194,144,166,152.166,166. 82780<br />
DATA 152,166,166.12.22, 166,166,166,166,166,2656<br />
166,166,166,1879<br />
4 152,18,166,22.32,32.166,32,<br />
2590 DATA 166,166.166,166,12. , 32.32,166,138<br />
159,18,194,163,163,163,16:, 82798<br />
9DATA<br />
32,158,194,32,32,32.<br />
162,163.162,163,252 2 22,32,32,32,3232.22.32,<br />
2600 DATA 163,162,163,163,162, , 22,800<br />
163,163,163.163,163,162, 2800 DATA 32,32,32,32,32,32,<br />
2990 DATA 166,166,166,166,166,<br />
166,166,166,166,166,166,<br />
166,166,166,166,166,2656<br />
2990 DATA 166,166,166,13,32,<br />
18,166,166,166,166,166,166,<br />
166,166,166,166,2221<br />
162,162,163,163,163,2608 32,32,194,144,32,32,152,32. 3000 DATA 166,166,166,166,166,<br />
2610 DATA 163,167.194,144,166. 166,13,1021<br />
166,166,166,166,166,166,<br />
152,166,166,166,166,166, 28:0 DATA 32,152,18,166,166, 166,166,166,166,166,2656<br />
166,166,166,166,13,2489 166,166.166,166,166,166. 3010 DATA 166,166,166,166,166,<br />
2620 DATA 159,18,194,32037,92, 166,166,158,194.32,2246 166,166,166,166,166,166,17,<br />
73,84.84,69,78,32,66,89,22,<br />
22,1211<br />
2820 DATA 70,85,78,67,84,72.<br />
79,79,32,75,69,99,32,51,32,<br />
17.158,13,0,2031<br />
3020 DATA 253,254,253,254,253,<br />
2630 DATA 87,73,76,76.73,65, 58,10E2<br />
254,253,254,253,254,253,<br />
77,32,70,7<br />
9144.166,1392<br />
2640 , DATA 152,166,166,166.166,<br />
78,71,32,1<br />
166,166,166.166.166.17.159,<br />
94, 19,194,32,32,20<br />
2650 9DATA<br />
32,72,32.32,22,32,<br />
2830 DATA 37.<br />
7 166,166,42,166.166,13,32,<br />
9,70,70. 152,18,166,1786<br />
194,144,<br />
2840 DATA 32.32,32,166,32.32,<br />
32,166.32,158,173.195,195,<br />
195,195,195,1862<br />
254,252,254,253,254,4056<br />
4000 PRINT 'ECLEAR,00WN3,<br />
RI6HT61BETTER NATRIX NOW<br />
IN NE1ORY"<br />
4010 PRINT "EDOWN2,SPC61TYPE<br />
SYS 49152 TO ACTIVATE."<br />
422,32,32,32,72.32,22.32,72,<br />
2850 DATA 195,195,195,195.195.<br />
•<br />
67
COMMUNICATION<br />
you've never heard of<br />
tr=<br />
bu [want to know how to get on I<br />
ile [one — read on. David Janda 1<br />
tin<br />
!shows you how.1<br />
b<br />
o<br />
a<br />
rI<br />
HAVE BEEN ACCUSED OF DOMINATing<br />
Communication Corner with<br />
dM'Net/CNET<br />
blurb. Well, as promised,<br />
here is ta refreshing) change. This month<br />
s<br />
the subject is bulletin boards.<br />
o A bulletin board (BB from now on) can<br />
best be compared to a community bulle-<br />
r tin board. A BB is usually run by a hobbiest<br />
yin<br />
his/her own spare time on a home<br />
micro with disk drive and auto-answer<br />
omodem.<br />
A BB will allow one user at a time<br />
to browse through the files stored on the<br />
u board. These can include messages from<br />
j other users, general information, specialists<br />
info, you name it you can put in on a<br />
u<br />
s<br />
t<br />
I3B.<br />
Compared to Micronet or Cornpunet<br />
I.1 knew I would mention them<br />
sometime!) BBs are not technically brilliant,<br />
but they are by no means crude.<br />
One of the best things about using What's There?<br />
different BB's (board-walking) is that they<br />
are not bureaucratic, official or run by<br />
money makers - and that makes a<br />
difference!<br />
What Type?<br />
The UK currently has over 200 BBs that<br />
operate at regular times, and the number<br />
is growing. There are basically two types<br />
of BB from which to choose. First there is<br />
the traditional scrolling type of BB. To<br />
access this, you will need terminal<br />
emulation (often referred to as dumb<br />
1<br />
terminal) software. Most comms packs<br />
include this type of facility. In case you are<br />
a Viewdata (Prestel) user who does not<br />
have this type of package, Dialsoft on<br />
page 600617160a at 0,50 should get you<br />
going. Compunet users can purchase TTY<br />
which is at 114007 for £4.99.<br />
This type of software does not give you<br />
any colour or graphics, but enables you to<br />
log on to most types of BB.<br />
The second type of BB operates on<br />
Viewdata (Prestel-like) standards. This<br />
type of board presents information with<br />
colour and low-res graphics in a page<br />
format. Micronet-Prestel subscribers will<br />
not need to buy any additional software,<br />
but Compunet subscribers will need the<br />
free Viewdata proggy at 2020. Again, as<br />
with the dumb terminal software, most<br />
comms software has a Viewdata mode.<br />
Which Modem?<br />
Most of the BBs are run at 300 baud. This<br />
means that you'll need a modem such as<br />
the Voyager 7, Nightingale or Multi<br />
modem from Miracle Technology. All<br />
three modems will also allow you to<br />
access boards at 1200/75 Prestel and<br />
scrolling formats. CBM modem owners<br />
need not feel hard done by. Many boards<br />
now allow access at 1200/75 baud, and<br />
some even operate at 1200/1200.<br />
Each BB has its own unique character. But<br />
most have an E-Mail (Electronic Mail)<br />
option that enables you to send and<br />
receive messages. These messages can be<br />
private, i.e. to another user, or be posted<br />
on the general board for everyone to see.<br />
Other features on BBs typically include<br />
free downloadable software. Downloading<br />
is done in several ways. but by far<br />
the most popular is the X-Modem format,<br />
so check to see if your comms package has<br />
this option, Another common feature to<br />
be found on BBs are the SIGs - Special<br />
Interest Groups, These are areas which<br />
contain information on one particular<br />
subject such as a micro, comms, politics or<br />
whatever.<br />
There are many other features to be<br />
found on BBs. Some even have on-line<br />
adventures that you can play.<br />
When using a BB, it's worth<br />
remembering that the service which you<br />
are using is two-way. That is, it's up to you,<br />
the user, to help supply the board with<br />
information. Have you got any software<br />
(of your own)? Then why not upload it for<br />
everyone to use. How about asking the<br />
System Operator (SYSOP) to set up an SIG<br />
dedicated to Commodore machines if<br />
there is not one there already?<br />
The List<br />
Opposite is a very small selection of BBs<br />
that are currently in operation. All the<br />
boards listed operate on a 24 hour basis.<br />
V/Data means that you will need Prestel<br />
type software to access the board.1200-75<br />
means that you need scrolling type software<br />
and a modem, such as the one from<br />
CBM, to access the service. Finally, 300<br />
means 300-300 baud access which needs<br />
scrolling software. CBM modem users will<br />
NOT be able to access this type of board.<br />
All the boards listed have a section<br />
which contains phone numbers for other<br />
boards. Have fun!<br />
What About the 64?<br />
To the best of my knowledge, there are<br />
only three bulletin boards which are run<br />
on the Commodore 64, One is in<br />
Aberdeen, one in Dublin and the third in<br />
Denmark! No doubt there are quite a<br />
few in the good ole U$ of Reagan which<br />
shall check out next month. I also understand<br />
that there is some public domain<br />
(free) BB software knocking about in<br />
Ireland which I shall also track down. As<br />
you can see below, running a Bulletin<br />
Board on a C-64 is perfectly feasible.<br />
COMMUNICATION<br />
68
i Communications<br />
CORNER<br />
R<br />
Name<br />
Telephone KateS a<br />
BABS 1<br />
0394 276306 3 0 t 0<br />
Brixton ITec<br />
01 735 6153 V/Data e<br />
s<br />
Cardif ITec<br />
0222 464 725 V/Data<br />
C-View<br />
0702 546373 V/Data<br />
EBBS Swansea<br />
0792 203953 3 0 0<br />
Gnome at Home<br />
01 888 8894 V/Data<br />
01 985 3322 V/Data<br />
Hackney BB<br />
0752 364059 3 0 0<br />
Haunting Thunder<br />
050 638526 3 0 0<br />
Livingston BBs<br />
London BB<br />
01 455 6607 300/12-75<br />
1 London Underground<br />
01 863 0198 300/1200-75<br />
Mactel<br />
01 341 1719 3 0 0<br />
Mailbox-SO iliverpool)<br />
051 428 8924 300/1200-75<br />
Metrotel<br />
01 941 4285 V/Data<br />
Norview<br />
0604 20441 V / D a t a<br />
IBM Blandford<br />
0258 54494 3 0 0<br />
TRBS London<br />
01 348 9400 300/1200-75/1200-<br />
1 1<br />
2 G-General messages<br />
Below is a printout of part of a session<br />
00<br />
on SBBS Aberdeen which is on 24 hrs a<br />
H-Help with this section<br />
P-Pen-pal messages<br />
day, at 300 baud on 0224 781919, eight bits<br />
S-Sysop messages to/from<br />
no parity. SBBS is run on a C128 with a 1541<br />
disk drive. The 24K of software was written 1-Goto Main Menu (1)<br />
by Noel Gadd°, the Sysop using the Blitz 2-Goto Main Menu (2)<br />
Basic compiler, not bad eh!<br />
?-Print this menu again<br />
The time is 04:33:15 One moment loading.<br />
SPACE BAR=pause/resume, CTRL X=quit<br />
SBBS Main Menu (1)<br />
B-News/Bulletin Board info<br />
G-Goodbye/Log<br />
-H-Help<br />
with this section<br />
off M-Messaging Area<br />
Li-User log<br />
Y-Yell for SYSOP<br />
2-Goto Main Menu (2)<br />
?-Print this menu again<br />
or ? for menu :m<br />
G,H,P,S,Y,1,2<br />
or ? for menu :g<br />
The time is 04:33:55 One moment loadin<br />
SPACE BAR=pause/resume• CTRL X=quit<br />
SBBS General messages<br />
C-Check Mail<br />
D-Delete a message from file<br />
H-Help with this section<br />
M-Message catagories<br />
Q-Quick scan of messages<br />
R-Read message(s)<br />
S-Send message<br />
1-Main Menu (1)<br />
2-Main Menu (2)<br />
The time is 04:33:35 One moment loading.<br />
SPACE BAR=pauseiresume, CTRL X=quit C,D,H,M,Q,R,S,Y,1,2<br />
or ? for menu :r<br />
One moment loading<br />
SBBS Messaging menu<br />
CORNER<br />
First message E 1 Last messge 34<br />
Messge number: 1Froml-Rol =Exit<br />
?:34-34<br />
One moment loading.<br />
Message 34 Egenerall section.<br />
MESSAGE TO :ALL<br />
MESSAGE FROM :FERGUS MCDONALD<br />
SUBJECT :ANOTHER CBM BBS!!<br />
DATE :THURSDAY 20/ 2/86<br />
USER IS A :NON MEMBER.<br />
Hi folks! I have set up a BBS in Dublin.<br />
Ireland, running on a Commodore<br />
64 with W52000 and 2 disk drives. I am a<br />
heavy CBM fan. The BBS software (by<br />
me) is called SIBBS. It is an<br />
interpreter - no menus! And it is all in<br />
machine code. Give it a ring and you<br />
will see. It is QUITE different. It is<br />
refreshing to see another BBS running<br />
on a Commodore 64. Also, what does<br />
All think of the new SFID 1001 CBM disk<br />
drive with 1MB per disk?? Anyway,<br />
the board (run by moi for the Irish<br />
Amateur Computer Club) is called the<br />
IACCBBS, and ring Dublin 903341 (24<br />
Hours) on 8 bits, no par, 1 stop. 300<br />
g• Baud<br />
or ? for menu :1<br />
One moment loading<br />
Last but not Least<br />
Well that's it for another month. I shall be<br />
reviewing at least two moderns and some<br />
comms packages. Finally, a special<br />
mention to Richard James (CNET R812)<br />
•,vho wanted his name to appear in THE<br />
magazine in THE column. Null said! Don't<br />
forget to drop me a line on Compunet ID<br />
WANDA or Prestel 919992677.
Lewis They gives you the<br />
[update from across the<br />
Atlantic.<br />
LLILt ff ILI<br />
Vit<br />
HAS THIS BEEN FOR COMMODORF the<br />
"winter of discontent, or just a winter of<br />
the big freeze? In the US programs like<br />
Freeze Frame from Cardco, and lsepic<br />
from Starpoint Software, seem to reflect<br />
in their names the low point reached by<br />
Commodore's stock. By midwinter it had<br />
dived to its lowest level ever of six, down<br />
from an all time high of SO on the NY Stock<br />
Exchange.<br />
Is this great company on its way out?<br />
How can a company that has sold over<br />
four million units of the C64 be in such<br />
trouble? Even this past Christmas it is<br />
rumoured that 60% of the sales were of<br />
the old reliable, that the C128 was so<br />
sluggish that an artificial shortage in the<br />
C64 was created by holding back supplies<br />
of them in the east coast, Other guesses<br />
were that the C64 was -<br />
warehoused"<br />
order to raise its price and/or to re-<br />
iintroduce n it in a new case with some fancy<br />
new touches. The above rumours,<br />
incidently, are through the courtesy of<br />
Felix Riveria who writes in what is perhaps<br />
the outstanding computer support group<br />
publication in the US. "The New York<br />
Commodore Exchange Network News" is<br />
published monthly in newspaper format.<br />
To subscribe, write Brian A Glover, Editor,<br />
420 Clinton Avenue 5F, Brooklyn, NY<br />
11238 USA. Its cost in the US $12.00 a year.<br />
Cheap, cheap, cheap.<br />
My contact with user groups was<br />
greatly expanded by attendance at the<br />
1986 West Coast Commodore Association<br />
"Commodore Show II" this February in<br />
San Francisco. At least a dozen groups<br />
were represented. Leading the field was<br />
the grand daddy of them all, The Toronto<br />
Pet Users Group, followed by such US<br />
giants as the Oregon based US<br />
Commodore Users Group, P.O. Box 2310,<br />
Roseburg, Oregon 97470 USA, and the<br />
above mentioned NYC conglomerate. No<br />
less than nine smaller California groups<br />
were listed in the show catalogue.<br />
What's a BIG West Coast computer<br />
show like? Jammed packed with people<br />
and programs! The people were a little<br />
older on the average than those I've seen<br />
attending the shows at Earls Court or the<br />
International Commodore Show in<br />
London last year. But they were definitely<br />
not like the three-piece suit, business<br />
types that I ran into in San Francisco at an<br />
IBM compatible software show that was<br />
being held at the same time.<br />
Now for the programs which I<br />
mentioned earlier. Freeze Frame by<br />
CARDCO. Inc., 300 S Topeka, Wichita, KS<br />
67202 will quietly sit inside your<br />
computer, totally transparent to any other<br />
programs you may wish to load and use.<br />
Then when you want to make a screen<br />
dump, you call it with two keystrokes and<br />
voila!, the frame is frozen and sent to your<br />
printer. You then continue to run<br />
whatever you may have as your main<br />
program.<br />
Don't confuse two different programs<br />
coming from the US both called Snapshot.<br />
One is a utility from COMPUTE!s Gazette<br />
magazine written in machine language<br />
which can store whatever you have on the<br />
TEXT screen (up to 53 screens) and then<br />
retrieve it for display or for printing. The<br />
other is a cartridge named Snapshot 64<br />
which comes from those fine people at<br />
CSM Software., Inc.. P.O. Box 563, Crown<br />
Point., Indiana 46307 who developed the<br />
best of the 1541 Disk Drive Alignment<br />
Programs (buy the Version 2.0 at $44.95<br />
plus shipping).<br />
Snapshot 64 is touted as the "ultimate"<br />
backup utility since you are able to "stop<br />
most any program after the protection<br />
check and then resume.. .totally<br />
bypassing the protection check." Price on<br />
this utility is $49.95 plus shipping costs.<br />
Remember the exciting advertisements<br />
from Starpoint Software of Gazelle.<br />
CA 960347? They announced a utility<br />
called STARDOS which would do everything<br />
(even makes great coffee). Well,<br />
they were blocked from releasing it by a<br />
lawsuit slapped on them by SKYLES<br />
Electric Works, 231E South Whisman<br />
Road, Mountain View, CA94041. Skyles<br />
says that is was too much like their cart-<br />
70<br />
News<br />
ridge 1541 FLASH (i59.95 - on sale, plus<br />
$15.00 UK shipping charge) which was<br />
developed by the same computer expert.<br />
Starpoint is delivering one of the<br />
bargains of the year. They are marketing a<br />
256K RAM board for the Amiga functionally<br />
identical to the Commodore 1050<br />
RAM board for £99.95 + $6.00 shipping<br />
outside the USA.<br />
Isepic, which is also a Starpoint<br />
product at $64.95, is a combination hardware<br />
and software package that closes this<br />
little survey of new utilities. It "deprotects"<br />
by capturing and saving the<br />
protected program as it runs in the 64's<br />
memory. "This 'snapshot' [so help me,<br />
they advertise this one as a "snapshot",<br />
tool becomes accessible to the user for<br />
complete inspection and alteration." The<br />
quotation is from Starpoint's<br />
advertisement.<br />
The midnight modem madness<br />
continues. Commodore associated<br />
QUANTUM LINK is giving away a 300<br />
baud autodial modem if you subscribe for<br />
four months at $9,95 monthly. Viewtron<br />
charges you only $49.95 for a 300 baud<br />
Volks 6420 by Anchor Automation. They<br />
throw in a first hour on Viewtron for free.<br />
Playnet gets a bit tricky in its combination<br />
offer of a magazine subscription to<br />
AHOY, a Playnet membership kit and a<br />
modem if you subscribe to Playnet for<br />
three months and pay a fi rst time<br />
memherchin fey. nt V1E1 qS<br />
The thaw has certainly come to Amiga.<br />
Hardware prices are falling and software is<br />
flowing from the developers like warmed<br />
up maple syrup. The Electronic Arts<br />
Deluxe Paint program begins to really<br />
show what this amazing machine can do<br />
in presenting visual ideas. What's more it<br />
integrates with the Deluxe Graphics,<br />
Music and Printing modules of the same<br />
company. The games have arrived too.<br />
Flight Simulator from Sublogic, Napoleon<br />
at Waterloo by Krentek Software, Skyfox<br />
and a re-issue of the Software Golden<br />
Oldies, i.e. Pong, Eliza, Adventure and<br />
Life from EA are available now.<br />
The C128 is less fortunate in the<br />
issuance of new programs designed<br />
especially for it. True, some very fine old<br />
programs are being updated such as<br />
Vizawrite and SuperScript. And now that<br />
Commodore has issued a new version of<br />
CP/M for the 128, which really works this<br />
time, all those wonderful old CP/M<br />
business programs are there for the<br />
taking.<br />
may be including a mention of the PC<br />
10 in upcoming columns if the announcement<br />
by a PR (that's Public Relations in US<br />
english) man for X-PRESS Information<br />
Services is true. Commodore is going to<br />
try and hit the business world with a wire<br />
service which is compatible with IBM<br />
machines. They'll distribute the PC 10 in<br />
the US to clients who want the service<br />
compatible with IBM and may even offer<br />
a free Plus/4 to the less fluent businesses<br />
who want to try their service. This will all<br />
be tied in with QuantumLink to give a<br />
truly total service as well as find a use for<br />
all those great (and unsold) PLUS/4's.
Joe Nicholson<br />
continues his look at<br />
the C-16. This month<br />
— clocks and timers.<br />
IN THIS ARTICLE I SHALL ATtempt<br />
to explain some of the<br />
techniques involved in timing,<br />
interrupts and so on. I shall start<br />
with the keyboard interrupt as<br />
this is the easiest to explain.<br />
Every 1/50th of a second the<br />
computer interrupts its normal<br />
processing to execute a 'service<br />
routine'. This updates the clock<br />
and reads the keyboard,<br />
putting any new keys pressed<br />
into the keyboard buffer. It<br />
then resumes processing. The<br />
address contained in bytes<br />
$0314 and $0315 are the low and<br />
high bytes of the indirect<br />
values for the location of the<br />
interrupt. These values can be<br />
redirected in order to make the<br />
C-16 jump to your own<br />
machine code routine. This<br />
method was used in the play<br />
routine and the synthesiser<br />
article explained last month.<br />
After the user routine has been<br />
completed the program can<br />
then jump back into the service<br />
routine to update the counter<br />
etc. Alternatively it is possible<br />
to jump straight back into<br />
processing.<br />
The interrupt is normally<br />
on. The machine code instruction<br />
SEI turns the interrupt off<br />
and CLI will turn it on again.<br />
The following routine will set<br />
the interrupt vector:<br />
SEI interrupt off<br />
IDA low byte<br />
STA $0314<br />
LDA high byte<br />
STA $0315<br />
CLI interrupt on<br />
RTS return<br />
Similarly to restore the original<br />
interrupt:<br />
SEI<br />
WA SOE<br />
STA $0314<br />
LDA SCE<br />
STA $0315<br />
CLI<br />
RTS<br />
Note that most of the programming<br />
associated with<br />
interrupts has to be done in<br />
machine code for speed, for<br />
instance it is not possible to<br />
disable the interrupts from<br />
Basic. At the end of the user<br />
interrupt routine use the<br />
instruction MAP SCEOE to return<br />
Cl 5<br />
PROGRAMMING<br />
THE<br />
to the service routine. To jump<br />
back from the user routine to<br />
continue processing, ignoring<br />
the C-16's service routine, use<br />
the instruction jMP SFCB6 (IRQ<br />
exit). I won't include a demonstration<br />
of this type as the play<br />
command published in the<br />
December 1985 article on<br />
sound, and the sound synthesiser<br />
article published last<br />
month serve as fi tting<br />
demonstrations.<br />
Internal Timers<br />
There are three internal 16 bit<br />
timers in the C-16. The timers<br />
operate at a frequency of 885<br />
KHz on our PAL system<br />
machines. It therefore takes on<br />
0.0741 seconds to count all the<br />
way from 65535 to zero. Timer<br />
# 1 has the facility of being able<br />
to activate an interrupt upon<br />
reaching zero. Each timer is<br />
arranged as two eight bit<br />
registers in memory, using the<br />
normal protocol of high byte<br />
(i.e. multiples of 256) last,<br />
preceded by the low byte<br />
(remainder 0-255),<br />
The registers are arranged<br />
in memory as follows:<br />
SFFOO Timer I:11 low byte<br />
$F f<br />
-SFF02<br />
Timer # 2 low byte<br />
01 SFF03 Timer ft 2 high byte<br />
SFE04 Timer # 3 low byte<br />
T<br />
SFF05 Timer# 3 high byte<br />
iTo<br />
set a timer simply load the<br />
mtimer's<br />
registers with the<br />
estarting<br />
value; it will then count<br />
r<br />
down to zero. As the timer will<br />
#<br />
obviously have to be set in two<br />
parts, (one POKE or STA for the<br />
1 low byte and one for the high<br />
hbyte)<br />
there should therefore be<br />
ia<br />
delay of no greater than 125<br />
gus<br />
between writing the low<br />
h byte and the high byte, otherwise<br />
the timer will start to<br />
bcount<br />
down and therefore to<br />
ybe<br />
set incorrectly.<br />
t To eliminate this problem,<br />
16<br />
interrupt to occur between<br />
writing the low byte and the<br />
high byte)<br />
LDA low byte of start time<br />
STA Low byte of timer<br />
LDA high byte of start time<br />
STA high byte of timer<br />
CLI turn the interrupts back on<br />
RTS return<br />
The Timers and<br />
Interrupts<br />
Timer tt 1 is a more sophisticated<br />
timer than timers # 2 and<br />
ft 3. When this timer is written<br />
to, it sets the timer to that value<br />
as expected, but also sets the<br />
'timer tri reload registers' to<br />
that value. The timer then<br />
counts down to zero, at which<br />
point an interrupt is generated<br />
if bit three of the interrupt<br />
mask flag is set. Bit three of the<br />
interrupt status register is then<br />
set. The timer is then reset to<br />
the reload value, and the<br />
counter carries on decrementing<br />
until it reaches zero<br />
when another interrupt is<br />
generated etc.<br />
Timer tt 1 is potentially a<br />
very useful timer allowing<br />
periodic interrupts of specified<br />
delay length, for instance<br />
timers are used to generate<br />
accurate inter bit delays in a fast<br />
tape loading system which is<br />
under development.<br />
Timer #2 and timer # 3 are<br />
simpler timers. These timers go<br />
back to 65535 after they have<br />
reached zero, instead of being<br />
reset to a reload value. They<br />
still have the ability to generate<br />
interrupts when they reach<br />
zero however. To turn interrupt<br />
for timer # 2 off/on, set/<br />
reset bit six of the interrupt<br />
mask register. When the interrupt<br />
takes place, bit six of the<br />
interrupt status register is set<br />
high.<br />
The Interrupt Mask<br />
etherefore,<br />
the timer registers<br />
should be set in machine code The interrupts are turned on<br />
using the following type of<br />
routine:<br />
and off by setting/resetting bits<br />
on a register called the<br />
SEI disable interrupts. (we<br />
don't want a keyboard<br />
interrupt mask at SFIOA or<br />
decimal 65290. Bits one to<br />
71<br />
seven control the tollov<br />
, Bit 1 raster interrupt<br />
,ing: Bit 2 light pen<br />
Bit 3 timer 1 interrupt<br />
Bit 4 timer 2 interrupt<br />
Bit 6 timer 3 interrupt<br />
Bit 7 interrupt request<br />
Setting a bit high on the mask<br />
byte will enable the appropriate<br />
interrupt. Bit 2 light pen?<br />
There is no connection for a<br />
light pen on the edge connector,<br />
but there may be on the<br />
joystick port.<br />
The Interrupt Status<br />
Register<br />
This byte (at SFF09 or 65289<br />
decimal) records which<br />
interrupt has interrupted. It is<br />
important for the interrupt<br />
service routine to know just<br />
which interrupt has been used<br />
so that it knows how to act. The<br />
arrangement of bits in this<br />
register is the same as the<br />
interrupt mask register (e.g. Bit<br />
four is the timer # 3 interrupt<br />
bit). Strangely, to set a bit 'on'<br />
in this register, write that bit<br />
with a zero. Similarly write the<br />
bit with a one to reset that bit.<br />
Any interrupts from the C-16<br />
are recorded by the C-16<br />
setting the appropriate bit of<br />
this register.<br />
Timer Interrupts<br />
It is interesting to note that the<br />
three timer interrupts can still<br />
be used even when the raster<br />
and interrupt requests have<br />
been disabled with the SEI<br />
command. This is the<br />
technique used in the saving<br />
and loading of programs in the<br />
C-16. The routine at $E364, for<br />
instance (Figure 1) is used<br />
before loading/saving a block/<br />
header in the C-16. The routine<br />
at $E378, shown in Figure 2, is<br />
the opposite of the routine of<br />
$E364 and is used after loading/<br />
saving a block/header.<br />
However it is not always<br />
necessary to perform timing<br />
exercises using the method
described above, thanks to a<br />
very useful ROM routine at<br />
$E2EA. If quite accurate time<br />
delays are all that are required,<br />
the routine at $E2EA can be<br />
used. Calling this routine will<br />
generate a delay of 1/50th<br />
second. This routine is used to<br />
generate delays in the<br />
saying/loading routine, e.g.<br />
the 3/5 second between<br />
printing SAVING or LOADING<br />
and turning the screen off on<br />
saving/loading is:<br />
LDX $1E<br />
JSR $E2EA<br />
DEX<br />
BNE 4:L1<br />
CCI<br />
Note that as the routine at<br />
$E2EA turns the interrupts off<br />
to get better timing, the CCI<br />
command is used to re-enable<br />
them if you want them on<br />
again.<br />
The Clock<br />
The registers $0312 and $0313<br />
are the low and high byte<br />
pointers for the 'update clock'<br />
routine which is called every<br />
1/50th second by the C-16's<br />
service routine. This is usually<br />
set to $CE42 but can be redirected<br />
to go to a user routine.<br />
Figure 3 shows the assembly<br />
text for a clock which displays<br />
its time continuously in the top<br />
right hand corner of the<br />
screen. It also has an alarm with<br />
sound and a facility to iump to a<br />
machine code routine upon<br />
the event of an alarm. The<br />
clock redirects the pointer<br />
$0312 and $0313 (786 and 787) to<br />
a new service routine stored at<br />
$0660. The whole machine<br />
(ode program is 308 bytes long<br />
and resides between $0600 and<br />
$0728, a free area of memory in<br />
the C-16. To type this in use the<br />
C-16 Assembler published in<br />
the June 1985 copy of Your<br />
Commodore. Alternatively<br />
Figure 4 shows the code for this<br />
program in data statements<br />
with a machine code loader at<br />
10000 to POKE the bytes in. The<br />
time and the alarm time can all<br />
be set with Basic commands.<br />
The routine is stored at $0600<br />
(1536 decimal).<br />
Description of Clock<br />
Program<br />
Lines 10120-10220 initialise the<br />
routines own variables.<br />
Lines 10300-10380 turn off the<br />
clock by relocating the<br />
'update clock' routine to its<br />
original value.<br />
Lines 10500-10580 turn on<br />
clock; diverts 'update clock<br />
routine' to new service routine.<br />
Lines 10600-10700 set time. To<br />
set the time, type: 5YS1577,12:<br />
43:23. The latter three numbers<br />
are the time in hours, minutes<br />
and seconds. The system for<br />
scanning the line used in this<br />
subroutine will be explained in<br />
a later article on extending the<br />
Basic. Line 10690 then turns the<br />
clock on.<br />
Lines 10800-10910 set the alarm.<br />
This works in the same way as<br />
the 'set time' routine. It is<br />
located at $103D (4157<br />
decimal), so SYS1601,12:43:23<br />
sets the alarm and initialises it<br />
so that it sounds for 30 seconds<br />
when the alarm time is<br />
reached.<br />
Lines 11000-11990 - clock<br />
service routine.<br />
Lines 11000-11990 count each<br />
1/50th second jumping to<br />
$CE%2 if the next second has<br />
not been reached.<br />
Lines 11200-11340 update<br />
seconds.<br />
Lines 11400-11500 update<br />
minutes.<br />
Lines 11550-11690 update<br />
hours, switching back to<br />
00:00:00 after it reaches<br />
23:59:59.<br />
Line 11700 calls the routine<br />
which handles the alarm sound<br />
it it is on.<br />
Line 11710 calls the r •utine to<br />
print the time on the screen.<br />
Lines 11800-11860 check to see<br />
if the alarm time has been<br />
reached by comparing the time<br />
($D1-$DB) and the alarm time<br />
($D9$F0) byte by byte.<br />
Lines 11900-11990 the alarm has<br />
been reached. Line 11910 calls<br />
the alarm sound subroutine<br />
which starts the alarm sound if<br />
it is required.<br />
Lines 11950-11980 call a<br />
machine code routine whose<br />
address is stored in bytes 5E2<br />
and $E3, if $E8 is set.<br />
Lines 12000-12200 - Alarm<br />
routine. This handles the 30<br />
second bleeping alarm if it is<br />
on.<br />
Lines 1 21 0 5-1 2 20 0 are<br />
concerned with marking the<br />
bleeping.<br />
Lines 12500-12680 initialise<br />
alarm sound. If an alarm has<br />
been reached and the register<br />
$E4 is 0 to signify that the<br />
alarm sound is enabled, an<br />
alarm sound is generated in<br />
voice 2.<br />
Lines 12550-12570 set the<br />
duration to 30 seconds.<br />
Lines 12580-12610, set the<br />
frequency.<br />
Lines 12620-12650 'on' voice 2.<br />
Lines 12660-12670 select 29<br />
bleeps.<br />
Lines 13000-13150 Print time.<br />
This prints the time in the top<br />
right hand corner of the screen<br />
if $E9 is ---' O.<br />
Lines 13050-13090 set up the<br />
colour for the text. This is<br />
initially set to 16 (black) but can<br />
be set to other colours by<br />
POKEing address $ET<br />
Lines 13100-13150 print the<br />
characters of the time on the<br />
screen.<br />
PROEIRAM 1 CLOCK CODE<br />
10000 A=1536:DO:B=0:FORC.1TO<br />
16:READDtIFD=-1THENPRINTIK.<br />
.stEND<br />
10010 8:841POKEA,Dt4:011NE<br />
XTIREADD<br />
10020 IFOORTNENPRINT<br />
1RROR<br />
IN LINEN;PEEK(63)+2564P<br />
EEK(64):END:ELSELOOP<br />
DATA E<br />
20000 DATA 169,1,133,225,169<br />
06,133,231,169,0,133,229,13<br />
3,232,96,120, 2189<br />
20010 DATA 169,66,141,18,3,1<br />
69,206,141,19,3,88,96,120,16<br />
9,96,141, 1645<br />
20020 DATA 18,3,169,6,141,19<br />
,3,88,96,162,0,32,115,4,149,<br />
209, 1214<br />
20030 DATA 232,138,201,8,208<br />
,245,32,28,6,32,115,4,169<br />
1133,208,<br />
1759<br />
0, 20040 DATA 96,162,0,32,115,4<br />
,149,217,232,138,201,8,208,2<br />
45,169,1, 1977<br />
20050 DATA 133,228,32,115,4,<br />
96,255,0,255,0,255,0,255,0,2<br />
55<br />
120060<br />
DATA 230,208,165,208,2<br />
0, 01,50,240,3,76,66,206,162,48<br />
1060,58,169,<br />
2250<br />
820070<br />
DATA 0,133,208,230,216<br />
8,196,216,208,56,134,216,230,<br />
3<br />
PROGRAM CLOCK TEXT<br />
10 60T0900<br />
100 E.0:11:0:14:E4."<br />
110 DWIDS(A4,A,1):IFD$440<br />
RD42<br />
61 112 IFDWOORE=2THENES=E44<br />
ORD 41E22160T0140<br />
4."T<br />
HEN<br />
72<br />
RET<br />
URN<br />
Figure 5 shows a list of all<br />
the system variables used in the<br />
p rog ram.<br />
Note that the machine code<br />
jump routine cannot last for<br />
any longer than 1/50th second.<br />
At the end of the routine a<br />
JMPSCE42 should be used to<br />
exit the routine.<br />
In conclusion, to use the<br />
clock, first of all initialise by<br />
typing in 5YS1536.<br />
To set the time: 5Y51577,<br />
12:23:36<br />
To set the alarm: SYS1601,<br />
07:35:26<br />
To turn off the clock: SYS1551<br />
215,165,215,201, 2839<br />
20080 DATA 54,208,46,134,215<br />
1<br />
2213,230,212,165,<br />
2709<br />
320090<br />
DATA 212,201,54,208,28<br />
0034,212,230,210,201,52,208,<br />
, 10,196,210,208, 2574<br />
2<br />
20100 DATA 16,134,210,230,20<br />
19,208,10,165,209,201,50,208,<br />
3<br />
4,134,210,134, 2332<br />
20110 DATA 20942001<br />
,<br />
17,7062,0081,208,213,216,20<br />
0<br />
6,320 8,13,202, 1921<br />
6<br />
20120 DATA 208,247,32,234,6,<br />
,<br />
165,232,240,3,108,226,0,76,6<br />
2<br />
6,206,165, 2214<br />
1<br />
20130 DATA 229,240,22,198,22<br />
3<br />
9,165,229,41,1,240,2<br />
,<br />
1133,230,173,<br />
2333<br />
2<br />
169,32, 20140 DATA 17,255,41,159,5,2<br />
030,141,17,255,96069,226,201<br />
80,240,0,<br />
2054<br />
, 20150 DATA 169,8,141,255,4,1<br />
341,253,4,169,2,141,16,255,16<br />
87,240,141,<br />
2108<br />
, 20160 DATA 15,255,173,17,255<br />
1,41,144,9,40,141,17,255,169,<br />
329,133,229,<br />
1922<br />
420170<br />
DATA 96,165,225,201,0,<br />
, 240,20,162,8,165,231,157,31,<br />
8,202,208, 2119<br />
20180 DATA 250,162,8,181,208<br />
057,31,12,202,208,248,96,0,<br />
0,0,0, 1763,-1<br />
113 IFDWP4NDDW5"THEN130<br />
114 IFDWOORDS.4<br />
1115<br />
IFDWPTHENI.1:EOT0140<br />
THEN140<br />
120 E=1:RETURN<br />
130 IFIN0THEN11(8110)0A1.(D4<br />
)1ELSESm(8416)+DEC1B)<br />
140 001160TO110<br />
200 READACIFAWEND<br />
.<br />
THENRET
1<br />
URN<br />
210 IFA$2"ORASC(A$)859THEN2<br />
00<br />
THENRESTORMELSERESTORE9999<br />
2750 READAWFWIND<br />
1INT")><br />
OK. IEOT01000<br />
9210 EOMIDCF1,1,1)11FE100<br />
'OREONfITHEN9240<br />
9220 IFDECON(THEN9300<br />
GI<br />
9682 DATA*TANDC8579D899881A G<br />
91595,TXDBEC86696,TYD8CC8459<br />
44.<br />
250 COLEFTUAS,31:0$416HT$ THENPR 2760 PRINTPEEK(63)+256IPEEK( 9230 NEXT! 9690 DATA"AXIAA,AVIA8,SX18A,<br />
(A$,LEN(A$)-3*(LEN(AC>3)1:H 64)<br />
9240 PRINT'ADDRESSINB MODE E XA18A,XS19A,YA198f<br />
.IPEEK(63)4.2561PEEK(64)1RETUR 2770 1 IFU4THENBETAWFA$0" RROR IN "HIRETURN 9999 REM<br />
400 A$ED$:8$.<br />
1410<br />
6OSUB100<br />
,' 420 IFE21THENPRINTPT ERROR<br />
'THEN1000<br />
2780 A 60<br />
. $ 5000 PRINT"(DOWN)ASSEMBLPIP<br />
1027 RINTICDOWN/IST<br />
50<br />
9300 6.DEC(MIDCF$,I+1,2)):P<br />
OKED,6:D2D+1:9gS+1<br />
9370 IFKB2ORK850RKN60RKs1IOR<br />
KolOORK812THENPOKED,E1:601094<br />
10000 DATA";C-16 CLOCK WITH<br />
ALARM<br />
10010 DATATC)1986 JOE NICH<br />
OLSON<br />
IN 'H:RETURN 0IS*01P81:RESTORE9999 80 10100 DATAIRE 10600<br />
430 P0KED,80.041:S44.1100 5100 6OSUB200:1FAWEND"THEN 9380 IFKR7ORM0RX213ORKs4TH 10110 DATA';<br />
ItIFUE"THENRETURNIELSEGOTO 5500:ELSE7000 EN9450 10120 DATP;INITIALISE<br />
410 5110 60SUB8000:RESTOREF:READ 9400 IFKO9THENRETORM 10150 DATAiLDA 01<br />
500 01:A$2D$1IFA$ A1:60T05100 9405 IFPNIORBN01HEN60T09480 10160 DATAISTA 1E1<br />
01 URN 5500 PRINT<br />
9410 111B-S-I:1F1(0ANDI)-12/T 10170 DATPLDA 116<br />
THENRET<br />
510 OKEFT$(14,1):1FO$ 1a0:9•0:P221RESTDRE9999<br />
HENI*256+1 10180 DATAITA $E7<br />
0HEN8$s":02:60TO800<br />
1520<br />
IFO$1<br />
10<br />
530 IFRI6HICA$,2)<br />
7A<br />
0W<br />
1WTHEN8<br />
I540<br />
IFR16HICA$,1)erANDO$1.<br />
THENWI<br />
° (<br />
RETUR 1550<br />
1 IFRIGHT$(14,1)29°ANDO$z<br />
N0<br />
1T<br />
1<br />
( 560 H IFRI6HT$(1$,2)<br />
1HT$(A1,2)2WTHEN8W,':05<br />
T0<br />
E<br />
:<br />
H0"ORRIS<br />
+(RI6HT$(0,1)B<br />
N<br />
6<br />
E1<br />
570 8 IFO•WTHENA201:K89:13$<br />
0<br />
N1"):60T0800<br />
$<br />
":ELSEK212<br />
T<br />
8<br />
800<br />
0<br />
6OSUB100<br />
0<br />
$<br />
810<br />
)<br />
IFE02THEN6OT0970<br />
8<br />
2<br />
820 IFPITHEN8=0:6OT0870<br />
1<br />
0<br />
" 850<br />
1<br />
FORI.0TOTOFRISHI(E0,2)<br />
mil(I)THENEOL2(1):6016870<br />
0<br />
) 0<br />
860 NEXTI:PRINT"LABEL NOT FO<br />
•<br />
UND<br />
1<br />
IM40110<br />
0<br />
870<br />
0<br />
IF(K850R06ORK:12)AND(8)<br />
1<br />
2550RE=2)THENK8K+1-(K(12)<br />
:<br />
4<br />
880 6 RETURN<br />
1<br />
900 0 CLRIDIML1110011DIKU(100<br />
6<br />
):KEY2,1ATA<br />
1<br />
0<br />
1'LIST10000-<br />
0<br />
1<br />
4.CHR 1910<br />
8 KEY6,'DIRECTOW+CHR1(13<br />
0<br />
$(34):KEY3,<br />
*CHR1(13)<br />
0<br />
81000<br />
0 INPUTAWFA$<br />
0 01010<br />
Aml<br />
02000<br />
0ITHENEND IFA$<br />
04:CMD4:PRINT:60101000<br />
P1 2040 IFAWPO'THENITO:PRINTO<br />
141CLOSE4:60101000<br />
THENU<br />
2070 IFWILISPORAWL"THEN<br />
t1i<br />
66102700<br />
O<br />
P<br />
2080<br />
E<br />
IFAWSYMBOL'ORA0cIPTH<br />
N<br />
ENPRINTIYMBOL TABLE"IFORB80<br />
4<br />
TOTIPRINTWE' AT:IL(S)<br />
1<br />
:NEXT<br />
2100 IFAWASSEMBLE"ORAWA'<br />
THEN5000:ELSEI000<br />
2700 680:INPUTITART016:1F6<br />
(DOWN)2<br />
5510 GOSU8200:IFAWEN0sTHEN<br />
ND PRINT'>) OK.ut60T01000<br />
P5515 AIFMIDCA$ S P<br />
I1510D 45520<br />
IFASC(C$)s58THENCOLEFT<br />
1$(13,3):DWI6HT$0$,LEN(D)<br />
1)1<br />
-34.(LEN(D$) >3))160105520<br />
00<br />
5530 6OSUB8000:RESTOREF:READ<br />
THEN5<br />
ASIBOT05510<br />
7000 IFASC1C11058THEN5110<br />
7010 T.Tfl:IFT)100THENPRINT"<br />
TOO MANY LABELS AT "H:GOT010<br />
00<br />
7013 1.11T)416HT$(3,2)<br />
7016 IFMID1(A0,4,1)2<br />
115":A.516OSUB800:LVT)41160<br />
8705100<br />
17020<br />
Ll(T)41C1..LEFT1(00,3):<br />
THEN8 OORIBMT1(D$,LEN1D11-34.1LEN1<br />
D$03))160T05110<br />
8000 01181<br />
0"THENA141:60SUB100:1)213:94:<br />
RETURN ":FOOFC<br />
8010 W0RE IFASC(C1).59THENRETURN<br />
8020 IFC$.<br />
1UB1001S.BIRETURN<br />
TRU"TH<br />
8100 IF CleTEX<br />
ENA 1LEN(DE:POKED,ASC1MIDUDI,B,<br />
$40:605<br />
THENFORS2<br />
11):SoPI:DuDfl:NEXT:RETURN<br />
ITO 8150 1FC12<br />
19000<br />
SOSUB500<br />
BYT 9100 RESTORE9500WASC(LEFT$<br />
1(C$0))-65/110)<br />
THENGO<br />
9110 READF$<br />
T0400 9120 IFLEFTW0,2).1116HT1(C1<br />
,2)THEN9200<br />
9130 A=INSTR(F1,<br />
10THENFWI6M11(F1,LEN(F1)-A)<br />
, 60109120<br />
19140<br />
IFRIEHT$0,1W0THENP<br />
,3)1IFAO RINTIYNTAX ERROR IN 4:RETU<br />
RNIELSE9110<br />
9200 FORIE3TOLENIFUSTEP3<br />
9420 IFI
i<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
•<br />
1<br />
1<br />
1<br />
•<br />
1<br />
.<br />
1<br />
1<br />
1<br />
1<br />
1<br />
3<br />
1<br />
3<br />
I<br />
10870 DATPCMP 18 11840 DATAIME RtLC<br />
10880 DATA4NE R:T3 11850 DATAIEX<br />
100 DATPLDA 11 11860 DATAINE R:L5<br />
10900 DATAITA 1E4 11900 DATPOLARM!<br />
10905 DATANSR 10473 11910 DATANSR IOS<br />
10910 DATA<br />
11950 DATPLDA 1E8<br />
11000 1 DATA'; 11970 DATAIEB R:LC<br />
RTS 11010 DATPICLOCK SERVICE RO 11980 DATANMP (1E2)<br />
UTINE 11990 DATA":LC JMP 10E42<br />
11050 DATA<br />
12000 DATA";<br />
11100 1 DATA";UPDATE JIFFY<br />
ORS 11110 DATAIINC<br />
11120 1 0 6DATA 6<br />
111130<br />
0 DATA<br />
LDA 611140<br />
DATAIIEB R:L1<br />
$ CMP 11150 0 DATANMP 0 10E42<br />
111200 5 DATP:UPDATE 0 SECONDS<br />
12010 DATA<br />
. 12020 DATA<br />
OLARM . 12030 DATAIEB Rae<br />
S:AS 12100 UDATAIEC B R 1E5<br />
OL12105 DU DATANLDA A T I<br />
1E5<br />
N112110 E EDATA'AND 5 61<br />
12130 DATAIEG R:L9<br />
11210 DATA*11.1 LDX 148 12140 DATA<br />
11220 DATA<br />
112150<br />
DATAItL9 STA 1E6<br />
111225<br />
DATPLDA 10 LDA 12160 DATA<br />
LDY 11230 DATAITA<br />
111240 5 DATAIINC 8 1DB<br />
1 112170<br />
1 DATPAND 2 0 119F<br />
LDA 12180 DATAIDRA 1E6<br />
11250 DATA'CPY 1DB 112190 F DATAITA F 1 1FF11<br />
11260 DATAINE R:L2<br />
11300 DATAITX 1D8<br />
11310 DATA"INC 107<br />
11320 DATA<br />
112200<br />
DATA':LB RTS<br />
12500 DATA";<br />
12510 DATCON ALARM SOUND<br />
12520 DATA":0S LDA 11E4<br />
111330<br />
DATA<br />
12530 DATAPCMP 10<br />
LDA . 11340 DATA<br />
12540 DATAIEB R:L7<br />
1CMP 111400<br />
0 DATP:UPDATE 7 MINUTES 12550 DATA1.7 LDA 1F8<br />
0BNE 11410 5 DATAITX 4 1D7 12560 DATAITA 104FF<br />
R 11420 : LDATPINC 2<br />
12570 DAT:VITA 10m<br />
11430 DATPCPY 1D5 12580 . DATAILDA 1102<br />
11450 DATA<br />
111460<br />
DATAITX 105<br />
BNE 11470 DATPINC 104<br />
12590 DATAITA 1FFIO<br />
12600 DATPLDA 11F0<br />
12610 DATAITA 1FFOF<br />
R11480 1DATANLDA L 2 104 12620 DATAILDA 1FF11<br />
11490 DATMCMP 154<br />
11500 DATAINE R:L2<br />
12630 DATA'AND 1190<br />
12640 DATPORA 1128<br />
11550 DATAI;UPDATE HOURS<br />
11560 DATAITX 1D4<br />
12650 DATAISTA 1FF11<br />
12660 DATPLDA 129<br />
11570 DATAIINC 102 12670 DATAITA 1E5<br />
11580 DATPCMP 052<br />
11590 DATAINE RtL3<br />
11600 DATAICPY 102<br />
11610 DATAINE R:L2<br />
11620 DATAITX 102<br />
11630 DATA<br />
111640<br />
DATAINE R:L2<br />
INC 11650 DATA":1.3 LDA 101<br />
11660 $ D DATA I<br />
111670<br />
DATAINE R1L2<br />
12680 DATP:L7 RTS<br />
13000 DATA':<br />
13010 DATA";PRINT TIME<br />
13020 DATA<br />
13030 1 DATPCMP 10<br />
13040 :PT DATAIEg RILD<br />
13050 L DDATA'LDX A 18<br />
113060 EDATPLDA 1 1E7<br />
13070 DAT:II:LA STA 2079,X<br />
13080 DATA<br />
CMP 11680 DATAITX 102 13090 1 DATAINE RILA<br />
111690 5 DATAITX 0<br />
13100 DEXDATPLDX<br />
118<br />
11700 DATA":L2 JSR AS<br />
11710 DATA'JSR :PT<br />
13110 DATP:LB LDA 00,X<br />
13120 DATAITA 3103,X<br />
11800 DATA";CHECK IF ALARM 13130 DATAIDEX<br />
11810 DATA<br />
13140 DATA1NE RILB<br />
111820<br />
DATAitL5 LOA 1D0,X 13150 DATP:LB RTS<br />
LDX 11830 DATA"CMP $D8,X<br />
1 8<br />
63000 DATAIND<br />
•<br />
74<br />
• Commodore inn computer<br />
• 128D coreputer • 19001.1<br />
• Commodore 128 • 1570<br />
C<br />
m<br />
,<br />
c<br />
o<br />
m<br />
m<br />
o<br />
d<br />
o<br />
r<br />
• Commodore 1571 del t drive<br />
• Commodore 128 computer<br />
is certainly the best vrordprocesttor we've yet soon on any<br />
computer, ever! Written specially for the 125. VizaWrile Classic<br />
e makes maximum use of the speed, memory and 80-Column<br />
display, showing your document exactly as It will be prInted_<br />
with a 30,000 word disk dicbontey, massive 55K teat area. proportonol printer support<br />
plus built-In NIO fonts for CBMIEpson type printers, eaay<br />
-lull<br />
function caeulator. 'newspaper style' cattewee, mall merge._ and much, much more!<br />
te<br />
- FANTASTIC SUMMER SAVINGS ON ALL VIZA PRODUCTS!<br />
uSo ! p u l l - d o w n '<br />
m• litzaWrIte e n 'Classic u s 121 . "az' E76 it. • VizaStar 128 'puss C96 .5<br />
• VitaWrite 64 'Profemme& £ 4 9 . 1e, • VizaStar 64 XL5 pArt f 76 as<br />
• VIzaWrite 64 icarIndge) (see f 69 as • VizaStar 64 XL4<br />
• VizaWrde CBM PC £ £269.00<br />
• SupeeScripi 80966296.702 1115.00<br />
• SuperScripi 314.6000 8 88.25<br />
• SuperBase 80516.8296.702 1115.00<br />
• &low:Deice 00e662e5.700 2230.00<br />
• SuperSpel 3/410000 3 37.50<br />
• Cale Result CBM PC 3 318.25<br />
• Cato Result 700 2 258.75<br />
• Cale Result 8000 2 228.05<br />
Are yeu a two-<br />
linger typist?<br />
Then why not let<br />
SuperType help<br />
you loaf n lo touchtype<br />
the last and easy way... with your<br />
computer az who leached AS the family can<br />
learn ters useful Mill, at their own pace..<br />
and profi t from the very latest computeracted<br />
training and lererback techniques!<br />
ON TAPE 9 2 5 Claes!<br />
ON DISX p.at E 21 .95i<br />
• Smon's Basic (caul)<br />
• PeiSpeed 64<br />
-55-ee £35.09<br />
- 34.95<br />
• Basic 120 compere<br />
• Super 'C' 125<br />
£44.95<br />
-6+95 59.95<br />
• Oxford Pre,cal 64<br />
• Oxford Pascal (tape)<br />
• JelPack 64<br />
-49,95<br />
s<br />
-eE,95<br />
e05.03<br />
42.95<br />
19.95<br />
29.95<br />
• SuperBarm 125<br />
• SuperScfpt 128<br />
• Commodore Script 128<br />
-9915 64.95<br />
499765 69.95<br />
49.95<br />
• ...le[Pack (tape)<br />
• Super Pascal 64<br />
• Assembler/monitor 64<br />
7-64-65<br />
e-1499<br />
14.95<br />
59.95<br />
18.95<br />
• C120 Tricks & Tips (Wok) 12.95<br />
• StopeeBase 64 ei!9-95 5.4.9s<br />
• SuperBase Staler 64 -59,95 29.95<br />
• PowerPlan 54<br />
N Precacale II<br />
• Metier 64<br />
-44799<br />
4-69-.<br />
.95<br />
a-1997510<br />
38.95<br />
49.95<br />
39.00<br />
• SuperScript 64<br />
• SuperType 64<br />
• S.,perType (tape)<br />
49.95<br />
-0499 21.95<br />
-t995 16,95<br />
WANT IT TOMORROW???<br />
Prices Include VAT and POSTAGE<br />
and are correct on going to press.<br />
Order by poel or phone, using<br />
cheque, Access, BarclayiViza or<br />
postal order. Despatch is by same<br />
day tat CLASS post Product data<br />
avertable on request, or phone for<br />
advice It In doubt ' R E F A391<br />
11 you're as Impressed as we are with the new Commodore 128<br />
Cerrouter, you'll be even more Impressed with the new Software<br />
theta avertable for 4 now! Akoady worn shipping Superease 128<br />
(1.99.415 L64.95), SuperSerIpt 128 (L8:5.05 L89.95). VizaWrite 120<br />
Classic (L9$.05L76.95), VizaSiar 120 (CipeillS £95.95) and now<br />
Basle end C compilers (Pascal ready eoont , so watch MS space!<br />
£479 Commodore 1570 disc &we<br />
f 549ss • isoIC monitor 40/80 colour<br />
C429 Bs 1111 190084 monitor 40/50 mono<br />
E259.es • RS232 or Parallel inlerfaces<br />
1E249 as • tukiEEE • Parallel Interlace<br />
LAKESIDE HOUSE, KINGSTON HILL, SURREY. KT2 7CIT.<br />
C184es<br />
£279.s<br />
f94e1<br />
f29es<br />
C7911<br />
1 year guarantee on all Commodore products Prices subject to availablity VAT Included.<br />
Ronne ndd ES loi 3-day delivery or El 0 tor Ontapost overnight. Ininrfaces post tree,<br />
VizaWrite Classic 128 et a much enhanced successor to the<br />
best-selling VizaWnle 64. which THE TIMES leatured in three<br />
seirdee, calling it 'a creative writer's dream' VizaWrite Classic<br />
>45 E 6 6 9s<br />
Transform your Commodore 64 into a full<br />
leatured professional database system.<br />
with up to 1000 characters per teCerd On<br />
up to four screens.., and up to 128 Home<br />
per record, deilnable as key. text, numeric,<br />
result or date i n lees of up to 16 rratiOn<br />
Characters! Superease 64 even has calculator and calendar functions, easy Input<br />
From wOrd NocoNmr or data hies, both menu-driven and program control, morting<br />
and searching.. !trey defi neble report and screen 'formals_ Superbase 64 is artentai<br />
if you want the most from your 64! Supplied on 1541 disX with excellent tutorial<br />
and faineance manual, plus aucNo teaming tape..<br />
For C6.4 and PLUS 4 7,9.05 C54.os! F o r Cl28 .9475 E64.95!<br />
Although we are by tar the largest UK retailer or SuperBase, VizeStal<br />
arid VizaWr ire For [he Commode., E4, tor over fi ve years we have also<br />
supported the best software for The Commodore business computer....<br />
So if you have a CEMPET 3000, 4000, 8000. 700 or PC, then don't<br />
forget us... we hived ei lorgonen you! Why not phorto or write for out<br />
CBM/PET calalogue. and fi nd out all about the products feted below<br />
("When ordering, please quote your computer & disk model number.<br />
The Anatomy of the 128<br />
With neatly 500 information-packed pages<br />
this is THE book to get about your nem<br />
Commodore 12S- the insider's guide<br />
to the secret. ol this powerful computer<br />
Fully documented ROM istings of both Bask<br />
and the Kernel... memory maps... zero-peg.<br />
listings.. peril. intemaale, boot roubees.<br />
SID, VIC, ZOO & 80-column chips. , mornon<br />
management assembly code.., enlarging thr<br />
screen 040 x 200 graphics all rho & mud<br />
more for only £12,95! (Allow 5 days delivery<br />
CALL US TODAY!!! O N 01-546-7256<br />
were<br />
TEL D1-546-7255
Bill Bremner begins a series<br />
designed to help you get the<br />
most out of your disk drive.<br />
BEFORE I TRY TO EXPLAIN HOW THE<br />
1541 Disk Drive works, let us discover<br />
what brought about its unique design and<br />
unravel some of its peculiarities.<br />
Most modern computers employ an<br />
all-singing all-dancing (albeit expensive)<br />
Floppy Disk Controller or FDCtoconnect<br />
up to a disk drive. A software package<br />
called a Disk Filing System (DES) or Disk<br />
Operating System (DOS) is then loaded<br />
into RAM or plugged in as ROM and<br />
manages the controller, to perform such<br />
tasks as formatting, reading, and writing.<br />
Of course, the more complex the DFS or<br />
DOS required, the more space is taken up<br />
inside the computer (the BBC micro uses<br />
the plug in ROM method, Apple and Atari<br />
both load their software into RAM). There<br />
are quite a few advantages in using this<br />
type of system: fast loading and saving,<br />
and a variety of increasingly complicated<br />
and fashionable drives. However, the<br />
restraint on memory usage restricts the<br />
6522 VIA<br />
FROM<br />
AND\<br />
SERIAL BUS<br />
INTERFACE CE<br />
( COM PU I Ey<br />
T<br />
O<br />
16K ROM<br />
6522 VIA<br />
DISK<br />
CONTROLLER<br />
INTERFACE<br />
1 5 et 1<br />
PROGRAMMING<br />
THE<br />
6502<br />
CPU<br />
DATA BUS<br />
2K RAM<br />
02<br />
ADDRESS BUS<br />
Figure 1<br />
(NOT TO SCALE)<br />
WRITE<br />
LOGIC<br />
ADDRESS<br />
DECODER<br />
b. C. d. e. g• h. m . n. a. P•<br />
HEADER BLOCK<br />
Figure 2:<br />
75<br />
DATA BLOCK<br />
TO AND<br />
FROM<br />
DISK<br />
NEXT<br />
SECTOR
versatility of supporting software, data<br />
storage is, on the whole, less efficient, and<br />
incompatability problems often arise with<br />
third party and tape software.<br />
The 1541 Disk Drive evolved from the<br />
1540. which was designed for the Vic-20,<br />
and, because of the limited amount of<br />
memory in the Vic, Commodore had to<br />
find a way around a memory based DOS.<br />
So was born the 1540, an intelligent serialbus<br />
device which controlled all its own<br />
formatting, reading and writing, as well as<br />
intricate sequential and random-access<br />
file handling. Unfortunately, it was serial<br />
(sl000www), not parallel (fast), and it had<br />
quite a few bugs (it sometimes thought it<br />
was a dual drive), but, after all, anything<br />
was better than tape. When the 64 arrived<br />
on the home computer scene, it was<br />
decided a new disk drive should follow<br />
with it, but as the Vic was still selling, the<br />
new drive would have to be compatible<br />
with that too. So was born the 1541, still<br />
slow, still with bugs, but relatively cheap,<br />
quite efficient, and pretty reliable.<br />
Because the drive is intelligent, and<br />
thus sell-supporting, there is no need for<br />
either disk controller or dedicated disk<br />
software inside the 64. The control unit<br />
inside the 1541 is a 6502 based computer<br />
much like the Vic or 64, with RAM, ROM<br />
and Interface chips. This means that at the<br />
end of your serial lead is a fast storage<br />
device, which, with a little understanding,<br />
can be programmed much the same as the<br />
host computer it is attached to.<br />
Inside the 1541<br />
If you are prepared to open up the 1541<br />
you will find relatively little inside that<br />
looks like a computer. The circuit board,<br />
sitting atop the mains transformer and the<br />
drive mechanism, contains the control<br />
electronics at the front end, and the actual<br />
computer circuitry at the back. This is<br />
much more Spartan than the Vic or 64<br />
boards, as it needs neither audio nor<br />
visual related chips. Two 6522 Versatile<br />
Interface Adaptors handle serial bus<br />
communication and control the drive<br />
mechanism, as well as supplying timing<br />
and interrupt facilities for the processor.<br />
The Disk Operating System software is<br />
held in two 8K ROM chips,and 2K of RAM<br />
not only provides the necessary<br />
workspace for the 6502, but is also used as<br />
buffer storage, A handful of other support<br />
chips, including an address decoder,<br />
complete the quota,<br />
1541 Block Diagram<br />
The 16K of DOS is split into two sections:<br />
the Interface Processor or !FP for short,<br />
which manages the host computer related<br />
functions such as file manipulation and<br />
serial bus communications, and the<br />
Floppy Disk Controller or FDC which<br />
controls the Read-Write head and data<br />
storage. The 6502 Processor has to share<br />
time between the FOC and the !FP, which<br />
often reduces the effective operating<br />
speed of the 1541. The FIX. IP and<br />
Interface Chips will all be elaborated on<br />
individually as the series progresses,<br />
together with a full RAM memory map.<br />
Disk Format<br />
In order for the DOS to fi nd its way<br />
around the disk a format routine is used to<br />
divide the disk surface up into tracks and<br />
sectors. 35 tracks are formatted in all, track<br />
one being the first and outermost, and<br />
track 35 the innermost, with the directory<br />
on track 18, Each Track is further divided<br />
up into 17 or more 256 byte sectors,<br />
numbered zero upwards. To pack as<br />
much data into the available space, Commodore<br />
adopted a scheme where the<br />
number of sectors on a track increases the<br />
further out, and thus longer, the track is.<br />
However, this method by itself would not<br />
have worked because even if the Read-<br />
Write head is positioned on track one or<br />
35, it still takes the same amount of time<br />
for the disk surface to rotate once. The<br />
larger the track, the higher the velocity it<br />
has when it passes under the head, so to<br />
counter this the data is actually written<br />
and read to and from the disk at a faster<br />
rate depending on how far out the track<br />
is, The data bits are "clocked" in and out<br />
at approximately 300,000 bits/sec on the<br />
outermost tracks and 250,000 bits/sec on<br />
the innermost. The track layout is divided<br />
into four different zones:<br />
Zone<br />
1<br />
Track No.<br />
1-17<br />
Sector Range<br />
0-20<br />
Sectors/Track<br />
21<br />
Clock Rate<br />
307,692 bits/sec<br />
2 18-24 0-18 19 285,714 bits/sec<br />
3 25-30 0-17 18 266,667 bits/sec<br />
4 31-35 0-16 17 250,000 bits/sec ec<br />
Data Encoding Scheme<br />
Commodore again opted for a more<br />
space-efficient recording method to store<br />
the individual bits on the disk. The most<br />
commonly-used storage scheme is FM<br />
GCR Table<br />
Hex Binary GCR : Hex Binary GCR<br />
$00 0000 01010 $08 1000 0100<br />
$01 0001 01011 : $09 1001 111001<br />
$02<br />
$03<br />
$04<br />
$05<br />
$06<br />
$07<br />
0010<br />
0011<br />
0100<br />
0101<br />
0110<br />
0111<br />
10010<br />
10011<br />
01110<br />
01111<br />
10110<br />
10111<br />
:<br />
:<br />
:<br />
:<br />
:<br />
:<br />
WA<br />
SOB<br />
$0C<br />
SOD<br />
SOL<br />
$0i<br />
1010<br />
1011<br />
1100<br />
1101<br />
1110<br />
1111<br />
110<br />
111<br />
001<br />
0110<br />
1<br />
111110<br />
110101<br />
.<br />
0<br />
1<br />
76<br />
(Frequency Modulation) which involves<br />
writing a stream of clocking bits, with a<br />
data bit occurring in between if a ''1"<br />
needs to be written. This is expensive in<br />
data storage space and so the 1541 was<br />
designed to use a self-clocking method<br />
called Group Coded Recording, GCR for<br />
short (Apple micros also use GCR). Prior<br />
to being written on to the disk, every data<br />
byte is converted into a form which can<br />
neither be confused as a sync mark nor<br />
affect reading accuracy. This is achieved<br />
by splitting the byte into two halves, or<br />
four bit nibbles, and using a look-up table<br />
in the ROM to convert each half into a five<br />
bit result.<br />
For example, to convert the eight bit byte<br />
$A5 (10100101) into GCR, the byte is first<br />
split into two four bit hi-lo order nibbles<br />
1010 and 0101. Using the conversion table<br />
these nibbles now become 11010 and<br />
01111 respectively, and so our completed<br />
GCR byte is, 1101001111. Using Group<br />
Codes Recording, no combination of any<br />
five bit GCR nibbles will ever produce<br />
nine consecutive binary ones (used as a<br />
sync mark), and no more than two<br />
consecutive binary zeros will appear in a<br />
10-bit GCR byte or combination of bytes<br />
this is for speed accuracy when clocking<br />
bits back into the 1541 during a read).<br />
However, we now have a problem when<br />
manipulating this data. The 6502 can<br />
address only one eight bit byte at a time,<br />
whereas our new byte is now 10 bits long.<br />
Therefore the conversion routine inside<br />
the DOS actually converts four bytes at<br />
the same time. This is the minimum<br />
amount of bytes that can be converted by<br />
an eight bit processor (4* 10-bit bytes= 40<br />
bits = 5 * 8-bit bytes), Thus, when writing<br />
data, four eight bit bytes are collated and<br />
then converted into four GCR 10-bit
ytes, and written as five eight bit bytes.<br />
This all sounds a bit confusing (if you'll<br />
pardon the pun) so show you an<br />
example:<br />
4 8-bit bytes : $08, $AA. $01, $01<br />
in Binary : 00001000, 10101010, 00000001,<br />
00000001<br />
4-bit nibbles : 0000.10001010,1010.0000,<br />
0001, 0000, 0001,<br />
in 5-bit GCR : 01010. 01001, 11010, 11010,<br />
01010, 01011, 01010, 01011,<br />
in 8-bit GCR 01010010. 011101010,<br />
10100101, 00101101. 01001011<br />
in hex : $52, $75, $A5. 52D, $43,<br />
Thus our original four eight bit bytes $08-<br />
$AA-S01-$01 are actually written on to the<br />
disk surface as $52-$75-$A5-S2D-$4B.<br />
Reading GCR bytes off the disk is merely<br />
the same process reversed.<br />
5 GCR bytes : $52, $75, $A5, 52D, $43,<br />
in 8-bit GCR : 01010010, 01110101,<br />
10100101, 00101101. 01001011<br />
in 5-bit GCR 01010. 01001,11010.11010.<br />
01010, 01011, 01010. 01011<br />
4-bit nibbles : 0001, 0000. 1010, 1010, 0000,<br />
0001, 0000, 0001,<br />
in Binary ; 00010000, 10101010, 00000001,<br />
00000001<br />
4 8-bit bytes : $OB. $AA. $01, $01<br />
1Simple, really!<br />
Sector Format<br />
Each sector on a track is comprised of two<br />
main parts: the Header Block. or ID Field,<br />
which supplies information on the<br />
position of the sector, and the Data Block<br />
of data. Preceding each of these fields is a<br />
unique synchronisation Field or Sync<br />
Mark, used to identify the beginning of<br />
the block and immediately following the<br />
block is a short gap which gives the IDC<br />
breathing space to allow for fluctuations<br />
in drive speed. The sector header is<br />
written only once, during formatting, but<br />
the data field, including its sync mark, is<br />
re-written every time data needs to be<br />
recorded on the disk.<br />
Header Block<br />
a) Sync Mark: Written as five eight bit<br />
GCR SFI bytes ( 40 consecutive one bits)<br />
the sync mark is a flag to tells the DOS that<br />
a. block is coming up next.<br />
b) Header Block ID: This is the Block<br />
Identifier Byte which informs the DOS<br />
that this is a header field. Its value is always<br />
$08.<br />
c) Header Block Checksum: This is the<br />
header field checksum byte created by<br />
EORing together the track number, sector<br />
1000 Hi."0123456789ABCDEF"<br />
1010 PRINTI(1) HEX TO 6CR'<br />
1020 PRINT"(2) SCR TO HEX"<br />
1030 PRINT"(3) QUIT"<br />
1040 GETMIFIS:"THEN1040<br />
1050 1=VAL(3):0N160101100,1<br />
200.1070<br />
1060 60T01040<br />
1070 END<br />
1100 NS=4:N5=NS4-1:EL:20B:EH:<br />
246:NL:82:01H=00:R1.:00:RH=03<br />
1110 GOT01500<br />
1200 NS=5:N6=NS-1:EL:230:EH:<br />
247:1000:NH:03:K=82:RH=00<br />
1500 OPEN15,8,15<br />
1515 FOR K=0 TONS-1<br />
1520 PRINTIYTE11";01::INPUT<br />
HD$<br />
1530 IFLEN(HH)(>2THENGOT015<br />
20<br />
1540 GOSU82100<br />
1550 PRINT415,'N-W"CHRORJK<br />
)CHR$(14H)CHR$(1)CHRS(D)<br />
1560 NEXTK<br />
1570 PRINT1115,"M-WTHR$(48)C<br />
HRS(0)CHR$(2)CHR$(0)CHR$(3)<br />
1580 PRINT015,4-01"CHR$(52)C<br />
HR$(01CHR$11)CHR$(0)<br />
1590 PRINT115,<br />
RCM 1<br />
M- 1595 PRINT"<br />
PCHRS(EL)C<br />
1600 FORK=0 TO N6-1<br />
1610 PRINT115,91-RICHRMLI-K<br />
/CHRWHICHR$(1)<br />
1620 6ET115,GES:GES:GEPCHR$<br />
(0)<br />
1630 D=ASC(GE$):60SU82000<br />
1640 PRINT'BYTE4';01:' $'01<br />
OS<br />
1650 NEM<br />
1660 GETII:IFIS="THEN601016<br />
60<br />
1670 RUN<br />
2000 H=INT(D/16):L=D-(H$16)<br />
2010 HD$010$04,H4.1<br />
11 (14$,L+1,1) 1011D$<br />
2020 RETURN<br />
2100 H=0:FORI=1 TO 16<br />
2120 IFIEFTCHD$,I)=MIDCH$,<br />
1,1)THENH=1:1=16<br />
2130 NEXT!<br />
2140 1FH=OTHENRUN<br />
2150 H=H-1:L=0:FORI=IT016<br />
2160 IFRI6NTCHOS,11=NIOCH$<br />
.I.1)THENt:10:1A<br />
77<br />
1 541<br />
number and the two I Ds.<br />
d) Sector Number: Numbered consecutively<br />
from zero upwards.<br />
e) Track Number: Position of the track on<br />
the disk.<br />
f-g) ID2 and ID1: These are the formatting<br />
IDs specifi ed in the instruction<br />
"NO: NAME,ID" where I is ID1 and D is ID2<br />
(Note: ID2-(D1) is the correct order as<br />
written on the disk). These are the IDs that<br />
the DOS uses the Initialisation and during<br />
all read and write operations, not the<br />
cosmetic" IDs found in sector 18,0.<br />
h-i) $OF Bytes: These are filler bytes used<br />
as padding when the DOS is converting<br />
the header from or into GCR (Remember:<br />
the DOS uses four eight bit bytes at a time<br />
For GCR conversion). These bytes are<br />
never referenced again by the DOS after<br />
formatting.<br />
j) Header Gap: eight eight bit GCR $55<br />
(01010101) bytes providing the DOS with<br />
breathing space between the header and<br />
data fields.<br />
Data Block<br />
k) Sync Mark: Warns the DOS a block is<br />
coming up.<br />
l) Data Block ID: Informs the DOS that this<br />
is a Data Block. Its value is always $07,<br />
m) Data: 256 Bytes of user data.<br />
n) Data Block Checksum: This the data<br />
field checksum created by EORing all the<br />
256 Bytes of data together.<br />
0, p) $OO Bytes: Filler bytes used as<br />
padding during GCR conversion.<br />
q) Inter-Sector Gap: This is also known as<br />
the Tail Gap, and its size varies between<br />
four and 12 eight bit GCR $55 bytes, supplying<br />
the DOS with space in between<br />
each sector to allow for fluctuations in<br />
drive speed. Its size is determined during<br />
the format sequence, which contains a<br />
routine which times how long the disk<br />
takes to rotate once. The gap size is<br />
calculated from this timing, and so<br />
explains not only why the format routine<br />
takes so long, but also why "Fast<br />
Formatters" are occassionally unreliable.<br />
Commodore used fixed gap formatting<br />
on earlier drives but found that the last<br />
sector on the track sometimes over-wrote<br />
the first slightly. Fast Formatters use fixedgap<br />
formatting (usually eight bytes long).<br />
Our sector is now larger and much<br />
mare complicated than at first sight. Its<br />
actual size is calculated like so:<br />
Section 8-bit Hex 8-bit GCR<br />
Sync Mark 1<br />
Header<br />
Header Gap<br />
Sync Mark 2<br />
Data Block<br />
Data Gap<br />
8 bytes<br />
260 bytes<br />
5 bytes<br />
10 bytes<br />
8 bytes<br />
5 bytes<br />
325 bytes<br />
4-12 bytes<br />
TOTAL 357-65 bytes lon g
114111101)<br />
YOUR BEST INDEPENDENT COMMODORE MAGAZINE 11<br />
0<br />
-<br />
SSO<br />
YOU'VE WRITTEN SOME PROGRAMS?<br />
O<br />
Y<br />
SO WHY HAVEN'T YOU SUBMITTED THEM TO US?<br />
O<br />
the lookout for new material for publication<br />
and we know that there are<br />
U thousands of intelligent, literate.<br />
innovative and creative Commodore<br />
Oowners<br />
out there, so why don't we get<br />
together?<br />
It you have written a program, be it a<br />
Wgame<br />
or a utility, that you think you<br />
should share with other Commodore<br />
owners, then why not submit it to us for<br />
N publication. Don't forget we pay very well<br />
Office Use Only<br />
Surname:<br />
Firstnames:<br />
Address:<br />
Postcode: T e l e p h o n e Number<br />
for any articles that we publish.<br />
A All submissions should be well docu- Times to contact you:<br />
mented and where possible include a line<br />
by line breakdown of the program<br />
Ctogether<br />
with a list of any variables used. A<br />
copy of the program should be included<br />
Oon<br />
either tape or disk.<br />
All submissions should be sent to the<br />
Program Name.<br />
Computer/memory size:<br />
Extras required (disk etc).<br />
address below. If it is not chosen for<br />
Mpublications<br />
-<br />
Have you sent the program to another magazine? Yes/No<br />
then you. i t<br />
Mw<br />
You i l may l not have written any software<br />
b<br />
yourself,<br />
e<br />
but you may have very fi rm<br />
opinions about the world of Commodore<br />
r e t u Oand<br />
all its attendant industries and<br />
rproducts. n e If you do, then put your views<br />
d or questions on paper and post them to us<br />
Dt<br />
again at the address below - you might<br />
oeven<br />
get paid for airing your views!<br />
All submissions should be sent to:<br />
O<br />
PLEASE COMPLETE IN BLOCK CAPITALS<br />
Date received. D a t e ack. sent:<br />
Date checked. C h e c k e d by:<br />
Rating.<br />
Comments.<br />
RThe<br />
Editor<br />
Reply sent: A c k . received•<br />
Your Commodore<br />
EArgus<br />
Specialist Publications<br />
No 1 Golden Square<br />
London W1R 3AB<br />
?<br />
Dale printed.<br />
Fee:<br />
D a t e returned:<br />
YOUR COMMODORE<br />
111<br />
IS ALWAYS ON<br />
1<br />
Date Fee sent:<br />
715
1<br />
Vs/hat<br />
I<br />
want<br />
to<br />
-Aye'<br />
knfiv Nvbi„,<br />
A the Commodore 64<br />
vSpectrum<br />
and<br />
aAmstrad<br />
at a<br />
irecommended<br />
l<br />
retail price<br />
of E9.95.<br />
a<br />
b<br />
l<br />
e<br />
f<br />
o<br />
r<br />
cio<br />
why<br />
would<br />
.<br />
Niak anyone<br />
quocsitifitC,, play<br />
anythipg<br />
else?<br />
The most powerful<br />
games in the Universe<br />
QuicksHva Ltd.,<br />
Liberty House,<br />
222 Regent Street,<br />
London AMR 71DB.<br />
01-439 0666<br />
Chrysalis Visual Programming Ltd.<br />
.• • • •
Stuart Cooke takes a look at a<br />
new range of disk based<br />
budget software.<br />
IF YOU'VE EVER WANTED TO BUY A<br />
wordprocessor, database or any other<br />
type of business software for use with<br />
your Commodore computer then you will<br />
have been amazed at the price. Ills not<br />
unheard of for over £100 to be asked for a<br />
wordprocessor. A few companies,<br />
notably Supersoft and Mastertronic, have<br />
produced a few cheap, 'professional'<br />
programs at around the f15 mark. Now a<br />
new range of disk based budget software<br />
is set to hit the streets at a price of only<br />
f7.99. This makes it far cheaper than a<br />
great deal of software that is available on<br />
cassette.<br />
So what's the drawback? A disk for<br />
only eight quid must have at least one<br />
fault. Well, there are a few corners cut in<br />
getting this software out so cheaply.<br />
There is no fancy packaging. A clear<br />
plastic pack is used so that the disks can<br />
hang on pegs in shops. There are no<br />
manuals with the software, the instructions<br />
on the packet simply tell you how to<br />
load the program. Finally, most of the<br />
programs are in Basic.<br />
Don't let any of the above factors put<br />
you off the software though. The lack of<br />
instructions is usually - I say usually<br />
because one important program has no<br />
instructions- overcome by very clear help<br />
options within the program. Even though<br />
many of the programs are written in Basic<br />
they all work extremely well and do what<br />
they should. In fact many of the programs<br />
in the range work better and look better<br />
than their more expensive competitors.<br />
The name of this new range of<br />
software is Load'N'Col The range is<br />
imported over from America. In the States<br />
the programs sell extremely well in<br />
supermarkets with a price tag of around<br />
$5. Who knows, we may soon be able to<br />
buy a Wordprocessor at the same time as<br />
our cornflakes.<br />
Load 'N'Gol software falls into a<br />
number of different series. The series that<br />
is being marketed over here at the<br />
moment is the 'Home Management<br />
Series'. A lot of this range of software<br />
could be put to good use in either a small<br />
business or at home, its main purpose is to<br />
make life easier for you.<br />
So what's the software really like? The<br />
best way to answer this question is to have<br />
a look at some of the packages<br />
individually.<br />
Love Letters<br />
At £7.99 Master Word must be the<br />
cheapest wordprocessor available. It has<br />
many of the functions of its dearer companions<br />
such as search and replace and<br />
the ability to set line spacing and margins.<br />
It does however lack the more 'up market'<br />
fancy bits such as page numbering and<br />
headers and footers Another<br />
Adding it up<br />
Door Clet.n/Jone),<br />
C L k<br />
10<br />
Veetereall va sweeeeevall 1 e a rs<br />
beiwO With VOW 00 WOO. 04 C i •<br />
ho44 if Still iti the clove s. 1 don t h<br />
*pow Watt See 40 it, Out liOu C<br />
01440 114 feel tikl,ovorothino to too wor<br />
14 14 Fleet w4i00 i wWith 1 4<br />
goo. Ve e r ve a de rtut •* * * * • hove r owe<br />
or toiis to WWII Ao u/I WOOW t 1 5<br />
.... I 's' fe e ling * ge ol.° situstiort e eceeheleve<br />
teat like the %so.<br />
the torte. 044 i toll ilk, 1 i•n d h e<br />
vire os. t 1 1<br />
i WOO, WOc a n OiwaWil irttip tenth,<br />
e * ba ring e a r he e e lt e ve<br />
4r0400, 04C **** i<br />
we * OU 0 0 P , liveOs With u r •e ch •<br />
eatt1 the •ste if Aloe . Love vote a i r s<br />
other W 0 0 . . t 4 0 ,<br />
1 re ve le se L i e d . 4 6<br />
1 1 6<br />
a<br />
Le<br />
FAICIRORIC SCHEDOLFR<br />
tlal,e an OVVoiAttaent<br />
APPOINIMERY FOR;<br />
RAW: S T O W COW T<br />
Date<br />
DO/07/<br />
86<br />
i<br />
0<br />
Person<br />
e<br />
-<br />
Piace<br />
. Foi<br />
-Corealoot<br />
i Golden s<br />
q<br />
u<br />
p<br />
a<br />
h<br />
r<br />
O<br />
e<br />
t 0 9 " P<br />
h 9<br />
Bi aC$' 4nd<br />
hOPe O i e C t<br />
5 s<br />
"<br />
U<br />
.<br />
l<br />
i<br />
r e<br />
.<br />
"<br />
s<br />
Vre5s I to LICIER aata, A to ADD tb.5<br />
appoiotiaent to the dicO., 0 10<br />
iyoe your choice here • •<br />
Wordprocessor is due to be released at a<br />
later date that will have all of these<br />
facilities plus many more.<br />
As wordprocessors go this one isn't<br />
particularly fancy. It will however regurgitate<br />
your latest masterpieces without<br />
complaining at all. In fact if you're not too<br />
good with the old pen a selection of<br />
Business letters (You're fired etc). Home<br />
letters (birthday etc) and love letters<br />
(Yuck!!!) are provided on the disk.<br />
Another program in the series is 'Personal<br />
Spreadsheet'. This one is a. little disappointing.<br />
For a start there are no clear<br />
instructions anywhere. There are no help<br />
functions, except with the different types<br />
of calculation. This means that the only<br />
way to figure out what the package does is<br />
to actually use it. If you have never come<br />
across a spread sheet before then I<br />
suggest that you find out what one is and<br />
how it works before you look at this<br />
program. If you have already used a<br />
spreadsheet then you will more than<br />
likely be disappointed with this package.<br />
80<br />
Basically 'Persona! Spreadsheet' is a<br />
glorified calculator. You can store<br />
numbers in the columns and rows and<br />
then perform simple calculations on<br />
them. You cannot set up formulae in<br />
locations as you can on other spreadsheets.<br />
Since a spreadsheet is supposed to<br />
help you if you have a lot of formulae to<br />
work with, I think this program is the<br />
biggest let down of the pack. A normal<br />
calculator will perform the same job as<br />
this program, and a lot quicker.<br />
On Time<br />
If, like me, you are always forgetting<br />
appointments or forgetting what time you<br />
are supposed to be somewhere, you will<br />
find 'Electronic Schedular' a must.<br />
This program is used for recording all<br />
appointments. You are asked for the<br />
name of the person who the appointment<br />
is for, this means that you could put the<br />
whole offices appointments into this<br />
program. What time and date the<br />
appointment is, who the appointment is<br />
with, where it is and any comments that<br />
you need.<br />
Once you have entered in the data you<br />
can search for all meetings for a certain<br />
person after certain dates. You can list all<br />
1<br />
II
Last nano: 0a991ss<br />
1 Others:<br />
Street:<br />
Cita;<br />
State:<br />
Ztecode<br />
tCountrS<br />
:Phone;<br />
Cosatenta<br />
t<br />
VI IbO<br />
1. e<br />
aHahhiten<br />
s the shire<br />
EMt<br />
LSE<br />
n<br />
iltadvt Earth<br />
d<br />
000e<br />
000d 401<br />
,<br />
&<br />
t<br />
r<br />
e<br />
e<br />
meetings between dates. It is even<br />
possible to print details of all meetings at a<br />
certain place or with certain people.<br />
How on earth did I ever manage<br />
without this one?<br />
Money Matters<br />
A couple of financial organisers are<br />
included in the series. These are 'Pro<br />
Financial Organiser' and 'Home Finance<br />
Organiser 1', Both disks offer checkbook<br />
and address list programs while the<br />
Financial organiser also has a calendar and<br />
the Home finance package has a budget<br />
program.<br />
One very nice feature in the Mail List<br />
manager on the Pro disk is the ability to<br />
code names and addresses, with say an 'F'<br />
for friend or 'B' for business. When you<br />
want to print out your labels you can then<br />
print them out for just one group.<br />
A very nice 'extra is the Christmas card<br />
list. For each record you must specify<br />
whether you want them on your christmas<br />
card list or not. You can then get a count<br />
of how many Christmas cards you will<br />
need and then get the computer to print<br />
out all the labels.<br />
The calendar is one of those silly<br />
'PLEASE GIVE ME THE YEAR' type of<br />
programs. You know, you give it the year<br />
and the month and it prints out a calendar<br />
for you. One extra feature is the ability to<br />
highlight a specific date. This would be<br />
great if you could highlight all dates with<br />
say birthdays of friends but since you can<br />
only highlight one day in every month this<br />
is probably out of the question. What a<br />
silly fault!<br />
The titles explain the functions of the<br />
other programs on these disks and I don't<br />
think that I need say anything more about<br />
them apart from that they work well. In<br />
fact if you used either of the chequebook<br />
programs you would know exactly how<br />
your finances were at any time.<br />
Both disks are good in certain areas. If<br />
you want addresses then go for the Pro<br />
Finance pack, if you want budgeting and<br />
cheques then I think that the Home<br />
finance pack is a little better.<br />
The packs are so cheap that it may well<br />
be worth buying both.<br />
More Info<br />
If you require more information with your<br />
address file then you could have a look at<br />
the Home and Business Card File disk.<br />
81<br />
Review<br />
This is very similar to the address<br />
programs that are mentioned above but it<br />
also allows fi elds for business and<br />
telephone numbers. I did have a few<br />
problems with this program. For a start<br />
there wasn't enough room for many of<br />
the addresses that I tried to enter and<br />
secondly they are in the American formal<br />
of City. State and Zip. Since the programs<br />
are in Basic it would only have been a<br />
simple task to turn these formats into<br />
'English'. It may even be possible to make<br />
the changes yourself.<br />
Even better than this is 'g' base. This is a<br />
proper database program. By proper, I<br />
mean that you can define your own fields<br />
for data entry. This means that if you<br />
wanted to make an address list you aren't<br />
stuck with ZIP etc. If you wanted you<br />
could even use the program to keep a<br />
catalogue of your records or stamps. In<br />
fact 'g' base can be used to store<br />
information about anything that you<br />
could put on a card. Having the information<br />
on computer means that it is a<br />
simple task to find specific details or print<br />
out a list etc.<br />
Keeping Tabs<br />
Obviously with disk software becoming<br />
so cheap the number of disks in your<br />
collection is bound to grow. How on earth<br />
are you going to keep track of them all?<br />
Well, 'Disk Utilities' will solve this<br />
problem for you. This program will store<br />
information on up to 300 disks. You can<br />
search for a specific program and you will<br />
be told what disk it is on. You can get a<br />
print out of the directories of all your<br />
disks. It is even possible to print out a list<br />
of all the IDs that you have used. As you<br />
are probably aware the Commodore disk<br />
drive uses a two digit ID to identify each<br />
disk. If two disks have the.same ID, the<br />
disk drive may not know if you swap the<br />
disk, thus messing up the contents.<br />
The list of used IDs is printed in the<br />
form of a grid with letters arid numbers<br />
being across the top and edge of the grid.<br />
It is now easy to mark off new disks as you<br />
format them.<br />
As well as the catalogue program there<br />
is also a utility program. This will allow you<br />
to backup disks (riot protected ones),<br />
format disks etc.<br />
At a price of only E7,99 this disk is a<br />
must for any disk drive owners.<br />
Verdict<br />
Most of the programs available are<br />
around the same quality as a good<br />
magazine listing. They are all functional<br />
and do what they set out to do without<br />
any frills.<br />
At 17.99 this software should make a<br />
very big impact on the home/small<br />
business market, perhaps with the same<br />
sort of impact that Mastertronic made<br />
when it launched its 0.99 tapes.<br />
Who knows, good business software at<br />
this price may make people start to use<br />
their computers for something other than<br />
games, this wouldn't be such a bad thing.
1.11111111r<br />
doommt,<br />
Eric Doyle has been trying I<br />
out a real hardware bargain.<br />
WHEN I READ THAT THE IBICO LIR-1<br />
printer claimed letter quality printing and<br />
that the price was less than 000, my<br />
immediate reaction was, to say the least,<br />
one of disbelief. After unpacking the<br />
beast I remained unimpressed, the printer<br />
head looked very Mickey Mouse-ish but<br />
when I tried printout my attitude<br />
changed.<br />
Surprisingly, the machine does<br />
produce letter quality and it does so in a<br />
very novel way. The printer head<br />
resembles an office date stamp. You know<br />
the kind, rotate the wheels to get the<br />
correct date, then ink the rubber-faced<br />
letters on a pad and stamp away. In this<br />
novel little printer the characters are<br />
carried on a cylinder which carries four<br />
bands of characters. At the back of the<br />
wheel is an inked cylinder which brushes<br />
against the letters as they rotate and each<br />
character is pressed against the paper<br />
when required to produce very high<br />
quality letters. High-tech still has a place<br />
for the good old principles pioneered by<br />
Guttenberg!<br />
The limitation of the printer lies in the<br />
fixed roller idea. The characters you get<br />
are the ones you're stuck with. No<br />
graphics screen dumps or characteristic<br />
Commodore symbols, just plain and<br />
simple alphanumerics and punctuation.<br />
The paper is friction fed through the<br />
printer with no facilities for tractor<br />
feeding. This means that as a cheap<br />
printer for wordprocessing applications it<br />
can use high quality, headed paper.<br />
Indeed, a good wordprocessor would be<br />
a boon to anyone owning this machine<br />
because it doesn't have a 'paper out'<br />
indicator. When the printer reaches the<br />
bottom of a page, the<br />
on l the paper and the head carries on<br />
platten<br />
printing to and fro across the same line. A<br />
wordpro with the facility to stipulate a<br />
l<br />
page<br />
o s<br />
length<br />
e s<br />
would overcome this fault.<br />
i For t most s people the main application<br />
gthey rwould i look p for is the ability to print<br />
out listings of their latest project for a<br />
leisurely debugging session. Obviously<br />
the problem here is that most listings fill<br />
T<br />
more than a sheet of A4 paper and<br />
estimating how many lines to a page<br />
would be a nightmare. I found that<br />
normal A4 tractor feed paper would not<br />
fit the platten mounting but you can buy<br />
paper which is A4 width including the<br />
perforations and this is fi ne for most<br />
purposes as long as the paper doesn't slip<br />
in the platten rollers.<br />
Control of the printer is limited to the<br />
basic character codes of the Commodore.<br />
For example, CHR$(10) followed by<br />
CHR$(13) will initiate a line feed and<br />
home the printer to the beginning of the<br />
next line. CHR$(28) sets the printer to<br />
normal line spacing and CHR$(29) will<br />
allow double spacing for extra clarity.<br />
The number of characters available is<br />
limited to 126. This includes all the alpha-<br />
numeric characters and punctuation<br />
marks. In the main these correspond to<br />
Commodore's version of ASCII but some<br />
of the characters around CHR$(90) vary.<br />
The most important difference is that the<br />
pound sign has an ASCII value of 123<br />
instead of 92 but a little bit of thought<br />
should overcome this problem.<br />
Despite the Heath Robinson<br />
appearance of the printer, the quality of<br />
the printout is excellent. After a while the<br />
letters may get a little faint or the entirity<br />
of their outlines become broken but this<br />
can be remedied by the simple application<br />
of more ink on the roller giving a<br />
result indistinguishable from the quality<br />
of a typewriter.<br />
The speed of the printer is comparable<br />
82<br />
NIPOIMIMp<br />
Hardware<br />
doosEN6 dinnoth<br />
to that of a daisywheel. Because the<br />
printer face has to move up and down the<br />
paper frequently, this means that a speed<br />
of 10-12 characters per second is the<br />
maximum that can be achieved. In real<br />
terms this means that a 60-line page of A4<br />
text will take about five minutes to print<br />
which is not too bad considering the<br />
quality.<br />
The total size of the printer is about 12<br />
inches by nine by two, which means that it<br />
takes up very little room on a desk and the<br />
only control is the paper advance and the<br />
on/off switch so it is not too complex to<br />
use.<br />
My only qualms about this machine<br />
are the tendency of the friction feed to<br />
slip and the problem of what happens<br />
when the print head wears down. To be<br />
fair, mine is a review machine which may<br />
have seen hard use at the hands of others<br />
and the resilience of the printer head<br />
seems to promise a fairly long life.<br />
The cost of the printer should be seen<br />
in the light of the need for a centronics<br />
interface. I believe Boots sell one for<br />
around f 20, so if you're in the market for a<br />
cheap printer with high quality result and<br />
you're willing to accept the 20th Century<br />
adage that budgeters can't be choosers<br />
then this is definitely a machine to<br />
consider. The only other printers at this<br />
price are thermal printers and with the<br />
cost of thermal paper these day5 it could<br />
be worth while considering a machine<br />
with low post-sales overheads, in which<br />
case this could be the one for you.
David Gartrell helps I<br />
you get your finances<br />
1<br />
in order with the help<br />
of your C64.<br />
IF YOU'RE TIRED OF<br />
wondering just how much<br />
money you've got in the bank<br />
and whether you're going to<br />
last until your next pay packet<br />
comes through, then look no<br />
further. This program can be<br />
used to monitor all of your incomings<br />
and out-goings so that<br />
you, and not your bank<br />
manager, are the first to know<br />
where you stand, fi nancially<br />
speaking.<br />
Introduction<br />
Using Budget (A you can divide<br />
your bank account into a<br />
maximum of 20 separate<br />
categories, each covering a<br />
different section of your<br />
finances e.g. gas, electricity.<br />
Before we delve into the<br />
workings of the program, there<br />
are one or two things to<br />
remember. The structure of the<br />
program is such that, when it is<br />
working at full capacity, it uses<br />
nearly all of the available<br />
memory. Only 2-3K remains.<br />
Also, from time to time, pauses<br />
will occur. This does not mean<br />
that the computer has crashed.<br />
Just wait for a few seconds and<br />
it will carry on. The delays are<br />
caused by the complexity of<br />
the program. the many<br />
variables used and the amount<br />
of memory involved.<br />
When the program is first<br />
run, you are presented with a<br />
title screen and a question:<br />
'LOAD OLD FILE Y/N'. If you<br />
are starting afresh, then type<br />
'N'. Details of loading your file<br />
will be explained later.<br />
Next the computer will ask<br />
you how many categories you<br />
wnat. These are the different<br />
sections of your bank account.<br />
Enter the number you want<br />
plus one, then enter their<br />
names.<br />
The first category is pre-set<br />
as 'MASTER SHEET' and<br />
combines all the others to give<br />
a grand balance.<br />
Once all the names have<br />
been entered, the main menu<br />
is displayed. Pressing a key will<br />
display up to three pages of<br />
transactions for each category.<br />
You have the choice of display<br />
on the screen, the 1520 Printer<br />
Plotter or a standard printer.<br />
The printer used when this<br />
program was written was a Star<br />
SG-10C dot matrix printer.<br />
However, using other printers<br />
should cause no problems.<br />
Included in the display are<br />
reverse characters to identify<br />
the origin of each transaction.<br />
Press the key followed by the<br />
character of the transaction<br />
which you wish to identify.<br />
At the bottom of the main<br />
menu is 'OTHER OPTIONS'.<br />
These are:<br />
ACTIVATE ACCOUNT: Enables<br />
you to add or subtract<br />
from any of your categories.<br />
The process is straightforward<br />
and simple.<br />
SAVE A FILE: Will save your file<br />
on tape. The option of an<br />
access code is included to<br />
prevent other people from<br />
loading your file.<br />
ENTER WAGE: This option can<br />
be used if, for instance you<br />
wanted to divide E100 between<br />
different categories. Enter the<br />
total amount deposited and<br />
press return. The amount will<br />
be displayed on the other<br />
options menu and any other<br />
areas where is could be useful.<br />
As you spread your money<br />
between the categories, the<br />
amount you entered will<br />
decrease. When it reaches zero<br />
it will disappear.<br />
Options E and F work<br />
together with option D. If you<br />
remove the messager from the<br />
UDGE<br />
screen, the amount will remain<br />
the same until you bring it<br />
back.<br />
RE<br />
-the<br />
category which you wish to<br />
NA re-name. Make sure that it is<br />
Mempty<br />
of money as its memory<br />
E will be cleared when you rename<br />
it.<br />
C<br />
MONEY TRANSFER: Enter the<br />
A<br />
two categories involved, then<br />
T<br />
E<br />
G<br />
I<br />
O<br />
R P<br />
Y R<br />
: O<br />
C<br />
h<br />
o<br />
o<br />
s<br />
e<br />
83<br />
Ces4<br />
proceed as for 'ACTIVATE<br />
ACCOUNT'.<br />
ADD A CATEGORY: Type in<br />
the name of the new category.<br />
PERFORM CALCULATIONS: If<br />
you want to do arty arithmetic<br />
you can use this option.<br />
Finally to load your fi le,<br />
press 'Y' at the start. Then enter<br />
your access code if you have<br />
one.<br />
1 PRINT CHRS(14):POKE 53280,9:POKE 53281,11<br />
2 PRINTICCLEAR,C1,RVSON,SPC16,RVSOFF,YELLOW,SB,SU,SD,65,<br />
6<br />
SE,ST)-64ERVSON,C1,SPC15r<br />
3 GOSH 7000<br />
R<br />
4 PRINT<br />
A<br />
1 S63ARTRELL"<br />
N<br />
CDOW 5 PRINPEDOWN,SPC11,SUOPYRIGHT (C) 1985"<br />
:<br />
N4 6 PRINT<br />
B<br />
1 17<br />
AS<br />
U<br />
YELLO 100WN 18<br />
IF AS="N'THEN OPEN 1,3:6010 24<br />
D<br />
W,SPC 4,BLA :GE 9 IF ASO"Y"THEN 7<br />
G<br />
7CK1LO<br />
T 10 PRINTICCLEAR,C1,RVSON,SPC15,RVSOFF,YELLOW,SL1<br />
E<br />
1AD<br />
A OAD A FILEIRVSON,CI,SPC141"<br />
T<br />
SCRIT OS 11 PRINT : L<br />
6<br />
TEN D I112 PRINT'IDOWN2,SEATER F<br />
ACCESS CODE :-103,RIENTI";:ACS=""<br />
4<br />
BFA1UP,RE 13 6ET CS:IF CSTHEN 13<br />
YI E<br />
SLWD,CT40 14 IF CS=CHRS(13)TNEN 16<br />
PE C<br />
, ? I,C6r<br />
15 ACS=ACS+CS:PRINT":";:GOTO 13<br />
16 ACS=ACSOICLEARP<br />
S D:<br />
I-T A V<br />
I IH 17 OPEN 1,1,0,ACS:DIM AS(21),DAS(21,50),DE(21,50)<br />
SD P1<br />
SCE 18 DIM NI(21<br />
P5 , C<br />
, SN . 19 PRINT"[HOME,00WN31":FOR I=1 TO 20:PRINT*E6PC391<br />
20 Y 1<br />
/ 7<br />
10), 1 INPUTOI,A<br />
21 8Al21,50<br />
:NEXT FOR B=1 TO A:INPUT01,AS(81:INPUT01,ROVID<br />
E<br />
),ROI(21<br />
S:FOR NBB=1<br />
TO ROUB)-1:INP1JT01,DAS(8,BB)<br />
1<br />
),<br />
1<br />
1XS(21,5<br />
0)
22 INPUT11,DE(8,9B):INPJ711,W1(E,BB):INPUTOI,BA(B,BB<br />
:INPUT11,XXSIB,8E:NEXT 88,8<br />
23 CLOSE 1:0PEN 1,3:GOTO 35<br />
24 PRINTIECLEAR,C1,RVSON,SPO16,YELLOW,RVSOFF,S9,SU,S0,SG,<br />
SE,ST)-64(O1,RVSON,SPC15)<br />
25 60SUB 1 7000<br />
26 PRINT'IDOWN3,8LACK,STME MAXIMUM NUMBER OF CATEGORIES<br />
YOU CAN<br />
27 PRINT'EUNHAVE IS TWENTY."<br />
28 PRINT'EDOWN2,CYAN,SN10. OF CATEGORIEP:INPUT A<br />
:IF A(1 OR A)20 THEN PRINT'CUP,SPC12,UP4P:GOTO 28<br />
29 DIM 141(21),DAS(21,50DE(21,50),11(21,501,BA(21,50),<br />
ROV21),XXS(21,50)<br />
30 AS(I):"ISCASTER SHEEP:FOR B=1 TO A:ROZ(8)=1:NEXT<br />
31 PRINT'EDOWN2,SCHTEGORY 1 HAS BEEN AUTOMATICALLY SET<br />
AS:-ISPC,9VSON,SM1ASTER SHEET'<br />
32 IF A=1 THEN 35<br />
33 PRINT"IDOWN2,C61":FOR B=2 TO A:PRINTNESUATEGORY "B"<br />
:-IDOWN,C7MINPUT AM)<br />
34 PRINT"IUP,SPC36,UP3,C63<br />
135<br />
PRINTICLEAR,C1,RVSON,5PC16,RVSOFF,YELLOW,SM,SA,SI,SN,<br />
:NEXT SPC,SM,SE,SN,SU,RVSON,C1,SPC151"<br />
36 PRINT"CRED,UP,CT40,WHITEr<br />
37 DEF FNUKL)=INT(KL11004-.5)/100<br />
38 S=1:GOSUB 112<br />
39 PRINT TAB(I1)"ICE"CHRS(065)" = OTHER OPTIONS.'<br />
40 PRINT"(WHITE,RVSON,SC,SH,S02,SS,SE,RYSOFF]:-"<br />
41 131=":6ET BS:IF Bl="THEN 41<br />
42 X=ASC(B11-64:IF 11(1 OR X)44.1 THEN 41<br />
43 IF X=A+1 THEN 114<br />
44 PRINT'ICLE4R,DOWN2,SCH1CH PAGE :- 1, 2 OR 3'<br />
45 GOSUB 355:PRINPEDOWN,SCIURRENT PAGE :-'Al<br />
46 GET All:IF VAL(A11)(1 OR VAL(AIWA1 THEN 46<br />
47 GOSUB 350<br />
48 A3=A2<br />
449<br />
PRINT'IOLEAR,D0WN3IDISPLAY ON :-"<br />
15:IF 50 PRINT'IDOWNL3 = SCREEW:PRINT"4 =ISPC,SPNINTER"<br />
R :PRINT"6 0 V = 1520ISPC,SPAINTER/ISHLOTTER"<br />
W 51 GET = YS:IF A YS"THEN 51<br />
3 52 IF YS="4"THEN CLOSE 1:0PEN 1,4,7:PRINT11<br />
T1:GOTO H 57<br />
ECHRS(14) 53 IF N Y1="3"THEN GOTO 57<br />
A<br />
54 IF<br />
3<br />
Y10"6"THEN<br />
=<br />
51<br />
R<br />
55 CLOSE<br />
0<br />
1:0PEN 1,6<br />
7<br />
56 OPEN<br />
I (<br />
6,6,6:PRINT16,1:0PEN 2,6,1<br />
57 GOSUB 207<br />
X ) -<br />
59 IF 9="3"THEN PRINT11<br />
1<br />
59 PRINTII:PRINTI1,'EBLACK,UP3,SPC2IDETAILSISPC4IDEPOSIT<br />
[SPCDWITHORAWL BALANCE"<br />
60 PRINT11,<br />
161 IF Y1='4"THEN PRINT11,OHRS(15):CLOSE 1<br />
62 GOTO 68<br />
63 FOR P=1 TO ROX(X):DAS(X,P-1)=DA1(X,P1<br />
64 DEiX,P-1)=DECX,P1:11I(X,P-1)=W11X,P)<br />
65 BAtX,P-11=BA(X,P)<br />
66 XXSCX,P-1)=XXSIX,P):NEXT<br />
67 RETURN<br />
68 FOR B=42 TO A3<br />
69 IF Y10"4"THEN 74<br />
70 GOSUB 321:PRINT11," "DA$3,8):PRINT112,PBS<br />
:PRINT13,DE(X,B)<br />
71 PRINT12,POI:PRINT13,1I(X,9):PRINT12,PE1<br />
:PRINT13,'[RVSON]"XXVX,BrIRVSOFFY<br />
72 PRINT12,P91:PRINT13,BACX,B1<br />
73 CLOSE 1:CLOSE 2:CLOSE 3:CLOSE 6:PRINT110:CLOSE 10<br />
:GOTO 89<br />
74 P1=11:P2=19:P3=29<br />
75 LK=BA(X,9):6OSUB 264<br />
76 IF Y1="6"THEN GOTO 302<br />
77 GOSUB 281<br />
78 IF Y1="6"THEN PRINT12,"M",12,0:PRINT11,DAUX,B);<br />
:WO 81<br />
79 PRINT01," "DAUX,B);<br />
80 IF 9=4"THEN OPEN 1,3<br />
81 IF YS="6"THEN PRINT12,"M",132,0:PRINTII,PSDES06OTO 83<br />
82 PRINTII,TABCP1)DES:<br />
83 IF YS="6"THEN PRINT12,W,228,0:PRINT11,01W11::G0TO 85<br />
94 PRIN111,1AB(P2)W11;<br />
85 IF YS6"THEN PRINT12,4<br />
1 :GOTO 87<br />
, 86 PRINT11,TA8(29ERVSONI<br />
351,0:PRINT11,XXC<br />
. B7 IF Y1='6"THEN PRINT12,4",349,0:PRINTII,R4BMGOTO 89<br />
X,B); XXS(X,B)":RVSOFF2";<br />
BB PRINT11,TAB(P3)BAS<br />
89 NEXT<br />
90 IF Y1=<br />
191<br />
IF Y1='6'THEN FOR 1=1 TO 7:PRINT11:NEXT:CLOSE 6:CLOSE 2<br />
4ITHEN :CLOSE 1:0PEN 1,3<br />
O92 PRINT P ETAB114)"IYELLOW,RVSON,SP,SR,SE.SS2]<br />
'I' ISK,SE,<br />
N SY1'<br />
1 93 PRINTICRYSON,RI6HT6,SP,SR,SE,SS2,SPCFUISPC,SF<br />
,<br />
31<br />
S0,SR,<br />
94 GET AS:IF AS="THEN 94<br />
95 IF AS="1•THEN 105<br />
96 IF A$0<br />
19?<br />
PRINT'INOME,DOWN23,SPC39/'<br />
98 8 INPUT<br />
199<br />
1 IF K1=',"THEN 35<br />
CHOME,<br />
100 THEN IF KS="THEN 97<br />
D0WN2 101 9 IF 4LENO3)=1<br />
AND ASC(K1)
CI34<br />
113 NEXT:RET11RN<br />
:ACS=":GOSUB 279:GOSUB 166<br />
114 PRINT<br />
158 PRINT: OPEN 1,1,1,ACI<br />
• SR: ISO,SF,ST,SI,SC,Sk.SS,RVSDK,C1.SFC17:"<br />
CCLEAR<br />
SOSUB 7000<br />
,RVSDN<br />
:F 4W=1 AN: YY=0 'FEN 4=0<br />
,C1,SFC :F 4=1 THEN LK=YY:GOSUB 264:PRINT'CUP,YELLOW,RVSON,<br />
14,RVS<br />
SICAGE LEFT :- 11"BAS<br />
118<br />
OFF.Y2<br />
PRINT TAB(8)'EDOWN,C8,SPC1A =ISPC,SA1CTIVATE ACCOUNT.'<br />
LL2W.S<br />
:PRINT TAMP<br />
119 PRINT<br />
C.F,SH,<br />
. B TAM)* C =ISPC,SEETURN TO MAIN MENU."<br />
S:.<br />
= :PRINT I STAB(81 P C<br />
120 PRINT ,SEAV<br />
1 D TAPS)" E =ISPC,SCANCEL WA5E MESSEAGE.'<br />
121 PRINT E = I STAB18I' P C F =ISPC,SUNABLE WAGE MESSAGE.'<br />
122 PRINT A ,SENT TAM)" G =ESPC,SR1E-NAME CATEGORY.'<br />
123 PRINT<br />
FE R I<br />
TAM)" H =ESPC,SMANEY TRANSFER.'<br />
124 PRINT<br />
LW EATABI81'<br />
I =ESPC,SAIDD A CATEGORY.'<br />
125 PRINT TAB18' J = RE-RUN PROGRAM."<br />
. G 'E<br />
126 PRINT<br />
. "<br />
TABUS)" K =ISPC,SPIERFORM CALCULATIONS.'<br />
127 PRINT"CWHITE,DOWN,RVSON,SC,SH,S02,SS,SE,RVSOFF,SPC-•<br />
159 PRINT<br />
1160<br />
PRINT111,A:FOR B=1 TO A:IF AS1B)=""THEN ASIB)="1C41."<br />
CHOME,<br />
161 PRINTII,AVB):PRIN'01.R07.1):FOR 88=1 TO R07.(8)-1<br />
00WN71<br />
162 IF DAS(13,810=""THEN DA41,1381="IC411181ACC"<br />
":FOR 163 IF XXS(8,88)=""THEN XXS(8,B11)=N:C411IBLACK1"<br />
I 164 PRINTII,DAS(B,BP:PRINTE,DEI,BP:PRINTII,W118,BE0<br />
=<br />
1 :PRINT111,BA(8,11B)<br />
T165<br />
PRINT11,XX$1,88):NEXT BB,B:CLOSE 1:0PEN 1,3:GOTO 114<br />
O 166 IF LEFTCACI,11="CCLEARrTHEN ACS=MIDUAC4,11:RETURN<br />
167 ACS=ACSOCCLEARP:RETURN<br />
2 0 : P<br />
R<br />
168 ON<br />
I N<br />
VAUBS16O1O<br />
T<br />
169,183,114<br />
"<br />
169<br />
I<br />
PRINT'EDOWN2,CYAN,SA1MOUNMINPUT<br />
S P<br />
DE(X,ROX(X1)<br />
170 IF DE(X,ROVX11=
2113 °RINTCLEAR,CI,RVSON,GPC12,YELLOW,RVSOFF.ERE-NAME<br />
2ATEGORYERVSON,CI,SPC121"<br />
04 GOSH 7000<br />
L15 PRINEDOWN2,YELLOW,SPIRESENT CATEGORY ”11<br />
, :PRINT"CRYSOWASIX)<br />
"' 206 PRINT"CDOWN7,6REEMENTER I S<br />
NEW CATEGORY "BE :-"<br />
:INPUT AS(X)0TO 114<br />
:07 PRINTHICLEAR,C1,RVSON,SPC40r<br />
20B O=LEN(ASIX)1:00=!40-00t2:IF YS="4"THEN PRINTS1,<br />
TABICIOI;;GOTO 210<br />
209 PRINT'IHOE:FOR 01=1 TO OO:PRINT41,"IRVSON,SPC1":<br />
:NEXT<br />
210 PRINTSWIYELLOWPASIX):GOSUB WO:RETURN<br />
21: PRINT'ICLEAR,C1,RVSON,SPC11,RVSOFF,YELLOW,5M<br />
ONEY TRANSFERMSON,CI,SPC17r<br />
30SUB 7000<br />
211 S=2:GCSUB 112:PRINT'ISMANSFER FROM CATEGORY :-";<br />
:INPUT C$<br />
214 IF CS=""THEN 114<br />
21! PO=ASC(CS)-64:GOSU8 260<br />
216 C=ASC(CS)-64:IF BA(C,R07.IC)-1!>0 THEN 219<br />
217 PRINT'ECLEAR,DOWN9,YELLOW,RVSON,RIGHT8.SN,SO,GPC,GM,<br />
SO,SN,SE,SY,SPC,SF,SO,SR,SPC,ST,SR,SA,SN,SS,SF,SE.SRP<br />
218 :FOR 1=1 TO 1500:NEXT:GOTO 114<br />
219 PRINT"ICLEAR,CI,RVSON,SPC13,RVSOFF,YELLOW,SM]<br />
ONEY TRANGFERIRVSON,C1,SPC133"<br />
220 GOSH 7000<br />
221 S=2:61151111 112:PRINT"ESTIO CATEGORY :-";<br />
. 222 IF CCS=""THEN 114<br />
:INPUT 223 PR=ASC(CCS)-64:GOSUB 262<br />
224 PRINT"ICLEAR,CIAVSON,SPC13,RVSOFF,YELLOW,SM),<br />
ONEY TRANSFERERYSON,CI,SPC13r<br />
225 G1SUB 7000<br />
226 C=ASCICS)-64:CC=ASC(CCS)-64<br />
227 PRINT'IDOWN,WHITE,SURANSFER FROM :-•<br />
:PRINT"ERVSOM1"AS(C) "IRVSOFF,SPCNOISPC,RVSONrAUCC)<br />
229 1.10414IC,ROXIC)-11:60SUB 264<br />
229 PRINT"!DOWN247,SM1ONEY IN ACCOUNT :- I"BAS<br />
230 PRINT"ECOWN2,CYAN,SAJNOUN1 :-":INPUT WIIC,ROXIC)1<br />
231 IF WIIC,RNICI)="0"AND MIDEBAS,LENIBAS)-1,<br />
.00":60TO 110"."THEN 277 2<br />
276 BAS=BA$+"0"<br />
7 7<br />
277 8AEMIDSIBAE2):RETURN<br />
278 GET CS:IF CS="'"HEN 278<br />
277 IF C1=2HRSI13THEN RETURN<br />
280 ACS=ACECEPRINT"I";:GOTO 278<br />
281 IF LEN1DES)=4 THEN P1=P1+5<br />
282 IF LENIDES)=5 THEN P1=P14-4<br />
283 IF LENIDEV=6 THEN P1=P1+1<br />
284 IF LEN(DES)=7 'HEN P1=P1+2<br />
265 IF LENIDESA THEN P1=P1+1<br />
286 IF LEN(WIS1=4 THEN P2=P2+5<br />
287 IF LEN1WIS)=5 THEN P2:P2+4<br />
288 IF LENNIS)=6 THEN P2=P2+3<br />
28<br />
7 290 IF LENNIV=8 THEN P2=P2+1<br />
I271<br />
IF LEN(BAS1=4 THEN P34146<br />
F 292 IF LENI9AS)=5 'HEN P3=P3+5<br />
L293<br />
IF LENIEAC=6 THEN P3=P3+4<br />
E294<br />
IF LEN(BAS)=7 THEN P3=P3+3<br />
N29!<br />
IF LENIBAS):8 THEN P3=P3+2<br />
I296<br />
IF LENIBAS1=9 THEN P3=P3+I<br />
W297<br />
IF LENIDES)=1 THEN P1=P1+6<br />
I298<br />
IF LENNIE:3 THEN P2=P2+6<br />
S299<br />
IF LENIBASI=3 THEN P3=P3+7<br />
) 301 RETURN<br />
= 12 IF LEN:DEC:5 THEN PS="ISPC4I"<br />
7 30: IF LEN(DES)=6 THEN PS="ISPC1P<br />
T304<br />
IF LENIDEV=7 THEN PS="ESPC2r<br />
H385<br />
IF LENIDES)=9 THEN PS:"<br />
E<br />
306 IF LEN(WIS)=4 THEN OWESFC51"<br />
N<br />
P<br />
2<br />
=<br />
P<br />
2<br />
+
CE4<br />
307 Ir LENNIS)=5 THEN 08:<br />
:-IRVSOFF,BLACKY<br />
308 1 IF LENNI3)=6 THEN OWCSPC31"<br />
309 (SPC4r IF LENINI$1:7 THEN O1ESPC21"<br />
310 IF LENNIS)=8 THEN OW •<br />
334 PRINT"! LISPC,5COOK:PRINT"2 =ESPC,SEUBTRACT"<br />
:PRINT*3 mISPC,SMEILTIPLYI:PRINT"4 :ISPC,SEIVIOE"<br />
:PRINT'S :ISPC,SANSWERIDOWN2r<br />
311 IF LEN(E4114:4 THEN RWISFTE"<br />
335 GET CS:IF CW"THEN 335<br />
312 IF LEN(BAS).f THEN RWISPC51"<br />
736 IF C$0"5•THEN INPUT CZ<br />
31: IF LEN(814)6 THEN RWESH41•<br />
314 IF LEN(8AS)=7 THEN RW[SPC7r<br />
337 ON VAL(CEGOTO 338,339,340,341,342<br />
378 C1:-<br />
315 IF LEN(BASJ=8 THEN RWESPC21"<br />
-739<br />
CI:C1-C2:GOTO 332<br />
316 IF ,IN(BAC=9 THEN R$="<br />
C14.C 340 CI.C11C2:GOTO 332<br />
317 IF LENiDES).<br />
2:GOT 741 CI:Cl/C2:GOTO 332<br />
, 318 IF LENNIS123 THEN OW[SPC6]*<br />
319 4 THEN IF LEN(RAS)=3 THEN RWISPC7r<br />
320 P GOTO W [ 78S<br />
P<br />
321 C PAW 5 ) AAAAAAAAP:PEWESPOUNIAP<br />
"<br />
322 PBS=PCSPC1IN9999.99"<br />
323 POWISPC21)99999.9?"<br />
O 342 LOCI:GOSH 264:PRINPEC3,RVSON,SA,8N,SS,SW,SE,9R,9PC)<br />
3 :-CBLACK,RVSOFFI 3<br />
'JO<br />
2343<br />
PRINT"DOWN,SPC8,Srli =ISPC,SM<br />
1 ISPC,SR,SE,ST,SU,SR,SNY<br />
SO,SR,SE,SPC5,SFL3<br />
344 GET CS:IF CW"THEN 344<br />
345 IF NeEFIrTHEN 331<br />
324 POWISPO31199999.99"<br />
IF CI eEF3I"THEN SOTO 114<br />
:25 PFWISPC39111"<br />
350 IF AIS=<br />
326 OPEN 3,4,1:0PEN 6,4,60PEN 10,4,10<br />
93:<br />
327 OPEN 2,4,2<br />
14<br />
352 IF 413"THEN A2=33A3:46<br />
328 OPEN 1,4,7:PRINTII,CHRS(14)<br />
1 353 RETURN<br />
329 PRINT46,CHRS(0):RETURN<br />
THEN I355<br />
IF ROZON18 THEN A1=1:RETURN<br />
330 PRINT'IBLACK,CLEARY<br />
331 INPUT"IBLACK,CLEARYtC1<br />
332 :<br />
333 PRINT'[DOWN,C3,RVS0N,SC,SH,S02,SS,SE]<br />
AF 356 2 IF : ROW).13 1 : THEN A1=2:RETURN<br />
A A357<br />
3 IF = RO(X))32 1 THEN A1:3:RETURN<br />
61<br />
7000 PPINT•CUP,REO,CTOP:RETURN<br />
i<br />
2<br />
*<br />
T<br />
•<br />
:r • r • H•<br />
,<br />
• -<br />
.••:r E<br />
4*****01WW•WiRVAiKWai<br />
• s N<br />
-<br />
• A<br />
EAV,;i<br />
.,<br />
2<br />
:iSUBSCRIPTION<br />
ORDER FORM =<br />
I' I<br />
fi -<br />
.<br />
-<br />
,•<br />
•<br />
MMODORE<br />
•<br />
••<br />
,<br />
•,<br />
i1<br />
- • - - • • •<br />
,<br />
E a<br />
1<br />
7<br />
,<br />
:<br />
] ? k l e : . . a t i n g l I s<br />
11••••1111) • •<br />
,<br />
6111013.110<br />
M W - err •••• NI 4 • 4 • 111<br />
•<br />
"<br />
nom sego, a NRm in Jetsam<br />
1<br />
.<br />
"<br />
i<br />
4611111<br />
.<br />
h<br />
a 1111111<br />
-<br />
Whatever your interest in the<br />
r<br />
/<br />
-<br />
6<br />
Commodore 1 range of computers<br />
and peripherals, 0 you simply cannot<br />
1<br />
afford 1111 to miss a single issue.<br />
11<br />
SUBSCRIPTION RATES<br />
11<br />
i16.60 for 1 12 issues U.K.<br />
£21.50 for 1 12 issues Overseas Surface mail<br />
£57.00 for 12 issues Overseas Air mail<br />
A<br />
3<br />
.<br />
7<br />
2<br />
SOSO<br />
ONUS<br />
ammo<br />
/<br />
e *<br />
/ S<br />
# .* e<br />
/<br />
s.<br />
0<br />
Send this form with your remittance to:<br />
INFONET LTD., Times House, 179 The Marlowes,<br />
Hemel Hempstead, Herts. HP! IBB.<br />
o<br />
V .<br />
e•<br />
o $ 0 0 v4<br />
!<br />
ek<br />
7<br />
"
HAVE YOU EVER WANTED TO GET INTO<br />
communications? Would you like to get<br />
in touch with other Commodore owners?<br />
Well, Your Commodore, together with<br />
Compunet, are pleased to announce the<br />
start of Club 128, and give you a chance of<br />
a special membership offer.<br />
Club 128 will appear on Compunet asa<br />
'free access area open to all CNET<br />
subscribers.<br />
The club will be the focal point for all<br />
'serious' users of Commodore<br />
computers, hence the '1 28'affiliation. The<br />
128 doesn't mean that owners of C64s<br />
can't join. In fact the club is open to all<br />
Compunet members though only<br />
'serious' users are expected to make a<br />
great deal of use of it.<br />
Many sections of Compu net are due<br />
to be 'pulled in' to this online area.<br />
including the 'Briefcase' business section<br />
that is already in existence.<br />
Your Commodore will have a<br />
magazine section within the club area<br />
where you will be able to find news and<br />
the latest programs that are published in<br />
the Magazine.<br />
The Offer<br />
So what do you get and what does it cost?<br />
Your Commodore is offering a special<br />
membership to the Club for f69,99<br />
(inc VAT and P&P in the UK) including:<br />
A Commodore 64/C128 Communications<br />
modem (worth [79,991<br />
A three month GOLD subscription to<br />
Compunet (worth 115.00<br />
A six month subscription to Your<br />
Commodore<br />
• PLUS *<br />
£10.00 of discounts on selected business<br />
and communications software, including<br />
software for accessing Viewdata and<br />
Electronic Mail services such as Prestel<br />
and Telecom Gold.<br />
In order to take advantage of this<br />
special offer you simply need to send a<br />
cheque or Postal Order made payable to<br />
Club 128 to the address on the below<br />
order form.<br />
I enclose a cheque made payable to Club 128 for f69_99 for my Gold membership to<br />
Compunet<br />
y<br />
C o m<br />
mName o d<br />
o r e<br />
m o<br />
dAddress e<br />
m<br />
a<br />
n<br />
d<br />
sPostcode<br />
i<br />
x Please allow at least 28 days for delivery. Order should be sent to: Club 128 Compu-<br />
mnet<br />
Teleservices Ltd, 7-11 Minerva Rd, London NW10 6F11.<br />
o<br />
n<br />
88<br />
t<br />
h<br />
s u
Lineage: 40o per word.<br />
(46p incl. VAT).<br />
Semi display: MOO per single column centimetre (plus<br />
VAT). Ring fot information on series bookings/discounts.<br />
All advertisements in this section must be prepaid.<br />
Advertisements are accepted subject to the terms and conditions<br />
printed on the advertisement rate card (available on request)<br />
SOFTWARE<br />
SOCCER M ANAGER - Manage yo u r<br />
own t e a m . 4 d ivisio n s, F A. C u p ,<br />
transfers taCticS e tc.<br />
SOUTH EAST KENT SOFTWARE<br />
Dept Y,C P.O. Boa 152 Orpington. Kent<br />
RACENIGHT - R u n yo u r o w n<br />
raCenight u p t o 1 0 p la ye rs. Excit in g<br />
rorse ra cin g game<br />
SOCCER QU I Z - Te st yo u r SOCCe<br />
,<br />
knowledge, nundreds of oJeStions.<br />
Any , yie •i), E199, 2 for E6.99, 3 tor E8_50<br />
T. PAL M ER, 59, Old Pa rk Road,<br />
Sheffield 8 . Te l; 0142 749498.<br />
We stock inr Spectrum, Amsi<br />
, dore Se n d S.A E. to r lu ll list and prices<br />
ad.Corwrno-<br />
Please st a t e w h ich Po sta g e sPa ckin g<br />
overseas El 00.<br />
COMMODORE 64 GAM ES (TAPE'<br />
RAP OUR PRICE<br />
Commando E 9 . 9 6<br />
Beach bead II E . 9 95 E6 .7 5<br />
Jell Capes E l i 95 £ 6 .6 5<br />
Sommer Games li £ 9 9 5 E6 .7 1<br />
Transformers E 6 . 9 5 E6 .5 5<br />
Winter Games E D A M E7 31<br />
ALPHASOFT<br />
CB 5164 Software - 25% Reductions<br />
Ku<br />
Con, Bakery<br />
C6,90<br />
, £7.45<br />
Ueserl Fos £7.65 Vie Ar K.m g Fu<br />
g-<br />
S'oy Vs SPY IIE7<br />
Fi<br />
Undium £6.90<br />
•<br />
The Eidolon OAS<br />
Ball Blazer E7.50<br />
r m<br />
4S<br />
Bounder £7.45<br />
Me<br />
ar<br />
AND M ANY M ORE!<br />
s<br />
C Cneque P 0 . t o AL PHASOFT<br />
t<br />
? 115 Parsonage Road, Withington.<br />
e Manchester M20 9 W2<br />
r<br />
4<br />
5<br />
Never Ending Story E9 95 E6 .5 I<br />
Dole* Shot II Joystick E11e5 E7.95<br />
a<br />
Prices Now<br />
r<br />
Include Postage/Packing<br />
BUSINESS (DISK)<br />
e<br />
RRP OUR PRICE<br />
Superscript i E 6 9 96 E5 2 , 9 5<br />
perbase<br />
m<br />
64 j 9 9 95 Ee 6 .0 0<br />
Horne Accounts £ 2 4 .9 5 E1 9 .9 6<br />
a<br />
EDUCATION<br />
English Mraths. German Fre n ch . History<br />
RAP E9 95 . OU R PRICE £7.95<br />
Oned..,es•PO's ) payable to J. Ferguson<br />
Please<br />
,<br />
allow 21 days deleery<br />
m<br />
o<br />
r<br />
e<br />
BANKER 64<br />
T<br />
i<br />
If you a re fed u p not being able to Keep IracK C yOu r Lank t account this p w9 rs nmay<br />
b e juSt what you are looking to r. Sim ple to use as iil<br />
is menu driven it will hold<br />
full d e ta ils o f Cre d its De b it s. Standing o rd e rs and Dire ct Debits and w ill a u to '<br />
matically p la t e them in date order. It will De e you statements<br />
e<br />
to screen o r printer<br />
including the 1520 plotter printer Re co rd s can be stored s on both disk and tape for<br />
Complete b a ck-u p . En t ry to any account is b y name and Se cu rity code which can<br />
be changed as necessary. Th is m 'c program is very good value at E6.25 disk, E4.00<br />
la ps<br />
RAMFILE<br />
Keep tra ck o f yo u r Software, Records. Stam p Collection. Addresses etc. with th is<br />
easy tO use menu d rive n fi llin g syste m . En t ry lit le s are user delineable. Powerful<br />
options in clu d e search and amend routinet. Prin t routines allows printing of entry<br />
title, selected entry o r Complete file to any printer •ncluding the 1520 plotter. Files<br />
can be Stored o n both d isk and tape.<br />
This rn .<br />
, Special Offer - Both programs E10Misk Both programs E7.00 Tape<br />
c All prices Inc:hide VAT P&P Cheoues & P 0 to<br />
p r o<br />
RJP ELECTRONICS<br />
g r27 aDenham<br />
Way, Camber, Rye, Ea st Susses TN3 I 7 XP Te l: 0 7 9 7 ) 225549<br />
m<br />
i<br />
s<br />
DERBY v DAY - C16 Can you pick<br />
a winner e in this Horse-Racing<br />
Spectacular? r On Screen Action.<br />
CLAIRES COMPUTERS<br />
Commodore 64 special otters<br />
DISC O U R PRICE<br />
visual y form guide. Over 50<br />
horses, g thousands of race<br />
o<br />
combinations. Realistic betting<br />
o<br />
from different meetings. Plus<br />
d<br />
many more features. Send E5,75.<br />
v<br />
Enquiries welcome. Cheque<br />
a<br />
P<br />
l<br />
P.O. . uBox<br />
69, Blackpool FY2 9EX.<br />
Fichte, P lof £ 6 . 5 0<br />
They Solo A Million O A S<br />
TAPE O U R PRICE<br />
Pit Stop II t 4 . e 9<br />
Winter Games E 4 • 9 9<br />
Theatre Europe , E l . 5 0<br />
rankle Goes To Hollywood E3 .5 0<br />
The Fourth Protocol E 3 50<br />
Spitfire 40 E 4 . 5 0<br />
Spitfire Ace e 1 . 9 9<br />
Jump Jet E 3 50<br />
Ace E l 50<br />
O e<br />
a<br />
t<br />
t<br />
THE<br />
o<br />
OPEN Golf Game. Plus 4 or<br />
E<br />
C16 (tram), Sound, colour<br />
B 6<br />
graphics . E1.95. Cheque/P.O. to<br />
WC. l<br />
2Showell,<br />
3 Silver Birches,<br />
Elstead, o 5 Surrey,<br />
o d<br />
Zaskon L 2 . 5 0<br />
Rock n Wrestle 1 4 §9<br />
This e3 lu st a Sm a ll selection fro m o u r<br />
Stock Se n d now fo r our latest<br />
Cheque.iP Q.s to<br />
CLAIRES COMPUTERS<br />
16 Treganoon Road, Mount<br />
Ambrose, Redruth, Cornwall<br />
TR15 10Z. Tel: 0209 211930.<br />
FOR YOUR SOFTWARE NEEDS<br />
m<br />
f<br />
i<br />
e<br />
l<br />
i<br />
s<br />
k SOFTWARE TO SELL!<br />
,<br />
EFOR<br />
ADVERTISING DETAILS PHONE<br />
4<br />
. DUNCAN NEILSON ON 01-437-0626<br />
d 0<br />
S<br />
o<br />
0<br />
t<br />
a<br />
f p<br />
t<br />
e<br />
.<br />
YOUR COMMODORE<br />
01-437 0699<br />
EXT. 291<br />
COMMODORE REPAIRS<br />
Commodore rape rs by Commodore<br />
approved e n g in e e rs R e p a ir p rice s:<br />
Vic 2 0 mueslis:tor EOM . Vic 2 0 E15.00.<br />
OBM 64 from C20.00 C2N from Et a p 1541<br />
Irons £20.00. C5 4 psu E13.50. Spectrum<br />
E16,50. Cesoon E32.00 Electrons, Ala n .<br />
For more i-formalinn SAP nr felephone:<br />
G.C. BuNCE & SON,<br />
36 Burlington Road, Burnham,<br />
Bucks S11 7E30.<br />
Tel: (06286) 51695.<br />
Siam-Epal Mon-Fri.<br />
GENERAL<br />
Send your requirements to:<br />
STUART TAYLOR<br />
ASP LTD, 1 GOLDEN SQUARE,<br />
LONDON W1<br />
REPAIRS<br />
BUY OR SELL your unwanted<br />
software, booKs and hardware. We<br />
put you oire-ctly in contact with<br />
each other in your area, Details:<br />
Second Hand Computer Sales<br />
Agency. 38. Bowling Alley Walks,<br />
Dorchester. Dorset. Tel (0305)<br />
64849 (24 hrS).<br />
DISCS<br />
FREE DISKS !!!<br />
For every 10 ordered we supply 11<br />
SSiDD E10.99 SSIOD E13.19<br />
DS/DD E13.19 DS/OD E15.39<br />
3<br />
SiSide E27.49<br />
1<br />
DISide E32.99<br />
All prices INCLUDE<br />
/<br />
VAT<br />
Delivery is FREE<br />
All disks guaranteed 2 for 12 months<br />
Cash with order " please to<br />
HOLLBARN Ltd., Dept CM1,<br />
8 Alexander Road, Stotfold,<br />
Hilchin, Herts. SG5 4NA.<br />
''MR FLOPPY" Discs. The<br />
Universal discs will work reliably<br />
on ANY drive. DiS CID 961pi<br />
80tr. 10 for E15, 25 E35, 50 E65,<br />
lifetime warranty. SantellSoft,<br />
10 Pennine Drive, NVV2 1PB, 458<br />
1491. Unbranded discs D/S80tr,<br />
10 for E12, Prices inclusive.<br />
EPROM<br />
PROM-64<br />
EPROM programmer for 8K. 18K,<br />
LIF socket. Vpp generator &<br />
software on tape E 3 4 . 7 5<br />
64-CARTridge, 2 8K E5.95<br />
DEMO EPROM 8K E 4 . 9 5<br />
DHOE1-2 EPROM eraser 02.95<br />
1 5'.e. VAT<br />
Cambridge Microelectronics<br />
One Milton Road, Cambridge<br />
CBI<br />
Tel: (0223) 314914 Tlx: 81574<br />
TRIDENT ENTERPRISES<br />
LTD<br />
Commodore 64 -El& Vic 20<br />
- E12.50, Spectrum -<br />
E10.50, QL - E313. 1541 Disk<br />
Drives - E20, and all Commodore<br />
systems. Send faulty<br />
machine with note describing<br />
fault to:<br />
UNIT 7, WENTWORTH INDUSTRIAL<br />
COURT.. GOODWIN ROAD, BRITWELL.<br />
SLOUGH TEL : 0753 2139<br />
1<br />
Overseas enquiries welcom e.<br />
(Above p n ce s are e xclu sive o f<br />
pants and VAT).<br />
HARDWARE<br />
Super Breaker<br />
Back-Up Board<br />
For thy Gommoccre 64, C8f.,1 t28<br />
VIC-20. When a second CEIM type cassette<br />
u n it is connected to the board<br />
will m a ke se cu rit y baCk-up Copies o f<br />
cassette b a se d So ftwa re , in clu d in g<br />
Turbo,<br />
, Machine C o d e a n d D a t a File s N o<br />
Fast<br />
additional so ftwa re is needed. Ve ry<br />
User Frie n d ly. t h e b a ck-u p co p y is<br />
Lmade o aon<br />
the second cassette while the<br />
doeginal e r is loading on the fi rst Price at<br />
s E8 . 95 Plu s P&P.<br />
B<br />
RESET CARTRIDGE for ce m 84. This<br />
a<br />
cartridge will reset a ll, ye s a ll. memory<br />
sresident i p ro g ra m s. In clu d in g a ll p ro -<br />
c prams where standard reset switch e s<br />
fail Price E7 95 - P&P.<br />
a<br />
nP&P<br />
55p U K (Europe add E1.00, e lse -<br />
dwhere<br />
add E2.001. Se n d cfl e q u e<br />
/ ,<br />
order, or a Vamp for details to:<br />
opoStal<br />
C. Kent, 28 Northcape Walk,<br />
r Corby, Northants, NN18 900.<br />
For enquiries lelephone (0536) 742622<br />
SPORT<br />
Horse form CBM .<br />
graphics/sound. 6.1-• printer/screen<br />
Output. - Save-load 2 8 ra ce tiles, e a sy data<br />
entry. Fo r the m ore d isce rn in g Hal<br />
racing m en H o rse Torn, g ive s<br />
winners (7 , 9 5 cassette.<br />
Otieque<br />
, SEESAW SOFTWARE.<br />
Soy No . 212, Ye Arg u s Sp e cia list<br />
P0<br />
Peelications, No . 1 . Go ld e n Square,<br />
London W1 R 3A13.<br />
When replying to<br />
classified advertisements<br />
readers are recommended<br />
to take steps to protect<br />
their interest before<br />
sending money.
Advertisements placed in this magazine are to be in strict compliance with our standard conditions (copies of which<br />
conditions are available on request) and on the clear understanding that the advertiser warrants that his<br />
advertisement(s) does not infringe any copyright or condition of sale of any interested party in the advertised<br />
product.<br />
Further, the advertiser indemnifies the proprietors of this magazine in respect of costs, damages, or any other claims<br />
brought against them as a result of legal action arising from the publication of the advertisement.<br />
Any breach of these terms or the said conditions may result in prosecution of the advertiser by the proprietors<br />
FOR MIRE<br />
HIRE H I R E<br />
STAFFS COMPUTER LIBRARY<br />
CBM 64 OWNERS<br />
Join the friendly Library. We give you what you want. If a title<br />
is not on our list then we will get it, if it's still available.<br />
iGames only)<br />
• All the latest Titles<br />
• Full 7 Days Hire<br />
• Low Hire Cost. From 75p<br />
• Up to 4 Games per week<br />
• All games original<br />
• Lots of American Titles<br />
• Low Hard and Software prices<br />
• Membership ONLY £5.00<br />
Free mic Monitor on joining<br />
Send your cheques/postal orders payable to;<br />
STAFF COMPUTERS<br />
The Newlands, Greensome Lane, Stafford<br />
COMMODORE 64 cassette<br />
library. Hire latest games and<br />
educational software, only one<br />
price £1.50 per cassette 7 days<br />
hire. Details S.A.E. please C.C.L.,<br />
19 Darrell Way, Abingdon. 0)(14<br />
1 Ha<br />
TERMS<br />
CLASSIFIED ADVERTISING<br />
TERMS & CONDITIONS<br />
Our te rms for ne w a dve rtise rs (se midisplay<br />
a nd line a ge ) a re strictly protorma<br />
pa yme nts until sa lisla ctory<br />
reference ca n be taken up (e xcluding<br />
recognised a dve rtising a ge ncie ll.<br />
Cheques a nd PO's M ould be crosse d<br />
and made payable la ,<br />
ARGUS SPECI ALI ST PUBI CATI ONS<br />
LTD.,<br />
and send together with the<br />
advertisement to,<br />
THE CLASSI FI ED DEPT., U K<br />
NO: 1 GOLDEN SQUARE, LONDON.<br />
WiR 3 AB.<br />
There a rt no reimbursements for<br />
cancellations. Advertisements a rriving<br />
too isle for a pa rliclula r issue will be<br />
Inserted I n he totovoing issue unle ss<br />
accompanied by I nstructions to the<br />
contrary.<br />
All a dve rtising pa le , a re subje ct to<br />
Government re gula tion' conce rning<br />
VAT. Adve rtise rs a re re sponsible for<br />
complying with the va rious loge l<br />
requirements in lyre s e g. The Tra de<br />
Description Act, Se x Discrimina tion<br />
Act 4 The Busine ss Adve rtise me nt'<br />
(Disclosure) Orde r 1977.<br />
FULL TER M S & C ON D I TI ON S OF<br />
A0vER rsI N G AVAI L ABL E ON<br />
REOLeEST<br />
FOR SALE<br />
MOONRAKER E7.95<br />
COMM Space Game features fest<br />
afty-into Rolling Roder Display<br />
*intro Red Target Screlin<br />
Altitude, Time, Score indicators,<br />
Fuel/Psychos* Option, Promotion.<br />
Send your name, address 11. POrchequelM<br />
& J Gilmour Ltd.,<br />
Dept 'WOW 4 Copes Clove, Use,<br />
Hampshire OU33 YEW, England.<br />
Tei: 0030-11113430.<br />
WARNING NOTICE<br />
VIC-20/CBM-64<br />
SOFTWARE HIRE<br />
Free M embership. Hundreds of Title s<br />
to choose from Se nd 5 A E lot your<br />
Free Hire Kil<br />
VSH (YU), PO BOX 65., NOTTINGHAM NO'<br />
SOFTWARE<br />
APPLICATIONS<br />
HOME ACCOUNTS<br />
Put your house in order!<br />
Probably home computing's<br />
best use! Comprehensive<br />
coverage of bank accounts.<br />
Credit cards, HP in-built<br />
accuracy check. Records all<br />
transactions, Protects cashflow<br />
for any period ahead<br />
Available for Complete Commodore<br />
Range. E.8.45 or free<br />
details from:<br />
Discus Software<br />
Freepost<br />
Beach Approach<br />
Brixham TO5 8BR<br />
Tel: 08045 55532<br />
TO ADVERTISE IN THE ONLY<br />
INDEPENDANT COMMODORE<br />
MAGAZINE<br />
PHONE DUNCAN NEILSON NOW<br />
ON 01-437-0626<br />
HARDWARE<br />
* BACK-UP-SYSTEMS FOR CBM-64 & VIC-20 *<br />
The BACK-UP-BOAHO M h I is the fastest. and easiest wa y to ba ck up your tape<br />
programs. With this board you ca n connect a se cond CBM cassette cheek to your<br />
computer. You can copy a program on the second deck while the original loads from<br />
the first. You ca n back up a ll fast loaders, data files, e tc. BACK-UP-BOARD M k. I<br />
E10 DO inc. P&P.<br />
BACK-UP-BOARD M k. 2 This new verSiOn at our famous BACK-UP•BOARD is now<br />
proving so popular it is outselling our original M k. 1. This new board now works two<br />
ways. Switched to 'NORM AL it operates as the M k. 1 Switche d to 'GENERATE* , 6 4 '<br />
ownerS can use our special transfer software to regeneratea Copy Oa program on the<br />
second deck as it loads from the first. This method can produce a better clualityCopy<br />
than the original BACK-UP-BOARD M k 2 & Software E14 50 inc. PAP Conve rsion<br />
service. Return your M k. 1 Boa rd, if purchased from us, to be modified to M k 2 for<br />
E4 50 including software & P&P.<br />
AZIM UTH HEAD ALIGNM ENT TAPE by INTERCEPTOR for 641'. Use this le st tape<br />
with your '5 4<br />
-instructions<br />
and scre wdrive r supplied. E8.50 inc. PAP<br />
10 ROM SWITCH/RESET BOARD. Fit this board in the expansion pert or your '64' and<br />
a<br />
yOu<br />
d<br />
ca<br />
i u<br />
n reset<br />
s t<br />
ALL programs. Resets programs that a standard reset switch ca n't. A<br />
%ockel f o r a 2754 BK eprom is also fitted. Fu ll in stru ctio n s supplied £ 8 .9 5 Inc P&P<br />
t h e<br />
Please send SAE for more details of the above products. Send your cheque/PO to.<br />
h e a<br />
TURBOTRONIC<br />
d s<br />
o46<br />
Ripon SI., Parkinson Lane, Halifax, West Yorkshire HX1 3UG.<br />
f<br />
Tel: (0422) 52020<br />
y o (Europe add 50p outside Europe add E1.50)<br />
u r<br />
d e<br />
c k<br />
s<br />
tFOR<br />
A POSITIVE<br />
GAMES<br />
o RESPONSE!<br />
m<br />
a PHONE FOR A<br />
k<br />
e COMPREHENSIVE<br />
8<br />
p e ADVERTISING<br />
r f<br />
e c PLAN ON<br />
t l<br />
y 01-437-0626<br />
m<br />
a<br />
t<br />
c<br />
WORD DEALER, an exciting<br />
word game for up to four<br />
players. Four play levels too!<br />
Send cheque/P.O. E125 to R.<br />
Porter, Woodside House. Abbey<br />
Road, Scone, Perthshire, PH2<br />
8LL (C16 and plus/4).<br />
h<br />
e UTILITIES<br />
COPY<br />
d<br />
p<br />
DEADLINES<br />
a<br />
The long awalled 1541 Utility Disc<br />
i<br />
V1 .4!!!<br />
r<br />
As . we promised It features:<br />
• oisc P copier V1 2<br />
'r<br />
u<br />
lo copie r V1 2 copie s file d up to 196<br />
blocks long,<br />
• Ml enu drive n disc aid system with 12<br />
useful l commands.<br />
• Autoboot utility.<br />
• Program address reader<br />
- Qua lity packing arid documentaliOn,<br />
FOR YOUR<br />
COMMODORE<br />
All I bis tor rust E.9.95 on disc including<br />
1st cla ss post packing and VAT<br />
Please make chaquetP.O. payable lo<br />
AURASOFT (Dept Mi)<br />
4 Ash Grove, Nelson, CS4 66LR•<br />
AUG — 2nd MAY<br />
SEPT — 24th JUNE<br />
OCT — 28th JULY<br />
NOV — 26th AUG<br />
DON'T MISS OUT<br />
PHONE 01-437-0626<br />
FOR DETAILS<br />
GADGET 64 E6.95<br />
This 100% machine coat C1111164<br />
coseette utilIty theirs: Append, Dekne,<br />
Renumber Withering Got% Golub. etc.)<br />
Satisfyingly simple to use- Send your<br />
Nome, Address a PO or Cheque tor<br />
(PIP Frei) to<br />
& J Gilmour Ltd,.<br />
Dept TC4/08, 4 Copse Close, uss,<br />
Illempohlre 0U33 TEW. England.<br />
Tel: 07304113430,
FEATURING<br />
4 built-in 18-hole championship<br />
courses in both "3D AND PLAN VIEW"<br />
Wentworth Old Course. The Belfry<br />
Sun ningdale • Royal St Georges<br />
0,1 t t<br />
..zte.ta ‘<br />
CA ..,J1<br />
06a<br />
l<br />
I<br />
e C:<br />
to<br />
ot " s<br />
Get<br />
Oi<br />
Oll<br />
w<br />
s<br />
7<br />
DM/Ingot, ermillfhp<br />
tee.<br />
S<br />
"<br />
m<br />
e<br />
c<br />
N<br />
t<br />
i<br />
g<br />
t<br />
h<br />
e<br />
g<br />
r<br />
a<br />
i<br />
l<br />
.<br />
-<br />
P L<br />
u<br />
t Special<br />
ucompetition!<br />
n Win E500 worth<br />
i of golf equipment,<br />
a (or cash equivalent).<br />
M Full details with cassette or disk.<br />
t<br />
PLUS + + + + + + + + + + +<br />
• An easy to use Construction Set<br />
enabling you to build and play on<br />
any course in the world or an<br />
imaginary one of your own design in<br />
"3D AND PLAN VIEW"<br />
• Up to 4 players<br />
• Save game feature<br />
STRUCTION SET<br />
r An extremely sophisticated, authentic<br />
and exciting golf simulation program.<br />
VARIABLE FEATURES INCLUDE:-<br />
• Save Handicap feature-as you<br />
improve so does your handicap • sP 4<br />
• Wind<br />
(0<br />
speed, temperature V r 0\<br />
and ground conditions<br />
• 6- Choice 6 eof<br />
clubs<br />
• Lie of the ball<br />
• Strength of shot<br />
PLUS YOUR CHOICE OF PRACTICIIRODE/TOURNAMENT PLAY OR \ MATCH PLAY<br />
c<br />
e<br />
, jEL, SOUNDS AUTHENTIC?iTiSILAI J I ><br />
GET YOUR COPY OF encould- CON5 RUCTIONS • Tr NOW<br />
's not there, Wease<br />
A<br />
-P<br />
made Out to Ariolasoft U.K. Ltd., including your own name and<br />
. o vaddress,<br />
yto Arlolasoft o U.K. u Ltd., BB r Long Acre, crossed London cheque/ WC2E BM.<br />
-The<br />
Golf Construction Set C64 disk Elli.95<br />
a<br />
lUK<br />
orders only. Prices Include P & P. Please allow 28 days for delivery.<br />
lP.<br />
The Golf Construction Set C64 Twin Cassette E12.95<br />
\-‘<br />
‘16<br />
.<br />
‘<br />
,<br />
k<br />
t<br />
c<br />
c<br />
,<br />
oN C O<br />
\ '•C<br />
1 ‘<br />
C<br />
)<br />
e<br />
c<br />
,<br />
‘<br />
><br />
\<br />
HIGH PERFORMANCE PROGRAMS
MICROPOWE •PER: GAME<br />
Americana Software, all elican action at a superb<br />
value for money price of only<br />
SLANE _ _<br />
COMM<br />
' NEW - YORK CITY<br />
OD<br />
-<br />
ORE<br />
' 64/<br />
COMMODORE 64/128 • ATARI<br />
1 5<br />
SCOOTER<br />
COMMODORE 64/128 • ATARI<br />
OLLIE FOLLIES<br />
COMMODORE 64/128 • ATARI<br />
LICENSED TO THRILL<br />
M E " C A N<br />
/ SOFTWARE<br />
I ;,...4411