mirror of
https://github.com/RetroDECK/Duckstation.git
synced 2025-03-06 14:27:44 +00:00
Merge pull request #3026 from andercard0/master
Conserto de textos, inclusões e atualizações de Idiomas
This commit is contained in:
commit
bfc4444f26
74
NEWS_pt-br.md
Normal file
74
NEWS_pt-br.md
Normal file
|
@ -0,0 +1,74 @@
|
|||
- 2021/07/25: Funcionalidade de iniciar jogos diretamente do CD-ROM adicionada. Caso haja algum engasgo recomendamos alterar a velocidade de releitura do CD.
|
||||
- 11/07/2021: Porte do emulador para UWP/Xbox One adicionada. Siga as instruções em "Plataforma Universal do Windows/ Xbox One" abaixo.
|
||||
- 2021/07/10: Renderizador de hardware Direct3D 12 adicionado. Não suporta downsampling ou pós-processamento (foi destinado primariamente para o Xbox).
|
||||
- 2021/06/25: Adicionada a funcionalidade de recuperar arquivos do editor de cartão de memória.
|
||||
- 2021/06/22: Conquistas para RetroAchievements adicionadas.
|
||||
- 19/06/2021: Tabelas de classificação para Conquistas RA adicionadas.
|
||||
- 01/06/2021: Carregamento/aplicação de modificações (patches) em formato PPF adicionados.
|
||||
- 2021/05/23: Suporte a (srm) adicionado ao núcleo do libretro.
|
||||
- 2021/05/23: CD-ROM: busca aprimoramento de aceleração adicionado.
|
||||
- 2021/05/16: Botões de disparo automático (alternância de pressão) adicionados.
|
||||
- 10/05/2021: núcleo libretro readicionado. A distribuição comercial do núcleo libretro da DuckStation **NÃO É PERMITIDA**.
|
||||
- 2021/05/02: Novo menu de pausa adicionado ao aplicativo Android.
|
||||
- 29/04/2021: Suporte a proporção personalizada adicionado.
|
||||
- 2021/03/20: Editor de cartão de memória adicionado ao aplicativo Android.
|
||||
- 17/03/2021: Adicionado suporte para carregamento de imagens **homebrew** PBP. As imagens da PSN não serão suportadas devido a possíveis problemas legais relacionados à criptografia.
|
||||
- 14/03/2021: Controles, multitap e vibração do controle externo adicionados ao aplicativo Android. Você precisará fazer a reatribuição dos seus botões dos controles.
|
||||
- 2021/03/14: RetroAchievements adicionados ao aplicativo Android.
|
||||
- 2021/03/03: Agora você pode fazer login em sua conta retroacheivements.org no DuckStation e ganhar pontos em jogos suportados. Atualmente, apenas para Windows/Linux/Mac, o Android será adicionado no futuro.
|
||||
- 2021/03/03: Multitap agora é suportado para até 8 controles. Você pode escolher quais das duas portas do controle principal têm toques conectados nas Configurações do Console e vincular os controles nas Configurações.
|
||||
- 03/03/2021: Funcionalidade de adicionar/remover botões do controle de tela sensível ao toque e alterar a opacidade adicionada ao aplicativo Android.
|
||||
- 2021/01/31: Modo tela cheia adicionado, também conhecido como "Big Duck/TV Mode". Esta interface é totalmente navegável com um controle. Atualmente, está limitado ao frontend NoGUI, mas estará disponível diretamente no frontend Qt em um futuro próximo, com mais recursos sendo adicionados (por exemplo, grade de jogos).
|
||||
- 2021/01/24: Runahead - contorne o atraso de entrada em alguns jogos executando quadros com antecedência e retrocedendo na entrada. A implementação do DuckStation funciona com upscaling com renderizadores de hardware, mas você ainda precisa de um computador poderoso para atingir maiores contagens de quadros.
|
||||
- 2021/01/24: Retrocesso adicionado - agora você pode "retroceder suavemente" (mas não por muito tempo) ou "pular retrocesso" (por muito tempo) enquanto joga.
|
||||
- 10/01/2021: Opção para sincronizar com a taxa de atualização do PC adicionada (ativada por padrão). Isso dará a animação mais suave possível com nenhum engasgo, ao custo de executar o jogo <1% mais rápido. Os usuários com exibições de taxa de atualização variável (GSync/FreeSync) desejarão desativar a opção.
|
||||
- 2021/01/10: Reamostragem de áudio adicionada ao encaminhar rapidamente para velocidades fixas. Em vez de ruídos no áudio, agora você terá um áudio alterado.
|
||||
- 2021/01/03: Configurações de jogo individual e propriedades de jogo adicionadas à versão para Android.
|
||||
- 30/12/2020: Adicionados os modos de downsampling Box e Adaptativo. O downsampling adaptativo suavizará os fundos 2D, mas tentará preservar a geometria 3D por meio da similaridade de pixels (suportado apenas no D3D11/Vulkan). O Box é um filtro médio simples que reduz a resolução para a resolução nativa.
|
||||
- 30/12/2020: vinculação de teclas de atalho adicionada à versão para Android. Agora você pode vincular teclas de atalho, como avanço rápido, salvar estado, etc., aos botões do controle. A funcionalidade de vincular combinações de vários botões será adicionada no futuro.
|
||||
- 29/12/2020: Mapeamento/vinculação do controle adicionado para a versão Android. Por padrão, os mapeamentos serão limpos e você terá que redefini-los, você pode fazer isso a partir de `Configurações -> Controles -> Mapeamento de controle`. Os perfis também podem ser salvos e carregados.
|
||||
- 29/12/2020: Tema escuro adicionado para Android. Por padrão, ele seguirá o tema do seu sistema (Android 10+), mas pode ser substituído nas configurações.
|
||||
- 29/12/2020: Interface do controle DirectInput/DInput adicionada para Windows. Você pode usar essa opção se estiver tendo dificuldades com o SDL. A vibração ainda não é suportada.
|
||||
- 25/12/2020: Suporte de substituição parcial de textura adicionado. Por enquanto, só se aplica a um pequeno número de jogos que enviam fundos para a RAM de vídeo a cada quadro. As opções de despejo e substituição estão disponíveis em `Configurações avançadas`.
|
||||
- 22/12/2020: Melhoria da Profundidade PGXP. Esse aprimoramento pode eliminar a "trepidação de polígonos" nos jogos, dando ao PS1 o buffer de profundidade que nunca teve. A compatibilidade é bastante baixa no momento, mas para os jogos em que funciona, funciona muito bem. O buffer de profundidade será disponibilizado para os shaders de pós-processamento no futuro, possibilitando efeitos como SSAO.
|
||||
- 21/12/2020: DuckStation agora tem duas versões de lançamentos - Desenvolvimento e Principal. Novos recursos aparecerão na Pré-lançamento primeiro e chegarão a versão de desenvolvimento alguns dias depois. Para alternar a versao, atualize para a compilação de desenvolvimento mais recente (as compilações mais antigas serão atualizadas para o desenvolvimento), altere o canal de `latest` para `preview` nas configurações gerais e clique em `Check for Updates`.
|
||||
- 16/12/2020: Depurador de CPU integrado adicionado no frontend Qt.
|
||||
- 13/12/2020: O layout do botão para o controle de tela sensível ao toque na versão Android agora pode ser personalizado.
|
||||
- 10/12/2020: Suporte de tradução adicionado para a versão Android. Atualmente, estão disponíveis Português Brasileiro, Português Europeu, Italiano e Holandes.
|
||||
- 2020/11/27: Suporte para adição de capas nos jogos adicionado para versão Android. O procedimento é o mesmo que a versão desktop, exceto que você deve colocar imagens de capa em `<storage>/duckstation/covers` (consulte[Adicionando Capas de Jogos](https://github.com/stenzek/duckstation/wiki/Adding-Game-Covers)).
|
||||
- 27/11/2020: Banco de dados de CDs enviado com as versões para desktop e Android, cortesia da redump.org. Fornecendo informações de títulos para jogos no Android, onde não era possível anteriormente.
|
||||
- 27/11/2020: Bancos de dados de compatibilidade adicionados ao núcleo do libretro - aprimoramentos não compativeis serão desativados automaticamente. Você pode desativar em "Aplicar configurações de compatibilidade" nas opções principais do emulador.
|
||||
- 27/11/2020: O banco de dados do controle SDL foi incluído nas versões para desktop, cortesia de https://github.com/gabomdq/SDL_GameControllerDB.
|
||||
- 21/11/2020: Suporte a OpenGL ES 2.0 adicionado. Você não pode usar o renderizador de hardware com GLES2, ele ainda requer GLES3, mas as GPUs GLES2 agora podem usar o renderizador por software.
|
||||
- 21/11/2020: Renderizador por software adicionado. Pode resultar em um aumento significativo de velocidade, dependendo do jogo.
|
||||
- 21/11/2020: Recompilador AArch32/armv7 adicionado. As compilações para Android e Linux seguirão após testes adicionais, mas por enquanto você pode construí-lo direto da fonte GH.
|
||||
- 18/11/2020: Tamanho da janela (redimensionar janela para resolução de conteúdo) adicionado aos front-ends Qt e SDL.
|
||||
- 10/11/2020: Hack widescreen agora renderiza na proporção de tela em vez de sempre 16:9.
|
||||
- 01/11/2020: Opção exclusiva em tela cheia adicionada para usuários do Windows D3D11. Desfrute de jogos de PAL.
|
||||
- 31/10/2020: Anti-aliasing multisample adicionado como um aprimoramento.
|
||||
- 30/10/2020: Adicionada a opção de usar o controle analógico como d-pad para o controle analógico.
|
||||
- 20/10/2020: Novo gerenciador de trapaças com varredura de memória adicionada. Mais recursos serão adicionados.
|
||||
- 05/10/2020: aprimoramento de aceleração de leitura de CD-ROM adicionado.
|
||||
- 30/09/2020: O overclock da CPU agora é suportado. Use com cuidado, pois isso quebrará os jogos e aumentará os requisitos do sistema. Pode ser definido globalmente ou por jogo.
|
||||
- 2020/09/25: Suporte a cheats adicionado para o libretro core.
|
||||
- 23/09/2020: Capas de jogos adicionadas ao frontend do Qt (consulte[Adicionando Capas de Jogos](https://github.com/stenzek/duckstation/wiki/Adding-Game-Covers)).
|
||||
- 19/09/2020: Importador/editor de cartão de memória adicionado ao frontend do Qt.
|
||||
- 13/09/2020: Adicionado suporte para encadeamento de shaders pós-processamento.
|
||||
- 12/09/2020: Adicionadas opções adicionais de filtragem de textura.
|
||||
- 09/09/2020: Suporte básico a cheats adicionado. Nem todas as instruções/comandos são suportados ainda.
|
||||
- 01/09/2020: Muitas configurações adicionais disponíveis, incluindo cartões de memória e aprimoramentos. Agora você pode definir cartões por jogo.
|
||||
- 25/08/2020: Compilações automatizadas para macOS agora disponíveis.
|
||||
- 22/08/2020: back-end do controle XInput adicionado.
|
||||
- 20/08/2020: Substituições de configuração por jogo adicionadas. Principalmente para compatibilidade, mas algumas opções são personalizáveis.
|
||||
- 19/08/2020: Modo CPU PGXP adicionado. É muito lento e incompatível com o recompilador, usado apenas para jogos que precisam dele.
|
||||
- 15/08/2020: Suporte a lista de reprodução/cartão de memória único para jogos com vários discos no front-end Qt adicionado.
|
||||
- 07/08/2020: Atualizador automático para compilações autônomas do Windows.
|
||||
- 01/08/2020: Suporte inicial de PGXP (correção de geometria/perspectiva).
|
||||
- 28/07/2020: O frontend do Qt suporta a exibição da interface em vários idiomas.
|
||||
- 23/07/2020: suporte a múltiplos discos m3u para o núcleo libretro.
|
||||
- 22/07/2020: Suporta várias vinculações para cada botão/eixo do controle.
|
||||
- 18/07/2020: aprimoramento de hack de widescreen adicionado.
|
||||
- 04/07/2020: Renderizador Vulkan agora disponível no Libretro Core.
|
||||
- 2020/07/02: Disponível como um núcleo libretro.
|
||||
- 01/07/2020: Suporte Lightgun com mira personalizada.
|
||||
- 19/06/2020: Renderizador de hardware Vulkan adicionado.
|
353
README.pt-br.md
353
README.pt-br.md
|
@ -1,296 +1,221 @@
|
|||
# DuckStation - Mais conhecido como emulador de PlayStation 1
|
||||
[Últimas noticias](#Últimas-Notícias) | [Caracteristicas](#Características) | [Capturas de tela](#screenshots) | [Como baixar e configurar](#Como-baixar-e-configurar) | [Núcleo libretro](#Núcleo-libretro) | [Construindo](#Baixando) | [Avisos](#avisos)
|
||||
Tradução:
|
||||
|
||||
**Versão mais recente para Windows e Linux (AppImage)** https://github.com/stenzek/duckstation/releases/tag/latest
|
||||
# DuckStation - Emulador de PlayStation 1, também conhecido como PSX
|
||||
[Últimas Notícias](#latest-news) | [Recursos](#features) | [Download e Execução](#downloading-and-running) | [Compilação](#building) | [Avisos Legais](#disclaimers)
|
||||
|
||||
**Disponível na Google Play:** https://play.google.com/store/apps/details?id=com.github.stenzek.duckstation
|
||||
**Últimas Versões para Windows 10/11, Linux (AppImage/Flatpak) e macOS:** https://github.com/stenzek/duckstation/releases/tag/latest
|
||||
|
||||
**Lista de compatibilidade de jogos:** https://docs.google.com/spreadsheets/d/1H66MxViRjjE5f8hOl5RQmF5woS1murio2dsLn14kEqo/edit
|
||||
**Lista de Compatibilidade de Jogos:** https://docs.google.com/spreadsheets/d/1H66MxViRjjE5f8hOl5RQmF5woS1murio2dsLn14kEqo/edit
|
||||
|
||||
**Wiki do projeto:** https://www.duckstation.org/wiki/
|
||||
**Wiki:** https://www.duckstation.org/wiki/
|
||||
|
||||
DuckStation é um emulador do console da Sony Playstation 1, com foco na jogabilidade, velocidade e manutenção de longo prazo. O objetivo é ser o mais preciso possível, mantendo o desempenho adequado para dispositivos de baixo custo. As funções de 'hacks' (modificações) não são muito recomendadas por serem instáveis na maioria dos casos. as configurações padrão já oferecem suporte aos jogos já categorizados como jogáveis até o momento.
|
||||
DuckStation é um simulador/emulador do console Sony PlayStation(TM), focando na jogabilidade, velocidade e manutenção a longo prazo. O objetivo é ser o mais preciso possível, mantendo um desempenho adequado para dispositivos de baixo desempenho. Opções de "hack" não são recomendadas, a configuração padrão deve suportar todos os jogos jogáveis, com apenas algumas das melhorias tendo problemas de compatibilidade.
|
||||
|
||||
Um arquivo de "BIOS" é obrigátorio para inicar o emulador para que os jogos iniciem. Você pode usar qualquer arquivo de diversas regiões de consoles, embora regiões de jogo diferentes e regiões de BIOS possam ter problemas de compatibilidade entre si. O arquivo de BIOS não pode ser compartilhado junto com o emulador de forma nenhuma por questões legais, você deve fazer o processo chamado de 'dump' ou despejo do arquivo do seu próprio console; usando o Caetla ou outros meios disponíveis.
|
||||
Uma imagem ROM do "BIOS" é necessária para iniciar o emulador e jogar os jogos. Você pode usar uma imagem de qualquer versão de hardware ou região, embora regiões de jogos e regiões de BIOS que não idênticas podem resultar em problemas de compatibilidade. A imagem ROM ou Jogo não é fornecida com o emulador por motivos legais; você deve obter do seu próprio console usando Caetla ou outros meios.
|
||||
|
||||
## Últimas Notícias
|
||||
Notícias mais antigas estão disponíveis em: https://github.com/stenzek/duckstation/blob/master/NEWS.md
|
||||
## Recursos
|
||||
|
||||
- 2021/07/25: Agora é possível inicializar jogos diretamente do CD-ROM.
|
||||
- 2021/07/11: Adicionardo porte do emulador para UWP/Xbox. Siga as instruções para a plataforma universal do Windows ou para Xbox One S|X.
|
||||
- 2021/07/10: Renderizador de hardware Direct3D12 adicionado. Suavização de imagem ou pós-processamento não incluído (feito tendo em vista mais o uso com Xbox).
|
||||
- 2021/06/25: Agora é possível recuperar arquivos do editor de cartão de memória adicionado.
|
||||
- 2021/06/22: Adicionado número de conquistas para RetroAchievements (Ex:.Conquistas 10/25).
|
||||
- 2021/06/19: Adicionados placares para RetroAchievements.
|
||||
- 2021/06/01: Auto carregamento / aplicação de modificações do tipo PPF para traduções.
|
||||
- 2021/05/23: Arquivo de salvamento do tipo SRM adicionado ao núcleo libretro.
|
||||
- 2021/05/23: Adicionado aceleração de busca do CD-ROM aprimorada.
|
||||
- 2021/05/16: Adicionado botões de Auto disparo.
|
||||
- 2021/05/02: Adicionado novo menu de pausa ao aplicativo Android.
|
||||
- 2021/04/29: Adicionado proporção de aspecto customizado.
|
||||
- 2021/03/20: Adicionado editor de cartão de memória ao aplicativo Android.
|
||||
- 2021/03/17: Adicionado para o carregamento de **homebrew** em formato PBP. Jogos em formato PBP oficiais da Sony NÃO SÃO e NÃO SERÃO suportados por riscos legais.
|
||||
- 2021/03/14: Múltiplos controles adicionados, função multitap, e vibração de controles adicionados ao aplicativo Android. Será necessário nova reatribuição de controles.
|
||||
- 2021/03/14: RetroAchievements adicionado ao Android.
|
||||
- 2021/03/03: RetroAchievements agora são suportados. Já é possível se conectar via site retroacheivements.org com sua conta criada lá via Duckstation e assim ganhar pontos com os jogos que tenham essas conquistas. No momento somente para Windows/Linux/Mac, Android terá em breve suporte.
|
||||
- 2021/03/03: Adicionado Multitap para até 8 controles. Você pode escolher qual das duas portas do controler principal quer usar para a função multitap.
|
||||
- 2021/03/03: Agora é possível adicionar/remover os botões de controle em tela adicionado ao Android.
|
||||
- 2021/01/31: Interface de usuário adicionado, também conhecido no Discord como "Big Duck Mode/Modo TV". Esta interface é facilmente navegável com o controle. No momento, só é funcional com o excecutável NOGUI.exe mas em breve será adicionado a opção de atalho para abri-la.
|
||||
- 2021/01/24: Pulo de quadros - solução de contorno para atrasos em alguns jogos perdendo quadros.
|
||||
- 2021/01/24: Função rebobinar - agora você pode "retroceder suavemente" (mas não por muito tempo) ou "pular o retrocesso" por algum tempo enquanto joga.
|
||||
|
||||
## Características
|
||||
|
||||
O DuckStation apresenta um front-end completo construído usando Qt, bem como uma interface de usuário de tela cheia / TV baseada em ImGui. Uma versão do Android está sendo feita, mas ainda não está completa.
|
||||
O DuckStation possui uma interface totalmente funcional construída usando Qt, bem como uma interface de tela cheia/TV baseada no Dear ImGui.
|
||||
|
||||
<p align="center">
|
||||
<img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/main-qt.png" alt="Main Window Screenshot" />
|
||||
<img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/bigduck.png" alt="Fullscreen UI Screenshot" />
|
||||
<img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/main-qt.png" alt="Captura de Tela da Janela Principal" />
|
||||
<img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/bigduck.png" alt="Captura de Tela da Interface de Tela Cheia" />
|
||||
</p>
|
||||
|
||||
Outras características incluem:
|
||||
Outros recursos incluem:
|
||||
|
||||
- CPU Recompilador/JIT (x86-64, armv7/AArch32 e também para AArch64)
|
||||
- Hardware (D3D11, OpenGL, Vulkan) e renderizador por software
|
||||
- Aumento de resolução, filtragem de textura, "função true color" (24-bit) nos renderizadores baseados por hardware (placa de vídeo)
|
||||
- PGXP para precisão de geometria, correção de textura, e profundidade de campo
|
||||
- Filtro adaptativo de resolução
|
||||
- Opções de pós-processamento
|
||||
- "Inicialização rápida" para pular a tela de BIOS ou introdução da Sony
|
||||
- Suporte para salvamento rápido
|
||||
- Windows, Linux, **altamente experimental** suporte MacOS
|
||||
- Supporte aos arquivos bin/cue, bin/img, e formato CHD do Mame.
|
||||
- Inicialização direta de arquivos homebrew
|
||||
- Carregamento de arquivos (psf)
|
||||
- Controles analógicos e digitais
|
||||
- Controles Namco GunCon lightgun são suportados (simulados com o mouse)
|
||||
- Controles NeGcon são suportados
|
||||
- Qt e NoGUI para desktop
|
||||
- Atualizador automático adicionado
|
||||
- Verificação automática de conteúdo - título dos jogos/números validadores fornecidos por redump.org
|
||||
- Troca automática opcional de cartões de memória para cada jogo
|
||||
- Suporta o carregamento de trapaças no formato libretro ou PCSXR
|
||||
- Editor de cartão de memória e de saves
|
||||
- Aceleração do CPU emulado
|
||||
- Depuração integrada
|
||||
- Controle multitap (até 8 no total)
|
||||
- RetroAchievements
|
||||
- Carregamento de modificações PPF - feito para tradução de jogos do Playstation 1.
|
||||
- Recompilador de CPU/JIT (x86-64, armv7/AArch32 e AArch64).
|
||||
- Renderização de hardware (D3D11, D3D12, OpenGL, Vulkan, Metal) e renderização de software.
|
||||
- Ampliação, filtragem de textura e cor verdadeira (24 bits) nos renderizadores de hardware.
|
||||
- PGXP para precisão de geometria, correção de textura e emulação de buffer de profundidade.
|
||||
- Filtro de downsampling adaptativo.
|
||||
- Cadeias de shaders de pós-processamento (GLSL e Reshade FX experimental).
|
||||
- "Inicialização rápida" para pular a tela de abertura/intro do BIOS.
|
||||
- Suporte a salvar estados.
|
||||
- Suporte para Windows, Linux e macOS.
|
||||
- Suporta imagens bin/cue, arquivos bin/img crus, MAME CHD, ECM de única faixa, MDS/MDF e formatos PBP não criptografados.
|
||||
- Inicialização direta de executáveis homebrew.
|
||||
- Carregamento direto de arquivos Portable Sound Format (psf).
|
||||
- Controles digitais e analógicos.
|
||||
- Suporte ao lightgun Namco GunCon (simulado com o mouse).
|
||||
- Suporte ao NeGcon.
|
||||
- Interface Qt e "Big Picture".
|
||||
- Atualizações automáticas a partir dos canais oficiais.
|
||||
- Verificação automática de conteúdo - os títulos/jogos são fornecidos por redump.org.
|
||||
- Troca automática opcional de cartões de memória para cada jogo.
|
||||
- Suporta carregar trapaças de listas existentes.
|
||||
- Editor de cartões de memória e importador de salvamento.
|
||||
- Overclock emulado de CPU.
|
||||
- Depuração integrada e remota.
|
||||
- Controles multitap (até 8 dispositivos).
|
||||
- RetroAchievements.
|
||||
- Carregamento/aplicação automática de patches PPF.
|
||||
|
||||
## Requisitos do sistema
|
||||
- Um processador rápido ou não tão antigo. Mas precisa ter instrução x86_64, AArch32/armv7, ou AArch64/ARMv8, caso contrário você não conseguirá usar de maneira devida nem mesmo com opção recompilador ativada.
|
||||
- Para renderizadores por hardware, uma GPU (placa de vídeo) que seja capaz de rodar OpenGL 3.1/ou OpenGL ES 3.0/Direct3D 11 Na versão 10.0 (ou versão Vulkan 1.0) ou mais recente. Sendo assim qualquer coisa feita nos últimos 10 anos ou mais.
|
||||
- SDL, XInput ou DInput compatíveis com controle (e.g. XB360/XBOne). DualShock 3 usuários do Windows precisarão instalar os drivers oficiais para o DualShock 3 incluídos com os serviços do Playstation Now.
|
||||
## Requisitos do Sistema
|
||||
- Um CPU rápido. Mas precisa ser x86_64, AArch32/armv7 ou AArch64/ARMv8, caso contrário, o recompilação será lenta.
|
||||
- Para os renderizadores de hardware, é necessário uma GPU compatível com OpenGL 3.1/OpenGL ES 3.1/Direct3D 11 Feature Level 10.0 (ou Vulkan 1.0) e superior. basicamente, qualquer computador produzido nos últimos 10 anos mais ou menos deve dar conta.
|
||||
- Controlador de jogo compatível com SDL, XInput ou DInput (por exemplo, XB360/XBOne/XBSeries). Usuários de DualShock 3 no Windows precisarão instalar os drivers oficiais do DualShock 3 incluídos como parte do PlayStation Now.
|
||||
|
||||
## Como baixar e configurar
|
||||
Os arquivos necessários do emulador x64/ARM64, Linux x86_64 (no formato AppImage), e Android ARMv7/ARMv8 estão disponíveis via GitHub lançados e automaticamente adicionados. Pacotes são distribuidos via outras fontes que não são atualizadas ou não gerenciadas pelo desenvolvedor, se este for seu caso qualquer problema fale com quem os distribui mas não conosco.
|
||||
## Download e Execução
|
||||
Executáveis do DuckStation para Windows x64/ARM64, Linux x86_64 (nos formatos AppImage/Flatpak) e para macOS estão disponíveis via GitHub na aba Releases e são automaticamente compilados a cada commit/envio. Executáveis ou pacotes distribuídos por outras fontes podem estar desatualizados e não são suportados pelo desenvolvedor, por favor, entre em contato com eles para obter suporte, não conosco.
|
||||
|
||||
### Windows
|
||||
|
||||
**Windows 10 é o único sistema operacional suportado pelo desenvolvedor.** Windows 7/8 pode funcionar, mas não suportado. Estou ciente de que usuários ainda utilizam (Windows 7), mas não é sequer suportado pela própria Microsoft e requer muito esforço para manter atualizado corretamente.É bem improvável que problemas nos jogos sejam afetados pelo sistema operacional, no entanto, os problemas de desempenho devem ser verificados no Windows 10 também antes de relatar.
|
||||
DuckStation **requer** Windows 10/11, especificamente a versão 1809 ou mais recente. Se você ainda estiver usando Windows 7/8/8.1, o DuckStation **não funcionará** no seu sistema operacional. Usar esses sistemas operacionais em 2023 deve ser considerado um risco de segurança, recomendaria atualizar para algo que receba suporte do fornecedor.
|
||||
Se você precisa usar um sistema operacional mais antigo, [v0.1-5624](https://github.com/stenzek/duckstation/releases/tag/v0.1-5624) é a última versão que funcionará. Mas não espere receber nenhuma assistência, essas compilações não são mais suportadas.
|
||||
|
||||
Baixando:
|
||||
- Vá até https://github.com/stenzek/duckstation/releases/tag/latest, e baixe a versão Windows x64. Este é o arquivo compactado contendo os arquivos necessários.
|
||||
- Alternativamente, use o link para download direto: https://github.com/stenzek/duckstation/releases/download/latest/duckstation-windows-x64-release.zip
|
||||
- Extraia o arquivo **dentro de uma pasta**. O arquvivo baixado não contém uma pasta criada por isso é necessária a criação e/ou descompactação dos arquivos para que não sejam extraídos diretamente onde foi baixado deixando vários arquivos misturados com os seus.
|
||||
Para baixar:
|
||||
- Acesse https://github.com/stenzek/duckstation/releases/tag/latest e baixe a compilação do Windows x64. Este é um arquivo ZIP contendo o executável pré-compilado.
|
||||
- Alternativamente, link de download direto: https://github.com/stenzek/duckstation/releases/download/latest/duckstation-windows-x64-release.zip
|
||||
- Extraia o arquivo ZIP **para uma pasta**. O arquivo ZIP não tem um subdiretório raiz, então, se você não extrair para um subdiretório, ele irá despejar vários arquivos no seu diretório de download.
|
||||
|
||||
Uma vez baixado e extraído, você será capaz de executar o emulador clicando no seguinte arquivo `duckstation-qt-x64-ReleaseLTCG.exe`.
|
||||
Configurando:
|
||||
1. Configure o caminho para uma imagem BIOS nas configurações, ou copie uma ou mais imagens do BIOS do PlayStation para o subdiretório / bios. No Windows, por padrão, ele estará localizado em `C:\Users\SEU_USUÁRIO\Documentos\DuckStation\bios`. Se você não quiser usar o diretório Documentos para salvar o BIOS / cartões de memória / etc, você pode usar o modo portátil. Veja em [Diretório do usuário](#Diretório-do-usuário).
|
||||
2. Caso esteja usando a versão QT, adicione os diretórios contendo seus jogos clicando em `Configurações-> Configurar lista de jogos -> Adicionar diretório`.
|
||||
2. Selecione um jogo da lista, ou abra a imagem do jogo diretamente.
|
||||
Depois de baixado e extraído, pode iniciar o emulador com `duckstation-qt-x64-ReleaseLTCG.exe`. Siga o Assistente de configuração para começar.
|
||||
|
||||
**Caso veja o seguinte erro `vcruntime140_1.dll` não foi encontrado, será necessário atualizar o seu Visual C++.** você pode fazê-lo nesta página: https://support.microsoft.com/en-au/help/2977003/the-latest-supported-visual-c-downloads. Mais precisamente, o pacote x64, ao qual pode ser baixado em: https://aka.ms/vs/16/release/vc_redist.x64.exe.
|
||||
|
||||
**Usuários do Windows 7, TLS 1.2 não é supprtado nativamente no sistema sendo assim, não será possível usar o atualizador automático ou a função para conexão ao RetroAchievements.** Este artigo de base de conhecimento contém instruções para ativar a função TLS 1.1/1.2:
|
||||
https://support.microsoft.com/en-us/topic/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-winhttp-in-windows-c4bd73d2-31d7-761e-0178-11268bb10392
|
||||
|
||||
A versão QT inclui um analisador de atualizações automáticas. Versões baixadas depois 07/08/2020 seraão automaticamente verificadas por atualizações cada vez que o emulador é iniciado, esta função pode ser desligada nas configurações. Como alternativa, é possível também checar manualmente no menu `Ajuda -> Checar por atualizações`.
|
||||
|
||||
### Plataforma Universal Windows (UWP) / Xbox One
|
||||
|
||||
A versão do Duckstation em modo tela cheia está disponível para Xbox one e UWP.
|
||||
|
||||
Usando no Xbox One:
|
||||
|
||||
1. Certifique-se de que seu console esteja no modo de desenvolvedor. Você precisará adquirir uma licença de desenvolvedor da Microsoft.
|
||||
2. Baixe a seguinte versão do emulador: duckstation-uwp.appx.
|
||||
3. Navegue até o portal do dispositivo no seu console (conforme exibido na tela inicial).
|
||||
4. Instale o arquivo appx clicando em adicionar na página principal.
|
||||
5. Defina o aplicativo para o modo Jogo ao invés do modo aplicativo: role a lista para baixo e procure por Duckstation, vá até a opção 'modo de visualização', selecione exibir detalhes e altere para Jogo.
|
||||
6. Carregue uma imagem do BIOS para o diretório local do Duckstation ou coloque uma imagem do BIOS em uma unidade USB removível. Se estiver usando uma unidade USB, você precisará definir o caminho do BIOS nas configurações do DuckStation apontando para este diretório.
|
||||
7. Adicione jogos ao diretório de jogos local ou use uma unidade USB removível. Novamente, você terá que registrar este caminho nas configurações da lista de jogos para que ele possa ser lido.
|
||||
8. Abra o aplicativo e divirta-se. Por padrão, o botão 'Exibir` irá abrir o menu rápido.
|
||||
9. Não se esqueça de habilitar os aprimoramentos, um Xbox One S pode aumentar a resolução de 8x com saída de vídeo em até 4K, os consoles da série S podem até ir além disto.
|
||||
|
||||
**NOTA:** Recomendaria usar uma unidade USB para salvar os cartões de memória, pois o diretório de local será removido caso você desinstale o aplicativo.
|
||||
**Se você receber um erro sobre a falta de `vcruntime140_1.dll`, precisará atualizar sua runtime do Visual C++.**faça da seguinte forma, nesta página: https://support.microsoft.com/en-au/help/2977003/the-latest-supported-visual-c-downloads. Especificamente, você deseja a runtime x64, que pode ser baixada em https://aka.ms/vs/17/release/vc_redist.x64.exe.
|
||||
|
||||
### Linux
|
||||
|
||||
#### Binários
|
||||
As únicas versões suportadas do DuckStation para Linux são o AppImage e o Flatpak na página de lançamentos. Se você instalou o DuckStation de outra fonte ou distribuição (por exemplo, EmuDeck), você deve entrar em contato com o responsável para suporte, nós não temos controle sobre isso.
|
||||
|
||||
Versões contruídas para Linux estão disponíveis em formato AppImage. No entanto, esses arquivos podem não ser compatíveis com distribuições mais antigas do Linux (ex:. Ubuntu anteriores do que 18.04.4 LTS) devido a distros mais antigas não fornecerem bibliotecas padrão C / C ++ exigidas pelos binários AppImage.
|
||||
#### AppImage
|
||||
|
||||
**Também é possível construir da fonte para usuários mais avançados de Linux.**
|
||||
Os AppImages requerem uma distribuição equivalente ao Ubuntu 22.04 ou mais recente para serem executados.
|
||||
|
||||
Baixando em:
|
||||
- Vá até: https://github.com/stenzek/duckstation/releases/tag/latest, e baixe também `duckstation-qt-x64.AppImage` ou `duckstation-nogui-x64.AppImage` para a versão desejada.
|
||||
- Rode o comando `chmod a+x` para o arquivo baixado AppImage -- seguindo este passo, o arquivo AppImage se tornará um arquvio executável pronto para uso.
|
||||
- Outra opção seria usar [appimaged](https://github.com/AppImage/appimaged) ou [AppImageLauncher](https://github.com/TheAssassin/AppImageLauncher) para integração com sistema. [AppImageUpdate](https://github.com/AppImage/AppImageUpdate) pode ser usado junto com o appimage para atualizar facilmente o seu DuckStation na versão appimage.
|
||||
- Acesse https://github.com/stenzek/duckstation/releases/tag/latest e baixe `duckstation-x64.AppImage`.
|
||||
- Execute `chmod a+x` no AppImage baixado -- após este passo, o AppImage pode ser executado como um executável típico.
|
||||
|
||||
#### Flatpak
|
||||
|
||||
- Acesse https://github.com/stenzek/duckstation/releases/tag/latest e baixe `duckstation-x64.flatpak`.
|
||||
- Execute `flatpak install ./duckstation-x64.flatpak`.
|
||||
|
||||
ou, se você tiver o FlatHub configurado:
|
||||
- Execute `flatpak install org.duckstation.DuckStation`.
|
||||
|
||||
Use `flatpak run org.duckstation.DuckStation` para iniciar, ou selecione `DuckStation` no lançador do seu ambiente de desktop. Siga o Assistente de Configuração para começar.
|
||||
|
||||
### macOS
|
||||
|
||||
Versões para MacOS não são mais disponibilizadas, não tenho o hardware citado, e não vou de forma alguma gastar $1000 do meu bolso em um harware somente para desenvolver o emulador.
|
||||
São fornecidas compilações universais do MacOS para x64 e ARM64 (Apple Silicon).
|
||||
|
||||
Ainda é possível construir da fonte [source](#Construindo), mas você mesmo terá de fazer depuração de probelmas encontrados por si mesmo.
|
||||
|
||||
Se alguém estiver disposto a se voluntariar para oferecer suporte à plataforma para garantir que os usuários tenham uma boa experiência, estou mais do que feliz em reativar os lançamentos.
|
||||
MacOS Big Sir (11.0) é necessário, pois também é o requisito mínimo para o Qt.
|
||||
|
||||
Para baixar:
|
||||
- Acesse https://github.com/stenzek/duckstation/releases/tag/latest e baixe `duckstation-mac-release.zip`.
|
||||
- Extraia o arquivo ZIP dando um duplo clique nele.
|
||||
- Abra o DuckStation.app, opcionalmente movendo-o para a localização desejada antes.
|
||||
- Dependendo da configuração do GateKeeper, você pode precisar clicar com o botão direito -> Abrir na primeira vez que executá-lo, já que certificados de assinatura de código estão fora de questão para um projeto que não gera receita alguma.
|
||||
|
||||
### Android
|
||||
|
||||
Será necessário um dispositivo com armv7 (32-bit ARM), AArch64 (64-bit ARM), ou x86_64 (64-bit x86). preferivelmente 64-bits, os requisitos são maiores para 32 bits, necessário no minímo um disposiivo com 1.5GHz.
|
||||
Você precisará de um dispositivo com armv7 (32 bits ARM), AArch64 (64 bits ARM) ou x86_64 (64 bits x86). 64 bits são preferíveis, os requisitos são mais altos para 32 bits, você provavelmente vai querer pelo menos um CPU de 1,5 GHz.
|
||||
|
||||
Link para baixar: https://www.duckstation.org/android/duckstation-android.apk
|
||||
A distribuição pelo Google Play é o mecanismo de distribuição recomendado e resultará em tamanhos de download menores: https://play.google.com/store/apps/details?id=com.github.stenzek.duckstation
|
||||
|
||||
Registro de mudanças: https://www.duckstation.org/android/changelog.txt
|
||||
**Não é fornecido suporte para o aplicativo Android**, ele é gratuito e suas expectativas devem estar alinhadas com isso. Por favor, **não** me envie e-mails sobre problemas relacionados a ele, eles serão ignorados.
|
||||
|
||||
Usando:
|
||||
1. Instale e rode o aplicativo pelo menos uma vez.
|
||||
2. Adicione o diretório de jogos clicando no botão adicionar "+" e escolha um diretório. Você pode adicionar diretórios a mais escolhendo a opção "Editar diretório de jogos"a partir do menu.
|
||||
3. Clique em um jogo para iniciar. Quando você iniciar um jogo pela primeira vez lhe será solicitado que um arquivo de BIOS seja importado.
|
||||
Se você precisar usar um APK, os links para download estão listados em https://www.duckstation.org/android/
|
||||
|
||||
Se você tiver um controle externo, será necessário mapear os botões e eixos nas configurações.
|
||||
Para usar:
|
||||
1. Instale e execute o aplicativo pela primeira vez.
|
||||
2. Adicione diretórios de jogos tocando no botão de adição e selecionando um diretório. Você pode adicionar diretórios adicionais depois selecionando "Editar Diretórios de Jogos" no menu.
|
||||
3. Toque em um jogo para começar. Quando você inicia um jogo pela primeira vez, ele pedirá para importar uma imagem de BIOS.
|
||||
|
||||
- Windows x64 (64-bit): https://www.duckstation.org/libretro/duckstation_libretro_windows_x64.zip
|
||||
- Android AArch64 (64-bit): https://www.duckstation.org/libretro/duckstation_libretro_android_aarch64.zip
|
||||
- Android armv7 (32-bit): https://www.duckstation.org/libretro/duckstation_libretro_android_armv7.zip
|
||||
- Linux x64 (64-bit): https://www.duckstation.org/libretro/duckstation_libretro_linux_x64.zip
|
||||
- Linux AArch64 (64-bit): https://www.duckstation.org/libretro/duckstation_libretro_linux_aarch64.zip
|
||||
- Linux armv7 (32-bit): https://www.duckstation.org/libretro/duckstation_libretro_linux_armv7.zip
|
||||
|
||||
### Detecção de região e imagens BIOS
|
||||
Por padrão, o DuckStation irá emular a verificação de região presente no controlador de CD-ROM do console. Isto significa que quando a versão do console não bater com a do disco, o mesmo não vai iniciar, apresentando a seguinte mensagem "Please insert PlayStation CD-ROM". DuckStation suporta detecção automática das regiões dos discos, e se você definir a região do console para detecção automática também, isso nunca será um problema.
|
||||
|
||||
Se você deseja usar a detecção automática, você não precisa mudar o caminho do BIOS cada vez que mudar de região. Basta somente colocar as outras imagens do BIOS de outras regiões **no mesmo diretório** que das imagens configuradas anteriormente. Terá que sempre ser na pasta `bios/`. Em seguida, defina a região do console para "Detectar região automaticamente" e tudo deve funcionar corretamente. O registro lhe informará se está faltando a imagem da região dos discos.
|
||||
|
||||
Alguns usuários ficaram confusos com a opção "Caminho do BIOS", a razão de ser um caminho ao invés de um diretório é para que uma revisão desconhecida do BIOS possa ser usada / testada.
|
||||
|
||||
Como alternativa, a verificação da região pode ser desligada na guia de opções do console. Esta é a única maneira de jogar jogos não licenciados ou homebrews que não fornecem uma linha de região correta no disco, além de usar a inicialização rápida que ignora a verificação completamente.
|
||||
|
||||
A verificação de discos incompativeis é suportada, mas pode interromper os jogos se eles estiverem sendo lidos pelo BIOS e esperando algum conteúdo específico.
|
||||
Se você tiver um controle externo, precisará mapear os botões e analogicos nas configurações.
|
||||
|
||||
### Proteção LibCrypt e arquivos SBI
|
||||
|
||||
Vários jogos de região Européia usam proteção LibCrypt, exigindo informações adicionais do subcanal do CD para funcionar corretamente. Quando o libcrypt não funciona corretamente, é notável por travamentos, carregaemntos infinitos, mas às vezes também afetando a jogabilidade, dependendo de como o jogo o implementou.
|
||||
Alguns jogos da região PAL usam a proteção LibCrypt, que requer informações adicionais de subcanal de CD para funcionar corretamente. O não funcionamento do libcrypt geralmente se manifesta como travamentos, mas às vezes pode afetar a jogabilidade, dependendo de como o jogo o implementou.
|
||||
|
||||
Para esses jogos, certifique-se de que a imagem do CD e seu respectivo arquivo SBI (.sbi) correspondente tenham o mesmo nome e sejam colocados no mesmo diretório. DuckStation irá carregar automaticamente o arquivo SBI quando ele for encontrado próximo à imagem do CD.
|
||||
Para esses jogos, certifique-se de que a imagem do CD e seu arquivo correspondente SBI (.sbi) tenham o mesmo nome e estejam na mesma pasta. O DuckStation carregará automaticamente o arquivo SBI quando ele for encontrado ao lado da imagem do CD.
|
||||
|
||||
Por exemplo, se a imagem do seu disco foi nomeada `Spyro3.cue`, você deve colocar o arquivo SBI no mesmo diretório, nomeando o meso assim: `Spyro3.sbi`.
|
||||
Por exemplo, se sua imagem de disco se chamasse `Spyro3.cue`, você colocaria o arquivo SBI na mesma pasta e o nomearia como `Spyro3.sbi`.
|
||||
|
||||
## Construindo
|
||||
## Compilação
|
||||
|
||||
### Windows
|
||||
Requisitos:
|
||||
- Visual Studio 2019
|
||||
|
||||
1. Clone o repositório com submódulos (`git clone --recursive https://github.com/stenzek/duckstation.git -b dev`).
|
||||
2. Abra o Visual Studio pelo arquivo `duckstation.sln` na raiz da pasta, ou "Abrir pasta" para compilar via cmake.
|
||||
3. Construia a solução.
|
||||
4. Os arquivos compilados estão localizados em `bin/x64`.
|
||||
5. Execute `duckstation-qt-x64-Release.exe` ou qualquer configuração que tenha usado.
|
||||
- Visual Studio 2022
|
||||
|
||||
1. Clone o repositório: `git clone https://github.com/stenzek/duckstation.git`.
|
||||
2. Baixe o pacote de dependências em https://github.com/stenzek/duckstation-ext-qt-minimal/releases/download/latest/deps-x64.7z e extraia-o para `dep\msvc`.
|
||||
3. Abra a solução do Visual Studio `duckstation.sln` na raiz ou "Abrir Pasta" para a compilação com CMake.
|
||||
4. Compile a solução.
|
||||
5. Os binários estão localizados em `bin/x64`.
|
||||
6. Execute `duckstation-qt-x64-Release.exe` ou a configuração que você usou.
|
||||
|
||||
### Linux
|
||||
Requisitos (Debian/Ubuntu):
|
||||
Requisitos (nomes de pacotes Debian/Ubuntu):
|
||||
- CMake (`cmake`)
|
||||
- SDL2 (`libsdl2-dev` `libxrandr-dev`)
|
||||
- SDL2 (pelo menos a versão 2.28.2) (`libsdl2-dev` `libxrandr-dev`)
|
||||
- pkgconfig (`pkg-config`)
|
||||
- Qt 6 (`qt6-base-dev` `qt6-base-private-dev` `qt6-base-dev-tools` `qt6-tools-dev` `libqt6svg6`)
|
||||
- libevdev (`libevdev-dev`)
|
||||
- git (`git`) (Nota: necessário para clonar o repositório e em tempo de construção)
|
||||
- Quando o wayland está ativado (padrão): (`libwayland-dev` `libwayland-egl-backend-dev` `extra-cmake-modules` `qt6-wayland`)
|
||||
- Opcional para RetroAchievements (ativado por padrão): libcurl (`libcurl4-gnutls-dev`)
|
||||
- Opcional para saída do framebuffer: DRM/GBM (`libgbm-dev` `libdrm-dev`)
|
||||
- Opcional para construção rápida: Ninja (`ninja-build`)
|
||||
- Qt 6 (pelo menos a versão 6.5.1) (`qt6-base-dev` `qt6-base-private-dev` `qt6-base-dev-tools` `qt6-tools-dev` `libqt6svg6`)
|
||||
- git (`git`) (Nota: necessário para clonar o repositório e na hora da compilação)
|
||||
- Quando o Wayland estiver habilitado (padrão): (`libwayland-dev` `libwayland-egl-backend-dev` `extra-cmake-modules` `qt6-wayland`)
|
||||
- libcurl (`libcurl4-openssl-dev`)
|
||||
- Opcional para compilação mais rápida: Ninja (`ninja-build`)
|
||||
|
||||
1. Clone o repositório. Submódulos não são necessários, há apenas um e é usado apenas para Windows (`git clone https://github.com/stenzek/duckstation.git -b dev`).
|
||||
2. Crie um diretório de construção, em árvore ou em outro lugar.
|
||||
3. Execute cmake para configurar o sistema de compilação. Tendo em vista o subdiretório `build-release`, `cd build-release && cmake -DCMAKE_BUILD_TYPE=Release -GNinja ..`.
|
||||
4. Compile o código-fonte. Conforme informado acima, execute `ninja`.
|
||||
5. Execute o executável, localizado no diretório de compilação em `bin/duckstation-qt`.
|
||||
1. Clone o repositório: `git clone https://github.com/stenzek/duckstation.git -b dev`.
|
||||
2. Crie um diretório de compilação, seja dentro ou fora do diretório de origem.
|
||||
3. Execute o CMake para configurar o sistema de compilação. Supondo que o diretório de compilação seja `build-release`, execute `cmake -Bbuild-release -DCMAKE_BUILD_TYPE=Release`. Se você tiver o Ninja instalado, adicione `-GNinja` ao final da linha de comando do CMake para compilações mais rápidas.
|
||||
4. Compile o código-fonte. Para o exemplo acima, execute `cmake --build build-release --parallel`.
|
||||
5. Execute o binário, que está localizado no diretório de compilação em `bin/duckstation-qt`.
|
||||
|
||||
### macOS
|
||||
**NOTA:** macOS é altamente experimental e não foi testado pelo desenvolvedor. Use por sua própria conta e risco, pode ser que quase nada funcione corretamente.
|
||||
|
||||
Requisitos:
|
||||
- CMake (instalado por padrão? caso contrário, `brew install cmake`)
|
||||
- SDL2 (`brew install sdl2`)
|
||||
- Qt 5 (`brew install qt5`)
|
||||
- CMake
|
||||
- SDL2 (pelo menos a versão 2.28.2)
|
||||
- Qt 6 (pelo menos a versão 6.5.1)
|
||||
|
||||
1. Clone o repositório. Submódulos não são necessários, há apenas um e é usado apenas para Windows (`git clone https://github.com/stenzek/duckstation.git -b dev`).
|
||||
2. Clone o repositório externo do mac (autor: MoltenVK): `git clone https://github.com/stenzek/duckstation-ext-mac.git dep/mac`.
|
||||
2. Crie um diretório de construção, diretório em árvore ou em outro lugar, ex:. `mkdir build-release`, `cd build-release`.
|
||||
3. Execute cmake para configurar o sistema de compilação: `cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_NOGUI_FRONTEND=OFF -DBUILD_QT_FRONTEND=ON -DUSE_SDL2=ON -DQt5_DIR=/usr/local/opt/qt@5/lib/cmake/Qt5 ..`. Será necessário ajustar `Qt5_DIR` dependendo do sistema.
|
||||
4. Compile o código fonte: `make`. Use `make -jN` onde `N` é o número de núcleos de CPU em seu sistema para uma construção mais rápida.
|
||||
5. Execute o arquivo, localizado no diretório criado `bin/DuckStation.app`.
|
||||
Opcional (recomendado para compilações mais rápidas):
|
||||
- Ninja
|
||||
|
||||
## Diretório do usuário
|
||||
O "diretório do usuário" é onde você deve colocar as imagens do BIOS, onde as configurações são salvas e os cartões de memória / estados salvos são salvos por padrão.
|
||||
Uma opção [Banco de dados de controle de jogo SDL](#Banco-de-dados-de-controle-de-jogo-SDL) pode ser acrescentada ai.
|
||||
1. Clone o repositório: `git clone https://github.com/stenzek/duckstation.git`.
|
||||
2. Execute o CMake para configurar o sistema de compilação: `cmake -Bbuild-release -DCMAKE_BUILD_TYPE=Release`. Você pode precisar especificar `-DQt6_DIR` dependendo do seu sistema. Se você tiver o Ninja instalado, adicione `-GNinja` ao final da linha de comando do CMake para compilações mais rápidas.
|
||||
4. Compile o código-fonte: `cmake --build build-release --parallel`.
|
||||
5. Execute o binário, que está localizado no diretório de compilação em `bin/DuckStation.app`.
|
||||
|
||||
Ele está localizado nos seguintes locais, dependendo da plataforma que você está usando:
|
||||
## Diretórios de Usuários
|
||||
O "Diretório de Usuário" é onde você deve colocar suas imagens da BIOS, onde as configurações são salvas e onde os cartões de memória e estados de salvamento são salvos por padrão. Um [arquivo opcional de banco de dados de controle de jogo SDL](#sdl-game-controller-database) também pode ser colocado aqui.
|
||||
|
||||
- Windows: Meus documentos\DuckStation
|
||||
Ele está localizado nos seguintes lugares, dependendo da plataforma que você está usando:
|
||||
|
||||
- Windows: Meus Documentos\DuckStation
|
||||
- Linux: `$XDG_DATA_HOME/duckstation`, ou `~/.local/share/duckstation`.
|
||||
- macOS: `~/Library/Application Support/DuckStation`.
|
||||
|
||||
Então, se você estivesse usando Linux, você colocaria suas imagens de BIOS em `~/.local/share/duckstation/bios`. Este diretório será criado ao executar o DuckStation pela primeira vez.
|
||||
Portanto, se você estiver usando o Linux, sugiro colocar suas imagens do BIOS em `~/.local/share/duckstation/bios`. Este diretório será criado na primeira vez que você executar o DuckStation.
|
||||
|
||||
Se você deseja usar uma versão "portátil", onde o diretório do usuário é o mesmo de onde o executável está localizado, crie um arquivo vazio chamado `portable.txt` no mesmo diretório que o executável do DuckStation.
|
||||
Se você deseja usar uma compilação "portátil", onde o diretório do usuário é o mesmo onde o executável está localizado, crie um arquivo vazio chamado `portable.txt` no mesmo diretório onde o executável do DuckStation está.
|
||||
|
||||
## Atribuições via interface QT
|
||||
Seu teclado ou controle pode ser usado para simular uma variedade de controles de PlayStation. A entrada do controle é suportada por meio da opção XInput, DInput e SDL e pode ser alterada da seguinte forma: `Configurações -> Configurações Gerais`.
|
||||
## Associações para a interface Qt
|
||||
Seu teclado ou controle podem ser usados para simular uma variedade de controles de PlayStation. A entrada do controle é suportada através dos back-ends DInput, XInput e SDL e pode ser alterada em `Configurações -> Configurações Gerais`.
|
||||
|
||||
Para atribuir o seu dispositivo, vá até `Configurações -> Configurações de controles`. Cada um dos botões / eixos do controle simulado será listado, correspondente no dispositivo ao qual está vinculado no momento. Para religar, clique na caixa ao lado do botão / nome do eixo e pressione a tecla ou botão no dispositivo de entrada que deseja vincular. Para vincular o 'rumble' vibração, basta pressionar qualquer botão no controle para o qual deseja atribuir a função rumble ou vibração.
|
||||
Para atribuir seu dispositivo de entrada, vá para `Configurações -> Configurações do Controle`. Cada um dos botões/eixos para o controle emulador será listado, juntamente com a tecla/botão correspondente do seu dispositivo a que ele atualmente em uso. Para atribuir novamente, clique na caixa ao lado do nome do botão/eixo e pressione a tecla ou botão do seu dispositivo de entrada que deseja atribuir. Ao atribuir a vibração, basta pressionar qualquer botão no controle para o qual você deseja que seja configurado.
|
||||
|
||||
## Banco de dados de controle de jogo SDL
|
||||
As versões do DuckStation vêm com um banco de dados de mapeamentos de controles com a opção de controle SDL, cortesia de: https://github.com/gabomdq/SDL_GameControllerDB. O arquivo `gamecontrollerdb.txt` pode ser encontrado na pasta `database` dentro do diretório do emulador.
|
||||
## Banco de Dados de Controle de Jogo SDL
|
||||
Os lançamentos do DuckStation incluem um banco de dados de mapeamentos de controle de jogo para o back-end do controle SDL, cortesia de https://github.com/gabomdq/SDL_GameControllerDB. O arquivo `gamecontrollerdb.txt` incluído pode ser encontrado no subdiretório `database` do diretório do programa DuckStation.
|
||||
|
||||
Se você estiver tendo problemas para vincular seu controle com a opção SDL, pode ser necessário adicionar um vínculo personalizado ao arquivo de banco de dados. Faça uma cópia do `gamecontrollerdb.txt` e coloque em seu [diretório de usuário](#Diretório-do-usuário) (ou diretamente no diretório do programa, se estiver executando em modo portátil) e siga as instruções em [SDL_GameControllerDB repositório](https://github.com/gabomdq/SDL_GameControllerDB) para criar um novo mapeamento. Adicione a entrada para este mapeamento em `gamecontrollerdb.txt` e seu controle deverá ser reconhecido corretamente.
|
||||
Se você estiver tendo problemas para associar seu controle com o back-end do controlador SDL, pode ser necessário adicionar um mapeamento personalizado ao arquivo de banco de dados. Faça uma cópia de `gamecontrollerdb.txt` e coloque-o no seu [diretório de usuário](#user-directories) (ou diretamente no diretório do programa, se estiver executando em modo portátil) e siga as instruções no [repositório SDL_GameControllerDB](https://github.com/gabomdq/SDL_GameControllerDB) para criar um novo mapeamento. Adicione este mapeamento à nova cópia de `gamecontrollerdb.txt` e seu controle deve ser reconhecido corretamente.
|
||||
|
||||
## Atribuições padrão
|
||||
Controle 1:
|
||||
- **D-Pad:** W/A/S/D
|
||||
- **Triangulo/Quadrado/Círculo/Cruz:** Numpad8/Numpad4/Numpad6/Numpad2
|
||||
- **Triângulo/Quadrado/Círculo/Cruz:** Numpad8/Numpad4/Numpad6/Numpad2
|
||||
- **L1/R1:** Q/E
|
||||
- **L2/R2:** 1/3
|
||||
- **Start:** Enter
|
||||
- **Select:** Backspace
|
||||
|
||||
Atalhos:
|
||||
- **Esc:** Desliga o console
|
||||
- **ALT+ENTER:** Alterna modo tela-cheia
|
||||
- **Tab:** Desativar temporariamente o limitador de velocidade
|
||||
- **Barra de espaço:** Pausa/resume a emulação
|
||||
- **Esc:** Abrir Menu de Pausa
|
||||
- **F11:** Alternar Tela Cheia
|
||||
- **Tab:** Desativar Temporariamente o Limitador de Velocidade
|
||||
- **Espaço:** Pausar/Continuar Emulação
|
||||
|
||||
## Capturas de tela
|
||||
<p align="center">
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/monkey.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/monkey.jpg" alt="Monkey Hero" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/rrt4.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/rrt4.jpg" alt="Ridge Racer Type 4" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/tr2.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/tr2.jpg" alt="Tomb Raider 2" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/quake2.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/quake2.jpg" alt="Quake 2" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/croc.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/croc.jpg" alt="Croc" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/croc2.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/croc2.jpg" alt="Croc 2" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/ff7.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/ff7.jpg" alt="Final Fantasy 7" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/mm8.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/mm8.jpg" alt="Mega Man 8" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/ff8.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/ff8.jpg" alt="Final Fantasy 8 in Fullscreen UI" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/spyro.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/spyro.jpg" alt="Spyro in Fullscreen UI" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/tof.jpg"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/tof.jpg" alt="Threads of Fate in Fullscreen UI" width="400" /></a>
|
||||
<a href="https://raw.githubusercontent.com/stenzek/duckstation/md-images/gamegrid.png"><img src="https://raw.githubusercontent.com/stenzek/duckstation/md-images/gamegrid.png" alt="Game Grid" width="400" /></a>
|
||||
</p>
|
||||
## Avisos Legais
|
||||
|
||||
## Avisos
|
||||
Ícone por icons8: https://icons8.com/icon/74847/platforms.undefined.short-title
|
||||
|
||||
Ícone feito icons8: https://icons8.com/icon/74847/platforms.undefined.short-title
|
||||
|
||||
"PlayStation" e "PSX" são marcas registradas da Sony Interactive Entertainment Europe Limited.
|
||||
Este projeto não é afiliado de forma alguma com a Sony Interactive Entertainment.
|
||||
"PlayStation" e "PSX" são marcas registradas da Sony Interactive Entertainment Europe Limited. Este projeto não está afiliado de forma alguma com a Sony Interactive Entertainment.
|
||||
|
|
|
@ -6673,7 +6673,7 @@ Conquistas: %5 (%6)
|
|||
<context>
|
||||
<name>Error</name>
|
||||
<message>
|
||||
<location filename="../../util/opengl_device.cpp" line="462"/>
|
||||
<location filename="../../util/opengl_device.cpp" line="480"/>
|
||||
<source>Both texture buffers and SSBOs are not supported, or are of inadequate size.</source>
|
||||
<translation>SSOB e suas texturas armazenadas não são suportados ou são de tamanho inadequado.</translation>
|
||||
</message>
|
||||
|
@ -9914,13 +9914,13 @@ Error was:</source>
|
|||
<context>
|
||||
<name>GPUDevice</name>
|
||||
<message>
|
||||
<location filename="../../util/opengl_device.cpp" line="316"/>
|
||||
<location filename="../../util/opengl_device.cpp" line="461"/>
|
||||
<location filename="../../util/opengl_device.cpp" line="318"/>
|
||||
<location filename="../../util/opengl_device.cpp" line="479"/>
|
||||
<source>Error</source>
|
||||
<translation>Erro</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../util/opengl_device.cpp" line="317"/>
|
||||
<location filename="../../util/opengl_device.cpp" line="319"/>
|
||||
<source>OpenGL renderer unavailable, your driver or hardware is not recent enough. OpenGL 3.1 or OpenGL ES 3.1 is required.</source>
|
||||
<translation>Renderizador openGL não disponível, driver ou hardware não compatíveis. OpenGL 3.1 ou OpenGLES 3.0 são obrigatórios.</translation>
|
||||
</message>
|
||||
|
@ -10288,47 +10288,47 @@ Error was:</source>
|
|||
<message>
|
||||
<location filename="../qtutils.cpp" line="699"/>
|
||||
<source>1x</source>
|
||||
<translation>1x > (1024x512)</translation>
|
||||
<translation>1x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="700"/>
|
||||
<source>2x</source>
|
||||
<translation>2x > (2048x1024)</translation>
|
||||
<translation>2x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="701"/>
|
||||
<source>3x (for 720p)</source>
|
||||
<translation>3x > (3072x1536)</translation>
|
||||
<translation>3x (para 720p)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="702"/>
|
||||
<source>4x</source>
|
||||
<translation>4x > (4096x2048)</translation>
|
||||
<translation>4x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="703"/>
|
||||
<source>5x (for 1080p)</source>
|
||||
<translation>5x > (5120x2560)</translation>
|
||||
<translation>5x (para 1080p)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="704"/>
|
||||
<source>6x (for 1440p)</source>
|
||||
<translation>6x >(6144x3072)</translation>
|
||||
<translation>6x (para 1440p)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="705"/>
|
||||
<source>7x</source>
|
||||
<translation>7x > (7168x3584)</translation>
|
||||
<translation>7x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="706"/>
|
||||
<source>8x</source>
|
||||
<translation>8x > (8192x4096)</translation>
|
||||
<translation>8x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="707"/>
|
||||
<source>9x (for 4K)</source>
|
||||
<translation>9x > (9216x4608) 4K</translation>
|
||||
<translation>9x > (para 4K)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="740"/>
|
||||
|
@ -10352,37 +10352,37 @@ Error was:</source>
|
|||
<message>
|
||||
<location filename="../qtutils.cpp" line="708"/>
|
||||
<source>10x</source>
|
||||
<translation>10x > (10240x5120)</translation>
|
||||
<translation>10x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="709"/>
|
||||
<source>11x</source>
|
||||
<translation>11x > (11264x5632)</translation>
|
||||
<translation>11x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="710"/>
|
||||
<source>12x</source>
|
||||
<translation>12x > (12288x6144)</translation>
|
||||
<translation>12x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="711"/>
|
||||
<source>13x</source>
|
||||
<translation>13x > (13312x6656)</translation>
|
||||
<translation>13x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="712"/>
|
||||
<source>14x</source>
|
||||
<translation>14x > (14336x7168)</translation>
|
||||
<translation>14x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="713"/>
|
||||
<source>15x</source>
|
||||
<translation>15x > (15360x7680)</translation>
|
||||
<translation>15x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qtutils.cpp" line="714"/>
|
||||
<source>16x</source>
|
||||
<translation>16x > (16384x8192)</translation>
|
||||
<translation>16x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1x%2</source>
|
||||
|
@ -12876,8 +12876,8 @@ This will download approximately 4 megabytes over your current internet connecti
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.ui" line="39"/>
|
||||
<location filename="../mainwindow.cpp" line="1164"/>
|
||||
<location filename="../mainwindow.cpp" line="1417"/>
|
||||
<location filename="../mainwindow.cpp" line="1163"/>
|
||||
<location filename="../mainwindow.cpp" line="1416"/>
|
||||
<source>Change Disc</source>
|
||||
<translation>Mudar disco</translation>
|
||||
</message>
|
||||
|
@ -12892,8 +12892,8 @@ This will download approximately 4 megabytes over your current internet connecti
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.ui" line="63"/>
|
||||
<location filename="../mainwindow.cpp" line="739"/>
|
||||
<location filename="../mainwindow.cpp" line="1032"/>
|
||||
<location filename="../mainwindow.cpp" line="738"/>
|
||||
<location filename="../mainwindow.cpp" line="1031"/>
|
||||
<source>Load State</source>
|
||||
<translation>Carregar estado</translation>
|
||||
</message>
|
||||
|
@ -13089,13 +13089,13 @@ This will download approximately 4 megabytes over your current internet connecti
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.ui" line="962"/>
|
||||
<location filename="../mainwindow.cpp" line="1215"/>
|
||||
<location filename="../mainwindow.cpp" line="1214"/>
|
||||
<source>Start Big Picture Mode</source>
|
||||
<translation>Iniciar em modo tela grande</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.ui" line="971"/>
|
||||
<location filename="../mainwindow.cpp" line="1216"/>
|
||||
<location filename="../mainwindow.cpp" line="1215"/>
|
||||
<source>Big Picture</source>
|
||||
<translation>Modo tela grande</translation>
|
||||
</message>
|
||||
|
@ -13368,7 +13368,7 @@ This will download approximately 4 megabytes over your current internet connecti
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.ui" line="805"/>
|
||||
<location filename="../mainwindow.cpp" line="736"/>
|
||||
<location filename="../mainwindow.cpp" line="735"/>
|
||||
<source>Resume</source>
|
||||
<translation>Continuar</translation>
|
||||
</message>
|
||||
|
@ -13524,12 +13524,12 @@ This will download approximately 4 megabytes over your current internet connecti
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="660"/>
|
||||
<location filename="../mainwindow.cpp" line="1149"/>
|
||||
<location filename="../mainwindow.cpp" line="1148"/>
|
||||
<source>Select Disc Image</source>
|
||||
<translation>Escolha uma imagem de disco</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1134"/>
|
||||
<location filename="../mainwindow.cpp" line="1133"/>
|
||||
<source>Start Disc</source>
|
||||
<translation>Iniciar disco</translation>
|
||||
</message>
|
||||
|
@ -13549,8 +13549,8 @@ This will download approximately 4 megabytes over your current internet connecti
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="304"/>
|
||||
<location filename="../mainwindow.cpp" line="1052"/>
|
||||
<location filename="../mainwindow.cpp" line="1331"/>
|
||||
<location filename="../mainwindow.cpp" line="1051"/>
|
||||
<location filename="../mainwindow.cpp" line="1330"/>
|
||||
<source>Error</source>
|
||||
<translation>Erro</translation>
|
||||
</message>
|
||||
|
@ -13570,101 +13570,101 @@ This will download approximately 4 megabytes over your current internet connecti
|
|||
<translation>Escolha a unidade de disco:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="759"/>
|
||||
<location filename="../mainwindow.cpp" line="758"/>
|
||||
<source>Resume (%1)</source>
|
||||
<translation>Continuar (%1)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="766"/>
|
||||
<location filename="../mainwindow.cpp" line="883"/>
|
||||
<location filename="../mainwindow.cpp" line="922"/>
|
||||
<location filename="../mainwindow.cpp" line="765"/>
|
||||
<location filename="../mainwindow.cpp" line="882"/>
|
||||
<location filename="../mainwindow.cpp" line="921"/>
|
||||
<source>Game Save %1 (%2)</source>
|
||||
<translation>Jogo salvo %1 (%2)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="775"/>
|
||||
<location filename="../mainwindow.cpp" line="774"/>
|
||||
<source>Edit Memory Cards...</source>
|
||||
<translation>Editar cartões de memória...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="823"/>
|
||||
<location filename="../mainwindow.cpp" line="822"/>
|
||||
<source>Delete Save States...</source>
|
||||
<translation>Apagar estados salvos...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="829"/>
|
||||
<location filename="../mainwindow.cpp" line="828"/>
|
||||
<source>Confirm Save State Deletion</source>
|
||||
<translation>Confirmar deleção de estado salvo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="830"/>
|
||||
<location filename="../mainwindow.cpp" line="829"/>
|
||||
<source>Are you sure you want to delete all save states for %1?
|
||||
|
||||
The saves will not be recoverable.</source>
|
||||
<translation>Tem certeza de que deseja apagar os estados salvos %1? Não será possivel reverter esta ação.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="867"/>
|
||||
<location filename="../mainwindow.cpp" line="866"/>
|
||||
<source>Load From File...</source>
|
||||
<translation>Carregar do arquivo...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="869"/>
|
||||
<location filename="../mainwindow.cpp" line="911"/>
|
||||
<location filename="../mainwindow.cpp" line="868"/>
|
||||
<location filename="../mainwindow.cpp" line="910"/>
|
||||
<source>Select Save State File</source>
|
||||
<translation>Escolher arquivo de salvamento rápido</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="869"/>
|
||||
<location filename="../mainwindow.cpp" line="911"/>
|
||||
<location filename="../mainwindow.cpp" line="868"/>
|
||||
<location filename="../mainwindow.cpp" line="910"/>
|
||||
<source>Save States (*.sav)</source>
|
||||
<translation>Salvamento rápido (*.sav)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="875"/>
|
||||
<location filename="../mainwindow.cpp" line="874"/>
|
||||
<source>Undo Load State</source>
|
||||
<translation>Desfazer estado carregado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="883"/>
|
||||
<location filename="../mainwindow.cpp" line="922"/>
|
||||
<location filename="../mainwindow.cpp" line="882"/>
|
||||
<location filename="../mainwindow.cpp" line="921"/>
|
||||
<source>Game Save %1 (Empty)</source>
|
||||
<translation>Jogo salvo %1 (Vazio)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="889"/>
|
||||
<location filename="../mainwindow.cpp" line="928"/>
|
||||
<location filename="../mainwindow.cpp" line="888"/>
|
||||
<location filename="../mainwindow.cpp" line="927"/>
|
||||
<source>Global Save %1 (%2)</source>
|
||||
<translation>Compartimento global %1 (%2)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="889"/>
|
||||
<location filename="../mainwindow.cpp" line="928"/>
|
||||
<location filename="../mainwindow.cpp" line="888"/>
|
||||
<location filename="../mainwindow.cpp" line="927"/>
|
||||
<source>Global Save %1 (Empty)</source>
|
||||
<translation>Compartimento global %1 (Vazio)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="906"/>
|
||||
<location filename="../mainwindow.cpp" line="905"/>
|
||||
<source>Save To File...</source>
|
||||
<translation>Salvar para arquivo...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="971"/>
|
||||
<location filename="../mainwindow.cpp" line="970"/>
|
||||
<source>&Enabled Cheats</source>
|
||||
<translation>&Trapaças ativadas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="973"/>
|
||||
<location filename="../mainwindow.cpp" line="972"/>
|
||||
<source>&Apply Cheats</source>
|
||||
<translation>&Aplicar trapaças</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1027"/>
|
||||
<location filename="../mainwindow.cpp" line="1026"/>
|
||||
<source>Load Resume State</source>
|
||||
<translation>Carregar estado salvo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1028"/>
|
||||
<location filename="../mainwindow.cpp" line="1027"/>
|
||||
<source>A resume save state was found for this game, saved at:
|
||||
|
||||
%1.
|
||||
|
@ -13677,88 +13677,88 @@ Do you want to load this state, or start from a fresh boot?</source>
|
|||
Você deseja que este arquivo seja carregado ou que seja reiniciado novamente?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1033"/>
|
||||
<location filename="../mainwindow.cpp" line="1032"/>
|
||||
<source>Fresh Boot</source>
|
||||
<translation>Inicialização limpa</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1034"/>
|
||||
<location filename="../mainwindow.cpp" line="1033"/>
|
||||
<source>Delete And Boot</source>
|
||||
<translation>Excluir e iniciar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1053"/>
|
||||
<location filename="../mainwindow.cpp" line="1052"/>
|
||||
<source>Failed to delete save state file '%1'.</source>
|
||||
<translation>Falha ao apagar o arquivo de estado salvo '%1'.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1110"/>
|
||||
<location filename="../mainwindow.cpp" line="1109"/>
|
||||
<source>Confirm Disc Change</source>
|
||||
<translation>Confirmar troca de disco</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1111"/>
|
||||
<location filename="../mainwindow.cpp" line="1110"/>
|
||||
<source>Do you want to swap discs or boot the new image (via system reset)?</source>
|
||||
<translation>Deseja trocar discos ou inicializar outro (via reinicialização do sistema)?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1113"/>
|
||||
<location filename="../mainwindow.cpp" line="1112"/>
|
||||
<source>Swap Disc</source>
|
||||
<translation>Trocar disco</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1114"/>
|
||||
<location filename="../mainwindow.cpp" line="1113"/>
|
||||
<source>Reset</source>
|
||||
<translation>Redefinir</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1115"/>
|
||||
<location filename="../mainwindow.cpp" line="1114"/>
|
||||
<source>Cancel</source>
|
||||
<translation>Cancelar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1199"/>
|
||||
<location filename="../mainwindow.cpp" line="2743"/>
|
||||
<location filename="../mainwindow.cpp" line="1198"/>
|
||||
<location filename="../mainwindow.cpp" line="2742"/>
|
||||
<source>Cheat Manager</source>
|
||||
<translation>Gerenciador de trapaças</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1215"/>
|
||||
<location filename="../mainwindow.cpp" line="1214"/>
|
||||
<source>Stop Big Picture Mode</source>
|
||||
<translation>Parar modo tela cheia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1216"/>
|
||||
<location filename="../mainwindow.cpp" line="1215"/>
|
||||
<source>Exit Big Picture</source>
|
||||
<translation>Sair do modo tela cheia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1331"/>
|
||||
<location filename="../mainwindow.cpp" line="1330"/>
|
||||
<source>You must select a disc to change discs.</source>
|
||||
<translation>Você deve escolher um disco para confirmar a troca</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1442"/>
|
||||
<location filename="../mainwindow.cpp" line="1441"/>
|
||||
<source>All Cover Image Types (*.jpg *.jpeg *.png *.webp)</source>
|
||||
<translation>Todos os tipos de imagem de capa (*.jpg *.jpeg *.png *.webp)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1456"/>
|
||||
<location filename="../mainwindow.cpp" line="1455"/>
|
||||
<source>You must select a different file to the current cover image.</source>
|
||||
<translation>Você deve selecionar um arquivo diferente da imagem de capa atual.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1480"/>
|
||||
<location filename="../mainwindow.cpp" line="1479"/>
|
||||
<source>Failed to remove '%1'</source>
|
||||
<translation>Falha ao remover '%1'</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1489"/>
|
||||
<location filename="../mainwindow.cpp" line="1488"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Confirmar redefinição</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1490"/>
|
||||
<location filename="../mainwindow.cpp" line="1489"/>
|
||||
<source>Are you sure you want to reset the play time for '%1'?
|
||||
|
||||
This action cannot be undone.</source>
|
||||
|
@ -13771,57 +13771,57 @@ Esta ação não poderá ser desfeita.</translation>
|
|||
<translation type="vanished">Não foi possível encontrar uma entrada da lista de jogos para o arquivo em execução no momento. Certifique-se de que este arquivo esteja em um local verificado pela lista de jogos.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1370"/>
|
||||
<location filename="../mainwindow.cpp" line="1369"/>
|
||||
<source>Properties...</source>
|
||||
<translation>Propriedades...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1374"/>
|
||||
<location filename="../mainwindow.cpp" line="1373"/>
|
||||
<source>Open Containing Directory...</source>
|
||||
<translation>Abrir diretório...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1379"/>
|
||||
<location filename="../mainwindow.cpp" line="1378"/>
|
||||
<source>Set Cover Image...</source>
|
||||
<translation>Definir imagem de capa...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1389"/>
|
||||
<location filename="../mainwindow.cpp" line="1388"/>
|
||||
<source>Default Boot</source>
|
||||
<translation>Inicialização padrão</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1392"/>
|
||||
<location filename="../mainwindow.cpp" line="1391"/>
|
||||
<source>Fast Boot</source>
|
||||
<translation>Inicialização rápida</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1398"/>
|
||||
<location filename="../mainwindow.cpp" line="1397"/>
|
||||
<source>Full Boot</source>
|
||||
<translation>Inicialização completa</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1406"/>
|
||||
<location filename="../mainwindow.cpp" line="1405"/>
|
||||
<source>Boot and Debug</source>
|
||||
<translation>Iniciar jogo com depurador</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1426"/>
|
||||
<location filename="../mainwindow.cpp" line="1425"/>
|
||||
<source>Exclude From List</source>
|
||||
<translation>Excluir da lista</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1429"/>
|
||||
<location filename="../mainwindow.cpp" line="1428"/>
|
||||
<source>Reset Play Time</source>
|
||||
<translation>Redefinir tempo de jogo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1433"/>
|
||||
<location filename="../mainwindow.cpp" line="1432"/>
|
||||
<source>Add Search Directory...</source>
|
||||
<translation>Adicionar um novo diretório...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1442"/>
|
||||
<location filename="../mainwindow.cpp" line="1441"/>
|
||||
<source>Select Cover Image</source>
|
||||
<translation>Escolher imagem de capa</translation>
|
||||
</message>
|
||||
|
@ -13830,30 +13830,30 @@ Esta ação não poderá ser desfeita.</translation>
|
|||
<translation type="vanished">Todos os tipos de imagem de capa (*.jpg *.jpeg *.png)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1460"/>
|
||||
<location filename="../mainwindow.cpp" line="1459"/>
|
||||
<source>Cover Already Exists</source>
|
||||
<translation>Capa já existe</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1461"/>
|
||||
<location filename="../mainwindow.cpp" line="1460"/>
|
||||
<source>A cover image for this game already exists, do you wish to replace it?</source>
|
||||
<translation>A capa para este jogo já existe, deseja substituí-lá?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1456"/>
|
||||
<location filename="../mainwindow.cpp" line="1470"/>
|
||||
<location filename="../mainwindow.cpp" line="1475"/>
|
||||
<location filename="../mainwindow.cpp" line="1480"/>
|
||||
<location filename="../mainwindow.cpp" line="1455"/>
|
||||
<location filename="../mainwindow.cpp" line="1469"/>
|
||||
<location filename="../mainwindow.cpp" line="1474"/>
|
||||
<location filename="../mainwindow.cpp" line="1479"/>
|
||||
<source>Copy Error</source>
|
||||
<translation>Erro ao copiar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1470"/>
|
||||
<location filename="../mainwindow.cpp" line="1469"/>
|
||||
<source>Failed to remove existing cover '%1'</source>
|
||||
<translation>Falha ao remover capa existente '%1'</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1475"/>
|
||||
<location filename="../mainwindow.cpp" line="1474"/>
|
||||
<source>Failed to copy '%1' to '%2'</source>
|
||||
<translation>Falha ao copiar '%1' para '%2'</translation>
|
||||
</message>
|
||||
|
@ -13862,25 +13862,25 @@ Esta ação não poderá ser desfeita.</translation>
|
|||
<translation type="vanished">Idioma alterado. Reinicie o emulador para o aplicar.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="1636"/>
|
||||
<location filename="../mainwindow.cpp" line="1635"/>
|
||||
<source>%1x Scale</source>
|
||||
<translation>Expandir para %1x</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2049"/>
|
||||
<location filename="../mainwindow.cpp" line="2056"/>
|
||||
<location filename="../mainwindow.cpp" line="2065"/>
|
||||
<location filename="../mainwindow.cpp" line="2048"/>
|
||||
<location filename="../mainwindow.cpp" line="2055"/>
|
||||
<location filename="../mainwindow.cpp" line="2064"/>
|
||||
<source>Destination File</source>
|
||||
<translation>Destino do arquivo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2049"/>
|
||||
<location filename="../mainwindow.cpp" line="2065"/>
|
||||
<location filename="../mainwindow.cpp" line="2048"/>
|
||||
<location filename="../mainwindow.cpp" line="2064"/>
|
||||
<source>Binary Files (*.bin)</source>
|
||||
<translation>Arquivos binários (*.bin)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2057"/>
|
||||
<location filename="../mainwindow.cpp" line="2056"/>
|
||||
<source>Binary Files (*.bin);;PNG Images (*.png)</source>
|
||||
<translation>Arquivos (*.bin);;Imagens (*.png)</translation>
|
||||
</message>
|
||||
|
@ -13918,56 +13918,56 @@ Esta ação não poderá ser desfeita.</translation>
|
|||
<translation>Escuro</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2562"/>
|
||||
<location filename="../mainwindow.cpp" line="2561"/>
|
||||
<source>Confirm Shutdown</source>
|
||||
<translation>Confirmar desligamento</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2563"/>
|
||||
<location filename="../mainwindow.cpp" line="2562"/>
|
||||
<source>Are you sure you want to shut down the virtual machine?</source>
|
||||
<translation>Tem certeza de que deseja desligar a máquina virtual?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2565"/>
|
||||
<location filename="../mainwindow.cpp" line="2564"/>
|
||||
<source>Save State For Resume</source>
|
||||
<translation>Salvar estado e continuar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2642"/>
|
||||
<location filename="../mainwindow.cpp" line="2647"/>
|
||||
<location filename="../mainwindow.cpp" line="2667"/>
|
||||
<location filename="../mainwindow.cpp" line="2676"/>
|
||||
<location filename="../mainwindow.cpp" line="2641"/>
|
||||
<location filename="../mainwindow.cpp" line="2646"/>
|
||||
<location filename="../mainwindow.cpp" line="2666"/>
|
||||
<location filename="../mainwindow.cpp" line="2675"/>
|
||||
<source>Memory Card Not Found</source>
|
||||
<translation>Cartão de memória não encontrado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2643"/>
|
||||
<location filename="../mainwindow.cpp" line="2642"/>
|
||||
<source>Memory card '%1' does not exist. Do you want to create an empty memory card?</source>
|
||||
<translation>Cartão de memória '%1' não existe, você deseja criar um cartão de memória vazio?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2648"/>
|
||||
<location filename="../mainwindow.cpp" line="2647"/>
|
||||
<source>Failed to create memory card '%1'</source>
|
||||
<translation>Falha ao criar cartão de memória '%1'</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2668"/>
|
||||
<location filename="../mainwindow.cpp" line="2677"/>
|
||||
<location filename="../mainwindow.cpp" line="2667"/>
|
||||
<location filename="../mainwindow.cpp" line="2676"/>
|
||||
<source>Memory card '%1' could not be found. Try starting the game and saving to create it.</source>
|
||||
<translation>Cartão de memória '%1' não encotrado. Experimente iniciar o jogo e salvá-lo para que ele seja criado.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2693"/>
|
||||
<location filename="../mainwindow.cpp" line="2692"/>
|
||||
<source>RA: Logged in as %1 (%2, %3 softcore). %4 unread messages.</source>
|
||||
<translation>RA: conectado como %1 (%2, %3 normal). %4 mensagens não lidas.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2741"/>
|
||||
<location filename="../mainwindow.cpp" line="2740"/>
|
||||
<source>Do not show again</source>
|
||||
<translation>Não mostrar de novo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2745"/>
|
||||
<location filename="../mainwindow.cpp" line="2744"/>
|
||||
<source>Using cheats can have unpredictable effects on games, causing crashes, graphical glitches, and corrupted saves. By using the cheat manager, you agree that it is an unsupported configuration, and we will not provide you with any assistance when games break.
|
||||
|
||||
Cheats persist through save states even after being disabled, please remember to reset/reboot the game after turning off any codes.
|
||||
|
@ -13980,17 +13980,17 @@ As trapaças ficam guardadas no estado de salvamento rápido mesmo após serem d
|
|||
Tem certeza de que deseja continuar?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2820"/>
|
||||
<location filename="../mainwindow.cpp" line="2819"/>
|
||||
<source>Updater Error</source>
|
||||
<translation>Erro na atualização</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2826"/>
|
||||
<location filename="../mainwindow.cpp" line="2825"/>
|
||||
<source><p>Sorry, you are trying to update a DuckStation version which is not an official GitHub release. To prevent incompatibilities, the auto-updater is only enabled on official builds.</p><p>To obtain an official build, please follow the instructions under "Downloading and Running" at the link below:</p><p><a href="https://github.com/stenzek/duckstation/">https://github.com/stenzek/duckstation/</a></p></source>
|
||||
<translation><p>Desculpe, mas você está tentando atualizar uma versão não oficial do Duckstation. Para evitarmos imcompatibilidade, o atualizador automático só poderá ser usado nas versões oficiais! </p><p>Para obtê-las, siga as instruções de como e onde no link "Baixando e rodando" conforme abaixo:</p><p><a href="https://github.com/stenzek/duckstation/">https://github.com/stenzek/duckstation/</a></p></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../mainwindow.cpp" line="2832"/>
|
||||
<location filename="../mainwindow.cpp" line="2831"/>
|
||||
<source>Automatic updating is not supported on the current platform.</source>
|
||||
<translation>Atualizações automáticas não são compatíveis com a plataforma atual.</translation>
|
||||
</message>
|
||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue