domingo, 29 de agosto de 2010

Snes4all 0.42 para Symbian

Nova versão do Snes4Sym, emulador de snes para Symbian:
Mudanças:
* Recompilado com GCC 4: pequeno ganho de performance.
* Mudanças no menu para ficar mais intuitivo.
* Conserto de alguns Bugs.


DOWNLOAD

Tutoriais:

domingo, 8 de agosto de 2010

Snes4all ported for Symbian( traduzido para inglês, original abaixo)

For those who like the classic games of Super Nintendo (R) can try this new emulator: Snes4ALL. First released by Chui made based on the Snes9x source code and SDL runs with acceptable speed without sound on nokia 5530 (the only one I own and I Can test ^ ^) But Should Be much better to play the N97 That Has buttons.The roms Must Be Placed in the data folder or any subfolder of it. The saves Will Remain in the data folder as well.
Buttons:
1 - X

2 - top 
3 - Y 
4 - left 
5 - start 
6 - right
7 - A 
8 - low
9 - B
note: the directional buttons works.


DOWLOAD

Test and comment!!!
OBS: require PIPS 1.6 and Standard c++ library.

domingo, 1 de agosto de 2010

Snes4all portado para symbian **ATUALIZADO**

Pra quem gosta dos classicos jogos de Super Nintendo(R) pode tentar este novo emulador: Snes4ALL. Primeiramente lançado por Chui, feito baseado no código fonte do Snes9x e SDL, roda com velocidade aceitável sem som no nokia 5530( o único que possuo e posso testar^^)  mas deve ser bem melhor de jogar no N97 que possui botões.
As roms devem ser colocadas na pasta data ou em alguma subpasta. Os saves irão ficar na pasta data tambem.
Botões:
1- X
2- cima
3 - Y
4- esquerda
5- start
6- direita
7- A
8- baixo
9- B
obs: os direcionais funcionam.

Agora com suporte a save states.

DOWNLOAD



Testem e comentem!!
OBS: Requer PIPS 1.6 e Standard C++ library commom 1.6

segunda-feira, 1 de março de 2010

Iniciando o SDL.(2)

Acho que agora vou conseguir começar esses tutoriais^^.
Vamos começar:

Para que possamos usar as funções da SDL primeiro temos que iniciá-la,
segue o código:


if (SDL_Init(SDL_INIT_VIDEO) != 0) {
 printf("Não foi possível iniciar a SDL: %s\n", SDL_GetError());
 return 1;
}

Nesse trecho o programa inicializa a biblioteca apenas com as funções de vídeo,
se desejar-mos inicializar o audio
também teremos que modificar para:

if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO) != 0) {
 printf("Não foi possível iniciar a SDL: %s\n", SDL_GetError());
 return 1;
}

E adicionamos as flags de todos os sub-sistemas que queremos inicializar,
por hora vamos nos ater somente ao video.
Como temos o vídeo inicializado, podemos agora abrir uma janela para que possamos
mostrar o nosso programa:

SDL_Surface *screen;
 
screen = SDL_SetVideoMode(640, 480, 16, SDL_DOUBLEBUF | SDL_FULLSCREEN);
if (screen == NULL) {
 printf("Não foi possível escolher o modo de video %s\n", SDL_GetError());
 return 1;
}

obs: screen é um ponteiro para a tela do programa, uma surface da sdl.

Usamos a função SDL_SetVideoMode para escolher o modo de vídeo que iremos utilizar.
No exemplo,selecionamos largura 640, altura 480, profundidade da cor de 16 bits e
opções como duplo buffer e tela cheia. Ao final testamos para ver se screen existe e
caso contrário o programa emite um erro
com a descrição dada pela SDL (em inglês) e termina.

Ao fechar o programa devemos fechar a SDL primeiro, para isso usamos a função atexit:

atexit(SDL_Quit);

Essa função faz com que antes do fim do programa a função de fechar a SDL SDL_Quit
seja chamada automaticamente, não importa em que parte do programa seja o fim do mesmo.

Bom, por hoje é só. Na proxima parte irei explicar como mostrar uma imagem na tela.
Agora aqui vai o código completo que  não faz nada^^ só abre uma janela e fecha logo
em seguida, mas tá aí pra quem quiser testar. Até.




domingo, 16 de agosto de 2009

Complementando com a Conversão RGB para Sepia

Modificando um pouco a Função Anterior com a ajuda do techrepublic temos uma conversão de RGB para sépia:



Até!!!!

convertendo surfaces RGBA para escala de cinza

Eu fiz um trabalhinho de fim de semana no meu projeto então decidi postar aqui para que possa servir de auxílio pra quem precisar, o código é parte da classe surface e serve para fazer um efeito de preto e branco( escala de cinza ) em uma sdl_surface dando efeito de antigo. Segue abaixo:




Para quem precisar está aí^^.
Mas uma pequena observação: Não é uma função para ser usada em tempo real!
Até a próxima!!!!