[Nintendo Switch] Atmosphère 1.2.0 (Pré Lançamento)

Siga o NewsInside Podcast no Spotify AQUI. Essa semana já tem novo episódio sobre Games Nacionais


Feliz 15 de julho!

O Atmosphère consiste em vários componentes, cada um dos quais substitui / modifica um componente diferente do sistema:

  • Fusée: Carregador de primeiro estágio, responsável por carregar e validar o estágio 2 (TrustZone personalizado) mais o package2 (Kernel / FIRM sysmodules) e corrigi-los conforme necessário. Isso substitui todas as funcionalidades normalmente em Package1loader / NX Bootloader.
  • Sept: Payload usado para ativar o suporte para derivação de chave de tempo de execução em 7.0.0.
  • Exosphère: Customized TrustZone, para executar um Secure Monitor personalizado
  • Thermosphère: suporte EL2 EmuNAND, ou seja, backup e uso de imagens NAND virtualizadas / redirecionadas
  • Stratosphère: Sysmodule (s) customizado (s), ambos no estilo Rosalina para estender o kernel / fornecer novos recursos, e do estilo de reimplementação do carregador para enganchar ações importantes do sistema
  • Troposphère: patches do Horizon OS no nível do aplicativo, usados para implementar os recursos desejáveis do CFW

Melhorias:

O que Mudou? (Inglês) - Pré-lançamento 18/10/2021
  • boot was updated to reflect the latest official behavior for display/battery management.
    • This should fix any issues that might result from running older releases on the OLED model, if you’re somehow in a position to do so.
  • The “target firmware” system was changed to allow the bootloader to specify an approximation, rather than the true target firmware.
    • Previously we expected compliant bootloaders to inspect SYSTEM:/ to determine the specific target firmware.
    • Now, we only require an approximate version, with major version == true major version and approximate version <= true version.
    • This greatly simplifies bootloader requirements, and correspondingly all code for accessing SYSTEM has been removed from fusee.
      • This should result in a substantial speedup when booting emummc with fusee, as SYSTEM accesses were the most expensive thing done previously.
    • This should resolve any inconsistency in firmware detection when booting via fusee vs hekate.
    • This should also improve our compatibility with micro firmware releases, making it more likely that atmosphere “just works” if nothing important has changed.
  • Dynamic resource limit determination logic was implemented in pm to match latest official behavior.
    • This greatly simplifies/makes consistent the resource limits on older firmwares, as well.
  • An enormous amount of refactoring was performed under the hood, including:
    • Please Note: If you are a developer who uses Atmosphere-libs, a number of changes here are breaking.
      • Feel free to contact SciresM#524 for help updating your program.
    • The OS namespace had many primitives implemented/made more accurate.
    • Since mesosphere is now always-on, os::LightEvent (which required newer SVCs) is now globally usable (and used by stratosphere where relevant).
    • Assertions are now true no-ops when building for release.
    • Stratosphere is now built with -Wextra/-Werror.
    • Most “common” logic in system module main.cpp files was moved into libstratosphere.
      • Please Note: main.cpp files for prior atmosphere-libs will no longer work, for a really large number of reasons.
    • A number of longstanding code style issues were corrected.
    • Mesosphere now uses util::BitFlagSet for SVC permissions.
    • Mesosphere now puts its relocation table inside .bss, which allows that memory to be reclaimed after relocations are performed.
      • These changes save ~16KB of memory in the kernel, all said and done.
    • A number of locations in stratosphere where memory could be saved were spotted and taken advantage of, leading to ~150-200KB of saved memory.
    • The spl and loader system module was refactored to better reflect official logic.
    • sf ipc server code was updated to only emit mitm/defer logic when that logic is actually required somewhere in process.
    • tipc ipc server code was updated to reflect changes to official logic made in 13.0.0.
    • Many, many other minor changes, please talk to SciresM#524 or read the relevant commits if you want to know more.
  • A number of minor issues were fixed, including:
    • Mesosphere’s handling of SVC permissions on thread pin/unpin was updated to reflect official kernel behavior.
    • util::CountTrailingZeroes() was fixed to calculate the correct value when used at compile-time.
  • General system stability improvements to enhance the user’s experience.

Caso você queira baixar o Pré-Lançamento, faça no link abaixo:
Download Pré-Lançamento

Caso você queira checar se a versão 1.2.0 já tenha saido, confira no link abaixo:
Download Lançamento 1.2.0 ( a etiqueta laranja de pré-lançamento sumirá quando for lançado de vez)

[Nintendo Switch] Atmosphere 1.1.0

Siga o NewsInside Podcast no Spotify AQUI. Essa semana já tem novo episódio sobre Games Nacionais


