Sunday, December 19, 2010

Notes Zenithink ZT-180 ePad Android

Notes Zenithink EPad Android

These notes are about the Zenithink ZT-180 256MB (version 1). However, users of other models may find some similarities and hence useful notes here.


Ports on Zenithink and their functions
   Top side
T-F - slot for memory card, also known as MicroSD
Power On/Off - button for switching on / off
USB to RJ45 - microUSB connector to a LAN connector (supplied with Zenithink)
Software Menu - for selecting different software
   Bottom side
Speakers
   Right side
DC - to connect to power suppl for charging
OTG - USB On the Go - a specification for USB allowing the device to be a slave USB.
USB - to connect USB devices
Headphone -
Reset -
Mic -


Change Settings
Settings -> Sound and Display -> Display Settings -> Screen Timeout


Checking Information of ePad
- Version:  Settings app -> About MID -> Firmware, Kernel, Build, etc
- MAC Address: Settings app -> About MID -> Status -> Wi-Fi Mac address



Some interesting APPS for the Android
Applications
Adobe Reader
Amazon Kindle
Amazon MP3
Bible Reader KJV
Bible Reader Olive Tree
Dolphin Browser
Ebay
FT Mobile
Google Books
Google Maps
Google Market
Google SkyMap
Nagivation
Notepad
Office Suite
PDF Viewer
Places
Twitter
YouTube

Utilities
Advanced Task Killer Free
DevTools
Latitude
ROM Gripper
Sound Recorder
Spare Parts
Superuser
Wifi Advanced Configuration Editor

Educational

Algebra Tutor
Arity
Coloring Finding Nemo
Coloring Disney Princess


Dora Memory Game
Dora Explorer Puzzle 
Hello Kitty Puzzle
Math Workout
Princess Memory Game



Fun and Games

Angry Birds
Ataroid Lite
Checkers Free
Chess
Chuck Norris
Hangman Classic
Mole Mole Mole
Piano
Pinball
Reversi
Robo Defense
Smart Tac Toe
SpiderMan


How to Flash Zenithink ZT-180 or install the latest firmware

There are many ways to flash or upgrade Android on the Zenithink. There are many sites with a few good ones on how to do this. But I decide to write these notes because none of the sites have complete and detailed instructions. There always seem to be a step missing. So these notes will be detailed but for a very specific case only.

For Zenithink users on Adroid 2.1 who wants to upgrade to Android 2.2.
To be speficic, these notes apply for Android 2.1 10(1030) to Android 2.2 11(0326)
This upgrade path MUST use USB install method (using 32bit Windows PC).
The SDcard install method CANNOT be used at this stage yet.

Part A: Installing Android USB drivers
1. This step is necessary so that the Zenithink can be connected via USB to a 32 bit PC to use the BurnTool.
2. Download the BurnTool package which contains the USB driver from.
http://www.mediafire.com/file/aa6i53txsocplvm
The link to BurnTool 7.41 can be found from
http://www.slatedroid.com/wiki/index.php?title=Wiki:ZT-180_FAQ#Click_Here_to_view_all_available_ROMs_for_the_ZT-180
The BurnTool 7.41 is for ROM 1104 or later. It is for 32 bit system.
3. Unpack the BurnTool RAR file which contain the following into a folder called BurnTool7.41:

 android_usb_windows.zip

 secbulk.rar
 burn.ini

 burntool.exe
 Readme.txt
 ZT_Bx.boot
 ZT_Bx.spl

4. Make a new folder anywhere called adroid_usb.
- Unpack the contents of BurnTool7.41/android_usb_windows.zip into adroid_usb folder.
- Unpack the contents of BurnTool7.41/secbulk.rar into adroid_usb folder.
5. connect USB cable to PC, the other end is a free miniUSB.

- shutdown ZT-180
- connect mini usb end to otg on ZT-180
- put power cord in (tablet still turned off)
- hold down menu button and press power and hold both for 10 seconds and let go.
- the PC should find hardware.
6. If Zenithink is connected to PC for the first time, when PC asked to install drivers, choose the folder you created above called adroid_usb. Important, the system will automatically install TWO sets of drivers.
The first set of USB drives is for the USB SecBoard Tools, the second set is for the Android USB.
The  adroid_usb folder should contain these files for the USB driver to install properly:
 androidusb.sys
 android_usb.inf
 LICENSE-2.0.txt
 secbulk.inf
 secbulk.sys
 WdfCoInstaller01005.dll


Part B: Configuring BurnTool 7.41 and Flashing with 110326ROM
This technique will be a clean install meaning it will destroy everything in the old Android 2.1 system and replace with the Android 2.2 110326.
0. Download Android 2.2 package build 110326, meaning 2011, March 26 from
http://www.zenithink.com/UploadFile/epad_256M_nand_old_android_2.2_0326.rar
Alternatively, 1. http://www.zenithink.com/Enews_92.html click on the link:

The file should be:
epad_256M_nand_old_android_2.2_0326.rar



Unpack this file into folder epad_256M_nand_old_android_2.2_0326

