Diff for /rpl/src/instructions_h1.c between versions 1.13 and 1.66

version 1.13, 2010/08/13 21:00:37 version 1.66, 2018/12/22 10:13:11
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.18    RPL/2 (R) version 4.1.29
   Copyright (C) 1989-2010 Dr. BERTRAND Joël    Copyright (C) 1989-2018 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 325  instruction_hms_plus(struct_processus *s Line 325  instruction_hms_plus(struct_processus *s
             return;              return;
         }          }
   
         (*((real8 *) (*s_objet_resultat).objet)) = (*((integer8 *)          (*((real8 *) (*s_objet_resultat).objet)) = ((real8) (*((integer8 *)
                 (*s_objet_argument_2).objet)) + (*((real8 *)                  (*s_objet_argument_2).objet))) + (*((real8 *)
                 (*s_objet_argument_1).objet));                  (*s_objet_argument_1).objet));
   
         conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);          conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);
Line 344  instruction_hms_plus(struct_processus *s Line 344  instruction_hms_plus(struct_processus *s
         }          }
   
         (*((real8 *) (*s_objet_resultat).objet)) = (*((real8 *)          (*((real8 *) (*s_objet_resultat).objet)) = (*((real8 *)
                 (*s_objet_argument_2).objet)) + (*((integer8 *)                  (*s_objet_argument_2).objet)) + ((real8) (*((integer8 *)
                 (*s_objet_argument_1).objet));                  (*s_objet_argument_1).objet)));
   
         conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);          conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);
     }      }
Line 480  instruction_hms_moins(struct_processus * Line 480  instruction_hms_moins(struct_processus *
     if (((*s_objet_argument_1).type == INT) &&      if (((*s_objet_argument_1).type == INT) &&
             ((*s_objet_argument_2).type == INT))              ((*s_objet_argument_2).type == INT))
     {      {
         (*((integer8 *) (*s_objet_argument_1).objet)) =          if (depassement_soustraction((integer8 *) (*s_objet_argument_2).objet,
                 -(*((integer8 *) (*s_objet_argument_1).objet));                  (integer8 *) (*s_objet_argument_1).objet, &tampon) ==
   
         if (depassement_addition((integer8 *) (*s_objet_argument_1).objet,  
                 (integer8 *) (*s_objet_argument_2).objet, &tampon) ==  
                 d_absence_erreur)                  d_absence_erreur)
         {          {
             if ((s_objet_resultat = allocation(s_etat_processus, INT))              if ((s_objet_resultat = allocation(s_etat_processus, INT))
Line 506  instruction_hms_moins(struct_processus * Line 503  instruction_hms_moins(struct_processus *
             }              }
   
             (*((real8 *) (*s_objet_resultat).objet)) = ((real8)              (*((real8 *) (*s_objet_resultat).objet)) = ((real8)
                     (*((integer8 *) (*s_objet_argument_1).objet))) + ((real8)                      (*((integer8 *) (*s_objet_argument_2).objet))) - ((real8)
                     (*((integer8 *) (*s_objet_argument_2).objet)));                      (*((integer8 *) (*s_objet_argument_1).objet)));
         }          }
     }      }
   
Line 529  instruction_hms_moins(struct_processus * Line 526  instruction_hms_moins(struct_processus *
             return;              return;
         }          }
   
         (*((real8 *) (*s_objet_resultat).objet)) = (*((integer8 *)          (*((real8 *) (*s_objet_resultat).objet)) = ((real8) (*((integer8 *)
                 (*s_objet_argument_2).objet)) - (*((real8 *)                  (*s_objet_argument_2).objet))) - (*((real8 *)
                 (*s_objet_argument_1).objet));                  (*s_objet_argument_1).objet));
   
         conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);          conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);
Line 548  instruction_hms_moins(struct_processus * Line 545  instruction_hms_moins(struct_processus *
         }          }
   
         (*((real8 *) (*s_objet_resultat).objet)) = (*((real8 *)          (*((real8 *) (*s_objet_resultat).objet)) = (*((real8 *)
                 (*s_objet_argument_2).objet)) - (*((integer8 *)                  (*s_objet_argument_2).objet)) - ((real8) (*((integer8 *)
                 (*s_objet_argument_1).objet));                  (*s_objet_argument_1).objet)));
   
         conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);          conversion_decimal_vers_hms((real8 *) (*s_objet_resultat).objet);
     }      }
