On basic setup the program memory ("Programm-Matrix") consists of up to 10 expansion cards ("Programmleiterplatten" = "program printed circuit boards"). The cards are inserted in slots according to the program address. On a single card 10 sequential instructions are defined by diode matrix. In this way the "ROM" was put together cell by cell; the method is somehow similar to the use of punch cards.
The programmer coded (here the expression becomes genuine) the instructions by soldering diodes into the matrix. An instruction is put together out of 32 diode bits. The great word length arises from the circumstance that the three numeric constants X, Y, and Z must be defined for each instruction. Surely a modern marketing department would call EDDA 3 a "32 bit computer". Assembler or even compilers did not exist, only auxiliary labels on the diode boards.
(In the photo, you see a paper label: "Bef. 070-079 EDDA3 Platz 10" means: "instructions 070 to 079 of an EDDA 3, to be placed in program slot 10")
The basic memory size is 100 instructions, addressed by the program counter ("Befehls-Nr." = "instruction number") in data address 50. Expansion racks with more cards allow up to 1000 instructions; they are switched by writing to segment registers on data address 51.
Some program addresses have special functions:
Address |
Function |
00 |
Start address, first instruction executed |
01 |
Error exception, contains jump to error handling |
02 .. 98 |
regular program instructions |
99 |
last instruction on a memory bank, next instruction is 00 on the same memory bank |