
Yoyofr's website is here I'd
suggest you check out his projects if you haven't already!
Hooka: When did you get your gp32?
Yoyofr: About one year ago, from a cool French videogames shop, known
as "Shibuya games".
Hooka: What made you decide to get one?
Yoyofr: After reading some articles on the web, I realised it was the
first handheld really opened to homemade software. The system was quite
simple and powerful at the same time. With the support of SMC, it
really appeared to me as the platform for coding emulators.
Hooka: What dev environment do you use?
Yoyofr: I used to work on Linux but as I'm a gamer too, now I mainly
use Windows XP with GCC & CW as compilers.
Yoyofr: Ultraedit / Xemacs / CW IDE are my main 3 sources editors.
Hooka: Little John GP is a great emulator, what made you decide to
start making an NES emulator for the gp32?
Yoyofr: First, a bit of history: Little John is older than gp32. It was
originally made as a highschool project, emulating nes. Then I added
Snes to it, using snes9x.
Yoyofr: At this time it was running on Linux and designed as a portable
emulator. So I did UNIX (HP/Sun), BeOS & Windows version. I've
heard of Amiga ones too.
Yoyofr: So when I started working on gp32, I used my old sources as
starting point. Then I updated them with the latest advancement in
sound/mappers emulation and I found an "unfinished" but already good
nes emulator for gba, called "FCA".
Yoyofr: I found it was not too hard to finish/debug/interface the 6502
CPU core with ljgp32. So I worked on this for a while, and you know the
result, a nes emulator running with sound at frameskip = 0!
Hooka: Do you have any future plans to work into LJGP32?
Yoyofr: I want to fix some known bugs & rework the GUI to have
something easier to use.
Hooka: Do you ever plan on making LJGP32 into something like Little
John Z or is it better for gp32 to have separate emulators for some
reason?
Yoyofr: It would be cool to have ljgp32 as ljz, but right now the
memory restriction on gp32 makes it hard to do. I could write a
"module" loader, but I think it would be easier to write an emu
frontend as the ones existing for windows emulators.
Hooka: From first beta to 0.4 of LJGP32 only took from June 8, 2003
till October 5, 2003, that’s incredibly fast coding, even if you worked
on it for a little bit before the first beta ;) how do you code so fast?
Yoyofr: Hmm, don't know... I code in my freetime, so it's not so fast
after all...
Hooka: Is LJGP32 all in c or is there some assembler to speed it up?
Yoyofr: Ljgp32 has assembly in it for the critical part:
- 6502 CPU core.
- Sprites caching
- sprite & tile rendering
- videobuffer -> gp32 vram rendering
Hooka: When is the v0.4 source code going to be available? I noticed
the soon!!! thing when 0.4 was released I think ;)
Yoyofr: Hmm.... Seems I forgot to update the website... I will probably
do a 0.4.1 or 0.5 version with all that I've done here & there in
the source code from latest version and I'll put the sources at the
same time.
Hooka: Was LJGP32 entirely all your project or did you have some help
on it?
Yoyofr: I've read lots of documentation on Internet/read forums on nes
coding/studied other emulator source code...
Yoyofr: So I had some help on it!
Yoyofr: But it was a single coder project. Contributions are the
logo/icon from Franck/Antiriad
Hooka: Does Little John Z have the OpenSNES9xGP water effects in the
menu or is it the same as the old LJGP32 menu or did you do a totally
new type of menu?
Yoyofr: I wrote my own new GUI.
Hooka: March 20th you opened the Little John Z page, did you plan to
have all those different emulators implemented into it?
Yoyofr: Hmm.. No. :-) I wanted to have nes/snes/gb, but genesis/ws/ngp
were added only because it was easy & possible.
Hooka: I’m sorry to pester but when was Juny 01, 2004? Just thought I’d
tell ya ;)
Yoyofr: ;-) Okay. I really need to update my website!
Hooka: It’s funny how you worked on OpenSNES9x Z for less than two
month’s and incorporated it into LJZ, what gave you that idea initially?
Yoyofr: I won the Z thanks to OpenSnes9xGP, so I though it was the
minimum to port it on this new platform. To incorporate it into ljz was
the first step to do what I wanted in the first Little John (to have a
"nintendo systems" emulator).
Hooka: Ok, for LJZ you mentioned ThunderZ for the NeoGeoPocket support,
but who did the WonderSwan or did you port it yourself?
Yoyofr: I used Oswan sources. I had done a gp32 version, but it was not
more advanced than wonderboi32, so I did not release it. For LJZ, I
used this version & improved it a bit (but really, just a bit).
Hooka: May 25, 2004 with v5.0-RC3 of LJZ you added SDD1 and SuperFX, do
you ever plan on implementing these into OSNES9xGP?
Yoyofr: SDD1 will probably be part of next os9xgp, since it has no
special memory requirement. But Star Ocean won't be playable due to
the ROM size (6MB)...
Hooka: What do you think about the 32/64 MB memory mod’s for gp32 by
Rob Brown?
Yoyofr: Good idea... A special version of os9xgp could use it, it only
needs to have a good coder with the mod to work on it.
Hooka: Do you think that the memory mod would allow support for SDD1
and SFX? And support for Star Ocean and Tales of Phantasia?
Yoyofr: The memory mod would allow tales of phantasia & star ocean
to work for sure. SuperFX will however be too slow (already too slow on
the Z).
Hooka: Does it always take Tapwave so long to sign anything?
Yoyofr: The issue isn't the signing process, which is known to be fast.
The issue lies in the current incompatibility between Tapwave SDK
license & gpl license (used in gnuboy for gb module,...)
Hooka: Any news on the GPL front? I thought I saw a post by Skeezix
saying it should be fixed but for dev’s to contact Tapwave themselves.
Yoyofr: Right now there's nothing available, and I'm in direct contact
with Tapwave, so perhaps next week...
Hooka: Is it just Pocket Tunes that can play in the background or can
the Tapwave one play too? I really think that is a great idea, play
alot of old console/handheld games with whatever music you want to ;)
Yoyofr: Both can play in background
Hooka: What are your ultimate goals for OSNES9xGP and LJZ? (For gp32
what MHz for full speed and sound, ect. Zodiac I dunno how you want to
put that!)
Yoyofr: Os9xGP: the faster I can :-) I think most games playable at
frameskip 0/1 with sound would be great. But it will need lots of work
in the sound part of the emu.
Yoyofr: Ljz: to port it on palmos and have one of the best free
multi-console emu for palmos.
Hooka: Yogg is an ogg vorbis player could you explain an advantage to
this format?
Yoyofr: I guess www.xiph.org/ogg/vorbis
will do better than me !
Hooka: Have you done any work on Yogg lately and do you plan on making
a Zodiac port, or are there enough ogg players already on Zodiac?
Yoyofr: Yogg was improved a while ago with frequency fix & mikmod
added. I will release it soon. In fact I wanted to add support for
saving/loading playlist.
Yoyofr: On Z side, I'll do a pocket tunes plugin when I have time to
have mikmod & snes spc file interfaces.
Hooka: Are there any other projects you have worked on?
Yoyofr: Haha! *Secret*
Yoyofr: No really, ljz/os9xgp/yogg/ljgp32 ... it already takes too much
of my free time. My current job takes me about 50h/week and I have a
social life...
Hooka: Do you still have plans to make releases for the gp32?
Yoyofr: Yeap!
Hooka: What upcoming features do you plan on implementing to LJZ?
Yoyofr: Bug fixes/stability.
Yoyofr: Snes optimisation (will be used in os9xgp32 too)
Yoyofr: Perhaps new hardware emulated (no, not gba)
Hooka: What part of LJZ did you work on? (I’d be guessing most of it
seeing as ThunderZ said you got the Zodiac because you did most of the
work for the release that won GBAX another 15 Day’s competition ;) )
Yoyofr: Right now, I'm alone on LJZ coding. I have had some help from
Skeezix for palmos stuff.
Yoyofr: But LJZ isn't written from scratch:
- Genesis, gameboy, wonderswan, neogeo pocket are ports. Genesis &
neogeo pocket have some improvements compared to original version.
- Nes: ljgp32 adapted to Zodiac, so I worked a lot on this part .
- Snes: os9xgp adapted to Zodiac. I worked a lot on this one too.
Basically the PPU rewrite, the sound decoding in arm assembly and the
CPU core (started by Laxer3a, but he didn't have the time to finish it,
so I've continue his work and implemented it in os9x).
Hooka: What do you / what would you like to see for the futures of the
gp32 and the zodiac?
Yoyofr: New & better games/emus!
Hooka: Have you made any future plans for new *secret projects* ?
Yoyofr: No, no time for this :-/
Hooka: What do you think will probably be the newest/best hardware
console emulate-able at a good state by gp32 and zodiac?
Yoyofr: Hmm.. for gp32 it's hard to tell, there are already so many
emus... Perhaps amiga if really good coders take the time to start a
new one from scratch, using dave's cyclone cpu core.
Yoyofr: For zodiac, I would say neogeo/mame.
Hooka: What has changed so much in OSNES9xGP for it to jump from v0.2
to v0.5?
Yoyofr: Asm CPU core, sound decoding (however sound mixing is still too
slow), transparency,...
Hooka: I though you mentioned a PC Little John one day, is there
actually a PC version that was NES and SNES together? (If not, I'm
having a really bad day and can't remember what emulator I was thinking
of ;P)
Yoyofr: Yeah, there is one. I think you can find it by searching for
Little John Next Generation or LJNG*. But I don't have a website
anymore & it wasn't updated since a few years ago...
Hooka: What is your favorite NES game?
Yoyofr: Hmm, it's always hard to answer to this.... Probably bubble
bobble/castlevania 3/smb
What is your favorite SNES game?
Yoyofr: Same as before : hard to tell! chrono trigger/ff6/smw 1 & 2
HookaWhat is you favorite games for the other systems emulated by
Little John Z?
Yoyofr: shinobi (megadrive)/snk fighting games(neogeo pocket)/ff
remakes
(wonderswan)
Thank you Yoyofr for your time, interview and work on your projects I'm
pretty sure many people in both the gp32 scene and Zodiac scene
appreciate your work!
*http://linuxkungfu.com/littlejohn/?template=black
is the address to the Linux Source of the PC Little John Next
Generation and http://www.kinox.org/jcemunews/hist/200005.htm
has a post about LJNG from 2000 ;) and the windows version is available
here
thanks to wolfsclaw ;)
*Interview finished 07/06/04*
