Mr. Mirko's Interview
Mr. Mirko's website can be found here! If you wondering why I didn't say anything at the start it's because I asked him if he wanted to do an interview and he sent me that without any questions ;P
Mr. Mirko: I can give you some brief information,
Mr. Mirko: Last November I was studying the lik-sang site, and saw the wonderful gp32, I then searched google for more information about this cool machine, and saw all the wonderful emulators for this machine. I am a c64 lover, and frodo was looking so great, so a friend and me ordered at lik sang. 3 days later it arrived via ups, and the gaming began :) But after 3 more days the coder in me began to rumble, I searched the web, and found a gcc cross compiler suite for linux, with the gp32 SDK included. I was very surprised how good the official SDK was, I tried some basic coding, and it was working very good. Now I was thinking, what small thing is missing on the gp32? I found the sources of an Amiga Mod player on my HD, and I started to port it. I discovered that the sound setting and use of the Official SDK was useless for my project, so I needed a "better" sound setup. So my decision was clear. I started my own gp32 lib. It was very easy, the arm9tdmi chip is very well documented, and there is a great help in the #gp32dev channel on efnet :) . 3 weeks later the modplayer (modded 1.0) was ready for a release. I shared the source code with the author of ScummVM, and he told me, that I should public this nice code. But it was only a plain modplayer. So the SDK was born. I removed the modplayer, cleaned all stuff up, wrote some examples, and released the first SDK Replacement version. Now one Month later, the SDK Replacement is 5MB big and 12 examples show you how to code, with my SDK. Last week I released a complete gcc, c++ compiler suit for linux, with the new gcc3.4.0 and all gp32 tools and utilities, you need to use my SDK, and develop your own gp32 software. The SDK is now to 95% finished, and at its current state, very useful for every developer, from newbie to the Prof.
Mr. Mirko: Some features of the current SDK Version 0.8.4: Complete Screen, Button, Sound, Amiga Modfile, Chatboard, Sprite, Timer, DMA, ... support.
Mr. Mirko: Now that the SDK replacement is almost finished, I can go to the next step, and use it, to port some wonderful things to the gp32. If you think, what could it be? It will be wonderful...
Hooka: How did you help RobertJ with his MADPlay for GP32 MP3 player?
Mr. Mirko: A good question... I think, releasing my SDK open source, was a big help for him ... He is using the gpSDK, and some functions, like using the buttons in IRQ, is not working, so he uses this function from my SDK.
Hooka: What other projects have you helped people on?
Mr. Mirko: I gave early sources of my SDK to the scummvm author, he is trying to use it to get scummvm gpSDK free.
Hooka: What projects has your SDK replacement been used on?
Mr. Mirko: The first release was in January, and now 5 month later, a lot of people use this amazing new SDK. Loki666 used my SDK to port the free game c-dogs. Synkro used my SDK to write a nice "vertical" shooter. Donskeeto used the SDK to write his game Universal Mercenary. Madcat made the wonderful numo with the SDK, a lot of new and old coders want to try the easy coding way for the gp32.
Hooka: What other projects have you done (possibly gp32 or non-gp32 related)?
Mr. Mirko: Visit my homepage, the last big project was a bootable mp3 disc, with LCD display connected to the printer port. Mpoggplayer, a linux console based, mp3, ogg vorbis, mod and s3m player. I am also a great c64 music lover, so I arranged some c64-related music in the past. You can dl my mp3 remixes here.
Hooka: What projects do you have planned for the future?
Mr. Mirko: I am a big retro fan, building my own computer is a big dream. I was thinking about a 6502 mainboard with flashrom, my own OS, this should bee a lot fun. Also I am dreaming creating my own gaming console hardware. With a more powerful CPU, 16:9 tft, and a real soundchip :)
Hooka: Ok, so this really isn't a question but GIVE ME BACK MY BRAIN! I know you stole it with your demo and its tricky tunnel, just give it back!
Mr. Mirko: The tunnel effect I am using in my (early first) demo, is great, I know :)) The source of this tunnel demo is now released as a Demo, in my new SDK.
Hooka: How come you decided to drop the gMAME port? Did the SDK need the attention more?
Mr. Mirko: I started a mame Port, called gmame for the gp32. I took me over 2 Month to get it in a working stage, but defeating over 20.000.000 lines of C code was too much for me. The last update was a mame port, which can run 3 games, at about 90% speed, I lost interest on this project, cause it was too big for one person, and I got no help from others. The project turned from a "fun" part to a "hard work" part. And this is not what I want in my spare time. The SDK is a real "fun" part, finding out how the hardware works, was the real spirit behind it.
Hooka: What about the "not until 1943 works" comment on your website, did you just make it open source in the hopes that someone would pick it up or do you plan on going back and picking it up again once the SDK is more complete or you have more time?
Mr. Mirko: Yes, I saw that 1943 would not run, without spending 1000+ more hours of coding time in this project, and the result would bee a 80% 1943 with crappy sound. So I lost the interest in this project... I released the sourcecode of my gmame work, that’s now 2 month old, but nobody picked the project up.
Hooka: Would you be willing to help someone if they decided to work on it?
Mr. Mirko: Of course, the mame code is a real beast, I would help wherever I could.
Hooka: How complete is your SDK now?
Mr. Mirko: The SDK is in a "near100%" finished stage. My goal was to create a basic SDK with Low-Level functions, but in the past it was growing and growing, but now I said stop, and I am only working on improving the old functions in speed.
Hooka: I noticed Synkro did some coding tutorials for your SDK, did he make EasyRom and Vertical with your SDK also?
Mr. Mirko: I don’t know about EasyRom, but Vertical was made with the SDK. He asked me a lot of times to add a Modplayer to the SDK, so his vertical could get some sound. I added a modplayer in the latest SDK version, so I think he will release a new vertical version soon, with more music and sound.
Hooka: Ok, if Modded for gp32 was made before the SDK, why is it on the SDK page?
Mr. Mirko: A good question. The modded player was my first gp32 project, and uses the same functions I use in my later developed SDK, so its just there...
Hooka: Does Woodstock help you code or does he just float around your name on the gp32x boards?
Mr. Mirko: I am a big Charlie Brown fan, Snoopy was one of my favorite stuffed animal, some years ago :)
Hooka: What is your favorite game/homebrew/app for gp32?
Mr. Mirko: I like the frodo port very much, it’s the reason I got my gp32. Yoyos ogg player is great to listen too ogg files. And very big respect to Little John, the Emulator that makes it possible for me, running Pirates! wherever I want :)
Hooka: What do you see/ hope to see for the future of the gp32?
Mr. Mirko: Gamepark is a little company, with a good hardware. For the next 6 Month this will not change. The EU release is a big step forward, but SONY and Nintendo are not sleeping, and the EU release is over one year to late. Remember the gp32 is over 2 YEARS old now. 199 Euro for the BLU is a good start, lets hope is will get cheaper until Christmas. The gp32 is the only true gaming console with a very good homebrew scene. And this will not change in the next 2 years. The zodiac is too expensive, the psp is closed for homebrew devvers, and nintendo is working on a plan how to kill all gba emulator coders on earth. So for me the gp32 is THE machine. It’s unbeatable in price and features.
Hooka: How hard was it to add the chatboard support to your SDK? Did you use Spiv's driver or make your own?
Mr. Mirko: This was a hard week of try and error. I like to code, so I made my own driver. I started the driver, without owning a chatboard, and asked spivvy and others if they could help me testing my driver, Mike Morris was so kind, supporting me with a free chatboard, and I want to say thank you for this once again. With my own chatboard the devving was a lot faster, and in one weekend the driver was finished. I had one big bug in it at least, and spivvy on #gp32dev helped me to solve this bug. Once again, thank you Jouni, for your great help.
Hooka: Do you plan on making your SDK ADS compatible eventually? (I've noticed a couple people mentioning they'd be interested in it)
Mr. Mirko: ADS is a commercial (over $1000) Windows C compiler, and I don’t want to support commercial stuff. I am using Linux and the free gcc compiler. ADS is in no way better then gcc, so I don’t want to spend time in supporting an expensive commercial product.
Hooka: Is the guy in picture #4 from Heidepark 2002 trying to feel up that girl beside him or is it just a funny camera angle? ;P
Mr. Mirko: Hehe, the guy is me... And about the girl, it’s my girl friend... Its a very bad camera angle :)
Hooka: Doesn't pic #23 from Caos Tour Holland 2002 remind you of that one Monty Python song "Sit on my face"? (Sorry for going off topic, but I found those pics funny)
Mr. Mirko: I think beer is not the only thing you can get in the Netherlands, and this is the result, if you use it too often :)
Hooka: Has somebody compiled windows versions of your tools (bmp2raw, raw2c and compress) yet? If not, would it be appreciated if it was?
Mr. Mirko: Yes Bobintrees released a new Windows version of the devkitadv kit for my SDK. It includes all tools for Windows.
Hooka: Do you think it's safe to overclock the gp32 after the recent tests or is that just to prove it could be done?
Mr. Mirko: Overclocking the gp32 is save, it will not harm the hardware. A lot gp32 are able to overclock to 200Mhz now, and I think we see a lot of emulator updates soon, supporting this high Clockrates.
Hooka: Did it surprise you to see the Spanish launch go through?
Mr. Mirko: Yes, I never thought that any gp32 would hit a store... a great deal for gamepark. Let’s hope price will drop soon, and a lot of folks will buy this machine.
Hooka: So, how was porting Kronos? That screenshot you made with a game where your looking through a fishbowl, what's the game called?
Mr. Mirko: Kronos was a quick port of "magnetics" a magnetic scrolls adventure game emulator. I used it to test my chatboard driver :) The game is called fish. My favorite magnetic scrolls game btw is Guild of Thieves, you are a thief and must "rob and plunder all you can :)" I am a big text adventure fan, and the magnetic scrolls games are soo damn good, that I wanted them always by my side :)
Hooka: "I am now learning arm9 assembler to write some nice sprite lib’s (rotating/stretching/moving/... ) (Help wanted....)"-Mr. Mirko, is there still a help wanted sign in the window? (Maybe you want to ask for help for something else, who knows maybe somebody who knows how will read the interview and think, yeah I can do that! Just a thought)
Mr. Mirko: I never used arm assembler before, and now that I started with some little asm functions (fast screen clear) I had no more time writing more asm functions in pure asm. I learned 68000 asm on my old Atari ST days, and it was a great and easy syntax, but arm asm, is not so easy it looked liked...
Hooka: What made you such a genius that you'd think to make a Garfield comic viewer? (Thank you!)
Mr. Mirko: This was a "boring day" project, to cheer me up. I found a web site with some comic strips, I converted them, and wrote a little viewing fxe, and ready was the viewer :) Btw, I love Garfield...
Hooka: So, I'm guessing (ok, I kinda knew :P) that you got some help for the RTC based timer code from Mr. Spiv?
Mr. Mirko: Yes, I needed a CPU clock independent timer, and I found no way in the official pdf file, how to do this. And spivvy told me, that I can use the realtime clock for this, he sent me over his little code, and I used it. (Thaaanx!!!) (Did I mention that Jouni is a great guy?)
Hooka: The first post you made on gp32x board had a demo and you said "This is my first Demo, hacked together in 2 Days, I am not a really good coder, but I got fun doing some coding "-Mr. Mirko, well do you see yourself as a good coder yet? Cause I know you're better than me! (Possibly gamepark too, but I'll leave that to be decided by the coders ;P)
Mr. Mirko: You are doing a very good job with your questions. :) Yes, this was my first gp32 demo, I never tested it on the real hardware, it was completely developed with geepee under linux. I packed together some old fonts, and my 3d tube, and ready was the demo... It was made in the 3 days I waited for the gp32 arriving from lik-sang... But I released it before I could try it on real hardware...
Hooka: Ok, I know you said a dosbox port would be way too slow to be useful, but what if someone wrote a X86 emu core in ARM? (I know, it's a task that I don't think anybody would want to try... too much work, but want to know if it's atleast a possibility)
Mr. Mirko: I think this will not happen, and I see no reason why someone should emulate a DOS box on his gp32? Of course its possible to write a Jit compiler for x86 to arm, but what if we could emulate a 286 with 12Mhz? Are the games running on this Hardware really so much fun? I would prefer the Atari ST emulator instead, and run the games there.
Hooka: I can think of a few (had a 286 laptop)
Hooka: So do you think that GPAdvanced simulation instead of emulation method will eventually bring up a full speed GBA emu?
Mr. Mirko: A lot of folks want a gba emulator, and I think it will happen in some time. And yes, full speed gba emulation is possible on gp32, remember they both share the same CPU, so the emulator needs no arm CPU emulation. Only some kind of gba Simulator, to simulate the Sound/Graphic chips on gp32. With more and more devvers joining the boat now, the hope will never die :)
Thank you Mr. Mirko for doing the interview, and all of you reading this have a good day!