#jsmess 2020-05-23,Sat

↑back Search

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

irclogger-viewer