[{"data":1,"prerenderedAt":271},["ShallowReactive",2],{"project-4648009":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":44,"post_text":45,"what":46,"said":57,"maker_in_thread":167,"shape":177,"grid":180,"attempts":234,"same_week":235,"maker_shows":39,"maker_hidden":263,"reader_version":264,"card":265},"4648009","GBA.js","A Game Boy Advance emulator written in JavaScript","title","Show HN: GBA.js, a Game Boy Advance emulator written in JavaScript","http:\u002F\u002Fjpfau.github.com\u002Fgbajs\u002F","jpfau.github.com","jpfau",1350106804,2012,76,25,312,1677,19,"notable","games","game console emulator","web_app",[24,25,26,27],"game boy advance","gba emulator","javascript emulator","browser emulation","mixed",-0.183,{"positive":31,"neutral":32,"mixed":31,"critical":33},3,5,7,18,{"design":36,"execution":38,"performance":41,"docs":42,"idea":43},{"positive":37,"critical":37},0,{"positive":39,"critical":40},1,6,{"positive":39,"critical":37},{"positive":37,"critical":37},{"positive":37,"critical":39},[31,37,31,32,37,31,31,31,31,37,39,39,31,37,39,39,31,39,32,39,37,39,37,37,32],null,{"problem":45,"audience":45,"pricing":45,"motivation":45,"time_to_build":45,"stack":47,"openness":54,"stage":55,"team_size":56},[48],{"value":49,"source":50,"evidence":51},"JavaScript","maker",[52],{"id":53},"post","open_source","beta","unknown",{"praise":58,"objections":75,"requests":107,"questions":132,"alternatives":152},[59],{"value":60,"source":61,"evidence":62},"Many games run well, including Pokemon Fire Red and F-Zero GP Legend","commenter",[63,67,71],{"id":64,"by":65,"text":66},"4648468","weslly","I'm impressed. It works like a charm with Pokemon Fire Red.",{"id":68,"by":69,"text":70},"4648316","jarel","F Zero GP Legend (rs-fzgl.gba) worked for me (FF 15.0.1). It's running at ~80% speed, I suppose we can't expect much more from today's js engines. But given how much faster the…",{"id":72,"by":73,"text":74},"4648115","kevingadd","Games seem to run pretty well. I'm disappointed that there's no sound though :(",[76,84,99],{"value":77,"source":61,"evidence":78},"Sound does not work, at least in Firefox",[79,80],{"id":72,"by":73,"text":74},{"id":81,"by":82,"text":83},"4648489","rjh29","Sound doesn't work on Firefox, this seems to be a common trend among newer webapps these days. Have you tried another browser?",{"value":85,"source":61,"evidence":86},"Several games crash after upload",[87,91,95],{"id":88,"by":89,"text":90},"4648221","SquareWheel","I did a quick search for a game, found \"Mario Golf - Advance Tour (USA).gba\", and the emulator crashed immediately after upload. edit: Tried one more, \"2563 - Tony Hawk's…",{"id":92,"by":93,"text":94},"4649372","NegativeLatency","Advance Wars 2 (US) crashed when I played it.",{"id":96,"by":97,"text":98},"4649118","strags","Awww. In an attempt to recreate Inception, I tried to run Foon (a ZX-Spectrum Emulator for the GBA that I wrote about a decade ago) on it. Unfortunately it crashed almost…",{"value":100,"source":61,"evidence":101},"Runs at reduced speed on some machines",[102,103],{"id":68,"by":69,"text":70},{"id":104,"by":105,"text":106},"4648409","geoffschmidt","I totally got sound out of Pokemon Red! It was pretty choppy but I think that's because my Macbook Air can't quite manage to run the game at full realtime.",[108,118,128],{"value":109,"source":61,"evidence":110},"Support for uploading save games",[111,115],{"id":112,"by":113,"text":114},"4649438","tekknolagi","Is there a way to upload saves, so I can do things like automatically have the Legendaries? Yeah, cheating, but whatever :)",{"id":116,"by":113,"text":117},"4649948","Hmmm. I loaded \"FireRed.GBA\" then click \"RESET\" then clicked \"Upload Savegame\" — and got \"FAILED\".",{"value":119,"source":61,"evidence":120},"Automatic save-type detection",[121,125],{"id":122,"by":123,"text":124},"4648075","thristian","Although it's not quite in the same style as the original GBA, you might want to consider putting the keybinding information above or below the screen, instead of to either side…",{"id":126,"by":11,"text":127},"4648168","I can definitely see about moving some of the controls around. When I was testing it, I just had a lot of \"wasted space\" around the edges, so I figured I could use that for the…",{"value":129,"source":61,"evidence":130},"Better layout so controls fit at narrow widths",[131],{"id":122,"by":123,"text":124},[133,142],{"value":134,"source":61,"evidence":135},"Which file to select, .GBA or .SAV",[136,139],{"id":137,"by":113,"text":138},"4648121","Hi, What kind of file should I be selecting? .SAV? .GBA? Not sure; neither worked. The .GBA seemed to select and do nothing, and the .SAV got stuck at \"Loading...\" I'm trying…",{"id":140,"by":123,"text":141},"4648129","You definitely want the .gba file. There's no upload-progress indicator, it may just be that the .gba file is taking a while to process - I think Fire Red is like 16MB or…",{"value":143,"source":61,"evidence":144},"Whether the BIOS file is licensed for hosting on GitHub",[145,149],{"id":146,"by":147,"text":148},"4648199","camus","not sure you can post a proprietary bios like that on github, while the emulator itself may be the author's code , i'm pretty sure the bios is not open source.",{"id":150,"by":123,"text":151},"4648300","The \"bios.bin\" in the resources directory is 216 bytes; the proprietary GBA bios is 16KB. I'm pretty sure this the author's own code.",[153,160],{"value":154,"source":61,"evidence":155},"n64js, a JavaScript N64 emulator",[156],{"id":157,"by":158,"text":159},"4648840","mm_alex","Imma just gonna leave this here: http:\u002F\u002Fhulkholden.github.com\u002Fn64js\u002F fully functioning n64 emulator in javascript, which dynamically recompiles mips asm to js so that your…",{"value":161,"source":61,"evidence":162},"MAME in the browser project",[163],{"id":164,"by":165,"text":166},"4648179","Bakkot","You should let Jason Scott know about this. He's been pushing a similar project for MAME. http:\u002F\u002Fascii.textfiles.com\u002Farchives\u002F3685",{"comments":31,"answered":168,"key":169},2,[170,171,174],{"id":126,"text":127},{"id":172,"text":173},"4648871","I tried writing an ARM -> JS recompiler, but my initial tests showed that the slow games tended to re-copy the portions of code that were slow back into their working RAM,…",{"id":175,"text":176},"4649671","There is an upload savegame button before you load the game. Once you've loaded the game you have to reset before you can load another savegame.",{"commenters":178,"max_depth":32,"maker_replies":31,"first_comment_mins":179,"lifespan_hours":178},17,32,[181,183,185,188,190,192,194,196,199,201,202,204,205,207,210,211,212,213,214,216,218,223,226,227,229],[122,37,31,182,123,37],"project\u002Fmixed\u002Fdesign",[126,37,37,184,11,39],"maker\u002Fneutral\u002Fdocs",[186,37,31,187,123,37],"4648288","project\u002Fneutral\u002Fexecution",[157,39,32,189,158,37],"project\u002Fpositive\u002Fperformance",[172,39,37,191,11,39],"maker\u002Fneutral\u002Fperformance",[137,168,31,193,113,37],"project\u002Fneutral\u002Fdocs",[140,168,31,195,123,37],"project\u002Fneutral\u002Fperformance",[197,168,31,187,198,37],"4649132","olalonde",[112,168,31,200,113,37],"project\u002Fneutral\u002Fidea",[175,168,37,184,11,39],[116,168,39,203,113,37],"project\u002Fcritical\u002Fexecution",[88,31,39,203,89,37],[68,31,31,206,69,37],"project\u002Fmixed\u002Fperformance",[164,208,37,209,165,37],4,"commenter\u002Fneutral\u002Fnone",[96,32,39,203,97,37],[72,40,39,203,73,37],[104,40,31,206,105,37],[81,40,39,203,82,37],[64,33,32,215,65,37],"project\u002Fpositive\u002Fexecution",[92,217,39,203,93,37],8,[219,220,37,221,222,37],"4648570",9,"other\u002Fneutral\u002Fnone","saebekassebil",[146,224,39,225,147,37],10,"project\u002Fcritical\u002Fidea",[150,224,37,209,123,37],[228,224,37,209,82,37],"4648487",[230,231,32,232,233,37],"4648051",11,"project\u002Fpositive\u002Fnone","ank_net",[],[236,241,246,251,255,259],{"id":237,"name":238,"points":239,"category":240},"4643175","Selfstarter",463,"web_saas",{"id":242,"name":243,"points":244,"category":245},"4656850","dbpatterns",125,"learning_science",{"id":247,"name":248,"points":249,"category":250},"4656378","What would Paul Graham do?",109,"productivity",{"id":252,"name":253,"points":254,"category":245},"4642330","LearnStreet",101,{"id":256,"name":257,"points":258,"category":240},"4658794","Five Year Itch",86,{"id":260,"name":261,"points":262,"category":250},"4650530","doc-edit",81,false,"v2",{"id":266,"name":5,"line":6,"ai":263,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":267,"top":18,"kw":268,"maker":11,"domain":10,"tier":19,"attempts":37,"strip":269,"url":9,"mix":270,"praise":60,"objection":77,"sub":21},4648009,-0.18,[24,25,26,27],"3035033330113011315101005",[31,32,31,33],1794036500325]