Hello All, A trip down memory lane. I think the document for patching wordstar with ddt is 'Wordstar Customization Notes'. I remember having a pirated version and you could patch all kinds of things in the program. There were the codes for the video terminal, but as I recall there was even a section for different character widths. I patched a version so that printing with the proportional fonts for my Diablo printer could be right-justified.
I just used google and found a copy of 'Wordstar Customization Notes' for 3.0 at vtda.org Jonathan [email protected] ________________________________________ Från: M100 [[email protected]] för Stephen Adolph [[email protected]] Skickat: den 7 oktober 2020 13:43 Till: [email protected] Ämne: Re: [M100] REXCPM in M-100 - Success! Wow quite a note here and lots of great info! On Wednesday, October 7, 2020, Jim Anderson <[email protected]<mailto:[email protected]>> wrote: > -----Original Message----- > I also transferred some executables from my Kaypro to this machine and > they work as well: > - D.COM<http://D.COM> (A better directory lister) > - SWEEP.COM<http://SWEEP.COM> (also known as New Sweep, file operations > program) I would love to give these utilities a try, if you find somewhere to upload them. > - Wordstar 3.3, which runs but as we discussed, will not fit on an 8x40 > char screen, and being configured for the Kaypro, likes to write a *lot* > of control characters to the screen. I put WordStar 3.3 on my M100 not long after getting it up and running, and I've actually been using it for quite a bit of writing (sitting in front of the TV, using a C.Itoh VT100-compatible amber CRT terminal as the display while I wait for the MVT100 board), combining the wonderful feel of the M100 keyboard and the familiarity of WordStar commands. I never used WordStar back in the day, but I did use an editor in DOS (I think it was called TED) that used WordStar control-key commands, so it feels like home. I downloaded it from http://www.classiccmp.org/cpmarchives/cpm/Software/rlee/M/MICROPRO/WORDSTAR/V3-3/8080/ which also has WINSTALL.COM<http://WINSTALL.COM> so you can configure it for a VT100 terminal (or whatever terminal type you want). I also installed SPELSTAR which is available there, too, but there doesn't seem to be a way to configure the terminal emulation for SPELSTAR.OVR and I can't turn up documentation on patch addresses for that file. It spews a weird mixture of VT100 escape sequences and some sequences I'm not familiar with. (It also throws an error about an invalid entry in the dictionary when spell checking more than 50% of the files I tried it on, so...) Another option for fixing your WordStar copy is to change the Kaypro terminal escape sequences to VT100 sequences right in WS.COM<http://WS.COM> by patching it (editing it with DDT). I found a nice document covering the patch addresses of several different WordStar versions, but didn't keep at tab open (just saved the text file) and I can't seem to find it again tonight in spite of all my Googling efforts. I could email it to the list if more than one person wants it. I did turn up other lists of patch addresses for specific versions but none of them seemed to be as clean as this list. The most verbose resource (which is also easy enough to find) is an old WordStar document called WS-BIBLE.DOC which covers the patch addresses in great detail, but the version I found needed to have the high bits stripped as it's an actual WordStar document and (as many of you may already be aware) modern word processors don't seem to have a WordStar import mechanism for whatever reason... I don't know if this warrants a separate post or new thread or anything, but I was going to mention something I found very helpful to organize the enormous REXCPM disk space - user areas. This might be totally obvious to everyone else, I don't know, but it was new to me since I'd never used CP/M seriously before and had never had an opportunity to worry about organizing large disparate collections of files on a single disk without subdirectories. There are several fun caveats about user areas, one of which is that you can't execute commands from another user area like you can from another disk drive, so you get into a bit of a catch-22 starting out. I wanted to put WordStar and my document files in their own user area (I actually have user areas 0 through 3 in use for various different groupings of files now) and so you at least need IMPORT.COM<http://IMPORT.COM> in that user area to bring files in from your TPDD device. PIP has an option to copy files from another user area, PIP IMPORT.COM<http://IMPORT.COM>=IMPORT.COM<http://IMPORT.COM>[G0] (where [G0] means 'get this file from user area number 0'). That's great, except PIP.COM<http://PIP.COM> is not in the new user area yet so you can't execute it. To get PIP.COM<http://PIP.COM> into a new user area the CP/M manual has the following handy (?!?) solution (I'll save you the trouble of calculating it and tell you that in the CP/M image for REXCPM the NEXT value is 1E00 and the number 's' below is therefore 29 - also note that at least in my PDF of the CP/M manual there is a typo or possibly OCR error and G0 (gee zero) was erroneously written as GO (gee oh) which frustrated me until I realized the mistake): ========== Note: to copy files into another user area, PIP.COM<http://PIP.COM> must be located in that user area. Use the following procedure to make a copy of PIP.COM<http://PIP.COM> in another user area. USER 0 Log in user 0. DDT PIP.COM<http://PIP.COM> (note PIP size s) Load PIP to memory. G0 Return to CCP. USER 3 Log in user 3. SAVE s PIP.COM<http://PIP.COM> In this procedure, s is the integral number of memory pages, 256- byte segments, occupied by PIP. The number s can be determined when PIP.COM<http://PIP.COM> is loaded under DDT, by referring to the value under the NEXT display. If, for example, the next available address is 1D00, then PIP.COM<http://PIP.COM> requires 1C hexadecimal pages, or 1 times 16 + 12 = 28 pages, and the value of s is 28 in the subsequent save. Once PIP is copied in this manner, it can be copied to another disk belonging to the same user number through normal PIP transfers. ========== The other major caveat I should point out is that CP/M puts you back in user area 0 after executing almost any .COM file (except for STAT.COM<http://STAT.COM>, weirdly), so you really need to remember this especially if you quit a program and immediately set about trying to copy (or worse, delete) a file without typing DIR first and realizing you're no longer in the right user area. (Yes, I've learned this the hard way.) So on my system, I've got WordStar in user area 3, and after quitting WordStar I need to type USER 3 before I use EXPORT on the file I was just working on. (REALLY REALLY looking forward to the MVT100 so I can do the BCR hack and stop having to swap out cables and switch display devices to copy files in and out of my M100...) Aside from having to constantly remember to switch to the user area I'm using, and having to keep duplicates of the executables for at least PIP, IMPORT and EXPORT in each user area, I find the benefit of not having a DIR listing go on and on for several screens outweighs the inconvenience. On a real CP/M machine (or my old Apple II), several megabytes of files would have been spread across many floppies and this was never really a problem I had in the past... Oh, and if you lose track of which user areas you put things in, use STAT USR: to show you which user area numbers have files in them. You'll still need to go into each one with USER 1 or USER 2 etc and then DIR to see what's in them, though. There doesn't seem to be a way to list a directory without logging to each user area individually (at least, not with the built-in tools). jim --- När du skickar e-post till SLU så innebär detta att SLU behandlar dina personuppgifter. För att läsa mer om hur detta går till, klicka här <https://www.slu.se/om-slu/kontakta-slu/personuppgifter/> E-mailing SLU will result in SLU processing your personal data. For more information on how this is done, click here <https://www.slu.se/en/about-slu/contact-slu/personal-data/>
