In order for this site to work correctly, and for us to improve the site, we need to store a small file (called a cookie) on your computer.
By continuing to use this website, you agree to our cookies and privacy policy.
Home page Home page Home page Home page
Pixel Header R1 C1 Pixel
Pixel Header R2 C1 Pixel
Pixel Header R3 C1 Pixel

A RevTechie Replies - And Miscellaneous Jottings - Mike Pope - Revelation Technologies (UK) Ltd

(In fairness to Mike and his wonderful grasp of English I should point out that this is paraphrased from a number of his letters unless explicitly quoted - AMcA)

"David Sigafoos called me up with a weird weird problem about locking and reading. It seems that the READ statement is happy enough to get a key with value marks in it, however bad an idea that might be in real life. The LOCK statement, on the other hand, is more 'intelligent', and like OCONV treats such a key as a list of keys, duly locking each one individually.... This is an anomaly in what you would otherwise expect to be parallel statements".

AMcA - Note that if one of the locks in such a LOCK statement fails, no error flag is set and the THEN clause executes. Note further that if you keep getting messages about an index node missing regardless of how many times you rebuild your indexes, the problem might be a value mark in one or more record keys.

Ever had the experience that when you bring up some object code in the editor, you get the "Changes..." message when you want out? Seems that SCRIBE strips trailing delimiters (any system delimiter that is) as a defence against [Enter] happy users. At the moment there is no way around this. On another point, do your readers understand that the symbol table is only used by the debugger? Within a program, variables are referenced by offset within the descriptor table.

Volume 3 Issue 8


This routine is precisely as you note. It is a bonding related routine called from the OS-file bonds. The arguments are (properly) labelled CODE, BFS, NAME and STATUS, all obviously, out of the BFS args.


I don't know if you are aware of it but you are providing a fix for the sample code in TB57 which does indeed try to @CRTHIGH -= 3. (Hal Wyman explains that this strange behaviour is because "some of the @Variables are SysCom variables, which are compiled normally. Others are actually values stored in the engine itself and assignments to them are a special case, since there are no descriptors for them. Other engine variables are @Printmode and @Pdisk.On. They are stored in the engine because they are needed by the print routines within the engine").

Interrupt-proof error messages

"If I don't want users to go anywhere while I've got them captive in a message, I use RCI as the type, which causes MSG to use the INPUT statement, not INPUT.CHAR. To suppress display you can then do an ECHO OFF."

Break-On Discussion

"All this zero-length stuff introduces the problem of an offset average and total, both of which forget to forget about the inter-column space that isn't when you have a zero-length field. Ergo, offset by one. No fix at the moment other than genning code."

(Volume 3, Issue 10, Page 6)
Pixel Footer R1 C1 Pixel