diff options
-rw-r--r-- | engines/mortevielle/actions.cpp | 2 | ||||
-rw-r--r-- | engines/mortevielle/alert.h | 2 | ||||
-rw-r--r-- | engines/mortevielle/boite.cpp | 2 | ||||
-rw-r--r-- | engines/mortevielle/droite.cpp | 1 | ||||
-rw-r--r-- | engines/mortevielle/level15.cpp | 1 | ||||
-rw-r--r-- | engines/mortevielle/mor2.h | 2 | ||||
-rw-r--r-- | engines/mortevielle/prog.cpp | 1 | ||||
-rw-r--r-- | engines/mortevielle/ques.cpp | 10 | ||||
-rw-r--r-- | engines/mortevielle/sprint.cpp | 1 | ||||
-rw-r--r-- | engines/mortevielle/var_mor.cpp | 382 | ||||
-rw-r--r-- | engines/mortevielle/var_mor.h | 380 |
11 files changed, 393 insertions, 391 deletions
diff --git a/engines/mortevielle/actions.cpp b/engines/mortevielle/actions.cpp index 27598feea9..6e28c173e6 100644 --- a/engines/mortevielle/actions.cpp +++ b/engines/mortevielle/actions.cpp @@ -26,6 +26,8 @@ */ #include "mortevielle/actions.h" +#include "mortevielle/mor.h" +#include "mortevielle/mor2.h" namespace Mortevielle { diff --git a/engines/mortevielle/alert.h b/engines/mortevielle/alert.h index 6c66a20e6a..6419e814cf 100644 --- a/engines/mortevielle/alert.h +++ b/engines/mortevielle/alert.h @@ -33,7 +33,7 @@ namespace Mortevielle { int do_alert(Common::String str_, int n); -void decod(Common::String s, int &nbc, int &nbl, int &col, Common::String &c, Common::String &cs); +static void decod(Common::String s, int &nbc, int &nbl, int &col, Common::String &c, Common::String &cs); static void posit(int ji, int &coldep, int &esp); static void fait_boite(int lidep, int nli, int tx); static void fait_choix(Common::String c, int &coldep, int &nbcase, array<1, 2, varying_string<3> > &s, int &esp); diff --git a/engines/mortevielle/boite.cpp b/engines/mortevielle/boite.cpp index cfda996e10..0a37cc7af2 100644 --- a/engines/mortevielle/boite.cpp +++ b/engines/mortevielle/boite.cpp @@ -26,6 +26,8 @@ */ #include "mortevielle/boite.h" +#include "mortevielle/mouse.h" +#include "mortevielle/var_mor.h" namespace Mortevielle { diff --git a/engines/mortevielle/droite.cpp b/engines/mortevielle/droite.cpp index 3f582e8cb2..9def04add5 100644 --- a/engines/mortevielle/droite.cpp +++ b/engines/mortevielle/droite.cpp @@ -26,6 +26,7 @@ */ #include "mortevielle/droite.h" +#include "mortevielle/var_mor.h" namespace Mortevielle { diff --git a/engines/mortevielle/level15.cpp b/engines/mortevielle/level15.cpp index 6f5f001d74..42219ee943 100644 --- a/engines/mortevielle/level15.cpp +++ b/engines/mortevielle/level15.cpp @@ -26,6 +26,7 @@ */ #include "mortevielle/level15.h" +#include "mortevielle/var_mor.h" namespace Mortevielle { diff --git a/engines/mortevielle/mor2.h b/engines/mortevielle/mor2.h index 46181c5e9a..adfbff9d26 100644 --- a/engines/mortevielle/mor2.h +++ b/engines/mortevielle/mor2.h @@ -40,7 +40,7 @@ void tmlieu(int mli); void tlu(int af, int ob); void delin(int n); void affrep(); -void mfouen() +void mfouen(); void atf3f8(int &key); /* NIVEAU 6 */ void tperd(); diff --git a/engines/mortevielle/prog.cpp b/engines/mortevielle/prog.cpp index ddf9e4d36b..08b63fe3aa 100644 --- a/engines/mortevielle/prog.cpp +++ b/engines/mortevielle/prog.cpp @@ -25,6 +25,7 @@ * Copyright (c) 1988-1989 Lankhor */ +#include "mortevielle/mor2.h" #include "mortevielle/prog.h" namespace Mortevielle { diff --git a/engines/mortevielle/ques.cpp b/engines/mortevielle/ques.cpp index a802516795..8ea4e4c49c 100644 --- a/engines/mortevielle/ques.cpp +++ b/engines/mortevielle/ques.cpp @@ -31,14 +31,8 @@ namespace Mortevielle { /* overlay */ bool ques() { - const array<1, 10, int> ta - = {{ - 511, 516, 524, 531, 545, - 552, 559, 563, 570, 576 - } - }; - const array<1, 10, int> ok - = {{ 4, 7, 1, 6, 4, 4, 2, 5, 3, 1 }}; + const int ta[10] = {511, 516, 524, 531, 545, 552, 559, 563, 570, 576}; + const int ok[10] = {4, 7, 1, 6, 4, 4, 2, 5, 3, 1 }; bool q, func, test; int i, j, k, y, memk; diff --git a/engines/mortevielle/sprint.cpp b/engines/mortevielle/sprint.cpp index 92ff49f768..6209b08f7d 100644 --- a/engines/mortevielle/sprint.cpp +++ b/engines/mortevielle/sprint.cpp @@ -25,6 +25,7 @@ * Copyright (c) 1988-1989 Lankhor */ +#include "mortevielle/mouse.h" #include "mortevielle/sprint.h" #include "common/str.h" diff --git a/engines/mortevielle/var_mor.cpp b/engines/mortevielle/var_mor.cpp index 2f9928738d..25789e29b3 100644 --- a/engines/mortevielle/var_mor.cpp +++ b/engines/mortevielle/var_mor.cpp @@ -30,390 +30,10 @@ namespace Mortevielle { -/* Constantes, Types et Variables pour le - - M A N O I R DE M O R T E V I E L L E - - ( version Nov 1988 - + - musique & paroles Oct 88 ) - */ - - -/*---------------------------------------------------------------------------*/ -/*------------------------- CONSTANTES ----------------------------------*/ -/*---------------------------------------------------------------------------*/ - -const float freq0 = 1.19318e6; - -const int seg_syst = 0x6fed; -const int segmou = 0x6f00; -const int segdon = 0x6c00; -const int adani = 0x7314; -const int adword = 0x4000; -const int adtroct = 0x406b; -const int adcfiec = 0x4300; -const int adbruit = 0x5cb0;/*2C00;*/ -const int adbruit1 = 0x6924;/*3874;*/ -const int adbruit2 = 0x6b30;/*3A80;*/ -const int adbruit3 = 0x6ba6;/*3AF6;*/ -const int adbruit5 = 0x3b50; -const int adson = 0x5cb0;/*2C00;*/ -const int adson2 = 0x60b0;/*3000;*/ -const int offsetb1 = 6; -const int offsetb2 = 4; -const int offsetb3 = 6; - -const int null = 255; - -const int tempo_mus = 71; -const int tempo_bruit = 78; -const int tempo_f = 80; -const int tempo_m = 89; - -const int ti1 = 410; -const int ti2 = 250; -const int maxti = 7975; -const int maxtd = 600; -const int max_rect = 14; - -const int ams = 0; -const int cga = 1; -const int ega = 2; -const int her = 3; -const int tan = 4; - -const int c_repon = 0; -const int c_st41 = 186; -const int c_tparler = 247; -const int c_paroles = 292; -const int c_tmlieu = 435; -const int c_dialpre = 456; -const int c_action = 476; -const int c_saction = 497; -const int c_dis = 502; -const int c_fin = 510; /* => n'existe pas ; si !! */ - -const int arega = 0; -const int asoul = 154; -const int aouvr = 282; -const int achai = 387; -const int acha = 492; -const int arcf = 1272; -const int arep = 1314; -const int amzon = 1650; -const int fleche = 1758; - -const int no_choice = 0; -const int invent = 1; -const int depla = 2; -const int action = 3; -const int saction = 4; -const int discut = 5; -const int fichier = 6; -const int sauve = 7; -const int charge = 8; - -const int attacher = 0x301; -const int attendre = 0x302; -const int defoncer = 0x303; -const int dormir = 0x304; -const int ecouter = 0x305; -const int entrer = 0x306; -const int fermer = 0x307; -const int fouiller = 0x308; -const int frapper = 0x309; -const int gratter = 0x30a; -const int lire = 0x30b; -const int manger = 0x30c; -const int mettre = 0x30d; -const int ouvrir = 0x30e; -const int prendre = 0x30f; -const int regarder = 0x310; -const int sentir = 0x311; -const int sonder = 0x312; -const int sortir = 0x313; -const int soulever = 0x314; -const int tourner = 0x315; - -const int scacher = 0x401; -const int sfouiller = 0x402; -const int slire = 0x403; -const int sposer = 0x404; -const int sregarder = 0x405; - -const byte tabdbc[18] = {7, 23, 7, 14, 13, 9, 14, 9, 5, 12, 6, 12, 13, 4, 0, 4, 5, 9}; -const byte tabdph[16] = {0, 10, 2, 0, 2, 10, 3, 0, 3, 7, 5, 0, 6, 7, 7, 10}; -const byte typcon[26] = {0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3}; -const byte intcon[26] = {1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}; -const byte tnocon[364] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -}; - - -const matrix<1, 8, 1, 4, byte> don -= {{{{ 7, 37, 22, 8}}, - {{19, 33, 23, 7}}, - {{31, 89, 10, 21}}, - {{43, 25, 11, 5}}, - {{55, 37, 5, 8}}, - {{64, 13, 11, 2}}, - {{62, 22, 13, 4}}, - {{62, 25, 13, 5}} - } -}; - -const array<1, 2, varying_string<11> > fic -= {{ " Sauvegarde", - " Chargement" - } -}; - -const byte addv[2] = {8, 8}; - -const char recom[] = " Recommence "; - -const char f3[] = "F3: Encore"; -const char f8[] = "F8: Suite"; - -const int max_patt = 20; - - -const byte rang[16] = {15, 14, 11, 7, 13, 12, 10, 6, 9, 5, 3, 1, 2, 4, 8, 0}; - - /*---------------------------------------------------------------------------*/ -/*-------------------------------- TYPES --------------------------------*/ +/*-------------------- PROCEDURES AND FONCTIONS -----------------------*/ /*---------------------------------------------------------------------------*/ -typedef float long_int; -typedef file<byte> fichier_byte; -struct sav_chaine { - int conf; - char pourc[11]; - char teauto[43]; - char sjer[31]; - int mlieu, iboul, ibag, icave, ivier, ipuit; - int derobj, iloic, icryp; - bool ipre; - char heure; -}; -struct registres { - int ax, bx, cx, dx, bp, si, di, ds, es, flags; -}; -typedef array<1, 1410, char> phrase; -struct ind { - int indis; - byte point; -}; -typedef array<0, maxtd, ind> tabind; - -typedef matrix<1, 7, 0, 24, byte> tab_mlieu; - -typedef int word1; -struct chariot { - int val, - code, - acc, - freq, - rep; -}; - -struct doublet { - byte x, y; -}; -typedef array<1, 16, doublet> tabdb; -struct rectangle { - int x1, x2, y1, y2; - bool etat; -}; - -typedef array<1, max_rect, rectangle> mult_rect; - -struct pattern { - byte tay, tax; - matrix<1, max_patt, 1, max_patt, byte> des; -}; - - -struct nhom { - byte n; /* numero entre 0 et 32 */ - byte hom[4]; -}; - -struct t_pcga { - byte p; - nhom a[16]; -}; - -/*---------------------------------------------------------------------------*/ -/*------------------------------ VARIABLES ------------------------------*/ -/*---------------------------------------------------------------------------*/ - -bool blo, - bh1, - bf1, - bh2, - bh4, - bf4, - bh5, - bh6, - bh8, - bt3, - bt7, - bh9, - - sonoff, - main1, - choisi, - test0, - f2_all, - imen, - cache, - iesc, - perdu, - col, - syn, - fouil, - zuul, - tesok, - obpart, - okdes, - solu, - arret, - anyone, - brt, - rect, - rech_cfiec, - active_menu; - - -int x, - y, - t, - vj, - li, - vh, - vm, - jh, - mh, - cs, - gd, /* Gd = graph device */ - hdb, - hfb, - heu, - jou, - key, - min, - num, - max, - res, - ment, - haut, - caff, - maff, - crep, - ades, - iouv, - inei, - ctrm, - dobj, - msg3, - msg4, - mlec, - newgd, - c_zzz, - mchai, - menup, - ipers, - ledeb, - lefin, - mpers, - mnumo, - xprec, - yprec, - perdep, - prebru, - typlec, - num_ph, - xwhere, - ywhere, - numpal, - lderobj, - nb_word, - ptr_oct, - k_tempo, - ptr_tcph, - ptr_word, - color_txt; - -int t_cph[6401]; -byte tabdon[4001]; -/* t_dxx : array[0..121] of int;*/ -Common::String stpou; /* donne le % d'indices */ -byte is; -char mode; -fichier_byte ficdes; -Common::String al_mess, - err_mess, - ind_mess, - al_mess2; - -array<1, 8, int> invt, - nbrep, - nbrepm, - disc; -int msg[5]; -array<1, 7, int> depl; -array<1, 8, varying_string<22> > inv; -array<1, 7, varying_string<23> > dep; -array<1, 21, varying_string<10> > act; -array<1, 5, varying_string<11> > self_; -array<1, 8, varying_string<5> > dis; -array<1, 7, char> touv; -sav_chaine s, s1; -byte bufcha[391]; - -matrix<1, 6, 0, 23, byte> lettres; - -byte palher[16]; - -int t_mot[maxti + 1]; -int tay_tchar; -tabind t_rec; -file<ind> sauv_t; -untyped_file fibyte; -tab_mlieu v_lieu; -int l[108]; -int tbi[256]; -chariot c1, c2, c3; -float addfix; -t_pcga palsav[91]; -array<0, 90, tabdb> tabpal; -t_pcga palcga[91]; -pattern tpt[15]; - - - -/*---------------------------------------------------------------------------*/ -/*-------------------- PROCEDURES ET FONCTIONS ------------------------*/ -/*---------------------------------------------------------------------------*/ - -/* procedure box(c,Gd,xo,yo,xi,yi,patt:int); external 'c:\mc\boite.com'; */ - void hirs() { const byte tandy[14] = {113, 80, 90, 14, 63, 6, 50, 56, 2, 3, 6, 7, 0, 0}; const byte herc[13] = {50, 40, 41, 9, 103, 3, 100, 100, 2, 3, 0, 0, 0}; diff --git a/engines/mortevielle/var_mor.h b/engines/mortevielle/var_mor.h index 86bb296ee2..4a526a32f1 100644 --- a/engines/mortevielle/var_mor.h +++ b/engines/mortevielle/var_mor.h @@ -28,8 +28,388 @@ #ifndef MORTEVIELLE_VAR_H #define MORTEVIELLE_VAR_H +#include "common/str.h" + namespace Mortevielle { +/* Constantes, Types et Variables pour le + + M A N O I R DE M O R T E V I E L L E + + ( version Nov 1988 + + + musique & paroles Oct 88 ) + */ + + +/*---------------------------------------------------------------------------*/ +/*------------------------- CONSTANTES ----------------------------------*/ +/*---------------------------------------------------------------------------*/ + +const float freq0 = 1.19318e6; + +const int seg_syst = 0x6fed; +const int segmou = 0x6f00; +const int segdon = 0x6c00; +const int adani = 0x7314; +const int adword = 0x4000; +const int adtroct = 0x406b; +const int adcfiec = 0x4300; +const int adbruit = 0x5cb0;/*2C00;*/ +const int adbruit1 = 0x6924;/*3874;*/ +const int adbruit2 = 0x6b30;/*3A80;*/ +const int adbruit3 = 0x6ba6;/*3AF6;*/ +const int adbruit5 = 0x3b50; +const int adson = 0x5cb0;/*2C00;*/ +const int adson2 = 0x60b0;/*3000;*/ +const int offsetb1 = 6; +const int offsetb2 = 4; +const int offsetb3 = 6; + +const int null = 255; + +const int tempo_mus = 71; +const int tempo_bruit = 78; +const int tempo_f = 80; +const int tempo_m = 89; + +const int ti1 = 410; +const int ti2 = 250; +const int maxti = 7975; +const int maxtd = 600; +const int max_rect = 14; + +const int ams = 0; +const int cga = 1; +const int ega = 2; +const int her = 3; +const int tan = 4; + +const int c_repon = 0; +const int c_st41 = 186; +const int c_tparler = 247; +const int c_paroles = 292; +const int c_tmlieu = 435; +const int c_dialpre = 456; +const int c_action = 476; +const int c_saction = 497; +const int c_dis = 502; +const int c_fin = 510; /* => n'existe pas ; si !! */ + +const int arega = 0; +const int asoul = 154; +const int aouvr = 282; +const int achai = 387; +const int acha = 492; +const int arcf = 1272; +const int arep = 1314; +const int amzon = 1650; +const int fleche = 1758; + +const int no_choice = 0; +const int invent = 1; +const int depla = 2; +const int action = 3; +const int saction = 4; +const int discut = 5; +const int fichier = 6; +const int sauve = 7; +const int charge = 8; + +const int attacher = 0x301; +const int attendre = 0x302; +const int defoncer = 0x303; +const int dormir = 0x304; +const int ecouter = 0x305; +const int entrer = 0x306; +const int fermer = 0x307; +const int fouiller = 0x308; +const int frapper = 0x309; +const int gratter = 0x30a; +const int lire = 0x30b; +const int manger = 0x30c; +const int mettre = 0x30d; +const int ouvrir = 0x30e; +const int prendre = 0x30f; +const int regarder = 0x310; +const int sentir = 0x311; +const int sonder = 0x312; +const int sortir = 0x313; +const int soulever = 0x314; +const int tourner = 0x315; + +const int scacher = 0x401; +const int sfouiller = 0x402; +const int slire = 0x403; +const int sposer = 0x404; +const int sregarder = 0x405; + +const byte tabdbc[18] = {7, 23, 7, 14, 13, 9, 14, 9, 5, 12, 6, 12, 13, 4, 0, 4, 5, 9}; +const byte tabdph[16] = {0, 10, 2, 0, 2, 10, 3, 0, 3, 7, 5, 0, 6, 7, 7, 10}; +const byte typcon[26] = {0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3}; +const byte intcon[26] = {1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}; +const byte tnocon[364] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 +}; + + +const matrix<1, 8, 1, 4, byte> don += {{{{ 7, 37, 22, 8}}, + {{19, 33, 23, 7}}, + {{31, 89, 10, 21}}, + {{43, 25, 11, 5}}, + {{55, 37, 5, 8}}, + {{64, 13, 11, 2}}, + {{62, 22, 13, 4}}, + {{62, 25, 13, 5}} + } +}; + +const array<1, 2, varying_string<11> > fic += {{ " Sauvegarde", + " Chargement" + } +}; + +const byte addv[2] = {8, 8}; + +const char recom[] = " Recommence "; + +const char f3[] = "F3: Encore"; +const char f8[] = "F8: Suite"; + +const int max_patt = 20; + + +const byte rang[16] = {15, 14, 11, 7, 13, 12, 10, 6, 9, 5, 3, 1, 2, 4, 8, 0}; + + +/*---------------------------------------------------------------------------*/ +/*-------------------------------- TYPES --------------------------------*/ +/*---------------------------------------------------------------------------*/ + +typedef float long_int; +typedef file<byte> fichier_byte; +struct sav_chaine { + int conf; + char pourc[11]; + char teauto[43]; + char sjer[31]; + int mlieu, iboul, ibag, icave, ivier, ipuit; + int derobj, iloic, icryp; + bool ipre; + char heure; +}; +struct registres { + int ax, bx, cx, dx, bp, si, di, ds, es, flags; +}; +typedef char[1410] phrase; +struct ind { + int indis; + byte point; +}; +typedef ind[maxtd + 1] tabind; + +typedef matrix<1, 7, 0, 24, byte> tab_mlieu; + +typedef int word1; +struct chariot { + int val, + code, + acc, + freq, + rep; +}; + +struct doublet { + byte x, y; +}; + +typedef doublet[16] tabdb; + +struct rectangle { + int x1, x2, y1, y2; + bool etat; +}; + +typedef rectangle[max_rect] mult_rect; + +struct pattern { + byte tay, tax; + matrix<1, max_patt, 1, max_patt, byte> des; +}; + + +struct nhom { + byte n; /* numero entre 0 et 32 */ + byte hom[4]; +}; + +struct t_pcga { + byte p; + nhom a[16]; +}; + +/*---------------------------------------------------------------------------*/ +/*------------------------------ VARIABLES ------------------------------*/ +/*---------------------------------------------------------------------------*/ + +bool blo, + bh1, + bf1, + bh2, + bh4, + bf4, + bh5, + bh6, + bh8, + bt3, + bt7, + bh9, + + sonoff, + main1, + choisi, + test0, + f2_all, + imen, + cache, + iesc, + perdu, + col, + syn, + fouil, + zuul, + tesok, + obpart, + okdes, + solu, + arret, + anyone, + brt, + rect, + rech_cfiec, + active_menu; + + +int x, + y, + t, + vj, + li, + vh, + vm, + jh, + mh, + cs, + gd, /* Gd = graph device */ + hdb, + hfb, + heu, + jou, + key, + min, + num, + max, + res, + ment, + haut, + caff, + maff, + crep, + ades, + iouv, + inei, + ctrm, + dobj, + msg3, + msg4, + mlec, + newgd, + c_zzz, + mchai, + menup, + ipers, + ledeb, + lefin, + mpers, + mnumo, + xprec, + yprec, + perdep, + prebru, + typlec, + num_ph, + xwhere, + ywhere, + numpal, + lderobj, + nb_word, + ptr_oct, + k_tempo, + ptr_tcph, + ptr_word, + color_txt; + +int t_cph[6401]; +byte tabdon[4001]; +/* t_dxx : array[0..121] of int;*/ +Common::String stpou; /* donne le % d'indices */ +byte is; +char mode; +fichier_byte ficdes; +Common::String al_mess, + err_mess, + ind_mess, + al_mess2; + +int invt[8]; +int nbrep[8]; +int nbrepm[8]; +int disc[8] +int msg[5]; +int depl[7]; +array<1, 8, varying_string<22> > inv; +array<1, 7, varying_string<23> > dep; +array<1, 21, varying_string<10> > act; +array<1, 5, varying_string<11> > self_; +array<1, 8, varying_string<5> > dis; +char touv[7]; +sav_chaine s, s1; +byte bufcha[391]; + +matrix<1, 6, 0, 23, byte> lettres; + +byte palher[16]; + +int t_mot[maxti + 1]; +int tay_tchar; +tabind t_rec; +file<ind> sauv_t; +untyped_file fibyte; +tab_mlieu v_lieu; +int l[108]; +int tbi[256]; +chariot c1, c2, c3; +float addfix; +t_pcga palsav[91]; +tabdb tabpal[91]; +t_pcga palcga[91]; +pattern tpt[15]; + /*---------------------------------------------------------------------------*/ /*------------------- PROCEDURES AND FONCTIONS ------------------------*/ /*---------------------------------------------------------------------------*/ |