Files
nxnative-easy/dm/third_party/vulkan-headers/LICENSE.md
T
seedds 787f9a178e Hades runs on the Mac through a new Vulkan-on-Metal layer
Hades (0100535012974000, update 1.0.38233, SDK 9) renders with Vulkan through The Forge, not NVN.
The host now implements its 100 vk* imports on Metal in dm/gfx/vk/hle_vk.m, and the Vulkan loader
(subsdk0) and NVIDIA's driver (subsdk1) are not loaded. The title menu, the intro and Tartarus gameplay
run at 60 fps on the Mac, and a Metal validation run is clean. The iPhone build is untested.

- dm/gfx/vk/hle_vk.m: one Tegra X1-shaped device. Memory is a lazily made shared MTLBuffer; images are
  private MTLTextures. Command buffers are recorded on the host and replayed at vkQueueSubmit on the
  layer's own queue, which signals an MTLSharedEvent. Descriptor sets, update templates, render passes
  and pipelines are supported. The swapchain presents through the NVN layer's present path.
  vkGet*ProcAddr look names up in the HLE table, also trying a name without its KHR suffix.
- dm/gfx/tools/vk_shaders.py: SPIR-V to one metallib plus a slot table. It renumbers bindings per kind,
  flips vertex y, and lists only the resources the Metal entry point takes.
- nvn_mtl.m/h: mtl_device, mtl_ext_tex and mtl_present_ext for external producers. Their present
  waits on the producer's event.
- hle_nvn.c: dm_gfx_enter/leave and dm_vk_drain, so the background suspend also covers Vulkan submits.
- hle_oe.c: GetNotificationMessageEvent returns a host-owned auto-clear SystemEvent. The SDK's version
  returned an event the no-op oe::Initialize never created.
- patch_nso.py: the byte-table jump search looks 16 instructions back, not 8 (Hades main+0x1135d0).
  The output for every other module is byte-identical.
- Profile key `graphics vulkan`: build_ipa.sh ships $MSL_IOS/vk instead of the NVN chain libraries.
- dm/third_party/vulkan-headers: Vulkan-Headers 1.4.363, unmodified.
- dm/.gitignore: per-game host binaries (dm/host/dmhost_*).
2026-10-18 10:29:06 +08:00

495 B

Copyright 2015-2026 The Khronos Group Inc.

Files in this repository fall under one of these licenses:

  • Apache-2.0
  • MIT

Note: With the exception of parse_dependency.py, which is based on an external file, files using the MIT license also fall under Apache-2.0. Example:

SPDX-License-Identifier: Apache-2.0 OR MIT

Full license text of these licenses is available at: