Jump to content
Sign in to follow this  
spacemonkey

Gameboy emulator for SPV - ALPHA code

Recommended Posts

uhm I can't get any game to work :/ .... does the gnuboy.exe need to be some special place ?

I only get a white screen, have tried all pokemons and zelda, none work.

Share this post


Link to post
Share on other sites

uhm I can't get any game to work :/ .... does the gnuboy.exe need to be some special place ?

I only get a white screen, have tried all pokemons and zelda, none work.

Share this post


Link to post
Share on other sites

Hi people.

Just a quick message to let you know which games I've got working:

Jet Pak DX - working - reasonable speed

Super Mario Land - working - quick

Super Mario Land 2 - working - quick

Wario Land - working - quick

Donkey Kong - working - quick

Simpsons Escape from Camp Deadly - working - quick

Dr Mario - working - quick

Tony Hawks - working - slow

Zelda DX - working - quick

Worms Armageddon - working - slow

Driver - working - quite slow

This is the best piece of software ever written for this platform! Cheers spacemonkey!

Share this post


Link to post
Share on other sites

I seem to remember reading about this somewhere, can't find where now though.

I copied the latest version across and a few roms to my sd card last night, however 1-2mins into loading the game it would flash up the timer and hang, with a battery pull being the only solution.

I seem to remember someone mentioning this and it being fixed if left for 5 minutes, this wasn;t the case with mine :/

Either way it seems to e working today, maybe there was't enough memory?

Share this post


Link to post
Share on other sites

The slow load thing is a problem... Don't know what we can do tho... Doom apparently has the same thing.

Sometimes it just takes ages to load as the OS frees up a big continuous chunk of memory to give to the app. So like a 2Meg ROM needs 2 megs continuous memory. If it's already clean like you've recently rebooted you're fine. If you've been running stuff, it takes the phone ages to give that memory to the app... Sometimes it's like 5 mins, this morning it hung for so long I got bored and pulled the battery... ;)

I've completely reorganised the CPU code... doesn't seem necessarily much faster, but then it's still buggy, I'm having games crash (dang)... I'll continue debugging it so no new version yet. The only next step really is to try and recode the main cpu function in assembler, but I'm not sure if I wanna do this.... gotta get some info about ARM assembler. This is the technique that they've used for the x86 version...

Share this post


Link to post
Share on other sites

Avoid the page bug. In the address bar if you wanna see the new posts just add 5 to the number at the right hand end...

Doesn't fix the bug, but let's you see the new posts.

Share this post


Link to post
Share on other sites

This bug is midgame, which is why i thought it might be trying to free up memory that inst there, nm.

As for the CPU stuff, i've never played with anything like that, so wouldn't be of much help ;)

Share this post


Link to post
Share on other sites

I also have the same problem where i just get a blank screen and cannot see a rom list. Does anyone know if this is a genuine bug that needs to be fixed or is it my setup. Ive been using the original alpha version for about a week without any trouble. I have renamed my roms and moved them to the same directory as the gnuboy.exe.

HELP!!!! I miss Zelda!!

Share this post


Link to post
Share on other sites

Ive just read my last post and it even confused me!

Just to clear a few things up. I have updated to the most recent version of gnuboy.exe. I was previously running with the very fist version which was ok. I now get the blank screen problem other users have also identified.

Cheers.

Share this post


Link to post
Share on other sites

When you have the blank screen... is it white? If you press the centre of the joystick button does it then just exit?

If the answer to these is yes then it can't find your roms.

-Make sure it is the latest version (download it again) - the first version with a ROM picker needed to be a specific path whereas this version just needs gnuboy.exe to be in the same place as the roms.

-Are your Roms in the same place as gnuboy.exe? they must be, they must also end in .gb or .gbc

-Are you sure your start menu shortcut is definitely pointing at that gnuboy.exe in the directory with the roms? It's easy to leave it pointing at the old version in /storage card, it's also to accidently copy the exe to the start menu rather than creating a shortcut. If you have all explorer try using that to browse to the exe and run it and see if it's any better.

Beyond that... dunno... it seems to work fine for everyone else (except mine which I broke last night... damn code changes ;) )

Share this post


Link to post
Share on other sites

Problem sorted. In the end I decided to reboot the phone and voila it works!!!!

Thanks for your help anyway Spacemonkey.

Share this post


Link to post
Share on other sites

I was experiencing the same problems that after a fresh reboot you can play any game but once you exit then try to return it hangs - but after trying various ways I find that if you exit a game by pressing the HOME button then gnuboy will hang on you when you try and execute it again, hence reboot.

However if you exit a game by pressing the PAGE BACK button you will be able to execute gnboy fine upon return.

Well it works for me 8)

Hope this little contribution helps ;)

Share this post


Link to post
Share on other sites

Great work - I am definitely impressed with the beast (SPV)!! Spacemonkey, what do you think of including a version number? That would stop many getting confused and asking qstns/having probs with older version..

Regards

madu

Share this post


Link to post
Share on other sites

OK... new version...

http://www.davemoller-nz.demon.co.uk/gnuboy.exe

dubbed GnuBoy 0.90a (a for Alpha, 0.90 cos it sounded like a good pre 1.0 number ;) )

changes:

-version number. On the Rom picker screen it shows a version number in the title bar.

-speed ups

Known bugs:

-Loading bug... sometimes when loading a ROM it takes ages. After picking a ROM, the title bar changes to say 'GnuBoy CE' this is fine, and shouldn't be up long... if you have a gzip'd ROM it'll sit here for a while as it unzips it. Then the title bar changes to the ROM's internal name. After this change it normally comes up fast but sometimes (maybe 1 in 5 loads of Pokemon) takes an age (or if you are like me you pull the battery and reboot). Don't know what causes this but it's the thing that annoys me most, so I'm gonna start hunting it.

-Had a bug due to my internal cpu changes where it would hang in game... symptom is that the game hangs but the phone isn't totally dead... if you press back gnuboy exits cleanly but the hung state is saved, when you rerun the rom it loads back to the hung position and hangs again. I think I have resolved this and testing the new version it hasn't come up again... if you get this bug please PM me.

Next steps:

-I'm gonna try and track down the slow load issue.

-I'm gonna get off my **** and do the menus

Info for interested people:

-I have majorly restructured the CPU emulation code in this version to get the speedup, the difference is well noticable on my phone (especially if you use the new version for a while and then go back to the old one.) Because of this there is a chance that it might have new bugs... I've checked the code quite thoroughly and tested it quite a bit (that's why it's taken time to get out...). From here, I can't see much more potential for improving speed in straight C. maybe if someone redid these routines in ARM aseembler... but I'm not gonna go there. For sound, this means we're screwed, on simpler games I'm getting running speeds that are close to real gameboy speeds, to get sound going and sounding OK, we need to get processing speeds to faster than real gameboy, so we can hookin sound and then delay it back down to exact gameboy speed. I think the most likely step that will make this possible is if someone figures out how to clock our 133Mhz ARM chip to 133Mhz as opposed to the 84Mhz the is implemented in the SPV.

-Complicated games such as Street Fighter Alpha are still just too slow to be playable... sorry... again it's cos of the cpu core... it's not like we can process these things efficiently, we're constrained to emulate the machine code processing of the gameboy, (as in each instruction is like a A=B or A=B+C type thing) and the number of instructions per frame that Street Fighter puts through the cpu is just immense...

-Note there is no forced delay in the code... this means if a particular ROM is extra simple it could run faster than a genuine gameboy. If anyone has a game that seems to be going too fast give me a yell and tell me what it is cos that'd be a good game to play with sound on.... I'll probly add a menu item to switch on speed limiting for games that go too fast. (although I don't think there'll be many)

Anyway, that's enough waffle... catcha all later... (performance is now real sweet for pokemon and galaga)

Share this post


Link to post
Share on other sites

Space Monkey for MVP!!!

My pokemon ahem gold :oops: seems slower actually so i mite just back the files up and re-install - Still Gnuboy "0.90a" kicks but !!! ;)

Share this post


Link to post
Share on other sites

I am not convinced it is any quicker. Difficult to tell. At best 5-10% quicker. Maybe just my imagination.

Share this post


Link to post
Share on other sites

my pokemon gold varies... sometimes it starts up and is quick as anything, sometimes not.... it's a bit weird... I need to try and investigate it more... might be interacting with something in the OS in a bad way...

Share this post


Link to post
Share on other sites

If someone could get the ARM CPU to run at 133Mhz that'd no doubt be great, not only for this project, but for Doom, Quake, Media Player.. virtually everything media-orientated!

I know this is somewhat stating the obvious... but does anyone have any idea how to do it? Would it be a hardware modification (like with olde PC jumper switching), or software hack?

Chris

Share this post


Link to post
Share on other sites

Oh, I'm sorry, it appears Paul posted a reply to this subject a while ago saying that someone on the forum was working on it...

If that person reads this - how's it progressing, does it look possible?

Eagerly waiting...

Chris

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×