From 8ca1315226b87274d6fb46a737aed62e5486d916 Mon Sep 17 00:00:00 2001 From: ppeccin Date: Fri, 3 Jan 2020 22:31:22 -0300 Subject: [PATCH] Release 5.4.4 New parameters override by code. New BOOSTED Machine Preset. MSX2++ will be removed in future releases. --- package-lock.json | 2 +- package.json | 2 +- release/stable/5.4/cbios/embedded/wmsx.js | 16 ++++++++++------ .../stable/5.4/cbios/standalone/cache.manifest | 2 +- release/stable/5.4/cbios/standalone/index.html | 18 +++++++++++------- release/stable/5.4/embedded/wmsx.js | 16 ++++++++++------ release/stable/5.4/standalone/cache.manifest | 2 +- release/stable/5.4/standalone/index.html | 18 +++++++++++------- src/main/Launcher.js | 2 +- src/main/WMSX.js | 5 +++-- src/main/WMSXCBios.js | 5 +++-- src/runtime/standalone/cache.manifest | 2 +- src/runtime/standalone/index.base.html | 2 +- src/runtime/standalone/index.part2.html | 2 +- 14 files changed, 56 insertions(+), 38 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9aa90903..7f642375 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "WebMSX", - "version": "5.4.3", + "version": "5.4.4", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index b684e03b..e5971b71 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "WebMSX", "title": "WebMSX - The online MSX emulator", - "version": "5.4.3", + "version": "5.4.4", "devDependencies": { "grunt": "", "grunt-contrib-clean": "", diff --git a/release/stable/5.4/cbios/embedded/wmsx.js b/release/stable/5.4/cbios/embedded/wmsx.js index 939cf0f6..c5995458 100644 --- a/release/stable/5.4/cbios/embedded/wmsx.js +++ b/release/stable/5.4/cbios/embedded/wmsx.js @@ -1,4 +1,4 @@ -// WebMSX C-BIOS version 5.4.3 +// WebMSX C-BIOS version 5.4.4 // Copyright 2015 by Paulo Augusto Peccin. See license.txt distributed with this file. // Main Emulator parameters for C-BIOS variation. No FloppyDrive, Kanji and Moonsound support. Experimental HardDrive support. @@ -219,6 +219,10 @@ WMSX.PRESETS_CONFIG = { "EXTENSIONS_CONFIG.MSXMUSIC.SLOT": [2, 2] }, + // Boosted Machine Preset + + BOOSTED: { CPU_TURBO_MODE: 3, VDP_TURBO_MODE: 3, BOOT_DURATION_AUTO: 165, _INCLUDE: "HARDDISK" }, + // MSX2++ Machine Presets. Do not use directly _MSX2PPA: { @@ -322,13 +326,13 @@ WMSX.PRESETS_CONFIG = { _BASE: { CPU_TURBO_MODE: 0, - VDP_TURBO_MODE: 0, - VDP_TYPE: -1, - RTC_ACTIVE: -1 + VDP_TURBO_MODE: 0 } }; +WMSX.params = {}; // Additional parameter overrides + wmsx = window.wmsx || {}; // Namespace function onUpdateReady(){alert("A new version is available!\nWebMSX will restart..."),window.applicationCache.swapCache(),window.location.reload()}WMSXFullScreenSetup={apply:function(){if(!this.cssApplied){var a=document.createElement("style");a.type="text/css",a.innerHTML=this.css,document.head.appendChild(a),this.cssApplied=!0}document.documentElement.classList.toggle("wmsx-full-screen",this.shouldStartInFullScreen())},shouldStartInFullScreen:function(){return window.WMSX?WMSX.SCREEN_FULLSCREEN_MODE>=1||-1===WMSX.SCREEN_FULLSCREEN_MODE&&this.isBrowserStandaloneMode():this.isBrowserStandaloneMode()},isBrowserStandaloneMode:function(){return navigator.standalone||window.matchMedia("(display-mode: standalone)").matches},css:"html.wmsx-full-screen, html.wmsx-full-screen body { background: black;}html.wmsx-full-screen .wmsx-full-screen-hidden { display: none;}html:not(.wmsx-full-screen) .wmsx-full-screen-only { display: none;}"},WMSXFullScreenSetup.apply(),wmsx.Util=new function(){"use strict";function a(a,b){return a.nameb.name?1:0}function b(a){return a.stopPropagation(),a.cancelable&&a.preventDefault(),!1}this.log=function(a){var b=[">> wmsx:"];Array.prototype.push.apply(b,arguments),console.log.apply(console,b)},this.warning=function(a){var b=[">> wmsx Warning:"];Array.prototype.push.apply(b,arguments),console.warn.apply(console,b)},this.error=function(a){var b=[">> wmsx Error:"];Array.prototype.push.apply(b,arguments),console.error.apply(console,b)},this.message=function(a){console.info(a),alert(a)},this.asNormalArray=function(a,b,c){return!c&&a instanceof Array?a:c?this.arrayCopy(a,b,new Array(c)):this.arrayCopy(a,0,new Array(a.length))},this.arrayFill=function(a,b,c,d){if(a.fill)return a.fill(b,c,d);void 0===c&&(c=0);for(var e=(void 0===d?a.length:d)-1;e>=c;e-=1)a[e]=b;return a},this.arrayCopy=function(a,b,c,d,e){d=d||0;for(var f=e?b+e:a.length;b=0;)a.splice(c,1);return a},this.arraysConcatAll=function(a){for(var b=0,c=0;c>8&255);return d},this.byteStringToInt16BitArray=function(a,b){if(null===a||void 0===a)return a;if("null"==a)return null;if("undefined"!=a){for(var c=a.length/2|0,d=b&&b.length===c?b:new(b?b.constructor:Array)(c),e=0,f=0;e>8&255)+String.fromCharCode(a[e]>>16&255)+String.fromCharCode(a[e]>>24&255);return d},this.byteStringToInt32BitArray=function(a,b){if(null===a||void 0===a)return a;if("null"==a)return null;if("undefined"!=a){for(var c=a.length/4|0,d=b&&b.length===c?b:new(b?b.constructor:Array)(c),e=0,f=0;e=0&&b.length%2?"0"+b:b},this.toHex4=function(a){if(null===a||void 0===a)return a;var b=a.toString(16).toUpperCase();if(a<0)return b;switch(b.length){case 4:return b;case 3:return"0"+b;case 2:return"00"+b;case 1:return"000"+b;default:return b}},this.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/\?/g,"?").replace(/\-/g,"-").replace(/\|/g,"|")},this.arrayFind=function(a,b){if(a.find)return a.find(b);for(var c=0,d=a.length;c=0&&h=0){var f="SLOT"+d[0]+(d[1]||"")+"_FORMAT",g=c?WMSX[f]:null;delete WMSX[f],function(b,c,d){a[a.length]={url:b,onSuccess:function(a){WMSX.room.fileLoader.loadFromContentAsSlot(a.url,a.content,c,!0,d,!0)}}}(c||"@[Empty].rom",e,g)}}}}return a},mediaURLSpecs:function(){var a=wmsx.FileLoader.OPEN_TYPE;return[WMSX.AUTODETECT_URL&&{url:WMSX.AUTODETECT_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO,0,!0)}},WMSX.CARTRIDGE1_URL&&{url:WMSX.CARTRIDGE1_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,0,!0,!1,WMSX.CARTRIDGE1_FORMAT)}},WMSX.CARTRIDGE2_URL&&{url:WMSX.CARTRIDGE2_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,1,!0,!1,WMSX.CARTRIDGE2_FORMAT)}},WMSX.DISKA_URL&&{url:WMSX.DISKA_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,0,!0)}},!WMSX.DISKA_URL&&WMSX.DISKA_FILES_URL?{url:WMSX.DISKA_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,0,!0)}}:null,WMSX.DISKB_URL&&{url:WMSX.DISKB_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,1,!0)}},!WMSX.DISKB_URL&&WMSX.DISKB_FILES_URL?{url:WMSX.DISKB_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,1,!0)}}:null,WMSX.HARDDISK_URL&&{url:WMSX.HARDDISK_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,2,!0)}},!WMSX.HARDDISK_URL&&WMSX.HARDDISK_FILES_URL?{url:WMSX.HARDDISK_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,2,!0)}}:null,WMSX.TAPE_URL&&{url:WMSX.TAPE_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.TAPE,0,!0)}}]},extensionsInitialURLSpecs:function(){return WMSX.room.machine.getExtensionsSocket().getInitialLoaderURLSpecs()},detectDefaultMachine:function(){ -var a=WMSX.MACHINES_CONFIG[WMSX.MACHINE]&&WMSX.MACHINES_CONFIG[WMSX.MACHINE].AUTO_TYPE||3,b=wmsx.Util.userLanguage(),c="A";0===b.indexOf("ja")&&(c="J");var d=""+WMSX.MACHINE+c;if(!WMSX.MACHINES_CONFIG[d])for(d in WMSX.MACHINES_CONFIG)if(WMSX.MACHINES_CONFIG[d].TYPE<=a)break;return wmsx.Util.log("Machine auto-detection: "+d),d},saveState:function(){return{mc:WMSX.MACHINES_CONFIG,ec:WMSX.EXTENSIONS_CONFIG,pc:WMSX.PRESETS_CONFIG}},loadState:function(a,b){b?(WMSX.MACHINES_CONFIG=b.mc,WMSX.EXTENSIONS_CONFIG=b.ec,WMSX.PRESETS_CONFIG=b.pc):this.adaptForOldState(a);for(var c=0;c=0||this.listeners.push(a)},listeners:[],originalConfig:{},parameters:{},abbreviations:{E:"ENVIRONMENT",ENV:"ENVIRONMENT",M:"MACHINE",P:"PRESETS",PRESET:"PRESETS",ROM:"CARTRIDGE1_URL",CART:"CARTRIDGE1_URL",CART1:"CARTRIDGE1_URL",CART2:"CARTRIDGE2_URL",ROM_FORMAT:"CARTRIDGE1_FORMAT",CART_FORMAT:"CARTRIDGE1_FORMAT",CART1_FORMAT:"CARTRIDGE1_FORMAT",CART2_FORMAT:"CARTRIDGE2_FORMAT",DISK:"DISKA_URL",DISK_FILES:"DISKA_FILES_URL",DISKA:"DISKA_URL",DISKB:"DISKB_URL",DISKA_FILES:"DISKA_FILES_URL",DISKB_FILES:"DISKB_FILES_URL",HARDDISK:"HARDDISK_URL",HARDDISK_FILES:"HARDDISK_FILES_URL",TAPE:"TAPE_URL",RAM_SIZE:"RAMNORMAL_SIZE",ANY:"AUTODETECT_URL",AUTO:"AUTODETECT_URL",AUTODETECT:"AUTODETECT_URL",STATE:"STATE_URL",SAVESTATE:"STATE_URL",JOIN:"NETPLAY_JOIN",NICK:"NETPLAY_NICK",JOYSTICKS:"JOYSTICKS_MODE",JOYKEYS:"JOYKEYS_MODE",MOUSE:"MOUSE_MODE",TURBO:"CPU_TURBO_MODE",CPU_TURBO:"CPU_TURBO_MODE",VDP_TURBO:"VDP_TURBO_MODE",VERSION:"VERSION_CHANGE_ATTEMPTED"}},WMSX.start=function(a){"use strict";if(!WMSX.screenElement&&(WMSX.screenElement=document.getElementById(WMSX.SCREEN_ELEMENT_ID),!WMSX.screenElement))throw new Error('WMSX cannot be started. HTML document is missing screen element with id "'+WMSX.SCREEN_ELEMENT_ID+'"');delete WMSX.start,delete WMSX.preLoadImagesAndStart,wmsx.Configurator.applyConfig(function(){WMSX.userPreferences.load(),void 0===a&&(a=WMSX.AUTO_POWER_ON_DELAY>=0),WMSX.room=new wmsx.Room(WMSX.screenElement,a),WMSX.room.powerOn(),wmsx.Util.log("version "+WMSX.VERSION+" started"),wmsx.ROMDatabase.uncompress();var b=WMSX.NETPLAY_JOIN;if(!b&&WMSX.STATE_URL)new wmsx.MultiDownloader([{url:WMSX.STATE_URL}],function(a){WMSX.room.start(function(){WMSX.room.fileLoader.loadFromContent(a[0].url,a[0].content,wmsx.FileLoader.OPEN_TYPE.STATE,0,!1)})}).start();else{var c=wmsx.Configurator.slotURLSpecs(),d=wmsx.Configurator.extensionsInitialURLSpecs(),e=b?[]:wmsx.Configurator.mediaURLSpecs();new wmsx.MultiDownloader(c.concat(e).concat(d),function(){WMSX.room.start(b?function(){WMSX.room.getNetClient().joinSession(b,WMSX.NETPLAY_NICK)}:void 0)},function(a){wmsx.Util.message(a.errorMessage)}).start()}}),WMSX.shutdown=function(){WMSX.room&&WMSX.room.powerOff(),wmsx.Util.log("shutdown")}},WMSX.preLoadImagesAndStart=function(){function a(a){WMSX.start&&WMSX.AUTO_START&&(a||b&&0===c)&&WMSX.start()}var b=!1,c=wmsx.Images.embedded?0:wmsx.Images.count;if(document.addEventListener("DOMContentLoaded",function(){b=!0,a(!1)}),c>0)for(var d in wmsx.Images.urls){var e=new Image;e.src=wmsx.Images.urls[d],e.onload=function(){c--,a(!1)}}window.addEventListener("load",function(){a(!0)})},window.applicationCache&&(window.applicationCache.status===window.applicationCache.UPDATEREADY?onUpdateReady():window.applicationCache.addEventListener("updateready",onUpdateReady)),WMSX.VERSION="5.4.3",WMSX.preLoadImagesAndStart(); \ No newline at end of file +},wmsx.EmbeddedSystemFiles={embedFiles:function(){for(var a in wmsx.CompressedSystemFiles)wmsx.EmbeddedFiles.embedFileCompressedContent(a,wmsx.CompressedSystemFiles[a]);delete wmsx.CompressedSystemFiles;for(var b in this.fileDiffs)wmsx.EmbeddedFiles.embedFileDiff(b,this.fileDiffs[b])},fileDiffs:{"cbios_main_msx1_eu.rom":{based:"@cbios_main_msx1.rom",diffs:{43:[161],9629:[53]}},"cbios_main_msx2_eu.rom":{based:"@cbios_main_msx2.rom",diffs:{43:[161],4013:[2],9652:[53]}},"cbios_main_msx2+_eu.rom":{based:"@cbios_main_msx2+.rom",diffs:{43:[161],4013:[2],9652:[53]}}}},wmsx.EmbeddedSystemFiles.embedFiles(),wmsx.Configurator={applyConfig:function(a){this.backupOriginalConfig(),this.parseParams(),WMSX.params.CONFIG_URL&&this.applyParam("CONFIG_URL",WMSX.params.CONFIG_URL),WMSX.CONFIG_URL?this.readThenApplyConfigFile(a):this.applyConfigDetails(a)},readThenApplyConfigFile:function(a){var b=this;new wmsx.MultiDownloader([{url:WMSX.CONFIG_URL.trim()}],function(c){b.applyConfigFile(c[0].content,a)},function(a){return wmsx.Util.message(a.errorMessage)}).start()},applyConfigDetails:function(a){if(this.applyPresetsConfigModifications(),WMSX.params.MACHINE&&this.applyParam("MACHINE",WMSX.params.MACHINE),WMSX.MACHINE=WMSX.MACHINE.trim().toUpperCase(),WMSX.MACHINE&&!WMSX.MACHINES_CONFIG[WMSX.MACHINE])return wmsx.Util.message("Invalid Machine: "+WMSX.MACHINE);WMSX.MACHINES_CONFIG[WMSX.MACHINE]&&!WMSX.MACHINES_CONFIG[WMSX.MACHINE].AUTO_TYPE||(WMSX.MACHINE=this.detectDefaultMachine()),delete WMSX.params.MACHINE,this.applyFinalConfig(),WMSX.PAGE_BACK_CSS&&(document.body.style.background=WMSX.PAGE_BACK_CSS),!WMSX.HARDDISK_URL&&!WMSX.HARDDISK_FILES_URL||WMSX.EXTENSIONS.HARDDISK||(WMSX.EXTENSIONS.HARDDISK=1,WMSX.EXTENSIONS.DISK&&(WMSX.EXTENSIONS.DISK=2)),a()},applyFinalConfig:function(){this.applyPresets(WMSX.MACHINES_CONFIG[WMSX.MACHINE].PRESETS),this.applyPresets(WMSX.PRESETS);for(var a in WMSX.params)this.applyParam(a,WMSX.params[a]);this.normalizeParameterTypes()},applyPresets:function(a,b){for(var c=(a||"").trim().toUpperCase().split(","),d=0;d=0){var f="SLOT"+d[0]+(d[1]||"")+"_FORMAT",g=c?WMSX[f]:null;delete WMSX[f],function(b,c,d){a[a.length]={url:b,onSuccess:function(a){WMSX.room.fileLoader.loadFromContentAsSlot(a.url,a.content,c,!0,d,!0)}}}(c||"@[Empty].rom",e,g)}}}}return a},mediaURLSpecs:function(){var a=wmsx.FileLoader.OPEN_TYPE;return[WMSX.AUTODETECT_URL&&{url:WMSX.AUTODETECT_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO,0,!0)}},WMSX.CARTRIDGE1_URL&&{url:WMSX.CARTRIDGE1_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,0,!0,!1,WMSX.CARTRIDGE1_FORMAT)}},WMSX.CARTRIDGE2_URL&&{url:WMSX.CARTRIDGE2_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,1,!0,!1,WMSX.CARTRIDGE2_FORMAT)}},WMSX.DISKA_URL&&{url:WMSX.DISKA_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,0,!0)}},!WMSX.DISKA_URL&&WMSX.DISKA_FILES_URL?{url:WMSX.DISKA_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,0,!0)}}:null,WMSX.DISKB_URL&&{url:WMSX.DISKB_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,1,!0)}},!WMSX.DISKB_URL&&WMSX.DISKB_FILES_URL?{url:WMSX.DISKB_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,1,!0)}}:null,WMSX.HARDDISK_URL&&{url:WMSX.HARDDISK_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,2,!0)}},!WMSX.HARDDISK_URL&&WMSX.HARDDISK_FILES_URL?{url:WMSX.HARDDISK_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,2,!0)}}:null,WMSX.TAPE_URL&&{url:WMSX.TAPE_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.TAPE,0,!0)}}]},extensionsInitialURLSpecs:function(){return WMSX.room.machine.getExtensionsSocket().getInitialLoaderURLSpecs()}, +detectDefaultMachine:function(){var a=WMSX.MACHINES_CONFIG[WMSX.MACHINE]&&WMSX.MACHINES_CONFIG[WMSX.MACHINE].AUTO_TYPE||3,b=wmsx.Util.userLanguage(),c="A";0===b.indexOf("ja")&&(c="J");var d=""+WMSX.MACHINE+c;if(!WMSX.MACHINES_CONFIG[d])for(d in WMSX.MACHINES_CONFIG)if(WMSX.MACHINES_CONFIG[d].TYPE<=a)break;return wmsx.Util.log("Machine auto-detection: "+d),d},saveState:function(){return{mc:WMSX.MACHINES_CONFIG,ec:WMSX.EXTENSIONS_CONFIG,pc:WMSX.PRESETS_CONFIG}},loadState:function(a,b){b?(WMSX.MACHINES_CONFIG=b.mc,WMSX.EXTENSIONS_CONFIG=b.ec,WMSX.PRESETS_CONFIG=b.pc):this.adaptForOldState(a);for(var c=0;c=0||this.listeners.push(a)},listeners:[],originalConfig:{},abbreviations:{E:"ENVIRONMENT",ENV:"ENVIRONMENT",M:"MACHINE",P:"PRESETS",PRESET:"PRESETS",ROM:"CARTRIDGE1_URL",CART:"CARTRIDGE1_URL",CART1:"CARTRIDGE1_URL",CART2:"CARTRIDGE2_URL",ROM_FORMAT:"CARTRIDGE1_FORMAT",CART_FORMAT:"CARTRIDGE1_FORMAT",CART1_FORMAT:"CARTRIDGE1_FORMAT",CART2_FORMAT:"CARTRIDGE2_FORMAT",DISK:"DISKA_URL",DISK_FILES:"DISKA_FILES_URL",DISKA:"DISKA_URL",DISKB:"DISKB_URL",DISKA_FILES:"DISKA_FILES_URL",DISKB_FILES:"DISKB_FILES_URL",HARDDISK:"HARDDISK_URL",HARDDISK_FILES:"HARDDISK_FILES_URL",TAPE:"TAPE_URL",RAM_SIZE:"RAMNORMAL_SIZE",ANY:"AUTODETECT_URL",AUTO:"AUTODETECT_URL",AUTODETECT:"AUTODETECT_URL",STATE:"STATE_URL",SAVESTATE:"STATE_URL",JOIN:"NETPLAY_JOIN",NICK:"NETPLAY_NICK",JOYSTICKS:"JOYSTICKS_MODE",JOYKEYS:"JOYKEYS_MODE",MOUSE:"MOUSE_MODE",TURBO:"CPU_TURBO_MODE",CPU_TURBO:"CPU_TURBO_MODE",VDP_TURBO:"VDP_TURBO_MODE",VERSION:"VERSION_CHANGE_ATTEMPTED"}},WMSX.start=function(a){"use strict";if(!WMSX.screenElement&&(WMSX.screenElement=document.getElementById(WMSX.SCREEN_ELEMENT_ID),!WMSX.screenElement))throw new Error('WMSX cannot be started. HTML document is missing screen element with id "'+WMSX.SCREEN_ELEMENT_ID+'"');delete WMSX.start,delete WMSX.preLoadImagesAndStart,wmsx.Configurator.applyConfig(function(){WMSX.userPreferences.load(),void 0===a&&(a=WMSX.AUTO_POWER_ON_DELAY>=0),WMSX.room=new wmsx.Room(WMSX.screenElement,a),WMSX.room.powerOn(),wmsx.Util.log("version "+WMSX.VERSION+" started"),wmsx.ROMDatabase.uncompress();var b=WMSX.NETPLAY_JOIN;if(!b&&WMSX.STATE_URL)new wmsx.MultiDownloader([{url:WMSX.STATE_URL}],function(a){WMSX.room.start(function(){WMSX.room.fileLoader.loadFromContent(a[0].url,a[0].content,wmsx.FileLoader.OPEN_TYPE.STATE,0,!1)})}).start();else{var c=wmsx.Configurator.slotURLSpecs(),d=wmsx.Configurator.extensionsInitialURLSpecs(),e=b?[]:wmsx.Configurator.mediaURLSpecs();new wmsx.MultiDownloader(c.concat(e).concat(d),function(){WMSX.room.start(b?function(){WMSX.room.getNetClient().joinSession(b,WMSX.NETPLAY_NICK)}:void 0)},function(a){wmsx.Util.message(a.errorMessage)}).start()}}),WMSX.shutdown=function(){WMSX.room&&WMSX.room.powerOff(),wmsx.Util.log("shutdown")}},WMSX.preLoadImagesAndStart=function(){function a(a){WMSX.start&&WMSX.AUTO_START&&(a||b&&0===c)&&WMSX.start()}var b=!1,c=wmsx.Images.embedded?0:wmsx.Images.count;if(document.addEventListener("DOMContentLoaded",function(){b=!0,a(!1)}),c>0)for(var d in wmsx.Images.urls){var e=new Image;e.src=wmsx.Images.urls[d],e.onload=function(){c--,a(!1)}}window.addEventListener("load",function(){a(!0)})},window.applicationCache&&(window.applicationCache.status===window.applicationCache.UPDATEREADY?onUpdateReady():window.applicationCache.addEventListener("updateready",onUpdateReady)),WMSX.VERSION="5.4.4",WMSX.preLoadImagesAndStart(); \ No newline at end of file diff --git a/release/stable/5.4/cbios/standalone/cache.manifest b/release/stable/5.4/cbios/standalone/cache.manifest index ecfd7fe3..d0574b23 100644 --- a/release/stable/5.4/cbios/standalone/cache.manifest +++ b/release/stable/5.4/cbios/standalone/cache.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -# Version 5.4.3 +# Version 5.4.4 # Stable CACHE: diff --git a/release/stable/5.4/cbios/standalone/index.html b/release/stable/5.4/cbios/standalone/index.html index 27f8fa35..9a069c93 100644 --- a/release/stable/5.4/cbios/standalone/index.html +++ b/release/stable/5.4/cbios/standalone/index.html @@ -197,7 +197,7 @@
@@ -685,7 +689,7 @@

Created by Paulo A. Peccin MSX and the MSX logo are shown here as a tribute.

-

v5.4.3  Docs & Project Home +

v5.4.4  Docs & Project Home All trademarks are property of their respective owners.

diff --git a/release/stable/5.4/embedded/wmsx.js b/release/stable/5.4/embedded/wmsx.js index e06a91fa..6e8ea32e 100644 --- a/release/stable/5.4/embedded/wmsx.js +++ b/release/stable/5.4/embedded/wmsx.js @@ -1,4 +1,4 @@ -// WebMSX version 5.4.3 +// WebMSX version 5.4.4 // Copyright 2015 by Paulo Augusto Peccin. See license.txt distributed with this file. // Main Emulator parameters. @@ -236,6 +236,10 @@ WMSX.PRESETS_CONFIG = { "PRESETS_CONFIG.DISK": { "EXTENSIONS.DISK": 1 } }, + // Boosted Machine Preset + + BOOSTED: { CPU_TURBO_MODE: 3, VDP_TURBO_MODE: 3, BOOT_DURATION_AUTO: 165, _INCLUDE: "HARDDISK" }, + // MSX2++ Machine Presets. Do not use directly _MSX2PPA: { @@ -340,13 +344,13 @@ WMSX.PRESETS_CONFIG = { _BASE: { CPU_TURBO_MODE: 0, - VDP_TURBO_MODE: 0, - VDP_TYPE: -1, - RTC_ACTIVE: -1 + VDP_TURBO_MODE: 0 } }; +WMSX.params = {}; // Additional parameter overrides + wmsx = window.wmsx || {}; // Namespace function onUpdateReady(){alert("A new version is available!\nWebMSX will restart..."),window.applicationCache.swapCache(),window.location.reload()}WMSXFullScreenSetup={apply:function(){if(!this.cssApplied){var a=document.createElement("style");a.type="text/css",a.innerHTML=this.css,document.head.appendChild(a),this.cssApplied=!0}document.documentElement.classList.toggle("wmsx-full-screen",this.shouldStartInFullScreen())},shouldStartInFullScreen:function(){return window.WMSX?WMSX.SCREEN_FULLSCREEN_MODE>=1||-1===WMSX.SCREEN_FULLSCREEN_MODE&&this.isBrowserStandaloneMode():this.isBrowserStandaloneMode()},isBrowserStandaloneMode:function(){return navigator.standalone||window.matchMedia("(display-mode: standalone)").matches},css:"html.wmsx-full-screen, html.wmsx-full-screen body { background: black;}html.wmsx-full-screen .wmsx-full-screen-hidden { display: none;}html:not(.wmsx-full-screen) .wmsx-full-screen-only { display: none;}"},WMSXFullScreenSetup.apply(),wmsx.Util=new function(){"use strict";function a(a,b){return a.nameb.name?1:0}function b(a){return a.stopPropagation(),a.cancelable&&a.preventDefault(),!1}this.log=function(a){var b=[">> wmsx:"];Array.prototype.push.apply(b,arguments),console.log.apply(console,b)},this.warning=function(a){var b=[">> wmsx Warning:"];Array.prototype.push.apply(b,arguments),console.warn.apply(console,b)},this.error=function(a){var b=[">> wmsx Error:"];Array.prototype.push.apply(b,arguments),console.error.apply(console,b)},this.message=function(a){console.info(a),alert(a)},this.asNormalArray=function(a,b,c){return!c&&a instanceof Array?a:c?this.arrayCopy(a,b,new Array(c)):this.arrayCopy(a,0,new Array(a.length))},this.arrayFill=function(a,b,c,d){if(a.fill)return a.fill(b,c,d);void 0===c&&(c=0);for(var e=(void 0===d?a.length:d)-1;e>=c;e-=1)a[e]=b;return a},this.arrayCopy=function(a,b,c,d,e){d=d||0;for(var f=e?b+e:a.length;b=0;)a.splice(c,1);return a},this.arraysConcatAll=function(a){for(var b=0,c=0;c>8&255);return d},this.byteStringToInt16BitArray=function(a,b){if(null===a||void 0===a)return a;if("null"==a)return null;if("undefined"!=a){for(var c=a.length/2|0,d=b&&b.length===c?b:new(b?b.constructor:Array)(c),e=0,f=0;e>8&255)+String.fromCharCode(a[e]>>16&255)+String.fromCharCode(a[e]>>24&255);return d},this.byteStringToInt32BitArray=function(a,b){if(null===a||void 0===a)return a;if("null"==a)return null;if("undefined"!=a){for(var c=a.length/4|0,d=b&&b.length===c?b:new(b?b.constructor:Array)(c),e=0,f=0;e=0&&b.length%2?"0"+b:b},this.toHex4=function(a){if(null===a||void 0===a)return a;var b=a.toString(16).toUpperCase();if(a<0)return b;switch(b.length){case 4:return b;case 3:return"0"+b;case 2:return"00"+b;case 1:return"000"+b;default:return b}},this.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/\?/g,"?").replace(/\-/g,"-").replace(/\|/g,"|")},this.arrayFind=function(a,b){if(a.find)return a.find(b);for(var c=0,d=a.length;c=0&&h=0){var f="SLOT"+d[0]+(d[1]||"")+"_FORMAT",g=c?WMSX[f]:null;delete WMSX[f],function(b,c,d){a[a.length]={url:b,onSuccess:function(a){WMSX.room.fileLoader.loadFromContentAsSlot(a.url,a.content,c,!0,d,!0)}}}(c||"@[Empty].rom",e,g)}}}}return a},mediaURLSpecs:function(){var a=wmsx.FileLoader.OPEN_TYPE;return[WMSX.AUTODETECT_URL&&{url:WMSX.AUTODETECT_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO,0,!0)}},WMSX.CARTRIDGE1_URL&&{url:WMSX.CARTRIDGE1_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,0,!0,!1,WMSX.CARTRIDGE1_FORMAT)}},WMSX.CARTRIDGE2_URL&&{url:WMSX.CARTRIDGE2_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,1,!0,!1,WMSX.CARTRIDGE2_FORMAT)}},WMSX.DISKA_URL&&{url:WMSX.DISKA_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,0,!0)}},!WMSX.DISKA_URL&&WMSX.DISKA_FILES_URL?{url:WMSX.DISKA_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,0,!0)}}:null,WMSX.DISKB_URL&&{url:WMSX.DISKB_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,1,!0)}},!WMSX.DISKB_URL&&WMSX.DISKB_FILES_URL?{url:WMSX.DISKB_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,1,!0)}}:null,WMSX.HARDDISK_URL&&{url:WMSX.HARDDISK_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,2,!0)}},!WMSX.HARDDISK_URL&&WMSX.HARDDISK_FILES_URL?{url:WMSX.HARDDISK_FILES_URL,onSuccess:function(b){ -WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,2,!0)}}:null,WMSX.TAPE_URL&&{url:WMSX.TAPE_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.TAPE,0,!0)}}]},extensionsInitialURLSpecs:function(){return WMSX.room.machine.getExtensionsSocket().getInitialLoaderURLSpecs()},detectDefaultMachine:function(){var a=WMSX.MACHINES_CONFIG[WMSX.MACHINE]&&WMSX.MACHINES_CONFIG[WMSX.MACHINE].AUTO_TYPE||3,b=wmsx.Util.userLanguage(),c="A";0===b.indexOf("ja")&&(c="J");var d=""+WMSX.MACHINE+c;if(!WMSX.MACHINES_CONFIG[d])for(d in WMSX.MACHINES_CONFIG)if(WMSX.MACHINES_CONFIG[d].TYPE<=a)break;return wmsx.Util.log("Machine auto-detection: "+d),d},saveState:function(){return{mc:WMSX.MACHINES_CONFIG,ec:WMSX.EXTENSIONS_CONFIG,pc:WMSX.PRESETS_CONFIG}},loadState:function(a,b){b?(WMSX.MACHINES_CONFIG=b.mc,WMSX.EXTENSIONS_CONFIG=b.ec,WMSX.PRESETS_CONFIG=b.pc):this.adaptForOldState(a);for(var c=0;c=0||this.listeners.push(a)},listeners:[],originalConfig:{},parameters:{},abbreviations:{E:"ENVIRONMENT",ENV:"ENVIRONMENT",M:"MACHINE",P:"PRESETS",PRESET:"PRESETS",ROM:"CARTRIDGE1_URL",CART:"CARTRIDGE1_URL",CART1:"CARTRIDGE1_URL",CART2:"CARTRIDGE2_URL",ROM_FORMAT:"CARTRIDGE1_FORMAT",CART_FORMAT:"CARTRIDGE1_FORMAT",CART1_FORMAT:"CARTRIDGE1_FORMAT",CART2_FORMAT:"CARTRIDGE2_FORMAT",DISK:"DISKA_URL",DISK_FILES:"DISKA_FILES_URL",DISKA:"DISKA_URL",DISKB:"DISKB_URL",DISKA_FILES:"DISKA_FILES_URL",DISKB_FILES:"DISKB_FILES_URL",HARDDISK:"HARDDISK_URL",HARDDISK_FILES:"HARDDISK_FILES_URL",TAPE:"TAPE_URL",RAM_SIZE:"RAMNORMAL_SIZE",ANY:"AUTODETECT_URL",AUTO:"AUTODETECT_URL",AUTODETECT:"AUTODETECT_URL",STATE:"STATE_URL",SAVESTATE:"STATE_URL",JOIN:"NETPLAY_JOIN",NICK:"NETPLAY_NICK",JOYSTICKS:"JOYSTICKS_MODE",JOYKEYS:"JOYKEYS_MODE",MOUSE:"MOUSE_MODE",TURBO:"CPU_TURBO_MODE",CPU_TURBO:"CPU_TURBO_MODE",VDP_TURBO:"VDP_TURBO_MODE",VERSION:"VERSION_CHANGE_ATTEMPTED"}},WMSX.start=function(a){"use strict";if(!WMSX.screenElement&&(WMSX.screenElement=document.getElementById(WMSX.SCREEN_ELEMENT_ID),!WMSX.screenElement))throw new Error('WMSX cannot be started. HTML document is missing screen element with id "'+WMSX.SCREEN_ELEMENT_ID+'"');delete WMSX.start,delete WMSX.preLoadImagesAndStart,wmsx.Configurator.applyConfig(function(){WMSX.userPreferences.load(),void 0===a&&(a=WMSX.AUTO_POWER_ON_DELAY>=0),WMSX.room=new wmsx.Room(WMSX.screenElement,a),WMSX.room.powerOn(),wmsx.Util.log("version "+WMSX.VERSION+" started"),wmsx.ROMDatabase.uncompress();var b=WMSX.NETPLAY_JOIN;if(!b&&WMSX.STATE_URL)new wmsx.MultiDownloader([{url:WMSX.STATE_URL}],function(a){WMSX.room.start(function(){WMSX.room.fileLoader.loadFromContent(a[0].url,a[0].content,wmsx.FileLoader.OPEN_TYPE.STATE,0,!1)})}).start();else{var c=wmsx.Configurator.slotURLSpecs(),d=wmsx.Configurator.extensionsInitialURLSpecs(),e=b?[]:wmsx.Configurator.mediaURLSpecs();new wmsx.MultiDownloader(c.concat(e).concat(d),function(){WMSX.room.start(b?function(){WMSX.room.getNetClient().joinSession(b,WMSX.NETPLAY_NICK)}:void 0)},function(a){wmsx.Util.message(a.errorMessage)}).start()}}),WMSX.shutdown=function(){WMSX.room&&WMSX.room.powerOff(),wmsx.Util.log("shutdown")}},WMSX.preLoadImagesAndStart=function(){function a(a){WMSX.start&&WMSX.AUTO_START&&(a||b&&0===c)&&WMSX.start()}var b=!1,c=wmsx.Images.embedded?0:wmsx.Images.count;if(document.addEventListener("DOMContentLoaded",function(){b=!0,a(!1)}),c>0)for(var d in wmsx.Images.urls){var e=new Image;e.src=wmsx.Images.urls[d],e.onload=function(){c--,a(!1)}}window.addEventListener("load",function(){a(!0)})},window.applicationCache&&(window.applicationCache.status===window.applicationCache.UPDATEREADY?onUpdateReady():window.applicationCache.addEventListener("updateready",onUpdateReady)),WMSX.VERSION="5.4.3",WMSX.preLoadImagesAndStart(); \ No newline at end of file +"[ExtraPSG].rom":""},wmsx.EmbeddedSystemFiles={embedFiles:function(){for(var a in wmsx.CompressedSystemFiles)wmsx.EmbeddedFiles.embedFileCompressedContent(a,wmsx.CompressedSystemFiles[a]);delete wmsx.CompressedSystemFiles;for(var b in this.fileDiffs)wmsx.EmbeddedFiles.embedFileDiff(b,this.fileDiffs[b])},fileDiffs:{"MSX1_NTSC.bios":{based:"@MSX1_PAL.bios",diffs:{43:[17],30548:[64,0,69,20]}},"MSX2_NTSC.bios":{based:"@MSX2_PAL.bios",diffs:{43:[17],31703:[0],30548:[64,0,69,20]}},"MSX2EXT_NTSC.bios":{based:"@MSX2EXT_PAL.bios",diffs:{10751:[0],11094:[0]}},"MSX2PEXT_PAL.bios":{based:"@MSX2PEXT_JAP.bios",diffs:{1406:[0,5,2,15,4,4],11363:[2]}},"MSX2P_NTSC.bios":{based:"@MSX2P_PAL.bios",diffs:{43:[17],30548:[64,0,69,20]}},"MSX2PEXT_NTSC.bios":{based:"@MSX2PEXT_PAL.bios",diffs:{11363:[0]}},"KanjiBasic_PAL.bios":{based:"@KanjiBasic.bios",diffs:{15515:[2]}},"[KanjiBasic].bios":{based:"@KanjiBasic.bios",diffs:{}}}},wmsx.EmbeddedSystemFiles.embedFiles(),wmsx.Configurator={applyConfig:function(a){this.backupOriginalConfig(),this.parseParams(),WMSX.params.CONFIG_URL&&this.applyParam("CONFIG_URL",WMSX.params.CONFIG_URL),WMSX.CONFIG_URL?this.readThenApplyConfigFile(a):this.applyConfigDetails(a)},readThenApplyConfigFile:function(a){var b=this;new wmsx.MultiDownloader([{url:WMSX.CONFIG_URL.trim()}],function(c){b.applyConfigFile(c[0].content,a)},function(a){return wmsx.Util.message(a.errorMessage)}).start()},applyConfigDetails:function(a){if(this.applyPresetsConfigModifications(),WMSX.params.MACHINE&&this.applyParam("MACHINE",WMSX.params.MACHINE),WMSX.MACHINE=WMSX.MACHINE.trim().toUpperCase(),WMSX.MACHINE&&!WMSX.MACHINES_CONFIG[WMSX.MACHINE])return wmsx.Util.message("Invalid Machine: "+WMSX.MACHINE);WMSX.MACHINES_CONFIG[WMSX.MACHINE]&&!WMSX.MACHINES_CONFIG[WMSX.MACHINE].AUTO_TYPE||(WMSX.MACHINE=this.detectDefaultMachine()),delete WMSX.params.MACHINE,this.applyFinalConfig(),WMSX.PAGE_BACK_CSS&&(document.body.style.background=WMSX.PAGE_BACK_CSS),!WMSX.HARDDISK_URL&&!WMSX.HARDDISK_FILES_URL||WMSX.EXTENSIONS.HARDDISK||(WMSX.EXTENSIONS.HARDDISK=1,WMSX.EXTENSIONS.DISK&&(WMSX.EXTENSIONS.DISK=2)),a()},applyFinalConfig:function(){this.applyPresets(WMSX.MACHINES_CONFIG[WMSX.MACHINE].PRESETS),this.applyPresets(WMSX.PRESETS);for(var a in WMSX.params)this.applyParam(a,WMSX.params[a]);this.normalizeParameterTypes()},applyPresets:function(a,b){for(var c=(a||"").trim().toUpperCase().split(","),d=0;d=0){var f="SLOT"+d[0]+(d[1]||"")+"_FORMAT",g=c?WMSX[f]:null;delete WMSX[f],function(b,c,d){a[a.length]={url:b,onSuccess:function(a){WMSX.room.fileLoader.loadFromContentAsSlot(a.url,a.content,c,!0,d,!0)}}}(c||"@[Empty].rom",e,g)}}}}return a},mediaURLSpecs:function(){var a=wmsx.FileLoader.OPEN_TYPE;return[WMSX.AUTODETECT_URL&&{url:WMSX.AUTODETECT_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO,0,!0)}},WMSX.CARTRIDGE1_URL&&{url:WMSX.CARTRIDGE1_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,0,!0,!1,WMSX.CARTRIDGE1_FORMAT)}},WMSX.CARTRIDGE2_URL&&{url:WMSX.CARTRIDGE2_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.ROM,1,!0,!1,WMSX.CARTRIDGE2_FORMAT)}},WMSX.DISKA_URL&&{url:WMSX.DISKA_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,0,!0)}},!WMSX.DISKA_URL&&WMSX.DISKA_FILES_URL?{url:WMSX.DISKA_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,0,!0)}}:null,WMSX.DISKB_URL&&{url:WMSX.DISKB_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,1,!0)}},!WMSX.DISKB_URL&&WMSX.DISKB_FILES_URL?{url:WMSX.DISKB_FILES_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,1,!0)}}:null,WMSX.HARDDISK_URL&&{url:WMSX.HARDDISK_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.DISK,2,!0)}},!WMSX.HARDDISK_URL&&WMSX.HARDDISK_FILES_URL?{url:WMSX.HARDDISK_FILES_URL,onSuccess:function(b){ +WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.AUTO_AS_DISK,2,!0)}}:null,WMSX.TAPE_URL&&{url:WMSX.TAPE_URL,onSuccess:function(b){WMSX.room.fileLoader.loadFromContent(b.url,b.content,a.TAPE,0,!0)}}]},extensionsInitialURLSpecs:function(){return WMSX.room.machine.getExtensionsSocket().getInitialLoaderURLSpecs()},detectDefaultMachine:function(){var a=WMSX.MACHINES_CONFIG[WMSX.MACHINE]&&WMSX.MACHINES_CONFIG[WMSX.MACHINE].AUTO_TYPE||3,b=wmsx.Util.userLanguage(),c="A";0===b.indexOf("ja")&&(c="J");var d=""+WMSX.MACHINE+c;if(!WMSX.MACHINES_CONFIG[d])for(d in WMSX.MACHINES_CONFIG)if(WMSX.MACHINES_CONFIG[d].TYPE<=a)break;return wmsx.Util.log("Machine auto-detection: "+d),d},saveState:function(){return{mc:WMSX.MACHINES_CONFIG,ec:WMSX.EXTENSIONS_CONFIG,pc:WMSX.PRESETS_CONFIG}},loadState:function(a,b){b?(WMSX.MACHINES_CONFIG=b.mc,WMSX.EXTENSIONS_CONFIG=b.ec,WMSX.PRESETS_CONFIG=b.pc):this.adaptForOldState(a);for(var c=0;c=0||this.listeners.push(a)},listeners:[],originalConfig:{},abbreviations:{E:"ENVIRONMENT",ENV:"ENVIRONMENT",M:"MACHINE",P:"PRESETS",PRESET:"PRESETS",ROM:"CARTRIDGE1_URL",CART:"CARTRIDGE1_URL",CART1:"CARTRIDGE1_URL",CART2:"CARTRIDGE2_URL",ROM_FORMAT:"CARTRIDGE1_FORMAT",CART_FORMAT:"CARTRIDGE1_FORMAT",CART1_FORMAT:"CARTRIDGE1_FORMAT",CART2_FORMAT:"CARTRIDGE2_FORMAT",DISK:"DISKA_URL",DISK_FILES:"DISKA_FILES_URL",DISKA:"DISKA_URL",DISKB:"DISKB_URL",DISKA_FILES:"DISKA_FILES_URL",DISKB_FILES:"DISKB_FILES_URL",HARDDISK:"HARDDISK_URL",HARDDISK_FILES:"HARDDISK_FILES_URL",TAPE:"TAPE_URL",RAM_SIZE:"RAMNORMAL_SIZE",ANY:"AUTODETECT_URL",AUTO:"AUTODETECT_URL",AUTODETECT:"AUTODETECT_URL",STATE:"STATE_URL",SAVESTATE:"STATE_URL",JOIN:"NETPLAY_JOIN",NICK:"NETPLAY_NICK",JOYSTICKS:"JOYSTICKS_MODE",JOYKEYS:"JOYKEYS_MODE",MOUSE:"MOUSE_MODE",TURBO:"CPU_TURBO_MODE",CPU_TURBO:"CPU_TURBO_MODE",VDP_TURBO:"VDP_TURBO_MODE",VERSION:"VERSION_CHANGE_ATTEMPTED"}},WMSX.start=function(a){"use strict";if(!WMSX.screenElement&&(WMSX.screenElement=document.getElementById(WMSX.SCREEN_ELEMENT_ID),!WMSX.screenElement))throw new Error('WMSX cannot be started. HTML document is missing screen element with id "'+WMSX.SCREEN_ELEMENT_ID+'"');delete WMSX.start,delete WMSX.preLoadImagesAndStart,wmsx.Configurator.applyConfig(function(){WMSX.userPreferences.load(),void 0===a&&(a=WMSX.AUTO_POWER_ON_DELAY>=0),WMSX.room=new wmsx.Room(WMSX.screenElement,a),WMSX.room.powerOn(),wmsx.Util.log("version "+WMSX.VERSION+" started"),wmsx.ROMDatabase.uncompress();var b=WMSX.NETPLAY_JOIN;if(!b&&WMSX.STATE_URL)new wmsx.MultiDownloader([{url:WMSX.STATE_URL}],function(a){WMSX.room.start(function(){WMSX.room.fileLoader.loadFromContent(a[0].url,a[0].content,wmsx.FileLoader.OPEN_TYPE.STATE,0,!1)})}).start();else{var c=wmsx.Configurator.slotURLSpecs(),d=wmsx.Configurator.extensionsInitialURLSpecs(),e=b?[]:wmsx.Configurator.mediaURLSpecs();new wmsx.MultiDownloader(c.concat(e).concat(d),function(){WMSX.room.start(b?function(){WMSX.room.getNetClient().joinSession(b,WMSX.NETPLAY_NICK)}:void 0)},function(a){wmsx.Util.message(a.errorMessage)}).start()}}),WMSX.shutdown=function(){WMSX.room&&WMSX.room.powerOff(),wmsx.Util.log("shutdown")}},WMSX.preLoadImagesAndStart=function(){function a(a){WMSX.start&&WMSX.AUTO_START&&(a||b&&0===c)&&WMSX.start()}var b=!1,c=wmsx.Images.embedded?0:wmsx.Images.count;if(document.addEventListener("DOMContentLoaded",function(){b=!0,a(!1)}),c>0)for(var d in wmsx.Images.urls){var e=new Image;e.src=wmsx.Images.urls[d],e.onload=function(){c--,a(!1)}}window.addEventListener("load",function(){a(!0)})},window.applicationCache&&(window.applicationCache.status===window.applicationCache.UPDATEREADY?onUpdateReady():window.applicationCache.addEventListener("updateready",onUpdateReady)),WMSX.VERSION="5.4.4",WMSX.preLoadImagesAndStart(); \ No newline at end of file diff --git a/release/stable/5.4/standalone/cache.manifest b/release/stable/5.4/standalone/cache.manifest index ecfd7fe3..d0574b23 100644 --- a/release/stable/5.4/standalone/cache.manifest +++ b/release/stable/5.4/standalone/cache.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -# Version 5.4.3 +# Version 5.4.4 # Stable CACHE: diff --git a/release/stable/5.4/standalone/index.html b/release/stable/5.4/standalone/index.html index 0472ec87..c2b8df1c 100644 --- a/release/stable/5.4/standalone/index.html +++ b/release/stable/5.4/standalone/index.html @@ -197,7 +197,7 @@
@@ -709,7 +713,7 @@

Created by Paulo A. Peccin MSX and the MSX logo are shown here as a tribute.

-

v5.4.3  Docs & Project Home +

v5.4.4  Docs & Project Home All trademarks are property of their respective owners.

diff --git a/src/main/Launcher.js b/src/main/Launcher.js index 793efe39..1ab0ac1f 100644 --- a/src/main/Launcher.js +++ b/src/main/Launcher.js @@ -114,7 +114,7 @@ if (window.applicationCache) { else window.applicationCache.addEventListener("updateready", onUpdateReady); } -WMSX.VERSION = "5.4.3"; +WMSX.VERSION = "5.4.4"; // Start pre-loading images right away WMSX.preLoadImagesAndStart(); diff --git a/src/main/WMSX.js b/src/main/WMSX.js index ca9c6b65..905c42fa 100644 --- a/src/main/WMSX.js +++ b/src/main/WMSX.js @@ -1,4 +1,4 @@ -// WebMSX version 5.4.3 +// WebMSX version 5.4.4 // Copyright 2015 by Paulo Augusto Peccin. See license.txt distributed with this file. // Main Emulator parameters. @@ -119,6 +119,7 @@ WMSX = { }; WMSX.MACHINES_CONFIG = { + // MSX2++ WILL BE REMOVED in future releases MSX2PP: { DESCX: "MSX2++ Auto Detect", AUTO_TYPE: 4 }, MSX2P: { DESCX: "MSX2+ Auto Detect", AUTO_TYPE: 3 }, MSX2: { DESCX: "MSX2 Auto Detect", AUTO_TYPE: 2 }, @@ -240,7 +241,7 @@ WMSX.PRESETS_CONFIG = { BOOSTED: { CPU_TURBO_MODE: 3, VDP_TURBO_MODE: 3, BOOT_DURATION_AUTO: 165, _INCLUDE: "HARDDISK" }, - // MSX2++ Machine Presets. Do not use directly + // MSX2++ Machine Presets. Do not use directly. WILL BE REMOVED in future releases _MSX2PPA: { _INCLUDE: "_MSX2PA, _MSX2PPBASE", diff --git a/src/main/WMSXCBios.js b/src/main/WMSXCBios.js index 6a3f90a0..15508da7 100644 --- a/src/main/WMSXCBios.js +++ b/src/main/WMSXCBios.js @@ -1,4 +1,4 @@ -// WebMSX C-BIOS version 5.4.3 +// WebMSX C-BIOS version 5.4.4 // Copyright 2015 by Paulo Augusto Peccin. See license.txt distributed with this file. // Main Emulator parameters for C-BIOS variation. No FloppyDrive, Kanji and Moonsound support. Experimental HardDrive support. @@ -119,6 +119,7 @@ WMSX = { }; WMSX.MACHINES_CONFIG = { + // MSX2++ WILL BE REMOVED in future releases MSX2PP: { DESCX: "MSX2++ Auto Detect", AUTO_TYPE: 4 }, MSX2P: { DESCX: "MSX2+ Auto Detect", AUTO_TYPE: 3 }, MSX2: { DESCX: "MSX2 Auto Detect", AUTO_TYPE: 2 }, @@ -223,7 +224,7 @@ WMSX.PRESETS_CONFIG = { BOOSTED: { CPU_TURBO_MODE: 3, VDP_TURBO_MODE: 3, BOOT_DURATION_AUTO: 165, _INCLUDE: "HARDDISK" }, - // MSX2++ Machine Presets. Do not use directly + // MSX2++ Machine Presets. Do not use directly. WILL BE REMOVED in future releases _MSX2PPA: { _INCLUDE: "_MSX2PA, _MSX2PPBASE", diff --git a/src/runtime/standalone/cache.manifest b/src/runtime/standalone/cache.manifest index ecfd7fe3..d0574b23 100644 --- a/src/runtime/standalone/cache.manifest +++ b/src/runtime/standalone/cache.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -# Version 5.4.3 +# Version 5.4.4 # Stable CACHE: diff --git a/src/runtime/standalone/index.base.html b/src/runtime/standalone/index.base.html index cfb890b1..8a6244ab 100644 --- a/src/runtime/standalone/index.base.html +++ b/src/runtime/standalone/index.base.html @@ -242,7 +242,7 @@

Created by Paulo A. Peccin MSX and the MSX logo are shown here as a tribute.

-

v5.4.3  Docs & Project Home +

v5.4.4  Docs & Project Home All trademarks are property of their respective owners.

diff --git a/src/runtime/standalone/index.part2.html b/src/runtime/standalone/index.part2.html index c35e6436..ecd390f6 100644 --- a/src/runtime/standalone/index.part2.html +++ b/src/runtime/standalone/index.part2.html @@ -46,7 +46,7 @@

Created by Paulo A. Peccin MSX and the MSX logo are shown here as a tribute.

-

v5.4.3  Docs & Project Home +

v5.4.4  Docs & Project Home All trademarks are property of their respective owners.