api_version.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include "common/common_types.h"
  5. // This file contains yuzu's HLE API version constants.
  6. namespace HLE::ApiVersion {
  7. // Horizon OS version constants.
  8. constexpr u8 HOS_VERSION_MAJOR = 12;
  9. constexpr u8 HOS_VERSION_MINOR = 1;
  10. constexpr u8 HOS_VERSION_MICRO = 0;
  11. // NintendoSDK version constants.
  12. constexpr u8 SDK_REVISION_MAJOR = 1;
  13. constexpr u8 SDK_REVISION_MINOR = 0;
  14. constexpr char PLATFORM_STRING[] = "NX";
  15. constexpr char VERSION_HASH[] = "76b10c2dab7d3aa73fc162f8dff1655e6a21caf4";
  16. constexpr char DISPLAY_VERSION[] = "12.1.0";
  17. constexpr char DISPLAY_TITLE[] = "NintendoSDK Firmware for NX 12.1.0-1.0";
  18. // Atmosphere version constants.
  19. constexpr u8 ATMOSPHERE_RELEASE_VERSION_MAJOR = 1;
  20. constexpr u8 ATMOSPHERE_RELEASE_VERSION_MINOR = 0;
  21. constexpr u8 ATMOSPHERE_RELEASE_VERSION_MICRO = 0;
  22. constexpr u32 AtmosphereTargetFirmwareWithRevision(u8 major, u8 minor, u8 micro, u8 rev) {
  23. return u32{major} << 24 | u32{minor} << 16 | u32{micro} << 8 | u32{rev};
  24. }
  25. constexpr u32 AtmosphereTargetFirmware(u8 major, u8 minor, u8 micro) {
  26. return AtmosphereTargetFirmwareWithRevision(major, minor, micro, 0);
  27. }
  28. constexpr u32 GetTargetFirmware() {
  29. return AtmosphereTargetFirmware(HOS_VERSION_MAJOR, HOS_VERSION_MINOR, HOS_VERSION_MICRO);
  30. }
  31. } // namespace HLE::ApiVersion