The folder should contain:

 boot.logo
 epad_256M_nand_old_android_2.2_0326.txt
 system.pack.img
 userdata.pack.img
 zImage
 zImage_1024x576
 zImage_1024x600
 ZT_Bx.spl


1. After the USB drivers are installed, run BurtTool.exe from the BurnTool7.41 folder.
2 On the BurnTool display, the Status square next to Device 10 should become green when the Zenithink USB connection is recognized. If not connected yet, then switch off Zenithink, connect the USB to miniUSB (OTG port). Hold the Menu button and press Power and hold for 10 seconds. The Device 10 square in BurnTool should turn green.
3. Click on the Settings menu item. Enter the password as "zenithink"
4. Setup the following files in the settings dialog:

- uboot-spl =  epad_256M_nand_old_android_2.2_0326\ZT_Bx.spl
- uboot-img = BurnTool7.41\ZT_Bx.boot
- linux-kernel = epad_256M_nand_old_android_2.2_0326\zImage 
- linux-sys = epad_256M_nand_old_android_2.2_0326\system.pack.img
- linux-udat = epad_256M_nand_old_android_2.2_0326\userdata.pack.img
- in the Memory options, click scrub
- click Save
5. Check that the Zenithink is connected to the Power cable and the BurnTool device10 status is green.
6. Press Start to Flash. 
7. When flashing is completed, remove the mini USB cable from the Zenithink. Press the Menu button.
8. Three setup options may be presented. Choose the option on top first then, the others.
9. Switch of the Zenithink after setup is complete. Then Restart.




From another site:

Shutdown the Pad.
Then Press The Button on the Right site in front of the pad (there is only one?) and the Power Button at the Same Time.
Then the device will be flashable and the light will be blue i think.
Then you Put the USB-Cable in, install the driver which is also in the package.
Now you can open burntool.
Device10 should be green.
Now jo goto Settings, and set uboot, kernel,sys-dat, udat
uboot: u-boot.img
linux-kernel:zImage_cui
linux-sys:system.img
linux-udat:userdata.img

Press the FIRST button from the left site to confirm the settings
Now press Start and the device should be starting to flash....
However sometimes the board hangs after flashing and will not start directly dont worry. If everything doesnt help, do a reset.



Links to other Android related stuff


What are the first steps in developing a custom firmware?http://www.slatedroid.com/apad-firmware-development/7091-what-first-steps-developing-custom-firmware.html[How To] Unpack and Repack for Custom Firmwares for Rockchip RK2808/RK2808ahttp://www.androidtablets.net/forum/android-tablet-hacking/439-how-unpack-repack-custom-firmwares-rockchip-rk2808-rk2808a.html[How To] Unpack and Repack for Custom Firmwares for Rockchip RK2808/RK2808ahttp://www.androidtablets.net/forum/android-tablet-hacking/439-how-unpack-repack-custom-firmwares-rockchip-rk2808-rk2808a.htmlHow to Flash Apad IRobot Android Tablet,How to Use Apad Firmware?http://www.thefreelibrary.com/How+to+Flash+Apad+IRobot+Android+Tablet,How+to+Use+Apad+Firmware%3F-a01074128370Read this First, Rooting, YouTube, Firmwarehttp://www.slatedroid.com/orphan-m70003/6979-read-first-firmware-youtube-market-touchscreen-etc.htmlApad buying sites:
How to Update apad/moonse/irobot firmware
Various ROMs and instructions
How to side load apps if market wont work
about the Flytouch X220 Infotm


Zenithink ZT-180



About Installing Android on Windows Phone

How To Install Google Android On A Windows Mobile Phone

How To Install Android 2.1 On Windows Mobile Phones


review on Zenithink Android


Developing for Android


Google App Inventor is a RAD tool developed by Google Labs to build Android application in a very simple and easy way
http://www.codeproject.com/Article.aspx?tag=198374986188234309

 




Android Apps
Top 25 Android apps: The best of the best

Saturday, December 11, 2010

Notes Samsung Wave

Few tips on the Samsung Wave, especially information which are not well documented

A few "How do I do it?" answers, and technical specs
http://mobilereviews.o2.co.uk/devices/device.jsp?deviceId=661&tab=5#q5387
http://thetechjournal.com/electronics/mobile/samsung-s8500-wave-review.xhtml

Links to Samsung, Apps, etc
http://www.samsungapps.com - for Manual and Samsung Kies software
http://www.samsung.com/au/consumer/mobile-phone/mobile-phone/smartphone/GT-S8500BAAXSA/index.idx?pagetype=prd_detail&returnurl=
http://www.samsungmobile.com
http://www.samsungwaveforum.com/samsung-wave-updates/all-firmwares-s8500xx***-download/   - list of firmwares
http://www.samsungwaveforum.com/samsung-wave-updates/flash-tutorial-samsung-s8500/msg3719/#msg3719 - how to flash / upgrade firmware on Samsung Wave
http://www.all-samsungphones.com/latest-official-firmware-update-for-samsung-wave-s8500.html/

