Merge branch 'master' of https://github.com/Horizon-OC/Horizon-OC
This commit is contained in:
42
.github/workflows/deploy_pages.yml
vendored
Normal file
42
.github/workflows/deploy_pages.yml
vendored
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
# Simple workflow for deploying static content to GitHub Pages
|
||||||
|
name: Deploy static content to Pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
# Runs on pushes targeting the default branch
|
||||||
|
push:
|
||||||
|
branches: ["master"]
|
||||||
|
|
||||||
|
# Allows you to run this workflow manually from the Actions tab
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
pages: write
|
||||||
|
id-token: write
|
||||||
|
|
||||||
|
# Allow one concurrent deployment
|
||||||
|
concurrency:
|
||||||
|
group: "pages"
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
# Single deploy job since we're just deploying
|
||||||
|
deploy:
|
||||||
|
environment:
|
||||||
|
name: github-pages
|
||||||
|
url: ${{ steps.deployment.outputs.page_url }}
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Setup Pages
|
||||||
|
uses: actions/configure-pages@v2
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-pages-artifact@v1
|
||||||
|
with:
|
||||||
|
# Upload entire repository
|
||||||
|
path: './pages/dist'
|
||||||
|
- name: Deploy to GitHub Pages
|
||||||
|
id: deployment
|
||||||
|
uses: actions/deploy-pages@v1
|
||||||
95
.github/workflows/main.yml
vendored
95
.github/workflows/main.yml
vendored
@@ -1,95 +0,0 @@
|
|||||||
name: Release and Deploy
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- '**'
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
pages: write
|
|
||||||
id-token: write
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: "release-deploy"
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
release:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: |
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y zip gh
|
|
||||||
|
|
||||||
- name: Create dist zip
|
|
||||||
run: |
|
|
||||||
mkdir -p release
|
|
||||||
zip -r release/dist.zip dist
|
|
||||||
|
|
||||||
- name: Get latest release tag
|
|
||||||
id: get_latest_tag
|
|
||||||
run: |
|
|
||||||
LATEST_TAG=$(gh release list --limit 1 --json tagName -q '.[0].tagName' || echo "")
|
|
||||||
echo "LATEST_TAG=$LATEST_TAG" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: Determine release tag
|
|
||||||
run: |
|
|
||||||
if [ -z "${{ env.LATEST_TAG }}" ]; then
|
|
||||||
echo "RELEASE_TAG=v0.1.0" >> $GITHUB_ENV
|
|
||||||
else
|
|
||||||
echo "RELEASE_TAG=${{ env.LATEST_TAG }}" >> $GITHUB_ENV
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Create or update GitHub release
|
|
||||||
run: |
|
|
||||||
gh auth setup-git
|
|
||||||
if gh release view "$RELEASE_TAG" &>/dev/null; then
|
|
||||||
gh release edit "$RELEASE_TAG" --generate-notes
|
|
||||||
else
|
|
||||||
gh release create "$RELEASE_TAG" --generate-notes
|
|
||||||
fi
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
- name: Upload hoc.kip
|
|
||||||
run: gh release upload "$RELEASE_TAG" dist/atmosphere/hoc.kip --clobber
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
- name: Upload dist.zip
|
|
||||||
run: gh release upload "$RELEASE_TAG" release/dist.zip --clobber
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
deploy:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
needs: release
|
|
||||||
environment:
|
|
||||||
name: github-pages
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Setup Pages
|
|
||||||
uses: actions/configure-pages@v2
|
|
||||||
|
|
||||||
- name: Ensure dist exists
|
|
||||||
run: |
|
|
||||||
if [ ! -d "./pages/dist" ]; then
|
|
||||||
echo "Error: ./pages/dist does not exist"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Upload artifact
|
|
||||||
uses: actions/upload-pages-artifact@v1
|
|
||||||
with:
|
|
||||||
path: './pages/dist'
|
|
||||||
|
|
||||||
- name: Deploy to GitHub Pages
|
|
||||||
id: deployment
|
|
||||||
uses: actions/deploy-pages@v1
|
|
||||||
131
README.md
131
README.md
@@ -1,58 +1,111 @@
|
|||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
|
|
||||||
|
<img src="assets/logo.png" alt="logo" width="160"/>
|
||||||
|
|
||||||

