Due to lack of the OS-level file system on the BESM-6, and to deficiencies of data visualization tools which could help people decide which blocks of a system disk could be reused (the line of thinking was "if it could not be understood, it better be not touched, just in case"), it is still possible to find pieces of data which hark back to the early 1970s or earlier, on disk images from the late 1990s or later (1).

For example, on the disk image with the OS binaries dated 1988, there is a block containing the boilerplate ИПМ БЕМШ ОТ 27-10-69 (2), which refers to Moscow Keldysh Institute of Applied Mathematics, in which an IBM-inspired macro assembly language БЕМШ (BEMSh, after the initials of the last names of the primary developers) for the BESM-6 has been developed.

What's more, there is an excerpt, around a thousand of LoCs long, of the source code of the macroprocessor, written in a fairly idiomatic macro style, unlikely for an implementation from scratch, for example,

OПД4   ПPKЛ  S,(=,OПД5),C

(The comment above says 49 PROCESSING MACRO OPERANDS, and the similarities of the syntax to the IBM Macro Assembler are striking)

That prompts me to think that the assembler and the macroprocessor, whose syntax closely follows IBM's, the latter being fully machine-independent, has been taken as the source and adapted to another instruction set, rather than developed from scratch based on the IBM Macro Assembler manual. Note that judging by the release date in 1969, the development must have started soon after the announcement of the Ryad project, if not earlier.

The question is, has IBM included the source code of at least some of its system software along with the hardware? If so, before 1978, it could be easily considered "public domain", and useless without the hardware, and thus it could given to a friendly Soviet person as a gesture of good will without a second thought.

Or was the source code of the system software already closely guarded by IBM even then, and some industrial espionage would be necessary to obtain it?

(1) There is a logical explanation how it could have happened, according to the career of the main developer of the OS for the BESM-6.

(2) The stable, runnable version of the assembler, available on the programming system disk image, is MAKPO-БEMШ BEP.06/78.

  • It would be a blast if the IBM source code of the Macro Assembler survives, and the parallel text could be found.
    – Leo B.
    Sep 1, 2023 at 4:27
  • 1
    Not sure about the assembler source code,but as a product it was extreme well defined and described. It wouldn't have been as big of a deal to write a close related from scratch. Also, many source codes of the early days were not really guarded but available with machines and/or service documentation. After all, the big unbundling case was not opened until 1969 - before that IBM did not handle software as a business in its own right. Software was meant to sell hardware - or better hardware rental contracts .
    – Raffzahn
    Sep 1, 2023 at 4:35
  • 3
    The Soviets certainly acquired a number of 360 systems. One interesting document is an old CIA report: cia.gov/readingroom/docs/DOC_0000309585.pdf
    – Jon Custer
    Sep 1, 2023 at 15:13
  • 2
    OMG. Cute cartoons (New Yorker style) in the middle of a CIA report - see page 4. Sep 1, 2023 at 15:26
  • 1
    Bullet point #45 from that report turned out to be a perfectly accurate prediction
    – DmytroL
    Sep 5, 2023 at 19:49


You must log in to answer this question.

Browse other questions tagged .