/* Prototypes for functions defined in
amiga_rexx.c
 */

extern void * __far handle;

extern int amiga_arexx_initialized;

extern struct LispRexxList pending;

extern struct LispRexxList returned;

extern struct LispRexxList incoming;

int alloc_rexx_msg(unsigned long );

void free_rexx_msg(int );

void add_rexx_msg_to_tail(struct LispRexxList * , int );

int remove_rexx_msg_from_head(struct LispRexxList * );

void remove_rexx_msg(struct LispRexxList * , int );

int is_rexx_msgid_on_list(struct LispRexxList * , int );

int find_rexx_msg_on_list(struct LispRexxList * , struct RexxMsg * );

int handle_rexx_msg_replied(struct RexxMsg * );

int handle_rexx_msg_received(struct RexxMsg * );

int check_arexx(int , int );

extern struct Lisp_Subr Samiga_arexx_wait;

int Famiga_arexx_wait(void);

extern struct Lisp_Subr Samiga_arexx_check_command;

int Famiga_arexx_check_command(int );

extern struct Lisp_Subr Samiga_get_next_msg;

int Famiga_arexx_get_next_msg(void);

extern struct Lisp_Subr Samiga_arexx_get_msg_results;

int Famiga_arexx_get_msg_results(int );

extern struct Lisp_Subr Samiga_arexx_reply;

int Famiga_arexx_reply(int , int );

int send_rexx_command(int , int , unsigned long );

extern struct Lisp_Subr Samiga_arexx_send_command;

int Famiga_arexx_send_command(int , int );

void init_amiga_rexx(void);

void cleanup_amiga_rexx(void);

void syms_of_amiga_rexx(void);

