Good topic, we need to discuss it (and other parts of TNC too) and clear it out in our TNC guide.
As i already said to you, i'm not clearly sure how the flag was created and what it meant to be, the TNC guide we have now was based on the older ones that already said the same thing.
My personal view of it is a mix of both cases, it was created to identify the "country of origin", in other words the place where the software was created and also released or published. Nowadays (for a long time actually) we have huge game studios and multinationals that produce games which are shipped to all around the world, sometimes with different editions (eg pal/ntsc, eu/us/jp, west/asia/world). In part of these cases it is hard to see a logic reason to use country flags (at least atm).
For example the upcoming release of Gears of War 3, developed by Epic and published by Microsoft and developed by Epic Games. I suppose there will be a few different releases, at least PAL for Europe with 5 or 6 languages (en, de, fr, sp, it?) and an NTSC version for Americas/Japan?. In this example i don't see how a country flag can be used.
It was all made by Epic in US (i guess), no point in having the country of origin in both images as the US. On the other hand, it will be released pretty much everywhere, the PAL version all across Europe and more but we will not put there M50 or something.
I see this flag used more in older systems or specific to software released in (origin) or for a specific country (for!), so i join your two points but used to a lesser extend. For example some game or app produced / released here in Portugal (and in portuguese) for some system (say Spectrum), i would probably use (PT) in this case.
Other example could be Windows, an OS used worldwide, produced in the US but we don't use (US) for it, given the fact that it has localized versions for most of the countries, we have a case where country or language flags must be used to identify the image. Language flag sounds good here, but Brazil and Portugal both use Portuguese and there are different versions of the OS for both (Brazil uses pt_br, while here we use pt_pt). I guess a country flag would be the logical choice here.
In case of Fedora (linux distro), it does not have one version per country / language but a single image (lets imagine they don't have more than one, depending on the system etc), with internalization and currently supporting 108 languages (
https://translate.fedoraproject.org/languages/ ), so it would get a M108
... or no language/country flag at all.
Keep posting your opinions!