Obtaining The MUSIC/SP Operating System

The MUSIC/SP (McGill User System for Interactive Computing) operating system was origionally created in the early 1970s as major enhancements to the IBM RAX operating system to make it useful by McGill University (for the 360/370/4300 achitectures) and as the copyright was maintained until 2000 at which point it was running on ESA/390 hardware it is probably one of the most recent operating systems available for hobbiests; and as as it ran in hundreds of universities it is pretty stable.

A history of this OS is on Wikipedia at https://en.wikipedia.org/wiki/MUSIC/SP.

A working operating system for hobbiests is available as a single volume MUSIC/SP demo system, with detailed documentation including manuals for the OS available from http://www.canpub.com/teammpg/de/sim390/techinfo.htm. It also has miltiple compilers and rexx installed.

This demo system does not use hercules but uses another IBM hardware emulator Sim390 as that provides the needed tcpip interfaces. The Sim390 emulator is available at http://www.canpub.com/teammpg/de/sim390/download.htm. Sim390 is a Windows only binary however Linux users can run it under 'wine' without any issues; it is also a subset of mvs instructions so only useful for music/sp.

Sim390 advantages over hercules are that it provides full tcpip support for the underlying OS using the IUCV instruction (the VM 'Inter-User Communications Vehicle') which has not been implemented in hercules allowing tcpip applications to be written using standard IBM manuals such as 'IBM manual: IBM TCP/IP for VM: Programmer's Reference, Ver 2 Rel 4 (SC31-6084-03 Dec/1996 or equivalent), Chapter 5 "IUCV Sockets"' as MUSIC/SP was maintained until the very late 1990s so all IBM manuals from that period are relevant.

Sim390 disadvantages are as Sim390 is a subset of mvs instructions it does not support all devices such as useful tape devices so ftp must be used to get files into and out of the MUSIC/SP system which raises issues for Linux users as mentioned further down on this page.

There is a youtube walkthrough of running MUSIC/SP under the Sim390 emulator on a windows desktop. Once you have it running there is a more detailed video on using MUSIC/SP including directories, creating files, creating panels and rexx backend processing for the input from the panels; and most importantly covers changing the nameserver settings so tcpip operations lookup names from the dns servers you want to use rather than the unreachable McGill university entries that are set in the demo system.

Options for Linux users


Issues to be aware of

By default the FTP port used is 621 and the httpd port 801; which means they cannot be used on Linux as they are in the privaliged port range (less than 1024 so only available to the 'root' user, which you would never run any emulator under). These cannot be changed from the config file but must be changed from within the running system, so you have to get it up and running first (not an issue if you use hercules as the emulator as it does not support the tcpip instructions needed to open the ports).
From the notes on the distribution site documentation

- The TCP port numbers for MUSIC's FTPD and HTTPD servers: change MUSIC file $tcp:inetd.ports and restart Sim390. - Other MUSIC TCP/IP settings: edit the MUSIC file $tcp:tcpip.config. File $tcp:tcpip.config contains the time zone settings, IP addresses of your DNS server(s), and various setting for HTTPD (Web server).

For example from the *go* prompt 'edit $tcp:inetd.ports', when done 'save'. The next IPL will use the new values.

As discussed under the 'hercules' section below it is possible to disable those subsystems completely if you do not want to change the values or provide internet services from your music/sp guest.

The 'Wine' emulator

The Sim390 program runs perfectly well under 'wine' (I was using Windows7 emulation, set under 'winecfg') including allowing remote console access on the port configured for it in the configuration file. Also after making the changes mentioned above to $tcp:inetd.ports and shutting down and performing another ipl I can confirm that ftp into the guest OS also works perfectly well. Using Sim390 under Wine works perfectly well so is a better alternative than hercules for this operating system.

The only issue with running it under wine is that when you run Sim390 you will get an error box pop up saying 'unable to open console'; just click on it and forget about it as it then simply uses the terminal wine was run on (standard output) as the console output and runs quite happily. The error is probably due to wine not having expected windows components like telnet.

Hercules

It is possible to run MUSIC/SP under hercules (important note: later versions of music/sp must run as 'archmode esa/390), it will not have tcpip support for things such ftp, running a web server etc. The disk device type for the OS volume must be a 3370.

As there is no tcpip support under hercules you need to stop the tasks that require tcpip to avoid repeated error messages as INETD (BTRM) tries to restart them, so when logged on as an admin userid at the *Go* prompt enter

vip on
codupd
change cfmn003 autoprog()
end
console
cancel 3
(Then press F3 to exit from Console)

To turn BTRM back on again

vip on
codupd
change cfmn003 autoprog($tcp:inetd)
end
console
reset 3
(Then press F3 to exit from Console)

There is detailed documentation on running the MUSIC/SP single volume OS under hercules available (ipl volume is 201, must have a telnet session to port 3270 as a console before ipling) for detailed information on what devices are available (ie: Cuu for dasd, tapes, printers) and some common commands.

The reason you may want to run MUSIC/SP under hercules rather than sim390 is that hercules will provide tape drive support (and additional device support) to the OS which you may want to use.