Feliz 15 de julho!

O Atmosphère consiste em vários componentes, cada um dos quais substitui / modifica um componente diferente do sistema:

  • Fusée: Carregador de primeiro estágio, responsável por carregar e validar o estágio 2 (TrustZone personalizado) mais o package2 (Kernel / FIRM sysmodules) e corrigi-los conforme necessário. Isso substitui todas as funcionalidades normalmente em Package1loader / NX Bootloader.
  • Sept: Payload usado para ativar o suporte para derivação de chave de tempo de execução em 7.0.0.
  • Exosphère: Customized TrustZone, para executar um Secure Monitor personalizado
  • Thermosphère: suporte EL2 EmuNAND, ou seja, backup e uso de imagens NAND virtualizadas / redirecionadas
  • Stratosphère: Sysmodule (s) customizado (s), ambos no estilo Rosalina para estender o kernel / fornecer novos recursos, e do estilo de reimplementação do carregador para enganchar ações importantes do sistema
  • Troposphère: patches do Horizon OS no nível do aplicativo, usados para implementar os recursos desejáveis do CFW

Melhorias:

O que Mudou? (Inglês)

1.1.0 is Atmosphère’s fifty-fifth official release.

Please be sure to update fusee when upgrading to 1.1.0. fusee-primary no longer exists, and will not work any more.

Please note: Atmosphère 1.1.0 is currently in pre-release, and issues may be found that need to be fixed before full release.

  • If any bugs are reported while Atmosphère is in pre-release, they will be fixed and the build will be updated.
  • 1.1.0 will transition to release after a short amount of time has passed without pressing bug reports.

With thanks to the @switchbrew team, Atmosphère 1.1.0 is bundled with hbl 2.4.1, and hbmenu 3.4.1.

The following was changed since the last release:

  • Support was implemented for 13.0.0.
    • mesosphère was updated to reflect the latest official kernel behavior.
    • ncm was updated to reflect the latest official behaviors.
    • erpt was updated to reflect the latest official behaviors.
      • Two new services (“sprofile”) were added to erpt, and have been fully reimplemented.
      • Please Note: These services provide a way for settings to be pushed to consoles over the internet without system update.
        • Because there appear to be no settings pushed out yet, this implementation fundamentally cannot be fully tested right now, but hopefully there are no issues once settings begin being distributed.
  • The LogManager system module was reimplemented.
    • This system module provides services that some games use for logging.
    • Atmosphere’s reimplementation supports logging to the SD card (if lm!enable_sd_card_logging is true) and to ams.TMA.
      • To control the directory where logs are saved, modify the lm!sd_card_log_output_directory setting.
    • Atmosphere’s reimplementation is disabled by default (in order to save memory), but can be enabled by setting lm!enable_log_manager to true.
      • This will allow reading over logs from games which use the services (or potentially logging from homebrew in the future), which can be useful to developers.
      • Please note that when TMA is fully implemented in the future, enabling TMA will forcibly enable LogManager.
  • General system stability improvements to enhance the user’s experience.

Download Pré-lançamento: Por hora a versão 1.1.0 é um pré lançamento, quando virar um release estável, será pelo link abaixo
Download Lançamento

[Nintendo Switch] Atmosphere 0.20.1

Siga o NewsInside Podcast no Spotify AQUI, novos episódios mensais, gravações ao vivo na Twitch


O Atmosphère consiste em vários componentes, cada um dos quais substitui / modifica um componente diferente do sistema:

  • Fusée: Carregador de primeiro estágio, responsável por carregar e validar o estágio 2 (TrustZone personalizado) mais o package2 (Kernel / FIRM sysmodules) e corrigi-los conforme necessário. Isso substitui todas as funcionalidades normalmente em Package1loader / NX Bootloader;
  • Sept: Payload usado para ativar o suporte para derivação de chave de tempo de execução em 7.0.0;
  • Exosphère: Customized TrustZone, para executar um Secure Monitor personalizado;
  • Thermosphère: suporte EL2 EmuNAND, ou seja, backup e uso de imagens NAND virtualizadas / redirecionadas;
  • Stratosphère: Sysmodule (s) customizado (s), ambos no estilo Rosalina para estender o kernel / fornecer novos recursos, e do estilo de reimplementação do carregador para enganchar ações importantes do sistema;
  • Troposphère: patches do Horizon OS no nível do aplicativo, usados para implementar os recursos desejáveis do CFW.

Para Atualizar você pode usar o DeepSea que atualizará todos os homebrews no console.
Caso prefira atualize diretamente no Github do Atmosphere.

Download