web-cfw-loader/index.html
2018-05-17 20:01:00 -05:00

90 lines
3.2 KiB
HTML

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="style.css" />
<link href="favicon.png" rel="icon" type="image/x-icon" />
<title>Switch Payload Loader v1.1</title>
</head>
<body>
<div id="title">
<h1>Web Fusée Payload Launcher</h1>
<p>Fusee Launcher ported to JavaScript using WebUSB.</p>
</div>
<div id="disclaimer">
<p>
Source can be found on <a href="https://github.com/ElijahZAwesome/web-cfw-loader/">GitHub</a> (or by hitting view source, there is no backend!).
Ported from <a href="https://github.com/reswitched/fusee-launcher">fusee-launcher</a>.
Thanks to ktemkin and ReSwitched for Fusée Gelée and a ton of other things!
</p>
</div>
<div>
<h4>Instructions:</h4>
<p>Put the Switch in RCM, and connect it to your device.</p>
<p>Select either the example payload, or upload one.</p>
<p>Press 'Run Payload!'</p>
<p>On the consent screen that appears, select 'APX' and hit confirm.</p>
<p>If all goes well, the payload will launch!</p>
</div>
<div>
<h4>Info:</h4>
<p>This is moderately tested. I just kind wrote it and whatever. I'm not responsible if anything goes wrong!</p>
<p>This does NOT work on Windows due to a limitation in the Chrome implementation of WebUSB (and probably other reasons!)</p>
<p>This does NOT currently work on any browser but Chrome, because they don't implement WebUSB.</p>
<p>On Linux, you might get an access denied error!
If you do, you can try creating a file at <code>/etc/udev/rules.d/50-switch.rules</code>
With the following contents:<br>
<code>SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0664", GROUP="plugdev"</code>
</p>
<p>This has been tested and appears to work on Linux, OSX, Android (unrooted) and Chromebooks. Your mileage may vary.</p>
</div>
<div>
<h3>Payload:</h3>
<div>
<form id="mainForm">
<p>
<input type="radio" name="payload" id="hekate v5" value="hekate v5" checked>
<label for="hekate v5">Hekate for 5.0.x Switches</label>
</p>
<p>
<input type="radio" name="payload" id="hekate v4" value="hekate v4">
<label for="hekate v4">Hekate for 4.x Switches</label>
</p>
<p>
<input type="radio" name="payload" id="fusee" value="fusee">
<label for="fusee">(Re)Switched test payload (fusee)</label>
</p>
<p>
<input type="radio" name="payload" id="uploaded" value="uploaded">
<label for="uploaded">Upload payload:<br></label>
<input type="file" id="payloadUpload" accept=".bin">
</p>
<p>
<input type="checkbox" name="shouldDebug" id="shouldDebug">
<label for="shouldDebug">Just output payload byte array</label>
</p>
</form>
<button class="btn" id="goButton">Run Payload!</button>
<button class="btn" id="clearlogsbutton" onclick="clearLog();">Clear Logs</button>
</div>
</div>
<h3>Logs:</h3>
<textarea cols="80" rows="12" id="output"></textarea>
<script src="./fusee.bin.js"></script>
<script src="./main.js"></script>
</body>
</html>