| version 1.1.1.1, 2025/01/19 02:04:04 | version 1.3, 2025/03/09 15:20:18 | 
| Line 15 | Line 15 | 
 | *      FreeM local system table and user-defined special variable table | *      FreeM local system table and user-defined special variable table | 
 | * | * | 
 | * | * | 
| *   Author: Serena Willis <jpw@coherent-logic.com> | *   Author: Serena Willis <snw@coherent-logic.com> | 
 | *    Copyright (C) 1998 MUG Deutschland | *    Copyright (C) 1998 MUG Deutschland | 
 | *    Copyright (C) 2020 Coherent Logic Development LLC | *    Copyright (C) 2020 Coherent Logic Development LLC | 
 | * | * | 
| Line 94  long str2long(char *string) | Line 94  long str2long(char *string) | 
 | return value; | return value; | 
 | } | } | 
 |  |  | 
| void symtab_init () | void symtab_init (void) | 
 | { | { | 
 | register int i; | register int i; | 
 | union semun arg; | union semun arg; | 
| Line 2475  unsubscr: | Line 2475  unsubscr: | 
 |  |  | 
 |  |  | 
 | /******************************************************************************/ | /******************************************************************************/ | 
 | short int collate (s, t) |  | 
 | char *s; |  | 
 | char *t; |  | 
 | /* if 't' follows 's' in MUMPS collating sequence a 1 is returned | /* if 't' follows 's' in MUMPS collating sequence a 1 is returned | 
 | * otherwise 0 | * otherwise 0 | 
 | */ | */ | 
 |  |  | 
 |  | short int collate (char *s, char *t) | 
 | { | { | 
 | short dif; | short dif; | 
 |  |  | 
| Line 2552  short int numeric (char *str) | Line 2551  short int numeric (char *str) | 
 | }                                       /* end of numeric() */ | }                                       /* end of numeric() */ | 
 |  |  | 
 | /******************************************************************************/ | /******************************************************************************/ | 
 | short int comp (s, t) |  | 
 | char *s; |  | 
 | char *t; |  | 
 | /* s and t are strings representing */ | /* s and t are strings representing */ | 
 | /* MUMPS numbers. comp returns t>s  */ | /* MUMPS numbers. comp returns t>s  */ | 
 |  |  | 
 |  | short int comp (char *s, char *t) | 
 | { | { | 
 |  |  | 
 | register int s1 = s[0], t1 = t[0], point = '.'; | register int s1 = s[0], t1 = t[0], point = '.'; | 
| Line 2621  short int comp (s, t) | Line 2619  short int comp (s, t) | 
 |  |  | 
 | }                                       /* end of comp() */ | }                                       /* end of comp() */ | 
 | /******************************************************************************/ | /******************************************************************************/ | 
| void intstr (str, integ)                        /* converts integer to string */ | void intstr (char *str, short integ)                    /* converts integer to string */ | 
| char *str; |  | 
| short integ; |  | 
 | { | { | 
 |  |  | 
 | if (integ < 0) { | if (integ < 0) { | 
| Line 2662  void intstr (str, integ)   /* converts i | Line 2658  void intstr (str, integ)   /* converts i | 
 | }                                       /* end of intstr() */ | }                                       /* end of intstr() */ | 
 |  |  | 
 | /******************************************************************************/ | /******************************************************************************/ | 
| void lintstr (str, integ)                       /* converts long integer to string */ | void lintstr (char *str, long integ)                    /* converts long integer to string */ | 
| char *str; |  | 
| long integ; |  | 
 | { | { | 
 | char result[11];                    /* 32 bit = 10 digits+sign */ | char result[11];                    /* 32 bit = 10 digits+sign */ | 
 | register int i = 0; | register int i = 0; | 
| Line 2700  void lintstr (str, integ)   /* converts | Line 2694  void lintstr (str, integ)   /* converts | 
 | * alphabet for each character a pointer to the first variable beginning | * alphabet for each character a pointer to the first variable beginning | 
 | * with that letter is maintained. (0 indicates there's no such var.) | * with that letter is maintained. (0 indicates there's no such var.) | 
 | */ | */ | 
| void udfsvn (action, key, data)         /* symbol table functions */ |  | 
| short action;                       /* set_sym      get_sym   */ | void udfsvn (short action, char *key, char *data)               /* symbol table functions */ | 
| char *key;                  /* lvn as ASCII-string */ |  | 
| char *data; |  | 
 | { | { | 
 |  |  | 
 | long keyl;                      /* length of key                  */ | long keyl;                      /* length of key                  */ | 
| Line 2910  old: | Line 2902  old: | 
 |  |  | 
 |  |  | 
 | /******************************************************************************/ | /******************************************************************************/ | 
| long getpmore () | long getpmore (void) | 
 | {                                       /* try to get more 'partition' space. returns size increment */ | {                                       /* try to get more 'partition' space. returns size increment */ | 
 |  |  | 
 | long siz; | long siz; | 
| Line 2932  long getpmore () | Line 2924  long getpmore () | 
 | }                                       /* end getpmore */ | }                                       /* end getpmore */ | 
 |  |  | 
 | /******************************************************************************/ | /******************************************************************************/ | 
| long getumore () | long getumore (void) | 
 | {                                       /* try to get more udfsvntab space. returns size increment */ | {                                       /* try to get more udfsvntab space. returns size increment */ | 
 | long siz, dif; | long siz, dif; | 
 |  |  | 
| Line 2958  long getumore () | Line 2950  long getumore () | 
 | }                                       /* end getumore */ | }                                       /* end getumore */ | 
 |  |  | 
 | /******************************************************************************/ | /******************************************************************************/ | 
| long getrmore () | long getrmore (void) | 
 | {                                       /* try to get more routine space. returns size increment */ | {                                       /* try to get more routine space. returns size increment */ | 
 | long siz, dif; | long siz, dif; | 
 | short i; | short i; | 
| Line 2990  long getrmore () | Line 2982  long getrmore () | 
 | }                                       /* end getrmore */ | }                                       /* end getrmore */ | 
 |  |  | 
 | /******************************************************************************/ | /******************************************************************************/ | 
| short int getnewmore () | short int getnewmore (void) | 
 | {                                       /* enlarge new_buffers */ | {                                       /* enlarge new_buffers */ | 
 | char *newbuf; | char *newbuf; | 
 | int i; | int i; |