Elea 9003
Earlier solid state big Computers (1960)
Programma 101
Programma 101 (1965)
to Apple II (1977)
Horizon 4 OCN
Machine Tool and Automation Software
1977 Byte Cover december.jpg
Download docs
Programma 101 Simulator
Virtual Programma 101 Simulator

Marco Galeotti Schultze: some facets of italian ICT and Automation story

Marco Galeotti Schultze

I did enjoy my participation to the Italy Computing and Automation Software development from 1960 to 2010, first as an Olivetti engineer and then as a software house chief scientist. So my story is a statement of an impetuous smart period of italian industry

  Le mie passioni...

From giant computers to mini and desktop machines

Manufaturers of giant computers, like IBM, Univac in USA, Ferranti in UK, Bull in France, Olivetti in Italy, did dominate the market until the late 60', but all together they had installed may be a few thousands systems in the whole World. In the 70' firms such as Digital Equipment and Data General invented the mini-computers, which were sold in much bigger numbers and did drive the market till the end of the 70', when a new revolution started with the advent of micro-computers based on single chip CPU's such as Apple II and IBM PC.
But in this story there is an extraordinary exception: the Programma 101 Olivetti which was presented in 1965, at least 10 to 12 years before an Apple II was announced. The Programma 101 was a "desktop computer", while at the time this definition itself was seen as a joke.
In effect the programma 101 was a true programmable computer able to execute all kind of different goals and to store infinite programs in magnetic cards, and it was actually more powerful than some big computers when complex calculations in floating point were involved.

Elea 9003 pdp 8 1965 Programma 101
Elea 9003 (1960)
Digital PDP11 (1970)
Programma 101 (1965)


PROGRAMMA 101 : a Teaching and Simulation System of a Myth in the Computers History

Programma 101 1965
Programma 101 1965

The PROGRAMMA 101 is considered the first "personal" computer or the first "desktop" computer ever presented in the World. At the time it was presented, 1965, in the New York Business Equipments Exhibition, the concept of "personal computer" was seen as a joke. You have to wait some 12 or 13 years more to see an Apple 2.

Giant computers made by Firms such as IBM, Univac, Ferranti in UK, Olivetti in Italy, were already in use, may be a few thousands in the whole World, mostly in the U.S.A., and they were installed in big Industries, Government Agencies, military Offices, some Universities, and few others places. Computers were so big as to fullfill a flat, requiring a lot of electric power, air conditioning, lot of specialized technicians.
Even the so-called mini-computers had to wait some Years before their appearence on the market, in late 60ies, not to mention personal computers such as Apple II and IBM PC for which You had to wait till late 70's.

Elea 9003 1960
Olivetti ELEA 9003 (1960)

Very few persons had access to Computers in those years, for technical and security reasons and mainly because of their cost, as a single minute of data processing was so expensive that only very important needs justified their usage. At that time most office works were done manually in offices with tens or even hundreds employees equipped with their mechanical calculating machines and typewriters.

The Programma 101 erupted in this panorama as a meteorite: it was ahead of its time by at least 10 Years. It was a true, general purpose Computer, low cost, easily programmable. You must remenber that at the time integrated processing units (CPU on one single chip) were not available so the processing logic required many boards. To reduce the cost of memories a delay line was chosen, a solution used before on some big computer in the 50's The computation logic hardware included a full set of floating point mathematical operations, note that at the time the same oparations in big computers required many tens of Kylobytes of software subroutines.
So the Programma 101 in some cases was in practice not only much easier and cheaper but also more powerful than big computers

delay line p101
Delay line memory

With the standard of today someone could look at the Programma 101 as to a toy, in theory a stupid Mobile Phone is 1000 times more powerful inside, but consider that a smart Phone spends its power in doing only fashion goals attractive for young People such as handling photos, music, messages, etc. but it's unable to accept input data, to process them as required, to do complex computations, to produce useful written output. There is still a gap among a Phone and a general purpose computer, even so old and small as the Programma 101 is.

p 101 prototipo_b
Programma 101 prototype 1964

The Programma 101 was a true computer able to accomplish thousand different goals depending on the different programs put inside.It was able to do complex calculation, to make logical choices to process data in alternative ways depending on intermediate results, to save programs and data in magnetic memories, to print intermediate and final results in paper roll. In practice the Programma 102 had all the capabilities of big computers except for the small amount of storable data, but note that it was possible to chain a sequence of many program cards so to build longer programs.

P101_manuali
Programma 101 handbook set 1965