Java Apps Repository:
These sites have Java Applications for Smart Phones. Since Samsung Wave have Java compatibility, some Java apps should be able to run, but not all of them. You should check the compatibility of each app that you want to download.
- www.getjar.com

Screen Capture the Samsung Wave
- Press the Menu and Lock Keys simultaneously
- The images will be stored in My Files -> Images

End Applications with Task Manager
- Click and hold on the physical diamond shaped middle Menu button at the bottom.
- Touch the red minus sign on-screen to close the application you choose.

Lock screen settings
- Settings -> General -> Touch - Touch Panel

Silent Mode
- Keypad -> tap and hold # key to mute/unmute

Check how much data has been used
- this refers to the packet data, which is usually the data charge by your service provider.
- go to Menu -> Settings -> Connectivity -> Packet Data Counter


Switch off data packet, data allowance


Browser Open
- Internet icon is missing from some Samsung Wave models.
- To open the browser either
i) Menu -> Vibe Home
ii) Menu -> Smart Search -> Internet

Remove Homescreen
- Touch the Widget icon on the top left.
- When in widget editing mode, rotate phone to landscape
- Then it allows you to remove screens which have no widgets

Edit or Remove Widgets
- Touch the Widget icon on the top left.
- Touch and hold on the widget to be moved or removed, until a yellow border appears
- To remove, drag the widget down.
- To move, drag the widget anywhere on the screen


Contacts Management
There are three (4) places where contacts can be stored: PHONE, SIM, SDCARD, PC
PHONE: This is the memory of the actual phone device. It can sometimes be called DEVICE
SIM: This is the SIM card used by most mobile devices, and is needed by the telephone network to enable the phone to make calls. It can typically store a limited amount of contact phone numbers and SMS / text messages.
SDCARD: This is the additional memory card that can be added to the phone. It can sometimes be called MEMORY.
PC: Store the contacts in a PC, by using the KIES software to transfer the contacts.

Both the SIM and SDCARD can be physically removed from the phone device.
On SIM, contacts can only store names and ONE phone number.
On PHONE, contacts can be stored with many attributes, eg names, multiple phone numbers, email, address, etc. This can be exported as *.vcf or Vcard.

Here are the menu items available for managing Contacts:
- Touch the Contact button at the bottom of the screen.
- When the list of contacts is displayed, touch the image with 3 dots at the bottom middle  "..." of the screen. The options presented are: i) Delete  ii) My profile iii) Copy Contacts iv) Get friends v) Settings
- Touch on "Copy Contacts".
The options presented are: i) Phone to SIM  ii) SIM to Phone
- Go back one level and touch "Settings".
The options presented are: i) Memory in use ii) Order of Display Name iii) Own Numbers iv) Service Numbers.
- Touch "Memory in use".
- Select "View Contacts on" from these options "All", "Phone", "SIM".
This determines if contacts from either phone or SIM or both are displayed.
- KIES. The Samsung Kies software installed on a PC, allows additional options in managing contacts.

Strategies to Backup Contacts:
1. Copy all contacts from PHONE to SIM. The sequence is:
Contacts - ... - Copy Contacts - PHONE to SIM - Select All - Copy
2. Copy all contacts from SIM to PHONE. The sequence is:
Contacts - ... - Copy Contacts -  SIM to PHONE - Select All - Copy
The following strategies involve using Samsung Kies software. Run the Kies on PC. Connect the phone via USB and press Connect within Kies.
3. Copy all contacts from PHONE only to PC in Kies' SPB / CSV / VCF formats. The sequence is:
In Kies, under Connected Device, highlight the phone model (eg GT S8500) - Import/Export tab - Export to PC - Contacts - Export - Choose file to save as Kies' contacts (*.spb), CSV or vCard (*.vcf) format.
4. Sync contacts from PHONE only with Outlook. The sequence is:
In Kies, under Connected Device, highlight the phone model (eg GT S8500) - Sync tab -  Personal Information - Sync Contacts with Outlook (or Google or Yahoo or Windows Contacts) - Apply to both device and Outlook - Outlook Data files to contact -  click Sync
5. Save Contacts from PHONE to PC. The sequence is:
In Kies, under Connected Device - Contacts - Mobile Phone tab - Select contacts to save - Save To PC - Save ALL or Selected contacts - Choose file to save as Kies' contacts (*.spb), CSV or vCard (*.vcf) format.
6. Save Contacts from SIM to PC. The sequence is:
In Kies, under Connected Device - Contacts - SIM tab - Select contacts to save - Save To PC - Save ALL or Selected contacts - Choose file to save as Kies' contacts (*.spb), CSV or vCard (*.vcf) format.


Messages / SMS Management
There is KIES functionality to transfer SMS messages out of the phone.
Here is one way to save or archive SMS/TXT messages from the phone. This method involve saving each message separately as *vmg file in a memory card.
The sequence is:
on the phone - Messages - ... - Backup Text Messages - PHONE to MEMORY.
After this process, all the messages will be saved on the top level directory of the Memory Card.


