Obtaining and Installing MVS 3.8J

There are multiple options for obtaining a running MVS3.8J system.

Considerations to consider

New users who are going to install it for the first time can probably skip down to the heading "Avalailable distributions of MVS3.8J I am aware of" if you intend to just run MVS3.8J and not customise it.

It is worth noting that most of the options are probably based on the TK3 (Turnkey3) origional distribution which was truely a major and impressive piece of work. That has been static for a long time now so other builds that are pretty much plug-and-play have been made available by various people since then containing later releases of software and a lot of additional customisation.

Whichever you chose you should at a minimum create a couple of new users and at least one new disk and put a user catalog on it that their aliases are catalogued in. Then at least after any major updates you can simply recreate the userids, update the vatlst00 with your disk(s), and import the user catalogs from your disk(s), relate the prefixes to that catalog again, and those datasets will be available again.
Obviously it will be more complicated if you have been creating new or even simply updating existing system datasets... some of the options listed below perform updates by simply providing new disk images for things like the MVSRES and PUBnnn volumes which will destroy everything you have customised. What I also do is create another disk with SYS9 datasets on it (they are in the master catalog) that I can simply use RPF against the volser and recatalog all those datasets into the mastercat from; hoever even using that method I must update in SYS1 datasets things like JES2 parms, APFlist parms. LNKlst parms to include them.

Or more simply if you start changing anything in the system configuration make sure you have a way of recreating your environment before applying updates to any of the options you chose.

Avalailable distributions of MVS3.8J I am aware of

These are the options for obtaining MV#3.8J that I am aware of in the order they are covered below. There may be other options.

The Turnkey 3 distribution

This is probably the most widely used base distribution. The Turnkey 3 distribution comes with all the DLIB packs (mvssrc files) needed if you want to do any complicated assembler programming. And at the application (utility/tool) level, Turnkey 3 is packed full of many utilites from the CBT tape files, and many CBT files preloaded onto disk packs. It also allows you to gen more consoles through a script which is usefull.

The DLIB volumes are essential if you want to do any real assembler coding. So if you like programming you should use, or at least download TK3 just to get those.

It does however come with a very old version of the hercules emulator (TK3 has been around for a while).
For Windows users please note that under windows it will want to install into a really old cygwin environment (TK3 was out prior to the native windows hercules emulator). So for windows users install it, then install the latest native windows hercules, then copy all the disk packs/config files etc out to a new directory and run it from there; you can then get rid of cygwin.

You can download the Turnkey 3 distribution from http://bsp-gmbh.com/turnkey and follow the instructions on that site for installing it. Last time I checked the download location had been hidden away in the FAQ section as it also had been updated with information on how to work around bugs/features introduced in later versions of cygwin.
I believe it is also linked to from cbttape.org.

It should be noted that TK3 is extremely old and seems to be no longer maintained. Also many of the essential utilities on it (rpf/review/queue etc.) will need updating by you if you want the latest versions). Additionally you may want to review whats available on cbttape.org; I updated a lot of what was provided plus installed a lot of things released to the CBT tapes that were simply not available when TK3 was first created (for example RAKF has been on CBT tapes for a while now and so well documented it is simple to install... or if you do not want RAKF this is the only available distribution that does not have it running).

There is one good reason you may want to look at TK3 fisrt. First and importantly TK3 will walk you through the full OS install steps you should know, such as the sysgen step you may want to rerun yourself with customisations. Other distributions that "just run" will not give you exposure to that, and you may want to do a sysgen one day to customise the devices you want to use.


The Community Edition

The Moshix youtube channel has a tutorial on this distribution at https://www.youtube.com/watch?v=-T5mjiFl6Hw.

This is a MVS3.8J prebuild system called MVS/CE and this is probably the most up-to-date available and is rebuilt regularly. It is expected most users would use this as a docker image, instructions are available at github location MVS-sysgen/docker-mvsce.

The MVS/CE repo: https://github.com/MVS-sysgen/sysgen
The ready-made MVS/CE image: https://github.com/MVS-sysgen/sysgen/...

It can also be installed onto you system from a tar image from that location under the sysgen/releases folder if you prefer not to use docker. If you use the tar file you must install a version of hercules yourself.

