Is there a way of coding IBM's BAL on ZLinux?

456 Views Asked by At

I am trying to learn IBM's basic assembly language and I was wondering if there was a way of assembling BAL code on a Linux guest running on a mainframe?

I have nasm and as installed, but I think these are normally used for Intel processors rather than Z.

2

There are 2 best solutions below

0
Hogstrom On BEST ANSWER

There is a tool chain in Linux so that you can write assembler. as as an assembler then link edit and go. However, assembler is just a “language” which depends on a broader eco-system of APIs.

For instance, on z/OS there are a number of manuals that document the interfaces to operating system services, authorization of assembler and other “operating system services” that are going to vary depending on the OS you are developing in.

If you want to code 390x assembler on Linux you can but you are using OS services in Linux which are very different than other OS’ like z/OS.

If you are interested in a compare and contrast of the architectural differences between z/OS and zLinux you will find this presentation enlightening.

0
Timothy Sipples On

Here are a few other possibilities, in no particular order:

  1. IBM offers a commercially licensed HLASM for Linux on Z/LinuxONE. The standalone IBM Program Number for IBM HLASM is 5696-234, but it can also be licensed via other IBM operating systems for Z, such as z/OS. IBM distributes HLASM for Linux as a .rpm file, and it'll be something like asma90-1.6.0-47.rpm (where 47 is a revision level, the most current I see at the moment but subject to change).

  2. Dignus offers a commercially licensed product known as Systems/ASM (or DASM for short).

  3. z390 may be of interest: http://www.z390.org Please note that z390 apparently hasn't been updated since 2012, so it likely won't include support for recent machine models' instructions.