1/*
2dnl  This file is part of GNU APL, a free implementation of the
3dnl  ISO/IEC Standard 13751, "Programming Language APL, Extended"
4dnl
5dnl  Copyright (C) 2008-2019  Dr. Jürgen Sauermann
6dnl
7dnl  This program is free software: you can redistribute it and/or modify
8dnl  it under the terms of the GNU General Public License as published by
9dnl  the Free Software Foundation, either version 3 of the License, or
10dnl  (at your option) any later version.
11dnl
12dnl  This program is distributed in the hope that it will be useful,
13dnl  but WITHOUT ANY WARRANTY; without even the implied warranty of
14dnl  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15dnl  GNU General Public License for more details.
16dnl
17dnl  You should have received a copy of the GNU General Public License
18dnl  along with this program.  If not, see <http://www.gnu.org/licenses/>.
19*/
20
21
22/// APserver request: ⎕SVO
23m4_signal(MAKE_OFFER,       x64,    key)
24/// APserver request: ⎕SVR
25m4_signal(RETRACT_OFFER,    x64,    key)
26/// APserver request: ⎕SVR
27m4_signal(RETRACT_VAR,      x64,    key)
28
29/// APserver request: set state of shared var \b key
30m4_signal(SET_STATE,        x64,    key,
31                            u8,     new_state,
32                            string, sloc)
33
34/// APserver request: set control of shared var \b key
35m4_signal(SET_CONTROL,      x64,    key,
36                            u8,     new_control)
37
38/// APserver request: X←SVAR
39m4_signal(GET_VALUE,        x64,    key)
40
41/// APserver result for: X←SVAR
42m4_signal(VALUE_IS,         x64,    key,
43                            u32,    error,
44                            string, error_loc,
45                            string, cdr_value)
46
47/// APserver request: SVAR←X
48m4_signal(ASSIGN_VALUE,     x64,    key,
49                            string, cdr_value)
50/// APserver result for: SVAR←X
51m4_signal(SVAR_ASSIGNED,    x64,    key,
52                            u32,    error,
53                            string, error_loc)
54
55/// APserver request: Can svar key be referenced ?
56m4_signal(MAY_USE,          x64,    key,
57                            i32,    attempt)
58
59/// APserver request: Can svar key be assigned ?
60m4_signal(MAY_SET,          x64,    key,
61                            i32,    attempt)
62
63/// APserver request: read SVAR database record from APserver
64///
65///		apl/APnnn	--> READ_SVAR_RECORD		APserver
66///				<-- SVAR_RECORD_IS
67///
68m4_signal(READ_SVAR_RECORD,     x64,    key)
69/// APserver result (record) for: read SVAR database record from APserver
70m4_signal(SVAR_RECORD_IS,       string, record)
71
72/// APserver request: is ID registered ?
73m4_signal(IS_REGISTERED_ID,	u32,    proc,
74				u32,    parent,
75				u32,    grand)
76
77/// APserver result: yes (1) or no (0)
78m4_signal(YES_NO,	        u8,    yes)
79
80/// APserver request: register processor proc in APserver
81m4_signal(REGISTER_PROCESSOR,	u32,    proc,
82				u32,    parent,
83				u32,    grand,
84				u8,     evconn,
85				string, progname)
86
87/// APserver request: match offered shared variable or make a new offer
88m4_signal(MATCH_OR_MAKE,        string, varname,
89                                u32,    to_proc,
90                                u32,    to_parent,
91                                u32,    to_grand,
92                                u32,    from_proc,
93                                u32,    from_parent,
94                                u32,    from_grand)
95
96/// APserver result for: match or make
97m4_signal(MATCH_OR_MAKE_RESULT, x64,    key)
98
99
100/// APserver request: find processor ID that offers \b key
101m4_signal(FIND_OFFERING_ID,     x64,    key)
102
103/// APserver result for: find processor ID that offers \b key
104m4_signal(OFFERING_ID_IS,       u32,    proc,
105                                u32,    parent,
106                                u32,    grand)
107
108/// APserver request: get offering processors  (⎕SVQ)
109m4_signal(GET_OFFERING_PROCS,   u32,    offered_to_proc)
110
111/// APserver result for: get offering processors  (⎕SVQ)
112m4_signal(OFFERING_PROCS_ARE,   string, offering_procs)
113
114/// APserver request: get offered variables  (⎕SVQ)
115m4_signal(GET_OFFERED_VARS,     u32,    offered_to_proc,
116                                u32,    accepted_by_proc)
117
118/// APserver result for: get offered variables  (⎕SVQ)
119m4_signal(OFFERED_VARS_ARE,     string, offered_vars)
120
121/// APserver request: find pairing key (CTL vs. DAT or Cnnn vs. Dnnn) for AP210
122m4_signal(FIND_PAIRING_KEY,	x64,    key)
123
124/// APserver result for: find pairing key
125m4_signal(PAIRING_KEY_IS,	x64,    pairing_key)
126
127/// APserver result for: find pairing key (CTL vs. DAT or Cnnn vs. Dnnn) for AP210
128/// get events for one processor (first shared var with an event)
129m4_signal(GET_EVENTS,           u32,    proc,
130                                u32,    parent,
131                                u32,    grand)
132
133/// APserver request: clear all events for one processor
134m4_signal(CLEAR_ALL_EVENTS,     u32,    proc,
135                                u32,    parent,
136                                u32,    grand)
137
138
139/// APserver result for: clear all events for one processor (first cleared svar
140m4_signal(EVENTS_ARE,           x64,    key,
141                                u32,    events)
142
143/// APserver request: add an event for \b key
144m4_signal(ADD_EVENT,	        x64,    key,
145				u32,    proc,
146                                u32,    parent,
147                                u32,    grand,
148				u32,    event)
149
150/// APserver request: ws-ws SVAR←X
151m4_signal(ASSIGN_WSWS_VAR,	x64,    key,
152                                string, cdr_value)
153/// APserver request: X←ws-ws SVAR
154m4_signal(READ_WSWS_VAR,	x64,    key)
155/// APserver result for: X←ws-ws SVAR
156m4_signal(WSWS_VALUE_IS,	string, cdr_value)
157
158/// APserver request: print the entire database (for command ]SVARS)
159m4_signal(PRINT_SVAR_DB)
160/// APserver result for: print the entire database
161m4_signal(SVAR_DB_PRINTED,      string, printout)
162
163