[00:23] Yes [00:37] Thank you [01:05] so, I think we definitely want to try compiling the official vice source to see what it does. [01:09] Anyone's thoughts on this? https://github.com/rjanicek/vice.js/blob/master/emscripten/0001-changes-to-make-VICE-work.patch [01:36] Ok, apparently I don't have emscripten installed on FOS anymore [01:37] Let me see if I can remember how to get on glowing machine [01:42] Looks like it's applied to the compiled version [01:42] https://github.com/rjanicek/vice.js/tree/master/vice looks like it gets applied to the C code before compiling [01:43] Spoke too soon. Is that first one... changes to Emscripten itself? Hold on [01:49] So, the good news is, this thing is a roadmap [01:49] Like, he really did solve it "all" [01:49] Stepping tentatively, I bet I can reproduce what he did and find places it didn't work [01:49] bai can help [01:49] So yeah, he modified Vice AND Emscripten [01:50] We're not going to modify emscripten, since I bet azakai can help tell me if we need to do that [02:19] hi [02:20] happy to help on emscripten stuff. first change in that link looks odd, second might be a bugfix we need to get [02:22] do any browsers still not implement non-namespaced pointerlock? [02:23] actually brave may not, we've been trying to get them to add that for a bit [02:32] So, I think I got Emscripten running on a box [02:33] emsdk# emmake [02:33] emmake is a helper for make, setting various environment [02:33] variables so that emcc etc. are used. Typical usage: [02:33] emmake make [FLAGS] [02:33] (but you can run any command instead of make) [02:33] ERROR:root:Executable to run not specified. [02:33] Looks right, right [02:34] So, azakai - https://github.com/rjanicek/vice.js/blob/master/emscripten/0001-changes-to-make-VICE-work.patch is what he wrote... 3 years ago [02:37] looks like the code in emscripten is still the same for the SDL change. anyhow, either way it should build ok, and if you see an error at runtime with a stack trace leading there, we'll know we need to fix that [02:37] If I make this all work [02:37] but yeah, I am guessing it was needed 3 years ago, but maybe not today (not sure about brave though) [02:37] I assure you, it is a monkey making a functional margarita [02:38] lol [02:39] emmake make clean [02:39] Gets an error [02:39] root@teamarchive1:/DEVWORK/vice.js/vice# emmake make clean [02:39] make: *** No rule to make target `clean'. Stop. [02:40] Oh, I see why [02:40] It tries to make clean before it even generates a makefile [02:40] OK, next line [02:40] emconfigure ./configure --enable-sdlui --with-sdlsound --without-resid --without-residfp [02:40] root@teamarchive1:/DEVWORK/vice.js/vice# emconfigure ./configure --enable-sdlui --with-sdlsound --without-resid --without-residfp [02:40] option checking is yes [02:40] configure: error: invalid option: --without-residfp [02:40] ERROR:root:Configure step failed with non-zero return code: 1. Command line: ./configure --enable-sdlui --with-sdlsound --without-resid --without-residfp at /DEVWORK/vice.js/vice [02:41] Oh, not your problem [02:43] Since 2.4 they dropped residfp [02:43] checking whether the C compiler works... no [02:43] configure: error: in `/DEVWORK/vice.js/vice': [02:43] configure: error: C compiler cannot create executables [02:43] See `config.log' for more details [02:43] ERROR:root:Configure step failed with non-zero return code: 77. Command line: ./configure --enable-sdlui --with-sdlsound --without-resid at /DEVWORK/vice.js/vice [02:45] =========================================================================== [02:45] (no targets could be identified: Command '['/DEVWORK/emsdk/clang/e1.38.11_64bit/llc', '--version']' returned non-zero exit status 1) [02:45] =========================================================================== [02:45] CRITICAL:root:you can fall back to the older (pre-fastcomp) compiler core, although that is not recommended, see http://kripken.github.io/emscripten-site/docs/building_from_source/LLVM-Backend.html [02:45] INFO:root:(Emscripten: Running sanity checks) [02:45] ERROR:root:failing sanity checks due to previous fastcomp failure [02:45] configure:4720: $? = 1 [02:45] configure:4758: result: no [02:45] configure: failed program was: [02:45] Any thoughts [02:45] looks like emscripten isn't set up right - how did you install it? [03:01] *** Sgeo_ has joined #jsmess [03:02] Used the instructions on your site [03:02] Are there a better set of instructions I should have used [03:03] *** Sgeo has quit IRC (Ping timeout: 255 seconds) [03:05] last time I did all this, the best way to go was to use emsdk to install [03:07] https://kripken.github.io/emscripten-site/docs/getting_started/downloads.html [03:08] ./emsdk install latest [03:08] ./emsdk activate latest [03:08] source ./emsdk_env.sh [03:12] It's doing the work now [03:12] So, as a note, yeah, there will be a few of these little "drop this" [03:13] So [03:13] using TextField widget. [03:13] checking whether the C compiler works... no [03:13] configure: error: in `/DEVWORK/vice.js/vice': [03:13] configure: error: C compiler cannot create executables [03:13] See `config.log' for more details [03:13] ERROR:root:Configure step failed with non-zero return code: 77. Command line: ./configure --enable-sdlui --with-sdlsound --without-resid at /DEVWORK/vice.js/vice [03:14] Why is a non-existent file giving me a 200 instead of a 404? [03:14] where [03:14] Making loader.js try to load a "vice.cfg" now, but I didn't start simulating that yet [03:15] emcc (Emscripten gcc/clang-like replacement) 1.38.11 (commit 0d8576c0e8f5ee09a36120b9d44184b5da2f2e7a) [03:15] Copyright (C) 2014 the Emscripten authors (see AUTHORS.txt) [03:15] This is free and open source software under the MIT license. [03:15] There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [03:15] configure:4674: $? = 0 [03:15] configure:4663: /DEVWORK/emsdk/emscripten/1.38.11/emcc -v >&5 [03:15] CRITICAL:root:Could not verify LLVM version: Command '['/DEVWORK/emsdk/clang/e1.38.11_64bit/clang++', '-v']' returned non-zero exit status 1 [03:15] /DEVWORK/emsdk/clang/e1.38.11_64bit/llc: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /DEVWORK/emsdk/clang/e1.38.11_64bit/llc) [03:15] /DEVWORK/emsdk/clang/e1.38.11_64bit/llc: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /DEVWORK/emsdk/clang/e1.38.11_64bit/llc) [03:15] CRITICAL:root:fastcomp in use, but LLVM has not been built with the JavaScript backend as a target, llc reports: [03:16] What am I missing [03:17] ./emsdk/clang/e1.38.11_64bit/llc: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ./emsdk/clang/e1.38.11_64bit/llc) [03:17] ./emsdk/clang/e1.38.11_64bit/llc: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./emsdk/clang/e1.38.11_64bit/llc) [03:18] sudo apt-get install libstdc++6 [03:18] That's already in [03:22] do you have -dev [03:23] or build-essential should include it I think [03:25] *** Sgeo_ has quit IRC (Read error: Operation timed out) [03:29] *** Sgeo has joined #jsmess [03:29] It would be nice if my laptop stopped dying on me [03:30] Also is /emularity the "home" directory as far as things that care about ~ are concerned? [03:35] Isn't it /emulator [03:36] oops yes [03:38] Still trying to make work [03:39] Working on the Joystick stuff now [03:42] apt-get install build-essential [03:42] Reading package lists... Done [03:42] Building dependency tree [03:42] Reading state information... Done [03:42] build-essential is already the newest version. [03:42] The following package was automatically installed and is no longer required: [03:42] libisl10 [03:42] Use 'apt-get autoremove' to remove it. [03:42] 0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded. [03:43] hmm. what distro? [03:43] Linux teamarchive1.fnf.archive.org 4.4.0-45-generic #66~14.04.1-Ubuntu SMP Wed Oct 19 15:05:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux [03:43] do you know which ubuntu that is? [03:43] oh, 14.04?? [03:43] that may be the problem [03:44] Yes [03:44] Does the VICE.js patch patch out or make into buildtime config an SDL_Delay function? [03:44] 4 years is an eternity in emscripten land :D [03:45] uh oh, SDL_Delay [03:45] *eye twitching intensifies* [03:45] When I try to get to the F12 settings, that's what it's dying to. Looks like the patch fixes one, maybe there's another [03:46] It's documented on VICE.js's page that the settings page is broken [03:46] (F12, which also conflicts with the browser's devtools. We'd probably want to change that if we get it working) [03:46] OK, so sounds like I can't use this machine [03:47] Distributor ID: Ubuntu [03:47] Description: Ubuntu 16.04.5 LTS [03:47] Release: 16.04 [03:47] Codename: xenial [03:47] 16 may be better [03:47] or is that what that one is [03:47] Yeah, but it was blowing up on that machine [03:47] I have two machines, basically [03:47] ah ok [03:48] Yeah there's a whole bunch of SDL_Delays lying around besides the one VICE.js patches out [03:48] So guess I'm code diving to find where settings get stored/read [03:48] What problem are you trying to solve, again? [03:49] (Was hoping to use settings menu to save and see where it ended up in the FS) [03:49] if it uses SDL_Delay (which is really just a wrapper around usleep() iirc) you may need to go down the path of using emterpretify [03:49] Since arrow keys isn't a built-in default for VICE joystick emulation, I'd like to add that to the settings file. [03:50] I guess I could just use the built-in numpad, but my numpad's broken. Planning on making both an option, although it would be so much better to give the option to the user, with sensible defaults per item maybe [03:52] Don't go too far down the rathole [03:52] I really want this 3.2 working and then we go from there. [03:52] I think the real ballbuster will be porting these changes to the new code [03:55] https://github.com/rjanicek/vice.js/blob/master/vice/0001-Vice-2.4.4-Emscripten-changes.patch [03:57] /home/emscripten/.vice/ [03:57] (Seems to be where it looked for at least one file) [03:57] I don't think the config stuff I'm looking at is likely to be too different between 2.4.4 and 3.2. If it is, I'm looking at the 3.2 manual anyway, so [04:00] OK, trying AGAIN on the newer box [04:01] It is taking a LONG time to check the C-Compiler [04:05] checking if ar truncates object names... yes [04:05] configure: error: ar is too old, upgrade your ar [04:05] NICE [04:17] *** Vito` has joined #jsmess [04:26] It's wrong [04:27] I upgraded to 2.31 [04:36] Now confused [04:38] where are you at now? [04:41] configure: error: ar is too old, upgrade your ar [04:41] ERROR:root:Configure step failed with non-zero return code: 1. Command line: ./configure --enable-sdlui --with-sdlsound --without-resid at /1/0/VICE/vice.js/vice [04:59] Fixed that, onto next thing [05:09] It required xa! [05:09] Jesus christmas! [05:09] https://www.floodgap.com/retrotech/xa/ [05:21] OK, I got it to CONFIGURE BABY [05:39] root@teamarchive2:/0/VICE/vice.js# bash build-x64 [05:39] generating translate.h... [05:39] /bin/bash: ./gentranslate: Permission denied [05:39] Makefile:2399: recipe for target 'translate.h' failed [05:39] make[1]: *** [translate.h] Error 126 [05:39] Makefile:1018: recipe for target 'x64' failed [05:39] make: *** [x64] Error 2 [06:08] derf [06:09] sorry, had to break for dinner [06:09] yeah I ran into the ar problem last time I tried. can't remember about xa, and don't recall having permission problems [06:09] maybe just go all #yolo and run as root? :D [06:12] I always do. [06:12] Anyway, I got configure running [06:12] Now it's a "make vice work" [06:13] cool [06:15] Hence the errors. [06:16] oh yeah, I guess I could have seen that you were root if I looked more closely :D [06:17] what are the permissions on ./gentranslate? [06:30] So, I'm not sure that's what's going on. [06:32] emmake make x64 [06:33] So, something gets odd here. [06:33] I'm going to need help. [06:34] root@teamarchive2:/0/VICE/vice.js/vice/src# chmod a+x gentranslate [06:34] root@teamarchive2:/0/VICE/vice.js/vice/src# ./gentranslate [06:34] bash: ./gentranslate: cannot execute binary file: Exec format error [06:35] file gentranslate [06:35] gentranslate: LLVM IR bitcode [06:36] *** balrog has quit IRC (Read error: Operation timed out) [06:37] Is that Makefile visible somewhere? What is line 2399? [06:38] hrm. [06:39] *** balrog has joined #jsmess [06:39] it seems like maybe the vice build process is building that gentranslate executable, and then running it as part of the next step of the build process [06:39] so when compiling with emscripten, that gets mucked up because the system it's targeting doesn't generate runnable code on the system it's being compiled [06:40] I wonder if doing a native build first would help [06:40] might be worthwhile to do that anyway just to make sure everything works as expected (eg, no missing deps) [06:51] Trying a regular build [06:51] configure: error: The Xaw port needs Readline [06:55] urgh [06:56] try apt-get install build-dep vice [07:18] Didn't work [07:18] https://pigeon.neocities.org/vice.html [07:20] neocities sounds like it should be a Geocities archival, guess it isn't [07:22] Those probably aren't useful configs for VICE.js [07:23] Maybe ./configure --enable-sdlui --with-sdlsound --without-resid --without-residfp ? [07:23] (From https://github.com/rjanicek/vice.js/blob/9b3e5f21489f96967d649790d3c915ac3127c6ec/build#L16 ) [07:29] Sgeo: more of a geocities-inspired hosting service [07:34] We need to find the vice.js guy [07:37] Richard Janicek [07:49] *** balrog has quit IRC (Read error: Operation timed out) [07:50] *** balrog has joined #jsmess [07:55] I mean, this has been fun but I'm out of my depth [08:25] So, either we get help from him, or someone does that painful wokr [08:25] But I can't be it. [08:25] It's obvious Vice has taken a HUGE leap [10:21] *** hook54321 has quit IRC (Ping timeout: 252 seconds) [10:22] *** hook54321 has joined #jsmess [16:53] another "packaged" setup, this time dosbox + lode runner: https://github.com/mad4j/loderunner-in-a-box [16:54] they've a few others in their repos [18:09] *** arkiver has quit IRC (Write error: Broken pipe) [18:09] *** datajerk has quit IRC (Read error: Operation timed out) [18:13] *** arkiver has joined #jsmess [18:24] *** arkiver has quit IRC (Ping timeout: 360 seconds) [18:30] So, just to add some structure [18:30] azakai: You believe, looking at those patches, that Emscripten should generally be fine with this stuff now? [18:30] *** SketchCow sets mode: +oooo azakai balrog DFJustin godane [18:30] *** SketchCow sets mode: +ooo Sgeo Lord_Nigh Vito` [18:59] *** arkiver has joined #jsmess [19:36] *** datajerk has joined #jsmess [19:38] *** dboard420 has quit IRC (Read error: Operation timed out) [19:39] *** dboard420 has joined #jsmess [19:44] Sgeo: Want to take on this compilation thing? [19:45] I'll try [19:45] Let me know if you need a AWS instance funded. [19:45] Should I try in a VM on my machine first, I think? Or am I better off doing what you said? [19:46] No, if you have a VM you can locally do, that works [19:46] I mean, a AWS instance might be faster [19:47] I've always been a bit of a VM addict, VirtualBox now, VMware Server when I was a kid. Running a bit low on HD space for isos though, blah [19:49] *** dboard420 has quit IRC (Ping timeout: 633 seconds) [19:51] *** Lord_Nigh has quit IRC (Read error: Operation timed out) [19:52] I guess it depends on how easy it is to compile. [19:52] I agree with bai - see if you can compile VICE 3.2 successfully first. [19:52] They really made a raft of changes. [19:52] Let me know if would help to get a VICE person in here to assist. [19:53] *** Lord_Nigh has joined #jsmess [19:57] *** dboard420 has joined #jsmess [20:03] In related news: I got uploading of C64 disks to work. [20:03] I also got screenshotting to work, BUT it blows up the Firefox instance I use. [20:06] Hmm, what wasnt working about C64 uploads before? [20:12] SketchCow: about the question from before, yeah, i don't think there should be any emscripten problems without that patch [20:30] Downloading an Ubuntu ISO now [21:03] Not sure if I should download from SVN or from Ubuntu repos [21:17] azakai: OK, so we'll set those patches aside. [21:19] Sgeo: I'm going to make changes to the vice.json file on IA, don't panic. [21:19] I'll try following the instructions on the neocities page, with the exception of the ./configure line, which I'll replace with the thing I linked earlier [21:20] SketchCow, ok [21:20] Depending on how much size/space you have, you might want to do multiple tries on different accounts [21:20] Meanwhile, I downloaded vice 2.4 to get the HTML docs so I can see what command line options should be added or other features. [21:23] Also, downloading 18gb of Commodore 64 items [21:29] Oh, I figured out why it all looked awful on Chrome and nowhere else for me [21:29] My Chrome was at 110% zoom [21:32] So, Sgeo - I added +autostart-warp as an option in emularity [21:32] Doesn't seem like it's changing much [21:37] Looks like VICE is receiving the argument properly, not sure what else could be happening [21:39] Try -autostart-warp [21:40] https://github.com/OpenEmu/VICE-Core/blob/ba7870ef5f6e44ab7e6c12ffa4762b66615969b6/vice/src/autostart.c#L371 seems to be suggesting - is to enable, although I could be wrong. Documentation is sort of ambiguous [21:45] just FYI, the libretro folks have a Vice 3.0 fork that they say compiles under emscripten? I don't know how much their libretro architectural changes made that possible [21:45] https://github.com/libretro/vice-libretro [21:48] First thing needed to start compiling: sudo apt-get install libsdl2-2.0 libsdl2-dev [21:48] Was struggling because was assuming VICE would use SDL 1.2. Those are installed too [21:49] Oh also removed the residfp thing from the configure line above because it wasn't being recognized [21:50] Make notes, if possible. [21:50] I verified that residfp is long, long gone [21:51] Obviously, over time, VICE has tried different emulation engines and they've added things to allow emulation various ways. You could choose to rip stuff out [21:57] Spent some time looking at the libretro thing. Don't like. Walk away. [21:57] Nice to know, definitely a distraction [21:57] It compiled, but won't run. Complaining about a lack of HardSID. Starting to question the --without-resid thing [21:58] Sounds like you need another command line option. One moment. [22:00] What's the error [22:01] https://ubuntuforums.org/showthread.php?t=2375321 [22:01] https://i.imgur.com/YpzxRze.png [22:01] ./configure --enable-gnomeui --disable-realdevice --disable-ipv6 --disable-ssi2001 --disable-catweasel --disable-hardsid --disable-parsid --disable-lame --with-uithreads --with-x [22:02] Ok, so [22:02] It's not complaining about HardSID [22:02] It's just mentioning it didn't see a HardSID card installed [22:02] Difference [22:03] http://vice-emu.sourceforge.net/vice_7.html [22:04] -sidenginemodel [22:04] Specify engine and model for the emulated SID chip (SidEngine, SidModel). (FastSID 6581: 0/fast/fastold/fast6581, FastSID 8580: 1/fastnew/fast8580, ReSID 6581: 256/resid/residold/resid6581, ReSID 8580: 257/residnew/resid8580, ReSID 8580 + digiboost: 258/residdigital/residd/residnewd/resid8580d, DTVSID: 260/dtv/c64dtv/dtvsid, Catweasel MKIII: 512/catweaselmkiii/catweasel3/catweasel/cwmkiii/cw3/cw, [22:04] HardSID: 768/hardsid/hard/hs, ParSID Port 1: 1024/parsid/parsid1/par1/lpt1, ParSID Port 2: 1280/parsid2/par2/lpt2 ParSID Port 3: 1536/parsid3/par3/lpt3) [22:05] do -sidenginemodel 0 [22:06] https://i.imgur.com/3UnLCje.png [22:07] Going to try without --without-resid and see what happens [22:10] I mean, put it this way [22:10] He made all sorts of assumptions and learns when he was working on this, and that was 5 years ago [22:11] Meanwhile, VICE has rebooted itself a LOT [22:18] https://i.imgur.com/mukosFl.png [22:18] 1. Good job [22:19] Do you have an x-server running [22:19] I would assume so, I'm running a GUI. Unless Ubuntu switched to Wayland or something [22:25] sgeo@sgeo-VirtualBox:~$ echo $XDG_SESSION_TYPE [22:25] x11 [22:31] AFK [22:32] I don't know how to trace a coredump [22:33] "I can confirm, that the VICE binaries crash when running from the default Wayland session in 17.10. If logging in with an X.org session they will run OK. [22:33] "It seems, the problem does not shows up if some compiles vice without gtk3 UI." [23:09] https://archive.org/details/softwarelibrary_c64_musicdisks [23:10] Obviously, we need to do &external_js=1 until Tracey pushes the PR db48x just submitted