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 |