Arquivo por categoria aplicativos

Nas entranhas do N900

Assim que o N900 foi lançado havia uma coisa chamada modo pílula vermelha/pílula azul. Quem assistiu Matrix já entendeu de cara o que significa.

Uma das coisas que esse modo permitia era entrar como root no terminal. Por padrão o aparelho possui essa característica bloqueada, por questão de segurança. No mundo GNU/Linux o usuário root é um deus. Ele pode tudo, inclusive destruir o sistema. Pelo menos por enquanto não apareceu uma forma do root destruir o aparelho em si!

Para recuperar o sistema basta reinstalar o firmware.

Hoje em dia não existe mais esse modo de forma fácil. Para ativá-lo é necessário usar o Flasher com uma opção especial. Mas para que isso seria útil?

O nome desse modo é R&D (Research & Development, ou, em bom português, pesquisa e desenvolvimento). Com o aparelho nesse modo é possível desligar algumas de suas funções.

Alguns usuários já passaram pelo problema do aparelho entrar num loop de reinicializações. Você o liga, aparece a tela branca com o nome da Nokia, às vezes aparecem as bolinhas da inicialização, e depois de um tempo ele reinicia o processo todo. Isso acontece por causa de uma segurança colocada nele, chamada watchdog. Numa tradução livre, seria um cão de guarda.

O trabalho dele é garantir que processos essenciais ao sistema estejam no ar e funcionando. A forma dele atuar é simples: ele exige que de tempos em tempos os processos que estão sob sua vigilância o avisem que está tudo bem. Se não receber esse aviso o watchdog reinicia o aparelho por si.

Por isso era obrigatório usar o N900 em modo R&D ao rodar o NITDroid. Hoje não é mais necessário.

Mais algumas coisas acontecem quando se está nesse modo:
- não é preciso instalar nada para ser root
- um toque no botão correspondente já liga o aparelho (ao invés de mantê-lo pressionado por alguns segundos)
- a luz de fundo do teclado se transforma num led indicador de utilização, como aquela luz que o computador tem para indicar acesso ao disco rígido (ela acende sempre que ocorre um acesso aos cartões de memória, tanto interno quanto externo)

Essas coisas todas são exatamente para ajudar o desenvolvedor a testar alguma aplicação mais crítica no aparelho. Por exemplo, alguém cria um novo programa de telefonia e o quer testar. Sem essas opções não seria possível pois o watchdog o reiniciaria sempre ao notar que o programa de telefonia original não está rodando. (ok, você pode perguntar então porque não implementar logo de cara esse aviso no programa novo….porque isso é um detalhe que pode esperar! O mais importante é conseguir fazer o programa executar aquilo para o que está sendo desenvolvido)

O watchdog também é responsável por evitar que o aparelho fique num loop infinito de reinicializações, que poderia levar a um esgotamento completo da carga da bateria, inutilizando-a.

Da próxima vez que ele ficar reiniciando sozinho, não o xingue!! Ele está fazendo isso para garantir o seu perfeito funcionamento. A culpa foi sua que fez algo que não devia! :)

Fazendo um jogo

Claro que existem diversas formas de se fazer um programa, e dependendo do objetivo escolhe-se um jeito ou outro. O mais correto é fazer toda a documentação primeiro, para depois colocar a mão na massa.

Mas isso deixa de ser verdadeiro quando:
1- não há um prazo, portanto não há pressa
2- não se conhece muito bem o projeto como um todo
3- é diversão!

Eu sempre gostei de um jogo, variante do Tetris, chamado Blockout. Ele usa um tabuleiro tridimensional, e peças que podem ser rodadas também nas 3 dimensões. O meu primeiro contato com esse jogo foi num 386….acho que muita gente nem sabe o quão antigo isso é!

Hoje em dia existe uma versão livre, gratuita, código-fonte aberto, do jogo. Porém, ele é escrito em C, e essa linguagem pra mim é um incógnita. Tentei achar algo em Python para poder adaptar ao N900 e poder voltar a jogar. Mas não encontrei.

Resultado? Lá fui eu tentar fazer o jogo!! O primeiro problema: aprender a usar a biblioteca gráfica do Python para jogos, a PyGame.

Depois de apanhar por algumas horas com os conceitos, eu consegui fazer o desenho do tabuleiro (já com tamanho variável), desenhar as peças e, quem diria, rotacioná-las em todas direções!

Claro que, como dá pra ver nas imagens, a tela ainda está bem crua. A minha intenção é que os controles sejam feitos na própria tela, óbvio. Teria um controle à direita para mover as peças (direita, esquerda, pra cima e pra baixo), e um outro controle à esquerda, para rotacioná-las. Pelo menos os dois botões do topo, apesar de terem a mesma imagem, funcionam bem: o da esquerda abre o gerenciador de tarefas e o da direita fecha o programa.

O jogo ainda não é “jogável”. Neste momento estou no ponto de tentar fazer as peças “grudarem” no fundo, e de forma a que fiquem ocupando a camada correta. Quem sabe até o final da semana eu não tenha algo mais interessante?

Conforme o desenvolvimento do jogo for progredindo, colocarei novas telas.

A parte mais complicada até agora foi fazer justamente a rotação das peças. O formato da peça é guardado num vetor tridimensional, pois preciso da informação de quantas colunas, quantas linhas, e quantas camadas a peça possui! A camada é justamente o que dá o efeito tridimensional. Eu não poderia fazer algo fixo, pois tenho também a intenção de fazer peças mais elaboradas no futuro (inclusive aleatórias). Então eu não tenho como saber o formato previamente. Precisava tratar com conceitos, como para rotacionar uma peça para a direita eu precisava “transformar” todas as colunas em camadas, e vice-versa.

Mas eu tenho certeza que será tão complicado ou até mais fazer as peças se encaixarem no fundo, da forma como devem!

Códigos GSM

A parte de telefonia do N900 é o seu calcanhar de aquiles. Diversas características presentes em qualquer aparelho mais simples faltam a ele, de fábrica: MMS, comandos da operadora (como solicitar saldo para linhas pré-pagas, também chamados de códigos USSD), o menu da operadora (também chamado de menu do chip), e os comandos GSM.

O MMS foi resolvido através do fMMS. Os comandos da operadora foram resolvidos no último firmware. O menu da operadora não tem solução ainda. E os comandos GSM não tinham! Mas agora aparentemente já tem!! Claro que graças a um desenvolvedor.

O programa está no repositório extras-devel, e chama-se Starhash Enabler.

Fiz um teste cadastrando um telefone para transferência de chamadas no meu aparelho, que é Vivo, e o cadastro foi aceito pela operadora!! Sem o programa, recebia um erro de código de serviço não suportado.

fonte: T.M.O.

Novo firmware em agosto?

Não há absolutamente nada oficial, mas um usuário do T.M.O. encontrou a informação enquanto buscava uma solução para um problema que ele teve com o Skype.

Ele estava procurando uma forma de recuperar a senha que tinha esquecido, e caiu nesta página sobre como fazer vídeo-chamadas no N900, e lá no rodapé há este texto:

Note: The N900 is currently unable to make calls to or receive calls from Skype on a Panasonic TV. This issue should be fixed in the next Nokia N900 firmware release, currently planned for August 2010.

Em português:

Nota: O N900 atualmente não é capaz de fazer ou receber chamadas do Skype à partir de uma TV Panasonic. Este problema deverá ser corrigido no próximo firmware, planejado para agosto de 2010.

Vale ressaltar que os bugs no aparelho (e nas suas aplicações) continuam sendo reportados e corrigidos, quando pertinente.

Um scanner no N900

Nada melhor que um vídeo para explicar o que é o programa.

Ele está no repositório extras-devel.

fonte: The MeeGo Blog

Toques personalizados para os contatos

Não, este texto não se refere ao MyContacts, mas sim ao Custom ringtones for your contacts.

Para usá-lo o procedimento é extremamente simples: vá até o Contatos, selecione o contato para o qual quer colocar um toque personalizado, abra o menu da aplicação, e selecione o botão “Set custom ringtone”. Simples, fácil e rápido. E mais uma “deficiência” do aparelho vai pro espaço graças à comunidade.

O programa está no repositório extras-devel.

É possível usar MP3 para os toques. Mas pelo menos nos testes que fiz houve um inconveniente: as chamadas demoram cerca de 5 a 10 segundos para tocarem no celular. E o problema é realmente devido ao programa, pois o Recaller começa a gravar bem antes do aparelho começar a tocar, o que indica que a chamada “já chegou” ao N900.

O autor do programa disse que faltam duas coisas nele: uma forma de colocar um toque personalizado para números desconhecidos e números anônimos (aqueles que não permitem que seu número seja identificado), e colocar toques a grupos de contatos. Os dois primeiros ele acha simples (só precisa definir uma interface para isso), já o segundo é bem mais complicado, pois como o programa está perfeitamente integrado ao Contatos, ele só poderia fazer se o próprio Contatos desse suporte a grupos…o que não acontece.

fonte: The MeeGo Blog, via Maemo.org News

Categorizando o Catorise

O Catorise é um programa que coloca os itens do menu em categorias pré-definidas. O problema é que essas categorias são definidas por quem faz o pacote. O inconveniente disso é que por exemplo o Conky fica na categoria “desktop” ao invés da “sistema” (que pra mim seria a mais lógica). Assim como os programas baixados da Ovi Store que ficam na categoria Ovi.

Era possível alterar essas categorias mexendo em arquivos de configuração, mas agora também dá pra fazer através de um programa gráfico.

Basta pressionar o botão do lado esquerdo do programa que quer alterar, selecionar pra qual categoria o programa deve ir, e pronto!

O programa está no repositório extras-devel.

As novidades do Fennec 2.0

Mal saiu o Fennec 1.1 (Firefox Mobile), já há notícias sobre novidades da versão 2.0.

A principal é que o grupo de desenvolvimento está tentando colocar o Weave Sync dentro do programa, deixando-o nativo, e não mais como um plugin.

Para quem não sabe, o Weave Sync hoje é um plugin que permite sincronizar as abas, favoritos, dados de formulários, senhas e histórico entre o navegador no computador e no celular.

Basicamente permitiria que você estivesse no seu trabalho, navegando….deu o final do expediente, você vai embora, e no caminho pra casa, dentro do ônibus, pega o celular e continua de onde estava.

Aqui é possível ver uma lista de algumas da novidades, e em que pé estão.

fonte: Mark Finkle’s Weblog, via Maemo.org

MeeGo no N900

Este vídeo mostra o MeeGo rodando no N900.

fonte: Nokia N900 Applications

MeeGo Handset, day 1

Este é o vídeo do MeeGo rodando num aparelho móvel (que não me parecer o N900).

Assim que encontrar uma forma de rodar no N900, que não seja destruindo a instalação atual, farei a tentativa e quem sabe, um vídeo.