Telsys Logo
Consulting, design, development of
SCADA and automation systems
® Registered Trade Mark
home mail · Presentation · Activities · Realizations · Hardware · Software · Links · Downloads · Contacts · Affiliate · Italian
Software Museum



Recently I got a request from Dr. Julian Hill an ex student of Dr John Griffiths at the University of Leeds  for the listing of the Apple II version of PPP-MO (Pariser-Parr-Pople Molecular Orbital) a program I did in 1982

The request was in this form: (the more pregnant pass of our conversation are reported)

 Do you still have the program? I am now a school teacher and I teach computing and chemistry. I would like a copy of your program to show my students how powerful Pascal is as a language. We are still using Pascal to teach programming.

I'm happy to ear that there are still some one in the world teaching programming, non only making mess with the current fashion anarchical C! Microsoft docet!

I agree with you. It is important to teach good programming. Pascal is still, I think, the best language for this.

your request gave me an idea: the PPP program can be useful for historical and teaching purpose. I would publish it on my site...
...The main difference between the various versions is on the graphic output management as each compiler had different primitives.

Using the data for Disperse Red 1, I was able to confirm that the new program gave the same results I calculated using the Algol program 20 years ago. This predicts an absorption maximum of 451nm, which is within 2nm of the measured experimental value of 453nm when using cyclohexane as the solvent.
It is fantastic that you have gone to so much effort to recover the code and to make it available for others to use on your web site. I think the only thing left to do is to rewrite the manual. As my very small contribution to this project, I have updated the manual and have provide this as both a Microsoft Word and a PDF document.  I have checked that the input file in the document matches the output results and have supplied these as attachments.

Note: I can't judge the dimension of the Julian Hill contribute. What I can tell for sure is that had been a determinant contribute, as without it this page were never been written and the program listing would have been sleeping in its disk somewhere in my office :-).

I believe it is useful to know what could be done with a 64k and 1 Mhz machine in the days where a 2 Giga 2.4 Mhz machine can be considered old and slow if it isn't a quad processor!

The original program was segmented due the memory limitations and optimized very, very deeply to reach the goal of a 12 hours run for a 20 atoms molecule. The calculations for the same molecule in a today machine terminate before you can take up your sight after pressing the return key (not all people digitize without looking at the keyboard!!) :-).

At the moment I haven't the original Apple II copy of the program, as I have the disk but I have not the Apple II. The available listing were copied from paper and it is not tested!

The copy for Borland Turbo Pascal 3 was what I sent to Julian and at the beginning was wrong, as few lines of code were lost during the several transfers (at that time the serial port transfer were used, the USB key was invented some time later!). With the help of Julian I could test it, as he sent me the manual, the input data and a test run, correct it and be aware of the correctness of the results. So now I can publish it

The manuals available are the original one of the Algol program, the readme file of the Apple II translation and the new revision of the original documentation, modified for the new version of the program made by Julian. It contains a new test run.

At the moment I have not the original version of the plot program. I remember it was implemented using Turtle graphic (available for UCSD pascal on Apple II). I include the translation of it for Turtle graphic of Turbo Pascal 3. I did a new version implemented using the Windows GDI. I didn't used the Windows GUI to keep the dimensions of the program reasonable. The graphic is useful only to test the correctness of input and I don't believe it could not be correct it would use the biggest part of the program size! I did an openGL version of the program (not fully correct) and I may be will do a Windows GUI version, for comparative purposes.


Another program I decided to publish is the lisp implementation of A* algorithm I wrote to search the minimum cost path between two assigned configuration of a molecule. The program was written for Univac 1100 Lisp 1.5.




Department of Colour Chemistry, The University, Leeds LS2 9JT, UK ICI Colours and Fine Chemicals, Hexagon House, Blackley, Manchester M9 3DA, UK

Castellani Giorgio F., Jan C.J. Bart
Color prediction of organic dye molecules on a microcomputer - A readily available form of the PPP-MO method for teaching and research
Dyes Pigm (84) P. 165-70; Vol. 5; No 3;

Griffiths, J. Hill, B Fishwich
The Application of PPP-MO Theory to the halochromism of 4-aminoazobenzene dyes Dyes Pigm. Vol. 15, No. 4, P. 307-317



mailslot.gif To contact, please, e-mail to us at:

© Telsys®, all rights reserved
Last revision on: 8/08/14