APL on the 5100/5110/5120 was based on the IBM mainframe APL/SV, (follow-on to 
APL\360), with several added features.  The "360 emulator" was not a full 
emulator of 360/370, but only emulated exactly those instructions needed by the 
APL interpreter (that was written in 360/370 assembler language).

Similarly, the System/3 emulator that was developed for the 5100/5110/5120 
BASIC implemented only those instructions that were needed by the S/3 BASIC 
software.  System/3 was a machine with limited amounts of real CORE memory, so 
developers recognized early on that they needed to implement a kind of a 
"virtual machine" for BASIC, and that was coded in S/3 assembler language. This 
layer also provided the "virtual" memory for BASIC use, done via "software 
paging" on a machine (S/3) that had no hardware for virtual memory, relocation, 
etc.

See also:
    https://www.glennsmuseum.com/items/s3m6/ 

Glenn Henry was instrumental in the development of the S/3 Model 6 BASIC, and 
later led the effort to create the IBM System/38.  He was eventually promoted 
to become an IBM Fellow.  The design of the virtual instruction set used for 
S/3 BASIC was used to create the "scientific instructions" for the S/32, S/34 
and S/36 that was used by BASIC and FORTRAN on those systems.

Mark S Waterbury

Reply via email to