Saturday, July 14, 2018

[Tutorial]Linux x64 on 32bit EFI Baytrail(Lenovo Ideapad100s-11iby)

In this tutorial after some pretty "tough" trial&error series i'll show you step-by-step how i managed to get my Lenovo Ideapad 100S -11IBY laptop to successfully boot and install Linux Mint 19 XFCE.

The story behind it:
First thing first , low spec laptop + Windows 10 (Bloatware party) = Slowness.
Also this laptop comes up with pre-installed 32bit Windows10 version and with a 32bit UEFI bios making it a real pain to install an x64 bit os and take advantage of the x64 support of the cpu.

Laptop Specs:


      CPU: 1.33 GHz quad-core Intel Atom Z3735F (64bit support - hence the x64bit OS)  Graphics: Intel HD Graphics (Bay Trail)  RAM: 2GB  Storage: 32GB eMMC  Screen: 11.6-inch, 1,366 x 768 matte TN LED display  Ports: 2 x USB 2.0, HDMI-out, micro SD, audio combo jack  Connectivity: 802.11n Wi-Fi, Bluetooth 4.0 (Low Energy)  Cameras: 0.3MP webcam with dual-microphone  Weight: 2.2 pounds  Size: 11.5 x 7.95 x 0.69 inches (W X H X D)

  • What we will need:
    1) USB Stick
    2) Rufus
    3) x64 Linux Distro
    4) bootia32.efi

    Lets start:
    1) Burn the image to your usb stick using Rufus , copy-paste the bootia32.efi file inside your usb in the "/EFI/BOOT" directory.
    2) Disable Secure-Boot from your bios.
    3) Boot from your usb , (in Lenovo IDEAPAD 100S you have to press FN+F12)
    4) Select the first option to boot live distro 
    5) From the live linux desktop select the icon to install the OS to your harddrive.
    6) At the last step it will fail showing the following message
                                 
    7) Press okay , the installation will exit , find and open your terminal from the desktop environment.   Type: blkid and right down your partition name of ext4.
    8) After that restart your system.

    9) Boot again from live usb , on the first option instead of pressing enter press the "C" of your keyboard to launch the grub command.
    10) From there we need to jumpstart and point to our installation partition.


    set root=(hd?,?)              HINT: The TAB KEY IS YOUR FRIEND FOR AUTOCOMPLETION 

     Now we need to find the vmlinuz.efi file. Try with the tab to see where your file is ill give you the common locations below to search for it. (Could also be vmlinuz.efi instead of vmlinuz)

    linux /casper/vmlinuz root=/dev/YOURPARTITIONNAME 
    or
    linux /boot/vmlinuz root=/dev/YOURPARTITIONNAME 
    or
    linux /vmlinuz root=/dev/YOURPARTITIONNAME 

    Now lets locate initrd:
    initrd /casper/initrd.lz 
    or
    initrd /boot/initrd.lz

    And after that type "boot"
    boot

    So on your screen you should have these 4 instructions
    set root=(hd1,2)  
    linux /casper/vmlinuz root=/dev/mmcblk1p2
    initrd /casper/initrd.lz
    boot
    

    Your linux distro will boot-up and now we need to configure our 32bit grub loader and we are done.

    11)Open up your terminal and type the following:
    sudo apt-get update
    sudo apt-get install grub-efi-ia32
    sudo update-grub2
12)Thats all folks.The OS is now ready , time to sort-out some issues/bugs.

Sudden Freezing bug:This is a power management bug on baytrail cpus , there has been a patch which i havent really tried out yet (Google c6off+c7on.sh)

Instead of the patch ive used the following:


We will need to pass the parameter "intel_idle_max=1" to grub , for that go to /etc/default and edit the file called grub.
Find the parameter GRUB_CMDLINE_LINUX_DEFAULT and paste inside the quotes with 1 space at the end of the current value the next parameter which is "intel_idle_max=1"
e.g: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle_max=1"
Save your file and then on terminal update the grub "sudo update-grub"


Disable HDMI sound (Known to cause issues):

