Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
REQUERIMENTOS:
Sistema Operacional : Windows XP SP2 ( inglês )
Placa Mãe utilizada: M871G
Memória RAM: 512MB
HardDisk: 40GB
Placa de Vídeo: Nvidia FX5200 ( AGP )
A parte mais chata e complicada de uma multijgos é referente ao vídeo, isso quando falamos de monitores
arcade. Por esse motivo, eu recomendo que seja usada uma placa de vídeo offboard (de preferência Nvidia e
com saída para TV) isso porque se usarmos uma placa dessa teremos 3 opções de monitores:
1º - monitor de PC;
2º - TV; e
3º - monitor arcade.
As placas de vídeo da ATI também são boas, mas alguns modelos podem apresentar problemas com
jogos 3D ao se baixar a freqüência para 15khz, que é a freqüência usada em monitores arcades.
Outro ponto que confunde muito se refere a que tipo de controle usar (teclado, hack de teclado, joystick na
porta paralela ou USB, etc... ). Em minha opinião, a forma mais rápida e menos trabalhosa são os joysticks de psx,
pois são baratos, fáceis de realizar manutenção e tem uma quantidade de botões suficientes para qualquer
montagem desse tipo. Quanto a ser adaptado por porta paralela ou USB a escolha fica ao seu critério (lembrando
que os adaptados pela USB usam menos recursos do sistema, isso porque eles terão seus controladores
próprios e os adaptados pela porta paralela irão exigir mais trabalho do processador).
A tão falada placa jamma, essa nada mais é do que 3 circuitos em 1: o áudio, o joystick (controles) e o
vídeo (junção do sincronismo em monitores arcades).
A primeira parte desse tutorial é referente à instalação, configuração e otimização do sistema operacional.
O WindowsXP foi escolhido pela facilidade de uso e por possuir drivers atualizados.
O que será mostrado aqui poderia ser feito com o Windows98, mas como ele foi descontinuado achar
determinados drivers para placas de vídeo mais atuais para ele seria difícil ou até mesmo impossível.
Outro sistema operacional com o qual é possível fazer é o Linux (mas isso vai ser tema para um próximo
tutorial).
Para fazermos as modificações, o ideal é fazer uma instalação normal do WindowsXP em um HD vazio ou
então em um partição vazia. Ainda, considerando que algumas configurações durante a instalação são feitas em
razão do hardware detectado, recomendo ser feita já no PC que usaremos na multijogos.
ATENÇÃO!!!
NÃO USE AS FERRAMENTAS QUE VÃO SER MOSTRADAS NO SISTEMA OPERACIONAL QUE
VOCÊ ESTÁ UTILIZANDO, OU TERÁ PROBLEMAS.
Depois de decidir onde vai colocar essa nova instalação, basta fazer a instalação normalmente, instalando
depois todos os drivers ( som, vídeo, usb, etc... ) que usaremos. Teste tudo para ver se o funcionando está correto.
Uma outra ferramenta que utilizaremos será para realizar análise e correções no registro do Windows. Isso
é importante, pois após usarmos o XPLITE irão ficar várias entradas órfãs no registro do Windows. Eu
particularmente gosto de usar o “ccleaner” ( http://www.ccleaner.com )
Após ter instalado o sistema operacional e todos os drivers necessários, descompacte o pacote do XPLITE
em uma pasta qualquer e clique no arquivo de registro ( Licence.reg ) para adicionar o conteúdo dele ao registro do
Windows - com isso você terá uma cópia do XPLITE 100% funcional.
Nesse ponto, se você quiser pode iniciar suas próprias alterações para melhorar o desempenho, como por
exemplo, remover o papel de parede e qualquer outra otimização que você conheça.
O que eu costumo fazer de imediato é, no Windows Explore, em Tools->Folder options, habilitar a
visualização de arquivos e pastas ocultas:
Figura 2 – Habilitando visualização de arquivos e pastas ocultos.
Desabilitar a memória virtual (só se você tiver mais de 512mb) em Control Panel->System->Advance-
>performance->advance
Feitas as suas alterações chega a hora de iniciarmos o XPLITE (não esqueça de executar o arquivo de
licença), então vá até a pasta onde você descompactou o pacote postado e clique no ícone do XPLITE para
executá-lo. Caso seja mostrado alguma tela perguntando se deseja atualizar o programa click em “no”.
Deixe a janela configurada igual a imagem acima, a opção "Show Advanced...." irá mostrar mais opções
que teremos acesso, e a opção "Warn If..." faz com que o XPLITE envie um aviso caso não consiga criar um
ponto de restauração para as modificações realizadas. Essa é uma das grandes vantagens desse utilitário, pois
caso você remova algum componente que impeça o Windows de iniciar normalmente, você terá a opção de iniciar
em modo de segurança e restaurar o sistema. Ao final de todas as modificações e testes, poderemos remover
todos os pontos de restauração criados para livrar espaço.
Após ter configurado a sessão acima clique em "OK" para retornar a janela anterior (principal), e agora
selecione a aba "Windows File Protection".
A primeira opção fará com que o XPLITE desabilite o "Windows File Protections", se isso não for feito e
você tentar remover qualquer arquivo da pasta "Windows" ou "System32", o Windows irá imediatamente
adicionar um novo arquivo para substituir o que foi deletado ou alterado. A segunda opção faz com que o XPLITE
delete todo o conteúdo da pasta "c:\Windows\system32\DLLCache" - o Windows usa essa pasta para guardar
vários arquivos para que você não tenha que colocar o CDROM de instalação a cada novo programa ou driver
instalado e como essa pasta ocupa vários Megabytes, pode ser deletada sem risco ao sistema, e caso você instale
algo que precise de arquivos extras basta colocar o CDROM de instalação e o problema estará resolvido.
IMPORTANTE!!!
APÓS AJUSTAR AS OPÇÕES MOSTRADAS ACIMA VOCÊ DEVE REINICIAR O COMPUTADOR PARA
QUE O "WINDOWS FILE PROTECTION" SEJA DESABILITADO.
Nesta janela selecionaremos os componentes (programas) que serão removidos. Repare que ao passar o
mouse por qualquer opção você verá uma breve descrição do que será feito (o ideal seria você ver item por item e
pesquisar sobre cada um deles para saber no que a remoção dele afeta o sistema). Quando você tentar retirar um
componente que pode causar alguma instabilidade no sistema o XPLITE irá avisar sobre o risco. O mesmo
acontece quando se tenta remover um componente que outros programas utilizam.
Como mencionei, o ideal é conhecer os componentes a serem retirados, embora caso remova algo que
não deveria sempre teremos a opção de restaurar. No "pacote postado" eu coloquei a configuração que realizei
aqui (veja o arquivo xplite.cfg ), esse arquivo pode ser criado ou carregado no momento que você quiser:
Para salvar um arquivo de configuração com as opções que você selecionou, clique no ícone
(disquete, lado esquerdo) e será exibida uma tela perguntando o nome para o arquivo de configuração,
que será salva no mesmo diretório onde se encontra o XPLITE.
Para usar uma configuração salva (como essa que eu criei), clique no ícone Reload (setas
formando um circulo) e será mostrada uma lista com as configurações salvas.
Repare que nessa configuração que fiz deixei somente 38 componentes de um total de 162. Com isso
consegui deixar o sistema com apenas 420MB de espaço ocupado (é possível remover bem mais, mas para isso é
necessário que seja feito manualmente e conhecer o que cada arquivo representa para o sistema ou programas).
Figura 9 – Tamanho do Windows após alterações com XPLite.
Com a remoção desses componentes, mais algumas alterações nos serviços do WindowsXP, deu pra
chegar nessa configuração de processos em execução e uso da memória: (repare que o pagefile.sys não é usado
(pois está desabilitado)).
Agora falta apenas adicionar algumas otimizações referentes ao desempenho e uso da memória, que
serão feitas alterando o registro do Windows. Caso você conheça alguma otimização ou arquivos que não são
relevantes para o sistema, fique à-vontade para postar no fórum ou adicionar/remover na sua instalação.
Depois de pesquisar bastante acabei verificando que a maioria das otimizações encontradas e que são
relevantes a melhoria do desempenho não são necessárias ou não tem uma base comprovada de melhorias,
então fica aqui as que eu considerei necessárias ( lembrando... caso você conheça mais alguma que seja eficaz
fique a vontade em adicioná-la ).
Outras alterações que irão aliviar tanto o processador quanto a memória física são a desabilitação de
serviços que não terão utilidades na montagem. Para isso não existe uma receita pronta, pois pode variar de
sistema para sistema dependendo do que foi instalado. A forma correta para se desabilitar esses serviços é
conhecendo o que eles fazem e isso só estudando mesmo cada um deles. Aqui, no meu caso, foram desabilitados
os seguintes serviços:
DHCP
DNS
FASTUSER
HTTP SSL
IPSEC
NETWORK CONNECTIONS
NETWORK LOCATIONS
PRINT SPOOLER
PROTECTED STORAGE
SERVER
SHELL HARDWARE DETECTION
THEMES
WINDOWS TIME
Estes serviços foram todos "DESABILITADOS", pois iniciavam automaticamente, o restante ficou como
padrão ( AUTOMÁTICO ou MANUAL ).
O XPLite remove uma grande quantidade de arquivos, mas mesmo assim ainda é possível remover mais
alguns que não serão usados. Os arquivos mencionados abaixo são encontrados em "c:\windows\system32".
Uma ferramenta que podem ajudar a deixar a instalação bem mais limpa e é altamente recomendada é o
Ccleaner, (http://www.ccleaner.com). Esse utilitário além de varrer o HD para limpar vários megabytes, também
varre o registro do Windows limpando chaves inválidas ou corrompidas.
Essas são as dicas para deixar uma instalação limpa e otimizada ( pelo menos as que eu conheço ). Para
por isso em prática eu usei uma hd vazia de 40GB, que foi reparticionada em 2 partes ( partição primária com 1GB
e o restante 39GB para a segunda partição ), o tamanho da primeira partição irá depender da sua quantidade de
memória, aqui eu pretendo usar 512MB e não irei utilizar o arquivo de troca ( pagefile.sys ), isso porque com esse
esquema eu poderei colocar esse windows em um pendrive, compact flash, dvdrom, etc
Para personalizar o boot do WindowsXP, podemos criar uma imagem para ser mostrada no lugar do
logotipo do Windows. Para isso, é necessário criar uma imagem com o tamanho de 640x480 pixel, e essa imagem
só pode usar uma paleta de cores de 8bits e essa paleta só pode ter 16 cores, qualquer outra imagem com uma
especificação diferente não será exibida:
A imagem criada deve ser salva na pasta "WINDOWS" com o nome de "boot.bmp". Feito isso agora basta
colocar as opções as opções de inicialização no arquivo "boot.ini" que se encontra na raiz da unidade "C:". As
opções a serem acrescentadas são:
No arquivo boot.ini
/bootlogo = Mostra o arquivo boot.bmp
/noguiboot = Não mostra o logotipo do windows no carregamento.
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP
Professional" /noexecute=optin /fastdetect /bootlogo /noguiboot
Todos os procedimentos mostrado acima foram para deixar a instalação do WindowsXP o mais leve e
enxuta possível, e isso tudo para que essa instalação possa ser portada para um pendrive, compact flash, cdrom,
dvdrom, etc..., pois com isso poderíamos criar uma multijogos com, por exemplo, somente um pendrive+cdrom ou
pendrive+hd ou somente um DVDROM. Mas para isso é necessario fazer mais algumas modificações no sistema
pois, dá forma em que está, somente seria possível colocá-lo em um compact-flash ou pendrive (ou seja uma
media regravavél). E mesmo assim, se for usado esse tipo de dispositivo, o WindowsXP em pouco tempo irá
danificá-lo ou corromper os arquivos. Para quem não sabe, esses dispositivos (compact-flash e pendrive) tem um
tempo de vida (ciclos de gravação), embora pelas especificações dos fabricantes pareçam ser bem longos, mas na
prática não o são.
O WindowsXP executa a leitura e gravação de dado com muita freqüência, reduzindo assim o tempo de
vida útil do dispositivo, e mesmo que o sistema seja gravado em um HD, sempre se corre o risco de ter arquivos
corrompidos com uma queda de energia. O único método que protegeria efetivamente os dados seria a gravação
do sistema operacional em cdrom ou dvdrom (os chamados live-cds) pois dessa forma a leitura e gravação seria
feita na área de swap.
Para resolver os problemas citados acima, mostrarei como proteger o sistema operacional contra
gravação (ou permitir que ele seja gravado em um cdrom ou dvdrom). Trata-se de uma espécie de gambiarra que
foi adaptada do sistema "Windows XP para dispositivos embarcados". Os procedimentos mostrados aqui
foram retirados do fórum do site MP3CAR.com (http://www.mp3car.com/vbulletin/winnt-based/37078-using-ewf-
regular-winxp.html), e testadas com sucesso.
O procedimento fará com que toda a gravação que o WindowsXP costuma fazer no HD seja redirecionada
para um espaço na memória RAM, ou seja, irá enganá-lo fazendo-o pensar que está usando um HD normal.
Esses arquivos são encontrados no pacote do "WindowsXP Embedded", para adquirir uma cópia basta
baixar a versão "trial" no site da Microsoft. Os procedimentos mostrados a seguir devem ser feitos depois que tudo
estiver instalado e configurado.
Primeiro renomeie o arquivo "Ewfntldr" para "ntldr" - esse arquivo deve ficar na raiz do HD (repare que já
existe um que é o original do WindowsXP, então renomeie-o para qualquer outro nome (por exemplo ntldr_bak ).
Agora copie o "Ewf.sys" para a pasta "c:\windows\system32\drivers", e por fim o arquivo "Ewfmgr.exe" para a
pasta "c:\windows\system32".
Agora devemos fazer varias alterações no registro do para ativar o "Ewf". Para que o registro permita fazer
tais alterações é necessário habilitar a permissão de acesso ao registro, para isso abra o editor de registro com o
comando "regedit". Selecione a chave "HKEY_LOCAL_MACHINE" e de um clique com o botão direto sobre ela,
no menu que aparecer clique em Permissions.
Agora selecione a opção "Everyone" e marque a caixa "Full Control". Com isso você estará habilitando
para que qualquer pessoa possa fazer alterações nessa chave de registro. Isto é necessário, pois agora irei postar
uma lista de modificações que deverão ser feitas no registro. Para facilitar, copie essa lista para o Bloco de Notas
e salve-a com a extenção ".reg" - para que o Bloco de notas não salve com a extensão txt é só escolher colocar o
nome entre aspas (ex: “alterações.reg”). Depois clique no arquivo salvo e o editor de registro irá adicionar tudo
automaticamente.
Lista de alterações
Windows Registry Editor Version 5.00
mp3car é necessario clicar com o botão direito e habilitar o previlegio no editor de registro
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF]
"NextInstance"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF\0000]
"Service"="EWF"
"Legacy"=dword:00000001
"ConfigFlags"=dword:00000020
"Class"="LegacyDriver"
"ClassGUID"="{8ECC055D-047F-11D1-A537-0000F8753ED1}"
"DeviceDesc"="EWF"
"Capabilities"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF\0000\Control]
"ActiveService"="EWF"
;ms
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf]
"ErrorControl"=dword:00000001
"Group"="System Bus Extender"
"Start"=dword:00000000
"Type"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-
08002BE2092F}]
"UpperFilters"="Ewf"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0]
"VolumeID"="{1EA414D1-6760-4625-8CBE-4F9F85A48E15}"
"Type"=dword:00000001
"ArcName"="multi(0)disk(0)rdisk(0)partition(1)"
Depois de criar o arquivo ".reg" e adicioná-lo ao registro, pesquise as chaves mostradas e verifique se
todas foram criadas ou alteradas e se estão com os valores iguais a tabela acima. Caso alguma chave não tenha
sido alterada ou criada, faça isso manualmente usando o "regedit".
Após verificar se tudo ficou correto com o registro, chega a hora de reiniciar o computador para que as
alterações tenham efeito. Depois de reiniciar, iremos verificar se o filtro "EWF" está funcionando corretamente.
Para isso abra o prompt de comando "cmd.exe" e digite: c:>ewfmgr.exe c: . Com isso você verá uma descrição
como a mostrada nessa imagem: Nessa janela o que devemos observar as informações "Type" e "State":
Type: informa o tipo de filtro que o "EWF" está aplicando na sua instalação, são 3 tipos possíveis (veja no
site os tipos existentes)
zState: informa o estado do filtro "Enabled" ou "Disabled", quando está "Enabled" significa que o filtro
está habilitado, e com isso qualquer tipo de gravação no dispositivo será desviada para uma área
na memória RAM.
Se você quiser fazer um teste, abra o Bloco de Notas e salve o documento corrente para o HD, se quiser
também pode renomear algum arquivo ou copiar algum arquivo para a unidade { C: }, depois reinicie o computador
e veja que os arquivos não estarão mais lá e que o arquivo renomeado voltou a ter o nome original. Como já foi
mencionado o programa "Ewfmgr.exe" é quem controla o filtro, para ver as opções possíveis digite no prompt
"ewfmgr.exe /?" e será mostrado uma lista com as opções disponíveis.
As principais são:
Enable ( habilita o filtro no próximo boot )
Disable ( desabilita o filtro no próximo boot)
Commit ( grava os dados para o disco )
CommitAndDisable ( grava os dados e desabilita o filtro imediatamente )
Fora isso ainda é possível criar programas ou scripts usando a API do EWF para manipular esse filtro,
para isso veja no site a documentação disponível. Ainda, na documentação você irá encontrar tudo que precisa
para criar um CD, DVD ou pendrive bootavel.
SEGUNDA PARTE
O frontend que irei usar é o AdvanceMenu, e os motivos são que ele não precisa de instalação, suporta
qualquer emulador ou programa e por ser o único que reproduz os arquivos de vídeo produzidos pelo mame.
Para ajudar o AdvanceMenu serão usados script´s para cada emulador adicionado. Esses scripts irão
fazer o trabalho de enviar teclas para o emulador e outras tarefas que não são possíveis só com o
AdvanceMenu.
A versão do AdvanceMenu que irei postar por enquanto tem as seguintes alterações:
Serão usados os seguintes botões do joystick1, caso queira usar um teclado, as teclas continuam as
padrões do AdvanceMenu:
o Botão2 ( troca de emulador )
o Botão3 ( muda o formato da lista, por exemplo de lista para imagens )
o Botão7 ( Ficha, o AdvanceMenu poderá trabalhar de 2 formas, 1º somente permite chamar um
jogo caso haja ficha, 2º modo convencional )
o Botão8 ( Carrega o jogo selecionado )
o Botão9 ( Fecha o AdvanceMenu)
o Botão10 (Abre o menu de opções )
Poderá ser criado uma tela de fundo para cada emulador, ou seja ao trocar de emulador a imagem
será mudada imediatamente. Ao depositar uma ficha será tocado um som apropriado ou uma
mensagem de voz no formato ".wav".
O AdvanceMenu terá uma opção (caso esteja habilitada) que só irá permitir o carregamento do jogo
caso haja uma ficha.
Todas as fichas depositadas irão para um banco de dados (arquivo .ini), com isso mesmo desligando a
máquina as fichas não jogadas continuarão guardadas
O AdvanceMenu irá trabalhar de forma transparente tanto com jogos de Habilidade (arcade) quanto
os de Tempo (videogames), ou seja, depois de definido quanto Tempo uma Ficha vale, tanto faz o
jogador depositar uma ficha que ela será válida em qualquer um dos modos. Por exemplo: se ele
depositar uma ficha e chamar um jogo de "VideoGame", ele poderá jogar normalmente e voltar a
qualquer hora para o AdvanceMenu e selecionar outro jogo até que o tempo se esgote. O
AdvanceMenu foi programado para saber o tempo que, resta então caso o jogador coloque uma ficha
e jogue um jogo de "Video Game" por alguns minutos e depois volte ao AdvanceMenu e tente jogar o
resto do tempo em um jogo de "Arcade", o AdvanceMenu não irá permitir a menos que ele deposite
mais uma ficha, nesse caso o jogador poderá jogar o game de "Arcade" e depois poderá retornar ao
AdvanceMenu e gastar o tempo que tinha sobrado da ficha anterior em qualquer outro jogo de
"VideoGame".
Aqui iremos começar com a parte de organização das pastas, com isso ficará mais fácil distribuir os
pacotes para serem encaixados um a um. A estrutura será da seguinte forma ( ela pode ser alterada do momento
que você alterar as configurações dos emuladores e scripts ).
Pasta ARCADE, irá conter todas as outras pastas, ou seja é a pasta raiz.
Pasta AUXILIAR, irá conter ( por enquanto ) 3 subpastas que irão conter arquivos de som, imagem, fontes.
Pasta BACKUP, irá conter uma cópia de segurança das principais configurações.
Pasta JOGOS, irá conter uma subpasta para cada tipo de sistema (neogeo, capcom, outros, zinc, model2,
supernes, mega, etc...), em resumo nessa pasta será armazenado todos os jogos divididos por sistema.
Pasta SNAP, irá conter várias subpastas com as fotos/imagens/videos dos jogos de cada sistema.
Pasta SCRIPTS, nessa pasta serão colocados os códigos fonte de todos os scripts (AutoIT) utilizados, com
isso será fácil para localizar, modificar, adaptar conforme a necessidade
Pasta JOYTOKEY, nessa pasta contém o programa joytokey, que permite simular teclas através de
botões de joystick, esse programa foi escolhido porque trabalha muito bem em conjunto com o mame, e irá
facilitar bastante na construção dos scripts.
No pacote que irei posta o link logo abaixo, já irá se encarregar de criar uma parte da estrutura
mencionada, bastando escolher uma partição e descompactar. Mas antes disso vou explicar um pouco sobre as
alterações feitas no AdvanceMenu.
O pacote contém os primeiros arquivos para montagem, para ter a estrutura mencionada anteriormente
basta descompactá-lo em uma partição a seu gosto, com isso será criado uma pasta chamada "ARCADE" com
várias subpastas e os arquivos mencionados. Não esqueça: se for testar coloque uma rom de cada sistema na
pasta correta ou então altere a configuração "rompath" do emulador, o código fonte do script responsável por
controlar o mame está na pasta "SCRIPTS".
Depois de ter mencionado sobre os BEZEL, resolvi fazer um script para facilitar a criação deles, o
script (source-code, executável, outros ) podem ser baixados no link: - http://w14.easy-
share.com/1700234264.html (link off). Fornecendo os parâmetros solicitados pelo script, ele criará um bezel
para cada ROM que você tiver e necessitar do bezel.
Nesse ponto explicarei um pouco sobre as configurações usadas no “advmenu.rc”, joytokey e o script., isso
porque se você entender o conceito irá conseguir adicionar qualquer emulador, programa, jogo de pc, etc... no
AdvanceMenu, e o meu principal objetivo é incentivar o aprendizado, principalmente da linguagem de script AutoIT,
porque se você dominá-la conseguirá fazer muitas coisas de forma rápida e fácil.
Em primeiro lugar, se você editar o arquivo advmenu.rc com o bloco de notas, irá encontrar as seguintes
linhas que fazem com que seja adicionado o emulador mame.
#emulador mame
#***********************************************
emulator "ARCADE" generic ".\mame\aumame.exe" "%s"
emulator_roms "ARCADE" "..\jogos\outros"
emulator_roms_filter "ARCADE" "*.zip"
emulator_altss "ARCADE" "..\snap\arcade;..\mng"
ARCADE/preview snap
arcade/mode listarcade/sort name
emulator_attrib "ARCADE" missing exclude
#***********************************************
O joytokey, como já foi mencionado e como o próprio nome sugere, emula teclas a partir de botões de
joystick, no fórum já existe um tutorial a respeito então não vou explicar como ele funciona. Aqui vale apenas
informar como ele está sendo usado. Para isso, basta editar um dos scripts fornecidos e verificar a linha onde o
joytokey está sendo chamado. Se você reparar no script "aumame.au3" notará que é passado para o joytokey o
parâmetro "mame", que significa que ele deve carregar o arquivo de configuração que se encontra na pasta onde
se encontra o o joytokey com o nome "mame.cfg" - esse arquivo contém as configurações de teclas atribuídas a
cada botão do joystick.
E por fim os scripts, essa é a parte principal de todo o projeto, pois são eles que permitem a adição de
qualquer emulador ou programa e controlam como eles devem se comportar junto ao AdvanceMenu. Os scripts
usados no projeto usam a linguagem de script AutoIT. A grande vantagem desses scripts é que eles podem ser
compilados transformando-se em arquivos executáveis sem a necessidade de arquivos extras ( DLLs ), simples de
distribuir e de fácil aprendizado - e o melhor de tudo é grátis. Essa linguagem pode ser encontrada no site dos
autores http://www.autoitscript.com/autoit3/scite/. O AutoIT é o compilador e interpretador em si, e o
SciTE4AutoIt3, que contém uma interface gráfica e um arquivo de ajuda muito bem organizado e com muito
exemplos práticos, é o editor de script para o AutoIT. Fora isto, você pode se cadastrar no fórum onde tem
centenas de exemplos prontos para serem compilados e usados.
O próximo emulador a ser inserido será o ZINC.EXE. Para quem não conhece, é o melhor emulador para
as placas arcades baseadas no playstation 1 (o mame também emula esses jogos mas como ele não usa
aceleração 3D os jogos ficam lentos ou para rodar numa velocidade razoável é necessário um processador muito
potente)
A imagem abaixo mostra alguns jogos emulados por ele:
O script que irá controlar o ZINC segue a mesma linha do "aumame.au3", com umas pequenas
modificações veja as diferenças:
Para rodar um jogo no ZINC é necessário passar o número do jogo e não o nome da rom como no
mame.
Os botões usados pelo ZINC são diferentes dos usados no Mame, assim foi feito um novo CFG
(arquivo de configuração) para o Joytokey simular o modo de botões do Mame no ZINC.
Alguns jogos do ZINC (por exemplo: Tekken ) precisam do arquivo "pr1data.8k", que deve estar em
"C:\", caso contrário o jogo não rodará. Assim, o script irá se encarregar de verificar e copiar esse
arquivo para o local correto caso precise.
O som emulado pelo ZINC é muito mais alto que no Mame. Para corrigir esta distorção foi adicionado
uma função que regulará o som conforme o jogo chamado. Para isto, basta editar o arquivo
"auZinc.ini" e na opção "volume" colocar o valor correto para cada jogo (de 1 até 24). Quanto maior o
valor mais baixo será o som, então, para testar abra um jogo no Mame, veja como está o volume do
som. Depois, abra o jogo no ZINC e observe o volume do som: caso o volume esteja muito alto, então
edite o arquivo "auZinc.ini" e aumente o valor da opção "VOLUME". Pelos meus, teste os jogos que
tem uma diferença muito alta em relação ao Mame são os jogos da Capcom (Street fighter EX, etc...),
já os "Tekken" tem volume similar ao Mame, podendo então ficar com a opção "VOLUME=1" e os
"Streets..." com "VOLUME=12" ou mais.
Para quem não está acostumado com o ZINC, ele usa um arquivo de configuração que contém as linhas
de comandos a serem passadas para ele. O uso do scripts facilita bastante, porque as linhas de comandos são
grandes e dessa forma só seá necessário passar ao emulador a localização do arquivo de configuração "--use-
config-file=.\config.cfg".
Esta linha já foi inserida no script, então para alterar alguma coisa basta editar o arquivo "config.cfg" que
está na pasta do ZINC - por exemplo: aqui eu uso o seguinte caminho para as roms ".\arcade\jogos\zinc10",
então se você editar o arquivo mencionado irá encontrar esse parâmetro, e caso use uma pasta diferente você
deve editar arquivo “config.cfg” e indicar o caminho correto. O mesmo se aplica a resolução de vídeo o arquivo
responsável por controlar é o "renderer.cfg".
Para adicionar ZINC ao AdvanceMenu, insira as seguintes linhas no advmenu.rc:
advancemenu.rc
#emulador zinc
#***********************************************
emulator "ZINC3D" generic ".\zinc\auzinc.exe" "%s"
emulator_roms "ZINC3D" "..\jogos\zinc10"
emulator_altss "ZINC3D" "..\snap\zinc10;..\mng"
#***********************************************
ZINC3D/preview snap
zinc3d/mode list
zinc3d/sort name
emulator_attrib "ZINC3D" missing exclude
Como você pode ver, as opções são praticamente idênticas ao do Mame, mudando apenas o nome do
executável e o nome das pastas onde se localiza as roms e imagens.
O novo pacote contém a mesma estrutura de pasta do anterior, então basta descompactar na mesma
unidade do pacote anterior e os novos arquivos serão copiados para as pastas corretas ( isso se você estiver
seguindo o esquema de pasta mencionado ), nesse pacote contém somente os novos arquivos:
Com esse segundo pacote eu creio que ficou mais fácil de se entender como funciona a adição de novos
emuladores no AdvanceMenu, ou seja, basta dar um apelido para o novo emulador e configurar as opções de
localização do executável do novo emulador, localização das roms e localização das fotos e estando no
AdvanceMenu basta usar a tecla [ F6 ] ou o botão2 do joystick para alternar entre os emuladores instalados.
Assim, vou abrir mais um espaço para explicar mais algumas configurações úteis no AdvanceMenu que
ajudará na organização da lista de jogos e facilitar a manutenção.
O advanceMenu trabalha com o esquema de organização dos jogos baseado em "GRUPOS" e "TIPOS",
Ao editar o arquivo "advmenu.rc" poderemos encontrar as seguintes linhas:
Estas linhas informam ao AdvanceMenu que ele deve criar na entrada do "MENU" 3 grupos com os nomes
mencionados entre as aspas, isso servirá para que possamos adicionar ou remover jogos de uma forma rápida e
simples.
O grupo "<MULTIJOGOS>" é criado por padrão e qualquer jogo que não pertencer a esse grupo não será
mostrado na lista. Isto é útil na seguinte situação: na lista de jogos do ZINC irão aparecer alguns nomes que não
são jogos e sim as bios necessárias para o jogo carregar ( atluspsx, cpzn1, cpzn2, etc... ), assim, para que esses
nomes não sejam mostrados na lista junto com os jogos, vamos relacionar os arquivos de bios a um grupo
diferente dos jogos, para isso basta posicionar a seleção em cima do nome da bios na lista de jogos e teclar [ F9 ].
Com isso irá abrir o menu de "GRUPOS" e então selecionar o grupo "BIOS" e teclar [ ENTER ], com isso o jogo
selecionado, ou seja a bios, agora fará parte deste grupo e, como ele está marcado para não ser exibido, o
AdvanceMenu irá retirá-lo da lista de jogos.
Esse método pode ser aplicado para qualquer jogo que você não queira que apareça no menu de seleção
da multijogos. Para efeito de organização, foi criado o grupo "REMOVIDOS" que poder ser utilizado para colocar
os jogos que você queira tirar da lista principal, em resumo a organização dos jogos irão ficar assim:
A opção no AdvanceMenu que controla os grupos que devem ser mostrados ou não chama-se
"group_include". Levando-se em conta os exemplos mostrados acima, bastaria ter a seguinte opção no arquivo
"advmenu.rc" para mostrar uma lista com os jogos pertencentes ao grupo "<MULTIJOGOS>":
group_include "<MULTIJOGOS>"
Com isso, todos os jogos pertencentes a outros grupos não serão mostrados, e para fazer ao contrário, ou
seja, pegar um jogo removido e retorná-lo ao grupo "<MULTIJOGOS>" , basta teclar [ F2 ] e adicionar o grupo a
lista.
Quando você adiciona um jogo a um grupo diferente do grupo "<MULTIJOGOS>" o AdvanceMenu irá
gravar dentro do "advmenu.rc" uma linha indicando a alteração, a linha será algo semelhante há:
Esse é o final da adição de emuladores para arcade, lembrando que você pode adicionar quantos você
quiser e o emulador que mais lhe agradar. Assim, ao invés de usar somente o Mame você poderia usar o Final
Burn Alpha (FBA), Nebula, Kawaks, Raine, etc. para rodar os jogos da capcom e neogeo, vistos que esses
emuladores são bem mais leves que o Mame, e para isso volto a insistir no aprendizado dos "Scripts" porque com
eles você poderá colocar qualquer um, mesmo que o emulador escolhido não trabalhe via linha de comando como
o Mame.
Um exemplo é que eu uso por enquanto o emulador "EMULATOR.EXE" do "Elsemi" para rodar os jogos
de "CPS3" ao invés do mame, obviamente quanto menos emulador menos trabalho você terá, mas como os scripts
são fáceis de se ajustar conforme as atualizações dos emuladores, você terá somente trabalho na primeira vez. O
último emulador que irei adicionar para encerrar mais essa parte do tutorial será o emulador de super nintendo
"Zsnesw", isso para demonstrar como o AdvanceMenu tratará as fichas e como um script controlará o tempo,
fazendo com que o emulador seja fechado quando o tempo dessa ficha for atingido.
Esse é o último emulador que será adicionado nesse tutorial, com isso demonstraremos a capacidade do
AdvanceMenu para tratar uma ficha como tempo e vice-versa.
Com a adição desse emulador, serão mostradas novas funções no script e um parâmetro ainda não
mencionado no "advmenu.rc", mais precisamente falaremos das macros para exibição dos jogos na lista do
AdvanceMenu.
advancemenu.rc
#emulador SUPER NINTENDO
#***********************************************
emulator "SUPERNES" generic ".\Zsnesw\ausnes.exe" "%p"
emulator_roms "SUPERNES" "..\jogos\RomsSnes"
emulator_altss "SUPERNES" "..\snap\SuperNes"
#***********************************************
Nessa configuração a única coisa a se destacar em relação as anteriores é em relação a macro "%P". Se
você revisar as configurações anteriores, irá perceber que em todas foi usada a macro "%S". Essas macros tem o
seguinte significado para o AdvanceMenu:
"%S" , passa para o script somente o nome da rom, por exemplo kof2002.
"%F", passa para o script o nome e a extensão da rom, exemplo kof2002.zip.
"%P", passa para o script o caminho completo mais o nome e a extensão da rom, exemplo
"c:\arcade\jogos\neogeo\kof2002.zip"
O uso de uma ou outra irá depender de como o script foi escrito e de como o emulador recebe a linha de
comando. No caso do "Zsnesw" eu escolhi a macro "%P" para facilitar a escrita do script, para não ter que
configurar o path do emulador e para demonstrar e explicar para que serve essas macros.
Se você obervar a imagem acima, verá o AdvanceMenu mostrando "TEMPO 00:09:02" (nove minutos e
dois segundos) e caso você mude para um emulador “Arcade” o AdvanceMenu mostrará "FICHAS 00", que
significa que o tempo mostrado não é suficiente para uma ficha, porque foi configurado que cada ficha vale 10
minutos (você pode alterar esse valor editando o arquivo "advmenu.ini", alterando o valor do campo
"TEMPOPORFICHA=600000" - lembre-se!!! 1 segundo=1000ms, 1 minuto=60000ms ). Caso seja depositada
mais uma ficha, então no modo “arcade’ será mostrado "FICHAS 01", e se voltar para o modo “VideoGame” será
mostrado "TEMPO 00:19:02". Ainda, se o menu não estiver bloqueado e não tiver nenhuma ficha, o script irá emitir
uma menssagem avisando que o você poderá ver esse jogo por um período de 30 segundos, e caso não deposite
uma ficha nesse período o script fechará o emulador.
Nesse script são demonstradas novas funções que se encarregam de controlar o tempo, avisar ao usuário
quando o tempo está acabando e fechar o emulador caso o tempo da ficha se esgote. Com pequenos ajustes
nesse script será possível adicionar qualquer outro emulador de vídeogame no AdvanceMenu, trabalhando de
forma semelhante ao demonstrado no Zsnesw.
O pacote para esse último emulador segue o mesmo padrão dos anteriores, ou seja é só descompactar na
unidade onde se encontram os outros arquivos já baixados.
OBS: enquanto eu testava esse último emulador encontrei um "erro" no AdvanceMenu que fazia com que
ele não mostra-se o tempo correto no modo vídeogame, então nesse pacote está indo a versão do advmenu.exe
corrigida. Abaixo segue o link do pacote com o advmenu (corrigido), emulador Zsnesw, script, outros arquivos
utilizados. Tamanho: 2MB:
Antes de encerrar essa parte sobre a adição de emuladores, vou explicar sobre o formato da lista de jogos
(arcade.lst, neogeo.lst, etc...), isso será útil caso você queira adicionar músicas ao AdvanceMenu, transformando-o
em uma jukebox ou Karaoke.
Exemplo de um arquivo LST
game ( name pacman description "Pac-Man (Midway)" manufacturer "[Namco] (Midway license)" year 1980 )
game ( name puckman description "PuckMan (Japan set 1, Probably Bootleg)" manufacturer "Namco" year 1980
cloneof pacman )
game ( name puckmana description "PuckMan (Japan set 2)" manufacturer "Namco" year 1980 cloneof pacman )
Nesta lista, os dados obrigatórios são: game, name e description, o restante pode ou não ser
adicionados. Com o exemplo acima poderíamos criar uma lista usando a opção "cloneof", para montar uma
jukebox ou karaokê, e organizar essa lista usando o nome do álbum como destaque e as músicas como sendo
clones desse álbum, então teríamos algo parecido com isso:
game ( name 4 description "Roberto carlos 1981" manufacturer "BMG" year 1981 )
game ( name 5 description "Musica 1" manufacturer "BMG" year 1981 cloneof 4)
game ( name 6 description "Musica 2" manufacturer "BMG" year 1981 cloneof 4)
game ( name 7 description "Roberto carlos 1982" manufacturer "BMG" year 1982 )
game ( name 8 description "Musica 1" manufacturer "BMG" year 1982 cloneof 7)
game ( name 9 description "Musica 2" manufacturer "BMG" year 1982 cloneof 7)
game ( name 10 description "Roberto carlos 1983" manufacturer "BMG" year 1983 )
game ( name 11 description "Musica 1" manufacturer "BMG" year 1983 cloneof 10)
game ( name 12 description "Musica 2" manufacturer "BMG" year 1983 cloneof 10)
game ( name 13 description "Roberto carlos 1984" manufacturer "BMG" year 1984 )
game ( name 14 description "Musica 1" manufacturer "BMG" year 1984 cloneof 13)
game ( name 15 description "Musica 2" manufacturer "BMG" year 1984 cloneof 13)
Repare que o primeiro item da lista não contém a palavra "cloneof", dessa forma ele será tratado com
um item principal (nome do álbum), e os 2 itens outros itens com a opção "cloneof 1" indica ao advanceMenu
que esses 2 itens (músicas) são clones do item 1.
Para esse exemplo eu pequei algumas músicas e renomeei para 1.mp3, 2.mp3, 3.mp3, etc..., e para
cada item principal que representa um álbum eu coloquei uma imagem com os nomes 1.png, 4.png, 7.png,
etc..., com isso a lista poderá ficar com os seguintes aspectos:
Ou assim:
Repare que nos dois exemplos de formatação da lista os itens estão agrupados, ou seja, é mostrado o
nome do álbum e em seguida as músicas pertencentes a esse álbum. Para controlar a jukebox. ou o karaokê, pode
ser usado um script ou, caso o player suporte linha de comando, pode ser usado diretamente no "advmenu.rc".
Com esse último exemplo encerra-se a parte desse tutorial que demonstra como adicionar emuladores e
outros programas no advanceMenu, a próxima etapa do tutorial será voltada a explicar como fazer a imagem ser
mostrada em um monitor arcade ( 15Khz ), mas lembre-se que embora seja importante a parte do monitor e dos
controles, elas não se comparam a parte anterior, principalmente em relação aos scripts, pois como já mencionei o
ideal é você se focar neles e com isso colocar o que desejar em sua montagem.
TERCEIRA PARTE
Nessa parte mostrarei os métodos que eu conheço para fazer a imagem da placa de vídeo ser mostrada
em um monitor arcade. Essa sempre foi uma grande barreira, dependendo da placa de vídeo utilizada.
O problema reside no fato da placa de vídeo emitir uma freqüência horizontal de no mínimo 31.5Khz
enquanto um monitor arcade só aceita uma freqüência de aproximadamente 15.7Khz. Ainda, a placa de vídeo usa
dois canais para enviar os sinais de freqüências (horizontal, vertical) e o monitor arcade tem somente uma entrada,
ou seja, os sinais de sincronismos tem que ser compostos. Esse último fato não é tão problemático, pois para
obtermos o sinal composto bastaria unir os dois fios (vertical, horizontal) e teríamos o sinal composto. Embora
funcione, existe um circuito muito simples de se fazer que faz esse serviço de uma forma mais elegante. Esse
circuito é o mesmo usado nas "plaquinhas jammas" usadas nas multijogos, o circuito foi desenha originalmente
por "Tomi Engdahj" - o site oficial é "http://www.epanorama.net/circuits/vga2tv/circuit.html", abaixo o desenho
do esquema:
Nesse esquema é mostrado uma saída para um conector "SCART" – padrão de conector para TV
europeu, mas para nos monitores arcades só são usadas as saídas que estão conectadas aos pinos (15, 11, 7,
20) do lado direito da imagem. Abaixo é mostrada a imagem desse circuito impresso.
Figura 23 – Desenho da placa para sincronismo composto.
Todos os componentes são fáceis de se encontrar e são bem baratos, de uma olhada no site
mencionado acima e veja a lista de componentes.
Além do circuito mostrado acima, que somente faz a junção dos sinais vertical e horizontal, precisaremos
ainda de um meio para reduzir a freqüência horizontal de 31.5KHZ para a freqüência suportada pelo monitor
árcade, que é 15.7KHZ. Para isso existem vários meios e nesse tutorial vou citar apenas dois que abrangerão a
maioria das placas de vídeos usadas e são fáceis de se fazer.
O primeiro trata-se de um software chamado "powerstrip" ( http://www.entechtaiwan.com/ps.htm ) Ele
possui muitas funções, mas a principal - e a que nos interessa, é a parte que permite criar uma resolução que o
monitor arcade consiga trabalhar. Esse software tem uma compatibilidade com centenas de placas de vídeo e
suporte para vários sistemas operacionais (até os 64bits), e com meia dúzia de cliques você já conseguirá uma
freqüência de 15.7KHZ.
Neste tutorial não vou descrever como configurá-lo, porque no site do fabricante já existe um tutorial
explicando com detalhes o processo encontrado na sessão tutorial.
O segundo é dirigido somente para placas de vídeo da NVIDEA. Para essas placas temos dois métodos
de realizar a conversão da freqüência: a primeira é através do próprio software da nvidea que permite isso, para
um tutorial completo de como realizar essa configuração acesse o excelente site do Marcianitos
(http://www.marcianitos.org/tutoriales/VD017.php). O outro método trata-se de um software que faz alterações no
registro do Windows de modo a gerar a freqüência de 15.7 KHZ, e se chama "soft15khz". Esse programa você
também irá encontrar no site do Marcianitos, em http://www.drupal.marcianitos.org/programas/soft15khz. No site
tem toda a descrição de como realizar as configurações - fora que você encontrará mais uma séries de utilitários,
tutoriais e muitas informações.
Como vocês podem ver, não há nada de extraordinário a ser feito em relação a parte de vídeo, a única
dificuldade é caso você tente fazer isso com vídeos onboard. Nesse caso a dificuldade é bem maior porque a
maioria dos softwares não dão suporte a esse tipo de vídeo. Então quando for montar sua máquina dê preferência
sempre por placas de vídeo offboard, sendo as melhores para esse tipo de montagem as da NVIDEA e ATI, na
mesma ordem. Para este tutorial eu utilizei uma nvidea FX5200, e todas métodos mencionados funcionam
perfeitamente com essa placa. Uma outra coisa que você pode dar preferência são para placas de vídeo que
tenham saída para tv, pois assim enquanto você prepara e testa a parte do frontend e os emuladores você poderá
ver o resultado final na tela da TV de forma mais ou menos de como verá na tela do monitor arcade ( geralmente a
qualidade obtida nos monitores arcades são bem melhores).
3.1.1 - Configurando placas Nvidia para gerar imagens compatíveis com o monitor arcade.
Importante!!!
Verifique se o seu driver atual possui as opções aqui mostradas, caso contrário baixe essa
versão na pagina da Nnvidia ( http://www.nvidia.com/page/home.html ) na sessão de downloads.
Observação: na página de download, em Product Type informe GForce, em Product Series
informe GForce 4 MX Series, em Operation System informe Windows XP e em Language
English (US). Se não fizer assim, somente serão mostrados os drivers mais recentes e esses
não possuem as mesmas opções mostrada nesse tutorial.
A instalação do driver não tem nada de novo, basta seguir os passos e ir confirmando as opções
padrões. Com o driver instalado e funcionando, iremos abrir o painel de controle da Nvidia, esse painel pode ser
acessado pelo Painel de `Controle do Windows, pelo ícone da nvidia que se encontra ao lado do relógio na
barra de tarefa ou ainda clicando com o botão direito do mouse no desktop e selecionando a opção "Nvidia
Control Panel".
Ao abrirmos o " Nvidia Control Panel " pela primeira vez será mostrado a seguinte tela:
Para termos as opções que precisamos alterar disponíveis é necessário alterar o modo como o " Nvidia
Control Panel" é mostrado. Para isso vá no menu "View" e clique na opção "Use classic NVIDIA control
Panel...", como mostrado na imagem abaixo.
Figura 26 – Alterando o modo de visualização do Nvidia Control Panel.
Feito isso o programa irá perguntar se realmente deseja usar o modo escolhido, basta confirmar
clicando no botão "OK", e ao fazer isso o “Nvidia Control Panel” será fechado. Agora poderemos acessá-lo
pelo ícone de "display/video" no Painel de Controle do Windows.....
Figura 28 – Abrindo o Nvidia Control Panel clicando com o botão direito no dektop.
Figura 29 – Abrindo o Nvidia Control Panel clicando com o botão direito no dektop 2.
E por fim a aba "Geforce FX5200", ou outro modelo caso não esteja usando o mesmo.
Figura 30 – Nvidia Control Panel GForce FX 5200.
Os dados que são mostrados nessa janela dependerão da resolução atual que você está usando.
Observe que nesse momento estou usando a resolução 1024x768x32 há 60hz, mas isso não tem importância
pois iremos reconfigurar todos os parâmetros para gerar a sincronia de 15Khz.
Na janela a direita iremos clicar no botão "Advanced Timing", ao clicarmos pela primeira vez o "Nvidia
Control Panel" irá mostrar uma janela com várias recomendações, você deverá percorrê-la até o fim para que o
botão "Agree /aceitar" seja habilitado e que, ao clicá-lo, teremos a janela para configurar a freqüência da placa
de video:
Agora iremos alterar alguns parâmetros para demonstrar como gerar a freqüência de 15KHZ. Observe
na imagem acima os itens relacionados em vermelho. Eles correspondem à minha configuração atual
(1024x768x32 a 60 KHZ). Vamos alterar todas as opções para que fique igual a imagem abaixo.
Figura 33 – Tela Advance Timing do Nvidia Control Panel com alterações.
Feitas as alterações, você perceberá que o principal foi atingido, ou seja a freqüência horizontal de
15Khz.
Repare que as áreas em vermelhas apontam as alterações ocorridas, para você ver a diferença
desmarque a caixa "interlaced mode" e compare com os valores atuais mostrados, você verá que esses
valores são o dobro, e ao marcar novamente a caixa "interlaced mode" verá que os valores apontados pelas
setas voltaram a ter os sinais de freqüência divididos pela metade - e esse é o sinal que o monitor arcade
reconhece.
ATENÇÃO!!!
Isso foi somente um teste para demonstrar onde e como alterar os parâmetros. Caso você
esteja usando uma resolução maior que 640x480 e fizer essas alterações e clicar em
"Apply/aplicar", funcionará, mas o desktop irá continuar com a resolução anterior e certas
partes do desktop ficarão escondidas e só aparecerão caso você passe o mouse pelas áreas
escondidas (o chamado rolamento de tela). Isso porque o "Nvidia Contro Panel" altera a
resolução selecionada, então caso faça algo errado ou queira retornar a configuração original
você terá que selecioná-la e clicar no botão "Remove".
Agora alteraremos a resolução para que fique no modo correto. O primeiro passo é alterar a resolução
para 640x480x32. Isso é necessário pois como mencionei o " Nvidia Contro Panel " altera a resolução escolhida,
então caso você esteja na janela mostrada acima clique em "Cancel" para retornar à janela anterior:
Nessa janela use o botão deslizante e deixe a resolução como mencionado "640x480x32 60Hertz" e clique
em "apply/aplicar".
Figura 34 –Alterando a Resolução de Vídeo no Nvidia Control Panel.
Com isso o seu desktop irá para a resolução informada e o botão "Advanced Timing" será habilitado
novamente, então clique nele e faça agora as alterações como foram mostradas anteriormente ou seja:
Figura 35 – Tela Advance Timing do Nvidia Control Panel com as alterações para obtermos 15KHZ.
Deixando as opções como são mostrados na imagem acima a placa de vídeo estará pronta para enviar a
imagem correta para o monitor arcade.
Neste ponto abro uma observação muito importante: você terá que estar com o monitor arcade por perto e
pronto para trocar o cabo do "monitor de pc" pelo do "monitor arcade", porque ao pressionar o botão "Apply" o
Windows mostrará uma caixa de mensagem com um botão "Ok" informando que será aplicado a nova resolução e,
ao clicar no botão "Ok" você terá 15 segundos para confirmar se a resolução escolhida está funcionando
corretamente e caso você não confirme a resolução anterior será restaurada, mas esta mensagem só poderá ser
vista no "monitor arcade". No momento em que você clicar no botão "Ok" na caixa de mensagem, a imagem do
seu monitor de pc sumirá, porque a freqüência gerada é muito baixa para ele - um monitor de pc geralmente
precisa de pelo menos os 31Khz para funcionar corretamente.
Se os procedimentos foram feitos corretamente então agora você deverá estar vendo o seu desktop no
monitor árcade (que, diferente da TV, nele você tem condições de ler toda a tela, as letras não ficam embaçadas e
ao rodar um jogo ou filme irá ver a qualidade muito superior ao da TV). A imagem abaixo mostra o meu desktop no
monitor arcade (eletrocyan 21 polegadas), com o media player aberto rodando o "Iron Man"- a qualidade da foto
não acompanha a qualidade gerada pelo monitor arcade, mas mesmo assim da pra ter uma idéia só pelas letras
que são totalmente legíveis.
Dica: Ainda no "Nvidia Control Panel" tem outras opções que você pode usar para centralizar a imagem
caso ela não fique centralizada no monitor e uma que eu costumo habilitar (não sei se é impressão minha mas
melhora ainda mais a imagem) a opção "Enable doublescan for lower resolution mode". Esta opção está no
menu "Display mode Timing", veja a opção na imagem abaixo:
Figura 37 – Habilitando a opçãp "Enable doublescan for lower resolution mode.
E para ajustar o posicionamento da tela, use a opção "Screen Adjustment" e clique nas setinhas verdes
para posicionar o desktop:
Se você executar algum programa que mude a resolução atual, o monitor arcade perderá o sincronismo,
assim, garanta que os programas que serão executados na multijogos não alterem a resolução do monitor. Como o
objetivo principal será rodar os jogos arcades, de videogame, de pc ou assistir um vídeo, isso não será problema,
pois geralmente todos eles têm suporte a essa resolução.
Dois outros programas que permitem fazer esses mesmos ajustes são o "powerstrip" e o "soft15khz",
sendo o primeiro pago (comercial) e o segundo gratuito. O “powerstrip” é muito poderoso quando se trata de
manipular as freqüências de vídeo, entre outras funcionalidades, tendo suporte a uma infinidade de placas e
modelos, o único inconveniente é que ele pode gerar problemas quando uma aplicação usa a aceleração de
hardware (Directx). O "soft15khz", por outro lado, também é perfeito para fazer essa modificação e além de fazer
o que foi mostrado, ele permite de uma forma mais fácil adicionar novas resoluções com a freqüência de 15khz. O
soft15khz, diferente do powerstrip, trabalha com poucas placas de vídeo tendo um suporte bom para Nvidia, Ati e
Matrox.
Esse tutorial foi baseado nas informações e dicas do site http://www.marcianitos.org, sendo deles todos
os méritos pelas informações aqui descritas e por esse excelente software que permite tal façanha, que pode ser
encontrado no site http://entechtaiwan.net.
Embora testado não me responsabilizo por qualquer dano que possa ocorrer, então antes de começar leia
todo o tutorial, visite os sites citados, participe dos fóruns que falam sobre o assunto e tire todas as
duvidas antes de por em pratica. (outro ponto é não leve em consideração o assassinato do português:)
Este tutorial aplica-se as placas de vídeo ATI e NVIDIA, podendo funcionar em outras que não sejam
onboard. O PowerStrip não dá suporte para placas onboard (pelo menos até onde eu já tenha testado), para
qualquer duvida visite o site http://www.marcianitos.org e tiras as dúvidas.
O começo desse tutorial, leva em conta que você já tenha instalado PowerStrip seguindo as opções
padrões de instalação, se isso foi feito, após ter terminado a instalação o PowerStrip perguntará se deseja reiniciar
o PC e em caso afirmativo, na próxima vez que o sistema operacional iniciar será mostrado a seguinte mensagem:
Mais uma vez basta clicar em “OK”. A próxima tela a ser exibida será a de “tips”, ou seja, dicas.
Agora vamos começar a configuração. Para isso, clique com o botão direito do mouse no ícone do
PowerStrip, que se encontra no “system tray”, no canto inferior a direita perto do relógio do Windows. O símbolo
dele é um monitor com um arco-íris:
Navegue nesse menu e escolha “Display profiles” e na janela ao lado clique em “Configure...”, isso abrirá
uma janela mostrando as configurações da placa de vídeo e monitor assim:
As informações mostradas nessa janela irão variar dependendo do monitor e placa de vídeo a ser usada,
mas isso não tem importância.
Nesse momento vou abrir um espaço, para mostrar como salvar as configurações, ou melhor, os tais
“Profiles”. Isto será de extrema importância, pois com eles você poderá alterar as configurações de vídeo usando
combinação de teclas, facilitando alterarar de um monitor de PC para o monitor árcade. Então vamos lá:
Com a janela “Display Profiles”aberta, clique em “Save as...” e irá abrir uma nova janela para ser digitado
o nome para esse “Profile”.
O próximo passo será atribuir uma seqüência de teclas para ativar essa resolução, que são chamadas de
“Hot Keys”. Com isso você poderá alternar entre várias resoluções com um simples apertar de teclas. Para isso,
clique na imagem do botão “Hotkey Mannager” que fica entre a caixa de rolagem e o botão “Save as...”, com isso
irá abrir essa janela:
Para atribuirmos as teclas de atalho para nosso “Profile”, basta clicar na caixa de rolagem onde está
escrito “Functions and profiles”, e localizar nosso profile criado (obs: os profiles recentemente criados geralmente
ficam no final da lista). Com nosso profile selecionado, basta selecionar agora a seqüência de teclas que irá ativá-
lo. Repare que eu usei “CTRL+ALT+F3”, para ativar o profile “Monitor PC 800x600x32”. Agora clique em “Add
binding” e o nosso “HotKey” estará pronto para ser usado. Clique em “Close” para fechar essa janela.
OBS: grave bem os passos acima, pois serão utilizados posteriormente para criarmos um novo “Profile” e
um novo “Hotkey” para a resolução “Monitor Arcade”, e podem ser utilizado também para adicionar qualquer outra
resolução que desejar (veja na lista que eu criei 3 resoluções diferentes 2 para monitor de pc e uma para o monitor
arcade).
Agora que já sabemos como criar nossos “Profiles” e “Hotkeys”, vamos ao que interessa: criar uma
resolução para funcionar no monitor arcade. Para isso, na janela “Display Profiles” clique no botão “Advanced
timing options...”, deverá abrir a seguinte janela:
Figura 48 – Tela Advance timing options.
Agora clique no botão “Custom resolutions”, e deverá aparecer essa nova janela:
Na caixa de rolagem à esquerda, selecione a resolução “640x480i (Arcade)” (geralmente é a ultima opção
na caixa de rolagem). Agora teremos outro passo muito importante, pois a maioria se enrola nesse ponto: repare
como essa janela irá ficar após ter selecionado a resolução “640x480i (Arcade)”.
Feito isso aparecerá a caixa de mensagem abaixo, perguntando se você deseja desativar o “Tiling”, então
clique em “Yes”.
Agora aparecerá uma mensagem perguntando se deseja reiniciar o computador. Responda “Yes” e deixe o
PC reiniciar. Quando o PowerStrip for iniciado novamente ele poderá usar o tal “Tiling”, que permite o
entrelaçamento da imagem - essa opção que permite que o PowerStrip sincronizar a resolução 640x480 a 15Khz
para o nosso monitor arcade.
Agora vamos adicionar a resolução para o monitor “ARCADE”. Powerstrip carregado clique com o botão
direito no ícone que se encontra no “system tray”:
Navegue até a opção “Display Profiles” e na janela ao lado clique em “Configure...”, agora na janela
“Display Profiles
Figura 52 – Tela Display profiles.
Nessa janela clique em “Advanced timing options”, e a próxima janela se abrirá.
Clique em “Custom resolutions...” e na próxima janela selecione a resolução “640x480i(Arcade)” que está
no final da caixa de lista.
Figura 54 – Tela custom resolutions.
Feito isso clique em “Add new resolution”, o monitor irá dar uma piscada e aparecera uma caixa
mensagem informando que a placa de vídeo aceitou a configuração e se você deseja testá-la.
ATENÇÃO
Ao clicar em “Yes” para confirmar, o Powerstrip aplicará essa resolução, fazendo com que o
monitor de PC seja desligado. Nesse momento você deve conectar o cabo de vídeo do monitor
arcade, pois o PowerStrip aguardará em torno de 10 segundos. para que você confirme se a
resolução escolhida está funcionando corretamente e caso você não confirme a resolução
anterior será restaurada, mas esta mensagem só poderá ser vista no "monitor árcade, pois a a
freqüência gerada é muito baixa para o monitor de PC - um monitor de PC geralmente precisa
de pelo menos os 31Khz para funcionar corretamente.
1º Verifique se o foco da caixa de mensagem está no botão “OK” (o botão fica com o contorno diferente) e
caso não esteja, aperte a tecla TAB uma vez para alterar o foco para o botão “OK”;
2º Troque o cabo de vídeo do monitor de PC para o monitor arcade;
3º Aperte a tecla ENTER no teclado
Se os passos foram seguidos corretamente, então agora você deve estar vendo o seu desktop no monitor
arcade. Se a imagem ficar tremida utilize a janela “Advanced timing options” para fazer ajustes mais precisos
(observação: geralmente só é nescessário dar um pequeno ajuste no “Refresh rate” deixando ele em torno de
29.000 hz).
Agora basta criarmos um novo profile para resolução arcade. Na janela “Display Profiles”, clique em “Save
as...” e salve esse “profile’ com o nome de “Monitor Arcade” assim:
Figura 55 – Tela para salvar profile.
Como já foi explicado antes, agora clique no botão “HotKey Mannager”, navegue na caixa de rolagem e
selecione o profile que acabamos de criar “Monitor Arcade”, e com ele selecionado escolha as teclas para o hotkey
(eu usei CRTL+ALT+F5), agora é só confirmar clicando em “Add binding”, a janela deve ficar parecida com essa:
Se tudo ocorreu bem, agora você terá duas seqüências de teclas para alternar entre o monitor de PC e o
de árcade, que são:
CTRL+ALT+F3 = MONITOR PC.
CTRL+ALT+F5 = MONITOR ARCADE.
Sequindo os passos descritos em “Profiles” e “Hotkeys”, você pode adicionar quantas resoluções achar
necessárias.
Essa é outra parte muito simples. Na internet você irá encontrar vários esquemas para montar um
amplificador de som, ou caso queira algo mais simples basta desmontar uma caixinha de som e usar o
amplificador dela. Aqui vou mostrar um bem simples que também é usado em muitas "plaquinhas jammas", o
esquema mostrado abaixo pode ser encontrado no site "http://www.mameworld.net/pc2jamma/hardware.html".
Figura 57 – Desenho da placa para sincronismo composto.
Quando visitamos sites relacionados ao assunto o que mais vemos são dúvidas em relação a qual seria o
melhor tipo de controle a ser usado, visto existirem vários métodos que podem ser utilizados. Na minha opinião, o
mais fácil, rápido e barato é o uso de joysticks que podem ser tanto os adaptados a porta paralela quanto os USB.
Segundo um artigo que eu li, os USB levam uma vantagem em relação aos adaptados para a porta
paralela porque possuem o seu próprio controlador e os adaptados necessitam que o processador faça o trabalho.
Embora concorde com esse artigo, eu já fiz uns testes e não notei diferença alguma, mas fica ai um alerta.
A "plaquinha jamma" que aparece no inicio do tutorial é a que eu uso. Ela simula até 4 controles de
supernintendo, é adaptada a porta paralela e funciona perfeitamente sem delays – atraso entre o apertar a tecla e
a execução do comando. O esquema de montagem desse tipo de controle pode ser encontrado no fórum, na
sessão tutoriais. Mas a forma mais fácil de se fazer os controles é desmontando um joystick de playstation e
soldando os fios diretamente nos micros dos botões árcade. Este método é super simples, rápido e muito barato -
aqui em São Paulo esses controles são encontrados a um preço que vária de R$ 5,00 á R$ 10 no máximo. Então
caso algum venha a queimar a manutenção será rápida e barata.
Como você deve ter observado, para todos os emuladores eu usei o "joytokey" para simular teclas através
do joystick, e com isso não foi percebido nenhum tipo de incompatibilidade, esse esquema funcionará com
qualquer tipo de jogo independente do tipo de suporte que ele tenha ( teclado, mouse, joystick, etc...).
Talvez você se pergunte: mas e onde essa tão falada "placa jamma" se encaixa nessa história ? em
primeiro lugar, "jamma" é um padrão inventado pelos japoneses para facilitar e padronizar as placas de jogos,
com isso a cada nova placa de jogo que saia o dono dá máquina não precisa de manuais para saber onde cada
fio deveria ser encaixado.
Figura 58 – Definição dos pinos da placa jamma.
Em resumo, uma "plaquinha jamma" para multijogos simplesmente reúne os 3 circuitos mencionados
(junção de sincronismo, joystick, amplificador de som) e os disponibiliza no padrão jamma, ou seja, você pega a
"plaquinha jamma" e encaixa no chicote da maquina, isso serve somente para nível de organização e aparência,
e como já foi mencionado a "plaquinha jamma" é totalmente dispensável podendo tudo ser encaixado diretamente
na máquina.
Bom, isso é quase tudo!!! Falta agora somente fazer uns scripts que serão usados para fazer a manutenção
de uma forma automatizada, e um outro script que será usado para manipular as configurações de fichas, tempo,
bloqueio do menu, contador de fichas e iniciar o AdvanceMenu, que será colocado no lugar do "Explorer" para que
inicie junto com Windows.
Este script poderá ser utilizado no lugar do Explorer (recomendado) ou no "menu iniciar". Com isso, assim
que o Windows terminar a inicialização, o script será executado e dependendo da escolha carregará o
AdvanceMenu automaticamente.
Para adicionar esse script no "menu iniciar", basta criar um link e apontar o local onde se encontra o script
ou então adicionar uma entrada direto no registro do Windows – mais abaixo contém as entradas para realizar
essa tarefa. A melhor opção, ao meu ver, é usar o script no lugar do "exeplorer.exe", pois as vantagens são
enormes,: primeiro, será a economia de memória; segundo você terá um desktop "limpo" sem nenhum ícone
visível, e caso precise usar algum programa do Windows, basta teclar "CTRL+ALT+DEL" que será mostrado a
janela do "Gerenciador de Tarefas do Windows" e a partir dele é possível acessar tudo.
Essas são as entradas de registro que poderão ser alteradas ou adicionadas - se quiser testar basta
copiar o conteúdo desse bloco e colar no "notepad" e depois salvar esse arquivo com a extensão ".reg" e depois
dar um duplo clique no arquivo ".reg" criado para as entradas serem adicionadas ao registro.
Entradas do Registro
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"BRarcade"="d:\arcade\BRarcade.exe"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"Shell"="d:\arcade\BRarcade.exe"
Repare no caminho que está sendo apontado "d:\arcade\BRarcade.exe", caso você esteja usando um
caminho diferente então corrija para o caminho correto onde se encontra o script "BRarcade.exe".
Assim que o script iniciar será mostrado um contador em contagem regressiva, iniciando em "5", e quando
o contador zerar o AdvanceMenu será inicializado. Caso você pressione o "botão10" do joystick antes do contador
terminar será mostrada a janela de configuração, que permite alterar os valores de fichas, zerar fichas, zerar
contador, bloquear ou desbloquear o menu. Para navegar pelas configurações usa-se o direcional do joystick
(cima = aumenta o valor; baixo = diminuí o valor; direita = vai para o próximo item; botão1 = aciona o botão
selecionado ( ZERAR, SALVAR ou SAIR ), ao selecionar o botão [SAIR] , o script irá chamar o AdvanceMenu e
depois será encerrado.
Para que tudo funcione como o descrito acima foi criado mais um ".CFG" para o "joytokey" com o nome
de "brmenu.cfg". Nesse novo script são mostrados várias funções novas que podem ser exploradas para que
tenha um visual diferente, toque música ou exiba um logo-tipo na inicialização, isso só irá depender da sua
criatividade.
Link para download do pacote com o novo script, source code, etc... ARCADE(4).RAR
http://www.4shared.com/file/76112172/c4571114/ARCADE_4_.html