Posts: 54
Joined: Sat Mar 24, 2012 7:20 am

Mono (C#) and IBM, S/390 Assembler

Sun Jun 10, 2012 3:43 pm

I have produced an IBM S/390 emulator in C# that should also run "happily" under Mono on the Raspberry Pi (it uses 100% compatible CIL intermediate object code) . It is known as "PI_ZZA". There are some temporary restrictions, but the emulator will execute most programs using instructions written for the MVS/ESA Operating System (Amode 31) and selected other instructions from the full Z/Architecture set. It currently executes about 20 Mips on a non dedicated 2.3 G/Hz Windows PC without optimization (and under VS 2010 control). No IBM Operating System or IBM License is required to run your code and there are Linux (and Windows) assemblers available to create the IBM/390 object code.

This means that IBM Assembler programs, written for the IBM Mainframe can be tested under Visual Studio on Windows using a standard PC and then ported - without alteration- to the Raspberry Pi (or any other .NET supported environment).

The emulator totally prevents memory overwrites such as buffer overflows, despite the fact that IBM S/390 uses registers ("pointers" if you like).

I have also produced a fully operational IDE allowing step by step execution, breakpoints (or "Pauses" as I prefer to call them) and in-flight automatic memory displays.

I have also incorporated an optional profiler that accumulates instruction level statistics and shows Pi charts for raw instruction counts as well as "weighted instructions counts" (that take account of different instruction speeds).

I have yet to test it on the Rpi - partly because I have been working on other projects and partly because I have limited knowledge of Linux infrastructure. Anyone interested in collaborating in this project from the point of view of writing code in IBM S/390 Assembler, testing it on the Raspberry and who has intimate knowledge of the Linux environment and what is required for Mono on the Rpi should contact me.

Posts: 1
Joined: Wed Jun 20, 2012 10:43 am

Re: Mono (C#) and IBM, S/390 Assembler

Wed Jun 20, 2012 10:51 am

hi kdakin,

That is amazing work. I wouldn't use it to create new apps, but great for moving old mainframe apps off those old beasts.

Posts: 1
Joined: Sat Apr 06, 2013 1:17 am

Re: Mono (C#) and IBM, S/390 Assembler

Sat Apr 06, 2013 1:28 am

Hi kdakin,
I can't seem to find a way to contact you directly out here on the big wide internet.

I've stumbled across references to PI-ZZA a few times and I would like to learn more about what you have made. I am affiliated with a college that teaches IBM S/390 assembler and I have been evaluating different options for simulation and emulation. I would be very interested in getting this set up on the Pi and other environments.

Posts: 1
Joined: Sat May 11, 2013 5:16 pm

Re: Mono (C#) and IBM, S/390 Assembler

Sat May 11, 2013 5:20 pm

Dear Mr. Dakin -
I have read about your PI-ZZA S/390 emulator and wish to know if i can obtain a copy
( or when it will be released which i have read might be soon ).

William Gallant

Return to “Other programming languages”