JCF(0;SB,M,E==>c;JC) - Journalizer Creator Factory.
E is an error gate which is called during journal replay if the checksum of the data passed out of the journalized regime does not match the checksum saved during the original run. The call is E(hash,data==>rc) where hash is the old hash and data is the new data. If rc is 0 then the error will be ignored and replay will continue. If rc is 1 then replay will be immediately terminated. Any other rc will cause the replay domain to crash for diagnosis.
If c <> 0 - LOOSE END (it didn't work)
{arcane}Known bug: The journal creator may crash if you try to use it too soon (within two checkpoints of creating it). It should take two checkpoints before returning.
JC(0,gate-description;G==>c;GPRIME) - Journal Creator
LIMITATIONS:
Any calls to GPRIME with an order code of KT+1 will be ignored.
1 = Co-routine protocol return key. (passed to GPRIME)
2 = Stream protocol return key. (passed to GPRIME)
128 = Entry key protocol. (received from GPRIME)
129 = Co-routine protocol return key. (received from GPRIME)
130 = Stream protocol return key. (received from GPRIME)
"Club" describes groups of keys that have the property that when one key in the group is destroyed then all other keys in the same group are also destroyed. Terminal keys are an example of keys that should be in the same club. All keys with the same club number will be treated as being destroyed together.
"Max-length" is the maximum length string that will be either sent or received from the gate. It is used for storage allocation in the journalizer.
"Destroy" is an additional order code that causes destruction of the associated object. The journalizer assumes that if order code kt+4 is passed to a gate, or a code of kt+1 is either passed or received back, then the key has been destroyed. If the key accepts only kt+4 as an order to destroy itself, then destroy may be set to kt+4.