Re: help~After using the MokoMakefile to build the qemu, the qemu-neo1973 restart at once when it boot the kernel

2008-11-24 Thread Oscar
I'm having the same problem, also with ubuntu 8.04.
Saludoss



On Tue, Nov 25, 2008 at 3:59 AM, lostdays <[EMAIL PROTECTED]> wrote:
>
> the image i used are "testing-om-gta01-20081124.uImage.bin",
> "testing-om-gta01-20081124.rootfs.jffs2"
> "gta01bv4-u-boot.bin".
> I followed the Wiki.openmoko.org, firstly installed required software, then
> download the mokomakefile, "make qemu","make run-qemu". the qemu lauched
> with the menu. But when I choose the boot menu, it failed without any error
> message out when loading the kernel and return the boot menu. Any idea for
> it?
> My OS version is ubuntu 8.04.
> Thanks
>




-- 
Oscar Morante
GPG: CA7417FF

"La nostalgia ya no es lo que era" - Anónimo
___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


Re: Bounties?

2008-12-03 Thread Oscar
I haven't tested it but maybe this works for you:
http://www.handhelds.org/project/rosetta/

Saludos


On Wed, Dec 3, 2008 at 11:05 AM, arne anka <[EMAIL PROTECTED]> wrote:
>>> One thing I'd be prepared to pay for is some sort of handwriting
>>> recognition or grafitti-style input.
>>
>> That's already in QT Extended 4.4.2.
>
> not everybody uses qtopia.
> and i certainly am willing to spend some money if handwriting recognition
> would be available for eg debian, like GraffitiAnywhere does: using the
> whole screen to write, and simple to learn.
>
> ___
> Openmoko community mailing list
> community@lists.openmoko.org
> http://lists.openmoko.org/mailman/listinfo/community
>



-- 
Oscar Morante
GPG: CA7417FF

"La nostalgia ya no es lo que era" - Anónimo
___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


qtopia, earphone and mediaplayer

2008-09-14 Thread oscar
Hello everyone.

Trying qtopia 4.3.3, I noticed that if I plug in the headphones while
listening to a song, the sound is played through the FR's loudspeaker
at the same time as coming through the headphones.  If I disconnect
the headphones, the loudspeaker deactivates.


Doing a hexdump of /etc/input/events0, I see the following:

(Connecting the headphones)

[EMAIL PROTECTED]:~# hexdump -C /dev/input/event0

  99 67 cc 48 62 69 0a 00  05 00 02 00 01 00 00 00
0010  99 67 cc 48 b2 69 0a 00  00 00 00 00 00 00 00 00

(Disconnecting the headphones)

[EMAIL PROTECTED]:~# hexdump -C /dev/input/event0

  da 67 cc 48 3b 64 05 00  05 00 02 00 00 00 00 00
0010  da 67 cc 48 84 64 05 00  00 00 00 00 00 00 00 00

As you can see, at position 0x0c the value changes from 1 (if
connected) to 0 (if disconnected) - so that seems good.  Therefore I
think this problem must be something in the media player application.

Any ideas about this?

Thanks.
Oscar.



___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


qtopia, earphone and mediaplayer