IBM and Univac machines delivery was in the order of Years, they had to be installed in specially prepared sites, with specific High Voltage supply and Air conditioning, and they required high level Technicians for maintenance and programming purposes. On the contrary the Programma 101 could be put on a desk in any office, connected to the Power and it was ready to run. Fantastic!

Programma 101 did play an important role even at NASA, not only as a powerful computing tool on Nasa engineers desks, it seems also as an easy to use low weight computer on board of space missions.

p101_nasa4
Programma 101 at NASA
p101_nasa1
Power on NASA engineer desk


(Interview to Davis W.Whittle, member of Apollo 11 flight, Oral History Transcript by Sandra Johnson, Houston, Texas, 16 February 2006)

………………………………
JOHNSON: Are there any other memories of Apollo 11 that you'd like to share, as far as the systems that you worked on specifically, or the flight itself?

WHITTLE: No, everything that we had worked great. We had no problems. A lot of that stuff is in the detail. A lot of it is looking at data. A lot of it, it's searching through the stuff, plotting trends. Where today the Control Center plots all that stuff for you, we had graph paper. We were plotting that stuff manually. We didn't have computers that did stuff like that.

By Apollo 11, we had a desktop computer, sort of, kind of, called an Olivetti Programma 101. It was kind of a supercalculator. It was probably a foot and a half square, and about maybe eight inches tall. It would add, subtract, multiply, and divide, but it would remember a sequence of these things, and it would record that sequence on a magnetic card, a magnetic strip that was about a foot long and two inches wide.

So you could write a sequence, a programming sequence, and load it in there, and then if you would-the Lunar Module high-gain antenna was not very smart. It didn't know where Earth was. So you would have to call up and give the astronauts some-we had two knobs, a pitch and yaw knob, but you have to give him some angles to put it at. Then once the antenna found the Earth's signal, it would track it, and then you didn't have to worry. But it had to get within a certain range before it would grab it and track it.

We would have to run four separate programs on this Programma 101, and then in between those programs, we'd have to get out our manuals. I don't know if you know what a CRC [Standard Mathematical Tables and Formulae] Manual is, but we'd have to look up trigonometric functions and input the data, which today your calculator does that.
………………………………


The Programma 101 cost was at the time 3200 $, against 25-30.000 $ of minicomputers like the Pdp8 or 20 times more of big Computers. It did not require any air conditioning, nor special Site or special Electric Supply. It could be placed in every Desk, like an adding machine, and was easy to be programmed by most Teachers, Engineers, technical Employees who were able to write their own programs tailored to their specific needs. the Programma 101 was adopted with excitement by all kind of users, from NASA engineers to medical teams in hospitals.

p101_ospedale
Programma 101 in support of medical teams

The Programma 101 had been a surprise even inside Olivetti, in Italy. Its design was started in 1962 at the Olivetti Electronic Lab near Milan, Italy, by a small group of people led by the visionary genius Giorgio Perotto, other key menbers were Giovanni De Sandre and Gastone Garziera. The group moved to Ivrea, the main site of Olivetti, but was rather ignored by the company management still focused on mechanical products, manufactured and sold worldwide in big numbers.

In 1965 the Programma 101 was presented to north-american customers in the New York Business Exhibition, the BEMA Show, as a secondary product, in an Olivetti Boot which was full of mechanical calculators and typewriting machines. But the BEMA visitors soon discovered the Programma 101, rumors attracted lot of interested people, in a couple of days the machine became the true star of the Olivetti Boot and of the exhibition.

Some visitors didn't believe to their eyes and they looked beside the stand expecting some tricky connection to a big computer! The technical Press soon discovered the machine and Engineers, Teachers, Researchers, all technically minded people wanted to buy one.

P 101 stampa usa
Press reactions to Programma 101 at BEMA

The unexpected success of the Programma 101 was so great that Olivetti-Underwood managers didn't believe to their ayes, they realized soon that a new sector was open, but they weren't able to rapidly change their marketing and production plans to fully support the potential sales of the new businness sector.

      
P101 italia pubblicita
Advertising in Italy
P101 Usa pubblicita
Advertising in USA

