summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancis Rowe <info@gluglug.org.uk>2015-02-21 04:11:28 (EST)
committer Francis Rowe <info@gluglug.org.uk>2015-02-21 12:14:14 (EST)
commitc5d2e117e3c795c81435d3fcb5b326f39a8e8711 (patch)
tree136577f868a92be9cce35fe014f6fefbaf0042b5
parentf8953319283675e680f8f733437778668c23b3c0 (diff)
downloadlibreboot.org-c5d2e117e3c795c81435d3fcb5b326f39a8e8711.zip
libreboot.org-c5d2e117e3c795c81435d3fcb5b326f39a8e8711.tar.gz
libreboot.org-c5d2e117e3c795c81435d3fcb5b326f39a8e8711.tar.bz2
Finish download page, re-release everything under AGPL v3 or later
Link to new download page from the homepage. Replace top footer text with a variable reference. Replace instances of "libreboot" with a variable reference. Delete the vortex86ex directory (that machine is a waste of time) Delete the readme.txt (it will need to be re-written)
-rw-r--r--.gitignore1
-rw-r--r--site/contrib/index.php26
-rw-r--r--site/css/main.css19
-rw-r--r--site/download/index.php239
-rw-r--r--site/download/oldtorrent/index.php117
-rw-r--r--site/footer.php25
-rw-r--r--site/github/index.php36
-rw-r--r--site/images/welcome_screen.pngbin0 -> 264995 bytes
-rw-r--r--site/images/welcome_screen.png.license.txt1
-rw-r--r--site/images/welcome_screen_small.jpgbin0 -> 5881 bytes
-rw-r--r--site/index.php45
-rw-r--r--site/license.txt10
-rw-r--r--site/logo/license.txt3
-rw-r--r--site/readme.txt44
-rw-r--r--site/torrents.template.php178
-rw-r--r--site/variables.template.php50
-rw-r--r--site/vortex86ex/array.php594
-rw-r--r--site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.d52.txt2444
-rw-r--r--site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.dis51.txt3079
-rwxr-xr-xsite/vortex86ex/dmp_kbd_fw_part1.inc.txt531
-rw-r--r--site/vortex86ex/index.php307
21 files changed, 631 insertions, 7118 deletions
diff --git a/.gitignore b/.gitignore
index c4ab064..942b8a0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
/site/libreboot.org.git/
/site/release/
/site/variables.php
+/site/torrents.php
diff --git a/site/contrib/index.php b/site/contrib/index.php
index 9e48839..3c9d984 100644
--- a/site/contrib/index.php
+++ b/site/contrib/index.php
@@ -1,3 +1,25 @@
+<?php
+/*
+ Contributor page, lists maintainers of the project
+ Copyright (C) 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+<?php
+ include_once "../variables.php";
+?>
<!DOCTYPE html>
<html>
<head>
@@ -10,10 +32,6 @@
</head>
-<?php
- include_once "../variables.php";
-?>
-
<body>
<div class="contain">
diff --git a/site/css/main.css b/site/css/main.css
index 07dba0a..472311f 100644
--- a/site/css/main.css
+++ b/site/css/main.css
@@ -1,3 +1,20 @@
+/*
+ Main CSS file
+ Copyright (C) 2014, 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
body {
background:#f4f4f4;
color:#2B2B2B;
@@ -91,7 +108,7 @@ div.important, pre, div.subsection {
margin-left:1em;
margin-right:1em;
border:none;
- border-radius:0px;
+ border-radius:0.5em;
box-shadow:none;
height:10em;
width:auto;
diff --git a/site/download/index.php b/site/download/index.php
index 4cadfb2..3e8b620 100644
--- a/site/download/index.php
+++ b/site/download/index.php
@@ -1,3 +1,26 @@
+<?php
+/*
+ Download page
+ Copyright (C) 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+<?php
+ include_once "../variables.php";
+ include_once "../torrents.php";
+?>
<!DOCTYPE html>
<html>
<head>
@@ -6,125 +29,187 @@
<link rel="stylesheet" type="text/css" href="../css/main.css" />
- <title>Download libreboot</title>
+ <title>Download <?php echo $lbProjectName; ?></title>
</head>
-<?php
- include_once "../variables.php";
-?>
-
<body>
<div class="contain">
<div id="libreboot" class="section intro">
- <h1>Download libreboot</h1>
-
- <p>
- Torrent (magnet) links to releases, and links to third-party HTTP mirrors. Use this page
- to download libreboot. These are stable releases; for development (unstable) releases,
- refer back to the home page.
- </p>
-
- <p>
- <b>This page isn't actually ready yet. For now, the official download page
- is at <a href="../docs/release.html">../docs/release.html</a>. On the next release of libreboot after r20150208,
- release archives will no longer be hosted on the libreboot.org HTTP server. Old releases
- will be deleted and moved to bittorrent. New releases will also be hosted on bittorrent.</b>
- </p>
+ <p>
+ <a href="../images/welcome_screen.png"><img class="homepage_logo" src="../images/welcome_screen_small.jpg" alt="" title="<?php include "../images/welcome_screen.png.license.txt"; ?>" /></a>
+ </p>
+
+ <h1>Download <?php echo $lbProjectName; ?></h1>
- <p>
- <b>Why bittorrent? As we all know, bittorrent is inherently more efficient than a HTTP server
- for large files, due to its peer-to-peer distributed nature. Libreboot releases are actually much
- more efficient now, where ROM images for each machine are separated into their own tar archives.
- The old 'binary' archive is now named 'utils'. Documentation is also deleted from 'utils' and 'src'
- and now available in a separate archive. All of this means that the user has a much more streamlined
- way of getting libreboot releases, with less data to download. Bittorrent will improve this even
- further, giving users faster download speeds.</b>
- </p>
+ <p>
+ Information about these releases can be found at <a href="../docs/release.html">../docs/release.html</a>.
+ Documentation can be found at <a href="../docs/index.html">../docs/index.html</a>.
+ A copy of /docs/ can also be found in the release archives.
+ </p>
+
+ <!-- <p>
+ TODO: set up RSS and Atom feeds for the bittorrent links (but not the HTTP mirrors).
+ The main gitweb page (for the main git repository) already generates atom/rss feeds.
+ </p> -->
+
+ <ul class="ulnav">
+ <li><a href="#torrent">Bittorrent</a></li>
+ <li><a href="#http">HTTP mirrors</a></li>
+ <li><a href="#git">Git repositories (development)</a></li>
+ </ul>
+
+ <p>
+ <a href="../">Back to home page</a>
+ </p>
+
+ </div>
+
+ <div class="section" id="gpg">
- <p>
- <b>Bittorrent is also redundant. The libreboot project will not actually host its own tracker at all,
- but it will instead use many public trackers and publish the magnet links. The website is also
- hosted in git, which means that everything is easier to mirror. If libreboot.org is down, you'll
- still be able to download libreboot so long as you have those magnet links.</b>
- </p>
+ <h1 id="gpg">GPG signing key</h1>
+
+ <p>
+ <?php echo $lbProjectGpgKeyInfo; ?>
+ </p>
+ <p>
+ Download the key:<br/>
+ $ <b>gpg --recv-keys <?php echo $lbProjectGpgKeyID; ?></b>
+ </p>
+ <p>
+ You can verify the downloaded archives as follows:<br/>
+ $ <b>for signature in $(ls *.tar.xz.sig); do gpg --verify $signature; done</b>
+ </p>
+
+ </div>
+
+ <div class="section" id="torrent">
- <p>
- Information about these releases can be found under docs/release.html in the libreboot_docs archive
- or in the git git repository. See <a href="../docs/release.html">../docs/release.html</a>.
- </p>
-
- <p>
- It has been suggested to setup RSS feeds for this, so that people can automatically download and seed new releases.
- TODO: look into this.
- </p>
+ <p><b>Torrent links do not work yet. Use the HTTP downloads.</b></p>
+ <h1>Bittorrent</h1>
+
+ <?php
+ /* Show current version */
+ echo torrent_list($lbTorrentLink, 0, 1);
+ ?>
+
+ <?php
+ /* Link to old releases */
+ if (count($lbTorrentLink)>1) {
+ ?>
<p>
- <a href="../">Back to homepage</a>
+ Torrents for older releases can be found at <a href="oldtorrent/">oldtorrent/</a>.
</p>
-
+<?php
+ }
+?>
+
+ <p><b>Torrent links do not work yet. Use the HTTP downloads.</b></p>
+
</div>
-
- <div class="section">
-
- <h2>XXXXYYZZ</h2>
+
+ <div class="section" id="http">
+
+ <h1>HTTP mirrors</h1>
<p>
- Next release. Date unknown.
+ These mirrors are intended mainly for those who cannot use
+ bittorrent. Otherwise, the <a href="#torrent">torrent links</a>
+ are highly recommended.
</p>
- <h2>r20150208</h2>
+
+ <ul>
+<?php
+ if (count($lbHttpMirror)>0) {
+ for ($server=0; $server<count($lbHttpMirror); $server++) {
+?>
+ <li><a href="<?php echo $lbHttpMirror[$server]; ?>"><?php echo $lbHttpMirror[$server]; ?></a></li>
+<?php
+ }
+ } else {
+?>
+ <li>HTTP mirrors not added yet.</li>
+<?php
+ }
+?>
+ </ul>
+
<p>
- The magnet links for libreboot releases aren't actually available yet.
- It will all be moved later. This page is just a template for the time being.
+ Are you running a mirror? Contact the <?php echo $lbProjectName; ?> project
+ (details are on the <a href="../">home page</a>), and the link will be added here.
</p>
- <h2>TODO: populate this page.</h2>
-
+
</div>
- <div class="section">
+ <div class="section" id="git">
- <h2>Git repositories</h2>
+ <h1>Git repositories (development)</h1>
+
+ <p>
+ These git repositories are intended for the development of <?php echo $lbProjectName; ?>.
+ The ROM images built from git are untested, and therefore not
+ recommended for general use (you should assume that they will
+ brick your computer).
+ </p>
+
+ <p>
+ Snapshots (preview releases) of the git repository can be found at
+ <a href="../git/">../git/</a>.
+ </p>
+ <p>
+ Documentation for <?php echo $lbProjectName; ?> from git can be found in
+ the git repository itself (under /docs/), or a live version
+ can be found at <a href="../gitdocs/index.html">../gitdocs/index.html</a>.
+ </p>
- <h3>Main repositories</h3>
+ <h2>Main repositories</h2>
<p>
- This is the main repository, hosted by the libreboot project.
+ This is the main repository, hosted by the <?php echo $lbProjectName; ?> project.
</p>
<p>
- Firmware: $ <b>git clone <?php echo $lbFirmwareGitRepoAddress; ?></b><br/>
- Website: $ <b>git clone <?php echo $lbWebsiteGitRepoAddress; ?></b>
+ Firmware: $ <b>git clone <a href="<?php echo $lbFirmwareGitwebAddress; ?>"><?php echo $lbFirmwareGitRepoAddress; ?></a></b><br/>
+ Website: $ <b>git clone <a href="<?php echo $lbWebsiteGitwebAddress; ?>"><?php echo $lbWebsiteGitRepoAddress; ?></a></b>
</p>
- <h2>Backup repositories</h2>
- <p>
- These are backup repositories, in case the main repository is down.
- Although these are regularly updated by the libreboot project, you
- should ideally use the main repository.
- </p>
-
- <h3>Libreboot firmware (coreboot distribution)</h3>
<p>
+ <a href="../github/">Please do not use GitHub!</a>
+ </p>
+
+ <h2>Backup repositories</h2>
+ <p>
+ Backup repositories, in case the main repository is down.
+ Although these are regularly updated by the <?php echo $lbProjectName; ?> project, you
+ should ideally use the main repository.
+ </p>
+ <p>
+ <a href="../github/">Please do not use GitHub!</a>
+ </p>
+
+ <h3>Firmware (coreboot distribution)</h3>
+ <p>
<?php
for ($server=0; $server<count($lbFirmwareBackupGitRepoAddress); $server++) {
?>
- $ <b>git clone <?php echo $lbFirmwareBackupGitRepoAddress[$server]; ?></b>
- <?php if ($server!=count($lbFirmwareBackupGitRepoAddress)-1) echo "<br/>"; ?>
+ $ <b>git clone <?php echo $lbFirmwareBackupGitRepoAddress[$server]; ?></b>
+ <?php if ($server!=count($lbFirmwareBackupGitRepoAddress)-1) echo "<br/>"; ?>
<?php
}
?>
- </p>
+ </p>
- <h3>Libreboot website</h3>
- <p>
+ <h3>Project website</h3>
+ <p>
<?php
for ($server=0; $server<count($lbWebsiteBackupGitRepoAddress); $server++) {
?>
- $ <b>git clone <?php echo $lbWebsiteBackupGitRepoAddress[$server]; ?></b>
- <?php if ($server!=count($lbWebsiteBackupGitRepoAddress)-1) echo "<br/>"; ?>
+ $ <b>git clone <?php echo $lbWebsiteBackupGitRepoAddress[$server]; ?></b>
+ <?php if ($server!=count($lbWebsiteBackupGitRepoAddress)-1) echo "<br/>"; ?>
<?php
}
?>
- </p>
+ </p>
</div>
diff --git a/site/download/oldtorrent/index.php b/site/download/oldtorrent/index.php
new file mode 100644
index 0000000..c4b5726
--- /dev/null
+++ b/site/download/oldtorrent/index.php
@@ -0,0 +1,117 @@
+<?php
+/*
+ Download page (old releases)
+ Copyright (C) 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+<?php
+ include_once "../../variables.php";
+ include_once "../../torrents.php";
+?>
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+
+ <link rel="stylesheet" type="text/css" href="../../css/main.css" />
+
+ <title>Download <?php echo $lbProjectName; ?> (old)</title>
+
+</head>
+
+<body>
+
+ <div class="contain">
+
+ <div id="libreboot" class="section intro">
+
+ <p>
+ <a href="../../images/welcome_screen.png"><img class="homepage_logo" src="../../images/welcome_screen_small.jpg" alt="" title="<?php include "../../images/welcome_screen.png.license.txt"; ?>" /></a>
+ </p>
+
+ <h1>Download <?php echo $lbProjectName; ?> (old)</h1>
+
+ <p>
+ This page is for old releases, distributed via the bittorrent network.
+ </p>
+
+ <p>
+ Information about these releases can be found at <a href="../../docs/release.html">../../docs/release.html</a>.
+ Documentation for a given release can be found under /docs/ in that release archive. The same documentation
+ can also be found in the <a href="../#git">git repository</a> by reverting to the tag used for that release.
+ </p>
+
+ <!-- <p>
+ TODO: set up RSS and Atom feeds for the bittorrent links (but not the HTTP mirrors).
+ The main gitweb page (for the main git repository) already generates atom/rss feeds.
+ </p> -->
+
+ <p>
+ <a href="../">Back to main download page</a>
+ </p>
+
+ </div>
+
+ <div class="section" id="gpg">
+
+ <h1 id="gpg">GPG signing key</h1>
+
+ <p>
+ <?php echo $lbProjectGpgKeyInfo; ?>
+ </p>
+ <p>
+ Download the key:<br/>
+ $ <b>gpg --recv-keys <?php echo $lbProjectGpgKeyID; ?></b>
+ </p>
+ <p>
+ You can verify the downloaded archives as follows:<br/>
+ $ <b>for signature in $(ls *.tar.xz.sig); do gpg --verify $signature; done</b>
+ </p>
+
+ </div>
+
+ <div class="section" id="torrent">
+
+ <p><b>Torrent links do not work yet. Use the HTTP downloads.</b></p>
+
+ <h1>Bittorrent</h1>
+ <p>
+ The following is a list of links to old releases.
+ </p>
+
+ <?php
+ /* Show all versions before the current stable release */
+ echo torrent_list($lbTorrentLink, 1, count($lbTorrentLink));
+ ?>
+
+ <p><b>Torrent links do not work yet. Use the HTTP downloads.</b></p>
+
+ </div>
+
+ <div class="section footer">
+
+<?php
+ include "../../footer.php";
+?>
+
+ </div>
+
+ </div>
+
+</body>
+</html>
+
diff --git a/site/footer.php b/site/footer.php
index 5e4eddc..c38ab84 100644
--- a/site/footer.php
+++ b/site/footer.php
@@ -1,5 +1,26 @@
+<?php
+/*
+ Footer
+ Copyright (C) 2014, 2015 Francis Rowe <info@gluglug.org.uk>
- <p>This website is hosted on a Libreboot machine, powered by <a href="https://trisquel.info/">Trisquel GNU/Linux-libre</a> and <a href="http://www.lighttpd.net/">Lighttpd</a>.</p>
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+ <?php if (strlen($lbFooterText)>0) echo "<p>$lbFooterText</p>"; ?>
+ <p>
+ This website is a clone of a git repository: <b>git clone <a href="<?php echo $lbWebsiteGitwebAddress; ?>"><?php echo $lbWebsiteGitRepoAddress; ?></a></b>
+ </p>
<p>
- This website is a git clone. Download this website: <b>git clone <a href="<?php echo $lbWebsiteGitwebAddress; ?>"><?php echo $lbWebsiteGitRepoAddress; ?></a></b>
+ This page is published under the <a href="https://www.gnu.org/licenses/agpl-3.0.html">GNU Affero General Public License, version 3 or any later version</a>.
</p>
diff --git a/site/github/index.php b/site/github/index.php
index b0bfec9..b0e7da3 100644
--- a/site/github/index.php
+++ b/site/github/index.php
@@ -1,3 +1,25 @@
+<?php
+/*
+ GitHub is one of the worst sites that you could possibly use.
+ Copyright (C) 2014, 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+<?php
+ include_once "../variables.php";
+?>
<!DOCTYPE html>
<html>
<head>
@@ -10,10 +32,6 @@
</head>
-<?php
- include_once "../variables.php";
-?>
-
<body>
<div class="contain">
@@ -23,8 +41,8 @@
<h1>Please do not use GitHub!</h1>
<p>
- Please do not use GitHub to host libreboot.
- Libreboot is a free software project, so this is only a request, and not a restriction on the software.
+ Please do not use GitHub to host <?php echo $lbProjectName; ?>.
+ <?php echo $lbProjectNameCapitalized; ?> is a free software project, so this is only a request, and not a restriction on the software.
</p>
</div>
@@ -67,13 +85,13 @@
</p>
<p>
- By contrast, the libreboot project adheres strictly to the goals of the Free Software movement, which
+ By contrast, the <?php echo $lbProjectName; ?> project adheres strictly to the goals of the Free Software movement, which
seeks to eliminate proprietary software to the point where all software is free.
</p>
<p>
The opinions expressed by Tom Preston-Werner of GitHub are incompatible with those of
- the libreboot project. Users and developers of
+ the <?php echo $lbProjectName; ?> project. Users and developers of
<em><a href="http://www.gnu.org/philosophy/free-sw.html">free software</a></em>
are strongly advised not to use GitHub, for any of their projects.
</p>
@@ -125,7 +143,7 @@
licensed under <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> like the original.
</p>
<p>
- <a href="..">Back to libreboot.org homepage</a>
+ <a href="..">Back to home page</a>
</p>
</div>
diff --git a/site/images/welcome_screen.png b/site/images/welcome_screen.png
new file mode 100644
index 0000000..be51e68
--- /dev/null
+++ b/site/images/welcome_screen.png
Binary files differ
diff --git a/site/images/welcome_screen.png.license.txt b/site/images/welcome_screen.png.license.txt
new file mode 100644
index 0000000..2a47428
--- /dev/null
+++ b/site/images/welcome_screen.png.license.txt
@@ -0,0 +1 @@
+Meditating GNU image found at https://www.gnu.org/graphics/meditate.html and Copyright (C) 2001 Free Software Foundation, Inc. License is GPLv3 or later.
diff --git a/site/images/welcome_screen_small.jpg b/site/images/welcome_screen_small.jpg
new file mode 100644
index 0000000..e30e78a
--- /dev/null
+++ b/site/images/welcome_screen_small.jpg
Binary files differ
diff --git a/site/index.php b/site/index.php
index 6c82088..ecbdd45 100644
--- a/site/index.php
+++ b/site/index.php
@@ -1,3 +1,26 @@
+<?php
+/*
+ Home page
+ Copyright (C) 2014, 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+<?php
+ include_once "variables.php";
+ include_once "torrents.php";
+?>
<!DOCTYPE html>
<html>
<head>
@@ -6,28 +29,24 @@
<link rel="stylesheet" type="text/css" href="css/main.css" />
- <title>Libreboot project</title>
+ <title><?php echo $lbProjectNameCapitalized; ?> project</title>
</head>
-<?php
- include_once "variables.php";
-?>
-
<body>
<div class="contain">
<div id="libreboot" class="section intro">
<p>
- <img class="homepage_logo" src="logo/logo.svg" alt="" />
+ <img class="homepage_logo" src="logo/logo.svg" alt="" title="<?php include "logo/license.txt"; ?>" />
</p>
- <h1>Libreboot project</h1>
+ <h1><?php echo $lbProjectNameCapitalized; ?> project</h1>
<p>
- Libreboot is a <a href="http://coreboot.org/">coreboot</a> distribution (distro) with proprietary software removed,
+ <?php echo $lbProjectNameCapitalized; ?> is a <a href="http://coreboot.org/">coreboot</a> distribution (distro) with proprietary software removed,
intended to be a <a href="https://www.fsf.org/about/what-is-free-software">free</a>
(libre) 'BIOS' replacement for your computer. The project is aimed at users, attempting to make
- coreboot as easy to use as possible. <a href="docs/index.html#why">Learn more about libreboot</a>.
+ coreboot as easy to use as possible. <a href="docs/index.html#why">Learn more about <?php echo $lbProjectName; ?></a>.
</p>
<p>
'Free' in this sense refers to freedom (liberty); read the full <a href="https://www.gnu.org/philosophy/free-sw.html">Free Software definition</a>.
@@ -42,14 +61,14 @@
Utilities (statically compiled) and ROM images are provided, built from the source code.
</p>
<ul class="ulnav">
- <li><a href="docs/release.html">Downloads</a></li>
- <li><a href="docs/install/index.html">How to install libreboot</a></li>
- <li><a href="docs/gnulinux/index.html">How to install GNU/Linux on a libreboot system</a></li>
+ <li><a href="download/">Downloads</a></li>
+ <li><a href="docs/install/index.html">How to install <?php echo $lbProjectName; ?></a></li>
+ <li><a href="docs/gnulinux/index.html">How to install GNU/Linux on a <?php echo $lbProjectName; ?> system</a></li>
<li><a href="docs/hcl/index.html#supported_list">List of supported systems</a></li>
<li><a href="docs/index.html">General documentation</a></li>
</ul>
<p>
- The latest release is from February 8th, 2015.
+ The latest release is from <?php echo $lbTorrentLink[0][0][1]; ?>.
</p>
</div>
<div class="section unstable">
diff --git a/site/license.txt b/site/license.txt
deleted file mode 100644
index 028a78e..0000000
--- a/site/license.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-Copyright © 2015 Francis Rowe <info@gluglug.org.uk>
-
-Applies to the following:
-variables.php, readme.txt, .gitignore, index.php, footer.php,
-release/index.php, contrib/index.php, css/main.css, vortex86ex/
-
-...released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions.
-For a copy of that license, see https://creativecommons.org/licenses/by-sa/4.0/
-
-For other resources, different conditions apply.
diff --git a/site/logo/license.txt b/site/logo/license.txt
index 2e219bb..5721044 100644
--- a/site/logo/license.txt
+++ b/site/logo/license.txt
@@ -1,2 +1 @@
-Copyright 2014 Marcus Moeller
-license: CC-0
+Copyright 2014 Marcus Moeller (license: CC-0)
diff --git a/site/readme.txt b/site/readme.txt
deleted file mode 100644
index 6f388ce..0000000
--- a/site/readme.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-This is a clone of the libreboot website at libreboot.org. The main
-intention is to allow people to contribute to the website, but it
-can also help people to mirror the site if they want to.
-
-Mirroring libreboot:
-
-(these instructions aren't complete, and you can also cherry pick what
-you need instead of following these exactly)
-
-change the info in variables.php to what you want
-
-clone libreboot(website) and make that directory your docroot.
-
-Now, outside of the libreboot(website) clone, clone libreboot(firmware)
-and build it fully, using the libreboot instructions.
-in libreboot(website) clone, create a symlink called "git" to the
-release/ directory in your libreboot(firmware) clone.
-
-Setup a repository for your version of libreboot(website) in
-libreboot.org.git/ (or actually, whatever you want) in your
-libreboot(website) clone.
-
-Setup a repository for your version of libreboot(firmware) in
-libreboot.git (or actually, whatever you want) in your libreboot (website)
-clone.
-
-That's right. A repository in a clone of that repository.
-
-Populate docs/ in your libreboot(website) clone with a copy of docs/
-from your release archives. Advice: always keep these strictly for stable
-releases only (you can also backport stuff, as well).
-
-gitdocs/ should be a symlink to the docs/ directory in your clone of
-libreboot(firmware).
-
-Create a symlink "gitdocs" in your libreboot(website) clone pointing
-to docs/ in your libreboot(firmware) clone.
-
-Populate release/ with releases from the libreboot project.
-
-
-The live site should not expose the .git files/directories, only
-the repository should be accessible. Also, in the config file make sure
-to replace any paths from your system with the URL of your remote.
diff --git a/site/torrents.template.php b/site/torrents.template.php
new file mode 100644
index 0000000..c80861c
--- /dev/null
+++ b/site/torrents.template.php
@@ -0,0 +1,178 @@
+<?php
+/*
+ Template file: list of torrent links to the release archives
+ Copyright (C) 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+<?php
+
+/* Functions */
+
+ function torrent_list($arrayTorrentLink, $forIndexStart, $forIndexBelow) {
+
+ if ((count($arrayTorrentLink)>=($forIndexStart+1)) && (count($arrayTorrentLink)>=$forIndexBelow)) {
+ for ($release=$forIndexStart; $release<$forIndexBelow; $release++) {
+?>
+ <h2><?php echo $arrayTorrentLink[$release][0][0]; ?></h2>
+ <p>
+ Released on <?php echo $arrayTorrentLink[$release][0][1]; ?>.
+ </p>
+ <ul>
+<?php
+ for ($archive=1; $archive<count($arrayTorrentLink[$release]); $archive++) {
+?>
+ <li><a href="<?php echo $arrayTorrentLink[$release][$archive][1]; ?>"><?php echo $arrayTorrentLink[$release][$archive][0]; ?></a></li>
+<?php
+ }
+?>
+ </ul>
+<?php
+ }
+ } else {
+?>
+ <p>No torrents found.</p>
+<?php
+ }
+
+ return;
+ }
+
+/* Data */
+
+ /* Copy this to torrents.php, and adapt for your needs */
+
+ /*
+ * Torrent links (for release archives)
+ * Latest releases listed first, earlier releases listed last. MAKE SURE TO PUT THEM IN THIS ORDER.
+ * Format of the array entries should be, for instance:
+ * $lbTorrentLink = array (
+ * array (
+ * array("version number (eg Libreboot rYYYYMMDD)", "release date (YYYY-MM-DD)"),
+ * array("archive name plus version", "torrent_magnet_link_goes_here"),
+ * ),
+ * array (
+ * array("Libreboot rYYYYMMDD", "YYYY-MM-DD"),
+ * array("Libreboot rYYYYMMDD Source code", "torrent_magnet_link_goes_here"),
+ * array("Libreboot rYYYYMMDD Utilities", "torrent_magnet_link_goes_here"),
+ * array("Libreboot rYYYYMMDD Documentation", "torrent_magnet_link_goes_here"),
+ * array("Libreboot rYYYYMMDD ROM images (ThinkPad X60)", "torrent_magnet_link_goes_here"),
+ * array("Libreboot rYYYYMMDD ROM images (ThinkPad T60)", "torrent_magnet_link_goes_here"),
+ * array("Libreboot rYYYYMMDD ROM images (ThinkPad X200)", "torrent_magnet_link_goes_here"),
+ * array("Libreboot rYYYYMMDD ROM images (ThinkPad R400)", "torrent_magnet_link_goes_here"),
+ * array("Libreboot rYYYYMMDD ROM images (MacBook2,1)", "torrent_magnet_link_goes_here")
+ * ),
+ * array (
+ * array("Libreboot r20150208", "2015-02-08"),
+ * array("Libreboot r20150208 Source code", "torrent_magnet_link_goes_here"),
+ * array("Libreboot r20150208 Binaries", "torrent_magnet_link_goes_here")
+ * ),
+ * array (
+ * array("Libreboot r20150126", "2015-01-26"),
+ * array("Libreboot r20150126 Source code", "torrent_magnet_link_goes_here"),
+ * array("Libreboot r20150126 Binaries", "torrent_magnet_link_goes_here")
+ * )
+ * );
+ * You should not specify $lbProjectName here, because these entries related
+ * specifically to this version of the project.
+ */
+ $lbTorrentLink = array (
+ array (
+ array("Libreboot r20150208", "2015-02-08"),
+ array("Libreboot r20150208 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20150208 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array (
+ array("Libreboot r20150126", "2015-01-26"),
+ array("Libreboot r20150126 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20150126 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array (
+ array("Libreboot r20150124", "2015-01-24"),
+ array("Libreboot r20150124 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20150124 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array (
+ array("Libreboot r20141015", "2014-10-15"),
+ array("Libreboot r20151015 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20151015 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 6, beta 7 */
+ array("Libreboot r20140911", "2014-09-11"),
+ array("Libreboot r20140911 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140911 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 6, beta 6 */
+ array("Libreboot r20140903", "2014-09-03"),
+ array("Libreboot r20140903 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140903 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 6, beta 5 */
+ array("Libreboot r20140811", "2014-08-11"),
+ array("Libreboot r20140811 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140811 Binaries", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140811 Metadata", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 6, beta 4 */
+ array("Libreboot r20140729", "2014-07-29"),
+ array("Libreboot r20140729 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140729 Binaries", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140729 Metadata", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 6, beta 3 */
+ array("Libreboot r20140720", "2014-07-20"),
+ array("Libreboot r20140720 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140720 Binaries", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140720 Metadata", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 6, beta 2 */
+ array("Libreboot r20140716", "2014-07-16"),
+ array("Libreboot r20140716 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140716 Binaries", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140716 Metadata", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 6, beta 1 */
+ array("Libreboot r20140711", "2014-07-11"),
+ array("Libreboot r20140711 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140711 Binaries", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140711 Metadata", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 5 */
+ array("Libreboot r20140622", "2014-06-22"),
+ array("Libreboot r20140622 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140622 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 4 */
+ array("Libreboot r20140221", "2014-02-21"),
+ array("Libreboot r20140221 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20140221 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 3 */
+ array("Libreboot r20131214", "2013-12-14"),
+ array("Libreboot r20131214 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20131214 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 2 */
+ array("Libreboot r20131213", "2013-12-13"),
+ array("Libreboot r20131213 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20131213 Binaries", "torrent_magnet_link_goes_here")
+ ),
+ array ( /* old name: Release 1 */
+ array("Libreboot r20131212", "2013-12-12"),
+ array("Libreboot r20131212 Source code", "torrent_magnet_link_goes_here"),
+ array("Libreboot r20131212 Binaries", "torrent_magnet_link_goes_here")
+ )
+ );
+?>
diff --git a/site/variables.template.php b/site/variables.template.php
index 7ea1380..4a0cd63 100644
--- a/site/variables.template.php
+++ b/site/variables.template.php
@@ -1,11 +1,43 @@
<?php
+/*
+ A number of variables that are used by the whole site
+ Copyright (C) 2015 Francis Rowe <info@gluglug.org.uk>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+?>
+<?php
+ /* Copy this to variables.php, and adapt for your needs */
+
+ /* Project name
+ * NOTE: Not all parts of the site use this, because
+ * parts of the site talking about things that are very
+ * specific to the libreboot project. Changing these
+ * variables is only the first step.
+ */
+ $lbProjectName = "libreboot"; /* use all lower-case */
+ $lbProjectNameCapitalized = "Libreboot"; /* Capitalized */
+
+ /* Project home page */
$lbHomepage = "http://libreboot.org/";
+ /* Main git repositories */
$lbFirmwareGitRepoAddress = "http://libreboot.org/libreboot.git";
$lbFirmwareGitwebAddress = "http://libreboot.org/gitweb/?p=libreboot.git";
$lbWebsiteGitRepoAddress = "http://libreboot.org/libreboot.org.git";
$lbWebsiteGitwebAddress = "http://libreboot.org/gitweb/?p=libreboot.org.git";
-
+ /* Backup git repositories */
$lbFirmwareBackupGitRepoAddress = array(
"https://gitorious.org/libreboot-backup/libreboot.git",
"git://git.pehjota.net/libreboot-backup/libreboot.git"
@@ -14,12 +46,28 @@
"https://gitorious.org/libreboot-backup/libreboot-website.git",
"git://git.pehjota.net/libreboot-backup/libreboot.org.git"
);
+
+ /* HTTP mirrors (for release archives) */
+ $lbHttpMirror = array(
+ "../docs/release.html",
+ "http://www.libreboot.org/release/"
+ );
+ /* Bug tracker URL */
$lbBugTrackerAddress = "http://projects.mtjm.eu/projects/libreboot";
+ /* Links to mailing lists */
$userMailingListAddress = "https://lists.nongnu.org/mailman/listinfo/libreboot";
$devMailingListAddress = "https://lists.nongnu.org/mailman/listinfo/libreboot-dev";
+ /* IRC channel */
$ircChannelName = "#libreboot (FreeNode IRC)";
$ircChannelAddress = "https://webchat.freenode.net/?channels=libreboot";
+
+ /* Footer text above the git clone link */
+ /* footer.php will place this inside a <p></p>. */
+ $lbFooterText = "This website is hosted on a Libreboot machine, powered by <a href=\"https://trisquel.info/\">Trisquel GNU/Linux-libre</a> and <a href=\"http://www.lighttpd.net/\">Lighttpd</a>.";
+
+ $lbProjectGpgKeyInfo = "pub&nbsp; 4096R/656F212E 2014-07-04 Libreboot Releases (signing key) &lt;releases@libreboot.org&gt;<br/>Fingerprint=C923 4BA3 200C F688 9CC0&nbsp; 764D 6E97 D575 656F 212E ";
+ $lbProjectGpgKeyID = "0x656F212E";
?>
diff --git a/site/vortex86ex/array.php b/site/vortex86ex/array.php
deleted file mode 100644
index 90bf210..0000000
--- a/site/vortex86ex/array.php
+++ /dev/null
@@ -1,594 +0,0 @@
-<?php
-/*
-# Copyright (C) 2014 Francis Rowe <info@gluglug.org.uk>
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-# The data from the $blob variable (see below) is taken
-# from src/cpu/dmp/vortex86ex/dmp_kbd_fw_part1.inc in coreboot* and
-# has different copyright terms. Check inside that file for details.
-# *http://coreboot.org/
-*/
-
-// steps below based on:
-// https://en.wikipedia.org/wiki/Intel_HEX#Format
-// Trying to disassemble http://libreboot.org/dmp_kbd_fw_part1.inc.txt
-// which is from coreboot (src/cpu/dmp/vortex86ex/dmp_kbd_fw_part1.inc).
-// The dissassemblers need intel hex format, so this script provides that.
-// 8051 disassembler used: dis51
-// 8052 disassembler used: d52
-// see results on http://libreboot.org/vortex86ex/
-
-$blob = array(
-"0204a3020afbef75",
-"f003a4ffae071fee",
-"70fa22020ad51209",
-"5e7f301205fb90e0",
-"007416f0120ddac2",
-"92c293c290d291d2",
-"b8d2bad288d2a8d2",
-"8ad2aa7d44e4ff12",
-"0e3a7d4d0f120e3a",
-"7d260f120e3a7d50",
-"0f120e3a120e59d2",
-"af7fb1120ef5900f",
-"fee493ffb4550aa3",
-"e493b4aa04d20880",
-"10efb4120c900fff",
-"e493b43404c208c2",
-"1212036c120da612",
-"010830012730121f",
-"20001c301119120d",
-"251209c4300805c2",
-"1a120a26120d92d2",
-"00120d3b1207c212",
-"0ddac20112036c12",
-"072e3012c43000c1",
-"90d000e030e0bac2",
-"af120e07500e120e",
-"b6120ebcd21a120a",
-"26120d3bd2af80a1",
-"ae03ab05531aef90",
-"d000e51af0ad078e",
-"337f20120d51431a",
-"1090d000e51af022",
-"da7e100914120da6",
-"90e000e0ff20e103",
-"0202c8c2a8c2aa20",
-"0403300705d2a8d2",
-"aa22efa2e3921c90",
-"f000e0f52c120e2f",
-"d2a8d2aa301c0302",
-"01eec21dc21e2017",
-"030201d4e51824e1",
-"603b245470030201",
-"d024fa601414601e",
-"14601f1460232474",
-"706caf2c1205fb80",
-"67e52c30e104d290",
-"805ec290805ac21f",
-"8002d21f852c2f80",
-"46d21e804be52c70",
-"1a120ced1208f285",
-"3812853913853a14",
-"850915850a16850b",
-"17802de52cc39401",
-"4013e52cd3940650",
-"0cc21f7411252cf8",
-"e6f52f800ae52cb4",
-"070ec21f853b2fd2",
-"20120db88002d21d",
-"c2178002d21d301d",
-"07af2c12052f8008",
-"301e05af2c120597",
-"120e850202c2c21d",
-"e52c120b2102b71f",
-"02352002b7600256",
-"a7025da80264a902",
-"48aa0264ab026dad",
-"0274ae0241c002b7",
-"cb027bd002b7d102",
-"b7d202b7d302b7d4",
-"0298dd028ddf02a8",
-"fe000002b5120a83",
-"8f2dc21f852d2f80",
-"28c21f752fff8021",
-"7f301205fbc21f75",
-"2f55c220804b120e",
-"8dd21d805a120ee6",
-"d21d8053c21fe4f5",
-"2fd2208034120e94",
-"d21d8043120ef0d2",
-"1d803c752e013090",
-"03432e02c21f852e",
-"2fd2208014d290c2",
-"1f850f2fd2208009",
-"c290c21f850f2fd2",
-"20120db8d21d800f",
-"c2917f05120006d2",
-"91d21d8002d21d30",
-"1d03120e85d21785",
-"2c18200103120dda",
-"22444d265000ff43",
-"413f3d3b3c586444",
-"42403e0f29596538",
-"2a701d10025a6671",
-"2c1f1e11035b672e",
-"2d201205045c6839",
-"2f211413065d6931",
-"30232215075e6a72",
-"32241608095f6b33",
-"2517180b0a606c34",
-"352627190c616d73",
-"28741a0d626e3a36",
-"1c1b752b63765556",
-"7778797a0e7b7c4f",
-"7d4b477e7f6f5253",
-"504c4d480145574e",
-"514a374946540000",
-"0041540001010201",
-"0202030102020302",
-"0303041423143a14",
-"4d423223200c0302",
-"0408c21ac21be510",
-"30e757e511ae1078",
-"06cec313ce13d8f9",
-"f526ff120dca8f27",
-"e510c413135403ff",
-"e5275401b50705e4",
-"7f0180027f00ef30",
-"e004d21b80242013",
-"1faf26120779af26",
-"1209f68e288f29e5",
-"29f47003e528f460",
-"09852926d21a8002",
-"d21a301a1bc2277f",
-"07120b6cc2277f06",
-"120b6ca213922585",
-"26311208bbc20c22",
-"301b10a213922175",
-"30ffd222c223d224",
-"0206eec20c120e7d",
-"22e4f526f5277528",
-"0f7529ffe5272529",
-"ffe5263528c313f5",
-"2aef13f52bffae2a",
-"120e15bfff0ee52b",
-"24fff529e52a34ff",
-"f5288047ef700de5",
-"2b2401f527e4352a",
-"f5268037752cffe4",
-"f52de52cc313f52c",
-"b5071ce52bae2a78",
-"03c333ce33ced8f9",
-"7c00252dffec3ecf",
-"2401cf3400fe2205",
-"2de52db407d47eff",
-"7fff22d3e5279529",
-"e5286480f8e52664",
-"80984080e527ae26",
-"7803c333ce33ced8",
-"f9ff22787fe4f6d8",
-"fd75813b0204ea02",
-"0016e493a3f8e493",
-"a34003f68001f208",
-"dff48029e493a3f8",
-"5407240cc8c333c4",
-"540f4420c8834004",
-"f456800146f6dfe4",
-"800b010204081020",
-"4080900880e47e01",
-"9360bca3ff543f30",
-"e509541ffee493a3",
-"60010ecf54c025e0",
-"60a840b8e493a3fa",
-"e493a3f8e493a3c8",
-"c582c8cac583caf0",
-"a3c8c582c8cac583",
-"cadfe9dee780bed2",
-"0dc296d20ed210c2",
-"948f08120dcaef13",
-"b39214d216e4f50c",
-"7f28120006c297d2",
-"03c20a7fe87efd12",
-"0c79c20dd2963016",
-"16120e6250f8c2af",
-"d297c2211206e5c2",
-"16e4f50cd2af227f",
-"e87efd120c792004",
-"12200a0f120e6250",
-"f5c2afc2211206e5",
-"d2af2212072e22d2",
-"10c294d20ad20dc2",
-"968f08120dcaef13",
-"b39214d216e4f50e",
-"7f28120006c295d2",
-"05c20e7fe87efd12",
-"0c79c210d2943016",
-"14120e6250f8c2af",
-"d2951206e3c216e4",
-"f50ed2af227fe87e",
-"fd120c7920071020",
-"0e0d120e6250f5c2",
-"af1206e3d2af2212",
-"072e22ad07ed30e6",
-"04d20f8002c20fed",
-"30e505120e8d8003",
-"120ee6ed30e40512",
-"0e948003120ef0ed",
-"30e204d2278002c2",
-"277f02120b6ced30",
-"e105120f14800312",
-"0f11ed30e00b120f",
-"1a201108d211d201",
-"22120f17227f0212",
-"0006209442a29592",
-"18050ee50eb40112",
-"20180ad207d20ad2",
-"0dc2968019e4f50e",
-"8014e50eb40b0fd2",
-"0ed210c294d213d2",
-"0ce4f50ec207e510",
-"c313f510e51113f5",
-"1130180343108022",
-"7f02120006209642",
-"a2979219050ce50c",
-"b4011220190ad204",
-"d20ed210c2948019",
-"e4f50c8014e50cb4",
-"0b0fd20ad20dc296",
-"c213d20ce4f50cc2",
-"04e510c313f510e5",
-"1113f51130190343",
-"108022d2217530fe",
-"d222d223c224d20a",
-"d20dc296d20ed210",
-"c294a22392277f06",
-"120b6ca22492277f",
-"07120b6c30220ca2",
-"2192258530311208",
-"bb8010a221922685",
-"3032120bf9c292c2",
-"93d209c20c222004",
-"033007447fe87efd",
-"120c792004033007",
-"37120e6250f5c2af",
-"2004033007263004",
-"04c21f8002d21fe4",
-"f50cc204f50ec207",
-"120eeb120e80d2af",
-"a21f92217530ff12",
-"06e880c7d2af80c3",
-"22e5196003b40209",
-"e50d900363936f60",
-"0be5196401702def",
-"64f070280519e519",
-"d394024024e4f519",
-"050de50d94094019",
-"752a05e4ff120c3b",
-"7f07120c3bd52af3",
-"e4f50d22e4f50df5",
-"1922e53b64157041",
-"120cede53a30e005",
-"7526808003e4f526",
-"e53ac313f53ae539",
-"30e003433a80e539",
-"c313f539e53830e0",
-"03433980c2b690d0",
-"01e4f0a3e526f0a3",
-"e53af0a3e539f0d2",
-"b622209437050ee5",
-"0ed394085012e508",
-"30e004d2958002c2",
-"95e508c313f50822",
-"e50eb40905a21492",
-"9522e50eb40a03d2",
-"9522e50eb40b05c2",
-"16e4f50e22209637",
-"050ce50cd3940850",
-"12e50830e004d297",
-"8002c297e508c313",
-"f50822e50cb40905",
-"a214929722e50cb4",
-"0a03d29722e50cb4",
-"0b05c216e4f50c22",
-"010c00c104c10ac1",
-"83c10cc109c102c1",
-"16c108010e00c107",
-"c10ec185c18bc186",
-"c18fc112c100c111",
-"c101c117010d0001",
-"1900011a00013403",
-"c12900a225922685",
-"3132120bf9c292c2",
-"9320250320060630",
-"251d300b1a7f697e",
-"00120c79120e6250",
-"fb120eb050092025",
-"04d2928002d293d2",
-"0922900ffce493fe",
-"740193ffc3953af5",
-"0bee9539f50a900f",
-"fbe493c39538f509",
-"c3ef953aee953950",
-"021509e50930e707",
-"e4f509f50af50b22",
-"0535af35ae07ee14",
-"131313541ffdee54",
-"07ff7006f526f527",
-"801574ff7e00a807",
-"088006cea2e713ce",
-"13d8f8f5278e26af",
-"05ad27020c5ae4ff",
-"7e01efc394085027",
-"ef601d64016019ef",
-"64036014ee440254",
-"fe90e000f054f4fd",
-"ee54f46d6002d322",
-"0fee25e0fe80d3c3",
-"22ad07ac06ed24ff",
-"ffec34fffeef7803",
-"cec313ce13d8f9ff",
-"ed5407fd7004f526",
-"800d74ffa8050880",
-"02c313d8fcf526ad",
-"26020aadc2282029",
-"0f120f0d8f3be53b",
-"b4150375341fd229",
-"120a568f35e53530",
-"e00c120d7d120928",
-"e4f536f537221204",
-"098e368f3722200f",
-"037e0022bff007d2",
-"157eff7fff22efc3",
-"948540037e0022ef",
-"9002ce93fe7002fe",
-"22301503430680c2",
-"15af067e0022a21a",
-"92280537e5377002",
-"0536c3e536948050",
-"07af37ae36020991",
-"e535c39410500e12",
-"0928120d7d120928",
-"e4f536f53722e4ff",
-"120e237effe4f526",
-"e526b408077f0112",
-"0e237effeeb50703",
-"af2622eec313fe05",
-"26e526d3941040e0",
-"7fff22e4ff300f02",
-"7f40200503430720",
-"20030343071090e0",
-"00e030e203430704",
-"300b034307023006",
-"03430701228e278f",
-"288d29120e74e527",
-"24d0f52ae528f52b",
-"120ea285292fab2b",
-"ad2aaf34120b4712",
-"0ea9020deac0e0c0",
-"f0c0d075d000c006",
-"c00720100b301605",
-"12080a800312064d",
-"d007d006d0d0d0f0",
-"d0e032c0e0c0f0c0",
-"d075d000c006c007",
-"200d0b3016051208",
-"458003120698d007",
-"d006d0d0d0f0d0e0",
-"32d083d082f8e493",
-"7012740193700da3",
-"a393f8740193f582",
-"8883e47374029368",
-"60efa3a3a380dfae",
-"03ab05531aef90d0",
-"00e51af0ad078e33",
-"7f02120d51af2f12",
-"0cd0431a1090d000",
-"e51af0227401a807",
-"088002c333d8fcff",
-"90e000e04402feef",
-"30270442068003f4",
-"520690e000eef022",
-"120e074005120105",
-"80f6120ec8120ed4",
-"c21f752feea20692",
-"20120db890d000e0",
-"30e1f922ae03ab05",
-"531aef90d000e51a",
-"f0ad078e337f0312",
-"0d51120bd7431a10",
-"90d000e51af022e5",
-"1a549ffd4420fe7c",
-"08ef25e0ff90d000",
-"edf0e030e4034307",
-"0190d000eef0dce9",
-"2290f000e532f0f5",
-"0fa22692277f0512",
-"0b6c90e000e04402",
-"54fefef04401f0ee",
-"f022531aef90d000",
-"e51af07f9f120cd0",
-"120bd7120bd7120b",
-"d7431a1090d000e5",
-"1af0228f2b7fed12",
-"052faf2b12052f75",
-"2c0a7fe87efd120c",
-"79120e6250fbd52c",
-"f1228f288d29120e",
-"74120ea2e52824fe",
-"fb85292f7defaf34",
-"120b47120ea9020d",
-"eaad07ac06c28ced",
-"f4ffecf4feef2401",
-"fde43ef58caf058f",
-"8ac28dd28c22ad07",
-"ac06c2caedf4ffec",
-"f4feef2401fde43e",
-"f5cdaf058fccc2cf",
-"d2ca22531aef90d0",
-"00e51af07f05120c",
-"d0120bd7431a1090",
-"d000e51af0ef1322",
-"e51a549ffe4440fd",
-"7c0890d000ef33ff",
-"5003ed8001eef044",
-"20f0dcf122120f04",
-"8e398f3a120f1d8f",
-"38e53830e1034339",
-"80e5381313543ff5",
-"3822531aef90d000",
-"e51af07f05120cd0",
-"120bd7431a1090d0",
-"00e51af022120ec8",
-"120ed490d000e020",
-"e10812036c120105",
-"80f122120ced1208",
-"f2e509700be50a70",
-"07e50b7003120eda",
-"228d318b32120cd0",
-"af31120cd0af3212",
-"0cd0af33020cd053",
-"1aef90d000e51af0",
-"120cd0431a1090d0",
-"00e51af022120e74",
-"120ea2e4fb7dd0af",
-"341200e0120ea902",
-"0dea531afb90d000",
-"e51af0531afde51a",
-"f07f3c0200063009",
-"0e120eb04009c292",
-"c293c209120e7d22",
-"a21f9221852f30a2",
-"209222c223c22402",
-"06eeefc4540f9003",
-"5393feef540f932e",
-"ff2290e000e04402",
-"54fefef054fdf0ee",
-"f022120ea2120cb3",
-"921b120ea9201bf2",
-"22300509200e0620",
-"0203d38001c32230",
-"0309200a06200203",
-"d38001c322aa06ea",
-"24d0fdeffbaf3412",
-"0bb422ef24fefb7d",
-"efaf34120bb422d2",
-"02d20dc296d210c2",
-"9422ef9002c9936d",
-"600280fe22120df9",
-"5004c210d2942212",
-"0e075004c20dd296",
-"22e58954f04401f5",
-"8922308d04c28cd3",
-"22c32230cf04c2ca",
-"d322c322120ea212",
-"0efa020ea9120eeb",
-"c20e020e45c20212",
-"0e4f020e45c205d2",
-"10c29422c203d20d",
-"c2962290d000e51a",
-"f022302803120b90",
-"22302803120d9222",
-"90e000e01322531a",
-"fe020e9b431a0102",
-"0e9b531afd020e9b",
-"431a02020e9b531a",
-"fb020e9b431a0402",
-"0e9b531a7f020e9b",
-"431a80020e9bd205",
-"020e45c20a020e4f",
-"d203020e4f8f1a02",
-"0e9b7f06020d677f",
-"04020d67ae36af37",
-"22e4f5c822120c1a",
-"22c20b22d20b22c2",
-"0622d20622af3522",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff",
-"ffffffffffffffff"
-);
-?>
-
-<span style="font-family:mono; font-size:0.85em;">
-<?php
-$shl = 3;
-
-$datalen = pow(2, $shl);
-$datalenhex = dechex($datalen);
-while (strlen($datalenhex)<2) $datalenhex="0".$datalenhex;
-
-$recordtype = 0x00;
-$recordtypehex = dechex($recordtype);
-while (strlen($recordtypehex)<2) $recordtypehex="0".$recordtypehex;
-
-for ($i=0; $i<count($blob); $i++) {
-
- $addr = ($i << $shl);
-
- // --------------------
- // checksum calculation
- // --------------------
-
- $chksum = $datalen + ($addr >> 8) + ($addr & 0xff) + $recordtype;
-
- for ($j=0; $j<strlen($blob[$i]); $j+=2)
- $chksum += hexdec(substr($blob[$i],$j,2));
-
- $chksum ^= 0xffffffff;
- ++$chksum;
- $chksum &= 0xff;
-
- // ---------------
- // Display results
- // ---------------
-
- $addrhex = dechex($addr);
- while (strlen($addrhex)<4) $addrhex="0".$addrhex;
-
- $chksumhex = dechex($chksum);
- while (strlen($chksumhex)<2) $chksumhex="0".$chksumhex;
-
- echo ":".$datalenhex.$addrhex.$recordtypehex.$blob[$i].$chksumhex."<br/>";
-}
-
-// end of file
-echo ":00000001FF";
-?>
-</span>
diff --git a/site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.d52.txt b/site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.d52.txt
deleted file mode 100644
index 715a84d..0000000
--- a/site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.d52.txt
+++ /dev/null
@@ -1,2444 +0,0 @@
-;
-; D52 V3.4.1 8052 Disassembly of dis.inc.hex
-; 2014/11/17 12:45
-;
- org 0
-;
- ljmp X04a3 ; 0000 02 04 a3 ..#
-;
-X0003: ljmp X2afb ; 0003 02 2a fb .*{
-;
-X0006: mov a,r7 ; 0006 ef o
- mov b,#3 ; 0007 75 f0 03 up.
- mul ab ; 000a a4 $
- mov r7,a ; 000b ff .
-X000c: mov r6,rb0r7 ; 000c ae 07 ..
- addc a,r7 ; 000e 3f ?
- mov a,r6 ; 000f ee n
- jnz X000c ; 0010 70 fa pz
- ret ; 0012 22 "
-;
- ljmp X2ad5 ; 0013 02 2a d5 .*U
-;
-X0016: lcall X097e ; 0016 12 09 7e ..~
- mov r7,#30h ; 0019 7f 30 .0
- lcall X05fb ; 001b 12 05 fb ..{
- mov dptr,#Xe000 ; 001e 90 e0 00 .`.
- mov a,#16h ; 0021 74 16 t.
- movx @dptr,a ; 0023 f0 p
- lcall X2dfa ; 0024 12 2d fa .-z
- clr p1.2 ; 0027 c2 92 B.
- clr p1.3 ; 0029 c2 93 B.
- clr p1.0 ; 002b c2 90 B.
- setb p1.1 ; 002d d2 91 R.
- setb px0 ; 002f d2 b8 R8
- setb px1 ; 0031 d2 ba R:
- setb it0 ; 0033 d2 88 R.
- setb ex0 ; 0035 d2 a8 R(
- setb ex1 ; 0037 d2 aa R*
- setb ex1 ; 0039 d2 aa R*
- mov r5,#44h ; 003b 7d 44 }D
- clr a ; 003d e4 d
- mov r7,a ; 003e ff .
- lcall X2e3a ; 003f 12 2e 3a ..:
- mov r5,#6dh ; 0042 7d 6d }m
- add a,r7 ; 0044 2f /
-X0045: lcall X2e3a ; 0045 12 2e 3a ..:
- mov r5,#26h ; 0048 7d 26 }&
- add a,r7 ; 004a 2f /
- lcall X2e3a ; 004b 12 2e 3a ..:
- mov r5,#50h ; 004e 7d 50 }P
- add a,r7 ; 0050 2f /
- lcall X2e3a ; 0051 12 2e 3a ..:
- lcall X2e59 ; 0054 12 2e 59 ..Y
- setb ea ; 0057 d2 af R/
- mov r7,#0b1h ; 0059 7f b1 .1
- lcall X2ef5 ; 005b 12 2e f5 ..u
- mov dptr,#X2ffe ; 005e 90 2f fe ./~
- clr a ; 0061 e4 d
- movc a,@a+dptr ; 0062 93 .
- mov r7,a ; 0063 ff .
- cjne a,#55h,X0091 ; 0064 b4 55 2a 4U*
- inc dptr ; 0067 a3 #
- clr a ; 0068 e4 d
- movc a,@a+dptr ; 0069 93 .
- cjne a,#0aah,X0071 ; 006a b4 aa 04 4*.
- setb 21h.0 ; 006d d2 08 R.
- sjmp X0081 ; 006f 80 10 ..
-;
-X0071: mov a,r7 ; 0071 ef o
- cjne a,#12h,X00a1 ; 0072 b4 12 2c 4.,
- mov dptr,#X2fff ; 0075 90 2f ff ./.
- clr a ; 0078 e4 d
- movc a,@a+dptr ; 0079 93 .
- cjne a,#34h,X0081 ; 007a b4 34 04 44.
- clr 21h.0 ; 007d c2 08 B.
- clr 22h.2 ; 007f c2 12 B.
-X0081: lcall X036c ; 0081 12 03 6c ..l
- lcall X2da6 ; 0084 12 2d a6 .-&
- lcall X0108 ; 0087 12 01 08 ...
- jnb 20h.1,X00b4 ; 008a 30 01 27 0.'
- jnb 22h.2,X00cf ; 008d 30 12 3f 0.?
- jb 20h.0,X00cf ; 0090 20 00 3c .<
- jnb 22h.1,X00af ; 0093 30 11 19 0..
- lcall X2d25 ; 0096 12 2d 25 .-%
- lcall X09c4 ; 0099 12 09 c4 ..D
- jnb 21h.0,X00a4 ; 009c 30 08 05 0..
- clr 27h.2 ; 009f c2 3a B:
-X00a1: lcall X2a26 ; 00a1 12 2a 26 .*&
-X00a4: lcall X2d92 ; 00a4 12 2d 92 .-.
- setb 20h.0 ; 00a7 d2 00 R.
- lcall X2d3b ; 00a9 12 2d 3b .-;
- lcall X07c2 ; 00ac 12 07 c2 ..B
-X00af: lcall X2dfa ; 00af 12 2d fa .-z
- clr 20h.1 ; 00b2 c2 01 B.
-X00b4: lcall X036c ; 00b4 12 03 6c ..l
- lcall X072e ; 00b7 12 07 2e ...
- jnb 22h.2,X0081 ; 00ba 30 12 c4 0.D
- jnb 20h.0,X0081 ; 00bd 30 00 c1 0.A
- mov dptr,#Xd000 ; 00c0 90 d0 00 .P.
- movx a,@dptr ; 00c3 e0 `
- jnb acc.0,X0081 ; 00c4 30 e0 ba 0`:
- clr ea ; 00c7 c2 af B/
- lcall X2e07 ; 00c9 12 2e 07 ...
- jnc X00fc ; 00cc 50 2e P.
- lcall X2eb6 ; 00ce 12 2e b6 ..6
- lcall X2ebc ; 00d1 12 2e bc ..<
- setb 27h.2 ; 00d4 d2 3a R:
- lcall X2a26 ; 00d6 12 2a 26 .*&
- lcall X2d3b ; 00d9 12 2d 3b .-;
- setb ea ; 00dc d2 af R/
- sjmp X0081 ; 00de 80 a1 .!
-;
-X00e0: mov r6,rb0r3 ; 00e0 ae 03 ..
- mov r3,rb0r5 ; 00e2 ab 05 +.
- anl 3ah,#0efh ; 00e4 53 3a ef S:o
- mov dptr,#Xd000 ; 00e7 90 d0 00 .P.
- mov a,3ah ; 00ea e5 3a e:
- movx @dptr,a ; 00ec f0 p
- mov r5,rb0r7 ; 00ed ad 07 -.
- mov r6,33h ; 00ef ae 33 .3
- mov r7,#20h ; 00f1 7f 20 .
- lcall X2d51 ; 00f3 12 2d 51 .-Q
- orl 3ah,#10h ; 00f6 43 3a 10 C:.
- mov dptr,#Xd000 ; 00f9 90 d0 00 .P.
-X00fc: mov a,3ah ; 00fc e5 3a e:
- movx @dptr,a ; 00fe f0 p
- ret ; 00ff 22 "
-;
- mov r2,a ; 0100 fa z
- mov r6,#10h ; 0101 7e 10 ~.
- inc r1 ; 0103 09 .
- dec a ; 0104 14 .
-X0105: lcall X2da6 ; 0105 12 2d a6 .-&
-X0108: mov dptr,#Xe000 ; 0108 90 e0 00 .`.
- movx a,@dptr ; 010b e0 `
- mov r7,a ; 010c ff .
- jb acc.1,X0113 ; 010d 20 e1 03 a.
- ljmp X02c8 ; 0110 02 02 c8 ..H
-;
-X0113: clr ex0 ; 0113 c2 a8 B(
- clr ex1 ; 0115 c2 aa B*
- jb 20h.4,X011d ; 0117 20 04 03 ..
- jnb 20h.7,X0122 ; 011a 30 07 05 0..
-X011d: setb ex0 ; 011d d2 a8 R(
- setb ex1 ; 011f d2 aa R*
- ret ; 0121 22 "
-;
-X0122: mov a,r7 ; 0122 ef o
- mov c,acc.3 ; 0123 a2 e3 "c
- mov 27h.4,c ; 0125 92 3c .<
- mov dptr,#Xf000 ; 0127 90 f0 00 .p.
- movx a,@dptr ; 012a e0 `
- mov 2ch,a ; 012b f5 2c u,
- lcall X2e2f ; 012d 12 2e 2f ../
-X0130: setb ex0 ; 0130 d2 a8 R(
- setb ex1 ; 0132 d2 aa R*
- jnb 27h.4,X013a ; 0134 30 3c 03 0<.
- ljmp X01ee ; 0137 02 01 ee ..n
-;
-X013a: clr 27h.5 ; 013a c2 3d B=
- clr 27h.6 ; 013c c2 3e B>
- jb 22h.7,X0144 ; 013e 20 17 03 ..
- ljmp X01d4 ; 0141 02 01 d4 ..T
-;
-X0144: mov a,rb3r0 ; 0144 e5 18 e.
- add a,#0e1h ; 0146 24 e1 $a
- jz X0185 ; 0148 60 3b `;
- add a,#54h ; 014a 24 54 $T
- jnz X0151 ; 014c 70 03 p.
- ljmp X01d0 ; 014e 02 01 d0 ..P
-;
-X0151: add a,#0fah ; 0151 24 fa $z
- jz X0169 ; 0153 60 14 `.
- dec a ; 0155 14 .
- jz X0196 ; 0156 60 3e `>
- dec a ; 0158 14 .
- jz X019a ; 0159 60 3f `?
- dec a ; 015b 14 .
- jz X0181 ; 015c 60 23 `#
- add a,#74h ; 015e 24 74 $t
- jnz X01ce ; 0160 70 6c pl
- mov r7,2ch ; 0162 af 2c /,
- lcall X05fb ; 0164 12 05 fb ..{
- sjmp X01d0 ; 0167 80 67 .g
-;
-X0169: mov a,2ch ; 0169 e5 2c e,
- jnb acc.1,X0172 ; 016b 30 e1 04 0a.
- setb p1.0 ; 016e d2 90 R.
- sjmp X01f0 ; 0170 80 7e .~
-;
-X0172: clr p1.0 ; 0172 c2 90 B.
- sjmp X01f0 ; 0174 80 7a .z
-;
- clr 27h.7 ; 0176 c2 3f B?
- sjmp X017c ; 0178 80 02 ..
-;
- setb 27h.7 ; 017a d2 3f R?
-X017c: mov 2fh,2ch ; 017c 85 2c 2f .,/
- sjmp X01c7 ; 017f 80 46 .F
-;
-X0181: setb 27h.6 ; 0181 d2 3e R>
- sjmp X01f0 ; 0183 80 6b .k
-;
-X0185: mov a,2ch ; 0185 e5 2c e,
- jnz X01c3 ; 0187 70 3a p:
- lcall X2ced ; 0189 12 2c ed .,m
- lcall X08f2 ; 018c 12 08 f2 ..r
- mov rb2r2,38h ; 018f 85 38 12 .8.
- mov rb2r3,39h ; 0192 85 39 13 .9.
- mov rb2r4,3ah ; 0195 85 3a 14 .:.
- mov rb2r5,rb1r1 ; 0198 85 09 15 ...
- mov rb2r6,2ah ; 019b 85 2a 16 .*.
- mov rb2r7,2bh ; 019e 85 2b 17 .+.
- sjmp X01d0 ; 01a1 80 2d .-
-;
- mov a,2ch ; 01a3 e5 2c e,
- clr c ; 01a5 c3 C
- subb a,#1 ; 01a6 94 01 ..
- jc X01bd ; 01a8 40 13 @.
- mov a,2ch ; 01aa e5 2c e,
- setb c ; 01ac d3 S
- subb a,#6 ; 01ad 94 06 ..
- jnc X01dd ; 01af 50 2c P,
- clr 27h.7 ; 01b1 c2 3f B?
- mov a,#11h ; 01b3 74 11 t.
- add a,2ch ; 01b5 25 2c %,
- mov r0,a ; 01b7 f8 x
- mov a,@r0 ; 01b8 e6 f
- mov 2fh,a ; 01b9 f5 2f u/
- sjmp X01e7 ; 01bb 80 2a .*
-;
-X01bd: mov a,2ch ; 01bd e5 2c e,
- cjne a,#7,X01f0 ; 01bf b4 07 2e 4..
- clr 27h.7 ; 01c2 c2 3f B?
- mov 2fh,3bh ; 01c4 85 3b 2f .;/
-X01c7: setb 24h.0 ; 01c7 d2 20 R
- lcall X2db8 ; 01c9 12 2d b8 .-8
- sjmp X01d0 ; 01cc 80 02 ..
-;
-X01ce: setb 27h.5 ; 01ce d2 3d R=
-X01d0: clr 22h.7 ; 01d0 c2 17 B.
- sjmp X01d6 ; 01d2 80 02 ..
-;
-X01d4: setb 27h.5 ; 01d4 d2 3d R=
-X01d6: jnb 27h.5,X01e0 ; 01d6 30 3d 07 0=.
- mov r7,2ch ; 01d9 af 2c /,
- lcall X052f ; 01db 12 05 2f ../
- sjmp X01e8 ; 01de 80 08 ..
-;
-X01e0: jnb 27h.6,X01e8 ; 01e0 30 3e 05 0>.
- mov r7,2ch ; 01e3 af 2c /,
- lcall X0597 ; 01e5 12 05 97 ...
-X01e8: lcall X2e85 ; 01e8 12 2e 85 ...
- ljmp X02c2 ; 01eb 02 02 c2 ..B
-;
-X01ee: clr 27h.5 ; 01ee c2 3d B=
-X01f0: mov a,2ch ; 01f0 e5 2c e,
- lcall X2b21 ; 01f2 12 2b 21 .+!
- ljmp Xb73f ; 01f5 02 b7 3f .7?
-;
- ljmp X3520 ; 01f8 02 35 20 .5
-;
- ljmp Xb760 ; 01fb 02 b7 60 .7`
-;
- ljmp X56a7 ; 01fe 02 56 a7 .V'
-;
- ljmp X7da8 ; 0201 02 7d a8 .}(
-;
- ljmp X64a9 ; 0204 02 64 a9 .d)
-;
- ljmp X48aa ; 0207 02 48 aa .H*
-;
- ljmp X64ab ; 020a 02 64 ab .d+
-;
- ljmp X6dad ; 020d 02 6d ad .m-
-;
- ljmp X74ae ; 0210 02 74 ae .t.
-;
- ljmp X41c0 ; 0213 02 41 c0 .A@
-;
- ljmp Xb7eb ; 0216 02 b7 eb .7k
-;
- ljmp X7bd0 ; 0219 02 7b d0 .{P
-;
- ljmp Xb7d1 ; 021c 02 b7 d1 .7Q
-;
- ljmp Xb7d2 ; 021f 02 b7 d2 .7R
-;
- ljmp Xb7d3 ; 0222 02 b7 d3 .7S
-;
- ljmp Xb7d4 ; 0225 02 b7 d4 .7T
-;
- ljmp X98fd ; 0228 02 98 fd ..}
-;
- ljmp Xadff ; 022b 02 ad ff .-.
-;
- ljmp Xa8fe ; 022e 02 a8 fe .(~
-;
- org 233h
-;
- ljmp Xb512 ; 0233 02 b5 12 .5.
-;
- add a,r2 ; 0236 2a *
- movc a,@a+pc ; 0237 83 .
- mov r7,2dh ; 0238 af 2d /-
- clr 27h.7 ; 023a c2 3f B?
- mov 2fh,2dh ; 023c 85 2d 2f .-/
- sjmp X0269 ; 023f 80 28 .(
-;
- clr 27h.7 ; 0241 c2 3f B?
- mov 2fh,#0ffh ; 0243 75 2f ff u/.
- sjmp X0269 ; 0246 80 21 .!
-;
- mov r7,#30h ; 0248 7f 30 .0
- lcall X05fb ; 024a 12 05 fb ..{
- clr 27h.7 ; 024d c2 3f B?
- mov 2fh,#55h ; 024f 75 2f 55 u/U
- clr 24h.0 ; 0252 c2 20 B
-X0254: sjmp X02c1 ; 0254 80 6b .k
-;
- lcall X2ead ; 0256 12 2e ad ..-
- setb 27h.5 ; 0259 d2 3d R=
- sjmp X02d7 ; 025b 80 7a .z
-;
- lcall X2ee6 ; 025d 12 2e e6 ..f
- setb 27h.5 ; 0260 d2 3d R=
- sjmp X02b7 ; 0262 80 53 .S
-;
- clr 27h.7 ; 0264 c2 3f B?
- clr a ; 0266 e4 d
- mov 2fh,a ; 0267 f5 2f u/
-X0269: setb 24h.0 ; 0269 d2 20 R
- sjmp X02a1 ; 026b 80 34 .4
-;
- lcall X2e94 ; 026d 12 2e 94 ...
- setb 27h.5 ; 0270 d2 3d R=
- sjmp X02b7 ; 0272 80 43 .C
-;
- lcall X2ef0 ; 0274 12 2e f0 ..p
- setb 27h.5 ; 0277 d2 3d R=
- sjmp X02b7 ; 0279 80 3c .<
-;
- mov 2eh,#1 ; 027b 75 2e 01 u..
- jnb p1.0,X0284 ; 027e 30 90 03 0..
- orl 2eh,#2 ; 0281 43 2e 02 C..
-X0284: clr 27h.7 ; 0284 c2 3f B?
- mov 2fh,2eh ; 0286 85 2e 2f ../
- setb 24h.0 ; 0289 d2 20 R
- sjmp X02a1 ; 028b 80 14 ..
-;
- setb p1.0 ; 028d d2 90 R.
- clr 27h.7 ; 028f c2 3f B?
- mov 2fh,2fh ; 0291 85 2f 2f .//
- setb 24h.0 ; 0294 d2 20 R
- sjmp X02a1 ; 0296 80 09 ..
-;
- clr p1.0 ; 0298 c2 90 B.
- clr 27h.7 ; 029a c2 3f B?
- mov 2fh,2fh ; 029c 85 2f 2f .//
- setb 24h.0 ; 029f d2 20 R
-X02a1: lcall X2db8 ; 02a1 12 2d b8 .-8
- setb 27h.5 ; 02a4 d2 3d R=
- sjmp X02d7 ; 02a6 80 2f ./
-;
- clr p1.1 ; 02a8 c2 91 B.
- mov r7,#5 ; 02aa 7f 05 ..
- lcall X0006 ; 02ac 12 00 06 ...
- setb p1.1 ; 02af d2 91 R.
- setb 27h.5 ; 02b1 d2 3d R=
- sjmp X02b7 ; 02b3 80 02 ..
-;
- setb 27h.5 ; 02b5 d2 3d R=
-X02b7: jnb 27h.5,X02bd ; 02b7 30 3d 03 0=.
- lcall X2e85 ; 02ba 12 2e 85 ...
-X02bd: setb 22h.7 ; 02bd d2 17 R.
- mov rb3r0,2ch ; 02bf 85 2c 18 .,.
-X02c2: jb 20h.1,X02c8 ; 02c2 20 01 03 ..
- lcall X2dfa ; 02c5 12 2d fa .-z
-X02c8: ret ; 02c8 22 "
-;
-X02c9: orl a,#6dh ; 02c9 44 6d Dm
- add a,@r0 ; 02cb 26 &
- jnc X02ce ; 02cc 50 00 P.
-X02ce: mov r7,a ; 02ce ff .
- orl 41h,#3fh ; 02cf 43 41 3f CA?
- addc a,r5 ; 02d2 3d =
- addc a,r3 ; 02d3 3b ;
- addc a,r4 ; 02d4 3c <
- anl a,r0 ; 02d5 58 X
- xrl a,#44h ; 02d6 64 44 dD
- orl 40h,a ; 02d8 42 40 B@
- addc a,r6 ; 02da 3e >
- add a,r7 ; 02db 2f /
- add a,r1 ; 02dc 29 )
- anl a,r1 ; 02dd 59 Y
- xrl a,38h ; 02de 65 38 e8
- add a,r2 ; 02e0 2a *
- jnz X0320 ; 02e1 70 3d p=
- jbc 20h.2,X0360 ; 02e3 10 02 7a ..z
- xrl a,@r0 ; 02e6 66 f
- acall X032c ; 02e7 71 2c q,
- addc a,r7 ; 02e9 3f ?
- addc a,r6 ; 02ea 3e >
- acall X0003 ; 02eb 11 03 ..
- mov r3,#67h ; 02ed 7b 67 {g
- add a,r6 ; 02ef 2e .
- add a,r5 ; 02f0 2d -
- jb 22h.2,X02f9 ; 02f1 20 12 05 ..
- inc a ; 02f4 04 .
- mov r4,#68h ; 02f5 7c 68 |h
- addc a,r1 ; 02f7 39 9
- add a,r7 ; 02f8 2f /
-X02f9: ajmp X0114 ; 02f9 21 14 !.
-;
- rrc a ; 02fb 13 .
- inc @r0 ; 02fc 06 .
- mov r5,#69h ; 02fd 7d 69 }i
- acall X0130 ; 02ff 31 30 10
-X0301: rl a ; 0301 23 #
- ret ; 0302 22 "
-;
-X0303: dec rb0r7 ; 0303 15 07 ..
- mov r6,#6ah ; 0305 7e 6a ~j
- orl c,26h.2 ; 0307 72 32 r2
- add a,#16h ; 0309 24 16 $.
- inc r0 ; 030b 08 .
- inc r1 ; 030c 09 .
- mov r7,#6bh ; 030d 7f 6b .k
- rlc a ; 030f 33 3
- add a,rb2r7 ; 0310 25 17 %.
- dec r0 ; 0312 18 .
- add a,r3 ; 0313 2b +
- add a,r2 ; 0314 2a *
- jz X0383 ; 0315 60 6c `l
- addc a,#35h ; 0317 34 35 45
- add a,@r0 ; 0319 26 &
- add a,@r1 ; 031a 27 '
- dec r1 ; 031b 19 .
- add a,r4 ; 031c 2c ,
- ajmp X036d ; 031d 61 6d am
-;
- jmp @a+dptr ; 031f 73 s
-;
-X0320: add a,r0 ; 0320 28 (
- mov a,#3ah ; 0321 74 3a t:
- add a,r5 ; 0323 2d -
- xrl 6eh,a ; 0324 62 6e bn
- addc a,r2 ; 0326 3a :
- addc a,@r0 ; 0327 36 6
- addc a,r4 ; 0328 3c <
- addc a,r3 ; 0329 3b ;
- mov 2bh,#63h ; 032a 75 2b 63 u+c
- mov @r0,#55h ; 032d 76 55 vU
- anl a,@r0 ; 032f 56 V
- mov @r1,#78h ; 0330 77 78 wx
- mov r1,#7ah ; 0332 79 7a yz
- add a,r6 ; 0334 2e .
- mov r3,#7ch ; 0335 7b 7c {|
- xrl a,r7 ; 0337 6f o
- mov r5,#6bh ; 0338 7d 6b }k
- orl a,@r1 ; 033a 47 G
- mov r6,#7fh ; 033b 7e 7f ~.
- xrl a,r7 ; 033d 6f o
- anl 53h,a ; 033e 52 53 RS
- jnc X03ae ; 0340 50 6c Pl
- xrl a,r5 ; 0342 6d m
- orl a,r0 ; 0343 48 H
- ajmp X0045 ; 0344 01 45 .E
-;
- anl a,@r1 ; 0346 57 W
- xrl a,r6 ; 0347 6e n
- acall X026a ; 0348 51 6a Qj
- addc a,@r1 ; 034a 37 7
- orl a,r1 ; 034b 49 I
- orl a,@r0 ; 034c 46 F
- anl a,#0 ; 034d 54 00 T.
- nop ; 034f 00 .
-;
- org 351h
-;
- ajmp X0254 ; 0351 41 54 AT
-;
-X0353: nop ; 0353 00 .
- ajmp X0001 ; 0354 01 01 ..
-;
- ljmp X0102 ; 0356 02 01 02 ...
-;
- ljmp X0301 ; 0359 02 03 01 ...
-;
- ljmp X0203 ; 035c 02 02 03 ...
-;
- ljmp X0303 ; 035f 02 03 03 ...
-;
- inc a ; 0362 04 .
-X0363: dec a ; 0363 14 .
- rl a ; 0364 23 #
- dec a ; 0365 14 .
- addc a,r2 ; 0366 3a :
- dec a ; 0367 14 .
- xrl a,r5 ; 0368 6d m
- orl 32h,a ; 0369 42 32 B2
- rl a ; 036b 23 #
-X036c: jb 25h.4,X0372 ; 036c 20 2c 03 ,.
- ljmp X0408 ; 036f 02 04 08 ...
-;
-X0372: clr 27h.2 ; 0372 c2 3a B:
- clr 27h.3 ; 0374 c2 3b B;
- mov a,rb2r0 ; 0376 e5 10 e.
- jnb acc.7,X03d2 ; 0378 30 e7 57 0gW
- mov a,rb2r1 ; 037b e5 11 e.
- mov r6,rb2r0 ; 037d ae 10 ..
- mov r0,#6 ; 037f 78 06 x.
-X0381: mov a,r6 ; 0381 ee n
- clr c ; 0382 c3 C
-X0383: rrc a ; 0383 13 .
- mov a,r6 ; 0384 ee n
- rrc a ; 0385 13 .
- djnz r0,X0381 ; 0386 d8 f9 Xy
- mov 26h,a ; 0388 f5 26 u&
- mov r7,a ; 038a ff .
- lcall X2dea ; 038b 12 2d ea .-j
- mov r7,27h ; 038e af 27 /'
- mov a,rb2r0 ; 0390 e5 10 e.
- swap a ; 0392 c4 D
- rrc a ; 0393 13 .
- rrc a ; 0394 13 .
- anl a,#3 ; 0395 54 03 T.
- mov r7,a ; 0397 ff .
- mov a,27h ; 0398 e5 27 e'
- anl a,#1 ; 039a 54 01 T.
- cjne a,rb0r7,X03a4 ; 039c b5 07 05 5..
- clr a ; 039f e4 d
- mov r7,#1 ; 03a0 7f 01 ..
- sjmp X03a6 ; 03a2 80 02 ..
-;
-X03a4: mov r7,#0 ; 03a4 7f 00 ..
-X03a6: mov a,r7 ; 03a6 ef o
- jnb acc.0,X03ae ; 03a7 30 e0 04 0`.
- setb 27h.3 ; 03aa d2 3b R;
- sjmp X03d2 ; 03ac 80 24 .$
-;
-X03ae: jb 22h.3,X03f0 ; 03ae 20 13 3f .?
- mov r7,26h ; 03b1 af 26 /&
- lcall X0779 ; 03b3 12 07 79 ..y
- mov r7,26h ; 03b6 af 26 /&
- lcall X09f6 ; 03b8 12 09 f6 ..v
- mov r6,28h ; 03bb ae 28 .(
- mov r7,29h ; 03bd af 29 /)
- mov a,29h ; 03bf e5 29 e)
- cpl a ; 03c1 f4 t
- jnz X03c7 ; 03c2 70 03 p.
- mov a,28h ; 03c4 e5 28 e(
- cpl a ; 03c6 f4 t
-X03c7: jz X03d2 ; 03c7 60 09 `.
- mov 26h,29h ; 03c9 85 29 26 .)&
- setb 27h.2 ; 03cc d2 3a R:
- sjmp X03d2 ; 03ce 80 02 ..
-;
- setb 27h.2 ; 03d0 d2 3a R:
-X03d2: jnb 27h.2,X0410 ; 03d2 30 3a 3b 0:;
- clr 24h.7 ; 03d5 c2 27 B'
- mov r7,#7 ; 03d7 7f 07 ..
- lcall X2b6c ; 03d9 12 2b 6c .+l
- clr 24h.7 ; 03dc c2 27 B'
- mov r7,#6 ; 03de 7f 06 ..
- lcall X2b6c ; 03e0 12 2b 6c .+l
- mov c,22h.3 ; 03e3 a2 13 ".
- mov 24h.5,c ; 03e5 92 25 .%
- mov 31h,26h ; 03e7 85 26 31 .&1
- lcall X08bb ; 03ea 12 08 bb ..;
- clr 25h.4 ; 03ed c2 2c B,
- ret ; 03ef 22 "
-;
-X03f0: jnb 27h.3,X0403 ; 03f0 30 3b 10 0;.
- mov c,22h.3 ; 03f3 a2 13 ".
- mov 24h.1,c ; 03f5 92 21 .!
- mov 30h,#0ffh ; 03f7 75 30 ff u0.
- setb 24h.2 ; 03fa d2 22 R"
- clr 24h.3 ; 03fc c2 23 B#
- setb 24h.4 ; 03fe d2 24 R$
- ljmp X06ee ; 0400 02 06 ee ..n
-;
-X0403: clr 25h.4 ; 0403 c2 2c B,
- lcall X2e7d ; 0405 12 2e 7d ..}
-X0408: ret ; 0408 22 "
-;
-X0409: clr a ; 0409 e4 d
- mov 26h,a ; 040a f5 26 u&
- mov 27h,a ; 040c f5 27 u'
- mov 28h,#2fh ; 040e 75 28 2f u(/
- mov 29h,#0ffh ; 0411 75 29 ff u).
-X0414: mov a,27h ; 0414 e5 27 e'
- add a,29h ; 0416 25 29 %)
- mov r7,a ; 0418 ff .
- mov a,26h ; 0419 e5 26 e&
- addc a,28h ; 041b 35 28 5(
- clr c ; 041d c3 C
- rrc a ; 041e 13 .
- mov 2ah,a ; 041f f5 2a u*
- mov a,r7 ; 0421 ef o
- rrc a ; 0422 13 .
- mov 2bh,a ; 0423 f5 2b u+
- mov r7,a ; 0425 ff .
- mov r6,2ah ; 0426 ae 2a .*
- lcall X2e15 ; 0428 12 2e 15 ...
- cjne r7,#0ffh,X045c ; 042b bf ff 2e ?..
- mov a,2bh ; 042e e5 2b e+
- add a,#0ffh ; 0430 24 ff $.
- mov 29h,a ; 0432 f5 29 u)
- mov a,2ah ; 0434 e5 2a e*
- addc a,#0ffh ; 0436 34 ff 4.
- mov 28h,a ; 0438 f5 28 u(
- sjmp X0483 ; 043a 80 47 .G
-;
- mov a,r7 ; 043c ef o
- jnz X046c ; 043d 70 2d p-
- mov a,2bh ; 043f e5 2b e+
- add a,#1 ; 0441 24 01 $.
- mov 27h,a ; 0443 f5 27 u'
- clr a ; 0445 e4 d
- addc a,2ah ; 0446 35 2a 5*
- mov 26h,a ; 0448 f5 26 u&
- sjmp X0483 ; 044a 80 37 .7
-;
- mov 2ch,#0ffh ; 044c 75 2c ff u,.
- clr a ; 044f e4 d
- mov 2dh,a ; 0450 f5 2d u-
-X0452: mov a,2ch ; 0452 e5 2c e,
- clr c ; 0454 c3 C
- rrc a ; 0455 13 .
- mov 2ch,a ; 0456 f5 2c u,
- cjne a,rb0r7,X0497 ; 0458 b5 07 3c 5.<
- mov a,2bh ; 045b e5 2b e+
- mov r6,2ah ; 045d ae 2a .*
- mov r0,#3 ; 045f 78 03 x.
-X0461: clr c ; 0461 c3 C
- rlc a ; 0462 33 3
- mov a,r6 ; 0463 ee n
- rlc a ; 0464 33 3
- mov a,r6 ; 0465 ee n
- djnz r0,X0461 ; 0466 d8 f9 Xy
- mov r4,#0 ; 0468 7c 00 |.
- add a,2dh ; 046a 25 2d %-
-X046c: mov r7,a ; 046c ff .
- mov a,r4 ; 046d ec l
- addc a,r6 ; 046e 3e >
- mov a,r7 ; 046f ef o
- add a,#1 ; 0470 24 01 $.
- mov a,r7 ; 0472 ef o
- addc a,#0 ; 0473 34 00 4.
- mov r6,a ; 0475 fe ~
- ret ; 0476 22 "
-;
- inc 2dh ; 0477 05 2d .-
- mov a,2dh ; 0479 e5 2d e-
-X047b: cjne a,#7,X0452 ; 047b b4 07 d4 4.T
- mov r6,#0ffh ; 047e 7e ff ~.
- mov r7,#0ffh ; 0480 7f ff ..
- ret ; 0482 22 "
-;
-X0483: setb c ; 0483 d3 S
- mov a,27h ; 0484 e5 27 e'
- subb a,29h ; 0486 95 29 .)
- mov a,28h ; 0488 e5 28 e(
- xrl a,#80h ; 048a 64 80 d.
- mov r0,a ; 048c f8 x
- mov a,26h ; 048d e5 26 e&
- xrl a,#80h ; 048f 64 80 d.
- subb a,r0 ; 0491 98 .
- jc X0414 ; 0492 40 80 @.
- mov a,27h ; 0494 e5 27 e'
- mov r6,26h ; 0496 ae 26 .&
- mov r0,#3 ; 0498 78 03 x.
-X049a: clr c ; 049a c3 C
- rlc a ; 049b 33 3
- mov a,r6 ; 049c ee n
- rlc a ; 049d 33 3
- mov a,r6 ; 049e ee n
- djnz r0,X049a ; 049f d8 f9 Xy
- mov r7,a ; 04a1 ff .
- ret ; 04a2 22 "
-;
-X04a3: mov r0,#7fh ; 04a3 78 7f x.
- clr a ; 04a5 e4 d
-X04a6: mov @r0,a ; 04a6 f6 v
- djnz r0,X04a6 ; 04a7 d8 fd X}
- mov sp,#3bh ; 04a9 75 81 3b u.;
- ljmp X04ea ; 04ac 02 04 ea ..j
-;
-X04af: ljmp X0016 ; 04af 02 00 16 ...
-;
-X04b2: clr a ; 04b2 e4 d
- movc a,@a+dptr ; 04b3 93 .
- inc dptr ; 04b4 a3 #
- mov r0,a ; 04b5 f8 x
- clr a ; 04b6 e4 d
- movc a,@a+dptr ; 04b7 93 .
- inc dptr ; 04b8 a3 #
- jc X04be ; 04b9 40 03 @.
- mov @r0,a ; 04bb f6 v
- sjmp X04bf ; 04bc 80 01 ..
-;
-X04be: movx @r0,a ; 04be f2 r
-X04bf: inc r0 ; 04bf 08 .
- mov r7,a ; 04c0 ff .
- cpl a ; 04c1 f4 t
- sjmp X04ed ; 04c2 80 29 .)
-;
-X04c4: clr a ; 04c4 e4 d
- movc a,@a+dptr ; 04c5 93 .
- inc dptr ; 04c6 a3 #
- mov r0,a ; 04c7 f8 x
- anl a,#7 ; 04c8 54 07 T.
- add a,#2ch ; 04ca 24 2c $,
- xch a,r0 ; 04cc c8 H
- clr c ; 04cd c3 C
- rlc a ; 04ce 33 3
- swap a ; 04cf c4 D
- anl a,#2fh ; 04d0 54 2f T/
-X04d2: orl a,#20h ; 04d2 44 20 D
- xch a,r0 ; 04d4 c8 H
- movc a,@a+pc ; 04d5 83 .
- jc X04dc ; 04d6 40 04 @.
- cpl a ; 04d8 f4 t
- anl a,@r0 ; 04d9 56 V
- sjmp X04dd ; 04da 80 01 ..
-;
-X04dc: orl a,@r0 ; 04dc 46 F
-X04dd: mov @r0,a ; 04dd f6 v
- mov r7,a ; 04de ff .
- clr a ; 04df e4 d
- sjmp X050d ; 04e0 80 2b .+
-;
- ajmp X0002 ; 04e2 01 02 ..
-;
- inc a ; 04e4 04 .
- inc r0 ; 04e5 08 .
- jbc 24h.0,X0529 ; 04e6 10 20 40 . @
- sjmp X047b ; 04e9 80 90 ..
-;
- inc r0 ; 04eb 08 .
- sjmp X04d2 ; 04ec 80 e4 .d
-;
- mov r6,#1 ; 04ee 7e 01 ~.
- movc a,@a+dptr ; 04f0 93 .
- jz X04af ; 04f1 60 bc `<
- inc dptr ; 04f3 a3 #
- mov r7,a ; 04f4 ff .
- anl a,#3fh ; 04f5 54 3f T?
- jnb acc.5,X0503 ; 04f7 30 e5 09 0e.
- anl a,#3fh ; 04fa 54 3f T?
- mov r6,a ; 04fc fe ~
- clr a ; 04fd e4 d
- movc a,@a+dptr ; 04fe 93 .
- inc dptr ; 04ff a3 #
- jz X0503 ; 0500 60 01 `.
- add a,r6 ; 0502 2e .
-X0503: mov a,r7 ; 0503 ef o
- anl a,#0c0h ; 0504 54 c0 T@
- add a,acc ; 0506 25 e0 %`
- jz X04b2 ; 0508 60 a8 `(
- jc X04c4 ; 050a 40 b8 @8
- clr a ; 050c e4 d
-X050d: movc a,@a+dptr ; 050d 93 .
- inc dptr ; 050e a3 #
- mov r2,a ; 050f fa z
- clr a ; 0510 e4 d
- movc a,@a+dptr ; 0511 93 .
- inc dptr ; 0512 a3 #
- mov r0,a ; 0513 f8 x
- clr a ; 0514 e4 d
- movc a,@a+dptr ; 0515 93 .
- inc dptr ; 0516 a3 #
- xch a,r0 ; 0517 c8 H
- xch a,dpl ; 0518 c5 82 E.
- xch a,r0 ; 051a c8 H
- mov a,r2 ; 051b ea j
- xch a,dph ; 051c c5 83 E.
- mov a,r2 ; 051e ea j
- movx @dptr,a ; 051f f0 p
- inc dptr ; 0520 a3 #
- xch a,r0 ; 0521 c8 H
- xch a,dpl ; 0522 c5 82 E.
- xch a,r0 ; 0524 c8 H
- mov a,r2 ; 0525 ea j
- xch a,dph ; 0526 c5 83 E.
- mov a,r2 ; 0528 ea j
-X0529: mov r7,a ; 0529 ff .
- mov a,r1 ; 052a e9 i
- mov r6,a ; 052b fe ~
- mov a,@r1 ; 052c e7 g
- sjmp X04ed ; 052d 80 be .>
-;
-X052f: setb 25h.5 ; 052f d2 2d R-
- clr p1.6 ; 0531 c2 96 B.
- setb 25h.6 ; 0533 d2 2e R.
- setb 22h.0 ; 0535 d2 10 R.
- clr p1.4 ; 0537 c2 94 B.
- mov r7,rb1r0 ; 0539 af 08 /.
- lcall X2dea ; 053b 12 2d ea .-j
- mov a,r7 ; 053e ef o
- rrc a ; 053f 13 .
- cpl c ; 0540 b3 3
- mov 22h.4,c ; 0541 92 14 ..
- setb 22h.6 ; 0543 d2 16 R.
- clr a ; 0545 e4 d
- mov 2ch,a ; 0546 f5 2c u,
- mov r7,#28h ; 0548 7f 28 .(
- lcall X0006 ; 054a 12 00 06 ...
- clr p1.7 ; 054d c2 97 B.
- setb 20h.3 ; 054f d2 03 R.
- clr 25h.2 ; 0551 c2 2a B*
- mov r7,#0e8h ; 0553 7f e8 .h
- mov r6,#0fdh ; 0555 7e fd ~}
- lcall X2c79 ; 0557 12 2c 79 .,y
- clr 25h.5 ; 055a c2 2d B-
- setb p1.6 ; 055c d2 96 R.
-X055e: jnb 22h.6,X0577 ; 055e 30 16 16 0..
- lcall X2e62 ; 0561 12 2e 62 ..b
- jnc X055e ; 0564 50 f8 Px
- clr ea ; 0566 c2 af B/
- setb p1.7 ; 0568 d2 97 R.
- clr 24h.1 ; 056a c2 21 B!
- lcall X06e5 ; 056c 12 06 e5 ..e
- clr 22h.6 ; 056f c2 16 B.
- clr a ; 0571 e4 d
- mov 2ch,a ; 0572 f5 2c u,
- setb ea ; 0574 d2 af R/
- ret ; 0576 22 "
-;
-X0577: mov r7,#0e8h ; 0577 7f e8 .h
- mov r6,#0fdh ; 0579 7e fd ~}
- lcall X2c79 ; 057b 12 2c 79 .,y
-X057e: jb 20h.4,X0593 ; 057e 20 04 12 ..
- jb 25h.2,X05b3 ; 0581 20 2a 2f */
- lcall X2e62 ; 0584 12 2e 62 ..b
- jnc X057e ; 0587 50 f5 Pu
- clr ea ; 0589 c2 af B/
- clr 24h.1 ; 058b c2 21 B!
- lcall X06e5 ; 058d 12 06 e5 ..e
- setb ea ; 0590 d2 af R/
- ret ; 0592 22 "
-;
-X0593: lcall X072e ; 0593 12 07 2e ...
- ret ; 0596 22 "
-;
-X0597: setb 22h.0 ; 0597 d2 10 R.
- clr p1.4 ; 0599 c2 94 B.
- setb 25h.2 ; 059b d2 2a R*
- setb 25h.5 ; 059d d2 2d R-
- clr p1.6 ; 059f c2 96 B.
- mov r7,rb1r0 ; 05a1 af 08 /.
- lcall X2dea ; 05a3 12 2d ea .-j
- mov a,r7 ; 05a6 ef o
- rrc a ; 05a7 13 .
- cpl c ; 05a8 b3 3
- mov 22h.4,c ; 05a9 92 14 ..
- setb 22h.6 ; 05ab d2 16 R.
- clr a ; 05ad e4 d
- mov 2eh,a ; 05ae f5 2e u.
- mov r7,#28h ; 05b0 7f 28 .(
- lcall X0006 ; 05b2 12 00 06 ...
- clr p1.5 ; 05b5 c2 95 B.
- setb 20h.5 ; 05b7 d2 05 R.
- clr 25h.6 ; 05b9 c2 2e B.
- mov r7,#0e8h ; 05bb 7f e8 .h
- mov r6,#0fdh ; 05bd 7e fd ~}
- lcall X2c79 ; 05bf 12 2c 79 .,y
- clr 22h.0 ; 05c2 c2 10 B.
- setb p1.4 ; 05c4 d2 94 R.
-X05c6: jnb 22h.6,X05dd ; 05c6 30 16 14 0..
- lcall X2e62 ; 05c9 12 2e 62 ..b
- jnc X05c6 ; 05cc 50 f8 Px
- clr ea ; 05ce c2 af B/
- setb p1.5 ; 05d0 d2 95 R.
- lcall X06e3 ; 05d2 12 06 e3 ..c
- clr 22h.6 ; 05d5 c2 16 B.
- clr a ; 05d7 e4 d
- mov 2eh,a ; 05d8 f5 2e u.
- setb ea ; 05da d2 af R/
- ret ; 05dc 22 "
-;
-X05dd: mov r7,#0e8h ; 05dd 7f e8 .h
- mov r6,#0fdh ; 05df 7e fd ~}
- lcall X2c79 ; 05e1 12 2c 79 .,y
-X05e4: jb 20h.7,X05f7 ; 05e4 20 07 10 ..
- jb 25h.6,X0617 ; 05e7 20 2e 2d .-
- lcall X2e62 ; 05ea 12 2e 62 ..b
- jnc X05e4 ; 05ed 50 f5 Pu
- clr ea ; 05ef c2 af B/
- lcall X06e3 ; 05f1 12 06 e3 ..c
- setb ea ; 05f4 d2 af R/
- ret ; 05f6 22 "
-;
-X05f7: lcall X072e ; 05f7 12 07 2e ...
- ret ; 05fa 22 "
-;
-X05fb: mov r5,rb0r7 ; 05fb ad 07 -.
- mov a,r5 ; 05fd ed m
- jnb acc.6,X0605 ; 05fe 30 e6 04 0f.
- setb 25h.7 ; 0601 d2 2f R/
- sjmp X0607 ; 0603 80 02 ..
-;
-X0605: clr 25h.7 ; 0605 c2 2f B/
-X0607: mov a,r5 ; 0607 ed m
- jnb acc.5,X0610 ; 0608 30 e5 05 0e.
- lcall X2ead ; 060b 12 2e ad ..-
- sjmp X0613 ; 060e 80 03 ..
-;
-X0610: lcall X2ee6 ; 0610 12 2e e6 ..f
-X0613: mov a,r5 ; 0613 ed m
- jnb acc.4,X061c ; 0614 30 e4 05 0d.
-X0617: lcall X2e94 ; 0617 12 2e 94 ...
- sjmp X061f ; 061a 80 03 ..
-;
-X061c: lcall X2ef0 ; 061c 12 2e f0 ..p
-X061f: mov a,r5 ; 061f ed m
- jnb acc.2,X0627 ; 0620 30 e2 04 0b.
- setb 24h.7 ; 0623 d2 27 R'
- sjmp X0629 ; 0625 80 02 ..
-;
-X0627: clr 24h.7 ; 0627 c2 27 B'
-X0629: mov r7,#2 ; 0629 7f 02 ..
- lcall X2b6c ; 062b 12 2b 6c .+l
- mov a,r5 ; 062e ed m
- jnb acc.1,X0637 ; 062f 30 e1 05 0a.
- lcall X2f14 ; 0632 12 2f 14 ./.
- sjmp X063a ; 0635 80 03 ..
-;
-X0637: lcall X2f11 ; 0637 12 2f 11 ./.
-X063a: mov a,r5 ; 063a ed m
- jnb acc.0,X0669 ; 063b 30 e0 2b 0`+
- lcall X2f3a ; 063e 12 2f 3a ./:
- jb 22h.1,X064c ; 0641 20 11 08 ..
- setb 22h.1 ; 0644 d2 11 R.
- setb 20h.1 ; 0646 d2 01 R.
- ret ; 0648 22 "
-;
- lcall X2f17 ; 0649 12 2f 17 ./.
-X064c: ret ; 064c 22 "
-;
- mov r7,#2 ; 064d 7f 02 ..
- lcall X0006 ; 064f 12 00 06 ...
- jb p1.4,X0697 ; 0652 20 94 42 .B
- mov c,p1.5 ; 0655 a2 95 ".
- mov 23h.0,c ; 0657 92 18 ..
- inc 2eh ; 0659 05 2e ..
- mov a,2eh ; 065b e5 2e e.
- cjne a,#1,X0672 ; 065d b4 01 12 4..
- jb 23h.0,X068d ; 0660 20 18 2a .*
- setb 20h.7 ; 0663 d2 07 R.
- setb 25h.2 ; 0665 d2 2a R*
- setb 25h.5 ; 0667 d2 2d R-
-X0669: clr p1.6 ; 0669 c2 96 B.
- sjmp X0686 ; 066b 80 19 ..
-;
-X066d: clr a ; 066d e4 d
- mov 2eh,a ; 066e f5 2e u.
- sjmp X0686 ; 0670 80 14 ..
-;
-X0672: mov a,2eh ; 0672 e5 2e e.
- cjne a,#2bh,X06a6 ; 0674 b4 2b 2f 4+/
- setb 25h.6 ; 0677 d2 2e R.
- setb 22h.0 ; 0679 d2 10 R.
- clr p1.4 ; 067b c2 94 B.
- setb 22h.3 ; 067d d2 13 R.
- setb 25h.4 ; 067f d2 2c R,
- clr a ; 0681 e4 d
- mov 2eh,a ; 0682 f5 2e u.
- clr 20h.7 ; 0684 c2 07 B.
-X0686: mov a,rb2r0 ; 0686 e5 10 e.
- clr c ; 0688 c3 C
- rrc a ; 0689 13 .
- mov rb2r0,a ; 068a f5 10 u.
- mov a,rb2r1 ; 068c e5 11 e.
- rrc a ; 068e 13 .
- mov rb2r1,a ; 068f f5 11 u.
- jnb 23h.0,X0697 ; 0691 30 18 03 0..
- orl rb2r0,#80h ; 0694 43 10 80 C..
-X0697: ret ; 0697 22 "
-;
-X0698: mov r7,#2 ; 0698 7f 02 ..
- lcall X0006 ; 069a 12 00 06 ...
- jb p1.6,X06e2 ; 069d 20 96 42 .B
- mov c,p1.7 ; 06a0 a2 97 ".
- mov 23h.1,c ; 06a2 92 19 ..
- inc 2ch ; 06a4 05 2c .,
-X06a6: mov a,2ch ; 06a6 e5 2c e,
- cjne a,#1,X06bd ; 06a8 b4 01 12 4..
- jb 23h.1,X06d8 ; 06ab 20 19 2a .*
- setb 20h.4 ; 06ae d2 04 R.
- setb 25h.6 ; 06b0 d2 2e R.
- setb 22h.0 ; 06b2 d2 10 R.
- clr p1.4 ; 06b4 c2 94 B.
- sjmp X06d1 ; 06b6 80 19 ..
-;
- clr a ; 06b8 e4 d
- mov 2ch,a ; 06b9 f5 2c u,
- sjmp X06d1 ; 06bb 80 14 ..
-;
-X06bd: mov a,2ch ; 06bd e5 2c e,
- cjne a,#2bh,X06f1 ; 06bf b4 2b 2f 4+/
- setb 25h.2 ; 06c2 d2 2a R*
- setb 25h.5 ; 06c4 d2 2d R-
- clr p1.6 ; 06c6 c2 96 B.
- clr 22h.3 ; 06c8 c2 13 B.
- setb 25h.4 ; 06ca d2 2c R,
- clr a ; 06cc e4 d
- mov 2ch,a ; 06cd f5 2c u,
- clr 20h.4 ; 06cf c2 04 B.
-X06d1: mov a,rb2r0 ; 06d1 e5 10 e.
- clr c ; 06d3 c3 C
- rrc a ; 06d4 13 .
- mov rb2r0,a ; 06d5 f5 10 u.
- mov a,rb2r1 ; 06d7 e5 11 e.
- rrc a ; 06d9 13 .
- mov rb2r1,a ; 06da f5 11 u.
- jnb 23h.1,X06e2 ; 06dc 30 19 03 0..
- orl rb2r0,#80h ; 06df 43 10 80 C..
-X06e2: ret ; 06e2 22 "
-;
-X06e3: setb 24h.1 ; 06e3 d2 21 R!
-X06e5: mov 30h,#0feh ; 06e5 75 30 fe u0~
-X06e8: setb 24h.2 ; 06e8 d2 22 R"
- setb 24h.3 ; 06ea d2 23 R#
- clr 24h.4 ; 06ec c2 24 B$
-X06ee: setb 25h.2 ; 06ee d2 2a R*
- setb 25h.5 ; 06f0 d2 2d R-
- clr p1.6 ; 06f2 c2 96 B.
- setb 25h.6 ; 06f4 d2 2e R.
- setb 22h.0 ; 06f6 d2 10 R.
- clr p1.4 ; 06f8 c2 94 B.
- mov c,24h.3 ; 06fa a2 23 "#
- mov 24h.7,c ; 06fc 92 27 .'
- mov r7,#6 ; 06fe 7f 06 ..
- lcall X2b6c ; 0700 12 2b 6c .+l
- mov c,24h.4 ; 0703 a2 24 "$
- mov 24h.7,c ; 0705 92 27 .'
- mov r7,#7 ; 0707 7f 07 ..
- lcall X2b6c ; 0709 12 2b 6c .+l
- jnb 24h.2,X073b ; 070c 30 22 2c 0",
- mov c,24h.1 ; 070f a2 21 "!
- mov 24h.5,c ; 0711 92 25 .%
- mov 31h,30h ; 0713 85 30 31 .01
- lcall X08bb ; 0716 12 08 bb ..;
- sjmp X072b ; 0719 80 10 ..
-;
- mov c,24h.1 ; 071b a2 21 "!
- mov 24h.6,c ; 071d 92 26 .&
- mov 32h,30h ; 071f 85 30 32 .02
- lcall X2bf9 ; 0722 12 2b f9 .+y
- clr p1.2 ; 0725 c2 92 B.
- clr p1.3 ; 0727 c2 93 B.
- setb 21h.1 ; 0729 d2 09 R.
-X072b: clr 25h.4 ; 072b c2 2c B,
- ret ; 072d 22 "
-;
-X072e: jb 20h.4,X0734 ; 072e 20 04 03 ..
- jnb 20h.7,X0778 ; 0731 30 07 44 0.D
-X0734: mov r7,#0e8h ; 0734 7f e8 .h
- mov r6,#0fdh ; 0736 7e fd ~}
- lcall X2c79 ; 0738 12 2c 79 .,y
-X073b: jb 20h.4,X0741 ; 073b 20 04 03 ..
- jnb 20h.7,X0778 ; 073e 30 07 37 0.7
-X0741: lcall X2e62 ; 0741 12 2e 62 ..b
- jnc X073b ; 0744 50 f5 Pu
- clr ea ; 0746 c2 af B/
- jb 20h.4,X074e ; 0748 20 04 03 ..
- jnb 20h.7,X0774 ; 074b 30 07 26 0.&
-X074e: jnb 20h.4,X0755 ; 074e 30 04 04 0..
- clr 27h.7 ; 0751 c2 3f B?
- sjmp X0757 ; 0753 80 02 ..
-;
-X0755: setb 27h.7 ; 0755 d2 3f R?
-X0757: clr a ; 0757 e4 d
- mov 2ch,a ; 0758 f5 2c u,
- clr 20h.4 ; 075a c2 04 B.
- mov 2eh,a ; 075c f5 2e u.
- clr 20h.7 ; 075e c2 07 B.
- lcall X2eeb ; 0760 12 2e eb ..k
- lcall X2e80 ; 0763 12 2e 80 ...
- setb ea ; 0766 d2 af R/
- mov c,27h.7 ; 0768 a2 3f "?
- mov 24h.1,c ; 076a 92 21 .!
- mov 30h,#0ffh ; 076c 75 30 ff u0.
- lcall X06e8 ; 076f 12 06 e8 ..h
- sjmp X073b ; 0772 80 c7 .G
-;
-X0774: setb ea ; 0774 d2 af R/
- sjmp X073b ; 0776 80 c3 .C
-;
-X0778: ret ; 0778 22 "
-;
-X0779: mov a,rb3r1 ; 0779 e5 19 e.
- jz X0780 ; 077b 60 03 `.
- cjne a,#2,X0789 ; 077d b4 02 09 4..
-X0780: mov a,2dh ; 0780 e5 2d e-
- mov dptr,#X0363 ; 0782 90 03 63 ..c
- movc a,@a+dptr ; 0785 93 .
- xrl a,r7 ; 0786 6f o
- jz X07b4 ; 0787 60 2b `+
-X0789: mov a,rb3r1 ; 0789 e5 19 e.
- xrl a,#1 ; 078b 64 01 d.
- jnz X07bc ; 078d 70 2d p-
- mov a,r7 ; 078f ef o
- xrl a,#0f0h ; 0790 64 f0 dp
- jnz X07bc ; 0792 70 28 p(
- inc rb3r1 ; 0794 05 19 ..
- mov a,rb3r1 ; 0796 e5 19 e.
- setb c ; 0798 d3 S
- subb a,#2 ; 0799 94 02 ..
- jc X07c1 ; 079b 40 24 @$
- clr a ; 079d e4 d
- mov rb3r1,a ; 079e f5 19 u.
- inc 2dh ; 07a0 05 2d .-
- mov a,2dh ; 07a2 e5 2d e-
- subb a,#9 ; 07a4 94 09 ..
- jc X07c1 ; 07a6 40 19 @.
- mov 2ah,#5 ; 07a8 75 2a 05 u*.
-X07ab: clr a ; 07ab e4 d
- mov r7,a ; 07ac ff .
- lcall X2c3b ; 07ad 12 2c 3b .,;
- mov r7,#7 ; 07b0 7f 07 ..
- lcall X2c3b ; 07b2 12 2c 3b .,;
- djnz 2ah,X07ab ; 07b5 d5 2a f3 U*s
- clr a ; 07b8 e4 d
- mov 2dh,a ; 07b9 f5 2d u-
- ret ; 07bb 22 "
-;
-X07bc: clr a ; 07bc e4 d
- mov 2dh,a ; 07bd f5 2d u-
- mov rb3r1,a ; 07bf f5 19 u.
-X07c1: ret ; 07c1 22 "
-;
-X07c2: mov a,3bh ; 07c2 e5 3b e;
- xrl a,#15h ; 07c4 64 15 d.
- jnz X0809 ; 07c6 70 41 pA
- lcall X2ced ; 07c8 12 2c ed .,m
- mov a,3ah ; 07cb e5 3a e:
- jnb acc.0,X07d5 ; 07cd 30 e0 05 0`.
- mov 26h,#80h ; 07d0 75 26 80 u&.
- sjmp X07d8 ; 07d3 80 03 ..
-;
-X07d5: clr a ; 07d5 e4 d
- mov 26h,a ; 07d6 f5 26 u&
-X07d8: mov a,3ah ; 07d8 e5 3a e:
- clr c ; 07da c3 C
- rrc a ; 07db 13 .
- mov 3ah,a ; 07dc f5 3a u:
- mov a,39h ; 07de e5 39 e9
- jnb acc.0,X07e6 ; 07e0 30 e0 03 0`.
- orl 3ah,#80h ; 07e3 43 3a 80 C:.
-X07e6: mov a,39h ; 07e6 e5 39 e9
- clr c ; 07e8 c3 C
- rrc a ; 07e9 13 .
- mov 39h,a ; 07ea f5 39 u9
- mov a,38h ; 07ec e5 38 e8
- jnb acc.0,X07f4 ; 07ee 30 e0 03 0`.
- orl 39h,#80h ; 07f1 43 39 80 C9.
-X07f4: clr wr ; 07f4 c2 b6 B6
- mov dptr,#Xd001 ; 07f6 90 d0 01 .P.
- clr a ; 07f9 e4 d
- movx @dptr,a ; 07fa f0 p
- inc dptr ; 07fb a3 #
- mov a,26h ; 07fc e5 26 e&
- movx @dptr,a ; 07fe f0 p
- inc dptr ; 07ff a3 #
- mov a,3ah ; 0800 e5 3a e:
- movx @dptr,a ; 0802 f0 p
- inc dptr ; 0803 a3 #
- mov a,39h ; 0804 e5 39 e9
- movx @dptr,a ; 0806 f0 p
- setb wr ; 0807 d2 b6 R6
-X0809: ret ; 0809 22 "
-;
- jb p1.4,X0844 ; 080a 20 94 37 .7
- inc 2eh ; 080d 05 2e ..
- mov a,2eh ; 080f e5 2e e.
- setb c ; 0811 d3 S
- subb a,#8 ; 0812 94 08 ..
- jnc X0828 ; 0814 50 12 P.
- mov a,rb1r0 ; 0816 e5 08 e.
- jnb acc.0,X081f ; 0818 30 e0 04 0`.
- setb p1.5 ; 081b d2 95 R.
- sjmp X0821 ; 081d 80 02 ..
-;
-X081f: clr p1.5 ; 081f c2 95 B.
-X0821: mov a,rb1r0 ; 0821 e5 08 e.
- clr c ; 0823 c3 C
- rrc a ; 0824 13 .
- mov rb1r0,a ; 0825 f5 08 u.
- ret ; 0827 22 "
-;
-X0828: mov a,2eh ; 0828 e5 2e e.
-X082a: cjne a,#9,X0832 ; 082a b4 09 05 4..
-X082d: mov c,22h.4 ; 082d a2 14 ".
- mov p1.5,c ; 082f 92 95 ..
- ret ; 0831 22 "
-;
-X0832: mov a,2eh ; 0832 e5 2e e.
-X0834: cjne a,#2ah,X083a ; 0834 b4 2a 03 4*.
- setb p1.5 ; 0837 d2 95 R.
- ret ; 0839 22 "
-;
-X083a: mov a,2eh ; 083a e5 2e e.
- cjne a,#2bh,X0844 ; 083c b4 2b 05 4+.
- clr 22h.6 ; 083f c2 16 B.
- clr a ; 0841 e4 d
- mov 2eh,a ; 0842 f5 2e u.
-X0844: ret ; 0844 22 "
-;
-X0845: jb p1.6,X087f ; 0845 20 96 37 .7
- inc 2ch ; 0848 05 2c .,
- mov a,2ch ; 084a e5 2c e,
- setb c ; 084c d3 S
- subb a,#8 ; 084d 94 08 ..
- jnc X0863 ; 084f 50 12 P.
- mov a,rb1r0 ; 0851 e5 08 e.
- jnb acc.0,X085a ; 0853 30 e0 04 0`.
- setb p1.7 ; 0856 d2 97 R.
- sjmp X085c ; 0858 80 02 ..
-;
-X085a: clr p1.7 ; 085a c2 97 B.
-X085c: mov a,rb1r0 ; 085c e5 08 e.
- clr c ; 085e c3 C
- rrc a ; 085f 13 .
- mov rb1r0,a ; 0860 f5 08 u.
- ret ; 0862 22 "
-;
-X0863: mov a,2ch ; 0863 e5 2c e,
- cjne a,#9,X086d ; 0865 b4 09 05 4..
- mov c,22h.4 ; 0868 a2 14 ".
- mov p1.7,c ; 086a 92 97 ..
- ret ; 086c 22 "
-;
-X086d: mov a,2ch ; 086d e5 2c e,
- cjne a,#2ah,X0875 ; 086f b4 2a 03 4*.
- setb p1.7 ; 0872 d2 97 R.
- ret ; 0874 22 "
-;
-X0875: mov a,2ch ; 0875 e5 2c e,
- cjne a,#2bh,X087f ; 0877 b4 2b 05 4+.
- clr 22h.6 ; 087a c2 16 B.
- clr a ; 087c e4 d
- mov 2ch,a ; 087d f5 2c u,
-X087f: ret ; 087f 22 "
-;
- ajmp X082c ; 0880 01 2c .,
-;
- org 883h
-;
- ajmp X0e04 ; 0883 c1 04 A.
-;
- ajmp X0e2a ; 0885 c1 2a A*
-;
- ajmp X0e83 ; 0887 c1 83 A.
-;
- ajmp X0e2c ; 0889 c1 2c A,
-;
- ajmp X0e09 ; 088b c1 09 A.
-;
- ajmp X0e02 ; 088d c1 02 A.
-;
- ajmp X0e16 ; 088f c1 16 A.
-;
- ajmp X0e08 ; 0891 c1 08 A.
-;
- ajmp X082e ; 0893 01 2e ..
-;
- org 896h
-;
- ajmp X0e07 ; 0896 c1 07 A.
-;
- ajmp X0e2e ; 0898 c1 2e A.
-;
- ajmp X0e85 ; 089a c1 85 A.
-;
- ajmp X0eab ; 089c c1 ab A+
-;
- ajmp X0e86 ; 089e c1 86 A.
-;
- ajmp X0eaf ; 08a0 c1 af A/
-;
- ajmp X0e12 ; 08a2 c1 12 A.
-;
- ajmp X0e00 ; 08a4 c1 00 A.
-;
- ajmp X0e11 ; 08a6 c1 11 A.
-;
- ajmp X0e01 ; 08a8 c1 01 A.
-;
- ajmp X0e17 ; 08aa c1 17 A.
-;
- ajmp X082d ; 08ac 01 2d .-
-;
- org 8afh
-;
- ajmp X0819 ; 08af 01 19 ..
-;
- org 8b2h
-;
- ajmp X083a ; 08b2 01 3a .:
-;
- org 8b5h
-;
- ajmp X0834 ; 08b5 01 34 .4
-;
- rr a ; 08b7 03 .
- ajmp X0e29 ; 08b8 c1 29 A)
-;
- org 8bbh
-;
-X08bb: mov c,24h.5 ; 08bb a2 25 "%
- mov 24h.6,c ; 08bd 92 26 .&
- mov 32h,31h ; 08bf 85 31 32 .12
- lcall X2bf9 ; 08c2 12 2b f9 .+y
- clr p1.2 ; 08c5 c2 92 B.
- clr p1.3 ; 08c7 c2 93 B.
- jb 24h.5,X08cf ; 08c9 20 25 03 %.
- jb 20h.6,X08d5 ; 08cc 20 06 06 ..
-X08cf: jnb 24h.5,X090f ; 08cf 30 25 3d 0%=
- jnb 25h.3,X090f ; 08d2 30 2b 3a 0+:
-X08d5: mov r7,#69h ; 08d5 7f 69 .i
- mov r6,#0 ; 08d7 7e 00 ~.
- lcall X2c79 ; 08d9 12 2c 79 .,y
-X08dc: lcall X2e62 ; 08dc 12 2e 62 ..b
- jnc X08dc ; 08df 50 fb P{
- lcall X2eb0 ; 08e1 12 2e b0 ..0
- jnc X08ef ; 08e4 50 09 P.
- jb 24h.5,X08ed ; 08e6 20 25 04 %.
- setb p1.2 ; 08e9 d2 92 R.
- sjmp X08ef ; 08eb 80 02 ..
-;
-X08ed: setb p1.3 ; 08ed d2 93 R.
-X08ef: setb 21h.1 ; 08ef d2 09 R.
- ret ; 08f1 22 "
-;
-X08f2: mov dptr,#X2ffc ; 08f2 90 2f fc ./|
- clr a ; 08f5 e4 d
- movc a,@a+dptr ; 08f6 93 .
- mov r6,a ; 08f7 fe ~
- mov a,#1 ; 08f8 74 01 t.
- movc a,@a+dptr ; 08fa 93 .
- mov r7,a ; 08fb ff .
- clr c ; 08fc c3 C
- subb a,3ah ; 08fd 95 3a .:
- mov 2bh,a ; 08ff f5 2b u+
- mov a,r6 ; 0901 ee n
- subb a,39h ; 0902 95 39 .9
- mov 2ah,a ; 0904 f5 2a u*
- mov dptr,#X2ffb ; 0906 90 2f fb ./{
- clr a ; 0909 e4 d
- movc a,@a+dptr ; 090a 93 .
- clr c ; 090b c3 C
- subb a,38h ; 090c 95 38 .8
- mov rb1r1,a ; 090e f5 09 u.
- clr c ; 0910 c3 C
- mov a,r7 ; 0911 ef o
- subb a,3ah ; 0912 95 3a .:
- mov a,r6 ; 0914 ee n
- subb a,39h ; 0915 95 39 .9
- jnc X091b ; 0917 50 02 P.
- dec rb1r1 ; 0919 15 09 ..
-X091b: mov a,rb1r1 ; 091b e5 09 e.
- jnb acc.7,X0927 ; 091d 30 e7 07 0g.
- clr a ; 0920 e4 d
- mov rb1r1,a ; 0921 f5 09 u.
- mov 2ah,a ; 0923 f5 2a u*
- mov 2bh,a ; 0925 f5 2b u+
-X0927: ret ; 0927 22 "
-;
-X0928: inc 35h ; 0928 05 35 .5
- mov r7,35h ; 092a af 35 /5
- mov r6,rb0r7 ; 092c ae 07 ..
- mov a,r6 ; 092e ee n
- dec a ; 092f 14 .
- rrc a ; 0930 13 .
- rrc a ; 0931 13 .
- rrc a ; 0932 13 .
- anl a,#3fh ; 0933 54 3f T?
- mov r5,a ; 0935 fd }
- mov a,r6 ; 0936 ee n
- anl a,#7 ; 0937 54 07 T.
- mov r7,a ; 0939 ff .
- jnz X0942 ; 093a 70 06 p.
- mov 26h,a ; 093c f5 26 u&
- mov 27h,a ; 093e f5 27 u'
- sjmp X0957 ; 0940 80 15 ..
-;
-X0942: mov a,#0ffh ; 0942 74 ff t.
- mov r6,#0 ; 0944 7e 00 ~.
- mov r0,rb0r7 ; 0946 a8 07 (.
- inc r0 ; 0948 08 .
- sjmp X0951 ; 0949 80 06 ..
-;
-X094b: mov a,r6 ; 094b ee n
- mov c,acc.7 ; 094c a2 e7 "g
- rrc a ; 094e 13 .
- mov a,r6 ; 094f ee n
- rrc a ; 0950 13 .
-X0951: djnz r0,X094b ; 0951 d8 f8 Xx
- mov 27h,a ; 0953 f5 27 u'
- mov r6,26h ; 0955 ae 26 .&
-X0957: mov r7,rb0r5 ; 0957 af 05 /.
- mov r5,27h ; 0959 ad 27 -'
- ljmp X2c7a ; 095b 02 2c 7a .,z
-;
- clr a ; 095e e4 d
- mov r7,a ; 095f ff .
- mov r6,#1 ; 0960 7e 01 ~.
-X0962: mov a,r7 ; 0962 ef o
- clr c ; 0963 c3 C
- subb a,#8 ; 0964 94 08 ..
- jnc X098f ; 0966 50 27 P'
- mov a,r7 ; 0968 ef o
- jz X09a8 ; 0969 60 3d `=
- xrl a,#1 ; 096b 64 01 d.
- jz X0988 ; 096d 60 19 `.
- mov a,r7 ; 096f ef o
- xrl a,#3 ; 0970 64 03 d.
- jz X0988 ; 0972 60 14 `.
- mov a,r6 ; 0974 ee n
- orl a,#2 ; 0975 44 02 D.
- anl a,#0feh ; 0977 54 fe T~
- mov dptr,#Xe000 ; 0979 90 e0 00 .`.
- movx @dptr,a ; 097c f0 p
- anl a,#0f4h ; 097d 54 f4 Tt
- mov r5,a ; 097f fd }
- mov a,r6 ; 0980 ee n
- anl a,#0f4h ; 0981 54 f4 Tt
- xrl a,r5 ; 0983 6d m
- jz X0988 ; 0984 60 02 `.
- setb c ; 0986 d3 S
- ret ; 0987 22 "
-;
-X0988: add a,r7 ; 0988 2f /
- mov a,r6 ; 0989 ee n
- add a,acc ; 098a 25 e0 %`
- mov r6,a ; 098c fe ~
- sjmp X0962 ; 098d 80 d3 .S
-;
-X098f: clr c ; 098f c3 C
- ret ; 0990 22 "
-;
-X0991: mov r5,rb0r7 ; 0991 ad 07 -.
- mov r4,rb0r6 ; 0993 ac 06 ,.
- mov a,r5 ; 0995 ed m
- add a,#0ffh ; 0996 24 ff $.
- mov r7,a ; 0998 ff .
- mov a,r4 ; 0999 ec l
- addc a,#0ffh ; 099a 34 ff 4.
- mov r6,a ; 099c fe ~
- mov a,r7 ; 099d ef o
- mov r0,#3 ; 099e 78 03 x.
-X09a0: mov a,r6 ; 09a0 ee n
- clr c ; 09a1 c3 C
- rrc a ; 09a2 13 .
- mov a,r6 ; 09a3 ee n
- rrc a ; 09a4 13 .
- djnz r0,X09a0 ; 09a5 d8 f9 Xy
- mov r7,a ; 09a7 ff .
-X09a8: mov a,r5 ; 09a8 ed m
- anl a,#7 ; 09a9 54 07 T.
- mov r5,a ; 09ab fd }
- jnz X09b2 ; 09ac 70 04 p.
- mov 26h,a ; 09ae f5 26 u&
- sjmp X09df ; 09b0 80 2d .-
-;
-X09b2: mov a,#0ffh ; 09b2 74 ff t.
- mov r0,rb0r5 ; 09b4 a8 05 (.
- inc r0 ; 09b6 08 .
- sjmp X09bb ; 09b7 80 02 ..
-;
-X09b9: clr c ; 09b9 c3 C
- rrc a ; 09ba 13 .
-X09bb: djnz r0,X09b9 ; 09bb d8 fc X|
- mov 26h,a ; 09bd f5 26 u&
- mov r5,26h ; 09bf ad 26 -&
- ljmp X2aad ; 09c1 02 2a ad .*-
-;
-X09c4: clr 25h.0 ; 09c4 c2 28 B(
- jb 25h.1,X09f8 ; 09c6 20 29 2f )/
- lcall X2f2d ; 09c9 12 2f 2d ./-
- mov r7,3bh ; 09cc af 3b /;
- mov a,3bh ; 09ce e5 3b e;
- cjne a,#15h,X09d6 ; 09d0 b4 15 03 4..
- mov 34h,#3fh ; 09d3 75 34 3f u4?
-X09d6: setb 25h.1 ; 09d6 d2 29 R)
- lcall X2a56 ; 09d8 12 2a 56 .*V
- mov r7,35h ; 09db af 35 /5
- mov a,35h ; 09dd e5 35 e5
-X09df: jnb acc.0,X0a0e ; 09df 30 e0 2c 0`,
- lcall X2d7d ; 09e2 12 2d 7d .-}
- lcall X0928 ; 09e5 12 09 28 ..(
- clr a ; 09e8 e4 d
- mov 36h,a ; 09e9 f5 36 u6
- mov 37h,a ; 09eb f5 37 u7
- ret ; 09ed 22 "
-;
- lcall X0409 ; 09ee 12 04 09 ...
- mov r6,36h ; 09f1 ae 36 .6
- mov r7,37h ; 09f3 af 37 /7
- ret ; 09f5 22 "
-;
-X09f6: jb 25h.7,X09fc ; 09f6 20 2f 03 /.
- mov r6,#0 ; 09f9 7e 00 ~.
- ret ; 09fb 22 "
-;
-X09fc: cjne r7,#0f0h,X0a06 ; 09fc bf f0 07 ?p.
- setb 22h.5 ; 09ff d2 15 R.
- mov r6,#0ffh ; 0a01 7e ff ~.
- mov r7,#0ffh ; 0a03 7f ff ..
- ret ; 0a05 22 "
-;
-X0a06: mov a,r7 ; 0a06 ef o
- clr c ; 0a07 c3 C
- subb a,#85h ; 0a08 94 85 ..
- jc X0a0f ; 0a0a 40 03 @.
- mov r6,#0 ; 0a0c 7e 00 ~.
-X0a0e: ret ; 0a0e 22 "
-;
-X0a0f: mov a,r7 ; 0a0f ef o
- mov dptr,#X02ee ; 0a10 90 02 ee ..n
- movc a,@a+dptr ; 0a13 93 .
- mov r6,a ; 0a14 fe ~
- jnz X0a19 ; 0a15 70 02 p.
- mov r6,a ; 0a17 fe ~
- ret ; 0a18 22 "
-;
-X0a19: jnb 22h.5,X0a1f ; 0a19 30 15 03 0..
- orl rb0r6,#80h ; 0a1c 43 06 80 C..
-X0a1f: clr 22h.5 ; 0a1f c2 15 B.
- mov r7,rb0r6 ; 0a21 af 06 /.
- mov r6,#0 ; 0a23 7e 00 ~.
- ret ; 0a25 22 "
-;
- mov c,27h.2 ; 0a26 a2 3a ":
- mov 25h.0,c ; 0a28 92 28 .(
- inc 37h ; 0a2a 05 37 .7
- mov a,37h ; 0a2c e5 37 e7
- jnz X0a32 ; 0a2e 70 02 p.
- inc 36h ; 0a30 05 36 .6
-X0a32: clr c ; 0a32 c3 C
- mov a,36h ; 0a33 e5 36 e6
- subb a,#80h ; 0a35 94 80 ..
- jnc X0a40 ; 0a37 50 07 P.
- mov r7,37h ; 0a39 af 37 /7
- mov r6,36h ; 0a3b ae 36 .6
- ljmp X0991 ; 0a3d 02 09 91 ...
-;
-X0a40: mov a,35h ; 0a40 e5 35 e5
- clr c ; 0a42 c3 C
- subb a,#10h ; 0a43 94 10 ..
- jnc X0a75 ; 0a45 50 2e P.
- lcall X0928 ; 0a47 12 09 28 ..(
- lcall X2d7d ; 0a4a 12 2d 7d .-}
- lcall X0928 ; 0a4d 12 09 28 ..(
- clr a ; 0a50 e4 d
- mov 36h,a ; 0a51 f5 36 u6
- mov 37h,a ; 0a53 f5 37 u7
- ret ; 0a55 22 "
-;
- clr a ; 0a56 e4 d
- mov r7,a ; 0a57 ff .
- lcall X2e23 ; 0a58 12 2e 23 ..#
- mov r6,#0ffh ; 0a5b 7e ff ~.
- clr a ; 0a5d e4 d
- mov 26h,a ; 0a5e f5 26 u&
-X0a60: mov a,26h ; 0a60 e5 26 e&
- cjne a,#8,X0a6c ; 0a62 b4 08 07 4..
- mov r7,#1 ; 0a65 7f 01 ..
- lcall X2e23 ; 0a67 12 2e 23 ..#
- mov r6,#0ffh ; 0a6a 7e ff ~.
-X0a6c: mov a,r6 ; 0a6c ee n
- cjne a,rb0r7,X0a73 ; 0a6d b5 07 03 5..
- mov r7,26h ; 0a70 af 26 /&
- ret ; 0a72 22 "
-;
-X0a73: mov a,r6 ; 0a73 ee n
- clr c ; 0a74 c3 C
-X0a75: rrc a ; 0a75 13 .
- mov r6,a ; 0a76 fe ~
- inc 26h ; 0a77 05 26 .&
- mov a,26h ; 0a79 e5 26 e&
- setb c ; 0a7b d3 S
- subb a,#10h ; 0a7c 94 10 ..
- jc X0a60 ; 0a7e 40 e0 @`
- mov r7,#0ffh ; 0a80 7f ff ..
- ret ; 0a82 22 "
-;
- clr a ; 0a83 e4 d
- mov r7,a ; 0a84 ff .
- jnb 25h.7,X0a8a ; 0a85 30 2f 02 0/.
- mov r7,#40h ; 0a88 7f 40 .@
-X0a8a: jb 20h.5,X0a90 ; 0a8a 20 05 03 ..
- orl rb0r7,#20h ; 0a8d 43 07 20 C.
-X0a90: jb 20h.3,X0a96 ; 0a90 20 03 03 ..
- orl rb0r7,#10h ; 0a93 43 07 10 C..
-X0a96: mov dptr,#Xe000 ; 0a96 90 e0 00 .`.
- movx a,@dptr ; 0a99 e0 `
- jnb acc.2,X0aa0 ; 0a9a 30 e2 03 0b.
- orl rb0r7,#4 ; 0a9d 43 07 04 C..
-X0aa0: jnb 25h.3,X0aa6 ; 0aa0 30 2b 03 0+.
- orl rb0r7,#2 ; 0aa3 43 07 02 C..
-X0aa6: jnb 20h.6,X0aac ; 0aa6 30 06 03 0..
- orl rb0r7,#1 ; 0aa9 43 07 01 C..
-X0aac: ret ; 0aac 22 "
-;
- mov r6,27h ; 0aad ae 27 .'
- mov r7,28h ; 0aaf af 28 /(
- mov r5,29h ; 0ab1 ad 29 -)
- lcall X2e74 ; 0ab3 12 2e 74 ..t
- mov a,27h ; 0ab6 e5 27 e'
- add a,#0d0h ; 0ab8 24 d0 $P
- mov 2ah,a ; 0aba f5 2a u*
- mov a,28h ; 0abc e5 28 e(
- mov 2bh,a ; 0abe f5 2b u+
- lcall X2ea2 ; 0ac0 12 2e a2 .."
- mov 2fh,29h ; 0ac3 85 29 2f .)/
- mov r3,2bh ; 0ac6 ab 2b ++
- mov r5,2ah ; 0ac8 ad 2a -*
- mov r7,34h ; 0aca af 34 /4
- lcall X2b47 ; 0acc 12 2b 47 .+G
- lcall X2ea9 ; 0acf 12 2e a9 ..)
- ljmp X2dea ; 0ad2 02 2d ea .-j
-;
- push acc ; 0ad5 c0 e0 @`
- push b ; 0ad7 c0 f0 @p
- push psw ; 0ad9 c0 d0 @P
- mov psw,#0 ; 0adb 75 d0 00 uP.
- push rb0r6 ; 0ade c0 06 @.
- push rb0r7 ; 0ae0 c0 07 @.
- jb 22h.0,X0b10 ; 0ae2 20 10 2b .+
- jnb 22h.6,X0aed ; 0ae5 30 16 05 0..
- lcall X082a ; 0ae8 12 08 2a ..*
- sjmp X0af0 ; 0aeb 80 03 ..
-;
-X0aed: lcall X066d ; 0aed 12 06 6d ..m
-X0af0: pop rb0r7 ; 0af0 d0 07 P.
- pop rb0r6 ; 0af2 d0 06 P.
- pop psw ; 0af4 d0 d0 PP
- pop b ; 0af6 d0 f0 Pp
- pop acc ; 0af8 d0 e0 P`
- reti ; 0afa 32 2
-;
- push acc ; 0afb c0 e0 @`
- push b ; 0afd c0 f0 @p
- push psw ; 0aff c0 d0 @P
- mov psw,#0 ; 0b01 75 d0 00 uP.
- push rb0r6 ; 0b04 c0 06 @.
- push rb0r7 ; 0b06 c0 07 @.
- jb 25h.5,X0b36 ; 0b08 20 2d 2b -+
- jnb 22h.6,X0b13 ; 0b0b 30 16 05 0..
- lcall X0845 ; 0b0e 12 08 45 ..E
- sjmp X0b16 ; 0b11 80 03 ..
-;
-X0b13: lcall X0698 ; 0b13 12 06 98 ...
-X0b16: pop rb0r7 ; 0b16 d0 07 P.
- pop rb0r6 ; 0b18 d0 06 P.
- pop psw ; 0b1a d0 d0 PP
- pop b ; 0b1c d0 f0 Pp
- pop acc ; 0b1e d0 e0 P`
- reti ; 0b20 32 2
-;
- pop dph ; 0b21 d0 83 P.
- pop dpl ; 0b23 d0 82 P.
- mov r0,a ; 0b25 f8 x
- clr a ; 0b26 e4 d
- movc a,@a+dptr ; 0b27 93 .
- jnz X0b3c ; 0b28 70 12 p.
- mov a,#1 ; 0b2a 74 01 t.
- movc a,@a+dptr ; 0b2c 93 .
- jnz X0b5c ; 0b2d 70 2d p-
- inc dptr ; 0b2f a3 #
- inc dptr ; 0b30 a3 #
-X0b31: movc a,@a+dptr ; 0b31 93 .
- mov r0,a ; 0b32 f8 x
- mov a,#1 ; 0b33 74 01 t.
- movc a,@a+dptr ; 0b35 93 .
-X0b36: mov dpl,a ; 0b36 f5 82 u.
- mov dph,r0 ; 0b38 88 83 ..
- clr a ; 0b3a e4 d
- jmp @a+dptr ; 0b3b 73 s
-;
-X0b3c: mov a,#2 ; 0b3c 74 02 t.
- movc a,@a+dptr ; 0b3e 93 .
- xrl a,r0 ; 0b3f 68 h
- jz X0b31 ; 0b40 60 ef `o
- inc dptr ; 0b42 a3 #
- inc dptr ; 0b43 a3 #
- inc dptr ; 0b44 a3 #
- sjmp X0b46 ; 0b45 80 ff ..
-;
- mov r6,rb0r3 ; 0b47 ae 03 ..
- mov r3,rb0r5 ; 0b49 ab 05 +.
- anl 3ah,#0efh ; 0b4b 53 3a ef S:o
- mov dptr,#Xd000 ; 0b4e 90 d0 00 .P.
- mov a,3ah ; 0b51 e5 3a e:
- movx @dptr,a ; 0b53 f0 p
- mov r5,rb0r7 ; 0b54 ad 07 -.
- mov r6,33h ; 0b56 ae 33 .3
- mov r7,#2 ; 0b58 7f 02 ..
- lcall X2d51 ; 0b5a 12 2d 51 .-Q
- mov r7,2fh ; 0b5d af 2f //
- lcall X2cd0 ; 0b5f 12 2c d0 .,P
- orl 3ah,#10h ; 0b62 43 3a 10 C:.
- mov dptr,#Xd000 ; 0b65 90 d0 00 .P.
- mov a,3ah ; 0b68 e5 3a e:
- movx @dptr,a ; 0b6a f0 p
- ret ; 0b6b 22 "
-;
- mov a,#1 ; 0b6c 74 01 t.
- mov r0,rb0r7 ; 0b6e a8 07 (.
- inc r0 ; 0b70 08 .
- sjmp X0b75 ; 0b71 80 02 ..
-;
-X0b73: clr c ; 0b73 c3 C
- rlc a ; 0b74 33 3
-X0b75: djnz r0,X0b73 ; 0b75 d8 fc X|
- mov r7,a ; 0b77 ff .
- mov dptr,#Xe000 ; 0b78 90 e0 00 .`.
- movx a,@dptr ; 0b7b e0 `
- orl a,#2 ; 0b7c 44 02 D.
- mov r6,a ; 0b7e fe ~
- mov a,r7 ; 0b7f ef o
- jnb 24h.7,X0b87 ; 0b80 30 27 04 0'.
- orl rb0r6,a ; 0b83 42 06 B.
- sjmp X0b8a ; 0b85 80 03 ..
-;
-X0b87: cpl a ; 0b87 f4 t
- anl rb0r6,a ; 0b88 52 06 R.
-X0b8a: mov dptr,#Xe000 ; 0b8a 90 e0 00 .`.
- mov a,r6 ; 0b8d ee n
- movx @dptr,a ; 0b8e f0 p
- ret ; 0b8f 22 "
-;
-X0b90: lcall X2e07 ; 0b90 12 2e 07 ...
- jc X0b9a ; 0b93 40 05 @.
- lcall X0105 ; 0b95 12 01 05 ...
- sjmp X0b90 ; 0b98 80 f6 .v
-;
-X0b9a: lcall X2ec8 ; 0b9a 12 2e c8 ..H
- lcall X2ed4 ; 0b9d 12 2e d4 ..T
- clr 27h.7 ; 0ba0 c2 3f B?
- mov 2fh,#0eeh ; 0ba2 75 2f ee u/n
- mov c,20h.6 ; 0ba5 a2 06 ".
- mov 24h.0,c ; 0ba7 92 20 .
- lcall X2db8 ; 0ba9 12 2d b8 .-8
-X0bac: mov dptr,#Xd000 ; 0bac 90 d0 00 .P.
- movx a,@dptr ; 0baf e0 `
- jnb acc.1,X0bac ; 0bb0 30 e1 f9 0ay
- ret ; 0bb3 22 "
-;
- mov r6,rb0r3 ; 0bb4 ae 03 ..
- mov r3,rb0r5 ; 0bb6 ab 05 +.
- anl 3ah,#0efh ; 0bb8 53 3a ef S:o
- mov dptr,#Xd000 ; 0bbb 90 d0 00 .P.
- mov a,3ah ; 0bbe e5 3a e:
- movx @dptr,a ; 0bc0 f0 p
- mov r5,rb0r7 ; 0bc1 ad 07 -.
- mov r6,33h ; 0bc3 ae 33 .3
- mov r7,#3 ; 0bc5 7f 03 ..
- lcall X2d51 ; 0bc7 12 2d 51 .-Q
- lcall X2bd7 ; 0bca 12 2b d7 .+W
- orl 3ah,#10h ; 0bcd 43 3a 10 C:.
- mov dptr,#Xd000 ; 0bd0 90 d0 00 .P.
- mov a,3ah ; 0bd3 e5 3a e:
- movx @dptr,a ; 0bd5 f0 p
- ret ; 0bd6 22 "
-;
- mov a,3ah ; 0bd7 e5 3a e:
- anl a,#0bfh ; 0bd9 54 bf T?
- mov r5,a ; 0bdb fd }
- orl a,#20h ; 0bdc 44 20 D
- mov r6,a ; 0bde fe ~
- mov r4,#8 ; 0bdf 7c 08 |.
- mov a,r7 ; 0be1 ef o
- add a,acc ; 0be2 25 e0 %`
- mov r7,a ; 0be4 ff .
- mov dptr,#Xd000 ; 0be5 90 d0 00 .P.
- mov a,r5 ; 0be8 ed m
- movx @dptr,a ; 0be9 f0 p
- movx a,@dptr ; 0bea e0 `
- jnb acc.4,X0bf1 ; 0beb 30 e4 03 0d.
- orl rb0r7,#1 ; 0bee 43 07 01 C..
-X0bf1: mov dptr,#Xd000 ; 0bf1 90 d0 00 .P.
- mov a,r6 ; 0bf4 ee n
- movx @dptr,a ; 0bf5 f0 p
- mov r4,a ; 0bf6 fc |
- mov a,r1 ; 0bf7 e9 i
- ret ; 0bf8 22 "
-;
- mov dptr,#Xf000 ; 0bf9 90 f0 00 .p.
- mov a,32h ; 0bfc e5 32 e2
- movx @dptr,a ; 0bfe f0 p
- mov 2fh,a ; 0bff f5 2f u/
- mov c,24h.6 ; 0c01 a2 26 "&
- mov 24h.7,c ; 0c03 92 27 .'
- mov r7,#5 ; 0c05 7f 05 ..
- lcall X2b6c ; 0c07 12 2b 6c .+l
- mov dptr,#Xe000 ; 0c0a 90 e0 00 .`.
- movx a,@dptr ; 0c0d e0 `
- orl a,#2 ; 0c0e 44 02 D.
- anl a,#0feh ; 0c10 54 fe T~
- mov r6,a ; 0c12 fe ~
- movx @dptr,a ; 0c13 f0 p
- orl a,#1 ; 0c14 44 01 D.
- movx @dptr,a ; 0c16 f0 p
- mov a,r6 ; 0c17 ee n
- movx @dptr,a ; 0c18 f0 p
- ret ; 0c19 22 "
-;
- anl 3ah,#0efh ; 0c1a 53 3a ef S:o
- mov dptr,#Xd000 ; 0c1d 90 d0 00 .P.
- mov a,3ah ; 0c20 e5 3a e:
- movx @dptr,a ; 0c22 f0 p
- mov r7,#0bfh ; 0c23 7f bf .?
- lcall X2cd0 ; 0c25 12 2c d0 .,P
- lcall X2bd7 ; 0c28 12 2b d7 .+W
- lcall X2bd7 ; 0c2b 12 2b d7 .+W
- lcall X2bd7 ; 0c2e 12 2b d7 .+W
- orl 3ah,#10h ; 0c31 43 3a 10 C:.
- mov dptr,#Xd000 ; 0c34 90 d0 00 .P.
- mov a,3ah ; 0c37 e5 3a e:
- movx @dptr,a ; 0c39 f0 p
- ret ; 0c3a 22 "
-;
- mov r7,2bh ; 0c3b af 2b /+
- mov r7,#0edh ; 0c3d 7f ed .m
- lcall X052f ; 0c3f 12 05 2f ../
- mov r7,2bh ; 0c42 af 2b /+
- lcall X052f ; 0c44 12 05 2f ../
- mov 2ch,#2ah ; 0c47 75 2c 2a u,*
-X0c4a: mov r7,#0e8h ; 0c4a 7f e8 .h
- mov r6,#0fdh ; 0c4c 7e fd ~}
- lcall X2c79 ; 0c4e 12 2c 79 .,y
-X0c51: lcall X2e62 ; 0c51 12 2e 62 ..b
- jnc X0c51 ; 0c54 50 fb P{
- djnz 2ch,X0c4a ; 0c56 d5 2c f1 U,q
- ret ; 0c59 22 "
-;
- mov r7,28h ; 0c5a af 28 /(
- mov r5,29h ; 0c5c ad 29 -)
- lcall X2e74 ; 0c5e 12 2e 74 ..t
- lcall X2ea2 ; 0c61 12 2e a2 .."
- mov a,28h ; 0c64 e5 28 e(
- add a,#0feh ; 0c66 24 fe $~
- mov r3,a ; 0c68 fb {
- mov 2fh,29h ; 0c69 85 29 2f .)/
- mov r5,#0efh ; 0c6c 7d ef }o
- mov r7,34h ; 0c6e af 34 /4
- lcall X2b47 ; 0c70 12 2b 47 .+G
- lcall X2ea9 ; 0c73 12 2e a9 ..)
- ljmp X2dea ; 0c76 02 2d ea .-j
-;
- mov r5,rb0r7 ; 0c79 ad 07 -.
- mov r4,rb0r6 ; 0c7b ac 06 ,.
- clr es ; 0c7d c2 ac B,
- mov a,r5 ; 0c7f ed m
- cpl a ; 0c80 f4 t
- mov r7,a ; 0c81 ff .
- mov a,r4 ; 0c82 ec l
- cpl a ; 0c83 f4 t
- mov r6,a ; 0c84 fe ~
- mov a,r7 ; 0c85 ef o
- add a,#1 ; 0c86 24 01 $.
- mov r5,a ; 0c88 fd }
- clr a ; 0c89 e4 d
- addc a,r6 ; 0c8a 3e >
- mov ctl0,a ; 0c8b f5 ac u,
- mov r7,rb0r5 ; 0c8d af 05 /.
- mov r7,cml1 ; 0c8f af aa /*
- clr ie.5 ; 0c91 c2 ad B-
- setb es ; 0c93 d2 ac R,
- ret ; 0c95 22 "
-;
- mov r5,rb0r7 ; 0c96 ad 07 -.
- mov r4,rb0r6 ; 0c98 ac 06 ,.
- clr idsm ; 0c9a c2 ea Bj
- mov a,r5 ; 0c9c ed m
- cpl a ; 0c9d f4 t
- mov r7,a ; 0c9e ff .
- mov a,r4 ; 0c9f ec l
- cpl a ; 0ca0 f4 t
- mov r6,a ; 0ca1 fe ~
- mov a,r7 ; 0ca2 ef o
- add a,#1 ; 0ca3 24 01 $.
- mov r5,a ; 0ca5 fd }
- clr a ; 0ca6 e4 d
- addc a,r6 ; 0ca7 3e >
- mov tmh2,a ; 0ca8 f5 ed um
- mov r7,rb0r5 ; 0caa af 05 /.
- mov r7,tml2 ; 0cac af ec /l
- clr mb1 ; 0cae c2 ef Bo
- setb idsm ; 0cb0 d2 ea Rj
- ret ; 0cb2 22 "
-;
- anl 3ah,#0efh ; 0cb3 53 3a ef S:o
- mov dptr,#Xd000 ; 0cb6 90 d0 00 .P.
- mov a,3ah ; 0cb9 e5 3a e:
- movx @dptr,a ; 0cbb f0 p
- mov r7,#5 ; 0cbc 7f 05 ..
- lcall X2cd0 ; 0cbe 12 2c d0 .,P
- lcall X2bd7 ; 0cc1 12 2b d7 .+W
- orl 3ah,#10h ; 0cc4 43 3a 10 C:.
- mov dptr,#Xd000 ; 0cc7 90 d0 00 .P.
- mov a,3ah ; 0cca e5 3a e:
- movx @dptr,a ; 0ccc f0 p
- mov a,r7 ; 0ccd ef o
- rrc a ; 0cce 13 .
- ret ; 0ccf 22 "
-;
- mov a,3ah ; 0cd0 e5 3a e:
- anl a,#0bfh ; 0cd2 54 bf T?
- mov r6,a ; 0cd4 fe ~
- orl a,#40h ; 0cd5 44 40 D@
- mov r5,a ; 0cd7 fd }
- mov r4,#8 ; 0cd8 7c 08 |.
- mov dptr,#Xd000 ; 0cda 90 d0 00 .P.
- mov a,r7 ; 0cdd ef o
- rlc a ; 0cde 33 3
- mov r7,a ; 0cdf ff .
- jnc X0ce5 ; 0ce0 50 03 P.
- mov a,r5 ; 0ce2 ed m
- sjmp X0ce6 ; 0ce3 80 01 ..
-;
-X0ce5: mov a,r6 ; 0ce5 ee n
-X0ce6: movx @dptr,a ; 0ce6 f0 p
- orl a,#20h ; 0ce7 44 20 D
- movx @dptr,a ; 0ce9 f0 p
- mov r4,a ; 0cea fc |
- acall X0f22 ; 0ceb f1 22 q"
- lcall X2f04 ; 0ced 12 2f 04 ./.
- mov r6,39h ; 0cf0 ae 39 .9
- mov r7,3ah ; 0cf2 af 3a /:
- lcall X2f3d ; 0cf4 12 2f 3d ./=
- mov r7,38h ; 0cf7 af 38 /8
- mov a,38h ; 0cf9 e5 38 e8
- jnb acc.1,X0d01 ; 0cfb 30 e1 03 0a.
- orl 39h,#80h ; 0cfe 43 39 80 C9.
-X0d01: mov a,38h ; 0d01 e5 38 e8
- rrc a ; 0d03 13 .
- rrc a ; 0d04 13 .
- anl a,#3fh ; 0d05 54 3f T?
- mov 38h,a ; 0d07 f5 38 u8
- ret ; 0d09 22 "
-;
- anl 3ah,#0efh ; 0d0a 53 3a ef S:o
- mov dptr,#Xd000 ; 0d0d 90 d0 00 .P.
- mov a,3ah ; 0d10 e5 3a e:
- movx @dptr,a ; 0d12 f0 p
- mov r7,#5 ; 0d13 7f 05 ..
- lcall X2cd0 ; 0d15 12 2c d0 .,P
- lcall X2bd7 ; 0d18 12 2b d7 .+W
- orl 3ah,#10h ; 0d1b 43 3a 10 C:.
- mov dptr,#Xd000 ; 0d1e 90 d0 00 .P.
- mov a,3ah ; 0d21 e5 3a e:
- movx @dptr,a ; 0d23 f0 p
- ret ; 0d24 22 "
-;
- lcall X2ec8 ; 0d25 12 2e c8 ..H
- lcall X2ed4 ; 0d28 12 2e d4 ..T
-X0d2b: mov dptr,#Xd000 ; 0d2b 90 d0 00 .P.
- movx a,@dptr ; 0d2e e0 `
- jb acc.1,X0d3a ; 0d2f 20 e1 08 a.
- lcall X036c ; 0d32 12 03 6c ..l
- lcall X0105 ; 0d35 12 01 05 ...
- sjmp X0d2b ; 0d38 80 f1 .q
-;
-X0d3a: ret ; 0d3a 22 "
-;
- lcall X2ced ; 0d3b 12 2c ed .,m
- lcall X08f2 ; 0d3e 12 08 f2 ..r
- mov a,rb1r1 ; 0d41 e5 09 e.
- jnz X0d70 ; 0d43 70 2b p+
- mov a,2ah ; 0d45 e5 2a e*
- jnz X0d50 ; 0d47 70 07 p.
- mov a,2bh ; 0d49 e5 2b e+
- jnz X0d50 ; 0d4b 70 03 p.
- lcall X2efa ; 0d4d 12 2e fa ..z
-X0d50: ret ; 0d50 22 "
-;
- mov r5,31h ; 0d51 ad 31 -1
- mov r3,32h ; 0d53 ab 32 +2
- lcall X2cd0 ; 0d55 12 2c d0 .,P
- mov r7,31h ; 0d58 af 31 /1
- lcall X2cd0 ; 0d5a 12 2c d0 .,P
- mov r7,32h ; 0d5d af 32 /2
- lcall X2cd0 ; 0d5f 12 2c d0 .,P
- mov r7,33h ; 0d62 af 33 /3
- ljmp X2cd0 ; 0d64 02 2c d0 .,P
-;
- anl 3ah,#0efh ; 0d67 53 3a ef S:o
- mov dptr,#Xd000 ; 0d6a 90 d0 00 .P.
- mov a,3ah ; 0d6d e5 3a e:
- movx @dptr,a ; 0d6f f0 p
-X0d70: lcall X2cd0 ; 0d70 12 2c d0 .,P
- orl 3ah,#10h ; 0d73 43 3a 10 C:.
- mov dptr,#Xd000 ; 0d76 90 d0 00 .P.
- mov a,3ah ; 0d79 e5 3a e:
- movx @dptr,a ; 0d7b f0 p
- ret ; 0d7c 22 "
-;
- lcall X2e74 ; 0d7d 12 2e 74 ..t
- lcall X2ea2 ; 0d80 12 2e a2 .."
- clr a ; 0d83 e4 d
- mov r3,a ; 0d84 fb {
- mov r5,#0d0h ; 0d85 7d d0 }P
- mov r7,34h ; 0d87 af 34 /4
- lcall X00e0 ; 0d89 12 00 e0 ..`
- lcall X2ea9 ; 0d8c 12 2e a9 ..)
- ljmp X2dea ; 0d8f 02 2d ea .-j
-;
- anl 3ah,#0fbh ; 0d92 53 3a fb S:{
- mov dptr,#Xd000 ; 0d95 90 d0 00 .P.
- mov a,3ah ; 0d98 e5 3a e:
- movx @dptr,a ; 0d9a f0 p
- anl 3ah,#0fdh ; 0d9b 53 3a fd S:}
- mov a,3ah ; 0d9e e5 3a e:
- movx @dptr,a ; 0da0 f0 p
- mov r7,#3ch ; 0da1 7f 3c .<
- ljmp X0006 ; 0da3 02 00 06 ...
-;
- jnb 21h.1,X0dd7 ; 0da6 30 09 2e 0..
- lcall X2eb0 ; 0da9 12 2e b0 ..0
- jc X0db7 ; 0dac 40 09 @.
- clr p1.2 ; 0dae c2 92 B.
- clr p1.3 ; 0db0 c2 93 B.
- clr 21h.1 ; 0db2 c2 09 B.
- lcall X2e7d ; 0db4 12 2e 7d ..}
-X0db7: ret ; 0db7 22 "
-;
- mov c,27h.7 ; 0db8 a2 3f "?
- mov 24h.1,c ; 0dba 92 21 .!
- mov 30h,2fh ; 0dbc 85 2f 30 ./0
- mov c,24h.0 ; 0dbf a2 20 "
- mov 24h.2,c ; 0dc1 92 22 ."
- clr 24h.3 ; 0dc3 c2 23 B#
- clr 24h.4 ; 0dc5 c2 24 B$
- ljmp X06ee ; 0dc7 02 06 ee ..n
-;
- mov a,r7 ; 0dca ef o
- swap a ; 0dcb c4 D
- anl a,#2fh ; 0dcc 54 2f T/
- mov dptr,#X0353 ; 0dce 90 03 53 ..S
- movc a,@a+dptr ; 0dd1 93 .
- mov r6,a ; 0dd2 fe ~
- mov a,r7 ; 0dd3 ef o
- anl a,#2fh ; 0dd4 54 2f T/
- movc a,@a+dptr ; 0dd6 93 .
-X0dd7: add a,r6 ; 0dd7 2e .
- mov r7,a ; 0dd8 ff .
- ret ; 0dd9 22 "
-;
- mov dptr,#Xe000 ; 0dda 90 e0 00 .`.
- movx a,@dptr ; 0ddd e0 `
- orl a,#2 ; 0dde 44 02 D.
- anl a,#0feh ; 0de0 54 fe T~
- mov r6,a ; 0de2 fe ~
- movx @dptr,a ; 0de3 f0 p
- anl a,#0fdh ; 0de4 54 fd T}
- movx @dptr,a ; 0de6 f0 p
- mov a,r6 ; 0de7 ee n
- movx @dptr,a ; 0de8 f0 p
- ret ; 0de9 22 "
-;
-X0dea: lcall X2ea2 ; 0dea 12 2e a2 .."
- lcall X2cb3 ; 0ded 12 2c b3 .,3
- mov 27h.3,c ; 0df0 92 3b .;
- lcall X2ea9 ; 0df2 12 2e a9 ..)
- jb 27h.3,X0dea ; 0df5 20 3b f2 ;r
- ret ; 0df8 22 "
-;
- jnb 20h.5,X0e05 ; 0df9 30 05 09 0..
- jb 25h.6,X0e05 ; 0dfc 20 2e 06 ..
- jb 20h.2,X0e05 ; 0dff 20 02 03 ..
-X0e02: setb c ; 0e02 d3 S
- sjmp X0e06 ; 0e03 80 01 ..
-;
-X0e05: clr c ; 0e05 c3 C
-X0e06: ret ; 0e06 22 "
-;
-X0e07: jnb 20h.3,X0e13 ; 0e07 30 03 09 0..
- jb 25h.2,X0e13 ; 0e0a 20 2a 06 *.
- jb 20h.2,X0e13 ; 0e0d 20 02 03 ..
- setb c ; 0e10 d3 S
-X0e11: sjmp X0e14 ; 0e11 80 01 ..
-;
-X0e13: clr c ; 0e13 c3 C
-X0e14: ret ; 0e14 22 "
-;
- mov r2,rb0r6 ; 0e15 aa 06 *.
-X0e17: mov a,r2 ; 0e17 ea j
- add a,#0d0h ; 0e18 24 d0 $P
- mov r5,a ; 0e1a fd }
- mov a,r7 ; 0e1b ef o
- mov r3,a ; 0e1c fb {
- mov r7,34h ; 0e1d af 34 /4
- lcall X2bb4 ; 0e1f 12 2b b4 .+4
- ret ; 0e22 22 "
-;
- mov a,r7 ; 0e23 ef o
- add a,#0feh ; 0e24 24 fe $~
- mov r3,a ; 0e26 fb {
- mov r5,#0efh ; 0e27 7d ef }o
-X0e29: mov r7,34h ; 0e29 af 34 /4
- lcall X2bb4 ; 0e2b 12 2b b4 .+4
-X0e2e: ret ; 0e2e 22 "
-;
- setb 20h.2 ; 0e2f d2 02 R.
- setb 25h.5 ; 0e31 d2 2d R-
- clr p1.6 ; 0e33 c2 96 B.
- setb 22h.0 ; 0e35 d2 10 R.
- clr p1.4 ; 0e37 c2 94 B.
- ret ; 0e39 22 "
-;
- mov a,r7 ; 0e3a ef o
- mov dptr,#X02c9 ; 0e3b 90 02 c9 ..I
- movc a,@a+dptr ; 0e3e 93 .
- xrl a,r5 ; 0e3f 6d m
- jz X0e44 ; 0e40 60 02 `.
-X0e42: sjmp X0e42 ; 0e42 80 fe .~
-;
-X0e44: ret ; 0e44 22 "
-;
- lcall X2df9 ; 0e45 12 2d f9 .-y
- jnc X0e4e ; 0e48 50 04 P.
- clr 22h.0 ; 0e4a c2 10 B.
- setb p1.4 ; 0e4c d2 94 R.
-X0e4e: ret ; 0e4e 22 "
-;
- lcall X2e07 ; 0e4f 12 2e 07 ...
- jnc X0e58 ; 0e52 50 04 P.
- clr 25h.5 ; 0e54 c2 2d B-
- setb p1.6 ; 0e56 d2 96 R.
-X0e58: ret ; 0e58 22 "
-;
- mov a,tmod ; 0e59 e5 89 e.
- anl a,#0f0h ; 0e5b 54 f0 Tp
- orl a,#1 ; 0e5d 44 01 D.
- mov tmod,a ; 0e5f f5 89 u.
- ret ; 0e61 22 "
-;
- jnb ie.5,X0e69 ; 0e62 30 ad 04 0-.
- clr es ; 0e65 c2 ac B,
- setb c ; 0e67 d3 S
- ret ; 0e68 22 "
-;
-X0e69: clr c ; 0e69 c3 C
- ret ; 0e6a 22 "
-;
- jnb mb1,X0e72 ; 0e6b 30 ef 04 0o.
- clr idsm ; 0e6e c2 ea Bj
- setb c ; 0e70 d3 S
- ret ; 0e71 22 "
-;
-X0e72: clr c ; 0e72 c3 C
- ret ; 0e73 22 "
-;
- lcall X2ea2 ; 0e74 12 2e a2 .."
- lcall X2efa ; 0e77 12 2e fa ..z
- ljmp X2ea9 ; 0e7a 02 2e a9 ..)
-;
- lcall X2eeb ; 0e7d 12 2e eb ..k
- clr 25h.6 ; 0e80 c2 2e B.
- ljmp X2e45 ; 0e82 02 2e 45 ..E
-;
-X0e85: clr 20h.2 ; 0e85 c2 02 B.
- lcall X2e6f ; 0e87 12 2e 6f ..o
- ljmp X2e45 ; 0e8a 02 2e 45 ..E
-;
- clr 20h.5 ; 0e8d c2 05 B.
- setb 22h.0 ; 0e8f d2 10 R.
- clr p1.4 ; 0e91 c2 94 B.
- ret ; 0e93 22 "
-;
- clr 20h.3 ; 0e94 c2 03 B.
- setb 25h.5 ; 0e96 d2 2d R-
- clr p1.6 ; 0e98 c2 96 B.
- ret ; 0e9a 22 "
-;
- mov dptr,#Xd000 ; 0e9b 90 d0 00 .P.
- mov a,3ah ; 0e9e e5 3a e:
- movx @dptr,a ; 0ea0 f0 p
- ret ; 0ea1 22 "
-;
- jnb 25h.0,X0ea8 ; 0ea2 30 28 03 0(.
- lcall X2b90 ; 0ea5 12 2b 90 .+.
-X0ea8: ret ; 0ea8 22 "
-;
- jnb 25h.0,X0eaf ; 0ea9 30 28 03 0(.
- lcall X2d92 ; 0eac 12 2d 92 .-.
-X0eaf: ret ; 0eaf 22 "
-;
- mov dptr,#Xe000 ; 0eb0 90 e0 00 .`.
- movx a,@dptr ; 0eb3 e0 `
- rrc a ; 0eb4 13 .
- ret ; 0eb5 22 "
-;
- anl 3ah,#0feh ; 0eb6 53 3a fe S:~
- ljmp X2ebb ; 0eb9 02 2e bb ..;
-;
- orl 3ah,#1 ; 0ebc 43 3a 01 C:.
- ljmp X2ebb ; 0ebf 02 2e bb ..;
-;
- anl 3ah,#0fdh ; 0ec2 53 3a fd S:}
- ljmp X2ebb ; 0ec5 02 2e bb ..;
-;
- orl 3ah,#2 ; 0ec8 43 3a 02 C:.
- ljmp X2ebb ; 0ecb 02 2e bb ..;
-;
- anl 3ah,#0fbh ; 0ece 53 3a fb S:{
- ljmp X2ebb ; 0ed1 02 2e bb ..;
-;
- orl 3ah,#4 ; 0ed4 43 3a 04 C:.
- ljmp X2ebb ; 0ed7 02 2e bb ..;
-;
- anl 3ah,#7fh ; 0eda 53 3a 7f S:.
- ljmp X2ebb ; 0edd 02 2e bb ..;
-;
- orl 3ah,#80h ; 0ee0 43 3a 80 C:.
- ljmp X2ebb ; 0ee3 02 2e bb ..;
-;
- setb 20h.5 ; 0ee6 d2 05 R.
- ljmp X2e45 ; 0ee8 02 2e 45 ..E
-;
- clr 25h.2 ; 0eeb c2 2a B*
- ljmp X2e6f ; 0eed 02 2e 6f ..o
-;
- setb 20h.3 ; 0ef0 d2 03 R.
- ljmp X2e6f ; 0ef2 02 2e 6f ..o
-;
- mov r7,3ah ; 0ef5 af 3a /:
- ljmp X2ebb ; 0ef7 02 2e bb ..;
-;
- mov r7,#6 ; 0efa 7f 06 ..
- ljmp X2d67 ; 0efc 02 2d 67 .-g
-;
- mov r7,#4 ; 0eff 7f 04 ..
- ljmp X2d67 ; 0f01 02 2d 67 .-g
-;
- mov r6,36h ; 0f04 ae 36 .6
- mov r7,37h ; 0f06 af 37 /7
- ret ; 0f08 22 "
-;
- clr a ; 0f09 e4 d
- mov t2con,a ; 0f0a f5 c8 uH
- ret ; 0f0c 22 "
-;
- lcall X2c3a ; 0f0d 12 2c 3a .,:
- ret ; 0f10 22 "
-;
- clr 25h.3 ; 0f11 c2 2b B+
- ret ; 0f13 22 "
-;
- setb 25h.3 ; 0f14 d2 2b R+
- ret ; 0f16 22 "
-;
- clr 20h.6 ; 0f17 c2 06 B.
- ret ; 0f19 22 "
-;
- setb 20h.6 ; 0f1a d2 06 R.
- ret ; 0f1c 22 "
-;
- mov r7,35h ; 0f1d af 35 /5
- ret ; 0f1f 22 "
-;
- org 0f22h
-;
-X0f22: mov r7,a ; 0f22 ff .
-;
-; Register/Memory Equates
-;
-rb0r3 equ 3
-rb0r5 equ 5
-rb0r6 equ 6
-rb0r7 equ 7
-rb1r0 equ 8
-rb1r1 equ 9
-rb2r0 equ 10h
-rb2r1 equ 11h
-rb2r2 equ 12h
-rb2r3 equ 13h
-rb2r4 equ 14h
-rb2r5 equ 15h
-rb2r6 equ 16h
-rb2r7 equ 17h
-rb3r0 equ 18h
-rb3r1 equ 19h
-;
-; Miscellaneous equates
-;
-; These are addresses referenced in the code but
-; which are in the middle of a multibyte instruction
-; or are addresses outside the initialized space
-;
-X0001 equ 1
-X0002 equ 2
-X0091 equ 91h
-X00cf equ 0cfh
-X0102 equ 102h
-X0114 equ 114h
-X0196 equ 196h
-X019a equ 19ah
-X01c3 equ 1c3h
-X01dd equ 1ddh
-X01e7 equ 1e7h
-X0203 equ 203h
-X026a equ 26ah
-X02c1 equ 2c1h
-X02d7 equ 2d7h
-X02ee equ 2eeh
-X032c equ 32ch
-X0360 equ 360h
-X036d equ 36dh
-X0410 equ 410h
-X045c equ 45ch
-X0497 equ 497h
-X04ea equ 4eah
-X04ed equ 4edh
-X05b3 equ 5b3h
-X068d equ 68dh
-X06d8 equ 6d8h
-X06f1 equ 6f1h
-X07b4 equ 7b4h
-X0819 equ 819h
-X082c equ 82ch
-X082e equ 82eh
-X090f equ 90fh
-X097e equ 97eh
-X09f8 equ 9f8h
-X0b10 equ 0b10h
-X0b46 equ 0b46h
-X0b5c equ 0b5ch
-X0e00 equ 0e00h
-X0e01 equ 0e01h
-X0e04 equ 0e04h
-X0e08 equ 0e08h
-X0e09 equ 0e09h
-X0e12 equ 0e12h
-X0e16 equ 0e16h
-X0e2a equ 0e2ah
-X0e2c equ 0e2ch
-X0e83 equ 0e83h
-X0e86 equ 0e86h
-X0eab equ 0eabh
-X2a26 equ 2a26h
-X2a56 equ 2a56h
-X2aad equ 2aadh
-X2ad5 equ 2ad5h
-X2afb equ 2afbh
-X2b21 equ 2b21h
-X2b47 equ 2b47h
-X2b6c equ 2b6ch
-X2b90 equ 2b90h
-X2bb4 equ 2bb4h
-X2bd7 equ 2bd7h
-X2bf9 equ 2bf9h
-X2c3a equ 2c3ah
-X2c3b equ 2c3bh
-X2c79 equ 2c79h
-X2c7a equ 2c7ah
-X2cb3 equ 2cb3h
-X2cd0 equ 2cd0h
-X2ced equ 2cedh
-X2d25 equ 2d25h
-X2d3b equ 2d3bh
-X2d51 equ 2d51h
-X2d67 equ 2d67h
-X2d7d equ 2d7dh
-X2d92 equ 2d92h
-X2da6 equ 2da6h
-X2db8 equ 2db8h
-X2dea equ 2deah
-X2df9 equ 2df9h
-X2dfa equ 2dfah
-X2e07 equ 2e07h
-X2e15 equ 2e15h
-X2e23 equ 2e23h
-X2e2f equ 2e2fh
-X2e3a equ 2e3ah
-X2e45 equ 2e45h
-X2e59 equ 2e59h
-X2e62 equ 2e62h
-X2e6f equ 2e6fh
-X2e74 equ 2e74h
-X2e7d equ 2e7dh
-X2e80 equ 2e80h
-X2e85 equ 2e85h
-X2e94 equ 2e94h
-X2ea2 equ 2ea2h
-X2ea9 equ 2ea9h
-X2ead equ 2eadh
-X2eb0 equ 2eb0h
-X2eb6 equ 2eb6h
-X2ebb equ 2ebbh
-X2ebc equ 2ebch
-X2ec8 equ 2ec8h
-X2ed4 equ 2ed4h
-X2ee6 equ 2ee6h
-X2eeb equ 2eebh
-X2ef0 equ 2ef0h
-X2ef5 equ 2ef5h
-X2efa equ 2efah
-X2f04 equ 2f04h
-X2f11 equ 2f11h
-X2f14 equ 2f14h
-X2f17 equ 2f17h
-X2f2d equ 2f2dh
-X2f3a equ 2f3ah
-X2f3d equ 2f3dh
-X2ffb equ 2ffbh
-X2ffc equ 2ffch
-X2ffe equ 2ffeh
-X2fff equ 2fffh
-X3520 equ 3520h
-X41c0 equ 41c0h
-X48aa equ 48aah
-X56a7 equ 56a7h
-X64a9 equ 64a9h
-X64ab equ 64abh
-X6dad equ 6dadh
-X74ae equ 74aeh
-X7bd0 equ 7bd0h
-X7da8 equ 7da8h
-X98fd equ 98fdh
-Xa8fe equ 0a8feh
-Xadff equ 0adffh
-Xb512 equ 0b512h
-Xb73f equ 0b73fh
-Xb760 equ 0b760h
-Xb7d1 equ 0b7d1h
-Xb7d2 equ 0b7d2h
-Xb7d3 equ 0b7d3h
-Xb7d4 equ 0b7d4h
-Xb7eb equ 0b7ebh
-Xd000 equ 0d000h
-Xd001 equ 0d001h
-Xe000 equ 0e000h
-Xf000 equ 0f000h
-;
- end
-;
-
diff --git a/site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.dis51.txt b/site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.dis51.txt
deleted file mode 100644
index 55cfc7a..0000000
--- a/site/vortex86ex/dmp_kbd_fw_part1.inc.disassembled.dis51.txt
+++ /dev/null
@@ -1,3079 +0,0 @@
-CSEG AT 0000h
- LJMP L0001
-
- DB 02h
- DB 0Ah
- DB 0FBh
-L0065:
- MOV A, R7
- MOV B, #3h
- MUL AB
- MOV R7, A
-L0066:
- MOV R6, 7h
- DEC R7
- MOV A, R6
- JNZ L0066
- RET
-
- DB 02h
- DB 0Ah
- DB 0D5h
-L0015:
- LCALL L0016
- MOV R7, #30h
- LCALL L0017
- MOV DPTR, #0E000h
- MOV A, #16h
- MOVX @DPTR, A
- LCALL L0018
- CLR P1.2
- CLR P1.3
- CLR P1.0
- SETB P1.1
- SETB PX0
- SETB PX1
- SETB IT0
- SETB EX0
- SETB IT1
- SETB EX1
- MOV R5, #44h
- CLR A
- MOV R7, A
- LCALL L0019
- MOV R5, #4Dh
- INC R7
- LCALL L0019
- MOV R5, #26h
- INC R7
- LCALL L0019
- MOV R5, #50h
- INC R7
- LCALL L0019
- LCALL L0020
- SETB EA
- MOV R7, #0B1h
- LCALL L0021
- MOV DPTR, #0FFEh
- CLR A
- MOVC A, @A+DPTR
- MOV R7, A
- CJNE A, #55h, L0022
- INC DPTR
- CLR A
- MOVC A, @A+DPTR
- CJNE A, #0AAh, L0022
- SETB 8h
- SJMP L0023
-
-L0022:
- MOV A, R7
- CJNE A, #12h, L0023
- MOV DPTR, #0FFFh
- CLR A
- MOVC A, @A+DPTR
- CJNE A, #34h, L0023
- CLR 8h
- CLR 12h
-L0023:
- LCALL L0024
- LCALL L0025
- LCALL L0026
- JNB 1h, L0027
- JNB 12h, L0028
- JB 0h, L0028
- JNB 11h, L0028
- LCALL L0029
- LCALL L0030
- JNB 8h, L0031
- CLR 1Ah
- LCALL L0032
-L0031:
- LCALL L0033
- SETB 0h
- LCALL L0034
- LCALL L0035
-L0028:
- LCALL L0018
- CLR 1h
-L0027:
- LCALL L0024
- LCALL L0036
- JNB 12h, L0023
- JNB 0h, L0023
- MOV DPTR, #0D000h
- MOVX A, @DPTR
- JNB ACC.0, L0023
- CLR EA
- LCALL L0037
- JNC L0038
- LCALL L0039
- LCALL L0040
- SETB 1Ah
- LCALL L0032
- LCALL L0034
-L0038:
- SETB EA
- SJMP L0023
-
-L0201:
- MOV R6, 3h
- MOV R3, 5h
- ANL 1Ah, #0EFh
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- MOV R5, 7h
- MOV 33h, R6
- MOV R7, #20h
- LCALL L0188
- ORL 1Ah, #10h
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- RET
-
- DB 0DAh
- DB 07Eh
- DB 010h
- DB 09h
- DB 014h
-L0077:
- LCALL L0025
-L0026:
- MOV DPTR, #0E000h
- MOVX A, @DPTR
- MOV R7, A
- JB ACC.1, L0078
- LJMP L0079
-
-L0078:
- CLR EX0
- CLR EX1
- JB 4h, L0080
- JNB 7h, L0081
-L0080:
- SETB EX0
- SETB EX1
- RET
-
-L0081:
- MOV A, R7
- MOV C, ACC.3
- MOV 1Ch, C
- MOV DPTR, #0F000h
- MOVX A, @DPTR
- MOV 2Ch, A
- LCALL L0082
- SETB EX0
- SETB EX1
- JNB 1Ch, L0083
- LJMP L0084
-
-L0083:
- CLR 1Dh
- CLR 1Eh
- JB 17h, L0090
- LJMP L0091
-
-L0090:
- MOV A, 18h
- ADD A, #0E1h
- JZ L0147
- ADD A, #54h
- JNZ L0148
- LJMP L0149
-
-L0148:
- ADD A, #0FAh
- JZ L0151
- DEC A
- JZ L0152
- DEC A
- JZ L0153
- DEC A
- JZ L0154
- ADD A, #74h
- JNZ L0155
- MOV R7, 2Ch
- LCALL L0017
- SJMP L0149
-
-L0151:
- MOV A, 2Ch
- JNB ACC.1, L0180
- SETB P1.0
- SJMP L0149
-
-L0180:
- CLR P1.0
- SJMP L0149
-
-L0152:
- CLR 1Fh
- SJMP L0179
-
-L0153:
- SETB 1Fh
-L0179:
- MOV 2Fh, 2Ch
- SJMP L0176
-
-L0154:
- SETB 1Eh
- SJMP L0149
-
-L0147:
- MOV A, 2Ch
- JNZ L0181
- LCALL L0041
- LCALL L0042
- MOV 12h, 38h
- MOV 13h, 39h
- MOV 14h, 3Ah
- MOV 15h, 9h
- MOV 16h, 0Ah
- MOV 17h, 0Bh
- SJMP L0149
-
-L0181:
- MOV A, 2Ch
- CLR C
- SUBB A, #1h
- JC L0182
- MOV A, 2Ch
- SETB C
- SUBB A, #6h
- JNC L0182
- CLR 1Fh
- MOV A, #11h
- ADD A, 2Ch
- MOV R0, A
- MOV A, @R0
- MOV 2Fh, A
- SJMP L0176
-
-L0182:
- MOV A, 2Ch
- CJNE A, #7h, L0149
- CLR 1Fh
- MOV 2Fh, 3Bh
-L0176:
- SETB 20h
- LCALL L0177
- SJMP L0149
-
-L0155:
- SETB 1Dh
-L0149:
- CLR 17h
- SJMP L0150
-
-L0091:
- SETB 1Dh
-L0150:
- JNB 1Dh, L0092
- MOV R7, 2Ch
- LCALL L0093
- SJMP L0094
-
-L0092:
- JNB 1Eh, L0094
- MOV R7, 2Ch
- LCALL L0141
-L0094:
- LCALL L0095
- LJMP L0096
-
-L0084:
- CLR 1Dh
- MOV A, 2Ch
- LCALL L0085
- LJMP L0086
-
- DB 02h
- DB 035h
- DB 020h
- DB 02h
- DB 0B7h
- DB 060h
- DB 02h
- DB 056h
- DB 0A7h
- DB 02h
- DB 05Dh
- DB 0A8h
- DB 02h
- DB 064h
- DB 0A9h
- DB 02h
- DB 048h
- DB 0AAh
- DB 02h
- DB 064h
- DB 0ABh
- DB 02h
- DB 06Dh
- DB 0ADh
- DB 02h
- DB 074h
- DB 0AEh
- DB 02h
- DB 041h
- DB 0C0h
- DB 02h
- DB 0B7h
- DB 0CBh
- DB 02h
- DB 07Bh
- DB 0D0h
- DB 02h
- DB 0B7h
- DB 0D1h
- DB 02h
- DB 0B7h
- DB 0D2h
- DB 02h
- DB 0B7h
- DB 0D3h
- DB 02h
- DB 0B7h
- DB 0D4h
- DB 02h
- DB 098h
- DB 0DDh
- DB 02h
- DB 08Dh
- DB 0DFh
- DB 02h
- DB 0A8h
- DB 0FEh
- DB 00h
- DB 00h
- DB 02h
- DB 0B5h
- DB 012h
- DB 0Ah
- DB 083h
- DB 08Fh
- DB 02Dh
- DB 0C2h
- DB 01Fh
- DB 085h
- DB 02Dh
- DB 02Fh
- DB 080h
- DB 028h
- DB 0C2h
- DB 01Fh
- DB 075h
- DB 02Fh
- DB 0FFh
- DB 080h
- DB 021h
- DB 07Fh
- DB 030h
- DB 012h
- DB 05h
- DB 0FBh
- DB 0C2h
- DB 01Fh
- DB 075h
- DB 02Fh
- DB 055h
- DB 0C2h
- DB 020h
- DB 080h
- DB 04Bh
- DB 012h
- DB 0Eh
- DB 08Dh
- DB 0D2h
- DB 01Dh
- DB 080h
- DB 05Ah
- DB 012h
- DB 0Eh
- DB 0E6h
- DB 0D2h
- DB 01Dh
- DB 080h
- DB 053h
- DB 0C2h
- DB 01Fh
- DB 0E4h
- DB 0F5h
- DB 02Fh
- DB 0D2h
- DB 020h
- DB 080h
- DB 034h
- DB 012h
- DB 0Eh
- DB 094h
- DB 0D2h
- DB 01Dh
- DB 080h
- DB 043h
- DB 012h
- DB 0Eh
- DB 0F0h
- DB 0D2h
- DB 01Dh
- DB 080h
- DB 03Ch
- DB 075h
- DB 02Eh
- DB 01h
- DB 030h
- DB 090h
- DB 03h
- DB 043h
- DB 02Eh
- DB 02h
- DB 0C2h
- DB 01Fh
- DB 085h
- DB 02Eh
- DB 02Fh
- DB 0D2h
- DB 020h
- DB 080h
- DB 014h
- DB 0D2h
- DB 090h
- DB 0C2h
- DB 01Fh
- DB 085h
- DB 0Fh
- DB 02Fh
- DB 0D2h
- DB 020h
- DB 080h
- DB 09h
- DB 0C2h
- DB 090h
- DB 0C2h
- DB 01Fh
- DB 085h
- DB 0Fh
- DB 02Fh
- DB 0D2h
- DB 020h
- DB 012h
- DB 0Dh
- DB 0B8h
- DB 0D2h
- DB 01Dh
- DB 080h
- DB 0Fh
- DB 0C2h
- DB 091h
- DB 07Fh
- DB 05h
- DB 012h
- DB 00h
- DB 06h
- DB 0D2h
- DB 091h
- DB 0D2h
- DB 01Dh
- DB 080h
- DB 02h
- DB 0D2h
- DB 01Dh
- DB 030h
- DB 01Dh
- DB 03h
- DB 012h
- DB 0Eh
- DB 085h
- DB 0D2h
- DB 017h
- DB 085h
- DB 02Ch
- DB 018h
-L0096:
- JB 1h, L0079
- LCALL L0018
-L0079:
- RET
-
- DB 044h
- DB 04Dh
- DB 026h
- DB 050h
- DB 00h
- DB 0FFh
- DB 043h
- DB 041h
- DB 03Fh
- DB 03Dh
- DB 03Bh
- DB 03Ch
- DB 058h
- DB 064h
- DB 044h
- DB 042h
- DB 040h
- DB 03Eh
- DB 0Fh
- DB 029h
- DB 059h
- DB 065h
- DB 038h
- DB 02Ah
- DB 070h
- DB 01Dh
- DB 010h
- DB 02h
- DB 05Ah
- DB 066h
- DB 071h
- DB 02Ch
- DB 01Fh
- DB 01Eh
- DB 011h
- DB 03h
- DB 05Bh
- DB 067h
- DB 02Eh
- DB 02Dh
- DB 020h
- DB 012h
- DB 05h
- DB 04h
- DB 05Ch
- DB 068h
- DB 039h
- DB 02Fh
- DB 021h
- DB 014h
- DB 013h
- DB 06h
- DB 05Dh
- DB 069h
- DB 031h
- DB 030h
- DB 023h
- DB 022h
- DB 015h
- DB 07h
- DB 05Eh
- DB 06Ah
- DB 072h
- DB 032h
- DB 024h
- DB 016h
- DB 08h
- DB 09h
- DB 05Fh
- DB 06Bh
- DB 033h
- DB 025h
- DB 017h
- DB 018h
- DB 0Bh
- DB 0Ah
- DB 060h
- DB 06Ch
- DB 034h
- DB 035h
- DB 026h
- DB 027h
- DB 019h
- DB 0Ch
- DB 061h
- DB 06Dh
- DB 073h
- DB 028h
- DB 074h
- DB 01Ah
- DB 0Dh
- DB 062h
- DB 06Eh
- DB 03Ah
- DB 036h
- DB 01Ch
- DB 01Bh
- DB 075h
- DB 02Bh
- DB 063h
- DB 076h
- DB 055h
- DB 056h
- DB 077h
- DB 078h
- DB 079h
- DB 07Ah
- DB 0Eh
- DB 07Bh
- DB 07Ch
- DB 04Fh
- DB 07Dh
- DB 04Bh
- DB 047h
- DB 07Eh
- DB 07Fh
- DB 06Fh
- DB 052h
- DB 053h
- DB 050h
- DB 04Ch
- DB 04Dh
- DB 048h
- DB 01h
- DB 045h
- DB 057h
- DB 04Eh
- DB 051h
- DB 04Ah
- DB 037h
- DB 049h
- DB 046h
- DB 054h
- DB 00h
- DB 00h
- DB 00h
- DB 041h
- DB 054h
- DB 00h
- DB 01h
- DB 01h
- DB 02h
- DB 01h
- DB 02h
- DB 02h
- DB 03h
- DB 01h
- DB 02h
- DB 02h
- DB 03h
- DB 02h
- DB 03h
- DB 03h
- DB 04h
- DB 014h
- DB 023h
- DB 014h
- DB 03Ah
- DB 014h
- DB 04Dh
- DB 042h
- DB 032h
- DB 023h
-L0024:
- JB 0Ch, L0202
- LJMP L0203
-
-L0202:
- CLR 1Ah
- CLR 1Bh
- MOV A, 10h
- JNB ACC.7, L0204
- MOV A, 11h
- MOV R6, 10h
- MOV R0, #6h
-L0205:
- XCH A, R6
- CLR C
- RRC A
- XCH A, R6
- RRC A
- DJNZ R0, L0205
- MOV 26h, A
- MOV R7, A
- LCALL L0106
- MOV 27h, R7
- MOV A, 10h
- SWAP A
- RRC A
- RRC A
- ANL A, #3h
- MOV R7, A
- MOV A, 27h
- ANL A, #1h
- CJNE A, 7h, L0206
- CLR A
- MOV R7, #1h
- SJMP L0207
-
-L0206:
- MOV R7, #0h
-L0207:
- MOV A, R7
- JNB ACC.0, L0208
- SETB 1Bh
- SJMP L0204
-
-L0208:
- JB 13h, L0211
- MOV R7, 26h
- LCALL L0212
- MOV R7, 26h
- LCALL L0213
- MOV 28h, R6
- MOV 29h, R7
- MOV A, 29h
- CPL A
- JNZ L0214
- MOV A, 28h
- CPL A
-L0214:
- JZ L0204
- MOV 26h, 29h
- SETB 1Ah
- SJMP L0204
-
-L0211:
- SETB 1Ah
-L0204:
- JNB 1Ah, L0209
- CLR 27h
- MOV R7, #7h
- LCALL L0112
- CLR 27h
- MOV R7, #6h
- LCALL L0112
- MOV C, 13h
- MOV 25h, C
- MOV 31h, 26h
- LCALL L0114
- CLR 0Ch
- RET
-
-L0209:
- JNB 1Bh, L0210
- MOV C, 13h
- MOV 21h, C
- MOV 30h, #0FFh
- SETB 22h
- CLR 23h
- SETB 24h
- LJMP L0178
-
-L0210:
- CLR 0Ch
- LCALL L0184
-L0203:
- RET
-
-L0239:
- CLR A
- MOV 26h, A
- MOV 27h, A
- MOV 28h, #0Fh
- MOV 29h, #0FFh
-L0243:
- MOV A, 27h
- ADD A, 29h
- MOV R7, A
- MOV A, 26h
- ADDC A, 28h
- CLR C
- RRC A
- MOV 2Ah, A
- MOV A, R7
- RRC A
- MOV 2Bh, A
- MOV R7, A
- MOV R6, 2Ah
- LCALL L0240
- CJNE R7, #0FFh, L0241
- MOV A, 2Bh
- ADD A, #0FFh
- MOV 29h, A
- MOV A, 2Ah
- ADDC A, #0FFh
- MOV 28h, A
- SJMP L0242
-
-L0241:
- MOV A, R7
- JNZ L0245
- MOV A, 2Bh
- ADD A, #1h
- MOV 27h, A
- CLR A
- ADDC A, 2Ah
- MOV 26h, A
- SJMP L0242
-
-L0245:
- MOV 2Ch, #0FFh
- CLR A
- MOV 2Dh, A
-L0248:
- MOV A, 2Ch
- CLR C
- RRC A
- MOV 2Ch, A
- CJNE A, 7h, L0246
- MOV A, 2Bh
- MOV R6, 2Ah
- MOV R0, #3h
-L0247:
- CLR C
- RLC A
- XCH A, R6
- RLC A
- XCH A, R6
- DJNZ R0, L0247
- MOV R4, #0h
- ADD A, 2Dh
- MOV R7, A
- MOV A, R4
- ADDC A, R6
- XCH A, R7
- ADD A, #1h
- XCH A, R7
- ADDC A, #0h
- MOV R6, A
- RET
-
-L0246:
- INC 2Dh
- MOV A, 2Dh
- CJNE A, #7h, L0248
- MOV R6, #0FFh
- MOV R7, #0FFh
- RET
-
-L0242:
- SETB C
- MOV A, 27h
- SUBB A, 29h
- MOV A, 28h
- XRL A, #80h
- MOV R0, A
- MOV A, 26h
- XRL A, #80h
- SUBB A, R0
- JC L0243
- MOV A, 27h
- MOV R6, 26h
- MOV R0, #3h
-L0244:
- CLR C
- RLC A
- XCH A, R6
- RLC A
- XCH A, R6
- DJNZ R0, L0244
- MOV R7, A
- RET
-
-L0001:
- MOV R0, #7Fh
- CLR A
-L0002:
- MOV @R0, A
- DJNZ R0, L0002
- MOV SP, #3Bh
- LJMP L0003
-
-L0004:
- LJMP L0015
-
-L0006:
- CLR A
- MOVC A, @A+DPTR
- INC DPTR
- MOV R0, A
-L0014:
- CLR A
- MOVC A, @A+DPTR
- INC DPTR
- JC L0012
- MOV @R0, A
- SJMP L0013
-
-L0012:
- MOVX @R0, A
-L0013:
- INC R0
- DJNZ R7, L0014
- SJMP L0009
-
-L0007:
- CLR A
- MOVC A, @A+DPTR
- INC DPTR
- MOV R0, A
- ANL A, #7h
- ADD A, #0Ch
- XCH A, R0
- CLR C
- RLC A
- SWAP A
- ANL A, #0Fh
- ORL A, #20h
- XCH A, R0
- MOVC A, @A+PC
- JC L0010
- CPL A
- ANL A, @R0
- SJMP L0011
-
-L0010:
- ORL A, @R0
-L0011:
- MOV @R0, A
- DJNZ R7, L0007
- SJMP L0009
-
- DB 01h
- DB 02h
- DB 04h
- DB 08h
- DB 010h
- DB 020h
- DB 040h
- DB 080h
-L0003:
- MOV DPTR, #0880h
-L0009:
- CLR A
- MOV R6, #1h
- MOVC A, @A+DPTR
- JZ L0004
- INC DPTR
- MOV R7, A
- ANL A, #3Fh
- JNB ACC.5, L0005
- ANL A, #1Fh
- MOV R6, A
- CLR A
- MOVC A, @A+DPTR
- INC DPTR
- JZ L0005
- INC R6
-L0005:
- XCH A, R7
- ANL A, #0C0h
- ADD A, ACC
- JZ L0006
- JC L0007
- CLR A
- MOVC A, @A+DPTR
- INC DPTR
- MOV R2, A
- CLR A
- MOVC A, @A+DPTR
- INC DPTR
- MOV R0, A
-L0008:
- CLR A
- MOVC A, @A+DPTR
- INC DPTR
- XCH A, R0
- XCH A, DPL
- XCH A, R0
- XCH A, R2
- XCH A, DPH
- XCH A, R2
- MOVX @DPTR, A
- INC DPTR
- XCH A, R0
- XCH A, DPL
- XCH A, R0
- XCH A, R2
- XCH A, DPH
- XCH A, R2
- DJNZ R7, L0008
- DJNZ R6, L0008
- SJMP L0009
-
-L0093:
- SETB 0Dh
- CLR P1.6
- SETB 0Eh
- SETB 10h
- CLR P1.4
- MOV 8h, R7
- LCALL L0106
- MOV A, R7
- RRC A
- CPL C
- MOV 14h, C
- SETB 16h
- CLR A
- MOV 0Ch, A
- MOV R7, #28h
- LCALL L0065
- CLR P1.7
- SETB 3h
- CLR 0Ah
- MOV R7, #0E8h
- MOV R6, #0FDh
- LCALL L0107
- CLR 0Dh
- SETB P1.6
-L0110:
- JNB 16h, L0108
- LCALL L0109
- JNC L0110
- CLR EA
- SETB P1.7
- CLR 21h
- LCALL L0111
- CLR 16h
- CLR A
- MOV 0Ch, A
- SETB EA
- RET
-
-L0108:
- MOV R7, #0E8h
- MOV R6, #0FDh
- LCALL L0107
-L0129:
- JB 4h, L0128
- JB 0Ah, L0128
- LCALL L0109
- JNC L0129
- CLR EA
- CLR 21h
- LCALL L0111
- SETB EA
- RET
-
-L0128:
- LCALL L0036
- RET
-
-L0141:
- SETB 10h
- CLR P1.4
- SETB 0Ah
- SETB 0Dh
- CLR P1.6
- MOV 8h, R7
- LCALL L0106
- MOV A, R7
- RRC A
- CPL C
- MOV 14h, C
- SETB 16h
- CLR A
- MOV 0Eh, A
- MOV R7, #28h
- LCALL L0065
- CLR P1.5
- SETB 5h
- CLR 0Eh
- MOV R7, #0E8h
- MOV R6, #0FDh
- LCALL L0107
- CLR 10h
- SETB P1.4
-L0143:
- JNB 16h, L0142
- LCALL L0109
- JNC L0143
- CLR EA
- SETB P1.5
- LCALL L0144
- CLR 16h
- CLR A
- MOV 0Eh, A
- SETB EA
- RET
-
-L0142:
- MOV R7, #0E8h
- MOV R6, #0FDh
- LCALL L0107
-L0146:
- JB 7h, L0145
- JB 0Eh, L0145
- LCALL L0109
- JNC L0146
- CLR EA
- LCALL L0144
- SETB EA
- RET
-
-L0145:
- LCALL L0036
- RET
-
-L0017:
- MOV R5, 7h
- MOV A, R5
- JNB ACC.6, L0156
- SETB 0Fh
- SJMP L0157
-
-L0156:
- CLR 0Fh
-L0157:
- MOV A, R5
- JNB ACC.5, L0158
- LCALL L0159
- SJMP L0160
-
-L0158:
- LCALL L0175
-L0160:
- MOV A, R5
- JNB ACC.4, L0161
- LCALL L0162
- SJMP L0163
-
-L0161:
- LCALL L0174
-L0163:
- MOV A, R5
- JNB ACC.2, L0164
- SETB 27h
- SJMP L0165
-
-L0164:
- CLR 27h
-L0165:
- MOV R7, #2h
- LCALL L0112
- MOV A, R5
- JNB ACC.1, L0166
- LCALL L0167
- SJMP L0168
-
-L0166:
- LCALL L0173
-L0168:
- MOV A, R5
- JNB ACC.0, L0169
- LCALL L0170
- JB 11h, L0171
- SETB 11h
- SETB 1h
- RET
-
-L0169:
- LCALL L0172
-L0171:
- RET
-
- DB 07Fh
- DB 02h
- DB 012h
- DB 00h
- DB 06h
- DB 020h
- DB 094h
- DB 042h
- DB 0A2h
- DB 095h
- DB 092h
- DB 018h
- DB 05h
- DB 0Eh
- DB 0E5h
- DB 0Eh
- DB 0B4h
- DB 01h
- DB 012h
- DB 020h
- DB 018h
- DB 0Ah
- DB 0D2h
- DB 07h
- DB 0D2h
- DB 0Ah
- DB 0D2h
- DB 0Dh
- DB 0C2h
- DB 096h
- DB 080h
- DB 019h
- DB 0E4h
- DB 0F5h
- DB 0Eh
- DB 080h
- DB 014h
- DB 0E5h
- DB 0Eh
- DB 0B4h
- DB 0Bh
- DB 0Fh
- DB 0D2h
- DB 0Eh
- DB 0D2h
- DB 010h
- DB 0C2h
- DB 094h
- DB 0D2h
- DB 013h
- DB 0D2h
- DB 0Ch
- DB 0E4h
- DB 0F5h
- DB 0Eh
- DB 0C2h
- DB 07h
- DB 0E5h
- DB 010h
- DB 0C3h
- DB 013h
- DB 0F5h
- DB 010h
- DB 0E5h
- DB 011h
- DB 013h
- DB 0F5h
- DB 011h
- DB 030h
- DB 018h
- DB 03h
- DB 043h
- DB 010h
- DB 080h
- DB 022h
- DB 07Fh
- DB 02h
- DB 012h
- DB 00h
- DB 06h
- DB 020h
- DB 096h
- DB 042h
- DB 0A2h
- DB 097h
- DB 092h
- DB 019h
- DB 05h
- DB 0Ch
- DB 0E5h
- DB 0Ch
- DB 0B4h
- DB 01h
- DB 012h
- DB 020h
- DB 019h
- DB 0Ah
- DB 0D2h
- DB 04h
- DB 0D2h
- DB 0Eh
- DB 0D2h
- DB 010h
- DB 0C2h
- DB 094h
- DB 080h
- DB 019h
- DB 0E4h
- DB 0F5h
- DB 0Ch
- DB 080h
- DB 014h
- DB 0E5h
- DB 0Ch
- DB 0B4h
- DB 0Bh
- DB 0Fh
- DB 0D2h
- DB 0Ah
- DB 0D2h
- DB 0Dh
- DB 0C2h
- DB 096h
- DB 0C2h
- DB 013h
- DB 0D2h
- DB 0Ch
- DB 0E4h
- DB 0F5h
- DB 0Ch
- DB 0C2h
- DB 04h
- DB 0E5h
- DB 010h
- DB 0C3h
- DB 013h
- DB 0F5h
- DB 010h
- DB 0E5h
- DB 011h
- DB 013h
- DB 0F5h
- DB 011h
- DB 030h
- DB 019h
- DB 03h
- DB 043h
- DB 010h
- DB 080h
- DB 022h
-L0144:
- SETB 21h
-L0111:
- MOV 30h, #0FEh
-L0140:
- SETB 22h
- SETB 23h
- CLR 24h
-L0178:
- SETB 0Ah
- SETB 0Dh
- CLR P1.6
- SETB 0Eh
- SETB 10h
- CLR P1.4
- MOV C, 23h
- MOV 27h, C
- MOV R7, #6h
- LCALL L0112
- MOV C, 24h
- MOV 27h, C
- MOV R7, #7h
- LCALL L0112
- JNB 22h, L0113
- MOV C, 21h
- MOV 25h, C
- MOV 31h, 30h
- LCALL L0114
- SJMP L0115
-
-L0113:
- MOV C, 21h
- MOV 26h, C
- MOV 32h, 30h
- LCALL L0116
- CLR P1.2
- CLR P1.3
- SETB 9h
-L0115:
- CLR 0Ch
- RET
-
-L0036:
- JB 4h, L0130
- JNB 7h, L0131
-L0130:
- MOV R7, #0E8h
- MOV R6, #0FDh
- LCALL L0107
-L0133:
- JB 4h, L0132
- JNB 7h, L0131
-L0132:
- LCALL L0109
- JNC L0133
- CLR EA
- JB 4h, L0134
- JNB 7h, L0135
-L0134:
- JNB 4h, L0136
- CLR 1Fh
- SJMP L0137
-
-L0136:
- SETB 1Fh
-L0137:
- CLR A
- MOV 0Ch, A
- CLR 4h
- MOV 0Eh, A
- CLR 7h
- LCALL L0138
- LCALL L0139
- SETB EA
- MOV C, 1Fh
- MOV 21h, C
- MOV 30h, #0FFh
- LCALL L0140
- SJMP L0133
-
-L0135:
- SETB EA
- SJMP L0133
-
-L0131:
- RET
-
-L0212:
- MOV A, 19h
- JZ L0220
- CJNE A, #2h, L0221
-L0220:
- MOV A, 0Dh
- MOV DPTR, #0363h
- MOVC A, @A+DPTR
- XRL A, R7
- JZ L0222
-L0221:
- MOV A, 19h
- XRL A, #1h
- JNZ L0223
- MOV A, R7
- XRL A, #0F0h
- JNZ L0223
-L0222:
- INC 19h
- MOV A, 19h
- SETB C
- SUBB A, #2h
- JC L0224
- CLR A
- MOV 19h, A
- INC 0Dh
- MOV A, 0Dh
- SUBB A, #9h
- JC L0224
- MOV 2Ah, #5h
-L0226:
- CLR A
- MOV R7, A
- LCALL L0225
- MOV R7, #7h
- LCALL L0225
- DJNZ 2Ah, L0226
- CLR A
- MOV 0Dh, A
- RET
-
-L0223:
- CLR A
- MOV 0Dh, A
- MOV 19h, A
-L0224:
- RET
-
-L0035:
- MOV A, 3Bh
- XRL A, #15h
- JNZ L0229
- LCALL L0041
- MOV A, 3Ah
- JNB ACC.0, L0230
- MOV 26h, #80h
- SJMP L0231
-
-L0230:
- CLR A
- MOV 26h, A
-L0231:
- MOV A, 3Ah
- CLR C
- RRC A
- MOV 3Ah, A
- MOV A, 39h
- JNB ACC.0, L0232
- ORL 3Ah, #80h
-L0232:
- MOV A, 39h
- CLR C
- RRC A
- MOV 39h, A
- MOV A, 38h
- JNB ACC.0, L0233
- ORL 39h, #80h
-L0233:
- CLR P3.6
- MOV DPTR, #0D001h
- CLR A
- MOVX @DPTR, A
- INC DPTR
- MOV A, 26h
- MOVX @DPTR, A
- INC DPTR
- MOV A, 3Ah
- MOVX @DPTR, A
- INC DPTR
- MOV A, 39h
- MOVX @DPTR, A
- SETB P3.6
-L0229:
- RET
-
- DB 020h
- DB 094h
- DB 037h
- DB 05h
- DB 0Eh
- DB 0E5h
- DB 0Eh
- DB 0D3h
- DB 094h
- DB 08h
- DB 050h
- DB 012h
- DB 0E5h
- DB 08h
- DB 030h
- DB 0E0h
- DB 04h
- DB 0D2h
- DB 095h
- DB 080h
- DB 02h
- DB 0C2h
- DB 095h
- DB 0E5h
- DB 08h
- DB 0C3h
- DB 013h
- DB 0F5h
- DB 08h
- DB 022h
- DB 0E5h
- DB 0Eh
- DB 0B4h
- DB 09h
- DB 05h
- DB 0A2h
- DB 014h
- DB 092h
- DB 095h
- DB 022h
- DB 0E5h
- DB 0Eh
- DB 0B4h
- DB 0Ah
- DB 03h
- DB 0D2h
- DB 095h
- DB 022h
- DB 0E5h
- DB 0Eh
- DB 0B4h
- DB 0Bh
- DB 05h
- DB 0C2h
- DB 016h
- DB 0E4h
- DB 0F5h
- DB 0Eh
- DB 022h
- DB 020h
- DB 096h
- DB 037h
- DB 05h
- DB 0Ch
- DB 0E5h
- DB 0Ch
- DB 0D3h
- DB 094h
- DB 08h
- DB 050h
- DB 012h
- DB 0E5h
- DB 08h
- DB 030h
- DB 0E0h
- DB 04h
- DB 0D2h
- DB 097h
- DB 080h
- DB 02h
- DB 0C2h
- DB 097h
- DB 0E5h
- DB 08h
- DB 0C3h
- DB 013h
- DB 0F5h
- DB 08h
- DB 022h
- DB 0E5h
- DB 0Ch
- DB 0B4h
- DB 09h
- DB 05h
- DB 0A2h
- DB 014h
- DB 092h
- DB 097h
- DB 022h
- DB 0E5h
- DB 0Ch
- DB 0B4h
- DB 0Ah
- DB 03h
- DB 0D2h
- DB 097h
- DB 022h
- DB 0E5h
- DB 0Ch
- DB 0B4h
- DB 0Bh
- DB 05h
- DB 0C2h
- DB 016h
- DB 0E4h
- DB 0F5h
- DB 0Ch
- DB 022h
- DB 01h
- DB 0Ch
- DB 00h
- DB 0C1h
- DB 04h
- DB 0C1h
- DB 0Ah
- DB 0C1h
- DB 083h
- DB 0C1h
- DB 0Ch
- DB 0C1h
- DB 09h
- DB 0C1h
- DB 02h
- DB 0C1h
- DB 016h
- DB 0C1h
- DB 08h
- DB 01h
- DB 0Eh
- DB 00h
- DB 0C1h
- DB 07h
- DB 0C1h
- DB 0Eh
- DB 0C1h
- DB 085h
- DB 0C1h
- DB 08Bh
- DB 0C1h
- DB 086h
- DB 0C1h
- DB 08Fh
- DB 0C1h
- DB 012h
- DB 0C1h
- DB 00h
- DB 0C1h
- DB 011h
- DB 0C1h
- DB 01h
- DB 0C1h
- DB 017h
- DB 01h
- DB 0Dh
- DB 00h
- DB 01h
- DB 019h
- DB 00h
- DB 01h
- DB 01Ah
- DB 00h
- DB 01h
- DB 034h
- DB 03h
- DB 0C1h
- DB 029h
- DB 00h
-L0114:
- MOV C, 25h
- MOV 26h, C
- MOV 32h, 31h
- LCALL L0116
- CLR P1.2
- CLR P1.3
- JB 25h, L0117
- JB 6h, L0118
-L0117:
- JNB 25h, L0119
- JNB 0Bh, L0119
-L0118:
- MOV R7, #69h
- MOV R6, #0h
- LCALL L0107
-L0120:
- LCALL L0109
- JNC L0120
- LCALL L0121
- JNC L0119
- JB 25h, L0122
- SETB P1.2
- SJMP L0119
-
-L0122:
- SETB P1.3
-L0119:
- SETB 9h
- RET
-
-L0042:
- MOV DPTR, #0FFCh
- CLR A
- MOVC A, @A+DPTR
- MOV R6, A
- MOV A, #1h
- MOVC A, @A+DPTR
- MOV R7, A
- CLR C
- SUBB A, 3Ah
- MOV 0Bh, A
- MOV A, R6
- SUBB A, 39h
- MOV 0Ah, A
- MOV DPTR, #0FFBh
- CLR A
- MOVC A, @A+DPTR
- CLR C
- SUBB A, 38h
- MOV 9h, A
- CLR C
- MOV A, R7
- SUBB A, 3Ah
- MOV A, R6
- SUBB A, 39h
- JNC L0046
- DEC 9h
-L0046:
- MOV A, 9h
- JNB ACC.7, L0047
- CLR A
- MOV 9h, A
- MOV 0Ah, A
- MOV 0Bh, A
-L0047:
- RET
-
-L0194:
- INC 35h
- MOV R7, 35h
- MOV R6, 7h
- MOV A, R6
- DEC A
- RRC A
- RRC A
- RRC A
- ANL A, #1Fh
- MOV R5, A
- MOV A, R6
- ANL A, #7h
- MOV R7, A
- JNZ L0196
- MOV 26h, A
- MOV 27h, A
- SJMP L0197
-
-L0196:
- MOV A, #0FFh
- MOV R6, #0h
- MOV R0, 7h
- INC R0
- SJMP L0199
-
-L0200:
- XCH A, R6
- MOV C, ACC.7
- RRC A
- XCH A, R6
- RRC A
-L0199:
- DJNZ R0, L0200
- MOV 27h, A
- MOV 26h, R6
-L0197:
- MOV R7, 5h
- MOV R5, 27h
- LJMP L0198
-
-L0016:
- CLR A
- MOV R7, A
- MOV R6, #1h
-L0261:
- MOV A, R7
- CLR C
- SUBB A, #8h
- JNC L0259
- MOV A, R7
- JZ L0260
- XRL A, #1h
- JZ L0260
- MOV A, R7
- XRL A, #3h
- JZ L0260
- MOV A, R6
- ORL A, #2h
- ANL A, #0FEh
- MOV DPTR, #0E000h
- MOVX @DPTR, A
- ANL A, #0F4h
- MOV R5, A
- MOV A, R6
- ANL A, #0F4h
- XRL A, R5
- JZ L0260
- SETB C
- RET
-
-L0260:
- INC R7
- MOV A, R6
- ADD A, ACC
- MOV R6, A
- SJMP L0261
-
-L0259:
- CLR C
- RET
-
-L0053:
- MOV R5, 7h
- MOV R4, 6h
- MOV A, R5
- ADD A, #0FFh
- MOV R7, A
- MOV A, R4
- ADDC A, #0FFh
- MOV R6, A
- MOV A, R7
- MOV R0, #3h
-L0054:
- XCH A, R6
- CLR C
- RRC A
- XCH A, R6
- RRC A
- DJNZ R0, L0054
- MOV R7, A
- MOV A, R5
- ANL A, #7h
- MOV R5, A
- JNZ L0055
- MOV 26h, A
- SJMP L0056
-
-L0055:
- MOV A, #0FFh
- MOV R0, 5h
- INC R0
- SJMP L0191
-
-L0192:
- CLR C
- RRC A
-L0191:
- DJNZ R0, L0192
- MOV 26h, A
-L0056:
- MOV R5, 26h
- LJMP L0057
-
-L0030:
- CLR 28h
- JB 29h, L0234
- LCALL L0235
- MOV 3Bh, R7
- MOV A, 3Bh
- CJNE A, #15h, L0236
- MOV 34h, #1Fh
-L0236:
- SETB 29h
-L0234:
- LCALL L0237
- MOV 35h, R7
- MOV A, 35h
- JNB ACC.0, L0238
- LCALL L0195
- LCALL L0194
- CLR A
- MOV 36h, A
- MOV 37h, A
- RET
-
-L0238:
- LCALL L0239
- MOV 36h, R6
- MOV 37h, R7
- RET
-
-L0213:
- JB 0Fh, L0215
- MOV R6, #0h
- RET
-
-L0215:
- CJNE R7, #0F0h, L0216
- SETB 15h
- MOV R6, #0FFh
- MOV R7, #0FFh
- RET
-
-L0216:
- MOV A, R7
- CLR C
- SUBB A, #85h
- JC L0217
- MOV R6, #0h
- RET
-
-L0217:
- MOV A, R7
- MOV DPTR, #02CEh
- MOVC A, @A+DPTR
- MOV R6, A
- JNZ L0218
- MOV R6, A
- RET
-
-L0218:
- JNB 15h, L0219
- ORL 6h, #80h
-L0219:
- CLR 15h
- MOV R7, 6h
- MOV R6, #0h
- RET
-
-L0032:
- MOV C, 1Ah
- MOV 28h, C
- INC 37h
- MOV A, 37h
- JNZ L0051
- INC 36h
-L0051:
- CLR C
- MOV A, 36h
- SUBB A, #80h
- JNC L0052
- MOV R7, 37h
- MOV R6, 36h
- LJMP L0053
-
-L0052:
- MOV A, 35h
- CLR C
- SUBB A, #10h
- JNC L0193
- LCALL L0194
- LCALL L0195
- LCALL L0194
- CLR A
- MOV 36h, A
- MOV 37h, A
-L0193:
- RET
-
-L0237:
- CLR A
- MOV R7, A
- LCALL L0250
- MOV R6, #0FFh
- CLR A
- MOV 26h, A
-L0253:
- MOV A, 26h
- CJNE A, #8h, L0251
- MOV R7, #1h
- LCALL L0250
- MOV R6, #0FFh
-L0251:
- MOV A, R6
- CJNE A, 7h, L0252
- MOV R7, 26h
- RET
-
-L0252:
- MOV A, R6
- CLR C
- RRC A
- MOV R6, A
- INC 26h
- MOV A, 26h
- SETB C
- SUBB A, #10h
- JC L0253
- MOV R7, #0FFh
- RET
-
- DB 0E4h
- DB 0FFh
- DB 030h
- DB 0Fh
- DB 02h
- DB 07Fh
- DB 040h
- DB 020h
- DB 05h
- DB 03h
- DB 043h
- DB 07h
- DB 020h
- DB 020h
- DB 03h
- DB 03h
- DB 043h
- DB 07h
- DB 010h
- DB 090h
- DB 0E0h
- DB 00h
- DB 0E0h
- DB 030h
- DB 0E2h
- DB 03h
- DB 043h
- DB 07h
- DB 04h
- DB 030h
- DB 0Bh
- DB 03h
- DB 043h
- DB 07h
- DB 02h
- DB 030h
- DB 06h
- DB 03h
- DB 043h
- DB 07h
- DB 01h
- DB 022h
-L0057:
- MOV 27h, R6
- MOV 28h, R7
- MOV 29h, R5
- LCALL L0058
- MOV A, 27h
- ADD A, #0D0h
- MOV 2Ah, A
- MOV A, 28h
- MOV 2Bh, A
- LCALL L0059
- MOV 2Fh, 29h
- MOV R3, 2Bh
- MOV R5, 2Ah
- MOV R7, 34h
- LCALL L0060
- LCALL L0061
- LJMP L0062
-
- DB 0C0h
- DB 0E0h
- DB 0C0h
- DB 0F0h
- DB 0C0h
- DB 0D0h
- DB 075h
- DB 0D0h
- DB 00h
- DB 0C0h
- DB 06h
- DB 0C0h
- DB 07h
- DB 020h
- DB 010h
- DB 0Bh
- DB 030h
- DB 016h
- DB 05h
- DB 012h
- DB 08h
- DB 0Ah
- DB 080h
- DB 03h
- DB 012h
- DB 06h
- DB 04Dh
- DB 0D0h
- DB 07h
- DB 0D0h
- DB 06h
- DB 0D0h
- DB 0D0h
- DB 0D0h
- DB 0F0h
- DB 0D0h
- DB 0E0h
- DB 032h
- DB 0C0h
- DB 0E0h
- DB 0C0h
- DB 0F0h
- DB 0C0h
- DB 0D0h
- DB 075h
- DB 0D0h
- DB 00h
- DB 0C0h
- DB 06h
- DB 0C0h
- DB 07h
- DB 020h
- DB 0Dh
- DB 0Bh
- DB 030h
- DB 016h
- DB 05h
- DB 012h
- DB 08h
- DB 045h
- DB 080h
- DB 03h
- DB 012h
- DB 06h
- DB 098h
- DB 0D0h
- DB 07h
- DB 0D0h
- DB 06h
- DB 0D0h
- DB 0D0h
- DB 0D0h
- DB 0F0h
- DB 0D0h
- DB 0E0h
- DB 032h
-L0085:
- POP DPH
- POP DPL
- MOV R0, A
-L0089:
- CLR A
- MOVC A, @A+DPTR
- JNZ L0087
- MOV A, #1h
- MOVC A, @A+DPTR
- JNZ L0087
- INC DPTR
- INC DPTR
-L0088:
- MOVC A, @A+DPTR
- MOV R0, A
- MOV A, #1h
- MOVC A, @A+DPTR
- MOV DPL, A
- MOV DPH, R0
- CLR A
- JMP @A+DPTR
-
-L0087:
- MOV A, #2h
- MOVC A, @A+DPTR
- XRL A, R0
- JZ L0088
- INC DPTR
- INC DPTR
- INC DPTR
- SJMP L0089
-
-L0060:
- MOV R6, 3h
- MOV R3, 5h
- ANL 1Ah, #0EFh
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- MOV R5, 7h
- MOV 33h, R6
- MOV R7, #2h
- LCALL L0188
- MOV R7, 2Fh
- LCALL L0067
- ORL 1Ah, #10h
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- RET
-
-L0112:
- MOV A, #1h
- MOV R0, 7h
- INC R0
- SJMP L0124
-
-L0125:
- CLR C
- RLC A
-L0124:
- DJNZ R0, L0125
- MOV R7, A
- MOV DPTR, #0E000h
- MOVX A, @DPTR
- ORL A, #2h
- MOV R6, A
- MOV A, R7
- JNB 27h, L0126
- ORL 6h, A
- SJMP L0127
-
-L0126:
- CPL A
- ANL 6h, A
-L0127:
- MOV DPTR, #0E000h
- MOV A, R6
- MOVX @DPTR, A
- RET
-
-L0075:
- LCALL L0037
- JC L0076
- LCALL L0077
- SJMP L0075
-
-L0076:
- LCALL L0185
- LCALL L0186
- CLR 1Fh
- MOV 2Fh, #0EEh
- MOV C, 6h
- MOV 20h, C
- LCALL L0177
-L0187:
- MOV DPTR, #0D000h
- MOVX A, @DPTR
- JNB ACC.1, L0187
- RET
-
-L0249:
- MOV R6, 3h
- MOV R3, 5h
- ANL 1Ah, #0EFh
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- MOV R5, 7h
- MOV 33h, R6
- MOV R7, #3h
- LCALL L0188
- LCALL L0068
- ORL 1Ah, #10h
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- RET
-
-L0068:
- MOV A, 1Ah
- ANL A, #9Fh
- MOV R5, A
- ORL A, #20h
- MOV R6, A
- MOV R4, #8h
-L0070:
- MOV A, R7
- ADD A, ACC
- MOV R7, A
- MOV DPTR, #0D000h
- MOV A, R5
- MOVX @DPTR, A
- MOVX A, @DPTR
- JNB ACC.4, L0069
- ORL 7h, #1h
-L0069:
- MOV DPTR, #0D000h
- MOV A, R6
- MOVX @DPTR, A
- DJNZ R4, L0070
- RET
-
-L0116:
- MOV DPTR, #0F000h
- MOV A, 32h
- MOVX @DPTR, A
- MOV 0Fh, A
- MOV C, 26h
- MOV 27h, C
- MOV R7, #5h
- LCALL L0112
- MOV DPTR, #0E000h
- MOVX A, @DPTR
- ORL A, #2h
- ANL A, #0FEh
- MOV R6, A
- MOVX @DPTR, A
- ORL A, #1h
- MOVX @DPTR, A
- MOV A, R6
- MOVX @DPTR, A
- RET
-
-L0254:
- ANL 1Ah, #0EFh
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- MOV R7, #9Fh
- LCALL L0067
- LCALL L0068
- LCALL L0068
- LCALL L0068
- ORL 1Ah, #10h
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- RET
-
-L0225:
- MOV 2Bh, R7
- MOV R7, #0EDh
- LCALL L0093
- MOV R7, 2Bh
- LCALL L0093
- MOV 2Ch, #0Ah
-L0228:
- MOV R7, #0E8h
- MOV R6, #0FDh
- LCALL L0107
-L0227:
- LCALL L0109
- JNC L0227
- DJNZ 2Ch, L0228
- RET
-
-L0198:
- MOV 28h, R7
- MOV 29h, R5
- LCALL L0058
- LCALL L0059
- MOV A, 28h
- ADD A, #0FEh
- MOV R3, A
- MOV 2Fh, 29h
- MOV R5, #0EFh
- MOV R7, 34h
- LCALL L0060
- LCALL L0061
- LJMP L0062
-
-L0107:
- MOV R5, 7h
- MOV R4, 6h
- CLR TR0
- MOV A, R5
- CPL A
- MOV R7, A
- MOV A, R4
- CPL A
- MOV R6, A
- MOV A, R7
- ADD A, #1h
- MOV R5, A
- CLR A
- ADDC A, R6
- MOV TH0, A
- MOV R7, 5h
- MOV TL0, R7
- CLR TF0
- SETB TR0
- RET
-
- DB 0ADh
- DB 07h
- DB 0ACh
- DB 06h
- DB 0C2h
- DB 0CAh
- DB 0EDh
- DB 0F4h
- DB 0FFh
- DB 0ECh
- DB 0F4h
- DB 0FEh
- DB 0EFh
- DB 024h
- DB 01h
- DB 0FDh
- DB 0E4h
- DB 03Eh
- DB 0F5h
- DB 0CDh
- DB 0AFh
- DB 05h
- DB 08Fh
- DB 0CCh
- DB 0C2h
- DB 0CFh
- DB 0D2h
- DB 0CAh
- DB 022h
-L0063:
- ANL 1Ah, #0EFh
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- MOV R7, #5h
- LCALL L0067
- LCALL L0068
- ORL 1Ah, #10h
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- MOV A, R7
- RRC A
- RET
-
-L0067:
- MOV A, 1Ah
- ANL A, #9Fh
- MOV R6, A
- ORL A, #40h
- MOV R5, A
- MOV R4, #8h
- MOV DPTR, #0D000h
-L0073:
- MOV A, R7
- RLC A
- MOV R7, A
- JNC L0071
- MOV A, R5
- SJMP L0072
-
-L0071:
- MOV A, R6
-L0072:
- MOVX @DPTR, A
- ORL A, #20h
- MOVX @DPTR, A
- DJNZ R4, L0073
- RET
-
-L0041:
- LCALL L0048
- MOV 39h, R6
- MOV 3Ah, R7
- LCALL L0049
- MOV 38h, R7
- MOV A, 38h
- JNB ACC.1, L0050
- ORL 39h, #80h
-L0050:
- MOV A, 38h
- RRC A
- RRC A
- ANL A, #3Fh
- MOV 38h, A
- RET
-
- DB 053h
- DB 01Ah
- DB 0EFh
- DB 090h
- DB 0D0h
- DB 00h
- DB 0E5h
- DB 01Ah
- DB 0F0h
- DB 07Fh
- DB 05h
- DB 012h
- DB 0Ch
- DB 0D0h
- DB 012h
- DB 0Bh
- DB 0D7h
- DB 043h
- DB 01Ah
- DB 010h
- DB 090h
- DB 0D0h
- DB 00h
- DB 0E5h
- DB 01Ah
- DB 0F0h
- DB 022h
-L0029:
- LCALL L0185
- LCALL L0186
-L0256:
- MOV DPTR, #0D000h
- MOVX A, @DPTR
- JB ACC.1, L0255
- LCALL L0024
- LCALL L0077
- SJMP L0256
-
-L0255:
- RET
-
-L0034:
- LCALL L0041
- LCALL L0042
- MOV A, 9h
- JNZ L0043
- MOV A, 0Ah
- JNZ L0043
- MOV A, 0Bh
- JNZ L0043
- LCALL L0044
-L0043:
- RET
-
-L0188:
- MOV 31h, R5
- MOV 32h, R3
- LCALL L0067
- MOV R7, 31h
- LCALL L0067
- MOV R7, 32h
- LCALL L0067
- MOV R7, 33h
- LJMP L0067
-
-L0190:
- ANL 1Ah, #0EFh
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- LCALL L0067
- ORL 1Ah, #10h
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- RET
-
-L0195:
- LCALL L0058
- LCALL L0059
- CLR A
- MOV R3, A
- MOV R5, #0D0h
- MOV R7, 34h
- LCALL L0201
- LCALL L0061
- LJMP L0062
-
-L0033:
- ANL 1Ah, #0FBh
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- ANL 1Ah, #0FDh
- MOV A, 1Ah
- MOVX @DPTR, A
- MOV R7, #3Ch
- LJMP L0065
-
-L0025:
- JNB 9h, L0183
- LCALL L0121
- JC L0183
- CLR P1.2
- CLR P1.3
- CLR 9h
- LCALL L0184
-L0183:
- RET
-
-L0177:
- MOV C, 1Fh
- MOV 21h, C
- MOV 30h, 2Fh
- MOV C, 20h
- MOV 22h, C
- CLR 23h
- CLR 24h
- LJMP L0178
-
-L0106:
- MOV A, R7
- SWAP A
- ANL A, #0Fh
- MOV DPTR, #0353h
- MOVC A, @A+DPTR
- MOV R6, A
- MOV A, R7
- ANL A, #0Fh
- MOVC A, @A+DPTR
- ADD A, R6
- MOV R7, A
- RET
-
-L0018:
- MOV DPTR, #0E000h
- MOVX A, @DPTR
- ORL A, #2h
- ANL A, #0FEh
- MOV R6, A
- MOVX @DPTR, A
- ANL A, #0FDh
- MOVX @DPTR, A
- MOV A, R6
- MOVX @DPTR, A
- RET
-
-L0062:
- LCALL L0059
- LCALL L0063
- MOV 1Bh, C
- LCALL L0061
- JB 1Bh, L0062
- RET
-
-L0099:
- JNB 5h, L0101
- JB 0Eh, L0101
- JB 2h, L0101
- SETB C
- SJMP L0102
-
-L0101:
- CLR C
-L0102:
- RET
-
-L0037:
- JNB 3h, L0104
- JB 0Ah, L0104
- JB 2h, L0104
- SETB C
- SJMP L0105
-
-L0104:
- CLR C
-L0105:
- RET
-
-L0240:
- MOV R2, 6h
- MOV A, R2
- ADD A, #0D0h
- MOV R5, A
- MOV A, R7
- MOV R3, A
- MOV R7, 34h
- LCALL L0249
- RET
-
-L0250:
- MOV A, R7
- ADD A, #0FEh
- MOV R3, A
- MOV R5, #0EFh
- MOV R7, 34h
- LCALL L0249
- RET
-
-L0082:
- SETB 2h
- SETB 0Dh
- CLR P1.6
- SETB 10h
- CLR P1.4
- RET
-
-L0019:
- MOV A, R7
- MOV DPTR, #02C9h
- MOVC A, @A+DPTR
- XRL A, R5
- JZ L0257
-L0258:
- SJMP L0258
-
-L0257:
- RET
-
-L0098:
- LCALL L0099
- JNC L0100
- CLR 10h
- SETB P1.4
-L0100:
- RET
-
-L0097:
- LCALL L0037
- JNC L0103
- CLR 0Dh
- SETB P1.6
-L0103:
- RET
-
-L0020:
- MOV A, TMOD
- ANL A, #0F0h
- ORL A, #1h
- MOV TMOD, A
- RET
-
-L0109:
- JNB TF0, L0123
- CLR TR0
- SETB C
- RET
-
-L0123:
- CLR C
- RET
-
- DB 030h
- DB 0CFh
- DB 04h
- DB 0C2h
- DB 0CAh
- DB 0D3h
- DB 022h
- DB 0C3h
- DB 022h
-L0058:
- LCALL L0059
- LCALL L0189
- LJMP L0061
-
-L0184:
- LCALL L0138
-L0139:
- CLR 0Eh
- LJMP L0098
-
-L0095:
- CLR 2h
- LCALL L0097
- LJMP L0098
-
-L0159:
- CLR 5h
- SETB 10h
- CLR P1.4
- RET
-
-L0162:
- CLR 3h
- SETB 0Dh
- CLR P1.6
- RET
-
-L0045:
- MOV DPTR, #0D000h
- MOV A, 1Ah
- MOVX @DPTR, A
- RET
-
-L0059:
- JNB 28h, L0074
- LCALL L0075
-L0074:
- RET
-
-L0061:
- JNB 28h, L0064
- LCALL L0033
-L0064:
- RET
-
-L0121:
- MOV DPTR, #0E000h
- MOVX A, @DPTR
- RRC A
- RET
-
-L0039:
- ANL 1Ah, #0FEh
- LJMP L0045
-
-L0040:
- ORL 1Ah, #1h
- LJMP L0045
-
- DB 053h
- DB 01Ah
- DB 0FDh
- DB 02h
- DB 0Eh
- DB 09Bh
-L0185:
- ORL 1Ah, #2h
- LJMP L0045
-
- DB 053h
- DB 01Ah
- DB 0FBh
- DB 02h
- DB 0Eh
- DB 09Bh
-L0186:
- ORL 1Ah, #4h
- LJMP L0045
-
-L0044:
- ANL 1Ah, #7Fh
- LJMP L0045
-
- DB 043h
- DB 01Ah
- DB 080h
- DB 02h
- DB 0Eh
- DB 09Bh
-L0175:
- SETB 5h
- LJMP L0098
-
-L0138:
- CLR 0Ah
- LJMP L0097
-
-L0174:
- SETB 3h
- LJMP L0097
-
-L0021:
- MOV 1Ah, R7
- LJMP L0045
-
-L0189:
- MOV R7, #6h
- LJMP L0190
-
- DB 07Fh
- DB 04h
- DB 02h
- DB 0Dh
- DB 067h
-L0048:
- MOV R6, 36h
- MOV R7, 37h
- RET
-
- DB 0E4h
- DB 0F5h
- DB 0C8h
- DB 022h
-L0235:
- LCALL L0254
- RET
-
-L0173:
- CLR 0Bh
- RET
-
-L0167:
- SETB 0Bh
- RET
-
-L0172:
- CLR 6h
- RET
-
-L0170:
- SETB 6h
- RET
-
-L0049:
- MOV R7, 35h
- RET
-
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
- DB 0FFh
-END
diff --git a/site/vortex86ex/dmp_kbd_fw_part1.inc.txt b/site/vortex86ex/dmp_kbd_fw_part1.inc.txt
deleted file mode 100755
index 486bf1b..0000000
--- a/site/vortex86ex/dmp_kbd_fw_part1.inc.txt
+++ /dev/null
@@ -1,531 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2013 DMP Electronics Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
- .byte 0x02, 0x04, 0xa3, 0x02, 0x0a, 0xfb, 0xef, 0x75
- .byte 0xf0, 0x03, 0xa4, 0xff, 0xae, 0x07, 0x1f, 0xee
- .byte 0x70, 0xfa, 0x22, 0x02, 0x0a, 0xd5, 0x12, 0x09
- .byte 0x5e, 0x7f, 0x30, 0x12, 0x05, 0xfb, 0x90, 0xe0
- .byte 0x00, 0x74, 0x16, 0xf0, 0x12, 0x0d, 0xda, 0xc2
- .byte 0x92, 0xc2, 0x93, 0xc2, 0x90, 0xd2, 0x91, 0xd2
- .byte 0xb8, 0xd2, 0xba, 0xd2, 0x88, 0xd2, 0xa8, 0xd2
- .byte 0x8a, 0xd2, 0xaa, 0x7d, 0x44, 0xe4, 0xff, 0x12
- .byte 0x0e, 0x3a, 0x7d, 0x4d, 0x0f, 0x12, 0x0e, 0x3a
- .byte 0x7d, 0x26, 0x0f, 0x12, 0x0e, 0x3a, 0x7d, 0x50
- .byte 0x0f, 0x12, 0x0e, 0x3a, 0x12, 0x0e, 0x59, 0xd2
- .byte 0xaf, 0x7f, 0xb1, 0x12, 0x0e, 0xf5, 0x90, 0x0f
- .byte 0xfe, 0xe4, 0x93, 0xff, 0xb4, 0x55, 0x0a, 0xa3
- .byte 0xe4, 0x93, 0xb4, 0xaa, 0x04, 0xd2, 0x08, 0x80
- .byte 0x10, 0xef, 0xb4, 0x12, 0x0c, 0x90, 0x0f, 0xff
- .byte 0xe4, 0x93, 0xb4, 0x34, 0x04, 0xc2, 0x08, 0xc2
- .byte 0x12, 0x12, 0x03, 0x6c, 0x12, 0x0d, 0xa6, 0x12
- .byte 0x01, 0x08, 0x30, 0x01, 0x27, 0x30, 0x12, 0x1f
- .byte 0x20, 0x00, 0x1c, 0x30, 0x11, 0x19, 0x12, 0x0d
- .byte 0x25, 0x12, 0x09, 0xc4, 0x30, 0x08, 0x05, 0xc2
- .byte 0x1a, 0x12, 0x0a, 0x26, 0x12, 0x0d, 0x92, 0xd2
- .byte 0x00, 0x12, 0x0d, 0x3b, 0x12, 0x07, 0xc2, 0x12
- .byte 0x0d, 0xda, 0xc2, 0x01, 0x12, 0x03, 0x6c, 0x12
- .byte 0x07, 0x2e, 0x30, 0x12, 0xc4, 0x30, 0x00, 0xc1
- .byte 0x90, 0xd0, 0x00, 0xe0, 0x30, 0xe0, 0xba, 0xc2
- .byte 0xaf, 0x12, 0x0e, 0x07, 0x50, 0x0e, 0x12, 0x0e
- .byte 0xb6, 0x12, 0x0e, 0xbc, 0xd2, 0x1a, 0x12, 0x0a
- .byte 0x26, 0x12, 0x0d, 0x3b, 0xd2, 0xaf, 0x80, 0xa1
- .byte 0xae, 0x03, 0xab, 0x05, 0x53, 0x1a, 0xef, 0x90
- .byte 0xd0, 0x00, 0xe5, 0x1a, 0xf0, 0xad, 0x07, 0x8e
- .byte 0x33, 0x7f, 0x20, 0x12, 0x0d, 0x51, 0x43, 0x1a
- .byte 0x10, 0x90, 0xd0, 0x00, 0xe5, 0x1a, 0xf0, 0x22
- .byte 0xda, 0x7e, 0x10, 0x09, 0x14, 0x12, 0x0d, 0xa6
- .byte 0x90, 0xe0, 0x00, 0xe0, 0xff, 0x20, 0xe1, 0x03
- .byte 0x02, 0x02, 0xc8, 0xc2, 0xa8, 0xc2, 0xaa, 0x20
- .byte 0x04, 0x03, 0x30, 0x07, 0x05, 0xd2, 0xa8, 0xd2
- .byte 0xaa, 0x22, 0xef, 0xa2, 0xe3, 0x92, 0x1c, 0x90
- .byte 0xf0, 0x00, 0xe0, 0xf5, 0x2c, 0x12, 0x0e, 0x2f
- .byte 0xd2, 0xa8, 0xd2, 0xaa, 0x30, 0x1c, 0x03, 0x02
- .byte 0x01, 0xee, 0xc2, 0x1d, 0xc2, 0x1e, 0x20, 0x17
- .byte 0x03, 0x02, 0x01, 0xd4, 0xe5, 0x18, 0x24, 0xe1
- .byte 0x60, 0x3b, 0x24, 0x54, 0x70, 0x03, 0x02, 0x01
- .byte 0xd0, 0x24, 0xfa, 0x60, 0x14, 0x14, 0x60, 0x1e
- .byte 0x14, 0x60, 0x1f, 0x14, 0x60, 0x23, 0x24, 0x74
- .byte 0x70, 0x6c, 0xaf, 0x2c, 0x12, 0x05, 0xfb, 0x80
- .byte 0x67, 0xe5, 0x2c, 0x30, 0xe1, 0x04, 0xd2, 0x90
- .byte 0x80, 0x5e, 0xc2, 0x90, 0x80, 0x5a, 0xc2, 0x1f
- .byte 0x80, 0x02, 0xd2, 0x1f, 0x85, 0x2c, 0x2f, 0x80
- .byte 0x46, 0xd2, 0x1e, 0x80, 0x4b, 0xe5, 0x2c, 0x70
- .byte 0x1a, 0x12, 0x0c, 0xed, 0x12, 0x08, 0xf2, 0x85
- .byte 0x38, 0x12, 0x85, 0x39, 0x13, 0x85, 0x3a, 0x14
- .byte 0x85, 0x09, 0x15, 0x85, 0x0a, 0x16, 0x85, 0x0b
- .byte 0x17, 0x80, 0x2d, 0xe5, 0x2c, 0xc3, 0x94, 0x01
- .byte 0x40, 0x13, 0xe5, 0x2c, 0xd3, 0x94, 0x06, 0x50
- .byte 0x0c, 0xc2, 0x1f, 0x74, 0x11, 0x25, 0x2c, 0xf8
- .byte 0xe6, 0xf5, 0x2f, 0x80, 0x0a, 0xe5, 0x2c, 0xb4
- .byte 0x07, 0x0e, 0xc2, 0x1f, 0x85, 0x3b, 0x2f, 0xd2
- .byte 0x20, 0x12, 0x0d, 0xb8, 0x80, 0x02, 0xd2, 0x1d
- .byte 0xc2, 0x17, 0x80, 0x02, 0xd2, 0x1d, 0x30, 0x1d
- .byte 0x07, 0xaf, 0x2c, 0x12, 0x05, 0x2f, 0x80, 0x08
- .byte 0x30, 0x1e, 0x05, 0xaf, 0x2c, 0x12, 0x05, 0x97
- .byte 0x12, 0x0e, 0x85, 0x02, 0x02, 0xc2, 0xc2, 0x1d
- .byte 0xe5, 0x2c, 0x12, 0x0b, 0x21, 0x02, 0xb7, 0x1f
- .byte 0x02, 0x35, 0x20, 0x02, 0xb7, 0x60, 0x02, 0x56
- .byte 0xa7, 0x02, 0x5d, 0xa8, 0x02, 0x64, 0xa9, 0x02
- .byte 0x48, 0xaa, 0x02, 0x64, 0xab, 0x02, 0x6d, 0xad
- .byte 0x02, 0x74, 0xae, 0x02, 0x41, 0xc0, 0x02, 0xb7
- .byte 0xcb, 0x02, 0x7b, 0xd0, 0x02, 0xb7, 0xd1, 0x02
- .byte 0xb7, 0xd2, 0x02, 0xb7, 0xd3, 0x02, 0xb7, 0xd4
- .byte 0x02, 0x98, 0xdd, 0x02, 0x8d, 0xdf, 0x02, 0xa8
- .byte 0xfe, 0x00, 0x00, 0x02, 0xb5, 0x12, 0x0a, 0x83
- .byte 0x8f, 0x2d, 0xc2, 0x1f, 0x85, 0x2d, 0x2f, 0x80
- .byte 0x28, 0xc2, 0x1f, 0x75, 0x2f, 0xff, 0x80, 0x21
- .byte 0x7f, 0x30, 0x12, 0x05, 0xfb, 0xc2, 0x1f, 0x75
- .byte 0x2f, 0x55, 0xc2, 0x20, 0x80, 0x4b, 0x12, 0x0e
- .byte 0x8d, 0xd2, 0x1d, 0x80, 0x5a, 0x12, 0x0e, 0xe6
- .byte 0xd2, 0x1d, 0x80, 0x53, 0xc2, 0x1f, 0xe4, 0xf5
- .byte 0x2f, 0xd2, 0x20, 0x80, 0x34, 0x12, 0x0e, 0x94
- .byte 0xd2, 0x1d, 0x80, 0x43, 0x12, 0x0e, 0xf0, 0xd2
- .byte 0x1d, 0x80, 0x3c, 0x75, 0x2e, 0x01, 0x30, 0x90
- .byte 0x03, 0x43, 0x2e, 0x02, 0xc2, 0x1f, 0x85, 0x2e
- .byte 0x2f, 0xd2, 0x20, 0x80, 0x14, 0xd2, 0x90, 0xc2
- .byte 0x1f, 0x85, 0x0f, 0x2f, 0xd2, 0x20, 0x80, 0x09
- .byte 0xc2, 0x90, 0xc2, 0x1f, 0x85, 0x0f, 0x2f, 0xd2
- .byte 0x20, 0x12, 0x0d, 0xb8, 0xd2, 0x1d, 0x80, 0x0f
- .byte 0xc2, 0x91, 0x7f, 0x05, 0x12, 0x00, 0x06, 0xd2
- .byte 0x91, 0xd2, 0x1d, 0x80, 0x02, 0xd2, 0x1d, 0x30
- .byte 0x1d, 0x03, 0x12, 0x0e, 0x85, 0xd2, 0x17, 0x85
- .byte 0x2c, 0x18, 0x20, 0x01, 0x03, 0x12, 0x0d, 0xda
- .byte 0x22, 0x44, 0x4d, 0x26, 0x50, 0x00, 0xff, 0x43
- .byte 0x41, 0x3f, 0x3d, 0x3b, 0x3c, 0x58, 0x64, 0x44
- .byte 0x42, 0x40, 0x3e, 0x0f, 0x29, 0x59, 0x65, 0x38
- .byte 0x2a, 0x70, 0x1d, 0x10, 0x02, 0x5a, 0x66, 0x71
- .byte 0x2c, 0x1f, 0x1e, 0x11, 0x03, 0x5b, 0x67, 0x2e
- .byte 0x2d, 0x20, 0x12, 0x05, 0x04, 0x5c, 0x68, 0x39
- .byte 0x2f, 0x21, 0x14, 0x13, 0x06, 0x5d, 0x69, 0x31
- .byte 0x30, 0x23, 0x22, 0x15, 0x07, 0x5e, 0x6a, 0x72
- .byte 0x32, 0x24, 0x16, 0x08, 0x09, 0x5f, 0x6b, 0x33
- .byte 0x25, 0x17, 0x18, 0x0b, 0x0a, 0x60, 0x6c, 0x34
- .byte 0x35, 0x26, 0x27, 0x19, 0x0c, 0x61, 0x6d, 0x73
- .byte 0x28, 0x74, 0x1a, 0x0d, 0x62, 0x6e, 0x3a, 0x36
- .byte 0x1c, 0x1b, 0x75, 0x2b, 0x63, 0x76, 0x55, 0x56
- .byte 0x77, 0x78, 0x79, 0x7a, 0x0e, 0x7b, 0x7c, 0x4f
- .byte 0x7d, 0x4b, 0x47, 0x7e, 0x7f, 0x6f, 0x52, 0x53
- .byte 0x50, 0x4c, 0x4d, 0x48, 0x01, 0x45, 0x57, 0x4e
- .byte 0x51, 0x4a, 0x37, 0x49, 0x46, 0x54, 0x00, 0x00
- .byte 0x00, 0x41, 0x54, 0x00, 0x01, 0x01, 0x02, 0x01
- .byte 0x02, 0x02, 0x03, 0x01, 0x02, 0x02, 0x03, 0x02
- .byte 0x03, 0x03, 0x04, 0x14, 0x23, 0x14, 0x3a, 0x14
- .byte 0x4d, 0x42, 0x32, 0x23, 0x20, 0x0c, 0x03, 0x02
- .byte 0x04, 0x08, 0xc2, 0x1a, 0xc2, 0x1b, 0xe5, 0x10
- .byte 0x30, 0xe7, 0x57, 0xe5, 0x11, 0xae, 0x10, 0x78
- .byte 0x06, 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9
- .byte 0xf5, 0x26, 0xff, 0x12, 0x0d, 0xca, 0x8f, 0x27
- .byte 0xe5, 0x10, 0xc4, 0x13, 0x13, 0x54, 0x03, 0xff
- .byte 0xe5, 0x27, 0x54, 0x01, 0xb5, 0x07, 0x05, 0xe4
- .byte 0x7f, 0x01, 0x80, 0x02, 0x7f, 0x00, 0xef, 0x30
- .byte 0xe0, 0x04, 0xd2, 0x1b, 0x80, 0x24, 0x20, 0x13
- .byte 0x1f, 0xaf, 0x26, 0x12, 0x07, 0x79, 0xaf, 0x26
- .byte 0x12, 0x09, 0xf6, 0x8e, 0x28, 0x8f, 0x29, 0xe5
- .byte 0x29, 0xf4, 0x70, 0x03, 0xe5, 0x28, 0xf4, 0x60
- .byte 0x09, 0x85, 0x29, 0x26, 0xd2, 0x1a, 0x80, 0x02
- .byte 0xd2, 0x1a, 0x30, 0x1a, 0x1b, 0xc2, 0x27, 0x7f
- .byte 0x07, 0x12, 0x0b, 0x6c, 0xc2, 0x27, 0x7f, 0x06
- .byte 0x12, 0x0b, 0x6c, 0xa2, 0x13, 0x92, 0x25, 0x85
- .byte 0x26, 0x31, 0x12, 0x08, 0xbb, 0xc2, 0x0c, 0x22
- .byte 0x30, 0x1b, 0x10, 0xa2, 0x13, 0x92, 0x21, 0x75
- .byte 0x30, 0xff, 0xd2, 0x22, 0xc2, 0x23, 0xd2, 0x24
- .byte 0x02, 0x06, 0xee, 0xc2, 0x0c, 0x12, 0x0e, 0x7d
- .byte 0x22, 0xe4, 0xf5, 0x26, 0xf5, 0x27, 0x75, 0x28
- .byte 0x0f, 0x75, 0x29, 0xff, 0xe5, 0x27, 0x25, 0x29
- .byte 0xff, 0xe5, 0x26, 0x35, 0x28, 0xc3, 0x13, 0xf5
- .byte 0x2a, 0xef, 0x13, 0xf5, 0x2b, 0xff, 0xae, 0x2a
- .byte 0x12, 0x0e, 0x15, 0xbf, 0xff, 0x0e, 0xe5, 0x2b
- .byte 0x24, 0xff, 0xf5, 0x29, 0xe5, 0x2a, 0x34, 0xff
- .byte 0xf5, 0x28, 0x80, 0x47, 0xef, 0x70, 0x0d, 0xe5
- .byte 0x2b, 0x24, 0x01, 0xf5, 0x27, 0xe4, 0x35, 0x2a
- .byte 0xf5, 0x26, 0x80, 0x37, 0x75, 0x2c, 0xff, 0xe4
- .byte 0xf5, 0x2d, 0xe5, 0x2c, 0xc3, 0x13, 0xf5, 0x2c
- .byte 0xb5, 0x07, 0x1c, 0xe5, 0x2b, 0xae, 0x2a, 0x78
- .byte 0x03, 0xc3, 0x33, 0xce, 0x33, 0xce, 0xd8, 0xf9
- .byte 0x7c, 0x00, 0x25, 0x2d, 0xff, 0xec, 0x3e, 0xcf
- .byte 0x24, 0x01, 0xcf, 0x34, 0x00, 0xfe, 0x22, 0x05
- .byte 0x2d, 0xe5, 0x2d, 0xb4, 0x07, 0xd4, 0x7e, 0xff
- .byte 0x7f, 0xff, 0x22, 0xd3, 0xe5, 0x27, 0x95, 0x29
- .byte 0xe5, 0x28, 0x64, 0x80, 0xf8, 0xe5, 0x26, 0x64
- .byte 0x80, 0x98, 0x40, 0x80, 0xe5, 0x27, 0xae, 0x26
- .byte 0x78, 0x03, 0xc3, 0x33, 0xce, 0x33, 0xce, 0xd8
- .byte 0xf9, 0xff, 0x22, 0x78, 0x7f, 0xe4, 0xf6, 0xd8
- .byte 0xfd, 0x75, 0x81, 0x3b, 0x02, 0x04, 0xea, 0x02
- .byte 0x00, 0x16, 0xe4, 0x93, 0xa3, 0xf8, 0xe4, 0x93
- .byte 0xa3, 0x40, 0x03, 0xf6, 0x80, 0x01, 0xf2, 0x08
- .byte 0xdf, 0xf4, 0x80, 0x29, 0xe4, 0x93, 0xa3, 0xf8
- .byte 0x54, 0x07, 0x24, 0x0c, 0xc8, 0xc3, 0x33, 0xc4
- .byte 0x54, 0x0f, 0x44, 0x20, 0xc8, 0x83, 0x40, 0x04
- .byte 0xf4, 0x56, 0x80, 0x01, 0x46, 0xf6, 0xdf, 0xe4
- .byte 0x80, 0x0b, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20
- .byte 0x40, 0x80, 0x90, 0x08, 0x80, 0xe4, 0x7e, 0x01
- .byte 0x93, 0x60, 0xbc, 0xa3, 0xff, 0x54, 0x3f, 0x30
- .byte 0xe5, 0x09, 0x54, 0x1f, 0xfe, 0xe4, 0x93, 0xa3
- .byte 0x60, 0x01, 0x0e, 0xcf, 0x54, 0xc0, 0x25, 0xe0
- .byte 0x60, 0xa8, 0x40, 0xb8, 0xe4, 0x93, 0xa3, 0xfa
- .byte 0xe4, 0x93, 0xa3, 0xf8, 0xe4, 0x93, 0xa3, 0xc8
- .byte 0xc5, 0x82, 0xc8, 0xca, 0xc5, 0x83, 0xca, 0xf0
- .byte 0xa3, 0xc8, 0xc5, 0x82, 0xc8, 0xca, 0xc5, 0x83
- .byte 0xca, 0xdf, 0xe9, 0xde, 0xe7, 0x80, 0xbe, 0xd2
- .byte 0x0d, 0xc2, 0x96, 0xd2, 0x0e, 0xd2, 0x10, 0xc2
- .byte 0x94, 0x8f, 0x08, 0x12, 0x0d, 0xca, 0xef, 0x13
- .byte 0xb3, 0x92, 0x14, 0xd2, 0x16, 0xe4, 0xf5, 0x0c
- .byte 0x7f, 0x28, 0x12, 0x00, 0x06, 0xc2, 0x97, 0xd2
- .byte 0x03, 0xc2, 0x0a, 0x7f, 0xe8, 0x7e, 0xfd, 0x12
- .byte 0x0c, 0x79, 0xc2, 0x0d, 0xd2, 0x96, 0x30, 0x16
- .byte 0x16, 0x12, 0x0e, 0x62, 0x50, 0xf8, 0xc2, 0xaf
- .byte 0xd2, 0x97, 0xc2, 0x21, 0x12, 0x06, 0xe5, 0xc2
- .byte 0x16, 0xe4, 0xf5, 0x0c, 0xd2, 0xaf, 0x22, 0x7f
- .byte 0xe8, 0x7e, 0xfd, 0x12, 0x0c, 0x79, 0x20, 0x04
- .byte 0x12, 0x20, 0x0a, 0x0f, 0x12, 0x0e, 0x62, 0x50
- .byte 0xf5, 0xc2, 0xaf, 0xc2, 0x21, 0x12, 0x06, 0xe5
- .byte 0xd2, 0xaf, 0x22, 0x12, 0x07, 0x2e, 0x22, 0xd2
- .byte 0x10, 0xc2, 0x94, 0xd2, 0x0a, 0xd2, 0x0d, 0xc2
- .byte 0x96, 0x8f, 0x08, 0x12, 0x0d, 0xca, 0xef, 0x13
- .byte 0xb3, 0x92, 0x14, 0xd2, 0x16, 0xe4, 0xf5, 0x0e
- .byte 0x7f, 0x28, 0x12, 0x00, 0x06, 0xc2, 0x95, 0xd2
- .byte 0x05, 0xc2, 0x0e, 0x7f, 0xe8, 0x7e, 0xfd, 0x12
- .byte 0x0c, 0x79, 0xc2, 0x10, 0xd2, 0x94, 0x30, 0x16
- .byte 0x14, 0x12, 0x0e, 0x62, 0x50, 0xf8, 0xc2, 0xaf
- .byte 0xd2, 0x95, 0x12, 0x06, 0xe3, 0xc2, 0x16, 0xe4
- .byte 0xf5, 0x0e, 0xd2, 0xaf, 0x22, 0x7f, 0xe8, 0x7e
- .byte 0xfd, 0x12, 0x0c, 0x79, 0x20, 0x07, 0x10, 0x20
- .byte 0x0e, 0x0d, 0x12, 0x0e, 0x62, 0x50, 0xf5, 0xc2
- .byte 0xaf, 0x12, 0x06, 0xe3, 0xd2, 0xaf, 0x22, 0x12
- .byte 0x07, 0x2e, 0x22, 0xad, 0x07, 0xed, 0x30, 0xe6
- .byte 0x04, 0xd2, 0x0f, 0x80, 0x02, 0xc2, 0x0f, 0xed
- .byte 0x30, 0xe5, 0x05, 0x12, 0x0e, 0x8d, 0x80, 0x03
- .byte 0x12, 0x0e, 0xe6, 0xed, 0x30, 0xe4, 0x05, 0x12
- .byte 0x0e, 0x94, 0x80, 0x03, 0x12, 0x0e, 0xf0, 0xed
- .byte 0x30, 0xe2, 0x04, 0xd2, 0x27, 0x80, 0x02, 0xc2
- .byte 0x27, 0x7f, 0x02, 0x12, 0x0b, 0x6c, 0xed, 0x30
- .byte 0xe1, 0x05, 0x12, 0x0f, 0x14, 0x80, 0x03, 0x12
- .byte 0x0f, 0x11, 0xed, 0x30, 0xe0, 0x0b, 0x12, 0x0f
- .byte 0x1a, 0x20, 0x11, 0x08, 0xd2, 0x11, 0xd2, 0x01
- .byte 0x22, 0x12, 0x0f, 0x17, 0x22, 0x7f, 0x02, 0x12
- .byte 0x00, 0x06, 0x20, 0x94, 0x42, 0xa2, 0x95, 0x92
- .byte 0x18, 0x05, 0x0e, 0xe5, 0x0e, 0xb4, 0x01, 0x12
- .byte 0x20, 0x18, 0x0a, 0xd2, 0x07, 0xd2, 0x0a, 0xd2
- .byte 0x0d, 0xc2, 0x96, 0x80, 0x19, 0xe4, 0xf5, 0x0e
- .byte 0x80, 0x14, 0xe5, 0x0e, 0xb4, 0x0b, 0x0f, 0xd2
- .byte 0x0e, 0xd2, 0x10, 0xc2, 0x94, 0xd2, 0x13, 0xd2
- .byte 0x0c, 0xe4, 0xf5, 0x0e, 0xc2, 0x07, 0xe5, 0x10
- .byte 0xc3, 0x13, 0xf5, 0x10, 0xe5, 0x11, 0x13, 0xf5
- .byte 0x11, 0x30, 0x18, 0x03, 0x43, 0x10, 0x80, 0x22
- .byte 0x7f, 0x02, 0x12, 0x00, 0x06, 0x20, 0x96, 0x42
- .byte 0xa2, 0x97, 0x92, 0x19, 0x05, 0x0c, 0xe5, 0x0c
- .byte 0xb4, 0x01, 0x12, 0x20, 0x19, 0x0a, 0xd2, 0x04
- .byte 0xd2, 0x0e, 0xd2, 0x10, 0xc2, 0x94, 0x80, 0x19
- .byte 0xe4, 0xf5, 0x0c, 0x80, 0x14, 0xe5, 0x0c, 0xb4
- .byte 0x0b, 0x0f, 0xd2, 0x0a, 0xd2, 0x0d, 0xc2, 0x96
- .byte 0xc2, 0x13, 0xd2, 0x0c, 0xe4, 0xf5, 0x0c, 0xc2
- .byte 0x04, 0xe5, 0x10, 0xc3, 0x13, 0xf5, 0x10, 0xe5
- .byte 0x11, 0x13, 0xf5, 0x11, 0x30, 0x19, 0x03, 0x43
- .byte 0x10, 0x80, 0x22, 0xd2, 0x21, 0x75, 0x30, 0xfe
- .byte 0xd2, 0x22, 0xd2, 0x23, 0xc2, 0x24, 0xd2, 0x0a
- .byte 0xd2, 0x0d, 0xc2, 0x96, 0xd2, 0x0e, 0xd2, 0x10
- .byte 0xc2, 0x94, 0xa2, 0x23, 0x92, 0x27, 0x7f, 0x06
- .byte 0x12, 0x0b, 0x6c, 0xa2, 0x24, 0x92, 0x27, 0x7f
- .byte 0x07, 0x12, 0x0b, 0x6c, 0x30, 0x22, 0x0c, 0xa2
- .byte 0x21, 0x92, 0x25, 0x85, 0x30, 0x31, 0x12, 0x08
- .byte 0xbb, 0x80, 0x10, 0xa2, 0x21, 0x92, 0x26, 0x85
- .byte 0x30, 0x32, 0x12, 0x0b, 0xf9, 0xc2, 0x92, 0xc2
- .byte 0x93, 0xd2, 0x09, 0xc2, 0x0c, 0x22, 0x20, 0x04
- .byte 0x03, 0x30, 0x07, 0x44, 0x7f, 0xe8, 0x7e, 0xfd
- .byte 0x12, 0x0c, 0x79, 0x20, 0x04, 0x03, 0x30, 0x07
- .byte 0x37, 0x12, 0x0e, 0x62, 0x50, 0xf5, 0xc2, 0xaf
- .byte 0x20, 0x04, 0x03, 0x30, 0x07, 0x26, 0x30, 0x04
- .byte 0x04, 0xc2, 0x1f, 0x80, 0x02, 0xd2, 0x1f, 0xe4
- .byte 0xf5, 0x0c, 0xc2, 0x04, 0xf5, 0x0e, 0xc2, 0x07
- .byte 0x12, 0x0e, 0xeb, 0x12, 0x0e, 0x80, 0xd2, 0xaf
- .byte 0xa2, 0x1f, 0x92, 0x21, 0x75, 0x30, 0xff, 0x12
- .byte 0x06, 0xe8, 0x80, 0xc7, 0xd2, 0xaf, 0x80, 0xc3
- .byte 0x22, 0xe5, 0x19, 0x60, 0x03, 0xb4, 0x02, 0x09
- .byte 0xe5, 0x0d, 0x90, 0x03, 0x63, 0x93, 0x6f, 0x60
- .byte 0x0b, 0xe5, 0x19, 0x64, 0x01, 0x70, 0x2d, 0xef
- .byte 0x64, 0xf0, 0x70, 0x28, 0x05, 0x19, 0xe5, 0x19
- .byte 0xd3, 0x94, 0x02, 0x40, 0x24, 0xe4, 0xf5, 0x19
- .byte 0x05, 0x0d, 0xe5, 0x0d, 0x94, 0x09, 0x40, 0x19
- .byte 0x75, 0x2a, 0x05, 0xe4, 0xff, 0x12, 0x0c, 0x3b
- .byte 0x7f, 0x07, 0x12, 0x0c, 0x3b, 0xd5, 0x2a, 0xf3
- .byte 0xe4, 0xf5, 0x0d, 0x22, 0xe4, 0xf5, 0x0d, 0xf5
- .byte 0x19, 0x22, 0xe5, 0x3b, 0x64, 0x15, 0x70, 0x41
- .byte 0x12, 0x0c, 0xed, 0xe5, 0x3a, 0x30, 0xe0, 0x05
- .byte 0x75, 0x26, 0x80, 0x80, 0x03, 0xe4, 0xf5, 0x26
- .byte 0xe5, 0x3a, 0xc3, 0x13, 0xf5, 0x3a, 0xe5, 0x39
- .byte 0x30, 0xe0, 0x03, 0x43, 0x3a, 0x80, 0xe5, 0x39
- .byte 0xc3, 0x13, 0xf5, 0x39, 0xe5, 0x38, 0x30, 0xe0
- .byte 0x03, 0x43, 0x39, 0x80, 0xc2, 0xb6, 0x90, 0xd0
- .byte 0x01, 0xe4, 0xf0, 0xa3, 0xe5, 0x26, 0xf0, 0xa3
- .byte 0xe5, 0x3a, 0xf0, 0xa3, 0xe5, 0x39, 0xf0, 0xd2
- .byte 0xb6, 0x22, 0x20, 0x94, 0x37, 0x05, 0x0e, 0xe5
- .byte 0x0e, 0xd3, 0x94, 0x08, 0x50, 0x12, 0xe5, 0x08
- .byte 0x30, 0xe0, 0x04, 0xd2, 0x95, 0x80, 0x02, 0xc2
- .byte 0x95, 0xe5, 0x08, 0xc3, 0x13, 0xf5, 0x08, 0x22
- .byte 0xe5, 0x0e, 0xb4, 0x09, 0x05, 0xa2, 0x14, 0x92
- .byte 0x95, 0x22, 0xe5, 0x0e, 0xb4, 0x0a, 0x03, 0xd2
- .byte 0x95, 0x22, 0xe5, 0x0e, 0xb4, 0x0b, 0x05, 0xc2
- .byte 0x16, 0xe4, 0xf5, 0x0e, 0x22, 0x20, 0x96, 0x37
- .byte 0x05, 0x0c, 0xe5, 0x0c, 0xd3, 0x94, 0x08, 0x50
- .byte 0x12, 0xe5, 0x08, 0x30, 0xe0, 0x04, 0xd2, 0x97
- .byte 0x80, 0x02, 0xc2, 0x97, 0xe5, 0x08, 0xc3, 0x13
- .byte 0xf5, 0x08, 0x22, 0xe5, 0x0c, 0xb4, 0x09, 0x05
- .byte 0xa2, 0x14, 0x92, 0x97, 0x22, 0xe5, 0x0c, 0xb4
- .byte 0x0a, 0x03, 0xd2, 0x97, 0x22, 0xe5, 0x0c, 0xb4
- .byte 0x0b, 0x05, 0xc2, 0x16, 0xe4, 0xf5, 0x0c, 0x22
- .byte 0x01, 0x0c, 0x00, 0xc1, 0x04, 0xc1, 0x0a, 0xc1
- .byte 0x83, 0xc1, 0x0c, 0xc1, 0x09, 0xc1, 0x02, 0xc1
- .byte 0x16, 0xc1, 0x08, 0x01, 0x0e, 0x00, 0xc1, 0x07
- .byte 0xc1, 0x0e, 0xc1, 0x85, 0xc1, 0x8b, 0xc1, 0x86
- .byte 0xc1, 0x8f, 0xc1, 0x12, 0xc1, 0x00, 0xc1, 0x11
- .byte 0xc1, 0x01, 0xc1, 0x17, 0x01, 0x0d, 0x00, 0x01
- .byte 0x19, 0x00, 0x01, 0x1a, 0x00, 0x01, 0x34, 0x03
- .byte 0xc1, 0x29, 0x00, 0xa2, 0x25, 0x92, 0x26, 0x85
- .byte 0x31, 0x32, 0x12, 0x0b, 0xf9, 0xc2, 0x92, 0xc2
- .byte 0x93, 0x20, 0x25, 0x03, 0x20, 0x06, 0x06, 0x30
- .byte 0x25, 0x1d, 0x30, 0x0b, 0x1a, 0x7f, 0x69, 0x7e
- .byte 0x00, 0x12, 0x0c, 0x79, 0x12, 0x0e, 0x62, 0x50
- .byte 0xfb, 0x12, 0x0e, 0xb0, 0x50, 0x09, 0x20, 0x25
- .byte 0x04, 0xd2, 0x92, 0x80, 0x02, 0xd2, 0x93, 0xd2
- .byte 0x09, 0x22, 0x90, 0x0f, 0xfc, 0xe4, 0x93, 0xfe
- .byte 0x74, 0x01, 0x93, 0xff, 0xc3, 0x95, 0x3a, 0xf5
- .byte 0x0b, 0xee, 0x95, 0x39, 0xf5, 0x0a, 0x90, 0x0f
- .byte 0xfb, 0xe4, 0x93, 0xc3, 0x95, 0x38, 0xf5, 0x09
- .byte 0xc3, 0xef, 0x95, 0x3a, 0xee, 0x95, 0x39, 0x50
- .byte 0x02, 0x15, 0x09, 0xe5, 0x09, 0x30, 0xe7, 0x07
- .byte 0xe4, 0xf5, 0x09, 0xf5, 0x0a, 0xf5, 0x0b, 0x22
- .byte 0x05, 0x35, 0xaf, 0x35, 0xae, 0x07, 0xee, 0x14
- .byte 0x13, 0x13, 0x13, 0x54, 0x1f, 0xfd, 0xee, 0x54
- .byte 0x07, 0xff, 0x70, 0x06, 0xf5, 0x26, 0xf5, 0x27
- .byte 0x80, 0x15, 0x74, 0xff, 0x7e, 0x00, 0xa8, 0x07
- .byte 0x08, 0x80, 0x06, 0xce, 0xa2, 0xe7, 0x13, 0xce
- .byte 0x13, 0xd8, 0xf8, 0xf5, 0x27, 0x8e, 0x26, 0xaf
- .byte 0x05, 0xad, 0x27, 0x02, 0x0c, 0x5a, 0xe4, 0xff
- .byte 0x7e, 0x01, 0xef, 0xc3, 0x94, 0x08, 0x50, 0x27
- .byte 0xef, 0x60, 0x1d, 0x64, 0x01, 0x60, 0x19, 0xef
- .byte 0x64, 0x03, 0x60, 0x14, 0xee, 0x44, 0x02, 0x54
- .byte 0xfe, 0x90, 0xe0, 0x00, 0xf0, 0x54, 0xf4, 0xfd
- .byte 0xee, 0x54, 0xf4, 0x6d, 0x60, 0x02, 0xd3, 0x22
- .byte 0x0f, 0xee, 0x25, 0xe0, 0xfe, 0x80, 0xd3, 0xc3
- .byte 0x22, 0xad, 0x07, 0xac, 0x06, 0xed, 0x24, 0xff
- .byte 0xff, 0xec, 0x34, 0xff, 0xfe, 0xef, 0x78, 0x03
- .byte 0xce, 0xc3, 0x13, 0xce, 0x13, 0xd8, 0xf9, 0xff
- .byte 0xed, 0x54, 0x07, 0xfd, 0x70, 0x04, 0xf5, 0x26
- .byte 0x80, 0x0d, 0x74, 0xff, 0xa8, 0x05, 0x08, 0x80
- .byte 0x02, 0xc3, 0x13, 0xd8, 0xfc, 0xf5, 0x26, 0xad
- .byte 0x26, 0x02, 0x0a, 0xad, 0xc2, 0x28, 0x20, 0x29
- .byte 0x0f, 0x12, 0x0f, 0x0d, 0x8f, 0x3b, 0xe5, 0x3b
- .byte 0xb4, 0x15, 0x03, 0x75, 0x34, 0x1f, 0xd2, 0x29
- .byte 0x12, 0x0a, 0x56, 0x8f, 0x35, 0xe5, 0x35, 0x30
- .byte 0xe0, 0x0c, 0x12, 0x0d, 0x7d, 0x12, 0x09, 0x28
- .byte 0xe4, 0xf5, 0x36, 0xf5, 0x37, 0x22, 0x12, 0x04
- .byte 0x09, 0x8e, 0x36, 0x8f, 0x37, 0x22, 0x20, 0x0f
- .byte 0x03, 0x7e, 0x00, 0x22, 0xbf, 0xf0, 0x07, 0xd2
- .byte 0x15, 0x7e, 0xff, 0x7f, 0xff, 0x22, 0xef, 0xc3
- .byte 0x94, 0x85, 0x40, 0x03, 0x7e, 0x00, 0x22, 0xef
- .byte 0x90, 0x02, 0xce, 0x93, 0xfe, 0x70, 0x02, 0xfe
- .byte 0x22, 0x30, 0x15, 0x03, 0x43, 0x06, 0x80, 0xc2
- .byte 0x15, 0xaf, 0x06, 0x7e, 0x00, 0x22, 0xa2, 0x1a
- .byte 0x92, 0x28, 0x05, 0x37, 0xe5, 0x37, 0x70, 0x02
- .byte 0x05, 0x36, 0xc3, 0xe5, 0x36, 0x94, 0x80, 0x50
- .byte 0x07, 0xaf, 0x37, 0xae, 0x36, 0x02, 0x09, 0x91
- .byte 0xe5, 0x35, 0xc3, 0x94, 0x10, 0x50, 0x0e, 0x12
- .byte 0x09, 0x28, 0x12, 0x0d, 0x7d, 0x12, 0x09, 0x28
- .byte 0xe4, 0xf5, 0x36, 0xf5, 0x37, 0x22, 0xe4, 0xff
- .byte 0x12, 0x0e, 0x23, 0x7e, 0xff, 0xe4, 0xf5, 0x26
- .byte 0xe5, 0x26, 0xb4, 0x08, 0x07, 0x7f, 0x01, 0x12
- .byte 0x0e, 0x23, 0x7e, 0xff, 0xee, 0xb5, 0x07, 0x03
- .byte 0xaf, 0x26, 0x22, 0xee, 0xc3, 0x13, 0xfe, 0x05
- .byte 0x26, 0xe5, 0x26, 0xd3, 0x94, 0x10, 0x40, 0xe0
- .byte 0x7f, 0xff, 0x22, 0xe4, 0xff, 0x30, 0x0f, 0x02
- .byte 0x7f, 0x40, 0x20, 0x05, 0x03, 0x43, 0x07, 0x20
- .byte 0x20, 0x03, 0x03, 0x43, 0x07, 0x10, 0x90, 0xe0
- .byte 0x00, 0xe0, 0x30, 0xe2, 0x03, 0x43, 0x07, 0x04
- .byte 0x30, 0x0b, 0x03, 0x43, 0x07, 0x02, 0x30, 0x06
- .byte 0x03, 0x43, 0x07, 0x01, 0x22, 0x8e, 0x27, 0x8f
- .byte 0x28, 0x8d, 0x29, 0x12, 0x0e, 0x74, 0xe5, 0x27
- .byte 0x24, 0xd0, 0xf5, 0x2a, 0xe5, 0x28, 0xf5, 0x2b
- .byte 0x12, 0x0e, 0xa2, 0x85, 0x29, 0x2f, 0xab, 0x2b
- .byte 0xad, 0x2a, 0xaf, 0x34, 0x12, 0x0b, 0x47, 0x12
- .byte 0x0e, 0xa9, 0x02, 0x0d, 0xea, 0xc0, 0xe0, 0xc0
- .byte 0xf0, 0xc0, 0xd0, 0x75, 0xd0, 0x00, 0xc0, 0x06
- .byte 0xc0, 0x07, 0x20, 0x10, 0x0b, 0x30, 0x16, 0x05
- .byte 0x12, 0x08, 0x0a, 0x80, 0x03, 0x12, 0x06, 0x4d
- .byte 0xd0, 0x07, 0xd0, 0x06, 0xd0, 0xd0, 0xd0, 0xf0
- .byte 0xd0, 0xe0, 0x32, 0xc0, 0xe0, 0xc0, 0xf0, 0xc0
- .byte 0xd0, 0x75, 0xd0, 0x00, 0xc0, 0x06, 0xc0, 0x07
- .byte 0x20, 0x0d, 0x0b, 0x30, 0x16, 0x05, 0x12, 0x08
- .byte 0x45, 0x80, 0x03, 0x12, 0x06, 0x98, 0xd0, 0x07
- .byte 0xd0, 0x06, 0xd0, 0xd0, 0xd0, 0xf0, 0xd0, 0xe0
- .byte 0x32, 0xd0, 0x83, 0xd0, 0x82, 0xf8, 0xe4, 0x93
- .byte 0x70, 0x12, 0x74, 0x01, 0x93, 0x70, 0x0d, 0xa3
- .byte 0xa3, 0x93, 0xf8, 0x74, 0x01, 0x93, 0xf5, 0x82
- .byte 0x88, 0x83, 0xe4, 0x73, 0x74, 0x02, 0x93, 0x68
- .byte 0x60, 0xef, 0xa3, 0xa3, 0xa3, 0x80, 0xdf, 0xae
- .byte 0x03, 0xab, 0x05, 0x53, 0x1a, 0xef, 0x90, 0xd0
- .byte 0x00, 0xe5, 0x1a, 0xf0, 0xad, 0x07, 0x8e, 0x33
- .byte 0x7f, 0x02, 0x12, 0x0d, 0x51, 0xaf, 0x2f, 0x12
- .byte 0x0c, 0xd0, 0x43, 0x1a, 0x10, 0x90, 0xd0, 0x00
- .byte 0xe5, 0x1a, 0xf0, 0x22, 0x74, 0x01, 0xa8, 0x07
- .byte 0x08, 0x80, 0x02, 0xc3, 0x33, 0xd8, 0xfc, 0xff
- .byte 0x90, 0xe0, 0x00, 0xe0, 0x44, 0x02, 0xfe, 0xef
- .byte 0x30, 0x27, 0x04, 0x42, 0x06, 0x80, 0x03, 0xf4
- .byte 0x52, 0x06, 0x90, 0xe0, 0x00, 0xee, 0xf0, 0x22
- .byte 0x12, 0x0e, 0x07, 0x40, 0x05, 0x12, 0x01, 0x05
- .byte 0x80, 0xf6, 0x12, 0x0e, 0xc8, 0x12, 0x0e, 0xd4
- .byte 0xc2, 0x1f, 0x75, 0x2f, 0xee, 0xa2, 0x06, 0x92
- .byte 0x20, 0x12, 0x0d, 0xb8, 0x90, 0xd0, 0x00, 0xe0
- .byte 0x30, 0xe1, 0xf9, 0x22, 0xae, 0x03, 0xab, 0x05
- .byte 0x53, 0x1a, 0xef, 0x90, 0xd0, 0x00, 0xe5, 0x1a
- .byte 0xf0, 0xad, 0x07, 0x8e, 0x33, 0x7f, 0x03, 0x12
- .byte 0x0d, 0x51, 0x12, 0x0b, 0xd7, 0x43, 0x1a, 0x10
- .byte 0x90, 0xd0, 0x00, 0xe5, 0x1a, 0xf0, 0x22, 0xe5
- .byte 0x1a, 0x54, 0x9f, 0xfd, 0x44, 0x20, 0xfe, 0x7c
- .byte 0x08, 0xef, 0x25, 0xe0, 0xff, 0x90, 0xd0, 0x00
- .byte 0xed, 0xf0, 0xe0, 0x30, 0xe4, 0x03, 0x43, 0x07
- .byte 0x01, 0x90, 0xd0, 0x00, 0xee, 0xf0, 0xdc, 0xe9
- .byte 0x22, 0x90, 0xf0, 0x00, 0xe5, 0x32, 0xf0, 0xf5
- .byte 0x0f, 0xa2, 0x26, 0x92, 0x27, 0x7f, 0x05, 0x12
- .byte 0x0b, 0x6c, 0x90, 0xe0, 0x00, 0xe0, 0x44, 0x02
- .byte 0x54, 0xfe, 0xfe, 0xf0, 0x44, 0x01, 0xf0, 0xee
- .byte 0xf0, 0x22, 0x53, 0x1a, 0xef, 0x90, 0xd0, 0x00
- .byte 0xe5, 0x1a, 0xf0, 0x7f, 0x9f, 0x12, 0x0c, 0xd0
- .byte 0x12, 0x0b, 0xd7, 0x12, 0x0b, 0xd7, 0x12, 0x0b
- .byte 0xd7, 0x43, 0x1a, 0x10, 0x90, 0xd0, 0x00, 0xe5
- .byte 0x1a, 0xf0, 0x22, 0x8f, 0x2b, 0x7f, 0xed, 0x12
- .byte 0x05, 0x2f, 0xaf, 0x2b, 0x12, 0x05, 0x2f, 0x75
- .byte 0x2c, 0x0a, 0x7f, 0xe8, 0x7e, 0xfd, 0x12, 0x0c
- .byte 0x79, 0x12, 0x0e, 0x62, 0x50, 0xfb, 0xd5, 0x2c
- .byte 0xf1, 0x22, 0x8f, 0x28, 0x8d, 0x29, 0x12, 0x0e
- .byte 0x74, 0x12, 0x0e, 0xa2, 0xe5, 0x28, 0x24, 0xfe
- .byte 0xfb, 0x85, 0x29, 0x2f, 0x7d, 0xef, 0xaf, 0x34
- .byte 0x12, 0x0b, 0x47, 0x12, 0x0e, 0xa9, 0x02, 0x0d
- .byte 0xea, 0xad, 0x07, 0xac, 0x06, 0xc2, 0x8c, 0xed
- .byte 0xf4, 0xff, 0xec, 0xf4, 0xfe, 0xef, 0x24, 0x01
- .byte 0xfd, 0xe4, 0x3e, 0xf5, 0x8c, 0xaf, 0x05, 0x8f
- .byte 0x8a, 0xc2, 0x8d, 0xd2, 0x8c, 0x22, 0xad, 0x07
- .byte 0xac, 0x06, 0xc2, 0xca, 0xed, 0xf4, 0xff, 0xec
- .byte 0xf4, 0xfe, 0xef, 0x24, 0x01, 0xfd, 0xe4, 0x3e
- .byte 0xf5, 0xcd, 0xaf, 0x05, 0x8f, 0xcc, 0xc2, 0xcf
- .byte 0xd2, 0xca, 0x22, 0x53, 0x1a, 0xef, 0x90, 0xd0
- .byte 0x00, 0xe5, 0x1a, 0xf0, 0x7f, 0x05, 0x12, 0x0c
- .byte 0xd0, 0x12, 0x0b, 0xd7, 0x43, 0x1a, 0x10, 0x90
- .byte 0xd0, 0x00, 0xe5, 0x1a, 0xf0, 0xef, 0x13, 0x22
- .byte 0xe5, 0x1a, 0x54, 0x9f, 0xfe, 0x44, 0x40, 0xfd
- .byte 0x7c, 0x08, 0x90, 0xd0, 0x00, 0xef, 0x33, 0xff
- .byte 0x50, 0x03, 0xed, 0x80, 0x01, 0xee, 0xf0, 0x44
- .byte 0x20, 0xf0, 0xdc, 0xf1, 0x22, 0x12, 0x0f, 0x04
- .byte 0x8e, 0x39, 0x8f, 0x3a, 0x12, 0x0f, 0x1d, 0x8f
- .byte 0x38, 0xe5, 0x38, 0x30, 0xe1, 0x03, 0x43, 0x39
- .byte 0x80, 0xe5, 0x38, 0x13, 0x13, 0x54, 0x3f, 0xf5
- .byte 0x38, 0x22, 0x53, 0x1a, 0xef, 0x90, 0xd0, 0x00
- .byte 0xe5, 0x1a, 0xf0, 0x7f, 0x05, 0x12, 0x0c, 0xd0
- .byte 0x12, 0x0b, 0xd7, 0x43, 0x1a, 0x10, 0x90, 0xd0
- .byte 0x00, 0xe5, 0x1a, 0xf0, 0x22, 0x12, 0x0e, 0xc8
- .byte 0x12, 0x0e, 0xd4, 0x90, 0xd0, 0x00, 0xe0, 0x20
- .byte 0xe1, 0x08, 0x12, 0x03, 0x6c, 0x12, 0x01, 0x05
- .byte 0x80, 0xf1, 0x22, 0x12, 0x0c, 0xed, 0x12, 0x08
- .byte 0xf2, 0xe5, 0x09, 0x70, 0x0b, 0xe5, 0x0a, 0x70
- .byte 0x07, 0xe5, 0x0b, 0x70, 0x03, 0x12, 0x0e, 0xda
- .byte 0x22, 0x8d, 0x31, 0x8b, 0x32, 0x12, 0x0c, 0xd0
- .byte 0xaf, 0x31, 0x12, 0x0c, 0xd0, 0xaf, 0x32, 0x12
- .byte 0x0c, 0xd0, 0xaf, 0x33, 0x02, 0x0c, 0xd0, 0x53
- .byte 0x1a, 0xef, 0x90, 0xd0, 0x00, 0xe5, 0x1a, 0xf0
- .byte 0x12, 0x0c, 0xd0, 0x43, 0x1a, 0x10, 0x90, 0xd0
- .byte 0x00, 0xe5, 0x1a, 0xf0, 0x22, 0x12, 0x0e, 0x74
- .byte 0x12, 0x0e, 0xa2, 0xe4, 0xfb, 0x7d, 0xd0, 0xaf
- .byte 0x34, 0x12, 0x00, 0xe0, 0x12, 0x0e, 0xa9, 0x02
- .byte 0x0d, 0xea, 0x53, 0x1a, 0xfb, 0x90, 0xd0, 0x00
- .byte 0xe5, 0x1a, 0xf0, 0x53, 0x1a, 0xfd, 0xe5, 0x1a
- .byte 0xf0, 0x7f, 0x3c, 0x02, 0x00, 0x06, 0x30, 0x09
- .byte 0x0e, 0x12, 0x0e, 0xb0, 0x40, 0x09, 0xc2, 0x92
- .byte 0xc2, 0x93, 0xc2, 0x09, 0x12, 0x0e, 0x7d, 0x22
- .byte 0xa2, 0x1f, 0x92, 0x21, 0x85, 0x2f, 0x30, 0xa2
- .byte 0x20, 0x92, 0x22, 0xc2, 0x23, 0xc2, 0x24, 0x02
- .byte 0x06, 0xee, 0xef, 0xc4, 0x54, 0x0f, 0x90, 0x03
- .byte 0x53, 0x93, 0xfe, 0xef, 0x54, 0x0f, 0x93, 0x2e
- .byte 0xff, 0x22, 0x90, 0xe0, 0x00, 0xe0, 0x44, 0x02
- .byte 0x54, 0xfe, 0xfe, 0xf0, 0x54, 0xfd, 0xf0, 0xee
- .byte 0xf0, 0x22, 0x12, 0x0e, 0xa2, 0x12, 0x0c, 0xb3
- .byte 0x92, 0x1b, 0x12, 0x0e, 0xa9, 0x20, 0x1b, 0xf2
- .byte 0x22, 0x30, 0x05, 0x09, 0x20, 0x0e, 0x06, 0x20
- .byte 0x02, 0x03, 0xd3, 0x80, 0x01, 0xc3, 0x22, 0x30
- .byte 0x03, 0x09, 0x20, 0x0a, 0x06, 0x20, 0x02, 0x03
- .byte 0xd3, 0x80, 0x01, 0xc3, 0x22, 0xaa, 0x06, 0xea
- .byte 0x24, 0xd0, 0xfd, 0xef, 0xfb, 0xaf, 0x34, 0x12
- .byte 0x0b, 0xb4, 0x22, 0xef, 0x24, 0xfe, 0xfb, 0x7d
- .byte 0xef, 0xaf, 0x34, 0x12, 0x0b, 0xb4, 0x22, 0xd2
- .byte 0x02, 0xd2, 0x0d, 0xc2, 0x96, 0xd2, 0x10, 0xc2
- .byte 0x94, 0x22, 0xef, 0x90, 0x02, 0xc9, 0x93, 0x6d
- .byte 0x60, 0x02, 0x80, 0xfe, 0x22, 0x12, 0x0d, 0xf9
- .byte 0x50, 0x04, 0xc2, 0x10, 0xd2, 0x94, 0x22, 0x12
- .byte 0x0e, 0x07, 0x50, 0x04, 0xc2, 0x0d, 0xd2, 0x96
- .byte 0x22, 0xe5, 0x89, 0x54, 0xf0, 0x44, 0x01, 0xf5
- .byte 0x89, 0x22, 0x30, 0x8d, 0x04, 0xc2, 0x8c, 0xd3
- .byte 0x22, 0xc3, 0x22, 0x30, 0xcf, 0x04, 0xc2, 0xca
- .byte 0xd3, 0x22, 0xc3, 0x22, 0x12, 0x0e, 0xa2, 0x12
- .byte 0x0e, 0xfa, 0x02, 0x0e, 0xa9, 0x12, 0x0e, 0xeb
- .byte 0xc2, 0x0e, 0x02, 0x0e, 0x45, 0xc2, 0x02, 0x12
- .byte 0x0e, 0x4f, 0x02, 0x0e, 0x45, 0xc2, 0x05, 0xd2
- .byte 0x10, 0xc2, 0x94, 0x22, 0xc2, 0x03, 0xd2, 0x0d
- .byte 0xc2, 0x96, 0x22, 0x90, 0xd0, 0x00, 0xe5, 0x1a
- .byte 0xf0, 0x22, 0x30, 0x28, 0x03, 0x12, 0x0b, 0x90
- .byte 0x22, 0x30, 0x28, 0x03, 0x12, 0x0d, 0x92, 0x22
- .byte 0x90, 0xe0, 0x00, 0xe0, 0x13, 0x22, 0x53, 0x1a
- .byte 0xfe, 0x02, 0x0e, 0x9b, 0x43, 0x1a, 0x01, 0x02
- .byte 0x0e, 0x9b, 0x53, 0x1a, 0xfd, 0x02, 0x0e, 0x9b
- .byte 0x43, 0x1a, 0x02, 0x02, 0x0e, 0x9b, 0x53, 0x1a
- .byte 0xfb, 0x02, 0x0e, 0x9b, 0x43, 0x1a, 0x04, 0x02
- .byte 0x0e, 0x9b, 0x53, 0x1a, 0x7f, 0x02, 0x0e, 0x9b
- .byte 0x43, 0x1a, 0x80, 0x02, 0x0e, 0x9b, 0xd2, 0x05
- .byte 0x02, 0x0e, 0x45, 0xc2, 0x0a, 0x02, 0x0e, 0x4f
- .byte 0xd2, 0x03, 0x02, 0x0e, 0x4f, 0x8f, 0x1a, 0x02
- .byte 0x0e, 0x9b, 0x7f, 0x06, 0x02, 0x0d, 0x67, 0x7f
- .byte 0x04, 0x02, 0x0d, 0x67, 0xae, 0x36, 0xaf, 0x37
- .byte 0x22, 0xe4, 0xf5, 0xc8, 0x22, 0x12, 0x0c, 0x1a
- .byte 0x22, 0xc2, 0x0b, 0x22, 0xd2, 0x0b, 0x22, 0xc2
- .byte 0x06, 0x22, 0xd2, 0x06, 0x22, 0xaf, 0x35, 0x22
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
- .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
diff --git a/site/vortex86ex/index.php b/site/vortex86ex/index.php
deleted file mode 100644
index 8a1370a..0000000
--- a/site/vortex86ex/index.php
+++ /dev/null
@@ -1,307 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
-
- <style type="text/css">
- @import url('../css/main.css');
-
- div.contain {
- max-width:100%;
- }
-
- b {
- background:#ddd;
- }
- </style>
-
- <title>dmp vortex86ex in libreboot</title>
-
-</head>
-
-<?php
- include_once "../variables.php";
-?>
-
-<body>
-
- <div class="contain">
-
- <div id="libreboot" class="section intro">
-
- <h1>dmp vortex86ex in libreboot</h1>
-
- <p>
- small embedded system (SoC), i586 CPU
- made by a company called DMP. Seems like there are no blobs except a <a href="#kbd_fw">small firmware</a>
- for a keyboard controller (PS/2), could use usb keyboard instead if
- the ps/2 'blob' is an issue.
- </p>
- <p>
- <a href="../">(Back to homepage)</a>
- </p>
-
- <p>
- <b>Last updated 00:22 UTC+0100 on November 23rd, 2014</b>
- </p>
-
- </div>
-
-
- <div class="section">
-
- <h2>#libreboot on November 15th, 2014</h2>
-
-<pre>
-&lt;pehjota&gt; After the conversation yesterday about KolibriOS, I stumbled upon some hardware that community seems to like: the Vortex86 series of i586-compatible SoCs and the DMP EBOX nettops that use those SoCs. coreboot supports one computer by DMP (src/mainboard/dmp/vortex86ex/) which appears to be the EBOX-3100 (the only EBOX nettop AFAICT without VGA). Three years ago someone ported coreboot to the
-&lt;pehjota&gt; EBOX-3300MX but apparently never upstreamed that work. These Vortex86 SoCs look pretty good, freedom-wise: I think there's no microcode at all, the VGA cores don't seem to need option ROMs, and there are no blobs for things like ME/MRC/AGESA. They have relatively low CPU clock rates (most at 600 or 933 MHz), so they aren't great for compiling or gaming. But they're sold as nettops, thin clients,
-&lt;pehjota&gt; and embedded systems, and the prices ($95–$269 from the US distributor) aren't bad.
-&lt;pehjota&gt; DMP EBOX computers: <a href="http://www.compactpc.com.tw/en/index.html">http://www.compactpc.com.tw/en/index.html</a>. EBOX-3300MX coreboot port: <a href="https://github.com/XVilka/coreboot">https://github.com/XVilka/coreboot</a> (last six commits). Basic (and incomplete) information on the Vortex86 SoCs: <a href="http://www.vortex86.com/">http://www.vortex86.com/</a>. Some technical overviews and resources: <a href="http://www.dmp.com.tw/tech/">http://www.dmp.com.tw/tech/</a>. DMP's BusyBox/Linux distribution (with a Linux config file but apparently no source code):
-&lt;pehjota&gt; <a href="http://www.dmp.com.tw/tech/os-xlinux/">http://www.dmp.com.tw/tech/os-xlinux/</a>.
-</pre>
-
- <h2>#libreboot on November 16th, 2014</h2>
-
-<pre>
-&lt;fchmmr&gt; pehjota, I added info about those vortex86 machines to libreboot.org/release.html and to git.
-&lt;fchmmr&gt; By the way, xvilka (the person behind those commits on that github page) is in #coreboot at the moment.
-&lt;pehjota&gt; Cool. I can't discuss it right now either (busy and have to go idle soon), but I'm interested in his work and possibly seeing at least EBOX-3350MX (a nice cheap one with VGA) supported as well.
-&lt;pehjota&gt; The EBOX systems are cheap (once you add the cost of a power supply and enclosure to a BBB, it isn't much cheaper than an EBOX is) and most have VGA. Some have dual Ethernet and miniPCI.
-
-&lt;mtjm&gt; what is in dmp_kbd_fw_part1.inc in coreboot sources?
-&lt;fchmmr&gt; mtjm, coreboot/src/cpu/dmp/vortex86ex/dmp_kbd_fw_part1.inc is part of the "DEBLOB" file in libreboot.
-&lt;fchmmr&gt; I'll check it's contents in a coreboot clone.
-&lt;fchmmr&gt; it's referenced (included) by src/cpu/dmp/vortex86ex/biosdata.{inc,lds}
-&lt;fchmmr&gt; src/cpu/dmp/vortex86ex/biosdata.inc: #include "src/cpu/dmp/vortex86ex/dmp_kbd_fw_part1.inc"
-&lt;fchmmr&gt; src/cpu/dmp/vortex86ex/Makefile.inc:chipset_bootblock_inc += $(src)/cpu/dmp/vortex86ex/biosdata.inc
-&lt;mtjm&gt; are there other blobs for that platform?
-&lt;mtjm&gt; for checking if it's code or data, see code that uses it (hardware only here?) and relevant documentation; if a disassembler produces reasonable code for an appropriate ISA, then it's most probably code, otherwise it's unknown
-&lt;mtjm&gt; (or is it e.g. a keymap?)
-&lt;fchmmr&gt; As far as I can tell, src/cpu/dmp/vortex86ex/dmp_kbd_fw_part1.inc is the only blob
-&lt;fchmmr&gt; xvilka will know more, I'm sure
-<i>I then asked for more info in #coreboot and emailed Andrew Wu (original maintainer for that board) asking the same question</i>
-</pre>
-
- <h2>#coreboot on November 16th, 2014</h2>
-
-<pre>
-&lt;fchmmr&gt; xvilka, what is src/cpu/dmp/vortex86ex/dmp_kbd_fw_part1.inc for? What kind of data is it?
-&lt;fchmmr&gt; Is there a document that describes this data?
-&lt;idwer&gt; fchmmr: you haven't looked at biosdata.inc/.lds then
-&lt;ruik&gt; fchmmr: i think it is firmware for keyboard controller havent check
-&lt;fchmmr&gt; idwer, i looked at biosdata.inc, not lds. checking now.
-&lt;fchmmr&gt; ruik, keyboard as in ps/2 keyboard?
-&lt;ruik&gt; fchmmr: yes
-&lt;ruik&gt; fchmmr: could be 8051
-&lt;ruik&gt; 0x2 can be LJMP
-</pre>
-
- <h2>back to #libreboot on November 16th, 2014</h2>
-
-<pre>
-&lt;fchmmr&gt; mtjm, just a hunch from #coreboot discussion: I think it might just be for PS/2 keyboards, not sure.
-&lt;fchmmr&gt; If that is the case though, you could basically just ignore it (not use it) and use a usb keyboard, I imagine.
-
-&lt;pehjota&gt; fchmmr: The EBOX-3100 (only Vortex86EX computer by DMP: &lt;<a href="http://www.compactpc.com.tw/en/product/EBOX-3100/ebox-3100_1.html">http://www.compactpc.com.tw/en/product/EBOX-3100/ebox-3100_1.html</a>&gt;.
-&lt;fchmmr&gt; coreboot menuconfig just says DMP -&gt; Vortex86EX
-&lt;pehjota&gt; Yeah, it doesn't say which computer that is, but I'm guessing it's the EBOX-3100.
-&lt;fchmmr&gt; maybe there are more that also work.
-&lt;fchmmr&gt; I found a few "86duino" boards for isntance.
-&lt;fchmmr&gt; <a href="http://www.bttr-software.de/forum/mix_entry.php?id=13074">http://www.bttr-software.de/forum/mix_entry.php?id=13074</a>
-&lt;fchmmr&gt; <a href="http://www.86duino.com/?page_id=85/installation-troubleshooting-1/recompiling-coreboot-seabios-need-config-files">http://www.86duino.com/?page_id=85/installation-troubleshooting-1/recompiling-coreboot-seabios-need-config-files</a>
-&lt;pehjota&gt; Yeah, there's 86duino which supposedly comes with coreboot installed. There were some old configs posted to a forum but the links are dead. Other than that I can't find source code. And it's not in upstream coreboot.
-<i>Surely someone had a git repository somewhere? Was it public (and is it still online)?</i>
-<i>So we need to check all the usual places (github, gitorious, search google/ddg, etc).</i>
-
-&lt;pehjota&gt; Yeah, that thread; the links are dead.
-&lt;fchmmr&gt; tried the wayback machine?
-&lt;fchmmr&gt; <a href="https://archive.org/web/">https://archive.org/web/</a>
-&lt;pehjota&gt; Oh right, that's a Vortex86EX. Maybe that's the one supported by coreboot. DMP sells that one too.
-&lt;fchmmr&gt; a lot of the actual commits in coreboot seem to come from DMP themselves.
-
-&lt;pehjota&gt; I didn't, but the Wayback Machine usually doesn't archive .zip files or other things that aren't Web documents.
-&lt;fchmmr&gt; sometimes it does.
-
-&lt;pehjota&gt; Yeah, there's a developer at DMP who contributes this code to coreboot.
-&lt;pehjota&gt; And who is apparently active with KolibriOS too.
-&lt;fchmmr&gt; Andrew Wu
-&lt;pehjota&gt; Yup.
-
-&lt;fchmmr&gt; does trisquel 7 run on i586-only hardware?
-&lt;fchmmr&gt; i thought it was i686
-&lt;fchmmr&gt; I asked in #trisquel
-&lt;pehjota&gt; Not sure.
-&lt;pehjota&gt; Rereading the message in 8522f99 ("Add support for DMP Vortex86EX PCI mainboard.") and looking at &lt;<a href="http://www.86duino.com/index.php?p=68">http://www.86duino.com/index.php?p=68</a>&gt;, I think that might be the board.
-&lt;fchmmr&gt; maybe it runs on all vortex86ex soc's
-&lt;pehjota&gt; The code in src/cpu/ should, but src/mainboard/ is specific to individual boards.
-&lt;fchmmr&gt; I meant that maybe the same rom will work on multiple boards.
-<i>Or maybe all those *many* menuconfig options means that it could...</i>
-
-&lt;pehjota&gt; Although src/mainboard/dmp/vortex86ex/Kconfig appears to support configuration for different Vortex86EX-based boards, which is interesting.
-&lt;pehjota&gt; With defaults for 86Duino ZERO.
-&lt;fchmmr&gt; yes. lots of config options in menuconfig.
-&lt;fchmmr&gt; the default microcode options when selecting that board is "do not include microcode", which is promising.
-&lt;pehjota&gt; Yeah, as I said I don't think there's any microcode on Vortex86. I think the ISA is implemented directly in hardware.
-&lt;fchmmr&gt; Where does it say 86Duino in that Kconfigfile?
-&lt;pehjota&gt; It doesn't; I'm just guessing based on some of the default values.
-&lt;fchmmr&gt; select BOARD_ROM_KB_256
-&lt;fchmmr&gt; in Kconfig
-&lt;fchmmr&gt; probably couldn't fit GRUB in there, then. Would hvae to use SeaBIOS.
-&lt;pehjota&gt; And as I said, the initial commit message suggests it could have been originally for the 86Duino ZERO.
-&lt;fchmmr&gt; But if there's no vbios, or if it's a full (and free) vbios implementation, then seabios would be ok.
-&lt;pehjota&gt; Yeah, it uses SeaBIOS.
-&lt;pehjota&gt; Yup.
-&lt;fchmmr&gt; personally I'd prefer to use GRUB, but seabios is also fine.
-&lt;fchmmr&gt; GRUB wouldn't fit in such a small space
-&lt;fchmmr&gt; unless you build it with basically no modules
-&lt;pehjota&gt; It's basic VGA hardware with no option ROM AFAICT. No GPU or anything to initialize. The Linux driver is just a framebuffer one.
-&lt;fchmmr&gt; this all sounds very promising.
-&lt;fchmmr&gt; That file for keyboard can apparently be ignored if it's a freedom issue
-&lt;pehjota&gt; So just a framebuffer that gets sent out on VGA.
-&lt;fchmmr&gt; (can use usb keyboard)
-&lt;pehjota&gt; Yeah.
-&lt;fchmmr&gt; &lt;pehjota&gt; So just a framebuffer that gets sent out on VGA.
-&lt;fchmmr&gt; &lt;pehjota&gt; The Linux driver is just a framebuffer one.
-&lt;pehjota&gt; There's no GPU driver enabled in DMP's Linux config, only a couple video framebuffer drivers.
-&lt;fchmmr&gt; I'll ask on the mailing list (coreboot one) who has vortex86 hardware to test on
-&lt;pehjota&gt; The Linux config file is in the "source" .zip files here: &lt;<a href="http://www.dmp.com.tw/tech/os-xlinux/">http://www.dmp.com.tw/tech/os-xlinux/</a>&gt;.
-&lt;pehjota&gt; (Old version of Linux.)
-&lt;fchmmr&gt; Source for Vortex86DX/MX: xlinux-5.7-src-dx.zip (4.74 MB)
-&lt;fchmmr&gt; Source for Vortex86SX: xlinux-5.7-src-sx.zip (4.77 MB)
-&lt;fchmmr&gt; isn't it vortex86ex that we're looking at?
-&lt;pehjota&gt; fchmmr: Yeah, the SoC supported in mainline coreboot is the EX, for which there are apparently no "sources" on that page. I wouldn't use these systems for routers though; there are cheaper Atheros MIPS boards with dual Ethernet ports and built-in wireless chipsets, which should be able to run U-Boot.
-&lt;pehjota&gt; Good call on asking Andrew Wu. I was planning to just ask DMP in general about coreboot support for the EBOX systems.
-&lt;pehjota&gt; Personally I'm not all that interested in the EX-based systems like 86Duino. They don't have VGA, which would be necessary at least for the use cases I currently have in mind. I think the MX ones are more interesting from a practical perspective (they should be just as potentially free and xvilka ported coreboot to one of them). DX2 ones are also nice, but more expensive.
-
-DMP sells the 86Duino directly, and distributors sell the EBOX-3100 (as well as the other EBOX computers).
-</pre>
-
- </div>
-
- <div class="section" id="kbd_fw">
-
- <h2>Firmware for keyboard</h2>
-
- <p>
- In coreboot, see src/cpu/dmp/vortex86ex/dmp_kbd_fw_part1.inc. It is believed to be
- firmware for a PS/2 keyboard controller, though it's actual purpose is yet to be
- confirmed. You could probably exclude this
- (libreboot already does, in the DEBLOB script) and plug in a USB keyboard.
- </p>
-
- <p>
- A copy of dmp_kbd_fw_part1.inc: <a href="dmp_kbd_fw_part1.inc.txt">dmp_kbd_fw_part1.inc.txt</a>.
- </p>
-
- <p>
- The hex arrays were copied and formated in a PHP file.
- This outputs the array in <a href="https://en.wikipedia.org/wiki/Intel_HEX#Format">intel hex format</a>.
- See results at <a href="array.php">array.php</a> (for src, clone the libreboot site using the info from the
- <a href="../">home page</a>).
- The output was then saved as <b>dis.inc</b> and <b>dis.inc.hex</b>.
- </p>
-
- </p>
- According to ruik in #coreboot IRC channel, this is either 8051 or 8052 assembly code. I installed
- 2 disassemblers: dis51 (8051 disassembly) and d52 (8052 disassembly). <br/>
- $ <b>dis51 &lt; dis.inc &gt; dmp_kbd_fw_part1.inc.disassembled.dis51.txt</b><br/>
- And for 8052 disassembly:<br/>
- $ <b>d52 -dh dis.inc.hex</b><br/>
- $ <b>mv dis.inc.d52 dmp_kbd_fw_part1.inc.disassembled.d52.txt</b>
- </p>
-
- <p>
- Disassembly results here:<br/>
- 8051 (dis51) disassembly:
- <a href="dmp_kbd_fw_part1.inc.disassembled.dis51.txt">dmp_kbd_fw_part1.inc.disassembled.dis51.txt</a>
- - lots of data (non-instruction) sections, might be unknown instructions from 8052?<br/>
- <s>8052 (d52) disassembly:
- <a href="dmp_kbd_fw_part1.inc.disassembled.d52.txt">dmp_kbd_fw_part1.inc.disassembled.d52.txt</a></s> -
- it's 8051 code. See below.
- </p>
-
- <p>
- The original dmp_kbd_fw_part1.inc in coreboot also has a GPL licence attached, so it's possible
- that DMP might give the source code for this. Otherwise, if all else fails, we have the
- disassembled code to try to reverse engineer.
- </p>
-
- <p>
- Todo's from mtjm:
- </p>
- <ul>
- <li>check if there is any documented load address, check if jump addresses are reasonable</li>
- <li>check if there are reasonable code sequences (so it's probably really 8051 code)</li>
- <li>
- make sure that it's really under the GPL, then work on generating the same binary from disassembly
- + comments added when trying to understand it
- </li>
- <li>check if anything reads the code (there are different memory spaces for code and modifiable data)</li>
- <li>maybe it has data or unaligned instructions</li>
- <li>(check that you disassembled it properly, in other words)</li>
- <li>
- you want to get code that a machine runs, while you send some (maybe not all) code to it,
- that code has instructions that can read the available code and probably does some i/o that
- can be used to send that code
- </li>
- <li>not sure if it would have any bootrom; 8051 starts running code at address 0</li>
- </ul>
-
- <p>
- Andrew Wu replied to my email. The keyboard controller firmware is non-free; no source code available.
- The GPL license on it is bogus. So libreboot will simply not include PS/2 keyboard support for this machine,
- unless it can be reverse engineered based on the above. (not needed. just use USB)
- </p>
-
- <p>
- Andrew also said that the firmware is <b>8051</b> code, not 8052. The firmware
- implements a <b>standard PC/AT 8042 keyboard controller (handling PS/2 KB_CLK, KB_DATA signals, etc)
- There are datasheets for this!!</b>.
- </p>
-
- <p>
- Andrew also said that he doesn't know about specific hardware as he is in sotfware,
- so he forwarded me to sales, they/he will let me know what vortex86ex systems are actually available for coreboot.
- </p>
-
-<pre>
-The 8051 PS/2 keyboard controller firmware not only controls PS/2 keyboard/mouse, but also handles some system functions, like system reset, A20 line enable, etc, via I/O port 60h/64h.
-
-(Because standard PC/AT 8042 keyboard controller does so).
-
-In short, if software reads or writes I/O port 60h/64h in vortex86ex, then you need the 8051 firmware, otherwise these I/O ports won’t work correctly.
-
-I think most OSes, like DOS or Windows, will access port 60h/64h on startup, so removing the firmware code may cause many compatibility problems.
-</pre>
-
-<pre>
-Instead I propose that I take some minimal time to re-disassemble it
-trough the usual free software tools like gdb, binutils(readelf, and
-objdump), or radare2.
-
-^ other approaches.
-</pre>
-
- <p>
- If GNU/Linux will work, then it's ok.
- </p>
-
- </div>
-
-<br/>
-<hr/>
-
- <div class="section footer">
-
-<?php
- include "../footer.php";
-?>
-
- </div>
-
- </div>
-
-</body>
-</html>
-