2008-09-14 Thread Oscar Casamitjana
ëžv~Ë­­ªvóß7ïnuß^5÷O4ÓHola a todos,probando el qtopia, me he dado cuenta de que si conecto
los auriculares mientras está sonando una canción se activa
el altavoz del freerunner a la vez que se oye por los auriculares, pero si
los desconecto, se desactiva el altavoz.He echado un vistazo
al driver /etc/input/events0 y obtengo lo siguiente:**
Conectando los auriculares ***[EMAIL PROTECTED]:~# hexdump -C
/dev/input/event0   99 67 cc 48 62 69 0a
00  05 00 02 00 01 00 00 00  |.g.Hbi..|0010  99 67 cc 48 b2 69 0a 00  00 00 00 00 00 00 00
00  |.g.H.i..|*** Desconectando los auriculares
***[EMAIL PROTECTED]:~# hexdump -C /dev/input/event0   da 67 cc 48 3b 64 05 00  05 00 02 00 00 00 00
00  |.g.H;d..|0010  da 67 cc 48 84 64 05
00  00 00 00 00 00 00 00 00  |.g.H.d..|Como
podeis observar, en la posicion 0x0c cambia el valor, si está
conectado es 1 si está desconectado es 0, por lo que parece
está bien.Por lo visto debe ser algo de la apliación
mediaplayer.¿Sabeis algo de esto?Gracias.Oscar.Hola a todos,probando el qtopia, me he dado cuenta de que si conecto
los auriculares mientras está sonando una canción se activa
el altavoz del freerunner a la vez que se oye por los auriculares, pero si
los desconecto, se desactiva el altavoz.He echado un vistazo
al driver /etc/input/events0 y obtengo lo siguiente:**
Conectando los auriculares ***[EMAIL PROTECTED]:~# hexdump -C
/dev/input/event0   99 67 cc 48 62 69 0a
00  05 00 02 00 01 00 00 00  |.g.Hbi..|0010  99 67 cc 48 b2 69 0a 00  00 00 00 00 00 00 00
00  |.g.H.i..|*** Desconectando los auriculares
***[EMAIL PROTECTED]:~# hexdump -C /dev/input/event0   da 67 cc 48 3b 64 05 00  05 00 02 00 00 00 00
00  |.g.H;d..|0010  da 67 cc 48 84 64 05
00  00 00 00 00 00 00 00 00  |.g.H.d..|Como
podeis observar, en la posicion 0x0c cambia el valor, si está
conectado es 1 si está desconectado es 0, por lo que parece
está bien.Por lo visto debe ser algo de la apliación
mediaplayer.¿Sabeis algo de esto?Gracias.Oscar.___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


Re: qtopia, earphone and mediaplayer

2008-09-14 Thread Oscar Casamitjana



Uooppsss!!