How to Use Samsung Wave S8500 as Modem for other PC or other Devices to connect to the Internet:
This require that the Samsung Wave has data access through a telecommunications carrier.
This techniques uses Packet Data.
Basically, if you can access the Internet through your Samsung Wave without wifi connection, then you are likely to be using packet data.

Here are the steps to setup the Samsung Wave to enable other devices to have internet access.
Go to Settings - Connectivity - Use Packet Data - turn this on.
Go to Settings - Connectivity - Mobile AP - turn this on.
Still on the Mobile AP screen, go to Settings:
- Name: name of wifi network
- Password: password for network
- Hide my Device: Uncheck
- Tethering:   Check
Now the Samsung Wave is acting like a wireless modem. Other PC or Devices need only to rescan for wifi networks and connect to the name of the wifi network of the Samsung Wave.





Interesting Apps
Here is a list of apps I found interesting on the Samsung Wave. The ones listed without URL links mean they can be found on the Samsung Apps website. 
   Educational
Teach Numbers - good for teaching children
Write Hangul - learn Korean writing
Let's Learn Korean
   References

Badapedia - seems like a cut down version of Wikipedia
Dictionary.com
   Utilities
EvMemo Fit - Memo that sits on top of phone as widget.
Power Calculator - has Scientific, Computer and Statistics modes
MultiNote - can make notes in text, image, audio, video formats
Scientific Calculator
ToolBox - Battery, Spirit Level, Metal Detector
Type N Walk - allow you to type SMS while using the phone camera to show what is in front of the screen.
Mirror - to look at yourself on the phone
Unit Converter
    Bibles
KJV Complete Mobile Bible by Cellbook. 
from the phone: m.getjar.com, go to Quick Download and type the code 19028.
website: http://www.getjar.com/mobile/19028/kjv-complete-mobile-bible-by-cellbook-for-samsung-gt-s8500-wave/
Go Bible - http://gobible.jolon.org/ - King James Version
Olive Tree - http://www.olivetree.com/ - in general, has very good bible reader application but its Java version DOES NOT seem to work well with the Samsung Wave.





Ebook Readers
I've tried quite a few eBook Readers and here are the ones to get and NOT to get.
    Native Wave / Bada
LacViet Reader - Do Not Get - Big app, about 14MB. Installed OK. When opening and EPUB format ebook, the program simply crashed.
    Java Apps - requires MIDP 2.0
Anyview - Do Not Get - Installed OK but cannot get it to work.
ReadManiac - Do Not Get - Cannot seem to run when opening the program.
Albite Reader - Excellent - Seems to work quite well and small size.

Folder Structure

from Kies View:
- Contacts
- Music
- Photos
- Videos
- Podcast

from Windows Explorer View:
- Graphics
- Images
- Music
- Others - your own files
- Playlists
- Sounds
    - Alert tones
    - Music
    - Ringtones
- Themes
- Videos



Thursday, December 09, 2010

Cool Web Games

This post is not too technical but where else can I put the links to these cool games. Feel free to put comments if you know of more cool games. The games in this list are Web Games that you can play on your browser. The current list are:

- Ninja Saga: http://www.ninjasaga.com/index.php
- Pet Society: http://www.petsociety.com/
- CityVille: http://www.facebook.com/apps/application.php?id=291549705119&v=app_7146470109
- Clock Blocks: http://80dgames.com/clockblocks/
- Sleep is Death: http://sleepisdeath.net/

Saturday, November 27, 2010

How to avoid spam when giving out your email address

This article covers specifically when you need to / have to give out an email, but you want to maintain some sort of control over the spam that you might get. Typically your situation may be:
1) You register for some service /  forum / website / free software / etc that require you to give out a valid email.
2) The thing that you register for may need to send you the email for confirmation. This means you need to give them your email which you can check.
3) You are concerned that they will email you with junk, spam, malicious email at a later date.
4) You think that they have low security and that they do not keep your email safely such that your email address could end up to some malicious entities.
5) But you still need to register with them and need to give them your email anyway.

     ..... then READ ON ........

Before describing the steps on how to give out your email, yet maintain a level of control, here is a list of things that this article is not covering:
1) your email posted somewhere on the web and was discovered by web spiders / crawlers.
2) using various software to protect against spam.


     ..... Now for the Solutions ......
Here are 3 possible solutions to give your email to an untrustworthy company or person and how to deal with it later.


1. Create an email account solely for the purpose of potential spam mail. This is the email you give out to those that you do not trust will keep your email address safe and with respect. Over time, the list of receivers of this email may be so large that it can still be hard to maintain.

2. Obtain a third party service to manage your spam mail. One such service is pckingsford. To contact them, please email them with user name "help" and the domain is "pckingsford" dot "com". This is a free service but you need to arrange for them to handle your email.
For example,
  1. You register for something with company ABC, and they need to get your email.
  2. ABC tells you that they will send you an email, which you have to reply to confirm your registration.
  3. You contact Pckingsford and explain that you need to wait for an email from ABC and click on something in that email.
  4. PCKingsford will give you and email to use. When ABC sends the email to PCKingsford, it will then click on that email on your behalf.
  5. All future emails send by ABC to your PCKingsford email will be ignored until the next time that you notify them.