In four Years Olivetti was able to manufacture only 40.000 Programma 101, against a potential market request ten times larger, in the U.S.A. and outside. It is likely that at that time the Programma 101 alone represented nevertheless the majority of the full computers market worldwide.
Other Firms quickly realized the potential market dimension and in few Years many machines with comparable capabilities were introduced, from U.S. and Japanese Firms. Their bigger manufacturing capacity together with the Olivetti apparent low interest for the field caused Olivetti to lose the leadership in this specific field in a few Years.
In addition few Years later the electronic field was turned upside down by the new integrated chips which made possible to assemble complex circuits with few components.
It is worthwhile to remember that Hewlett Packard exploited some technical ideas taken from the Programma 101. Few Years later HP acknowledged the infringement of Olivetti Rights and did pay to Olivetti 900.000 $.

In the following Years Olivetti was nevertheless able to exploit its experience in the data processing and electronic equipment manufacturing by designing, producing and selling world-wide personal computers such as the M20, based on the Zilog Z8000, and the M24, based on the Intel 8086, in collaboration with Bell.

History Channel has produced a smart movie on the Programma 101 story. You can download it from    "Programma 101 story"

programma 101_c


PROGRAMMA 101 : a Teaching and Simulation System

The Programma 101 is a wonderful machine, designed by G.Bellini, a famous Italian designer at the time. Its compact shape hides many advanced technical components merged in an elegant chassis. Inside are hidden all electronic circuits cards and power supply. Outside there is the elegant Keyboard, the slot to read or write the magnetic cards holding programs and data, the roll paper printer, a few lights and control commands.

How to simulate a Programma 101? You can choose to replicate its cover or its keyboard, I preferred instead to simulate at best all the Programma 101 functions and capabilities but without any attempt to replicate its ergonomics. After all You can't insert a card in a simulator nor You are interested in printing a source program in a paper roll, You are willing instead to store and recall programs as files stored in the Hard Disk of the guest Computer. I think it would be more important to safeguard the "flavour" of the machine, I hope I kept it.

I decided then to follow these design guidelines:

  • Use symbols available on the standard set of characters in rather all Keyboards, so to allow printing of programs listings as standard text printouts

  • Make possible saving programs as standard computer files, editable also with any text editor

  • Make as easy as possible to enter P101 programs through a dedicated panel in order to both avoid typing errors and have a memo of all instructions available.

  • Make possible to execute programs in simulated way both continuously and step by step

  • In step by step mode visualize the step in execution and the contents of registers involved

  • Execute mathematics with the same rules of rounding and cutting extra decimal figures as those used by the Programma 101



The Programma 101 Simulator is fully contained in this single screen

the Simulator screen


The Teaching and Simulation System is made by 3 separate Panels (sections of Screen), each Panel has a specific function but they are integrated in such a way as to allow an easy switching among them. The Panels are:

       The Files Editor to load/store programs to and to handle programs files

       The Program Editor to enter and edit program instructions in a controlled way

       The Exec Simulator to run (to execute) P101 programs

Panel 1: the Files Editor Panel loads and stores P101 programs on the external memory of the Simulator (Hard Disk of the Host Computer). This Panel is actually a File Editor, it shows a window of the loaded Program listing and some Command Buttons for the editing functions.

Files Editor Panel to load-save-edit program files
P101 Files Editor


Panel 2: the Program Editor Panel allows to write new programs as sequences of instructions, entered step by step. This Panel contains a set of Command Buttons, with different colours, light green for the data register and light rose for the operation to do. Most instructions are made by a couple Operand-Operation, someones by Operation only, Jumps and Labels do use Operands and Operations to specify jumps source and destination. An optional Comment may be attached to every instruction.

Program Editor Panel to enter program instructions
P101 Program Editor


Panel 3: the Exec Simulator Panel commands the programs execution (running). The loaded or entered programs are started by pushing one of the addresses keys V W Y Z. Programs can run both in continuous Mode and in Single Step Mode, instruction by instruction, so to visualize the effect of the execution of each single instruction on the data registers.

Exec Simulator Panel to run the program and to print results
Prime factors 12345678


The Panels are independent, but in every moment it is possible to switch among the allowed functions. For instance, You can start a program in standard mode, then switch to Single Step Mode, modify one or more program instructions, alter the values of data registers, and then continue the program execution. This allows both an easier set-up or modification of programs and a clearer understanding of how the computation is going on. By following the processing step-by-step it's rather easy to learn the basics of elementary data processing. In any moment You can check an intermediate result, alter a register value, modify-delete-insert an instruction, so to allow the user to pursue a true interactive teaching process. You are invited to write programs, store them in files, recall them, modify in many ways the programs, verify the results, and store again programs and data, until the desired result is reached.

       Let's examine the 3 Panels in detail.

