- News for January 18, '99 -





InterView with Phil Stroffolino - January 18, '99 by JoseQ
Phil Stroffolino has contributed numerous drivers to the biggest emulator of them all, MAME. Games like Double Dragon, Renegade, Rolling Thunder and the System16 series come to mind and we think of the hard work involved in making those classic games work. Of course, we were interested in having Phil InterViewed so that you too could learn a little more about this great MAME developer. You'll be glad to learn about his future projects for MAME, a couple of great games coming our way. So, without further ado, here is an InterView with Phil Stroffolino.

1. Could you introduce yourself and tell us about how you got into Emulation and MAMEDEV?

The first emulator I was exposed to was Marat Fayzullin's fMSX. I had never heard of this computer (it wasn't available in the United States), but it was still an amazing thing to see in action. To my delight, Konami and Namco had produced many excellent arcade ports for it.
As it turned out, the MSX was very similar hardware-wise to the Colecovision console from the early eighties. I sent Marat some hardware specs, made some ROM images available to him, and literally overnight he had the first version of ColEm up and running! Talk about magic... My bulky Colecovision and carts are now safely tucked away in storage.
Thinking back, Marat was really ahead of his time. His emulators were open source and written with portability in mind. I studied the resources he made available at his site (source code, and one of the first "how to write an emulator" documents) to learn how these emulators worked.
Soon afterwards, I learned about MacMAME and could barely believe it. I kept thinking I was in a dream, about to wake up. I was in shock when I saw Green Beret (Rush 'n Attack) working, and played it to the end even with the bad colors and sound. Around this time, I first began to get into collecting arcade games.

2. What did you have as previous programming experience?

I have a degree in Computer Science, work fulltime as a programmer, and write shareware games as a hobby. Outside of MAME, I've done a few standalone emulators and ports, the most significant being a TRS80 Color Computer Emulator for the Macintosh.

3. How do you select the games you want to work on? Is it mostly gaming tastes, hardware specs, or anything in particular?

I'd say nostalgia is for me by far the biggest factor. There are still dozens of arcade games I remember fondly from my teenage years that haven't been emulated. These are the games that I'm always drawn to first. Tiger Road, Gladiator, and Renegade are great examples. I played them a lot in High School.
Emulation isn't just about preservation. It's a great alternative for PCB owners. It's fun playing a game in an original cabinet (because of the nice artwork), but I'd just as soon run games on a fast PC, with a crisp monitor, responsive joypad, and nice speakers. MAME offers features that can enhance the gameplaying experience, including high score saving, input configuration, the ability to pause, and the cheat system.
I keep most of my PCBs in storage. They are bulky and sometimes tricky to hook up (several are non-JAMMA). Most importantly, once a game I own is emulated, I don't have to worry about the PCB going bad.

4. What has been the most difficult part of developing a particular driver and what driver was it?

Protection for me is one of the most frustrating things to encounter when working on a game driver. You can't imagine how happy I was when the Japanese Renegade bootleg (aka Kunio Kun) became available. Even with ample help from Carlos Alberto Lozano Baides (a very smart guy) I'd just about torn out all my hair trying to get the US version of Renegade to work properly. I even sacrificed a working PCB in hopes of getting the MCU code dumped. One of the nicest things about working on MAME is the spirit of cooperation. There are many specialists, and chances are if you are interested in a particular game, several other developers are, too. By freely sharing information, MAME developers tend to get games get emulated much more quickly than when programmers work in isolation.

5. You have contributed with System 16 drivers for MAME. Is adding other Sega games simpler once you have a good driver up and running?

Certainly. Thierry Lescot did the hardest part, reverse-engineering the arcade hardware, and later Mirko Buffoni developed the original set of MAME drivers with his blessing. There had actually been a number of efforts to port the DOS-based System16 code to the Mac, but it was beastly work and none of these efforts got too far off the ground (although Brad Oliver came pretty close).
My initial goal with MAME's System16 support was to experiment with video driver optimizations, and fix the buggy/missing music and graphics for the original set of supported games (Shinobi, Altered Beast, Golden Axe, Alien Syndrome). Nao was very supportive, giving me detailed information when I ran into problems.
The other games which were added around this time were almost an afterthought. I plan to make time to return to them sometime soon, and give them a long-overdue polishing.

6. What got you to start working on Rolling Thunder for MAME?

Rolling Thunder is a game that blew me away when I first saw it in the arcade. This game came out way back in 1986, can you believe it? I can't think of any game from that era even close to it, in terms of playability, graphics, and sound. Anyway, Jimmy Hamm's emulator (even in beta) was impressive, but it's not portable (Mac owners are out of luck) and had some minor glitches, so I had big incentive to get it working in MAME. Without Jimmy's help, it would have taken a lot longer to get up and running. I'm very grateful to him.

7. Do you think that the complete hardware set will soon be emulated for this game?

You mean perfect Rolling Thunder emulation? Sure! It's almost there already. But perhaps more interestingly, there are nearly a dozen other games that run on the same hardware (Namco86 board).

8. What type of games / hardware do you plan to be working in the following months?

Some games I'm working with off and on include (in no particular order):

  • SNK games from the mid-80s
  • Downtown
  • Dynamite Duke
  • PitFighter
  • Kageki
  • Legend of Kage
  • Dark Adventure
  • Samurai (Taito)
  • Empire City
  • Phelios

    9. Is there anything about MAME that you would like to change if you could go back to the beginning and propose it?

    "Save State" feature would have been easier to implement if Nicola had it as a goal from the beginning.
    I also wish that graphics decoding had been done in a way that would allow ROMs to be loaded and processed one at a time. This would reduce RAM requirements and also make it easier to unpack Gfx ROMs for certain games.
    MAME's architecture is flexible, and the core is always evolving. There are plenty of things we have now, that would have sped up development if they were in place from the beginning (i.e. the full-featured debugger).

    10. What is your feeling about those endless versions of MAME out there, pMAME, aMAME, NeoMAME, Neo-FreeMAME, etc? Do you think that by splitting MAME there would be other benefits than a quicker download?

    If people find pMAME or aMAME works better for them, great. I don't understand the appeal of NeoMAME. Anyone who plays only NeoGeo games is really missing out, in my opinion. I see even less point to Neo-FreeMAME. I mean, unlike NeoMAME, the application size isn't significantly smaller, and it's no faster.

    11. Any thoughts on the current state of the Emulation scene as opposed to the past year, or what you think await us?

    There are over 3000 arcade games out there, less than half of which have been emulated. I think the most exciting times are yet to come. There are a lot of games which aren't yet emulated because of encryption. The newer Konami ones come to mind (Crime Fighters, Haunted Castle, Simpsons, etc.) It's very likely that a clever emulation author will make a breakthrough here. Sound samples will hopefully become a thing of the past, even for the old games where samples have traditionally been used. Simulations of pre-CPU 1970's arcade games may begin to pop up. New CPU cores will appear. Hopefully dynamic recompilation will make an appearance in open-source free emulators as well.

    We thank Phil Stroffolino for his time in answering these questions, and for all his precious work in MAME. His additions to the emulator has certainly been awaited by many, and the same goes for his next projects! I certainly can't wait to see Empire City, Pit Fighter and The Legend of Kage again! Kudos to Phil and the whole MAME Team for what is undoubtedly the most popular emulator of all time. If you want to nominate another MAMEDEV to be InterViewed, just drop me a note and I'll look into it.

    One Article Up: PSEmu Pro News!
    One Article Down: SNes 9x DOS with GUI!

  • Post Some NEW Comments on this topic...

    2001 EmuViews