Go to /etc/modprobe.d/ create a conf called "blacklist_snd_hdmi_lpe_audio.conf"
and inside it paste the following line without quotes "blacklist snd_hdmi_lpe_audio"

Drivers for Audio Built-In Speakers & Mic:

Find your sound card version by opening terminal and typing aplay-l
Go to https://github.com/plbossart/UCM and download the appropriate drivers , copy the whole folder to usr/share/alsa/ucm
Note: If your driver folder contains a file called asound.state copy it to /var/lib/alsa

Keyboard/Trackpad Session Freeze Bug:


This bug occured per session , and with some restarts or shutdowns everything 
worked until you shutdown your laptop again.
The steps below completely fixed the issue for me and now the keyboard always work.
Open terminal -> type sudo apt-get install libinput*

Some small tweaks for swap:

Tweaks for 2gb<= ram laptops
a. First check your current swappiness value. Type in the terminal (use copy/paste):
cat /proc/sys/vm/swappiness
Press Enter. The result will probably be 60.

b. To change the swappiness into a more sensible setting, type in the terminal (use copy/paste to avoid typo's):
xed admin:///etc/sysctl.conf
Press Enter. Note that you'll be asked twice for your password.

Now a text file opens. Scroll to the bottom of that text file and add your swappiness parameter to override the default. Copy/paste the following two green lines:
# Decrease swap usage to a more reasonable level
vm.swappiness=10
c. Save and close the text file. Then reboot your computer.
d. After the reboot, check the new swappiness setting:
Launch a terminal window.
Type (use copy/paste):
cat /proc/sys/vm/swappiness
Press Enter.
Now it should be 10.

                                                    HAPPY LINUX-ING


Friday, July 6, 2018

[Tutorial] Debloat - Safe android services to disable or remove.


Once again a self explanatory title so ill get directly the point.
Here's my safe to remove list , all self-tested.

Instructions:
To disable the following packages you can do it directly from your phone or download and install the Debloater by Gatesjunior with the adb drivers of course.



Samsung Galaxy Alpha G850F on Rooted Stock 5.0.1 Lollipop:
  1. AccuweatherPhone2014_S_LMR_HD.apk (com.sec.android.widgetapp.ap.hero.accuweather)
  2. Books.apk                                                     (com.google.android.apps.books)
  3. Drive.apk                                                      (com.google.android.apps.docs)
  4. Dropbox.apk                                                 (com.dropbox.android)
  5. Flipboard.apk                                                (flipboard.app)
  6. GalaxyApps_3xh.apk                                   (com.sec.android.app.samsungapps)
  7. Hangouts.apk                                                (com.google.android.talk)
  8. Magicshot_HD_A5.apk                                (com.arcsoft.magicshotstudio)
  9. Music2.apk                                                   (com.google.android.music)
  10. Newsstand.apk                                              (com.google.android.apps.magazines)
  11. PhotoStudio_HD_K.apk                               (com.sec.android.mimage.photoretouching)
  12. PlusOne.apk                                                  (com.google.android.apps.plus)
  13. SStudio_HD_K.apk                                      (com.sec.android.mimage.sstudio)
  14. Talkback.apk                                                 (com.google.android.marvin.talkback)
  15. Velvet.apk                                                     (com.google.android.googlequicksearchbox)
  16. VideoEditor_Lite_S.apk                               (com.sec.android.app.storycam)
  17. Videos.apk                                                    (com.google.android.videos)
  18. WeatherDaemon2014_LMR.apk                 (com.sec.android.daemonapp)
  19. Youtube.apk                                                 (com.google.android.youtube)

Monday, April 2, 2018

ELM327

This is a repost from a forum ive found online , if your ELM327 stopped working here's a quick fix if the legs of your tool are shorting.



Thursday, February 1, 2018

[Tutorial]PS2LuaPlayer Simple XMB Menu

Well-well since i got my hands on my old ps2 console and all of the required accessories ill try to contribute as much as i can.

From a small search i was doing on the forums i saw that a ps2 xmb styled menu got a lot of you excited , hence im creating this small tutorial on how to create a really simple menu in Lua.
Im using PS2 Lua Player v0.20(R3)

Heres how your program will look:

main.lua
Coding:


-- images used for navigation/menuicons
pic1=Image.load("Theme/1.png")
pic2=Image.load("Theme/2.png")
pic3=Image.load("Theme/3.png")
pic4=Image.load("Theme/4.png")
pic5=Image.load("Theme/5.png")
pic6=Image.load("Theme/6.png")
pic7=Image.load("Theme/7.png")
pic8=Image.load("Theme/8.png")
--menu
selected=1
maxselected=8
while true do
pad=Controls.read()
--How Controls react on left/right
if pad:right() and oldpad:right() ~= pad:right() then
selected = selected+1
end
if pad:left() and oldpad:left() ~= pad:left() then
selected = selected-1
end
if selected > maxselected then
selected=1
elseif selected <=0 then
selected=maxselected
end
if selected==1 then
screen:clear()
screen:blit(0,0,pic1)
end
if selected==2 then
screen:clear()
screen:blit(0,0,pic2)
end
if selected==3 then
screen:clear()
screen:blit(0,0,pic3)
end
if selected==4 then
screen:clear()
screen:blit(0,0,pic4)
end
if selected==5 then
screen:clear()
screen:blit(0,0,pic5)
end
if selected==6 then
screen:clear()
screen:blit(0,0,pic6)
end
if selected==7 then
screen:clear()
screen:blit(0,0,pic7)
end
if selected==8 then
screen:clear()
screen:blit(0,0,pic8)
end
--Actions for each icon selection
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==1 then
dofile("Enter Here your next lua file")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==2 then
dofile("Enter Here your next lua file")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==3 then
dofile("Enter Here your next lua file")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==4 then
dofile("Enter Here your next lua file")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==5 then
dofile("Enter Here your next lua file")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==6 then
dofile("Enter Here your next lua file")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==7 then
dofile("Enter Here your next lua file")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and selected==8 then
dofile("Enter Here your next lua file")
end
screen.flip()
screen.waitVblankStart()
oldpad = pad
end
Happy coding. 

Thursday, January 25, 2018

[Tutorial] PS2SDK on Windows10

      How to get the ps2sdk to work on your windows10 system


 What you will need: 


Step 1: (Prepare MinGW)
Install MinGW in C



Extract the mingw-lackages-ps2dev-1.0 and paste them inside MinGW directory C:/MinGW
If it asks to replace any files select NO.

                                  


Step 2: (Prepare msys)
Install msys in C
Go to msys/1.0/etc/profile , edit it and add the following:
export PS2DEV=/usr/local/ps2dev
export PATH=$PATH:$PS2DEV/bin
export PATH=$PATH:$PS2DEV/ee/bin
export PATH=$PATH:$PS2DEV/iop/bin
export PATH=$PATH:$PS2DEV/dvp/bin
export PS2SDK=$PS2DEV/ps2sdk
export PATH=$PATH:$PS2SDK/bin
export PS2SDKSRC=$PS2DEV/ps2sdksrc
export PS2LIB=$PS2DEV/ps2lib
export PS2ETH=$PS2DEV/ps2eth
export GSKITSRC=$PS2DEV/gsKit
export C_INCLUDE_PATH=$PS2DEV/ee/ee/include
cd "/C/msys/1.0/"

Then navigate to msys/1.0/bin rename the rxvt.exe to something else (rxvtbak.exe)

                                

Navigate to  msys/1.0/local , extract and copy the ps2dev folder and its contents

                              

Step 3: (Policy Editor)                             

Step 4: (Environment Path)
                           

Step 5: (Install GIT)

Open your msis , and type git to check if it works
if you type now git , svn or wget if the installation was made succesfully will show you as a result the correct syntax to use the command. If not try restarting your system.



Step 6: (Make ELF)
Navigate to the folder where you have your example files (youll need to have a .c file and a makefile) and type make.You should see the same massage and now in the same directory you will have an .elf file.