1. About

This is a quick note of testing ReactOS on Android with the Limbo PC Emulator app.

2. Introduction to Limbo PC Emulator for Android

As the name suggested, it is a PC emulator for Android. Read more https://github.com/limboemu/limbo/

3. Introduction to ReactOS

Read https://reactos.org/what-is-reactos for more information.

Below is a short quote from the above link:

ReactOS is able to run Windows software
ReactOS is able to run Windows drivers
ReactOS looks-like Windows
ReactOS is free and open-source

4. Download

  1. Install Limbo PC Emulator for Android - mostly we would choose x86 architecture for guest OS version. Download it from this Github release.

  2. Download a ReactOS release version. For example, at the time of this writing, I downloaded ReactOS-0.4.14-iso.zip, unzip this file to get ReactOS-0.4.14.iso.

5. Installation

  1. Configure Limbo as screenshot 01 below (you can play around with other fields, but Graphic, Audio, Network should better follow the screenshot.)

For the CD-ROOM, mount (open) the iso file, for example, ReactOS-0.4.14.iso.

  1. When installing ReactOS, I mostly chose the first default options shown by ReactOS (aka click next and next).

6. Tip to share files to ReactOS

There are a few ways. This note lists 03 ways.

The easiest ways

1. Method 1 - the ISO way

Copy all files to a folder and generate an ISO file from this folder. Then simply mount it to the CD-ROM in Limbo Settings.

You can generate an iso file with any tool. On Android, there is an app named ISOCraft

On Ubuntu, there is a tool named genisoimage

  • If you want to generate it with Termux: On Android, install Termux, then install Ubuntu in Termux. Inside that Ubuntu, install and use genisoimage:
apt install genisoimage
genisoimage -o filename.iso directoryOfData

This is a one-way transfer from host Android to guest OS ReactOS. For 2 ways use the below method.

2. Method 2 - the server way

On Android run an HTTP server or TotalCmd-Wifi transfer or any local server. (I use Termux -> Nodejs npm HTTP-server for the transfer of one way), visit its IP address from ReactOS.

Note: the gateway IP address in the ReactOS network is the 127.0.0.1 of the Android host. screenshot 02 below. Add the server port according to your server.

7. Screenshots

1. Screenshot 01 - Limbo configuration

2. Screenshot 02 - networking

2. Screenshot 03 - Bonus ReactOS running Winbox

We can use Web/ Mikrotik mobile app (both Android and iOS available) to configure Mikrotik routers.

Here for the testing purpose, I tried running Winbox on ReactOS. It could run smoothly on my Android phone.

Others

  1. In Limbo Settings:
    • Set run VM in high priority
    • Disable fullscreen
  2. Using
    • Tested with QEMU both v5 and v2: not so obvious differences in speed with my phone
    • Format disk as FAT seems to be more stable on my phone
    • Must shutdown ReactOS properly before existing Limbo. Otherwise, the OS can be corrupted
    • Run Limbo in Floating mode (Android 11), let ReactOS run with much smaller screen size, the performance seems to be faster.