I have recently bought the PRS-505 reader and was quite impressed with it - the contrast is excellent and unlike CRT and LCD, the e-ink doesn't hurt my eyes even after prolonged reading (I managed some 3000 pages in the three weeks since I bought the device). My only real complaint is the software which is bulky and very uncomfortable to use (both Sony's eBook Library and libprs). So I hacked a quick and dirty solution to my problem.
What I wanted to achieve was uploading books using my favorite file manager rather than the supplied software and then making it available for reading. I wanted batch support (no user input required) and the ability to organize files in directories.
And that's pretty much what this utility does: You upload files (currently RTF, PDF and image formats) to any directory on the Reader (yes, subdirectories are supported - recommended in fact) and then call my commandline utility to update the cache.xml file to match uploaded files. The utility then scans all directories on the Reader for known files and creates and/or modifies the cache.xml file accordingly. Thanks to the power of regular expressions it is even able to provide some key metadata (one day I hope to read the metadata from the files directly, but the regexp approach seems to work fine for me).
Basically, you copy files anywhere to the Reader:
Code:
sony reader/books/howard robert e/[Conan] A Witch Shall Be Born.pdf
sony reader/books/howard robert e/[Conan] Hour of the Dragon.pdf
sony reader/books/howard robert e/Pigeons From Hell.pdf
and run the utility with full path to cache.xml as parameter:
Code:
buildsonyreader.exe "e:\sony reader\database\cache.xml"
buildsonyreader.ini contains an algorithm for creating metadata: Section MetadataDefinitions contains regexp=sectionname parts, with sectionname assigning variables for that regexp. Only the first matching regexp for a filename is used.
Please note this is more a proof of concept than anything else. It has just the bare-bones functionality and a number of errors - I am pretty sure it contains at least one memory leak and I didn't dare to run it on the internal memory of my Reader (which contains some pre-bought books) - I only ever used it with a memory card which never contained any bought stuff. But it does seem to work well enough (that is, I was able to read the books I uploaded). I recommend the same - and do make a backup before you use it.
The utility is written in Delphi and you'll find the source code as well as the executable in the archive:
http://www.pepak.net/sonyreader/buildsonyreader.zip