Atmosphere/docs/components/modules/ams_mitm.md
2020-04-26 19:18:49 +01:00

2 KiB

ams_mitm

This module provides methods to intercept services provided by other system modules. It is further sub-divided according to the service it targets.

bpc_mitm

bpc_mitm enables intercepting requests to power control services. It currently intercepts:

  • am system module (to intercept the Reboot/Power buttons in the overlay menu)
  • fatal system module (to simplify payload reboot logic significantly)
  • Homebrew Loader (to allow homebrew to take advantage of the feature)

fs_mitm

fs_mitm enables intercepting file system operations. It can log, deny, delay, replace, or redirect any request made to the file system. It enables LayeredFS to function, which allows for replacement of game assets.

hid_mitm

hid_mitm enables intercepting requests to controller device services. It currently intercepts:

  • Homebrew Loader (to help homebrew not need to be recompiled due to a breaking change introduced in the past)

ns_mitm

ns_mitm enables intercepting requests to application control services. It currently intercepts:

  • Web Applets (to facilitate hbl web browser launching)

set_mitm

set_mitm enables intercepting requests to the system settings service. It currently intercepts:

  • ns system module and games (to allow for overriding game locales)
  • All settings requests

Firmware Version

set_mitm intercepts the GetFirmwareVersion command, if the requester is qlaunch or maintenance. It modifies the display_version field of the returned system version, causing the version to display in settings as #.#.# (AMS #.#.#). This allows users to easily verify what version of Atmosphère they are running.

System Settings

set_mitm intercepts the GetSettingsItemValueSize and GetSettingsItemValue commands for all requesters. It does so in order to enable user configuration of system settings, which are parsed from /atmosphere/system_settings.ini on boot. See here for more information on the system settings format.