Status
Not open for further replies.
Tutorial  Updated

DBI - Russian menu translation to English

Mod edit:

The creator of DBI has threatened to place malicious code into his programs in the future to target English speakers

I would be hesitant to use DBI for any purpose going forward


----------

As the current releases of DBI are in Russian (I respect the authors decision in this) I tried to translate the, for me, most used menus in English
I combined several OCR, translate websites and the DBI 6.58 (last) English menu so here is my attempt in translation:

Code:
Главное меню                    Main Menu
============                    =========
Просмотр SD карты                Browse SD card

Установка через DBIbackend        Install title from DBIbackend

Подключение к серверу...        Connect to server...

DBILogs                            DBILogs

Просмотр установленных игр        Browse installed applications
Инструменты                        Tools

Просмотр тикетов                Browse tickets
Просмотр сохранений                Browse saves

Запустить МТР соединение        Run MTP responder
Запустить FTP_сервер            Run FTP server
Запустить HTТP сервер            Run HTTP server

Журнал активности                Activity Log
Настройки DBI                    Configuration
Выход                            Exit

Code:
Инструменты                                Tools
===========                                =====
Очистка системы от мусора                Cleanup orphaned files
Удаление родительского контроля            Delete parental controls
Удаление пользователя...                Deleting user...
Удаление Wi-Fi профиля...                Deleting Wi-Fi profile...
Запустить случайную игру                Run random game
Информация системе                        System info
Создание фейковой записи о приложении    Creating a fake app entry

Синхронизация времени по NTP            NTP time sync
Проверка обновлений игр                    Check for title updates
Обновить titleDB                        Update TitleDB
Убрать фейковые тайтлы в конец списка    Put all the fake TIDs into the end of the list
Заполнить свободное место на SD нулями     Fill the free space on the SD with zeros
Сдампить текущую прошивку      Dump the current console's firmware

I could not find any translation attempts on this forum so I think I will share this.
Post based on DBI 700

'Unofficial' repository of DBI with also translated menu's;
https://github.com/rashevskyv/dbi/releases/

Minor edits based on suggestions, thanks!
 
Last edited by grimson,
I suspect if you take the effort to play past what I call a fake start earlier you will start to have four files. Anyway I am happy with the state of this investigation. My conclusion is four files is better than 2. I am also happy to now think this problem is fairly isolated.

The difference with zip option kind of further the theory of a library function problem. Having the default not working is not perfect though. It is probably 99.99% good.

PS: It is good that you took out the debug_flag patch on loader. It will crash JKSV if enabled.
I wrote this to demonstrate what is really happening:
2024102613162400-4F26C43AFCA5C03EE5FA461A886D1153.jpg

Here is the source even if it's shitty with nested ifs: https://github.com/J-D-K/fslib/blob/main/Switch/TestingApp/source/Main.cpp

I know the console sucks and is hard to read, but pay attention to the lines after it prints "Copying X to X..." for the lower case version of the files. Notice how it says they exist even though they shouldn't. The issue isn't with LibNX, Edizon, or JKSV. The Switch uses Fat32 and ExFat and they are both case insensitive. So, in the FsLib test app for example, when it copies the lower case version of the file from the save, it's opening the previously copied upper case version on the SD Card for writing. The reason ZIP files work is because they are case sensitive. FsLib is a wrapper around the Switch's FS functions to make them easier to work with. LibNX's stdio/fs_dev isn't a factor here at all. I'd pack it into a ZIP to drive the point home even further, but I don't feel like it.

Edit: I'd also like to add that Impeeza and I were trying to actually figure out what the problem really was almost all yesterday. The reason it pisses me off to no end is that what Duckbill stated isn't true. If you had enabled or added ".zip" to the end of the file name at the keyboard screen, JKSV would have worked too. That's why I say Duckbill is being ignorant. Because he is.
 
Last edited by JK_,
humm, no for me, Tested with and without the patch enabled, further testing this night.
I may be too hasty to blame debug flag patch. When I took out my old Switch which has the debug flag patch turn on and launch JKSV I was very surprised that it crash and I then proceed to turn it off and try again. It worked but after hearing it wasn't the case for you I tried again with debug flag on and is able to run JKSV.
Post automatically merged:

I wrote this to demonstrate what is really happening:
View attachment 467273
Here is the source even if it's shitty with nested ifs: https://github.com/J-D-K/fslib/blob/main/Switch/TestingApp/source/Main.cpp

