diff --git a/Notice d'utilisation des signaux_complexes_GL_V8.2.pdf b/Notice d'utilisation des signaux_complexes_GL_V8.2.pdf index 68b3f59..aa9703e 100644 Binary files a/Notice d'utilisation des signaux_complexes_GL_V8.2.pdf and b/Notice d'utilisation des signaux_complexes_GL_V8.2.pdf differ diff --git a/Signaux_complexes_GL.cfg b/Signaux_complexes_GL.cfg index bcc5ab2..8d97c47 100644 --- a/Signaux_complexes_GL.cfg +++ b/Signaux_complexes_GL.cfg @@ -14,8 +14,8 @@ -$N+ -$O- -$P+ --$Q+ --$R+ +-$Q- +-$R- -$S- -$T- -$U- diff --git a/Signaux_complexes_GL.dof b/Signaux_complexes_GL.dof index 39f4338..845db12 100644 --- a/Signaux_complexes_GL.dof +++ b/Signaux_complexes_GL.dof @@ -17,8 +17,8 @@ M=0 N=1 O=0 P=1 -Q=1 -R=1 +Q=0 +R=0 S=0 T=0 U=0 @@ -133,3 +133,6 @@ Comments= [HistoryLists\hlUnitAliases] Count=1 Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; +[HistoryLists\hlSearchPath] +Count=1 +Item0=$(DELPHI)\Lib\Debug diff --git a/Signaux_complexes_GL.map b/Signaux_complexes_GL.map index ffd4ae2..65e8db8 100644 --- a/Signaux_complexes_GL.map +++ b/Signaux_complexes_GL.map @@ -1,104 +1,104 @@ Start Length Name Class - 0001:00000000 00179218H .text CODE - 0002:00000000 00002BF4H .data DATA - 0002:00002BF4 041A059DH .bss BSS + 0001:00000000 00160048H .text CODE + 0002:00000000 00002BECH .data DATA + 0002:00002BEC 041A05F1H .bss BSS Detailed map of segments - 0001:00000000 00005E33 C=CODE S=.text G=(none) M=System ACBP=A9 - 0001:00005E34 00000140 C=CODE S=.text G=(none) M=SysInit ACBP=A9 - 0001:00005F74 00000108 C=CODE S=.text G=(none) M=Types ACBP=A9 - 0001:0000607C 00000ED8 C=CODE S=.text G=(none) M=Windows ACBP=A9 - 0001:00006F54 00000038 C=CODE S=.text G=(none) M=Messages ACBP=A9 - 0001:00006F8C 00000338 C=CODE S=.text G=(none) M=SysConst ACBP=A9 - 0001:000072C4 00006E28 C=CODE S=.text G=(none) M=SysUtils ACBP=A9 - 0001:0000E0EC 0000081B C=CODE S=.text G=(none) M=VarUtils ACBP=A9 - 0001:0000E908 00008042 C=CODE S=.text G=(none) M=Variants ACBP=A9 - 0001:0001694C 00000188 C=CODE S=.text G=(none) M=RTLConsts ACBP=A9 - 0001:00016AD4 0000083C C=CODE S=.text G=(none) M=TypInfo ACBP=A9 - 0001:00017310 00000358 C=CODE S=.text G=(none) M=ActiveX ACBP=A9 - 0001:00017668 0000A236 C=CODE S=.text G=(none) M=Classes ACBP=A9 - 0001:000218A0 00000370 C=CODE S=.text G=(none) M=Consts ACBP=A9 - 0001:00021C10 00009BFB C=CODE S=.text G=(none) M=Graphics ACBP=A9 - 0001:0002B80C 00000124 C=CODE S=.text G=(none) M=Math ACBP=A9 - 0001:0002B930 000002B8 C=CODE S=.text G=(none) M=Contnrs ACBP=A9 - 0001:0002BBE8 00000198 C=CODE S=.text G=(none) M=CommCtrl ACBP=A9 - 0001:0002BD80 00000787 C=CODE S=.text G=(none) M=MultiMon ACBP=A9 - 0001:0002C508 00000038 C=CODE S=.text G=(none) M=Imm ACBP=A9 - 0001:0002C540 00000FF8 C=CODE S=.text G=(none) M=HelpIntfs ACBP=A9 - 0001:0002D538 00000058 C=CODE S=.text G=(none) M=WinSpool ACBP=A9 - 0001:0002D590 000010C8 C=CODE S=.text G=(none) M=Printers ACBP=A9 - 0001:0002E658 0000031F C=CODE S=.text G=(none) M=FlatSB ACBP=A9 - 0001:0002E978 000001A4 C=CODE S=.text G=(none) M=SyncObjs ACBP=A9 - 0001:0002EB1C 000009BB C=CODE S=.text G=(none) M=UxTheme ACBP=A9 - 0001:0002F4D8 00000038 C=CODE S=.text G=(none) M=RichEdit ACBP=A9 - 0001:0002F510 00000038 C=CODE S=.text G=(none) M=ToolWin ACBP=A9 - 0001:0002F548 00000040 C=CODE S=.text G=(none) M=ShellAPI ACBP=A9 - 0001:0002F588 00000038 C=CODE S=.text G=(none) M=RegStr ACBP=A9 - 0001:0002F5C0 00000058 C=CODE S=.text G=(none) M=WinInet ACBP=A9 - 0001:0002F618 00000038 C=CODE S=.text G=(none) M=UrlMon ACBP=A9 - 0001:0002F650 0000006C C=CODE S=.text G=(none) M=ShlObj ACBP=A9 - 0001:0002F6BC 00000060 C=CODE S=.text G=(none) M=CommDlg ACBP=A9 - 0001:0002F71C 00000038 C=CODE S=.text G=(none) M=Dlgs ACBP=A9 - 0001:0002F754 000036D1 C=CODE S=.text G=(none) M=Dialogs ACBP=A9 - 0001:00032E28 00004ADA C=CODE S=.text G=(none) M=ExtCtrls ACBP=A9 - 0001:00037904 00000090 C=CODE S=.text G=(none) M=ComStrs ACBP=A9 - 0001:00037994 000007A0 C=CODE S=.text G=(none) M=Clipbrd ACBP=A9 - 0001:00038134 00000128 C=CODE S=.text G=(none) M=StrUtils ACBP=A9 - 0001:0003825C 00003821 C=CODE S=.text G=(none) M=Buttons ACBP=A9 - 0001:0003BA80 00000038 C=CODE S=.text G=(none) M=ExtDlgs ACBP=A9 - 0001:0003BAB8 00000068 C=CODE S=.text G=(none) M=IniFiles ACBP=A9 - 0001:0003BB20 00000068 C=CODE S=.text G=(none) M=Registry ACBP=A9 - 0001:0003BB88 0000006C C=CODE S=.text G=(none) M=Mapi ACBP=A9 - 0001:0003BBF4 00000058 C=CODE S=.text G=(none) M=ExtActns ACBP=A9 - 0001:0003BC4C 00000038 C=CODE S=.text G=(none) M=ListActns ACBP=A9 - 0001:0003BC84 00009948 C=CODE S=.text G=(none) M=ComCtrls ACBP=A9 - 0001:000455CC 00000EA0 C=CODE S=.text G=(none) M=Themes ACBP=A9 - 0001:0004646C 0000D390 C=CODE S=.text G=(none) M=StdCtrls ACBP=A9 - 0001:000537FC 00000168 C=CODE S=.text G=(none) M=StdActns ACBP=A9 - 0001:00053964 00000D1F C=CODE S=.text G=(none) M=WinHelpViewer ACBP=A9 - 0001:00054684 00011403 C=CODE S=.text G=(none) M=Controls ACBP=A9 - 0001:00065A88 00001292 C=CODE S=.text G=(none) M=ActnList ACBP=A9 - 0001:00066D1C 00001B9C C=CODE S=.text G=(none) M=ImgList ACBP=A9 - 0001:000688B8 000066E1 C=CODE S=.text G=(none) M=Menus ACBP=A9 - 0001:0006EF9C 0000CEFC C=CODE S=.text G=(none) M=Forms ACBP=A9 - 0001:0007BE98 00000060 C=CODE S=.text G=(none) M=ComConst ACBP=A9 - 0001:0007BEF8 00001259 C=CODE S=.text G=(none) M=ComObj ACBP=A9 - 0001:0007D154 00000038 C=CODE S=.text G=(none) M=StdVCL ACBP=A9 - 0001:0007D18C 00001793 C=CODE S=.text G=(none) M=AxCtrls ACBP=A9 - 0001:0007E920 00000060 C=CODE S=.text G=(none) M=OleConst ACBP=A9 - 0001:0007E980 00003519 C=CODE S=.text G=(none) M=OleCtrls ACBP=A9 - 0001:00081E9C 00000050 C=CODE S=.text G=(none) M=JConsts ACBP=A9 - 0001:00081EEC 000133EC C=CODE S=.text G=(none) M=jpeg ACBP=A9 - 0001:000952D8 00000314 C=CODE S=.text G=(none) M=TlHelp32 ACBP=A9 - 0001:000955EC 000000D8 C=CODE S=.text G=(none) M=WinSock ACBP=A9 - 0001:000956C4 00001F40 C=CODE S=.text G=(none) M=ScktComp ACBP=A9 - 0001:00097604 000008EA C=CODE S=.text G=(none) M=OleServer ACBP=A9 - 0001:00097EF0 00000598 C=CODE S=.text G=(none) M=MSCommLib_TLB ACBP=A9 - 0001:00098488 00000040 C=CODE S=.text G=(none) M=MMSystem ACBP=A9 - 0001:000984C8 00000038 C=CODE S=.text G=(none) M=Nb30 ACBP=A9 - 0001:00098500 00000A18 C=CODE S=.text G=(none) M=MaskUtils ACBP=A9 - 0001:00098F18 00002108 C=CODE S=.text G=(none) M=Mask ACBP=A9 - 0001:0009B020 0000924C C=CODE S=.text G=(none) M=Grids ACBP=A9 - 0001:000A426C 000015B4 C=CODE S=.text G=(none) M=UnitPilote ACBP=A9 - 0001:000A5820 000004D0 C=CODE S=.text G=(none) M=Importation ACBP=A9 - 0001:000A5CF0 000136A8 C=CODE S=.text G=(none) M=UnitAnalyseSegCDM ACBP=A9 - 0001:000B9398 000025F4 C=CODE S=.text G=(none) M=UnitConfigTCO ACBP=A9 - 0001:000BB98C 000009C0 C=CODE S=.text G=(none) M=Unit_Pilote_aig ACBP=A9 - 0001:000BC34C 00003450 C=CODE S=.text G=(none) M=UnitConfigCellTCO ACBP=A9 - 0001:000BF79C 0002B264 C=CODE S=.text G=(none) M=UnitTCO ACBP=A9 - 0001:000EAA00 000030E4 C=CODE S=.text G=(none) M=UnitSR ACBP=A9 - 0001:000EDAE4 000027D4 C=CODE S=.text G=(none) M=UnitCDF ACBP=A9 - 0001:000F02B8 000015C7 C=CODE S=.text G=(none) M=verif_version ACBP=A9 - 0001:000F1880 0000114C C=CODE S=.text G=(none) M=UnitPareFeu ACBP=A9 - 0001:000F29CC 0003DCC8 C=CODE S=.text G=(none) M=UnitConfig ACBP=A9 - 0001:00130694 00002904 C=CODE S=.text G=(none) M=UnitDebug ACBP=A9 - 0001:00132F98 00000C00 C=CODE S=.text G=(none) M=UnitSimule ACBP=A9 - 0001:00133B98 00002558 C=CODE S=.text G=(none) M=Unitplace ACBP=A9 - 0001:001360F0 00042C98 C=CODE S=.text G=(none) M=UnitPrinc ACBP=A9 - 0001:00178D88 0000048D C=CODE S=.text G=(none) M=Signaux_complexes_GL ACBP=A9 + 0001:00000000 00005DF3 C=CODE S=.text G=(none) M=System ACBP=A9 + 0001:00005DF4 00000140 C=CODE S=.text G=(none) M=SysInit ACBP=A9 + 0001:00005F34 00000108 C=CODE S=.text G=(none) M=Types ACBP=A9 + 0001:0000603C 00000ED8 C=CODE S=.text G=(none) M=Windows ACBP=A9 + 0001:00006F14 00000038 C=CODE S=.text G=(none) M=Messages ACBP=A9 + 0001:00006F4C 00000338 C=CODE S=.text G=(none) M=SysConst ACBP=A9 + 0001:00007284 00006E28 C=CODE S=.text G=(none) M=SysUtils ACBP=A9 + 0001:0000E0AC 0000081B C=CODE S=.text G=(none) M=VarUtils ACBP=A9 + 0001:0000E8C8 00008042 C=CODE S=.text G=(none) M=Variants ACBP=A9 + 0001:0001690C 00000188 C=CODE S=.text G=(none) M=RTLConsts ACBP=A9 + 0001:00016A94 0000083C C=CODE S=.text G=(none) M=TypInfo ACBP=A9 + 0001:000172D0 00000358 C=CODE S=.text G=(none) M=ActiveX ACBP=A9 + 0001:00017628 0000A236 C=CODE S=.text G=(none) M=Classes ACBP=A9 + 0001:00021860 00000370 C=CODE S=.text G=(none) M=Consts ACBP=A9 + 0001:00021BD0 00009BFB C=CODE S=.text G=(none) M=Graphics ACBP=A9 + 0001:0002B7CC 00000124 C=CODE S=.text G=(none) M=Math ACBP=A9 + 0001:0002B8F0 000002B8 C=CODE S=.text G=(none) M=Contnrs ACBP=A9 + 0001:0002BBA8 00000198 C=CODE S=.text G=(none) M=CommCtrl ACBP=A9 + 0001:0002BD40 00000787 C=CODE S=.text G=(none) M=MultiMon ACBP=A9 + 0001:0002C4C8 00000038 C=CODE S=.text G=(none) M=Imm ACBP=A9 + 0001:0002C500 00000FF8 C=CODE S=.text G=(none) M=HelpIntfs ACBP=A9 + 0001:0002D4F8 00000058 C=CODE S=.text G=(none) M=WinSpool ACBP=A9 + 0001:0002D550 000010C8 C=CODE S=.text G=(none) M=Printers ACBP=A9 + 0001:0002E618 0000031F C=CODE S=.text G=(none) M=FlatSB ACBP=A9 + 0001:0002E938 000001A4 C=CODE S=.text G=(none) M=SyncObjs ACBP=A9 + 0001:0002EADC 000009BB C=CODE S=.text G=(none) M=UxTheme ACBP=A9 + 0001:0002F498 00000038 C=CODE S=.text G=(none) M=RichEdit ACBP=A9 + 0001:0002F4D0 00000038 C=CODE S=.text G=(none) M=ToolWin ACBP=A9 + 0001:0002F508 00000040 C=CODE S=.text G=(none) M=ShellAPI ACBP=A9 + 0001:0002F548 00000038 C=CODE S=.text G=(none) M=RegStr ACBP=A9 + 0001:0002F580 00000058 C=CODE S=.text G=(none) M=WinInet ACBP=A9 + 0001:0002F5D8 00000038 C=CODE S=.text G=(none) M=UrlMon ACBP=A9 + 0001:0002F610 0000006C C=CODE S=.text G=(none) M=ShlObj ACBP=A9 + 0001:0002F67C 00000060 C=CODE S=.text G=(none) M=CommDlg ACBP=A9 + 0001:0002F6DC 00000038 C=CODE S=.text G=(none) M=Dlgs ACBP=A9 + 0001:0002F714 000036D1 C=CODE S=.text G=(none) M=Dialogs ACBP=A9 + 0001:00032DE8 00004ADA C=CODE S=.text G=(none) M=ExtCtrls ACBP=A9 + 0001:000378C4 00000090 C=CODE S=.text G=(none) M=ComStrs ACBP=A9 + 0001:00037954 000007A0 C=CODE S=.text G=(none) M=Clipbrd ACBP=A9 + 0001:000380F4 00000128 C=CODE S=.text G=(none) M=StrUtils ACBP=A9 + 0001:0003821C 00003821 C=CODE S=.text G=(none) M=Buttons ACBP=A9 + 0001:0003BA40 00000038 C=CODE S=.text G=(none) M=ExtDlgs ACBP=A9 + 0001:0003BA78 00000068 C=CODE S=.text G=(none) M=IniFiles ACBP=A9 + 0001:0003BAE0 00000068 C=CODE S=.text G=(none) M=Registry ACBP=A9 + 0001:0003BB48 0000006C C=CODE S=.text G=(none) M=Mapi ACBP=A9 + 0001:0003BBB4 00000058 C=CODE S=.text G=(none) M=ExtActns ACBP=A9 + 0001:0003BC0C 00000038 C=CODE S=.text G=(none) M=ListActns ACBP=A9 + 0001:0003BC44 00009948 C=CODE S=.text G=(none) M=ComCtrls ACBP=A9 + 0001:0004558C 00000EA0 C=CODE S=.text G=(none) M=Themes ACBP=A9 + 0001:0004642C 0000D390 C=CODE S=.text G=(none) M=StdCtrls ACBP=A9 + 0001:000537BC 00000168 C=CODE S=.text G=(none) M=StdActns ACBP=A9 + 0001:00053924 00000D1F C=CODE S=.text G=(none) M=WinHelpViewer ACBP=A9 + 0001:00054644 00011403 C=CODE S=.text G=(none) M=Controls ACBP=A9 + 0001:00065A48 00001292 C=CODE S=.text G=(none) M=ActnList ACBP=A9 + 0001:00066CDC 00001B9C C=CODE S=.text G=(none) M=ImgList ACBP=A9 + 0001:00068878 000066E1 C=CODE S=.text G=(none) M=Menus ACBP=A9 + 0001:0006EF5C 0000CEFC C=CODE S=.text G=(none) M=Forms ACBP=A9 + 0001:0007BE58 00000060 C=CODE S=.text G=(none) M=ComConst ACBP=A9 + 0001:0007BEB8 00001259 C=CODE S=.text G=(none) M=ComObj ACBP=A9 + 0001:0007D114 00000038 C=CODE S=.text G=(none) M=StdVCL ACBP=A9 + 0001:0007D14C 00001793 C=CODE S=.text G=(none) M=AxCtrls ACBP=A9 + 0001:0007E8E0 00000060 C=CODE S=.text G=(none) M=OleConst ACBP=A9 + 0001:0007E940 00003519 C=CODE S=.text G=(none) M=OleCtrls ACBP=A9 + 0001:00081E5C 00000050 C=CODE S=.text G=(none) M=JConsts ACBP=A9 + 0001:00081EAC 000133EC C=CODE S=.text G=(none) M=jpeg ACBP=A9 + 0001:00095298 00000314 C=CODE S=.text G=(none) M=TlHelp32 ACBP=A9 + 0001:000955AC 000000D8 C=CODE S=.text G=(none) M=WinSock ACBP=A9 + 0001:00095684 00001F40 C=CODE S=.text G=(none) M=ScktComp ACBP=A9 + 0001:000975C4 000008EA C=CODE S=.text G=(none) M=OleServer ACBP=A9 + 0001:00097EB0 00000598 C=CODE S=.text G=(none) M=MSCommLib_TLB ACBP=A9 + 0001:00098448 00000040 C=CODE S=.text G=(none) M=MMSystem ACBP=A9 + 0001:00098488 00000038 C=CODE S=.text G=(none) M=Nb30 ACBP=A9 + 0001:000984C0 00000A18 C=CODE S=.text G=(none) M=MaskUtils ACBP=A9 + 0001:00098ED8 00002108 C=CODE S=.text G=(none) M=Mask ACBP=A9 + 0001:0009AFE0 0000924C C=CODE S=.text G=(none) M=Grids ACBP=A9 + 0001:000A422C 000015B4 C=CODE S=.text G=(none) M=UnitPilote ACBP=A9 + 0001:000A57E0 000004D0 C=CODE S=.text G=(none) M=Importation ACBP=A9 + 0001:000A5CB0 0000FE58 C=CODE S=.text G=(none) M=UnitAnalyseSegCDM ACBP=A9 + 0001:000B5B08 000025F4 C=CODE S=.text G=(none) M=UnitConfigTCO ACBP=A9 + 0001:000B80FC 000009C0 C=CODE S=.text G=(none) M=Unit_Pilote_aig ACBP=A9 + 0001:000B8ABC 00003450 C=CODE S=.text G=(none) M=UnitConfigCellTCO ACBP=A9 + 0001:000BBF0C 0002B264 C=CODE S=.text G=(none) M=UnitTCO ACBP=A9 + 0001:000E7170 00002C18 C=CODE S=.text G=(none) M=UnitSR ACBP=A9 + 0001:000E9D88 00002404 C=CODE S=.text G=(none) M=UnitCDF ACBP=A9 + 0001:000EC18C 000015C7 C=CODE S=.text G=(none) M=verif_version ACBP=A9 + 0001:000ED754 0000114C C=CODE S=.text G=(none) M=UnitPareFeu ACBP=A9 + 0001:000EE8A0 00035068 C=CODE S=.text G=(none) M=UnitConfig ACBP=A9 + 0001:00123908 00002904 C=CODE S=.text G=(none) M=UnitDebug ACBP=A9 + 0001:0012620C 00000C00 C=CODE S=.text G=(none) M=UnitSimule ACBP=A9 + 0001:00126E0C 00002390 C=CODE S=.text G=(none) M=Unitplace ACBP=A9 + 0001:0012919C 00036A1C C=CODE S=.text G=(none) M=UnitPrinc ACBP=A9 + 0001:0015FBB8 0000048D C=CODE S=.text G=(none) M=Signaux_complexes_GL ACBP=A9 0002:00000000 000000CC C=DATA S=.data G=DGROUP M=System ACBP=A9 0002:000000CC 00000020 C=DATA S=.data G=DGROUP M=SysInit ACBP=A9 0002:000000EC 00000254 C=DATA S=.data G=DGROUP M=SysUtils ACBP=A9 @@ -217,11 +217,11 @@ Detailed map of segments 0002:00049A30 00000014 C=BSS S=.bss G=DGROUP M=UnitCDF ACBP=A9 0002:00049A44 00000014 C=BSS S=.bss G=DGROUP M=verif_version ACBP=A9 0002:00049A58 00000004 C=BSS S=.bss G=DGROUP M=UnitPareFeu ACBP=A9 - 0002:00049A5C 0000039C C=BSS S=.bss G=DGROUP M=UnitConfig ACBP=A9 - 0002:00049DF8 00000028 C=BSS S=.bss G=DGROUP M=UnitDebug ACBP=A9 - 0002:00049E20 0000000C C=BSS S=.bss G=DGROUP M=UnitSimule ACBP=A9 - 0002:00049E2C 00000008 C=BSS S=.bss G=DGROUP M=Unitplace ACBP=A9 - 0002:00049E34 04159768 C=BSS S=.bss G=DGROUP M=UnitPrinc ACBP=A9 + 0002:00049A5C 000003A0 C=BSS S=.bss G=DGROUP M=UnitConfig ACBP=A9 + 0002:00049DFC 00000028 C=BSS S=.bss G=DGROUP M=UnitDebug ACBP=A9 + 0002:00049E24 0000000C C=BSS S=.bss G=DGROUP M=UnitSimule ACBP=A9 + 0002:00049E30 00000008 C=BSS S=.bss G=DGROUP M=Unitplace ACBP=A9 + 0002:00049E38 041597B8 C=BSS S=.bss G=DGROUP M=UnitPrinc ACBP=A9 Bound resource files @@ -247,4 +247,4 @@ Signaux_complexes_GL.res Signaux_complexes_GL.drf -Program entry point at 0001:00179098 +Program entry point at 0001:0015FEC8 diff --git a/UnitConfig.dfm b/UnitConfig.dfm index fd9069b..673572f 100644 --- a/UnitConfig.dfm +++ b/UnitConfig.dfm @@ -1,6 +1,6 @@ object FormConfig: TFormConfig - Left = 209 - Top = 203 + Left = 260 + Top = 147 Hint = 'Modifie la configuration selon les s'#233'lections choisies' BorderStyle = bsDialog Caption = 'Configuration g'#233'n'#233'rale' @@ -668,7 +668,7 @@ object FormConfig: TFormConfig Top = 8 Width = 633 Height = 497 - ActivePage = TabSheetAccessoires + ActivePage = TabSheetCDM Font.Charset = DEFAULT_CHARSET Font.Color = clBlack Font.Height = -11 @@ -1042,7 +1042,7 @@ object FormConfig: TFormConfig Left = 312 Top = 256 Width = 297 - Height = 185 + Height = 145 Caption = 'Divers' TabOrder = 5 object Label31: TLabel @@ -1073,13 +1073,6 @@ object FormConfig: TFormConfig Height = 13 Caption = 'Debug' end - object Label28: TLabel - Left = 8 - Top = 134 - Width = 163 - Height = 13 - Caption = 'Protocole COM/USB actionneurs :' - end object EditNbDetDist: TEdit Left = 240 Top = 20 @@ -1139,30 +1132,6 @@ object FormConfig: TFormConfig TabOrder = 4 OnClick = CheckBoxVerifXpressNetClick end - object EditPortCde: TEdit - Left = 176 - Top = 128 - Width = 113 - Height = 21 - Hint = 'Vitesse et protocole liaison COM/USB d'#233'clench'#233's par actionneurs' - ParentShowHint = False - ShowHint = True - TabOrder = 5 - end - object CheckBoxCR: TCheckBox - Left = 8 - Top = 152 - Width = 153 - Height = 17 - Hint = - 'Ajoute un CR apr'#232's l'#39'envoi de la cha'#238'ne sur le COM/USB d'#233'clench'#233 + - ' par un actionneur' - Caption = 'Envoyer CR (retour chariot)' - ParentShowHint = False - ShowHint = True - TabOrder = 6 - OnClick = CheckBoxCRClick - end end end object TabSheetAutonome: TTabSheet @@ -2326,7 +2295,7 @@ object FormConfig: TFormConfig Width = 129 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 1 OnChange = ComboBoxDecChange end @@ -2433,7 +2402,7 @@ object FormConfig: TFormConfig Width = 129 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 2 OnChange = ComboBoxAspChange end @@ -2719,7 +2688,7 @@ object FormConfig: TFormConfig Top = 56 Width = 193 Height = 21 - ItemHeight = 13 + ItemHeight = 0 TabOrder = 0 OnChange = ComboBoxDecodeurPersoChange end @@ -2738,7 +2707,7 @@ object FormConfig: TFormConfig Width = 145 Height = 21 Style = csDropDownList - ItemHeight = 13 + ItemHeight = 0 TabOrder = 2 OnChange = ComboBoxNationChange end @@ -3139,7 +3108,7 @@ object FormConfig: TFormConfig Width = 169 Height = 21 Hint = 'Nom de l'#39'accessoire d'#233'fini dans l'#39'onglet "accessoires COM/USB"' - ItemHeight = 13 + ItemHeight = 0 ParentShowHint = False ShowHint = True TabOrder = 6 @@ -4247,9 +4216,9 @@ object FormConfig: TFormConfig end object ListBoxAcc: TListBox Left = 8 - Top = 96 + Top = 64 Width = 233 - Height = 249 + Height = 281 Color = clBlack Font.Charset = DEFAULT_CHARSET Font.Color = clAqua @@ -4265,7 +4234,7 @@ object FormConfig: TFormConfig end object ButtonAjAccCom: TButton Left = 8 - Top = 72 + Top = 40 Width = 65 Height = 17 Caption = 'Nouveau' @@ -4274,18 +4243,18 @@ object FormConfig: TFormConfig end object ButtonSupAccCom: TButton Left = 80 - Top = 72 + Top = 40 Width = 65 Height = 17 Caption = 'Supprime' TabOrder = 2 OnClick = ButtonSupAccComClick end - object GroupBox27: TGroupBox + object GroupBoxDesc: TGroupBox Left = 264 - Top = 96 + Top = 64 Width = 329 - Height = 129 + Height = 113 Caption = 'Description de l'#39'accessoire' TabOrder = 3 object Label71: TLabel @@ -4295,13 +4264,6 @@ object FormConfig: TFormConfig Height = 13 Caption = 'Nom du p'#233'riph'#233'rique' end - object Label72: TLabel - Left = 10 - Top = 64 - Width = 133 - Height = 13 - Caption = 'Port COM/USB (de 1 '#224' 255)' - end object EditNomAcc: TEdit Left = 168 Top = 24 @@ -4313,26 +4275,18 @@ object FormConfig: TFormConfig TabOrder = 0 OnChange = EditNomAccChange end - object EditPortCom: TEdit - Left = 256 - Top = 56 - Width = 33 - Height = 21 - TabOrder = 1 - OnChange = EditPortComChange - end - object ButtonOuvreCom: TButton - Left = 14 - Top = 93 - Width = 75 - Height = 20 - Hint = 'R'#233'ouvre les ports COMs demand'#233's' - Caption = 'Ouvre COMs' - ParentShowHint = False - ShowHint = True - TabOrder = 2 - OnClick = ButtonOuvreComClick - end + end + object ButtonOuvreCom: TButton + Left = 14 + Top = 357 + Width = 75 + Height = 20 + Hint = 'R'#233'ouvre les ports COMs demand'#233's' + Caption = 'Ouvre COMs' + ParentShowHint = False + ShowHint = True + TabOrder = 4 + OnClick = ButtonOuvreComClick end end end diff --git a/UnitConfig.pas b/UnitConfig.pas index c344bd9..cbe6982 100644 --- a/UnitConfig.pas +++ b/UnitConfig.pas @@ -367,18 +367,13 @@ type outcopierentatquetexte1: TMenuItem; CheckBoxAffMemo: TCheckBox; RadioButtonCde: TRadioButton; - Label28: TLabel; - EditPortCde: TEdit; - CheckBoxCR: TCheckBox; TabSheetAccessoires: TTabSheet; ListBoxAcc: TListBox; ButtonAjAccCom: TButton; ButtonSupAccCom: TButton; - GroupBox27: TGroupBox; + GroupBoxDesc: TGroupBox; Label71: TLabel; EditNomAcc: TEdit; - Label72: TLabel; - EditPortCom: TEdit; ComboBoxAccComUSB: TComboBox; Label73: TLabel; LabelInfoAcc: TLabel; @@ -568,11 +563,9 @@ type procedure outcopierentatquetexte1Click(Sender: TObject); procedure RadioButtonCdeClick(Sender: TObject); procedure ButtonOuvreComClick(Sender: TObject); - procedure CheckBoxCRClick(Sender: TObject); procedure ButtonAjAccComClick(Sender: TObject); procedure EditNomAccChange(Sender: TObject); - procedure EditPortComChange(Sender: TObject); - procedure ListBoxAccMouseDown(Sender: TObject; Button: TMouseButton; + procedure ListBoxAccMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure ComboBoxAccComUSBChange(Sender: TObject); procedure ButtonSupAccComClick(Sender: TObject); @@ -585,13 +578,13 @@ type procedure modif_ComboTS(Sender : TObject); procedure modif_ComboL(Sender : TObject); procedure cb_onclick(Sender : Tobject); + procedure tb_onChange(sender : TObject); end; const // constantes du fichier de configuration NomConfig='ConfigGenerale.cfg'; Debug_ch='Debug'; -ProtocolePortCde_ch='ProtocolePortCde'; AntiTimeoutEthLenz_ch='AntiTimeoutEthLenz'; Verif_AdrXpressNet_ch='Verif_AdrXpressNet'; Filtrage_det_ch='Filtrage_det'; @@ -609,7 +602,6 @@ Init_dem_interfaceUSBCOM_ch='Init_demUSBCOM'; Init_dem_interfaceEth_ch='Init_demETH'; IPV4_INTERFACE_ch='Ipv4_interface'; PROTOCOLE_SERIE_ch='Protocole_serie'; -CR_ch='Cr'; INTER_CAR_ch='Inter_car'; Tempo_maxi_ch='Tempo_maxi'; Entete_ch='Entete'; @@ -657,14 +649,14 @@ section_accCOM_ch='[section_accCOMUSB]'; var FormConfig: TFormConfig; - AdresseIPCDM,AdresseIP,PortCom,portComCde,recuCDM,residuCDM,trainsauve : string; + AdresseIPCDM,AdresseIP,PortCom,recuCDM,residuCDM,trainsauve : string; portCDM,TempoOctet,TimoutMaxInterface,Valeur_entete,PortInterface,prot_serie,NumPort,debug, LigneCliqueePN,AncLigneCliqueePN,clicMemo,Nb_cantons_Sig,protocole,Port, ligneclicAig,AncLigneClicAig,ligneClicSig,AncligneClicSig,EnvAigDccpp,AdrBaseDetDccpp, ligneClicBr,AncligneClicBr,ligneClicAct,AncLigneClicAct,Adressefeuclic,NumTrameCDM, Algo_localisation,Verif_AdrXpressNet,ligneclicTrain,AncligneclicTrain,AntiTimeoutEthLenz, - ligneDCC,decCourant,AffMemoFenetre,NbreComCde,avecCR,ligneClicAccCOM,AncligneClicAccCOM : integer; + ligneDCC,decCourant,AffMemoFenetre,NbreComCde,ligneClicAccCOM,AncligneClicAccCOM : integer; ack_cdm,clicliste,config_modifie,clicproprietes,confasauver,trouve_MaxPort, modif_branches,ConfigPrete,trouve_section_dccpp,trouve_section_trains,trouve_section_acccomusb, @@ -673,7 +665,9 @@ var // composants dynamiques Gp1 : TGroupBox; - Cb1,Cb2,Cb3,CbVis : TCheckBox; + CheckBoxCR,Cb1,Cb2,Cb3,CbVis : TCheckBox; + EditPortCde: Tedit; + LabelPortCde : Tlabel; EditT : Array[1..10] of Tedit; ComboL1,ComboL2,ComboTS1,ComboTS2 : Array[1..10] of TComboBox; ShapeT : array[1..10] of TShape; @@ -920,11 +914,13 @@ function encode_AccCOM(index : integer) : string; var s : string; begin s:=Tablo_acc_COMUSB[index].nom; - s:=s+','+inttoSTR(Tablo_acc_COMUSB[index].NumCom); if Tablo_acc_COMUSB[index].ScvAig then s:=s+',1' else s:=s+',0'; if Tablo_acc_COMUSB[index].ScvDet then s:=s+',1' else s:=s+',0'; if Tablo_acc_COMUSB[index].ScvAct then s:=s+',1' else s:=s+',0'; if Tablo_acc_COMUSB[index].ScvVis then s:=s+',1' else s:=s+',0'; + if Tablo_acc_COMUSB[index].cr then s:=s+',1' else s:=s+',0'; + s:=s+','+Tablo_acc_COMUSB[index].protocole; + result:=s; end; @@ -1746,12 +1742,6 @@ begin // port com writeln(fichierN,Protocole_serie_ch+'=',portcom); - // porotocole COM cde accessoires - writeln(fichierN,ProtocolePortCde_ch+'=',portComcde); - - // avec CR - writeln(fichierN,CR_ch+'=',avecCR); - // temporisation caractère TempoOctet writeln(fichierN,Inter_Car_ch+'=',IntToSTR(TempoOctet)); @@ -2839,18 +2829,14 @@ var s,sa,SOrigine: string; Tablo_acc_COMUSB[NbAcc_USBCOM].nom:=copy(sa,1,i-1); delete(sa,1,i); val(sa,i,erreur); - Tablo_acc_COMUSB[NbAcc_USBCOM].NumCom:=i; - Tablo_com_cde[NbAcc_USBCOM].NumAcc:=NbAcc_USBCOM; - i:=pos(',',sa); delete(sa,1,i); - val(sa,i,erreur); Tablo_acc_COMUSB[NbAcc_USBCOM].ScvAig:=i=1; i:=pos(',',sa);Delete(sa,1,i); val(sa,i,erreur); Tablo_acc_COMUSB[NbAcc_USBCOM].ScvDet:=i=1; - i:=pos(',',sa);Delete(sa,1,i); + i:=pos(',',sa);Delete(sa,1,i); val(sa,i,erreur); Tablo_acc_COMUSB[NbAcc_USBCOM].ScvAct:=i=1; @@ -2858,7 +2844,19 @@ var s,sa,SOrigine: string; val(sa,i,erreur); Tablo_acc_COMUSB[NbAcc_USBCOM].ScvVis:=i=1; + i:=pos(',',sa);Delete(sa,1,i); + val(sa,i,erreur); + Tablo_acc_COMUSB[NbAcc_USBCOM].cr:=i=1; + i:=pos(',',sa);Delete(sa,1,i); + val(sa,i,erreur); + Tablo_acc_COMUSB[NbAcc_USBCOM].protocole:=sa; + + // extraire le numéro de com5:9600,n,8,1 + i:=extract_int(sa); + if i=0 then Affiche('Erreur COM nul : '+sOrigine,clred); + Tablo_acc_COMUSB[NbAcc_USBCOM].NumCom:=i; + Tablo_com_cde[NbAcc_USBCOM].NumAcc:=NbAcc_USBCOM; end; NbreComCde:=NbAcc_USBCOM; until (sOrigine='0') or (NbAcc_USBCOM>=NbAccMaxi_USBCOM); @@ -3090,17 +3088,6 @@ var s,sa,SOrigine: string; end; - sa:=uppercase(CR_ch)+'='; - i:=pos(sa,s); - if i=1 then - begin - inc(nv); - delete(s,i,length(sa)); - val(s,avecCR,erreur); - if erreur<>0 then Affiche('Erreur CR: '+sOrigine,clred); - if (avecCR<0) or (avecCR>1) then avecCR:=0; - end; - // configuration du port com interface sa:=uppercase(PROTOCOLE_SERIE_ch)+'='; i:=pos(sa,s); @@ -3114,17 +3101,6 @@ var s,sa,SOrigine: string; portcom:=s; end; - // configuration du port com interface commande accessoires - sa:=uppercase(ProtocolePortCde_ch)+'='; - i:=pos(sa,s); - if i=1 then - begin - inc(nv); - delete(s,i,length(sa)); - portcomcde:=s; - end; - - // temporisation entre 2 caractères sa:=uppercase(INTER_CAR_ch)+'='; i:=pos(sa,s); @@ -3617,7 +3593,6 @@ begin except Affiche('Fichier '+NomConfig+' non trouvé : création d''un fichier vide par défaut',clred); portcom:='COM3:57600,N,8,1,2'; - portComCde:='COM5:115200,n,8,1'; adresseIPCDM:='127.0.0.1';portCDM:=9999; adresseIP:='192.168.1.23';portInterface:=5550; verifVersion:=true; @@ -3783,12 +3758,6 @@ begin changeUSB:=portcom<>s; portcom:=s; - s:=EditPortCDE.Text; - if s='' then s:='COMX:115200,N,8,1'; - changeUSBcde:=portcomcde<>s; - portcomcde:=s; - - val(EditTempoOctetUSB.text,i,erreur); if erreur<>0 then begin labelInfo.Caption:='Valeur temporisation octet incorrecte';ok:=false;end; TempoOctet:=i; @@ -3849,7 +3818,6 @@ begin if CheckFenEt.checked then fenetre:=1 else fenetre:=0; if CheckBoxAffMemo.checked then AffMemoFenetre:=1 else AffMemoFenetre:=0; - if checkBoxCR.Checked then avecCR:=1 else avecCR:=0; AvecTCO:=CheckAvecTCO.checked; MasqueBandeauTCO:=CheckBandeauTCO.checked; lay:=editLay.Text; @@ -4003,7 +3971,6 @@ begin EditFiltrDet.text:=intToSTR(filtrageDet0); EditComUSB.Text:=PortCom; - EditPortCde.Text:=portcomcde; EditFonte.text:=IntToSTR(TailleFonte); editdebug.Text:=IntToSTR(debug); CheckBoxVerifXpressNet.Checked:=Verif_AdrXpressNet=1; @@ -4026,7 +3993,6 @@ begin CheckLanceCDM.Checked:=LanceCDM; CheckAvecTCO.checked:=avecTCO; CheckBandeauTCO.Checked:=MasqueBandeauTCO; - checkBoxCR.Checked:=avecCR=1; RadioButton4.Checked:=ServeurInterfaceCDM=0; RadioButton5.Checked:=ServeurInterfaceCDM=1; @@ -4152,18 +4118,39 @@ begin if clicliste or (ligneClicAccCOM<0) then exit; cb:=(sender as Tcheckbox); s := cb.Name; - Affiche(s,clyellow); if pos('Aig',s)<>0 then Tablo_acc_COMUSB[ligneClicAccCOM+1].ScvAig:=cb.Checked; if pos('Det',s)<>0 then Tablo_acc_COMUSB[ligneClicAccCOM+1].ScvDet:=cb.Checked; if pos('Act',s)<>0 then Tablo_acc_COMUSB[ligneClicAccCOM+1].ScvAct:=cb.Checked; if pos('Vis',s)<>0 then Tablo_acc_COMUSB[ligneClicAccCOM+1].ScvVis:=cb.Checked; - + if s='CheckBoxCR' then Tablo_acc_COMUSB[ligneClicAccCOM+1].CR:=cb.Checked; s:=encode_AccCOM(ligneClicAccCOM+1); ListBoxAcc.Items[ligneClicAccCOM]:=s; ListBoxAcc.Selected[ligneClicAccCOM]:=true; - end; +procedure TformConfig.tb_onChange(sender : TObject); +var s,te : string; + tb : Tedit; + i : integer; +begin + if clicliste or (ligneClicAccCOM<0) then exit; + tb:=(sender as Tedit); + s:=tb.Name; + te:=tb.text; + if s='EditPortCde' then Tablo_acc_COMUSB[ligneClicAccCOM+1].Protocole:=te; + s:=encode_AccCOM(ligneClicAccCOM+1); + ListBoxAcc.Items[ligneClicAccCOM]:=s; + i:=pos(':',te);if i=0 then begin LabelInfo.caption:='Syntaxe incorrecte';exit;end; + te:=copy(te,1,i); + i:=extract_int(te); + if i=0 then begin LabelInfo.caption:='Erreur COM nul';exit;end; + LabelInfo.caption:=''; + Tablo_acc_COMUSB[ligneClicAccCOM+1].NumCom:=i; + Tablo_com_cde[ligneClicAccCOM+1].NumAcc:=ligneClicAccCOM+1; + ListBoxAcc.Selected[ligneClicAccCOM]:=true; +end; + + procedure TFormConfig.FormCreate(Sender: TObject); var i,j,y,l,LongestLength,PixelLength : integer; s,LongestString : string; @@ -4454,7 +4441,7 @@ begin gp1:=TgroupBox.Create(FormConfig.TabSheetAccessoires); with gp1 do begin - Left:=264;Top:=232;Width:=groupBox27.Width;Height:=70; + Left:=264;Top:=groupBoxDesc.top+groupBoxDesc.Height+10;Width:=groupBoxDesc.Width;Height:=70; parent:=TabSheetAccessoires; caption:='Services envoyés à l''accessoire'; Name:='Gp1'; @@ -4506,6 +4493,41 @@ begin onclick:=formconfig.cb_onclick; end; + CheckBoxCR:=TCheckBox.Create(FormConfig.TabSheetAccessoires); + with CheckBoxCR do + begin + Left:=10;Top:=56;Width:=170;Height:=12; + caption:='Envoyer CR (retour chariot)'; + name:='CheckBoxCR'; + parent:=GroupBoxDesc; + hint:='Envoie un CR après toute chaîne'; + ShowHint:=true; + onclick:=formconfig.cb_onclick; + end; + + EditPortCde:=TEdit.Create(FormConfig.TabSheetAccessoires); + with EditPortCde do + begin + Left:=150;Top:=76;Width:=170;Height:=12; + name:='EditPortCde'; + text:=''; + parent:=GroupBoxDesc; + hint:='Protocole de communication'; + ShowHint:=true; + OnChange:=formconfig.tb_onChange; + end; + + LabelPortCde:=TLabel.Create(FormConfig.TabSheetAccessoires); + with LabelPortCde do + begin + Left:=10;Top:=78;Width:=170;Height:=12; + caption:='Protocole de communication'; + name:='LabelPortCde'; + parent:=GroupBoxDesc; + hint:='Protocole de communication'; + ShowHint:=true; + end; + {if FileExists('Image_Signaux.jpg') then ImageSignaux.Picture.LoadFromFile('Image_Signaux.jpg') else @@ -4559,11 +4581,11 @@ begin if (index<1) or (index>NbAccMaxi_USBCOM) then exit; clicliste:=true; formConfig.editNomAcc.Text:=Tablo_acc_COMUSB[index].nom; - formConfig.editPortCom.Text:=intToSTR(Tablo_acc_COMUSB[index].NumCom); cb1.Checked:=Tablo_acc_COMUSB[index].ScvAig; cb2.Checked:=Tablo_acc_COMUSB[index].ScvDet; cb3.Checked:=Tablo_acc_COMUSB[index].ScvAct; cbVis.Checked:=Tablo_acc_COMUSB[index].ScvVis; + EditPortCde.text:=Tablo_acc_COMUSB[index].protocole; clicliste:=false; end; @@ -12230,7 +12252,6 @@ var ss,s : string; clicliste:=true; formConfig.editNomAcc.text:=''; - formConfig.editPortCom.Text:=''; // suppression n:=0; @@ -12382,15 +12403,11 @@ begin begin index:=tablo_com_cde[i].NumAcc; if connecte_port_usb_cde(index) then - Affiche('COM'+intToSTR(tablo_acc_comusb[index].numcom)+' commande actionneurs ouvert',clLime) - else Affiche('COM'+intToSTR(tablo_acc_comusb[index].numcom)+' commande actionneurs non ouvert',clOrange); + Affiche('COM'+intToSTR(tablo_acc_comusb[index].numcom)+' périphérique ouvert',clLime) + else Affiche('COM'+intToSTR(tablo_acc_comusb[index].numcom)+' périphérique non ouvert',clOrange); end; end; -procedure TFormConfig.CheckBoxCRClick(Sender: TObject); -begin - if checkBoxCR.Checked then avecCR:=1 else avecCR:=0; -end; procedure TFormConfig.ButtonAjAccComClick(Sender: TObject); begin @@ -12413,24 +12430,7 @@ begin end; end; -procedure TFormConfig.EditPortComChange(Sender: TObject); -var s : string; - i,erreur : integer; -begin - if clicliste or (ligneClicAccCOM<0) then exit; - if affevt then affiche('Evt Edit port Change',clyellow); - with Formconfig do - begin - val(EditPortCom.Text,i,erreur); - if (i<1) or (i>255) then exit; - Tablo_acc_COMUSB[ligneClicAccCOM+1].NumCom:=i; - s:=encode_AccCOM(ligneClicAccCOM+1); - ListBoxAcc.Items[ligneClicAccCOM]:=s; - ListBoxAcc.Selected[ligneClicAccCOM]:=true; - s:=EditNomAcc.Text; - ComboBoxAccComUSB.Items[ligneClicAccCOM]:=s+' (COM'+intToSTR(Tablo_acc_COMUSB[ligneClicAccCOM+1].NumCom)+')'; - end; -end; + procedure TFormConfig.ListBoxAccMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); diff --git a/UnitPrinc.pas b/UnitPrinc.pas index 05308ac..303bbe1 100644 --- a/UnitPrinc.pas +++ b/UnitPrinc.pas @@ -597,7 +597,8 @@ var Tablo_acc_COMUSB : array[1..NbAccMaxi_USBCOM] of record nom : string; NumCom : integer; // numéro de port COM - ScvAig,ScvDet,ScvAct,ScvVis : boolean ; // services + ScvAig,ScvDet,ScvAct,ScvVis,cr : boolean ; // services, visible, avecCR + protocole: string; end; // tableau des croisement rencontrés par la fonction suivant_alg3 @@ -10208,7 +10209,7 @@ begin if Tablo_com_cde[numacc].PortOuvert then begin trainDest:=Tablo_actionneur[i].trainDest; - if avecCR=1 then trainDest:=TrainDest+#13; + if Tablo_acc_COMUSB[numacc].cr then trainDest:=TrainDest+#13; if numacc=1 then Formprinc.MSCommCde1.Output:=TrainDest; if numacc=2 then Formprinc.MSCommCde2.Output:=TrainDest; Affiche(st+' TrainDecl='+trainDecl+' Envoie port COM'+intToSTR(v)+' commande: '+TrainDest,clyellow); @@ -10304,7 +10305,7 @@ begin if Tablo_acc_COMUSB[i].ScvAct then begin s:='A'+intToSTR(adr)+','+intToSTR(etat)+','+trainDecl; - if avecCR=1 then s:=s+#13; + if Tablo_acc_COMUSB[i].cr then s:=s+#13; if Tablo_acc_COMUSB[i].ScvVis then Affiche(s,clWhite); if i=1 then Formprinc.MSCommCde1.Output:=s; if i=2 then Formprinc.MSCommCde2.Output:=s; @@ -10502,7 +10503,7 @@ begin if Tablo_acc_COMUSB[i].ScvDet then begin s:='D'+intToSTR(adresse)+','+intToSTR(etat01)+','+train; - if avecCR=1 then s:=s+#13; + if Tablo_acc_COMUSB[i].cr then s:=s+#13; if Tablo_acc_COMUSB[i].ScvVis then Affiche(s,clOrange); if i=1 then Formprinc.MSCommCde1.Output:=s; if i=2 then Formprinc.MSCommCde2.Output:=s; @@ -10601,7 +10602,7 @@ begin if Tablo_acc_COMUSB[i].ScvAig then begin s:='T'+intToSTR(adresse)+','+intToSTR(pos); - if avecCR=1 then s:=s+#13; + if Tablo_acc_COMUSB[i].cr then s:=s+#13; if Tablo_acc_COMUSB[i].ScvVis then Affiche(s,clOrange); if i=1 then Formprinc.MSCommCde1.Output:=s; if i=2 then Formprinc.MSCommCde2.Output:=s; @@ -11544,9 +11545,9 @@ end; // connecte un port usb pour la comm actionneurs. Si le port n'est pas ouvert, renvoie false // index= index du tableau tablo_com_cde function connecte_port_usb_cde(index : integer) : boolean; -var i,j,numport : integer; +var i,j,numport,vitesse,erreur : integer; trouve : boolean; - s,sc : string; + s,sc,portComCde : string; com : TMSComm; begin if (index<0) or (index>MaxComUSBCde) then @@ -11563,6 +11564,7 @@ begin exit; end; trouve:=false; + portComCde:=tablo_acc_comusb[index].protocole; case index of 1 : com:=formprinc.MSCommCde1; @@ -11577,9 +11579,17 @@ begin j:=pos(',',PortComcde); j:=posEx(',',PortComcde,j+1); j:=posEx(',',PortComcde,j+1); - //j:=posEx(',',PortComcde,j+1); - sc:=copy(portCom,i+1,j-i-1); + sc:=copy(portComCde,i+1,j-i+1); + val(sc,vitesse,erreur); + if (vitesse<>300) and (vitesse<>1200) and (vitesse<>2400) and (vitesse<>4800) and (vitesse<>9600) and + (vitesse<>19200) and (vitesse<>38400) and (vitesse<>57600) and (vitesse<>115200) then + begin + Affiche('Vitesse périphérique COM ('+intToSTR(vitesse)+') incorrecte',clred); + tablo_com_cde[index].PortOuvert:=false; + result:=false; + exit; + end; Settings:=sc; // vitesse,n,8,1 Handshaking:=0; {0=aucun 1=Xon-Xoff 2=cts 3=RTS-Xon-Xoff 4=5=protocoles "maison"} SThreshold:=1; @@ -12409,7 +12419,6 @@ begin Decodeur[5]:='Digikeijs 4018';Decodeur[6]:='Unisemaf Paco';Decodeur[7]:='Stéphane Ravaut';Decodeur[8]:='Arcomora'; Decodeur[9]:='LS-DEC-NMBS';Decodeur[10]:='B-models'; - portComcde:='COMX:115200,n,8,1'; OsBits:=0; if IsWow64Process then begin