|
---
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|
[](https://discord.com/invite/S3eX47dHsB)
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
  [](https://discord.com/invite/S3eX47dHsB)   []()
|
---
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
### DISCLAIMER: THIS TOOL CAN BE DANGEROUS IF MISUSED. PROCEED WITH CAUTION
|
## ⚠️ Disclaimer
|
||||||
* Due to the design of Horizon OS, overclocking RAM can cause **NAND DAMAGE**. Ensure to have a NAND Backup<br>
|
|
||||||
|
|
||||||
A open source overclocking tool for Nintendo Switch consoles running Atmosphere custom firmware<br>
|
> **THIS TOOL CAN BE DANGEROUS IF MISUSED. PROCEED WITH CAUTION.**
|
||||||
|
> Due to the design of Horizon OS, **overclocking RAM can cause NAND DAMAGE.**
|
||||||
|
> Ensure you have a **full NAND backup** before proceeding.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Features:
|
## 🌀 About
|
||||||
CPU overclock up to 2397MHz on Mariko units, 2091MHz on Erista units<br>
|
|
||||||
GPU up to 1305MHz on Mariko units, 998MHz on Erista units<br>
|
|
||||||
RAM up to 3200MHz on Mariko units, 2360MHz on Erista units<br>
|
|
||||||
Over/undervolting<br>
|
|
||||||
Configurator<br>
|
|
||||||
Works with most homebrew<br>
|
|
||||||
|
|
||||||
*Higher (potentially dangerous) frequencies are unlockable*<br>
|
**Horizon OC** is an open-source overclocking tool for Nintendo Switch consoles running **Atmosphere custom firmware**.
|
||||||
*The exact maximum overclock varies per console*<br>
|
It enables advanced CPU, GPU, and RAM tuning with user-friendly configuration tools.
|
||||||
## Installation
|
|
||||||
Ensure you have the latest version of [Atmosphere](https://github.com/Atmosphere-NX/Atmosphere) and [Ultrahand](https://github.com/ppkantorski/Ultrahand-Overlay) installed before continuing<br>
|
|
||||||
Grab latest hoc.kip from releases tab<br>
|
|
||||||
If using hekate, edit hekate_ipl.ini to include "kip1=atmosphere/kips/*". No need for editing if using fusee<br>
|
|
||||||
Download latest Horizon OC sysmodule from releases tab<br>
|
|
||||||
Extract sysmodule into root of SD card<br>
|
|
||||||
|
|
||||||
Alternatively, you can download the configurator and click the two install buttons<br>
|
---
|
||||||
|
|
||||||
|
## 🚀 Features
|
||||||
|
|
||||||
## Configuration
|
* **CPU:** Up to `2397MHz` (Mariko) / `2091MHz` (Erista)
|
||||||
Download the latest configurator on your computer<br>
|
* **GPU:** Up to `1305MHz` (Mariko) / `998MHz` (Erista)
|
||||||
Run the file<br>
|
* **RAM:** Up to `3200MHz` (Mariko) / `2360MHz` (Erista)
|
||||||
Select the drive your SD card or UMS device is mounted as<br>
|
* Over/undervolting support
|
||||||
Configure the kip to your liking, and in the end, save it<br>
|
* Built-in configurator
|
||||||
|
* Compatible with most homebrew
|
||||||
|
|
||||||
## Building
|
> ⚡ *Higher (potentially dangerous) frequencies are unlockable.*
|
||||||
Set up a development enviorment ready to compile Atmosphere<br>
|
> ⚙️ *Exact maximum values vary per console.*
|
||||||
Git clone Atmosphere, and move the cloned folder into build/<br>
|
|
||||||
Insert Source/stratosphere folder into build/<br>
|
|
||||||
Run build.sh
|
|
||||||
|
|
||||||
To build the configurator, cd into Source/Configurator<br>
|
---
|
||||||
Run build.bat or run "python -m PyInstaller --onefile --add-data "assets;assets" --icon=assets/icon.ico --noconsole src/main.py"<br>
|
|
||||||
|
|
||||||
|
## 🧩 Installation
|
||||||
|
|
||||||
|
1. Ensure you have the latest versions of
|
||||||
|
|
||||||
|
* [Atmosphere](https://github.com/Atmosphere-NX/Atmosphere)
|
||||||
|
* [Ultrahand Overlay](https://github.com/ppkantorski/Ultrahand-Overlay)
|
||||||
|
2. Download the latest **hoc.kip** file from the [Releases](../../releases) tab.
|
||||||
|
3. If using **Hekate**, edit `hekate_ipl.ini` to include:
|
||||||
|
|
||||||
|
```
|
||||||
|
kip1=atmosphere/kips/*
|
||||||
|
```
|
||||||
|
|
||||||
|
*(No changes needed if using fusee.)*
|
||||||
|
4. Download and extract the **Horizon OC sysmodule** to the root of your SD card.
|
||||||
|
5. Alternatively, use the **Configurator** and click the **Install** buttons for automatic setup.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚙️ Configuration
|
||||||
|
|
||||||
|
1. Download the latest **Configurator** on your computer.
|
||||||
|
2. Run the executable.
|
||||||
|
3. Select your SD card or UMS drive.
|
||||||
|
4. Adjust overclocking settings as desired.
|
||||||
|
5. Click **Save** to apply your configuration.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧱 Building from Source
|
||||||
|
|
||||||
|
1. Set up a development environment for compiling **Atmosphere**.
|
||||||
|
2. Clone Atmosphere:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/Atmosphere-NX/Atmosphere.git
|
||||||
|
```
|
||||||
|
3. Move the cloned folder into `build/`.
|
||||||
|
4. Insert your `Source/stratosphere` folder into `build/`.
|
||||||
|
5. Run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./build.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
To build the Configurator:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd Source/Configurator
|
||||||
|
build.bat
|
||||||
|
# or
|
||||||
|
python -m PyInstaller --onefile --add-data "assets;assets" --icon=assets/icon.ico --noconsole src/main.py
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 💎 Credits
|
||||||
|
|
||||||
|
* **Lightos** & **Dominatorul** – RAM timings
|
||||||
|
* **KazushiMe** & **meha** – Switch-OC-Suite
|
||||||
|
* **sys-clk team** – sys-clk
|
||||||
|
* **b0rd2death** – Ultrahand sys-clk fork
|
||||||
|
* **Lightos** & **Sammybigio2011** – Early testing
|
||||||
|
|
||||||
## Credits
|
|
||||||
Lightos for RAM timings<br>
|
|
||||||
KazushiMe and meha for Switch-Oc-Suite<br>
|
|
||||||
sys-clk team for sys-clk<br>
|
|
||||||
b0rd2death for Ultrahand sys-clk fork<br>
|
|
||||||
Lightos and Sammybigio2011 for early testing<br>
|
|
||||||
|
|||||||
Reference in New Issue
Block a user