[01:22] *** l_zzie has joined #jsmess [02:16] From Yoz [02:17] 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] 6m 1 minute ago [02:17] Yoz Grahame [02:17] the line in question is: window.jsmame_set_mastervolume=jsmame_web_audio.set_mastervolume; [02:52] yoz got us along [02:52] 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] 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] Hi HI [05:25] Yoz and I had a good old time. [05:25] If you're up for it, would love to work with you, I think we can do this. [05:26] the pre-emularity loader had those things [05:26] Remember, we're doing craptastery just to see if this makes it faster. [05:26] can crib from that if you don't have a reference [05:26] http://fos.textfiles.com/dfjustin/jaguar/jaguar-workers/ [05:26] We fixed the mastervolume thing [05:26] Yoz figured out it was a problem where it was doing window.* but it doesn't do window.* with the worker. [05:27] The new problem is getting requestPointerLock. [05:27] Now, Yoz and I have two "special" things we do. [05:27] Well, three [05:27] 1. Rename all "messjaguar" to mamejaguar" because you know [05:28] 2. cat mamejaguar.worker.js | sed 's/window.jsmame/self.jsmame/g' >f ; mv f mamejaguar.worker.js [05:29] 3. this line at the top of mamejaguar.worker.js: [05:29] importScripts("webaudio.js"); [05:29] Oh, Yoz had me do a printErr definition in messloader.js [05:33] Vito`: A link to where we have it? [05:33] https://github.com/jsmess/jsmess/tree/master/templates/default [05:34] 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] 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] My hope is a few simple stitches will get it into the place of running [05:36] Even if we have to pre-load the head with things [05:36] So, Alon pointed out this specific thing: [05:38] https://github.com/kripken/BananaBread/commit/a19f0aca7b9251c08dd930fa670eaa72db0806f7 [05:38] And he shows how we added these things to the front of the worker.js [05:38] If anyone has thoughts. [05:39] Like, even if it's exploding, let me see if I can see the threads now [05:43] Are people up for it? Or are they flattened. [05:44] ----------- [05:44] 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] that's how he put it. [05:44] get that to work even with such code: https://github.com/kripken/BananaBread/commit/a19f0aca7b9251c08dd930fa670eaa72db0806f7 [05:44] ----------- [07:46] *** logchfoo2 starts logging #jsmess at Tue Sep 20 07:46:55 2016 [07:46] *** logchfoo2 has joined #jsmess [08:57] ? [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] Someone on twitter is all "Better be doing those 3.5" floppy images using flux" [19:37] 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] 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] So, the general goal is just to make it run enough to be able to see if speed makes a difference. [20:48] 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] So, while we're doing THIS thing, it's also on me to make this Beavis and Butthead thing run [22:54] Interesting problem is I got it running on dosbox but it dies here [22:54] Going to try some tricks [22:56] Getting a Runtime error 002 which come on, 20 years [22:58] Now I'm trying to find that js patch we added that allows you to extract files from a running emulation. [23:26] Well, that's fucking frustrating.