4

The IBM System/38 or just S/38 was an IBM mini-computer launched in 1978. I don't know when IBM stopped marketing it but their AS/400 was released in 1988 and it was very easy to switch from the S/38 to the AS/400 so the S/38 will have died out quite rapidly.

The AS/400 has changed its name and its technology several times since, e.g. CISC to RISC, but it still lives on as the IBM i. IBM i is actually the latest O/S, there is no longer any unique hardware for it and it runs on the same hardware as Aix (IBM Unix).

A feature of these systems is technology independance. The compilers are two stage: high level language to intermediate code followed by intermediate code to machine code. This is common but what is not so common is that the intermediate code is stored in the generated object. This allows a program to be restored to and run on a later machine with different hardware. The machine code is discarded and the second stage compile is run again. This is possible even if the HLL compiler is not available. The second stage compiler is in the base operating system.

I have done this many times over the years e.g. S/38 to AS/400 and CISC AS/400 to RISC AS/400. However, I have not tried the extreme of the long obsolete S/38 to a current IBM i.

Edit. I see that my question is answered within the S/38 Wikipedia article that I linked.

As a result, it is possible for a program originally developed on a System/38 to run on current IBM i hardware without ever being recompiled.

But I think that this is just an expectation, as I have myself, rather than actual confirmation. It is also technically incorrect as IBM i is an operating system and not the hardware. The current hardware is IBM Power System which can also run other operating systems.

4
  • 1
    I suppose the only way we'll find out is if there's someone here who's actually tried it - or we find an untouched S/38 program.
    – dave
    Commented Nov 26, 2020 at 19:46
  • That was the hope. I've kept my eyes open for years but not found one. Of course, if I did, it might be on an 8 inch diskette which would be a little hard to use.
    – badjohn
    Commented Nov 26, 2020 at 20:36
  • I'd suspect you'd run into a problems like the program being tailored to a particular I/O device configuration that the modern systems can't replicate or needs some library code or other support software that's no longer available.
    – user722
    Commented Nov 28, 2020 at 6:41
  • Yes, I realised that after in a comment. If a program actually was saved on an S/38 then it would be media that was no longer supported or very rare e.g. 8" diskette. I think that I have seen programs with attribute RPG38 relatively recently. These may have originated on an S/38 and survived untouched until today but they would not have made the transition in a single step. The closest I could get might be a save file which was created on an S/38 and somehow survived until today.
    – badjohn
    Commented Nov 28, 2020 at 10:26

1 Answer 1

3

This appears to be a list of mailing lists devoted to the AS/400 and iSeries systems. Someone on one of those lists would certainly know.

List    Description
BPCS-L  BPCS ERP System
C400-L  Bare Metal Programming IBM i (AS/400 and iSeries)
COBOL400-L  COBOL Programming on the IBM i (AS/400 and iSeries)
Consult400  Consulting on the IBM i (AS/400 and iSeries)
Domino400   Lotus Domino on the IBM i (AS/400 and iSeries)
JAVA400-L   Java Programming on and around the IBM i
LINUX5250   Linux 5250 Development Project
MAPICS-L    MAPICS ERP System Discussion
MIDRANGE-JOBS   Midrange Jobs: Postings & Discussion
MIDRANGE-L  Midrange Systems Technical Discussion
Midrange-NonTech    Non-Technical Discussion about the IBM i (AS/400 and iSeries)
OpenSource  IBMi Open Source Roundtable
PcTech  PC Technical Discussion for IBM i (AS/400 and iSeries) Users
RPG400-L    RPG programming on IBM i
WDSCI-L Rational Developer for IBM i
WEB400  Web Enabling the IBM i (AS/400 and iSeries)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .