I'll repost an edited / updated version of what I posted on reddit for a similar subject a few days back.
It's been an interesting ride, lots of ups and downs, some truly amazing discoveries, and some of the absolute best and most knowledgeable people doing things I'd never imagine possible back in the day; there are still pieces of code I'll open up and wonder how on earth somebody managed to figure it out with the resources available, the team had some true masters of reverse engineering.
I was looking over the first actual code modifications I did for MAME (as opposed to just recompiling) and came up with
Thursday, April 8th 1999
Haze has released EagleMAME, which is based on the beta 10 source. It has the Eagle video routine for ALL games in MAME! Click here to read the docs.
Thursday, April 8th 1999
Haze released NeoMAME - Pocket Sized, it's a "neomame" with a special blur effect, that makes it look like it was being played on a handheld! It's an early release and a bit buggy, but it still rocks
So yeah, messing with graphical filters 18 years ago, time really flies. I know I'd spent a good year before that researching the codebase, learning how things worked etc. Definitely not great code in that early work from me, but the idea of post-processing the images, LCD persistence simulation etc. were of interest and MAME was by far the easiest codebase out there to get compiling and work with. Those were mostly experiments tho because the MAME team wasn't actually interested in graphical filters at the time, it actually took until the relatively recent addition of BGFX shaders for Eagle to make an official appearance in MAME, the HLSL shaders introduced a few years earlier than BGFX did do some LCD persistence. While I've moved past the point of thinking things like Eagle look cool, it was nice to see it eventually introduced as an option!
The earliest (non-trivial) contributions that I can remember making were
23rd July 2000: David Haywood submitted a corrected sprite decryption function for the Macross driver.
29th August 2000: David Haywood added Winter Bobble to the SnowBros driver.
15th September 2000: David Haywood submitted a very preliminary Sega C2 driver, currently supporting only Puyo Puyo, Columns and Columns II.
It's always interesting to see how code you contributed to back in the day grows and evolves, or how it proves useful to you again in the future. For example, it actually took until 2014 for Macross sound to be full emulated, 14 years after the graphics were fixed, because that was the first point at which somebody (trap15) figured out how to extract the internal code. Considering I was still in my teens when I was looking at this stuff the idea that it would be another 14 years (a very significant chunk of my life) before the job was actually finished would have been unthinkable at the time, but it's funny how these things actually end up panning out.
For the SegaC2 driver, little did I know that again, 14-15 years later it would turn out that things like Sonic themed popcorn dispensers ran on the same hardware. The SegaC2 stuff stemmed from an interest in the Sega Megadrive (Genesis hardware) and the initial driver actually included / ran a good number of Megadrive titles, but since MAME was strictly arcade-only at the time they were stripped out before release even if I'd found them useful for development. This interest would of course result me me rewriting things as HazeMD, which was eventually incorporated into MESS as a replacement MD / Genesis driver, and then ultimately rolled back into MAME many years later, finally giving official support for those non-arcade titles completing the circle. The code also ended up being used for the Genesis VDP layer in the System 18 hardware driver and a number of bootlegs that I had no idea existed at the time. I imagine it will end up being rewritten again one day because the knowledge is rather dated now.
In the case of Winter Bobble, that the experience it gave me in looking in the driver would provide a key hint in me realising that an awful lot of Korean manufacturers (SemiCom etc.) were ripping off the video system of the Snow Bros hardware for their own games. This all ended up being part of a bigger discovery, this kind of behavior was very common in Korea, the majority of the Korean arcade PCBs are loosely based on some other original piece of hardware with various changes.
There are stories and discoveries like this throughout the history of MAME, that's one of the things that makes it such a fascinating project, everything ends up being connected in some way.
It's been an adventure, it's been like watching a child grow, it's a project now doing things nobody could have envisioned when it started with many applications in many fields.