I wanted to have a program that tests all the RAM on my OSI machines. As I don’t have any machine code skills, and there wasn’t anything available online, I started looking for magazines with type in versions that I could use.
I finally cam across a version written up in the OSI Small Systems Journal, Vol 1, No 3; Sept. 1977, and typed it in. It seems to work very well and I used it to test RAM on all of my machines.
Instructions:
When the Memory Test Program is entered. a ‘?’ appears on the terminal. It then expects a T for (dynamic) Test. an L for Load. or a C for Compare. Your first test should be the dynamic test. Therefore type a T, then a 0400, the starting address of the test, followed by a four-digit ending address or the test. Thus. if you had a 4K machine. you would type T04001000.
On video-based computers. you will then see a two-digit counter increment until it passes through FF, in which case it will place an X on the screen and increment again. The presence or an X indicates that it has successfully passed the test once. On serial systems you will not see anything until an X is printed out or a failure occurs. The Memory Test will take approximately two minutes to test 4K of memory.
The only way to exit a successfully running dynamic memory test is by resetting the computer. If a failure occurs, the test program reverts to the command mode so that additional commands can be typed in. The syntax for the L Command is simply L,SSSS.EEEE.nn. Where nn is the two-digit byte pattern you wish to load. SSSS is the starting address or the memory you wish to load, and EEEE is its ending address. Once the load is complete an asterisk '*' is put out on the screen. This should occur nearly instantaneously. The syntax for a compare command is C SSSS.EEEE.nn. If the compare is successful a '*' is printed on the screen. If not, the first location to fail is printed out with its contents. In all tests, the last location specified is not tested.
PROJECTS AND ARTICLES
Memory test program for OSI machines