Jay Sage in The Computer Journal issue #35 presented a patch to change Wordstar CPM version 4 from a ZCPR3-type shell to a ZCPR2-type shell. This is much more functional for most users. Under a Z3-type shell "SD;WS" and "WS;SD" produce the same result(i.e. SD is invoked first followed by WS). Under a Z2-type shell the first command is invoked first followed by the second. Under a Z2-type shell, commands can follow WS on a multiple command line(and be executed following WS4) while a Z3-type shell does not permit this. Jay's original patch used the MORPAT area of WS.COM for part of the code. For those already using the MORPAT area, code has been added to allow use of part of the EXTRA patch area in WS.COM. Patches must be made to both WS.OVR and WS.COM. WS.OVR is too large to allow use MLOAD or a debugger for this task. Therefore the patch must be made "by hand" using ZPATCH. TCJMRPAT.WS contains the changes if you use MORPAT while TCJEXTRA.WS contains the changes if you use the beginning of EXTRA(see below if you use a different patch area). Print out the appropriate file with Wordstar and the bytes to change will be in bold print. Enter "ZPATCH WS.OVR" from your command line. Use the "O" option to change the offset to 100h. Use the "A" option and enter 3CBF. "E" to Edit. Now begin entering the hex numbers printed in bold type(using the appropriate patch listing, either TCJMRPAT or TCJEXTRA). The hex numbers should be entered EXACTLY in the order displayed as the listing was created by an SLR assembler set to list 16 bit numbers in physical rather than logical order. IMPORTANT NOTE: After entering the number at 3CFF, enter ^W(control-W) to save the changes! Then get to the next record by entering "." or ">". Reenter the Edit mode and enter the five remaining bytes for this area. Save the changes(^W). Change the address to 67B2 and enter Edit. Enter the remaining bytes for WS.OVR, save them and Quit Zpatch. The changes to WS.COM can most easily be made using MLOAD. Use the appropriate HEX file, either TCJMRPAT.HEX or TCJEXTRA.HEX. MLOAD WS.COM=WS.COM,TCJ????? will get you the patched WS.COM in a flash. Both the HEX files in the library were created with intpath(Internal Wordstart path) set to no. If you want an internal path(and most don't need it), assemble TCJWSPAT.Z80 with "intpath" set to yes, the path defined at "path0" and mload set to yes. If you have already used part of EXTRA for one of your own WS4 patches, you need to enter a new value for "extra" in TCJWSPAT.Z80 giving the first available byte. You must have at least 128 bytes free in EXTRA for the patch. Assemble the file with "mload" set to no and generate a LST or PRN file. Only the byte pairs at 3CCF, 67BF, and 67B5 in the WS.OVR section will be different from those in TCJEXTRA.WS. Your assembler will undoubtedly print the byte pairs in logical not physical order so you will need to reverse the order of each pair as you use ZPATCH to enter them(e.g. address 091A should be entered as 1A 09). Don't forget to set the Offset to 100. Next assemble TCJWSPAT.Z80 with "mload" set to yes. Overlay the resulting HEX file into WS.COM as described above. Don't fail to have back up copies of WS.COM and WS.OVR before you start any of this just in case you make a mistake and your reconfigured WS4 doesn't work as expected!! Enjoy. Biff Bueffel 23-NOV-89