3. Make use of a feature in Google Gmail that lets you create multiple virtual gmail address.
For example, if your email is me@gmail.com, then when you register with company ABC, you can give them your email as me+ABC@gmail.com. Anyone sending an email to this address will be directed to your me@gmail.com inbox. The way this trick works is that although spam and virus may be send to me@gmail.com, those email will be listed as being from me+ABC@gmail.com. You can then use Google Gmail's filter to catch these emails in the future.

To use Gmail filter,
- go to the top right corner of gmail and press Settings.
- on the horizontal bar slightly below the top, click on Filters
- on the Filters, click the link "create a new filter"
- when creating the new filter, in the To field only, type me+ABC@gmail.com. Leave the other fields blank. Click Next Step.

- Under the Choose Action section, you can decide how you want to treat the emails send to you by ABC in the future. For example, you can delete it or apply a lable to it.

- Finally click on the Create Filter. From then on, me+ABC@gmail.com will be treated depending on the action chosen above.

Thursday, November 18, 2010

Matlab Function in Fortran - perms - permutation

Below is the Fortran implementation of the perms algorithm found in Matlab. It creates a matrix whose rows consist of all possible permutations of the n elements of vector vecIn.

There are many useful utility functions in Matlab and occassionally an important but rare (difficult to find source in the internet) algorithm such as this permutation algorithm. Hopefully there will be more Fortran version of Matlab utility functions appearing here in the future.

The one listed below is unpolished and unoptimized and not suitable for large inputs. It is a very basic implementation taken directly from the mathematical definition. It is also tested only for a small number of cases. Corrections, suggestions and comments are welcomed.




!/*
! * perms - All Possible permutations
! * 
! *     (C)  Copyright 2010 xTechNotes.blogspot.com
! * 
! *   This program is free software: you can redistribute it and/or modify
! *   it under the terms of the GNU General Public License as published by
! *   the Free Software Foundation, either version 3 of the License, or
! *   (at your option) any later version.
! *
! *    This program is distributed in the hope that it will be useful,
! *    but WITHOUT ANY WARRANTY; without even the implied warranty of
! *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
! *    GNU General Public License for more details.
! *
! *    You should have received a copy of the GNU General Public License
! *    along with this program.  If not, see .
! */ 


    RECURSIVE subroutine perms(n, nfact, vecIn, vecOut)
        IMPLICIT NONE 
        INTEGER, INTENT(IN) :: n                ! number of elements of original vector
        INTEGER, INTENT(IN) :: nfact            ! Factorial(n)
        REAL, INTENT(IN) :: vecIn(n)            ! original vector to be permuted
        REAL, INTENT(OUT):: vecOut(nfact, n)    ! Permutations of original vector


        ! local variables         
        real :: vecInTmp(n)
        integer :: ii , mfact
        real :: dtmp
        
        vecOut = 0.0
        if (n .le. 0) then 
            return
        elseif ( n .eq. 1 ) then            
            vecOut(1,1) = vecIn(1)
        elseif ( n .eq. 2 ) then
            vecOut(1, :) = vecIn(:)
            vecOut(2, :) = (/vecIn(2), vecIn(1)/)
        else        
            ! ii = 1
            call factorial(n-1, mfact)
            vecOut(1:mfact, 1) = vecIn(1)
            call perms(n-1, mfact,  vecIn(2:n), vecOut(1:mfact, 2:n))
            
            do ii = 2, n
                vecInTmp = VecIn
                vecInTmp(1) = VecIn(ii)
                vecInTmp(ii) = VecIn(1)
                vecOut((ii-1)*mfact+1 : ii*mfact, 1) = vecInTmp(1)                
                call perms(n-1, mfact, vecInTmp(2:n), vecOut( (ii-1)*mfact+1 : ii*mfact, 2:n))
            enddo 
        
        endif    
        
    end subroutine perms

Friday, November 12, 2010

Matlab Function in Fortran - conv2 - Convolution in 2D

Below is the Fortran implementation of the Convolution 2D algorithm, or conv2 as found in Matlab. There are many useful utility functions in Matlab and occassionally an important but rare (difficult to find source in the internet) algorithm such as this convolution algorithm. Hopefully there will be more Fortran version of Matlab utility functions appearing here in the future.

The one listed below is unpolished and unoptimized and not suitable for large inputs. It is a very basic implementation taken directly from the mathematical definition of discrete convolution in 2D. It is also tested only for a small number of cases. Corrections, suggestions and comments are welcomed.