Panel 1: the Files Editor Panel allows to load and store P101 programs on the external memory of the Simulator (Hard Disk of the Host Computer). This Panel is actually a File Editor, it shows a window of the loaded Program listing and some Command Buttons for the editing functions.

Files Editor Panel to load-save-edit program files
P101 Files Editor

(most Button Commands are self explanatory)

    Clear All
Clears all data in this Panel, included the program present (if any) It clears also all data registers in the Exec Panel (Panel 3)
    Load Program
loads the program with the given name and shows its listing. If no name is specified a list of the available programs is shown and one of them may be selected
    Save Program
Saves the program present in the listing, with the name specified
    Load and Convert alternate format program
Loads programs written according to the Amsterdam Simulator format. Converted programs may then be saved in standard format
    Encode Number
Codes a numeric constant put in the box as a sequence of P101 instructions added to the listing
    Auto comment Switch
Switches on/off the appearance of automatic comments of instructions in the listing (except if an inserted manual comment is already present)
    Clear Step
Deletes an instruction from the listing
    Insert Step
Creates an empty line in the listing, before the current step (i.e. the instruction where the cursor is set) in order to allow the insertion of a new step (using Panel 2)
    Review Forward
Moves the cursor one step forward on the listing
    Review Backward
Moves the cursor one step backward in the listing

The cursor may be moved up or down also with the Mouse. The instruction where the cursor is set is also shown in Panel 2 and may be directly modified with no need to make use of clear and insert.

Panel 2: the Program Editor Panel allows to enter new programs as a sequence of instructions, entered step by step. This Panel contains a set of Command Buttons, with different colours, ligth green for the data register and ligth rose for the operation to do. Most instructions are made by a couple Operand-Operation, someones by Operation only, Jumps and Labels do use Operands and Operations as Prefixes-Suffixes to specify the coupling jump-to-label only. An optional Comment may be attached to any instruction.

Program Editor Panel to enter program instructions
P101 Program Editor

The Program Editor Panel is the main tool to enter single instructions (steps) in the programming window and to compose a program step by step. In the upper left corner of the panel there are the boxes hosting the elements of the instructions, most important are the two boxes named Operand and Operation. Most Programma 101 instructions are made by one Operand and one Operator. The Operand indicates usually a Register while the Operator indicates an operation to execute

Examples of moving and arithmetic instructions

   B   >A   instructs the Programma 101 to move a number from register B to accumulator A
   F/   <M   instructs the Programma 101 to move a number from Memory M to register F/
   C/   +    instructs the Programma 101 to add the register C/ to the Accumulator
   D/   ><    instructs the Programma 101 to exchange the contents between the register D/ and the Accumulator

(If the operand is M it can be missed, so M >A is equivalent to operation >A alone)

Some instructions are made by operation alone (operand is left empty)

   A><   instructs the Programma 101 to put in accumulator A the absolute value of A
   / ><   instructs the Programma 101 to put in M the decimal part of A
   / #      print an empty line
    S       stops the program execution so to allow entering a number to be processed

In Label and Jump instructions the meaning of Operand and Operator is different

   A   V    is the destination label of the jump V (or M V)
   E/  W   is the destination label of the conditional jump D/ W


To enter the program steps You key usually an 'Operand' and an 'Operator' in order to define a typical instruction made by two items. There are also nstructions made by the Operator alone (i.e. S, start/stop). To all instructions a comment may be appended to better explain the program logical meaning. An instruction can be made also by a comment only.

Panel 3: the Exec Simulator Panel commands the programs execution (running). Programs loaded or entered manually are started by pushing one of the addresses keys V W Y Z. Programs can run both in continuous Mode and in Single Step Mode, instruction by instruction, so to visualize in the data registers the effect of executing every single instruction.

Exec Simulator Panel to run the program and to print results
Prime factors 1133557



The Exec Panel commands the execution of the program loaded or entered. The execution is started by pushing one of the four jump keys V W Y Z (at the left of the panel), the Simulator search inside the 101 program for the corresponding label instruction and from that point on it executes instruction after instruction until an "S" (start/stop) intruction is reached.

When the Simulator encounters an "S" instruction it stops and it wait for an action to be done by the user, such as entering a number and then pushing again the S key or as pushing one of the starting keys V W Y Z, if the user wants to run again the same program section, or an other one beginning with an other starting label key.

In any moment you can stop the program, browse intructions, modify/add/erase instructions and then restart the execution, until you are satisfied of the results.
In order to make easier the program testing and modification it is possible to execute the P101 program instruction by instruction, step-by-step. To do so you can push the Single Step Mode key. From that moment you can check the effect of executing each single instruction on the contents of the working register A M R and of the ten data registers B B/ C C/ D D/ E E/ F F/

