Skip to content

Commit

Permalink
Warn the user about bad CHDs
Browse files Browse the repository at this point in the history
If they're not created with "chdman createdvd", they will perform really
badly.
  • Loading branch information
hrydgard committed Jan 31, 2024
1 parent 591dfdd commit 3831ec1
Show file tree
Hide file tree
Showing 52 changed files with 89 additions and 11 deletions.
1 change: 1 addition & 0 deletions Common/System/OSD.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ enum class OSDType {
MESSAGE_ERROR_DUMP, // displays lots of text (after the first line), small size
MESSAGE_FILE_LINK,
MESSAGE_CENTERED_WARNING,
MESSAGE_CENTERED_ERROR,

ACHIEVEMENT_UNLOCKED,

Expand Down
7 changes: 7 additions & 0 deletions Core/FileSystems/BlockDevices.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -643,6 +643,13 @@ CHDFileBlockDevice::CHDFileBlockDevice(FileLoader *fileLoader)

impl_->chd = file;
impl_->header = chd_get_header(impl_->chd);

if (impl_->header->hunkbytes != 2048) {
badCHD_ = true;
} else {
badCHD_ = false;
}

readBuffer = new u8[impl_->header->hunkbytes];
currentHunk = -1;
blocksPerHunk = impl_->header->hunkbytes / impl_->header->unitbytes;
Expand Down
4 changes: 3 additions & 1 deletion Core/FileSystems/BlockDevices.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ class BlockDevice {
return (u64)GetNumBlocks() * (u64)GetBlockSize();
}
virtual bool IsDisc() const = 0;
virtual bool IsBadCHD() const { return false; }

void NotifyReadError();

Expand Down Expand Up @@ -146,14 +147,15 @@ class CHDFileBlockDevice : public BlockDevice {
bool ReadBlocks(u32 minBlock, int count, u8 *outPtr) override;
u32 GetNumBlocks() const override { return numBlocks; }
bool IsDisc() const override { return true; }

bool IsBadCHD() const override { return badCHD_; }
private:
struct ExtendedCoreFile *core_file_ = nullptr;
std::unique_ptr<CHDImpl> impl_;
u8 *readBuffer = nullptr;
u32 currentHunk = 0;
u32 blocksPerHunk = 0;
u32 numBlocks = 0;
bool badCHD_ = false;
};

BlockDevice *constructBlockDevice(FileLoader *fileLoader);
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ What's new in 1.17
- When opening the pause menu, there's now an option to keep the game running behind the menu.
This is enforced in multiplayer to avoid inadvertent desyncs ([#18517], [#18515])
- ISO loading improvements
- The CHD file format is now fully supported, including with Remote ISO and Retroachievements
- The CHD file format is now fully supported (use `chdman createdvd`!), including with Remote ISO and Retroachievements
- Improvements to [remote ISO](https://www.ppsspp.org/docs/reference/disc-streaming/): optional tab on home screen, can now share whole folders ([#18627], [#18639], [#18640], [#18631], [#18632], [#18633],)
- Controller and touchscreen fixes
- More control bindings, organize into categories ([#18635], [#18589])
Expand Down Expand Up @@ -387,4 +387,4 @@ Credit goes to:
[#18785]: https://github.com/hrydgard/ppsspp/issues/18785 "Fix issue with the collapsible sections in control mapping collapsing on every change, plus, combo fix"
[#18777]: https://github.com/hrydgard/ppsspp/issues/18777 "Expand primitives: Check the vertex count too."
[#18779]: https://github.com/hrydgard/ppsspp/issues/18779 "More fixes"
[#18772]: https://github.com/hrydgard/ppsspp/issues/18772 "Add volume slider for RetroAchievements sound effects"
[#18772]: https://github.com/hrydgard/ppsspp/issues/18772 "Add volume slider for RetroAchievements sound effects"
5 changes: 5 additions & 0 deletions UI/EmuScreen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -274,6 +274,11 @@ void EmuScreen::bootGame(const Path &filename) {
return;
}

if (info->badCHD) {
auto e = GetI18NCategory(I18NCat::ERRORS);
g_OSD.Show(OSDType::MESSAGE_CENTERED_ERROR, e->T("BadCHD", "Bad CHD file.\nCompress using \"chdman createdvd\" for good performance."), gamePath_.ToVisualString(), 7.0f);
}

auto sc = GetI18NCategory(I18NCat::SCREEN);
if (info->fileType == IdentifiedFileType::PSP_DISC_DIRECTORY) {
g_OSD.Show(OSDType::MESSAGE_CENTERED_WARNING, sc->T("ExtractedIsoWarning", "Extracted ISOs often don't work.\nPlay the ISO file directly."), gamePath_.ToVisualString(), 7.0f);
Expand Down
6 changes: 5 additions & 1 deletion UI/GameInfoCache.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,9 @@ u64 GameInfo::GetGameSizeUncompressedInBytes() {
}

// Not too meaningful if the object itself is a savedata directory...
// Call this under lock.
std::vector<Path> GameInfo::GetSaveDataDirectories() {
_dbg_assert_(hasFlags & GameInfoFlags::PARAM_SFO); // so we know we have the ID.
Path memc = GetSysDirectory(DIRECTORY_SAVEDATA);

std::vector<File::FileInfo> dirs;
Expand Down Expand Up @@ -263,7 +265,6 @@ void GameInfo::DisposeFileLoader() {
}

bool GameInfo::DeleteAllSaveData() {
_assert_(hasFlags & GameInfoFlags::PARAM_SFO); // so we know we have the ID.
std::vector<Path> saveDataDir = GetSaveDataDirectories();
for (size_t j = 0; j < saveDataDir.size(); j++) {
std::vector<File::FileInfo> fileInfo;
Expand Down Expand Up @@ -687,6 +688,9 @@ class GameInfoWorkItem : public Task {
if (!bd) {
return;
}
if (bd->IsBadCHD()) {
info_->badCHD = true;
}
ISOFileSystem umd(&handles, bd);

// Alright, let's fetch the PARAM.SFO.
Expand Down
1 change: 1 addition & 0 deletions UI/GameInfoCache.h
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ class GameInfo {
int disc_total = 0;
int disc_number = 0;
int region = -1;
bool badCHD = false;
IdentifiedFileType fileType;
ParamSFOData paramSFO;
bool hasConfig = false;
Expand Down
8 changes: 6 additions & 2 deletions UI/GameScreen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ void GameScreen::update() {
void GameScreen::CreateViews() {
std::shared_ptr<GameInfo> info = g_gameInfoCache->GetInfo(NULL, gamePath_, GameInfoFlags::PARAM_SFO | GameInfoFlags::ICON | GameInfoFlags::BG);

if (info && !info->id.empty()) {
if (info->Ready(GameInfoFlags::PARAM_SFO)) {
saveDirs = info->GetSaveDataDirectories(); // Get's very heavy, let's not do it in update()
}

Expand All @@ -110,7 +110,7 @@ void GameScreen::CreateViews() {
root_->Add(leftColumn);

leftColumn->Add(new Choice(di->T("Back"), "", false, new AnchorLayoutParams(150, WRAP_CONTENT, 10, NONE, NONE, 10)))->OnClick.Handle(this, &GameScreen::OnSwitchBack);
if (info) {
if (info->Ready(GameInfoFlags::PARAM_SFO)) {
ViewGroup *badgeHolder = new LinearLayout(ORIENT_HORIZONTAL, new AnchorLayoutParams(10, 10, 110, NONE));
LinearLayout *mainGameInfo = new LinearLayout(ORIENT_VERTICAL, new LinearLayoutParams(1.0f));
mainGameInfo->SetSpacing(3.0f);
Expand Down Expand Up @@ -149,6 +149,10 @@ void GameScreen::CreateViews() {
tvCRC_->SetVisibility(Reporting::HasCRC(gamePath_) ? V_VISIBLE : V_GONE);
tvVerified_ = infoLayout->Add(new NoticeView(NoticeLevel::INFO, ga->T("Click \"Calculate CRC\" to verify ISO"), "", new LinearLayoutParams(FILL_PARENT, WRAP_CONTENT)));
tvVerified_->SetVisibility(UI::V_GONE);
if (info->badCHD) {
auto e = GetI18NCategory(I18NCat::ERRORS);
infoLayout->Add(new NoticeView(NoticeLevel::ERROR, e->T("BadCHD", "Bad CHD file.\nCompress using \"chdman createdvd\" for good performance."), "", new LinearLayoutParams(FILL_PARENT, WRAP_CONTENT)));
}
} else {
tvTitle_ = nullptr;
tvGameSize_ = nullptr;
Expand Down
21 changes: 16 additions & 5 deletions UI/OnScreenDisplay.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -52,14 +52,19 @@ static ImageID GetOSDIcon(NoticeLevel level) {

static NoticeLevel GetNoticeLevel(OSDType type) {
switch (type) {
case OSDType::MESSAGE_INFO: return NoticeLevel::INFO;
case OSDType::MESSAGE_INFO:
return NoticeLevel::INFO;
case OSDType::MESSAGE_ERROR:
case OSDType::MESSAGE_ERROR_DUMP: return NoticeLevel::ERROR;
case OSDType::MESSAGE_ERROR_DUMP:
case OSDType::MESSAGE_CENTERED_ERROR:
return NoticeLevel::ERROR;
case OSDType::MESSAGE_WARNING:
case OSDType::MESSAGE_CENTERED_WARNING:
return NoticeLevel::WARN;
case OSDType::MESSAGE_SUCCESS: return NoticeLevel::SUCCESS;
default: return NoticeLevel::SUCCESS;
case OSDType::MESSAGE_SUCCESS:
return NoticeLevel::SUCCESS;
default:
return NoticeLevel::SUCCESS;
}
}

Expand Down Expand Up @@ -295,6 +300,7 @@ void OnScreenMessagesView::Draw(UIContext &dc) {
typeEdges[(size_t)OSDType::LEADERBOARD_SUBMITTED] = (ScreenEdgePosition)g_Config.iAchievementsLeaderboardSubmittedPos;
typeEdges[(size_t)OSDType::ACHIEVEMENT_UNLOCKED] = (ScreenEdgePosition)g_Config.iAchievementsUnlockedPos;
typeEdges[(size_t)OSDType::MESSAGE_CENTERED_WARNING] = ScreenEdgePosition::CENTER;
typeEdges[(size_t)OSDType::MESSAGE_CENTERED_ERROR] = ScreenEdgePosition::CENTER;

dc.SetFontScale(1.0f, 1.0f);

Expand Down Expand Up @@ -459,6 +465,8 @@ void OnScreenMessagesView::Draw(UIContext &dc) {
case OSDType::MESSAGE_SUCCESS:
case OSDType::MESSAGE_WARNING:
case OSDType::MESSAGE_ERROR:
case OSDType::MESSAGE_CENTERED_ERROR:
case OSDType::MESSAGE_CENTERED_WARNING:
case OSDType::MESSAGE_ERROR_DUMP:
case OSDType::MESSAGE_FILE_LINK:
case OSDType::ACHIEVEMENT_UNLOCKED:
Expand Down Expand Up @@ -553,11 +561,14 @@ void NoticeView::GetContentDimensionsBySpec(const UIContext &dc, UI::MeasureSpec
if (bounds.h < 0) {
bounds.h = vert.size;
}

ApplyBoundsBySpec(bounds, horiz, vert);
MeasureNotice(dc, level_, text_, detailsText_, iconName_, 0, &w, &h, &height1_);
// Layout hack! Some weird problems with the layout that I can't figure out right now..
w = 50.0;
}

void NoticeView::Draw(UIContext &dc) {
dc.PushScissor(bounds_);
RenderNotice(dc, bounds_, height1_, level_, text_, detailsText_, iconName_, 0, 1.0f);
dc.PopScissor();
}
1 change: 1 addition & 0 deletions assets/lang/ar_AE.ini
Original file line number Diff line number Diff line change
Expand Up @@ -460,6 +460,7 @@ Zoom = ‎تقريب
[Error]
7z file detected (Require 7-Zip) = ‎الملف مضغوط (7z).\nمن فضلك فك الضغط أولاً (جرب 7-Zip أوWinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = ‎لا يمكن حفظ ملف لقطة الشاشة.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/az_AZ.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/bg_BG.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/ca_ES.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/cz_CZ.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Přiblížení
[Error]
7z file detected (Require 7-Zip) = Soubor je zabalen (7z).\nNejdříve ho musíte rozbalit (zkuste 7-Zip nebo WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD-file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Soubor se snímkem obrazovky nelze uložit.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/da_DK.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = Fil er pakket (7z).\nPak venligst ud først (prøv 7-Zip eller WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Kunne ikke gemme skærmbilledefilen.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/de_DE.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = Datei ist komprimiert (7z).\nBitte entpacken Sie diese zuerst (mit 7-Zip oder WinRAR).
A PSP game couldn't be found on the disc. = Ein PSP Spiel konnte nicht auf der Disk gefunden werden.
BadCHD = Bad CHD-file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Kann ELF außerhalb von mountRoot nicht booten.
Could not save screenshot file = Screenshot konnte nicht gespeichert werden.
D3D9or11 = Direct3D 9? (oder "nein" für Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/dr_ID.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/en_US.ini
Original file line number Diff line number Diff line change
Expand Up @@ -477,6 +477,7 @@ Zoom = Zoom
7z file detected (Require 7-Zip) = File is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
D3D11CompilerMissing = D3DCompiler_47.dll not found. Please install. Or press Yes to try again using Direct3D 9 instead.
Expand Down
1 change: 1 addition & 0 deletions assets/lang/es_ES.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Acercar
[Error]
7z file detected (Require 7-Zip) = Es un archivo comprimido (en 7z).\nPor lo que necesita ser descomprimido (usa 7-Zip o WinRAR).
A PSP game couldn't be found on the disc. = No se pudo encontrar un juego de PSP en el disco.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = No se pudo inicar el ELF localizado fuera del mountRoot.
Could not save screenshot file = No se pudo guardar la captura de pantalla.
D3D9or11 = ¿Direct3D 9? (o "no" para Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/es_LA.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = Es un archivo comprimido (7z).\nPor favor, descomprima primero (usa 7-Zip o WinRAR).
A PSP game couldn't be found on the disc. = No se detecta el juego de PSP en el disco.
BadCHD = Bad CHD-file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = No puede iniciar ELF localizado fuera de mountRoot.
Could not save screenshot file = No se pudo guardar la captura de pantalla.
D3D9or11 = ¿Direct3D 9? (o "no" para Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/fa_IR.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD-file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/fi_FI.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD-file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/fr_FR.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = Le fichier est compressé (.7z).\nVeuillez d'abord le décompresser (essayez 7-Zip ou WinRAR).
A PSP game couldn't be found on the disc. = Aucun jeu PSP n'a été trouvé sur le disque.
BadCHD = Bad CHD-file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Impossible de démarrer le fichier ELF situé en dehors du mountRoot.
Could not save screenshot file = Impossible d'enregistrer la capture d'écran.
D3D9or11 = Direct3D 9 ? (ou "non" pour Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/gl_ES.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/gr_EL.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = Το αρχείο είναι συμπισμένο(7z).\nΠαρακαλώ αποσυμπιέστε το πρώτα (δοκιμάστε το 7-Zip ή το WinRAR).
A PSP game couldn't be found on the disc. = Δεν βρέθηκαν παιχνίδια PSP στο δίσκο.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Δεν μπορεί να φορτωθεί ELF που βρίσκεται εκτός mountRoot.
Could not save screenshot file = Αδυναμία αποθήκευσης αποτύπωσης οθόνης.
D3D9or11 = Direct3D 9? (ή "όχι" για Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/he_IL.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/he_IL_invert.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = file is compressed (7z).\nPlease decompress first (try 7-Zip or WinRAR).
A PSP game couldn't be found on the disc. = A PSP game couldn't be found on the disc.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Cannot boot ELF located outside mountRoot.
Could not save screenshot file = Could not save screenshot file.
D3D9or11 = Direct3D 9? (or "no" for Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/hr_HR.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zumiraj
[Error]
7z file detected (Require 7-Zip) = Datoteka je arhivirana (7z).\nMolimo vas, dearhivirajte datoteku prvo (probajte 7-Zip ili WinRAR).
A PSP game couldn't be found on the disc. = PSP igra nije mogla biti pronađena na disku.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Nije moguće pokrenuti ELF datoteku lociranu izvan mountRoot.
Could not save screenshot file = Nije moguće spremiti datoteku slike zaslona.
D3D9or11 = Direct3D 9? (ili "ne" za Direct3D 11)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/hu_HU.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Zoom
[Error]
7z file detected (Require 7-Zip) = A fájl tömörített (7z).\nElőbb csomagold ki (használj 7-Zip-et vagy WinRAR-t)!
A PSP game couldn't be found on the disc. = Nem található PSP játék a lemezen.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Nem indítható mountRoot-on kívül található ELF.
Could not save screenshot file = Képernyőkép mentése sikertelen.
D3D9or11 = Direct3D 9? (Nyomj "Nem"-et Direct3D 11 használatához)
Expand Down
1 change: 1 addition & 0 deletions assets/lang/id_ID.ini
Original file line number Diff line number Diff line change
Expand Up @@ -452,6 +452,7 @@ Zoom = Perbesar
[Error]
7z file detected (Require 7-Zip) = Berkas terkompresi (7z).\nMohon ekstrak dahulu (coba 7-Zip atau WinRAR).
A PSP game couldn't be found on the disc. = Sebuah permainan PSP tidak dapat ditemukan pada disk.
BadCHD = Bad CHD file.\nCompress using "chdman createdvd" for good performance
Cannot boot ELF located outside mountRoot. = Tidak dapat mem-boot ELF yang terletak di luar mountRoot.
Could not save screenshot file = Tidak dapat menyimpan berkas tangkapan layar.
D3D9or11 = Direct3D 9? (atau "tidak" untuk Direct3D 11)
Expand Down
Loading

0 comments on commit 3831ec1

Please sign in to comment.