S/3 Emulators

An IBM System/3 model 10 emulator was written by Charles 'Dutch' Owen for SIMH in 2001 with some assistance from me.
Quoting Dutch: "...we were working on the sim (me writing, he testing and telling me where I screwed up)."

This emulator has support for:
I added support for:
Click here to download this new release (Apr 2009).
Warning: this version is written to run with the SIMH version included in the tar file.
Tip: when running the emulator you really need this IBM S/3 HALT guide and this OCL reference card.

In 2005 I started to write a model 15B emulator (with 3340 disk drives) and used Dutch's source code as starting point.
My plan was to write a model 15A with 5444 drives, but I didn't had a 5444 based model 15  System Control Program.
I did have a 3340 version of the SCP, so I started with that.
.
The 3277-1 operator console emulation is not perfect and needs a specialist who is familiar with COLOR ANSI on Linux.
Here are some screen shots:
 
  Date prompt screen.     Partition overview screen.    Service aid screen.   (15A emulator)

With a running model 15B emulator (with 3340 drives) I was able to re-create an 5444 version of the SCP. Unfortunately
all the 5444 specific software modules where missing (IOS driver: de12, 5444 initializer: init2, 5444 IPL record: sgipl etc).
Luckily I have the source code of all these modules on microfiche, so after typing in 2000+ lines of assembler source code,
assembling and linking it all, I was able to re-create these modules.

As already said the weak point of the model 15 emulator is the ANSI 3277-1 emulation. It is not possible to connect the well
known tn3270 to the emulator. The SCP does not generate 3270 BSC data stream to communicate with  the 3277-1 console.
The screen data is transfered directly from storage via an internal channel to the adapter and then via coax to the 3277-1.
Then I got the idea to develop an async to IBM coax converter and connect a real IBM 3277-1 to the emulator.

      Linux/S3emulator COM port  <===/ RS232 /===> Converter  <===/ Coax /===> Real IBM 3277-1
 
There are some pictures of the result: 

                     CPU and convertor pic. Pic 1.                 Convertor PCB pic. Pic 2.         
                             
Pic 1: the left PCB is an Atmel ATNGW100 running Linux and the System/3 emulator.  The right PCB is the async to coax converter.
Pic 2: The converter is build with an ATMEL Atmega processor and 11 bit serial & deserial logic in an ALTERA fpga.
Here are some screen shots of the result:

           

    IBM model 15 screen   YouTube demo movie.

The response is quite good and no difference with a real system. (except less power consumption, space and noise)
Detailed specification of the IBM-ANR protocol can be found here.

Currently I am working on a connection between a real System/3 operator panel and the emulator.
The hardware is finished and the software (modified SIMH S/3 emulator) is about 90% done.  

Here are some pictures. The black box behind the panel is a 19" Industrial PC, the first type IBM made.
Two PCB's, as shown in the next picture, are needed to interface between the panel and the PC.
.
    Operator Panel Interface PCB

The interaction between the operator and the panel is besides error conditions and single machine / clock
cycles operations identical with the reel panel.  Extra effort was needed to make the panel lights flicker
as on the original panel.
A modified IBM Composer Selectric connected via a RS232 connection is used to replace the IBM 5471.

Currently I have CCP running on this system. I am now working on a 3277-2 converter to connect a reel
IBM 3277-2 terminal with CCP running in the emulator.

See also my 5496 project.