A>list scidos.doc SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual SCIDOS Disc Operating System. Vers. 2.1D SCIDOS is a software package which maintains a disc filing system where blocks of data are referred to by a file specification only, the software taking full responsibility for allocating and maintaining records of the physical tracks and sectors occupied by those files. Version 2.1D is logically compatible with 2.0D but includes a heavily altered BIOS offering extra facilities within the same coding space. This should be borne in mind when using programs which "patch" the BIOS. Fundamental to SCIDOS is the FILESPEC which has three parts: 1. The Drive Code which is a letter in the range A to E followed by a colon. The drive code specifies which drive the file is to be found on. If omitted, the drive defaults to the current drive which is always indicated in the SCIDOS prompt, e.g. B> if the current drive is drive B. 2. The File Name which is 1 to 8 letters, digits or $ symbols chosen by the user to identify the particular file. 3. The File Type is an optional further file identifier which is 1 to 3 letters, digits or $ symbols preceded by a period "." and generally used to describe the type of file. A typical filespec might thus be A:BASIC.COM or TEST12.SRC The use of a two part specifier for each file allows reference to be made to a class of files through the possible use of two 'wild' characters, ? in a filename or type meaning 'any valid character' and * meaning 'any valid group of characters up to the limit of the term'. Thus A:*.COM means 'all files on drive A of type COM' TEST?B.BAS means files such as TEST1B.BAS, TEST$B.BAS, TESTTB.BAS etc. P*.SRC means all SRC files with a name beginning with P Filespecs containing * or ? characters are referred to as 'AMBIGUOUS' filespecs. SCIDOS initialisation. To initialise SCIDOS, place a SCIDOS system disc in drive A of the computer and boot the system disc by typing Ctrl D for a double density system or Ctrl S for a single density one. The SCIDOS operating system will be loaded into memory immediately below MCOS and control will pass to it. SCIDOS will display a "sign- on" message and then scan the disc directory and set internal parameters within SCIDOS itself, a process known as 'LOGGING' to the disc. It then prompts the user for a command with the characters d> where d represents the code, A to E, of the logged drive. From this point SCIDOS will accept command lines typed in at the keyboard. These commands may cause the execution of some simple commands built into SCIDOS - NATIVE commands - or, for more complex requirements, load and execute TRANSIENT commands in the form of files on the disc stored with the command as the filename and .COM as the type. 1 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual SCIDOS Native Commands. Several commands for manipulating disc files are built into SCIDOS and may be typed in response to the SCIDOS prompt. These are: DIR [] which lists all or part of the disc directory. may be ambiguous or non-ambiguous. DIR on its own is equivalent to DIR *.* i.e. list the entire directory. ERA Erases the file(s) specified in the possibly ambiguous filespec. If the filespec is totally ambiguous (????????.??? or *.*), SCIDOS queries the command. FRE Provides an instant indication of how full the currently logged disc is. In the diagram, each * represents an allocated area of disc space, each - a free area. LIST Sends the contents of the file to the VDU. Typing a space during a LIST - other than at a paging pause - causes the operation to be aborted. LOAD Loads the file specified into memory, starting at address 00100H, and then returns to SCIDOS. REN = renames the file as . must exist or the command is abandoned. An error is reported if already exists or if drive codes are specified and are different. SAVE n Saves n*256 bytes of code, starting from address 00100H, under the filespec given. n is a decimal number in the range 0 to 255. Thus to save a program which extends from 00100H to, say, 01DC9H type SAVE 29 - 29 being the decimal for 01DH. 2 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual Native Control Commands. The following control codes affect SCIDOS operation: Ctrl C re-boots the disc Ctrl P toggles the state of the printer echo flag Ctrl U abandons the current command line Ctrl C must be used whenever a disc is changed. SCIDOS maintains internal tables of data about the discs currently logged. This dramatically speeds the opration of SCIDOS but could lead, if the disc in a drive was changed, to the system thinking that an already occupied part of the disc is free. To avoid this, SCIDOS also maintains a sumcheck based upon the directories of the currently logged discs and calculates and checks this sumcheck prior to each writing operation. Thus SCIDOS is able to notice a change of disc and mark the new one as 'Read only', preventing erroneous writing by reporting a 'R/O' error. As this safety mechanism could ruin quite a long session's work with a applications program by refusing to let you save the fruits of your efforts, the use of Ctrl C, which updates all internal tables will probably only be forgotten once! Ctrl P toggles a flag, the default for which is OFF, which causes the printer output channel to repeat everything being sent to the VDU. Logging to other Drives. The default drive for booting a disc is drive A, but, once booted, SCIDOS can be made to log another drive as the current drive by the command: d: on its own, where d is the letter A to E. Note that different drives may well refer to the save drive mechanism, but to the other side of a double-sided drive unit. Thus a two drive computer may be able to log into all 4 drive codes. Error Messages in SCIDOS. SCIDOS is a three-part system, each of which can report errors. The command processor provides informative messages such as: NOT FOUND in ERA and DIR where no file matches the given spec, or READ Error in LOAD and in transient commands where the file is too big to fit into memory. No SPACE in SAVE where the disc is full Cannot CLOSE in SAVE where the directory is full FILE EXISTS in REN where a file already has the required 3 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual The main part of SCIDOS, the BDOS, provides messages indicating some form of disc error. These often occur in conjunction with the Input/Ouput Section which gives specific information to go with the BDOS message. BDOS error messages are of the form: BDOS Error on d: xxxxxxx where d is the drive and xxxxxxx can be 'BAD Sector' if a read or write operation has failed, 'Select' if a bad drive code has been given or 'R/O' if the disc is write protected or has been changed since last logged. Input/Ouput section errors actually report the drive, track, sector and memory address pointer at the time at which the error occurred. One or more letters also suggests the type of error, thus: TYPE ON TK SR AT xx dd tt ss mmmm where xx are the error code letter(s) dd is the drive where 00 represents drive A, 01 drive B etc. tt is the track number ss is the sector number mmmm is the memory pointer The code letters can be represented as C meaning that a CRC check has failed during a read or write operation. This may mean a worn disc, a dirty recording head or just a momentary disturbance in the preceding write to the sector which may have caused a marginal write. A utility program could be used to attempt the recovery of the sector simply by reading the sector until no error occurs and then re- writing it or, if this is not possible, reading, correcting and rewriting the sector D means that data has been lost during either a read or write, due to a hardware failure. E means that the disc controller cannot locate the desired track, sector or side number. The E error is serious as it implies that parts of the disc which are only written to during formatting have been corrupted. E and C errors may occur simultaneously if the failure to find the information was due to a CRC failure. The only solution to an E error is to recover as much of the disc as possible and then to re-format or discard it. The SCIDOS utilities are of use in this task. P means that a write has been attempted on a physically protected disc. V means that the verify of a write operation has failed, possibly for similar reasons as those given for a C error. In reponse to one of its errors, the BDOS waits for a key-press (unless you use a soft reset to drop to MCOS in order to effect repairs that way). For a Select or R/O error the system will then re-boot. For a Bad sector error, Ctrl C causes a re-boot whilst any other key makes BDOS ignore the error. The latter might be useful if you were using PIP to copy as much as possible off a disc which had given an 'E' type error. 4 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual SCIDOS Utility Programs The following utilities are supplied for use with SCIDOS: FORM.COM - Formats and checks a disc Fx1.COM - Single track formatter (disc size x) FLUSH.COM - "Formats" the Silicon Disc COPY.COM - Copies a complete disc DISC.COM - Disc read/write utility EDIT.COM - SCIDOS disc editor DEBUG.COM - SCIDOS Z80 software debugger P.COM - Sends selected EPSON code sequences to a printer PIP.COM - Transfers data between I/O channels STAT.COM - Supplies statistical information about the system SUB.COM - Batch processes a series of SCIDOS commands SYSGEN.COM - Copies SCIDOS onto another disc Some of these utilities are specific to a particular disc size or density. If so, the version on your disc will have a modified filename, preceded by 'S' or 'D' to indicate single or double density and/or suffixed by a digit (3, 5 or 8) to indicate the disc size, 3.5", 5.25" or 8" respectively. FORM.COM This program formats and checks the serviceability of a disc. FORM enters the program directly. The program requests the drive to be formatted and then directly formats that disc. FORM d formats drive d directly and then re-boots. Fx1.COM Fx1 formats a single track only, the program prompting you to enter a drive code and then a two-digit hex track number in the range 00 up to the maximum for the particular version. Its use is when your accident, or an E error indicates that a particular track is unreadable. FLUSH.COM Initialises the Silicon Disc by clearing the directory area. This is necessary after switch on as the memory in the Silicon Disc will be undefined. COPY.COM This program is a very fast disc copier which can be used with machines with one or two drives. It makes an identical copy of a disc, including the system tracks. When run, COPY prompts you for source and destination drive codes. Prior to giving these codes you may change the disc(s) in preparation for the copy operation which will start as soon as you type the second answer. If you nominate the same drive as both the source and destination, COPY will regularly prompt you to swap the discs and then press any key to continue the copying. Otherwise the process is full automatic. 5 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual DISC.COM This program loads into memory and then passes control to MCOS. To use the program, type RUN DA00 The program may then be used to read or write areas of disc directly to or from system memory. When using DISC it is important to keep track of the size of the data block being read into memory as you will lose control if you over-write DISC (address range 0DA00H to 0DBFFH), MCOS (address range 0F800H to 0FFFFH) or the RST jumps (address range 00000H to 0003AH). This is not much of a limitation as it still leaves a block of over 54Kbytes of R/WM. EDIT.COM This experimental program is used for editing disc sectors in the SCIDOS environment. For large scale operations, use COPY or DISC. EDIT keeps a menu of possible commands on the screen, each command consisting of a one or two characters followed by a possible data string. To use all of the features of EDIT requires a full appreciation of SCIDOS - three points in particular: 1. SCIDOS splits the disc into two parts. The outer 1 to 3 tracks, the RESERVED tracks are used to store SCIDOS. The remaining tracks are used for directory and data storage. SCIDOS divides the directory and data storage area into blocks of 1, 2 or 4Kbytes which are referred to by GROUP numbers, starting at group 0. The first 1 or 2 groups are used for the directory. 2. SCIDOS uses "logical sectors" of 128 bytes each. The physical sectors may not be of 128 bytes and also may not be used in strict sequence. Thus EDIT records both a logical and a physical sector number, the latter being in the form mm:nn where mm is the physical sector number and nn indicates which part of the physical sector is being used. EDIT works in physical sectors whilst it is on the reserved tracks and logical sectors whilst on the rest of the disc - although the ! command can be used to force the use of 'physical' sectors on the entire disc. As well as T and S, the G command can be used to select the disc editting position by Group number. To edit a particular file, the M command produces a 'map' of the disc, relating filespecs to the groups they occupy. Any number of commands, up to a total of 128 characters, may be concatenated by using ; characters, e.g. LA;M;G0;D will log to drive A, display a map of the disc, go to the first sector in group 0 and then display its contemts in hexadecimal and ASCII. A command string may be editted using BS (backspace) or Control H and made to repeat itself n times by appending /n to the end of the command string. Note that n is a decimal number in the range 1 to 255 (all other numeric input to EDIT is assumed to be in hexadecimal unless preceded by a # symbol), 255 having the special meaning of 'repeat indefinitely'. Thus the command T0;S1 followed by +;/255 is a slow way of testing an entire disc. An EDIT command string may be given from the command line, e.g. EDIT P;M;X prints a map of the current disc and then re-boots the system. 6 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual DEBUG.COM DEBUG is a program which provides the various facilities you need to test and correct or "debug" your own .COM programs. You can follow the execution of a program instruction by instruction ("single-stepping"), set "break-points" (i.e. points at which execution stops and the contents of the Z80 registers are displayed) and "pass-points" (i.e. points at which the contents of the registers are displayed) and, for pass-points, you can specify how many times the program is to pass through the point before it automatically becomes a break-point. For "real-time" application programs (i.e. programs which must run at normal speed), pass-points provide a means of maintaining real-time speed during most of the program's activity. As an extra feature to aid the debugging of real-time or of complex programs, an option to the single-step or "Trace" mode is that it can be made to only trace the path through the main program, running all subroutines in real-time, untraced, mode. All commands given to DEBUG consist of a code possibly followed by a string of parameters, each parameter being separated from the next by a comma, e.g. F100,200,55 In describing these commands, standard Backus-Naur notation is used, i.e. that expressions in angle brackets <> describe the nature of a parameter, expressions in brackets [] are optional and expressions linked by | symbols are alternatives. Spaces are only included for clarity and should not be included in commands. Intialising DEBUG. DEBUG [] If a filespec is given, that file is loaded to address 00100H as though the I and R commands had been used. Otherwise DEBUG just loads itself and prompts for a command. Command Syntax. L [][,] L gives a disassembled listing of an area of memory. If no start address is given, the final address of the last command is used. If no final address is given, 16 lines are disassembled. A [] A allows you to type in Zilog assembler statements. If no start address is given, DEBUG uses the last listed address. To terminate loading, type a . instead of an assembler expression. G [][,][, 2>] G begins real-time execution at the start address (the default for which is the last break-point address). One or two break-points can be specified. 7 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual D [W] [][,] D lists memory, 16 bytes to the line, in both its hexadecimal form and then, if applicable, in its ASCII form (codes outside the range 20 to 7E hex are represented by the '.' symbol). If no start address is given, the final address of the last command is used. If no final address is given, 16 lines are listed. If the W is included in the command, adjacent bytes are paired and printed in reverse order as 16 bit words. S [W] S allows you to alter memory, either byte by byte or, if the W is included, 16 bit word by word. To exit from the S command, type a . instead of a byte/word. To leave a location unaltered, just type return. To enter ASCII strings via the S command, precede the string by a double quote e.g. "ABCDefgh F ,, F fills the area of memory specified, including the start and end locations, with the hex byte given. All three parameters are required M ,, M moves the block specified, including the bytes at the start and end addresses, to memory beginning at the destination address. All three parameters must be given. H , H calculates the 16 bit sum and difference of the two parameters. X [|] X on its own displays the current Z80 register contents. X followed by a parameter allows you to alter the contents of that register. Permitted register and flag specifiers are, A for register A A' for register A' B " " BC B' " " BC' D " " DE D' " " DE' H " " HL H' " " HL' S " " SP X " " IX P " " PC Y " " IY M for the Sign flag M' for the Sign flag Z for the Zero flag Z' for the Zero flag I for the Half Carry flag I' for the Half Carry flag E for the Overflow/Parity flag E' for the Overflow/Parity flag C for the Carry flag C' for the Carry flag When an alteration is to be made, the current value of the register or flag is displayed. If is pressed, no alteration takes place. A can be set to any value in the range 0 to FF hex, other registers to 0 to FFFF hex and flags to 0 (flag cleared) or 1 (flag set). 8 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual I Certain programs need an initial string as part of their initialisation, e.g. the form STAT *.* to provide full STAT information about a disc. I provides all of the initialisation required to emulate the command string extension, viz. forming FCBs at locations 0005CH and 0006CH and placing the string, preceded by its length and terminated by a NUL (000H) at 00080H. R [] R reads the file specified at 0005CH into memory. The default loading point is 00100H although this can be offset by giving a parameter. After R, the current contents of the program counter and the bottom and top of free memory are displayed. P [[,]] or -P [] P sets pass-points, i.e. points at which the register contents are displayed and, optionally, execution stops. P on its own is a special form which lists the current pass points in use in the form cc PASS aaaa where cc is the count associated with the pass-point set at address aaaa. Otherwise, P sets a pass-point, with the default for the count being 1. -P cancels pass-points, the default being all points cancelled. [-] T [W] [] T traces the execution of a program. The listing lines consist of the register contents prior to the execution of the instruction given at the end of the line. The default for the number of instructions traced is 16. If the W option is used, tracing only occurs for execution at the depth of subroutine nesting at which the trace begins. The - option disables the register display both of traced instructions and of pass-points. General Information. After loading, DEBUG relocates itself at the top of free memory, directly under BDOS. The jump to the base of BDOS at location 0005H is modified so that a jump is made to the base of the relocated DEBUG and a jump is written at loca- tion 0038H for use in setting break-points. There are two implications of this: 1. Programs which use the address in the jump at location 0005H to estimate the size of free memory will return approx. 7Kbytes less space. 2. Avoid developing programs which make use of RST38 as DEBUG uses this RST and will therefore not be of use in debugging your program. Note that you can return to SCIDOS from DEBUG by typing Control C. Note also that DEBUG does not trace when executing at addresses above the true base of the BDOS. This is intentional as if allowed to, there would be a clash between the program's and DEBUG's use of the computer system. 9 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual PIP.COM PIP is a program for the transfer of data between different I/O channels. PIP has a command line of the format: =[, . . . ][] can be CON: (the VDU), LST: (the printer port), AXO: (the aux- iliary output channel), an unambiguous filespec or a drive code. can be CON: (the keyboard), AXI: (the auxiliary input) etc. The options are chosen from the following: A Archive. A or A1 will only copy files meeting the specification if they dont already exist on the destination disc. A2 only copies files that meet the specification and DO already exist on the destination disc. B Buffered input. PIP loads data until an XOFF (Ctrl S) is received. It then transfers all of the data to the destination. Use this option for an uncontrolled input device E Echo. Causes transfers to be echoed via the VDU. F Filter Form Feeds. Removes all form feeds (Ctrl L) from the transferred data. H Hex verify. Checks for correct Intel HEX format, removing superfluous data. I Ignore. Removes blank records from HEX files. I automatically selects H. J Judge. Queries each file to be copied, asking for a Y/N decision. L Lowercase. Converts all ASCII A-Z characters to a-z. N Number. Numbers each line of text. N2 causes leading zeroes and a trailing tab to be sent. O Object file. Transfers the entire file (Normally a Ctrl Z in the file is taken to be the end of file marker. O is automatically selected for COM files. Pn Paging. Inserts form feeds (Ctrl L) every n lines. The default for n is 55. Q^Z Quit. Stops copying after the given string. S^Z Start. Starts copying from the start of this string. Tn Tab. Expands tab characters (Control I) to the next nth column. U Uppercase. Converts all ASCII A-Z characters to a-z. V Verify. Verify the file written in the transfer. Wn Width. Truncates all lines to a maximum length of n Z Zero. Zero the most significant bit of each byte transferred. 10 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual Typical commands might thus be: PIP B:=*.*[V] transfer all files from the current disc to drive B, verifying each file transferred. PIP A:=E:*.*[JO] copy selected files from E: to A: PIP LST:=M.SRC[NT8] print M.SRC, numbering lines and expanding tabs. PIP NEW.HEX=OLD.HEX[HE] checks a hex file for correct format, echoing to the VDU. All of the CP/M I/O devices have been included and the I/OBYTE function is implemented , i.e. CON: can be refered to as TTY: CRT: UC1: or CON: AXI: or RDR: " " " " " PTR: UR1: UR2: or RDR: AXO: or PUN: " " " " " PTP: UP1: UP2: or PUN: LST: " " " " " LPT: UL1: PRN: or LST: PRN: is a special case of a LST: device in that tabs are automatically expanded, lines are numbered and form feeds inserted every 55 lines. There are also two other 'devices'. These are EOF: which causes a Ctrl Z to be sent to the destination and NUL: which sends 40 zero bytes to the destination. INP: and OUT: are user-definable devices, for which handlers can be patched into the area 010AH to 01FFH within PIP using DEBUG or MCOS. PIP makes a call to address 0106H with a data byte in C whenever it wants to OUTput a byte and makes a request for an INPut byte by making a call to address 0103H. The subroutine written for INP should dump the data byte to be passed to PIP at location 0109H before ending. NOT allowed are ambiguous destinations, an ambiguous source with an unambiguous destination or source/destination channels which cannot act in that mode. e.g. LST:=*.SRC or FILE.*=CON: or AXI:=LST: are not allowed PIP can be actived from the SCIDOS commands line, e.g. PIP A:=B:*.COM in which case, on completion, the system re-boots Entering PIP in the conventional way, e.g. PIP produces a * prompt between each command line entered and executed. To exit PIP in this mode of operation, enter an empty or single character command line. P.COM P send the control sequences required to set up the selected features for EPSON printers. The program can easily be modified or extended for other codes. When using P, please make sure that the printer is connected and switched on! 11 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual STAT.COM STAT Computes the free space on the currently logged discs. STAT DSK: Provides information about the currently logged drives. STAT VAL: Summarises the STAT commands available. STAT d: Returns the amount of free space on disc d. STAT Provides fuller information on the file(s) specified in . The default drive is the current one and the filename and type may contain either * or ? characters. The details given are the number of sectors, Kilobytes of disc storage and directory entries allocated to the file(s). In the specific case of a fully ambiguous filespec, STAT also prints the number of directory entries. This can be of use in deciding whether a "DISC FULL" message issued by an applications program means full disc or directory. SUB.COM The SUB function is used for executing a series of commands without operator involvement. To use SUB, create a file of type .SUB using PIP or some other file writing program. The file should consist of the commands to be executed. Once created, the command SUB will execute the commands in the file .SUB. Should any errors occur in the command execution, or a key be pressed during input of commands from the .SUB file, the command chain will be aborted. SUB can only be used from a disc in drive A. If the command SUB TEST is given whilst the disc is in another drive nothing will result although if that disc is then transferred to drive A and booted or re-booted, the SUB sequence will proceed directly. Note that if you write programs that are to run under SUB control they must end with a jump to location zero and further, if you want the chain of SUB commands to be terminated should some condition occur in your program, you should arrange for the file $$$.SUB to be erased before the jump to location zero. SUB accepts parameters from the command line by the use of the $ parameter within the .SUB file, e.g. if the file COPY.SUB contains: PIP $1=$2 STAT $3 which is called by the command line SUB COPY ALFRED.COM HENRY.COM E: it will execute the commands PIP ALFRED.COM=HENRY.COM STAT E: SYSGEN.COM SYSGEN copies the system tracks from one disc to another. The command SYSGEN A: B: copies the system from drive A: to B: automatically. SYSGEN on its own prompts for the drive codes. If the source and drive code given are the same, SYSGEN indicates when the disc is to be changed. 12 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual Miscellaneous The following files/programs are also supplied on the SCIDOS disc. CONV.COM This program updates discs from SCIDOS Version 1 to Version 2. It writes SCIDOS Version 2.0D to the system tracks of a disc and then re-works the directory to the Version 2 format. Use CONV once only on each disc. OLD.COM This program replaces MCOS with a monitor which simulates some of the aspects of the Scientific Computer. Naturally, it cannot make some of the hardware aspects, e.g. VDU mapping, the same as for the original machine, but it does allow discs for the old machine to be booted and software which is not hardware-dependant to be run. RESKEW.COM RESKEW alters the sector order on a disc from/to a skew of 1 (no skew), 2 or 3. For further details of skew, see the SCIDOS notes in the users' group newsletter. RESKEW can only be used with standard double density discs, i.e. discs with 512 byte sectors numbered 1 to 16 on 8" discs or 1 to 10 on others. REP.COM REP is a fast, single drive, multiple copy program intended for use with the Silicon Disc. It prompts for the number of tracks to be copied (entered as the equivalent key), reads that number of tracks from drive A: and can then be used to write this data to or to read new data from, drive A:. The limit of data to be copied is 512Kbytes which restricts 8" copying to 64 tracks. REP can only be used if a Silicon Disc is fitted and destroys any data in the Silicon Disc. SELDSC.COM SELDSC allows you to redefine the format for drive B: to one chosen from a menu of common formats used by other computers. The redefinition remains in force until SELDSC is used again or the system is booted from MCOS. SYSCOPY.SUB To use this file, put the master disc in drive A and a version 2 disc to be updated in drive B. Type SUB SYSCOPY and the computer will then write the new system to the disc in drive B and also update any utilities. Depending upon the space remaining on the disc, there is a listing of this manual and either source files or listings of the latest versions of MCOS and the current BIOS. 13 of 14 pages SCITEX Software (C) 1983, 1984 SCIDOS Operating System Manual The following demonstration programs are supplied with SCIDOS: TIERCE.COM - Music program 1 RECIT.COM - Music program 2 SONATA.COM - Music program 3 TOCATTA.COM - Music program 4 MUSIC.SUB - Batch processor for the music programs SNAKE.COM - Game program SNAKE2.COM - Game Program Music Programs. The three music programs are des- igned to be used in conjunction with a stereo amplifier or with stereo head- phones. The network of resistors shown in the diagram is used to blend the output of three of the computer's tone generators to produce two audio signals. If a single amplifier is to be used these two outputs should be linked. The three pieces can be run individually as standard COM files or, providing the utility SUB.COM is on the disc and the disc is in drive A, the three may be run directly by giving the command line: SUB MUSIC Snake. Snake is a multi-screen game in which you guide a "snake" around the screen, attempting to "eat" the various targets without hitting the obstructions. Successive screens include more and more obstructions and a snake which moves faster and faster! Each screen starts with a random distribution of 10 asterisks, each of which is worth 1 point. Eating an asterisk will produce a + symbol which is worth 2 points when eaten and will, in turn, produce a white square which, if eaten, loses you a point and a life. Each screen is completed when all * and + symbols are gone and then the game immediately moves on to the next level. From time to time a # symbol will appear on the screen for a short period. Eating this gains you one life and a score which can be as high as 12 or as low as 1, depending on how long you take to get it. To stop you just circling in wait for the 'special', should you not have made a minimum extra score since its last appearance, the character will appear in reverse video. Hit this and you lose the life and the score! The direction in which the snake is moving is turned 90 degrees anticlockwise by the Z key and 90 degrees clockwise by the X key. You start with 3 lives and the game finishes when you hit an outer wall or run out of lives. You lose lives by hitting the white squares which appear when you eat + signs or the inner walls which appear in increasing quantities in the higher levels of the game. Should you feel that a square or wall is an insurmountable obstruction, you may clear your way by pressing the space bar when the head of the snake is less than three jumps from the obstruction. This will cost you a point but no lives. The game begins as soon as you press a key so be prepared! At the end of each game the screen "freezes" to let you call everyone in sight to see your score or, more likely, to see just how you fouled it up. To play again, press the space bar. To exit to SCIDOS, type Control C. 14 of 14 pages A> A>