Android emulator shows home screen upside down, mirrored and locked (why?)

I run the emulator from the command line to speed it up a bit, with these arguments:

emulator -avd foo_hvga2 -cpu-delay 0 -no-boot-anim

Here is a detailed emulator output dump .... thanks for any tips

emulator -avd foo_hvga2 -cpu-delay 0 -no-boot-anim -verbose -debug all -show-kernel

emulator: found SDK root at /Users/foobear/android-sdks emulator: Android virtual device file at: /Users/foobear/.android/avd/foo_hvga2.ini emulator: /Users/foobear/.android/avd/foo_hvga2.ini: parsing as .ini file emulator: 1: KEY='target' VALUE='android-16' emulator: 2: KEY='path' VALUE='/Users/foobear/.android/avd/foo_hvga2.avd' emulator: /Users/foobear/.android/avd/foo_hvga2.ini: parsing finished emulator: virtual device content at /Users/foobear/.android/avd/foo_hvga2.avd emulator: virtual device config file: /Users/foobear/.android/avd/foo_hvga2.avd/config.ini emulator: /Users/foobear/.android/avd/foo_hvga2.avd/config.ini: parsing as .ini file emulator: 1: KEY='hw.lcd.density' VALUE='160' emulator: 2: KEY='skin.name' VALUE='HVGA' emulator: 3: KEY='skin.path' VALUE='platforms/android-16/skins/HVGA' emulator: 4: KEY='hw.cpu.arch' VALUE='arm' emulator: 5: KEY='abi.type' VALUE='armeabi-v7a' emulator: 6: KEY='hw.cpu.model' VALUE='cortex-a8' emulator: 7: KEY='vm.heapSize' VALUE='48' emulator: 8: KEY='hw.ramSize' VALUE='512' emulator: 9: KEY='hw.gpu.enabled' VALUE='yes' emulator: 10: KEY='image.sysdir.1' VALUE='system-images/android-16/armeabi-v7a/' emulator: /Users/foobear/.android/avd/foo_hvga2.avd/config.ini: parsing finished emulator: using core hw config path: /Users/foobear/.android/avd/foo_hvga2.avd/hardware-qemu.ini emulator: Found target field in root AVD .ini file: 'android-16' emulator: Found AVD target API level: 16 emulator: found image search path: system-images/android-16/armeabi-v7a/ emulator: found a total of 1 search paths for this AVD emulator: found skin 'HVGA' in directory: /Users/foobear/android-sdks/platforms/android-16/skins emulator: autoconfig: -skin HVGA emulator: autoconfig: -skindir /Users/foobear/android-sdks/platforms/android-16/skins emulator: found skin-specific hardware.ini: /Users/foobear/android-sdks/platforms/android-16/skins/HVGA/hardware.ini emulator: /Users/foobear/android-sdks/platforms/android-16/skins/HVGA/hardware.ini: parsing as .ini file emulator: 2: KEY='hw.lcd.density' VALUE='160' emulator: 3: KEY='hw.ramSize' VALUE='512' emulator: 4: KEY='vm.heapSize' VALUE='48' emulator: /Users/foobear/android-sdks/platforms/android-16/skins/HVGA/hardware.ini: parsing finished emulator: adding binding BUTTON_CALL to F3 emulator: adding binding BUTTON_HANGUP to F4 emulator: adding binding BUTTON_HOME to HOME emulator: adding binding BUTTON_BACK to ESCAPE emulator: adding binding BUTTON_MENU to F2 emulator: adding binding BUTTON_MENU to PAGEUP emulator: adding binding BUTTON_STAR to Shift-F2 emulator: adding binding BUTTON_STAR to PAGEDOWN emulator: adding binding BUTTON_POWER to F7 emulator: adding binding BUTTON_SEARCH to F5 emulator: adding binding BUTTON_CAMERA to Ctrl-KEYPAD_5 emulator: adding binding BUTTON_CAMERA to Ctrl-F3 emulator: adding binding BUTTON_VOLUME_UP to KEYPAD_PLUS emulator: adding binding BUTTON_VOLUME_UP to Ctrl-F5 emulator: adding binding BUTTON_VOLUME_DOWN to KEYPAD_MINUS emulator: adding binding BUTTON_VOLUME_DOWN to Ctrl-F6 emulator: adding binding TOGGLE_NETWORK to F8 emulator: adding binding TOGGLE_TRACING to F9 emulator: adding binding TOGGLE_FULLSCREEN to Alt-ENTER emulator: adding binding BUTTON_DPAD_CENTER to KEYPAD_5 emulator: adding binding BUTTON_DPAD_UP to KEYPAD_8 emulator: adding binding BUTTON_DPAD_LEFT to KEYPAD_4 emulator: adding binding BUTTON_DPAD_RIGHT to KEYPAD_6 emulator: adding binding BUTTON_DPAD_DOWN to KEYPAD_2 emulator: adding binding TOGGLE_TRACKBALL to F6 emulator: adding binding SHOW_TRACKBALL to DELETE emulator: adding binding CHANGE_LAYOUT_PREV to KEYPAD_7 emulator: adding binding CHANGE_LAYOUT_PREV to Ctrl-F11 emulator: adding binding CHANGE_LAYOUT_NEXT to KEYPAD_9 emulator: adding binding CHANGE_LAYOUT_NEXT to Ctrl-F12 emulator: adding binding ONION_ALPHA_UP to KEYPAD_MULTIPLY emulator: adding binding ONION_ALPHA_DOWN to KEYPAD_DIVIDE emulator: keyset loaded from: /Users/foobear/.android/default.keyset emulator: /Users/foobear/.android/avd/foo_hvga2.avd/emulator-user.ini: parsing as .ini file emulator: 1: KEY='window.x' VALUE='380' emulator: 2: KEY='window.y' VALUE='52' emulator: 3: KEY='uuid' VALUE='1342389488653' emulator: /Users/foobear/.android/avd/foo_hvga2.avd/emulator-user.ini: parsing finished emulator: trying to load skin file '/Users/foobear/android-sdks/platforms/android-16/skins/HVGA/layout' emulator: skin network speed: 'full' emulator: skin network delay: 'none' emulator: found kernel-qemu in search dir: /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a/ emulator: autoconfig: -kernel /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//kernel-qemu emulator: found ramdisk.img in search dir: /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a/ emulator: autoconfig: -ramdisk /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//ramdisk.img emulator: found system.img in search dir: /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a/ emulator: Using initial system image: /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//system.img emulator: autoconfig: -data /Users/foobear/.android/avd/foo_hvga2.avd/userdata-qemu.img emulator: autoconfig: -initdata /Users/foobear/.android/avd/foo_hvga2.avd/userdata.img emulator: autoconfig: -cache /Users/foobear/.android/avd/foo_hvga2.avd/cache.img emulator: Physical RAM size: 512MB emulator: no qwerty2.kcm in search dir: /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a/ emulator: <memoryFile>: parsing as .ini file emulator: <memoryFile>: parsing finished Content of hardware configuration file: hw.cpu.arch = arm hw.cpu.model = cortex-a8 hw.ramSize = 512 hw.screen = touch hw.mainKeys = yes hw.trackBall = yes hw.keyboard = no hw.keyboard.lid = no hw.keyboard.charmap = qwerty2 hw.dPad = yes hw.gsmModem = yes hw.gps = yes hw.battery = yes hw.accelerometer = yes hw.audioInput = yes hw.audioOutput = yes hw.sdCard = yes disk.cachePartition = yes disk.cachePartition.path = /Users/foobear/.android/avd/foo_hvga2.avd/cache.img disk.cachePartition.size = 66m hw.lcd.width = 320 hw.lcd.height = 480 hw.lcd.depth = 16 hw.lcd.density = 160 hw.lcd.backlight = yes hw.gpu.enabled = yes hw.camera.back = emulated hw.camera.front = none vm.heapSize = 48 hw.sensors.proximity = yes hw.sensors.magnetic_field = yes hw.sensors.orientation = yes hw.sensors.temperature = yes kernel.path = /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//kernel-qemu kernel.parameters = android.checkjni=1 android.bootanim=0 disk.ramdisk.path = /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//ramdisk.img disk.systemPartition.initPath = /Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//system.img disk.systemPartition.size = 200m disk.dataPartition.path = /Users/foobear/.android/avd/foo_hvga2.avd/userdata-qemu.img disk.dataPartition.size = 200m avd.name = foo_hvga2 . QEMU options list: emulator: argv[00] = "/Users/foobear/android-sdks/tools/emulator-arm" emulator: argv[01] = "-cpu-delay" emulator: argv[02] = "0" emulator: argv[03] = "-show-kernel" emulator: argv[04] = "-android-hw" emulator: argv[05] = "/Users/foobear/.android/avd/foo_hvga2.avd/hardware-qemu.ini" Concatenated QEMU options: /Users/foobear/android-sdks/tools/emulator-arm -cpu-delay 0 -show-kernel -android-hw /Users/foobear/.android/avd/foo_hvga2.avd/hardware-qemu.ini emulator: android_qemud_init emulator: Registered QEMUD service boot-properties emulator: registered 'boot-properties' qemud service emulator: android_qemud_init emulator: Registered QEMUD service hw-control emulator: android_hw_control_init: hw-control qemud handler initialized emulator: /Users/foobear/.android/avd/foo_hvga2.avd/hardware-qemu.ini: parsing as .ini file emulator: 1: KEY='hw.cpu.arch' VALUE='arm' emulator: 2: KEY='hw.cpu.model' VALUE='cortex-a8' emulator: 3: KEY='hw.ramSize' VALUE='512' emulator: 4: KEY='hw.screen' VALUE='touch' emulator: 5: KEY='hw.mainKeys' VALUE='yes' emulator: 6: KEY='hw.trackBall' VALUE='yes' emulator: 7: KEY='hw.keyboard' VALUE='no' emulator: 8: KEY='hw.keyboard.lid' VALUE='no' emulator: 9: KEY='hw.keyboard.charmap' VALUE='qwerty2' emulator: 10: KEY='hw.dPad' VALUE='yes' emulator: 11: KEY='hw.gsmModem' VALUE='yes' emulator: 12: KEY='hw.gps' VALUE='yes' emulator: 13: KEY='hw.battery' VALUE='yes' emulator: 14: KEY='hw.accelerometer' VALUE='yes' emulator: 15: KEY='hw.audioInput' VALUE='yes' emulator: 16: KEY='hw.audioOutput' VALUE='yes' emulator: 17: KEY='hw.sdCard' VALUE='yes' emulator: 18: KEY='disk.cachePartition' VALUE='yes' emulator: 19: KEY='disk.cachePartition.path' VALUE='/Users/foobear/.android/avd/foo_hvga2.avd/cache.img' emulator: 20: KEY='disk.cachePartition.size' VALUE='66m' emulator: 21: KEY='hw.lcd.width' VALUE='320' emulator: 22: KEY='hw.lcd.height' VALUE='480' emulator: 23: KEY='hw.lcd.depth' VALUE='16' emulator: 24: KEY='hw.lcd.density' VALUE='160' emulator: 25: KEY='hw.lcd.backlight' VALUE='yes' emulator: 26: KEY='hw.gpu.enabled' VALUE='yes' emulator: 27: KEY='hw.camera.back' VALUE='emulated' emulator: 28: KEY='hw.camera.front' VALUE='none' emulator: 29: KEY='vm.heapSize' VALUE='48' emulator: 30: KEY='hw.sensors.proximity' VALUE='yes' emulator: 31: KEY='hw.sensors.magnetic_field' VALUE='yes' emulator: 32: KEY='hw.sensors.orientation' VALUE='yes' emulator: 33: KEY='hw.sensors.temperature' VALUE='yes' emulator: 34: KEY='kernel.path' VALUE='/Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//kernel-qemu' emulator: 35: KEY='kernel.parameters' VALUE='android.checkjni=1 android.bootanim=0' emulator: 36: KEY='disk.ramdisk.path' VALUE='/Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//ramdisk.img' emulator: 37: KEY='disk.systemPartition.initPath' VALUE='/Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//system.img' emulator: 38: KEY='disk.systemPartition.size' VALUE='200m' emulator: 39: KEY='disk.dataPartition.path' VALUE='/Users/foobear/.android/avd/foo_hvga2.avd/userdata-qemu.img' emulator: 40: KEY='disk.dataPartition.size' VALUE='200m' emulator: 41: KEY='avd.name' VALUE='foo_hvga2' emulator: /Users/foobear/.android/avd/foo_hvga2.avd/hardware-qemu.ini: parsing finished emulator: nand_add_dev: system,size=0xc800000,initfile=/Users/foobear/android-sdks/system-images/android-16/armeabi-v7a//system.img emulator: mapping 'system' NAND image to /tmp/android-foobear/emulator-lNlrjC emulator: rounding devsize up to a full eraseunit, now c810000 emulator: nand_add_dev: userdata,size=0xc800000,file=/Users/foobear/.android/avd/foo_hvga2.avd/userdata-qemu.img emulator: rounding devsize up to a full eraseunit, now c810000 emulator: android_qemud_init emulator: Registered QEMUD service boot-properties emulator: registered 'boot-properties' qemud service emulator: Adding boot property: 'dalvik.vm.heapsize' = '48m' emulator: Adding boot property: 'qemu.sf.lcd_density' = '160' emulator: Adding boot property: 'qemu.hw.mainkeys' = '1' emulator: android_qemud_init emulator: Registered QEMUD service gsm emulator: android_qemud_init emulator: Registered QEMUD service gps emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back' emulator: android_qemud_init emulator: Registered QEMUD service camera emulator: android_camera_service_init: Registered 'camera' qemud service emulator: IP address of your DNS(s): 75.75.75.75, 75.75.76.76 emulator: nand_add_dev: cache,size=0x4200000,file=/Users/foobear/.android/avd/foo_hvga2.avd/cache.img emulator: Initializing hardware OpenGLES emulation support emulator: Kernel parameters: qemu.gles=1 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 android.bootanim=0 ndns=2 emulator: Trace file name is not set emulator: autoconfig: -scale 1 2012-07-15 15:55:14.148 emulator-arm[12082:80b] Warning once: This application, or a library it uses, is using NSQuickDrawView, which has been deprecated. Apps should cease use of QuickDraw and move to Quartz. emulator: android_qemud_init emulator: Registered QEMUD service sensors emulator: android_hw_sensors_init: sensors qemud service initialized serial0 console^M emulator: Could not open file: (null)/system/build.prop: No such file or directory emulator: control console listening on port 5554, ADB on port 5555 Using config file: /Users/foobear/.android/modem-nv-ram-5554 Setting value of oper_name_index to 2 (2)Setting value of selection_mode to 0 (0)Setting value of oper_index to 0 (0)Setting value of oper_count to 2 (2)Setting value of in_ecbm to 0 (0)Setting value of prl_version to 0 (0)Setting value of preferred_mode to 15 (15)Setting value of cdma_subscription_source to 1 (1)Setting value of cdma_roaming_pref to 2 (2)emulator: sent '0012host:emulator:5555' to ADB server emulator: ping program: /Users/foobear/android-sdks/tools/ddms emulator: ping command: /Users/foobear/android-sdks/tools/ddms ping emulator 20.0 "Intel Inc." "Intel GMA X3100 OpenGL Engine" "2.0 APPLE-1.6.36" emulator: Error while connecting to socket '127.0.0.1:1970': 61 -> Connection refused emulator: ASC 127.0.0.1:1970: Retrying connection. Connector FD = 13 Uncompressing Linux................................................................................................. done, booting the kernel.^M goldfish_fb_get_pixel_format:167: display surface,pixel format: bits/pixel: 16 bytes/pixel: 2 bytes/pixel: 2 depth: 16 red: bits=5 mask=0xf800 shift=11 max=0x1f green: bits=6 mask=0x7e0 shift=5 max=0x3f blue: bits=5 mask=0x1f shift=0 max=0x1f alpha: bits=0 mask=0x0 shift=0 max=0x0 Initializing cgroup subsys cpu Linux version 2.6.29-gc497e41 ( kroot@kennyroot.mtv.corp.google.com ) (gcc version 4.4.3 (GCC) ) #2 Thu Dec 8 15:07:43 PST 2011 CPU: ARMv7 Processor [410fc080] revision 0 (ARMv7), cr=10c5387f CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache Machine: Goldfish Memory policy: ECC disabled, Data cache writeback Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048 Kernel command line: qemu.gles=1 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 android.bootanim=0 ndns=2 Unknown boot option `qemu.gles=1': ignoring Unknown boot option `android.qemud=ttyS1': ignoring Unknown boot option `android.checkjni=1': ignoring Unknown boot option `android.bootanim=0': ignoring PID hash table entries: 2048 (order: 11, 8192 bytes) Console: colour dummy device 80x30 Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) Memory: 512MB = 512MB total Memory: 515712KB available (2756K code, 683K data, 108K init) Calibrating delay loop... 211.35 BogoMIPS (lpj=1056768) Mount-cache hash table entries: 512 Initializing cgroup subsys debug Initializing cgroup subsys cpuacct Initializing cgroup subsys freezer CPU: Testing write buffer coherency: ok net_namespace: 716 bytes NET: Registered protocol family 16 bio: create slab <bio-0> at 0 NET: Registered protocol family 2 IP route cache hash table entries: 16384 (order: 4, 65536 bytes) TCP established hash table entries: 65536 (order: 7, 524288 bytes) TCP bind hash table entries: 65536 (order: 6, 262144 bytes) TCP: Hash tables configured (established 65536 bind 65536) TCP reno registered NET: Registered protocol family 1 checking if image is initramfs... it is Freeing initrd memory: 160K goldfish_new_pdev goldfish_interrupt_controller at ff000000 irq -1 goldfish_new_pdev goldfish_device_bus at ff001000 irq 1 goldfish_new_pdev goldfish_timer at ff003000 irq 3 goldfish_new_pdev goldfish_rtc at ff010000 irq 10 goldfish_new_pdev goldfish_tty at ff002000 irq 4 goldfish_new_pdev goldfish_tty at ff011000 irq 11 goldfish_new_pdev goldfish_tty at ff012000 irq 12 goldfish_new_pdev smc91x at ff013000 irq 13 goldfish_new_pdev goldfish_fb at ff014000 irq 14 goldfish_new_pdev goldfish_audio at ff004000 irq 15 goldfish_new_pdev goldfish_memlog at ff006000 irq -1 goldfish_new_pdev goldfish-battery at ff015000 irq 16 goldfish_new_pdev goldfish_events at ff016000 irq 17 goldfish_new_pdev goldfish_nand at ff017000 irq -1 goldfish_new_pdev qemu_pipe at ff018000 irq 18 goldfish_new_pdev goldfish-switch at ff01a000 irq 19 goldfish_new_pdev goldfish-switch at ff01b000 irq 20 goldfish_pdev_worker registered goldfish_interrupt_controller goldfish_pdev_worker registered goldfish_device_bus goldfish_pdev_worker registered goldfish_timer goldfish_pdev_worker registered goldfish_rtc goldfish_pdev_worker registered goldfish_tty goldfish_pdev_worker registered goldfish_tty goldfish_pdev_worker registered goldfish_tty goldfish_pdev_worker registered smc91x goldfish_pdev_worker registered goldfish_fb goldfish_pdev_worker registered goldfish_audio goldfish_pdev_worker registered goldfish_memlog goldfish_pdev_worker registered goldfish-battery goldfish_pdev_worker registered goldfish_events goldfish_pdev_worker registered goldfish_nand goldfish_pdev_worker registered qemu_pipe goldfish_pdev_worker registered goldfish-switch goldfish_pdev_worker registered goldfish-switch ashmem: initialized Installing knfsd (copyright (C) 1996 okir@monad.swb.de ). yaffs Dec 8 2011 15:06:54 Installing. msgmni has been set to 1008 alg: No test for stdrng (krng) io scheduler noop registered io scheduler anticipatory registered (default) io scheduler deadline registered io scheduler cfq registered allocating frame buffer 320 * 480, got ffa00000 console [ttyS0] enabled brd: module loaded loop: module loaded nbd: registered device at major 43 goldfish_audio_probe emulator: goldfish_audio_write: AUDIO_SET_WRITE_BUFFER_1 1f9e0000 emulator: goldfish_audio_write: AUDIO_SET_WRITE_BUFFER_2 1f9e4000 emulator: goldfish_audio_read: AUDIO_READ_SUPPORTED returns 1 emulator: goldfish_audio_write: AUDIO_SET_READ_BUFFER 1f9e8000 tun: Universal TUN/TAP device driver, 1.6 tun: (C) 1999-2004 Max Krasnyansky < maxk@qualcomm.com > smc91x.c: v1.1, sep 22 2004 by Nicolas Pitre < nico@cam.org > eth0 (smc91x): not using net_device_ops yet eth0: SMC91C11xFD (rev 1) at e080c000 IRQ 13 [nowait] eth0: Ethernet addr: 52:54:00:12:34:56 goldfish nand dev0: size c200000, page 2048, extra 64, erase 131072 goldfish nand dev1: size c200000, page 2048, extra 64, erase 131072 goldfish nand dev2: size 4000000, page 2048, extra 64, erase 131072 mice: PS/2 mouse device common for all mice *** events probe *** events_probe() addr=0xe0814000 irq=17 events_probe() keymap=qwerty2 input: qwerty2 as /devices/virtual/input/input0 goldfish_rtc goldfish_rtc: rtc core: registered goldfish_rtc as rtc0 device-mapper: uevent: version 1.0.3 device-mapper: ioctl: 4.14.0-ioctl (2008-04-23) initialised: dm-devel@redhat.com logger: created 64K log 'log_main' logger: created 256K log 'log_events' logger: created 64K log 'log_radio' TCP cubic registered NET: Registered protocol family 10 IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 NET: Registered protocol family 15 RPC: Registered udp transport module. RPC: Registered tcp transport module. 802.1Q VLAN Support v1.8 Ben Greear < greearb@candelatech.com > All bugs added by David S. Miller < davem@redhat.com > FP support v0.3: implementor 41 architecture 3 part 30 variant c rev 0 goldfish_rtc goldfish_rtc: setting system clock to 2012-07-15 22:55:15 UTC (1342392915) Freeing init memory: 108K init: cannot open '/initlogo.rle' yaffs: dev is 32505856 name is "mtdblock0" yaffs: passed flags "" yaffs: Attempting MTD mount on 31.0, "mtdblock0" emulator: Error while connecting to socket '127.0.0.1:1970': 61 -> Connection refused emulator: ASC 127.0.0.1:1970: Retrying connection. Connector FD = 13 emulator: Error while connecting to socket '127.0.0.1:1970': 61 -> Connection refused yaffs_read_super: isCheckpointed 0 save exit: isCheckpointed 1 yaffs: dev is 32505857 name is "mtdblock1" yaffs: passed flags "" yaffs: Attempting MTD mount on 31.1, "mtdblock1" 
+7
source share
2 answers

After I installed Android SDK Tools 21.1 rc (in the Preview Channel), the emulator with the GPU server turned on now works fine (quickly and never turned upside down).

Just launch the Android SDK Manager and enable the preview channel in the settings dialog.

+7
source

This seems to be a bug with the hardware GPU emulation. (Your logs have hw.gpu.enabled' VALUE='yes' , which means this feature is enabled.)

Disable "GPU emulation" in the AVD settings, and everything should work fine.

+6
source

All Articles