I have been in contact with Kristof and he reminded me of one fact which I did not mention clearly.
The calibration he does using the ZeroRef can only compensate correctly ONE dimension of drift at one time. The drift of vectors can be in X and Y direction. And there is no guarantee (it is actually very unlikely to happen) that both drifts are exactly the same.
But why am I telling you that – here the words of Kristof:
I also wanted to add something to one of our latest conversations regarding the integrators 0-offset calibration.
My opinion is that this way of 0-offset calibration is already an improvement, but in practice, it is not a 100% perfect solution to eliminate all drawing drifts.
The reason is simple: in practice, both Y and X integrator-opamps have a sligthly different offset. Not only by the subtle differences on the silicon (even if they are located in the same I.C. (IC303), but also because they have a seperate adjustment circuitry (potentiometer R333 for the Y-integrator vs. R335 for the X-integrator).
So, as we might conclude out of this, both integrators have a very small, but present, difference in offset value. This subtle difference varies from specimen to specimen.
I think that during the production process, they really tried to adjust the offset difference to a minimum, but we are 35 years later and you can also imagine what such a long period of time and temperature variations might have done with the potentiometers.
The vector patrol calibrated compensating value (what we do by the RC-curbe generation), offered on the + input of both integrators is common for both opamps.
This means we can only reduce the offset of one integrator perfectly to 0. Either the Y or X integrator.
As example, lets take a look at the Vector patrol calibration screen:
The “2 pairs of horizontal lines”: In fact, I draw in fact a square where the vertical lines are off. This is repeated +- 10 times. So I draw the rectangular 10 times over itself.
In an ideal world, we would simply see 2 horizontal lines whose width is the same as the height of the hidden vertical lines (just what a square would be). Take a look at this picture:
However, in the real world and as explained above, what most Vectrex-units display are a set of horizontal lines that, when aligned properly on the Y-level, they are shifted slightly horizontally.
This means that the square has become a kind of trapezium. The reason is simple: because we have compensated the Y-component offset properly to zero, chances are very likely that the X-component offset is not 0, it could be positive or negative. This results in a horizontal shifting thereby rendering a trapezium instead of a square. Take a look at the next (exagerated) picture where we presume that there is still a positive X-drift. We repeat the square drawing only 3 times in this case:
OK, knowing this, the choice must be made which component (Y or X) is the most important. During Vector Patrol, I concluded that the Y-compensation is the most important to have nice vertically aligned graphics.
So, one has to take into account, that in that case the X-component might still be subject of drift.
Knowing that, you might design your vector lists in such a way that the horizontal drift can get “buried” by for example 2 overlapping horizontal lines.
In the simple example of drawing the above mentioned square (bad example, because there is no significant drift when we draw 4 vector lines, but anyway), it would be better not to start at the left bottom corner of the square to draw lines. Instead it would be better to start drawing in the middle of the bottom horizontal row and finally arrive there again: (take a look at the below picture: we start at the bottom line in the middle and end there again (the light red line).
We would render hereby maybe a rectangular or a trapezium, but the image will be closed properly. Again, this is a bad example.
Or take a look at the space1999-eagle where at the end of the drawing the “belly” lines are touching the front landing gear. On some Vectrex-units, the belly line falls inside the front-landing gear, while on other Vectrex-units, the belly line nearly “touches” the landing gear. So, these are all tricks that have to be taken into account.
Please note that there is still a chance in real world that a Vectrex has a perfect offset. Very limited chance though.
Have a nice day!