Sorry about this, I thought I was sending the
message to the Spanish list!!
Too many subscriptions in my mailbox
:(

so thanks for the translation!!

Oscar.

> would you please post in the commonly used language of this
list?
>
___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


Re: qtopia, earphone and mediaplayer

2008-09-14 Thread Oscar Casamitjana


Hello everyone.

Trying qtopia 4.3.3, I noticed that if I
plug in the headphones while
listening to a song, the sound is played
through the FR's loudspeaker
at the same time as coming through the
headphones.  If I disconnect
the headphones, the loudspeaker
deactivates.

Doing a hexdump of /etc/input/events0, I see the
following:

(Connecting the headphones)

[EMAIL PROTECTED]:~# hexdump -C /dev/input/event0

  99 67 cc 48 62 69 0a 00  05 00 02
00 01 00 00 00 |.g.Hbi..|
> 0010  99 67 cc 48 b2 69 0a 00  00 00 00
00 00 00 00 00
>
|.g.H.i..|
>
> *** Desconectando los auriculares
***

(Disconnecting the headphones)

> [EMAIL PROTECTED]:~# hexdump -C
/dev/input/event0
>
>   da 67 cc 48 3b 64 05 00  05 00 02 00 00 00
00 00
> |.g.H;d..|
> 0010  da 67 cc 48 84 64 05 00  00 00 00
00 00 00 00 00
>
|.g.H.d..|
>
> Como podeis observar, en la posicion 0x0c
cambia el valor, si est� conectado
> es 1 si est� desconectado es 0, por lo que
parece est� bien.
> Por lo
visto debe ser algo de la apliaci�n mediaplayer.

As you can see, at position 0x0c the value changes from 1 (if
connected) to 0 (if disconnected) - so that seems good.  Therefore I
think this problem must be something in the media player application.

> �Sabeis algo de esto?

Any ideas about this?

>
Gracias.
> Oscar.

___
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community


New rotate version

2008-10-13 Thread Oscar Casamitjana
Ón7~Ë­­ª{ó½:óŽ¶ÛmõÓ_4Ó

rotate
Description: Binary data
/* -*-  tab-width:4; c-basic-offset:4  -*- 
 * rotate.c -- determine Freerunner orientation.
 * Author   -- Chris Ball <[EMAIL PROTECTED]>
 *
 * This file 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 2, or (at your option) any
 * later version.
 */

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#define EVENT_PATH"/dev/input/event3"
#define EVENT_LEN 5
#define ORIENTATION_NORMAL0
#define ORIENTATION_LEFT  1
#define ORIENTATION_RIGHT 2
#define ORIENTATION_INVERTED  3


static Display  *display;
static Window   rootWindow;

static char evenBuffer[EVENT_LEN];
static int tail,head;


int timeval_subtract (struct timeval *result, struct timeval *x, struct timeval *y)
{
   if (x->tv_usec < y->tv_usec) {
  int nsec = (y->tv_usec - x->tv_usec) / 100 + 1;
  y->tv_usec -= 100 * nsec;
  y->tv_sec += nsec;
   }
   if (x->tv_usec - y->tv_usec > 100) {
  int nsec = (x->tv_usec - y->tv_usec) / 100;
  y->tv_usec += 100 * nsec;
  y->tv_sec -= nsec;
   }

   result->tv_sec = x->tv_sec - y->tv_sec;
   result->tv_usec = x->tv_usec - y->tv_usec;

   return x->tv_sec < y->tv_sec;
}


void *pEvenThrd( void *ptr )
{
   FILE *eventfp = (FILE *)ptr;
   int state;
   int curline;
   unsigned short buffer[8 * 7];
   int i;
   unsigned short x=0;
   unsigned short y=0;
   unsigned short z=0;
   int oldrotation = -1;
   
/* The raw data looks like:
   *  
   * portrait
   * 2ca3 48ab 43bf 000d     # start of packet
   * 2ca3 48ab 687b 000d 0002  005a  # X
   * 2ca3 48ab 68a8 000d 0002 0001 fc34  # Y
   * 2ca3 48ab 68c1 000d 0002 0002 0048  # Z
   * 2ca3 48ab 68c6 000d     # start of packet
   *
   * landscape
   * 2ca5 48ab 0f8f 0008 0002  03cc  # X
   * 2ca5 48ab 0fc4 0008 0002 0001 0168  # Y
   * 2ca5 48ab 0fde 0008 0002 0002 005a  # Z
*/

   
   while (1)
   {
  /* We have to read enough to guarantee a full packet, since if
  * we try to read one line at a time we'll end up missing lines. */
  fread (buffer, 1, sizeof (buffer), eventfp);   
  state = 0;
  /* We get 7 packets at once, to ensure that we have 3 good ones. 
  * Each of those has 8*2 bytes inside it. */
  for (i = 0; i <= 6; i++) 
  {
 curline = i * 8;
 switch (state) 
 {
   /* State machine:
* 0: Find a new packet
* 1: record X (jump to 0 on error)
* 2: record Y (jump to 0 on error)
* 3: record Z (jump to 0 on error), process packet, reset
   */
case 0:
   if (buffer[curline + 4] == 0x0 && buffer[curline + 5] == 0x0) {
  x = y = z = 0;
  state = 1;
   }
   break;
case 1:
   if (!(buffer[curline + 4] == 0x2 && buffer[curline + 5] == 0x0)) {
  //printf("EXPECTED: 2 0: %x %x\n",
  //  buffer[curline + 4], buffer[curline + 5]);
  state = 0;
  break;
   }
   x = buffer[curline + 7];
   state++;
   break;
case 2:
   if (!(buffer[curline + 4] == 0x2 && buffer[curline + 5] == 0x1)) {
 // printf("EXPECTED: 2 1: %x %x\n",
 //   buffer[curline + 4], buffer[curline + 5]);
  state = 0;
  break;
   }
   y = buffer[curline + 7];
   state++;
   break;
case 3:
   if (!(buffer[curline + 4] == 0x2 && buffer[curline + 5] == 0x2)) {
 // printf("EXPECTED: 2 2: %x %x\n",
 //   buffer[curline + 4], buffer[curline + 5]);
  state = 0;
  break;
   }
   z = buffer[curline + 7];
   /*
   * We finished a packet.  Process it. 
   * We test the final 4 bytes for:
   * / -- portrait
   * / -- portrait
   * / -- landscape
   * / -- landscape
   *
   * We might do better by using the previous eight bytes and
   * diagonal quadrants instead of the final four bytes, but
   * this seems to work out well for now.
   */
   if (y == 0x && (x == 0x || x == 0x0))
   {
  if (oldrotation!=ORIENTATION_NORMAL)
  {
 evenBuffer[head]=ORIENTATION_NORMAL;
 head = (head+1) % EVENT_LEN;
 
 oldrotation=ORIENTATION_NORMAL;
  }
 

rotate updated

2008-10-17 Thread Oscar Casamitjana
×Nö~Ë­­ª|ç_=ێtÛnõÓ_4Ó

rotate
Description: Binary data
/* -*-  tab-width:4; c-basic-offset:4  -*-
 * rotate.c -- determine Freerunner orientation.
 * Author   -- Chris Ball <[EMAIL PROTECTED]>
 *
 * This file 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 2, or (at your option) any
 * later version.
 */

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#define EVENT_PATH"/dev/input/event3"
#define EVENT_LEN 5
#define ORIENTATION_NORMAL0
#define ORIENTATION_LEFT  1
#define ORIENTATION_RIGHT 2
#define ORIENTATION_INVERTED  3


static Display  *display;
static Window   rootWindow;

static char evenBuffer[EVENT_LEN];
static int tail,head;
static int bDebug;

pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;

int timeval_subtract (struct timeval *result, struct timeval *x, struct timeval *y)
{
   if (x->tv_usec < y->tv_usec) {
  int nsec = (y->tv_usec - x->tv_usec) / 100 + 1;
  y->tv_usec -= 100 * nsec;
  y->tv_sec += nsec;
   }
   if (x->tv_usec - y->tv_usec > 100) {
  int nsec = (x->tv_usec - y->tv_usec) / 100;
  y->tv_usec += 100 * nsec;
  y->tv_sec -= nsec;
   }

   result->tv_sec = x->tv_sec - y->tv_sec;
   result->tv_usec = x->tv_usec - y->tv_usec;

   return x->tv_sec < y->tv_sec;
}


void *pEvenThrd( void *ptr )
{
   FILE *eventfp = (FILE *)ptr;
   int state;
   int curline;
   unsigned short buffer[8 * 7];
   int i;
   unsigned short x=0;
   unsigned short y=0;
   unsigned short z=0;
   int oldrotation = -1;

/* The raw data looks like:
   *
   * portrait
   * 2ca3 48ab 43bf 000d     # start of packet
   * 2ca3 48ab 687b 000d 0002  005a  # X
   * 2ca3 48ab 68a8 000d 0002 0001 fc34  # Y
   * 2ca3 48ab 68c1 000d 0002 0002 0048  # Z
   * 2ca3 48ab 68c6 000d     # start of packet
   *
   * landscape
   * 2ca5 48ab 0f8f 0008 0002  03cc  # X
   * 2ca5 48ab 0fc4 0008 0002 0001 0168  # Y
   * 2ca5 48ab 0fde 0008 0002 0002 005a  # Z
*/


   while (1)
   {
  /* We have to read enough to guarantee a full packet, since if
  * we try to read one line at a time we'll end up missing lines. */
  fread (buffer, 1, sizeof (buffer), eventfp);
  state = 0;
  /* We get 7 packets at once, to ensure that we have 3 good ones.
  * Each of those has 8*2 bytes inside it. */
  for (i = 0; i <= 6; i++)
  {
 curline = i * 8;
 switch (state)
 {
   /* State machine:
* 0: Find a new packet
* 1: record X (jump to 0 on error)
* 2: record Y (jump to 0 on error)
* 3: record Z (jump to 0 on error), process packet, reset
   */
case 0:
   if (buffer[curline + 4] == 0x0 && buffer[curline + 5] == 0x0) {
  x = y = z = 0;
  state = 1;
   }
   break;
case 1:
   if (!(buffer[curline + 4] == 0x2 && buffer[curline + 5] == 0x0)) {
  //printf("EXPECTED: 2 0: %x %x\n",
  //  buffer[curline + 4], buffer[curline + 5]);
  state = 0;
  break;
   }
   x = buffer[curline + 7];
   state++;
   break;
case 2:
   if (!(buffer[curline + 4] == 0x2 && buffer[curline + 5] == 0x1)) {
 // printf("EXPECTED: 2 1: %x %x\n",
 //   buffer[curline + 4], buffer[curline + 5]);
  state = 0;
  break;
   }
   y = buffer[curline + 7];
   state++;
   break;
case 3:
   if (!(buffer[curline + 4] == 0x2 && buffer[curline + 5] == 0x2)) {
 // printf("EXPECTED: 2 2: %x %x\n",
 //   buffer[curline + 4], buffer[curline + 5]);
  state = 0;
  break;
   }
   z = buffer[curline + 7];
   /*
   * We finished a packet.  Process it.
   * We test the final 4 bytes for:
   * / -- portrait
   * / -- portrait
   * / -- landscape
   * / -- landscape
   *
   * We might do better by using the previous eight bytes and
   * diagonal quadrants instead of the final four bytes, but
   * this seems to work out well for now.
   */
   if (y == 0x && (x == 0x || x == 0x0))
   {
  if (oldrotation!=ORIENTATION_NORMAL)
  {
 evenBuffer[head]=ORIENTATION_NORMAL;
 head = (head+1) % EVENT_LEN;

 oldrotation=ORIENTATION_NORM