Running Android x86 iso (5.1 rc1 or 4.4 r5) in my native resolution 2880x1800 fails with black screen with blinking cursor. Actually it is a prompt accepting commands but stops without any message or anything on screen.
Last commands visible on screen were:
I ran it with vga=ask parameter:
/kernel initrd=/initrd.img root=/dev/ram0 androidboot.hardware=android_x86 nomodeset vga=ask SRC= DATA=
And chose the offered 2880x1800x32: 357
Same if I run it with parameters directly in a command line either the vga= or UVESA_MODE=2880x1800 or tried UVESA_MODE=2880x1800x24 or UVESA_MODE=2880x1800x16.
If I choose 2560x1600x16, it works well, except for the resolution is low.
I run it in Parallels Desktop on OS X.
How to run it in a native 2880x1800 resolution?
Answer
I was having a similar issue running Android-x86 on VMware (Windows host). The solution was to force the virtual machine to load enough memory for the virtual graphics adapter upon boot.
In my case, I had to place svga.minVRAMSize = 536870912
manually in the vm settings file. For Parallels, I believe you should open up the VM's configuration, then in the Hardware section, under the Video group, change the Video Memory value.
The value is generally given in bytes, so 536870912 bytes = 512 MB. The rule of thumb to calculate how much graphics memory you need is to multiply display values (HRes x VRes x colors). So for a 2880x1800x32 resolution, you actually need 2880 x 1800 x 4
= 20736000 bytes
which is a little under 20MB. You'd be wise, though, to set up more than that - like I did - to account for 3D graphics, multiple buffering and compositing, and other fancy GPU tricks inherent to Android (See Graphics architecture and Android Graphics Internals).
[Contribution from OP]: I tested and found that 64MB is the minimum amount of graphics memory necessary to run Android 6 at 2880x1800x32 resolution on the Retina MacBook Pro 15".
No comments:
Post a Comment