- Fixed a bug which caused the status file to be overwritten before it

could be read on initialization.
- The new SLS magnet driver for the TCP/IP concentrator now successfully
  writes data


SKIPPED:
	psi/slsecho.c
This commit is contained in:
koennecke
2010-04-16 09:02:17 +00:00
parent 5bcbacfb81
commit eaf96b1893
5 changed files with 8 additions and 4 deletions

View File

@ -52,6 +52,7 @@ extern void NetWatchInit(void); /* in nwatch.c */
#define DEFAULTINIFILE "servo.tcl" #define DEFAULTINIFILE "servo.tcl"
#define DEFAULTSTATUSFILE "sicsstat.tcl" #define DEFAULTSTATUSFILE "sicsstat.tcl"
#define INIT(F) { void F(void); F(); }
static int iFortifyScope; static int iFortifyScope;
@ -259,6 +260,8 @@ int InitServer(char *file, pServer * pServ)
SCInvoke(self->dummyCon, self->pSics, pBueffel); SCInvoke(self->dummyCon, self->pSics, pBueffel);
} }
INIT(StatusFileInit);
/* exit handlers need to be installed here */ /* exit handlers need to be installed here */
atexit(StopExit); atexit(StopExit);
(void)Fortify_CheckAllMemory(); (void)Fortify_CheckAllMemory();

1
ofac.c
View File

@ -34,7 +34,6 @@ static void InitGeneral(void)
INIT(SctDriveAdapterInit); INIT(SctDriveAdapterInit);
INIT(LogReaderInit); INIT(LogReaderInit);
INIT(LogSetupInit); INIT(LogSetupInit);
INIT(StatusFileInit);
INIT(InstallBackground); INIT(InstallBackground);
INIT(MakeProtocol); INIT(MakeProtocol);
INIT(CommandLogInit); INIT(CommandLogInit);

View File

@ -384,6 +384,7 @@ int SctMakeDriveObject(SConnection * pCon, SicsInterp * pSics,
RegisterSICSOBJKillCmd(pNew, argv[1]); RegisterSICSOBJKillCmd(pNew, argv[1]);
} }
SetHdbProperty(pNew->objectNode, "sicsdev", argv[1]); SetHdbProperty(pNew->objectNode, "sicsdev", argv[1]);
SetHdbProperty(pNew->objectNode, "type", "drivable");
status = AddCommand(pSics, status = AddCommand(pSics,
argv[1], InterInvokeSICSOBJ, KillDriveOBJ, pNew); argv[1], InterInvokeSICSOBJ, KillDriveOBJ, pNew);
if (status != 1) { if (status != 1) {

View File

@ -25,7 +25,8 @@ proc slsecho::readreply {} {
proc slsecho::sendwrite {num} { proc slsecho::sendwrite {num} {
set val [sct target] set val [sct target]
hupdate [sct]/stop 0 hupdate [sct]/stop 0
sct send "$num:w:0x90:$val:write" # sct send "$num:w:0x90:$val:write"
sct send "$num:s:0x9c:$val:write"
return readreply return readreply
} }
#-------------------------------------------------------------- #--------------------------------------------------------------

View File

@ -718,8 +718,8 @@ makesctcontroller echo testprot testprot.dat
source ../tcl/stddrive.tcl source ../tcl/stddrive.tcl
source ../tcl/slsecho.tcl source ../tcl/slsecho.tcl
makesctcontroller slssct slsecho taspmagnet:5001 #makesctcontroller slssct slsecho taspmagnet:5001
#makesctcontroller slssct slsecho localhost:8080 makesctcontroller slssct slsecho localhost:8080
slsecho::makeslsecho ma1 0 slssct slsecho::makeslsecho ma1 0 slssct
} }