#jsmess 2016-09-20,Tue

↑back Search

Time Nickname Message
01:22 🔗 l_zzie has joined #jsmess
02:16 🔗 SketchCow From Yoz
02:17 🔗 SketchCow aaah, I see the problem - it.s trying to create an easily-accessible global variable called jsmame_set_mastervolume. The way to do that in standard browser JS is to attach it to the window object. But web workers don.t have a window object
02:17 🔗 SketchCow 6m 1 minute ago
02:17 🔗 SketchCow Yoz Grahame
02:17 🔗 SketchCow the line in question is: window.jsmame_set_mastervolume=jsmame_web_audio.set_mastervolume;
02:52 🔗 SketchCow yoz got us along
02:52 🔗 SketchCow But I need bai now
02:52 🔗 SketchCow sets mode: +oooo bai arkiver balrog GLaDOS
02:52 🔗 SketchCow sets mode: +oo godane yipdw
03:16 🔗 Swizzle has joined #jsmess
03:47 🔗 mavs has quit IRC (Read error: Operation timed out)
03:52 🔗 mta has quit IRC (ircd.choopa.net hub.efnet.us)
03:52 🔗 balrog has quit IRC (ircd.choopa.net hub.efnet.us)
03:53 🔗 mavs has joined #jsmess
03:57 🔗 l_zzie has quit IRC (Quit: leaving)
03:58 🔗 mta has joined #jsmess
03:58 🔗 balrog has joined #jsmess
03:58 🔗 hub.efnet.us sets mode: +o balrog
05:24 🔗 bai SketchCow: if this is for the worker thread build, it's a bit tricky....I think what's needed is to have a special pre.js or post.js which defines a jsmess_set_mastervolume function which uses postMessage() to notify the main thread that it wants to call that function
05:25 🔗 SketchCow Hi HI
05:25 🔗 SketchCow Yoz and I had a good old time.
05:25 🔗 SketchCow If you're up for it, would love to work with you, I think we can do this.
05:26 🔗 Vito` the pre-emularity loader had those things
05:26 🔗 SketchCow Remember, we're doing craptastery just to see if this makes it faster.
05:26 🔗 Vito` can crib from that if you don't have a reference
05:26 🔗 SketchCow http://fos.textfiles.com/dfjustin/jaguar/jaguar-workers/
05:26 🔗 SketchCow We fixed the mastervolume thing
05:26 🔗 SketchCow Yoz figured out it was a problem where it was doing window.* but it doesn't do window.* with the worker.
05:27 🔗 SketchCow The new problem is getting requestPointerLock.
05:27 🔗 SketchCow Now, Yoz and I have two "special" things we do.
05:27 🔗 SketchCow Well, three
05:27 🔗 SketchCow 1. Rename all "messjaguar" to mamejaguar" because you know
05:28 🔗 SketchCow 2. cat mamejaguar.worker.js | sed 's/window.jsmame/self.jsmame/g' >f ; mv f mamejaguar.worker.js
05:29 🔗 SketchCow 3. this line at the top of mamejaguar.worker.js:
05:29 🔗 SketchCow importScripts("webaudio.js");
05:29 🔗 SketchCow Oh, Yoz had me do a printErr definition in messloader.js
05:33 🔗 SketchCow Vito`: A link to where we have it?
05:33 🔗 Vito` https://github.com/jsmess/jsmess/tree/master/templates/default
05:34 🔗 Vito` the pre.js and post.js in there set up the old JSMESS event handlers, which would be where you'd also do something like a postMessage
05:34 🔗 Vito` I don't know what emularity does with regards to that, but that's an example of when we did it in the past
05:36 🔗 SketchCow My hope is a few simple stitches will get it into the place of running
05:36 🔗 SketchCow Even if we have to pre-load the head with things
05:36 🔗 SketchCow So, Alon pointed out this specific thing:
05:38 🔗 SketchCow https://github.com/kripken/BananaBread/commit/a19f0aca7b9251c08dd930fa670eaa72db0806f7
05:38 🔗 SketchCow And he shows how we added these things to the front of the worker.js
05:38 🔗 SketchCow If anyone has thoughts.
05:39 🔗 SketchCow Like, even if it's exploding, let me see if I can see the threads now
05:43 🔗 SketchCow Are people up for it? Or are they flattened.
05:44 🔗 SketchCow -----------
05:44 🔗 SketchCow Short-term, one thing to look at is running the code in a web worker. The benefit is that a usleep that is just spinning the CPU is less painful there, since the main thread can still render, play audio, and receive input. emcc supports this with the --proxy-to-worker flag, which often just works, unless the project has a bunch of specialized JS loading code. This BananaBread commit might help see how to
05:44 🔗 SketchCow that's how he put it.
05:44 🔗 SketchCow get that to work even with such code: https://github.com/kripken/BananaBread/commit/a19f0aca7b9251c08dd930fa670eaa72db0806f7
05:44 🔗 SketchCow -----------
07:46 🔗 logchfoo2 starts logging #jsmess at Tue Sep 20 07:46:55 2016
07:46 🔗 logchfoo2 has joined #jsmess
08:57 🔗 SketchCow ?
10:25 🔗 godane has quit IRC (Read error: Operation timed out)
10:28 🔗 godane has joined #jsmess
16:04 🔗 GLaDOS has quit IRC (Quit: Oh crap, I died.)
16:05 🔗 GLaDOS has joined #jsmess
18:06 🔗 SketchCow Someone on twitter is all "Better be doing those 3.5" floppy images using flux"
19:37 🔗 SketchCow So, Alon says he can look at this, sort of, if he has time. I take it people in here don't want to touch this thing?
20:19 🔗 bai I don't have a huge amount of free time for coding this stuff up at the moment but I can definitely offer advice, is this still about the functions which we need to proxy to/from the worker thread?
20:48 🔗 SketchCow So, the general goal is just to make it run enough to be able to see if speed makes a difference.
20:48 🔗 SketchCow So it's mostly about finding out if there's a way to push back the errors.
20:52 🔗 pfallenop has quit IRC (Ping timeout: 260 seconds)
20:55 🔗 pfallenop has joined #jsmess
22:54 🔗 SketchCow So, while we're doing THIS thing, it's also on me to make this Beavis and Butthead thing run
22:54 🔗 SketchCow Interesting problem is I got it running on dosbox but it dies here
22:54 🔗 SketchCow Going to try some tricks
22:56 🔗 SketchCow Getting a Runtime error 002 which come on, 20 years
22:58 🔗 SketchCow Now I'm trying to find that js patch we added that allows you to extract files from a running emulation.
23:26 🔗 SketchCow Well, that's fucking frustrating.

irclogger-viewer