I have no idea if I'm even describing this problem clearly, or if this is the right place to ask, but here goes. I've compiled the software emulator MAME into its ECMAScript target, and am loading it in a web browser via Emularity: https://github.com/db48x/emularity This requires passing a number of files into cache for the emulator to run. Everything's working well. My emulated system fires up, all disk and tape images load, and the system runs as expected. Loading a tape image requires lengthy commands and a 3 minute wait for the emulated tape to run in realtime. What I want to do is take a "save state" which normally saves a file to disk. In this case, the file is saved to memory inside the browser, and doesn't even appear to flush to disk (digging through my browser's cache folder, I can't see it in amongst all of the other files that were downloaded and cached by the browser, which includes things like the emulated system BIOS, tape image wav file, and other things I load in at run time). I can do this on a locally compiled and run copy of MAME, however when I load that save state into the ECMAScript/browser version it complains the save state is corrupt. I can only assume the way the x86 compiled version and ECMAscript/JVM versions store this data are incompatible, hence what I'm trying to do here. I know the expected file name (it'll be called "1.sta"). How do I extract this from the browser's memory and save it locally as a file? I've jumped into the Chrome dev console and had a quick look around, and while I can see all of the .js files, I can't see any of the cached objects they're using. Is there a simple enough way to pluck these out?