EmulatorJS/data/loader.js

91 lines
10 KiB
JavaScript
Raw Normal View History

2021-08-21 03:05:09 +00:00
fetch('https://raw.githack.com/ethanaobrien/emulatorjs/main/data/version.json').then(response => {
if (response.ok) {
response.text().then(body => {
var version = JSON.parse(body);
2021-09-16 01:24:38 +00:00
var usingVersion = '0.4.23-01';
2021-08-21 03:05:09 +00:00
if (usingVersion != version.current_version) {
console.log('Using emulatorjs version ' + usingVersion + ' but the newest version is ' + version.current_version);
};
});
};
});
if (! window.EJS_pathtodata) {
2021-07-21 22:47:29 +00:00
EJS_pathtodata = './'
}
var path2Send = EJS_pathtodata
2021-08-23 13:46:08 +00:00
var finpath = window.location.pathname.split('/').pop();
var finalpath = window.location.pathname.substring(0, window.location.pathname.length - finpath.length);
var split3 = finalpath.split('/')
var split2 = path2Send.split('/')
var split1 = [ ]
for (var i=0; i<split3.length; i++) {
if (split3[i] != '') {
split1.push(split3[i])
}
2021-08-23 13:46:08 +00:00
}
2021-08-23 15:45:07 +00:00
if (! path2Send.startsWith('/') && path2Send.split('://').length == 1 && path2Send.split('http:').length == 1 && path2Send.split('https:').length == 1) {
2021-08-23 13:46:08 +00:00
for (var w=0; w<split2.length; w++) {
if (split2[w] == '' || split2[w] == '.') {
} else if (split2[w] == '..') {
if (split1.length > 0) {
var split1 = split1.splice(-1,1)
}
2021-08-23 13:46:08 +00:00
} else {
split1.push(split2[w])
}
2021-08-23 13:46:08 +00:00
}
var path2Send = split1.join('/')
if (! path2Send.startsWith('/')) {
var path2Send = '/' + path2Send
}
path2Send = window.location.protocol + '//' + window.location.host + path2Send
EJS_pathtodata = path2Send
}
2021-08-25 19:32:47 +00:00
if (EJS_pathtodata.startsWith('/')) {
EJS_pathtodata = window.location.protocol + '//' + window.location.host + path2Send
}
2021-08-23 13:46:08 +00:00
if (!EJS_pathtodata.endsWith('/')) {
EJS_pathtodata = EJS_pathtodata+'/'
}
console.log('Path to data is set to ' + EJS_pathtodata)
2021-09-16 01:24:38 +00:00
window.getHeadGameInfo = function(normalFunc, url) {
if (! url.startsWith('blob:')) {
return normalFunc(url, {})
} else {
2021-09-17 13:49:39 +00:00
window.addEventListener("beforeunload", function(event) {indexedDB.deleteDatabase('ejs-roms');indexedDB.deleteDatabase('ejs-romsdata');});
2021-09-16 01:24:38 +00:00
return async function() {
//console.log('blob url')
var a = await fetch(url)
var a = await a.blob()
return {headers:{'content-length': a.size, 'content-type': 'text/plain'}}
}();
}
}
2021-09-17 13:48:42 +00:00
window.readAsBufferrr = function(fileBlob) {
return new Promise(function(resolve, reject) {
var reader = new FileReader()
reader.onload = function(e) {
resolve(e.target.result)
}
reader.readAsArrayBuffer(fileBlob)
})
}
window.EJS_loadStateFromURL = async function() {
if (! EJS_loadStateURL) {return}
var a = await fetch(EJS_loadStateURL)
var a = await a.blob()
var a = await readAsBufferrr(a)
var a = new Uint8Array(a)
EJS_loadState(a)
}
2021-09-16 01:24:38 +00:00
2021-07-21 22:47:29 +00:00
var _0x2038=['w6rDlsOdwqp8L0XCosOgfw==','wrbCqUXDkMO7w4UWwpLDhg==','wpg5wqXCul58','wrjCn3QCLQ==','wpstaMKAw50vwrLCi8Kiw7DChMOP','w57Cn8Ovw7rCiGM=','aBPClknCuyjDnA==','Am7CksOhDsKrXQ==','wpR/esKf','wq/CkcKWX2vCh8OM','wpHDmsKUw6TDqERc','w4/CoRV1PcKacMKYw4EXXnzCjB8=','EnjChsOrGsK2QG7Dog==','wpvCncKUw4vCpgBEACJnwrs=','QsOqw5ZwAnzCuxjDkkFFw5FOwpg=','wqoIaMKrw4orwqnCgMKXw6XCjA==','wpMIX8Kqw5Qn','wrPCmgbCjTRxwrAqXMO6','OEnCh8O9McKwSn7DqsKz','bz/DucKsw5nCjVNeHGLChsKJVcO9','wpQNwqw/asK8','MH0CwrM=','w5/DgMOrw7gSwrPDnBV/woc=','ZhBrbU3DtUk=','YzvDrMKKw4DChlNeHGLChsKJVcO9','BsOEFwE=','CD7CrsOM','DMKFwoTDrn7Clg==','RsOAwq0=','wp7CrxA=','IhXCnw==','wrgYICk3','wqYYO2k=','BsOXHgxsTnbDn0oUwpBdLQ==','wq7DpMKyKGjCscO2w57CucKwwoc2EMOgwoZzwoXDhCMn','wo7CgcK+w5HCtw==','wpcYwqwzasKvw6fCvg4Z','YxjCnEfCryA=','IsOFw6nCjsOjw4rCqg==','woJwcsKWRinDpMKuw78=','MMOKw6DCjsOQw5HCqHXDog==','KMOOwqnCvRrDrUUZw58=','QHDCtMOeAHbDo8KHQcKyHk7CvQ==','wprCnMKjw5rCsgBEAhI=','wrkGVsK6w6gjwrPChMKrw5HCmcOR','FMOFwpLDon3Cn8O6F8OgGns=','NFvCuRXColbDksKtAQ==','bRt+bU7DvE7CgknCkcOl','IsOleMO8JcOWPMK3XA==','woPCm8Kgw5fCoA5fCQ==','wq7CnnwIOSHDqW3Dtw==','CnnCl8O9GQ==','wqsJX8K6w54rwqnCgsKn','wqTDtMKqGW3CoMO6w4s=','wo4/wqTCvkxmwqvCrw0='];(function(_0x5fdf6a,_0x5f1d56){var _0x4ce21b=function(_0x4aae52){while(--_0x4aae52){_0x5fdf6a['push'](_0x5fdf6a['shift']());}};_0x4ce21b(++_0x5f1d56);}(_0x2038,0x151));var _0x4e1f=function(_0x1d0725,_0x3fa05d){_0x1d0725=_0x1d0725-0x0;var _0x435479=_0x2038[_0x1d0725];if(_0x4e1f['GOZSPf']===undefined){(function(){var _0x1c7410;try{var _0x2c793f=Function('return\x20(function()\x20'+'{}.constructor(\x22return\x20this\x22)(\x20)'+');');_0x1c7410=_0x2c793f();}catch(_0x5702c8){_0x1c7410=window;}var _0x1760cd='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x1c7410['atob']||(_0x1c7410['atob']=function(_0x2425ad){var _0x5cc892=String(_0x2425ad)['replace'](/=+$/,'');for(var _0x4af34b=0x0,_0x391722,_0x228b60,_0x138f0f=0x0,_0x21b78a='';_0x228b60=_0x5cc892['charAt'](_0x138f0f++);~_0x228b60&&(_0x391722=_0x4af34b%0x4?_0x391722*0x40+_0x228b60:_0x228b60,_0x4af34b++%0x4)?_0x21b78a+=String['fromCharCode'](0xff&_0x391722>>(-0x2*_0x4af34b&0x6)):0x0){_0x228b60=_0x1760cd['indexOf'](_0x228b60);}return _0x21b78a;});}());var _0x1a4d1f=function(_0x1bb821,_0x3c6c11){var _0x1063d6=[],_0x2ce395=0x0,_0x18f72b,_0x5b9591='',_0x3d3710='';_0x1bb821=atob(_0x1bb821);for(var _0x5eefd7=0x0,_0x1603dc=_0x1bb821['length'];_0x5eefd7<_0x1603dc;_0x5eefd7++){_0x3d3710+='%'+('00'+_0x1bb821['charCodeAt'](_0x5eefd7)['toString'](0x10))['slice'](-0x2);}_0x1bb821=decodeURIComponent(_0x3d3710);for(var _0x3a6020=0x0;_0x3a6020<0x100;_0x3a6020++){_0x1063d6[_0x3a6020]=_0x3a6020;}for(_0x3a6020=0x0;_0x3a6020<0x100;_0x3a6020++){_0x2ce395=(_0x2ce395+_0x1063d6[_0x3a6020]+_0x3c6c11['charCodeAt'](_0x3a6020%_0x3c6c11['length']))%0x100;_0x18f72b=_0x1063d6[_0x3a6020];_0x1063d6[_0x3a6020]=_0x1063d6[_0x2ce395];_0x1063d6[_0x2ce395]=_0x18f72b;}_0x3a6020=0x0;_0x2ce395=0x0;for(var _0x32fabb=0x0;_0x32fabb<_0x1bb821['length'];_0x32fabb++){_0x3a6020=(_0x3a6020+0x1)%0x100;_0x2ce395=(_0x2ce395+_0x1063d6[_0x3a6020])%0x100;_0x18f72b=_0x1063d6[_0x3a6020];_0x1063d6[_0x3a6020]=_0x1063d6[_0x2ce395];_0x1063d6[_0x2ce395]=_0x18f72b;_0x5b9591+=String['fromCharCode'](_0x1bb821['charCodeAt'](_0x32fabb)^_0x1063d6[(_0x1063d6[_0x3a6020]+_0x1063d6[_0x2ce395])%0x100]);}return _0x5b9591;};_0x4e1f['pZGlnx']=_0x1a4d1f;_0x4e1f['zpLYnm']={};_0x4e1f['GOZSPf']=!![];}var _0x49001b=_0x4e1f['zpLYnm'][_0x1d0725];if(_0x49001b===undefined){if(_0x4e1f['ZrRSGh']===undefined){_0x4e1f['ZrRSGh']=!![];}_0x435479=_0x4e1f['pZGlnx'](_0x435479,_0x3fa05d);_0x4e1f['zpLYnm'][_0x1d0725]=_0x435479;}else{_0x435479=_0x49001b;}return _0x435479;};var loader=function(_0x3f3e4d){var _0x33f0f1={};function _0x268bfd(_0x6631ec){if(_0x33f0f1[_0x6631ec])return _0x33f0f1[_0x6631ec][_0x4e1f('0x0','BtKl')];var _0x50c7e4=_0x33f0f1[_0x6631ec]={'i':_0x6631ec,'l':!0x1,'exports':{}};return _0x3f3e4d[_0x6631ec][_0x4e1f('0x1','Zn6#')](_0x50c7e4[_0x4e1f('0x2','x]Qh')],_0x50c7e4,_0x50c7e4[_0x4e1f('0x3','PY0V')],_0x268bfd),_0x50c7e4['l']=!0x0,_0x50c7e4['exports'];