As a preparation for a multi-threaded NDB kernel it is necessary to move the jam data area from its current global data area. A good idea is to put it into the signal object since that is passed around in more or less all methods in the kernel. This also means that the signal object must be used for printing the jam and of course updating the macro's and adding the signal object in all methods where it currently is not around. Originally an idea from Monty. --- Jonas 25/3 Since there is going to be a lot of thread specific data it's probably better to use a different storage than the signal object. (even if it's will be thread specific). BTW: Why don't let the one implementing 1498 decide.