mirror of
https://github.com/marcrobledo/RomPatcher.js.git
synced 2025-06-27 16:25:54 +00:00
212 lines
8.9 KiB
HTML
212 lines
8.9 KiB
HTML
<!DOCTYPE html>
|
|
<html translate="no">
|
|
<head>
|
|
<title>Rom Patcher JS</title>
|
|
<meta http-equiv="content-Type" content="text/html; charset=UTF-8"/>
|
|
<meta name="description" content="An online web-based ROM patcher. Supported formats: IPS, BPS, UPS, APS, RUP, EBP, PPF and xdelta."/>
|
|
<meta name="keywords" content="ips,ups,aps,bps,rup,ninja,ebp,ppf,xdelta,patcher,online,html5,web,rom,patch,hack,translation"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
|
<link rel="manifest" href="./manifest.json"/>
|
|
<link rel="shortcut icon" href="./webapp/app_icon_16.png" type="image/png" sizes="16x16"/>
|
|
<link rel="shortcut icon" href="./webapp/app_icon_192.png" type="image/png" sizes="192x192"/>
|
|
<!-- iOS icons -->
|
|
<link rel="apple-touch-icon" sizes="57x57" href="./webapp/app_icon_114.png" />
|
|
<link rel="apple-touch-icon" sizes="114x114" href="./webapp/app_icon_114.png" />
|
|
<link rel="apple-touch-icon" sizes="72x72" href="./webapp/app_icon_144.png" />
|
|
<link rel="apple-touch-icon" sizes="144x144" href="./webapp/app_icon_144.png" />
|
|
<link rel="apple-touch-icon" href="./webapp/app_icon_192.png" />
|
|
|
|
<!-- cache -->
|
|
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
|
|
<meta http-equiv="Pragma" content="no-cache" />
|
|
<meta http-equiv="Expires" content="0" />
|
|
|
|
<!-- social network metatags -->
|
|
<meta name="twitter:site" content="@marc_robledo">
|
|
<meta name="twitter:creator" content="@marc_robledo">
|
|
<meta name="twitter:domain" content="marcrobledo.com">
|
|
<meta property="og:title" content="Rom Patcher JS">
|
|
<meta name="twitter:title" content="Rom Patcher JS">
|
|
<meta name="twitter:description" content="An online web-based ROM patcher. Supported formats: IPS, BPS, UPS, APS, RUP, EBP, PPF and xdelta.">
|
|
<meta property="og:image" content="https://www.marcrobledo.com/RomPatcher.js/webapp/thumbnail.jpg">
|
|
<meta name="twitter:image" content="https://www.marcrobledo.com/RomPatcher.js/webapp/thumbnail.jpg">
|
|
<meta name="twitter:card" content="photo">
|
|
|
|
<link type="text/css" rel="stylesheet" href="./webapp/style.css" media="all"/>
|
|
|
|
<script type="text/javascript" src="./rom-patcher-js/RomPatcher.webapp.js"></script>
|
|
<script type="text/javascript" src="./webapp/webapp.js"></script>
|
|
</head>
|
|
<body><div id="column">
|
|
|
|
|
|
<!-- HEADER -->
|
|
<header><img src="./webapp/logo.png" loading="lazy" /><h1>Rom Patcher JS</h1></header>
|
|
|
|
<!-- APP -->
|
|
<div id="wrapper">
|
|
<div id="switch-container"><span id="switch-create-button" class="btn-transparent"><span data-localize="yes">Creator mode</span> <span id="switch-create" class="switch disabled"></span></span></div>
|
|
|
|
<div class="tab">
|
|
<div id="rom-patcher-container">
|
|
<div class="row m-b" id="rom-patcher-row-file-rom">
|
|
<div class="text-right"><label for="rom-patcher-input-file-rom" data-localize="yes">ROM file:</label></div>
|
|
<div class="rom-patcher-container-input">
|
|
<input type="file" id="rom-patcher-input-file-rom" class="empty" disabled />
|
|
</div>
|
|
</div>
|
|
<div class="row m-b" id="rom-patcher-row-alter-header">
|
|
<div></div>
|
|
<div>
|
|
<label><input type="checkbox" id="rom-patcher-checkbox-alter-header" class="styled" /> <span id="rom-patcher-span-alter-header"></span></label>
|
|
</div>
|
|
</div>
|
|
<div class="m-b text-selectable text-mono" id="rom-patcher-rom-info">
|
|
<div class="row">
|
|
<div class="text-right">CRC32:</div>
|
|
<div class="text-truncate"><span id="rom-patcher-span-crc32"></span></div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="text-right">MD5:</div>
|
|
<div class="text-truncate"><span id="rom-patcher-span-md5"></span></div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="text-right">SHA-1:</div>
|
|
<div class="text-truncate"><span id="rom-patcher-span-sha1"></span></div>
|
|
</div>
|
|
<div class="row" id="rom-patcher-row-info-rom">
|
|
<div class="text-right">ROM:</div>
|
|
<div class="text-truncate"><span id="rom-patcher-span-rom-info"></span></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row m-b" id="rom-patcher-row-file-patch">
|
|
<div class="text-right"><label for="rom-patcher-input-file-patch" data-localize="yes">Patch file:</label></div>
|
|
<div class="rom-patcher-container-input">
|
|
<input type="file" id="rom-patcher-input-file-patch" class="empty" accept=".ips,.ups,.bps,.aps,.rup,.ppf,.mod,.ebp,.xdelta,.vcdiff,.zip" disabled />
|
|
</div>
|
|
</div>
|
|
<div class="row m-b" id="rom-patcher-row-patch-description">
|
|
<div class="text-right text-mono" data-localize="yes">Description:</div>
|
|
<div class="text-truncate" id="rom-patcher-patch-description"></div>
|
|
</div>
|
|
<div class="row m-b text-selectable text-mono" id="rom-patcher-row-patch-requirements">
|
|
<div class="text-right text-mono" id="rom-patcher-patch-requirements-type">ROM requirements:</div>
|
|
<div class="text-truncate" id="rom-patcher-patch-requirements-value"></div>
|
|
</div>
|
|
|
|
<div class="buttons text-center">
|
|
<div id="rom-patcher-row-error-message" class="m-b"><span id="rom-patcher-error-message"></span></div>
|
|
<button id="rom-patcher-button-apply" data-localize="yes" disabled>Apply patch</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="patch-builder-container" style="display:none">
|
|
<div class="row m-b">
|
|
<div class="text-right"><label for="patch-builder-input-file-original" data-localize="yes" >Original ROM:</label></div>
|
|
<div>
|
|
<input type="file" id="patch-builder-input-file-original" class="empty" disabled />
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row m-b">
|
|
<div class="text-right"><label for="patch-builder-input-file-modified" data-localize="yes">Modified ROM:</label></div>
|
|
<div>
|
|
<input type="file" id="patch-builder-input-file-modified" class="empty" disabled />
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row m-b">
|
|
<div class="text-right"><label for="patch-builder-select-patch-type" data-localize="yes">Patch type:</label></div>
|
|
<div>
|
|
<select id="patch-builder-select-patch-type" disabled>
|
|
<option value="ips">IPS</option>
|
|
<option value="bps">BPS</option>
|
|
<option value="ppf">PPF</option>
|
|
<option value="ups">UPS</option>
|
|
<option value="aps">APS</option>
|
|
<option value="rup">RUP</option>
|
|
<option value="ebp">EBP</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div></div>
|
|
<div id="patch-builder-container-metadata-inputs"></div>
|
|
</div>
|
|
|
|
<div class="buttons text-center">
|
|
<div id="patch-builder-row-error-message" class="m-b"><span id="patch-builder-error-message"></span></div>
|
|
<button id="patch-builder-button-create" disabled data-localize="yes" disabled>Create patch</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- FOOTER -->
|
|
<footer>
|
|
<div>
|
|
<button id="button-settings" class="btn-transparent"><img src="./webapp/icon_settings.svg" loading="lazy" class="icon settings" /> <span data-localize="yes">Settings</span></button>
|
|
</div>
|
|
|
|
Rom Patcher JS <small><a href="legacy/" rel="nofollow">v3.2</a></small> by <a href="/">Marc Robledo</a>
|
|
<br />
|
|
<img src="./webapp/icon_github.svg" loading="lazy" class="icon github" /> <a href="https://github.com/marcrobledo/RomPatcher.js/" target="_blank">See on GitHub</a>
|
|
<img src="./webapp/icon_heart.svg" loading="lazy" class="icon heart" /> <a href="https://www.paypal.me/marcrobledo/5" target="_blank" rel="nofollow">Donate</a>
|
|
</footer>
|
|
|
|
|
|
|
|
|
|
<!-- SETTINGS DIALOG -->
|
|
<dialog id="dialog-settings" class="rom-patcher-dialog">
|
|
<div class="text-right m-b"><img id="dialog-settings-button-close" src="./webapp/icon_close.svg" loading="lazy" /></div>
|
|
|
|
<div class="row m-b">
|
|
<div><label for="settings-language">Language</label></div>
|
|
<div class="text-right">
|
|
<select id="settings-language" class="enabled">
|
|
<option value="en">English</option>
|
|
<option value="fr">Français</option>
|
|
<option value="de">Deutsch</option>
|
|
<option value="it">Italiano</option>
|
|
<option value="es">Español</option>
|
|
<option value="nl">Nederlands</option>
|
|
<option value="sv">Svenska</option>
|
|
<option value="ca">Català</option>
|
|
<option value="ca-va">Valencià</option>
|
|
<option value="pt-br">Português Brasileiro</option>
|
|
<option value="ru">Russian</option>
|
|
<option value="ja">日本語</option>
|
|
<option value="zh-cn">中文(简体)</option>
|
|
<option value="zh-tw">中文(正體)</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row row-lg m-b">
|
|
<div><label data-localize="yes" for="settings-output-suffix">Use patch name for output</label></div>
|
|
<div class="text-right"><input type="checkbox" id="settings-output-suffix" class="styled" /></div>
|
|
</div>
|
|
|
|
<div class="row row-lg m-b">
|
|
<div><label data-localize="yes" for="settings-fix-checksum">Fix ROM checksum</label></div>
|
|
<div class="text-right"><input type="checkbox" id="settings-fix-checksum" class="styled" /></div>
|
|
</div>
|
|
|
|
<div class="row row-lg">
|
|
<div><label data-localize="yes" for="settings-light-theme">Light theme</label></div>
|
|
<div class="text-right"><input type="checkbox" id="settings-light-theme" class="styled" /></div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
</body></html>
|