Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

ZRam Manager for R36S / ArkOS

A streamlined ZRam compression manager designed specifically for R36S handheld consoles running ArkOS. This tool optimizes system performance by utilizing compressed RAM, resulting in smoother gameplay and better multitasking.

🎮 What is ZRam?

ZRam creates a compressed block device in RAM, allowing your system to store more data in memory by compressing it on-the-fly. This is especially beneficial for handheld gaming devices with limited RAM, providing:

  • Improved game performance - Reduced stuttering and frame drops
  • Better multitasking - Run more background processes smoothly
  • Extended effective memory - Up to 2-3x more usable RAM through compression
  • Zero storage wear - No writes to SD card unlike traditional swap

📦 Installation

  1. Download ZRam Manager.sh from this repository
  2. Copy the file to your easyroms drive at: easyroms/ports/
  3. That's it! The script is ready to use.

🚀 Usage

On Your R36S Console:

  1. Navigate to Ports section in your menu
  2. Launch ZRam Manager.sh
  3. Use D-pad to navigate the menu:
    • Enable ZRam - Activate compression with optimal settings
    • Disable ZRam - Turn off ZRam
    • Custom ZRam - Configure size and algorithm manually
    • View Status - Check current ZRam usage and statistics
    • Exit - Close the manager

First-Time Setup (Recommended):

  1. Launch the script
  2. Select "Enable ZRam (Auto)"
  3. The script will automatically:
    • Detect your system RAM
    • Set ZRam to 50% of your RAM (optimal default)
    • Choose the fastest available compression algorithm (usually LZ4)
    • Configure autostart on system boot

That's it! ZRam will now automatically activate every time you power on your device.

⚙️ Features

  • Automatic RAM Detection - Detects and displays your system's total RAM
  • Smart Defaults - Automatically selects 50% of RAM and fastest algorithm
  • Dynamic Menus - Only shows valid options based on your hardware
  • Auto-start Support - Persist settings across reboots via systemd
  • Compression Algorithms:
    • LZ4 - Fastest, best for gaming (recommended)
    • LZO - Fast compression, good balance
    • ZSTD - Better compression ratio, slightly slower
    • Deflate - High compression, slower
  • Metro-Futuristic UI - Clean, compact interface optimized for small screens
  • D-pad Navigation - Full gamepad control, no keyboard needed

🎯 Performance Impact

Users typically experience:

  • 10-30% better performance in demanding games
  • Reduced loading stutters when switching between menus
  • Smoother emulation for high-end systems (PSP, N64, Dreamcast)
  • Better stability during extended gaming sessions

Compression Efficiency:

With LZ4 algorithm, you can typically achieve 2.5x - 3x compression ratio, effectively turning:

  • 1GB RAM → 2.5-3GB usable memory
  • 512MB RAM → 1.2-1.5GB usable memory

📊 Custom Configuration

Size Options:

  • 256 MB (Minimum)
  • 512 MB (Light usage)
  • 768 MB (Balanced)
  • 1024 MB (Recommended for 2GB+ RAM)
  • 1536 MB (Heavy multitasking)
  • 2048 MB (Maximum)

Note: The script only shows sizes up to your available RAM

Algorithm Selection:

Choose based on your priority:

  • LZ4 → Speed priority (gaming)
  • LZO → Balanced
  • ZSTD → Compression priority (multitasking)

🔧 Technical Details

  • Platform: ArkOS AeUX (R36S)
  • Requirements: Linux kernel with ZRam support, systemd, dialog
  • Configuration: /etc/zram.conf
  • Autostart Service: /etc/systemd/system/zram-swap.service
  • Startup Script: /usr/local/bin/zram-autostart.sh

📚 Resources

❓ FAQ

Q: Will this wear out my SD card?
A: No! ZRam uses RAM only, not storage. There are zero writes to your SD card.

Q: Does this drain battery faster?
A: Minimal impact. The slight CPU usage for compression is offset by reduced memory pressure.

Q: Can I disable it anytime?
A: Yes! Just launch the script and select "Disable ZRam". It will also remove autostart.

Q: Will it work on other devices?
A: This script is optimized for R36S/ArkOS but should work on any Linux system with ZRam support and dialog installed.

Q: Is it safe?
A: Absolutely! ZRam is a standard Linux kernel feature used by millions of devices including Android phones and Chromebooks.

Q: What if I run out of compressed RAM?
A: The system will simply use regular RAM management. ZRam gracefully handles memory pressure.

🐛 Troubleshooting

Script doesn't launch:

  • Ensure the file is executable: chmod +x "ZRam Manager.sh"
  • Check file location: Must be in easyroms/ports/

ZRam won't activate:

  • Verify kernel support: lsmod | grep zram
  • Try manual module load: sudo modprobe zram

Autostart not working:

  • Check service status: sudo systemctl status zram-swap.service
  • View logs: sudo journalctl -u zram-swap.service

📝 License

This project is free and open source. Feel free to modify and distribute.

🤝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page.

💬 Support

If you encounter any problems or have questions:

  1. Check the FAQ above
  2. Review the troubleshooting section
  3. Visit R36S Wiki for more guides
  4. Open an issue on this repository

⭐ Acknowledgments

  • Built for the R36S community
  • Documentation available at R36S Wiki
  • Optimized for ArkOS AeUX
  • Inspired by the need for better performance on handheld devices

Enjoy smoother gaming with ZRam Manager! 🎮✨

If this tool improved your gaming experience, consider giving it a ⭐ on GitHub!

About

Zram enabler for ArkOS installed R36S devices

Resources

Stars

17 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages