[00:38] *** Sgeo_ has joined #jsmess [00:41] *** Sgeo has quit IRC (Ping timeout: 255 seconds) [00:46] *** pengan has quit IRC (Ping timeout: 745 seconds) [00:46] *** pengan has joined #jsmess [03:10] *** godane has quit IRC (Read error: Operation timed out) [03:26] *** godane has joined #jsmess [04:28] *** godane has quit IRC (hub.efnet.us irc.Prison.NET) [04:28] *** Sgeo_ has quit IRC (hub.efnet.us irc.Prison.NET) [04:28] *** kripken_ has quit IRC (hub.efnet.us irc.Prison.NET) [04:37] add NOWERROR=1 REGENIE=1 to the end of your make command [04:38] *** DopefishJ is now known as DFJustin [04:48] *** godane has joined #jsmess [06:42] *** Sgeo has joined #jsmess [06:42] *** kripken_ has joined #jsmess [06:57] *** DFJustin has quit IRC (Remote host closed the connection) [07:13] *** DFJustin has joined #jsmess [07:13] *** DFJustin has quit IRC (Remote host closed the connection) [07:14] *** DFJustin has joined #jsmess [07:47] Thank youuuuu [07:49] OK, I stopped it, cleaned, and then restarted. [07:49] Idea being to get a proper timestamp info. [08:53] *** Sgeo has quit IRC (Read error: Connection reset by peer) [09:31] *** dboard420 has quit IRC (se.hub irc.nordunet.se) [09:33] *** dboard420 has joined #jsmess [10:36] *** godane has quit IRC (Read error: Operation timed out) [10:50] *** godane has joined #jsmess [13:04] *** kripken_ has quit IRC (Quit: Ex-Chat) [16:54] We started this at Sat May 23 07:50:47 UTC 2020 [16:54] And now it is Sat May 23 09:22:14 UTC 2020 [16:55] OK, so. [17:04] Obviously 1.5 hours to compile is not hottest shit in the world, but the machine can do it. [17:09] Here is what I dreamed of last night. [17:10] We've been suffering with the whole problem of how do we move faster on these compiles and yet also not cause more trouble, etc. [17:10] So: [17:10] 1. We're going to make a thing (this thing) that compiles the items into a directory. [17:11] 2. That final directory gets uploaded into an item, like emularity_mame_version [17:11] 3. We can then move things in and out of emularity_engine, knowing they can be brought back. [17:12] I now have two questions, both for DFJustin I think. [17:12] - Where can I get a list of compile targets for this - I did pacmantest and it worked but I think we need others. (I'll look) [17:13] - I see it now creates a mamepacmantest.wasm and a mamepacmantest.js and nothing else... does that mean that's all we need going forward for the loader? [17:20] SketchCow: to speed up compiles, make sure you're using make -j4 or similar, can make a huge difference [17:33] trying right now. [17:33] (Removed all the old stuff, re-doing.) [18:06] We started this at Sat May 23 17:35:32 UTC 2020 [18:06] And now it is Sat May 23 18:02:04 UTC 2020 [18:06] Not much of a shifted needle [18:07] ? that's half an hour vs an hour and a half, about what I would expect [18:07] Did I mention I never took math past the 10th grade [18:08] also each compile you do after the first one will re-use a lot of the work, if you don't clean in between [18:08] I see the numbers now. [18:08] I'm trying to find where, if anywhere, we have a list of targets. [18:08] (Obviously next I need to set up a MAMEfield for compiles.) [18:09] the usual rule of thumb for -j is to set it to 1 more than the number of cpu cores on the machine [18:09] but it does increase the RAM usage [18:11] DFJustin: Dropped you a few questions [18:13] Also, I'm sure one of you git experts can tell me how to git clone previous versions of mame. [18:14] the magic words are "git checkout" and then the name of the revision [18:14] e.g. mame0221 [18:15] however I'll note that over time I've put in fixes to compile on newer emscriptens so if you roll back before that the compile will just blow up [18:15] mmm. [18:16] Well, then I guess for this new paradigm, we'll do a special drop-dead of emularity on the site. [18:18] And then just move forward. [18:18] And track down why certain ones die. [18:20] Is what we're uploading compatible with the loader? [18:20] I do recommend checking out a specific revision rather than git master because there's more QA on the release points [18:20] I bet they are, and the wasm.wasm or whatever are generated. [18:21] Well, that's fine. like I said, we'll just call start of epoch NOW. [18:21] What I want to avoid in this round is only one person in theory can do a thing. [18:21] So first - emularity_engine_v1 is getting a emularity_engine_backup [18:21] or some name that makes sense [18:21] Probably 2020_05 [18:23] I guess first make sure this pacman compiled right. [18:25] http://teamarchive1.fnf.archive.org/MAMELAND/ [18:25] I guess what I'm saying is [18:25] -rw-rw-rw- 1 root root 3496806 May 23 18:02 mamepacmantest.js [18:25] -rw-rw-rw- 1 root root 18522444 May 23 18:01 mamepacmantest.wasm [18:25] What's next for those things. [18:25] I can also let you run roughshod on this machine [18:29] hmm looks like there were 3 files before so the loader might need an update [18:31] in theory you gzip those and they should be drop-in replacements for mamepacman.js.gz and mamepacman_wasm.wasm.gz [18:31] and I don't think the mamepacman_wasm.js.gz is needed anymore [18:32] but it'll probably die if it's not there [18:32] How about this. [18:32] First let's do another target. I did mamepacmantest. [18:32] Can I do... say, apple2 [18:33] If I want to set off a bunch of compilations while we do this, I might as well have it start generating those for the eval tree [18:33] SUBTARGET=apple2e SOURCES=src/mame/drivers/apple2e.cpp [18:34] Do we have a list of this documented anywhere? [18:39] *** Sgeo has joined #jsmess [18:42] I thought db48x or someone had a script but I don't know where it is [18:43] It's on his machine. [18:43] That's the thing. [18:43] I want it all shared. [18:43] On the archive. [18:43] it's pretty simple though it's just the filenames in src/mame/drivers [18:43] and you can crib the list of "ones we're currently using" from emularity_engine_v1 [18:44] Yeah, that's the plan. [18:44] yeah I think that's where I always got hung up on this task, "ok we can build, but now where's the list of all things to build, minus the ones we don't need" [18:44] Well, I don't want us hung up again. [18:44] Everything I'm doing is going into objects. scripts, etc. [18:46] OK, let me start this joy. [18:46] I am doing 10 other things today, but I suspect what will come out of it are "hey, what's the real story with ....." [18:47] It's still compiling, of course. [18:47] You can watch on that URL I sent. [18:57] We started this at Sat May 23 18:35:49 UTC 2020 [18:57] And now it is Sat May 23 18:50:31 UTC 2020 [18:57] That's apple. [18:59] So, according to the thingy, we have 776 different engines we build. [18:59] Wait, that's off. One moment. [19:01] Not off. 776. [19:03] http://teamarchive1.fnf.archive.org/MAMELAND/driverlist.txt [19:05] So... IN THEORY.... [19:05] I can use these core drivers and make a thing that builds each [19:06] root@teamarchive1:/1/MAME# for each in `cat driverlist.txt` [19:06] > do [19:06] > if [ ! -f mame0221/src/mame/drivers/$each.cpp ] [19:06] > then [19:06] > echo "Where is $each" [19:06] > fi [19:06] > done [19:06] Where is apple2p [19:06] Where is atari2600 [19:06] Where is c64_wasm [19:06] Where is f_32 [19:06] Where is gbusters [19:06] Where is jaguar_wasm [19:06] Where is megadriv_wasm [19:06] Where is mexico86 [19:06] Where is napple2e [19:06] Where is napple2 [19:06] Where is sc3000 [19:06] Where is strnskil [19:06] Where is t1000tx [19:06] Possibliliy these are long, long, long dead versions we fucked with [19:07] Still, that leaves... most of them. So let me go do that. [19:08] there's an extra step to get the drivers for each system [19:09] mame -listxml or something along those lines [19:09] Yes. [19:09] But we don't need to do that, since we did it. [19:09] I.e. I am generating the core drivers here. [19:10] ok [19:11] I'm running it. [19:12] Script I wrote: http://teamarchive1.fnf.archive.org/MAMELAND/MASTERBUILDER.sh [19:12] List of drivers I'm building: http://teamarchive1.fnf.archive.org/MAMELAND/driverlist.txt [19:12] Build log where we can see it go: http://teamarchive1.fnf.archive.org/MAMELAND/buildlog.txt [19:16] While this is building, I should think about how we have a test phase for it. [19:17] 15 minutes * 776 = [19:17] 8.08333333 days [19:18] I mean, I'm fine with this. What I'll do eventually is move driverlist around so the most used drivers get up there first. [19:22] the screenshotter is probably the best place to start for testing [19:22] like if you could spin up a copy of the screenshotter that just runs through the whole directory of newly compiled stuff and spits out a set of n screenshots for each [19:23] Well, more critically, we don't have test harnesses for these yet. [19:24] yeah that was my next question :D [19:24] Like, I need to write a script that moves the drivers into mameland and puts emularity in each [19:24] That would be the next smart thing. [19:24] A canonical tester. [19:24] I really want to try to make it we can screenshot/test each in the (all scripts viewable) testing machine [19:34] So, I found a bug in my script. [19:34] Which means I restarted after it finished 1942 to 1943 [19:36] I mention this because it means 1942 and possibly 1943 will have tiny, tiny build times [19:36] We started 1942 at Sat May 23 19:32:08 UTC 2020 and finished at Sat May 23 19:35:31 UTC 2020 [20:14] http://teamarchive1.fnf.archive.org/MAMELAND/buildlog.txt actually looks pretty good [20:33] http://teamarchive1.fnf.archive.org/MAMELAND/MAMELAND/ [20:34] That's now a thing. It doesn't currently do it automatically but I'll probably sweep it into master builder after this, to make the directory. [20:39] OK, I stole DFJustin's player script just to check. [20:43] http://teamarchive1.fnf.archive.org/MAMELAND/MAMELAND/1942/play.html works. [20:44] So that's good. The toolchain produces, ultimately, a new MAME [20:44] That works. [20:52] bai: I don't see any solution that doesn't include a key. [20:53] The main difference is to now aim to keep the keys and the stuff in where others can see, even suggest additions. [21:21] nice, you can see the graphical bugfix on the 1942 title screen from 0.219 [22:26] uh oh. 1942 works in ff but not in chrome, for me [22:28] SketchCow: not sure I know what you mean by a key [22:28] like someone going through and manually saying "looks good, looks bad"? [22:32] Really [22:32] Have to make dinner but [22:32] - Key means We need to decide what the corpus is [22:33] - Just "here's an item or machine type, here's what makes it" [22:33] oh, yeah, that kind of key [22:33] yeah [22:39] It just has to exist. No way around it [22:40] Also to see what we have missed, etc. [22:41] yeah, that mapping is the part that I was always missing as well, and apart from knowing that I could manually probably figure it out for specific machines I wanted to build, I never really knew where that master list of systems was [22:41] Well, that changes now [23:03] It's now going to slowly add them as we go. [23:03] add them where? [23:03] I think these messloaders we have from DFjustin's set are all going to need some custom [23:04] http://teamarchive1.fnf.archive.org/MAMELAND/MAMELAND/ [23:04] As they're being compiled I have a script noticing [23:04] ok, so as you compile you'll spit out the new directory plus the html needed to run it [23:04] No. [23:04] Just the js and the wasm [23:05] I need to come up with a way to do the rest [23:05] ok. yeah doing it as a separate step should be fine too [23:17] oh I see, that messloader.js is the old pre-emularity stuff where we had to modify the js file manually for every file [23:17] now I see where the complexity is :D [23:51] Yes [23:51] Well, I think since we're doing this 'for reals' I'm going to just come up with some hacks. [23:53] 1942 works for me in chrome, bai