!/*
! * CONV2 - Convolution in 2D
! *
! *     (C)  Copyright 2010 xTechNotes.blogspot.com
! *
! *   This program is free software: you can redistribute it and/or modify
! *   it under the terms of the GNU General Public License as published by
! *   the Free Software Foundation, either version 3 of the License, or
! *   (at your option) any later version.
! *
! *    This program is distributed in the hope that it will be useful,
! *    but WITHOUT ANY WARRANTY; without even the implied warranty of
! *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
! *    GNU General Public License for more details.
! *
! *    You should have received a copy of the GNU General Public License
! *    along with this program.  If not, see .
! */  
  
    subroutine conv2(nXi, nXj, nHi, nHj, nYi, nYj, X, H, Y)
        INTEGER, INTENT(IN) :: nXi, nXj, nHi, nHj           ! Dimensions of Input, Kernel
        INTEGER, INTENT(IN) :: nYi, nYj                     ! Dimensions of Output - MUST BE nXi+nHi-1, nXj+nHj-1
        REAL, INTENT(IN) :: X(0:nXi-1, 0:nXj-1)   ! Input
        REAL, INTENT(IN) :: H(0:nHi-1, 0:nHj-1)   ! Kernel
        REAL, INTENT(OUT) :: Y(0:nYi-1, 0:nYj-1)  ! Output
        integer :: im, in, ii, ij, ip, iq
      
        Y = 0.0d0
        if( nYi .ne. nXi+nHi-1  .or. nYj .ne. nXj+nHj-1 ) RETURN
      
        do in = 0, nYj-1
            do im = 0, nYi-1
                do ij = 0, nXj-1
                    do ii = 0, nXi-1
                    ip = im - ii
                    iq = in - ij
                    if (ip .ge. 0 .and. ip .le. nHi-1 .and. iq .ge. 0 .and. iq .le. nHj-1) then
                        Y(im, in) = Y(im, in) + X(ii, ij) * H(ip, iq)
                    endif                      
                    enddo
                enddo
            enddo
        enddo
        return
    end subroutine conv2

Tuesday, November 02, 2010

How to Improve Video Capture Quality

How to Improve Video Capture Quality
======================================
This step may require additional filters for VirtualDub. See the previous section for filters available for VirtualDub.

White Balance Filter - Jim Leonard
- to correct for white balance problems.
- Example: when the video in general looks orange, blue or too dark.
- may occur when white balance is on automatic mode, so different types of light having different temperatures causes this problem
- this filter can also be used to adjust Hue, Saturation, Intensity, Brightness, Contrast

Deinterlacing filter
- used to remove the effect of interlacing, ie. when not all frames are processed.
- fast motion causes edges of objects to look jagged.
- the filter will also make the video look far sharper

Sharpening Filter
- used when video seem to have soft edges or lack detail.

Dynamic Noise Reduction
- used when video is grainy

Chroma Noise Reduction Filter
- used when there is chroma noise; ie where rainbow effects shimmer across the screen.

VHS filter - flaXen
- used when video has timing issues and skips a bit
- try using the Stabilize section of this filter only

For instructions on Video Capture using VirtualDub, see:
http://xtechnotes.blogspot.com/2007/07/notesvideocapture.html



VirtualDub filters plugins
============================
Filter pack from Dee Mon:
http://www.infognition.com/VDFilterPack/
Jim Leonard's White Balance filter
http://neuron2.net/whitebalance/whitebalance.html
flaXen filter
http://neuron2.net/flaxen/flaxen.html

To use this filter, install Virtual Dub, then install these plugins into the VirtualDub's plugins folder.


VirtualDub MPEG2 codecs
========================
To use the Virtual Dub and encode with the MPEG2, the following codes need to be installed.
Panasonic VfW DV codec
http://www.free-codecs.com/download/panasonic_dv_codec.htm 
 Adaptec VfW DV codec
http://www.free-codecs.com/download/adaptec_dvsoft_codec.htm 

How to find hidden Web Sites, Pages

This is the beginning of a collection of resource about the techniques of searching the internet for websites that are not well known and do not come up on top searches. These information are not hidden deliberately but are just not well publicized or optimized to be found from regular search engines.

Some of the links are:
How To Find Hidden Web Pages
Uncovering the Hidden Web part 1

Thursday, October 28, 2010

How to Convert or Rip Audio CD into AAC format

This is a simple process if you know how and have got the right tools.

Objective: To convert CD Audio into the AAC format.

Requirements:
These are needed for extracting and converting into AAC audio format.

1. Audio CD extracting software

2. AAC encoding codec

Why AAC?
The real practical reason for my case in choosing AAC was simply because my Nokia phone accepts AAC format. I understand AAC is also used by iPhone and other Apple products. In addition, although MP3 is widely used, there is always a cloud of uncertainty over the licence of MP3 encoding algorithms. This is one reason it is difficult to get free MP3 encoders. Also AAC is newer and is supposed to be a bit better in quality than MP3 formats. Like MP3, AAC is also a lossy format.

Specific Tools Download:
The above requirement are satisfied with the tools listed here. (Please note that this guide shows you the quick and simple way to save your Audio CD into AAC format. They are not the best tool, they are not the only tool, they are simply the tools I found and they work)

1. CD Ex
http://cdexos.sourceforge.net/?q=download
This is a simple yet powerful CD extracting software. It can support extraction into various format such as MP3, OGG, VQF, AAC and others. A few of the format such as AAC require you to obtain the codecs by yourself - see next step.

