/* Warning! This C source contains extended characters! */

#include <stdio.h>
#include <process.h>
#include <musique.h>

int language;

static char *TEXTMESSAGE[]={
/* 0*/ "% de l'espace … r‚pertoire utilis‚\n",
       "% of directory space used\n",
       "% vom Raum fr Verzeichnis benutzt\n",

/* 1*/ "\nMenu pour ModPlay  Version "
       VERSION
       "\n"
       "Copyright F. Jalbert 1991\n\n",
       "\nModPlay Menu  Version "
       VERSION
       "\n"
       "Copyright F. Jalbert 1991\n\n",
       "\nMen fr ModPlay  Version "
       VERSION
       "\n"
       "Copyright F. Jalbert 1991\n\n",

/* 2*/ "Ouverture du fichier menu: ",
       "Opening menu file: ",
       "™ffnung des Files Men: ",

/* 3*/ "Lecture du fichier menu:\n",
       "Reading menu file:\n",
       "Durchlesen des Files Men:\n",

/* 4*/ "Fermeture du fichier menu: ",
       "Closing menu file: ",
       "Abschluá des Files Men: ",

/* 5*/ "Recherche des paramŠtres d'op‚ration:\n",
       "Looking for operation parameters:\n",
       "Suche der Betriebsrahmen:\n",

/* 6*/ "Effacement des programmes temporaires\n",
       "Erasing temporary programs\n",
       "L”schen der vorbergehenden Programme\n",

/* 7*/ " lignes lues\n",
       " lines read\n",
       " Zeilen gelesen\n",

/* 8*/ "st‚r‚o\n",
       "stereo\n",
       "Stereo\n",

/* 9*/ "haut-parleur\n",
       "speaker\n",
       "Lautsprecher\n",

/*10*/ "  Programme … copier temporairement\n",
       "  Program to copy temporarily\n",
       "  Zu vorbergehend kopierendes Programm\n",

/*11*/ "  Programme copi‚ temporairement\n",
       "  Program copied temporarily\n",
       "  Vorbergehend kopierenes Programm\n",

/*12*/ "  Programme localis‚\n",
       "  Program located\n",
       "  Lokalisierenes Programm\n",

/*13*/ " Lecteur courant: ",
       " Current drive: ",
       " Aktueller Treiber: ",

/*14*/ " Lecteur temporaire: ",
       " Temporary drive: ",
       " Verbergehender Treiber: ",

/*15*/ " Localisation du programme ",
       " Locating program ",
       " Lokalisierung des Programms ",

/*16*/ " Test des ports parallŠles: ",
       " Parallel ports test: ",
       " Test der parallelen Durchl„sse: ",

/*17*/ " R‚solution de l'‚cran:\n",
       " Screen resolution:\n",
       " Aufl”sung des Schirmes:\n",

/*18*/ "  Mode vid‚o courant: ",
       "  Current video mode: ",
       "  Aktuelles Art Video: ",

/*19*/ "colonnes\n",
       "columns\n",
       "Kolumnen\n",

/*20*/ "lignes\n",
       "lines\n",
       "Zeilen\n",

/*21*/ "lignes ajust‚es\n",
       "lines adjusted\n",
       "ge„nderte Zeilen\n",

/*22*/ "Presser une touche pour continuer,\n"
       "Escape pour abandonner\n",
       "Press a key to continue,\n"
       "Escape to quit\n",
       "Drcken Sie eine Taste um fortzusetzen,\n"
       "Escape um abzubrechen\n",

/*23*/ "Ins‚rer la disquette ",
       "Insert floppy ",
       "Einsetzen der Platte ",

/*24*/ "Cette musique est introuvable\n",
       "This song is missing\n",
       "Diese Musik ist unauffindbar\n",

/*25*/ "Presser une touche pour continuer\n",
       "Press a key to continue\n",
       "Drcken Sie eine Taste um fortzusetzen\n",

/*26*/ "mono\n",
       "mono\n",
       "Mono\n",

/*27*/ " Ports parallŠles d‚j… s‚lectionn‚s\n",
       " Parallel ports already selected\n",
       " Parallele Durchl„sse schon ausgew„hlt\n",

/*28*/ " Vitesse: ",
       " Speed: ",
       " Tempo: ",

/*29*/ "Remise … z‚ro d'un port parallŠle\n",
       "Zeroing one parallel port\n",
       "Wiederinnullsetzung einem parallelen Durchlaá\n",

/*30*/ "  Programme pas localis‚\n",
       "  Program not located\n",
       "  Nicht lokalisierenes Programm\n",

/*31*/ "MOD sous le repertoire du menu\n",
       "MOD under the menu directory\n",
       "MOD unter dem Verzeichnis des Mens\n",

/*32*/ "MOD sous le lecteur courant\n",
       "MOD on the current drive\n",
       "MOD auf dem aktuellen Treiber\n",

/*33*/ "ZIP sous le lecteur temporaire\n",
       "ZIP on the temporary drive\n",
       "ZIP auf dem vorbergehenden Treiber\n",

/*34*/ "ZIP sous le repertoire du menu\n",
       "ZIP under the menu directory\n",
       "ZIP unter dem Verzeichnis des Mens\n",

/*35*/ "ZIP sous le lecteur courant\n",
       "ZIP on the current drive\n",
       "ZIP auf dem aktuellen Treiber\n",

/*36*/ "MOD sous le lecteur temporaire\n",
       "MOD on the temporary drive\n",
       "MOD auf dem vorbergehenden Treiber\n",

/*37*/ "Module … d‚compresser\n",
       "Module to decompress\n",
       "Zu dekomprimierender Modul\n",

/*38*/ "Module … copier temporairement\n",
       "Module to copy temporarily\n",
       "Zu vorbergehend kopierender Modul\n",

/*39*/ "ModPlay d‚marre\n",
       "ModPlay starts\n",
       "ModPlay f„ngt an\n",

/*40*/ "Effacement du module temporaire\n",
       "Erasing temporary module\n",
       "L”schen des vorbergehendes Moduls\n",

/*41*/ " Verbosit‚ maximale\n",
       " Maximum verbosity\n",
       " Maximale Langatmigkeit\n",

/*42*/ " Verbosit‚: Nom de module\n",
       " Verbosity: Module Name\n",
       " Langatmigkeit: Name des Moduls\n",

/*43*/ "Commande: ",
       "Command: ",
       "Kommando: ",

/*44*/ " Souris d‚sir‚e:\n",
       " Mouse requested:\n",
       " Maus gewnscht:\n",

/*45*/ "  Initialis‚e\n",
       "  Initialized\n",
       "  Angefangene\n",

/*46*/ " Verbosit‚: Nom de fichier DOS\n",
       " Verbosity: DOS File Name\n",
       " Langatmigkeit: DOS Name des Files\n",

/*47*/ "  Mode vid‚o d‚sir‚: ",
       "  Video mode requested: ",
       "  Art Video gewnscht: ",

/*48*/ "  Sortie directe dans le RAM\n",
       "  Direct output to the RAM\n",
       "  Direktes Output im RAM\n",

/*49*/ "  Sortie … travers le BIOS\n",
       "  Output through the BIOS\n",
       "  Output durch das BIOS\n"
};

