Difference between revisions of "Android x86"

From eLinux.org
Jump to: navigation, search
(sound)
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
Android x86 is a software port to normal '''pc''' s. [http://www.android-x86.org/ Android x86 Homepage]
 
Android x86 is a software port to normal '''pc''' s. [http://www.android-x86.org/ Android x86 Homepage]
  
The current stable release is [http://www.android-x86.org/releases/releasenote_1_6_r2 Android-x86 1.6-r2], based upon donut.
+
The current stable release is http://www.android-x86.org/releases/releasenote-3-2-rc2 Android-x86 3.2-r2], based upon Honeycomb.
 +
 
 +
 
 +
==ICS 4.0.3==
 +
===Build on ubuntu 11.10===
 +
see [http://www.android-dev.ro/2011/12/13/building-android-4-0-on-ubuntu-11-10/  Building Android 4.0 on Ubuntu 11.10]
 +
 
 +
install old version of gcc 4.4 with : sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib gcc-4.4-multilib
 +
 
 +
run make with : make CC=gcc-4.4 CXX=g++-4.4 -j4 iso_img TARGET_PRODUCT=generic_x86
 +
 
 +
 
 +
===Hardware===
 +
Fritz!Wlan
 +
 
 +
AVM GmbH AVM Fritz!WLAN N [Atheros AR9001U]
 +
 
 +
 
 +
 
 +
==DONUT 1.6 r2==
  
'''DONUT 1.6 r2'''
 
 
==short steps to get a running system==
 
==short steps to get a running system==
 
===Running the system from boot medium CD or USB-Stick===
 
===Running the system from boot medium CD or USB-Stick===
Line 40: Line 58:
  
 
===sound===
 
===sound===
raise sound volume
+
'''Keys on ASUS EeePC'''
* change screen to console 1, press Alt+F1  
+
Fn-F7, F8, F9,
* enter  
+
some models are
"alsa_amixer cset numid=1 31" for 'Front Playback Volume' and/or  
+
Fn-F10, F11, F12
"alsa_amixer cset numid=20 31" for 'Master Playback Volume'  and/or
+
 
"alsa_amixer cset numid=3 31" for 'Speaker Playback Volume'
+
'''Notebooks'''
 +
Some notebooks also have volume adjustment hotkeys
 +
 
 +
'''raise sound volume in shell'''
 +
* change screen to console 1, press Alt+F1  
 +
* enter  
 +
  "alsa_amixer cset numid=1 31" for 'Front Playback Volume' and/or  
 +
  "alsa_amixer cset numid=20 31" for 'Master Playback Volume'  and/or
 +
  "alsa_amixer cset numid=3 31" for 'Speaker Playback Volume'
 +
* go back to graphic screen,  press Alt+F7
 +
 
 +
'''x86 PCs with normal keyboard'''
 +
 +
rear panel audio jack and front panel audio jack depend on the setting of 'Front Playback Volume' alsa_amixer sound setting
  
 
===video===
 
===video===
Line 63: Line 94:
 
===shell===
 
===shell===
  
===navigation===
+
===navigation/keyboard===
 
keyboard layouts see /system/usr/keylayout/
 
keyboard layouts see /system/usr/keylayout/
commands: getevent
+
 
 +
command to get events: getevent
 +
 
 +
[http://www.kandroid.org/android_pdk/keymaps_keyboard_input.html Keymaps and Keyboard Input, a detailed description]
 +
 
 +
===File Infos===
 +
# system.sfs - squash filesystem
 +
# system.img - ext2 file Image
 +
# ramdisk.img - gzip cpio file - extract in an empty folder with "gzip -d < ramdisk.img |cpio -id"
 +
# initrd.img - gzip cpio file - extract in an empty folder with "gzip -d < initrd.img |cpio -id"
 +
 
 +
===hand made changes on an usb-Stick Android 1.6 r2===
 +
 
 +
'''File content of an usb-stick'''
 +
 
 +
├── android-system
 +
│   ├── initrd.img
 +
│   ├── install.img
 +
│   ├── kernel
 +
│   ├── ramdisk.img
 +
│   └── system.sfs
 +
├── android-x86.xpm.gz
 +
├── cmdline
 +
├── grub4dos
 +
├── kernel -> grub4dos
 +
├── lost+found
 +
├── menu.lst
 +
└── ramdisk
 +
.
 +
2 directories, 11 files
 +
 
 +
steps to change files in system.sfs (system.img) 
 +
* Ubuntu 10.4 box
 +
* change to shell, press strg+alt+F1
 +
* sudo -i
 +
* aptitude and install squashfs-tools
 +
* modprobe squashfs
 +
* cd /home/administrator
 +
* copy system.sfs (squash file system) to harddisk, in /home/administrator
 +
* mkdir systemsfs
 +
* mount ./system.sfs ./systemsfs -t squashfs -o loop
 +
* copy ./systemsfs/system.img /home/administrator/
 +
* mkdir systemimg
 +
* mount ./system.img ./systemimg -t ext2 -o loop
 +
 
 +
now cd to systemimg directory and make the changes
 +
 
 +
eg. change *.kl files for sound F7 (scanncode=65)  = mute; F8 (scanncode=66) = volume_down; F9 (scanncode=67) = volume_up
 +
* cd usr/keylayout
 +
* vi *.kl
 +
* change lines
 +
  key 113  VOLUME_MUTE
 +
  key 114  VOLUME_DOWN
 +
  key 115  VOLUME_UP
 +
 
 +
  key 65  VOLUME_MUTE
 +
  key 66  VOLUME_DOWN
 +
  key 67  VOLUME_UP
 +
 
 +
===sound===
 +
s.
 +
#http://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture
 +
#http://www.alsa-project.org/main/index.php/Main_Page
 +
 
 +
===yaffs2 - filesystem===
 +
 
 +
* download unyaffs2 http://code.google.com/p/yaffs2utils/downloads/list s. description http://code.google.com/p/yaffs2utils/ ; extract to yaffs2util
 +
* download snapshot as described in http://yaffs.net/node/346, extract the source file to directory yaffs2
 +
* change ~/yaffs2util/Makefile with vi and set "KERNELDIR = /usr/src/linux-headers-2.6.32-21" ; depending on the location of your header files
 +
* execute make
 +
* goto subfolder ~/yaffs2util/src and copy mkyaffs2 and unyaffs2 to /home/administrator/bin
 +
* execute: PATH=$PATH:/home/administrator/bin
 +
*
 +
 
 +
===Links===
 +
http://androidoniphone.blogspot.com/2010/04/install-android-on-iphone-guide.html
 +
http://android-dls.com/wiki/index.php?title=Main_Page
 +
 
 +
[[Category:Android]]

Latest revision as of 05:03, 6 January 2012

Android x86 is a software port to normal pc s. Android x86 Homepage

The current stable release is http://www.android-x86.org/releases/releasenote-3-2-rc2 Android-x86 3.2-r2], based upon Honeycomb.


ICS 4.0.3

Build on ubuntu 11.10

see Building Android 4.0 on Ubuntu 11.10

install old version of gcc 4.4 with : sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib gcc-4.4-multilib

run make with : make CC=gcc-4.4 CXX=g++-4.4 -j4 iso_img TARGET_PRODUCT=generic_x86


Hardware

Fritz!Wlan

AVM GmbH AVM Fritz!WLAN N [Atheros AR9001U]


DONUT 1.6 r2

short steps to get a running system

Running the system from boot medium CD or USB-Stick

  • download CD-Image android-x86-1.6-r2.iso or USB-Image android-x86-1.6-r2_usb.img.gz
  • burn cd image or for the usb-image use the following commands on a linux box "gunzip http://www.android-x86.org/download" and "dd if=android-x86-1.6-r2_usb.img of=/dev/sda" (of=/dev/sda is depending on where your linux mounted your usb-stick)
  • boot from created medium and choose the first menu entry "Live USB - Run Android-x86 without Installation"
  • in android goto settings/sound & display/screen timeout and set to "never timeout"

run the system from harddisk

s. as well the installation section on android-x86.org

  • boot from CD or USB-Stick android x86 boot menu choose the fourth option "Installation - Install Android-x86 1.6-r2 to harddisk"
  • select "Create/Modify partitions" and create a bootable partition with cfdisk
  • select created partition e.g. sda1 and format with e.g. ext3
  • install GRUB by selecting 'yes'
  • reboot system and boot from harddisk and select the default menu entry "Android-x86 1.6-r2"
  • in android goto settings/sound & display/screen timeout and set to "never timeout"


details for a running system

SD-card

for mounting an sd card see [1]

navigation

  • HOME <- windows key left
  • BACK <- esc
  • MENU <- menu-key

touchscreen or mouse

touch the right end of statusbar to activate or deactivate the following functions

  • HOME <- touch status bar
  • MENU <- touch statusbar from left to right.
  • BACK <- touch t statusbar from right to left.


sound

Keys on ASUS EeePC

Fn-F7, F8, F9, 
some models are
Fn-F10, F11, F12

Notebooks

Some notebooks also have volume adjustment hotkeys 

raise sound volume in shell

* change screen to console 1, press Alt+F1 
* enter 
  "alsa_amixer cset numid=1 31" for 'Front Playback Volume' and/or 
  "alsa_amixer cset numid=20 31" for 'Master Playback Volume'  and/or
  "alsa_amixer cset numid=3 31" for 'Speaker Playback Volume'
* go back to graphic screen,  press Alt+F7

x86 PCs with normal keyboard

rear panel audio jack and front panel audio jack depend on the setting of 'Front Playback Volume' alsa_amixer sound setting

video

application errors

  • menu /settings/about phone/System tutorial -> Sorry! The application settings (process com.android.settings) has stopped unexpectedly. Please try again.

Development

improvements/request for changes

  • set "settings/sound & display/screen timeout" to "never timeout" as for an x86 system there is no need to timeout an new users don't know what happens.

errors

shell

navigation/keyboard

keyboard layouts see /system/usr/keylayout/

command to get events: getevent

Keymaps and Keyboard Input, a detailed description

File Infos

  1. system.sfs - squash filesystem
  2. system.img - ext2 file Image
  3. ramdisk.img - gzip cpio file - extract in an empty folder with "gzip -d < ramdisk.img |cpio -id"
  4. initrd.img - gzip cpio file - extract in an empty folder with "gzip -d < initrd.img |cpio -id"

hand made changes on an usb-Stick Android 1.6 r2

File content of an usb-stick

├── android-system
│   ├── initrd.img
│   ├── install.img
│   ├── kernel
│   ├── ramdisk.img
│   └── system.sfs
├── android-x86.xpm.gz
├── cmdline
├── grub4dos
├── kernel -> grub4dos
├── lost+found
├── menu.lst
└── ramdisk
.
2 directories, 11 files

steps to change files in system.sfs (system.img)

* Ubuntu 10.4 box
* change to shell, press strg+alt+F1
* sudo -i 
* aptitude and install squashfs-tools
* modprobe squashfs
* cd /home/administrator
* copy system.sfs (squash file system) to harddisk, in /home/administrator
* mkdir systemsfs
* mount ./system.sfs ./systemsfs -t squashfs -o loop
* copy ./systemsfs/system.img /home/administrator/
* mkdir systemimg
* mount ./system.img ./systemimg -t ext2 -o loop

now cd to systemimg directory and make the changes

eg. change *.kl files for sound F7 (scanncode=65) = mute; F8 (scanncode=66) = volume_down; F9 (scanncode=67) = volume_up

* cd usr/keylayout
* vi *.kl 
* change lines 
  key 113   VOLUME_MUTE
  key 114   VOLUME_DOWN
  key 115   VOLUME_UP
  key 65   VOLUME_MUTE
  key 66   VOLUME_DOWN
  key 67   VOLUME_UP

sound

s.

  1. http://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture
  2. http://www.alsa-project.org/main/index.php/Main_Page

yaffs2 - filesystem

* download unyaffs2 http://code.google.com/p/yaffs2utils/downloads/list s. description http://code.google.com/p/yaffs2utils/ ; extract to yaffs2util
* download snapshot as described in http://yaffs.net/node/346, extract the source file to directory yaffs2 
* change ~/yaffs2util/Makefile with vi and set "KERNELDIR	= /usr/src/linux-headers-2.6.32-21" ; depending on the location of your header files
* execute make
* goto subfolder ~/yaffs2util/src and copy mkyaffs2 and unyaffs2 to /home/administrator/bin 
* execute: PATH=$PATH:/home/administrator/bin
*

Links

http://androidoniphone.blogspot.com/2010/04/install-android-on-iphone-guide.html http://android-dls.com/wiki/index.php?title=Main_Page