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.