To: 999 (all members)
From: K6N (Brian Raw)
Subject: RE-MC documentation
!!!FIRST ATTEMPT BY NEW MEMBER !!!
This utility started life on my TRS-80
it not having any renumbering facility
at all , the need was obvious.
However since this utility provides
for a stopping line I still find it
useful on my ELECTRON/BEEB. Since
on larger programs it stops your PROC-
edures from wandering about after
using RENUMBER.
To facilitate this line .....
29999 END:REM or anything else
.....must exist in your program.
Line numbers above this are unaffected
though you may renumber these by
entering the actual line numbers in
response to the prompts.
On entering the program you are first
asked for the START LINE enter an
existing number or just <RETURN> will
set it to the FIRST LINE.
Next comes the NEW START LINE enter
desired number or just <RETURN> here
will set it to the same as START LINE.
Next comes the STOP LINE be careful to
enter an existing line or just press
<RETURN> and it will be set to the
line BEFORE 29999 thus protecting any
lines above this piont.
Next comes LINE SPACING enter any
number or <RETURN> sets it to 10.
So a total renumbering upto line 29999
exclusive involves pressing <RETURN>
to all the prompts. But the beauty of
it is the ability to open up the lines
say of a single PROCedure.
The coding RE-MC was assembled to
&53FC and must be *RUN or CALLed after
*LOADing
However I have included RE-ASS embler
should you wish to alter it.
REMarks were removed a long time ago I
find they make the thing unreadable
once you get the hang of a particular
coding . Fortunatley I had a good
christian upbringing, the file RE-REM
can be *EXECed back into the assembler
should you wish to peruse it.
I hope you find this utility as useful
as I have over the years especially
for those still struggling with a tape
based machine.
bye for now!
Editor..... Just one point to note is
that Brian had used the Hash in
filenames which is incompatible for
ADFS so I have removed them (I hope).
To: 999 (all members)
From: K6Q (Leslie Roberts)
Subject: Saving deleted files
The following two programs were
written to deal with the problem of
files accidently deleted. The first
'FINDEM' locates any files on the disk
which are not included in the
catalogue, and the second one 'RESCUE'
loads them into the Computer ready for
resaving. Both are compatible with the
Acorn DFS, but not necessarily with
disks produced by other systems (ADFS,
Watford DFS, etc). They are easy to
use and need very little explanation,
simply supply the information
requested.
One likely problem is when there are
several deleted files on a disk and
you aren't sure which is the one you
want. The best method I find is to use
a disk sector editor; using the
information provided by FINDEM check
each one until you discover the
correct file. If you don't have a disk
sector editor then you could load each
one in turn into RAM using RESCUE. If
you are searching for a BASIC program
type 'PAGE=&3000' and try to list it;
and for a machine code or data file
check RAM starting at &3000 with a
memory dump program. But the disk
sector editor is much easier. This
program will only deal with properly
ordered catalogues. If any of the
files in the catalogue are out of
sequence the results could be
unreliable; although the disk
controller doesn't seem to object to
files being out of sequence.
Some users might need to make slight
alterations to 'RESCUE', as follows.
If you have a forty track drive the
number 800 in line 290 will need to be
changed to 400; and the number 799
(twice) in line 300 should be altered
to 399. In line 410 the penultimate
group of figures (8023) will probably
need to be changed if you use a
different BASIC to BASIC 2. And the
last group (1900) should be changed if
you load BASIC programs into a
different PAGE number, (you might also
want to alter line 440).
To: 999 (all members)
From: K6Q (Leslie Roberts)
Subject: Bad Program fixer
I am sure that we have all experienced
that dreaded message 'Bad Program'.
The file 'BADFIX' is a machine code
utility designed to make a BASIC
program at least 'listable' (in full
or part), and frequently to enable it
to be 'run'. It attempts to fix the
program at the PAGE setting, so make
certain that PAGE is set to the
program concerned. To use it simply
insert the disk containing BADFIX,
type *BADFIX and hit <RETURN>; the
program will beep to let you know when
it has finished. Once loaded it can
be rerun by typing 'CALL&900', this
saves having to insert the disk again.
If a carriage return (0D) is missing
from your program BADFIX could join
two lines together resulting in a line
longer than the permitted maximum (255
bytes), this would terminate the
program before its end. If this
happens we must overwrite the false
terminator byte(FF), type the
following A=TOP-1:?A=0 and press
<RETURN>, then rerun BADFIX. This will
probably pull in the remainder of your
program.
If the final codes of a program (0D
and FF) are missing, BADFIX could add
a little garbage to the last line,
this can usually be removed by
editing. Any control codes in the
program are replaced with '@'. The
coding has not been optimised for
speed but should be fast enough for
most people.
Also on the disk is the source code
'BADSCRE' for those people who like to
study and tinker around with such
things. If you need to run the
utility from a different location
(other than &900) change the assembly
address in line 70 and the two
addresses in line 800, remove the REM
from the beginning of line 800 and
'run' the program to reassemble it and
automatically save it to disk.
To: 999 (all members)
From: K4D (Lorin Knight)
Subject: WORLD MAP program
Richard Wilmot, trading as Technical
Software, produced some BBC-B programs
for the radio amateur and he has now
kindly given me copies for 2J3 to put
into the PD library.
One of these, which produces a novel
world map, will be of general interest
outside the realm of amateur radio and
I have produced a slightly simplified
version for incorporation in the
magazine. The map shows the daylight
and darkness zones, and continuously
updates these. It also gives the
distance between any two locations and
plots the great circle path between
them. Locations may be specified by
latitude and longitude or by place
names. (The program recognises the
names of some 250 cities and islands
around the world - and can give the
local time at any of these).
OPERATING NOTES
After drawing the map, the program
asks for the date and time and, after
a pause, displays the darkness and
daylight zones. You are then asked for
your base location. You may enter
degrees of latitude or one of the
place names listed below. You do not
need to specify which you are
entering; the program detects this
automatically. If you enter degrees of
latitude, the program then prompts you
for minutes of latitude, N or S,
degrees and minutes of longitude, E or
W. An invalid entry will cause the
program to prompt you to try again. If
your base location lies in the map
area it will be marked with a circle.
The program then prompts you for the
distant location. Enter it as
described for the base location. It is
plotted on the map and the great
circle path to it is drawn as a line
of dots, 1000km apart. Printed below
the map is is the latitude and
longitude, distance, beam and return
headings (i.e. the direction in which
the local and distant aerials should
be pointing). If the distance is over
16000km, the figures for the long path
are also given.
You are then prompted for the next
location. If the program is updating
the daylight/darkness display while
you are entering a location, your
typing will not be printed
immediately. Don't worry; it is not
being ignored and will be printed and
processed in a few seconds' time. If
you want to change the base location
enter "N".
The location of place names is
stored only to the nearest graphics
pixel and so should not be relied upon
for accurate measurement, particularly
of short distances.
If the base is located at one of the
poles, all bearings from it are
indefinite and no great circles are
printed. If the remote location is at
the antipodes of the base, all
bearings are indefinite and not shown
or plotted.
PLACENAMES RECOGNISED
ABIDJAN, ABU DHABI, ACCRA, ADDIS
ABABA, ADELAIDE, ADEN, ALBUQUERQUE,
ALGIERS, ALMA ATA, AMMAN, AMSTERDAM,
ANCHORAGE, ANDAMAN IS, ANKARA,
ASCENSION I, ATHENS, ATLANTA, AZORES,
BAHAMAS, BAHRAIN, BAKU, BALI,
BANDJARMASIN, BANGKOK, BARBADOS,
BELGRADE, BELIZE, BERLIN, BERMUDA,
BOGOTA, BOMBAY, BOSTON, BRASILIA,
BRAZZAVILLE, BRISBANE, BRUNEI,
BRUSSELS, BUCHAREST, BUDAPEST, BUENOS
AIRES, BUFFALO, CAIRO, CALCUTTA,
CALGARY, CANARY IS, CANTON, CAPE VERDE
IS, CAPETOWN, CARACAS, CAROLINE IS,
CASABLANCA, CAYENNE, CHAGOS IS,
CHICAGO, CHUNGKING, CLEVELAND,
CLIPPERTON I, COCOS IS, COLOMBO,
COMORO IS, COOK IS, COPENHAGEN,
CORSICA, CRETE, CROZET IS, CYPRUS,
DACCA, DAKAR, DALLAS, DAMASCUS, DAR ES
SALAAM, DARWIN, DELHI, DENVER,
DETROIT, DUBLIN, EASTER I, EDINBURGH,
EDMONTON, FALKLAND IS, FAROE IS, FIJI,
FREETOWN, GALAPAGOS IS, GEORGETOWN,
GORKI, GUAM, GUATAMALA CITY, HALIFAX,
HANOI, HARARE, HAVANA, HAWAII, HEARD
I, HELSINKI, HO CHI MINH, HOBART, HONG
KONG, HOUSTON, IRKUTSK, JAKARTA,
JAMAICA, JOHANNESBURG, KABUL, KAMPALA,
KANSAS CITY, KARACHI, KATMANDU,
KERGUELEN I, KERMADEC IS, KHARKOV,
KHARTOUM, KIEV, KINSHASA, KUALA
LUMPUR, KUCHING, LA PAZ, LACCADIVE IS,
LAGOS, LEEWARD IS, LENINGRAD,
LIBREVILLE, LIMA, LISBON, LONDON, LOS
ANGELES, LUSAKA, MACQUARIE I, MADEIRA,
MADRID, MAKASAR, MALDIVE IS, MALTA,
MANAGUA, MANILA, MAPUTO, MARIANA IS,
MARQUESAS IS, MARSHALL IS, MAURITIUS,
MELBOURNE, MEMPHIS, MEXICO CITY,
MIAMI, MIDWAY I, MOGADISHU, MONROVIA,
MONTEVIDEO, MONTREAL, MOSCOW, NAIROBI,
NEW CALEDONIA, NEW ORLEANS, NEW YORK,
NICOBAR IS, NORFOLK I, NOVOSIBIRSK,
ODESSA, OKINAWA, OMAHA, OSLO, OTTOWA,
PANAMA CITY, PARAMARIBO, PARIS,
PEKING, PERTH, PHILADELPHIA, PHOENIX,
PHOENIX IS, PITCAIRN I, PITTSBURG,
PORT AU PRINCE, PORT MORESBY,
PORTLAND, PRAGUE, PUERTO RICO, QUITO,
RANGOON, RECIFE, REUNION I, REYKJAVIK,
RIGA, RIO DE JANEIRO, RIYADH, ROME, S
GEORGIA, SALT LAKE CITY, SAMOA, SAN
FRANCISCO, SAN SALVADOR, SANTIAGO,
SANTO DOMINGO, SAO PAULO, SARDINIA,
SEATTLE, SEYCHELLES, SHANGHAI, SICILY,
SINGAPORE, SOCIETY IS, SOEUL, SOFIA,
SOLOMON IS, ST HELENA, ST JOHNS, ST
LOUIS, STOCKHOLM, SURABAYA,
SVERDLOVSK, SYDNEY, TAHITI, TAIWAN,
TANANARIVE, TASHKENT, TEHRAN, TEL
AVIV, TIMOR, TOKELAU IS, TOKYO, TONGA
IS, TORONTO, TRINIDAD, TRIPOLI,
TRISTAN DA CUNHA, TUAMOTO IS, TUNIS,
TUVALU IS, ULAN BATOR, VANCOUVER,
VANUATO IS, VIENNA, VILNIUS, VIRGIN
IS, VLADIVOSTOK, WAKE I, WARSAW,
WASHINGTON, WELLINGTON, WINDWARD IS,
WINNIPEG, YAKUTSK, YAOUNDA, ZURICH.
PRESS BREAK