GBA Emulator # 3 – BoyCott Advance GBA Emulator Mac BoyCott Advance GBA Emulator There was a real competition between Visual Boy Advance-M & BoyCott Advance to be in the third position on our list. Remember GBA4iOS? It was a Gameboy Advance emulator for iOS that took advantage of an App Store enterprise deployment loophole to let you play GBA.
November 10, 2009 There was an update to a Java emulator created for a Computer Science class at the University of Central Florida and I was able to give it a go with my Mac. It runs Gameboy and they are hoping it will eventually emulate Gameboy Color.
It will run on any machine with JVM installed. I was able to run Mega Man V using my Macbook Pro, which is running the new Snow Leopard operating system. I also have Ubuntu installed using rEFIt but, that is a story for another day. Mega Man ran good but, with no sound. Seemed to run glitch free other than the lack of sound. I was not able to use my controller, but I reckon that with a keyboard mapping utility it might be possible. R78 Fixed a small bug in the window drawing.
R77 Optimized window and sprite drawing. Also, performing the interrupt check every opcode instead of every scanline has a small performance hit, but gives better emulation accuracy on some games so I´m leaving it for now. R76 Some optimizations. R75 Allow reverting back to slow background rendering for games that swap tile maps intra-frame. R74 Window drawing!
It´s slow, but I´ll optimize that later. Also, throttling is turned on by default now. R73 Small update. A little bit faster. R72 Preliminary background tile caching.
Good for about a 2x speedup. Sprites still have some room for optimization.
To download grab it from the Box File Widget or go to the Cheers! November 4, 2009 The Java GameBoy Emulator JSGB by Pedro Ladaria saw an update today. I know this isn’t a native Mac OSX emulator but, it will run in both Firefox and Safari for Mac. It recommends Google Chrome however, I don’t have that browser to test it with.
I did sign up for Chrome updates from Google today so, I’m hoping to have a physical copy soon. The emulator runs Mario Land, Tetris, Dr. Mario, Bomberman, Kirby’s Dream Land, Space Invaders, Motocross Maniacs, Bomb Jack, Bubble Ghost, Boxxle 2, Drop Zone, Castelian, Serpent, and Centipede. In Firefox I got an average of 22 frames per second, with a max of 23 FPS. With Safari I was able to get a whopping 59 FPS on average, with a max of 60 FPS.
This is great for those of you who don’t want to install anything on your computer or are trying to kill time at work. As I become more aware of Java based emulators I will test them out and report back here at Mac Emulators.
To play with this emulator go to. Let’s check out some of the features and the changes.
Features:. GLPv2 lisenced. Pure javascript and HTML5. Works perfect with Google Chrome (even on a simple netbook). Slow with Firefox.
Integrated debugger (with disassembler, memory viewer, cpu registers). Almost everything is emulated, except sound. Supports scanline effects, sprite priority, palettes, accurate timing. Changes:. Now the framerate is limited by setInterval (one frame is painted every 17ms).
Input bug solved. Auto-repeated keys caused emulation to freeze. DAA instruction (stolen from VisualBoyAdvance).
CPU emulation: using “macros” for similar instructions. This makes faster code (and easier to maintain). Window display over background (seems to work in ‘Space Invaders’ or ‘Bubble Ghost’ intros). Renaming functions and variables to keep a “Programming Style”.
HALT instruction (the weird-IME-off behavior is not emulated). Added a Caller Stack, this makes debugging a lot easier. Rewrited the whole LCD controller emulation.
Now it’s much more accurate (and slower) it has pallete support, X/Y flipping, transparency and sprite priority. Support for Chrome/Chromium putImageData (weird!).
Bug corrected on reading color info from tile data. Partial MBC1 emulation (ROM switch). On bank switching, copies the bank into GameBoy memory.
Lots of optimizations. MBC1 emulation rewrited. Instead copying, just makes a reference some games do more than 1000 bank switchings per second. Found a bug in CPU, now more games are playable, like “Kirby’s Dreamland”, “Bomberman” and “Mario Land”. Joined all timing routines (CPU, LCD, Timer) into a single one. JSGB Cheers and thanks to EmuHQ for posting the good news.