While I'm not familiar with the legal cases you refer to, I'm willing to accept in principle that in this hypothetical case you could have some sort of copyright over the changes to the code. However, you wouldn't have copyright to the final code itself if it was too bound up with the original code to separate your contributions and you didn't have authorization to modify it as you did.
I'm not sure exactly what it means legally to put your name at the top of a MAME source code file as a copyright holder, but I wouldn't have thought of it as referring solely to some set of changes that couldn't even be described simply by looking at the file itself. If MAMEdev wants to relicense code that Haze contributed to, perhaps they can come up with a statement he would be comfortable making. For example:
"I hereby authorize MAME developers to relicense any changes to the MAME source code over which I own copyright as [GPL/BSD/etc.], provided that they first audit the files incorporating those changes to ensure that the relicensing does not violate any licenses or copyright."
> > This is highly dependent on what exactly you do to the code, and what exactly we're > > asking about it. Sure, if you write some entirely new functions or blocks of code, > > you could retain copyright over those. But if you're modifying code that was > already > > there, or copying it and then using it elsewhere with modifications, then you > > wouldn't have copyright over that code. > > I covered this exact point with "as long as that code is copyrightable, not all code > is". Whether it's in a new function, a new block of code or in an existing loop is > irrelevant. > > > Certainly, you couldn't distribute the entire > > file, so you wouldn't have rights to a usable program. > > I didn't say that you did, I'm just saying that you retain the copyright to any > copyrightable code. Unless you come to an agreement then neither party can distribute > the code, because you both own copyright to various parts. > > > To be extremely precise, here is what I'm saying you can't do: > > 1) Take code that was released under license A. > > 2) Make substantial modifications to the code, but not to the extent that it has > been > > entirely rewritten. > > 3) Release the modified code under an incompatible license B, without permission > from > > the original author. > > 4) Claim shared copyright over the entire code. > > > > If I'm understanding his arguments correctly, this is why Haze didn't want to list > > his name as a copyright holder at the top of files he worked on. > > You don't have a right to do point 3, but if you have made substantial modifications > to the code in a way that is copyrightable then you definitely have the right to do > point 4. It is quite normal to have multiple copyright assertions on a product when > multiple parties have claims, individually they only have the rights to certain > parts. This is no different. Violating someone elses copyright doesn't diminish your > copyright.