diff --git a/hal/src/main/native/athena/FRCDriverStation.cpp b/hal/src/main/native/athena/FRCDriverStation.cpp index e80f48c0f9..3d1e1c9199 100644 --- a/hal/src/main/native/athena/FRCDriverStation.cpp +++ b/hal/src/main/native/athena/FRCDriverStation.cpp @@ -19,6 +19,7 @@ #include #include +#include "HALInitializer.h" #include "hal/DriverStation.h" #include "hal/Errors.h" @@ -446,6 +447,7 @@ void HAL_RefreshDSData(void) { } void HAL_ProvideNewDataEventHandle(WPI_EventHandle handle) { + hal::init::CheckInit(); driverStation->newDataEvents.Add(handle); } diff --git a/hal/src/main/native/athena/HAL.cpp b/hal/src/main/native/athena/HAL.cpp index 6fd045903f..0bd967c5f0 100644 --- a/hal/src/main/native/athena/HAL.cpp +++ b/hal/src/main/native/athena/HAL.cpp @@ -82,6 +82,7 @@ void InitializeHAL() { } // namespace init void ReleaseFPGAInterrupt(int32_t interruptNumber) { + hal::init::CheckInit(); if (!global) { return; } @@ -252,6 +253,7 @@ HAL_RuntimeType HAL_GetRuntimeType(void) { } int32_t HAL_GetFPGAVersion(int32_t* status) { + hal::init::CheckInit(); if (!global) { *status = NiFpga_Status_ResourceNotInitialized; return 0; @@ -260,6 +262,7 @@ int32_t HAL_GetFPGAVersion(int32_t* status) { } int64_t HAL_GetFPGARevision(int32_t* status) { + hal::init::CheckInit(); if (!global) { *status = NiFpga_Status_ResourceNotInitialized; return 0; @@ -268,6 +271,7 @@ int64_t HAL_GetFPGARevision(int32_t* status) { } uint64_t HAL_GetFPGATime(int32_t* status) { + hal::init::CheckInit(); if (!global) { *status = NiFpga_Status_ResourceNotInitialized; return 0; @@ -314,6 +318,7 @@ uint64_t HAL_ExpandFPGATime(uint32_t unexpandedLower, int32_t* status) { } HAL_Bool HAL_GetFPGAButton(int32_t* status) { + hal::init::CheckInit(); if (!global) { *status = NiFpga_Status_ResourceNotInitialized; return false; @@ -322,6 +327,7 @@ HAL_Bool HAL_GetFPGAButton(int32_t* status) { } HAL_Bool HAL_GetSystemActive(int32_t* status) { + hal::init::CheckInit(); if (!watchdog) { *status = NiFpga_Status_ResourceNotInitialized; return false; @@ -330,6 +336,7 @@ HAL_Bool HAL_GetSystemActive(int32_t* status) { } HAL_Bool HAL_GetBrownedOut(int32_t* status) { + hal::init::CheckInit(); if (!watchdog) { *status = NiFpga_Status_ResourceNotInitialized; return false; diff --git a/hal/src/main/native/sim/DriverStation.cpp b/hal/src/main/native/sim/DriverStation.cpp index b99a5dd910..a8630fa2ae 100644 --- a/hal/src/main/native/sim/DriverStation.cpp +++ b/hal/src/main/native/sim/DriverStation.cpp @@ -326,6 +326,7 @@ void HAL_ProvideNewDataEventHandle(WPI_EventHandle handle) { if (gShutdown) { return; } + hal::init::CheckInit(); driverStation->newDataEvents.Add(handle); }