Lorenzo and me are pleased to announce that the 1st modded firmware for the YP-R1 is now released. We hope you'll enjoy it as it took us long time to develop it and write the long readme below. Moreover Lorenzo worked on that project whereas he doesn't even own a R1 so you can really thank him.

Latest Version: v4.00
Based on firmware: v3.07
NOTE: this firmware is as stable as the official firmware 3.07.

#### Changelog ####

** Version: 4.00 - 12/09/2011 **

- Safe Mode (the R1 can be connected to the computer in any situation, even when the device is bricked - also gives access to the hidden memory)
- CPU downclocking tool (downclock the CPU frequency from 532 MHz to 200 MHz to improve a bit battery life)
- DRK (Device Rescue Kit - Easily unbrick a R1)
- Sysdata customization possible (the user can customize the interface pictures, language files, sounds and fonts himself!)
- Translation improved in French language (NOTE: please give us an hand with translations in other languages!!)

#### How to install firmware 4.00 ? ####

Like for any official firmware, just put the R1.ROM file at the root of the R1. At next startup it will automatically update the firmware.

#### DRK aka Device Rescue Kit ####

This framework works on the R1's internal memory. It allows a normal user to unbrick a bricked R1 or simply save his settings before a firmware update and restoring them after.
1. Using pre-made files
That's the best and easiest way to use the DRK for most users. In the firmware 4.00 archive file you downloaded, there is a DRK folder. Just copy & paste it at the root (main directory) of the R1.
Inside this DRK folder you can see 5 files. These files are already provided WITH "_DONE" extension. This keeps them from executing automatically, it's like the OFF position. When you want to use a feature, just delete _DONE from the file name to turn it ON. After the selected feature ran on device, the file is automatically renamed with the _DONE extension.

2. Creating one's own files
This way is only recommended for advanced users.
Create a folder called "DRK" in the root (main) directory of the R1.
Into this folder create an empty file (using Notepad for example) and name it according to the feature you want to enable (see the 5 possibilities below)
NOTE: case sensitive!!
NOTE: please remember NOT to add any extension to file name. By default Windows hides file extensions. Please enable them to be able to delete the potential extension coming when you create the file.
When the feature ran on device the file is automatically renamed with a "_DONE" extension to keep it from executing automatically. Just delete this extension to execute the feature again.

Backup_settings -> saves the current settings to an automatically-created SETTINGS folder at the root.Restore_settings -> restores the settings contained in the SETTINGS folder (you can restore only RadioApp.ini too, for example. In this case you just have to remove the other settings files)Delete_settings -> removes the settings from the playerClean_database -> deletes the library database from the player (WARN: That way it may have some problems to boot. Just retry booting it for a few times )Nand_Killer -> WARN: this erases nand content (format). Removes eveything from the user memory (4-8-16-32 GB storage). Use it as last resort solution!! As you run this feature from the internal memory, the R1 may get stuck on the boot screen. In this case wait a little (1 min for instance) then press reset and start the device.
The Nand_Killer feature formats the device using the 8192 bytes allocation unit size instead of the default 4096 bytes. This may cause slower transfer rates. That is why, after using this feature you should reformat the device from the R1's settings or from your computer.
Please DO NOT use/try NTFS or other filesystems than FAT32: they aren't supported by the kernel, thus bricking the device again.

Using several features at the same time is allowed. Just don't use strange mix like backup_settings and restore_settings
After a process has run, please note that the file is renamed to _DONE. This prevents a second call to the same function ("dangerous" hehe). To reuse it, simply delete the _DONE extension.

After putting the DRK folder and the desired feature file(s) inside on the R1, please turn off the device and reset it.
Turning on the device starts the selected process(es). Some of them need reboot so the device will automatically shut down. Simply restart it to see the result

NOTE: a file called DRK_debug.txt is created at the root everytime you use DRK tool.
It is not directly necessary, but it can contain useful informations to analyze problems (I hope none for the moment)

#### Safe Mode ####

The Safe Mode allows a normal USB connection to the computer in any situation, even when the R1 is bricked and not normally recognized by the computer anymore. Indeed, the Safe Mode starts even before the R1 application is loaded! That way you can easily unbrick the device (see "How to unbrick a R1?" below).
Moreover it gives you access to the hidden memory of the R1 containing the settings and some data. That's useful for the Sysdata customization (see "Sysdata customization" below).
How to enter the Safe Mode? Make sure the R1 is fully off (press reset). Then connect it to the computer. As soon as you see the Samsung boot screen, press and hold the "volume up" key until you see the Safe Mode screen on the R1.
Now in "My Computer" or in your drives manager you should see 2 volumes: the usual R1 internal memory AND the "NEO-GHOST" (sometimes also called "Samsung microSD") volume (hidden memory).
As written on the Safe Mode screen, "after editing system files, unmount the volumes (=safely remove the device) before disconnecting the USB cable!"
Once you disconnected the USB cable, press reset to turn off the device.