When operating in Single Step Mode it is even allowed to modify the content of the registers, so to allow checking the program behaviour with other values, as well as to change the sequence of the instructions executed, by forcing the Program cursor in the Program Window to move to a different instruction (but beware, effects can be dangerous)



For a short Guide to Programma 101 You can download    "programma 101 quick guide english.pdf"

For a full Programma 101 Manual You can download    "programma 101 programming and user manual english.pdf"

You can download also a huge collection of Programma 101 programs    "Biblioteca programmi - Programma 101 - Volume 1 (Olivetti).pdf"


       Loading and running a program

If the program has been already developed and stored as a file it can be loaded and launched in execution by its starting Key (V W Y Z). In the example a program was loaded and is shown in the Program Listing window to allow it's easy reading and modification if necessary.

P101 Files Editor


       Some sample programs do follow

The listing of the FACTORIAL.101 program is shown here. A loop starting with A W and ending with W is executed N times, each time decreasing N by 1 until 0 is reached ad N! is printed. No literal values are used, the constant value 1 is generated inside the program. At the end the parameter @0 00 specifies the number set of decimal figures, in this case 0 ( max is 15).

Factorial_101
Factorial.101


The listing of the program POLYGON_AREA.101 is shown here. The contour of the area is defined by segments i.e. by end points as cartesian coordinates (couples of X, Y). Last point must be equal to the first one. Area is computed this way: for every segment sine and cosine of the angle is computed as well as the distance of the line holding the segment from thr origin, then the segment lenght time the distance/2 gives the area of the triangle, the sign of the area depends on the segment direction (cw/ccw vs. the origin). By repeating the procedure to all segments and summing up all signed areas the total area is computed. The only literal value is the number of decimal figures, in this case 5.

Polygon_area_101
Polygonal_area.101


