[00:05] I have a new build, but it's jamming in weird ways [00:08] Did ) wrong [00:16] https://sgeo.github.io/experimental/vice32/x64.js new version, supports ) properly, requires no changes to VICE's symbolic keymap for the US keyboard, and supports # and $ [00:16] Demo at https://sgeo.github.io/experimental/vice32/x64.html , might require clearing cache [00:17] Just noticied an oditity when typing PRINT "!@" it becomes somethign else, but WinVICE is doing that too *shrug [00:50] Just tried 10 Years HVSC in vice.janicek.co, it sounds fine (except for the clicking). Argh why [00:59] https://deepsid.chordian.net/?csdbtype=release&csdbid=44014 for a nice way to listen to the music that should be there [02:00] *** azakai has joined #jsmess [03:37] Did I mention that coroutine.h is overkill for the vice.js person's use? Well, it's actually insufficient for what I want to use it for for the menus, I think [03:37] Or well technically sufficient but a pain. Looking at alternatives [04:20] *** balrog has quit IRC (Read error: Operation timed out) [04:23] *** balrog has joined #jsmess [04:23] coroutine.h + setjmp/longjmp? [04:37] I'd need to add that functionality as a macro, but it should be simple enough. Especially if I'm lazy enough to just make the return point a global or something [05:23] I went down that rabbit hooe trying to get mame's timing just right....scary stuff :D [05:23] hole* [05:26] bai, any interesting generic code I could see? [05:26] Coroutine magic is fun! [05:38] no, I got it *almost* functional, but it still didn't fully solve the problem in my case because I still had timing issues [05:38] Someone in Freenode##C is telling me to "port it properly" instead of jumping down this rabbit hole [05:38] if you got the timing right I think it could work to jump back into synchronous blocking code from the emscripten main loop function [05:39] heh [05:39] I am adding the new vice.js [05:39] So yeah, what's left - sound issues? [05:39] Yeah. I'm still not sure where to start diagnosing that except for the speed stuff that I did earlier [05:42] Do we need to drag a vice guy in? [05:43] if the sound issues aren't caused by the system just running at <100% speed, normally they're caused by subtle timing issues [05:59] Maybe someone who knows what they're doing can inspect the page and see if we are rendering at a much larger resolutionhttps://sgeo.github.io/experimental/vice32/x64.js [10:21] *** balrog has quit IRC (hub.efnet.us irc.servercentral.net) [10:21] *** zino has quit IRC (hub.efnet.us irc.servercentral.net) [10:21] *** arkiver has quit IRC (hub.efnet.us irc.servercentral.net) [12:06] *** balrog has joined #jsmess [12:06] *** zino has joined #jsmess [12:06] *** arkiver has joined #jsmess [14:56] *** davidar has quit IRC (Quit: Connection closed for inactivity) [16:51] Hey azakai - when you have a moment. We have a working VICE.JS!! And that's amazzing [16:51] But there's some inefficiency so it's barely keeping head above water and it's buzz city [16:51] Maybe you can notice [17:25] SketchCow: very cool about vice.js, nice! happy to take a look and do some profiling. is there a build up somewhere? [18:00] azakai, with example music? https://archive.org/details/10_Years_HVSC_2006-11-28_HVSC_Crew_Side_A [18:00] http://sgeo.github.io/experimental/vice32/x64.html is where I' [18:01] Where I'm putting my most recent builds [18:02] SketchCow, for 10 Years HVSC, it looks like we should put up the d71 instead, just so there's no "side A" and "side B". Or all of them and point the metadata to the d71 file [18:03] ...except those aren't working in WinVICE ?!?! [18:06] azakai: and don't let me distract you from this, but when you're done helping these fine fellows, I might want to pick your brain about why using "emconfigure cmake" would fail to find OpenGL and SDL2 when using find_package() [18:25] Just to QUICKLY orient azakai - so, most everything in IA is running on the "old" vice.js (based off 2.4) - it works, it's smooth. Due to a weirdness I have sound shut off. [18:25] But a few are running what I'm calling "Vice32" but is just Vice.js on 3.2. A handful. Here's another: https://archive.org/details/Bubble_Bobble_1987_Firebird [18:25] I like this one because it really kicks the sound in [18:28] heh, just opened that experimental link, that gives the c64 command prompt - brings back a lot of memories... [18:32] :D [18:38] i don't see a wasm file downloaded here - is it embedded in the js? [18:53] azakai, yes. WASM=1 STANDALONE_FILE=1 [18:54] Sgeo_: i see, thanks. is it important to have a single file for you? it's a larger download, and slower startup, in general [18:55] (also makes profiling a little harder, but i'm managing) [18:56] What optimization level is this, btw? [18:59] It's more convenient for now for testing on IA. In theory I think we can do separate file [18:59] -O2 [18:59] cool, might be worth trying -O3 and -Os, they could be faster (but compile times will be a lot slower) [19:00] otherwise, looking at the two heaviest functions in the first link, i don't see anything obviously wrong. no obvious missed optimization opportunities [19:06] looked at the others - also nothing looks odd [19:06] what is this using for audio, btw? [19:20] Not sure what you mean. SDL I guess [19:38] SketchCow, not directly related to vice.js improvements, but this HVSC 10 year thing has a bunch of essays in it, like lists of cool music and technical stuff. Should I see if I can extract it? [19:51] ...turns out I don't actually know what I'm doing [20:01] Sgeo_, SketchCow: I'd suggest talking to floh (FlohOfWoe on twitter), he's been working on a really good audio backend for his emulators. he said he might find time to upstream it to emscripten - maybe knowing it could help this project would help him find time sooner [20:02] bai: hmm, it's possible you may need to add the emscripten -s USE_SDL=2 stuff to cflags, so that cmake's configure step finds it. OpenGL however should just work - need to find out what command it runs to test that is failing [21:40] azakai: yeah I tried setting CFLAGS="-s USE_SDL=2" but it didn't seem to help - I'm not sure if that's used during the "emconfigure cmake" step though [21:41] this is the project I'm working with https://github.com/recastnavigation/recastnavigation [21:41] bai: yeah, not sure if cmake looks at that env var. may need to add it inside the CMakeLists.txt file directly [21:41] specifically this CMakeLists file https://github.com/recastnavigation/recastnavigation/blob/master/RecastDemo/CMakeLists.txt#L9-L10 [21:42] ok, I'll give that a try [21:42] bai: actually, you may just comment out those lines for emscripten [21:42] as long as you add the -s USE_SDL=2 stuff, SDL should just work, even without cmake knowing how [21:43] (but if you look into this, would be good to know if there's a fix we can apply to make those just work out of the box) [21:44] azakai: hmm, I tried that but then it complained later on in the process, but that might have been the CFLAGS problem [21:45] Target "RecastDemo" links to target "SDL2::SDL2main" but the target was not found. Perhaps a find_package() call is missing for an IMPORTED target, or an ALIAS target is missing? [21:51] not sure - i know very little about cmake myself [21:55] me too :D [22:12] heh [22:27] azakai: Thanks [23:17] db48x: You have a young monk standing outside the emularity gates on github [23:17] Have him stand in the rain for a day and then make him catalog ROM locations [23:24] I have a broom here somewhere