Meta emulator -- By aoneill

Author :  aoneill

Yeah I hear the emulator broke after some library improvements to drawing to the screen. I haven’t had a chance to look into it yet, but it is on my todo list. 

Author :  aoneill

I just uploaded a fix for the emulator not working with the latest version of the library. I've only tested it with one of my programs though.

Author :  eriban

Thanks. Unfortunately, it does not yet seem to work for my program. After uploading, the screen remains black.

Btw, the emulator has been very helpful so far in developing my game. Especially the fact that the screen is relatively big has helped to get everything pixel perfect.

Author :  aoneill

It is possible that the old version of the emulator's JavaScript file was still cached by your browser. Worth trying again now or clearing your browser cache if you know how to do that.

I'm now up to a few games built with the 1.1.0 library that I hear work on the emulator. I don't have an example that doesn't work to debug. If you or anyone else reading this has publicly available source code for a program that is still giving you the black screen on the emulator, let me know. I'm interested in trying to track down the problem. Thanks!

Author :  eriban

I just tried again today and also force-reloaded the page, and now my game loaded successfully as well. :-)

Author :  Nux

This is working perfectly with my game, Thanks for the update aoneill

Author :  NightWolf

Have you guys tried this on an Android device? Well i have a note 4 which is a little older, it lags quite a bit. I'll try it on my tablet. 

Author :  Sorunome

It's for me the same as for you: while it works on my phone it is slower.

Thinking about it, that isn't too surprising, as a phone has much weaker processing power than a computer

Author :  cptflconx

Do I have to do anything to activate sound?

Author :  aoneill

Sorry, sound has not been implemented in the emulator. 

Author :  jicehel

Aoneill, i have a request:  could you fork your emulator to make an HD compatible version or add the feature in the current if it's possible ?  We have more and more HD games and i think it's will continue but atm we can't test them on the pages. So it's could be so fine to have the abilty to manage HD in the emulator...

Author :  Steph

Hi Andy, I would like to take this opportunity to support @Jicehel's request!.... I guess it's a lot of work... but it would be so great! And I'm afraid you're one of the few in the community who has the skills to do it!....

For fun, I’m porting my emulator from JavaScript to WebAssembly! It runs significantly faster.
Proof of concept:


This is amazing ! I’m really curious about WebAssembly.

Great! WebAssembly is indeed a very relevant choice :slight_smile:

Great. If you have an idea and some time, i hope you’ll be able to add sounds too in the emulator. Great job else :wink:

Great news @aoneill!

I had suggested the idea to @Sorunome a year ago, but it didn’t seem to seduce many people at the time… It’s really great that you did it on your own!

Did you use Emscripten beforehand?

I did some tests with 160x128 applications that use gb.tft with DMA and it works fine.
Bravo and thanks again for this great contribution.

1 Like

I’ve been tempted to try and figure out the whole sound thing. The web audio APIs look pretty slick, but I’ve never tried to use them. Just a matter of finding the time… :slight_smile:

1 Like

Thanks @Steph! No, I’ve never done any work with WebAssembly before, short of maybe some “Hello World”-type tutorials. I ended up writing it in Rust (another new tech for me), then compiled with wasm-pack.


Okay, I see :slight_smile:

I’ve been telling myself for months that I have to start learning Rust…
But I can’t find the time!