I know the console sucks and is hard to read, but pay attention to the lines after it prints "Copying X to X..." for the lower case version of the files. Notice how it says they exist even though they shouldn't. The issue isn't with LibNX, Edizon, or JKSV. The Switch uses Fat32 and ExFat and they are both case insensitive. So, in the FsLib test app for example, when it copies the lower case version of the file from the save, it's opening the previously copied upper case version on the SD Card for writing. The reason ZIP files work is because they are case sensitive. FsLib is a wrapper around the Switch's FS functions to make them easier to work with. LibNX's stdio/fs_dev isn't a factor here at all. I'd pack it into a ZIP to drive the point home even further, but I don't feel like it.

Edit: I'd also like to add that Impeeza and I were trying to actually figure out what the problem really was all yesterday instead of just releasing something, claiming there were bugs in libnx and JKSV without even knowing what was going on to begin with. If you had enabled or added ".zip" to the end of the file name at the keyboard screen, it would have worked too. That's why I say Duckbill is being ignorant. Because he was.
I am starting to understand this better. Please correct me if I am wrong.

Fat32/exFAT being case insensitive means the file name can change case but there is only one file just the name will look different. I cannot have two files on the disk.

In this case Nintendo's file system is not case insensitive as there are two files in the save where a case insensitive file system should have only one. In this regard Nintendo file system is not directly compatible with our SD card's file system. Zip format is case sensitive so it is compatible with Nintendo's system.

So storing these files directly on the sd card's file system is problematic for game such as selfloss which perhaps by mistake makes two files instead of one.
 
Last edited by TomSwitch,
  • Wow
Reactions: impeeza
@TomSwitch You are close. You have the last part backwards. You get one file instead of two. Had to edit that a few times haha. Had a guitar pick in my hand.

Edit: Forgot to say too. I don't know what the lower case files are for to be honest. Deleting them seemed to have no effect on anything with the save on my end. If I deleted upper case files, had to start from the beginning. I'm glad I built that browser mode into JKSV way back or figuring this out would have been more of a headache.
 
Last edited by JK_,
I think the matter is completely clear and out of the thread scope. @TomSwitch i can asure you if you follow my instructions the problem will never rise again, and if you enable the option to backup to ZIP files JKSV will work just fine.

regards guys.
 
I think the matter is completely clear and out of the thread scope. @TomSwitch i can asure you if you follow my instructions the problem will never rise again, and if you enable the option to backup to ZIP files JKSV will work just fine.

regards guys.
The problem is not solved for an average user. I already don't have a problem per se. I wanted to move the game's save state from one Switch to another and I have already did that. For user of EdiZon SE it is not solved, for user of JKSV they need to know to switch to zip which they probably have no clue.

I am undecided if I want to fix EdiZon SE, it is a mostly isolated problem and the user base of this feature is so small and even if this actually do happen the user would most likely go to JKSV like I did anyway. EdiZon SE's save feature is for game hacking so the user would immediately recognized that it had failed. My concern is restoring this save made by EdiZon SE may destroy the user's game state for the user. Even if I put up an update to EdiZon SE I doubt it would make much of a difference as it probably won't reach this unlikely user. I think the chance of zero occurance with EdiZon SE until the end of time is high.

@JK_ thank you very much for helping me recognise the root cause of the problem. I am aware of case insensitity of Microsoft's file system but the chances of recognising it as the cause of the problem on my own is slim without your help.

I think the lower case file name is just a mistake by someone in the game development team. It only take one occurance for the file to be created and there after left there to potentially cause problem. I would guess it does not affect the game other than some auto save being useless due to using wrong file names. The chance of someone typing the full file name to mistype the file name is fair.
 
Last edited by TomSwitch,
Oh wow, fighting between users and developers. I'm not taking a side.

I have no comment about Russian topics and remember, political discussion, including geopolitics should go to World News, Current Events & Politics.

If you are attacking the Russian developers because of geopolitics, so enough, please stop it. If you enjoy use DBI, so you should show an appreciation and thankful to developers for make DBI.

My Switch will never go online either at least until Nintendo stops supporting the Switch and bans stop.
Sony still ban PS3 if go CFW today, even Sony is no longer support PS3 for very long time, exception of firmware update related to DRM for Blu-ray player to run with latest movies. Funny, Sony abandoned many of standalone Blu-ray players after several years but continue to maintain PS3. It is recommend to use disposal PSN account, otherwise it could lose all PSN games to ban if used for hacked PS3.

