The dowload provided here is a 'Zip' file, which needs to be unpacked before use. Where you put it is up to you - I am not a Windows person, so I am not qualified to advise you. I don't think it matters, as long as you can remember where it is. When it is unpacked, the files will be contained in a folder named 'sim803', so you can place this in 'My Documents' or wherever you like. If you have the Sun Java System, you need to invoke Jsim803 within that folder. Again, I am not familiar with Windows, under Linux I type 'cd sim803; java Jsim803'. If you don't have the Sun Java, you need to fire up Internet Explorer and click on 'File', 'Open', 'Browse', then locate the file sim803/index.html which will then produce the same display as you got when you accessed my web pages. Carry on from there.
Click here to download the packaged version.
Here's a brief description of how the tape store is organised.
All the tapes are stored in a sub-folder, named 'sim803/tapes'. If you look in there, you will find lots of files, each of these represents a tape in the filing cabinet.
There is another file called 'sim803/tapestore.cfg' which describes which tapes are included and the names of the boxes and drawers in the filing cabinet. If you look at it you will see it consists of lines, each of which contains a keyword and a name. The keywords are fiarly obvious: 'Drawer', 'Box' and 'Tape'. Boxes go in Drawers, and Tapes go in Boxes. The only ones that are critical are the Tape entries. These names must match the names of files in 'sim803/tapes'. The indentation is not critical, but I like to indent Boxes by one space, Tapes by two spaces. This makes the structure fairly readable. If you want to add a new tape to a box, just add an additional line with 'Tape' followed by the file name somewhere after the corresponding box. You can add extra boxes if you wish, but I don't recommend more than the present 4 drawers - the fifth will be off the bottom of the window when opened, and then you can't close it! You can change the names on boxes or drawers with impunity, they names are just displayed on the screen as you have typed them.
Look in the sub-folder 'sim803/tapes' where you will find a file called 'test.a60'. Open this using WordPad or your preferred equivalent. You should see:
; test program for trials TEST PROGRAM' BEGIN INTEGER I' PUNCH(3)' FOR I:=1 STEP 1 UNTIL 10 DO PRINT SAMELINE, DIGITS(6), I, I*I*I, ££L??' PRINT £END OF TEST£L??' END'
This is 'normal' Ascii text. If you are familiar with Algol 60, you may think it looks a bit odd, but this is because of the Elliott character set restrictions. See the Elliott Algol Manual for more details, but the above example shows that you have to use the apostrophe "'" in place of the semicolon, which doesn't exist in the Elliott Telecode.
Two other characters that are odd are the string quotes - here Elliott's decided to use the pound '£' and question mark '?' in their place.
You will, of course, spot that the file begins with a semicolon! As this doesn't exist in the Elliott Telecode, I chose it as a marker to indicate that this file was not in Telecode, but in Ascii, and needs to be translated when the simulator reads it in. In fact the semicolon also acts as a comment character - any characters typed between the semicolon and the end of a line are discarded when the file is read. If you start up the simulator and pick up this tape - it's in the drawer marked 'User Programs' and in the box labelled 'Algol Test Programs', then switch to the Editor view and load the tape into the reader. Then press 'Auto' and the tape will be read and printed. You will see that the first line doesn't appear at all. It was discarded by the simulator when the file was read in.
So, you want to type in your favourite Algol 60 program? All you need do is type it into a file, change the characters listed in the manual that are 'different', and add a first line beginning with a semicolon. Save the file in the sub-folder called 'tapes' and then add an extra line in 'tapestore.cfg' to identify the file as a tape. Then restart the simulator - it only reads tapestore.cfg when it starts up - and look in the filing cabinet and it should be there.
Note that tapes which is discarded or left lying about are NOT automatically saved, but if they were already in the system, they will re-appear when you next start the simulator. There is no method provided to destroy a tape once it has entered the filestore, other than using the editor on tapestore.cfg to delete the appropriate lines. This is not to say that there aren't any bugs in the system that might do this inadvertently, so I would recommend that you keep a backup copy of tapestore.cfg in case a disaster strikes.
There is no code in the simulator to delete files, so this is very unlikely to happen. If a file disappears from the filing cabinet, even after restarting, you may need to edit it back into tapestore.cfg to reinstall it.
One further note: The present version saves new tapes in binary form. As the simulator has no way of telling whether a tape is binary or text, I have opted to use the binary form. The conversion from Elliott Binary to Ascii and back again is not unambiguous and could easily produce a tape which is different from the original. If this is a binary executable program, then this would be disastrous. I am considering various possible methods to get around this, but at present the binary form is used. Hence printable output files are not yet possible. One approach that could be possible is a means of 'exporting' the output from the printers. That must wait for a future release, though.
Page created by Bill Purvis, last update 15th December, 2004