diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index 1303aabd0..0c2130485 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -6,7 +6,8 @@ The following people have contributed to the project in some way, and are credit
- @ggrtk
## Translators
-- Anderson Cardoso - Portuguese
+- Anderson Cardoso - Portuguese (Br)
+- @bajolzas - Portuguese (Pt)
## Game Compatibility Database
- @Zet-sensei
diff --git a/src/duckstation-qt/duckstation-qt.vcxproj b/src/duckstation-qt/duckstation-qt.vcxproj
index 7d7f67445..6d3e7ed66 100644
--- a/src/duckstation-qt/duckstation-qt.vcxproj
+++ b/src/duckstation-qt/duckstation-qt.vcxproj
@@ -190,6 +190,10 @@
Document
+
+
+
+
diff --git a/src/duckstation-qt/duckstation-qt.vcxproj.filters b/src/duckstation-qt/duckstation-qt.vcxproj.filters
index 0ffb89f82..25a450a48 100644
--- a/src/duckstation-qt/duckstation-qt.vcxproj.filters
+++ b/src/duckstation-qt/duckstation-qt.vcxproj.filters
@@ -45,12 +45,12 @@
+
-
@@ -84,6 +84,7 @@
+
@@ -110,4 +111,12 @@
+
+
+ translations
+
+
+ translations
+
+
\ No newline at end of file
diff --git a/src/duckstation-qt/qthostinterface.cpp b/src/duckstation-qt/qthostinterface.cpp
index 053a600a9..a4601fa0e 100644
--- a/src/duckstation-qt/qthostinterface.cpp
+++ b/src/duckstation-qt/qthostinterface.cpp
@@ -53,7 +53,9 @@ const char* QtHostInterface::GetFrontendName() const
std::vector> QtHostInterface::getAvailableLanguageList()
{
- return {{QStringLiteral("English"), QStringLiteral("")}, {QStringLiteral("Portuguese (Br)"), QStringLiteral("pt")}};
+ return {{QStringLiteral("English"), QStringLiteral("")},
+ {QStringLiteral("Portuguese (Pt)"), QStringLiteral("pt-pt")},
+ {QStringLiteral("Portuguese (Br)"), QStringLiteral("pt-br")}};
}
bool QtHostInterface::Initialize()
diff --git a/src/duckstation-qt/translations/duckstation-qt_pt.ts b/src/duckstation-qt/translations/duckstation-qt_pt-br.ts
similarity index 99%
rename from src/duckstation-qt/translations/duckstation-qt_pt.ts
rename to src/duckstation-qt/translations/duckstation-qt_pt-br.ts
index 089e27961..1521dc25c 100644
--- a/src/duckstation-qt/translations/duckstation-qt_pt.ts
+++ b/src/duckstation-qt/translations/duckstation-qt_pt-br.ts
@@ -1742,42 +1742,42 @@ The URL was: %1
QtHostInterface
-
+
Resumir
-
+
Carregar Estado
-
+
Resumir (%1)
-
+
%1 Salvar %2 (%3)
-
+
Jogo
-
+
Apagar Jogos Salvos...
-
+
Confirma deleção de Estado Salvo
-
+
diff --git a/src/duckstation-qt/translations/duckstation-qt_pt-pt.ts b/src/duckstation-qt/translations/duckstation-qt_pt-pt.ts
new file mode 100644
index 000000000..8329fa872
--- /dev/null
+++ b/src/duckstation-qt/translations/duckstation-qt_pt-pt.ts
@@ -0,0 +1,1933 @@
+
+
+
+
+ AboutDialog
+
+
+
+ Acerca do Duckstation
+
+
+
+
+ DuckStation
+
+
+
+ <!DOCTYPE HTML PUBLICO "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html><head><meta name="qrichtext" content="1" /><style type="text/css">
+p, li { white-space: pre-wrap; }
+</style></head><body style=" font-size:10pt; font-weight:400; font-style:normal;">
+<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">O DuckStation é um simulador/emulador gratuito e de código aberto da consola Sony<span style=" vertical-align:super;">TM</span> PlayStation, com foco na jogabilidade, velocidade e capacidade de manutenção a longo prazo.</p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Autores</span>:</p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> Connor McLaughlin <stenzek@gmail.com></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> icon do Pato por <a href="https://icons8.com/icon/74847/platforms.undefined.short-title"><span style=" text-decoration: underline; color:#0057ae;">icons8</span></a></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="https://github.com/stenzek/duckstation/blob/master/LICENSE"><span style=" text-decoration: underline; color:#0057ae;">Licença</span></a> | <a href="https://github.com/stenzek/duckstation"><span style=" text-decoration: underline; color:#0057ae;">GitHub</span></a> | <a href="https://discord.gg/Buktv3t"><span style=" text-decoration: underline; color:#0057ae;">Discord</span></a></p></body></html>
+
+
+
+
+ %1 (%2)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AdvancedSettingsWidget
+
+
+
+ Formulário
+
+
+
+
+ Registo
+
+
+
+
+ Nível de Registo:
+
+
+
+
+ Filtros de Registo:
+
+
+
+
+ Registo para a Consola de Sistema
+
+
+
+
+ Registo para Janela
+
+
+
+
+ Registo para a Consola de Depuração
+
+
+
+
+ Registo para Ficheiro
+
+
+
+
+ Ajustes/Modificações
+
+
+
+
+ Estas opções são ajustáveis para melhorar o desempenho/compatibilidade dos jogos. Usa-as por tua conta e risco. Valores modificados não serão suportados.
+
+
+
+
+ Máxima Fatia de DMA:
+
+
+
+
+ Truques de Interrupção de DMA:
+
+
+
+
+ Tamanho do FIFO da GPU:
+
+
+
+
+ Adiantamento Máximo da GPU:
+
+
+
+
+ Redefinir para o Padrão
+
+
+
+ AudioSettingsWidget
+
+
+
+ Formulário
+
+
+
+
+ Configuração
+
+
+
+
+ Aplicação:
+
+
+
+
+ Tamanho da Memória:
+
+
+
+
+ Latência Máxima: 0 fotogramas (0.00ms)
+
+
+
+
+ Sincronizar com a Saída
+
+
+
+
+ Começar a Extrair ao Iniciar
+
+
+
+
+ Comandos
+
+
+
+
+ Volume:
+
+
+
+
+
+ Mudo
+
+
+
+
+ 100%
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Latência máxima: %1 fotogramas (%2ms)
+
+
+
+
+ %1%
+
+
+
+ ConsoleSettingsWidget
+
+
+
+ Formulário
+
+
+
+
+ Consola
+
+
+
+
+ Região:
+
+
+
+
+ Caminho para a imagem BIOS:
+
+
+
+
+ Início Rápido
+
+
+
+
+ Ativar saída TTY
+
+
+
+
+ ...
+
+
+
+
+ Emulação da CPU
+
+
+
+
+ Modo de Execução:
+
+
+
+
+ Emulação do CDROM
+
+
+
+
+ Usar Leitura de Segmento (Assíncrona)
+
+
+
+
+ Ativar Verificação de Região
+
+
+
+
+ Pré-carregar Imagem para RAM
+
+
+
+
+ Escolher Imagem de BIOS
+
+
+
+ ControllerSettingsWidget
+
+
+
+ Tipo de Comando:
+
+
+
+
+ Carregar Perfil
+
+
+
+
+ Gravar Perfil
+
+
+
+
+ Apagar Tudo
+
+
+
+
+ Apagar Atribuições
+
+
+
+
+ Tens a certeza que queres apagar todas os comandos atribuidos?, Isto não pode ser revertido.
+
+
+
+
+
+ Reatribuir Tudo
+
+
+
+
+ Tens a certeza que queres reatribuir todos os comandos? Todos os comandos atribuidos atualmente serão apagados irreversívelmente. A reatribuição irá começar após a confirmação.
+
+
+
+
+ Entrada %1
+
+
+
+
+ Atribuir Botões:
+
+
+
+
+ Atribuir Analógicos:
+
+
+
+
+ Vibração
+
+
+
+
+
+
+ Procurar...
+
+
+
+
+ Escolher Ficheiro
+
+
+
+
+
+ Escolher o caminho para os ficheiros de perfil de comando
+
+
+
+
+ Novo...
+
+
+
+
+
+ Escolher o nome do Perfi
+
+
+
+
+
+ Erro
+
+
+
+
+ Sem nome atribuido, o perfil de comando não foi guardado.
+
+
+
+
+ Sem caminho atribuido, o perfil de comando não foi guradado.
+
+
+
+ GPUSettingsWidget
+
+
+
+ Formulário
+
+
+
+
+ Basico
+
+
+
+
+ Renderizador:
+
+
+
+
+ Adaptador:
+
+
+
+
+
+ Usar Dispositivo de Depuração
+
+
+
+
+ Exibição de Ecrã
+
+
+
+
+ Proporção do Ecrã:
+
+
+
+
+ Cortar:
+
+
+
+
+
+ Amplificação Linear
+
+
+
+
+
+ Amplificação Inteira
+
+
+
+
+
+ Sincronização Vertical (V-Sync)
+
+
+
+
+ Melhorias
+
+
+
+
+ Escala de Resolução:
+
+
+
+
+
+ Renderização de Cores Verdadeiras (24-bit, desativa o efeito de pontilhamento)
+
+
+
+
+
+ Pontilhamento Dimensionado, (dimensiona o padrão de pontilhamento para a resolução)
+
+
+
+
+
+ Desativar o entrelaçamento (força rederização/varredura progressiva)
+
+
+
+
+
+ Forçar tempos de NTSC (60hz em PAL/Jogos Europeus)
+
+
+
+
+
+ Filtro Bilinear de Texturas
+
+
+
+
+
+ Modificação Panorâmica
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Escala de Resolução
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Automático, baseado no tamanho da janela
+
+
+
+
+
+
+
+
+ %1x (%2x%3 VRAM)
+
+
+
+
+
+ (Padrão)
+
+
+
+ GameListModel
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ GameListSearchDirectoriesModel
+
+
+
+ Caminho
+
+
+
+
+ Recorrente
+
+
+
+ GameListSettingsWidget
+
+
+
+ Formulário
+
+
+
+
+ Procurar Pastas
+
+
+
+
+ Adicionar
+
+
+
+
+
+ Remover
+
+
+
+
+ Analisar Novos
+
+
+
+
+ Analisar Tudo Novamente
+
+
+
+
+ Atualizar a Base de Dados do Redump
+
+
+
+
+
+
+
+
+
+ Escolher A Pasta de Pesquisa
+
+
+
+
+ Analisar Recorrentemente?
+
+
+
+
+ Queres analisar a pasta "%1" de forma recorrente?
+
+Analisar de forma recorrente demora mais tempo, mas irá identificar ficheiros em sub-pastas.
+
+
+
+
+ Descarregar a base de dados do redump.org?
+
+
+
+
+ Queres descarregar a base de dados do redump.org?
+
+Isto irá descarregar aproximadamente 4 megabytes pela tua ligação atual com a Internet.
+
+
+
+
+ A Descarregar %1...
+
+
+
+
+ Cancelar
+
+
+
+
+ Falha ao Descarregar
+
+
+
+
+ A Extrair...
+
+
+
+
+ Falha na Extração
+
+
+
+
+ Falha na Extração da base de dados.
+
+
+
+ GamePropertiesDialog
+
+
+
+ Diálogo
+
+
+
+
+ Caminho da Imagem:
+
+
+
+
+ GameCode:
+
+
+
+
+ Título:
+
+
+
+
+ Região:
+
+
+
+
+ Compatibilidade:
+
+
+
+
+ Problemas na Amplificação:
+
+
+
+
+ Comentários:
+
+
+
+
+ Versão Testada:
+
+
+
+
+ Definir para Atual
+
+
+
+
+ Faixas:
+
+
+
+
+ #
+
+
+
+
+ Modo
+
+
+
+
+ Começar
+
+
+
+
+ Comprimento
+
+
+
+
+ Valor
+
+
+
+
+ Calcular Valor
+
+
+
+
+ Verificar Extração
+
+
+
+
+ Exportar Informação de Compatibilidade
+
+
+
+
+ Fechar
+
+
+
+
+ Propriedades do Jogo - %1
+
+
+
+
+ %1
+
+
+
+
+ <não calculado>
+
+
+
+
+ Ainda não implementado
+
+
+
+
+ Exportar Informação de Compatibilidade
+
+
+
+
+ Carrega OK para copiar para a área de transferência.
+
+
+
+ GeneralSettingsWidget
+
+
+
+ Formulário
+
+
+
+
+ Comportamento
+
+
+
+
+
+ Pausar Ao Iniciar
+
+
+
+
+
+ Confirmar Encerramento
+
+
+
+
+
+ Gravar o Estado ao Sair
+
+
+
+
+
+ Carregar Dispositivos a partir dos Estados Salvos
+
+
+
+
+
+ Iniciar em Tela Cheia
+
+
+
+
+
+ Renderizar na Janela Principal
+
+
+
+
+
+ Velocidade de Emulação
+
+
+
+
+ 100%
+
+
+
+
+
+ Ativar Limitador de Velocidade
+
+
+
+
+
+ Aumentar Resolução do Temporizador
+
+
+
+
+ Exibição no Ecrã
+
+
+
+
+ Mostrar Mensagens
+
+
+
+
+
+ Mostar FPS (fotogramas/s)
+
+
+
+
+ Mostrar Velocidade da Emulação
+
+
+
+
+
+ Mostrar VPS
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 4Ativar Presença no Discord
+
+
+
+
+
+
+
+
+
+ %1%
+
+
+
+ InputBindingDialog
+
+
+
+ Editar Atribuiçõe
+
+
+
+
+ Atribuições para o Comando0/Botão Circulo
+
+
+
+
+ Adicionar Atribuição
+
+
+
+
+ Remover Atribuição
+
+
+
+
+ Apagar Atribuições
+
+
+
+
+ Atribuições para %1 %2
+
+
+
+
+
+ Carrega no Botão/Analogico... [%1]
+
+
+
+ InputBindingWidget
+
+
+
+ %1 atribuições
+
+
+
+
+
+ Carrega no Botão/Analogico... [%1]
+
+
+
+ MainWindow
+
+
+
+
+
+
+ DuckStation
+
+
+
+
+ Sistema
+
+
+
+
+
+ Mudar Disco
+
+
+
+
+ Carregar Estado
+
+
+
+
+ Gravar Estado
+
+
+
+
+ C&onfigurações
+
+
+
+
+ Tema
+
+
+
+
+
+
+
+
+
+ &Ajuda
+
+
+
+
+ &Depurar
+
+
+
+
+ Mudar Renderizador da GPU
+
+
+
+
+ Mudar Modo de emulação da CPU
+
+
+
+
+ Barra de ferramentas
+
+
+
+
+ Começar &Disco...
+
+
+
+
+ Começar &BIOS
+
+
+
+
+ &Procurar por Novos Jogos
+
+
+
+
+ &Procurar novamente Todos os Jogos
+
+
+
+
+ &Desligar
+
+
+
+
+ &Reiniciar
+
+
+
+
+ &Pausar
+
+
+
+
+ &Carregar Estado
+
+
+
+
+ &Gravar Estado
+
+
+
+
+ S&air
+
+
+
+
+ Configuração da C&onsola...
+
+
+
+
+ &Configurações de Comando...
+
+
+
+
+ &Configuração de Atalhos...
+
+
+
+
+ &Configurações da GPU...
+
+
+
+
+ Ecrã Cheio
+
+
+
+
+ Escala de Resolução
+
+
+
+
+ &Repositório no Github...
+
+
+
+
+ &Rastreador de Problemas...
+
+
+
+
+ &Servidor do Discord...
+
+
+
+
+ &Acerca de...
+
+
+
+
+ Mudar Disco...
+
+
+
+
+ Configurações de Áudio...
+
+
+
+
+ Configurar Lista de Jogos...
+
+
+
+
+ Configurações Gerais...
+
+
+
+
+ Configurações Avançadas...
+
+
+
+
+ Adicionar Pasta de Jogos...
+
+
+
+
+ &Configurações...
+
+
+
+
+ Do Ficheiro...
+
+
+
+
+ Da Lista de Jogos...
+
+
+
+
+ Remover Disco
+
+
+
+
+ Retomar Estad
+
+
+
+
+ Estado Global
+
+
+
+
+ Mostrar VRAM
+
+
+
+
+ Extrair cópias da CPU para a VRAM
+
+
+
+
+ Extrair cópias da VRMA para a CPU
+
+
+
+
+ Extrair Audio
+
+
+
+
+ Mostrar Estado da GPU
+
+
+
+
+ Mostrar estado do CDROM
+
+
+
+
+ Mostrar estado da SPU
+
+
+
+
+ Mostrar estado dos Temporizadores
+
+
+
+
+ Mostrar estado do MDEC
+
+
+
+
+ &Captura de Ecrã
+
+
+
+
+ &Configurações de Cartão de Memória...
+
+
+
+
+ Retomar
+
+
+
+
+ Retoma o último estado gravado criado.
+
+
+
+
+ Falha ao tentar obter informação da janela
+
+
+
+
+ Falha ao criar o contexto do dispositivo de exibição anfitrião.
+
+
+
+
+ Falha ao tentar obter novas informações da janela
+
+
+
+
+
+ Escolher Imagem de Disco
+
+
+
+
+ Propriedades...
+
+
+
+
+ Abrir Pasta...
+
+
+
+
+ Início Padrão
+
+
+
+
+ Início Rápido
+
+
+
+
+ Início Completo
+
+
+
+
+ Adicionar Pasta de Pesquisa...
+
+
+
+
+
+
+
+
+
+ Padrão
+
+
+
+
+ FusãoNegra
+
+
+
+
+ QEstiloNegro
+
+
+
+ MemoryCardSettingsWidget
+
+
+
+ Se um dos modos de cartão de memória "cartão separado por jogo" for escolhido, estes cartões de memória serão guardados na pasta "memcards" (cartões de memória).
+
+
+
+
+ Abrir...
+
+
+
+
+ Cartão de Memória %1
+
+
+
+
+ Tipo de Cartão de Memória:
+
+
+
+
+ Procurar...
+
+
+
+
+ Caminho de Cartões de Memória partilhados:
+
+
+
+
+ Escolher o caminho para os ficheiros dos Cartões de Memória
+
+
+
+ QObject
+
+
+
+ Erro do DuckStation
+
+
+
+
+ Falha ao iniciar a interface anfitriã. Não é possivel Continuar.
+
+
+
+
+ Falha ao abrir o endereço
+
+
+
+
+ Falha ao abrir o endereço.
+
+O endereço era: %1
+
+
+
+ QtHostInterface
+
+
+
+ Retomar
+
+
+
+
+ Carregar Estado
+
+
+
+
+ Retomar (%1)
+
+
+
+
+ "%1 Gravar %2 (%3)
+
+
+
+
+ Jogo
+
+
+
+
+ Apagar Estados Gravados...
+
+
+
+
+ Confirmar Eliminação do Estado Gravado
+
+
+
+
+ Tens a certeza que queres apagar os estados gravados para %1?
+
+Estas gravações não serão recuperáveis.
+
+
+
+ QtProgressCallback
+
+
+
+ DuckStation
+
+
+
+
+ Cancelar
+
+
+
+
+ Erro
+
+
+
+
+
+ Pergunta
+
+
+
+ SettingsDialog
+
+
+
+ Configurações do Duckstation
+
+
+
+
+ Configurações Gerais
+
+
+
+
+ Configurações da Consola
+
+
+
+
+ Configurações de Lista de Jogos
+
+
+
+
+ Configurações de Atalhos
+
+
+
+
+ Configurações de Comandos
+
+
+
+
+ Configurações de Cartões de Memória
+
+
+
+
+ Configurações da GPU
+
+
+
+
+ Configurações de Áudio
+
+
+
+
+ Configurações Avançadas
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Valor Recomendado
+
+
+
diff --git a/src/duckstation-qt/update_translations.bat b/src/duckstation-qt/update_translations.bat
index 6f02b66ad..829046e8d 100644
--- a/src/duckstation-qt/update_translations.bat
+++ b/src/duckstation-qt/update_translations.bat
@@ -1,2 +1,3 @@
-..\..\dep\msvc\qt\5.15.0\msvc2017_64\bin\lupdate.exe ./ -ts translations\duckstation-qt_pt.ts
+..\..\dep\msvc\qt\5.15.0\msvc2017_64\bin\lupdate.exe ./ -ts translations\duckstation-qt_pt-br.ts
+..\..\dep\msvc\qt\5.15.0\msvc2017_64\bin\lupdate.exe ./ -ts translations\duckstation-qt_pt-pt.ts
pause
\ No newline at end of file