Archive for June, 2006

Baixar o kernel 2.6.x para a Lite5200B usando o GIT

Primeiramente baixe o kernel padrão do Torvalds:

$ git clone git://www.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

Entre dentro do diretório criado:
$ cd linux-2.6

Adicione o patch para IDE:
$ git pull http://gitbits.246tNt.com/gitbits/linux-2.6-mpc52xx.git#ide

Adicione o patch para placa de rede (FEC):
$ git pull http://gitbits.246tNt.com/gitbits/linux-2.6-mpc52xx.git#bestcomm

Add comment June 30, 2006

Instalando o Debian na Lite5200

Existe um tutorial muito bom explicando como instalar o Debian Woody na lite5200:
http://www.denx.de/wiki/DULG/DebianOnPowerpcInstallationHowto

Porém este manual não funciona para Debian Sarge, uma vez que o root.bin não existe mais, e sim uma initrd que é MSB (o impede a montagem em um PC (LSB)).

A solução encontrada foi gerar o sistema de arquivo do Debian instalando o mesmo num HD usando o QEMU como base. Você pode tentar criar um “hard disc image”, mas será mais trabalhoso calcular o deslocamento que o mount deverá executar para montar uma partição dentro deste arquivo de imagem, então é melhot instalar num pequeno HD (ex.: 6GB).

Particionamos este HD (/dev/hdb) em 4 partições, na máquina Host. Não preocupe em mudar o tipo da partição, apenas crie as 4 partições do tamanho indicado:

Partição 1: 1MB (Apple table)
Partição 2: 2MB (Networld boot)
Partição 3: 5.8GB (Sistema de Arquivo – ext2)
Partição 4: 253MB (Swap)

Inicie a instalação pelo QEMU:
qemu-system-ppc -hda /dev/hdb -cdrom debian-netinst.iso -boot d

Quando aparecer o LILO ( boot: ) digite:
install-powerpc-2.4 ramdisk_size=10000

Siga o processo de instalação padrão, modique a 2ª, 3ª e 4ª partição para os tipos indicados acima. Não se preocupe com a 1ª partição, o próprio instalador cuida de criar a tabela de partições nela depois.

Quando terminar a instalação você poderá sair do QEMU e executar na máquina Host:
# mount /dev/hdb3 /mnt/lin e lá estará todo o sistema de arquivo do Debian PPC.

Add comment June 29, 2006

Console serial para Lite5200B no kernel 2.6.17

Nas versões mais novas do kernel o console=ttyS0 não funciona, devemos substituir pelo comando console=ttyPSC0

Coisas desses desenvolvedores malucos, por que não deixar ttyS0 mesmo?

Add comment June 25, 2006

Acessando o SourceForge por SSH

Como sempre você faz um determinado processo, não documenta e depois tem que revazer tudo novamente e não se lembra mais.

Dessa vez irei anotar para acelerar o processo quando precisar fazer isso novamente:

Crie sua chave:

$ ssh-keygen -t dsa -C USERNAME@shell.sf.net

Onde USERNAME é o nome do seu usuário no sourceforge.

Para ver o conteúdo da sua chave publica execute:

$ cat .ssh/id_dsa.pub

Em seguida vá em https://sourceforge.net/account/ , clique em “[Edit SSH Keys for Shell/CVS]” e cole o conteúdo de sua chave pública, a chave se aparece com:

ssh-dss AAAAB3NzaC1kc3MAAAEBANn….DAroo = USERNAME@shell.sf.net

Para acessar o servidor use:

$  ssh USERNAME@shell.sf.net

Add comment June 25, 2006

Inicializar kernel Linux 2.6 sem Sysfs

Desativando o Sysfs reduzo o tamanho do kernel consideravelmente, mas o sysfs é responsável por mapear os dispositivos no /dev no kernel 2.6.

Para contornar este problema basta passar o seguinte parâmetro para o kernel:

root=0×0301

Onde 0×0301 corresponde ao /dev/hda1, modifique de acordo com o seu caso.

Add comment June 24, 2006

Outra forma de disassemblar parte de um binário

Escontrei esta outra dica na Internet:

1. Create a empty C file:
$ touch a.c
2. Compile it:
$ gcc -c -o a.o a.c
3. File b.raw is your raw binary file. Add your binary as a section <raw>
to file a.o and remove section <.comment>:
$ objcopy –add-section raw=b.raw a.o
$ objcopy -R .comment a.o
4. And disassemble it:
$ objdump -D a.o

This works for i386 binutils. I test it also with binutils for NIOS and I
need change the flags of section <raw> before disassemble it.
Run this after point 3.
$ objcopy –set-section-flags raw=CONTENTS,ALLOC,LOAD,READONLY,CODE a.o

Mas ainda não sei se esta forma é melhor ou pior que a forma anterior.

Alguma idéia? Marcelo? Fernando?

Alan

Add comment June 22, 2006

Como disassemblar um arquivo binário

Para disassemblar um arquivo binário execute:

objdump -D -b binary arquivo.bin –architecture=i386

Add comment June 22, 2006

Lendo o teclado de forma não bloqueante

Se você precisa ler o teclado dentro de um laço de repetição de forma não bloqueante, então está dica é para você:

#include < stdio.h >
#include < unistd.h >
#include < termios.h >
#include < stdlib.h >
int main (void) {
char chr;
int result;
struct termios term;
tcgetattr(STDIN_FILENO, &term);
term.c_lflag &= ~ICANON;
term.c_cc[VMIN] = 0;
term.c_cc[VTIME] = 1;
if (tcsetattr(STDIN_FILENO, TCSAFLUSH, &term) < 0)
perror(“We failed to change terminal settings\n”);
//Polling the keyboard
while ( 1 ) {
result =read(STDIN_FILENO, &chr, 1);
if (result ==1) {
//Do something with input
printf(“%c”, chr);

}
//Do something ”more important”
printf(“.”);
fflush(STDIN_FILENO);
}
}


Add comment June 20, 2006

Editor de vídeo para o Linux

Diva é editor de vídeo que promete muito, e cumpre.

Ainda não está no nível do cinelerra, mas está chegando lá.

Site do projeto:

http://www.diva-project.org

That’s all folks!

Alan

Add comment June 16, 2006

Tocador de musica descente

Se você está cansado do XmmS, e quer procurar por algo mais evoluído que tal testar o Listen:

http://listengnome.free.fr

Possui recursos interessantes, como o suporte ao www.last.fm, visualização de letra de músicas, sincronização com iPod, etc…

Add comment June 16, 2006


CALENDÁRIO

June 2006
M T W T F S S
« May   Jul »
 1234
567891011
12131415161718
19202122232425
2627282930  

c

ARQUIVOS:

RECURSOS

Blogroll

NOVOS COMENTÁRIOS:

RSS BR-Linux.org:

RSS Tchelinux

NÚMERO DE ACESSOS:

AUTORES