Line 885  instruction_help(struct_processus *s_eta Line 882  instruction_help(struct_processus *s_eta
     if ((*s_etat_processus).langue == 'F')      if ((*s_etat_processus).langue == 'F')
     {      {
         printf("Processus asynchrones :\n");          printf("Processus asynchrones :\n");
         printf("  CTRL+C : interruption de l'instruction en cours ;\n");          printf("  CTRL+c : interruption de l'instruction en cours ;\n");
         printf("  CTRL+D : en mode interactif, provque un ABORT ;\n");          printf("  CTRL+d : en mode interactif, provoque un ABORT\n");
         printf("  CTRL+Z : en cours d'exécution, provoque un HALT "          printf("  CTRL+g : en mode interactif, provoque l'annulation de la "
                   "commande en cours ;\n");
           printf("  CTRL+z : en cours d'exécution, provoque un HALT "
                 "asynchrone.\n\n");                  "asynchrone.\n\n");
   
         printf("Drapeaux (valeurs par défaut) :\n");          printf("Drapeaux (valeurs par défaut) :\n");
Line 897  instruction_help(struct_processus *s_eta Line 896  instruction_help(struct_processus *s_eta
         printf("  32      : impression automatique (désarmé)\n");          printf("  32      : impression automatique (désarmé)\n");
         printf("  33      : retour à la ligne automatique invalidé "          printf("  33      : retour à la ligne automatique invalidé "
                 "(désarmé)\n");                  "(désarmé)\n");
         printf("  34      : réservé (désarmé)\n");          printf("  34      : évaluation des caractères de contrôle (armé)\n");
         printf("  35      : évaluation symbolique des constantes (armé)\n");          printf("  35      : évaluation symbolique des constantes (armé)\n");
         printf("  36      : évaluation symbolique des fonctions (armé)\n");          printf("  36      : évaluation symbolique des fonctions (armé)\n");
         printf("  37 à 42 : taille des entiers binaires, bit de poids faible "          printf("  37 à 42 : taille des entiers binaires, bit de poids faible "
Line 920  instruction_help(struct_processus *s_eta Line 919  instruction_help(struct_processus *s_eta
     else      else
     {      {
         printf("Hot keys :\n");          printf("Hot keys :\n");
         printf("  CTRL+C : interruption ;\n");          printf("  CTRL+c : interruption ;\n");
         printf("  CTRL+D : ABORT (in interactive mode only) ;\n");          printf("  CTRL+d : in interactive mode only sends ABORT on empty "
         printf("  CTRL+Z : HALT.\n\n");                  "command line ;\n");
           printf("  CTRL+g : in interactive mode only, nullifies current "
                   "command line ;\n");
           printf("  CTRL+z : HALT.\n\n");
   
         printf("Flags (default values) :\n");          printf("Flags (default values) :\n");
         printf("  1 à 30  : user flags (cleared)\n");          printf("  1 to 30  : user flags (cleared)\n");
         printf("  31      : LAST stack enabled (set in interactive mode, "          printf("  31       : LAST stack enabled (set in interactive mode, "
                 "cleared if not)\n");                  "cleared if not)\n");
         printf("  32      : automatic printing (cleared)\n");          printf("  32       : automatic printing (cleared)\n");
         printf("  33      : automatic carriage return disabled "          printf("  33       : automatic carriage return disabled "
                 "(cleared)\n");                  "(cleared)\n");
         printf("  34      : reserved (cleared)\n");          printf("  34       : control characters evaluation (set)\n");
         printf("  35      : constant symbolic evaluation (set)\n");          printf("  35       : constant symbolic evaluation (set)\n");
         printf("  36      : function symbolic evaluation (set)\n");          printf("  36       : function symbolic evaluation (set)\n");
         printf("  37 à 42 : size of binary integers, while starting with "          printf("  37 to 42 : size of binary integers, while starting with "
                 "less significant bit (set)\n");                  "less significant bit\n");
         printf("  43 à 44 : binary integer basis (cleared)\n");          printf("             (set)\n");
         printf("  45      : multiline conversion (set)\n");          printf("  43 to 44 : binary integer basis (cleared)\n");
         printf("  46 à 47 : reserved (cleared)\n");          printf("  45       : multiline conversion (set)\n");
         printf("  48      : comma as decimal separator (cleared)\n");          printf("  46 to 47 : reserved (cleared)\n");
         printf("  49 à 50 : numbers format (cleared)\n");          printf("  48       : comma as decimal separator (cleared)\n");
         printf("  51      : visual bell disabled (cleared)\n");          printf("  49 to 50 : numbers format (cleared)\n");
         printf("  52      : graphic automatic redrawing disabled "          printf("  51       : visual bell disabled (cleared)\n");
           printf("  52       : graphic automatic redrawing disabled "
                 "(cleared)\n");                  "(cleared)\n");
         printf("  53 à 56 : precision, while starting with "          printf("  53 to 56 : precision, while starting with "
                 "less significant bit (cleared)\n");                  "less significant bit (cleared)\n");
         printf("  57 à 59 : reserved (cleared)\n");          printf("  57 to 59 : reserved (cleared)\n");
         printf("  60      : radian mode instead of degree one (set)\n");          printf("  60       : radian mode instead of degree one (set)\n");
         printf("  61 à 64 : reserved (cleared)\n");          printf("  61 to 64 : reserved (cleared)\n");
     }      }
   
     printf("\n");      printf("\n");
Line 979  instruction_help(struct_processus *s_eta Line 982  instruction_help(struct_processus *s_eta
         printf("    %s        : connexion à une base de données SQL\n", d_SQL);          printf("    %s        : connexion à une base de données SQL\n", d_SQL);
         printf("    %s             : mutex\n", d_MTX);          printf("    %s             : mutex\n", d_MTX);
         printf("    %s  : sémaphore nommé\n", d_SPH);          printf("    %s  : sémaphore nommé\n", d_SPH);
           printf("    %s         : enregistrement\n", d_REC);
     }      }
     else      else
     {      {
Line 1006  instruction_help(struct_processus *s_eta Line 1010  instruction_help(struct_processus *s_eta
         printf("    %s        : connection to SQL database\n", d_SQL);          printf("    %s        : connection to SQL database\n", d_SQL);
         printf("    %s             : mutex\n", d_MTX);          printf("    %s             : mutex\n", d_MTX);
         printf("    %s  : named semaphore\n", d_SPH);          printf("    %s  : named semaphore\n", d_SPH);
           printf("    %s         : record\n", d_REC);
     }      }
   
     /*      /*

Removed from v.1.13  
changed lines
  Added in v.1.66


CVSweb interface <joel.bertrand@systella.fr>