2017-03-14 20:32:40 +01:00
|
|
|
<!DOCTYPE html>
|
2018-04-23 20:41:21 +02:00
|
|
|
<html>
|
2017-03-14 20:32:40 +01:00
|
|
|
<head>
|
2018-04-28 15:57:54 +02:00
|
|
|
<title>Rom Patcher JS</title>
|
2017-03-14 20:32:40 +01:00
|
|
|
<meta http-equiv="content-Type" content="text/html; charset=UTF-8"/>
|
2019-04-17 21:43:53 +02:00
|
|
|
<meta name="description" content="An online web-based ROM patcher. Supported formats: IPS, BPS, UPS, APS, RUP, PPF and xdelta."/>
|
|
|
|
<meta name="keywords" content="ips,ups,aps,bps,rup,ninja,ppf,xdelta,patcher,online,html5,web,rom,patch,hack,translation"/>
|
2017-03-14 20:32:40 +01:00
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
2018-04-28 15:57:54 +02:00
|
|
|
<link rel="manifest" href="./manifest.json"/>
|
2018-04-29 11:12:54 +02:00
|
|
|
<link rel="shortcut icon" href="./favicon.png" type="image/png" sizes="16x16"/>
|
|
|
|
<link rel="shortcut icon" href="./logo192.png" type="image/png" sizes="192x192"/>
|
|
|
|
<!-- <link rel="apple-touch-icon" href="./logo192.png" sizes="192x192" /> -->
|
2017-07-22 11:58:52 +02:00
|
|
|
<link type="text/css" rel="stylesheet" href="./RomPatcher.css" media="all"/>
|
2019-04-17 21:43:53 +02:00
|
|
|
<script type="text/javascript" src="./locale.js"></script>
|
2017-07-22 11:58:52 +02:00
|
|
|
<script type="text/javascript" src="./RomPatcher.js"></script>
|
2019-04-17 21:43:53 +02:00
|
|
|
<script type="text/javascript" src="./MarcFile.js"></script>
|
|
|
|
<script type="text/javascript" src="./crc.js"></script>
|
2017-07-22 11:58:52 +02:00
|
|
|
<script type="text/javascript" src="./ips.js"></script>
|
|
|
|
<script type="text/javascript" src="./ups.js"></script>
|
2017-07-23 12:33:13 +02:00
|
|
|
<script type="text/javascript" src="./aps.js"></script>
|
2017-11-03 09:43:29 +01:00
|
|
|
<script type="text/javascript" src="./bps.js"></script>
|
2019-04-17 21:43:53 +02:00
|
|
|
<script type="text/javascript" src="./rup.js"></script>
|
|
|
|
<script type="text/javascript" src="./ppf.js"></script>
|
|
|
|
<script type="text/javascript" src="./vcdiff.js"></script>
|
|
|
|
<script type="text/javascript"><!--
|
|
|
|
//uncomment the following lines to enable predefined patches, example should be self explanatory
|
|
|
|
/*var PREDEFINED_PATCHES=[
|
|
|
|
{patch:'./_example/SONICDX.xdelta',name:'Sonic 3D Blast Director\'s Cut v1.1',crc:0x44a2ca44},
|
|
|
|
{patch:'./_example/SML2DXv181.ips',name:'Super Mario Land 2 DX v1.81',crc:0xd5ec24e4}
|
|
|
|
];*/
|
|
|
|
--></script>
|
2017-03-14 20:32:40 +01:00
|
|
|
</head>
|
2018-05-11 12:58:11 +02:00
|
|
|
<body><div id="column">
|
2017-03-14 20:32:40 +01:00
|
|
|
|
2017-07-22 19:57:15 +02:00
|
|
|
|
2017-03-14 20:32:40 +01:00
|
|
|
<!-- HEADER -->
|
2019-04-17 21:43:53 +02:00
|
|
|
<header><img src="logo192.png" /><h1>Rom Patcher JS</h1></header>
|
2017-03-14 20:32:40 +01:00
|
|
|
|
2017-07-22 19:57:15 +02:00
|
|
|
<!-- APP -->
|
2018-04-28 15:57:54 +02:00
|
|
|
<div id="wrapper">
|
2019-04-17 21:43:53 +02:00
|
|
|
<div id="switch-container"><span id="switch-create-button" onclick="setCreatorMode(!/enabled/.test(el('switch-create').className));"><span data-localize="creator_mode">Creator mode</span> <span id="switch-create" class="switch disabled"></span></span></div>
|
2018-04-28 15:57:54 +02:00
|
|
|
|
|
|
|
<div id="tab0" class="tab">
|
2017-03-14 20:32:40 +01:00
|
|
|
<div class="row">
|
2019-04-17 21:43:53 +02:00
|
|
|
<div class="leftcol"><label for="input-file-rom" data-localize="rom_file">ROM file:</label></div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="rightcol">
|
2019-04-17 21:43:53 +02:00
|
|
|
<input type="file" id="input-file-rom" class="enabled" />
|
2017-11-12 16:29:14 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="row" id="rom-info">
|
|
|
|
<div class="leftcol">CRC32:</div><div class="rightcol"><span id="crc32"></span></div>
|
|
|
|
<div class="leftcol">MD5:</div><div class="rightcol"><span id="md5"></span></div>
|
|
|
|
<div class="leftcol">SHA-1:</div><div class="rightcol"><span id="sha1"></span></div>
|
|
|
|
</div>
|
2017-11-12 16:29:14 +01:00
|
|
|
<div class="row" id="row-removeheader" style="display:none">
|
2019-04-17 21:43:53 +02:00
|
|
|
<div class="leftcol"><label for="checkbox-removeheader" data-localize="remove_header">Remove header before patching:</label></div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="rightcol">
|
2017-11-12 16:29:14 +01:00
|
|
|
<input type="checkbox" id="checkbox-removeheader" />
|
2017-03-14 20:32:40 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
2018-04-23 20:41:21 +02:00
|
|
|
<div class="row" id="row-addheader" style="display:none">
|
2019-04-17 21:43:53 +02:00
|
|
|
<div class="leftcol"><label for="checkbox-addheader" data-localize="add_header">Add temporary header:</label></div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="rightcol">
|
2019-04-17 21:43:53 +02:00
|
|
|
<input type="checkbox" id="checkbox-addheader" /> <label id="headersize" for="checkbox-addheader"></label>
|
2018-04-23 20:41:21 +02:00
|
|
|
</div>
|
|
|
|
</div>
|
2017-03-14 20:32:40 +01:00
|
|
|
|
2019-04-17 21:43:53 +02:00
|
|
|
<div class="row" id="row-file-patch">
|
|
|
|
<div class="leftcol"><label for="input-file-patch" data-localize="patch_file">Patch file:</label></div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="rightcol">
|
2019-04-17 21:43:53 +02:00
|
|
|
<input type="file" id="input-file-patch" accept=".ips,.ups,.bps,.aps,.rup,.ppf,.xdelta"/>
|
2017-03-14 20:32:40 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="buttons">
|
2019-04-17 21:43:53 +02:00
|
|
|
<span id="message-apply" class="message"></span>
|
|
|
|
<button id="button-apply" data-localize="apply_patch" class="disabled" disabled onclick="applyPatch(patch, romFile, !/error/.test(el('message-apply').className))">Apply patch</button>
|
2017-03-14 20:32:40 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
2018-04-28 15:57:54 +02:00
|
|
|
<div id="tab1" class="tab">
|
2017-03-14 20:32:40 +01:00
|
|
|
<div class="row">
|
2019-04-17 21:43:53 +02:00
|
|
|
<div class="leftcol"><label for="input-file-rom1" data-localize="original_rom" >Original ROM:</label></div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="rightcol">
|
2017-07-22 11:58:52 +02:00
|
|
|
<input type="file" id="input-file-rom1" />
|
2017-03-14 20:32:40 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="row">
|
2019-04-17 21:43:53 +02:00
|
|
|
<div class="leftcol"><label for="input-file-rom2" data-localize="modified_rom">Modified ROM:</label></div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="rightcol">
|
2017-07-22 11:58:52 +02:00
|
|
|
<input type="file" id="input-file-rom2" />
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="row">
|
2019-04-17 21:43:53 +02:00
|
|
|
<div class="leftcol" data-localize="patch_type">Patch type:</div>
|
2018-04-28 15:57:54 +02:00
|
|
|
<div class="rightcol">
|
2019-04-17 21:43:53 +02:00
|
|
|
<select id="select-patch-type">
|
2018-04-28 15:57:54 +02:00
|
|
|
<option value="ips">IPS</option>
|
2019-04-17 21:43:53 +02:00
|
|
|
<option value="bps">BPS</option>
|
|
|
|
<option value="ppf">PPF</option>
|
2018-04-28 15:57:54 +02:00
|
|
|
<option value="ups">UPS</option>
|
|
|
|
<option value="aps">APS</option>
|
2019-04-17 21:43:53 +02:00
|
|
|
<option value="rup">RUP</option>
|
2018-04-28 15:57:54 +02:00
|
|
|
</select>
|
2017-03-14 20:32:40 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="buttons">
|
2019-04-17 21:43:53 +02:00
|
|
|
<span id="message-create" class="message"></span>
|
|
|
|
<button id="button-create" class="disabled" disabled onclick="createPatch(romFile1, romFile2, el('select-patch-type').value)" data-localize="create_patch">Create patch</button>
|
2017-03-14 20:32:40 +01:00
|
|
|
</div>
|
2017-07-22 19:57:15 +02:00
|
|
|
</div>
|
2017-03-14 20:32:40 +01:00
|
|
|
</div>
|
|
|
|
|
2019-04-17 21:43:53 +02:00
|
|
|
<div id="snackbar" class="closed"></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
2018-04-28 15:57:54 +02:00
|
|
|
<!-- FOOTER -->
|
|
|
|
<footer>
|
2019-04-18 12:02:38 +02:00
|
|
|
Rom Patcher JS <small>v2.0 RC1c</small> by <a href="/">Marc Robledo</a>
|
2018-09-18 16:41:00 +02:00
|
|
|
<br />
|
2018-04-28 15:57:54 +02:00
|
|
|
<i class="icon github"></i> <a href="https://github.com/marcrobledo/RomPatcher.js/" target="_blank">See on GitHub</a>
|
|
|
|
<i class="icon heart"></i> <a href="https://www.paypal.me/marcrobledo/5" target="_blank" rel="nofollow">Donate</a>
|
|
|
|
</footer>
|
2017-03-14 20:32:40 +01:00
|
|
|
|
2018-04-28 15:57:54 +02:00
|
|
|
</div></body></html>
|