2. PsyTEL MPEG-4 AAC Encoder
http://www.afterdawn.com/software/audio_video/convert_audio/psytel_aac_enc.cfm
Alternative site:
http://cid-3157d7aac580c23e.office.live.com/self.aspx/Public/aacenc%5E_v215.zip

There is only a few AAC encoders available and this (PsyTEL) seems to work OK. The other AAC encoder is from Nero.
Note that this encoder allow the audio extracting software such as CDEx to encode the audio into the AAC format. If you want to play it back, then your software player (eg WinAMP) may need to add a plugin AAC decoder (Not covered in this article)


Usage:
1. Install the CDEx.
2. Unzip the AAC encoder and put somewhere in your local drive.
3. Run the CDEx program.
4. Go to Options -> Settings.
5. Go to the Encoder tab.
6. Select the "Psytel AAC Encoder" from the dropdown list called Encoder.
7. In the same dialog box, in the Encoder Path text field, choose the correct path where the AAC encoder was unpacked to in Step 2. Click OK.
8. Wait for the audio files to appear on CDEx.
9. Go to the Convert menu.
10. Select "Extract CD track(s) to a Compressed Audio File"

Friday, October 15, 2010

How to Cook ROMs

Currently this page is a collection of links on how to cook ROMs.

What is cooking ROMs about? It is for people wanting to replace their Operating Systems (OS) on portable devices (mobile phones, PDA, tablets, iPads) with their own customized version with their own choice of built in applications.

Why is this page just links? Because I am in the process of learning and researching on how to actually cook some ROMs. So here is a record of links which I think provide good information. When I have successfully cook some ROMs and have something to add, I may write my own guide.

Mobile Phone / PDAs
http://forum.xda-developers.com/showthread.php?t=313920
http://forum.xda-developers.com/showthread.php?t=691789
http://forum.xda-developers.com/showthread.php?t=628948
http://www.1800pocketpc.com/2010/09/06/rom-cooking-tutorial-for-windows-mobile-from-techparaiso-tutorial.html
http://www.1800pocketpc.com/2010/06/02/want-to-know-how-to-cook-a-rom-like-the-pros-new-step-by-step-guide-in-the-making.html


Tablets
http://www.androidtablets.net/forum/gome-flytouch/1655-how-install-rom-your-tablet.html
http://androidforums.com/tablets-mids/90106-warning-anyone-interested-eken-apad-100-tablets.html

Thursday, August 05, 2010

Online Scan - Browsers

This is a list of site that allow you to determine how secure your browser is. The security focus may be different for each of the online browser scan sites below but they reveal information of the browser that you are using. So if you are not sure how secure is your browser, try some of these tools to check the security of your browser. Most of the popular browsers should be able to use the online browser scanning tools below.

BrowserSpy.dk - "When you surf around the internet your browser leaves behind a trail of digital footprints. Websites can use these footprints to check your system. BrowserSpy.dk is a service where you can check just what information it's possible to gather from your system, just by visiting a website."


browserscope - "Browserscope is a community-driven project for profiling web browsers. The goals are to foster innovation by tracking browser functionality and to be a resource for web developers.
Gathering test results from users "in the wild" is the most important and useful feature of Browserscope - and you can participate!"


pcflank - "checks whether your browser exposes any personal information, such as sites you have visited, the region you live in, who your Internet Service Provider is, etc. After the test, you will be given specific recommendations for changes to your browser settings."

browsercheck - "Qualys BrowserCheck will perform a security analysis of your browser and its plugins to identify any security issues. Install the plugin to get started."

scanit - "The test will try to crash your browser! Close all other browser windows before starting and bookmark this page. If your browser crashes during the test, restart it and return to this page. It will show which vulnerability crashed your browser and offer you to continue the test or view the results. "

Friday, July 30, 2010

Online Scan - PC tools

This page is a collection of links to websites that provide various online scanning services. They range from scanning your computer speed, to online colour calibration for your monitor, online scanning of your IP address and so on.

A few online scanning tools categories have extensive links and they are available separately at the following:
Online Scan - Websites
Online Scan - AntiVirus

Scan your internet connection speed. This sites help you determine your ADSL speed or broadband speed. They are useful if you suspect some problems with your internet connection, or suspect you are not provided with the appropriate speed advertised by your ISP.
SpeedTest
Oz Broadband Speed Test - originally designed for Australian tests
Internet Speed Test - from AuditMyPC.com

LCD monitor calibration
http://www.lagom.nl/lcd-test/

Internet Related
https://whatismyipaddress.com/  - Find IP address
https://lookup.icann.org/ - Domain name registration name lookup
https://haveibeenpwned.com/ - Enter your email or mobile number to check if you've been compromised.


What's My IP
An incredible amount of tools can be found on this webpage including the following:
More Info About You
Port Scanners
Traceroute
HTTP Compression
Ping
WHOIS & DNS
Website Rankings
IP Location
HTTP Headers

    Text Related Tools
