|
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure SHVBLOCK Control BLocks for accessing shared variables
0000 0 Address 4 SHVNEXT (+0) CHAIN POINTER (0 IF LAST)
0004 4 Address 4 SHVUSER (+4) NOT USED, AVAILABLE FOR
PRIVATE use EXCEPT DURING 'FETCH
NEXT'
0008 8 Character 1 SHVCODE (+8) INDIVIDUAL FUNCTION CODE
0009 9 Bitstring 1 SHVRET (+9) INDIVIDUAL RETURN CODE FLAG
000A 10 Signed 2 * RESERVED, SHOULD BE ZERO
000C 12 Signed 4 SHVBUFL (+12) LENGTH OF 'FETCH' VALUE
BUFFER
0010 16 Address 4 SHVNAMA (+16) ADDR OF PUBLIC VARIABLE
NAME
0014 20 Signed 4 SHVNAML (+20) LENGTH OF PUBLIC VARIABLE
NAME
0018 24 Address 4 SHVVALA (+24) ADDR OF VALUE BUFFER (0 IF
NONE)
001C 28 Signed 4 SHVVALL (+28) LENGTH OF VALUE (SET BY
'FETCH')
00000020 SHVBLEN *-SHVBLOCK (LENGTH OF THIS BLOCK
= 32)
FUNCTION CODES (SHVCODE):
000000C6 SHVFETCH C'F' COPY VALUE OF SHARED VAR TO
BUFFER
000000E2 SHVSTORE C'S' STORE GIVEN VALUE IN SHARED
VARIABLE The following function
codes only apply to the System
Product Interpreter.
(Note that the symbolic name codes are lowercase)
000000C4 SHVDROPV C'D' DROP VARIABLE
1... .11. SHVSYFET X'86' =C'f' SYMBOLIC NAME FETCH
VARIABLE
1.1. ..1. SHVSYSET X'A2' =C's' SYMBOLIC NAME SET
VARIABLE
1... .1.. SHVSYDRO X'84' =C'd' SYMBOLIC NAME DROP
VARIABLE
000000D5 SHVNEXTV C'N' FETCH 'NEXT' VARIABLE
000000D7 SHVPRIV C'P' FETCH PRIVATE INFORMATION
RETURN CODE FLAGS (SHVRET):
.... .... SHVCLEAN X'00' EXECUTION WAS OK
.... ...1 SHVNEWV X'01' VARIABLE DID NOT EXIST (SP
interpreter only)
.... ..1. SHVLVAR X'02' LAST VARIABLE TRANSFERRED
(FOR N)
.... .1.. SHVTRUNC X'04' TRUNCATION OCCURRED FOR
'FETCH'
.... 1... SHVBADN X'08' INVALID VARIABLE NAME
...1 .... SHVBADV X'10' INVALID VARIABLE VALUE,
e.g. too long (EXEC 2 ONLY).
1... .... SHVBADF X'80' INVALID FUNCTION CODE
(SHVCODE)
| |