Nintendo is different situation - nearly all console bans don't result in account ban, exception of use stolen credit card or illegal payment. It is easy to evade the console ban is don't install NSP or make change to NAND that can be seen to Nintendo. If you have clean backup, so you are good and yeah, don't connect to Nintendo server if you have NSP installed.
 
Oh wow, fighting between users and developers. I'm not taking a side.
It wasn't a fight, some users wanted English manual but could not understand why they were denied and not all were nice about being denied what they wanted. In between there is the investigation about this strange game that had a save that had more files than expected. There was some mystery behind until JK enlighten us about the implication of case insensitive property of SD card's file system.
 
Last edited by TomSwitch,
It wasn't a fight, some users wanted English manual but could not understand why they were denied and not all are nice about being denied what they wanted. In between there is the investigation about this strange game that had a save that had more files than expected.
Ok, I understand.

I was totally lost and confused after read all of thread, so trying to understand.
 
Oh wow, fighting between users and developers. I'm not taking a side.

I have no comment about Russian topics and remember, political discussion, including geopolitics should go to World News, Current Events & Politics.

If you are attacking the Russian developers because of geopolitics, so enough, please stop it. If you enjoy use DBI, so you should show an appreciation and thankful to developers for make DBI.
Did you even read the thread? The dev enjoys denying people asking for an English translation
 
Did you even read the thread?
Yes, I already read all posts in this thread and it took much of my time. It is not fun if you have visually impaired and it make read more slowly. Look up about what Usher Syndrome means, so I born with it.

The dev enjoys denying people asking for an English translation
The developer said that he is treated badly by some of English speakers - see quotes below.

OK. Now I'm absolutely sure that I did everything right when I decided to stop making the English version. You have way better tools and devs.
I am happy that you are well. Thank you for DBI. Needing to use my phone to translate is only a small inconvenience. Maybe when you are no longer angry with some English speaking people who have offended you we get back the English version. :)

If someone disrespect to developer, so they could end up stop working and won't release the source code, akin to cheat thieves pushed some authors stopped work on new cheat.

Look at my quote.
I'm not taking a side.
I'm neutral in this situation, even if it wasn't your or other's fault. I encourage you and DBI developer to reconcile and resolve the situation. If developer won't budge, I'm sorry that I couldn't help further.
 
  • Like
Reactions: hharuhara
The developer said that he is treated badly by some of English speakers - see quotes below.


If someone disrespect to developer, so they could end up stop working and won't release the source code, akin to cheat thieves pushed some authors stopped work on new cheat.
I stand by everything I said. Wall of text incoming:

Do you want to know how I found out? I had a person contact me about this whole thing. They asked me if I knew for sure if JKSV was still safe to use. I happened to see and catch another person that was going to report the "issue" to the LibNX repo, because Duckbill was talking out of HIS ASS about it being a LibNX bug that JKSV doesn't have a fix for it. Doesn't seem like a lot, but that's what I caught in the beginning. I saw a person in this same thread ask if JKSV was safe and said maybe they should switch to DBI for saves. Why? All based on an ignorant lie Duckbill pulled out of his ass. I said the fix probably wouldn't be difficult to TomSwitch and Duckbill's response was that it was easy just don't use stdio: something he's actually done to someone else before. There's actually two problems with this I don't think he realized at the time:

  1. JKSM exists on 3DS, and it has an FS wrapper I wrote almost 10 years ago because ctrulib didn't have an fsdev/full stdio implementation like LibNX does. This really was not going to be difficult whatsoever. Fun Fact: JKSM relies entirely on UTF-16 paths which don't work at all with 3DS C stdio.
  2. JKSV already has an incomplete, but functional, FS wrapper written in C in the repo and the option to "Use FS commands Directly" in the configuration menu. It's been there for a while. Like I said though, it's incomplete and doesn't have a struct or methods for working with directories.

One revision of LibNX's fsdev did break JKSV way back, so I thought it might be possible. Maybe I should have completed the wrapper? So, I start working on an improved version of the 3DS wrapper I wrote but for the Switch as a library so I can use it in the master branch for a quick update and the rewrite after that. Then, I get a message from another developer I'm not going to name. He tells me Duckbill did the same stupid shit to him a couple years ago and that I should ignore him. Duckbill says there's nasty bugs in your app. Use the FS instead of stdio. At this point, FsLib was working mostly fine as far as I can tell from Yuzu, but I don't have my Switch to test on real hardware. My dad gets out of the hospital a little while later, I let him borrow my OLED in exchange for my good ol' dev Switch, I fix a few things Yuzu didn't accurately emulate, and boom, FsLib officially works.

