Record of Design Decisions

Specification

The EDSAC Simulator will run programs written for the May 1949 EDSAC, reading them from disk through a simulated punch card reader, and producing ouput similar to that seen on the EDSAC CRT display and teleprinter. The project will be considered succesful when these targets are met, however at that point additional targets - the simulation of later EDSAC versions - may be set.

The EDSAC Simulator will be constructed from Java classes, with a general design philosophy that the answer to the question "How do we do this?" and "How does the EDSAC do this?" should be the same.

The structure of the program will be arranged somewhat along the following lines (increasing indent representing instantiation of objects):

The classes named above, apart from 'boolean', will all form part of the project.

It has been decided to initially simulate the first model of the EDSAC, for sake of simplicity. However the difference between the first two versions of the EDSAC is only a change in the initial orders (the memory state on power on) so the second version will be very easy to simulate also. Additional features in later EDSACs may be added later.

Where possible intelligent objects will be used rather than coding operations at a higher level. For example, the ShortWord class mentioned above will provide such methods as ShortWord.add(ShortWord sw) for arithmetic operations. This is considered to make revisions easier and to produce more readable code.

Back to index