MCP_BOUND_LANGUAGES

This procedure returns the names of the languages that are currently bound to the MCP. For information about binding a language to the operating system, see the MultiLingual System Administration, Operations, and Programming Guide.

Example

This example returns the languages bound by the operating system. Assume for this example that the bound languages are English and German.

BEGIN
 $ INCLUDE INTL="SYMBOL/INTL/ALGOL/PROPERTIES." 10000000 - 49999999
   FILE OUT(KIND=DISK,UNITS=CHARACTERS,FILEUSE=IO,FILETYPE=0,NEWFILE,
           MAXRECSIZE=80,TITLE="OUT/ALGOL/MCP_BOUND_LANG.");
  EBCDIC ARRAY LANGUAGES_ARY[0:84];
  ARRAY LINEOUT[0:14];
  INTEGER TOTAL
        ,I
        ,RESULT;
   RESULT := MCP_BOUND_LANGUAGES(TOTAL, LANGUAGES_ARY);
  WRITE(OUT,<"RESULT = ",J4>,RESULT);
  IF RESULT EQL CS_DATAOKV THEN
     BEGIN
     REPLACE LINEOUT BY " " FOR 80;
     WRITE(OUT,80,LINEOUT);
     WRITE(OUT,<"LANGUAGES">);
     WRITE(OUT,<"---------">);
     FOR I := 0 STEP 1 UNTIL TOTAL-1 DO
        WRITE(OUT,17,LANGUAGES_ARY[I*17]);
     END;
  CLOSE(OUT,LOCK);
END.

Output

RESULT = 1

LANGUAGES
---------
ENGLISH
GERMAN

In this call, the parameters have the following meanings:

TOTAL is an integer returned by the procedure. It contains the total number of languages bound to the MCP.

LANGUAGES_ARY is an EBCDIC array returned by the procedure. It contains the names of the languages bound to the MCP. The maximum length of each name is 17 characters, and the names are left justified. For any name that is less than 17 characters, the field is filled on the right with blanks. It is recommended that the size of the array be 84 characters; an array of that size holds 5 names.

RESULT is an integer returned by the procedure. It indicates whether or not an error occurred during the execution of the procedure. An explanation of the error result values and messages can be found at the end of this section.

The values returned by this procedure include:

CS_ARRAY_TOO_SMALLV (3001)

CS_FAULTV (1001)

CS_BAD_ARRAY_DESCRIPTIONV (3000)

CS_SOFTERRV (1002)

CS_DATAOKV (1)