NOTE: in this mode, the battery is charging as usual. There isn't just any indicator.

#### How to unbrick a R1 ? ####

If your R1 is stuck on the boot screen at startup and is not recognized by the computer anymore, don't worry. With this modded firmware you can unbrick it!
Of course your R1 has to be in firmware 4.00. If it is in the official firmware (from 1.xx to 3.xx) you cannot unbrick the device yourself, you have to send it back to the Samsung after-sales service center.

There are 2 different ways to unbrick the device:

1) Using the DRK
You have to connect your R1 to the computer in Safe Mode (read the Safe Mode instructions above). Then run the DRK's Clean_database feature following the DRK instructions above. It will rebuild the database at next startup. In most cases that should be enough to unbrick the player.
However, if the R1 still doesn't boot, use the Delete_settings feature and as last resort solution the Nand_Killer feature.

2) Deleting manually the problematic files - for advanced users only -
If you don't want to use the DRK, you can delete the problematic files yourself.
For that you have to connect your R1 to the computer in Safe mode (read the Safe Mode instructions above). Then go to the hidden memory ("NEO-GHOST") and delete the "Db" folder and the "EntryList.ent" file at root.
At next startup it will rebuild the database. In most cases that should be enough to unbrick the player. However, if the R1 still doesn't boot, format the memory.

#### CPU Downclocking tool ####

By default the R1 CPU (=processor) frequency is set at 532 MHz. It is possible to downclock it to 200 MHz to improve a bit battery life. By how much depends on what you do with the player.
With continuous music playback and display off the battery life is not really better but for a mixed-use (if you use several features, navigate on the player with display on etc...) you should notice an improvement.
However at 200 MHz the User Interface is much slower and laggy and the DNSe effects are not usable anymore (jerky sound playback when display is OFF).
To activate the downclocking tool make sure the R1 is fully off (press reset), then turn it on and as soon as you see the Samsung boot screen, press and hold the "volume down" key until you see the home menu.
To disactivate the dowclocking tool and then come back to 532 MHz, just repeat the previous operation (press the "volume down" button at startup) or delete the "cpu_downclock.on" file from the "NEO-GHOST" memory (see the Safe Mode instructions above)

NOTE: This is still experimental. Please give us your feedback about the battery life improvement you measured.

#### Sysdata customization ####
The Sysdata folder (into the Mods folder) provided in the firmware 4.00 archive is fully customizable. Below are the main things you can change and customize.
But first you have to put this Sysdata folder at the root of the "NEO-GHOST" memory (see the Safe Mode instuctions above). The R1 first checks if a Sysdata folder is present in the "NEO-GHOST" memory. If yes, it will load this one. If no, it will load the default hidden Sysdata folder.
Thus if you want to cancel all your modifications, you just have to delete your Sysdata folder from the "NEO-GHOST" memory.

1. Startup and Shutdown sounds
You can replace the default startup and shutdown sounds in the "Auidata" folder. They have to be in WAV format and the file names have to be "power_on.wav" and "power_off.wav".
If you want the startup and shutdown sounds to be removed, you can replace the default files by the empty files in the "No Startup & Shutdown Sounds Mod" folder of the Firmware 4.00 archive.
Actually you are obliged to replace the files, you cannot just delete them. If there is no file in the Auidata folder, the R1 will make a terrible noise at startup.
NOTE: The default files properties are WAV PCM 16 bit 352 kbps 11 KHz. Other audio properties may work but not guaranteed

2. Language files
Firmware 4.00 and the provided Sysdata folder already contains improved translation in French language.
But if you are not satisfied with this translation or want to improve the translation in another language, you can edit the TXT files in the "UniArray" folder.
Don't remove strings and make sure there is not twice the same string in your new translation otherwise the R1 won't read the TXT file properly.
The best way to edit the file is to check on the R1 what word or sentence you want to improve and then to look for the related string in the TXT file.
Translate every string of the TXT file without checking on the R1 is useless as many strings don't concern the R1 (it's the same file for R0, R1, M1 and other players)

3. Fonts
You cannot add a 4th font but you can replace the 3 default ones (Candy, Gothic & Jumok). They are in the "Font" folder.
For the replacement, most TrueType fonts should work properly.
For example if you want to replace the Candy font by let's say Arial, just delete AV_candy_kr_v.ttf, put arial.ttf in the folder and rename this file to AV_candy_kr_v.ttf.
The only thing you must bear in mind is that there always has to be 4 files named "AV_Big_gothic_kr.ttf", "AV_candy_kr_v.ttf", "AV_gothic_kr_v.ttf" and "AV_jumok_kr_v.ttf" in the "Font" folder.

4. Interface Customization
If you are motivated enough you can even customize the interface. Indeed, the "Image" folder contains the different pictures the interface is made of.
Some of them are in JPG, BMP, GIF or PNG format. Thus, it's easy to edit or replace them, you just have to use the same resolution and format.
But as you can see, many others are in QWG format. Unfortunately this is a proprietary format and there is no editor available as of today.