#jsmess 2018-03-23,Fri

↑back Search ←Prev date Next date→ Show only urls(Click on time to select a line by its url)

WhoWhatWhen
SketchCowIt's nice to see what can be done, with graceful fails
Proof of concept followed by refinement is always good
[00:13]
oscarWell, modules wouldn't likely be a graceful fail.
But worth thinking about.
[00:14]
.............. (idle for 1h5mn)
DFJustinI think we're already using a fair amount of shiny new stuff [01:19]
.......... (idle for 47mn)
***balrog has quit IRC (Read error: Operation timed out) [02:06]
Vito`I thought there was an issue with discussion about browser minimums on the old jsmess repo, but there wasn't. [02:10]
***balrog has joined #jsmess [02:17]
balrog has quit IRC (Read error: Operation timed out)
balrog has joined #jsmess
[02:30]
............. (idle for 1h2mn)
oscarHmm, DEFCON event for tomorrow might not happen.
But I'm still trying to grind something out tonight.
[03:34]
SketchCowGreat [03:40]
............ (idle for 55mn)
***datajerk has quit IRC (Read error: Operation timed out)
datajerk has joined #jsmess
[04:35]
......... (idle for 42mn)
db48xoscar: I can help test
oscar: you can send me a pull request
[05:21]
oscarWill do! [05:23]
db48xawesome
now I must sleep
probably to dream annoying dreams, since I haven't slept in two days
[05:25]
.... (idle for 16mn)
oscarI gotta sleep soon too.
Weirdly, it's breaking on loading from Zip files.
I'll get it behaving on multiple .dsk files first.
[05:42]
Hum, maybe Wasteland wasn't the ideal one to test on, since the necessary copy operation seems to crash on the emulator. [05:53]
.... (idle for 17mn)
But, at least, I have multiple files loading now, from the metadata, which is nice. And it's selecting the peripherals to load from the metadata.
I need to finish the code for getting the media list *out* of the loader and into some UI elements, which won't take long, but I'm too burned out for tonight.
And then of course we need to talk about how to call functions in MAME from outside it (someone said it was easy).
Then I can actually get the media swap going.
[06:10]
After that: creating blank disks, then maybe eventually saving them somewhere?
Bonus for the time being: you can specify additional peripherals for the media in the extra config metadata and they'll appear rather than cluttering up the front-end metadata.
[06:17]
................................................................... (idle for 5h30mn)
***oscar_ has joined #jsmess [11:48]
oscar_Hooray, iOS IRC client.
I didn't get a chance to check my computer before I left, any word on calling functions from outside?
[11:50]
***oscar_ has quit IRC (Mutter: www.mutterirc.com) [11:56]
datajerk has quit IRC (Read error: Operation timed out) [12:07]
...... (idle for 29mn)
oscar_ has joined #jsmess
oscar__ has joined #jsmess
oscar_ has quit IRC (Ping timeout: 252 seconds)
datajerk has joined #jsmess
oscar__ has quit IRC (Ping timeout: 260 seconds)
[12:36]
................ (idle for 1h18mn)
SketchCowdb48x and bai - if you have a chance. [14:03]
............................ (idle for 2h19mn)
baiSketchCow: sup? [16:22]
oh yeah, just saw oscar's question. yeah, there's a list somewhere in the mame build files of which functions to export, you'll need to figure out the mangled name, it'll be something like __ZN15_classname_functionname - https://github.com/mamedev/mame/blob/1f80e58a10d54eb58ee952c15eba7069704757cf/scripts/src/main.lua#L155
then you can map thrm into the JSMAME namespace in JS - https://github.com/mamedev/mame/blob/785e6f2fc9fd93d9780c4e48bca03b72230c323f/scripts/resources/emscripten/emscripten_post.js
[16:30]
................. (idle for 1h24mn)
balrogoscar: did my messages go through? :)
nvm :D
[17:56]
................................ (idle for 2h39mn)
oscarAh nuts, I was hoping it wouldn't involve rebuilding MAME. :-)
It might not still, depending.
Well. I'm back early from jury duty, so I'm gonna spend the evening at least getting the disk selection temporary UI elements working.
I'll try to figure out how to tackle media switching after.
MAME lets you load Lua plugins, which can read/write over stdin/out; any advice on hooking those using JS?
I imagine I can figure it out given time, but if anyone has a quick pointer it'll speed things up.
[20:36]
baiit requires a relink, not a whole rebuild
not quite sure how the lua stuff would hook in, but it seems first step is getting the .lua file mapped into the filesystem for the emulator, then it's a matter of configuring mame to use it
[20:40]
oscarYes, that's just a command line arg.
I'm talking about talking to stdin/stdout from the MAME process.
[20:42]
baioh right. hmmm...I think emscripten provides that mechanism but 've never used it [20:42]
oscarOn a desktop, it's easy. It would be easy enough in Python. I don't know how emscripten handles those.
Ah, well, I'll look into it.
My primary motivation here is laziness, because then I don't have to mess with more parts of Emularity than absolutely necessary because I can just use the IA version. :-)
[20:42]
baihttps://kripken.github.io/emscripten-site/docs/api_reference/Filesystem-API.html#setting-up-standard-i-o-devices
so it looks like you call FS.init with callbacks for stdin, stdout, and stderr - and they'll be called and either receive or should return one character at a time
[20:44]
oscarOh, sweet.
I mean, one character at a time isn't *great*, but it'll do.
Thanks!
I hadn't gotten to searching yet because I'm trying to figure out what's made Safari eat 60 GB of VMEM.
I'm beginning to strongly suspect that the script blocker I use is terrible.
[20:56]
Anyway. If I can make it work through sending commands/receiving status via a Lua script, I don't have to monkey with MAME at all. [21:08]
***azakai has quit IRC (Ping timeout: 255 seconds) [21:08]
oscarPlus it won't involve quite so much skullduggery on the .js side. [21:08]
baiit seems like emscripten at least supports line buffering for those, eg, by default stdout calls console.log() and is line buffered
the docs for FS.init seem to say it'll get called ince per character and sometimes with null to flush
[21:14]
oscarI don't really mind doing line buffering myself if I have to, I'm used to doing it on embedded serial ports. It's just not ideal from an efficiency standpoint, since the application is doing read() and write() under the hood, generally with more than one char at a time.
But in any case, it should be OK to scan for special character sequences for disk events (eject, etc.) and pass all the rest on to the console.
Wish there were a better way of doing it out of band, though, that seems kinda hackish.
Other than directly calling the Lua, obviously.
[21:21]
........... (idle for 52mn)
***azakai has joined #jsmess [22:15]
................. (idle for 1h24mn)
DFJustinhttps://github.com/mamedev/mame/commit/49b5ad8f6bede1002c89dff44c332eae595fa735 [23:39]
.... (idle for 16mn)
oscarOh, FS.registerDevice() looks more or less exactly like what I want.
Pity there's no ioctl operation, but this separates WAY better from the console.
Oh wait, maybe there is?
[23:55]

↑back Search ←Prev date Next date→ Show only urls(Click on time to select a line by its url)