static char *TEXTERROR[]={
/* 0*/ "Erreur d'‚criture en sortie",
       "Error writing to output",
       "Fehler bei dem Schreibung des Outputs",

/* 1*/ "\n"
       "Menu pour ModPlay  Version "
       VERSION
       "\nLa syntaxe est: musique [options] [menu[.men]]\n"
       "   Vitesse: /a  AT < 12 MHz\n"
       "            /b  AT = 12 MHz\n"
       "            /c  AT > 12 MHz\n"
       "   Language: /d Deutsch\n"
       "             /e English\n"
       "             /f Fran‡ais\n"
       "   Haute intensit‚: /h\n"
       "   Mode vid‚o: /i<d‚cimal>\n"
       "   Couleur: /k<type><d‚cimal>\n"
       "   Souris: /m\n"
       "   CritŠre: /n Nom de ficher DOS\n"
       "            /s Nom de module\n"
       "            /v Tout les champs\n"
       "   Vid‚o avec BIOS: /o\n"
       "   Pause: /p\n"
       "   Lecteur temporaire: /t<lettre>\n"
       "   Ports: /0 Aucun\n"
       "          /1 … 3BCH\n"
       "          /2 … 378H\n"
       "          /3 … 278H\n"
       "   Syntaxe: /?\n"
       "Un espace s‚pare toutes les options",
       "\n"
       "ModPlay Menu  Version "
       VERSION
       "\nThe syntax is: musique [options] [menu[.men]]\n"
       "   Speed: /a  AT < 12 MHz\n"
       "          /b  AT = 12 MHz\n"
       "          /c  AT > 12 MHz\n"
       "   Language: /d Deutsch\n"
       "             /e English\n"
       "             /f Fran‡ais\n"
       "   High Intensity: /h\n"
       "   Video Mode: /i<decimal>\n"
       "   Color: /k<type><decimal>\n"
       "   Mouse: /m\n"
       "   Criterion: /n DOS File Name\n"
       "              /s Module Name\n"
       "              /v All the fields\n"
       "   Video with BIOS: /o\n"
       "   Pause: /p\n"
       "   Temporary Drive: /t<letter>\n"
       "   Ports: /0 None\n"
       "          /1 at 3BCH\n"
       "          /2 at 378H\n"
       "          /3 at 278H\n"
       "   Syntax: /?\n"
       "A space separates all the options",
       "\n"
       "Men fr ModPlay  Version "
       VERSION
       "\nDie Syntax ist: Musique [Optionen] [menu[.men]]\n"
       "   Tempo: /a  AT < 12 MHz\n"
       "          /b  AT = 12 MHz\n"
       "          /c  AT > 12 MHz\n"
       "   Sprache: /d Deutsch\n"
       "            /e English\n"
       "            /f Fran‡ais\n"
       "   Hohe Intensit„t: /h\n"
       "   Art Video: /i<Dezimal>\n"
       "   Farbe: /k<Type><Dezimal>\n"
       "   Maus: /m\n"
       "   Kriterium: /n DOS Name des Files\n"
       "              /s Name des Moduls\n"
       "              /v Alle die Felder\n"
       "   Video mit BIOS: /o\n"
       "   Pause: /p\n"
       "   Vorbergehender Treiber: /t<Buchstabe>\n"
       "   Durchl„sse: /0 Kein\n"
       "               /1 auf 3BCH\n"
       "               /2 auf 378H\n"
       "               /3 auf 278H\n"
       "   Syntax: /?\n"
       "Etwas Platz trennt alle die Optionen",

/* 2*/ "Le fichier menu ne peux pas ˆtre ouvert",
       "Can't open the menu file",
       "Kann nicht das File Men ”ffnen",

/* 3*/ "Le fichier menu ne peux pas ˆtre ferm‚",
       "Can't close the menu file",
       "Kann nicht das File Men abschlieáen",

/* 4*/ "Ligne trop longue dans le menu",
       "Line too long in the menu",
       "Zeile zu lange im Men",

/* 5*/ "Trop de musique dans le menu",
       "Too much music in the menu",
       "Zuviel Musik im Men",

/* 6*/ "Aucune musique dans le menu",
       "No music in the menu",
       "Keine Musik im Men",

/* 7*/ "Ecran pas assez large",
       "Screen not wide enough",
       "Schirm nicht weit genug",

/* 8*/ "Ecran pas assez haut",
       "Screnn not tall enough",
       "Schirm nicht hoch genug",

/* 9*/ "Programme interrompu par l'utilisateur",
       "Program interrupted by user",
       "Programm abgebrochen beim Benutzer",

/*10*/ "Champ manquant dans le menu",
       "Field missing in the menu",
       "Feld fehlend im Men",

/*11*/ "Champ trop long dans le menu",
       "Field too long in the menu",
       "Feld zu lang im Men",

/*12*/ "Ce programme est introuvable",
       "Missing program",
       "Fehlendes Programm",

/*13*/ "Ne peut ouvrir le programme source",
       "Can't open the source program",
       "Kann nicht das Quellprogramm ”ffnen",

/*14*/ "Ne peut ouvrir le programme destination", 
       "Can't open the target program",
       "Kann nicht das Zielprogramm ”ffnen",

/*15*/ "Ne peut ‚crire le programme destination",
       "Can't write the target program",
       "Kann nicht das Zielprogramm schreiben",

/*16*/ "Ne peut fermer le programme source",
       "Can't close the source program",
       "Kann nicht das Quellprogramm abschlieáen",

/*17*/ "Ne peut fermer le programme destination",
       "Can't close the target program",
       "Kann nicht das Zielprogramm abschlieáen",

/*18*/ "D‚compression sans r‚sultat",
       "Decompression without results",
       "Dekompression ohne Resultat",

/*19*/ "Ne peut effacer la musique d‚compress‚e",
       "Decompressed music can't be erased",
       "Kann nicht die dekomprimierte Musik l”schen",

/*20*/ "Impossible de d‚marrer l'interpr‚teur",
       "Can't start the interpreter",
       "Kann nicht den Dolmetscher anfangen",

/*21*/ "Ne peut effacer un programme temporaire",
       "A temporary program can't be erased",
       "Kann nicht ein verbergehendes Programm l”schen",

/*22*/ "Le nom de fichier menu est trop long",
       "Menu file name too long",
       "Name des Files Men zu lang",

/*23*/ "ParamŠtre invalide, voir /?",
       "Invalid parameter, see /?",
       "Ungltiger Betriebsrahmen, siehe /?",

/*24*/ "Plus d'espace pour les r‚pertoires",
       "No more space for directories",
       "Kein Raum mehr fr Verzeichnisse",

/*25*/ "Ne peut ouvrir le module source",
       "Can't open the source module",
       "Kann nicht den Quellmodul ”ffnen",

/*26*/ "Ne peut ouvrir le module destination", 
       "Can't open the target module",
       "Kann nicht den Zielmodul ”ffnen",

/*27*/ "Ne peut ‚crire le module destination",
       "Can't write the target module",
       "Kann nicht den Zielmodul schreiben",

/*28*/ "Ne peut fermer le module source",
       "Can't close the source module",
       "Kann nicht den Quellmodul abschlieáen",

/*29*/ "Ne peut fermer le module destination",
       "Can't close the target module",
       "Kann nicht den Zielmodul abschlieáen",

/*30*/ "Lecteur invalide",
       "Invalid drive",
       "Ungltiger Treiber",

/*31*/ "La souris ne r‚pond pas",
       "The mouse does not respond",
       "Die Maus beantwortet nicht",

/*32*/ "Le lecteur temporaire ne r‚pond pas",
       "Temporary drive not responding",
       "Der vorbergehenden Treiber fehlt",

/*33*/ "Le lecteur courant ne r‚pond pas",
       "Current drive not responding",
       "Der aktuellen Treiber fehlt",

/*34*/ "Adapteur vid‚o inconnu",
       "Unknown video adapter",
       "Unbekannter Videoadapter"
};

void error(int errorptr)
/* prints error message on error device and aborts the program */
{
  fprintf(stderr,"\7%s!\n",TEXTERROR[errorptr*LANGUAGENUMBER+language]);
  exit(1);
}

void message(int messageptr)
/* prints message on output device */
{
  printf("%s",TEXTMESSAGE[messageptr*LANGUAGENUMBER+language]);
  if (ferror(stdout)) error(0);
}