This prebuilt release starts you at the TSO ready prompt, it does have the ISPF clone installed out of the box so you can just type that at the ready prompt. It has its own package manager that allows you to list available software and install it (the Video mentions installing runs scripts on the underlying MacOS, so whether it works on other host OS's I don't know). I don't use this so I'm not really sure of all its features.

As I have not used this I do not know if it comes with the MVS source and SMP volumes needed to do any fun programming; it probably has enough to do anything uncomplicated.


The TK4- a heavily customised version of TK3

Another updated version of Tunkey3 called TK4- is floating about on the internet. The primary site seems to be http://wotho.ethz.ch/tk4-/. It is not the long awaited Turnkey4 but a version of Turnkey3 with a lot of connectivity enhancements implemented. Plus it comes as a standalone running system (it doesn't need the mvs3.8j implementation steps required for TK3).

However I would recomend starting with TK3 so you can go through the steps needed to build the system as that is a good introduction to the system; then replace with TK4- if you want the extra features.
Also TK3 has the DLIB dasd volumes you will need if you intend to seriously code any assembler; which you will need to extract from TK3 and move to TK4- and import the catalog for those to make TK4- useful for any serious asm/370 programming.

While it comes with binaries for hercules for multiple hosts (darwin,linux,windows) in the tk4-/hercules directory as part of the TK4- distribution you should just delete those. The binaries are not staticly linked and try to use shared libraries you will not have available on your Linux system so are useless to most Linux users. You should install 'hercules' from your distributions repositories or compile from source on github either 'hyperion' or 'spinhawk' yourself to obtain a working hercules emulator.

