MMSGURU's Techno Blog | home | subscribe | contact | admin |
Tuesday, January 6th  
 | list | rss | 
Back and Alive
This one is just for letting you know that I am back in action. The last two years have been really slow. Most of my time I wasted with MMO's like WoW and LOTRO - quit both after realizing how consuming they were. Well, thing is, I am really keen for success and such games are really poison for me as I cant stop until I am *the best*. That goal was never reached in WoW, as the clever Blizzard guys did prepare for people like me. On the other side, LOTRO never really offered enough end-game-content to keep guys like me playing it. Actually I prefer PvP instead of PvE and the PvP part of LOTRO is a bad joke. Just to give you some ideas on why LOTRO PvP is ridiculous from the technical point of view:
The number of players within the PvP area is unlimitted. At the first glance that looks sexy but anybody who is a bit technically savvy will notice that not capping the number of players in a certain area WILL lead to overcrowded areas. Anybody who played this game and ever tried to attac... more

May 6th, 2008 - 12:59 pm | permalink

SISyphus Labour
Some brief ideas and experiences with mobile themes/skins and their file formats, namely: Nokia Series 40 Theme NTH (1.0 and 2.1), Nokia Series 60 Theme SIS (2.6, 2.8 and 3.0), Sony-Ericsson Theme THM and Sony-Ericsson Theme UTZ. I enjoyed playing with those formats and implementing a parser/validator/extractor. It especially was a nice experience because these file-formats are mostly straight forward -> designed by people that know their job.


Nokia NTH

The first theme I started playing with, was Nokia's Series40 Theme format (.nth). The tool for creating them is called "S40 Theme Studio", it is available through Nokia's developer forum and it is the worst piece of Java I ever had on my desktop. It is buggy, nightmarish slow and not intuitive at all. Well, but still i managed to create a few test themes for finding more details about that format.

NTH-files are ZIP-archives. The non-binary attributes of the theme is described in "theme_descriptor.x... more

June 28th, 2006 - 04:24 pm | permalink

A ringtone is a ringtone is a ringtone is a ringtone
Are reading news like: "the content market is going down", "mp3 handsets make ringtone sales superflous", ... ?

Well, here are my two pence:

That is male, wild cow excrement.

- Content sales are strongly connected to handset sales
Especially true for games and applications, but also for ringtones etc. Currently the handset sales in europe are generally decreasing, hence also the content sales. Handset sales will dramatically increase again as soon as a new technology step is taken.

- The average MP3-song is not directly usable as a ringtone.
A ringtone generally has a purpose!!! It alerts the user that somebody wants to talk to him. Many pop-tunes have intros that slowly build up and introduce the actual song theme. A proper ringtone catches only the most recognizable part of a song. The task of identifying, cutting and tweaking such part is definitely exceeding Joe Couch-Potatoe's abilities.

Rest assured, the market is not dying!

June 21st, 2006 - 06:31 pm | permalink

Sagem's Rat Fake
Dont panic, this is gonna be a short one, promised...

Sagem, being a french cellphone manufacturer (among a zillion of other things), has "created" a custom format for their sample based ringtones. Well, to be precise, the file format is the well-known and documented WAVE-file-format (RIFF).

But the codec is not PCM. The wave-files are marked as being "BeCubed Software Inc. : Irat"-encoded (Format 101h).

One doesnt have to be particularly clever to suspect and prove that the used codec certainly is not the claimed one.

Actually, its almost a tradition to use that exact format identifier for self-defined codecs. Its wrong, but common.

Now, lets have a closer look at one of those files. You will notice that the filesize, when compared to the PCM template, has reduced roughly by factor four. Again, you will possibly guess, that is some kind of ADPCM, and you would be right.

When looking really close at those files, you will find out ... more

June 14th, 2006 - 07:03 pm | permalink

JavaScript should be renamed to voodoo and witchcraft
Howdy Partner (as said by Peter Sellers in "The Party", MGM 1968)

This time I am going to write about my impressions and recent experience with DHTML and JavaScript.

For the latest RetroFolio release, I needed to do something quirky; I needed to buffer the content of a form on the client side, with variable element count, names and certainly values. This may appear rather superfluous as submitting a form would get these values to the server which could store / buffer them. Well, in this case, that was not an option. The background story may be told in details some day later. For today, all I want to reveal is that the whole issue is strongly connected with Folio's lifted upload size limitations (from eight megabyte to one gigabyte).

As the more experienced DHTML / JavaScript developer may know, form elements can come as arrays. Useful thing and also fully supported by most server side scripting engines (e.g. PHP >= 4). But wait, I am very tempted to call thi... more

June 8th, 2006 - 09:57 am | permalink

What comes first, chicken or egg?
Howdy beloved reader. You are witnessing my very first blog article. Actually, its not that "bloggy". I am a geek and I love fiddling around with bits. So this actually describes the result of such geekdom.

This is about how Yamaha has protected their SMAF-files from corruption. While doing so, they produced a little riddle for the reverse-engineers among us.

If you dont know what SMAF files are, just skip this entirely, you wont get any value out of it.

First of all, a SMAF file, no matter if MA2 or MA7 usually contains three checksums. Two in the middle of the file, one at the end.

Checksum1-Value is stored in a "CNTI"- (MA2) or "OPDA"- (MA3 and above) subtag called "A2".
Checksum2-Value is stored in a "CNTI"- (MA2) or "OPDA"- (MA3 and above) subtag called "A0".
Checksum3-Value is simply appended to the "MMMD"-data.

Only Checksum3 is mandatory for handsets to still accept / play / store the content. The other two may even be incor... more

June 7th, 2006 - 09:34 am | permalink

 
 | list | rss |