Pelo que consegui ler na internet, é 4 MBytes mesmo (32Mbits). Essa é a memória RAM do DS. Teoricamente, nenhum jogo poderia ter mais que essa memória; mas, na verdade, eles podem ter até 1GBit (128MB). A solução é criar um sistema de arquivos (file system). Isso a gente consegue usando as rotinas PAFS da PAlib.
Como funciona: Programa normal, usando as rotinas (depois eu falo um pouco delas); depois compila o programa normalmente; copia o PAFS.exe para a mesma pasta do arquivo compilado; cria uma pasta Files e copia os arquivos que vão ser usados no programa ali; abre uma janela dos e vai para a mesma pasta do arquivo compilado; roda:
PAFS nome_do_arquivo_compilado_com_extensao
Ele vai gerar um novo arquivo contendo o arquivo compilado somado aos arquivos da pasta Files.
Vamos ao fonte:
narq = PA_FSInit(); Inicia o File System, dizendo quantos arquivos existem (neste caso eu armazeno na variável narq). Além disso, esse comando cria um array PA_FSFile indexado pelo número do arquivo e contendo diversos dados, tipo nome, extensão, tamanho.
Para carregar um arquivo para a memória, depende das funções de aplicação, assim podemos carregar um arquivo mod, um arquivo raw e uma imagem e termos os três simultaneamente na memória. Quando carrega o segundo arquivo para a mesma aplicação, o primeiro é removido da memória.
Assim, podemos quebrar a barreira dos 4MB. Mas temos que tomar cuidado, pois nesses 4 MB tem que ter espaço para o programa e para os arquivos que forem carregados (e isso é muito fácil de ultrapassar quando a gente começa a gostar de colocar imagens e sons no programa.
O programa que eu criei para testar é um jukebox de músicas MOD. Eu coloquei um fundo parallax para não ficar tudo parado. O programa não começa a música seguinte após terminar a primeira, pois não pretendo gastar tempo de aprendizado otimizando um programa simplório. As setas para cima e para baixo movem a seleção, e o botão A inicia a reprodução do mod escolhido. Eu coloquei 8 mods para não ficar muito grande o arquivo para download (os mods não foram junto com o fonte, quem quiser, peguei esses mods no site http://www.modarchive.com
Link para o programa e os fontes no rapidshare
sexta-feira, dezembro 08, 2006
Assinar:
Postar comentários (Atom)
3 comentários:
me lembro de ter lido sobre essa coisa dos 4 megas, que impediriam o desenvolvimento de um sistema linux gráfico para o ds... Muito bom saber mais sobre esse sistema de arquivos, crucial para planejar novos aplicativos.
As imagens que ele carrega, são em algum formato específico? jpeg, bmp?
pode ser gif, png ou jpg, mas jpg e png consomem muita memória por causa das true-colors. Tem opção para colocar qualquer tipo de arquivo, aí cabem os tiles do ds que são muito mais otimizados mas requerem um software adaptador para gerar o arquivo via pc.
Ist Einverstanden, das sehr nГјtzliche StГјck cialis bestellen paypal cialis generika aus deutschland [url=http//t7-isis.org]viagra f?r die frau erfahrungsberichte[/url]
Postar um comentário