Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
binji
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
1.
▲
by
binji
3mo ago
Very cool! Clearly I had a long way to go with mine to get it under the IOCCC requirements :) Though my goal was specifically Pokémon... curious how much more you would need to be able to run that.
2.
▲
by
binji
1y ago
rgbds-live is more-or-less this same idea, with an embedded version of RGBDS: https://gbdev.io/rgbds-live/
3.
▲
by
binji
3y ago
Glad they've helped! There are plenty of better emulators, but I'm pretty proud of binjgb for being small, pretty fast, and pretty accurate.
4.
▲
by
binji
3y ago
heh, good point! Most of the older ones are using GameBoy-Online[0] instead, since that was the GB Studio default for a while. But I think everything since GBStudio 3 should be binjgb. [0] https://github.com/taisel/Game
5.
▲
by
binji
3y ago
nah, people can do whatever they want with it :)
6.
▲
by
binji
3y ago
This is using my gameboy emulator, binjgb[0], on the website! (well one of my gameboy emulators, heh [1][2]) It's been used as the emulator for GB Studio for a little while now, but I don't know how often people embed it in their
7.
▲
by
binji
4y ago
Thanks! I don't work much on WebAssembly anymore, but I'm super excited to see all the progress being made.
8.
▲
by
binji
4y ago
That's true, I should have mentioned that I use this extension. It is supported by clang as well, however.
9.
▲
by
binji
4y ago
This was brought up for the last one of these I made, but the code here is c++ so wouldn't be allowed. I don't use a lot of c++ features, but it might be hard to keep the code size small without them.
10.
▲
by
binji
4y ago
Hi all, author here! Happy to answer any questions y'all have
11.
▲
by
binji
4y ago
I didn't handle audio for this emulator. But you can see how I handle resampling in my more fully-featured NES emulator here: https://github.com/binji/binjnes/blob/ca6977469168069a165176... I'm not
12.
▲
by
binji
5y ago
I think so, when I was doing the write-up I noticed a few things I could have improved (and a few bugs!)
13.
▲
by
binji
5y ago
I kind of dreaded writing that one, to be honest! I didn't quite cover all the details but I hope it made a little more sense. :)
14.
▲
by
binji
5y ago
Yes, you can find all the meeting notes here: https://github.com/webassembly/meetings However there were a lot of discussions that were not in those meetings and were in smaller groups or held in GitHub issues or PRs.
15.
▲
by
binji
5y ago
Yep, I made a mistake it's actually 68.
16.
▲
by
binji
5y ago
Ha, I guess we'll see when I go for my next gig :-)
17.
▲
by
binji
5y ago
I'm probably the wrong person to ask, to be honest. I was around for a lot of the design of Wasm, but wasn't really involved at that level. That said, in my opinion the ideal set of opcodes really depends on your goal. There were
18.
▲
by
binji
5y ago
Not sure, I think it should! Would be really cool if someone tried it out. I'm a little worried I didn't implement some necessary instructions/hardware features so the game isn't actually winnable :-}
19.
▲
by
binji
5y ago
Oops you're right, I should have mentioned that. Red works too, I just didn't want to write Blue/Red everwhere :)
20.
▲
by
binji
5y ago
JVM is a great choice! You might also want to check out WebAssembly too (full disclosure: I used to work on wasm). There aren't too many opcodes, and a lot of them are relatively simple math operations. Once you get it working, you cou
21.
▲
by
binji
5y ago
I got kinda dragged about this on reddit/twitter. Afterwards I posted on r/tinycode with the size in bytes: https://www.reddit.com/r/tinycode/comments/nn5djb/pokegb_a_g...
22.
▲
by
binji
5y ago
It really is one of the best things about emulation development. It's surprising how quickly you go from "nothing works" to "I'm playing Super Mario Bros!"
23.
▲
by
binji
5y ago
Hi all, I'm the author of this post! Happy to answer any questions. :-)
24.
▲
by
binji
9y ago
Very nice write-up, thanks! BTW, I also ran into issues with ScriptProcessorNode when generating audio, and ended up using `createBufferSource` with a scheduled playback time. I wrote a little about it here: https://binji.github.
25.
▲
by
binji
9y ago
You may want to take a look at the formal spec here as well: https://webassembly.github.io/spec/ There's still some work to be done, but it is quite far along already.
26.
▲
by
binji
10y ago
As long as we're linking personal GB emulators... :-) Here's mine, written as one file of less than 5000 lines of C: https://github.com/binji/binjgb . It's very accurate, based on few of the most commonly
27.
▲
by
binji
10y ago
There is a FAQ entry on this point: https://github.com/WebAssembly/design/blob/master/FAQ.md#is-...
28.
▲
by
binji
10y ago
That appears to use https://github.com/WebAssembly/polyfill-prototype-1 , which does not match the current binary format at all. The current way to do the equivalent would be to use Binaryen's asm2wasm tool. https
29.
▲
by
binji
10y ago
Here's the emscripten-compiled wast2wasm (from wabt): https://cdn.rawgit.com/WebAssembly/wabt/2baa1ecb0b36bea6268c... It uses the code from here: https://github.com/WebAssembly/wabt/
30.
▲
by
binji
10y ago
TeaVM[1] has an experimental WebAssembly backend that does something like this. Here's the recent Reddit thread[2]. [1] http://teavm.org/ [2] https://www.reddit.com/r/programming/comments/
More ›