Refer to the TK4- site for details of the enhancements made to TK3. The major ones seem to be an implementation of SNA, TCAM, RJE, CTC adapters; and for some strange reason Kermit ftp 'ftpd' (most not usable with hercules without the tcpip instruction, for example ftpd does not open any host ports; however the CTC (RJE) adapters open listening ports for RJE lines 1-4 if hyperion or spinhawk are used (which is a feature not available if hercules from the repositories is used). It has minimal documentation on the extra features though.

It has updated versions of many of the useful utilities which saves a lot of effort, and does come with RAKF pre-installed (up to you if you think thats a good idea or not).

However TK4- does not come with source dasd or the CBT dasd. It does come with a lot of catalogued files that do not physically exist within the system so it is possible these volumes may be downloadable seperately
(personally I just cleaned up the incorrectly cataloged entries and imported catalogues from my tk3 system (and copied the disks across of course) as I had greatly increased the number of cbt files I had on those disks).

Additionally detailed installation instructions on building a TK4- system are availabe at http://www.jaymoseley.com/hercules/installMVS/iMVSintroV7.htm and TK4- seems to be still occasionally (if very infrequesntly) updated at the moment.


Rob Prins updates to TK4-

I do not recomend this one at all !. See update 30Jul2023 below. The current version on his website is unusable.

As TK4- has also been static for a while Rob Prins has been releasing updates for TK4- also. Information on those updates is available at http://www.prince-webdesign.nl/tk4rob.

It is important to note that updates provided by Rob used to be provided form of selective new DASD files to replace/overwrite the ones provided with TK4- which effectively means that if you have done any customisations you will lose them (MVSRES for example must be replaced as there are additional user catalogs, and jes2 has been reconfigured to use a different spool volume).
The last working update 20220914 had an option to download an entire working system with all disks provided to overwrite everything that is provided by TK4- (which is another reason to create your own DASD volumes to keep any files you do not want to lose on disks not provided by TK4- as mentioned in the considerations at the start of this page).

The 2023/03/30 release had in the zip file for the full system only the modified volumes, so no use to anyone. That may have been updated again by now. Of concern is that it added another four 3390 dasd volumes for no obvious purpose (just a few user files on two based on the example JCL to catalog? "def" them). It's of concern to me anyway, just makes my container images larger.

It does optionally provide the MVS source volumes and CBT volumes from TK3 and an example job to import their catalogs.

This is the only distribution I have found with the ISPF of Wally Mclaughlin (panels/clist) pre-installed and quite honestly it is almost impossible to find standalone install instructions for that, or even the location of it. Note: the Community edition mentioned above also has ISPF installed.

Ensure you start from the 20220914 or later release. That has been cleaned up a lot from previous releases from Rob (ie: no more SYS3 datasets to confuse things). It is more unstable (things abend a lot and RPF is almost unusable) than TK4- but having ISPF makes up for that.

From the 20220914 release it also provides "Intercomm version 9.0", which is thankfully on its own disk and usercatalog so should be easy to move to your customised system of you are interested in only that and not the rest of the updates made to TK4- (but you probably want the ISPF application that Wally spent so much time on that appeared in this release).

It also contains more up to date software of many utilites and compilers than TK4-. As well as ISPF added there are updates to BREXX, NJE38 (a much later version that uses a parm file for configuration rather than assembling the routing tables) and most utilities have been updated. Additionally if you refer to the link for this distribution you will see many sysmods have been applied... listed by number but no description which is annoying, one of them is needed for some updated brexx functionality but which one is anybodies guess. If you need to apply mods provided from other sources you may have to reject some of those additional mods added (I have had to).

If you are a completely new user this may be the starting place for you, but for every update you apply later you will lose any customisations you have made.

This distribution is if you want to play but have no intention of actually doing anything (or never updating) because of the way updates are applied by just overwriting exiisting DASD and trashing any customisations you have done. Although the considerations discussed at the start of this page can limit the effort needed to get your customisations back.

I also had a lot of issues getting this release working in a usable state, not for the faint hearted. I have resolved or worked around most of the issues in my container image.

TK5 - at update 2 as of 2023/12/15

Available at https://www.prince-webdesign.nl/index.php/software/mvs-3-8j-turnkey-5.

This is a new release available in the last few months. I have not had a chance to look at this. Seems to be based on TK4ROB but designed to allow easier updates.

Has detailed documentation on how to migrate/convert from prior TK3/TK4- releases to this one; but there will still be a lot of work involved.

My customised container

Currently I now only provide container images tested under both Docker and MiniKube.

The TK4ROB 20220914 is what I use as my base image now as it has Wallys ISPF, plus later versions of things like BREXX and NJE38 than TK4-. I have made quite a few changes to that base. I intend to move to one based on TK5 at some point but that involves a lot of work die to the many customisations I have made, and TK5 is using some dataset prefixes I already use so a lot of dset renaming and doco updates for me before I can provide one based on TK5.

This container can be very simple to use if you just want to start a single standalone mvs3.8j instance, however as noted above there is a supported (community edition) CE container image you should use if simply running MVS3.8J is your need.

The only reason you may prefer my container image to the CE one is that mine was origionally designed so I could easily play with complex combinations of NJE38 networking simply by using container environment variables to configure it, I am not aware of any other available container solution out there that allows for that yet.

But it is pretty much start the container and when it is initialised start a TSO session to it on port 3270. Read the details to see if that would suit your play needs.

However be aware that as I use my container myself for pretty much everything it contains all the MVS source, DLIB, SMP and even CBT volumes within it; it is huge. Also something I have only just thought of is that it does not provide a way for you to preserve changes over container restarts (what I intended for my needs but not much use to you), in a future update I might add a couple of empty disks in a seperate folder that can be volume mapped to your host for things you want to keep). Until then, if you make changes you want to keep snapshot the container before deleting it.

Changes to the hercules emulator for MVS/380 and VM/380

There is a project to make modifications to hercules to allow mvs3.8j to access additional features to provide more z/OS (mvs/XA, os/390) functionality, especially the 31 bit addressing. This project is currectly active at https://sourceforge.net/projects/mvs380/files/.

I have not tried this as the binaries for hercules provided are for windows, and I don't run windoze. There are instructions on applying the patches to unix source, but I have not attempted that yet as I use either the spinhawk or hyperion releases of hercules. This is not an OS, it is an updated version of the hercules emulator requiring patches applied to mvs3.8j to be usable.

To convert the MVS3.8J OS to use a basic set of addressing mode 31 capabilities a usermod is required from Rob Prins RPF site at the end of the RPF page, and as noted there it also requires a usermod from Greg Price's site as well.

If you wish to run a patched version of the hercules emulator and convert your mvs3.8j system to mvs380 you can give it a try (backup your mvs3.8j system first of course). And change the system type from S/370 to S/380 in the patched hercules configuration file before shutting down your existing hercules emulator and restarting with the patched hercules emulator version.
If you proceed down that path the forum for mvs380 is at https://groups.io/g/hercules-os380/messages.

This may, or may not, already be in the latest update from Rob Prins (the TK4ROB mentioned above for obtaining the MVS3.8J OS). I have not checked to see if it is.