The full listing of the program SINE_COSINE.101 is shown here. A classic serial sum is used. Sine(N) is computed as N - N^3/3! + N^5/5! - ..and Cosine as 1 - N^2/2! + N^4/4! - ...Literals entered are: 57,2957795131 in register B/ (to convert degrees into radians) , 20 in C/ (# of terms) , 1 in D/ , -1 in F/ , and 10 as decimal figures.

Sine_cosine_101
Sine_Cosine.101


The full listing of the program PRIME_FACTORS.101 is shown here. The program is made by two loops, the inner one starts with N as candidate and checks if the number has a divisor not bigger of its square root, starting with 2, 3, 5, 7, 9, ..and so on (divisors are generated as there is no enaugh memory to store them). If a divisor is found then N is divided by the divisor, the divisor is added to the divisor list, the result of the division is taken as new N and the process repeats. If a new divisor is not found then the process is terminated. At the end all divisors (if any) are listed. If no divisors are listed then N is a prime. The literal values entered with the program are 1 in register 1 (M) and 10 as number of decimal figures (necessary to check if a division has a remaining). Other literal values are generated during the program execution, such as the number 1000000000 that is the upper bound value for numbers to check.

Prime_Factors
Prime_Factors.101

By pushing V and entering a number, in this example 1133557 you get the result in the Virtual Printer window : prime factors are 151-7507

Prime factors 1133557

While after entering 12345678 you get the prime factors 2-2-3-47-14593

Prime factors 12345678


programma 101_c


PROGRAMMA 101: a program step by step

Let's enter a short example program made by few nstructions with some comments. I would recommend to add comments to meaningful instructions (even if an automatic comment feature may be activeted by the Auto Comment Switch, but note that automatic comments are rather generic and merely replicate the Operation Key description)

Sample program

To enter the above program you fill the fields on the left-up corner of the Program Editor panel. In these fields you can enter usually an Operand and an Operator in order to define a typical instruction made by two items. Same instructions are made by the Operator alone (i.e. S, start/stop). A manual comment may be attached to every instruction to better describe the logical meaning of the instruction itself. An instruction may also be made by the manual comment alone.

title

If you enter a comment alone you have to push the key "enter comment step" to store the instruction. If the instruction is made by Operand and Operator or by the Operator alone the mechanism is quite different: when you enter the Operator by pushing one of the Operator keys the instruction is automatically stored and added to the 1010 program. If You wont to modify an instruction already stored You can move the cursor on the Program Listing to the instruction and then You can modify the Operand and the Comment even without modifying the Operator, it is allowed to enter the modified instruction by pushing the "enter comment step".

title2

So the first 3 instructions are comments and they are entered by pressing the "enter comment step"

title3

Instruction 4 is the first true active instruction and is entered by pressing the "A" key and then the "V" key

AVlabel

Instruction 5 is made by the Operator "S" only

S


Instruction 6 is made by the key "B" as Operand followed the key "<M" as Operator. While the program runs it drives the P101 to move the entered number from the memory M to the register B

XtoB

Instruction 7 is made by the Operator "S" alone

S.jpg

Instruction 8 is made by the key "C" as Operand followed the key "<M" as Operator. The instruction drives the P101 to move the entered number from the memory M to the register C

YtoC.jpg


Instruction 9 moves the first operand to the Accumulator

XtoA


Instruction 10 adds the second operand to the accumulator

XplusY

Instruction 11 moves the sum to register D

XpYtoD


Instruction 12 prints an empty line, i.e. new line

NewLine


Instructions 13-14-15 do print Addends and Sum in the Virtual Printer listing

Addends_sum


Instruction 16 causes the program to jump to label V (to begin again)

JumpBegin


The program has been completed and it may be stored with the name "sum.101" by pressing the "save program" key

SampleProg



At this point let's run the P101 program we have just entered

By pressing the start key V the simulator begins the execution and stops at step 5 (instruction S), then it waits for an action taken by the user such as entering a number and pressing S or as pressing a start key

StartStep5


The program waits for a number, let's enter 1500 and press S

enter1500

The program stops again at a second S and waits for a second number, let's enter -350 and press S. The program goes on and computes the sum

enter350

The program prints the entered numbers and the computed sum, then jumps to step 5 and begins again.

samplePrintoutl

Even if this is a very small example it shows the base logic of all P101 programs. You enter some input numbers, the P101 does some computation and prints intermediate results, other computations are done, other results are printed. Most programs make use of conditional jumps to allow selection among many different computations or to repeat more times a sequence of instructions.
To go further You should look at the P101 programs I have listed above, such as N! factorial, prime factors of numbers, area of a polygon, sine and cosine computations, cubic root. Others are downloadable from the many Programma 101 libraries available in the web, where you can find all kind of algorithms for practical applications or theoretical calculations.

programma 101_c

Want to try the Programma 101 Simulator?



If You are interested to old computers and programming systems You will be delighted to experiment with my Programma 101 Simulator. It is not only an advanced full simulation software, it is also a dedicated P101 programs Editor and P101 instructions Reference table.
The P101 Simulator is a compiled Visual Basic program that allows to enter new 101 programs, to edit existing programs already in the .101 sample library, to execute 101 programs in both the normal way and in the step-by-step mode that allows to verify the effects of each single instruction execution on all 101 registers.
With the Simulator you can freely experiment and create your own .101 programs which may be entered with the embedded Program Editor (this is the easiest way) or with any text editor such as Notepad or WordPad, provided the correct indentation is respected.
The Simulator can be downloaded together with a few sample 101 programs ready to run, the reprints of some original Olivetti instruction Manual, a huge Olivetti library of Programma 101 original application programs in many fields.

You may download it easily from "Programma 101 Simulator"

Please unzip the zip file inside one single directory, You will find 2 exec files:

P101_ni_new_10mag2013.exe
VBRUN300.DLL

plus 5 Programma 101 sample apps (in the code format required by the Simulator):

Cubic_root.101
factorial.101
polygon_area.101
Prime_Factors.101
sine_cosine.101

plus 3 Programma 101 original reference manuals as PDF files:

programma101 quick guide english.pdf
programma101 manual english.pdf
Biblioteca programmi - Programma 101 - Volume 1 (Olivetti).pdf

The 101 Simulator runs correctly in all Windows versions from XP to 8.1

For a short Guide to Programma 101 You can download    "programma 101 quick guide english.pdf"

For a full Programma 101 Manual You can download    "programma 101 programming and user manual english.pdf"

You can download also a huge collection of Programma 101 programs    "Biblioteca programmi - Programma 101 - Volume 1 (Olivetti).pdf"

Elea 9003
Earlier solid state big Computers (1960)
Programma 101
Programma 101 (1965)
to Apple II (1977)
Horizon 4 OCN
Machine Tool and Automation Software
1977 Byte Cover december.jpg
Download docs
Programma 101 Simulator
Virtual Programma 101 Simulator

E-mail:   marco@marcogaleotti.com