8-Bit Software Online Conversion

                  By 5FD (James Farmer. Headfirst PD) In response to your plea for a "deep delete" command, allowing recursive deletion of locked directories, I have written a program, Dirwipe. This shouls be placed in your library directory and run using: *DirWipe <dir name> or */DirWipe if you already have a rom using *DirWipe. It deletes the directory given and all its contents, accessing the files first to ensure they delete. Of course it is only intended for ADFS. However, it is legally written (in the most, see below) and so should work on Econet or any other hierarchial filing system, provided they conform to Acorn guidelines. DirWipe does unfortunately use zero page workspace from &86 to &8F, so if the current language does not reallocate that area for the user, then DirWipe is not guaranteed to work. DirWipe also uses the whole area from &900 to &CFF and so will wipe out ENVELOPES 5-16, function key definitions, and user defined characters. Dirwipe will also not work if not running on the I/O processor. If anyone wants to alter it, the source code is also given (DWSRCE). Please note that DirWipe is not Public Domain. It is my copyright and I give permission for copies to be made freely by anyone and sold by PD libraries for no mere than £2. I also give my permission for it to be distributed by any disc-based magazine or on any magazine subscription or cover disc. If the program is altered, all the original credits must be left intact, with just a note added saying who altered it and when. It would be helpful if anyone who alters it would send it with the new source code to Headfirst PD. This would help us keep track of it. Altered versions may not be distributed until this is done.            When I was younger (that's going back a bit!) and looking in shop windows I noticed that some price tickets had letters with the price digits. As it appeared to be a code I then jotted down as many prices and letters as I could see and then had a go at cracking the secret(?) code. The ten all different letters always turned out to be a word. The code usually reminded the shop keeper of the price he/she paid for it. Recently I was looking in an antique shop window and there was another price code. (The old way of coding was most probably as antique as the goods for sale!). Much to my amazement and amusement I cracked the code. So, I thought, why not do a program using the idea. After a lot of sweating to find ten letter words, and sweating over a 'spaghetti' program I managed to come up with something that works. Being a 'make life easier bloke' I've given you some very good clues (You wont get these from a shop!) to make it very easy indeed. The name of the file is "PriceEi" this is an 8-BIT SOFTWARE version. There is another version, "PriceSo", it contains different code words, that I have done especially for SOLINET disc magazine. Please let me know if you like it or not or have any trouble. Best of luck. ROY 20G  Wavey program - another YJ2 experiment: ÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷÷ This is another incomplete program of mine which (I hope!) the intelligent 8BS members should be able to solve.... This program creates a "wavey" pattern out of the drawing of a series of circles which eventually fill up the screen (good so far apart from the fact that it is not very fast - now the problem). I now want the colours (MODE 2) to cycle from 1 to 7 (once getting to 7 resetting to 1) - unfortunately I have found this harder than expected and as a result all that occurs is one colour change. Help !!!! NOTE: The file "Wavscr" contains a saved screen of the result for the lazy of you out there.          By C.J.Richardson. MASTER ADFS ONLY. After a while, an ADFS disc can end up with large numbers of very small free spaces. This happens when you save and delete programs lots of times. Eventually, there may be a lot of free space on the disc, but spread all over the surface in small amounts. You may then be unable to save a large program onto the disc, even though, in theory, there is plenty of room for it. If you type *COMPACT 0E 72, the disc is compacted by shuffling programs about until the spaces join together to form larger spaces. Unfortunately, more often than not, typing *COMPACT 0E 72 just once is not enough. Usually I find that I have to type it several times before the disc is totally compact, especially when it is nearly full. This problem crops up a lot when compiling the ADFS 8BS issues. This program *COMPACT's an ADFS disc until the free area of the disc is all in one place. This will enable you to fill an ADFS disc to the brim without having to type *COMPACT 0E 72 repeatedly. The program simply clears the screen, *MAP's the disc and sees where VPOS is. If VPOS is greater than 3, then the map has more than one line to it and is therefore not completely compacted. If this is the case, the disc is *COMPACTed again. Whatever you do, DO NOT stop the program while the drive is working. During *COMPACT the disc can be in an inconsistent state (another word for nearly useless), it is not a bad idea to *BACKUP before comacting (listen to me, I never bother, what if there's a power cut). This will not work in DFS folks! There is absolutely no need for it in DFS as *COMPACT always compacts the disc into one lump straight off.      by Steven Flintham (15A) ------------------------ Decision Maker is a program which is designed to help you to chose between a number of alternatives. It accepts a list of possible options and then asks you to chose between pairs of these options so that it can produce a ranking table in order of preference. You can then print out or save this list to disc if you want to. You might feel that this is a poor way of making a decision, and you are probably right. However, I have found it useful on one or two occasions and simply playing around with it might help you to come to a conclusion in a more sensible manner. Using the program ----------------- On running the program, you will be asked for the filename of the file containing the options. This file should be produced on a wordprocessor or text editor and should have one option per line followed by a carriage return or line feed. As an example, a file 'Colours' is provided which contains a list of colours to choose between. There is a maximum of twenty options. If a file contains more than this, the program will accept it but will ignore any excess options. You will be warned if this happens. Having entered the filename, the program then goes on to ask you which of two options you prefer, allocating points to the preferred option. This is repeated until each option has been compared with every other. Making the decision in this way allows you to concentrate your attention on just two options at a time, rather than trying to cope with the whole set at once. Once this stage has been completed, the program will display a list of the options in your order of preference. You can print this by pressing P or save it to disc by pressing S. Pressing R will re-run the program. You can press CTRL-@ at any time to escape from the program and return to BASIC. Comments -------- Because of the way the options are chosen for pairing, an option will appear several times in a row. It would, in my opinion, be rather difficult to avoid this. Each option still appears the same number of times as each of the others. To minimise the effect of a preference for choosing (for example) the first option of the two displayed, the program picks the option to be displayed first at random, rather than displaying them in the order in which they occurred in the list. It would be possible to modify the program to allow more than twenty options but this has not been done because: a) Even twenty options require a lot of individual decisions to be made - 190 in fact. The number of individual decisions which has to be made is the sum of all the numbers up to but not including the number of options - in mathematical terms, the sum of the first n-1 integers, where n is the number of options. It is therefore unlikely that you would want to handle more options since it would take a long time to finish the decision making process. 21 options would require 210 individual decisions, for instance. b) The mode 7 screen is only 25 lines deep and allowing for a heading etc there is only room for about 20 options to be displayed in the final ranking table. It would be possible to implement a scrolling ranking table, but this would be quite tedious to program and given the other problems associated with large numbers of options it seems a fairly pointless exercise. The printout has been kept deliberately simple because I wanted to avoid using any special features which might not be present on certain printers. You should be able to modify it to (for example) use NLQ and print the title in bold, or whatever you fancy. Although some checks are made when loading or saving a file, it would be impossible to manually handle every possibility. The error handler therefore intercepts all errors in the range &BD-&D6, which are those generated by the DFS (and presumably also the ADFS, in the absence of specific documentation). If one of these errors occurs, the program informs the user and then executes a GOTO file`error`line% in order to return to the point in the main program loop where the error occurred. However, there is a problem with this. As there are two separate parts of the program in which such errors could take place, the GOTO cannot have a fixed line number - hence the use of file`error`line%. This means that inserting any lines before line 200 and renumbering the program will prevent it from running properly unless the line numbers stored in file`error`line% are modified accordingly. Credits ------- I must mention that this program is based on a slightly simpler version which appeared several years ago (1986??) in The Micro User. However, the program code is completely original.                By C.J.Richardson. Mick Needham digitised a load of pictures for me from a video that I sent to him. Thanks Mick. I was left with a few pictures that I thought would be interesting, but not interesting enough to fill 1/4 of an 8BS issue! The idea struck me to squash some pictures up onto one screen. This program does just that. To use it you have to enter the names of the original screen files into four data statements at the end of the program. Then enter into the very last DATA line the name that the finished screen will be saved to disc by. The DATA statements between the screen file names contain hexadecimal numbers. Leave these alone unless you want to change the position of the squashed screens on the final screen. They are the start locations on the screen for the top left corner of each of the pictures. The example screen 8BSpics is available from the menu.    