Labels:text | screenshot | font | black and white OCR: written by Ben Hutchings and released as version 39.2 September 1994 LEGAL The contents of this package are the files: Install, Install.doc, Install.doc. info, InstallBB, Logo . BB These files are all copyright (c) Ben Hutchings 1994, but they may be freely distributed provided (i) no charge is made for them above the costs of duplication, distribution and the media used, (ii) all the listed files are kept together, and (iii) the files are unaltered. The exception to (iii) is that the files may be distributed in a compressed form as long as the original files can be retrieved from this form unchanged. Software released under these conditions is often known as Freeware. I reject any responsibility for any undesirable consequences whatever of the use of this software. This includes, but is not limited to, secondary consequences, personal injuries or other kinds of side effects. INTRODUCTION Install is a replacement for Commodore's Install command for OS 2.0 or later only. I have also written the InstallBB program to supplement the standard Install command under earlier versions of the OS. WARNING: I haven't tested Install with high-density disks as I don't have access to an A4000 and I can't afford to buy an external drive. It should work correctly with them but it may not. Please tell me if it doesn't - and if you can, use BootX or something to save a working high-density bootblock file for me to look at (on a standard disk :- ). Sorry, but I can't promise to return disks unless they are accompanied by a donation in UK currency or a cheque from a UK bank (depends on the quantity of feedback I get really - I can't afford the postage on dozens of international packages). ADDED FEATURES I wanted to add some features to allow installation from a file, and I also realised there were several bugs and omissions in version 37 (release 2.0) of Install which needed rectifying . I don't know whether the bugs have been fixed in version 39 (release 3.0) but my version still adds extra features. Here are the bugs/deficiencies: Contrary to documentation, it never returns WARN when a check reveals an unknown bootblock To work out which unit of the trackdisk. device to use, it simply takes the third character of the device name you give it, which means that if you typed Install DHO: you would actually be checking the internal floppy drive. Of course, only floppy disks can be checked - but this bug does cause problems with, for instance, Commodore's suggested Mountlist entry for unit 2 on an A2000 as DF1: ( Install DF1: would affect unit 1, not 2) . If a bootblock which is checked contains standard code and a file system ID other than DOSNO or DOS\1 (plain OFS or FFS), garbage will be printed to the screen There is no way of installing a 1.2/1.3 bootblock for compatibility with old machines Installing a bootblock on a single-drive machine is difficult To counter these I have made the following enhancements: You can check a bootblock for valid code, old (1.2/1.3) code, new (2.0/2.1/3.0 ) code, non-bootable contents, or that it matches a given file The device name given is looked for in the DOS device list, and the device's FileSysStartupMsg checked to ensure that it uses the trackdisk. device and to find out which unit is used All existing file-systems are recognised; new file-systems will be identified as either OFS or FFS with no further output generated It can install old (1.2/1.3) code, new (2.0/2.1/3.0) code, a non-bootable block or a custom bootblock from a file, using any existing file-system ID Installation/checking can be delayed until the Return key is pressed InstallBB does not provide all these features, but as I said it will run on any version of the operating system. I have included a bootblock with the programs, called Logo. BB' . This should work with all machines with any operating system version. It simply displays an embossed Amiga logo while the disk boots. Apart from this, it behaves exactly like the standard Commodore bootblock. For the technical bods: The bootblock opens a screen in the middle of the display (actually, slightly above on PAL systems or slightly below on NTSC systems) and draws the logo on it. All the co-ordinates are stored as byte values and doubled to find the real co-ordinates. For the second A the graphics cursor is moved to the right. A little under 100 bytes of memory are then allocated and a patch built up in this memory which closes the logo screen as soon as the first OpenWindow/OpenWindowTagList call is made, at which point the patch is removed. The memory cannot be recovered as the patch can only free itself if the calling function expects the Exec library pointer to be left in ab (which it doesn't, since the patch is on Intuition). There are 27 bytes to spare on the bootblock. INSTALLATION To install either version of Install on your system disk (where they are most useful) follow these instructions (some users will be asked to change disks at some point): Boot from your normal 'Workbench' disk or hard disk. Open a Shell/CLI. Enter 'Resident C:Copy pure' (this may cause an error, but that doesn't matter). Insert the disk this text is on. Change the current directory to the directory this text is in - you will have to type something like 'CD DFO: Install' If you have two floppy drives or a hard drive, then " to install 'Install', enter 'Copy Install C:' " to install 'InstallBB', enter 'Copy InstallBB C:'. If you have only one drive, then " to install 'Install', enter 'Copy Install RAM:', then 'Copy RAM: Install C:', then 'Delete RAM: Install'. " to install 'InstallBB' , enter 'Copy InstallBB RAM:', then 'Copy RAM: InstallBB C:' then 'Delete RAM: InstallBB' . Enter 'EndCLI' to close the Shell/CLI. HOW TO USE THE PROGRAMS Install and InstallBB are covered separately, for the main part. Note that either can be made Resident using the command: Resident C: Install or Resident C: InstallBB assuming that you have already installed the command you are going to be using (see INSTALLATION above). INSTALL Format: INSTALL [DRIVE] <drive> [FILE <file> IOLDINEWINOBOOT] [CHECK] [FFS] [INTER] [DIRCACHE] [WAIT] Template: INSTALL "DRIVE/A, FILE/K, OLD/S, NEW/S, NOBOOT/S. CHECK/S, FFS/S, INTER/S, DIRCACHE/S, WAIT/S" Specification: If the given device exists and uses the trackdisk.device (i.e. it's a floppy disk drive) then the bootblock of the disk present in it will either be checked or installed. If the CHECK switch is used, the bootblock will be compared with an existing bootblock. Otherwise it will be over- written. If the FILE keyword is used along with the name of a 1K bootblock file (such as those saved by virus-checkers), the file will be loaded and used. If the OLD switch is used, Commodore's old V33 bootlock code will be used. If the NEW switch is used, Commodore's newer V37 bootblock code will be used. If the NOBOOT switch is used, a standard non-bootable bootblock will be generated and used. If none of these options are used then the bootblock will either be checked for ANY normal code or installed with the V37 code. The FFS, INTER, or DIRCACHE switch are used to set the file- system ID of the bootblock, which should match the file- system of the disk. These cannot be used with a bootblock file which has a non-DOS ID. The bootblock checksum will be ad justed accordingly. The WAIT switch makes Install prompt for a disk before installation/checking takes place. This allows easier use on a single-disk system. INSTALLBB Format: INSTALLBB <drive> <file> IOLDINEW [FFS] [ INTER] [DIRCACHE ] Specification: If the given device exists and uses the trackdisk. device (i.e. it's a floppy disk drive) then the bootblock of the disk present in it will be installed. InstallBB will prompt for a disk before installation takes place. This allows easier use on a single-disk system. If the second argument is 'OLD' then the disk will be installed with Commodore's version 33 bootblock code. If the second argument is 'NEW' then the version 37 bootblock code will be used. This code appears to work with older machines too so the V33 code shouldn't ever be needed (I think). If the second argument is something else, then it will be taken as a filename and the specified file will be loaded and installed on the bootblock. The file must be exactly 1024 bytes long (the size of the bootblock). Such files can be created using BootX or some other anti-virus programs. The FFS, INTER and DIRCACHE keywords modify the file-system type of the bootblock. This should the match the file-system the disk actually uses. That is to say, for normal disk you don't need to use any of these keywords, but for disks formatted for the Fast Filing System you must use the FFS keyword. The other keywords probably aren't useful at all. As far as I know, the International and DirCache filing systems are not available or usable on OS 1.3 machines - but it was easy enough to put the code for them in :- ). ACKNOWLEDGEMENTS Thanks to Peter Stuer for his BootX program (sadly no longer maintained) and his Anti-Virus bootblock. BootX is terribly useful for handling bootblocks, and I used it quite a bit while I was working on this. The Anti-Virus bootblock I disassembled and debugged, which served as an excellent example source code when I wrote Logo. BB - seeing as there is apparently no official documentation of bootblocks. (Actually I found and removed the bugs while I was at it. ) I have to admit that I learnt everything I know about assembly language from reading other people's source code (often disassembled from their programs) and reading the chapter in the BBC User Guide about 6502 assembly language! CONTACT ME As yet I can only be contacted by Snail-mail. My address is: 43 Harrison Close Surrey RH2 7HS