@@ -88,9 +88,6 @@ protected override void OnStart(string[] args)
88
88
{
89
89
Log . Info ( Strings . GetString ( "svcStarting" ) ) ;
90
90
91
- // Load the service config.
92
- bool confLoaded = LoadConf ( ) ;
93
-
94
91
// Install WinRing0 to get EC access
95
92
try
96
93
{
@@ -109,31 +106,8 @@ protected override void OnStart(string[] args)
109
106
}
110
107
Log . Info ( Strings . GetString ( "drvLoadSuccess" ) ) ;
111
108
112
-
113
- if ( confLoaded && Config . FirmVerSupported )
114
- {
115
- EcInfo = new ( ) ;
116
- if ( _EC . ReadString ( 0xA0 , 0xC , out string ecVer ) && ecVer . Length == 0xC )
117
- {
118
- EcInfo . Version = ecVer ;
119
- Log . Debug ( $ "EC firmware version: { ecVer } ") ;
120
- }
121
- if ( _EC . ReadString ( 0xAC , 0x10 , out string ecDate ) && ecDate . Length == 0x10 )
122
- {
123
- try
124
- {
125
- string temp = $ "{ ecDate . Substring ( 4 , 4 ) } -{ ecDate . Substring ( 0 , 2 ) } -{ ecDate . Substring ( 2 , 2 ) } " +
126
- $ "T{ ecDate . Substring ( 8 , 2 ) . Replace ( ' ' , '0' ) } :{ ecDate . Substring ( 11 , 2 ) } :{ ecDate . Substring ( 14 , 2 ) } ";
127
- EcInfo . Date = DateTime . ParseExact ( temp , "s" , CultureInfo . InvariantCulture ) ;
128
- Log . Debug ( $ "EC firmware date: { EcInfo . Date : G} ") ;
129
- }
130
- catch ( FormatException ex )
131
- {
132
- Log . Error ( $ "Failed to parse EC firmware date: { ex . Message } ") ;
133
- Log . Debug ( $ "EC firmware date (raw): { ecDate } ") ;
134
- }
135
- }
136
- }
109
+ // Load the last applied YAMDCC config.
110
+ bool confLoaded = LoadConf ( ) ;
137
111
138
112
// Set up IPC server
139
113
Log . Info ( "Starting IPC server..." ) ;
@@ -403,6 +377,32 @@ private bool LoadConf()
403
377
{
404
378
Config = YAMDCC_Config . Load ( Paths . CurrentConf ) ;
405
379
Log . Info ( Strings . GetString ( "cfgLoaded" ) ) ;
380
+
381
+ if ( Config . FirmVerSupported )
382
+ {
383
+ EcInfo = new ( ) ;
384
+ if ( _EC . ReadString ( 0xA0 , 0xC , out string ecVer ) && ecVer . Length == 0xC )
385
+ {
386
+ EcInfo . Version = ecVer ;
387
+ Log . Debug ( $ "EC firmware version: { ecVer } ") ;
388
+ }
389
+ if ( _EC . ReadString ( 0xAC , 0x10 , out string ecDate ) && ecDate . Length == 0x10 )
390
+ {
391
+ try
392
+ {
393
+ string temp = $ "{ ecDate . Substring ( 4 , 4 ) } -{ ecDate . Substring ( 0 , 2 ) } -{ ecDate . Substring ( 2 , 2 ) } " +
394
+ $ "T{ ecDate . Substring ( 8 , 2 ) . Replace ( ' ' , '0' ) } :{ ecDate . Substring ( 11 , 2 ) } :{ ecDate . Substring ( 14 , 2 ) } ";
395
+ EcInfo . Date = DateTime . ParseExact ( temp , "s" , CultureInfo . InvariantCulture ) ;
396
+ Log . Debug ( $ "EC firmware date: { EcInfo . Date : G} ") ;
397
+ }
398
+ catch ( FormatException ex )
399
+ {
400
+ Log . Error ( $ "Failed to parse EC firmware date: { ex . Message } ") ;
401
+ Log . Debug ( $ "EC firmware date (raw): { ecDate } ") ;
402
+ }
403
+ }
404
+ }
405
+
406
406
return true ;
407
407
}
408
408
catch ( Exception ex )
0 commit comments