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.