This commit is contained in:
f1iwq2
2023-02-25 11:29:16 +01:00
parent 4e63a59382
commit 9da5aa677c
33 changed files with 1459 additions and 1758 deletions
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+157 -10
View File
@@ -1570,7 +1570,7 @@ object FormConfig: TFormConfig
Top = 8 Top = 8
Width = 633 Width = 633
Height = 505 Height = 505
ActivePage = TabSheetCDM ActivePage = TabSheetSig
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack Font.Color = clBlack
Font.Height = -11 Font.Height = -11
@@ -2379,6 +2379,16 @@ object FormConfig: TFormConfig
Font.Style = [fsBold] Font.Style = [fsBold]
ParentFont = False ParentFont = False
end end
object LabelCrois: TLabel
Left = 32
Top = 320
Width = 193
Height = 26
Caption =
'Les croisements re'#231'oivent une adresse m'#234'me s'#39'ils ne sont pas pil' +
'ot'#233's'
WordWrap = True
end
object GroupBox10: TGroupBox object GroupBox10: TGroupBox
Left = 8 Left = 8
Top = 80 Top = 80
@@ -2391,7 +2401,12 @@ object FormConfig: TFormConfig
Top = 16 Top = 16
Width = 57 Width = 57
Height = 17 Height = 17
Hint =
'Affiche un ralen30/rappel 30 sur le signal implant'#233' avant cet ai' +
'guillage'
Caption = 'sans' Caption = 'sans'
ParentShowHint = False
ShowHint = True
TabOrder = 0 TabOrder = 0
OnClick = RadioButtonsansClick OnClick = RadioButtonsansClick
end end
@@ -2400,7 +2415,12 @@ object FormConfig: TFormConfig
Top = 32 Top = 32
Width = 73 Width = 73
Height = 17 Height = 17
Hint =
'Affiche un ralen30/rappel30 sur le signal implant'#233' avant cet aig' +
'uillage'
Caption = '30 km/h' Caption = '30 km/h'
ParentShowHint = False
ShowHint = True
TabOrder = 1 TabOrder = 1
OnClick = RadioButton30kmhClick OnClick = RadioButton30kmhClick
end end
@@ -2409,7 +2429,12 @@ object FormConfig: TFormConfig
Top = 48 Top = 48
Width = 73 Width = 73
Height = 17 Height = 17
Hint =
'Affiche un ralen60/rappel60 sur le signal implant'#233' avant cet aig' +
'uillage'
Caption = '60 km/h' Caption = '60 km/h'
ParentShowHint = False
ShowHint = True
TabOrder = 2 TabOrder = 2
OnClick = RadioButton60kmhClick OnClick = RadioButton60kmhClick
end end
@@ -2676,7 +2701,7 @@ object FormConfig: TFormConfig
end end
object GroupBox21: TGroupBox object GroupBox21: TGroupBox
Left = 8 Left = 8
Top = 304 Top = 352
Width = 273 Width = 273
Height = 97 Height = 97
Caption = 'Initialisation de l'#39'aiguillage en mode autonome' Caption = 'Initialisation de l'#39'aiguillage en mode autonome'
@@ -3086,7 +3111,7 @@ object FormConfig: TFormConfig
Width = 129 Width = 129
Height = 21 Height = 21
Style = csDropDownList Style = csDropDownList
ItemHeight = 0 ItemHeight = 13
TabOrder = 1 TabOrder = 1
OnChange = ComboBoxDecChange OnChange = ComboBoxDecChange
end end
@@ -4218,8 +4243,8 @@ object FormConfig: TFormConfig
ParentShowHint = False ParentShowHint = False
ShowHint = False ShowHint = False
object Label10: TLabel object Label10: TLabel
Left = 16 Left = 8
Top = 33 Top = 41
Width = 317 Width = 317
Height = 13 Height = 13
Caption = 'Liste des commandes envoy'#233'es '#224' l'#39'interface DCC++ '#224' la connexion' Caption = 'Liste des commandes envoy'#233'es '#224' l'#39'interface DCC++ '#224' la connexion'
@@ -4358,15 +4383,18 @@ object FormConfig: TFormConfig
object Label19: TLabel object Label19: TLabel
Left = 8 Left = 8
Top = 8 Top = 8
Width = 276 Width = 538
Height = 13 Height = 26
Caption = 'Configuration de l'#39'interface DCC++ pour le mode autonome' Caption =
'Configuration de l'#39'interface DCC++ pour le mode autonome (n'#233'cess' +
'ite de cocher le protocole DCC++ dans l'#39'onglet "Mode autonome")'
WordWrap = True
end end
object RichCdeDccpp: TRichEdit object RichCdeDccpp: TRichEdit
Left = 8 Left = 8
Top = 48 Top = 64
Width = 577 Width = 577
Height = 241 Height = 225
Color = clBlack Color = clBlack
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clAqua Font.Color = clAqua
@@ -4449,6 +4477,125 @@ object FormConfig: TFormConfig
'age' 'age'
WordWrap = True WordWrap = True
end end
object Image3: TImage
Left = 384
Top = 312
Width = 153
Height = 49
Picture.Data = {
07544269746D6170D20D0000424DD20D00000000000076000000280000009600
00002D00000001000400000000005C0D00000000000000000000100000000000
0000000000000000800000800000008080008000000080008000808000008080
8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
FF00FFFFF70000008FFF80000007FFFFFFFFFFFFFFFFFFFF70000008FFFF0000
007FFFFFFFFFFFFF70000008FFFF0000007FFFFFFFFFFFFFFFFFFFF70000008F
FFF0000007FFFFFFFFFFFFFFFF00FFFF7000000008F8000000000FFFFFFFFFFF
FFFFFFF7000000008FF000000000FFFFFFFFFFF7000000008FF000000000FFFF
FFFFFFFFFFFFFF7000000007FF000000000FFFFFFFFFFFFFFF00FFF800000000
00F00000000008FFFFFFFFFFFFFFFFF0000000000F00000000008FFFFFFFFFF0
000000000F00000000007FFFFFFFFFFFFFFFFF0000000000F70000000007FFFF
FFFFFFFFFF00FFF70000000000800000000000FFFFFFFFFFFFFFFF7000000000
0800000000000FFFFFFFFF70000000000800000000000FFFFFFFFFFFFFFFF700
00000000800000000000FFFFFFFFFFFFFF00FFF00000000000700000000000FF
FFFFFFFFFFFFFF00000000000700000000000FFFFFFFFF000000000007000000
00000FFFFFFFFFFFFFFFF70000000000700000000000FFFFFFFFFFFFFF000000
000000000000000000000000000000000000000000000000000000000000000F
FFF0000000000000000000000000000000000000000000000000000000000000
0000008FFFFFFFFFFF0000000000000000000000000000000000000000000000
00000000000000000000000FFFF0000000000000000000000000000000000000
00000000000000000000000000000007FFFFFFFFFF00008FFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00888F008FFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7007FFFFFFF
FF00008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFF000000008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFF7000FFFFFFFF00008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000008FFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80008FFFFFF00008FFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000008FF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
F0007FFFFF00008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFF00FFFF008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFF0007FFFF00008FFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFF008FFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7000FFF00008F
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00F
FFF008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF80008F0000999999999999999999999999999999999999999999
99999999999999999999900FFFF0099999999999999999999999999999999999
9999999999999999999999999999999999999900080000999999999999999999
99999999999999999999999999999999999999999999900FFFF0099999999999
9999999999999999999999999999999999999999999999999999999999999910
0000009999999999999999999999999999999999999999999999999999999999
9999900FFFF00999999999999999999999999999999999999999999999999999
9999999999999999999991007F00007888888888888888888888888888888888
8888888888888888888888888888800FFFF00788888888888888888888888888
888888888888888888888888888888888888888888881007FF0000FFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFF00FFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFF0007FFF000000000000000000000000000000000000000000000000000000
000000000000000FFFF000000000000000000000000000000000000000000000
000000000000000000000000000008FFFF000000000000000000000000000000
000000000000000000000000000000000000000FFFF000000000000000000000
00000000000000000000000000000000000000000000000000008FFFFF000000
000000000000000000000000000000000000000000000000000000000000000F
FFF0000000000000000000000000000000000000000000000000000000000000
00000000000FFFFFFF000000088FFFFFFF700000088FFFFFFF700000078FFFFF
FF7000000788FFFFFF80000FFFF0000088FFFFFFF700000078FFFFFFF7000000
7888FFFFF8000000000000000000000000FFFFFFFF000004F888FFFFFFF70000
F8888FFFFFF800008F888FFFFFFF00008F888FFFFFFF000FFFF0000F888FFFFF
FF800008F88FFFFFFF800008F88FFFFFFFF0000000000007F8FFF7007FFFFFFF
FF00000888888FFFFFFF000888888FFFFFFF700788888FFFFFFF7007F88888FF
FFFF800FFFF00088888FFFFFFFF7008888888FFFFFF7007888888FFFFFF80000
0000000788FF4007FFFFFFFFFF00000F888888FFFFFF700F88888FFFFFFF8008
888888FFFFFFF00888888FFFFFFFF00FFFF000F88888FFFFFFF8008888888FFF
FFF800888888FFFFFFFF00000000000788F0007FFFFFFFFFFF00006F88888FFF
FFFF700F88888FFFFFFF800F888888FFFFFFF00888888FFFFFFFF00FFFF000F8
8888FFFFFFF8008888888FFFFFFF00888888FFFFFFFF000000000007F80008FF
FFFFFFFFFF00000F888888FFFFFF700888888FFFFFFF7008888888FFFFFF8007
888888FFFFFFF00FFFF000F88888FFFFFFF7008888888FFFFFF8008888888FFF
FFFF0000000000078000FFFFFFFFFFFFFF000007F888FFFFFFFF0007F8888FFF
FFFF0004F888FFFFFFFF0000F8888FFFFFFF700FFFF0007F8888FFFFFFF0007F
8888FFFFFFF0000F8888FFFFFFF7000000000007000FFFFFFFFFFFFFFF000000
7FFFFFFFFF8000007FFFFFFFFFF000007FFFFFFFFFF7000008FFFFFFFFF7000F
FFF00007FFFFFFFFFF000007FFFFFFFFFF000006FFFFFFFFFF70000000000000
00FFFFFFFFFFFFFFFF0000000077777770000000007777777400000000777777
77000000006777777700000FFFF0000007777777000000000777777770000000
0677777770000000000000007FFFFFFFFFFFFFFFFF0000000000000000000000
00000000000000000000000000000000000000000000000FFFF0000000000000
000000000000000000000000000000000000000000000007FFFFFFFFFFFFFFFF
FF00000000000000000000000000000000000000000000000000000000000000
0000000FFFF00000000000000000000000000000000000000000000000000000
0000008FFFFFFFFFFFFFFFFFFF00000000000000000000000000000000000000
0000000000000000000000000000000FFFF00000000000000000000000000000
000000000000000000000000000008FFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF700000000000FFFFFFFFFFFFFFFFFF
FFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF888870
008888FFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFF7007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7007FFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFF0007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFF0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF008FFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF008FFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000
0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFF0000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00}
Transparent = True
end
object RichEditTrains: TRichEdit object RichEditTrains: TRichEdit
Left = 8 Left = 8
Top = 64 Top = 64
+97 -32
View File
@@ -322,6 +322,8 @@ type
Label58: TLabel; Label58: TLabel;
EditFiltrDet: TEdit; EditFiltrDet: TEdit;
CheckBoxVerifXpressNet: TCheckBox; CheckBoxVerifXpressNet: TCheckBox;
LabelCrois: TLabel;
Image3: TImage;
procedure ButtonAppliquerEtFermerClick(Sender: TObject); procedure ButtonAppliquerEtFermerClick(Sender: TObject);
procedure FormActivate(Sender: TObject); procedure FormActivate(Sender: TObject);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
@@ -2861,11 +2863,15 @@ begin
Aiguillage[i].temps:=5; Aiguillage[i].temps:=5;
Aiguillage[i].inversionCDM:=0; Aiguillage[i].inversionCDM:=0;
Aiguillage[i].EtatTJD:=4; Aiguillage[i].EtatTJD:=4;
Aiguillage[i].vitesse:=0;
end; end;
for i:=1 to 1024 do for i:=1 to 1024 do
begin begin
Detecteur[i].etat:=false; Detecteur[i].etat:=false;
//Detecteur[i].train:='0'; Detecteur[i].train:='';
Detecteur[i].AdrTrain:=0;
Detecteur[i].tempo0:=0;
Detecteur[i].IndexTrain:=0;
Ancien_detecteur[i]:=false; Ancien_detecteur[i]:=false;
end; end;
@@ -2943,7 +2949,6 @@ begin
if not(trouve_section_aig) then Affiche('Manque section '+section_aig_ch,clred); if not(trouve_section_aig) then Affiche('Manque section '+section_aig_ch,clred);
if not(trouve_section_sig) then Affiche('Manque section '+section_sig_ch,clred); if not(trouve_section_sig) then Affiche('Manque section '+section_sig_ch,clred);
if not(trouve_section_branche) then Affiche('Manque section '+section_branches_ch,clred); if not(trouve_section_branche) then Affiche('Manque section '+section_branches_ch,clred);
verif_coherence;
end; end;
@@ -3428,6 +3433,9 @@ begin
clicListe:=false; clicListe:=false;
if AvecRoulage=1 then LabelInfVitesse.Visible:=false else LabelInfVitesse.Visible:=true; if AvecRoulage=1 then LabelInfVitesse.Visible:=false else LabelInfVitesse.Visible:=true;
ConfigPrete:=true; ConfigPrete:=true;
groupBox21.Top:=304;
GroupBox21.Left:=8;
end; end;
@@ -3618,6 +3626,7 @@ begin
editP4.Visible:=false; editP4.Visible:=false;
labelTJD1.Visible:=false; labelTJD1.Visible:=false;
labelTJD2.Visible:=false; labelTJD2.Visible:=false;
labelcrois.Visible:=true;
end; end;
// aiguillage normal ou tri // aiguillage normal ou tri
@@ -6528,9 +6537,46 @@ begin
verif_extr_branches:=Erreur; verif_extr_branches:=Erreur;
end; end;
function nombre_adresses_signal(adr : integer) : integer;
var x,dec,nc,i : integer;
begin
nc:=0;
i:=index_feu(adr);
dec:=feux[i].decodeur;
x:=feux[i].aspect;
if x>10 then
begin
nombre_adresses_signal:=x-10;
exit;
end;
// nc=nombre d'adresses du signal
if dec=0 then nc:=0; // rien
if dec=1 then nc:=14; // digitalbahn
if dec=2 then nc:=5; // leb
if dec=3 then nc:=8; // ldt
if dec=4 then nc:=feux[i].Na; // cdf
if dec=5 then nc:=feux[i].Na; // digikeijs
if dec=6 then // paco unisemaf
begin
x:=feux[index].Unisemaf; // modèle
case x of
2 : nc:=1;
3,4 : nc:=2;
51,52 : nc:=3;
71 : nc:=2;
72,73 : nc:=3;
91,92 : nc:=3;
93,94,95,96,97,98,99 : nc:=4;
end;
end;
if dec=7 then nc:=8; // sr
nombre_adresses_signal:=nc;
end;
function verif_coherence : boolean; function verif_coherence : boolean;
var AncAdr,i,j,k,l,Indexaig,adr,adr2,extr,detect,condcarre,nc,index2,SuivAdr, var AncAdr,i,j,k,l,Indexaig,adr,adr2,extr,detect,condcarre,nc,index2,SuivAdr,
x,y,extr2,adr3,index3,det1Br,det2Br,det1index,det2index,adresse,dec : integer; x,y,extr2,adr3,index3,det1Br,det2Br,det1index,det2index,adresse,dec,nc2 : integer;
modAig,AncModel,model,km,SuivModel,model2: TEquipement; modAig,AncModel,model,km,SuivModel,model2: TEquipement;
c : char; c : char;
vitesse : longint; vitesse : longint;
@@ -6670,24 +6716,58 @@ begin
end; end;
end; end;
// cohérence 4 : vérifie si doublon signal // cohérence 4 : vérifie si doublon signal ou si recouvrement avec un autre signal ou un aiguillage
for j:=1 to NbreFeux do for j:=1 to NbreFeux do
begin begin
adr:=feux[j].Adresse; adr:=feux[j].Adresse;
nc:=nombre_adresses_signal(adr);
for i:=1 to maxaiguillage do
begin
adr2:=aiguillage[i].Adresse;
if ((adr2>=adr) and (adr2<=adr+nc-1)) then
begin
affiche('Erreur 9.1 : signal '+intToSTR(adr)+' ('+intToSTR(nc)+' adresses) et aiguillage '+intToSTR(adr2)+' se chevauchent',clred);
ok:=false;
end;
end;
for i:=j+1 to NbreFeux do for i:=j+1 to NbreFeux do
begin begin
if adr=feux[i].Adresse then adr2:=feux[i].Adresse;
nc2:=nombre_adresses_signal(adr2);
if ((adr>adr2) and (adr <adr2+nc2-1)) or
((adr+nc-1>adr2) and (adr+nc-1<adr2+nc2-1))
then
begin begin
affiche('Erreur 9 : signal '+intToSTR(adr)+' défini deux fois',clred); affiche('Erreur 9.2 : signaux '+intToSTR(adr)+' ('+intToSTR(nc)+' adresses) et '+intToStr(adr2)+' ('+intToSTR(nc2)+' adresses) se chevauchent',clred);
ok:=false; ok:=false;
end; end;
end; end;
end; end;
// cohérence 5 ; vérifie si aiguillages définis en condition supplémentaires de carré existent // cohérence 5 ; vérifie si aiguillages définis en condition supplémentaires de carré existent
// vérifie aussi le décodeur digikeijs
for j:=1 to NbreFeux do for j:=1 to NbreFeux do
begin begin
l:=1; l:=1;
nc:=feux[j].decodeur;
if nc=5 then // digikeijs
begin
if feux[j].Na=0 then
begin
Affiche('Erreur 9.3 : signal '+intToSTR(feux[j].adresse)+' : Le nombre d''adresses du décodeur digiKeijs est nul',clred);
ok:=false;
end;
end;
if nc=2 then // cdf
begin
if feux[j].Na=0 then
begin
Affiche('Erreur 9.4 : signal '+intToSTR(feux[j].adresse)+' : Le nombre d''adresses du décodeur CDF est nul',clred);
ok:=false;
end;
end;
repeat repeat
nc:=Length(feux[j].condcarre[l])-1 ; nc:=Length(feux[j].condcarre[l])-1 ;
for k:=1 to nc do for k:=1 to nc do
@@ -7213,7 +7293,7 @@ begin
ok:=false; ok:=false;
end; end;
end; end;
if (i=2) or (i=3) or (i=4) or (i=5) or (i=12) or (i=13) or (i=14) or (i=15) then if (i=2) or (i=3) or (i=4) or (i=5) or (i=12) or (i=13) or (i=14) or (i=15) or (i=21) or (i=22) then
begin begin
adr:=TCO[x,y].adresse; adr:=TCO[x,y].adresse;
if index_aig(adr)=0 then if index_aig(adr)=0 then
@@ -7232,7 +7312,6 @@ begin
trouveSuiv:=adr=Adresse_detecteur[j]; trouveSuiv:=adr=Adresse_detecteur[j];
inc(j); inc(j);
until (j>NDetecteurs) or trouveSuiv; until (j>NDetecteurs) or trouveSuiv;
if not(trouveSuiv) then if not(trouveSuiv) then
begin begin
Affiche('Un détecteur '+IntToSTR(adr)+' est déclaré dans le TCO['+intToSTR(x)+','+intToSTR(y)+'] mais absent de la configuration',clred); Affiche('Un détecteur '+IntToSTR(adr)+' est déclaré dans le TCO['+intToSTR(x)+','+intToSTR(y)+'] mais absent de la configuration',clred);
@@ -7243,7 +7322,7 @@ begin
end; end;
end; end;
// 10 Divers // 11 Divers
i:=pos(':',portcom);j:=pos(',',portcom); i:=pos(':',portcom);j:=pos(',',portcom);
val(copy(portcom,i+1,j-i),vitesse,l); val(copy(portcom,i+1,j-i),vitesse,l);
if (protocole=2) and (vitesse<>115200) then Affiche('La vitesse COM/USB en procotole DCC++ doit être de 115200 bauds',clred); if (protocole=2) and (vitesse<>115200) then Affiche('La vitesse COM/USB en procotole DCC++ doit être de 115200 bauds',clred);
@@ -7265,28 +7344,7 @@ begin
for i:=1 to NbreFeux do for i:=1 to NbreFeux do
begin begin
adresse:=feux[i].Adresse; adresse:=feux[i].Adresse;
dec:=feux[i].decodeur; nc:=Nombre_adresses_signal(adresse);
nc:=1;
// nc=nombre d'adresses du signal
if dec=1 then nc:=14; // digitalbahn
if dec=2 then nc:=5; // leb
if dec=3 then nc:=8; // ldt
if dec=4 then nc:=feux[i].Na; // cdf
if dec=5 then nc:=feux[i].Na; // digikeijs
if dec=6 then // paco unisemaf
begin
x:=feux[index].Unisemaf; // modèle
case x of
2 : nc:=1;
3,4 : nc:=2;
51,52 : nc:=3;
71 : nc:=2;
72,73 : nc:=3;
91,92 : nc:=3;
93,94,95,96,97,98,99 : nc:=4;
end;
end;
if dec=7 then nc:=8; // sr
if (adresse>=257) and (adresse<=272) or ((adresse+nc-1>=257) and (adresse+nc<=272)) then if (adresse>=257) and (adresse<=272) or ((adresse+nc-1>=257) and (adresse+nc<=272)) then
begin begin
@@ -7352,6 +7410,10 @@ begin
aiguillage[i].AdrTrain:=0; aiguillage[i].AdrTrain:=0;
aiguillage[i].posInit:=const_inconnu; aiguillage[i].posInit:=const_inconnu;
aiguillage[i].Temps:=5; aiguillage[i].Temps:=5;
aiguillage[i].position:=const_inconnu;
aiguillage[i].InversionCDM:=0;
aiguillage[i].vitesse:=0;
s:=encode_Aig(i); s:=encode_Aig(i);
if ligneClicAig<>-1 then RE_ColorLine(RichAig,ligneClicAig,ClAqua); if ligneClicAig<>-1 then RE_ColorLine(RichAig,ligneClicAig,ClAqua);
@@ -7861,11 +7923,15 @@ begin
if (aiguillage[i].tjsIntB<>'S') and (aiguillage[i].tjsIntB<>'D') then aiguillage[i].tjsIntB:='D'; if (aiguillage[i].tjsIntB<>'S') and (aiguillage[i].tjsIntB<>'D') then aiguillage[i].tjsIntB:='D';
end; end;
if aiguillage[i].modele=crois then LabelCrois.Visible:=true else LabelCrois.Visible:=false;
s:=encode_aig(i); s:=encode_aig(i);
formconfig.RichAig.Lines[ligneclicAig]:=s; formconfig.RichAig.Lines[ligneclicAig]:=s;
clicliste:=true; clicliste:=true;
Aff_champs_aig_tablo(i); Aff_champs_aig_tablo(i);
clicliste:=false; clicliste:=false;
end; end;
procedure TFormConfig.ButtonValLigneClick(Sender: TObject); procedure TFormConfig.ButtonValLigneClick(Sender: TObject);
@@ -8444,7 +8510,6 @@ procedure TFormConfig.SpeedButtonJoueClick(Sender: TObject);
begin begin
if PlaySound(pchar(EditSon.Text),0,SND_ASYNC)=false then if PlaySound(pchar(EditSon.Text),0,SND_ASYNC)=false then
labelInfo.Caption:='Erreur'; labelInfo.Caption:='Erreur';
end; end;
Binary file not shown.
+28 -11
View File
@@ -3,7 +3,7 @@ object FormConfCellTCO: TFormConfCellTCO
Top = 112 Top = 112
BorderStyle = bsDialog BorderStyle = bsDialog
Caption = 'FormConfCellTCO' Caption = 'FormConfCellTCO'
ClientHeight = 375 ClientHeight = 402
ClientWidth = 251 ClientWidth = 251
Color = clBtnFace Color = clBtnFace
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@@ -12,12 +12,13 @@ object FormConfCellTCO: TFormConfCellTCO
Font.Name = 'MS Sans Serif' Font.Name = 'MS Sans Serif'
Font.Style = [] Font.Style = []
OldCreateOrder = False OldCreateOrder = False
OnActivate = FormActivate
OnCreate = FormCreate OnCreate = FormCreate
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
object ButtonOk: TButton object ButtonOk: TButton
Left = 168 Left = 168
Top = 344 Top = 368
Width = 75 Width = 75
Height = 25 Height = 25
Caption = 'Ok' Caption = 'Ok'
@@ -26,7 +27,7 @@ object FormConfCellTCO: TFormConfCellTCO
end end
object GroupBox1: TGroupBox object GroupBox1: TGroupBox
Left = 8 Left = 8
Top = 240 Top = 264
Width = 233 Width = 233
Height = 97 Height = 97
Caption = 'Texte' Caption = 'Texte'
@@ -87,7 +88,7 @@ object FormConfCellTCO: TFormConfCellTCO
Left = 8 Left = 8
Top = 8 Top = 8
Width = 233 Width = 233
Height = 225 Height = 257
Caption = 'El'#233'ment' Caption = 'El'#233'ment'
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText Font.Color = clWindowText
@@ -122,7 +123,7 @@ object FormConfCellTCO: TFormConfCellTCO
end end
object Label2: TLabel object Label2: TLabel
Left = 168 Left = 168
Top = 22 Top = 14
Width = 48 Width = 48
Height = 16 Height = 16
Caption = 'Adresse : ' Caption = 'Adresse : '
@@ -134,8 +135,8 @@ object FormConfCellTCO: TFormConfCellTCO
ParentFont = False ParentFont = False
end end
object EditTypeImage: TEdit object EditTypeImage: TEdit
Left = 40 Left = 32
Top = 48 Top = 40
Width = 33 Width = 33
Height = 21 Height = 21
Hint = 'Num'#233'ro d'#39'image de l'#39#233'l'#233'ment' Hint = 'Num'#233'ro d'#39'image de l'#39#233'l'#233'ment'
@@ -152,7 +153,7 @@ object FormConfCellTCO: TFormConfCellTCO
end end
object GroupBox3: TGroupBox object GroupBox3: TGroupBox
Left = 8 Left = 8
Top = 80 Top = 112
Width = 209 Width = 209
Height = 73 Height = 73
Caption = 'Orientation du signal' Caption = 'Orientation du signal'
@@ -211,7 +212,7 @@ object FormConfCellTCO: TFormConfCellTCO
end end
object GroupBox4: TGroupBox object GroupBox4: TGroupBox
Left = 8 Left = 8
Top = 160 Top = 192
Width = 209 Width = 209
Height = 57 Height = 57
Caption = 'Implantation du signal' Caption = 'Implantation du signal'
@@ -255,7 +256,7 @@ object FormConfCellTCO: TFormConfCellTCO
end end
object EditAdrElement: TEdit object EditAdrElement: TEdit
Left = 176 Left = 176
Top = 48 Top = 40
Width = 33 Width = 33
Height = 24 Height = 24
Hint = 'Adresse DCC de l'#39#233'l'#233'ment' Hint = 'Adresse DCC de l'#39#233'l'#233'ment'
@@ -264,10 +265,26 @@ object FormConfCellTCO: TFormConfCellTCO
TabOrder = 3 TabOrder = 3
OnKeyPress = EditAdrElementKeyPress OnKeyPress = EditAdrElementKeyPress
end end
object ButtonFond: TButton
Left = 16
Top = 72
Width = 97
Height = 33
Caption = 'Couleur de fond de la cellule'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
TabOrder = 4
WordWrap = True
OnClick = ButtonFondClick
end
end end
object CheckPinv: TCheckBox object CheckPinv: TCheckBox
Left = 8 Left = 8
Top = 352 Top = 368
Width = 129 Width = 129
Height = 17 Height = 17
Hint = 'Cocher si l'#39'aiguillage est repr'#233'sent'#233' invers'#233 Hint = 'Cocher si l'#39'aiguillage est repr'#233'sent'#233' invers'#233
+16 -2
View File
@@ -28,6 +28,7 @@ type
RadioButtonG: TRadioButton; RadioButtonG: TRadioButton;
RadioButtonD: TRadioButton; RadioButtonD: TRadioButton;
EditAdrElement: TEdit; EditAdrElement: TEdit;
ButtonFond: TButton;
procedure ButtonOkClick(Sender: TObject); procedure ButtonOkClick(Sender: TObject);
procedure EditTypeImageKeyPress(Sender: TObject; var Key: Char); procedure EditTypeImageKeyPress(Sender: TObject; var Key: Char);
procedure EditAdrElementChange(Sender: TObject); procedure EditAdrElementChange(Sender: TObject);
@@ -42,6 +43,8 @@ type
procedure RadioButtonGClick(Sender: TObject); procedure RadioButtonGClick(Sender: TObject);
procedure RadioButtonDClick(Sender: TObject); procedure RadioButtonDClick(Sender: TObject);
procedure EditAdrElementKeyPress(Sender: TObject; var Key: Char); procedure EditAdrElementKeyPress(Sender: TObject; var Key: Char);
procedure ButtonFondClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
private private
{ Déclarations privées } { Déclarations privées }
public public
@@ -250,7 +253,7 @@ end;
procedure TFormConfCellTCO.EditTexteCCTCOChange(Sender: TObject); procedure TFormConfCellTCO.EditTexteCCTCOChange(Sender: TObject);
begin begin
PCanvasTCO.Brush.Color:=fond; PCanvasTCO.Brush.Color:=clfond;
if Tco[XClicCell,YClicCell].texte='' then if Tco[XClicCell,YClicCell].texte='' then
begin begin
@@ -276,7 +279,7 @@ var i,x,y : integer;
begin begin
// fenetre toujours dessus // fenetre toujours dessus
actualize:=false; actualize:=false;
SetWindowPos(Handle, HWND_TOPMOST,0,0,0,0,SWP_NoMove or SWP_NoSize); SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NoMove or SWP_NoSize);
exit; exit;
// dessine les composants - non utilisé // dessine les composants - non utilisé
@@ -409,4 +412,15 @@ begin
end; end;
end; end;
procedure TFormConfCellTCO.ButtonFondClick(Sender: TObject);
begin
change_couleur_fond;
end;
procedure TFormConfCellTCO.FormActivate(Sender: TObject);
begin
if selectionaffichee then ButtonFond.caption:='Couleur de fond de la sélection'
else ButtonFond.caption:='Couleur de fond de la cellule';
end;
end. end.
BIN
View File
Binary file not shown.
+24 -6
View File
@@ -134,11 +134,13 @@ object FormConfigTCO: TFormConfigTCO
OnClick = ImageFondClick OnClick = ImageFondClick
end end
object Label6: TLabel object Label6: TLabel
Left = 30 Left = 32
Top = 80 Top = 72
Width = 75 Width = 76
Height = 13 Height = 26
Caption = 'Couleur de fond' Alignment = taRightJustify
Caption = 'Couleur de fond par d'#233'faut'
WordWrap = True
end end
object ImageGrille: TImage object ImageGrille: TImage
Left = 128 Left = 128
@@ -218,12 +220,28 @@ object FormConfigTCO: TFormConfigTCO
OnClick = ImageQuaiClick OnClick = ImageQuaiClick
end end
object Label13: TLabel object Label13: TLabel
Left = 206 Left = 214
Top = 80 Top = 80
Width = 74 Width = 74
Height = 13 Height = 13
Caption = 'Couleur de quai' Caption = 'Couleur de quai'
end end
object Label1: TLabel
Left = 184
Top = 120
Width = 102
Height = 26
Alignment = taRightJustify
Caption = 'Couleur des pieds de signaux'
WordWrap = True
end
object ImagePiedFeu: TImage
Left = 296
Top = 112
Width = 41
Height = 41
OnClick = ImagePiedFeuClick
end
object CheckCouleur: TCheckBox object CheckCouleur: TCheckBox
Left = 56 Left = 56
Top = 208 Top = 208
+53 -27
View File
@@ -41,6 +41,8 @@ type
Ratio: TLabel; Ratio: TLabel;
Label14: TLabel; Label14: TLabel;
CheckCouleur: TCheckBox; CheckCouleur: TCheckBox;
Label1: TLabel;
ImagePiedFeu: TImage;
procedure ButtonOKClick(Sender: TObject); procedure ButtonOKClick(Sender: TObject);
procedure ButtonDessineClick(Sender: TObject); procedure ButtonDessineClick(Sender: TObject);
procedure FormActivate(Sender: TObject); procedure FormActivate(Sender: TObject);
@@ -52,6 +54,7 @@ type
procedure ColorDialog1Show(Sender: TObject); procedure ColorDialog1Show(Sender: TObject);
procedure ImageTexteClick(Sender: TObject); procedure ImageTexteClick(Sender: TObject);
procedure ImageQuaiClick(Sender: TObject); procedure ImageQuaiClick(Sender: TObject);
procedure ImagePiedFeuClick(Sender: TObject);
private private
{ Déclarations privées } { Déclarations privées }
public public
@@ -75,8 +78,8 @@ var r : Trect;
begin begin
with FormConfigTCO.ImageAig do with FormConfigTCO.ImageAig do
begin begin
canvas.Pen.color:=fond; canvas.Pen.color:=clfond;
canvas.Brush.Color:=fond; canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height); canvas.Rectangle(0,0,Width,Height);
canvas.pen.color:=clVoies; canvas.pen.color:=clVoies;
@@ -96,22 +99,24 @@ end;
procedure dessine_icones; procedure dessine_icones;
var r : Trect; var r : Trect;
x1,x2,jy1,jy2 : integer; x1,y1,x2,y2,jy1,jy2,larg,haut : integer;
begin begin
// 1 // 1
icone_aig; icone_aig;
// 2 // 2
with formConfigTCO.ImageFond do with formConfigTCO.ImageFond do
begin begin
canvas.Pen.color:=fond; larg:=width ;
canvas.Brush.Color:=fond; haut:=height;
canvas.Pen.color:=clfond;
canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height); canvas.Rectangle(0,0,Width,Height);
end; end;
// 3 // 3
with formConfigTCO.ImageGrille do with formConfigTCO.ImageGrille do
begin begin
canvas.Pen.color:=fond; canvas.Pen.color:=clfond;
canvas.Brush.Color:=fond; canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height); canvas.Rectangle(0,0,Width,Height);
canvas.Pen.color:=ClGrille; canvas.Pen.color:=ClGrille;
canvas.moveto(0,5); canvas.LineTo(width,5); canvas.moveto(0,5); canvas.LineTo(width,5);
@@ -120,8 +125,8 @@ begin
// 4 détecteur // 4 détecteur
with formConfigTCO.ImageDetAct do with formConfigTCO.ImageDetAct do
begin begin
canvas.Pen.color:=fond; canvas.Pen.color:=clfond;
canvas.Brush.Color:=fond; canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height); canvas.Rectangle(0,0,Width,Height);
canvas.Brush.Color:=clAllume; canvas.Brush.Color:=clAllume;
@@ -140,8 +145,8 @@ begin
// 5 canton // 5 canton
with formCOnfigTCO.Imagecanton do with formCOnfigTCO.Imagecanton do
begin begin
canvas.Pen.color:=fond; canvas.Pen.color:=clfond;
canvas.Brush.Color:=fond; canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height); canvas.Rectangle(0,0,Width,Height);
canvas.pen.color:=clCanton; canvas.pen.color:=clCanton;
@@ -154,8 +159,8 @@ begin
//6 texte //6 texte
with formCOnfigTCO.ImageTexte do with formCOnfigTCO.ImageTexte do
begin begin
canvas.Pen.color:=fond; canvas.Pen.color:=clfond;
canvas.Brush.Color:=fond; canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height); canvas.Rectangle(0,0,Width,Height);
canvas.Font.color:=clTexte; canvas.Font.color:=clTexte;
canvas.Pen.mode:=pmCopy; canvas.Pen.mode:=pmCopy;
@@ -165,19 +170,36 @@ begin
//Quai //Quai
with formconfigTCO.ImageQuai do with formconfigTCO.ImageQuai do
begin begin
canvas.Pen.color:=fond; canvas.Pen.color:=clfond;
canvas.Brush.Color:=fond; canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height); canvas.Rectangle(0,0,Width,Height);
canvas.Brush.Color:=clQuai; canvas.Brush.Color:=clQuai;
canvas.pen.color:=clQuai; canvas.pen.color:=clQuai;
x1:=0; x1:=0;
x2:=x1+width; x2:=x1+width;
jy1:=(HauteurCell div 2)-round(6*frYGlob); // pos Y de la bande sup jy1:=(Haut div 2)-round(12*frYGlob); // pos Y de la bande sup
jy2:=(HauteurCell div 2)+round(6*frYGlob); // pos Y de la bande inf jy2:=(Haut div 2)+round(12*frYGlob); // pos Y de la bande inf
canvas.PolyGon([point(x1,jy1),point(x2,jy1),point(x2,jy2),point(x1,jy2)]); canvas.PolyGon([point(x1,jy1),point(x2,jy1),point(x2,jy2),point(x1,jy2)]);
end; end;
// pied signal
with formconfigTCO.ImagePiedFeu do
begin
canvas.Pen.color:=clfond;
canvas.Brush.Color:=clfond;
canvas.Rectangle(0,0,Width,Height);
canvas.Brush.Color:=clPiedSignal;
canvas.pen.color:=clPiedSignal;
canvas.Pen.Width:=2;
x1:=Larg div 2;
y1:=0;
canvas.moveTo(x1,y1);
y2:=HauteurCell div 2;
canvas.LineTo(x1,y2);
canvas.LineTo(x1-10,y2);
end;
end; end;
function verif_config_TCO : boolean; // renvoie true si ok function verif_config_TCO : boolean; // renvoie true si ok
@@ -240,7 +262,6 @@ end;
procedure TFormConfigTCO.ButtonOKClick(Sender: TObject); procedure TFormConfigTCO.ButtonOKClick(Sender: TObject);
var ok : boolean; var ok : boolean;
larg,haut : integer;
begin begin
ok:=true; ok:=true;
@@ -326,11 +347,11 @@ end;
procedure TFormConfigTCO.ImageFondClick(Sender: TObject); procedure TFormConfigTCO.ImageFondClick(Sender: TObject);
begin begin
titre_couleur:='Changer la couleur de fond'; titre_couleur:='Changer la couleur de fond';
ColorDialog1.Color:=fond; ColorDialog1.Color:=clfond;
if ColorDialog1.execute then if ColorDialog1.execute then
begin begin
fond:=ColorDialog1.Color; clfond:=ColorDialog1.Color;
TCO_modifie:=true; TCO_modifie:=true;
dessine_icones; dessine_icones;
end; end;
@@ -398,6 +419,18 @@ begin
end; end;
end; end;
procedure TFormConfigTCO.ImagePiedFeuClick(Sender: TObject);
begin
titre_couleur:='Changer la couleur du pied du signal';
ColorDialog1.Color:=clPiedSignal;
if ColorDialog1.execute then
begin
clPiedSignal:=ColorDialog1.Color;
dessine_icones;
end;
end;
// change le titre de la fenêtre de choix des couleurs à son ouverture // change le titre de la fenêtre de choix des couleurs à son ouverture
procedure TFormConfigTCO.ColorDialog1Show(Sender: TObject); procedure TFormConfigTCO.ColorDialog1Show(Sender: TObject);
begin begin
@@ -406,11 +439,4 @@ end;
end. end.
BIN
View File
Binary file not shown.
+12 -13
View File
@@ -282,7 +282,6 @@ begin
for i:=1 to N_Event_tick do for i:=1 to N_Event_tick do
begin begin
begin begin
j:=event_det_tick[i].adresse; j:=event_det_tick[i].adresse;
etat:=event_det_tick[i].etat; etat:=event_det_tick[i].etat;
@@ -394,7 +393,7 @@ begin
end; end;
procedure TFormDebug.Button2Click(Sender: TObject); procedure TFormDebug.Button2Click(Sender: TObject);
var Adr,erreur,ancdebug,trainreseve : integer ; var Adr,erreur,ancdebug : integer ;
reservetraintiers : boolean; reservetraintiers : boolean;
begin begin
Val(EditSigSuiv.Text,Adr,erreur); if erreur<>0 then exit; Val(EditSigSuiv.Text,Adr,erreur); if erreur<>0 then exit;
@@ -415,7 +414,7 @@ end;
// pour déplacer l'ascenseur de l'affichage automatiquement en bas // pour déplacer l'ascenseur de l'affichage automatiquement en bas
procedure TFormDebug.RichDebugChange(Sender: TObject); procedure TFormDebug.RichDebugChange(Sender: TObject);
begin begin
SendMessage(RichDebug.handle, WM_VSCROLL, SB_BOTTOM, 0); SendMessage(RichDebug.handle,WM_VSCROLL,SB_BOTTOM,0);
end; end;
procedure TFormDebug.ButtonSimuDet0Click(Sender: TObject); procedure TFormDebug.ButtonSimuDet0Click(Sender: TObject);
@@ -485,19 +484,11 @@ begin
if Adr<9995 then if Adr<9995 then
begin begin
s:='L''élément suivant aux éléments '+IntToSTR(prec)+'/'+IntToSTR(actuel)+' est '+IntToSTR(Adr)+' '; s:='L''élément suivant aux éléments '+IntToSTR(prec)+'/'+IntToSTR(actuel)+' est '+IntToSTR(Adr)+' ';
case typeGen of s:=s+BTypeToChaine(typeGen);
aig : s:=s+'aiguillage';
tjd : s:=s+'tjd';
tjs : s:=s+'tjs';
triple : s:=s+'triple';
det : s:=s+'détecteur';
buttoir : s:=s+'buttoir';
end;
AfficheDebug(s,clYellow); AfficheDebug(s,clYellow);
end end
else AfficheDebug('Pas trouvé d''élement suvant aux éléments '+IntToSTR(prec)+'/'+IntToSTR(actuel),clyellow); else AfficheDebug('Pas trouvé d''élement suivant aux éléments '+IntToSTR(prec)+'/'+IntToSTR(actuel),clyellow);
NivDebug:=AncDebug; NivDebug:=AncDebug;
end; end;
procedure TFormDebug.CheckBox1Click(Sender: TObject); procedure TFormDebug.CheckBox1Click(Sender: TObject);
@@ -540,6 +531,8 @@ begin
// pilotage par USB ou par éthernet de la centrale ------------ // pilotage par USB ou par éthernet de la centrale ------------
if (hors_tension=false) and (portCommOuvert or parSocketLenz) then if (hors_tension=false) and (portCommOuvert or parSocketLenz) then
begin
if protocole=1 then
begin begin
groupe:=(adr-1) div 4; groupe:=(adr-1) div 4;
fonction:=((adr-1) mod 4)*2 + (sortie-1); fonction:=((adr-1) mod 4)*2 + (sortie-1);
@@ -548,6 +541,8 @@ begin
s:=checksum(s); s:=checksum(s);
envoi(s); // envoi de la trame et attente Ack envoi(s); // envoi de la trame et attente Ack
end; end;
if protocole=2 then AfficheDebug('D10: Commande DCC++ pas encore implantée',clred);
end;
Self.ActiveControl:=nil; Self.ActiveControl:=nil;
end; end;
@@ -582,6 +577,8 @@ begin
// pilotage par USB ou par éthernet de la centrale ------------ // pilotage par USB ou par éthernet de la centrale ------------
if (hors_tension=false) and (portCommOuvert or parSocketLenz) then if (hors_tension=false) and (portCommOuvert or parSocketLenz) then
begin
if protocole=1 then
begin begin
groupe:=(adr-1) div 4; groupe:=(adr-1) div 4;
fonction:=((adr-1) mod 4)*2 + (sortie-1); fonction:=((adr-1) mod 4)*2 + (sortie-1);
@@ -590,6 +587,8 @@ begin
s:=checksum(s); s:=checksum(s);
envoi(s); // envoi de la trame et attente Ack envoi(s); // envoi de la trame et attente Ack
end; end;
if protocole=2 then AfficheDebug('D11: Commande DCC++ pas encore implantée',clred)
end;
Self.ActiveControl:=nil; Self.ActiveControl:=nil;
end; end;
BIN
View File
Binary file not shown.
-381
View File
@@ -1,381 +0,0 @@
object FormDigikeijs: TFormDigikeijs
Left = 362
Top = 124
BorderStyle = bsDialog
Caption = 'Configuration du d'#233'codeur Digikeijs 4018'
ClientHeight = 442
ClientWidth = 344
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
OnActivate = FormActivate
PixelsPerInch = 96
TextHeight = 13
object LabelTitre: TLabel
Left = 16
Top = 8
Width = 63
Height = 19
Caption = 'Adresse'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object Label1: TLabel
Left = 8
Top = 136
Width = 32
Height = 13
Caption = 'Label1'
end
object Label2: TLabel
Left = 8
Top = 160
Width = 32
Height = 13
Caption = 'Label2'
end
object Label3: TLabel
Left = 8
Top = 184
Width = 32
Height = 13
Caption = 'Label3'
end
object Label4: TLabel
Left = 8
Top = 208
Width = 32
Height = 13
Caption = 'Label4'
end
object Label5: TLabel
Left = 8
Top = 232
Width = 32
Height = 13
Caption = 'Label5'
end
object Label6: TLabel
Left = 8
Top = 256
Width = 32
Height = 13
Caption = 'Label6'
end
object Label7: TLabel
Left = 8
Top = 280
Width = 32
Height = 13
Caption = 'Label7'
end
object Label8: TLabel
Left = 8
Top = 304
Width = 32
Height = 13
Caption = 'Label8'
end
object Label9: TLabel
Left = 8
Top = 328
Width = 32
Height = 13
Caption = 'Label9'
end
object Label10: TLabel
Left = 8
Top = 352
Width = 38
Height = 13
Caption = 'Label10'
end
object Label11: TLabel
Left = 184
Top = 160
Width = 38
Height = 13
Caption = 'Label11'
end
object Label12: TLabel
Left = 184
Top = 184
Width = 38
Height = 13
Caption = 'Label12'
end
object Label13: TLabel
Left = 184
Top = 208
Width = 38
Height = 13
Caption = 'Label13'
end
object Label14: TLabel
Left = 184
Top = 232
Width = 38
Height = 13
Caption = 'Label14'
end
object Label15: TLabel
Left = 184
Top = 256
Width = 38
Height = 13
Caption = 'Label15'
end
object Label16: TLabel
Left = 184
Top = 280
Width = 38
Height = 13
Caption = 'Label16'
end
object Label17: TLabel
Left = 184
Top = 304
Width = 38
Height = 13
Caption = 'Label17'
end
object Label18: TLabel
Left = 184
Top = 328
Width = 38
Height = 13
Caption = 'Label18'
end
object Label19: TLabel
Left = 184
Top = 352
Width = 38
Height = 13
Caption = 'Label19'
end
object ImageDigi: TImage
Left = 240
Top = 16
Width = 57
Height = 97
end
object Shape1: TShape
Left = 168
Top = 112
Width = 2
Height = 273
end
object Label20: TLabel
Left = 24
Top = 48
Width = 184
Height = 26
Caption =
'Tables d'#39'aspects du signal en fonction du motif envoy'#233' au d'#233'code' +
'ur Digikeijs'
WordWrap = True
end
object Label21: TLabel
Left = 120
Top = 112
Width = 29
Height = 13
Caption = 'Motif'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Label22: TLabel
Left = 296
Top = 136
Width = 29
Height = 13
Caption = 'Motif'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Button1: TButton
Left = 128
Top = 408
Width = 75
Height = 25
Caption = 'Fermer'
TabOrder = 0
OnClick = Button1Click
end
object Edit1: TEdit
Left = 120
Top = 136
Width = 25
Height = 21
TabOrder = 1
OnChange = Edit1Change
end
object Edit2: TEdit
Left = 120
Top = 160
Width = 25
Height = 21
TabOrder = 2
OnChange = Edit2Change
end
object Edit3: TEdit
Left = 120
Top = 184
Width = 25
Height = 21
TabOrder = 3
OnChange = Edit3Change
end
object Edit4: TEdit
Left = 120
Top = 208
Width = 25
Height = 21
TabOrder = 4
OnChange = Edit4Change
end
object Edit5: TEdit
Left = 120
Top = 232
Width = 25
Height = 21
TabOrder = 5
OnChange = Edit5Change
end
object Edit6: TEdit
Left = 120
Top = 256
Width = 25
Height = 21
TabOrder = 6
OnChange = Edit6Change
end
object Edit7: TEdit
Left = 120
Top = 280
Width = 25
Height = 21
TabOrder = 7
OnChange = Edit7Change
end
object Edit8: TEdit
Left = 120
Top = 304
Width = 25
Height = 21
TabOrder = 8
OnChange = Edit8Change
end
object Edit9: TEdit
Left = 120
Top = 328
Width = 25
Height = 21
TabOrder = 9
OnChange = Edit9Change
end
object Edit10: TEdit
Left = 120
Top = 352
Width = 25
Height = 21
TabOrder = 10
OnChange = Edit10Change
end
object Edit11: TEdit
Left = 296
Top = 160
Width = 25
Height = 21
TabOrder = 11
OnChange = Edit11Change
end
object Edit12: TEdit
Left = 296
Top = 184
Width = 25
Height = 21
TabOrder = 12
OnChange = Edit12Change
end
object Edit13: TEdit
Left = 296
Top = 208
Width = 25
Height = 21
TabOrder = 13
OnChange = Edit13Change
end
object Edit14: TEdit
Left = 296
Top = 232
Width = 25
Height = 21
TabOrder = 14
OnChange = Edit14Change
end
object Edit15: TEdit
Left = 296
Top = 256
Width = 25
Height = 21
TabOrder = 15
OnChange = Edit15Change
end
object Edit16: TEdit
Left = 296
Top = 280
Width = 25
Height = 21
TabOrder = 16
OnChange = Edit16Change
end
object Edit17: TEdit
Left = 296
Top = 304
Width = 25
Height = 21
TabOrder = 17
OnChange = Edit17Change
end
object Edit18: TEdit
Left = 296
Top = 328
Width = 25
Height = 21
TabOrder = 18
OnChange = Edit18Change
end
object Edit19: TEdit
Left = 296
Top = 352
Width = 25
Height = 21
TabOrder = 19
OnChange = Edit19Change
end
object CheckMotif: TCheckBox
Left = 16
Top = 88
Width = 169
Height = 17
Caption = 'Inversion du sens du motif'
TabOrder = 20
end
end
-355
View File
@@ -1,355 +0,0 @@
unit UnitDigikeijs;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, UnitConfig,UnitPrinc ;
type
TFormDigikeijs = class(TForm)
Button1: TButton;
LabelTitre: TLabel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
ImageDigi: TImage;
Edit1: TEdit;
Shape1: TShape;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Edit11: TEdit;
Edit12: TEdit;
Edit13: TEdit;
Edit14: TEdit;
Edit15: TEdit;
Edit16: TEdit;
Edit17: TEdit;
Edit18: TEdit;
Edit19: TEdit;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
CheckMotif: TCheckBox;
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure Edit3Change(Sender: TObject);
procedure Edit4Change(Sender: TObject);
procedure Edit5Change(Sender: TObject);
procedure Edit6Change(Sender: TObject);
procedure Edit7Change(Sender: TObject);
procedure Edit8Change(Sender: TObject);
procedure Edit9Change(Sender: TObject);
procedure Edit10Change(Sender: TObject);
procedure Edit11Change(Sender: TObject);
procedure Edit12Change(Sender: TObject);
procedure Edit13Change(Sender: TObject);
procedure Edit14Change(Sender: TObject);
procedure Edit15Change(Sender: TObject);
procedure Edit16Change(Sender: TObject);
procedure Edit17Change(Sender: TObject);
procedure Edit18Change(Sender: TObject);
procedure Edit19Change(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
FormDigikeijs: TFormDigikeijs;
Adresse,Index : integer;
implementation
{$R *.dfm}
procedure TFormDigikeijs.Button1Click(Sender: TObject);
begin
InverseMotif:=checkMotif.Checked;
close;
end;
procedure TFormDigikeijs.FormActivate(Sender: TObject);
var erreur : integer;
begin
Val(FormConfig.EditAdrSig.text,Adresse,erreur);
index:=index_feu(Adresse);
LabelTitre.caption:='Adresse du signal: '+intToSTR(adresse);
Label1.caption:=etats[1];
Label2.caption:=etats[2];
Label3.caption:=etats[3];
Label4.caption:=etats[4];
Label5.caption:=etats[5];
Label6.caption:=etats[6];
Label7.caption:=etats[7];
Label8.caption:=etats[8];
Label9.caption:=etats[9];
Label10.caption:=etats[10];
Label11.caption:=etats[11];
Label12.caption:=etats[12];
Label13.caption:=etats[13];
Label14.caption:=etats[14];
Label15.caption:=etats[15];
Label16.caption:=etats[16];
Label17.caption:=etats[17];
Label18.caption:=etats[18];
Label19.caption:=etats[19];
ImageDigi.Picture:=FormConfig.ImageSignal.Picture;
with ImageDigi.Picture do
begin
Bitmap.TransparentMode:=tmAuto;
Bitmap.TransparentColor:=clblue;
end;
ImageDigi.Transparent:=true;
Edit1.Text:=intToSTR(Feux[index].SR[1].sortie1); // carré
Edit2.Text:=intToSTR(Feux[index].SR[2].sortie1); // sémaphore
Edit3.Text:=intToSTR(Feux[index].SR[3].sortie1); // sémaphore cli
Edit4.Text:=intToSTR(Feux[index].SR[4].sortie1);
Edit5.Text:=intToSTR(Feux[index].SR[5].sortie1);
Edit6.Text:=intToSTR(Feux[index].SR[6].sortie1);
Edit7.Text:=intToSTR(Feux[index].SR[7].sortie1);
Edit8.Text:=intToSTR(Feux[index].SR[8].sortie1);
Edit9.Text:=intToSTR(Feux[index].SR[9].sortie1);
Edit10.Text:=intToSTR(Feux[index].SR[10].sortie1);
Edit11.Text:=intToSTR(Feux[index].SR[11].sortie1);
Edit12.Text:=intToSTR(Feux[index].SR[12].sortie1);
Edit13.Text:=intToSTR(Feux[index].SR[13].sortie1);
Edit14.Text:=intToSTR(Feux[index].SR[14].sortie1);
Edit15.Text:=intToSTR(Feux[index].SR[15].sortie1);
Edit16.Text:=intToSTR(Feux[index].SR[16].sortie1);
Edit17.Text:=intToSTR(Feux[index].SR[17].sortie1);
Edit18.Text:=intToSTR(Feux[index].SR[18].sortie1);
Edit19.Text:=intToSTR(Feux[index].SR[19].sortie1);
CheckMotif.checked:=InverseMotif;
end;
procedure Maj_DB;
var s : string;
begin
s:=encode_sig_feux(index);
formconfig.RichSig.Lines[index-1]:=s;
aff_champs_sig_feux(index);
end;
procedure TFormDigikeijs.Edit1Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit1.Text,Feux[index].SR[1].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit2Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit2.Text,Feux[index].SR[2].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit3Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit3.Text,Feux[index].SR[3].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit4Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit4.Text,Feux[index].SR[4].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit5Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit5.Text,Feux[index].SR[5].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit6Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit6.Text,Feux[index].SR[6].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit7Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit7.Text,Feux[index].SR[7].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit8Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit8.Text,Feux[index].SR[8].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit9Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit9.Text,Feux[index].SR[9].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit10Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit10.Text,Feux[index].SR[10].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit11Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit11.Text,Feux[index].SR[11].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit12Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit12.Text,Feux[index].SR[12].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit13Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit13.Text,Feux[index].SR[13].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit14Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit14.Text,Feux[index].SR[14].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit15Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit15.Text,Feux[index].SR[15].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit16Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit16.Text,Feux[index].SR[16].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit17Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit17.Text,Feux[index].SR[17].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit18Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit18.Text,Feux[index].SR[18].sortie1,erreur);
Maj_DB;
end;
end;
procedure TFormDigikeijs.Edit19Change(Sender: TObject);
var erreur : integer;
begin
if index<>0 then
begin
val(Edit19.Text,Feux[index].SR[19].sortie1,erreur);
Maj_DB;
end;
end;
end.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+14 -4
View File
@@ -1,6 +1,6 @@
object FormPrinc: TFormPrinc object FormPrinc: TFormPrinc
Left = 48 Left = 59
Top = 231 Top = 174
Width = 1213 Width = 1213
Height = 670 Height = 670
Caption = 'Signaux complexes' Caption = 'Signaux complexes'
@@ -18,7 +18,7 @@ object FormPrinc: TFormPrinc
OnCreate = FormCreate OnCreate = FormCreate
DesignSize = ( DesignSize = (
1197 1197
612) 611)
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
object LabelTitre: TLabel object LabelTitre: TLabel
@@ -1200,6 +1200,16 @@ object FormPrinc: TFormPrinc
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
end end
object Splitter: TSplitter
Left = 0
Top = 0
Width = 5
Height = 589
Color = clWindowFrame
ParentColor = False
Visible = False
OnMoved = SplitterMoved
end
object ScrollBox1: TScrollBox object ScrollBox1: TScrollBox
Left = 632 Left = 632
Top = 192 Top = 192
@@ -1263,7 +1273,7 @@ object FormPrinc: TFormPrinc
end end
object StatusBar1: TStatusBar object StatusBar1: TStatusBar
Left = 0 Left = 0
Top = 590 Top = 589
Width = 1197 Width = 1197
Height = 22 Height = 22
Panels = <> Panels = <>
+64 -58
View File
@@ -157,6 +157,7 @@ type
SBMarcheArretLoco: TSpeedButton; SBMarcheArretLoco: TSpeedButton;
Label1: TLabel; Label1: TLabel;
LabelNbTrains: TLabel; LabelNbTrains: TLabel;
Splitter: TSplitter;
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure MSCommUSBLenzComm(Sender: TObject); procedure MSCommUSBLenzComm(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormClose(Sender: TObject; var Action: TCloseAction);
@@ -233,6 +234,7 @@ type
procedure RazResaClick(Sender: TObject); procedure RazResaClick(Sender: TObject);
procedure SBMarcheArretLocoClick(Sender: TObject); procedure SBMarcheArretLocoClick(Sender: TObject);
procedure EditAdrTrainChange(Sender: TObject); procedure EditAdrTrainChange(Sender: TObject);
procedure SplitterMoved(Sender: TObject);
private private
{ Déclarations privées } { Déclarations privées }
procedure DoHint(Sender : Tobject); procedure DoHint(Sender : Tobject);
@@ -361,7 +363,7 @@ TFeu = record
modifie : boolean; // feu modifié modifie : boolean; // feu modifié
EtatSignal : word ; // état du signal EtatSignal : word ; // état du signal
AncienEtat : word ; // ancien état du signal AncienEtat : word ; // ancien état du signal
UniSemaf : integer ; // définition supplémentaire de la cible pour les décodeurs UNISEMAF ou du préréglage pour digikeijs UniSemaf : integer ; // définition supplémentaire de la cible pour les décodeurs UNISEMAF
AigDirection : array[1..7] of array of record // pour les signaux directionnels : contient la liste des aiguillages associés AigDirection : array[1..7] of array of record // pour les signaux directionnels : contient la liste des aiguillages associés
Adresse : integer; // 6 feux max associés à un tableau dynamique décrivant les aiguillages +1 position 0 Adresse : integer; // 6 feux max associés à un tableau dynamique décrivant les aiguillages +1 position 0
posAig : char; posAig : char;
@@ -371,10 +373,10 @@ TFeu = record
Adresse : integer; // aiguillage Adresse : integer; // aiguillage
posAig : char; posAig : char;
end; end;
SR : array[1..19] of record // configuration du décodeur Stéphane Ravaut : 8 valeurs maxi SR : array[1..19] of record // configuration du décodeur Stéphane Ravaut ou digikeijs ou cdf
sortie1,sortie0 : integer; sortie1,sortie0 : integer;
end; end;
Na : integer; // nombre d'adresses du feu occupées par le décodeur CDF Na : integer; // nombre d'adresses du feu occupées par le décodeur CDF/digikeijs
end; end;
@@ -382,7 +384,7 @@ var
maxaiguillage,detecteur_chgt,Temps,Tempo_init,Suivant,ntrains,MaxPortCom, maxaiguillage,detecteur_chgt,Temps,Tempo_init,Suivant,ntrains,MaxPortCom,
N_Cv,index_simule,NDetecteurs,N_Trains,N_routes,espY,Tps_affiche_retour_dcc, N_Cv,index_simule,NDetecteurs,N_Trains,N_routes,espY,Tps_affiche_retour_dcc,
NbreImagePligne,NbreBranches,Index2_det,Index2_aig,branche_det,ntrains_cdm, NbreImagePligne,NbreBranches,Index2_det,Index2_aig,branche_det,ntrains_cdm,
I_simule,maxTablo_act,NbreVoies,El_suivant,N_modules_dcc,NbDet1, I_simule,maxTablo_act,NbreVoies,El_suivant,N_modules_dcc,NbDet1,ncrois,
tempsCli,NbreFeux,pasreponse,AdrDevie,fenetre,Tempo_Aig,Tempo_feu,etat_init_interface, tempsCli,NbreFeux,pasreponse,AdrDevie,fenetre,Tempo_Aig,Tempo_feu,etat_init_interface,
NombreImages,signalCpx,branche_trouve,Indexbranche_trouve,Actuel,Signal_suivant, NombreImages,signalCpx,branche_trouve,Indexbranche_trouve,Actuel,Signal_suivant,
Nbre_recu_cdm,Tempo_chgt_feux,Adj1,Adj2,NbrePN,ServeurInterfaceCDM,index_couleur, Nbre_recu_cdm,Tempo_chgt_feux,Adj1,Adj2,NbrePN,ServeurInterfaceCDM,index_couleur,
@@ -450,7 +452,6 @@ var
entree,sortie, // point d'entrée et de sortie entree,sortie, // point d'entrée et de sortie
affect_train : integer; // numéro du train affecté affect_train : integer; // numéro du train affecté
end; end;
ncrois : integer;
// Prévision des zones suivantes (en fonction de la position aiguillages) // Prévision des zones suivantes (en fonction de la position aiguillages)
TrainPrevZone : array[1..20] of array[1..5] of integer; // non utilisé TrainPrevZone : array[1..20] of array[1..5] of integer; // non utilisé
@@ -523,7 +524,7 @@ var
index_event_det_train : integer; // index du train en cours de roulage du tableau event_det_train index_event_det_train : integer; // index du train en cours de roulage du tableau event_det_train
end; end;
// éléments verrouillés // éléments scannés et/ou verrouillés
elements : array[1..20] of record elements : array[1..20] of record
adresse : integer; adresse : integer;
typ : Tequipement; typ : Tequipement;
@@ -552,9 +553,7 @@ var
end; end;
Feu_supprime,Feu_sauve : Tfeu; Feu_supprime,Feu_sauve : Tfeu;
Aig_supprime,Aig_sauve : TAiguillage; Aig_supprime,Aig_sauve : TAiguillage;
Fimage : Timage; Fimage : Timage;
BrancheN : array[1..MaxBranches,1..MaxElBranches] of TBranche; BrancheN : array[1..MaxBranches,1..MaxElBranches] of TBranche;
{$R *.dfm} {$R *.dfm}
@@ -608,6 +607,7 @@ procedure Det_Adj(adresse : integer);
procedure reserve_canton(detecteur1,detecteur2,adrtrain : integer); procedure reserve_canton(detecteur1,detecteur2,adrtrain : integer);
function signal_detecteur(detecteur : integer) : integer; function signal_detecteur(detecteur : integer) : integer;
function det_suiv_cont(det1,det2 : integer) : integer; function det_suiv_cont(det1,det2 : integer) : integer;
function BTypeToChaine(BT : TEquipement) : string;
implementation implementation
@@ -638,8 +638,14 @@ begin
end; end;
procedure Tformprinc.DoHint(Sender : Tobject); procedure Tformprinc.DoHint(Sender : Tobject);
var s: string;
begin begin
StatusBar1.Simpletext:=Application.Hint; s:=Application.Hint;
StatusBar1.Simpletext:=s;
if s='insère une ligne au dessus' then
begin
// grise_ligne_TCO;
end;
end; end;
// fonctions sur les bits // fonctions sur les bits
@@ -797,7 +803,6 @@ procedure dessine_feu3(Acanvas : Tcanvas;x,y : integer;frX,frY : real;EtatSignal
var Temp,rayon,xSem,Ysem,xJaune,Yjaune,Xvert,Yvert, var Temp,rayon,xSem,Ysem,xJaune,Yjaune,Xvert,Yvert,
LgImage,HtImage,code,combine : integer; LgImage,HtImage,code,combine : integer;
ech : real; ech : real;
begin begin
code_to_aspect(Etatsignal,code,combine); code_to_aspect(Etatsignal,code,combine);
rayon:=round(6*frX); rayon:=round(6*frX);
@@ -847,7 +852,6 @@ procedure dessine_feu4(Acanvas : Tcanvas;x,y : integer;frX,frY : real;EtatSignal
var Temp,rayon,xSem,Ysem,xJaune,Yjaune,Xcarre,Ycarre,Xvert,Yvert, var Temp,rayon,xSem,Ysem,xJaune,Yjaune,Xcarre,Ycarre,Xvert,Yvert,
LgImage,HtImage,code,combine : integer; LgImage,HtImage,code,combine : integer;
ech : real; ech : real;
begin begin
code_to_aspect(Etatsignal,code,combine); // et aspect code_to_aspect(Etatsignal,code,combine); // et aspect
rayon:=round(6*frX); rayon:=round(6*frX);
@@ -6635,7 +6639,7 @@ begin
end; end;
if AffSignal then if AffSignal then
begin begin
s:='Traitement du feu '+intToSTR(Adrfeu)+'------------------------------------'; s:='Traitement du signal '+intToSTR(Adrfeu)+'------------------------------------';
AfficheDebug(s,clOrange); AfficheDebug(s,clOrange);
nivDebug:=3; nivDebug:=3;
end; end;
@@ -6707,15 +6711,16 @@ begin
// si le signal peut afficher un carré et les aiguillages après le signal sont mal positionnées ou aig réservé ou que pas présence train avant signal et signal // si le signal peut afficher un carré et les aiguillages après le signal sont mal positionnées ou aig réservé ou que pas présence train avant signal et signal
// verrouillable au carré, afficher un carré // verrouillable au carré, afficher un carré
car:=carre_signal(AdrFeu,AdrTrainLoc,reserveTrainTiers); // si reserveTrainTiers, réservé par un autre train car:=carre_signal(AdrFeu,AdrTrainLoc,reserveTrainTiers); // si reserveTrainTiers, réservé par un autre train
if AffSignal and car then AfficheDebug('le signal a des aiguilles en talon aval mal positionnées',clYellow);
// En mode roulage, si la réservation est faite par le train détecté en étape A, ne pas verrouiller au carré // En mode roulage, si la réservation est faite par le train détecté en étape A, ne pas verrouiller au carré
if roulage then car:=reserveTrainTiers or car; if roulage then car:=reserveTrainTiers or car;
// conditions supplémentaires de carré en fonction des aiguillages décrits // conditions supplémentaires de carré en fonction des aiguillages décrits
car:=cond_carre(AdrFeu) or car; car:=cond_carre(AdrFeu) or car;
if AffSignal and car then AfficheDebug('le signal a des aiguilles en talon aval mal positionnées',clYellow); //if AffSignal and car then AfficheDebug('le signal a des aiguilles en talon aval mal positionnées',clYellow);
if AffSignal and feux[index].VerrouilleCarre then AfficheDebug('le signal est verrouillé au carré',clYellow); if AffSignal and feux[index].VerrouilleCarre then AfficheDebug('le signal est verrouillé au carré',clYellow);
if (modele>=4) and ( (not(PresTrain) and Feux[index].VerrouCarre) or car or feux[index].VerrouilleCarre ) then Maj_Etat_Signal(AdrFeu,carre) if (modele>=4) and ( (not(PresTrain) and Feux[index].VerrouCarre) or (car and feux[index].VerrouilleCarre) ) then Maj_Etat_Signal(AdrFeu,carre)
else else
begin begin
// si on quitte le détecteur on affiche un sémaphore : tester le sens de circulation // si on quitte le détecteur on affiche un sémaphore : tester le sens de circulation
@@ -9303,7 +9308,8 @@ begin
result:=false; result:=false;
exit; exit;
end; end;
if protocole=1 then
if protocole=1 then // xpressnet
begin begin
groupe:=(adresse-1) div 4; groupe:=(adresse-1) div 4;
fonction:=((adresse-1) mod 4)*2 + (pilotage-1); fonction:=((adresse-1) mod 4)*2 + (pilotage-1);
@@ -9333,7 +9339,8 @@ begin
result:=true; result:=true;
exit; exit;
end; end;
if protocole=2 then
if protocole=2 then // dcc++
begin begin
event_aig(adresse,pilotage); event_aig(adresse,pilotage);
// en pilotage, on envoie que l'ID cad l'adresse - 0=droit 1=dévié // en pilotage, on envoie que l'ID cad l'adresse - 0=droit 1=dévié
@@ -9346,6 +9353,7 @@ begin
result:=true; result:=true;
exit; exit;
end; end;
end; end;
// pas de centrale et pas CDM connecté: on change la position de l'aiguillage // pas de centrale et pas CDM connecté: on change la position de l'aiguillage
@@ -10503,13 +10511,13 @@ begin
// descendre le curseur n fois pour sélectionner le serveur // descendre le curseur n fois pour sélectionner le serveur
for i:=1 to ServeurInterfaceCDM-1 do for i:=1 to ServeurInterfaceCDM-1 do
begin begin
KeybdInput(VK_DOWN, 0); KeybdInput(VK_DOWN,0);
KeybdInput(VK_DOWN, KEYEVENTF_KEYUP); KeybdInput(VK_DOWN,KEYEVENTF_KEYUP);
end; end;
// 2x TAB pour pointer sur OK // 2x TAB pour pointer sur OK
KeybdInput(VK_TAB, 0);KeybdInput(VK_TAB, KEYEVENTF_KEYUP); KeybdInput(VK_TAB,0);KeybdInput(VK_TAB,KEYEVENTF_KEYUP);
KeybdInput(VK_TAB, 0);KeybdInput(VK_TAB, KEYEVENTF_KEYUP); KeybdInput(VK_TAB,0);KeybdInput(VK_TAB,KEYEVENTF_KEYUP);
KeybdInput(VK_SPACE, 0);KeybdInput(VK_SPACE, KEYEVENTF_KEYUP); KeybdInput(VK_SPACE,0);KeybdInput(VK_SPACE,KEYEVENTF_KEYUP);
SendInput(Length(KeyInputs), KeyInputs[0], SizeOf(KeyInputs[0]));SetLength(KeyInputs,0); SendInput(Length(KeyInputs), KeyInputs[0], SizeOf(KeyInputs[0]));SetLength(KeyInputs,0);
Sleep(200); Sleep(200);
@@ -10522,9 +10530,9 @@ begin
SendInput(Length(KeyInputs),KeyInputs[0],SizeOf(KeyInputs[0]));SetLength(KeyInputs,0); SendInput(Length(KeyInputs),KeyInputs[0],SizeOf(KeyInputs[0]));SetLength(KeyInputs,0);
end; end;
// 2x TAB pour pointer sur OK // 2x TAB pour pointer sur OK
KeybdInput(VK_TAB,0);KeybdInput(VK_TAB, KEYEVENTF_KEYUP); KeybdInput(VK_TAB,0);KeybdInput(VK_TAB,KEYEVENTF_KEYUP);
KeybdInput(VK_TAB,0);KeybdInput(VK_TAB, KEYEVENTF_KEYUP); KeybdInput(VK_TAB,0);KeybdInput(VK_TAB,KEYEVENTF_KEYUP);
KeybdInput(VK_SPACE,0);KeybdInput(VK_SPACE, KEYEVENTF_KEYUP); // valide la fenetre d'interface KeybdInput(VK_SPACE,0);KeybdInput(VK_SPACE,KEYEVENTF_KEYUP); // valide la fenetre d'interface
SendInput(Length(KeyInputs), KeyInputs[0], SizeOf(KeyInputs[0]));SetLength(KeyInputs,0); SendInput(Length(KeyInputs), KeyInputs[0], SizeOf(KeyInputs[0]));SetLength(KeyInputs,0);
Sleep(200); Sleep(200);
@@ -10681,6 +10689,7 @@ begin
TraceSign:=True; TraceSign:=True;
configPrete:=false; // form config prete configPrete:=false; // form config prete
PremierFD:=false; PremierFD:=false;
sauve_tco:=false;
// services commIP CDM par défaut // services commIP CDM par défaut
ntrains:=0; ntrains:=0;
ntrains_cdm:=0; ntrains_cdm:=0;
@@ -10745,6 +10754,18 @@ begin
StaticText.Top:=FenRich.Height+FenRich.Top+10; StaticText.Top:=FenRich.Height+FenRich.Top+10;
//---------------------------------------- //----------------------------------------
{
FenRich.Align := alLeft;
FenRich.Width := FormPrinc.ClientWidth div 3;
Splitter.Parent := FormPrinc;
// Make sure the splitter is to the right of the directory list box.
Splitter.Left := FenRich.Left + FenRich.Width + 1;
Splitter.Align := FenRich.Align; // Give it the same alignment as the directory.
// Each pane must be at least one quarter of the form?s width.
Splitter.MinSize := Formprinc.ClientWidth div 4;
//ScrollBox1.Align:=alclient;
}
ferme:=false; ferme:=false;
CDM_connecte:=false; CDM_connecte:=false;
pasreponse:=0; pasreponse:=0;
@@ -10767,43 +10788,14 @@ begin
Application.HintHidePause:=30000; Application.HintHidePause:=30000;
visible:=true; // rend la form visible plus tot visible:=true; // rend la form visible plus tot
// ouvrir le TCO avant de lire la config car en mode DCC++, on va
// recevoir les events détecteurs et la mise à jour du TCO
// !!non il faut ouvrir e TCO après la config
{
procetape('Debug et TCO');
if debug=1 then affiche('Ouverture du debug',clLime);
formdebug:=TformDebug.Create(nil);
i:=0;
repeat
application.processmessages;
inc(i);
until (DebugAffiche) or (i>15);
if not(DebugAffiche) then Affiche('Erreur : fenêtre debug non créée',clred);
if debugAffiche and (Debug=1) then Affiche('Fenêtre Debug créée',clYellow);
if debug=1 then affiche('Ouverture du TCO',clLime);
//créée la fenêtre TCO non modale avant la fin de la création de formprinc
FormTCO:=TformTCO.Create(nil);
i:=0;
repeat
application.processmessages;
inc(i);
until (TcoOuvert) or (i>15);
if not(TCOOUvert) then Affiche('Erreur : fenêtre TCO non créée',clred);
if TCOOuvert and (Debug=1) then Affiche('Fenêtre TCO créée',clYellow);
}
// TCO
for i:=1 to MaxCdeDccpp do CdeDccpp[i]:=''; for i:=1 to MaxCdeDccpp do CdeDccpp[i]:='';
// lecture fichiers de configuration // lecture fichiers de configuration
procetape('Lecture de la configuration'); procetape('Lecture de la configuration');
lit_config; lit_config;
procetape('Lecture du TCO'); procetape('Lecture du TCO');
lire_fichier_tco; lire_fichier_tco;
verif_coherence;
procetape('La configuration a été lue'); procetape('La configuration a été lue');
if protocole=1 then if protocole=1 then
@@ -11001,10 +10993,15 @@ procedure TFormPrinc.FormClose(Sender: TObject; var Action: TCloseAction);
begin begin
Ferme:=true; Ferme:=true;
if portCommOuvert then begin portCommOuvert:=false;MSCommUSBLenz.Portopen:=false; end; if portCommOuvert then
begin
portCommOuvert:=false;
MSCommUSBLenz.Portopen:=false;
end;
portCommOuvert:=false; portCommOuvert:=false;
ClientSocketCDM.close; ClientSocketCDM.close;
ClientSocketInterface.close; ClientSocketInterface.close;
timer1.Enabled:=false;
if TCO_modifie then if TCO_modifie then
if MessageDlg('Le TCO a été modifié. Voulez vous le sauvegarder ?',mtConfirmation,[mbYes,mbNo],0)=mrYes then if MessageDlg('Le TCO a été modifié. Voulez vous le sauvegarder ?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
sauve_fichier_tco; sauve_fichier_tco;
@@ -11012,6 +11009,7 @@ begin
if MessageDlg('La configuration a été modifiée. Voulez vous la sauvegarder ?',mtConfirmation,[mbYes,mbNo],0)=mrYes then if MessageDlg('La configuration a été modifiée. Voulez vous la sauvegarder ?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
sauve_config; sauve_config;
if confasauver then sauve_config; if confasauver then sauve_config;
if sauve_tco then sauve_fichier_tco;
Application.ProcessMessages; Application.ProcessMessages;
end; end;
@@ -12892,7 +12890,7 @@ begin
inc(i); inc(i);
until (i>NbMemZone); until (i>NbMemZone);
Affiche('Derniers élements verrouillés:',clWhite); Affiche('Derniers éléments scannés:',clWhite);
for i:=1 to idEl do for i:=1 to idEl do
begin begin
Affiche(IntToSTR(elements[i].adresse),clLime); Affiche(IntToSTR(elements[i].adresse),clLime);
@@ -13286,7 +13284,8 @@ procedure TFormPrinc.Button1Click(Sender: TObject);
begin begin
placement_trains; placement_trains;
//ouvre_simulation('C:\Program Files (x86)\Borland\Delphi7\Projects\Signaux_complexes_GL\2trains_autonome.txt'); //ouvre_simulation('C:\Program Files (x86)\Borland\Delphi7\Projects\Signaux_complexes_GL\2trains_autonome.txt');
ouvre_simulation('C:\Program Files\Borland\Delphi7\Projects\Signaux_complexes_GL\2trains_autonome.txt'); //ouvre_simulation('C:\Program Files\Borland\Delphi7\Projects\Signaux_complexes_GL\2trains_autonome.txt');
ouvre_simulation('C:\temp\Signaux_complexes_GL\2trains_autonome.txt');
end; end;
@@ -13369,5 +13368,12 @@ procedure TFormPrinc.EditAdrTrainChange(Sender: TObject);
end; end;
procedure TFormPrinc.SplitterMoved(Sender: TObject);
begin
ScrollBox1.left:=Splitter.Left+10;
ScrollBox1.width:=width-scrollBox1.left-20;
end;
end. end.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+63 -34
View File
@@ -1,8 +1,8 @@
object FormTCO: TFormTCO object FormTCO: TFormTCO
Left = 179 Left = 132
Top = 15 Top = 127
Width = 1139 Width = 1132
Height = 686 Height = 728
VertScrollBar.Visible = False VertScrollBar.Visible = False
Caption = 'FormTCO' Caption = 'FormTCO'
Color = clBtnFace Color = clBtnFace
@@ -21,8 +21,8 @@ object FormTCO: TFormTCO
OnKeyDown = FormKeyDown OnKeyDown = FormKeyDown
OnMouseWheel = FormMouseWheel OnMouseWheel = FormMouseWheel
DesignSize = ( DesignSize = (
1131 1124
655) 697)
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
object LabelCoord: TLabel object LabelCoord: TLabel
@@ -72,8 +72,8 @@ object FormTCO: TFormTCO
Height = 97 Height = 97
end end
object Label19: TLabel object Label19: TLabel
Left = 1075 Left = 1068
Top = 399 Top = 441
Width = 32 Width = 32
Height = 13 Height = 13
Anchors = [akRight, akBottom] Anchors = [akRight, akBottom]
@@ -88,8 +88,8 @@ object FormTCO: TFormTCO
object ScrollBox: TScrollBox object ScrollBox: TScrollBox
Left = 8 Left = 8
Top = 18 Top = 18
Width = 1057 Width = 1050
Height = 367 Height = 409
HorzScrollBar.Smooth = True HorzScrollBar.Smooth = True
HorzScrollBar.Tracking = True HorzScrollBar.Tracking = True
VertScrollBar.Smooth = True VertScrollBar.Smooth = True
@@ -100,18 +100,17 @@ object FormTCO: TFormTCO
ParentColor = False ParentColor = False
TabOrder = 0 TabOrder = 0
DesignSize = ( DesignSize = (
1053 1046
363) 405)
object ImageTCO: TImage object ImageTCO: TImage
Left = 0 Left = 0
Top = 0 Top = 0
Width = 1009 Width = 1002
Height = 337 Height = 379
Anchors = [akLeft, akTop, akRight, akBottom] Anchors = [akLeft, akTop, akRight, akBottom]
ParentShowHint = False ParentShowHint = False
PopupMenu = PopupMenu1 PopupMenu = PopupMenu1
ShowHint = True ShowHint = True
OnClick = ImageTCOClick
OnContextPopup = ImageTCOContextPopup OnContextPopup = ImageTCOContextPopup
OnDblClick = ImageTCODblClick OnDblClick = ImageTCODblClick
OnDragOver = ImageTCODragOver OnDragOver = ImageTCODragOver
@@ -121,10 +120,10 @@ object FormTCO: TFormTCO
end end
end end
object TrackBarZoom: TTrackBar object TrackBarZoom: TTrackBar
Left = 1075 Left = 1068
Top = 18 Top = 18
Width = 41 Width = 41
Height = 358 Height = 400
Anchors = [akTop, akRight, akBottom] Anchors = [akTop, akRight, akBottom]
Max = 50 Max = 50
Min = 20 Min = 20
@@ -136,8 +135,8 @@ object FormTCO: TFormTCO
end end
object Panel1: TPanel object Panel1: TPanel
Left = 0 Left = 0
Top = 480 Top = 522
Width = 1121 Width = 1114
Height = 165 Height = 165
Anchors = [akLeft, akRight, akBottom] Anchors = [akLeft, akRight, akBottom]
Color = clActiveBorder Color = clActiveBorder
@@ -150,7 +149,7 @@ object FormTCO: TFormTCO
TabOrder = 2 TabOrder = 2
OnDragOver = Panel1DragOver OnDragOver = Panel1DragOver
DesignSize = ( DesignSize = (
1121 1114
165) 165)
object ImagePalette5: TImage object ImagePalette5: TImage
Left = 520 Left = 520
@@ -720,7 +719,7 @@ object FormTCO: TFormTCO
ParentFont = False ParentFont = False
end end
object ButtonSauveTCO: TButton object ButtonSauveTCO: TButton
Left = 1013 Left = 1006
Top = 48 Top = 48
Width = 92 Width = 92
Height = 33 Height = 33
@@ -731,7 +730,7 @@ object FormTCO: TFormTCO
OnClick = ButtonSauveTCOClick OnClick = ButtonSauveTCOClick
end end
object ButtonRedessine: TButton object ButtonRedessine: TButton
Left = 1013 Left = 1006
Top = 8 Top = 8
Width = 92 Width = 92
Height = 33 Height = 33
@@ -759,7 +758,7 @@ object FormTCO: TFormTCO
OnClick = Button2Click OnClick = Button2Click
end end
object ButtonConfigTCO: TButton object ButtonConfigTCO: TButton
Left = 1013 Left = 1006
Top = 88 Top = 88
Width = 92 Width = 92
Height = 33 Height = 33
@@ -778,7 +777,7 @@ object FormTCO: TFormTCO
OnClick = ButtonSimuClick OnClick = ButtonSimuClick
end end
object ButtonMasquer: TButton object ButtonMasquer: TButton
Left = 1013 Left = 1006
Top = 128 Top = 128
Width = 92 Width = 92
Height = 33 Height = 33
@@ -792,7 +791,7 @@ object FormTCO: TFormTCO
Left = 16 Left = 16
Top = 8 Top = 8
Width = 185 Width = 185
Height = 137 Height = 153
Caption = 'Configuration cellule' Caption = 'Configuration cellule'
Font.Charset = ANSI_CHARSET Font.Charset = ANSI_CHARSET
Font.Color = clBackground Font.Color = clBackground
@@ -853,9 +852,15 @@ object FormTCO: TFormTCO
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
end end
object ShapeCoulFond: TShape
Left = 160
Top = 130
Width = 18
Height = 18
end
object EditAdrElement: TEdit object EditAdrElement: TEdit
Left = 144 Left = 144
Top = 16 Top = 12
Width = 33 Width = 33
Height = 21 Height = 21
Font.Charset = ANSI_CHARSET Font.Charset = ANSI_CHARSET
@@ -870,7 +875,7 @@ object FormTCO: TFormTCO
end end
object EditTypeImage: TEdit object EditTypeImage: TEdit
Left = 144 Left = 144
Top = 40 Top = 36
Width = 33 Width = 33
Height = 21 Height = 21
Font.Charset = ANSI_CHARSET Font.Charset = ANSI_CHARSET
@@ -893,7 +898,7 @@ object FormTCO: TFormTCO
end end
object EditTexte: TEdit object EditTexte: TEdit
Left = 88 Left = 88
Top = 64 Top = 60
Width = 89 Width = 89
Height = 21 Height = 21
TabOrder = 3 TabOrder = 3
@@ -915,9 +920,9 @@ object FormTCO: TFormTCO
'Bas') 'Bas')
end end
object CheckPinv: TCheckBox object CheckPinv: TCheckBox
Left = 16 Left = 8
Top = 112 Top = 110
Width = 161 Width = 113
Height = 17 Height = 17
Hint = 'Cocher si l'#39'aiguillage est repr'#233'sent'#233' invers'#233 Hint = 'Cocher si l'#39'aiguillage est repr'#233'sent'#233' invers'#233
Caption = 'aiguillage invers'#233 Caption = 'aiguillage invers'#233
@@ -932,9 +937,18 @@ object FormTCO: TFormTCO
TabOrder = 5 TabOrder = 5
OnClick = CheckPinvClick OnClick = CheckPinvClick
end end
object ButtonCoulFond: TButton
Left = 80
Top = 130
Width = 81
Height = 18
Caption = 'Couleur de fond'
TabOrder = 6
OnClick = ButtonCoulFondClick
end
end end
object buttonRaz: TButton object buttonRaz: TButton
Left = 909 Left = 902
Top = 128 Top = 128
Width = 92 Width = 92
Height = 33 Height = 33
@@ -944,10 +958,19 @@ object FormTCO: TFormTCO
WordWrap = True WordWrap = True
OnClick = buttonRazClick OnClick = buttonRazClick
end end
object ButtonCalibrage: TButton
Left = 560
Top = 112
Width = 75
Height = 25
Caption = 'Calibrage'
TabOrder = 9
OnClick = ButtonCalibrageClick
end
end end
object ButtonAfficheBandeau: TButton object ButtonAfficheBandeau: TButton
Left = 1067 Left = 1060
Top = 423 Top = 465
Width = 57 Width = 57
Height = 33 Height = 33
Anchors = [akRight, akBottom] Anchors = [akRight, akBottom]
@@ -1014,6 +1037,7 @@ object FormTCO: TFormTCO
Caption = 'Inserer' Caption = 'Inserer'
object LigneDessus: TMenuItem object LigneDessus: TMenuItem
Caption = 'Ligne au dessus' Caption = 'Ligne au dessus'
Hint = 'ins'#232're une ligne au dessus'
OnClick = LigneDessusClick OnClick = LigneDessusClick
end end
object LigneDessous: TMenuItem object LigneDessous: TMenuItem
@@ -1061,4 +1085,9 @@ object FormTCO: TFormTCO
Left = 256 Left = 256
Top = 432 Top = 432
end end
object ColorDialog1: TColorDialog
OnShow = ColorDialog1Show
Left = 448
Top = 456
end
end end
+604 -508
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.
BIN
View File
Binary file not shown.
+3 -1
View File
@@ -173,7 +173,6 @@ begin
inc(it); inc(it);
//detecteur[detect].adrTrain:=trains[i].adresse; //detecteur[detect].adrTrain:=trains[i].adresse;
//event_detecteur(detect,true,trains[i].nom_train); //event_detecteur(detect,true,trains[i].nom_train);
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+Ssuiv,clLime);
{ {
SauvefiltrageDet0:=filtrageDet0; SauvefiltrageDet0:=filtrageDet0;
filtrageDet0:=0; filtrageDet0:=0;
@@ -203,6 +202,9 @@ begin
event_det_train[it].det[1].adresse:=prec; event_det_train[it].det[1].adresse:=prec;
event_det_train[it].det[1].etat:=false; event_det_train[it].det[1].etat:=false;
event_det_train[it].nom_train:=placement[i].train; event_det_train[it].nom_train:=placement[i].train;
Affiche('Positionnement train '+detecteur[detect].train+' sur détecteur '+intToSTR(detect)+' vers '+Ssuiv,clLime);
inc(N_trains); inc(N_trains);
end end
+16 -15
View File
@@ -2,9 +2,10 @@
CoulFond=202050 CoulFond=202050
CoulVoies=0077FF CoulVoies=0077FF
CoulAllume=00FFFF CoulAllume=00FFFF
CoulGrille=4A4A4A CoulGrille=404040
CoulTexte=00FF00 CoulTexte=00FF00
CoulQuai=808080 CoulQuai=808080
CoulPiedSig=4080FF
CoulCanton=00FFFF CoulCanton=00FFFF
ModeCouleurCanton=1 ModeCouleurCanton=1
AvecGrille=1 AvecGrille=1
@@ -14,17 +15,17 @@ Matrice=35,13
Ratio=10 Ratio=10
/Matrice TCO /Matrice TCO
[Matrice] [Matrice]
/ inutilisé,adresse,image,inversion aiguillage,Orientation du feu, pied du feu , [texte], representation, fonte, taille fonte, couleur fonte, style / couleur fond,adresse,image,inversion aiguillage,Orientation du feu, pied du feu , [texte], representation, fonte, taille fonte, couleur fonte, style, réserve
(0,358,30,0,1,1,,2,,0,FFFFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,497,30,0,1,2,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,TCO GARE PRINCIPALE,1,ARIAL,20,00FFFF,GI)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,FFFFFF,)(0,0,0,0,0,0,,0,,0,000000,) (202050,358,30,0,1,1,,2,,0,FFFFFF,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,G,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,497,30,0,1,2,,2,,0,FFFFFF,G,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,TCO GARE PRINCIPALE,1,ARIAL,20,00FFFF,GI,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,FFFFFF,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,8,00FF00,)(0,0,0,0,0,0,,2,,8,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,9,0,0,0,,2,,0,000000,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,8,00FF00,,0)(202050,0,0,0,0,0,,2,,8,00FF00,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,9,0,0,0,,2,,0,000000,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,2,,0,000000,)(0,517,20,0,0,0,,2,,0,00FFFF,)(0,531,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,6,2,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,9,0,0,0,,2,,0,000000,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,2,,0,000000,,0)(202050,517,20,0,0,0,,2,,0,00FFFF,,0)(202050,531,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,6,2,0,0,0,,2,,0,00FF00,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,10,0,0,0,,2,,0,000000,,0)(202050,0,9,0,0,0,,2,,0,000000,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,232,30,0,3,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,FFFFFF,)(0,288,30,0,2,1,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,MS SANS SERIF,10,00FFFF,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,10,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,232,30,0,2,1,,2,,0,00FF00,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,FFFFFF,,0)(202050,288,30,0,2,1,,2,,0,FFFFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,10,0,0,0,,2,MS SANS SERIF,10,00FFFF,,0)(202050,0,10,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,372,30,0,1,1,,2,,0,FFFFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,4,15,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,514,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,522,1,0,0,0,,2,,0,00FFFF,)(0,0,7,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,372,30,0,1,1,,2,,0,FFFFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,4,15,0,0,0,,2,,0,00FF00,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,514,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,522,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,7,0,0,0,,2,,0,000000,,0)(202050,0,10,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,20,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,3,15,0,0,0,,2,,0,00FF00,)(0,5,2,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,515,1,0,0,0,,2,,0,00FFFF,)(0,515,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,7,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,20,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,3,15,0,0,0,,2,,0,00FF00,,0)(202050,5,2,0,0,0,,2,,0,00FF00,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,515,1,0,0,0,,2,,0,00FFFF,,0)(202050,515,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,7,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,00FFFF,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,19,0,0,0,,2,,0,00FFFF,)(0,0,19,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,520,30,0,2,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,10,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,316,30,0,3,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,QUAI 1,1,ARIAL,12,FFFFFF,G)(0,0,23,0,0,0,,2,,8,00FF00,)(0,0,23,0,0,0,,2,,8,00FF00,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,23,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,190,30,0,2,1,,2,,0,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,19,0,0,0,,2,,0,00FFFF,,0)(202050,0,19,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,520,30,0,2,1,,2,,0,00FF00,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,10,0,0,0,,2,,0,000000,,0)(202050,0,10,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,316,30,0,3,1,,2,,0,00FF00,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,23,0,0,0,,2,,0,000000,,0)(202050,0,23,0,0,0,,2,,0,000000,,0)(202050,0,23,0,0,0,QUAI 1,1,ARIAL,12,FFFFFF,G,0)(202050,0,23,0,0,0,,2,,8,00FF00,,0)(202050,0,23,0,0,0,,2,,8,00FF00,,0)(202050,0,23,0,0,0,,2,,0,000000,,0)(202050,0,23,0,0,0,,2,,0,000000,,0)(202050,0,23,0,0,0,,2,,0,000000,,0)(202050,0,23,0,0,0,,2,,0,000000,,0)(202050,0,23,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,190,30,0,2,1,,2,,0,00FF00,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,00FFFF,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,11,0,0,0,,2,,0,00FFFF,)(0,0,6,0,0,0,,2,,0,000000,)(0,518,1,0,0,0,,0,,0,00FFFF,)(0,518,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,1,3,0,0,0,,2,,8,00FF00,)(0,100,21,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,VOIE 2,2,ARIAL,10,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,523,1,0,0,0,,0,,0,00FFFF,)(0,523,1,0,0,0,,0,,0,00FFFF,)(0,523,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,11,0,0,0,,2,,0,00FFFF,,0)(202050,0,6,0,0,0,,2,,0,000000,,0)(202050,518,1,0,0,0,,0,,0,00FFFF,,0)(202050,518,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,1,3,0,0,0,,2,,8,00FF00,,0)(202050,100,21,0,0,0,,2,,0,00FF00,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,VOIE 2,2,ARIAL,10,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,523,1,0,0,0,,0,,0,00FFFF,,0)(202050,523,1,0,0,0,,0,,0,00FFFF,,0)(202050,523,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,0,0,0,0,,2,,0,00FFFF,,0)
(0,530,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,8,0,0,0,,2,,0,00FFFF,)(0,0,6,0,0,0,,2,,0,000000,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,12,4,1,0,0,,2,,0,00FF00,)(0,2,3,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,519,1,0,0,0,,2,,0,00FFFF,)(0,519,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,VOIE 1,2,ARIAL,10,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,8,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,7,2,0,0,0,,2,,0,00FF00,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,527,1,0,0,0,,2,,8,00FFFF,)(0,0,1,0,0,0,,3,,8,00FFFF,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,530,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,8,0,0,0,,2,,0,00FFFF,,0)(202050,0,6,0,0,0,,2,,0,000000,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,12,4,1,0,0,,2,,0,00FF00,,0)(202050,2,3,0,0,0,,2,,0,00FF00,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,519,1,0,0,0,,2,,0,00FFFF,,0)(202050,519,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,VOIE 1,2,ARIAL,10,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,8,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,7,2,0,0,0,,2,,0,00FF00,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,527,1,0,0,0,,2,,8,00FFFF,,0)(202050,0,1,0,0,0,,3,,8,00FFFF,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,529,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,26,22,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,8,0,0,0,,0,,0,000000,)(0,0,11,0,0,0,,0,,0,000000,)(0,330,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,QUAI 2,1,ARIAL,12,FFFFFF,G)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,23,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,10,0,0,0,,0,,0,000000,)(0,204,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,529,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,26,22,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,8,0,0,0,,0,,0,000000,,0)(202050,0,11,0,0,0,,0,,0,000000,,0)(202050,330,30,0,3,1,,0,,0,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,QUAI 2,1,ARIAL,12,FFFFFF,G,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,23,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,10,0,0,0,,0,,0,000000,,0)(202050,204,30,0,3,1,,0,,0,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,8,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,6,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,21,5,0,0,0,,0,,0,00FF00,)(0,20,5,0,0,0,,0,,0,00FF00,)(0,520,1,0,0,0,,2,,8,00FFFF,)(0,520,1,0,0,0,,0,,0,00FFFF,)(0,520,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,2,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,8,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,1,0,0,0,,0,,0,00FFFF,)(0,0,7,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,6,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,21,5,0,0,0,,0,,0,00FF00,,0)(202050,20,5,0,0,0,,0,,0,00FF00,,0)(202050,520,1,0,0,0,,2,,8,00FFFF,,0)(202050,520,1,0,0,0,,0,,0,00FFFF,,0)(202050,520,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,8,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,8,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,8,00FFFF,,0)(202050,0,1,0,0,0,,2,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,8,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,8,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,1,0,0,0,,0,,0,00FFFF,,0)(202050,0,7,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,8,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,176,30,0,3,1,,0,,0,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,3,,8,00FF00,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,8,00FF00,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,176,30,0,3,1,,0,,0,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,3,,8,00FF00,,0)(202050,0,0,0,0,0,,0,,8,00FF00,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,8,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,8,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,8,00FF00,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,2,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,)(0,0,0,0,0,0,,0,,0,000000,) (202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,2,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)(202050,0,0,0,0,0,,0,,0,000000,,0)
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -23,7 +23,7 @@ var
Lance_verif : integer; Lance_verif : integer;
verifVersion,notificationVersion : boolean; verifVersion,notificationVersion : boolean;
Const Version='5.5'; // sert à la comparaison de la version publiée Const Version='5.6'; // sert à la comparaison de la version publiée
SousVersion=' '; // en cas d'absence de sous version mettre un espace SousVersion=' '; // en cas d'absence de sous version mettre un espace
implementation implementation
+7
View File
@@ -144,4 +144,11 @@ version 5.4 : Am
version 5.5 : Gestion signaux en doublon. version 5.5 : Gestion signaux en doublon.
Vérification des adresses interdites en XpressNet Vérification des adresses interdites en XpressNet
Passage au rouge du signal au premier train quittant son détecteur Passage au rouge du signal au premier train quittant son détecteur
version 5.51 : Renforcement de la vérification de la cohérence
(chevauchement des signaux et des aiguillages)
Correction bug édition TCO (suppression/insertion ligne/colonne)
version 5.52 : Correction bug exploitation TCO
version 5.6 : Ajout d'affichage d'informations supplémentaires
Couleur de fond définissable pour chaque cellule du TCO ou une zone.