I care..... the numbering system is dumb to say the least. (I could use other words, but they'd be censored.)
I currently have a feature in dk to automatically put the newest games in a list if the user so chooses. ... it's a simple numeric compare (.99 is greater than .98 so .99 is the latest version and all games between .98 and .99 should be added to the list, that sort of thing.) but now this throws that all out of the water. .1 is less than .99 that's just dumb....
Umm, what happens with the already released 0.9, 0.10, 0.89, 0.90 versions, howard? If your code works with 0.9 before 0.10, which is before 0.89 and 0.90, you're already not treating it as a decimal number. If your code doesn't correctly place 0.9, you have a problem
even before 0.100 comes out. (not that anyone still uses 0.9, but you still have a "Y2K-like" bug.)

I present to you a simple numbering scheme, can't get any simpler.
First version is 1.0
Any betas/ unofficial builds between that and the next official version are 1+ a part of a number.
(1.1, 1.2, 1.5 ...ect)
The next official version is 2.0
How hard is that?
Please note that every mame since 0.36final has been a beta version.
EVERY SINGLE ONE.
So even with howards' easy numbering the current 0.99 would be 1.63 (assuming 0.36 was renumber'ed 1.0 since it was the last non-beta, and ignoring the 'u's; I've lost count of the # of 'u's, but I bet we'd be close to 1.100 if you included them). I know you said "official release", but you also said "
betas/ unofficial builds"; since every release now is an offical beta release, they could go on either side of your "decimal point"; I'm just putting them on the right side.
The period is not a decimal point. It is a separator. IP addresses use periods as separators, too. I don't see why so many people have difficulty with this.
Nope... it's not. The "seperator" as you put it isn't seperating anything as the number on the left has always been 0. If it were to roll over to 1.0 then it woudl indeed be a seperator and thus make sense.
But of course, then it would also be a decimal point.
You're mixing arguements. The three dots in IP addresses are seperators, and they don't "roll over" in the normal sense, and they are not
decimal points. They do roll over at 256, but you still wouldn't call them 256mal points.
And why do you feel that it has to "roll over" for the dot to be a seperator?

Nobody rolled over that bob-wire fence, but it's still a seperator. Heck, it's a better seperator because of the fact that nothing went over.
Just because mame never got a 1.# version doesn't change that the zero is being seperated from the numbers after the dot.
And it would only be a true decimal point if the first mame was 0.01, and it rolled over after 0.99.
Even if mame ever gets to 1.0, that dot is still not a true decimal point, but only a seperator. People could think of the dot as a decimal point, but it still wouldn't be.
FWIW, I think mame should drop the u and replace it with an other dot. 0.98, 0.98.1, 0.98.2, 0.99, etc. This is almost like Howard's, except it matches well with the current numbering, and the "." are treated as dots, not decimal points.
That or drop the dot and replace it with a 'b' just to eff with people: 0b98, 0b98u1, 0b98u2, 0b99.
