X running (limping) on a Nook ST - Nook Touch Android Development

Hi,
I've got X just about running a Nook ST :
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I say running, the e-ink is erm fun; I've got it sitting there in a loop kicking a refresh every couple of seconds, and I'm sure there is a better way,
So, some notes:
* I'm running with the Nook kernel patched up with:
- USB host patch (see other thread)
- The gcc stuff from the fastmode patches so it will build on a recent Ubuntu
- The fastmode code - but I don't understand it yet
* The following that I needed to get debian/armhf to run - if you stick with armel you shouldn't need them:
- The TLS hack off http://arowboat.wordpress.com/2011/08/10/android-linux-arm-and-tls-register-emulation/ together with updated TLS files patches from newer kernels; I think it's possible just to turn it on with the existing 2.6.29 and take that TLS fix.
- I also pulled in ec706dab from a newer git to map the vector page - but not sure if it's needed
* Nookmanager on my uSD card
* in a directory on a 2nd ext formatted partition there I've got a debian chroot
* Debian wheezy armhf built using debootstrap , pass --include=apt to make life bearable
* xserver-xorg-video-fbdev, xserver-xorg-input-multitouch, xserver-xorg-input-evdev
* Note the nook kernel is too old for udev so some config has to be done manually, so in /usr/share/X11/xorg.conf.d/05-dave.conf I put:
(based on http://blog.rot13.org/2012/08/x11-running-on-nook-color-without-android-stack.html ):
Section "ServerLayout"
Identifier "Layout0"
Screen "Screen0"
InputDevice "touchscreen" "CorePointer"
InputDevice "gpio-keys" "CoreKeyboard"
InputDevice "twl4030-keypad" "CoreKeyboard"
InputDevice "usbkbd" "CoreKeyboard"
InputDevice "usbmouse" "CorePointer"
EndSection
Section "ServerFlags"
Option "AutoAddDevices" "off"
EndSection
Section "InputDevice"
Identifier "touchscreen"
Option "Device" "/dev/input/event2"
Driver "evdev"
Option "SwapAxes" "on"
Option "InvertX" "on"
EndSection
Section "InputDevice"
Identifier "usbkbd"
Option "Device" "/dev/input/event4"
Driver "evdev"
EndSection
Section "InputDevice"
Identifier "usbmouse"
Option "Device" "/dev/input/event3"
Driver "evdev"
EndSection
Section "InputDevice"
Identifier "gpio-keys"
Driver "evdev"
Option "Device" "/dev/input/event0"
# code 102 (KEY_HOME)
# code 116 (KEY_POWER)
EndSection
Section "InputDevice"
Identifier "twl4030-keypad"
Driver "evdev"
Option "Device" "/dev/input/event1"
# code 114 (KEY_VOLUMEDOWN)
# code 115 (KEY_VOLUMEUP)
EndSection
Section "Device"
Identifier "Card0"
#Driver "omapfb"
#Option "fbdev" "/dev/graphics/fb0"
# rotate screen to be in sync with touchpad orientation
Option "Rotate" "CCW" # CW=90 UD=180 CCW=270
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
EndSection
I had to make most of the device nodes in /dev based on the contents from the android version and also mount /proc, /sys and /dev/pts
then set DISPLAY and also set XAUTHORITY=/.Xauthority
Then once I've started the wireless and ssh from nookmanager I do:
startx -- tty01 -sharevts -novtswitch &
and:
while true; do echo 1 > /sys/class/graphics/fb0/epd_refresh; sleep 2; done &
Then for that picture I had matchbox-keyboard, fvwm and epiphany-browser
Fun! Any tips on doing something more sain with the eink appreciated!
Dave

you rock!

Awesome
Sent from my YP-G1 using Tapatalk 2

Interactive!
OK, find attached a program that uses the XDamage extension to more intelligently update the display (I'm sure there is a way to use the DSP to do this properly!
A video (shakey camera work, slow update, just about interactive touchscreen - what else can you want!) will eventually arrive here:
http://youtu.be/PxVjqJZcspc
Wahey!
Dave

Hey, you do know that there are native omap drivers available for X11.
This might help get things moving a bit faster. I suspect part of your problem might be using the framebuffer.
Check out these links:
http://cgit.freedesktop.org/xorg/driver/xf86-video-omap
http://packages.debian.org/search?keywords=xserver-xorg-video-omap
I seem to remember that the Nook Simple Touch is OMAP 3 based.
I think you are doing great with this! I'd love to get Linux working properly on the Nook Simple Touch, even if it was just the console.
I'd love to have gcc on there! I was hoping I could change the runlevel to get to a console but I discovered that busybox doesn't support that.
Do you know if the Nook even has a console?
I'm in a good mood today as I managed to get my external usb keyboard working, not sure if I should continue pushing forward today!
Freya
---------- Post added at 05:18 PM ---------- Previous post was at 04:43 PM ----------
Having watched the video I suspect it would be way easier if you hooked up a usb mouse!
Freya

There's also a special omap framebuffer driver here which while obviously not as desirable, might also make things work better perhaps?
http://anonscm.debian.org/gitweb/?p=collab-maint/xf86-video-omapfb.git;a=blob;f=README;hb=HEAD

FreyaBlack said:
Hey, you do know that there are native omap drivers available for X11.
This might help get things moving a bit faster. I suspect part of your problem might be using the framebuffer.
Check out these links:
http://cgit.freedesktop.org/xorg/driver/xf86-video-omap
http://packages.debian.org/search?keywords=xserver-xorg-video-omap
I seem to remember that the Nook Simple Touch is OMAP 3 based.
I think you are doing great with this! I'd love to get Linux working properly on the Nook Simple Touch, even if it was just the console.
I'd love to have gcc on there! I was hoping I could change the runlevel to get to a console but I discovered that busybox doesn't support that.
Do you know if the Nook even has a console?
I'm in a good mood today as I managed to get my external usb keyboard working, not sure if I should continue pushing forward today!
Freya
---------- Post added at 05:18 PM ---------- Previous post was at 04:43 PM ----------
Having watched the video I suspect it would be way easier if you hooked up a usb mouse!
Freya
Click to expand...
Click to collapse
Yeh I think I tried those OMAP3 X servers without success; I think one of the problems is the kernel on the NST is *ancient*,
so my current fiddling is to try and build a newer kernel with the NST drivers in; I'm currently fighting a 3.4 tree that I've thrown the NST diffs into - it's a bit of a fight and I don't know how close I am to even have it building yet; I'm kind of hopeful that that might have a chance of using the OMAP3 drivers; even so I'm not sure how they will interact with the eink display because it's so different.
Oh and yes a USB mouse does work but that's cheating
Dave

p42 said:
Yeh I think I tried those OMAP3 X servers without success; I think one of the problems is the kernel on the NST is *ancient*,
so my current fiddling is to try and build a newer kernel with the NST drivers in; I'm currently fighting a 3.4 tree that I've thrown the NST diffs into - it's a bit of a fight and I don't know how close I am to even have it building yet; I'm kind of hopeful that that might have a chance of using the OMAP3 drivers; even so I'm not sure how they will interact with the eink display because it's so different.
Oh and yes a USB mouse does work but that's cheating
Dave
Click to expand...
Click to collapse
You should check out the framebuffer driver I link to at the end then! I bet that will work for the time being!
Freya

Holy sh*t. This is awesome.

Please let us know when you got an update on this, as this is freaking awesome. You mean, you're trying to get kernel v3.4 to run on NST?

idoit said:
Please let us know when you got an update on this, as this is freaking awesome. You mean, you're trying to get kernel v3.4 to run on NST?
Click to expand...
Click to collapse
Trying yes, not necessarily got very far yet!

Related

[ROM][26.07.10] >> [email protected]_2.2.0_5_os << [AOSP/NO SenseUI] [codename: Be My Hero]

[ROM][26.07.10] >> [email protected]_2.2.0_5_os << [AOSP/NO SenseUI] [codename: Be My Hero]
As mentioned in my sig., I don't mind appreciation.
Just mention your xda handle while filling in the donation form. Thanks to everybody who contributed.​
Specific/Unique Features:
- Available localisations: English, Polish, Russian and Japanese.
DON'T ask about support for other languages; should need be, download any of the locale utils on the market
- JIT, A2DP, OpenGL
- The Tasty Bits:
I've been wondering about a few aspects of the android build system, and what I have found confirmed my suspicions;
In order to minimize build-system fragmentation, and what goes with it, maintenance, most of the code is built for compatibility instead of performance.
That is why I have tried what has, to my knowledge, never been done before on Hero-like devices (dream, sapphire, eris and the rest).
Some code breakage happened along the way, but that was to be expected.
Nethertheless, the new [email protected] is built with that specific spirit in mind. Be aware, that this is HIGHLY experimental, but the latest user tests confirmed that everything's good.
GIve it a spin and leave some feedback, if you find anything out (really) of the ordinary.
This is a peel-the-skin-feel-the-bones naked version of the regular [email protected] ROM (which is mainly geared for my personal use). Bug submissions and/or constructive criticism is appreciated, but DON'T bug me about missing features.
Custom kernel.
performance tweaks
native loopback support (along with crypto)
network fixes (wlan, bridging, *tables, tunneling, etc)
utf8 (have to rebuild system apps though...)
ext2, ext4 (be aware that journalling is overkill for a 528MHz CPU)
alsa
Power savings
and others...
Is it stable? It is enough for me.
Play, test, and help out.
Issues/Bugs/Fixes:
- Force Closes
FIX:
>>> You'll have to pull the files with adb and repush them (push the odex FIRST, THEN the apk)
- Camera isn't working atm.
- Your Hero is stuck at the bootscreen, bootloops, random crashes:
FIXES:
>>>Make sure you have AT LEAST Radio version 6.35.09.26 (recommended: > 6.35.15.01 <) Click to download
>>> You might be the unlucky owner of a Hero unable to handle exotic freqs like 19 MHz/748 MHz. If such is the case, go back to recovery and flash > THIS < kernel.
RTFM:
- The ROM isn't signed most of the time. You can get by this issue by
1: installing the excellent > Clockwork Recovery <
How to install: # adb push recovery-clockwork-2.5.0.1-hero.img /cache/rec.img
# adb shell flash_image recovery /cache/rec.img
or
2: use the Engineering SPL
or
3: sign it yourself (google for autosign - you need to have android SDK installed)
- It WILL take quite a while to initialize after flashing (a few minutes).
- You MUST restart after the first boot (sys. init.), otherwise the system will work at a crawling pace, since all apps are running, due to being initialized at first boot. The cruising performance will be reached after you setup your system and restart.
You might experience problems signing in, in case you don't restart (or you can disable and re-enable mobile network).
>> AOSP Hybrid N4k3d [2.1] (current) <<
>> [email protected] semi-naked [2.2] (current) <<
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Benchmarking (Linpack:Neocore):
​
Will try out tomorrow, nice to have another Dev here. Welcome!
Great to see u in this forum sir.... android is just so much better than winmo
Thanks for the ROM
Welcome to the Android world!
Great to see (another) big name from the WinMo section in here .
Will be trying out your stuff for sure!
Quick question (no, didn't try your ROM yet, still playing around to get MCR 2.9 working ok):
You removed all but en_US you say. Also the dictionaries for the HTC_IME? I want everything on my phone in english, except the messages that I type , so it would be a shame if those dictionaries were gone.
If they _are_ gone, can you explain me which files so I can try putting them back myself from a stock ROM / MCR ROM?
(Another one actually: Did you find it hard to dive into building ROMs and customizing for Android?
With years of Linux experience I thought it was the first thing I would be doing with my 1st Android device... but it seems I played around with WinMo builds, packages, NK.exe's, ROM/SYS's for so long I'm stuck in my ways . Didn't touch anything from the SDK yet except adb.exe and fastboot.exe to flash.).
@dipje:
1: Dictionaries are untouched.
2: Customizing is a much more pleasant experience than with WinMo.
As a matter of fact, I just got my Hero device, and need to build up an Android modding knowledge (Android-specific).
Linux-specific knowledge is not a problem, since I'm an admin.
I'll be taking care of different aspects of the ROM in the long run, rebuilding and optimizing bit by bit:
base apps, kernel (I find it pointless, most of the ROMs use quite a few init scripts - even in the initrd, instead of consolidating...)
I have an idea about installing debian (arm) on android, chrooting into that, and building the android system from there.
No need to setup cross-compile toolchains on our x86 PCs (try that if you've run into problems setting a toolchain on a host PC).
^.^
Though we'll be limited to 528Mhz and ram... But hey, if you've got a big sdcard, just setup a big swap on it.
;]
Apart from that, we can have a nearly full blown linux distro running at all times on the Hero (which would negatively impact battery life, but hey, it's just for the fun)
An ad-hoc wifi would be setup at all times, + sshd (along with vnc?)
So we can always X-forward our display or whatver.
The ideas an possibilities are endless.
Hi,
will definitely try your ROM. Glad to have you here! Good Luck!
//dzieki i powodzenia
//edit
OMG this Rom is super fast. Everyting works great so far. Well done. BTW. Firmware 2.0 ??
cant we get an update.zip file for this... this adb thing is a bit difficult process....thankx for the rom anyways..
Nice another dev creating roms.
Btw, isn't advanced task manager a paid app?
Thanks a lot.
and plz continue dev
naTTan said:
Nice another dev creating roms.
Btw, isn't advanced task manager a paid app?
Click to expand...
Click to collapse
I've searched for it, and looks like it is.
Looks like the repo I was using included some warez.
Will be removed and I'll add another task manager.
Thanks for the info.
norao said:
Thanks a lot.
and plz continue dev
Click to expand...
Click to collapse
Continue?
I'm just getting started.
;]
adwinp said:
Continue?
I'm just getting started.
;]
Click to expand...
Click to collapse
Hey adwin,
ki position? glad to see you on the hero cooking path.hehehe. good job chef. will flash as soon as i get home.
cheers/
deeren
ADWINP: cool going bro. its realy nice and hopeful to see cookers joining hero cooking. keep it up bro. cheers.
adwinp said:
It WILL take a while to initialize after flashing, since I've yet to learn how to obtain .odex from apks.
Click to expand...
Click to collapse
Sorry, missed that message!
To get odex from APKs, you use dexopt-wrapper.
To put odex back into APKs, you use the smali project - http://code.google.com/p/smali/.
P
modaco said:
Sorry, missed that message!
To get odex from APKs, you use dexopt-wrapper.
To put odex back into APKs, you use the smali project - http://code.google.com/p/smali/.
P
Click to expand...
Click to collapse
Hey Paul.
I was a bit surprised at the lack of feedback, but thanks.
;]
Updates:
1: added a few screenshots of the new wip build (not yet uploaded)
2: replaced Advanced Task Manager by the quite good tasKiller
3: recompiled kernel; a few kinks to iron out, like adding the wlan module and splash, but other than that, it's fast.
Added support for a few more fs (like ext4)
Here's what you get:
sysfs
rootfs
bdev
proc
debugfs
sockfs
pipefs
anon_inodefs
oprofilefs
tmpfs
inotifyfs
configfs
devpts
ext3
ext4dev
ext2
cramfs
ramfs
msdos
vfat
iso9660
nfs
nfs4
cifs
udf
yaffs
yaffs2
rpc_pipefs
Added a few network features like net bridging, proper unicode support (though it has to be configured in the os itself; didn't check if the system libraries have utf support)
raid also was added (in case someone wants to play with ROL/RON - Raid Over Lan)
The new kernel will be available with a new [email protected] build.
Yees, glad to see another great rom cooker for HTC HERO community. Really a good news.
Good luck
silly question
Why does the firmware version say 2.0
Please, upload somewhere else.
Thanks adwinp,
Downloading now. I will run it for a while and feedback to you my comments.
So far everything looks to be working well after upgrading from MDC 2.9 without a wipe.
Not sure I like the transparent lock screen. I tend to use the default HTC scene with with the 4 icons along the bottom of the screen. When locked, the text on the icons can be seen and makes things looked a little confused.

Android x86 working build. [no sound compiled, and bugs, wifi and fun working )

I just found http://www.androidx86.org/ and took the time to break the dsk and the iso images to build a boot.ini via grub sitting in a directory on the disk version.
Really all you need to do is winimage the dsk from the tar.gz and then grab all the files and setup grubldr in boot.init
Anyhow It booted! On my two laptops I generally get wireless (not stable), and no sound, and vesa, maybe nvidafb on m200. The ibm t60 shows hda_intel on lsmod but files seems to be missing. The m200 didn't mention sound in the console output. The graphics didn't work on the high end (black out), but vesa did. Standby doesn't seem right but thats likely google standby behavior on a unit in gimp mode. I took some video of it running on my laptops need to upload it somewhere. I will join the x86 forum here in a moment. Just wanted to share the build here. Wish it had audio.
I don't think the android build is as advanced as what is here on the phones so development wise I'm curious if I can swap the system files from the phone to the latop but homework calls. I'm uploading the build now it says 200 minutes on my very slow connection.
Can I just say download mssmissions system.img and run the system.img or will binary-arm stuff throw me thus I need to pretend I am a gentoo user and compile stuff or is it all python and java and intependent in the system.img?
Can I merge an ubuntu and android?
Any pointers as far as setting up a dev enviroment within android? You can also run android.iso vrom virtualbox and I'm pretty sure you can tweak it to get sound but I got none if anyone is interested in that. If anyone can give me any kernel advice vs compiling known linux drivers that be nice. Can i confidently think it'll work cause I have generic linux sources. Any sage advice for ati x1300 driver or a nvidia g5500 mobile card? Also my waacom didn't work on my tablet . I just wanted to post the build someone mirror it?
When its done uploading I will edit this.. Don't want the message to time out..
I was very impressed by the browsing speed of droid on the machines...
I just sent a pm to a mod who will move this thread.
dam thats actually pretty legit lol
Drool.
Thanks I thought so too! I just found http://blog.android-x86.org/2010/01/eclair-test-build-20100115.html and my. I need to study :| android crack is bad. But eclair is out so I need to give that a shot. I just did donut. Someone who is going to go crazy please go do eclair now. please compile hoards of video and sound drivers and just upload
Download Donut prebuild. Edit boot.ini and reboot
http://rapidshare.com/files/401173367/android-system.rar.html
OR!!!!!
Download this to build your own.
http://grub4dos.sourceforge.net/
http://www.winimage.com/download.htm
http://iweb.dl.sourceforge.net/project/grub4dos/WINGRUB/WINGRUB 0.02 Build 6/WINGRB0206.EXE
http://www.androidx86.org/downloads.html
http://blog.android-x86.org/2010/01/eclair-test-build-20100115.html
(I don't think you'll need the iso, get the usb disk, but the iso is cool cause it boots in virtual box. I'm having sound issue but it looks like it is loaded. )
extract android-system from android.img from gz and put into c:\android-system
download wingrub. Run it tell it to copy stage files.
C:\grub is created
edit the attached menu.lst or use the one from the android.dsk.. Copy the splash screen.xpm.gz from the dsk root to android-system, or wherever and reference it appropriately in menu.lst.
my boot.ini
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional"
C:\wubildr.mbr = "Ubuntu"
C:\grldr="Start GRUB4DOS"
C:\CMDCONS\BOOTSECT.DAT="Microsoft Windows Recovery Console" /cmdcons
notice the grldr, Recovery Console, or Ubuntu is not necessary. After you install wingrub you can copy grldr to the root of the c:\ drive. Grldr is in:
C:\Program Files\WinGrub\GRUB
there is a file called grldr_p12 rename it to grldr and put at C:\grldr
my menu.lst in c:\grub
root (hd0,0)
splashimage=/android-system/android-x86.xpm.gz
timeout=600
title Live USB - VESA Mode
root (hd0,0)
kernel /android-system/kernel root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode quiet vga=788 SRC=/android-system
initrd /android-system/initrd.img
title Live USB - Debug Mode
root (hd0,0)
kernel /android-system/kernel root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode vga=788 SRC=/android-system DEBUG=1
initrd /android-system/initrd.img
title Live USB - Run Android-x86 without Installation
root (hd0,0)
kernel /android-system/kernel root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode quiet SRC=/android-system
initrd /android-system/initrd.img
title Installation - Install Android-x86 1.6-r2 to harddisk
root (hd0,0)
kernel /android-system/kernel root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode SRC=/android-system INSTALL=1 DEBUG=
initrd /android-system/initrd.img
title Windows at (hd0,0)
root (hd0,0)
chainloader +1
As far as differences in the directions to build your own or to just download the donut prebuild, I made the build I put grub in C:\boot\grub this is not the default. Wingrub installs the stage files to C:\grub by default so in the directions I went that route. I know it works either way cause I just redid that portion following my directions and it gave me stable mute android with wifi for about 30-50 minutes. Thats the only thing different between the build and the directions, and I believe if you move C:\grub to c:\boot\grub it would still work as they are booth search path for grldr.. Anyhow..
Or go download the cdrom iso's and burn it to cdrom/usb
hehehe
I've now entered all my bugs at:
http://code.google.com/p/android-x86/issues/list
here are some screenshots..
http://code.google.com/p/android-x86/wiki/ScreenShots
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Looks promising if motivated:
http://code.google.com/p/android-x86/wiki/CustomizeKernel
eclair install not going so well initrd.gz referenced but not included on usb image. downloading iso which is good to have anyways for virtual boot in virtualbox. I hope initrd.gz and kernel are in there, but sadly they are older too. So donut maybe better after all. I'm waiting to test eclair. The donut kernel addresses system.sfs the eclair references system.img perhaps i should convert the format : I would try to do a rename but I am downloading the iso.
What does it have common with kaiser on android???
It it relates. It's like sql.
Select Interest from community where Tangent=Related
Okay man its a stretch. I just got excited at the prospect of running android on my other hardware. I should migrate my tangent babbling soon. I shouldn't even be working on this at all. I.E. what does this have to do with physics ii?
Duh.
But, when I saw it I thought ok great I boot android I'll be better able to work on android builds here maybe help out with the phantom haret issue all you l33t experts ignore. I.e. the last post about me not being up to date on stuff is crap. Seriously goto the n00b thread and fix my haret issue with instructions as clear as these..
Also kernel compiling is kernel compiling. I should go to the pure android forum and will move there I guess. But playing with this makes it much easier to work with kaiser droid. From what I've been reading it also makes me wonder about kubuntu and droid as booting android from ubuntu on os86 was mentioned and the kernel compile process seemed straight forward, so it may work? Making it work on my system I could then download all the dev stuff and maybe spew out a cross compile; but then again I'm not some sort of gcc guru. I'm just trying to get to know it is all? Why you downing me brah?
Also this build looks way less advanced maybe I can get some kind of merge on the sources here for the benefit of my 86x. It's funny how sound is an issue on 86x as much as it is here and even that says hey maybe in the 86x world with a keyboard and mouse could soomething so generic be fixed on 86x that it fixes a kaiser issue? But I agree were now in tangent territory. Need to find a better home and give it a link in a more suitable audience/ stronger relationship area.. I mean the affinity isn't that much higher.
I just got done building the last boot.ini grub environment. I'll leave it on that note and find a better place to continue this and link this to that and start over if i continue this work/effort. I just like people in this forum so I wanted them to benefit from my download. But I only was so stoked because I forget how easy it is to download an iso and boot from it when I have to do something else cause my m200 doesn't have a cdrom. Anywho..
-----
http://rapidshare.com/files/401231657/AndroidX86_2.0_and_1.6.basefiles.rar.html
move everything in the archive to the root of C:\
Download (From: http://code.google.com/p/android-x86/downloads/list)
AndroidX86-1.6: donut
http://code.google.com/p/android-x86/downloads/detail?name=android-x86-1.6-r2.iso&can=2&q=
AndroidX86-2.0: eclair
http://code.google.com/p/android-x86/downloads/detail?name=android-x86-eeepc-2.0.iso&can=2&q=
Open the each iso (WinImage, Winrar, MagicIso, or other iso program) then extract system.sfs and place it in its respective directory under grub
(i.e:
android-x86-1.6-r2.iso extract system.sfs from iso and put in C:\Grub\android-donut
android-x86-eeepc-2.0.iso extract system.sfs from iso and put in C:\Grub\android-eclair )
Edit boot.ini to include:
C:\grldr="Start GRUB4DOS"
Happy booting!
Alternatively:
You can of course boot the iso's using virtualbox
Go here: http://code.google.com/p/android-x86/wiki/Releasenotefor20091024dailybuild
for any more info or to report a bug about it.. I'll bet I don't work on this for a while..
-----
I find this interesting, and somewhat relevant, at any rate it looks fun to play with
I may have to experiment with this myself, lol, wonder if it'll work on my spare laptop? ........
Good find Tyler
also a neat find..
http://forum.xda-developers.com/showthread.php?t=553366
Looks like emulation is horrible. Thats sad its a linux kernel and it has a host someone needs to paravirtualize android? I'm reading the android thread it seems like alsa sound should just work so I'm being a ninnny nanny by not compiling stuff into the g.d. kernel, yet bug reports are abundant for lack of certain functions on different devices. grr.
This thread maybe moving soon to:
xda-developers > Android Development and Hacking > Android Software Development ?
bummer the emulator doesn't work well.. I wonder if the x86 kernel does virtualized arm support, someone need to do that...
man this is a distracting bummer. I have to compile a kernel.. I just installed a grub ubuntu too , I need to see if I can just start android in that no matter what, I may get lucky.. maybe even luckier if someone will hook it up in the other thread ..
tyler51773 said:
But eclair is out so I need to give that a shot. I just did donut. Someone who is going to go crazy please go do eclair now. please compile hoards of video and sound drivers and just upload
Click to expand...
Click to collapse
I made a working android-x86 alpha eclair 2.1 build with gapps. Designed for aspire one but also should work on vmware and vbox. Will boot and work (somewhat) on most computers (built with generic kernel config so all available .ko drivers are there) however you may have to modprobe the drivers for ethernet and wlan for your hardware. http://www.aspireoneuser.com/forum/viewtopic.php?f=90&t=19299&p=116492&hilit=aoa110#p116492
Make a bootable usb with unetbootin from the .iso is the best way to use it and you can install to hdd too from it.
Password?
just wanted to give the above aspireone-x86 build a try but the rar is password protected?

[DEV] Enable 2D GPU rendering in HTC One X & about build.prop tweaks [30.04.2012]

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
​
What do you need?
Hex Editor
libhtc-opt2.so from /system/lib
Android SDK (or at least adb shell)
Warning: keep in mind that now 2D rendering will be always checking in your development settings
This is already fixed in new 1.29.401.7 update!
What to do? (method 1 - from PC level)
Download and install any Hex Editor on your PC
Grab libhtc-opt2.so from your device and save on your PC
Open libhtc-opt2.so using Hex Editor
Find line: persist.sys.ui.hw.0.1.
0 should have HEX value 30. Change 0 to 1 (HEX value will change to 31)
Entry should now looks like: persist.sys.ui.hw.1.1.
Save file
use adb push libhtc-opt2.so /system/lib to insert library back to your device
Reboot your device
What to do? (method 2 - from device level)
Download Hex Editor from the Google Play
Open libhtc-opt2.so using Hex Editor
Find line: persist.sys.ui.hw.0.1.
0 should have HEX value 30. Change 0 to 1 (HEX value will change to 31)
Entry should now looks like: persist.sys.ui.hw.1.1.
Save file
Reboot your device
Download modded library (flash in recovery)
Download here
A little bit about libhtc-opt2.so
It's called by build.prop entry: ro.vendor.extension_library=/system/lib/libhtc-opt2.so
It contains a lot of different settings, including governors settings. This is the reason why tweaking governors settings in init.endeavoru.common.rc doesn't work.
It contains many settings HTC did to Tegra 3 configuration.
It's better not to remove that file from the system
According to libhtc-opt2.so, GPU 2D rendering is suppose to be enabled in various situations:
com.htc.launcher, com.android.camera, com.htc.android.mail, com.android.browser, com.google.android.apps.maps, com.htc.laputa
com.google.android.videos, com.sdgtl.watch, com.htc.video, com.htc.streamplayer, com.google.android.youtube, com.aurorasoftworks.quadrant
gr.androiddev.BenchmarkPi, com.smartbench, com.quicinc.vellamo, com.android.cm3, com.glbenchmark., se.nena.nenamark
com.southend.electopi, com.tactel.electopia, com.antutu, com.greenecomputing.linpack, eu.chainfire.cfbench, com.georgie.pi, com.netflix.mediaclient
You can check if it's working by typing:
adb shell
getprop persist.sys.ui.hw
Output should be 1 if it's working. Will be 0, if it's disabled. With my tweak it's always 1. BTW HTC nice trick to rise up benchmarks scores!
A little bit about so popular build.prop tweaks
persist.sys.ui.hw=true doesn't work. Don't believe it, don't use it. Adding that to the build.prop means you don't know what you're doing. Seriously, copy-paste tweaks method from other xda threads with so called "findings" is not good. This value is controlled by libhtc-opt2.so.
persist.sys.NV_FPSLIMIT=60 doesn't work either. Why? Because it's 60 by default already! It's down-creased to 30 ONLY when power saving mode is enabled, so when your battery is below some critical level.
persist.sys.NV_STEREOCTRL=0 doesn't work either. Why? Because it's 0 by default already!
ro.HOME_APP_ADJ=1 doesn't work either. And that's the most funny tweak in ICS. Where does it come from? In gingerbread most of the oom_adj values were stored in init.rc inside ramdisk (f.g. setprop ro.HOME_APP_ADJ). They were used in ActivityManagerService. But since Ice Cream Sandwich, those settings were moved to services.jar inside /system/framework. They are no longer in ramdisk! So typing ro.HOME_APP_ADJ=1 in build.prop gives nothing but one extra false changelog line. It's bull****. Some people also call it "gimmicks"... and use it
I will post more once I find them
Yeah I know, I'm a "noob", "zip-modder", "dev with no skills" etc. and all this info were kanged from other "real devs" brains. I just used special machine to suck their knowledge
​
Thank you so much for all your hard work Mike.
Sent from my HTC One X using Tapatalk 2
Nice stuff Mike.
What exactly will this do?
Cheers
I knew all the time that Mike is a real dev!
Mike, will the 2D GPU rendering be enabled in the new ARHD release?
listentochaos said:
Mike, will the 2D GPU rendering be enabled in the new ARHD release?
Click to expand...
Click to collapse
I'm not sure yet. Some people might not like to have it enabled all the time.
LorD ClockaN said:
I knew all the time that Mike is a real dev!
Click to expand...
Click to collapse
lol Well doing stock ROMs doesn't mean someone have no knowledge. I also wont call myself a real dev since I'm not developing anything But hey, what do I know
mike1986. said:
lol Well doing stock ROMs doesn't mean someone have no knowledge. I also wont call myself a real dev since I'm not developing anything But hey, what do I know
Click to expand...
Click to collapse
hey can you please share the edited file here? somehow I can't edit it myself, very confused in hex editor!
kryptoner said:
hey can you please share the edited file here? somehow I can't edit it myself, very confused in hex editor!
Click to expand...
Click to collapse
Sure, will do!
mike1986. said:
Sure, will do!
Click to expand...
Click to collapse
just out of interest ... how did you trace this back to the particular lib??
---------- Post added at 08:23 PM ---------- Previous post was at 08:21 PM ----------
knightrocker said:
just out of interest ... how did you trace this back to the particular lib??
Click to expand...
Click to collapse
never mind ... saw the op again .. sorry
Umm does this mean GPU rendering is not enabled by default on the One X? Seriously? WHY?
Why would HTC NOT enable it? :\
eRajesh said:
Umm does this mean GPU rendering is not enabled by default on the One X? Seriously? WHY?
Why would HTC NOT enable it? :\
Click to expand...
Click to collapse
Ask them. While you're at it ask why the battery isn't removable, nor the SD card.
Does this affect battery drain (Positively or negatively?)
eRajesh said:
Umm does this mean GPU rendering is not enabled by default on the One X? Seriously? WHY?
Why would HTC NOT enable it? :\
Click to expand...
Click to collapse
because a lot of apps might/will force close with it on by default
http://forum.xda-developers.com/showthread.php?t=1372007
can someone share the edited file?
beanbean50 said:
because a lot of apps might/will force close with it on by default
http://forum.xda-developers.com/showthread.php?t=1372007
Click to expand...
Click to collapse
also i read what a google dev said a while ago ... apparently the system locks a chunk of memory for every app that uses gpu rendering ... 8 mb or so ... so thats quite a bit if you lock em all ... not a nice idea especially with sense
eRajesh said:
Umm does this mean GPU rendering is not enabled by default on the One X? Seriously? WHY?
Why would HTC NOT enable it? :\
Click to expand...
Click to collapse
Nope, it's not It is suppose to be enabled in various situations but doesn't seems to work.
com.htc.launcher
com.android.camera
com.htc.android.mail
com.android.browser
com.google.android.apps.maps
com.htc.laputa
com.google.android.videos
com.sdgtl.watch
com.htc.video
com.htc.streamplayer
com.google.android.youtube
com.aurorasoftworks.quadrant
gr.androiddev.BenchmarkPi
com.smartbench
com.quicinc.vellamo
com.android.cm3
com.glbenchmark.
se.nena.nenamark - those two looks wired to me
com.southend.electopi
com.tactel.electopia
com.antutu
com.greenecomputing.linpack
eu.chainfire.cfbench
com.georgie.pi
com.netflix.mediaclient
Those are apps when 2D rendering should be enabled. You can check it by:
adb shell
getprop persist.sys.ui.hw
output should be 1 if it's working. Will be 0, if it's disabled. With my tweak it's always 1.
Download ready recovery .zip - http://goo.gl/trJa6
@mike
I think you mean 'Warning' not 'Warring' ...!
beanbean50 said:
@mike
I think you mean 'Warning' not 'Warring' ...!
Click to expand...
Click to collapse
Thanks, fixed!

[HACK] Using complete Windows API in Windows Store app (c++)

As we know, MS prohibits using most of standard Win32 API in Windows Store applications. Obviously there are lots of ways to overcome this limit and to call any API you like, if you are not going to publish your app on Windows Store. And here is one of them.
Idea is really simple and rather old (lots of viruses use it): search for kernel32.dll base in memory, then parse its exports for LoadLibraryA and GetProcAddress, call them - and get profit.
Writing here so this post can be indexed by google.
Partial code:
Code:
void DoThings()
{
char *Tmp=(char*)GetTickCount64;
Tmp=(char*)((~0xFFF)&(DWORD_PTR)Tmp);
while(Tmp)
{
__try
{
if(Tmp[0]=='M' && Tmp[1]=='Z')
break;
} __except(EXCEPTION_EXECUTE_HANDLER)
{
}
Tmp-=0x1000;
}
if(Tmp==0)
return;
LoadLibraryA=(t_LLA*)PeGetProcAddressA(Tmp,"LoadLibraryA");
GetProcAddressA=(t_GPA*)PeGetProcAddressA(Tmp,"GetProcAddress");
CreateProcessA=(t_CPA*)PeGetProcAddressA(Tmp,"CreateProcessA");
HMODULE hUser=LoadLibraryA("user32.dll");
MessageBoxA=(t_MBA*)GetProcAddressA(hUser,"MessageBoxA");
MessageBoxA(0,"A native MessageBox!","Test",MB_OK);
STARTUPINFO si;
memset(&si,0,sizeof(si));
si.cb=sizeof(si);
PROCESS_INFORMATION pi;
CreateProcessA("c:\\Windows\\system32\\cmd.exe",0,0,0,FALSE,0,0,0,&si,&pi);
}
Complete project is attached. It contains sources and compiled appx files for side-loading.
Code compiles fine for x86/x64 and ARM, tested on x86/x64. Can someone test it on ARM? Ability to sideload metro apps is required.
The application should output a MessageBox, then execute cmd.exe.
A note: Windows Store application runs in a sandbox and as a limited account, so most of API returns "access denied". You can check this in a launched CMD - it displays "access denied" even on a "dir" command because normally "modern ui" apps don't have even read access to c:\.
To overcome this - add "all application packages" full control to the directories/objects you like (for example to c:\).
Works perfectly on my Windows 8 x64 Tablet :good:... its not ARM based though ...
Can i use this to run a non-store app?
Here is the catch, I have managed to get the installed (not the installation) file from a kind member here on XDA. But when I paste the folder in:
C:\Program Files\WindowsApps\Microsoft.ZuneMusic_1.0.927.0_x64__8wekyb3d8bbwe
The app isnt seen on the metro UI?
Any way to start a scanner of some sorts so that I can see the app in Metro.../?
THanx a ton!
Plz feel free to laugh a little at my noobish question...im stil learning..
Works perfectly on my surface RT!
but type dir in CMD returns "access denied".
There are no code signature checks from the command prompt that you launch.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Code:
#include <iostream>
void main()
{
std::cout << "Hello RT World!\n";
}
Compiled as an exe with info in http://stackoverflow.com/questions/...op-programs-be-built-using-visual-studio-2012
Open properties of your disk c:, go to the security tab and add "ALL APPLICATION PACKAGES" == full control. In this cage "dir" command would work, and your apps would be able to access whole filesystem.
Sorry if it's unrelated, but does RT check signatures for loaded DLLs too? Can one run regedit and change some system CLSID to point to unsigned library, will it be loaded?
Simplestas said:
Sorry if it's unrelated, but does RT check signatures for loaded DLLs too? Can one run regedit and change some system CLSID to point to unsigned library, will it be loaded?
Click to expand...
Click to collapse
Unless the dll is loading with a restricted security policy (such as through a Metro app) it is checked, yes.
Excellent work on the 'App1' technique of starting a cmd prompt from a modern app, and the fact it can run other unsigned cmd line apps.
Note that the cmd prompt still runs in the modern app container and probably has lots of restrictions
And also it only runs when the modern app is running and effectively freezes when the modern app goes into the background and suspends
Don't seem to be able to run win32 gui apps from the cmd prompt it starts -- they start but immediately terminate, presumably because the full win32 stuff cant initialise in a modern app container.
But can tum gui win32 api's, like the create dialog one, from the App1 modern app
Luckily we can also test, investigate and debug this on an intel Windows 8 system (dual monitor is best) when trying to work out what is going on, and then test on ARM after that.
@Simplestas: LoadLibrary is also blocked, I'm afraid. One fo the first things I tried was creating a DLL compatible with the built-in rundll.exe program and using that. It failed to load the third-party library.
@xsoliman3: Don't forget the debugger. You can't run it on the RT device right now, but there are (official) tools for debugging RT apps remotely. That should allow connecting to the child process and seeing what happens as it starts up.
GoodDayToDie said:
@Simplestas: LoadLibrary is also blocked, I'm afraid. One fo the first things I tried was creating a DLL compatible with the built-in rundll.exe program and using that. It failed to load the third-party library.
@xsoliman3: Don't forget the debugger. You can't run it on the RT device right now, but there are (official) tools for debugging RT apps remotely. That should allow connecting to the child process and seeing what happens as it starts up.
Click to expand...
Click to collapse
Great seeing you again!
Anyways, I determined from some work with the VS Remote Debugger that the integrity checks are enforced in ZwCreateUserProcess. But, I bet LoadLibrary has its integrity checks in user-mode, since it normally doesn't access any functions using a call-gate to the kernel on Windows 7, which would mean we can modify it to allow us to load unsigned DLL's.
However, with this vulnerability, I had a different. What about allowing a native application to open, such as Notepad, and before it reaches the entrypoint, remotely injecting a different application to be ran (this would involve some sort of custom LoadLibrary + CreateRemoteThread pair of functions)? With the VS Debugger, you can already attach to any native process in user-mode and modify running code, data, and even the context (e.g. registers and similar data).
That suggestion is possible, and for trivial operations (i.e. replacing some strings in a program, or causing it to take one branch instead of another) people have already done so. Doing a wholesale replacement would be tricky, but should be possible (perhaps aided with WinDBG scripts or similar).
GoodDayToDie said:
Doing a wholesale replacement would be tricky
Click to expand...
Click to collapse
Not so tricky, I've already made a prototype on desktop Win8. Just make an ARM DLL that implements a PE loader using only 2 WinAPI functions - LoadLibrary (used only to get kernel32 handle) and GetProcAddress. Inject that DLL code and data sections via debugger, fixup relocs (you can minimize their amount in your "loader DLL" by not using global variables, placing all code into one file, not using CRT at all, and so on, ARM makes it easy to create position-independent code), and call your injected code via debugger passing it the address of LoadLibrary and GetProcAddress as parameters. Your code than would do what you wish - load and execute an unsigned DLL that you specify.
With this trick you can load EXE files too, as all ARM EXEs contain relocs by default.
But this way is too inconvenient to the end-user, so should be avoided. I really think that MS left enough holes for us to "unlock" unsigned apps on retail WinRT devices.
I'm already thinking on buying an Asus tablet with 3G (instead of waiting for a better device that I wish), so after NY holidays I'll join your game
Ah, that's a much more clever approach than actually trying to load the full program using the debugger itself... if it works. LoadLibrary triggers the same signature check that CreateProcess does (or rather, the system calls that they do will perform that check; if it was user-mode we could bypass it with the debugger). Your method may work, but since the desktop doesn't have the signature check anyhow, prototyping it there doesn't actually mean it will work on RT. Try it out and let us know how it goes, and if it works, posting your source would be awesome!
GoodDayToDie said:
Ah, that's a much more clever approach than actually trying to load the full program using the debugger itself... if it works. LoadLibrary triggers the same signature check that CreateProcess does (or rather, the system calls that they do will perform that check; if it was user-mode we could bypass it with the debugger). Your method may work, but since the desktop doesn't have the signature check anyhow, prototyping it there doesn't actually mean it will work on RT. Try it out and let us know how it goes, and if it works, posting your source would be awesome!
Click to expand...
Click to collapse
He doesn't mean making a prototype and importing from kernel32.dll. He means manually mapping the PE file, then using either CreateRemoteThread or modifying the context of a thread already launched to run it once it's in the memory address of another process. It's basically DLL injection with our own implementation of LoadLibrary. It would work because LoadLibrary doesn't use any system calls except to map memory (and mapping memory doesn't have integrity checks of any sort, and it shouldn't be design -- e.g. VirtualAlloc).
A bigger problem I thought of is automating this. I took a quick peek with Wireshark at my remote debugging session and saw HTTP with what appeared to be a proprietary protocol. In order to automate this from another computer (or any mobile device for that matter), we would need to reverse engineer the protocol. Or, an alternative would be to hook into Visual Studio once the debugging session is launched (maybe just a nice VS plugin would work?).
mamaich said:
Code:
void DoThings()
{
char *Tmp=(char*)GetTickCount64;
Tmp=(char*)((~0xFFF)&(DWORD_PTR)Tmp);
while(Tmp)
{
__try
{
if(Tmp[0]=='M' && Tmp[1]=='Z')
break;
} __except(EXCEPTION_EXECUTE_HANDLER)
{
}
Tmp-=0x1000;
}
if(Tmp==0)
return;
Click to expand...
Click to collapse
I was looking through the provided sample -- wouldn't our own GetModuleHandleA implementation be a better way of doing this? I'm just thinking should the alignment be changed in kernel32.dll it may be better to have something like this:
Code:
522 if (!name)
523 {
524 ret = NtCurrentTeb()->Peb->ImageBaseAddress;
525 }
526 else if (flags & GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
527 {
528 void *dummy;
529 if (!(ret = RtlPcToFileHeader( (void *)name, &dummy ))) status = STATUS_DLL_NOT_FOUND;
530 }
Source: http://source.winehq.org/source/dlls/kernel32/module.c#L504
Grabbing the Peb (NtCurrentTeb()->Peb) would involve pulling from the FS register at offset 0x30. Implementing this on ARM could be trickier, as I'm not sure of the inline assembly or availability of intrinsics (not to mention, it would be stored somewhere else than the FS register).
Now, for the PC, it appears __readfsdword is available as an intrinsic, so this *should* work on x86 installations of Windows 8.
mamaich said:
Not so tricky, I've already made a prototype on desktop Win8. Just make an ARM DLL that implements a PE loader using only 2 WinAPI functions - LoadLibrary (used only to get kernel32 handle) and GetProcAddress. Inject that DLL code and data sections via debu
Click to expand...
Click to collapse
I think this approach (of injecting own loader as far as understand) has such problem(even if implemented & automated)
Loaded exe can have own dependant dlls(any complicated-usefull proj has) that it cant load because of signing checks (and even more problems if it uses dynamic loading of own dlls and getprocaddress)
Or do i miss somth in your idea?
Will I be able to read/write to a parallel port using this method? Do the limited store apps have sufficient permissions to do that? Writing to a parallel port requires calling
Code:
hndleLPT = CreateFile("LPT1",(GENERIC_READ | GENERIC_WRITE), 0, 0, OPEN_EXISTING, 0, 0);
. Will this succeed?
Will I be able to successfully load this: http://www.highrez.co.uk/Downloads/InpOut32/default.htm ?
---------- Post added at 03:01 PM ---------- Previous post was at 02:11 PM ----------
This looks like an improved method to get the base address:
http://tedwvc.wordpress.com/2013/07/19/finding-the-kernel32-dll-module-handle-in-a-windows-store-app-using-approved-apis/
You should be able to do that using CreateFile2, which is permitted in Store apps already (no need to use the rest of the Win32 API). As for the permissions, I don't know, but it will probably work.
I mean, assuming your computer *has* an LPT port. I haven't seen one of those in a while...
how about the other way round? can a desktop app have access to the full windows 8 api (including those reserved for win store apps only)?

[Kernel] X11 support in Ubuntu Touch for Galaxy Nexus (maguro)

As you know there is no support for X11 in Ubuntu Touch with default CM10 kernel. To be more correct: there is no VT (virtual terminal) devices in Ubuntu Touch at Android layer. So you can install X11 but you can't run it! I decided to fix it and made kernel with VT support. Now it's possible to run X11 server and your favorite desktop environment. However there are some bugs with it: qml-phone-shell (which is Touch Shell) renders at top level and X11 - at bottom. Still you can interact with both of them: Touch Shell on phone and X11 over VNC. Another bugs are green tint on phone display and slow x11 render.
X11 over VNC:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Installation:
1. Get Kernel:
View attachment boot.img
2. Flash it with fastboot:
Code:
fastboot flash boot boot.img
3. And now you can install X11, x11vnc and desktop environment (e.g.: xfce4):
Code:
sudo apt-get install xorg x11vnc xubuntu-desktop
4. Also you need valid config for X11:
View attachment 99-omap.zip
5. Unrar it and put to device:
Code:
adb push 99-omap.conf /data/ubuntu/usr/share/X11/xorg.conf.d/99-omap.conf
6.Reboot phone
7. Set password for x11vnc server:
Code:
x11vnc -storepasswd <your_passwd>
8. Start x11vnc server:
Code:
sudo x11vnc -dontdisconnect -notruecolor -noxfixes -shared -forever -rfbport 5900 -bg -o /var/log/x11vnc.log -rfbauth /home/phablet/.vnc/passwd
Now you can connect to device with VNC Client.
How does this compare in performance to using a remote X server, as in this thread
http://forum.xda-developers.com/showthread.php?t=2161884
With that method I found most applications to perform decent except QtCreator.
Having to render the x server on the phone itself I would think wouldn't perform that fast.
BukaKing said:
Having to render the x server on the phone itself I would think wouldn't perform that fast.
Click to expand...
Click to collapse
That's true. X Server on phone slow enough and your way is better. Perhaps this one is alternative and require only VNC client or not require client at all. If you stop qml-phone-shell, X11 will be rendered to device. So this kernel is for testing purpose only.
VNC?
Great achievement. Can you run Xserver on its own dedicated VT when VT switching is enabled? What is VNC needed for in this scenario?
I will report a bug at launchpad so that the upstream (ubuntu-touch) kernel enables VT switch.
eudoxos.eu said:
Can you run Xserver on its own dedicated VT when VT switching is enabled? What is VNC needed for in this scenario?
Click to expand...
Click to collapse
You mean to use another tty? That's possible, since there lot of them. VNC server and client will be same (e.g. x11vnc and UltraVNC).
dim319 said:
VNC server and client will be same (e.g. x11vnc and UltraVNC).
Click to expand...
Click to collapse
The X11 server can't talk to the GPU directly, even without acceleration? In that case you could drop VNC completely.
dim319 said:
qml-phone-shell (which is Touch Shell) renders at top level and X11 - at bottom.
Click to expand...
Click to collapse
You can stop phone-shell with
Code:
service ubuntu-session stop
I installed gnome on my SGS2 GT-I9100 (worked without modifying kernel from http://forum.xda-developers.com/showthread.php?t=2188621 ), now I can start gdm with:
Code:
service gdm start
I have some trouble with onscreen keyboard in gdm (onboard), but you can enable autologin in /etc/gdm/custom.conf
Code:
[daemon]
# Enabling automatic login
AutomaticLoginEnable = true
AutomaticLogin = phablet
With this /etc/X11/xorg.conf even the touchscreen works (in a laptop-touchpad way):
Code:
Section "ServerLayout"
Identifier "Layout0"
Screen "Screen0"
InputDevice "cyttsp-i2c" "CorePointer"
EndSection
Section "InputDevice"
Identifier "cyttsp-i2c"
Driver "multitouch"
# MatchIsTouchpad "true"
# Driver "evdev"
Option "CorePointer" "true"
Option "SendCoreEvents" "true"
Option "Device" "/dev/input/event2"
Option "Protocol" "Auto"
Option "Rotate" "CW"
EndSection
Section "Device"
Identifier "Card0"
Driver "fbdev"
Option "fbdev" "/dev/graphics/fb0"
# rotate screen to be in sync with touchpad orientation
Option "Rotate" "OFF" # OFF=0 CW=90 UD=180 CCW=270
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
EndSection
(don't forget to install xserver-xorg-input-multitouch for touchsceen!)
Unfortunately I messed up my packaging system (didn't work because no space left on device, now even apt-get install -f can't repair it ), so i will have to try again i guess...
no VT needed?
-schumi- said:
You can stop phone-shell with
Code:
service ubuntu-session stop
I installed gnome on my SGS2 GT-I9100 (worked without modifying kernel from http://forum.xda-developers.com/showthread.php?t=2188621 ), now I can start gdm with:
Code:
service gdm start
Click to expand...
Click to collapse
Does that mean that I can run xorg on Nexus 10 with the official preview images - if I stop ubuntu-session, which occupies the only virtual terminal? (Sorry for perhaps a dumb question, I don't want to re-flash ubuntu-touch over CM again just to try that).
eudoxos.eu said:
The X11 server can't talk to the GPU directly, even without acceleration? In that case you could drop VNC completely.
Click to expand...
Click to collapse
The X11 works with framebuffer (which is fb0), not with GPU. You can use VNC to view X11 from phone to host. X11 can be viewed on phone without VNC.
-schumi- said:
You can stop phone-shell with
Code:
service ubuntu-session stop
I installed gnome on my SGS2 GT-I9100 (worked without modifying kernel from http://forum.xda-developers.com/showthread.php?t=2188621 ), now I can start gdm with:
Code:
service gdm start
Click to expand...
Click to collapse
I see. This is better than making new kernel, and require only correct config for xorg. I saw few solutions: one from BukaKing,one with Xvfb, mine kernel, and yours is best one!
I've worked around the virtual terminal issue by linking PTMX in the past.
just make a new Virtual Terminal device
Code:
rm /dev/ptmx
mknod --mode 666 /dev/ptmx c 5 2
/bin/dbus-uuidgen --ensure
Thanks for the info, great thread! I'm hoping to run a single dedicated X11 app, no real need for the original interface. That said, this seemed like a good starting point.
In case it helps anyone, attached is a kernel boot image I just built for a Nexus 7 wifi (Grouper) that has CONFIG_VT enabled. Ubuntu 13.04, kernel 3.1.10.
Thanks,
Brian

Categories

Resources