Skip to content

Instantly share code, notes, and snippets.

@fishcu
Last active August 7, 2025 13:40
Show Gist options
  • Save fishcu/687b016ee42bb4cb46f8e54b4b56768e to your computer and use it in GitHub Desktop.
Save fishcu/687b016ee42bb4cb46f8e54b4b56768e to your computer and use it in GitHub Desktop.
MagicX Zero 28: How to set up a clean rooted system

MagicX Zero 28

This guide details how to set up a clean rooted system.

The list of global Android hotkeys may be useful: https://github.com/Magicx-Breeze/Dawn/wiki/Default_Control_EN

Flash the System Image

Flash the image with the tool. Make sure to enable the "startup" setting.

Enable root

Enable "OEM unlock" in the developer options.

Get the the latest release from here: https://github.com/topjohnwu/magisk/releases

Sideload the app with the command: adb install path/to/magisk.apk

Create boot.img

Log into the device with adb shell.

Create the image with the following command: dd if=/dev/block/by-name/boot of=/sdcard/boot.img

Patch boot.img

Start the Magisk app > install > select and patch a file > choose boot.img from internal storage > "let's go".

Take note of the file name of the patched boot image that is created.

Download the patched boot.img to PC

adb pull /sdcard/Download/magisk_patched-<version>_<hash>.img

Flash the patched boot.img

Reboot to bootloader: adb reboot bootloader

Make sure that fastboot devices shows the device.

If using Windows, make sure that device manager recognizes the device in bootloader mode.

If Windows doesn't recognize the device, here's how to update the drivers. First, download the drivers from https://developer.android.com/studio/run/win-usb.

Then, install the downloaded drivers as follows:

Device Manager > Right click on the device with the exclamation mark > Update drivers > Browse my computer for drivers > Let me pick from a list of available drivers on my computer > Show all > Have Disk > Select extracted files > Pick Android Bootloader Interface > "Yeah man, I want to do it" through the warnings.

Flash the patched boot image with the command: fastboot flash boot magisk_patched.img

After flashing succeeded, reboot the device: fastboot reboot

You may need to disconnect the USB cable because the device may repeatedly enter the charging mode.

Other Setup Steps

Establish a WiFi connection on your device.

You may want to install LeanKeyboard first to make it easier to enter the WiFi password.

Set the time zone to your local time zone.

In the developer settings, set the default USB configuration to "file transfer".

Disable location services.

Lower the Maximum Volume

Log into an ADB shell with adb shell.

Run the following command: tinymix 3 50

Note: This fix will not persist through restarts.

Disable the Boot Animation:

The boot animation makes a horrible sound. We can disable it by entirely removing the boot animation, which will fall back to a stock Android animation without sound.

First, remount the system partition to be writable: adb remount

Then, log into an ADB shell with adb shell.

Delete the boot animation: rm /system/media/bootanimation.zip

Install AdAway

AdAway is an adblocker that works via the hosts file, thus it will work in all apps.

Get the latest release from here: https://github.com/AdAway/AdAway/releases

Before installing it, open Magisk > Settings > enable systemless hosts.

Sideload the AdAway APK with adb install path/to/adaway.apk.

Open AdAway app, then choose "root based method".

The device must be connected to WiFi to download the latest patched hosts file.

Install Apps, Emulators, and a Default Launcher

These may be installed from stores such as F-Droid and Aurora Store, or directly via adb install.

This guide provides a link to the APK where applicable so that installing a store is not required.

LeanKeyboard

Makes it possible to use the d-pad and buttons for typing.

Get the latest release from here: https://github.com/yuliskov/LeanKeyboard/releases

Note: You may need to force stop and disable the AOSP keyboard in System Settings > Apps & notifications > See all X apps > Android Keyboard (AOSP) in order to use LeanKeyboard properly.

Firefox Browser

Better support for the d-pad and buttons than Chrome.

Get the latest non-beta version from here: https://ftp.mozilla.org/pub/fenix/releases

Get the arm64-v8a version.

Change the default browser to Firefox.

These Firefox extensions reduce ads and clutter and are recommended:

  • uBlock origin
  • I still don't care about cookies

Launcher

Set the chosen launcher as Android default: Android Settings > Apps > Default Apps > Home app.

Dawn launcher

Official download link not yet available. You may extract the APK from the pre-installed image until then.

Parts of the official setup video go into detail about how to setup Dawn launcher: https://www.youtube.com/watch?v=7h5ok2_irzk

Daijishou

Get the latest release from here: https://github.com/TapiocaFox/Daijishou/releases

ES-DE

Paid app. Support the devs on Patreon: https://www.patreon.com/es_de

Emulators

Duckstation

Download link: https://downloads.duckstation.org/android/

M64Plus FZ

Download link: https://apkpure.com/m64plus-fz-emulator/org.mupen64plusae.v3.fzurita/download

Recommended emulation profile: GlideN64-Fast or GlideN64-Medium.

PPSSPP

Download link: https://www.ppsspp.org/download/

DraStic

Download link: https://apkpure.com/drastic-ds-emulator/com.dsemu.drastic/download

Flycast

Get the latest release from here: https://github.com/flyinghead/flycast/releases

RetroArch

Get the latest nightly version here: https://www.retroarch.com/index.php?page=platform

Download the regular version (not the 64-bit or 32-bit specific version).

Suggested RetroArch Setup

Suggested settings:

  • Input > Menu Controls > Disable "Menu Swap OK and Cancel Buttons"
  • Input > Hotkeys > Menu Toggle / Menu Toggle (Controller Combo): Set to G-button or other desired button combination
  • Input > Hotkeys > Set up hotkeys as desired.
  • Video > Scaling > Scale Factor: Set to 1.00x
  • Video > Output > Video Driver: Set to vulkan. Exit and restart RetroArch.
  • User Interface > On-Screen Notifications > Notification Visibility > Disable "Input (Autoconfig) Connection Notifications"
  • User Interface > On-Screen Overlay > Enable "Hide Overlay When Controller is Connected"
  • Saving > Enable "Save State Thumbnails"
  • Saving > Enable "Auto Save State" and "Auto Load State"
  • Saving > Enable "Increment Save State Index Automatically"
  • Logging > Enable "Logging Verbosity". This will enable logging in general.
  • Logging > Enable "Log to File"
  • Logging > Enable "Timestamp Log Files"

Download cores for the systems you want to emulate. The following are example recommendations.

  • Main Menu > Load Core > Download a Core:
    • NES: Nestopia, FCEUmm
    • SNES: Snes9x, Beetle Supafaust
    • GB / GBC: Gambatte
    • GBA: mGBA

After setting the video driver to vulkan and restarting RetroArch, update the shaders and presets:

  • Main Menu > Online Updater > Run "Update Slang Shaders"
@itskenny0
Copy link

Awesome guide, thanks a lot!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment