TwinOpus AREXX Scripts Installation Procedure. ============================================== Documentation Additions By Ray Abram on 15 / 12 / 1994 First you need to set up the environment for Twin and DOpus to work together. The AREXX scripts require that an extra 2 handlers be active in your Amiga. For Users of WB2.0 and WB1.3 if you have AREXX installed) 1) Copy the File Mountlist.twinopus into your Devs: dircetory 2) Add the following 2 lines to your Startup-Sequence just before the Loadwb command:- Mount PPIPE: from devs:mountlist.twin Mount Queue: from devs:mountlist.twin 3) Ensure the name of your RAM: does not have a space in it ** if it does (Amiga Dos calls it "Ram Disk"), then twin cannot use it) - use the command "ReLabel Ram: RamDisk" to fix the name. For Users of WB2.1 and higher Copy the Files in DOSDrivers into your directory devs:DOSDrivers Copy the Files in L into your directory L: The last thing to do is get your Amiga to respond to double clicks from DOpus to enter directories... In your User-Startup file, enter the following Command:- run >NIL: rx >NIL: REXX:DOpus/TwinHandler.rexx One other thing that needs to be checked, is that the command, RexxMast, is in your file Startup-Sequence, just before your User-Startup file is executed... Cache Directory Setup The new Directory caching in this version of TwinOpus needs to be setup as follows :- TwinOpus needs to be told where you would like the Cached Dirs to reside. This is achieved by adding the following assign to your User-Startup sequence Assign TwinDirs: XXXXX Where XXXXX is the name of the Directory where you would like the Cached Dirs to be saved. (usually a Dir on your Hard-Drive) Now copy in the files from the "TwinDirs" directory of the archive to the Assigned Directory you created above. These are the Root Directories of the CD's that I have. This will help get you started with the Twin-OPus package... ** Version 3 of These Scripts introduced Cached Dirs. The filename of the Cached Dir is made up of the name of the Dir in question - Due to the filename limit of 30 characters in AmigaDOS, I have truncated these names down to use the first and last character of the path names eg ~RAM:Clipboards -> `RM:CS - ** Version 3A and 3B, did not have the path truncation, so you need to run an AREXX program to convert your old filenames to the new format. - At a CLI type:- rx rexx:dopus/redo_names.rexx - *** ensure that the Assign TwinDirs exists before you run this AREXX program, else it will have no effect. - if you accidentally run the program twice, don't worry. The program finds a file called "Redo_Complete", and terminates!! Now ReBoot your Amiga, and the additions to your Amiga's environment are all complete now... Now we need to put the Arexx scripts used by this system into your Arexx directory... Copy the scripts in the DOpus Directory to REXX:DOpus - They MUST be put into the directory!! Now we need to Setup DOpus to use the AREXX scripts and communicate with Twin to make all those Comms worries go away... If you haven't got DOpus running, run it now... Now run DOpus's Configuration editor... (usually the Config option in the Project Menu) On my DOpus, I use a mixture of Menus and Buttons to run Twin ARexx scripts in... So the next few paragraphs will describe how to set up your DOpus like mine... I suggest that you follow my setup recomendations, and once you have the hang of how it is done, change your DOpus configuration to what ever you feel... To Get DOpus to start using Twin and get comms going, you need to get DOpus to ask Twin to enter a directory and give DOpus the directory requested... In the Configuration editor, select "Menus" 1) Add a new Menu called "Twin Stuff" 2) Now Click on the First Item of the new menu... 3) Enter the Name of the Menu as "EnterDir ~CD0:" 4) Select New Entry 5) Click on the Ring "Command" until it says "ARexx" 6) Click on the Text Gadget to the Right of this... 7) Enter "REXX:DOpus/ReadDir.rexx ~CD0:" into the text gadget 8) Select OK to accept this and go onto entering the next command... Repeat the above 8 steps for any other device that you want eg for IBM's you could have items for ~C: ~D: You must also have entries for your local drives... so add these and you are now ready to proceed to the next step... Select OK to go back to the Main menu of the Config editor... Now to configure some buttons to handle the main bulk of the Twin Opus comms In the Configuration Editor, Select "Buttons" - you will need several free buttons to do this properly, or alternately, you could put these options into the menus also. How to setup a Copy AREXX script... 1) Click on a free button 2) Enter the following text by the Name text gadget "T Copy" - this reminds you that this is the Twin copy button... 3) Click on the Ring "Command" until it says "ARexx" 4) Click on the Text Gadget to the Right of this... 5) Enter "REXX:DOpus/CopyFile.rexx XXXX" into the text gadget *** note DO NOT type the XXXX, this is where you enter in some options... CopyAs This will prompt you for a new destination filename Delete This will delete the source file (Acts like a Move command) Wait This tells the Arexx script to wait for the file to be copied before getting Twin to copy the next File Thus the Script for "T CopyAs" is "REXX:DOpus/CopyFile.rexx Wait CopyAs" "T Move" is "REXX:DOpus/CopyFile.rexx Wait Delete" "T MoveAs" is "REXX:DOpus/CopyFile.rexx Wait Delete CopyAs" - options can be in any order and But they MUST be separated by a space 6) Select OK How To set up a Delete AREXX script... 1) Click on a free button 2) Enter the following text by the Name text gadget "T Delete" - this reminds you that this is the Twin Delete button... 3) Click on the Ring "Command" until it says "ARexx" 4) Click on the Text Gadget to the Right of this... 5) Enter "REXX:DOpus/DeleteFile.rexx" into the text gadget 6) Select OK The same procedure is used to enter the rest of the scripts used :- for Making Directories in the selected Directory - enter "T Mk Dir" Arexx command = "REXX:DOpus/MakeDir.rexx" To drop back a Directory - enter "T Parent" Arexx Command = "REXX:DOpus/Parent.rexx" To Rename the Selected files - enter "T Rename" Arexx command = "REXX:DOpus/ReName.rexx" To goto the Root Directory of the current file list - enter "T Root" Arexx command = "REXX:DOpus/Root.rexx" To ReRead the Current Directory - enter "T ReRead" Arexx command = "REXX:DOpus/ReRead.rexx" ** If you are running out of Buttons on the Button Bank, then you could create another button bank and put all of the buttons there. Also now that all of the arexx commands for TwinOpus detect if you are trying to use them with on DOpus Directory Lists and will call the DOpus command instead of the TwinDopus command. Note for some reason (Bug in DOpus) the CopyAs does not work Thus concludes the set up adjustments to DOpus... - so save your configuration file for DOpus now... Additional Dopus support that you need to set up for:- - If you Double click on a file, then if that file has a recognisable extension then that file is Viewed (View "TypeFile.rexx" to see what files are supported) - This support doesn't come with out certain system requirements:- - You must have T: assigned some where (This is usually assigned to RAM:T) - As this is assigned to RAM:, you must ensure that you have enough free RAM to handle the file that you want to View. (If not then assign T: to a place on your Hard Drive/Floppy Drive. ie Assign T: DH0:Trashcan) - Graphics files are viewed with VeiwTek, so ensure that "VT" is some where in the Amiga's path. (Putting it into C: will do fine) - *** if there is an extension that you want support for, then add it in youself. - the script (TypeFile.rexx) explains how to do this Now you need to setup Twin... Enter the following command at a CLI prompt, or add it to your favourite tool manager... Twin Queue:twin ser XXXXXX where XXXXXX is the speed for twin to use eg... 115200 for talking to IBMs and A500's (IBM XT's use 57600) 250000 for talking between Amigas with 68020's or better 190000 for an accelerated amiga with 5 metre cable extension etc... alias tw run >nil: twin QUEUE:twin alias tw19 run >nil: twin SER 190000 QUEUE:twin alias tw25 run >nil: twin SER 250000 QUEUE:twin alias tws run >nil: rx Rexx:DOpus/TwinHandler.rexx alias tstop rx Rexx:DOpus/StopTwinHandler.rexx The last allows you to quit twin express. tws allows you to restart twin without having to reboot. Now run Twin on the Remote... - a message saying Comms has been established should appear... You are now all set to use the Twin-OPus ARexx scripts *** important note: if you try to delete files on a write protected drive (ie CD0:) then an error will occur. The Amiga version of Twin will report an error, BUT the IBM version of Twin will crash out to the dos prompt !! SO DO NOT try to delete files on a Write Protected Drive !! A list of Features that this Utility provides to the user :- - If you Double-Click on a Directory, then that directory is Entered into. - Directories are now sorted Dirs then Files, both in Alpha-numeric order - Double clicking on a file will View/Play that file - As files are being copied, a progress report is written to DOpus's title bar. (This option can be enabled/disabled by the WAIT parameter of CopyFile.rexx) - All scripts will not work with filenames that have Spaces in them (This is a bug in Twin). Thus all scripts will reports errors if you try to copy a file with Spaces in the filename. - Support for Click-M-Click and Click-H-Move, the problem is that DOpus reports the same Event for both, so a requestor pops up asking you to select the action that you want. - Caching of Directories read by this package. - This means that once you have read a Directory, the information that was given to DOpus for the Directory listing is stored in a file. So, when you come back to this directory at a later time, the directory information is very quickly loaded from the caching file and given to DOpus. - The problem is that the information stored in a Caching file can become incorrect (eg: a file in the directory was deleted). So you will need to ReRead the directory information. So use the ReRead.rexx macro to do this. - note the characters stored by the caching system replace : (a device name) -> = / (a dir seperator) -> \ *** thus if a dir name contains these characters, then the caching logic will become confused and not work... - Files containing the cached dirs are stored in directory t:twindirs, if you do a lot of directory reads then you may use up quite a bit of ram. So if you notice your ram getting a bit low, then delete some of the caching files. - files to delete are anything that does not end with a ; - If you want to keep Cached Dirs of CDROM's for later use, then save the files in T:TwinDirs to a place on your Hard Drive or Floppy drive. Then when you want to use the Cached Dirs at a later date, copy them back into the directory T:TwinDirs - As the filename in AmigaDOS is limited to 30 characters, the directory names that you can cache also have a limit of 30 characters. - Twin files lists and DOpus File lists can now be used with with each other. ie: the need to have both windows being controlled by twin has been removed. - As files have been acted upon, the file is de-selected - The following commands will work with DOpus or TwinDopus directory Lists - Root.rexx - Parent.rexx - ReRead.rexx - Rename.rexx - Delete.rexx - CopyFile.rexx So if you by mistake press the button to act on a DOpus list, the operation will still work, just as if you had clicked on the correct button... i.e. they are direct replacements for the DOpus commands *** For some reason (not my fault) the CopyAs dos NOT work !! It seems to me that this is a bug in DOpus itself ??? Common Problems with Twin Opus Scripts ====================================== - When I Select "Enter ~CD0:" from the Menu, nothing happens Possible Solutions: - Is Twin Started on both machines - Is the Cable plugged in properly at both ends... - Have you started RexxMast - Is the Remote Machine prompting you to do something - Have you launched the TwinHandler.Rexx script -this needs to be running before you run Twin, DOpus or RexxMast - Have you run Twin with the proper parameters - Are the Twin's running on both machine running the same baud rate - Ensure that the remote Twin has successfully connected to you machine eg the remote machine writes a message saying a connection has been established - The Twin Directory seems to not want to work any more, but it used to work Possible Solutions: - do a ReRead on the directory, as these scripts some times get confused... - I deleted a file a while ago, and the file seems to have come back. - The cached Dirs have not been updated, so do a reread of the dir in question - When I copy a file, TwinOpus reports the Error :- Error: Unknown Filename -> FILENAME - The Cached Dirs need ReReading, as they have got missing/extra entries in them - There are entries in the Directory listing that have no file lengths, and File lengths that have no filenames. This is a fault of Twin. As Twin gets confused with filenames that are longer than 25 Characters in length Possible Solutions: - Rename the Files to a shorter Filename and Re-Read the Twin Directory. - I deleted a Directory, but the Directory is still there Solution - Twin CANNOT delete directory Trees. It can only delete all files within a Tree - I entered a directory, but the wrong information was displayed Solution - this can arise from the optimization on the directory names eg ~NetWorkCD:Images/Fractals => converts to => ~NetWorkCD:IS/FS and ~NetWorkCD:Images/Flowers => converts to => ~NetWorkCD:IS/FS - so you can see the algorithum is not perfect, but will work most of the time - Thus do a ReRead.rexx on the dir that is wrong, and the correct data will appear.