#jsmess 2017-07-09,Sun

↑back Search

Time Nickname Message
03:33 🔗 SketchCow Oh, wonderful
03:34 🔗 SketchCow I was in the warehouse all day
03:38 🔗 SketchCow Wait a minute
03:39 🔗 SketchCow {
03:39 🔗 SketchCow "name": "Atari2600",
03:39 🔗 SketchCow "js_filename": "mamea2600.js.gz",
03:39 🔗 SketchCow "bios_filenames": [""],
03:39 🔗 SketchCow "peripherals": ["cart"],
03:39 🔗 SketchCow "native_resolution": [352,223],
03:39 🔗 SketchCow "extra_args": [""],
03:39 🔗 SketchCow "driver": "a2600"
03:39 🔗 SketchCow }
03:39 🔗 SketchCow Where do I add that
03:51 🔗 SketchCow Anyone have ideas - bai
03:51 🔗 SketchCow arkiver: Ops please
03:56 🔗 SketchCow db48x: hey
04:22 🔗 SketchCow Also, it complains about no .wast file
04:56 🔗 SketchCow (i left it up, broken, so you can see)
05:16 🔗 db48x the order of the lines doesn't matter
05:17 🔗 SketchCow But do I just literally put that in
05:18 🔗 db48x one tweak needed: "file_locations": { "mamea2600.wasm": "mamea2600.wasm.gz" }
05:18 🔗 SketchCow I just don't know JSON in this
05:18 🔗 db48x note that this value is not an array (with square brackets), it's a hash (with curly brackets)
05:18 🔗 SketchCow Like, do I put that under the thing above?
05:19 🔗 db48x https://hastebin.com/lajeyecace.json
05:19 🔗 db48x we're adding a property called file_locations to the object
05:19 🔗 db48x the value of that property is itself an object
05:20 🔗 db48x btw, firefox has a JSON view that is handy for this
05:20 🔗 db48x if you load https://ia801906.us.archive.org/7/items/emularity_engine_v1/a2600.json you'll see it
05:20 🔗 SketchCow Added
05:21 🔗 db48x yea, now it looks right
05:21 🔗 SketchCow Error: Don't know how to find file: mamea2600.wast
05:23 🔗 db48x the extension there is unexpected
05:23 🔗 SketchCow It's looking for some sort of text thing
05:24 🔗 SketchCow It's in the javascript
05:24 🔗 db48x oh, hrm
05:25 🔗 SketchCow var wasmTextFile=Module["wasmTextFile"]||"mamea2600.w
05:25 🔗 SketchCow ast";var wasmBinaryFile=Module["wasmBinaryFile"]|
05:25 🔗 db48x oh, I see
05:25 🔗 db48x it hasn't even decided which it needs
05:25 🔗 db48x so really this is a bug in Emularity; we shouldn't throw an error
05:26 🔗 db48x ok, for the purposes of this test, let's just extend the JSON
05:28 🔗 db48x ok, Firefox, let's get going...
05:29 🔗 db48x here:
05:29 🔗 db48x file_locations: { "mamea2600.wasm": "mamea2600.wasm.gz",
05:29 🔗 db48x "mamea2600.wast": "mamea2600.wast.gz",
05:29 🔗 db48x "mamea2600.asm.js": "mamea2600.asm.js.gz" },
05:31 🔗 SketchCow Uploaded
05:31 🔗 SketchCow same error but it could just be dumbmess
05:32 🔗 SketchCow {
05:32 🔗 SketchCow "name": "Atari2600",
05:32 🔗 SketchCow "js_filename": "mamea2600.js.gz",
05:32 🔗 SketchCow "bios_filenames": [""],
05:32 🔗 SketchCow "peripherals": ["cart"],
05:32 🔗 SketchCow "native_resolution": [352,223],
05:32 🔗 SketchCow "extra_args": [""],
05:32 🔗 SketchCow "driver": "a2600",
05:32 🔗 SketchCow "file_locations": { "mamea2600.wasm": "mamea2600.wasm.gz",
05:32 🔗 SketchCow "mamea2600.wast": "mamea2600.wast.gz",
05:32 🔗 SketchCow "mamea2600.asm.js": "mamea2600.asm.js.gz" },
05:32 🔗 SketchCow }
05:33 🔗 db48x if you load it in Firefox 54 you'll see an error message
05:34 🔗 db48x although I'll admit that it's a little obscure, since the real error is that you have an extra comma on the end
05:36 🔗 SketchCow I took out the last m
05:36 🔗 SketchCow comma
05:36 🔗 db48x and now it works
05:36 🔗 SketchCow I still get the error
05:38 🔗 SketchCow Yeah, my phone and my desktop here get the same error
05:39 🔗 db48x hrm
05:39 🔗 db48x I don't
05:40 🔗 db48x when you load https://ia801906.us.archive.org/7/items/emularity_engine_v1/a2600.json, do you see the .wast and .asm.js lines?
05:40 🔗 SketchCow I'll name "Atari2600"
05:40 🔗 SketchCow js_filename "mamea2600.js.gz"
05:40 🔗 SketchCow bios_filenames
05:40 🔗 SketchCow 0 ""
05:40 🔗 SketchCow peripherals
05:40 🔗 SketchCow 0 "cart"
05:41 🔗 SketchCow native_resolution
05:41 🔗 SketchCow 0 352
05:41 🔗 SketchCow 1 223
05:41 🔗 SketchCow extra_args
05:41 🔗 SketchCow 0 ""
05:41 🔗 SketchCow driver "a2600"
05:41 🔗 SketchCow file_locations
05:41 🔗 SketchCow mamea2600.wasm "mamea2600.wasm.gz"
05:41 🔗 SketchCow mamea2600.wast "mamea2600.wast.gz"
05:41 🔗 SketchCow mamea2600.asm.js "mamea2600.asm.js.gz"
05:41 🔗 SketchCow yep
05:41 🔗 SketchCow Error: Don't know how to find file: mamea2600.wast loader.js:224:14
05:41 🔗 SketchCow locateAdditionalJS https://archive.org/includes/loader.js:224:14
05:41 🔗 SketchCow integrateWasmJS https://cors.archive.org/cors/emularity_engine_v1/mamea2600.js.gz:1:3038268
05:41 🔗 SketchCow <anonymous> https://cors.archive.org/cors/emularity_engine_v1/mamea2600.js.gz:1:6452978
05:41 🔗 SketchCow That's the error that stops the show
05:44 🔗 SketchCow maybe I make a dummy file?
05:44 🔗 SketchCow Made one just to see
05:47 🔗 SketchCow Something's broke
05:48 🔗 db48x what item are you testing with?
05:48 🔗 SketchCow https://archive.org/details/demo_derivative_2600_dma_2015
05:49 🔗 SketchCow Found the problem
05:50 🔗 db48x oh, that uses a different config file
05:50 🔗 SketchCow exactly
05:53 🔗 SketchCow Fixing
05:54 🔗 Vito` why is there an asm.js version that's separate from the regular js version?
05:54 🔗 Vito` isn't asm.js going to work in any js
05:55 🔗 db48x Vito`: for asm2wasm mode
05:55 🔗 db48x it falls back through several methods:
05:55 🔗 db48x // wasm.js has several methods for creating the compiled code module here:
05:55 🔗 db48x // * 'native-wasm' : use native WebAssembly support in the browser
05:55 🔗 db48x // * 'interpret-s-expr': load s-expression code from a .wast and interpret
05:55 🔗 db48x // * 'interpret-binary': load binary wasm and interpret
05:56 🔗 db48x // * 'interpret-asm2wasm': load asm.js code, translate to wasm, and interpret
05:56 🔗 db48x // * 'asmjs': no wasm, just load the asm.js code and use that (good for testing)
05:56 🔗 db48x
05:56 🔗 SketchCow A2600p and A2600 now both work
05:57 🔗 SketchCow Can we do a800 before I turn in?
05:57 🔗 SketchCow That's one where I know there's sound issues
05:57 🔗 db48x there's no a800 driver
05:57 🔗 SketchCow Oh, there's atari400
05:58 🔗 db48x building atari400
06:00 🔗 SketchCow I have to modify 5 .json files for it, so you know it's special to me
06:00 🔗 db48x :)
06:01 🔗 DFJustin anything interpreted is way too slow to use
06:01 🔗 db48x yea, we won't actually bother to make that file available
06:01 🔗 db48x SketchCow: it's built
06:03 🔗 SketchCow -rw-rw-r-- 1 db48x staff 72607154 Jul 9 05:59 mameatari400.asm.js
06:03 🔗 SketchCow -rw-rw-r-- 1 db48x db48x 3407896 Jul 9 06:00 mameatari400.js
06:03 🔗 SketchCow -rw-rw-r-- 1 db48x staff 9739352 Jul 9 06:00 mameatari400.wasm
06:03 🔗 db48x those are the ones
06:03 🔗 SketchCow I do all three?
06:04 🔗 db48x you don't need the .asm.js file
06:11 🔗 SketchCow You will be shocked to hear I'm hitting errors
06:12 🔗 db48x an example?
06:12 🔗 SketchCow https://archive.org/details/Preppie_1982_Adventure_International_US
06:12 🔗 SketchCow Error: Don't know how to find file: mameatari400.asm.js
06:12 🔗 SketchCow {
06:12 🔗 SketchCow "name": "Atari 800",
06:12 🔗 SketchCow "js_filename": "mameatari400.js.gz",
06:12 🔗 SketchCow "bios_filenames": ["a800.zip"],
06:12 🔗 SketchCow "peripherals": ["flop1"],
06:12 🔗 SketchCow "native_resolution": [336,225],
06:12 🔗 SketchCow "extra_args": [""],
06:12 🔗 SketchCow "driver": "a800",
06:12 🔗 SketchCow "file_locations": { "mameatari400.wasm": "mameatari400.wasm.gz",
06:12 🔗 SketchCow "mameatari400.wast": "mameatari400.wast.gz",
06:12 🔗 SketchCow "mameatari400.asm.js": "mameatari400.asm.js.gz" }
06:12 🔗 SketchCow }
06:13 🔗 db48x I don't get that error
06:13 🔗 SketchCow Nice, it started working.
06:14 🔗 SketchCow Everything's not zoomed in anymore
06:14 🔗 SketchCow I wonder what it's identifying as now
06:14 🔗 db48x zoomed in?
06:15 🔗 SketchCow Yeah, it's showing 1x instead of 2x
06:22 🔗 SketchCow OK, here's the question... is it using webassembly?
06:22 🔗 SketchCow (all of them are fixed now, all 5)
06:22 🔗 db48x well, it loads the wasm file
06:24 🔗 SketchCow I just don't know!
06:24 🔗 SketchCow But I'm glad we have this in place
06:24 🔗 SketchCow we can inspect it on machines, etc.
06:27 🔗 SketchCow Thank you!
06:27 🔗 SketchCow We're running webassembly biiiiiitches
06:29 🔗 SketchCow https://github.com/copy/v86 is the emulator we were discussing, db48x
06:32 🔗 db48x it would be handy if it printed out which version it's running
06:35 🔗 DFJustinZ has joined #jsmess
06:35 🔗 bai niiiice
06:36 🔗 DFJustin has quit IRC (Remote host closed the connection)
06:38 🔗 DFJustin has joined #jsmess
06:50 🔗 db48x gotta figure out how to build all the "drivers" we have
06:50 🔗 db48x for example, the "a800" driver is apparently really "atari400" :P
06:56 🔗 DFJustin mame -listsource a800
06:57 🔗 db48x I don't even _have_ a mame executable :P
06:57 🔗 db48x I've just got all of these js files
07:17 🔗 DFJustin has quit IRC (Remote host closed the connection)
07:17 🔗 bai we should set up build which does nothing but listsource, heh
07:19 🔗 DFJustin has joined #jsmess
07:24 🔗 DFJustin has quit IRC (Remote host closed the connection)
07:40 🔗 bai 1
07:50 🔗 DFJustin has joined #jsmess
10:03 🔗 DFJustinZ has quit IRC (Remote host closed the connection)
14:55 🔗 SketchCow So, I'm not sure where the lack of zoom is coming from.
14:59 🔗 SketchCow The compile time speed is truly ridiculous.
15:02 🔗 SketchCow uncaught exception: no binaryen method succeeded. consider enabling more options, like interpreting, if you want that: https://github.com/kripken/emscripten/wiki/WebAssembly#binaryen-methods
15:04 🔗 db48x SketchCow: how did you manage that?
15:04 🔗 db48x it should fall back to asmjs
15:04 🔗 SketchCow I turned off .wasm
15:04 🔗 SketchCow To see what it would do.
15:04 🔗 SketchCow javascript.options.wasm in about:config
15:04 🔗 SketchCow Just doing the testing we do. :)
15:07 🔗 db48x hrm
15:12 🔗 SketchCow We MIGHT want to haul Kripken in on this
15:12 🔗 SketchCow Since we're doing this the first time, etc.
16:05 🔗 SketchCow But we're at a good point. It doesn't work in usual Javascript, of course, but we can address
16:05 🔗 SketchCow And it's Sunday, Kripken won't likely be around.
16:10 🔗 SketchCow I pinged him.
16:10 🔗 SketchCow ted______: Yo
16:11 🔗 SketchCow So, other piece - the resolution/scaling.
16:11 🔗 SketchCow There's something goofy there, which may or may not be the Archive being "clever"
16:57 🔗 db48x ah
18:41 🔗 SketchCow will investigate
21:05 🔗 db48x sorry, I figured it out and then got distracted
21:05 🔗 db48x turns out the documentation is slightly lacking
21:05 🔗 db48x by default it only runs wasm and doesn't tall back to anything
21:06 🔗 db48x you have to specifically ask it to fall back to asmjs
21:06 🔗 db48x I rebult a2600 and atari400 with that option, if you want to give it a try
21:07 🔗 db48x this time you will need the .asm.js file in addition to the .js and .wasm files
21:07 🔗 DFJustin one thing I notice is that the .asm.js files seem to be humongous
21:13 🔗 db48x oh, there was one oddity though, which is that it started making .mem files again
21:44 🔗 azakai has joined #jsmess
22:29 🔗 SketchCow hey, azakai advised a different way
22:29 🔗 SketchCow i am at warehouse, now driving back, will do loads when I get there
22:32 🔗 azakai has quit IRC (Quit: Ex-Chat)
22:33 🔗 azakai has joined #jsmess
23:47 🔗 SketchCow Here I am hack at the thing.

irclogger-viewer