FIRST OF ALL, did you read all of my Sony Ericsson P900 notes?
Linux on the P900? Technically feasible, but...
While it's technically feasible (the P900 does have non-volatile disk storage, some megabytes of RAM space, etc), I think we won't see Linux on this nice thing, because neither SonyEricsson nor Symbian will ever document its hardware layer.
A SonyEricsson engineer told me that they don't even want to support Linux (even at connect/backup level) because their commercial guys think that there are not many Linux users out there (stooooopid people!! That's why I wrote my site pages... against their stupidity).
How do I create a tool to record and/or encrypt live phone calls on my P800, P900 and P910? what have I to write in a C++ program?
The GSM encoding standards are quite hard to deal with. You could write a software taking voice data, encrypting it, and sending via a TCP/IP connection; the remote would do the same for his voice.
The GSM network won't allow anything different than its rock-solid standard. In the above example you should use a GPRS data session (but not on the common standard, which is very slow at uploading and quite fast at downloading - max 1 kb/sec and max 5.3 kb/sec, respectively, at least here in Italy).
If you want a Linux-based phone, you should check some Motorola A8xx cell-phone (sadly, they are sold in Asia only). Also, you will have a very hard time trying to figure out (at least) what modules actually perform the phone calls.
If you just want a Linux-based palmtop, have a look at iPaq (one can install Linux onto it) or Zaurus (natively Linux). Anyways, Linux was installed even on the Apple iPod... As I said above, the difficult thing is getting some clean hardware documentation (which they are not willing to release even after discontinuing their models).
I wrote a Zx Spectrum Emulator for the P900, and with minimal checks and modifications it ran on the P910 (while still using direct writes to the screen) and -maybe- the P800. Compiling my own C++ programs for the P900 using my Linux notebook was the best reason to buy the P900 in November 2003 :-)
Full P900 reformatting (aaaah!)
Gee, it's time to reformat the P900. I have a few annoying (very annoying) problems (memory-leak, can't re-install some software that I used up to a few months ago, etc), so I decided I need a full cleaning and full reinstalling of everything.
If you want to do the same operation, please read ENTIRELY this page before doing anything. Below, I just described what I think is some paranoid and hard clean & reinstall operation.
Note: while it seems very probable, I cannot guarantee that these operations will be good also for P800 and P910. I just did them on my P900 and all went OK.
Important: even if you are in a deep hurry, you shouldn't jump here to format it without first trying to backup all of your files and all of your configuration data!
Ready? Set... go!
Step 1: backup all data from the common directories (memorystickduo card and internal disk drive
Images, videos, MP3 files, etc: have them secured in a "generic" data directory. Also, look with SMan utility for other files (for example, SNA/Z80 snapshots for the Zx Spectrum Emulator).
When you are definitely sure of backupping all "common" data (everything you can see with the P900 standard File Manager) then double-check what you just did, before proceeding to the next step.
Step 2: format the D: disk drive (the memorystickduo card)
Yes, you can do it now (did you triple-check your backups before?). Formatting a memorystickduo will wipe out other old data (from previous install/uninstall operations) and will set up a clean and not-spaghetti-like directory tree. If you like, you can first search the memorystickduo directories: you may find some files related to some utility program, which you tested (installed, tried, uninstalled) some YEARS ago, and so far you didn't find out that you had some garbage files out there. Yeah, time to wipe out 'em! (by the way: doesn't this resemble your Windooooze installation? eh, eh!)
If you can't do it, then eject the card, reboot the P900, wait for all systems ready and running, and then finally insert again the card and go format it.
Step 3: uninstall all of your remaining applications from the "C:" drive
We don't want stoooopid thingies around. Well, maybe some program won't uninstall even after a reboot of the P900. Don't care. Just uninstall any uninstallable thing; less programs, less problems.
And now, reboot the P900 again. Uh... you find it now shows its original font (you did install the TrueType font files on the memory stick duo card, eh? and since AGES you didn't see that ugly "Swiss" standard font, eh? well, don't care, at least for the next minutes).
Also, go to the Internet application, select Preferences, go to Advanced, and clean the browser cache and history.
Step 4: have "nfsapp 2.6" and "sman 1.3" utilities installed onto your "C:" drive
Yes, re-install them. We want to be absolutely sure that we use clean programs (even if we know that they are decently behaved ones).
Start SMan task manager and terminate any application (but don't use the "Forced endtask" option!), including Messages (which gets always started at P900 boot time).
Now switch to flight mode and start nfsapp (don't start any other program!). Before backing up the messagebase, you must be sure that no incoming calls or SMS messages will be lost.
Step 5: backup your entire "C:" drive using nfsapp/p3nfsd
Mount as usual (infrared or bluetooth) the P900 filesystem onto a Linux directory, and just copy everything copiable in a backup directory (cp -a /p900/C\:/* ./backup/) while ignoring errors. GOOD: this will save lots of important stuff: your Jotter contents, Calendar entries, etc, everything! (Well, if you did need explicitly some jotter page, just beam it via infrared to your PC, using Linux obex_p900 utility in the download page).
This will save everything - chess games, solitaire status, agenda, voice notes, bookmarks, etc (you will have anyways to reinstall by hand these files - only some files, not the entire directory (this could be very dangerous).
This also will save your message database, but in a format you won't be able to use (at least until someone will write a "P900 binary mail/SMS database binary format to ascii text" utility).
Some files won't be copied ("no such file or directory" error; it actually is a "busy" file, because lots of those programs/files are in use by the P900 operating system; also, this kind of error slows the file transfer).
Duh, what were those %#$*!@ files? Yes, C:\SYSTEM\DATA\TMPxxxxx.$$$ !! Yeah, this is another long-lasting bug of the P900 software... sgrunt!!! I just found again about 1.85 megabytes of precious "C:" disk space wasted in those temporary files!
Step 6: a pencil and a sheet of paper, please!
Go to in the Control Panel and take note about your Internet, Theme, MMS, etc, configuration - everything that can be "configurable"! EVEN your preferred setup.
Yes, I like this setup:
Flip-open: messages, musicplayer, controlpanel, contacts, jotter
Flop-closed: calls, contacts, audio, messages, soundrecorder.
Sure, you need it. It's a somewhat extraordinary feature of your brain to forget the most important configuration options a few milliseconds after you formatted the disk that contained them...! The effect will be even more devastating if in this moment you are laughing about this step. I mean it: take note about your configuration options! It will save you countless hours of try'n'retry.
Now please BE SURE you have your PIN/PUK numbers. Some people disable their PIN at phone boot and, after some weeks, they just forgot which was their PIN. When reset, the phone will ask you for it again! And if you don't remember it, you will need your PUK number (you still have your original SIM card documents, don't you?).
Step 7: ready for The Final Shutdown...?!?
After checking again (and again) you have in your hard disk everything you want to recover, you are now ready for the hardest reset (harder than the classic "master reset").
Switch to flip-closed mode (d'oh! I actually mean flip-closed mode!
it will fail if the flip is open or removed, or if the P900 keyboard is
locked), and press exactly this sequence of jog-dial rotations and
asterisk key on the keyboard:
jog-up * jog-down jog-down * jog-down *
A Service Menu (1. Information - 2. Service Tests - 3. Service Functions) will appear. And now, select "service functions" and go to format the internal disk.
Important note: Jasmine told me that if you are in "flip removed mode" then you still can access that Service Menu. Just remove the SIM-card from the phone; switching it on will show the phone virtual keyboard, where you will be able to tap the * key on the screen.
Step 8: FEAR!!!
After selection of "format internal disk", you will restart the phone and see this message: "The internal file system was found to be corrupted and will now be reformatted". Fear not: it's only a warning message. Just press the OK key on the flip and then wait formatting (a few seconds) and phone restart.
Yay!! Finally we have a brand-new (almost) P900, asking first for language selection (sorry: this operation leaves only the English language, you will lose all other languages). Press OK and go on re-configuring everything (aieeee!).
Step 9: double FEAR!!!
Just configure the control panel as normal, and then install as usual your favorite .SIS files.
You can then copy the contents of some directories from the full backup of above: in the backupped directory, copy again on the P900 these directories: Agenda, Cmra, Jotter, GsChess, HomeRun (that is, yes, agenda data, communicorder settings, jotter pages, chess games status, solitaire games status).
Plus, obviously, all of MP3 ringtones and images and such things.
If you survived without too much heartbeat, then you can go finally to the next step.
Step 10: enjoy!!!
Yes, after re-initialization in English language (wiping out local language data) you will see something like 14+ megabytes of "C:" free space (WOW!); anyways, while reinstalling your favourite applications, you will drain some "C:" space (sorry!) but that's normal.
Finally, clean the screen with the Official Sonyericsson Handkerchief and you're done! :-)
Question: how can I write a generic backup program for the P900? Please help me, without Klingon-speaking, because I'm not a software developer! Which files have I to select, and which ones have I to ignore? Does the P900 emulate some features of Windows?
Every standard UIQ program has its own file structures (mostly binary format, not readable text files), and those structures are not available to the programmer.
If you want to write a backup utility, as far as I know, you need to backup single files from the C:\SYSTEM\DATA directory of the P900/P910.
The SYSTEM\DATA directory contains lots of files, but you can safely ignore:
Then you will see about 30 files to backup, mostly with extension .DAT, .XML, .INI, .CFG, etc, all binary-format files (yes, you cannot edit some P900's .INI files with Notepad; Windows .INI files are text files, but Symbian .INI files are binary files!)
Then you will need to backup the contents of the directories in C:\System\Data\Security (but these seem empty).
You can safely ignore the remaining files/directories from other System\Data directory, because they are created during P900 reset or during software installation.
You don't need to backup the directory C:\SYSTEM\APPS because if you have to reset a P900 it will be erased; if you want to reinstall a software, then it will overwrite its directory in C:\SYSTEM\APPS (if installed on C: disk drive).
Please note that the "message-base" (the archive containing SMS, MMS, email...) is in C:\SYSTEM\MAIL directory.
The agenda schedules are in C:\SYSTEM\SCHEDULES directory, but I am not sure of that file.
Other configuration files are in the C:\Documents (example: Chess setup, Homerun Solitaire status and configuration, Agenda database, Jotter pages, Communicorder Camera setup, etc).
Note: if some Symbian application is reading/writing on a configuration file then you cannot open it! (you will get some weird "open error").
This means that before doing any backup, you have to terminate the existing applications. For example, if you want to backup the message database, then you need to kill the "Messages" application (for example, using SMan).
"Emulating Windows" means only have a theme (and some little software) who does the "Start" menu and some icons. This already exists for iPaq and some other palmtops; I don't know if it does exist for P900/P910.
Anyways, you won't be able to run any Windows software (which was written for 80x86 & Pentium processors; the P900/P910 processor is an Arm/9 32-bit RISC processor). Maybe one day we will see Linux on it (running natively, because Linux runs on a lot of different processors and architectures).