HTML Characters
String & Timestamps
Hash Generator
Hash Lookup
Text Case Changer
Regexp Tester
String Encoding
Password Generator
Upside-Down Text
Text to Code Ratio

     Other Tools
Library
MAC Address Lookup
Random Websites
Statistical Accuracy
WhatsMyIP PixelAds

Friday, July 16, 2010

Windows Command Prompt

To run the Command Prompt in Windows XP, click START button and select the RUN option.




In the Run dialog above, type "cmd" and click OK. Then the Command Prompt window / terminal will open.


A summary of MS DOS commands can be found here:
http://www.commandpromptcommands.com/  - a few basic commands
http://commandwindows.com/vista-commands.htm - commands for Windows Vista.



Thursday, June 24, 2010

Mobile Applications for Apple, Android, Symbian, Windows

The table below is a list of FREE mobile applications for these platforms:
And = Android
App = Apple
Sym = Symbian
Win = Windows

Please let me know if you know of other good free applications.

In the table, the first 4 columns show which platform the application is for. The mobile application names are given and a brief description for the mobile applications is given unless it is a well know application.




And App Sym Win Mobile App


x 0 0 0 3G Watchdog
x 0 0 0 Picsay - picture editor
x 0 0 0 Backgrounds
x 0 0 0 BBC News
x 0 0 0 Twidroid - twitter app
x 0 0 0 Dolphin Browser
x 0 0 0 Jewels  - game
x 0 0 0 Task Manager
x 0 0 0 Sweetdreams - organise email, phone calls, etc
x 0 0 0 Barcode Scanner
x 0 0 0 Quickpedia
x 0 0 0 Uber Keyboard
x 0 0 0 Locale - using GPS
x 0 0 0 Plink Art - camera for paintings
x 0 0 0 Double Twist - Multimedia player for photo, music, video

x x x x Rebtel - international calling
x x x x Trapster - GPS for speed camera

x x x 0 Shazam - identify songs

x x x 0 Facebook
x x x 0 Tunewiki - media app
x x 0 0 ISP Usage

x x 0 0 Google
x x 0 0 Last.FM
x x 0 0 Photoshop.com Mobile
x x 0 0 Bigoven - cooking recipes
x x 0 0 Around Me - GPS to locate ATMs, shops, etc
x x 0 x Evernote - note taking
x x 0 x Aloqa - using GPS
x 0 x x Wavesecure - security for smartphone




0 x 0 0 Echofon for Twitter
0 x 0 0 Mobyko - transfer phone contacts
0 x 0 0 Flickr - for photos
0 x 0 0 Logitech Touch Mouse
0 x 0 0 Audiboo - audio blogging
0 x 0 0 Units - conversion
0 x 0 0 Metro - public transport
0 x 0 0 Blurb - make phone to banner
0 x 0 0 Ski and Snow Report

0 x 0 0 TVGuide
0 x 0 0 ABC - news service
0 x 0 0 My First Words Lite - educational
0 x 0 0 Wordweb
0 x 0 0 Kindle for Iphone
0 x 0 0 Ebay
0 x 0 0 Domain - real estate search

0 x 0 0 Seadragon - artwork
0 x 0 0 Simplify Music 2 - stream music PC-iPhone
0 x 0 0 Ozweather
0 x 0 0 Currency
0 x 0 0 Filmtrailer
0 x 0 0 Time Magazine
0 x 0 0 Tripit - travel itineraries to iPhone
0 x 0 0 Tip and Split - calculates tips at restaurant
0 x 0 0 Lasoo - shopping app
0 x 0 0 Paypal
0 x 0 0 Gorillacam - camear app
0 x 0 0 Epicurious - cooking recipes


0 0 x 0 Ovi Maps 3
0 x x 0 Fring - phone and video calls via wifi

0 0 x x Opera Mobile browser
0 x x x Skype
0 0 0 x Live Mesh - file synchronisation


Android Apps
Dolphin Browser HD
Amazon Kindle
Google Sky Map
Google Maps
Google Translate
YouTube
Instant Heart Rate
One Note - with access to cloud storage via SkyDrive
http://windowsteamblog.com/windows_live/b/windowslive/archive/2012/02/07/connect-your-android-device-to-skydrive-with-onenote-and-other-apps.aspx

Navigation
How to make use of navigation from FREE apps.
GPS - needed to locate where the device is. Do not need WiFi or internet
Maps - Needed to show the map of where you are and where to go. Google Maps have the ability to cache maps and can be useful later when there is no internet connection.
Navigation - this software calculates where you are to where you want to go.

This site explains the requirements for navigation apps in much greater details.
http://productforums.google.com/forum/#!topic/maps/rkSBMoJD14s

Other navigations and map apps are:
Navit
Route 66 Maps and Navigation,
MapsWithMe

Adobe Flash
Apple does not support Adobe flash on its devices.
The latest Android JellyBean is also dropping its support for Flash.
But it may yet be possible to install flash by yourself. This website seems to have a step to step guide on installing flash for Android devices.
http://www.itpro.co.uk/641869/installing-adobe-flash-on-android-jelly-bean-devices