I message Impeeza cause he's a good guy and always seems up for helping in any way he can and ask if he's heard or seen anything. He says no. We both acquire the game in question and neither of us can duplicate this with master branch JKSV. Fortunately, Tom uploads his save for Impeeza and we have something to go off of. I immediately notice the difference in the save file count, and that our games only have two of them. The second set of files not in ours happen to not have capital letters, but have the same name. It wasn't until I booted into my Windows installation way later and tried extracting it there that we noticed something: 7zip added '_1' to the end of the file names to prevent clashes in Windows. I was working on Linux beforehand, so it didn't even register at the time that this could be the issue. The lower case ones didn't seem to have any impact on the save on my end anyway so...

Impeeza then writes a post explaining the best he can what's actually happening and why Edizon, Edizon SE, Checkpoint, and JKSV (At first glance) would appear have this "bug". It's the filesystem the SD card uses. It has nothing to do with LibNX or stdio like Duckbill claims. The Switch can't tell the difference between Selfloss_Save and selfloss_save. It sees them as the same file, but only on the SD card. Duckbill, even when confronted with evidence he's wrong, then proceeds to incorrectly and ignorantly claim that it's still a bug in JKSV and that JKSV can't backup games with non-ascii characters. He isn't aware JKSV has supported ZIP for years and can handle them as long as zip is toggled on or you add ".zip" to the end of your file name in the keyboard. I call him out, tell him he's ignorant and why... just not nicely cause he wore through my patience with that. He proceeds to throw a little bitch fit and try to start drama. I cut it off immediately cause I couldn't care less if DBI isn't in English. I wouldn't touch the thing given the guy's behavior alone, add it being closed source... hard pass. I don't know if he expected people to attack me for him or what, but it failed hard. In fact, it backfired harder for him because I've produced 100% concrete proof all of his claims about LibNX's stdio and JKSV are wrong. Turns out there wasn't a fix needed. You just needed to know how to use it. Maybe I could make it clearer in app, but that's not the point.

So, after reading that, and with the fact that unless some posts get edited mysteriously, you can still read the them for yourself, I ask you the following:
  1. You said something about him not working on DBI anymore because of negativity. What if I had stopped working on JKSV instead of doing what I did, with a lot of help from Impeeza, and finding out he was full of shit? That's not my style, but it could have happened. Why is it ok for him to do it to other people, but it's wrong when someone throws it right back in his face? Hypocrite much?
  2. Why is JKSV the only save manager targeted in the release notes for DBI? This issue affects all of them that are based on JKSM/JKSV's original code and Checkpoint's, which is in turn based on JKSV's. The case insensitivty of the filesystem will cause them all to have the same issue. It's something they have no control over.
My conclusion is this: Duckbill heard DBI worked for something JKSV didn't, announced it, and didn't realize someone would contact me to ask if I knew anything about it. He clearly had no idea what or why, so he jumped to don't use stdio when questioned. Turns out that isn't true and this isn't up for debate anymore. He is wrong. So, what does he do when faced with the truth? Try to flip it, start drama, and make it my fault DBI isn't in English ever again. I don't know if he expected people to attack me or what, but it failed spectacularly. He started this with false claims. I don't care if he's throwing a hissy fit one bit.

That's the end. I'm done wasting my time on this fool.
 
The dev enjoys denying people asking for an English translation
The developer said that he is treated badly by some of English speakers - see quotes below.

OK. Now I'm absolutely sure that I did everything right when I decided to stop making the English version. You have way better tools and devs.

Also: one/a couple of english speakers were a nuisance with me => let's fuck with all the english-speaking people around the world. What do we call this kind of blatant idiotic generalisation of a couple of individuals behaviour to a whole culture / group of individuals / population again?

Coincidently, that victimhood "we vs ThE wEsT" narrative feels so stale at this point...

To all the people chiming in and saying Politics have nothing to do here, say it to the dev.
 
  • Like
Reactions: [Truth]
I dont think politics are the main motivation for duckbill, because ¿who prefers keeping dbi out of the table? Surprise, Nintendo, a big western company.

It seems more of a personal thing against some particular users. I dont get the point, but it is a legit choice.
 
  • Haha
Reactions: Lumince
Hello everyone

Can someone post a screenshot of the menus in Portuguese to see if it's more convenient to use as I don't read Cyrilic.

Thanks to the contributors.

@duckbill007, maybe a french version? Come on, it's just a joke.
Thanks for this app.
 
Status
Not open for further replies.

Site & Scene News

Popular threads in this forum