Franxis' Interview
Franxis' Webpage can be found here!
Hooka: Would you like to tell us a little about yourself?
Franxis: I'm a 30 years old spanish Guy living near Madrid. I work in a spanish telecommunications company for eight years.
Hooka: When did you get your GP32?
Franxis: I got my GP32 in June of 2004, when Virgin Play company distributed the console in Spain. I got in a commercial centre only for testing a couple of days, but I loved the console immediately and I decided to own it.
Hooka: Why did you decide to get one?
Franxis: Anarchy from Gp32Spain.com showed me the GP32 in MadriSX 2002 party (madrisx.cjb.net) and I was very surprised with the PC-Engine/Turbografx emulator for example, but after that I was investigating about the console on Internet, and I though it should be great to play old computer and console games on a portable console.
Hooka: Columns GP32 was the first project you ported to GP32 and was based on your own code from university, are you glad with the way the GP32 version turned out?
Franxis: I was surprised with the easy programing for the console. The GPSDK is easy to use and I ported my Columns port in a weekend, and everything was exactly as in my original Columns for MS-DOS. Also my original Columns game for MS-DOS didn't run on Windows, only on pure DOS with Sound Blaster drivers, it didn't run ok with DOSBox also... I was motivated to see my old game on my GP32 to know how difficult the programming for GP32 was. My dream was to have more experience with the GPSDK before trying to port MAME.
Hooka: Your next project was Multipac which you entered into the ADIC 2004, what made you decide to port Multipac to the GP32?
Franxis: I didn't have any experience porting an emulator, and I wanted to port a not too complex emulator to the GP32, before porting MAME. It was an experiment to port MAME after Multipac. Also Multipac is the preceder to MAME, and a lot of code is "similar". I estimated two months to port Multipac to the GP32, but finally I did it in only one month completely. I was shocked when I saw Pacman running on the GP32 with corrupted graphics during my first testings.
Hooka: What's your favorite PacMan and/or clone?
Franxis: My favourite is the original PacMan game, but it is funny to see things like PacMan 3D :-) for example. I didn't know about the existence of so many PacMan clones or hacks, I investigated about it because I saw some emulators running those hacks when I tried to get MultiPac original sources in Google.
Hooka: What made you decide to try and port MAME, was how easy it was to port multipac a factor in this decision?
Franxis: Immediately after finishing the MultiPac port (in the beginning of december of 2004, a month before ADIC 2004 Compo ending). I spend a month studying original MAME 0.34 sources and removing "useless" code.
Hooka: Why did you decide to use MAME for GP32 as your university project?
Franxis: In march, a week before the first MAME GP32 version release. I showed the GP32 and the emulator to some colleagues at work. One of them (Fernando) told me about it because he knows a lecturer in the university and he was surprised with my work on the emulator port. I showed the emulator and the source code to the lecturer in the university (Jose Luis) and he told me it was ok and I started to document the project for the university.
Hooka: Were you happy to get a 10 out of 10 on your university project? Was it a surprise to get that high of a mark?
Franxis: Yes of course!, I have been working in a telecommunications company for eight years, and I have been delaying the university project due to my job, but of course I need the engineer qualification for my future professional life. I was not surprised because the university lecturer told me the project was very original and I spent a lot of time to get a good documentation, I was interested that it would be useful for newbies in GP32 programming, sorry but only for spanish readers :-(, it was easier to write it in spanish due to my poor english.
Hooka: Were you taking a masters in computer science course? or was it something else?
Franxis: I don't know the sort of university courses in other countries. In Spain I received a 3 years university course in telecommunications (telematics specialized).
Hooka: What are your favorite arcade games for MAME?
Franxis: Tiger Road is my favourite arcade game of all times. But it is impossible to be run on GP32 due to memory limitations. Ghosts & Goblins, Bubble Bobble, Black Tiger, Tetris, Pang, Snow Bros, Toki, Puzzle Bubble, Contra, Gradius, Bomb Jack, Pyscho Nicks Oscar, Xain'd Sleena, Pinball Action, Tehkan World Cup, Robocop, Rastan, Last Duel, Tokio, etc. Later games: Do Don Pachi, Metal Slug, ... a lot.
Hooka: What do you think will be the newest/most complex games that will be possible with MAME GP32 once it's neared completion? or what are your goals for MAME GP32?
Franxis: I think it will be no important news in the games supported by my MAME GP32 port. It is possible to get Robocop, Rastan, or Rainbow Islands with some work but I promise nothing about this. Also it should be possible to get running some games not supported by MAME 0.34 version but supported in newer versions (Super Pang, Rodland, Gals Panic, Tumble Pop, Sichuan 2, ...) but I'm not sure, I have to check it... The real goal is to get the actual supported games at 100%.
Hooka: When/if Reesy releases Dr.Z80 and the bug fixed cyclone core (or maybe see if david douglas will share his Z80 ASM core with you) will you consider adding them to MAME GP32?
Franxis: Of course!. I sent MAME GP32 1.1 source code to Reesy several months ago, because he offered to integrate the cores, but I think he should be very occupied with his work now... I have no news from him... Maybe sometime in the future... And of course if David Douglas shares his Z80 ASM core I would like to integrate it into MAME.
Hooka: Do you think that you'll eventually add support for the 32/64MB mod for GP32 or some form of dynamic loading to allow bigger games to be played?
Franxis: I don't have that 32/64MB memory mod for GP32, if somebody wants to send me one I will use it immediately ;-). I would like to include all fxe's into a single executable and also to include support to Neo·Geo games. About the dynamic loading, I have not seen this in other GP32 programs, and also the SmartMedia Cards have a maximum number of writings... Then it seems to be not a good idea with MAME.
Hooka: So you've gotten a collaborator, is this a relief to know that you don't have to work through all the code by yourself anymore as MAME is a big project?
Franxis: TheGrimReaper has done some improvements in the port, I really appreciate it! He is the first one ;-). He has included analog controls supported in a better way and he has include support to Atari vector games (Star Wars...). It is great, maybe next weekend will be a new MAME GP32 version... Fingers crossing...
Hooka: What place are you hoping for in the GBAX.COM & EMUHOLIC.COM Coding Competition 2005?
Franxis: I don't know and I don't want to think about it... I was very excited with MultiPac and ADIC 2004 compo, and finally I was classified #11... Anyway I received a spare GP32 with this classification, it was cool !!! I would like to have a PSP of course, it would be great to continue my work on the PSP, I would like to see Neo·Geo games running... But it is better to stop dreaming, let's wait for the results...
Hooka: What exactly does the Underclock option do?
Franxis: In my MAME port, when this option is activated, the speed of the emulated processors for each of the games (Z80, M68000, etc) is decreased 20%. Then, 20% less CPU is needed to emulate the CPUs of the games in real time. This option is a trick to optimize the performance of the emulator. But there are some games with problems with this option, i.e. Trojan (reset) or BreakThru (slowdowns), because the "processors" have less power, and if the game is optimized to get the maximum of the processors, there are problems logically. But for arcade games, the hardware resources are normally over-scaled and this option runs ok for almost every game.
Hooka: Was it nice to see that Alien8 made a launcher for MAME GP32?
Franxis: Yes it's very nice, It's pretty to see more people trying to collaborate with the emulator... But it is quite difficult to get this frontend... I will try to have it available on my webpage...
Hooka: Have you had a chance to experiment with a frontend that can load the correct game with the correct .fxe with the technique Woogal was talking about? (GpAppExecute & GpAppPathGet)
Franxis: Yes I have planned it, but I always find more interesting things to work with MAME, more interesting than a frontend... But I will do it for sure... Don't worry ;-).
Hooka: Are you impressed by the fact that thegrimreaper got vector game support in so quick? (Which is looking and running very nice ATM... thanks also goes out to LDChen on that one)
Franxis: I'm impressed because he has not been frightened with the big MAME source code and he has tried to collaborate with the project. Personally I wasn't motivated to spend time with the complex vector library, but it seems TheGrimReaper wanted to play games like Star Wars on his GP32, then hats off to him !!! ;-).
Hooka: What are you working on in MAME GP32 right now?
Franxis: I have spent a lot of days tried to optimize the speed of the emulator, with a lot of tries, and a lot failures. For example I tried to replace the M68000 core with Musashi one... Three times... and without success... I would like to play Snow Bros at fullspeed... After this I tricked the timing of the M68000 emulator to gain more speed, but there is not enough speed increase for this objective...
Hooka: Do you still need more people to help on the MAME port?
Franxis: Of course yes. Other people will have more ideas for improving the emulator, I'm a little tired now, because I have been working a lot of months with this emulator spending a lot of my free time...
Hooka: Have you done the MAME port entirely in C or have you added some ASM for speedups?
Franxis: There is no ASM. I have not tried ASM because I have no experience with ARM ASM, and because the ASM is not the solution for all problems. A lot can be done reading ARM programming recommendations available in some webpages in example.
Hooka: Isn't it nice to see that EvilDragon created a program to get the supported games out of a full MAME 0.34 romset?
Franxis: Of course, EvilDragon is a great dude! He trust on the project from the beginnings... gp32x.com is the page that has most supported the project. In example, gp32x.com has a dedicated forum for the MAME GP32 port and there are a lot of cool people on the forums. Also a month ago or so, I received 'guru' honor status in their forums, hohohoho :-).
Hooka: Did it catch you off guard when HAZE said you had to remove the releases until you released the source?
Franxis: Their manners were a little rude, but I think the Haze's decision was the correct one. I was not able to release the source code until the university project evaluation, because I couldn't risk my project. Then I remove the binary releases. The same day the evaluation was done, I release the source code, a new version of the emulator, and also the university project documentation. I expect all people would be happy now. Also I sent the source code to Reesy when I was "caught" by Haze, then there was no risk of lost source code or loss of work that could be useful for other people, I think...
Hooka: Would you consider adding multiplayer to MAME GP32 with nigelibro's bluetooth plug-in? (once it gets released)
Franxis: I think this won't be implemented, because I haven't got such an interface and I think it should be hard to implement this on MAME.
Hooka: Ok, to get away from hounding you for information on MAME GP32, where did the nick Franxis come from?
Franxis: I maintained an old spanish webpage called Emudek. It was online for more than 3 years and I was posting emulation news in this page, but I was bored with it, I liked to spend my spare time in another projects. Emudek was a very popular webpage, but I had also a lot of enemies because I was putting rom links, e-links, etc... Two years has passed since Emudek closed, and I have angry discussions with some people yet... I expect I could clean my name with more work on other emulation projects in the future, but I don't want to change my nick :-).
Hooka: I noticed you made a modified config.ini for Selfboot for the DC, did you ever do any dev on DC?
Franxis: Yes I did some scripts to make some things easier on Dreamcast, but I have not coded anything on DC. Also I have not coded other things outside my job until the GP32. In other way, I'm a fan of demoscene, since the Future Crew times... I did a mixed compilation of the best "retro" demoscene music (www.talfi.net/retrovibes).
Hooka: What other systems have you coded for?
Franxis: I have programmed since my beloved Amstrad CPC, I did small games for my CPC, also I did some programs and small games on PC. But nothing serious...
Hooka: How come everytime I translate a spanish page with babelfish MAME turns to SUCKS?
Franxis: In spanish the verb "Mamar" is "Suck" in english. The verbs are written different depending on the time verb, and effectively "Mame" is "Sucks" in spanish xDD. In example in the university project, MAME was written M.A.M.E or also "Multiple Arcade Machine Emulator" a lot of times, to not be insulting to university people xDDD.
Hooka: Do you have any other plans for other GP32 projects down the road?
Franxis: I would like to play Super Nintendo at full speed on GP32... Axelay, Super Ghouls'n Ghosts, Super Contra, Super R-Type... But it seems to be really hard... I don't know if I will try with it...
Hooka: Is there anything you would like to say or add?
Franxis: The GP32 is alive, and there are a lot of things to be made for the console. Then... I warn the people to code for the console... It is a nice way to learn programming.
Hooka: Thanks for your time! It's been great being able to play Multipac, MAME and Columns on the GP32!