Skip to main content

Hardcore Volume 4 No. 6 1984 12 BASUG GB

  • PublicationApple Periodicals
  • Date1984-12-01
  • Pages60
  • SourceHardcore_Volume_4_No._6_1984-12_BASUG_GB.pdf
← Magazines Hardcore Volume 4 No. 6 1984 12 BASUG GB
/ 60
Source: Internet Archive — Aggregated Apple-era periodicals, 1981–2012.
Page 1
Loading…
Text content (OCR)
hard core THE JOURNAL OF THE BRITISH APPLE SYSTEMS USER GROUP 9 MERRE EHRISTMAS Page 2 HARDCORE - The Journal of the British Apple Systems User Group — December 1984 ‘Ady AYLESBURY A405 SLOUGH = ow eh, aa 0 <—— a “wane HOW TO 6 ST ALBANS 1aand) FIND Lux [oox computer [\ ices LiMiTED! \O SLONIAL WAY | | tFst gate on ght {am Ra ns Services Ld COLONIAL WAY. WATFORD, HERTS tat TEL. WATFORD (092 67 Call in now for a Macintosh demonstratio: 3 micro-communications (prices include VAT and Post & Packing) Modems : PACE NIGHTINGALE Multi-stendard modem Selected 300/300 and 1200/75 modes. Full ‘oval by elected @8 | BABT. Auto-snswer/diel eveileble soon. excellent £136.00 «xx volute 10% | Miracle Technology W52000 moduler design al for future exoension. Multi-stenderd. BABT epproved. £149.90 Seriel Cord : PACE MASTERCARD 300/300 ond 1200/75 options, CCS 7710 competidle with ASCII-Pro compenionto DATA HIGHWAY £8600 xx Software: PACE DATA HIGHWAY by Ewen Wennop C tibt The complete communicetions program compatible |! Feeturing PRESTEL modes end ASCII. with Apple || with 1200/75 whole disk trenofer ond fuli I+ ¢/e & //c || remote mode. Packed with features £75.00 KX : FileVisiom the Meciatosh dets-bese xx of the future: Amaze your friends for £180.00 £ cell for price December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 3 hardcore THE JOURNAL OF THE BRITISH APPLE SYSTEMS USER GROUP P.O.BOX 176 WATFORD WO2 6NF BASUG Ltd. is a non-profit-making company limited by guarantee. Basug Committee Bob Raikes Chairman Norah Arnold Secretary Roger Gear-Evans Treasurer Graham Attwood Software Library Richard Beck Courses Richard Boyd Meetings, Local Groups KeithChamberlain Membership Tony Game Bulletin Board Roger Harris Literature Library Jim Panks ACC Representative Quentin Reidford John Rogers Peter Trinder EwenWannop Special Release Software Press Officer, Updates Prestel Fran Teo Administrator Yvette Raikes Hardcore Editor Teresa McKenzie Peter Blair & Jim Panks Assistants eretiteteertterteet titer ett ttt rer tt ers (HBA) HERR, is administration BASUG Telephone No.: (iil Please note: This number ONLY. Bulletin Board: (itil) Satie, Founder members of the Association of Computer Clubs. COPYRIGHT (C) - The contents of this journal are copyright of the British Apple Systems User Group and /or the respective authors. However permission will normally be granted for non-commercial reproduction by user | affiliated to the International Apple) provided the author and source are properly credited. The opinions and views expressed are those of the various contributors, and are not necessarily supported by the British Apple Systems User Group. CONTENTS . Editorial Chairman's Corner Expert Systems 12 Software Library 15 Special Offer 16 Mac Clock 17 Mac Notes 18 Wildcard Plus 20 Beginners’ Page 21 Correspondence 24 Applewriter IT & Graphics Dr. M. G. Johnston Patrick Bermingham & Phil King Roger Harris a Leo Crossfield Peter Trinder Mark Whelan John Sharp Gerry Corti 25 Course Reviews 26 Computer Music Book Reviews 36 Epson Pages 44 New Opcodes For the 65C02 45 Local Groups 46 Super Editor Ray Harris Dave Miller Patrick Bermingham Utility Graham Ashdowne 47 Listings for HI80 Plotter John Sharp 48 Exec Tip Phil King Re- inking Ribbons Readers' Letters 54 Three Years of Hardcore 58 Diary Roger Harris INTERNATIONAL APPLE CORE MEMBER OF THE INTERNATIONAL APPLE CORE HARDCORE iis produced using Applewriter I, and printed on an APTEC Flowriter with a Madeleine Daisy-wheel Front Cover: A seasonal Macintosh grecting from Norah Arnold, Page 4 HARDCORE - The Journal of the British Apple Systems User Group December 1984 Editorial As most of you will be aware, this is the last issue of which 1 will be the editor. Peter Baron will be taking over the reins and 1 hope you will all give him the help and support you have given me. Please continue to send in your tips, hints, problems, articles (learned or otherwise), reviews, news, small ads. etc. and don't forget to let us know what is happening so that we can keep the diary up to date and pass on information about local groups and special interest groups. Also, please support our advertisers, Without them there would be no magazine and they are unlikely to keep advertising if they don't have any response. So if you deal with one of our advertisers, tell them you saw their ad. in Hardcore, It helps us and them. Following on from that we would like to take this opportunity of thanking our advertisers for their support. over the past year and look forward to working with you again next year, We wish you all a prosperous New Year, Regarding sending things in issue, do remember that the is January 4th. In view of there may still be delays in the post after Christmas as well as before, it would be a great help if you could send things to us early. Apart from the convenience to us, it may be inconvenient to you to miss the next issue. We cannot guarantee space to anyone for the next next copy date the fact that but do try to get all entries in the first possible issue. However, there is _ little chance of late entries getting in. If you know you would like something in Hardcore but cannot produce your entry in time (for whatever reason), just let Peter know how much space your entry will take and when it will arrive. If he knows it is on the way, he will be able to consider whether to include it or not and can give a couple of days grace on receipt of your item, 1 wish everyone a Merry Christmas and a Happy New Year, Roger has an Apple /// for which he wants to make custom hardware interfaces. Apple will not give information about the signals available on the slots. At one time they advertised an OEM prototyping card which included full hardware details (Apple part no. A3B0001). Can anybody help with information? Please contact Roger Jenkins on HERE BT, Chairman’ Corner It has been very heartening that, following our appeal for a new editor, we had four candidates. 1 hope thar this reflects an increased feeling that BASUG is a club, and that members always feel that if they have something to contribute, they can. | would like to wish Dr Peter Baron, a member for some time of BASUG, success in his role as editor, Without your help, he will not be able to do such a good job. If you can help in any way, please let us know. 1 would also like to thank Yvette on behalf of all the members for the work that she has put in on the magazine. The standard of presentation is surely the highest of any of the user group magazines. Thanks are also due to Jim Panks who has been unable to carry on as Software Librarian because of work commitments. Graham Attwood has taken on the full job. As you may know, the Software Library is currently being upgraded to DOS 3.3, and soon will consist of fewer, but better disks. Recent additions such as those from Washington Apple Pi are already to a very high standard. We are currently looking for a volunteer to man the BASUG hotline, a job that involves pointing people to an expert within the group who may be able to help with a problem. If anybody is interested in helping with this valuable service, please contact Martin on the hot line to discuss what is involved or Fran to put your name forward. We are always looking for more ‘experts'. It doesn't matter how specialised your knowledgey we can use it. BASUG has a number of areas for ‘first aid’ with technical problems. We would like to establish a Technical group who could help solve more detailed, or written problems. If you are interested in acting as the coordin- -ator, or as one of the group, let me know. Please can I stress again that the BASUG committee and helpers are volunteers who have full-time jobs. Unless we print otherwise, please do not call outside weekday evenings. Finally, some of will already know that this is my last Chairman's Corner. At the time of writing, my successor is not yet elected, but 1 would like to wish him (or her) the best of luck, and ask all of you to give the same support and encouragement that I have received in my time as chairman. December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 5 Expert Systems EXPERT SYSTEMS : an overview by Leo Crossfield Computer Assisted Learning Group Department of Educational Studies University of Surrey October 1984 INTRODUCTION. Since the late 1960s a sub-discipline of main line artificial intelligence (Al) research has developed. This research has tended to concentrate upon the development of programs which capture a level of expert performance within a small field of speciality (domain), Expert system research is a sub-set of intelligent knowledge-based systems (IKBS) research; thus the main emphasis of this research effort lies upon the concept of ‘knowledge’ and __ its representation within the computer. The programs that were the outcome of Al research during the late 1950s and early 1960s, were attempts to develop domain independent problem solving routines, that is, programs which are capable of solving problems of a general nature. These early programs were found to be limited and the general approach was abandoned, although it still stands as an ideal. The new emphasis has tended to focus upon programs which are domain specific problem solvers that have a knowledge base of domain dependent facts and procedures (relevant to the specific problem domain) available to them. This new approach can be seen as a fundamental change in the principles of the approach towards the development of research into intelligent programs. WHAT DO WE MEAN BY THE TERM 'EXPERT'? There are many problems that are associated with what we understand by the concept of ‘knowledge’. Also there are problems as to what we mean when we say that a person is an ‘expert’ or that a person has ‘expertise’. If a person is said to have expertise, what does that person actually possess? Firstly we can say that the person is knowledgeable about a certain field or a given ‘topic, secondly we would usually feel quite justified to say that the person is capable of understanding and solving many of the problems which relate to the field or topic. Also, if such a person did not know the answer to a problem they would usually have the skills and knowledge to seek out appropriate journals, books, articles, or other experts in an attempt to find an answer, or they would at least have some idea as to where an answer might be found. So, our expert has two main areas of knowledge available to him - private and public knowledge and also two levels of knowledge, that which is specific to the problem and that which allows the expert to gain extra knowledge (usually when the private knowledge is either exhausted = or insufficient). THE EMPHASIS OF KNOWLEDGE IN EXPERT SYSTEM RESEARCH. "ae expert performance depends critically ‘on expert knowledge." (Hayes-Roth, Waterman & Lenat 1983 p 5). The move towards an emphasis on knowledge is of fundamental importance to Al research for a number of reasons; first, the most difficult problems do not have tractable algorithmic solutions for they are usually resistant to precise analysis = and description, unlike the problem areas of traditional. data processing (i.e., stock control, accounts, etc.) Secondly, such problems tend to have different levels of abstraction; this joined with an imprecise nature of the problem requires mechanisms which are capable of dealing with imprecise facts and thereby making inferences on the basis of the knowledge which is represented within the system. Furthermore, by emphasising the role of a knowledge base, within a system, we can see that there are many complex areas of human endeavour which might well be represented such as aspects of legal reasoning, medical diagnosis, criminal analysis, geological exploration as well as a number of military applications, The most immediate significance of this research effort has major relevance tor industry, the military and the government in general; although there has been a large number of developments in medical consultation. To date expert systems have tended to focus on several application areas which fall into the main categories of /—_diagnosis, monitoring, control, interpretation and prediction. The main concern of expert system research is in the area of private knowledge with the main question being ‘how can such knowledge be extracted from the expert?’ and if it can be extracted "how can this knowledge be represented within a computer?'. This Page 6 HARDCORE - The Journal of the British Apple Systems User Group December 1984 ‘approach has tended to view knowledge as some form of inexhaustible entity which people possess, Private knowledge can be viewed as ‘rules of thumb' (procedures) by which an expert arrives at a conclusion, with the expert sometimes not knowing what tules, if any, were actually applied to the problem. Such rules of thumb have been termed as heuristics which enable experts to deal with incomplete information yet still arrive at a meaningful conclusion. The use of heuristics play a major role in Al programs for they allow the program to limit the search space by differentiating between paths which could lead to a valid or reasonable conclusion from paths which are obviously irrelevant. The use of these strategies aim at reducing the possibility of an exhaustive search and by so doing reduce the amount of processing required. WHAT CONSTITUTES AN EXPERT SYSTEM? As we have briefly discussed above, an expert system is a computer program which embodies the expertise of one or more experts within a particular, usually quite small, domain. This expertise is seen as both factual knowledge and procedural knowledge. Therefore an expert system, as well as having facts about the domain, also encompasses stategies for applying the knowledge to specific problems, within that domain. Such strategies also allow the system to make useful inferences, but the development usually moves along. a development path which is quite different to standard data processing (DP). Because of the conceptual complexity of AI systems their development can often go through a number of cyclic development phases. Such a procedure could involve the results of each phase being discarded and the experience gained constituting the basis for the next phase. This approach to software development perhaps highlights the fact that Al programs can be considered as working hypotheses; consequently such an approach to software development is time consuming. The development of a useful expert system can represent a couple of years work for a small research team, but such time scales are difficult to assess because of the individual problems which are associated with each particular domain. These problems tend to vary considerably and depend very much upon the availability of experts in the field and/or expert information from other sources. The other major factor in development time comes down to the amount of effort which is required in extracting knowledge and representing it in a machine- like form. (The title of ‘Knowledge Engineer’ has been termed for the individual or individuals that are involved in this Process (Feigenbaum 1977). The amount of effort depends very much on the nature and accessibility of relevant software tools (and methodologies) that the team has at their disposal, SOFTWARE TOOLS. An important focus of expert system research (ike any good software development effort) is the development of software tools which aid the development of intelligent knowledge- based software. Artificial intelligence research has spent a number of years in developing appropriate tools for specific domains. Such tools are intended to ease the process of building an expert system with the focus upon knowledge elicitation, the knowledge representation process, and the actual development of the software. The main area that has been found to be problematic is that different areas of expertise, when being represented, often require different tools and methods. Tools for expert system research range from languages that have been developed for symbolic manipulation, such as LISP, (which is an acronym for LISt Processing) to programs which aid the design, construction and testing of an expert system. This software sometimes taking the form of a powerful programming environment. SHELLS. Expert system shelis (or frameworks) are also considered as tools, A shell is in effect an empty expert system, that is, it is empty of any knowledge and therefore domain independent. The user is expected to fill the shell with knowledge from the relevant area of interest. Such shells include set search strategies (which the user cannot change) which are often based on some specific existing expert system, such as MYCIN or PROSPECTOR. This, in effect, defines the nature of the ‘system by restraining its overall function towards a specific activity such as_ diagnosis, monitoring, control, etc. The main idea of a shell is that a potential expert system user can buy a shell ‘off the shelf! (so to speak) and adapt it to their own specific needs. This approach has received some criticism in recent years for although it is possible to buy a shell for December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 7 as little as £400 to run on an Apple or approx. £4000 to run on a more substantial machine such as a VAX. It is generally agreed that there are a number of problems associated with expert system shells. First, there is a consensus of opinion that a microcomputer with less than 512Kb of RAM is impractical for any serious application of this technology. This fact stands whether the development involves using a shell or weiting the entire system in LISP. Generally Al tools are quite large and consequently heavy on memory, also a reasonable expert system might entail anything from 150 to 2000 rules. Secondly there are problems in the fact that the knowledge engineer's role involves the difficult process of knowledge elicitation which is undoubtably a difficult process. This process involves a number of skills in interviewing techniques although the main difficulties arise in regard to the nature of expertise, for often even the expert is not exactly sure of what he or she knows, or what procedures are used to solve specific problems. KNOWLEDGE ELICITATION. Knowledge elicitation is therefore usually a long cyclic process of eliciting the knowledge in the form of key elements and tules, extracting certainty factors from the expert, representing the —_ knowledge, discussing the representation with the expert and making the necessary modifications. The entire process involves a number of cyclic paths of refinement until an agreement is eventually arrived at and the knowledge base appears to be stable. But, this is rarely the end of the story, for when the knowledge base is represented within the computer the performance of the expert system may still show errors and inconsistencies. Consequently the knowledge base will have to be ‘tuned’ (small or major corrections made, perhaps only to some aspect such as the confidence factors) until a specific performance level is achieved. The tuning of the expert system is usually done in consultation with the expert until the expert feels that the system's performance is similar to how the expert would have performed on similar problems. Overall it seems to be generally considered that the main use of an expert system shell is for the first step in developing an expert system, constituting a valid feasibility study before a company needs to fully commit themselves to the development of a fully fledged system. In effect, shells can be viewed as a useful and practical method of assessing the feasibility of what this technology can offer over traditional data processing techniques. (For a more in depth discussion of software tools see Hayes-Roth, Waterman and Lenat (1983) Ch: 6 and also O'Shea and Eisenstadt (1984). SYMBOL MANIPULATION AND THE REPRESENTATION OF KNOWLEDGE. Perhaps the most distinguishing feature of expert systems, that has been briefly discussed above, are the techniques for representing knowledge (discussed in detail below), symbolic inference and heuristic search, Each of these features depend heavily upon symbolic manipulation and consequently the language LISP (which was originally developed by John McCarthy) allows the implementation of — symbol manipulation on a computer. It was mentioned in the previous paper ‘ARTIFICIAL INTELLIGENCE (in Hardcore June 1984) that Al attempted to move the use of the computer away from its traditional role of being a purely mathematical tool towards a tool for the manipulation of symbols which could be realised in the ‘real world’, Consequently the role of symbol manipulation has come to play a fundamental role in all aspects of Al research from natural language understanding and visual perception to robotics and expert systems, Specifically, expert systems are seen as a method of implementing symbolic reasoning, and the recent move towards the representation of knowledge could not have been achieved without a symbol manipulation paradigm. The area of knowledge representation is a complex field which holds many problems with some being seen as effectively in the domain of philosophy; problems such as ‘what do we mean by knowing’, although Al research seems to be founded on the premise that 'knowing' must begin with some form of symbolic representation of facts about the world, From this view point it can perhaps be argued that AI programs differ from conventional data processing programs because they utilise symbolic representational inferences and reasoning. There are a number of ways in which knowledge can be represented within an Al program and basically these can be narrowed down to four main methods: formal logic, associative networks, frames and production systems. SOME — KNOWLEDGE TECHNIQUES. REPRESENTATION Page & HARDCORE - The Journal of the British Apple Systems User Group December 1984 We have discussed (above) that for a computer program to use knowledge we must first find a convenient way to represent that knowledge so that the program can make full use of it. Such a usage involves the manipulation of the specialised data structure (knowledge base) so that the program can make use of it when making intelligent inferences. In general each of the knowledge representation schemes (which are outlined below) although seemingly un-exciting, have had influences on issues in cognitive psychology for they touch upon some major issues and concerns for the study of cognition and intelligence in general. 1, LOGIC - Declarative Representation. Logical representation can perhaps be considered as the classical approach of Al to the problem of representing knowledge. This approach has been termed ‘declarative’ representation, which means that the knowledge is declared in a formal logic, such as predicate calculus, which allows inferences to be made from the declared facts. This approach guarantees that any deductions are true if they are based upon true premises. This is perhaps the strongest reason why formal logic has been found to be useful in Al research. An example of this approach can be seen in the following example: All swans are white which can be calculus as: translated into predicate V x. Swan (x) => Are white which is read as: Wx) for all x which exists in the world and, (Swan (x) if x is a Swan, @) then (implies), x is white. Within the framework of formal logic there are specific rules called ‘rules of inference’, which state that if the facts (premises) of an argument are true,. then they can be used to derive other facts which will, of necessity, also be true (deduction). A typical example is found in the form of syllogisms: T. All men are mortal. (premise) 2. Socrates is a man. (premise) therefore 3, Socrates is mortal. (conclusion) where I, and 2. are declared facts and 3, is the deduction which MUST be true, as long as the premises are true, Predicate calculus has been —_used successfully in many Al programs, and has been popular because new facts can be derived from old existing facts (or existing knowledge base). But, these techniques were found to be limited because there was a need for the program to have access to procedural as well as declarative knowledge, therefore allowing the system to infer how relevant certain facts were to a given situation. (For a more detailed discussion of predicate logic see Quine (1980). There is a controversy in Al between the declarative and procedural representations of knowledge. Winograd (1975) explains that the debate can be viewed as an incarnation of the old philosophical distinction between ‘knowing that’ and ‘knowing how'. "The declarativists ... do not believe that knowledge of a subject is intimately bound with the procedures for its use." (Winograd 1975 p 186). On the other hand the proceduralists believe that many things we know are best seen as procedures, and it is difficult to describe them in a purely declarative way." (Winograd 1975 p 189). So how can knowledge be represented in a procedural form? There are three major forms of procedural representation: associative networks, frames, and production systems. 2, ASSOCIATIVE’NET WORKS. The associative network (or semantic network) was developed by Quillian (1968) and others as a psychological model of human semantic memory, and has been further developed in Al research in general and the field of natural language understanding in particular. The overall structure of an associative network can be considered as a network, or graph, where each main item that” is specified (node) is linked to other items by lines (arcs) The following diagram is an example of a simple associative network. Some points to note are that arcs are usually labelled, in our example we have a label IST which stands for ‘instance', e.g., a swan is WILD-WORD word processing, without sacrificing efficiency. The cheaper alternative Wild-word is a powerful 40 column word processor for the Apple Il and //e. What you see is what you get. Over 20 format and editing commands with three modes give total editing flexibility, and have immediate effect on the screen. Wild-word features true SHIFT key operation using a simple clip-on modification. Lower case is generated in software using the graphics screen. Any character, including printer control codes, can be inserted into the text. Wild-word also features a built-in mailing list and merge feature, and can store over 1000 names and addresses on each disc. It is also core-resident, leaving all drives free for text and mailing list data. Header with automatic page numbering is available for print-out. Wild-word is not copy protected, and is supplied complete with keyboard modification and full reference manual, for £35 + VAT. & Contact your local dealer or Sx ELITE SOFTWARE COMPANY, oe 93 Eastworth Road, Chertsey, Surrey, XT16 8DX. 2 Tel: 09328 67839 December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 9 Page 10 HARDCORE - The Journal of the British Apple Systems User Group December 1984 an instance of the category bird. <BIRD> IST COLOUR <Wi > We could make a more complex network by increasing the associations: AGT = AGENT IST = INSTANCE AGT <PERSON? wae IST <DAVID> IST ACT-DROVE <CAR> HT Ist —~» <MARY> <VEHICLE> 1s <TRUCK> This network suggests that <DAVID> was the main agent who committed an act of driving a <CAR> (which is an instance of <VEHICLE>) that hit <MARY>. Where both <DAVID> and <MARY? are instances of <PERSON> and <CAR> and <TRUCK? are instances of <VEHICLE>. We can see from these examples that it is fairly easy to represent a quite complex set of associations within a given situation. One major problem of associative networks, unlike predicate calculus, is that there is no intrinsic guarantee that a given inference which is made from the representation will be valid. Therefore although we have a more flexible representation scheme, which can be easily manipulated, we have a scheme which depends solely upon the program which manipulates the data structure. (For a more in depth discussion see Barr and Feigenbaum 1981 pp 180-189). 3. FRAMES. the most Frames are recently developed scheme (see Minsky 1975). Frames can include both declarative knowledge and procedural knowledge, but both of these forms of knowledge are contained within a data structure which gives the __ situational context. A frame can be viewed as a block of information about a specific area which contains information that can be either declarative facts or procedural information; these areas are called 'slots', It is common to have general frames as well as specific instance frames, for example a general frame could contain general details of a person with a specific frame being the details of some specific person. A frame can be conceptualised as: | SLOTS For example a frame could be developed to contain information about a specific area and within the frame the slots (or knowledge hooks) will contain knowledge of the area that is represented by the frame. Kuipers (1975) details a number of properties which he sees as fundamental. He also gives a detailed scenario to explain the main idea behind a frame representation; this example scenario suggests that whenever we meet a new situation we take to that situation a number of pre-conceived ideas, notions and expectations, Any reasonable expectation that we hold is usually based upon both our previous general experience of the world as well as our experiences of similar situations. These expectations might be 100% correct, totally wrong or somewhere between these two extremes. When we are confronted with our actual observations of the new situation we might well change our expectations to encompass the newly gained knowledge. In effect we start with generalised frames and gradually either modify these existing frames or pull in more relevant frames - often discarding the general frame completely. It could be argued that we code many stereo- December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 11 typical situations in this manner and modify them on the basis of our experience. Indeed it could also be argued that within these frames we might well store actual facts such as ‘dogs have four legs' (in a general dog frame) as well as procedural knowledge such as ‘if I want to go through a door my first action must be to open it’. One can see that this simple rule involves other knowledge such as knowledge that doors can be opened, and knowledge of facts such as doors can be opened if they are closed except when they are locked. If they are locked we will need information about locks, therefore the door frame could involve a pointer to a lock frame. Within the lock frame there would be information about keys which would allow us to gain the knowledge that ‘one must find the appropriate key for the lock’. One can therefore see the importance of knowledge representation schemes which can handle both declarative and procedural knowledge. Barr and Feigenbaum (1981) give a good example of a generic frame for a dog: Generic DOG Frame Selfs an ANIMAL; a PET Breed: Owner: a PERSON (If-Needed: find a PERSON with PET=MYSELF) Name: a PROPER-NAME (DEFAULT=ROVER) DOG-NEXT-DOOR Frame Self: a DOG Breed: MUTT (Barr & Feigenbaum 1981 p 159) Barr and Feigenbaum (1981) suggest that frame based processing allows the system to determine whether a given frame is applicable within a given situation. Also that a likely frame can be selected to aid in the process of understanding the current situation. If this frame finds that it is not appropriate, it could transfer control to amore appropriate frame. It is also possible, from a frame based system to implement other knowledge representation schemes within a given slot, such as associative networks or rules; thus creating a ‘hybrid’ representation scheme. 4, PRODUCTION SYSTEMS, Production systems were developed by Newell and Simon in 1972 and represent the scheme which is most often used in current expert systems. In essence a production system is a scheme in which knowledge is represented by rules in the form of: IF <condition> THEN <action> This structure is formally known as. ‘antecedant-consequent pairs' where the antecedant can be either a simple condition or a more complex condition. A knowledge base is made up of a number of tules (production rules) and are used in an attempt to mechanise complex decision making. Barr and Feigenbaum (1981) explain that a production system consists of three parts: a rule-base, a context list, and an interpreter. The production system's interpreter will use a specific control strategy, and (depending upon the control strategy which is implemented within the expert system, in the case of a forward chaining strategy) will first take the user's input and try to match the condition (left hand side of the rule) of the first rule in the relevant section of the knowledge-base. If the interpreter fails to find a match it will then try to match the condition of the next rule (and so on through the rule base). Alternatively, if the first rule was a successful match, then the rule will be stored as the first element in the context list (but the action, or right hand side of the rule will not yet be acted upon). The interpreter will then try to match the condition part of the second rule. If this second match is also successful, then this rule will also be added to the context list and so on until the interpreter fails to find any further candidates. When the cule base (or relevant section of the rule base) has been exhausted, there may be cither a number of rules in the context list, or only one. If it is the latter then there is not a problem and that rule can be 'fired', ise. the action (or right hand) side of the rule can be implemented. On the other hand, if the context list contains more than one rule then there is a problem. This problem is termed as a ‘conflict! and it must be resolved before a rule can be selected to be fired. The criteria which the interpreter will use to resolve this conflict can vary tremendously depending on the actual application and requirements. For instance, the criteria for conflict resolution can be as simple as ‘take the first rule that was found to be appropriate’, or it could take a more complex form such as 'take note of all the certainty factors, which are associated with each rule, and fire the rule which has the highest RECENT ADDITIONS disk 88 Utilities Visicale (Magicalc etc) and spreadsheet models 89 Personal/educational programs for domestic use 90 DOS 3.3 utilities and disk maintenance programs 91 Action and adventure game mixture 92 More personal/educational/domestic programs 93 Educational tests of maths 94 Educational tests of algebra, spelling, geography and maths 95 Textfile reader/mailing listinvoicer/grades database 96 Four different pinball games from ‘Pinball Constructor Set’ 97 More educational maths and arithmetic programs and tests * all the above have full instructions and documentation on the disk * Disk 99 Printer utilities Apple DMP/Imagewriter [ay Make proper use of this superb printer's scenario disks __ facilities which t well explained EN andl acilities which are not well explaine e \slant in the manual. (How unusual!) | E13 Treasur iso Sey NEW E14 Fur Castle Heroes Formats disks for DOS, ProDOS, us Mondamen Caves Pascal and CP/M EY sAatin's Cas Fast copies disk-to-disk with 1 or 2 drives eH Hogarths Cas' Checks drive speeds. E18 iba Trap b Includes free ‘Dog-fight’ game. fat:) eat Death a Disk 101POM's 6 Disk102 POM’s 7 Silay £20 —_ Parlez vous francais? Special ‘ Two disks from the French Apple Club. EAMON Starter Pacl sgt Good graphics and various utilities. Disk E1 eae £5 for BAI disks are £5.00 inclusive. scenario disks 5 Send your order form and cheque (or Access No.) to P.0. Box 174, £20... save £ Watford, WO2 BNF or ring Fran on 0635 48385 for Access sales a ———_ December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 13 certainty factor. If two rules have the same certaintly factor then fire the rule with the highest certainty factor which was first found on the context list’. Once a rule is selected from the context list it is then fired. The control strategy, which has been detailed above, is known as ‘forward chaining', that is antecedant to consequent. A number of expert systems have been developed using this chain of reasoning, the most classical example being MYCIN (Shortliffe, 1976). Forward chaining usually involves the user to enter a specific enquiry including as many details as possible; such enquiries could obviously be highly detailed, Once the entry has been completed the expert system will attempt to solve the problems which are associated with the enquiry, eventually displaying an answer. The main problem which is associated with this strategy is that some of the enquiry details might be found, by the expert system, to be irrelevant. An example of this point being that to make a detailed enquiry about a person's child including age, name etc., is irrelevant if the system finds that the person does not have any children, An alternative control strategy is backward chaining, that is from consequent to antecedant, an example of this control strategy can be seen in PROSPECTOR (Duda et al, 1979). Backward chaining starts with a goal, if it cannot solve the goal it will break it down to smaller sub-goals. It will continue to further sub-divide the goal until it eventually reaches a level of detail where it succeeds. Once the system has been successful, at the lowest level, it will work up the list of sub-goals until it can solve the main (top level) goal. This strategy involves the user typing in the minimum of information, with the system asking the user for further, more detailed information, as, or if, it requires it. An ideal control strategy needs to encompass a flexibility which will allow it to switch between these two classical strategies as the need arises. (For a more detailed discussion of production systems see Barr & Feigenbaum 1981 pp 190-199), SELF KNOWLEDGE AND JUSTIFICATION. We have seen how knowledge can be represented within a system but gencrally it would be agreed that people have the very: special ability of being able to reason about their own thought processes. This is a specific problem area for Al in general, for if we could develop a system which could reason about itself we would be brought sharply into the realms of cognition and self-knowledge. An important point to make is that Al research is explicitly interested in this area, for if an IKBS could implement some form of self-knowledge then it would be possible to develop expert systems which are capable of rationalising their decisions as well as offering the user valuable explanations of how it had reached a specific conclusion, The need for reliable explanation functions has been found to be fundamental to the development of expert systems. For example, when an expert system is being used as a professional consultancy system one can see that any diagnosis or recommendation that the system makes will need to be justified. Generally current expert systems do involve a fairly simple explanatory mechanism which, upon the user's request, can offer the user a backtrack over its decision tree. Such systems may present the user with the previous rule, or the chain of rules that it was attempting to satisfy. In a fairly crude sense this can be seen as a_ form of explanation, but it begs the question ‘can a rule stand as its own justification’. The alternatives are to either have the system generate an explanation automatically (this would involve the system 'knowing' the basic principles on which the explanation is founded) or perhaps a less grand alternative would be to associate some text with the relevant high level (or meta) rule. This latter solution would, of course, only provide an approximation, but might serve as a better explanatory function than relying upon the generation of the system's historical path through the knowledge base. ARE EXPERT SYSTEMS 'INTELLIGENT'? Whether one could consider an expert system as a truly ‘intelligent! system is an interesting question. One might — perhaps expect an intelligent system to be capable of learning from its experience, and it would be reasonable to expect that such learning should enable the system to not only improve its overall performance (which could involve adding new facts to its knowledge base) but it should also be capable of improving its method of performance. Such a learning system would involve a great deal of high level knowledge, possibly involving another expert system to manage the — re-organisation, connections and relations of the existing Page 14 HARDCORE - The Journal of the British Apple Systems User Group December 1984 ‘and newly acquired knowledge, “An ‘expert’ system can use a knowledge system which is hierarchically organised, An ‘intelligent’ system can ‘detect’ hierachical structures (and build them) from knowledge- items which are connected by relations in a tangled network." (Moore, 1984). This suggests that the ability to reorganise a knowledge hase is a creative ability, and also that machines will never be capable of creative action. (This issue is a complex area of debate in its own right). CONCLUSIONS. The area of expert systems is becoming a major focus of government funds even though this research is still in its most elementary experimental stage. Yet, even though this research is still in its infancy it has grabbed the imagination of many people in both industry and academia, perhaps due to the important role that it could play in assisting control as well as legislation based organisations. Expert systems have evolved to a stage where development is quite well understood and considered as feasible to many areas of commerce and industry. This research area i: therefore seen as the first major practical contribution that Al research has offered to the world at large. Along this line of thought we can see that government bodies are actually recognising the potential of expert systems in many diverse fields and to that extent the British government have actually financed a large number of ‘demonstrator’ projects, via the Alvey programme, to demonstrate the use of this aspect of high technology in specific fields of endeavour. There are a number of reasons why expert systems research is important, but primarily, expert systems encompass a number of important features (some of which have been mentioned in this paper). There is little doubt that the research into expert systems has somewhat enriched our understanding of the cognitive processes, as well as offering us a product which has practical implications for industry and commerce, We have also gained a great deal by having the tools and methodologies which have been developed by this area of research with such tools inevitably aiding us in the task of developing more powerful and ‘intelligent’ systems in the future. REFERENCES AND RECOMMENDED READING, ** Barr, A. & Feigenbaum, E.A, (1981). The Handbook of Artificial Intelligence. Vol 1. Pub: William Kaufman Inc. ** Barr, A. & Feigenbaum, E.A. (1982). The Handbook of Artificial Intelligence. Vol 2, Pubs William Kaufman Inc. * Bobrow, D.G. and Collins, A. (1975). (Eds.) Representation and Understanding. Pub: Academic Press. ** Cohen, P.R. & Feigenbaum, E.A. (1982). The Handbook of Artificial Intelligence. Vol 3, Pub: William Kaufman Inc. ** Dehn, N., and Schank, R. (1982). Artificial and Human Intelligence. In Steinberg (1982), pp 382-391. Duda, R., Gaschnig, J., and Hart, P.E. (1979). Model Design in the PROSPECTOR Consultation System —for_—_—-Mineral Exploration. In Michie, D. (Ed.) Expert Systems in the micro-electronic age. Pub: Edinburgh University Press, pp 153-167. Feigenbaum, E.A. (1977). The Art Of Artificial intelligence: Themes and Case Studies in Knowldege Engineering. In LJCAL, pp. 1014-1029, * Hartley,R.T. (1980). TheCompetentComputer. Technical Report MCSG/6. Department of Computer Science, Brunel University, Uxbridge, Middx. ** Hayes-Roth, F., Waterman, D.A., Lenat, D.B. (1983). Building Expert Systems. Pub: Addison-Wesley 1983. * Johnson, L., and Keravnou, E. T. (1984). Expert Systems Technology : 4 guide. Pub: Abacus Press. ** Johnson-Laird, P.N. (1983). Mental Models. Pub: Cambridge University Press. * Kuipers, B.1. (1975). Representing Knowledge for Recognition. In Bobrow and Collins (1975). Minsky,M. (1968). (Ed) Semantic Information Processing. Pub: Massachusetts Institute of Technology. Minsky, M. (1975). A Framework for Representing Knowledge. In Winston, P- (Ed.) The Psychology of Computer Vision. Pub: McGraw Hill, New York. December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 15 Moore, L. (1984). The Unknown Generation. In Burns, A., (Ed.) New Information Technology. Pub: Ellis Horwood Ltd. pp. 159-169. ** O'Shea, T. & Eisenstadt, M. (1984): ARTI- FICIAL INTELLIGENCE: Tools, Techniques and Applications, Pub: Harper Row. Quillian, M.R. (1968). Semantic Memory. In Minsky (1968). * Quine, W. V. O. (1980), Elementary Logic. Pub: Harvard University Press. Shortliffe, E.H. (1976). Computer-based Medical Consultations: MYCIN. Pub: American Elsevier. Steinberg, R.J., (1982). Handbook of Human Intelligence. Pub: Cambridge University Press. Weis and Kulikowski Guide to Designing Expert Systems. Chapman and Hall. (1984). A Practical Pub: * Winograd, T. (1975), Frame Representations and the Declarative/Procedural Controversy. In Bobrow and Collins (1975). Winston, P.H. (1970). Learning Structural Descriptions from Examples. In Winston, H. (Ed). The Psychology of Computer Vision. Pub: McGraw Hill, 1975. pp 157-209. * = Recommended reading Essential reading Special Offer BASUG SPECIAL OFFER FROM ELITE ITEM R.R.P. DISCOUNTED (INC VAT) PRICE Ramview £ 69,00 £ 55.00 Ramview 64k £138.00 £110.00 Wildcard £ 92.00 £ 70.00 Wildcard Plus £136.85 £110.00 $-C Macro Assembler £79.35 £ 62.00 Wild-Word & 40.25 £ 33.00 Appli-Kit &£ 28.75 & 23.00 Edit-JIL £ 28.75 L 23.00 Symbo!-77 & 28.75 & 23.00 Password-69 & 28.75 & 23.00 Edit-JIl_is a line based editor which can be co-resident with Appli-Kit, Symbol-77 is a graphics utility which allows text and other symbols to be displayed on the hi-res screen, Password-69 allows a password to be placed on a disk - until the password is given to unlock it, the disk is almost unusable. The other product descriptions can be seen in Elite ads in this issue. Any order for ten or more of any one item received from BASUG will be given the discount. Elite will be happy to mail direct to the people concerned and postage and packing are included in the price. However overseas members should add £2 for postage. To take advantage of these offers, send a cheque made payable to BASUG Ltd. for the appropriate amount to BASUG at the P.O. Box, stating clearly your name and address and what you require. As soon as Fran has the orders, she will send the list of names and addresses to Elite, assuming that there are enough to warrant the discount. If not, she will let you know. We must have your orders by 15th December. Small Ads WANTED I would like to buy a copy of Stoneware's Professional Graphics Processing System or any other software that is compatible with a Symtec light pen. Details to David Steward, Ji (anita these, Nien HW. Fabs bes ity eet rete ee ie Steerer rt eee ttrrerttr ss For Sale. Apple cooling fan made by MR Engineering, Chicago. Sits on top of power supply, 240V. Originally $69 - sale price £20. Mike Watson, fisifi (Mil-dtil! 2th (day) (A 4H 454% (evening). peeree Tee teee eet t titi setter ttt tt titer ees FOR SALE. Parallel Printer Card, suitable for Apple DMP or C.ltoh. Built in text & hi-res dumps. Special character design & driver software. Complete with manual and demo disk. £60 o.n.o. Ring Clive Benjamin on iWissliviasy (iti) ail {COD BD HEE EBO SUE EBOU I BODODS SEIU ITT 2020 fitted with Apple motherboard, Digitek RAM Master, Kaga Monitor, 2 disk drives (1 brand new) plus manuals, disks, etc. Offers to Mrs. J. Brooks on: Page 16 HARDCORE - The Journal of the British Apple Systems User Group December 1984 Mac Clock ‘a St.Mac Clock g This clock 1s produced from the following listing in MS-Basic:- 1O CLS : Pi85.1415926*: HR = 12 2005S =-1 30 DEF FNX (R) =110 +100" SINC) 40 DEF FNY(P}=110 ~ 100 *COS(R) SOFORR = 2" PITO OSTEP -PI/6 60 CALL MOVETOXFNX(R),FNY(R)) 65 CALL TEXTFONT(9):CALL TEXTMODE(2):CALL TEXTSIZE(9):CALL TEXTFACE(16) : 70 PRINT HR::; HR=HR-1 80 NEXT R 81 DEF FNA(R)=125+90*SIN(R) 02 DEF FNB(R)= 105-90" COS(R) 83 DEF FNC(R)#125 +85" SIN(R) 84 DEF FNO(R)=105 -85 * COS (R) GS FOR R = 2 * PI TOO STEP -PI/30 86 LINE (FNA(R),FNB(R)-CFNC(R),FNO(R)) 87 NEXTR 88 DEF FNE(R)= 125 + 60 * SIN(R) 89 DEF FNF(R) = 105 -80 * COS(R) 90 FORR= 2" PI TOO STEP -PI/6 92 CALL PENSIZE(2.2) 94 LINE(FNA(R),FNB(R))4FNE(R),FNF(R)) 96 NEXT R 98 CIRCLE (125, 105),90 100 T$=TIMES 110 M=VAL (MID$(T$.4.2)) 120 H=VAL(MID$(T$.1,2)}4INT(M/S)/ 12:1F 9 H>=13 THEN H=H-12 130 S=VAL (MID$(T$,7,2)) 140 IF S=OS THEN 100 From a listing in ST Mac enhanced by Peter Trinder 150 HI = H2*PI/12 160 M1= M¥2*PI/60 170 $1=S*2*P1/60 180 CALL PENSIZE(S,3) 190 IF OM «IM THEN LINE(125.105)-(125+80*SIN(EM), 105-80* COS(EM)).350 200 CALL PENSIZE(S,5) 210 IF OH¢OH THEN LINE(125, 105)-(125+60 SIN(EH), 105-60" COS(EH)),30 220 CALL PENSIZE(1.1) 230 = IF O5<9S THEN LINE (125,105)-(125+80"SINES), 105 - 80 * COS (€5)).30 240 LINE (125, 105)-(125+80"SIN(S1),105-80 ™ COS (S1)) 250 CALL PENSIZE(S.S) 260 LINE (125, 105)-(125460* SIN(H1), 105-60" COS(H1)) 270 CALL PENSIZE (3,3) 280 LINE (125.105) 125+80"SIN (M1).105-80"COS(M1)) 290 OS*S: Oris: OH=H: Ert=ri: EHH: ES*S1 300 GOTO 100 | December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 17 Mac Notes The following is a discussion posted by a Compuserve user pointing out some of the improvements to Microsoft Basic for the Macintosh: I received my upgrade (Version 1.01) to MS Basic by calling Microsoft some weeks ago, getting a return authorisation number and mailing my old master back. The upgrade contained the following ‘enhancements': LPRINT no longer causes buffer overflow when Imagewriter DIP switch is changed from DTR handshake to XON/XOFF. Files can now be edited with MacWrite and moved from MW to Basic if they have been saved with 'text only’, ‘Command-' now stops program and is equivalent to 'Command-C'. Hopefully at some point they will pass Command C through; it still stops program in the update. Running on Lisa under Macworks, CIRCLE statement is ok and full screen is now available. ‘A dumb terminal demo program is included and shows quickdraw calls. SOR is nearly twice as fast. The following corrections have been made: A SAVE no longer saves only part of the file if you go to the FILE menu before the disk write is complete. NEW now resets the output window title. A bug in passing a numeric display to a ROM function or using it in aGET or PUT Statement is cured; it produced a fatal system error. A bug causing 10 GOTO 30; 20 GOTO 40; RENUM to cause undefined line number messages has been fixed. Files now keep their folder identity when opened. A bug causing two scroll thumbs with three list windows is fixed, NOTE: The bug that caused some icons to become ‘generic! reported in several messages here has apparently been fixed, ‘although that's not reported on Microsoft's list. One way to update old MS Basic program disks so that icons are correct is: load the new basic; make a copy to a clean, newly formatted disk; delete any files you don't want to end up on all your upgraded disks from the copy; if you have Fontmover, remove any excess fonts from the system folder of the copy to save space; put everything left in the copy in one folder. Then use the copy disk as follows: make it the boot disk (restart); copy everything except system and empty folders and MS-Basic from each old disk in turn to the copy disk; use either the 4-pass (if you only have one drive) or the disk icon move to copy the entire copy disk back to the old disk; trash everything ‘on the copy disk except the system and empty folders and their contents; empty trash; continue. Another tip: If you use File, the sample text editor from the Mac Software Supplement on many of your disks, as I do, since it saves a lot of space compared with MacWrite if you only want to do program editing, then you will find that if you remove all the fonts except the system fonts from those disks to save space, File may produce funny-looking characters. If it does, a solution is to use Resource Mover to change the FREF entry numbers for File to match two system font FONT entries in System. DATACRAFT SOFTWARE SERVICES Introducing The SP€€Demon” for @geppia II, 1fPlus and/le. Make your Apple run up to 34 times faster. Simply plug in and go. Now available at the special introductory price of £265+\VAT. 16 Brune Street, London E1, 01377-8693 mcoeorovie Comte Params sua. Siam Daan ton, Page 18 HARDCORE - The Journal of the British Apple Systems User Group December 1984 Wildcard Plus by Mark Whelan Judging from recent letters to Hardcore and other publications, there is a fair amount of interest in 'Copy-cards', or the hardware devices for copying your precious software. However, there is little in the way of practical help published. 1 hope the following may help those trying to decide if they need a back-up device, as well as those who already have one. The obvious application is in backing-up protected software, so that you don't have to wait months for that replacement disk that is always an American product. The WC+ will back up 48K, 64K, or 128K programs, giving the added advantage of faster loading times too. An example of the card's use in speeding things up is the ability to do away with pre-boot disks, Simply boot the pre-boot, then the main program. When everything is as you want it, press the WC+ button and dump it as one file that is unprotected and auto-booting. This is fine for memory- resident programs which load fully first time. For ones which access the disk after booting, a combination of hardware and software is required. It is often the case that the most heavily protected part of a program is the boot routine. Copying this with the WC+ is accomplished readily. As before, simply get your program through to the required menu, and make a copy at this point. From now on this disk can be booted to get up to the point where data is accessed. The data which is referred to from time to time is very often unprotected, or can at the very least be handled by a bit copier. By copying the disk itself with some piece of software, the data is readily available and can be swapped for the boot disk at the appropriate point. This may be a little inconvenient, requiring two disks. How much more inconvenient though to lose the program entirely, through carelessness or simply overuse. A less obvious use is in controlling your Apple. An example that will appeal to games fans is one I used on a Wizardry scenario disk. These had an annoying habit of going down just as I was getting a decent party of characters built up. And of course my back-up scenario was sufficiently out of date as to be useless. Whilst there is a ‘Recover Out Characters’ utility, this requires a readable disk. Often mine were so corrupt as to be missing the vital areas. Perhaps a good programmer could sort this out with enough utilities. If not, try this: 1) Run the Recover utility. 2) Put in a good scenario copy and press <RETURN> 3) When it gives the message "Recovering" press the WC+ button. At this point the drive continues to turn, but nothing is happening. Now put in. the corrupt disk. More often than not (mine only failed once) the characters are readable, only the disk recognition fails. So once the damaged disk is in place, press <R> (for RESUME). The WC+ now returns control to the Apple, the recovery utility loads up your characters, and they can be dumped to a good disk. Another use for the card turned up when I was sent a copy of RAMDRIVE e/c by CCS & S, for evaluation. This is the latest release of the //e only disk emulation package (now //c compatible) as reviewed in August's Hardcore. This is a great package for anyone unable to warrant the extra cost of a second drive. It readily took all the little utilities 1 seem to spend hours looking for, because they are always on unlabelled disks. A 128K WC+ dump, and I was left with a quick loading package of my most often used software, without the bottom 64K being touched, as it all lies in the //e 80 column card's extra RAM. At the other end of the disk storage spectrum lies the hard disk. These show particular problems in getting protected software transferred onto them. Using a copy card such as WC+, the program can be copied, turned into a binary file if necessary (using the WC utilities), and put onto a free volume of the hard disk. These are areas in which I have found the card useful. There are bound to be others not covered here, and any suggestions would be appreciated. WILDCARD PLUS COPIES 64K PROGRAMS IN 12 SECONDS The new WILDCARD PLUS is the card that thinks for itself. One push of the button, one simple menu - with its own 6502 processor WILDCARD PLUS makes a perfect copy on any Apple, from a 48K J[ to an extended 128K //e. Automatically. Does for copy protection what Atilla the Hun did for social FEATURES CHardware copying device push button operation. OCopies 48K programs in 8 seconds, 128K programs in less than 25. O Creates autobooting, unprotected disks. OSoftware in ROM, always there...no need to preboot CNo language card required, works equally well with or without. OUtilities include: ‘compression software- several backups may be stored on a single disk, recover BASIC programs, disassemble machine code soft- ware, screen dumps, etc. WILDCARD PLUS £119 From your local dealer, or direct from: Elite Software Company 93 Eastworth Road Chertsey, Surrey KT16 80x Tel: 09328 67839 Add 15% VAT for delivery in UK P & P included. Dealer enquiries welcome Apple is a registered trademark of Apple Computers Inc. Page 20 HARDCORE - The Journal of the British Apple Systems User Group December 1984 Beginners’ Page by John Sharp When I'm CALLing you. When we dealt with PEEKs and POKEs, we also mentioned that sometimes you might POKE in a machine language program and then CALL it. The word CALL suggests that you can call on something that is already there. There are some routines in the Apple that are waiting to be used which are not commands in BASIC. In fact in Integer Basic there is a need to carry out certain operations for which there is no command, even though it might be there in Applesoft. One such case is the HOME command in Applesoft, which clears the screen and sets the cursor to the top left of the screen. If you are in Integer Basic you have no alternative but to use CALL ~936. This will work in Applesoft as well and you sometimes still see it in Applesoft listings where an Integer programmer has not lost the habit when moving over to Applesoft. There are two other CALLs which are very useful for which there are no commands in either Integer or Applesoft. One clears to the end of a line (the equivalent of ESC E if you are in the editing mode), and the other clears to the end of the page (the equivalent of ESC F in editing mode). But first let's look at an example of why you may need to use them. Suppose you have an INPUT statement which you then check to see if a number or string has been input correctly, and if not repeat the input until it is cight. You might write @ program thus:- 10 TEXT : HOME 20 PRINT "IF YOU HAVE TEN CATS AND THREE DOGS" 30 INPUT "HOW MANY ANIMALS DO YOU HAVE ALTOGETHER? ";A$ 40 IF A$<>"13" THEN GOTO 30 If you run this program and the person answering types in the wrong answer, another input line will come up on the screen. Eventually the PRINTed statement in line 20 will scroll off the top of the screen and the condition will disappear. There will be a list of wrong answers with the question before them. We could rewrite the program, so that by using VTAB we write the question (ie, line 30) on the same line of the screen each time, overwriting the last one. So insert a line 25 VTAB 10 and alter line 40 to:- 40 IF A$<>"13" THEN GOTO 25 Now if you run the program there will not be scrolling and lots of answers, if a wrong result is typed in. However, if the first answer was I111, when you come to type in the second answer, the 1111 is still sitting on the screen, although the cursor is waiting on the first 1. In order to clear the line first you could use a PRINT statement, but this would _—_ produce complications in VTABbing. However, if we put a CALL -868 in line 30 before we carry on the problem is solved. Line 30 would now read: 30 CALL -868: INPUT “HOW MANY ANIMALS DO YOU HAVE ALTOGETHER? ";A$ Try the program as outlined making the changes and see the result. 1 much prefer this sort of program instead of a screenful of wrong answers. CALL -958 is useful in the same way. You might have a screen which is full of text but which has some instructions at the top, and you want to print only on the bottom half of the screen. There are two ways to do this. One is to alter the TEXT WINDOW. If you POKE 34,T where T is the number of lines down you do not want to print. You can only write below this line. So the following short program will print four lines then only print below those lines. If it is necessary to clear the screen below the line, the HOME command will do this. 10 TEXT : HOME 20 FOR N= 1 TO’ 30 PRINT "THIS IS LINE "5N 60 NEXT N 50 POKE 34,4 60 FOR M = | TO 50; PRINT "A LOAD OF RUBBISH AND YET MORE RUBBISH" :NEXT 70 HOME Note that line 10 has a TEXT : HOME to clear the screen, whereas line 70 only has HOME, If you put a TEXT command in a line it will automatically remove any TEXT WINDOW settings you may have. This is why it is often a good idea to use it as the first line of your program, so that anything left over from another program does not cause problems. To help others a TEXT:HOME in the last line when you exit your program will help when cunning another program where it is not the first line. But suppose you wanted to clear the screen December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 21 starting at the middle of a line. You now need to use a CALL, CALL -958, This is a less likely problem, but could occur if you want to delete the text starting from the beginning of a particular sentence. It is so unusual that I cannot think of an example program. It will allow you to clear the screen and still keep the scrolling, whereas the text window setting will keep above the line you have designated until you alter it. If you want to print on the left of the screen or just in one corner, you can set the sides and the bottom of the text window with other POKEs. Look in the Applesoft Reference Manual for more details. DIFFERENT CATALOGS. When I wrote last time about using the cursor to run over the catalog title to run it, I assumed many people were as lazy as me. This doesn't appear to be so. So let me extend it to let you put inverse or even flashing catalog titles, To recap first. Let me go over the method of moving the cursor over a title to run a program, Type CATALOG and get the catalog up on the screen. If you have a very big catalog, you will not be able to use the method if the program has disappeared off the top of the screen. Press the ESC key and then the I key until you are on the line where the program name sits. Now type R (twice so that first you break the control over the cursor, and then print an R) then U and N. You will probably find that a number still exists from the file length, so use the space bar to type over with a blank. Now using the right arrow, run over the rest of the name of the file. Press return and you should be away. When you carry out the following sequence of events, to give you flashing or inverse titles, this is the only way (or the modification [ shall describe) of cunning the program. So if you are sitting comfortably in front of your machine, I'll begin. Suppose we want to save a program under the name "TESTING INVERSE". Type the following in immediate mode:- PRINT "SAVE : INVERSE : PRINT "TESTING INVERSE": NORMAL The words SAVE TESTING INVERSE will come up, but with the last two in inverse of course. Now press the ESC key and as with the method outlined for running the CATALOG program, copy over this line with the right arrow once you have positioned the cursor on the S of SAVE. Now catalog the disk and there will be a program called TESTING INVERSE written up in inverse. To run the program, use either the method of writing a line (but with LOAD or RUN instead of SAVE) or copy over the CATALOG heading as described. If you just type RUN TESTING INVERSE then FILE NOT FOUND will come up because the comparison does not match. To FLASH the name just write FLASH instead of INVERSE when writing in immediate mode. As a last note, you may like to try the following CALL to see what it does:- CALL -1184, Correspondence Gerry Corti has sent us the following: I think members of BASUG might like to see the following exchange of letters. Having spotted some material in our competitor ‘Apple User', I thought it right to try and send a letter to Mr. Steve Jobs. This is quite normal practice in the oil industry where clients - even retail clients - do not hesitate to test out the attitude of a firm by writing to its Chairman or Chief Executive. I'm afraid the response conveys an extremely poor impression. Neither Jobs nor his office replied (nowadays this would be almost unthinkable in the biggest oil companies) and | finally got a telephone call from Mr. Kissach in the U.K. a month after I had written. He seemed surprised that | should press for a written reply but he eventually agreed to provide one. As you will see it hardly addresses itself to my letter, and I had to prompt him on the point covered in the last paragraph. I think this is where our hope lies, i.e. with vigorous independent software companies who will spot the hole in Apple's development. For the present I do not think we can look for much from Apple on this front. Incidentally if any members know that the 80 column card /Ie and c is in any way adaptable to the T+ then I think we should let Apple Computer (UK) know. sereeeneee 22nd August 1984 Dear Mr. Jobs, Page 22 HARDCORE - The Journal of the British Apple Systems User Group December 1984 You gave an interview to the British magazine ‘Apple User’ in June 1984. In it you laid out how Apple Computers will fight and survive IBM. You went on to say that it is innovative software which will keep Apple there. "Il would never start a hardware company now - I would start a software company", and then later “we think that the Apple 2 operating system is standard ....... we have shipped over 2 million Apple 2s in several years". All this is fine and after a deal of market research I invested in an Apple 2 a couple of years ago, to be specific an Apple I Europlus. Now the very next month Apple User had an article on AppleWorks, the software program, It said "now the bad news. It will only work on //e, //c and /// = not on the Apple I or I+." I know you are not responsible for Apple User or their lighthearted dismissal of nearly 2 million Apple users, but | got my dealer to approach Apple Computer UK Limited and they tell me they got a reply that there was no intent to make AppleWorks available for the Apple I and they frankly did not seem very interested. 1 know that your company has developed some excellent new hardware, having seen Mac and the adapted Apple 2, named //c. Fine, but on your own say-so it is the software that counts and I cannot see IBM making a marketing error of tl sort. Quite a few Apple J owners in Britain are in a dilemma at the moment and they will not thank Apple for being forced into a re-investment in their primary hardware as opposed to an adaptation or upgrading of it. Are we being correctly informed about Apple's intention on AppleWorks and its future availability in Britain? Are you going to introduce a four way package including graphics, which will be "multi task retrievable"? If you are not going to do either of these things in Apple, can you recommend any software house which is likely to do so or has done so? 1 would prefer to make the contents of your reply known to fellow members of the British Apple Systems User Group, but as this is a personal letter should you prefer not I would respect your request. Yours sincerely, G. Corti 25th September 1984 Dear Mr. Conti (sic) Thanks for your letter of 22nd August addressed to Mr. Jobs. 1 understand — your concern with the availability of AppleWorks on the Apple I Europlus. AppleWorks makes use of the firmware on the 80 column card which is available as an option on the Apple //e and is built into the Apple //c. There is vigorous software development activity ongoing in the Apple // family and should 1 hear of an integrated package which functions on the Apple J Europlus, [ll drop you a line, Yours sincerely, WR Kissach UK Marketing Manager. SoGOOO UG Ed. - We know there are a number of allegedly integrated packages on the market. Has anybody used one? APPLE STOCK CLEARANCE HARDWARE FAULTY APPLE II,ITT 2020, APPLE DISK +PAL CARDS, DIGITEK 80 COL CARD, DIPLOMAT COMMS CARD, DOS 3.2 I/F CARD, LANGUAGE CARD, PARALLEL PRINTER CARD. APPLE II EUROPLUS 48K SATURN 32k CARD, SERIAL CARDS, SNAP- SHOT 2, LOWER CASE CHIP, MODULATORS. SOME PRINTERS AND MONITORS LEFT. DRIVES,MITAC DISK DRIV: 6MB HARD DISK, SOFTWARE ADVANCED VISICALC, APPLEWRITER 1.1, MAIL, EASYBANKER, WORDHANDLER II, APPLEPLOT, CA DATABASE, CHAIN DESK TOP PLANNER, DOS TOOLKIT. MAGIC WINDOW, SOME GAMES LEFT. SLITS AND APPLE CARRY BAGS, APPLE DUST COVERS. APPLE II PADDLES. APPLE IIe PADDLES, WORDSTAR AUDIO TUTOR. THERE ARE NO PRICES QUOTED BECAUSE WE WANT YOU TO MAKE US AN OFFER ON THE ABOVE ARTICLES. PHONE BRACKNELL (034) 480023 ACCESS BARCLAYCARD PRINTERS OUR PRICE BROTHER P22 £129 ep aa £219 HRS . ceorieeease EID HR 1B cesses -. £399 Keyboard for HR 15... £149 HR 25 ... £695 HR 35, £895 —M 101 £849 CANON PW 1080A NLQ 80 Col... £299 PW 1156ANLO 156 Col £399 EPSON RX 80T . wo» £189 RX 8OFT ... . £239 RX 100FT .- £399 MX 100111 £379 FX BOFT £359 FX 100FT .. £479 0X 100 ve £419 TOA BOD escrtencerees . £999 JUKE 6100 £359 MONITORS KAGA 12” hi-res (green) £109 12” hi-res (amber) £109 12” norm-res (PAL/RGB) £199 12" med-res (RGB) £259 12" hi-res (RGB) ... £359 SANYO 12" norm-res (gr 12" hi-ros (green! 14" norm-res (RGB) 14" med-res (RGB) 14” hi-res (RGB) NORMENDE 14" TV/RGB monitor .. . £219 P & P: Computer, add £3 + VAT, 289 Birchfi EN \ printer, { DISC DRIVES Apple Compatible (full height) ... Apple Compatible (half height, direct drive) a ai Se ee £149 . £159 PERIPHERAL CARDS NB: Rosco printer cards are CP/M, Pascal & Applesott compatible + full graphic dump. Printer Contronic Printer + 16k buffer Printer + 64k butter Printer Cable .. 80 column (Not tle) £48 80 column Inc inverse video chip. (Now version. Not ile) ..... £54 Expandable 80 column Ile) ........ £49 Extended 80 column (+64k) ....... £89 64k upgrade kit «0. Disc controller .. PAL (+ modulator) £49 16k RAM £aa Eprom writer (upto 2764) ...... £54 over £100 add £5 + VAT. All prices subject to 15% VAT. I —- Rosco Ltd Road, Birmingham B20 3DD. Tel: (021) 356 7402. Telex: 334303 TKAGWMG ‘Anple'is the Trace Mark of Apple Computer inc. Fre id we “ re ig sorta 30 n Baty Eprom wHter (upto 27256 }.. S232 (serial card) ParalleV/serial interface 280 CP/M ... o AtoD (16 channels) Real time clock (battery backup) VO intertace (4 ports) ‘ ACCESSORIES 52 key Ascii (upper and lower case) Power supply AC cooling fan «..... 40/80 column switch . Inverse video chip (not rea. for new 80 color lie 80 col) SOFTWARE Format 80 MagiCale., Multiplan .. Sage Accounts + Payroll Merlin .. Routine Machine Microsoft Compilers . Copy Il Plus monitor, sheet feeder £8 + VAT. Other under £100 a» OAK 90 col eenare unt) er = .. £99 £42 . £59 £44 £69 £59 £49 encoded keyboard £59 .. £59 £29 £9 £6 Page 24 HARDCORE - The Journal of the British Apple Systems User Group December 1984 ~ AW Il & Graphics APPLEWRITER II WITH GRAPHICS by Dr. M. G. Johnston On countless occasions in the past (so many that it would be pointless to cite any particular references) the problems associated with producing graphics together with text from within a word-processor has been highlighted and, as yet, no overall solutions to these problems has been put forward. Sure, we could all go out and buy a Lisa tomorrow, probably much to the bank manager's annoyance, but I think that constant updating of one's system is expensive and, in general, unnecessary - let's make the most of what we've got. There's no great mystery as to why these problems occur - quite simply, word-processors deal with text files and not binary graphics files - but they are not insurmountable problems given the graphics _ facilities offered by certain printers which have the ability to convert text characters (or more accurately ASCII codes) into graphics patterns to produce pictures, logos, graphs etc. whilst printing text files. So what's the problem?..... Well, there are several which | shall outline with — particular reference to the EPSON FX-80 dot-matrix printer and Applewriter II, although much of the article is of a very general nature applicable to all other EPSON dot-matrix printers and in all probability to all other printers with graphics _—capabilities (although I am unsure of the exact details involved with these). The most simple way to produce graphics within text, no doubt used by many, is to print a text file, leaving gaps for the graphics, and then to insert these later using HIRES screen dumping methods, or, indeed, to insert them by hand. This is a tedious business if more than a few diagrams are involved, A neater solution is to create a text fil from one or both of the HIRES screens, which is compatible with the Epson bit-image print mode, and to save this to disk for subsequent use with Applewriter Il. I shall not enter into a description of bit-image printing here as it has already been adequately covered in previous articles by Mike Glover in Windfall and by Norah Arnold in Hardcore. See refs. 1) 2) 3). These articles outlined — several ~—_problems encountered with 8-pin bit-image printing with the Epson printers, not least being the inability of the interface cards to pass all of the codes they receive onto the printer. It is not possible to use a by-pass routine from within Applewriter so these limitations must be accepted. Including the codes which Applewriter cannot generate itself there are 20 codes which fall into this category and any bit image column requiring any of these cannot be printed in 8-pin bit image mode. This makes for very scrappy pictures. However, there is one very important point about the Epson 8132 interface which is not mentioned in the interface manual even though it is VITAL to the operation. This is the ‘Transparency’ character (CTRL-T). 1 call it this because the normal mode of operation of the interface is to mask off the high bit of all characters it receives before sending them onto the printer but issuing a CTRL-T unsets this condition and makes the interface transparent thus giving it the ability to send characters with their high bit set. A subsequent CTRL-T resets this condition. So now, at least we can get 8-pin bit image printing from within Applewriter (which sends all codes with their high bit set) simply by enclosing some characters between CTRL-Ts. e.g. CTRL-@ sends 0 to the printer CTRL-TCTRL-@CTRL-T sends 128 to the printer But 8-pin bit-image printing is still severely limited because of the characters which cannot be sent from Applewriter Il. 4-pin bit image printing, however, is not! (Don't go rushing to your manuals for notes on this because there aren't any!), Pseudo 4-pin bit-image printing is actually 8-pin in which four of the bits are not used, specifically the low order bits, Line spacing is normally set to 1/9-inch for 8-pin bit-image printing in order to connect dots in the vertical direction, For 4-pin bit-image printing the line spacing is set to 1/18-inch using the command from Applewriter Il: fesc] 'A' [CTRL-D] and subsequent bit-image codes are sent in which all of the four low order bits are set to zero (ie. $00, $10, $F0) and all of these codes can be sent from within Applewriter although, as outlined above, the ones with their high bit set must be sent after a CTRL-T has been issued to the interface. So there we have it, an unbroken series of sixteen vertical dot patterns (including the null pattern) which can be built into an image quite easily using standard Epson bit-image —_ printing December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 25 techniques. This can be quite easily implemented directly from Applewriter II even though it is rather a large task to type in a complete picture in this way. Remember, of course, to reset page length and interval to take account of the lines being printed ‘on top of each other’. Converting information from the HIRES screens to this 4-pin bit-image from is not an easy matter. However, much of the work involved has already been done by Epson (and others before them) since the Epson 8132 interface ROM contains a routine to convert the HIRES screens to a series of 8-pin bit-image columns (SCA00 to $CCFF) - How else could it dump the HIRES screens? So, the procedure is fairly straightforward - simply copy this routine, together with the character output routine ($C96F to $C9A5) to a convenient area of memory ($6000 is best) and then modify it to route its output to another convenient area instead of to the printer (this is rather more involved than it sounds). After running the program the 8-bit codes necessary to generate the graphics screen on the printer are stored in memory and it is a simple matter to convert these to two sets of pseudo 4-bit codes ready to be sent to the text file together with any necessary CTRL-T characters and Escape code sequences necessary to set the printer into bit image mode. The whole HIRES screen cannot be sent in this way because Applewriter has a maximum line length of 254 characters (compared to 284 needed for one complete graphics line) but a substantial part of it can. I find it easiest to keep all ‘graphics files’ separately from the text and to execute a WPL file to insert them where necessary. 1 shall make the conversion programs available to the BASUG library as soon as I have made them user friendly. For further information on the Epson 8132 interface and Applewriter Il I refer readers to an article by myself in a forthcoming issue of ‘Laboratory Microcomputer’ (vol.3 No.4) due out in November or December of this year. References: 1) N. Arnold, Epson Pages. Hardcore (vol.3. No.4.) August 1983. 2) M. Glover, C. Roper. Epson pages. Windfall May 1983. 3) M. Glover, C. Roper. Epson pages. Windfall June 1983. Courses By Patrick Bermingham, Thanks are due to Richard Beck, BASUG's organiser of courses, for the excellent one-day course on the Apple's Assembly Language, held at the County Hall, London, on Saturday October 20, Lecturer Ken Kelso began by outlining the main advantages of Machine Code over Basic: its economic use of Ram space and very much greater speed of program execution. After explai the fundamental architecture of the Apple's 6502 microprocessor, _ its ae registers and supporting elements, Ken guided the group through Binary and Hexadecimal arithmetic onto the use of Assembly Language Instruction Codes. By the time the morning session was over the group had reached the stage where they could understand a simple bubble sort program written in Assembler Code. The afternoon finished with each course member keying-in on the available Apple micros the sort program; and using a Prodos Editor/Assembler disk, loaned by Ken to everyone for the day, to create the Object Code. It was a revelation of the power of machine code programming to compare the speed of execution of the bubble sort program written in Applesoft basic with the same sort program written in machine code. The Basic program took 16 minutes to sort 200 random alphabet letters. The machine code program took less than | second! As with all BASUG meetings that | have attended, new friendships were struck up, and arrangements made to help each other in various ways. There is nearly always someone who has the solution to the problem that you are currently despairing of ever solving. The room at County Hall was an ideal place. It was crammed with all kinds of microcomputing equipment and had many visual aids to assist a lecturer. I think all of us attending the course agreed that it would be a fine thing to have a follow-up course in the future. OK Richard? Incidently, Ken Kelso will be taking up a lecturing post at Watford College after Xmas, specialising in aspects of Computing. pereerr er ee treet tee et tee t tree terri retires From Phil King of March, Cambridgeshire. 1 would like to thank everyone concerned with the Assembly Language Course which took Page 26 HARDCORE - The Journal of the British Apple Systems User Group December 1984 place at London County Hall on the 20th October. Everything went extremely well. The only problems were minor problems due to the electricity supply and unfamiliarity with the equipment which I suggest should be rectified by having more courses. As with all things it is easier to see things after the event, and looking back on the day I find that Ken Kelso (our tutor, who coped admirably and in a highly professional manner) may have been helped a little if each "student" had previous to the course answered a questionnaire on what they did or did not know. Questions such as 1. Are you familiar with notation? 2. Can you do basic hexadecimal arithmetic? 3. Do you know how to enter the Monitor? 4. Are you familiar with the Monitor commands? hexadecimal This 1 would imagine would apply to most of the one day courses held by BASUG. That having been said I am looking torward to the next instalment. Computer Music by Roger Harris Months ago - it was in June - I attended a performance given by the Electro-Acoustic Music Association (EMAS) in the Almeida Theatre in Islington, North London. EMAS “encourages membership from anyone with an interest in electro-acoustic music: this is electronic and tape music, live electronics, computer music, indeed, any interface of science, technology and music" and its membership includes those "who have a stake in the creation and performance of music using electronics or computers". They presented several works: all involved some form of electronic equipment. Some even had human accompaniment. Whatever the merits of the music, the musical scores can often be very beautiful for those of calligraphic bent. Membership costs £6.00, (students, £3.00), Details from the Hon. Secretary, EMAS, 72 Hillside Road, London N15 6NB. Book Reviews Title: Mind and Media - The Effects of Television, Computers and Video Games Author: Patricia Marks Greenfield Publisher: Fontana Price: £2.50 Paperback 1 193 pages reviewed by Danielle R. Bernstein This very readable book is part of a series on the developing child, It compares the "new" media of TV and computers with print and radio. Why the feeling that you can only learn by reading? Reading is a serial media (one thing at a time) good for memorising facts. With TV and computers, many things happen at the same time (much like life). But it is when Dr. Greentield (Professor of Psychology at the University of California) writes about the merits of video games that she really started me thinking. This is the first serious discussion of the benefits of Pac-man and other such games that | had ever seen. She observed her son playing Pac-man and assumed that she would be able to play it but she was in for a surprise. She explains Pac-man and her attempts at it. For one thing, no one tells you the detailed rules of behaviour for each monster. In Pac-man, you must deduce the rules from observation (again like the real world). Is that why there is no documentation? Video games teach parallel processing and interaction between things. In contrast, a game like chess is one-dimensional with no speed factor. Players cannot change the characteristics of the pieces in chess. In the fantasy (adventure) games, you add new dimensions to the characters by using parameters and levels of difficulty. She thinks that the most harmful aspect of violent games are that they are solitary in nature and that two-person games are best. Children teach other children when computers are used. Computing is really a social activity, especially when you need to share computers in school. How are girls to get interested in action games? For it is action, not violence, that both boys and girls of the TV generation enjoy. Unfortunately she does not spend much time ‘on any practical answers. Instead, she goes on to discuss the educational values of programming and Word Processing. She finishes up by recommending a multi-media approach to education. A recommended book. Kx THE WILDCARD Now available for the Apple //e Copies 48K core resident programs. No parameter list needed. Copies most programs requiring RAM Card. Wildcard copies may be copied with standard copy programs. Copies even the bit copiers. Programs copied are saved as standard binary files. Works with any RAM card — plugs into any slot. Tel: 09328 67839 NEW FEATURES Auto selects screens on //e. Extracts foreign DOSes. Patches to the Inspector. Creates ‘BRUN ‘able files. Recovers listable, runable Applesoft programs. KKK K System requirements: 64K Apple + Disc Drive Price: £80.00 + VAT Available from your loca! dealer, or contact: ELITE SOFTWARE COMPANY, & 93 Eastworth Road, Chertsey, Surrey, kT16 8DXx. Page 28 HARDCORE - The Journal of the British Apple Systems User Group December 1984 Title: Kids 10 Kids on the Apple Computer Authors: Billy Saunders and Sam Edge Publisher: Prentice/Hall (Reston) Price: £8.95 Paperback + 8.25" x 11" : 168 pp. Reviewed by Patrick Bermingham, and son Sean. If you have an Apple I, I+ or //e and if you are one of those kind (but foolhardy?) parents who let your children use it occasionally for games, then why not give them the chance to broaden their interests and skills by putting a copy of this excellent "Kids to Kids..." in their Christmas pillowcase. Well written and cheerfully illustrated, its chapters progress from using Print and Maths statements to Loops, Low-Res Graphics, High-Res Graphics and Sound, How to Make a Game to How to do your Homework on an Apple. My 13-year-old Son, Sean, rated the book very highly. Title: Astounding Games for your Apple ‘Computer Authorst Hal Renko and Sam Edwards Publisher: Addison-Wesley Price: £3.95 Paperback # 6" x 6" + 147 pp. Reviewed by Patrick Bermingham If you have decided to buy "Kids to Kids..." reviewed above, then craftily slip into one of the family's Christmas stocking a copy of this feast of Games Programs, for yourself! The 31 programs are well chosen and cover a wide spectrum of challenge and excitement. As the blurb on the back cover truthfully says "Battle with GALACTIC MONSTERS and ZOMBIE IN THE SWAMP, compete in a thrilling ROAD RACE, defend yourself against a SHIP'S ATTACK and set out on a nerve jangling SHARK HUNT. Gamble at LAS VEGAS and KENTUCKY DERBY, stretch your mind with board games like ONE TO FIVE and SHAKESPEARIAN SHUFFLE; and test your _ intellectual capabilities with VOWELS AND CONSONANTS, KEYBOARD-MEMORY and AT THE MARKET". Apart from the fun of playing, a lot of programming tricks can be learnt through keying in the programs. Good value for money. Title: Applesoft BASIC Toolbox Author: Larry G. Wintermeyer Publisher: Addison-Wesley Price: £10.95 Paperback + 23.5cm x 18,5cm (9.25" x 7.25") 2514 pp. ISBN: 0-201-14775-0 Reviewed by Dave Miller "Stymied by the complexity of more advanced programming? Unsure what you can do with a beginner's knowledge of BASIC? Looking for a thorough and practical guide to using Applesoft BASIC? This book is just what you need." So "Applesoft. BASIC — Toolbox" proclaims on its back cover, If goes on to say that this book is ideal for the advanced programmer or the rank beginner and that this book will téach the following: to design more efficient BASIC programs to organise, store and retrieve data to use serial, sequential and random access disk files to create and use a complete data-file system. The book is split into two main parts: the first section deals with Applesoft while the second deals with disk files. The part on Applesoft is split into 33 sections which cover either a single command or a group of similar commands. Commands are explained by using the following format: instruction name & format examples of instruction usage purpose of instruction rules for use illustrations of these rules. Section one titled "Getting started" is an introduction to the Applesoft part of the book. The author advises the beginner to study not only the text but the program code as well while the advanced programmer, who is not familiar with Applesoft, should look at the coding rules. The following sections introduce each BASIC (and DOS) instruction. There seems to be no specific order in introducing the instructions except that the easier instructions tend to be at the beginning. There are, though, one or two anomalies such as dealing with DOS commands before even starting with BASIC and introducing ON...GOTO and ON...GOSUB before IF...THEN. It would serve no useful purpose to list the contents of each section, suffice it to say that most of the Applesoft instructions are dealt with in some detail. The second part of the book covers using disk files. It is split into six sections. Section one, called "Information Storage on Disks", introduces the basic structure of the Apple disk and such concepts as a ‘track’ and ‘sector’. A diagram of a disk neatly shows the main parts of the disk including the position of the catalog and VTOC track. Although there is no mention in the text, December 1984 HARDCORE - The Journal of the British Apple Systems User Group Page 29 DOS 3.3 is assumed and those readers with DOS 3.2 will find that some of the information given will be incorrect although it will not affect the example programs given. A small program which creates a text file is fully explained. Section two is called “Introduction to DOS disk instructions" and, not surprisingly, covers the commands available from DOS 3.3. All the commands except INIT are covered in quite some detail, including the use of ONERR GOTO to trap DOS errors. This is unfortunate since on the first page the author says that a disk is available with all the example programs used in the book (good idea, especially as many of the later Programs are quite long) but, since the disk is full, it has to be copied to another disk which should be initialised before running FID. INIT is covered in the first part of the book but it would have been nice if the author at least referenced the user to this section without just saying "make sure to initialise your disk before running FID". Section three is called "The GET Subroutine"; most of this section deals in great detail with a useful BASIC and machine Code subroutine which allows the programmer to circumvent some of the disadvantages and problems of using the INPUT statement. This is not only a useful utility but also very educational, The author advises the user to use this very comprehensive routine although it is compact and not very readable. The rest of section three goes into some length addressing topics such as string storage and others related to the function of the GET routine. Section four is called "Serial and Sequential Disk Files". The author lists the programs from the optional program disk accompanying this book which will be used in this section. He also gives details on how to make the disk operate as a turnkey system although there is no explanation of what a turnkey system is and it seems out of place here. He makes a good job of distinguishing between serial and sequential files: most people use sequential when they mean serial. The section continues with a detailed look at the use of serial/sequential files by producing, stage by stage, a directory program storing names, addresses and telephone numbers The program allows data to be inserted, modified and listed and is quite sophisticated. Provided that the reader understands the text, he/she will be brought up to a high level of competence. Section five is called "Random Disk Files" ‘and is of a very similar format to section four. Section six, called "Index Disk Files", uses the same methods but this topic is quite tricky and I feel that the author has handled it well. Appendix A follows section six. It consists of an ASCII list giving the binary and decimal codes for the restricted ASCII set used on Apple Is. I would have liked to have seen a full set because many old Apples can use it all. I have doubts on the usefulness of the binary codes given. The book is well presented but slightly hard to read. Program listings appear to have been produced on a daisy wheel printer and | could find no mistakes, The only fault was that GQTOs referenced REMs. The book is very large which enables the author to indulge in detailed descriptions of many facets of computing which smaller books could not hope to achieve. I found that this produced a feeling of being swamped with information. 1 think the book succeeds in three out of four of its main objectives but that not enough is said about producing well structured and efficient programs. 1 would have liked to have seen @ Glossary even though most of the terms introduced are well explained in the text. This book is a serious educational text book and I think that it is ideal for schools and colleges where the students are led through the book by their teacher. Outside guidance is necessary since there is little logical order in the first part of the book. | feel that the rank beginner would prefer a more easy going book but the experienced computer programmer not used to Applesoft BASIC will find this book very useful, Title: Art and Graphics on the Apple II/Ile Author: William H. Dewitt Publisher: Wiley Press Price: £12.25 Paperback : 10" x 6.8" : 128pp. Reviewed by lan Sidwell This book is intended tor the non-programmer who is interested in the graphics capabilities of the Apple. It starts from simple BASIC commands such as FOR-NEXT loops and thence onto LORES commands and use and then HIRES commands, including the use of shape-tables. It also has chapters on how to photograph your monitor/TV as well as the use of video-recorders. The book deals solely with creating graphics Apple Compatible Peripherals £50 OFF ‘MICROLEDGER’ BUSINESS SOFTWARE! Peanut Return a copy of this advertisement with any order over £50 and we will arrange to offer you this new business software system for £145 — a discount of £50 off list price. Spend £50 — get back £50! HARD DRIVE HD1. 10Mbyte mi PC2000 BUSINESS cepacity unit = _ running all COMPUTER : fanning — CP/M, Pascal programs. Supplied complete with Keele Codes’ CLIP software for CP/M file back-up. Full gervice contract available ........... £1,095.00 PLUG-IN CARDS 80 COLUMN High resolution, 9 x 7 dot matrix fully CP/M DOS, Pascal DISK DRIVES compatible, Il+ version ......... £52.50 terface ouput drvers RGB, PAL ADT Pasnie 80 COLUMN lle version ........ £49.50 chroma reonivocs: parsiiel printer full height f A J RS232: all b Languages: Basic, Pascal, drive. Shugart (Ile version with 64K ....... £89.50) GPa, orth Logo cic, varabe. mechanism INVERSE CHIP for 80 column card, complete ready. Lebar ayy i+ version, suitable for use with, for com .. £145.00 systems with various options of PDO2 Peanut half height, direct drive example, Magicale, Formet-80, Beers ene OO Gouble sided, 280K capacity ...... £149.00 Multiplan, etc . £9.50 STOP PRESS —~ See °C2000 in London at PDD3 NEW Peanut helf height. direct I fi Textstore Ltd. Twickenham, phone 01-888 drive, double density, single 40/80 column switch ... £12.50 280 runs all CP/M .. £44.50 9911 capacity ....... (ITT version, 280 ... . £49.50 nd learning to use this mechine partic bale idOK-cepectty en overt price anywhere = £99.00 16K RAM adds 16K to memory so, for example, a 64K machine has easy MONITORS 34K for Visicale ......... sesenseee £44,50 PEANUT GOES SOFT! —— Top name software at PEANUT prices PARALLEL PRINTER standard Peanut high resolution monitors 20 MHz bandwidth, on tilt/swivel mount — green or amber screen . £89.00 PRINTERS NEW Shinwa CPA8O, 100 cps .. £199.00 Daisystep 2000, daisywheel, 20 characters/second ............. £239.00 Peanut KGP40, 40 column, two colour, complete, with interface card. ssssccscdeasise £49.95 NEW 2 speed, near letter quality 85cps fast 165 cps PEANUT NLO £295.00 MICROLEDGER the pertect integrated accounts package for the sma business, special offer with voucher .... £145.00 FORMAT-80 ENHANCED the ultimate word processor — prints what you see! £99.00 HILDERBAY Modules: Invoicer, Payroll Book-keeper. SSP allat ..... - £69.00 HILDERBAY ACCESS catabase, power speed, versa’ value... £69.00 MAGICALC the faster-than-Visicalc spreadsheet with many pluses — no compatible commands HARDWARE KEYBOARDS: two types aveilabie: V3 Apple style unit giving lower case as an extra with 80 column card or special character ROM in 40 columns £59.50 V5 NEW detached unit. 24 function keys. separate numeric and operator section, independent four way cursor control ~ 96 keys in all, IBM style. fully Apple Il compatible . £99.00 JOYSTICK £11.95 £27.00 FAN, UK manufacture POWER SUPPLIES: two types: 5A heavy duty £56.50 7A extra HD, with fan £86.50 NEW PEANUT DISKETTES, own-brand. SSOD top quality 5 year guarantee. Packs of | 10 (Acd £1.00 carriage £14.95 Centronics interlace, FeECOgnISes all control codes, including cable ...... £38.50 PRINTER/BUFFER CARDS free computer of time-consuming delays — dump text straight into buffer printer takes it out at its own rate. Three capaci es available 16K «£79.50 32K £89.50 64K ., £119.50 DISK DRIVE CONTROLLER 13 or 16 sector disks auto-run ....... £38.50 SERIAL RS232 adjustable baud tate, half duplex, includes 25 way standard connector . £42.50 VO four port, 6522 chips, versatile card .. .. £39.50 EPROM WRITER programs popular eprom chips with compare, verify, copy,

Showing the first 100000 of 186855 characters.

mp.ls