Home XaAESXaAES Toolbar support under XaAESToolbar support under XaAES EmulatorsEmulators

13.2 XaAES deprecated functions

The following XaAES functions were only available in early versions and they are now deprecated, including objc_data which is newer but never fully implemented.

Opcodes 250, 253 and 254 are assigned to button_click, shutdown and objc_setscroll but it looks like they were never used.

appl_pipe Get handle of the communication pipe
• button_click No information available
client_exit Close the communication pipe of a client
new_client Open a communication pipe for a new client
• objc_data Get/set data in object trees
• objc_setscroll No information available
rregen Regenerate rectangle list (debug)
• shutdown No information available
wredraw Redraw window (debug)

See also: XaAES

13.2.1 appl_pipe

Name: »Application pipe« - Obtains the application pipe handle.
 
Opcode: 260
 
Syntax: int16_t appl_pipe ( void );
 
Description: The call appl_pipe gets the file handle of the client reply pipe. This value is also available in global[12] after calling appl_init.
 
Note: This function is deprecated. XaAES doesn't rely anymore on pipes to exchange AES messages.
 
Return value: The function returns the file handle of the client reply pipe, or 0 if the pipe is not open.
 
Availability: Up to XaAES v0.963.
 
Group: XaAES functions
 
See also: Binding   client_exit   new_client
 

13.2.1.1 Bindings for appl_pipe

C: int16_t appl_pipe ( void );
 
Binding:
 
int16_t appl_pipe (void)
{
   return ( crys_if(260) );
}
GEM-Arrays:
 

Address Element Contents
control control[0] 260 # Function opcode
control+2 control[1] 0 # Entry in int_in
control+4 control[2] 1 # Entry in int_out
control+6 control[3] 0 # Entry in addr_in
control+8 control[4] 0 # Entry in addr_out
int_out int_out[0] Return value

13.2.2 client_exit

Name: »Client exit« - Unregisters an AES client.
 
Opcode: 252
 
Syntax: void client_exit ( void );
 
Description: The call client_exit closes the client's reply pipe in response to a XA_CLIENT_EXIT message. client_exit releases all resources belonging to the client (windows, pending messages, menu bar, custom desktop...).
 
Applications should NEVER send this message to the XaAES kernel, it is used internally to pass crucial information from the client pid trap handler to the XaAES kernel.
 
The XA_CLIENT_EXIT message is only sent from XaAES itself when a client calls appl_exit.
 
Note: This function is deprecated. XaAES doesn't rely anymore on pipes to exchange AES messages.
 
Return value: The function does not return a value.
 
Availability: Up to XaAES v0.963.
 
Group: XaAES functions
 
See also: Binding   appl_pipe   new_client
 

13.2.2.1 Bindings for client_exit

C: void client_exit ( void );
 
Binding:
 
void client_exit (void)
{
   crys_if(252);
}
GEM-Arrays:
 

Address Element Contents
control control[0] 252 # Function opcode
control+2 control[1] 0 # Entry in int_in
control+4 control[2] 0 # Entry in int_out
control+6 control[3] 0 # Entry in addr_in
control+8 control[4] 0 # Entry in addr_out

13.2.3 new_client

Name: »New client« - Registers a new AES client.
 
Opcode: 251
 
Syntax: void new_client ( void );
 
Description: The call new_client opens the client's communication pipe in response to a XA_NEW_CLIENT message. Applications should NEVER send this message to the XaAES kernel, it is used internally to pass crucial information from the client pid trap handler to the XaAES kernel.
 
The XA_NEW_CLIENT message is only sent from XaAES itself through /pipe/XaAES.cmd when a client calls appl_init. This triggers the creation of a bi-directional command/reply pipe (/pipe/XaClnt.pid, where pid is the process ID) that allows internal communication between the client and the AES server.
 
Note: This function is deprecated. XaAES doesn't rely anymore on pipes to exchange AES messages.
 
Return value: The function does not return a value.
 
Availability: Up to XaAES v0.963.
 
Group: XaAES functions
 
See also: Binding   appl_pipe   client_exit
 

13.2.3.1 Bindings for new_client

C: void new_client ( void );
 
Binding:
 
void new_client (void)
{
   crys_if(251);
}
GEM-Arrays:
 

Address Element Contents
control control[0] 251 # Function opcode
control+2 control[1] 0 # Entry in int_in
control+4 control[2] 0 # Entry in int_out
control+6 control[3] 0 # Entry in addr_in
control+8 control[4] 0 # Entry in addr_out

13.2.4 rregen

Name: »Redraw regenerate« - Regenerates rectangle list for a window.
 
Opcode: 255
 
Syntax: void rregen ( XA_WINDOW *w );
 
Description: The call rregen regenerates the rectangle list for the specified window.
 
w is a pointer to an internal structure that describes the window.
 
Note: This function is for internal use only and allows to call the Rectangle List Generator for debugging purposes. rregen is deprecated.
 
Return value: The function does not return a result.
 
Availability: Up to XaAES v0.920.
 
Group: XaAES functions
 
See also: Binding   wredraw
 

13.2.4.1 Bindings for rregen

C: void rregen ( XA_WINDOW *w );
 
Binding:
 
void rregen (XA_WINDOW *w)
{
   addr_in[0] = w;

   crys_if(255);
}
GEM-Arrays:
 

Address Element Contents
control control[0] 255 # Function opcode
control+2 control[1] 0 # Entry in int_in
control+4 control[2] 0 # Entry in int_out
control+6 control[3] 1 # Entry in addr_in
control+8 control[4] 0 # Entry in addr_out
addr_in addr_in[0] w

13.2.5 wredraw

Name: »Window redraw« - Redraws a window.
 
Opcode: 256
 
Syntax: void wredraw ( XA_WINDOW *w );
 
Description: The call wredraw redraws a window.
 
w specifies a pointer to an internal structure.
 
Note: This function is for internal use only and allows to redraw a whole window by calling a more generic function that takes two extra parameters (a user-defined value for debugging purposes, and a clipping rectangle). wredraw is deprecated.
 
Return value: The function does not return a result.
 
Availability: Up to XaAES v0.920.
 
Group: XaAES functions
 
See also: Binding   rregen
 

13.2.5.1 Bindings for wredraw

C: void wredraw ( XA_WINDOW *w );
 
Binding:
 
void wredraw (XA_WINDOW *w)
{
   addr_in[0] = w;

   crys_if(256);
}
GEM-Arrays:
 

Address Element Contents
control control[0] 256 # Function opcode
control+2 control[1] 0 # Entry in int_in
control+4 control[2] 0 # Entry in int_out
control+6 control[3] 1 # Entry in addr_in
control+8 control[4] 0 # Entry in addr_out
addr_in addr_in[0] w

Home XaAESXaAES Toolbar support under XaAESToolbar support under XaAES EmulatorsEmulators