[General Topics] Mxlplyk:
Hi there!

Does anyone here uses the GSmart i120 from Gigabyte?

If so, I've got alot of questions about it. :o

I'm so used to using a phone with a numeric keypad, Like Nokia to compose SMS using one hand.

Now that I have this GSmart i120, I thought it works the same as a Nokia when typing SMS using the keypad..But I was wrong.

It has this input thing called "Smart Keypad" which is not so Smart as I find it really dumb and stupid.

It lets you type in the text or characters using the keypad alright, but it has this lag or wait time that is really slow that you have to wait maybe 1.5 seconds just to be able to type-in the next character. and if you press another key, then it will type-in the letter or character of that key.

I've found this CAB file for the Phone Pad from another PPC-Phone device (i forgot where it was extracted from) and it sort of works like a Nokia keypad when typing SMS. but it uses the touch-screen LCD. what I'd like to do is maybe modify that CAB file so that it will instead MAP the numeric keypad of my device.

So, my question is can anyone help me in finding a solution to this?

I Have here the code to MAP the hardware keypad, but i don't know how to do it and integrate it with the Phone Pad.

Paste the following code into a module, and call in in the form_load as follows:-

Dim messageWindow As Hwbuttons.hwMessageWindow

Me.messageWindow = New Hwbuttons.hwMessageWindow(Me)

RegisterHKeys.RegisterRecordKey(Me.messageWindow.H wnd)

Imports Microsoft.WindowsCE.Forms

Imports System.Runtime.InteropServices

Public Enum KeyModifiers As Integer

None = 0

Alt = 1

Control = 2

Shift = 4

Windows = 8

Modkeyup = &H1000

End Enum

Public Enum KeysHardware As Integer

Hardware1 = 193

Hardware2 = 194

Hardware3 = 195

Hardware4 = 196

Hardware5 = 202

End Enum

Public Module RegisterHKeys

<DllImport("coredll.dll", Entrypoint:="RegisterHotKey", setLastError:=True)> _

Public Function RegisterHotKey( _

ByVal hWnd As IntPtr, _

ByVal id As Integer, _

ByVal Modifiers As KeyModifiers, _

ByVal key As Integer) As Boolean

End Function

<DllImport("coredll.dll")> _

Private Function UnregisterFunc1( _

ByVal modifiers As KeyModifiers, _

ByVal keyID As Integer) As Boolean

End Function

Public Sub RegisterRecordKey(ByVal hWnd As IntPtr)

UnregisterFunc1(KeyModifiers.Windows, CType(KeysHardware.Hardware1, Integer))

RegisterHotKey(hWnd, CType(KeysHardware.Hardware1, Integer), KeyModifiers.Windows, CType(KeysHardware.Hardware1, Integer))

UnregisterFunc1(KeyModifiers.Windows, CType(KeysHardware.Hardware2, Integer))

RegisterHotKey(hWnd, CType(KeysHardware.Hardware2, Integer), KeyModifiers.Windows, CType(KeysHardware.Hardware2, Integer))

UnregisterFunc1(KeyModifiers.Windows, CType(KeysHardware.Hardware3, Integer))

RegisterHotKey(hWnd, CType(KeysHardware.Hardware3, Integer), KeyModifiers.Windows, CType(KeysHardware.Hardware3, Integer))

UnregisterFunc1(KeyModifiers.Windows, CType(KeysHardware.Hardware4, Integer))

RegisterHotKey(hWnd, CType(KeysHardware.Hardware4, Integer), KeyModifiers.Windows, CType(KeysHardware.Hardware4, Integer))

UnregisterFunc1(KeyModifiers.Windows, CType(KeysHardware.Hardware5, Integer))

RegisterHotKey(hWnd, CType(KeysHardware.Hardware5, Integer), KeyModifiers.Windows, CType(KeysHardware.Hardware5, Integer))

End Sub

Public Class Hwbuttons

Inherits System.Windows.Forms.Form

Public Shared messageWindow As hwMessageWindow

Public Class hwMessageWindow

Inherits messageWindow

Public Const WM_HOTKEY = &H312

Dim example As frmComms

Public Sub New(ByVal example As frmComms)

Me.example = example

End Sub

Protected Overrides Sub WndProc(ByRef msg As Message)

Select Case msg.Msg

Case WM_HOTKEY

'ButtonPressed(msg.WParam.ToInt32())

Return

End Select

MyBase.WndProc(msg)

End Sub

Public Sub ButtonPressed(ByVal button As Integer)

Select Case button

Case KeysHardware.Hardware1

MessageBox.Show("Button 1 pressed!")

Exit Sub

Case KeysHardware.Hardware2

MessageBox.Show("Button 2 pressed!")

Exit Sub

Case KeysHardware.Hardware3

MessageBox.Show("Button 3 pressed!")

Exit Sub

Case KeysHardware.Hardware4

MessageBox.Show("Button 4 pressed!")

Exit Sub

Case KeysHardware.Hardware5

MessageBox.Show("Button 5 pressed!")

Exit Sub

End Select

End Sub

End Class

End Class

End Module

Also, the phone has a TV-recording function, but it records only in 3GP instead of the more decent Mpeg format. Can anyone also help me out with this? I'd sure appreciate it! Thanks. :D

And also, I think the device doesn't support or doesn't have the AVRCP Bluetooth profile, is there a Hack or a CAB file that I can download so I can have AVRCP support on the GSmart i120?