Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Creating disk image for Wordstar with yaze emulator

167 views
Skip to first unread message

pte...@gmail.com

unread,
May 23, 2020, 1:41:11 PM5/23/20
to
I've been playing around with yaze 2.40.5 on Linux for a bit. Its seems to be a nice emulator and includes a bunch of disks that are automatically mounted in the tarball that you can explore. I wanted to create my own disk image (ydsk they call it) and try out a program on it. Below was what I did to get Wordstar 4.0 on a disk image to play with.

1. Download Wordstar 4.0.

cd ~/Downloads
wget http://www.retroarchive.org/cpm/text/WS4.ARK

2. Install unar to uncompress WS4.ARK. Use your package mamager depending on your Linux distro.

# Void Linux
sudo xbps-install -Su unar

# Debian/Ubuntu/Devuan/Mint/etc.
sudo update; sudo apt-get install unar

# CentOS/RHEL/Fedora/etc.
sudo yum install unar

3. Uncompress WS4.ARK.

unar WS4.ARK
cp WS4/* .
rm -rf WS4

4. Create a new yaze disk image and mount as A:.

cdm
$>create ws40.ydsk
$>mount a ws40.ydsk

5. Copy the Wordstar files to the disk image. Replace "<userid>" with your login id.

A0>cp u:/home/<userid>/Downloads/VIDATT.Z80 a:VIDATT.Z80
A0>cp u:/home/<userid>/Downloads/WS.OVR a:WS.OVR
A0>cp u:/home/<userid>/Downloads/WSCHANGE.COM a:WSCHANGE.COM
A0>cp u:/home/<userid>/Downloads/WSCHANGE.OVR a:WSCHANGE.OVR
A0>cp u:/home/<userid>/Downloads/WSCHHELP.OVR a:WSCHHELP.OVR
A0>cp u:/home/<userid>/Downloads/WSMSGS.OVR a:WSMSGS.OVR
A0>cp u:/home/<userid>/Downloads/WSPRINT.OVR a:WSPRINT.OVR
A0>cp u:/home/<userid>/Downloads/WSPRINT.TST a:WSPRINT.TST
A0>cp u:/home/<userid>/Downloads/WSREADME.TXT a:WSREADME.TXT
A0>cp u:/home/<userid>/Downloads/WSSHORT.OVR a:WSSHORT.OVR
A0>cp u:/home/<userid>/Downloads/WSU.COM a:WSU.COM

6. Unmount the disk and start yaze.

A0>umount a
$>quit
yaze

7. Mount the disk image on the next available letter. Its "O:" in my case since yaze mounted a lot of other images already.

A>sys

$>mount o /home/<userid>/Downloads/ws40.ydsk
$>go

A>o:
O>

8. Run WSCHANGE.COM to setup your terminal (and other stuff).

O>wschange

What file do you want to install? (normally WS)

Type the filename and press RETURN...wsu

What file do you want to save any changes to? (normally WS)

Type the filename and press RETURN...wsu

9. Type "a" for console, "a" for monitor, "a" for monitor selection. Type "c" for ANSI (DEC VT-100). Finally, type "x" three times to exit each menu. Then "Y" to save the change.

10. Run Wordstar and enjoy.

O> wsu test.txt

Richard Deane

unread,
May 23, 2020, 6:09:22 PM5/23/20
to
or you can create an empty disk in yaze-ag monitor, mount it, then use R command under CP/M to read the files into that drive from a folder e.g. under yaze-ag bin . Wordstar is usually downloadable as straight files as well as a dsk format.

Philippe Tempel

unread,
May 23, 2020, 7:28:35 PM5/23/20
to

> or you can create an empty disk in yaze-ag monitor, mount it, then use R command under CP/M to read the files into that drive from a folder e.g. under yaze-ag bin . Wordstar is usually downloadable as straight files as well as a dsk format.

I just used the r command for the first time today. I was checking out HiTech C on the H: disk. I used r to copy a prime number program I wrote a few days ago:

A>h:
H>r /home/<userid>/c/prime1.c
H>c prime1.c
HI-TECH C COMPILER (CP/M-80) V3.09
Copyright (C) 1984-87 HI-TECH SOFTWARE

H>dir prime1.*
H: PRIME1 C : PRIME1 COM

It works well albeit slower than on linux as expected. I haven't written C in quite a while. It was another trip down memory lane (in addition to Wordstar, CP/M and others).

Nathanael

unread,
May 23, 2020, 9:33:09 PM5/23/20
to
The one problem that plagues me with WordStar is the "WS.OVR?" issue.

My environment is Z-System (Z3PLUS) and I currently have WS in A4: named as "WS".

I run WSCHANGE, set operating system to ZCPR3 and DEFUSR to 4. Default drive is A (LGLDRV). I've changed all file names from, e.g., WS.OVR to A:WS.OVR.

If I try to run WS from any DU other than A4:, it can't find WS.OVR.

I know there's fix 'cause I've done it before, but I can never remember what it is.

Wayne Hortensius

unread,
May 23, 2020, 10:06:42 PM5/23/20
to
On Sat, 23 May 2020 18:33:04 -0700 (PDT)
Nathanael <cjec...@gmail.com> wrote:

> The one problem that plagues me with WordStar is the "WS.OVR?" issue.
>
> My environment is Z-System (Z3PLUS) and I currently have WS in A4:
> named as "WS".
>
> I run WSCHANGE, set operating system to ZCPR3 and DEFUSR to 4.
> Default drive is A (LGLDRV). I've changed all file names from, e.g.,
> WS.OVR to A:WS.OVR.
>
> If I try to run WS from any DU other than A4:, it can't find WS.OVR.
>
> I know there's fix 'cause I've done it before, but I can never
> remember what it is.

As I recall, this is what fixed it for me (along with BDOS
errors on non-existent drives):
<http://www.classiccmp.org/cpmarchives/cpm/Software/WalnutCD/jsage/znode3/editors/ws4zcpr3.fix>

Using WordStar v4 on a Kaypro 10 with TurboRom v3.4 and ZCPR33, I
occasionally had a problem of WS not finding its overlay or a
BDOS error on a non-existent drive.

The problems occurred when logged on to a different user number
than WS was on (the disk made no difference). Sometimes there
would not be a problem, and sometimes there was - depending on
which program was run previously (if VEDIT PLUS, WS would NOT
work - if SHOW, WS would work).

Upon much investigation, it was found that WS uses memory bytes
02201H and 02202H in some manner to find its overlay and other
things. BUT these two bytes are not cleared by the WS I have,
but are manipulated in some manner.

If memory byte 02201H has the most significant bit set from a
previous program and memory byte 02202H has an acceptable value,
WS will not find its overlay the first time run, but since it
clears that bit when run, it will work fine if run again.

If memory byte 02202H has bit 4 set and bit 3 cleared from a
previous program and memory byte 02201H has an acceptable value,
a BDOS error on a non-existent drive occurs.

If memory bytes 02201H and 02202H are poked with 0 before running
WS the program appears to work every time.

Since WS does start to run, a patch to an internal initialization
routine can also be used to fill the two memory bytes with zeros
either by using WSCHANGE or direct patching.

If the user patchable initialization is not being used, run
WSCHANGE, go to selection "E Patching" of the main menu. Enter
"=" and "INISUB", then enter C3 5B 04. Return to patch menu
enter "=" and "MORPAT", then enter 21 00 00 22 01 22 C9, and exit
saving patches.

That is:
03BB INISUB::
03BB C3 5B 04 JP 045B

045B MORPAT::
045B 21 00 00 LD HL,0
045E 22 01 22 LD (02201H),HL
0461 C9 RET


Originally posted on Lillipute #1 3/5/88 msg #7000 by Ernie Barnhart

Nathanael

unread,
May 24, 2020, 3:38:22 AM5/24/20
to
On Sunday, May 24, 2020 at 10:06:42 AM UTC+8, Wayne Hortensius wrote:

> As I recall, this is what fixed it for me

Only kinda sorta for me. WS is in A4: File is C0>DELETE.ME

After patching:

Yay! A4>WS C0:DELETE.ME
Nay! C0>A4:WS DELETE.ME

Now, I'd originally had WS4 in A3>, where it worked perfectly, then moved it to A4> and it broke. Even after a lot of playing with WSCHANGE settings, I couldn't get it working. Moving it back to A3> unbroke it.

I'll probably never know why.

--nathanael
0 new messages