From f215e02bf85f68d3a6106c2a1f4f7f063f819064 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 11 Apr 2024 10:17:27 +0200 Subject: Adding upstream version 7.0.14-dfsg. Signed-off-by: Daniel Baumann --- src/VBox/Devices/Graphics/BIOS/BUGS | 3 + src/VBox/Devices/Graphics/BIOS/COPYING | 504 ++ src/VBox/Devices/Graphics/BIOS/ChangeLog | 1212 +++ src/VBox/Devices/Graphics/BIOS/Makefile.kmk | 201 + src/VBox/Devices/Graphics/BIOS/README | 214 + .../Graphics/BIOS/VBoxVgaBiosAlternative286.asm | 9250 +++++++++++++++++++ .../Graphics/BIOS/VBoxVgaBiosAlternative286.md5sum | 1 + .../Graphics/BIOS/VBoxVgaBiosAlternative386.asm | 8704 ++++++++++++++++++ .../Graphics/BIOS/VBoxVgaBiosAlternative386.md5sum | 1 + .../Graphics/BIOS/VBoxVgaBiosAlternative8086.asm | 9408 ++++++++++++++++++++ .../BIOS/VBoxVgaBiosAlternative8086.md5sum | 1 + src/VBox/Devices/Graphics/BIOS/inlines.h | 180 + src/VBox/Devices/Graphics/BIOS/makefile | 48 + src/VBox/Devices/Graphics/BIOS/ose_logo.bmp | Bin 0 -> 630 bytes src/VBox/Devices/Graphics/BIOS/tests/testbios.c | 353 + src/VBox/Devices/Graphics/BIOS/vbe.c | 816 ++ src/VBox/Devices/Graphics/BIOS/vbe.h | 117 + src/VBox/Devices/Graphics/BIOS/vbe_display_api.txt | 237 + src/VBox/Devices/Graphics/BIOS/vberom.asm | 951 ++ src/VBox/Devices/Graphics/BIOS/vbetables-gen.c | 245 + src/VBox/Devices/Graphics/BIOS/vgabios.c | 2805 ++++++ src/VBox/Devices/Graphics/BIOS/vgabios.h | 68 + src/VBox/Devices/Graphics/BIOS/vgadefs.h | 78 + src/VBox/Devices/Graphics/BIOS/vgadefs.inc | 58 + src/VBox/Devices/Graphics/BIOS/vgafonts.h | 878 ++ src/VBox/Devices/Graphics/BIOS/vgarom.asm | 1102 +++ src/VBox/Devices/Graphics/BIOS/vgatables.h | 625 ++ 27 files changed, 38060 insertions(+) create mode 100644 src/VBox/Devices/Graphics/BIOS/BUGS create mode 100644 src/VBox/Devices/Graphics/BIOS/COPYING create mode 100644 src/VBox/Devices/Graphics/BIOS/ChangeLog create mode 100644 src/VBox/Devices/Graphics/BIOS/Makefile.kmk create mode 100644 src/VBox/Devices/Graphics/BIOS/README create mode 100644 src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.asm create mode 100644 src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.md5sum create mode 100644 src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.asm create mode 100644 src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.md5sum create mode 100644 src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.asm create mode 100644 src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.md5sum create mode 100644 src/VBox/Devices/Graphics/BIOS/inlines.h create mode 100644 src/VBox/Devices/Graphics/BIOS/makefile create mode 100644 src/VBox/Devices/Graphics/BIOS/ose_logo.bmp create mode 100644 src/VBox/Devices/Graphics/BIOS/tests/testbios.c create mode 100644 src/VBox/Devices/Graphics/BIOS/vbe.c create mode 100644 src/VBox/Devices/Graphics/BIOS/vbe.h create mode 100644 src/VBox/Devices/Graphics/BIOS/vbe_display_api.txt create mode 100644 src/VBox/Devices/Graphics/BIOS/vberom.asm create mode 100644 src/VBox/Devices/Graphics/BIOS/vbetables-gen.c create mode 100644 src/VBox/Devices/Graphics/BIOS/vgabios.c create mode 100644 src/VBox/Devices/Graphics/BIOS/vgabios.h create mode 100644 src/VBox/Devices/Graphics/BIOS/vgadefs.h create mode 100644 src/VBox/Devices/Graphics/BIOS/vgadefs.inc create mode 100644 src/VBox/Devices/Graphics/BIOS/vgafonts.h create mode 100644 src/VBox/Devices/Graphics/BIOS/vgarom.asm create mode 100644 src/VBox/Devices/Graphics/BIOS/vgatables.h (limited to 'src/VBox/Devices/Graphics/BIOS') diff --git a/src/VBox/Devices/Graphics/BIOS/BUGS b/src/VBox/Devices/Graphics/BIOS/BUGS new file mode 100644 index 00000000..25f88aa0 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/BUGS @@ -0,0 +1,3 @@ +Not all the functions have been implemented yet. + +Please report any bugs to diff --git a/src/VBox/Devices/Graphics/BIOS/COPYING b/src/VBox/Devices/Graphics/BIOS/COPYING new file mode 100644 index 00000000..223ede7d --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/COPYING @@ -0,0 +1,504 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/src/VBox/Devices/Graphics/BIOS/ChangeLog b/src/VBox/Devices/Graphics/BIOS/ChangeLog new file mode 100644 index 00000000..4b88fab1 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/ChangeLog @@ -0,0 +1,1212 @@ +2006-08-19 09:39 vruppert + + * vbe.c (1.58): + + - improved VGA compatible setup for VBE modes (disable CGA and Hercules + compatible memory layout) + +2006-08-18 20:39 vruppert + + * vbe.c (1.57): + + - improved VGA compatible setup for >=8bpp VBE modes (CRTC doubleword mode and + GRDC shift register setting added) + - now using symbolic name for CRTC address register + +2006-08-15 20:42 vruppert + + * vbe.c (1.56), vbetables-gen.c (1.4): + + - init 4bpp VBE modes by a temporary switch to VGA mode 0x6A + - all 4bpp VBE modes now enabled + +2006-08-14 20:24 vruppert + + * vbe.c (1.55): + + - VGA compatible setup for VBE modes improved (Bochs hack can be removed now) + +2006-08-12 07:51 vruppert + + * .cvsignore (1.1): + + - .cvsignore added for auto-generated file + +2006-08-12 07:47 vruppert + + * vbe.c (1.54), vbe.h (1.27), vbe_display_api.txt (1.13), vbetables-gen.c (1.3): + + - cleaned up VBE memory size definitions (removed duplicate defines, main + definition now in vbetables-gen.c) + +2006-08-09 21:28 vruppert + + * vbetables.h (1.30): + + - removed auto-generated file + +2006-08-09 21:26 vruppert + + * vbe.c (1.53), vbe.h (1.26), vbe_display_api.txt (1.12), vbetables-gen.c (1.2), + vbetables.h (1.29): + + - VBE video memory increased to 8 MB + - VBE dispi ID changed to B0C4 + - documentation update + +2006-07-11 08:03 vruppert + + * Makefile (1.18), vbetables-gen.c (1.1), vbetables.h (1.28): + + - generate vbetables.h dynamicly + * initial patch from the qemu project by Fabrice Bellard + * only add modes that fit in video memory (still 4 MB) + * several other fixes (e.g. 4 bpp specific stuff, number of pages) + +2006-07-10 07:47 vruppert + + * vgabios.c (1.66): + + - biosfn_scroll(): check variable 'i' for underflowing when scrolling downwards + to avoid screen corruption + +2006-07-10 07:47 vruppert + + * vbe.c (1.52): + + - VBE set bank functions failure handling added + - VBE get/set logical scan line length fixes for the 4bpp mode + +2006-07-08 13:27 vruppert + + * vbe.c (1.51), vbetables.h (1.27): + + - added special case for the 4 bpp when setting VBE display start + - VBE mode table fixes + +2006-07-07 13:30 vruppert + + * clext.c (1.12): + + - bank pointer must be set to 0 after a mode set + +2006-06-21 16:58 vruppert + + * vbe.c (1.50), vbetables.h (1.26): + + - improved VBE display capabilities check (X resulution checked now) + - removed obsolete defines (LFB always available, always generate dynamic list) + - CR/LF to LF fixes + +2006-06-18 15:22 vruppert + + * clext.c (1.11), vbe.c (1.49), vbe.h (1.25), vbetables.h (1.25), vgabios.c + (1.65): + + - applied patch from the qemu project (Fabrice Bellard) + * Cirrus SVGA now supports the "no clear" bit when switching to Cirrus or + VESA mode + * Bochs VBE protected mode interface improved + * save/restore video state support for Bochs VBE and standard VGA added + * Bochs VBE prepared for more modi + +2006-03-25 10:19 vruppert + + * clext.c (1.10), vgabios.c (1.64), vgatables.h (1.10): + + - applied patch from Fabrice Bellard + * added minimal support for the video parameter table (VPT) + * added Cirrus SVGA mode 0x7b (1600x1200x8) + +2005-12-26 19:50 vruppert + + * vbe.c (1.48), vgabios.c (1.63): + + - Bochs VBE protected mode interface added (based on a patch by malc@pulsesoft.com) + +2005-12-26 19:50 vruppert + + * biossums.c (1.3): + + - biossums utility now supports VGABIOS sizes up to 64 kBytes + +2005-09-21 18:45 vruppert + + * vgatables.h (1.9): + + - mode 0x11: all color planes must be enabled in this 2-color VGA mode + +2005-08-30 18:41 vruppert + + * biossums.c (1.2): + + - missing license text added in biossums.c + +2005-07-02 18:39 vruppert + + * vgabios.c (1.62): + + - BIOS configuration word usually reports initial mode 80x25 color text + - vgabios function 0x0e (write teletype): linefeed (0x0a) only increments the + cursor row value + +2005-05-24 16:50 vruppert + + * vbe.c (1.47), vgabios.c (1.61): + + - output to the vgabios info port can be disabled now. It is still enabled by + default and always possible in debug mode. (based on a patch from Alex Beregszaszi) + +2005-05-20 16:06 vruppert + + * vbe.c (1.46), vgabios.c (1.60): + + - fixed return value for the default case in the VBE section (non-debug mode) + - removed unused macros HALT and PANIC_PORT + +2005-03-07 20:39 vruppert + + * README (1.9): + + - updates for 0.5a release + +2005-03-06 13:06 vruppert + + * Makefile (1.17): + + - vgabios files with cirrus support added to release target + +2005-03-06 12:24 vruppert + + * Makefile (1.16): + + - cross compilation support added (patch from Alex Beregszaszi) + +2005-03-05 13:03 vruppert + + * BUGS (1.3), README (1.8), TODO (1.11): + + - documentation updates + +2004-12-04 15:26 vruppert + + * VGABIOS-lgpl-latest.bin (1.61), VGABIOS-lgpl-latest.cirrus.bin + (1.13), VGABIOS-lgpl-latest.cirrus.debug.bin (1.13), + VGABIOS-lgpl-latest.debug.bin (1.61), clext.c (1.9): + + - Cirrus extension: support for 1280x1024x15 and 1280x1024x16 modes added (patch + from Fabrice Bellard) + +2004-08-08 16:53 vruppert + + * VGABIOS-lgpl-latest.bin (1.60), VGABIOS-lgpl-latest.cirrus.bin (1.12), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.12), + VGABIOS-lgpl-latest.debug.bin (1.60), clext.c (1.8): + + - use single bank mode for VBE + - enable 16k granularity for VBE only + +2004-07-30 19:33 vruppert + + * VGABIOS-lgpl-latest.bin (1.59), VGABIOS-lgpl-latest.cirrus.bin (1.11), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.11), + VGABIOS-lgpl-latest.debug.bin (1.59), clext.c (1.7): + + - cirrus init: set standard vga mode and reset bitblt + +2004-07-22 18:38 vruppert + + * VGABIOS-lgpl-latest.bin (1.58), VGABIOS-lgpl-latest.cirrus.bin (1.10), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.10), + VGABIOS-lgpl-latest.debug.bin (1.58), clext.c (1.6), vbe.c (1.45), + vbetables.h (1.24): + + - cirrus extension: tables for mode 1280x1024x8 added + - vbe: dispi_set_xres() and dispi_set_virt_width() now modify vga compatible + registers + - vbe: mode list entry for mode 800x600x4 fixed + +2004-07-18 20:23 vruppert + + * VGABIOS-lgpl-latest.bin (1.57), VGABIOS-lgpl-latest.cirrus.bin (1.9), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.9), + VGABIOS-lgpl-latest.debug.bin (1.57), vgabios.c (1.59), vgatables.h (1.8): + + - disable CRTC write protection before setting new values + - CRTC line for mode 0x6a fixed + +2004-07-07 16:08 vruppert + + * Makefile (1.15), VGABIOS-lgpl-latest.bin (1.56), + VGABIOS-lgpl-latest.cirrus.bin (1.8), VGABIOS-lgpl-latest.cirrus.debug.bin (1.8), + VGABIOS-lgpl-latest.debug.bin (1.56), biossums.c (1.1), clext.c (1.5): + + - biossums utility for the Bochs BIOS adapted for the LGPL'd VGABIOS + - VESA3 PMINFO checksum calculated in the source + - 24 bpp mode entries fixed (patch from Fabrice Bellard) + +2004-06-25 18:28 vruppert + + * VGABIOS-lgpl-latest.cirrus.bin (1.7), VGABIOS-lgpl-latest.cirrus.debug.bin (1.7), + clext.c (1.4): + + - 4MB memory probe added (patch from Fabrice Bellard) + +2004-06-25 17:31 vruppert + + * VGABIOS-lgpl-latest.bin (1.55), VGABIOS-lgpl-latest.cirrus.bin (1.6), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.6), + VGABIOS-lgpl-latest.debug.bin (1.55), clext.c (1.3): + + - fixed value of sequencer reset register in cirrus mode table + - fixed possible overflow error if cirrus start address is >256k + +2004-06-23 21:11 vruppert + + * VGABIOS-lgpl-latest.bin (1.54), VGABIOS-lgpl-latest.cirrus.bin (1.5), + VGABIOS-lgpl-latest.cirrus.debug.bin (1.5), + VGABIOS-lgpl-latest.debug.bin (1.54), clext.c (1.2): + + - applied new patch for the cirrus extension from suzu + * enable VESA LFB support if a Cirrus PCI adapter is detected + * prepared VBE3 protected mode info block (test case required) + - added VBE functions 4F06h and 4F07h + - some bugfixes + +2004-06-17 18:57 vruppert + + * Makefile (1.14), VGABIOS-lgpl-latest.bin (1.53), + VGABIOS-lgpl-latest.cirrus.bin (1.2), VGABIOS-lgpl-latest.cirrus.debug.bin (1.2), + VGABIOS-lgpl-latest.debug.bin (1.53): + + - fixed makefile targets for the binaries with cirrus extension + +2004-06-16 21:11 vruppert + + * Makefile (1.13), VGABIOS-lgpl-latest.bin (1.52), + VGABIOS-lgpl-latest.cirrus.bin (1.1), VGABIOS-lgpl-latest.cirrus.debug.bin (1.1), + VGABIOS-lgpl-latest.debug.bin (1.52), clext.c (1.1), vgabios.c (1.58): + + - applied suzu's cirrus extension patch. Cirrus SVGA detection, most of the + cirrus-specific modes and some basic VBE features are present now. + +2004-05-31 21:15 vruppert + + * VGABIOS-lgpl-latest.bin (1.51), VGABIOS-lgpl-latest.debug.bin (1.51), + vgabios.c (1.57): + + - write character in planar graphics modes: sequencer map mask must be 0x0f and + bit operation must be 'replace' if bit 7 of attribute is clear + - read/write pixel in planar graphics modes: bit mask setup simplified + +2004-05-11 18:08 vruppert + + * VGABIOS-lgpl-latest.bin (1.50), VGABIOS-lgpl-latest.debug.bin (1.50), + vgabios.c (1.56): + + - biosfn_select_vert_res rewritten in assembler + - scroll text in planar graphics modes: attribute for blank line fixed + - write character in planar graphics modes: graphics controller values fixed + +2004-05-09 20:32 vruppert + + * VGABIOS-lgpl-latest.bin (1.49), VGABIOS-lgpl-latest.debug.bin (1.49), + vbe.c (1.44), vbe.h (1.24), vgabios.c (1.55): + + - VBE init code and some dispi ioport functions rewritten in assembler + - text scroll functions for CGA graphics modes added + - scroll text in graphics modes: attribute for blank line fixed + +2004-05-08 16:06 vruppert + + * BUGS (1.2), README (1.7), TODO (1.10), VGABIOS-lgpl-latest.bin (1.48), + VGABIOS-lgpl-latest.debug.bin (1.48), vbe.c (1.43), vbe.h (1.23), + vbe_display_api.txt (1.11), vgabios.c (1.54): + + - VBE internal functions dispi_set_enable and dispi_set_bank now called both from C + and asm code + - VBE function 0x03 rewritten in assembler + - VBE function 0x08 cleaned up + - text output and scroll functions for graphics modes rewritten using case + structures + - documentation and comments updated + +2004-05-06 21:18 vruppert + + * VGABIOS-lgpl-latest.bin (1.47), VGABIOS-lgpl-latest.debug.bin (1.47), + vbe.c (1.42), vbe.h (1.22), vgabios.c (1.53): + + - VBE functions 0x05, 0x06, 0x07 and some dispi ioport functions rewritten in + assembler + - VBE functions 0x06 and 0x07: get functions now supported, 15 bpp bug fixed + +2004-05-05 19:24 vruppert + + * VGABIOS-lgpl-latest.bin (1.46), VGABIOS-lgpl-latest.debug.bin (1.46), + vbe.c (1.41), vbe.h (1.21), vbe_display_api.txt (1.10), vgabios.c (1.52): + + - 8 bit DAC capability flag set + - vbe_biosfn_set_get_dac_palette_format implemented + - VBE api description updated + - C definitions from header files now used assembler code + +2004-05-02 17:27 vruppert + + * VGABIOS-lgpl-latest.bin (1.45), VGABIOS-lgpl-latest.debug.bin (1.45), + vgabios.c (1.51): + + - text scroll functions for PLANAR1/PLANAR4 graphics modes added + - function biosfn_get_ega_info rewritten in assembler + - read/write graphics pixel functions rewritten using a case structure + +2004-05-01 16:03 vruppert + + * VGABIOS-lgpl-latest.bin (1.44), VGABIOS-lgpl-latest.debug.bin (1.44), + vgabios.c (1.50): + + - biosfn_enable_cursor_emulation rewritten in assembler + - remap of the cursor shape depends on modeset control bit 0 + - text output in PLANAR4 modes now supports attribute bit 7 (XOR with background) + +2004-04-25 20:13 vruppert + + * VGABIOS-lgpl-latest.bin (1.43), VGABIOS-lgpl-latest.debug.bin (1.43), + vgabios.c (1.49), vgatables.h (1.7): + + - table entries for vga mode 0x0f fixed (PLANAR2 exists on EGA only) + - function release_font_access now supports the monochrome text mode + - PLANAR1 modes now supported in text output functions and read/write pixel + - function AH=0x12/BL=0x32 rewritten in assembler + +2004-04-25 08:45 vruppert + + * VGABIOS-lgpl-latest.bin (1.42), VGABIOS-lgpl-latest.debug.bin (1.42), + vgabios.c (1.48): + + - block address calculation in font functions fixed + - functions AX=0x1103, AH=0x12/BL=0x31 and AH=0x12/BL=0x33 rewritten in assembler + +2004-04-24 09:59 vruppert + + * VGABIOS-lgpl-latest.bin (1.41), VGABIOS-lgpl-latest.debug.bin (1.41), + vgabios.c (1.47): + + - read/write graphics pixel for PLANAR4 modes added + - CGA specific functions (group AH = 0x0B) implemented + +2004-04-23 14:34 vruppert + + * VGABIOS-lgpl-latest.bin (1.40), VGABIOS-lgpl-latest.debug.bin (1.40), + vgabios.c (1.46): + + - remaining palette and dac read/write functions (except gray scale summing) + rewritten in assembler + +2004-04-18 13:43 vruppert + + * VGABIOS-lgpl-latest.bin (1.39), VGABIOS-lgpl-latest.debug.bin (1.39), + vgabios.c (1.45): + + - some palette and dac read/write functions rewritten in assembler + - main int10 debug message now works with assembler functions, too + +2004-04-18 09:15 japj + + * vbe.c (1.40): + + updated my email address + put vgabios url in the bios copyright string + (instead of my old email address) + +2004-04-17 07:18 vruppert + + * VGABIOS-lgpl-latest.bin (1.38), VGABIOS-lgpl-latest.debug.bin (1.38), + vgabios.c (1.44): + + - biosfn_set_video_mode: don't load DAC registers if default palette loading is + disabled. Perform gray scale summing if enabled. + - biosfn_perform_gray_scale_summing: switch between DAC read and write mode is + required to make this function work. Maximum DAC value always set to 0x3f. + +2004-04-08 17:50 vruppert + + * VGABIOS-lgpl-latest.bin (1.37), VGABIOS-lgpl-latest.debug.bin (1.37), + vgabios.c (1.43): + + - write character function for the LINEAR8 mode + - get_font_access() and release_font_access() rewritten in assembler + - fixed wrong variable name in the init code + +2004-04-06 19:31 vruppert + + * VGABIOS-lgpl-latest.bin (1.36), VGABIOS-lgpl-latest.debug.bin (1.36), + vgabios.c (1.42): + + - init functions rewitten in assembler + - function biosfn_set_display_code rewritten in assembler + +2004-04-05 19:40 vruppert + + * VGABIOS-lgpl-latest.bin (1.35), VGABIOS-lgpl-latest.debug.bin (1.35), + vgabios.c (1.41): + + - functions biosfn_get_video_mode() and biosfn_read_display_code() rewritten + in assembler + +2004-04-04 18:20 vruppert + + * VGABIOS-lgpl-latest.bin (1.34), VGABIOS-lgpl-latest.debug.bin (1.34), + vgabios.c (1.40): + + - write character function for CGA modes added + - read/write graphics pixel for CGA and LINEAR8 modes added + +2004-02-23 21:08 vruppert + + * VGABIOS-lgpl-latest.bin (1.33), VGABIOS-lgpl-latest.debug.bin (1.33), + vbe.c (1.39): + + - dispi_get_max_bpp(): restore the original value of the vbe enable register + +2004-02-22 14:17 vruppert + + * README (1.6), vbe.c (1.38), vbe.h (1.20), vbe_display_api.txt (1.9), + VGABIOS-lgpl-latest.bin (1.32), VGABIOS-lgpl-latest.debug.bin (1.32): + + - new function dispi_get_max_bpp() returns the bpp capabilities of the Bochs gui + - create the mode list depending on the supported bpp capability + - unused stuff removed + - documentation updated + +2004-02-21 18:20 vruppert + + * vbe.c (1.37), vbe.h (1.19), vbetables.h (1.23), + VGABIOS-lgpl-latest.bin (1.31), VGABIOS-lgpl-latest.debug.bin (1.31): + + - dynamicly genarated vbe mode_info list works now + +2003-11-17 21:04 vruppert + + * vbe.c (1.36), vbetables.h (1.22), vgabios.c (1.39), vgatables.h (1.6), + VGABIOS-lgpl-latest.bin (1.30), VGABIOS-lgpl-latest.debug.bin (1.30): + + - new VBE presence flag stored at unused BDA address 0xB9 + - VBE init code rewritten + - added BIOS TTY flag for VBE mode 0x0102 (TODO: scrolling) + - vgabios_init_func: load and activate text font already done by set_video_mode + - function biosfn_get_all_palette_reg() fixed + +2003-11-06 00:26 cbothamy + + * README (1.5): + + - add changes for 0.4c release + +2003-11-06 00:22 cbothamy + + * VGABIOS-lgpl-latest.bin (1.29), VGABIOS-lgpl-latest.debug.bin + (1.29): + + - compile vgabios.c rev1.38 + +2003-11-06 00:21 cbothamy + + * vgabios.c (1.38): + + - activate char table after loading it when setting a text video + mode + +2003-11-06 00:19 cbothamy + + * Makefile (1.12): + + - when making a release, remove unwanted files first, and exclude + CVS from the tarball + +2003-11-04 22:50 cbothamy + + * ChangeLog (1.20, v0_4b): + + - update ChangeLog for 0.4b release + +2003-11-04 22:49 cbothamy + + * README (1.4, v0_4b): + + - update Changes for 0.4b release + +2003-11-04 20:26 vruppert + + * vgabios.c (1.37), VGABIOS-lgpl-latest.bin (1.28), + VGABIOS-lgpl-latest.debug.bin (1.28) (utags: v0_4b): + + - biosfn_get_font_info(): character height must be returned in CX + +2003-11-03 21:57 vruppert + + * vbe.c (1.35, v0_4b), vgabios.c (1.36), VGABIOS-lgpl-latest.bin + (1.27), VGABIOS-lgpl-latest.debug.bin (1.27): + + - the 'noclearmem' flag is not stored in the 'current video mode' + register (0040h:0049h) - VBE also stores the 'noclear' flag in + the 'video control' register (0040h:0087h) + +2003-10-05 10:06 vruppert + + * vbe.h (1.18, v0_4b), vbe_display_api.txt (1.8, v0_4b), + VGABIOS-lgpl-latest.bin (1.26), VGABIOS-lgpl-latest.debug.bin + (1.26): + + - changed VBE i/o registers to 0x01CE/CF (suggestion from Daniel + Gimpelevich) + +2003-08-18 18:38 vruppert + + * VGABIOS-lgpl-latest.bin (1.25), VGABIOS-lgpl-latest.debug.bin + (1.25), vgabios.c (1.35): + + - wrong offsets to the character tables (INT 0x1F/0x43) fixed + (underscore added) - functions accessing the CRT controller + optimized using a local variable 'crtc_addr' + +2003-08-17 15:46 cbothamy + + * ChangeLog (1.19, v0_4a): + + - ChangeLog is now automatically generated by running "cvs2cl -r + -t -P -S" - update ChangeLog for 0.4a release + +2003-08-17 15:44 cbothamy + + * README (1.3, v0_4a): + + - added the old ChangeLog in the HOSTORY section of the README + file - update History for 0.4a release, with a summary of Changes + +2003-08-17 15:24 cbothamy + + * Makefile (1.11, v0_4b, v0_4a): + + - fix Makefile for "release" target + +2003-08-16 01:49 cbothamy + + * Makefile (1.10), README (1.2), VGABIOS-lgpl-latest.bin (1.24, + v0_4a), VGABIOS-lgpl-latest.debug.bin (1.24, v0_4a), vgabios.c + (1.34, v0_4a): + + - update the Makefile for releases - remove references to old + plex86 website - update the Makefile so it build + VGABIOS-lgpl-latest.bin and VGABIOS-lgpl-latest.debug.bin + +2003-08-07 18:17 vruppert + + * VGABIOS-lgpl-latest.bin (1.23), VGABIOS-lgpl-latest.debug.bin + (1.23): + + - current VBE mode now stored in BDA (unused address 0xBA) + +2003-08-07 17:54 vruppert + + * vbe.c (1.34), vgatables.h (1.5, v0_4b) (utags: v0_4a): + + - current VBE mode now stored in BDA (unused address 0xBA) + +2003-07-20 18:05 vruppert + + * vgabios.c (1.33), VGABIOS-lgpl-latest.bin (1.22), + VGABIOS-lgpl-latest.debug.bin (1.22): + + - fixed a few functions accessing the attribute controller + +2003-07-19 09:33 vruppert + + * vgabios.c (1.32), VGABIOS-lgpl-latest.bin (1.21), + VGABIOS-lgpl-latest.debug.bin (1.21): + + - re-enable video after programming the attribute controller - + biosfn_set_all_palette_reg(): number of palette registers fixed + +2003-07-16 22:32 vruppert + + * ChangeLog (1.18), vbe.c (1.33), vbe.h (1.17, v0_4a), + vbe_display_api.txt (1.7, v0_4a), vgabios.c (1.31), + VGABIOS-lgpl-latest.bin (1.20), VGABIOS-lgpl-latest.debug.bin + (1.20): + + - LFB flag now stored in the register VBE_DISPI_INDEX_ENABLE - + release date in Changelog fixed - release date of VBE BIOS 0.6 + was the same as VGA BIOS 0.3b - year changed in copyright + messages + +2003-07-15 12:40 vruppert + + * VGABIOS-lgpl-latest.bin (1.19), VGABIOS-lgpl-latest.debug.bin + (1.19): + + - new function dispi_get_bpp() - function + vbe_biosfn_set_get_logical_scan_line_length() fixed for >8bpp - + number of image pages of all VBE modes fixed + +2003-07-15 12:35 vruppert + + * vbe.c (1.32), vbetables.h (1.21, v0_4b, v0_4a): + + - new function dispi_get_bpp() - function + vbe_biosfn_set_get_logical_scan_line_length() fixed for >8bpp - + number of image pages of all VBE modes fixed + +2003-07-14 19:45 vruppert + + * vbe_display_api.txt (1.6): + + - description of VBE_DISPI_ interface 0xb0c2 added + +2003-07-10 19:07 vruppert + + * vbe.c (1.31), vbetables.h (1.20), VGABIOS-lgpl-latest.bin (1.18), + VGABIOS-lgpl-latest.debug.bin (1.18): + + - 15 bpp VBE modes added - "Bochs own" mode 0x142 (640x480x32bpp) + added + +2003-07-01 19:00 vruppert + + * vbe.c (1.30), vbe.h (1.16), vbetables.h (1.19), + VGABIOS-lgpl-latest.bin (1.17), VGABIOS-lgpl-latest.debug.bin + (1.17): + + - VBE preserve display memory feature implemented - VBE mode + entries 0x117 and 0x118 added + +2003-06-30 21:27 vruppert + + * vbe.c (1.29), vbe.h (1.15), vbetables.h (1.18), + VGABIOS-lgpl-latest.bin (1.16), VGABIOS-lgpl-latest.debug.bin + (1.16): + + - VBE mode info blocks of modes with >8bpp enabled - VBE modes + with 24 bpp: bytes per scanline fixed - vbe_biosfn_set_mode() now + supports >8bpp - VBE will be enabled with new VBE_DISPI_ID2 + (0xB0C2) + +2003-06-29 12:53 vruppert + + * vbetables.h (1.17), VGABIOS-lgpl-latest.bin (1.15), + VGABIOS-lgpl-latest.debug.bin (1.15): + + - duplicate lines with VBE_MODE_ATTRIBUTE_GRAPHICS_MODE removed - + VBE mode info items of currently unsupported modes fixed + +2003-06-15 21:19 vruppert + + * vgabios.c (1.30), VGABIOS-lgpl-latest.bin (1.14), + VGABIOS-lgpl-latest.debug.bin (1.14): + + - function write_gfx_char() rewritten + +2003-04-26 09:27 vruppert + + * VGABIOS-lgpl-latest.debug.bin (1.13): + + - added missing VBE function dispi_get_bank() - added missing + return codes for VBE function 4F05h - memory size is always + reported in VBE function 4F00h - fixed scan line length for VBE + mode 0102h - fixed function set_active_page() for graphics modes + - fixed the page sizes of some VGA modes + +2003-04-26 09:22 vruppert + + * vbe.c (1.28), vbetables.h (1.16), vgabios.c (1.29), vgatables.h + (1.4), VGABIOS-lgpl-latest.bin (1.13): + + - added missing VBE function dispi_get_bank() - added missing + return codes for VBE function 4F05h - memory size is always + reported in VBE function 4F00h - fixed scan line length for VBE + mode 0102h - fixed function set_active_page() for graphics modes + - fixed the page sizes of some VGA modes + +2003-04-20 09:51 vruppert + + * vgabios.c (1.28), vgatables.h (1.3), VGABIOS-lgpl-latest.bin + (1.12), VGABIOS-lgpl-latest.debug.bin (1.12): + + - function write_gfx_char() now supports different font sizes - + some entries of the static functionality table fixed + +2003-04-18 09:23 vruppert + + * vbe.c (1.27), vbe.h (1.14), vbetables.h (1.15): + + - applied patch #1331 * new function dispi_set_bank_farcall() + * VBE mode info item WinFuncPtr points to the new function if the + flag VBE_WINDOW_ATTRIBUTE_RELOCATABLE is set * flag + VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE added + +2003-02-11 20:17 vruppert + + * VGABIOS-lgpl-latest.bin (1.11), VGABIOS-lgpl-latest.debug.bin + (1.11), vbe.c (1.26), vbetables.h (1.14): + + - VBE mode search rewritten * improved function + mode_info_find_mode() is now used by the VBE functions 0x4F01 + and 0x4F02 * removed all mode list entries with the LFB bit + set. LFB detection is now present in the function + mode_info_find_mode() + +2003-02-09 20:59 vruppert + + * VGABIOS-lgpl-latest.bin (1.10), VGABIOS-lgpl-latest.debug.bin + (1.10), vgabios.c (1.27): + + - function write_gfx_char(): memory address now calculated in + this function; background color is always black - function + biosfn_write_char_attr(): the count parameter is now used in + graphics modes too - function biosfn_write_char_only() works + the same way as function biosfn_write_char_attr() in graphics + mode - copying charmap data optimized using memcpyb() + +2003-02-09 11:36 vruppert + + * VGABIOS-lgpl-latest.bin (1.9), VGABIOS-lgpl-latest.debug.bin + (1.9): + + - VESA mode 0x102 added (uses existing SVGA mode 0x6a) - all VESA + modes with the LFB flag set removed from the list (Linux doesn't + like mode numbers > 0x07ff) + +2003-02-09 11:02 vruppert + + * vbe.c (1.25), vbe.h (1.13), vbetables.h (1.13): + + - VESA mode 0x102 added (uses existing SVGA mode 0x6a) - all VESA + modes with the LFB flag set removed from the list (Linux doesn't + like mode numbers > 0x07ff) + +2003-02-08 13:04 vruppert + + * vbe.c (1.24), vgabios.c (1.26): + + - vbe_biosfn_return_current_mode() now returns the active + standard VGA mode TODO: return VESA mode if enabled - + biosfn_set_video_mode() now clears the screen in CGA mode + correctly - write character functions are now working in all + PLANAR4 graphics modes - added stubs for unimplemented features + in graphics modes + +2003-02-04 22:19 vruppert + + * VGABIOS-lgpl-latest.bin (1.8), VGABIOS-lgpl-latest.debug.bin + (1.8): + + - set video mode: clear vga memory in graphics mode - set video + mode: load default font in text mode - write character + implemented for graphics mode 0x12 + +2003-02-04 22:06 vruppert + + * vgabios.c (1.25): + + - set video mode: clear vga memory in graphics mode - set video + mode: load default font in text mode - write character + implemented for graphics mode 0x12 + +2003-01-21 19:30 vruppert + + * vgabios.c (1.24): + + - remap the cursor size if the char height is > 8 and the new + values are < 8 + +2003-01-20 18:24 cbothamy + + * Makefile (1.9): + + - fix so make -j2 does not overwrite temp files + +2003-01-19 12:35 vruppert + + * vgabios.c (1.23): + + - function set_scan_lines() recalculates the number of rows and + the page size - new values for char height, text rows and page + size are stored in the BIOS data segment - asm helper function + idiv_u added + +2003-01-15 18:49 cbothamy + + * VGABIOS-lgpl-latest.bin (1.7), VGABIOS-lgpl-latest.debug.bin + (1.7): + + - compile vgabios rev 1.22 + +2003-01-15 18:49 cbothamy + + * vgabios.c (1.22): + + - fix bug found by ams : a 8bits index value was compared to + 0x100 in some cases in biosfn_set_all_dac_reg, + biosfn_read_all_dac_reg, biosfn_perform_gray_scale_summing + +2003-01-15 17:34 cbothamy + + * Makefile (1.8): + + - fix symbol table file names, discovered by ams + +2003-01-04 21:20 vruppert + + * VGABIOS-lgpl-latest.bin (1.6), VGABIOS-lgpl-latest.debug.bin + (1.6), vgabios.c (1.21): + + - biosfn_set_video_mode(): reset attribute controller flip-flop + before setting up the controller's registers (bug found with + amidiag) + +2003-01-04 09:50 vruppert + + * vbe.c (1.23): + + - VBE function 0x00 returns VBE 1.x compatible information if no + VBE signature is present + +2003-01-01 12:44 vruppert + + * VGABIOS-lgpl-latest.bin (1.5), VGABIOS-lgpl-latest.debug.bin + (1.5): + + - SVGA mode 0x6A (800x600x4) added to the list of graphics modes + +2002-12-31 18:07 vruppert + + * vgatables.h (1.2): + + - SVGA mode 0x6A (800x600x4) added to the list of graphics modes + +2002-11-23 10:38 cbothamy + + * ChangeLog (1.17, v0_3b): + + - fix changelog for 0.3b release + +2002-10-20 17:12 vruppert + + * VGABIOS-lgpl-latest.bin (1.4), VGABIOS-lgpl-latest.debug.bin + (1.4), vgabios.c (1.20) (utags: v0_3b): + + - new function set_scan_lines() for the font size change (patch + from Hartmut Birr) - cursor shape start and end must be updated + in set_scan_lines() - set_scan_lines() is called by the functions + 0x1110, 0x1111, 0x1112 and 0x1114 after copying the font data + +2002-10-04 08:20 vruppert + + * VGABIOS-lgpl-latest.bin (1.3), VGABIOS-lgpl-latest.debug.bin + (1.3), vgabios.c (1.19): + + - biosfn_set_single_dac_reg(): the red value is stored in DH + +2002-09-19 19:05 cbothamy + + * VGABIOS-lgpl-latest.bin (1.2), VGABIOS-lgpl-latest.debug.bin + (1.2): + + - updated with latest changes + +2002-09-19 19:03 cbothamy + + * ChangeLog (1.16), Makefile (1.7, v0_3b), vbe.c (1.22, v0_3b), + vgabios.c (1.18), vgabios.h (1.3, v0_4b, v0_4a, v0_3b): + + - updated the Makefile - removed display of copyrights. - + changed the Copyright string to "LGPL VGABios developers" + +2002-09-08 21:14 vruppert + + * vgabios.c (1.17): + + - set the cursor shape depending on the current font height - + clear BL before calling int 0x10 function 0x1103 in + vgabios_init_func + +2002-08-23 22:58 cbothamy + + * vbe.c (1.21), vbetables.h (1.12, v0_3b): + + - added lfb-mode numbers (patch from mathis) + +2002-07-21 21:57 japj + + * vbe.c (1.20), vgabios.c (1.16): + + gcc2/3 preprocessing fix + +2002-05-18 16:55 cbothamy + + * vgabios.c (1.15): + + - include patch from Volker that adds some text font functions + +2002-05-01 23:13 japj + + * VGABIOS-lgpl-latest.bin (1.1), VGABIOS-lgpl-latest.debug.bin + (1.1): + + adding latest bin & debug bin of the vgabios + +2002-04-29 14:50 japj + + * ChangeLog (1.15), vbe.c (1.19), vbe.h (1.12, v0_3b), vbetables.h + (1.11), vgabios.c (1.14): + + - applying hw scrolling/multibuffering patch + +2002-04-25 21:59 japj + + * Makefile (1.6), vbe.c (1.18), vgabios.c (1.13): + + - reverting #asm/##asm & endasm patch (does not work with with + cygwin) + +2002-04-19 19:38 japj + + * Makefile (1.5), vbe.c (1.17), vgabios.c (1.12): + + - fixing preprocessing of vgabios with latest gcc (from Mandrake + 8.2) + +2002-04-08 23:44 japj + + * ChangeLog (1.14), vbe_display_api.txt (1.5, v0_3b): + + - preparing docs for new DISPI interface (for hardware scrolling) + +2002-04-03 19:06 japj + + * ChangeLog (1.13), TODO (1.9, v0_4b, v0_4a, v0_3b), vbe.c (1.16): + + - defaulting LFB on + updated changelog & todo + +2002-04-03 00:38 cbothamy + + * vbe.c (1.15), vgabios.c (1.11): + + - changed the logging ports to 0x500 -> 0x502 + +2002-03-14 17:54 japj + + * vbe.c (1.14): + + - vbetables.h is dependant upon some defines (VBE_HAVE_LFB), so + put the include *after* the define + +2002-03-13 21:47 japj + + * ChangeLog (1.12), TODO (1.8), vbe.c (1.13), vbetables.h (1.10), + vgabios.c (1.10): + + - made LFB dependant upon define - not implement vbe functions + return failure - updated todo & docs for things after bochs 1.4 + +2002-03-13 19:46 japj + + * vbe.h (1.11), vbe_display_api.txt (1.4): + + - added max video memory + documented what is in the 0xb0c0 + interface + +2002-03-12 02:33 cbothamy + + * ChangeLog (1.11), Makefile (1.4): + + - updated for 0.3a. Merged vgabios.bin and vbebios.bin + +2002-03-10 21:36 japj + + * ChangeLog (1.10), vbetables.h (1.9): + + - added LFB modes for testing with vbe-lfb patch in Bochs + +2002-03-10 17:42 japj + + * vbe.c (1.12, v0_3a): + + - show people when they do NOT have VBE support available + +2002-03-10 17:36 japj + + * TODO (1.7, v0_3a), vbe.c (1.11), vbe.h (1.10, v0_3a), vgabios.c + (1.9, v0_3a): + + - cleanup of vbe internal functions (set 8bpp mode is now + dependant on ModeInfo content instead of hardcoded functions) + +2002-03-10 17:20 cbothamy + + * ChangeLog (1.9, v0_3a), TODO (1.6): + + - updated for 0.3a + +2002-03-10 17:19 cbothamy + + * vbe.c (1.10), vbe.h (1.9): + + - added vbe_has_vbe_display function that detects an attached vbe + display + +2002-03-10 17:12 cbothamy + + * vgabios.c (1.8): + + - vbe calls are done only if a vbe display is detected + +2002-03-10 11:25 japj + + * vbe.h (1.8), vbe_display_api.txt (1.3, v0_3a): + + - preparing for LFB support + +2002-03-09 14:25 japj + + * vgabios.c (1.7): + + - fixing initial cursor shape to _ instead of - + +2002-03-08 23:08 japj + + * ChangeLog (1.8), TODO (1.5), vbe.c (1.9), vbe.h (1.7), vgabios.c + (1.6): + + - updating vbe code to new API + +2002-03-08 21:48 japj + + * vbe.c (1.8), vbe.h (1.6), vbetables.h (1.8, v0_3a): + + - updating vbe code with #defines from API + +2002-03-08 21:31 japj + + * vbe_display_api.txt (1.2): + + - adding some text about how banks work + +2002-03-08 21:09 japj + + * ChangeLog (1.7), vbe_display_api.txt (1.1): + + - adding vbe_display_api documentation + +2002-03-07 21:36 japj + + * ChangeLog (1.6), vbe.c (1.7), vbetables.h (1.7): + + - added 1024x768xbpp support - some more cleanups/comments + +2002-03-06 21:55 japj + + * ChangeLog (1.5), TODO (1.4), vbe.c (1.6), vbetables.h (1.6), + vgabios.c (1.5): + + - updated changelog with new modi - added 640x480x8 (Mandrake + Installer can use this!) - added pre VBE2 compatible 'detection' + - fixed problem when normal vga set mode wouldn't disable vbe + mode + +2002-03-06 20:59 japj + + * TODO (1.3), vbe.c (1.5), vbe.h (1.5), vbetables.h (1.5), + vgabios.c (1.4): + + - adding 640x400x8 and 800x600x8 vbe support (this depends + HEAVILY on my bochs vga code patch - japj) + +2002-03-06 18:00 japj + + * vbe.c (1.4), vbe.h (1.4), vbetables.h (1.4): + + - implemented banked & lfb support for 320x200x8bpp (some fixes + for vbetest program not displaying anything) + +2002-03-05 20:25 japj + + * Makefile (1.3, v0_3a): + + for vbe debug bios: - print debugging information in assembly + output - print source code in assembly output + +2002-03-01 19:39 japj + + * ChangeLog (1.4), TODO (1.2), vbe.c (1.3), vbe.h (1.3), + vbetables.h (1.3): + + - added vbe support for 320x200x8 using the standard vgamode + (0x13) + +2002-02-19 00:29 japj + + * ChangeLog (1.3): + + - updating ChangeLog with lfbprof + +2002-02-18 23:26 japj + + * tests/lfbprof/: lfbprof.c (1.2), lfbprof.h (1.2) (utags: v0_3a, + v0_3b, v0_4a, v0_4b): + + - fixed unsigned short for mode list (-1 != 0xffff otherwise) - + fixed LfbMapRealPointer macro mask problem (some modes were + skipped) - added some extra 'debugging' printf's + +2002-02-18 23:07 japj + + * tests/lfbprof/: Makefile (1.1, v0_4b, v0_4a, v0_3b, v0_3a), + lfbprof.c (1.1), lfbprof.h (1.1): + + - Adding lfbprof testprogram (for vbe testing purposes) It + needs to be compiled with the Watcom C Compiler + +2002-02-18 18:48 japj + + * vbe.c (1.2), vbe.h (1.2): + + - cosmetic updates to vbe.c/h + added bunch of FIXMEs for work + that needs to be done + +2002-02-18 18:34 japj + + * vbetables.h (1.2): + + - cosmetic updates in vbetables.h + +2002-02-18 18:32 japj + + * ChangeLog (1.2): + + updated changelog with merge of vbebios 0.2 + +2002-02-18 18:07 japj + + * vgabios.c (1.3): + + - small cosmetic cleanup in vgabios vbe code + added FIXMEs + +2002-02-18 17:55 japj + + * Makefile (1.2), dataseghack (1.2, v0_4b, v0_4a, v0_3b, v0_3a), + vbe.c (1.1), vbe.h (1.1), vbetables.h (1.1), vgabios.c (1.2), + vgabios.h (1.2, v0_3a): + + - merging with vbebios 0.2 release + +2002-02-18 11:31 cbothamy + + * BUGS (1.1, v0_4b, v0_4a, v0_3b, v0_3a), COPYING (1.1, v0_4b, + v0_4a, v0_3b, v0_3a), ChangeLog (1.1), Makefile (1.1), Notes + (1.1, v0_4b, v0_4a, v0_3b, v0_3a), README (1.1, v0_3b, v0_3a), + TODO (1.1), dataseghack (1.1), vgabios.c (1.1), vgabios.h (1.1), + vgafonts.h (1.1, v0_4b, v0_4a, v0_3b, v0_3a), vgatables.h (1.1, + v0_3b, v0_3a), tests/testbios.c (1.1, v0_4b, v0_4a, v0_3b, + v0_3a): + + - initial import + diff --git a/src/VBox/Devices/Graphics/BIOS/Makefile.kmk b/src/VBox/Devices/Graphics/BIOS/Makefile.kmk new file mode 100644 index 00000000..3c7e504c --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/Makefile.kmk @@ -0,0 +1,201 @@ +# $Id: Makefile.kmk $ +## @file +# Sub-Makefile for the New VGA BIOS ROM. +# + +# +# Copyright (C) 2012-2023 Oracle and/or its affiliates. +# +# This file is part of VirtualBox base platform packages, as +# available from https://www.virtualbox.org. +# +# 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, in version 3 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, see . +# +# SPDX-License-Identifier: GPL-3.0-only +# + +SUB_DEPTH = ../../../../.. +include $(KBUILD_PATH)/subheader.kmk + + +ifdef VBOX_WITH_OPEN_WATCOM + + # + # VBoxVgaBios - The VGA BIOS. + # + MISCBINS += VBoxVgaBios386 + VBoxVgaBios386_TEMPLATE = VBoxBios + VBoxVgaBios386_ASFLAGS = -0 + VBoxVgaBios386_CFLAGS = -3 + VBoxVgaBios386_DEFS = VBE VBOX_BIOS_CPU=80386 + VBoxVgaBios386_INCS = $(VBOX_GRAPHICS_INCS) + VBoxVgaBios386_SOURCES = \ + vgarom.asm \ + vberom.asm \ + vgabios.c \ + vbe.c + VBoxVgaBios386_LDFLAGS = \ + output raw offset=0xC0000 \ + order \ + clname CODE \ + segment VGAROM segaddr=0xC000 \ + segment _TEXT segaddr=0xC000 offset=0x9F0 \ + segment VBE32 segaddr=0xC000 offset=0x4640 \ + clname DATA \ + segment _DATA segaddr=0xC000 offset=0x4780 + + MISCBINS += VBoxVgaBios286 + VBoxVgaBios286_EXTENDS = VBoxVgaBios386 + VBoxVgaBios286_CFLAGS = -2 + VBoxVgaBios286_DEFS = $(filter-out VBOX_BIOS_CPU=80386,$(VBoxVgaBios386_DEFS)) VBOX_BIOS_CPU=80286 + + MISCBINS += VBoxVgaBios8086 + VBoxVgaBios8086_EXTENDS = VBoxVgaBios386 + VBoxVgaBios8086_CFLAGS = -0 + VBoxVgaBios8086_DEFS = $(filter-out VBOX_BIOS_CPU=80386,$(VBoxVgaBios386_DEFS)) VBOX_BIOS_CPU=8086 + + # + # Updates the alternative source file. + # + define def_VBoxVgaBiosUpdateAltSource + $$(PATH_SUB_CURRENT)/VBoxVgaBiosAlternative$(1).asm +| $$(PATH_SUB_CURRENT)/VBoxVgaBiosAlternative$(1).md5sum: \ + $$$$(VBoxVgaBios$(1)_1_TARGET) \ + $$(VBOX_MAKE_ALTERNATIVE_SOURCE) \ + $$(VBOX_VBOXCMP) + if1of ($$(KBUILD_TYPE), release) + $$(VBOX_MAKE_ALTERNATIVE_SOURCE) \ + --bios-image $$< \ + --bios-map $$(basename $$<).map \ + --bios-sym $$(basename $$<).sym \ + --bios-type vga \ + --output $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).asm + $$(QUIET)$$(TOOL_YASM_AS) -f bin \ + -o $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).bin \ + -l $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).lst \ + $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).asm + $$(VBOX_VBOXCMP) $$< $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).bin + $$(CP) --changed -- $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).asm $$(PATH_ROOT)/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative$(1).asm + $$(REDIRECT) -C $$(dir $$(VBoxVgaBios$(1)_1_TARGET)) -- \ + $$(MD5SUM_EXT) -bo $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).md5sum $$(notdir $$(VBoxVgaBios$(1)_1_TARGET)) + $$(CP) --changed -- $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).md5sum $$(PATH_ROOT)/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative$(1).md5sum + $$(RM) -f -- $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).asm \ + $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).bin \ + $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).lst \ + $$(VBoxVgaBios$(1)_0_OUTDIR)/VBoxVgaBiosAlternative$(1).md5sum + else + $$(QUIET)$$(ECHO) "Fatal error: Can only update VBoxVgaBiosAlternative$(1).asm/md5sum with a release build." + $$(QUIET)exit 1 + endif + endef + + $(evalcall2 def_VBoxVgaBiosUpdateAltSource,386) + $(evalcall2 def_VBoxVgaBiosUpdateAltSource,286) + $(evalcall2 def_VBoxVgaBiosUpdateAltSource,8086) + + update-vgabios-source: \ + $(PATH_SUB_CURRENT)/VBoxVgaBiosAlternative386.asm \ + $(PATH_SUB_CURRENT)/VBoxVgaBiosAlternative286.asm \ + $(PATH_SUB_CURRENT)/VBoxVgaBiosAlternative8086.asm + +endif # VBOX_WITH_OPEN_WATCOM + + +# +# The library containing the VGA BIOS image. +# +LIBRARIES += VgaBiosBin +VgaBiosBin_TEMPLATE = VBoxR3Dll +VgaBiosBin_DEFS = IN_VBOXDD2 +VgaBiosBin_SOURCES = +VgaBiosBin_DEPS = $(VgaBiosBin_0_OUTDIR)/vbetables.h +VgaBiosBin_CLEAN = $(VgaBiosBin_0_OUTDIR)/vbetables.h + +define def_VBoxVgaBiosBin + VgaBiosBin_SOURCES += $$(VgaBiosBin_0_OUTDIR)/VgaBiosBin$(1).c + VgaBiosBin_CLEAN += $$(VgaBiosBin_0_OUTDIR)/VgaBiosBin$(1).c + ifdef VBOX_WITH_OPEN_WATCOM + $$$$(VgaBiosBin_0_OUTDIR)/VgaBiosBin$(1).c: $$$$(VBoxVgaBios$(1)_1_TARGET) $$(VBOX_BIN2C) | $$$$(dir $$$$@) + $$(call MSG_TOOL,bin2c,VgaBiosBin,$$<,$$@) + $$(QUIET)$$(VBOX_BIN2C) -min 32 -max 36 -mask 0x0fff -ascii -export VgaBiosBinary$(1) $$< $$@ + else + VgaBiosBin_CLEAN += $$(VgaBiosBin_0_OUTDIR)/VBoxVgaBios$(1).rom + + $$$$(VgaBiosBin_0_OUTDIR)/VgaBiosBin$(1).c + $$$$(VgaBiosBin_0_OUTDIR)/VBoxVgaBios$(1).rom: \ + $$(PATH_SUB_CURRENT)/VBoxVgaBiosAlternative$(1).asm \ + $$(PATH_SUB_CURRENT)/VBoxVgaBiosAlternative$(1).md5sum \ + $$(VBOX_BIN2C) | $$$$(dir $$$$@) + $$(call MSG_TOOL,bin2c,VgaBiosBin,$$<,$$@) + $$(QUIET)$$(TOOL_YASM_AS) -f bin -o $$(VgaBiosBin_0_OUTDIR)/VBoxVgaBios$(1).rom $$< + $$(QUIET)$$(REDIRECT) -C $$(VgaBiosBin_0_OUTDIR) -- \ + $$(MD5SUM_EXT) -c $$(basename $$<).md5sum + $$(QUIET)$$(VBOX_BIN2C) -min 32 -max 36 -mask 0x0fff -ascii -export VgaBiosBinary$(1) $$(VgaBiosBin_0_OUTDIR)/VBoxVgaBios$(1).rom $$@ + $$(QUIET)$$(RM) -f -- $$$$(VgaBiosBin_0_OUTDIR)/VBoxVgaBios$(1).rom + endif +endef +$(evalcall2 def_VBoxVgaBiosBin,386) +$(evalcall2 def_VBoxVgaBiosBin,286) +$(evalcall2 def_VBoxVgaBiosBin,8086) + + +# Rule for making the vbetables.h that DevVGA uses. +$$(VgaBiosBin_0_OUTDIR)/vbetables.h: $(MAKEFILE_CURRENT) $$(vbetables-gen_1_TARGET) | $$(dir $$@) + $(QUIET)$(REDIRECT) -wo $@ -- $(vbetables-gen_1_TARGET) + + +# +# The VBE tables. +# +BLDPROGS += vbetables-gen +vbetables-gen_TEMPLATE = VBoxBldProg +vbetables-gen_SOURCES = vbetables-gen.c +vbetables-gen_CLEAN = $(vbetables-gen) + + +# +# The VGA BIOS Logo. +# +LIBRARIES += VgaDefBiosLogo +VgaDefBiosLogo_TEMPLATE = VBoxR3Dll +VgaDefBiosLogo_INCS = $(VBOX_PATH_DEVICES_SRC) +VgaDefBiosLogo_SOURCES = $(VgaDefBiosLogo_0_OUTDIR)/VgaDefBiosLogo.c +VgaDefBiosLogo_CLEAN = $(VgaDefBiosLogo_0_OUTDIR)/VgaDefBiosLogo.c +ifndef VBOX_OSE + VgaDefBiosLogo_SOURCES += $(VgaDefBiosLogo_0_OUTDIR)/VgaDefBiosLogoNY.c + VgaDefBiosLogo_CLEAN += $(VgaDefBiosLogo_0_OUTDIR)/VgaDefBiosLogoNY.c +endif + +# Rule for making the bios logo. +$$(VgaDefBiosLogo_0_OUTDIR)/VgaDefBiosLogo.c: $(VBOX_BRAND_BIOS_LOGO) $(VBOX_BIN2C) | $$(dir $$@) + $(call MSG_TOOL,bin2c,VgaDefBiosLogo,$<,$@) + $(QUIET)$(VBOX_BIN2C) VgaDefBiosLogo $< $@ + +# Rule for making the bios logo. +$$(VgaDefBiosLogo_0_OUTDIR)/VgaDefBiosLogoNY.c: $(PATH_ROOT)/src/VBox/Devices/Graphics/BIOS/puel_logo_ny.bmp $(VBOX_BIN2C) | $$(dir $$@) + $(call MSG_TOOL,bin2c,VgaDefBiosLogoNY,$<,$@) + $(QUIET)$(VBOX_BIN2C) VgaDefBiosLogoNY $< $@ + + +ifdef VBOX_WITH_OPEN_WATCOM + # + # Install the symbol file for the BIOS. + # + INSTALLS += VBoxVgaBiosSym + VBoxVgaBiosSym_TEMPLATE = VBoxDbgSyms + VBoxVgaBiosSym_SOURCES = \ + $(basename $(VBoxVgaBios386_1_TARGET)).sym \ + $(basename $(VBoxVgaBios286_1_TARGET)).sym \ + $(basename $(VBoxVgaBios8086_1_TARGET)).sym +endif + +include $(FILE_KBUILD_SUB_FOOTER) diff --git a/src/VBox/Devices/Graphics/BIOS/README b/src/VBox/Devices/Graphics/BIOS/README new file mode 100644 index 00000000..3b585e66 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/README @@ -0,0 +1,214 @@ +Plex86/Bochs VGABios +-------------------- + +The goal of this project is to have a LGPL'd Video Bios in plex86, +Bochs and qemu. +This VGA Bios is very specific to the emulated VGA card. +It is NOT meant to drive a physical vga card. + + +Cirrus SVGA extension +--------------------- + +The Cirrus SVGA extension is designed for the Cirrus emulation in Bochs and +qemu. The initial patch for the Cirrus extension has been written by Makoto +Suzuki (suzu). + + +Install +------- +To compile the VGA Bios you will need : +- gcc +- bcc +- as86 +- ld86 + +Untar the archive, and type make. You should get a "VGABIOS-lgpl-latest.bin" +file. Alternatively, you can use the binary file "VGABIOS-lgpl-latest.bin", +i have compiled for you. + +Edit your plex86/bochs conf file, and modify the load-rom command in the +VGA BIOS section, to point to the new vgabios image file. + + +Debugging +--------- +You can get a very basic debugging system: messages printed by the vgabios. +You have to register the "unmapped" device driver in plex86 or bochs, and make +sure it grabs port 0xfff0. + +Comment the #undef DEBUG at the beginning of vgabios.c. +You can then use the "printf" function in the bios. + + +Testing +------- +Look at the "testvga.c" file in the archive. This is a minimal Turbo C 2.0 +source file that calls a few int10 functions. Feel free to modify it to suit +your needs. + + +Copyright and License +--------------------- +This program has been written by Christophe Bothamy +It is protected by the GNU Lesser Public License, which you should +have received a copy of along with this package. + + +Reverse Engineering +------------------- +The VGA Bios has been written without reverse-engineering any existing Bios. + + +Acknowledgment +-------------- +The source code contains code ripped from rombios.c of plex86, written +by Kevin Lawton + +The source code contains fonts from fntcol16.zip (c) by Joseph Gil avalable at : +ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip +These fonts are public domain + +The source code is based on information taken from : +- Kevin Lawton's vga card emulation for bochs/plex86 +- Ralf Brown's interrupts list avalaible at + http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html +- Finn Thogersons' VGADOC4b available at http://home.worldonline.dk/~finth/ +- Michael Abrash's Graphics Programming Black Book +- Francois Gervais' book "programmation des cartes graphiques cga-ega-vga" + edited by sybex +- DOSEMU 1.0.1 source code for several tables values and formulas + + +Feedback +-------- +Please report any bugs, comments, patches for this VGA Bios to info@vruppert.de +You can find the latest release at : http://www.nongnu.org/vgabios/ +For any information on bochs, visit the website http://bochs.sourceforge.net/ +For any information on qemu, visit the website http://fabrice.bellard.free.fr/qemu/ + + +History +------- +vgabios-0.6a : Aug 19 2006 + - Volker + . added minimal support for the video parameter table (VPT) + . Cirrus SVGA now supports the "no clear" bit in Cirrus and VESA mode + . Bochs VBE protected mode interface improved + . save/restore video state support for Bochs VBE and standard VGA added + . generate vbetables.h dynamicly + . VBE video memory increased to 8 MB (VBE dispi ID changed to B0C4) + . lots of 4bpp VBE fixes (all 4bpp VBE modes now enabled) + . VGA compatible setup for VBE modes added + +vgabios-0.5d : Dec 29 2005 + - Volker + . Bochs VBE protected mode interface added (based on a patch by malc@pulsesoft.com) + . biossums utility now supports VGABIOS sizes up to 64 kBytes + . VGA mode 0x11: all color planes must be enabled in this 2-color VGA mode + +vgabios-0.5c : Jul 07 2005 + - Volker + . BIOS configuration word usually reports initial mode 80x25 color text + . vgabios function 0x0e (write teletype): linefeed (0x0a) only increments the + cursor row value + +vgabios-0.5b : May 24 2005 + - Volker + . fixed return value for the default case in the VBE section (non-debug mode) + . removed unused stuff + +vgabios-0.5a : Mar 07 2005 + - Volker + . Cirrus SVGA extension (initial patches from Makoto Suzuki, improvements + from Fabrice Bellard) + . vgabios image size is now exactly 32k with a checksum + . a lot of vgabios and vbe functions rewritten in assembler + . dynamicly generated VBE mode info list + . write character function for CGA and LINEAR8 modes + . read/write graphics pixel for some graphics modes + . text scroll feature for some graphics modes + . VBE 8-bit DAC support + +vgabios-0.4c : Nov 06 2003 + - Christophe + . fix font problem on initial screen of NT4 Loader + +vgabios-0.4b : Nov 04 2003 + - Volker + . fix offset of character tables + . optimizations of CRT controller accesses + . VBE i/o registers changed to 0x01CE/CF + (suggestion from Daniel Gimpelevich) + . "noclear" flag stored in BIOS area + . fix character height returned by get_font_info function + +vgabios-0.4a : Aug 17 2003 + - Volker + . VBE mode search rewritten (VBE modes with LFB bit removed) + . many bugfixes and optimizations + . write character function implemented for graphics modes + . support for 15bpp, 16bpp, 24bpp and 32bpp VBE modes added + . SVGA mode 0x6A added + . VBE modes 0x102, 0x117, 0x118 and 0x142 (Bochs specific) + +vgabios-0.3b : Nov 23 2002 + - Christophe + . added lfb-mode numbers (patch from mathis) + . updated the Makefile + . removed display of copyrights. + . changed the Copyright string to "LGPL VGABios developers" + - Volker + . set the cursor shape depending on the current font height + . clear BL before calling int 0x10 function 0x1103 in vgabios_init_func + . added some text font functions + - Jeroen + . Forced to new DISPI (0xb0c1) interface (requires latest bochs vbe code) + . Added multibuffering support + . Added new DISPI interface for: virt width, height, x offset, y offset + . Added LFB modes (to be used with the vbe-lfb patch in bochs) + see VBE_HAVE_LFB in vbe.c (currently default enabled) + . updated TODO & docs for changes after bochs 1.4 + +vgabios-0.3a : Mar 10 2002 + - Christophe + . Fixed bug in function ah=13 + - Jeroen + . updated vbebios implementation to new api + . added vbe_display_api documentation + . added 640x400x8, 640x480x8, 800x600x8, 1024x768 + (>640x480 needs a special bochs patch atm) + . added 320x200x8 vbe support (uses the standard 320x200x8 vga mode to + display, this allows for testing & having something on screen as well, + at least until bochs host side display is up & running) + . adding lfbprof (vbe) testprogram (+some small fixes to it) + . merging with vbebios 0.2 + +vgabios-0.2b : Nov 19 2001 + - Christophe + . Fixed bug in function ah=13 + +vgabios-0.2a : Nov 09 2001 + - Christophe + . Included bugfix from techt@pikeonline.net about grayscale summing + . Added the "IBM" string at org 0x1e as Bart Oldeman suggested + . Fixed DS and ES that where inverted in the int10 parameters list! + . The following have been implemented : + - function ax=1a00, ax=1a01, ah=1b + - function ax=1130 + . Added debug messages for unimplemented/unknown functions + Must be compiled with DEBUG defined. The output is trapped + by the unknown-ioport driver of plex/bochs (port 0xfff0 is used) + +vgabios-0.1a : May 8 2001 + - Christophe + . First release. The work has been focused only on text mode. + . The following have been implemented : + - inits + - int 10 handler + - functions ah=00, ah=01, ah=02, ah=03, ah=05, ah=06, ah=07, ah=08 + ah=09, ah=0a, ah=0e, ah=0f, ax=1000, ax=1001, ax=1002, ax=1003 + ax=1007, ax=1008, ax=1009, ax=1010, ax=1012, ax=1013, ax=1015 + ax=1017, ax=1018, ax=1019, ax=101a, ax=101b, ah=12 bl=10, + ah=12 bl=30, ah=12 bl=31, ah=12 bl=32, ah=12 bl=33, ah=12 bl=34 + ah=13 diff --git a/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.asm b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.asm new file mode 100644 index 00000000..d805833f --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.asm @@ -0,0 +1,9250 @@ +; $Id: VBoxVgaBiosAlternative286.asm $ +;; @file +; Auto Generated source file. Do not edit. +; + +; +; Source file: vgarom.asm +; +; ============================================================================================ +; +; Copyright (C) 2001,2002 the LGPL VGABios developers Team +; +; This library is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2 of the License, or (at your option) any later version. +; +; This library 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 +; Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this library; if not, write to the Free Software +; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; +; ============================================================================================ +; +; This VGA Bios is specific to the plex86/bochs Emulated VGA card. +; You can NOT drive any physical vga card with it. +; +; ============================================================================================ +; + +; +; Source file: vberom.asm +; +; ============================================================================================ +; +; Copyright (C) 2002 Jeroen Janssen +; +; This library is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2 of the License, or (at your option) any later version. +; +; This library 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 +; Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this library; if not, write to the Free Software +; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; +; ============================================================================================ +; +; This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +; You can NOT drive any physical vga card with it. +; +; ============================================================================================ +; +; This VBE Bios is based on information taken from : +; - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +; +; ============================================================================================ + +; +; Source file: vgabios.c +; +; // ============================================================================================ +; +; vgabios.c +; +; // ============================================================================================ +; // +; // Copyright (C) 2001,2002 the LGPL VGABios developers Team +; // +; // This library is free software; you can redistribute it and/or +; // modify it under the terms of the GNU Lesser General Public +; // License as published by the Free Software Foundation; either +; // version 2 of the License, or (at your option) any later version. +; // +; // This library 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 +; // Lesser General Public License for more details. +; // +; // You should have received a copy of the GNU Lesser General Public +; // License along with this library; if not, write to the Free Software +; // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; // +; // ============================================================================================ +; // +; // This VGA Bios is specific to the plex86/bochs Emulated VGA card. +; // You can NOT drive any physical vga card with it. +; // +; // ============================================================================================ +; // +; // This file contains code ripped from : +; // - rombios.c of plex86 +; // +; // This VGA Bios contains fonts from : +; // - fntcol16.zip (c) by Joseph Gil avalable at : +; // ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip +; // These fonts are public domain +; // +; // This VGA Bios is based on information taken from : +; // - Kevin Lawton's vga card emulation for bochs/plex86 +; // - Ralf Brown's interrupts list available at http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html +; // - Finn Thogersons' VGADOC4b available at http://home.worldonline.dk/~finth/ +; // - Michael Abrash's Graphics Programming Black Book +; // - Francois Gervais' book "programmation des cartes graphiques cga-ega-vga" edited by sybex +; // - DOSEMU 1.0.1 source code for several tables values and formulas +; // +; // Thanks for patches, comments and ideas to : +; // - techt@pikeonline.net +; // +; // ============================================================================================ + +; +; Source file: vbe.c +; +; // ============================================================================================ +; // +; // Copyright (C) 2002 Jeroen Janssen +; // +; // This library is free software; you can redistribute it and/or +; // modify it under the terms of the GNU Lesser General Public +; // License as published by the Free Software Foundation; either +; // version 2 of the License, or (at your option) any later version. +; // +; // This library 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 +; // Lesser General Public License for more details. +; // +; // You should have received a copy of the GNU Lesser General Public +; // License along with this library; if not, write to the Free Software +; // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; // +; // ============================================================================================ +; // +; // This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +; // You can NOT drive any physical vga card with it. +; // +; // ============================================================================================ +; // +; // This VBE Bios is based on information taken from : +; // - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +; // +; // ============================================================================================ + +; +; Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice +; other than GPL or LGPL is available it will apply instead, Oracle elects to use only +; the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where +; a choice of LGPL license versions is made available with the language indicating +; that LGPLv2 or any later version may be used, or where a choice of which version +; of the LGPL is applied is otherwise unspecified. +; + + + + + +section VGAROM progbits vstart=0x0 align=1 ; size=0x8fa class=CODE group=AUTO + ; disGetNextSymbol 0xc0000 LB 0x8fa -> off=0x28 cb=0000000000000548 uValue=00000000000c0028 'vgabios_int10_handler' + db 055h, 0aah, 040h, 0ebh, 01dh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 049h, 042h + db 04dh, 000h, 00eh, 01fh, 0fch, 0e9h, 03dh, 00ah +vgabios_int10_handler: ; 0xc0028 LB 0x548 + pushfw ; 9c ; 0xc0028 vgarom.asm:91 + cmp ah, 00fh ; 80 fc 0f ; 0xc0029 vgarom.asm:104 + jne short 00034h ; 75 06 ; 0xc002c vgarom.asm:105 + call 0017dh ; e8 4c 01 ; 0xc002e vgarom.asm:106 + jmp near 000edh ; e9 b9 00 ; 0xc0031 vgarom.asm:107 + cmp ah, 01ah ; 80 fc 1a ; 0xc0034 vgarom.asm:109 + jne short 0003fh ; 75 06 ; 0xc0037 vgarom.asm:110 + call 00532h ; e8 f6 04 ; 0xc0039 vgarom.asm:111 + jmp near 000edh ; e9 ae 00 ; 0xc003c vgarom.asm:112 + cmp ah, 00bh ; 80 fc 0b ; 0xc003f vgarom.asm:114 + jne short 0004ah ; 75 06 ; 0xc0042 vgarom.asm:115 + call 000efh ; e8 a8 00 ; 0xc0044 vgarom.asm:116 + jmp near 000edh ; e9 a3 00 ; 0xc0047 vgarom.asm:117 + cmp ax, 01103h ; 3d 03 11 ; 0xc004a vgarom.asm:119 + jne short 00055h ; 75 06 ; 0xc004d vgarom.asm:120 + call 00429h ; e8 d7 03 ; 0xc004f vgarom.asm:121 + jmp near 000edh ; e9 98 00 ; 0xc0052 vgarom.asm:122 + cmp ah, 012h ; 80 fc 12 ; 0xc0055 vgarom.asm:124 + jne short 00097h ; 75 3d ; 0xc0058 vgarom.asm:125 + cmp bl, 010h ; 80 fb 10 ; 0xc005a vgarom.asm:126 + jne short 00065h ; 75 06 ; 0xc005d vgarom.asm:127 + call 00436h ; e8 d4 03 ; 0xc005f vgarom.asm:128 + jmp near 000edh ; e9 88 00 ; 0xc0062 vgarom.asm:129 + cmp bl, 030h ; 80 fb 30 ; 0xc0065 vgarom.asm:131 + jne short 0006fh ; 75 05 ; 0xc0068 vgarom.asm:132 + call 00459h ; e8 ec 03 ; 0xc006a vgarom.asm:133 + jmp short 000edh ; eb 7e ; 0xc006d vgarom.asm:134 + cmp bl, 031h ; 80 fb 31 ; 0xc006f vgarom.asm:136 + jne short 00079h ; 75 05 ; 0xc0072 vgarom.asm:137 + call 004ach ; e8 35 04 ; 0xc0074 vgarom.asm:138 + jmp short 000edh ; eb 74 ; 0xc0077 vgarom.asm:139 + cmp bl, 032h ; 80 fb 32 ; 0xc0079 vgarom.asm:141 + jne short 00083h ; 75 05 ; 0xc007c vgarom.asm:142 + call 004ceh ; e8 4d 04 ; 0xc007e vgarom.asm:143 + jmp short 000edh ; eb 6a ; 0xc0081 vgarom.asm:144 + cmp bl, 033h ; 80 fb 33 ; 0xc0083 vgarom.asm:146 + jne short 0008dh ; 75 05 ; 0xc0086 vgarom.asm:147 + call 004ech ; e8 61 04 ; 0xc0088 vgarom.asm:148 + jmp short 000edh ; eb 60 ; 0xc008b vgarom.asm:149 + cmp bl, 034h ; 80 fb 34 ; 0xc008d vgarom.asm:151 + jne short 000e1h ; 75 4f ; 0xc0090 vgarom.asm:152 + call 00510h ; e8 7b 04 ; 0xc0092 vgarom.asm:153 + jmp short 000edh ; eb 56 ; 0xc0095 vgarom.asm:154 + cmp ax, 0101bh ; 3d 1b 10 ; 0xc0097 vgarom.asm:156 + je short 000e1h ; 74 45 ; 0xc009a vgarom.asm:157 + cmp ah, 010h ; 80 fc 10 ; 0xc009c vgarom.asm:158 + jne short 000a6h ; 75 05 ; 0xc009f vgarom.asm:162 + call 001a4h ; e8 00 01 ; 0xc00a1 vgarom.asm:164 + jmp short 000edh ; eb 47 ; 0xc00a4 vgarom.asm:165 + cmp ah, 04fh ; 80 fc 4f ; 0xc00a6 vgarom.asm:168 + jne short 000e1h ; 75 36 ; 0xc00a9 vgarom.asm:169 + cmp AL, strict byte 003h ; 3c 03 ; 0xc00ab vgarom.asm:170 + jne short 000b4h ; 75 05 ; 0xc00ad vgarom.asm:171 + call 007d2h ; e8 20 07 ; 0xc00af vgarom.asm:172 + jmp short 000edh ; eb 39 ; 0xc00b2 vgarom.asm:173 + cmp AL, strict byte 005h ; 3c 05 ; 0xc00b4 vgarom.asm:175 + jne short 000bdh ; 75 05 ; 0xc00b6 vgarom.asm:176 + call 007f7h ; e8 3c 07 ; 0xc00b8 vgarom.asm:177 + jmp short 000edh ; eb 30 ; 0xc00bb vgarom.asm:178 + cmp AL, strict byte 007h ; 3c 07 ; 0xc00bd vgarom.asm:180 + jne short 000c6h ; 75 05 ; 0xc00bf vgarom.asm:181 + call 00824h ; e8 60 07 ; 0xc00c1 vgarom.asm:182 + jmp short 000edh ; eb 27 ; 0xc00c4 vgarom.asm:183 + cmp AL, strict byte 008h ; 3c 08 ; 0xc00c6 vgarom.asm:185 + jne short 000cfh ; 75 05 ; 0xc00c8 vgarom.asm:186 + call 00858h ; e8 8b 07 ; 0xc00ca vgarom.asm:187 + jmp short 000edh ; eb 1e ; 0xc00cd vgarom.asm:188 + cmp AL, strict byte 009h ; 3c 09 ; 0xc00cf vgarom.asm:190 + jne short 000d8h ; 75 05 ; 0xc00d1 vgarom.asm:191 + call 0088fh ; e8 b9 07 ; 0xc00d3 vgarom.asm:192 + jmp short 000edh ; eb 15 ; 0xc00d6 vgarom.asm:193 + cmp AL, strict byte 00ah ; 3c 0a ; 0xc00d8 vgarom.asm:195 + jne short 000e1h ; 75 05 ; 0xc00da vgarom.asm:196 + call 008e6h ; e8 07 08 ; 0xc00dc vgarom.asm:197 + jmp short 000edh ; eb 0c ; 0xc00df vgarom.asm:198 + push ES ; 06 ; 0xc00e1 vgarom.asm:202 + push DS ; 1e ; 0xc00e2 vgarom.asm:203 + pushaw ; 60 ; 0xc00e3 vgarom.asm:107 + push CS ; 0e ; 0xc00e4 vgarom.asm:207 + pop DS ; 1f ; 0xc00e5 vgarom.asm:208 + cld ; fc ; 0xc00e6 vgarom.asm:209 + call 038d9h ; e8 ef 37 ; 0xc00e7 vgarom.asm:210 + popaw ; 61 ; 0xc00ea vgarom.asm:124 + pop DS ; 1f ; 0xc00eb vgarom.asm:213 + pop ES ; 07 ; 0xc00ec vgarom.asm:214 + popfw ; 9d ; 0xc00ed vgarom.asm:216 + iret ; cf ; 0xc00ee vgarom.asm:217 + cmp bh, 000h ; 80 ff 00 ; 0xc00ef vgarom.asm:222 + je short 000fah ; 74 06 ; 0xc00f2 vgarom.asm:223 + cmp bh, 001h ; 80 ff 01 ; 0xc00f4 vgarom.asm:224 + je short 0014bh ; 74 52 ; 0xc00f7 vgarom.asm:225 + retn ; c3 ; 0xc00f9 vgarom.asm:229 + push ax ; 50 ; 0xc00fa vgarom.asm:231 + push bx ; 53 ; 0xc00fb vgarom.asm:232 + push cx ; 51 ; 0xc00fc vgarom.asm:233 + push dx ; 52 ; 0xc00fd vgarom.asm:234 + push DS ; 1e ; 0xc00fe vgarom.asm:235 + mov dx, strict word 00040h ; ba 40 00 ; 0xc00ff vgarom.asm:236 + mov ds, dx ; 8e da ; 0xc0102 vgarom.asm:237 + mov dx, 003dah ; ba da 03 ; 0xc0104 vgarom.asm:238 + in AL, DX ; ec ; 0xc0107 vgarom.asm:239 + cmp byte [word 00049h], 003h ; 80 3e 49 00 03 ; 0xc0108 vgarom.asm:240 + jbe short 0013eh ; 76 2f ; 0xc010d vgarom.asm:241 + mov dx, 003c0h ; ba c0 03 ; 0xc010f vgarom.asm:242 + mov AL, strict byte 000h ; b0 00 ; 0xc0112 vgarom.asm:243 + out DX, AL ; ee ; 0xc0114 vgarom.asm:244 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0115 vgarom.asm:245 + and AL, strict byte 00fh ; 24 0f ; 0xc0117 vgarom.asm:246 + test AL, strict byte 008h ; a8 08 ; 0xc0119 vgarom.asm:247 + je short 0011fh ; 74 02 ; 0xc011b vgarom.asm:248 + add AL, strict byte 008h ; 04 08 ; 0xc011d vgarom.asm:249 + out DX, AL ; ee ; 0xc011f vgarom.asm:251 + mov CL, strict byte 001h ; b1 01 ; 0xc0120 vgarom.asm:252 + and bl, 010h ; 80 e3 10 ; 0xc0122 vgarom.asm:253 + mov dx, 003c0h ; ba c0 03 ; 0xc0125 vgarom.asm:255 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc0128 vgarom.asm:256 + out DX, AL ; ee ; 0xc012a vgarom.asm:257 + mov dx, 003c1h ; ba c1 03 ; 0xc012b vgarom.asm:258 + in AL, DX ; ec ; 0xc012e vgarom.asm:259 + and AL, strict byte 0efh ; 24 ef ; 0xc012f vgarom.asm:260 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc0131 vgarom.asm:261 + mov dx, 003c0h ; ba c0 03 ; 0xc0133 vgarom.asm:262 + out DX, AL ; ee ; 0xc0136 vgarom.asm:263 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc0137 vgarom.asm:264 + cmp cl, 004h ; 80 f9 04 ; 0xc0139 vgarom.asm:265 + jne short 00125h ; 75 e7 ; 0xc013c vgarom.asm:266 + mov AL, strict byte 020h ; b0 20 ; 0xc013e vgarom.asm:268 + out DX, AL ; ee ; 0xc0140 vgarom.asm:269 + mov dx, 003dah ; ba da 03 ; 0xc0141 vgarom.asm:271 + in AL, DX ; ec ; 0xc0144 vgarom.asm:272 + pop DS ; 1f ; 0xc0145 vgarom.asm:274 + pop dx ; 5a ; 0xc0146 vgarom.asm:275 + pop cx ; 59 ; 0xc0147 vgarom.asm:276 + pop bx ; 5b ; 0xc0148 vgarom.asm:277 + pop ax ; 58 ; 0xc0149 vgarom.asm:278 + retn ; c3 ; 0xc014a vgarom.asm:279 + push ax ; 50 ; 0xc014b vgarom.asm:281 + push bx ; 53 ; 0xc014c vgarom.asm:282 + push cx ; 51 ; 0xc014d vgarom.asm:283 + push dx ; 52 ; 0xc014e vgarom.asm:284 + mov dx, 003dah ; ba da 03 ; 0xc014f vgarom.asm:285 + in AL, DX ; ec ; 0xc0152 vgarom.asm:286 + mov CL, strict byte 001h ; b1 01 ; 0xc0153 vgarom.asm:287 + and bl, 001h ; 80 e3 01 ; 0xc0155 vgarom.asm:288 + mov dx, 003c0h ; ba c0 03 ; 0xc0158 vgarom.asm:290 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc015b vgarom.asm:291 + out DX, AL ; ee ; 0xc015d vgarom.asm:292 + mov dx, 003c1h ; ba c1 03 ; 0xc015e vgarom.asm:293 + in AL, DX ; ec ; 0xc0161 vgarom.asm:294 + and AL, strict byte 0feh ; 24 fe ; 0xc0162 vgarom.asm:295 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc0164 vgarom.asm:296 + mov dx, 003c0h ; ba c0 03 ; 0xc0166 vgarom.asm:297 + out DX, AL ; ee ; 0xc0169 vgarom.asm:298 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc016a vgarom.asm:299 + cmp cl, 004h ; 80 f9 04 ; 0xc016c vgarom.asm:300 + jne short 00158h ; 75 e7 ; 0xc016f vgarom.asm:301 + mov AL, strict byte 020h ; b0 20 ; 0xc0171 vgarom.asm:302 + out DX, AL ; ee ; 0xc0173 vgarom.asm:303 + mov dx, 003dah ; ba da 03 ; 0xc0174 vgarom.asm:305 + in AL, DX ; ec ; 0xc0177 vgarom.asm:306 + pop dx ; 5a ; 0xc0178 vgarom.asm:308 + pop cx ; 59 ; 0xc0179 vgarom.asm:309 + pop bx ; 5b ; 0xc017a vgarom.asm:310 + pop ax ; 58 ; 0xc017b vgarom.asm:311 + retn ; c3 ; 0xc017c vgarom.asm:312 + push DS ; 1e ; 0xc017d vgarom.asm:317 + mov ax, strict word 00040h ; b8 40 00 ; 0xc017e vgarom.asm:318 + mov ds, ax ; 8e d8 ; 0xc0181 vgarom.asm:319 + push bx ; 53 ; 0xc0183 vgarom.asm:320 + mov bx, strict word 00062h ; bb 62 00 ; 0xc0184 vgarom.asm:321 + mov al, byte [bx] ; 8a 07 ; 0xc0187 vgarom.asm:322 + pop bx ; 5b ; 0xc0189 vgarom.asm:323 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc018a vgarom.asm:324 + push bx ; 53 ; 0xc018c vgarom.asm:325 + mov bx, 00087h ; bb 87 00 ; 0xc018d vgarom.asm:326 + mov ah, byte [bx] ; 8a 27 ; 0xc0190 vgarom.asm:327 + and ah, 080h ; 80 e4 80 ; 0xc0192 vgarom.asm:328 + mov bx, strict word 00049h ; bb 49 00 ; 0xc0195 vgarom.asm:329 + mov al, byte [bx] ; 8a 07 ; 0xc0198 vgarom.asm:330 + db 00ah, 0c4h + ; or al, ah ; 0a c4 ; 0xc019a vgarom.asm:331 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc019c vgarom.asm:332 + mov ah, byte [bx] ; 8a 27 ; 0xc019f vgarom.asm:333 + pop bx ; 5b ; 0xc01a1 vgarom.asm:334 + pop DS ; 1f ; 0xc01a2 vgarom.asm:335 + retn ; c3 ; 0xc01a3 vgarom.asm:336 + cmp AL, strict byte 000h ; 3c 00 ; 0xc01a4 vgarom.asm:341 + jne short 001aah ; 75 02 ; 0xc01a6 vgarom.asm:342 + jmp short 0020bh ; eb 61 ; 0xc01a8 vgarom.asm:343 + cmp AL, strict byte 001h ; 3c 01 ; 0xc01aa vgarom.asm:345 + jne short 001b0h ; 75 02 ; 0xc01ac vgarom.asm:346 + jmp short 00229h ; eb 79 ; 0xc01ae vgarom.asm:347 + cmp AL, strict byte 002h ; 3c 02 ; 0xc01b0 vgarom.asm:349 + jne short 001b6h ; 75 02 ; 0xc01b2 vgarom.asm:350 + jmp short 00231h ; eb 7b ; 0xc01b4 vgarom.asm:351 + cmp AL, strict byte 003h ; 3c 03 ; 0xc01b6 vgarom.asm:353 + jne short 001bdh ; 75 03 ; 0xc01b8 vgarom.asm:354 + jmp near 00262h ; e9 a5 00 ; 0xc01ba vgarom.asm:355 + cmp AL, strict byte 007h ; 3c 07 ; 0xc01bd vgarom.asm:357 + jne short 001c4h ; 75 03 ; 0xc01bf vgarom.asm:358 + jmp near 0028ch ; e9 c8 00 ; 0xc01c1 vgarom.asm:359 + cmp AL, strict byte 008h ; 3c 08 ; 0xc01c4 vgarom.asm:361 + jne short 001cbh ; 75 03 ; 0xc01c6 vgarom.asm:362 + jmp near 002b4h ; e9 e9 00 ; 0xc01c8 vgarom.asm:363 + cmp AL, strict byte 009h ; 3c 09 ; 0xc01cb vgarom.asm:365 + jne short 001d2h ; 75 03 ; 0xc01cd vgarom.asm:366 + jmp near 002c2h ; e9 f0 00 ; 0xc01cf vgarom.asm:367 + cmp AL, strict byte 010h ; 3c 10 ; 0xc01d2 vgarom.asm:369 + jne short 001d9h ; 75 03 ; 0xc01d4 vgarom.asm:370 + jmp near 00307h ; e9 2e 01 ; 0xc01d6 vgarom.asm:371 + cmp AL, strict byte 012h ; 3c 12 ; 0xc01d9 vgarom.asm:373 + jne short 001e0h ; 75 03 ; 0xc01db vgarom.asm:374 + jmp near 00320h ; e9 40 01 ; 0xc01dd vgarom.asm:375 + cmp AL, strict byte 013h ; 3c 13 ; 0xc01e0 vgarom.asm:377 + jne short 001e7h ; 75 03 ; 0xc01e2 vgarom.asm:378 + jmp near 00348h ; e9 61 01 ; 0xc01e4 vgarom.asm:379 + cmp AL, strict byte 015h ; 3c 15 ; 0xc01e7 vgarom.asm:381 + jne short 001eeh ; 75 03 ; 0xc01e9 vgarom.asm:382 + jmp near 0038fh ; e9 a1 01 ; 0xc01eb vgarom.asm:383 + cmp AL, strict byte 017h ; 3c 17 ; 0xc01ee vgarom.asm:385 + jne short 001f5h ; 75 03 ; 0xc01f0 vgarom.asm:386 + jmp near 003aah ; e9 b5 01 ; 0xc01f2 vgarom.asm:387 + cmp AL, strict byte 018h ; 3c 18 ; 0xc01f5 vgarom.asm:389 + jne short 001fch ; 75 03 ; 0xc01f7 vgarom.asm:390 + jmp near 003d2h ; e9 d6 01 ; 0xc01f9 vgarom.asm:391 + cmp AL, strict byte 019h ; 3c 19 ; 0xc01fc vgarom.asm:393 + jne short 00203h ; 75 03 ; 0xc01fe vgarom.asm:394 + jmp near 003ddh ; e9 da 01 ; 0xc0200 vgarom.asm:395 + cmp AL, strict byte 01ah ; 3c 1a ; 0xc0203 vgarom.asm:397 + jne short 0020ah ; 75 03 ; 0xc0205 vgarom.asm:398 + jmp near 003e8h ; e9 de 01 ; 0xc0207 vgarom.asm:399 + retn ; c3 ; 0xc020a vgarom.asm:404 + cmp bl, 014h ; 80 fb 14 ; 0xc020b vgarom.asm:407 + jnbe short 00228h ; 77 18 ; 0xc020e vgarom.asm:408 + push ax ; 50 ; 0xc0210 vgarom.asm:409 + push dx ; 52 ; 0xc0211 vgarom.asm:410 + mov dx, 003dah ; ba da 03 ; 0xc0212 vgarom.asm:411 + in AL, DX ; ec ; 0xc0215 vgarom.asm:412 + mov dx, 003c0h ; ba c0 03 ; 0xc0216 vgarom.asm:413 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0219 vgarom.asm:414 + out DX, AL ; ee ; 0xc021b vgarom.asm:415 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc021c vgarom.asm:416 + out DX, AL ; ee ; 0xc021e vgarom.asm:417 + mov AL, strict byte 020h ; b0 20 ; 0xc021f vgarom.asm:418 + out DX, AL ; ee ; 0xc0221 vgarom.asm:419 + mov dx, 003dah ; ba da 03 ; 0xc0222 vgarom.asm:421 + in AL, DX ; ec ; 0xc0225 vgarom.asm:422 + pop dx ; 5a ; 0xc0226 vgarom.asm:424 + pop ax ; 58 ; 0xc0227 vgarom.asm:425 + retn ; c3 ; 0xc0228 vgarom.asm:427 + push bx ; 53 ; 0xc0229 vgarom.asm:432 + mov BL, strict byte 011h ; b3 11 ; 0xc022a vgarom.asm:433 + call 0020bh ; e8 dc ff ; 0xc022c vgarom.asm:434 + pop bx ; 5b ; 0xc022f vgarom.asm:435 + retn ; c3 ; 0xc0230 vgarom.asm:436 + push ax ; 50 ; 0xc0231 vgarom.asm:441 + push bx ; 53 ; 0xc0232 vgarom.asm:442 + push cx ; 51 ; 0xc0233 vgarom.asm:443 + push dx ; 52 ; 0xc0234 vgarom.asm:444 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc0235 vgarom.asm:445 + mov dx, 003dah ; ba da 03 ; 0xc0237 vgarom.asm:446 + in AL, DX ; ec ; 0xc023a vgarom.asm:447 + mov CL, strict byte 000h ; b1 00 ; 0xc023b vgarom.asm:448 + mov dx, 003c0h ; ba c0 03 ; 0xc023d vgarom.asm:449 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc0240 vgarom.asm:451 + out DX, AL ; ee ; 0xc0242 vgarom.asm:452 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0243 vgarom.asm:453 + out DX, AL ; ee ; 0xc0246 vgarom.asm:454 + inc bx ; 43 ; 0xc0247 vgarom.asm:455 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc0248 vgarom.asm:456 + cmp cl, 010h ; 80 f9 10 ; 0xc024a vgarom.asm:457 + jne short 00240h ; 75 f1 ; 0xc024d vgarom.asm:458 + mov AL, strict byte 011h ; b0 11 ; 0xc024f vgarom.asm:459 + out DX, AL ; ee ; 0xc0251 vgarom.asm:460 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0252 vgarom.asm:461 + out DX, AL ; ee ; 0xc0255 vgarom.asm:462 + mov AL, strict byte 020h ; b0 20 ; 0xc0256 vgarom.asm:463 + out DX, AL ; ee ; 0xc0258 vgarom.asm:464 + mov dx, 003dah ; ba da 03 ; 0xc0259 vgarom.asm:466 + in AL, DX ; ec ; 0xc025c vgarom.asm:467 + pop dx ; 5a ; 0xc025d vgarom.asm:469 + pop cx ; 59 ; 0xc025e vgarom.asm:470 + pop bx ; 5b ; 0xc025f vgarom.asm:471 + pop ax ; 58 ; 0xc0260 vgarom.asm:472 + retn ; c3 ; 0xc0261 vgarom.asm:473 + push ax ; 50 ; 0xc0262 vgarom.asm:478 + push bx ; 53 ; 0xc0263 vgarom.asm:479 + push dx ; 52 ; 0xc0264 vgarom.asm:480 + mov dx, 003dah ; ba da 03 ; 0xc0265 vgarom.asm:481 + in AL, DX ; ec ; 0xc0268 vgarom.asm:482 + mov dx, 003c0h ; ba c0 03 ; 0xc0269 vgarom.asm:483 + mov AL, strict byte 010h ; b0 10 ; 0xc026c vgarom.asm:484 + out DX, AL ; ee ; 0xc026e vgarom.asm:485 + mov dx, 003c1h ; ba c1 03 ; 0xc026f vgarom.asm:486 + in AL, DX ; ec ; 0xc0272 vgarom.asm:487 + and AL, strict byte 0f7h ; 24 f7 ; 0xc0273 vgarom.asm:488 + and bl, 001h ; 80 e3 01 ; 0xc0275 vgarom.asm:489 + sal bl, 003h ; c0 e3 03 ; 0xc0278 vgarom.asm:491 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc027b vgarom.asm:497 + mov dx, 003c0h ; ba c0 03 ; 0xc027d vgarom.asm:498 + out DX, AL ; ee ; 0xc0280 vgarom.asm:499 + mov AL, strict byte 020h ; b0 20 ; 0xc0281 vgarom.asm:500 + out DX, AL ; ee ; 0xc0283 vgarom.asm:501 + mov dx, 003dah ; ba da 03 ; 0xc0284 vgarom.asm:503 + in AL, DX ; ec ; 0xc0287 vgarom.asm:504 + pop dx ; 5a ; 0xc0288 vgarom.asm:506 + pop bx ; 5b ; 0xc0289 vgarom.asm:507 + pop ax ; 58 ; 0xc028a vgarom.asm:508 + retn ; c3 ; 0xc028b vgarom.asm:509 + cmp bl, 014h ; 80 fb 14 ; 0xc028c vgarom.asm:514 + jnbe short 002b3h ; 77 22 ; 0xc028f vgarom.asm:515 + push ax ; 50 ; 0xc0291 vgarom.asm:516 + push dx ; 52 ; 0xc0292 vgarom.asm:517 + mov dx, 003dah ; ba da 03 ; 0xc0293 vgarom.asm:518 + in AL, DX ; ec ; 0xc0296 vgarom.asm:519 + mov dx, 003c0h ; ba c0 03 ; 0xc0297 vgarom.asm:520 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc029a vgarom.asm:521 + out DX, AL ; ee ; 0xc029c vgarom.asm:522 + mov dx, 003c1h ; ba c1 03 ; 0xc029d vgarom.asm:523 + in AL, DX ; ec ; 0xc02a0 vgarom.asm:524 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc02a1 vgarom.asm:525 + mov dx, 003dah ; ba da 03 ; 0xc02a3 vgarom.asm:526 + in AL, DX ; ec ; 0xc02a6 vgarom.asm:527 + mov dx, 003c0h ; ba c0 03 ; 0xc02a7 vgarom.asm:528 + mov AL, strict byte 020h ; b0 20 ; 0xc02aa vgarom.asm:529 + out DX, AL ; ee ; 0xc02ac vgarom.asm:530 + mov dx, 003dah ; ba da 03 ; 0xc02ad vgarom.asm:532 + in AL, DX ; ec ; 0xc02b0 vgarom.asm:533 + pop dx ; 5a ; 0xc02b1 vgarom.asm:535 + pop ax ; 58 ; 0xc02b2 vgarom.asm:536 + retn ; c3 ; 0xc02b3 vgarom.asm:538 + push ax ; 50 ; 0xc02b4 vgarom.asm:543 + push bx ; 53 ; 0xc02b5 vgarom.asm:544 + mov BL, strict byte 011h ; b3 11 ; 0xc02b6 vgarom.asm:545 + call 0028ch ; e8 d1 ff ; 0xc02b8 vgarom.asm:546 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc02bb vgarom.asm:547 + pop bx ; 5b ; 0xc02bd vgarom.asm:548 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc02be vgarom.asm:549 + pop ax ; 58 ; 0xc02c0 vgarom.asm:550 + retn ; c3 ; 0xc02c1 vgarom.asm:551 + push ax ; 50 ; 0xc02c2 vgarom.asm:556 + push bx ; 53 ; 0xc02c3 vgarom.asm:557 + push cx ; 51 ; 0xc02c4 vgarom.asm:558 + push dx ; 52 ; 0xc02c5 vgarom.asm:559 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc02c6 vgarom.asm:560 + mov CL, strict byte 000h ; b1 00 ; 0xc02c8 vgarom.asm:561 + mov dx, 003dah ; ba da 03 ; 0xc02ca vgarom.asm:563 + in AL, DX ; ec ; 0xc02cd vgarom.asm:564 + mov dx, 003c0h ; ba c0 03 ; 0xc02ce vgarom.asm:565 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc02d1 vgarom.asm:566 + out DX, AL ; ee ; 0xc02d3 vgarom.asm:567 + mov dx, 003c1h ; ba c1 03 ; 0xc02d4 vgarom.asm:568 + in AL, DX ; ec ; 0xc02d7 vgarom.asm:569 + mov byte [es:bx], al ; 26 88 07 ; 0xc02d8 vgarom.asm:570 + inc bx ; 43 ; 0xc02db vgarom.asm:571 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc02dc vgarom.asm:572 + cmp cl, 010h ; 80 f9 10 ; 0xc02de vgarom.asm:573 + jne short 002cah ; 75 e7 ; 0xc02e1 vgarom.asm:574 + mov dx, 003dah ; ba da 03 ; 0xc02e3 vgarom.asm:575 + in AL, DX ; ec ; 0xc02e6 vgarom.asm:576 + mov dx, 003c0h ; ba c0 03 ; 0xc02e7 vgarom.asm:577 + mov AL, strict byte 011h ; b0 11 ; 0xc02ea vgarom.asm:578 + out DX, AL ; ee ; 0xc02ec vgarom.asm:579 + mov dx, 003c1h ; ba c1 03 ; 0xc02ed vgarom.asm:580 + in AL, DX ; ec ; 0xc02f0 vgarom.asm:581 + mov byte [es:bx], al ; 26 88 07 ; 0xc02f1 vgarom.asm:582 + mov dx, 003dah ; ba da 03 ; 0xc02f4 vgarom.asm:583 + in AL, DX ; ec ; 0xc02f7 vgarom.asm:584 + mov dx, 003c0h ; ba c0 03 ; 0xc02f8 vgarom.asm:585 + mov AL, strict byte 020h ; b0 20 ; 0xc02fb vgarom.asm:586 + out DX, AL ; ee ; 0xc02fd vgarom.asm:587 + mov dx, 003dah ; ba da 03 ; 0xc02fe vgarom.asm:589 + in AL, DX ; ec ; 0xc0301 vgarom.asm:590 + pop dx ; 5a ; 0xc0302 vgarom.asm:592 + pop cx ; 59 ; 0xc0303 vgarom.asm:593 + pop bx ; 5b ; 0xc0304 vgarom.asm:594 + pop ax ; 58 ; 0xc0305 vgarom.asm:595 + retn ; c3 ; 0xc0306 vgarom.asm:596 + push ax ; 50 ; 0xc0307 vgarom.asm:601 + push dx ; 52 ; 0xc0308 vgarom.asm:602 + mov dx, 003c8h ; ba c8 03 ; 0xc0309 vgarom.asm:603 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc030c vgarom.asm:604 + out DX, AL ; ee ; 0xc030e vgarom.asm:605 + mov dx, 003c9h ; ba c9 03 ; 0xc030f vgarom.asm:606 + pop ax ; 58 ; 0xc0312 vgarom.asm:607 + push ax ; 50 ; 0xc0313 vgarom.asm:608 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc0314 vgarom.asm:609 + out DX, AL ; ee ; 0xc0316 vgarom.asm:610 + db 08ah, 0c5h + ; mov al, ch ; 8a c5 ; 0xc0317 vgarom.asm:611 + out DX, AL ; ee ; 0xc0319 vgarom.asm:612 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc031a vgarom.asm:613 + out DX, AL ; ee ; 0xc031c vgarom.asm:614 + pop dx ; 5a ; 0xc031d vgarom.asm:615 + pop ax ; 58 ; 0xc031e vgarom.asm:616 + retn ; c3 ; 0xc031f vgarom.asm:617 + push ax ; 50 ; 0xc0320 vgarom.asm:622 + push bx ; 53 ; 0xc0321 vgarom.asm:623 + push cx ; 51 ; 0xc0322 vgarom.asm:624 + push dx ; 52 ; 0xc0323 vgarom.asm:625 + mov dx, 003c8h ; ba c8 03 ; 0xc0324 vgarom.asm:626 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0327 vgarom.asm:627 + out DX, AL ; ee ; 0xc0329 vgarom.asm:628 + pop dx ; 5a ; 0xc032a vgarom.asm:629 + push dx ; 52 ; 0xc032b vgarom.asm:630 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc032c vgarom.asm:631 + mov dx, 003c9h ; ba c9 03 ; 0xc032e vgarom.asm:632 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0331 vgarom.asm:634 + out DX, AL ; ee ; 0xc0334 vgarom.asm:635 + inc bx ; 43 ; 0xc0335 vgarom.asm:636 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0336 vgarom.asm:637 + out DX, AL ; ee ; 0xc0339 vgarom.asm:638 + inc bx ; 43 ; 0xc033a vgarom.asm:639 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc033b vgarom.asm:640 + out DX, AL ; ee ; 0xc033e vgarom.asm:641 + inc bx ; 43 ; 0xc033f vgarom.asm:642 + dec cx ; 49 ; 0xc0340 vgarom.asm:643 + jne short 00331h ; 75 ee ; 0xc0341 vgarom.asm:644 + pop dx ; 5a ; 0xc0343 vgarom.asm:645 + pop cx ; 59 ; 0xc0344 vgarom.asm:646 + pop bx ; 5b ; 0xc0345 vgarom.asm:647 + pop ax ; 58 ; 0xc0346 vgarom.asm:648 + retn ; c3 ; 0xc0347 vgarom.asm:649 + push ax ; 50 ; 0xc0348 vgarom.asm:654 + push bx ; 53 ; 0xc0349 vgarom.asm:655 + push dx ; 52 ; 0xc034a vgarom.asm:656 + mov dx, 003dah ; ba da 03 ; 0xc034b vgarom.asm:657 + in AL, DX ; ec ; 0xc034e vgarom.asm:658 + mov dx, 003c0h ; ba c0 03 ; 0xc034f vgarom.asm:659 + mov AL, strict byte 010h ; b0 10 ; 0xc0352 vgarom.asm:660 + out DX, AL ; ee ; 0xc0354 vgarom.asm:661 + mov dx, 003c1h ; ba c1 03 ; 0xc0355 vgarom.asm:662 + in AL, DX ; ec ; 0xc0358 vgarom.asm:663 + and bl, 001h ; 80 e3 01 ; 0xc0359 vgarom.asm:664 + jne short 0036bh ; 75 0d ; 0xc035c vgarom.asm:665 + and AL, strict byte 07fh ; 24 7f ; 0xc035e vgarom.asm:666 + sal bh, 007h ; c0 e7 07 ; 0xc0360 vgarom.asm:668 + db 00ah, 0c7h + ; or al, bh ; 0a c7 ; 0xc0363 vgarom.asm:678 + mov dx, 003c0h ; ba c0 03 ; 0xc0365 vgarom.asm:679 + out DX, AL ; ee ; 0xc0368 vgarom.asm:680 + jmp short 00384h ; eb 19 ; 0xc0369 vgarom.asm:681 + push ax ; 50 ; 0xc036b vgarom.asm:683 + mov dx, 003dah ; ba da 03 ; 0xc036c vgarom.asm:684 + in AL, DX ; ec ; 0xc036f vgarom.asm:685 + mov dx, 003c0h ; ba c0 03 ; 0xc0370 vgarom.asm:686 + mov AL, strict byte 014h ; b0 14 ; 0xc0373 vgarom.asm:687 + out DX, AL ; ee ; 0xc0375 vgarom.asm:688 + pop ax ; 58 ; 0xc0376 vgarom.asm:689 + and AL, strict byte 080h ; 24 80 ; 0xc0377 vgarom.asm:690 + jne short 0037eh ; 75 03 ; 0xc0379 vgarom.asm:691 + sal bh, 002h ; c0 e7 02 ; 0xc037b vgarom.asm:693 + and bh, 00fh ; 80 e7 0f ; 0xc037e vgarom.asm:699 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc0381 vgarom.asm:700 + out DX, AL ; ee ; 0xc0383 vgarom.asm:701 + mov AL, strict byte 020h ; b0 20 ; 0xc0384 vgarom.asm:703 + out DX, AL ; ee ; 0xc0386 vgarom.asm:704 + mov dx, 003dah ; ba da 03 ; 0xc0387 vgarom.asm:706 + in AL, DX ; ec ; 0xc038a vgarom.asm:707 + pop dx ; 5a ; 0xc038b vgarom.asm:709 + pop bx ; 5b ; 0xc038c vgarom.asm:710 + pop ax ; 58 ; 0xc038d vgarom.asm:711 + retn ; c3 ; 0xc038e vgarom.asm:712 + push ax ; 50 ; 0xc038f vgarom.asm:717 + push dx ; 52 ; 0xc0390 vgarom.asm:718 + mov dx, 003c7h ; ba c7 03 ; 0xc0391 vgarom.asm:719 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0394 vgarom.asm:720 + out DX, AL ; ee ; 0xc0396 vgarom.asm:721 + pop ax ; 58 ; 0xc0397 vgarom.asm:722 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc0398 vgarom.asm:723 + mov dx, 003c9h ; ba c9 03 ; 0xc039a vgarom.asm:724 + in AL, DX ; ec ; 0xc039d vgarom.asm:725 + xchg al, ah ; 86 e0 ; 0xc039e vgarom.asm:726 + push ax ; 50 ; 0xc03a0 vgarom.asm:727 + in AL, DX ; ec ; 0xc03a1 vgarom.asm:728 + db 08ah, 0e8h + ; mov ch, al ; 8a e8 ; 0xc03a2 vgarom.asm:729 + in AL, DX ; ec ; 0xc03a4 vgarom.asm:730 + db 08ah, 0c8h + ; mov cl, al ; 8a c8 ; 0xc03a5 vgarom.asm:731 + pop dx ; 5a ; 0xc03a7 vgarom.asm:732 + pop ax ; 58 ; 0xc03a8 vgarom.asm:733 + retn ; c3 ; 0xc03a9 vgarom.asm:734 + push ax ; 50 ; 0xc03aa vgarom.asm:739 + push bx ; 53 ; 0xc03ab vgarom.asm:740 + push cx ; 51 ; 0xc03ac vgarom.asm:741 + push dx ; 52 ; 0xc03ad vgarom.asm:742 + mov dx, 003c7h ; ba c7 03 ; 0xc03ae vgarom.asm:743 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc03b1 vgarom.asm:744 + out DX, AL ; ee ; 0xc03b3 vgarom.asm:745 + pop dx ; 5a ; 0xc03b4 vgarom.asm:746 + push dx ; 52 ; 0xc03b5 vgarom.asm:747 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc03b6 vgarom.asm:748 + mov dx, 003c9h ; ba c9 03 ; 0xc03b8 vgarom.asm:749 + in AL, DX ; ec ; 0xc03bb vgarom.asm:751 + mov byte [es:bx], al ; 26 88 07 ; 0xc03bc vgarom.asm:752 + inc bx ; 43 ; 0xc03bf vgarom.asm:753 + in AL, DX ; ec ; 0xc03c0 vgarom.asm:754 + mov byte [es:bx], al ; 26 88 07 ; 0xc03c1 vgarom.asm:755 + inc bx ; 43 ; 0xc03c4 vgarom.asm:756 + in AL, DX ; ec ; 0xc03c5 vgarom.asm:757 + mov byte [es:bx], al ; 26 88 07 ; 0xc03c6 vgarom.asm:758 + inc bx ; 43 ; 0xc03c9 vgarom.asm:759 + dec cx ; 49 ; 0xc03ca vgarom.asm:760 + jne short 003bbh ; 75 ee ; 0xc03cb vgarom.asm:761 + pop dx ; 5a ; 0xc03cd vgarom.asm:762 + pop cx ; 59 ; 0xc03ce vgarom.asm:763 + pop bx ; 5b ; 0xc03cf vgarom.asm:764 + pop ax ; 58 ; 0xc03d0 vgarom.asm:765 + retn ; c3 ; 0xc03d1 vgarom.asm:766 + push ax ; 50 ; 0xc03d2 vgarom.asm:771 + push dx ; 52 ; 0xc03d3 vgarom.asm:772 + mov dx, 003c6h ; ba c6 03 ; 0xc03d4 vgarom.asm:773 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc03d7 vgarom.asm:774 + out DX, AL ; ee ; 0xc03d9 vgarom.asm:775 + pop dx ; 5a ; 0xc03da vgarom.asm:776 + pop ax ; 58 ; 0xc03db vgarom.asm:777 + retn ; c3 ; 0xc03dc vgarom.asm:778 + push ax ; 50 ; 0xc03dd vgarom.asm:783 + push dx ; 52 ; 0xc03de vgarom.asm:784 + mov dx, 003c6h ; ba c6 03 ; 0xc03df vgarom.asm:785 + in AL, DX ; ec ; 0xc03e2 vgarom.asm:786 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc03e3 vgarom.asm:787 + pop dx ; 5a ; 0xc03e5 vgarom.asm:788 + pop ax ; 58 ; 0xc03e6 vgarom.asm:789 + retn ; c3 ; 0xc03e7 vgarom.asm:790 + push ax ; 50 ; 0xc03e8 vgarom.asm:795 + push dx ; 52 ; 0xc03e9 vgarom.asm:796 + mov dx, 003dah ; ba da 03 ; 0xc03ea vgarom.asm:797 + in AL, DX ; ec ; 0xc03ed vgarom.asm:798 + mov dx, 003c0h ; ba c0 03 ; 0xc03ee vgarom.asm:799 + mov AL, strict byte 010h ; b0 10 ; 0xc03f1 vgarom.asm:800 + out DX, AL ; ee ; 0xc03f3 vgarom.asm:801 + mov dx, 003c1h ; ba c1 03 ; 0xc03f4 vgarom.asm:802 + in AL, DX ; ec ; 0xc03f7 vgarom.asm:803 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc03f8 vgarom.asm:804 + shr bl, 007h ; c0 eb 07 ; 0xc03fa vgarom.asm:806 + mov dx, 003dah ; ba da 03 ; 0xc03fd vgarom.asm:816 + in AL, DX ; ec ; 0xc0400 vgarom.asm:817 + mov dx, 003c0h ; ba c0 03 ; 0xc0401 vgarom.asm:818 + mov AL, strict byte 014h ; b0 14 ; 0xc0404 vgarom.asm:819 + out DX, AL ; ee ; 0xc0406 vgarom.asm:820 + mov dx, 003c1h ; ba c1 03 ; 0xc0407 vgarom.asm:821 + in AL, DX ; ec ; 0xc040a vgarom.asm:822 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc040b vgarom.asm:823 + and bh, 00fh ; 80 e7 0f ; 0xc040d vgarom.asm:824 + test bl, 001h ; f6 c3 01 ; 0xc0410 vgarom.asm:825 + jne short 00418h ; 75 03 ; 0xc0413 vgarom.asm:826 + shr bh, 002h ; c0 ef 02 ; 0xc0415 vgarom.asm:828 + mov dx, 003dah ; ba da 03 ; 0xc0418 vgarom.asm:834 + in AL, DX ; ec ; 0xc041b vgarom.asm:835 + mov dx, 003c0h ; ba c0 03 ; 0xc041c vgarom.asm:836 + mov AL, strict byte 020h ; b0 20 ; 0xc041f vgarom.asm:837 + out DX, AL ; ee ; 0xc0421 vgarom.asm:838 + mov dx, 003dah ; ba da 03 ; 0xc0422 vgarom.asm:840 + in AL, DX ; ec ; 0xc0425 vgarom.asm:841 + pop dx ; 5a ; 0xc0426 vgarom.asm:843 + pop ax ; 58 ; 0xc0427 vgarom.asm:844 + retn ; c3 ; 0xc0428 vgarom.asm:845 + push ax ; 50 ; 0xc0429 vgarom.asm:850 + push dx ; 52 ; 0xc042a vgarom.asm:851 + mov dx, 003c4h ; ba c4 03 ; 0xc042b vgarom.asm:852 + db 08ah, 0e3h + ; mov ah, bl ; 8a e3 ; 0xc042e vgarom.asm:853 + mov AL, strict byte 003h ; b0 03 ; 0xc0430 vgarom.asm:854 + out DX, ax ; ef ; 0xc0432 vgarom.asm:855 + pop dx ; 5a ; 0xc0433 vgarom.asm:856 + pop ax ; 58 ; 0xc0434 vgarom.asm:857 + retn ; c3 ; 0xc0435 vgarom.asm:858 + push DS ; 1e ; 0xc0436 vgarom.asm:863 + push ax ; 50 ; 0xc0437 vgarom.asm:864 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0438 vgarom.asm:865 + mov ds, ax ; 8e d8 ; 0xc043b vgarom.asm:866 + db 032h, 0edh + ; xor ch, ch ; 32 ed ; 0xc043d vgarom.asm:867 + mov bx, 00088h ; bb 88 00 ; 0xc043f vgarom.asm:868 + mov cl, byte [bx] ; 8a 0f ; 0xc0442 vgarom.asm:869 + and cl, 00fh ; 80 e1 0f ; 0xc0444 vgarom.asm:870 + mov bx, strict word 00063h ; bb 63 00 ; 0xc0447 vgarom.asm:871 + mov ax, word [bx] ; 8b 07 ; 0xc044a vgarom.asm:872 + mov bx, strict word 00003h ; bb 03 00 ; 0xc044c vgarom.asm:873 + cmp ax, 003b4h ; 3d b4 03 ; 0xc044f vgarom.asm:874 + jne short 00456h ; 75 02 ; 0xc0452 vgarom.asm:875 + mov BH, strict byte 001h ; b7 01 ; 0xc0454 vgarom.asm:876 + pop ax ; 58 ; 0xc0456 vgarom.asm:878 + pop DS ; 1f ; 0xc0457 vgarom.asm:879 + retn ; c3 ; 0xc0458 vgarom.asm:880 + push DS ; 1e ; 0xc0459 vgarom.asm:888 + push bx ; 53 ; 0xc045a vgarom.asm:889 + push dx ; 52 ; 0xc045b vgarom.asm:890 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc045c vgarom.asm:891 + mov ax, strict word 00040h ; b8 40 00 ; 0xc045e vgarom.asm:892 + mov ds, ax ; 8e d8 ; 0xc0461 vgarom.asm:893 + mov bx, 00089h ; bb 89 00 ; 0xc0463 vgarom.asm:894 + mov al, byte [bx] ; 8a 07 ; 0xc0466 vgarom.asm:895 + mov bx, 00088h ; bb 88 00 ; 0xc0468 vgarom.asm:896 + mov ah, byte [bx] ; 8a 27 ; 0xc046b vgarom.asm:897 + cmp dl, 001h ; 80 fa 01 ; 0xc046d vgarom.asm:898 + je short 00487h ; 74 15 ; 0xc0470 vgarom.asm:899 + jc short 00491h ; 72 1d ; 0xc0472 vgarom.asm:900 + cmp dl, 002h ; 80 fa 02 ; 0xc0474 vgarom.asm:901 + je short 0047bh ; 74 02 ; 0xc0477 vgarom.asm:902 + jmp short 004a5h ; eb 2a ; 0xc0479 vgarom.asm:912 + and AL, strict byte 07fh ; 24 7f ; 0xc047b vgarom.asm:918 + or AL, strict byte 010h ; 0c 10 ; 0xc047d vgarom.asm:919 + and ah, 0f0h ; 80 e4 f0 ; 0xc047f vgarom.asm:920 + or ah, 009h ; 80 cc 09 ; 0xc0482 vgarom.asm:921 + jne short 0049bh ; 75 14 ; 0xc0485 vgarom.asm:922 + and AL, strict byte 06fh ; 24 6f ; 0xc0487 vgarom.asm:928 + and ah, 0f0h ; 80 e4 f0 ; 0xc0489 vgarom.asm:929 + or ah, 009h ; 80 cc 09 ; 0xc048c vgarom.asm:930 + jne short 0049bh ; 75 0a ; 0xc048f vgarom.asm:931 + and AL, strict byte 0efh ; 24 ef ; 0xc0491 vgarom.asm:937 + or AL, strict byte 080h ; 0c 80 ; 0xc0493 vgarom.asm:938 + and ah, 0f0h ; 80 e4 f0 ; 0xc0495 vgarom.asm:939 + or ah, 008h ; 80 cc 08 ; 0xc0498 vgarom.asm:940 + mov bx, 00089h ; bb 89 00 ; 0xc049b vgarom.asm:942 + mov byte [bx], al ; 88 07 ; 0xc049e vgarom.asm:943 + mov bx, 00088h ; bb 88 00 ; 0xc04a0 vgarom.asm:944 + mov byte [bx], ah ; 88 27 ; 0xc04a3 vgarom.asm:945 + mov ax, 01212h ; b8 12 12 ; 0xc04a5 vgarom.asm:947 + pop dx ; 5a ; 0xc04a8 vgarom.asm:948 + pop bx ; 5b ; 0xc04a9 vgarom.asm:949 + pop DS ; 1f ; 0xc04aa vgarom.asm:950 + retn ; c3 ; 0xc04ab vgarom.asm:951 + push DS ; 1e ; 0xc04ac vgarom.asm:960 + push bx ; 53 ; 0xc04ad vgarom.asm:961 + push dx ; 52 ; 0xc04ae vgarom.asm:962 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc04af vgarom.asm:963 + and dl, 001h ; 80 e2 01 ; 0xc04b1 vgarom.asm:964 + sal dl, 003h ; c0 e2 03 ; 0xc04b4 vgarom.asm:966 + mov ax, strict word 00040h ; b8 40 00 ; 0xc04b7 vgarom.asm:972 + mov ds, ax ; 8e d8 ; 0xc04ba vgarom.asm:973 + mov bx, 00089h ; bb 89 00 ; 0xc04bc vgarom.asm:974 + mov al, byte [bx] ; 8a 07 ; 0xc04bf vgarom.asm:975 + and AL, strict byte 0f7h ; 24 f7 ; 0xc04c1 vgarom.asm:976 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc04c3 vgarom.asm:977 + mov byte [bx], al ; 88 07 ; 0xc04c5 vgarom.asm:978 + mov ax, 01212h ; b8 12 12 ; 0xc04c7 vgarom.asm:979 + pop dx ; 5a ; 0xc04ca vgarom.asm:980 + pop bx ; 5b ; 0xc04cb vgarom.asm:981 + pop DS ; 1f ; 0xc04cc vgarom.asm:982 + retn ; c3 ; 0xc04cd vgarom.asm:983 + push bx ; 53 ; 0xc04ce vgarom.asm:987 + push dx ; 52 ; 0xc04cf vgarom.asm:988 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc04d0 vgarom.asm:989 + and bl, 001h ; 80 e3 01 ; 0xc04d2 vgarom.asm:990 + xor bl, 001h ; 80 f3 01 ; 0xc04d5 vgarom.asm:991 + sal bl, 1 ; d0 e3 ; 0xc04d8 vgarom.asm:992 + mov dx, 003cch ; ba cc 03 ; 0xc04da vgarom.asm:993 + in AL, DX ; ec ; 0xc04dd vgarom.asm:994 + and AL, strict byte 0fdh ; 24 fd ; 0xc04de vgarom.asm:995 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc04e0 vgarom.asm:996 + mov dx, 003c2h ; ba c2 03 ; 0xc04e2 vgarom.asm:997 + out DX, AL ; ee ; 0xc04e5 vgarom.asm:998 + mov ax, 01212h ; b8 12 12 ; 0xc04e6 vgarom.asm:999 + pop dx ; 5a ; 0xc04e9 vgarom.asm:1000 + pop bx ; 5b ; 0xc04ea vgarom.asm:1001 + retn ; c3 ; 0xc04eb vgarom.asm:1002 + push DS ; 1e ; 0xc04ec vgarom.asm:1006 + push bx ; 53 ; 0xc04ed vgarom.asm:1007 + push dx ; 52 ; 0xc04ee vgarom.asm:1008 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc04ef vgarom.asm:1009 + and dl, 001h ; 80 e2 01 ; 0xc04f1 vgarom.asm:1010 + xor dl, 001h ; 80 f2 01 ; 0xc04f4 vgarom.asm:1011 + sal dl, 1 ; d0 e2 ; 0xc04f7 vgarom.asm:1012 + mov ax, strict word 00040h ; b8 40 00 ; 0xc04f9 vgarom.asm:1013 + mov ds, ax ; 8e d8 ; 0xc04fc vgarom.asm:1014 + mov bx, 00089h ; bb 89 00 ; 0xc04fe vgarom.asm:1015 + mov al, byte [bx] ; 8a 07 ; 0xc0501 vgarom.asm:1016 + and AL, strict byte 0fdh ; 24 fd ; 0xc0503 vgarom.asm:1017 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc0505 vgarom.asm:1018 + mov byte [bx], al ; 88 07 ; 0xc0507 vgarom.asm:1019 + mov ax, 01212h ; b8 12 12 ; 0xc0509 vgarom.asm:1020 + pop dx ; 5a ; 0xc050c vgarom.asm:1021 + pop bx ; 5b ; 0xc050d vgarom.asm:1022 + pop DS ; 1f ; 0xc050e vgarom.asm:1023 + retn ; c3 ; 0xc050f vgarom.asm:1024 + push DS ; 1e ; 0xc0510 vgarom.asm:1028 + push bx ; 53 ; 0xc0511 vgarom.asm:1029 + push dx ; 52 ; 0xc0512 vgarom.asm:1030 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc0513 vgarom.asm:1031 + and dl, 001h ; 80 e2 01 ; 0xc0515 vgarom.asm:1032 + xor dl, 001h ; 80 f2 01 ; 0xc0518 vgarom.asm:1033 + mov ax, strict word 00040h ; b8 40 00 ; 0xc051b vgarom.asm:1034 + mov ds, ax ; 8e d8 ; 0xc051e vgarom.asm:1035 + mov bx, 00089h ; bb 89 00 ; 0xc0520 vgarom.asm:1036 + mov al, byte [bx] ; 8a 07 ; 0xc0523 vgarom.asm:1037 + and AL, strict byte 0feh ; 24 fe ; 0xc0525 vgarom.asm:1038 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc0527 vgarom.asm:1039 + mov byte [bx], al ; 88 07 ; 0xc0529 vgarom.asm:1040 + mov ax, 01212h ; b8 12 12 ; 0xc052b vgarom.asm:1041 + pop dx ; 5a ; 0xc052e vgarom.asm:1042 + pop bx ; 5b ; 0xc052f vgarom.asm:1043 + pop DS ; 1f ; 0xc0530 vgarom.asm:1044 + retn ; c3 ; 0xc0531 vgarom.asm:1045 + cmp AL, strict byte 000h ; 3c 00 ; 0xc0532 vgarom.asm:1050 + je short 0053bh ; 74 05 ; 0xc0534 vgarom.asm:1051 + cmp AL, strict byte 001h ; 3c 01 ; 0xc0536 vgarom.asm:1052 + je short 00550h ; 74 16 ; 0xc0538 vgarom.asm:1053 + retn ; c3 ; 0xc053a vgarom.asm:1057 + push DS ; 1e ; 0xc053b vgarom.asm:1059 + push ax ; 50 ; 0xc053c vgarom.asm:1060 + mov ax, strict word 00040h ; b8 40 00 ; 0xc053d vgarom.asm:1061 + mov ds, ax ; 8e d8 ; 0xc0540 vgarom.asm:1062 + mov bx, 0008ah ; bb 8a 00 ; 0xc0542 vgarom.asm:1063 + mov al, byte [bx] ; 8a 07 ; 0xc0545 vgarom.asm:1064 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc0547 vgarom.asm:1065 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc0549 vgarom.asm:1066 + pop ax ; 58 ; 0xc054b vgarom.asm:1067 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc054c vgarom.asm:1068 + pop DS ; 1f ; 0xc054e vgarom.asm:1069 + retn ; c3 ; 0xc054f vgarom.asm:1070 + push DS ; 1e ; 0xc0550 vgarom.asm:1072 + push ax ; 50 ; 0xc0551 vgarom.asm:1073 + push bx ; 53 ; 0xc0552 vgarom.asm:1074 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0553 vgarom.asm:1075 + mov ds, ax ; 8e d8 ; 0xc0556 vgarom.asm:1076 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc0558 vgarom.asm:1077 + mov bx, 0008ah ; bb 8a 00 ; 0xc055a vgarom.asm:1078 + mov byte [bx], al ; 88 07 ; 0xc055d vgarom.asm:1079 + pop bx ; 5b ; 0xc055f vgarom.asm:1089 + pop ax ; 58 ; 0xc0560 vgarom.asm:1090 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc0561 vgarom.asm:1091 + pop DS ; 1f ; 0xc0563 vgarom.asm:1092 + retn ; c3 ; 0xc0564 vgarom.asm:1093 + times 0xb db 0 + ; disGetNextSymbol 0xc0570 LB 0x38a -> off=0x0 cb=0000000000000007 uValue=00000000000c0570 'do_out_dx_ax' +do_out_dx_ax: ; 0xc0570 LB 0x7 + xchg ah, al ; 86 c4 ; 0xc0570 vberom.asm:69 + out DX, AL ; ee ; 0xc0572 vberom.asm:70 + xchg ah, al ; 86 c4 ; 0xc0573 vberom.asm:71 + out DX, AL ; ee ; 0xc0575 vberom.asm:72 + retn ; c3 ; 0xc0576 vberom.asm:73 + ; disGetNextSymbol 0xc0577 LB 0x383 -> off=0x0 cb=0000000000000040 uValue=00000000000c0577 'do_in_ax_dx' +do_in_ax_dx: ; 0xc0577 LB 0x40 + in AL, DX ; ec ; 0xc0577 vberom.asm:76 + xchg ah, al ; 86 c4 ; 0xc0578 vberom.asm:77 + in AL, DX ; ec ; 0xc057a vberom.asm:78 + retn ; c3 ; 0xc057b vberom.asm:79 + push ax ; 50 ; 0xc057c vberom.asm:90 + push dx ; 52 ; 0xc057d vberom.asm:91 + mov dx, 003dah ; ba da 03 ; 0xc057e vberom.asm:92 + in AL, DX ; ec ; 0xc0581 vberom.asm:94 + test AL, strict byte 008h ; a8 08 ; 0xc0582 vberom.asm:95 + je short 00581h ; 74 fb ; 0xc0584 vberom.asm:96 + pop dx ; 5a ; 0xc0586 vberom.asm:97 + pop ax ; 58 ; 0xc0587 vberom.asm:98 + retn ; c3 ; 0xc0588 vberom.asm:99 + push ax ; 50 ; 0xc0589 vberom.asm:102 + push dx ; 52 ; 0xc058a vberom.asm:103 + mov dx, 003dah ; ba da 03 ; 0xc058b vberom.asm:104 + in AL, DX ; ec ; 0xc058e vberom.asm:106 + test AL, strict byte 008h ; a8 08 ; 0xc058f vberom.asm:107 + jne short 0058eh ; 75 fb ; 0xc0591 vberom.asm:108 + pop dx ; 5a ; 0xc0593 vberom.asm:109 + pop ax ; 58 ; 0xc0594 vberom.asm:110 + retn ; c3 ; 0xc0595 vberom.asm:111 + push dx ; 52 ; 0xc0596 vberom.asm:116 + mov dx, 001ceh ; ba ce 01 ; 0xc0597 vberom.asm:117 + mov ax, strict word 00003h ; b8 03 00 ; 0xc059a vberom.asm:118 + call 00570h ; e8 d0 ff ; 0xc059d vberom.asm:119 + mov dx, 001cfh ; ba cf 01 ; 0xc05a0 vberom.asm:120 + call 00577h ; e8 d1 ff ; 0xc05a3 vberom.asm:121 + cmp AL, strict byte 004h ; 3c 04 ; 0xc05a6 vberom.asm:122 + jbe short 005b5h ; 76 0b ; 0xc05a8 vberom.asm:123 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc05aa vberom.asm:124 + shr ah, 003h ; c0 ec 03 ; 0xc05ac vberom.asm:126 + test AL, strict byte 007h ; a8 07 ; 0xc05af vberom.asm:132 + je short 005b5h ; 74 02 ; 0xc05b1 vberom.asm:133 + db 0feh, 0c4h + ; inc ah ; fe c4 ; 0xc05b3 vberom.asm:134 + pop dx ; 5a ; 0xc05b5 vberom.asm:136 + retn ; c3 ; 0xc05b6 vberom.asm:137 + ; disGetNextSymbol 0xc05b7 LB 0x343 -> off=0x0 cb=0000000000000026 uValue=00000000000c05b7 '_dispi_get_max_bpp' +_dispi_get_max_bpp: ; 0xc05b7 LB 0x26 + push dx ; 52 ; 0xc05b7 vberom.asm:142 + push bx ; 53 ; 0xc05b8 vberom.asm:143 + call 005f1h ; e8 35 00 ; 0xc05b9 vberom.asm:144 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc05bc vberom.asm:145 + or ax, strict byte 00002h ; 83 c8 02 ; 0xc05be vberom.asm:146 + call 005ddh ; e8 19 00 ; 0xc05c1 vberom.asm:147 + mov dx, 001ceh ; ba ce 01 ; 0xc05c4 vberom.asm:148 + mov ax, strict word 00003h ; b8 03 00 ; 0xc05c7 vberom.asm:149 + call 00570h ; e8 a3 ff ; 0xc05ca vberom.asm:150 + mov dx, 001cfh ; ba cf 01 ; 0xc05cd vberom.asm:151 + call 00577h ; e8 a4 ff ; 0xc05d0 vberom.asm:152 + push ax ; 50 ; 0xc05d3 vberom.asm:153 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc05d4 vberom.asm:154 + call 005ddh ; e8 04 00 ; 0xc05d6 vberom.asm:155 + pop ax ; 58 ; 0xc05d9 vberom.asm:156 + pop bx ; 5b ; 0xc05da vberom.asm:157 + pop dx ; 5a ; 0xc05db vberom.asm:158 + retn ; c3 ; 0xc05dc vberom.asm:159 + ; disGetNextSymbol 0xc05dd LB 0x31d -> off=0x0 cb=0000000000000026 uValue=00000000000c05dd 'dispi_set_enable_' +dispi_set_enable_: ; 0xc05dd LB 0x26 + push dx ; 52 ; 0xc05dd vberom.asm:162 + push ax ; 50 ; 0xc05de vberom.asm:163 + mov dx, 001ceh ; ba ce 01 ; 0xc05df vberom.asm:164 + mov ax, strict word 00004h ; b8 04 00 ; 0xc05e2 vberom.asm:165 + call 00570h ; e8 88 ff ; 0xc05e5 vberom.asm:166 + pop ax ; 58 ; 0xc05e8 vberom.asm:167 + mov dx, 001cfh ; ba cf 01 ; 0xc05e9 vberom.asm:168 + call 00570h ; e8 81 ff ; 0xc05ec vberom.asm:169 + pop dx ; 5a ; 0xc05ef vberom.asm:170 + retn ; c3 ; 0xc05f0 vberom.asm:171 + push dx ; 52 ; 0xc05f1 vberom.asm:174 + mov dx, 001ceh ; ba ce 01 ; 0xc05f2 vberom.asm:175 + mov ax, strict word 00004h ; b8 04 00 ; 0xc05f5 vberom.asm:176 + call 00570h ; e8 75 ff ; 0xc05f8 vberom.asm:177 + mov dx, 001cfh ; ba cf 01 ; 0xc05fb vberom.asm:178 + call 00577h ; e8 76 ff ; 0xc05fe vberom.asm:179 + pop dx ; 5a ; 0xc0601 vberom.asm:180 + retn ; c3 ; 0xc0602 vberom.asm:181 + ; disGetNextSymbol 0xc0603 LB 0x2f7 -> off=0x0 cb=0000000000000026 uValue=00000000000c0603 'dispi_set_bank_' +dispi_set_bank_: ; 0xc0603 LB 0x26 + push dx ; 52 ; 0xc0603 vberom.asm:184 + push ax ; 50 ; 0xc0604 vberom.asm:185 + mov dx, 001ceh ; ba ce 01 ; 0xc0605 vberom.asm:186 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0608 vberom.asm:187 + call 00570h ; e8 62 ff ; 0xc060b vberom.asm:188 + pop ax ; 58 ; 0xc060e vberom.asm:189 + mov dx, 001cfh ; ba cf 01 ; 0xc060f vberom.asm:190 + call 00570h ; e8 5b ff ; 0xc0612 vberom.asm:191 + pop dx ; 5a ; 0xc0615 vberom.asm:192 + retn ; c3 ; 0xc0616 vberom.asm:193 + push dx ; 52 ; 0xc0617 vberom.asm:196 + mov dx, 001ceh ; ba ce 01 ; 0xc0618 vberom.asm:197 + mov ax, strict word 00005h ; b8 05 00 ; 0xc061b vberom.asm:198 + call 00570h ; e8 4f ff ; 0xc061e vberom.asm:199 + mov dx, 001cfh ; ba cf 01 ; 0xc0621 vberom.asm:200 + call 00577h ; e8 50 ff ; 0xc0624 vberom.asm:201 + pop dx ; 5a ; 0xc0627 vberom.asm:202 + retn ; c3 ; 0xc0628 vberom.asm:203 + ; disGetNextSymbol 0xc0629 LB 0x2d1 -> off=0x0 cb=00000000000000a9 uValue=00000000000c0629 '_dispi_set_bank_farcall' +_dispi_set_bank_farcall: ; 0xc0629 LB 0xa9 + cmp bx, 00100h ; 81 fb 00 01 ; 0xc0629 vberom.asm:206 + je short 00653h ; 74 24 ; 0xc062d vberom.asm:207 + db 00bh, 0dbh + ; or bx, bx ; 0b db ; 0xc062f vberom.asm:208 + jne short 00665h ; 75 32 ; 0xc0631 vberom.asm:209 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc0633 vberom.asm:210 + push dx ; 52 ; 0xc0635 vberom.asm:211 + push ax ; 50 ; 0xc0636 vberom.asm:212 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0637 vberom.asm:213 + mov dx, 001ceh ; ba ce 01 ; 0xc063a vberom.asm:214 + call 00570h ; e8 30 ff ; 0xc063d vberom.asm:215 + pop ax ; 58 ; 0xc0640 vberom.asm:216 + mov dx, 001cfh ; ba cf 01 ; 0xc0641 vberom.asm:217 + call 00570h ; e8 29 ff ; 0xc0644 vberom.asm:218 + call 00577h ; e8 2d ff ; 0xc0647 vberom.asm:219 + pop dx ; 5a ; 0xc064a vberom.asm:220 + db 03bh, 0d0h + ; cmp dx, ax ; 3b d0 ; 0xc064b vberom.asm:221 + jne short 00665h ; 75 16 ; 0xc064d vberom.asm:222 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc064f vberom.asm:223 + retf ; cb ; 0xc0652 vberom.asm:224 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0653 vberom.asm:226 + mov dx, 001ceh ; ba ce 01 ; 0xc0656 vberom.asm:227 + call 00570h ; e8 14 ff ; 0xc0659 vberom.asm:228 + mov dx, 001cfh ; ba cf 01 ; 0xc065c vberom.asm:229 + call 00577h ; e8 15 ff ; 0xc065f vberom.asm:230 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc0662 vberom.asm:231 + retf ; cb ; 0xc0664 vberom.asm:232 + mov ax, 0014fh ; b8 4f 01 ; 0xc0665 vberom.asm:234 + retf ; cb ; 0xc0668 vberom.asm:235 + push dx ; 52 ; 0xc0669 vberom.asm:238 + push ax ; 50 ; 0xc066a vberom.asm:239 + mov dx, 001ceh ; ba ce 01 ; 0xc066b vberom.asm:240 + mov ax, strict word 00008h ; b8 08 00 ; 0xc066e vberom.asm:241 + call 00570h ; e8 fc fe ; 0xc0671 vberom.asm:242 + pop ax ; 58 ; 0xc0674 vberom.asm:243 + mov dx, 001cfh ; ba cf 01 ; 0xc0675 vberom.asm:244 + call 00570h ; e8 f5 fe ; 0xc0678 vberom.asm:245 + pop dx ; 5a ; 0xc067b vberom.asm:246 + retn ; c3 ; 0xc067c vberom.asm:247 + push dx ; 52 ; 0xc067d vberom.asm:250 + mov dx, 001ceh ; ba ce 01 ; 0xc067e vberom.asm:251 + mov ax, strict word 00008h ; b8 08 00 ; 0xc0681 vberom.asm:252 + call 00570h ; e8 e9 fe ; 0xc0684 vberom.asm:253 + mov dx, 001cfh ; ba cf 01 ; 0xc0687 vberom.asm:254 + call 00577h ; e8 ea fe ; 0xc068a vberom.asm:255 + pop dx ; 5a ; 0xc068d vberom.asm:256 + retn ; c3 ; 0xc068e vberom.asm:257 + push dx ; 52 ; 0xc068f vberom.asm:260 + push ax ; 50 ; 0xc0690 vberom.asm:261 + mov dx, 001ceh ; ba ce 01 ; 0xc0691 vberom.asm:262 + mov ax, strict word 00009h ; b8 09 00 ; 0xc0694 vberom.asm:263 + call 00570h ; e8 d6 fe ; 0xc0697 vberom.asm:264 + pop ax ; 58 ; 0xc069a vberom.asm:265 + mov dx, 001cfh ; ba cf 01 ; 0xc069b vberom.asm:266 + call 00570h ; e8 cf fe ; 0xc069e vberom.asm:267 + pop dx ; 5a ; 0xc06a1 vberom.asm:268 + retn ; c3 ; 0xc06a2 vberom.asm:269 + push dx ; 52 ; 0xc06a3 vberom.asm:272 + mov dx, 001ceh ; ba ce 01 ; 0xc06a4 vberom.asm:273 + mov ax, strict word 00009h ; b8 09 00 ; 0xc06a7 vberom.asm:274 + call 00570h ; e8 c3 fe ; 0xc06aa vberom.asm:275 + mov dx, 001cfh ; ba cf 01 ; 0xc06ad vberom.asm:276 + call 00577h ; e8 c4 fe ; 0xc06b0 vberom.asm:277 + pop dx ; 5a ; 0xc06b3 vberom.asm:278 + retn ; c3 ; 0xc06b4 vberom.asm:279 + push ax ; 50 ; 0xc06b5 vberom.asm:282 + push bx ; 53 ; 0xc06b6 vberom.asm:283 + push dx ; 52 ; 0xc06b7 vberom.asm:284 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc06b8 vberom.asm:285 + call 00596h ; e8 d9 fe ; 0xc06ba vberom.asm:286 + cmp AL, strict byte 004h ; 3c 04 ; 0xc06bd vberom.asm:287 + jnbe short 006c3h ; 77 02 ; 0xc06bf vberom.asm:288 + shr bx, 1 ; d1 eb ; 0xc06c1 vberom.asm:289 + shr bx, 003h ; c1 eb 03 ; 0xc06c3 vberom.asm:292 + mov dx, 003d4h ; ba d4 03 ; 0xc06c6 vberom.asm:298 + db 08ah, 0e3h + ; mov ah, bl ; 8a e3 ; 0xc06c9 vberom.asm:299 + mov AL, strict byte 013h ; b0 13 ; 0xc06cb vberom.asm:300 + out DX, ax ; ef ; 0xc06cd vberom.asm:301 + pop dx ; 5a ; 0xc06ce vberom.asm:302 + pop bx ; 5b ; 0xc06cf vberom.asm:303 + pop ax ; 58 ; 0xc06d0 vberom.asm:304 + retn ; c3 ; 0xc06d1 vberom.asm:305 + ; disGetNextSymbol 0xc06d2 LB 0x228 -> off=0x0 cb=00000000000000ed uValue=00000000000c06d2 '_vga_compat_setup' +_vga_compat_setup: ; 0xc06d2 LB 0xed + push ax ; 50 ; 0xc06d2 vberom.asm:308 + push dx ; 52 ; 0xc06d3 vberom.asm:309 + mov dx, 001ceh ; ba ce 01 ; 0xc06d4 vberom.asm:312 + mov ax, strict word 00001h ; b8 01 00 ; 0xc06d7 vberom.asm:313 + call 00570h ; e8 93 fe ; 0xc06da vberom.asm:314 + mov dx, 001cfh ; ba cf 01 ; 0xc06dd vberom.asm:315 + call 00577h ; e8 94 fe ; 0xc06e0 vberom.asm:316 + push ax ; 50 ; 0xc06e3 vberom.asm:317 + mov dx, 003d4h ; ba d4 03 ; 0xc06e4 vberom.asm:318 + mov ax, strict word 00011h ; b8 11 00 ; 0xc06e7 vberom.asm:319 + out DX, ax ; ef ; 0xc06ea vberom.asm:320 + pop ax ; 58 ; 0xc06eb vberom.asm:321 + push ax ; 50 ; 0xc06ec vberom.asm:322 + shr ax, 003h ; c1 e8 03 ; 0xc06ed vberom.asm:324 + dec ax ; 48 ; 0xc06f0 vberom.asm:330 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc06f1 vberom.asm:331 + mov AL, strict byte 001h ; b0 01 ; 0xc06f3 vberom.asm:332 + out DX, ax ; ef ; 0xc06f5 vberom.asm:333 + pop ax ; 58 ; 0xc06f6 vberom.asm:334 + call 006b5h ; e8 bb ff ; 0xc06f7 vberom.asm:335 + mov dx, 001ceh ; ba ce 01 ; 0xc06fa vberom.asm:338 + mov ax, strict word 00002h ; b8 02 00 ; 0xc06fd vberom.asm:339 + call 00570h ; e8 6d fe ; 0xc0700 vberom.asm:340 + mov dx, 001cfh ; ba cf 01 ; 0xc0703 vberom.asm:341 + call 00577h ; e8 6e fe ; 0xc0706 vberom.asm:342 + dec ax ; 48 ; 0xc0709 vberom.asm:343 + push ax ; 50 ; 0xc070a vberom.asm:344 + mov dx, 003d4h ; ba d4 03 ; 0xc070b vberom.asm:345 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc070e vberom.asm:346 + mov AL, strict byte 012h ; b0 12 ; 0xc0710 vberom.asm:347 + out DX, ax ; ef ; 0xc0712 vberom.asm:348 + pop ax ; 58 ; 0xc0713 vberom.asm:349 + mov AL, strict byte 007h ; b0 07 ; 0xc0714 vberom.asm:350 + out DX, AL ; ee ; 0xc0716 vberom.asm:351 + inc dx ; 42 ; 0xc0717 vberom.asm:352 + in AL, DX ; ec ; 0xc0718 vberom.asm:353 + and AL, strict byte 0bdh ; 24 bd ; 0xc0719 vberom.asm:354 + test ah, 001h ; f6 c4 01 ; 0xc071b vberom.asm:355 + je short 00722h ; 74 02 ; 0xc071e vberom.asm:356 + or AL, strict byte 002h ; 0c 02 ; 0xc0720 vberom.asm:357 + test ah, 002h ; f6 c4 02 ; 0xc0722 vberom.asm:359 + je short 00729h ; 74 02 ; 0xc0725 vberom.asm:360 + or AL, strict byte 040h ; 0c 40 ; 0xc0727 vberom.asm:361 + out DX, AL ; ee ; 0xc0729 vberom.asm:363 + mov dx, 003d4h ; ba d4 03 ; 0xc072a vberom.asm:366 + mov ax, strict word 00009h ; b8 09 00 ; 0xc072d vberom.asm:367 + out DX, AL ; ee ; 0xc0730 vberom.asm:368 + mov dx, 003d5h ; ba d5 03 ; 0xc0731 vberom.asm:369 + in AL, DX ; ec ; 0xc0734 vberom.asm:370 + and AL, strict byte 060h ; 24 60 ; 0xc0735 vberom.asm:371 + out DX, AL ; ee ; 0xc0737 vberom.asm:372 + mov dx, 003d4h ; ba d4 03 ; 0xc0738 vberom.asm:373 + mov AL, strict byte 017h ; b0 17 ; 0xc073b vberom.asm:374 + out DX, AL ; ee ; 0xc073d vberom.asm:375 + mov dx, 003d5h ; ba d5 03 ; 0xc073e vberom.asm:376 + in AL, DX ; ec ; 0xc0741 vberom.asm:377 + or AL, strict byte 003h ; 0c 03 ; 0xc0742 vberom.asm:378 + out DX, AL ; ee ; 0xc0744 vberom.asm:379 + mov dx, 003dah ; ba da 03 ; 0xc0745 vberom.asm:380 + in AL, DX ; ec ; 0xc0748 vberom.asm:381 + mov dx, 003c0h ; ba c0 03 ; 0xc0749 vberom.asm:382 + mov AL, strict byte 010h ; b0 10 ; 0xc074c vberom.asm:383 + out DX, AL ; ee ; 0xc074e vberom.asm:384 + mov dx, 003c1h ; ba c1 03 ; 0xc074f vberom.asm:385 + in AL, DX ; ec ; 0xc0752 vberom.asm:386 + or AL, strict byte 001h ; 0c 01 ; 0xc0753 vberom.asm:387 + mov dx, 003c0h ; ba c0 03 ; 0xc0755 vberom.asm:388 + out DX, AL ; ee ; 0xc0758 vberom.asm:389 + mov AL, strict byte 020h ; b0 20 ; 0xc0759 vberom.asm:390 + out DX, AL ; ee ; 0xc075b vberom.asm:391 + mov dx, 003ceh ; ba ce 03 ; 0xc075c vberom.asm:392 + mov ax, 00506h ; b8 06 05 ; 0xc075f vberom.asm:393 + out DX, ax ; ef ; 0xc0762 vberom.asm:394 + mov dx, 003c4h ; ba c4 03 ; 0xc0763 vberom.asm:395 + mov ax, 00f02h ; b8 02 0f ; 0xc0766 vberom.asm:396 + out DX, ax ; ef ; 0xc0769 vberom.asm:397 + mov dx, 001ceh ; ba ce 01 ; 0xc076a vberom.asm:400 + mov ax, strict word 00003h ; b8 03 00 ; 0xc076d vberom.asm:401 + call 00570h ; e8 fd fd ; 0xc0770 vberom.asm:402 + mov dx, 001cfh ; ba cf 01 ; 0xc0773 vberom.asm:403 + call 00577h ; e8 fe fd ; 0xc0776 vberom.asm:404 + cmp AL, strict byte 008h ; 3c 08 ; 0xc0779 vberom.asm:405 + jc short 007bdh ; 72 40 ; 0xc077b vberom.asm:406 + mov dx, 003d4h ; ba d4 03 ; 0xc077d vberom.asm:407 + mov AL, strict byte 014h ; b0 14 ; 0xc0780 vberom.asm:408 + out DX, AL ; ee ; 0xc0782 vberom.asm:409 + mov dx, 003d5h ; ba d5 03 ; 0xc0783 vberom.asm:410 + in AL, DX ; ec ; 0xc0786 vberom.asm:411 + or AL, strict byte 040h ; 0c 40 ; 0xc0787 vberom.asm:412 + out DX, AL ; ee ; 0xc0789 vberom.asm:413 + mov dx, 003dah ; ba da 03 ; 0xc078a vberom.asm:414 + in AL, DX ; ec ; 0xc078d vberom.asm:415 + mov dx, 003c0h ; ba c0 03 ; 0xc078e vberom.asm:416 + mov AL, strict byte 010h ; b0 10 ; 0xc0791 vberom.asm:417 + out DX, AL ; ee ; 0xc0793 vberom.asm:418 + mov dx, 003c1h ; ba c1 03 ; 0xc0794 vberom.asm:419 + in AL, DX ; ec ; 0xc0797 vberom.asm:420 + or AL, strict byte 040h ; 0c 40 ; 0xc0798 vberom.asm:421 + mov dx, 003c0h ; ba c0 03 ; 0xc079a vberom.asm:422 + out DX, AL ; ee ; 0xc079d vberom.asm:423 + mov AL, strict byte 020h ; b0 20 ; 0xc079e vberom.asm:424 + out DX, AL ; ee ; 0xc07a0 vberom.asm:425 + mov dx, 003c4h ; ba c4 03 ; 0xc07a1 vberom.asm:426 + mov AL, strict byte 004h ; b0 04 ; 0xc07a4 vberom.asm:427 + out DX, AL ; ee ; 0xc07a6 vberom.asm:428 + mov dx, 003c5h ; ba c5 03 ; 0xc07a7 vberom.asm:429 + in AL, DX ; ec ; 0xc07aa vberom.asm:430 + or AL, strict byte 008h ; 0c 08 ; 0xc07ab vberom.asm:431 + out DX, AL ; ee ; 0xc07ad vberom.asm:432 + mov dx, 003ceh ; ba ce 03 ; 0xc07ae vberom.asm:433 + mov AL, strict byte 005h ; b0 05 ; 0xc07b1 vberom.asm:434 + out DX, AL ; ee ; 0xc07b3 vberom.asm:435 + mov dx, 003cfh ; ba cf 03 ; 0xc07b4 vberom.asm:436 + in AL, DX ; ec ; 0xc07b7 vberom.asm:437 + and AL, strict byte 09fh ; 24 9f ; 0xc07b8 vberom.asm:438 + or AL, strict byte 040h ; 0c 40 ; 0xc07ba vberom.asm:439 + out DX, AL ; ee ; 0xc07bc vberom.asm:440 + pop dx ; 5a ; 0xc07bd vberom.asm:443 + pop ax ; 58 ; 0xc07be vberom.asm:444 + ; disGetNextSymbol 0xc07bf LB 0x13b -> off=0x0 cb=0000000000000013 uValue=00000000000c07bf '_vbe_has_vbe_display' +_vbe_has_vbe_display: ; 0xc07bf LB 0x13 + push DS ; 1e ; 0xc07bf vberom.asm:450 + push bx ; 53 ; 0xc07c0 vberom.asm:451 + mov ax, strict word 00040h ; b8 40 00 ; 0xc07c1 vberom.asm:452 + mov ds, ax ; 8e d8 ; 0xc07c4 vberom.asm:453 + mov bx, 000b9h ; bb b9 00 ; 0xc07c6 vberom.asm:454 + mov al, byte [bx] ; 8a 07 ; 0xc07c9 vberom.asm:455 + and AL, strict byte 001h ; 24 01 ; 0xc07cb vberom.asm:456 + db 032h, 0e4h + ; xor ah, ah ; 32 e4 ; 0xc07cd vberom.asm:457 + pop bx ; 5b ; 0xc07cf vberom.asm:458 + pop DS ; 1f ; 0xc07d0 vberom.asm:459 + retn ; c3 ; 0xc07d1 vberom.asm:460 + ; disGetNextSymbol 0xc07d2 LB 0x128 -> off=0x0 cb=0000000000000025 uValue=00000000000c07d2 'vbe_biosfn_return_current_mode' +vbe_biosfn_return_current_mode: ; 0xc07d2 LB 0x25 + push DS ; 1e ; 0xc07d2 vberom.asm:473 + mov ax, strict word 00040h ; b8 40 00 ; 0xc07d3 vberom.asm:474 + mov ds, ax ; 8e d8 ; 0xc07d6 vberom.asm:475 + call 005f1h ; e8 16 fe ; 0xc07d8 vberom.asm:476 + and ax, strict byte 00001h ; 83 e0 01 ; 0xc07db vberom.asm:477 + je short 007e9h ; 74 09 ; 0xc07de vberom.asm:478 + mov bx, 000bah ; bb ba 00 ; 0xc07e0 vberom.asm:479 + mov ax, word [bx] ; 8b 07 ; 0xc07e3 vberom.asm:480 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc07e5 vberom.asm:481 + jne short 007f2h ; 75 09 ; 0xc07e7 vberom.asm:482 + mov bx, strict word 00049h ; bb 49 00 ; 0xc07e9 vberom.asm:484 + mov al, byte [bx] ; 8a 07 ; 0xc07ec vberom.asm:485 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc07ee vberom.asm:486 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc07f0 vberom.asm:487 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc07f2 vberom.asm:489 + pop DS ; 1f ; 0xc07f5 vberom.asm:490 + retn ; c3 ; 0xc07f6 vberom.asm:491 + ; disGetNextSymbol 0xc07f7 LB 0x103 -> off=0x0 cb=000000000000002d uValue=00000000000c07f7 'vbe_biosfn_display_window_control' +vbe_biosfn_display_window_control: ; 0xc07f7 LB 0x2d + cmp bl, 000h ; 80 fb 00 ; 0xc07f7 vberom.asm:515 + jne short 00820h ; 75 24 ; 0xc07fa vberom.asm:516 + cmp bh, 001h ; 80 ff 01 ; 0xc07fc vberom.asm:517 + je short 00817h ; 74 16 ; 0xc07ff vberom.asm:518 + jc short 00807h ; 72 04 ; 0xc0801 vberom.asm:519 + mov ax, 00100h ; b8 00 01 ; 0xc0803 vberom.asm:520 + retn ; c3 ; 0xc0806 vberom.asm:521 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc0807 vberom.asm:523 + call 00603h ; e8 f7 fd ; 0xc0809 vberom.asm:524 + call 00617h ; e8 08 fe ; 0xc080c vberom.asm:525 + db 03bh, 0c2h + ; cmp ax, dx ; 3b c2 ; 0xc080f vberom.asm:526 + jne short 00820h ; 75 0d ; 0xc0811 vberom.asm:527 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0813 vberom.asm:528 + retn ; c3 ; 0xc0816 vberom.asm:529 + call 00617h ; e8 fd fd ; 0xc0817 vberom.asm:531 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc081a vberom.asm:532 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc081c vberom.asm:533 + retn ; c3 ; 0xc081f vberom.asm:534 + mov ax, 0014fh ; b8 4f 01 ; 0xc0820 vberom.asm:536 + retn ; c3 ; 0xc0823 vberom.asm:537 + ; disGetNextSymbol 0xc0824 LB 0xd6 -> off=0x0 cb=0000000000000034 uValue=00000000000c0824 'vbe_biosfn_set_get_display_start' +vbe_biosfn_set_get_display_start: ; 0xc0824 LB 0x34 + cmp bl, 080h ; 80 fb 80 ; 0xc0824 vberom.asm:577 + je short 00834h ; 74 0b ; 0xc0827 vberom.asm:578 + cmp bl, 001h ; 80 fb 01 ; 0xc0829 vberom.asm:579 + je short 00848h ; 74 1a ; 0xc082c vberom.asm:580 + jc short 0083ah ; 72 0a ; 0xc082e vberom.asm:581 + mov ax, 00100h ; b8 00 01 ; 0xc0830 vberom.asm:582 + retn ; c3 ; 0xc0833 vberom.asm:583 + call 00589h ; e8 52 fd ; 0xc0834 vberom.asm:585 + call 0057ch ; e8 42 fd ; 0xc0837 vberom.asm:586 + db 08bh, 0c1h + ; mov ax, cx ; 8b c1 ; 0xc083a vberom.asm:588 + call 00669h ; e8 2a fe ; 0xc083c vberom.asm:589 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc083f vberom.asm:590 + call 0068fh ; e8 4b fe ; 0xc0841 vberom.asm:591 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0844 vberom.asm:592 + retn ; c3 ; 0xc0847 vberom.asm:593 + call 0067dh ; e8 32 fe ; 0xc0848 vberom.asm:595 + db 08bh, 0c8h + ; mov cx, ax ; 8b c8 ; 0xc084b vberom.asm:596 + call 006a3h ; e8 53 fe ; 0xc084d vberom.asm:597 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc0850 vberom.asm:598 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc0852 vberom.asm:599 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0854 vberom.asm:600 + retn ; c3 ; 0xc0857 vberom.asm:601 + ; disGetNextSymbol 0xc0858 LB 0xa2 -> off=0x0 cb=0000000000000037 uValue=00000000000c0858 'vbe_biosfn_set_get_dac_palette_format' +vbe_biosfn_set_get_dac_palette_format: ; 0xc0858 LB 0x37 + cmp bl, 001h ; 80 fb 01 ; 0xc0858 vberom.asm:616 + je short 0087bh ; 74 1e ; 0xc085b vberom.asm:617 + jc short 00863h ; 72 04 ; 0xc085d vberom.asm:618 + mov ax, 00100h ; b8 00 01 ; 0xc085f vberom.asm:619 + retn ; c3 ; 0xc0862 vberom.asm:620 + call 005f1h ; e8 8b fd ; 0xc0863 vberom.asm:622 + cmp bh, 006h ; 80 ff 06 ; 0xc0866 vberom.asm:623 + je short 00875h ; 74 0a ; 0xc0869 vberom.asm:624 + cmp bh, 008h ; 80 ff 08 ; 0xc086b vberom.asm:625 + jne short 0088bh ; 75 1b ; 0xc086e vberom.asm:626 + or ax, strict byte 00020h ; 83 c8 20 ; 0xc0870 vberom.asm:627 + jne short 00878h ; 75 03 ; 0xc0873 vberom.asm:628 + and ax, strict byte 0ffdfh ; 83 e0 df ; 0xc0875 vberom.asm:630 + call 005ddh ; e8 62 fd ; 0xc0878 vberom.asm:632 + mov BH, strict byte 006h ; b7 06 ; 0xc087b vberom.asm:634 + call 005f1h ; e8 71 fd ; 0xc087d vberom.asm:635 + and ax, strict byte 00020h ; 83 e0 20 ; 0xc0880 vberom.asm:636 + je short 00887h ; 74 02 ; 0xc0883 vberom.asm:637 + mov BH, strict byte 008h ; b7 08 ; 0xc0885 vberom.asm:638 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0887 vberom.asm:640 + retn ; c3 ; 0xc088a vberom.asm:641 + mov ax, 0014fh ; b8 4f 01 ; 0xc088b vberom.asm:643 + retn ; c3 ; 0xc088e vberom.asm:644 + ; disGetNextSymbol 0xc088f LB 0x6b -> off=0x0 cb=0000000000000057 uValue=00000000000c088f 'vbe_biosfn_set_get_palette_data' +vbe_biosfn_set_get_palette_data: ; 0xc088f LB 0x57 + test bl, bl ; 84 db ; 0xc088f vberom.asm:683 + je short 008a2h ; 74 0f ; 0xc0891 vberom.asm:684 + cmp bl, 001h ; 80 fb 01 ; 0xc0893 vberom.asm:685 + je short 008c2h ; 74 2a ; 0xc0896 vberom.asm:686 + cmp bl, 003h ; 80 fb 03 ; 0xc0898 vberom.asm:687 + jbe short 008e2h ; 76 45 ; 0xc089b vberom.asm:688 + cmp bl, 080h ; 80 fb 80 ; 0xc089d vberom.asm:689 + jne short 008deh ; 75 3c ; 0xc08a0 vberom.asm:690 + pushaw ; 60 ; 0xc08a2 vberom.asm:143 + push DS ; 1e ; 0xc08a3 vberom.asm:696 + push ES ; 06 ; 0xc08a4 vberom.asm:697 + pop DS ; 1f ; 0xc08a5 vberom.asm:698 + db 08ah, 0c2h + ; mov al, dl ; 8a c2 ; 0xc08a6 vberom.asm:699 + mov dx, 003c8h ; ba c8 03 ; 0xc08a8 vberom.asm:700 + out DX, AL ; ee ; 0xc08ab vberom.asm:701 + inc dx ; 42 ; 0xc08ac vberom.asm:702 + db 08bh, 0f7h + ; mov si, di ; 8b f7 ; 0xc08ad vberom.asm:703 + lodsw ; ad ; 0xc08af vberom.asm:714 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc08b0 vberom.asm:715 + lodsw ; ad ; 0xc08b2 vberom.asm:716 + out DX, AL ; ee ; 0xc08b3 vberom.asm:717 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc08b4 vberom.asm:718 + out DX, AL ; ee ; 0xc08b6 vberom.asm:719 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc08b7 vberom.asm:720 + out DX, AL ; ee ; 0xc08b9 vberom.asm:721 + loop 008afh ; e2 f3 ; 0xc08ba vberom.asm:723 + pop DS ; 1f ; 0xc08bc vberom.asm:724 + popaw ; 61 ; 0xc08bd vberom.asm:162 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc08be vberom.asm:727 + retn ; c3 ; 0xc08c1 vberom.asm:728 + pushaw ; 60 ; 0xc08c2 vberom.asm:143 + db 08ah, 0c2h + ; mov al, dl ; 8a c2 ; 0xc08c3 vberom.asm:732 + mov dx, 003c7h ; ba c7 03 ; 0xc08c5 vberom.asm:733 + out DX, AL ; ee ; 0xc08c8 vberom.asm:734 + add dl, 002h ; 80 c2 02 ; 0xc08c9 vberom.asm:735 + db 033h, 0dbh + ; xor bx, bx ; 33 db ; 0xc08cc vberom.asm:746 + in AL, DX ; ec ; 0xc08ce vberom.asm:748 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc08cf vberom.asm:749 + in AL, DX ; ec ; 0xc08d1 vberom.asm:750 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc08d2 vberom.asm:751 + in AL, DX ; ec ; 0xc08d4 vberom.asm:752 + stosw ; ab ; 0xc08d5 vberom.asm:753 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc08d6 vberom.asm:754 + stosw ; ab ; 0xc08d8 vberom.asm:755 + loop 008ceh ; e2 f3 ; 0xc08d9 vberom.asm:757 + popaw ; 61 ; 0xc08db vberom.asm:162 + jmp short 008beh ; eb e0 ; 0xc08dc vberom.asm:759 + mov ax, 0014fh ; b8 4f 01 ; 0xc08de vberom.asm:762 + retn ; c3 ; 0xc08e1 vberom.asm:763 + mov ax, 0024fh ; b8 4f 02 ; 0xc08e2 vberom.asm:765 + retn ; c3 ; 0xc08e5 vberom.asm:766 + ; disGetNextSymbol 0xc08e6 LB 0x14 -> off=0x0 cb=0000000000000014 uValue=00000000000c08e6 'vbe_biosfn_return_protected_mode_interface' +vbe_biosfn_return_protected_mode_interface: ; 0xc08e6 LB 0x14 + test bl, bl ; 84 db ; 0xc08e6 vberom.asm:780 + jne short 008f6h ; 75 0c ; 0xc08e8 vberom.asm:781 + push CS ; 0e ; 0xc08ea vberom.asm:782 + pop ES ; 07 ; 0xc08eb vberom.asm:783 + mov di, 04640h ; bf 40 46 ; 0xc08ec vberom.asm:784 + mov cx, 00115h ; b9 15 01 ; 0xc08ef vberom.asm:785 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc08f2 vberom.asm:786 + retn ; c3 ; 0xc08f5 vberom.asm:787 + mov ax, 0014fh ; b8 4f 01 ; 0xc08f6 vberom.asm:789 + retn ; c3 ; 0xc08f9 vberom.asm:790 + + ; Padding 0xf6 bytes at 0xc08fa + times 246 db 0 + +section _TEXT progbits vstart=0x9f0 align=1 ; size=0x3b42 class=CODE group=AUTO + ; disGetNextSymbol 0xc09f0 LB 0x3b42 -> off=0x0 cb=000000000000001b uValue=00000000000c09f0 'set_int_vector' +set_int_vector: ; 0xc09f0 LB 0x1b + push dx ; 52 ; 0xc09f0 vgabios.c:87 + push bp ; 55 ; 0xc09f1 + mov bp, sp ; 89 e5 ; 0xc09f2 + mov dx, bx ; 89 da ; 0xc09f4 + mov bl, al ; 88 c3 ; 0xc09f6 vgabios.c:91 + xor bh, bh ; 30 ff ; 0xc09f8 + sal bx, 002h ; c1 e3 02 ; 0xc09fa + xor ax, ax ; 31 c0 ; 0xc09fd + mov es, ax ; 8e c0 ; 0xc09ff + mov word [es:bx], dx ; 26 89 17 ; 0xc0a01 + mov word [es:bx+002h], cx ; 26 89 4f 02 ; 0xc0a04 + pop bp ; 5d ; 0xc0a08 vgabios.c:92 + pop dx ; 5a ; 0xc0a09 + retn ; c3 ; 0xc0a0a + ; disGetNextSymbol 0xc0a0b LB 0x3b27 -> off=0x0 cb=000000000000001c uValue=00000000000c0a0b 'init_vga_card' +init_vga_card: ; 0xc0a0b LB 0x1c + push bp ; 55 ; 0xc0a0b vgabios.c:143 + mov bp, sp ; 89 e5 ; 0xc0a0c + push dx ; 52 ; 0xc0a0e + mov AL, strict byte 0c3h ; b0 c3 ; 0xc0a0f vgabios.c:146 + mov dx, 003c2h ; ba c2 03 ; 0xc0a11 + out DX, AL ; ee ; 0xc0a14 + mov AL, strict byte 004h ; b0 04 ; 0xc0a15 vgabios.c:149 + mov dx, 003c4h ; ba c4 03 ; 0xc0a17 + out DX, AL ; ee ; 0xc0a1a + mov AL, strict byte 002h ; b0 02 ; 0xc0a1b vgabios.c:150 + mov dx, 003c5h ; ba c5 03 ; 0xc0a1d + out DX, AL ; ee ; 0xc0a20 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc0a21 vgabios.c:155 + pop dx ; 5a ; 0xc0a24 + pop bp ; 5d ; 0xc0a25 + retn ; c3 ; 0xc0a26 + ; disGetNextSymbol 0xc0a27 LB 0x3b0b -> off=0x0 cb=000000000000003e uValue=00000000000c0a27 'init_bios_area' +init_bios_area: ; 0xc0a27 LB 0x3e + push bx ; 53 ; 0xc0a27 vgabios.c:221 + push bp ; 55 ; 0xc0a28 + mov bp, sp ; 89 e5 ; 0xc0a29 + xor bx, bx ; 31 db ; 0xc0a2b vgabios.c:225 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0a2d + mov es, ax ; 8e c0 ; 0xc0a30 + mov al, byte [es:bx+010h] ; 26 8a 47 10 ; 0xc0a32 vgabios.c:228 + and AL, strict byte 0cfh ; 24 cf ; 0xc0a36 + or AL, strict byte 020h ; 0c 20 ; 0xc0a38 + mov byte [es:bx+010h], al ; 26 88 47 10 ; 0xc0a3a + mov byte [es:bx+00085h], 010h ; 26 c6 87 85 00 10 ; 0xc0a3e vgabios.c:232 + mov word [es:bx+00087h], 0f960h ; 26 c7 87 87 00 60 f9 ; 0xc0a44 vgabios.c:234 + mov byte [es:bx+00089h], 051h ; 26 c6 87 89 00 51 ; 0xc0a4b vgabios.c:238 + mov byte [es:bx+065h], 009h ; 26 c6 47 65 09 ; 0xc0a51 vgabios.c:240 + mov word [es:bx+000a8h], 05551h ; 26 c7 87 a8 00 51 55 ; 0xc0a56 vgabios.c:242 + mov [es:bx+000aah], ds ; 26 8c 9f aa 00 ; 0xc0a5d + pop bp ; 5d ; 0xc0a62 vgabios.c:243 + pop bx ; 5b ; 0xc0a63 + retn ; c3 ; 0xc0a64 + ; disGetNextSymbol 0xc0a65 LB 0x3acd -> off=0x0 cb=0000000000000031 uValue=00000000000c0a65 'vgabios_init_func' +vgabios_init_func: ; 0xc0a65 LB 0x31 + inc bp ; 45 ; 0xc0a65 vgabios.c:250 + push bp ; 55 ; 0xc0a66 + mov bp, sp ; 89 e5 ; 0xc0a67 + call 00a0bh ; e8 9f ff ; 0xc0a69 vgabios.c:252 + call 00a27h ; e8 b8 ff ; 0xc0a6c vgabios.c:253 + call 03each ; e8 3a 34 ; 0xc0a6f vgabios.c:255 + mov bx, strict word 00028h ; bb 28 00 ; 0xc0a72 vgabios.c:257 + mov cx, 0c000h ; b9 00 c0 ; 0xc0a75 + mov ax, strict word 00010h ; b8 10 00 ; 0xc0a78 + call 009f0h ; e8 72 ff ; 0xc0a7b + mov bx, strict word 00028h ; bb 28 00 ; 0xc0a7e vgabios.c:258 + mov cx, 0c000h ; b9 00 c0 ; 0xc0a81 + mov ax, strict word 0006dh ; b8 6d 00 ; 0xc0a84 + call 009f0h ; e8 66 ff ; 0xc0a87 + mov ax, strict word 00003h ; b8 03 00 ; 0xc0a8a vgabios.c:284 + db 032h, 0e4h + ; xor ah, ah ; 32 e4 ; 0xc0a8d + int 010h ; cd 10 ; 0xc0a8f + mov sp, bp ; 89 ec ; 0xc0a91 vgabios.c:287 + pop bp ; 5d ; 0xc0a93 + dec bp ; 4d ; 0xc0a94 + retf ; cb ; 0xc0a95 + ; disGetNextSymbol 0xc0a96 LB 0x3a9c -> off=0x0 cb=0000000000000040 uValue=00000000000c0a96 'vga_get_cursor_pos' +vga_get_cursor_pos: ; 0xc0a96 LB 0x40 + push si ; 56 ; 0xc0a96 vgabios.c:356 + push di ; 57 ; 0xc0a97 + push bp ; 55 ; 0xc0a98 + mov bp, sp ; 89 e5 ; 0xc0a99 + mov si, dx ; 89 d6 ; 0xc0a9b + cmp AL, strict byte 007h ; 3c 07 ; 0xc0a9d vgabios.c:358 + jbe short 00aafh ; 76 0e ; 0xc0a9f + push SS ; 16 ; 0xc0aa1 vgabios.c:359 + pop ES ; 07 ; 0xc0aa2 + mov word [es:si], strict word 00000h ; 26 c7 04 00 00 ; 0xc0aa3 + mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xc0aa8 vgabios.c:360 + jmp short 00ad2h ; eb 23 ; 0xc0aad vgabios.c:361 + mov di, strict word 00060h ; bf 60 00 ; 0xc0aaf vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc0ab2 + mov es, dx ; 8e c2 ; 0xc0ab5 + mov di, word [es:di] ; 26 8b 3d ; 0xc0ab7 + push SS ; 16 ; 0xc0aba vgabios.c:58 + pop ES ; 07 ; 0xc0abb + mov word [es:si], di ; 26 89 3c ; 0xc0abc + xor ah, ah ; 30 e4 ; 0xc0abf vgabios.c:364 + mov si, ax ; 89 c6 ; 0xc0ac1 + add si, ax ; 01 c6 ; 0xc0ac3 + add si, strict byte 00050h ; 83 c6 50 ; 0xc0ac5 + mov es, dx ; 8e c2 ; 0xc0ac8 vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc0aca + push SS ; 16 ; 0xc0acd vgabios.c:58 + pop ES ; 07 ; 0xc0ace + mov word [es:bx], ax ; 26 89 07 ; 0xc0acf + pop bp ; 5d ; 0xc0ad2 vgabios.c:366 + pop di ; 5f ; 0xc0ad3 + pop si ; 5e ; 0xc0ad4 + retn ; c3 ; 0xc0ad5 + ; disGetNextSymbol 0xc0ad6 LB 0x3a5c -> off=0x0 cb=000000000000005e uValue=00000000000c0ad6 'vga_find_glyph' +vga_find_glyph: ; 0xc0ad6 LB 0x5e + push bp ; 55 ; 0xc0ad6 vgabios.c:369 + mov bp, sp ; 89 e5 ; 0xc0ad7 + push si ; 56 ; 0xc0ad9 + push di ; 57 ; 0xc0ada + push ax ; 50 ; 0xc0adb + push ax ; 50 ; 0xc0adc + push dx ; 52 ; 0xc0add + push bx ; 53 ; 0xc0ade + mov bl, cl ; 88 cb ; 0xc0adf + mov word [bp-006h], strict word 00000h ; c7 46 fa 00 00 ; 0xc0ae1 vgabios.c:371 + dec word [bp+004h] ; ff 4e 04 ; 0xc0ae6 vgabios.c:373 + cmp word [bp+004h], strict byte 0ffffh ; 83 7e 04 ff ; 0xc0ae9 + je short 00b28h ; 74 39 ; 0xc0aed + mov cl, byte [bp+006h] ; 8a 4e 06 ; 0xc0aef vgabios.c:374 + xor ch, ch ; 30 ed ; 0xc0af2 + mov dx, ss ; 8c d2 ; 0xc0af4 + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc0af6 + mov di, word [bp-008h] ; 8b 7e f8 ; 0xc0af9 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc0afc + push DS ; 1e ; 0xc0aff + mov ds, dx ; 8e da ; 0xc0b00 + rep cmpsb ; f3 a6 ; 0xc0b02 + pop DS ; 1f ; 0xc0b04 + mov ax, strict word 00000h ; b8 00 00 ; 0xc0b05 + je short 00b0ch ; 74 02 ; 0xc0b08 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc0b0a + test ax, ax ; 85 c0 ; 0xc0b0c + jne short 00b1ch ; 75 0c ; 0xc0b0e + mov al, bl ; 88 d8 ; 0xc0b10 vgabios.c:375 + xor ah, ah ; 30 e4 ; 0xc0b12 + or ah, 080h ; 80 cc 80 ; 0xc0b14 + mov word [bp-006h], ax ; 89 46 fa ; 0xc0b17 + jmp short 00b28h ; eb 0c ; 0xc0b1a vgabios.c:376 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc0b1c vgabios.c:378 + xor ah, ah ; 30 e4 ; 0xc0b1f + add word [bp-008h], ax ; 01 46 f8 ; 0xc0b21 + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc0b24 vgabios.c:379 + jmp short 00ae6h ; eb be ; 0xc0b26 vgabios.c:380 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc0b28 vgabios.c:382 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0b2b + pop di ; 5f ; 0xc0b2e + pop si ; 5e ; 0xc0b2f + pop bp ; 5d ; 0xc0b30 + retn 00004h ; c2 04 00 ; 0xc0b31 + ; disGetNextSymbol 0xc0b34 LB 0x39fe -> off=0x0 cb=0000000000000046 uValue=00000000000c0b34 'vga_read_glyph_planar' +vga_read_glyph_planar: ; 0xc0b34 LB 0x46 + push bp ; 55 ; 0xc0b34 vgabios.c:384 + mov bp, sp ; 89 e5 ; 0xc0b35 + push si ; 56 ; 0xc0b37 + push di ; 57 ; 0xc0b38 + push ax ; 50 ; 0xc0b39 + push ax ; 50 ; 0xc0b3a + mov si, ax ; 89 c6 ; 0xc0b3b + mov word [bp-006h], dx ; 89 56 fa ; 0xc0b3d + mov word [bp-008h], bx ; 89 5e f8 ; 0xc0b40 + mov bx, cx ; 89 cb ; 0xc0b43 + mov ax, 00805h ; b8 05 08 ; 0xc0b45 vgabios.c:391 + mov dx, 003ceh ; ba ce 03 ; 0xc0b48 + out DX, ax ; ef ; 0xc0b4b + dec byte [bp+004h] ; fe 4e 04 ; 0xc0b4c vgabios.c:393 + cmp byte [bp+004h], 0ffh ; 80 7e 04 ff ; 0xc0b4f + je short 00b6ah ; 74 15 ; 0xc0b53 + mov es, [bp-006h] ; 8e 46 fa ; 0xc0b55 vgabios.c:394 + mov al, byte [es:si] ; 26 8a 04 ; 0xc0b58 + not al ; f6 d0 ; 0xc0b5b + mov di, bx ; 89 df ; 0xc0b5d + inc bx ; 43 ; 0xc0b5f + push SS ; 16 ; 0xc0b60 + pop ES ; 07 ; 0xc0b61 + mov byte [es:di], al ; 26 88 05 ; 0xc0b62 + add si, word [bp-008h] ; 03 76 f8 ; 0xc0b65 vgabios.c:395 + jmp short 00b4ch ; eb e2 ; 0xc0b68 vgabios.c:396 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0b6a vgabios.c:399 + mov dx, 003ceh ; ba ce 03 ; 0xc0b6d + out DX, ax ; ef ; 0xc0b70 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0b71 vgabios.c:400 + pop di ; 5f ; 0xc0b74 + pop si ; 5e ; 0xc0b75 + pop bp ; 5d ; 0xc0b76 + retn 00002h ; c2 02 00 ; 0xc0b77 + ; disGetNextSymbol 0xc0b7a LB 0x39b8 -> off=0x0 cb=000000000000002f uValue=00000000000c0b7a 'vga_char_ofs_planar' +vga_char_ofs_planar: ; 0xc0b7a LB 0x2f + push si ; 56 ; 0xc0b7a vgabios.c:402 + push bp ; 55 ; 0xc0b7b + mov bp, sp ; 89 e5 ; 0xc0b7c + mov ch, al ; 88 c5 ; 0xc0b7e + mov al, dl ; 88 d0 ; 0xc0b80 + xor ah, ah ; 30 e4 ; 0xc0b82 vgabios.c:406 + mul bx ; f7 e3 ; 0xc0b84 + mov bl, byte [bp+006h] ; 8a 5e 06 ; 0xc0b86 + xor bh, bh ; 30 ff ; 0xc0b89 + mul bx ; f7 e3 ; 0xc0b8b + mov bl, ch ; 88 eb ; 0xc0b8d + add bx, ax ; 01 c3 ; 0xc0b8f + mov si, strict word 0004ch ; be 4c 00 ; 0xc0b91 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0b94 + mov es, ax ; 8e c0 ; 0xc0b97 + mov si, word [es:si] ; 26 8b 34 ; 0xc0b99 + mov al, cl ; 88 c8 ; 0xc0b9c vgabios.c:58 + xor ah, ah ; 30 e4 ; 0xc0b9e + mul si ; f7 e6 ; 0xc0ba0 + add ax, bx ; 01 d8 ; 0xc0ba2 + pop bp ; 5d ; 0xc0ba4 vgabios.c:410 + pop si ; 5e ; 0xc0ba5 + retn 00002h ; c2 02 00 ; 0xc0ba6 + ; disGetNextSymbol 0xc0ba9 LB 0x3989 -> off=0x0 cb=0000000000000040 uValue=00000000000c0ba9 'vga_read_char_planar' +vga_read_char_planar: ; 0xc0ba9 LB 0x40 + push bp ; 55 ; 0xc0ba9 vgabios.c:412 + mov bp, sp ; 89 e5 ; 0xc0baa + push cx ; 51 ; 0xc0bac + sub sp, strict byte 00012h ; 83 ec 12 ; 0xc0bad + mov byte [bp-004h], bl ; 88 5e fc ; 0xc0bb0 vgabios.c:416 + mov byte [bp-003h], 000h ; c6 46 fd 00 ; 0xc0bb3 + push word [bp-004h] ; ff 76 fc ; 0xc0bb7 + lea cx, [bp-014h] ; 8d 4e ec ; 0xc0bba + mov bx, ax ; 89 c3 ; 0xc0bbd + mov ax, dx ; 89 d0 ; 0xc0bbf + mov dx, 0a000h ; ba 00 a0 ; 0xc0bc1 + call 00b34h ; e8 6d ff ; 0xc0bc4 + push word [bp-004h] ; ff 76 fc ; 0xc0bc7 vgabios.c:419 + push 00100h ; 68 00 01 ; 0xc0bca + mov bx, 0010ch ; bb 0c 01 ; 0xc0bcd vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0bd0 + mov es, ax ; 8e c0 ; 0xc0bd2 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0bd4 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0bd7 + xor cx, cx ; 31 c9 ; 0xc0bdb vgabios.c:68 + lea bx, [bp-014h] ; 8d 5e ec ; 0xc0bdd + call 00ad6h ; e8 f3 fe ; 0xc0be0 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc0be3 vgabios.c:420 + pop cx ; 59 ; 0xc0be6 + pop bp ; 5d ; 0xc0be7 + retn ; c3 ; 0xc0be8 + ; disGetNextSymbol 0xc0be9 LB 0x3949 -> off=0x0 cb=0000000000000024 uValue=00000000000c0be9 'vga_char_ofs_linear' +vga_char_ofs_linear: ; 0xc0be9 LB 0x24 + enter 00002h, 000h ; c8 02 00 00 ; 0xc0be9 vgabios.c:422 + mov byte [bp-002h], al ; 88 46 fe ; 0xc0bed + mov al, dl ; 88 d0 ; 0xc0bf0 vgabios.c:426 + xor ah, ah ; 30 e4 ; 0xc0bf2 + mul bx ; f7 e3 ; 0xc0bf4 + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc0bf6 + xor dh, dh ; 30 f6 ; 0xc0bf9 + mul dx ; f7 e2 ; 0xc0bfb + mov dx, ax ; 89 c2 ; 0xc0bfd + mov al, byte [bp-002h] ; 8a 46 fe ; 0xc0bff + xor ah, ah ; 30 e4 ; 0xc0c02 + add ax, dx ; 01 d0 ; 0xc0c04 + sal ax, 003h ; c1 e0 03 ; 0xc0c06 vgabios.c:427 + leave ; c9 ; 0xc0c09 vgabios.c:429 + retn 00002h ; c2 02 00 ; 0xc0c0a + ; disGetNextSymbol 0xc0c0d LB 0x3925 -> off=0x0 cb=000000000000004b uValue=00000000000c0c0d 'vga_read_glyph_linear' +vga_read_glyph_linear: ; 0xc0c0d LB 0x4b + push si ; 56 ; 0xc0c0d vgabios.c:431 + push di ; 57 ; 0xc0c0e + enter 00004h, 000h ; c8 04 00 00 ; 0xc0c0f + mov si, ax ; 89 c6 ; 0xc0c13 + mov word [bp-002h], dx ; 89 56 fe ; 0xc0c15 + mov word [bp-004h], bx ; 89 5e fc ; 0xc0c18 + mov bx, cx ; 89 cb ; 0xc0c1b + dec byte [bp+008h] ; fe 4e 08 ; 0xc0c1d vgabios.c:437 + cmp byte [bp+008h], 0ffh ; 80 7e 08 ff ; 0xc0c20 + je short 00c52h ; 74 2c ; 0xc0c24 + xor dh, dh ; 30 f6 ; 0xc0c26 vgabios.c:438 + mov DL, strict byte 080h ; b2 80 ; 0xc0c28 vgabios.c:439 + xor ax, ax ; 31 c0 ; 0xc0c2a vgabios.c:440 + jmp short 00c33h ; eb 05 ; 0xc0c2c + cmp ax, strict word 00008h ; 3d 08 00 ; 0xc0c2e + jnl short 00c47h ; 7d 14 ; 0xc0c31 + mov es, [bp-002h] ; 8e 46 fe ; 0xc0c33 vgabios.c:441 + mov di, si ; 89 f7 ; 0xc0c36 + add di, ax ; 01 c7 ; 0xc0c38 + cmp byte [es:di], 000h ; 26 80 3d 00 ; 0xc0c3a + je short 00c42h ; 74 02 ; 0xc0c3e + or dh, dl ; 08 d6 ; 0xc0c40 vgabios.c:442 + shr dl, 1 ; d0 ea ; 0xc0c42 vgabios.c:443 + inc ax ; 40 ; 0xc0c44 vgabios.c:444 + jmp short 00c2eh ; eb e7 ; 0xc0c45 + mov di, bx ; 89 df ; 0xc0c47 vgabios.c:445 + inc bx ; 43 ; 0xc0c49 + mov byte [ss:di], dh ; 36 88 35 ; 0xc0c4a + add si, word [bp-004h] ; 03 76 fc ; 0xc0c4d vgabios.c:446 + jmp short 00c1dh ; eb cb ; 0xc0c50 vgabios.c:447 + leave ; c9 ; 0xc0c52 vgabios.c:448 + pop di ; 5f ; 0xc0c53 + pop si ; 5e ; 0xc0c54 + retn 00002h ; c2 02 00 ; 0xc0c55 + ; disGetNextSymbol 0xc0c58 LB 0x38da -> off=0x0 cb=0000000000000045 uValue=00000000000c0c58 'vga_read_char_linear' +vga_read_char_linear: ; 0xc0c58 LB 0x45 + push bp ; 55 ; 0xc0c58 vgabios.c:450 + mov bp, sp ; 89 e5 ; 0xc0c59 + push cx ; 51 ; 0xc0c5b + sub sp, strict byte 00012h ; 83 ec 12 ; 0xc0c5c + mov cx, ax ; 89 c1 ; 0xc0c5f + mov ax, dx ; 89 d0 ; 0xc0c61 + mov byte [bp-004h], bl ; 88 5e fc ; 0xc0c63 vgabios.c:454 + mov byte [bp-003h], 000h ; c6 46 fd 00 ; 0xc0c66 + push word [bp-004h] ; ff 76 fc ; 0xc0c6a + mov bx, cx ; 89 cb ; 0xc0c6d + sal bx, 003h ; c1 e3 03 ; 0xc0c6f + lea cx, [bp-014h] ; 8d 4e ec ; 0xc0c72 + mov dx, 0a000h ; ba 00 a0 ; 0xc0c75 + call 00c0dh ; e8 92 ff ; 0xc0c78 + push word [bp-004h] ; ff 76 fc ; 0xc0c7b vgabios.c:457 + push 00100h ; 68 00 01 ; 0xc0c7e + mov bx, 0010ch ; bb 0c 01 ; 0xc0c81 vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0c84 + mov es, ax ; 8e c0 ; 0xc0c86 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0c88 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0c8b + xor cx, cx ; 31 c9 ; 0xc0c8f vgabios.c:68 + lea bx, [bp-014h] ; 8d 5e ec ; 0xc0c91 + call 00ad6h ; e8 3f fe ; 0xc0c94 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc0c97 vgabios.c:458 + pop cx ; 59 ; 0xc0c9a + pop bp ; 5d ; 0xc0c9b + retn ; c3 ; 0xc0c9c + ; disGetNextSymbol 0xc0c9d LB 0x3895 -> off=0x0 cb=0000000000000035 uValue=00000000000c0c9d 'vga_read_2bpp_char' +vga_read_2bpp_char: ; 0xc0c9d LB 0x35 + push bp ; 55 ; 0xc0c9d vgabios.c:460 + mov bp, sp ; 89 e5 ; 0xc0c9e + push bx ; 53 ; 0xc0ca0 + push cx ; 51 ; 0xc0ca1 + mov bx, ax ; 89 c3 ; 0xc0ca2 + mov es, dx ; 8e c2 ; 0xc0ca4 + mov cx, 0c000h ; b9 00 c0 ; 0xc0ca6 vgabios.c:466 + mov DH, strict byte 080h ; b6 80 ; 0xc0ca9 vgabios.c:467 + xor dl, dl ; 30 d2 ; 0xc0cab vgabios.c:468 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0cad vgabios.c:469 + xchg ah, al ; 86 c4 ; 0xc0cb0 + xor bx, bx ; 31 db ; 0xc0cb2 vgabios.c:471 + jmp short 00cbbh ; eb 05 ; 0xc0cb4 + cmp bx, strict byte 00008h ; 83 fb 08 ; 0xc0cb6 + jnl short 00cc9h ; 7d 0e ; 0xc0cb9 + test ax, cx ; 85 c8 ; 0xc0cbb vgabios.c:472 + je short 00cc1h ; 74 02 ; 0xc0cbd + or dl, dh ; 08 f2 ; 0xc0cbf vgabios.c:473 + shr dh, 1 ; d0 ee ; 0xc0cc1 vgabios.c:474 + shr cx, 002h ; c1 e9 02 ; 0xc0cc3 vgabios.c:475 + inc bx ; 43 ; 0xc0cc6 vgabios.c:476 + jmp short 00cb6h ; eb ed ; 0xc0cc7 + mov al, dl ; 88 d0 ; 0xc0cc9 vgabios.c:478 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0ccb + pop cx ; 59 ; 0xc0cce + pop bx ; 5b ; 0xc0ccf + pop bp ; 5d ; 0xc0cd0 + retn ; c3 ; 0xc0cd1 + ; disGetNextSymbol 0xc0cd2 LB 0x3860 -> off=0x0 cb=0000000000000084 uValue=00000000000c0cd2 'vga_read_glyph_cga' +vga_read_glyph_cga: ; 0xc0cd2 LB 0x84 + push bp ; 55 ; 0xc0cd2 vgabios.c:480 + mov bp, sp ; 89 e5 ; 0xc0cd3 + push cx ; 51 ; 0xc0cd5 + push si ; 56 ; 0xc0cd6 + push di ; 57 ; 0xc0cd7 + push ax ; 50 ; 0xc0cd8 + mov si, dx ; 89 d6 ; 0xc0cd9 + cmp bl, 006h ; 80 fb 06 ; 0xc0cdb vgabios.c:488 + je short 00d1ah ; 74 3a ; 0xc0cde + mov bx, ax ; 89 c3 ; 0xc0ce0 vgabios.c:490 + add bx, ax ; 01 c3 ; 0xc0ce2 + mov word [bp-008h], 0b800h ; c7 46 f8 00 b8 ; 0xc0ce4 + xor cx, cx ; 31 c9 ; 0xc0ce9 vgabios.c:492 + jmp short 00cf2h ; eb 05 ; 0xc0ceb + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc0ced + jnl short 00d4eh ; 7d 5c ; 0xc0cf0 + mov ax, bx ; 89 d8 ; 0xc0cf2 vgabios.c:493 + mov dx, word [bp-008h] ; 8b 56 f8 ; 0xc0cf4 + call 00c9dh ; e8 a3 ff ; 0xc0cf7 + mov di, si ; 89 f7 ; 0xc0cfa + inc si ; 46 ; 0xc0cfc + push SS ; 16 ; 0xc0cfd + pop ES ; 07 ; 0xc0cfe + mov byte [es:di], al ; 26 88 05 ; 0xc0cff + lea ax, [bx+02000h] ; 8d 87 00 20 ; 0xc0d02 vgabios.c:494 + mov dx, word [bp-008h] ; 8b 56 f8 ; 0xc0d06 + call 00c9dh ; e8 91 ff ; 0xc0d09 + mov di, si ; 89 f7 ; 0xc0d0c + inc si ; 46 ; 0xc0d0e + push SS ; 16 ; 0xc0d0f + pop ES ; 07 ; 0xc0d10 + mov byte [es:di], al ; 26 88 05 ; 0xc0d11 + add bx, strict byte 00050h ; 83 c3 50 ; 0xc0d14 vgabios.c:495 + inc cx ; 41 ; 0xc0d17 vgabios.c:496 + jmp short 00cedh ; eb d3 ; 0xc0d18 + mov bx, ax ; 89 c3 ; 0xc0d1a vgabios.c:498 + mov word [bp-008h], 0b800h ; c7 46 f8 00 b8 ; 0xc0d1c + xor cx, cx ; 31 c9 ; 0xc0d21 vgabios.c:499 + jmp short 00d2ah ; eb 05 ; 0xc0d23 + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc0d25 + jnl short 00d4eh ; 7d 24 ; 0xc0d28 + mov di, si ; 89 f7 ; 0xc0d2a vgabios.c:500 + inc si ; 46 ; 0xc0d2c + mov es, [bp-008h] ; 8e 46 f8 ; 0xc0d2d + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0d30 + push SS ; 16 ; 0xc0d33 + pop ES ; 07 ; 0xc0d34 + mov byte [es:di], al ; 26 88 05 ; 0xc0d35 + mov di, si ; 89 f7 ; 0xc0d38 vgabios.c:501 + inc si ; 46 ; 0xc0d3a + mov es, [bp-008h] ; 8e 46 f8 ; 0xc0d3b + mov al, byte [es:bx+02000h] ; 26 8a 87 00 20 ; 0xc0d3e + push SS ; 16 ; 0xc0d43 + pop ES ; 07 ; 0xc0d44 + mov byte [es:di], al ; 26 88 05 ; 0xc0d45 + add bx, strict byte 00050h ; 83 c3 50 ; 0xc0d48 vgabios.c:502 + inc cx ; 41 ; 0xc0d4b vgabios.c:503 + jmp short 00d25h ; eb d7 ; 0xc0d4c + lea sp, [bp-006h] ; 8d 66 fa ; 0xc0d4e vgabios.c:505 + pop di ; 5f ; 0xc0d51 + pop si ; 5e ; 0xc0d52 + pop cx ; 59 ; 0xc0d53 + pop bp ; 5d ; 0xc0d54 + retn ; c3 ; 0xc0d55 + ; disGetNextSymbol 0xc0d56 LB 0x37dc -> off=0x0 cb=000000000000001a uValue=00000000000c0d56 'vga_char_ofs_cga' +vga_char_ofs_cga: ; 0xc0d56 LB 0x1a + push cx ; 51 ; 0xc0d56 vgabios.c:507 + push bp ; 55 ; 0xc0d57 + mov bp, sp ; 89 e5 ; 0xc0d58 + mov cl, al ; 88 c1 ; 0xc0d5a + mov al, dl ; 88 d0 ; 0xc0d5c + xor ah, ah ; 30 e4 ; 0xc0d5e vgabios.c:512 + mul bx ; f7 e3 ; 0xc0d60 + mov bx, ax ; 89 c3 ; 0xc0d62 + sal bx, 002h ; c1 e3 02 ; 0xc0d64 + mov al, cl ; 88 c8 ; 0xc0d67 + xor ah, ah ; 30 e4 ; 0xc0d69 + add ax, bx ; 01 d8 ; 0xc0d6b + pop bp ; 5d ; 0xc0d6d vgabios.c:513 + pop cx ; 59 ; 0xc0d6e + retn ; c3 ; 0xc0d6f + ; disGetNextSymbol 0xc0d70 LB 0x37c2 -> off=0x0 cb=0000000000000066 uValue=00000000000c0d70 'vga_read_char_cga' +vga_read_char_cga: ; 0xc0d70 LB 0x66 + push bp ; 55 ; 0xc0d70 vgabios.c:515 + mov bp, sp ; 89 e5 ; 0xc0d71 + push bx ; 53 ; 0xc0d73 + push cx ; 51 ; 0xc0d74 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc0d75 + mov bl, dl ; 88 d3 ; 0xc0d78 vgabios.c:521 + xor bh, bh ; 30 ff ; 0xc0d7a + lea dx, [bp-00eh] ; 8d 56 f2 ; 0xc0d7c + call 00cd2h ; e8 50 ff ; 0xc0d7f + push strict byte 00008h ; 6a 08 ; 0xc0d82 vgabios.c:524 + push 00080h ; 68 80 00 ; 0xc0d84 + mov bx, 0010ch ; bb 0c 01 ; 0xc0d87 vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0d8a + mov es, ax ; 8e c0 ; 0xc0d8c + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0d8e + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0d91 + xor cx, cx ; 31 c9 ; 0xc0d95 vgabios.c:68 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc0d97 + call 00ad6h ; e8 39 fd ; 0xc0d9a + mov word [bp-006h], ax ; 89 46 fa ; 0xc0d9d + test ah, 080h ; f6 c4 80 ; 0xc0da0 vgabios.c:526 + jne short 00dcch ; 75 27 ; 0xc0da3 + mov bx, strict word 0007ch ; bb 7c 00 ; 0xc0da5 vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0da8 + mov es, ax ; 8e c0 ; 0xc0daa + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0dac + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0daf + test dx, dx ; 85 d2 ; 0xc0db3 vgabios.c:530 + jne short 00dbbh ; 75 04 ; 0xc0db5 + test ax, ax ; 85 c0 ; 0xc0db7 + je short 00dcch ; 74 11 ; 0xc0db9 + push strict byte 00008h ; 6a 08 ; 0xc0dbb vgabios.c:531 + push 00080h ; 68 80 00 ; 0xc0dbd + mov cx, 00080h ; b9 80 00 ; 0xc0dc0 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc0dc3 + call 00ad6h ; e8 0d fd ; 0xc0dc6 + mov word [bp-006h], ax ; 89 46 fa ; 0xc0dc9 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc0dcc vgabios.c:534 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0dcf + pop cx ; 59 ; 0xc0dd2 + pop bx ; 5b ; 0xc0dd3 + pop bp ; 5d ; 0xc0dd4 + retn ; c3 ; 0xc0dd5 + ; disGetNextSymbol 0xc0dd6 LB 0x375c -> off=0x0 cb=0000000000000130 uValue=00000000000c0dd6 'vga_read_char_attr' +vga_read_char_attr: ; 0xc0dd6 LB 0x130 + push bp ; 55 ; 0xc0dd6 vgabios.c:536 + mov bp, sp ; 89 e5 ; 0xc0dd7 + push bx ; 53 ; 0xc0dd9 + push cx ; 51 ; 0xc0dda + push si ; 56 ; 0xc0ddb + push di ; 57 ; 0xc0ddc + sub sp, strict byte 00014h ; 83 ec 14 ; 0xc0ddd + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc0de0 + mov si, dx ; 89 d6 ; 0xc0de3 + mov bx, strict word 00049h ; bb 49 00 ; 0xc0de5 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0de8 + mov es, ax ; 8e c0 ; 0xc0deb + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0ded + mov byte [bp-010h], al ; 88 46 f0 ; 0xc0df0 vgabios.c:48 + xor ah, ah ; 30 e4 ; 0xc0df3 vgabios.c:544 + call 03819h ; e8 21 2a ; 0xc0df5 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc0df8 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc0dfb vgabios.c:545 + jne short 00e02h ; 75 03 ; 0xc0dfd + jmp near 00efdh ; e9 fb 00 ; 0xc0dff + mov cl, byte [bp-00eh] ; 8a 4e f2 ; 0xc0e02 vgabios.c:549 + xor ch, ch ; 30 ed ; 0xc0e05 + lea bx, [bp-01ch] ; 8d 5e e4 ; 0xc0e07 + lea dx, [bp-01ah] ; 8d 56 e6 ; 0xc0e0a + mov ax, cx ; 89 c8 ; 0xc0e0d + call 00a96h ; e8 84 fc ; 0xc0e0f + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc0e12 vgabios.c:550 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc0e15 + mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xc0e18 vgabios.c:551 + xor al, al ; 30 c0 ; 0xc0e1b + shr ax, 008h ; c1 e8 08 ; 0xc0e1d + mov word [bp-016h], ax ; 89 46 ea ; 0xc0e20 + mov dl, byte [bp-016h] ; 8a 56 ea ; 0xc0e23 + mov bx, 00084h ; bb 84 00 ; 0xc0e26 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0e29 + mov es, ax ; 8e c0 ; 0xc0e2c + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0e2e + xor ah, ah ; 30 e4 ; 0xc0e31 vgabios.c:48 + inc ax ; 40 ; 0xc0e33 + mov word [bp-014h], ax ; 89 46 ec ; 0xc0e34 + mov di, strict word 0004ah ; bf 4a 00 ; 0xc0e37 vgabios.c:57 + mov di, word [es:di] ; 26 8b 3d ; 0xc0e3a + mov word [bp-018h], di ; 89 7e e8 ; 0xc0e3d vgabios.c:58 + mov bl, byte [bp-00ch] ; 8a 5e f4 ; 0xc0e40 vgabios.c:557 + xor bh, bh ; 30 ff ; 0xc0e43 + sal bx, 003h ; c1 e3 03 ; 0xc0e45 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc0e48 + jne short 00e7fh ; 75 30 ; 0xc0e4d + mov ax, di ; 89 f8 ; 0xc0e4f vgabios.c:559 + mul word [bp-014h] ; f7 66 ec ; 0xc0e51 + add ax, ax ; 01 c0 ; 0xc0e54 + or AL, strict byte 0ffh ; 0c ff ; 0xc0e56 + inc ax ; 40 ; 0xc0e58 + mul cx ; f7 e1 ; 0xc0e59 + mov cx, ax ; 89 c1 ; 0xc0e5b + mov al, byte [bp-016h] ; 8a 46 ea ; 0xc0e5d + xor ah, ah ; 30 e4 ; 0xc0e60 + mul di ; f7 e7 ; 0xc0e62 + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc0e64 + xor dh, dh ; 30 f6 ; 0xc0e67 + mov di, ax ; 89 c7 ; 0xc0e69 + add di, dx ; 01 d7 ; 0xc0e6b + add di, di ; 01 ff ; 0xc0e6d + add di, cx ; 01 cf ; 0xc0e6f + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc0e71 vgabios.c:55 + mov ax, word [es:di] ; 26 8b 05 ; 0xc0e75 + push SS ; 16 ; 0xc0e78 vgabios.c:58 + pop ES ; 07 ; 0xc0e79 + mov word [es:si], ax ; 26 89 04 ; 0xc0e7a + jmp short 00dffh ; eb 80 ; 0xc0e7d vgabios.c:561 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc0e7f vgabios.c:562 + cmp bl, 005h ; 80 fb 05 ; 0xc0e83 + je short 00ed6h ; 74 4e ; 0xc0e86 + cmp bl, 002h ; 80 fb 02 ; 0xc0e88 + jc short 00efdh ; 72 70 ; 0xc0e8b + jbe short 00e96h ; 76 07 ; 0xc0e8d + cmp bl, 004h ; 80 fb 04 ; 0xc0e8f + jbe short 00eafh ; 76 1b ; 0xc0e92 + jmp short 00efdh ; eb 67 ; 0xc0e94 + xor dh, dh ; 30 f6 ; 0xc0e96 vgabios.c:565 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc0e98 + xor ah, ah ; 30 e4 ; 0xc0e9b + mov bx, word [bp-018h] ; 8b 5e e8 ; 0xc0e9d + call 00d56h ; e8 b3 fe ; 0xc0ea0 + mov dl, byte [bp-010h] ; 8a 56 f0 ; 0xc0ea3 vgabios.c:566 + xor dh, dh ; 30 f6 ; 0xc0ea6 + call 00d70h ; e8 c5 fe ; 0xc0ea8 + xor ah, ah ; 30 e4 ; 0xc0eab + jmp short 00e78h ; eb c9 ; 0xc0ead + mov bx, 00085h ; bb 85 00 ; 0xc0eaf vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0eb2 + mov byte [bp-012h], al ; 88 46 ee ; 0xc0eb5 vgabios.c:571 + mov byte [bp-011h], ch ; 88 6e ef ; 0xc0eb8 + push word [bp-012h] ; ff 76 ee ; 0xc0ebb + xor dh, dh ; 30 f6 ; 0xc0ebe + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc0ec0 + xor ah, ah ; 30 e4 ; 0xc0ec3 + mov bx, di ; 89 fb ; 0xc0ec5 + call 00b7ah ; e8 b0 fc ; 0xc0ec7 + mov bx, word [bp-012h] ; 8b 5e ee ; 0xc0eca vgabios.c:572 + mov dx, ax ; 89 c2 ; 0xc0ecd + mov ax, di ; 89 f8 ; 0xc0ecf + call 00ba9h ; e8 d5 fc ; 0xc0ed1 + jmp short 00eabh ; eb d5 ; 0xc0ed4 + mov bx, 00085h ; bb 85 00 ; 0xc0ed6 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0ed9 + mov byte [bp-012h], al ; 88 46 ee ; 0xc0edc vgabios.c:576 + mov byte [bp-011h], ch ; 88 6e ef ; 0xc0edf + push word [bp-012h] ; ff 76 ee ; 0xc0ee2 + xor dh, dh ; 30 f6 ; 0xc0ee5 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc0ee7 + xor ah, ah ; 30 e4 ; 0xc0eea + mov bx, di ; 89 fb ; 0xc0eec + call 00be9h ; e8 f8 fc ; 0xc0eee + mov bx, word [bp-012h] ; 8b 5e ee ; 0xc0ef1 vgabios.c:577 + mov dx, ax ; 89 c2 ; 0xc0ef4 + mov ax, di ; 89 f8 ; 0xc0ef6 + call 00c58h ; e8 5d fd ; 0xc0ef8 + jmp short 00eabh ; eb ae ; 0xc0efb + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc0efd vgabios.c:586 + pop di ; 5f ; 0xc0f00 + pop si ; 5e ; 0xc0f01 + pop cx ; 59 ; 0xc0f02 + pop bx ; 5b ; 0xc0f03 + pop bp ; 5d ; 0xc0f04 + retn ; c3 ; 0xc0f05 + ; disGetNextSymbol 0xc0f06 LB 0x362c -> off=0x10 cb=0000000000000083 uValue=00000000000c0f16 'vga_get_font_info' + db 02dh, 00fh, 072h, 00fh, 077h, 00fh, 07eh, 00fh, 083h, 00fh, 088h, 00fh, 08dh, 00fh, 092h, 00fh +vga_get_font_info: ; 0xc0f16 LB 0x83 + push si ; 56 ; 0xc0f16 vgabios.c:588 + push di ; 57 ; 0xc0f17 + push bp ; 55 ; 0xc0f18 + mov bp, sp ; 89 e5 ; 0xc0f19 + mov si, dx ; 89 d6 ; 0xc0f1b + mov di, bx ; 89 df ; 0xc0f1d + cmp ax, strict word 00007h ; 3d 07 00 ; 0xc0f1f vgabios.c:593 + jnbe short 00f6ch ; 77 48 ; 0xc0f22 + mov bx, ax ; 89 c3 ; 0xc0f24 + add bx, ax ; 01 c3 ; 0xc0f26 + jmp word [cs:bx+00f06h] ; 2e ff a7 06 0f ; 0xc0f28 + mov bx, strict word 0007ch ; bb 7c 00 ; 0xc0f2d vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0f30 + mov es, ax ; 8e c0 ; 0xc0f32 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc0f34 + mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xc0f37 + push SS ; 16 ; 0xc0f3b vgabios.c:596 + pop ES ; 07 ; 0xc0f3c + mov word [es:di], dx ; 26 89 15 ; 0xc0f3d + mov word [es:si], ax ; 26 89 04 ; 0xc0f40 + mov bx, 00085h ; bb 85 00 ; 0xc0f43 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0f46 + mov es, ax ; 8e c0 ; 0xc0f49 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0f4b + xor ah, ah ; 30 e4 ; 0xc0f4e + push SS ; 16 ; 0xc0f50 + pop ES ; 07 ; 0xc0f51 + mov bx, cx ; 89 cb ; 0xc0f52 + mov word [es:bx], ax ; 26 89 07 ; 0xc0f54 + mov bx, 00084h ; bb 84 00 ; 0xc0f57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0f5a + mov es, ax ; 8e c0 ; 0xc0f5d + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0f5f + xor ah, ah ; 30 e4 ; 0xc0f62 + push SS ; 16 ; 0xc0f64 + pop ES ; 07 ; 0xc0f65 + mov bx, word [bp+008h] ; 8b 5e 08 ; 0xc0f66 + mov word [es:bx], ax ; 26 89 07 ; 0xc0f69 + pop bp ; 5d ; 0xc0f6c + pop di ; 5f ; 0xc0f6d + pop si ; 5e ; 0xc0f6e + retn 00002h ; c2 02 00 ; 0xc0f6f + mov bx, 0010ch ; bb 0c 01 ; 0xc0f72 vgabios.c:67 + jmp short 00f30h ; eb b9 ; 0xc0f75 + mov dx, 05d6dh ; ba 6d 5d ; 0xc0f77 vgabios.c:601 + mov ax, ds ; 8c d8 ; 0xc0f7a + jmp short 00f3bh ; eb bd ; 0xc0f7c vgabios.c:602 + mov dx, 0556dh ; ba 6d 55 ; 0xc0f7e vgabios.c:604 + jmp short 00f7ah ; eb f7 ; 0xc0f81 + mov dx, 0596dh ; ba 6d 59 ; 0xc0f83 vgabios.c:607 + jmp short 00f7ah ; eb f2 ; 0xc0f86 + mov dx, 07b6dh ; ba 6d 7b ; 0xc0f88 vgabios.c:610 + jmp short 00f7ah ; eb ed ; 0xc0f8b + mov dx, 06b6dh ; ba 6d 6b ; 0xc0f8d vgabios.c:613 + jmp short 00f7ah ; eb e8 ; 0xc0f90 + mov dx, 07c9ah ; ba 9a 7c ; 0xc0f92 vgabios.c:616 + jmp short 00f7ah ; eb e3 ; 0xc0f95 + jmp short 00f6ch ; eb d3 ; 0xc0f97 vgabios.c:622 + ; disGetNextSymbol 0xc0f99 LB 0x3599 -> off=0x0 cb=0000000000000166 uValue=00000000000c0f99 'vga_read_pixel' +vga_read_pixel: ; 0xc0f99 LB 0x166 + push bp ; 55 ; 0xc0f99 vgabios.c:635 + mov bp, sp ; 89 e5 ; 0xc0f9a + push si ; 56 ; 0xc0f9c + push di ; 57 ; 0xc0f9d + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc0f9e + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc0fa1 + mov si, dx ; 89 d6 ; 0xc0fa4 + mov dx, bx ; 89 da ; 0xc0fa6 + mov word [bp-00ch], cx ; 89 4e f4 ; 0xc0fa8 + mov bx, strict word 00049h ; bb 49 00 ; 0xc0fab vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0fae + mov es, ax ; 8e c0 ; 0xc0fb1 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0fb3 + xor ah, ah ; 30 e4 ; 0xc0fb6 vgabios.c:642 + call 03819h ; e8 5e 28 ; 0xc0fb8 + mov ah, al ; 88 c4 ; 0xc0fbb + cmp AL, strict byte 0ffh ; 3c ff ; 0xc0fbd vgabios.c:643 + je short 00fcfh ; 74 0e ; 0xc0fbf + mov bl, al ; 88 c3 ; 0xc0fc1 vgabios.c:645 + xor bh, bh ; 30 ff ; 0xc0fc3 + sal bx, 003h ; c1 e3 03 ; 0xc0fc5 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc0fc8 + jne short 00fd2h ; 75 03 ; 0xc0fcd + jmp near 010f8h ; e9 26 01 ; 0xc0fcf vgabios.c:646 + mov ch, byte [bx+047b1h] ; 8a af b1 47 ; 0xc0fd2 vgabios.c:649 + cmp ch, 003h ; 80 fd 03 ; 0xc0fd6 + jc short 00feah ; 72 0f ; 0xc0fd9 + jbe short 00ff2h ; 76 15 ; 0xc0fdb + cmp ch, 005h ; 80 fd 05 ; 0xc0fdd + je short 01029h ; 74 47 ; 0xc0fe0 + cmp ch, 004h ; 80 fd 04 ; 0xc0fe2 + je short 00ff2h ; 74 0b ; 0xc0fe5 + jmp near 010eeh ; e9 04 01 ; 0xc0fe7 + cmp ch, 002h ; 80 fd 02 ; 0xc0fea + je short 01060h ; 74 71 ; 0xc0fed + jmp near 010eeh ; e9 fc 00 ; 0xc0fef + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc0ff2 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0ff5 + mov es, ax ; 8e c0 ; 0xc0ff8 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc0ffa + mov ax, dx ; 89 d0 ; 0xc0ffd vgabios.c:58 + mul bx ; f7 e3 ; 0xc0fff + mov bx, si ; 89 f3 ; 0xc1001 + shr bx, 003h ; c1 eb 03 ; 0xc1003 + add bx, ax ; 01 c3 ; 0xc1006 + mov di, strict word 0004ch ; bf 4c 00 ; 0xc1008 vgabios.c:57 + mov ax, word [es:di] ; 26 8b 05 ; 0xc100b + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc100e vgabios.c:58 + xor dh, dh ; 30 f6 ; 0xc1011 + mul dx ; f7 e2 ; 0xc1013 + add bx, ax ; 01 c3 ; 0xc1015 + mov cx, si ; 89 f1 ; 0xc1017 vgabios.c:654 + and cx, strict byte 00007h ; 83 e1 07 ; 0xc1019 + mov ax, 00080h ; b8 80 00 ; 0xc101c + sar ax, CL ; d3 f8 ; 0xc101f + mov byte [bp-008h], al ; 88 46 f8 ; 0xc1021 + mov byte [bp-006h], ch ; 88 6e fa ; 0xc1024 vgabios.c:656 + jmp short 01032h ; eb 09 ; 0xc1027 + jmp near 010ceh ; e9 a2 00 ; 0xc1029 + cmp byte [bp-006h], 004h ; 80 7e fa 04 ; 0xc102c + jnc short 0105dh ; 73 2b ; 0xc1030 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1032 vgabios.c:657 + xor ah, ah ; 30 e4 ; 0xc1035 + sal ax, 008h ; c1 e0 08 ; 0xc1037 + or AL, strict byte 004h ; 0c 04 ; 0xc103a + mov dx, 003ceh ; ba ce 03 ; 0xc103c + out DX, ax ; ef ; 0xc103f + mov ax, 0a000h ; b8 00 a0 ; 0xc1040 vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc1043 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1045 + and al, byte [bp-008h] ; 22 46 f8 ; 0xc1048 vgabios.c:48 + test al, al ; 84 c0 ; 0xc104b vgabios.c:659 + jbe short 01058h ; 76 09 ; 0xc104d + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc104f vgabios.c:660 + mov AL, strict byte 001h ; b0 01 ; 0xc1052 + sal al, CL ; d2 e0 ; 0xc1054 + or ch, al ; 08 c5 ; 0xc1056 + inc byte [bp-006h] ; fe 46 fa ; 0xc1058 vgabios.c:661 + jmp short 0102ch ; eb cf ; 0xc105b + jmp near 010f0h ; e9 90 00 ; 0xc105d + mov cl, byte [bx+047b2h] ; 8a 8f b2 47 ; 0xc1060 vgabios.c:664 + xor ch, ch ; 30 ed ; 0xc1064 + mov bx, strict word 00004h ; bb 04 00 ; 0xc1066 + sub bx, cx ; 29 cb ; 0xc1069 + mov cx, bx ; 89 d9 ; 0xc106b + mov bx, si ; 89 f3 ; 0xc106d + shr bx, CL ; d3 eb ; 0xc106f + mov cx, bx ; 89 d9 ; 0xc1071 + mov bx, dx ; 89 d3 ; 0xc1073 + shr bx, 1 ; d1 eb ; 0xc1075 + imul bx, bx, strict byte 00050h ; 6b db 50 ; 0xc1077 + add bx, cx ; 01 cb ; 0xc107a + test dl, 001h ; f6 c2 01 ; 0xc107c vgabios.c:665 + je short 01084h ; 74 03 ; 0xc107f + add bh, 020h ; 80 c7 20 ; 0xc1081 vgabios.c:666 + mov dx, 0b800h ; ba 00 b8 ; 0xc1084 vgabios.c:47 + mov es, dx ; 8e c2 ; 0xc1087 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1089 + mov bl, ah ; 88 e3 ; 0xc108c vgabios.c:668 + xor bh, bh ; 30 ff ; 0xc108e + sal bx, 003h ; c1 e3 03 ; 0xc1090 + cmp byte [bx+047b2h], 002h ; 80 bf b2 47 02 ; 0xc1093 + jne short 010b5h ; 75 1b ; 0xc1098 + mov cx, si ; 89 f1 ; 0xc109a vgabios.c:669 + xor ch, ch ; 30 ed ; 0xc109c + and cl, 003h ; 80 e1 03 ; 0xc109e + mov dx, strict word 00003h ; ba 03 00 ; 0xc10a1 + sub dx, cx ; 29 ca ; 0xc10a4 + mov cx, dx ; 89 d1 ; 0xc10a6 + add cx, dx ; 01 d1 ; 0xc10a8 + xor ah, ah ; 30 e4 ; 0xc10aa + sar ax, CL ; d3 f8 ; 0xc10ac + mov ch, al ; 88 c5 ; 0xc10ae + and ch, 003h ; 80 e5 03 ; 0xc10b0 + jmp short 010f0h ; eb 3b ; 0xc10b3 vgabios.c:670 + mov cx, si ; 89 f1 ; 0xc10b5 vgabios.c:671 + xor ch, ch ; 30 ed ; 0xc10b7 + and cl, 007h ; 80 e1 07 ; 0xc10b9 + mov dx, strict word 00007h ; ba 07 00 ; 0xc10bc + sub dx, cx ; 29 ca ; 0xc10bf + mov cx, dx ; 89 d1 ; 0xc10c1 + xor ah, ah ; 30 e4 ; 0xc10c3 + sar ax, CL ; d3 f8 ; 0xc10c5 + mov ch, al ; 88 c5 ; 0xc10c7 + and ch, 001h ; 80 e5 01 ; 0xc10c9 + jmp short 010f0h ; eb 22 ; 0xc10cc vgabios.c:672 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc10ce vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc10d1 + mov es, ax ; 8e c0 ; 0xc10d4 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc10d6 + sal bx, 003h ; c1 e3 03 ; 0xc10d9 vgabios.c:58 + mov ax, dx ; 89 d0 ; 0xc10dc + mul bx ; f7 e3 ; 0xc10de + mov bx, si ; 89 f3 ; 0xc10e0 + add bx, ax ; 01 c3 ; 0xc10e2 + mov ax, 0a000h ; b8 00 a0 ; 0xc10e4 vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc10e7 + mov ch, byte [es:bx] ; 26 8a 2f ; 0xc10e9 + jmp short 010f0h ; eb 02 ; 0xc10ec vgabios.c:676 + xor ch, ch ; 30 ed ; 0xc10ee vgabios.c:681 + push SS ; 16 ; 0xc10f0 vgabios.c:683 + pop ES ; 07 ; 0xc10f1 + mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xc10f2 + mov byte [es:bx], ch ; 26 88 2f ; 0xc10f5 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc10f8 vgabios.c:684 + pop di ; 5f ; 0xc10fb + pop si ; 5e ; 0xc10fc + pop bp ; 5d ; 0xc10fd + retn ; c3 ; 0xc10fe + ; disGetNextSymbol 0xc10ff LB 0x3433 -> off=0x0 cb=000000000000008d uValue=00000000000c10ff 'biosfn_perform_gray_scale_summing' +biosfn_perform_gray_scale_summing: ; 0xc10ff LB 0x8d + push bp ; 55 ; 0xc10ff vgabios.c:689 + mov bp, sp ; 89 e5 ; 0xc1100 + push bx ; 53 ; 0xc1102 + push cx ; 51 ; 0xc1103 + push si ; 56 ; 0xc1104 + push di ; 57 ; 0xc1105 + push ax ; 50 ; 0xc1106 + push ax ; 50 ; 0xc1107 + mov bx, ax ; 89 c3 ; 0xc1108 + mov di, dx ; 89 d7 ; 0xc110a + mov dx, 003dah ; ba da 03 ; 0xc110c vgabios.c:694 + in AL, DX ; ec ; 0xc110f + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1110 + xor al, al ; 30 c0 ; 0xc1112 vgabios.c:695 + mov dx, 003c0h ; ba c0 03 ; 0xc1114 + out DX, AL ; ee ; 0xc1117 + xor si, si ; 31 f6 ; 0xc1118 vgabios.c:697 + cmp si, di ; 39 fe ; 0xc111a + jnc short 01171h ; 73 53 ; 0xc111c + mov al, bl ; 88 d8 ; 0xc111e vgabios.c:700 + mov dx, 003c7h ; ba c7 03 ; 0xc1120 + out DX, AL ; ee ; 0xc1123 + mov dx, 003c9h ; ba c9 03 ; 0xc1124 vgabios.c:702 + in AL, DX ; ec ; 0xc1127 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1128 + mov cx, ax ; 89 c1 ; 0xc112a + in AL, DX ; ec ; 0xc112c vgabios.c:703 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc112d + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc112f + in AL, DX ; ec ; 0xc1132 vgabios.c:704 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1133 + xor ch, ch ; 30 ed ; 0xc1135 vgabios.c:707 + imul cx, cx, strict byte 0004dh ; 6b c9 4d ; 0xc1137 + mov word [bp-00ah], cx ; 89 4e f6 ; 0xc113a + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc113d + xor ch, ch ; 30 ed ; 0xc1140 + imul cx, cx, 00097h ; 69 c9 97 00 ; 0xc1142 + add cx, word [bp-00ah] ; 03 4e f6 ; 0xc1146 + xor ah, ah ; 30 e4 ; 0xc1149 + imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xc114b + add cx, ax ; 01 c1 ; 0xc114e + add cx, 00080h ; 81 c1 80 00 ; 0xc1150 + sar cx, 008h ; c1 f9 08 ; 0xc1154 + cmp cx, strict byte 0003fh ; 83 f9 3f ; 0xc1157 vgabios.c:709 + jbe short 0115fh ; 76 03 ; 0xc115a + mov cx, strict word 0003fh ; b9 3f 00 ; 0xc115c + mov al, bl ; 88 d8 ; 0xc115f vgabios.c:712 + mov dx, 003c8h ; ba c8 03 ; 0xc1161 + out DX, AL ; ee ; 0xc1164 + mov al, cl ; 88 c8 ; 0xc1165 vgabios.c:714 + mov dx, 003c9h ; ba c9 03 ; 0xc1167 + out DX, AL ; ee ; 0xc116a + out DX, AL ; ee ; 0xc116b vgabios.c:715 + out DX, AL ; ee ; 0xc116c vgabios.c:716 + inc bx ; 43 ; 0xc116d vgabios.c:717 + inc si ; 46 ; 0xc116e vgabios.c:718 + jmp short 0111ah ; eb a9 ; 0xc116f + mov dx, 003dah ; ba da 03 ; 0xc1171 vgabios.c:719 + in AL, DX ; ec ; 0xc1174 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1175 + mov AL, strict byte 020h ; b0 20 ; 0xc1177 vgabios.c:720 + mov dx, 003c0h ; ba c0 03 ; 0xc1179 + out DX, AL ; ee ; 0xc117c + mov dx, 003dah ; ba da 03 ; 0xc117d vgabios.c:722 + in AL, DX ; ec ; 0xc1180 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1181 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc1183 vgabios.c:724 + pop di ; 5f ; 0xc1186 + pop si ; 5e ; 0xc1187 + pop cx ; 59 ; 0xc1188 + pop bx ; 5b ; 0xc1189 + pop bp ; 5d ; 0xc118a + retn ; c3 ; 0xc118b + ; disGetNextSymbol 0xc118c LB 0x33a6 -> off=0x0 cb=0000000000000107 uValue=00000000000c118c 'biosfn_set_cursor_shape' +biosfn_set_cursor_shape: ; 0xc118c LB 0x107 + push bp ; 55 ; 0xc118c vgabios.c:727 + mov bp, sp ; 89 e5 ; 0xc118d + push bx ; 53 ; 0xc118f + push cx ; 51 ; 0xc1190 + push si ; 56 ; 0xc1191 + push ax ; 50 ; 0xc1192 + push ax ; 50 ; 0xc1193 + mov bl, al ; 88 c3 ; 0xc1194 + mov ah, dl ; 88 d4 ; 0xc1196 + mov dl, al ; 88 c2 ; 0xc1198 vgabios.c:733 + xor dh, dh ; 30 f6 ; 0xc119a + mov cx, dx ; 89 d1 ; 0xc119c + sal cx, 008h ; c1 e1 08 ; 0xc119e + mov dl, ah ; 88 e2 ; 0xc11a1 + add dx, cx ; 01 ca ; 0xc11a3 + mov si, strict word 00060h ; be 60 00 ; 0xc11a5 vgabios.c:62 + mov cx, strict word 00040h ; b9 40 00 ; 0xc11a8 + mov es, cx ; 8e c1 ; 0xc11ab + mov word [es:si], dx ; 26 89 14 ; 0xc11ad + mov si, 00087h ; be 87 00 ; 0xc11b0 vgabios.c:47 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc11b3 + test dl, 008h ; f6 c2 08 ; 0xc11b6 vgabios.c:48 + jne short 011f8h ; 75 3d ; 0xc11b9 + mov dl, al ; 88 c2 ; 0xc11bb vgabios.c:739 + and dl, 060h ; 80 e2 60 ; 0xc11bd + cmp dl, 020h ; 80 fa 20 ; 0xc11c0 + jne short 011cbh ; 75 06 ; 0xc11c3 + mov BL, strict byte 01eh ; b3 1e ; 0xc11c5 vgabios.c:741 + xor ah, ah ; 30 e4 ; 0xc11c7 vgabios.c:742 + jmp short 011f8h ; eb 2d ; 0xc11c9 vgabios.c:743 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc11cb vgabios.c:47 + test dl, 001h ; f6 c2 01 ; 0xc11ce vgabios.c:48 + jne short 0122dh ; 75 5a ; 0xc11d1 + cmp bl, 020h ; 80 fb 20 ; 0xc11d3 + jnc short 0122dh ; 73 55 ; 0xc11d6 + cmp ah, 020h ; 80 fc 20 ; 0xc11d8 + jnc short 0122dh ; 73 50 ; 0xc11db + mov si, 00085h ; be 85 00 ; 0xc11dd vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc11e0 + mov es, dx ; 8e c2 ; 0xc11e3 + mov cx, word [es:si] ; 26 8b 0c ; 0xc11e5 + mov dx, cx ; 89 ca ; 0xc11e8 vgabios.c:58 + cmp ah, bl ; 38 dc ; 0xc11ea vgabios.c:754 + jnc short 011fah ; 73 0c ; 0xc11ec + test ah, ah ; 84 e4 ; 0xc11ee vgabios.c:756 + je short 0122dh ; 74 3b ; 0xc11f0 + xor bl, bl ; 30 db ; 0xc11f2 vgabios.c:757 + mov ah, cl ; 88 cc ; 0xc11f4 vgabios.c:758 + db 0feh, 0cch + ; dec ah ; fe cc ; 0xc11f6 + jmp short 0122dh ; eb 33 ; 0xc11f8 vgabios.c:760 + mov byte [bp-008h], ah ; 88 66 f8 ; 0xc11fa vgabios.c:761 + xor al, al ; 30 c0 ; 0xc11fd + mov byte [bp-007h], al ; 88 46 f9 ; 0xc11ff + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc1202 + mov byte [bp-009h], al ; 88 46 f7 ; 0xc1205 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc1208 + or si, word [bp-00ah] ; 0b 76 f6 ; 0xc120b + cmp si, cx ; 39 ce ; 0xc120e + jnc short 0122fh ; 73 1d ; 0xc1210 + mov byte [bp-00ah], ah ; 88 66 f6 ; 0xc1212 + mov byte [bp-009h], al ; 88 46 f7 ; 0xc1215 + mov si, cx ; 89 ce ; 0xc1218 + dec si ; 4e ; 0xc121a + cmp si, word [bp-00ah] ; 3b 76 f6 ; 0xc121b + je short 01269h ; 74 49 ; 0xc121e + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc1220 + mov byte [bp-007h], al ; 88 46 f9 ; 0xc1223 + dec cx ; 49 ; 0xc1226 + dec cx ; 49 ; 0xc1227 + cmp cx, word [bp-008h] ; 3b 4e f8 ; 0xc1228 + jne short 0122fh ; 75 02 ; 0xc122b + jmp short 01269h ; eb 3a ; 0xc122d + cmp ah, 003h ; 80 fc 03 ; 0xc122f vgabios.c:763 + jbe short 01269h ; 76 35 ; 0xc1232 + mov cl, bl ; 88 d9 ; 0xc1234 vgabios.c:764 + xor ch, ch ; 30 ed ; 0xc1236 + mov byte [bp-00ah], ah ; 88 66 f6 ; 0xc1238 + mov byte [bp-009h], ch ; 88 6e f7 ; 0xc123b + mov si, cx ; 89 ce ; 0xc123e + inc si ; 46 ; 0xc1240 + inc si ; 46 ; 0xc1241 + mov cl, dl ; 88 d1 ; 0xc1242 + db 0feh, 0c9h + ; dec cl ; fe c9 ; 0xc1244 + cmp si, word [bp-00ah] ; 3b 76 f6 ; 0xc1246 + jl short 0125eh ; 7c 13 ; 0xc1249 + sub bl, ah ; 28 e3 ; 0xc124b vgabios.c:766 + add bl, dl ; 00 d3 ; 0xc124d + db 0feh, 0cbh + ; dec bl ; fe cb ; 0xc124f + mov ah, cl ; 88 cc ; 0xc1251 vgabios.c:767 + cmp dx, strict byte 0000eh ; 83 fa 0e ; 0xc1253 vgabios.c:768 + jc short 01269h ; 72 11 ; 0xc1256 + db 0feh, 0cch + ; dec ah ; fe cc ; 0xc1258 vgabios.c:770 + db 0feh, 0cbh + ; dec bl ; fe cb ; 0xc125a vgabios.c:771 + jmp short 01269h ; eb 0b ; 0xc125c vgabios.c:773 + cmp bl, 002h ; 80 fb 02 ; 0xc125e + jbe short 01267h ; 76 04 ; 0xc1261 + shr dx, 1 ; d1 ea ; 0xc1263 vgabios.c:775 + mov bl, dl ; 88 d3 ; 0xc1265 + mov ah, cl ; 88 cc ; 0xc1267 vgabios.c:779 + mov si, strict word 00063h ; be 63 00 ; 0xc1269 vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc126c + mov es, dx ; 8e c2 ; 0xc126f + mov cx, word [es:si] ; 26 8b 0c ; 0xc1271 + mov AL, strict byte 00ah ; b0 0a ; 0xc1274 vgabios.c:790 + mov dx, cx ; 89 ca ; 0xc1276 + out DX, AL ; ee ; 0xc1278 + mov si, cx ; 89 ce ; 0xc1279 vgabios.c:791 + inc si ; 46 ; 0xc127b + mov al, bl ; 88 d8 ; 0xc127c + mov dx, si ; 89 f2 ; 0xc127e + out DX, AL ; ee ; 0xc1280 + mov AL, strict byte 00bh ; b0 0b ; 0xc1281 vgabios.c:792 + mov dx, cx ; 89 ca ; 0xc1283 + out DX, AL ; ee ; 0xc1285 + mov al, ah ; 88 e0 ; 0xc1286 vgabios.c:793 + mov dx, si ; 89 f2 ; 0xc1288 + out DX, AL ; ee ; 0xc128a + lea sp, [bp-006h] ; 8d 66 fa ; 0xc128b vgabios.c:794 + pop si ; 5e ; 0xc128e + pop cx ; 59 ; 0xc128f + pop bx ; 5b ; 0xc1290 + pop bp ; 5d ; 0xc1291 + retn ; c3 ; 0xc1292 + ; disGetNextSymbol 0xc1293 LB 0x329f -> off=0x0 cb=000000000000008f uValue=00000000000c1293 'biosfn_set_cursor_pos' +biosfn_set_cursor_pos: ; 0xc1293 LB 0x8f + push bp ; 55 ; 0xc1293 vgabios.c:797 + mov bp, sp ; 89 e5 ; 0xc1294 + push bx ; 53 ; 0xc1296 + push cx ; 51 ; 0xc1297 + push si ; 56 ; 0xc1298 + push di ; 57 ; 0xc1299 + push ax ; 50 ; 0xc129a + mov bl, al ; 88 c3 ; 0xc129b + mov cx, dx ; 89 d1 ; 0xc129d + cmp AL, strict byte 007h ; 3c 07 ; 0xc129f vgabios.c:803 + jnbe short 01319h ; 77 76 ; 0xc12a1 + xor ah, ah ; 30 e4 ; 0xc12a3 vgabios.c:806 + mov si, ax ; 89 c6 ; 0xc12a5 + add si, ax ; 01 c6 ; 0xc12a7 + add si, strict byte 00050h ; 83 c6 50 ; 0xc12a9 + mov ax, strict word 00040h ; b8 40 00 ; 0xc12ac vgabios.c:62 + mov es, ax ; 8e c0 ; 0xc12af + mov word [es:si], dx ; 26 89 14 ; 0xc12b1 + mov si, strict word 00062h ; be 62 00 ; 0xc12b4 vgabios.c:47 + mov al, byte [es:si] ; 26 8a 04 ; 0xc12b7 + cmp bl, al ; 38 c3 ; 0xc12ba vgabios.c:810 + jne short 01319h ; 75 5b ; 0xc12bc + mov di, strict word 0004ah ; bf 4a 00 ; 0xc12be vgabios.c:57 + mov di, word [es:di] ; 26 8b 3d ; 0xc12c1 + mov si, 00084h ; be 84 00 ; 0xc12c4 vgabios.c:47 + mov al, byte [es:si] ; 26 8a 04 ; 0xc12c7 + xor ah, ah ; 30 e4 ; 0xc12ca vgabios.c:48 + mov si, ax ; 89 c6 ; 0xc12cc + inc si ; 46 ; 0xc12ce + mov ax, dx ; 89 d0 ; 0xc12cf vgabios.c:816 + xor al, dl ; 30 d0 ; 0xc12d1 + shr ax, 008h ; c1 e8 08 ; 0xc12d3 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc12d6 + mov ax, di ; 89 f8 ; 0xc12d9 vgabios.c:819 + mul si ; f7 e6 ; 0xc12db + or AL, strict byte 0ffh ; 0c ff ; 0xc12dd + xor bh, bh ; 30 ff ; 0xc12df + inc ax ; 40 ; 0xc12e1 + mul bx ; f7 e3 ; 0xc12e2 + mov bl, cl ; 88 cb ; 0xc12e4 + mov si, bx ; 89 de ; 0xc12e6 + add si, ax ; 01 c6 ; 0xc12e8 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc12ea + xor ah, ah ; 30 e4 ; 0xc12ed + mul di ; f7 e7 ; 0xc12ef + add si, ax ; 01 c6 ; 0xc12f1 + mov bx, strict word 00063h ; bb 63 00 ; 0xc12f3 vgabios.c:57 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc12f6 + mov AL, strict byte 00eh ; b0 0e ; 0xc12f9 vgabios.c:823 + mov dx, bx ; 89 da ; 0xc12fb + out DX, AL ; ee ; 0xc12fd + mov ax, si ; 89 f0 ; 0xc12fe vgabios.c:824 + xor al, al ; 30 c0 ; 0xc1300 + shr ax, 008h ; c1 e8 08 ; 0xc1302 + lea cx, [bx+001h] ; 8d 4f 01 ; 0xc1305 + mov dx, cx ; 89 ca ; 0xc1308 + out DX, AL ; ee ; 0xc130a + mov AL, strict byte 00fh ; b0 0f ; 0xc130b vgabios.c:825 + mov dx, bx ; 89 da ; 0xc130d + out DX, AL ; ee ; 0xc130f + and si, 000ffh ; 81 e6 ff 00 ; 0xc1310 vgabios.c:826 + mov ax, si ; 89 f0 ; 0xc1314 + mov dx, cx ; 89 ca ; 0xc1316 + out DX, AL ; ee ; 0xc1318 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc1319 vgabios.c:828 + pop di ; 5f ; 0xc131c + pop si ; 5e ; 0xc131d + pop cx ; 59 ; 0xc131e + pop bx ; 5b ; 0xc131f + pop bp ; 5d ; 0xc1320 + retn ; c3 ; 0xc1321 + ; disGetNextSymbol 0xc1322 LB 0x3210 -> off=0x0 cb=00000000000000d8 uValue=00000000000c1322 'biosfn_set_active_page' +biosfn_set_active_page: ; 0xc1322 LB 0xd8 + push bp ; 55 ; 0xc1322 vgabios.c:831 + mov bp, sp ; 89 e5 ; 0xc1323 + push bx ; 53 ; 0xc1325 + push cx ; 51 ; 0xc1326 + push dx ; 52 ; 0xc1327 + push si ; 56 ; 0xc1328 + push di ; 57 ; 0xc1329 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc132a + mov cl, al ; 88 c1 ; 0xc132d + cmp AL, strict byte 007h ; 3c 07 ; 0xc132f vgabios.c:837 + jnbe short 01349h ; 77 16 ; 0xc1331 + mov bx, strict word 00049h ; bb 49 00 ; 0xc1333 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1336 + mov es, ax ; 8e c0 ; 0xc1339 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc133b + xor ah, ah ; 30 e4 ; 0xc133e vgabios.c:841 + call 03819h ; e8 d6 24 ; 0xc1340 + mov ch, al ; 88 c5 ; 0xc1343 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1345 vgabios.c:842 + jne short 0134ch ; 75 03 ; 0xc1347 + jmp near 013f0h ; e9 a4 00 ; 0xc1349 + mov al, cl ; 88 c8 ; 0xc134c vgabios.c:845 + xor ah, ah ; 30 e4 ; 0xc134e + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc1350 + lea dx, [bp-010h] ; 8d 56 f0 ; 0xc1353 + call 00a96h ; e8 3d f7 ; 0xc1356 + mov bl, ch ; 88 eb ; 0xc1359 vgabios.c:847 + xor bh, bh ; 30 ff ; 0xc135b + mov si, bx ; 89 de ; 0xc135d + sal si, 003h ; c1 e6 03 ; 0xc135f + cmp byte [si+047b0h], 000h ; 80 bc b0 47 00 ; 0xc1362 + jne short 013a8h ; 75 3f ; 0xc1367 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1369 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc136c + mov es, ax ; 8e c0 ; 0xc136f + mov dx, word [es:bx] ; 26 8b 17 ; 0xc1371 + mov bx, 00084h ; bb 84 00 ; 0xc1374 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1377 + xor ah, ah ; 30 e4 ; 0xc137a vgabios.c:48 + mov bx, ax ; 89 c3 ; 0xc137c + inc bx ; 43 ; 0xc137e + mov ax, dx ; 89 d0 ; 0xc137f vgabios.c:854 + mul bx ; f7 e3 ; 0xc1381 + mov di, ax ; 89 c7 ; 0xc1383 + add ax, ax ; 01 c0 ; 0xc1385 + or AL, strict byte 0ffh ; 0c ff ; 0xc1387 + mov byte [bp-00ch], cl ; 88 4e f4 ; 0xc1389 + mov byte [bp-00bh], 000h ; c6 46 f5 00 ; 0xc138c + inc ax ; 40 ; 0xc1390 + mul word [bp-00ch] ; f7 66 f4 ; 0xc1391 + mov bx, ax ; 89 c3 ; 0xc1394 + mov si, strict word 0004eh ; be 4e 00 ; 0xc1396 vgabios.c:62 + mov word [es:si], ax ; 26 89 04 ; 0xc1399 + or di, 000ffh ; 81 cf ff 00 ; 0xc139c vgabios.c:858 + lea ax, [di+001h] ; 8d 45 01 ; 0xc13a0 + mul word [bp-00ch] ; f7 66 f4 ; 0xc13a3 + jmp short 013b7h ; eb 0f ; 0xc13a6 vgabios.c:860 + mov bl, byte [bx+0482fh] ; 8a 9f 2f 48 ; 0xc13a8 vgabios.c:862 + sal bx, 006h ; c1 e3 06 ; 0xc13ac + mov al, cl ; 88 c8 ; 0xc13af + xor ah, ah ; 30 e4 ; 0xc13b1 + mul word [bx+04846h] ; f7 a7 46 48 ; 0xc13b3 + mov bx, ax ; 89 c3 ; 0xc13b7 + mov si, strict word 00063h ; be 63 00 ; 0xc13b9 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc13bc + mov es, ax ; 8e c0 ; 0xc13bf + mov si, word [es:si] ; 26 8b 34 ; 0xc13c1 + mov AL, strict byte 00ch ; b0 0c ; 0xc13c4 vgabios.c:867 + mov dx, si ; 89 f2 ; 0xc13c6 + out DX, AL ; ee ; 0xc13c8 + mov ax, bx ; 89 d8 ; 0xc13c9 vgabios.c:868 + xor al, bl ; 30 d8 ; 0xc13cb + shr ax, 008h ; c1 e8 08 ; 0xc13cd + lea di, [si+001h] ; 8d 7c 01 ; 0xc13d0 + mov dx, di ; 89 fa ; 0xc13d3 + out DX, AL ; ee ; 0xc13d5 + mov AL, strict byte 00dh ; b0 0d ; 0xc13d6 vgabios.c:869 + mov dx, si ; 89 f2 ; 0xc13d8 + out DX, AL ; ee ; 0xc13da + xor bh, bh ; 30 ff ; 0xc13db vgabios.c:870 + mov ax, bx ; 89 d8 ; 0xc13dd + mov dx, di ; 89 fa ; 0xc13df + out DX, AL ; ee ; 0xc13e1 + mov bx, strict word 00062h ; bb 62 00 ; 0xc13e2 vgabios.c:52 + mov byte [es:bx], cl ; 26 88 0f ; 0xc13e5 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc13e8 vgabios.c:880 + mov al, cl ; 88 c8 ; 0xc13eb + call 01293h ; e8 a3 fe ; 0xc13ed + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc13f0 vgabios.c:881 + pop di ; 5f ; 0xc13f3 + pop si ; 5e ; 0xc13f4 + pop dx ; 5a ; 0xc13f5 + pop cx ; 59 ; 0xc13f6 + pop bx ; 5b ; 0xc13f7 + pop bp ; 5d ; 0xc13f8 + retn ; c3 ; 0xc13f9 + ; disGetNextSymbol 0xc13fa LB 0x3138 -> off=0x0 cb=0000000000000045 uValue=00000000000c13fa 'find_vpti' +find_vpti: ; 0xc13fa LB 0x45 + push bx ; 53 ; 0xc13fa vgabios.c:916 + push si ; 56 ; 0xc13fb + push bp ; 55 ; 0xc13fc + mov bp, sp ; 89 e5 ; 0xc13fd + mov bl, al ; 88 c3 ; 0xc13ff vgabios.c:921 + xor bh, bh ; 30 ff ; 0xc1401 + mov si, bx ; 89 de ; 0xc1403 + sal si, 003h ; c1 e6 03 ; 0xc1405 + cmp byte [si+047b0h], 000h ; 80 bc b0 47 00 ; 0xc1408 + jne short 01435h ; 75 26 ; 0xc140d + mov si, 00089h ; be 89 00 ; 0xc140f vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1412 + mov es, ax ; 8e c0 ; 0xc1415 + mov al, byte [es:si] ; 26 8a 04 ; 0xc1417 + test AL, strict byte 010h ; a8 10 ; 0xc141a vgabios.c:923 + je short 01424h ; 74 06 ; 0xc141c + mov al, byte [bx+07df6h] ; 8a 87 f6 7d ; 0xc141e vgabios.c:924 + jmp short 01432h ; eb 0e ; 0xc1422 vgabios.c:925 + test AL, strict byte 080h ; a8 80 ; 0xc1424 + je short 0142eh ; 74 06 ; 0xc1426 + mov al, byte [bx+07de6h] ; 8a 87 e6 7d ; 0xc1428 vgabios.c:926 + jmp short 01432h ; eb 04 ; 0xc142c vgabios.c:927 + mov al, byte [bx+07deeh] ; 8a 87 ee 7d ; 0xc142e vgabios.c:928 + cbw ; 98 ; 0xc1432 + jmp short 0143bh ; eb 06 ; 0xc1433 vgabios.c:929 + mov al, byte [bx+0482fh] ; 8a 87 2f 48 ; 0xc1435 vgabios.c:930 + xor ah, ah ; 30 e4 ; 0xc1439 + pop bp ; 5d ; 0xc143b vgabios.c:933 + pop si ; 5e ; 0xc143c + pop bx ; 5b ; 0xc143d + retn ; c3 ; 0xc143e + ; disGetNextSymbol 0xc143f LB 0x30f3 -> off=0x0 cb=00000000000004d5 uValue=00000000000c143f 'biosfn_set_video_mode' +biosfn_set_video_mode: ; 0xc143f LB 0x4d5 + push bp ; 55 ; 0xc143f vgabios.c:938 + mov bp, sp ; 89 e5 ; 0xc1440 + push bx ; 53 ; 0xc1442 + push cx ; 51 ; 0xc1443 + push dx ; 52 ; 0xc1444 + push si ; 56 ; 0xc1445 + push di ; 57 ; 0xc1446 + sub sp, strict byte 00018h ; 83 ec 18 ; 0xc1447 + mov byte [bp-010h], al ; 88 46 f0 ; 0xc144a + and AL, strict byte 080h ; 24 80 ; 0xc144d vgabios.c:942 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc144f + call 007bfh ; e8 6a f3 ; 0xc1452 vgabios.c:952 + test ax, ax ; 85 c0 ; 0xc1455 + je short 01465h ; 74 0c ; 0xc1457 + mov AL, strict byte 007h ; b0 07 ; 0xc1459 vgabios.c:954 + mov dx, 003c4h ; ba c4 03 ; 0xc145b + out DX, AL ; ee ; 0xc145e + xor al, al ; 30 c0 ; 0xc145f vgabios.c:955 + mov dx, 003c5h ; ba c5 03 ; 0xc1461 + out DX, AL ; ee ; 0xc1464 + and byte [bp-010h], 07fh ; 80 66 f0 7f ; 0xc1465 vgabios.c:960 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1469 vgabios.c:966 + xor ah, ah ; 30 e4 ; 0xc146c + call 03819h ; e8 a8 23 ; 0xc146e + mov cl, al ; 88 c1 ; 0xc1471 + mov byte [bp-012h], al ; 88 46 ee ; 0xc1473 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1476 vgabios.c:972 + je short 014e5h ; 74 6b ; 0xc1478 + mov bx, 000a8h ; bb a8 00 ; 0xc147a vgabios.c:67 + mov ax, strict word 00040h ; b8 40 00 ; 0xc147d + mov es, ax ; 8e c0 ; 0xc1480 + mov di, word [es:bx] ; 26 8b 3f ; 0xc1482 + mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xc1485 + mov bx, di ; 89 fb ; 0xc1489 vgabios.c:68 + mov word [bp-018h], ax ; 89 46 e8 ; 0xc148b + xor ch, ch ; 30 ed ; 0xc148e vgabios.c:978 + mov ax, cx ; 89 c8 ; 0xc1490 + call 013fah ; e8 65 ff ; 0xc1492 + mov es, [bp-018h] ; 8e 46 e8 ; 0xc1495 vgabios.c:979 + mov si, word [es:di] ; 26 8b 35 ; 0xc1498 + mov dx, word [es:di+002h] ; 26 8b 55 02 ; 0xc149b + mov word [bp-01eh], dx ; 89 56 e2 ; 0xc149f + xor ah, ah ; 30 e4 ; 0xc14a2 vgabios.c:980 + sal ax, 006h ; c1 e0 06 ; 0xc14a4 + add si, ax ; 01 c6 ; 0xc14a7 + mov di, 00089h ; bf 89 00 ; 0xc14a9 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc14ac + mov es, ax ; 8e c0 ; 0xc14af + mov al, byte [es:di] ; 26 8a 05 ; 0xc14b1 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc14b4 vgabios.c:48 + test AL, strict byte 008h ; a8 08 ; 0xc14b7 vgabios.c:997 + jne short 01501h ; 75 46 ; 0xc14b9 + mov di, cx ; 89 cf ; 0xc14bb vgabios.c:999 + sal di, 003h ; c1 e7 03 ; 0xc14bd + mov al, byte [di+047b5h] ; 8a 85 b5 47 ; 0xc14c0 + mov dx, 003c6h ; ba c6 03 ; 0xc14c4 + out DX, AL ; ee ; 0xc14c7 + xor al, al ; 30 c0 ; 0xc14c8 vgabios.c:1002 + mov dx, 003c8h ; ba c8 03 ; 0xc14ca + out DX, AL ; ee ; 0xc14cd + mov cl, byte [di+047b6h] ; 8a 8d b6 47 ; 0xc14ce vgabios.c:1005 + cmp cl, 001h ; 80 f9 01 ; 0xc14d2 + jc short 014e8h ; 72 11 ; 0xc14d5 + jbe short 014f3h ; 76 1a ; 0xc14d7 + cmp cl, 003h ; 80 f9 03 ; 0xc14d9 + je short 01504h ; 74 26 ; 0xc14dc + cmp cl, 002h ; 80 f9 02 ; 0xc14de + je short 014fah ; 74 17 ; 0xc14e1 + jmp short 01509h ; eb 24 ; 0xc14e3 + jmp near 0190ah ; e9 22 04 ; 0xc14e5 + test cl, cl ; 84 c9 ; 0xc14e8 + jne short 01509h ; 75 1d ; 0xc14ea + mov word [bp-014h], 04fc3h ; c7 46 ec c3 4f ; 0xc14ec vgabios.c:1007 + jmp short 01509h ; eb 16 ; 0xc14f1 vgabios.c:1008 + mov word [bp-014h], 05083h ; c7 46 ec 83 50 ; 0xc14f3 vgabios.c:1010 + jmp short 01509h ; eb 0f ; 0xc14f8 vgabios.c:1011 + mov word [bp-014h], 05143h ; c7 46 ec 43 51 ; 0xc14fa vgabios.c:1013 + jmp short 01509h ; eb 08 ; 0xc14ff vgabios.c:1014 + jmp near 01578h ; e9 74 00 ; 0xc1501 + mov word [bp-014h], 05203h ; c7 46 ec 03 52 ; 0xc1504 vgabios.c:1016 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc1509 vgabios.c:1020 + xor ah, ah ; 30 e4 ; 0xc150c + mov di, ax ; 89 c7 ; 0xc150e + sal di, 003h ; c1 e7 03 ; 0xc1510 + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc1513 + jne short 01529h ; 75 0f ; 0xc1518 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc151a vgabios.c:1022 + cmp byte [es:si+002h], 008h ; 26 80 7c 02 08 ; 0xc151d + jne short 01529h ; 75 05 ; 0xc1522 + mov word [bp-014h], 05083h ; c7 46 ec 83 50 ; 0xc1524 vgabios.c:1023 + xor cx, cx ; 31 c9 ; 0xc1529 vgabios.c:1026 + jmp short 0153ch ; eb 0f ; 0xc152b + xor al, al ; 30 c0 ; 0xc152d vgabios.c:1033 + mov dx, 003c9h ; ba c9 03 ; 0xc152f + out DX, AL ; ee ; 0xc1532 + out DX, AL ; ee ; 0xc1533 vgabios.c:1034 + out DX, AL ; ee ; 0xc1534 vgabios.c:1035 + inc cx ; 41 ; 0xc1535 vgabios.c:1037 + cmp cx, 00100h ; 81 f9 00 01 ; 0xc1536 + jnc short 0156ah ; 73 2e ; 0xc153a + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc153c + xor ah, ah ; 30 e4 ; 0xc153f + mov di, ax ; 89 c7 ; 0xc1541 + sal di, 003h ; c1 e7 03 ; 0xc1543 + mov al, byte [di+047b6h] ; 8a 85 b6 47 ; 0xc1546 + mov di, ax ; 89 c7 ; 0xc154a + mov al, byte [di+0483fh] ; 8a 85 3f 48 ; 0xc154c + cmp cx, ax ; 39 c1 ; 0xc1550 + jnbe short 0152dh ; 77 d9 ; 0xc1552 + imul di, cx, strict byte 00003h ; 6b f9 03 ; 0xc1554 + add di, word [bp-014h] ; 03 7e ec ; 0xc1557 + mov al, byte [di] ; 8a 05 ; 0xc155a + mov dx, 003c9h ; ba c9 03 ; 0xc155c + out DX, AL ; ee ; 0xc155f + mov al, byte [di+001h] ; 8a 45 01 ; 0xc1560 + out DX, AL ; ee ; 0xc1563 + mov al, byte [di+002h] ; 8a 45 02 ; 0xc1564 + out DX, AL ; ee ; 0xc1567 + jmp short 01535h ; eb cb ; 0xc1568 + test byte [bp-00ch], 002h ; f6 46 f4 02 ; 0xc156a vgabios.c:1038 + je short 01578h ; 74 08 ; 0xc156e + mov dx, 00100h ; ba 00 01 ; 0xc1570 vgabios.c:1040 + xor ax, ax ; 31 c0 ; 0xc1573 + call 010ffh ; e8 87 fb ; 0xc1575 + mov dx, 003dah ; ba da 03 ; 0xc1578 vgabios.c:1045 + in AL, DX ; ec ; 0xc157b + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc157c + xor cx, cx ; 31 c9 ; 0xc157e vgabios.c:1048 + jmp short 01587h ; eb 05 ; 0xc1580 + cmp cx, strict byte 00013h ; 83 f9 13 ; 0xc1582 + jnbe short 0159ch ; 77 15 ; 0xc1585 + mov al, cl ; 88 c8 ; 0xc1587 vgabios.c:1049 + mov dx, 003c0h ; ba c0 03 ; 0xc1589 + out DX, AL ; ee ; 0xc158c + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc158d vgabios.c:1050 + mov di, si ; 89 f7 ; 0xc1590 + add di, cx ; 01 cf ; 0xc1592 + mov al, byte [es:di+023h] ; 26 8a 45 23 ; 0xc1594 + out DX, AL ; ee ; 0xc1598 + inc cx ; 41 ; 0xc1599 vgabios.c:1051 + jmp short 01582h ; eb e6 ; 0xc159a + mov AL, strict byte 014h ; b0 14 ; 0xc159c vgabios.c:1052 + mov dx, 003c0h ; ba c0 03 ; 0xc159e + out DX, AL ; ee ; 0xc15a1 + xor al, al ; 30 c0 ; 0xc15a2 vgabios.c:1053 + out DX, AL ; ee ; 0xc15a4 + mov es, [bp-018h] ; 8e 46 e8 ; 0xc15a5 vgabios.c:1056 + mov dx, word [es:bx+004h] ; 26 8b 57 04 ; 0xc15a8 + mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xc15ac + test ax, ax ; 85 c0 ; 0xc15b0 + jne short 015b8h ; 75 04 ; 0xc15b2 + test dx, dx ; 85 d2 ; 0xc15b4 + je short 015f5h ; 74 3d ; 0xc15b6 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc15b8 vgabios.c:1060 + xor cx, cx ; 31 c9 ; 0xc15bb vgabios.c:1061 + jmp short 015c4h ; eb 05 ; 0xc15bd + cmp cx, strict byte 00010h ; 83 f9 10 ; 0xc15bf + jnc short 015e5h ; 73 21 ; 0xc15c2 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc15c4 vgabios.c:1062 + mov di, si ; 89 f7 ; 0xc15c7 + add di, cx ; 01 cf ; 0xc15c9 + mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xc15cb + mov word [bp-020h], ax ; 89 46 e0 ; 0xc15ce + mov ax, dx ; 89 d0 ; 0xc15d1 + add ax, cx ; 01 c8 ; 0xc15d3 + mov word [bp-022h], ax ; 89 46 de ; 0xc15d5 + mov al, byte [es:di+023h] ; 26 8a 45 23 ; 0xc15d8 + les di, [bp-022h] ; c4 7e de ; 0xc15dc + mov byte [es:di], al ; 26 88 05 ; 0xc15df + inc cx ; 41 ; 0xc15e2 + jmp short 015bfh ; eb da ; 0xc15e3 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc15e5 vgabios.c:1063 + mov al, byte [es:si+034h] ; 26 8a 44 34 ; 0xc15e8 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc15ec + mov di, dx ; 89 d7 ; 0xc15ef + mov byte [es:di+010h], al ; 26 88 45 10 ; 0xc15f1 + xor al, al ; 30 c0 ; 0xc15f5 vgabios.c:1067 + mov dx, 003c4h ; ba c4 03 ; 0xc15f7 + out DX, AL ; ee ; 0xc15fa + mov AL, strict byte 003h ; b0 03 ; 0xc15fb vgabios.c:1068 + mov dx, 003c5h ; ba c5 03 ; 0xc15fd + out DX, AL ; ee ; 0xc1600 + mov cx, strict word 00001h ; b9 01 00 ; 0xc1601 vgabios.c:1069 + jmp short 0160bh ; eb 05 ; 0xc1604 + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc1606 + jnbe short 01623h ; 77 18 ; 0xc1609 + mov al, cl ; 88 c8 ; 0xc160b vgabios.c:1070 + mov dx, 003c4h ; ba c4 03 ; 0xc160d + out DX, AL ; ee ; 0xc1610 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc1611 vgabios.c:1071 + mov di, si ; 89 f7 ; 0xc1614 + add di, cx ; 01 cf ; 0xc1616 + mov al, byte [es:di+004h] ; 26 8a 45 04 ; 0xc1618 + mov dx, 003c5h ; ba c5 03 ; 0xc161c + out DX, AL ; ee ; 0xc161f + inc cx ; 41 ; 0xc1620 vgabios.c:1072 + jmp short 01606h ; eb e3 ; 0xc1621 + xor cx, cx ; 31 c9 ; 0xc1623 vgabios.c:1075 + jmp short 0162ch ; eb 05 ; 0xc1625 + cmp cx, strict byte 00008h ; 83 f9 08 ; 0xc1627 + jnbe short 01644h ; 77 18 ; 0xc162a + mov al, cl ; 88 c8 ; 0xc162c vgabios.c:1076 + mov dx, 003ceh ; ba ce 03 ; 0xc162e + out DX, AL ; ee ; 0xc1631 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc1632 vgabios.c:1077 + mov di, si ; 89 f7 ; 0xc1635 + add di, cx ; 01 cf ; 0xc1637 + mov al, byte [es:di+037h] ; 26 8a 45 37 ; 0xc1639 + mov dx, 003cfh ; ba cf 03 ; 0xc163d + out DX, AL ; ee ; 0xc1640 + inc cx ; 41 ; 0xc1641 vgabios.c:1078 + jmp short 01627h ; eb e3 ; 0xc1642 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc1644 vgabios.c:1081 + xor ah, ah ; 30 e4 ; 0xc1647 + mov di, ax ; 89 c7 ; 0xc1649 + sal di, 003h ; c1 e7 03 ; 0xc164b + cmp byte [di+047b1h], 001h ; 80 bd b1 47 01 ; 0xc164e + jne short 0165ah ; 75 05 ; 0xc1653 + mov cx, 003b4h ; b9 b4 03 ; 0xc1655 + jmp short 0165dh ; eb 03 ; 0xc1658 + mov cx, 003d4h ; b9 d4 03 ; 0xc165a + mov word [bp-016h], cx ; 89 4e ea ; 0xc165d + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc1660 vgabios.c:1084 + mov al, byte [es:si+009h] ; 26 8a 44 09 ; 0xc1663 + mov dx, 003c2h ; ba c2 03 ; 0xc1667 + out DX, AL ; ee ; 0xc166a + mov ax, strict word 00011h ; b8 11 00 ; 0xc166b vgabios.c:1087 + mov dx, cx ; 89 ca ; 0xc166e + out DX, ax ; ef ; 0xc1670 + xor cx, cx ; 31 c9 ; 0xc1671 vgabios.c:1089 + jmp short 0167ah ; eb 05 ; 0xc1673 + cmp cx, strict byte 00018h ; 83 f9 18 ; 0xc1675 + jnbe short 01690h ; 77 16 ; 0xc1678 + mov al, cl ; 88 c8 ; 0xc167a vgabios.c:1090 + mov dx, word [bp-016h] ; 8b 56 ea ; 0xc167c + out DX, AL ; ee ; 0xc167f + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc1680 vgabios.c:1091 + mov di, si ; 89 f7 ; 0xc1683 + add di, cx ; 01 cf ; 0xc1685 + inc dx ; 42 ; 0xc1687 + mov al, byte [es:di+00ah] ; 26 8a 45 0a ; 0xc1688 + out DX, AL ; ee ; 0xc168c + inc cx ; 41 ; 0xc168d vgabios.c:1092 + jmp short 01675h ; eb e5 ; 0xc168e + mov AL, strict byte 020h ; b0 20 ; 0xc1690 vgabios.c:1095 + mov dx, 003c0h ; ba c0 03 ; 0xc1692 + out DX, AL ; ee ; 0xc1695 + mov dx, word [bp-016h] ; 8b 56 ea ; 0xc1696 vgabios.c:1096 + add dx, strict byte 00006h ; 83 c2 06 ; 0xc1699 + in AL, DX ; ec ; 0xc169c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc169d + cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xc169f vgabios.c:1098 + jne short 01704h ; 75 5f ; 0xc16a3 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc16a5 vgabios.c:1100 + xor ah, ah ; 30 e4 ; 0xc16a8 + mov di, ax ; 89 c7 ; 0xc16aa + sal di, 003h ; c1 e7 03 ; 0xc16ac + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc16af + jne short 016c8h ; 75 12 ; 0xc16b4 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc16b6 vgabios.c:1102 + mov cx, 04000h ; b9 00 40 ; 0xc16ba + mov ax, 00720h ; b8 20 07 ; 0xc16bd + xor di, di ; 31 ff ; 0xc16c0 + jcxz 016c6h ; e3 02 ; 0xc16c2 + rep stosw ; f3 ab ; 0xc16c4 + jmp short 01704h ; eb 3c ; 0xc16c6 vgabios.c:1104 + cmp byte [bp-010h], 00dh ; 80 7e f0 0d ; 0xc16c8 vgabios.c:1106 + jnc short 016dfh ; 73 11 ; 0xc16cc + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc16ce vgabios.c:1108 + mov cx, 04000h ; b9 00 40 ; 0xc16d2 + xor al, al ; 30 c0 ; 0xc16d5 + xor di, di ; 31 ff ; 0xc16d7 + jcxz 016ddh ; e3 02 ; 0xc16d9 + rep stosw ; f3 ab ; 0xc16db + jmp short 01704h ; eb 25 ; 0xc16dd vgabios.c:1110 + mov AL, strict byte 002h ; b0 02 ; 0xc16df vgabios.c:1112 + mov dx, 003c4h ; ba c4 03 ; 0xc16e1 + out DX, AL ; ee ; 0xc16e4 + mov dx, 003c5h ; ba c5 03 ; 0xc16e5 vgabios.c:1113 + in AL, DX ; ec ; 0xc16e8 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc16e9 + mov word [bp-020h], ax ; 89 46 e0 ; 0xc16eb + mov AL, strict byte 00fh ; b0 0f ; 0xc16ee vgabios.c:1114 + out DX, AL ; ee ; 0xc16f0 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc16f1 vgabios.c:1115 + mov cx, 08000h ; b9 00 80 ; 0xc16f5 + xor ax, ax ; 31 c0 ; 0xc16f8 + xor di, di ; 31 ff ; 0xc16fa + jcxz 01700h ; e3 02 ; 0xc16fc + rep stosw ; f3 ab ; 0xc16fe + mov al, byte [bp-020h] ; 8a 46 e0 ; 0xc1700 vgabios.c:1116 + out DX, AL ; ee ; 0xc1703 + mov di, strict word 00049h ; bf 49 00 ; 0xc1704 vgabios.c:52 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1707 + mov es, ax ; 8e c0 ; 0xc170a + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc170c + mov byte [es:di], al ; 26 88 05 ; 0xc170f + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc1712 vgabios.c:1123 + mov al, byte [es:si] ; 26 8a 04 ; 0xc1715 + xor ah, ah ; 30 e4 ; 0xc1718 + mov di, strict word 0004ah ; bf 4a 00 ; 0xc171a vgabios.c:62 + mov dx, strict word 00040h ; ba 40 00 ; 0xc171d + mov es, dx ; 8e c2 ; 0xc1720 + mov word [es:di], ax ; 26 89 05 ; 0xc1722 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc1725 vgabios.c:60 + mov ax, word [es:si+003h] ; 26 8b 44 03 ; 0xc1728 + mov di, strict word 0004ch ; bf 4c 00 ; 0xc172c vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc172f + mov word [es:di], ax ; 26 89 05 ; 0xc1731 + mov di, strict word 00063h ; bf 63 00 ; 0xc1734 vgabios.c:62 + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc1737 + mov word [es:di], ax ; 26 89 05 ; 0xc173a + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc173d vgabios.c:50 + mov al, byte [es:si+001h] ; 26 8a 44 01 ; 0xc1740 + mov di, 00084h ; bf 84 00 ; 0xc1744 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc1747 + mov byte [es:di], al ; 26 88 05 ; 0xc1749 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc174c vgabios.c:1127 + mov al, byte [es:si+002h] ; 26 8a 44 02 ; 0xc174f + xor ah, ah ; 30 e4 ; 0xc1753 + mov di, 00085h ; bf 85 00 ; 0xc1755 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc1758 + mov word [es:di], ax ; 26 89 05 ; 0xc175a + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc175d vgabios.c:1128 + or AL, strict byte 060h ; 0c 60 ; 0xc1760 + mov di, 00087h ; bf 87 00 ; 0xc1762 vgabios.c:52 + mov byte [es:di], al ; 26 88 05 ; 0xc1765 + mov di, 00088h ; bf 88 00 ; 0xc1768 vgabios.c:52 + mov byte [es:di], 0f9h ; 26 c6 05 f9 ; 0xc176b + mov di, 0008ah ; bf 8a 00 ; 0xc176f vgabios.c:52 + mov byte [es:di], 008h ; 26 c6 05 08 ; 0xc1772 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1776 vgabios.c:1134 + cmp AL, strict byte 007h ; 3c 07 ; 0xc1779 + jnbe short 017a2h ; 77 25 ; 0xc177b + mov di, ax ; 89 c7 ; 0xc177d vgabios.c:1136 + mov al, byte [di+07ddeh] ; 8a 85 de 7d ; 0xc177f + mov di, strict word 00065h ; bf 65 00 ; 0xc1783 vgabios.c:52 + mov byte [es:di], al ; 26 88 05 ; 0xc1786 + cmp byte [bp-010h], 006h ; 80 7e f0 06 ; 0xc1789 vgabios.c:1137 + jne short 01794h ; 75 05 ; 0xc178d + mov ax, strict word 0003fh ; b8 3f 00 ; 0xc178f + jmp short 01797h ; eb 03 ; 0xc1792 + mov ax, strict word 00030h ; b8 30 00 ; 0xc1794 + mov di, strict word 00066h ; bf 66 00 ; 0xc1797 vgabios.c:52 + mov dx, strict word 00040h ; ba 40 00 ; 0xc179a + mov es, dx ; 8e c2 ; 0xc179d + mov byte [es:di], al ; 26 88 05 ; 0xc179f + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc17a2 vgabios.c:1141 + xor ah, ah ; 30 e4 ; 0xc17a5 + mov di, ax ; 89 c7 ; 0xc17a7 + sal di, 003h ; c1 e7 03 ; 0xc17a9 + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc17ac + jne short 017bch ; 75 09 ; 0xc17b1 + mov dx, strict word 00007h ; ba 07 00 ; 0xc17b3 vgabios.c:1143 + mov ax, strict word 00006h ; b8 06 00 ; 0xc17b6 + call 0118ch ; e8 d0 f9 ; 0xc17b9 + xor cx, cx ; 31 c9 ; 0xc17bc vgabios.c:1148 + jmp short 017c5h ; eb 05 ; 0xc17be + cmp cx, strict byte 00008h ; 83 f9 08 ; 0xc17c0 + jnc short 017d1h ; 73 0c ; 0xc17c3 + mov al, cl ; 88 c8 ; 0xc17c5 vgabios.c:1149 + xor ah, ah ; 30 e4 ; 0xc17c7 + xor dx, dx ; 31 d2 ; 0xc17c9 + call 01293h ; e8 c5 fa ; 0xc17cb + inc cx ; 41 ; 0xc17ce + jmp short 017c0h ; eb ef ; 0xc17cf + xor ax, ax ; 31 c0 ; 0xc17d1 vgabios.c:1152 + call 01322h ; e8 4c fb ; 0xc17d3 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc17d6 vgabios.c:1155 + xor ah, ah ; 30 e4 ; 0xc17d9 + mov di, ax ; 89 c7 ; 0xc17db + sal di, 003h ; c1 e7 03 ; 0xc17dd + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc17e0 + jne short 01851h ; 75 6a ; 0xc17e5 + mov es, [bp-018h] ; 8e 46 e8 ; 0xc17e7 vgabios.c:1157 + mov di, word [es:bx+008h] ; 26 8b 7f 08 ; 0xc17ea + mov ax, word [es:bx+00ah] ; 26 8b 47 0a ; 0xc17ee + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc17f2 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc17f5 vgabios.c:1159 + mov bl, byte [es:si+002h] ; 26 8a 5c 02 ; 0xc17f8 + cmp bl, 00eh ; 80 fb 0e ; 0xc17fc + je short 01824h ; 74 23 ; 0xc17ff + cmp bl, 008h ; 80 fb 08 ; 0xc1801 + jne short 01854h ; 75 4e ; 0xc1804 + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc1806 vgabios.c:1161 + mov al, byte [es:si+002h] ; 26 8a 44 02 ; 0xc1809 + xor ah, ah ; 30 e4 ; 0xc180d + push ax ; 50 ; 0xc180f + push strict byte 00000h ; 6a 00 ; 0xc1810 + push strict byte 00000h ; 6a 00 ; 0xc1812 + mov cx, 00100h ; b9 00 01 ; 0xc1814 + mov bx, 0556dh ; bb 6d 55 ; 0xc1817 + mov dx, 0c000h ; ba 00 c0 ; 0xc181a + xor al, al ; 30 c0 ; 0xc181d + call 02e1ah ; e8 f8 15 ; 0xc181f + jmp short 01879h ; eb 55 ; 0xc1822 vgabios.c:1162 + mov al, bl ; 88 d8 ; 0xc1824 vgabios.c:1164 + xor ah, ah ; 30 e4 ; 0xc1826 + push ax ; 50 ; 0xc1828 + push strict byte 00000h ; 6a 00 ; 0xc1829 + push strict byte 00000h ; 6a 00 ; 0xc182b + mov cx, 00100h ; b9 00 01 ; 0xc182d + mov bx, 05d6dh ; bb 6d 5d ; 0xc1830 + mov dx, 0c000h ; ba 00 c0 ; 0xc1833 + xor al, al ; 30 c0 ; 0xc1836 + call 02e1ah ; e8 df 15 ; 0xc1838 + cmp byte [bp-010h], 007h ; 80 7e f0 07 ; 0xc183b vgabios.c:1165 + jne short 01879h ; 75 38 ; 0xc183f + mov cx, strict word 0000eh ; b9 0e 00 ; 0xc1841 vgabios.c:1166 + xor bx, bx ; 31 db ; 0xc1844 + mov dx, 07b6dh ; ba 6d 7b ; 0xc1846 + mov ax, 0c000h ; b8 00 c0 ; 0xc1849 + call 02da5h ; e8 56 15 ; 0xc184c + jmp short 01879h ; eb 28 ; 0xc184f vgabios.c:1167 + jmp near 018d5h ; e9 81 00 ; 0xc1851 + mov al, bl ; 88 d8 ; 0xc1854 vgabios.c:1169 + xor ah, ah ; 30 e4 ; 0xc1856 + push ax ; 50 ; 0xc1858 + push strict byte 00000h ; 6a 00 ; 0xc1859 + push strict byte 00000h ; 6a 00 ; 0xc185b + mov cx, 00100h ; b9 00 01 ; 0xc185d + mov bx, 06b6dh ; bb 6d 6b ; 0xc1860 + mov dx, 0c000h ; ba 00 c0 ; 0xc1863 + xor al, al ; 30 c0 ; 0xc1866 + call 02e1ah ; e8 af 15 ; 0xc1868 + mov cx, strict word 00010h ; b9 10 00 ; 0xc186b vgabios.c:1170 + xor bx, bx ; 31 db ; 0xc186e + mov dx, 07c9ah ; ba 9a 7c ; 0xc1870 + mov ax, 0c000h ; b8 00 c0 ; 0xc1873 + call 02da5h ; e8 2c 15 ; 0xc1876 + cmp word [bp-01ch], strict byte 00000h ; 83 7e e4 00 ; 0xc1879 vgabios.c:1172 + jne short 01883h ; 75 04 ; 0xc187d + test di, di ; 85 ff ; 0xc187f + je short 018cdh ; 74 4a ; 0xc1881 + xor cx, cx ; 31 c9 ; 0xc1883 vgabios.c:1177 + mov es, [bp-01ch] ; 8e 46 e4 ; 0xc1885 vgabios.c:1179 + mov bx, di ; 89 fb ; 0xc1888 + add bx, cx ; 01 cb ; 0xc188a + mov al, byte [es:bx+00bh] ; 26 8a 47 0b ; 0xc188c + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1890 + je short 0189ch ; 74 08 ; 0xc1892 + cmp al, byte [bp-010h] ; 3a 46 f0 ; 0xc1894 vgabios.c:1181 + je short 0189ch ; 74 03 ; 0xc1897 + inc cx ; 41 ; 0xc1899 vgabios.c:1183 + jmp short 01885h ; eb e9 ; 0xc189a vgabios.c:1184 + mov es, [bp-01ch] ; 8e 46 e4 ; 0xc189c vgabios.c:1186 + mov bx, di ; 89 fb ; 0xc189f + add bx, cx ; 01 cb ; 0xc18a1 + mov al, byte [es:bx+00bh] ; 26 8a 47 0b ; 0xc18a3 + cmp al, byte [bp-010h] ; 3a 46 f0 ; 0xc18a7 + jne short 018cdh ; 75 21 ; 0xc18aa + mov al, byte [es:di] ; 26 8a 05 ; 0xc18ac vgabios.c:1191 + xor ah, ah ; 30 e4 ; 0xc18af + push ax ; 50 ; 0xc18b1 + mov al, byte [es:di+001h] ; 26 8a 45 01 ; 0xc18b2 + push ax ; 50 ; 0xc18b6 + push word [es:di+004h] ; 26 ff 75 04 ; 0xc18b7 + mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xc18bb + mov bx, word [es:di+006h] ; 26 8b 5d 06 ; 0xc18bf + mov dx, word [es:di+008h] ; 26 8b 55 08 ; 0xc18c3 + mov ax, strict word 00010h ; b8 10 00 ; 0xc18c7 + call 02e1ah ; e8 4d 15 ; 0xc18ca + xor bl, bl ; 30 db ; 0xc18cd vgabios.c:1195 + mov AL, strict byte 003h ; b0 03 ; 0xc18cf + mov AH, strict byte 011h ; b4 11 ; 0xc18d1 + int 06dh ; cd 6d ; 0xc18d3 + mov bx, 0596dh ; bb 6d 59 ; 0xc18d5 vgabios.c:1199 + mov cx, ds ; 8c d9 ; 0xc18d8 + mov ax, strict word 0001fh ; b8 1f 00 ; 0xc18da + call 009f0h ; e8 10 f1 ; 0xc18dd + mov es, [bp-01eh] ; 8e 46 e2 ; 0xc18e0 vgabios.c:1201 + mov al, byte [es:si+002h] ; 26 8a 44 02 ; 0xc18e3 + cmp AL, strict byte 010h ; 3c 10 ; 0xc18e7 + je short 01905h ; 74 1a ; 0xc18e9 + cmp AL, strict byte 00eh ; 3c 0e ; 0xc18eb + je short 01900h ; 74 11 ; 0xc18ed + cmp AL, strict byte 008h ; 3c 08 ; 0xc18ef + jne short 0190ah ; 75 17 ; 0xc18f1 + mov bx, 0556dh ; bb 6d 55 ; 0xc18f3 vgabios.c:1203 + mov cx, ds ; 8c d9 ; 0xc18f6 + mov ax, strict word 00043h ; b8 43 00 ; 0xc18f8 + call 009f0h ; e8 f2 f0 ; 0xc18fb + jmp short 0190ah ; eb 0a ; 0xc18fe vgabios.c:1204 + mov bx, 05d6dh ; bb 6d 5d ; 0xc1900 vgabios.c:1206 + jmp short 018f6h ; eb f1 ; 0xc1903 + mov bx, 06b6dh ; bb 6d 6b ; 0xc1905 vgabios.c:1209 + jmp short 018f6h ; eb ec ; 0xc1908 + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc190a vgabios.c:1212 + pop di ; 5f ; 0xc190d + pop si ; 5e ; 0xc190e + pop dx ; 5a ; 0xc190f + pop cx ; 59 ; 0xc1910 + pop bx ; 5b ; 0xc1911 + pop bp ; 5d ; 0xc1912 + retn ; c3 ; 0xc1913 + ; disGetNextSymbol 0xc1914 LB 0x2c1e -> off=0x0 cb=000000000000008e uValue=00000000000c1914 'vgamem_copy_pl4' +vgamem_copy_pl4: ; 0xc1914 LB 0x8e + push bp ; 55 ; 0xc1914 vgabios.c:1215 + mov bp, sp ; 89 e5 ; 0xc1915 + push si ; 56 ; 0xc1917 + push di ; 57 ; 0xc1918 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc1919 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc191c + mov al, dl ; 88 d0 ; 0xc191f + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc1921 + mov byte [bp-006h], cl ; 88 4e fa ; 0xc1924 + xor ah, ah ; 30 e4 ; 0xc1927 vgabios.c:1221 + mov dl, byte [bp+006h] ; 8a 56 06 ; 0xc1929 + xor dh, dh ; 30 f6 ; 0xc192c + mov cx, dx ; 89 d1 ; 0xc192e + imul dx ; f7 ea ; 0xc1930 + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc1932 + xor dh, dh ; 30 f6 ; 0xc1935 + mov si, dx ; 89 d6 ; 0xc1937 + imul dx ; f7 ea ; 0xc1939 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc193b + xor dh, dh ; 30 f6 ; 0xc193e + mov bx, dx ; 89 d3 ; 0xc1940 + add ax, dx ; 01 d0 ; 0xc1942 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc1944 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1947 vgabios.c:1222 + xor ah, ah ; 30 e4 ; 0xc194a + imul cx ; f7 e9 ; 0xc194c + imul si ; f7 ee ; 0xc194e + add ax, bx ; 01 d8 ; 0xc1950 + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc1952 + mov ax, 00105h ; b8 05 01 ; 0xc1955 vgabios.c:1223 + mov dx, 003ceh ; ba ce 03 ; 0xc1958 + out DX, ax ; ef ; 0xc195b + xor bl, bl ; 30 db ; 0xc195c vgabios.c:1224 + cmp bl, byte [bp+006h] ; 3a 5e 06 ; 0xc195e + jnc short 01992h ; 73 2f ; 0xc1961 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1963 vgabios.c:1226 + xor ah, ah ; 30 e4 ; 0xc1966 + mov cx, ax ; 89 c1 ; 0xc1968 + mov al, bl ; 88 d8 ; 0xc196a + mov dx, ax ; 89 c2 ; 0xc196c + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc196e + mov si, ax ; 89 c6 ; 0xc1971 + mov ax, dx ; 89 d0 ; 0xc1973 + imul si ; f7 ee ; 0xc1975 + mov si, word [bp-00eh] ; 8b 76 f2 ; 0xc1977 + add si, ax ; 01 c6 ; 0xc197a + mov di, word [bp-00ch] ; 8b 7e f4 ; 0xc197c + add di, ax ; 01 c7 ; 0xc197f + mov dx, 0a000h ; ba 00 a0 ; 0xc1981 + mov es, dx ; 8e c2 ; 0xc1984 + jcxz 0198eh ; e3 06 ; 0xc1986 + push DS ; 1e ; 0xc1988 + mov ds, dx ; 8e da ; 0xc1989 + rep movsb ; f3 a4 ; 0xc198b + pop DS ; 1f ; 0xc198d + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc198e vgabios.c:1227 + jmp short 0195eh ; eb cc ; 0xc1990 + mov ax, strict word 00005h ; b8 05 00 ; 0xc1992 vgabios.c:1228 + mov dx, 003ceh ; ba ce 03 ; 0xc1995 + out DX, ax ; ef ; 0xc1998 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1999 vgabios.c:1229 + pop di ; 5f ; 0xc199c + pop si ; 5e ; 0xc199d + pop bp ; 5d ; 0xc199e + retn 00004h ; c2 04 00 ; 0xc199f + ; disGetNextSymbol 0xc19a2 LB 0x2b90 -> off=0x0 cb=000000000000007b uValue=00000000000c19a2 'vgamem_fill_pl4' +vgamem_fill_pl4: ; 0xc19a2 LB 0x7b + push bp ; 55 ; 0xc19a2 vgabios.c:1232 + mov bp, sp ; 89 e5 ; 0xc19a3 + push si ; 56 ; 0xc19a5 + push di ; 57 ; 0xc19a6 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc19a7 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc19aa + mov al, dl ; 88 d0 ; 0xc19ad + mov byte [bp-006h], bl ; 88 5e fa ; 0xc19af + mov bh, cl ; 88 cf ; 0xc19b2 + xor ah, ah ; 30 e4 ; 0xc19b4 vgabios.c:1238 + mov dx, ax ; 89 c2 ; 0xc19b6 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc19b8 + mov cx, ax ; 89 c1 ; 0xc19bb + mov ax, dx ; 89 d0 ; 0xc19bd + imul cx ; f7 e9 ; 0xc19bf + mov dl, bh ; 88 fa ; 0xc19c1 + xor dh, dh ; 30 f6 ; 0xc19c3 + imul dx ; f7 ea ; 0xc19c5 + mov dx, ax ; 89 c2 ; 0xc19c7 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc19c9 + xor ah, ah ; 30 e4 ; 0xc19cc + add dx, ax ; 01 c2 ; 0xc19ce + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc19d0 + mov ax, 00205h ; b8 05 02 ; 0xc19d3 vgabios.c:1239 + mov dx, 003ceh ; ba ce 03 ; 0xc19d6 + out DX, ax ; ef ; 0xc19d9 + xor bl, bl ; 30 db ; 0xc19da vgabios.c:1240 + cmp bl, byte [bp+004h] ; 3a 5e 04 ; 0xc19dc + jnc short 01a0dh ; 73 2c ; 0xc19df + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc19e1 vgabios.c:1242 + xor ch, ch ; 30 ed ; 0xc19e4 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc19e6 + xor ah, ah ; 30 e4 ; 0xc19e9 + mov si, ax ; 89 c6 ; 0xc19eb + mov al, bl ; 88 d8 ; 0xc19ed + mov dx, ax ; 89 c2 ; 0xc19ef + mov al, bh ; 88 f8 ; 0xc19f1 + mov di, ax ; 89 c7 ; 0xc19f3 + mov ax, dx ; 89 d0 ; 0xc19f5 + imul di ; f7 ef ; 0xc19f7 + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc19f9 + add di, ax ; 01 c7 ; 0xc19fc + mov ax, si ; 89 f0 ; 0xc19fe + mov dx, 0a000h ; ba 00 a0 ; 0xc1a00 + mov es, dx ; 8e c2 ; 0xc1a03 + jcxz 01a09h ; e3 02 ; 0xc1a05 + rep stosb ; f3 aa ; 0xc1a07 + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc1a09 vgabios.c:1243 + jmp short 019dch ; eb cf ; 0xc1a0b + mov ax, strict word 00005h ; b8 05 00 ; 0xc1a0d vgabios.c:1244 + mov dx, 003ceh ; ba ce 03 ; 0xc1a10 + out DX, ax ; ef ; 0xc1a13 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1a14 vgabios.c:1245 + pop di ; 5f ; 0xc1a17 + pop si ; 5e ; 0xc1a18 + pop bp ; 5d ; 0xc1a19 + retn 00004h ; c2 04 00 ; 0xc1a1a + ; disGetNextSymbol 0xc1a1d LB 0x2b15 -> off=0x0 cb=00000000000000b6 uValue=00000000000c1a1d 'vgamem_copy_cga' +vgamem_copy_cga: ; 0xc1a1d LB 0xb6 + push bp ; 55 ; 0xc1a1d vgabios.c:1248 + mov bp, sp ; 89 e5 ; 0xc1a1e + push si ; 56 ; 0xc1a20 + push di ; 57 ; 0xc1a21 + sub sp, strict byte 0000eh ; 83 ec 0e ; 0xc1a22 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc1a25 + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc1a28 + mov byte [bp-00ah], cl ; 88 4e f6 ; 0xc1a2b + mov al, dl ; 88 d0 ; 0xc1a2e vgabios.c:1254 + xor ah, ah ; 30 e4 ; 0xc1a30 + mov bx, ax ; 89 c3 ; 0xc1a32 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1a34 + mov si, ax ; 89 c6 ; 0xc1a37 + mov ax, bx ; 89 d8 ; 0xc1a39 + imul si ; f7 ee ; 0xc1a3b + mov bl, byte [bp+004h] ; 8a 5e 04 ; 0xc1a3d + mov di, bx ; 89 df ; 0xc1a40 + imul bx ; f7 eb ; 0xc1a42 + mov dx, ax ; 89 c2 ; 0xc1a44 + sar dx, 1 ; d1 fa ; 0xc1a46 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1a48 + xor ah, ah ; 30 e4 ; 0xc1a4b + mov bx, ax ; 89 c3 ; 0xc1a4d + add dx, ax ; 01 c2 ; 0xc1a4f + mov word [bp-00eh], dx ; 89 56 f2 ; 0xc1a51 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1a54 vgabios.c:1255 + imul si ; f7 ee ; 0xc1a57 + imul di ; f7 ef ; 0xc1a59 + sar ax, 1 ; d1 f8 ; 0xc1a5b + add ax, bx ; 01 d8 ; 0xc1a5d + mov word [bp-010h], ax ; 89 46 f0 ; 0xc1a5f + mov byte [bp-006h], bh ; 88 7e fa ; 0xc1a62 vgabios.c:1256 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1a65 + xor ah, ah ; 30 e4 ; 0xc1a68 + cwd ; 99 ; 0xc1a6a + db 02bh, 0c2h + ; sub ax, dx ; 2b c2 ; 0xc1a6b + sar ax, 1 ; d1 f8 ; 0xc1a6d + mov bx, ax ; 89 c3 ; 0xc1a6f + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1a71 + xor ah, ah ; 30 e4 ; 0xc1a74 + cmp ax, bx ; 39 d8 ; 0xc1a76 + jnl short 01acah ; 7d 50 ; 0xc1a78 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc1a7a vgabios.c:1258 + xor bh, bh ; 30 ff ; 0xc1a7d + mov word [bp-012h], bx ; 89 5e ee ; 0xc1a7f + mov bl, byte [bp+004h] ; 8a 5e 04 ; 0xc1a82 + imul bx ; f7 eb ; 0xc1a85 + mov bx, ax ; 89 c3 ; 0xc1a87 + mov si, word [bp-00eh] ; 8b 76 f2 ; 0xc1a89 + add si, ax ; 01 c6 ; 0xc1a8c + mov di, word [bp-010h] ; 8b 7e f0 ; 0xc1a8e + add di, ax ; 01 c7 ; 0xc1a91 + mov cx, word [bp-012h] ; 8b 4e ee ; 0xc1a93 + mov dx, 0b800h ; ba 00 b8 ; 0xc1a96 + mov es, dx ; 8e c2 ; 0xc1a99 + jcxz 01aa3h ; e3 06 ; 0xc1a9b + push DS ; 1e ; 0xc1a9d + mov ds, dx ; 8e da ; 0xc1a9e + rep movsb ; f3 a4 ; 0xc1aa0 + pop DS ; 1f ; 0xc1aa2 + mov si, word [bp-00eh] ; 8b 76 f2 ; 0xc1aa3 vgabios.c:1259 + add si, 02000h ; 81 c6 00 20 ; 0xc1aa6 + add si, bx ; 01 de ; 0xc1aaa + mov di, word [bp-010h] ; 8b 7e f0 ; 0xc1aac + add di, 02000h ; 81 c7 00 20 ; 0xc1aaf + add di, bx ; 01 df ; 0xc1ab3 + mov cx, word [bp-012h] ; 8b 4e ee ; 0xc1ab5 + mov dx, 0b800h ; ba 00 b8 ; 0xc1ab8 + mov es, dx ; 8e c2 ; 0xc1abb + jcxz 01ac5h ; e3 06 ; 0xc1abd + push DS ; 1e ; 0xc1abf + mov ds, dx ; 8e da ; 0xc1ac0 + rep movsb ; f3 a4 ; 0xc1ac2 + pop DS ; 1f ; 0xc1ac4 + inc byte [bp-006h] ; fe 46 fa ; 0xc1ac5 vgabios.c:1260 + jmp short 01a65h ; eb 9b ; 0xc1ac8 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1aca vgabios.c:1261 + pop di ; 5f ; 0xc1acd + pop si ; 5e ; 0xc1ace + pop bp ; 5d ; 0xc1acf + retn 00004h ; c2 04 00 ; 0xc1ad0 + ; disGetNextSymbol 0xc1ad3 LB 0x2a5f -> off=0x0 cb=0000000000000094 uValue=00000000000c1ad3 'vgamem_fill_cga' +vgamem_fill_cga: ; 0xc1ad3 LB 0x94 + push bp ; 55 ; 0xc1ad3 vgabios.c:1264 + mov bp, sp ; 89 e5 ; 0xc1ad4 + push si ; 56 ; 0xc1ad6 + push di ; 57 ; 0xc1ad7 + sub sp, strict byte 0000ch ; 83 ec 0c ; 0xc1ad8 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc1adb + mov al, dl ; 88 d0 ; 0xc1ade + mov byte [bp-00ch], bl ; 88 5e f4 ; 0xc1ae0 + mov byte [bp-008h], cl ; 88 4e f8 ; 0xc1ae3 + xor ah, ah ; 30 e4 ; 0xc1ae6 vgabios.c:1270 + mov dx, ax ; 89 c2 ; 0xc1ae8 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1aea + mov bx, ax ; 89 c3 ; 0xc1aed + mov ax, dx ; 89 d0 ; 0xc1aef + imul bx ; f7 eb ; 0xc1af1 + mov dl, cl ; 88 ca ; 0xc1af3 + xor dh, dh ; 30 f6 ; 0xc1af5 + imul dx ; f7 ea ; 0xc1af7 + mov dx, ax ; 89 c2 ; 0xc1af9 + sar dx, 1 ; d1 fa ; 0xc1afb + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1afd + xor ah, ah ; 30 e4 ; 0xc1b00 + add dx, ax ; 01 c2 ; 0xc1b02 + mov word [bp-00eh], dx ; 89 56 f2 ; 0xc1b04 + mov byte [bp-006h], ah ; 88 66 fa ; 0xc1b07 vgabios.c:1271 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1b0a + xor ah, ah ; 30 e4 ; 0xc1b0d + cwd ; 99 ; 0xc1b0f + db 02bh, 0c2h + ; sub ax, dx ; 2b c2 ; 0xc1b10 + sar ax, 1 ; d1 f8 ; 0xc1b12 + mov dx, ax ; 89 c2 ; 0xc1b14 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1b16 + xor ah, ah ; 30 e4 ; 0xc1b19 + cmp ax, dx ; 39 d0 ; 0xc1b1b + jnl short 01b5eh ; 7d 3f ; 0xc1b1d + mov bl, byte [bp-00ch] ; 8a 5e f4 ; 0xc1b1f vgabios.c:1273 + xor bh, bh ; 30 ff ; 0xc1b22 + mov dl, byte [bp+006h] ; 8a 56 06 ; 0xc1b24 + xor dh, dh ; 30 f6 ; 0xc1b27 + mov si, dx ; 89 d6 ; 0xc1b29 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc1b2b + imul dx ; f7 ea ; 0xc1b2e + mov word [bp-010h], ax ; 89 46 f0 ; 0xc1b30 + mov di, word [bp-00eh] ; 8b 7e f2 ; 0xc1b33 + add di, ax ; 01 c7 ; 0xc1b36 + mov cx, bx ; 89 d9 ; 0xc1b38 + mov ax, si ; 89 f0 ; 0xc1b3a + mov dx, 0b800h ; ba 00 b8 ; 0xc1b3c + mov es, dx ; 8e c2 ; 0xc1b3f + jcxz 01b45h ; e3 02 ; 0xc1b41 + rep stosb ; f3 aa ; 0xc1b43 + mov di, word [bp-00eh] ; 8b 7e f2 ; 0xc1b45 vgabios.c:1274 + add di, 02000h ; 81 c7 00 20 ; 0xc1b48 + add di, word [bp-010h] ; 03 7e f0 ; 0xc1b4c + mov cx, bx ; 89 d9 ; 0xc1b4f + mov ax, si ; 89 f0 ; 0xc1b51 + mov es, dx ; 8e c2 ; 0xc1b53 + jcxz 01b59h ; e3 02 ; 0xc1b55 + rep stosb ; f3 aa ; 0xc1b57 + inc byte [bp-006h] ; fe 46 fa ; 0xc1b59 vgabios.c:1275 + jmp short 01b0ah ; eb ac ; 0xc1b5c + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1b5e vgabios.c:1276 + pop di ; 5f ; 0xc1b61 + pop si ; 5e ; 0xc1b62 + pop bp ; 5d ; 0xc1b63 + retn 00004h ; c2 04 00 ; 0xc1b64 + ; disGetNextSymbol 0xc1b67 LB 0x29cb -> off=0x0 cb=0000000000000081 uValue=00000000000c1b67 'vgamem_copy_linear' +vgamem_copy_linear: ; 0xc1b67 LB 0x81 + push bp ; 55 ; 0xc1b67 vgabios.c:1279 + mov bp, sp ; 89 e5 ; 0xc1b68 + push si ; 56 ; 0xc1b6a + push di ; 57 ; 0xc1b6b + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc1b6c + mov byte [bp-008h], al ; 88 46 f8 ; 0xc1b6f + mov al, dl ; 88 d0 ; 0xc1b72 + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc1b74 + mov bx, cx ; 89 cb ; 0xc1b77 + xor ah, ah ; 30 e4 ; 0xc1b79 vgabios.c:1285 + mov si, ax ; 89 c6 ; 0xc1b7b + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1b7d + mov di, ax ; 89 c7 ; 0xc1b80 + mov ax, si ; 89 f0 ; 0xc1b82 + imul di ; f7 ef ; 0xc1b84 + mul word [bp+004h] ; f7 66 04 ; 0xc1b86 + mov si, ax ; 89 c6 ; 0xc1b89 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1b8b + xor ah, ah ; 30 e4 ; 0xc1b8e + mov cx, ax ; 89 c1 ; 0xc1b90 + add si, ax ; 01 c6 ; 0xc1b92 + sal si, 003h ; c1 e6 03 ; 0xc1b94 + mov word [bp-00ch], si ; 89 76 f4 ; 0xc1b97 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1b9a vgabios.c:1286 + imul di ; f7 ef ; 0xc1b9d + mul word [bp+004h] ; f7 66 04 ; 0xc1b9f + add ax, cx ; 01 c8 ; 0xc1ba2 + sal ax, 003h ; c1 e0 03 ; 0xc1ba4 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc1ba7 + sal bx, 003h ; c1 e3 03 ; 0xc1baa vgabios.c:1287 + sal word [bp+004h], 003h ; c1 66 04 03 ; 0xc1bad vgabios.c:1288 + mov byte [bp-006h], ch ; 88 6e fa ; 0xc1bb1 vgabios.c:1289 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1bb4 + cmp al, byte [bp+006h] ; 3a 46 06 ; 0xc1bb7 + jnc short 01bdfh ; 73 23 ; 0xc1bba + xor ah, ah ; 30 e4 ; 0xc1bbc vgabios.c:1291 + mul word [bp+004h] ; f7 66 04 ; 0xc1bbe + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc1bc1 + add si, ax ; 01 c6 ; 0xc1bc4 + mov di, word [bp-00eh] ; 8b 7e f2 ; 0xc1bc6 + add di, ax ; 01 c7 ; 0xc1bc9 + mov cx, bx ; 89 d9 ; 0xc1bcb + mov dx, 0a000h ; ba 00 a0 ; 0xc1bcd + mov es, dx ; 8e c2 ; 0xc1bd0 + jcxz 01bdah ; e3 06 ; 0xc1bd2 + push DS ; 1e ; 0xc1bd4 + mov ds, dx ; 8e da ; 0xc1bd5 + rep movsb ; f3 a4 ; 0xc1bd7 + pop DS ; 1f ; 0xc1bd9 + inc byte [bp-006h] ; fe 46 fa ; 0xc1bda vgabios.c:1292 + jmp short 01bb4h ; eb d5 ; 0xc1bdd + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1bdf vgabios.c:1293 + pop di ; 5f ; 0xc1be2 + pop si ; 5e ; 0xc1be3 + pop bp ; 5d ; 0xc1be4 + retn 00004h ; c2 04 00 ; 0xc1be5 + ; disGetNextSymbol 0xc1be8 LB 0x294a -> off=0x0 cb=000000000000006d uValue=00000000000c1be8 'vgamem_fill_linear' +vgamem_fill_linear: ; 0xc1be8 LB 0x6d + push bp ; 55 ; 0xc1be8 vgabios.c:1296 + mov bp, sp ; 89 e5 ; 0xc1be9 + push si ; 56 ; 0xc1beb + push di ; 57 ; 0xc1bec + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc1bed + mov byte [bp-006h], al ; 88 46 fa ; 0xc1bf0 + mov al, dl ; 88 d0 ; 0xc1bf3 + mov si, cx ; 89 ce ; 0xc1bf5 + xor ah, ah ; 30 e4 ; 0xc1bf7 vgabios.c:1302 + mov dx, ax ; 89 c2 ; 0xc1bf9 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1bfb + mov di, ax ; 89 c7 ; 0xc1bfe + mov ax, dx ; 89 d0 ; 0xc1c00 + imul di ; f7 ef ; 0xc1c02 + mul cx ; f7 e1 ; 0xc1c04 + mov dx, ax ; 89 c2 ; 0xc1c06 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1c08 + xor ah, ah ; 30 e4 ; 0xc1c0b + add ax, dx ; 01 d0 ; 0xc1c0d + sal ax, 003h ; c1 e0 03 ; 0xc1c0f + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc1c12 + sal bx, 003h ; c1 e3 03 ; 0xc1c15 vgabios.c:1303 + sal si, 003h ; c1 e6 03 ; 0xc1c18 vgabios.c:1304 + mov byte [bp-008h], 000h ; c6 46 f8 00 ; 0xc1c1b vgabios.c:1305 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1c1f + cmp al, byte [bp+004h] ; 3a 46 04 ; 0xc1c22 + jnc short 01c4ch ; 73 25 ; 0xc1c25 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1c27 vgabios.c:1307 + xor ah, ah ; 30 e4 ; 0xc1c2a + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc1c2c + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1c2f + mul si ; f7 e6 ; 0xc1c32 + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc1c34 + add di, ax ; 01 c7 ; 0xc1c37 + mov cx, bx ; 89 d9 ; 0xc1c39 + mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xc1c3b + mov dx, 0a000h ; ba 00 a0 ; 0xc1c3e + mov es, dx ; 8e c2 ; 0xc1c41 + jcxz 01c47h ; e3 02 ; 0xc1c43 + rep stosb ; f3 aa ; 0xc1c45 + inc byte [bp-008h] ; fe 46 f8 ; 0xc1c47 vgabios.c:1308 + jmp short 01c1fh ; eb d3 ; 0xc1c4a + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1c4c vgabios.c:1309 + pop di ; 5f ; 0xc1c4f + pop si ; 5e ; 0xc1c50 + pop bp ; 5d ; 0xc1c51 + retn 00004h ; c2 04 00 ; 0xc1c52 + ; disGetNextSymbol 0xc1c55 LB 0x28dd -> off=0x0 cb=0000000000000688 uValue=00000000000c1c55 'biosfn_scroll' +biosfn_scroll: ; 0xc1c55 LB 0x688 + push bp ; 55 ; 0xc1c55 vgabios.c:1312 + mov bp, sp ; 89 e5 ; 0xc1c56 + push si ; 56 ; 0xc1c58 + push di ; 57 ; 0xc1c59 + sub sp, strict byte 0001eh ; 83 ec 1e ; 0xc1c5a + mov byte [bp-006h], al ; 88 46 fa ; 0xc1c5d + mov byte [bp-010h], dl ; 88 56 f0 ; 0xc1c60 + mov byte [bp-00ch], bl ; 88 5e f4 ; 0xc1c63 + mov byte [bp-008h], cl ; 88 4e f8 ; 0xc1c66 + cmp bl, byte [bp+004h] ; 3a 5e 04 ; 0xc1c69 vgabios.c:1321 + jnbe short 01c8ah ; 77 1c ; 0xc1c6c + cmp cl, byte [bp+006h] ; 3a 4e 06 ; 0xc1c6e vgabios.c:1322 + jnbe short 01c8ah ; 77 17 ; 0xc1c71 + mov bx, strict word 00049h ; bb 49 00 ; 0xc1c73 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1c76 + mov es, ax ; 8e c0 ; 0xc1c79 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1c7b + xor ah, ah ; 30 e4 ; 0xc1c7e vgabios.c:1326 + call 03819h ; e8 96 1b ; 0xc1c80 + mov byte [bp-012h], al ; 88 46 ee ; 0xc1c83 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1c86 vgabios.c:1327 + jne short 01c8dh ; 75 03 ; 0xc1c88 + jmp near 022d4h ; e9 47 06 ; 0xc1c8a + mov bx, 00084h ; bb 84 00 ; 0xc1c8d vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1c90 + mov es, ax ; 8e c0 ; 0xc1c93 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1c95 + xor ah, ah ; 30 e4 ; 0xc1c98 vgabios.c:48 + inc ax ; 40 ; 0xc1c9a + mov word [bp-016h], ax ; 89 46 ea ; 0xc1c9b + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1c9e vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc1ca1 + mov word [bp-01eh], ax ; 89 46 e2 ; 0xc1ca4 vgabios.c:58 + cmp byte [bp+008h], 0ffh ; 80 7e 08 ff ; 0xc1ca7 vgabios.c:1334 + jne short 01cb6h ; 75 09 ; 0xc1cab + mov bx, strict word 00062h ; bb 62 00 ; 0xc1cad vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1cb0 + mov byte [bp+008h], al ; 88 46 08 ; 0xc1cb3 vgabios.c:48 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1cb6 vgabios.c:1337 + xor ah, ah ; 30 e4 ; 0xc1cb9 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc1cbb + jc short 01cc8h ; 72 08 ; 0xc1cbe + mov al, byte [bp-016h] ; 8a 46 ea ; 0xc1cc0 + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc1cc3 + mov byte [bp+004h], al ; 88 46 04 ; 0xc1cc5 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1cc8 vgabios.c:1338 + xor ah, ah ; 30 e4 ; 0xc1ccb + cmp ax, word [bp-01eh] ; 3b 46 e2 ; 0xc1ccd + jc short 01cdah ; 72 08 ; 0xc1cd0 + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc1cd2 + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc1cd5 + mov byte [bp+006h], al ; 88 46 06 ; 0xc1cd7 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1cda vgabios.c:1339 + xor ah, ah ; 30 e4 ; 0xc1cdd + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc1cdf + jbe short 01ce7h ; 76 03 ; 0xc1ce2 + mov byte [bp-006h], ah ; 88 66 fa ; 0xc1ce4 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1ce7 vgabios.c:1340 + sub al, byte [bp-008h] ; 2a 46 f8 ; 0xc1cea + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc1ced + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc1cef + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc1cf2 vgabios.c:1342 + mov byte [bp-01ah], al ; 88 46 e6 ; 0xc1cf5 + mov byte [bp-019h], 000h ; c6 46 e7 00 ; 0xc1cf8 + mov bx, word [bp-01ah] ; 8b 5e e6 ; 0xc1cfc + sal bx, 003h ; c1 e3 03 ; 0xc1cff + mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xc1d02 + dec ax ; 48 ; 0xc1d05 + mov word [bp-022h], ax ; 89 46 de ; 0xc1d06 + mov di, word [bp-016h] ; 8b 7e ea ; 0xc1d09 + dec di ; 4f ; 0xc1d0c + mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xc1d0d + mul word [bp-016h] ; f7 66 ea ; 0xc1d10 + mov cx, ax ; 89 c1 ; 0xc1d13 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc1d15 + jne short 01d65h ; 75 49 ; 0xc1d1a + add ax, ax ; 01 c0 ; 0xc1d1c vgabios.c:1345 + or AL, strict byte 0ffh ; 0c ff ; 0xc1d1e + mov dl, byte [bp+008h] ; 8a 56 08 ; 0xc1d20 + xor dh, dh ; 30 f6 ; 0xc1d23 + inc ax ; 40 ; 0xc1d25 + mul dx ; f7 e2 ; 0xc1d26 + mov word [bp-020h], ax ; 89 46 e0 ; 0xc1d28 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1d2b vgabios.c:1350 + jne short 01d68h ; 75 37 ; 0xc1d2f + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1d31 + jne short 01d68h ; 75 31 ; 0xc1d35 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1d37 + jne short 01d68h ; 75 2b ; 0xc1d3b + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1d3d + xor ah, ah ; 30 e4 ; 0xc1d40 + cmp ax, di ; 39 f8 ; 0xc1d42 + jne short 01d68h ; 75 22 ; 0xc1d44 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1d46 + cmp ax, word [bp-022h] ; 3b 46 de ; 0xc1d49 + jne short 01d68h ; 75 1a ; 0xc1d4c + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1d4e vgabios.c:1352 + sal ax, 008h ; c1 e0 08 ; 0xc1d51 + add ax, strict word 00020h ; 05 20 00 ; 0xc1d54 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1d57 + mov di, word [bp-020h] ; 8b 7e e0 ; 0xc1d5b + jcxz 01d62h ; e3 02 ; 0xc1d5e + rep stosw ; f3 ab ; 0xc1d60 + jmp near 022d4h ; e9 6f 05 ; 0xc1d62 vgabios.c:1354 + jmp near 01ed8h ; e9 70 01 ; 0xc1d65 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc1d68 vgabios.c:1356 + jne short 01dceh ; 75 60 ; 0xc1d6c + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1d6e vgabios.c:1357 + xor ah, ah ; 30 e4 ; 0xc1d71 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc1d73 + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc1d76 + xor dh, dh ; 30 f6 ; 0xc1d79 + cmp dx, word [bp-01ch] ; 3b 56 e4 ; 0xc1d7b + jc short 01dd0h ; 72 50 ; 0xc1d7e + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1d80 vgabios.c:1359 + xor ah, ah ; 30 e4 ; 0xc1d83 + add ax, word [bp-01ch] ; 03 46 e4 ; 0xc1d85 + cmp ax, dx ; 39 d0 ; 0xc1d88 + jnbe short 01d92h ; 77 06 ; 0xc1d8a + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1d8c + jne short 01dd3h ; 75 41 ; 0xc1d90 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc1d92 vgabios.c:1360 + xor ch, ch ; 30 ed ; 0xc1d95 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1d97 + xor ah, ah ; 30 e4 ; 0xc1d9a + mov si, ax ; 89 c6 ; 0xc1d9c + sal si, 008h ; c1 e6 08 ; 0xc1d9e + add si, strict byte 00020h ; 83 c6 20 ; 0xc1da1 + mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xc1da4 + mul word [bp-01eh] ; f7 66 e2 ; 0xc1da7 + mov dx, ax ; 89 c2 ; 0xc1daa + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1dac + xor ah, ah ; 30 e4 ; 0xc1daf + mov di, ax ; 89 c7 ; 0xc1db1 + add di, dx ; 01 d7 ; 0xc1db3 + add di, di ; 01 ff ; 0xc1db5 + add di, word [bp-020h] ; 03 7e e0 ; 0xc1db7 + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1dba + xor bh, bh ; 30 ff ; 0xc1dbd + sal bx, 003h ; c1 e3 03 ; 0xc1dbf + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1dc2 + mov ax, si ; 89 f0 ; 0xc1dc6 + jcxz 01dcch ; e3 02 ; 0xc1dc8 + rep stosw ; f3 ab ; 0xc1dca + jmp short 01e13h ; eb 45 ; 0xc1dcc vgabios.c:1361 + jmp short 01e19h ; eb 49 ; 0xc1dce + jmp near 022d4h ; e9 01 05 ; 0xc1dd0 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc1dd3 vgabios.c:1362 + xor ch, ch ; 30 ed ; 0xc1dd6 + mul word [bp-01eh] ; f7 66 e2 ; 0xc1dd8 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc1ddb + mov byte [bp-018h], dl ; 88 56 e8 ; 0xc1dde + mov byte [bp-017h], ch ; 88 6e e9 ; 0xc1de1 + mov si, ax ; 89 c6 ; 0xc1de4 + add si, word [bp-018h] ; 03 76 e8 ; 0xc1de6 + add si, si ; 01 f6 ; 0xc1de9 + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1deb + xor bh, bh ; 30 ff ; 0xc1dee + sal bx, 003h ; c1 e3 03 ; 0xc1df0 + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc1df3 + mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xc1df7 + mul word [bp-01eh] ; f7 66 e2 ; 0xc1dfa + add ax, word [bp-018h] ; 03 46 e8 ; 0xc1dfd + add ax, ax ; 01 c0 ; 0xc1e00 + mov di, word [bp-020h] ; 8b 7e e0 ; 0xc1e02 + add di, ax ; 01 c7 ; 0xc1e05 + mov dx, bx ; 89 da ; 0xc1e07 + mov es, bx ; 8e c3 ; 0xc1e09 + jcxz 01e13h ; e3 06 ; 0xc1e0b + push DS ; 1e ; 0xc1e0d + mov ds, dx ; 8e da ; 0xc1e0e + rep movsw ; f3 a5 ; 0xc1e10 + pop DS ; 1f ; 0xc1e12 + inc word [bp-01ch] ; ff 46 e4 ; 0xc1e13 vgabios.c:1363 + jmp near 01d76h ; e9 5d ff ; 0xc1e16 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1e19 vgabios.c:1366 + xor ah, ah ; 30 e4 ; 0xc1e1c + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc1e1e + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1e21 + xor ah, ah ; 30 e4 ; 0xc1e24 + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc1e26 + jnbe short 01dd0h ; 77 a5 ; 0xc1e29 + mov dl, al ; 88 c2 ; 0xc1e2b vgabios.c:1368 + xor dh, dh ; 30 f6 ; 0xc1e2d + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1e2f + add ax, dx ; 01 d0 ; 0xc1e32 + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc1e34 + jnbe short 01e3fh ; 77 06 ; 0xc1e37 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1e39 + jne short 01e7bh ; 75 3c ; 0xc1e3d + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc1e3f vgabios.c:1369 + xor ch, ch ; 30 ed ; 0xc1e42 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1e44 + xor ah, ah ; 30 e4 ; 0xc1e47 + mov si, ax ; 89 c6 ; 0xc1e49 + sal si, 008h ; c1 e6 08 ; 0xc1e4b + add si, strict byte 00020h ; 83 c6 20 ; 0xc1e4e + mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xc1e51 + mul word [bp-01eh] ; f7 66 e2 ; 0xc1e54 + mov dx, ax ; 89 c2 ; 0xc1e57 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1e59 + xor ah, ah ; 30 e4 ; 0xc1e5c + add ax, dx ; 01 d0 ; 0xc1e5e + add ax, ax ; 01 c0 ; 0xc1e60 + mov di, word [bp-020h] ; 8b 7e e0 ; 0xc1e62 + add di, ax ; 01 c7 ; 0xc1e65 + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1e67 + xor bh, bh ; 30 ff ; 0xc1e6a + sal bx, 003h ; c1 e3 03 ; 0xc1e6c + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1e6f + mov ax, si ; 89 f0 ; 0xc1e73 + jcxz 01e79h ; e3 02 ; 0xc1e75 + rep stosw ; f3 ab ; 0xc1e77 + jmp short 01ec8h ; eb 4d ; 0xc1e79 vgabios.c:1370 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1e7b vgabios.c:1371 + mov byte [bp-018h], al ; 88 46 e8 ; 0xc1e7e + mov byte [bp-017h], dh ; 88 76 e9 ; 0xc1e81 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1e84 + xor ah, ah ; 30 e4 ; 0xc1e87 + mov dx, word [bp-01ch] ; 8b 56 e4 ; 0xc1e89 + sub dx, ax ; 29 c2 ; 0xc1e8c + mov ax, dx ; 89 d0 ; 0xc1e8e + mul word [bp-01eh] ; f7 66 e2 ; 0xc1e90 + mov cl, byte [bp-008h] ; 8a 4e f8 ; 0xc1e93 + xor ch, ch ; 30 ed ; 0xc1e96 + mov si, ax ; 89 c6 ; 0xc1e98 + add si, cx ; 01 ce ; 0xc1e9a + add si, si ; 01 f6 ; 0xc1e9c + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1e9e + xor bh, bh ; 30 ff ; 0xc1ea1 + sal bx, 003h ; c1 e3 03 ; 0xc1ea3 + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc1ea6 + mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xc1eaa + mul word [bp-01eh] ; f7 66 e2 ; 0xc1ead + add ax, cx ; 01 c8 ; 0xc1eb0 + add ax, ax ; 01 c0 ; 0xc1eb2 + mov di, word [bp-020h] ; 8b 7e e0 ; 0xc1eb4 + add di, ax ; 01 c7 ; 0xc1eb7 + mov cx, word [bp-018h] ; 8b 4e e8 ; 0xc1eb9 + mov dx, bx ; 89 da ; 0xc1ebc + mov es, bx ; 8e c3 ; 0xc1ebe + jcxz 01ec8h ; e3 06 ; 0xc1ec0 + push DS ; 1e ; 0xc1ec2 + mov ds, dx ; 8e da ; 0xc1ec3 + rep movsw ; f3 a5 ; 0xc1ec5 + pop DS ; 1f ; 0xc1ec7 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1ec8 vgabios.c:1372 + xor ah, ah ; 30 e4 ; 0xc1ecb + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc1ecd + jc short 01f05h ; 72 33 ; 0xc1ed0 + dec word [bp-01ch] ; ff 4e e4 ; 0xc1ed2 vgabios.c:1373 + jmp near 01e21h ; e9 49 ff ; 0xc1ed5 + mov si, word [bp-01ah] ; 8b 76 e6 ; 0xc1ed8 vgabios.c:1379 + mov al, byte [si+0482fh] ; 8a 84 2f 48 ; 0xc1edb + xor ah, ah ; 30 e4 ; 0xc1edf + mov si, ax ; 89 c6 ; 0xc1ee1 + sal si, 006h ; c1 e6 06 ; 0xc1ee3 + mov al, byte [si+04845h] ; 8a 84 45 48 ; 0xc1ee6 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc1eea + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc1eed vgabios.c:1380 + cmp AL, strict byte 003h ; 3c 03 ; 0xc1ef1 + jc short 01f01h ; 72 0c ; 0xc1ef3 + jbe short 01f08h ; 76 11 ; 0xc1ef5 + cmp AL, strict byte 005h ; 3c 05 ; 0xc1ef7 + je short 01f36h ; 74 3b ; 0xc1ef9 + cmp AL, strict byte 004h ; 3c 04 ; 0xc1efb + je short 01f08h ; 74 09 ; 0xc1efd + jmp short 01f05h ; eb 04 ; 0xc1eff + cmp AL, strict byte 002h ; 3c 02 ; 0xc1f01 + je short 01f39h ; 74 34 ; 0xc1f03 + jmp near 022d4h ; e9 cc 03 ; 0xc1f05 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1f08 vgabios.c:1384 + jne short 01f34h ; 75 26 ; 0xc1f0c + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1f0e + jne short 01f76h ; 75 62 ; 0xc1f12 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1f14 + jne short 01f76h ; 75 5c ; 0xc1f18 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1f1a + xor ah, ah ; 30 e4 ; 0xc1f1d + mov dx, word [bp-016h] ; 8b 56 ea ; 0xc1f1f + dec dx ; 4a ; 0xc1f22 + cmp ax, dx ; 39 d0 ; 0xc1f23 + jne short 01f76h ; 75 4f ; 0xc1f25 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1f27 + xor ah, dh ; 30 f4 ; 0xc1f2a + mov dx, word [bp-01eh] ; 8b 56 e2 ; 0xc1f2c + dec dx ; 4a ; 0xc1f2f + cmp ax, dx ; 39 d0 ; 0xc1f30 + je short 01f3ch ; 74 08 ; 0xc1f32 + jmp short 01f76h ; eb 40 ; 0xc1f34 + jmp near 021ach ; e9 73 02 ; 0xc1f36 + jmp near 02066h ; e9 2a 01 ; 0xc1f39 + mov ax, 00205h ; b8 05 02 ; 0xc1f3c vgabios.c:1386 + mov dx, 003ceh ; ba ce 03 ; 0xc1f3f + out DX, ax ; ef ; 0xc1f42 + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc1f43 vgabios.c:1387 + mul word [bp-01eh] ; f7 66 e2 ; 0xc1f46 + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc1f49 + xor dh, dh ; 30 f6 ; 0xc1f4c + mul dx ; f7 e2 ; 0xc1f4e + mov dl, byte [bp-010h] ; 8a 56 f0 ; 0xc1f50 + xor dh, dh ; 30 f6 ; 0xc1f53 + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1f55 + xor bh, bh ; 30 ff ; 0xc1f58 + sal bx, 003h ; c1 e3 03 ; 0xc1f5a + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc1f5d + mov cx, ax ; 89 c1 ; 0xc1f61 + mov ax, dx ; 89 d0 ; 0xc1f63 + xor di, di ; 31 ff ; 0xc1f65 + mov es, bx ; 8e c3 ; 0xc1f67 + jcxz 01f6dh ; e3 02 ; 0xc1f69 + rep stosb ; f3 aa ; 0xc1f6b + mov ax, strict word 00005h ; b8 05 00 ; 0xc1f6d vgabios.c:1388 + mov dx, 003ceh ; ba ce 03 ; 0xc1f70 + out DX, ax ; ef ; 0xc1f73 + jmp short 01f05h ; eb 8f ; 0xc1f74 vgabios.c:1390 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc1f76 vgabios.c:1392 + jne short 01ff1h ; 75 75 ; 0xc1f7a + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1f7c vgabios.c:1393 + xor ah, ah ; 30 e4 ; 0xc1f7f + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc1f81 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1f84 + xor ah, ah ; 30 e4 ; 0xc1f87 + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc1f89 + jc short 01feeh ; 72 60 ; 0xc1f8c + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc1f8e vgabios.c:1395 + xor dh, dh ; 30 f6 ; 0xc1f91 + add dx, word [bp-01ch] ; 03 56 e4 ; 0xc1f93 + cmp dx, ax ; 39 c2 ; 0xc1f96 + jnbe short 01fa0h ; 77 06 ; 0xc1f98 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1f9a + jne short 01fc1h ; 75 21 ; 0xc1f9e + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1fa0 vgabios.c:1396 + xor ah, ah ; 30 e4 ; 0xc1fa3 + push ax ; 50 ; 0xc1fa5 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc1fa6 + push ax ; 50 ; 0xc1fa9 + mov cl, byte [bp-01eh] ; 8a 4e e2 ; 0xc1faa + xor ch, ch ; 30 ed ; 0xc1fad + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc1faf + xor bh, bh ; 30 ff ; 0xc1fb2 + mov dl, byte [bp-01ch] ; 8a 56 e4 ; 0xc1fb4 + xor dh, dh ; 30 f6 ; 0xc1fb7 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1fb9 + call 019a2h ; e8 e3 f9 ; 0xc1fbc + jmp short 01fe9h ; eb 28 ; 0xc1fbf vgabios.c:1397 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc1fc1 vgabios.c:1398 + push ax ; 50 ; 0xc1fc4 + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc1fc5 + push ax ; 50 ; 0xc1fc8 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc1fc9 + xor ch, ch ; 30 ed ; 0xc1fcc + mov bl, byte [bp-01ch] ; 8a 5e e4 ; 0xc1fce + xor bh, bh ; 30 ff ; 0xc1fd1 + mov dl, bl ; 88 da ; 0xc1fd3 + add dl, byte [bp-006h] ; 02 56 fa ; 0xc1fd5 + xor dh, dh ; 30 f6 ; 0xc1fd8 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1fda + mov byte [bp-018h], al ; 88 46 e8 ; 0xc1fdd + mov byte [bp-017h], ah ; 88 66 e9 ; 0xc1fe0 + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc1fe3 + call 01914h ; e8 2b f9 ; 0xc1fe6 + inc word [bp-01ch] ; ff 46 e4 ; 0xc1fe9 vgabios.c:1399 + jmp short 01f84h ; eb 96 ; 0xc1fec + jmp near 022d4h ; e9 e3 02 ; 0xc1fee + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1ff1 vgabios.c:1402 + xor ah, ah ; 30 e4 ; 0xc1ff4 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc1ff6 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1ff9 + xor ah, ah ; 30 e4 ; 0xc1ffc + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc1ffe + jnbe short 01feeh ; 77 eb ; 0xc2001 + mov dl, al ; 88 c2 ; 0xc2003 vgabios.c:1404 + xor dh, dh ; 30 f6 ; 0xc2005 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2007 + add ax, dx ; 01 d0 ; 0xc200a + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc200c + jnbe short 02017h ; 77 06 ; 0xc200f + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc2011 + jne short 02038h ; 75 21 ; 0xc2015 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2017 vgabios.c:1405 + xor ah, ah ; 30 e4 ; 0xc201a + push ax ; 50 ; 0xc201c + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc201d + push ax ; 50 ; 0xc2020 + mov cl, byte [bp-01eh] ; 8a 4e e2 ; 0xc2021 + xor ch, ch ; 30 ed ; 0xc2024 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc2026 + xor bh, bh ; 30 ff ; 0xc2029 + mov dl, byte [bp-01ch] ; 8a 56 e4 ; 0xc202b + xor dh, dh ; 30 f6 ; 0xc202e + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2030 + call 019a2h ; e8 6c f9 ; 0xc2033 + jmp short 02057h ; eb 1f ; 0xc2036 vgabios.c:1406 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2038 vgabios.c:1407 + xor ah, ah ; 30 e4 ; 0xc203b + push ax ; 50 ; 0xc203d + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc203e + push ax ; 50 ; 0xc2041 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc2042 + xor ch, ch ; 30 ed ; 0xc2045 + mov bl, byte [bp-01ch] ; 8a 5e e4 ; 0xc2047 + xor bh, bh ; 30 ff ; 0xc204a + mov dl, bl ; 88 da ; 0xc204c + sub dl, byte [bp-006h] ; 2a 56 fa ; 0xc204e + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2051 + call 01914h ; e8 bd f8 ; 0xc2054 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc2057 vgabios.c:1408 + xor ah, ah ; 30 e4 ; 0xc205a + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc205c + jc short 020afh ; 72 4e ; 0xc205f + dec word [bp-01ch] ; ff 4e e4 ; 0xc2061 vgabios.c:1409 + jmp short 01ff9h ; eb 93 ; 0xc2064 + mov al, byte [bx+047b2h] ; 8a 87 b2 47 ; 0xc2066 vgabios.c:1414 + mov byte [bp-014h], al ; 88 46 ec ; 0xc206a + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc206d vgabios.c:1415 + jne short 020b2h ; 75 3f ; 0xc2071 + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc2073 + jne short 020b2h ; 75 39 ; 0xc2077 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc2079 + jne short 020b2h ; 75 33 ; 0xc207d + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc207f + cmp ax, di ; 39 f8 ; 0xc2082 + jne short 020b2h ; 75 2c ; 0xc2084 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc2086 + cmp ax, word [bp-022h] ; 3b 46 de ; 0xc2089 + jne short 020b2h ; 75 24 ; 0xc208c + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc208e vgabios.c:1417 + xor dh, dh ; 30 f6 ; 0xc2091 + mov ax, cx ; 89 c8 ; 0xc2093 + mul dx ; f7 e2 ; 0xc2095 + mov dl, byte [bp-014h] ; 8a 56 ec ; 0xc2097 + xor dh, dh ; 30 f6 ; 0xc209a + mul dx ; f7 e2 ; 0xc209c + mov cx, ax ; 89 c1 ; 0xc209e + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc20a0 + xor ah, ah ; 30 e4 ; 0xc20a3 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc20a5 + xor di, di ; 31 ff ; 0xc20a9 + jcxz 020afh ; e3 02 ; 0xc20ab + rep stosb ; f3 aa ; 0xc20ad + jmp near 022d4h ; e9 22 02 ; 0xc20af vgabios.c:1419 + cmp byte [bp-014h], 002h ; 80 7e ec 02 ; 0xc20b2 vgabios.c:1421 + jne short 020c1h ; 75 09 ; 0xc20b6 + sal byte [bp-008h], 1 ; d0 66 f8 ; 0xc20b8 vgabios.c:1423 + sal byte [bp-00ah], 1 ; d0 66 f6 ; 0xc20bb vgabios.c:1424 + sal word [bp-01eh], 1 ; d1 66 e2 ; 0xc20be vgabios.c:1425 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc20c1 vgabios.c:1428 + jne short 02130h ; 75 69 ; 0xc20c5 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc20c7 vgabios.c:1429 + xor ah, ah ; 30 e4 ; 0xc20ca + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc20cc + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc20cf + xor ah, ah ; 30 e4 ; 0xc20d2 + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc20d4 + jc short 020afh ; 72 d6 ; 0xc20d7 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc20d9 vgabios.c:1431 + xor dh, dh ; 30 f6 ; 0xc20dc + add dx, word [bp-01ch] ; 03 56 e4 ; 0xc20de + cmp dx, ax ; 39 c2 ; 0xc20e1 + jnbe short 020ebh ; 77 06 ; 0xc20e3 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc20e5 + jne short 0210ch ; 75 21 ; 0xc20e9 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc20eb vgabios.c:1432 + xor ah, ah ; 30 e4 ; 0xc20ee + push ax ; 50 ; 0xc20f0 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc20f1 + push ax ; 50 ; 0xc20f4 + mov cl, byte [bp-01eh] ; 8a 4e e2 ; 0xc20f5 + xor ch, ch ; 30 ed ; 0xc20f8 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc20fa + xor bh, bh ; 30 ff ; 0xc20fd + mov dl, byte [bp-01ch] ; 8a 56 e4 ; 0xc20ff + xor dh, dh ; 30 f6 ; 0xc2102 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2104 + call 01ad3h ; e8 c9 f9 ; 0xc2107 + jmp short 0212bh ; eb 1f ; 0xc210a vgabios.c:1433 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc210c vgabios.c:1434 + push ax ; 50 ; 0xc210f + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc2110 + push ax ; 50 ; 0xc2113 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc2114 + xor ch, ch ; 30 ed ; 0xc2117 + mov bl, byte [bp-01ch] ; 8a 5e e4 ; 0xc2119 + xor bh, bh ; 30 ff ; 0xc211c + mov dl, bl ; 88 da ; 0xc211e + add dl, byte [bp-006h] ; 02 56 fa ; 0xc2120 + xor dh, dh ; 30 f6 ; 0xc2123 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2125 + call 01a1dh ; e8 f2 f8 ; 0xc2128 + inc word [bp-01ch] ; ff 46 e4 ; 0xc212b vgabios.c:1435 + jmp short 020cfh ; eb 9f ; 0xc212e + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc2130 vgabios.c:1438 + xor ah, ah ; 30 e4 ; 0xc2133 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc2135 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2138 + xor ah, ah ; 30 e4 ; 0xc213b + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc213d + jnbe short 021aah ; 77 68 ; 0xc2140 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc2142 vgabios.c:1440 + xor dh, dh ; 30 f6 ; 0xc2145 + add ax, dx ; 01 d0 ; 0xc2147 + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc2149 + jnbe short 02152h ; 77 04 ; 0xc214c + test dl, dl ; 84 d2 ; 0xc214e + jne short 0217ch ; 75 2a ; 0xc2150 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2152 vgabios.c:1441 + xor ah, ah ; 30 e4 ; 0xc2155 + push ax ; 50 ; 0xc2157 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2158 + push ax ; 50 ; 0xc215b + mov cl, byte [bp-01eh] ; 8a 4e e2 ; 0xc215c + xor ch, ch ; 30 ed ; 0xc215f + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc2161 + xor bh, bh ; 30 ff ; 0xc2164 + mov dl, byte [bp-01ch] ; 8a 56 e4 ; 0xc2166 + xor dh, dh ; 30 f6 ; 0xc2169 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc216b + mov byte [bp-018h], al ; 88 46 e8 ; 0xc216e + mov byte [bp-017h], ah ; 88 66 e9 ; 0xc2171 + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc2174 + call 01ad3h ; e8 59 f9 ; 0xc2177 + jmp short 0219bh ; eb 1f ; 0xc217a vgabios.c:1442 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc217c vgabios.c:1443 + xor ah, ah ; 30 e4 ; 0xc217f + push ax ; 50 ; 0xc2181 + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc2182 + push ax ; 50 ; 0xc2185 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc2186 + xor ch, ch ; 30 ed ; 0xc2189 + mov bl, byte [bp-01ch] ; 8a 5e e4 ; 0xc218b + xor bh, bh ; 30 ff ; 0xc218e + mov dl, bl ; 88 da ; 0xc2190 + sub dl, byte [bp-006h] ; 2a 56 fa ; 0xc2192 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2195 + call 01a1dh ; e8 82 f8 ; 0xc2198 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc219b vgabios.c:1444 + xor ah, ah ; 30 e4 ; 0xc219e + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc21a0 + jc short 021eah ; 72 45 ; 0xc21a3 + dec word [bp-01ch] ; ff 4e e4 ; 0xc21a5 vgabios.c:1445 + jmp short 02138h ; eb 8e ; 0xc21a8 + jmp short 021eah ; eb 3e ; 0xc21aa + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc21ac vgabios.c:1450 + jne short 021edh ; 75 3b ; 0xc21b0 + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc21b2 + jne short 021edh ; 75 35 ; 0xc21b6 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc21b8 + jne short 021edh ; 75 2f ; 0xc21bc + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc21be + cmp ax, di ; 39 f8 ; 0xc21c1 + jne short 021edh ; 75 28 ; 0xc21c3 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc21c5 + cmp ax, word [bp-022h] ; 3b 46 de ; 0xc21c8 + jne short 021edh ; 75 20 ; 0xc21cb + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc21cd vgabios.c:1452 + xor dh, dh ; 30 f6 ; 0xc21d0 + mov ax, cx ; 89 c8 ; 0xc21d2 + mul dx ; f7 e2 ; 0xc21d4 + mov cx, ax ; 89 c1 ; 0xc21d6 + sal cx, 003h ; c1 e1 03 ; 0xc21d8 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc21db + xor ah, ah ; 30 e4 ; 0xc21de + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc21e0 + xor di, di ; 31 ff ; 0xc21e4 + jcxz 021eah ; e3 02 ; 0xc21e6 + rep stosb ; f3 aa ; 0xc21e8 + jmp near 022d4h ; e9 e7 00 ; 0xc21ea vgabios.c:1454 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc21ed vgabios.c:1457 + jne short 02262h ; 75 6f ; 0xc21f1 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc21f3 vgabios.c:1458 + xor ah, ah ; 30 e4 ; 0xc21f6 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc21f8 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc21fb + xor ah, ah ; 30 e4 ; 0xc21fe + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc2200 + jc short 021eah ; 72 e5 ; 0xc2203 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc2205 vgabios.c:1460 + xor dh, dh ; 30 f6 ; 0xc2208 + add dx, word [bp-01ch] ; 03 56 e4 ; 0xc220a + cmp dx, ax ; 39 c2 ; 0xc220d + jnbe short 02217h ; 77 06 ; 0xc220f + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc2211 + jne short 02236h ; 75 1f ; 0xc2215 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2217 vgabios.c:1461 + xor ah, ah ; 30 e4 ; 0xc221a + push ax ; 50 ; 0xc221c + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc221d + push ax ; 50 ; 0xc2220 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc2221 + xor bh, bh ; 30 ff ; 0xc2224 + mov dl, byte [bp-01ch] ; 8a 56 e4 ; 0xc2226 + xor dh, dh ; 30 f6 ; 0xc2229 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc222b + mov cx, word [bp-01eh] ; 8b 4e e2 ; 0xc222e + call 01be8h ; e8 b4 f9 ; 0xc2231 + jmp short 0225dh ; eb 27 ; 0xc2234 vgabios.c:1462 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2236 vgabios.c:1463 + push ax ; 50 ; 0xc2239 + push word [bp-01eh] ; ff 76 e2 ; 0xc223a + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc223d + xor ch, ch ; 30 ed ; 0xc2240 + mov bl, byte [bp-01ch] ; 8a 5e e4 ; 0xc2242 + xor bh, bh ; 30 ff ; 0xc2245 + mov dl, bl ; 88 da ; 0xc2247 + add dl, byte [bp-006h] ; 02 56 fa ; 0xc2249 + xor dh, dh ; 30 f6 ; 0xc224c + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc224e + mov byte [bp-018h], al ; 88 46 e8 ; 0xc2251 + mov byte [bp-017h], ah ; 88 66 e9 ; 0xc2254 + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc2257 + call 01b67h ; e8 0a f9 ; 0xc225a + inc word [bp-01ch] ; ff 46 e4 ; 0xc225d vgabios.c:1464 + jmp short 021fbh ; eb 99 ; 0xc2260 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc2262 vgabios.c:1467 + xor ah, ah ; 30 e4 ; 0xc2265 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc2267 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc226a + xor ah, ah ; 30 e4 ; 0xc226d + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc226f + jnbe short 022d4h ; 77 60 ; 0xc2272 + mov dl, al ; 88 c2 ; 0xc2274 vgabios.c:1469 + xor dh, dh ; 30 f6 ; 0xc2276 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2278 + add ax, dx ; 01 d0 ; 0xc227b + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc227d + jnbe short 02288h ; 77 06 ; 0xc2280 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc2282 + jne short 022a7h ; 75 1f ; 0xc2286 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2288 vgabios.c:1470 + xor ah, ah ; 30 e4 ; 0xc228b + push ax ; 50 ; 0xc228d + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc228e + push ax ; 50 ; 0xc2291 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc2292 + xor bh, bh ; 30 ff ; 0xc2295 + mov dl, byte [bp-01ch] ; 8a 56 e4 ; 0xc2297 + xor dh, dh ; 30 f6 ; 0xc229a + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc229c + mov cx, word [bp-01eh] ; 8b 4e e2 ; 0xc229f + call 01be8h ; e8 43 f9 ; 0xc22a2 + jmp short 022c5h ; eb 1e ; 0xc22a5 vgabios.c:1471 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc22a7 vgabios.c:1472 + xor ah, ah ; 30 e4 ; 0xc22aa + push ax ; 50 ; 0xc22ac + push word [bp-01eh] ; ff 76 e2 ; 0xc22ad + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc22b0 + xor ch, ch ; 30 ed ; 0xc22b3 + mov bl, byte [bp-01ch] ; 8a 5e e4 ; 0xc22b5 + xor bh, bh ; 30 ff ; 0xc22b8 + mov dl, bl ; 88 da ; 0xc22ba + sub dl, byte [bp-006h] ; 2a 56 fa ; 0xc22bc + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc22bf + call 01b67h ; e8 a2 f8 ; 0xc22c2 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc22c5 vgabios.c:1473 + xor ah, ah ; 30 e4 ; 0xc22c8 + cmp ax, word [bp-01ch] ; 3b 46 e4 ; 0xc22ca + jc short 022d4h ; 72 05 ; 0xc22cd + dec word [bp-01ch] ; ff 4e e4 ; 0xc22cf vgabios.c:1474 + jmp short 0226ah ; eb 96 ; 0xc22d2 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc22d4 vgabios.c:1485 + pop di ; 5f ; 0xc22d7 + pop si ; 5e ; 0xc22d8 + pop bp ; 5d ; 0xc22d9 + retn 00008h ; c2 08 00 ; 0xc22da + ; disGetNextSymbol 0xc22dd LB 0x2255 -> off=0x0 cb=0000000000000111 uValue=00000000000c22dd 'write_gfx_char_pl4' +write_gfx_char_pl4: ; 0xc22dd LB 0x111 + push bp ; 55 ; 0xc22dd vgabios.c:1488 + mov bp, sp ; 89 e5 ; 0xc22de + push si ; 56 ; 0xc22e0 + push di ; 57 ; 0xc22e1 + sub sp, strict byte 0000eh ; 83 ec 0e ; 0xc22e2 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc22e5 + mov byte [bp-008h], dl ; 88 56 f8 ; 0xc22e8 + mov ch, bl ; 88 dd ; 0xc22eb + mov al, cl ; 88 c8 ; 0xc22ed + mov bx, 0010ch ; bb 0c 01 ; 0xc22ef vgabios.c:67 + xor dx, dx ; 31 d2 ; 0xc22f2 + mov es, dx ; 8e c2 ; 0xc22f4 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc22f6 + mov bx, word [es:bx+002h] ; 26 8b 5f 02 ; 0xc22f9 + mov word [bp-012h], dx ; 89 56 ee ; 0xc22fd vgabios.c:68 + mov word [bp-00ch], bx ; 89 5e f4 ; 0xc2300 + xor ah, ah ; 30 e4 ; 0xc2303 vgabios.c:1497 + mov bl, byte [bp+006h] ; 8a 5e 06 ; 0xc2305 + xor bh, bh ; 30 ff ; 0xc2308 + imul bx ; f7 eb ; 0xc230a + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc230c + xor dh, dh ; 30 f6 ; 0xc230f + imul dx ; f7 ea ; 0xc2311 + mov si, ax ; 89 c6 ; 0xc2313 + mov al, ch ; 88 e8 ; 0xc2315 + xor ah, ah ; 30 e4 ; 0xc2317 + add si, ax ; 01 c6 ; 0xc2319 + mov di, strict word 0004ch ; bf 4c 00 ; 0xc231b vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc231e + mov es, ax ; 8e c0 ; 0xc2321 + mov ax, word [es:di] ; 26 8b 05 ; 0xc2323 + mov dl, byte [bp+008h] ; 8a 56 08 ; 0xc2326 vgabios.c:58 + xor dh, dh ; 30 f6 ; 0xc2329 + mul dx ; f7 e2 ; 0xc232b + add si, ax ; 01 c6 ; 0xc232d + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc232f vgabios.c:1499 + xor ah, ah ; 30 e4 ; 0xc2332 + imul bx ; f7 eb ; 0xc2334 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc2336 + mov ax, 00f02h ; b8 02 0f ; 0xc2339 vgabios.c:1500 + mov dx, 003c4h ; ba c4 03 ; 0xc233c + out DX, ax ; ef ; 0xc233f + mov ax, 00205h ; b8 05 02 ; 0xc2340 vgabios.c:1501 + mov dx, 003ceh ; ba ce 03 ; 0xc2343 + out DX, ax ; ef ; 0xc2346 + test byte [bp-008h], 080h ; f6 46 f8 80 ; 0xc2347 vgabios.c:1502 + je short 02353h ; 74 06 ; 0xc234b + mov ax, 01803h ; b8 03 18 ; 0xc234d vgabios.c:1504 + out DX, ax ; ef ; 0xc2350 + jmp short 02357h ; eb 04 ; 0xc2351 vgabios.c:1506 + mov ax, strict word 00003h ; b8 03 00 ; 0xc2353 vgabios.c:1508 + out DX, ax ; ef ; 0xc2356 + xor ch, ch ; 30 ed ; 0xc2357 vgabios.c:1510 + cmp ch, byte [bp+006h] ; 3a 6e 06 ; 0xc2359 + jnc short 023d0h ; 73 72 ; 0xc235c + mov al, ch ; 88 e8 ; 0xc235e vgabios.c:1512 + xor ah, ah ; 30 e4 ; 0xc2360 + mov bl, byte [bp+004h] ; 8a 5e 04 ; 0xc2362 + xor bh, bh ; 30 ff ; 0xc2365 + imul bx ; f7 eb ; 0xc2367 + mov bx, si ; 89 f3 ; 0xc2369 + add bx, ax ; 01 c3 ; 0xc236b + mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xc236d vgabios.c:1513 + jmp short 02385h ; eb 12 ; 0xc2371 + mov ax, 0a000h ; b8 00 a0 ; 0xc2373 vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc2376 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc2378 + inc byte [bp-006h] ; fe 46 fa ; 0xc237c vgabios.c:1526 + cmp byte [bp-006h], 008h ; 80 7e fa 08 ; 0xc237f + jnc short 023d2h ; 73 4d ; 0xc2383 + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc2385 + mov ax, 00080h ; b8 80 00 ; 0xc2388 + sar ax, CL ; d3 f8 ; 0xc238b + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc238d + mov byte [bp-00dh], 000h ; c6 46 f3 00 ; 0xc2390 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2394 + sal ax, 008h ; c1 e0 08 ; 0xc2397 + or AL, strict byte 008h ; 0c 08 ; 0xc239a + mov dx, 003ceh ; ba ce 03 ; 0xc239c + out DX, ax ; ef ; 0xc239f + mov dx, bx ; 89 da ; 0xc23a0 + mov ax, 0a000h ; b8 00 a0 ; 0xc23a2 + call 03841h ; e8 99 14 ; 0xc23a5 + mov al, ch ; 88 e8 ; 0xc23a8 + xor ah, ah ; 30 e4 ; 0xc23aa + add ax, word [bp-010h] ; 03 46 f0 ; 0xc23ac + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc23af + mov di, word [bp-012h] ; 8b 7e ee ; 0xc23b2 + add di, ax ; 01 c7 ; 0xc23b5 + mov al, byte [es:di] ; 26 8a 05 ; 0xc23b7 + xor ah, ah ; 30 e4 ; 0xc23ba + test word [bp-00eh], ax ; 85 46 f2 ; 0xc23bc + je short 02373h ; 74 b2 ; 0xc23bf + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc23c1 + and AL, strict byte 00fh ; 24 0f ; 0xc23c4 + mov dx, 0a000h ; ba 00 a0 ; 0xc23c6 + mov es, dx ; 8e c2 ; 0xc23c9 + mov byte [es:bx], al ; 26 88 07 ; 0xc23cb + jmp short 0237ch ; eb ac ; 0xc23ce + jmp short 023d6h ; eb 04 ; 0xc23d0 + db 0feh, 0c5h + ; inc ch ; fe c5 ; 0xc23d2 vgabios.c:1527 + jmp short 02359h ; eb 83 ; 0xc23d4 + mov ax, 0ff08h ; b8 08 ff ; 0xc23d6 vgabios.c:1528 + mov dx, 003ceh ; ba ce 03 ; 0xc23d9 + out DX, ax ; ef ; 0xc23dc + mov ax, strict word 00005h ; b8 05 00 ; 0xc23dd vgabios.c:1529 + out DX, ax ; ef ; 0xc23e0 + mov ax, strict word 00003h ; b8 03 00 ; 0xc23e1 vgabios.c:1530 + out DX, ax ; ef ; 0xc23e4 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc23e5 vgabios.c:1531 + pop di ; 5f ; 0xc23e8 + pop si ; 5e ; 0xc23e9 + pop bp ; 5d ; 0xc23ea + retn 00006h ; c2 06 00 ; 0xc23eb + ; disGetNextSymbol 0xc23ee LB 0x2144 -> off=0x0 cb=0000000000000112 uValue=00000000000c23ee 'write_gfx_char_cga' +write_gfx_char_cga: ; 0xc23ee LB 0x112 + push si ; 56 ; 0xc23ee vgabios.c:1534 + push di ; 57 ; 0xc23ef + enter 0000ch, 000h ; c8 0c 00 00 ; 0xc23f0 + mov bh, al ; 88 c7 ; 0xc23f4 + mov ch, dl ; 88 d5 ; 0xc23f6 + mov al, bl ; 88 d8 ; 0xc23f8 + mov di, 0556dh ; bf 6d 55 ; 0xc23fa vgabios.c:1541 + xor ah, ah ; 30 e4 ; 0xc23fd vgabios.c:1542 + mov dl, byte [bp+00ah] ; 8a 56 0a ; 0xc23ff + xor dh, dh ; 30 f6 ; 0xc2402 + imul dx ; f7 ea ; 0xc2404 + mov dl, cl ; 88 ca ; 0xc2406 + xor dh, dh ; 30 f6 ; 0xc2408 + imul dx, dx, 00140h ; 69 d2 40 01 ; 0xc240a + add ax, dx ; 01 d0 ; 0xc240e + mov word [bp-008h], ax ; 89 46 f8 ; 0xc2410 + mov al, bh ; 88 f8 ; 0xc2413 vgabios.c:1543 + xor ah, ah ; 30 e4 ; 0xc2415 + sal ax, 003h ; c1 e0 03 ; 0xc2417 + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc241a + xor ah, ah ; 30 e4 ; 0xc241d vgabios.c:1544 + jmp near 0243eh ; e9 1c 00 ; 0xc241f + mov dl, ah ; 88 e2 ; 0xc2422 vgabios.c:1559 + xor dh, dh ; 30 f6 ; 0xc2424 + add dx, word [bp-00ch] ; 03 56 f4 ; 0xc2426 + mov si, di ; 89 fe ; 0xc2429 + add si, dx ; 01 d6 ; 0xc242b + mov al, byte [si] ; 8a 04 ; 0xc242d + mov dx, 0b800h ; ba 00 b8 ; 0xc242f vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc2432 + mov byte [es:bx], al ; 26 88 07 ; 0xc2434 + db 0feh, 0c4h + ; inc ah ; fe c4 ; 0xc2437 vgabios.c:1563 + cmp ah, 008h ; 80 fc 08 ; 0xc2439 + jnc short 02495h ; 73 57 ; 0xc243c + mov dl, ah ; 88 e2 ; 0xc243e + xor dh, dh ; 30 f6 ; 0xc2440 + sar dx, 1 ; d1 fa ; 0xc2442 + imul dx, dx, strict byte 00050h ; 6b d2 50 ; 0xc2444 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc2447 + add bx, dx ; 01 d3 ; 0xc244a + test ah, 001h ; f6 c4 01 ; 0xc244c + je short 02454h ; 74 03 ; 0xc244f + add bh, 020h ; 80 c7 20 ; 0xc2451 + mov byte [bp-002h], 080h ; c6 46 fe 80 ; 0xc2454 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc2458 + jne short 0247ah ; 75 1c ; 0xc245c + test ch, 080h ; f6 c5 80 ; 0xc245e + je short 02422h ; 74 bf ; 0xc2461 + mov dx, 0b800h ; ba 00 b8 ; 0xc2463 + mov es, dx ; 8e c2 ; 0xc2466 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2468 + mov dl, ah ; 88 e2 ; 0xc246b + xor dh, dh ; 30 f6 ; 0xc246d + add dx, word [bp-00ch] ; 03 56 f4 ; 0xc246f + mov si, di ; 89 fe ; 0xc2472 + add si, dx ; 01 d6 ; 0xc2474 + xor al, byte [si] ; 32 04 ; 0xc2476 + jmp short 0242fh ; eb b5 ; 0xc2478 + cmp byte [bp-002h], 000h ; 80 7e fe 00 ; 0xc247a vgabios.c:1565 + jbe short 02437h ; 76 b7 ; 0xc247e + test ch, 080h ; f6 c5 80 ; 0xc2480 vgabios.c:1567 + je short 0248fh ; 74 0a ; 0xc2483 + mov dx, 0b800h ; ba 00 b8 ; 0xc2485 vgabios.c:47 + mov es, dx ; 8e c2 ; 0xc2488 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc248a + jmp short 02491h ; eb 02 ; 0xc248d vgabios.c:1571 + xor al, al ; 30 c0 ; 0xc248f vgabios.c:1573 + xor dl, dl ; 30 d2 ; 0xc2491 vgabios.c:1575 + jmp short 0249ch ; eb 07 ; 0xc2493 + jmp short 024fah ; eb 63 ; 0xc2495 + cmp dl, 004h ; 80 fa 04 ; 0xc2497 + jnc short 024efh ; 73 53 ; 0xc249a + mov byte [bp-006h], ah ; 88 66 fa ; 0xc249c vgabios.c:1577 + mov byte [bp-005h], 000h ; c6 46 fb 00 ; 0xc249f + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc24a3 + add si, word [bp-006h] ; 03 76 fa ; 0xc24a6 + add si, di ; 01 fe ; 0xc24a9 + mov dh, byte [si] ; 8a 34 ; 0xc24ab + mov byte [bp-006h], dh ; 88 76 fa ; 0xc24ad + mov byte [bp-005h], 000h ; c6 46 fb 00 ; 0xc24b0 + mov dh, byte [bp-002h] ; 8a 76 fe ; 0xc24b4 + mov byte [bp-00ah], dh ; 88 76 f6 ; 0xc24b7 + mov byte [bp-009h], 000h ; c6 46 f7 00 ; 0xc24ba + mov si, word [bp-006h] ; 8b 76 fa ; 0xc24be + test word [bp-00ah], si ; 85 76 f6 ; 0xc24c1 + je short 024e8h ; 74 22 ; 0xc24c4 + mov DH, strict byte 003h ; b6 03 ; 0xc24c6 vgabios.c:1578 + sub dh, dl ; 28 d6 ; 0xc24c8 + mov cl, ch ; 88 e9 ; 0xc24ca + and cl, 003h ; 80 e1 03 ; 0xc24cc + mov byte [bp-004h], cl ; 88 4e fc ; 0xc24cf + mov cl, dh ; 88 f1 ; 0xc24d2 + add cl, dh ; 00 f1 ; 0xc24d4 + mov dh, byte [bp-004h] ; 8a 76 fc ; 0xc24d6 + sal dh, CL ; d2 e6 ; 0xc24d9 + mov cl, dh ; 88 f1 ; 0xc24db + test ch, 080h ; f6 c5 80 ; 0xc24dd vgabios.c:1579 + je short 024e6h ; 74 04 ; 0xc24e0 + xor al, dh ; 30 f0 ; 0xc24e2 vgabios.c:1581 + jmp short 024e8h ; eb 02 ; 0xc24e4 vgabios.c:1583 + or al, dh ; 08 f0 ; 0xc24e6 vgabios.c:1585 + shr byte [bp-002h], 1 ; d0 6e fe ; 0xc24e8 vgabios.c:1588 + db 0feh, 0c2h + ; inc dl ; fe c2 ; 0xc24eb vgabios.c:1589 + jmp short 02497h ; eb a8 ; 0xc24ed + mov dx, 0b800h ; ba 00 b8 ; 0xc24ef vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc24f2 + mov byte [es:bx], al ; 26 88 07 ; 0xc24f4 + inc bx ; 43 ; 0xc24f7 vgabios.c:1591 + jmp short 0247ah ; eb 80 ; 0xc24f8 vgabios.c:1592 + leave ; c9 ; 0xc24fa vgabios.c:1595 + pop di ; 5f ; 0xc24fb + pop si ; 5e ; 0xc24fc + retn 00004h ; c2 04 00 ; 0xc24fd + ; disGetNextSymbol 0xc2500 LB 0x2032 -> off=0x0 cb=000000000000009b uValue=00000000000c2500 'write_gfx_char_lin' +write_gfx_char_lin: ; 0xc2500 LB 0x9b + push si ; 56 ; 0xc2500 vgabios.c:1598 + push di ; 57 ; 0xc2501 + enter 00008h, 000h ; c8 08 00 00 ; 0xc2502 + mov bh, al ; 88 c7 ; 0xc2506 + mov ch, dl ; 88 d5 ; 0xc2508 + mov al, cl ; 88 c8 ; 0xc250a + mov di, 0556dh ; bf 6d 55 ; 0xc250c vgabios.c:1605 + xor ah, ah ; 30 e4 ; 0xc250f vgabios.c:1606 + mov dl, byte [bp+008h] ; 8a 56 08 ; 0xc2511 + xor dh, dh ; 30 f6 ; 0xc2514 + imul dx ; f7 ea ; 0xc2516 + mov dx, ax ; 89 c2 ; 0xc2518 + sal dx, 006h ; c1 e2 06 ; 0xc251a + mov al, bl ; 88 d8 ; 0xc251d + xor ah, ah ; 30 e4 ; 0xc251f + sal ax, 003h ; c1 e0 03 ; 0xc2521 + add ax, dx ; 01 d0 ; 0xc2524 + mov word [bp-002h], ax ; 89 46 fe ; 0xc2526 + mov al, bh ; 88 f8 ; 0xc2529 vgabios.c:1607 + xor ah, ah ; 30 e4 ; 0xc252b + sal ax, 003h ; c1 e0 03 ; 0xc252d + mov word [bp-006h], ax ; 89 46 fa ; 0xc2530 + xor bl, bl ; 30 db ; 0xc2533 vgabios.c:1608 + jmp short 02579h ; eb 42 ; 0xc2535 + cmp AL, strict byte 008h ; 3c 08 ; 0xc2537 vgabios.c:1612 + jnc short 02572h ; 73 37 ; 0xc2539 + xor bh, bh ; 30 ff ; 0xc253b vgabios.c:1614 + mov dl, bl ; 88 da ; 0xc253d vgabios.c:1615 + xor dh, dh ; 30 f6 ; 0xc253f + add dx, word [bp-006h] ; 03 56 fa ; 0xc2541 + mov si, di ; 89 fe ; 0xc2544 + add si, dx ; 01 d6 ; 0xc2546 + mov dl, byte [si] ; 8a 14 ; 0xc2548 + mov byte [bp-004h], dl ; 88 56 fc ; 0xc254a + mov byte [bp-003h], bh ; 88 7e fd ; 0xc254d + mov dl, ah ; 88 e2 ; 0xc2550 + xor dh, dh ; 30 f6 ; 0xc2552 + test word [bp-004h], dx ; 85 56 fc ; 0xc2554 + je short 0255bh ; 74 02 ; 0xc2557 + mov bh, ch ; 88 ef ; 0xc2559 vgabios.c:1617 + mov dl, al ; 88 c2 ; 0xc255b vgabios.c:1619 + xor dh, dh ; 30 f6 ; 0xc255d + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc255f + add si, dx ; 01 d6 ; 0xc2562 + mov dx, 0a000h ; ba 00 a0 ; 0xc2564 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc2567 + mov byte [es:si], bh ; 26 88 3c ; 0xc2569 + shr ah, 1 ; d0 ec ; 0xc256c vgabios.c:1620 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc256e vgabios.c:1621 + jmp short 02537h ; eb c5 ; 0xc2570 + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc2572 vgabios.c:1622 + cmp bl, 008h ; 80 fb 08 ; 0xc2574 + jnc short 02595h ; 73 1c ; 0xc2577 + mov al, bl ; 88 d8 ; 0xc2579 + xor ah, ah ; 30 e4 ; 0xc257b + mov dl, byte [bp+008h] ; 8a 56 08 ; 0xc257d + xor dh, dh ; 30 f6 ; 0xc2580 + imul dx ; f7 ea ; 0xc2582 + sal ax, 003h ; c1 e0 03 ; 0xc2584 + mov dx, word [bp-002h] ; 8b 56 fe ; 0xc2587 + add dx, ax ; 01 c2 ; 0xc258a + mov word [bp-008h], dx ; 89 56 f8 ; 0xc258c + mov AH, strict byte 080h ; b4 80 ; 0xc258f + xor al, al ; 30 c0 ; 0xc2591 + jmp short 0253bh ; eb a6 ; 0xc2593 + leave ; c9 ; 0xc2595 vgabios.c:1623 + pop di ; 5f ; 0xc2596 + pop si ; 5e ; 0xc2597 + retn 00002h ; c2 02 00 ; 0xc2598 + ; disGetNextSymbol 0xc259b LB 0x1f97 -> off=0x0 cb=0000000000000187 uValue=00000000000c259b 'biosfn_write_char_attr' +biosfn_write_char_attr: ; 0xc259b LB 0x187 + push bp ; 55 ; 0xc259b vgabios.c:1626 + mov bp, sp ; 89 e5 ; 0xc259c + push si ; 56 ; 0xc259e + push di ; 57 ; 0xc259f + sub sp, strict byte 0001ch ; 83 ec 1c ; 0xc25a0 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc25a3 + mov byte [bp-00eh], dl ; 88 56 f2 ; 0xc25a6 + mov byte [bp-006h], bl ; 88 5e fa ; 0xc25a9 + mov si, cx ; 89 ce ; 0xc25ac + mov bx, strict word 00049h ; bb 49 00 ; 0xc25ae vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc25b1 + mov es, ax ; 8e c0 ; 0xc25b4 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc25b6 + xor ah, ah ; 30 e4 ; 0xc25b9 vgabios.c:1634 + call 03819h ; e8 5b 12 ; 0xc25bb + mov cl, al ; 88 c1 ; 0xc25be + mov byte [bp-010h], al ; 88 46 f0 ; 0xc25c0 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc25c3 vgabios.c:1635 + jne short 025cah ; 75 03 ; 0xc25c5 + jmp near 0271bh ; e9 51 01 ; 0xc25c7 + mov al, dl ; 88 d0 ; 0xc25ca vgabios.c:1638 + xor ah, ah ; 30 e4 ; 0xc25cc + lea bx, [bp-01eh] ; 8d 5e e2 ; 0xc25ce + lea dx, [bp-020h] ; 8d 56 e0 ; 0xc25d1 + call 00a96h ; e8 bf e4 ; 0xc25d4 + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc25d7 vgabios.c:1639 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc25da + mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xc25dd + xor al, al ; 30 c0 ; 0xc25e0 + shr ax, 008h ; c1 e8 08 ; 0xc25e2 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc25e5 + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc25e8 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc25eb + mov bx, 00084h ; bb 84 00 ; 0xc25ee vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc25f1 + mov es, ax ; 8e c0 ; 0xc25f4 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc25f6 + xor ah, ah ; 30 e4 ; 0xc25f9 vgabios.c:48 + mov dx, ax ; 89 c2 ; 0xc25fb + inc dx ; 42 ; 0xc25fd + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc25fe vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc2601 + mov word [bp-018h], ax ; 89 46 e8 ; 0xc2604 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc2607 vgabios.c:58 + mov bl, cl ; 88 cb ; 0xc260a vgabios.c:1645 + xor bh, bh ; 30 ff ; 0xc260c + mov di, bx ; 89 df ; 0xc260e + sal di, 003h ; c1 e7 03 ; 0xc2610 + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc2613 + jne short 02663h ; 75 49 ; 0xc2618 + mul dx ; f7 e2 ; 0xc261a vgabios.c:1648 + add ax, ax ; 01 c0 ; 0xc261c + or AL, strict byte 0ffh ; 0c ff ; 0xc261e + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc2620 + xor dh, dh ; 30 f6 ; 0xc2623 + inc ax ; 40 ; 0xc2625 + mul dx ; f7 e2 ; 0xc2626 + mov bx, ax ; 89 c3 ; 0xc2628 + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc262a + xor ah, ah ; 30 e4 ; 0xc262d + mul word [bp-018h] ; f7 66 e8 ; 0xc262f + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2632 + xor dh, dh ; 30 f6 ; 0xc2635 + add ax, dx ; 01 d0 ; 0xc2637 + add ax, ax ; 01 c0 ; 0xc2639 + mov dx, bx ; 89 da ; 0xc263b + add dx, ax ; 01 c2 ; 0xc263d + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc263f vgabios.c:1650 + xor ah, ah ; 30 e4 ; 0xc2642 + mov bx, ax ; 89 c3 ; 0xc2644 + sal bx, 008h ; c1 e3 08 ; 0xc2646 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2649 + add bx, ax ; 01 c3 ; 0xc264c + mov word [bp-020h], bx ; 89 5e e0 ; 0xc264e + mov ax, word [bp-020h] ; 8b 46 e0 ; 0xc2651 vgabios.c:1651 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc2654 + mov cx, si ; 89 f1 ; 0xc2658 + mov di, dx ; 89 d7 ; 0xc265a + jcxz 02660h ; e3 02 ; 0xc265c + rep stosw ; f3 ab ; 0xc265e + jmp near 0271bh ; e9 b8 00 ; 0xc2660 vgabios.c:1653 + mov bl, byte [bx+0482fh] ; 8a 9f 2f 48 ; 0xc2663 vgabios.c:1656 + sal bx, 006h ; c1 e3 06 ; 0xc2667 + mov al, byte [bx+04845h] ; 8a 87 45 48 ; 0xc266a + mov byte [bp-012h], al ; 88 46 ee ; 0xc266e + mov al, byte [di+047b2h] ; 8a 85 b2 47 ; 0xc2671 vgabios.c:1657 + mov byte [bp-014h], al ; 88 46 ec ; 0xc2675 + dec si ; 4e ; 0xc2678 vgabios.c:1658 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc2679 + je short 026ceh ; 74 50 ; 0xc267c + mov bl, byte [bp-010h] ; 8a 5e f0 ; 0xc267e vgabios.c:1660 + xor bh, bh ; 30 ff ; 0xc2681 + sal bx, 003h ; c1 e3 03 ; 0xc2683 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc2686 + cmp bl, 003h ; 80 fb 03 ; 0xc268a + jc short 0269eh ; 72 0f ; 0xc268d + jbe short 026a5h ; 76 14 ; 0xc268f + cmp bl, 005h ; 80 fb 05 ; 0xc2691 + je short 026fah ; 74 64 ; 0xc2694 + cmp bl, 004h ; 80 fb 04 ; 0xc2696 + je short 026a9h ; 74 0e ; 0xc2699 + jmp near 02715h ; e9 77 00 ; 0xc269b + cmp bl, 002h ; 80 fb 02 ; 0xc269e + je short 026d0h ; 74 2d ; 0xc26a1 + jmp short 02715h ; eb 70 ; 0xc26a3 + or byte [bp-006h], 001h ; 80 4e fa 01 ; 0xc26a5 vgabios.c:1663 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc26a9 vgabios.c:1665 + xor ah, ah ; 30 e4 ; 0xc26ac + push ax ; 50 ; 0xc26ae + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc26af + push ax ; 50 ; 0xc26b2 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc26b3 + push ax ; 50 ; 0xc26b6 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc26b7 + xor ch, ch ; 30 ed ; 0xc26ba + mov bl, byte [bp-008h] ; 8a 5e f8 ; 0xc26bc + xor bh, bh ; 30 ff ; 0xc26bf + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc26c1 + xor dh, dh ; 30 f6 ; 0xc26c4 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc26c6 + call 022ddh ; e8 11 fc ; 0xc26c9 + jmp short 02715h ; eb 47 ; 0xc26cc vgabios.c:1666 + jmp short 0271bh ; eb 4b ; 0xc26ce + mov al, byte [bp-014h] ; 8a 46 ec ; 0xc26d0 vgabios.c:1668 + xor ah, ah ; 30 e4 ; 0xc26d3 + push ax ; 50 ; 0xc26d5 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc26d6 + push ax ; 50 ; 0xc26d9 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc26da + xor ch, ch ; 30 ed ; 0xc26dd + mov bl, byte [bp-008h] ; 8a 5e f8 ; 0xc26df + xor bh, bh ; 30 ff ; 0xc26e2 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc26e4 + xor dh, dh ; 30 f6 ; 0xc26e7 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc26e9 + mov byte [bp-016h], al ; 88 46 ea ; 0xc26ec + mov byte [bp-015h], ah ; 88 66 eb ; 0xc26ef + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc26f2 + call 023eeh ; e8 f6 fc ; 0xc26f5 + jmp short 02715h ; eb 1b ; 0xc26f8 vgabios.c:1669 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc26fa vgabios.c:1671 + xor ah, ah ; 30 e4 ; 0xc26fd + push ax ; 50 ; 0xc26ff + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc2700 + xor ch, ch ; 30 ed ; 0xc2703 + mov bl, byte [bp-008h] ; 8a 5e f8 ; 0xc2705 + xor bh, bh ; 30 ff ; 0xc2708 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc270a + xor dh, dh ; 30 f6 ; 0xc270d + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc270f + call 02500h ; e8 eb fd ; 0xc2712 + inc byte [bp-008h] ; fe 46 f8 ; 0xc2715 vgabios.c:1678 + jmp near 02678h ; e9 5d ff ; 0xc2718 vgabios.c:1679 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc271b vgabios.c:1681 + pop di ; 5f ; 0xc271e + pop si ; 5e ; 0xc271f + pop bp ; 5d ; 0xc2720 + retn ; c3 ; 0xc2721 + ; disGetNextSymbol 0xc2722 LB 0x1e10 -> off=0x0 cb=0000000000000181 uValue=00000000000c2722 'biosfn_write_char_only' +biosfn_write_char_only: ; 0xc2722 LB 0x181 + push bp ; 55 ; 0xc2722 vgabios.c:1684 + mov bp, sp ; 89 e5 ; 0xc2723 + push si ; 56 ; 0xc2725 + push di ; 57 ; 0xc2726 + sub sp, strict byte 0001ch ; 83 ec 1c ; 0xc2727 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc272a + mov byte [bp-00eh], dl ; 88 56 f2 ; 0xc272d + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc2730 + mov si, cx ; 89 ce ; 0xc2733 + mov bx, strict word 00049h ; bb 49 00 ; 0xc2735 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2738 + mov es, ax ; 8e c0 ; 0xc273b + mov al, byte [es:bx] ; 26 8a 07 ; 0xc273d + xor ah, ah ; 30 e4 ; 0xc2740 vgabios.c:1692 + call 03819h ; e8 d4 10 ; 0xc2742 + mov byte [bp-010h], al ; 88 46 f0 ; 0xc2745 + mov byte [bp-012h], al ; 88 46 ee ; 0xc2748 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc274b vgabios.c:1693 + jne short 02752h ; 75 03 ; 0xc274d + jmp near 0289ch ; e9 4a 01 ; 0xc274f + mov al, dl ; 88 d0 ; 0xc2752 vgabios.c:1696 + xor ah, ah ; 30 e4 ; 0xc2754 + lea bx, [bp-01eh] ; 8d 5e e2 ; 0xc2756 + lea dx, [bp-020h] ; 8d 56 e0 ; 0xc2759 + call 00a96h ; e8 37 e3 ; 0xc275c + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc275f vgabios.c:1697 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2762 + mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xc2765 + xor al, al ; 30 c0 ; 0xc2768 + shr ax, 008h ; c1 e8 08 ; 0xc276a + mov word [bp-018h], ax ; 89 46 e8 ; 0xc276d + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc2770 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc2773 + mov bx, 00084h ; bb 84 00 ; 0xc2776 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2779 + mov es, ax ; 8e c0 ; 0xc277c + mov al, byte [es:bx] ; 26 8a 07 ; 0xc277e + xor ah, ah ; 30 e4 ; 0xc2781 vgabios.c:48 + mov dx, ax ; 89 c2 ; 0xc2783 + inc dx ; 42 ; 0xc2785 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2786 vgabios.c:57 + mov cx, word [es:bx] ; 26 8b 0f ; 0xc2789 + mov word [bp-01ch], cx ; 89 4e e4 ; 0xc278c vgabios.c:58 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc278f vgabios.c:1703 + mov bx, ax ; 89 c3 ; 0xc2792 + sal bx, 003h ; c1 e3 03 ; 0xc2794 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc2797 + jne short 027e0h ; 75 42 ; 0xc279c + mov ax, cx ; 89 c8 ; 0xc279e vgabios.c:1706 + mul dx ; f7 e2 ; 0xc27a0 + add ax, ax ; 01 c0 ; 0xc27a2 + or AL, strict byte 0ffh ; 0c ff ; 0xc27a4 + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc27a6 + xor dh, dh ; 30 f6 ; 0xc27a9 + inc ax ; 40 ; 0xc27ab + mul dx ; f7 e2 ; 0xc27ac + mov bx, ax ; 89 c3 ; 0xc27ae + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc27b0 + xor ah, ah ; 30 e4 ; 0xc27b3 + mul cx ; f7 e1 ; 0xc27b5 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc27b7 + xor dh, dh ; 30 f6 ; 0xc27ba + add ax, dx ; 01 d0 ; 0xc27bc + add ax, ax ; 01 c0 ; 0xc27be + add bx, ax ; 01 c3 ; 0xc27c0 + dec si ; 4e ; 0xc27c2 vgabios.c:1708 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc27c3 + je short 0274fh ; 74 87 ; 0xc27c6 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc27c8 vgabios.c:1709 + xor ah, ah ; 30 e4 ; 0xc27cb + mov di, ax ; 89 c7 ; 0xc27cd + sal di, 003h ; c1 e7 03 ; 0xc27cf + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc27d2 vgabios.c:50 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc27d6 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc27d9 + inc bx ; 43 ; 0xc27dc vgabios.c:1710 + inc bx ; 43 ; 0xc27dd + jmp short 027c2h ; eb e2 ; 0xc27de vgabios.c:1711 + mov di, ax ; 89 c7 ; 0xc27e0 vgabios.c:1716 + mov al, byte [di+0482fh] ; 8a 85 2f 48 ; 0xc27e2 + mov di, ax ; 89 c7 ; 0xc27e6 + sal di, 006h ; c1 e7 06 ; 0xc27e8 + mov al, byte [di+04845h] ; 8a 85 45 48 ; 0xc27eb + mov byte [bp-014h], al ; 88 46 ec ; 0xc27ef + mov al, byte [bx+047b2h] ; 8a 87 b2 47 ; 0xc27f2 vgabios.c:1717 + mov byte [bp-016h], al ; 88 46 ea ; 0xc27f6 + dec si ; 4e ; 0xc27f9 vgabios.c:1718 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc27fa + je short 0284fh ; 74 50 ; 0xc27fd + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc27ff vgabios.c:1720 + xor bh, bh ; 30 ff ; 0xc2802 + sal bx, 003h ; c1 e3 03 ; 0xc2804 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc2807 + cmp bl, 003h ; 80 fb 03 ; 0xc280b + jc short 0281fh ; 72 0f ; 0xc280e + jbe short 02826h ; 76 14 ; 0xc2810 + cmp bl, 005h ; 80 fb 05 ; 0xc2812 + je short 0287bh ; 74 64 ; 0xc2815 + cmp bl, 004h ; 80 fb 04 ; 0xc2817 + je short 0282ah ; 74 0e ; 0xc281a + jmp near 02896h ; e9 77 00 ; 0xc281c + cmp bl, 002h ; 80 fb 02 ; 0xc281f + je short 02851h ; 74 2d ; 0xc2822 + jmp short 02896h ; eb 70 ; 0xc2824 + or byte [bp-008h], 001h ; 80 4e f8 01 ; 0xc2826 vgabios.c:1723 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc282a vgabios.c:1725 + xor ah, ah ; 30 e4 ; 0xc282d + push ax ; 50 ; 0xc282f + mov al, byte [bp-014h] ; 8a 46 ec ; 0xc2830 + push ax ; 50 ; 0xc2833 + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc2834 + push ax ; 50 ; 0xc2837 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc2838 + xor ch, ch ; 30 ed ; 0xc283b + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc283d + xor bh, bh ; 30 ff ; 0xc2840 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2842 + xor dh, dh ; 30 f6 ; 0xc2845 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2847 + call 022ddh ; e8 90 fa ; 0xc284a + jmp short 02896h ; eb 47 ; 0xc284d vgabios.c:1726 + jmp short 0289ch ; eb 4b ; 0xc284f + mov al, byte [bp-016h] ; 8a 46 ea ; 0xc2851 vgabios.c:1728 + xor ah, ah ; 30 e4 ; 0xc2854 + push ax ; 50 ; 0xc2856 + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc2857 + push ax ; 50 ; 0xc285a + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc285b + xor ch, ch ; 30 ed ; 0xc285e + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc2860 + xor bh, bh ; 30 ff ; 0xc2863 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2865 + xor dh, dh ; 30 f6 ; 0xc2868 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc286a + mov byte [bp-01ah], al ; 88 46 e6 ; 0xc286d + mov byte [bp-019h], ah ; 88 66 e7 ; 0xc2870 + mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xc2873 + call 023eeh ; e8 75 fb ; 0xc2876 + jmp short 02896h ; eb 1b ; 0xc2879 vgabios.c:1729 + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc287b vgabios.c:1731 + xor ah, ah ; 30 e4 ; 0xc287e + push ax ; 50 ; 0xc2880 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc2881 + xor ch, ch ; 30 ed ; 0xc2884 + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc2886 + xor bh, bh ; 30 ff ; 0xc2889 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc288b + xor dh, dh ; 30 f6 ; 0xc288e + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2890 + call 02500h ; e8 6a fc ; 0xc2893 + inc byte [bp-006h] ; fe 46 fa ; 0xc2896 vgabios.c:1738 + jmp near 027f9h ; e9 5d ff ; 0xc2899 vgabios.c:1739 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc289c vgabios.c:1741 + pop di ; 5f ; 0xc289f + pop si ; 5e ; 0xc28a0 + pop bp ; 5d ; 0xc28a1 + retn ; c3 ; 0xc28a2 + ; disGetNextSymbol 0xc28a3 LB 0x1c8f -> off=0x0 cb=0000000000000173 uValue=00000000000c28a3 'biosfn_write_pixel' +biosfn_write_pixel: ; 0xc28a3 LB 0x173 + push bp ; 55 ; 0xc28a3 vgabios.c:1744 + mov bp, sp ; 89 e5 ; 0xc28a4 + push si ; 56 ; 0xc28a6 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc28a7 + mov byte [bp-006h], al ; 88 46 fa ; 0xc28aa + mov byte [bp-004h], dl ; 88 56 fc ; 0xc28ad + mov word [bp-008h], bx ; 89 5e f8 ; 0xc28b0 + mov dx, cx ; 89 ca ; 0xc28b3 + mov bx, strict word 00049h ; bb 49 00 ; 0xc28b5 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc28b8 + mov es, ax ; 8e c0 ; 0xc28bb + mov al, byte [es:bx] ; 26 8a 07 ; 0xc28bd + xor ah, ah ; 30 e4 ; 0xc28c0 vgabios.c:1751 + call 03819h ; e8 54 0f ; 0xc28c2 + mov cl, al ; 88 c1 ; 0xc28c5 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc28c7 vgabios.c:1752 + je short 028f1h ; 74 26 ; 0xc28c9 + mov bl, al ; 88 c3 ; 0xc28cb vgabios.c:1753 + xor bh, bh ; 30 ff ; 0xc28cd + sal bx, 003h ; c1 e3 03 ; 0xc28cf + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc28d2 + je short 028f1h ; 74 18 ; 0xc28d7 + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc28d9 vgabios.c:1755 + cmp AL, strict byte 003h ; 3c 03 ; 0xc28dd + jc short 028edh ; 72 0c ; 0xc28df + jbe short 028f7h ; 76 14 ; 0xc28e1 + cmp AL, strict byte 005h ; 3c 05 ; 0xc28e3 + je short 028f4h ; 74 0d ; 0xc28e5 + cmp AL, strict byte 004h ; 3c 04 ; 0xc28e7 + je short 028f7h ; 74 0c ; 0xc28e9 + jmp short 028f1h ; eb 04 ; 0xc28eb + cmp AL, strict byte 002h ; 3c 02 ; 0xc28ed + je short 02968h ; 74 77 ; 0xc28ef + jmp near 02a10h ; e9 1c 01 ; 0xc28f1 + jmp near 029eeh ; e9 f7 00 ; 0xc28f4 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc28f7 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc28fa + mov es, ax ; 8e c0 ; 0xc28fd + mov bx, word [es:bx] ; 26 8b 1f ; 0xc28ff + mov ax, dx ; 89 d0 ; 0xc2902 vgabios.c:58 + mul bx ; f7 e3 ; 0xc2904 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc2906 + shr bx, 003h ; c1 eb 03 ; 0xc2909 + add bx, ax ; 01 c3 ; 0xc290c + mov si, strict word 0004ch ; be 4c 00 ; 0xc290e vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc2911 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc2914 vgabios.c:58 + xor dh, dh ; 30 f6 ; 0xc2917 + mul dx ; f7 e2 ; 0xc2919 + add bx, ax ; 01 c3 ; 0xc291b + mov cx, word [bp-008h] ; 8b 4e f8 ; 0xc291d vgabios.c:1761 + and cl, 007h ; 80 e1 07 ; 0xc2920 + mov ax, 00080h ; b8 80 00 ; 0xc2923 + sar ax, CL ; d3 f8 ; 0xc2926 + xor ah, ah ; 30 e4 ; 0xc2928 vgabios.c:1762 + sal ax, 008h ; c1 e0 08 ; 0xc292a + or AL, strict byte 008h ; 0c 08 ; 0xc292d + mov dx, 003ceh ; ba ce 03 ; 0xc292f + out DX, ax ; ef ; 0xc2932 + mov ax, 00205h ; b8 05 02 ; 0xc2933 vgabios.c:1763 + out DX, ax ; ef ; 0xc2936 + mov dx, bx ; 89 da ; 0xc2937 vgabios.c:1764 + mov ax, 0a000h ; b8 00 a0 ; 0xc2939 + call 03841h ; e8 02 0f ; 0xc293c + test byte [bp-004h], 080h ; f6 46 fc 80 ; 0xc293f vgabios.c:1765 + je short 0294ch ; 74 07 ; 0xc2943 + mov ax, 01803h ; b8 03 18 ; 0xc2945 vgabios.c:1767 + mov dx, 003ceh ; ba ce 03 ; 0xc2948 + out DX, ax ; ef ; 0xc294b + mov ax, 0a000h ; b8 00 a0 ; 0xc294c vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc294f + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc2951 + mov byte [es:bx], al ; 26 88 07 ; 0xc2954 + mov ax, 0ff08h ; b8 08 ff ; 0xc2957 vgabios.c:1770 + mov dx, 003ceh ; ba ce 03 ; 0xc295a + out DX, ax ; ef ; 0xc295d + mov ax, strict word 00005h ; b8 05 00 ; 0xc295e vgabios.c:1771 + out DX, ax ; ef ; 0xc2961 + mov ax, strict word 00003h ; b8 03 00 ; 0xc2962 vgabios.c:1772 + out DX, ax ; ef ; 0xc2965 + jmp short 028f1h ; eb 89 ; 0xc2966 vgabios.c:1773 + mov ax, dx ; 89 d0 ; 0xc2968 vgabios.c:1775 + shr ax, 1 ; d1 e8 ; 0xc296a + imul ax, ax, strict byte 00050h ; 6b c0 50 ; 0xc296c + cmp byte [bx+047b2h], 002h ; 80 bf b2 47 02 ; 0xc296f + jne short 0297eh ; 75 08 ; 0xc2974 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc2976 vgabios.c:1777 + shr bx, 002h ; c1 eb 02 ; 0xc2979 + jmp short 02984h ; eb 06 ; 0xc297c vgabios.c:1779 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc297e vgabios.c:1781 + shr bx, 003h ; c1 eb 03 ; 0xc2981 + add bx, ax ; 01 c3 ; 0xc2984 + test dl, 001h ; f6 c2 01 ; 0xc2986 vgabios.c:1783 + je short 0298eh ; 74 03 ; 0xc2989 + add bh, 020h ; 80 c7 20 ; 0xc298b + mov ax, 0b800h ; b8 00 b8 ; 0xc298e vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc2991 + mov dl, byte [es:bx] ; 26 8a 17 ; 0xc2993 + mov al, cl ; 88 c8 ; 0xc2996 vgabios.c:1785 + xor ah, ah ; 30 e4 ; 0xc2998 + mov si, ax ; 89 c6 ; 0xc299a + sal si, 003h ; c1 e6 03 ; 0xc299c + cmp byte [si+047b2h], 002h ; 80 bc b2 47 02 ; 0xc299f + jne short 029bfh ; 75 19 ; 0xc29a4 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc29a6 vgabios.c:1787 + and AL, strict byte 003h ; 24 03 ; 0xc29a9 + mov AH, strict byte 003h ; b4 03 ; 0xc29ab + sub ah, al ; 28 c4 ; 0xc29ad + mov cl, ah ; 88 e1 ; 0xc29af + add cl, ah ; 00 e1 ; 0xc29b1 + mov dh, byte [bp-004h] ; 8a 76 fc ; 0xc29b3 + and dh, 003h ; 80 e6 03 ; 0xc29b6 + sal dh, CL ; d2 e6 ; 0xc29b9 + mov AL, strict byte 003h ; b0 03 ; 0xc29bb vgabios.c:1788 + jmp short 029d2h ; eb 13 ; 0xc29bd vgabios.c:1790 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc29bf vgabios.c:1792 + and AL, strict byte 007h ; 24 07 ; 0xc29c2 + mov CL, strict byte 007h ; b1 07 ; 0xc29c4 + sub cl, al ; 28 c1 ; 0xc29c6 + mov dh, byte [bp-004h] ; 8a 76 fc ; 0xc29c8 + and dh, 001h ; 80 e6 01 ; 0xc29cb + sal dh, CL ; d2 e6 ; 0xc29ce + mov AL, strict byte 001h ; b0 01 ; 0xc29d0 vgabios.c:1793 + sal al, CL ; d2 e0 ; 0xc29d2 + test byte [bp-004h], 080h ; f6 46 fc 80 ; 0xc29d4 vgabios.c:1795 + je short 029deh ; 74 04 ; 0xc29d8 + xor dl, dh ; 30 f2 ; 0xc29da vgabios.c:1797 + jmp short 029e4h ; eb 06 ; 0xc29dc vgabios.c:1799 + not al ; f6 d0 ; 0xc29de vgabios.c:1801 + and dl, al ; 20 c2 ; 0xc29e0 + or dl, dh ; 08 f2 ; 0xc29e2 vgabios.c:1802 + mov ax, 0b800h ; b8 00 b8 ; 0xc29e4 vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc29e7 + mov byte [es:bx], dl ; 26 88 17 ; 0xc29e9 + jmp short 02a10h ; eb 22 ; 0xc29ec vgabios.c:1805 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc29ee vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc29f1 + mov es, ax ; 8e c0 ; 0xc29f4 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc29f6 + sal bx, 003h ; c1 e3 03 ; 0xc29f9 vgabios.c:58 + mov ax, dx ; 89 d0 ; 0xc29fc + mul bx ; f7 e3 ; 0xc29fe + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc2a00 + add bx, ax ; 01 c3 ; 0xc2a03 + mov ax, 0a000h ; b8 00 a0 ; 0xc2a05 vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc2a08 + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc2a0a + mov byte [es:bx], al ; 26 88 07 ; 0xc2a0d + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2a10 vgabios.c:1815 + pop si ; 5e ; 0xc2a13 + pop bp ; 5d ; 0xc2a14 + retn ; c3 ; 0xc2a15 + ; disGetNextSymbol 0xc2a16 LB 0x1b1c -> off=0x0 cb=0000000000000258 uValue=00000000000c2a16 'biosfn_write_teletype' +biosfn_write_teletype: ; 0xc2a16 LB 0x258 + push bp ; 55 ; 0xc2a16 vgabios.c:1818 + mov bp, sp ; 89 e5 ; 0xc2a17 + push si ; 56 ; 0xc2a19 + sub sp, strict byte 00014h ; 83 ec 14 ; 0xc2a1a + mov ch, al ; 88 c5 ; 0xc2a1d + mov byte [bp-008h], dl ; 88 56 f8 ; 0xc2a1f + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc2a22 + cmp dl, 0ffh ; 80 fa ff ; 0xc2a25 vgabios.c:1826 + jne short 02a38h ; 75 0e ; 0xc2a28 + mov bx, strict word 00062h ; bb 62 00 ; 0xc2a2a vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2a2d + mov es, ax ; 8e c0 ; 0xc2a30 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2a32 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc2a35 vgabios.c:48 + mov bx, strict word 00049h ; bb 49 00 ; 0xc2a38 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2a3b + mov es, ax ; 8e c0 ; 0xc2a3e + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2a40 + xor ah, ah ; 30 e4 ; 0xc2a43 vgabios.c:1831 + call 03819h ; e8 d1 0d ; 0xc2a45 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc2a48 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc2a4b vgabios.c:1832 + je short 02ab5h ; 74 66 ; 0xc2a4d + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2a4f vgabios.c:1835 + xor ah, ah ; 30 e4 ; 0xc2a52 + lea bx, [bp-014h] ; 8d 5e ec ; 0xc2a54 + lea dx, [bp-016h] ; 8d 56 ea ; 0xc2a57 + call 00a96h ; e8 39 e0 ; 0xc2a5a + mov al, byte [bp-014h] ; 8a 46 ec ; 0xc2a5d vgabios.c:1836 + mov byte [bp-004h], al ; 88 46 fc ; 0xc2a60 + mov ax, word [bp-014h] ; 8b 46 ec ; 0xc2a63 + xor al, al ; 30 c0 ; 0xc2a66 + shr ax, 008h ; c1 e8 08 ; 0xc2a68 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2a6b + mov bx, 00084h ; bb 84 00 ; 0xc2a6e vgabios.c:47 + mov dx, strict word 00040h ; ba 40 00 ; 0xc2a71 + mov es, dx ; 8e c2 ; 0xc2a74 + mov dl, byte [es:bx] ; 26 8a 17 ; 0xc2a76 + xor dh, dh ; 30 f6 ; 0xc2a79 vgabios.c:48 + inc dx ; 42 ; 0xc2a7b + mov word [bp-012h], dx ; 89 56 ee ; 0xc2a7c + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2a7f vgabios.c:57 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc2a82 + mov word [bp-010h], dx ; 89 56 f0 ; 0xc2a85 vgabios.c:58 + cmp ch, 008h ; 80 fd 08 ; 0xc2a88 vgabios.c:1842 + jc short 02a9bh ; 72 0e ; 0xc2a8b + jbe short 02aa3h ; 76 14 ; 0xc2a8d + cmp ch, 00dh ; 80 fd 0d ; 0xc2a8f + je short 02ab8h ; 74 24 ; 0xc2a92 + cmp ch, 00ah ; 80 fd 0a ; 0xc2a94 + je short 02aaeh ; 74 15 ; 0xc2a97 + jmp short 02abfh ; eb 24 ; 0xc2a99 + cmp ch, 007h ; 80 fd 07 ; 0xc2a9b + jne short 02abfh ; 75 1f ; 0xc2a9e + jmp near 02bc5h ; e9 22 01 ; 0xc2aa0 + cmp byte [bp-004h], 000h ; 80 7e fc 00 ; 0xc2aa3 vgabios.c:1849 + jbe short 02abch ; 76 13 ; 0xc2aa7 + dec byte [bp-004h] ; fe 4e fc ; 0xc2aa9 + jmp short 02abch ; eb 0e ; 0xc2aac vgabios.c:1850 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc2aae vgabios.c:1853 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2ab0 + jmp short 02abch ; eb 07 ; 0xc2ab3 vgabios.c:1854 + jmp near 02c68h ; e9 b0 01 ; 0xc2ab5 + mov byte [bp-004h], 000h ; c6 46 fc 00 ; 0xc2ab8 vgabios.c:1857 + jmp near 02bc5h ; e9 06 01 ; 0xc2abc vgabios.c:1858 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2abf vgabios.c:1862 + xor ah, ah ; 30 e4 ; 0xc2ac2 + mov bx, ax ; 89 c3 ; 0xc2ac4 + sal bx, 003h ; c1 e3 03 ; 0xc2ac6 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc2ac9 + jne short 02b12h ; 75 42 ; 0xc2ace + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc2ad0 vgabios.c:1865 + mul word [bp-012h] ; f7 66 ee ; 0xc2ad3 + add ax, ax ; 01 c0 ; 0xc2ad6 + or AL, strict byte 0ffh ; 0c ff ; 0xc2ad8 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2ada + xor dh, dh ; 30 f6 ; 0xc2add + inc ax ; 40 ; 0xc2adf + mul dx ; f7 e2 ; 0xc2ae0 + mov si, ax ; 89 c6 ; 0xc2ae2 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2ae4 + xor ah, ah ; 30 e4 ; 0xc2ae7 + mul word [bp-010h] ; f7 66 f0 ; 0xc2ae9 + mov dx, ax ; 89 c2 ; 0xc2aec + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc2aee + xor ah, ah ; 30 e4 ; 0xc2af1 + add ax, dx ; 01 d0 ; 0xc2af3 + add ax, ax ; 01 c0 ; 0xc2af5 + add si, ax ; 01 c6 ; 0xc2af7 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2af9 vgabios.c:50 + mov byte [es:si], ch ; 26 88 2c ; 0xc2afd vgabios.c:52 + cmp cl, 003h ; 80 f9 03 ; 0xc2b00 vgabios.c:1870 + jne short 02b41h ; 75 3c ; 0xc2b03 + inc si ; 46 ; 0xc2b05 vgabios.c:1871 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2b06 vgabios.c:50 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2b0a + mov byte [es:si], al ; 26 88 04 ; 0xc2b0d + jmp short 02b41h ; eb 2f ; 0xc2b10 vgabios.c:1873 + mov si, ax ; 89 c6 ; 0xc2b12 vgabios.c:1876 + mov al, byte [si+0482fh] ; 8a 84 2f 48 ; 0xc2b14 + mov si, ax ; 89 c6 ; 0xc2b18 + sal si, 006h ; c1 e6 06 ; 0xc2b1a + mov dl, byte [si+04845h] ; 8a 94 45 48 ; 0xc2b1d + mov al, byte [bx+047b2h] ; 8a 87 b2 47 ; 0xc2b21 vgabios.c:1877 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc2b25 vgabios.c:1878 + cmp bl, 003h ; 80 fb 03 ; 0xc2b29 + jc short 02b3ch ; 72 0e ; 0xc2b2c + jbe short 02b43h ; 76 13 ; 0xc2b2e + cmp bl, 005h ; 80 fb 05 ; 0xc2b30 + je short 02b93h ; 74 5e ; 0xc2b33 + cmp bl, 004h ; 80 fb 04 ; 0xc2b35 + je short 02b47h ; 74 0d ; 0xc2b38 + jmp short 02bb2h ; eb 76 ; 0xc2b3a + cmp bl, 002h ; 80 fb 02 ; 0xc2b3c + je short 02b71h ; 74 30 ; 0xc2b3f + jmp short 02bb2h ; eb 6f ; 0xc2b41 + or byte [bp-00ah], 001h ; 80 4e f6 01 ; 0xc2b43 vgabios.c:1881 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2b47 vgabios.c:1883 + xor ah, ah ; 30 e4 ; 0xc2b4a + push ax ; 50 ; 0xc2b4c + mov al, dl ; 88 d0 ; 0xc2b4d + push ax ; 50 ; 0xc2b4f + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2b50 + push ax ; 50 ; 0xc2b53 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2b54 + mov bl, byte [bp-004h] ; 8a 5e fc ; 0xc2b57 + xor bh, bh ; 30 ff ; 0xc2b5a + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc2b5c + xor dh, dh ; 30 f6 ; 0xc2b5f + mov byte [bp-00eh], ch ; 88 6e f2 ; 0xc2b61 + mov byte [bp-00dh], ah ; 88 66 f3 ; 0xc2b64 + mov cx, ax ; 89 c1 ; 0xc2b67 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2b69 + call 022ddh ; e8 6e f7 ; 0xc2b6c + jmp short 02bb2h ; eb 41 ; 0xc2b6f vgabios.c:1884 + push ax ; 50 ; 0xc2b71 vgabios.c:1886 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2b72 + push ax ; 50 ; 0xc2b75 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2b76 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc2b79 + mov byte [bp-00dh], ah ; 88 66 f3 ; 0xc2b7c + mov bl, byte [bp-004h] ; 8a 5e fc ; 0xc2b7f + xor bh, bh ; 30 ff ; 0xc2b82 + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc2b84 + xor dh, dh ; 30 f6 ; 0xc2b87 + mov al, ch ; 88 e8 ; 0xc2b89 + mov cx, word [bp-00eh] ; 8b 4e f2 ; 0xc2b8b + call 023eeh ; e8 5d f8 ; 0xc2b8e + jmp short 02bb2h ; eb 1f ; 0xc2b91 vgabios.c:1887 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2b93 vgabios.c:1889 + push ax ; 50 ; 0xc2b96 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2b97 + mov bl, byte [bp-004h] ; 8a 5e fc ; 0xc2b9a + xor bh, bh ; 30 ff ; 0xc2b9d + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc2b9f + xor dh, dh ; 30 f6 ; 0xc2ba2 + mov byte [bp-00eh], ch ; 88 6e f2 ; 0xc2ba4 + mov byte [bp-00dh], ah ; 88 66 f3 ; 0xc2ba7 + mov cx, ax ; 89 c1 ; 0xc2baa + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2bac + call 02500h ; e8 4e f9 ; 0xc2baf + inc byte [bp-004h] ; fe 46 fc ; 0xc2bb2 vgabios.c:1897 + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc2bb5 vgabios.c:1899 + xor ah, ah ; 30 e4 ; 0xc2bb8 + cmp ax, word [bp-010h] ; 3b 46 f0 ; 0xc2bba + jne short 02bc5h ; 75 06 ; 0xc2bbd + mov byte [bp-004h], ah ; 88 66 fc ; 0xc2bbf vgabios.c:1900 + inc byte [bp-006h] ; fe 46 fa ; 0xc2bc2 vgabios.c:1901 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2bc5 vgabios.c:1906 + xor ah, ah ; 30 e4 ; 0xc2bc8 + cmp ax, word [bp-012h] ; 3b 46 ee ; 0xc2bca + jne short 02c30h ; 75 61 ; 0xc2bcd + mov bl, byte [bp-00ch] ; 8a 5e f4 ; 0xc2bcf vgabios.c:1908 + xor bh, bh ; 30 ff ; 0xc2bd2 + sal bx, 003h ; c1 e3 03 ; 0xc2bd4 + mov ch, byte [bp-012h] ; 8a 6e ee ; 0xc2bd7 + db 0feh, 0cdh + ; dec ch ; fe cd ; 0xc2bda + mov cl, byte [bp-010h] ; 8a 4e f0 ; 0xc2bdc + db 0feh, 0c9h + ; dec cl ; fe c9 ; 0xc2bdf + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc2be1 + jne short 02c32h ; 75 4a ; 0xc2be6 + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc2be8 vgabios.c:1910 + mul word [bp-012h] ; f7 66 ee ; 0xc2beb + add ax, ax ; 01 c0 ; 0xc2bee + or AL, strict byte 0ffh ; 0c ff ; 0xc2bf0 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2bf2 + xor dh, dh ; 30 f6 ; 0xc2bf5 + inc ax ; 40 ; 0xc2bf7 + mul dx ; f7 e2 ; 0xc2bf8 + mov si, ax ; 89 c6 ; 0xc2bfa + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2bfc + xor ah, ah ; 30 e4 ; 0xc2bff + dec ax ; 48 ; 0xc2c01 + mul word [bp-010h] ; f7 66 f0 ; 0xc2c02 + mov dx, ax ; 89 c2 ; 0xc2c05 + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc2c07 + xor ah, ah ; 30 e4 ; 0xc2c0a + add ax, dx ; 01 d0 ; 0xc2c0c + add ax, ax ; 01 c0 ; 0xc2c0e + add si, ax ; 01 c6 ; 0xc2c10 + inc si ; 46 ; 0xc2c12 vgabios.c:1911 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2c13 vgabios.c:45 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc2c17 + push strict byte 00001h ; 6a 01 ; 0xc2c1a vgabios.c:1912 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2c1c + xor ah, ah ; 30 e4 ; 0xc2c1f + push ax ; 50 ; 0xc2c21 + mov al, cl ; 88 c8 ; 0xc2c22 + push ax ; 50 ; 0xc2c24 + mov al, ch ; 88 e8 ; 0xc2c25 + push ax ; 50 ; 0xc2c27 + xor dh, dh ; 30 f6 ; 0xc2c28 + xor cx, cx ; 31 c9 ; 0xc2c2a + xor bx, bx ; 31 db ; 0xc2c2c + jmp short 02c44h ; eb 14 ; 0xc2c2e vgabios.c:1914 + jmp short 02c4dh ; eb 1b ; 0xc2c30 + push strict byte 00001h ; 6a 01 ; 0xc2c32 vgabios.c:1916 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2c34 + push ax ; 50 ; 0xc2c37 + mov al, cl ; 88 c8 ; 0xc2c38 + push ax ; 50 ; 0xc2c3a + mov al, ch ; 88 e8 ; 0xc2c3b + push ax ; 50 ; 0xc2c3d + xor cx, cx ; 31 c9 ; 0xc2c3e + xor bx, bx ; 31 db ; 0xc2c40 + xor dx, dx ; 31 d2 ; 0xc2c42 + mov ax, strict word 00001h ; b8 01 00 ; 0xc2c44 + call 01c55h ; e8 0b f0 ; 0xc2c47 + dec byte [bp-006h] ; fe 4e fa ; 0xc2c4a vgabios.c:1918 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2c4d vgabios.c:1922 + xor ah, ah ; 30 e4 ; 0xc2c50 + mov word [bp-014h], ax ; 89 46 ec ; 0xc2c52 + sal word [bp-014h], 008h ; c1 66 ec 08 ; 0xc2c55 + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc2c59 + add word [bp-014h], ax ; 01 46 ec ; 0xc2c5c + mov dx, word [bp-014h] ; 8b 56 ec ; 0xc2c5f vgabios.c:1923 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2c62 + call 01293h ; e8 2b e6 ; 0xc2c65 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2c68 vgabios.c:1924 + pop si ; 5e ; 0xc2c6b + pop bp ; 5d ; 0xc2c6c + retn ; c3 ; 0xc2c6d + ; disGetNextSymbol 0xc2c6e LB 0x18c4 -> off=0x0 cb=0000000000000033 uValue=00000000000c2c6e 'get_font_access' +get_font_access: ; 0xc2c6e LB 0x33 + push bp ; 55 ; 0xc2c6e vgabios.c:1927 + mov bp, sp ; 89 e5 ; 0xc2c6f + push dx ; 52 ; 0xc2c71 + mov ax, strict word 00005h ; b8 05 00 ; 0xc2c72 vgabios.c:1929 + mov dx, 003ceh ; ba ce 03 ; 0xc2c75 + out DX, ax ; ef ; 0xc2c78 + mov AL, strict byte 006h ; b0 06 ; 0xc2c79 vgabios.c:1930 + out DX, AL ; ee ; 0xc2c7b + mov dx, 003cfh ; ba cf 03 ; 0xc2c7c vgabios.c:1931 + in AL, DX ; ec ; 0xc2c7f + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2c80 + and ax, strict word 00001h ; 25 01 00 ; 0xc2c82 + or AL, strict byte 004h ; 0c 04 ; 0xc2c85 + sal ax, 008h ; c1 e0 08 ; 0xc2c87 + or AL, strict byte 006h ; 0c 06 ; 0xc2c8a + mov dx, 003ceh ; ba ce 03 ; 0xc2c8c + out DX, ax ; ef ; 0xc2c8f + mov ax, 00402h ; b8 02 04 ; 0xc2c90 vgabios.c:1932 + mov dx, 003c4h ; ba c4 03 ; 0xc2c93 + out DX, ax ; ef ; 0xc2c96 + mov ax, 00604h ; b8 04 06 ; 0xc2c97 vgabios.c:1933 + out DX, ax ; ef ; 0xc2c9a + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2c9b vgabios.c:1934 + pop dx ; 5a ; 0xc2c9e + pop bp ; 5d ; 0xc2c9f + retn ; c3 ; 0xc2ca0 + ; disGetNextSymbol 0xc2ca1 LB 0x1891 -> off=0x0 cb=0000000000000030 uValue=00000000000c2ca1 'release_font_access' +release_font_access: ; 0xc2ca1 LB 0x30 + push bp ; 55 ; 0xc2ca1 vgabios.c:1936 + mov bp, sp ; 89 e5 ; 0xc2ca2 + push dx ; 52 ; 0xc2ca4 + mov dx, 003cch ; ba cc 03 ; 0xc2ca5 vgabios.c:1938 + in AL, DX ; ec ; 0xc2ca8 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2ca9 + and ax, strict word 00001h ; 25 01 00 ; 0xc2cab + sal ax, 002h ; c1 e0 02 ; 0xc2cae + or AL, strict byte 00ah ; 0c 0a ; 0xc2cb1 + sal ax, 008h ; c1 e0 08 ; 0xc2cb3 + or AL, strict byte 006h ; 0c 06 ; 0xc2cb6 + mov dx, 003ceh ; ba ce 03 ; 0xc2cb8 + out DX, ax ; ef ; 0xc2cbb + mov ax, 01005h ; b8 05 10 ; 0xc2cbc vgabios.c:1939 + out DX, ax ; ef ; 0xc2cbf + mov ax, 00302h ; b8 02 03 ; 0xc2cc0 vgabios.c:1940 + mov dx, 003c4h ; ba c4 03 ; 0xc2cc3 + out DX, ax ; ef ; 0xc2cc6 + mov ax, 00204h ; b8 04 02 ; 0xc2cc7 vgabios.c:1941 + out DX, ax ; ef ; 0xc2cca + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2ccb vgabios.c:1942 + pop dx ; 5a ; 0xc2cce + pop bp ; 5d ; 0xc2ccf + retn ; c3 ; 0xc2cd0 + ; disGetNextSymbol 0xc2cd1 LB 0x1861 -> off=0x0 cb=00000000000000b1 uValue=00000000000c2cd1 'set_scan_lines' +set_scan_lines: ; 0xc2cd1 LB 0xb1 + push bp ; 55 ; 0xc2cd1 vgabios.c:1944 + mov bp, sp ; 89 e5 ; 0xc2cd2 + push bx ; 53 ; 0xc2cd4 + push cx ; 51 ; 0xc2cd5 + push dx ; 52 ; 0xc2cd6 + push si ; 56 ; 0xc2cd7 + push di ; 57 ; 0xc2cd8 + mov bl, al ; 88 c3 ; 0xc2cd9 + mov si, strict word 00063h ; be 63 00 ; 0xc2cdb vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2cde + mov es, ax ; 8e c0 ; 0xc2ce1 + mov si, word [es:si] ; 26 8b 34 ; 0xc2ce3 + mov cx, si ; 89 f1 ; 0xc2ce6 vgabios.c:58 + mov AL, strict byte 009h ; b0 09 ; 0xc2ce8 vgabios.c:1950 + mov dx, si ; 89 f2 ; 0xc2cea + out DX, AL ; ee ; 0xc2cec + lea dx, [si+001h] ; 8d 54 01 ; 0xc2ced vgabios.c:1951 + in AL, DX ; ec ; 0xc2cf0 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2cf1 + mov ah, al ; 88 c4 ; 0xc2cf3 vgabios.c:1952 + and ah, 0e0h ; 80 e4 e0 ; 0xc2cf5 + mov al, bl ; 88 d8 ; 0xc2cf8 + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc2cfa + or al, ah ; 08 e0 ; 0xc2cfc + out DX, AL ; ee ; 0xc2cfe vgabios.c:1953 + cmp bl, 008h ; 80 fb 08 ; 0xc2cff vgabios.c:1954 + jne short 02d0ch ; 75 08 ; 0xc2d02 + mov dx, strict word 00007h ; ba 07 00 ; 0xc2d04 vgabios.c:1956 + mov ax, strict word 00006h ; b8 06 00 ; 0xc2d07 + jmp short 02d19h ; eb 0d ; 0xc2d0a vgabios.c:1958 + mov dl, bl ; 88 da ; 0xc2d0c vgabios.c:1960 + sub dl, 003h ; 80 ea 03 ; 0xc2d0e + xor dh, dh ; 30 f6 ; 0xc2d11 + mov al, bl ; 88 d8 ; 0xc2d13 + sub AL, strict byte 004h ; 2c 04 ; 0xc2d15 + xor ah, ah ; 30 e4 ; 0xc2d17 + call 0118ch ; e8 70 e4 ; 0xc2d19 + xor bh, bh ; 30 ff ; 0xc2d1c vgabios.c:1962 + mov si, 00085h ; be 85 00 ; 0xc2d1e vgabios.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2d21 + mov es, ax ; 8e c0 ; 0xc2d24 + mov word [es:si], bx ; 26 89 1c ; 0xc2d26 + mov AL, strict byte 012h ; b0 12 ; 0xc2d29 vgabios.c:1963 + mov dx, cx ; 89 ca ; 0xc2d2b + out DX, AL ; ee ; 0xc2d2d + mov si, cx ; 89 ce ; 0xc2d2e vgabios.c:1964 + inc si ; 46 ; 0xc2d30 + mov dx, si ; 89 f2 ; 0xc2d31 + in AL, DX ; ec ; 0xc2d33 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2d34 + mov di, ax ; 89 c7 ; 0xc2d36 + mov AL, strict byte 007h ; b0 07 ; 0xc2d38 vgabios.c:1965 + mov dx, cx ; 89 ca ; 0xc2d3a + out DX, AL ; ee ; 0xc2d3c + mov dx, si ; 89 f2 ; 0xc2d3d vgabios.c:1966 + in AL, DX ; ec ; 0xc2d3f + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2d40 + mov dl, al ; 88 c2 ; 0xc2d42 vgabios.c:1967 + and dl, 002h ; 80 e2 02 ; 0xc2d44 + xor dh, dh ; 30 f6 ; 0xc2d47 + sal dx, 007h ; c1 e2 07 ; 0xc2d49 + and AL, strict byte 040h ; 24 40 ; 0xc2d4c + xor ah, ah ; 30 e4 ; 0xc2d4e + sal ax, 003h ; c1 e0 03 ; 0xc2d50 + add ax, dx ; 01 d0 ; 0xc2d53 + inc ax ; 40 ; 0xc2d55 + add ax, di ; 01 f8 ; 0xc2d56 + xor dx, dx ; 31 d2 ; 0xc2d58 vgabios.c:1968 + div bx ; f7 f3 ; 0xc2d5a + mov dl, al ; 88 c2 ; 0xc2d5c vgabios.c:1969 + db 0feh, 0cah + ; dec dl ; fe ca ; 0xc2d5e + mov si, 00084h ; be 84 00 ; 0xc2d60 vgabios.c:52 + mov byte [es:si], dl ; 26 88 14 ; 0xc2d63 + mov si, strict word 0004ah ; be 4a 00 ; 0xc2d66 vgabios.c:57 + mov dx, word [es:si] ; 26 8b 14 ; 0xc2d69 + xor ah, ah ; 30 e4 ; 0xc2d6c vgabios.c:1971 + mul dx ; f7 e2 ; 0xc2d6e + add ax, ax ; 01 c0 ; 0xc2d70 + mov si, strict word 0004ch ; be 4c 00 ; 0xc2d72 vgabios.c:62 + mov word [es:si], ax ; 26 89 04 ; 0xc2d75 + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc2d78 vgabios.c:1972 + pop di ; 5f ; 0xc2d7b + pop si ; 5e ; 0xc2d7c + pop dx ; 5a ; 0xc2d7d + pop cx ; 59 ; 0xc2d7e + pop bx ; 5b ; 0xc2d7f + pop bp ; 5d ; 0xc2d80 + retn ; c3 ; 0xc2d81 + ; disGetNextSymbol 0xc2d82 LB 0x17b0 -> off=0x0 cb=0000000000000023 uValue=00000000000c2d82 'biosfn_set_font_block' +biosfn_set_font_block: ; 0xc2d82 LB 0x23 + push bp ; 55 ; 0xc2d82 vgabios.c:1974 + mov bp, sp ; 89 e5 ; 0xc2d83 + push bx ; 53 ; 0xc2d85 + push dx ; 52 ; 0xc2d86 + mov bl, al ; 88 c3 ; 0xc2d87 + mov ax, 00100h ; b8 00 01 ; 0xc2d89 vgabios.c:1976 + mov dx, 003c4h ; ba c4 03 ; 0xc2d8c + out DX, ax ; ef ; 0xc2d8f + mov al, bl ; 88 d8 ; 0xc2d90 vgabios.c:1977 + xor ah, ah ; 30 e4 ; 0xc2d92 + sal ax, 008h ; c1 e0 08 ; 0xc2d94 + or AL, strict byte 003h ; 0c 03 ; 0xc2d97 + out DX, ax ; ef ; 0xc2d99 + mov ax, 00300h ; b8 00 03 ; 0xc2d9a vgabios.c:1978 + out DX, ax ; ef ; 0xc2d9d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2d9e vgabios.c:1979 + pop dx ; 5a ; 0xc2da1 + pop bx ; 5b ; 0xc2da2 + pop bp ; 5d ; 0xc2da3 + retn ; c3 ; 0xc2da4 + ; disGetNextSymbol 0xc2da5 LB 0x178d -> off=0x0 cb=0000000000000075 uValue=00000000000c2da5 'load_text_patch' +load_text_patch: ; 0xc2da5 LB 0x75 + push bp ; 55 ; 0xc2da5 vgabios.c:1981 + mov bp, sp ; 89 e5 ; 0xc2da6 + push si ; 56 ; 0xc2da8 + push di ; 57 ; 0xc2da9 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc2daa + push ax ; 50 ; 0xc2dad + mov byte [bp-006h], cl ; 88 4e fa ; 0xc2dae + call 02c6eh ; e8 ba fe ; 0xc2db1 vgabios.c:1986 + mov al, bl ; 88 d8 ; 0xc2db4 vgabios.c:1988 + and AL, strict byte 003h ; 24 03 ; 0xc2db6 + xor ah, ah ; 30 e4 ; 0xc2db8 + mov cx, ax ; 89 c1 ; 0xc2dba + sal cx, 00eh ; c1 e1 0e ; 0xc2dbc + mov al, bl ; 88 d8 ; 0xc2dbf + and AL, strict byte 004h ; 24 04 ; 0xc2dc1 + sal ax, 00bh ; c1 e0 0b ; 0xc2dc3 + add cx, ax ; 01 c1 ; 0xc2dc6 + mov word [bp-00ah], cx ; 89 4e f6 ; 0xc2dc8 + mov bx, dx ; 89 d3 ; 0xc2dcb vgabios.c:1989 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2dcd + mov word [bp-008h], ax ; 89 46 f8 ; 0xc2dd0 + inc dx ; 42 ; 0xc2dd3 vgabios.c:1990 + mov word [bp-00ch], dx ; 89 56 f4 ; 0xc2dd4 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc2dd7 vgabios.c:1991 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2dda + test al, al ; 84 c0 ; 0xc2ddd + je short 02e10h ; 74 2f ; 0xc2ddf + xor ah, ah ; 30 e4 ; 0xc2de1 vgabios.c:1992 + sal ax, 005h ; c1 e0 05 ; 0xc2de3 + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc2de6 + add di, ax ; 01 c7 ; 0xc2de9 + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc2deb vgabios.c:1993 + xor ch, ch ; 30 ed ; 0xc2dee + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc2df0 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc2df3 + mov ax, 0a000h ; b8 00 a0 ; 0xc2df6 + mov es, ax ; 8e c0 ; 0xc2df9 + jcxz 02e03h ; e3 06 ; 0xc2dfb + push DS ; 1e ; 0xc2dfd + mov ds, dx ; 8e da ; 0xc2dfe + rep movsb ; f3 a4 ; 0xc2e00 + pop DS ; 1f ; 0xc2e02 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2e03 vgabios.c:1994 + xor ah, ah ; 30 e4 ; 0xc2e06 + inc ax ; 40 ; 0xc2e08 + add word [bp-00ch], ax ; 01 46 f4 ; 0xc2e09 + add bx, ax ; 01 c3 ; 0xc2e0c vgabios.c:1995 + jmp short 02dd7h ; eb c7 ; 0xc2e0e vgabios.c:1996 + call 02ca1h ; e8 8e fe ; 0xc2e10 vgabios.c:1998 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2e13 vgabios.c:1999 + pop di ; 5f ; 0xc2e16 + pop si ; 5e ; 0xc2e17 + pop bp ; 5d ; 0xc2e18 + retn ; c3 ; 0xc2e19 + ; disGetNextSymbol 0xc2e1a LB 0x1718 -> off=0x0 cb=000000000000007f uValue=00000000000c2e1a 'biosfn_load_text_user_pat' +biosfn_load_text_user_pat: ; 0xc2e1a LB 0x7f + push bp ; 55 ; 0xc2e1a vgabios.c:2001 + mov bp, sp ; 89 e5 ; 0xc2e1b + push si ; 56 ; 0xc2e1d + push di ; 57 ; 0xc2e1e + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc2e1f + mov byte [bp-006h], al ; 88 46 fa ; 0xc2e22 + mov word [bp-00ch], dx ; 89 56 f4 ; 0xc2e25 + mov word [bp-00ah], bx ; 89 5e f6 ; 0xc2e28 + mov word [bp-00eh], cx ; 89 4e f2 ; 0xc2e2b + call 02c6eh ; e8 3d fe ; 0xc2e2e vgabios.c:2006 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc2e31 vgabios.c:2007 + and AL, strict byte 003h ; 24 03 ; 0xc2e34 + xor ah, ah ; 30 e4 ; 0xc2e36 + mov bx, ax ; 89 c3 ; 0xc2e38 + sal bx, 00eh ; c1 e3 0e ; 0xc2e3a + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc2e3d + and AL, strict byte 004h ; 24 04 ; 0xc2e40 + sal ax, 00bh ; c1 e0 0b ; 0xc2e42 + add bx, ax ; 01 c3 ; 0xc2e45 + mov word [bp-008h], bx ; 89 5e f8 ; 0xc2e47 + xor bx, bx ; 31 db ; 0xc2e4a vgabios.c:2008 + cmp bx, word [bp-00eh] ; 3b 5e f2 ; 0xc2e4c + jnc short 02e7fh ; 73 2e ; 0xc2e4f + mov cl, byte [bp+008h] ; 8a 4e 08 ; 0xc2e51 vgabios.c:2010 + xor ch, ch ; 30 ed ; 0xc2e54 + mov ax, bx ; 89 d8 ; 0xc2e56 + mul cx ; f7 e1 ; 0xc2e58 + mov si, word [bp-00ah] ; 8b 76 f6 ; 0xc2e5a + add si, ax ; 01 c6 ; 0xc2e5d + mov ax, word [bp+004h] ; 8b 46 04 ; 0xc2e5f vgabios.c:2011 + add ax, bx ; 01 d8 ; 0xc2e62 + sal ax, 005h ; c1 e0 05 ; 0xc2e64 + mov di, word [bp-008h] ; 8b 7e f8 ; 0xc2e67 + add di, ax ; 01 c7 ; 0xc2e6a + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc2e6c vgabios.c:2012 + mov ax, 0a000h ; b8 00 a0 ; 0xc2e6f + mov es, ax ; 8e c0 ; 0xc2e72 + jcxz 02e7ch ; e3 06 ; 0xc2e74 + push DS ; 1e ; 0xc2e76 + mov ds, dx ; 8e da ; 0xc2e77 + rep movsb ; f3 a4 ; 0xc2e79 + pop DS ; 1f ; 0xc2e7b + inc bx ; 43 ; 0xc2e7c vgabios.c:2013 + jmp short 02e4ch ; eb cd ; 0xc2e7d + call 02ca1h ; e8 1f fe ; 0xc2e7f vgabios.c:2014 + cmp byte [bp-006h], 010h ; 80 7e fa 10 ; 0xc2e82 vgabios.c:2015 + jc short 02e90h ; 72 08 ; 0xc2e86 + mov al, byte [bp+008h] ; 8a 46 08 ; 0xc2e88 vgabios.c:2017 + xor ah, ah ; 30 e4 ; 0xc2e8b + call 02cd1h ; e8 41 fe ; 0xc2e8d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2e90 vgabios.c:2019 + pop di ; 5f ; 0xc2e93 + pop si ; 5e ; 0xc2e94 + pop bp ; 5d ; 0xc2e95 + retn 00006h ; c2 06 00 ; 0xc2e96 + ; disGetNextSymbol 0xc2e99 LB 0x1699 -> off=0x0 cb=0000000000000016 uValue=00000000000c2e99 'biosfn_load_gfx_8_8_chars' +biosfn_load_gfx_8_8_chars: ; 0xc2e99 LB 0x16 + push bp ; 55 ; 0xc2e99 vgabios.c:2021 + mov bp, sp ; 89 e5 ; 0xc2e9a + push bx ; 53 ; 0xc2e9c + push cx ; 51 ; 0xc2e9d + mov bx, dx ; 89 d3 ; 0xc2e9e vgabios.c:2023 + mov cx, ax ; 89 c1 ; 0xc2ea0 + mov ax, strict word 0001fh ; b8 1f 00 ; 0xc2ea2 + call 009f0h ; e8 48 db ; 0xc2ea5 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2ea8 vgabios.c:2024 + pop cx ; 59 ; 0xc2eab + pop bx ; 5b ; 0xc2eac + pop bp ; 5d ; 0xc2ead + retn ; c3 ; 0xc2eae + ; disGetNextSymbol 0xc2eaf LB 0x1683 -> off=0x0 cb=000000000000004d uValue=00000000000c2eaf 'set_gfx_font' +set_gfx_font: ; 0xc2eaf LB 0x4d + push bp ; 55 ; 0xc2eaf vgabios.c:2026 + mov bp, sp ; 89 e5 ; 0xc2eb0 + push si ; 56 ; 0xc2eb2 + push di ; 57 ; 0xc2eb3 + mov si, ax ; 89 c6 ; 0xc2eb4 + mov ax, dx ; 89 d0 ; 0xc2eb6 + mov di, bx ; 89 df ; 0xc2eb8 + mov dl, cl ; 88 ca ; 0xc2eba + mov bx, si ; 89 f3 ; 0xc2ebc vgabios.c:2030 + mov cx, ax ; 89 c1 ; 0xc2ebe + mov ax, strict word 00043h ; b8 43 00 ; 0xc2ec0 + call 009f0h ; e8 2a db ; 0xc2ec3 + test dl, dl ; 84 d2 ; 0xc2ec6 vgabios.c:2031 + je short 02edch ; 74 12 ; 0xc2ec8 + cmp dl, 003h ; 80 fa 03 ; 0xc2eca vgabios.c:2032 + jbe short 02ed1h ; 76 02 ; 0xc2ecd + mov DL, strict byte 002h ; b2 02 ; 0xc2ecf vgabios.c:2033 + mov bl, dl ; 88 d3 ; 0xc2ed1 vgabios.c:2034 + xor bh, bh ; 30 ff ; 0xc2ed3 + mov al, byte [bx+07dfeh] ; 8a 87 fe 7d ; 0xc2ed5 + mov byte [bp+004h], al ; 88 46 04 ; 0xc2ed9 + mov bx, 00085h ; bb 85 00 ; 0xc2edc vgabios.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2edf + mov es, ax ; 8e c0 ; 0xc2ee2 + mov word [es:bx], di ; 26 89 3f ; 0xc2ee4 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc2ee7 vgabios.c:2039 + xor ah, ah ; 30 e4 ; 0xc2eea + dec ax ; 48 ; 0xc2eec + mov bx, 00084h ; bb 84 00 ; 0xc2eed vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc2ef0 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2ef3 vgabios.c:2040 + pop di ; 5f ; 0xc2ef6 + pop si ; 5e ; 0xc2ef7 + pop bp ; 5d ; 0xc2ef8 + retn 00002h ; c2 02 00 ; 0xc2ef9 + ; disGetNextSymbol 0xc2efc LB 0x1636 -> off=0x0 cb=000000000000001d uValue=00000000000c2efc 'biosfn_load_gfx_user_chars' +biosfn_load_gfx_user_chars: ; 0xc2efc LB 0x1d + push bp ; 55 ; 0xc2efc vgabios.c:2042 + mov bp, sp ; 89 e5 ; 0xc2efd + push si ; 56 ; 0xc2eff + mov si, ax ; 89 c6 ; 0xc2f00 + mov ax, dx ; 89 d0 ; 0xc2f02 + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc2f04 vgabios.c:2045 + xor dh, dh ; 30 f6 ; 0xc2f07 + push dx ; 52 ; 0xc2f09 + xor ch, ch ; 30 ed ; 0xc2f0a + mov dx, si ; 89 f2 ; 0xc2f0c + call 02eafh ; e8 9e ff ; 0xc2f0e + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2f11 vgabios.c:2046 + pop si ; 5e ; 0xc2f14 + pop bp ; 5d ; 0xc2f15 + retn 00002h ; c2 02 00 ; 0xc2f16 + ; disGetNextSymbol 0xc2f19 LB 0x1619 -> off=0x0 cb=0000000000000022 uValue=00000000000c2f19 'biosfn_load_gfx_8_14_chars' +biosfn_load_gfx_8_14_chars: ; 0xc2f19 LB 0x22 + push bp ; 55 ; 0xc2f19 vgabios.c:2051 + mov bp, sp ; 89 e5 ; 0xc2f1a + push bx ; 53 ; 0xc2f1c + push cx ; 51 ; 0xc2f1d + mov bl, al ; 88 c3 ; 0xc2f1e + mov al, dl ; 88 d0 ; 0xc2f20 + xor ah, ah ; 30 e4 ; 0xc2f22 vgabios.c:2053 + push ax ; 50 ; 0xc2f24 + mov al, bl ; 88 d8 ; 0xc2f25 + mov cx, ax ; 89 c1 ; 0xc2f27 + mov bx, strict word 0000eh ; bb 0e 00 ; 0xc2f29 + mov ax, 05d6dh ; b8 6d 5d ; 0xc2f2c + mov dx, ds ; 8c da ; 0xc2f2f + call 02eafh ; e8 7b ff ; 0xc2f31 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2f34 vgabios.c:2054 + pop cx ; 59 ; 0xc2f37 + pop bx ; 5b ; 0xc2f38 + pop bp ; 5d ; 0xc2f39 + retn ; c3 ; 0xc2f3a + ; disGetNextSymbol 0xc2f3b LB 0x15f7 -> off=0x0 cb=0000000000000022 uValue=00000000000c2f3b 'biosfn_load_gfx_8_8_dd_chars' +biosfn_load_gfx_8_8_dd_chars: ; 0xc2f3b LB 0x22 + push bp ; 55 ; 0xc2f3b vgabios.c:2055 + mov bp, sp ; 89 e5 ; 0xc2f3c + push bx ; 53 ; 0xc2f3e + push cx ; 51 ; 0xc2f3f + mov bl, al ; 88 c3 ; 0xc2f40 + mov al, dl ; 88 d0 ; 0xc2f42 + xor ah, ah ; 30 e4 ; 0xc2f44 vgabios.c:2057 + push ax ; 50 ; 0xc2f46 + mov al, bl ; 88 d8 ; 0xc2f47 + mov cx, ax ; 89 c1 ; 0xc2f49 + mov bx, strict word 00008h ; bb 08 00 ; 0xc2f4b + mov ax, 0556dh ; b8 6d 55 ; 0xc2f4e + mov dx, ds ; 8c da ; 0xc2f51 + call 02eafh ; e8 59 ff ; 0xc2f53 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2f56 vgabios.c:2058 + pop cx ; 59 ; 0xc2f59 + pop bx ; 5b ; 0xc2f5a + pop bp ; 5d ; 0xc2f5b + retn ; c3 ; 0xc2f5c + ; disGetNextSymbol 0xc2f5d LB 0x15d5 -> off=0x0 cb=0000000000000022 uValue=00000000000c2f5d 'biosfn_load_gfx_8_16_chars' +biosfn_load_gfx_8_16_chars: ; 0xc2f5d LB 0x22 + push bp ; 55 ; 0xc2f5d vgabios.c:2059 + mov bp, sp ; 89 e5 ; 0xc2f5e + push bx ; 53 ; 0xc2f60 + push cx ; 51 ; 0xc2f61 + mov bl, al ; 88 c3 ; 0xc2f62 + mov al, dl ; 88 d0 ; 0xc2f64 + xor ah, ah ; 30 e4 ; 0xc2f66 vgabios.c:2061 + push ax ; 50 ; 0xc2f68 + mov al, bl ; 88 d8 ; 0xc2f69 + mov cx, ax ; 89 c1 ; 0xc2f6b + mov bx, strict word 00010h ; bb 10 00 ; 0xc2f6d + mov ax, 06b6dh ; b8 6d 6b ; 0xc2f70 + mov dx, ds ; 8c da ; 0xc2f73 + call 02eafh ; e8 37 ff ; 0xc2f75 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2f78 vgabios.c:2062 + pop cx ; 59 ; 0xc2f7b + pop bx ; 5b ; 0xc2f7c + pop bp ; 5d ; 0xc2f7d + retn ; c3 ; 0xc2f7e + ; disGetNextSymbol 0xc2f7f LB 0x15b3 -> off=0x0 cb=0000000000000005 uValue=00000000000c2f7f 'biosfn_alternate_prtsc' +biosfn_alternate_prtsc: ; 0xc2f7f LB 0x5 + push bp ; 55 ; 0xc2f7f vgabios.c:2064 + mov bp, sp ; 89 e5 ; 0xc2f80 + pop bp ; 5d ; 0xc2f82 vgabios.c:2069 + retn ; c3 ; 0xc2f83 + ; disGetNextSymbol 0xc2f84 LB 0x15ae -> off=0x0 cb=0000000000000032 uValue=00000000000c2f84 'biosfn_set_txt_lines' +biosfn_set_txt_lines: ; 0xc2f84 LB 0x32 + push bx ; 53 ; 0xc2f84 vgabios.c:2071 + push si ; 56 ; 0xc2f85 + push bp ; 55 ; 0xc2f86 + mov bp, sp ; 89 e5 ; 0xc2f87 + mov bl, al ; 88 c3 ; 0xc2f89 + mov si, 00089h ; be 89 00 ; 0xc2f8b vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2f8e + mov es, ax ; 8e c0 ; 0xc2f91 + mov al, byte [es:si] ; 26 8a 04 ; 0xc2f93 + and AL, strict byte 06fh ; 24 6f ; 0xc2f96 vgabios.c:2077 + cmp bl, 002h ; 80 fb 02 ; 0xc2f98 vgabios.c:2079 + je short 02fa5h ; 74 08 ; 0xc2f9b + test bl, bl ; 84 db ; 0xc2f9d + jne short 02fa7h ; 75 06 ; 0xc2f9f + or AL, strict byte 080h ; 0c 80 ; 0xc2fa1 vgabios.c:2082 + jmp short 02fa7h ; eb 02 ; 0xc2fa3 vgabios.c:2083 + or AL, strict byte 010h ; 0c 10 ; 0xc2fa5 vgabios.c:2085 + mov bx, 00089h ; bb 89 00 ; 0xc2fa7 vgabios.c:52 + mov si, strict word 00040h ; be 40 00 ; 0xc2faa + mov es, si ; 8e c6 ; 0xc2fad + mov byte [es:bx], al ; 26 88 07 ; 0xc2faf + pop bp ; 5d ; 0xc2fb2 vgabios.c:2089 + pop si ; 5e ; 0xc2fb3 + pop bx ; 5b ; 0xc2fb4 + retn ; c3 ; 0xc2fb5 + ; disGetNextSymbol 0xc2fb6 LB 0x157c -> off=0x0 cb=0000000000000005 uValue=00000000000c2fb6 'biosfn_switch_video_interface' +biosfn_switch_video_interface: ; 0xc2fb6 LB 0x5 + push bp ; 55 ; 0xc2fb6 vgabios.c:2092 + mov bp, sp ; 89 e5 ; 0xc2fb7 + pop bp ; 5d ; 0xc2fb9 vgabios.c:2097 + retn ; c3 ; 0xc2fba + ; disGetNextSymbol 0xc2fbb LB 0x1577 -> off=0x0 cb=0000000000000005 uValue=00000000000c2fbb 'biosfn_enable_video_refresh_control' +biosfn_enable_video_refresh_control: ; 0xc2fbb LB 0x5 + push bp ; 55 ; 0xc2fbb vgabios.c:2098 + mov bp, sp ; 89 e5 ; 0xc2fbc + pop bp ; 5d ; 0xc2fbe vgabios.c:2103 + retn ; c3 ; 0xc2fbf + ; disGetNextSymbol 0xc2fc0 LB 0x1572 -> off=0x0 cb=000000000000009d uValue=00000000000c2fc0 'biosfn_write_string' +biosfn_write_string: ; 0xc2fc0 LB 0x9d + push bp ; 55 ; 0xc2fc0 vgabios.c:2106 + mov bp, sp ; 89 e5 ; 0xc2fc1 + push si ; 56 ; 0xc2fc3 + push di ; 57 ; 0xc2fc4 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc2fc5 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2fc8 + mov byte [bp-008h], dl ; 88 56 f8 ; 0xc2fcb + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc2fce + mov si, cx ; 89 ce ; 0xc2fd1 + mov di, word [bp+00ah] ; 8b 7e 0a ; 0xc2fd3 + mov al, dl ; 88 d0 ; 0xc2fd6 vgabios.c:2113 + xor ah, ah ; 30 e4 ; 0xc2fd8 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc2fda + lea dx, [bp-00ch] ; 8d 56 f4 ; 0xc2fdd + call 00a96h ; e8 b3 da ; 0xc2fe0 + cmp byte [bp+004h], 0ffh ; 80 7e 04 ff ; 0xc2fe3 vgabios.c:2116 + jne short 02ffah ; 75 11 ; 0xc2fe7 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2fe9 vgabios.c:2117 + mov byte [bp+006h], al ; 88 46 06 ; 0xc2fec + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2fef vgabios.c:2118 + xor al, al ; 30 c0 ; 0xc2ff2 + shr ax, 008h ; c1 e8 08 ; 0xc2ff4 + mov byte [bp+004h], al ; 88 46 04 ; 0xc2ff7 + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc2ffa vgabios.c:2121 + xor dh, dh ; 30 f6 ; 0xc2ffd + sal dx, 008h ; c1 e2 08 ; 0xc2fff + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc3002 + xor ah, ah ; 30 e4 ; 0xc3005 + add dx, ax ; 01 c2 ; 0xc3007 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3009 vgabios.c:2122 + call 01293h ; e8 84 e2 ; 0xc300c + dec si ; 4e ; 0xc300f vgabios.c:2124 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc3010 + je short 03043h ; 74 2e ; 0xc3013 + mov bx, di ; 89 fb ; 0xc3015 vgabios.c:2126 + inc di ; 47 ; 0xc3017 + mov es, [bp+008h] ; 8e 46 08 ; 0xc3018 vgabios.c:47 + mov ah, byte [es:bx] ; 26 8a 27 ; 0xc301b + test byte [bp-006h], 002h ; f6 46 fa 02 ; 0xc301e vgabios.c:2127 + je short 0302dh ; 74 09 ; 0xc3022 + mov bx, di ; 89 fb ; 0xc3024 vgabios.c:2128 + inc di ; 47 ; 0xc3026 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3027 vgabios.c:47 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc302a vgabios.c:48 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc302d vgabios.c:2130 + xor bh, bh ; 30 ff ; 0xc3030 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc3032 + xor dh, dh ; 30 f6 ; 0xc3035 + mov al, ah ; 88 e0 ; 0xc3037 + xor ah, ah ; 30 e4 ; 0xc3039 + mov cx, strict word 00003h ; b9 03 00 ; 0xc303b + call 02a16h ; e8 d5 f9 ; 0xc303e + jmp short 0300fh ; eb cc ; 0xc3041 vgabios.c:2131 + test byte [bp-006h], 001h ; f6 46 fa 01 ; 0xc3043 vgabios.c:2134 + jne short 03054h ; 75 0b ; 0xc3047 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc3049 vgabios.c:2135 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc304c + xor ah, ah ; 30 e4 ; 0xc304f + call 01293h ; e8 3f e2 ; 0xc3051 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3054 vgabios.c:2136 + pop di ; 5f ; 0xc3057 + pop si ; 5e ; 0xc3058 + pop bp ; 5d ; 0xc3059 + retn 00008h ; c2 08 00 ; 0xc305a + ; disGetNextSymbol 0xc305d LB 0x14d5 -> off=0x0 cb=00000000000001ef uValue=00000000000c305d 'biosfn_read_state_info' +biosfn_read_state_info: ; 0xc305d LB 0x1ef + push bp ; 55 ; 0xc305d vgabios.c:2139 + mov bp, sp ; 89 e5 ; 0xc305e + push cx ; 51 ; 0xc3060 + push si ; 56 ; 0xc3061 + push di ; 57 ; 0xc3062 + push ax ; 50 ; 0xc3063 + push ax ; 50 ; 0xc3064 + push dx ; 52 ; 0xc3065 + mov si, strict word 00049h ; be 49 00 ; 0xc3066 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3069 + mov es, ax ; 8e c0 ; 0xc306c + mov al, byte [es:si] ; 26 8a 04 ; 0xc306e + mov byte [bp-008h], al ; 88 46 f8 ; 0xc3071 vgabios.c:48 + mov si, strict word 0004ch ; be 4c 00 ; 0xc3074 vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3077 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc307a vgabios.c:58 + mov ax, ds ; 8c d8 ; 0xc307d vgabios.c:2150 + mov es, dx ; 8e c2 ; 0xc307f vgabios.c:72 + mov word [es:bx], 05503h ; 26 c7 07 03 55 ; 0xc3081 + mov [es:bx+002h], ds ; 26 8c 5f 02 ; 0xc3086 + lea di, [bx+004h] ; 8d 7f 04 ; 0xc308a vgabios.c:2155 + mov cx, strict word 0001eh ; b9 1e 00 ; 0xc308d + mov si, strict word 00049h ; be 49 00 ; 0xc3090 + mov dx, strict word 00040h ; ba 40 00 ; 0xc3093 + jcxz 0309eh ; e3 06 ; 0xc3096 + push DS ; 1e ; 0xc3098 + mov ds, dx ; 8e da ; 0xc3099 + rep movsb ; f3 a4 ; 0xc309b + pop DS ; 1f ; 0xc309d + mov si, 00084h ; be 84 00 ; 0xc309e vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc30a1 + mov es, ax ; 8e c0 ; 0xc30a4 + mov al, byte [es:si] ; 26 8a 04 ; 0xc30a6 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc30a9 vgabios.c:48 + lea si, [bx+022h] ; 8d 77 22 ; 0xc30ab + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc30ae vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc30b1 + lea di, [bx+023h] ; 8d 7f 23 ; 0xc30b4 vgabios.c:2157 + mov cx, strict word 00002h ; b9 02 00 ; 0xc30b7 + mov si, 00085h ; be 85 00 ; 0xc30ba + mov dx, strict word 00040h ; ba 40 00 ; 0xc30bd + jcxz 030c8h ; e3 06 ; 0xc30c0 + push DS ; 1e ; 0xc30c2 + mov ds, dx ; 8e da ; 0xc30c3 + rep movsb ; f3 a4 ; 0xc30c5 + pop DS ; 1f ; 0xc30c7 + mov si, 0008ah ; be 8a 00 ; 0xc30c8 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc30cb + mov es, ax ; 8e c0 ; 0xc30ce + mov al, byte [es:si] ; 26 8a 04 ; 0xc30d0 + lea si, [bx+025h] ; 8d 77 25 ; 0xc30d3 vgabios.c:48 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc30d6 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc30d9 + lea si, [bx+026h] ; 8d 77 26 ; 0xc30dc vgabios.c:2160 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc30df vgabios.c:52 + lea si, [bx+027h] ; 8d 77 27 ; 0xc30e3 vgabios.c:2161 + mov word [es:si], strict word 00010h ; 26 c7 04 10 00 ; 0xc30e6 vgabios.c:62 + lea si, [bx+029h] ; 8d 77 29 ; 0xc30eb vgabios.c:2162 + mov byte [es:si], 008h ; 26 c6 04 08 ; 0xc30ee vgabios.c:52 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc30f2 vgabios.c:2163 + mov byte [es:si], 002h ; 26 c6 04 02 ; 0xc30f5 vgabios.c:52 + lea si, [bx+02bh] ; 8d 77 2b ; 0xc30f9 vgabios.c:2164 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc30fc vgabios.c:52 + lea si, [bx+02ch] ; 8d 77 2c ; 0xc3100 vgabios.c:2165 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc3103 vgabios.c:52 + lea si, [bx+02dh] ; 8d 77 2d ; 0xc3107 vgabios.c:2166 + mov byte [es:si], 021h ; 26 c6 04 21 ; 0xc310a vgabios.c:52 + lea si, [bx+031h] ; 8d 77 31 ; 0xc310e vgabios.c:2167 + mov byte [es:si], 003h ; 26 c6 04 03 ; 0xc3111 vgabios.c:52 + lea si, [bx+032h] ; 8d 77 32 ; 0xc3115 vgabios.c:2168 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc3118 vgabios.c:52 + mov si, 00089h ; be 89 00 ; 0xc311c vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc311f + mov es, ax ; 8e c0 ; 0xc3122 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3124 + mov dl, al ; 88 c2 ; 0xc3127 vgabios.c:2173 + and dl, 080h ; 80 e2 80 ; 0xc3129 + xor dh, dh ; 30 f6 ; 0xc312c + sar dx, 006h ; c1 fa 06 ; 0xc312e + and AL, strict byte 010h ; 24 10 ; 0xc3131 + xor ah, ah ; 30 e4 ; 0xc3133 + sar ax, 004h ; c1 f8 04 ; 0xc3135 + or ax, dx ; 09 d0 ; 0xc3138 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc313a vgabios.c:2174 + je short 03150h ; 74 11 ; 0xc313d + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc313f + je short 0314ch ; 74 08 ; 0xc3142 + test ax, ax ; 85 c0 ; 0xc3144 + jne short 03150h ; 75 08 ; 0xc3146 + mov AL, strict byte 001h ; b0 01 ; 0xc3148 vgabios.c:2175 + jmp short 03152h ; eb 06 ; 0xc314a + mov AL, strict byte 002h ; b0 02 ; 0xc314c vgabios.c:2176 + jmp short 03152h ; eb 02 ; 0xc314e + xor al, al ; 30 c0 ; 0xc3150 vgabios.c:2178 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc3152 vgabios.c:2180 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc3155 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc3158 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc315b vgabios.c:2183 + cmp AL, strict byte 00eh ; 3c 0e ; 0xc315e + jc short 03181h ; 72 1f ; 0xc3160 + cmp AL, strict byte 012h ; 3c 12 ; 0xc3162 + jnbe short 03181h ; 77 1b ; 0xc3164 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3166 vgabios.c:2184 + test ax, ax ; 85 c0 ; 0xc3169 + je short 031c3h ; 74 56 ; 0xc316b + mov si, ax ; 89 c6 ; 0xc316d vgabios.c:2185 + shr si, 002h ; c1 ee 02 ; 0xc316f + mov ax, 04000h ; b8 00 40 ; 0xc3172 + xor dx, dx ; 31 d2 ; 0xc3175 + div si ; f7 f6 ; 0xc3177 + lea si, [bx+029h] ; 8d 77 29 ; 0xc3179 + mov byte [es:si], al ; 26 88 04 ; 0xc317c vgabios.c:52 + jmp short 031c3h ; eb 42 ; 0xc317f vgabios.c:2186 + lea si, [bx+029h] ; 8d 77 29 ; 0xc3181 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3184 + cmp AL, strict byte 013h ; 3c 13 ; 0xc3187 + jne short 0319ch ; 75 11 ; 0xc3189 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc318b vgabios.c:52 + mov byte [es:si], 001h ; 26 c6 04 01 ; 0xc318e + lea si, [bx+027h] ; 8d 77 27 ; 0xc3192 vgabios.c:2188 + mov word [es:si], 00100h ; 26 c7 04 00 01 ; 0xc3195 vgabios.c:62 + jmp short 031c3h ; eb 27 ; 0xc319a vgabios.c:2189 + cmp AL, strict byte 004h ; 3c 04 ; 0xc319c + jc short 031c3h ; 72 23 ; 0xc319e + cmp AL, strict byte 006h ; 3c 06 ; 0xc31a0 + jnbe short 031c3h ; 77 1f ; 0xc31a2 + cmp word [bp-00ah], strict byte 00000h ; 83 7e f6 00 ; 0xc31a4 vgabios.c:2191 + je short 031b8h ; 74 0e ; 0xc31a8 + mov ax, 04000h ; b8 00 40 ; 0xc31aa vgabios.c:2192 + xor dx, dx ; 31 d2 ; 0xc31ad + div word [bp-00ah] ; f7 76 f6 ; 0xc31af + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc31b2 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc31b5 + lea si, [bx+027h] ; 8d 77 27 ; 0xc31b8 vgabios.c:2193 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc31bb vgabios.c:62 + mov word [es:si], strict word 00004h ; 26 c7 04 04 00 ; 0xc31be + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc31c3 vgabios.c:2195 + cmp AL, strict byte 006h ; 3c 06 ; 0xc31c6 + je short 031ceh ; 74 04 ; 0xc31c8 + cmp AL, strict byte 011h ; 3c 11 ; 0xc31ca + jne short 031d9h ; 75 0b ; 0xc31cc + lea si, [bx+027h] ; 8d 77 27 ; 0xc31ce vgabios.c:2196 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc31d1 vgabios.c:62 + mov word [es:si], strict word 00002h ; 26 c7 04 02 00 ; 0xc31d4 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc31d9 vgabios.c:2198 + cmp AL, strict byte 004h ; 3c 04 ; 0xc31dc + jc short 03235h ; 72 55 ; 0xc31de + cmp AL, strict byte 007h ; 3c 07 ; 0xc31e0 + je short 03235h ; 74 51 ; 0xc31e2 + lea si, [bx+02dh] ; 8d 77 2d ; 0xc31e4 vgabios.c:2199 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc31e7 vgabios.c:52 + mov byte [es:si], 001h ; 26 c6 04 01 ; 0xc31ea + mov si, 00084h ; be 84 00 ; 0xc31ee vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc31f1 + mov es, ax ; 8e c0 ; 0xc31f4 + mov al, byte [es:si] ; 26 8a 04 ; 0xc31f6 + xor ah, ah ; 30 e4 ; 0xc31f9 vgabios.c:48 + inc ax ; 40 ; 0xc31fb + mov si, 00085h ; be 85 00 ; 0xc31fc vgabios.c:47 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc31ff + xor dh, dh ; 30 f6 ; 0xc3202 vgabios.c:48 + imul dx ; f7 ea ; 0xc3204 + cmp ax, 0015eh ; 3d 5e 01 ; 0xc3206 vgabios.c:2201 + jc short 03219h ; 72 0e ; 0xc3209 + jbe short 03222h ; 76 15 ; 0xc320b + cmp ax, 001e0h ; 3d e0 01 ; 0xc320d + je short 0322ah ; 74 18 ; 0xc3210 + cmp ax, 00190h ; 3d 90 01 ; 0xc3212 + je short 03226h ; 74 0f ; 0xc3215 + jmp short 0322ah ; eb 11 ; 0xc3217 + cmp ax, 000c8h ; 3d c8 00 ; 0xc3219 + jne short 0322ah ; 75 0c ; 0xc321c + xor al, al ; 30 c0 ; 0xc321e vgabios.c:2202 + jmp short 0322ch ; eb 0a ; 0xc3220 + mov AL, strict byte 001h ; b0 01 ; 0xc3222 vgabios.c:2203 + jmp short 0322ch ; eb 06 ; 0xc3224 + mov AL, strict byte 002h ; b0 02 ; 0xc3226 vgabios.c:2204 + jmp short 0322ch ; eb 02 ; 0xc3228 + mov AL, strict byte 003h ; b0 03 ; 0xc322a vgabios.c:2206 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc322c vgabios.c:2208 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc322f vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc3232 + lea di, [bx+033h] ; 8d 7f 33 ; 0xc3235 vgabios.c:2211 + mov cx, strict word 0000dh ; b9 0d 00 ; 0xc3238 + xor ax, ax ; 31 c0 ; 0xc323b + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc323d + jcxz 03244h ; e3 02 ; 0xc3240 + rep stosb ; f3 aa ; 0xc3242 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc3244 vgabios.c:2212 + pop di ; 5f ; 0xc3247 + pop si ; 5e ; 0xc3248 + pop cx ; 59 ; 0xc3249 + pop bp ; 5d ; 0xc324a + retn ; c3 ; 0xc324b + ; disGetNextSymbol 0xc324c LB 0x12e6 -> off=0x0 cb=0000000000000023 uValue=00000000000c324c 'biosfn_read_video_state_size2' +biosfn_read_video_state_size2: ; 0xc324c LB 0x23 + push dx ; 52 ; 0xc324c vgabios.c:2215 + push bp ; 55 ; 0xc324d + mov bp, sp ; 89 e5 ; 0xc324e + mov dx, ax ; 89 c2 ; 0xc3250 + xor ax, ax ; 31 c0 ; 0xc3252 vgabios.c:2219 + test dl, 001h ; f6 c2 01 ; 0xc3254 vgabios.c:2220 + je short 0325ch ; 74 03 ; 0xc3257 + mov ax, strict word 00046h ; b8 46 00 ; 0xc3259 vgabios.c:2221 + test dl, 002h ; f6 c2 02 ; 0xc325c vgabios.c:2223 + je short 03264h ; 74 03 ; 0xc325f + add ax, strict word 0002ah ; 05 2a 00 ; 0xc3261 vgabios.c:2224 + test dl, 004h ; f6 c2 04 ; 0xc3264 vgabios.c:2226 + je short 0326ch ; 74 03 ; 0xc3267 + add ax, 00304h ; 05 04 03 ; 0xc3269 vgabios.c:2227 + pop bp ; 5d ; 0xc326c vgabios.c:2230 + pop dx ; 5a ; 0xc326d + retn ; c3 ; 0xc326e + ; disGetNextSymbol 0xc326f LB 0x12c3 -> off=0x0 cb=0000000000000018 uValue=00000000000c326f 'vga_get_video_state_size' +vga_get_video_state_size: ; 0xc326f LB 0x18 + push bp ; 55 ; 0xc326f vgabios.c:2232 + mov bp, sp ; 89 e5 ; 0xc3270 + push bx ; 53 ; 0xc3272 + mov bx, dx ; 89 d3 ; 0xc3273 + call 0324ch ; e8 d4 ff ; 0xc3275 vgabios.c:2235 + add ax, strict word 0003fh ; 05 3f 00 ; 0xc3278 + shr ax, 006h ; c1 e8 06 ; 0xc327b + mov word [ss:bx], ax ; 36 89 07 ; 0xc327e + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3281 vgabios.c:2236 + pop bx ; 5b ; 0xc3284 + pop bp ; 5d ; 0xc3285 + retn ; c3 ; 0xc3286 + ; disGetNextSymbol 0xc3287 LB 0x12ab -> off=0x0 cb=00000000000002d8 uValue=00000000000c3287 'biosfn_save_video_state' +biosfn_save_video_state: ; 0xc3287 LB 0x2d8 + push bp ; 55 ; 0xc3287 vgabios.c:2238 + mov bp, sp ; 89 e5 ; 0xc3288 + push cx ; 51 ; 0xc328a + push si ; 56 ; 0xc328b + push di ; 57 ; 0xc328c + push ax ; 50 ; 0xc328d + push ax ; 50 ; 0xc328e + push ax ; 50 ; 0xc328f + mov cx, dx ; 89 d1 ; 0xc3290 + mov si, strict word 00063h ; be 63 00 ; 0xc3292 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3295 + mov es, ax ; 8e c0 ; 0xc3298 + mov di, word [es:si] ; 26 8b 3c ; 0xc329a + mov si, di ; 89 fe ; 0xc329d vgabios.c:58 + test byte [bp-00ch], 001h ; f6 46 f4 01 ; 0xc329f vgabios.c:2243 + je short 0330bh ; 74 66 ; 0xc32a3 + mov dx, 003c4h ; ba c4 03 ; 0xc32a5 vgabios.c:2244 + in AL, DX ; ec ; 0xc32a8 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32a9 + mov es, cx ; 8e c1 ; 0xc32ab vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc32ad + inc bx ; 43 ; 0xc32b0 vgabios.c:2244 + mov dx, di ; 89 fa ; 0xc32b1 + in AL, DX ; ec ; 0xc32b3 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32b4 + mov byte [es:bx], al ; 26 88 07 ; 0xc32b6 vgabios.c:52 + inc bx ; 43 ; 0xc32b9 vgabios.c:2245 + mov dx, 003ceh ; ba ce 03 ; 0xc32ba + in AL, DX ; ec ; 0xc32bd + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32be + mov byte [es:bx], al ; 26 88 07 ; 0xc32c0 vgabios.c:52 + inc bx ; 43 ; 0xc32c3 vgabios.c:2246 + mov dx, 003dah ; ba da 03 ; 0xc32c4 + in AL, DX ; ec ; 0xc32c7 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32c8 + mov dx, 003c0h ; ba c0 03 ; 0xc32ca vgabios.c:2248 + in AL, DX ; ec ; 0xc32cd + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32ce + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc32d0 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc32d3 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc32d6 + inc bx ; 43 ; 0xc32d9 vgabios.c:2249 + mov dx, 003cah ; ba ca 03 ; 0xc32da + in AL, DX ; ec ; 0xc32dd + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32de + mov byte [es:bx], al ; 26 88 07 ; 0xc32e0 vgabios.c:52 + mov ax, strict word 00001h ; b8 01 00 ; 0xc32e3 vgabios.c:2252 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc32e6 + add bx, ax ; 01 c3 ; 0xc32e9 vgabios.c:2250 + jmp short 032f3h ; eb 06 ; 0xc32eb + cmp word [bp-008h], strict byte 00004h ; 83 7e f8 04 ; 0xc32ed + jnbe short 0330eh ; 77 1b ; 0xc32f1 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc32f3 vgabios.c:2253 + mov dx, 003c4h ; ba c4 03 ; 0xc32f6 + out DX, AL ; ee ; 0xc32f9 + mov dx, 003c5h ; ba c5 03 ; 0xc32fa vgabios.c:2254 + in AL, DX ; ec ; 0xc32fd + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32fe + mov es, cx ; 8e c1 ; 0xc3300 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3302 + inc bx ; 43 ; 0xc3305 vgabios.c:2254 + inc word [bp-008h] ; ff 46 f8 ; 0xc3306 vgabios.c:2255 + jmp short 032edh ; eb e2 ; 0xc3309 + jmp near 033bbh ; e9 ad 00 ; 0xc330b + xor al, al ; 30 c0 ; 0xc330e vgabios.c:2256 + mov dx, 003c4h ; ba c4 03 ; 0xc3310 + out DX, AL ; ee ; 0xc3313 + mov dx, 003c5h ; ba c5 03 ; 0xc3314 vgabios.c:2257 + in AL, DX ; ec ; 0xc3317 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3318 + mov es, cx ; 8e c1 ; 0xc331a vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc331c + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc331f vgabios.c:2259 + inc bx ; 43 ; 0xc3324 vgabios.c:2257 + jmp short 0332dh ; eb 06 ; 0xc3325 + cmp word [bp-008h], strict byte 00018h ; 83 7e f8 18 ; 0xc3327 + jnbe short 03344h ; 77 17 ; 0xc332b + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc332d vgabios.c:2260 + mov dx, si ; 89 f2 ; 0xc3330 + out DX, AL ; ee ; 0xc3332 + lea dx, [si+001h] ; 8d 54 01 ; 0xc3333 vgabios.c:2261 + in AL, DX ; ec ; 0xc3336 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3337 + mov es, cx ; 8e c1 ; 0xc3339 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc333b + inc bx ; 43 ; 0xc333e vgabios.c:2261 + inc word [bp-008h] ; ff 46 f8 ; 0xc333f vgabios.c:2262 + jmp short 03327h ; eb e3 ; 0xc3342 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc3344 vgabios.c:2264 + jmp short 03351h ; eb 06 ; 0xc3349 + cmp word [bp-008h], strict byte 00013h ; 83 7e f8 13 ; 0xc334b + jnbe short 03375h ; 77 24 ; 0xc334f + mov dx, 003dah ; ba da 03 ; 0xc3351 vgabios.c:2265 + in AL, DX ; ec ; 0xc3354 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3355 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3357 vgabios.c:2266 + and ax, strict word 00020h ; 25 20 00 ; 0xc335a + or ax, word [bp-008h] ; 0b 46 f8 ; 0xc335d + mov dx, 003c0h ; ba c0 03 ; 0xc3360 + out DX, AL ; ee ; 0xc3363 + mov dx, 003c1h ; ba c1 03 ; 0xc3364 vgabios.c:2267 + in AL, DX ; ec ; 0xc3367 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3368 + mov es, cx ; 8e c1 ; 0xc336a vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc336c + inc bx ; 43 ; 0xc336f vgabios.c:2267 + inc word [bp-008h] ; ff 46 f8 ; 0xc3370 vgabios.c:2268 + jmp short 0334bh ; eb d6 ; 0xc3373 + mov dx, 003dah ; ba da 03 ; 0xc3375 vgabios.c:2269 + in AL, DX ; ec ; 0xc3378 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3379 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc337b vgabios.c:2271 + jmp short 03388h ; eb 06 ; 0xc3380 + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc3382 + jnbe short 033a0h ; 77 18 ; 0xc3386 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3388 vgabios.c:2272 + mov dx, 003ceh ; ba ce 03 ; 0xc338b + out DX, AL ; ee ; 0xc338e + mov dx, 003cfh ; ba cf 03 ; 0xc338f vgabios.c:2273 + in AL, DX ; ec ; 0xc3392 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3393 + mov es, cx ; 8e c1 ; 0xc3395 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3397 + inc bx ; 43 ; 0xc339a vgabios.c:2273 + inc word [bp-008h] ; ff 46 f8 ; 0xc339b vgabios.c:2274 + jmp short 03382h ; eb e2 ; 0xc339e + mov es, cx ; 8e c1 ; 0xc33a0 vgabios.c:62 + mov word [es:bx], si ; 26 89 37 ; 0xc33a2 + inc bx ; 43 ; 0xc33a5 vgabios.c:2276 + inc bx ; 43 ; 0xc33a6 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc33a7 vgabios.c:52 + inc bx ; 43 ; 0xc33ab vgabios.c:2279 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc33ac vgabios.c:52 + inc bx ; 43 ; 0xc33b0 vgabios.c:2280 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc33b1 vgabios.c:52 + inc bx ; 43 ; 0xc33b5 vgabios.c:2281 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc33b6 vgabios.c:52 + inc bx ; 43 ; 0xc33ba vgabios.c:2282 + test byte [bp-00ch], 002h ; f6 46 f4 02 ; 0xc33bb vgabios.c:2284 + jne short 033c4h ; 75 03 ; 0xc33bf + jmp near 03503h ; e9 3f 01 ; 0xc33c1 + mov si, strict word 00049h ; be 49 00 ; 0xc33c4 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc33c7 + mov es, ax ; 8e c0 ; 0xc33ca + mov al, byte [es:si] ; 26 8a 04 ; 0xc33cc + mov es, cx ; 8e c1 ; 0xc33cf vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc33d1 + inc bx ; 43 ; 0xc33d4 vgabios.c:2285 + mov si, strict word 0004ah ; be 4a 00 ; 0xc33d5 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc33d8 + mov es, ax ; 8e c0 ; 0xc33db + mov ax, word [es:si] ; 26 8b 04 ; 0xc33dd + mov es, cx ; 8e c1 ; 0xc33e0 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc33e2 + inc bx ; 43 ; 0xc33e5 vgabios.c:2286 + inc bx ; 43 ; 0xc33e6 + mov si, strict word 0004ch ; be 4c 00 ; 0xc33e7 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc33ea + mov es, ax ; 8e c0 ; 0xc33ed + mov ax, word [es:si] ; 26 8b 04 ; 0xc33ef + mov es, cx ; 8e c1 ; 0xc33f2 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc33f4 + inc bx ; 43 ; 0xc33f7 vgabios.c:2287 + inc bx ; 43 ; 0xc33f8 + mov si, strict word 00063h ; be 63 00 ; 0xc33f9 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc33fc + mov es, ax ; 8e c0 ; 0xc33ff + mov ax, word [es:si] ; 26 8b 04 ; 0xc3401 + mov es, cx ; 8e c1 ; 0xc3404 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3406 + inc bx ; 43 ; 0xc3409 vgabios.c:2288 + inc bx ; 43 ; 0xc340a + mov si, 00084h ; be 84 00 ; 0xc340b vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc340e + mov es, ax ; 8e c0 ; 0xc3411 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3413 + mov es, cx ; 8e c1 ; 0xc3416 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3418 + inc bx ; 43 ; 0xc341b vgabios.c:2289 + mov si, 00085h ; be 85 00 ; 0xc341c vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc341f + mov es, ax ; 8e c0 ; 0xc3422 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3424 + mov es, cx ; 8e c1 ; 0xc3427 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3429 + inc bx ; 43 ; 0xc342c vgabios.c:2290 + inc bx ; 43 ; 0xc342d + mov si, 00087h ; be 87 00 ; 0xc342e vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3431 + mov es, ax ; 8e c0 ; 0xc3434 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3436 + mov es, cx ; 8e c1 ; 0xc3439 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc343b + inc bx ; 43 ; 0xc343e vgabios.c:2291 + mov si, 00088h ; be 88 00 ; 0xc343f vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3442 + mov es, ax ; 8e c0 ; 0xc3445 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3447 + mov es, cx ; 8e c1 ; 0xc344a vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc344c + inc bx ; 43 ; 0xc344f vgabios.c:2292 + mov si, 00089h ; be 89 00 ; 0xc3450 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3453 + mov es, ax ; 8e c0 ; 0xc3456 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3458 + mov es, cx ; 8e c1 ; 0xc345b vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc345d + inc bx ; 43 ; 0xc3460 vgabios.c:2293 + mov si, strict word 00060h ; be 60 00 ; 0xc3461 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3464 + mov es, ax ; 8e c0 ; 0xc3467 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3469 + mov es, cx ; 8e c1 ; 0xc346c vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc346e + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc3471 vgabios.c:2295 + inc bx ; 43 ; 0xc3476 vgabios.c:2294 + inc bx ; 43 ; 0xc3477 + jmp short 03480h ; eb 06 ; 0xc3478 + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc347a + jnc short 0349ch ; 73 1c ; 0xc347e + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc3480 vgabios.c:2296 + add si, si ; 01 f6 ; 0xc3483 + add si, strict byte 00050h ; 83 c6 50 ; 0xc3485 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3488 vgabios.c:57 + mov es, ax ; 8e c0 ; 0xc348b + mov ax, word [es:si] ; 26 8b 04 ; 0xc348d + mov es, cx ; 8e c1 ; 0xc3490 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3492 + inc bx ; 43 ; 0xc3495 vgabios.c:2297 + inc bx ; 43 ; 0xc3496 + inc word [bp-008h] ; ff 46 f8 ; 0xc3497 vgabios.c:2298 + jmp short 0347ah ; eb de ; 0xc349a + mov si, strict word 0004eh ; be 4e 00 ; 0xc349c vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc349f + mov es, ax ; 8e c0 ; 0xc34a2 + mov ax, word [es:si] ; 26 8b 04 ; 0xc34a4 + mov es, cx ; 8e c1 ; 0xc34a7 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc34a9 + inc bx ; 43 ; 0xc34ac vgabios.c:2299 + inc bx ; 43 ; 0xc34ad + mov si, strict word 00062h ; be 62 00 ; 0xc34ae vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc34b1 + mov es, ax ; 8e c0 ; 0xc34b4 + mov al, byte [es:si] ; 26 8a 04 ; 0xc34b6 + mov es, cx ; 8e c1 ; 0xc34b9 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc34bb + inc bx ; 43 ; 0xc34be vgabios.c:2300 + mov si, strict word 0007ch ; be 7c 00 ; 0xc34bf vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc34c2 + mov es, ax ; 8e c0 ; 0xc34c4 + mov ax, word [es:si] ; 26 8b 04 ; 0xc34c6 + mov es, cx ; 8e c1 ; 0xc34c9 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc34cb + inc bx ; 43 ; 0xc34ce vgabios.c:2302 + inc bx ; 43 ; 0xc34cf + mov si, strict word 0007eh ; be 7e 00 ; 0xc34d0 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc34d3 + mov es, ax ; 8e c0 ; 0xc34d5 + mov ax, word [es:si] ; 26 8b 04 ; 0xc34d7 + mov es, cx ; 8e c1 ; 0xc34da vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc34dc + inc bx ; 43 ; 0xc34df vgabios.c:2303 + inc bx ; 43 ; 0xc34e0 + mov si, 0010ch ; be 0c 01 ; 0xc34e1 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc34e4 + mov es, ax ; 8e c0 ; 0xc34e6 + mov ax, word [es:si] ; 26 8b 04 ; 0xc34e8 + mov es, cx ; 8e c1 ; 0xc34eb vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc34ed + inc bx ; 43 ; 0xc34f0 vgabios.c:2304 + inc bx ; 43 ; 0xc34f1 + mov si, 0010eh ; be 0e 01 ; 0xc34f2 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc34f5 + mov es, ax ; 8e c0 ; 0xc34f7 + mov ax, word [es:si] ; 26 8b 04 ; 0xc34f9 + mov es, cx ; 8e c1 ; 0xc34fc vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc34fe + inc bx ; 43 ; 0xc3501 vgabios.c:2305 + inc bx ; 43 ; 0xc3502 + test byte [bp-00ch], 004h ; f6 46 f4 04 ; 0xc3503 vgabios.c:2307 + je short 03555h ; 74 4c ; 0xc3507 + mov dx, 003c7h ; ba c7 03 ; 0xc3509 vgabios.c:2309 + in AL, DX ; ec ; 0xc350c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc350d + mov es, cx ; 8e c1 ; 0xc350f vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3511 + inc bx ; 43 ; 0xc3514 vgabios.c:2309 + mov dx, 003c8h ; ba c8 03 ; 0xc3515 + in AL, DX ; ec ; 0xc3518 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3519 + mov byte [es:bx], al ; 26 88 07 ; 0xc351b vgabios.c:52 + inc bx ; 43 ; 0xc351e vgabios.c:2310 + mov dx, 003c6h ; ba c6 03 ; 0xc351f + in AL, DX ; ec ; 0xc3522 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3523 + mov byte [es:bx], al ; 26 88 07 ; 0xc3525 vgabios.c:52 + inc bx ; 43 ; 0xc3528 vgabios.c:2311 + xor al, al ; 30 c0 ; 0xc3529 + mov dx, 003c8h ; ba c8 03 ; 0xc352b + out DX, AL ; ee ; 0xc352e + xor ah, ah ; 30 e4 ; 0xc352f vgabios.c:2314 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc3531 + jmp short 0353dh ; eb 07 ; 0xc3534 + cmp word [bp-008h], 00300h ; 81 7e f8 00 03 ; 0xc3536 + jnc short 0354eh ; 73 11 ; 0xc353b + mov dx, 003c9h ; ba c9 03 ; 0xc353d vgabios.c:2315 + in AL, DX ; ec ; 0xc3540 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3541 + mov es, cx ; 8e c1 ; 0xc3543 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3545 + inc bx ; 43 ; 0xc3548 vgabios.c:2315 + inc word [bp-008h] ; ff 46 f8 ; 0xc3549 vgabios.c:2316 + jmp short 03536h ; eb e8 ; 0xc354c + mov es, cx ; 8e c1 ; 0xc354e vgabios.c:52 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc3550 + inc bx ; 43 ; 0xc3554 vgabios.c:2317 + mov ax, bx ; 89 d8 ; 0xc3555 vgabios.c:2320 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc3557 + pop di ; 5f ; 0xc355a + pop si ; 5e ; 0xc355b + pop cx ; 59 ; 0xc355c + pop bp ; 5d ; 0xc355d + retn ; c3 ; 0xc355e + ; disGetNextSymbol 0xc355f LB 0xfd3 -> off=0x0 cb=00000000000002ba uValue=00000000000c355f 'biosfn_restore_video_state' +biosfn_restore_video_state: ; 0xc355f LB 0x2ba + push bp ; 55 ; 0xc355f vgabios.c:2322 + mov bp, sp ; 89 e5 ; 0xc3560 + push cx ; 51 ; 0xc3562 + push si ; 56 ; 0xc3563 + push di ; 57 ; 0xc3564 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc3565 + push ax ; 50 ; 0xc3568 + mov cx, dx ; 89 d1 ; 0xc3569 + test byte [bp-010h], 001h ; f6 46 f0 01 ; 0xc356b vgabios.c:2326 + je short 035e5h ; 74 74 ; 0xc356f + mov dx, 003dah ; ba da 03 ; 0xc3571 vgabios.c:2328 + in AL, DX ; ec ; 0xc3574 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3575 + lea si, [bx+040h] ; 8d 77 40 ; 0xc3577 vgabios.c:2330 + mov es, cx ; 8e c1 ; 0xc357a vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc357c + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc357f vgabios.c:58 + mov si, bx ; 89 de ; 0xc3582 vgabios.c:2331 + mov word [bp-008h], strict word 00001h ; c7 46 f8 01 00 ; 0xc3584 vgabios.c:2334 + add bx, strict byte 00005h ; 83 c3 05 ; 0xc3589 vgabios.c:2332 + jmp short 03594h ; eb 06 ; 0xc358c + cmp word [bp-008h], strict byte 00004h ; 83 7e f8 04 ; 0xc358e + jnbe short 035aah ; 77 16 ; 0xc3592 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3594 vgabios.c:2335 + mov dx, 003c4h ; ba c4 03 ; 0xc3597 + out DX, AL ; ee ; 0xc359a + mov es, cx ; 8e c1 ; 0xc359b vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc359d + mov dx, 003c5h ; ba c5 03 ; 0xc35a0 vgabios.c:48 + out DX, AL ; ee ; 0xc35a3 + inc bx ; 43 ; 0xc35a4 vgabios.c:2336 + inc word [bp-008h] ; ff 46 f8 ; 0xc35a5 vgabios.c:2337 + jmp short 0358eh ; eb e4 ; 0xc35a8 + xor al, al ; 30 c0 ; 0xc35aa vgabios.c:2338 + mov dx, 003c4h ; ba c4 03 ; 0xc35ac + out DX, AL ; ee ; 0xc35af + mov es, cx ; 8e c1 ; 0xc35b0 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc35b2 + mov dx, 003c5h ; ba c5 03 ; 0xc35b5 vgabios.c:48 + out DX, AL ; ee ; 0xc35b8 + inc bx ; 43 ; 0xc35b9 vgabios.c:2339 + mov dx, 003cch ; ba cc 03 ; 0xc35ba + in AL, DX ; ec ; 0xc35bd + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc35be + and AL, strict byte 0feh ; 24 fe ; 0xc35c0 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc35c2 + cmp word [bp-00ch], 003d4h ; 81 7e f4 d4 03 ; 0xc35c5 vgabios.c:2343 + jne short 035d0h ; 75 04 ; 0xc35ca + or byte [bp-00eh], 001h ; 80 4e f2 01 ; 0xc35cc vgabios.c:2344 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc35d0 vgabios.c:2345 + mov dx, 003c2h ; ba c2 03 ; 0xc35d3 + out DX, AL ; ee ; 0xc35d6 + mov ax, strict word 00011h ; b8 11 00 ; 0xc35d7 vgabios.c:2348 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc35da + out DX, ax ; ef ; 0xc35dd + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc35de vgabios.c:2350 + jmp short 035eeh ; eb 09 ; 0xc35e3 + jmp near 036a8h ; e9 c0 00 ; 0xc35e5 + cmp word [bp-008h], strict byte 00018h ; 83 7e f8 18 ; 0xc35e8 + jnbe short 03608h ; 77 1a ; 0xc35ec + cmp word [bp-008h], strict byte 00011h ; 83 7e f8 11 ; 0xc35ee vgabios.c:2351 + je short 03602h ; 74 0e ; 0xc35f2 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc35f4 vgabios.c:2352 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc35f7 + out DX, AL ; ee ; 0xc35fa + mov es, cx ; 8e c1 ; 0xc35fb vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc35fd + inc dx ; 42 ; 0xc3600 vgabios.c:48 + out DX, AL ; ee ; 0xc3601 + inc bx ; 43 ; 0xc3602 vgabios.c:2355 + inc word [bp-008h] ; ff 46 f8 ; 0xc3603 vgabios.c:2356 + jmp short 035e8h ; eb e0 ; 0xc3606 + mov AL, strict byte 011h ; b0 11 ; 0xc3608 vgabios.c:2358 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc360a + out DX, AL ; ee ; 0xc360d + lea di, [word bx-00007h] ; 8d bf f9 ff ; 0xc360e vgabios.c:2359 + mov es, cx ; 8e c1 ; 0xc3612 vgabios.c:47 + mov al, byte [es:di] ; 26 8a 05 ; 0xc3614 + inc dx ; 42 ; 0xc3617 vgabios.c:48 + out DX, AL ; ee ; 0xc3618 + lea di, [si+003h] ; 8d 7c 03 ; 0xc3619 vgabios.c:2362 + mov dl, byte [es:di] ; 26 8a 15 ; 0xc361c vgabios.c:47 + xor dh, dh ; 30 f6 ; 0xc361f vgabios.c:48 + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc3621 + mov dx, 003dah ; ba da 03 ; 0xc3624 vgabios.c:2363 + in AL, DX ; ec ; 0xc3627 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3628 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc362a vgabios.c:2364 + jmp short 03637h ; eb 06 ; 0xc362f + cmp word [bp-008h], strict byte 00013h ; 83 7e f8 13 ; 0xc3631 + jnbe short 03650h ; 77 19 ; 0xc3635 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3637 vgabios.c:2365 + and ax, strict word 00020h ; 25 20 00 ; 0xc363a + or ax, word [bp-008h] ; 0b 46 f8 ; 0xc363d + mov dx, 003c0h ; ba c0 03 ; 0xc3640 + out DX, AL ; ee ; 0xc3643 + mov es, cx ; 8e c1 ; 0xc3644 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3646 + out DX, AL ; ee ; 0xc3649 vgabios.c:48 + inc bx ; 43 ; 0xc364a vgabios.c:2366 + inc word [bp-008h] ; ff 46 f8 ; 0xc364b vgabios.c:2367 + jmp short 03631h ; eb e1 ; 0xc364e + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc3650 vgabios.c:2368 + mov dx, 003c0h ; ba c0 03 ; 0xc3653 + out DX, AL ; ee ; 0xc3656 + mov dx, 003dah ; ba da 03 ; 0xc3657 vgabios.c:2369 + in AL, DX ; ec ; 0xc365a + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc365b + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc365d vgabios.c:2371 + jmp short 0366ah ; eb 06 ; 0xc3662 + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc3664 + jnbe short 03680h ; 77 16 ; 0xc3668 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc366a vgabios.c:2372 + mov dx, 003ceh ; ba ce 03 ; 0xc366d + out DX, AL ; ee ; 0xc3670 + mov es, cx ; 8e c1 ; 0xc3671 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3673 + mov dx, 003cfh ; ba cf 03 ; 0xc3676 vgabios.c:48 + out DX, AL ; ee ; 0xc3679 + inc bx ; 43 ; 0xc367a vgabios.c:2373 + inc word [bp-008h] ; ff 46 f8 ; 0xc367b vgabios.c:2374 + jmp short 03664h ; eb e4 ; 0xc367e + add bx, strict byte 00006h ; 83 c3 06 ; 0xc3680 vgabios.c:2375 + mov es, cx ; 8e c1 ; 0xc3683 vgabios.c:47 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3685 + mov dx, 003c4h ; ba c4 03 ; 0xc3688 vgabios.c:48 + out DX, AL ; ee ; 0xc368b + inc si ; 46 ; 0xc368c vgabios.c:2378 + mov al, byte [es:si] ; 26 8a 04 ; 0xc368d vgabios.c:47 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc3690 vgabios.c:48 + out DX, AL ; ee ; 0xc3693 + inc si ; 46 ; 0xc3694 vgabios.c:2379 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3695 vgabios.c:47 + mov dx, 003ceh ; ba ce 03 ; 0xc3698 vgabios.c:48 + out DX, AL ; ee ; 0xc369b + inc si ; 46 ; 0xc369c vgabios.c:2380 + inc si ; 46 ; 0xc369d + mov al, byte [es:si] ; 26 8a 04 ; 0xc369e vgabios.c:47 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc36a1 vgabios.c:48 + add dx, strict byte 00006h ; 83 c2 06 ; 0xc36a4 + out DX, AL ; ee ; 0xc36a7 + test byte [bp-010h], 002h ; f6 46 f0 02 ; 0xc36a8 vgabios.c:2384 + jne short 036b1h ; 75 03 ; 0xc36ac + jmp near 037cch ; e9 1b 01 ; 0xc36ae + mov es, cx ; 8e c1 ; 0xc36b1 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc36b3 + mov si, strict word 00049h ; be 49 00 ; 0xc36b6 vgabios.c:52 + mov dx, strict word 00040h ; ba 40 00 ; 0xc36b9 + mov es, dx ; 8e c2 ; 0xc36bc + mov byte [es:si], al ; 26 88 04 ; 0xc36be + inc bx ; 43 ; 0xc36c1 vgabios.c:2385 + mov es, cx ; 8e c1 ; 0xc36c2 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc36c4 + mov si, strict word 0004ah ; be 4a 00 ; 0xc36c7 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc36ca + mov word [es:si], ax ; 26 89 04 ; 0xc36cc + inc bx ; 43 ; 0xc36cf vgabios.c:2386 + inc bx ; 43 ; 0xc36d0 + mov es, cx ; 8e c1 ; 0xc36d1 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc36d3 + mov si, strict word 0004ch ; be 4c 00 ; 0xc36d6 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc36d9 + mov word [es:si], ax ; 26 89 04 ; 0xc36db + inc bx ; 43 ; 0xc36de vgabios.c:2387 + inc bx ; 43 ; 0xc36df + mov es, cx ; 8e c1 ; 0xc36e0 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc36e2 + mov si, strict word 00063h ; be 63 00 ; 0xc36e5 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc36e8 + mov word [es:si], ax ; 26 89 04 ; 0xc36ea + inc bx ; 43 ; 0xc36ed vgabios.c:2388 + inc bx ; 43 ; 0xc36ee + mov es, cx ; 8e c1 ; 0xc36ef vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc36f1 + mov si, 00084h ; be 84 00 ; 0xc36f4 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc36f7 + mov byte [es:si], al ; 26 88 04 ; 0xc36f9 + inc bx ; 43 ; 0xc36fc vgabios.c:2389 + mov es, cx ; 8e c1 ; 0xc36fd vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc36ff + mov si, 00085h ; be 85 00 ; 0xc3702 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3705 + mov word [es:si], ax ; 26 89 04 ; 0xc3707 + inc bx ; 43 ; 0xc370a vgabios.c:2390 + inc bx ; 43 ; 0xc370b + mov es, cx ; 8e c1 ; 0xc370c vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc370e + mov si, 00087h ; be 87 00 ; 0xc3711 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3714 + mov byte [es:si], al ; 26 88 04 ; 0xc3716 + inc bx ; 43 ; 0xc3719 vgabios.c:2391 + mov es, cx ; 8e c1 ; 0xc371a vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc371c + mov si, 00088h ; be 88 00 ; 0xc371f vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3722 + mov byte [es:si], al ; 26 88 04 ; 0xc3724 + inc bx ; 43 ; 0xc3727 vgabios.c:2392 + mov es, cx ; 8e c1 ; 0xc3728 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc372a + mov si, 00089h ; be 89 00 ; 0xc372d vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3730 + mov byte [es:si], al ; 26 88 04 ; 0xc3732 + inc bx ; 43 ; 0xc3735 vgabios.c:2393 + mov es, cx ; 8e c1 ; 0xc3736 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3738 + mov si, strict word 00060h ; be 60 00 ; 0xc373b vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc373e + mov word [es:si], ax ; 26 89 04 ; 0xc3740 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc3743 vgabios.c:2395 + inc bx ; 43 ; 0xc3748 vgabios.c:2394 + inc bx ; 43 ; 0xc3749 + jmp short 03752h ; eb 06 ; 0xc374a + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc374c + jnc short 0376eh ; 73 1c ; 0xc3750 + mov es, cx ; 8e c1 ; 0xc3752 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3754 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc3757 vgabios.c:58 + add si, si ; 01 f6 ; 0xc375a + add si, strict byte 00050h ; 83 c6 50 ; 0xc375c + mov dx, strict word 00040h ; ba 40 00 ; 0xc375f vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3762 + mov word [es:si], ax ; 26 89 04 ; 0xc3764 + inc bx ; 43 ; 0xc3767 vgabios.c:2397 + inc bx ; 43 ; 0xc3768 + inc word [bp-008h] ; ff 46 f8 ; 0xc3769 vgabios.c:2398 + jmp short 0374ch ; eb de ; 0xc376c + mov es, cx ; 8e c1 ; 0xc376e vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3770 + mov si, strict word 0004eh ; be 4e 00 ; 0xc3773 vgabios.c:62 + mov dx, strict word 00040h ; ba 40 00 ; 0xc3776 + mov es, dx ; 8e c2 ; 0xc3779 + mov word [es:si], ax ; 26 89 04 ; 0xc377b + inc bx ; 43 ; 0xc377e vgabios.c:2399 + inc bx ; 43 ; 0xc377f + mov es, cx ; 8e c1 ; 0xc3780 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3782 + mov si, strict word 00062h ; be 62 00 ; 0xc3785 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3788 + mov byte [es:si], al ; 26 88 04 ; 0xc378a + inc bx ; 43 ; 0xc378d vgabios.c:2400 + mov es, cx ; 8e c1 ; 0xc378e vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3790 + mov si, strict word 0007ch ; be 7c 00 ; 0xc3793 vgabios.c:62 + xor dx, dx ; 31 d2 ; 0xc3796 + mov es, dx ; 8e c2 ; 0xc3798 + mov word [es:si], ax ; 26 89 04 ; 0xc379a + inc bx ; 43 ; 0xc379d vgabios.c:2402 + inc bx ; 43 ; 0xc379e + mov es, cx ; 8e c1 ; 0xc379f vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc37a1 + mov si, strict word 0007eh ; be 7e 00 ; 0xc37a4 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc37a7 + mov word [es:si], ax ; 26 89 04 ; 0xc37a9 + inc bx ; 43 ; 0xc37ac vgabios.c:2403 + inc bx ; 43 ; 0xc37ad + mov es, cx ; 8e c1 ; 0xc37ae vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc37b0 + mov si, 0010ch ; be 0c 01 ; 0xc37b3 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc37b6 + mov word [es:si], ax ; 26 89 04 ; 0xc37b8 + inc bx ; 43 ; 0xc37bb vgabios.c:2404 + inc bx ; 43 ; 0xc37bc + mov es, cx ; 8e c1 ; 0xc37bd vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc37bf + mov si, 0010eh ; be 0e 01 ; 0xc37c2 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc37c5 + mov word [es:si], ax ; 26 89 04 ; 0xc37c7 + inc bx ; 43 ; 0xc37ca vgabios.c:2405 + inc bx ; 43 ; 0xc37cb + test byte [bp-010h], 004h ; f6 46 f0 04 ; 0xc37cc vgabios.c:2407 + je short 0380fh ; 74 3d ; 0xc37d0 + inc bx ; 43 ; 0xc37d2 vgabios.c:2408 + mov es, cx ; 8e c1 ; 0xc37d3 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc37d5 + xor ah, ah ; 30 e4 ; 0xc37d8 vgabios.c:48 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc37da + inc bx ; 43 ; 0xc37dd vgabios.c:2409 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc37de vgabios.c:47 + mov dx, 003c6h ; ba c6 03 ; 0xc37e1 vgabios.c:48 + out DX, AL ; ee ; 0xc37e4 + inc bx ; 43 ; 0xc37e5 vgabios.c:2410 + xor al, al ; 30 c0 ; 0xc37e6 + mov dx, 003c8h ; ba c8 03 ; 0xc37e8 + out DX, AL ; ee ; 0xc37eb + mov word [bp-008h], ax ; 89 46 f8 ; 0xc37ec vgabios.c:2413 + jmp short 037f8h ; eb 07 ; 0xc37ef + cmp word [bp-008h], 00300h ; 81 7e f8 00 03 ; 0xc37f1 + jnc short 03807h ; 73 0f ; 0xc37f6 + mov es, cx ; 8e c1 ; 0xc37f8 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc37fa + mov dx, 003c9h ; ba c9 03 ; 0xc37fd vgabios.c:48 + out DX, AL ; ee ; 0xc3800 + inc bx ; 43 ; 0xc3801 vgabios.c:2414 + inc word [bp-008h] ; ff 46 f8 ; 0xc3802 vgabios.c:2415 + jmp short 037f1h ; eb ea ; 0xc3805 + inc bx ; 43 ; 0xc3807 vgabios.c:2416 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc3808 + mov dx, 003c8h ; ba c8 03 ; 0xc380b + out DX, AL ; ee ; 0xc380e + mov ax, bx ; 89 d8 ; 0xc380f vgabios.c:2420 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc3811 + pop di ; 5f ; 0xc3814 + pop si ; 5e ; 0xc3815 + pop cx ; 59 ; 0xc3816 + pop bp ; 5d ; 0xc3817 + retn ; c3 ; 0xc3818 + ; disGetNextSymbol 0xc3819 LB 0xd19 -> off=0x0 cb=0000000000000028 uValue=00000000000c3819 'find_vga_entry' +find_vga_entry: ; 0xc3819 LB 0x28 + push bx ; 53 ; 0xc3819 vgabios.c:2429 + push dx ; 52 ; 0xc381a + push bp ; 55 ; 0xc381b + mov bp, sp ; 89 e5 ; 0xc381c + mov dl, al ; 88 c2 ; 0xc381e + mov AH, strict byte 0ffh ; b4 ff ; 0xc3820 vgabios.c:2431 + xor al, al ; 30 c0 ; 0xc3822 vgabios.c:2432 + jmp short 0382ch ; eb 06 ; 0xc3824 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc3826 vgabios.c:2433 + cmp AL, strict byte 00fh ; 3c 0f ; 0xc3828 + jnbe short 0383bh ; 77 0f ; 0xc382a + mov bl, al ; 88 c3 ; 0xc382c + xor bh, bh ; 30 ff ; 0xc382e + sal bx, 003h ; c1 e3 03 ; 0xc3830 + cmp dl, byte [bx+047afh] ; 3a 97 af 47 ; 0xc3833 + jne short 03826h ; 75 ed ; 0xc3837 + mov ah, al ; 88 c4 ; 0xc3839 + mov al, ah ; 88 e0 ; 0xc383b vgabios.c:2438 + pop bp ; 5d ; 0xc383d + pop dx ; 5a ; 0xc383e + pop bx ; 5b ; 0xc383f + retn ; c3 ; 0xc3840 + ; disGetNextSymbol 0xc3841 LB 0xcf1 -> off=0x0 cb=000000000000000e uValue=00000000000c3841 'readx_byte' +readx_byte: ; 0xc3841 LB 0xe + push bx ; 53 ; 0xc3841 vgabios.c:2450 + push bp ; 55 ; 0xc3842 + mov bp, sp ; 89 e5 ; 0xc3843 + mov bx, dx ; 89 d3 ; 0xc3845 + mov es, ax ; 8e c0 ; 0xc3847 vgabios.c:2452 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3849 + pop bp ; 5d ; 0xc384c vgabios.c:2453 + pop bx ; 5b ; 0xc384d + retn ; c3 ; 0xc384e + ; disGetNextSymbol 0xc384f LB 0xce3 -> off=0x8a cb=000000000000049f uValue=00000000000c38d9 'int10_func' + db 056h, 04fh, 01ch, 01bh, 013h, 012h, 011h, 010h, 00eh, 00dh, 00ch, 00ah, 009h, 008h, 007h, 006h + db 005h, 004h, 003h, 002h, 001h, 000h, 071h, 03dh, 002h, 039h, 03fh, 039h, 054h, 039h, 064h, 039h + db 077h, 039h, 087h, 039h, 091h, 039h, 0d3h, 039h, 007h, 03ah, 018h, 03ah, 03eh, 03ah, 059h, 03ah + db 078h, 03ah, 095h, 03ah, 0abh, 03ah, 0b7h, 03ah, 0b0h, 03bh, 034h, 03ch, 061h, 03ch, 076h, 03ch + db 0b8h, 03ch, 043h, 03dh, 030h, 024h, 023h, 022h, 021h, 020h, 014h, 012h, 011h, 010h, 004h, 003h + db 002h, 001h, 000h, 071h, 03dh, 0d6h, 03ah, 0f4h, 03ah, 00fh, 03bh, 024h, 03bh, 02fh, 03bh, 0d6h + db 03ah, 0f4h, 03ah, 00fh, 03bh, 02fh, 03bh, 044h, 03bh, 04fh, 03bh, 06ah, 03bh, 079h, 03bh, 088h + db 03bh, 097h, 03bh, 00ah, 009h, 006h, 004h, 002h, 001h, 000h, 035h, 03dh, 0deh, 03ch, 0ech, 03ch + db 0fdh, 03ch, 00dh, 03dh, 022h, 03dh, 035h, 03dh, 035h, 03dh +int10_func: ; 0xc38d9 LB 0x49f + push bp ; 55 ; 0xc38d9 vgabios.c:2531 + mov bp, sp ; 89 e5 ; 0xc38da + push si ; 56 ; 0xc38dc + push di ; 57 ; 0xc38dd + push ax ; 50 ; 0xc38de + mov si, word [bp+004h] ; 8b 76 04 ; 0xc38df + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc38e2 vgabios.c:2536 + shr ax, 008h ; c1 e8 08 ; 0xc38e5 + cmp ax, strict word 00056h ; 3d 56 00 ; 0xc38e8 + jnbe short 03951h ; 77 64 ; 0xc38eb + push CS ; 0e ; 0xc38ed + pop ES ; 07 ; 0xc38ee + mov cx, strict word 00017h ; b9 17 00 ; 0xc38ef + mov di, 0384fh ; bf 4f 38 ; 0xc38f2 + repne scasb ; f2 ae ; 0xc38f5 + sal cx, 1 ; d1 e1 ; 0xc38f7 + mov di, cx ; 89 cf ; 0xc38f9 + mov ax, word [cs:di+03865h] ; 2e 8b 85 65 38 ; 0xc38fb + jmp ax ; ff e0 ; 0xc3900 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3902 vgabios.c:2539 + xor ah, ah ; 30 e4 ; 0xc3905 + call 0143fh ; e8 35 db ; 0xc3907 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc390a vgabios.c:2540 + and ax, strict word 0007fh ; 25 7f 00 ; 0xc390d + cmp ax, strict word 00007h ; 3d 07 00 ; 0xc3910 + je short 0392ah ; 74 15 ; 0xc3913 + cmp ax, strict word 00006h ; 3d 06 00 ; 0xc3915 + je short 03921h ; 74 07 ; 0xc3918 + cmp ax, strict word 00005h ; 3d 05 00 ; 0xc391a + jbe short 0392ah ; 76 0b ; 0xc391d + jmp short 03933h ; eb 12 ; 0xc391f + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3921 vgabios.c:2542 + xor al, al ; 30 c0 ; 0xc3924 + or AL, strict byte 03fh ; 0c 3f ; 0xc3926 + jmp short 0393ah ; eb 10 ; 0xc3928 vgabios.c:2543 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc392a vgabios.c:2551 + xor al, al ; 30 c0 ; 0xc392d + or AL, strict byte 030h ; 0c 30 ; 0xc392f + jmp short 0393ah ; eb 07 ; 0xc3931 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3933 vgabios.c:2554 + xor al, al ; 30 c0 ; 0xc3936 + or AL, strict byte 020h ; 0c 20 ; 0xc3938 + mov word [bp+012h], ax ; 89 46 12 ; 0xc393a + jmp short 03951h ; eb 12 ; 0xc393d vgabios.c:2556 + mov al, byte [bp+010h] ; 8a 46 10 ; 0xc393f vgabios.c:2558 + xor ah, ah ; 30 e4 ; 0xc3942 + mov dx, ax ; 89 c2 ; 0xc3944 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3946 + shr ax, 008h ; c1 e8 08 ; 0xc3949 + xor ah, ah ; 30 e4 ; 0xc394c + call 0118ch ; e8 3b d8 ; 0xc394e + jmp near 03d71h ; e9 1d 04 ; 0xc3951 vgabios.c:2559 + mov dx, word [bp+00eh] ; 8b 56 0e ; 0xc3954 vgabios.c:2561 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3957 + shr ax, 008h ; c1 e8 08 ; 0xc395a + xor ah, ah ; 30 e4 ; 0xc395d + call 01293h ; e8 31 d9 ; 0xc395f + jmp short 03951h ; eb ed ; 0xc3962 vgabios.c:2562 + lea bx, [bp+00eh] ; 8d 5e 0e ; 0xc3964 vgabios.c:2564 + lea dx, [bp+010h] ; 8d 56 10 ; 0xc3967 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc396a + shr ax, 008h ; c1 e8 08 ; 0xc396d + xor ah, ah ; 30 e4 ; 0xc3970 + call 00a96h ; e8 21 d1 ; 0xc3972 + jmp short 03951h ; eb da ; 0xc3975 vgabios.c:2565 + xor ax, ax ; 31 c0 ; 0xc3977 vgabios.c:2571 + mov word [bp+012h], ax ; 89 46 12 ; 0xc3979 + mov word [bp+00ch], ax ; 89 46 0c ; 0xc397c vgabios.c:2572 + mov word [bp+010h], ax ; 89 46 10 ; 0xc397f vgabios.c:2573 + mov word [bp+00eh], ax ; 89 46 0e ; 0xc3982 vgabios.c:2574 + jmp short 03951h ; eb ca ; 0xc3985 vgabios.c:2575 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3987 vgabios.c:2577 + xor ah, ah ; 30 e4 ; 0xc398a + call 01322h ; e8 93 d9 ; 0xc398c + jmp short 03951h ; eb c0 ; 0xc398f vgabios.c:2578 + mov ax, strict word 00001h ; b8 01 00 ; 0xc3991 vgabios.c:2580 + push ax ; 50 ; 0xc3994 + mov ax, 000ffh ; b8 ff 00 ; 0xc3995 + push ax ; 50 ; 0xc3998 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3999 + xor ah, ah ; 30 e4 ; 0xc399c + push ax ; 50 ; 0xc399e + mov ax, word [bp+00eh] ; 8b 46 0e ; 0xc399f + shr ax, 008h ; c1 e8 08 ; 0xc39a2 + xor ah, ah ; 30 e4 ; 0xc39a5 + push ax ; 50 ; 0xc39a7 + mov cl, byte [bp+010h] ; 8a 4e 10 ; 0xc39a8 + xor ch, ch ; 30 ed ; 0xc39ab + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc39ad + shr ax, 008h ; c1 e8 08 ; 0xc39b0 + xor ah, ah ; 30 e4 ; 0xc39b3 + mov bx, ax ; 89 c3 ; 0xc39b5 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc39b7 + shr ax, 008h ; c1 e8 08 ; 0xc39ba + xor ah, ah ; 30 e4 ; 0xc39bd + mov dx, ax ; 89 c2 ; 0xc39bf + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc39c1 + mov byte [bp-006h], al ; 88 46 fa ; 0xc39c4 + mov byte [bp-005h], ch ; 88 6e fb ; 0xc39c7 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc39ca + call 01c55h ; e8 85 e2 ; 0xc39cd + jmp near 03d71h ; e9 9e 03 ; 0xc39d0 vgabios.c:2581 + xor ax, ax ; 31 c0 ; 0xc39d3 vgabios.c:2583 + push ax ; 50 ; 0xc39d5 + mov ax, 000ffh ; b8 ff 00 ; 0xc39d6 + push ax ; 50 ; 0xc39d9 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc39da + xor ah, ah ; 30 e4 ; 0xc39dd + push ax ; 50 ; 0xc39df + mov ax, word [bp+00eh] ; 8b 46 0e ; 0xc39e0 + shr ax, 008h ; c1 e8 08 ; 0xc39e3 + xor ah, ah ; 30 e4 ; 0xc39e6 + push ax ; 50 ; 0xc39e8 + mov al, byte [bp+010h] ; 8a 46 10 ; 0xc39e9 + mov cx, ax ; 89 c1 ; 0xc39ec + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc39ee + shr ax, 008h ; c1 e8 08 ; 0xc39f1 + xor ah, ah ; 30 e4 ; 0xc39f4 + mov bx, ax ; 89 c3 ; 0xc39f6 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc39f8 + shr ax, 008h ; c1 e8 08 ; 0xc39fb + xor ah, ah ; 30 e4 ; 0xc39fe + mov dx, ax ; 89 c2 ; 0xc3a00 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3a02 + jmp short 039cdh ; eb c6 ; 0xc3a05 + lea dx, [bp+012h] ; 8d 56 12 ; 0xc3a07 vgabios.c:2586 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3a0a + shr ax, 008h ; c1 e8 08 ; 0xc3a0d + xor ah, ah ; 30 e4 ; 0xc3a10 + call 00dd6h ; e8 c1 d3 ; 0xc3a12 + jmp near 03d71h ; e9 59 03 ; 0xc3a15 vgabios.c:2587 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3a18 vgabios.c:2589 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3a1b + xor ah, ah ; 30 e4 ; 0xc3a1e + mov bx, ax ; 89 c3 ; 0xc3a20 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3a22 + shr ax, 008h ; c1 e8 08 ; 0xc3a25 + xor ah, ah ; 30 e4 ; 0xc3a28 + mov dx, ax ; 89 c2 ; 0xc3a2a + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3a2c + mov byte [bp-006h], al ; 88 46 fa ; 0xc3a2f + mov byte [bp-005h], bh ; 88 7e fb ; 0xc3a32 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc3a35 + call 0259bh ; e8 60 eb ; 0xc3a38 + jmp near 03d71h ; e9 33 03 ; 0xc3a3b vgabios.c:2590 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3a3e vgabios.c:2592 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3a41 + xor ah, ah ; 30 e4 ; 0xc3a44 + mov bx, ax ; 89 c3 ; 0xc3a46 + mov dx, word [bp+00ch] ; 8b 56 0c ; 0xc3a48 + shr dx, 008h ; c1 ea 08 ; 0xc3a4b + xor dh, dh ; 30 f6 ; 0xc3a4e + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3a50 + call 02722h ; e8 cc ec ; 0xc3a53 + jmp near 03d71h ; e9 18 03 ; 0xc3a56 vgabios.c:2593 + mov cx, word [bp+00eh] ; 8b 4e 0e ; 0xc3a59 vgabios.c:2595 + mov bx, word [bp+010h] ; 8b 5e 10 ; 0xc3a5c + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3a5f + xor ah, ah ; 30 e4 ; 0xc3a62 + mov dx, word [bp+00ch] ; 8b 56 0c ; 0xc3a64 + shr dx, 008h ; c1 ea 08 ; 0xc3a67 + xor dh, dh ; 30 f6 ; 0xc3a6a + mov si, dx ; 89 d6 ; 0xc3a6c + mov dx, ax ; 89 c2 ; 0xc3a6e + mov ax, si ; 89 f0 ; 0xc3a70 + call 028a3h ; e8 2e ee ; 0xc3a72 + jmp near 03d71h ; e9 f9 02 ; 0xc3a75 vgabios.c:2596 + lea cx, [bp+012h] ; 8d 4e 12 ; 0xc3a78 vgabios.c:2598 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3a7b + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3a7e + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3a81 + shr ax, 008h ; c1 e8 08 ; 0xc3a84 + mov word [bp-006h], ax ; 89 46 fa ; 0xc3a87 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc3a8a + xor ah, ah ; 30 e4 ; 0xc3a8d + call 00f99h ; e8 07 d5 ; 0xc3a8f + jmp near 03d71h ; e9 dc 02 ; 0xc3a92 vgabios.c:2599 + mov cx, strict word 00002h ; b9 02 00 ; 0xc3a95 vgabios.c:2607 + mov bl, byte [bp+00ch] ; 8a 5e 0c ; 0xc3a98 + xor bh, bh ; 30 ff ; 0xc3a9b + mov dx, 000ffh ; ba ff 00 ; 0xc3a9d + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3aa0 + xor ah, ah ; 30 e4 ; 0xc3aa3 + call 02a16h ; e8 6e ef ; 0xc3aa5 + jmp near 03d71h ; e9 c6 02 ; 0xc3aa8 vgabios.c:2608 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3aab vgabios.c:2611 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3aae + call 010ffh ; e8 4b d6 ; 0xc3ab1 + jmp near 03d71h ; e9 ba 02 ; 0xc3ab4 vgabios.c:2612 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3ab7 vgabios.c:2614 + xor ah, ah ; 30 e4 ; 0xc3aba + cmp ax, strict word 00030h ; 3d 30 00 ; 0xc3abc + jnbe short 03b2ch ; 77 6b ; 0xc3abf + push CS ; 0e ; 0xc3ac1 + pop ES ; 07 ; 0xc3ac2 + mov cx, strict word 00010h ; b9 10 00 ; 0xc3ac3 + mov di, 03893h ; bf 93 38 ; 0xc3ac6 + repne scasb ; f2 ae ; 0xc3ac9 + sal cx, 1 ; d1 e1 ; 0xc3acb + mov di, cx ; 89 cf ; 0xc3acd + mov ax, word [cs:di+038a2h] ; 2e 8b 85 a2 38 ; 0xc3acf + jmp ax ; ff e0 ; 0xc3ad4 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3ad6 vgabios.c:2618 + shr ax, 008h ; c1 e8 08 ; 0xc3ad9 + xor ah, ah ; 30 e4 ; 0xc3adc + push ax ; 50 ; 0xc3ade + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3adf + push ax ; 50 ; 0xc3ae2 + push word [bp+00eh] ; ff 76 0e ; 0xc3ae3 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3ae6 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3ae9 + mov bx, word [bp+008h] ; 8b 5e 08 ; 0xc3aec + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3aef + jmp short 03b0ah ; eb 16 ; 0xc3af2 + push strict byte 0000eh ; 6a 0e ; 0xc3af4 vgabios.c:2622 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3af6 + xor ah, ah ; 30 e4 ; 0xc3af9 + push ax ; 50 ; 0xc3afb + push strict byte 00000h ; 6a 00 ; 0xc3afc + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3afe + mov cx, 00100h ; b9 00 01 ; 0xc3b01 + mov bx, 05d6dh ; bb 6d 5d ; 0xc3b04 + mov dx, 0c000h ; ba 00 c0 ; 0xc3b07 + call 02e1ah ; e8 0d f3 ; 0xc3b0a + jmp short 03b2ch ; eb 1d ; 0xc3b0d + push strict byte 00008h ; 6a 08 ; 0xc3b0f vgabios.c:2626 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b11 + xor ah, ah ; 30 e4 ; 0xc3b14 + push ax ; 50 ; 0xc3b16 + push strict byte 00000h ; 6a 00 ; 0xc3b17 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3b19 + mov cx, 00100h ; b9 00 01 ; 0xc3b1c + mov bx, 0556dh ; bb 6d 55 ; 0xc3b1f + jmp short 03b07h ; eb e3 ; 0xc3b22 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b24 vgabios.c:2629 + xor ah, ah ; 30 e4 ; 0xc3b27 + call 02d82h ; e8 56 f2 ; 0xc3b29 + jmp near 03d71h ; e9 42 02 ; 0xc3b2c vgabios.c:2630 + push strict byte 00010h ; 6a 10 ; 0xc3b2f vgabios.c:2633 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b31 + xor ah, ah ; 30 e4 ; 0xc3b34 + push ax ; 50 ; 0xc3b36 + push strict byte 00000h ; 6a 00 ; 0xc3b37 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3b39 + mov cx, 00100h ; b9 00 01 ; 0xc3b3c + mov bx, 06b6dh ; bb 6d 6b ; 0xc3b3f + jmp short 03b07h ; eb c3 ; 0xc3b42 + mov dx, word [bp+008h] ; 8b 56 08 ; 0xc3b44 vgabios.c:2636 + mov ax, word [bp+016h] ; 8b 46 16 ; 0xc3b47 + call 02e99h ; e8 4c f3 ; 0xc3b4a + jmp short 03b2ch ; eb dd ; 0xc3b4d vgabios.c:2637 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3b4f vgabios.c:2639 + xor ah, ah ; 30 e4 ; 0xc3b52 + push ax ; 50 ; 0xc3b54 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b55 + mov bx, word [bp+010h] ; 8b 5e 10 ; 0xc3b58 + mov dx, word [bp+008h] ; 8b 56 08 ; 0xc3b5b + mov si, word [bp+016h] ; 8b 76 16 ; 0xc3b5e + mov cx, ax ; 89 c1 ; 0xc3b61 + mov ax, si ; 89 f0 ; 0xc3b63 + call 02efch ; e8 94 f3 ; 0xc3b65 + jmp short 03b2ch ; eb c2 ; 0xc3b68 vgabios.c:2640 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3b6a vgabios.c:2642 + xor ah, ah ; 30 e4 ; 0xc3b6d + mov dx, ax ; 89 c2 ; 0xc3b6f + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b71 + call 02f19h ; e8 a2 f3 ; 0xc3b74 + jmp short 03b2ch ; eb b3 ; 0xc3b77 vgabios.c:2643 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3b79 vgabios.c:2645 + xor ah, ah ; 30 e4 ; 0xc3b7c + mov dx, ax ; 89 c2 ; 0xc3b7e + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b80 + call 02f3bh ; e8 b5 f3 ; 0xc3b83 + jmp short 03b2ch ; eb a4 ; 0xc3b86 vgabios.c:2646 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3b88 vgabios.c:2648 + xor ah, ah ; 30 e4 ; 0xc3b8b + mov dx, ax ; 89 c2 ; 0xc3b8d + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b8f + call 02f5dh ; e8 c8 f3 ; 0xc3b92 + jmp short 03b2ch ; eb 95 ; 0xc3b95 vgabios.c:2649 + lea ax, [bp+00eh] ; 8d 46 0e ; 0xc3b97 vgabios.c:2651 + push ax ; 50 ; 0xc3b9a + lea cx, [bp+010h] ; 8d 4e 10 ; 0xc3b9b + lea bx, [bp+008h] ; 8d 5e 08 ; 0xc3b9e + lea dx, [bp+016h] ; 8d 56 16 ; 0xc3ba1 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3ba4 + shr ax, 008h ; c1 e8 08 ; 0xc3ba7 + call 00f16h ; e8 69 d3 ; 0xc3baa + jmp near 03d71h ; e9 c1 01 ; 0xc3bad vgabios.c:2659 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3bb0 vgabios.c:2661 + xor ah, ah ; 30 e4 ; 0xc3bb3 + cmp ax, strict word 00034h ; 3d 34 00 ; 0xc3bb5 + jc short 03bc9h ; 72 0f ; 0xc3bb8 + jbe short 03bf4h ; 76 38 ; 0xc3bba + cmp ax, strict word 00036h ; 3d 36 00 ; 0xc3bbc + je short 03c1ch ; 74 5b ; 0xc3bbf + cmp ax, strict word 00035h ; 3d 35 00 ; 0xc3bc1 + je short 03c1eh ; 74 58 ; 0xc3bc4 + jmp near 03d71h ; e9 a8 01 ; 0xc3bc6 + cmp ax, strict word 00030h ; 3d 30 00 ; 0xc3bc9 + je short 03bd8h ; 74 0a ; 0xc3bcc + cmp ax, strict word 00020h ; 3d 20 00 ; 0xc3bce + jne short 03c19h ; 75 46 ; 0xc3bd1 + call 02f7fh ; e8 a9 f3 ; 0xc3bd3 vgabios.c:2664 + jmp short 03c19h ; eb 41 ; 0xc3bd6 vgabios.c:2665 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3bd8 vgabios.c:2667 + xor ah, ah ; 30 e4 ; 0xc3bdb + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3bdd + jnbe short 03c19h ; 77 37 ; 0xc3be0 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3be2 vgabios.c:2668 + call 02f84h ; e8 9c f3 ; 0xc3be5 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3be8 vgabios.c:2669 + xor al, al ; 30 c0 ; 0xc3beb + or AL, strict byte 012h ; 0c 12 ; 0xc3bed + mov word [bp+012h], ax ; 89 46 12 ; 0xc3bef + jmp short 03c19h ; eb 25 ; 0xc3bf2 vgabios.c:2671 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3bf4 vgabios.c:2673 + xor ah, ah ; 30 e4 ; 0xc3bf7 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3bf9 + jnc short 03c16h ; 73 18 ; 0xc3bfc + mov ax, strict word 00040h ; b8 40 00 ; 0xc3bfe vgabios.c:45 + mov es, ax ; 8e c0 ; 0xc3c01 + mov si, 00087h ; be 87 00 ; 0xc3c03 + mov ah, byte [es:si] ; 26 8a 24 ; 0xc3c06 vgabios.c:47 + and ah, 0feh ; 80 e4 fe ; 0xc3c09 vgabios.c:48 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c0c + or al, ah ; 08 e0 ; 0xc3c0f + mov byte [es:si], al ; 26 88 04 ; 0xc3c11 vgabios.c:52 + jmp short 03be8h ; eb d2 ; 0xc3c14 + mov byte [bp+012h], ah ; 88 66 12 ; 0xc3c16 vgabios.c:2679 + jmp near 03d71h ; e9 55 01 ; 0xc3c19 vgabios.c:2680 + jmp short 03c2ch ; eb 0e ; 0xc3c1c + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c1e vgabios.c:2682 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3c21 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3c24 + call 02fb6h ; e8 8c f3 ; 0xc3c27 + jmp short 03be8h ; eb bc ; 0xc3c2a + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c2c vgabios.c:2686 + call 02fbbh ; e8 89 f3 ; 0xc3c2f + jmp short 03be8h ; eb b4 ; 0xc3c32 + push word [bp+008h] ; ff 76 08 ; 0xc3c34 vgabios.c:2696 + push word [bp+016h] ; ff 76 16 ; 0xc3c37 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3c3a + xor ah, ah ; 30 e4 ; 0xc3c3d + push ax ; 50 ; 0xc3c3f + mov ax, word [bp+00eh] ; 8b 46 0e ; 0xc3c40 + shr ax, 008h ; c1 e8 08 ; 0xc3c43 + xor ah, ah ; 30 e4 ; 0xc3c46 + push ax ; 50 ; 0xc3c48 + mov bl, byte [bp+00ch] ; 8a 5e 0c ; 0xc3c49 + xor bh, bh ; 30 ff ; 0xc3c4c + mov dx, word [bp+00ch] ; 8b 56 0c ; 0xc3c4e + shr dx, 008h ; c1 ea 08 ; 0xc3c51 + xor dh, dh ; 30 f6 ; 0xc3c54 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c56 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3c59 + call 02fc0h ; e8 61 f3 ; 0xc3c5c + jmp short 03c19h ; eb b8 ; 0xc3c5f vgabios.c:2697 + mov bx, si ; 89 f3 ; 0xc3c61 vgabios.c:2699 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3c63 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3c66 + call 0305dh ; e8 f1 f3 ; 0xc3c69 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3c6c vgabios.c:2700 + xor al, al ; 30 c0 ; 0xc3c6f + or AL, strict byte 01bh ; 0c 1b ; 0xc3c71 + jmp near 03befh ; e9 79 ff ; 0xc3c73 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3c76 vgabios.c:2703 + xor ah, ah ; 30 e4 ; 0xc3c79 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3c7b + je short 03ca2h ; 74 22 ; 0xc3c7e + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc3c80 + je short 03c94h ; 74 0f ; 0xc3c83 + test ax, ax ; 85 c0 ; 0xc3c85 + jne short 03caeh ; 75 25 ; 0xc3c87 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3c89 vgabios.c:2706 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3c8c + call 0326fh ; e8 dd f5 ; 0xc3c8f + jmp short 03caeh ; eb 1a ; 0xc3c92 vgabios.c:2707 + mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xc3c94 vgabios.c:2709 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3c97 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3c9a + call 03287h ; e8 e7 f5 ; 0xc3c9d + jmp short 03caeh ; eb 0c ; 0xc3ca0 vgabios.c:2710 + mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xc3ca2 vgabios.c:2712 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3ca5 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3ca8 + call 0355fh ; e8 b1 f8 ; 0xc3cab + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3cae vgabios.c:2719 + xor al, al ; 30 c0 ; 0xc3cb1 + or AL, strict byte 01ch ; 0c 1c ; 0xc3cb3 + jmp near 03befh ; e9 37 ff ; 0xc3cb5 + call 007bfh ; e8 04 cb ; 0xc3cb8 vgabios.c:2724 + test ax, ax ; 85 c0 ; 0xc3cbb + je short 03d33h ; 74 74 ; 0xc3cbd + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3cbf vgabios.c:2725 + xor ah, ah ; 30 e4 ; 0xc3cc2 + cmp ax, strict word 0000ah ; 3d 0a 00 ; 0xc3cc4 + jnbe short 03d35h ; 77 6c ; 0xc3cc7 + push CS ; 0e ; 0xc3cc9 + pop ES ; 07 ; 0xc3cca + mov cx, strict word 00008h ; b9 08 00 ; 0xc3ccb + mov di, 038c2h ; bf c2 38 ; 0xc3cce + repne scasb ; f2 ae ; 0xc3cd1 + sal cx, 1 ; d1 e1 ; 0xc3cd3 + mov di, cx ; 89 cf ; 0xc3cd5 + mov ax, word [cs:di+038c9h] ; 2e 8b 85 c9 38 ; 0xc3cd7 + jmp ax ; ff e0 ; 0xc3cdc + mov bx, si ; 89 f3 ; 0xc3cde vgabios.c:2728 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3ce0 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3ce3 + call 03f42h ; e8 59 02 ; 0xc3ce6 + jmp near 03d71h ; e9 85 00 ; 0xc3ce9 vgabios.c:2729 + mov cx, si ; 89 f1 ; 0xc3cec vgabios.c:2731 + mov bx, word [bp+016h] ; 8b 5e 16 ; 0xc3cee + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3cf1 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3cf4 + call 0406dh ; e8 73 03 ; 0xc3cf7 + jmp near 03d71h ; e9 74 00 ; 0xc3cfa vgabios.c:2732 + mov cx, si ; 89 f1 ; 0xc3cfd vgabios.c:2734 + mov bx, word [bp+016h] ; 8b 5e 16 ; 0xc3cff + mov dx, word [bp+00ch] ; 8b 56 0c ; 0xc3d02 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d05 + call 0410ch ; e8 01 04 ; 0xc3d08 + jmp short 03d71h ; eb 64 ; 0xc3d0b vgabios.c:2735 + lea ax, [bp+00ch] ; 8d 46 0c ; 0xc3d0d vgabios.c:2737 + push ax ; 50 ; 0xc3d10 + mov cx, word [bp+016h] ; 8b 4e 16 ; 0xc3d11 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3d14 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3d17 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d1a + call 042d5h ; e8 b5 05 ; 0xc3d1d + jmp short 03d71h ; eb 4f ; 0xc3d20 vgabios.c:2738 + lea cx, [bp+00eh] ; 8d 4e 0e ; 0xc3d22 vgabios.c:2740 + lea bx, [bp+010h] ; 8d 5e 10 ; 0xc3d25 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3d28 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d2b + call 04361h ; e8 30 06 ; 0xc3d2e + jmp short 03d71h ; eb 3e ; 0xc3d31 vgabios.c:2741 + jmp short 03d3ch ; eb 07 ; 0xc3d33 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d35 vgabios.c:2763 + jmp short 03d71h ; eb 35 ; 0xc3d3a vgabios.c:2766 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d3c vgabios.c:2768 + jmp short 03d71h ; eb 2e ; 0xc3d41 vgabios.c:2770 + call 007bfh ; e8 79 ca ; 0xc3d43 vgabios.c:2772 + test ax, ax ; 85 c0 ; 0xc3d46 + je short 03d6ch ; 74 22 ; 0xc3d48 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3d4a vgabios.c:2773 + xor ah, ah ; 30 e4 ; 0xc3d4d + cmp ax, strict word 00042h ; 3d 42 00 ; 0xc3d4f + jne short 03d65h ; 75 11 ; 0xc3d52 + lea cx, [bp+00eh] ; 8d 4e 0e ; 0xc3d54 vgabios.c:2776 + lea bx, [bp+010h] ; 8d 5e 10 ; 0xc3d57 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3d5a + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d5d + call 04440h ; e8 dd 06 ; 0xc3d60 + jmp short 03d71h ; eb 0c ; 0xc3d63 vgabios.c:2777 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d65 vgabios.c:2779 + jmp short 03d71h ; eb 05 ; 0xc3d6a vgabios.c:2782 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d6c vgabios.c:2784 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3d71 vgabios.c:2794 + pop di ; 5f ; 0xc3d74 + pop si ; 5e ; 0xc3d75 + pop bp ; 5d ; 0xc3d76 + retn ; c3 ; 0xc3d77 + ; disGetNextSymbol 0xc3d78 LB 0x7ba -> off=0x0 cb=000000000000001f uValue=00000000000c3d78 'dispi_set_xres' +dispi_set_xres: ; 0xc3d78 LB 0x1f + push bp ; 55 ; 0xc3d78 vbe.c:100 + mov bp, sp ; 89 e5 ; 0xc3d79 + push bx ; 53 ; 0xc3d7b + push dx ; 52 ; 0xc3d7c + mov bx, ax ; 89 c3 ; 0xc3d7d + mov ax, strict word 00001h ; b8 01 00 ; 0xc3d7f vbe.c:105 + mov dx, 001ceh ; ba ce 01 ; 0xc3d82 + call 00570h ; e8 e8 c7 ; 0xc3d85 + mov ax, bx ; 89 d8 ; 0xc3d88 vbe.c:106 + mov dx, 001cfh ; ba cf 01 ; 0xc3d8a + call 00570h ; e8 e0 c7 ; 0xc3d8d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3d90 vbe.c:107 + pop dx ; 5a ; 0xc3d93 + pop bx ; 5b ; 0xc3d94 + pop bp ; 5d ; 0xc3d95 + retn ; c3 ; 0xc3d96 + ; disGetNextSymbol 0xc3d97 LB 0x79b -> off=0x0 cb=000000000000001f uValue=00000000000c3d97 'dispi_set_yres' +dispi_set_yres: ; 0xc3d97 LB 0x1f + push bp ; 55 ; 0xc3d97 vbe.c:109 + mov bp, sp ; 89 e5 ; 0xc3d98 + push bx ; 53 ; 0xc3d9a + push dx ; 52 ; 0xc3d9b + mov bx, ax ; 89 c3 ; 0xc3d9c + mov ax, strict word 00002h ; b8 02 00 ; 0xc3d9e vbe.c:114 + mov dx, 001ceh ; ba ce 01 ; 0xc3da1 + call 00570h ; e8 c9 c7 ; 0xc3da4 + mov ax, bx ; 89 d8 ; 0xc3da7 vbe.c:115 + mov dx, 001cfh ; ba cf 01 ; 0xc3da9 + call 00570h ; e8 c1 c7 ; 0xc3dac + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3daf vbe.c:116 + pop dx ; 5a ; 0xc3db2 + pop bx ; 5b ; 0xc3db3 + pop bp ; 5d ; 0xc3db4 + retn ; c3 ; 0xc3db5 + ; disGetNextSymbol 0xc3db6 LB 0x77c -> off=0x0 cb=0000000000000019 uValue=00000000000c3db6 'dispi_get_yres' +dispi_get_yres: ; 0xc3db6 LB 0x19 + push bp ; 55 ; 0xc3db6 vbe.c:118 + mov bp, sp ; 89 e5 ; 0xc3db7 + push dx ; 52 ; 0xc3db9 + mov ax, strict word 00002h ; b8 02 00 ; 0xc3dba vbe.c:120 + mov dx, 001ceh ; ba ce 01 ; 0xc3dbd + call 00570h ; e8 ad c7 ; 0xc3dc0 + mov dx, 001cfh ; ba cf 01 ; 0xc3dc3 vbe.c:121 + call 00577h ; e8 ae c7 ; 0xc3dc6 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3dc9 vbe.c:122 + pop dx ; 5a ; 0xc3dcc + pop bp ; 5d ; 0xc3dcd + retn ; c3 ; 0xc3dce + ; disGetNextSymbol 0xc3dcf LB 0x763 -> off=0x0 cb=000000000000001f uValue=00000000000c3dcf 'dispi_set_bpp' +dispi_set_bpp: ; 0xc3dcf LB 0x1f + push bp ; 55 ; 0xc3dcf vbe.c:124 + mov bp, sp ; 89 e5 ; 0xc3dd0 + push bx ; 53 ; 0xc3dd2 + push dx ; 52 ; 0xc3dd3 + mov bx, ax ; 89 c3 ; 0xc3dd4 + mov ax, strict word 00003h ; b8 03 00 ; 0xc3dd6 vbe.c:129 + mov dx, 001ceh ; ba ce 01 ; 0xc3dd9 + call 00570h ; e8 91 c7 ; 0xc3ddc + mov ax, bx ; 89 d8 ; 0xc3ddf vbe.c:130 + mov dx, 001cfh ; ba cf 01 ; 0xc3de1 + call 00570h ; e8 89 c7 ; 0xc3de4 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3de7 vbe.c:131 + pop dx ; 5a ; 0xc3dea + pop bx ; 5b ; 0xc3deb + pop bp ; 5d ; 0xc3dec + retn ; c3 ; 0xc3ded + ; disGetNextSymbol 0xc3dee LB 0x744 -> off=0x0 cb=0000000000000019 uValue=00000000000c3dee 'dispi_get_bpp' +dispi_get_bpp: ; 0xc3dee LB 0x19 + push bp ; 55 ; 0xc3dee vbe.c:133 + mov bp, sp ; 89 e5 ; 0xc3def + push dx ; 52 ; 0xc3df1 + mov ax, strict word 00003h ; b8 03 00 ; 0xc3df2 vbe.c:135 + mov dx, 001ceh ; ba ce 01 ; 0xc3df5 + call 00570h ; e8 75 c7 ; 0xc3df8 + mov dx, 001cfh ; ba cf 01 ; 0xc3dfb vbe.c:136 + call 00577h ; e8 76 c7 ; 0xc3dfe + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e01 vbe.c:137 + pop dx ; 5a ; 0xc3e04 + pop bp ; 5d ; 0xc3e05 + retn ; c3 ; 0xc3e06 + ; disGetNextSymbol 0xc3e07 LB 0x72b -> off=0x0 cb=000000000000001f uValue=00000000000c3e07 'dispi_set_virt_width' +dispi_set_virt_width: ; 0xc3e07 LB 0x1f + push bp ; 55 ; 0xc3e07 vbe.c:139 + mov bp, sp ; 89 e5 ; 0xc3e08 + push bx ; 53 ; 0xc3e0a + push dx ; 52 ; 0xc3e0b + mov bx, ax ; 89 c3 ; 0xc3e0c + mov ax, strict word 00006h ; b8 06 00 ; 0xc3e0e vbe.c:144 + mov dx, 001ceh ; ba ce 01 ; 0xc3e11 + call 00570h ; e8 59 c7 ; 0xc3e14 + mov ax, bx ; 89 d8 ; 0xc3e17 vbe.c:145 + mov dx, 001cfh ; ba cf 01 ; 0xc3e19 + call 00570h ; e8 51 c7 ; 0xc3e1c + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3e1f vbe.c:146 + pop dx ; 5a ; 0xc3e22 + pop bx ; 5b ; 0xc3e23 + pop bp ; 5d ; 0xc3e24 + retn ; c3 ; 0xc3e25 + ; disGetNextSymbol 0xc3e26 LB 0x70c -> off=0x0 cb=0000000000000019 uValue=00000000000c3e26 'dispi_get_virt_width' +dispi_get_virt_width: ; 0xc3e26 LB 0x19 + push bp ; 55 ; 0xc3e26 vbe.c:148 + mov bp, sp ; 89 e5 ; 0xc3e27 + push dx ; 52 ; 0xc3e29 + mov ax, strict word 00006h ; b8 06 00 ; 0xc3e2a vbe.c:150 + mov dx, 001ceh ; ba ce 01 ; 0xc3e2d + call 00570h ; e8 3d c7 ; 0xc3e30 + mov dx, 001cfh ; ba cf 01 ; 0xc3e33 vbe.c:151 + call 00577h ; e8 3e c7 ; 0xc3e36 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e39 vbe.c:152 + pop dx ; 5a ; 0xc3e3c + pop bp ; 5d ; 0xc3e3d + retn ; c3 ; 0xc3e3e + ; disGetNextSymbol 0xc3e3f LB 0x6f3 -> off=0x0 cb=0000000000000019 uValue=00000000000c3e3f 'dispi_get_virt_height' +dispi_get_virt_height: ; 0xc3e3f LB 0x19 + push bp ; 55 ; 0xc3e3f vbe.c:154 + mov bp, sp ; 89 e5 ; 0xc3e40 + push dx ; 52 ; 0xc3e42 + mov ax, strict word 00007h ; b8 07 00 ; 0xc3e43 vbe.c:156 + mov dx, 001ceh ; ba ce 01 ; 0xc3e46 + call 00570h ; e8 24 c7 ; 0xc3e49 + mov dx, 001cfh ; ba cf 01 ; 0xc3e4c vbe.c:157 + call 00577h ; e8 25 c7 ; 0xc3e4f + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e52 vbe.c:158 + pop dx ; 5a ; 0xc3e55 + pop bp ; 5d ; 0xc3e56 + retn ; c3 ; 0xc3e57 + ; disGetNextSymbol 0xc3e58 LB 0x6da -> off=0x0 cb=0000000000000012 uValue=00000000000c3e58 'in_word' +in_word: ; 0xc3e58 LB 0x12 + push bp ; 55 ; 0xc3e58 vbe.c:160 + mov bp, sp ; 89 e5 ; 0xc3e59 + push bx ; 53 ; 0xc3e5b + mov bx, ax ; 89 c3 ; 0xc3e5c + mov ax, dx ; 89 d0 ; 0xc3e5e + mov dx, bx ; 89 da ; 0xc3e60 vbe.c:162 + out DX, ax ; ef ; 0xc3e62 + in ax, DX ; ed ; 0xc3e63 vbe.c:163 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e64 vbe.c:164 + pop bx ; 5b ; 0xc3e67 + pop bp ; 5d ; 0xc3e68 + retn ; c3 ; 0xc3e69 + ; disGetNextSymbol 0xc3e6a LB 0x6c8 -> off=0x0 cb=0000000000000014 uValue=00000000000c3e6a 'in_byte' +in_byte: ; 0xc3e6a LB 0x14 + push bp ; 55 ; 0xc3e6a vbe.c:166 + mov bp, sp ; 89 e5 ; 0xc3e6b + push bx ; 53 ; 0xc3e6d + mov bx, ax ; 89 c3 ; 0xc3e6e + mov ax, dx ; 89 d0 ; 0xc3e70 + mov dx, bx ; 89 da ; 0xc3e72 vbe.c:168 + out DX, ax ; ef ; 0xc3e74 + in AL, DX ; ec ; 0xc3e75 vbe.c:169 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3e76 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e78 vbe.c:170 + pop bx ; 5b ; 0xc3e7b + pop bp ; 5d ; 0xc3e7c + retn ; c3 ; 0xc3e7d + ; disGetNextSymbol 0xc3e7e LB 0x6b4 -> off=0x0 cb=0000000000000014 uValue=00000000000c3e7e 'dispi_get_id' +dispi_get_id: ; 0xc3e7e LB 0x14 + push bp ; 55 ; 0xc3e7e vbe.c:173 + mov bp, sp ; 89 e5 ; 0xc3e7f + push dx ; 52 ; 0xc3e81 + xor ax, ax ; 31 c0 ; 0xc3e82 vbe.c:175 + mov dx, 001ceh ; ba ce 01 ; 0xc3e84 + out DX, ax ; ef ; 0xc3e87 + mov dx, 001cfh ; ba cf 01 ; 0xc3e88 vbe.c:176 + in ax, DX ; ed ; 0xc3e8b + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e8c vbe.c:177 + pop dx ; 5a ; 0xc3e8f + pop bp ; 5d ; 0xc3e90 + retn ; c3 ; 0xc3e91 + ; disGetNextSymbol 0xc3e92 LB 0x6a0 -> off=0x0 cb=000000000000001a uValue=00000000000c3e92 'dispi_set_id' +dispi_set_id: ; 0xc3e92 LB 0x1a + push bp ; 55 ; 0xc3e92 vbe.c:179 + mov bp, sp ; 89 e5 ; 0xc3e93 + push bx ; 53 ; 0xc3e95 + push dx ; 52 ; 0xc3e96 + mov bx, ax ; 89 c3 ; 0xc3e97 + xor ax, ax ; 31 c0 ; 0xc3e99 vbe.c:181 + mov dx, 001ceh ; ba ce 01 ; 0xc3e9b + out DX, ax ; ef ; 0xc3e9e + mov ax, bx ; 89 d8 ; 0xc3e9f vbe.c:182 + mov dx, 001cfh ; ba cf 01 ; 0xc3ea1 + out DX, ax ; ef ; 0xc3ea4 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3ea5 vbe.c:183 + pop dx ; 5a ; 0xc3ea8 + pop bx ; 5b ; 0xc3ea9 + pop bp ; 5d ; 0xc3eaa + retn ; c3 ; 0xc3eab + ; disGetNextSymbol 0xc3eac LB 0x686 -> off=0x0 cb=000000000000002a uValue=00000000000c3eac 'vbe_init' +vbe_init: ; 0xc3eac LB 0x2a + push bp ; 55 ; 0xc3eac vbe.c:188 + mov bp, sp ; 89 e5 ; 0xc3ead + push bx ; 53 ; 0xc3eaf + mov ax, 0b0c0h ; b8 c0 b0 ; 0xc3eb0 vbe.c:190 + call 03e92h ; e8 dc ff ; 0xc3eb3 + call 03e7eh ; e8 c5 ff ; 0xc3eb6 vbe.c:191 + cmp ax, 0b0c0h ; 3d c0 b0 ; 0xc3eb9 + jne short 03ed0h ; 75 12 ; 0xc3ebc + mov bx, 000b9h ; bb b9 00 ; 0xc3ebe vbe.c:52 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3ec1 + mov es, ax ; 8e c0 ; 0xc3ec4 + mov byte [es:bx], 001h ; 26 c6 07 01 ; 0xc3ec6 + mov ax, 0b0c4h ; b8 c4 b0 ; 0xc3eca vbe.c:194 + call 03e92h ; e8 c2 ff ; 0xc3ecd + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3ed0 vbe.c:199 + pop bx ; 5b ; 0xc3ed3 + pop bp ; 5d ; 0xc3ed4 + retn ; c3 ; 0xc3ed5 + ; disGetNextSymbol 0xc3ed6 LB 0x65c -> off=0x0 cb=000000000000006c uValue=00000000000c3ed6 'mode_info_find_mode' +mode_info_find_mode: ; 0xc3ed6 LB 0x6c + push bp ; 55 ; 0xc3ed6 vbe.c:202 + mov bp, sp ; 89 e5 ; 0xc3ed7 + push bx ; 53 ; 0xc3ed9 + push cx ; 51 ; 0xc3eda + push si ; 56 ; 0xc3edb + push di ; 57 ; 0xc3edc + mov di, ax ; 89 c7 ; 0xc3edd + mov si, dx ; 89 d6 ; 0xc3edf + xor dx, dx ; 31 d2 ; 0xc3ee1 vbe.c:208 + mov ax, 003b6h ; b8 b6 03 ; 0xc3ee3 + call 03e58h ; e8 6f ff ; 0xc3ee6 + cmp ax, 077cch ; 3d cc 77 ; 0xc3ee9 vbe.c:209 + jne short 03f37h ; 75 49 ; 0xc3eec + test si, si ; 85 f6 ; 0xc3eee vbe.c:213 + je short 03f05h ; 74 13 ; 0xc3ef0 + mov ax, strict word 0000bh ; b8 0b 00 ; 0xc3ef2 vbe.c:220 + mov dx, 001ceh ; ba ce 01 ; 0xc3ef5 + call 00570h ; e8 75 c6 ; 0xc3ef8 + mov dx, 001cfh ; ba cf 01 ; 0xc3efb vbe.c:221 + call 00577h ; e8 76 c6 ; 0xc3efe + test ax, ax ; 85 c0 ; 0xc3f01 vbe.c:222 + je short 03f39h ; 74 34 ; 0xc3f03 + mov bx, strict word 00004h ; bb 04 00 ; 0xc3f05 vbe.c:226 + mov dx, bx ; 89 da ; 0xc3f08 vbe.c:232 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f0a + call 03e58h ; e8 48 ff ; 0xc3f0d + mov cx, ax ; 89 c1 ; 0xc3f10 + cmp cx, strict byte 0ffffh ; 83 f9 ff ; 0xc3f12 vbe.c:233 + je short 03f37h ; 74 20 ; 0xc3f15 + lea dx, [bx+002h] ; 8d 57 02 ; 0xc3f17 vbe.c:235 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f1a + call 03e58h ; e8 38 ff ; 0xc3f1d + lea dx, [bx+044h] ; 8d 57 44 ; 0xc3f20 + cmp cx, di ; 39 f9 ; 0xc3f23 vbe.c:237 + jne short 03f33h ; 75 0c ; 0xc3f25 + test si, si ; 85 f6 ; 0xc3f27 vbe.c:239 + jne short 03f2fh ; 75 04 ; 0xc3f29 + mov ax, bx ; 89 d8 ; 0xc3f2b vbe.c:240 + jmp short 03f39h ; eb 0a ; 0xc3f2d + test AL, strict byte 080h ; a8 80 ; 0xc3f2f vbe.c:241 + jne short 03f2bh ; 75 f8 ; 0xc3f31 + mov bx, dx ; 89 d3 ; 0xc3f33 vbe.c:244 + jmp short 03f0ah ; eb d3 ; 0xc3f35 vbe.c:249 + xor ax, ax ; 31 c0 ; 0xc3f37 vbe.c:252 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc3f39 vbe.c:253 + pop di ; 5f ; 0xc3f3c + pop si ; 5e ; 0xc3f3d + pop cx ; 59 ; 0xc3f3e + pop bx ; 5b ; 0xc3f3f + pop bp ; 5d ; 0xc3f40 + retn ; c3 ; 0xc3f41 + ; disGetNextSymbol 0xc3f42 LB 0x5f0 -> off=0x0 cb=000000000000012b uValue=00000000000c3f42 'vbe_biosfn_return_controller_information' +vbe_biosfn_return_controller_information: ; 0xc3f42 LB 0x12b + push bp ; 55 ; 0xc3f42 vbe.c:284 + mov bp, sp ; 89 e5 ; 0xc3f43 + push cx ; 51 ; 0xc3f45 + push si ; 56 ; 0xc3f46 + push di ; 57 ; 0xc3f47 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc3f48 + mov si, ax ; 89 c6 ; 0xc3f4b + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc3f4d + mov di, bx ; 89 df ; 0xc3f50 + mov word [bp-00ch], strict word 00022h ; c7 46 f4 22 00 ; 0xc3f52 vbe.c:289 + call 005b7h ; e8 5d c6 ; 0xc3f57 vbe.c:292 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc3f5a + mov bx, di ; 89 fb ; 0xc3f5d vbe.c:295 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3f5f + mov word [bp-008h], ax ; 89 46 f8 ; 0xc3f62 + xor dx, dx ; 31 d2 ; 0xc3f65 vbe.c:298 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f67 + call 03e58h ; e8 eb fe ; 0xc3f6a + cmp ax, 077cch ; 3d cc 77 ; 0xc3f6d vbe.c:299 + je short 03f7ch ; 74 0a ; 0xc3f70 + push SS ; 16 ; 0xc3f72 vbe.c:301 + pop ES ; 07 ; 0xc3f73 + mov word [es:si], 00100h ; 26 c7 04 00 01 ; 0xc3f74 + jmp near 04065h ; e9 e9 00 ; 0xc3f79 vbe.c:305 + mov cx, strict word 00004h ; b9 04 00 ; 0xc3f7c vbe.c:307 + mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xc3f7f vbe.c:314 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3f84 vbe.c:322 + cmp word [es:bx+002h], 03245h ; 26 81 7f 02 45 32 ; 0xc3f87 + jne short 03f96h ; 75 07 ; 0xc3f8d + cmp word [es:bx], 04256h ; 26 81 3f 56 42 ; 0xc3f8f + je short 03fa5h ; 74 0f ; 0xc3f94 + cmp word [es:bx+002h], 04153h ; 26 81 7f 02 53 41 ; 0xc3f96 + jne short 03faah ; 75 0c ; 0xc3f9c + cmp word [es:bx], 04556h ; 26 81 3f 56 45 ; 0xc3f9e + jne short 03faah ; 75 05 ; 0xc3fa3 + mov word [bp-00eh], strict word 00001h ; c7 46 f2 01 00 ; 0xc3fa5 vbe.c:324 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3faa vbe.c:332 + mov word [es:bx], 04556h ; 26 c7 07 56 45 ; 0xc3fad + mov word [es:bx+002h], 04153h ; 26 c7 47 02 53 41 ; 0xc3fb2 vbe.c:334 + mov word [es:bx+004h], 00200h ; 26 c7 47 04 00 02 ; 0xc3fb8 vbe.c:338 + mov word [es:bx+006h], 07e02h ; 26 c7 47 06 02 7e ; 0xc3fbe vbe.c:341 + mov [es:bx+008h], ds ; 26 8c 5f 08 ; 0xc3fc4 + mov word [es:bx+00ah], strict word 00001h ; 26 c7 47 0a 01 00 ; 0xc3fc8 vbe.c:344 + mov word [es:bx+00ch], strict word 00000h ; 26 c7 47 0c 00 00 ; 0xc3fce vbe.c:346 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3fd4 vbe.c:350 + mov word [es:bx+010h], ax ; 26 89 47 10 ; 0xc3fd7 + lea ax, [di+022h] ; 8d 45 22 ; 0xc3fdb vbe.c:351 + mov word [es:bx+00eh], ax ; 26 89 47 0e ; 0xc3fde + mov dx, strict word 0ffffh ; ba ff ff ; 0xc3fe2 vbe.c:354 + mov ax, 003b6h ; b8 b6 03 ; 0xc3fe5 + call 03e58h ; e8 6d fe ; 0xc3fe8 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3feb + mov word [es:bx+012h], ax ; 26 89 47 12 ; 0xc3fee + cmp word [bp-00eh], strict byte 00000h ; 83 7e f2 00 ; 0xc3ff2 vbe.c:356 + je short 0401ch ; 74 24 ; 0xc3ff6 + mov word [es:bx+014h], strict word 00003h ; 26 c7 47 14 03 00 ; 0xc3ff8 vbe.c:359 + mov word [es:bx+016h], 07e17h ; 26 c7 47 16 17 7e ; 0xc3ffe vbe.c:360 + mov [es:bx+018h], ds ; 26 8c 5f 18 ; 0xc4004 + mov word [es:bx+01ah], 07e34h ; 26 c7 47 1a 34 7e ; 0xc4008 vbe.c:361 + mov [es:bx+01ch], ds ; 26 8c 5f 1c ; 0xc400e + mov word [es:bx+01eh], 07e55h ; 26 c7 47 1e 55 7e ; 0xc4012 vbe.c:362 + mov [es:bx+020h], ds ; 26 8c 5f 20 ; 0xc4018 + mov dx, cx ; 89 ca ; 0xc401c vbe.c:369 + add dx, strict byte 0001bh ; 83 c2 1b ; 0xc401e + mov ax, 003b6h ; b8 b6 03 ; 0xc4021 + call 03e6ah ; e8 43 fe ; 0xc4024 + xor ah, ah ; 30 e4 ; 0xc4027 vbe.c:370 + cmp ax, word [bp-010h] ; 3b 46 f0 ; 0xc4029 + jnbe short 04045h ; 77 17 ; 0xc402c + mov dx, cx ; 89 ca ; 0xc402e vbe.c:372 + mov ax, 003b6h ; b8 b6 03 ; 0xc4030 + call 03e58h ; e8 22 fe ; 0xc4033 + mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xc4036 vbe.c:376 + add bx, di ; 01 fb ; 0xc4039 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc403b vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc403e + add word [bp-00ch], strict byte 00002h ; 83 46 f4 02 ; 0xc4041 vbe.c:378 + add cx, strict byte 00044h ; 83 c1 44 ; 0xc4045 vbe.c:380 + mov dx, cx ; 89 ca ; 0xc4048 vbe.c:381 + mov ax, 003b6h ; b8 b6 03 ; 0xc404a + call 03e58h ; e8 08 fe ; 0xc404d + cmp ax, strict word 0ffffh ; 3d ff ff ; 0xc4050 vbe.c:382 + jne short 0401ch ; 75 c7 ; 0xc4053 + add di, word [bp-00ch] ; 03 7e f4 ; 0xc4055 vbe.c:385 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc4058 vbe.c:62 + mov word [es:di], ax ; 26 89 05 ; 0xc405b + push SS ; 16 ; 0xc405e vbe.c:386 + pop ES ; 07 ; 0xc405f + mov word [es:si], strict word 0004fh ; 26 c7 04 4f 00 ; 0xc4060 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc4065 vbe.c:387 + pop di ; 5f ; 0xc4068 + pop si ; 5e ; 0xc4069 + pop cx ; 59 ; 0xc406a + pop bp ; 5d ; 0xc406b + retn ; c3 ; 0xc406c + ; disGetNextSymbol 0xc406d LB 0x4c5 -> off=0x0 cb=000000000000009f uValue=00000000000c406d 'vbe_biosfn_return_mode_information' +vbe_biosfn_return_mode_information: ; 0xc406d LB 0x9f + push bp ; 55 ; 0xc406d vbe.c:399 + mov bp, sp ; 89 e5 ; 0xc406e + push si ; 56 ; 0xc4070 + push di ; 57 ; 0xc4071 + push ax ; 50 ; 0xc4072 + push ax ; 50 ; 0xc4073 + mov ax, dx ; 89 d0 ; 0xc4074 + mov si, bx ; 89 de ; 0xc4076 + mov bx, cx ; 89 cb ; 0xc4078 + test dh, 040h ; f6 c6 40 ; 0xc407a vbe.c:410 + je short 04084h ; 74 05 ; 0xc407d + mov dx, strict word 00001h ; ba 01 00 ; 0xc407f + jmp short 04086h ; eb 02 ; 0xc4082 + xor dx, dx ; 31 d2 ; 0xc4084 + and ah, 001h ; 80 e4 01 ; 0xc4086 vbe.c:411 + call 03ed6h ; e8 4a fe ; 0xc4089 vbe.c:413 + mov word [bp-006h], ax ; 89 46 fa ; 0xc408c + test ax, ax ; 85 c0 ; 0xc408f vbe.c:415 + je short 040fah ; 74 67 ; 0xc4091 + mov cx, 00100h ; b9 00 01 ; 0xc4093 vbe.c:420 + xor ax, ax ; 31 c0 ; 0xc4096 + mov di, bx ; 89 df ; 0xc4098 + mov es, si ; 8e c6 ; 0xc409a + jcxz 040a0h ; e3 02 ; 0xc409c + rep stosb ; f3 aa ; 0xc409e + xor cx, cx ; 31 c9 ; 0xc40a0 vbe.c:421 + jmp short 040a9h ; eb 05 ; 0xc40a2 + cmp cx, strict byte 00042h ; 83 f9 42 ; 0xc40a4 + jnc short 040c2h ; 73 19 ; 0xc40a7 + mov dx, word [bp-006h] ; 8b 56 fa ; 0xc40a9 vbe.c:424 + inc dx ; 42 ; 0xc40ac + inc dx ; 42 ; 0xc40ad + add dx, cx ; 01 ca ; 0xc40ae + mov ax, 003b6h ; b8 b6 03 ; 0xc40b0 + call 03e6ah ; e8 b4 fd ; 0xc40b3 + mov di, bx ; 89 df ; 0xc40b6 vbe.c:425 + add di, cx ; 01 cf ; 0xc40b8 + mov es, si ; 8e c6 ; 0xc40ba vbe.c:52 + mov byte [es:di], al ; 26 88 05 ; 0xc40bc + inc cx ; 41 ; 0xc40bf vbe.c:426 + jmp short 040a4h ; eb e2 ; 0xc40c0 + lea di, [bx+002h] ; 8d 7f 02 ; 0xc40c2 vbe.c:427 + mov es, si ; 8e c6 ; 0xc40c5 vbe.c:47 + mov al, byte [es:di] ; 26 8a 05 ; 0xc40c7 + test AL, strict byte 001h ; a8 01 ; 0xc40ca vbe.c:428 + je short 040deh ; 74 10 ; 0xc40cc + lea di, [bx+00ch] ; 8d 7f 0c ; 0xc40ce vbe.c:429 + mov word [es:di], 00629h ; 26 c7 05 29 06 ; 0xc40d1 vbe.c:62 + lea di, [bx+00eh] ; 8d 7f 0e ; 0xc40d6 vbe.c:431 + mov word [es:di], 0c000h ; 26 c7 05 00 c0 ; 0xc40d9 vbe.c:62 + mov ax, strict word 0000bh ; b8 0b 00 ; 0xc40de vbe.c:434 + mov dx, 001ceh ; ba ce 01 ; 0xc40e1 + call 00570h ; e8 89 c4 ; 0xc40e4 + mov dx, 001cfh ; ba cf 01 ; 0xc40e7 vbe.c:435 + call 00577h ; e8 8a c4 ; 0xc40ea + add bx, strict byte 0002ah ; 83 c3 2a ; 0xc40ed + mov es, si ; 8e c6 ; 0xc40f0 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc40f2 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc40f5 vbe.c:437 + jmp short 040fdh ; eb 03 ; 0xc40f8 vbe.c:438 + mov ax, 00100h ; b8 00 01 ; 0xc40fa vbe.c:442 + push SS ; 16 ; 0xc40fd vbe.c:445 + pop ES ; 07 ; 0xc40fe + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc40ff + mov word [es:bx], ax ; 26 89 07 ; 0xc4102 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc4105 vbe.c:446 + pop di ; 5f ; 0xc4108 + pop si ; 5e ; 0xc4109 + pop bp ; 5d ; 0xc410a + retn ; c3 ; 0xc410b + ; disGetNextSymbol 0xc410c LB 0x426 -> off=0x0 cb=00000000000000e7 uValue=00000000000c410c 'vbe_biosfn_set_mode' +vbe_biosfn_set_mode: ; 0xc410c LB 0xe7 + push bp ; 55 ; 0xc410c vbe.c:458 + mov bp, sp ; 89 e5 ; 0xc410d + push si ; 56 ; 0xc410f + push di ; 57 ; 0xc4110 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc4111 + mov si, ax ; 89 c6 ; 0xc4114 + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc4116 + test byte [bp-009h], 040h ; f6 46 f7 40 ; 0xc4119 vbe.c:466 + je short 04124h ; 74 05 ; 0xc411d + mov ax, strict word 00001h ; b8 01 00 ; 0xc411f + jmp short 04126h ; eb 02 ; 0xc4122 + xor ax, ax ; 31 c0 ; 0xc4124 + mov dx, ax ; 89 c2 ; 0xc4126 + test ax, ax ; 85 c0 ; 0xc4128 vbe.c:467 + je short 0412fh ; 74 03 ; 0xc412a + mov ax, strict word 00040h ; b8 40 00 ; 0xc412c + mov byte [bp-008h], al ; 88 46 f8 ; 0xc412f + test byte [bp-009h], 080h ; f6 46 f7 80 ; 0xc4132 vbe.c:468 + je short 0413dh ; 74 05 ; 0xc4136 + mov ax, 00080h ; b8 80 00 ; 0xc4138 + jmp short 0413fh ; eb 02 ; 0xc413b + xor ax, ax ; 31 c0 ; 0xc413d + mov byte [bp-006h], al ; 88 46 fa ; 0xc413f + and byte [bp-009h], 001h ; 80 66 f7 01 ; 0xc4142 vbe.c:470 + cmp word [bp-00ah], 00100h ; 81 7e f6 00 01 ; 0xc4146 vbe.c:473 + jnc short 04160h ; 73 13 ; 0xc414b + xor ax, ax ; 31 c0 ; 0xc414d vbe.c:477 + call 005ddh ; e8 8b c4 ; 0xc414f + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc4152 vbe.c:481 + xor ah, ah ; 30 e4 ; 0xc4155 + call 0143fh ; e8 e5 d2 ; 0xc4157 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc415a vbe.c:482 + jmp near 041e7h ; e9 87 00 ; 0xc415d vbe.c:483 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc4160 vbe.c:486 + call 03ed6h ; e8 70 fd ; 0xc4163 + mov bx, ax ; 89 c3 ; 0xc4166 + test ax, ax ; 85 c0 ; 0xc4168 vbe.c:488 + je short 041e4h ; 74 78 ; 0xc416a + lea dx, [bx+014h] ; 8d 57 14 ; 0xc416c vbe.c:493 + mov ax, 003b6h ; b8 b6 03 ; 0xc416f + call 03e58h ; e8 e3 fc ; 0xc4172 + mov cx, ax ; 89 c1 ; 0xc4175 + lea dx, [bx+016h] ; 8d 57 16 ; 0xc4177 vbe.c:494 + mov ax, 003b6h ; b8 b6 03 ; 0xc417a + call 03e58h ; e8 d8 fc ; 0xc417d + mov di, ax ; 89 c7 ; 0xc4180 + lea dx, [bx+01bh] ; 8d 57 1b ; 0xc4182 vbe.c:495 + mov ax, 003b6h ; b8 b6 03 ; 0xc4185 + call 03e6ah ; e8 df fc ; 0xc4188 + mov bl, al ; 88 c3 ; 0xc418b + mov dl, al ; 88 c2 ; 0xc418d + xor ax, ax ; 31 c0 ; 0xc418f vbe.c:503 + call 005ddh ; e8 49 c4 ; 0xc4191 + cmp bl, 004h ; 80 fb 04 ; 0xc4194 vbe.c:505 + jne short 0419fh ; 75 06 ; 0xc4197 + mov ax, strict word 0006ah ; b8 6a 00 ; 0xc4199 vbe.c:507 + call 0143fh ; e8 a0 d2 ; 0xc419c + mov al, dl ; 88 d0 ; 0xc419f vbe.c:510 + xor ah, ah ; 30 e4 ; 0xc41a1 + call 03dcfh ; e8 29 fc ; 0xc41a3 + mov ax, cx ; 89 c8 ; 0xc41a6 vbe.c:511 + call 03d78h ; e8 cd fb ; 0xc41a8 + mov ax, di ; 89 f8 ; 0xc41ab vbe.c:512 + call 03d97h ; e8 e7 fb ; 0xc41ad + xor ax, ax ; 31 c0 ; 0xc41b0 vbe.c:513 + call 00603h ; e8 4e c4 ; 0xc41b2 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc41b5 vbe.c:514 + or dl, 001h ; 80 ca 01 ; 0xc41b8 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc41bb + xor ah, ah ; 30 e4 ; 0xc41be + or al, dl ; 08 d0 ; 0xc41c0 + call 005ddh ; e8 18 c4 ; 0xc41c2 + call 006d2h ; e8 0a c5 ; 0xc41c5 vbe.c:515 + mov bx, 000bah ; bb ba 00 ; 0xc41c8 vbe.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc41cb + mov es, ax ; 8e c0 ; 0xc41ce + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc41d0 + mov word [es:bx], ax ; 26 89 07 ; 0xc41d3 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc41d6 vbe.c:518 + or AL, strict byte 060h ; 0c 60 ; 0xc41d9 + mov bx, 00087h ; bb 87 00 ; 0xc41db vbe.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc41de + jmp near 0415ah ; e9 76 ff ; 0xc41e1 + mov ax, 00100h ; b8 00 01 ; 0xc41e4 vbe.c:527 + push SS ; 16 ; 0xc41e7 vbe.c:531 + pop ES ; 07 ; 0xc41e8 + mov word [es:si], ax ; 26 89 04 ; 0xc41e9 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc41ec vbe.c:532 + pop di ; 5f ; 0xc41ef + pop si ; 5e ; 0xc41f0 + pop bp ; 5d ; 0xc41f1 + retn ; c3 ; 0xc41f2 + ; disGetNextSymbol 0xc41f3 LB 0x33f -> off=0x0 cb=0000000000000008 uValue=00000000000c41f3 'vbe_biosfn_read_video_state_size' +vbe_biosfn_read_video_state_size: ; 0xc41f3 LB 0x8 + push bp ; 55 ; 0xc41f3 vbe.c:534 + mov bp, sp ; 89 e5 ; 0xc41f4 + mov ax, strict word 00012h ; b8 12 00 ; 0xc41f6 vbe.c:537 + pop bp ; 5d ; 0xc41f9 + retn ; c3 ; 0xc41fa + ; disGetNextSymbol 0xc41fb LB 0x337 -> off=0x0 cb=000000000000004b uValue=00000000000c41fb 'vbe_biosfn_save_video_state' +vbe_biosfn_save_video_state: ; 0xc41fb LB 0x4b + push bp ; 55 ; 0xc41fb vbe.c:539 + mov bp, sp ; 89 e5 ; 0xc41fc + push bx ; 53 ; 0xc41fe + push cx ; 51 ; 0xc41ff + push si ; 56 ; 0xc4200 + mov si, ax ; 89 c6 ; 0xc4201 + mov bx, dx ; 89 d3 ; 0xc4203 + mov ax, strict word 00004h ; b8 04 00 ; 0xc4205 vbe.c:543 + mov dx, 001ceh ; ba ce 01 ; 0xc4208 + out DX, ax ; ef ; 0xc420b + mov dx, 001cfh ; ba cf 01 ; 0xc420c vbe.c:544 + in ax, DX ; ed ; 0xc420f + mov es, si ; 8e c6 ; 0xc4210 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc4212 + inc bx ; 43 ; 0xc4215 vbe.c:546 + inc bx ; 43 ; 0xc4216 + test AL, strict byte 001h ; a8 01 ; 0xc4217 vbe.c:547 + je short 0423eh ; 74 23 ; 0xc4219 + mov cx, strict word 00001h ; b9 01 00 ; 0xc421b vbe.c:549 + jmp short 04225h ; eb 05 ; 0xc421e + cmp cx, strict byte 00009h ; 83 f9 09 ; 0xc4220 + jnbe short 0423eh ; 77 19 ; 0xc4223 + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc4225 vbe.c:550 + je short 0423bh ; 74 11 ; 0xc4228 + mov ax, cx ; 89 c8 ; 0xc422a vbe.c:551 + mov dx, 001ceh ; ba ce 01 ; 0xc422c + out DX, ax ; ef ; 0xc422f + mov dx, 001cfh ; ba cf 01 ; 0xc4230 vbe.c:552 + in ax, DX ; ed ; 0xc4233 + mov es, si ; 8e c6 ; 0xc4234 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc4236 + inc bx ; 43 ; 0xc4239 vbe.c:553 + inc bx ; 43 ; 0xc423a + inc cx ; 41 ; 0xc423b vbe.c:555 + jmp short 04220h ; eb e2 ; 0xc423c + lea sp, [bp-006h] ; 8d 66 fa ; 0xc423e vbe.c:556 + pop si ; 5e ; 0xc4241 + pop cx ; 59 ; 0xc4242 + pop bx ; 5b ; 0xc4243 + pop bp ; 5d ; 0xc4244 + retn ; c3 ; 0xc4245 + ; disGetNextSymbol 0xc4246 LB 0x2ec -> off=0x0 cb=000000000000008f uValue=00000000000c4246 'vbe_biosfn_restore_video_state' +vbe_biosfn_restore_video_state: ; 0xc4246 LB 0x8f + push bp ; 55 ; 0xc4246 vbe.c:559 + mov bp, sp ; 89 e5 ; 0xc4247 + push bx ; 53 ; 0xc4249 + push cx ; 51 ; 0xc424a + push si ; 56 ; 0xc424b + push ax ; 50 ; 0xc424c + mov cx, ax ; 89 c1 ; 0xc424d + mov bx, dx ; 89 d3 ; 0xc424f + mov es, ax ; 8e c0 ; 0xc4251 vbe.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc4253 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc4256 + inc bx ; 43 ; 0xc4259 vbe.c:564 + inc bx ; 43 ; 0xc425a + test byte [bp-008h], 001h ; f6 46 f8 01 ; 0xc425b vbe.c:566 + jne short 04271h ; 75 10 ; 0xc425f + mov ax, strict word 00004h ; b8 04 00 ; 0xc4261 vbe.c:567 + mov dx, 001ceh ; ba ce 01 ; 0xc4264 + out DX, ax ; ef ; 0xc4267 + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc4268 vbe.c:568 + mov dx, 001cfh ; ba cf 01 ; 0xc426b + out DX, ax ; ef ; 0xc426e + jmp short 042cdh ; eb 5c ; 0xc426f vbe.c:569 + mov ax, strict word 00001h ; b8 01 00 ; 0xc4271 vbe.c:570 + mov dx, 001ceh ; ba ce 01 ; 0xc4274 + out DX, ax ; ef ; 0xc4277 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc4278 vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc427b vbe.c:58 + out DX, ax ; ef ; 0xc427e + inc bx ; 43 ; 0xc427f vbe.c:572 + inc bx ; 43 ; 0xc4280 + mov ax, strict word 00002h ; b8 02 00 ; 0xc4281 + mov dx, 001ceh ; ba ce 01 ; 0xc4284 + out DX, ax ; ef ; 0xc4287 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc4288 vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc428b vbe.c:58 + out DX, ax ; ef ; 0xc428e + inc bx ; 43 ; 0xc428f vbe.c:575 + inc bx ; 43 ; 0xc4290 + mov ax, strict word 00003h ; b8 03 00 ; 0xc4291 + mov dx, 001ceh ; ba ce 01 ; 0xc4294 + out DX, ax ; ef ; 0xc4297 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc4298 vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc429b vbe.c:58 + out DX, ax ; ef ; 0xc429e + inc bx ; 43 ; 0xc429f vbe.c:578 + inc bx ; 43 ; 0xc42a0 + mov ax, strict word 00004h ; b8 04 00 ; 0xc42a1 + mov dx, 001ceh ; ba ce 01 ; 0xc42a4 + out DX, ax ; ef ; 0xc42a7 + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc42a8 vbe.c:580 + mov dx, 001cfh ; ba cf 01 ; 0xc42ab + out DX, ax ; ef ; 0xc42ae + mov si, strict word 00005h ; be 05 00 ; 0xc42af vbe.c:582 + jmp short 042b9h ; eb 05 ; 0xc42b2 + cmp si, strict byte 00009h ; 83 fe 09 ; 0xc42b4 + jnbe short 042cdh ; 77 14 ; 0xc42b7 + mov ax, si ; 89 f0 ; 0xc42b9 vbe.c:583 + mov dx, 001ceh ; ba ce 01 ; 0xc42bb + out DX, ax ; ef ; 0xc42be + mov es, cx ; 8e c1 ; 0xc42bf vbe.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc42c1 + mov dx, 001cfh ; ba cf 01 ; 0xc42c4 vbe.c:58 + out DX, ax ; ef ; 0xc42c7 + inc bx ; 43 ; 0xc42c8 vbe.c:585 + inc bx ; 43 ; 0xc42c9 + inc si ; 46 ; 0xc42ca vbe.c:586 + jmp short 042b4h ; eb e7 ; 0xc42cb + lea sp, [bp-006h] ; 8d 66 fa ; 0xc42cd vbe.c:588 + pop si ; 5e ; 0xc42d0 + pop cx ; 59 ; 0xc42d1 + pop bx ; 5b ; 0xc42d2 + pop bp ; 5d ; 0xc42d3 + retn ; c3 ; 0xc42d4 + ; disGetNextSymbol 0xc42d5 LB 0x25d -> off=0x0 cb=000000000000008c uValue=00000000000c42d5 'vbe_biosfn_save_restore_state' +vbe_biosfn_save_restore_state: ; 0xc42d5 LB 0x8c + push bp ; 55 ; 0xc42d5 vbe.c:604 + mov bp, sp ; 89 e5 ; 0xc42d6 + push si ; 56 ; 0xc42d8 + push di ; 57 ; 0xc42d9 + push ax ; 50 ; 0xc42da + mov si, ax ; 89 c6 ; 0xc42db + mov word [bp-006h], dx ; 89 56 fa ; 0xc42dd + mov ax, bx ; 89 d8 ; 0xc42e0 + mov bx, word [bp+004h] ; 8b 5e 04 ; 0xc42e2 + mov di, strict word 0004fh ; bf 4f 00 ; 0xc42e5 vbe.c:609 + xor ah, ah ; 30 e4 ; 0xc42e8 vbe.c:610 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc42ea + je short 04334h ; 74 45 ; 0xc42ed + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc42ef + je short 04318h ; 74 24 ; 0xc42f2 + test ax, ax ; 85 c0 ; 0xc42f4 + jne short 04350h ; 75 58 ; 0xc42f6 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc42f8 vbe.c:612 + call 0324ch ; e8 4e ef ; 0xc42fb + mov cx, ax ; 89 c1 ; 0xc42fe + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc4300 vbe.c:616 + je short 0430bh ; 74 05 ; 0xc4304 + call 041f3h ; e8 ea fe ; 0xc4306 vbe.c:617 + add ax, cx ; 01 c8 ; 0xc4309 + add ax, strict word 0003fh ; 05 3f 00 ; 0xc430b vbe.c:618 + shr ax, 006h ; c1 e8 06 ; 0xc430e + push SS ; 16 ; 0xc4311 + pop ES ; 07 ; 0xc4312 + mov word [es:bx], ax ; 26 89 07 ; 0xc4313 + jmp short 04353h ; eb 3b ; 0xc4316 vbe.c:619 + push SS ; 16 ; 0xc4318 vbe.c:621 + pop ES ; 07 ; 0xc4319 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc431a + mov dx, cx ; 89 ca ; 0xc431d vbe.c:622 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc431f + call 03287h ; e8 62 ef ; 0xc4322 + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc4325 vbe.c:626 + je short 04353h ; 74 28 ; 0xc4329 + mov dx, ax ; 89 c2 ; 0xc432b vbe.c:627 + mov ax, cx ; 89 c8 ; 0xc432d + call 041fbh ; e8 c9 fe ; 0xc432f + jmp short 04353h ; eb 1f ; 0xc4332 vbe.c:628 + push SS ; 16 ; 0xc4334 vbe.c:630 + pop ES ; 07 ; 0xc4335 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc4336 + mov dx, cx ; 89 ca ; 0xc4339 vbe.c:631 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc433b + call 0355fh ; e8 1e f2 ; 0xc433e + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc4341 vbe.c:635 + je short 04353h ; 74 0c ; 0xc4345 + mov dx, ax ; 89 c2 ; 0xc4347 vbe.c:636 + mov ax, cx ; 89 c8 ; 0xc4349 + call 04246h ; e8 f8 fe ; 0xc434b + jmp short 04353h ; eb 03 ; 0xc434e vbe.c:637 + mov di, 00100h ; bf 00 01 ; 0xc4350 vbe.c:640 + push SS ; 16 ; 0xc4353 vbe.c:643 + pop ES ; 07 ; 0xc4354 + mov word [es:si], di ; 26 89 3c ; 0xc4355 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc4358 vbe.c:644 + pop di ; 5f ; 0xc435b + pop si ; 5e ; 0xc435c + pop bp ; 5d ; 0xc435d + retn 00002h ; c2 02 00 ; 0xc435e + ; disGetNextSymbol 0xc4361 LB 0x1d1 -> off=0x0 cb=00000000000000df uValue=00000000000c4361 'vbe_biosfn_get_set_scanline_length' +vbe_biosfn_get_set_scanline_length: ; 0xc4361 LB 0xdf + push bp ; 55 ; 0xc4361 vbe.c:665 + mov bp, sp ; 89 e5 ; 0xc4362 + push si ; 56 ; 0xc4364 + push di ; 57 ; 0xc4365 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc4366 + push ax ; 50 ; 0xc4369 + mov di, dx ; 89 d7 ; 0xc436a + mov word [bp-008h], bx ; 89 5e f8 ; 0xc436c + mov si, cx ; 89 ce ; 0xc436f + call 03deeh ; e8 7a fa ; 0xc4371 vbe.c:674 + cmp AL, strict byte 00fh ; 3c 0f ; 0xc4374 vbe.c:675 + jne short 0437dh ; 75 05 ; 0xc4376 + mov bx, strict word 00010h ; bb 10 00 ; 0xc4378 + jmp short 04381h ; eb 04 ; 0xc437b + xor ah, ah ; 30 e4 ; 0xc437d + mov bx, ax ; 89 c3 ; 0xc437f + mov byte [bp-006h], bl ; 88 5e fa ; 0xc4381 + call 03e26h ; e8 9f fa ; 0xc4384 vbe.c:676 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc4387 + mov word [bp-00ch], strict word 0004fh ; c7 46 f4 4f 00 ; 0xc438a vbe.c:677 + push SS ; 16 ; 0xc438f vbe.c:678 + pop ES ; 07 ; 0xc4390 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc4391 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc4394 + mov cl, byte [es:di] ; 26 8a 0d ; 0xc4397 vbe.c:679 + cmp cl, 002h ; 80 f9 02 ; 0xc439a vbe.c:683 + je short 043abh ; 74 0c ; 0xc439d + cmp cl, 001h ; 80 f9 01 ; 0xc439f + je short 043d1h ; 74 2d ; 0xc43a2 + test cl, cl ; 84 c9 ; 0xc43a4 + je short 043cch ; 74 24 ; 0xc43a6 + jmp near 04429h ; e9 7e 00 ; 0xc43a8 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc43ab vbe.c:685 + cmp AL, strict byte 004h ; 3c 04 ; 0xc43ae + jne short 043b7h ; 75 05 ; 0xc43b0 + sal bx, 003h ; c1 e3 03 ; 0xc43b2 vbe.c:686 + jmp short 043cch ; eb 15 ; 0xc43b5 vbe.c:687 + xor ah, ah ; 30 e4 ; 0xc43b7 vbe.c:688 + cwd ; 99 ; 0xc43b9 + sal dx, 003h ; c1 e2 03 ; 0xc43ba + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc43bd + sar ax, 003h ; c1 f8 03 ; 0xc43bf + mov cx, ax ; 89 c1 ; 0xc43c2 + mov ax, bx ; 89 d8 ; 0xc43c4 + xor dx, dx ; 31 d2 ; 0xc43c6 + div cx ; f7 f1 ; 0xc43c8 + mov bx, ax ; 89 c3 ; 0xc43ca + mov ax, bx ; 89 d8 ; 0xc43cc vbe.c:691 + call 03e07h ; e8 36 fa ; 0xc43ce + call 03e26h ; e8 52 fa ; 0xc43d1 vbe.c:694 + mov cx, ax ; 89 c1 ; 0xc43d4 + push SS ; 16 ; 0xc43d6 vbe.c:695 + pop ES ; 07 ; 0xc43d7 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc43d8 + mov word [es:bx], ax ; 26 89 07 ; 0xc43db + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc43de vbe.c:696 + cmp AL, strict byte 004h ; 3c 04 ; 0xc43e1 + jne short 043ech ; 75 07 ; 0xc43e3 + mov bx, cx ; 89 cb ; 0xc43e5 vbe.c:697 + shr bx, 003h ; c1 eb 03 ; 0xc43e7 + jmp short 043ffh ; eb 13 ; 0xc43ea vbe.c:698 + xor ah, ah ; 30 e4 ; 0xc43ec vbe.c:699 + cwd ; 99 ; 0xc43ee + sal dx, 003h ; c1 e2 03 ; 0xc43ef + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc43f2 + sar ax, 003h ; c1 f8 03 ; 0xc43f4 + mov bx, ax ; 89 c3 ; 0xc43f7 + mov ax, cx ; 89 c8 ; 0xc43f9 + mul bx ; f7 e3 ; 0xc43fb + mov bx, ax ; 89 c3 ; 0xc43fd + add bx, strict byte 00003h ; 83 c3 03 ; 0xc43ff vbe.c:700 + and bl, 0fch ; 80 e3 fc ; 0xc4402 + push SS ; 16 ; 0xc4405 vbe.c:701 + pop ES ; 07 ; 0xc4406 + mov word [es:di], bx ; 26 89 1d ; 0xc4407 + call 03e3fh ; e8 32 fa ; 0xc440a vbe.c:702 + push SS ; 16 ; 0xc440d + pop ES ; 07 ; 0xc440e + mov word [es:si], ax ; 26 89 04 ; 0xc440f + call 03db6h ; e8 a1 f9 ; 0xc4412 vbe.c:703 + push SS ; 16 ; 0xc4415 + pop ES ; 07 ; 0xc4416 + cmp ax, word [es:si] ; 26 3b 04 ; 0xc4417 + jbe short 0442eh ; 76 12 ; 0xc441a + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc441c vbe.c:704 + call 03e07h ; e8 e5 f9 ; 0xc441f + mov word [bp-00ch], 00200h ; c7 46 f4 00 02 ; 0xc4422 vbe.c:705 + jmp short 0442eh ; eb 05 ; 0xc4427 vbe.c:707 + mov word [bp-00ch], 00100h ; c7 46 f4 00 01 ; 0xc4429 vbe.c:710 + push SS ; 16 ; 0xc442e vbe.c:713 + pop ES ; 07 ; 0xc442f + mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xc4430 + mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xc4433 + mov word [es:bx], ax ; 26 89 07 ; 0xc4436 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc4439 vbe.c:714 + pop di ; 5f ; 0xc443c + pop si ; 5e ; 0xc443d + pop bp ; 5d ; 0xc443e + retn ; c3 ; 0xc443f + ; disGetNextSymbol 0xc4440 LB 0xf2 -> off=0x0 cb=00000000000000f2 uValue=00000000000c4440 'private_biosfn_custom_mode' +private_biosfn_custom_mode: ; 0xc4440 LB 0xf2 + push bp ; 55 ; 0xc4440 vbe.c:740 + mov bp, sp ; 89 e5 ; 0xc4441 + push si ; 56 ; 0xc4443 + push di ; 57 ; 0xc4444 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc4445 + mov di, ax ; 89 c7 ; 0xc4448 + mov si, dx ; 89 d6 ; 0xc444a + mov dx, cx ; 89 ca ; 0xc444c + mov word [bp-00ah], strict word 0004fh ; c7 46 f6 4f 00 ; 0xc444e vbe.c:753 + push SS ; 16 ; 0xc4453 vbe.c:754 + pop ES ; 07 ; 0xc4454 + mov al, byte [es:si] ; 26 8a 04 ; 0xc4455 + test al, al ; 84 c0 ; 0xc4458 vbe.c:755 + jne short 0447eh ; 75 22 ; 0xc445a + push SS ; 16 ; 0xc445c vbe.c:757 + pop ES ; 07 ; 0xc445d + mov cx, word [es:bx] ; 26 8b 0f ; 0xc445e + mov bx, dx ; 89 d3 ; 0xc4461 vbe.c:758 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc4463 + mov ax, word [es:si] ; 26 8b 04 ; 0xc4466 vbe.c:759 + shr ax, 008h ; c1 e8 08 ; 0xc4469 + and ax, strict word 0007fh ; 25 7f 00 ; 0xc446c + mov byte [bp-008h], al ; 88 46 f8 ; 0xc446f + cmp AL, strict byte 008h ; 3c 08 ; 0xc4472 vbe.c:764 + je short 04486h ; 74 10 ; 0xc4474 + cmp AL, strict byte 010h ; 3c 10 ; 0xc4476 + je short 04486h ; 74 0c ; 0xc4478 + cmp AL, strict byte 020h ; 3c 20 ; 0xc447a + je short 04486h ; 74 08 ; 0xc447c + mov word [bp-00ah], 00100h ; c7 46 f6 00 01 ; 0xc447e vbe.c:765 + jmp near 04523h ; e9 9d 00 ; 0xc4483 vbe.c:766 + push SS ; 16 ; 0xc4486 vbe.c:770 + pop ES ; 07 ; 0xc4487 + test byte [es:si+001h], 080h ; 26 f6 44 01 80 ; 0xc4488 + je short 04494h ; 74 05 ; 0xc448d + mov ax, strict word 00040h ; b8 40 00 ; 0xc448f + jmp short 04496h ; eb 02 ; 0xc4492 + xor ax, ax ; 31 c0 ; 0xc4494 + mov byte [bp-006h], al ; 88 46 fa ; 0xc4496 + cmp cx, 00280h ; 81 f9 80 02 ; 0xc4499 vbe.c:773 + jnc short 044a4h ; 73 05 ; 0xc449d + mov cx, 00280h ; b9 80 02 ; 0xc449f vbe.c:774 + jmp short 044adh ; eb 09 ; 0xc44a2 vbe.c:775 + cmp cx, 00a00h ; 81 f9 00 0a ; 0xc44a4 + jbe short 044adh ; 76 03 ; 0xc44a8 + mov cx, 00a00h ; b9 00 0a ; 0xc44aa vbe.c:776 + cmp bx, 001e0h ; 81 fb e0 01 ; 0xc44ad vbe.c:777 + jnc short 044b8h ; 73 05 ; 0xc44b1 + mov bx, 001e0h ; bb e0 01 ; 0xc44b3 vbe.c:778 + jmp short 044c1h ; eb 09 ; 0xc44b6 vbe.c:779 + cmp bx, 00780h ; 81 fb 80 07 ; 0xc44b8 + jbe short 044c1h ; 76 03 ; 0xc44bc + mov bx, 00780h ; bb 80 07 ; 0xc44be vbe.c:780 + mov dx, strict word 0ffffh ; ba ff ff ; 0xc44c1 vbe.c:786 + mov ax, 003b6h ; b8 b6 03 ; 0xc44c4 + call 03e58h ; e8 8e f9 ; 0xc44c7 + mov si, ax ; 89 c6 ; 0xc44ca + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc44cc vbe.c:789 + xor ah, ah ; 30 e4 ; 0xc44cf + cwd ; 99 ; 0xc44d1 + sal dx, 003h ; c1 e2 03 ; 0xc44d2 + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc44d5 + sar ax, 003h ; c1 f8 03 ; 0xc44d7 + mov dx, ax ; 89 c2 ; 0xc44da + mov ax, cx ; 89 c8 ; 0xc44dc + mul dx ; f7 e2 ; 0xc44de + add ax, strict word 00003h ; 05 03 00 ; 0xc44e0 vbe.c:790 + and AL, strict byte 0fch ; 24 fc ; 0xc44e3 + mov dx, bx ; 89 da ; 0xc44e5 vbe.c:792 + mul dx ; f7 e2 ; 0xc44e7 + cmp dx, si ; 39 f2 ; 0xc44e9 vbe.c:794 + jnbe short 044f3h ; 77 06 ; 0xc44eb + jne short 044fah ; 75 0b ; 0xc44ed + test ax, ax ; 85 c0 ; 0xc44ef + jbe short 044fah ; 76 07 ; 0xc44f1 + mov word [bp-00ah], 00200h ; c7 46 f6 00 02 ; 0xc44f3 vbe.c:796 + jmp short 04523h ; eb 29 ; 0xc44f8 vbe.c:797 + xor ax, ax ; 31 c0 ; 0xc44fa vbe.c:801 + call 005ddh ; e8 de c0 ; 0xc44fc + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc44ff vbe.c:802 + xor ah, ah ; 30 e4 ; 0xc4502 + call 03dcfh ; e8 c8 f8 ; 0xc4504 + mov ax, cx ; 89 c8 ; 0xc4507 vbe.c:803 + call 03d78h ; e8 6c f8 ; 0xc4509 + mov ax, bx ; 89 d8 ; 0xc450c vbe.c:804 + call 03d97h ; e8 86 f8 ; 0xc450e + xor ax, ax ; 31 c0 ; 0xc4511 vbe.c:805 + call 00603h ; e8 ed c0 ; 0xc4513 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc4516 vbe.c:806 + or AL, strict byte 001h ; 0c 01 ; 0xc4519 + xor ah, ah ; 30 e4 ; 0xc451b + call 005ddh ; e8 bd c0 ; 0xc451d + call 006d2h ; e8 af c1 ; 0xc4520 vbe.c:807 + push SS ; 16 ; 0xc4523 vbe.c:815 + pop ES ; 07 ; 0xc4524 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc4525 + mov word [es:di], ax ; 26 89 05 ; 0xc4528 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc452b vbe.c:816 + pop di ; 5f ; 0xc452e + pop si ; 5e ; 0xc452f + pop bp ; 5d ; 0xc4530 + retn ; c3 ; 0xc4531 + + ; Padding 0x10e bytes at 0xc4532 + times 270 db 0 + +section VBE32 progbits vstart=0x4640 align=1 ; size=0x115 class=CODE group=AUTO + ; disGetNextSymbol 0xc4640 LB 0x115 -> off=0x0 cb=0000000000000114 uValue=00000000000c0000 'vesa_pm_start' +vesa_pm_start: ; 0xc4640 LB 0x114 + sbb byte [bx+si], al ; 18 00 ; 0xc4640 + dec di ; 4f ; 0xc4642 + add byte [bx+si], dl ; 00 10 ; 0xc4643 + add word [bx+si], cx ; 01 08 ; 0xc4645 + add dh, cl ; 00 ce ; 0xc4647 + add di, cx ; 01 cf ; 0xc4649 + add di, cx ; 01 cf ; 0xc464b + add ax, dx ; 01 d0 ; 0xc464d + add word [bp-048fdh], si ; 01 b6 03 b7 ; 0xc464f + db 003h, 0ffh + ; add di, di ; 03 ff ; 0xc4653 + db 0ffh + db 0ffh + jmp word [bp-07dh] ; ff 66 83 ; 0xc4657 + sti ; fb ; 0xc465a + add byte [si+005h], dh ; 00 74 05 ; 0xc465b + mov eax, strict dword 066c30100h ; 66 b8 00 01 c3 66 ; 0xc465e vberom.asm:825 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc4664 + push edx ; 66 52 ; 0xc4666 vberom.asm:829 + push eax ; 66 50 ; 0xc4668 vberom.asm:830 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc466a vberom.asm:831 + add ax, 06600h ; 05 00 66 ; 0xc4670 + out DX, ax ; ef ; 0xc4673 + pop eax ; 66 58 ; 0xc4674 vberom.asm:834 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc4676 vberom.asm:835 + in eax, DX ; 66 ed ; 0xc467c vberom.asm:837 + pop edx ; 66 5a ; 0xc467e vberom.asm:838 + db 066h, 03bh, 0d0h + ; cmp edx, eax ; 66 3b d0 ; 0xc4680 vberom.asm:839 + jne short 0468ah ; 75 05 ; 0xc4683 vberom.asm:840 + mov eax, strict dword 066c3004fh ; 66 b8 4f 00 c3 66 ; 0xc4685 vberom.asm:841 + mov ax, 0014fh ; b8 4f 01 ; 0xc468b + retn ; c3 ; 0xc468e vberom.asm:845 + cmp bl, 080h ; 80 fb 80 ; 0xc468f vberom.asm:847 + je short 0469eh ; 74 0a ; 0xc4692 vberom.asm:848 + cmp bl, 000h ; 80 fb 00 ; 0xc4694 vberom.asm:849 + je short 046aeh ; 74 15 ; 0xc4697 vberom.asm:850 + mov eax, strict dword 052c30100h ; 66 b8 00 01 c3 52 ; 0xc4699 vberom.asm:851 + mov edx, strict dword 0a8ec03dah ; 66 ba da 03 ec a8 ; 0xc469f vberom.asm:855 + or byte [di-005h], dh ; 08 75 fb ; 0xc46a5 + in AL, DX ; ec ; 0xc46a8 vberom.asm:861 + test AL, strict byte 008h ; a8 08 ; 0xc46a9 vberom.asm:862 + je short 046a8h ; 74 fb ; 0xc46ab vberom.asm:863 + pop dx ; 5a ; 0xc46ad vberom.asm:864 + push ax ; 50 ; 0xc46ae vberom.asm:868 + push cx ; 51 ; 0xc46af vberom.asm:869 + push dx ; 52 ; 0xc46b0 vberom.asm:870 + push si ; 56 ; 0xc46b1 vberom.asm:871 + push di ; 57 ; 0xc46b2 vberom.asm:872 + sal dx, 010h ; c1 e2 10 ; 0xc46b3 vberom.asm:873 + and cx, strict word 0ffffh ; 81 e1 ff ff ; 0xc46b6 vberom.asm:874 + add byte [bx+si], al ; 00 00 ; 0xc46ba + db 00bh, 0cah + ; or cx, dx ; 0b ca ; 0xc46bc vberom.asm:875 + sal cx, 002h ; c1 e1 02 ; 0xc46be vberom.asm:876 + db 08bh, 0c1h + ; mov ax, cx ; 8b c1 ; 0xc46c1 vberom.asm:877 + push ax ; 50 ; 0xc46c3 vberom.asm:878 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc46c4 vberom.asm:879 + push ES ; 06 ; 0xc46ca + add byte [bp-011h], ah ; 00 66 ef ; 0xc46cb + mov edx, strict dword 0ed6601cfh ; 66 ba cf 01 66 ed ; 0xc46ce vberom.asm:882 + db 00fh, 0b7h, 0c8h + ; movzx cx, ax ; 0f b7 c8 ; 0xc46d4 vberom.asm:884 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc46d7 vberom.asm:885 + add ax, word [bx+si] ; 03 00 ; 0xc46dd + out DX, eax ; 66 ef ; 0xc46df vberom.asm:887 + mov edx, strict dword 0ed6601cfh ; 66 ba cf 01 66 ed ; 0xc46e1 vberom.asm:888 + db 00fh, 0b7h, 0f0h + ; movzx si, ax ; 0f b7 f0 ; 0xc46e7 vberom.asm:890 + pop ax ; 58 ; 0xc46ea vberom.asm:891 + cmp si, strict byte 00004h ; 83 fe 04 ; 0xc46eb vberom.asm:893 + je short 04707h ; 74 17 ; 0xc46ee vberom.asm:894 + add si, strict byte 00007h ; 83 c6 07 ; 0xc46f0 vberom.asm:895 + shr si, 003h ; c1 ee 03 ; 0xc46f3 vberom.asm:896 + imul cx, si ; 0f af ce ; 0xc46f6 vberom.asm:897 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc46f9 vberom.asm:898 + div cx ; f7 f1 ; 0xc46fb vberom.asm:899 + db 08bh, 0f8h + ; mov di, ax ; 8b f8 ; 0xc46fd vberom.asm:900 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc46ff vberom.asm:901 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc4701 vberom.asm:902 + div si ; f7 f6 ; 0xc4703 vberom.asm:903 + jmp short 04713h ; eb 0c ; 0xc4705 vberom.asm:904 + shr cx, 1 ; d1 e9 ; 0xc4707 vberom.asm:907 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc4709 vberom.asm:908 + div cx ; f7 f1 ; 0xc470b vberom.asm:909 + db 08bh, 0f8h + ; mov di, ax ; 8b f8 ; 0xc470d vberom.asm:910 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc470f vberom.asm:911 + sal ax, 1 ; d1 e0 ; 0xc4711 vberom.asm:912 + push edx ; 66 52 ; 0xc4713 vberom.asm:915 + push eax ; 66 50 ; 0xc4715 vberom.asm:916 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc4717 vberom.asm:917 + or byte [bx+si], al ; 08 00 ; 0xc471d + out DX, eax ; 66 ef ; 0xc471f vberom.asm:919 + pop eax ; 66 58 ; 0xc4721 vberom.asm:920 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc4723 vberom.asm:921 + pop edx ; 66 5a ; 0xc4729 vberom.asm:923 + db 066h, 08bh, 0c7h + ; mov eax, edi ; 66 8b c7 ; 0xc472b vberom.asm:925 + push edx ; 66 52 ; 0xc472e vberom.asm:926 + push eax ; 66 50 ; 0xc4730 vberom.asm:927 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc4732 vberom.asm:928 + or word [bx+si], ax ; 09 00 ; 0xc4738 + out DX, eax ; 66 ef ; 0xc473a vberom.asm:930 + pop eax ; 66 58 ; 0xc473c vberom.asm:931 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc473e vberom.asm:932 + pop edx ; 66 5a ; 0xc4744 vberom.asm:934 + pop di ; 5f ; 0xc4746 vberom.asm:936 + pop si ; 5e ; 0xc4747 vberom.asm:937 + pop dx ; 5a ; 0xc4748 vberom.asm:938 + pop cx ; 59 ; 0xc4749 vberom.asm:939 + pop ax ; 58 ; 0xc474a vberom.asm:940 + mov eax, strict dword 066c3004fh ; 66 b8 4f 00 c3 66 ; 0xc474b vberom.asm:941 + mov ax, 0014fh ; b8 4f 01 ; 0xc4751 + ; disGetNextSymbol 0xc4754 LB 0x1 -> off=0x0 cb=0000000000000001 uValue=0000000000000114 'vesa_pm_end' +vesa_pm_end: ; 0xc4754 LB 0x1 + retn ; c3 ; 0xc4754 vberom.asm:946 + + ; Padding 0x2b bytes at 0xc4755 + times 43 db 0 + +section _DATA progbits vstart=0x4780 align=1 ; size=0x374d class=DATA group=DGROUP + ; disGetNextSymbol 0xc4780 LB 0x374d -> off=0x0 cb=000000000000002f uValue=00000000000c0000 '_msg_vga_init' +_msg_vga_init: ; 0xc4780 LB 0x2f + db 'Oracle VM VirtualBox Version 7.0.14 VGA BIOS', 00dh, 00ah, 000h + ; disGetNextSymbol 0xc47af LB 0x371e -> off=0x0 cb=0000000000000080 uValue=00000000000c002f 'vga_modes' +vga_modes: ; 0xc47af LB 0x80 + db 000h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 001h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h + db 002h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 003h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h + db 004h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h, 005h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h + db 006h, 001h, 002h, 001h, 000h, 0b8h, 0ffh, 001h, 007h, 000h, 001h, 004h, 000h, 0b0h, 0ffh, 000h + db 00dh, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 001h, 00eh, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 001h + db 00fh, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 000h, 010h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + db 011h, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 002h, 012h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + db 013h, 001h, 005h, 008h, 000h, 0a0h, 0ffh, 003h, 06ah, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + ; disGetNextSymbol 0xc482f LB 0x369e -> off=0x0 cb=0000000000000010 uValue=00000000000c00af 'line_to_vpti' +line_to_vpti: ; 0xc482f LB 0x10 + db 017h, 017h, 018h, 018h, 004h, 005h, 006h, 007h, 00dh, 00eh, 011h, 012h, 01ah, 01bh, 01ch, 01dh + ; disGetNextSymbol 0xc483f LB 0x368e -> off=0x0 cb=0000000000000004 uValue=00000000000c00bf 'dac_regs' +dac_regs: ; 0xc483f LB 0x4 + dd 0ff3f3f3fh + ; disGetNextSymbol 0xc4843 LB 0x368a -> off=0x0 cb=0000000000000780 uValue=00000000000c00c3 'video_param_table' +video_param_table: ; 0xc4843 LB 0x780 + db 028h, 018h, 008h, 000h, 008h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 008h, 000h, 008h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 008h, 000h, 010h, 001h, 003h, 000h, 002h, 063h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 008h, 000h, 010h, 001h, 003h, 000h, 002h, 063h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 008h, 000h, 040h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0a2h, 0ffh, 000h, 013h, 015h, 017h, 002h, 004h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 003h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 00fh, 00fh, 0ffh + db 028h, 018h, 008h, 000h, 040h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0a2h, 0ffh, 000h, 013h, 015h, 017h, 002h, 004h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 003h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 00fh, 00fh, 0ffh + db 050h, 018h, 008h, 000h, 040h, 001h, 001h, 000h, 006h, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 000h, 096h + db 0b9h, 0c2h, 0ffh, 000h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h + db 017h, 017h, 017h, 001h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 00dh, 00fh, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 000h, 003h, 000h, 003h, 0a6h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00dh, 063h + db 0bah, 0a3h, 0ffh, 000h, 008h, 008h, 008h, 008h, 008h, 008h, 008h, 010h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 00eh, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00ah, 000h, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 028h, 018h, 008h, 000h, 020h, 009h, 00fh, 000h, 006h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 018h, 008h, 000h, 040h, 001h, 00fh, 000h, 006h, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 000h, 096h + db 0b9h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 050h, 018h, 00eh, 000h, 080h, 001h, 00fh, 000h, 006h, 0a3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00fh, 063h + db 0bah, 0e3h, 0ffh, 000h, 008h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 008h, 000h, 000h, 000h + db 018h, 000h, 000h, 001h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 018h, 00eh, 000h, 080h, 001h, 00fh, 000h, 006h, 0a3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00fh, 063h + db 0bah, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 028h, 018h, 00eh, 000h, 008h, 009h, 003h, 000h, 002h, 0a3h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 014h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 00eh, 000h, 008h, 009h, 003h, 000h, 002h, 0a3h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 014h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 001h, 003h, 000h, 002h, 0a3h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 001h, 003h, 000h, 002h, 0a3h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 010h, 000h, 008h, 008h, 003h, 000h, 002h, 067h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 00ch, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 00fh, 0ffh + db 050h, 018h, 010h, 000h, 010h, 000h, 003h, 000h, 002h, 067h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 00ch, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 00fh, 0ffh + db 050h, 018h, 010h, 000h, 010h, 000h, 003h, 000h, 002h, 066h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 00fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 008h, 008h, 008h, 008h, 008h, 008h, 008h, 010h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 00eh, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00ah, 00fh, 0ffh + db 050h, 01dh, 010h, 000h, 0a0h, 001h, 00fh, 000h, 006h, 0e3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 00bh, 03eh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 0eah, 08ch, 0dfh, 028h, 000h, 0e7h + db 004h, 0c3h, 0ffh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h + db 03fh, 000h, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 01dh, 010h, 000h, 0a0h, 001h, 00fh, 000h, 006h, 0e3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 00bh, 03eh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 0eah, 08ch, 0dfh, 028h, 000h, 0e7h + db 004h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 028h, 018h, 008h, 000h, 020h, 001h, 00fh, 000h, 00eh, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 041h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 040h, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 008h, 009h, 00ah, 00bh, 00ch + db 00dh, 00eh, 00fh, 041h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 040h, 005h, 00fh, 0ffh + db 064h, 024h, 010h, 000h, 000h, 001h, 00fh, 000h, 006h, 0e3h, 07fh, 063h, 063h, 083h, 06bh, 01bh + db 072h, 0f0h, 000h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 059h, 08dh, 057h, 032h, 000h, 057h + db 073h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + ; disGetNextSymbol 0xc4fc3 LB 0x2f0a -> off=0x0 cb=00000000000000c0 uValue=00000000000c0843 'palette0' +palette0: ; 0xc4fc3 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5083 LB 0x2e4a -> off=0x0 cb=00000000000000c0 uValue=00000000000c0903 'palette1' +palette1: ; 0xc5083 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah + db 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah + db 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh + db 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah + db 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah + db 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh + db 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5143 LB 0x2d8a -> off=0x0 cb=00000000000000c0 uValue=00000000000c09c3 'palette2' +palette2: ; 0xc5143 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 02ah, 000h, 02ah, 02ah, 02ah, 000h, 000h, 015h, 000h, 000h, 03fh, 000h, 02ah + db 015h, 000h, 02ah, 03fh, 02ah, 000h, 015h, 02ah, 000h, 03fh, 02ah, 02ah, 015h, 02ah, 02ah, 03fh + db 000h, 015h, 000h, 000h, 015h, 02ah, 000h, 03fh, 000h, 000h, 03fh, 02ah, 02ah, 015h, 000h, 02ah + db 015h, 02ah, 02ah, 03fh, 000h, 02ah, 03fh, 02ah, 000h, 015h, 015h, 000h, 015h, 03fh, 000h, 03fh + db 015h, 000h, 03fh, 03fh, 02ah, 015h, 015h, 02ah, 015h, 03fh, 02ah, 03fh, 015h, 02ah, 03fh, 03fh + db 015h, 000h, 000h, 015h, 000h, 02ah, 015h, 02ah, 000h, 015h, 02ah, 02ah, 03fh, 000h, 000h, 03fh + db 000h, 02ah, 03fh, 02ah, 000h, 03fh, 02ah, 02ah, 015h, 000h, 015h, 015h, 000h, 03fh, 015h, 02ah + db 015h, 015h, 02ah, 03fh, 03fh, 000h, 015h, 03fh, 000h, 03fh, 03fh, 02ah, 015h, 03fh, 02ah, 03fh + db 015h, 015h, 000h, 015h, 015h, 02ah, 015h, 03fh, 000h, 015h, 03fh, 02ah, 03fh, 015h, 000h, 03fh + db 015h, 02ah, 03fh, 03fh, 000h, 03fh, 03fh, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5203 LB 0x2cca -> off=0x0 cb=0000000000000300 uValue=00000000000c0a83 'palette3' +palette3: ; 0xc5203 LB 0x300 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 005h, 005h, 005h, 008h, 008h, 008h, 00bh, 00bh, 00bh, 00eh, 00eh, 00eh, 011h + db 011h, 011h, 014h, 014h, 014h, 018h, 018h, 018h, 01ch, 01ch, 01ch, 020h, 020h, 020h, 024h, 024h + db 024h, 028h, 028h, 028h, 02dh, 02dh, 02dh, 032h, 032h, 032h, 038h, 038h, 038h, 03fh, 03fh, 03fh + db 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh, 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h, 03fh, 03fh + db 000h, 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh + db 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h, 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 000h + db 000h, 03fh, 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh, 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h + db 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh, 02fh, 01fh + db 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 03fh, 03fh, 01fh, 037h, 03fh, 01fh, 02fh, 03fh, 01fh, 027h + db 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh, 02fh, 01fh, 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 037h + db 03fh, 01fh, 02fh, 03fh, 01fh, 027h, 03fh, 01fh, 01fh, 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh + db 02fh, 01fh, 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 037h, 03fh, 01fh, 02fh, 03fh, 01fh, 027h, 03fh + db 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h, 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh, 03fh, 03fh + db 02dh, 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h + db 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh, 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 02dh + db 02dh, 03fh, 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h, 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh + db 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 000h, 000h, 01ch, 007h, 000h, 01ch, 00eh, 000h + db 01ch, 015h, 000h, 01ch, 01ch, 000h, 01ch, 01ch, 000h, 015h, 01ch, 000h, 00eh, 01ch, 000h, 007h + db 01ch, 000h, 000h, 01ch, 007h, 000h, 01ch, 00eh, 000h, 01ch, 015h, 000h, 01ch, 01ch, 000h, 015h + db 01ch, 000h, 00eh, 01ch, 000h, 007h, 01ch, 000h, 000h, 01ch, 000h, 000h, 01ch, 007h, 000h, 01ch + db 00eh, 000h, 01ch, 015h, 000h, 01ch, 01ch, 000h, 015h, 01ch, 000h, 00eh, 01ch, 000h, 007h, 01ch + db 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h, 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh, 01ch, 01ch + db 00eh, 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h + db 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh, 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 00eh + db 00eh, 01ch, 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h, 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh + db 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch, 018h, 014h + db 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ch, 01ch, 014h, 01ah, 01ch, 014h, 018h, 01ch, 014h, 016h + db 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch, 018h, 014h, 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ah + db 01ch, 014h, 018h, 01ch, 014h, 016h, 01ch, 014h, 014h, 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch + db 018h, 014h, 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ah, 01ch, 014h, 018h, 01ch, 014h, 016h, 01ch + db 000h, 000h, 010h, 004h, 000h, 010h, 008h, 000h, 010h, 00ch, 000h, 010h, 010h, 000h, 010h, 010h + db 000h, 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 000h, 000h, 010h, 004h, 000h, 010h, 008h + db 000h, 010h, 00ch, 000h, 010h, 010h, 000h, 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 000h + db 000h, 010h, 000h, 000h, 010h, 004h, 000h, 010h, 008h, 000h, 010h, 00ch, 000h, 010h, 010h, 000h + db 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 008h, 008h, 010h, 00ah, 008h, 010h, 00ch, 008h + db 010h, 00eh, 008h, 010h, 010h, 008h, 010h, 010h, 008h, 00eh, 010h, 008h, 00ch, 010h, 008h, 00ah + db 010h, 008h, 008h, 010h, 00ah, 008h, 010h, 00ch, 008h, 010h, 00eh, 008h, 010h, 010h, 008h, 00eh + db 010h, 008h, 00ch, 010h, 008h, 00ah, 010h, 008h, 008h, 010h, 008h, 008h, 010h, 00ah, 008h, 010h + db 00ch, 008h, 010h, 00eh, 008h, 010h, 010h, 008h, 00eh, 010h, 008h, 00ch, 010h, 008h, 00ah, 010h + db 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh, 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh, 010h, 010h + db 00bh, 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh + db 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh, 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 00bh + db 00bh, 010h, 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh, 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh + db 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5503 LB 0x29ca -> off=0x0 cb=0000000000000010 uValue=00000000000c0d83 'static_functionality' +static_functionality: ; 0xc5503 LB 0x10 + db 0ffh, 0e0h, 00fh, 000h, 000h, 000h, 000h, 007h, 002h, 008h, 0e7h, 00ch, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5513 LB 0x29ba -> off=0x0 cb=0000000000000024 uValue=00000000000c0d93 '_dcc_table' +_dcc_table: ; 0xc5513 LB 0x24 + db 010h, 001h, 007h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5537 LB 0x2996 -> off=0x0 cb=000000000000001a uValue=00000000000c0db7 '_secondary_save_area' +_secondary_save_area: ; 0xc5537 LB 0x1a + db 01ah, 000h, 013h, 055h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5551 LB 0x297c -> off=0x0 cb=000000000000001c uValue=00000000000c0dd1 '_video_save_pointer_table' +_video_save_pointer_table: ; 0xc5551 LB 0x1c + db 043h, 048h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 037h, 055h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc556d LB 0x2960 -> off=0x0 cb=0000000000000800 uValue=00000000000c0ded 'vgafont8' +vgafont8: ; 0xc556d LB 0x800 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 081h, 0a5h, 081h, 0bdh, 099h, 081h, 07eh + db 07eh, 0ffh, 0dbh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 06ch, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h + db 010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 038h, 07ch, 038h, 0feh, 0feh, 07ch, 038h, 07ch + db 010h, 010h, 038h, 07ch, 0feh, 07ch, 038h, 07ch, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h + db 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h + db 0ffh, 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 00fh, 007h, 00fh, 07dh, 0cch, 0cch, 0cch, 078h + db 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 018h, 03fh, 033h, 03fh, 030h, 030h, 070h, 0f0h, 0e0h + db 07fh, 063h, 07fh, 063h, 063h, 067h, 0e6h, 0c0h, 099h, 05ah, 03ch, 0e7h, 0e7h, 03ch, 05ah, 099h + db 080h, 0e0h, 0f8h, 0feh, 0f8h, 0e0h, 080h, 000h, 002h, 00eh, 03eh, 0feh, 03eh, 00eh, 002h, 000h + db 018h, 03ch, 07eh, 018h, 018h, 07eh, 03ch, 018h, 066h, 066h, 066h, 066h, 066h, 000h, 066h, 000h + db 07fh, 0dbh, 0dbh, 07bh, 01bh, 01bh, 01bh, 000h, 03eh, 063h, 038h, 06ch, 06ch, 038h, 0cch, 078h + db 000h, 000h, 000h, 000h, 07eh, 07eh, 07eh, 000h, 018h, 03ch, 07eh, 018h, 07eh, 03ch, 018h, 0ffh + db 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h + db 000h, 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 030h, 060h, 0feh, 060h, 030h, 000h, 000h + db 000h, 000h, 0c0h, 0c0h, 0c0h, 0feh, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h + db 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 000h, 000h, 000h, 0ffh, 0ffh, 07eh, 03ch, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 078h, 078h, 030h, 030h, 000h, 030h, 000h + db 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch, 0feh, 06ch, 06ch, 000h + db 030h, 07ch, 0c0h, 078h, 00ch, 0f8h, 030h, 000h, 000h, 0c6h, 0cch, 018h, 030h, 066h, 0c6h, 000h + db 038h, 06ch, 038h, 076h, 0dch, 0cch, 076h, 000h, 060h, 060h, 0c0h, 000h, 000h, 000h, 000h, 000h + db 018h, 030h, 060h, 060h, 060h, 030h, 018h, 000h, 060h, 030h, 018h, 018h, 018h, 030h, 060h, 000h + db 000h, 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 030h, 030h, 0fch, 030h, 030h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 060h, 000h, 000h, 000h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 000h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h + db 07ch, 0c6h, 0ceh, 0deh, 0f6h, 0e6h, 07ch, 000h, 030h, 070h, 030h, 030h, 030h, 030h, 0fch, 000h + db 078h, 0cch, 00ch, 038h, 060h, 0cch, 0fch, 000h, 078h, 0cch, 00ch, 038h, 00ch, 0cch, 078h, 000h + db 01ch, 03ch, 06ch, 0cch, 0feh, 00ch, 01eh, 000h, 0fch, 0c0h, 0f8h, 00ch, 00ch, 0cch, 078h, 000h + db 038h, 060h, 0c0h, 0f8h, 0cch, 0cch, 078h, 000h, 0fch, 0cch, 00ch, 018h, 030h, 030h, 030h, 000h + db 078h, 0cch, 0cch, 078h, 0cch, 0cch, 078h, 000h, 078h, 0cch, 0cch, 07ch, 00ch, 018h, 070h, 000h + db 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 060h + db 018h, 030h, 060h, 0c0h, 060h, 030h, 018h, 000h, 000h, 000h, 0fch, 000h, 000h, 0fch, 000h, 000h + db 060h, 030h, 018h, 00ch, 018h, 030h, 060h, 000h, 078h, 0cch, 00ch, 018h, 030h, 000h, 030h, 000h + db 07ch, 0c6h, 0deh, 0deh, 0deh, 0c0h, 078h, 000h, 030h, 078h, 0cch, 0cch, 0fch, 0cch, 0cch, 000h + db 0fch, 066h, 066h, 07ch, 066h, 066h, 0fch, 000h, 03ch, 066h, 0c0h, 0c0h, 0c0h, 066h, 03ch, 000h + db 0f8h, 06ch, 066h, 066h, 066h, 06ch, 0f8h, 000h, 0feh, 062h, 068h, 078h, 068h, 062h, 0feh, 000h + db 0feh, 062h, 068h, 078h, 068h, 060h, 0f0h, 000h, 03ch, 066h, 0c0h, 0c0h, 0ceh, 066h, 03eh, 000h + db 0cch, 0cch, 0cch, 0fch, 0cch, 0cch, 0cch, 000h, 078h, 030h, 030h, 030h, 030h, 030h, 078h, 000h + db 01eh, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 000h, 0e6h, 066h, 06ch, 078h, 06ch, 066h, 0e6h, 000h + db 0f0h, 060h, 060h, 060h, 062h, 066h, 0feh, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 000h + db 0c6h, 0e6h, 0f6h, 0deh, 0ceh, 0c6h, 0c6h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h + db 0fch, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h, 078h, 0cch, 0cch, 0cch, 0dch, 078h, 01ch, 000h + db 0fch, 066h, 066h, 07ch, 06ch, 066h, 0e6h, 000h, 078h, 0cch, 0e0h, 070h, 01ch, 0cch, 078h, 000h + db 0fch, 0b4h, 030h, 030h, 030h, 030h, 078h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 0fch, 000h + db 0cch, 0cch, 0cch, 0cch, 0cch, 078h, 030h, 000h, 0c6h, 0c6h, 0c6h, 0d6h, 0feh, 0eeh, 0c6h, 000h + db 0c6h, 0c6h, 06ch, 038h, 038h, 06ch, 0c6h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 030h, 078h, 000h + db 0feh, 0c6h, 08ch, 018h, 032h, 066h, 0feh, 000h, 078h, 060h, 060h, 060h, 060h, 060h, 078h, 000h + db 0c0h, 060h, 030h, 018h, 00ch, 006h, 002h, 000h, 078h, 018h, 018h, 018h, 018h, 018h, 078h, 000h + db 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 076h, 000h + db 0e0h, 060h, 060h, 07ch, 066h, 066h, 0dch, 000h, 000h, 000h, 078h, 0cch, 0c0h, 0cch, 078h, 000h + db 01ch, 00ch, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h + db 038h, 06ch, 060h, 0f0h, 060h, 060h, 0f0h, 000h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 0f8h + db 0e0h, 060h, 06ch, 076h, 066h, 066h, 0e6h, 000h, 030h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 00ch, 000h, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 0e0h, 060h, 066h, 06ch, 078h, 06ch, 0e6h, 000h + db 070h, 030h, 030h, 030h, 030h, 030h, 078h, 000h, 000h, 000h, 0cch, 0feh, 0feh, 0d6h, 0c6h, 000h + db 000h, 000h, 0f8h, 0cch, 0cch, 0cch, 0cch, 000h, 000h, 000h, 078h, 0cch, 0cch, 0cch, 078h, 000h + db 000h, 000h, 0dch, 066h, 066h, 07ch, 060h, 0f0h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 01eh + db 000h, 000h, 0dch, 076h, 066h, 060h, 0f0h, 000h, 000h, 000h, 07ch, 0c0h, 078h, 00ch, 0f8h, 000h + db 010h, 030h, 07ch, 030h, 030h, 034h, 018h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 000h, 000h, 000h, 0c6h, 0d6h, 0feh, 0feh, 06ch, 000h + db 000h, 000h, 0c6h, 06ch, 038h, 06ch, 0c6h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 07ch, 00ch, 0f8h + db 000h, 000h, 0fch, 098h, 030h, 064h, 0fch, 000h, 01ch, 030h, 030h, 0e0h, 030h, 030h, 01ch, 000h + db 018h, 018h, 018h, 000h, 018h, 018h, 018h, 000h, 0e0h, 030h, 030h, 01ch, 030h, 030h, 0e0h, 000h + db 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 000h + db 078h, 0cch, 0c0h, 0cch, 078h, 018h, 00ch, 078h, 000h, 0cch, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 01ch, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h, 07eh, 0c3h, 03ch, 006h, 03eh, 066h, 03fh, 000h + db 0cch, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 0e0h, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h + db 030h, 030h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 000h, 000h, 078h, 0c0h, 0c0h, 078h, 00ch, 038h + db 07eh, 0c3h, 03ch, 066h, 07eh, 060h, 03ch, 000h, 0cch, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h + db 0e0h, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h, 0cch, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 07ch, 0c6h, 038h, 018h, 018h, 018h, 03ch, 000h, 0e0h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 0c6h, 038h, 06ch, 0c6h, 0feh, 0c6h, 0c6h, 000h, 030h, 030h, 000h, 078h, 0cch, 0fch, 0cch, 000h + db 01ch, 000h, 0fch, 060h, 078h, 060h, 0fch, 000h, 000h, 000h, 07fh, 00ch, 07fh, 0cch, 07fh, 000h + db 03eh, 06ch, 0cch, 0feh, 0cch, 0cch, 0ceh, 000h, 078h, 0cch, 000h, 078h, 0cch, 0cch, 078h, 000h + db 000h, 0cch, 000h, 078h, 0cch, 0cch, 078h, 000h, 000h, 0e0h, 000h, 078h, 0cch, 0cch, 078h, 000h + db 078h, 0cch, 000h, 0cch, 0cch, 0cch, 07eh, 000h, 000h, 0e0h, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 000h, 0cch, 000h, 0cch, 0cch, 07ch, 00ch, 0f8h, 0c3h, 018h, 03ch, 066h, 066h, 03ch, 018h, 000h + db 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 078h, 000h, 018h, 018h, 07eh, 0c0h, 0c0h, 07eh, 018h, 018h + db 038h, 06ch, 064h, 0f0h, 060h, 0e6h, 0fch, 000h, 0cch, 0cch, 078h, 0fch, 030h, 0fch, 030h, 030h + db 0f8h, 0cch, 0cch, 0fah, 0c6h, 0cfh, 0c6h, 0c7h, 00eh, 01bh, 018h, 03ch, 018h, 018h, 0d8h, 070h + db 01ch, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 038h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 000h, 01ch, 000h, 078h, 0cch, 0cch, 078h, 000h, 000h, 01ch, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 000h, 0f8h, 000h, 0f8h, 0cch, 0cch, 0cch, 000h, 0fch, 000h, 0cch, 0ech, 0fch, 0dch, 0cch, 000h + db 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h + db 030h, 000h, 030h, 060h, 0c0h, 0cch, 078h, 000h, 000h, 000h, 000h, 0fch, 0c0h, 0c0h, 000h, 000h + db 000h, 000h, 000h, 0fch, 00ch, 00ch, 000h, 000h, 0c3h, 0c6h, 0cch, 0deh, 033h, 066h, 0cch, 00fh + db 0c3h, 0c6h, 0cch, 0dbh, 037h, 06fh, 0cfh, 003h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 000h + db 000h, 033h, 066h, 0cch, 066h, 033h, 000h, 000h, 000h, 0cch, 066h, 033h, 066h, 0cch, 000h, 000h + db 022h, 088h, 022h, 088h, 022h, 088h, 022h, 088h, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah + db 0dbh, 077h, 0dbh, 0eeh, 0dbh, 077h, 0dbh, 0eeh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h + db 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 0feh, 006h, 0f6h, 036h, 036h, 036h + db 036h, 036h, 0f6h, 006h, 0feh, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h, 000h + db 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h + db 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h + db 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h + db 036h, 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0f7h, 036h, 036h, 036h + db 036h, 036h, 037h, 030h, 037h, 036h, 036h, 036h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h, 000h + db 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 03fh, 000h, 000h, 000h + db 018h, 018h, 01fh, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h + db 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 0c8h, 0dch, 076h, 000h, 000h, 078h, 0cch, 0f8h, 0cch, 0f8h, 0c0h, 0c0h + db 000h, 0fch, 0cch, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 0feh, 06ch, 06ch, 06ch, 06ch, 06ch, 000h + db 0fch, 0cch, 060h, 030h, 060h, 0cch, 0fch, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 070h, 000h + db 000h, 066h, 066h, 066h, 066h, 07ch, 060h, 0c0h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 000h + db 0fch, 030h, 078h, 0cch, 0cch, 078h, 030h, 0fch, 038h, 06ch, 0c6h, 0feh, 0c6h, 06ch, 038h, 000h + db 038h, 06ch, 0c6h, 0c6h, 06ch, 06ch, 0eeh, 000h, 01ch, 030h, 018h, 07ch, 0cch, 0cch, 078h, 000h + db 000h, 000h, 07eh, 0dbh, 0dbh, 07eh, 000h, 000h, 006h, 00ch, 07eh, 0dbh, 0dbh, 07eh, 060h, 0c0h + db 038h, 060h, 0c0h, 0f8h, 0c0h, 060h, 038h, 000h, 078h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 000h + db 000h, 0fch, 000h, 0fch, 000h, 0fch, 000h, 000h, 030h, 030h, 0fch, 030h, 030h, 000h, 0fch, 000h + db 060h, 030h, 018h, 030h, 060h, 000h, 0fch, 000h, 018h, 030h, 060h, 030h, 018h, 000h, 0fch, 000h + db 00eh, 01bh, 01bh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h, 070h + db 030h, 030h, 000h, 0fch, 000h, 030h, 030h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h + db 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h, 00fh, 00ch, 00ch, 00ch, 0ech, 06ch, 03ch, 01ch + db 078h, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 070h, 018h, 030h, 060h, 078h, 000h, 000h, 000h + db 000h, 000h, 03ch, 03ch, 03ch, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5d6d LB 0x2160 -> off=0x0 cb=0000000000000e00 uValue=00000000000c15ed 'vgafont14' +vgafont14: ; 0xc5d6d LB 0xe00 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 07eh, 000h, 000h, 000h, 000h, 000h, 07eh, 0ffh + db 0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 06ch, 0feh, 0feh + db 0feh, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 07ch, 0feh, 07ch + db 038h, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 0e7h, 0e7h, 0e7h, 018h, 018h + db 03ch, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 07eh, 018h, 018h, 03ch, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h + db 000h, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh + db 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 01eh, 00eh, 01ah, 032h + db 078h, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 066h, 066h, 03ch, 018h + db 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 03fh, 033h, 03fh, 030h, 030h, 030h, 070h, 0f0h + db 0e0h, 000h, 000h, 000h, 000h, 000h, 07fh, 063h, 07fh, 063h, 063h, 063h, 067h, 0e7h, 0e6h, 0c0h + db 000h, 000h, 000h, 000h, 018h, 018h, 0dbh, 03ch, 0e7h, 03ch, 0dbh, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 080h, 0c0h, 0e0h, 0f8h, 0feh, 0f8h, 0e0h, 0c0h, 080h, 000h, 000h, 000h, 000h, 000h + db 002h, 006h, 00eh, 03eh, 0feh, 03eh, 00eh, 006h, 002h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch + db 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h + db 066h, 066h, 000h, 066h, 066h, 000h, 000h, 000h, 000h, 000h, 07fh, 0dbh, 0dbh, 0dbh, 07bh, 01bh + db 01bh, 01bh, 01bh, 000h, 000h, 000h, 000h, 07ch, 0c6h, 060h, 038h, 06ch, 0c6h, 0c6h, 06ch, 038h + db 00ch, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 0feh, 000h + db 000h, 000h, 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 07eh, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 060h + db 0feh, 060h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c0h + db 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 028h, 06ch, 0feh, 06ch, 028h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 038h, 07ch, 07ch, 0feh, 0feh, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 07ch, 07ch, 038h, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 03ch, 03ch, 03ch, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 066h, 066h, 066h + db 024h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch + db 06ch, 06ch, 0feh, 06ch, 06ch, 000h, 000h, 000h, 018h, 018h, 07ch, 0c6h, 0c2h, 0c0h, 07ch, 006h + db 086h, 0c6h, 07ch, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 0c2h, 0c6h, 00ch, 018h, 030h, 066h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 038h, 06ch, 06ch, 038h, 076h, 0dch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 030h, 030h, 030h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 018h, 030h, 030h, 030h, 030h, 030h, 018h, 00ch, 000h, 000h, 000h, 000h, 000h + db 030h, 018h, 00ch, 00ch, 00ch, 00ch, 00ch, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h + db 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h + db 000h, 000h, 000h, 000h, 002h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0ceh, 0deh, 0f6h, 0e6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 018h, 038h, 078h, 018h, 018h, 018h, 018h, 018h, 07eh, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h + db 006h, 00ch, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 006h, 006h + db 03ch, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 00ch, 01ch, 03ch, 06ch, 0cch, 0feh + db 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0fch, 006h, 006h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 038h, 060h, 0c0h, 0c0h, 0fch, 0c6h, 0c6h, 0c6h, 07ch, 000h + db 000h, 000h, 000h, 000h, 0feh, 0c6h, 006h, 00ch, 018h, 030h, 030h, 030h, 030h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 07ch, 0c6h, 0c6h, 0c6h, 07eh, 006h, 006h, 00ch, 078h, 000h, 000h, 000h, 000h, 000h, 000h, 018h + db 018h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h + db 000h, 000h, 018h, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 006h, 00ch, 018h, 030h, 060h, 030h + db 018h, 00ch, 006h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 000h, 000h, 07eh, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 060h, 000h + db 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 00ch, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0deh, 0deh, 0deh, 0dch, 0c0h, 07ch, 000h, 000h, 000h, 000h, 000h + db 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h, 0fch, 066h + db 066h, 066h, 07ch, 066h, 066h, 066h, 0fch, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 0c2h, 0c0h + db 0c0h, 0c0h, 0c2h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h, 0f8h, 06ch, 066h, 066h, 066h, 066h + db 066h, 06ch, 0f8h, 000h, 000h, 000h, 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 062h, 066h + db 0feh, 000h, 000h, 000h, 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0deh, 0c6h, 066h, 03ah, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h + db 03ch, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 01eh, 00ch + db 00ch, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h, 000h, 0e6h, 066h, 06ch, 06ch + db 078h, 06ch, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 0f0h, 060h, 060h, 060h, 060h, 060h + db 062h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 0c6h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 000h + db 000h, 000h, 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h, 000h + db 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0deh, 07ch, 00ch, 00eh, 000h, 000h, 000h, 000h, 0fch, 066h + db 066h, 066h, 07ch, 06ch, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 060h + db 038h, 00ch, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 07eh, 07eh, 05ah, 018h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 010h, 000h + db 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0d6h, 0feh, 07ch, 06ch, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 06ch, 038h, 038h, 038h, 06ch, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h + db 066h, 066h, 066h, 066h, 03ch, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 0feh, 0c6h + db 08ch, 018h, 030h, 060h, 0c2h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 03ch, 030h, 030h, 030h + db 030h, 030h, 030h, 030h, 03ch, 000h, 000h, 000h, 000h, 000h, 080h, 0c0h, 0e0h, 070h, 038h, 01ch + db 00eh, 006h, 002h, 000h, 000h, 000h, 000h, 000h, 03ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch + db 03ch, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 0e0h, 060h + db 060h, 078h, 06ch, 066h, 066h, 066h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch + db 0c6h, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 01ch, 00ch, 00ch, 03ch, 06ch, 0cch + db 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 07ch, 00ch, 0cch, 078h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 06ch, 076h, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 006h, 006h + db 000h, 00eh, 006h, 006h, 006h, 006h, 066h, 066h, 03ch, 000h, 000h, 000h, 0e0h, 060h, 060h, 066h + db 06ch, 078h, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ech, 0feh, 0d6h, 0d6h, 0d6h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h, 000h, 000h + db 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 07ch, 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h, 000h + db 000h, 0dch, 076h, 066h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch + db 0c6h, 070h, 01ch, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 010h, 030h, 030h, 0fch, 030h, 030h + db 030h, 036h, 01ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch + db 076h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 03ch, 018h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0d6h, 0d6h, 0feh, 06ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 06ch, 038h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 0f8h, 000h, 000h, 000h, 000h, 000h + db 000h, 0feh, 0cch, 018h, 030h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h, 00eh, 018h, 018h, 018h + db 070h, 018h, 018h, 018h, 00eh, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 000h, 018h + db 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 070h, 018h, 018h, 018h, 00eh, 018h, 018h, 018h + db 070h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 00ch, 006h, 07ch, 000h, 000h, 000h + db 0cch, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 00ch, 018h, 030h + db 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 000h, 078h + db 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 000h, 078h, 00ch, 07ch + db 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 078h, 00ch, 07ch, 0cch, 0cch + db 076h, 000h, 000h, 000h, 000h, 038h, 06ch, 038h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 060h, 066h, 03ch, 00ch, 006h, 03ch, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 0cch, 0cch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h + db 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 000h, 038h + db 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 018h, 03ch, 066h, 000h, 038h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 038h, 018h, 018h, 018h, 018h + db 03ch, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 000h + db 000h, 000h, 038h, 06ch, 038h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 000h, 000h, 000h + db 018h, 030h, 060h, 000h, 0feh, 066h, 060h, 07ch, 060h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 0cch, 076h, 036h, 07eh, 0d8h, 0d8h, 06eh, 000h, 000h, 000h, 000h, 000h, 03eh, 06ch + db 0cch, 0cch, 0feh, 0cch, 0cch, 0cch, 0ceh, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 000h, 07ch + db 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 000h, 07ch, 0c6h, 0c6h + db 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 030h, 078h, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 060h, 030h, 018h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 078h, 000h, 000h, 0c6h + db 0c6h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 000h + db 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 018h, 018h, 03ch, 066h, 060h + db 060h, 066h, 03ch, 018h, 018h, 000h, 000h, 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h + db 060h, 0e6h, 0fch, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 03ch, 018h, 07eh, 018h, 07eh, 018h + db 018h, 000h, 000h, 000h, 000h, 0f8h, 0cch, 0cch, 0f8h, 0c4h, 0cch, 0deh, 0cch, 0cch, 0c6h, 000h + db 000h, 000h, 000h, 00eh, 01bh, 018h, 018h, 018h, 07eh, 018h, 018h, 018h, 018h, 0d8h, 070h, 000h + db 000h, 018h, 030h, 060h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 00ch + db 018h, 030h, 000h, 038h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 018h, 030h, 060h + db 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 018h, 030h, 060h, 000h, 0cch + db 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 0dch, 066h, 066h + db 066h, 066h, 066h, 000h, 000h, 000h, 076h, 0dch, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h + db 0c6h, 000h, 000h, 000h, 000h, 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 030h, 000h, 030h, 030h, 060h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 006h, 006h, 006h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c6h, 0cch, 0d8h + db 030h, 060h, 0dch, 086h, 00ch, 018h, 03eh, 000h, 000h, 0c0h, 0c0h, 0c6h, 0cch, 0d8h, 030h, 066h + db 0ceh, 09eh, 03eh, 006h, 006h, 000h, 000h, 000h, 018h, 018h, 000h, 018h, 018h, 03ch, 03ch, 03ch + db 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 036h, 06ch, 0d8h, 06ch, 036h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0d8h, 06ch, 036h, 06ch, 0d8h, 000h, 000h, 000h, 000h, 000h + db 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 055h, 0aah + db 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 0ddh, 077h, 0ddh, 077h + db 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h + db 018h, 018h, 018h, 018h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 036h + db 036h, 036h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 036h, 036h + db 036h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 000h, 0feh + db 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0feh + db 000h, 000h, 000h, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h + db 018h, 018h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 030h, 037h + db 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h + db 000h, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 036h + db 036h, 036h, 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h + db 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 0f0h, 0f0h, 0f0h, 0f0h, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh + db 00fh, 00fh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 0d8h, 0d8h, 0dch, 076h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0fch, 0c6h, 0c6h, 0fch, 0c0h, 0c0h, 040h, 000h, 000h, 000h, 0feh, 0c6h + db 0c6h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 06ch + db 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 0feh, 0c6h, 060h, 030h, 018h, 030h + db 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 0d8h + db 070h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0c0h + db 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 07eh, 018h, 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h, 000h + db 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 038h, 06ch + db 0c6h, 0c6h, 0c6h, 06ch, 06ch, 06ch, 0eeh, 000h, 000h, 000h, 000h, 000h, 01eh, 030h, 018h, 00ch + db 03eh, 066h, 066h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 0dbh, 0dbh + db 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 003h, 006h, 07eh, 0dbh, 0dbh, 0f3h, 07eh, 060h + db 0c0h, 000h, 000h, 000h, 000h, 000h, 01ch, 030h, 060h, 060h, 07ch, 060h, 060h, 030h, 01ch, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h + db 000h, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 030h, 018h + db 00ch, 006h, 00ch, 018h, 030h, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 00ch, 018h, 030h, 060h + db 030h, 018h, 00ch, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 00eh, 01bh, 01bh, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h + db 070h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 07eh, 000h, 018h, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 00fh, 00ch, 00ch, 00ch, 00ch + db 00ch, 0ech, 06ch, 03ch, 01ch, 000h, 000h, 000h, 000h, 0d8h, 06ch, 06ch, 06ch, 06ch, 06ch, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc6b6d LB 0x1360 -> off=0x0 cb=0000000000001000 uValue=00000000000c23ed 'vgafont16' +vgafont16: ; 0xc6b6d LB 0x1000 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 081h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 0ffh, 0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 0ffh, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 06ch, 0feh, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 03ch, 03ch, 0e7h, 0e7h, 0e7h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 07eh, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 01eh, 00eh, 01ah, 032h, 078h, 0cch, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 066h, 066h, 066h, 03ch, 018h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 03fh, 033h, 03fh, 030h, 030h, 030h, 030h, 070h, 0f0h, 0e0h, 000h, 000h, 000h, 000h + db 000h, 000h, 07fh, 063h, 07fh, 063h, 063h, 063h, 063h, 067h, 0e7h, 0e6h, 0c0h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 018h, 0dbh, 03ch, 0e7h, 03ch, 0dbh, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 080h, 0c0h, 0e0h, 0f0h, 0f8h, 0feh, 0f8h, 0f0h, 0e0h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 002h, 006h, 00eh, 01eh, 03eh, 0feh, 03eh, 01eh, 00eh, 006h, 002h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 066h, 066h, 000h, 000h, 000h, 000h + db 000h, 000h, 07fh, 0dbh, 0dbh, 0dbh, 07bh, 01bh, 01bh, 01bh, 01bh, 01bh, 000h, 000h, 000h, 000h + db 000h, 07ch, 0c6h, 060h, 038h, 06ch, 0c6h, 0c6h, 06ch, 038h, 00ch, 0c6h, 07ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 0feh, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 060h, 0feh, 060h, 030h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c0h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 028h, 06ch, 0feh, 06ch, 028h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 038h, 07ch, 07ch, 0feh, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 0feh, 07ch, 07ch, 038h, 038h, 010h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 03ch, 03ch, 018h, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 066h, 066h, 066h, 024h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch, 06ch, 06ch, 0feh, 06ch, 06ch, 000h, 000h, 000h, 000h + db 018h, 018h, 07ch, 0c6h, 0c2h, 0c0h, 07ch, 006h, 006h, 086h, 0c6h, 07ch, 018h, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 0c2h, 0c6h, 00ch, 018h, 030h, 060h, 0c6h, 086h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 06ch, 038h, 076h, 0dch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 030h, 030h, 030h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 018h, 030h, 030h, 030h, 030h, 030h, 030h, 018h, 00ch, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 018h, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 018h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 030h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 002h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0d6h, 0d6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 038h, 078h, 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 006h, 006h, 03ch, 006h, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 01ch, 03ch, 06ch, 0cch, 0feh, 00ch, 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0fch, 006h, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 060h, 0c0h, 0c0h, 0fch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 006h, 006h, 00ch, 018h, 030h, 030h, 030h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07eh, 006h, 006h, 006h, 00ch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 018h, 018h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 006h, 00ch, 018h, 030h, 060h, 030h, 018h, 00ch, 006h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 000h, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 060h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 060h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 00ch, 018h, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0deh, 0deh, 0deh, 0dch, 0c0h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 066h, 066h, 066h, 066h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0f8h, 06ch, 066h, 066h, 066h, 066h, 066h, 066h, 06ch, 0f8h, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 062h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0deh, 0c6h, 0c6h, 066h, 03ah, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 01eh, 00ch, 00ch, 00ch, 00ch, 00ch, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 0e6h, 066h, 066h, 06ch, 078h, 078h, 06ch, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0f0h, 060h, 060h, 060h, 060h, 060h, 060h, 062h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 060h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0deh, 07ch, 00ch, 00eh, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 06ch, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 060h, 038h, 00ch, 006h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 07eh, 05ah, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0d6h, 0d6h, 0feh, 0eeh, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 06ch, 07ch, 038h, 038h, 07ch, 06ch, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 066h, 066h, 03ch, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 086h, 00ch, 018h, 030h, 060h, 0c2h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 030h, 030h, 030h, 030h, 030h, 030h, 030h, 030h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 080h, 0c0h, 0e0h, 070h, 038h, 01ch, 00eh, 006h, 002h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 03ch, 000h, 000h, 000h, 000h + db 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 000h + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 078h, 06ch, 066h, 066h, 066h, 066h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c0h, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 01ch, 00ch, 00ch, 03ch, 06ch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 0cch, 0cch, 07ch, 00ch, 0cch, 078h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 06ch, 076h, 066h, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 006h, 006h, 000h, 00eh, 006h, 006h, 006h, 006h, 006h, 006h, 066h, 066h, 03ch, 000h + db 000h, 000h, 0e0h, 060h, 060h, 066h, 06ch, 078h, 078h, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ech, 0feh, 0d6h, 0d6h, 0d6h, 0d6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 0cch, 0cch, 07ch, 00ch, 00ch, 01eh, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 076h, 066h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 060h, 038h, 00ch, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 010h, 030h, 030h, 0fch, 030h, 030h, 030h, 030h, 036h, 01ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 066h, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0d6h, 0d6h, 0d6h, 0feh, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 06ch, 038h, 038h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 0f8h, 000h + db 000h, 000h, 000h, 000h, 000h, 0feh, 0cch, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 00eh, 018h, 018h, 018h, 070h, 018h, 018h, 018h, 018h, 00eh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 070h, 018h, 018h, 018h, 00eh, 018h, 018h, 018h, 018h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 00ch, 006h, 07ch, 000h, 000h + db 000h, 000h, 0cch, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 00ch, 018h, 030h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0cch, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 038h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 03ch, 066h, 060h, 060h, 066h, 03ch, 00ch, 006h, 03ch, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 018h, 03ch, 066h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 0c6h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 038h, 06ch, 038h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 018h, 030h, 060h, 000h, 0feh, 066h, 060h, 07ch, 060h, 060h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0cch, 076h, 036h, 07eh, 0d8h, 0d8h, 06eh, 000h, 000h, 000h, 000h + db 000h, 000h, 03eh, 06ch, 0cch, 0cch, 0feh, 0cch, 0cch, 0cch, 0cch, 0ceh, 000h, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 030h, 078h, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 078h, 000h + db 000h, 0c6h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 0c6h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 018h, 018h, 03ch, 066h, 060h, 060h, 060h, 066h, 03ch, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 060h, 0e6h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 03ch, 018h, 07eh, 018h, 07eh, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 0f8h, 0cch, 0cch, 0f8h, 0c4h, 0cch, 0deh, 0cch, 0cch, 0cch, 0c6h, 000h, 000h, 000h, 000h + db 000h, 00eh, 01bh, 018h, 018h, 018h, 07eh, 018h, 018h, 018h, 018h, 018h, 0d8h, 070h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 00ch, 018h, 030h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 000h, 000h, 000h + db 076h, 0dch, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 030h, 000h, 030h, 030h, 060h, 0c0h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 006h, 006h, 006h, 006h, 000h, 000h, 000h, 000h, 000h + db 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 060h, 0dch, 086h, 00ch, 018h, 03eh, 000h, 000h + db 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 066h, 0ceh, 09eh, 03eh, 006h, 006h, 000h, 000h + db 000h, 000h, 018h, 018h, 000h, 018h, 018h, 018h, 03ch, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 036h, 06ch, 0d8h, 06ch, 036h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0d8h, 06ch, 036h, 06ch, 0d8h, 000h, 000h, 000h, 000h, 000h, 000h + db 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h + db 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah + db 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0feh, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 0d8h, 0d8h, 0d8h, 0dch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 078h, 0cch, 0cch, 0cch, 0d8h, 0cch, 0c6h, 0c6h, 0c6h, 0cch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 0c6h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 06ch, 06ch, 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0feh, 0c6h, 060h, 030h, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 0d8h, 0d8h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0c0h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07eh, 018h, 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 06ch, 06ch, 06ch, 06ch, 0eeh, 000h, 000h, 000h, 000h + db 000h, 000h, 01eh, 030h, 018h, 00ch, 03eh, 066h, 066h, 066h, 066h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 0dbh, 0dbh, 0dbh, 07eh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 003h, 006h, 07eh, 0dbh, 0dbh, 0f3h, 07eh, 060h, 0c0h, 000h, 000h, 000h, 000h + db 000h, 000h, 01ch, 030h, 060h, 060h, 07ch, 060h, 060h, 060h, 030h, 01ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 000h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 00ch, 018h, 030h, 060h, 030h, 018h, 00ch, 000h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 00eh, 01bh, 01bh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h, 0d8h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 07eh, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 00fh, 00ch, 00ch, 00ch, 00ch, 00ch, 0ech, 06ch, 06ch, 03ch, 01ch, 000h, 000h, 000h, 000h + db 000h, 0d8h, 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7b6d LB 0x360 -> off=0x0 cb=000000000000012d uValue=00000000000c33ed 'vgafont14alt' +vgafont14alt: ; 0xc7b6d LB 0x12d + db 01dh, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h, 022h + db 000h, 063h, 063h, 063h, 022h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02bh, 000h + db 000h, 000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 02dh, 000h, 000h + db 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 04dh, 000h, 000h, 0c3h + db 0e7h, 0ffh, 0dbh, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 000h, 000h, 000h, 054h, 000h, 000h, 0ffh, 0dbh + db 099h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 056h, 000h, 000h, 0c3h, 0c3h, 0c3h + db 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h, 000h, 000h, 000h, 057h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h + db 0dbh, 0dbh, 0ffh, 066h, 066h, 000h, 000h, 000h, 058h, 000h, 000h, 0c3h, 0c3h, 066h, 03ch, 018h + db 03ch, 066h, 0c3h, 0c3h, 000h, 000h, 000h, 059h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 05ah, 000h, 000h, 0ffh, 0c3h, 086h, 00ch, 018h, 030h, 061h + db 0c3h, 0ffh, 000h, 000h, 000h, 06dh, 000h, 000h, 000h, 000h, 000h, 0e6h, 0ffh, 0dbh, 0dbh, 0dbh + db 0dbh, 000h, 000h, 000h, 076h, 000h, 000h, 000h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 000h, 000h, 000h, 077h, 000h, 000h, 000h, 000h, 000h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh, 066h, 000h + db 000h, 000h, 091h, 000h, 000h, 000h, 000h, 06eh, 03bh, 01bh, 07eh, 0d8h, 0dch, 077h, 000h, 000h + db 000h, 09bh, 000h, 018h, 018h, 07eh, 0c3h, 0c0h, 0c0h, 0c3h, 07eh, 018h, 018h, 000h, 000h, 000h + db 09dh, 000h, 000h, 0c3h, 066h, 03ch, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 000h, 000h, 000h, 09eh + db 000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 0f3h, 000h, 000h, 000h, 0f1h, 000h + db 000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 0ffh, 000h, 000h, 000h, 0f6h, 000h, 000h + db 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7c9a LB 0x233 -> off=0x0 cb=0000000000000144 uValue=00000000000c351a 'vgafont16alt' +vgafont16alt: ; 0xc7c9a LB 0x144 + db 01dh, 000h, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h + db 000h, 030h, 000h, 000h, 03ch, 066h, 0c3h, 0c3h, 0dbh, 0dbh, 0c3h, 0c3h, 066h, 03ch, 000h, 000h + db 000h, 000h, 04dh, 000h, 000h, 0c3h, 0e7h, 0ffh, 0ffh, 0dbh, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 000h + db 000h, 000h, 000h, 054h, 000h, 000h, 0ffh, 0dbh, 099h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch + db 000h, 000h, 000h, 000h, 056h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 066h, 03ch + db 018h, 000h, 000h, 000h, 000h, 057h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh + db 066h, 066h, 000h, 000h, 000h, 000h, 058h, 000h, 000h, 0c3h, 0c3h, 066h, 03ch, 018h, 018h, 03ch + db 066h, 0c3h, 0c3h, 000h, 000h, 000h, 000h, 059h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 05ah, 000h, 000h, 0ffh, 0c3h, 086h, 00ch, 018h + db 030h, 060h, 0c1h, 0c3h, 0ffh, 000h, 000h, 000h, 000h, 06dh, 000h, 000h, 000h, 000h, 000h, 0e6h + db 0ffh, 0dbh, 0dbh, 0dbh, 0dbh, 0dbh, 000h, 000h, 000h, 000h, 076h, 000h, 000h, 000h, 000h, 000h + db 0c3h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h, 000h, 000h, 000h, 000h, 077h, 000h, 000h, 000h, 000h + db 000h, 0c3h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh, 066h, 000h, 000h, 000h, 000h, 078h, 000h, 000h, 000h + db 000h, 000h, 0c3h, 066h, 03ch, 018h, 03ch, 066h, 0c3h, 000h, 000h, 000h, 000h, 091h, 000h, 000h + db 000h, 000h, 000h, 06eh, 03bh, 01bh, 07eh, 0d8h, 0dch, 077h, 000h, 000h, 000h, 000h, 09bh, 000h + db 018h, 018h, 07eh, 0c3h, 0c0h, 0c0h, 0c0h, 0c3h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 09dh + db 000h, 000h, 0c3h, 066h, 03ch, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 09eh, 000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 066h, 0f3h, 000h, 000h, 000h + db 000h, 0abh, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 060h, 0ceh, 09bh, 006h, 00ch, 01fh + db 000h, 000h, 0ach, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 066h, 0ceh, 096h, 03eh, 006h + db 006h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7dde LB 0xef -> off=0x0 cb=0000000000000008 uValue=00000000000c365e '_cga_msr' +_cga_msr: ; 0xc7dde LB 0x8 + db 02ch, 028h, 02dh, 029h, 02ah, 02eh, 01eh, 029h + ; disGetNextSymbol 0xc7de6 LB 0xe7 -> off=0x0 cb=0000000000000008 uValue=00000000000c3666 'line_to_vpti_200' +line_to_vpti_200: ; 0xc7de6 LB 0x8 + db 000h, 001h, 002h, 003h, 0ffh, 0ffh, 0ffh, 007h + ; disGetNextSymbol 0xc7dee LB 0xdf -> off=0x0 cb=0000000000000008 uValue=00000000000c366e 'line_to_vpti_350' +line_to_vpti_350: ; 0xc7dee LB 0x8 + db 013h, 014h, 015h, 016h, 0ffh, 0ffh, 0ffh, 007h + ; disGetNextSymbol 0xc7df6 LB 0xd7 -> off=0x0 cb=0000000000000008 uValue=00000000000c3676 'line_to_vpti_400' +line_to_vpti_400: ; 0xc7df6 LB 0x8 + db 017h, 017h, 018h, 018h, 0ffh, 0ffh, 0ffh, 019h + ; disGetNextSymbol 0xc7dfe LB 0xcf -> off=0x0 cb=0000000000000004 uValue=00000000000c367e 'row_tbl' +row_tbl: ; 0xc7dfe LB 0x4 + dd 02b190e00h + ; disGetNextSymbol 0xc7e02 LB 0xcb -> off=0x0 cb=0000000000000015 uValue=00000000000c3682 '_vbebios_copyright' +_vbebios_copyright: ; 0xc7e02 LB 0x15 + db 'VirtualBox VESA BIOS', 000h + ; disGetNextSymbol 0xc7e17 LB 0xb6 -> off=0x0 cb=000000000000001d uValue=00000000000c3697 '_vbebios_vendor_name' +_vbebios_vendor_name: ; 0xc7e17 LB 0x1d + db 'Oracle and/or its affiliates', 000h + ; disGetNextSymbol 0xc7e34 LB 0x99 -> off=0x0 cb=0000000000000021 uValue=00000000000c36b4 '_vbebios_product_name' +_vbebios_product_name: ; 0xc7e34 LB 0x21 + db 'Oracle VM VirtualBox VBE Adapter', 000h + ; disGetNextSymbol 0xc7e55 LB 0x78 -> off=0x0 cb=0000000000000024 uValue=00000000000c36d5 '_vbebios_product_revision' +_vbebios_product_revision: ; 0xc7e55 LB 0x24 + db 'Oracle VM VirtualBox Version 7.0.14', 000h + ; disGetNextSymbol 0xc7e79 LB 0x54 -> off=0x0 cb=000000000000002b uValue=00000000000c36f9 '_vbebios_info_string' +_vbebios_info_string: ; 0xc7e79 LB 0x2b + db 'VirtualBox VBE Display Adapter enabled', 00dh, 00ah, 00dh, 00ah, 000h + ; disGetNextSymbol 0xc7ea4 LB 0x29 -> off=0x0 cb=0000000000000029 uValue=00000000000c3724 '_no_vbebios_info_string' +_no_vbebios_info_string: ; 0xc7ea4 LB 0x29 + db 'No VirtualBox VBE support available!', 00dh, 00ah, 00dh, 00ah, 000h + + ; Padding 0x1 bytes at 0xc7ecd + db 001h + +section CONST progbits vstart=0x7ece align=1 ; size=0x0 class=DATA group=DGROUP + +section CONST2 progbits vstart=0x7ece align=1 ; size=0x0 class=DATA group=DGROUP + + ; Padding 0x132 bytes at 0xc7ece + db 000h, 000h, 000h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 02fh, 068h, 06fh, 06dh, 065h + db 02fh, 073h, 062h, 075h, 072h, 063h, 068h, 069h, 06ch, 02fh, 076h, 062h, 05fh, 073h, 072h, 063h + db 02fh, 062h, 072h, 061h, 06eh, 063h, 068h, 065h, 073h, 02fh, 056h, 042h, 06fh, 078h, 02dh, 037h + db 02eh, 030h, 02fh, 06fh, 075h, 074h, 02fh, 06ch, 069h, 06eh, 075h, 078h, 02eh, 061h, 06dh, 064h + db 036h, 034h, 02fh, 072h, 065h, 06ch, 065h, 061h, 073h, 065h, 02fh, 06fh, 062h, 06ah, 02fh, 056h + db 042h, 06fh, 078h, 056h, 067h, 061h, 042h, 069h, 06fh, 073h, 032h, 038h, 036h, 02fh, 056h, 042h + db 06fh, 078h, 056h, 067h, 061h, 042h, 069h, 06fh, 073h, 032h, 038h, 036h, 02eh, 073h, 079h, 06dh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 0e2h diff --git a/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.md5sum b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.md5sum new file mode 100644 index 00000000..2f608321 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative286.md5sum @@ -0,0 +1 @@ +9431df94586df05b1873d86a27b77eb5 *VBoxVgaBios286.rom diff --git a/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.asm b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.asm new file mode 100644 index 00000000..9b6c7100 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.asm @@ -0,0 +1,8704 @@ +; $Id: VBoxVgaBiosAlternative386.asm $ +;; @file +; Auto Generated source file. Do not edit. +; + +; +; Source file: vgarom.asm +; +; ============================================================================================ +; +; Copyright (C) 2001,2002 the LGPL VGABios developers Team +; +; This library is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2 of the License, or (at your option) any later version. +; +; This library 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 +; Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this library; if not, write to the Free Software +; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; +; ============================================================================================ +; +; This VGA Bios is specific to the plex86/bochs Emulated VGA card. +; You can NOT drive any physical vga card with it. +; +; ============================================================================================ +; + +; +; Source file: vberom.asm +; +; ============================================================================================ +; +; Copyright (C) 2002 Jeroen Janssen +; +; This library is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2 of the License, or (at your option) any later version. +; +; This library 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 +; Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this library; if not, write to the Free Software +; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; +; ============================================================================================ +; +; This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +; You can NOT drive any physical vga card with it. +; +; ============================================================================================ +; +; This VBE Bios is based on information taken from : +; - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +; +; ============================================================================================ + +; +; Source file: vgabios.c +; +; // ============================================================================================ +; +; vgabios.c +; +; // ============================================================================================ +; // +; // Copyright (C) 2001,2002 the LGPL VGABios developers Team +; // +; // This library is free software; you can redistribute it and/or +; // modify it under the terms of the GNU Lesser General Public +; // License as published by the Free Software Foundation; either +; // version 2 of the License, or (at your option) any later version. +; // +; // This library 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 +; // Lesser General Public License for more details. +; // +; // You should have received a copy of the GNU Lesser General Public +; // License along with this library; if not, write to the Free Software +; // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; // +; // ============================================================================================ +; // +; // This VGA Bios is specific to the plex86/bochs Emulated VGA card. +; // You can NOT drive any physical vga card with it. +; // +; // ============================================================================================ +; // +; // This file contains code ripped from : +; // - rombios.c of plex86 +; // +; // This VGA Bios contains fonts from : +; // - fntcol16.zip (c) by Joseph Gil avalable at : +; // ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip +; // These fonts are public domain +; // +; // This VGA Bios is based on information taken from : +; // - Kevin Lawton's vga card emulation for bochs/plex86 +; // - Ralf Brown's interrupts list available at http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html +; // - Finn Thogersons' VGADOC4b available at http://home.worldonline.dk/~finth/ +; // - Michael Abrash's Graphics Programming Black Book +; // - Francois Gervais' book "programmation des cartes graphiques cga-ega-vga" edited by sybex +; // - DOSEMU 1.0.1 source code for several tables values and formulas +; // +; // Thanks for patches, comments and ideas to : +; // - techt@pikeonline.net +; // +; // ============================================================================================ + +; +; Source file: vbe.c +; +; // ============================================================================================ +; // +; // Copyright (C) 2002 Jeroen Janssen +; // +; // This library is free software; you can redistribute it and/or +; // modify it under the terms of the GNU Lesser General Public +; // License as published by the Free Software Foundation; either +; // version 2 of the License, or (at your option) any later version. +; // +; // This library 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 +; // Lesser General Public License for more details. +; // +; // You should have received a copy of the GNU Lesser General Public +; // License along with this library; if not, write to the Free Software +; // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; // +; // ============================================================================================ +; // +; // This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +; // You can NOT drive any physical vga card with it. +; // +; // ============================================================================================ +; // +; // This VBE Bios is based on information taken from : +; // - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +; // +; // ============================================================================================ + +; +; Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice +; other than GPL or LGPL is available it will apply instead, Oracle elects to use only +; the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where +; a choice of LGPL license versions is made available with the language indicating +; that LGPLv2 or any later version may be used, or where a choice of which version +; of the LGPL is applied is otherwise unspecified. +; + + + + + +section VGAROM progbits vstart=0x0 align=1 ; size=0x907 class=CODE group=AUTO + ; disGetNextSymbol 0xc0000 LB 0x907 -> off=0x28 cb=0000000000000548 uValue=00000000000c0028 'vgabios_int10_handler' + db 055h, 0aah, 040h, 0ebh, 01dh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 049h, 042h + db 04dh, 000h, 00eh, 01fh, 0fch, 0e9h, 03ch, 00ah +vgabios_int10_handler: ; 0xc0028 LB 0x548 + pushfw ; 9c ; 0xc0028 vgarom.asm:91 + cmp ah, 00fh ; 80 fc 0f ; 0xc0029 vgarom.asm:104 + jne short 00034h ; 75 06 ; 0xc002c vgarom.asm:105 + call 0017dh ; e8 4c 01 ; 0xc002e vgarom.asm:106 + jmp near 000edh ; e9 b9 00 ; 0xc0031 vgarom.asm:107 + cmp ah, 01ah ; 80 fc 1a ; 0xc0034 vgarom.asm:109 + jne short 0003fh ; 75 06 ; 0xc0037 vgarom.asm:110 + call 00532h ; e8 f6 04 ; 0xc0039 vgarom.asm:111 + jmp near 000edh ; e9 ae 00 ; 0xc003c vgarom.asm:112 + cmp ah, 00bh ; 80 fc 0b ; 0xc003f vgarom.asm:114 + jne short 0004ah ; 75 06 ; 0xc0042 vgarom.asm:115 + call 000efh ; e8 a8 00 ; 0xc0044 vgarom.asm:116 + jmp near 000edh ; e9 a3 00 ; 0xc0047 vgarom.asm:117 + cmp ax, 01103h ; 3d 03 11 ; 0xc004a vgarom.asm:119 + jne short 00055h ; 75 06 ; 0xc004d vgarom.asm:120 + call 00429h ; e8 d7 03 ; 0xc004f vgarom.asm:121 + jmp near 000edh ; e9 98 00 ; 0xc0052 vgarom.asm:122 + cmp ah, 012h ; 80 fc 12 ; 0xc0055 vgarom.asm:124 + jne short 00097h ; 75 3d ; 0xc0058 vgarom.asm:125 + cmp bl, 010h ; 80 fb 10 ; 0xc005a vgarom.asm:126 + jne short 00065h ; 75 06 ; 0xc005d vgarom.asm:127 + call 00436h ; e8 d4 03 ; 0xc005f vgarom.asm:128 + jmp near 000edh ; e9 88 00 ; 0xc0062 vgarom.asm:129 + cmp bl, 030h ; 80 fb 30 ; 0xc0065 vgarom.asm:131 + jne short 0006fh ; 75 05 ; 0xc0068 vgarom.asm:132 + call 00459h ; e8 ec 03 ; 0xc006a vgarom.asm:133 + jmp short 000edh ; eb 7e ; 0xc006d vgarom.asm:134 + cmp bl, 031h ; 80 fb 31 ; 0xc006f vgarom.asm:136 + jne short 00079h ; 75 05 ; 0xc0072 vgarom.asm:137 + call 004ach ; e8 35 04 ; 0xc0074 vgarom.asm:138 + jmp short 000edh ; eb 74 ; 0xc0077 vgarom.asm:139 + cmp bl, 032h ; 80 fb 32 ; 0xc0079 vgarom.asm:141 + jne short 00083h ; 75 05 ; 0xc007c vgarom.asm:142 + call 004ceh ; e8 4d 04 ; 0xc007e vgarom.asm:143 + jmp short 000edh ; eb 6a ; 0xc0081 vgarom.asm:144 + cmp bl, 033h ; 80 fb 33 ; 0xc0083 vgarom.asm:146 + jne short 0008dh ; 75 05 ; 0xc0086 vgarom.asm:147 + call 004ech ; e8 61 04 ; 0xc0088 vgarom.asm:148 + jmp short 000edh ; eb 60 ; 0xc008b vgarom.asm:149 + cmp bl, 034h ; 80 fb 34 ; 0xc008d vgarom.asm:151 + jne short 000e1h ; 75 4f ; 0xc0090 vgarom.asm:152 + call 00510h ; e8 7b 04 ; 0xc0092 vgarom.asm:153 + jmp short 000edh ; eb 56 ; 0xc0095 vgarom.asm:154 + cmp ax, 0101bh ; 3d 1b 10 ; 0xc0097 vgarom.asm:156 + je short 000e1h ; 74 45 ; 0xc009a vgarom.asm:157 + cmp ah, 010h ; 80 fc 10 ; 0xc009c vgarom.asm:158 + jne short 000a6h ; 75 05 ; 0xc009f vgarom.asm:162 + call 001a4h ; e8 00 01 ; 0xc00a1 vgarom.asm:164 + jmp short 000edh ; eb 47 ; 0xc00a4 vgarom.asm:165 + cmp ah, 04fh ; 80 fc 4f ; 0xc00a6 vgarom.asm:168 + jne short 000e1h ; 75 36 ; 0xc00a9 vgarom.asm:169 + cmp AL, strict byte 003h ; 3c 03 ; 0xc00ab vgarom.asm:170 + jne short 000b4h ; 75 05 ; 0xc00ad vgarom.asm:171 + call 007d2h ; e8 20 07 ; 0xc00af vgarom.asm:172 + jmp short 000edh ; eb 39 ; 0xc00b2 vgarom.asm:173 + cmp AL, strict byte 005h ; 3c 05 ; 0xc00b4 vgarom.asm:175 + jne short 000bdh ; 75 05 ; 0xc00b6 vgarom.asm:176 + call 007f7h ; e8 3c 07 ; 0xc00b8 vgarom.asm:177 + jmp short 000edh ; eb 30 ; 0xc00bb vgarom.asm:178 + cmp AL, strict byte 007h ; 3c 07 ; 0xc00bd vgarom.asm:180 + jne short 000c6h ; 75 05 ; 0xc00bf vgarom.asm:181 + call 00824h ; e8 60 07 ; 0xc00c1 vgarom.asm:182 + jmp short 000edh ; eb 27 ; 0xc00c4 vgarom.asm:183 + cmp AL, strict byte 008h ; 3c 08 ; 0xc00c6 vgarom.asm:185 + jne short 000cfh ; 75 05 ; 0xc00c8 vgarom.asm:186 + call 00858h ; e8 8b 07 ; 0xc00ca vgarom.asm:187 + jmp short 000edh ; eb 1e ; 0xc00cd vgarom.asm:188 + cmp AL, strict byte 009h ; 3c 09 ; 0xc00cf vgarom.asm:190 + jne short 000d8h ; 75 05 ; 0xc00d1 vgarom.asm:191 + call 0088fh ; e8 b9 07 ; 0xc00d3 vgarom.asm:192 + jmp short 000edh ; eb 15 ; 0xc00d6 vgarom.asm:193 + cmp AL, strict byte 00ah ; 3c 0a ; 0xc00d8 vgarom.asm:195 + jne short 000e1h ; 75 05 ; 0xc00da vgarom.asm:196 + call 008f3h ; e8 14 08 ; 0xc00dc vgarom.asm:197 + jmp short 000edh ; eb 0c ; 0xc00df vgarom.asm:198 + push ES ; 06 ; 0xc00e1 vgarom.asm:202 + push DS ; 1e ; 0xc00e2 vgarom.asm:203 + pushaw ; 60 ; 0xc00e3 vgarom.asm:107 + push CS ; 0e ; 0xc00e4 vgarom.asm:207 + pop DS ; 1f ; 0xc00e5 vgarom.asm:208 + cld ; fc ; 0xc00e6 vgarom.asm:209 + call 036ach ; e8 c2 35 ; 0xc00e7 vgarom.asm:210 + popaw ; 61 ; 0xc00ea vgarom.asm:124 + pop DS ; 1f ; 0xc00eb vgarom.asm:213 + pop ES ; 07 ; 0xc00ec vgarom.asm:214 + popfw ; 9d ; 0xc00ed vgarom.asm:216 + iret ; cf ; 0xc00ee vgarom.asm:217 + cmp bh, 000h ; 80 ff 00 ; 0xc00ef vgarom.asm:222 + je short 000fah ; 74 06 ; 0xc00f2 vgarom.asm:223 + cmp bh, 001h ; 80 ff 01 ; 0xc00f4 vgarom.asm:224 + je short 0014bh ; 74 52 ; 0xc00f7 vgarom.asm:225 + retn ; c3 ; 0xc00f9 vgarom.asm:229 + push ax ; 50 ; 0xc00fa vgarom.asm:231 + push bx ; 53 ; 0xc00fb vgarom.asm:232 + push cx ; 51 ; 0xc00fc vgarom.asm:233 + push dx ; 52 ; 0xc00fd vgarom.asm:234 + push DS ; 1e ; 0xc00fe vgarom.asm:235 + mov dx, strict word 00040h ; ba 40 00 ; 0xc00ff vgarom.asm:236 + mov ds, dx ; 8e da ; 0xc0102 vgarom.asm:237 + mov dx, 003dah ; ba da 03 ; 0xc0104 vgarom.asm:238 + in AL, DX ; ec ; 0xc0107 vgarom.asm:239 + cmp byte [word 00049h], 003h ; 80 3e 49 00 03 ; 0xc0108 vgarom.asm:240 + jbe short 0013eh ; 76 2f ; 0xc010d vgarom.asm:241 + mov dx, 003c0h ; ba c0 03 ; 0xc010f vgarom.asm:242 + mov AL, strict byte 000h ; b0 00 ; 0xc0112 vgarom.asm:243 + out DX, AL ; ee ; 0xc0114 vgarom.asm:244 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0115 vgarom.asm:245 + and AL, strict byte 00fh ; 24 0f ; 0xc0117 vgarom.asm:246 + test AL, strict byte 008h ; a8 08 ; 0xc0119 vgarom.asm:247 + je short 0011fh ; 74 02 ; 0xc011b vgarom.asm:248 + add AL, strict byte 008h ; 04 08 ; 0xc011d vgarom.asm:249 + out DX, AL ; ee ; 0xc011f vgarom.asm:251 + mov CL, strict byte 001h ; b1 01 ; 0xc0120 vgarom.asm:252 + and bl, 010h ; 80 e3 10 ; 0xc0122 vgarom.asm:253 + mov dx, 003c0h ; ba c0 03 ; 0xc0125 vgarom.asm:255 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc0128 vgarom.asm:256 + out DX, AL ; ee ; 0xc012a vgarom.asm:257 + mov dx, 003c1h ; ba c1 03 ; 0xc012b vgarom.asm:258 + in AL, DX ; ec ; 0xc012e vgarom.asm:259 + and AL, strict byte 0efh ; 24 ef ; 0xc012f vgarom.asm:260 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc0131 vgarom.asm:261 + mov dx, 003c0h ; ba c0 03 ; 0xc0133 vgarom.asm:262 + out DX, AL ; ee ; 0xc0136 vgarom.asm:263 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc0137 vgarom.asm:264 + cmp cl, 004h ; 80 f9 04 ; 0xc0139 vgarom.asm:265 + jne short 00125h ; 75 e7 ; 0xc013c vgarom.asm:266 + mov AL, strict byte 020h ; b0 20 ; 0xc013e vgarom.asm:268 + out DX, AL ; ee ; 0xc0140 vgarom.asm:269 + mov dx, 003dah ; ba da 03 ; 0xc0141 vgarom.asm:271 + in AL, DX ; ec ; 0xc0144 vgarom.asm:272 + pop DS ; 1f ; 0xc0145 vgarom.asm:274 + pop dx ; 5a ; 0xc0146 vgarom.asm:275 + pop cx ; 59 ; 0xc0147 vgarom.asm:276 + pop bx ; 5b ; 0xc0148 vgarom.asm:277 + pop ax ; 58 ; 0xc0149 vgarom.asm:278 + retn ; c3 ; 0xc014a vgarom.asm:279 + push ax ; 50 ; 0xc014b vgarom.asm:281 + push bx ; 53 ; 0xc014c vgarom.asm:282 + push cx ; 51 ; 0xc014d vgarom.asm:283 + push dx ; 52 ; 0xc014e vgarom.asm:284 + mov dx, 003dah ; ba da 03 ; 0xc014f vgarom.asm:285 + in AL, DX ; ec ; 0xc0152 vgarom.asm:286 + mov CL, strict byte 001h ; b1 01 ; 0xc0153 vgarom.asm:287 + and bl, 001h ; 80 e3 01 ; 0xc0155 vgarom.asm:288 + mov dx, 003c0h ; ba c0 03 ; 0xc0158 vgarom.asm:290 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc015b vgarom.asm:291 + out DX, AL ; ee ; 0xc015d vgarom.asm:292 + mov dx, 003c1h ; ba c1 03 ; 0xc015e vgarom.asm:293 + in AL, DX ; ec ; 0xc0161 vgarom.asm:294 + and AL, strict byte 0feh ; 24 fe ; 0xc0162 vgarom.asm:295 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc0164 vgarom.asm:296 + mov dx, 003c0h ; ba c0 03 ; 0xc0166 vgarom.asm:297 + out DX, AL ; ee ; 0xc0169 vgarom.asm:298 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc016a vgarom.asm:299 + cmp cl, 004h ; 80 f9 04 ; 0xc016c vgarom.asm:300 + jne short 00158h ; 75 e7 ; 0xc016f vgarom.asm:301 + mov AL, strict byte 020h ; b0 20 ; 0xc0171 vgarom.asm:302 + out DX, AL ; ee ; 0xc0173 vgarom.asm:303 + mov dx, 003dah ; ba da 03 ; 0xc0174 vgarom.asm:305 + in AL, DX ; ec ; 0xc0177 vgarom.asm:306 + pop dx ; 5a ; 0xc0178 vgarom.asm:308 + pop cx ; 59 ; 0xc0179 vgarom.asm:309 + pop bx ; 5b ; 0xc017a vgarom.asm:310 + pop ax ; 58 ; 0xc017b vgarom.asm:311 + retn ; c3 ; 0xc017c vgarom.asm:312 + push DS ; 1e ; 0xc017d vgarom.asm:317 + mov ax, strict word 00040h ; b8 40 00 ; 0xc017e vgarom.asm:318 + mov ds, ax ; 8e d8 ; 0xc0181 vgarom.asm:319 + push bx ; 53 ; 0xc0183 vgarom.asm:320 + mov bx, strict word 00062h ; bb 62 00 ; 0xc0184 vgarom.asm:321 + mov al, byte [bx] ; 8a 07 ; 0xc0187 vgarom.asm:322 + pop bx ; 5b ; 0xc0189 vgarom.asm:323 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc018a vgarom.asm:324 + push bx ; 53 ; 0xc018c vgarom.asm:325 + mov bx, 00087h ; bb 87 00 ; 0xc018d vgarom.asm:326 + mov ah, byte [bx] ; 8a 27 ; 0xc0190 vgarom.asm:327 + and ah, 080h ; 80 e4 80 ; 0xc0192 vgarom.asm:328 + mov bx, strict word 00049h ; bb 49 00 ; 0xc0195 vgarom.asm:329 + mov al, byte [bx] ; 8a 07 ; 0xc0198 vgarom.asm:330 + db 00ah, 0c4h + ; or al, ah ; 0a c4 ; 0xc019a vgarom.asm:331 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc019c vgarom.asm:332 + mov ah, byte [bx] ; 8a 27 ; 0xc019f vgarom.asm:333 + pop bx ; 5b ; 0xc01a1 vgarom.asm:334 + pop DS ; 1f ; 0xc01a2 vgarom.asm:335 + retn ; c3 ; 0xc01a3 vgarom.asm:336 + cmp AL, strict byte 000h ; 3c 00 ; 0xc01a4 vgarom.asm:341 + jne short 001aah ; 75 02 ; 0xc01a6 vgarom.asm:342 + jmp short 0020bh ; eb 61 ; 0xc01a8 vgarom.asm:343 + cmp AL, strict byte 001h ; 3c 01 ; 0xc01aa vgarom.asm:345 + jne short 001b0h ; 75 02 ; 0xc01ac vgarom.asm:346 + jmp short 00229h ; eb 79 ; 0xc01ae vgarom.asm:347 + cmp AL, strict byte 002h ; 3c 02 ; 0xc01b0 vgarom.asm:349 + jne short 001b6h ; 75 02 ; 0xc01b2 vgarom.asm:350 + jmp short 00231h ; eb 7b ; 0xc01b4 vgarom.asm:351 + cmp AL, strict byte 003h ; 3c 03 ; 0xc01b6 vgarom.asm:353 + jne short 001bdh ; 75 03 ; 0xc01b8 vgarom.asm:354 + jmp near 00262h ; e9 a5 00 ; 0xc01ba vgarom.asm:355 + cmp AL, strict byte 007h ; 3c 07 ; 0xc01bd vgarom.asm:357 + jne short 001c4h ; 75 03 ; 0xc01bf vgarom.asm:358 + jmp near 0028ch ; e9 c8 00 ; 0xc01c1 vgarom.asm:359 + cmp AL, strict byte 008h ; 3c 08 ; 0xc01c4 vgarom.asm:361 + jne short 001cbh ; 75 03 ; 0xc01c6 vgarom.asm:362 + jmp near 002b4h ; e9 e9 00 ; 0xc01c8 vgarom.asm:363 + cmp AL, strict byte 009h ; 3c 09 ; 0xc01cb vgarom.asm:365 + jne short 001d2h ; 75 03 ; 0xc01cd vgarom.asm:366 + jmp near 002c2h ; e9 f0 00 ; 0xc01cf vgarom.asm:367 + cmp AL, strict byte 010h ; 3c 10 ; 0xc01d2 vgarom.asm:369 + jne short 001d9h ; 75 03 ; 0xc01d4 vgarom.asm:370 + jmp near 00307h ; e9 2e 01 ; 0xc01d6 vgarom.asm:371 + cmp AL, strict byte 012h ; 3c 12 ; 0xc01d9 vgarom.asm:373 + jne short 001e0h ; 75 03 ; 0xc01db vgarom.asm:374 + jmp near 00320h ; e9 40 01 ; 0xc01dd vgarom.asm:375 + cmp AL, strict byte 013h ; 3c 13 ; 0xc01e0 vgarom.asm:377 + jne short 001e7h ; 75 03 ; 0xc01e2 vgarom.asm:378 + jmp near 00348h ; e9 61 01 ; 0xc01e4 vgarom.asm:379 + cmp AL, strict byte 015h ; 3c 15 ; 0xc01e7 vgarom.asm:381 + jne short 001eeh ; 75 03 ; 0xc01e9 vgarom.asm:382 + jmp near 0038fh ; e9 a1 01 ; 0xc01eb vgarom.asm:383 + cmp AL, strict byte 017h ; 3c 17 ; 0xc01ee vgarom.asm:385 + jne short 001f5h ; 75 03 ; 0xc01f0 vgarom.asm:386 + jmp near 003aah ; e9 b5 01 ; 0xc01f2 vgarom.asm:387 + cmp AL, strict byte 018h ; 3c 18 ; 0xc01f5 vgarom.asm:389 + jne short 001fch ; 75 03 ; 0xc01f7 vgarom.asm:390 + jmp near 003d2h ; e9 d6 01 ; 0xc01f9 vgarom.asm:391 + cmp AL, strict byte 019h ; 3c 19 ; 0xc01fc vgarom.asm:393 + jne short 00203h ; 75 03 ; 0xc01fe vgarom.asm:394 + jmp near 003ddh ; e9 da 01 ; 0xc0200 vgarom.asm:395 + cmp AL, strict byte 01ah ; 3c 1a ; 0xc0203 vgarom.asm:397 + jne short 0020ah ; 75 03 ; 0xc0205 vgarom.asm:398 + jmp near 003e8h ; e9 de 01 ; 0xc0207 vgarom.asm:399 + retn ; c3 ; 0xc020a vgarom.asm:404 + cmp bl, 014h ; 80 fb 14 ; 0xc020b vgarom.asm:407 + jnbe short 00228h ; 77 18 ; 0xc020e vgarom.asm:408 + push ax ; 50 ; 0xc0210 vgarom.asm:409 + push dx ; 52 ; 0xc0211 vgarom.asm:410 + mov dx, 003dah ; ba da 03 ; 0xc0212 vgarom.asm:411 + in AL, DX ; ec ; 0xc0215 vgarom.asm:412 + mov dx, 003c0h ; ba c0 03 ; 0xc0216 vgarom.asm:413 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0219 vgarom.asm:414 + out DX, AL ; ee ; 0xc021b vgarom.asm:415 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc021c vgarom.asm:416 + out DX, AL ; ee ; 0xc021e vgarom.asm:417 + mov AL, strict byte 020h ; b0 20 ; 0xc021f vgarom.asm:418 + out DX, AL ; ee ; 0xc0221 vgarom.asm:419 + mov dx, 003dah ; ba da 03 ; 0xc0222 vgarom.asm:421 + in AL, DX ; ec ; 0xc0225 vgarom.asm:422 + pop dx ; 5a ; 0xc0226 vgarom.asm:424 + pop ax ; 58 ; 0xc0227 vgarom.asm:425 + retn ; c3 ; 0xc0228 vgarom.asm:427 + push bx ; 53 ; 0xc0229 vgarom.asm:432 + mov BL, strict byte 011h ; b3 11 ; 0xc022a vgarom.asm:433 + call 0020bh ; e8 dc ff ; 0xc022c vgarom.asm:434 + pop bx ; 5b ; 0xc022f vgarom.asm:435 + retn ; c3 ; 0xc0230 vgarom.asm:436 + push ax ; 50 ; 0xc0231 vgarom.asm:441 + push bx ; 53 ; 0xc0232 vgarom.asm:442 + push cx ; 51 ; 0xc0233 vgarom.asm:443 + push dx ; 52 ; 0xc0234 vgarom.asm:444 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc0235 vgarom.asm:445 + mov dx, 003dah ; ba da 03 ; 0xc0237 vgarom.asm:446 + in AL, DX ; ec ; 0xc023a vgarom.asm:447 + mov CL, strict byte 000h ; b1 00 ; 0xc023b vgarom.asm:448 + mov dx, 003c0h ; ba c0 03 ; 0xc023d vgarom.asm:449 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc0240 vgarom.asm:451 + out DX, AL ; ee ; 0xc0242 vgarom.asm:452 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0243 vgarom.asm:453 + out DX, AL ; ee ; 0xc0246 vgarom.asm:454 + inc bx ; 43 ; 0xc0247 vgarom.asm:455 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc0248 vgarom.asm:456 + cmp cl, 010h ; 80 f9 10 ; 0xc024a vgarom.asm:457 + jne short 00240h ; 75 f1 ; 0xc024d vgarom.asm:458 + mov AL, strict byte 011h ; b0 11 ; 0xc024f vgarom.asm:459 + out DX, AL ; ee ; 0xc0251 vgarom.asm:460 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0252 vgarom.asm:461 + out DX, AL ; ee ; 0xc0255 vgarom.asm:462 + mov AL, strict byte 020h ; b0 20 ; 0xc0256 vgarom.asm:463 + out DX, AL ; ee ; 0xc0258 vgarom.asm:464 + mov dx, 003dah ; ba da 03 ; 0xc0259 vgarom.asm:466 + in AL, DX ; ec ; 0xc025c vgarom.asm:467 + pop dx ; 5a ; 0xc025d vgarom.asm:469 + pop cx ; 59 ; 0xc025e vgarom.asm:470 + pop bx ; 5b ; 0xc025f vgarom.asm:471 + pop ax ; 58 ; 0xc0260 vgarom.asm:472 + retn ; c3 ; 0xc0261 vgarom.asm:473 + push ax ; 50 ; 0xc0262 vgarom.asm:478 + push bx ; 53 ; 0xc0263 vgarom.asm:479 + push dx ; 52 ; 0xc0264 vgarom.asm:480 + mov dx, 003dah ; ba da 03 ; 0xc0265 vgarom.asm:481 + in AL, DX ; ec ; 0xc0268 vgarom.asm:482 + mov dx, 003c0h ; ba c0 03 ; 0xc0269 vgarom.asm:483 + mov AL, strict byte 010h ; b0 10 ; 0xc026c vgarom.asm:484 + out DX, AL ; ee ; 0xc026e vgarom.asm:485 + mov dx, 003c1h ; ba c1 03 ; 0xc026f vgarom.asm:486 + in AL, DX ; ec ; 0xc0272 vgarom.asm:487 + and AL, strict byte 0f7h ; 24 f7 ; 0xc0273 vgarom.asm:488 + and bl, 001h ; 80 e3 01 ; 0xc0275 vgarom.asm:489 + sal bl, 003h ; c0 e3 03 ; 0xc0278 vgarom.asm:491 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc027b vgarom.asm:497 + mov dx, 003c0h ; ba c0 03 ; 0xc027d vgarom.asm:498 + out DX, AL ; ee ; 0xc0280 vgarom.asm:499 + mov AL, strict byte 020h ; b0 20 ; 0xc0281 vgarom.asm:500 + out DX, AL ; ee ; 0xc0283 vgarom.asm:501 + mov dx, 003dah ; ba da 03 ; 0xc0284 vgarom.asm:503 + in AL, DX ; ec ; 0xc0287 vgarom.asm:504 + pop dx ; 5a ; 0xc0288 vgarom.asm:506 + pop bx ; 5b ; 0xc0289 vgarom.asm:507 + pop ax ; 58 ; 0xc028a vgarom.asm:508 + retn ; c3 ; 0xc028b vgarom.asm:509 + cmp bl, 014h ; 80 fb 14 ; 0xc028c vgarom.asm:514 + jnbe short 002b3h ; 77 22 ; 0xc028f vgarom.asm:515 + push ax ; 50 ; 0xc0291 vgarom.asm:516 + push dx ; 52 ; 0xc0292 vgarom.asm:517 + mov dx, 003dah ; ba da 03 ; 0xc0293 vgarom.asm:518 + in AL, DX ; ec ; 0xc0296 vgarom.asm:519 + mov dx, 003c0h ; ba c0 03 ; 0xc0297 vgarom.asm:520 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc029a vgarom.asm:521 + out DX, AL ; ee ; 0xc029c vgarom.asm:522 + mov dx, 003c1h ; ba c1 03 ; 0xc029d vgarom.asm:523 + in AL, DX ; ec ; 0xc02a0 vgarom.asm:524 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc02a1 vgarom.asm:525 + mov dx, 003dah ; ba da 03 ; 0xc02a3 vgarom.asm:526 + in AL, DX ; ec ; 0xc02a6 vgarom.asm:527 + mov dx, 003c0h ; ba c0 03 ; 0xc02a7 vgarom.asm:528 + mov AL, strict byte 020h ; b0 20 ; 0xc02aa vgarom.asm:529 + out DX, AL ; ee ; 0xc02ac vgarom.asm:530 + mov dx, 003dah ; ba da 03 ; 0xc02ad vgarom.asm:532 + in AL, DX ; ec ; 0xc02b0 vgarom.asm:533 + pop dx ; 5a ; 0xc02b1 vgarom.asm:535 + pop ax ; 58 ; 0xc02b2 vgarom.asm:536 + retn ; c3 ; 0xc02b3 vgarom.asm:538 + push ax ; 50 ; 0xc02b4 vgarom.asm:543 + push bx ; 53 ; 0xc02b5 vgarom.asm:544 + mov BL, strict byte 011h ; b3 11 ; 0xc02b6 vgarom.asm:545 + call 0028ch ; e8 d1 ff ; 0xc02b8 vgarom.asm:546 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc02bb vgarom.asm:547 + pop bx ; 5b ; 0xc02bd vgarom.asm:548 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc02be vgarom.asm:549 + pop ax ; 58 ; 0xc02c0 vgarom.asm:550 + retn ; c3 ; 0xc02c1 vgarom.asm:551 + push ax ; 50 ; 0xc02c2 vgarom.asm:556 + push bx ; 53 ; 0xc02c3 vgarom.asm:557 + push cx ; 51 ; 0xc02c4 vgarom.asm:558 + push dx ; 52 ; 0xc02c5 vgarom.asm:559 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc02c6 vgarom.asm:560 + mov CL, strict byte 000h ; b1 00 ; 0xc02c8 vgarom.asm:561 + mov dx, 003dah ; ba da 03 ; 0xc02ca vgarom.asm:563 + in AL, DX ; ec ; 0xc02cd vgarom.asm:564 + mov dx, 003c0h ; ba c0 03 ; 0xc02ce vgarom.asm:565 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc02d1 vgarom.asm:566 + out DX, AL ; ee ; 0xc02d3 vgarom.asm:567 + mov dx, 003c1h ; ba c1 03 ; 0xc02d4 vgarom.asm:568 + in AL, DX ; ec ; 0xc02d7 vgarom.asm:569 + mov byte [es:bx], al ; 26 88 07 ; 0xc02d8 vgarom.asm:570 + inc bx ; 43 ; 0xc02db vgarom.asm:571 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc02dc vgarom.asm:572 + cmp cl, 010h ; 80 f9 10 ; 0xc02de vgarom.asm:573 + jne short 002cah ; 75 e7 ; 0xc02e1 vgarom.asm:574 + mov dx, 003dah ; ba da 03 ; 0xc02e3 vgarom.asm:575 + in AL, DX ; ec ; 0xc02e6 vgarom.asm:576 + mov dx, 003c0h ; ba c0 03 ; 0xc02e7 vgarom.asm:577 + mov AL, strict byte 011h ; b0 11 ; 0xc02ea vgarom.asm:578 + out DX, AL ; ee ; 0xc02ec vgarom.asm:579 + mov dx, 003c1h ; ba c1 03 ; 0xc02ed vgarom.asm:580 + in AL, DX ; ec ; 0xc02f0 vgarom.asm:581 + mov byte [es:bx], al ; 26 88 07 ; 0xc02f1 vgarom.asm:582 + mov dx, 003dah ; ba da 03 ; 0xc02f4 vgarom.asm:583 + in AL, DX ; ec ; 0xc02f7 vgarom.asm:584 + mov dx, 003c0h ; ba c0 03 ; 0xc02f8 vgarom.asm:585 + mov AL, strict byte 020h ; b0 20 ; 0xc02fb vgarom.asm:586 + out DX, AL ; ee ; 0xc02fd vgarom.asm:587 + mov dx, 003dah ; ba da 03 ; 0xc02fe vgarom.asm:589 + in AL, DX ; ec ; 0xc0301 vgarom.asm:590 + pop dx ; 5a ; 0xc0302 vgarom.asm:592 + pop cx ; 59 ; 0xc0303 vgarom.asm:593 + pop bx ; 5b ; 0xc0304 vgarom.asm:594 + pop ax ; 58 ; 0xc0305 vgarom.asm:595 + retn ; c3 ; 0xc0306 vgarom.asm:596 + push ax ; 50 ; 0xc0307 vgarom.asm:601 + push dx ; 52 ; 0xc0308 vgarom.asm:602 + mov dx, 003c8h ; ba c8 03 ; 0xc0309 vgarom.asm:603 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc030c vgarom.asm:604 + out DX, AL ; ee ; 0xc030e vgarom.asm:605 + mov dx, 003c9h ; ba c9 03 ; 0xc030f vgarom.asm:606 + pop ax ; 58 ; 0xc0312 vgarom.asm:607 + push ax ; 50 ; 0xc0313 vgarom.asm:608 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc0314 vgarom.asm:609 + out DX, AL ; ee ; 0xc0316 vgarom.asm:610 + db 08ah, 0c5h + ; mov al, ch ; 8a c5 ; 0xc0317 vgarom.asm:611 + out DX, AL ; ee ; 0xc0319 vgarom.asm:612 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc031a vgarom.asm:613 + out DX, AL ; ee ; 0xc031c vgarom.asm:614 + pop dx ; 5a ; 0xc031d vgarom.asm:615 + pop ax ; 58 ; 0xc031e vgarom.asm:616 + retn ; c3 ; 0xc031f vgarom.asm:617 + push ax ; 50 ; 0xc0320 vgarom.asm:622 + push bx ; 53 ; 0xc0321 vgarom.asm:623 + push cx ; 51 ; 0xc0322 vgarom.asm:624 + push dx ; 52 ; 0xc0323 vgarom.asm:625 + mov dx, 003c8h ; ba c8 03 ; 0xc0324 vgarom.asm:626 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0327 vgarom.asm:627 + out DX, AL ; ee ; 0xc0329 vgarom.asm:628 + pop dx ; 5a ; 0xc032a vgarom.asm:629 + push dx ; 52 ; 0xc032b vgarom.asm:630 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc032c vgarom.asm:631 + mov dx, 003c9h ; ba c9 03 ; 0xc032e vgarom.asm:632 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0331 vgarom.asm:634 + out DX, AL ; ee ; 0xc0334 vgarom.asm:635 + inc bx ; 43 ; 0xc0335 vgarom.asm:636 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0336 vgarom.asm:637 + out DX, AL ; ee ; 0xc0339 vgarom.asm:638 + inc bx ; 43 ; 0xc033a vgarom.asm:639 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc033b vgarom.asm:640 + out DX, AL ; ee ; 0xc033e vgarom.asm:641 + inc bx ; 43 ; 0xc033f vgarom.asm:642 + dec cx ; 49 ; 0xc0340 vgarom.asm:643 + jne short 00331h ; 75 ee ; 0xc0341 vgarom.asm:644 + pop dx ; 5a ; 0xc0343 vgarom.asm:645 + pop cx ; 59 ; 0xc0344 vgarom.asm:646 + pop bx ; 5b ; 0xc0345 vgarom.asm:647 + pop ax ; 58 ; 0xc0346 vgarom.asm:648 + retn ; c3 ; 0xc0347 vgarom.asm:649 + push ax ; 50 ; 0xc0348 vgarom.asm:654 + push bx ; 53 ; 0xc0349 vgarom.asm:655 + push dx ; 52 ; 0xc034a vgarom.asm:656 + mov dx, 003dah ; ba da 03 ; 0xc034b vgarom.asm:657 + in AL, DX ; ec ; 0xc034e vgarom.asm:658 + mov dx, 003c0h ; ba c0 03 ; 0xc034f vgarom.asm:659 + mov AL, strict byte 010h ; b0 10 ; 0xc0352 vgarom.asm:660 + out DX, AL ; ee ; 0xc0354 vgarom.asm:661 + mov dx, 003c1h ; ba c1 03 ; 0xc0355 vgarom.asm:662 + in AL, DX ; ec ; 0xc0358 vgarom.asm:663 + and bl, 001h ; 80 e3 01 ; 0xc0359 vgarom.asm:664 + jne short 0036bh ; 75 0d ; 0xc035c vgarom.asm:665 + and AL, strict byte 07fh ; 24 7f ; 0xc035e vgarom.asm:666 + sal bh, 007h ; c0 e7 07 ; 0xc0360 vgarom.asm:668 + db 00ah, 0c7h + ; or al, bh ; 0a c7 ; 0xc0363 vgarom.asm:678 + mov dx, 003c0h ; ba c0 03 ; 0xc0365 vgarom.asm:679 + out DX, AL ; ee ; 0xc0368 vgarom.asm:680 + jmp short 00384h ; eb 19 ; 0xc0369 vgarom.asm:681 + push ax ; 50 ; 0xc036b vgarom.asm:683 + mov dx, 003dah ; ba da 03 ; 0xc036c vgarom.asm:684 + in AL, DX ; ec ; 0xc036f vgarom.asm:685 + mov dx, 003c0h ; ba c0 03 ; 0xc0370 vgarom.asm:686 + mov AL, strict byte 014h ; b0 14 ; 0xc0373 vgarom.asm:687 + out DX, AL ; ee ; 0xc0375 vgarom.asm:688 + pop ax ; 58 ; 0xc0376 vgarom.asm:689 + and AL, strict byte 080h ; 24 80 ; 0xc0377 vgarom.asm:690 + jne short 0037eh ; 75 03 ; 0xc0379 vgarom.asm:691 + sal bh, 002h ; c0 e7 02 ; 0xc037b vgarom.asm:693 + and bh, 00fh ; 80 e7 0f ; 0xc037e vgarom.asm:699 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc0381 vgarom.asm:700 + out DX, AL ; ee ; 0xc0383 vgarom.asm:701 + mov AL, strict byte 020h ; b0 20 ; 0xc0384 vgarom.asm:703 + out DX, AL ; ee ; 0xc0386 vgarom.asm:704 + mov dx, 003dah ; ba da 03 ; 0xc0387 vgarom.asm:706 + in AL, DX ; ec ; 0xc038a vgarom.asm:707 + pop dx ; 5a ; 0xc038b vgarom.asm:709 + pop bx ; 5b ; 0xc038c vgarom.asm:710 + pop ax ; 58 ; 0xc038d vgarom.asm:711 + retn ; c3 ; 0xc038e vgarom.asm:712 + push ax ; 50 ; 0xc038f vgarom.asm:717 + push dx ; 52 ; 0xc0390 vgarom.asm:718 + mov dx, 003c7h ; ba c7 03 ; 0xc0391 vgarom.asm:719 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0394 vgarom.asm:720 + out DX, AL ; ee ; 0xc0396 vgarom.asm:721 + pop ax ; 58 ; 0xc0397 vgarom.asm:722 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc0398 vgarom.asm:723 + mov dx, 003c9h ; ba c9 03 ; 0xc039a vgarom.asm:724 + in AL, DX ; ec ; 0xc039d vgarom.asm:725 + xchg al, ah ; 86 e0 ; 0xc039e vgarom.asm:726 + push ax ; 50 ; 0xc03a0 vgarom.asm:727 + in AL, DX ; ec ; 0xc03a1 vgarom.asm:728 + db 08ah, 0e8h + ; mov ch, al ; 8a e8 ; 0xc03a2 vgarom.asm:729 + in AL, DX ; ec ; 0xc03a4 vgarom.asm:730 + db 08ah, 0c8h + ; mov cl, al ; 8a c8 ; 0xc03a5 vgarom.asm:731 + pop dx ; 5a ; 0xc03a7 vgarom.asm:732 + pop ax ; 58 ; 0xc03a8 vgarom.asm:733 + retn ; c3 ; 0xc03a9 vgarom.asm:734 + push ax ; 50 ; 0xc03aa vgarom.asm:739 + push bx ; 53 ; 0xc03ab vgarom.asm:740 + push cx ; 51 ; 0xc03ac vgarom.asm:741 + push dx ; 52 ; 0xc03ad vgarom.asm:742 + mov dx, 003c7h ; ba c7 03 ; 0xc03ae vgarom.asm:743 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc03b1 vgarom.asm:744 + out DX, AL ; ee ; 0xc03b3 vgarom.asm:745 + pop dx ; 5a ; 0xc03b4 vgarom.asm:746 + push dx ; 52 ; 0xc03b5 vgarom.asm:747 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc03b6 vgarom.asm:748 + mov dx, 003c9h ; ba c9 03 ; 0xc03b8 vgarom.asm:749 + in AL, DX ; ec ; 0xc03bb vgarom.asm:751 + mov byte [es:bx], al ; 26 88 07 ; 0xc03bc vgarom.asm:752 + inc bx ; 43 ; 0xc03bf vgarom.asm:753 + in AL, DX ; ec ; 0xc03c0 vgarom.asm:754 + mov byte [es:bx], al ; 26 88 07 ; 0xc03c1 vgarom.asm:755 + inc bx ; 43 ; 0xc03c4 vgarom.asm:756 + in AL, DX ; ec ; 0xc03c5 vgarom.asm:757 + mov byte [es:bx], al ; 26 88 07 ; 0xc03c6 vgarom.asm:758 + inc bx ; 43 ; 0xc03c9 vgarom.asm:759 + dec cx ; 49 ; 0xc03ca vgarom.asm:760 + jne short 003bbh ; 75 ee ; 0xc03cb vgarom.asm:761 + pop dx ; 5a ; 0xc03cd vgarom.asm:762 + pop cx ; 59 ; 0xc03ce vgarom.asm:763 + pop bx ; 5b ; 0xc03cf vgarom.asm:764 + pop ax ; 58 ; 0xc03d0 vgarom.asm:765 + retn ; c3 ; 0xc03d1 vgarom.asm:766 + push ax ; 50 ; 0xc03d2 vgarom.asm:771 + push dx ; 52 ; 0xc03d3 vgarom.asm:772 + mov dx, 003c6h ; ba c6 03 ; 0xc03d4 vgarom.asm:773 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc03d7 vgarom.asm:774 + out DX, AL ; ee ; 0xc03d9 vgarom.asm:775 + pop dx ; 5a ; 0xc03da vgarom.asm:776 + pop ax ; 58 ; 0xc03db vgarom.asm:777 + retn ; c3 ; 0xc03dc vgarom.asm:778 + push ax ; 50 ; 0xc03dd vgarom.asm:783 + push dx ; 52 ; 0xc03de vgarom.asm:784 + mov dx, 003c6h ; ba c6 03 ; 0xc03df vgarom.asm:785 + in AL, DX ; ec ; 0xc03e2 vgarom.asm:786 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc03e3 vgarom.asm:787 + pop dx ; 5a ; 0xc03e5 vgarom.asm:788 + pop ax ; 58 ; 0xc03e6 vgarom.asm:789 + retn ; c3 ; 0xc03e7 vgarom.asm:790 + push ax ; 50 ; 0xc03e8 vgarom.asm:795 + push dx ; 52 ; 0xc03e9 vgarom.asm:796 + mov dx, 003dah ; ba da 03 ; 0xc03ea vgarom.asm:797 + in AL, DX ; ec ; 0xc03ed vgarom.asm:798 + mov dx, 003c0h ; ba c0 03 ; 0xc03ee vgarom.asm:799 + mov AL, strict byte 010h ; b0 10 ; 0xc03f1 vgarom.asm:800 + out DX, AL ; ee ; 0xc03f3 vgarom.asm:801 + mov dx, 003c1h ; ba c1 03 ; 0xc03f4 vgarom.asm:802 + in AL, DX ; ec ; 0xc03f7 vgarom.asm:803 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc03f8 vgarom.asm:804 + shr bl, 007h ; c0 eb 07 ; 0xc03fa vgarom.asm:806 + mov dx, 003dah ; ba da 03 ; 0xc03fd vgarom.asm:816 + in AL, DX ; ec ; 0xc0400 vgarom.asm:817 + mov dx, 003c0h ; ba c0 03 ; 0xc0401 vgarom.asm:818 + mov AL, strict byte 014h ; b0 14 ; 0xc0404 vgarom.asm:819 + out DX, AL ; ee ; 0xc0406 vgarom.asm:820 + mov dx, 003c1h ; ba c1 03 ; 0xc0407 vgarom.asm:821 + in AL, DX ; ec ; 0xc040a vgarom.asm:822 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc040b vgarom.asm:823 + and bh, 00fh ; 80 e7 0f ; 0xc040d vgarom.asm:824 + test bl, 001h ; f6 c3 01 ; 0xc0410 vgarom.asm:825 + jne short 00418h ; 75 03 ; 0xc0413 vgarom.asm:826 + shr bh, 002h ; c0 ef 02 ; 0xc0415 vgarom.asm:828 + mov dx, 003dah ; ba da 03 ; 0xc0418 vgarom.asm:834 + in AL, DX ; ec ; 0xc041b vgarom.asm:835 + mov dx, 003c0h ; ba c0 03 ; 0xc041c vgarom.asm:836 + mov AL, strict byte 020h ; b0 20 ; 0xc041f vgarom.asm:837 + out DX, AL ; ee ; 0xc0421 vgarom.asm:838 + mov dx, 003dah ; ba da 03 ; 0xc0422 vgarom.asm:840 + in AL, DX ; ec ; 0xc0425 vgarom.asm:841 + pop dx ; 5a ; 0xc0426 vgarom.asm:843 + pop ax ; 58 ; 0xc0427 vgarom.asm:844 + retn ; c3 ; 0xc0428 vgarom.asm:845 + push ax ; 50 ; 0xc0429 vgarom.asm:850 + push dx ; 52 ; 0xc042a vgarom.asm:851 + mov dx, 003c4h ; ba c4 03 ; 0xc042b vgarom.asm:852 + db 08ah, 0e3h + ; mov ah, bl ; 8a e3 ; 0xc042e vgarom.asm:853 + mov AL, strict byte 003h ; b0 03 ; 0xc0430 vgarom.asm:854 + out DX, ax ; ef ; 0xc0432 vgarom.asm:855 + pop dx ; 5a ; 0xc0433 vgarom.asm:856 + pop ax ; 58 ; 0xc0434 vgarom.asm:857 + retn ; c3 ; 0xc0435 vgarom.asm:858 + push DS ; 1e ; 0xc0436 vgarom.asm:863 + push ax ; 50 ; 0xc0437 vgarom.asm:864 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0438 vgarom.asm:865 + mov ds, ax ; 8e d8 ; 0xc043b vgarom.asm:866 + db 032h, 0edh + ; xor ch, ch ; 32 ed ; 0xc043d vgarom.asm:867 + mov bx, 00088h ; bb 88 00 ; 0xc043f vgarom.asm:868 + mov cl, byte [bx] ; 8a 0f ; 0xc0442 vgarom.asm:869 + and cl, 00fh ; 80 e1 0f ; 0xc0444 vgarom.asm:870 + mov bx, strict word 00063h ; bb 63 00 ; 0xc0447 vgarom.asm:871 + mov ax, word [bx] ; 8b 07 ; 0xc044a vgarom.asm:872 + mov bx, strict word 00003h ; bb 03 00 ; 0xc044c vgarom.asm:873 + cmp ax, 003b4h ; 3d b4 03 ; 0xc044f vgarom.asm:874 + jne short 00456h ; 75 02 ; 0xc0452 vgarom.asm:875 + mov BH, strict byte 001h ; b7 01 ; 0xc0454 vgarom.asm:876 + pop ax ; 58 ; 0xc0456 vgarom.asm:878 + pop DS ; 1f ; 0xc0457 vgarom.asm:879 + retn ; c3 ; 0xc0458 vgarom.asm:880 + push DS ; 1e ; 0xc0459 vgarom.asm:888 + push bx ; 53 ; 0xc045a vgarom.asm:889 + push dx ; 52 ; 0xc045b vgarom.asm:890 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc045c vgarom.asm:891 + mov ax, strict word 00040h ; b8 40 00 ; 0xc045e vgarom.asm:892 + mov ds, ax ; 8e d8 ; 0xc0461 vgarom.asm:893 + mov bx, 00089h ; bb 89 00 ; 0xc0463 vgarom.asm:894 + mov al, byte [bx] ; 8a 07 ; 0xc0466 vgarom.asm:895 + mov bx, 00088h ; bb 88 00 ; 0xc0468 vgarom.asm:896 + mov ah, byte [bx] ; 8a 27 ; 0xc046b vgarom.asm:897 + cmp dl, 001h ; 80 fa 01 ; 0xc046d vgarom.asm:898 + je short 00487h ; 74 15 ; 0xc0470 vgarom.asm:899 + jc short 00491h ; 72 1d ; 0xc0472 vgarom.asm:900 + cmp dl, 002h ; 80 fa 02 ; 0xc0474 vgarom.asm:901 + je short 0047bh ; 74 02 ; 0xc0477 vgarom.asm:902 + jmp short 004a5h ; eb 2a ; 0xc0479 vgarom.asm:912 + and AL, strict byte 07fh ; 24 7f ; 0xc047b vgarom.asm:918 + or AL, strict byte 010h ; 0c 10 ; 0xc047d vgarom.asm:919 + and ah, 0f0h ; 80 e4 f0 ; 0xc047f vgarom.asm:920 + or ah, 009h ; 80 cc 09 ; 0xc0482 vgarom.asm:921 + jne short 0049bh ; 75 14 ; 0xc0485 vgarom.asm:922 + and AL, strict byte 06fh ; 24 6f ; 0xc0487 vgarom.asm:928 + and ah, 0f0h ; 80 e4 f0 ; 0xc0489 vgarom.asm:929 + or ah, 009h ; 80 cc 09 ; 0xc048c vgarom.asm:930 + jne short 0049bh ; 75 0a ; 0xc048f vgarom.asm:931 + and AL, strict byte 0efh ; 24 ef ; 0xc0491 vgarom.asm:937 + or AL, strict byte 080h ; 0c 80 ; 0xc0493 vgarom.asm:938 + and ah, 0f0h ; 80 e4 f0 ; 0xc0495 vgarom.asm:939 + or ah, 008h ; 80 cc 08 ; 0xc0498 vgarom.asm:940 + mov bx, 00089h ; bb 89 00 ; 0xc049b vgarom.asm:942 + mov byte [bx], al ; 88 07 ; 0xc049e vgarom.asm:943 + mov bx, 00088h ; bb 88 00 ; 0xc04a0 vgarom.asm:944 + mov byte [bx], ah ; 88 27 ; 0xc04a3 vgarom.asm:945 + mov ax, 01212h ; b8 12 12 ; 0xc04a5 vgarom.asm:947 + pop dx ; 5a ; 0xc04a8 vgarom.asm:948 + pop bx ; 5b ; 0xc04a9 vgarom.asm:949 + pop DS ; 1f ; 0xc04aa vgarom.asm:950 + retn ; c3 ; 0xc04ab vgarom.asm:951 + push DS ; 1e ; 0xc04ac vgarom.asm:960 + push bx ; 53 ; 0xc04ad vgarom.asm:961 + push dx ; 52 ; 0xc04ae vgarom.asm:962 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc04af vgarom.asm:963 + and dl, 001h ; 80 e2 01 ; 0xc04b1 vgarom.asm:964 + sal dl, 003h ; c0 e2 03 ; 0xc04b4 vgarom.asm:966 + mov ax, strict word 00040h ; b8 40 00 ; 0xc04b7 vgarom.asm:972 + mov ds, ax ; 8e d8 ; 0xc04ba vgarom.asm:973 + mov bx, 00089h ; bb 89 00 ; 0xc04bc vgarom.asm:974 + mov al, byte [bx] ; 8a 07 ; 0xc04bf vgarom.asm:975 + and AL, strict byte 0f7h ; 24 f7 ; 0xc04c1 vgarom.asm:976 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc04c3 vgarom.asm:977 + mov byte [bx], al ; 88 07 ; 0xc04c5 vgarom.asm:978 + mov ax, 01212h ; b8 12 12 ; 0xc04c7 vgarom.asm:979 + pop dx ; 5a ; 0xc04ca vgarom.asm:980 + pop bx ; 5b ; 0xc04cb vgarom.asm:981 + pop DS ; 1f ; 0xc04cc vgarom.asm:982 + retn ; c3 ; 0xc04cd vgarom.asm:983 + push bx ; 53 ; 0xc04ce vgarom.asm:987 + push dx ; 52 ; 0xc04cf vgarom.asm:988 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc04d0 vgarom.asm:989 + and bl, 001h ; 80 e3 01 ; 0xc04d2 vgarom.asm:990 + xor bl, 001h ; 80 f3 01 ; 0xc04d5 vgarom.asm:991 + sal bl, 1 ; d0 e3 ; 0xc04d8 vgarom.asm:992 + mov dx, 003cch ; ba cc 03 ; 0xc04da vgarom.asm:993 + in AL, DX ; ec ; 0xc04dd vgarom.asm:994 + and AL, strict byte 0fdh ; 24 fd ; 0xc04de vgarom.asm:995 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc04e0 vgarom.asm:996 + mov dx, 003c2h ; ba c2 03 ; 0xc04e2 vgarom.asm:997 + out DX, AL ; ee ; 0xc04e5 vgarom.asm:998 + mov ax, 01212h ; b8 12 12 ; 0xc04e6 vgarom.asm:999 + pop dx ; 5a ; 0xc04e9 vgarom.asm:1000 + pop bx ; 5b ; 0xc04ea vgarom.asm:1001 + retn ; c3 ; 0xc04eb vgarom.asm:1002 + push DS ; 1e ; 0xc04ec vgarom.asm:1006 + push bx ; 53 ; 0xc04ed vgarom.asm:1007 + push dx ; 52 ; 0xc04ee vgarom.asm:1008 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc04ef vgarom.asm:1009 + and dl, 001h ; 80 e2 01 ; 0xc04f1 vgarom.asm:1010 + xor dl, 001h ; 80 f2 01 ; 0xc04f4 vgarom.asm:1011 + sal dl, 1 ; d0 e2 ; 0xc04f7 vgarom.asm:1012 + mov ax, strict word 00040h ; b8 40 00 ; 0xc04f9 vgarom.asm:1013 + mov ds, ax ; 8e d8 ; 0xc04fc vgarom.asm:1014 + mov bx, 00089h ; bb 89 00 ; 0xc04fe vgarom.asm:1015 + mov al, byte [bx] ; 8a 07 ; 0xc0501 vgarom.asm:1016 + and AL, strict byte 0fdh ; 24 fd ; 0xc0503 vgarom.asm:1017 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc0505 vgarom.asm:1018 + mov byte [bx], al ; 88 07 ; 0xc0507 vgarom.asm:1019 + mov ax, 01212h ; b8 12 12 ; 0xc0509 vgarom.asm:1020 + pop dx ; 5a ; 0xc050c vgarom.asm:1021 + pop bx ; 5b ; 0xc050d vgarom.asm:1022 + pop DS ; 1f ; 0xc050e vgarom.asm:1023 + retn ; c3 ; 0xc050f vgarom.asm:1024 + push DS ; 1e ; 0xc0510 vgarom.asm:1028 + push bx ; 53 ; 0xc0511 vgarom.asm:1029 + push dx ; 52 ; 0xc0512 vgarom.asm:1030 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc0513 vgarom.asm:1031 + and dl, 001h ; 80 e2 01 ; 0xc0515 vgarom.asm:1032 + xor dl, 001h ; 80 f2 01 ; 0xc0518 vgarom.asm:1033 + mov ax, strict word 00040h ; b8 40 00 ; 0xc051b vgarom.asm:1034 + mov ds, ax ; 8e d8 ; 0xc051e vgarom.asm:1035 + mov bx, 00089h ; bb 89 00 ; 0xc0520 vgarom.asm:1036 + mov al, byte [bx] ; 8a 07 ; 0xc0523 vgarom.asm:1037 + and AL, strict byte 0feh ; 24 fe ; 0xc0525 vgarom.asm:1038 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc0527 vgarom.asm:1039 + mov byte [bx], al ; 88 07 ; 0xc0529 vgarom.asm:1040 + mov ax, 01212h ; b8 12 12 ; 0xc052b vgarom.asm:1041 + pop dx ; 5a ; 0xc052e vgarom.asm:1042 + pop bx ; 5b ; 0xc052f vgarom.asm:1043 + pop DS ; 1f ; 0xc0530 vgarom.asm:1044 + retn ; c3 ; 0xc0531 vgarom.asm:1045 + cmp AL, strict byte 000h ; 3c 00 ; 0xc0532 vgarom.asm:1050 + je short 0053bh ; 74 05 ; 0xc0534 vgarom.asm:1051 + cmp AL, strict byte 001h ; 3c 01 ; 0xc0536 vgarom.asm:1052 + je short 00550h ; 74 16 ; 0xc0538 vgarom.asm:1053 + retn ; c3 ; 0xc053a vgarom.asm:1057 + push DS ; 1e ; 0xc053b vgarom.asm:1059 + push ax ; 50 ; 0xc053c vgarom.asm:1060 + mov ax, strict word 00040h ; b8 40 00 ; 0xc053d vgarom.asm:1061 + mov ds, ax ; 8e d8 ; 0xc0540 vgarom.asm:1062 + mov bx, 0008ah ; bb 8a 00 ; 0xc0542 vgarom.asm:1063 + mov al, byte [bx] ; 8a 07 ; 0xc0545 vgarom.asm:1064 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc0547 vgarom.asm:1065 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc0549 vgarom.asm:1066 + pop ax ; 58 ; 0xc054b vgarom.asm:1067 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc054c vgarom.asm:1068 + pop DS ; 1f ; 0xc054e vgarom.asm:1069 + retn ; c3 ; 0xc054f vgarom.asm:1070 + push DS ; 1e ; 0xc0550 vgarom.asm:1072 + push ax ; 50 ; 0xc0551 vgarom.asm:1073 + push bx ; 53 ; 0xc0552 vgarom.asm:1074 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0553 vgarom.asm:1075 + mov ds, ax ; 8e d8 ; 0xc0556 vgarom.asm:1076 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc0558 vgarom.asm:1077 + mov bx, 0008ah ; bb 8a 00 ; 0xc055a vgarom.asm:1078 + mov byte [bx], al ; 88 07 ; 0xc055d vgarom.asm:1079 + pop bx ; 5b ; 0xc055f vgarom.asm:1089 + pop ax ; 58 ; 0xc0560 vgarom.asm:1090 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc0561 vgarom.asm:1091 + pop DS ; 1f ; 0xc0563 vgarom.asm:1092 + retn ; c3 ; 0xc0564 vgarom.asm:1093 + times 0xb db 0 + ; disGetNextSymbol 0xc0570 LB 0x397 -> off=0x0 cb=0000000000000007 uValue=00000000000c0570 'do_out_dx_ax' +do_out_dx_ax: ; 0xc0570 LB 0x7 + xchg ah, al ; 86 c4 ; 0xc0570 vberom.asm:69 + out DX, AL ; ee ; 0xc0572 vberom.asm:70 + xchg ah, al ; 86 c4 ; 0xc0573 vberom.asm:71 + out DX, AL ; ee ; 0xc0575 vberom.asm:72 + retn ; c3 ; 0xc0576 vberom.asm:73 + ; disGetNextSymbol 0xc0577 LB 0x390 -> off=0x0 cb=0000000000000040 uValue=00000000000c0577 'do_in_ax_dx' +do_in_ax_dx: ; 0xc0577 LB 0x40 + in AL, DX ; ec ; 0xc0577 vberom.asm:76 + xchg ah, al ; 86 c4 ; 0xc0578 vberom.asm:77 + in AL, DX ; ec ; 0xc057a vberom.asm:78 + retn ; c3 ; 0xc057b vberom.asm:79 + push ax ; 50 ; 0xc057c vberom.asm:90 + push dx ; 52 ; 0xc057d vberom.asm:91 + mov dx, 003dah ; ba da 03 ; 0xc057e vberom.asm:92 + in AL, DX ; ec ; 0xc0581 vberom.asm:94 + test AL, strict byte 008h ; a8 08 ; 0xc0582 vberom.asm:95 + je short 00581h ; 74 fb ; 0xc0584 vberom.asm:96 + pop dx ; 5a ; 0xc0586 vberom.asm:97 + pop ax ; 58 ; 0xc0587 vberom.asm:98 + retn ; c3 ; 0xc0588 vberom.asm:99 + push ax ; 50 ; 0xc0589 vberom.asm:102 + push dx ; 52 ; 0xc058a vberom.asm:103 + mov dx, 003dah ; ba da 03 ; 0xc058b vberom.asm:104 + in AL, DX ; ec ; 0xc058e vberom.asm:106 + test AL, strict byte 008h ; a8 08 ; 0xc058f vberom.asm:107 + jne short 0058eh ; 75 fb ; 0xc0591 vberom.asm:108 + pop dx ; 5a ; 0xc0593 vberom.asm:109 + pop ax ; 58 ; 0xc0594 vberom.asm:110 + retn ; c3 ; 0xc0595 vberom.asm:111 + push dx ; 52 ; 0xc0596 vberom.asm:116 + mov dx, 001ceh ; ba ce 01 ; 0xc0597 vberom.asm:117 + mov ax, strict word 00003h ; b8 03 00 ; 0xc059a vberom.asm:118 + call 00570h ; e8 d0 ff ; 0xc059d vberom.asm:119 + mov dx, 001cfh ; ba cf 01 ; 0xc05a0 vberom.asm:120 + call 00577h ; e8 d1 ff ; 0xc05a3 vberom.asm:121 + cmp AL, strict byte 004h ; 3c 04 ; 0xc05a6 vberom.asm:122 + jbe short 005b5h ; 76 0b ; 0xc05a8 vberom.asm:123 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc05aa vberom.asm:124 + shr ah, 003h ; c0 ec 03 ; 0xc05ac vberom.asm:126 + test AL, strict byte 007h ; a8 07 ; 0xc05af vberom.asm:132 + je short 005b5h ; 74 02 ; 0xc05b1 vberom.asm:133 + db 0feh, 0c4h + ; inc ah ; fe c4 ; 0xc05b3 vberom.asm:134 + pop dx ; 5a ; 0xc05b5 vberom.asm:136 + retn ; c3 ; 0xc05b6 vberom.asm:137 + ; disGetNextSymbol 0xc05b7 LB 0x350 -> off=0x0 cb=0000000000000026 uValue=00000000000c05b7 '_dispi_get_max_bpp' +_dispi_get_max_bpp: ; 0xc05b7 LB 0x26 + push dx ; 52 ; 0xc05b7 vberom.asm:142 + push bx ; 53 ; 0xc05b8 vberom.asm:143 + call 005f1h ; e8 35 00 ; 0xc05b9 vberom.asm:144 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc05bc vberom.asm:145 + or ax, strict byte 00002h ; 83 c8 02 ; 0xc05be vberom.asm:146 + call 005ddh ; e8 19 00 ; 0xc05c1 vberom.asm:147 + mov dx, 001ceh ; ba ce 01 ; 0xc05c4 vberom.asm:148 + mov ax, strict word 00003h ; b8 03 00 ; 0xc05c7 vberom.asm:149 + call 00570h ; e8 a3 ff ; 0xc05ca vberom.asm:150 + mov dx, 001cfh ; ba cf 01 ; 0xc05cd vberom.asm:151 + call 00577h ; e8 a4 ff ; 0xc05d0 vberom.asm:152 + push ax ; 50 ; 0xc05d3 vberom.asm:153 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc05d4 vberom.asm:154 + call 005ddh ; e8 04 00 ; 0xc05d6 vberom.asm:155 + pop ax ; 58 ; 0xc05d9 vberom.asm:156 + pop bx ; 5b ; 0xc05da vberom.asm:157 + pop dx ; 5a ; 0xc05db vberom.asm:158 + retn ; c3 ; 0xc05dc vberom.asm:159 + ; disGetNextSymbol 0xc05dd LB 0x32a -> off=0x0 cb=0000000000000026 uValue=00000000000c05dd 'dispi_set_enable_' +dispi_set_enable_: ; 0xc05dd LB 0x26 + push dx ; 52 ; 0xc05dd vberom.asm:162 + push ax ; 50 ; 0xc05de vberom.asm:163 + mov dx, 001ceh ; ba ce 01 ; 0xc05df vberom.asm:164 + mov ax, strict word 00004h ; b8 04 00 ; 0xc05e2 vberom.asm:165 + call 00570h ; e8 88 ff ; 0xc05e5 vberom.asm:166 + pop ax ; 58 ; 0xc05e8 vberom.asm:167 + mov dx, 001cfh ; ba cf 01 ; 0xc05e9 vberom.asm:168 + call 00570h ; e8 81 ff ; 0xc05ec vberom.asm:169 + pop dx ; 5a ; 0xc05ef vberom.asm:170 + retn ; c3 ; 0xc05f0 vberom.asm:171 + push dx ; 52 ; 0xc05f1 vberom.asm:174 + mov dx, 001ceh ; ba ce 01 ; 0xc05f2 vberom.asm:175 + mov ax, strict word 00004h ; b8 04 00 ; 0xc05f5 vberom.asm:176 + call 00570h ; e8 75 ff ; 0xc05f8 vberom.asm:177 + mov dx, 001cfh ; ba cf 01 ; 0xc05fb vberom.asm:178 + call 00577h ; e8 76 ff ; 0xc05fe vberom.asm:179 + pop dx ; 5a ; 0xc0601 vberom.asm:180 + retn ; c3 ; 0xc0602 vberom.asm:181 + ; disGetNextSymbol 0xc0603 LB 0x304 -> off=0x0 cb=0000000000000026 uValue=00000000000c0603 'dispi_set_bank_' +dispi_set_bank_: ; 0xc0603 LB 0x26 + push dx ; 52 ; 0xc0603 vberom.asm:184 + push ax ; 50 ; 0xc0604 vberom.asm:185 + mov dx, 001ceh ; ba ce 01 ; 0xc0605 vberom.asm:186 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0608 vberom.asm:187 + call 00570h ; e8 62 ff ; 0xc060b vberom.asm:188 + pop ax ; 58 ; 0xc060e vberom.asm:189 + mov dx, 001cfh ; ba cf 01 ; 0xc060f vberom.asm:190 + call 00570h ; e8 5b ff ; 0xc0612 vberom.asm:191 + pop dx ; 5a ; 0xc0615 vberom.asm:192 + retn ; c3 ; 0xc0616 vberom.asm:193 + push dx ; 52 ; 0xc0617 vberom.asm:196 + mov dx, 001ceh ; ba ce 01 ; 0xc0618 vberom.asm:197 + mov ax, strict word 00005h ; b8 05 00 ; 0xc061b vberom.asm:198 + call 00570h ; e8 4f ff ; 0xc061e vberom.asm:199 + mov dx, 001cfh ; ba cf 01 ; 0xc0621 vberom.asm:200 + call 00577h ; e8 50 ff ; 0xc0624 vberom.asm:201 + pop dx ; 5a ; 0xc0627 vberom.asm:202 + retn ; c3 ; 0xc0628 vberom.asm:203 + ; disGetNextSymbol 0xc0629 LB 0x2de -> off=0x0 cb=00000000000000a9 uValue=00000000000c0629 '_dispi_set_bank_farcall' +_dispi_set_bank_farcall: ; 0xc0629 LB 0xa9 + cmp bx, 00100h ; 81 fb 00 01 ; 0xc0629 vberom.asm:206 + je short 00653h ; 74 24 ; 0xc062d vberom.asm:207 + db 00bh, 0dbh + ; or bx, bx ; 0b db ; 0xc062f vberom.asm:208 + jne short 00665h ; 75 32 ; 0xc0631 vberom.asm:209 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc0633 vberom.asm:210 + push dx ; 52 ; 0xc0635 vberom.asm:211 + push ax ; 50 ; 0xc0636 vberom.asm:212 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0637 vberom.asm:213 + mov dx, 001ceh ; ba ce 01 ; 0xc063a vberom.asm:214 + call 00570h ; e8 30 ff ; 0xc063d vberom.asm:215 + pop ax ; 58 ; 0xc0640 vberom.asm:216 + mov dx, 001cfh ; ba cf 01 ; 0xc0641 vberom.asm:217 + call 00570h ; e8 29 ff ; 0xc0644 vberom.asm:218 + call 00577h ; e8 2d ff ; 0xc0647 vberom.asm:219 + pop dx ; 5a ; 0xc064a vberom.asm:220 + db 03bh, 0d0h + ; cmp dx, ax ; 3b d0 ; 0xc064b vberom.asm:221 + jne short 00665h ; 75 16 ; 0xc064d vberom.asm:222 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc064f vberom.asm:223 + retf ; cb ; 0xc0652 vberom.asm:224 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0653 vberom.asm:226 + mov dx, 001ceh ; ba ce 01 ; 0xc0656 vberom.asm:227 + call 00570h ; e8 14 ff ; 0xc0659 vberom.asm:228 + mov dx, 001cfh ; ba cf 01 ; 0xc065c vberom.asm:229 + call 00577h ; e8 15 ff ; 0xc065f vberom.asm:230 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc0662 vberom.asm:231 + retf ; cb ; 0xc0664 vberom.asm:232 + mov ax, 0014fh ; b8 4f 01 ; 0xc0665 vberom.asm:234 + retf ; cb ; 0xc0668 vberom.asm:235 + push dx ; 52 ; 0xc0669 vberom.asm:238 + push ax ; 50 ; 0xc066a vberom.asm:239 + mov dx, 001ceh ; ba ce 01 ; 0xc066b vberom.asm:240 + mov ax, strict word 00008h ; b8 08 00 ; 0xc066e vberom.asm:241 + call 00570h ; e8 fc fe ; 0xc0671 vberom.asm:242 + pop ax ; 58 ; 0xc0674 vberom.asm:243 + mov dx, 001cfh ; ba cf 01 ; 0xc0675 vberom.asm:244 + call 00570h ; e8 f5 fe ; 0xc0678 vberom.asm:245 + pop dx ; 5a ; 0xc067b vberom.asm:246 + retn ; c3 ; 0xc067c vberom.asm:247 + push dx ; 52 ; 0xc067d vberom.asm:250 + mov dx, 001ceh ; ba ce 01 ; 0xc067e vberom.asm:251 + mov ax, strict word 00008h ; b8 08 00 ; 0xc0681 vberom.asm:252 + call 00570h ; e8 e9 fe ; 0xc0684 vberom.asm:253 + mov dx, 001cfh ; ba cf 01 ; 0xc0687 vberom.asm:254 + call 00577h ; e8 ea fe ; 0xc068a vberom.asm:255 + pop dx ; 5a ; 0xc068d vberom.asm:256 + retn ; c3 ; 0xc068e vberom.asm:257 + push dx ; 52 ; 0xc068f vberom.asm:260 + push ax ; 50 ; 0xc0690 vberom.asm:261 + mov dx, 001ceh ; ba ce 01 ; 0xc0691 vberom.asm:262 + mov ax, strict word 00009h ; b8 09 00 ; 0xc0694 vberom.asm:263 + call 00570h ; e8 d6 fe ; 0xc0697 vberom.asm:264 + pop ax ; 58 ; 0xc069a vberom.asm:265 + mov dx, 001cfh ; ba cf 01 ; 0xc069b vberom.asm:266 + call 00570h ; e8 cf fe ; 0xc069e vberom.asm:267 + pop dx ; 5a ; 0xc06a1 vberom.asm:268 + retn ; c3 ; 0xc06a2 vberom.asm:269 + push dx ; 52 ; 0xc06a3 vberom.asm:272 + mov dx, 001ceh ; ba ce 01 ; 0xc06a4 vberom.asm:273 + mov ax, strict word 00009h ; b8 09 00 ; 0xc06a7 vberom.asm:274 + call 00570h ; e8 c3 fe ; 0xc06aa vberom.asm:275 + mov dx, 001cfh ; ba cf 01 ; 0xc06ad vberom.asm:276 + call 00577h ; e8 c4 fe ; 0xc06b0 vberom.asm:277 + pop dx ; 5a ; 0xc06b3 vberom.asm:278 + retn ; c3 ; 0xc06b4 vberom.asm:279 + push ax ; 50 ; 0xc06b5 vberom.asm:282 + push bx ; 53 ; 0xc06b6 vberom.asm:283 + push dx ; 52 ; 0xc06b7 vberom.asm:284 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc06b8 vberom.asm:285 + call 00596h ; e8 d9 fe ; 0xc06ba vberom.asm:286 + cmp AL, strict byte 004h ; 3c 04 ; 0xc06bd vberom.asm:287 + jnbe short 006c3h ; 77 02 ; 0xc06bf vberom.asm:288 + shr bx, 1 ; d1 eb ; 0xc06c1 vberom.asm:289 + shr bx, 003h ; c1 eb 03 ; 0xc06c3 vberom.asm:292 + mov dx, 003d4h ; ba d4 03 ; 0xc06c6 vberom.asm:298 + db 08ah, 0e3h + ; mov ah, bl ; 8a e3 ; 0xc06c9 vberom.asm:299 + mov AL, strict byte 013h ; b0 13 ; 0xc06cb vberom.asm:300 + out DX, ax ; ef ; 0xc06cd vberom.asm:301 + pop dx ; 5a ; 0xc06ce vberom.asm:302 + pop bx ; 5b ; 0xc06cf vberom.asm:303 + pop ax ; 58 ; 0xc06d0 vberom.asm:304 + retn ; c3 ; 0xc06d1 vberom.asm:305 + ; disGetNextSymbol 0xc06d2 LB 0x235 -> off=0x0 cb=00000000000000ed uValue=00000000000c06d2 '_vga_compat_setup' +_vga_compat_setup: ; 0xc06d2 LB 0xed + push ax ; 50 ; 0xc06d2 vberom.asm:308 + push dx ; 52 ; 0xc06d3 vberom.asm:309 + mov dx, 001ceh ; ba ce 01 ; 0xc06d4 vberom.asm:312 + mov ax, strict word 00001h ; b8 01 00 ; 0xc06d7 vberom.asm:313 + call 00570h ; e8 93 fe ; 0xc06da vberom.asm:314 + mov dx, 001cfh ; ba cf 01 ; 0xc06dd vberom.asm:315 + call 00577h ; e8 94 fe ; 0xc06e0 vberom.asm:316 + push ax ; 50 ; 0xc06e3 vberom.asm:317 + mov dx, 003d4h ; ba d4 03 ; 0xc06e4 vberom.asm:318 + mov ax, strict word 00011h ; b8 11 00 ; 0xc06e7 vberom.asm:319 + out DX, ax ; ef ; 0xc06ea vberom.asm:320 + pop ax ; 58 ; 0xc06eb vberom.asm:321 + push ax ; 50 ; 0xc06ec vberom.asm:322 + shr ax, 003h ; c1 e8 03 ; 0xc06ed vberom.asm:324 + dec ax ; 48 ; 0xc06f0 vberom.asm:330 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc06f1 vberom.asm:331 + mov AL, strict byte 001h ; b0 01 ; 0xc06f3 vberom.asm:332 + out DX, ax ; ef ; 0xc06f5 vberom.asm:333 + pop ax ; 58 ; 0xc06f6 vberom.asm:334 + call 006b5h ; e8 bb ff ; 0xc06f7 vberom.asm:335 + mov dx, 001ceh ; ba ce 01 ; 0xc06fa vberom.asm:338 + mov ax, strict word 00002h ; b8 02 00 ; 0xc06fd vberom.asm:339 + call 00570h ; e8 6d fe ; 0xc0700 vberom.asm:340 + mov dx, 001cfh ; ba cf 01 ; 0xc0703 vberom.asm:341 + call 00577h ; e8 6e fe ; 0xc0706 vberom.asm:342 + dec ax ; 48 ; 0xc0709 vberom.asm:343 + push ax ; 50 ; 0xc070a vberom.asm:344 + mov dx, 003d4h ; ba d4 03 ; 0xc070b vberom.asm:345 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc070e vberom.asm:346 + mov AL, strict byte 012h ; b0 12 ; 0xc0710 vberom.asm:347 + out DX, ax ; ef ; 0xc0712 vberom.asm:348 + pop ax ; 58 ; 0xc0713 vberom.asm:349 + mov AL, strict byte 007h ; b0 07 ; 0xc0714 vberom.asm:350 + out DX, AL ; ee ; 0xc0716 vberom.asm:351 + inc dx ; 42 ; 0xc0717 vberom.asm:352 + in AL, DX ; ec ; 0xc0718 vberom.asm:353 + and AL, strict byte 0bdh ; 24 bd ; 0xc0719 vberom.asm:354 + test ah, 001h ; f6 c4 01 ; 0xc071b vberom.asm:355 + je short 00722h ; 74 02 ; 0xc071e vberom.asm:356 + or AL, strict byte 002h ; 0c 02 ; 0xc0720 vberom.asm:357 + test ah, 002h ; f6 c4 02 ; 0xc0722 vberom.asm:359 + je short 00729h ; 74 02 ; 0xc0725 vberom.asm:360 + or AL, strict byte 040h ; 0c 40 ; 0xc0727 vberom.asm:361 + out DX, AL ; ee ; 0xc0729 vberom.asm:363 + mov dx, 003d4h ; ba d4 03 ; 0xc072a vberom.asm:366 + mov ax, strict word 00009h ; b8 09 00 ; 0xc072d vberom.asm:367 + out DX, AL ; ee ; 0xc0730 vberom.asm:368 + mov dx, 003d5h ; ba d5 03 ; 0xc0731 vberom.asm:369 + in AL, DX ; ec ; 0xc0734 vberom.asm:370 + and AL, strict byte 060h ; 24 60 ; 0xc0735 vberom.asm:371 + out DX, AL ; ee ; 0xc0737 vberom.asm:372 + mov dx, 003d4h ; ba d4 03 ; 0xc0738 vberom.asm:373 + mov AL, strict byte 017h ; b0 17 ; 0xc073b vberom.asm:374 + out DX, AL ; ee ; 0xc073d vberom.asm:375 + mov dx, 003d5h ; ba d5 03 ; 0xc073e vberom.asm:376 + in AL, DX ; ec ; 0xc0741 vberom.asm:377 + or AL, strict byte 003h ; 0c 03 ; 0xc0742 vberom.asm:378 + out DX, AL ; ee ; 0xc0744 vberom.asm:379 + mov dx, 003dah ; ba da 03 ; 0xc0745 vberom.asm:380 + in AL, DX ; ec ; 0xc0748 vberom.asm:381 + mov dx, 003c0h ; ba c0 03 ; 0xc0749 vberom.asm:382 + mov AL, strict byte 010h ; b0 10 ; 0xc074c vberom.asm:383 + out DX, AL ; ee ; 0xc074e vberom.asm:384 + mov dx, 003c1h ; ba c1 03 ; 0xc074f vberom.asm:385 + in AL, DX ; ec ; 0xc0752 vberom.asm:386 + or AL, strict byte 001h ; 0c 01 ; 0xc0753 vberom.asm:387 + mov dx, 003c0h ; ba c0 03 ; 0xc0755 vberom.asm:388 + out DX, AL ; ee ; 0xc0758 vberom.asm:389 + mov AL, strict byte 020h ; b0 20 ; 0xc0759 vberom.asm:390 + out DX, AL ; ee ; 0xc075b vberom.asm:391 + mov dx, 003ceh ; ba ce 03 ; 0xc075c vberom.asm:392 + mov ax, 00506h ; b8 06 05 ; 0xc075f vberom.asm:393 + out DX, ax ; ef ; 0xc0762 vberom.asm:394 + mov dx, 003c4h ; ba c4 03 ; 0xc0763 vberom.asm:395 + mov ax, 00f02h ; b8 02 0f ; 0xc0766 vberom.asm:396 + out DX, ax ; ef ; 0xc0769 vberom.asm:397 + mov dx, 001ceh ; ba ce 01 ; 0xc076a vberom.asm:400 + mov ax, strict word 00003h ; b8 03 00 ; 0xc076d vberom.asm:401 + call 00570h ; e8 fd fd ; 0xc0770 vberom.asm:402 + mov dx, 001cfh ; ba cf 01 ; 0xc0773 vberom.asm:403 + call 00577h ; e8 fe fd ; 0xc0776 vberom.asm:404 + cmp AL, strict byte 008h ; 3c 08 ; 0xc0779 vberom.asm:405 + jc short 007bdh ; 72 40 ; 0xc077b vberom.asm:406 + mov dx, 003d4h ; ba d4 03 ; 0xc077d vberom.asm:407 + mov AL, strict byte 014h ; b0 14 ; 0xc0780 vberom.asm:408 + out DX, AL ; ee ; 0xc0782 vberom.asm:409 + mov dx, 003d5h ; ba d5 03 ; 0xc0783 vberom.asm:410 + in AL, DX ; ec ; 0xc0786 vberom.asm:411 + or AL, strict byte 040h ; 0c 40 ; 0xc0787 vberom.asm:412 + out DX, AL ; ee ; 0xc0789 vberom.asm:413 + mov dx, 003dah ; ba da 03 ; 0xc078a vberom.asm:414 + in AL, DX ; ec ; 0xc078d vberom.asm:415 + mov dx, 003c0h ; ba c0 03 ; 0xc078e vberom.asm:416 + mov AL, strict byte 010h ; b0 10 ; 0xc0791 vberom.asm:417 + out DX, AL ; ee ; 0xc0793 vberom.asm:418 + mov dx, 003c1h ; ba c1 03 ; 0xc0794 vberom.asm:419 + in AL, DX ; ec ; 0xc0797 vberom.asm:420 + or AL, strict byte 040h ; 0c 40 ; 0xc0798 vberom.asm:421 + mov dx, 003c0h ; ba c0 03 ; 0xc079a vberom.asm:422 + out DX, AL ; ee ; 0xc079d vberom.asm:423 + mov AL, strict byte 020h ; b0 20 ; 0xc079e vberom.asm:424 + out DX, AL ; ee ; 0xc07a0 vberom.asm:425 + mov dx, 003c4h ; ba c4 03 ; 0xc07a1 vberom.asm:426 + mov AL, strict byte 004h ; b0 04 ; 0xc07a4 vberom.asm:427 + out DX, AL ; ee ; 0xc07a6 vberom.asm:428 + mov dx, 003c5h ; ba c5 03 ; 0xc07a7 vberom.asm:429 + in AL, DX ; ec ; 0xc07aa vberom.asm:430 + or AL, strict byte 008h ; 0c 08 ; 0xc07ab vberom.asm:431 + out DX, AL ; ee ; 0xc07ad vberom.asm:432 + mov dx, 003ceh ; ba ce 03 ; 0xc07ae vberom.asm:433 + mov AL, strict byte 005h ; b0 05 ; 0xc07b1 vberom.asm:434 + out DX, AL ; ee ; 0xc07b3 vberom.asm:435 + mov dx, 003cfh ; ba cf 03 ; 0xc07b4 vberom.asm:436 + in AL, DX ; ec ; 0xc07b7 vberom.asm:437 + and AL, strict byte 09fh ; 24 9f ; 0xc07b8 vberom.asm:438 + or AL, strict byte 040h ; 0c 40 ; 0xc07ba vberom.asm:439 + out DX, AL ; ee ; 0xc07bc vberom.asm:440 + pop dx ; 5a ; 0xc07bd vberom.asm:443 + pop ax ; 58 ; 0xc07be vberom.asm:444 + ; disGetNextSymbol 0xc07bf LB 0x148 -> off=0x0 cb=0000000000000013 uValue=00000000000c07bf '_vbe_has_vbe_display' +_vbe_has_vbe_display: ; 0xc07bf LB 0x13 + push DS ; 1e ; 0xc07bf vberom.asm:450 + push bx ; 53 ; 0xc07c0 vberom.asm:451 + mov ax, strict word 00040h ; b8 40 00 ; 0xc07c1 vberom.asm:452 + mov ds, ax ; 8e d8 ; 0xc07c4 vberom.asm:453 + mov bx, 000b9h ; bb b9 00 ; 0xc07c6 vberom.asm:454 + mov al, byte [bx] ; 8a 07 ; 0xc07c9 vberom.asm:455 + and AL, strict byte 001h ; 24 01 ; 0xc07cb vberom.asm:456 + db 032h, 0e4h + ; xor ah, ah ; 32 e4 ; 0xc07cd vberom.asm:457 + pop bx ; 5b ; 0xc07cf vberom.asm:458 + pop DS ; 1f ; 0xc07d0 vberom.asm:459 + retn ; c3 ; 0xc07d1 vberom.asm:460 + ; disGetNextSymbol 0xc07d2 LB 0x135 -> off=0x0 cb=0000000000000025 uValue=00000000000c07d2 'vbe_biosfn_return_current_mode' +vbe_biosfn_return_current_mode: ; 0xc07d2 LB 0x25 + push DS ; 1e ; 0xc07d2 vberom.asm:473 + mov ax, strict word 00040h ; b8 40 00 ; 0xc07d3 vberom.asm:474 + mov ds, ax ; 8e d8 ; 0xc07d6 vberom.asm:475 + call 005f1h ; e8 16 fe ; 0xc07d8 vberom.asm:476 + and ax, strict byte 00001h ; 83 e0 01 ; 0xc07db vberom.asm:477 + je short 007e9h ; 74 09 ; 0xc07de vberom.asm:478 + mov bx, 000bah ; bb ba 00 ; 0xc07e0 vberom.asm:479 + mov ax, word [bx] ; 8b 07 ; 0xc07e3 vberom.asm:480 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc07e5 vberom.asm:481 + jne short 007f2h ; 75 09 ; 0xc07e7 vberom.asm:482 + mov bx, strict word 00049h ; bb 49 00 ; 0xc07e9 vberom.asm:484 + mov al, byte [bx] ; 8a 07 ; 0xc07ec vberom.asm:485 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc07ee vberom.asm:486 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc07f0 vberom.asm:487 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc07f2 vberom.asm:489 + pop DS ; 1f ; 0xc07f5 vberom.asm:490 + retn ; c3 ; 0xc07f6 vberom.asm:491 + ; disGetNextSymbol 0xc07f7 LB 0x110 -> off=0x0 cb=000000000000002d uValue=00000000000c07f7 'vbe_biosfn_display_window_control' +vbe_biosfn_display_window_control: ; 0xc07f7 LB 0x2d + cmp bl, 000h ; 80 fb 00 ; 0xc07f7 vberom.asm:515 + jne short 00820h ; 75 24 ; 0xc07fa vberom.asm:516 + cmp bh, 001h ; 80 ff 01 ; 0xc07fc vberom.asm:517 + je short 00817h ; 74 16 ; 0xc07ff vberom.asm:518 + jc short 00807h ; 72 04 ; 0xc0801 vberom.asm:519 + mov ax, 00100h ; b8 00 01 ; 0xc0803 vberom.asm:520 + retn ; c3 ; 0xc0806 vberom.asm:521 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc0807 vberom.asm:523 + call 00603h ; e8 f7 fd ; 0xc0809 vberom.asm:524 + call 00617h ; e8 08 fe ; 0xc080c vberom.asm:525 + db 03bh, 0c2h + ; cmp ax, dx ; 3b c2 ; 0xc080f vberom.asm:526 + jne short 00820h ; 75 0d ; 0xc0811 vberom.asm:527 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0813 vberom.asm:528 + retn ; c3 ; 0xc0816 vberom.asm:529 + call 00617h ; e8 fd fd ; 0xc0817 vberom.asm:531 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc081a vberom.asm:532 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc081c vberom.asm:533 + retn ; c3 ; 0xc081f vberom.asm:534 + mov ax, 0014fh ; b8 4f 01 ; 0xc0820 vberom.asm:536 + retn ; c3 ; 0xc0823 vberom.asm:537 + ; disGetNextSymbol 0xc0824 LB 0xe3 -> off=0x0 cb=0000000000000034 uValue=00000000000c0824 'vbe_biosfn_set_get_display_start' +vbe_biosfn_set_get_display_start: ; 0xc0824 LB 0x34 + cmp bl, 080h ; 80 fb 80 ; 0xc0824 vberom.asm:577 + je short 00834h ; 74 0b ; 0xc0827 vberom.asm:578 + cmp bl, 001h ; 80 fb 01 ; 0xc0829 vberom.asm:579 + je short 00848h ; 74 1a ; 0xc082c vberom.asm:580 + jc short 0083ah ; 72 0a ; 0xc082e vberom.asm:581 + mov ax, 00100h ; b8 00 01 ; 0xc0830 vberom.asm:582 + retn ; c3 ; 0xc0833 vberom.asm:583 + call 00589h ; e8 52 fd ; 0xc0834 vberom.asm:585 + call 0057ch ; e8 42 fd ; 0xc0837 vberom.asm:586 + db 08bh, 0c1h + ; mov ax, cx ; 8b c1 ; 0xc083a vberom.asm:588 + call 00669h ; e8 2a fe ; 0xc083c vberom.asm:589 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc083f vberom.asm:590 + call 0068fh ; e8 4b fe ; 0xc0841 vberom.asm:591 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0844 vberom.asm:592 + retn ; c3 ; 0xc0847 vberom.asm:593 + call 0067dh ; e8 32 fe ; 0xc0848 vberom.asm:595 + db 08bh, 0c8h + ; mov cx, ax ; 8b c8 ; 0xc084b vberom.asm:596 + call 006a3h ; e8 53 fe ; 0xc084d vberom.asm:597 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc0850 vberom.asm:598 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc0852 vberom.asm:599 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0854 vberom.asm:600 + retn ; c3 ; 0xc0857 vberom.asm:601 + ; disGetNextSymbol 0xc0858 LB 0xaf -> off=0x0 cb=0000000000000037 uValue=00000000000c0858 'vbe_biosfn_set_get_dac_palette_format' +vbe_biosfn_set_get_dac_palette_format: ; 0xc0858 LB 0x37 + cmp bl, 001h ; 80 fb 01 ; 0xc0858 vberom.asm:616 + je short 0087bh ; 74 1e ; 0xc085b vberom.asm:617 + jc short 00863h ; 72 04 ; 0xc085d vberom.asm:618 + mov ax, 00100h ; b8 00 01 ; 0xc085f vberom.asm:619 + retn ; c3 ; 0xc0862 vberom.asm:620 + call 005f1h ; e8 8b fd ; 0xc0863 vberom.asm:622 + cmp bh, 006h ; 80 ff 06 ; 0xc0866 vberom.asm:623 + je short 00875h ; 74 0a ; 0xc0869 vberom.asm:624 + cmp bh, 008h ; 80 ff 08 ; 0xc086b vberom.asm:625 + jne short 0088bh ; 75 1b ; 0xc086e vberom.asm:626 + or ax, strict byte 00020h ; 83 c8 20 ; 0xc0870 vberom.asm:627 + jne short 00878h ; 75 03 ; 0xc0873 vberom.asm:628 + and ax, strict byte 0ffdfh ; 83 e0 df ; 0xc0875 vberom.asm:630 + call 005ddh ; e8 62 fd ; 0xc0878 vberom.asm:632 + mov BH, strict byte 006h ; b7 06 ; 0xc087b vberom.asm:634 + call 005f1h ; e8 71 fd ; 0xc087d vberom.asm:635 + and ax, strict byte 00020h ; 83 e0 20 ; 0xc0880 vberom.asm:636 + je short 00887h ; 74 02 ; 0xc0883 vberom.asm:637 + mov BH, strict byte 008h ; b7 08 ; 0xc0885 vberom.asm:638 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0887 vberom.asm:640 + retn ; c3 ; 0xc088a vberom.asm:641 + mov ax, 0014fh ; b8 4f 01 ; 0xc088b vberom.asm:643 + retn ; c3 ; 0xc088e vberom.asm:644 + ; disGetNextSymbol 0xc088f LB 0x78 -> off=0x0 cb=0000000000000064 uValue=00000000000c088f 'vbe_biosfn_set_get_palette_data' +vbe_biosfn_set_get_palette_data: ; 0xc088f LB 0x64 + test bl, bl ; 84 db ; 0xc088f vberom.asm:683 + je short 008a2h ; 74 0f ; 0xc0891 vberom.asm:684 + cmp bl, 001h ; 80 fb 01 ; 0xc0893 vberom.asm:685 + je short 008cah ; 74 32 ; 0xc0896 vberom.asm:686 + cmp bl, 003h ; 80 fb 03 ; 0xc0898 vberom.asm:687 + jbe short 008efh ; 76 52 ; 0xc089b vberom.asm:688 + cmp bl, 080h ; 80 fb 80 ; 0xc089d vberom.asm:689 + jne short 008ebh ; 75 49 ; 0xc08a0 vberom.asm:690 + pushad ; 66 60 ; 0xc08a2 vberom.asm:141 + push DS ; 1e ; 0xc08a4 vberom.asm:696 + push ES ; 06 ; 0xc08a5 vberom.asm:697 + pop DS ; 1f ; 0xc08a6 vberom.asm:698 + db 08ah, 0c2h + ; mov al, dl ; 8a c2 ; 0xc08a7 vberom.asm:699 + mov dx, 003c8h ; ba c8 03 ; 0xc08a9 vberom.asm:700 + out DX, AL ; ee ; 0xc08ac vberom.asm:701 + inc dx ; 42 ; 0xc08ad vberom.asm:702 + db 08bh, 0f7h + ; mov si, di ; 8b f7 ; 0xc08ae vberom.asm:703 + lodsd ; 66 ad ; 0xc08b0 vberom.asm:706 + ror eax, 010h ; 66 c1 c8 10 ; 0xc08b2 vberom.asm:707 + out DX, AL ; ee ; 0xc08b6 vberom.asm:708 + rol eax, 008h ; 66 c1 c0 08 ; 0xc08b7 vberom.asm:709 + out DX, AL ; ee ; 0xc08bb vberom.asm:710 + rol eax, 008h ; 66 c1 c0 08 ; 0xc08bc vberom.asm:711 + out DX, AL ; ee ; 0xc08c0 vberom.asm:712 + loop 008b0h ; e2 ed ; 0xc08c1 vberom.asm:723 + pop DS ; 1f ; 0xc08c3 vberom.asm:724 + popad ; 66 61 ; 0xc08c4 vberom.asm:160 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc08c6 vberom.asm:727 + retn ; c3 ; 0xc08c9 vberom.asm:728 + pushad ; 66 60 ; 0xc08ca vberom.asm:141 + db 08ah, 0c2h + ; mov al, dl ; 8a c2 ; 0xc08cc vberom.asm:732 + mov dx, 003c7h ; ba c7 03 ; 0xc08ce vberom.asm:733 + out DX, AL ; ee ; 0xc08d1 vberom.asm:734 + add dl, 002h ; 80 c2 02 ; 0xc08d2 vberom.asm:735 + db 066h, 033h, 0c0h + ; xor eax, eax ; 66 33 c0 ; 0xc08d5 vberom.asm:738 + in AL, DX ; ec ; 0xc08d8 vberom.asm:739 + sal eax, 008h ; 66 c1 e0 08 ; 0xc08d9 vberom.asm:740 + in AL, DX ; ec ; 0xc08dd vberom.asm:741 + sal eax, 008h ; 66 c1 e0 08 ; 0xc08de vberom.asm:742 + in AL, DX ; ec ; 0xc08e2 vberom.asm:743 + stosd ; 66 ab ; 0xc08e3 vberom.asm:744 + loop 008d5h ; e2 ee ; 0xc08e5 vberom.asm:757 + popad ; 66 61 ; 0xc08e7 vberom.asm:160 + jmp short 008c6h ; eb db ; 0xc08e9 vberom.asm:759 + mov ax, 0014fh ; b8 4f 01 ; 0xc08eb vberom.asm:762 + retn ; c3 ; 0xc08ee vberom.asm:763 + mov ax, 0024fh ; b8 4f 02 ; 0xc08ef vberom.asm:765 + retn ; c3 ; 0xc08f2 vberom.asm:766 + ; disGetNextSymbol 0xc08f3 LB 0x14 -> off=0x0 cb=0000000000000014 uValue=00000000000c08f3 'vbe_biosfn_return_protected_mode_interface' +vbe_biosfn_return_protected_mode_interface: ; 0xc08f3 LB 0x14 + test bl, bl ; 84 db ; 0xc08f3 vberom.asm:780 + jne short 00903h ; 75 0c ; 0xc08f5 vberom.asm:781 + push CS ; 0e ; 0xc08f7 vberom.asm:782 + pop ES ; 07 ; 0xc08f8 vberom.asm:783 + mov di, 04640h ; bf 40 46 ; 0xc08f9 vberom.asm:784 + mov cx, 00115h ; b9 15 01 ; 0xc08fc vberom.asm:785 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc08ff vberom.asm:786 + retn ; c3 ; 0xc0902 vberom.asm:787 + mov ax, 0014fh ; b8 4f 01 ; 0xc0903 vberom.asm:789 + retn ; c3 ; 0xc0906 vberom.asm:790 + + ; Padding 0xe9 bytes at 0xc0907 + times 233 db 0 + +section _TEXT progbits vstart=0x9f0 align=1 ; size=0x38c9 class=CODE group=AUTO + ; disGetNextSymbol 0xc09f0 LB 0x38c9 -> off=0x0 cb=000000000000001a uValue=00000000000c09f0 'set_int_vector' +set_int_vector: ; 0xc09f0 LB 0x1a + push dx ; 52 ; 0xc09f0 vgabios.c:87 + push bp ; 55 ; 0xc09f1 + mov bp, sp ; 89 e5 ; 0xc09f2 + mov dx, bx ; 89 da ; 0xc09f4 + movzx bx, al ; 0f b6 d8 ; 0xc09f6 vgabios.c:91 + sal bx, 002h ; c1 e3 02 ; 0xc09f9 + xor ax, ax ; 31 c0 ; 0xc09fc + mov es, ax ; 8e c0 ; 0xc09fe + mov word [es:bx], dx ; 26 89 17 ; 0xc0a00 + mov word [es:bx+002h], cx ; 26 89 4f 02 ; 0xc0a03 + pop bp ; 5d ; 0xc0a07 vgabios.c:92 + pop dx ; 5a ; 0xc0a08 + retn ; c3 ; 0xc0a09 + ; disGetNextSymbol 0xc0a0a LB 0x38af -> off=0x0 cb=000000000000001c uValue=00000000000c0a0a 'init_vga_card' +init_vga_card: ; 0xc0a0a LB 0x1c + push bp ; 55 ; 0xc0a0a vgabios.c:143 + mov bp, sp ; 89 e5 ; 0xc0a0b + push dx ; 52 ; 0xc0a0d + mov AL, strict byte 0c3h ; b0 c3 ; 0xc0a0e vgabios.c:146 + mov dx, 003c2h ; ba c2 03 ; 0xc0a10 + out DX, AL ; ee ; 0xc0a13 + mov AL, strict byte 004h ; b0 04 ; 0xc0a14 vgabios.c:149 + mov dx, 003c4h ; ba c4 03 ; 0xc0a16 + out DX, AL ; ee ; 0xc0a19 + mov AL, strict byte 002h ; b0 02 ; 0xc0a1a vgabios.c:150 + mov dx, 003c5h ; ba c5 03 ; 0xc0a1c + out DX, AL ; ee ; 0xc0a1f + lea sp, [bp-002h] ; 8d 66 fe ; 0xc0a20 vgabios.c:155 + pop dx ; 5a ; 0xc0a23 + pop bp ; 5d ; 0xc0a24 + retn ; c3 ; 0xc0a25 + ; disGetNextSymbol 0xc0a26 LB 0x3893 -> off=0x0 cb=000000000000003e uValue=00000000000c0a26 'init_bios_area' +init_bios_area: ; 0xc0a26 LB 0x3e + push bx ; 53 ; 0xc0a26 vgabios.c:221 + push bp ; 55 ; 0xc0a27 + mov bp, sp ; 89 e5 ; 0xc0a28 + xor bx, bx ; 31 db ; 0xc0a2a vgabios.c:225 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0a2c + mov es, ax ; 8e c0 ; 0xc0a2f + mov al, byte [es:bx+010h] ; 26 8a 47 10 ; 0xc0a31 vgabios.c:228 + and AL, strict byte 0cfh ; 24 cf ; 0xc0a35 + or AL, strict byte 020h ; 0c 20 ; 0xc0a37 + mov byte [es:bx+010h], al ; 26 88 47 10 ; 0xc0a39 + mov byte [es:bx+00085h], 010h ; 26 c6 87 85 00 10 ; 0xc0a3d vgabios.c:232 + mov word [es:bx+00087h], 0f960h ; 26 c7 87 87 00 60 f9 ; 0xc0a43 vgabios.c:234 + mov byte [es:bx+00089h], 051h ; 26 c6 87 89 00 51 ; 0xc0a4a vgabios.c:238 + mov byte [es:bx+065h], 009h ; 26 c6 47 65 09 ; 0xc0a50 vgabios.c:240 + mov word [es:bx+000a8h], 05551h ; 26 c7 87 a8 00 51 55 ; 0xc0a55 vgabios.c:242 + mov [es:bx+000aah], ds ; 26 8c 9f aa 00 ; 0xc0a5c + pop bp ; 5d ; 0xc0a61 vgabios.c:243 + pop bx ; 5b ; 0xc0a62 + retn ; c3 ; 0xc0a63 + ; disGetNextSymbol 0xc0a64 LB 0x3855 -> off=0x0 cb=000000000000002f uValue=00000000000c0a64 'vgabios_init_func' +vgabios_init_func: ; 0xc0a64 LB 0x2f + push bp ; 55 ; 0xc0a64 vgabios.c:250 + mov bp, sp ; 89 e5 ; 0xc0a65 + call 00a0ah ; e8 a0 ff ; 0xc0a67 vgabios.c:252 + call 00a26h ; e8 b9 ff ; 0xc0a6a vgabios.c:253 + call 03c5ch ; e8 ec 31 ; 0xc0a6d vgabios.c:255 + mov bx, strict word 00028h ; bb 28 00 ; 0xc0a70 vgabios.c:257 + mov cx, 0c000h ; b9 00 c0 ; 0xc0a73 + mov ax, strict word 00010h ; b8 10 00 ; 0xc0a76 + call 009f0h ; e8 74 ff ; 0xc0a79 + mov bx, strict word 00028h ; bb 28 00 ; 0xc0a7c vgabios.c:258 + mov cx, 0c000h ; b9 00 c0 ; 0xc0a7f + mov ax, strict word 0006dh ; b8 6d 00 ; 0xc0a82 + call 009f0h ; e8 68 ff ; 0xc0a85 + mov ax, strict word 00003h ; b8 03 00 ; 0xc0a88 vgabios.c:284 + db 032h, 0e4h + ; xor ah, ah ; 32 e4 ; 0xc0a8b + int 010h ; cd 10 ; 0xc0a8d + mov sp, bp ; 89 ec ; 0xc0a8f vgabios.c:287 + pop bp ; 5d ; 0xc0a91 + retf ; cb ; 0xc0a92 + ; disGetNextSymbol 0xc0a93 LB 0x3826 -> off=0x0 cb=000000000000003f uValue=00000000000c0a93 'vga_get_cursor_pos' +vga_get_cursor_pos: ; 0xc0a93 LB 0x3f + push si ; 56 ; 0xc0a93 vgabios.c:356 + push di ; 57 ; 0xc0a94 + push bp ; 55 ; 0xc0a95 + mov bp, sp ; 89 e5 ; 0xc0a96 + mov si, dx ; 89 d6 ; 0xc0a98 + cmp AL, strict byte 007h ; 3c 07 ; 0xc0a9a vgabios.c:358 + jbe short 00aach ; 76 0e ; 0xc0a9c + push SS ; 16 ; 0xc0a9e vgabios.c:359 + pop ES ; 07 ; 0xc0a9f + mov word [es:si], strict word 00000h ; 26 c7 04 00 00 ; 0xc0aa0 + mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xc0aa5 vgabios.c:360 + jmp short 00aceh ; eb 22 ; 0xc0aaa vgabios.c:361 + mov di, strict word 00060h ; bf 60 00 ; 0xc0aac vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc0aaf + mov es, dx ; 8e c2 ; 0xc0ab2 + mov di, word [es:di] ; 26 8b 3d ; 0xc0ab4 + push SS ; 16 ; 0xc0ab7 vgabios.c:58 + pop ES ; 07 ; 0xc0ab8 + mov word [es:si], di ; 26 89 3c ; 0xc0ab9 + movzx si, al ; 0f b6 f0 ; 0xc0abc vgabios.c:364 + add si, si ; 01 f6 ; 0xc0abf + add si, strict byte 00050h ; 83 c6 50 ; 0xc0ac1 + mov es, dx ; 8e c2 ; 0xc0ac4 vgabios.c:57 + mov si, word [es:si] ; 26 8b 34 ; 0xc0ac6 + push SS ; 16 ; 0xc0ac9 vgabios.c:58 + pop ES ; 07 ; 0xc0aca + mov word [es:bx], si ; 26 89 37 ; 0xc0acb + pop bp ; 5d ; 0xc0ace vgabios.c:366 + pop di ; 5f ; 0xc0acf + pop si ; 5e ; 0xc0ad0 + retn ; c3 ; 0xc0ad1 + ; disGetNextSymbol 0xc0ad2 LB 0x37e7 -> off=0x0 cb=000000000000005d uValue=00000000000c0ad2 'vga_find_glyph' +vga_find_glyph: ; 0xc0ad2 LB 0x5d + push bp ; 55 ; 0xc0ad2 vgabios.c:369 + mov bp, sp ; 89 e5 ; 0xc0ad3 + push si ; 56 ; 0xc0ad5 + push di ; 57 ; 0xc0ad6 + push ax ; 50 ; 0xc0ad7 + push ax ; 50 ; 0xc0ad8 + push dx ; 52 ; 0xc0ad9 + push bx ; 53 ; 0xc0ada + mov bl, cl ; 88 cb ; 0xc0adb + mov word [bp-006h], strict word 00000h ; c7 46 fa 00 00 ; 0xc0add vgabios.c:371 + dec word [bp+004h] ; ff 4e 04 ; 0xc0ae2 vgabios.c:373 + cmp word [bp+004h], strict byte 0ffffh ; 83 7e 04 ff ; 0xc0ae5 + je short 00b23h ; 74 38 ; 0xc0ae9 + movzx cx, byte [bp+006h] ; 0f b6 4e 06 ; 0xc0aeb vgabios.c:374 + mov dx, ss ; 8c d2 ; 0xc0aef + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc0af1 + mov di, word [bp-008h] ; 8b 7e f8 ; 0xc0af4 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc0af7 + push DS ; 1e ; 0xc0afa + mov ds, dx ; 8e da ; 0xc0afb + rep cmpsb ; f3 a6 ; 0xc0afd + pop DS ; 1f ; 0xc0aff + mov ax, strict word 00000h ; b8 00 00 ; 0xc0b00 + je near 00b09h ; 0f 84 02 00 ; 0xc0b03 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc0b07 + test ax, ax ; 85 c0 ; 0xc0b09 + jne short 00b18h ; 75 0b ; 0xc0b0b + movzx ax, bl ; 0f b6 c3 ; 0xc0b0d vgabios.c:375 + or ah, 080h ; 80 cc 80 ; 0xc0b10 + mov word [bp-006h], ax ; 89 46 fa ; 0xc0b13 + jmp short 00b23h ; eb 0b ; 0xc0b16 vgabios.c:376 + movzx ax, byte [bp+006h] ; 0f b6 46 06 ; 0xc0b18 vgabios.c:378 + add word [bp-008h], ax ; 01 46 f8 ; 0xc0b1c + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc0b1f vgabios.c:379 + jmp short 00ae2h ; eb bf ; 0xc0b21 vgabios.c:380 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc0b23 vgabios.c:382 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0b26 + pop di ; 5f ; 0xc0b29 + pop si ; 5e ; 0xc0b2a + pop bp ; 5d ; 0xc0b2b + retn 00004h ; c2 04 00 ; 0xc0b2c + ; disGetNextSymbol 0xc0b2f LB 0x378a -> off=0x0 cb=0000000000000046 uValue=00000000000c0b2f 'vga_read_glyph_planar' +vga_read_glyph_planar: ; 0xc0b2f LB 0x46 + push bp ; 55 ; 0xc0b2f vgabios.c:384 + mov bp, sp ; 89 e5 ; 0xc0b30 + push si ; 56 ; 0xc0b32 + push di ; 57 ; 0xc0b33 + push ax ; 50 ; 0xc0b34 + push ax ; 50 ; 0xc0b35 + mov si, ax ; 89 c6 ; 0xc0b36 + mov word [bp-006h], dx ; 89 56 fa ; 0xc0b38 + mov word [bp-008h], bx ; 89 5e f8 ; 0xc0b3b + mov bx, cx ; 89 cb ; 0xc0b3e + mov ax, 00805h ; b8 05 08 ; 0xc0b40 vgabios.c:391 + mov dx, 003ceh ; ba ce 03 ; 0xc0b43 + out DX, ax ; ef ; 0xc0b46 + dec byte [bp+004h] ; fe 4e 04 ; 0xc0b47 vgabios.c:393 + cmp byte [bp+004h], 0ffh ; 80 7e 04 ff ; 0xc0b4a + je short 00b65h ; 74 15 ; 0xc0b4e + mov es, [bp-006h] ; 8e 46 fa ; 0xc0b50 vgabios.c:394 + mov al, byte [es:si] ; 26 8a 04 ; 0xc0b53 + not al ; f6 d0 ; 0xc0b56 + mov di, bx ; 89 df ; 0xc0b58 + inc bx ; 43 ; 0xc0b5a + push SS ; 16 ; 0xc0b5b + pop ES ; 07 ; 0xc0b5c + mov byte [es:di], al ; 26 88 05 ; 0xc0b5d + add si, word [bp-008h] ; 03 76 f8 ; 0xc0b60 vgabios.c:395 + jmp short 00b47h ; eb e2 ; 0xc0b63 vgabios.c:396 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0b65 vgabios.c:399 + mov dx, 003ceh ; ba ce 03 ; 0xc0b68 + out DX, ax ; ef ; 0xc0b6b + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0b6c vgabios.c:400 + pop di ; 5f ; 0xc0b6f + pop si ; 5e ; 0xc0b70 + pop bp ; 5d ; 0xc0b71 + retn 00002h ; c2 02 00 ; 0xc0b72 + ; disGetNextSymbol 0xc0b75 LB 0x3744 -> off=0x0 cb=000000000000002a uValue=00000000000c0b75 'vga_char_ofs_planar' +vga_char_ofs_planar: ; 0xc0b75 LB 0x2a + push bp ; 55 ; 0xc0b75 vgabios.c:402 + mov bp, sp ; 89 e5 ; 0xc0b76 + xor dh, dh ; 30 f6 ; 0xc0b78 vgabios.c:406 + imul bx, dx ; 0f af da ; 0xc0b7a + movzx dx, byte [bp+004h] ; 0f b6 56 04 ; 0xc0b7d + imul bx, dx ; 0f af da ; 0xc0b81 + xor ah, ah ; 30 e4 ; 0xc0b84 + add ax, bx ; 01 d8 ; 0xc0b86 + mov bx, strict word 0004ch ; bb 4c 00 ; 0xc0b88 vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc0b8b + mov es, dx ; 8e c2 ; 0xc0b8e + mov dx, word [es:bx] ; 26 8b 17 ; 0xc0b90 + movzx bx, cl ; 0f b6 d9 ; 0xc0b93 vgabios.c:58 + imul dx, bx ; 0f af d3 ; 0xc0b96 + add ax, dx ; 01 d0 ; 0xc0b99 + pop bp ; 5d ; 0xc0b9b vgabios.c:410 + retn 00002h ; c2 02 00 ; 0xc0b9c + ; disGetNextSymbol 0xc0b9f LB 0x371a -> off=0x0 cb=000000000000003e uValue=00000000000c0b9f 'vga_read_char_planar' +vga_read_char_planar: ; 0xc0b9f LB 0x3e + push bp ; 55 ; 0xc0b9f vgabios.c:412 + mov bp, sp ; 89 e5 ; 0xc0ba0 + push cx ; 51 ; 0xc0ba2 + push si ; 56 ; 0xc0ba3 + push di ; 57 ; 0xc0ba4 + sub sp, strict byte 00010h ; 83 ec 10 ; 0xc0ba5 + mov si, ax ; 89 c6 ; 0xc0ba8 + mov ax, dx ; 89 d0 ; 0xc0baa + movzx di, bl ; 0f b6 fb ; 0xc0bac vgabios.c:416 + push di ; 57 ; 0xc0baf + lea cx, [bp-016h] ; 8d 4e ea ; 0xc0bb0 + mov bx, si ; 89 f3 ; 0xc0bb3 + mov dx, 0a000h ; ba 00 a0 ; 0xc0bb5 + call 00b2fh ; e8 74 ff ; 0xc0bb8 + push di ; 57 ; 0xc0bbb vgabios.c:419 + push 00100h ; 68 00 01 ; 0xc0bbc + mov bx, 0010ch ; bb 0c 01 ; 0xc0bbf vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0bc2 + mov es, ax ; 8e c0 ; 0xc0bc4 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0bc6 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0bc9 + xor cx, cx ; 31 c9 ; 0xc0bcd vgabios.c:68 + lea bx, [bp-016h] ; 8d 5e ea ; 0xc0bcf + call 00ad2h ; e8 fd fe ; 0xc0bd2 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc0bd5 vgabios.c:420 + pop di ; 5f ; 0xc0bd8 + pop si ; 5e ; 0xc0bd9 + pop cx ; 59 ; 0xc0bda + pop bp ; 5d ; 0xc0bdb + retn ; c3 ; 0xc0bdc + ; disGetNextSymbol 0xc0bdd LB 0x36dc -> off=0x0 cb=000000000000001a uValue=00000000000c0bdd 'vga_char_ofs_linear' +vga_char_ofs_linear: ; 0xc0bdd LB 0x1a + push bp ; 55 ; 0xc0bdd vgabios.c:422 + mov bp, sp ; 89 e5 ; 0xc0bde + xor dh, dh ; 30 f6 ; 0xc0be0 vgabios.c:426 + imul dx, bx ; 0f af d3 ; 0xc0be2 + movzx bx, byte [bp+004h] ; 0f b6 5e 04 ; 0xc0be5 + imul bx, dx ; 0f af da ; 0xc0be9 + xor ah, ah ; 30 e4 ; 0xc0bec + add ax, bx ; 01 d8 ; 0xc0bee + sal ax, 003h ; c1 e0 03 ; 0xc0bf0 vgabios.c:427 + pop bp ; 5d ; 0xc0bf3 vgabios.c:429 + retn 00002h ; c2 02 00 ; 0xc0bf4 + ; disGetNextSymbol 0xc0bf7 LB 0x36c2 -> off=0x0 cb=000000000000004b uValue=00000000000c0bf7 'vga_read_glyph_linear' +vga_read_glyph_linear: ; 0xc0bf7 LB 0x4b + push si ; 56 ; 0xc0bf7 vgabios.c:431 + push di ; 57 ; 0xc0bf8 + enter 00004h, 000h ; c8 04 00 00 ; 0xc0bf9 + mov si, ax ; 89 c6 ; 0xc0bfd + mov word [bp-002h], dx ; 89 56 fe ; 0xc0bff + mov word [bp-004h], bx ; 89 5e fc ; 0xc0c02 + mov bx, cx ; 89 cb ; 0xc0c05 + dec byte [bp+008h] ; fe 4e 08 ; 0xc0c07 vgabios.c:437 + cmp byte [bp+008h], 0ffh ; 80 7e 08 ff ; 0xc0c0a + je short 00c3ch ; 74 2c ; 0xc0c0e + xor dh, dh ; 30 f6 ; 0xc0c10 vgabios.c:438 + mov DL, strict byte 080h ; b2 80 ; 0xc0c12 vgabios.c:439 + xor ax, ax ; 31 c0 ; 0xc0c14 vgabios.c:440 + jmp short 00c1dh ; eb 05 ; 0xc0c16 + cmp ax, strict word 00008h ; 3d 08 00 ; 0xc0c18 + jnl short 00c31h ; 7d 14 ; 0xc0c1b + mov es, [bp-002h] ; 8e 46 fe ; 0xc0c1d vgabios.c:441 + mov di, si ; 89 f7 ; 0xc0c20 + add di, ax ; 01 c7 ; 0xc0c22 + cmp byte [es:di], 000h ; 26 80 3d 00 ; 0xc0c24 + je short 00c2ch ; 74 02 ; 0xc0c28 + or dh, dl ; 08 d6 ; 0xc0c2a vgabios.c:442 + shr dl, 1 ; d0 ea ; 0xc0c2c vgabios.c:443 + inc ax ; 40 ; 0xc0c2e vgabios.c:444 + jmp short 00c18h ; eb e7 ; 0xc0c2f + mov di, bx ; 89 df ; 0xc0c31 vgabios.c:445 + inc bx ; 43 ; 0xc0c33 + mov byte [ss:di], dh ; 36 88 35 ; 0xc0c34 + add si, word [bp-004h] ; 03 76 fc ; 0xc0c37 vgabios.c:446 + jmp short 00c07h ; eb cb ; 0xc0c3a vgabios.c:447 + leave ; c9 ; 0xc0c3c vgabios.c:448 + pop di ; 5f ; 0xc0c3d + pop si ; 5e ; 0xc0c3e + retn 00002h ; c2 02 00 ; 0xc0c3f + ; disGetNextSymbol 0xc0c42 LB 0x3677 -> off=0x0 cb=000000000000003f uValue=00000000000c0c42 'vga_read_char_linear' +vga_read_char_linear: ; 0xc0c42 LB 0x3f + push bp ; 55 ; 0xc0c42 vgabios.c:450 + mov bp, sp ; 89 e5 ; 0xc0c43 + push cx ; 51 ; 0xc0c45 + push si ; 56 ; 0xc0c46 + sub sp, strict byte 00010h ; 83 ec 10 ; 0xc0c47 + mov cx, ax ; 89 c1 ; 0xc0c4a + mov ax, dx ; 89 d0 ; 0xc0c4c + movzx si, bl ; 0f b6 f3 ; 0xc0c4e vgabios.c:454 + push si ; 56 ; 0xc0c51 + mov bx, cx ; 89 cb ; 0xc0c52 + sal bx, 003h ; c1 e3 03 ; 0xc0c54 + lea cx, [bp-014h] ; 8d 4e ec ; 0xc0c57 + mov dx, 0a000h ; ba 00 a0 ; 0xc0c5a + call 00bf7h ; e8 97 ff ; 0xc0c5d + push si ; 56 ; 0xc0c60 vgabios.c:457 + push 00100h ; 68 00 01 ; 0xc0c61 + mov bx, 0010ch ; bb 0c 01 ; 0xc0c64 vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0c67 + mov es, ax ; 8e c0 ; 0xc0c69 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0c6b + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0c6e + xor cx, cx ; 31 c9 ; 0xc0c72 vgabios.c:68 + lea bx, [bp-014h] ; 8d 5e ec ; 0xc0c74 + call 00ad2h ; e8 58 fe ; 0xc0c77 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0c7a vgabios.c:458 + pop si ; 5e ; 0xc0c7d + pop cx ; 59 ; 0xc0c7e + pop bp ; 5d ; 0xc0c7f + retn ; c3 ; 0xc0c80 + ; disGetNextSymbol 0xc0c81 LB 0x3638 -> off=0x0 cb=0000000000000035 uValue=00000000000c0c81 'vga_read_2bpp_char' +vga_read_2bpp_char: ; 0xc0c81 LB 0x35 + push bp ; 55 ; 0xc0c81 vgabios.c:460 + mov bp, sp ; 89 e5 ; 0xc0c82 + push bx ; 53 ; 0xc0c84 + push cx ; 51 ; 0xc0c85 + mov bx, ax ; 89 c3 ; 0xc0c86 + mov es, dx ; 8e c2 ; 0xc0c88 + mov cx, 0c000h ; b9 00 c0 ; 0xc0c8a vgabios.c:466 + mov DH, strict byte 080h ; b6 80 ; 0xc0c8d vgabios.c:467 + xor dl, dl ; 30 d2 ; 0xc0c8f vgabios.c:468 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0c91 vgabios.c:469 + xchg ah, al ; 86 c4 ; 0xc0c94 + xor bx, bx ; 31 db ; 0xc0c96 vgabios.c:471 + jmp short 00c9fh ; eb 05 ; 0xc0c98 + cmp bx, strict byte 00008h ; 83 fb 08 ; 0xc0c9a + jnl short 00cadh ; 7d 0e ; 0xc0c9d + test ax, cx ; 85 c8 ; 0xc0c9f vgabios.c:472 + je short 00ca5h ; 74 02 ; 0xc0ca1 + or dl, dh ; 08 f2 ; 0xc0ca3 vgabios.c:473 + shr dh, 1 ; d0 ee ; 0xc0ca5 vgabios.c:474 + shr cx, 002h ; c1 e9 02 ; 0xc0ca7 vgabios.c:475 + inc bx ; 43 ; 0xc0caa vgabios.c:476 + jmp short 00c9ah ; eb ed ; 0xc0cab + mov al, dl ; 88 d0 ; 0xc0cad vgabios.c:478 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0caf + pop cx ; 59 ; 0xc0cb2 + pop bx ; 5b ; 0xc0cb3 + pop bp ; 5d ; 0xc0cb4 + retn ; c3 ; 0xc0cb5 + ; disGetNextSymbol 0xc0cb6 LB 0x3603 -> off=0x0 cb=0000000000000084 uValue=00000000000c0cb6 'vga_read_glyph_cga' +vga_read_glyph_cga: ; 0xc0cb6 LB 0x84 + push bp ; 55 ; 0xc0cb6 vgabios.c:480 + mov bp, sp ; 89 e5 ; 0xc0cb7 + push cx ; 51 ; 0xc0cb9 + push si ; 56 ; 0xc0cba + push di ; 57 ; 0xc0cbb + push ax ; 50 ; 0xc0cbc + mov si, dx ; 89 d6 ; 0xc0cbd + cmp bl, 006h ; 80 fb 06 ; 0xc0cbf vgabios.c:488 + je short 00cfeh ; 74 3a ; 0xc0cc2 + mov bx, ax ; 89 c3 ; 0xc0cc4 vgabios.c:490 + add bx, ax ; 01 c3 ; 0xc0cc6 + mov word [bp-008h], 0b800h ; c7 46 f8 00 b8 ; 0xc0cc8 + xor cx, cx ; 31 c9 ; 0xc0ccd vgabios.c:492 + jmp short 00cd6h ; eb 05 ; 0xc0ccf + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc0cd1 + jnl short 00d32h ; 7d 5c ; 0xc0cd4 + mov ax, bx ; 89 d8 ; 0xc0cd6 vgabios.c:493 + mov dx, word [bp-008h] ; 8b 56 f8 ; 0xc0cd8 + call 00c81h ; e8 a3 ff ; 0xc0cdb + mov di, si ; 89 f7 ; 0xc0cde + inc si ; 46 ; 0xc0ce0 + push SS ; 16 ; 0xc0ce1 + pop ES ; 07 ; 0xc0ce2 + mov byte [es:di], al ; 26 88 05 ; 0xc0ce3 + lea ax, [bx+02000h] ; 8d 87 00 20 ; 0xc0ce6 vgabios.c:494 + mov dx, word [bp-008h] ; 8b 56 f8 ; 0xc0cea + call 00c81h ; e8 91 ff ; 0xc0ced + mov di, si ; 89 f7 ; 0xc0cf0 + inc si ; 46 ; 0xc0cf2 + push SS ; 16 ; 0xc0cf3 + pop ES ; 07 ; 0xc0cf4 + mov byte [es:di], al ; 26 88 05 ; 0xc0cf5 + add bx, strict byte 00050h ; 83 c3 50 ; 0xc0cf8 vgabios.c:495 + inc cx ; 41 ; 0xc0cfb vgabios.c:496 + jmp short 00cd1h ; eb d3 ; 0xc0cfc + mov bx, ax ; 89 c3 ; 0xc0cfe vgabios.c:498 + mov word [bp-008h], 0b800h ; c7 46 f8 00 b8 ; 0xc0d00 + xor cx, cx ; 31 c9 ; 0xc0d05 vgabios.c:499 + jmp short 00d0eh ; eb 05 ; 0xc0d07 + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc0d09 + jnl short 00d32h ; 7d 24 ; 0xc0d0c + mov di, si ; 89 f7 ; 0xc0d0e vgabios.c:500 + inc si ; 46 ; 0xc0d10 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc0d11 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0d14 + push SS ; 16 ; 0xc0d17 + pop ES ; 07 ; 0xc0d18 + mov byte [es:di], al ; 26 88 05 ; 0xc0d19 + mov di, si ; 89 f7 ; 0xc0d1c vgabios.c:501 + inc si ; 46 ; 0xc0d1e + mov es, [bp-008h] ; 8e 46 f8 ; 0xc0d1f + mov al, byte [es:bx+02000h] ; 26 8a 87 00 20 ; 0xc0d22 + push SS ; 16 ; 0xc0d27 + pop ES ; 07 ; 0xc0d28 + mov byte [es:di], al ; 26 88 05 ; 0xc0d29 + add bx, strict byte 00050h ; 83 c3 50 ; 0xc0d2c vgabios.c:502 + inc cx ; 41 ; 0xc0d2f vgabios.c:503 + jmp short 00d09h ; eb d7 ; 0xc0d30 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc0d32 vgabios.c:505 + pop di ; 5f ; 0xc0d35 + pop si ; 5e ; 0xc0d36 + pop cx ; 59 ; 0xc0d37 + pop bp ; 5d ; 0xc0d38 + retn ; c3 ; 0xc0d39 + ; disGetNextSymbol 0xc0d3a LB 0x357f -> off=0x0 cb=0000000000000011 uValue=00000000000c0d3a 'vga_char_ofs_cga' +vga_char_ofs_cga: ; 0xc0d3a LB 0x11 + push bp ; 55 ; 0xc0d3a vgabios.c:507 + mov bp, sp ; 89 e5 ; 0xc0d3b + xor dh, dh ; 30 f6 ; 0xc0d3d vgabios.c:512 + imul dx, bx ; 0f af d3 ; 0xc0d3f + sal dx, 002h ; c1 e2 02 ; 0xc0d42 + xor ah, ah ; 30 e4 ; 0xc0d45 + add ax, dx ; 01 d0 ; 0xc0d47 + pop bp ; 5d ; 0xc0d49 vgabios.c:513 + retn ; c3 ; 0xc0d4a + ; disGetNextSymbol 0xc0d4b LB 0x356e -> off=0x0 cb=0000000000000065 uValue=00000000000c0d4b 'vga_read_char_cga' +vga_read_char_cga: ; 0xc0d4b LB 0x65 + push bp ; 55 ; 0xc0d4b vgabios.c:515 + mov bp, sp ; 89 e5 ; 0xc0d4c + push bx ; 53 ; 0xc0d4e + push cx ; 51 ; 0xc0d4f + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc0d50 + movzx bx, dl ; 0f b6 da ; 0xc0d53 vgabios.c:521 + lea dx, [bp-00eh] ; 8d 56 f2 ; 0xc0d56 + call 00cb6h ; e8 5a ff ; 0xc0d59 + push strict byte 00008h ; 6a 08 ; 0xc0d5c vgabios.c:524 + push 00080h ; 68 80 00 ; 0xc0d5e + mov bx, 0010ch ; bb 0c 01 ; 0xc0d61 vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0d64 + mov es, ax ; 8e c0 ; 0xc0d66 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0d68 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0d6b + xor cx, cx ; 31 c9 ; 0xc0d6f vgabios.c:68 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc0d71 + call 00ad2h ; e8 5b fd ; 0xc0d74 + mov word [bp-006h], ax ; 89 46 fa ; 0xc0d77 + test ah, 080h ; f6 c4 80 ; 0xc0d7a vgabios.c:526 + jne short 00da6h ; 75 27 ; 0xc0d7d + mov bx, strict word 0007ch ; bb 7c 00 ; 0xc0d7f vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0d82 + mov es, ax ; 8e c0 ; 0xc0d84 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0d86 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0d89 + test dx, dx ; 85 d2 ; 0xc0d8d vgabios.c:530 + jne short 00d95h ; 75 04 ; 0xc0d8f + test ax, ax ; 85 c0 ; 0xc0d91 + je short 00da6h ; 74 11 ; 0xc0d93 + push strict byte 00008h ; 6a 08 ; 0xc0d95 vgabios.c:531 + push 00080h ; 68 80 00 ; 0xc0d97 + mov cx, 00080h ; b9 80 00 ; 0xc0d9a + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc0d9d + call 00ad2h ; e8 2f fd ; 0xc0da0 + mov word [bp-006h], ax ; 89 46 fa ; 0xc0da3 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc0da6 vgabios.c:534 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0da9 + pop cx ; 59 ; 0xc0dac + pop bx ; 5b ; 0xc0dad + pop bp ; 5d ; 0xc0dae + retn ; c3 ; 0xc0daf + ; disGetNextSymbol 0xc0db0 LB 0x3509 -> off=0x0 cb=0000000000000127 uValue=00000000000c0db0 'vga_read_char_attr' +vga_read_char_attr: ; 0xc0db0 LB 0x127 + push bp ; 55 ; 0xc0db0 vgabios.c:536 + mov bp, sp ; 89 e5 ; 0xc0db1 + push bx ; 53 ; 0xc0db3 + push cx ; 51 ; 0xc0db4 + push si ; 56 ; 0xc0db5 + push di ; 57 ; 0xc0db6 + sub sp, strict byte 00012h ; 83 ec 12 ; 0xc0db7 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc0dba + mov si, dx ; 89 d6 ; 0xc0dbd + mov bx, strict word 00049h ; bb 49 00 ; 0xc0dbf vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0dc2 + mov es, ax ; 8e c0 ; 0xc0dc5 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0dc7 + mov byte [bp-010h], al ; 88 46 f0 ; 0xc0dca vgabios.c:48 + xor ah, ah ; 30 e4 ; 0xc0dcd vgabios.c:544 + call 035edh ; e8 1b 28 ; 0xc0dcf + mov byte [bp-012h], al ; 88 46 ee ; 0xc0dd2 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc0dd5 vgabios.c:545 + je near 00eceh ; 0f 84 f3 00 ; 0xc0dd7 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc0ddb vgabios.c:549 + lea bx, [bp-018h] ; 8d 5e e8 ; 0xc0ddf + lea dx, [bp-01ah] ; 8d 56 e6 ; 0xc0de2 + mov ax, cx ; 89 c8 ; 0xc0de5 + call 00a93h ; e8 a9 fc ; 0xc0de7 + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc0dea vgabios.c:550 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc0ded + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc0df0 vgabios.c:551 + xor al, al ; 30 c0 ; 0xc0df3 + shr ax, 008h ; c1 e8 08 ; 0xc0df5 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc0df8 + mov bx, 00084h ; bb 84 00 ; 0xc0dfb vgabios.c:47 + mov dx, strict word 00040h ; ba 40 00 ; 0xc0dfe + mov es, dx ; 8e c2 ; 0xc0e01 + mov dl, byte [es:bx] ; 26 8a 17 ; 0xc0e03 + xor dh, dh ; 30 f6 ; 0xc0e06 vgabios.c:48 + inc dx ; 42 ; 0xc0e08 + mov di, strict word 0004ah ; bf 4a 00 ; 0xc0e09 vgabios.c:57 + mov di, word [es:di] ; 26 8b 3d ; 0xc0e0c + mov word [bp-014h], di ; 89 7e ec ; 0xc0e0f vgabios.c:58 + movzx bx, byte [bp-012h] ; 0f b6 5e ee ; 0xc0e12 vgabios.c:557 + sal bx, 003h ; c1 e3 03 ; 0xc0e16 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc0e19 + jne short 00e56h ; 75 36 ; 0xc0e1e + imul dx, di ; 0f af d7 ; 0xc0e20 vgabios.c:559 + add dx, dx ; 01 d2 ; 0xc0e23 + or dl, 0ffh ; 80 ca ff ; 0xc0e25 + mov word [bp-016h], dx ; 89 56 ea ; 0xc0e28 + movzx dx, byte [bp-00ah] ; 0f b6 56 f6 ; 0xc0e2b + mov cx, word [bp-016h] ; 8b 4e ea ; 0xc0e2f + inc cx ; 41 ; 0xc0e32 + imul dx, cx ; 0f af d1 ; 0xc0e33 + xor ah, ah ; 30 e4 ; 0xc0e36 + imul di, ax ; 0f af f8 ; 0xc0e38 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc0e3b + add ax, di ; 01 f8 ; 0xc0e3f + add ax, ax ; 01 c0 ; 0xc0e41 + mov di, dx ; 89 d7 ; 0xc0e43 + add di, ax ; 01 c7 ; 0xc0e45 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc0e47 vgabios.c:55 + mov ax, word [es:di] ; 26 8b 05 ; 0xc0e4b + push SS ; 16 ; 0xc0e4e vgabios.c:58 + pop ES ; 07 ; 0xc0e4f + mov word [es:si], ax ; 26 89 04 ; 0xc0e50 + jmp near 00eceh ; e9 78 00 ; 0xc0e53 vgabios.c:561 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc0e56 vgabios.c:562 + cmp bl, 005h ; 80 fb 05 ; 0xc0e5a + je short 00eaah ; 74 4b ; 0xc0e5d + cmp bl, 002h ; 80 fb 02 ; 0xc0e5f + jc short 00eceh ; 72 6a ; 0xc0e62 + jbe short 00e6dh ; 76 07 ; 0xc0e64 + cmp bl, 004h ; 80 fb 04 ; 0xc0e66 + jbe short 00e86h ; 76 1b ; 0xc0e69 + jmp short 00eceh ; eb 61 ; 0xc0e6b + movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xc0e6d vgabios.c:565 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc0e71 + mov bx, word [bp-014h] ; 8b 5e ec ; 0xc0e75 + call 00d3ah ; e8 bf fe ; 0xc0e78 + movzx dx, byte [bp-010h] ; 0f b6 56 f0 ; 0xc0e7b vgabios.c:566 + call 00d4bh ; e8 c9 fe ; 0xc0e7f + xor ah, ah ; 30 e4 ; 0xc0e82 + jmp short 00e4eh ; eb c8 ; 0xc0e84 + mov bx, 00085h ; bb 85 00 ; 0xc0e86 vgabios.c:57 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc0e89 + xor dh, dh ; 30 f6 ; 0xc0e8c vgabios.c:571 + mov word [bp-016h], dx ; 89 56 ea ; 0xc0e8e + push dx ; 52 ; 0xc0e91 + movzx dx, al ; 0f b6 d0 ; 0xc0e92 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc0e95 + mov bx, di ; 89 fb ; 0xc0e99 + call 00b75h ; e8 d7 fc ; 0xc0e9b + mov bx, word [bp-016h] ; 8b 5e ea ; 0xc0e9e vgabios.c:572 + mov dx, ax ; 89 c2 ; 0xc0ea1 + mov ax, di ; 89 f8 ; 0xc0ea3 + call 00b9fh ; e8 f7 fc ; 0xc0ea5 + jmp short 00e82h ; eb d8 ; 0xc0ea8 + mov bx, 00085h ; bb 85 00 ; 0xc0eaa vgabios.c:57 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc0ead + xor dh, dh ; 30 f6 ; 0xc0eb0 vgabios.c:576 + mov word [bp-016h], dx ; 89 56 ea ; 0xc0eb2 + push dx ; 52 ; 0xc0eb5 + movzx dx, al ; 0f b6 d0 ; 0xc0eb6 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc0eb9 + mov bx, di ; 89 fb ; 0xc0ebd + call 00bddh ; e8 1b fd ; 0xc0ebf + mov bx, word [bp-016h] ; 8b 5e ea ; 0xc0ec2 vgabios.c:577 + mov dx, ax ; 89 c2 ; 0xc0ec5 + mov ax, di ; 89 f8 ; 0xc0ec7 + call 00c42h ; e8 76 fd ; 0xc0ec9 + jmp short 00e82h ; eb b4 ; 0xc0ecc + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc0ece vgabios.c:586 + pop di ; 5f ; 0xc0ed1 + pop si ; 5e ; 0xc0ed2 + pop cx ; 59 ; 0xc0ed3 + pop bx ; 5b ; 0xc0ed4 + pop bp ; 5d ; 0xc0ed5 + retn ; c3 ; 0xc0ed6 + ; disGetNextSymbol 0xc0ed7 LB 0x33e2 -> off=0x10 cb=0000000000000083 uValue=00000000000c0ee7 'vga_get_font_info' + db 0feh, 00eh, 043h, 00fh, 048h, 00fh, 04fh, 00fh, 054h, 00fh, 059h, 00fh, 05eh, 00fh, 063h, 00fh +vga_get_font_info: ; 0xc0ee7 LB 0x83 + push si ; 56 ; 0xc0ee7 vgabios.c:588 + push di ; 57 ; 0xc0ee8 + push bp ; 55 ; 0xc0ee9 + mov bp, sp ; 89 e5 ; 0xc0eea + mov di, dx ; 89 d7 ; 0xc0eec + mov si, bx ; 89 de ; 0xc0eee + cmp ax, strict word 00007h ; 3d 07 00 ; 0xc0ef0 vgabios.c:593 + jnbe short 00f3dh ; 77 48 ; 0xc0ef3 + mov bx, ax ; 89 c3 ; 0xc0ef5 + add bx, ax ; 01 c3 ; 0xc0ef7 + jmp word [cs:bx+00ed7h] ; 2e ff a7 d7 0e ; 0xc0ef9 + mov bx, strict word 0007ch ; bb 7c 00 ; 0xc0efe vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0f01 + mov es, ax ; 8e c0 ; 0xc0f03 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc0f05 + mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xc0f08 + push SS ; 16 ; 0xc0f0c vgabios.c:596 + pop ES ; 07 ; 0xc0f0d + mov word [es:si], dx ; 26 89 14 ; 0xc0f0e + mov word [es:di], ax ; 26 89 05 ; 0xc0f11 + mov bx, 00085h ; bb 85 00 ; 0xc0f14 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0f17 + mov es, ax ; 8e c0 ; 0xc0f1a + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0f1c + xor ah, ah ; 30 e4 ; 0xc0f1f + push SS ; 16 ; 0xc0f21 + pop ES ; 07 ; 0xc0f22 + mov bx, cx ; 89 cb ; 0xc0f23 + mov word [es:bx], ax ; 26 89 07 ; 0xc0f25 + mov bx, 00084h ; bb 84 00 ; 0xc0f28 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0f2b + mov es, ax ; 8e c0 ; 0xc0f2e + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0f30 + xor ah, ah ; 30 e4 ; 0xc0f33 + push SS ; 16 ; 0xc0f35 + pop ES ; 07 ; 0xc0f36 + mov bx, word [bp+008h] ; 8b 5e 08 ; 0xc0f37 + mov word [es:bx], ax ; 26 89 07 ; 0xc0f3a + pop bp ; 5d ; 0xc0f3d + pop di ; 5f ; 0xc0f3e + pop si ; 5e ; 0xc0f3f + retn 00002h ; c2 02 00 ; 0xc0f40 + mov bx, 0010ch ; bb 0c 01 ; 0xc0f43 vgabios.c:67 + jmp short 00f01h ; eb b9 ; 0xc0f46 + mov dx, 05d6dh ; ba 6d 5d ; 0xc0f48 vgabios.c:601 + mov ax, ds ; 8c d8 ; 0xc0f4b + jmp short 00f0ch ; eb bd ; 0xc0f4d vgabios.c:602 + mov dx, 0556dh ; ba 6d 55 ; 0xc0f4f vgabios.c:604 + jmp short 00f4bh ; eb f7 ; 0xc0f52 + mov dx, 0596dh ; ba 6d 59 ; 0xc0f54 vgabios.c:607 + jmp short 00f4bh ; eb f2 ; 0xc0f57 + mov dx, 07b6dh ; ba 6d 7b ; 0xc0f59 vgabios.c:610 + jmp short 00f4bh ; eb ed ; 0xc0f5c + mov dx, 06b6dh ; ba 6d 6b ; 0xc0f5e vgabios.c:613 + jmp short 00f4bh ; eb e8 ; 0xc0f61 + mov dx, 07c9ah ; ba 9a 7c ; 0xc0f63 vgabios.c:616 + jmp short 00f4bh ; eb e3 ; 0xc0f66 + jmp short 00f3dh ; eb d3 ; 0xc0f68 vgabios.c:622 + ; disGetNextSymbol 0xc0f6a LB 0x334f -> off=0x0 cb=0000000000000156 uValue=00000000000c0f6a 'vga_read_pixel' +vga_read_pixel: ; 0xc0f6a LB 0x156 + push bp ; 55 ; 0xc0f6a vgabios.c:635 + mov bp, sp ; 89 e5 ; 0xc0f6b + push si ; 56 ; 0xc0f6d + push di ; 57 ; 0xc0f6e + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc0f6f + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc0f72 + mov word [bp-00ch], bx ; 89 5e f4 ; 0xc0f75 + mov si, cx ; 89 ce ; 0xc0f78 + mov bx, strict word 00049h ; bb 49 00 ; 0xc0f7a vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0f7d + mov es, ax ; 8e c0 ; 0xc0f80 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0f82 + xor ah, ah ; 30 e4 ; 0xc0f85 vgabios.c:642 + call 035edh ; e8 63 26 ; 0xc0f87 + mov ah, al ; 88 c4 ; 0xc0f8a + cmp AL, strict byte 0ffh ; 3c ff ; 0xc0f8c vgabios.c:643 + je near 010b9h ; 0f 84 27 01 ; 0xc0f8e + movzx bx, al ; 0f b6 d8 ; 0xc0f92 vgabios.c:645 + sal bx, 003h ; c1 e3 03 ; 0xc0f95 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc0f98 + je near 010b9h ; 0f 84 18 01 ; 0xc0f9d + mov ch, byte [bx+047b1h] ; 8a af b1 47 ; 0xc0fa1 vgabios.c:649 + cmp ch, 003h ; 80 fd 03 ; 0xc0fa5 + jc short 00fbbh ; 72 11 ; 0xc0fa8 + jbe short 00fc3h ; 76 17 ; 0xc0faa + cmp ch, 005h ; 80 fd 05 ; 0xc0fac + je near 01092h ; 0f 84 df 00 ; 0xc0faf + cmp ch, 004h ; 80 fd 04 ; 0xc0fb3 + je short 00fc3h ; 74 0b ; 0xc0fb6 + jmp near 010b2h ; e9 f7 00 ; 0xc0fb8 + cmp ch, 002h ; 80 fd 02 ; 0xc0fbb + je short 0102eh ; 74 6e ; 0xc0fbe + jmp near 010b2h ; e9 ef 00 ; 0xc0fc0 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc0fc3 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0fc6 + mov es, ax ; 8e c0 ; 0xc0fc9 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0fcb + imul ax, word [bp-00ch] ; 0f af 46 f4 ; 0xc0fce vgabios.c:58 + mov bx, dx ; 89 d3 ; 0xc0fd2 + shr bx, 003h ; c1 eb 03 ; 0xc0fd4 + add bx, ax ; 01 c3 ; 0xc0fd7 + mov di, strict word 0004ch ; bf 4c 00 ; 0xc0fd9 vgabios.c:57 + mov cx, word [es:di] ; 26 8b 0d ; 0xc0fdc + movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xc0fdf vgabios.c:58 + imul ax, cx ; 0f af c1 ; 0xc0fe3 + add bx, ax ; 01 c3 ; 0xc0fe6 + mov cl, dl ; 88 d1 ; 0xc0fe8 vgabios.c:654 + and cl, 007h ; 80 e1 07 ; 0xc0fea + mov ax, 00080h ; b8 80 00 ; 0xc0fed + sar ax, CL ; d3 f8 ; 0xc0ff0 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc0ff2 + xor ch, ch ; 30 ed ; 0xc0ff5 vgabios.c:655 + mov byte [bp-006h], ch ; 88 6e fa ; 0xc0ff7 vgabios.c:656 + jmp short 01004h ; eb 08 ; 0xc0ffa + cmp byte [bp-006h], 004h ; 80 7e fa 04 ; 0xc0ffc + jnc near 010b4h ; 0f 83 b0 00 ; 0xc1000 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc1004 vgabios.c:657 + sal ax, 008h ; c1 e0 08 ; 0xc1008 + or AL, strict byte 004h ; 0c 04 ; 0xc100b + mov dx, 003ceh ; ba ce 03 ; 0xc100d + out DX, ax ; ef ; 0xc1010 + mov ax, 0a000h ; b8 00 a0 ; 0xc1011 vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc1014 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1016 + and al, byte [bp-008h] ; 22 46 f8 ; 0xc1019 vgabios.c:48 + test al, al ; 84 c0 ; 0xc101c vgabios.c:659 + jbe short 01029h ; 76 09 ; 0xc101e + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc1020 vgabios.c:660 + mov AL, strict byte 001h ; b0 01 ; 0xc1023 + sal al, CL ; d2 e0 ; 0xc1025 + or ch, al ; 08 c5 ; 0xc1027 + inc byte [bp-006h] ; fe 46 fa ; 0xc1029 vgabios.c:661 + jmp short 00ffch ; eb ce ; 0xc102c + movzx cx, byte [bx+047b2h] ; 0f b6 8f b2 47 ; 0xc102e vgabios.c:664 + mov bx, strict word 00004h ; bb 04 00 ; 0xc1033 + sub bx, cx ; 29 cb ; 0xc1036 + mov cx, bx ; 89 d9 ; 0xc1038 + mov bx, dx ; 89 d3 ; 0xc103a + shr bx, CL ; d3 eb ; 0xc103c + mov cx, bx ; 89 d9 ; 0xc103e + mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xc1040 + shr bx, 1 ; d1 eb ; 0xc1043 + imul bx, bx, strict byte 00050h ; 6b db 50 ; 0xc1045 + add bx, cx ; 01 cb ; 0xc1048 + test byte [bp-00ch], 001h ; f6 46 f4 01 ; 0xc104a vgabios.c:665 + je short 01053h ; 74 03 ; 0xc104e + add bh, 020h ; 80 c7 20 ; 0xc1050 vgabios.c:666 + mov cx, 0b800h ; b9 00 b8 ; 0xc1053 vgabios.c:47 + mov es, cx ; 8e c1 ; 0xc1056 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1058 + movzx bx, ah ; 0f b6 dc ; 0xc105b vgabios.c:668 + sal bx, 003h ; c1 e3 03 ; 0xc105e + cmp byte [bx+047b2h], 002h ; 80 bf b2 47 02 ; 0xc1061 + jne short 0107dh ; 75 15 ; 0xc1066 + and dx, strict byte 00003h ; 83 e2 03 ; 0xc1068 vgabios.c:669 + mov cx, strict word 00003h ; b9 03 00 ; 0xc106b + sub cx, dx ; 29 d1 ; 0xc106e + add cx, cx ; 01 c9 ; 0xc1070 + xor ah, ah ; 30 e4 ; 0xc1072 + sar ax, CL ; d3 f8 ; 0xc1074 + mov ch, al ; 88 c5 ; 0xc1076 + and ch, 003h ; 80 e5 03 ; 0xc1078 + jmp short 010b4h ; eb 37 ; 0xc107b vgabios.c:670 + xor dh, dh ; 30 f6 ; 0xc107d vgabios.c:671 + and dl, 007h ; 80 e2 07 ; 0xc107f + mov cx, strict word 00007h ; b9 07 00 ; 0xc1082 + sub cx, dx ; 29 d1 ; 0xc1085 + xor ah, ah ; 30 e4 ; 0xc1087 + sar ax, CL ; d3 f8 ; 0xc1089 + mov ch, al ; 88 c5 ; 0xc108b + and ch, 001h ; 80 e5 01 ; 0xc108d + jmp short 010b4h ; eb 22 ; 0xc1090 vgabios.c:672 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1092 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1095 + mov es, ax ; 8e c0 ; 0xc1098 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc109a + sal ax, 003h ; c1 e0 03 ; 0xc109d vgabios.c:58 + mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xc10a0 + imul bx, ax ; 0f af d8 ; 0xc10a3 + add bx, dx ; 01 d3 ; 0xc10a6 + mov ax, 0a000h ; b8 00 a0 ; 0xc10a8 vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc10ab + mov ch, byte [es:bx] ; 26 8a 2f ; 0xc10ad + jmp short 010b4h ; eb 02 ; 0xc10b0 vgabios.c:676 + xor ch, ch ; 30 ed ; 0xc10b2 vgabios.c:681 + push SS ; 16 ; 0xc10b4 vgabios.c:683 + pop ES ; 07 ; 0xc10b5 + mov byte [es:si], ch ; 26 88 2c ; 0xc10b6 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc10b9 vgabios.c:684 + pop di ; 5f ; 0xc10bc + pop si ; 5e ; 0xc10bd + pop bp ; 5d ; 0xc10be + retn ; c3 ; 0xc10bf + ; disGetNextSymbol 0xc10c0 LB 0x31f9 -> off=0x0 cb=000000000000008c uValue=00000000000c10c0 'biosfn_perform_gray_scale_summing' +biosfn_perform_gray_scale_summing: ; 0xc10c0 LB 0x8c + push bp ; 55 ; 0xc10c0 vgabios.c:689 + mov bp, sp ; 89 e5 ; 0xc10c1 + push bx ; 53 ; 0xc10c3 + push cx ; 51 ; 0xc10c4 + push si ; 56 ; 0xc10c5 + push di ; 57 ; 0xc10c6 + push ax ; 50 ; 0xc10c7 + push ax ; 50 ; 0xc10c8 + mov bx, ax ; 89 c3 ; 0xc10c9 + mov di, dx ; 89 d7 ; 0xc10cb + mov dx, 003dah ; ba da 03 ; 0xc10cd vgabios.c:694 + in AL, DX ; ec ; 0xc10d0 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc10d1 + xor al, al ; 30 c0 ; 0xc10d3 vgabios.c:695 + mov dx, 003c0h ; ba c0 03 ; 0xc10d5 + out DX, AL ; ee ; 0xc10d8 + xor si, si ; 31 f6 ; 0xc10d9 vgabios.c:697 + cmp si, di ; 39 fe ; 0xc10db + jnc short 01131h ; 73 52 ; 0xc10dd + mov al, bl ; 88 d8 ; 0xc10df vgabios.c:700 + mov dx, 003c7h ; ba c7 03 ; 0xc10e1 + out DX, AL ; ee ; 0xc10e4 + mov dx, 003c9h ; ba c9 03 ; 0xc10e5 vgabios.c:702 + in AL, DX ; ec ; 0xc10e8 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc10e9 + mov cx, ax ; 89 c1 ; 0xc10eb + in AL, DX ; ec ; 0xc10ed vgabios.c:703 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc10ee + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc10f0 + in AL, DX ; ec ; 0xc10f3 vgabios.c:704 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc10f4 + xor ch, ch ; 30 ed ; 0xc10f6 vgabios.c:707 + imul cx, cx, strict byte 0004dh ; 6b c9 4d ; 0xc10f8 + mov word [bp-00ah], cx ; 89 4e f6 ; 0xc10fb + movzx cx, byte [bp-00ch] ; 0f b6 4e f4 ; 0xc10fe + imul cx, cx, 00097h ; 69 c9 97 00 ; 0xc1102 + add cx, word [bp-00ah] ; 03 4e f6 ; 0xc1106 + xor ah, ah ; 30 e4 ; 0xc1109 + imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xc110b + add cx, ax ; 01 c1 ; 0xc110e + add cx, 00080h ; 81 c1 80 00 ; 0xc1110 + sar cx, 008h ; c1 f9 08 ; 0xc1114 + cmp cx, strict byte 0003fh ; 83 f9 3f ; 0xc1117 vgabios.c:709 + jbe short 0111fh ; 76 03 ; 0xc111a + mov cx, strict word 0003fh ; b9 3f 00 ; 0xc111c + mov al, bl ; 88 d8 ; 0xc111f vgabios.c:712 + mov dx, 003c8h ; ba c8 03 ; 0xc1121 + out DX, AL ; ee ; 0xc1124 + mov al, cl ; 88 c8 ; 0xc1125 vgabios.c:714 + mov dx, 003c9h ; ba c9 03 ; 0xc1127 + out DX, AL ; ee ; 0xc112a + out DX, AL ; ee ; 0xc112b vgabios.c:715 + out DX, AL ; ee ; 0xc112c vgabios.c:716 + inc bx ; 43 ; 0xc112d vgabios.c:717 + inc si ; 46 ; 0xc112e vgabios.c:718 + jmp short 010dbh ; eb aa ; 0xc112f + mov dx, 003dah ; ba da 03 ; 0xc1131 vgabios.c:719 + in AL, DX ; ec ; 0xc1134 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1135 + mov AL, strict byte 020h ; b0 20 ; 0xc1137 vgabios.c:720 + mov dx, 003c0h ; ba c0 03 ; 0xc1139 + out DX, AL ; ee ; 0xc113c + mov dx, 003dah ; ba da 03 ; 0xc113d vgabios.c:722 + in AL, DX ; ec ; 0xc1140 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1141 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc1143 vgabios.c:724 + pop di ; 5f ; 0xc1146 + pop si ; 5e ; 0xc1147 + pop cx ; 59 ; 0xc1148 + pop bx ; 5b ; 0xc1149 + pop bp ; 5d ; 0xc114a + retn ; c3 ; 0xc114b + ; disGetNextSymbol 0xc114c LB 0x316d -> off=0x0 cb=00000000000000f6 uValue=00000000000c114c 'biosfn_set_cursor_shape' +biosfn_set_cursor_shape: ; 0xc114c LB 0xf6 + push bp ; 55 ; 0xc114c vgabios.c:727 + mov bp, sp ; 89 e5 ; 0xc114d + push bx ; 53 ; 0xc114f + push cx ; 51 ; 0xc1150 + push si ; 56 ; 0xc1151 + push di ; 57 ; 0xc1152 + push ax ; 50 ; 0xc1153 + mov bl, al ; 88 c3 ; 0xc1154 + mov ah, dl ; 88 d4 ; 0xc1156 + movzx cx, al ; 0f b6 c8 ; 0xc1158 vgabios.c:733 + sal cx, 008h ; c1 e1 08 ; 0xc115b + movzx dx, ah ; 0f b6 d4 ; 0xc115e + add dx, cx ; 01 ca ; 0xc1161 + mov si, strict word 00060h ; be 60 00 ; 0xc1163 vgabios.c:62 + mov cx, strict word 00040h ; b9 40 00 ; 0xc1166 + mov es, cx ; 8e c1 ; 0xc1169 + mov word [es:si], dx ; 26 89 14 ; 0xc116b + mov si, 00087h ; be 87 00 ; 0xc116e vgabios.c:47 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc1171 + test dl, 008h ; f6 c2 08 ; 0xc1174 vgabios.c:48 + jne near 01217h ; 0f 85 9c 00 ; 0xc1177 + mov dl, al ; 88 c2 ; 0xc117b vgabios.c:739 + and dl, 060h ; 80 e2 60 ; 0xc117d + cmp dl, 020h ; 80 fa 20 ; 0xc1180 + jne short 0118ch ; 75 07 ; 0xc1183 + mov BL, strict byte 01eh ; b3 1e ; 0xc1185 vgabios.c:741 + xor ah, ah ; 30 e4 ; 0xc1187 vgabios.c:742 + jmp near 01217h ; e9 8b 00 ; 0xc1189 vgabios.c:743 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc118c vgabios.c:47 + test dl, 001h ; f6 c2 01 ; 0xc118f vgabios.c:48 + jne near 01217h ; 0f 85 81 00 ; 0xc1192 + cmp bl, 020h ; 80 fb 20 ; 0xc1196 + jnc near 01217h ; 0f 83 7a 00 ; 0xc1199 + cmp ah, 020h ; 80 fc 20 ; 0xc119d + jnc near 01217h ; 0f 83 73 00 ; 0xc11a0 + mov si, 00085h ; be 85 00 ; 0xc11a4 vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc11a7 + mov es, dx ; 8e c2 ; 0xc11aa + mov cx, word [es:si] ; 26 8b 0c ; 0xc11ac + mov dx, cx ; 89 ca ; 0xc11af vgabios.c:58 + cmp ah, bl ; 38 dc ; 0xc11b1 vgabios.c:754 + jnc short 011c1h ; 73 0c ; 0xc11b3 + test ah, ah ; 84 e4 ; 0xc11b5 vgabios.c:756 + je short 01217h ; 74 5e ; 0xc11b7 + xor bl, bl ; 30 db ; 0xc11b9 vgabios.c:757 + mov ah, cl ; 88 cc ; 0xc11bb vgabios.c:758 + db 0feh, 0cch + ; dec ah ; fe cc ; 0xc11bd + jmp short 01217h ; eb 56 ; 0xc11bf vgabios.c:760 + movzx si, ah ; 0f b6 f4 ; 0xc11c1 vgabios.c:761 + mov word [bp-00ah], si ; 89 76 f6 ; 0xc11c4 + movzx si, bl ; 0f b6 f3 ; 0xc11c7 + or si, word [bp-00ah] ; 0b 76 f6 ; 0xc11ca + cmp si, cx ; 39 ce ; 0xc11cd + jnc short 011e4h ; 73 13 ; 0xc11cf + movzx di, ah ; 0f b6 fc ; 0xc11d1 + mov si, cx ; 89 ce ; 0xc11d4 + dec si ; 4e ; 0xc11d6 + cmp di, si ; 39 f7 ; 0xc11d7 + je short 01217h ; 74 3c ; 0xc11d9 + movzx si, bl ; 0f b6 f3 ; 0xc11db + dec cx ; 49 ; 0xc11de + dec cx ; 49 ; 0xc11df + cmp si, cx ; 39 ce ; 0xc11e0 + je short 01217h ; 74 33 ; 0xc11e2 + cmp ah, 003h ; 80 fc 03 ; 0xc11e4 vgabios.c:763 + jbe short 01217h ; 76 2e ; 0xc11e7 + movzx si, bl ; 0f b6 f3 ; 0xc11e9 vgabios.c:764 + movzx di, ah ; 0f b6 fc ; 0xc11ec + inc si ; 46 ; 0xc11ef + inc si ; 46 ; 0xc11f0 + mov cl, dl ; 88 d1 ; 0xc11f1 + db 0feh, 0c9h + ; dec cl ; fe c9 ; 0xc11f3 + cmp di, si ; 39 f7 ; 0xc11f5 + jnle short 0120ch ; 7f 13 ; 0xc11f7 + sub bl, ah ; 28 e3 ; 0xc11f9 vgabios.c:766 + add bl, dl ; 00 d3 ; 0xc11fb + db 0feh, 0cbh + ; dec bl ; fe cb ; 0xc11fd + mov ah, cl ; 88 cc ; 0xc11ff vgabios.c:767 + cmp dx, strict byte 0000eh ; 83 fa 0e ; 0xc1201 vgabios.c:768 + jc short 01217h ; 72 11 ; 0xc1204 + db 0feh, 0cch + ; dec ah ; fe cc ; 0xc1206 vgabios.c:770 + db 0feh, 0cbh + ; dec bl ; fe cb ; 0xc1208 vgabios.c:771 + jmp short 01217h ; eb 0b ; 0xc120a vgabios.c:773 + cmp bl, 002h ; 80 fb 02 ; 0xc120c + jbe short 01215h ; 76 04 ; 0xc120f + shr dx, 1 ; d1 ea ; 0xc1211 vgabios.c:775 + mov bl, dl ; 88 d3 ; 0xc1213 + mov ah, cl ; 88 cc ; 0xc1215 vgabios.c:779 + mov si, strict word 00063h ; be 63 00 ; 0xc1217 vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc121a + mov es, dx ; 8e c2 ; 0xc121d + mov cx, word [es:si] ; 26 8b 0c ; 0xc121f + mov AL, strict byte 00ah ; b0 0a ; 0xc1222 vgabios.c:790 + mov dx, cx ; 89 ca ; 0xc1224 + out DX, AL ; ee ; 0xc1226 + mov si, cx ; 89 ce ; 0xc1227 vgabios.c:791 + inc si ; 46 ; 0xc1229 + mov al, bl ; 88 d8 ; 0xc122a + mov dx, si ; 89 f2 ; 0xc122c + out DX, AL ; ee ; 0xc122e + mov AL, strict byte 00bh ; b0 0b ; 0xc122f vgabios.c:792 + mov dx, cx ; 89 ca ; 0xc1231 + out DX, AL ; ee ; 0xc1233 + mov al, ah ; 88 e0 ; 0xc1234 vgabios.c:793 + mov dx, si ; 89 f2 ; 0xc1236 + out DX, AL ; ee ; 0xc1238 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc1239 vgabios.c:794 + pop di ; 5f ; 0xc123c + pop si ; 5e ; 0xc123d + pop cx ; 59 ; 0xc123e + pop bx ; 5b ; 0xc123f + pop bp ; 5d ; 0xc1240 + retn ; c3 ; 0xc1241 + ; disGetNextSymbol 0xc1242 LB 0x3077 -> off=0x0 cb=0000000000000089 uValue=00000000000c1242 'biosfn_set_cursor_pos' +biosfn_set_cursor_pos: ; 0xc1242 LB 0x89 + push bp ; 55 ; 0xc1242 vgabios.c:797 + mov bp, sp ; 89 e5 ; 0xc1243 + push bx ; 53 ; 0xc1245 + push cx ; 51 ; 0xc1246 + push si ; 56 ; 0xc1247 + push ax ; 50 ; 0xc1248 + cmp AL, strict byte 007h ; 3c 07 ; 0xc1249 vgabios.c:803 + jnbe short 012c3h ; 77 76 ; 0xc124b + movzx bx, al ; 0f b6 d8 ; 0xc124d vgabios.c:806 + add bx, bx ; 01 db ; 0xc1250 + add bx, strict byte 00050h ; 83 c3 50 ; 0xc1252 + mov cx, strict word 00040h ; b9 40 00 ; 0xc1255 vgabios.c:62 + mov es, cx ; 8e c1 ; 0xc1258 + mov word [es:bx], dx ; 26 89 17 ; 0xc125a + mov bx, strict word 00062h ; bb 62 00 ; 0xc125d vgabios.c:47 + mov ah, byte [es:bx] ; 26 8a 27 ; 0xc1260 + cmp al, ah ; 38 e0 ; 0xc1263 vgabios.c:810 + jne short 012c3h ; 75 5c ; 0xc1265 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1267 vgabios.c:57 + mov cx, word [es:bx] ; 26 8b 0f ; 0xc126a + mov bx, 00084h ; bb 84 00 ; 0xc126d vgabios.c:47 + mov ah, byte [es:bx] ; 26 8a 27 ; 0xc1270 + movzx bx, ah ; 0f b6 dc ; 0xc1273 vgabios.c:48 + inc bx ; 43 ; 0xc1276 + mov si, dx ; 89 d6 ; 0xc1277 vgabios.c:816 + and si, 0ff00h ; 81 e6 00 ff ; 0xc1279 + shr si, 008h ; c1 ee 08 ; 0xc127d + mov word [bp-008h], si ; 89 76 f8 ; 0xc1280 + imul bx, cx ; 0f af d9 ; 0xc1283 vgabios.c:819 + or bl, 0ffh ; 80 cb ff ; 0xc1286 + xor ah, ah ; 30 e4 ; 0xc1289 + inc bx ; 43 ; 0xc128b + imul ax, bx ; 0f af c3 ; 0xc128c + movzx si, dl ; 0f b6 f2 ; 0xc128f + add si, ax ; 01 c6 ; 0xc1292 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc1294 + imul ax, cx ; 0f af c1 ; 0xc1298 + add si, ax ; 01 c6 ; 0xc129b + mov bx, strict word 00063h ; bb 63 00 ; 0xc129d vgabios.c:57 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc12a0 + mov AL, strict byte 00eh ; b0 0e ; 0xc12a3 vgabios.c:823 + mov dx, bx ; 89 da ; 0xc12a5 + out DX, AL ; ee ; 0xc12a7 + mov ax, si ; 89 f0 ; 0xc12a8 vgabios.c:824 + xor al, al ; 30 c0 ; 0xc12aa + shr ax, 008h ; c1 e8 08 ; 0xc12ac + lea cx, [bx+001h] ; 8d 4f 01 ; 0xc12af + mov dx, cx ; 89 ca ; 0xc12b2 + out DX, AL ; ee ; 0xc12b4 + mov AL, strict byte 00fh ; b0 0f ; 0xc12b5 vgabios.c:825 + mov dx, bx ; 89 da ; 0xc12b7 + out DX, AL ; ee ; 0xc12b9 + and si, 000ffh ; 81 e6 ff 00 ; 0xc12ba vgabios.c:826 + mov ax, si ; 89 f0 ; 0xc12be + mov dx, cx ; 89 ca ; 0xc12c0 + out DX, AL ; ee ; 0xc12c2 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc12c3 vgabios.c:828 + pop si ; 5e ; 0xc12c6 + pop cx ; 59 ; 0xc12c7 + pop bx ; 5b ; 0xc12c8 + pop bp ; 5d ; 0xc12c9 + retn ; c3 ; 0xc12ca + ; disGetNextSymbol 0xc12cb LB 0x2fee -> off=0x0 cb=00000000000000cd uValue=00000000000c12cb 'biosfn_set_active_page' +biosfn_set_active_page: ; 0xc12cb LB 0xcd + push bp ; 55 ; 0xc12cb vgabios.c:831 + mov bp, sp ; 89 e5 ; 0xc12cc + push bx ; 53 ; 0xc12ce + push cx ; 51 ; 0xc12cf + push dx ; 52 ; 0xc12d0 + push si ; 56 ; 0xc12d1 + push di ; 57 ; 0xc12d2 + push ax ; 50 ; 0xc12d3 + push ax ; 50 ; 0xc12d4 + mov cl, al ; 88 c1 ; 0xc12d5 + cmp AL, strict byte 007h ; 3c 07 ; 0xc12d7 vgabios.c:837 + jnbe near 0138eh ; 0f 87 b1 00 ; 0xc12d9 + mov bx, strict word 00049h ; bb 49 00 ; 0xc12dd vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc12e0 + mov es, ax ; 8e c0 ; 0xc12e3 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc12e5 + xor ah, ah ; 30 e4 ; 0xc12e8 vgabios.c:841 + call 035edh ; e8 00 23 ; 0xc12ea + mov ch, al ; 88 c5 ; 0xc12ed + cmp AL, strict byte 0ffh ; 3c ff ; 0xc12ef vgabios.c:842 + je near 0138eh ; 0f 84 99 00 ; 0xc12f1 + movzx ax, cl ; 0f b6 c1 ; 0xc12f5 vgabios.c:845 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc12f8 + lea dx, [bp-00ch] ; 8d 56 f4 ; 0xc12fb + call 00a93h ; e8 92 f7 ; 0xc12fe + movzx bx, ch ; 0f b6 dd ; 0xc1301 vgabios.c:847 + mov si, bx ; 89 de ; 0xc1304 + sal si, 003h ; c1 e6 03 ; 0xc1306 + cmp byte [si+047b0h], 000h ; 80 bc b0 47 00 ; 0xc1309 + jne short 01344h ; 75 34 ; 0xc130e + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1310 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1313 + mov es, ax ; 8e c0 ; 0xc1316 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc1318 + mov bx, 00084h ; bb 84 00 ; 0xc131b vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc131e + xor ah, ah ; 30 e4 ; 0xc1321 vgabios.c:48 + inc ax ; 40 ; 0xc1323 + imul dx, ax ; 0f af d0 ; 0xc1324 vgabios.c:854 + mov ax, dx ; 89 d0 ; 0xc1327 + add ax, dx ; 01 d0 ; 0xc1329 + or AL, strict byte 0ffh ; 0c ff ; 0xc132b + mov bx, ax ; 89 c3 ; 0xc132d + movzx ax, cl ; 0f b6 c1 ; 0xc132f + inc bx ; 43 ; 0xc1332 + imul bx, ax ; 0f af d8 ; 0xc1333 + mov si, strict word 0004eh ; be 4e 00 ; 0xc1336 vgabios.c:62 + mov word [es:si], bx ; 26 89 1c ; 0xc1339 + or dl, 0ffh ; 80 ca ff ; 0xc133c vgabios.c:858 + mov bx, dx ; 89 d3 ; 0xc133f + inc bx ; 43 ; 0xc1341 + jmp short 01353h ; eb 0f ; 0xc1342 vgabios.c:860 + movzx bx, byte [bx+0482fh] ; 0f b6 9f 2f 48 ; 0xc1344 vgabios.c:862 + sal bx, 006h ; c1 e3 06 ; 0xc1349 + movzx ax, cl ; 0f b6 c1 ; 0xc134c + mov bx, word [bx+04846h] ; 8b 9f 46 48 ; 0xc134f + imul bx, ax ; 0f af d8 ; 0xc1353 + mov si, strict word 00063h ; be 63 00 ; 0xc1356 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1359 + mov es, ax ; 8e c0 ; 0xc135c + mov si, word [es:si] ; 26 8b 34 ; 0xc135e + mov AL, strict byte 00ch ; b0 0c ; 0xc1361 vgabios.c:867 + mov dx, si ; 89 f2 ; 0xc1363 + out DX, AL ; ee ; 0xc1365 + mov ax, bx ; 89 d8 ; 0xc1366 vgabios.c:868 + xor al, bl ; 30 d8 ; 0xc1368 + shr ax, 008h ; c1 e8 08 ; 0xc136a + lea di, [si+001h] ; 8d 7c 01 ; 0xc136d + mov dx, di ; 89 fa ; 0xc1370 + out DX, AL ; ee ; 0xc1372 + mov AL, strict byte 00dh ; b0 0d ; 0xc1373 vgabios.c:869 + mov dx, si ; 89 f2 ; 0xc1375 + out DX, AL ; ee ; 0xc1377 + xor bh, bh ; 30 ff ; 0xc1378 vgabios.c:870 + mov ax, bx ; 89 d8 ; 0xc137a + mov dx, di ; 89 fa ; 0xc137c + out DX, AL ; ee ; 0xc137e + mov bx, strict word 00062h ; bb 62 00 ; 0xc137f vgabios.c:52 + mov byte [es:bx], cl ; 26 88 0f ; 0xc1382 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc1385 vgabios.c:880 + movzx ax, cl ; 0f b6 c1 ; 0xc1388 + call 01242h ; e8 b4 fe ; 0xc138b + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc138e vgabios.c:881 + pop di ; 5f ; 0xc1391 + pop si ; 5e ; 0xc1392 + pop dx ; 5a ; 0xc1393 + pop cx ; 59 ; 0xc1394 + pop bx ; 5b ; 0xc1395 + pop bp ; 5d ; 0xc1396 + retn ; c3 ; 0xc1397 + ; disGetNextSymbol 0xc1398 LB 0x2f21 -> off=0x0 cb=0000000000000045 uValue=00000000000c1398 'find_vpti' +find_vpti: ; 0xc1398 LB 0x45 + push bx ; 53 ; 0xc1398 vgabios.c:916 + push si ; 56 ; 0xc1399 + push bp ; 55 ; 0xc139a + mov bp, sp ; 89 e5 ; 0xc139b + movzx bx, al ; 0f b6 d8 ; 0xc139d vgabios.c:921 + mov si, bx ; 89 de ; 0xc13a0 + sal si, 003h ; c1 e6 03 ; 0xc13a2 + cmp byte [si+047b0h], 000h ; 80 bc b0 47 00 ; 0xc13a5 + jne short 013d4h ; 75 28 ; 0xc13aa + mov si, 00089h ; be 89 00 ; 0xc13ac vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc13af + mov es, ax ; 8e c0 ; 0xc13b2 + mov al, byte [es:si] ; 26 8a 04 ; 0xc13b4 + test AL, strict byte 010h ; a8 10 ; 0xc13b7 vgabios.c:923 + je short 013c2h ; 74 07 ; 0xc13b9 + movsx ax, byte [bx+07df6h] ; 0f be 87 f6 7d ; 0xc13bb vgabios.c:924 + jmp short 013d9h ; eb 17 ; 0xc13c0 vgabios.c:925 + test AL, strict byte 080h ; a8 80 ; 0xc13c2 + je short 013cdh ; 74 07 ; 0xc13c4 + movsx ax, byte [bx+07de6h] ; 0f be 87 e6 7d ; 0xc13c6 vgabios.c:926 + jmp short 013d9h ; eb 0c ; 0xc13cb vgabios.c:927 + movsx ax, byte [bx+07deeh] ; 0f be 87 ee 7d ; 0xc13cd vgabios.c:928 + jmp short 013d9h ; eb 05 ; 0xc13d2 vgabios.c:929 + movzx ax, byte [bx+0482fh] ; 0f b6 87 2f 48 ; 0xc13d4 vgabios.c:930 + pop bp ; 5d ; 0xc13d9 vgabios.c:933 + pop si ; 5e ; 0xc13da + pop bx ; 5b ; 0xc13db + retn ; c3 ; 0xc13dc + ; disGetNextSymbol 0xc13dd LB 0x2edc -> off=0x0 cb=00000000000004b2 uValue=00000000000c13dd 'biosfn_set_video_mode' +biosfn_set_video_mode: ; 0xc13dd LB 0x4b2 + push bp ; 55 ; 0xc13dd vgabios.c:938 + mov bp, sp ; 89 e5 ; 0xc13de + push bx ; 53 ; 0xc13e0 + push cx ; 51 ; 0xc13e1 + push dx ; 52 ; 0xc13e2 + push si ; 56 ; 0xc13e3 + push di ; 57 ; 0xc13e4 + sub sp, strict byte 00016h ; 83 ec 16 ; 0xc13e5 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc13e8 + and AL, strict byte 080h ; 24 80 ; 0xc13eb vgabios.c:942 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc13ed + call 007bfh ; e8 cc f3 ; 0xc13f0 vgabios.c:952 + test ax, ax ; 85 c0 ; 0xc13f3 + je short 01403h ; 74 0c ; 0xc13f5 + mov AL, strict byte 007h ; b0 07 ; 0xc13f7 vgabios.c:954 + mov dx, 003c4h ; ba c4 03 ; 0xc13f9 + out DX, AL ; ee ; 0xc13fc + xor al, al ; 30 c0 ; 0xc13fd vgabios.c:955 + mov dx, 003c5h ; ba c5 03 ; 0xc13ff + out DX, AL ; ee ; 0xc1402 + and byte [bp-00eh], 07fh ; 80 66 f2 7f ; 0xc1403 vgabios.c:960 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc1407 vgabios.c:966 + call 035edh ; e8 df 21 ; 0xc140b + mov byte [bp-010h], al ; 88 46 f0 ; 0xc140e + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1411 vgabios.c:972 + je near 01885h ; 0f 84 6e 04 ; 0xc1413 + mov bx, 000a8h ; bb a8 00 ; 0xc1417 vgabios.c:67 + mov dx, strict word 00040h ; ba 40 00 ; 0xc141a + mov es, dx ; 8e c2 ; 0xc141d + mov di, word [es:bx] ; 26 8b 3f ; 0xc141f + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc1422 + mov bx, di ; 89 fb ; 0xc1426 vgabios.c:68 + mov word [bp-014h], dx ; 89 56 ec ; 0xc1428 + movzx cx, al ; 0f b6 c8 ; 0xc142b vgabios.c:978 + mov ax, cx ; 89 c8 ; 0xc142e + call 01398h ; e8 65 ff ; 0xc1430 + mov es, dx ; 8e c2 ; 0xc1433 vgabios.c:979 + mov si, word [es:di] ; 26 8b 35 ; 0xc1435 + mov dx, word [es:di+002h] ; 26 8b 55 02 ; 0xc1438 + mov word [bp-01ah], dx ; 89 56 e6 ; 0xc143c + xor ah, ah ; 30 e4 ; 0xc143f vgabios.c:980 + sal ax, 006h ; c1 e0 06 ; 0xc1441 + add si, ax ; 01 c6 ; 0xc1444 + mov di, 00089h ; bf 89 00 ; 0xc1446 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1449 + mov es, ax ; 8e c0 ; 0xc144c + mov al, byte [es:di] ; 26 8a 05 ; 0xc144e + mov ah, al ; 88 c4 ; 0xc1451 vgabios.c:48 + test AL, strict byte 008h ; a8 08 ; 0xc1453 vgabios.c:997 + jne near 01509h ; 0f 85 b0 00 ; 0xc1455 + mov di, cx ; 89 cf ; 0xc1459 vgabios.c:999 + sal di, 003h ; c1 e7 03 ; 0xc145b + mov al, byte [di+047b5h] ; 8a 85 b5 47 ; 0xc145e + mov dx, 003c6h ; ba c6 03 ; 0xc1462 + out DX, AL ; ee ; 0xc1465 + xor al, al ; 30 c0 ; 0xc1466 vgabios.c:1002 + mov dx, 003c8h ; ba c8 03 ; 0xc1468 + out DX, AL ; ee ; 0xc146b + mov cl, byte [di+047b6h] ; 8a 8d b6 47 ; 0xc146c vgabios.c:1005 + cmp cl, 001h ; 80 f9 01 ; 0xc1470 + jc short 01483h ; 72 0e ; 0xc1473 + jbe short 0148eh ; 76 17 ; 0xc1475 + cmp cl, 003h ; 80 f9 03 ; 0xc1477 + je short 0149ch ; 74 20 ; 0xc147a + cmp cl, 002h ; 80 f9 02 ; 0xc147c + je short 01495h ; 74 14 ; 0xc147f + jmp short 014a1h ; eb 1e ; 0xc1481 + test cl, cl ; 84 c9 ; 0xc1483 + jne short 014a1h ; 75 1a ; 0xc1485 + mov word [bp-016h], 04fc3h ; c7 46 ea c3 4f ; 0xc1487 vgabios.c:1007 + jmp short 014a1h ; eb 13 ; 0xc148c vgabios.c:1008 + mov word [bp-016h], 05083h ; c7 46 ea 83 50 ; 0xc148e vgabios.c:1010 + jmp short 014a1h ; eb 0c ; 0xc1493 vgabios.c:1011 + mov word [bp-016h], 05143h ; c7 46 ea 43 51 ; 0xc1495 vgabios.c:1013 + jmp short 014a1h ; eb 05 ; 0xc149a vgabios.c:1014 + mov word [bp-016h], 05203h ; c7 46 ea 03 52 ; 0xc149c vgabios.c:1016 + movzx di, byte [bp-010h] ; 0f b6 7e f0 ; 0xc14a1 vgabios.c:1020 + sal di, 003h ; c1 e7 03 ; 0xc14a5 + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc14a8 + jne short 014beh ; 75 0f ; 0xc14ad + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc14af vgabios.c:1022 + cmp byte [es:si+002h], 008h ; 26 80 7c 02 08 ; 0xc14b2 + jne short 014beh ; 75 05 ; 0xc14b7 + mov word [bp-016h], 05083h ; c7 46 ea 83 50 ; 0xc14b9 vgabios.c:1023 + xor cx, cx ; 31 c9 ; 0xc14be vgabios.c:1026 + jmp short 014d1h ; eb 0f ; 0xc14c0 + xor al, al ; 30 c0 ; 0xc14c2 vgabios.c:1033 + mov dx, 003c9h ; ba c9 03 ; 0xc14c4 + out DX, AL ; ee ; 0xc14c7 + out DX, AL ; ee ; 0xc14c8 vgabios.c:1034 + out DX, AL ; ee ; 0xc14c9 vgabios.c:1035 + inc cx ; 41 ; 0xc14ca vgabios.c:1037 + cmp cx, 00100h ; 81 f9 00 01 ; 0xc14cb + jnc short 014fch ; 73 2b ; 0xc14cf + movzx di, byte [bp-010h] ; 0f b6 7e f0 ; 0xc14d1 + sal di, 003h ; c1 e7 03 ; 0xc14d5 + movzx di, byte [di+047b6h] ; 0f b6 bd b6 47 ; 0xc14d8 + movzx di, byte [di+0483fh] ; 0f b6 bd 3f 48 ; 0xc14dd + cmp cx, di ; 39 f9 ; 0xc14e2 + jnbe short 014c2h ; 77 dc ; 0xc14e4 + imul di, cx, strict byte 00003h ; 6b f9 03 ; 0xc14e6 + add di, word [bp-016h] ; 03 7e ea ; 0xc14e9 + mov al, byte [di] ; 8a 05 ; 0xc14ec + mov dx, 003c9h ; ba c9 03 ; 0xc14ee + out DX, AL ; ee ; 0xc14f1 + mov al, byte [di+001h] ; 8a 45 01 ; 0xc14f2 + out DX, AL ; ee ; 0xc14f5 + mov al, byte [di+002h] ; 8a 45 02 ; 0xc14f6 + out DX, AL ; ee ; 0xc14f9 + jmp short 014cah ; eb ce ; 0xc14fa + test ah, 002h ; f6 c4 02 ; 0xc14fc vgabios.c:1038 + je short 01509h ; 74 08 ; 0xc14ff + mov dx, 00100h ; ba 00 01 ; 0xc1501 vgabios.c:1040 + xor ax, ax ; 31 c0 ; 0xc1504 + call 010c0h ; e8 b7 fb ; 0xc1506 + mov dx, 003dah ; ba da 03 ; 0xc1509 vgabios.c:1045 + in AL, DX ; ec ; 0xc150c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc150d + xor cx, cx ; 31 c9 ; 0xc150f vgabios.c:1048 + jmp short 01518h ; eb 05 ; 0xc1511 + cmp cx, strict byte 00013h ; 83 f9 13 ; 0xc1513 + jnbe short 0152dh ; 77 15 ; 0xc1516 + mov al, cl ; 88 c8 ; 0xc1518 vgabios.c:1049 + mov dx, 003c0h ; ba c0 03 ; 0xc151a + out DX, AL ; ee ; 0xc151d + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc151e vgabios.c:1050 + mov di, si ; 89 f7 ; 0xc1521 + add di, cx ; 01 cf ; 0xc1523 + mov al, byte [es:di+023h] ; 26 8a 45 23 ; 0xc1525 + out DX, AL ; ee ; 0xc1529 + inc cx ; 41 ; 0xc152a vgabios.c:1051 + jmp short 01513h ; eb e6 ; 0xc152b + mov AL, strict byte 014h ; b0 14 ; 0xc152d vgabios.c:1052 + mov dx, 003c0h ; ba c0 03 ; 0xc152f + out DX, AL ; ee ; 0xc1532 + xor al, al ; 30 c0 ; 0xc1533 vgabios.c:1053 + out DX, AL ; ee ; 0xc1535 + mov es, [bp-014h] ; 8e 46 ec ; 0xc1536 vgabios.c:1056 + mov dx, word [es:bx+004h] ; 26 8b 57 04 ; 0xc1539 + mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xc153d + test ax, ax ; 85 c0 ; 0xc1541 + jne short 01549h ; 75 04 ; 0xc1543 + test dx, dx ; 85 d2 ; 0xc1545 + je short 01589h ; 74 40 ; 0xc1547 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc1549 vgabios.c:1060 + xor cx, cx ; 31 c9 ; 0xc154c vgabios.c:1061 + jmp short 01555h ; eb 05 ; 0xc154e + cmp cx, strict byte 00010h ; 83 f9 10 ; 0xc1550 + jnc short 01579h ; 73 24 ; 0xc1553 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1555 vgabios.c:1062 + mov di, si ; 89 f7 ; 0xc1558 + add di, cx ; 01 cf ; 0xc155a + mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xc155c + mov word [bp-020h], ax ; 89 46 e0 ; 0xc155f + mov ax, dx ; 89 d0 ; 0xc1562 + add ax, cx ; 01 c8 ; 0xc1564 + mov word [bp-01eh], ax ; 89 46 e2 ; 0xc1566 + mov al, byte [es:di+023h] ; 26 8a 45 23 ; 0xc1569 + mov es, [bp-020h] ; 8e 46 e0 ; 0xc156d + mov di, word [bp-01eh] ; 8b 7e e2 ; 0xc1570 + mov byte [es:di], al ; 26 88 05 ; 0xc1573 + inc cx ; 41 ; 0xc1576 + jmp short 01550h ; eb d7 ; 0xc1577 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1579 vgabios.c:1063 + mov al, byte [es:si+034h] ; 26 8a 44 34 ; 0xc157c + mov es, [bp-01ch] ; 8e 46 e4 ; 0xc1580 + mov di, dx ; 89 d7 ; 0xc1583 + mov byte [es:di+010h], al ; 26 88 45 10 ; 0xc1585 + xor al, al ; 30 c0 ; 0xc1589 vgabios.c:1067 + mov dx, 003c4h ; ba c4 03 ; 0xc158b + out DX, AL ; ee ; 0xc158e + mov AL, strict byte 003h ; b0 03 ; 0xc158f vgabios.c:1068 + mov dx, 003c5h ; ba c5 03 ; 0xc1591 + out DX, AL ; ee ; 0xc1594 + mov cx, strict word 00001h ; b9 01 00 ; 0xc1595 vgabios.c:1069 + jmp short 0159fh ; eb 05 ; 0xc1598 + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc159a + jnbe short 015b7h ; 77 18 ; 0xc159d + mov al, cl ; 88 c8 ; 0xc159f vgabios.c:1070 + mov dx, 003c4h ; ba c4 03 ; 0xc15a1 + out DX, AL ; ee ; 0xc15a4 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc15a5 vgabios.c:1071 + mov di, si ; 89 f7 ; 0xc15a8 + add di, cx ; 01 cf ; 0xc15aa + mov al, byte [es:di+004h] ; 26 8a 45 04 ; 0xc15ac + mov dx, 003c5h ; ba c5 03 ; 0xc15b0 + out DX, AL ; ee ; 0xc15b3 + inc cx ; 41 ; 0xc15b4 vgabios.c:1072 + jmp short 0159ah ; eb e3 ; 0xc15b5 + xor cx, cx ; 31 c9 ; 0xc15b7 vgabios.c:1075 + jmp short 015c0h ; eb 05 ; 0xc15b9 + cmp cx, strict byte 00008h ; 83 f9 08 ; 0xc15bb + jnbe short 015d8h ; 77 18 ; 0xc15be + mov al, cl ; 88 c8 ; 0xc15c0 vgabios.c:1076 + mov dx, 003ceh ; ba ce 03 ; 0xc15c2 + out DX, AL ; ee ; 0xc15c5 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc15c6 vgabios.c:1077 + mov di, si ; 89 f7 ; 0xc15c9 + add di, cx ; 01 cf ; 0xc15cb + mov al, byte [es:di+037h] ; 26 8a 45 37 ; 0xc15cd + mov dx, 003cfh ; ba cf 03 ; 0xc15d1 + out DX, AL ; ee ; 0xc15d4 + inc cx ; 41 ; 0xc15d5 vgabios.c:1078 + jmp short 015bbh ; eb e3 ; 0xc15d6 + movzx di, byte [bp-010h] ; 0f b6 7e f0 ; 0xc15d8 vgabios.c:1081 + sal di, 003h ; c1 e7 03 ; 0xc15dc + cmp byte [di+047b1h], 001h ; 80 bd b1 47 01 ; 0xc15df + jne short 015ebh ; 75 05 ; 0xc15e4 + mov cx, 003b4h ; b9 b4 03 ; 0xc15e6 + jmp short 015eeh ; eb 03 ; 0xc15e9 + mov cx, 003d4h ; b9 d4 03 ; 0xc15eb + mov word [bp-018h], cx ; 89 4e e8 ; 0xc15ee + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc15f1 vgabios.c:1084 + mov al, byte [es:si+009h] ; 26 8a 44 09 ; 0xc15f4 + mov dx, 003c2h ; ba c2 03 ; 0xc15f8 + out DX, AL ; ee ; 0xc15fb + mov ax, strict word 00011h ; b8 11 00 ; 0xc15fc vgabios.c:1087 + mov dx, cx ; 89 ca ; 0xc15ff + out DX, ax ; ef ; 0xc1601 + xor cx, cx ; 31 c9 ; 0xc1602 vgabios.c:1089 + jmp short 0160bh ; eb 05 ; 0xc1604 + cmp cx, strict byte 00018h ; 83 f9 18 ; 0xc1606 + jnbe short 01621h ; 77 16 ; 0xc1609 + mov al, cl ; 88 c8 ; 0xc160b vgabios.c:1090 + mov dx, word [bp-018h] ; 8b 56 e8 ; 0xc160d + out DX, AL ; ee ; 0xc1610 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1611 vgabios.c:1091 + mov di, si ; 89 f7 ; 0xc1614 + add di, cx ; 01 cf ; 0xc1616 + inc dx ; 42 ; 0xc1618 + mov al, byte [es:di+00ah] ; 26 8a 45 0a ; 0xc1619 + out DX, AL ; ee ; 0xc161d + inc cx ; 41 ; 0xc161e vgabios.c:1092 + jmp short 01606h ; eb e5 ; 0xc161f + mov AL, strict byte 020h ; b0 20 ; 0xc1621 vgabios.c:1095 + mov dx, 003c0h ; ba c0 03 ; 0xc1623 + out DX, AL ; ee ; 0xc1626 + mov dx, word [bp-018h] ; 8b 56 e8 ; 0xc1627 vgabios.c:1096 + add dx, strict byte 00006h ; 83 c2 06 ; 0xc162a + in AL, DX ; ec ; 0xc162d + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc162e + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1630 vgabios.c:1098 + jne short 01692h ; 75 5c ; 0xc1634 + movzx di, byte [bp-010h] ; 0f b6 7e f0 ; 0xc1636 vgabios.c:1100 + sal di, 003h ; c1 e7 03 ; 0xc163a + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc163d + jne short 01656h ; 75 12 ; 0xc1642 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc1644 vgabios.c:1102 + mov cx, 04000h ; b9 00 40 ; 0xc1648 + mov ax, 00720h ; b8 20 07 ; 0xc164b + xor di, di ; 31 ff ; 0xc164e + jcxz 01654h ; e3 02 ; 0xc1650 + rep stosw ; f3 ab ; 0xc1652 + jmp short 01692h ; eb 3c ; 0xc1654 vgabios.c:1104 + cmp byte [bp-00eh], 00dh ; 80 7e f2 0d ; 0xc1656 vgabios.c:1106 + jnc short 0166dh ; 73 11 ; 0xc165a + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc165c vgabios.c:1108 + mov cx, 04000h ; b9 00 40 ; 0xc1660 + xor ax, ax ; 31 c0 ; 0xc1663 + xor di, di ; 31 ff ; 0xc1665 + jcxz 0166bh ; e3 02 ; 0xc1667 + rep stosw ; f3 ab ; 0xc1669 + jmp short 01692h ; eb 25 ; 0xc166b vgabios.c:1110 + mov AL, strict byte 002h ; b0 02 ; 0xc166d vgabios.c:1112 + mov dx, 003c4h ; ba c4 03 ; 0xc166f + out DX, AL ; ee ; 0xc1672 + mov dx, 003c5h ; ba c5 03 ; 0xc1673 vgabios.c:1113 + in AL, DX ; ec ; 0xc1676 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1677 + mov word [bp-01eh], ax ; 89 46 e2 ; 0xc1679 + mov AL, strict byte 00fh ; b0 0f ; 0xc167c vgabios.c:1114 + out DX, AL ; ee ; 0xc167e + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc167f vgabios.c:1115 + mov cx, 08000h ; b9 00 80 ; 0xc1683 + xor ax, ax ; 31 c0 ; 0xc1686 + xor di, di ; 31 ff ; 0xc1688 + jcxz 0168eh ; e3 02 ; 0xc168a + rep stosw ; f3 ab ; 0xc168c + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc168e vgabios.c:1116 + out DX, AL ; ee ; 0xc1691 + mov di, strict word 00049h ; bf 49 00 ; 0xc1692 vgabios.c:52 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1695 + mov es, ax ; 8e c0 ; 0xc1698 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc169a + mov byte [es:di], al ; 26 88 05 ; 0xc169d + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc16a0 vgabios.c:1123 + movzx ax, byte [es:si] ; 26 0f b6 04 ; 0xc16a3 + mov di, strict word 0004ah ; bf 4a 00 ; 0xc16a7 vgabios.c:62 + mov dx, strict word 00040h ; ba 40 00 ; 0xc16aa + mov es, dx ; 8e c2 ; 0xc16ad + mov word [es:di], ax ; 26 89 05 ; 0xc16af + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc16b2 vgabios.c:60 + mov ax, word [es:si+003h] ; 26 8b 44 03 ; 0xc16b5 + mov di, strict word 0004ch ; bf 4c 00 ; 0xc16b9 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc16bc + mov word [es:di], ax ; 26 89 05 ; 0xc16be + mov di, strict word 00063h ; bf 63 00 ; 0xc16c1 vgabios.c:62 + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc16c4 + mov word [es:di], ax ; 26 89 05 ; 0xc16c7 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc16ca vgabios.c:50 + mov al, byte [es:si+001h] ; 26 8a 44 01 ; 0xc16cd + mov di, 00084h ; bf 84 00 ; 0xc16d1 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc16d4 + mov byte [es:di], al ; 26 88 05 ; 0xc16d6 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc16d9 vgabios.c:1127 + movzx ax, byte [es:si+002h] ; 26 0f b6 44 02 ; 0xc16dc + mov di, 00085h ; bf 85 00 ; 0xc16e1 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc16e4 + mov word [es:di], ax ; 26 89 05 ; 0xc16e6 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc16e9 vgabios.c:1128 + or AL, strict byte 060h ; 0c 60 ; 0xc16ec + mov di, 00087h ; bf 87 00 ; 0xc16ee vgabios.c:52 + mov byte [es:di], al ; 26 88 05 ; 0xc16f1 + mov di, 00088h ; bf 88 00 ; 0xc16f4 vgabios.c:52 + mov byte [es:di], 0f9h ; 26 c6 05 f9 ; 0xc16f7 + mov di, 0008ah ; bf 8a 00 ; 0xc16fb vgabios.c:52 + mov byte [es:di], 008h ; 26 c6 05 08 ; 0xc16fe + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc1702 vgabios.c:1134 + cmp AL, strict byte 007h ; 3c 07 ; 0xc1705 + jnbe short 0172fh ; 77 26 ; 0xc1707 + movzx di, al ; 0f b6 f8 ; 0xc1709 vgabios.c:1136 + mov al, byte [di+07ddeh] ; 8a 85 de 7d ; 0xc170c vgabios.c:50 + mov di, strict word 00065h ; bf 65 00 ; 0xc1710 vgabios.c:52 + mov byte [es:di], al ; 26 88 05 ; 0xc1713 + cmp byte [bp-00eh], 006h ; 80 7e f2 06 ; 0xc1716 vgabios.c:1137 + jne short 01721h ; 75 05 ; 0xc171a + mov dx, strict word 0003fh ; ba 3f 00 ; 0xc171c + jmp short 01724h ; eb 03 ; 0xc171f + mov dx, strict word 00030h ; ba 30 00 ; 0xc1721 + mov di, strict word 00066h ; bf 66 00 ; 0xc1724 vgabios.c:52 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1727 + mov es, ax ; 8e c0 ; 0xc172a + mov byte [es:di], dl ; 26 88 15 ; 0xc172c + movzx di, byte [bp-010h] ; 0f b6 7e f0 ; 0xc172f vgabios.c:1141 + sal di, 003h ; c1 e7 03 ; 0xc1733 + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc1736 + jne short 01746h ; 75 09 ; 0xc173b + mov dx, strict word 00007h ; ba 07 00 ; 0xc173d vgabios.c:1143 + mov ax, strict word 00006h ; b8 06 00 ; 0xc1740 + call 0114ch ; e8 06 fa ; 0xc1743 + xor cx, cx ; 31 c9 ; 0xc1746 vgabios.c:1148 + jmp short 0174fh ; eb 05 ; 0xc1748 + cmp cx, strict byte 00008h ; 83 f9 08 ; 0xc174a + jnc short 0175ah ; 73 0b ; 0xc174d + movzx ax, cl ; 0f b6 c1 ; 0xc174f vgabios.c:1149 + xor dx, dx ; 31 d2 ; 0xc1752 + call 01242h ; e8 eb fa ; 0xc1754 + inc cx ; 41 ; 0xc1757 + jmp short 0174ah ; eb f0 ; 0xc1758 + xor ax, ax ; 31 c0 ; 0xc175a vgabios.c:1152 + call 012cbh ; e8 6c fb ; 0xc175c + movzx di, byte [bp-010h] ; 0f b6 7e f0 ; 0xc175f vgabios.c:1155 + sal di, 003h ; c1 e7 03 ; 0xc1763 + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc1766 + jne near 01850h ; 0f 85 e1 00 ; 0xc176b + mov es, [bp-014h] ; 8e 46 ec ; 0xc176f vgabios.c:1157 + mov di, word [es:bx+008h] ; 26 8b 7f 08 ; 0xc1772 + mov ax, word [es:bx+00ah] ; 26 8b 47 0a ; 0xc1776 + mov word [bp-012h], ax ; 89 46 ee ; 0xc177a + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc177d vgabios.c:1159 + mov al, byte [es:si+002h] ; 26 8a 44 02 ; 0xc1780 + cmp AL, strict byte 00eh ; 3c 0e ; 0xc1784 + je short 017a8h ; 74 20 ; 0xc1786 + cmp AL, strict byte 008h ; 3c 08 ; 0xc1788 + jne short 017d2h ; 75 46 ; 0xc178a + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc178c vgabios.c:1161 + movzx ax, byte [es:si+002h] ; 26 0f b6 44 02 ; 0xc178f + push ax ; 50 ; 0xc1794 + push dword 000000000h ; 66 6a 00 ; 0xc1795 + mov cx, 00100h ; b9 00 01 ; 0xc1798 + mov bx, 0556dh ; bb 6d 55 ; 0xc179b + mov dx, 0c000h ; ba 00 c0 ; 0xc179e + xor ax, ax ; 31 c0 ; 0xc17a1 + call 02c0ah ; e8 64 14 ; 0xc17a3 + jmp short 017f4h ; eb 4c ; 0xc17a6 vgabios.c:1162 + xor ah, ah ; 30 e4 ; 0xc17a8 vgabios.c:1164 + push ax ; 50 ; 0xc17aa + push dword 000000000h ; 66 6a 00 ; 0xc17ab + mov cx, 00100h ; b9 00 01 ; 0xc17ae + mov bx, 05d6dh ; bb 6d 5d ; 0xc17b1 + mov dx, 0c000h ; ba 00 c0 ; 0xc17b4 + xor al, al ; 30 c0 ; 0xc17b7 + call 02c0ah ; e8 4e 14 ; 0xc17b9 + cmp byte [bp-00eh], 007h ; 80 7e f2 07 ; 0xc17bc vgabios.c:1165 + jne short 017f4h ; 75 32 ; 0xc17c0 + mov cx, strict word 0000eh ; b9 0e 00 ; 0xc17c2 vgabios.c:1166 + xor bx, bx ; 31 db ; 0xc17c5 + mov dx, 07b6dh ; ba 6d 7b ; 0xc17c7 + mov ax, 0c000h ; b8 00 c0 ; 0xc17ca + call 02b95h ; e8 c5 13 ; 0xc17cd + jmp short 017f4h ; eb 22 ; 0xc17d0 vgabios.c:1167 + xor ah, ah ; 30 e4 ; 0xc17d2 vgabios.c:1169 + push ax ; 50 ; 0xc17d4 + push dword 000000000h ; 66 6a 00 ; 0xc17d5 + mov cx, 00100h ; b9 00 01 ; 0xc17d8 + mov bx, 06b6dh ; bb 6d 6b ; 0xc17db + mov dx, 0c000h ; ba 00 c0 ; 0xc17de + xor al, al ; 30 c0 ; 0xc17e1 + call 02c0ah ; e8 24 14 ; 0xc17e3 + mov cx, strict word 00010h ; b9 10 00 ; 0xc17e6 vgabios.c:1170 + xor bx, bx ; 31 db ; 0xc17e9 + mov dx, 07c9ah ; ba 9a 7c ; 0xc17eb + mov ax, 0c000h ; b8 00 c0 ; 0xc17ee + call 02b95h ; e8 a1 13 ; 0xc17f1 + cmp word [bp-012h], strict byte 00000h ; 83 7e ee 00 ; 0xc17f4 vgabios.c:1172 + jne short 017feh ; 75 04 ; 0xc17f8 + test di, di ; 85 ff ; 0xc17fa + je short 01848h ; 74 4a ; 0xc17fc + xor cx, cx ; 31 c9 ; 0xc17fe vgabios.c:1177 + mov es, [bp-012h] ; 8e 46 ee ; 0xc1800 vgabios.c:1179 + mov bx, di ; 89 fb ; 0xc1803 + add bx, cx ; 01 cb ; 0xc1805 + mov al, byte [es:bx+00bh] ; 26 8a 47 0b ; 0xc1807 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc180b + je short 01817h ; 74 08 ; 0xc180d + cmp al, byte [bp-00eh] ; 3a 46 f2 ; 0xc180f vgabios.c:1181 + je short 01817h ; 74 03 ; 0xc1812 + inc cx ; 41 ; 0xc1814 vgabios.c:1183 + jmp short 01800h ; eb e9 ; 0xc1815 vgabios.c:1184 + mov es, [bp-012h] ; 8e 46 ee ; 0xc1817 vgabios.c:1186 + mov bx, di ; 89 fb ; 0xc181a + add bx, cx ; 01 cb ; 0xc181c + mov al, byte [es:bx+00bh] ; 26 8a 47 0b ; 0xc181e + cmp al, byte [bp-00eh] ; 3a 46 f2 ; 0xc1822 + jne short 01848h ; 75 21 ; 0xc1825 + movzx ax, byte [es:di] ; 26 0f b6 05 ; 0xc1827 vgabios.c:1191 + push ax ; 50 ; 0xc182b + movzx ax, byte [es:di+001h] ; 26 0f b6 45 01 ; 0xc182c + push ax ; 50 ; 0xc1831 + push word [es:di+004h] ; 26 ff 75 04 ; 0xc1832 + mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xc1836 + mov bx, word [es:di+006h] ; 26 8b 5d 06 ; 0xc183a + mov dx, word [es:di+008h] ; 26 8b 55 08 ; 0xc183e + mov ax, strict word 00010h ; b8 10 00 ; 0xc1842 + call 02c0ah ; e8 c2 13 ; 0xc1845 + xor bl, bl ; 30 db ; 0xc1848 vgabios.c:1195 + mov AL, strict byte 003h ; b0 03 ; 0xc184a + mov AH, strict byte 011h ; b4 11 ; 0xc184c + int 06dh ; cd 6d ; 0xc184e + mov bx, 0596dh ; bb 6d 59 ; 0xc1850 vgabios.c:1199 + mov cx, ds ; 8c d9 ; 0xc1853 + mov ax, strict word 0001fh ; b8 1f 00 ; 0xc1855 + call 009f0h ; e8 95 f1 ; 0xc1858 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc185b vgabios.c:1201 + mov al, byte [es:si+002h] ; 26 8a 44 02 ; 0xc185e + cmp AL, strict byte 010h ; 3c 10 ; 0xc1862 + je short 01880h ; 74 1a ; 0xc1864 + cmp AL, strict byte 00eh ; 3c 0e ; 0xc1866 + je short 0187bh ; 74 11 ; 0xc1868 + cmp AL, strict byte 008h ; 3c 08 ; 0xc186a + jne short 01885h ; 75 17 ; 0xc186c + mov bx, 0556dh ; bb 6d 55 ; 0xc186e vgabios.c:1203 + mov cx, ds ; 8c d9 ; 0xc1871 + mov ax, strict word 00043h ; b8 43 00 ; 0xc1873 + call 009f0h ; e8 77 f1 ; 0xc1876 + jmp short 01885h ; eb 0a ; 0xc1879 vgabios.c:1204 + mov bx, 05d6dh ; bb 6d 5d ; 0xc187b vgabios.c:1206 + jmp short 01871h ; eb f1 ; 0xc187e + mov bx, 06b6dh ; bb 6d 6b ; 0xc1880 vgabios.c:1209 + jmp short 01871h ; eb ec ; 0xc1883 + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc1885 vgabios.c:1212 + pop di ; 5f ; 0xc1888 + pop si ; 5e ; 0xc1889 + pop dx ; 5a ; 0xc188a + pop cx ; 59 ; 0xc188b + pop bx ; 5b ; 0xc188c + pop bp ; 5d ; 0xc188d + retn ; c3 ; 0xc188e + ; disGetNextSymbol 0xc188f LB 0x2a2a -> off=0x0 cb=0000000000000075 uValue=00000000000c188f 'vgamem_copy_pl4' +vgamem_copy_pl4: ; 0xc188f LB 0x75 + push bp ; 55 ; 0xc188f vgabios.c:1215 + mov bp, sp ; 89 e5 ; 0xc1890 + push si ; 56 ; 0xc1892 + push di ; 57 ; 0xc1893 + push ax ; 50 ; 0xc1894 + push ax ; 50 ; 0xc1895 + mov bh, cl ; 88 cf ; 0xc1896 + movzx di, dl ; 0f b6 fa ; 0xc1898 vgabios.c:1221 + movzx cx, byte [bp+006h] ; 0f b6 4e 06 ; 0xc189b + imul di, cx ; 0f af f9 ; 0xc189f + movzx si, byte [bp+004h] ; 0f b6 76 04 ; 0xc18a2 + imul di, si ; 0f af fe ; 0xc18a6 + xor ah, ah ; 30 e4 ; 0xc18a9 + add di, ax ; 01 c7 ; 0xc18ab + mov word [bp-008h], di ; 89 7e f8 ; 0xc18ad + movzx di, bl ; 0f b6 fb ; 0xc18b0 vgabios.c:1222 + imul cx, di ; 0f af cf ; 0xc18b3 + imul cx, si ; 0f af ce ; 0xc18b6 + add cx, ax ; 01 c1 ; 0xc18b9 + mov word [bp-006h], cx ; 89 4e fa ; 0xc18bb + mov ax, 00105h ; b8 05 01 ; 0xc18be vgabios.c:1223 + mov dx, 003ceh ; ba ce 03 ; 0xc18c1 + out DX, ax ; ef ; 0xc18c4 + xor bl, bl ; 30 db ; 0xc18c5 vgabios.c:1224 + cmp bl, byte [bp+006h] ; 3a 5e 06 ; 0xc18c7 + jnc short 018f4h ; 73 28 ; 0xc18ca + movzx cx, bh ; 0f b6 cf ; 0xc18cc vgabios.c:1226 + movzx si, bl ; 0f b6 f3 ; 0xc18cf + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc18d2 + imul ax, si ; 0f af c6 ; 0xc18d6 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc18d9 + add si, ax ; 01 c6 ; 0xc18dc + mov di, word [bp-006h] ; 8b 7e fa ; 0xc18de + add di, ax ; 01 c7 ; 0xc18e1 + mov dx, 0a000h ; ba 00 a0 ; 0xc18e3 + mov es, dx ; 8e c2 ; 0xc18e6 + jcxz 018f0h ; e3 06 ; 0xc18e8 + push DS ; 1e ; 0xc18ea + mov ds, dx ; 8e da ; 0xc18eb + rep movsb ; f3 a4 ; 0xc18ed + pop DS ; 1f ; 0xc18ef + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc18f0 vgabios.c:1227 + jmp short 018c7h ; eb d3 ; 0xc18f2 + mov ax, strict word 00005h ; b8 05 00 ; 0xc18f4 vgabios.c:1228 + mov dx, 003ceh ; ba ce 03 ; 0xc18f7 + out DX, ax ; ef ; 0xc18fa + lea sp, [bp-004h] ; 8d 66 fc ; 0xc18fb vgabios.c:1229 + pop di ; 5f ; 0xc18fe + pop si ; 5e ; 0xc18ff + pop bp ; 5d ; 0xc1900 + retn 00004h ; c2 04 00 ; 0xc1901 + ; disGetNextSymbol 0xc1904 LB 0x29b5 -> off=0x0 cb=0000000000000060 uValue=00000000000c1904 'vgamem_fill_pl4' +vgamem_fill_pl4: ; 0xc1904 LB 0x60 + push bp ; 55 ; 0xc1904 vgabios.c:1232 + mov bp, sp ; 89 e5 ; 0xc1905 + push di ; 57 ; 0xc1907 + push ax ; 50 ; 0xc1908 + push ax ; 50 ; 0xc1909 + mov byte [bp-004h], bl ; 88 5e fc ; 0xc190a + mov bh, cl ; 88 cf ; 0xc190d + movzx cx, dl ; 0f b6 ca ; 0xc190f vgabios.c:1238 + movzx dx, byte [bp+004h] ; 0f b6 56 04 ; 0xc1912 + imul cx, dx ; 0f af ca ; 0xc1916 + movzx dx, bh ; 0f b6 d7 ; 0xc1919 + imul dx, cx ; 0f af d1 ; 0xc191c + xor ah, ah ; 30 e4 ; 0xc191f + add dx, ax ; 01 c2 ; 0xc1921 + mov word [bp-006h], dx ; 89 56 fa ; 0xc1923 + mov ax, 00205h ; b8 05 02 ; 0xc1926 vgabios.c:1239 + mov dx, 003ceh ; ba ce 03 ; 0xc1929 + out DX, ax ; ef ; 0xc192c + xor bl, bl ; 30 db ; 0xc192d vgabios.c:1240 + cmp bl, byte [bp+004h] ; 3a 5e 04 ; 0xc192f + jnc short 01955h ; 73 21 ; 0xc1932 + movzx cx, byte [bp-004h] ; 0f b6 4e fc ; 0xc1934 vgabios.c:1242 + movzx ax, byte [bp+006h] ; 0f b6 46 06 ; 0xc1938 + movzx dx, bl ; 0f b6 d3 ; 0xc193c + movzx di, bh ; 0f b6 ff ; 0xc193f + imul di, dx ; 0f af fa ; 0xc1942 + add di, word [bp-006h] ; 03 7e fa ; 0xc1945 + mov dx, 0a000h ; ba 00 a0 ; 0xc1948 + mov es, dx ; 8e c2 ; 0xc194b + jcxz 01951h ; e3 02 ; 0xc194d + rep stosb ; f3 aa ; 0xc194f + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc1951 vgabios.c:1243 + jmp short 0192fh ; eb da ; 0xc1953 + mov ax, strict word 00005h ; b8 05 00 ; 0xc1955 vgabios.c:1244 + mov dx, 003ceh ; ba ce 03 ; 0xc1958 + out DX, ax ; ef ; 0xc195b + lea sp, [bp-002h] ; 8d 66 fe ; 0xc195c vgabios.c:1245 + pop di ; 5f ; 0xc195f + pop bp ; 5d ; 0xc1960 + retn 00004h ; c2 04 00 ; 0xc1961 + ; disGetNextSymbol 0xc1964 LB 0x2955 -> off=0x0 cb=00000000000000a3 uValue=00000000000c1964 'vgamem_copy_cga' +vgamem_copy_cga: ; 0xc1964 LB 0xa3 + push bp ; 55 ; 0xc1964 vgabios.c:1248 + mov bp, sp ; 89 e5 ; 0xc1965 + push si ; 56 ; 0xc1967 + push di ; 57 ; 0xc1968 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc1969 + mov dh, bl ; 88 de ; 0xc196c + mov byte [bp-006h], cl ; 88 4e fa ; 0xc196e + movzx di, dl ; 0f b6 fa ; 0xc1971 vgabios.c:1254 + movzx si, byte [bp+006h] ; 0f b6 76 06 ; 0xc1974 + imul di, si ; 0f af fe ; 0xc1978 + movzx bx, byte [bp+004h] ; 0f b6 5e 04 ; 0xc197b + imul di, bx ; 0f af fb ; 0xc197f + sar di, 1 ; d1 ff ; 0xc1982 + xor ah, ah ; 30 e4 ; 0xc1984 + add di, ax ; 01 c7 ; 0xc1986 + mov word [bp-00ch], di ; 89 7e f4 ; 0xc1988 + movzx dx, dh ; 0f b6 d6 ; 0xc198b vgabios.c:1255 + imul dx, si ; 0f af d6 ; 0xc198e + imul dx, bx ; 0f af d3 ; 0xc1991 + sar dx, 1 ; d1 fa ; 0xc1994 + add dx, ax ; 01 c2 ; 0xc1996 + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc1998 + mov byte [bp-008h], ah ; 88 66 f8 ; 0xc199b vgabios.c:1256 + movzx ax, byte [bp+006h] ; 0f b6 46 06 ; 0xc199e + cwd ; 99 ; 0xc19a2 + db 02bh, 0c2h + ; sub ax, dx ; 2b c2 ; 0xc19a3 + sar ax, 1 ; d1 f8 ; 0xc19a5 + movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xc19a7 + cmp bx, ax ; 39 c3 ; 0xc19ab + jnl short 019feh ; 7d 4f ; 0xc19ad + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc19af vgabios.c:1258 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc19b3 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc19b6 + imul bx, ax ; 0f af d8 ; 0xc19ba + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc19bd + add si, bx ; 01 de ; 0xc19c0 + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc19c2 + add di, bx ; 01 df ; 0xc19c5 + mov cx, word [bp-00eh] ; 8b 4e f2 ; 0xc19c7 + mov dx, 0b800h ; ba 00 b8 ; 0xc19ca + mov es, dx ; 8e c2 ; 0xc19cd + jcxz 019d7h ; e3 06 ; 0xc19cf + push DS ; 1e ; 0xc19d1 + mov ds, dx ; 8e da ; 0xc19d2 + rep movsb ; f3 a4 ; 0xc19d4 + pop DS ; 1f ; 0xc19d6 + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc19d7 vgabios.c:1259 + add si, 02000h ; 81 c6 00 20 ; 0xc19da + add si, bx ; 01 de ; 0xc19de + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc19e0 + add di, 02000h ; 81 c7 00 20 ; 0xc19e3 + add di, bx ; 01 df ; 0xc19e7 + mov cx, word [bp-00eh] ; 8b 4e f2 ; 0xc19e9 + mov dx, 0b800h ; ba 00 b8 ; 0xc19ec + mov es, dx ; 8e c2 ; 0xc19ef + jcxz 019f9h ; e3 06 ; 0xc19f1 + push DS ; 1e ; 0xc19f3 + mov ds, dx ; 8e da ; 0xc19f4 + rep movsb ; f3 a4 ; 0xc19f6 + pop DS ; 1f ; 0xc19f8 + inc byte [bp-008h] ; fe 46 f8 ; 0xc19f9 vgabios.c:1260 + jmp short 0199eh ; eb a0 ; 0xc19fc + lea sp, [bp-004h] ; 8d 66 fc ; 0xc19fe vgabios.c:1261 + pop di ; 5f ; 0xc1a01 + pop si ; 5e ; 0xc1a02 + pop bp ; 5d ; 0xc1a03 + retn 00004h ; c2 04 00 ; 0xc1a04 + ; disGetNextSymbol 0xc1a07 LB 0x28b2 -> off=0x0 cb=0000000000000081 uValue=00000000000c1a07 'vgamem_fill_cga' +vgamem_fill_cga: ; 0xc1a07 LB 0x81 + push bp ; 55 ; 0xc1a07 vgabios.c:1264 + mov bp, sp ; 89 e5 ; 0xc1a08 + push si ; 56 ; 0xc1a0a + push di ; 57 ; 0xc1a0b + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc1a0c + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc1a0f + mov byte [bp-008h], cl ; 88 4e f8 ; 0xc1a12 + movzx bx, dl ; 0f b6 da ; 0xc1a15 vgabios.c:1270 + movzx dx, byte [bp+004h] ; 0f b6 56 04 ; 0xc1a18 + imul bx, dx ; 0f af da ; 0xc1a1c + movzx dx, cl ; 0f b6 d1 ; 0xc1a1f + imul dx, bx ; 0f af d3 ; 0xc1a22 + sar dx, 1 ; d1 fa ; 0xc1a25 + xor ah, ah ; 30 e4 ; 0xc1a27 + add dx, ax ; 01 c2 ; 0xc1a29 + mov word [bp-00ch], dx ; 89 56 f4 ; 0xc1a2b + mov byte [bp-006h], ah ; 88 66 fa ; 0xc1a2e vgabios.c:1271 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1a31 + cwd ; 99 ; 0xc1a35 + db 02bh, 0c2h + ; sub ax, dx ; 2b c2 ; 0xc1a36 + sar ax, 1 ; d1 f8 ; 0xc1a38 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc1a3a + cmp dx, ax ; 39 c2 ; 0xc1a3e + jnl short 01a7fh ; 7d 3d ; 0xc1a40 + movzx si, byte [bp-00ah] ; 0f b6 76 f6 ; 0xc1a42 vgabios.c:1273 + movzx bx, byte [bp+006h] ; 0f b6 5e 06 ; 0xc1a46 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc1a4a + imul dx, ax ; 0f af d0 ; 0xc1a4e + mov word [bp-00eh], dx ; 89 56 f2 ; 0xc1a51 + mov di, word [bp-00ch] ; 8b 7e f4 ; 0xc1a54 + add di, dx ; 01 d7 ; 0xc1a57 + mov cx, si ; 89 f1 ; 0xc1a59 + mov ax, bx ; 89 d8 ; 0xc1a5b + mov dx, 0b800h ; ba 00 b8 ; 0xc1a5d + mov es, dx ; 8e c2 ; 0xc1a60 + jcxz 01a66h ; e3 02 ; 0xc1a62 + rep stosb ; f3 aa ; 0xc1a64 + mov di, word [bp-00ch] ; 8b 7e f4 ; 0xc1a66 vgabios.c:1274 + add di, 02000h ; 81 c7 00 20 ; 0xc1a69 + add di, word [bp-00eh] ; 03 7e f2 ; 0xc1a6d + mov cx, si ; 89 f1 ; 0xc1a70 + mov ax, bx ; 89 d8 ; 0xc1a72 + mov es, dx ; 8e c2 ; 0xc1a74 + jcxz 01a7ah ; e3 02 ; 0xc1a76 + rep stosb ; f3 aa ; 0xc1a78 + inc byte [bp-006h] ; fe 46 fa ; 0xc1a7a vgabios.c:1275 + jmp short 01a31h ; eb b2 ; 0xc1a7d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1a7f vgabios.c:1276 + pop di ; 5f ; 0xc1a82 + pop si ; 5e ; 0xc1a83 + pop bp ; 5d ; 0xc1a84 + retn 00004h ; c2 04 00 ; 0xc1a85 + ; disGetNextSymbol 0xc1a88 LB 0x2831 -> off=0x0 cb=0000000000000079 uValue=00000000000c1a88 'vgamem_copy_linear' +vgamem_copy_linear: ; 0xc1a88 LB 0x79 + push bp ; 55 ; 0xc1a88 vgabios.c:1279 + mov bp, sp ; 89 e5 ; 0xc1a89 + push si ; 56 ; 0xc1a8b + push di ; 57 ; 0xc1a8c + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc1a8d + mov ah, al ; 88 c4 ; 0xc1a90 + mov al, bl ; 88 d8 ; 0xc1a92 + mov bx, cx ; 89 cb ; 0xc1a94 + xor dh, dh ; 30 f6 ; 0xc1a96 vgabios.c:1285 + movzx di, byte [bp+006h] ; 0f b6 7e 06 ; 0xc1a98 + imul dx, di ; 0f af d7 ; 0xc1a9c + imul dx, word [bp+004h] ; 0f af 56 04 ; 0xc1a9f + movzx si, ah ; 0f b6 f4 ; 0xc1aa3 + add dx, si ; 01 f2 ; 0xc1aa6 + sal dx, 003h ; c1 e2 03 ; 0xc1aa8 + mov word [bp-008h], dx ; 89 56 f8 ; 0xc1aab + xor ah, ah ; 30 e4 ; 0xc1aae vgabios.c:1286 + imul ax, di ; 0f af c7 ; 0xc1ab0 + imul ax, word [bp+004h] ; 0f af 46 04 ; 0xc1ab3 + add si, ax ; 01 c6 ; 0xc1ab7 + sal si, 003h ; c1 e6 03 ; 0xc1ab9 + mov word [bp-00ah], si ; 89 76 f6 ; 0xc1abc + sal bx, 003h ; c1 e3 03 ; 0xc1abf vgabios.c:1287 + sal word [bp+004h], 003h ; c1 66 04 03 ; 0xc1ac2 vgabios.c:1288 + mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xc1ac6 vgabios.c:1289 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1aca + cmp al, byte [bp+006h] ; 3a 46 06 ; 0xc1acd + jnc short 01af8h ; 73 26 ; 0xc1ad0 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc1ad2 vgabios.c:1291 + imul ax, word [bp+004h] ; 0f af 46 04 ; 0xc1ad6 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc1ada + add si, ax ; 01 c6 ; 0xc1add + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc1adf + add di, ax ; 01 c7 ; 0xc1ae2 + mov cx, bx ; 89 d9 ; 0xc1ae4 + mov dx, 0a000h ; ba 00 a0 ; 0xc1ae6 + mov es, dx ; 8e c2 ; 0xc1ae9 + jcxz 01af3h ; e3 06 ; 0xc1aeb + push DS ; 1e ; 0xc1aed + mov ds, dx ; 8e da ; 0xc1aee + rep movsb ; f3 a4 ; 0xc1af0 + pop DS ; 1f ; 0xc1af2 + inc byte [bp-006h] ; fe 46 fa ; 0xc1af3 vgabios.c:1292 + jmp short 01acah ; eb d2 ; 0xc1af6 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1af8 vgabios.c:1293 + pop di ; 5f ; 0xc1afb + pop si ; 5e ; 0xc1afc + pop bp ; 5d ; 0xc1afd + retn 00004h ; c2 04 00 ; 0xc1afe + ; disGetNextSymbol 0xc1b01 LB 0x27b8 -> off=0x0 cb=000000000000005c uValue=00000000000c1b01 'vgamem_fill_linear' +vgamem_fill_linear: ; 0xc1b01 LB 0x5c + push bp ; 55 ; 0xc1b01 vgabios.c:1296 + mov bp, sp ; 89 e5 ; 0xc1b02 + push si ; 56 ; 0xc1b04 + push di ; 57 ; 0xc1b05 + push ax ; 50 ; 0xc1b06 + push ax ; 50 ; 0xc1b07 + mov si, bx ; 89 de ; 0xc1b08 + mov bx, cx ; 89 cb ; 0xc1b0a + xor dh, dh ; 30 f6 ; 0xc1b0c vgabios.c:1302 + movzx di, byte [bp+004h] ; 0f b6 7e 04 ; 0xc1b0e + imul dx, di ; 0f af d7 ; 0xc1b12 + imul dx, cx ; 0f af d1 ; 0xc1b15 + xor ah, ah ; 30 e4 ; 0xc1b18 + add ax, dx ; 01 d0 ; 0xc1b1a + sal ax, 003h ; c1 e0 03 ; 0xc1b1c + mov word [bp-008h], ax ; 89 46 f8 ; 0xc1b1f + sal si, 003h ; c1 e6 03 ; 0xc1b22 vgabios.c:1303 + sal bx, 003h ; c1 e3 03 ; 0xc1b25 vgabios.c:1304 + mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xc1b28 vgabios.c:1305 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1b2c + cmp al, byte [bp+004h] ; 3a 46 04 ; 0xc1b2f + jnc short 01b54h ; 73 20 ; 0xc1b32 + movzx ax, byte [bp+006h] ; 0f b6 46 06 ; 0xc1b34 vgabios.c:1307 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc1b38 + imul dx, bx ; 0f af d3 ; 0xc1b3c + mov di, word [bp-008h] ; 8b 7e f8 ; 0xc1b3f + add di, dx ; 01 d7 ; 0xc1b42 + mov cx, si ; 89 f1 ; 0xc1b44 + mov dx, 0a000h ; ba 00 a0 ; 0xc1b46 + mov es, dx ; 8e c2 ; 0xc1b49 + jcxz 01b4fh ; e3 02 ; 0xc1b4b + rep stosb ; f3 aa ; 0xc1b4d + inc byte [bp-006h] ; fe 46 fa ; 0xc1b4f vgabios.c:1308 + jmp short 01b2ch ; eb d8 ; 0xc1b52 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1b54 vgabios.c:1309 + pop di ; 5f ; 0xc1b57 + pop si ; 5e ; 0xc1b58 + pop bp ; 5d ; 0xc1b59 + retn 00004h ; c2 04 00 ; 0xc1b5a + ; disGetNextSymbol 0xc1b5d LB 0x275c -> off=0x0 cb=0000000000000628 uValue=00000000000c1b5d 'biosfn_scroll' +biosfn_scroll: ; 0xc1b5d LB 0x628 + push bp ; 55 ; 0xc1b5d vgabios.c:1312 + mov bp, sp ; 89 e5 ; 0xc1b5e + push si ; 56 ; 0xc1b60 + push di ; 57 ; 0xc1b61 + sub sp, strict byte 00018h ; 83 ec 18 ; 0xc1b62 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc1b65 + mov byte [bp-012h], dl ; 88 56 ee ; 0xc1b68 + mov byte [bp-00ch], bl ; 88 5e f4 ; 0xc1b6b + mov byte [bp-010h], cl ; 88 4e f0 ; 0xc1b6e + mov dh, byte [bp+006h] ; 8a 76 06 ; 0xc1b71 + cmp bl, byte [bp+004h] ; 3a 5e 04 ; 0xc1b74 vgabios.c:1321 + jnbe near 0217ch ; 0f 87 01 06 ; 0xc1b77 + cmp dh, cl ; 38 ce ; 0xc1b7b vgabios.c:1322 + jc near 0217ch ; 0f 82 fb 05 ; 0xc1b7d + mov bx, strict word 00049h ; bb 49 00 ; 0xc1b81 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1b84 + mov es, ax ; 8e c0 ; 0xc1b87 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1b89 + xor ah, ah ; 30 e4 ; 0xc1b8c vgabios.c:1326 + call 035edh ; e8 5c 1a ; 0xc1b8e + mov byte [bp-006h], al ; 88 46 fa ; 0xc1b91 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1b94 vgabios.c:1327 + je near 0217ch ; 0f 84 e2 05 ; 0xc1b96 + mov bx, 00084h ; bb 84 00 ; 0xc1b9a vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1b9d + mov es, ax ; 8e c0 ; 0xc1ba0 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1ba2 + movzx cx, al ; 0f b6 c8 ; 0xc1ba5 vgabios.c:48 + inc cx ; 41 ; 0xc1ba8 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1ba9 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc1bac + mov word [bp-014h], ax ; 89 46 ec ; 0xc1baf vgabios.c:58 + cmp byte [bp+008h], 0ffh ; 80 7e 08 ff ; 0xc1bb2 vgabios.c:1334 + jne short 01bc1h ; 75 09 ; 0xc1bb6 + mov bx, strict word 00062h ; bb 62 00 ; 0xc1bb8 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1bbb + mov byte [bp+008h], al ; 88 46 08 ; 0xc1bbe vgabios.c:48 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1bc1 vgabios.c:1337 + cmp ax, cx ; 39 c8 ; 0xc1bc5 + jc short 01bd0h ; 72 07 ; 0xc1bc7 + mov al, cl ; 88 c8 ; 0xc1bc9 + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc1bcb + mov byte [bp+004h], al ; 88 46 04 ; 0xc1bcd + movzx ax, dh ; 0f b6 c6 ; 0xc1bd0 vgabios.c:1338 + cmp ax, word [bp-014h] ; 3b 46 ec ; 0xc1bd3 + jc short 01bddh ; 72 05 ; 0xc1bd6 + mov dh, byte [bp-014h] ; 8a 76 ec ; 0xc1bd8 + db 0feh, 0ceh + ; dec dh ; fe ce ; 0xc1bdb + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc1bdd vgabios.c:1339 + cmp ax, cx ; 39 c8 ; 0xc1be1 + jbe short 01be9h ; 76 04 ; 0xc1be3 + mov byte [bp-008h], 000h ; c6 46 f8 00 ; 0xc1be5 + mov al, dh ; 88 f0 ; 0xc1be9 vgabios.c:1340 + sub al, byte [bp-010h] ; 2a 46 f0 ; 0xc1beb + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc1bee + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc1bf0 + movzx di, byte [bp-006h] ; 0f b6 7e fa ; 0xc1bf3 vgabios.c:1342 + mov bx, di ; 89 fb ; 0xc1bf7 + sal bx, 003h ; c1 e3 03 ; 0xc1bf9 + mov ax, word [bp-014h] ; 8b 46 ec ; 0xc1bfc + dec ax ; 48 ; 0xc1bff + mov word [bp-018h], ax ; 89 46 e8 ; 0xc1c00 + mov ax, cx ; 89 c8 ; 0xc1c03 + dec ax ; 48 ; 0xc1c05 + mov word [bp-016h], ax ; 89 46 ea ; 0xc1c06 + mov ax, word [bp-014h] ; 8b 46 ec ; 0xc1c09 + imul ax, cx ; 0f af c1 ; 0xc1c0c + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc1c0f + jne near 01db3h ; 0f 85 9b 01 ; 0xc1c14 + mov cx, ax ; 89 c1 ; 0xc1c18 vgabios.c:1345 + add cx, ax ; 01 c1 ; 0xc1c1a + or cl, 0ffh ; 80 c9 ff ; 0xc1c1c + movzx si, byte [bp+008h] ; 0f b6 76 08 ; 0xc1c1f + inc cx ; 41 ; 0xc1c23 + imul cx, si ; 0f af ce ; 0xc1c24 + mov word [bp-01ch], cx ; 89 4e e4 ; 0xc1c27 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1c2a vgabios.c:1350 + jne short 01c6bh ; 75 3b ; 0xc1c2e + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1c30 + jne short 01c6bh ; 75 35 ; 0xc1c34 + cmp byte [bp-010h], 000h ; 80 7e f0 00 ; 0xc1c36 + jne short 01c6bh ; 75 2f ; 0xc1c3a + movzx cx, byte [bp+004h] ; 0f b6 4e 04 ; 0xc1c3c + cmp cx, word [bp-016h] ; 3b 4e ea ; 0xc1c40 + jne short 01c6bh ; 75 26 ; 0xc1c43 + movzx dx, dh ; 0f b6 d6 ; 0xc1c45 + cmp dx, word [bp-018h] ; 3b 56 e8 ; 0xc1c48 + jne short 01c6bh ; 75 1e ; 0xc1c4b + movzx dx, byte [bp-012h] ; 0f b6 56 ee ; 0xc1c4d vgabios.c:1352 + sal dx, 008h ; c1 e2 08 ; 0xc1c51 + add dx, strict byte 00020h ; 83 c2 20 ; 0xc1c54 + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc1c57 + mov cx, ax ; 89 c1 ; 0xc1c5b + mov ax, dx ; 89 d0 ; 0xc1c5d + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1c5f + mov es, bx ; 8e c3 ; 0xc1c62 + jcxz 01c68h ; e3 02 ; 0xc1c64 + rep stosw ; f3 ab ; 0xc1c66 + jmp near 0217ch ; e9 11 05 ; 0xc1c68 vgabios.c:1354 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc1c6b vgabios.c:1356 + jne near 01d08h ; 0f 85 95 00 ; 0xc1c6f + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc1c73 vgabios.c:1357 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc1c77 + movzx dx, byte [bp+004h] ; 0f b6 56 04 ; 0xc1c7a + cmp dx, word [bp-01ah] ; 3b 56 e6 ; 0xc1c7e + jc near 0217ch ; 0f 82 f7 04 ; 0xc1c81 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc1c85 vgabios.c:1359 + add ax, word [bp-01ah] ; 03 46 e6 ; 0xc1c89 + cmp ax, dx ; 39 d0 ; 0xc1c8c + jnbe short 01c96h ; 77 06 ; 0xc1c8e + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1c90 + jne short 01cc9h ; 75 33 ; 0xc1c94 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc1c96 vgabios.c:1360 + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc1c9a + sal ax, 008h ; c1 e0 08 ; 0xc1c9e + add ax, strict word 00020h ; 05 20 00 ; 0xc1ca1 + mov bx, word [bp-01ah] ; 8b 5e e6 ; 0xc1ca4 + imul bx, word [bp-014h] ; 0f af 5e ec ; 0xc1ca7 + movzx dx, byte [bp-010h] ; 0f b6 56 f0 ; 0xc1cab + add dx, bx ; 01 da ; 0xc1caf + add dx, dx ; 01 d2 ; 0xc1cb1 + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1cb3 + add di, dx ; 01 d7 ; 0xc1cb6 + movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xc1cb8 + sal bx, 003h ; c1 e3 03 ; 0xc1cbc + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1cbf + jcxz 01cc7h ; e3 02 ; 0xc1cc3 + rep stosw ; f3 ab ; 0xc1cc5 + jmp short 01d02h ; eb 39 ; 0xc1cc7 vgabios.c:1361 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc1cc9 vgabios.c:1362 + mov si, ax ; 89 c6 ; 0xc1ccd + imul si, word [bp-014h] ; 0f af 76 ec ; 0xc1ccf + movzx dx, byte [bp-010h] ; 0f b6 56 f0 ; 0xc1cd3 + add si, dx ; 01 d6 ; 0xc1cd7 + add si, si ; 01 f6 ; 0xc1cd9 + movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xc1cdb + sal bx, 003h ; c1 e3 03 ; 0xc1cdf + mov ax, word [bx+047b3h] ; 8b 87 b3 47 ; 0xc1ce2 + mov bx, word [bp-01ah] ; 8b 5e e6 ; 0xc1ce6 + imul bx, word [bp-014h] ; 0f af 5e ec ; 0xc1ce9 + mov di, dx ; 89 d7 ; 0xc1ced + add di, bx ; 01 df ; 0xc1cef + add di, di ; 01 ff ; 0xc1cf1 + add di, word [bp-01ch] ; 03 7e e4 ; 0xc1cf3 + mov dx, ax ; 89 c2 ; 0xc1cf6 + mov es, ax ; 8e c0 ; 0xc1cf8 + jcxz 01d02h ; e3 06 ; 0xc1cfa + push DS ; 1e ; 0xc1cfc + mov ds, dx ; 8e da ; 0xc1cfd + rep movsw ; f3 a5 ; 0xc1cff + pop DS ; 1f ; 0xc1d01 + inc word [bp-01ah] ; ff 46 e6 ; 0xc1d02 vgabios.c:1363 + jmp near 01c7ah ; e9 72 ff ; 0xc1d05 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1d08 vgabios.c:1366 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc1d0c + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc1d0f + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1d13 + jnbe near 0217ch ; 0f 87 62 04 ; 0xc1d16 + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc1d1a vgabios.c:1368 + movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xc1d1e + add ax, dx ; 01 d0 ; 0xc1d22 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1d24 + jnbe short 01d2fh ; 77 06 ; 0xc1d27 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1d29 + jne short 01d62h ; 75 33 ; 0xc1d2d + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc1d2f vgabios.c:1369 + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc1d33 + sal ax, 008h ; c1 e0 08 ; 0xc1d37 + add ax, strict word 00020h ; 05 20 00 ; 0xc1d3a + mov dx, word [bp-01ah] ; 8b 56 e6 ; 0xc1d3d + imul dx, word [bp-014h] ; 0f af 56 ec ; 0xc1d40 + movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xc1d44 + add dx, bx ; 01 da ; 0xc1d48 + add dx, dx ; 01 d2 ; 0xc1d4a + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1d4c + add di, dx ; 01 d7 ; 0xc1d4f + movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xc1d51 + sal bx, 003h ; c1 e3 03 ; 0xc1d55 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1d58 + jcxz 01d60h ; e3 02 ; 0xc1d5c + rep stosw ; f3 ab ; 0xc1d5e + jmp short 01da2h ; eb 40 ; 0xc1d60 vgabios.c:1370 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc1d62 vgabios.c:1371 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc1d66 + mov si, word [bp-01ah] ; 8b 76 e6 ; 0xc1d6a + sub si, ax ; 29 c6 ; 0xc1d6d + imul si, word [bp-014h] ; 0f af 76 ec ; 0xc1d6f + movzx dx, byte [bp-010h] ; 0f b6 56 f0 ; 0xc1d73 + add si, dx ; 01 d6 ; 0xc1d77 + add si, si ; 01 f6 ; 0xc1d79 + movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xc1d7b + sal bx, 003h ; c1 e3 03 ; 0xc1d7f + mov ax, word [bx+047b3h] ; 8b 87 b3 47 ; 0xc1d82 + mov bx, word [bp-01ah] ; 8b 5e e6 ; 0xc1d86 + imul bx, word [bp-014h] ; 0f af 5e ec ; 0xc1d89 + add dx, bx ; 01 da ; 0xc1d8d + add dx, dx ; 01 d2 ; 0xc1d8f + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1d91 + add di, dx ; 01 d7 ; 0xc1d94 + mov dx, ax ; 89 c2 ; 0xc1d96 + mov es, ax ; 8e c0 ; 0xc1d98 + jcxz 01da2h ; e3 06 ; 0xc1d9a + push DS ; 1e ; 0xc1d9c + mov ds, dx ; 8e da ; 0xc1d9d + rep movsw ; f3 a5 ; 0xc1d9f + pop DS ; 1f ; 0xc1da1 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1da2 vgabios.c:1372 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1da6 + jc near 0217ch ; 0f 82 cf 03 ; 0xc1da9 + dec word [bp-01ah] ; ff 4e e6 ; 0xc1dad vgabios.c:1373 + jmp near 01d0fh ; e9 5c ff ; 0xc1db0 + movzx di, byte [di+0482fh] ; 0f b6 bd 2f 48 ; 0xc1db3 vgabios.c:1379 + sal di, 006h ; c1 e7 06 ; 0xc1db8 + mov dl, byte [di+04845h] ; 8a 95 45 48 ; 0xc1dbb + mov byte [bp-00eh], dl ; 88 56 f2 ; 0xc1dbf + mov dl, byte [bx+047b1h] ; 8a 97 b1 47 ; 0xc1dc2 vgabios.c:1380 + cmp dl, 003h ; 80 fa 03 ; 0xc1dc6 + jc short 01ddch ; 72 11 ; 0xc1dc9 + jbe short 01de6h ; 76 19 ; 0xc1dcb + cmp dl, 005h ; 80 fa 05 ; 0xc1dcd + je near 0205fh ; 0f 84 8b 02 ; 0xc1dd0 + cmp dl, 004h ; 80 fa 04 ; 0xc1dd4 + je short 01de6h ; 74 0d ; 0xc1dd7 + jmp near 0217ch ; e9 a0 03 ; 0xc1dd9 + cmp dl, 002h ; 80 fa 02 ; 0xc1ddc + je near 01f25h ; 0f 84 42 01 ; 0xc1ddf + jmp near 0217ch ; e9 96 03 ; 0xc1de3 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1de6 vgabios.c:1384 + jne short 01e3eh ; 75 52 ; 0xc1dea + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1dec + jne short 01e3eh ; 75 4c ; 0xc1df0 + cmp byte [bp-010h], 000h ; 80 7e f0 00 ; 0xc1df2 + jne short 01e3eh ; 75 46 ; 0xc1df6 + movzx bx, byte [bp+004h] ; 0f b6 5e 04 ; 0xc1df8 + mov ax, cx ; 89 c8 ; 0xc1dfc + dec ax ; 48 ; 0xc1dfe + cmp bx, ax ; 39 c3 ; 0xc1dff + jne short 01e3eh ; 75 3b ; 0xc1e01 + movzx ax, dh ; 0f b6 c6 ; 0xc1e03 + mov dx, word [bp-014h] ; 8b 56 ec ; 0xc1e06 + dec dx ; 4a ; 0xc1e09 + cmp ax, dx ; 39 d0 ; 0xc1e0a + jne short 01e3eh ; 75 30 ; 0xc1e0c + mov ax, 00205h ; b8 05 02 ; 0xc1e0e vgabios.c:1386 + mov dx, 003ceh ; ba ce 03 ; 0xc1e11 + out DX, ax ; ef ; 0xc1e14 + mov ax, word [bp-014h] ; 8b 46 ec ; 0xc1e15 vgabios.c:1387 + imul ax, cx ; 0f af c1 ; 0xc1e18 + movzx cx, byte [bp-00eh] ; 0f b6 4e f2 ; 0xc1e1b + imul cx, ax ; 0f af c8 ; 0xc1e1f + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc1e22 + movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xc1e26 + sal bx, 003h ; c1 e3 03 ; 0xc1e2a + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1e2d + xor di, di ; 31 ff ; 0xc1e31 + jcxz 01e37h ; e3 02 ; 0xc1e33 + rep stosb ; f3 aa ; 0xc1e35 + mov ax, strict word 00005h ; b8 05 00 ; 0xc1e37 vgabios.c:1388 + out DX, ax ; ef ; 0xc1e3a + jmp near 0217ch ; e9 3e 03 ; 0xc1e3b vgabios.c:1390 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc1e3e vgabios.c:1392 + jne short 01eadh ; 75 69 ; 0xc1e42 + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc1e44 vgabios.c:1393 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc1e48 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1e4b + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1e4f + jc near 0217ch ; 0f 82 26 03 ; 0xc1e52 + movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xc1e56 vgabios.c:1395 + add dx, word [bp-01ah] ; 03 56 e6 ; 0xc1e5a + cmp dx, ax ; 39 c2 ; 0xc1e5d + jnbe short 01e67h ; 77 06 ; 0xc1e5f + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1e61 + jne short 01e86h ; 75 1f ; 0xc1e65 + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc1e67 vgabios.c:1396 + push ax ; 50 ; 0xc1e6b + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc1e6c + push ax ; 50 ; 0xc1e70 + movzx cx, byte [bp-014h] ; 0f b6 4e ec ; 0xc1e71 + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc1e75 + movzx dx, byte [bp-01ah] ; 0f b6 56 e6 ; 0xc1e79 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc1e7d + call 01904h ; e8 80 fa ; 0xc1e81 + jmp short 01ea8h ; eb 22 ; 0xc1e84 vgabios.c:1397 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc1e86 vgabios.c:1398 + push ax ; 50 ; 0xc1e8a + movzx ax, byte [bp-014h] ; 0f b6 46 ec ; 0xc1e8b + push ax ; 50 ; 0xc1e8f + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc1e90 + movzx bx, byte [bp-01ah] ; 0f b6 5e e6 ; 0xc1e94 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc1e98 + add al, byte [bp-008h] ; 02 46 f8 ; 0xc1e9b + movzx dx, al ; 0f b6 d0 ; 0xc1e9e + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc1ea1 + call 0188fh ; e8 e7 f9 ; 0xc1ea5 + inc word [bp-01ah] ; ff 46 e6 ; 0xc1ea8 vgabios.c:1399 + jmp short 01e4bh ; eb 9e ; 0xc1eab + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1ead vgabios.c:1402 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc1eb1 + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc1eb4 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1eb8 + jnbe near 0217ch ; 0f 87 bd 02 ; 0xc1ebb + movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xc1ebf vgabios.c:1404 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc1ec3 + add ax, dx ; 01 d0 ; 0xc1ec7 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1ec9 + jnbe short 01ed4h ; 77 06 ; 0xc1ecc + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1ece + jne short 01ef3h ; 75 1f ; 0xc1ed2 + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc1ed4 vgabios.c:1405 + push ax ; 50 ; 0xc1ed8 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc1ed9 + push ax ; 50 ; 0xc1edd + movzx cx, byte [bp-014h] ; 0f b6 4e ec ; 0xc1ede + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc1ee2 + movzx dx, byte [bp-01ah] ; 0f b6 56 e6 ; 0xc1ee6 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc1eea + call 01904h ; e8 13 fa ; 0xc1eee + jmp short 01f15h ; eb 22 ; 0xc1ef1 vgabios.c:1406 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc1ef3 vgabios.c:1407 + push ax ; 50 ; 0xc1ef7 + movzx ax, byte [bp-014h] ; 0f b6 46 ec ; 0xc1ef8 + push ax ; 50 ; 0xc1efc + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc1efd + movzx bx, byte [bp-01ah] ; 0f b6 5e e6 ; 0xc1f01 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc1f05 + sub al, byte [bp-008h] ; 2a 46 f8 ; 0xc1f08 + movzx dx, al ; 0f b6 d0 ; 0xc1f0b + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc1f0e + call 0188fh ; e8 7a f9 ; 0xc1f12 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1f15 vgabios.c:1408 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1f19 + jc near 0217ch ; 0f 82 5c 02 ; 0xc1f1c + dec word [bp-01ah] ; ff 4e e6 ; 0xc1f20 vgabios.c:1409 + jmp short 01eb4h ; eb 8f ; 0xc1f23 + mov dl, byte [bx+047b2h] ; 8a 97 b2 47 ; 0xc1f25 vgabios.c:1414 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1f29 vgabios.c:1415 + jne short 01f6ah ; 75 3b ; 0xc1f2d + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1f2f + jne short 01f6ah ; 75 35 ; 0xc1f33 + cmp byte [bp-010h], 000h ; 80 7e f0 00 ; 0xc1f35 + jne short 01f6ah ; 75 2f ; 0xc1f39 + movzx cx, byte [bp+004h] ; 0f b6 4e 04 ; 0xc1f3b + cmp cx, word [bp-016h] ; 3b 4e ea ; 0xc1f3f + jne short 01f6ah ; 75 26 ; 0xc1f42 + movzx cx, dh ; 0f b6 ce ; 0xc1f44 + cmp cx, word [bp-018h] ; 3b 4e e8 ; 0xc1f47 + jne short 01f6ah ; 75 1e ; 0xc1f4a + movzx cx, byte [bp-00eh] ; 0f b6 4e f2 ; 0xc1f4c vgabios.c:1417 + imul ax, cx ; 0f af c1 ; 0xc1f50 + movzx cx, dl ; 0f b6 ca ; 0xc1f53 + imul cx, ax ; 0f af c8 ; 0xc1f56 + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc1f59 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1f5d + xor di, di ; 31 ff ; 0xc1f61 + jcxz 01f67h ; e3 02 ; 0xc1f63 + rep stosb ; f3 aa ; 0xc1f65 + jmp near 0217ch ; e9 12 02 ; 0xc1f67 vgabios.c:1419 + cmp dl, 002h ; 80 fa 02 ; 0xc1f6a vgabios.c:1421 + jne short 01f78h ; 75 09 ; 0xc1f6d + sal byte [bp-010h], 1 ; d0 66 f0 ; 0xc1f6f vgabios.c:1423 + sal byte [bp-00ah], 1 ; d0 66 f6 ; 0xc1f72 vgabios.c:1424 + sal word [bp-014h], 1 ; d1 66 ec ; 0xc1f75 vgabios.c:1425 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc1f78 vgabios.c:1428 + jne short 01fe7h ; 75 69 ; 0xc1f7c + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc1f7e vgabios.c:1429 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc1f82 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1f85 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1f89 + jc near 0217ch ; 0f 82 ec 01 ; 0xc1f8c + movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xc1f90 vgabios.c:1431 + add dx, word [bp-01ah] ; 03 56 e6 ; 0xc1f94 + cmp dx, ax ; 39 c2 ; 0xc1f97 + jnbe short 01fa1h ; 77 06 ; 0xc1f99 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1f9b + jne short 01fc0h ; 75 1f ; 0xc1f9f + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc1fa1 vgabios.c:1432 + push ax ; 50 ; 0xc1fa5 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc1fa6 + push ax ; 50 ; 0xc1faa + movzx cx, byte [bp-014h] ; 0f b6 4e ec ; 0xc1fab + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc1faf + movzx dx, byte [bp-01ah] ; 0f b6 56 e6 ; 0xc1fb3 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc1fb7 + call 01a07h ; e8 49 fa ; 0xc1fbb + jmp short 01fe2h ; eb 22 ; 0xc1fbe vgabios.c:1433 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc1fc0 vgabios.c:1434 + push ax ; 50 ; 0xc1fc4 + movzx ax, byte [bp-014h] ; 0f b6 46 ec ; 0xc1fc5 + push ax ; 50 ; 0xc1fc9 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc1fca + movzx bx, byte [bp-01ah] ; 0f b6 5e e6 ; 0xc1fce + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc1fd2 + add al, byte [bp-008h] ; 02 46 f8 ; 0xc1fd5 + movzx dx, al ; 0f b6 d0 ; 0xc1fd8 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc1fdb + call 01964h ; e8 82 f9 ; 0xc1fdf + inc word [bp-01ah] ; ff 46 e6 ; 0xc1fe2 vgabios.c:1435 + jmp short 01f85h ; eb 9e ; 0xc1fe5 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc1fe7 vgabios.c:1438 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc1feb + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc1fee + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc1ff2 + jnbe near 0217ch ; 0f 87 83 01 ; 0xc1ff5 + movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xc1ff9 vgabios.c:1440 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc1ffd + add ax, dx ; 01 d0 ; 0xc2001 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc2003 + jnbe short 0200eh ; 77 06 ; 0xc2006 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc2008 + jne short 0202dh ; 75 1f ; 0xc200c + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc200e vgabios.c:1441 + push ax ; 50 ; 0xc2012 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc2013 + push ax ; 50 ; 0xc2017 + movzx cx, byte [bp-014h] ; 0f b6 4e ec ; 0xc2018 + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc201c + movzx dx, byte [bp-01ah] ; 0f b6 56 e6 ; 0xc2020 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc2024 + call 01a07h ; e8 dc f9 ; 0xc2028 + jmp short 0204fh ; eb 22 ; 0xc202b vgabios.c:1442 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc202d vgabios.c:1443 + push ax ; 50 ; 0xc2031 + movzx ax, byte [bp-014h] ; 0f b6 46 ec ; 0xc2032 + push ax ; 50 ; 0xc2036 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc2037 + movzx bx, byte [bp-01ah] ; 0f b6 5e e6 ; 0xc203b + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc203f + sub al, byte [bp-008h] ; 2a 46 f8 ; 0xc2042 + movzx dx, al ; 0f b6 d0 ; 0xc2045 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc2048 + call 01964h ; e8 15 f9 ; 0xc204c + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc204f vgabios.c:1444 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc2053 + jc near 0217ch ; 0f 82 22 01 ; 0xc2056 + dec word [bp-01ah] ; ff 4e e6 ; 0xc205a vgabios.c:1445 + jmp short 01feeh ; eb 8f ; 0xc205d + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc205f vgabios.c:1450 + jne short 0209fh ; 75 3a ; 0xc2063 + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc2065 + jne short 0209fh ; 75 34 ; 0xc2069 + cmp byte [bp-010h], 000h ; 80 7e f0 00 ; 0xc206b + jne short 0209fh ; 75 2e ; 0xc206f + movzx cx, byte [bp+004h] ; 0f b6 4e 04 ; 0xc2071 + cmp cx, word [bp-016h] ; 3b 4e ea ; 0xc2075 + jne short 0209fh ; 75 25 ; 0xc2078 + movzx dx, dh ; 0f b6 d6 ; 0xc207a + cmp dx, word [bp-018h] ; 3b 56 e8 ; 0xc207d + jne short 0209fh ; 75 1d ; 0xc2080 + movzx dx, byte [bp-00eh] ; 0f b6 56 f2 ; 0xc2082 vgabios.c:1452 + mov cx, ax ; 89 c1 ; 0xc2086 + imul cx, dx ; 0f af ca ; 0xc2088 + sal cx, 003h ; c1 e1 03 ; 0xc208b + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc208e + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2092 + xor di, di ; 31 ff ; 0xc2096 + jcxz 0209ch ; e3 02 ; 0xc2098 + rep stosb ; f3 aa ; 0xc209a + jmp near 0217ch ; e9 dd 00 ; 0xc209c vgabios.c:1454 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc209f vgabios.c:1457 + jne short 0210bh ; 75 66 ; 0xc20a3 + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc20a5 vgabios.c:1458 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc20a9 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc20ac + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc20b0 + jc near 0217ch ; 0f 82 c5 00 ; 0xc20b3 + movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xc20b7 vgabios.c:1460 + add dx, word [bp-01ah] ; 03 56 e6 ; 0xc20bb + cmp dx, ax ; 39 c2 ; 0xc20be + jnbe short 020c8h ; 77 06 ; 0xc20c0 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc20c2 + jne short 020e6h ; 75 1e ; 0xc20c6 + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc20c8 vgabios.c:1461 + push ax ; 50 ; 0xc20cc + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc20cd + push ax ; 50 ; 0xc20d1 + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc20d2 + movzx dx, byte [bp-01ah] ; 0f b6 56 e6 ; 0xc20d6 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc20da + mov cx, word [bp-014h] ; 8b 4e ec ; 0xc20de + call 01b01h ; e8 1d fa ; 0xc20e1 + jmp short 02106h ; eb 20 ; 0xc20e4 vgabios.c:1462 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc20e6 vgabios.c:1463 + push ax ; 50 ; 0xc20ea + push word [bp-014h] ; ff 76 ec ; 0xc20eb + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc20ee + movzx bx, byte [bp-01ah] ; 0f b6 5e e6 ; 0xc20f2 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc20f6 + add al, byte [bp-008h] ; 02 46 f8 ; 0xc20f9 + movzx dx, al ; 0f b6 d0 ; 0xc20fc + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc20ff + call 01a88h ; e8 82 f9 ; 0xc2103 + inc word [bp-01ah] ; ff 46 e6 ; 0xc2106 vgabios.c:1464 + jmp short 020ach ; eb a1 ; 0xc2109 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc210b vgabios.c:1467 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc210f + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc2112 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc2116 + jnbe short 0217ch ; 77 61 ; 0xc2119 + movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xc211b vgabios.c:1469 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc211f + add ax, dx ; 01 d0 ; 0xc2123 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc2125 + jnbe short 02130h ; 77 06 ; 0xc2128 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc212a + jne short 0214eh ; 75 1e ; 0xc212e + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc2130 vgabios.c:1470 + push ax ; 50 ; 0xc2134 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc2135 + push ax ; 50 ; 0xc2139 + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc213a + movzx dx, byte [bp-01ah] ; 0f b6 56 e6 ; 0xc213e + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc2142 + mov cx, word [bp-014h] ; 8b 4e ec ; 0xc2146 + call 01b01h ; e8 b5 f9 ; 0xc2149 + jmp short 0216eh ; eb 20 ; 0xc214c vgabios.c:1471 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc214e vgabios.c:1472 + push ax ; 50 ; 0xc2152 + push word [bp-014h] ; ff 76 ec ; 0xc2153 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc2156 + movzx bx, byte [bp-01ah] ; 0f b6 5e e6 ; 0xc215a + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc215e + sub al, byte [bp-008h] ; 2a 46 f8 ; 0xc2161 + movzx dx, al ; 0f b6 d0 ; 0xc2164 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc2167 + call 01a88h ; e8 1a f9 ; 0xc216b + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc216e vgabios.c:1473 + cmp ax, word [bp-01ah] ; 3b 46 e6 ; 0xc2172 + jc short 0217ch ; 72 05 ; 0xc2175 + dec word [bp-01ah] ; ff 4e e6 ; 0xc2177 vgabios.c:1474 + jmp short 02112h ; eb 96 ; 0xc217a + lea sp, [bp-004h] ; 8d 66 fc ; 0xc217c vgabios.c:1485 + pop di ; 5f ; 0xc217f + pop si ; 5e ; 0xc2180 + pop bp ; 5d ; 0xc2181 + retn 00008h ; c2 08 00 ; 0xc2182 + ; disGetNextSymbol 0xc2185 LB 0x2134 -> off=0x0 cb=00000000000000ff uValue=00000000000c2185 'write_gfx_char_pl4' +write_gfx_char_pl4: ; 0xc2185 LB 0xff + push bp ; 55 ; 0xc2185 vgabios.c:1488 + mov bp, sp ; 89 e5 ; 0xc2186 + push si ; 56 ; 0xc2188 + push di ; 57 ; 0xc2189 + sub sp, strict byte 0000ch ; 83 ec 0c ; 0xc218a + mov ah, al ; 88 c4 ; 0xc218d + mov byte [bp-008h], dl ; 88 56 f8 ; 0xc218f + mov al, bl ; 88 d8 ; 0xc2192 + mov bx, 0010ch ; bb 0c 01 ; 0xc2194 vgabios.c:67 + xor si, si ; 31 f6 ; 0xc2197 + mov es, si ; 8e c6 ; 0xc2199 + mov si, word [es:bx] ; 26 8b 37 ; 0xc219b + mov bx, word [es:bx+002h] ; 26 8b 5f 02 ; 0xc219e + mov word [bp-00ch], si ; 89 76 f4 ; 0xc21a2 vgabios.c:68 + mov word [bp-00ah], bx ; 89 5e f6 ; 0xc21a5 + movzx bx, cl ; 0f b6 d9 ; 0xc21a8 vgabios.c:1497 + movzx cx, byte [bp+006h] ; 0f b6 4e 06 ; 0xc21ab + imul bx, cx ; 0f af d9 ; 0xc21af + movzx si, byte [bp+004h] ; 0f b6 76 04 ; 0xc21b2 + imul si, bx ; 0f af f3 ; 0xc21b6 + movzx bx, al ; 0f b6 d8 ; 0xc21b9 + add si, bx ; 01 de ; 0xc21bc + mov bx, strict word 0004ch ; bb 4c 00 ; 0xc21be vgabios.c:57 + mov di, strict word 00040h ; bf 40 00 ; 0xc21c1 + mov es, di ; 8e c7 ; 0xc21c4 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc21c6 + movzx di, byte [bp+008h] ; 0f b6 7e 08 ; 0xc21c9 vgabios.c:58 + imul bx, di ; 0f af df ; 0xc21cd + add si, bx ; 01 de ; 0xc21d0 + movzx ax, ah ; 0f b6 c4 ; 0xc21d2 vgabios.c:1499 + imul ax, cx ; 0f af c1 ; 0xc21d5 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc21d8 + mov ax, 00f02h ; b8 02 0f ; 0xc21db vgabios.c:1500 + mov dx, 003c4h ; ba c4 03 ; 0xc21de + out DX, ax ; ef ; 0xc21e1 + mov ax, 00205h ; b8 05 02 ; 0xc21e2 vgabios.c:1501 + mov dx, 003ceh ; ba ce 03 ; 0xc21e5 + out DX, ax ; ef ; 0xc21e8 + test byte [bp-008h], 080h ; f6 46 f8 80 ; 0xc21e9 vgabios.c:1502 + je short 021f5h ; 74 06 ; 0xc21ed + mov ax, 01803h ; b8 03 18 ; 0xc21ef vgabios.c:1504 + out DX, ax ; ef ; 0xc21f2 + jmp short 021f9h ; eb 04 ; 0xc21f3 vgabios.c:1506 + mov ax, strict word 00003h ; b8 03 00 ; 0xc21f5 vgabios.c:1508 + out DX, ax ; ef ; 0xc21f8 + xor ch, ch ; 30 ed ; 0xc21f9 vgabios.c:1510 + cmp ch, byte [bp+006h] ; 3a 6e 06 ; 0xc21fb + jnc short 0226ch ; 73 6c ; 0xc21fe + movzx bx, ch ; 0f b6 dd ; 0xc2200 vgabios.c:1512 + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc2203 + imul bx, ax ; 0f af d8 ; 0xc2207 + add bx, si ; 01 f3 ; 0xc220a + mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xc220c vgabios.c:1513 + jmp short 02224h ; eb 12 ; 0xc2210 + mov ax, 0a000h ; b8 00 a0 ; 0xc2212 vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc2215 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc2217 + inc byte [bp-006h] ; fe 46 fa ; 0xc221b vgabios.c:1526 + cmp byte [bp-006h], 008h ; 80 7e fa 08 ; 0xc221e + jnc short 02268h ; 73 44 ; 0xc2222 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc2224 + mov cl, al ; 88 c1 ; 0xc2228 + mov ax, 00080h ; b8 80 00 ; 0xc222a + sar ax, CL ; d3 f8 ; 0xc222d + xor ah, ah ; 30 e4 ; 0xc222f + mov word [bp-010h], ax ; 89 46 f0 ; 0xc2231 + sal ax, 008h ; c1 e0 08 ; 0xc2234 + or AL, strict byte 008h ; 0c 08 ; 0xc2237 + mov dx, 003ceh ; ba ce 03 ; 0xc2239 + out DX, ax ; ef ; 0xc223c + mov dx, bx ; 89 da ; 0xc223d + mov ax, 0a000h ; b8 00 a0 ; 0xc223f + call 03614h ; e8 cf 13 ; 0xc2242 + movzx ax, ch ; 0f b6 c5 ; 0xc2245 + add ax, word [bp-00eh] ; 03 46 f2 ; 0xc2248 + les di, [bp-00ch] ; c4 7e f4 ; 0xc224b + add di, ax ; 01 c7 ; 0xc224e + movzx ax, byte [es:di] ; 26 0f b6 05 ; 0xc2250 + test word [bp-010h], ax ; 85 46 f0 ; 0xc2254 + je short 02212h ; 74 b9 ; 0xc2257 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2259 + and AL, strict byte 00fh ; 24 0f ; 0xc225c + mov di, 0a000h ; bf 00 a0 ; 0xc225e + mov es, di ; 8e c7 ; 0xc2261 + mov byte [es:bx], al ; 26 88 07 ; 0xc2263 + jmp short 0221bh ; eb b3 ; 0xc2266 + db 0feh, 0c5h + ; inc ch ; fe c5 ; 0xc2268 vgabios.c:1527 + jmp short 021fbh ; eb 8f ; 0xc226a + mov ax, 0ff08h ; b8 08 ff ; 0xc226c vgabios.c:1528 + mov dx, 003ceh ; ba ce 03 ; 0xc226f + out DX, ax ; ef ; 0xc2272 + mov ax, strict word 00005h ; b8 05 00 ; 0xc2273 vgabios.c:1529 + out DX, ax ; ef ; 0xc2276 + mov ax, strict word 00003h ; b8 03 00 ; 0xc2277 vgabios.c:1530 + out DX, ax ; ef ; 0xc227a + lea sp, [bp-004h] ; 8d 66 fc ; 0xc227b vgabios.c:1531 + pop di ; 5f ; 0xc227e + pop si ; 5e ; 0xc227f + pop bp ; 5d ; 0xc2280 + retn 00006h ; c2 06 00 ; 0xc2281 + ; disGetNextSymbol 0xc2284 LB 0x2035 -> off=0x0 cb=00000000000000dd uValue=00000000000c2284 'write_gfx_char_cga' +write_gfx_char_cga: ; 0xc2284 LB 0xdd + push si ; 56 ; 0xc2284 vgabios.c:1534 + push di ; 57 ; 0xc2285 + enter 00006h, 000h ; c8 06 00 00 ; 0xc2286 + mov di, 0556dh ; bf 6d 55 ; 0xc228a vgabios.c:1541 + xor bh, bh ; 30 ff ; 0xc228d vgabios.c:1542 + movzx si, byte [bp+00ah] ; 0f b6 76 0a ; 0xc228f + imul si, bx ; 0f af f3 ; 0xc2293 + movzx bx, cl ; 0f b6 d9 ; 0xc2296 + imul bx, bx, 00140h ; 69 db 40 01 ; 0xc2299 + add si, bx ; 01 de ; 0xc229d + mov word [bp-004h], si ; 89 76 fc ; 0xc229f + xor ah, ah ; 30 e4 ; 0xc22a2 vgabios.c:1543 + sal ax, 003h ; c1 e0 03 ; 0xc22a4 + mov word [bp-006h], ax ; 89 46 fa ; 0xc22a7 + xor ah, ah ; 30 e4 ; 0xc22aa vgabios.c:1544 + jmp near 022cah ; e9 1b 00 ; 0xc22ac + movzx si, ah ; 0f b6 f4 ; 0xc22af vgabios.c:1559 + add si, word [bp-006h] ; 03 76 fa ; 0xc22b2 + add si, di ; 01 fe ; 0xc22b5 + mov al, byte [si] ; 8a 04 ; 0xc22b7 + mov si, 0b800h ; be 00 b8 ; 0xc22b9 vgabios.c:52 + mov es, si ; 8e c6 ; 0xc22bc + mov byte [es:bx], al ; 26 88 07 ; 0xc22be + db 0feh, 0c4h + ; inc ah ; fe c4 ; 0xc22c1 vgabios.c:1563 + cmp ah, 008h ; 80 fc 08 ; 0xc22c3 + jnc near 0235bh ; 0f 83 91 00 ; 0xc22c6 + movzx bx, ah ; 0f b6 dc ; 0xc22ca + sar bx, 1 ; d1 fb ; 0xc22cd + imul bx, bx, strict byte 00050h ; 6b db 50 ; 0xc22cf + add bx, word [bp-004h] ; 03 5e fc ; 0xc22d2 + test ah, 001h ; f6 c4 01 ; 0xc22d5 + je short 022ddh ; 74 03 ; 0xc22d8 + add bh, 020h ; 80 c7 20 ; 0xc22da + mov DH, strict byte 080h ; b6 80 ; 0xc22dd + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc22df + jne short 022fdh ; 75 18 ; 0xc22e3 + test dl, dh ; 84 f2 ; 0xc22e5 + je short 022afh ; 74 c6 ; 0xc22e7 + mov si, 0b800h ; be 00 b8 ; 0xc22e9 + mov es, si ; 8e c6 ; 0xc22ec + mov al, byte [es:bx] ; 26 8a 07 ; 0xc22ee + movzx si, ah ; 0f b6 f4 ; 0xc22f1 + add si, word [bp-006h] ; 03 76 fa ; 0xc22f4 + add si, di ; 01 fe ; 0xc22f7 + xor al, byte [si] ; 32 04 ; 0xc22f9 + jmp short 022b9h ; eb bc ; 0xc22fb + test dh, dh ; 84 f6 ; 0xc22fd vgabios.c:1565 + jbe short 022c1h ; 76 c0 ; 0xc22ff + test dl, 080h ; f6 c2 80 ; 0xc2301 vgabios.c:1567 + je short 02310h ; 74 0a ; 0xc2304 + mov si, 0b800h ; be 00 b8 ; 0xc2306 vgabios.c:47 + mov es, si ; 8e c6 ; 0xc2309 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc230b + jmp short 02312h ; eb 02 ; 0xc230e vgabios.c:1571 + xor al, al ; 30 c0 ; 0xc2310 vgabios.c:1573 + mov byte [bp-002h], 000h ; c6 46 fe 00 ; 0xc2312 vgabios.c:1575 + jmp short 02325h ; eb 0d ; 0xc2316 + or al, ch ; 08 e8 ; 0xc2318 vgabios.c:1585 + shr dh, 1 ; d0 ee ; 0xc231a vgabios.c:1588 + inc byte [bp-002h] ; fe 46 fe ; 0xc231c vgabios.c:1589 + cmp byte [bp-002h], 004h ; 80 7e fe 04 ; 0xc231f + jnc short 02350h ; 73 2b ; 0xc2323 + movzx si, ah ; 0f b6 f4 ; 0xc2325 + add si, word [bp-006h] ; 03 76 fa ; 0xc2328 + add si, di ; 01 fe ; 0xc232b + movzx si, byte [si] ; 0f b6 34 ; 0xc232d + movzx cx, dh ; 0f b6 ce ; 0xc2330 + test si, cx ; 85 ce ; 0xc2333 + je short 0231ah ; 74 e3 ; 0xc2335 + mov CL, strict byte 003h ; b1 03 ; 0xc2337 + sub cl, byte [bp-002h] ; 2a 4e fe ; 0xc2339 + mov ch, dl ; 88 d5 ; 0xc233c + and ch, 003h ; 80 e5 03 ; 0xc233e + add cl, cl ; 00 c9 ; 0xc2341 + sal ch, CL ; d2 e5 ; 0xc2343 + mov cl, ch ; 88 e9 ; 0xc2345 + test dl, 080h ; f6 c2 80 ; 0xc2347 + je short 02318h ; 74 cc ; 0xc234a + xor al, ch ; 30 e8 ; 0xc234c + jmp short 0231ah ; eb ca ; 0xc234e + mov cx, 0b800h ; b9 00 b8 ; 0xc2350 vgabios.c:52 + mov es, cx ; 8e c1 ; 0xc2353 + mov byte [es:bx], al ; 26 88 07 ; 0xc2355 + inc bx ; 43 ; 0xc2358 vgabios.c:1591 + jmp short 022fdh ; eb a2 ; 0xc2359 vgabios.c:1592 + leave ; c9 ; 0xc235b vgabios.c:1595 + pop di ; 5f ; 0xc235c + pop si ; 5e ; 0xc235d + retn 00004h ; c2 04 00 ; 0xc235e + ; disGetNextSymbol 0xc2361 LB 0x1f58 -> off=0x0 cb=0000000000000085 uValue=00000000000c2361 'write_gfx_char_lin' +write_gfx_char_lin: ; 0xc2361 LB 0x85 + push si ; 56 ; 0xc2361 vgabios.c:1598 + push di ; 57 ; 0xc2362 + enter 00006h, 000h ; c8 06 00 00 ; 0xc2363 + mov dh, dl ; 88 d6 ; 0xc2367 + mov word [bp-002h], 0556dh ; c7 46 fe 6d 55 ; 0xc2369 vgabios.c:1605 + movzx si, cl ; 0f b6 f1 ; 0xc236e vgabios.c:1606 + movzx cx, byte [bp+008h] ; 0f b6 4e 08 ; 0xc2371 + imul cx, si ; 0f af ce ; 0xc2375 + sal cx, 006h ; c1 e1 06 ; 0xc2378 + xor bh, bh ; 30 ff ; 0xc237b + sal bx, 003h ; c1 e3 03 ; 0xc237d + add bx, cx ; 01 cb ; 0xc2380 + mov word [bp-004h], bx ; 89 5e fc ; 0xc2382 + xor ah, ah ; 30 e4 ; 0xc2385 vgabios.c:1607 + mov si, ax ; 89 c6 ; 0xc2387 + sal si, 003h ; c1 e6 03 ; 0xc2389 + xor al, al ; 30 c0 ; 0xc238c vgabios.c:1608 + jmp short 023c5h ; eb 35 ; 0xc238e + cmp ah, 008h ; 80 fc 08 ; 0xc2390 vgabios.c:1612 + jnc short 023bfh ; 73 2a ; 0xc2393 + xor cl, cl ; 30 c9 ; 0xc2395 vgabios.c:1614 + movzx bx, al ; 0f b6 d8 ; 0xc2397 vgabios.c:1615 + add bx, si ; 01 f3 ; 0xc239a + add bx, word [bp-002h] ; 03 5e fe ; 0xc239c + movzx bx, byte [bx] ; 0f b6 1f ; 0xc239f + movzx di, dl ; 0f b6 fa ; 0xc23a2 + test bx, di ; 85 fb ; 0xc23a5 + je short 023abh ; 74 02 ; 0xc23a7 + mov cl, dh ; 88 f1 ; 0xc23a9 vgabios.c:1617 + movzx bx, ah ; 0f b6 dc ; 0xc23ab vgabios.c:1619 + add bx, word [bp-006h] ; 03 5e fa ; 0xc23ae + mov di, 0a000h ; bf 00 a0 ; 0xc23b1 vgabios.c:52 + mov es, di ; 8e c7 ; 0xc23b4 + mov byte [es:bx], cl ; 26 88 0f ; 0xc23b6 + shr dl, 1 ; d0 ea ; 0xc23b9 vgabios.c:1620 + db 0feh, 0c4h + ; inc ah ; fe c4 ; 0xc23bb vgabios.c:1621 + jmp short 02390h ; eb d1 ; 0xc23bd + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc23bf vgabios.c:1622 + cmp AL, strict byte 008h ; 3c 08 ; 0xc23c1 + jnc short 023e0h ; 73 1b ; 0xc23c3 + movzx cx, al ; 0f b6 c8 ; 0xc23c5 + movzx bx, byte [bp+008h] ; 0f b6 5e 08 ; 0xc23c8 + imul bx, cx ; 0f af d9 ; 0xc23cc + sal bx, 003h ; c1 e3 03 ; 0xc23cf + mov cx, word [bp-004h] ; 8b 4e fc ; 0xc23d2 + add cx, bx ; 01 d9 ; 0xc23d5 + mov word [bp-006h], cx ; 89 4e fa ; 0xc23d7 + mov DL, strict byte 080h ; b2 80 ; 0xc23da + xor ah, ah ; 30 e4 ; 0xc23dc + jmp short 02395h ; eb b5 ; 0xc23de + leave ; c9 ; 0xc23e0 vgabios.c:1623 + pop di ; 5f ; 0xc23e1 + pop si ; 5e ; 0xc23e2 + retn 00002h ; c2 02 00 ; 0xc23e3 + ; disGetNextSymbol 0xc23e6 LB 0x1ed3 -> off=0x0 cb=0000000000000165 uValue=00000000000c23e6 'biosfn_write_char_attr' +biosfn_write_char_attr: ; 0xc23e6 LB 0x165 + push bp ; 55 ; 0xc23e6 vgabios.c:1626 + mov bp, sp ; 89 e5 ; 0xc23e7 + push si ; 56 ; 0xc23e9 + push di ; 57 ; 0xc23ea + sub sp, strict byte 00018h ; 83 ec 18 ; 0xc23eb + mov byte [bp-008h], al ; 88 46 f8 ; 0xc23ee + mov byte [bp-00eh], dl ; 88 56 f2 ; 0xc23f1 + mov byte [bp-012h], bl ; 88 5e ee ; 0xc23f4 + mov si, cx ; 89 ce ; 0xc23f7 + mov bx, strict word 00049h ; bb 49 00 ; 0xc23f9 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc23fc + mov es, ax ; 8e c0 ; 0xc23ff + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2401 + xor ah, ah ; 30 e4 ; 0xc2404 vgabios.c:1634 + call 035edh ; e8 e4 11 ; 0xc2406 + mov cl, al ; 88 c1 ; 0xc2409 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc240b + cmp AL, strict byte 0ffh ; 3c ff ; 0xc240e vgabios.c:1635 + je near 02544h ; 0f 84 30 01 ; 0xc2410 + movzx ax, dl ; 0f b6 c2 ; 0xc2414 vgabios.c:1638 + lea bx, [bp-01ch] ; 8d 5e e4 ; 0xc2417 + lea dx, [bp-01ah] ; 8d 56 e6 ; 0xc241a + call 00a93h ; e8 73 e6 ; 0xc241d + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc2420 vgabios.c:1639 + mov byte [bp-010h], al ; 88 46 f0 ; 0xc2423 + mov dx, word [bp-01ch] ; 8b 56 e4 ; 0xc2426 + xor dl, dl ; 30 d2 ; 0xc2429 + shr dx, 008h ; c1 ea 08 ; 0xc242b + mov byte [bp-014h], dl ; 88 56 ec ; 0xc242e + mov bx, 00084h ; bb 84 00 ; 0xc2431 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2434 + mov es, ax ; 8e c0 ; 0xc2437 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2439 + xor ah, ah ; 30 e4 ; 0xc243c vgabios.c:48 + inc ax ; 40 ; 0xc243e + mov word [bp-018h], ax ; 89 46 e8 ; 0xc243f + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2442 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc2445 + mov word [bp-016h], ax ; 89 46 ea ; 0xc2448 vgabios.c:58 + movzx bx, cl ; 0f b6 d9 ; 0xc244b vgabios.c:1645 + mov di, bx ; 89 df ; 0xc244e + sal di, 003h ; c1 e7 03 ; 0xc2450 + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc2453 + jne short 024a0h ; 75 46 ; 0xc2458 + mov bx, word [bp-018h] ; 8b 5e e8 ; 0xc245a vgabios.c:1648 + imul bx, ax ; 0f af d8 ; 0xc245d + add bx, bx ; 01 db ; 0xc2460 + or bl, 0ffh ; 80 cb ff ; 0xc2462 + movzx cx, byte [bp-00eh] ; 0f b6 4e f2 ; 0xc2465 + inc bx ; 43 ; 0xc2469 + imul bx, cx ; 0f af d9 ; 0xc246a + xor dh, dh ; 30 f6 ; 0xc246d + imul ax, dx ; 0f af c2 ; 0xc246f + movzx dx, byte [bp-010h] ; 0f b6 56 f0 ; 0xc2472 + add ax, dx ; 01 d0 ; 0xc2476 + add ax, ax ; 01 c0 ; 0xc2478 + mov dx, bx ; 89 da ; 0xc247a + add dx, ax ; 01 c2 ; 0xc247c + movzx ax, byte [bp-012h] ; 0f b6 46 ee ; 0xc247e vgabios.c:1650 + sal ax, 008h ; c1 e0 08 ; 0xc2482 + movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xc2485 + add ax, bx ; 01 d8 ; 0xc2489 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc248b + mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xc248e vgabios.c:1651 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc2491 + mov cx, si ; 89 f1 ; 0xc2495 + mov di, dx ; 89 d7 ; 0xc2497 + jcxz 0249dh ; e3 02 ; 0xc2499 + rep stosw ; f3 ab ; 0xc249b + jmp near 02544h ; e9 a4 00 ; 0xc249d vgabios.c:1653 + movzx bx, byte [bx+0482fh] ; 0f b6 9f 2f 48 ; 0xc24a0 vgabios.c:1656 + sal bx, 006h ; c1 e3 06 ; 0xc24a5 + mov al, byte [bx+04845h] ; 8a 87 45 48 ; 0xc24a8 + mov byte [bp-006h], al ; 88 46 fa ; 0xc24ac + mov al, byte [di+047b2h] ; 8a 85 b2 47 ; 0xc24af vgabios.c:1657 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc24b3 + dec si ; 4e ; 0xc24b6 vgabios.c:1658 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc24b7 + je near 02544h ; 0f 84 86 00 ; 0xc24ba + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc24be vgabios.c:1660 + sal bx, 003h ; c1 e3 03 ; 0xc24c2 + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc24c5 + cmp AL, strict byte 003h ; 3c 03 ; 0xc24c9 + jc short 024d9h ; 72 0c ; 0xc24cb + jbe short 024dfh ; 76 10 ; 0xc24cd + cmp AL, strict byte 005h ; 3c 05 ; 0xc24cf + je short 02526h ; 74 53 ; 0xc24d1 + cmp AL, strict byte 004h ; 3c 04 ; 0xc24d3 + je short 024e3h ; 74 0c ; 0xc24d5 + jmp short 0253eh ; eb 65 ; 0xc24d7 + cmp AL, strict byte 002h ; 3c 02 ; 0xc24d9 + je short 02507h ; 74 2a ; 0xc24db + jmp short 0253eh ; eb 5f ; 0xc24dd + or byte [bp-012h], 001h ; 80 4e ee 01 ; 0xc24df vgabios.c:1663 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc24e3 vgabios.c:1665 + push ax ; 50 ; 0xc24e7 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc24e8 + push ax ; 50 ; 0xc24ec + movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xc24ed + push ax ; 50 ; 0xc24f1 + movzx cx, byte [bp-014h] ; 0f b6 4e ec ; 0xc24f2 + movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xc24f6 + movzx dx, byte [bp-012h] ; 0f b6 56 ee ; 0xc24fa + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc24fe + call 02185h ; e8 80 fc ; 0xc2502 + jmp short 0253eh ; eb 37 ; 0xc2505 vgabios.c:1666 + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc2507 vgabios.c:1668 + push ax ; 50 ; 0xc250b + movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xc250c + push ax ; 50 ; 0xc2510 + movzx cx, byte [bp-014h] ; 0f b6 4e ec ; 0xc2511 + movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xc2515 + movzx dx, byte [bp-012h] ; 0f b6 56 ee ; 0xc2519 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc251d + call 02284h ; e8 60 fd ; 0xc2521 + jmp short 0253eh ; eb 18 ; 0xc2524 vgabios.c:1669 + movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xc2526 vgabios.c:1671 + push ax ; 50 ; 0xc252a + movzx cx, byte [bp-014h] ; 0f b6 4e ec ; 0xc252b + movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xc252f + movzx dx, byte [bp-012h] ; 0f b6 56 ee ; 0xc2533 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc2537 + call 02361h ; e8 23 fe ; 0xc253b + inc byte [bp-010h] ; fe 46 f0 ; 0xc253e vgabios.c:1678 + jmp near 024b6h ; e9 72 ff ; 0xc2541 vgabios.c:1679 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2544 vgabios.c:1681 + pop di ; 5f ; 0xc2547 + pop si ; 5e ; 0xc2548 + pop bp ; 5d ; 0xc2549 + retn ; c3 ; 0xc254a + ; disGetNextSymbol 0xc254b LB 0x1d6e -> off=0x0 cb=0000000000000162 uValue=00000000000c254b 'biosfn_write_char_only' +biosfn_write_char_only: ; 0xc254b LB 0x162 + push bp ; 55 ; 0xc254b vgabios.c:1684 + mov bp, sp ; 89 e5 ; 0xc254c + push si ; 56 ; 0xc254e + push di ; 57 ; 0xc254f + sub sp, strict byte 00016h ; 83 ec 16 ; 0xc2550 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc2553 + mov byte [bp-00eh], dl ; 88 56 f2 ; 0xc2556 + mov byte [bp-006h], bl ; 88 5e fa ; 0xc2559 + mov si, cx ; 89 ce ; 0xc255c + mov bx, strict word 00049h ; bb 49 00 ; 0xc255e vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2561 + mov es, ax ; 8e c0 ; 0xc2564 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2566 + xor ah, ah ; 30 e4 ; 0xc2569 vgabios.c:1692 + call 035edh ; e8 7f 10 ; 0xc256b + mov cl, al ; 88 c1 ; 0xc256e + mov byte [bp-012h], al ; 88 46 ee ; 0xc2570 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc2573 vgabios.c:1693 + je near 026a6h ; 0f 84 2d 01 ; 0xc2575 + movzx ax, dl ; 0f b6 c2 ; 0xc2579 vgabios.c:1696 + lea bx, [bp-01ah] ; 8d 5e e6 ; 0xc257c + lea dx, [bp-018h] ; 8d 56 e8 ; 0xc257f + call 00a93h ; e8 0e e5 ; 0xc2582 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc2585 vgabios.c:1697 + mov byte [bp-010h], al ; 88 46 f0 ; 0xc2588 + mov dx, word [bp-01ah] ; 8b 56 e6 ; 0xc258b + xor dl, dl ; 30 d2 ; 0xc258e + shr dx, 008h ; c1 ea 08 ; 0xc2590 + mov byte [bp-00ah], dl ; 88 56 f6 ; 0xc2593 + mov bx, 00084h ; bb 84 00 ; 0xc2596 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2599 + mov es, ax ; 8e c0 ; 0xc259c + mov al, byte [es:bx] ; 26 8a 07 ; 0xc259e + xor ah, ah ; 30 e4 ; 0xc25a1 vgabios.c:48 + mov di, ax ; 89 c7 ; 0xc25a3 + inc di ; 47 ; 0xc25a5 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc25a6 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc25a9 + mov word [bp-016h], ax ; 89 46 ea ; 0xc25ac vgabios.c:58 + xor ch, ch ; 30 ed ; 0xc25af vgabios.c:1703 + mov bx, cx ; 89 cb ; 0xc25b1 + sal bx, 003h ; c1 e3 03 ; 0xc25b3 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc25b6 + jne short 025fah ; 75 3d ; 0xc25bb + imul di, ax ; 0f af f8 ; 0xc25bd vgabios.c:1706 + add di, di ; 01 ff ; 0xc25c0 + or di, 000ffh ; 81 cf ff 00 ; 0xc25c2 + movzx bx, byte [bp-00eh] ; 0f b6 5e f2 ; 0xc25c6 + inc di ; 47 ; 0xc25ca + imul bx, di ; 0f af df ; 0xc25cb + xor dh, dh ; 30 f6 ; 0xc25ce + imul ax, dx ; 0f af c2 ; 0xc25d0 + movzx dx, byte [bp-010h] ; 0f b6 56 f0 ; 0xc25d3 + add ax, dx ; 01 d0 ; 0xc25d7 + add ax, ax ; 01 c0 ; 0xc25d9 + add bx, ax ; 01 c3 ; 0xc25db + dec si ; 4e ; 0xc25dd vgabios.c:1708 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc25de + je near 026a6h ; 0f 84 c1 00 ; 0xc25e1 + movzx di, byte [bp-012h] ; 0f b6 7e ee ; 0xc25e5 vgabios.c:1709 + sal di, 003h ; c1 e7 03 ; 0xc25e9 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc25ec vgabios.c:50 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc25f0 + mov byte [es:bx], al ; 26 88 07 ; 0xc25f3 + inc bx ; 43 ; 0xc25f6 vgabios.c:1710 + inc bx ; 43 ; 0xc25f7 + jmp short 025ddh ; eb e3 ; 0xc25f8 vgabios.c:1711 + mov di, cx ; 89 cf ; 0xc25fa vgabios.c:1716 + movzx ax, byte [di+0482fh] ; 0f b6 85 2f 48 ; 0xc25fc + mov di, ax ; 89 c7 ; 0xc2601 + sal di, 006h ; c1 e7 06 ; 0xc2603 + mov al, byte [di+04845h] ; 8a 85 45 48 ; 0xc2606 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc260a + mov al, byte [bx+047b2h] ; 8a 87 b2 47 ; 0xc260d vgabios.c:1717 + mov byte [bp-014h], al ; 88 46 ec ; 0xc2611 + dec si ; 4e ; 0xc2614 vgabios.c:1718 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc2615 + je near 026a6h ; 0f 84 8a 00 ; 0xc2618 + movzx bx, byte [bp-012h] ; 0f b6 5e ee ; 0xc261c vgabios.c:1720 + sal bx, 003h ; c1 e3 03 ; 0xc2620 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc2623 + cmp bl, 003h ; 80 fb 03 ; 0xc2627 + jc short 0263ah ; 72 0e ; 0xc262a + jbe short 02641h ; 76 13 ; 0xc262c + cmp bl, 005h ; 80 fb 05 ; 0xc262e + je short 02688h ; 74 55 ; 0xc2631 + cmp bl, 004h ; 80 fb 04 ; 0xc2633 + je short 02645h ; 74 0d ; 0xc2636 + jmp short 026a0h ; eb 66 ; 0xc2638 + cmp bl, 002h ; 80 fb 02 ; 0xc263a + je short 02669h ; 74 2a ; 0xc263d + jmp short 026a0h ; eb 5f ; 0xc263f + or byte [bp-006h], 001h ; 80 4e fa 01 ; 0xc2641 vgabios.c:1723 + movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xc2645 vgabios.c:1725 + push ax ; 50 ; 0xc2649 + movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xc264a + push ax ; 50 ; 0xc264e + movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xc264f + push ax ; 50 ; 0xc2653 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc2654 + movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xc2658 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc265c + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc2660 + call 02185h ; e8 1e fb ; 0xc2664 + jmp short 026a0h ; eb 37 ; 0xc2667 vgabios.c:1726 + movzx ax, byte [bp-014h] ; 0f b6 46 ec ; 0xc2669 vgabios.c:1728 + push ax ; 50 ; 0xc266d + movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xc266e + push ax ; 50 ; 0xc2672 + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc2673 + movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xc2677 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc267b + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc267f + call 02284h ; e8 fe fb ; 0xc2683 + jmp short 026a0h ; eb 18 ; 0xc2686 vgabios.c:1729 + movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xc2688 vgabios.c:1731 + push ax ; 50 ; 0xc268c + movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xc268d + movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xc2691 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc2695 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc2699 + call 02361h ; e8 c1 fc ; 0xc269d + inc byte [bp-010h] ; fe 46 f0 ; 0xc26a0 vgabios.c:1738 + jmp near 02614h ; e9 6e ff ; 0xc26a3 vgabios.c:1739 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc26a6 vgabios.c:1741 + pop di ; 5f ; 0xc26a9 + pop si ; 5e ; 0xc26aa + pop bp ; 5d ; 0xc26ab + retn ; c3 ; 0xc26ac + ; disGetNextSymbol 0xc26ad LB 0x1c0c -> off=0x0 cb=0000000000000165 uValue=00000000000c26ad 'biosfn_write_pixel' +biosfn_write_pixel: ; 0xc26ad LB 0x165 + push bp ; 55 ; 0xc26ad vgabios.c:1744 + mov bp, sp ; 89 e5 ; 0xc26ae + push si ; 56 ; 0xc26b0 + push ax ; 50 ; 0xc26b1 + push ax ; 50 ; 0xc26b2 + mov byte [bp-004h], al ; 88 46 fc ; 0xc26b3 + mov byte [bp-006h], dl ; 88 56 fa ; 0xc26b6 + mov dx, bx ; 89 da ; 0xc26b9 + mov bx, strict word 00049h ; bb 49 00 ; 0xc26bb vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc26be + mov es, ax ; 8e c0 ; 0xc26c1 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc26c3 + xor ah, ah ; 30 e4 ; 0xc26c6 vgabios.c:1751 + call 035edh ; e8 22 0f ; 0xc26c8 + mov ah, al ; 88 c4 ; 0xc26cb + cmp AL, strict byte 0ffh ; 3c ff ; 0xc26cd vgabios.c:1752 + je near 027edh ; 0f 84 1a 01 ; 0xc26cf + movzx bx, al ; 0f b6 d8 ; 0xc26d3 vgabios.c:1753 + sal bx, 003h ; c1 e3 03 ; 0xc26d6 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc26d9 + je near 027edh ; 0f 84 0b 01 ; 0xc26de + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc26e2 vgabios.c:1755 + cmp AL, strict byte 003h ; 3c 03 ; 0xc26e6 + jc short 026f9h ; 72 0f ; 0xc26e8 + jbe short 02700h ; 76 14 ; 0xc26ea + cmp AL, strict byte 005h ; 3c 05 ; 0xc26ec + je near 027f3h ; 0f 84 01 01 ; 0xc26ee + cmp AL, strict byte 004h ; 3c 04 ; 0xc26f2 + je short 02700h ; 74 0a ; 0xc26f4 + jmp near 027edh ; e9 f4 00 ; 0xc26f6 + cmp AL, strict byte 002h ; 3c 02 ; 0xc26f9 + je short 0276fh ; 74 72 ; 0xc26fb + jmp near 027edh ; e9 ed 00 ; 0xc26fd + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2700 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2703 + mov es, ax ; 8e c0 ; 0xc2706 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc2708 + imul ax, cx ; 0f af c1 ; 0xc270b vgabios.c:58 + mov bx, dx ; 89 d3 ; 0xc270e + shr bx, 003h ; c1 eb 03 ; 0xc2710 + add bx, ax ; 01 c3 ; 0xc2713 + mov si, strict word 0004ch ; be 4c 00 ; 0xc2715 vgabios.c:57 + mov cx, word [es:si] ; 26 8b 0c ; 0xc2718 + movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xc271b vgabios.c:58 + imul ax, cx ; 0f af c1 ; 0xc271f + add bx, ax ; 01 c3 ; 0xc2722 + mov cl, dl ; 88 d1 ; 0xc2724 vgabios.c:1761 + and cl, 007h ; 80 e1 07 ; 0xc2726 + mov ax, 00080h ; b8 80 00 ; 0xc2729 + sar ax, CL ; d3 f8 ; 0xc272c + xor ah, ah ; 30 e4 ; 0xc272e vgabios.c:1762 + sal ax, 008h ; c1 e0 08 ; 0xc2730 + or AL, strict byte 008h ; 0c 08 ; 0xc2733 + mov dx, 003ceh ; ba ce 03 ; 0xc2735 + out DX, ax ; ef ; 0xc2738 + mov ax, 00205h ; b8 05 02 ; 0xc2739 vgabios.c:1763 + out DX, ax ; ef ; 0xc273c + mov dx, bx ; 89 da ; 0xc273d vgabios.c:1764 + mov ax, 0a000h ; b8 00 a0 ; 0xc273f + call 03614h ; e8 cf 0e ; 0xc2742 + test byte [bp-006h], 080h ; f6 46 fa 80 ; 0xc2745 vgabios.c:1765 + je short 02752h ; 74 07 ; 0xc2749 + mov ax, 01803h ; b8 03 18 ; 0xc274b vgabios.c:1767 + mov dx, 003ceh ; ba ce 03 ; 0xc274e + out DX, ax ; ef ; 0xc2751 + mov ax, 0a000h ; b8 00 a0 ; 0xc2752 vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc2755 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2757 + mov byte [es:bx], al ; 26 88 07 ; 0xc275a + mov ax, 0ff08h ; b8 08 ff ; 0xc275d vgabios.c:1770 + mov dx, 003ceh ; ba ce 03 ; 0xc2760 + out DX, ax ; ef ; 0xc2763 + mov ax, strict word 00005h ; b8 05 00 ; 0xc2764 vgabios.c:1771 + out DX, ax ; ef ; 0xc2767 + mov ax, strict word 00003h ; b8 03 00 ; 0xc2768 vgabios.c:1772 + out DX, ax ; ef ; 0xc276b + jmp near 027edh ; e9 7e 00 ; 0xc276c vgabios.c:1773 + mov si, cx ; 89 ce ; 0xc276f vgabios.c:1775 + shr si, 1 ; d1 ee ; 0xc2771 + imul si, si, strict byte 00050h ; 6b f6 50 ; 0xc2773 + cmp al, byte [bx+047b2h] ; 3a 87 b2 47 ; 0xc2776 + jne short 02783h ; 75 07 ; 0xc277a + mov bx, dx ; 89 d3 ; 0xc277c vgabios.c:1777 + shr bx, 002h ; c1 eb 02 ; 0xc277e + jmp short 02788h ; eb 05 ; 0xc2781 vgabios.c:1779 + mov bx, dx ; 89 d3 ; 0xc2783 vgabios.c:1781 + shr bx, 003h ; c1 eb 03 ; 0xc2785 + add bx, si ; 01 f3 ; 0xc2788 + test cl, 001h ; f6 c1 01 ; 0xc278a vgabios.c:1783 + je short 02792h ; 74 03 ; 0xc278d + add bh, 020h ; 80 c7 20 ; 0xc278f + mov cx, 0b800h ; b9 00 b8 ; 0xc2792 vgabios.c:47 + mov es, cx ; 8e c1 ; 0xc2795 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2797 + movzx si, ah ; 0f b6 f4 ; 0xc279a vgabios.c:1785 + sal si, 003h ; c1 e6 03 ; 0xc279d + cmp byte [si+047b2h], 002h ; 80 bc b2 47 02 ; 0xc27a0 + jne short 027beh ; 75 17 ; 0xc27a5 + mov ah, dl ; 88 d4 ; 0xc27a7 vgabios.c:1787 + and ah, 003h ; 80 e4 03 ; 0xc27a9 + mov CL, strict byte 003h ; b1 03 ; 0xc27ac + sub cl, ah ; 28 e1 ; 0xc27ae + add cl, cl ; 00 c9 ; 0xc27b0 + mov dh, byte [bp-006h] ; 8a 76 fa ; 0xc27b2 + and dh, 003h ; 80 e6 03 ; 0xc27b5 + sal dh, CL ; d2 e6 ; 0xc27b8 + mov DL, strict byte 003h ; b2 03 ; 0xc27ba vgabios.c:1788 + jmp short 027d1h ; eb 13 ; 0xc27bc vgabios.c:1790 + mov ah, dl ; 88 d4 ; 0xc27be vgabios.c:1792 + and ah, 007h ; 80 e4 07 ; 0xc27c0 + mov CL, strict byte 007h ; b1 07 ; 0xc27c3 + sub cl, ah ; 28 e1 ; 0xc27c5 + mov dh, byte [bp-006h] ; 8a 76 fa ; 0xc27c7 + and dh, 001h ; 80 e6 01 ; 0xc27ca + sal dh, CL ; d2 e6 ; 0xc27cd + mov DL, strict byte 001h ; b2 01 ; 0xc27cf vgabios.c:1793 + sal dl, CL ; d2 e2 ; 0xc27d1 + test byte [bp-006h], 080h ; f6 46 fa 80 ; 0xc27d3 vgabios.c:1795 + je short 027ddh ; 74 04 ; 0xc27d7 + xor al, dh ; 30 f0 ; 0xc27d9 vgabios.c:1797 + jmp short 027e5h ; eb 08 ; 0xc27db vgabios.c:1799 + mov ah, dl ; 88 d4 ; 0xc27dd vgabios.c:1801 + not ah ; f6 d4 ; 0xc27df + and al, ah ; 20 e0 ; 0xc27e1 + or al, dh ; 08 f0 ; 0xc27e3 vgabios.c:1802 + mov dx, 0b800h ; ba 00 b8 ; 0xc27e5 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc27e8 + mov byte [es:bx], al ; 26 88 07 ; 0xc27ea + lea sp, [bp-002h] ; 8d 66 fe ; 0xc27ed vgabios.c:1805 + pop si ; 5e ; 0xc27f0 + pop bp ; 5d ; 0xc27f1 + retn ; c3 ; 0xc27f2 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc27f3 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc27f6 + mov es, ax ; 8e c0 ; 0xc27f9 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc27fb + sal ax, 003h ; c1 e0 03 ; 0xc27fe vgabios.c:58 + imul ax, cx ; 0f af c1 ; 0xc2801 + mov bx, dx ; 89 d3 ; 0xc2804 + add bx, ax ; 01 c3 ; 0xc2806 + mov ax, 0a000h ; b8 00 a0 ; 0xc2808 vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc280b + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc280d + jmp short 027eah ; eb d8 ; 0xc2810 + ; disGetNextSymbol 0xc2812 LB 0x1aa7 -> off=0x0 cb=000000000000024a uValue=00000000000c2812 'biosfn_write_teletype' +biosfn_write_teletype: ; 0xc2812 LB 0x24a + push bp ; 55 ; 0xc2812 vgabios.c:1818 + mov bp, sp ; 89 e5 ; 0xc2813 + push si ; 56 ; 0xc2815 + sub sp, strict byte 00012h ; 83 ec 12 ; 0xc2816 + mov ch, al ; 88 c5 ; 0xc2819 + mov byte [bp-00ah], dl ; 88 56 f6 ; 0xc281b + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc281e + cmp dl, 0ffh ; 80 fa ff ; 0xc2821 vgabios.c:1826 + jne short 02834h ; 75 0e ; 0xc2824 + mov bx, strict word 00062h ; bb 62 00 ; 0xc2826 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2829 + mov es, ax ; 8e c0 ; 0xc282c + mov al, byte [es:bx] ; 26 8a 07 ; 0xc282e + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc2831 vgabios.c:48 + mov bx, strict word 00049h ; bb 49 00 ; 0xc2834 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2837 + mov es, ax ; 8e c0 ; 0xc283a + mov al, byte [es:bx] ; 26 8a 07 ; 0xc283c + xor ah, ah ; 30 e4 ; 0xc283f vgabios.c:1831 + call 035edh ; e8 a9 0d ; 0xc2841 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc2844 + cmp AL, strict byte 0ffh ; 3c ff ; 0xc2847 vgabios.c:1832 + je near 02a56h ; 0f 84 09 02 ; 0xc2849 + movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xc284d vgabios.c:1835 + lea bx, [bp-012h] ; 8d 5e ee ; 0xc2851 + lea dx, [bp-014h] ; 8d 56 ec ; 0xc2854 + call 00a93h ; e8 39 e2 ; 0xc2857 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc285a vgabios.c:1836 + mov byte [bp-006h], al ; 88 46 fa ; 0xc285d + mov ax, word [bp-012h] ; 8b 46 ee ; 0xc2860 + xor al, al ; 30 c0 ; 0xc2863 + shr ax, 008h ; c1 e8 08 ; 0xc2865 + mov byte [bp-004h], al ; 88 46 fc ; 0xc2868 + mov bx, 00084h ; bb 84 00 ; 0xc286b vgabios.c:47 + mov dx, strict word 00040h ; ba 40 00 ; 0xc286e + mov es, dx ; 8e c2 ; 0xc2871 + mov dl, byte [es:bx] ; 26 8a 17 ; 0xc2873 + xor dh, dh ; 30 f6 ; 0xc2876 vgabios.c:48 + inc dx ; 42 ; 0xc2878 + mov word [bp-00eh], dx ; 89 56 f2 ; 0xc2879 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc287c vgabios.c:57 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc287f + mov word [bp-010h], dx ; 89 56 f0 ; 0xc2882 vgabios.c:58 + cmp ch, 008h ; 80 fd 08 ; 0xc2885 vgabios.c:1842 + jc short 02898h ; 72 0e ; 0xc2888 + jbe short 028a1h ; 76 15 ; 0xc288a + cmp ch, 00dh ; 80 fd 0d ; 0xc288c + je short 028b7h ; 74 26 ; 0xc288f + cmp ch, 00ah ; 80 fd 0a ; 0xc2891 + je short 028afh ; 74 19 ; 0xc2894 + jmp short 028beh ; eb 26 ; 0xc2896 + cmp ch, 007h ; 80 fd 07 ; 0xc2898 + je near 029b2h ; 0f 84 13 01 ; 0xc289b + jmp short 028beh ; eb 1d ; 0xc289f + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc28a1 vgabios.c:1849 + jbe near 029b2h ; 0f 86 09 01 ; 0xc28a5 + dec byte [bp-006h] ; fe 4e fa ; 0xc28a9 + jmp near 029b2h ; e9 03 01 ; 0xc28ac vgabios.c:1850 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc28af vgabios.c:1853 + mov byte [bp-004h], al ; 88 46 fc ; 0xc28b1 + jmp near 029b2h ; e9 fb 00 ; 0xc28b4 vgabios.c:1854 + mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xc28b7 vgabios.c:1857 + jmp near 029b2h ; e9 f4 00 ; 0xc28bb vgabios.c:1858 + movzx si, byte [bp-00ch] ; 0f b6 76 f4 ; 0xc28be vgabios.c:1862 + mov bx, si ; 89 f3 ; 0xc28c2 + sal bx, 003h ; c1 e3 03 ; 0xc28c4 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc28c7 + jne short 02911h ; 75 43 ; 0xc28cc + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc28ce vgabios.c:1865 + imul ax, word [bp-00eh] ; 0f af 46 f2 ; 0xc28d1 + add ax, ax ; 01 c0 ; 0xc28d5 + or AL, strict byte 0ffh ; 0c ff ; 0xc28d7 + movzx dx, byte [bp-00ah] ; 0f b6 56 f6 ; 0xc28d9 + mov si, ax ; 89 c6 ; 0xc28dd + inc si ; 46 ; 0xc28df + imul si, dx ; 0f af f2 ; 0xc28e0 + movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xc28e3 + imul ax, word [bp-010h] ; 0f af 46 f0 ; 0xc28e7 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc28eb + add ax, dx ; 01 d0 ; 0xc28ef + add ax, ax ; 01 c0 ; 0xc28f1 + add si, ax ; 01 c6 ; 0xc28f3 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc28f5 vgabios.c:50 + mov byte [es:si], ch ; 26 88 2c ; 0xc28f9 + cmp cl, 003h ; 80 f9 03 ; 0xc28fc vgabios.c:1870 + jne near 0299fh ; 0f 85 9c 00 ; 0xc28ff + inc si ; 46 ; 0xc2903 vgabios.c:1871 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2904 vgabios.c:50 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2908 + mov byte [es:si], al ; 26 88 04 ; 0xc290b + jmp near 0299fh ; e9 8e 00 ; 0xc290e vgabios.c:1873 + movzx si, byte [si+0482fh] ; 0f b6 b4 2f 48 ; 0xc2911 vgabios.c:1876 + sal si, 006h ; c1 e6 06 ; 0xc2916 + mov ah, byte [si+04845h] ; 8a a4 45 48 ; 0xc2919 + mov dl, byte [bx+047b2h] ; 8a 97 b2 47 ; 0xc291d vgabios.c:1877 + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc2921 vgabios.c:1878 + cmp AL, strict byte 003h ; 3c 03 ; 0xc2925 + jc short 02935h ; 72 0c ; 0xc2927 + jbe short 0293bh ; 76 10 ; 0xc2929 + cmp AL, strict byte 005h ; 3c 05 ; 0xc292b + je short 02986h ; 74 57 ; 0xc292d + cmp AL, strict byte 004h ; 3c 04 ; 0xc292f + je short 0293fh ; 74 0c ; 0xc2931 + jmp short 0299fh ; eb 6a ; 0xc2933 + cmp AL, strict byte 002h ; 3c 02 ; 0xc2935 + je short 02965h ; 74 2c ; 0xc2937 + jmp short 0299fh ; eb 64 ; 0xc2939 + or byte [bp-008h], 001h ; 80 4e f8 01 ; 0xc293b vgabios.c:1881 + movzx dx, byte [bp-00ah] ; 0f b6 56 f6 ; 0xc293f vgabios.c:1883 + push dx ; 52 ; 0xc2943 + movzx ax, ah ; 0f b6 c4 ; 0xc2944 + push ax ; 50 ; 0xc2947 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc2948 + push ax ; 50 ; 0xc294c + movzx bx, byte [bp-004h] ; 0f b6 5e fc ; 0xc294d + movzx si, byte [bp-006h] ; 0f b6 76 fa ; 0xc2951 + movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xc2955 + movzx ax, ch ; 0f b6 c5 ; 0xc2959 + mov cx, bx ; 89 d9 ; 0xc295c + mov bx, si ; 89 f3 ; 0xc295e + call 02185h ; e8 22 f8 ; 0xc2960 + jmp short 0299fh ; eb 3a ; 0xc2963 vgabios.c:1884 + movzx ax, dl ; 0f b6 c2 ; 0xc2965 vgabios.c:1886 + push ax ; 50 ; 0xc2968 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc2969 + push ax ; 50 ; 0xc296d + movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xc296e + movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xc2972 + movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xc2976 + movzx si, ch ; 0f b6 f5 ; 0xc297a + mov cx, ax ; 89 c1 ; 0xc297d + mov ax, si ; 89 f0 ; 0xc297f + call 02284h ; e8 00 f9 ; 0xc2981 + jmp short 0299fh ; eb 19 ; 0xc2984 vgabios.c:1887 + movzx ax, byte [bp-010h] ; 0f b6 46 f0 ; 0xc2986 vgabios.c:1889 + push ax ; 50 ; 0xc298a + movzx si, byte [bp-004h] ; 0f b6 76 fc ; 0xc298b + movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xc298f + movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xc2993 + movzx ax, ch ; 0f b6 c5 ; 0xc2997 + mov cx, si ; 89 f1 ; 0xc299a + call 02361h ; e8 c2 f9 ; 0xc299c + inc byte [bp-006h] ; fe 46 fa ; 0xc299f vgabios.c:1897 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc29a2 vgabios.c:1899 + cmp ax, word [bp-010h] ; 3b 46 f0 ; 0xc29a6 + jne short 029b2h ; 75 07 ; 0xc29a9 + mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xc29ab vgabios.c:1900 + inc byte [bp-004h] ; fe 46 fc ; 0xc29af vgabios.c:1901 + movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xc29b2 vgabios.c:1906 + cmp ax, word [bp-00eh] ; 3b 46 f2 ; 0xc29b6 + jne near 02a3ah ; 0f 85 7d 00 ; 0xc29b9 + movzx bx, byte [bp-00ch] ; 0f b6 5e f4 ; 0xc29bd vgabios.c:1908 + sal bx, 003h ; c1 e3 03 ; 0xc29c1 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc29c4 + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc29c7 + mov ah, byte [bp-010h] ; 8a 66 f0 ; 0xc29c9 + db 0feh, 0cch + ; dec ah ; fe cc ; 0xc29cc + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc29ce + jne short 02a1dh ; 75 48 ; 0xc29d3 + mov dx, word [bp-010h] ; 8b 56 f0 ; 0xc29d5 vgabios.c:1910 + imul dx, word [bp-00eh] ; 0f af 56 f2 ; 0xc29d8 + add dx, dx ; 01 d2 ; 0xc29dc + or dl, 0ffh ; 80 ca ff ; 0xc29de + movzx si, byte [bp-00ah] ; 0f b6 76 f6 ; 0xc29e1 + inc dx ; 42 ; 0xc29e5 + imul si, dx ; 0f af f2 ; 0xc29e6 + movzx dx, byte [bp-004h] ; 0f b6 56 fc ; 0xc29e9 + dec dx ; 4a ; 0xc29ed + mov cx, word [bp-010h] ; 8b 4e f0 ; 0xc29ee + imul cx, dx ; 0f af ca ; 0xc29f1 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc29f4 + add dx, cx ; 01 ca ; 0xc29f8 + add dx, dx ; 01 d2 ; 0xc29fa + add si, dx ; 01 d6 ; 0xc29fc + inc si ; 46 ; 0xc29fe vgabios.c:1911 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc29ff vgabios.c:45 + mov bl, byte [es:si] ; 26 8a 1c ; 0xc2a03 + push strict byte 00001h ; 6a 01 ; 0xc2a06 vgabios.c:1912 + movzx dx, byte [bp-00ah] ; 0f b6 56 f6 ; 0xc2a08 + push dx ; 52 ; 0xc2a0c + movzx dx, ah ; 0f b6 d4 ; 0xc2a0d + push dx ; 52 ; 0xc2a10 + xor ah, ah ; 30 e4 ; 0xc2a11 + push ax ; 50 ; 0xc2a13 + movzx dx, bl ; 0f b6 d3 ; 0xc2a14 + xor cx, cx ; 31 c9 ; 0xc2a17 + xor bx, bx ; 31 db ; 0xc2a19 + jmp short 02a31h ; eb 14 ; 0xc2a1b vgabios.c:1914 + push strict byte 00001h ; 6a 01 ; 0xc2a1d vgabios.c:1916 + movzx dx, byte [bp-00ah] ; 0f b6 56 f6 ; 0xc2a1f + push dx ; 52 ; 0xc2a23 + movzx dx, ah ; 0f b6 d4 ; 0xc2a24 + push dx ; 52 ; 0xc2a27 + xor ah, ah ; 30 e4 ; 0xc2a28 + push ax ; 50 ; 0xc2a2a + xor cx, cx ; 31 c9 ; 0xc2a2b + xor bx, bx ; 31 db ; 0xc2a2d + xor dx, dx ; 31 d2 ; 0xc2a2f + mov ax, strict word 00001h ; b8 01 00 ; 0xc2a31 + call 01b5dh ; e8 26 f1 ; 0xc2a34 + dec byte [bp-004h] ; fe 4e fc ; 0xc2a37 vgabios.c:1918 + movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xc2a3a vgabios.c:1922 + mov word [bp-012h], ax ; 89 46 ee ; 0xc2a3e + sal word [bp-012h], 008h ; c1 66 ee 08 ; 0xc2a41 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc2a45 + add word [bp-012h], ax ; 01 46 ee ; 0xc2a49 + mov dx, word [bp-012h] ; 8b 56 ee ; 0xc2a4c vgabios.c:1923 + movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xc2a4f + call 01242h ; e8 ec e7 ; 0xc2a53 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2a56 vgabios.c:1924 + pop si ; 5e ; 0xc2a59 + pop bp ; 5d ; 0xc2a5a + retn ; c3 ; 0xc2a5b + ; disGetNextSymbol 0xc2a5c LB 0x185d -> off=0x0 cb=0000000000000033 uValue=00000000000c2a5c 'get_font_access' +get_font_access: ; 0xc2a5c LB 0x33 + push bp ; 55 ; 0xc2a5c vgabios.c:1927 + mov bp, sp ; 89 e5 ; 0xc2a5d + push dx ; 52 ; 0xc2a5f + mov ax, strict word 00005h ; b8 05 00 ; 0xc2a60 vgabios.c:1929 + mov dx, 003ceh ; ba ce 03 ; 0xc2a63 + out DX, ax ; ef ; 0xc2a66 + mov AL, strict byte 006h ; b0 06 ; 0xc2a67 vgabios.c:1930 + out DX, AL ; ee ; 0xc2a69 + mov dx, 003cfh ; ba cf 03 ; 0xc2a6a vgabios.c:1931 + in AL, DX ; ec ; 0xc2a6d + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2a6e + and ax, strict word 00001h ; 25 01 00 ; 0xc2a70 + or AL, strict byte 004h ; 0c 04 ; 0xc2a73 + sal ax, 008h ; c1 e0 08 ; 0xc2a75 + or AL, strict byte 006h ; 0c 06 ; 0xc2a78 + mov dx, 003ceh ; ba ce 03 ; 0xc2a7a + out DX, ax ; ef ; 0xc2a7d + mov ax, 00402h ; b8 02 04 ; 0xc2a7e vgabios.c:1932 + mov dx, 003c4h ; ba c4 03 ; 0xc2a81 + out DX, ax ; ef ; 0xc2a84 + mov ax, 00604h ; b8 04 06 ; 0xc2a85 vgabios.c:1933 + out DX, ax ; ef ; 0xc2a88 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2a89 vgabios.c:1934 + pop dx ; 5a ; 0xc2a8c + pop bp ; 5d ; 0xc2a8d + retn ; c3 ; 0xc2a8e + ; disGetNextSymbol 0xc2a8f LB 0x182a -> off=0x0 cb=0000000000000030 uValue=00000000000c2a8f 'release_font_access' +release_font_access: ; 0xc2a8f LB 0x30 + push bp ; 55 ; 0xc2a8f vgabios.c:1936 + mov bp, sp ; 89 e5 ; 0xc2a90 + push dx ; 52 ; 0xc2a92 + mov dx, 003cch ; ba cc 03 ; 0xc2a93 vgabios.c:1938 + in AL, DX ; ec ; 0xc2a96 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2a97 + and ax, strict word 00001h ; 25 01 00 ; 0xc2a99 + sal ax, 002h ; c1 e0 02 ; 0xc2a9c + or AL, strict byte 00ah ; 0c 0a ; 0xc2a9f + sal ax, 008h ; c1 e0 08 ; 0xc2aa1 + or AL, strict byte 006h ; 0c 06 ; 0xc2aa4 + mov dx, 003ceh ; ba ce 03 ; 0xc2aa6 + out DX, ax ; ef ; 0xc2aa9 + mov ax, 01005h ; b8 05 10 ; 0xc2aaa vgabios.c:1939 + out DX, ax ; ef ; 0xc2aad + mov ax, 00302h ; b8 02 03 ; 0xc2aae vgabios.c:1940 + mov dx, 003c4h ; ba c4 03 ; 0xc2ab1 + out DX, ax ; ef ; 0xc2ab4 + mov ax, 00204h ; b8 04 02 ; 0xc2ab5 vgabios.c:1941 + out DX, ax ; ef ; 0xc2ab8 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2ab9 vgabios.c:1942 + pop dx ; 5a ; 0xc2abc + pop bp ; 5d ; 0xc2abd + retn ; c3 ; 0xc2abe + ; disGetNextSymbol 0xc2abf LB 0x17fa -> off=0x0 cb=00000000000000b4 uValue=00000000000c2abf 'set_scan_lines' +set_scan_lines: ; 0xc2abf LB 0xb4 + push bp ; 55 ; 0xc2abf vgabios.c:1944 + mov bp, sp ; 89 e5 ; 0xc2ac0 + push bx ; 53 ; 0xc2ac2 + push cx ; 51 ; 0xc2ac3 + push dx ; 52 ; 0xc2ac4 + push si ; 56 ; 0xc2ac5 + push di ; 57 ; 0xc2ac6 + mov bl, al ; 88 c3 ; 0xc2ac7 + mov si, strict word 00063h ; be 63 00 ; 0xc2ac9 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2acc + mov es, ax ; 8e c0 ; 0xc2acf + mov si, word [es:si] ; 26 8b 34 ; 0xc2ad1 + mov cx, si ; 89 f1 ; 0xc2ad4 vgabios.c:58 + mov AL, strict byte 009h ; b0 09 ; 0xc2ad6 vgabios.c:1950 + mov dx, si ; 89 f2 ; 0xc2ad8 + out DX, AL ; ee ; 0xc2ada + lea dx, [si+001h] ; 8d 54 01 ; 0xc2adb vgabios.c:1951 + in AL, DX ; ec ; 0xc2ade + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2adf + mov ah, al ; 88 c4 ; 0xc2ae1 vgabios.c:1952 + and ah, 0e0h ; 80 e4 e0 ; 0xc2ae3 + mov al, bl ; 88 d8 ; 0xc2ae6 + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc2ae8 + or al, ah ; 08 e0 ; 0xc2aea + out DX, AL ; ee ; 0xc2aec vgabios.c:1953 + cmp bl, 008h ; 80 fb 08 ; 0xc2aed vgabios.c:1954 + jne short 02afah ; 75 08 ; 0xc2af0 + mov dx, strict word 00007h ; ba 07 00 ; 0xc2af2 vgabios.c:1956 + mov ax, strict word 00006h ; b8 06 00 ; 0xc2af5 + jmp short 02b07h ; eb 0d ; 0xc2af8 vgabios.c:1958 + mov al, bl ; 88 d8 ; 0xc2afa vgabios.c:1960 + sub AL, strict byte 003h ; 2c 03 ; 0xc2afc + movzx dx, al ; 0f b6 d0 ; 0xc2afe + mov al, bl ; 88 d8 ; 0xc2b01 + sub AL, strict byte 004h ; 2c 04 ; 0xc2b03 + xor ah, ah ; 30 e4 ; 0xc2b05 + call 0114ch ; e8 42 e6 ; 0xc2b07 + movzx di, bl ; 0f b6 fb ; 0xc2b0a vgabios.c:1962 + mov bx, 00085h ; bb 85 00 ; 0xc2b0d vgabios.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2b10 + mov es, ax ; 8e c0 ; 0xc2b13 + mov word [es:bx], di ; 26 89 3f ; 0xc2b15 + mov AL, strict byte 012h ; b0 12 ; 0xc2b18 vgabios.c:1963 + mov dx, cx ; 89 ca ; 0xc2b1a + out DX, AL ; ee ; 0xc2b1c + mov bx, cx ; 89 cb ; 0xc2b1d vgabios.c:1964 + inc bx ; 43 ; 0xc2b1f + mov dx, bx ; 89 da ; 0xc2b20 + in AL, DX ; ec ; 0xc2b22 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2b23 + mov si, ax ; 89 c6 ; 0xc2b25 + mov AL, strict byte 007h ; b0 07 ; 0xc2b27 vgabios.c:1965 + mov dx, cx ; 89 ca ; 0xc2b29 + out DX, AL ; ee ; 0xc2b2b + mov dx, bx ; 89 da ; 0xc2b2c vgabios.c:1966 + in AL, DX ; ec ; 0xc2b2e + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2b2f + mov ah, al ; 88 c4 ; 0xc2b31 vgabios.c:1967 + and ah, 002h ; 80 e4 02 ; 0xc2b33 + movzx dx, ah ; 0f b6 d4 ; 0xc2b36 + sal dx, 007h ; c1 e2 07 ; 0xc2b39 + and AL, strict byte 040h ; 24 40 ; 0xc2b3c + xor ah, ah ; 30 e4 ; 0xc2b3e + sal ax, 003h ; c1 e0 03 ; 0xc2b40 + add ax, dx ; 01 d0 ; 0xc2b43 + inc ax ; 40 ; 0xc2b45 + add ax, si ; 01 f0 ; 0xc2b46 + xor dx, dx ; 31 d2 ; 0xc2b48 vgabios.c:1968 + div di ; f7 f7 ; 0xc2b4a + mov dl, al ; 88 c2 ; 0xc2b4c vgabios.c:1969 + db 0feh, 0cah + ; dec dl ; fe ca ; 0xc2b4e + mov bx, 00084h ; bb 84 00 ; 0xc2b50 vgabios.c:52 + mov byte [es:bx], dl ; 26 88 17 ; 0xc2b53 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2b56 vgabios.c:57 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc2b59 + xor ah, ah ; 30 e4 ; 0xc2b5c vgabios.c:1971 + imul dx, ax ; 0f af d0 ; 0xc2b5e + add dx, dx ; 01 d2 ; 0xc2b61 + mov bx, strict word 0004ch ; bb 4c 00 ; 0xc2b63 vgabios.c:62 + mov word [es:bx], dx ; 26 89 17 ; 0xc2b66 + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc2b69 vgabios.c:1972 + pop di ; 5f ; 0xc2b6c + pop si ; 5e ; 0xc2b6d + pop dx ; 5a ; 0xc2b6e + pop cx ; 59 ; 0xc2b6f + pop bx ; 5b ; 0xc2b70 + pop bp ; 5d ; 0xc2b71 + retn ; c3 ; 0xc2b72 + ; disGetNextSymbol 0xc2b73 LB 0x1746 -> off=0x0 cb=0000000000000022 uValue=00000000000c2b73 'biosfn_set_font_block' +biosfn_set_font_block: ; 0xc2b73 LB 0x22 + push bp ; 55 ; 0xc2b73 vgabios.c:1974 + mov bp, sp ; 89 e5 ; 0xc2b74 + push bx ; 53 ; 0xc2b76 + push dx ; 52 ; 0xc2b77 + mov bl, al ; 88 c3 ; 0xc2b78 + mov ax, 00100h ; b8 00 01 ; 0xc2b7a vgabios.c:1976 + mov dx, 003c4h ; ba c4 03 ; 0xc2b7d + out DX, ax ; ef ; 0xc2b80 + movzx ax, bl ; 0f b6 c3 ; 0xc2b81 vgabios.c:1977 + sal ax, 008h ; c1 e0 08 ; 0xc2b84 + or AL, strict byte 003h ; 0c 03 ; 0xc2b87 + out DX, ax ; ef ; 0xc2b89 + mov ax, 00300h ; b8 00 03 ; 0xc2b8a vgabios.c:1978 + out DX, ax ; ef ; 0xc2b8d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2b8e vgabios.c:1979 + pop dx ; 5a ; 0xc2b91 + pop bx ; 5b ; 0xc2b92 + pop bp ; 5d ; 0xc2b93 + retn ; c3 ; 0xc2b94 + ; disGetNextSymbol 0xc2b95 LB 0x1724 -> off=0x0 cb=0000000000000075 uValue=00000000000c2b95 'load_text_patch' +load_text_patch: ; 0xc2b95 LB 0x75 + push bp ; 55 ; 0xc2b95 vgabios.c:1981 + mov bp, sp ; 89 e5 ; 0xc2b96 + push si ; 56 ; 0xc2b98 + push di ; 57 ; 0xc2b99 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc2b9a + push ax ; 50 ; 0xc2b9d + mov byte [bp-006h], cl ; 88 4e fa ; 0xc2b9e + call 02a5ch ; e8 b8 fe ; 0xc2ba1 vgabios.c:1986 + mov al, bl ; 88 d8 ; 0xc2ba4 vgabios.c:1988 + and AL, strict byte 003h ; 24 03 ; 0xc2ba6 + movzx cx, al ; 0f b6 c8 ; 0xc2ba8 + sal cx, 00eh ; c1 e1 0e ; 0xc2bab + mov al, bl ; 88 d8 ; 0xc2bae + and AL, strict byte 004h ; 24 04 ; 0xc2bb0 + xor ah, ah ; 30 e4 ; 0xc2bb2 + sal ax, 00bh ; c1 e0 0b ; 0xc2bb4 + add cx, ax ; 01 c1 ; 0xc2bb7 + mov word [bp-00ch], cx ; 89 4e f4 ; 0xc2bb9 + mov bx, dx ; 89 d3 ; 0xc2bbc vgabios.c:1989 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2bbe + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc2bc1 + inc dx ; 42 ; 0xc2bc4 vgabios.c:1990 + mov word [bp-008h], dx ; 89 56 f8 ; 0xc2bc5 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc2bc8 vgabios.c:1991 + cmp byte [es:bx], 000h ; 26 80 3f 00 ; 0xc2bcb + je short 02c00h ; 74 2f ; 0xc2bcf + movzx ax, byte [es:bx] ; 26 0f b6 07 ; 0xc2bd1 vgabios.c:1992 + sal ax, 005h ; c1 e0 05 ; 0xc2bd5 + mov di, word [bp-00ch] ; 8b 7e f4 ; 0xc2bd8 + add di, ax ; 01 c7 ; 0xc2bdb + movzx cx, byte [bp-006h] ; 0f b6 4e fa ; 0xc2bdd vgabios.c:1993 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc2be1 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc2be4 + mov ax, 0a000h ; b8 00 a0 ; 0xc2be7 + mov es, ax ; 8e c0 ; 0xc2bea + jcxz 02bf4h ; e3 06 ; 0xc2bec + push DS ; 1e ; 0xc2bee + mov ds, dx ; 8e da ; 0xc2bef + rep movsb ; f3 a4 ; 0xc2bf1 + pop DS ; 1f ; 0xc2bf3 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc2bf4 vgabios.c:1994 + inc ax ; 40 ; 0xc2bf8 + add word [bp-008h], ax ; 01 46 f8 ; 0xc2bf9 + add bx, ax ; 01 c3 ; 0xc2bfc vgabios.c:1995 + jmp short 02bc8h ; eb c8 ; 0xc2bfe vgabios.c:1996 + call 02a8fh ; e8 8c fe ; 0xc2c00 vgabios.c:1998 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2c03 vgabios.c:1999 + pop di ; 5f ; 0xc2c06 + pop si ; 5e ; 0xc2c07 + pop bp ; 5d ; 0xc2c08 + retn ; c3 ; 0xc2c09 + ; disGetNextSymbol 0xc2c0a LB 0x16af -> off=0x0 cb=000000000000007c uValue=00000000000c2c0a 'biosfn_load_text_user_pat' +biosfn_load_text_user_pat: ; 0xc2c0a LB 0x7c + push bp ; 55 ; 0xc2c0a vgabios.c:2001 + mov bp, sp ; 89 e5 ; 0xc2c0b + push si ; 56 ; 0xc2c0d + push di ; 57 ; 0xc2c0e + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc2c0f + mov byte [bp-006h], al ; 88 46 fa ; 0xc2c12 + mov word [bp-00ch], dx ; 89 56 f4 ; 0xc2c15 + mov word [bp-008h], bx ; 89 5e f8 ; 0xc2c18 + mov word [bp-00ah], cx ; 89 4e f6 ; 0xc2c1b + call 02a5ch ; e8 3b fe ; 0xc2c1e vgabios.c:2006 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc2c21 vgabios.c:2007 + and AL, strict byte 003h ; 24 03 ; 0xc2c24 + xor ah, ah ; 30 e4 ; 0xc2c26 + mov bx, ax ; 89 c3 ; 0xc2c28 + sal bx, 00eh ; c1 e3 0e ; 0xc2c2a + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc2c2d + and AL, strict byte 004h ; 24 04 ; 0xc2c30 + xor ah, ah ; 30 e4 ; 0xc2c32 + sal ax, 00bh ; c1 e0 0b ; 0xc2c34 + add bx, ax ; 01 c3 ; 0xc2c37 + mov word [bp-00eh], bx ; 89 5e f2 ; 0xc2c39 + xor bx, bx ; 31 db ; 0xc2c3c vgabios.c:2008 + cmp bx, word [bp-00ah] ; 3b 5e f6 ; 0xc2c3e + jnc short 02c6dh ; 73 2a ; 0xc2c41 + movzx cx, byte [bp+008h] ; 0f b6 4e 08 ; 0xc2c43 vgabios.c:2010 + mov si, bx ; 89 de ; 0xc2c47 + imul si, cx ; 0f af f1 ; 0xc2c49 + add si, word [bp-008h] ; 03 76 f8 ; 0xc2c4c + mov di, word [bp+004h] ; 8b 7e 04 ; 0xc2c4f vgabios.c:2011 + add di, bx ; 01 df ; 0xc2c52 + sal di, 005h ; c1 e7 05 ; 0xc2c54 + add di, word [bp-00eh] ; 03 7e f2 ; 0xc2c57 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc2c5a vgabios.c:2012 + mov ax, 0a000h ; b8 00 a0 ; 0xc2c5d + mov es, ax ; 8e c0 ; 0xc2c60 + jcxz 02c6ah ; e3 06 ; 0xc2c62 + push DS ; 1e ; 0xc2c64 + mov ds, dx ; 8e da ; 0xc2c65 + rep movsb ; f3 a4 ; 0xc2c67 + pop DS ; 1f ; 0xc2c69 + inc bx ; 43 ; 0xc2c6a vgabios.c:2013 + jmp short 02c3eh ; eb d1 ; 0xc2c6b + call 02a8fh ; e8 1f fe ; 0xc2c6d vgabios.c:2014 + cmp byte [bp-006h], 010h ; 80 7e fa 10 ; 0xc2c70 vgabios.c:2015 + jc short 02c7dh ; 72 07 ; 0xc2c74 + movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xc2c76 vgabios.c:2017 + call 02abfh ; e8 42 fe ; 0xc2c7a + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2c7d vgabios.c:2019 + pop di ; 5f ; 0xc2c80 + pop si ; 5e ; 0xc2c81 + pop bp ; 5d ; 0xc2c82 + retn 00006h ; c2 06 00 ; 0xc2c83 + ; disGetNextSymbol 0xc2c86 LB 0x1633 -> off=0x0 cb=0000000000000016 uValue=00000000000c2c86 'biosfn_load_gfx_8_8_chars' +biosfn_load_gfx_8_8_chars: ; 0xc2c86 LB 0x16 + push bp ; 55 ; 0xc2c86 vgabios.c:2021 + mov bp, sp ; 89 e5 ; 0xc2c87 + push bx ; 53 ; 0xc2c89 + push cx ; 51 ; 0xc2c8a + mov bx, dx ; 89 d3 ; 0xc2c8b vgabios.c:2023 + mov cx, ax ; 89 c1 ; 0xc2c8d + mov ax, strict word 0001fh ; b8 1f 00 ; 0xc2c8f + call 009f0h ; e8 5b dd ; 0xc2c92 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2c95 vgabios.c:2024 + pop cx ; 59 ; 0xc2c98 + pop bx ; 5b ; 0xc2c99 + pop bp ; 5d ; 0xc2c9a + retn ; c3 ; 0xc2c9b + ; disGetNextSymbol 0xc2c9c LB 0x161d -> off=0x0 cb=0000000000000049 uValue=00000000000c2c9c 'set_gfx_font' +set_gfx_font: ; 0xc2c9c LB 0x49 + push bp ; 55 ; 0xc2c9c vgabios.c:2026 + mov bp, sp ; 89 e5 ; 0xc2c9d + push si ; 56 ; 0xc2c9f + push di ; 57 ; 0xc2ca0 + mov si, dx ; 89 d6 ; 0xc2ca1 + mov di, bx ; 89 df ; 0xc2ca3 + mov dl, cl ; 88 ca ; 0xc2ca5 + mov bx, ax ; 89 c3 ; 0xc2ca7 vgabios.c:2030 + mov cx, si ; 89 f1 ; 0xc2ca9 + mov ax, strict word 00043h ; b8 43 00 ; 0xc2cab + call 009f0h ; e8 3f dd ; 0xc2cae + test dl, dl ; 84 d2 ; 0xc2cb1 vgabios.c:2031 + je short 02cc6h ; 74 11 ; 0xc2cb3 + cmp dl, 003h ; 80 fa 03 ; 0xc2cb5 vgabios.c:2032 + jbe short 02cbch ; 76 02 ; 0xc2cb8 + mov DL, strict byte 002h ; b2 02 ; 0xc2cba vgabios.c:2033 + movzx bx, dl ; 0f b6 da ; 0xc2cbc vgabios.c:2034 + mov al, byte [bx+07dfeh] ; 8a 87 fe 7d ; 0xc2cbf + mov byte [bp+004h], al ; 88 46 04 ; 0xc2cc3 + mov bx, 00085h ; bb 85 00 ; 0xc2cc6 vgabios.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2cc9 + mov es, ax ; 8e c0 ; 0xc2ccc + mov word [es:bx], di ; 26 89 3f ; 0xc2cce + movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xc2cd1 vgabios.c:2039 + dec ax ; 48 ; 0xc2cd5 + mov bx, 00084h ; bb 84 00 ; 0xc2cd6 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc2cd9 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2cdc vgabios.c:2040 + pop di ; 5f ; 0xc2cdf + pop si ; 5e ; 0xc2ce0 + pop bp ; 5d ; 0xc2ce1 + retn 00002h ; c2 02 00 ; 0xc2ce2 + ; disGetNextSymbol 0xc2ce5 LB 0x15d4 -> off=0x0 cb=000000000000001c uValue=00000000000c2ce5 'biosfn_load_gfx_user_chars' +biosfn_load_gfx_user_chars: ; 0xc2ce5 LB 0x1c + push bp ; 55 ; 0xc2ce5 vgabios.c:2042 + mov bp, sp ; 89 e5 ; 0xc2ce6 + push si ; 56 ; 0xc2ce8 + mov si, ax ; 89 c6 ; 0xc2ce9 + mov ax, dx ; 89 d0 ; 0xc2ceb + movzx dx, byte [bp+004h] ; 0f b6 56 04 ; 0xc2ced vgabios.c:2045 + push dx ; 52 ; 0xc2cf1 + xor ch, ch ; 30 ed ; 0xc2cf2 + mov dx, si ; 89 f2 ; 0xc2cf4 + call 02c9ch ; e8 a3 ff ; 0xc2cf6 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2cf9 vgabios.c:2046 + pop si ; 5e ; 0xc2cfc + pop bp ; 5d ; 0xc2cfd + retn 00002h ; c2 02 00 ; 0xc2cfe + ; disGetNextSymbol 0xc2d01 LB 0x15b8 -> off=0x0 cb=000000000000001e uValue=00000000000c2d01 'biosfn_load_gfx_8_14_chars' +biosfn_load_gfx_8_14_chars: ; 0xc2d01 LB 0x1e + push bp ; 55 ; 0xc2d01 vgabios.c:2051 + mov bp, sp ; 89 e5 ; 0xc2d02 + push bx ; 53 ; 0xc2d04 + push cx ; 51 ; 0xc2d05 + movzx cx, dl ; 0f b6 ca ; 0xc2d06 vgabios.c:2053 + push cx ; 51 ; 0xc2d09 + movzx cx, al ; 0f b6 c8 ; 0xc2d0a + mov bx, strict word 0000eh ; bb 0e 00 ; 0xc2d0d + mov ax, 05d6dh ; b8 6d 5d ; 0xc2d10 + mov dx, ds ; 8c da ; 0xc2d13 + call 02c9ch ; e8 84 ff ; 0xc2d15 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2d18 vgabios.c:2054 + pop cx ; 59 ; 0xc2d1b + pop bx ; 5b ; 0xc2d1c + pop bp ; 5d ; 0xc2d1d + retn ; c3 ; 0xc2d1e + ; disGetNextSymbol 0xc2d1f LB 0x159a -> off=0x0 cb=000000000000001e uValue=00000000000c2d1f 'biosfn_load_gfx_8_8_dd_chars' +biosfn_load_gfx_8_8_dd_chars: ; 0xc2d1f LB 0x1e + push bp ; 55 ; 0xc2d1f vgabios.c:2055 + mov bp, sp ; 89 e5 ; 0xc2d20 + push bx ; 53 ; 0xc2d22 + push cx ; 51 ; 0xc2d23 + movzx cx, dl ; 0f b6 ca ; 0xc2d24 vgabios.c:2057 + push cx ; 51 ; 0xc2d27 + movzx cx, al ; 0f b6 c8 ; 0xc2d28 + mov bx, strict word 00008h ; bb 08 00 ; 0xc2d2b + mov ax, 0556dh ; b8 6d 55 ; 0xc2d2e + mov dx, ds ; 8c da ; 0xc2d31 + call 02c9ch ; e8 66 ff ; 0xc2d33 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2d36 vgabios.c:2058 + pop cx ; 59 ; 0xc2d39 + pop bx ; 5b ; 0xc2d3a + pop bp ; 5d ; 0xc2d3b + retn ; c3 ; 0xc2d3c + ; disGetNextSymbol 0xc2d3d LB 0x157c -> off=0x0 cb=000000000000001e uValue=00000000000c2d3d 'biosfn_load_gfx_8_16_chars' +biosfn_load_gfx_8_16_chars: ; 0xc2d3d LB 0x1e + push bp ; 55 ; 0xc2d3d vgabios.c:2059 + mov bp, sp ; 89 e5 ; 0xc2d3e + push bx ; 53 ; 0xc2d40 + push cx ; 51 ; 0xc2d41 + movzx cx, dl ; 0f b6 ca ; 0xc2d42 vgabios.c:2061 + push cx ; 51 ; 0xc2d45 + movzx cx, al ; 0f b6 c8 ; 0xc2d46 + mov bx, strict word 00010h ; bb 10 00 ; 0xc2d49 + mov ax, 06b6dh ; b8 6d 6b ; 0xc2d4c + mov dx, ds ; 8c da ; 0xc2d4f + call 02c9ch ; e8 48 ff ; 0xc2d51 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2d54 vgabios.c:2062 + pop cx ; 59 ; 0xc2d57 + pop bx ; 5b ; 0xc2d58 + pop bp ; 5d ; 0xc2d59 + retn ; c3 ; 0xc2d5a + ; disGetNextSymbol 0xc2d5b LB 0x155e -> off=0x0 cb=0000000000000005 uValue=00000000000c2d5b 'biosfn_alternate_prtsc' +biosfn_alternate_prtsc: ; 0xc2d5b LB 0x5 + push bp ; 55 ; 0xc2d5b vgabios.c:2064 + mov bp, sp ; 89 e5 ; 0xc2d5c + pop bp ; 5d ; 0xc2d5e vgabios.c:2069 + retn ; c3 ; 0xc2d5f + ; disGetNextSymbol 0xc2d60 LB 0x1559 -> off=0x0 cb=0000000000000032 uValue=00000000000c2d60 'biosfn_set_txt_lines' +biosfn_set_txt_lines: ; 0xc2d60 LB 0x32 + push bx ; 53 ; 0xc2d60 vgabios.c:2071 + push si ; 56 ; 0xc2d61 + push bp ; 55 ; 0xc2d62 + mov bp, sp ; 89 e5 ; 0xc2d63 + mov bl, al ; 88 c3 ; 0xc2d65 + mov si, 00089h ; be 89 00 ; 0xc2d67 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2d6a + mov es, ax ; 8e c0 ; 0xc2d6d + mov al, byte [es:si] ; 26 8a 04 ; 0xc2d6f + and AL, strict byte 06fh ; 24 6f ; 0xc2d72 vgabios.c:2077 + cmp bl, 002h ; 80 fb 02 ; 0xc2d74 vgabios.c:2079 + je short 02d81h ; 74 08 ; 0xc2d77 + test bl, bl ; 84 db ; 0xc2d79 + jne short 02d83h ; 75 06 ; 0xc2d7b + or AL, strict byte 080h ; 0c 80 ; 0xc2d7d vgabios.c:2082 + jmp short 02d83h ; eb 02 ; 0xc2d7f vgabios.c:2083 + or AL, strict byte 010h ; 0c 10 ; 0xc2d81 vgabios.c:2085 + mov bx, 00089h ; bb 89 00 ; 0xc2d83 vgabios.c:52 + mov si, strict word 00040h ; be 40 00 ; 0xc2d86 + mov es, si ; 8e c6 ; 0xc2d89 + mov byte [es:bx], al ; 26 88 07 ; 0xc2d8b + pop bp ; 5d ; 0xc2d8e vgabios.c:2089 + pop si ; 5e ; 0xc2d8f + pop bx ; 5b ; 0xc2d90 + retn ; c3 ; 0xc2d91 + ; disGetNextSymbol 0xc2d92 LB 0x1527 -> off=0x0 cb=0000000000000005 uValue=00000000000c2d92 'biosfn_switch_video_interface' +biosfn_switch_video_interface: ; 0xc2d92 LB 0x5 + push bp ; 55 ; 0xc2d92 vgabios.c:2092 + mov bp, sp ; 89 e5 ; 0xc2d93 + pop bp ; 5d ; 0xc2d95 vgabios.c:2097 + retn ; c3 ; 0xc2d96 + ; disGetNextSymbol 0xc2d97 LB 0x1522 -> off=0x0 cb=0000000000000005 uValue=00000000000c2d97 'biosfn_enable_video_refresh_control' +biosfn_enable_video_refresh_control: ; 0xc2d97 LB 0x5 + push bp ; 55 ; 0xc2d97 vgabios.c:2098 + mov bp, sp ; 89 e5 ; 0xc2d98 + pop bp ; 5d ; 0xc2d9a vgabios.c:2103 + retn ; c3 ; 0xc2d9b + ; disGetNextSymbol 0xc2d9c LB 0x151d -> off=0x0 cb=0000000000000096 uValue=00000000000c2d9c 'biosfn_write_string' +biosfn_write_string: ; 0xc2d9c LB 0x96 + push bp ; 55 ; 0xc2d9c vgabios.c:2106 + mov bp, sp ; 89 e5 ; 0xc2d9d + push si ; 56 ; 0xc2d9f + push di ; 57 ; 0xc2da0 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc2da1 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc2da4 + mov byte [bp-006h], dl ; 88 56 fa ; 0xc2da7 + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc2daa + mov si, cx ; 89 ce ; 0xc2dad + mov di, word [bp+00ah] ; 8b 7e 0a ; 0xc2daf + movzx ax, dl ; 0f b6 c2 ; 0xc2db2 vgabios.c:2113 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc2db5 + lea dx, [bp-00ch] ; 8d 56 f4 ; 0xc2db8 + call 00a93h ; e8 d5 dc ; 0xc2dbb + cmp byte [bp+004h], 0ffh ; 80 7e 04 ff ; 0xc2dbe vgabios.c:2116 + jne short 02dd5h ; 75 11 ; 0xc2dc2 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2dc4 vgabios.c:2117 + mov byte [bp+006h], al ; 88 46 06 ; 0xc2dc7 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2dca vgabios.c:2118 + xor al, al ; 30 c0 ; 0xc2dcd + shr ax, 008h ; c1 e8 08 ; 0xc2dcf + mov byte [bp+004h], al ; 88 46 04 ; 0xc2dd2 + movzx dx, byte [bp+004h] ; 0f b6 56 04 ; 0xc2dd5 vgabios.c:2121 + sal dx, 008h ; c1 e2 08 ; 0xc2dd9 + movzx ax, byte [bp+006h] ; 0f b6 46 06 ; 0xc2ddc + add dx, ax ; 01 c2 ; 0xc2de0 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc2de2 vgabios.c:2122 + call 01242h ; e8 59 e4 ; 0xc2de6 + dec si ; 4e ; 0xc2de9 vgabios.c:2124 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc2dea + je short 02e19h ; 74 2a ; 0xc2ded + mov bx, di ; 89 fb ; 0xc2def vgabios.c:2126 + inc di ; 47 ; 0xc2df1 + mov es, [bp+008h] ; 8e 46 08 ; 0xc2df2 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2df5 + test byte [bp-008h], 002h ; f6 46 f8 02 ; 0xc2df8 vgabios.c:2127 + je short 02e07h ; 74 09 ; 0xc2dfc + mov bx, di ; 89 fb ; 0xc2dfe vgabios.c:2128 + inc di ; 47 ; 0xc2e00 + mov ah, byte [es:bx] ; 26 8a 27 ; 0xc2e01 vgabios.c:47 + mov byte [bp-00ah], ah ; 88 66 f6 ; 0xc2e04 vgabios.c:48 + movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xc2e07 vgabios.c:2130 + movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xc2e0b + xor ah, ah ; 30 e4 ; 0xc2e0f + mov cx, strict word 00003h ; b9 03 00 ; 0xc2e11 + call 02812h ; e8 fb f9 ; 0xc2e14 + jmp short 02de9h ; eb d0 ; 0xc2e17 vgabios.c:2131 + test byte [bp-008h], 001h ; f6 46 f8 01 ; 0xc2e19 vgabios.c:2134 + jne short 02e29h ; 75 0a ; 0xc2e1d + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc2e1f vgabios.c:2135 + movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xc2e22 + call 01242h ; e8 19 e4 ; 0xc2e26 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2e29 vgabios.c:2136 + pop di ; 5f ; 0xc2e2c + pop si ; 5e ; 0xc2e2d + pop bp ; 5d ; 0xc2e2e + retn 00008h ; c2 08 00 ; 0xc2e2f + ; disGetNextSymbol 0xc2e32 LB 0x1487 -> off=0x0 cb=00000000000001f2 uValue=00000000000c2e32 'biosfn_read_state_info' +biosfn_read_state_info: ; 0xc2e32 LB 0x1f2 + push bp ; 55 ; 0xc2e32 vgabios.c:2139 + mov bp, sp ; 89 e5 ; 0xc2e33 + push cx ; 51 ; 0xc2e35 + push si ; 56 ; 0xc2e36 + push di ; 57 ; 0xc2e37 + push ax ; 50 ; 0xc2e38 + push ax ; 50 ; 0xc2e39 + push dx ; 52 ; 0xc2e3a + mov si, strict word 00049h ; be 49 00 ; 0xc2e3b vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2e3e + mov es, ax ; 8e c0 ; 0xc2e41 + mov al, byte [es:si] ; 26 8a 04 ; 0xc2e43 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc2e46 vgabios.c:48 + mov si, strict word 0004ch ; be 4c 00 ; 0xc2e49 vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc2e4c + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc2e4f vgabios.c:58 + mov ax, ds ; 8c d8 ; 0xc2e52 vgabios.c:2150 + mov es, dx ; 8e c2 ; 0xc2e54 vgabios.c:72 + mov word [es:bx], 05503h ; 26 c7 07 03 55 ; 0xc2e56 + mov [es:bx+002h], ds ; 26 8c 5f 02 ; 0xc2e5b + lea di, [bx+004h] ; 8d 7f 04 ; 0xc2e5f vgabios.c:2155 + mov cx, strict word 0001eh ; b9 1e 00 ; 0xc2e62 + mov si, strict word 00049h ; be 49 00 ; 0xc2e65 + mov dx, strict word 00040h ; ba 40 00 ; 0xc2e68 + jcxz 02e73h ; e3 06 ; 0xc2e6b + push DS ; 1e ; 0xc2e6d + mov ds, dx ; 8e da ; 0xc2e6e + rep movsb ; f3 a4 ; 0xc2e70 + pop DS ; 1f ; 0xc2e72 + mov si, 00084h ; be 84 00 ; 0xc2e73 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2e76 + mov es, ax ; 8e c0 ; 0xc2e79 + mov al, byte [es:si] ; 26 8a 04 ; 0xc2e7b + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc2e7e vgabios.c:48 + lea si, [bx+022h] ; 8d 77 22 ; 0xc2e80 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2e83 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc2e86 + lea di, [bx+023h] ; 8d 7f 23 ; 0xc2e89 vgabios.c:2157 + mov cx, strict word 00002h ; b9 02 00 ; 0xc2e8c + mov si, 00085h ; be 85 00 ; 0xc2e8f + mov dx, strict word 00040h ; ba 40 00 ; 0xc2e92 + jcxz 02e9dh ; e3 06 ; 0xc2e95 + push DS ; 1e ; 0xc2e97 + mov ds, dx ; 8e da ; 0xc2e98 + rep movsb ; f3 a4 ; 0xc2e9a + pop DS ; 1f ; 0xc2e9c + mov si, 0008ah ; be 8a 00 ; 0xc2e9d vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2ea0 + mov es, ax ; 8e c0 ; 0xc2ea3 + mov al, byte [es:si] ; 26 8a 04 ; 0xc2ea5 + lea si, [bx+025h] ; 8d 77 25 ; 0xc2ea8 vgabios.c:48 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2eab vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc2eae + lea si, [bx+026h] ; 8d 77 26 ; 0xc2eb1 vgabios.c:2160 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc2eb4 vgabios.c:52 + lea si, [bx+027h] ; 8d 77 27 ; 0xc2eb8 vgabios.c:2161 + mov word [es:si], strict word 00010h ; 26 c7 04 10 00 ; 0xc2ebb vgabios.c:62 + lea si, [bx+029h] ; 8d 77 29 ; 0xc2ec0 vgabios.c:2162 + mov byte [es:si], 008h ; 26 c6 04 08 ; 0xc2ec3 vgabios.c:52 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc2ec7 vgabios.c:2163 + mov byte [es:si], 002h ; 26 c6 04 02 ; 0xc2eca vgabios.c:52 + lea si, [bx+02bh] ; 8d 77 2b ; 0xc2ece vgabios.c:2164 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc2ed1 vgabios.c:52 + lea si, [bx+02ch] ; 8d 77 2c ; 0xc2ed5 vgabios.c:2165 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc2ed8 vgabios.c:52 + lea si, [bx+02dh] ; 8d 77 2d ; 0xc2edc vgabios.c:2166 + mov byte [es:si], 021h ; 26 c6 04 21 ; 0xc2edf vgabios.c:52 + lea si, [bx+031h] ; 8d 77 31 ; 0xc2ee3 vgabios.c:2167 + mov byte [es:si], 003h ; 26 c6 04 03 ; 0xc2ee6 vgabios.c:52 + lea si, [bx+032h] ; 8d 77 32 ; 0xc2eea vgabios.c:2168 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc2eed vgabios.c:52 + mov si, 00089h ; be 89 00 ; 0xc2ef1 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2ef4 + mov es, ax ; 8e c0 ; 0xc2ef7 + mov al, byte [es:si] ; 26 8a 04 ; 0xc2ef9 + mov ah, al ; 88 c4 ; 0xc2efc vgabios.c:2173 + and ah, 080h ; 80 e4 80 ; 0xc2efe + movzx si, ah ; 0f b6 f4 ; 0xc2f01 + sar si, 006h ; c1 fe 06 ; 0xc2f04 + and AL, strict byte 010h ; 24 10 ; 0xc2f07 + xor ah, ah ; 30 e4 ; 0xc2f09 + sar ax, 004h ; c1 f8 04 ; 0xc2f0b + or ax, si ; 09 f0 ; 0xc2f0e + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc2f10 vgabios.c:2174 + je short 02f26h ; 74 11 ; 0xc2f13 + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc2f15 + je short 02f22h ; 74 08 ; 0xc2f18 + test ax, ax ; 85 c0 ; 0xc2f1a + jne short 02f26h ; 75 08 ; 0xc2f1c + mov AL, strict byte 001h ; b0 01 ; 0xc2f1e vgabios.c:2175 + jmp short 02f28h ; eb 06 ; 0xc2f20 + mov AL, strict byte 002h ; b0 02 ; 0xc2f22 vgabios.c:2176 + jmp short 02f28h ; eb 02 ; 0xc2f24 + xor al, al ; 30 c0 ; 0xc2f26 vgabios.c:2178 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc2f28 vgabios.c:2180 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2f2b vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc2f2e + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2f31 vgabios.c:2183 + cmp AL, strict byte 00eh ; 3c 0e ; 0xc2f34 + jc short 02f57h ; 72 1f ; 0xc2f36 + cmp AL, strict byte 012h ; 3c 12 ; 0xc2f38 + jnbe short 02f57h ; 77 1b ; 0xc2f3a + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc2f3c vgabios.c:2184 + test ax, ax ; 85 c0 ; 0xc2f3f + je short 02f99h ; 74 56 ; 0xc2f41 + mov si, ax ; 89 c6 ; 0xc2f43 vgabios.c:2185 + shr si, 002h ; c1 ee 02 ; 0xc2f45 + mov ax, 04000h ; b8 00 40 ; 0xc2f48 + xor dx, dx ; 31 d2 ; 0xc2f4b + div si ; f7 f6 ; 0xc2f4d + lea si, [bx+029h] ; 8d 77 29 ; 0xc2f4f + mov byte [es:si], al ; 26 88 04 ; 0xc2f52 vgabios.c:52 + jmp short 02f99h ; eb 42 ; 0xc2f55 vgabios.c:2186 + lea si, [bx+029h] ; 8d 77 29 ; 0xc2f57 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2f5a + cmp AL, strict byte 013h ; 3c 13 ; 0xc2f5d + jne short 02f72h ; 75 11 ; 0xc2f5f + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2f61 vgabios.c:52 + mov byte [es:si], 001h ; 26 c6 04 01 ; 0xc2f64 + lea si, [bx+027h] ; 8d 77 27 ; 0xc2f68 vgabios.c:2188 + mov word [es:si], 00100h ; 26 c7 04 00 01 ; 0xc2f6b vgabios.c:62 + jmp short 02f99h ; eb 27 ; 0xc2f70 vgabios.c:2189 + cmp AL, strict byte 004h ; 3c 04 ; 0xc2f72 + jc short 02f99h ; 72 23 ; 0xc2f74 + cmp AL, strict byte 006h ; 3c 06 ; 0xc2f76 + jnbe short 02f99h ; 77 1f ; 0xc2f78 + cmp word [bp-00ah], strict byte 00000h ; 83 7e f6 00 ; 0xc2f7a vgabios.c:2191 + je short 02f8eh ; 74 0e ; 0xc2f7e + mov ax, 04000h ; b8 00 40 ; 0xc2f80 vgabios.c:2192 + xor dx, dx ; 31 d2 ; 0xc2f83 + div word [bp-00ah] ; f7 76 f6 ; 0xc2f85 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2f88 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc2f8b + lea si, [bx+027h] ; 8d 77 27 ; 0xc2f8e vgabios.c:2193 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2f91 vgabios.c:62 + mov word [es:si], strict word 00004h ; 26 c7 04 04 00 ; 0xc2f94 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2f99 vgabios.c:2195 + cmp AL, strict byte 006h ; 3c 06 ; 0xc2f9c + je short 02fa4h ; 74 04 ; 0xc2f9e + cmp AL, strict byte 011h ; 3c 11 ; 0xc2fa0 + jne short 02fafh ; 75 0b ; 0xc2fa2 + lea si, [bx+027h] ; 8d 77 27 ; 0xc2fa4 vgabios.c:2196 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2fa7 vgabios.c:62 + mov word [es:si], strict word 00002h ; 26 c7 04 02 00 ; 0xc2faa + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2faf vgabios.c:2198 + cmp AL, strict byte 004h ; 3c 04 ; 0xc2fb2 + jc short 0300dh ; 72 57 ; 0xc2fb4 + cmp AL, strict byte 007h ; 3c 07 ; 0xc2fb6 + je short 0300dh ; 74 53 ; 0xc2fb8 + lea si, [bx+02dh] ; 8d 77 2d ; 0xc2fba vgabios.c:2199 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc2fbd vgabios.c:52 + mov byte [es:si], 001h ; 26 c6 04 01 ; 0xc2fc0 + mov si, 00084h ; be 84 00 ; 0xc2fc4 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2fc7 + mov es, ax ; 8e c0 ; 0xc2fca + mov al, byte [es:si] ; 26 8a 04 ; 0xc2fcc + movzx di, al ; 0f b6 f8 ; 0xc2fcf vgabios.c:48 + inc di ; 47 ; 0xc2fd2 + mov si, 00085h ; be 85 00 ; 0xc2fd3 vgabios.c:47 + mov al, byte [es:si] ; 26 8a 04 ; 0xc2fd6 + xor ah, ah ; 30 e4 ; 0xc2fd9 vgabios.c:48 + imul ax, di ; 0f af c7 ; 0xc2fdb + cmp ax, 0015eh ; 3d 5e 01 ; 0xc2fde vgabios.c:2201 + jc short 02ff1h ; 72 0e ; 0xc2fe1 + jbe short 02ffah ; 76 15 ; 0xc2fe3 + cmp ax, 001e0h ; 3d e0 01 ; 0xc2fe5 + je short 03002h ; 74 18 ; 0xc2fe8 + cmp ax, 00190h ; 3d 90 01 ; 0xc2fea + je short 02ffeh ; 74 0f ; 0xc2fed + jmp short 03002h ; eb 11 ; 0xc2fef + cmp ax, 000c8h ; 3d c8 00 ; 0xc2ff1 + jne short 03002h ; 75 0c ; 0xc2ff4 + xor al, al ; 30 c0 ; 0xc2ff6 vgabios.c:2202 + jmp short 03004h ; eb 0a ; 0xc2ff8 + mov AL, strict byte 001h ; b0 01 ; 0xc2ffa vgabios.c:2203 + jmp short 03004h ; eb 06 ; 0xc2ffc + mov AL, strict byte 002h ; b0 02 ; 0xc2ffe vgabios.c:2204 + jmp short 03004h ; eb 02 ; 0xc3000 + mov AL, strict byte 003h ; b0 03 ; 0xc3002 vgabios.c:2206 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc3004 vgabios.c:2208 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc3007 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc300a + lea di, [bx+033h] ; 8d 7f 33 ; 0xc300d vgabios.c:2211 + mov cx, strict word 0000dh ; b9 0d 00 ; 0xc3010 + xor ax, ax ; 31 c0 ; 0xc3013 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc3015 + jcxz 0301ch ; e3 02 ; 0xc3018 + rep stosb ; f3 aa ; 0xc301a + lea sp, [bp-006h] ; 8d 66 fa ; 0xc301c vgabios.c:2212 + pop di ; 5f ; 0xc301f + pop si ; 5e ; 0xc3020 + pop cx ; 59 ; 0xc3021 + pop bp ; 5d ; 0xc3022 + retn ; c3 ; 0xc3023 + ; disGetNextSymbol 0xc3024 LB 0x1295 -> off=0x0 cb=0000000000000023 uValue=00000000000c3024 'biosfn_read_video_state_size2' +biosfn_read_video_state_size2: ; 0xc3024 LB 0x23 + push dx ; 52 ; 0xc3024 vgabios.c:2215 + push bp ; 55 ; 0xc3025 + mov bp, sp ; 89 e5 ; 0xc3026 + mov dx, ax ; 89 c2 ; 0xc3028 + xor ax, ax ; 31 c0 ; 0xc302a vgabios.c:2219 + test dl, 001h ; f6 c2 01 ; 0xc302c vgabios.c:2220 + je short 03034h ; 74 03 ; 0xc302f + mov ax, strict word 00046h ; b8 46 00 ; 0xc3031 vgabios.c:2221 + test dl, 002h ; f6 c2 02 ; 0xc3034 vgabios.c:2223 + je short 0303ch ; 74 03 ; 0xc3037 + add ax, strict word 0002ah ; 05 2a 00 ; 0xc3039 vgabios.c:2224 + test dl, 004h ; f6 c2 04 ; 0xc303c vgabios.c:2226 + je short 03044h ; 74 03 ; 0xc303f + add ax, 00304h ; 05 04 03 ; 0xc3041 vgabios.c:2227 + pop bp ; 5d ; 0xc3044 vgabios.c:2230 + pop dx ; 5a ; 0xc3045 + retn ; c3 ; 0xc3046 + ; disGetNextSymbol 0xc3047 LB 0x1272 -> off=0x0 cb=0000000000000018 uValue=00000000000c3047 'vga_get_video_state_size' +vga_get_video_state_size: ; 0xc3047 LB 0x18 + push bp ; 55 ; 0xc3047 vgabios.c:2232 + mov bp, sp ; 89 e5 ; 0xc3048 + push bx ; 53 ; 0xc304a + mov bx, dx ; 89 d3 ; 0xc304b + call 03024h ; e8 d4 ff ; 0xc304d vgabios.c:2235 + add ax, strict word 0003fh ; 05 3f 00 ; 0xc3050 + shr ax, 006h ; c1 e8 06 ; 0xc3053 + mov word [ss:bx], ax ; 36 89 07 ; 0xc3056 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3059 vgabios.c:2236 + pop bx ; 5b ; 0xc305c + pop bp ; 5d ; 0xc305d + retn ; c3 ; 0xc305e + ; disGetNextSymbol 0xc305f LB 0x125a -> off=0x0 cb=00000000000002d6 uValue=00000000000c305f 'biosfn_save_video_state' +biosfn_save_video_state: ; 0xc305f LB 0x2d6 + push bp ; 55 ; 0xc305f vgabios.c:2238 + mov bp, sp ; 89 e5 ; 0xc3060 + push cx ; 51 ; 0xc3062 + push si ; 56 ; 0xc3063 + push di ; 57 ; 0xc3064 + push ax ; 50 ; 0xc3065 + push ax ; 50 ; 0xc3066 + push ax ; 50 ; 0xc3067 + mov cx, dx ; 89 d1 ; 0xc3068 + mov si, strict word 00063h ; be 63 00 ; 0xc306a vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc306d + mov es, ax ; 8e c0 ; 0xc3070 + mov di, word [es:si] ; 26 8b 3c ; 0xc3072 + mov si, di ; 89 fe ; 0xc3075 vgabios.c:58 + test byte [bp-00ch], 001h ; f6 46 f4 01 ; 0xc3077 vgabios.c:2243 + je near 03192h ; 0f 84 13 01 ; 0xc307b + mov dx, 003c4h ; ba c4 03 ; 0xc307f vgabios.c:2244 + in AL, DX ; ec ; 0xc3082 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3083 + mov es, cx ; 8e c1 ; 0xc3085 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3087 + inc bx ; 43 ; 0xc308a vgabios.c:2244 + mov dx, di ; 89 fa ; 0xc308b + in AL, DX ; ec ; 0xc308d + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc308e + mov byte [es:bx], al ; 26 88 07 ; 0xc3090 vgabios.c:52 + inc bx ; 43 ; 0xc3093 vgabios.c:2245 + mov dx, 003ceh ; ba ce 03 ; 0xc3094 + in AL, DX ; ec ; 0xc3097 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3098 + mov byte [es:bx], al ; 26 88 07 ; 0xc309a vgabios.c:52 + inc bx ; 43 ; 0xc309d vgabios.c:2246 + mov dx, 003dah ; ba da 03 ; 0xc309e + in AL, DX ; ec ; 0xc30a1 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc30a2 + mov dx, 003c0h ; ba c0 03 ; 0xc30a4 vgabios.c:2248 + in AL, DX ; ec ; 0xc30a7 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc30a8 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc30aa + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc30ad vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc30b0 + inc bx ; 43 ; 0xc30b3 vgabios.c:2249 + mov dx, 003cah ; ba ca 03 ; 0xc30b4 + in AL, DX ; ec ; 0xc30b7 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc30b8 + mov byte [es:bx], al ; 26 88 07 ; 0xc30ba vgabios.c:52 + mov ax, strict word 00001h ; b8 01 00 ; 0xc30bd vgabios.c:2252 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc30c0 + add bx, ax ; 01 c3 ; 0xc30c3 vgabios.c:2250 + jmp short 030cdh ; eb 06 ; 0xc30c5 + cmp word [bp-008h], strict byte 00004h ; 83 7e f8 04 ; 0xc30c7 + jnbe short 030e5h ; 77 18 ; 0xc30cb + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc30cd vgabios.c:2253 + mov dx, 003c4h ; ba c4 03 ; 0xc30d0 + out DX, AL ; ee ; 0xc30d3 + mov dx, 003c5h ; ba c5 03 ; 0xc30d4 vgabios.c:2254 + in AL, DX ; ec ; 0xc30d7 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc30d8 + mov es, cx ; 8e c1 ; 0xc30da vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc30dc + inc bx ; 43 ; 0xc30df vgabios.c:2254 + inc word [bp-008h] ; ff 46 f8 ; 0xc30e0 vgabios.c:2255 + jmp short 030c7h ; eb e2 ; 0xc30e3 + xor al, al ; 30 c0 ; 0xc30e5 vgabios.c:2256 + mov dx, 003c4h ; ba c4 03 ; 0xc30e7 + out DX, AL ; ee ; 0xc30ea + mov dx, 003c5h ; ba c5 03 ; 0xc30eb vgabios.c:2257 + in AL, DX ; ec ; 0xc30ee + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc30ef + mov es, cx ; 8e c1 ; 0xc30f1 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc30f3 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc30f6 vgabios.c:2259 + inc bx ; 43 ; 0xc30fb vgabios.c:2257 + jmp short 03104h ; eb 06 ; 0xc30fc + cmp word [bp-008h], strict byte 00018h ; 83 7e f8 18 ; 0xc30fe + jnbe short 0311bh ; 77 17 ; 0xc3102 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3104 vgabios.c:2260 + mov dx, si ; 89 f2 ; 0xc3107 + out DX, AL ; ee ; 0xc3109 + lea dx, [si+001h] ; 8d 54 01 ; 0xc310a vgabios.c:2261 + in AL, DX ; ec ; 0xc310d + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc310e + mov es, cx ; 8e c1 ; 0xc3110 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3112 + inc bx ; 43 ; 0xc3115 vgabios.c:2261 + inc word [bp-008h] ; ff 46 f8 ; 0xc3116 vgabios.c:2262 + jmp short 030feh ; eb e3 ; 0xc3119 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc311b vgabios.c:2264 + jmp short 03128h ; eb 06 ; 0xc3120 + cmp word [bp-008h], strict byte 00013h ; 83 7e f8 13 ; 0xc3122 + jnbe short 0314ch ; 77 24 ; 0xc3126 + mov dx, 003dah ; ba da 03 ; 0xc3128 vgabios.c:2265 + in AL, DX ; ec ; 0xc312b + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc312c + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc312e vgabios.c:2266 + and ax, strict word 00020h ; 25 20 00 ; 0xc3131 + or ax, word [bp-008h] ; 0b 46 f8 ; 0xc3134 + mov dx, 003c0h ; ba c0 03 ; 0xc3137 + out DX, AL ; ee ; 0xc313a + mov dx, 003c1h ; ba c1 03 ; 0xc313b vgabios.c:2267 + in AL, DX ; ec ; 0xc313e + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc313f + mov es, cx ; 8e c1 ; 0xc3141 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3143 + inc bx ; 43 ; 0xc3146 vgabios.c:2267 + inc word [bp-008h] ; ff 46 f8 ; 0xc3147 vgabios.c:2268 + jmp short 03122h ; eb d6 ; 0xc314a + mov dx, 003dah ; ba da 03 ; 0xc314c vgabios.c:2269 + in AL, DX ; ec ; 0xc314f + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3150 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc3152 vgabios.c:2271 + jmp short 0315fh ; eb 06 ; 0xc3157 + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc3159 + jnbe short 03177h ; 77 18 ; 0xc315d + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc315f vgabios.c:2272 + mov dx, 003ceh ; ba ce 03 ; 0xc3162 + out DX, AL ; ee ; 0xc3165 + mov dx, 003cfh ; ba cf 03 ; 0xc3166 vgabios.c:2273 + in AL, DX ; ec ; 0xc3169 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc316a + mov es, cx ; 8e c1 ; 0xc316c vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc316e + inc bx ; 43 ; 0xc3171 vgabios.c:2273 + inc word [bp-008h] ; ff 46 f8 ; 0xc3172 vgabios.c:2274 + jmp short 03159h ; eb e2 ; 0xc3175 + mov es, cx ; 8e c1 ; 0xc3177 vgabios.c:62 + mov word [es:bx], si ; 26 89 37 ; 0xc3179 + inc bx ; 43 ; 0xc317c vgabios.c:2276 + inc bx ; 43 ; 0xc317d + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc317e vgabios.c:52 + inc bx ; 43 ; 0xc3182 vgabios.c:2279 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc3183 vgabios.c:52 + inc bx ; 43 ; 0xc3187 vgabios.c:2280 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc3188 vgabios.c:52 + inc bx ; 43 ; 0xc318c vgabios.c:2281 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc318d vgabios.c:52 + inc bx ; 43 ; 0xc3191 vgabios.c:2282 + test byte [bp-00ch], 002h ; f6 46 f4 02 ; 0xc3192 vgabios.c:2284 + je near 032d9h ; 0f 84 3f 01 ; 0xc3196 + mov si, strict word 00049h ; be 49 00 ; 0xc319a vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc319d + mov es, ax ; 8e c0 ; 0xc31a0 + mov al, byte [es:si] ; 26 8a 04 ; 0xc31a2 + mov es, cx ; 8e c1 ; 0xc31a5 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc31a7 + inc bx ; 43 ; 0xc31aa vgabios.c:2285 + mov si, strict word 0004ah ; be 4a 00 ; 0xc31ab vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc31ae + mov es, ax ; 8e c0 ; 0xc31b1 + mov ax, word [es:si] ; 26 8b 04 ; 0xc31b3 + mov es, cx ; 8e c1 ; 0xc31b6 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc31b8 + inc bx ; 43 ; 0xc31bb vgabios.c:2286 + inc bx ; 43 ; 0xc31bc + mov si, strict word 0004ch ; be 4c 00 ; 0xc31bd vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc31c0 + mov es, ax ; 8e c0 ; 0xc31c3 + mov ax, word [es:si] ; 26 8b 04 ; 0xc31c5 + mov es, cx ; 8e c1 ; 0xc31c8 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc31ca + inc bx ; 43 ; 0xc31cd vgabios.c:2287 + inc bx ; 43 ; 0xc31ce + mov si, strict word 00063h ; be 63 00 ; 0xc31cf vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc31d2 + mov es, ax ; 8e c0 ; 0xc31d5 + mov ax, word [es:si] ; 26 8b 04 ; 0xc31d7 + mov es, cx ; 8e c1 ; 0xc31da vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc31dc + inc bx ; 43 ; 0xc31df vgabios.c:2288 + inc bx ; 43 ; 0xc31e0 + mov si, 00084h ; be 84 00 ; 0xc31e1 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc31e4 + mov es, ax ; 8e c0 ; 0xc31e7 + mov al, byte [es:si] ; 26 8a 04 ; 0xc31e9 + mov es, cx ; 8e c1 ; 0xc31ec vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc31ee + inc bx ; 43 ; 0xc31f1 vgabios.c:2289 + mov si, 00085h ; be 85 00 ; 0xc31f2 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc31f5 + mov es, ax ; 8e c0 ; 0xc31f8 + mov ax, word [es:si] ; 26 8b 04 ; 0xc31fa + mov es, cx ; 8e c1 ; 0xc31fd vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc31ff + inc bx ; 43 ; 0xc3202 vgabios.c:2290 + inc bx ; 43 ; 0xc3203 + mov si, 00087h ; be 87 00 ; 0xc3204 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3207 + mov es, ax ; 8e c0 ; 0xc320a + mov al, byte [es:si] ; 26 8a 04 ; 0xc320c + mov es, cx ; 8e c1 ; 0xc320f vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3211 + inc bx ; 43 ; 0xc3214 vgabios.c:2291 + mov si, 00088h ; be 88 00 ; 0xc3215 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3218 + mov es, ax ; 8e c0 ; 0xc321b + mov al, byte [es:si] ; 26 8a 04 ; 0xc321d + mov es, cx ; 8e c1 ; 0xc3220 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3222 + inc bx ; 43 ; 0xc3225 vgabios.c:2292 + mov si, 00089h ; be 89 00 ; 0xc3226 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3229 + mov es, ax ; 8e c0 ; 0xc322c + mov al, byte [es:si] ; 26 8a 04 ; 0xc322e + mov es, cx ; 8e c1 ; 0xc3231 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3233 + inc bx ; 43 ; 0xc3236 vgabios.c:2293 + mov si, strict word 00060h ; be 60 00 ; 0xc3237 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc323a + mov es, ax ; 8e c0 ; 0xc323d + mov ax, word [es:si] ; 26 8b 04 ; 0xc323f + mov es, cx ; 8e c1 ; 0xc3242 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3244 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc3247 vgabios.c:2295 + inc bx ; 43 ; 0xc324c vgabios.c:2294 + inc bx ; 43 ; 0xc324d + jmp short 03256h ; eb 06 ; 0xc324e + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc3250 + jnc short 03272h ; 73 1c ; 0xc3254 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc3256 vgabios.c:2296 + add si, si ; 01 f6 ; 0xc3259 + add si, strict byte 00050h ; 83 c6 50 ; 0xc325b + mov ax, strict word 00040h ; b8 40 00 ; 0xc325e vgabios.c:57 + mov es, ax ; 8e c0 ; 0xc3261 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3263 + mov es, cx ; 8e c1 ; 0xc3266 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3268 + inc bx ; 43 ; 0xc326b vgabios.c:2297 + inc bx ; 43 ; 0xc326c + inc word [bp-008h] ; ff 46 f8 ; 0xc326d vgabios.c:2298 + jmp short 03250h ; eb de ; 0xc3270 + mov si, strict word 0004eh ; be 4e 00 ; 0xc3272 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3275 + mov es, ax ; 8e c0 ; 0xc3278 + mov ax, word [es:si] ; 26 8b 04 ; 0xc327a + mov es, cx ; 8e c1 ; 0xc327d vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc327f + inc bx ; 43 ; 0xc3282 vgabios.c:2299 + inc bx ; 43 ; 0xc3283 + mov si, strict word 00062h ; be 62 00 ; 0xc3284 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3287 + mov es, ax ; 8e c0 ; 0xc328a + mov al, byte [es:si] ; 26 8a 04 ; 0xc328c + mov es, cx ; 8e c1 ; 0xc328f vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3291 + inc bx ; 43 ; 0xc3294 vgabios.c:2300 + mov si, strict word 0007ch ; be 7c 00 ; 0xc3295 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc3298 + mov es, ax ; 8e c0 ; 0xc329a + mov ax, word [es:si] ; 26 8b 04 ; 0xc329c + mov es, cx ; 8e c1 ; 0xc329f vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc32a1 + inc bx ; 43 ; 0xc32a4 vgabios.c:2302 + inc bx ; 43 ; 0xc32a5 + mov si, strict word 0007eh ; be 7e 00 ; 0xc32a6 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc32a9 + mov es, ax ; 8e c0 ; 0xc32ab + mov ax, word [es:si] ; 26 8b 04 ; 0xc32ad + mov es, cx ; 8e c1 ; 0xc32b0 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc32b2 + inc bx ; 43 ; 0xc32b5 vgabios.c:2303 + inc bx ; 43 ; 0xc32b6 + mov si, 0010ch ; be 0c 01 ; 0xc32b7 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc32ba + mov es, ax ; 8e c0 ; 0xc32bc + mov ax, word [es:si] ; 26 8b 04 ; 0xc32be + mov es, cx ; 8e c1 ; 0xc32c1 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc32c3 + inc bx ; 43 ; 0xc32c6 vgabios.c:2304 + inc bx ; 43 ; 0xc32c7 + mov si, 0010eh ; be 0e 01 ; 0xc32c8 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc32cb + mov es, ax ; 8e c0 ; 0xc32cd + mov ax, word [es:si] ; 26 8b 04 ; 0xc32cf + mov es, cx ; 8e c1 ; 0xc32d2 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc32d4 + inc bx ; 43 ; 0xc32d7 vgabios.c:2305 + inc bx ; 43 ; 0xc32d8 + test byte [bp-00ch], 004h ; f6 46 f4 04 ; 0xc32d9 vgabios.c:2307 + je short 0332bh ; 74 4c ; 0xc32dd + mov dx, 003c7h ; ba c7 03 ; 0xc32df vgabios.c:2309 + in AL, DX ; ec ; 0xc32e2 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32e3 + mov es, cx ; 8e c1 ; 0xc32e5 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc32e7 + inc bx ; 43 ; 0xc32ea vgabios.c:2309 + mov dx, 003c8h ; ba c8 03 ; 0xc32eb + in AL, DX ; ec ; 0xc32ee + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32ef + mov byte [es:bx], al ; 26 88 07 ; 0xc32f1 vgabios.c:52 + inc bx ; 43 ; 0xc32f4 vgabios.c:2310 + mov dx, 003c6h ; ba c6 03 ; 0xc32f5 + in AL, DX ; ec ; 0xc32f8 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc32f9 + mov byte [es:bx], al ; 26 88 07 ; 0xc32fb vgabios.c:52 + inc bx ; 43 ; 0xc32fe vgabios.c:2311 + xor al, al ; 30 c0 ; 0xc32ff + mov dx, 003c8h ; ba c8 03 ; 0xc3301 + out DX, AL ; ee ; 0xc3304 + xor ah, ah ; 30 e4 ; 0xc3305 vgabios.c:2314 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc3307 + jmp short 03313h ; eb 07 ; 0xc330a + cmp word [bp-008h], 00300h ; 81 7e f8 00 03 ; 0xc330c + jnc short 03324h ; 73 11 ; 0xc3311 + mov dx, 003c9h ; ba c9 03 ; 0xc3313 vgabios.c:2315 + in AL, DX ; ec ; 0xc3316 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3317 + mov es, cx ; 8e c1 ; 0xc3319 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc331b + inc bx ; 43 ; 0xc331e vgabios.c:2315 + inc word [bp-008h] ; ff 46 f8 ; 0xc331f vgabios.c:2316 + jmp short 0330ch ; eb e8 ; 0xc3322 + mov es, cx ; 8e c1 ; 0xc3324 vgabios.c:52 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc3326 + inc bx ; 43 ; 0xc332a vgabios.c:2317 + mov ax, bx ; 89 d8 ; 0xc332b vgabios.c:2320 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc332d + pop di ; 5f ; 0xc3330 + pop si ; 5e ; 0xc3331 + pop cx ; 59 ; 0xc3332 + pop bp ; 5d ; 0xc3333 + retn ; c3 ; 0xc3334 + ; disGetNextSymbol 0xc3335 LB 0xf84 -> off=0x0 cb=00000000000002b8 uValue=00000000000c3335 'biosfn_restore_video_state' +biosfn_restore_video_state: ; 0xc3335 LB 0x2b8 + push bp ; 55 ; 0xc3335 vgabios.c:2322 + mov bp, sp ; 89 e5 ; 0xc3336 + push cx ; 51 ; 0xc3338 + push si ; 56 ; 0xc3339 + push di ; 57 ; 0xc333a + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc333b + push ax ; 50 ; 0xc333e + mov cx, dx ; 89 d1 ; 0xc333f + test byte [bp-010h], 001h ; f6 46 f0 01 ; 0xc3341 vgabios.c:2326 + je near 0347dh ; 0f 84 34 01 ; 0xc3345 + mov dx, 003dah ; ba da 03 ; 0xc3349 vgabios.c:2328 + in AL, DX ; ec ; 0xc334c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc334d + lea si, [bx+040h] ; 8d 77 40 ; 0xc334f vgabios.c:2330 + mov es, cx ; 8e c1 ; 0xc3352 vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3354 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc3357 vgabios.c:58 + mov si, bx ; 89 de ; 0xc335a vgabios.c:2331 + mov word [bp-00eh], strict word 00001h ; c7 46 f2 01 00 ; 0xc335c vgabios.c:2334 + add bx, strict byte 00005h ; 83 c3 05 ; 0xc3361 vgabios.c:2332 + jmp short 0336ch ; eb 06 ; 0xc3364 + cmp word [bp-00eh], strict byte 00004h ; 83 7e f2 04 ; 0xc3366 + jnbe short 03382h ; 77 16 ; 0xc336a + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc336c vgabios.c:2335 + mov dx, 003c4h ; ba c4 03 ; 0xc336f + out DX, AL ; ee ; 0xc3372 + mov es, cx ; 8e c1 ; 0xc3373 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3375 + mov dx, 003c5h ; ba c5 03 ; 0xc3378 vgabios.c:48 + out DX, AL ; ee ; 0xc337b + inc bx ; 43 ; 0xc337c vgabios.c:2336 + inc word [bp-00eh] ; ff 46 f2 ; 0xc337d vgabios.c:2337 + jmp short 03366h ; eb e4 ; 0xc3380 + xor al, al ; 30 c0 ; 0xc3382 vgabios.c:2338 + mov dx, 003c4h ; ba c4 03 ; 0xc3384 + out DX, AL ; ee ; 0xc3387 + mov es, cx ; 8e c1 ; 0xc3388 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc338a + mov dx, 003c5h ; ba c5 03 ; 0xc338d vgabios.c:48 + out DX, AL ; ee ; 0xc3390 + inc bx ; 43 ; 0xc3391 vgabios.c:2339 + mov dx, 003cch ; ba cc 03 ; 0xc3392 + in AL, DX ; ec ; 0xc3395 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3396 + and AL, strict byte 0feh ; 24 fe ; 0xc3398 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc339a + cmp word [bp-00ah], 003d4h ; 81 7e f6 d4 03 ; 0xc339d vgabios.c:2343 + jne short 033a8h ; 75 04 ; 0xc33a2 + or byte [bp-008h], 001h ; 80 4e f8 01 ; 0xc33a4 vgabios.c:2344 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc33a8 vgabios.c:2345 + mov dx, 003c2h ; ba c2 03 ; 0xc33ab + out DX, AL ; ee ; 0xc33ae + mov ax, strict word 00011h ; b8 11 00 ; 0xc33af vgabios.c:2348 + mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xc33b2 + out DX, ax ; ef ; 0xc33b5 + mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xc33b6 vgabios.c:2350 + jmp short 033c3h ; eb 06 ; 0xc33bb + cmp word [bp-00eh], strict byte 00018h ; 83 7e f2 18 ; 0xc33bd + jnbe short 033ddh ; 77 1a ; 0xc33c1 + cmp word [bp-00eh], strict byte 00011h ; 83 7e f2 11 ; 0xc33c3 vgabios.c:2351 + je short 033d7h ; 74 0e ; 0xc33c7 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc33c9 vgabios.c:2352 + mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xc33cc + out DX, AL ; ee ; 0xc33cf + mov es, cx ; 8e c1 ; 0xc33d0 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc33d2 + inc dx ; 42 ; 0xc33d5 vgabios.c:48 + out DX, AL ; ee ; 0xc33d6 + inc bx ; 43 ; 0xc33d7 vgabios.c:2355 + inc word [bp-00eh] ; ff 46 f2 ; 0xc33d8 vgabios.c:2356 + jmp short 033bdh ; eb e0 ; 0xc33db + mov AL, strict byte 011h ; b0 11 ; 0xc33dd vgabios.c:2358 + mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xc33df + out DX, AL ; ee ; 0xc33e2 + lea di, [word bx-00007h] ; 8d bf f9 ff ; 0xc33e3 vgabios.c:2359 + mov es, cx ; 8e c1 ; 0xc33e7 vgabios.c:47 + mov al, byte [es:di] ; 26 8a 05 ; 0xc33e9 + inc dx ; 42 ; 0xc33ec vgabios.c:48 + out DX, AL ; ee ; 0xc33ed + lea di, [si+003h] ; 8d 7c 03 ; 0xc33ee vgabios.c:2362 + mov al, byte [es:di] ; 26 8a 05 ; 0xc33f1 vgabios.c:47 + xor ah, ah ; 30 e4 ; 0xc33f4 vgabios.c:48 + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc33f6 + mov dx, 003dah ; ba da 03 ; 0xc33f9 vgabios.c:2363 + in AL, DX ; ec ; 0xc33fc + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc33fd + mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xc33ff vgabios.c:2364 + jmp short 0340ch ; eb 06 ; 0xc3404 + cmp word [bp-00eh], strict byte 00013h ; 83 7e f2 13 ; 0xc3406 + jnbe short 03425h ; 77 19 ; 0xc340a + mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xc340c vgabios.c:2365 + and ax, strict word 00020h ; 25 20 00 ; 0xc340f + or ax, word [bp-00eh] ; 0b 46 f2 ; 0xc3412 + mov dx, 003c0h ; ba c0 03 ; 0xc3415 + out DX, AL ; ee ; 0xc3418 + mov es, cx ; 8e c1 ; 0xc3419 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc341b + out DX, AL ; ee ; 0xc341e vgabios.c:48 + inc bx ; 43 ; 0xc341f vgabios.c:2366 + inc word [bp-00eh] ; ff 46 f2 ; 0xc3420 vgabios.c:2367 + jmp short 03406h ; eb e1 ; 0xc3423 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc3425 vgabios.c:2368 + mov dx, 003c0h ; ba c0 03 ; 0xc3428 + out DX, AL ; ee ; 0xc342b + mov dx, 003dah ; ba da 03 ; 0xc342c vgabios.c:2369 + in AL, DX ; ec ; 0xc342f + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3430 + mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xc3432 vgabios.c:2371 + jmp short 0343fh ; eb 06 ; 0xc3437 + cmp word [bp-00eh], strict byte 00008h ; 83 7e f2 08 ; 0xc3439 + jnbe short 03455h ; 77 16 ; 0xc343d + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc343f vgabios.c:2372 + mov dx, 003ceh ; ba ce 03 ; 0xc3442 + out DX, AL ; ee ; 0xc3445 + mov es, cx ; 8e c1 ; 0xc3446 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3448 + mov dx, 003cfh ; ba cf 03 ; 0xc344b vgabios.c:48 + out DX, AL ; ee ; 0xc344e + inc bx ; 43 ; 0xc344f vgabios.c:2373 + inc word [bp-00eh] ; ff 46 f2 ; 0xc3450 vgabios.c:2374 + jmp short 03439h ; eb e4 ; 0xc3453 + add bx, strict byte 00006h ; 83 c3 06 ; 0xc3455 vgabios.c:2375 + mov es, cx ; 8e c1 ; 0xc3458 vgabios.c:47 + mov al, byte [es:si] ; 26 8a 04 ; 0xc345a + mov dx, 003c4h ; ba c4 03 ; 0xc345d vgabios.c:48 + out DX, AL ; ee ; 0xc3460 + inc si ; 46 ; 0xc3461 vgabios.c:2378 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3462 vgabios.c:47 + mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xc3465 vgabios.c:48 + out DX, AL ; ee ; 0xc3468 + inc si ; 46 ; 0xc3469 vgabios.c:2379 + mov al, byte [es:si] ; 26 8a 04 ; 0xc346a vgabios.c:47 + mov dx, 003ceh ; ba ce 03 ; 0xc346d vgabios.c:48 + out DX, AL ; ee ; 0xc3470 + inc si ; 46 ; 0xc3471 vgabios.c:2380 + inc si ; 46 ; 0xc3472 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3473 vgabios.c:47 + mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xc3476 vgabios.c:48 + add dx, strict byte 00006h ; 83 c2 06 ; 0xc3479 + out DX, AL ; ee ; 0xc347c + test byte [bp-010h], 002h ; f6 46 f0 02 ; 0xc347d vgabios.c:2384 + je near 035a0h ; 0f 84 1b 01 ; 0xc3481 + mov es, cx ; 8e c1 ; 0xc3485 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3487 + mov si, strict word 00049h ; be 49 00 ; 0xc348a vgabios.c:52 + mov dx, strict word 00040h ; ba 40 00 ; 0xc348d + mov es, dx ; 8e c2 ; 0xc3490 + mov byte [es:si], al ; 26 88 04 ; 0xc3492 + inc bx ; 43 ; 0xc3495 vgabios.c:2385 + mov es, cx ; 8e c1 ; 0xc3496 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3498 + mov si, strict word 0004ah ; be 4a 00 ; 0xc349b vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc349e + mov word [es:si], ax ; 26 89 04 ; 0xc34a0 + inc bx ; 43 ; 0xc34a3 vgabios.c:2386 + inc bx ; 43 ; 0xc34a4 + mov es, cx ; 8e c1 ; 0xc34a5 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc34a7 + mov si, strict word 0004ch ; be 4c 00 ; 0xc34aa vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc34ad + mov word [es:si], ax ; 26 89 04 ; 0xc34af + inc bx ; 43 ; 0xc34b2 vgabios.c:2387 + inc bx ; 43 ; 0xc34b3 + mov es, cx ; 8e c1 ; 0xc34b4 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc34b6 + mov si, strict word 00063h ; be 63 00 ; 0xc34b9 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc34bc + mov word [es:si], ax ; 26 89 04 ; 0xc34be + inc bx ; 43 ; 0xc34c1 vgabios.c:2388 + inc bx ; 43 ; 0xc34c2 + mov es, cx ; 8e c1 ; 0xc34c3 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc34c5 + mov si, 00084h ; be 84 00 ; 0xc34c8 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc34cb + mov byte [es:si], al ; 26 88 04 ; 0xc34cd + inc bx ; 43 ; 0xc34d0 vgabios.c:2389 + mov es, cx ; 8e c1 ; 0xc34d1 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc34d3 + mov si, 00085h ; be 85 00 ; 0xc34d6 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc34d9 + mov word [es:si], ax ; 26 89 04 ; 0xc34db + inc bx ; 43 ; 0xc34de vgabios.c:2390 + inc bx ; 43 ; 0xc34df + mov es, cx ; 8e c1 ; 0xc34e0 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc34e2 + mov si, 00087h ; be 87 00 ; 0xc34e5 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc34e8 + mov byte [es:si], al ; 26 88 04 ; 0xc34ea + inc bx ; 43 ; 0xc34ed vgabios.c:2391 + mov es, cx ; 8e c1 ; 0xc34ee vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc34f0 + mov si, 00088h ; be 88 00 ; 0xc34f3 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc34f6 + mov byte [es:si], al ; 26 88 04 ; 0xc34f8 + inc bx ; 43 ; 0xc34fb vgabios.c:2392 + mov es, cx ; 8e c1 ; 0xc34fc vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc34fe + mov si, 00089h ; be 89 00 ; 0xc3501 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3504 + mov byte [es:si], al ; 26 88 04 ; 0xc3506 + inc bx ; 43 ; 0xc3509 vgabios.c:2393 + mov es, cx ; 8e c1 ; 0xc350a vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc350c + mov si, strict word 00060h ; be 60 00 ; 0xc350f vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3512 + mov word [es:si], ax ; 26 89 04 ; 0xc3514 + mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xc3517 vgabios.c:2395 + inc bx ; 43 ; 0xc351c vgabios.c:2394 + inc bx ; 43 ; 0xc351d + jmp short 03526h ; eb 06 ; 0xc351e + cmp word [bp-00eh], strict byte 00008h ; 83 7e f2 08 ; 0xc3520 + jnc short 03542h ; 73 1c ; 0xc3524 + mov es, cx ; 8e c1 ; 0xc3526 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3528 + mov si, word [bp-00eh] ; 8b 76 f2 ; 0xc352b vgabios.c:58 + add si, si ; 01 f6 ; 0xc352e + add si, strict byte 00050h ; 83 c6 50 ; 0xc3530 + mov dx, strict word 00040h ; ba 40 00 ; 0xc3533 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3536 + mov word [es:si], ax ; 26 89 04 ; 0xc3538 + inc bx ; 43 ; 0xc353b vgabios.c:2397 + inc bx ; 43 ; 0xc353c + inc word [bp-00eh] ; ff 46 f2 ; 0xc353d vgabios.c:2398 + jmp short 03520h ; eb de ; 0xc3540 + mov es, cx ; 8e c1 ; 0xc3542 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3544 + mov si, strict word 0004eh ; be 4e 00 ; 0xc3547 vgabios.c:62 + mov dx, strict word 00040h ; ba 40 00 ; 0xc354a + mov es, dx ; 8e c2 ; 0xc354d + mov word [es:si], ax ; 26 89 04 ; 0xc354f + inc bx ; 43 ; 0xc3552 vgabios.c:2399 + inc bx ; 43 ; 0xc3553 + mov es, cx ; 8e c1 ; 0xc3554 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3556 + mov si, strict word 00062h ; be 62 00 ; 0xc3559 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc355c + mov byte [es:si], al ; 26 88 04 ; 0xc355e + inc bx ; 43 ; 0xc3561 vgabios.c:2400 + mov es, cx ; 8e c1 ; 0xc3562 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3564 + mov si, strict word 0007ch ; be 7c 00 ; 0xc3567 vgabios.c:62 + xor dx, dx ; 31 d2 ; 0xc356a + mov es, dx ; 8e c2 ; 0xc356c + mov word [es:si], ax ; 26 89 04 ; 0xc356e + inc bx ; 43 ; 0xc3571 vgabios.c:2402 + inc bx ; 43 ; 0xc3572 + mov es, cx ; 8e c1 ; 0xc3573 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3575 + mov si, strict word 0007eh ; be 7e 00 ; 0xc3578 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc357b + mov word [es:si], ax ; 26 89 04 ; 0xc357d + inc bx ; 43 ; 0xc3580 vgabios.c:2403 + inc bx ; 43 ; 0xc3581 + mov es, cx ; 8e c1 ; 0xc3582 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3584 + mov si, 0010ch ; be 0c 01 ; 0xc3587 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc358a + mov word [es:si], ax ; 26 89 04 ; 0xc358c + inc bx ; 43 ; 0xc358f vgabios.c:2404 + inc bx ; 43 ; 0xc3590 + mov es, cx ; 8e c1 ; 0xc3591 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3593 + mov si, 0010eh ; be 0e 01 ; 0xc3596 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3599 + mov word [es:si], ax ; 26 89 04 ; 0xc359b + inc bx ; 43 ; 0xc359e vgabios.c:2405 + inc bx ; 43 ; 0xc359f + test byte [bp-010h], 004h ; f6 46 f0 04 ; 0xc35a0 vgabios.c:2407 + je short 035e3h ; 74 3d ; 0xc35a4 + inc bx ; 43 ; 0xc35a6 vgabios.c:2408 + mov es, cx ; 8e c1 ; 0xc35a7 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc35a9 + xor ah, ah ; 30 e4 ; 0xc35ac vgabios.c:48 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc35ae + inc bx ; 43 ; 0xc35b1 vgabios.c:2409 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc35b2 vgabios.c:47 + mov dx, 003c6h ; ba c6 03 ; 0xc35b5 vgabios.c:48 + out DX, AL ; ee ; 0xc35b8 + inc bx ; 43 ; 0xc35b9 vgabios.c:2410 + xor al, al ; 30 c0 ; 0xc35ba + mov dx, 003c8h ; ba c8 03 ; 0xc35bc + out DX, AL ; ee ; 0xc35bf + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc35c0 vgabios.c:2413 + jmp short 035cch ; eb 07 ; 0xc35c3 + cmp word [bp-00eh], 00300h ; 81 7e f2 00 03 ; 0xc35c5 + jnc short 035dbh ; 73 0f ; 0xc35ca + mov es, cx ; 8e c1 ; 0xc35cc vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc35ce + mov dx, 003c9h ; ba c9 03 ; 0xc35d1 vgabios.c:48 + out DX, AL ; ee ; 0xc35d4 + inc bx ; 43 ; 0xc35d5 vgabios.c:2414 + inc word [bp-00eh] ; ff 46 f2 ; 0xc35d6 vgabios.c:2415 + jmp short 035c5h ; eb ea ; 0xc35d9 + inc bx ; 43 ; 0xc35db vgabios.c:2416 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc35dc + mov dx, 003c8h ; ba c8 03 ; 0xc35df + out DX, AL ; ee ; 0xc35e2 + mov ax, bx ; 89 d8 ; 0xc35e3 vgabios.c:2420 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc35e5 + pop di ; 5f ; 0xc35e8 + pop si ; 5e ; 0xc35e9 + pop cx ; 59 ; 0xc35ea + pop bp ; 5d ; 0xc35eb + retn ; c3 ; 0xc35ec + ; disGetNextSymbol 0xc35ed LB 0xccc -> off=0x0 cb=0000000000000027 uValue=00000000000c35ed 'find_vga_entry' +find_vga_entry: ; 0xc35ed LB 0x27 + push bx ; 53 ; 0xc35ed vgabios.c:2429 + push dx ; 52 ; 0xc35ee + push bp ; 55 ; 0xc35ef + mov bp, sp ; 89 e5 ; 0xc35f0 + mov dl, al ; 88 c2 ; 0xc35f2 + mov AH, strict byte 0ffh ; b4 ff ; 0xc35f4 vgabios.c:2431 + xor al, al ; 30 c0 ; 0xc35f6 vgabios.c:2432 + jmp short 03600h ; eb 06 ; 0xc35f8 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc35fa vgabios.c:2433 + cmp AL, strict byte 00fh ; 3c 0f ; 0xc35fc + jnbe short 0360eh ; 77 0e ; 0xc35fe + movzx bx, al ; 0f b6 d8 ; 0xc3600 + sal bx, 003h ; c1 e3 03 ; 0xc3603 + cmp dl, byte [bx+047afh] ; 3a 97 af 47 ; 0xc3606 + jne short 035fah ; 75 ee ; 0xc360a + mov ah, al ; 88 c4 ; 0xc360c + mov al, ah ; 88 e0 ; 0xc360e vgabios.c:2438 + pop bp ; 5d ; 0xc3610 + pop dx ; 5a ; 0xc3611 + pop bx ; 5b ; 0xc3612 + retn ; c3 ; 0xc3613 + ; disGetNextSymbol 0xc3614 LB 0xca5 -> off=0x0 cb=000000000000000e uValue=00000000000c3614 'readx_byte' +readx_byte: ; 0xc3614 LB 0xe + push bx ; 53 ; 0xc3614 vgabios.c:2450 + push bp ; 55 ; 0xc3615 + mov bp, sp ; 89 e5 ; 0xc3616 + mov bx, dx ; 89 d3 ; 0xc3618 + mov es, ax ; 8e c0 ; 0xc361a vgabios.c:2452 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc361c + pop bp ; 5d ; 0xc361f vgabios.c:2453 + pop bx ; 5b ; 0xc3620 + retn ; c3 ; 0xc3621 + ; disGetNextSymbol 0xc3622 LB 0xc97 -> off=0x8a cb=000000000000047c uValue=00000000000c36ac 'int10_func' + db 056h, 04fh, 01ch, 01bh, 013h, 012h, 011h, 010h, 00eh, 00dh, 00ch, 00ah, 009h, 008h, 007h, 006h + db 005h, 004h, 003h, 002h, 001h, 000h, 021h, 03bh, 0d7h, 036h, 014h, 037h, 028h, 037h, 039h, 037h + db 04dh, 037h, 05eh, 037h, 069h, 037h, 0a3h, 037h, 0a7h, 037h, 0b8h, 037h, 0d5h, 037h, 0f2h, 037h + db 012h, 038h, 02fh, 038h, 046h, 038h, 052h, 038h, 057h, 039h, 0e4h, 039h, 011h, 03ah, 026h, 03ah + db 068h, 03ah, 0f3h, 03ah, 030h, 024h, 023h, 022h, 021h, 020h, 014h, 012h, 011h, 010h, 004h, 003h + db 002h, 001h, 000h, 021h, 03bh, 073h, 038h, 093h, 038h, 0afh, 038h, 0c4h, 038h, 0cfh, 038h, 073h + db 038h, 093h, 038h, 0afh, 038h, 0cfh, 038h, 0e4h, 038h, 0f0h, 038h, 00bh, 039h, 01ch, 039h, 02dh + db 039h, 03eh, 039h, 00ah, 009h, 006h, 004h, 002h, 001h, 000h, 0e5h, 03ah, 090h, 03ah, 09eh, 03ah + db 0afh, 03ah, 0bfh, 03ah, 0d4h, 03ah, 0e5h, 03ah, 0e5h, 03ah +int10_func: ; 0xc36ac LB 0x47c + push bp ; 55 ; 0xc36ac vgabios.c:2531 + mov bp, sp ; 89 e5 ; 0xc36ad + push si ; 56 ; 0xc36af + push di ; 57 ; 0xc36b0 + push ax ; 50 ; 0xc36b1 + mov si, word [bp+004h] ; 8b 76 04 ; 0xc36b2 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc36b5 vgabios.c:2536 + shr ax, 008h ; c1 e8 08 ; 0xc36b8 + cmp ax, strict word 00056h ; 3d 56 00 ; 0xc36bb + jnbe near 03b21h ; 0f 87 5f 04 ; 0xc36be + push CS ; 0e ; 0xc36c2 + pop ES ; 07 ; 0xc36c3 + mov cx, strict word 00017h ; b9 17 00 ; 0xc36c4 + mov di, 03622h ; bf 22 36 ; 0xc36c7 + repne scasb ; f2 ae ; 0xc36ca + sal cx, 1 ; d1 e1 ; 0xc36cc + mov di, cx ; 89 cf ; 0xc36ce + mov ax, word [cs:di+03638h] ; 2e 8b 85 38 36 ; 0xc36d0 + jmp ax ; ff e0 ; 0xc36d5 + movzx ax, byte [bp+012h] ; 0f b6 46 12 ; 0xc36d7 vgabios.c:2539 + call 013ddh ; e8 ff dc ; 0xc36db + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc36de vgabios.c:2540 + and ax, strict word 0007fh ; 25 7f 00 ; 0xc36e1 + cmp ax, strict word 00007h ; 3d 07 00 ; 0xc36e4 + je short 036feh ; 74 15 ; 0xc36e7 + cmp ax, strict word 00006h ; 3d 06 00 ; 0xc36e9 + je short 036f5h ; 74 07 ; 0xc36ec + cmp ax, strict word 00005h ; 3d 05 00 ; 0xc36ee + jbe short 036feh ; 76 0b ; 0xc36f1 + jmp short 03707h ; eb 12 ; 0xc36f3 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc36f5 vgabios.c:2542 + xor al, al ; 30 c0 ; 0xc36f8 + or AL, strict byte 03fh ; 0c 3f ; 0xc36fa + jmp short 0370eh ; eb 10 ; 0xc36fc vgabios.c:2543 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc36fe vgabios.c:2551 + xor al, al ; 30 c0 ; 0xc3701 + or AL, strict byte 030h ; 0c 30 ; 0xc3703 + jmp short 0370eh ; eb 07 ; 0xc3705 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3707 vgabios.c:2554 + xor al, al ; 30 c0 ; 0xc370a + or AL, strict byte 020h ; 0c 20 ; 0xc370c + mov word [bp+012h], ax ; 89 46 12 ; 0xc370e + jmp near 03b21h ; e9 0d 04 ; 0xc3711 vgabios.c:2556 + mov al, byte [bp+010h] ; 8a 46 10 ; 0xc3714 vgabios.c:2558 + movzx dx, al ; 0f b6 d0 ; 0xc3717 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc371a + shr ax, 008h ; c1 e8 08 ; 0xc371d + xor ah, ah ; 30 e4 ; 0xc3720 + call 0114ch ; e8 27 da ; 0xc3722 + jmp near 03b21h ; e9 f9 03 ; 0xc3725 vgabios.c:2559 + mov dx, word [bp+00eh] ; 8b 56 0e ; 0xc3728 vgabios.c:2561 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc372b + shr ax, 008h ; c1 e8 08 ; 0xc372e + xor ah, ah ; 30 e4 ; 0xc3731 + call 01242h ; e8 0c db ; 0xc3733 + jmp near 03b21h ; e9 e8 03 ; 0xc3736 vgabios.c:2562 + lea bx, [bp+00eh] ; 8d 5e 0e ; 0xc3739 vgabios.c:2564 + lea dx, [bp+010h] ; 8d 56 10 ; 0xc373c + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc373f + shr ax, 008h ; c1 e8 08 ; 0xc3742 + xor ah, ah ; 30 e4 ; 0xc3745 + call 00a93h ; e8 49 d3 ; 0xc3747 + jmp near 03b21h ; e9 d4 03 ; 0xc374a vgabios.c:2565 + xor ax, ax ; 31 c0 ; 0xc374d vgabios.c:2571 + mov word [bp+012h], ax ; 89 46 12 ; 0xc374f + mov word [bp+00ch], ax ; 89 46 0c ; 0xc3752 vgabios.c:2572 + mov word [bp+010h], ax ; 89 46 10 ; 0xc3755 vgabios.c:2573 + mov word [bp+00eh], ax ; 89 46 0e ; 0xc3758 vgabios.c:2574 + jmp near 03b21h ; e9 c3 03 ; 0xc375b vgabios.c:2575 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc375e vgabios.c:2577 + xor ah, ah ; 30 e4 ; 0xc3761 + call 012cbh ; e8 65 db ; 0xc3763 + jmp near 03b21h ; e9 b8 03 ; 0xc3766 vgabios.c:2578 + mov ax, strict word 00001h ; b8 01 00 ; 0xc3769 vgabios.c:2580 + push ax ; 50 ; 0xc376c + mov ax, 000ffh ; b8 ff 00 ; 0xc376d + push ax ; 50 ; 0xc3770 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3771 + xor ah, ah ; 30 e4 ; 0xc3774 + push ax ; 50 ; 0xc3776 + mov ax, word [bp+00eh] ; 8b 46 0e ; 0xc3777 + shr ax, 008h ; c1 e8 08 ; 0xc377a + xor ah, ah ; 30 e4 ; 0xc377d + push ax ; 50 ; 0xc377f + mov al, byte [bp+010h] ; 8a 46 10 ; 0xc3780 + movzx cx, al ; 0f b6 c8 ; 0xc3783 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3786 + shr ax, 008h ; c1 e8 08 ; 0xc3789 + movzx bx, al ; 0f b6 d8 ; 0xc378c + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc378f + shr ax, 008h ; c1 e8 08 ; 0xc3792 + movzx dx, al ; 0f b6 d0 ; 0xc3795 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3798 + xor ah, ah ; 30 e4 ; 0xc379b + call 01b5dh ; e8 bd e3 ; 0xc379d + jmp near 03b21h ; e9 7e 03 ; 0xc37a0 vgabios.c:2581 + xor ax, ax ; 31 c0 ; 0xc37a3 vgabios.c:2583 + jmp short 0376ch ; eb c5 ; 0xc37a5 + lea dx, [bp+012h] ; 8d 56 12 ; 0xc37a7 vgabios.c:2586 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc37aa + shr ax, 008h ; c1 e8 08 ; 0xc37ad + xor ah, ah ; 30 e4 ; 0xc37b0 + call 00db0h ; e8 fb d5 ; 0xc37b2 + jmp near 03b21h ; e9 69 03 ; 0xc37b5 vgabios.c:2587 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc37b8 vgabios.c:2589 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc37bb + movzx bx, al ; 0f b6 d8 ; 0xc37be + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc37c1 + shr ax, 008h ; c1 e8 08 ; 0xc37c4 + movzx dx, al ; 0f b6 d0 ; 0xc37c7 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc37ca + xor ah, ah ; 30 e4 ; 0xc37cd + call 023e6h ; e8 14 ec ; 0xc37cf + jmp near 03b21h ; e9 4c 03 ; 0xc37d2 vgabios.c:2590 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc37d5 vgabios.c:2592 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc37d8 + movzx bx, al ; 0f b6 d8 ; 0xc37db + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc37de + shr ax, 008h ; c1 e8 08 ; 0xc37e1 + movzx dx, al ; 0f b6 d0 ; 0xc37e4 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc37e7 + xor ah, ah ; 30 e4 ; 0xc37ea + call 0254bh ; e8 5c ed ; 0xc37ec + jmp near 03b21h ; e9 2f 03 ; 0xc37ef vgabios.c:2593 + mov cx, word [bp+00eh] ; 8b 4e 0e ; 0xc37f2 vgabios.c:2595 + mov bx, word [bp+010h] ; 8b 5e 10 ; 0xc37f5 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc37f8 + movzx dx, al ; 0f b6 d0 ; 0xc37fb + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc37fe + shr ax, 008h ; c1 e8 08 ; 0xc3801 + mov word [bp-006h], ax ; 89 46 fa ; 0xc3804 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc3807 + xor ah, ah ; 30 e4 ; 0xc380a + call 026adh ; e8 9e ee ; 0xc380c + jmp near 03b21h ; e9 0f 03 ; 0xc380f vgabios.c:2596 + lea cx, [bp+012h] ; 8d 4e 12 ; 0xc3812 vgabios.c:2598 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3815 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3818 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc381b + shr ax, 008h ; c1 e8 08 ; 0xc381e + mov word [bp-006h], ax ; 89 46 fa ; 0xc3821 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc3824 + xor ah, ah ; 30 e4 ; 0xc3827 + call 00f6ah ; e8 3e d7 ; 0xc3829 + jmp near 03b21h ; e9 f2 02 ; 0xc382c vgabios.c:2599 + mov cx, strict word 00002h ; b9 02 00 ; 0xc382f vgabios.c:2607 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3832 + movzx bx, al ; 0f b6 d8 ; 0xc3835 + mov dx, 000ffh ; ba ff 00 ; 0xc3838 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc383b + xor ah, ah ; 30 e4 ; 0xc383e + call 02812h ; e8 cf ef ; 0xc3840 + jmp near 03b21h ; e9 db 02 ; 0xc3843 vgabios.c:2608 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3846 vgabios.c:2611 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3849 + call 010c0h ; e8 71 d8 ; 0xc384c + jmp near 03b21h ; e9 cf 02 ; 0xc384f vgabios.c:2612 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3852 vgabios.c:2614 + xor ah, ah ; 30 e4 ; 0xc3855 + cmp ax, strict word 00030h ; 3d 30 00 ; 0xc3857 + jnbe near 03b21h ; 0f 87 c3 02 ; 0xc385a + push CS ; 0e ; 0xc385e + pop ES ; 07 ; 0xc385f + mov cx, strict word 00010h ; b9 10 00 ; 0xc3860 + mov di, 03666h ; bf 66 36 ; 0xc3863 + repne scasb ; f2 ae ; 0xc3866 + sal cx, 1 ; d1 e1 ; 0xc3868 + mov di, cx ; 89 cf ; 0xc386a + mov ax, word [cs:di+03675h] ; 2e 8b 85 75 36 ; 0xc386c + jmp ax ; ff e0 ; 0xc3871 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3873 vgabios.c:2618 + shr ax, 008h ; c1 e8 08 ; 0xc3876 + xor ah, ah ; 30 e4 ; 0xc3879 + push ax ; 50 ; 0xc387b + movzx ax, byte [bp+00ch] ; 0f b6 46 0c ; 0xc387c + push ax ; 50 ; 0xc3880 + push word [bp+00eh] ; ff 76 0e ; 0xc3881 + movzx ax, byte [bp+012h] ; 0f b6 46 12 ; 0xc3884 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3888 + mov bx, word [bp+008h] ; 8b 5e 08 ; 0xc388b + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc388e + jmp short 038a9h ; eb 16 ; 0xc3891 + push strict byte 0000eh ; 6a 0e ; 0xc3893 vgabios.c:2622 + movzx ax, byte [bp+00ch] ; 0f b6 46 0c ; 0xc3895 + push ax ; 50 ; 0xc3899 + push strict byte 00000h ; 6a 00 ; 0xc389a + movzx ax, byte [bp+012h] ; 0f b6 46 12 ; 0xc389c + mov cx, 00100h ; b9 00 01 ; 0xc38a0 + mov bx, 05d6dh ; bb 6d 5d ; 0xc38a3 + mov dx, 0c000h ; ba 00 c0 ; 0xc38a6 + call 02c0ah ; e8 5e f3 ; 0xc38a9 + jmp near 03b21h ; e9 72 02 ; 0xc38ac + push strict byte 00008h ; 6a 08 ; 0xc38af vgabios.c:2626 + movzx ax, byte [bp+00ch] ; 0f b6 46 0c ; 0xc38b1 + push ax ; 50 ; 0xc38b5 + push strict byte 00000h ; 6a 00 ; 0xc38b6 + movzx ax, byte [bp+012h] ; 0f b6 46 12 ; 0xc38b8 + mov cx, 00100h ; b9 00 01 ; 0xc38bc + mov bx, 0556dh ; bb 6d 55 ; 0xc38bf + jmp short 038a6h ; eb e2 ; 0xc38c2 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc38c4 vgabios.c:2629 + xor ah, ah ; 30 e4 ; 0xc38c7 + call 02b73h ; e8 a7 f2 ; 0xc38c9 + jmp near 03b21h ; e9 52 02 ; 0xc38cc vgabios.c:2630 + push strict byte 00010h ; 6a 10 ; 0xc38cf vgabios.c:2633 + movzx ax, byte [bp+00ch] ; 0f b6 46 0c ; 0xc38d1 + push ax ; 50 ; 0xc38d5 + push strict byte 00000h ; 6a 00 ; 0xc38d6 + movzx ax, byte [bp+012h] ; 0f b6 46 12 ; 0xc38d8 + mov cx, 00100h ; b9 00 01 ; 0xc38dc + mov bx, 06b6dh ; bb 6d 6b ; 0xc38df + jmp short 038a6h ; eb c2 ; 0xc38e2 + mov dx, word [bp+008h] ; 8b 56 08 ; 0xc38e4 vgabios.c:2636 + mov ax, word [bp+016h] ; 8b 46 16 ; 0xc38e7 + call 02c86h ; e8 99 f3 ; 0xc38ea + jmp near 03b21h ; e9 31 02 ; 0xc38ed vgabios.c:2637 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc38f0 vgabios.c:2639 + xor ah, ah ; 30 e4 ; 0xc38f3 + push ax ; 50 ; 0xc38f5 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc38f6 + movzx cx, al ; 0f b6 c8 ; 0xc38f9 + mov bx, word [bp+010h] ; 8b 5e 10 ; 0xc38fc + mov dx, word [bp+008h] ; 8b 56 08 ; 0xc38ff + mov ax, word [bp+016h] ; 8b 46 16 ; 0xc3902 + call 02ce5h ; e8 dd f3 ; 0xc3905 + jmp near 03b21h ; e9 16 02 ; 0xc3908 vgabios.c:2640 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc390b vgabios.c:2642 + movzx dx, al ; 0f b6 d0 ; 0xc390e + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3911 + xor ah, ah ; 30 e4 ; 0xc3914 + call 02d01h ; e8 e8 f3 ; 0xc3916 + jmp near 03b21h ; e9 05 02 ; 0xc3919 vgabios.c:2643 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc391c vgabios.c:2645 + movzx dx, al ; 0f b6 d0 ; 0xc391f + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3922 + xor ah, ah ; 30 e4 ; 0xc3925 + call 02d1fh ; e8 f5 f3 ; 0xc3927 + jmp near 03b21h ; e9 f4 01 ; 0xc392a vgabios.c:2646 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc392d vgabios.c:2648 + movzx dx, al ; 0f b6 d0 ; 0xc3930 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3933 + xor ah, ah ; 30 e4 ; 0xc3936 + call 02d3dh ; e8 02 f4 ; 0xc3938 + jmp near 03b21h ; e9 e3 01 ; 0xc393b vgabios.c:2649 + lea ax, [bp+00eh] ; 8d 46 0e ; 0xc393e vgabios.c:2651 + push ax ; 50 ; 0xc3941 + lea cx, [bp+010h] ; 8d 4e 10 ; 0xc3942 + lea bx, [bp+008h] ; 8d 5e 08 ; 0xc3945 + lea dx, [bp+016h] ; 8d 56 16 ; 0xc3948 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc394b + shr ax, 008h ; c1 e8 08 ; 0xc394e + call 00ee7h ; e8 93 d5 ; 0xc3951 + jmp near 03b21h ; e9 ca 01 ; 0xc3954 vgabios.c:2659 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3957 vgabios.c:2661 + xor ah, ah ; 30 e4 ; 0xc395a + cmp ax, strict word 00034h ; 3d 34 00 ; 0xc395c + jc short 03970h ; 72 0f ; 0xc395f + jbe short 039a3h ; 76 40 ; 0xc3961 + cmp ax, strict word 00036h ; 3d 36 00 ; 0xc3963 + je short 039dah ; 74 72 ; 0xc3966 + cmp ax, strict word 00035h ; 3d 35 00 ; 0xc3968 + je short 039cbh ; 74 5e ; 0xc396b + jmp near 03b21h ; e9 b1 01 ; 0xc396d + cmp ax, strict word 00030h ; 3d 30 00 ; 0xc3970 + je short 03982h ; 74 0d ; 0xc3973 + cmp ax, strict word 00020h ; 3d 20 00 ; 0xc3975 + jne near 03b21h ; 0f 85 a5 01 ; 0xc3978 + call 02d5bh ; e8 dc f3 ; 0xc397c vgabios.c:2664 + jmp near 03b21h ; e9 9f 01 ; 0xc397f vgabios.c:2665 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3982 vgabios.c:2667 + xor ah, ah ; 30 e4 ; 0xc3985 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3987 + jnbe near 03b21h ; 0f 87 93 01 ; 0xc398a + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc398e vgabios.c:2668 + xor ah, ah ; 30 e4 ; 0xc3991 + call 02d60h ; e8 ca f3 ; 0xc3993 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3996 vgabios.c:2669 + xor al, al ; 30 c0 ; 0xc3999 + or AL, strict byte 012h ; 0c 12 ; 0xc399b + mov word [bp+012h], ax ; 89 46 12 ; 0xc399d + jmp near 03b21h ; e9 7e 01 ; 0xc39a0 vgabios.c:2671 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc39a3 vgabios.c:2673 + xor ah, ah ; 30 e4 ; 0xc39a6 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc39a8 + jnc short 039c5h ; 73 18 ; 0xc39ab + mov ax, strict word 00040h ; b8 40 00 ; 0xc39ad vgabios.c:45 + mov si, 00087h ; be 87 00 ; 0xc39b0 + mov es, ax ; 8e c0 ; 0xc39b3 vgabios.c:47 + mov ah, byte [es:si] ; 26 8a 24 ; 0xc39b5 + and ah, 0feh ; 80 e4 fe ; 0xc39b8 vgabios.c:48 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc39bb + or al, ah ; 08 e0 ; 0xc39be + mov byte [es:si], al ; 26 88 04 ; 0xc39c0 vgabios.c:52 + jmp short 03996h ; eb d1 ; 0xc39c3 + mov byte [bp+012h], ah ; 88 66 12 ; 0xc39c5 vgabios.c:2679 + jmp near 03b21h ; e9 56 01 ; 0xc39c8 vgabios.c:2680 + movzx ax, byte [bp+012h] ; 0f b6 46 12 ; 0xc39cb vgabios.c:2682 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc39cf + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc39d2 + call 02d92h ; e8 ba f3 ; 0xc39d5 + jmp short 03996h ; eb bc ; 0xc39d8 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc39da vgabios.c:2686 + xor ah, ah ; 30 e4 ; 0xc39dd + call 02d97h ; e8 b5 f3 ; 0xc39df + jmp short 03996h ; eb b2 ; 0xc39e2 + push word [bp+008h] ; ff 76 08 ; 0xc39e4 vgabios.c:2696 + push word [bp+016h] ; ff 76 16 ; 0xc39e7 + movzx ax, byte [bp+00eh] ; 0f b6 46 0e ; 0xc39ea + push ax ; 50 ; 0xc39ee + mov ax, word [bp+00eh] ; 8b 46 0e ; 0xc39ef + shr ax, 008h ; c1 e8 08 ; 0xc39f2 + xor ah, ah ; 30 e4 ; 0xc39f5 + push ax ; 50 ; 0xc39f7 + movzx bx, byte [bp+00ch] ; 0f b6 5e 0c ; 0xc39f8 + mov dx, word [bp+00ch] ; 8b 56 0c ; 0xc39fc + shr dx, 008h ; c1 ea 08 ; 0xc39ff + xor dh, dh ; 30 f6 ; 0xc3a02 + movzx ax, byte [bp+012h] ; 0f b6 46 12 ; 0xc3a04 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3a08 + call 02d9ch ; e8 8e f3 ; 0xc3a0b + jmp near 03b21h ; e9 10 01 ; 0xc3a0e vgabios.c:2697 + mov bx, si ; 89 f3 ; 0xc3a11 vgabios.c:2699 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3a13 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3a16 + call 02e32h ; e8 16 f4 ; 0xc3a19 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3a1c vgabios.c:2700 + xor al, al ; 30 c0 ; 0xc3a1f + or AL, strict byte 01bh ; 0c 1b ; 0xc3a21 + jmp near 0399dh ; e9 77 ff ; 0xc3a23 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3a26 vgabios.c:2703 + xor ah, ah ; 30 e4 ; 0xc3a29 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3a2b + je short 03a52h ; 74 22 ; 0xc3a2e + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc3a30 + je short 03a44h ; 74 0f ; 0xc3a33 + test ax, ax ; 85 c0 ; 0xc3a35 + jne short 03a5eh ; 75 25 ; 0xc3a37 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3a39 vgabios.c:2706 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3a3c + call 03047h ; e8 05 f6 ; 0xc3a3f + jmp short 03a5eh ; eb 1a ; 0xc3a42 vgabios.c:2707 + mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xc3a44 vgabios.c:2709 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3a47 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3a4a + call 0305fh ; e8 0f f6 ; 0xc3a4d + jmp short 03a5eh ; eb 0c ; 0xc3a50 vgabios.c:2710 + mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xc3a52 vgabios.c:2712 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3a55 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3a58 + call 03335h ; e8 d7 f8 ; 0xc3a5b + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3a5e vgabios.c:2719 + xor al, al ; 30 c0 ; 0xc3a61 + or AL, strict byte 01ch ; 0c 1c ; 0xc3a63 + jmp near 0399dh ; e9 35 ff ; 0xc3a65 + call 007bfh ; e8 54 cd ; 0xc3a68 vgabios.c:2724 + test ax, ax ; 85 c0 ; 0xc3a6b + je near 03aech ; 0f 84 7b 00 ; 0xc3a6d + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3a71 vgabios.c:2725 + xor ah, ah ; 30 e4 ; 0xc3a74 + cmp ax, strict word 0000ah ; 3d 0a 00 ; 0xc3a76 + jnbe short 03ae5h ; 77 6a ; 0xc3a79 + push CS ; 0e ; 0xc3a7b + pop ES ; 07 ; 0xc3a7c + mov cx, strict word 00008h ; b9 08 00 ; 0xc3a7d + mov di, 03695h ; bf 95 36 ; 0xc3a80 + repne scasb ; f2 ae ; 0xc3a83 + sal cx, 1 ; d1 e1 ; 0xc3a85 + mov di, cx ; 89 cf ; 0xc3a87 + mov ax, word [cs:di+0369ch] ; 2e 8b 85 9c 36 ; 0xc3a89 + jmp ax ; ff e0 ; 0xc3a8e + mov bx, si ; 89 f3 ; 0xc3a90 vgabios.c:2728 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3a92 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3a95 + call 03cf2h ; e8 57 02 ; 0xc3a98 + jmp near 03b21h ; e9 83 00 ; 0xc3a9b vgabios.c:2729 + mov cx, si ; 89 f1 ; 0xc3a9e vgabios.c:2731 + mov bx, word [bp+016h] ; 8b 5e 16 ; 0xc3aa0 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3aa3 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3aa6 + call 03e17h ; e8 6b 03 ; 0xc3aa9 + jmp near 03b21h ; e9 72 00 ; 0xc3aac vgabios.c:2732 + mov cx, si ; 89 f1 ; 0xc3aaf vgabios.c:2734 + mov bx, word [bp+016h] ; 8b 5e 16 ; 0xc3ab1 + mov dx, word [bp+00ch] ; 8b 56 0c ; 0xc3ab4 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3ab7 + call 03eb2h ; e8 f5 03 ; 0xc3aba + jmp short 03b21h ; eb 62 ; 0xc3abd vgabios.c:2735 + lea ax, [bp+00ch] ; 8d 46 0c ; 0xc3abf vgabios.c:2737 + push ax ; 50 ; 0xc3ac2 + mov cx, word [bp+016h] ; 8b 4e 16 ; 0xc3ac3 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3ac6 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3ac9 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3acc + call 04079h ; e8 a7 05 ; 0xc3acf + jmp short 03b21h ; eb 4d ; 0xc3ad2 vgabios.c:2738 + lea cx, [bp+00eh] ; 8d 4e 0e ; 0xc3ad4 vgabios.c:2740 + lea bx, [bp+010h] ; 8d 5e 10 ; 0xc3ad7 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3ada + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3add + call 04105h ; e8 22 06 ; 0xc3ae0 + jmp short 03b21h ; eb 3c ; 0xc3ae3 vgabios.c:2741 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3ae5 vgabios.c:2763 + jmp short 03b21h ; eb 35 ; 0xc3aea vgabios.c:2766 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3aec vgabios.c:2768 + jmp short 03b21h ; eb 2e ; 0xc3af1 vgabios.c:2770 + call 007bfh ; e8 c9 cc ; 0xc3af3 vgabios.c:2772 + test ax, ax ; 85 c0 ; 0xc3af6 + je short 03b1ch ; 74 22 ; 0xc3af8 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3afa vgabios.c:2773 + xor ah, ah ; 30 e4 ; 0xc3afd + cmp ax, strict word 00042h ; 3d 42 00 ; 0xc3aff + jne short 03b15h ; 75 11 ; 0xc3b02 + lea cx, [bp+00eh] ; 8d 4e 0e ; 0xc3b04 vgabios.c:2776 + lea bx, [bp+010h] ; 8d 5e 10 ; 0xc3b07 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3b0a + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3b0d + call 041d4h ; e8 c1 06 ; 0xc3b10 + jmp short 03b21h ; eb 0c ; 0xc3b13 vgabios.c:2777 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3b15 vgabios.c:2779 + jmp short 03b21h ; eb 05 ; 0xc3b1a vgabios.c:2782 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3b1c vgabios.c:2784 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3b21 vgabios.c:2794 + pop di ; 5f ; 0xc3b24 + pop si ; 5e ; 0xc3b25 + pop bp ; 5d ; 0xc3b26 + retn ; c3 ; 0xc3b27 + ; disGetNextSymbol 0xc3b28 LB 0x791 -> off=0x0 cb=000000000000001f uValue=00000000000c3b28 'dispi_set_xres' +dispi_set_xres: ; 0xc3b28 LB 0x1f + push bp ; 55 ; 0xc3b28 vbe.c:100 + mov bp, sp ; 89 e5 ; 0xc3b29 + push bx ; 53 ; 0xc3b2b + push dx ; 52 ; 0xc3b2c + mov bx, ax ; 89 c3 ; 0xc3b2d + mov ax, strict word 00001h ; b8 01 00 ; 0xc3b2f vbe.c:105 + mov dx, 001ceh ; ba ce 01 ; 0xc3b32 + call 00570h ; e8 38 ca ; 0xc3b35 + mov ax, bx ; 89 d8 ; 0xc3b38 vbe.c:106 + mov dx, 001cfh ; ba cf 01 ; 0xc3b3a + call 00570h ; e8 30 ca ; 0xc3b3d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3b40 vbe.c:107 + pop dx ; 5a ; 0xc3b43 + pop bx ; 5b ; 0xc3b44 + pop bp ; 5d ; 0xc3b45 + retn ; c3 ; 0xc3b46 + ; disGetNextSymbol 0xc3b47 LB 0x772 -> off=0x0 cb=000000000000001f uValue=00000000000c3b47 'dispi_set_yres' +dispi_set_yres: ; 0xc3b47 LB 0x1f + push bp ; 55 ; 0xc3b47 vbe.c:109 + mov bp, sp ; 89 e5 ; 0xc3b48 + push bx ; 53 ; 0xc3b4a + push dx ; 52 ; 0xc3b4b + mov bx, ax ; 89 c3 ; 0xc3b4c + mov ax, strict word 00002h ; b8 02 00 ; 0xc3b4e vbe.c:114 + mov dx, 001ceh ; ba ce 01 ; 0xc3b51 + call 00570h ; e8 19 ca ; 0xc3b54 + mov ax, bx ; 89 d8 ; 0xc3b57 vbe.c:115 + mov dx, 001cfh ; ba cf 01 ; 0xc3b59 + call 00570h ; e8 11 ca ; 0xc3b5c + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3b5f vbe.c:116 + pop dx ; 5a ; 0xc3b62 + pop bx ; 5b ; 0xc3b63 + pop bp ; 5d ; 0xc3b64 + retn ; c3 ; 0xc3b65 + ; disGetNextSymbol 0xc3b66 LB 0x753 -> off=0x0 cb=0000000000000019 uValue=00000000000c3b66 'dispi_get_yres' +dispi_get_yres: ; 0xc3b66 LB 0x19 + push bp ; 55 ; 0xc3b66 vbe.c:118 + mov bp, sp ; 89 e5 ; 0xc3b67 + push dx ; 52 ; 0xc3b69 + mov ax, strict word 00002h ; b8 02 00 ; 0xc3b6a vbe.c:120 + mov dx, 001ceh ; ba ce 01 ; 0xc3b6d + call 00570h ; e8 fd c9 ; 0xc3b70 + mov dx, 001cfh ; ba cf 01 ; 0xc3b73 vbe.c:121 + call 00577h ; e8 fe c9 ; 0xc3b76 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3b79 vbe.c:122 + pop dx ; 5a ; 0xc3b7c + pop bp ; 5d ; 0xc3b7d + retn ; c3 ; 0xc3b7e + ; disGetNextSymbol 0xc3b7f LB 0x73a -> off=0x0 cb=000000000000001f uValue=00000000000c3b7f 'dispi_set_bpp' +dispi_set_bpp: ; 0xc3b7f LB 0x1f + push bp ; 55 ; 0xc3b7f vbe.c:124 + mov bp, sp ; 89 e5 ; 0xc3b80 + push bx ; 53 ; 0xc3b82 + push dx ; 52 ; 0xc3b83 + mov bx, ax ; 89 c3 ; 0xc3b84 + mov ax, strict word 00003h ; b8 03 00 ; 0xc3b86 vbe.c:129 + mov dx, 001ceh ; ba ce 01 ; 0xc3b89 + call 00570h ; e8 e1 c9 ; 0xc3b8c + mov ax, bx ; 89 d8 ; 0xc3b8f vbe.c:130 + mov dx, 001cfh ; ba cf 01 ; 0xc3b91 + call 00570h ; e8 d9 c9 ; 0xc3b94 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3b97 vbe.c:131 + pop dx ; 5a ; 0xc3b9a + pop bx ; 5b ; 0xc3b9b + pop bp ; 5d ; 0xc3b9c + retn ; c3 ; 0xc3b9d + ; disGetNextSymbol 0xc3b9e LB 0x71b -> off=0x0 cb=0000000000000019 uValue=00000000000c3b9e 'dispi_get_bpp' +dispi_get_bpp: ; 0xc3b9e LB 0x19 + push bp ; 55 ; 0xc3b9e vbe.c:133 + mov bp, sp ; 89 e5 ; 0xc3b9f + push dx ; 52 ; 0xc3ba1 + mov ax, strict word 00003h ; b8 03 00 ; 0xc3ba2 vbe.c:135 + mov dx, 001ceh ; ba ce 01 ; 0xc3ba5 + call 00570h ; e8 c5 c9 ; 0xc3ba8 + mov dx, 001cfh ; ba cf 01 ; 0xc3bab vbe.c:136 + call 00577h ; e8 c6 c9 ; 0xc3bae + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3bb1 vbe.c:137 + pop dx ; 5a ; 0xc3bb4 + pop bp ; 5d ; 0xc3bb5 + retn ; c3 ; 0xc3bb6 + ; disGetNextSymbol 0xc3bb7 LB 0x702 -> off=0x0 cb=000000000000001f uValue=00000000000c3bb7 'dispi_set_virt_width' +dispi_set_virt_width: ; 0xc3bb7 LB 0x1f + push bp ; 55 ; 0xc3bb7 vbe.c:139 + mov bp, sp ; 89 e5 ; 0xc3bb8 + push bx ; 53 ; 0xc3bba + push dx ; 52 ; 0xc3bbb + mov bx, ax ; 89 c3 ; 0xc3bbc + mov ax, strict word 00006h ; b8 06 00 ; 0xc3bbe vbe.c:144 + mov dx, 001ceh ; ba ce 01 ; 0xc3bc1 + call 00570h ; e8 a9 c9 ; 0xc3bc4 + mov ax, bx ; 89 d8 ; 0xc3bc7 vbe.c:145 + mov dx, 001cfh ; ba cf 01 ; 0xc3bc9 + call 00570h ; e8 a1 c9 ; 0xc3bcc + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3bcf vbe.c:146 + pop dx ; 5a ; 0xc3bd2 + pop bx ; 5b ; 0xc3bd3 + pop bp ; 5d ; 0xc3bd4 + retn ; c3 ; 0xc3bd5 + ; disGetNextSymbol 0xc3bd6 LB 0x6e3 -> off=0x0 cb=0000000000000019 uValue=00000000000c3bd6 'dispi_get_virt_width' +dispi_get_virt_width: ; 0xc3bd6 LB 0x19 + push bp ; 55 ; 0xc3bd6 vbe.c:148 + mov bp, sp ; 89 e5 ; 0xc3bd7 + push dx ; 52 ; 0xc3bd9 + mov ax, strict word 00006h ; b8 06 00 ; 0xc3bda vbe.c:150 + mov dx, 001ceh ; ba ce 01 ; 0xc3bdd + call 00570h ; e8 8d c9 ; 0xc3be0 + mov dx, 001cfh ; ba cf 01 ; 0xc3be3 vbe.c:151 + call 00577h ; e8 8e c9 ; 0xc3be6 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3be9 vbe.c:152 + pop dx ; 5a ; 0xc3bec + pop bp ; 5d ; 0xc3bed + retn ; c3 ; 0xc3bee + ; disGetNextSymbol 0xc3bef LB 0x6ca -> off=0x0 cb=0000000000000019 uValue=00000000000c3bef 'dispi_get_virt_height' +dispi_get_virt_height: ; 0xc3bef LB 0x19 + push bp ; 55 ; 0xc3bef vbe.c:154 + mov bp, sp ; 89 e5 ; 0xc3bf0 + push dx ; 52 ; 0xc3bf2 + mov ax, strict word 00007h ; b8 07 00 ; 0xc3bf3 vbe.c:156 + mov dx, 001ceh ; ba ce 01 ; 0xc3bf6 + call 00570h ; e8 74 c9 ; 0xc3bf9 + mov dx, 001cfh ; ba cf 01 ; 0xc3bfc vbe.c:157 + call 00577h ; e8 75 c9 ; 0xc3bff + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3c02 vbe.c:158 + pop dx ; 5a ; 0xc3c05 + pop bp ; 5d ; 0xc3c06 + retn ; c3 ; 0xc3c07 + ; disGetNextSymbol 0xc3c08 LB 0x6b1 -> off=0x0 cb=0000000000000012 uValue=00000000000c3c08 'in_word' +in_word: ; 0xc3c08 LB 0x12 + push bp ; 55 ; 0xc3c08 vbe.c:160 + mov bp, sp ; 89 e5 ; 0xc3c09 + push bx ; 53 ; 0xc3c0b + mov bx, ax ; 89 c3 ; 0xc3c0c + mov ax, dx ; 89 d0 ; 0xc3c0e + mov dx, bx ; 89 da ; 0xc3c10 vbe.c:162 + out DX, ax ; ef ; 0xc3c12 + in ax, DX ; ed ; 0xc3c13 vbe.c:163 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3c14 vbe.c:164 + pop bx ; 5b ; 0xc3c17 + pop bp ; 5d ; 0xc3c18 + retn ; c3 ; 0xc3c19 + ; disGetNextSymbol 0xc3c1a LB 0x69f -> off=0x0 cb=0000000000000014 uValue=00000000000c3c1a 'in_byte' +in_byte: ; 0xc3c1a LB 0x14 + push bp ; 55 ; 0xc3c1a vbe.c:166 + mov bp, sp ; 89 e5 ; 0xc3c1b + push bx ; 53 ; 0xc3c1d + mov bx, ax ; 89 c3 ; 0xc3c1e + mov ax, dx ; 89 d0 ; 0xc3c20 + mov dx, bx ; 89 da ; 0xc3c22 vbe.c:168 + out DX, ax ; ef ; 0xc3c24 + in AL, DX ; ec ; 0xc3c25 vbe.c:169 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3c26 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3c28 vbe.c:170 + pop bx ; 5b ; 0xc3c2b + pop bp ; 5d ; 0xc3c2c + retn ; c3 ; 0xc3c2d + ; disGetNextSymbol 0xc3c2e LB 0x68b -> off=0x0 cb=0000000000000014 uValue=00000000000c3c2e 'dispi_get_id' +dispi_get_id: ; 0xc3c2e LB 0x14 + push bp ; 55 ; 0xc3c2e vbe.c:173 + mov bp, sp ; 89 e5 ; 0xc3c2f + push dx ; 52 ; 0xc3c31 + xor ax, ax ; 31 c0 ; 0xc3c32 vbe.c:175 + mov dx, 001ceh ; ba ce 01 ; 0xc3c34 + out DX, ax ; ef ; 0xc3c37 + mov dx, 001cfh ; ba cf 01 ; 0xc3c38 vbe.c:176 + in ax, DX ; ed ; 0xc3c3b + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3c3c vbe.c:177 + pop dx ; 5a ; 0xc3c3f + pop bp ; 5d ; 0xc3c40 + retn ; c3 ; 0xc3c41 + ; disGetNextSymbol 0xc3c42 LB 0x677 -> off=0x0 cb=000000000000001a uValue=00000000000c3c42 'dispi_set_id' +dispi_set_id: ; 0xc3c42 LB 0x1a + push bp ; 55 ; 0xc3c42 vbe.c:179 + mov bp, sp ; 89 e5 ; 0xc3c43 + push bx ; 53 ; 0xc3c45 + push dx ; 52 ; 0xc3c46 + mov bx, ax ; 89 c3 ; 0xc3c47 + xor ax, ax ; 31 c0 ; 0xc3c49 vbe.c:181 + mov dx, 001ceh ; ba ce 01 ; 0xc3c4b + out DX, ax ; ef ; 0xc3c4e + mov ax, bx ; 89 d8 ; 0xc3c4f vbe.c:182 + mov dx, 001cfh ; ba cf 01 ; 0xc3c51 + out DX, ax ; ef ; 0xc3c54 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3c55 vbe.c:183 + pop dx ; 5a ; 0xc3c58 + pop bx ; 5b ; 0xc3c59 + pop bp ; 5d ; 0xc3c5a + retn ; c3 ; 0xc3c5b + ; disGetNextSymbol 0xc3c5c LB 0x65d -> off=0x0 cb=000000000000002a uValue=00000000000c3c5c 'vbe_init' +vbe_init: ; 0xc3c5c LB 0x2a + push bp ; 55 ; 0xc3c5c vbe.c:188 + mov bp, sp ; 89 e5 ; 0xc3c5d + push bx ; 53 ; 0xc3c5f + mov ax, 0b0c0h ; b8 c0 b0 ; 0xc3c60 vbe.c:190 + call 03c42h ; e8 dc ff ; 0xc3c63 + call 03c2eh ; e8 c5 ff ; 0xc3c66 vbe.c:191 + cmp ax, 0b0c0h ; 3d c0 b0 ; 0xc3c69 + jne short 03c80h ; 75 12 ; 0xc3c6c + mov bx, 000b9h ; bb b9 00 ; 0xc3c6e vbe.c:52 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3c71 + mov es, ax ; 8e c0 ; 0xc3c74 + mov byte [es:bx], 001h ; 26 c6 07 01 ; 0xc3c76 + mov ax, 0b0c4h ; b8 c4 b0 ; 0xc3c7a vbe.c:194 + call 03c42h ; e8 c2 ff ; 0xc3c7d + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3c80 vbe.c:199 + pop bx ; 5b ; 0xc3c83 + pop bp ; 5d ; 0xc3c84 + retn ; c3 ; 0xc3c85 + ; disGetNextSymbol 0xc3c86 LB 0x633 -> off=0x0 cb=000000000000006c uValue=00000000000c3c86 'mode_info_find_mode' +mode_info_find_mode: ; 0xc3c86 LB 0x6c + push bp ; 55 ; 0xc3c86 vbe.c:202 + mov bp, sp ; 89 e5 ; 0xc3c87 + push bx ; 53 ; 0xc3c89 + push cx ; 51 ; 0xc3c8a + push si ; 56 ; 0xc3c8b + push di ; 57 ; 0xc3c8c + mov di, ax ; 89 c7 ; 0xc3c8d + mov si, dx ; 89 d6 ; 0xc3c8f + xor dx, dx ; 31 d2 ; 0xc3c91 vbe.c:208 + mov ax, 003b6h ; b8 b6 03 ; 0xc3c93 + call 03c08h ; e8 6f ff ; 0xc3c96 + cmp ax, 077cch ; 3d cc 77 ; 0xc3c99 vbe.c:209 + jne short 03ce7h ; 75 49 ; 0xc3c9c + test si, si ; 85 f6 ; 0xc3c9e vbe.c:213 + je short 03cb5h ; 74 13 ; 0xc3ca0 + mov ax, strict word 0000bh ; b8 0b 00 ; 0xc3ca2 vbe.c:220 + mov dx, 001ceh ; ba ce 01 ; 0xc3ca5 + call 00570h ; e8 c5 c8 ; 0xc3ca8 + mov dx, 001cfh ; ba cf 01 ; 0xc3cab vbe.c:221 + call 00577h ; e8 c6 c8 ; 0xc3cae + test ax, ax ; 85 c0 ; 0xc3cb1 vbe.c:222 + je short 03ce9h ; 74 34 ; 0xc3cb3 + mov bx, strict word 00004h ; bb 04 00 ; 0xc3cb5 vbe.c:226 + mov dx, bx ; 89 da ; 0xc3cb8 vbe.c:232 + mov ax, 003b6h ; b8 b6 03 ; 0xc3cba + call 03c08h ; e8 48 ff ; 0xc3cbd + mov cx, ax ; 89 c1 ; 0xc3cc0 + cmp cx, strict byte 0ffffh ; 83 f9 ff ; 0xc3cc2 vbe.c:233 + je short 03ce7h ; 74 20 ; 0xc3cc5 + lea dx, [bx+002h] ; 8d 57 02 ; 0xc3cc7 vbe.c:235 + mov ax, 003b6h ; b8 b6 03 ; 0xc3cca + call 03c08h ; e8 38 ff ; 0xc3ccd + lea dx, [bx+044h] ; 8d 57 44 ; 0xc3cd0 + cmp cx, di ; 39 f9 ; 0xc3cd3 vbe.c:237 + jne short 03ce3h ; 75 0c ; 0xc3cd5 + test si, si ; 85 f6 ; 0xc3cd7 vbe.c:239 + jne short 03cdfh ; 75 04 ; 0xc3cd9 + mov ax, bx ; 89 d8 ; 0xc3cdb vbe.c:240 + jmp short 03ce9h ; eb 0a ; 0xc3cdd + test AL, strict byte 080h ; a8 80 ; 0xc3cdf vbe.c:241 + jne short 03cdbh ; 75 f8 ; 0xc3ce1 + mov bx, dx ; 89 d3 ; 0xc3ce3 vbe.c:244 + jmp short 03cbah ; eb d3 ; 0xc3ce5 vbe.c:249 + xor ax, ax ; 31 c0 ; 0xc3ce7 vbe.c:252 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc3ce9 vbe.c:253 + pop di ; 5f ; 0xc3cec + pop si ; 5e ; 0xc3ced + pop cx ; 59 ; 0xc3cee + pop bx ; 5b ; 0xc3cef + pop bp ; 5d ; 0xc3cf0 + retn ; c3 ; 0xc3cf1 + ; disGetNextSymbol 0xc3cf2 LB 0x5c7 -> off=0x0 cb=0000000000000125 uValue=00000000000c3cf2 'vbe_biosfn_return_controller_information' +vbe_biosfn_return_controller_information: ; 0xc3cf2 LB 0x125 + push bp ; 55 ; 0xc3cf2 vbe.c:284 + mov bp, sp ; 89 e5 ; 0xc3cf3 + push cx ; 51 ; 0xc3cf5 + push si ; 56 ; 0xc3cf6 + push di ; 57 ; 0xc3cf7 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc3cf8 + mov si, ax ; 89 c6 ; 0xc3cfb + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc3cfd + mov di, bx ; 89 df ; 0xc3d00 + mov word [bp-00ch], strict word 00022h ; c7 46 f4 22 00 ; 0xc3d02 vbe.c:289 + call 005b7h ; e8 ad c8 ; 0xc3d07 vbe.c:292 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc3d0a + mov bx, di ; 89 fb ; 0xc3d0d vbe.c:295 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3d0f + mov word [bp-008h], ax ; 89 46 f8 ; 0xc3d12 + xor dx, dx ; 31 d2 ; 0xc3d15 vbe.c:298 + mov ax, 003b6h ; b8 b6 03 ; 0xc3d17 + call 03c08h ; e8 eb fe ; 0xc3d1a + cmp ax, 077cch ; 3d cc 77 ; 0xc3d1d vbe.c:299 + je short 03d2ch ; 74 0a ; 0xc3d20 + push SS ; 16 ; 0xc3d22 vbe.c:301 + pop ES ; 07 ; 0xc3d23 + mov word [es:si], 00100h ; 26 c7 04 00 01 ; 0xc3d24 + jmp near 03e0fh ; e9 e3 00 ; 0xc3d29 vbe.c:305 + mov cx, strict word 00004h ; b9 04 00 ; 0xc3d2c vbe.c:307 + mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xc3d2f vbe.c:314 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3d34 vbe.c:322 + cmp word [es:bx+002h], 03245h ; 26 81 7f 02 45 32 ; 0xc3d37 + jne short 03d46h ; 75 07 ; 0xc3d3d + cmp word [es:bx], 04256h ; 26 81 3f 56 42 ; 0xc3d3f + je short 03d55h ; 74 0f ; 0xc3d44 + cmp word [es:bx+002h], 04153h ; 26 81 7f 02 53 41 ; 0xc3d46 + jne short 03d5ah ; 75 0c ; 0xc3d4c + cmp word [es:bx], 04556h ; 26 81 3f 56 45 ; 0xc3d4e + jne short 03d5ah ; 75 05 ; 0xc3d53 + mov word [bp-00eh], strict word 00001h ; c7 46 f2 01 00 ; 0xc3d55 vbe.c:324 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3d5a vbe.c:332 + db 066h, 026h, 0c7h, 007h, 056h, 045h, 053h, 041h + ; mov dword [es:bx], strict dword 041534556h ; 66 26 c7 07 56 45 53 41 ; 0xc3d5d + mov word [es:bx+004h], 00200h ; 26 c7 47 04 00 02 ; 0xc3d65 vbe.c:338 + mov word [es:bx+006h], 07e02h ; 26 c7 47 06 02 7e ; 0xc3d6b vbe.c:341 + mov [es:bx+008h], ds ; 26 8c 5f 08 ; 0xc3d71 + db 066h, 026h, 0c7h, 047h, 00ah, 001h, 000h, 000h, 000h + ; mov dword [es:bx+00ah], strict dword 000000001h ; 66 26 c7 47 0a 01 00 00 00; 0xc3d75 vbe.c:344 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3d7e vbe.c:350 + mov word [es:bx+010h], ax ; 26 89 47 10 ; 0xc3d81 + lea ax, [di+022h] ; 8d 45 22 ; 0xc3d85 vbe.c:351 + mov word [es:bx+00eh], ax ; 26 89 47 0e ; 0xc3d88 + mov dx, strict word 0ffffh ; ba ff ff ; 0xc3d8c vbe.c:354 + mov ax, 003b6h ; b8 b6 03 ; 0xc3d8f + call 03c08h ; e8 73 fe ; 0xc3d92 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3d95 + mov word [es:bx+012h], ax ; 26 89 47 12 ; 0xc3d98 + cmp word [bp-00eh], strict byte 00000h ; 83 7e f2 00 ; 0xc3d9c vbe.c:356 + je short 03dc6h ; 74 24 ; 0xc3da0 + mov word [es:bx+014h], strict word 00003h ; 26 c7 47 14 03 00 ; 0xc3da2 vbe.c:359 + mov word [es:bx+016h], 07e17h ; 26 c7 47 16 17 7e ; 0xc3da8 vbe.c:360 + mov [es:bx+018h], ds ; 26 8c 5f 18 ; 0xc3dae + mov word [es:bx+01ah], 07e34h ; 26 c7 47 1a 34 7e ; 0xc3db2 vbe.c:361 + mov [es:bx+01ch], ds ; 26 8c 5f 1c ; 0xc3db8 + mov word [es:bx+01eh], 07e55h ; 26 c7 47 1e 55 7e ; 0xc3dbc vbe.c:362 + mov [es:bx+020h], ds ; 26 8c 5f 20 ; 0xc3dc2 + mov dx, cx ; 89 ca ; 0xc3dc6 vbe.c:369 + add dx, strict byte 0001bh ; 83 c2 1b ; 0xc3dc8 + mov ax, 003b6h ; b8 b6 03 ; 0xc3dcb + call 03c1ah ; e8 49 fe ; 0xc3dce + xor ah, ah ; 30 e4 ; 0xc3dd1 vbe.c:370 + cmp ax, word [bp-010h] ; 3b 46 f0 ; 0xc3dd3 + jnbe short 03defh ; 77 17 ; 0xc3dd6 + mov dx, cx ; 89 ca ; 0xc3dd8 vbe.c:372 + mov ax, 003b6h ; b8 b6 03 ; 0xc3dda + call 03c08h ; e8 28 fe ; 0xc3ddd + mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xc3de0 vbe.c:376 + add bx, di ; 01 fb ; 0xc3de3 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc3de5 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3de8 + add word [bp-00ch], strict byte 00002h ; 83 46 f4 02 ; 0xc3deb vbe.c:378 + add cx, strict byte 00044h ; 83 c1 44 ; 0xc3def vbe.c:380 + mov dx, cx ; 89 ca ; 0xc3df2 vbe.c:381 + mov ax, 003b6h ; b8 b6 03 ; 0xc3df4 + call 03c08h ; e8 0e fe ; 0xc3df7 + cmp ax, strict word 0ffffh ; 3d ff ff ; 0xc3dfa vbe.c:382 + jne short 03dc6h ; 75 c7 ; 0xc3dfd + add di, word [bp-00ch] ; 03 7e f4 ; 0xc3dff vbe.c:385 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc3e02 vbe.c:62 + mov word [es:di], ax ; 26 89 05 ; 0xc3e05 + push SS ; 16 ; 0xc3e08 vbe.c:386 + pop ES ; 07 ; 0xc3e09 + mov word [es:si], strict word 0004fh ; 26 c7 04 4f 00 ; 0xc3e0a + lea sp, [bp-006h] ; 8d 66 fa ; 0xc3e0f vbe.c:387 + pop di ; 5f ; 0xc3e12 + pop si ; 5e ; 0xc3e13 + pop cx ; 59 ; 0xc3e14 + pop bp ; 5d ; 0xc3e15 + retn ; c3 ; 0xc3e16 + ; disGetNextSymbol 0xc3e17 LB 0x4a2 -> off=0x0 cb=000000000000009b uValue=00000000000c3e17 'vbe_biosfn_return_mode_information' +vbe_biosfn_return_mode_information: ; 0xc3e17 LB 0x9b + push bp ; 55 ; 0xc3e17 vbe.c:399 + mov bp, sp ; 89 e5 ; 0xc3e18 + push si ; 56 ; 0xc3e1a + push di ; 57 ; 0xc3e1b + push ax ; 50 ; 0xc3e1c + push ax ; 50 ; 0xc3e1d + mov ax, dx ; 89 d0 ; 0xc3e1e + mov si, bx ; 89 de ; 0xc3e20 + mov bx, cx ; 89 cb ; 0xc3e22 + test dh, 040h ; f6 c6 40 ; 0xc3e24 vbe.c:410 + db 00fh, 095h, 0c2h + ; setne dl ; 0f 95 c2 ; 0xc3e27 + xor dh, dh ; 30 f6 ; 0xc3e2a + and ah, 001h ; 80 e4 01 ; 0xc3e2c vbe.c:411 + call 03c86h ; e8 54 fe ; 0xc3e2f vbe.c:413 + mov word [bp-006h], ax ; 89 46 fa ; 0xc3e32 + test ax, ax ; 85 c0 ; 0xc3e35 vbe.c:415 + je short 03ea0h ; 74 67 ; 0xc3e37 + mov cx, 00100h ; b9 00 01 ; 0xc3e39 vbe.c:420 + xor ax, ax ; 31 c0 ; 0xc3e3c + mov di, bx ; 89 df ; 0xc3e3e + mov es, si ; 8e c6 ; 0xc3e40 + jcxz 03e46h ; e3 02 ; 0xc3e42 + rep stosb ; f3 aa ; 0xc3e44 + xor cx, cx ; 31 c9 ; 0xc3e46 vbe.c:421 + jmp short 03e4fh ; eb 05 ; 0xc3e48 + cmp cx, strict byte 00042h ; 83 f9 42 ; 0xc3e4a + jnc short 03e68h ; 73 19 ; 0xc3e4d + mov dx, word [bp-006h] ; 8b 56 fa ; 0xc3e4f vbe.c:424 + inc dx ; 42 ; 0xc3e52 + inc dx ; 42 ; 0xc3e53 + add dx, cx ; 01 ca ; 0xc3e54 + mov ax, 003b6h ; b8 b6 03 ; 0xc3e56 + call 03c1ah ; e8 be fd ; 0xc3e59 + mov di, bx ; 89 df ; 0xc3e5c vbe.c:425 + add di, cx ; 01 cf ; 0xc3e5e + mov es, si ; 8e c6 ; 0xc3e60 vbe.c:52 + mov byte [es:di], al ; 26 88 05 ; 0xc3e62 + inc cx ; 41 ; 0xc3e65 vbe.c:426 + jmp short 03e4ah ; eb e2 ; 0xc3e66 + lea di, [bx+002h] ; 8d 7f 02 ; 0xc3e68 vbe.c:427 + mov es, si ; 8e c6 ; 0xc3e6b vbe.c:47 + mov al, byte [es:di] ; 26 8a 05 ; 0xc3e6d + test AL, strict byte 001h ; a8 01 ; 0xc3e70 vbe.c:428 + je short 03e84h ; 74 10 ; 0xc3e72 + lea di, [bx+00ch] ; 8d 7f 0c ; 0xc3e74 vbe.c:429 + mov word [es:di], 00629h ; 26 c7 05 29 06 ; 0xc3e77 vbe.c:62 + lea di, [bx+00eh] ; 8d 7f 0e ; 0xc3e7c vbe.c:431 + mov word [es:di], 0c000h ; 26 c7 05 00 c0 ; 0xc3e7f vbe.c:62 + mov ax, strict word 0000bh ; b8 0b 00 ; 0xc3e84 vbe.c:434 + mov dx, 001ceh ; ba ce 01 ; 0xc3e87 + call 00570h ; e8 e3 c6 ; 0xc3e8a + mov dx, 001cfh ; ba cf 01 ; 0xc3e8d vbe.c:435 + call 00577h ; e8 e4 c6 ; 0xc3e90 + add bx, strict byte 0002ah ; 83 c3 2a ; 0xc3e93 + mov es, si ; 8e c6 ; 0xc3e96 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3e98 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc3e9b vbe.c:437 + jmp short 03ea3h ; eb 03 ; 0xc3e9e vbe.c:438 + mov ax, 00100h ; b8 00 01 ; 0xc3ea0 vbe.c:442 + push SS ; 16 ; 0xc3ea3 vbe.c:445 + pop ES ; 07 ; 0xc3ea4 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc3ea5 + mov word [es:bx], ax ; 26 89 07 ; 0xc3ea8 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3eab vbe.c:446 + pop di ; 5f ; 0xc3eae + pop si ; 5e ; 0xc3eaf + pop bp ; 5d ; 0xc3eb0 + retn ; c3 ; 0xc3eb1 + ; disGetNextSymbol 0xc3eb2 LB 0x407 -> off=0x0 cb=00000000000000e5 uValue=00000000000c3eb2 'vbe_biosfn_set_mode' +vbe_biosfn_set_mode: ; 0xc3eb2 LB 0xe5 + push bp ; 55 ; 0xc3eb2 vbe.c:458 + mov bp, sp ; 89 e5 ; 0xc3eb3 + push si ; 56 ; 0xc3eb5 + push di ; 57 ; 0xc3eb6 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc3eb7 + mov si, ax ; 89 c6 ; 0xc3eba + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc3ebc + test byte [bp-009h], 040h ; f6 46 f7 40 ; 0xc3ebf vbe.c:466 + db 00fh, 095h, 0c0h + ; setne al ; 0f 95 c0 ; 0xc3ec3 + movzx dx, al ; 0f b6 d0 ; 0xc3ec6 + mov ax, dx ; 89 d0 ; 0xc3ec9 + test dx, dx ; 85 d2 ; 0xc3ecb vbe.c:467 + je short 03ed2h ; 74 03 ; 0xc3ecd + mov dx, strict word 00040h ; ba 40 00 ; 0xc3ecf + mov byte [bp-008h], dl ; 88 56 f8 ; 0xc3ed2 + test byte [bp-009h], 080h ; f6 46 f7 80 ; 0xc3ed5 vbe.c:468 + je short 03ee0h ; 74 05 ; 0xc3ed9 + mov dx, 00080h ; ba 80 00 ; 0xc3edb + jmp short 03ee2h ; eb 02 ; 0xc3ede + xor dx, dx ; 31 d2 ; 0xc3ee0 + mov byte [bp-006h], dl ; 88 56 fa ; 0xc3ee2 + and byte [bp-009h], 001h ; 80 66 f7 01 ; 0xc3ee5 vbe.c:470 + cmp word [bp-00ah], 00100h ; 81 7e f6 00 01 ; 0xc3ee9 vbe.c:473 + jnc short 03f02h ; 73 12 ; 0xc3eee + xor ax, ax ; 31 c0 ; 0xc3ef0 vbe.c:477 + call 005ddh ; e8 e8 c6 ; 0xc3ef2 + movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xc3ef5 vbe.c:481 + call 013ddh ; e8 e1 d4 ; 0xc3ef9 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc3efc vbe.c:482 + jmp near 03f8bh ; e9 89 00 ; 0xc3eff vbe.c:483 + mov dx, ax ; 89 c2 ; 0xc3f02 vbe.c:486 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3f04 + call 03c86h ; e8 7c fd ; 0xc3f07 + mov bx, ax ; 89 c3 ; 0xc3f0a + test ax, ax ; 85 c0 ; 0xc3f0c vbe.c:488 + je short 03f88h ; 74 78 ; 0xc3f0e + lea dx, [bx+014h] ; 8d 57 14 ; 0xc3f10 vbe.c:493 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f13 + call 03c08h ; e8 ef fc ; 0xc3f16 + mov cx, ax ; 89 c1 ; 0xc3f19 + lea dx, [bx+016h] ; 8d 57 16 ; 0xc3f1b vbe.c:494 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f1e + call 03c08h ; e8 e4 fc ; 0xc3f21 + mov di, ax ; 89 c7 ; 0xc3f24 + lea dx, [bx+01bh] ; 8d 57 1b ; 0xc3f26 vbe.c:495 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f29 + call 03c1ah ; e8 eb fc ; 0xc3f2c + mov bl, al ; 88 c3 ; 0xc3f2f + mov dl, al ; 88 c2 ; 0xc3f31 + xor ax, ax ; 31 c0 ; 0xc3f33 vbe.c:503 + call 005ddh ; e8 a5 c6 ; 0xc3f35 + cmp bl, 004h ; 80 fb 04 ; 0xc3f38 vbe.c:505 + jne short 03f43h ; 75 06 ; 0xc3f3b + mov ax, strict word 0006ah ; b8 6a 00 ; 0xc3f3d vbe.c:507 + call 013ddh ; e8 9a d4 ; 0xc3f40 + movzx ax, dl ; 0f b6 c2 ; 0xc3f43 vbe.c:510 + call 03b7fh ; e8 36 fc ; 0xc3f46 + mov ax, cx ; 89 c8 ; 0xc3f49 vbe.c:511 + call 03b28h ; e8 da fb ; 0xc3f4b + mov ax, di ; 89 f8 ; 0xc3f4e vbe.c:512 + call 03b47h ; e8 f4 fb ; 0xc3f50 + xor ax, ax ; 31 c0 ; 0xc3f53 vbe.c:513 + call 00603h ; e8 ab c6 ; 0xc3f55 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc3f58 vbe.c:514 + or AL, strict byte 001h ; 0c 01 ; 0xc3f5b + movzx dx, al ; 0f b6 d0 ; 0xc3f5d + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc3f60 + or ax, dx ; 09 d0 ; 0xc3f64 + call 005ddh ; e8 74 c6 ; 0xc3f66 + call 006d2h ; e8 66 c7 ; 0xc3f69 vbe.c:515 + mov bx, 000bah ; bb ba 00 ; 0xc3f6c vbe.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3f6f + mov es, ax ; 8e c0 ; 0xc3f72 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3f74 + mov word [es:bx], ax ; 26 89 07 ; 0xc3f77 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc3f7a vbe.c:518 + or AL, strict byte 060h ; 0c 60 ; 0xc3f7d + mov bx, 00087h ; bb 87 00 ; 0xc3f7f vbe.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3f82 + jmp near 03efch ; e9 74 ff ; 0xc3f85 + mov ax, 00100h ; b8 00 01 ; 0xc3f88 vbe.c:527 + push SS ; 16 ; 0xc3f8b vbe.c:531 + pop ES ; 07 ; 0xc3f8c + mov word [es:si], ax ; 26 89 04 ; 0xc3f8d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3f90 vbe.c:532 + pop di ; 5f ; 0xc3f93 + pop si ; 5e ; 0xc3f94 + pop bp ; 5d ; 0xc3f95 + retn ; c3 ; 0xc3f96 + ; disGetNextSymbol 0xc3f97 LB 0x322 -> off=0x0 cb=0000000000000008 uValue=00000000000c3f97 'vbe_biosfn_read_video_state_size' +vbe_biosfn_read_video_state_size: ; 0xc3f97 LB 0x8 + push bp ; 55 ; 0xc3f97 vbe.c:534 + mov bp, sp ; 89 e5 ; 0xc3f98 + mov ax, strict word 00012h ; b8 12 00 ; 0xc3f9a vbe.c:537 + pop bp ; 5d ; 0xc3f9d + retn ; c3 ; 0xc3f9e + ; disGetNextSymbol 0xc3f9f LB 0x31a -> off=0x0 cb=000000000000004b uValue=00000000000c3f9f 'vbe_biosfn_save_video_state' +vbe_biosfn_save_video_state: ; 0xc3f9f LB 0x4b + push bp ; 55 ; 0xc3f9f vbe.c:539 + mov bp, sp ; 89 e5 ; 0xc3fa0 + push bx ; 53 ; 0xc3fa2 + push cx ; 51 ; 0xc3fa3 + push si ; 56 ; 0xc3fa4 + mov si, ax ; 89 c6 ; 0xc3fa5 + mov bx, dx ; 89 d3 ; 0xc3fa7 + mov ax, strict word 00004h ; b8 04 00 ; 0xc3fa9 vbe.c:543 + mov dx, 001ceh ; ba ce 01 ; 0xc3fac + out DX, ax ; ef ; 0xc3faf + mov dx, 001cfh ; ba cf 01 ; 0xc3fb0 vbe.c:544 + in ax, DX ; ed ; 0xc3fb3 + mov es, si ; 8e c6 ; 0xc3fb4 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3fb6 + inc bx ; 43 ; 0xc3fb9 vbe.c:546 + inc bx ; 43 ; 0xc3fba + test AL, strict byte 001h ; a8 01 ; 0xc3fbb vbe.c:547 + je short 03fe2h ; 74 23 ; 0xc3fbd + mov cx, strict word 00001h ; b9 01 00 ; 0xc3fbf vbe.c:549 + jmp short 03fc9h ; eb 05 ; 0xc3fc2 + cmp cx, strict byte 00009h ; 83 f9 09 ; 0xc3fc4 + jnbe short 03fe2h ; 77 19 ; 0xc3fc7 + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc3fc9 vbe.c:550 + je short 03fdfh ; 74 11 ; 0xc3fcc + mov ax, cx ; 89 c8 ; 0xc3fce vbe.c:551 + mov dx, 001ceh ; ba ce 01 ; 0xc3fd0 + out DX, ax ; ef ; 0xc3fd3 + mov dx, 001cfh ; ba cf 01 ; 0xc3fd4 vbe.c:552 + in ax, DX ; ed ; 0xc3fd7 + mov es, si ; 8e c6 ; 0xc3fd8 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3fda + inc bx ; 43 ; 0xc3fdd vbe.c:553 + inc bx ; 43 ; 0xc3fde + inc cx ; 41 ; 0xc3fdf vbe.c:555 + jmp short 03fc4h ; eb e2 ; 0xc3fe0 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc3fe2 vbe.c:556 + pop si ; 5e ; 0xc3fe5 + pop cx ; 59 ; 0xc3fe6 + pop bx ; 5b ; 0xc3fe7 + pop bp ; 5d ; 0xc3fe8 + retn ; c3 ; 0xc3fe9 + ; disGetNextSymbol 0xc3fea LB 0x2cf -> off=0x0 cb=000000000000008f uValue=00000000000c3fea 'vbe_biosfn_restore_video_state' +vbe_biosfn_restore_video_state: ; 0xc3fea LB 0x8f + push bp ; 55 ; 0xc3fea vbe.c:559 + mov bp, sp ; 89 e5 ; 0xc3feb + push bx ; 53 ; 0xc3fed + push cx ; 51 ; 0xc3fee + push si ; 56 ; 0xc3fef + push ax ; 50 ; 0xc3ff0 + mov cx, ax ; 89 c1 ; 0xc3ff1 + mov bx, dx ; 89 d3 ; 0xc3ff3 + mov es, ax ; 8e c0 ; 0xc3ff5 vbe.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3ff7 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc3ffa + inc bx ; 43 ; 0xc3ffd vbe.c:564 + inc bx ; 43 ; 0xc3ffe + test byte [bp-008h], 001h ; f6 46 f8 01 ; 0xc3fff vbe.c:566 + jne short 04015h ; 75 10 ; 0xc4003 + mov ax, strict word 00004h ; b8 04 00 ; 0xc4005 vbe.c:567 + mov dx, 001ceh ; ba ce 01 ; 0xc4008 + out DX, ax ; ef ; 0xc400b + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc400c vbe.c:568 + mov dx, 001cfh ; ba cf 01 ; 0xc400f + out DX, ax ; ef ; 0xc4012 + jmp short 04071h ; eb 5c ; 0xc4013 vbe.c:569 + mov ax, strict word 00001h ; b8 01 00 ; 0xc4015 vbe.c:570 + mov dx, 001ceh ; ba ce 01 ; 0xc4018 + out DX, ax ; ef ; 0xc401b + mov ax, word [es:bx] ; 26 8b 07 ; 0xc401c vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc401f vbe.c:58 + out DX, ax ; ef ; 0xc4022 + inc bx ; 43 ; 0xc4023 vbe.c:572 + inc bx ; 43 ; 0xc4024 + mov ax, strict word 00002h ; b8 02 00 ; 0xc4025 + mov dx, 001ceh ; ba ce 01 ; 0xc4028 + out DX, ax ; ef ; 0xc402b + mov ax, word [es:bx] ; 26 8b 07 ; 0xc402c vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc402f vbe.c:58 + out DX, ax ; ef ; 0xc4032 + inc bx ; 43 ; 0xc4033 vbe.c:575 + inc bx ; 43 ; 0xc4034 + mov ax, strict word 00003h ; b8 03 00 ; 0xc4035 + mov dx, 001ceh ; ba ce 01 ; 0xc4038 + out DX, ax ; ef ; 0xc403b + mov ax, word [es:bx] ; 26 8b 07 ; 0xc403c vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc403f vbe.c:58 + out DX, ax ; ef ; 0xc4042 + inc bx ; 43 ; 0xc4043 vbe.c:578 + inc bx ; 43 ; 0xc4044 + mov ax, strict word 00004h ; b8 04 00 ; 0xc4045 + mov dx, 001ceh ; ba ce 01 ; 0xc4048 + out DX, ax ; ef ; 0xc404b + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc404c vbe.c:580 + mov dx, 001cfh ; ba cf 01 ; 0xc404f + out DX, ax ; ef ; 0xc4052 + mov si, strict word 00005h ; be 05 00 ; 0xc4053 vbe.c:582 + jmp short 0405dh ; eb 05 ; 0xc4056 + cmp si, strict byte 00009h ; 83 fe 09 ; 0xc4058 + jnbe short 04071h ; 77 14 ; 0xc405b + mov ax, si ; 89 f0 ; 0xc405d vbe.c:583 + mov dx, 001ceh ; ba ce 01 ; 0xc405f + out DX, ax ; ef ; 0xc4062 + mov es, cx ; 8e c1 ; 0xc4063 vbe.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc4065 + mov dx, 001cfh ; ba cf 01 ; 0xc4068 vbe.c:58 + out DX, ax ; ef ; 0xc406b + inc bx ; 43 ; 0xc406c vbe.c:585 + inc bx ; 43 ; 0xc406d + inc si ; 46 ; 0xc406e vbe.c:586 + jmp short 04058h ; eb e7 ; 0xc406f + lea sp, [bp-006h] ; 8d 66 fa ; 0xc4071 vbe.c:588 + pop si ; 5e ; 0xc4074 + pop cx ; 59 ; 0xc4075 + pop bx ; 5b ; 0xc4076 + pop bp ; 5d ; 0xc4077 + retn ; c3 ; 0xc4078 + ; disGetNextSymbol 0xc4079 LB 0x240 -> off=0x0 cb=000000000000008c uValue=00000000000c4079 'vbe_biosfn_save_restore_state' +vbe_biosfn_save_restore_state: ; 0xc4079 LB 0x8c + push bp ; 55 ; 0xc4079 vbe.c:604 + mov bp, sp ; 89 e5 ; 0xc407a + push si ; 56 ; 0xc407c + push di ; 57 ; 0xc407d + push ax ; 50 ; 0xc407e + mov si, ax ; 89 c6 ; 0xc407f + mov word [bp-006h], dx ; 89 56 fa ; 0xc4081 + mov ax, bx ; 89 d8 ; 0xc4084 + mov bx, word [bp+004h] ; 8b 5e 04 ; 0xc4086 + mov di, strict word 0004fh ; bf 4f 00 ; 0xc4089 vbe.c:609 + xor ah, ah ; 30 e4 ; 0xc408c vbe.c:610 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc408e + je short 040d8h ; 74 45 ; 0xc4091 + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc4093 + je short 040bch ; 74 24 ; 0xc4096 + test ax, ax ; 85 c0 ; 0xc4098 + jne short 040f4h ; 75 58 ; 0xc409a + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc409c vbe.c:612 + call 03024h ; e8 82 ef ; 0xc409f + mov cx, ax ; 89 c1 ; 0xc40a2 + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc40a4 vbe.c:616 + je short 040afh ; 74 05 ; 0xc40a8 + call 03f97h ; e8 ea fe ; 0xc40aa vbe.c:617 + add ax, cx ; 01 c8 ; 0xc40ad + add ax, strict word 0003fh ; 05 3f 00 ; 0xc40af vbe.c:618 + shr ax, 006h ; c1 e8 06 ; 0xc40b2 + push SS ; 16 ; 0xc40b5 + pop ES ; 07 ; 0xc40b6 + mov word [es:bx], ax ; 26 89 07 ; 0xc40b7 + jmp short 040f7h ; eb 3b ; 0xc40ba vbe.c:619 + push SS ; 16 ; 0xc40bc vbe.c:621 + pop ES ; 07 ; 0xc40bd + mov bx, word [es:bx] ; 26 8b 1f ; 0xc40be + mov dx, cx ; 89 ca ; 0xc40c1 vbe.c:622 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc40c3 + call 0305fh ; e8 96 ef ; 0xc40c6 + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc40c9 vbe.c:626 + je short 040f7h ; 74 28 ; 0xc40cd + mov dx, ax ; 89 c2 ; 0xc40cf vbe.c:627 + mov ax, cx ; 89 c8 ; 0xc40d1 + call 03f9fh ; e8 c9 fe ; 0xc40d3 + jmp short 040f7h ; eb 1f ; 0xc40d6 vbe.c:628 + push SS ; 16 ; 0xc40d8 vbe.c:630 + pop ES ; 07 ; 0xc40d9 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc40da + mov dx, cx ; 89 ca ; 0xc40dd vbe.c:631 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc40df + call 03335h ; e8 50 f2 ; 0xc40e2 + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc40e5 vbe.c:635 + je short 040f7h ; 74 0c ; 0xc40e9 + mov dx, ax ; 89 c2 ; 0xc40eb vbe.c:636 + mov ax, cx ; 89 c8 ; 0xc40ed + call 03feah ; e8 f8 fe ; 0xc40ef + jmp short 040f7h ; eb 03 ; 0xc40f2 vbe.c:637 + mov di, 00100h ; bf 00 01 ; 0xc40f4 vbe.c:640 + push SS ; 16 ; 0xc40f7 vbe.c:643 + pop ES ; 07 ; 0xc40f8 + mov word [es:si], di ; 26 89 3c ; 0xc40f9 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc40fc vbe.c:644 + pop di ; 5f ; 0xc40ff + pop si ; 5e ; 0xc4100 + pop bp ; 5d ; 0xc4101 + retn 00002h ; c2 02 00 ; 0xc4102 + ; disGetNextSymbol 0xc4105 LB 0x1b4 -> off=0x0 cb=00000000000000cf uValue=00000000000c4105 'vbe_biosfn_get_set_scanline_length' +vbe_biosfn_get_set_scanline_length: ; 0xc4105 LB 0xcf + push bp ; 55 ; 0xc4105 vbe.c:665 + mov bp, sp ; 89 e5 ; 0xc4106 + push si ; 56 ; 0xc4108 + push di ; 57 ; 0xc4109 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc410a + push ax ; 50 ; 0xc410d + mov di, dx ; 89 d7 ; 0xc410e + mov si, bx ; 89 de ; 0xc4110 + mov word [bp-008h], cx ; 89 4e f8 ; 0xc4112 + call 03b9eh ; e8 86 fa ; 0xc4115 vbe.c:674 + cmp AL, strict byte 00fh ; 3c 0f ; 0xc4118 vbe.c:675 + jne short 04121h ; 75 05 ; 0xc411a + mov cx, strict word 00010h ; b9 10 00 ; 0xc411c + jmp short 04124h ; eb 03 ; 0xc411f + movzx cx, al ; 0f b6 c8 ; 0xc4121 + call 03bd6h ; e8 af fa ; 0xc4124 vbe.c:676 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc4127 + mov word [bp-006h], strict word 0004fh ; c7 46 fa 4f 00 ; 0xc412a vbe.c:677 + push SS ; 16 ; 0xc412f vbe.c:678 + pop ES ; 07 ; 0xc4130 + mov bx, word [es:si] ; 26 8b 1c ; 0xc4131 + mov al, byte [es:di] ; 26 8a 05 ; 0xc4134 vbe.c:679 + cmp AL, strict byte 002h ; 3c 02 ; 0xc4137 vbe.c:683 + je short 04146h ; 74 0b ; 0xc4139 + cmp AL, strict byte 001h ; 3c 01 ; 0xc413b + je short 0416dh ; 74 2e ; 0xc413d + test al, al ; 84 c0 ; 0xc413f + je short 04168h ; 74 25 ; 0xc4141 + jmp near 041bdh ; e9 77 00 ; 0xc4143 + cmp cl, 004h ; 80 f9 04 ; 0xc4146 vbe.c:685 + jne short 04150h ; 75 05 ; 0xc4149 + sal bx, 003h ; c1 e3 03 ; 0xc414b vbe.c:686 + jmp short 04168h ; eb 18 ; 0xc414e vbe.c:687 + movzx ax, cl ; 0f b6 c1 ; 0xc4150 vbe.c:688 + cwd ; 99 ; 0xc4153 + sal dx, 003h ; c1 e2 03 ; 0xc4154 + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc4157 + sar ax, 003h ; c1 f8 03 ; 0xc4159 + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc415c + mov ax, bx ; 89 d8 ; 0xc415f + xor dx, dx ; 31 d2 ; 0xc4161 + div word [bp-00ch] ; f7 76 f4 ; 0xc4163 + mov bx, ax ; 89 c3 ; 0xc4166 + mov ax, bx ; 89 d8 ; 0xc4168 vbe.c:691 + call 03bb7h ; e8 4a fa ; 0xc416a + call 03bd6h ; e8 66 fa ; 0xc416d vbe.c:694 + mov bx, ax ; 89 c3 ; 0xc4170 + push SS ; 16 ; 0xc4172 vbe.c:695 + pop ES ; 07 ; 0xc4173 + mov word [es:si], ax ; 26 89 04 ; 0xc4174 + cmp cl, 004h ; 80 f9 04 ; 0xc4177 vbe.c:696 + jne short 04181h ; 75 05 ; 0xc417a + shr bx, 003h ; c1 eb 03 ; 0xc417c vbe.c:697 + jmp short 04190h ; eb 0f ; 0xc417f vbe.c:698 + movzx ax, cl ; 0f b6 c1 ; 0xc4181 vbe.c:699 + cwd ; 99 ; 0xc4184 + sal dx, 003h ; c1 e2 03 ; 0xc4185 + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc4188 + sar ax, 003h ; c1 f8 03 ; 0xc418a + imul bx, ax ; 0f af d8 ; 0xc418d + add bx, strict byte 00003h ; 83 c3 03 ; 0xc4190 vbe.c:700 + and bl, 0fch ; 80 e3 fc ; 0xc4193 + push SS ; 16 ; 0xc4196 vbe.c:701 + pop ES ; 07 ; 0xc4197 + mov word [es:di], bx ; 26 89 1d ; 0xc4198 + call 03befh ; e8 51 fa ; 0xc419b vbe.c:702 + push SS ; 16 ; 0xc419e + pop ES ; 07 ; 0xc419f + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc41a0 + mov word [es:bx], ax ; 26 89 07 ; 0xc41a3 + call 03b66h ; e8 bd f9 ; 0xc41a6 vbe.c:703 + push SS ; 16 ; 0xc41a9 + pop ES ; 07 ; 0xc41aa + cmp ax, word [es:bx] ; 26 3b 07 ; 0xc41ab + jbe short 041c2h ; 76 12 ; 0xc41ae + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc41b0 vbe.c:704 + call 03bb7h ; e8 01 fa ; 0xc41b3 + mov word [bp-006h], 00200h ; c7 46 fa 00 02 ; 0xc41b6 vbe.c:705 + jmp short 041c2h ; eb 05 ; 0xc41bb vbe.c:707 + mov word [bp-006h], 00100h ; c7 46 fa 00 01 ; 0xc41bd vbe.c:710 + push SS ; 16 ; 0xc41c2 vbe.c:713 + pop ES ; 07 ; 0xc41c3 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc41c4 + mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xc41c7 + mov word [es:bx], ax ; 26 89 07 ; 0xc41ca + lea sp, [bp-004h] ; 8d 66 fc ; 0xc41cd vbe.c:714 + pop di ; 5f ; 0xc41d0 + pop si ; 5e ; 0xc41d1 + pop bp ; 5d ; 0xc41d2 + retn ; c3 ; 0xc41d3 + ; disGetNextSymbol 0xc41d4 LB 0xe5 -> off=0x0 cb=00000000000000e5 uValue=00000000000c41d4 'private_biosfn_custom_mode' +private_biosfn_custom_mode: ; 0xc41d4 LB 0xe5 + push bp ; 55 ; 0xc41d4 vbe.c:740 + mov bp, sp ; 89 e5 ; 0xc41d5 + push si ; 56 ; 0xc41d7 + push di ; 57 ; 0xc41d8 + push ax ; 50 ; 0xc41d9 + push ax ; 50 ; 0xc41da + push ax ; 50 ; 0xc41db + mov si, dx ; 89 d6 ; 0xc41dc + mov dx, cx ; 89 ca ; 0xc41de + mov di, strict word 0004fh ; bf 4f 00 ; 0xc41e0 vbe.c:753 + push SS ; 16 ; 0xc41e3 vbe.c:754 + pop ES ; 07 ; 0xc41e4 + mov al, byte [es:si] ; 26 8a 04 ; 0xc41e5 + test al, al ; 84 c0 ; 0xc41e8 vbe.c:755 + jne short 0420eh ; 75 22 ; 0xc41ea + push SS ; 16 ; 0xc41ec vbe.c:757 + pop ES ; 07 ; 0xc41ed + mov cx, word [es:bx] ; 26 8b 0f ; 0xc41ee + mov bx, dx ; 89 d3 ; 0xc41f1 vbe.c:758 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc41f3 + mov ax, word [es:si] ; 26 8b 04 ; 0xc41f6 vbe.c:759 + shr ax, 008h ; c1 e8 08 ; 0xc41f9 + and ax, strict word 0007fh ; 25 7f 00 ; 0xc41fc + mov byte [bp-008h], al ; 88 46 f8 ; 0xc41ff + cmp AL, strict byte 008h ; 3c 08 ; 0xc4202 vbe.c:764 + je short 04214h ; 74 0e ; 0xc4204 + cmp AL, strict byte 010h ; 3c 10 ; 0xc4206 + je short 04214h ; 74 0a ; 0xc4208 + cmp AL, strict byte 020h ; 3c 20 ; 0xc420a + je short 04214h ; 74 06 ; 0xc420c + mov di, 00100h ; bf 00 01 ; 0xc420e vbe.c:765 + jmp near 042aah ; e9 96 00 ; 0xc4211 vbe.c:766 + push SS ; 16 ; 0xc4214 vbe.c:770 + pop ES ; 07 ; 0xc4215 + test byte [es:si+001h], 080h ; 26 f6 44 01 80 ; 0xc4216 + je short 04222h ; 74 05 ; 0xc421b + mov ax, strict word 00040h ; b8 40 00 ; 0xc421d + jmp short 04224h ; eb 02 ; 0xc4220 + xor ax, ax ; 31 c0 ; 0xc4222 + mov byte [bp-006h], al ; 88 46 fa ; 0xc4224 + cmp cx, 00280h ; 81 f9 80 02 ; 0xc4227 vbe.c:773 + jnc short 04232h ; 73 05 ; 0xc422b + mov cx, 00280h ; b9 80 02 ; 0xc422d vbe.c:774 + jmp short 0423bh ; eb 09 ; 0xc4230 vbe.c:775 + cmp cx, 00a00h ; 81 f9 00 0a ; 0xc4232 + jbe short 0423bh ; 76 03 ; 0xc4236 + mov cx, 00a00h ; b9 00 0a ; 0xc4238 vbe.c:776 + cmp bx, 001e0h ; 81 fb e0 01 ; 0xc423b vbe.c:777 + jnc short 04246h ; 73 05 ; 0xc423f + mov bx, 001e0h ; bb e0 01 ; 0xc4241 vbe.c:778 + jmp short 0424fh ; eb 09 ; 0xc4244 vbe.c:779 + cmp bx, 00780h ; 81 fb 80 07 ; 0xc4246 + jbe short 0424fh ; 76 03 ; 0xc424a + mov bx, 00780h ; bb 80 07 ; 0xc424c vbe.c:780 + mov dx, strict word 0ffffh ; ba ff ff ; 0xc424f vbe.c:786 + mov ax, 003b6h ; b8 b6 03 ; 0xc4252 + call 03c08h ; e8 b0 f9 ; 0xc4255 + mov si, ax ; 89 c6 ; 0xc4258 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc425a vbe.c:789 + cwd ; 99 ; 0xc425e + sal dx, 003h ; c1 e2 03 ; 0xc425f + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc4262 + sar ax, 003h ; c1 f8 03 ; 0xc4264 + imul ax, cx ; 0f af c1 ; 0xc4267 + add ax, strict word 00003h ; 05 03 00 ; 0xc426a vbe.c:790 + and AL, strict byte 0fch ; 24 fc ; 0xc426d + mov dx, bx ; 89 da ; 0xc426f vbe.c:792 + mul dx ; f7 e2 ; 0xc4271 + cmp dx, si ; 39 f2 ; 0xc4273 vbe.c:794 + jnbe short 0427dh ; 77 06 ; 0xc4275 + jne short 04282h ; 75 09 ; 0xc4277 + test ax, ax ; 85 c0 ; 0xc4279 + jbe short 04282h ; 76 05 ; 0xc427b + mov di, 00200h ; bf 00 02 ; 0xc427d vbe.c:796 + jmp short 042aah ; eb 28 ; 0xc4280 vbe.c:797 + xor ax, ax ; 31 c0 ; 0xc4282 vbe.c:801 + call 005ddh ; e8 56 c3 ; 0xc4284 + movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xc4287 vbe.c:802 + call 03b7fh ; e8 f1 f8 ; 0xc428b + mov ax, cx ; 89 c8 ; 0xc428e vbe.c:803 + call 03b28h ; e8 95 f8 ; 0xc4290 + mov ax, bx ; 89 d8 ; 0xc4293 vbe.c:804 + call 03b47h ; e8 af f8 ; 0xc4295 + xor ax, ax ; 31 c0 ; 0xc4298 vbe.c:805 + call 00603h ; e8 66 c3 ; 0xc429a + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc429d vbe.c:806 + or AL, strict byte 001h ; 0c 01 ; 0xc42a0 + xor ah, ah ; 30 e4 ; 0xc42a2 + call 005ddh ; e8 36 c3 ; 0xc42a4 + call 006d2h ; e8 28 c4 ; 0xc42a7 vbe.c:807 + push SS ; 16 ; 0xc42aa vbe.c:815 + pop ES ; 07 ; 0xc42ab + mov bx, word [bp-00ah] ; 8b 5e f6 ; 0xc42ac + mov word [es:bx], di ; 26 89 3f ; 0xc42af + lea sp, [bp-004h] ; 8d 66 fc ; 0xc42b2 vbe.c:816 + pop di ; 5f ; 0xc42b5 + pop si ; 5e ; 0xc42b6 + pop bp ; 5d ; 0xc42b7 + retn ; c3 ; 0xc42b8 + + ; Padding 0x387 bytes at 0xc42b9 + times 903 db 0 + +section VBE32 progbits vstart=0x4640 align=1 ; size=0x115 class=CODE group=AUTO + ; disGetNextSymbol 0xc4640 LB 0x115 -> off=0x0 cb=0000000000000114 uValue=00000000000c0000 'vesa_pm_start' +vesa_pm_start: ; 0xc4640 LB 0x114 + sbb byte [bx+si], al ; 18 00 ; 0xc4640 + dec di ; 4f ; 0xc4642 + add byte [bx+si], dl ; 00 10 ; 0xc4643 + add word [bx+si], cx ; 01 08 ; 0xc4645 + add dh, cl ; 00 ce ; 0xc4647 + add di, cx ; 01 cf ; 0xc4649 + add di, cx ; 01 cf ; 0xc464b + add ax, dx ; 01 d0 ; 0xc464d + add word [bp-048fdh], si ; 01 b6 03 b7 ; 0xc464f + db 003h, 0ffh + ; add di, di ; 03 ff ; 0xc4653 + db 0ffh + db 0ffh + jmp word [bp-07dh] ; ff 66 83 ; 0xc4657 + sti ; fb ; 0xc465a + add byte [si+005h], dh ; 00 74 05 ; 0xc465b + mov eax, strict dword 066c30100h ; 66 b8 00 01 c3 66 ; 0xc465e vberom.asm:825 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc4664 + push edx ; 66 52 ; 0xc4666 vberom.asm:829 + push eax ; 66 50 ; 0xc4668 vberom.asm:830 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc466a vberom.asm:831 + add ax, 06600h ; 05 00 66 ; 0xc4670 + out DX, ax ; ef ; 0xc4673 + pop eax ; 66 58 ; 0xc4674 vberom.asm:834 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc4676 vberom.asm:835 + in eax, DX ; 66 ed ; 0xc467c vberom.asm:837 + pop edx ; 66 5a ; 0xc467e vberom.asm:838 + db 066h, 03bh, 0d0h + ; cmp edx, eax ; 66 3b d0 ; 0xc4680 vberom.asm:839 + jne short 0468ah ; 75 05 ; 0xc4683 vberom.asm:840 + mov eax, strict dword 066c3004fh ; 66 b8 4f 00 c3 66 ; 0xc4685 vberom.asm:841 + mov ax, 0014fh ; b8 4f 01 ; 0xc468b + retn ; c3 ; 0xc468e vberom.asm:845 + cmp bl, 080h ; 80 fb 80 ; 0xc468f vberom.asm:847 + je short 0469eh ; 74 0a ; 0xc4692 vberom.asm:848 + cmp bl, 000h ; 80 fb 00 ; 0xc4694 vberom.asm:849 + je short 046aeh ; 74 15 ; 0xc4697 vberom.asm:850 + mov eax, strict dword 052c30100h ; 66 b8 00 01 c3 52 ; 0xc4699 vberom.asm:851 + mov edx, strict dword 0a8ec03dah ; 66 ba da 03 ec a8 ; 0xc469f vberom.asm:855 + or byte [di-005h], dh ; 08 75 fb ; 0xc46a5 + in AL, DX ; ec ; 0xc46a8 vberom.asm:861 + test AL, strict byte 008h ; a8 08 ; 0xc46a9 vberom.asm:862 + je short 046a8h ; 74 fb ; 0xc46ab vberom.asm:863 + pop dx ; 5a ; 0xc46ad vberom.asm:864 + push ax ; 50 ; 0xc46ae vberom.asm:868 + push cx ; 51 ; 0xc46af vberom.asm:869 + push dx ; 52 ; 0xc46b0 vberom.asm:870 + push si ; 56 ; 0xc46b1 vberom.asm:871 + push di ; 57 ; 0xc46b2 vberom.asm:872 + sal dx, 010h ; c1 e2 10 ; 0xc46b3 vberom.asm:873 + and cx, strict word 0ffffh ; 81 e1 ff ff ; 0xc46b6 vberom.asm:874 + add byte [bx+si], al ; 00 00 ; 0xc46ba + db 00bh, 0cah + ; or cx, dx ; 0b ca ; 0xc46bc vberom.asm:875 + sal cx, 002h ; c1 e1 02 ; 0xc46be vberom.asm:876 + db 08bh, 0c1h + ; mov ax, cx ; 8b c1 ; 0xc46c1 vberom.asm:877 + push ax ; 50 ; 0xc46c3 vberom.asm:878 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc46c4 vberom.asm:879 + push ES ; 06 ; 0xc46ca + add byte [bp-011h], ah ; 00 66 ef ; 0xc46cb + mov edx, strict dword 0ed6601cfh ; 66 ba cf 01 66 ed ; 0xc46ce vberom.asm:882 + db 00fh, 0b7h, 0c8h + ; movzx cx, ax ; 0f b7 c8 ; 0xc46d4 vberom.asm:884 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc46d7 vberom.asm:885 + add ax, word [bx+si] ; 03 00 ; 0xc46dd + out DX, eax ; 66 ef ; 0xc46df vberom.asm:887 + mov edx, strict dword 0ed6601cfh ; 66 ba cf 01 66 ed ; 0xc46e1 vberom.asm:888 + db 00fh, 0b7h, 0f0h + ; movzx si, ax ; 0f b7 f0 ; 0xc46e7 vberom.asm:890 + pop ax ; 58 ; 0xc46ea vberom.asm:891 + cmp si, strict byte 00004h ; 83 fe 04 ; 0xc46eb vberom.asm:893 + je short 04707h ; 74 17 ; 0xc46ee vberom.asm:894 + add si, strict byte 00007h ; 83 c6 07 ; 0xc46f0 vberom.asm:895 + shr si, 003h ; c1 ee 03 ; 0xc46f3 vberom.asm:896 + imul cx, si ; 0f af ce ; 0xc46f6 vberom.asm:897 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc46f9 vberom.asm:898 + div cx ; f7 f1 ; 0xc46fb vberom.asm:899 + db 08bh, 0f8h + ; mov di, ax ; 8b f8 ; 0xc46fd vberom.asm:900 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc46ff vberom.asm:901 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc4701 vberom.asm:902 + div si ; f7 f6 ; 0xc4703 vberom.asm:903 + jmp short 04713h ; eb 0c ; 0xc4705 vberom.asm:904 + shr cx, 1 ; d1 e9 ; 0xc4707 vberom.asm:907 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc4709 vberom.asm:908 + div cx ; f7 f1 ; 0xc470b vberom.asm:909 + db 08bh, 0f8h + ; mov di, ax ; 8b f8 ; 0xc470d vberom.asm:910 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc470f vberom.asm:911 + sal ax, 1 ; d1 e0 ; 0xc4711 vberom.asm:912 + push edx ; 66 52 ; 0xc4713 vberom.asm:915 + push eax ; 66 50 ; 0xc4715 vberom.asm:916 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc4717 vberom.asm:917 + or byte [bx+si], al ; 08 00 ; 0xc471d + out DX, eax ; 66 ef ; 0xc471f vberom.asm:919 + pop eax ; 66 58 ; 0xc4721 vberom.asm:920 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc4723 vberom.asm:921 + pop edx ; 66 5a ; 0xc4729 vberom.asm:923 + db 066h, 08bh, 0c7h + ; mov eax, edi ; 66 8b c7 ; 0xc472b vberom.asm:925 + push edx ; 66 52 ; 0xc472e vberom.asm:926 + push eax ; 66 50 ; 0xc4730 vberom.asm:927 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc4732 vberom.asm:928 + or word [bx+si], ax ; 09 00 ; 0xc4738 + out DX, eax ; 66 ef ; 0xc473a vberom.asm:930 + pop eax ; 66 58 ; 0xc473c vberom.asm:931 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc473e vberom.asm:932 + pop edx ; 66 5a ; 0xc4744 vberom.asm:934 + pop di ; 5f ; 0xc4746 vberom.asm:936 + pop si ; 5e ; 0xc4747 vberom.asm:937 + pop dx ; 5a ; 0xc4748 vberom.asm:938 + pop cx ; 59 ; 0xc4749 vberom.asm:939 + pop ax ; 58 ; 0xc474a vberom.asm:940 + mov eax, strict dword 066c3004fh ; 66 b8 4f 00 c3 66 ; 0xc474b vberom.asm:941 + mov ax, 0014fh ; b8 4f 01 ; 0xc4751 + ; disGetNextSymbol 0xc4754 LB 0x1 -> off=0x0 cb=0000000000000001 uValue=0000000000000114 'vesa_pm_end' +vesa_pm_end: ; 0xc4754 LB 0x1 + retn ; c3 ; 0xc4754 vberom.asm:946 + + ; Padding 0x2b bytes at 0xc4755 + times 43 db 0 + +section _DATA progbits vstart=0x4780 align=1 ; size=0x374d class=DATA group=DGROUP + ; disGetNextSymbol 0xc4780 LB 0x374d -> off=0x0 cb=000000000000002f uValue=00000000000c0000 '_msg_vga_init' +_msg_vga_init: ; 0xc4780 LB 0x2f + db 'Oracle VM VirtualBox Version 7.0.14 VGA BIOS', 00dh, 00ah, 000h + ; disGetNextSymbol 0xc47af LB 0x371e -> off=0x0 cb=0000000000000080 uValue=00000000000c002f 'vga_modes' +vga_modes: ; 0xc47af LB 0x80 + db 000h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 001h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h + db 002h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 003h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h + db 004h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h, 005h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h + db 006h, 001h, 002h, 001h, 000h, 0b8h, 0ffh, 001h, 007h, 000h, 001h, 004h, 000h, 0b0h, 0ffh, 000h + db 00dh, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 001h, 00eh, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 001h + db 00fh, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 000h, 010h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + db 011h, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 002h, 012h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + db 013h, 001h, 005h, 008h, 000h, 0a0h, 0ffh, 003h, 06ah, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + ; disGetNextSymbol 0xc482f LB 0x369e -> off=0x0 cb=0000000000000010 uValue=00000000000c00af 'line_to_vpti' +line_to_vpti: ; 0xc482f LB 0x10 + db 017h, 017h, 018h, 018h, 004h, 005h, 006h, 007h, 00dh, 00eh, 011h, 012h, 01ah, 01bh, 01ch, 01dh + ; disGetNextSymbol 0xc483f LB 0x368e -> off=0x0 cb=0000000000000004 uValue=00000000000c00bf 'dac_regs' +dac_regs: ; 0xc483f LB 0x4 + dd 0ff3f3f3fh + ; disGetNextSymbol 0xc4843 LB 0x368a -> off=0x0 cb=0000000000000780 uValue=00000000000c00c3 'video_param_table' +video_param_table: ; 0xc4843 LB 0x780 + db 028h, 018h, 008h, 000h, 008h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 008h, 000h, 008h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 008h, 000h, 010h, 001h, 003h, 000h, 002h, 063h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 008h, 000h, 010h, 001h, 003h, 000h, 002h, 063h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 008h, 000h, 040h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0a2h, 0ffh, 000h, 013h, 015h, 017h, 002h, 004h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 003h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 00fh, 00fh, 0ffh + db 028h, 018h, 008h, 000h, 040h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0a2h, 0ffh, 000h, 013h, 015h, 017h, 002h, 004h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 003h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 00fh, 00fh, 0ffh + db 050h, 018h, 008h, 000h, 040h, 001h, 001h, 000h, 006h, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 000h, 096h + db 0b9h, 0c2h, 0ffh, 000h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h + db 017h, 017h, 017h, 001h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 00dh, 00fh, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 000h, 003h, 000h, 003h, 0a6h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00dh, 063h + db 0bah, 0a3h, 0ffh, 000h, 008h, 008h, 008h, 008h, 008h, 008h, 008h, 010h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 00eh, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00ah, 000h, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 028h, 018h, 008h, 000h, 020h, 009h, 00fh, 000h, 006h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 018h, 008h, 000h, 040h, 001h, 00fh, 000h, 006h, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 000h, 096h + db 0b9h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 050h, 018h, 00eh, 000h, 080h, 001h, 00fh, 000h, 006h, 0a3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00fh, 063h + db 0bah, 0e3h, 0ffh, 000h, 008h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 008h, 000h, 000h, 000h + db 018h, 000h, 000h, 001h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 018h, 00eh, 000h, 080h, 001h, 00fh, 000h, 006h, 0a3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00fh, 063h + db 0bah, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 028h, 018h, 00eh, 000h, 008h, 009h, 003h, 000h, 002h, 0a3h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 014h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 00eh, 000h, 008h, 009h, 003h, 000h, 002h, 0a3h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 014h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 001h, 003h, 000h, 002h, 0a3h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 001h, 003h, 000h, 002h, 0a3h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 010h, 000h, 008h, 008h, 003h, 000h, 002h, 067h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 00ch, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 00fh, 0ffh + db 050h, 018h, 010h, 000h, 010h, 000h, 003h, 000h, 002h, 067h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 00ch, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 00fh, 0ffh + db 050h, 018h, 010h, 000h, 010h, 000h, 003h, 000h, 002h, 066h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 00fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 008h, 008h, 008h, 008h, 008h, 008h, 008h, 010h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 00eh, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00ah, 00fh, 0ffh + db 050h, 01dh, 010h, 000h, 0a0h, 001h, 00fh, 000h, 006h, 0e3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 00bh, 03eh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 0eah, 08ch, 0dfh, 028h, 000h, 0e7h + db 004h, 0c3h, 0ffh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h + db 03fh, 000h, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 01dh, 010h, 000h, 0a0h, 001h, 00fh, 000h, 006h, 0e3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 00bh, 03eh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 0eah, 08ch, 0dfh, 028h, 000h, 0e7h + db 004h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 028h, 018h, 008h, 000h, 020h, 001h, 00fh, 000h, 00eh, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 041h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 040h, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 008h, 009h, 00ah, 00bh, 00ch + db 00dh, 00eh, 00fh, 041h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 040h, 005h, 00fh, 0ffh + db 064h, 024h, 010h, 000h, 000h, 001h, 00fh, 000h, 006h, 0e3h, 07fh, 063h, 063h, 083h, 06bh, 01bh + db 072h, 0f0h, 000h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 059h, 08dh, 057h, 032h, 000h, 057h + db 073h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + ; disGetNextSymbol 0xc4fc3 LB 0x2f0a -> off=0x0 cb=00000000000000c0 uValue=00000000000c0843 'palette0' +palette0: ; 0xc4fc3 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5083 LB 0x2e4a -> off=0x0 cb=00000000000000c0 uValue=00000000000c0903 'palette1' +palette1: ; 0xc5083 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah + db 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah + db 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh + db 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah + db 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah + db 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh + db 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5143 LB 0x2d8a -> off=0x0 cb=00000000000000c0 uValue=00000000000c09c3 'palette2' +palette2: ; 0xc5143 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 02ah, 000h, 02ah, 02ah, 02ah, 000h, 000h, 015h, 000h, 000h, 03fh, 000h, 02ah + db 015h, 000h, 02ah, 03fh, 02ah, 000h, 015h, 02ah, 000h, 03fh, 02ah, 02ah, 015h, 02ah, 02ah, 03fh + db 000h, 015h, 000h, 000h, 015h, 02ah, 000h, 03fh, 000h, 000h, 03fh, 02ah, 02ah, 015h, 000h, 02ah + db 015h, 02ah, 02ah, 03fh, 000h, 02ah, 03fh, 02ah, 000h, 015h, 015h, 000h, 015h, 03fh, 000h, 03fh + db 015h, 000h, 03fh, 03fh, 02ah, 015h, 015h, 02ah, 015h, 03fh, 02ah, 03fh, 015h, 02ah, 03fh, 03fh + db 015h, 000h, 000h, 015h, 000h, 02ah, 015h, 02ah, 000h, 015h, 02ah, 02ah, 03fh, 000h, 000h, 03fh + db 000h, 02ah, 03fh, 02ah, 000h, 03fh, 02ah, 02ah, 015h, 000h, 015h, 015h, 000h, 03fh, 015h, 02ah + db 015h, 015h, 02ah, 03fh, 03fh, 000h, 015h, 03fh, 000h, 03fh, 03fh, 02ah, 015h, 03fh, 02ah, 03fh + db 015h, 015h, 000h, 015h, 015h, 02ah, 015h, 03fh, 000h, 015h, 03fh, 02ah, 03fh, 015h, 000h, 03fh + db 015h, 02ah, 03fh, 03fh, 000h, 03fh, 03fh, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5203 LB 0x2cca -> off=0x0 cb=0000000000000300 uValue=00000000000c0a83 'palette3' +palette3: ; 0xc5203 LB 0x300 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 005h, 005h, 005h, 008h, 008h, 008h, 00bh, 00bh, 00bh, 00eh, 00eh, 00eh, 011h + db 011h, 011h, 014h, 014h, 014h, 018h, 018h, 018h, 01ch, 01ch, 01ch, 020h, 020h, 020h, 024h, 024h + db 024h, 028h, 028h, 028h, 02dh, 02dh, 02dh, 032h, 032h, 032h, 038h, 038h, 038h, 03fh, 03fh, 03fh + db 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh, 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h, 03fh, 03fh + db 000h, 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh + db 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h, 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 000h + db 000h, 03fh, 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh, 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h + db 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh, 02fh, 01fh + db 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 03fh, 03fh, 01fh, 037h, 03fh, 01fh, 02fh, 03fh, 01fh, 027h + db 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh, 02fh, 01fh, 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 037h + db 03fh, 01fh, 02fh, 03fh, 01fh, 027h, 03fh, 01fh, 01fh, 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh + db 02fh, 01fh, 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 037h, 03fh, 01fh, 02fh, 03fh, 01fh, 027h, 03fh + db 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h, 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh, 03fh, 03fh + db 02dh, 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h + db 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh, 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 02dh + db 02dh, 03fh, 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h, 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh + db 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 000h, 000h, 01ch, 007h, 000h, 01ch, 00eh, 000h + db 01ch, 015h, 000h, 01ch, 01ch, 000h, 01ch, 01ch, 000h, 015h, 01ch, 000h, 00eh, 01ch, 000h, 007h + db 01ch, 000h, 000h, 01ch, 007h, 000h, 01ch, 00eh, 000h, 01ch, 015h, 000h, 01ch, 01ch, 000h, 015h + db 01ch, 000h, 00eh, 01ch, 000h, 007h, 01ch, 000h, 000h, 01ch, 000h, 000h, 01ch, 007h, 000h, 01ch + db 00eh, 000h, 01ch, 015h, 000h, 01ch, 01ch, 000h, 015h, 01ch, 000h, 00eh, 01ch, 000h, 007h, 01ch + db 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h, 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh, 01ch, 01ch + db 00eh, 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h + db 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh, 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 00eh + db 00eh, 01ch, 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h, 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh + db 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch, 018h, 014h + db 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ch, 01ch, 014h, 01ah, 01ch, 014h, 018h, 01ch, 014h, 016h + db 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch, 018h, 014h, 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ah + db 01ch, 014h, 018h, 01ch, 014h, 016h, 01ch, 014h, 014h, 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch + db 018h, 014h, 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ah, 01ch, 014h, 018h, 01ch, 014h, 016h, 01ch + db 000h, 000h, 010h, 004h, 000h, 010h, 008h, 000h, 010h, 00ch, 000h, 010h, 010h, 000h, 010h, 010h + db 000h, 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 000h, 000h, 010h, 004h, 000h, 010h, 008h + db 000h, 010h, 00ch, 000h, 010h, 010h, 000h, 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 000h + db 000h, 010h, 000h, 000h, 010h, 004h, 000h, 010h, 008h, 000h, 010h, 00ch, 000h, 010h, 010h, 000h + db 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 008h, 008h, 010h, 00ah, 008h, 010h, 00ch, 008h + db 010h, 00eh, 008h, 010h, 010h, 008h, 010h, 010h, 008h, 00eh, 010h, 008h, 00ch, 010h, 008h, 00ah + db 010h, 008h, 008h, 010h, 00ah, 008h, 010h, 00ch, 008h, 010h, 00eh, 008h, 010h, 010h, 008h, 00eh + db 010h, 008h, 00ch, 010h, 008h, 00ah, 010h, 008h, 008h, 010h, 008h, 008h, 010h, 00ah, 008h, 010h + db 00ch, 008h, 010h, 00eh, 008h, 010h, 010h, 008h, 00eh, 010h, 008h, 00ch, 010h, 008h, 00ah, 010h + db 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh, 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh, 010h, 010h + db 00bh, 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh + db 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh, 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 00bh + db 00bh, 010h, 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh, 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh + db 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5503 LB 0x29ca -> off=0x0 cb=0000000000000010 uValue=00000000000c0d83 'static_functionality' +static_functionality: ; 0xc5503 LB 0x10 + db 0ffh, 0e0h, 00fh, 000h, 000h, 000h, 000h, 007h, 002h, 008h, 0e7h, 00ch, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5513 LB 0x29ba -> off=0x0 cb=0000000000000024 uValue=00000000000c0d93 '_dcc_table' +_dcc_table: ; 0xc5513 LB 0x24 + db 010h, 001h, 007h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5537 LB 0x2996 -> off=0x0 cb=000000000000001a uValue=00000000000c0db7 '_secondary_save_area' +_secondary_save_area: ; 0xc5537 LB 0x1a + db 01ah, 000h, 013h, 055h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5551 LB 0x297c -> off=0x0 cb=000000000000001c uValue=00000000000c0dd1 '_video_save_pointer_table' +_video_save_pointer_table: ; 0xc5551 LB 0x1c + db 043h, 048h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 037h, 055h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc556d LB 0x2960 -> off=0x0 cb=0000000000000800 uValue=00000000000c0ded 'vgafont8' +vgafont8: ; 0xc556d LB 0x800 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 081h, 0a5h, 081h, 0bdh, 099h, 081h, 07eh + db 07eh, 0ffh, 0dbh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 06ch, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h + db 010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 038h, 07ch, 038h, 0feh, 0feh, 07ch, 038h, 07ch + db 010h, 010h, 038h, 07ch, 0feh, 07ch, 038h, 07ch, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h + db 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h + db 0ffh, 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 00fh, 007h, 00fh, 07dh, 0cch, 0cch, 0cch, 078h + db 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 018h, 03fh, 033h, 03fh, 030h, 030h, 070h, 0f0h, 0e0h + db 07fh, 063h, 07fh, 063h, 063h, 067h, 0e6h, 0c0h, 099h, 05ah, 03ch, 0e7h, 0e7h, 03ch, 05ah, 099h + db 080h, 0e0h, 0f8h, 0feh, 0f8h, 0e0h, 080h, 000h, 002h, 00eh, 03eh, 0feh, 03eh, 00eh, 002h, 000h + db 018h, 03ch, 07eh, 018h, 018h, 07eh, 03ch, 018h, 066h, 066h, 066h, 066h, 066h, 000h, 066h, 000h + db 07fh, 0dbh, 0dbh, 07bh, 01bh, 01bh, 01bh, 000h, 03eh, 063h, 038h, 06ch, 06ch, 038h, 0cch, 078h + db 000h, 000h, 000h, 000h, 07eh, 07eh, 07eh, 000h, 018h, 03ch, 07eh, 018h, 07eh, 03ch, 018h, 0ffh + db 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h + db 000h, 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 030h, 060h, 0feh, 060h, 030h, 000h, 000h + db 000h, 000h, 0c0h, 0c0h, 0c0h, 0feh, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h + db 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 000h, 000h, 000h, 0ffh, 0ffh, 07eh, 03ch, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 078h, 078h, 030h, 030h, 000h, 030h, 000h + db 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch, 0feh, 06ch, 06ch, 000h + db 030h, 07ch, 0c0h, 078h, 00ch, 0f8h, 030h, 000h, 000h, 0c6h, 0cch, 018h, 030h, 066h, 0c6h, 000h + db 038h, 06ch, 038h, 076h, 0dch, 0cch, 076h, 000h, 060h, 060h, 0c0h, 000h, 000h, 000h, 000h, 000h + db 018h, 030h, 060h, 060h, 060h, 030h, 018h, 000h, 060h, 030h, 018h, 018h, 018h, 030h, 060h, 000h + db 000h, 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 030h, 030h, 0fch, 030h, 030h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 060h, 000h, 000h, 000h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 000h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h + db 07ch, 0c6h, 0ceh, 0deh, 0f6h, 0e6h, 07ch, 000h, 030h, 070h, 030h, 030h, 030h, 030h, 0fch, 000h + db 078h, 0cch, 00ch, 038h, 060h, 0cch, 0fch, 000h, 078h, 0cch, 00ch, 038h, 00ch, 0cch, 078h, 000h + db 01ch, 03ch, 06ch, 0cch, 0feh, 00ch, 01eh, 000h, 0fch, 0c0h, 0f8h, 00ch, 00ch, 0cch, 078h, 000h + db 038h, 060h, 0c0h, 0f8h, 0cch, 0cch, 078h, 000h, 0fch, 0cch, 00ch, 018h, 030h, 030h, 030h, 000h + db 078h, 0cch, 0cch, 078h, 0cch, 0cch, 078h, 000h, 078h, 0cch, 0cch, 07ch, 00ch, 018h, 070h, 000h + db 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 060h + db 018h, 030h, 060h, 0c0h, 060h, 030h, 018h, 000h, 000h, 000h, 0fch, 000h, 000h, 0fch, 000h, 000h + db 060h, 030h, 018h, 00ch, 018h, 030h, 060h, 000h, 078h, 0cch, 00ch, 018h, 030h, 000h, 030h, 000h + db 07ch, 0c6h, 0deh, 0deh, 0deh, 0c0h, 078h, 000h, 030h, 078h, 0cch, 0cch, 0fch, 0cch, 0cch, 000h + db 0fch, 066h, 066h, 07ch, 066h, 066h, 0fch, 000h, 03ch, 066h, 0c0h, 0c0h, 0c0h, 066h, 03ch, 000h + db 0f8h, 06ch, 066h, 066h, 066h, 06ch, 0f8h, 000h, 0feh, 062h, 068h, 078h, 068h, 062h, 0feh, 000h + db 0feh, 062h, 068h, 078h, 068h, 060h, 0f0h, 000h, 03ch, 066h, 0c0h, 0c0h, 0ceh, 066h, 03eh, 000h + db 0cch, 0cch, 0cch, 0fch, 0cch, 0cch, 0cch, 000h, 078h, 030h, 030h, 030h, 030h, 030h, 078h, 000h + db 01eh, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 000h, 0e6h, 066h, 06ch, 078h, 06ch, 066h, 0e6h, 000h + db 0f0h, 060h, 060h, 060h, 062h, 066h, 0feh, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 000h + db 0c6h, 0e6h, 0f6h, 0deh, 0ceh, 0c6h, 0c6h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h + db 0fch, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h, 078h, 0cch, 0cch, 0cch, 0dch, 078h, 01ch, 000h + db 0fch, 066h, 066h, 07ch, 06ch, 066h, 0e6h, 000h, 078h, 0cch, 0e0h, 070h, 01ch, 0cch, 078h, 000h + db 0fch, 0b4h, 030h, 030h, 030h, 030h, 078h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 0fch, 000h + db 0cch, 0cch, 0cch, 0cch, 0cch, 078h, 030h, 000h, 0c6h, 0c6h, 0c6h, 0d6h, 0feh, 0eeh, 0c6h, 000h + db 0c6h, 0c6h, 06ch, 038h, 038h, 06ch, 0c6h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 030h, 078h, 000h + db 0feh, 0c6h, 08ch, 018h, 032h, 066h, 0feh, 000h, 078h, 060h, 060h, 060h, 060h, 060h, 078h, 000h + db 0c0h, 060h, 030h, 018h, 00ch, 006h, 002h, 000h, 078h, 018h, 018h, 018h, 018h, 018h, 078h, 000h + db 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 076h, 000h + db 0e0h, 060h, 060h, 07ch, 066h, 066h, 0dch, 000h, 000h, 000h, 078h, 0cch, 0c0h, 0cch, 078h, 000h + db 01ch, 00ch, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h + db 038h, 06ch, 060h, 0f0h, 060h, 060h, 0f0h, 000h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 0f8h + db 0e0h, 060h, 06ch, 076h, 066h, 066h, 0e6h, 000h, 030h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 00ch, 000h, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 0e0h, 060h, 066h, 06ch, 078h, 06ch, 0e6h, 000h + db 070h, 030h, 030h, 030h, 030h, 030h, 078h, 000h, 000h, 000h, 0cch, 0feh, 0feh, 0d6h, 0c6h, 000h + db 000h, 000h, 0f8h, 0cch, 0cch, 0cch, 0cch, 000h, 000h, 000h, 078h, 0cch, 0cch, 0cch, 078h, 000h + db 000h, 000h, 0dch, 066h, 066h, 07ch, 060h, 0f0h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 01eh + db 000h, 000h, 0dch, 076h, 066h, 060h, 0f0h, 000h, 000h, 000h, 07ch, 0c0h, 078h, 00ch, 0f8h, 000h + db 010h, 030h, 07ch, 030h, 030h, 034h, 018h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 000h, 000h, 000h, 0c6h, 0d6h, 0feh, 0feh, 06ch, 000h + db 000h, 000h, 0c6h, 06ch, 038h, 06ch, 0c6h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 07ch, 00ch, 0f8h + db 000h, 000h, 0fch, 098h, 030h, 064h, 0fch, 000h, 01ch, 030h, 030h, 0e0h, 030h, 030h, 01ch, 000h + db 018h, 018h, 018h, 000h, 018h, 018h, 018h, 000h, 0e0h, 030h, 030h, 01ch, 030h, 030h, 0e0h, 000h + db 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 000h + db 078h, 0cch, 0c0h, 0cch, 078h, 018h, 00ch, 078h, 000h, 0cch, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 01ch, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h, 07eh, 0c3h, 03ch, 006h, 03eh, 066h, 03fh, 000h + db 0cch, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 0e0h, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h + db 030h, 030h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 000h, 000h, 078h, 0c0h, 0c0h, 078h, 00ch, 038h + db 07eh, 0c3h, 03ch, 066h, 07eh, 060h, 03ch, 000h, 0cch, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h + db 0e0h, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h, 0cch, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 07ch, 0c6h, 038h, 018h, 018h, 018h, 03ch, 000h, 0e0h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 0c6h, 038h, 06ch, 0c6h, 0feh, 0c6h, 0c6h, 000h, 030h, 030h, 000h, 078h, 0cch, 0fch, 0cch, 000h + db 01ch, 000h, 0fch, 060h, 078h, 060h, 0fch, 000h, 000h, 000h, 07fh, 00ch, 07fh, 0cch, 07fh, 000h + db 03eh, 06ch, 0cch, 0feh, 0cch, 0cch, 0ceh, 000h, 078h, 0cch, 000h, 078h, 0cch, 0cch, 078h, 000h + db 000h, 0cch, 000h, 078h, 0cch, 0cch, 078h, 000h, 000h, 0e0h, 000h, 078h, 0cch, 0cch, 078h, 000h + db 078h, 0cch, 000h, 0cch, 0cch, 0cch, 07eh, 000h, 000h, 0e0h, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 000h, 0cch, 000h, 0cch, 0cch, 07ch, 00ch, 0f8h, 0c3h, 018h, 03ch, 066h, 066h, 03ch, 018h, 000h + db 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 078h, 000h, 018h, 018h, 07eh, 0c0h, 0c0h, 07eh, 018h, 018h + db 038h, 06ch, 064h, 0f0h, 060h, 0e6h, 0fch, 000h, 0cch, 0cch, 078h, 0fch, 030h, 0fch, 030h, 030h + db 0f8h, 0cch, 0cch, 0fah, 0c6h, 0cfh, 0c6h, 0c7h, 00eh, 01bh, 018h, 03ch, 018h, 018h, 0d8h, 070h + db 01ch, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 038h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 000h, 01ch, 000h, 078h, 0cch, 0cch, 078h, 000h, 000h, 01ch, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 000h, 0f8h, 000h, 0f8h, 0cch, 0cch, 0cch, 000h, 0fch, 000h, 0cch, 0ech, 0fch, 0dch, 0cch, 000h + db 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h + db 030h, 000h, 030h, 060h, 0c0h, 0cch, 078h, 000h, 000h, 000h, 000h, 0fch, 0c0h, 0c0h, 000h, 000h + db 000h, 000h, 000h, 0fch, 00ch, 00ch, 000h, 000h, 0c3h, 0c6h, 0cch, 0deh, 033h, 066h, 0cch, 00fh + db 0c3h, 0c6h, 0cch, 0dbh, 037h, 06fh, 0cfh, 003h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 000h + db 000h, 033h, 066h, 0cch, 066h, 033h, 000h, 000h, 000h, 0cch, 066h, 033h, 066h, 0cch, 000h, 000h + db 022h, 088h, 022h, 088h, 022h, 088h, 022h, 088h, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah + db 0dbh, 077h, 0dbh, 0eeh, 0dbh, 077h, 0dbh, 0eeh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h + db 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 0feh, 006h, 0f6h, 036h, 036h, 036h + db 036h, 036h, 0f6h, 006h, 0feh, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h, 000h + db 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h + db 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h + db 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h + db 036h, 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0f7h, 036h, 036h, 036h + db 036h, 036h, 037h, 030h, 037h, 036h, 036h, 036h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h, 000h + db 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 03fh, 000h, 000h, 000h + db 018h, 018h, 01fh, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h + db 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 0c8h, 0dch, 076h, 000h, 000h, 078h, 0cch, 0f8h, 0cch, 0f8h, 0c0h, 0c0h + db 000h, 0fch, 0cch, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 0feh, 06ch, 06ch, 06ch, 06ch, 06ch, 000h + db 0fch, 0cch, 060h, 030h, 060h, 0cch, 0fch, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 070h, 000h + db 000h, 066h, 066h, 066h, 066h, 07ch, 060h, 0c0h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 000h + db 0fch, 030h, 078h, 0cch, 0cch, 078h, 030h, 0fch, 038h, 06ch, 0c6h, 0feh, 0c6h, 06ch, 038h, 000h + db 038h, 06ch, 0c6h, 0c6h, 06ch, 06ch, 0eeh, 000h, 01ch, 030h, 018h, 07ch, 0cch, 0cch, 078h, 000h + db 000h, 000h, 07eh, 0dbh, 0dbh, 07eh, 000h, 000h, 006h, 00ch, 07eh, 0dbh, 0dbh, 07eh, 060h, 0c0h + db 038h, 060h, 0c0h, 0f8h, 0c0h, 060h, 038h, 000h, 078h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 000h + db 000h, 0fch, 000h, 0fch, 000h, 0fch, 000h, 000h, 030h, 030h, 0fch, 030h, 030h, 000h, 0fch, 000h + db 060h, 030h, 018h, 030h, 060h, 000h, 0fch, 000h, 018h, 030h, 060h, 030h, 018h, 000h, 0fch, 000h + db 00eh, 01bh, 01bh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h, 070h + db 030h, 030h, 000h, 0fch, 000h, 030h, 030h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h + db 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h, 00fh, 00ch, 00ch, 00ch, 0ech, 06ch, 03ch, 01ch + db 078h, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 070h, 018h, 030h, 060h, 078h, 000h, 000h, 000h + db 000h, 000h, 03ch, 03ch, 03ch, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5d6d LB 0x2160 -> off=0x0 cb=0000000000000e00 uValue=00000000000c15ed 'vgafont14' +vgafont14: ; 0xc5d6d LB 0xe00 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 07eh, 000h, 000h, 000h, 000h, 000h, 07eh, 0ffh + db 0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 06ch, 0feh, 0feh + db 0feh, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 07ch, 0feh, 07ch + db 038h, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 0e7h, 0e7h, 0e7h, 018h, 018h + db 03ch, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 07eh, 018h, 018h, 03ch, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h + db 000h, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh + db 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 01eh, 00eh, 01ah, 032h + db 078h, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 066h, 066h, 03ch, 018h + db 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 03fh, 033h, 03fh, 030h, 030h, 030h, 070h, 0f0h + db 0e0h, 000h, 000h, 000h, 000h, 000h, 07fh, 063h, 07fh, 063h, 063h, 063h, 067h, 0e7h, 0e6h, 0c0h + db 000h, 000h, 000h, 000h, 018h, 018h, 0dbh, 03ch, 0e7h, 03ch, 0dbh, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 080h, 0c0h, 0e0h, 0f8h, 0feh, 0f8h, 0e0h, 0c0h, 080h, 000h, 000h, 000h, 000h, 000h + db 002h, 006h, 00eh, 03eh, 0feh, 03eh, 00eh, 006h, 002h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch + db 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h + db 066h, 066h, 000h, 066h, 066h, 000h, 000h, 000h, 000h, 000h, 07fh, 0dbh, 0dbh, 0dbh, 07bh, 01bh + db 01bh, 01bh, 01bh, 000h, 000h, 000h, 000h, 07ch, 0c6h, 060h, 038h, 06ch, 0c6h, 0c6h, 06ch, 038h + db 00ch, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 0feh, 000h + db 000h, 000h, 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 07eh, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 060h + db 0feh, 060h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c0h + db 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 028h, 06ch, 0feh, 06ch, 028h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 038h, 07ch, 07ch, 0feh, 0feh, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 07ch, 07ch, 038h, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 03ch, 03ch, 03ch, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 066h, 066h, 066h + db 024h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch + db 06ch, 06ch, 0feh, 06ch, 06ch, 000h, 000h, 000h, 018h, 018h, 07ch, 0c6h, 0c2h, 0c0h, 07ch, 006h + db 086h, 0c6h, 07ch, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 0c2h, 0c6h, 00ch, 018h, 030h, 066h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 038h, 06ch, 06ch, 038h, 076h, 0dch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 030h, 030h, 030h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 018h, 030h, 030h, 030h, 030h, 030h, 018h, 00ch, 000h, 000h, 000h, 000h, 000h + db 030h, 018h, 00ch, 00ch, 00ch, 00ch, 00ch, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h + db 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h + db 000h, 000h, 000h, 000h, 002h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0ceh, 0deh, 0f6h, 0e6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 018h, 038h, 078h, 018h, 018h, 018h, 018h, 018h, 07eh, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h + db 006h, 00ch, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 006h, 006h + db 03ch, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 00ch, 01ch, 03ch, 06ch, 0cch, 0feh + db 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0fch, 006h, 006h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 038h, 060h, 0c0h, 0c0h, 0fch, 0c6h, 0c6h, 0c6h, 07ch, 000h + db 000h, 000h, 000h, 000h, 0feh, 0c6h, 006h, 00ch, 018h, 030h, 030h, 030h, 030h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 07ch, 0c6h, 0c6h, 0c6h, 07eh, 006h, 006h, 00ch, 078h, 000h, 000h, 000h, 000h, 000h, 000h, 018h + db 018h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h + db 000h, 000h, 018h, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 006h, 00ch, 018h, 030h, 060h, 030h + db 018h, 00ch, 006h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 000h, 000h, 07eh, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 060h, 000h + db 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 00ch, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0deh, 0deh, 0deh, 0dch, 0c0h, 07ch, 000h, 000h, 000h, 000h, 000h + db 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h, 0fch, 066h + db 066h, 066h, 07ch, 066h, 066h, 066h, 0fch, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 0c2h, 0c0h + db 0c0h, 0c0h, 0c2h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h, 0f8h, 06ch, 066h, 066h, 066h, 066h + db 066h, 06ch, 0f8h, 000h, 000h, 000h, 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 062h, 066h + db 0feh, 000h, 000h, 000h, 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0deh, 0c6h, 066h, 03ah, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h + db 03ch, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 01eh, 00ch + db 00ch, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h, 000h, 0e6h, 066h, 06ch, 06ch + db 078h, 06ch, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 0f0h, 060h, 060h, 060h, 060h, 060h + db 062h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 0c6h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 000h + db 000h, 000h, 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h, 000h + db 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0deh, 07ch, 00ch, 00eh, 000h, 000h, 000h, 000h, 0fch, 066h + db 066h, 066h, 07ch, 06ch, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 060h + db 038h, 00ch, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 07eh, 07eh, 05ah, 018h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 010h, 000h + db 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0d6h, 0feh, 07ch, 06ch, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 06ch, 038h, 038h, 038h, 06ch, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h + db 066h, 066h, 066h, 066h, 03ch, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 0feh, 0c6h + db 08ch, 018h, 030h, 060h, 0c2h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 03ch, 030h, 030h, 030h + db 030h, 030h, 030h, 030h, 03ch, 000h, 000h, 000h, 000h, 000h, 080h, 0c0h, 0e0h, 070h, 038h, 01ch + db 00eh, 006h, 002h, 000h, 000h, 000h, 000h, 000h, 03ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch + db 03ch, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 0e0h, 060h + db 060h, 078h, 06ch, 066h, 066h, 066h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch + db 0c6h, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 01ch, 00ch, 00ch, 03ch, 06ch, 0cch + db 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 07ch, 00ch, 0cch, 078h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 06ch, 076h, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 006h, 006h + db 000h, 00eh, 006h, 006h, 006h, 006h, 066h, 066h, 03ch, 000h, 000h, 000h, 0e0h, 060h, 060h, 066h + db 06ch, 078h, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ech, 0feh, 0d6h, 0d6h, 0d6h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h, 000h, 000h + db 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 07ch, 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h, 000h + db 000h, 0dch, 076h, 066h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch + db 0c6h, 070h, 01ch, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 010h, 030h, 030h, 0fch, 030h, 030h + db 030h, 036h, 01ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch + db 076h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 03ch, 018h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0d6h, 0d6h, 0feh, 06ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 06ch, 038h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 0f8h, 000h, 000h, 000h, 000h, 000h + db 000h, 0feh, 0cch, 018h, 030h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h, 00eh, 018h, 018h, 018h + db 070h, 018h, 018h, 018h, 00eh, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 000h, 018h + db 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 070h, 018h, 018h, 018h, 00eh, 018h, 018h, 018h + db 070h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 00ch, 006h, 07ch, 000h, 000h, 000h + db 0cch, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 00ch, 018h, 030h + db 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 000h, 078h + db 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 000h, 078h, 00ch, 07ch + db 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 078h, 00ch, 07ch, 0cch, 0cch + db 076h, 000h, 000h, 000h, 000h, 038h, 06ch, 038h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 060h, 066h, 03ch, 00ch, 006h, 03ch, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 0cch, 0cch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h + db 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 000h, 038h + db 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 018h, 03ch, 066h, 000h, 038h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 038h, 018h, 018h, 018h, 018h + db 03ch, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 000h + db 000h, 000h, 038h, 06ch, 038h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 000h, 000h, 000h + db 018h, 030h, 060h, 000h, 0feh, 066h, 060h, 07ch, 060h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 0cch, 076h, 036h, 07eh, 0d8h, 0d8h, 06eh, 000h, 000h, 000h, 000h, 000h, 03eh, 06ch + db 0cch, 0cch, 0feh, 0cch, 0cch, 0cch, 0ceh, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 000h, 07ch + db 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 000h, 07ch, 0c6h, 0c6h + db 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 030h, 078h, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 060h, 030h, 018h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 078h, 000h, 000h, 0c6h + db 0c6h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 000h + db 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 018h, 018h, 03ch, 066h, 060h + db 060h, 066h, 03ch, 018h, 018h, 000h, 000h, 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h + db 060h, 0e6h, 0fch, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 03ch, 018h, 07eh, 018h, 07eh, 018h + db 018h, 000h, 000h, 000h, 000h, 0f8h, 0cch, 0cch, 0f8h, 0c4h, 0cch, 0deh, 0cch, 0cch, 0c6h, 000h + db 000h, 000h, 000h, 00eh, 01bh, 018h, 018h, 018h, 07eh, 018h, 018h, 018h, 018h, 0d8h, 070h, 000h + db 000h, 018h, 030h, 060h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 00ch + db 018h, 030h, 000h, 038h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 018h, 030h, 060h + db 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 018h, 030h, 060h, 000h, 0cch + db 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 0dch, 066h, 066h + db 066h, 066h, 066h, 000h, 000h, 000h, 076h, 0dch, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h + db 0c6h, 000h, 000h, 000h, 000h, 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 030h, 000h, 030h, 030h, 060h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 006h, 006h, 006h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c6h, 0cch, 0d8h + db 030h, 060h, 0dch, 086h, 00ch, 018h, 03eh, 000h, 000h, 0c0h, 0c0h, 0c6h, 0cch, 0d8h, 030h, 066h + db 0ceh, 09eh, 03eh, 006h, 006h, 000h, 000h, 000h, 018h, 018h, 000h, 018h, 018h, 03ch, 03ch, 03ch + db 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 036h, 06ch, 0d8h, 06ch, 036h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0d8h, 06ch, 036h, 06ch, 0d8h, 000h, 000h, 000h, 000h, 000h + db 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 055h, 0aah + db 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 0ddh, 077h, 0ddh, 077h + db 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h + db 018h, 018h, 018h, 018h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 036h + db 036h, 036h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 036h, 036h + db 036h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 000h, 0feh + db 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0feh + db 000h, 000h, 000h, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h + db 018h, 018h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 030h, 037h + db 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h + db 000h, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 036h + db 036h, 036h, 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h + db 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 0f0h, 0f0h, 0f0h, 0f0h, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh + db 00fh, 00fh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 0d8h, 0d8h, 0dch, 076h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0fch, 0c6h, 0c6h, 0fch, 0c0h, 0c0h, 040h, 000h, 000h, 000h, 0feh, 0c6h + db 0c6h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 06ch + db 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 0feh, 0c6h, 060h, 030h, 018h, 030h + db 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 0d8h + db 070h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0c0h + db 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 07eh, 018h, 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h, 000h + db 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 038h, 06ch + db 0c6h, 0c6h, 0c6h, 06ch, 06ch, 06ch, 0eeh, 000h, 000h, 000h, 000h, 000h, 01eh, 030h, 018h, 00ch + db 03eh, 066h, 066h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 0dbh, 0dbh + db 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 003h, 006h, 07eh, 0dbh, 0dbh, 0f3h, 07eh, 060h + db 0c0h, 000h, 000h, 000h, 000h, 000h, 01ch, 030h, 060h, 060h, 07ch, 060h, 060h, 030h, 01ch, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h + db 000h, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 030h, 018h + db 00ch, 006h, 00ch, 018h, 030h, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 00ch, 018h, 030h, 060h + db 030h, 018h, 00ch, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 00eh, 01bh, 01bh, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h + db 070h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 07eh, 000h, 018h, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 00fh, 00ch, 00ch, 00ch, 00ch + db 00ch, 0ech, 06ch, 03ch, 01ch, 000h, 000h, 000h, 000h, 0d8h, 06ch, 06ch, 06ch, 06ch, 06ch, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc6b6d LB 0x1360 -> off=0x0 cb=0000000000001000 uValue=00000000000c23ed 'vgafont16' +vgafont16: ; 0xc6b6d LB 0x1000 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 081h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 0ffh, 0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 0ffh, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 06ch, 0feh, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 03ch, 03ch, 0e7h, 0e7h, 0e7h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 07eh, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 01eh, 00eh, 01ah, 032h, 078h, 0cch, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 066h, 066h, 066h, 03ch, 018h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 03fh, 033h, 03fh, 030h, 030h, 030h, 030h, 070h, 0f0h, 0e0h, 000h, 000h, 000h, 000h + db 000h, 000h, 07fh, 063h, 07fh, 063h, 063h, 063h, 063h, 067h, 0e7h, 0e6h, 0c0h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 018h, 0dbh, 03ch, 0e7h, 03ch, 0dbh, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 080h, 0c0h, 0e0h, 0f0h, 0f8h, 0feh, 0f8h, 0f0h, 0e0h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 002h, 006h, 00eh, 01eh, 03eh, 0feh, 03eh, 01eh, 00eh, 006h, 002h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 066h, 066h, 000h, 000h, 000h, 000h + db 000h, 000h, 07fh, 0dbh, 0dbh, 0dbh, 07bh, 01bh, 01bh, 01bh, 01bh, 01bh, 000h, 000h, 000h, 000h + db 000h, 07ch, 0c6h, 060h, 038h, 06ch, 0c6h, 0c6h, 06ch, 038h, 00ch, 0c6h, 07ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 0feh, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 060h, 0feh, 060h, 030h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c0h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 028h, 06ch, 0feh, 06ch, 028h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 038h, 07ch, 07ch, 0feh, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 0feh, 07ch, 07ch, 038h, 038h, 010h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 03ch, 03ch, 018h, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 066h, 066h, 066h, 024h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch, 06ch, 06ch, 0feh, 06ch, 06ch, 000h, 000h, 000h, 000h + db 018h, 018h, 07ch, 0c6h, 0c2h, 0c0h, 07ch, 006h, 006h, 086h, 0c6h, 07ch, 018h, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 0c2h, 0c6h, 00ch, 018h, 030h, 060h, 0c6h, 086h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 06ch, 038h, 076h, 0dch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 030h, 030h, 030h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 018h, 030h, 030h, 030h, 030h, 030h, 030h, 018h, 00ch, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 018h, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 018h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 030h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 002h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0d6h, 0d6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 038h, 078h, 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 006h, 006h, 03ch, 006h, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 01ch, 03ch, 06ch, 0cch, 0feh, 00ch, 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0fch, 006h, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 060h, 0c0h, 0c0h, 0fch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 006h, 006h, 00ch, 018h, 030h, 030h, 030h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07eh, 006h, 006h, 006h, 00ch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 018h, 018h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 006h, 00ch, 018h, 030h, 060h, 030h, 018h, 00ch, 006h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 000h, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 060h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 060h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 00ch, 018h, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0deh, 0deh, 0deh, 0dch, 0c0h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 066h, 066h, 066h, 066h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0f8h, 06ch, 066h, 066h, 066h, 066h, 066h, 066h, 06ch, 0f8h, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 062h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0deh, 0c6h, 0c6h, 066h, 03ah, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 01eh, 00ch, 00ch, 00ch, 00ch, 00ch, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 0e6h, 066h, 066h, 06ch, 078h, 078h, 06ch, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0f0h, 060h, 060h, 060h, 060h, 060h, 060h, 062h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 060h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0deh, 07ch, 00ch, 00eh, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 06ch, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 060h, 038h, 00ch, 006h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 07eh, 05ah, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0d6h, 0d6h, 0feh, 0eeh, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 06ch, 07ch, 038h, 038h, 07ch, 06ch, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 066h, 066h, 03ch, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 086h, 00ch, 018h, 030h, 060h, 0c2h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 030h, 030h, 030h, 030h, 030h, 030h, 030h, 030h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 080h, 0c0h, 0e0h, 070h, 038h, 01ch, 00eh, 006h, 002h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 03ch, 000h, 000h, 000h, 000h + db 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 000h + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 078h, 06ch, 066h, 066h, 066h, 066h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c0h, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 01ch, 00ch, 00ch, 03ch, 06ch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 0cch, 0cch, 07ch, 00ch, 0cch, 078h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 06ch, 076h, 066h, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 006h, 006h, 000h, 00eh, 006h, 006h, 006h, 006h, 006h, 006h, 066h, 066h, 03ch, 000h + db 000h, 000h, 0e0h, 060h, 060h, 066h, 06ch, 078h, 078h, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ech, 0feh, 0d6h, 0d6h, 0d6h, 0d6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 0cch, 0cch, 07ch, 00ch, 00ch, 01eh, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 076h, 066h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 060h, 038h, 00ch, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 010h, 030h, 030h, 0fch, 030h, 030h, 030h, 030h, 036h, 01ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 066h, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0d6h, 0d6h, 0d6h, 0feh, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 06ch, 038h, 038h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 0f8h, 000h + db 000h, 000h, 000h, 000h, 000h, 0feh, 0cch, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 00eh, 018h, 018h, 018h, 070h, 018h, 018h, 018h, 018h, 00eh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 070h, 018h, 018h, 018h, 00eh, 018h, 018h, 018h, 018h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 00ch, 006h, 07ch, 000h, 000h + db 000h, 000h, 0cch, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 00ch, 018h, 030h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0cch, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 038h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 03ch, 066h, 060h, 060h, 066h, 03ch, 00ch, 006h, 03ch, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 018h, 03ch, 066h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 0c6h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 038h, 06ch, 038h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 018h, 030h, 060h, 000h, 0feh, 066h, 060h, 07ch, 060h, 060h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0cch, 076h, 036h, 07eh, 0d8h, 0d8h, 06eh, 000h, 000h, 000h, 000h + db 000h, 000h, 03eh, 06ch, 0cch, 0cch, 0feh, 0cch, 0cch, 0cch, 0cch, 0ceh, 000h, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 030h, 078h, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 078h, 000h + db 000h, 0c6h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 0c6h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 018h, 018h, 03ch, 066h, 060h, 060h, 060h, 066h, 03ch, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 060h, 0e6h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 03ch, 018h, 07eh, 018h, 07eh, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 0f8h, 0cch, 0cch, 0f8h, 0c4h, 0cch, 0deh, 0cch, 0cch, 0cch, 0c6h, 000h, 000h, 000h, 000h + db 000h, 00eh, 01bh, 018h, 018h, 018h, 07eh, 018h, 018h, 018h, 018h, 018h, 0d8h, 070h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 00ch, 018h, 030h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 000h, 000h, 000h + db 076h, 0dch, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 030h, 000h, 030h, 030h, 060h, 0c0h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 006h, 006h, 006h, 006h, 000h, 000h, 000h, 000h, 000h + db 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 060h, 0dch, 086h, 00ch, 018h, 03eh, 000h, 000h + db 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 066h, 0ceh, 09eh, 03eh, 006h, 006h, 000h, 000h + db 000h, 000h, 018h, 018h, 000h, 018h, 018h, 018h, 03ch, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 036h, 06ch, 0d8h, 06ch, 036h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0d8h, 06ch, 036h, 06ch, 0d8h, 000h, 000h, 000h, 000h, 000h, 000h + db 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h + db 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah + db 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0feh, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 0d8h, 0d8h, 0d8h, 0dch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 078h, 0cch, 0cch, 0cch, 0d8h, 0cch, 0c6h, 0c6h, 0c6h, 0cch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 0c6h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 06ch, 06ch, 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0feh, 0c6h, 060h, 030h, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 0d8h, 0d8h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0c0h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07eh, 018h, 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 06ch, 06ch, 06ch, 06ch, 0eeh, 000h, 000h, 000h, 000h + db 000h, 000h, 01eh, 030h, 018h, 00ch, 03eh, 066h, 066h, 066h, 066h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 0dbh, 0dbh, 0dbh, 07eh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 003h, 006h, 07eh, 0dbh, 0dbh, 0f3h, 07eh, 060h, 0c0h, 000h, 000h, 000h, 000h + db 000h, 000h, 01ch, 030h, 060h, 060h, 07ch, 060h, 060h, 060h, 030h, 01ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 000h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 00ch, 018h, 030h, 060h, 030h, 018h, 00ch, 000h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 00eh, 01bh, 01bh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h, 0d8h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 07eh, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 00fh, 00ch, 00ch, 00ch, 00ch, 00ch, 0ech, 06ch, 06ch, 03ch, 01ch, 000h, 000h, 000h, 000h + db 000h, 0d8h, 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7b6d LB 0x360 -> off=0x0 cb=000000000000012d uValue=00000000000c33ed 'vgafont14alt' +vgafont14alt: ; 0xc7b6d LB 0x12d + db 01dh, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h, 022h + db 000h, 063h, 063h, 063h, 022h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02bh, 000h + db 000h, 000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 02dh, 000h, 000h + db 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 04dh, 000h, 000h, 0c3h + db 0e7h, 0ffh, 0dbh, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 000h, 000h, 000h, 054h, 000h, 000h, 0ffh, 0dbh + db 099h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 056h, 000h, 000h, 0c3h, 0c3h, 0c3h + db 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h, 000h, 000h, 000h, 057h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h + db 0dbh, 0dbh, 0ffh, 066h, 066h, 000h, 000h, 000h, 058h, 000h, 000h, 0c3h, 0c3h, 066h, 03ch, 018h + db 03ch, 066h, 0c3h, 0c3h, 000h, 000h, 000h, 059h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 05ah, 000h, 000h, 0ffh, 0c3h, 086h, 00ch, 018h, 030h, 061h + db 0c3h, 0ffh, 000h, 000h, 000h, 06dh, 000h, 000h, 000h, 000h, 000h, 0e6h, 0ffh, 0dbh, 0dbh, 0dbh + db 0dbh, 000h, 000h, 000h, 076h, 000h, 000h, 000h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 000h, 000h, 000h, 077h, 000h, 000h, 000h, 000h, 000h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh, 066h, 000h + db 000h, 000h, 091h, 000h, 000h, 000h, 000h, 06eh, 03bh, 01bh, 07eh, 0d8h, 0dch, 077h, 000h, 000h + db 000h, 09bh, 000h, 018h, 018h, 07eh, 0c3h, 0c0h, 0c0h, 0c3h, 07eh, 018h, 018h, 000h, 000h, 000h + db 09dh, 000h, 000h, 0c3h, 066h, 03ch, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 000h, 000h, 000h, 09eh + db 000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 0f3h, 000h, 000h, 000h, 0f1h, 000h + db 000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 0ffh, 000h, 000h, 000h, 0f6h, 000h, 000h + db 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7c9a LB 0x233 -> off=0x0 cb=0000000000000144 uValue=00000000000c351a 'vgafont16alt' +vgafont16alt: ; 0xc7c9a LB 0x144 + db 01dh, 000h, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h + db 000h, 030h, 000h, 000h, 03ch, 066h, 0c3h, 0c3h, 0dbh, 0dbh, 0c3h, 0c3h, 066h, 03ch, 000h, 000h + db 000h, 000h, 04dh, 000h, 000h, 0c3h, 0e7h, 0ffh, 0ffh, 0dbh, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 000h + db 000h, 000h, 000h, 054h, 000h, 000h, 0ffh, 0dbh, 099h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch + db 000h, 000h, 000h, 000h, 056h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 066h, 03ch + db 018h, 000h, 000h, 000h, 000h, 057h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh + db 066h, 066h, 000h, 000h, 000h, 000h, 058h, 000h, 000h, 0c3h, 0c3h, 066h, 03ch, 018h, 018h, 03ch + db 066h, 0c3h, 0c3h, 000h, 000h, 000h, 000h, 059h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 05ah, 000h, 000h, 0ffh, 0c3h, 086h, 00ch, 018h + db 030h, 060h, 0c1h, 0c3h, 0ffh, 000h, 000h, 000h, 000h, 06dh, 000h, 000h, 000h, 000h, 000h, 0e6h + db 0ffh, 0dbh, 0dbh, 0dbh, 0dbh, 0dbh, 000h, 000h, 000h, 000h, 076h, 000h, 000h, 000h, 000h, 000h + db 0c3h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h, 000h, 000h, 000h, 000h, 077h, 000h, 000h, 000h, 000h + db 000h, 0c3h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh, 066h, 000h, 000h, 000h, 000h, 078h, 000h, 000h, 000h + db 000h, 000h, 0c3h, 066h, 03ch, 018h, 03ch, 066h, 0c3h, 000h, 000h, 000h, 000h, 091h, 000h, 000h + db 000h, 000h, 000h, 06eh, 03bh, 01bh, 07eh, 0d8h, 0dch, 077h, 000h, 000h, 000h, 000h, 09bh, 000h + db 018h, 018h, 07eh, 0c3h, 0c0h, 0c0h, 0c0h, 0c3h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 09dh + db 000h, 000h, 0c3h, 066h, 03ch, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 09eh, 000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 066h, 0f3h, 000h, 000h, 000h + db 000h, 0abh, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 060h, 0ceh, 09bh, 006h, 00ch, 01fh + db 000h, 000h, 0ach, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 066h, 0ceh, 096h, 03eh, 006h + db 006h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7dde LB 0xef -> off=0x0 cb=0000000000000008 uValue=00000000000c365e '_cga_msr' +_cga_msr: ; 0xc7dde LB 0x8 + db 02ch, 028h, 02dh, 029h, 02ah, 02eh, 01eh, 029h + ; disGetNextSymbol 0xc7de6 LB 0xe7 -> off=0x0 cb=0000000000000008 uValue=00000000000c3666 'line_to_vpti_200' +line_to_vpti_200: ; 0xc7de6 LB 0x8 + db 000h, 001h, 002h, 003h, 0ffh, 0ffh, 0ffh, 007h + ; disGetNextSymbol 0xc7dee LB 0xdf -> off=0x0 cb=0000000000000008 uValue=00000000000c366e 'line_to_vpti_350' +line_to_vpti_350: ; 0xc7dee LB 0x8 + db 013h, 014h, 015h, 016h, 0ffh, 0ffh, 0ffh, 007h + ; disGetNextSymbol 0xc7df6 LB 0xd7 -> off=0x0 cb=0000000000000008 uValue=00000000000c3676 'line_to_vpti_400' +line_to_vpti_400: ; 0xc7df6 LB 0x8 + db 017h, 017h, 018h, 018h, 0ffh, 0ffh, 0ffh, 019h + ; disGetNextSymbol 0xc7dfe LB 0xcf -> off=0x0 cb=0000000000000004 uValue=00000000000c367e 'row_tbl' +row_tbl: ; 0xc7dfe LB 0x4 + dd 02b190e00h + ; disGetNextSymbol 0xc7e02 LB 0xcb -> off=0x0 cb=0000000000000015 uValue=00000000000c3682 '_vbebios_copyright' +_vbebios_copyright: ; 0xc7e02 LB 0x15 + db 'VirtualBox VESA BIOS', 000h + ; disGetNextSymbol 0xc7e17 LB 0xb6 -> off=0x0 cb=000000000000001d uValue=00000000000c3697 '_vbebios_vendor_name' +_vbebios_vendor_name: ; 0xc7e17 LB 0x1d + db 'Oracle and/or its affiliates', 000h + ; disGetNextSymbol 0xc7e34 LB 0x99 -> off=0x0 cb=0000000000000021 uValue=00000000000c36b4 '_vbebios_product_name' +_vbebios_product_name: ; 0xc7e34 LB 0x21 + db 'Oracle VM VirtualBox VBE Adapter', 000h + ; disGetNextSymbol 0xc7e55 LB 0x78 -> off=0x0 cb=0000000000000024 uValue=00000000000c36d5 '_vbebios_product_revision' +_vbebios_product_revision: ; 0xc7e55 LB 0x24 + db 'Oracle VM VirtualBox Version 7.0.14', 000h + ; disGetNextSymbol 0xc7e79 LB 0x54 -> off=0x0 cb=000000000000002b uValue=00000000000c36f9 '_vbebios_info_string' +_vbebios_info_string: ; 0xc7e79 LB 0x2b + db 'VirtualBox VBE Display Adapter enabled', 00dh, 00ah, 00dh, 00ah, 000h + ; disGetNextSymbol 0xc7ea4 LB 0x29 -> off=0x0 cb=0000000000000029 uValue=00000000000c3724 '_no_vbebios_info_string' +_no_vbebios_info_string: ; 0xc7ea4 LB 0x29 + db 'No VirtualBox VBE support available!', 00dh, 00ah, 00dh, 00ah, 000h + + ; Padding 0x1 bytes at 0xc7ecd + db 001h + +section CONST progbits vstart=0x7ece align=1 ; size=0x0 class=DATA group=DGROUP + +section CONST2 progbits vstart=0x7ece align=1 ; size=0x0 class=DATA group=DGROUP + + ; Padding 0x132 bytes at 0xc7ece + db 000h, 000h, 000h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 02fh, 068h, 06fh, 06dh, 065h + db 02fh, 073h, 062h, 075h, 072h, 063h, 068h, 069h, 06ch, 02fh, 076h, 062h, 05fh, 073h, 072h, 063h + db 02fh, 062h, 072h, 061h, 06eh, 063h, 068h, 065h, 073h, 02fh, 056h, 042h, 06fh, 078h, 02dh, 037h + db 02eh, 030h, 02fh, 06fh, 075h, 074h, 02fh, 06ch, 069h, 06eh, 075h, 078h, 02eh, 061h, 06dh, 064h + db 036h, 034h, 02fh, 072h, 065h, 06ch, 065h, 061h, 073h, 065h, 02fh, 06fh, 062h, 06ah, 02fh, 056h + db 042h, 06fh, 078h, 056h, 067h, 061h, 042h, 069h, 06fh, 073h, 033h, 038h, 036h, 02fh, 056h, 042h + db 06fh, 078h, 056h, 067h, 061h, 042h, 069h, 06fh, 073h, 033h, 038h, 036h, 02eh, 073h, 079h, 06dh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 057h diff --git a/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.md5sum b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.md5sum new file mode 100644 index 00000000..d0e0691d --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative386.md5sum @@ -0,0 +1 @@ +a0e84ee6aab110901a8d59aa1451cfd2 *VBoxVgaBios386.rom diff --git a/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.asm b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.asm new file mode 100644 index 00000000..89fd1abc --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.asm @@ -0,0 +1,9408 @@ +; $Id: VBoxVgaBiosAlternative8086.asm $ +;; @file +; Auto Generated source file. Do not edit. +; + +; +; Source file: vgarom.asm +; +; ============================================================================================ +; +; Copyright (C) 2001,2002 the LGPL VGABios developers Team +; +; This library is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2 of the License, or (at your option) any later version. +; +; This library 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 +; Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this library; if not, write to the Free Software +; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; +; ============================================================================================ +; +; This VGA Bios is specific to the plex86/bochs Emulated VGA card. +; You can NOT drive any physical vga card with it. +; +; ============================================================================================ +; + +; +; Source file: vberom.asm +; +; ============================================================================================ +; +; Copyright (C) 2002 Jeroen Janssen +; +; This library is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2 of the License, or (at your option) any later version. +; +; This library 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 +; Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this library; if not, write to the Free Software +; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; +; ============================================================================================ +; +; This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +; You can NOT drive any physical vga card with it. +; +; ============================================================================================ +; +; This VBE Bios is based on information taken from : +; - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +; +; ============================================================================================ + +; +; Source file: vgabios.c +; +; // ============================================================================================ +; +; vgabios.c +; +; // ============================================================================================ +; // +; // Copyright (C) 2001,2002 the LGPL VGABios developers Team +; // +; // This library is free software; you can redistribute it and/or +; // modify it under the terms of the GNU Lesser General Public +; // License as published by the Free Software Foundation; either +; // version 2 of the License, or (at your option) any later version. +; // +; // This library 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 +; // Lesser General Public License for more details. +; // +; // You should have received a copy of the GNU Lesser General Public +; // License along with this library; if not, write to the Free Software +; // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; // +; // ============================================================================================ +; // +; // This VGA Bios is specific to the plex86/bochs Emulated VGA card. +; // You can NOT drive any physical vga card with it. +; // +; // ============================================================================================ +; // +; // This file contains code ripped from : +; // - rombios.c of plex86 +; // +; // This VGA Bios contains fonts from : +; // - fntcol16.zip (c) by Joseph Gil avalable at : +; // ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip +; // These fonts are public domain +; // +; // This VGA Bios is based on information taken from : +; // - Kevin Lawton's vga card emulation for bochs/plex86 +; // - Ralf Brown's interrupts list available at http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html +; // - Finn Thogersons' VGADOC4b available at http://home.worldonline.dk/~finth/ +; // - Michael Abrash's Graphics Programming Black Book +; // - Francois Gervais' book "programmation des cartes graphiques cga-ega-vga" edited by sybex +; // - DOSEMU 1.0.1 source code for several tables values and formulas +; // +; // Thanks for patches, comments and ideas to : +; // - techt@pikeonline.net +; // +; // ============================================================================================ + +; +; Source file: vbe.c +; +; // ============================================================================================ +; // +; // Copyright (C) 2002 Jeroen Janssen +; // +; // This library is free software; you can redistribute it and/or +; // modify it under the terms of the GNU Lesser General Public +; // License as published by the Free Software Foundation; either +; // version 2 of the License, or (at your option) any later version. +; // +; // This library 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 +; // Lesser General Public License for more details. +; // +; // You should have received a copy of the GNU Lesser General Public +; // License along with this library; if not, write to the Free Software +; // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +; // +; // ============================================================================================ +; // +; // This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +; // You can NOT drive any physical vga card with it. +; // +; // ============================================================================================ +; // +; // This VBE Bios is based on information taken from : +; // - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +; // +; // ============================================================================================ + +; +; Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice +; other than GPL or LGPL is available it will apply instead, Oracle elects to use only +; the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where +; a choice of LGPL license versions is made available with the language indicating +; that LGPLv2 or any later version may be used, or where a choice of which version +; of the LGPL is applied is otherwise unspecified. +; + + + + + +section VGAROM progbits vstart=0x0 align=1 ; size=0x94f class=CODE group=AUTO + ; disGetNextSymbol 0xc0000 LB 0x94f -> off=0x28 cb=0000000000000578 uValue=00000000000c0028 'vgabios_int10_handler' + db 055h, 0aah, 040h, 0ebh, 01dh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 049h, 042h + db 04dh, 000h, 00eh, 01fh, 0fch, 0e9h, 03eh, 00ah +vgabios_int10_handler: ; 0xc0028 LB 0x578 + pushfw ; 9c ; 0xc0028 vgarom.asm:91 + cmp ah, 00fh ; 80 fc 0f ; 0xc0029 vgarom.asm:104 + jne short 00034h ; 75 06 ; 0xc002c vgarom.asm:105 + call 0018dh ; e8 5c 01 ; 0xc002e vgarom.asm:106 + jmp near 000fdh ; e9 c9 00 ; 0xc0031 vgarom.asm:107 + cmp ah, 01ah ; 80 fc 1a ; 0xc0034 vgarom.asm:109 + jne short 0003fh ; 75 06 ; 0xc0037 vgarom.asm:110 + call 00560h ; e8 24 05 ; 0xc0039 vgarom.asm:111 + jmp near 000fdh ; e9 be 00 ; 0xc003c vgarom.asm:112 + cmp ah, 00bh ; 80 fc 0b ; 0xc003f vgarom.asm:114 + jne short 0004ah ; 75 06 ; 0xc0042 vgarom.asm:115 + call 000ffh ; e8 b8 00 ; 0xc0044 vgarom.asm:116 + jmp near 000fdh ; e9 b3 00 ; 0xc0047 vgarom.asm:117 + cmp ax, 01103h ; 3d 03 11 ; 0xc004a vgarom.asm:119 + jne short 00055h ; 75 06 ; 0xc004d vgarom.asm:120 + call 00454h ; e8 02 04 ; 0xc004f vgarom.asm:121 + jmp near 000fdh ; e9 a8 00 ; 0xc0052 vgarom.asm:122 + cmp ah, 012h ; 80 fc 12 ; 0xc0055 vgarom.asm:124 + jne short 00099h ; 75 3f ; 0xc0058 vgarom.asm:125 + cmp bl, 010h ; 80 fb 10 ; 0xc005a vgarom.asm:126 + jne short 00065h ; 75 06 ; 0xc005d vgarom.asm:127 + call 00461h ; e8 ff 03 ; 0xc005f vgarom.asm:128 + jmp near 000fdh ; e9 98 00 ; 0xc0062 vgarom.asm:129 + cmp bl, 030h ; 80 fb 30 ; 0xc0065 vgarom.asm:131 + jne short 00070h ; 75 06 ; 0xc0068 vgarom.asm:132 + call 00484h ; e8 17 04 ; 0xc006a vgarom.asm:133 + jmp near 000fdh ; e9 8d 00 ; 0xc006d vgarom.asm:134 + cmp bl, 031h ; 80 fb 31 ; 0xc0070 vgarom.asm:136 + jne short 0007bh ; 75 06 ; 0xc0073 vgarom.asm:137 + call 004d7h ; e8 5f 04 ; 0xc0075 vgarom.asm:138 + jmp near 000fdh ; e9 82 00 ; 0xc0078 vgarom.asm:139 + cmp bl, 032h ; 80 fb 32 ; 0xc007b vgarom.asm:141 + jne short 00085h ; 75 05 ; 0xc007e vgarom.asm:142 + call 004fch ; e8 79 04 ; 0xc0080 vgarom.asm:143 + jmp short 000fdh ; eb 78 ; 0xc0083 vgarom.asm:144 + cmp bl, 033h ; 80 fb 33 ; 0xc0085 vgarom.asm:146 + jne short 0008fh ; 75 05 ; 0xc0088 vgarom.asm:147 + call 0051ah ; e8 8d 04 ; 0xc008a vgarom.asm:148 + jmp short 000fdh ; eb 6e ; 0xc008d vgarom.asm:149 + cmp bl, 034h ; 80 fb 34 ; 0xc008f vgarom.asm:151 + jne short 000e3h ; 75 4f ; 0xc0092 vgarom.asm:152 + call 0053eh ; e8 a7 04 ; 0xc0094 vgarom.asm:153 + jmp short 000fdh ; eb 64 ; 0xc0097 vgarom.asm:154 + cmp ax, 0101bh ; 3d 1b 10 ; 0xc0099 vgarom.asm:156 + je short 000e3h ; 74 45 ; 0xc009c vgarom.asm:157 + cmp ah, 010h ; 80 fc 10 ; 0xc009e vgarom.asm:158 + jne short 000a8h ; 75 05 ; 0xc00a1 vgarom.asm:162 + call 001b4h ; e8 0e 01 ; 0xc00a3 vgarom.asm:164 + jmp short 000fdh ; eb 55 ; 0xc00a6 vgarom.asm:165 + cmp ah, 04fh ; 80 fc 4f ; 0xc00a8 vgarom.asm:168 + jne short 000e3h ; 75 36 ; 0xc00ab vgarom.asm:169 + cmp AL, strict byte 003h ; 3c 03 ; 0xc00ad vgarom.asm:170 + jne short 000b6h ; 75 05 ; 0xc00af vgarom.asm:171 + call 0080bh ; e8 57 07 ; 0xc00b1 vgarom.asm:172 + jmp short 000fdh ; eb 47 ; 0xc00b4 vgarom.asm:173 + cmp AL, strict byte 005h ; 3c 05 ; 0xc00b6 vgarom.asm:175 + jne short 000bfh ; 75 05 ; 0xc00b8 vgarom.asm:176 + call 00830h ; e8 73 07 ; 0xc00ba vgarom.asm:177 + jmp short 000fdh ; eb 3e ; 0xc00bd vgarom.asm:178 + cmp AL, strict byte 007h ; 3c 07 ; 0xc00bf vgarom.asm:180 + jne short 000c8h ; 75 05 ; 0xc00c1 vgarom.asm:181 + call 0085dh ; e8 97 07 ; 0xc00c3 vgarom.asm:182 + jmp short 000fdh ; eb 35 ; 0xc00c6 vgarom.asm:183 + cmp AL, strict byte 008h ; 3c 08 ; 0xc00c8 vgarom.asm:185 + jne short 000d1h ; 75 05 ; 0xc00ca vgarom.asm:186 + call 00891h ; e8 c2 07 ; 0xc00cc vgarom.asm:187 + jmp short 000fdh ; eb 2c ; 0xc00cf vgarom.asm:188 + cmp AL, strict byte 009h ; 3c 09 ; 0xc00d1 vgarom.asm:190 + jne short 000dah ; 75 05 ; 0xc00d3 vgarom.asm:191 + call 008c8h ; e8 f0 07 ; 0xc00d5 vgarom.asm:192 + jmp short 000fdh ; eb 23 ; 0xc00d8 vgarom.asm:193 + cmp AL, strict byte 00ah ; 3c 0a ; 0xc00da vgarom.asm:195 + jne short 000e3h ; 75 05 ; 0xc00dc vgarom.asm:196 + call 0093bh ; e8 5a 08 ; 0xc00de vgarom.asm:197 + jmp short 000fdh ; eb 1a ; 0xc00e1 vgarom.asm:198 + push ES ; 06 ; 0xc00e3 vgarom.asm:202 + push DS ; 1e ; 0xc00e4 vgarom.asm:203 + push ax ; 50 ; 0xc00e5 vgarom.asm:109 + push cx ; 51 ; 0xc00e6 vgarom.asm:110 + push dx ; 52 ; 0xc00e7 vgarom.asm:111 + push bx ; 53 ; 0xc00e8 vgarom.asm:112 + push sp ; 54 ; 0xc00e9 vgarom.asm:113 + push bp ; 55 ; 0xc00ea vgarom.asm:114 + push si ; 56 ; 0xc00eb vgarom.asm:115 + push di ; 57 ; 0xc00ec vgarom.asm:116 + push CS ; 0e ; 0xc00ed vgarom.asm:207 + pop DS ; 1f ; 0xc00ee vgarom.asm:208 + cld ; fc ; 0xc00ef vgarom.asm:209 + call 0394bh ; e8 58 38 ; 0xc00f0 vgarom.asm:210 + pop di ; 5f ; 0xc00f3 vgarom.asm:126 + pop si ; 5e ; 0xc00f4 vgarom.asm:127 + pop bp ; 5d ; 0xc00f5 vgarom.asm:128 + pop bx ; 5b ; 0xc00f6 vgarom.asm:129 + pop bx ; 5b ; 0xc00f7 vgarom.asm:130 + pop dx ; 5a ; 0xc00f8 vgarom.asm:131 + pop cx ; 59 ; 0xc00f9 vgarom.asm:132 + pop ax ; 58 ; 0xc00fa vgarom.asm:133 + pop DS ; 1f ; 0xc00fb vgarom.asm:213 + pop ES ; 07 ; 0xc00fc vgarom.asm:214 + popfw ; 9d ; 0xc00fd vgarom.asm:216 + iret ; cf ; 0xc00fe vgarom.asm:217 + cmp bh, 000h ; 80 ff 00 ; 0xc00ff vgarom.asm:222 + je short 0010ah ; 74 06 ; 0xc0102 vgarom.asm:223 + cmp bh, 001h ; 80 ff 01 ; 0xc0104 vgarom.asm:224 + je short 0015bh ; 74 52 ; 0xc0107 vgarom.asm:225 + retn ; c3 ; 0xc0109 vgarom.asm:229 + push ax ; 50 ; 0xc010a vgarom.asm:231 + push bx ; 53 ; 0xc010b vgarom.asm:232 + push cx ; 51 ; 0xc010c vgarom.asm:233 + push dx ; 52 ; 0xc010d vgarom.asm:234 + push DS ; 1e ; 0xc010e vgarom.asm:235 + mov dx, strict word 00040h ; ba 40 00 ; 0xc010f vgarom.asm:236 + mov ds, dx ; 8e da ; 0xc0112 vgarom.asm:237 + mov dx, 003dah ; ba da 03 ; 0xc0114 vgarom.asm:238 + in AL, DX ; ec ; 0xc0117 vgarom.asm:239 + cmp byte [word 00049h], 003h ; 80 3e 49 00 03 ; 0xc0118 vgarom.asm:240 + jbe short 0014eh ; 76 2f ; 0xc011d vgarom.asm:241 + mov dx, 003c0h ; ba c0 03 ; 0xc011f vgarom.asm:242 + mov AL, strict byte 000h ; b0 00 ; 0xc0122 vgarom.asm:243 + out DX, AL ; ee ; 0xc0124 vgarom.asm:244 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0125 vgarom.asm:245 + and AL, strict byte 00fh ; 24 0f ; 0xc0127 vgarom.asm:246 + test AL, strict byte 008h ; a8 08 ; 0xc0129 vgarom.asm:247 + je short 0012fh ; 74 02 ; 0xc012b vgarom.asm:248 + add AL, strict byte 008h ; 04 08 ; 0xc012d vgarom.asm:249 + out DX, AL ; ee ; 0xc012f vgarom.asm:251 + mov CL, strict byte 001h ; b1 01 ; 0xc0130 vgarom.asm:252 + and bl, 010h ; 80 e3 10 ; 0xc0132 vgarom.asm:253 + mov dx, 003c0h ; ba c0 03 ; 0xc0135 vgarom.asm:255 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc0138 vgarom.asm:256 + out DX, AL ; ee ; 0xc013a vgarom.asm:257 + mov dx, 003c1h ; ba c1 03 ; 0xc013b vgarom.asm:258 + in AL, DX ; ec ; 0xc013e vgarom.asm:259 + and AL, strict byte 0efh ; 24 ef ; 0xc013f vgarom.asm:260 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc0141 vgarom.asm:261 + mov dx, 003c0h ; ba c0 03 ; 0xc0143 vgarom.asm:262 + out DX, AL ; ee ; 0xc0146 vgarom.asm:263 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc0147 vgarom.asm:264 + cmp cl, 004h ; 80 f9 04 ; 0xc0149 vgarom.asm:265 + jne short 00135h ; 75 e7 ; 0xc014c vgarom.asm:266 + mov AL, strict byte 020h ; b0 20 ; 0xc014e vgarom.asm:268 + out DX, AL ; ee ; 0xc0150 vgarom.asm:269 + mov dx, 003dah ; ba da 03 ; 0xc0151 vgarom.asm:271 + in AL, DX ; ec ; 0xc0154 vgarom.asm:272 + pop DS ; 1f ; 0xc0155 vgarom.asm:274 + pop dx ; 5a ; 0xc0156 vgarom.asm:275 + pop cx ; 59 ; 0xc0157 vgarom.asm:276 + pop bx ; 5b ; 0xc0158 vgarom.asm:277 + pop ax ; 58 ; 0xc0159 vgarom.asm:278 + retn ; c3 ; 0xc015a vgarom.asm:279 + push ax ; 50 ; 0xc015b vgarom.asm:281 + push bx ; 53 ; 0xc015c vgarom.asm:282 + push cx ; 51 ; 0xc015d vgarom.asm:283 + push dx ; 52 ; 0xc015e vgarom.asm:284 + mov dx, 003dah ; ba da 03 ; 0xc015f vgarom.asm:285 + in AL, DX ; ec ; 0xc0162 vgarom.asm:286 + mov CL, strict byte 001h ; b1 01 ; 0xc0163 vgarom.asm:287 + and bl, 001h ; 80 e3 01 ; 0xc0165 vgarom.asm:288 + mov dx, 003c0h ; ba c0 03 ; 0xc0168 vgarom.asm:290 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc016b vgarom.asm:291 + out DX, AL ; ee ; 0xc016d vgarom.asm:292 + mov dx, 003c1h ; ba c1 03 ; 0xc016e vgarom.asm:293 + in AL, DX ; ec ; 0xc0171 vgarom.asm:294 + and AL, strict byte 0feh ; 24 fe ; 0xc0172 vgarom.asm:295 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc0174 vgarom.asm:296 + mov dx, 003c0h ; ba c0 03 ; 0xc0176 vgarom.asm:297 + out DX, AL ; ee ; 0xc0179 vgarom.asm:298 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc017a vgarom.asm:299 + cmp cl, 004h ; 80 f9 04 ; 0xc017c vgarom.asm:300 + jne short 00168h ; 75 e7 ; 0xc017f vgarom.asm:301 + mov AL, strict byte 020h ; b0 20 ; 0xc0181 vgarom.asm:302 + out DX, AL ; ee ; 0xc0183 vgarom.asm:303 + mov dx, 003dah ; ba da 03 ; 0xc0184 vgarom.asm:305 + in AL, DX ; ec ; 0xc0187 vgarom.asm:306 + pop dx ; 5a ; 0xc0188 vgarom.asm:308 + pop cx ; 59 ; 0xc0189 vgarom.asm:309 + pop bx ; 5b ; 0xc018a vgarom.asm:310 + pop ax ; 58 ; 0xc018b vgarom.asm:311 + retn ; c3 ; 0xc018c vgarom.asm:312 + push DS ; 1e ; 0xc018d vgarom.asm:317 + mov ax, strict word 00040h ; b8 40 00 ; 0xc018e vgarom.asm:318 + mov ds, ax ; 8e d8 ; 0xc0191 vgarom.asm:319 + push bx ; 53 ; 0xc0193 vgarom.asm:320 + mov bx, strict word 00062h ; bb 62 00 ; 0xc0194 vgarom.asm:321 + mov al, byte [bx] ; 8a 07 ; 0xc0197 vgarom.asm:322 + pop bx ; 5b ; 0xc0199 vgarom.asm:323 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc019a vgarom.asm:324 + push bx ; 53 ; 0xc019c vgarom.asm:325 + mov bx, 00087h ; bb 87 00 ; 0xc019d vgarom.asm:326 + mov ah, byte [bx] ; 8a 27 ; 0xc01a0 vgarom.asm:327 + and ah, 080h ; 80 e4 80 ; 0xc01a2 vgarom.asm:328 + mov bx, strict word 00049h ; bb 49 00 ; 0xc01a5 vgarom.asm:329 + mov al, byte [bx] ; 8a 07 ; 0xc01a8 vgarom.asm:330 + db 00ah, 0c4h + ; or al, ah ; 0a c4 ; 0xc01aa vgarom.asm:331 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc01ac vgarom.asm:332 + mov ah, byte [bx] ; 8a 27 ; 0xc01af vgarom.asm:333 + pop bx ; 5b ; 0xc01b1 vgarom.asm:334 + pop DS ; 1f ; 0xc01b2 vgarom.asm:335 + retn ; c3 ; 0xc01b3 vgarom.asm:336 + cmp AL, strict byte 000h ; 3c 00 ; 0xc01b4 vgarom.asm:341 + jne short 001bah ; 75 02 ; 0xc01b6 vgarom.asm:342 + jmp short 0021bh ; eb 61 ; 0xc01b8 vgarom.asm:343 + cmp AL, strict byte 001h ; 3c 01 ; 0xc01ba vgarom.asm:345 + jne short 001c0h ; 75 02 ; 0xc01bc vgarom.asm:346 + jmp short 00239h ; eb 79 ; 0xc01be vgarom.asm:347 + cmp AL, strict byte 002h ; 3c 02 ; 0xc01c0 vgarom.asm:349 + jne short 001c6h ; 75 02 ; 0xc01c2 vgarom.asm:350 + jmp short 00241h ; eb 7b ; 0xc01c4 vgarom.asm:351 + cmp AL, strict byte 003h ; 3c 03 ; 0xc01c6 vgarom.asm:353 + jne short 001cdh ; 75 03 ; 0xc01c8 vgarom.asm:354 + jmp near 00272h ; e9 a5 00 ; 0xc01ca vgarom.asm:355 + cmp AL, strict byte 007h ; 3c 07 ; 0xc01cd vgarom.asm:357 + jne short 001d4h ; 75 03 ; 0xc01cf vgarom.asm:358 + jmp near 0029fh ; e9 cb 00 ; 0xc01d1 vgarom.asm:359 + cmp AL, strict byte 008h ; 3c 08 ; 0xc01d4 vgarom.asm:361 + jne short 001dbh ; 75 03 ; 0xc01d6 vgarom.asm:362 + jmp near 002c7h ; e9 ec 00 ; 0xc01d8 vgarom.asm:363 + cmp AL, strict byte 009h ; 3c 09 ; 0xc01db vgarom.asm:365 + jne short 001e2h ; 75 03 ; 0xc01dd vgarom.asm:366 + jmp near 002d5h ; e9 f3 00 ; 0xc01df vgarom.asm:367 + cmp AL, strict byte 010h ; 3c 10 ; 0xc01e2 vgarom.asm:369 + jne short 001e9h ; 75 03 ; 0xc01e4 vgarom.asm:370 + jmp near 0031ah ; e9 31 01 ; 0xc01e6 vgarom.asm:371 + cmp AL, strict byte 012h ; 3c 12 ; 0xc01e9 vgarom.asm:373 + jne short 001f0h ; 75 03 ; 0xc01eb vgarom.asm:374 + jmp near 00333h ; e9 43 01 ; 0xc01ed vgarom.asm:375 + cmp AL, strict byte 013h ; 3c 13 ; 0xc01f0 vgarom.asm:377 + jne short 001f7h ; 75 03 ; 0xc01f2 vgarom.asm:378 + jmp near 0035bh ; e9 64 01 ; 0xc01f4 vgarom.asm:379 + cmp AL, strict byte 015h ; 3c 15 ; 0xc01f7 vgarom.asm:381 + jne short 001feh ; 75 03 ; 0xc01f9 vgarom.asm:382 + jmp near 003aeh ; e9 b0 01 ; 0xc01fb vgarom.asm:383 + cmp AL, strict byte 017h ; 3c 17 ; 0xc01fe vgarom.asm:385 + jne short 00205h ; 75 03 ; 0xc0200 vgarom.asm:386 + jmp near 003c9h ; e9 c4 01 ; 0xc0202 vgarom.asm:387 + cmp AL, strict byte 018h ; 3c 18 ; 0xc0205 vgarom.asm:389 + jne short 0020ch ; 75 03 ; 0xc0207 vgarom.asm:390 + jmp near 003f1h ; e9 e5 01 ; 0xc0209 vgarom.asm:391 + cmp AL, strict byte 019h ; 3c 19 ; 0xc020c vgarom.asm:393 + jne short 00213h ; 75 03 ; 0xc020e vgarom.asm:394 + jmp near 003fch ; e9 e9 01 ; 0xc0210 vgarom.asm:395 + cmp AL, strict byte 01ah ; 3c 1a ; 0xc0213 vgarom.asm:397 + jne short 0021ah ; 75 03 ; 0xc0215 vgarom.asm:398 + jmp near 00407h ; e9 ed 01 ; 0xc0217 vgarom.asm:399 + retn ; c3 ; 0xc021a vgarom.asm:404 + cmp bl, 014h ; 80 fb 14 ; 0xc021b vgarom.asm:407 + jnbe short 00238h ; 77 18 ; 0xc021e vgarom.asm:408 + push ax ; 50 ; 0xc0220 vgarom.asm:409 + push dx ; 52 ; 0xc0221 vgarom.asm:410 + mov dx, 003dah ; ba da 03 ; 0xc0222 vgarom.asm:411 + in AL, DX ; ec ; 0xc0225 vgarom.asm:412 + mov dx, 003c0h ; ba c0 03 ; 0xc0226 vgarom.asm:413 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc0229 vgarom.asm:414 + out DX, AL ; ee ; 0xc022b vgarom.asm:415 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc022c vgarom.asm:416 + out DX, AL ; ee ; 0xc022e vgarom.asm:417 + mov AL, strict byte 020h ; b0 20 ; 0xc022f vgarom.asm:418 + out DX, AL ; ee ; 0xc0231 vgarom.asm:419 + mov dx, 003dah ; ba da 03 ; 0xc0232 vgarom.asm:421 + in AL, DX ; ec ; 0xc0235 vgarom.asm:422 + pop dx ; 5a ; 0xc0236 vgarom.asm:424 + pop ax ; 58 ; 0xc0237 vgarom.asm:425 + retn ; c3 ; 0xc0238 vgarom.asm:427 + push bx ; 53 ; 0xc0239 vgarom.asm:432 + mov BL, strict byte 011h ; b3 11 ; 0xc023a vgarom.asm:433 + call 0021bh ; e8 dc ff ; 0xc023c vgarom.asm:434 + pop bx ; 5b ; 0xc023f vgarom.asm:435 + retn ; c3 ; 0xc0240 vgarom.asm:436 + push ax ; 50 ; 0xc0241 vgarom.asm:441 + push bx ; 53 ; 0xc0242 vgarom.asm:442 + push cx ; 51 ; 0xc0243 vgarom.asm:443 + push dx ; 52 ; 0xc0244 vgarom.asm:444 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc0245 vgarom.asm:445 + mov dx, 003dah ; ba da 03 ; 0xc0247 vgarom.asm:446 + in AL, DX ; ec ; 0xc024a vgarom.asm:447 + mov CL, strict byte 000h ; b1 00 ; 0xc024b vgarom.asm:448 + mov dx, 003c0h ; ba c0 03 ; 0xc024d vgarom.asm:449 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc0250 vgarom.asm:451 + out DX, AL ; ee ; 0xc0252 vgarom.asm:452 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0253 vgarom.asm:453 + out DX, AL ; ee ; 0xc0256 vgarom.asm:454 + inc bx ; 43 ; 0xc0257 vgarom.asm:455 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc0258 vgarom.asm:456 + cmp cl, 010h ; 80 f9 10 ; 0xc025a vgarom.asm:457 + jne short 00250h ; 75 f1 ; 0xc025d vgarom.asm:458 + mov AL, strict byte 011h ; b0 11 ; 0xc025f vgarom.asm:459 + out DX, AL ; ee ; 0xc0261 vgarom.asm:460 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0262 vgarom.asm:461 + out DX, AL ; ee ; 0xc0265 vgarom.asm:462 + mov AL, strict byte 020h ; b0 20 ; 0xc0266 vgarom.asm:463 + out DX, AL ; ee ; 0xc0268 vgarom.asm:464 + mov dx, 003dah ; ba da 03 ; 0xc0269 vgarom.asm:466 + in AL, DX ; ec ; 0xc026c vgarom.asm:467 + pop dx ; 5a ; 0xc026d vgarom.asm:469 + pop cx ; 59 ; 0xc026e vgarom.asm:470 + pop bx ; 5b ; 0xc026f vgarom.asm:471 + pop ax ; 58 ; 0xc0270 vgarom.asm:472 + retn ; c3 ; 0xc0271 vgarom.asm:473 + push ax ; 50 ; 0xc0272 vgarom.asm:478 + push bx ; 53 ; 0xc0273 vgarom.asm:479 + push dx ; 52 ; 0xc0274 vgarom.asm:480 + mov dx, 003dah ; ba da 03 ; 0xc0275 vgarom.asm:481 + in AL, DX ; ec ; 0xc0278 vgarom.asm:482 + mov dx, 003c0h ; ba c0 03 ; 0xc0279 vgarom.asm:483 + mov AL, strict byte 010h ; b0 10 ; 0xc027c vgarom.asm:484 + out DX, AL ; ee ; 0xc027e vgarom.asm:485 + mov dx, 003c1h ; ba c1 03 ; 0xc027f vgarom.asm:486 + in AL, DX ; ec ; 0xc0282 vgarom.asm:487 + and AL, strict byte 0f7h ; 24 f7 ; 0xc0283 vgarom.asm:488 + and bl, 001h ; 80 e3 01 ; 0xc0285 vgarom.asm:489 + sal bl, 1 ; d0 e3 ; 0xc0288 vgarom.asm:493 + sal bl, 1 ; d0 e3 ; 0xc028a vgarom.asm:494 + sal bl, 1 ; d0 e3 ; 0xc028c vgarom.asm:495 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc028e vgarom.asm:497 + mov dx, 003c0h ; ba c0 03 ; 0xc0290 vgarom.asm:498 + out DX, AL ; ee ; 0xc0293 vgarom.asm:499 + mov AL, strict byte 020h ; b0 20 ; 0xc0294 vgarom.asm:500 + out DX, AL ; ee ; 0xc0296 vgarom.asm:501 + mov dx, 003dah ; ba da 03 ; 0xc0297 vgarom.asm:503 + in AL, DX ; ec ; 0xc029a vgarom.asm:504 + pop dx ; 5a ; 0xc029b vgarom.asm:506 + pop bx ; 5b ; 0xc029c vgarom.asm:507 + pop ax ; 58 ; 0xc029d vgarom.asm:508 + retn ; c3 ; 0xc029e vgarom.asm:509 + cmp bl, 014h ; 80 fb 14 ; 0xc029f vgarom.asm:514 + jnbe short 002c6h ; 77 22 ; 0xc02a2 vgarom.asm:515 + push ax ; 50 ; 0xc02a4 vgarom.asm:516 + push dx ; 52 ; 0xc02a5 vgarom.asm:517 + mov dx, 003dah ; ba da 03 ; 0xc02a6 vgarom.asm:518 + in AL, DX ; ec ; 0xc02a9 vgarom.asm:519 + mov dx, 003c0h ; ba c0 03 ; 0xc02aa vgarom.asm:520 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc02ad vgarom.asm:521 + out DX, AL ; ee ; 0xc02af vgarom.asm:522 + mov dx, 003c1h ; ba c1 03 ; 0xc02b0 vgarom.asm:523 + in AL, DX ; ec ; 0xc02b3 vgarom.asm:524 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc02b4 vgarom.asm:525 + mov dx, 003dah ; ba da 03 ; 0xc02b6 vgarom.asm:526 + in AL, DX ; ec ; 0xc02b9 vgarom.asm:527 + mov dx, 003c0h ; ba c0 03 ; 0xc02ba vgarom.asm:528 + mov AL, strict byte 020h ; b0 20 ; 0xc02bd vgarom.asm:529 + out DX, AL ; ee ; 0xc02bf vgarom.asm:530 + mov dx, 003dah ; ba da 03 ; 0xc02c0 vgarom.asm:532 + in AL, DX ; ec ; 0xc02c3 vgarom.asm:533 + pop dx ; 5a ; 0xc02c4 vgarom.asm:535 + pop ax ; 58 ; 0xc02c5 vgarom.asm:536 + retn ; c3 ; 0xc02c6 vgarom.asm:538 + push ax ; 50 ; 0xc02c7 vgarom.asm:543 + push bx ; 53 ; 0xc02c8 vgarom.asm:544 + mov BL, strict byte 011h ; b3 11 ; 0xc02c9 vgarom.asm:545 + call 0029fh ; e8 d1 ff ; 0xc02cb vgarom.asm:546 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc02ce vgarom.asm:547 + pop bx ; 5b ; 0xc02d0 vgarom.asm:548 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc02d1 vgarom.asm:549 + pop ax ; 58 ; 0xc02d3 vgarom.asm:550 + retn ; c3 ; 0xc02d4 vgarom.asm:551 + push ax ; 50 ; 0xc02d5 vgarom.asm:556 + push bx ; 53 ; 0xc02d6 vgarom.asm:557 + push cx ; 51 ; 0xc02d7 vgarom.asm:558 + push dx ; 52 ; 0xc02d8 vgarom.asm:559 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc02d9 vgarom.asm:560 + mov CL, strict byte 000h ; b1 00 ; 0xc02db vgarom.asm:561 + mov dx, 003dah ; ba da 03 ; 0xc02dd vgarom.asm:563 + in AL, DX ; ec ; 0xc02e0 vgarom.asm:564 + mov dx, 003c0h ; ba c0 03 ; 0xc02e1 vgarom.asm:565 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc02e4 vgarom.asm:566 + out DX, AL ; ee ; 0xc02e6 vgarom.asm:567 + mov dx, 003c1h ; ba c1 03 ; 0xc02e7 vgarom.asm:568 + in AL, DX ; ec ; 0xc02ea vgarom.asm:569 + mov byte [es:bx], al ; 26 88 07 ; 0xc02eb vgarom.asm:570 + inc bx ; 43 ; 0xc02ee vgarom.asm:571 + db 0feh, 0c1h + ; inc cl ; fe c1 ; 0xc02ef vgarom.asm:572 + cmp cl, 010h ; 80 f9 10 ; 0xc02f1 vgarom.asm:573 + jne short 002ddh ; 75 e7 ; 0xc02f4 vgarom.asm:574 + mov dx, 003dah ; ba da 03 ; 0xc02f6 vgarom.asm:575 + in AL, DX ; ec ; 0xc02f9 vgarom.asm:576 + mov dx, 003c0h ; ba c0 03 ; 0xc02fa vgarom.asm:577 + mov AL, strict byte 011h ; b0 11 ; 0xc02fd vgarom.asm:578 + out DX, AL ; ee ; 0xc02ff vgarom.asm:579 + mov dx, 003c1h ; ba c1 03 ; 0xc0300 vgarom.asm:580 + in AL, DX ; ec ; 0xc0303 vgarom.asm:581 + mov byte [es:bx], al ; 26 88 07 ; 0xc0304 vgarom.asm:582 + mov dx, 003dah ; ba da 03 ; 0xc0307 vgarom.asm:583 + in AL, DX ; ec ; 0xc030a vgarom.asm:584 + mov dx, 003c0h ; ba c0 03 ; 0xc030b vgarom.asm:585 + mov AL, strict byte 020h ; b0 20 ; 0xc030e vgarom.asm:586 + out DX, AL ; ee ; 0xc0310 vgarom.asm:587 + mov dx, 003dah ; ba da 03 ; 0xc0311 vgarom.asm:589 + in AL, DX ; ec ; 0xc0314 vgarom.asm:590 + pop dx ; 5a ; 0xc0315 vgarom.asm:592 + pop cx ; 59 ; 0xc0316 vgarom.asm:593 + pop bx ; 5b ; 0xc0317 vgarom.asm:594 + pop ax ; 58 ; 0xc0318 vgarom.asm:595 + retn ; c3 ; 0xc0319 vgarom.asm:596 + push ax ; 50 ; 0xc031a vgarom.asm:601 + push dx ; 52 ; 0xc031b vgarom.asm:602 + mov dx, 003c8h ; ba c8 03 ; 0xc031c vgarom.asm:603 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc031f vgarom.asm:604 + out DX, AL ; ee ; 0xc0321 vgarom.asm:605 + mov dx, 003c9h ; ba c9 03 ; 0xc0322 vgarom.asm:606 + pop ax ; 58 ; 0xc0325 vgarom.asm:607 + push ax ; 50 ; 0xc0326 vgarom.asm:608 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc0327 vgarom.asm:609 + out DX, AL ; ee ; 0xc0329 vgarom.asm:610 + db 08ah, 0c5h + ; mov al, ch ; 8a c5 ; 0xc032a vgarom.asm:611 + out DX, AL ; ee ; 0xc032c vgarom.asm:612 + db 08ah, 0c1h + ; mov al, cl ; 8a c1 ; 0xc032d vgarom.asm:613 + out DX, AL ; ee ; 0xc032f vgarom.asm:614 + pop dx ; 5a ; 0xc0330 vgarom.asm:615 + pop ax ; 58 ; 0xc0331 vgarom.asm:616 + retn ; c3 ; 0xc0332 vgarom.asm:617 + push ax ; 50 ; 0xc0333 vgarom.asm:622 + push bx ; 53 ; 0xc0334 vgarom.asm:623 + push cx ; 51 ; 0xc0335 vgarom.asm:624 + push dx ; 52 ; 0xc0336 vgarom.asm:625 + mov dx, 003c8h ; ba c8 03 ; 0xc0337 vgarom.asm:626 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc033a vgarom.asm:627 + out DX, AL ; ee ; 0xc033c vgarom.asm:628 + pop dx ; 5a ; 0xc033d vgarom.asm:629 + push dx ; 52 ; 0xc033e vgarom.asm:630 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc033f vgarom.asm:631 + mov dx, 003c9h ; ba c9 03 ; 0xc0341 vgarom.asm:632 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0344 vgarom.asm:634 + out DX, AL ; ee ; 0xc0347 vgarom.asm:635 + inc bx ; 43 ; 0xc0348 vgarom.asm:636 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0349 vgarom.asm:637 + out DX, AL ; ee ; 0xc034c vgarom.asm:638 + inc bx ; 43 ; 0xc034d vgarom.asm:639 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc034e vgarom.asm:640 + out DX, AL ; ee ; 0xc0351 vgarom.asm:641 + inc bx ; 43 ; 0xc0352 vgarom.asm:642 + dec cx ; 49 ; 0xc0353 vgarom.asm:643 + jne short 00344h ; 75 ee ; 0xc0354 vgarom.asm:644 + pop dx ; 5a ; 0xc0356 vgarom.asm:645 + pop cx ; 59 ; 0xc0357 vgarom.asm:646 + pop bx ; 5b ; 0xc0358 vgarom.asm:647 + pop ax ; 58 ; 0xc0359 vgarom.asm:648 + retn ; c3 ; 0xc035a vgarom.asm:649 + push ax ; 50 ; 0xc035b vgarom.asm:654 + push bx ; 53 ; 0xc035c vgarom.asm:655 + push dx ; 52 ; 0xc035d vgarom.asm:656 + mov dx, 003dah ; ba da 03 ; 0xc035e vgarom.asm:657 + in AL, DX ; ec ; 0xc0361 vgarom.asm:658 + mov dx, 003c0h ; ba c0 03 ; 0xc0362 vgarom.asm:659 + mov AL, strict byte 010h ; b0 10 ; 0xc0365 vgarom.asm:660 + out DX, AL ; ee ; 0xc0367 vgarom.asm:661 + mov dx, 003c1h ; ba c1 03 ; 0xc0368 vgarom.asm:662 + in AL, DX ; ec ; 0xc036b vgarom.asm:663 + and bl, 001h ; 80 e3 01 ; 0xc036c vgarom.asm:664 + jne short 00389h ; 75 18 ; 0xc036f vgarom.asm:665 + and AL, strict byte 07fh ; 24 7f ; 0xc0371 vgarom.asm:666 + sal bh, 1 ; d0 e7 ; 0xc0373 vgarom.asm:670 + sal bh, 1 ; d0 e7 ; 0xc0375 vgarom.asm:671 + sal bh, 1 ; d0 e7 ; 0xc0377 vgarom.asm:672 + sal bh, 1 ; d0 e7 ; 0xc0379 vgarom.asm:673 + sal bh, 1 ; d0 e7 ; 0xc037b vgarom.asm:674 + sal bh, 1 ; d0 e7 ; 0xc037d vgarom.asm:675 + sal bh, 1 ; d0 e7 ; 0xc037f vgarom.asm:676 + db 00ah, 0c7h + ; or al, bh ; 0a c7 ; 0xc0381 vgarom.asm:678 + mov dx, 003c0h ; ba c0 03 ; 0xc0383 vgarom.asm:679 + out DX, AL ; ee ; 0xc0386 vgarom.asm:680 + jmp short 003a3h ; eb 1a ; 0xc0387 vgarom.asm:681 + push ax ; 50 ; 0xc0389 vgarom.asm:683 + mov dx, 003dah ; ba da 03 ; 0xc038a vgarom.asm:684 + in AL, DX ; ec ; 0xc038d vgarom.asm:685 + mov dx, 003c0h ; ba c0 03 ; 0xc038e vgarom.asm:686 + mov AL, strict byte 014h ; b0 14 ; 0xc0391 vgarom.asm:687 + out DX, AL ; ee ; 0xc0393 vgarom.asm:688 + pop ax ; 58 ; 0xc0394 vgarom.asm:689 + and AL, strict byte 080h ; 24 80 ; 0xc0395 vgarom.asm:690 + jne short 0039dh ; 75 04 ; 0xc0397 vgarom.asm:691 + sal bh, 1 ; d0 e7 ; 0xc0399 vgarom.asm:695 + sal bh, 1 ; d0 e7 ; 0xc039b vgarom.asm:696 + and bh, 00fh ; 80 e7 0f ; 0xc039d vgarom.asm:699 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc03a0 vgarom.asm:700 + out DX, AL ; ee ; 0xc03a2 vgarom.asm:701 + mov AL, strict byte 020h ; b0 20 ; 0xc03a3 vgarom.asm:703 + out DX, AL ; ee ; 0xc03a5 vgarom.asm:704 + mov dx, 003dah ; ba da 03 ; 0xc03a6 vgarom.asm:706 + in AL, DX ; ec ; 0xc03a9 vgarom.asm:707 + pop dx ; 5a ; 0xc03aa vgarom.asm:709 + pop bx ; 5b ; 0xc03ab vgarom.asm:710 + pop ax ; 58 ; 0xc03ac vgarom.asm:711 + retn ; c3 ; 0xc03ad vgarom.asm:712 + push ax ; 50 ; 0xc03ae vgarom.asm:717 + push dx ; 52 ; 0xc03af vgarom.asm:718 + mov dx, 003c7h ; ba c7 03 ; 0xc03b0 vgarom.asm:719 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc03b3 vgarom.asm:720 + out DX, AL ; ee ; 0xc03b5 vgarom.asm:721 + pop ax ; 58 ; 0xc03b6 vgarom.asm:722 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc03b7 vgarom.asm:723 + mov dx, 003c9h ; ba c9 03 ; 0xc03b9 vgarom.asm:724 + in AL, DX ; ec ; 0xc03bc vgarom.asm:725 + xchg al, ah ; 86 e0 ; 0xc03bd vgarom.asm:726 + push ax ; 50 ; 0xc03bf vgarom.asm:727 + in AL, DX ; ec ; 0xc03c0 vgarom.asm:728 + db 08ah, 0e8h + ; mov ch, al ; 8a e8 ; 0xc03c1 vgarom.asm:729 + in AL, DX ; ec ; 0xc03c3 vgarom.asm:730 + db 08ah, 0c8h + ; mov cl, al ; 8a c8 ; 0xc03c4 vgarom.asm:731 + pop dx ; 5a ; 0xc03c6 vgarom.asm:732 + pop ax ; 58 ; 0xc03c7 vgarom.asm:733 + retn ; c3 ; 0xc03c8 vgarom.asm:734 + push ax ; 50 ; 0xc03c9 vgarom.asm:739 + push bx ; 53 ; 0xc03ca vgarom.asm:740 + push cx ; 51 ; 0xc03cb vgarom.asm:741 + push dx ; 52 ; 0xc03cc vgarom.asm:742 + mov dx, 003c7h ; ba c7 03 ; 0xc03cd vgarom.asm:743 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc03d0 vgarom.asm:744 + out DX, AL ; ee ; 0xc03d2 vgarom.asm:745 + pop dx ; 5a ; 0xc03d3 vgarom.asm:746 + push dx ; 52 ; 0xc03d4 vgarom.asm:747 + db 08bh, 0dah + ; mov bx, dx ; 8b da ; 0xc03d5 vgarom.asm:748 + mov dx, 003c9h ; ba c9 03 ; 0xc03d7 vgarom.asm:749 + in AL, DX ; ec ; 0xc03da vgarom.asm:751 + mov byte [es:bx], al ; 26 88 07 ; 0xc03db vgarom.asm:752 + inc bx ; 43 ; 0xc03de vgarom.asm:753 + in AL, DX ; ec ; 0xc03df vgarom.asm:754 + mov byte [es:bx], al ; 26 88 07 ; 0xc03e0 vgarom.asm:755 + inc bx ; 43 ; 0xc03e3 vgarom.asm:756 + in AL, DX ; ec ; 0xc03e4 vgarom.asm:757 + mov byte [es:bx], al ; 26 88 07 ; 0xc03e5 vgarom.asm:758 + inc bx ; 43 ; 0xc03e8 vgarom.asm:759 + dec cx ; 49 ; 0xc03e9 vgarom.asm:760 + jne short 003dah ; 75 ee ; 0xc03ea vgarom.asm:761 + pop dx ; 5a ; 0xc03ec vgarom.asm:762 + pop cx ; 59 ; 0xc03ed vgarom.asm:763 + pop bx ; 5b ; 0xc03ee vgarom.asm:764 + pop ax ; 58 ; 0xc03ef vgarom.asm:765 + retn ; c3 ; 0xc03f0 vgarom.asm:766 + push ax ; 50 ; 0xc03f1 vgarom.asm:771 + push dx ; 52 ; 0xc03f2 vgarom.asm:772 + mov dx, 003c6h ; ba c6 03 ; 0xc03f3 vgarom.asm:773 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc03f6 vgarom.asm:774 + out DX, AL ; ee ; 0xc03f8 vgarom.asm:775 + pop dx ; 5a ; 0xc03f9 vgarom.asm:776 + pop ax ; 58 ; 0xc03fa vgarom.asm:777 + retn ; c3 ; 0xc03fb vgarom.asm:778 + push ax ; 50 ; 0xc03fc vgarom.asm:783 + push dx ; 52 ; 0xc03fd vgarom.asm:784 + mov dx, 003c6h ; ba c6 03 ; 0xc03fe vgarom.asm:785 + in AL, DX ; ec ; 0xc0401 vgarom.asm:786 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc0402 vgarom.asm:787 + pop dx ; 5a ; 0xc0404 vgarom.asm:788 + pop ax ; 58 ; 0xc0405 vgarom.asm:789 + retn ; c3 ; 0xc0406 vgarom.asm:790 + push ax ; 50 ; 0xc0407 vgarom.asm:795 + push dx ; 52 ; 0xc0408 vgarom.asm:796 + mov dx, 003dah ; ba da 03 ; 0xc0409 vgarom.asm:797 + in AL, DX ; ec ; 0xc040c vgarom.asm:798 + mov dx, 003c0h ; ba c0 03 ; 0xc040d vgarom.asm:799 + mov AL, strict byte 010h ; b0 10 ; 0xc0410 vgarom.asm:800 + out DX, AL ; ee ; 0xc0412 vgarom.asm:801 + mov dx, 003c1h ; ba c1 03 ; 0xc0413 vgarom.asm:802 + in AL, DX ; ec ; 0xc0416 vgarom.asm:803 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc0417 vgarom.asm:804 + shr bl, 1 ; d0 eb ; 0xc0419 vgarom.asm:808 + shr bl, 1 ; d0 eb ; 0xc041b vgarom.asm:809 + shr bl, 1 ; d0 eb ; 0xc041d vgarom.asm:810 + shr bl, 1 ; d0 eb ; 0xc041f vgarom.asm:811 + shr bl, 1 ; d0 eb ; 0xc0421 vgarom.asm:812 + shr bl, 1 ; d0 eb ; 0xc0423 vgarom.asm:813 + shr bl, 1 ; d0 eb ; 0xc0425 vgarom.asm:814 + mov dx, 003dah ; ba da 03 ; 0xc0427 vgarom.asm:816 + in AL, DX ; ec ; 0xc042a vgarom.asm:817 + mov dx, 003c0h ; ba c0 03 ; 0xc042b vgarom.asm:818 + mov AL, strict byte 014h ; b0 14 ; 0xc042e vgarom.asm:819 + out DX, AL ; ee ; 0xc0430 vgarom.asm:820 + mov dx, 003c1h ; ba c1 03 ; 0xc0431 vgarom.asm:821 + in AL, DX ; ec ; 0xc0434 vgarom.asm:822 + db 08ah, 0f8h + ; mov bh, al ; 8a f8 ; 0xc0435 vgarom.asm:823 + and bh, 00fh ; 80 e7 0f ; 0xc0437 vgarom.asm:824 + test bl, 001h ; f6 c3 01 ; 0xc043a vgarom.asm:825 + jne short 00443h ; 75 04 ; 0xc043d vgarom.asm:826 + shr bh, 1 ; d0 ef ; 0xc043f vgarom.asm:830 + shr bh, 1 ; d0 ef ; 0xc0441 vgarom.asm:831 + mov dx, 003dah ; ba da 03 ; 0xc0443 vgarom.asm:834 + in AL, DX ; ec ; 0xc0446 vgarom.asm:835 + mov dx, 003c0h ; ba c0 03 ; 0xc0447 vgarom.asm:836 + mov AL, strict byte 020h ; b0 20 ; 0xc044a vgarom.asm:837 + out DX, AL ; ee ; 0xc044c vgarom.asm:838 + mov dx, 003dah ; ba da 03 ; 0xc044d vgarom.asm:840 + in AL, DX ; ec ; 0xc0450 vgarom.asm:841 + pop dx ; 5a ; 0xc0451 vgarom.asm:843 + pop ax ; 58 ; 0xc0452 vgarom.asm:844 + retn ; c3 ; 0xc0453 vgarom.asm:845 + push ax ; 50 ; 0xc0454 vgarom.asm:850 + push dx ; 52 ; 0xc0455 vgarom.asm:851 + mov dx, 003c4h ; ba c4 03 ; 0xc0456 vgarom.asm:852 + db 08ah, 0e3h + ; mov ah, bl ; 8a e3 ; 0xc0459 vgarom.asm:853 + mov AL, strict byte 003h ; b0 03 ; 0xc045b vgarom.asm:854 + out DX, ax ; ef ; 0xc045d vgarom.asm:855 + pop dx ; 5a ; 0xc045e vgarom.asm:856 + pop ax ; 58 ; 0xc045f vgarom.asm:857 + retn ; c3 ; 0xc0460 vgarom.asm:858 + push DS ; 1e ; 0xc0461 vgarom.asm:863 + push ax ; 50 ; 0xc0462 vgarom.asm:864 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0463 vgarom.asm:865 + mov ds, ax ; 8e d8 ; 0xc0466 vgarom.asm:866 + db 032h, 0edh + ; xor ch, ch ; 32 ed ; 0xc0468 vgarom.asm:867 + mov bx, 00088h ; bb 88 00 ; 0xc046a vgarom.asm:868 + mov cl, byte [bx] ; 8a 0f ; 0xc046d vgarom.asm:869 + and cl, 00fh ; 80 e1 0f ; 0xc046f vgarom.asm:870 + mov bx, strict word 00063h ; bb 63 00 ; 0xc0472 vgarom.asm:871 + mov ax, word [bx] ; 8b 07 ; 0xc0475 vgarom.asm:872 + mov bx, strict word 00003h ; bb 03 00 ; 0xc0477 vgarom.asm:873 + cmp ax, 003b4h ; 3d b4 03 ; 0xc047a vgarom.asm:874 + jne short 00481h ; 75 02 ; 0xc047d vgarom.asm:875 + mov BH, strict byte 001h ; b7 01 ; 0xc047f vgarom.asm:876 + pop ax ; 58 ; 0xc0481 vgarom.asm:878 + pop DS ; 1f ; 0xc0482 vgarom.asm:879 + retn ; c3 ; 0xc0483 vgarom.asm:880 + push DS ; 1e ; 0xc0484 vgarom.asm:888 + push bx ; 53 ; 0xc0485 vgarom.asm:889 + push dx ; 52 ; 0xc0486 vgarom.asm:890 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc0487 vgarom.asm:891 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0489 vgarom.asm:892 + mov ds, ax ; 8e d8 ; 0xc048c vgarom.asm:893 + mov bx, 00089h ; bb 89 00 ; 0xc048e vgarom.asm:894 + mov al, byte [bx] ; 8a 07 ; 0xc0491 vgarom.asm:895 + mov bx, 00088h ; bb 88 00 ; 0xc0493 vgarom.asm:896 + mov ah, byte [bx] ; 8a 27 ; 0xc0496 vgarom.asm:897 + cmp dl, 001h ; 80 fa 01 ; 0xc0498 vgarom.asm:898 + je short 004b2h ; 74 15 ; 0xc049b vgarom.asm:899 + jc short 004bch ; 72 1d ; 0xc049d vgarom.asm:900 + cmp dl, 002h ; 80 fa 02 ; 0xc049f vgarom.asm:901 + je short 004a6h ; 74 02 ; 0xc04a2 vgarom.asm:902 + jmp short 004d0h ; eb 2a ; 0xc04a4 vgarom.asm:912 + and AL, strict byte 07fh ; 24 7f ; 0xc04a6 vgarom.asm:918 + or AL, strict byte 010h ; 0c 10 ; 0xc04a8 vgarom.asm:919 + and ah, 0f0h ; 80 e4 f0 ; 0xc04aa vgarom.asm:920 + or ah, 009h ; 80 cc 09 ; 0xc04ad vgarom.asm:921 + jne short 004c6h ; 75 14 ; 0xc04b0 vgarom.asm:922 + and AL, strict byte 06fh ; 24 6f ; 0xc04b2 vgarom.asm:928 + and ah, 0f0h ; 80 e4 f0 ; 0xc04b4 vgarom.asm:929 + or ah, 009h ; 80 cc 09 ; 0xc04b7 vgarom.asm:930 + jne short 004c6h ; 75 0a ; 0xc04ba vgarom.asm:931 + and AL, strict byte 0efh ; 24 ef ; 0xc04bc vgarom.asm:937 + or AL, strict byte 080h ; 0c 80 ; 0xc04be vgarom.asm:938 + and ah, 0f0h ; 80 e4 f0 ; 0xc04c0 vgarom.asm:939 + or ah, 008h ; 80 cc 08 ; 0xc04c3 vgarom.asm:940 + mov bx, 00089h ; bb 89 00 ; 0xc04c6 vgarom.asm:942 + mov byte [bx], al ; 88 07 ; 0xc04c9 vgarom.asm:943 + mov bx, 00088h ; bb 88 00 ; 0xc04cb vgarom.asm:944 + mov byte [bx], ah ; 88 27 ; 0xc04ce vgarom.asm:945 + mov ax, 01212h ; b8 12 12 ; 0xc04d0 vgarom.asm:947 + pop dx ; 5a ; 0xc04d3 vgarom.asm:948 + pop bx ; 5b ; 0xc04d4 vgarom.asm:949 + pop DS ; 1f ; 0xc04d5 vgarom.asm:950 + retn ; c3 ; 0xc04d6 vgarom.asm:951 + push DS ; 1e ; 0xc04d7 vgarom.asm:960 + push bx ; 53 ; 0xc04d8 vgarom.asm:961 + push dx ; 52 ; 0xc04d9 vgarom.asm:962 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc04da vgarom.asm:963 + and dl, 001h ; 80 e2 01 ; 0xc04dc vgarom.asm:964 + sal dl, 1 ; d0 e2 ; 0xc04df vgarom.asm:968 + sal dl, 1 ; d0 e2 ; 0xc04e1 vgarom.asm:969 + sal dl, 1 ; d0 e2 ; 0xc04e3 vgarom.asm:970 + mov ax, strict word 00040h ; b8 40 00 ; 0xc04e5 vgarom.asm:972 + mov ds, ax ; 8e d8 ; 0xc04e8 vgarom.asm:973 + mov bx, 00089h ; bb 89 00 ; 0xc04ea vgarom.asm:974 + mov al, byte [bx] ; 8a 07 ; 0xc04ed vgarom.asm:975 + and AL, strict byte 0f7h ; 24 f7 ; 0xc04ef vgarom.asm:976 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc04f1 vgarom.asm:977 + mov byte [bx], al ; 88 07 ; 0xc04f3 vgarom.asm:978 + mov ax, 01212h ; b8 12 12 ; 0xc04f5 vgarom.asm:979 + pop dx ; 5a ; 0xc04f8 vgarom.asm:980 + pop bx ; 5b ; 0xc04f9 vgarom.asm:981 + pop DS ; 1f ; 0xc04fa vgarom.asm:982 + retn ; c3 ; 0xc04fb vgarom.asm:983 + push bx ; 53 ; 0xc04fc vgarom.asm:987 + push dx ; 52 ; 0xc04fd vgarom.asm:988 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc04fe vgarom.asm:989 + and bl, 001h ; 80 e3 01 ; 0xc0500 vgarom.asm:990 + xor bl, 001h ; 80 f3 01 ; 0xc0503 vgarom.asm:991 + sal bl, 1 ; d0 e3 ; 0xc0506 vgarom.asm:992 + mov dx, 003cch ; ba cc 03 ; 0xc0508 vgarom.asm:993 + in AL, DX ; ec ; 0xc050b vgarom.asm:994 + and AL, strict byte 0fdh ; 24 fd ; 0xc050c vgarom.asm:995 + db 00ah, 0c3h + ; or al, bl ; 0a c3 ; 0xc050e vgarom.asm:996 + mov dx, 003c2h ; ba c2 03 ; 0xc0510 vgarom.asm:997 + out DX, AL ; ee ; 0xc0513 vgarom.asm:998 + mov ax, 01212h ; b8 12 12 ; 0xc0514 vgarom.asm:999 + pop dx ; 5a ; 0xc0517 vgarom.asm:1000 + pop bx ; 5b ; 0xc0518 vgarom.asm:1001 + retn ; c3 ; 0xc0519 vgarom.asm:1002 + push DS ; 1e ; 0xc051a vgarom.asm:1006 + push bx ; 53 ; 0xc051b vgarom.asm:1007 + push dx ; 52 ; 0xc051c vgarom.asm:1008 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc051d vgarom.asm:1009 + and dl, 001h ; 80 e2 01 ; 0xc051f vgarom.asm:1010 + xor dl, 001h ; 80 f2 01 ; 0xc0522 vgarom.asm:1011 + sal dl, 1 ; d0 e2 ; 0xc0525 vgarom.asm:1012 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0527 vgarom.asm:1013 + mov ds, ax ; 8e d8 ; 0xc052a vgarom.asm:1014 + mov bx, 00089h ; bb 89 00 ; 0xc052c vgarom.asm:1015 + mov al, byte [bx] ; 8a 07 ; 0xc052f vgarom.asm:1016 + and AL, strict byte 0fdh ; 24 fd ; 0xc0531 vgarom.asm:1017 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc0533 vgarom.asm:1018 + mov byte [bx], al ; 88 07 ; 0xc0535 vgarom.asm:1019 + mov ax, 01212h ; b8 12 12 ; 0xc0537 vgarom.asm:1020 + pop dx ; 5a ; 0xc053a vgarom.asm:1021 + pop bx ; 5b ; 0xc053b vgarom.asm:1022 + pop DS ; 1f ; 0xc053c vgarom.asm:1023 + retn ; c3 ; 0xc053d vgarom.asm:1024 + push DS ; 1e ; 0xc053e vgarom.asm:1028 + push bx ; 53 ; 0xc053f vgarom.asm:1029 + push dx ; 52 ; 0xc0540 vgarom.asm:1030 + db 08ah, 0d0h + ; mov dl, al ; 8a d0 ; 0xc0541 vgarom.asm:1031 + and dl, 001h ; 80 e2 01 ; 0xc0543 vgarom.asm:1032 + xor dl, 001h ; 80 f2 01 ; 0xc0546 vgarom.asm:1033 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0549 vgarom.asm:1034 + mov ds, ax ; 8e d8 ; 0xc054c vgarom.asm:1035 + mov bx, 00089h ; bb 89 00 ; 0xc054e vgarom.asm:1036 + mov al, byte [bx] ; 8a 07 ; 0xc0551 vgarom.asm:1037 + and AL, strict byte 0feh ; 24 fe ; 0xc0553 vgarom.asm:1038 + db 00ah, 0c2h + ; or al, dl ; 0a c2 ; 0xc0555 vgarom.asm:1039 + mov byte [bx], al ; 88 07 ; 0xc0557 vgarom.asm:1040 + mov ax, 01212h ; b8 12 12 ; 0xc0559 vgarom.asm:1041 + pop dx ; 5a ; 0xc055c vgarom.asm:1042 + pop bx ; 5b ; 0xc055d vgarom.asm:1043 + pop DS ; 1f ; 0xc055e vgarom.asm:1044 + retn ; c3 ; 0xc055f vgarom.asm:1045 + cmp AL, strict byte 000h ; 3c 00 ; 0xc0560 vgarom.asm:1050 + je short 00569h ; 74 05 ; 0xc0562 vgarom.asm:1051 + cmp AL, strict byte 001h ; 3c 01 ; 0xc0564 vgarom.asm:1052 + je short 0057eh ; 74 16 ; 0xc0566 vgarom.asm:1053 + retn ; c3 ; 0xc0568 vgarom.asm:1057 + push DS ; 1e ; 0xc0569 vgarom.asm:1059 + push ax ; 50 ; 0xc056a vgarom.asm:1060 + mov ax, strict word 00040h ; b8 40 00 ; 0xc056b vgarom.asm:1061 + mov ds, ax ; 8e d8 ; 0xc056e vgarom.asm:1062 + mov bx, 0008ah ; bb 8a 00 ; 0xc0570 vgarom.asm:1063 + mov al, byte [bx] ; 8a 07 ; 0xc0573 vgarom.asm:1064 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc0575 vgarom.asm:1065 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc0577 vgarom.asm:1066 + pop ax ; 58 ; 0xc0579 vgarom.asm:1067 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc057a vgarom.asm:1068 + pop DS ; 1f ; 0xc057c vgarom.asm:1069 + retn ; c3 ; 0xc057d vgarom.asm:1070 + push DS ; 1e ; 0xc057e vgarom.asm:1072 + push ax ; 50 ; 0xc057f vgarom.asm:1073 + push bx ; 53 ; 0xc0580 vgarom.asm:1074 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0581 vgarom.asm:1075 + mov ds, ax ; 8e d8 ; 0xc0584 vgarom.asm:1076 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc0586 vgarom.asm:1077 + mov bx, 0008ah ; bb 8a 00 ; 0xc0588 vgarom.asm:1078 + mov byte [bx], al ; 88 07 ; 0xc058b vgarom.asm:1079 + pop bx ; 5b ; 0xc058d vgarom.asm:1089 + pop ax ; 58 ; 0xc058e vgarom.asm:1090 + db 08ah, 0c4h + ; mov al, ah ; 8a c4 ; 0xc058f vgarom.asm:1091 + pop DS ; 1f ; 0xc0591 vgarom.asm:1092 + retn ; c3 ; 0xc0592 vgarom.asm:1093 + times 0xd db 0 + ; disGetNextSymbol 0xc05a0 LB 0x3af -> off=0x0 cb=0000000000000007 uValue=00000000000c05a0 'do_out_dx_ax' +do_out_dx_ax: ; 0xc05a0 LB 0x7 + xchg ah, al ; 86 c4 ; 0xc05a0 vberom.asm:69 + out DX, AL ; ee ; 0xc05a2 vberom.asm:70 + xchg ah, al ; 86 c4 ; 0xc05a3 vberom.asm:71 + out DX, AL ; ee ; 0xc05a5 vberom.asm:72 + retn ; c3 ; 0xc05a6 vberom.asm:73 + ; disGetNextSymbol 0xc05a7 LB 0x3a8 -> off=0x0 cb=0000000000000043 uValue=00000000000c05a7 'do_in_ax_dx' +do_in_ax_dx: ; 0xc05a7 LB 0x43 + in AL, DX ; ec ; 0xc05a7 vberom.asm:76 + xchg ah, al ; 86 c4 ; 0xc05a8 vberom.asm:77 + in AL, DX ; ec ; 0xc05aa vberom.asm:78 + retn ; c3 ; 0xc05ab vberom.asm:79 + push ax ; 50 ; 0xc05ac vberom.asm:90 + push dx ; 52 ; 0xc05ad vberom.asm:91 + mov dx, 003dah ; ba da 03 ; 0xc05ae vberom.asm:92 + in AL, DX ; ec ; 0xc05b1 vberom.asm:94 + test AL, strict byte 008h ; a8 08 ; 0xc05b2 vberom.asm:95 + je short 005b1h ; 74 fb ; 0xc05b4 vberom.asm:96 + pop dx ; 5a ; 0xc05b6 vberom.asm:97 + pop ax ; 58 ; 0xc05b7 vberom.asm:98 + retn ; c3 ; 0xc05b8 vberom.asm:99 + push ax ; 50 ; 0xc05b9 vberom.asm:102 + push dx ; 52 ; 0xc05ba vberom.asm:103 + mov dx, 003dah ; ba da 03 ; 0xc05bb vberom.asm:104 + in AL, DX ; ec ; 0xc05be vberom.asm:106 + test AL, strict byte 008h ; a8 08 ; 0xc05bf vberom.asm:107 + jne short 005beh ; 75 fb ; 0xc05c1 vberom.asm:108 + pop dx ; 5a ; 0xc05c3 vberom.asm:109 + pop ax ; 58 ; 0xc05c4 vberom.asm:110 + retn ; c3 ; 0xc05c5 vberom.asm:111 + push dx ; 52 ; 0xc05c6 vberom.asm:116 + mov dx, 001ceh ; ba ce 01 ; 0xc05c7 vberom.asm:117 + mov ax, strict word 00003h ; b8 03 00 ; 0xc05ca vberom.asm:118 + call 005a0h ; e8 d0 ff ; 0xc05cd vberom.asm:119 + mov dx, 001cfh ; ba cf 01 ; 0xc05d0 vberom.asm:120 + call 005a7h ; e8 d1 ff ; 0xc05d3 vberom.asm:121 + cmp AL, strict byte 004h ; 3c 04 ; 0xc05d6 vberom.asm:122 + jbe short 005e8h ; 76 0e ; 0xc05d8 vberom.asm:123 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc05da vberom.asm:124 + shr ah, 1 ; d0 ec ; 0xc05dc vberom.asm:128 + shr ah, 1 ; d0 ec ; 0xc05de vberom.asm:129 + shr ah, 1 ; d0 ec ; 0xc05e0 vberom.asm:130 + test AL, strict byte 007h ; a8 07 ; 0xc05e2 vberom.asm:132 + je short 005e8h ; 74 02 ; 0xc05e4 vberom.asm:133 + db 0feh, 0c4h + ; inc ah ; fe c4 ; 0xc05e6 vberom.asm:134 + pop dx ; 5a ; 0xc05e8 vberom.asm:136 + retn ; c3 ; 0xc05e9 vberom.asm:137 + ; disGetNextSymbol 0xc05ea LB 0x365 -> off=0x0 cb=0000000000000026 uValue=00000000000c05ea '_dispi_get_max_bpp' +_dispi_get_max_bpp: ; 0xc05ea LB 0x26 + push dx ; 52 ; 0xc05ea vberom.asm:142 + push bx ; 53 ; 0xc05eb vberom.asm:143 + call 00624h ; e8 35 00 ; 0xc05ec vberom.asm:144 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc05ef vberom.asm:145 + or ax, strict byte 00002h ; 83 c8 02 ; 0xc05f1 vberom.asm:146 + call 00610h ; e8 19 00 ; 0xc05f4 vberom.asm:147 + mov dx, 001ceh ; ba ce 01 ; 0xc05f7 vberom.asm:148 + mov ax, strict word 00003h ; b8 03 00 ; 0xc05fa vberom.asm:149 + call 005a0h ; e8 a0 ff ; 0xc05fd vberom.asm:150 + mov dx, 001cfh ; ba cf 01 ; 0xc0600 vberom.asm:151 + call 005a7h ; e8 a1 ff ; 0xc0603 vberom.asm:152 + push ax ; 50 ; 0xc0606 vberom.asm:153 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc0607 vberom.asm:154 + call 00610h ; e8 04 00 ; 0xc0609 vberom.asm:155 + pop ax ; 58 ; 0xc060c vberom.asm:156 + pop bx ; 5b ; 0xc060d vberom.asm:157 + pop dx ; 5a ; 0xc060e vberom.asm:158 + retn ; c3 ; 0xc060f vberom.asm:159 + ; disGetNextSymbol 0xc0610 LB 0x33f -> off=0x0 cb=0000000000000026 uValue=00000000000c0610 'dispi_set_enable_' +dispi_set_enable_: ; 0xc0610 LB 0x26 + push dx ; 52 ; 0xc0610 vberom.asm:162 + push ax ; 50 ; 0xc0611 vberom.asm:163 + mov dx, 001ceh ; ba ce 01 ; 0xc0612 vberom.asm:164 + mov ax, strict word 00004h ; b8 04 00 ; 0xc0615 vberom.asm:165 + call 005a0h ; e8 85 ff ; 0xc0618 vberom.asm:166 + pop ax ; 58 ; 0xc061b vberom.asm:167 + mov dx, 001cfh ; ba cf 01 ; 0xc061c vberom.asm:168 + call 005a0h ; e8 7e ff ; 0xc061f vberom.asm:169 + pop dx ; 5a ; 0xc0622 vberom.asm:170 + retn ; c3 ; 0xc0623 vberom.asm:171 + push dx ; 52 ; 0xc0624 vberom.asm:174 + mov dx, 001ceh ; ba ce 01 ; 0xc0625 vberom.asm:175 + mov ax, strict word 00004h ; b8 04 00 ; 0xc0628 vberom.asm:176 + call 005a0h ; e8 72 ff ; 0xc062b vberom.asm:177 + mov dx, 001cfh ; ba cf 01 ; 0xc062e vberom.asm:178 + call 005a7h ; e8 73 ff ; 0xc0631 vberom.asm:179 + pop dx ; 5a ; 0xc0634 vberom.asm:180 + retn ; c3 ; 0xc0635 vberom.asm:181 + ; disGetNextSymbol 0xc0636 LB 0x319 -> off=0x0 cb=0000000000000026 uValue=00000000000c0636 'dispi_set_bank_' +dispi_set_bank_: ; 0xc0636 LB 0x26 + push dx ; 52 ; 0xc0636 vberom.asm:184 + push ax ; 50 ; 0xc0637 vberom.asm:185 + mov dx, 001ceh ; ba ce 01 ; 0xc0638 vberom.asm:186 + mov ax, strict word 00005h ; b8 05 00 ; 0xc063b vberom.asm:187 + call 005a0h ; e8 5f ff ; 0xc063e vberom.asm:188 + pop ax ; 58 ; 0xc0641 vberom.asm:189 + mov dx, 001cfh ; ba cf 01 ; 0xc0642 vberom.asm:190 + call 005a0h ; e8 58 ff ; 0xc0645 vberom.asm:191 + pop dx ; 5a ; 0xc0648 vberom.asm:192 + retn ; c3 ; 0xc0649 vberom.asm:193 + push dx ; 52 ; 0xc064a vberom.asm:196 + mov dx, 001ceh ; ba ce 01 ; 0xc064b vberom.asm:197 + mov ax, strict word 00005h ; b8 05 00 ; 0xc064e vberom.asm:198 + call 005a0h ; e8 4c ff ; 0xc0651 vberom.asm:199 + mov dx, 001cfh ; ba cf 01 ; 0xc0654 vberom.asm:200 + call 005a7h ; e8 4d ff ; 0xc0657 vberom.asm:201 + pop dx ; 5a ; 0xc065a vberom.asm:202 + retn ; c3 ; 0xc065b vberom.asm:203 + ; disGetNextSymbol 0xc065c LB 0x2f3 -> off=0x0 cb=00000000000000ac uValue=00000000000c065c '_dispi_set_bank_farcall' +_dispi_set_bank_farcall: ; 0xc065c LB 0xac + cmp bx, 00100h ; 81 fb 00 01 ; 0xc065c vberom.asm:206 + je short 00686h ; 74 24 ; 0xc0660 vberom.asm:207 + db 00bh, 0dbh + ; or bx, bx ; 0b db ; 0xc0662 vberom.asm:208 + jne short 00698h ; 75 32 ; 0xc0664 vberom.asm:209 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc0666 vberom.asm:210 + push dx ; 52 ; 0xc0668 vberom.asm:211 + push ax ; 50 ; 0xc0669 vberom.asm:212 + mov ax, strict word 00005h ; b8 05 00 ; 0xc066a vberom.asm:213 + mov dx, 001ceh ; ba ce 01 ; 0xc066d vberom.asm:214 + call 005a0h ; e8 2d ff ; 0xc0670 vberom.asm:215 + pop ax ; 58 ; 0xc0673 vberom.asm:216 + mov dx, 001cfh ; ba cf 01 ; 0xc0674 vberom.asm:217 + call 005a0h ; e8 26 ff ; 0xc0677 vberom.asm:218 + call 005a7h ; e8 2a ff ; 0xc067a vberom.asm:219 + pop dx ; 5a ; 0xc067d vberom.asm:220 + db 03bh, 0d0h + ; cmp dx, ax ; 3b d0 ; 0xc067e vberom.asm:221 + jne short 00698h ; 75 16 ; 0xc0680 vberom.asm:222 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0682 vberom.asm:223 + retf ; cb ; 0xc0685 vberom.asm:224 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0686 vberom.asm:226 + mov dx, 001ceh ; ba ce 01 ; 0xc0689 vberom.asm:227 + call 005a0h ; e8 11 ff ; 0xc068c vberom.asm:228 + mov dx, 001cfh ; ba cf 01 ; 0xc068f vberom.asm:229 + call 005a7h ; e8 12 ff ; 0xc0692 vberom.asm:230 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc0695 vberom.asm:231 + retf ; cb ; 0xc0697 vberom.asm:232 + mov ax, 0014fh ; b8 4f 01 ; 0xc0698 vberom.asm:234 + retf ; cb ; 0xc069b vberom.asm:235 + push dx ; 52 ; 0xc069c vberom.asm:238 + push ax ; 50 ; 0xc069d vberom.asm:239 + mov dx, 001ceh ; ba ce 01 ; 0xc069e vberom.asm:240 + mov ax, strict word 00008h ; b8 08 00 ; 0xc06a1 vberom.asm:241 + call 005a0h ; e8 f9 fe ; 0xc06a4 vberom.asm:242 + pop ax ; 58 ; 0xc06a7 vberom.asm:243 + mov dx, 001cfh ; ba cf 01 ; 0xc06a8 vberom.asm:244 + call 005a0h ; e8 f2 fe ; 0xc06ab vberom.asm:245 + pop dx ; 5a ; 0xc06ae vberom.asm:246 + retn ; c3 ; 0xc06af vberom.asm:247 + push dx ; 52 ; 0xc06b0 vberom.asm:250 + mov dx, 001ceh ; ba ce 01 ; 0xc06b1 vberom.asm:251 + mov ax, strict word 00008h ; b8 08 00 ; 0xc06b4 vberom.asm:252 + call 005a0h ; e8 e6 fe ; 0xc06b7 vberom.asm:253 + mov dx, 001cfh ; ba cf 01 ; 0xc06ba vberom.asm:254 + call 005a7h ; e8 e7 fe ; 0xc06bd vberom.asm:255 + pop dx ; 5a ; 0xc06c0 vberom.asm:256 + retn ; c3 ; 0xc06c1 vberom.asm:257 + push dx ; 52 ; 0xc06c2 vberom.asm:260 + push ax ; 50 ; 0xc06c3 vberom.asm:261 + mov dx, 001ceh ; ba ce 01 ; 0xc06c4 vberom.asm:262 + mov ax, strict word 00009h ; b8 09 00 ; 0xc06c7 vberom.asm:263 + call 005a0h ; e8 d3 fe ; 0xc06ca vberom.asm:264 + pop ax ; 58 ; 0xc06cd vberom.asm:265 + mov dx, 001cfh ; ba cf 01 ; 0xc06ce vberom.asm:266 + call 005a0h ; e8 cc fe ; 0xc06d1 vberom.asm:267 + pop dx ; 5a ; 0xc06d4 vberom.asm:268 + retn ; c3 ; 0xc06d5 vberom.asm:269 + push dx ; 52 ; 0xc06d6 vberom.asm:272 + mov dx, 001ceh ; ba ce 01 ; 0xc06d7 vberom.asm:273 + mov ax, strict word 00009h ; b8 09 00 ; 0xc06da vberom.asm:274 + call 005a0h ; e8 c0 fe ; 0xc06dd vberom.asm:275 + mov dx, 001cfh ; ba cf 01 ; 0xc06e0 vberom.asm:276 + call 005a7h ; e8 c1 fe ; 0xc06e3 vberom.asm:277 + pop dx ; 5a ; 0xc06e6 vberom.asm:278 + retn ; c3 ; 0xc06e7 vberom.asm:279 + push ax ; 50 ; 0xc06e8 vberom.asm:282 + push bx ; 53 ; 0xc06e9 vberom.asm:283 + push dx ; 52 ; 0xc06ea vberom.asm:284 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc06eb vberom.asm:285 + call 005c6h ; e8 d6 fe ; 0xc06ed vberom.asm:286 + cmp AL, strict byte 004h ; 3c 04 ; 0xc06f0 vberom.asm:287 + jnbe short 006f6h ; 77 02 ; 0xc06f2 vberom.asm:288 + shr bx, 1 ; d1 eb ; 0xc06f4 vberom.asm:289 + shr bx, 1 ; d1 eb ; 0xc06f6 vberom.asm:294 + shr bx, 1 ; d1 eb ; 0xc06f8 vberom.asm:295 + shr bx, 1 ; d1 eb ; 0xc06fa vberom.asm:296 + mov dx, 003d4h ; ba d4 03 ; 0xc06fc vberom.asm:298 + db 08ah, 0e3h + ; mov ah, bl ; 8a e3 ; 0xc06ff vberom.asm:299 + mov AL, strict byte 013h ; b0 13 ; 0xc0701 vberom.asm:300 + out DX, ax ; ef ; 0xc0703 vberom.asm:301 + pop dx ; 5a ; 0xc0704 vberom.asm:302 + pop bx ; 5b ; 0xc0705 vberom.asm:303 + pop ax ; 58 ; 0xc0706 vberom.asm:304 + retn ; c3 ; 0xc0707 vberom.asm:305 + ; disGetNextSymbol 0xc0708 LB 0x247 -> off=0x0 cb=00000000000000f0 uValue=00000000000c0708 '_vga_compat_setup' +_vga_compat_setup: ; 0xc0708 LB 0xf0 + push ax ; 50 ; 0xc0708 vberom.asm:308 + push dx ; 52 ; 0xc0709 vberom.asm:309 + mov dx, 001ceh ; ba ce 01 ; 0xc070a vberom.asm:312 + mov ax, strict word 00001h ; b8 01 00 ; 0xc070d vberom.asm:313 + call 005a0h ; e8 8d fe ; 0xc0710 vberom.asm:314 + mov dx, 001cfh ; ba cf 01 ; 0xc0713 vberom.asm:315 + call 005a7h ; e8 8e fe ; 0xc0716 vberom.asm:316 + push ax ; 50 ; 0xc0719 vberom.asm:317 + mov dx, 003d4h ; ba d4 03 ; 0xc071a vberom.asm:318 + mov ax, strict word 00011h ; b8 11 00 ; 0xc071d vberom.asm:319 + out DX, ax ; ef ; 0xc0720 vberom.asm:320 + pop ax ; 58 ; 0xc0721 vberom.asm:321 + push ax ; 50 ; 0xc0722 vberom.asm:322 + shr ax, 1 ; d1 e8 ; 0xc0723 vberom.asm:326 + shr ax, 1 ; d1 e8 ; 0xc0725 vberom.asm:327 + shr ax, 1 ; d1 e8 ; 0xc0727 vberom.asm:328 + dec ax ; 48 ; 0xc0729 vberom.asm:330 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc072a vberom.asm:331 + mov AL, strict byte 001h ; b0 01 ; 0xc072c vberom.asm:332 + out DX, ax ; ef ; 0xc072e vberom.asm:333 + pop ax ; 58 ; 0xc072f vberom.asm:334 + call 006e8h ; e8 b5 ff ; 0xc0730 vberom.asm:335 + mov dx, 001ceh ; ba ce 01 ; 0xc0733 vberom.asm:338 + mov ax, strict word 00002h ; b8 02 00 ; 0xc0736 vberom.asm:339 + call 005a0h ; e8 64 fe ; 0xc0739 vberom.asm:340 + mov dx, 001cfh ; ba cf 01 ; 0xc073c vberom.asm:341 + call 005a7h ; e8 65 fe ; 0xc073f vberom.asm:342 + dec ax ; 48 ; 0xc0742 vberom.asm:343 + push ax ; 50 ; 0xc0743 vberom.asm:344 + mov dx, 003d4h ; ba d4 03 ; 0xc0744 vberom.asm:345 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc0747 vberom.asm:346 + mov AL, strict byte 012h ; b0 12 ; 0xc0749 vberom.asm:347 + out DX, ax ; ef ; 0xc074b vberom.asm:348 + pop ax ; 58 ; 0xc074c vberom.asm:349 + mov AL, strict byte 007h ; b0 07 ; 0xc074d vberom.asm:350 + out DX, AL ; ee ; 0xc074f vberom.asm:351 + inc dx ; 42 ; 0xc0750 vberom.asm:352 + in AL, DX ; ec ; 0xc0751 vberom.asm:353 + and AL, strict byte 0bdh ; 24 bd ; 0xc0752 vberom.asm:354 + test ah, 001h ; f6 c4 01 ; 0xc0754 vberom.asm:355 + je short 0075bh ; 74 02 ; 0xc0757 vberom.asm:356 + or AL, strict byte 002h ; 0c 02 ; 0xc0759 vberom.asm:357 + test ah, 002h ; f6 c4 02 ; 0xc075b vberom.asm:359 + je short 00762h ; 74 02 ; 0xc075e vberom.asm:360 + or AL, strict byte 040h ; 0c 40 ; 0xc0760 vberom.asm:361 + out DX, AL ; ee ; 0xc0762 vberom.asm:363 + mov dx, 003d4h ; ba d4 03 ; 0xc0763 vberom.asm:366 + mov ax, strict word 00009h ; b8 09 00 ; 0xc0766 vberom.asm:367 + out DX, AL ; ee ; 0xc0769 vberom.asm:368 + mov dx, 003d5h ; ba d5 03 ; 0xc076a vberom.asm:369 + in AL, DX ; ec ; 0xc076d vberom.asm:370 + and AL, strict byte 060h ; 24 60 ; 0xc076e vberom.asm:371 + out DX, AL ; ee ; 0xc0770 vberom.asm:372 + mov dx, 003d4h ; ba d4 03 ; 0xc0771 vberom.asm:373 + mov AL, strict byte 017h ; b0 17 ; 0xc0774 vberom.asm:374 + out DX, AL ; ee ; 0xc0776 vberom.asm:375 + mov dx, 003d5h ; ba d5 03 ; 0xc0777 vberom.asm:376 + in AL, DX ; ec ; 0xc077a vberom.asm:377 + or AL, strict byte 003h ; 0c 03 ; 0xc077b vberom.asm:378 + out DX, AL ; ee ; 0xc077d vberom.asm:379 + mov dx, 003dah ; ba da 03 ; 0xc077e vberom.asm:380 + in AL, DX ; ec ; 0xc0781 vberom.asm:381 + mov dx, 003c0h ; ba c0 03 ; 0xc0782 vberom.asm:382 + mov AL, strict byte 010h ; b0 10 ; 0xc0785 vberom.asm:383 + out DX, AL ; ee ; 0xc0787 vberom.asm:384 + mov dx, 003c1h ; ba c1 03 ; 0xc0788 vberom.asm:385 + in AL, DX ; ec ; 0xc078b vberom.asm:386 + or AL, strict byte 001h ; 0c 01 ; 0xc078c vberom.asm:387 + mov dx, 003c0h ; ba c0 03 ; 0xc078e vberom.asm:388 + out DX, AL ; ee ; 0xc0791 vberom.asm:389 + mov AL, strict byte 020h ; b0 20 ; 0xc0792 vberom.asm:390 + out DX, AL ; ee ; 0xc0794 vberom.asm:391 + mov dx, 003ceh ; ba ce 03 ; 0xc0795 vberom.asm:392 + mov ax, 00506h ; b8 06 05 ; 0xc0798 vberom.asm:393 + out DX, ax ; ef ; 0xc079b vberom.asm:394 + mov dx, 003c4h ; ba c4 03 ; 0xc079c vberom.asm:395 + mov ax, 00f02h ; b8 02 0f ; 0xc079f vberom.asm:396 + out DX, ax ; ef ; 0xc07a2 vberom.asm:397 + mov dx, 001ceh ; ba ce 01 ; 0xc07a3 vberom.asm:400 + mov ax, strict word 00003h ; b8 03 00 ; 0xc07a6 vberom.asm:401 + call 005a0h ; e8 f4 fd ; 0xc07a9 vberom.asm:402 + mov dx, 001cfh ; ba cf 01 ; 0xc07ac vberom.asm:403 + call 005a7h ; e8 f5 fd ; 0xc07af vberom.asm:404 + cmp AL, strict byte 008h ; 3c 08 ; 0xc07b2 vberom.asm:405 + jc short 007f6h ; 72 40 ; 0xc07b4 vberom.asm:406 + mov dx, 003d4h ; ba d4 03 ; 0xc07b6 vberom.asm:407 + mov AL, strict byte 014h ; b0 14 ; 0xc07b9 vberom.asm:408 + out DX, AL ; ee ; 0xc07bb vberom.asm:409 + mov dx, 003d5h ; ba d5 03 ; 0xc07bc vberom.asm:410 + in AL, DX ; ec ; 0xc07bf vberom.asm:411 + or AL, strict byte 040h ; 0c 40 ; 0xc07c0 vberom.asm:412 + out DX, AL ; ee ; 0xc07c2 vberom.asm:413 + mov dx, 003dah ; ba da 03 ; 0xc07c3 vberom.asm:414 + in AL, DX ; ec ; 0xc07c6 vberom.asm:415 + mov dx, 003c0h ; ba c0 03 ; 0xc07c7 vberom.asm:416 + mov AL, strict byte 010h ; b0 10 ; 0xc07ca vberom.asm:417 + out DX, AL ; ee ; 0xc07cc vberom.asm:418 + mov dx, 003c1h ; ba c1 03 ; 0xc07cd vberom.asm:419 + in AL, DX ; ec ; 0xc07d0 vberom.asm:420 + or AL, strict byte 040h ; 0c 40 ; 0xc07d1 vberom.asm:421 + mov dx, 003c0h ; ba c0 03 ; 0xc07d3 vberom.asm:422 + out DX, AL ; ee ; 0xc07d6 vberom.asm:423 + mov AL, strict byte 020h ; b0 20 ; 0xc07d7 vberom.asm:424 + out DX, AL ; ee ; 0xc07d9 vberom.asm:425 + mov dx, 003c4h ; ba c4 03 ; 0xc07da vberom.asm:426 + mov AL, strict byte 004h ; b0 04 ; 0xc07dd vberom.asm:427 + out DX, AL ; ee ; 0xc07df vberom.asm:428 + mov dx, 003c5h ; ba c5 03 ; 0xc07e0 vberom.asm:429 + in AL, DX ; ec ; 0xc07e3 vberom.asm:430 + or AL, strict byte 008h ; 0c 08 ; 0xc07e4 vberom.asm:431 + out DX, AL ; ee ; 0xc07e6 vberom.asm:432 + mov dx, 003ceh ; ba ce 03 ; 0xc07e7 vberom.asm:433 + mov AL, strict byte 005h ; b0 05 ; 0xc07ea vberom.asm:434 + out DX, AL ; ee ; 0xc07ec vberom.asm:435 + mov dx, 003cfh ; ba cf 03 ; 0xc07ed vberom.asm:436 + in AL, DX ; ec ; 0xc07f0 vberom.asm:437 + and AL, strict byte 09fh ; 24 9f ; 0xc07f1 vberom.asm:438 + or AL, strict byte 040h ; 0c 40 ; 0xc07f3 vberom.asm:439 + out DX, AL ; ee ; 0xc07f5 vberom.asm:440 + pop dx ; 5a ; 0xc07f6 vberom.asm:443 + pop ax ; 58 ; 0xc07f7 vberom.asm:444 + ; disGetNextSymbol 0xc07f8 LB 0x157 -> off=0x0 cb=0000000000000013 uValue=00000000000c07f8 '_vbe_has_vbe_display' +_vbe_has_vbe_display: ; 0xc07f8 LB 0x13 + push DS ; 1e ; 0xc07f8 vberom.asm:450 + push bx ; 53 ; 0xc07f9 vberom.asm:451 + mov ax, strict word 00040h ; b8 40 00 ; 0xc07fa vberom.asm:452 + mov ds, ax ; 8e d8 ; 0xc07fd vberom.asm:453 + mov bx, 000b9h ; bb b9 00 ; 0xc07ff vberom.asm:454 + mov al, byte [bx] ; 8a 07 ; 0xc0802 vberom.asm:455 + and AL, strict byte 001h ; 24 01 ; 0xc0804 vberom.asm:456 + db 032h, 0e4h + ; xor ah, ah ; 32 e4 ; 0xc0806 vberom.asm:457 + pop bx ; 5b ; 0xc0808 vberom.asm:458 + pop DS ; 1f ; 0xc0809 vberom.asm:459 + retn ; c3 ; 0xc080a vberom.asm:460 + ; disGetNextSymbol 0xc080b LB 0x144 -> off=0x0 cb=0000000000000025 uValue=00000000000c080b 'vbe_biosfn_return_current_mode' +vbe_biosfn_return_current_mode: ; 0xc080b LB 0x25 + push DS ; 1e ; 0xc080b vberom.asm:473 + mov ax, strict word 00040h ; b8 40 00 ; 0xc080c vberom.asm:474 + mov ds, ax ; 8e d8 ; 0xc080f vberom.asm:475 + call 00624h ; e8 10 fe ; 0xc0811 vberom.asm:476 + and ax, strict byte 00001h ; 83 e0 01 ; 0xc0814 vberom.asm:477 + je short 00822h ; 74 09 ; 0xc0817 vberom.asm:478 + mov bx, 000bah ; bb ba 00 ; 0xc0819 vberom.asm:479 + mov ax, word [bx] ; 8b 07 ; 0xc081c vberom.asm:480 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc081e vberom.asm:481 + jne short 0082bh ; 75 09 ; 0xc0820 vberom.asm:482 + mov bx, strict word 00049h ; bb 49 00 ; 0xc0822 vberom.asm:484 + mov al, byte [bx] ; 8a 07 ; 0xc0825 vberom.asm:485 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc0827 vberom.asm:486 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc0829 vberom.asm:487 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc082b vberom.asm:489 + pop DS ; 1f ; 0xc082e vberom.asm:490 + retn ; c3 ; 0xc082f vberom.asm:491 + ; disGetNextSymbol 0xc0830 LB 0x11f -> off=0x0 cb=000000000000002d uValue=00000000000c0830 'vbe_biosfn_display_window_control' +vbe_biosfn_display_window_control: ; 0xc0830 LB 0x2d + cmp bl, 000h ; 80 fb 00 ; 0xc0830 vberom.asm:515 + jne short 00859h ; 75 24 ; 0xc0833 vberom.asm:516 + cmp bh, 001h ; 80 ff 01 ; 0xc0835 vberom.asm:517 + je short 00850h ; 74 16 ; 0xc0838 vberom.asm:518 + jc short 00840h ; 72 04 ; 0xc083a vberom.asm:519 + mov ax, 00100h ; b8 00 01 ; 0xc083c vberom.asm:520 + retn ; c3 ; 0xc083f vberom.asm:521 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc0840 vberom.asm:523 + call 00636h ; e8 f1 fd ; 0xc0842 vberom.asm:524 + call 0064ah ; e8 02 fe ; 0xc0845 vberom.asm:525 + db 03bh, 0c2h + ; cmp ax, dx ; 3b c2 ; 0xc0848 vberom.asm:526 + jne short 00859h ; 75 0d ; 0xc084a vberom.asm:527 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc084c vberom.asm:528 + retn ; c3 ; 0xc084f vberom.asm:529 + call 0064ah ; e8 f7 fd ; 0xc0850 vberom.asm:531 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc0853 vberom.asm:532 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0855 vberom.asm:533 + retn ; c3 ; 0xc0858 vberom.asm:534 + mov ax, 0014fh ; b8 4f 01 ; 0xc0859 vberom.asm:536 + retn ; c3 ; 0xc085c vberom.asm:537 + ; disGetNextSymbol 0xc085d LB 0xf2 -> off=0x0 cb=0000000000000034 uValue=00000000000c085d 'vbe_biosfn_set_get_display_start' +vbe_biosfn_set_get_display_start: ; 0xc085d LB 0x34 + cmp bl, 080h ; 80 fb 80 ; 0xc085d vberom.asm:577 + je short 0086dh ; 74 0b ; 0xc0860 vberom.asm:578 + cmp bl, 001h ; 80 fb 01 ; 0xc0862 vberom.asm:579 + je short 00881h ; 74 1a ; 0xc0865 vberom.asm:580 + jc short 00873h ; 72 0a ; 0xc0867 vberom.asm:581 + mov ax, 00100h ; b8 00 01 ; 0xc0869 vberom.asm:582 + retn ; c3 ; 0xc086c vberom.asm:583 + call 005b9h ; e8 49 fd ; 0xc086d vberom.asm:585 + call 005ach ; e8 39 fd ; 0xc0870 vberom.asm:586 + db 08bh, 0c1h + ; mov ax, cx ; 8b c1 ; 0xc0873 vberom.asm:588 + call 0069ch ; e8 24 fe ; 0xc0875 vberom.asm:589 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc0878 vberom.asm:590 + call 006c2h ; e8 45 fe ; 0xc087a vberom.asm:591 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc087d vberom.asm:592 + retn ; c3 ; 0xc0880 vberom.asm:593 + call 006b0h ; e8 2c fe ; 0xc0881 vberom.asm:595 + db 08bh, 0c8h + ; mov cx, ax ; 8b c8 ; 0xc0884 vberom.asm:596 + call 006d6h ; e8 4d fe ; 0xc0886 vberom.asm:597 + db 08bh, 0d0h + ; mov dx, ax ; 8b d0 ; 0xc0889 vberom.asm:598 + db 032h, 0ffh + ; xor bh, bh ; 32 ff ; 0xc088b vberom.asm:599 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc088d vberom.asm:600 + retn ; c3 ; 0xc0890 vberom.asm:601 + ; disGetNextSymbol 0xc0891 LB 0xbe -> off=0x0 cb=0000000000000037 uValue=00000000000c0891 'vbe_biosfn_set_get_dac_palette_format' +vbe_biosfn_set_get_dac_palette_format: ; 0xc0891 LB 0x37 + cmp bl, 001h ; 80 fb 01 ; 0xc0891 vberom.asm:616 + je short 008b4h ; 74 1e ; 0xc0894 vberom.asm:617 + jc short 0089ch ; 72 04 ; 0xc0896 vberom.asm:618 + mov ax, 00100h ; b8 00 01 ; 0xc0898 vberom.asm:619 + retn ; c3 ; 0xc089b vberom.asm:620 + call 00624h ; e8 85 fd ; 0xc089c vberom.asm:622 + cmp bh, 006h ; 80 ff 06 ; 0xc089f vberom.asm:623 + je short 008aeh ; 74 0a ; 0xc08a2 vberom.asm:624 + cmp bh, 008h ; 80 ff 08 ; 0xc08a4 vberom.asm:625 + jne short 008c4h ; 75 1b ; 0xc08a7 vberom.asm:626 + or ax, strict byte 00020h ; 83 c8 20 ; 0xc08a9 vberom.asm:627 + jne short 008b1h ; 75 03 ; 0xc08ac vberom.asm:628 + and ax, strict byte 0ffdfh ; 83 e0 df ; 0xc08ae vberom.asm:630 + call 00610h ; e8 5c fd ; 0xc08b1 vberom.asm:632 + mov BH, strict byte 006h ; b7 06 ; 0xc08b4 vberom.asm:634 + call 00624h ; e8 6b fd ; 0xc08b6 vberom.asm:635 + and ax, strict byte 00020h ; 83 e0 20 ; 0xc08b9 vberom.asm:636 + je short 008c0h ; 74 02 ; 0xc08bc vberom.asm:637 + mov BH, strict byte 008h ; b7 08 ; 0xc08be vberom.asm:638 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc08c0 vberom.asm:640 + retn ; c3 ; 0xc08c3 vberom.asm:641 + mov ax, 0014fh ; b8 4f 01 ; 0xc08c4 vberom.asm:643 + retn ; c3 ; 0xc08c7 vberom.asm:644 + ; disGetNextSymbol 0xc08c8 LB 0x87 -> off=0x0 cb=0000000000000073 uValue=00000000000c08c8 'vbe_biosfn_set_get_palette_data' +vbe_biosfn_set_get_palette_data: ; 0xc08c8 LB 0x73 + test bl, bl ; 84 db ; 0xc08c8 vberom.asm:683 + je short 008dbh ; 74 0f ; 0xc08ca vberom.asm:684 + cmp bl, 001h ; 80 fb 01 ; 0xc08cc vberom.asm:685 + je short 00909h ; 74 38 ; 0xc08cf vberom.asm:686 + cmp bl, 003h ; 80 fb 03 ; 0xc08d1 vberom.asm:687 + jbe short 00937h ; 76 61 ; 0xc08d4 vberom.asm:688 + cmp bl, 080h ; 80 fb 80 ; 0xc08d6 vberom.asm:689 + jne short 00933h ; 75 58 ; 0xc08d9 vberom.asm:690 + push ax ; 50 ; 0xc08db vberom.asm:145 + push cx ; 51 ; 0xc08dc vberom.asm:146 + push dx ; 52 ; 0xc08dd vberom.asm:147 + push bx ; 53 ; 0xc08de vberom.asm:148 + push sp ; 54 ; 0xc08df vberom.asm:149 + push bp ; 55 ; 0xc08e0 vberom.asm:150 + push si ; 56 ; 0xc08e1 vberom.asm:151 + push di ; 57 ; 0xc08e2 vberom.asm:152 + push DS ; 1e ; 0xc08e3 vberom.asm:696 + push ES ; 06 ; 0xc08e4 vberom.asm:697 + pop DS ; 1f ; 0xc08e5 vberom.asm:698 + db 08ah, 0c2h + ; mov al, dl ; 8a c2 ; 0xc08e6 vberom.asm:699 + mov dx, 003c8h ; ba c8 03 ; 0xc08e8 vberom.asm:700 + out DX, AL ; ee ; 0xc08eb vberom.asm:701 + inc dx ; 42 ; 0xc08ec vberom.asm:702 + db 08bh, 0f7h + ; mov si, di ; 8b f7 ; 0xc08ed vberom.asm:703 + lodsw ; ad ; 0xc08ef vberom.asm:714 + db 08bh, 0d8h + ; mov bx, ax ; 8b d8 ; 0xc08f0 vberom.asm:715 + lodsw ; ad ; 0xc08f2 vberom.asm:716 + out DX, AL ; ee ; 0xc08f3 vberom.asm:717 + db 08ah, 0c7h + ; mov al, bh ; 8a c7 ; 0xc08f4 vberom.asm:718 + out DX, AL ; ee ; 0xc08f6 vberom.asm:719 + db 08ah, 0c3h + ; mov al, bl ; 8a c3 ; 0xc08f7 vberom.asm:720 + out DX, AL ; ee ; 0xc08f9 vberom.asm:721 + loop 008efh ; e2 f3 ; 0xc08fa vberom.asm:723 + pop DS ; 1f ; 0xc08fc vberom.asm:724 + pop di ; 5f ; 0xc08fd vberom.asm:164 + pop si ; 5e ; 0xc08fe vberom.asm:165 + pop bp ; 5d ; 0xc08ff vberom.asm:166 + pop bx ; 5b ; 0xc0900 vberom.asm:167 + pop bx ; 5b ; 0xc0901 vberom.asm:168 + pop dx ; 5a ; 0xc0902 vberom.asm:169 + pop cx ; 59 ; 0xc0903 vberom.asm:170 + pop ax ; 58 ; 0xc0904 vberom.asm:171 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0905 vberom.asm:727 + retn ; c3 ; 0xc0908 vberom.asm:728 + push ax ; 50 ; 0xc0909 vberom.asm:145 + push cx ; 51 ; 0xc090a vberom.asm:146 + push dx ; 52 ; 0xc090b vberom.asm:147 + push bx ; 53 ; 0xc090c vberom.asm:148 + push sp ; 54 ; 0xc090d vberom.asm:149 + push bp ; 55 ; 0xc090e vberom.asm:150 + push si ; 56 ; 0xc090f vberom.asm:151 + push di ; 57 ; 0xc0910 vberom.asm:152 + db 08ah, 0c2h + ; mov al, dl ; 8a c2 ; 0xc0911 vberom.asm:732 + mov dx, 003c7h ; ba c7 03 ; 0xc0913 vberom.asm:733 + out DX, AL ; ee ; 0xc0916 vberom.asm:734 + add dl, 002h ; 80 c2 02 ; 0xc0917 vberom.asm:735 + db 033h, 0dbh + ; xor bx, bx ; 33 db ; 0xc091a vberom.asm:746 + in AL, DX ; ec ; 0xc091c vberom.asm:748 + db 08ah, 0d8h + ; mov bl, al ; 8a d8 ; 0xc091d vberom.asm:749 + in AL, DX ; ec ; 0xc091f vberom.asm:750 + db 08ah, 0e0h + ; mov ah, al ; 8a e0 ; 0xc0920 vberom.asm:751 + in AL, DX ; ec ; 0xc0922 vberom.asm:752 + stosw ; ab ; 0xc0923 vberom.asm:753 + db 08bh, 0c3h + ; mov ax, bx ; 8b c3 ; 0xc0924 vberom.asm:754 + stosw ; ab ; 0xc0926 vberom.asm:755 + loop 0091ch ; e2 f3 ; 0xc0927 vberom.asm:757 + pop di ; 5f ; 0xc0929 vberom.asm:164 + pop si ; 5e ; 0xc092a vberom.asm:165 + pop bp ; 5d ; 0xc092b vberom.asm:166 + pop bx ; 5b ; 0xc092c vberom.asm:167 + pop bx ; 5b ; 0xc092d vberom.asm:168 + pop dx ; 5a ; 0xc092e vberom.asm:169 + pop cx ; 59 ; 0xc092f vberom.asm:170 + pop ax ; 58 ; 0xc0930 vberom.asm:171 + jmp short 00905h ; eb d2 ; 0xc0931 vberom.asm:759 + mov ax, 0014fh ; b8 4f 01 ; 0xc0933 vberom.asm:762 + retn ; c3 ; 0xc0936 vberom.asm:763 + mov ax, 0024fh ; b8 4f 02 ; 0xc0937 vberom.asm:765 + retn ; c3 ; 0xc093a vberom.asm:766 + ; disGetNextSymbol 0xc093b LB 0x14 -> off=0x0 cb=0000000000000014 uValue=00000000000c093b 'vbe_biosfn_return_protected_mode_interface' +vbe_biosfn_return_protected_mode_interface: ; 0xc093b LB 0x14 + test bl, bl ; 84 db ; 0xc093b vberom.asm:780 + jne short 0094bh ; 75 0c ; 0xc093d vberom.asm:781 + push CS ; 0e ; 0xc093f vberom.asm:782 + pop ES ; 07 ; 0xc0940 vberom.asm:783 + mov di, 04640h ; bf 40 46 ; 0xc0941 vberom.asm:784 + mov cx, 00115h ; b9 15 01 ; 0xc0944 vberom.asm:785 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc0947 vberom.asm:786 + retn ; c3 ; 0xc094a vberom.asm:787 + mov ax, 0014fh ; b8 4f 01 ; 0xc094b vberom.asm:789 + retn ; c3 ; 0xc094e vberom.asm:790 + + ; Padding 0xa1 bytes at 0xc094f + times 161 db 0 + +section _TEXT progbits vstart=0x9f0 align=1 ; size=0x3b74 class=CODE group=AUTO + ; disGetNextSymbol 0xc09f0 LB 0x3b74 -> off=0x0 cb=000000000000001c uValue=00000000000c09f0 'set_int_vector' +set_int_vector: ; 0xc09f0 LB 0x1c + push dx ; 52 ; 0xc09f0 vgabios.c:87 + push bp ; 55 ; 0xc09f1 + mov bp, sp ; 89 e5 ; 0xc09f2 + mov dx, bx ; 89 da ; 0xc09f4 + mov bl, al ; 88 c3 ; 0xc09f6 vgabios.c:91 + xor bh, bh ; 30 ff ; 0xc09f8 + sal bx, 1 ; d1 e3 ; 0xc09fa + sal bx, 1 ; d1 e3 ; 0xc09fc + xor ax, ax ; 31 c0 ; 0xc09fe + mov es, ax ; 8e c0 ; 0xc0a00 + mov word [es:bx], dx ; 26 89 17 ; 0xc0a02 + mov word [es:bx+002h], cx ; 26 89 4f 02 ; 0xc0a05 + pop bp ; 5d ; 0xc0a09 vgabios.c:92 + pop dx ; 5a ; 0xc0a0a + retn ; c3 ; 0xc0a0b + ; disGetNextSymbol 0xc0a0c LB 0x3b58 -> off=0x0 cb=000000000000001c uValue=00000000000c0a0c 'init_vga_card' +init_vga_card: ; 0xc0a0c LB 0x1c + push bp ; 55 ; 0xc0a0c vgabios.c:143 + mov bp, sp ; 89 e5 ; 0xc0a0d + push dx ; 52 ; 0xc0a0f + mov AL, strict byte 0c3h ; b0 c3 ; 0xc0a10 vgabios.c:146 + mov dx, 003c2h ; ba c2 03 ; 0xc0a12 + out DX, AL ; ee ; 0xc0a15 + mov AL, strict byte 004h ; b0 04 ; 0xc0a16 vgabios.c:149 + mov dx, 003c4h ; ba c4 03 ; 0xc0a18 + out DX, AL ; ee ; 0xc0a1b + mov AL, strict byte 002h ; b0 02 ; 0xc0a1c vgabios.c:150 + mov dx, 003c5h ; ba c5 03 ; 0xc0a1e + out DX, AL ; ee ; 0xc0a21 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc0a22 vgabios.c:155 + pop dx ; 5a ; 0xc0a25 + pop bp ; 5d ; 0xc0a26 + retn ; c3 ; 0xc0a27 + ; disGetNextSymbol 0xc0a28 LB 0x3b3c -> off=0x0 cb=000000000000003e uValue=00000000000c0a28 'init_bios_area' +init_bios_area: ; 0xc0a28 LB 0x3e + push bx ; 53 ; 0xc0a28 vgabios.c:221 + push bp ; 55 ; 0xc0a29 + mov bp, sp ; 89 e5 ; 0xc0a2a + xor bx, bx ; 31 db ; 0xc0a2c vgabios.c:225 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0a2e + mov es, ax ; 8e c0 ; 0xc0a31 + mov al, byte [es:bx+010h] ; 26 8a 47 10 ; 0xc0a33 vgabios.c:228 + and AL, strict byte 0cfh ; 24 cf ; 0xc0a37 + or AL, strict byte 020h ; 0c 20 ; 0xc0a39 + mov byte [es:bx+010h], al ; 26 88 47 10 ; 0xc0a3b + mov byte [es:bx+00085h], 010h ; 26 c6 87 85 00 10 ; 0xc0a3f vgabios.c:232 + mov word [es:bx+00087h], 0f960h ; 26 c7 87 87 00 60 f9 ; 0xc0a45 vgabios.c:234 + mov byte [es:bx+00089h], 051h ; 26 c6 87 89 00 51 ; 0xc0a4c vgabios.c:238 + mov byte [es:bx+065h], 009h ; 26 c6 47 65 09 ; 0xc0a52 vgabios.c:240 + mov word [es:bx+000a8h], 05551h ; 26 c7 87 a8 00 51 55 ; 0xc0a57 vgabios.c:242 + mov [es:bx+000aah], ds ; 26 8c 9f aa 00 ; 0xc0a5e + pop bp ; 5d ; 0xc0a63 vgabios.c:243 + pop bx ; 5b ; 0xc0a64 + retn ; c3 ; 0xc0a65 + ; disGetNextSymbol 0xc0a66 LB 0x3afe -> off=0x0 cb=0000000000000031 uValue=00000000000c0a66 'vgabios_init_func' +vgabios_init_func: ; 0xc0a66 LB 0x31 + inc bp ; 45 ; 0xc0a66 vgabios.c:250 + push bp ; 55 ; 0xc0a67 + mov bp, sp ; 89 e5 ; 0xc0a68 + call 00a0ch ; e8 9f ff ; 0xc0a6a vgabios.c:252 + call 00a28h ; e8 b8 ff ; 0xc0a6d vgabios.c:253 + call 03ed5h ; e8 62 34 ; 0xc0a70 vgabios.c:255 + mov bx, strict word 00028h ; bb 28 00 ; 0xc0a73 vgabios.c:257 + mov cx, 0c000h ; b9 00 c0 ; 0xc0a76 + mov ax, strict word 00010h ; b8 10 00 ; 0xc0a79 + call 009f0h ; e8 71 ff ; 0xc0a7c + mov bx, strict word 00028h ; bb 28 00 ; 0xc0a7f vgabios.c:258 + mov cx, 0c000h ; b9 00 c0 ; 0xc0a82 + mov ax, strict word 0006dh ; b8 6d 00 ; 0xc0a85 + call 009f0h ; e8 65 ff ; 0xc0a88 + mov ax, strict word 00003h ; b8 03 00 ; 0xc0a8b vgabios.c:284 + db 032h, 0e4h + ; xor ah, ah ; 32 e4 ; 0xc0a8e + int 010h ; cd 10 ; 0xc0a90 + mov sp, bp ; 89 ec ; 0xc0a92 vgabios.c:287 + pop bp ; 5d ; 0xc0a94 + dec bp ; 4d ; 0xc0a95 + retf ; cb ; 0xc0a96 + ; disGetNextSymbol 0xc0a97 LB 0x3acd -> off=0x0 cb=0000000000000040 uValue=00000000000c0a97 'vga_get_cursor_pos' +vga_get_cursor_pos: ; 0xc0a97 LB 0x40 + push si ; 56 ; 0xc0a97 vgabios.c:356 + push di ; 57 ; 0xc0a98 + push bp ; 55 ; 0xc0a99 + mov bp, sp ; 89 e5 ; 0xc0a9a + mov si, dx ; 89 d6 ; 0xc0a9c + cmp AL, strict byte 007h ; 3c 07 ; 0xc0a9e vgabios.c:358 + jbe short 00ab0h ; 76 0e ; 0xc0aa0 + push SS ; 16 ; 0xc0aa2 vgabios.c:359 + pop ES ; 07 ; 0xc0aa3 + mov word [es:si], strict word 00000h ; 26 c7 04 00 00 ; 0xc0aa4 + mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xc0aa9 vgabios.c:360 + jmp short 00ad3h ; eb 23 ; 0xc0aae vgabios.c:361 + mov di, strict word 00060h ; bf 60 00 ; 0xc0ab0 vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc0ab3 + mov es, dx ; 8e c2 ; 0xc0ab6 + mov di, word [es:di] ; 26 8b 3d ; 0xc0ab8 + push SS ; 16 ; 0xc0abb vgabios.c:58 + pop ES ; 07 ; 0xc0abc + mov word [es:si], di ; 26 89 3c ; 0xc0abd + xor ah, ah ; 30 e4 ; 0xc0ac0 vgabios.c:364 + mov si, ax ; 89 c6 ; 0xc0ac2 + sal si, 1 ; d1 e6 ; 0xc0ac4 + add si, strict byte 00050h ; 83 c6 50 ; 0xc0ac6 + mov es, dx ; 8e c2 ; 0xc0ac9 vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc0acb + push SS ; 16 ; 0xc0ace vgabios.c:58 + pop ES ; 07 ; 0xc0acf + mov word [es:bx], ax ; 26 89 07 ; 0xc0ad0 + pop bp ; 5d ; 0xc0ad3 vgabios.c:366 + pop di ; 5f ; 0xc0ad4 + pop si ; 5e ; 0xc0ad5 + retn ; c3 ; 0xc0ad6 + ; disGetNextSymbol 0xc0ad7 LB 0x3a8d -> off=0x0 cb=000000000000005e uValue=00000000000c0ad7 'vga_find_glyph' +vga_find_glyph: ; 0xc0ad7 LB 0x5e + push bp ; 55 ; 0xc0ad7 vgabios.c:369 + mov bp, sp ; 89 e5 ; 0xc0ad8 + push si ; 56 ; 0xc0ada + push di ; 57 ; 0xc0adb + push ax ; 50 ; 0xc0adc + push ax ; 50 ; 0xc0add + push dx ; 52 ; 0xc0ade + push bx ; 53 ; 0xc0adf + mov bl, cl ; 88 cb ; 0xc0ae0 + mov word [bp-006h], strict word 00000h ; c7 46 fa 00 00 ; 0xc0ae2 vgabios.c:371 + dec word [bp+004h] ; ff 4e 04 ; 0xc0ae7 vgabios.c:373 + cmp word [bp+004h], strict byte 0ffffh ; 83 7e 04 ff ; 0xc0aea + je short 00b29h ; 74 39 ; 0xc0aee + mov cl, byte [bp+006h] ; 8a 4e 06 ; 0xc0af0 vgabios.c:374 + xor ch, ch ; 30 ed ; 0xc0af3 + mov dx, ss ; 8c d2 ; 0xc0af5 + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc0af7 + mov di, word [bp-008h] ; 8b 7e f8 ; 0xc0afa + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc0afd + push DS ; 1e ; 0xc0b00 + mov ds, dx ; 8e da ; 0xc0b01 + rep cmpsb ; f3 a6 ; 0xc0b03 + pop DS ; 1f ; 0xc0b05 + mov ax, strict word 00000h ; b8 00 00 ; 0xc0b06 + je short 00b0dh ; 74 02 ; 0xc0b09 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc0b0b + test ax, ax ; 85 c0 ; 0xc0b0d + jne short 00b1dh ; 75 0c ; 0xc0b0f + mov al, bl ; 88 d8 ; 0xc0b11 vgabios.c:375 + xor ah, ah ; 30 e4 ; 0xc0b13 + or ah, 080h ; 80 cc 80 ; 0xc0b15 + mov word [bp-006h], ax ; 89 46 fa ; 0xc0b18 + jmp short 00b29h ; eb 0c ; 0xc0b1b vgabios.c:376 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc0b1d vgabios.c:378 + xor ah, ah ; 30 e4 ; 0xc0b20 + add word [bp-008h], ax ; 01 46 f8 ; 0xc0b22 + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc0b25 vgabios.c:379 + jmp short 00ae7h ; eb be ; 0xc0b27 vgabios.c:380 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc0b29 vgabios.c:382 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0b2c + pop di ; 5f ; 0xc0b2f + pop si ; 5e ; 0xc0b30 + pop bp ; 5d ; 0xc0b31 + retn 00004h ; c2 04 00 ; 0xc0b32 + ; disGetNextSymbol 0xc0b35 LB 0x3a2f -> off=0x0 cb=0000000000000046 uValue=00000000000c0b35 'vga_read_glyph_planar' +vga_read_glyph_planar: ; 0xc0b35 LB 0x46 + push bp ; 55 ; 0xc0b35 vgabios.c:384 + mov bp, sp ; 89 e5 ; 0xc0b36 + push si ; 56 ; 0xc0b38 + push di ; 57 ; 0xc0b39 + push ax ; 50 ; 0xc0b3a + push ax ; 50 ; 0xc0b3b + mov si, ax ; 89 c6 ; 0xc0b3c + mov word [bp-006h], dx ; 89 56 fa ; 0xc0b3e + mov word [bp-008h], bx ; 89 5e f8 ; 0xc0b41 + mov bx, cx ; 89 cb ; 0xc0b44 + mov ax, 00805h ; b8 05 08 ; 0xc0b46 vgabios.c:391 + mov dx, 003ceh ; ba ce 03 ; 0xc0b49 + out DX, ax ; ef ; 0xc0b4c + dec byte [bp+004h] ; fe 4e 04 ; 0xc0b4d vgabios.c:393 + cmp byte [bp+004h], 0ffh ; 80 7e 04 ff ; 0xc0b50 + je short 00b6bh ; 74 15 ; 0xc0b54 + mov es, [bp-006h] ; 8e 46 fa ; 0xc0b56 vgabios.c:394 + mov al, byte [es:si] ; 26 8a 04 ; 0xc0b59 + not al ; f6 d0 ; 0xc0b5c + mov di, bx ; 89 df ; 0xc0b5e + inc bx ; 43 ; 0xc0b60 + push SS ; 16 ; 0xc0b61 + pop ES ; 07 ; 0xc0b62 + mov byte [es:di], al ; 26 88 05 ; 0xc0b63 + add si, word [bp-008h] ; 03 76 f8 ; 0xc0b66 vgabios.c:395 + jmp short 00b4dh ; eb e2 ; 0xc0b69 vgabios.c:396 + mov ax, strict word 00005h ; b8 05 00 ; 0xc0b6b vgabios.c:399 + mov dx, 003ceh ; ba ce 03 ; 0xc0b6e + out DX, ax ; ef ; 0xc0b71 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0b72 vgabios.c:400 + pop di ; 5f ; 0xc0b75 + pop si ; 5e ; 0xc0b76 + pop bp ; 5d ; 0xc0b77 + retn 00002h ; c2 02 00 ; 0xc0b78 + ; disGetNextSymbol 0xc0b7b LB 0x39e9 -> off=0x0 cb=000000000000002f uValue=00000000000c0b7b 'vga_char_ofs_planar' +vga_char_ofs_planar: ; 0xc0b7b LB 0x2f + push si ; 56 ; 0xc0b7b vgabios.c:402 + push bp ; 55 ; 0xc0b7c + mov bp, sp ; 89 e5 ; 0xc0b7d + mov ch, al ; 88 c5 ; 0xc0b7f + mov al, dl ; 88 d0 ; 0xc0b81 + xor ah, ah ; 30 e4 ; 0xc0b83 vgabios.c:406 + mul bx ; f7 e3 ; 0xc0b85 + mov bl, byte [bp+006h] ; 8a 5e 06 ; 0xc0b87 + xor bh, bh ; 30 ff ; 0xc0b8a + mul bx ; f7 e3 ; 0xc0b8c + mov bl, ch ; 88 eb ; 0xc0b8e + add bx, ax ; 01 c3 ; 0xc0b90 + mov si, strict word 0004ch ; be 4c 00 ; 0xc0b92 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0b95 + mov es, ax ; 8e c0 ; 0xc0b98 + mov si, word [es:si] ; 26 8b 34 ; 0xc0b9a + mov al, cl ; 88 c8 ; 0xc0b9d vgabios.c:58 + xor ah, ah ; 30 e4 ; 0xc0b9f + mul si ; f7 e6 ; 0xc0ba1 + add ax, bx ; 01 d8 ; 0xc0ba3 + pop bp ; 5d ; 0xc0ba5 vgabios.c:410 + pop si ; 5e ; 0xc0ba6 + retn 00002h ; c2 02 00 ; 0xc0ba7 + ; disGetNextSymbol 0xc0baa LB 0x39ba -> off=0x0 cb=0000000000000045 uValue=00000000000c0baa 'vga_read_char_planar' +vga_read_char_planar: ; 0xc0baa LB 0x45 + push bp ; 55 ; 0xc0baa vgabios.c:412 + mov bp, sp ; 89 e5 ; 0xc0bab + push cx ; 51 ; 0xc0bad + push si ; 56 ; 0xc0bae + sub sp, strict byte 00012h ; 83 ec 12 ; 0xc0baf + mov si, ax ; 89 c6 ; 0xc0bb2 + mov ax, dx ; 89 d0 ; 0xc0bb4 + mov byte [bp-006h], bl ; 88 5e fa ; 0xc0bb6 vgabios.c:416 + mov byte [bp-005h], 000h ; c6 46 fb 00 ; 0xc0bb9 + push word [bp-006h] ; ff 76 fa ; 0xc0bbd + lea cx, [bp-016h] ; 8d 4e ea ; 0xc0bc0 + mov bx, si ; 89 f3 ; 0xc0bc3 + mov dx, 0a000h ; ba 00 a0 ; 0xc0bc5 + call 00b35h ; e8 6a ff ; 0xc0bc8 + push word [bp-006h] ; ff 76 fa ; 0xc0bcb vgabios.c:419 + mov ax, 00100h ; b8 00 01 ; 0xc0bce + push ax ; 50 ; 0xc0bd1 + mov bx, 0010ch ; bb 0c 01 ; 0xc0bd2 vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0bd5 + mov es, ax ; 8e c0 ; 0xc0bd7 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0bd9 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0bdc + xor cx, cx ; 31 c9 ; 0xc0be0 vgabios.c:68 + lea bx, [bp-016h] ; 8d 5e ea ; 0xc0be2 + call 00ad7h ; e8 ef fe ; 0xc0be5 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0be8 vgabios.c:420 + pop si ; 5e ; 0xc0beb + pop cx ; 59 ; 0xc0bec + pop bp ; 5d ; 0xc0bed + retn ; c3 ; 0xc0bee + ; disGetNextSymbol 0xc0bef LB 0x3975 -> off=0x0 cb=0000000000000027 uValue=00000000000c0bef 'vga_char_ofs_linear' +vga_char_ofs_linear: ; 0xc0bef LB 0x27 + push bp ; 55 ; 0xc0bef vgabios.c:422 + mov bp, sp ; 89 e5 ; 0xc0bf0 + push ax ; 50 ; 0xc0bf2 + mov byte [bp-002h], al ; 88 46 fe ; 0xc0bf3 + mov al, dl ; 88 d0 ; 0xc0bf6 vgabios.c:426 + xor ah, ah ; 30 e4 ; 0xc0bf8 + mul bx ; f7 e3 ; 0xc0bfa + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc0bfc + xor dh, dh ; 30 f6 ; 0xc0bff + mul dx ; f7 e2 ; 0xc0c01 + mov dx, ax ; 89 c2 ; 0xc0c03 + mov al, byte [bp-002h] ; 8a 46 fe ; 0xc0c05 + xor ah, ah ; 30 e4 ; 0xc0c08 + add ax, dx ; 01 d0 ; 0xc0c0a + mov CL, strict byte 003h ; b1 03 ; 0xc0c0c vgabios.c:427 + sal ax, CL ; d3 e0 ; 0xc0c0e + mov sp, bp ; 89 ec ; 0xc0c10 vgabios.c:429 + pop bp ; 5d ; 0xc0c12 + retn 00002h ; c2 02 00 ; 0xc0c13 + ; disGetNextSymbol 0xc0c16 LB 0x394e -> off=0x0 cb=000000000000004e uValue=00000000000c0c16 'vga_read_glyph_linear' +vga_read_glyph_linear: ; 0xc0c16 LB 0x4e + push si ; 56 ; 0xc0c16 vgabios.c:431 + push di ; 57 ; 0xc0c17 + push bp ; 55 ; 0xc0c18 + mov bp, sp ; 89 e5 ; 0xc0c19 + push ax ; 50 ; 0xc0c1b + push ax ; 50 ; 0xc0c1c + mov si, ax ; 89 c6 ; 0xc0c1d + mov word [bp-002h], dx ; 89 56 fe ; 0xc0c1f + mov word [bp-004h], bx ; 89 5e fc ; 0xc0c22 + mov bx, cx ; 89 cb ; 0xc0c25 + dec byte [bp+008h] ; fe 4e 08 ; 0xc0c27 vgabios.c:437 + cmp byte [bp+008h], 0ffh ; 80 7e 08 ff ; 0xc0c2a + je short 00c5ch ; 74 2c ; 0xc0c2e + xor dh, dh ; 30 f6 ; 0xc0c30 vgabios.c:438 + mov DL, strict byte 080h ; b2 80 ; 0xc0c32 vgabios.c:439 + xor ax, ax ; 31 c0 ; 0xc0c34 vgabios.c:440 + jmp short 00c3dh ; eb 05 ; 0xc0c36 + cmp ax, strict word 00008h ; 3d 08 00 ; 0xc0c38 + jnl short 00c51h ; 7d 14 ; 0xc0c3b + mov es, [bp-002h] ; 8e 46 fe ; 0xc0c3d vgabios.c:441 + mov di, si ; 89 f7 ; 0xc0c40 + add di, ax ; 01 c7 ; 0xc0c42 + cmp byte [es:di], 000h ; 26 80 3d 00 ; 0xc0c44 + je short 00c4ch ; 74 02 ; 0xc0c48 + or dh, dl ; 08 d6 ; 0xc0c4a vgabios.c:442 + shr dl, 1 ; d0 ea ; 0xc0c4c vgabios.c:443 + inc ax ; 40 ; 0xc0c4e vgabios.c:444 + jmp short 00c38h ; eb e7 ; 0xc0c4f + mov di, bx ; 89 df ; 0xc0c51 vgabios.c:445 + inc bx ; 43 ; 0xc0c53 + mov byte [ss:di], dh ; 36 88 35 ; 0xc0c54 + add si, word [bp-004h] ; 03 76 fc ; 0xc0c57 vgabios.c:446 + jmp short 00c27h ; eb cb ; 0xc0c5a vgabios.c:447 + mov sp, bp ; 89 ec ; 0xc0c5c vgabios.c:448 + pop bp ; 5d ; 0xc0c5e + pop di ; 5f ; 0xc0c5f + pop si ; 5e ; 0xc0c60 + retn 00002h ; c2 02 00 ; 0xc0c61 + ; disGetNextSymbol 0xc0c64 LB 0x3900 -> off=0x0 cb=0000000000000049 uValue=00000000000c0c64 'vga_read_char_linear' +vga_read_char_linear: ; 0xc0c64 LB 0x49 + push bp ; 55 ; 0xc0c64 vgabios.c:450 + mov bp, sp ; 89 e5 ; 0xc0c65 + push cx ; 51 ; 0xc0c67 + push si ; 56 ; 0xc0c68 + sub sp, strict byte 00012h ; 83 ec 12 ; 0xc0c69 + mov si, ax ; 89 c6 ; 0xc0c6c + mov ax, dx ; 89 d0 ; 0xc0c6e + mov byte [bp-006h], bl ; 88 5e fa ; 0xc0c70 vgabios.c:454 + mov byte [bp-005h], 000h ; c6 46 fb 00 ; 0xc0c73 + push word [bp-006h] ; ff 76 fa ; 0xc0c77 + mov CL, strict byte 003h ; b1 03 ; 0xc0c7a + mov bx, si ; 89 f3 ; 0xc0c7c + sal bx, CL ; d3 e3 ; 0xc0c7e + lea cx, [bp-016h] ; 8d 4e ea ; 0xc0c80 + mov dx, 0a000h ; ba 00 a0 ; 0xc0c83 + call 00c16h ; e8 8d ff ; 0xc0c86 + push word [bp-006h] ; ff 76 fa ; 0xc0c89 vgabios.c:457 + mov ax, 00100h ; b8 00 01 ; 0xc0c8c + push ax ; 50 ; 0xc0c8f + mov bx, 0010ch ; bb 0c 01 ; 0xc0c90 vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0c93 + mov es, ax ; 8e c0 ; 0xc0c95 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0c97 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0c9a + xor cx, cx ; 31 c9 ; 0xc0c9e vgabios.c:68 + lea bx, [bp-016h] ; 8d 5e ea ; 0xc0ca0 + call 00ad7h ; e8 31 fe ; 0xc0ca3 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0ca6 vgabios.c:458 + pop si ; 5e ; 0xc0ca9 + pop cx ; 59 ; 0xc0caa + pop bp ; 5d ; 0xc0cab + retn ; c3 ; 0xc0cac + ; disGetNextSymbol 0xc0cad LB 0x38b7 -> off=0x0 cb=0000000000000036 uValue=00000000000c0cad 'vga_read_2bpp_char' +vga_read_2bpp_char: ; 0xc0cad LB 0x36 + push bp ; 55 ; 0xc0cad vgabios.c:460 + mov bp, sp ; 89 e5 ; 0xc0cae + push bx ; 53 ; 0xc0cb0 + push cx ; 51 ; 0xc0cb1 + mov bx, ax ; 89 c3 ; 0xc0cb2 + mov es, dx ; 8e c2 ; 0xc0cb4 + mov cx, 0c000h ; b9 00 c0 ; 0xc0cb6 vgabios.c:466 + mov DH, strict byte 080h ; b6 80 ; 0xc0cb9 vgabios.c:467 + xor dl, dl ; 30 d2 ; 0xc0cbb vgabios.c:468 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0cbd vgabios.c:469 + xchg ah, al ; 86 c4 ; 0xc0cc0 + xor bx, bx ; 31 db ; 0xc0cc2 vgabios.c:471 + jmp short 00ccbh ; eb 05 ; 0xc0cc4 + cmp bx, strict byte 00008h ; 83 fb 08 ; 0xc0cc6 + jnl short 00cdah ; 7d 0f ; 0xc0cc9 + test ax, cx ; 85 c8 ; 0xc0ccb vgabios.c:472 + je short 00cd1h ; 74 02 ; 0xc0ccd + or dl, dh ; 08 f2 ; 0xc0ccf vgabios.c:473 + shr dh, 1 ; d0 ee ; 0xc0cd1 vgabios.c:474 + shr cx, 1 ; d1 e9 ; 0xc0cd3 vgabios.c:475 + shr cx, 1 ; d1 e9 ; 0xc0cd5 + inc bx ; 43 ; 0xc0cd7 vgabios.c:476 + jmp short 00cc6h ; eb ec ; 0xc0cd8 + mov al, dl ; 88 d0 ; 0xc0cda vgabios.c:478 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0cdc + pop cx ; 59 ; 0xc0cdf + pop bx ; 5b ; 0xc0ce0 + pop bp ; 5d ; 0xc0ce1 + retn ; c3 ; 0xc0ce2 + ; disGetNextSymbol 0xc0ce3 LB 0x3881 -> off=0x0 cb=0000000000000084 uValue=00000000000c0ce3 'vga_read_glyph_cga' +vga_read_glyph_cga: ; 0xc0ce3 LB 0x84 + push bp ; 55 ; 0xc0ce3 vgabios.c:480 + mov bp, sp ; 89 e5 ; 0xc0ce4 + push cx ; 51 ; 0xc0ce6 + push si ; 56 ; 0xc0ce7 + push di ; 57 ; 0xc0ce8 + push ax ; 50 ; 0xc0ce9 + mov si, dx ; 89 d6 ; 0xc0cea + cmp bl, 006h ; 80 fb 06 ; 0xc0cec vgabios.c:488 + je short 00d2bh ; 74 3a ; 0xc0cef + mov bx, ax ; 89 c3 ; 0xc0cf1 vgabios.c:490 + sal bx, 1 ; d1 e3 ; 0xc0cf3 + mov word [bp-008h], 0b800h ; c7 46 f8 00 b8 ; 0xc0cf5 + xor cx, cx ; 31 c9 ; 0xc0cfa vgabios.c:492 + jmp short 00d03h ; eb 05 ; 0xc0cfc + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc0cfe + jnl short 00d5fh ; 7d 5c ; 0xc0d01 + mov ax, bx ; 89 d8 ; 0xc0d03 vgabios.c:493 + mov dx, word [bp-008h] ; 8b 56 f8 ; 0xc0d05 + call 00cadh ; e8 a2 ff ; 0xc0d08 + mov di, si ; 89 f7 ; 0xc0d0b + inc si ; 46 ; 0xc0d0d + push SS ; 16 ; 0xc0d0e + pop ES ; 07 ; 0xc0d0f + mov byte [es:di], al ; 26 88 05 ; 0xc0d10 + lea ax, [bx+02000h] ; 8d 87 00 20 ; 0xc0d13 vgabios.c:494 + mov dx, word [bp-008h] ; 8b 56 f8 ; 0xc0d17 + call 00cadh ; e8 90 ff ; 0xc0d1a + mov di, si ; 89 f7 ; 0xc0d1d + inc si ; 46 ; 0xc0d1f + push SS ; 16 ; 0xc0d20 + pop ES ; 07 ; 0xc0d21 + mov byte [es:di], al ; 26 88 05 ; 0xc0d22 + add bx, strict byte 00050h ; 83 c3 50 ; 0xc0d25 vgabios.c:495 + inc cx ; 41 ; 0xc0d28 vgabios.c:496 + jmp short 00cfeh ; eb d3 ; 0xc0d29 + mov bx, ax ; 89 c3 ; 0xc0d2b vgabios.c:498 + mov word [bp-008h], 0b800h ; c7 46 f8 00 b8 ; 0xc0d2d + xor cx, cx ; 31 c9 ; 0xc0d32 vgabios.c:499 + jmp short 00d3bh ; eb 05 ; 0xc0d34 + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc0d36 + jnl short 00d5fh ; 7d 24 ; 0xc0d39 + mov di, si ; 89 f7 ; 0xc0d3b vgabios.c:500 + inc si ; 46 ; 0xc0d3d + mov es, [bp-008h] ; 8e 46 f8 ; 0xc0d3e + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0d41 + push SS ; 16 ; 0xc0d44 + pop ES ; 07 ; 0xc0d45 + mov byte [es:di], al ; 26 88 05 ; 0xc0d46 + mov di, si ; 89 f7 ; 0xc0d49 vgabios.c:501 + inc si ; 46 ; 0xc0d4b + mov es, [bp-008h] ; 8e 46 f8 ; 0xc0d4c + mov al, byte [es:bx+02000h] ; 26 8a 87 00 20 ; 0xc0d4f + push SS ; 16 ; 0xc0d54 + pop ES ; 07 ; 0xc0d55 + mov byte [es:di], al ; 26 88 05 ; 0xc0d56 + add bx, strict byte 00050h ; 83 c3 50 ; 0xc0d59 vgabios.c:502 + inc cx ; 41 ; 0xc0d5c vgabios.c:503 + jmp short 00d36h ; eb d7 ; 0xc0d5d + lea sp, [bp-006h] ; 8d 66 fa ; 0xc0d5f vgabios.c:505 + pop di ; 5f ; 0xc0d62 + pop si ; 5e ; 0xc0d63 + pop cx ; 59 ; 0xc0d64 + pop bp ; 5d ; 0xc0d65 + retn ; c3 ; 0xc0d66 + ; disGetNextSymbol 0xc0d67 LB 0x37fd -> off=0x0 cb=000000000000001b uValue=00000000000c0d67 'vga_char_ofs_cga' +vga_char_ofs_cga: ; 0xc0d67 LB 0x1b + push cx ; 51 ; 0xc0d67 vgabios.c:507 + push bp ; 55 ; 0xc0d68 + mov bp, sp ; 89 e5 ; 0xc0d69 + mov cl, al ; 88 c1 ; 0xc0d6b + mov al, dl ; 88 d0 ; 0xc0d6d + xor ah, ah ; 30 e4 ; 0xc0d6f vgabios.c:512 + mul bx ; f7 e3 ; 0xc0d71 + mov bx, ax ; 89 c3 ; 0xc0d73 + sal bx, 1 ; d1 e3 ; 0xc0d75 + sal bx, 1 ; d1 e3 ; 0xc0d77 + mov al, cl ; 88 c8 ; 0xc0d79 + xor ah, ah ; 30 e4 ; 0xc0d7b + add ax, bx ; 01 d8 ; 0xc0d7d + pop bp ; 5d ; 0xc0d7f vgabios.c:513 + pop cx ; 59 ; 0xc0d80 + retn ; c3 ; 0xc0d81 + ; disGetNextSymbol 0xc0d82 LB 0x37e2 -> off=0x0 cb=000000000000006b uValue=00000000000c0d82 'vga_read_char_cga' +vga_read_char_cga: ; 0xc0d82 LB 0x6b + push bp ; 55 ; 0xc0d82 vgabios.c:515 + mov bp, sp ; 89 e5 ; 0xc0d83 + push bx ; 53 ; 0xc0d85 + push cx ; 51 ; 0xc0d86 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc0d87 + mov bl, dl ; 88 d3 ; 0xc0d8a vgabios.c:521 + xor bh, bh ; 30 ff ; 0xc0d8c + lea dx, [bp-00eh] ; 8d 56 f2 ; 0xc0d8e + call 00ce3h ; e8 4f ff ; 0xc0d91 + mov ax, strict word 00008h ; b8 08 00 ; 0xc0d94 vgabios.c:524 + push ax ; 50 ; 0xc0d97 + mov ax, 00080h ; b8 80 00 ; 0xc0d98 + push ax ; 50 ; 0xc0d9b + mov bx, 0010ch ; bb 0c 01 ; 0xc0d9c vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0d9f + mov es, ax ; 8e c0 ; 0xc0da1 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0da3 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0da6 + xor cx, cx ; 31 c9 ; 0xc0daa vgabios.c:68 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc0dac + call 00ad7h ; e8 25 fd ; 0xc0daf + mov word [bp-006h], ax ; 89 46 fa ; 0xc0db2 + test ah, 080h ; f6 c4 80 ; 0xc0db5 vgabios.c:526 + jne short 00de3h ; 75 29 ; 0xc0db8 + mov bx, strict word 0007ch ; bb 7c 00 ; 0xc0dba vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0dbd + mov es, ax ; 8e c0 ; 0xc0dbf + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0dc1 + mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xc0dc4 + test dx, dx ; 85 d2 ; 0xc0dc8 vgabios.c:530 + jne short 00dd0h ; 75 04 ; 0xc0dca + test ax, ax ; 85 c0 ; 0xc0dcc + je short 00de3h ; 74 13 ; 0xc0dce + mov bx, strict word 00008h ; bb 08 00 ; 0xc0dd0 vgabios.c:531 + push bx ; 53 ; 0xc0dd3 + mov bx, 00080h ; bb 80 00 ; 0xc0dd4 + push bx ; 53 ; 0xc0dd7 + mov cx, bx ; 89 d9 ; 0xc0dd8 + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc0dda + call 00ad7h ; e8 f7 fc ; 0xc0ddd + mov word [bp-006h], ax ; 89 46 fa ; 0xc0de0 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc0de3 vgabios.c:534 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc0de6 + pop cx ; 59 ; 0xc0de9 + pop bx ; 5b ; 0xc0dea + pop bp ; 5d ; 0xc0deb + retn ; c3 ; 0xc0dec + ; disGetNextSymbol 0xc0ded LB 0x3777 -> off=0x0 cb=0000000000000147 uValue=00000000000c0ded 'vga_read_char_attr' +vga_read_char_attr: ; 0xc0ded LB 0x147 + push bp ; 55 ; 0xc0ded vgabios.c:536 + mov bp, sp ; 89 e5 ; 0xc0dee + push bx ; 53 ; 0xc0df0 + push cx ; 51 ; 0xc0df1 + push si ; 56 ; 0xc0df2 + push di ; 57 ; 0xc0df3 + sub sp, strict byte 00012h ; 83 ec 12 ; 0xc0df4 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc0df7 + mov si, dx ; 89 d6 ; 0xc0dfa + mov bx, strict word 00049h ; bb 49 00 ; 0xc0dfc vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0dff + mov es, ax ; 8e c0 ; 0xc0e02 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0e04 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc0e07 vgabios.c:48 + xor ah, ah ; 30 e4 ; 0xc0e0a vgabios.c:544 + call 03888h ; e8 79 2a ; 0xc0e0c + mov cl, al ; 88 c1 ; 0xc0e0f + cmp AL, strict byte 0ffh ; 3c ff ; 0xc0e11 vgabios.c:545 + jne short 00e18h ; 75 03 ; 0xc0e13 + jmp near 00f2bh ; e9 13 01 ; 0xc0e15 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc0e18 vgabios.c:549 + mov byte [bp-014h], al ; 88 46 ec ; 0xc0e1b + mov byte [bp-013h], 000h ; c6 46 ed 00 ; 0xc0e1e + lea bx, [bp-01ah] ; 8d 5e e6 ; 0xc0e22 + lea dx, [bp-018h] ; 8d 56 e8 ; 0xc0e25 + mov ax, word [bp-014h] ; 8b 46 ec ; 0xc0e28 + call 00a97h ; e8 69 fc ; 0xc0e2b + mov ch, byte [bp-01ah] ; 8a 6e e6 ; 0xc0e2e vgabios.c:550 + mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xc0e31 vgabios.c:551 + mov al, ah ; 88 e0 ; 0xc0e34 + xor ah, ah ; 30 e4 ; 0xc0e36 + mov word [bp-012h], ax ; 89 46 ee ; 0xc0e38 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc0e3b + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc0e3e + mov bx, 00084h ; bb 84 00 ; 0xc0e41 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0e44 + mov es, ax ; 8e c0 ; 0xc0e47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0e49 + xor ah, ah ; 30 e4 ; 0xc0e4c vgabios.c:48 + mov dx, ax ; 89 c2 ; 0xc0e4e + inc dx ; 42 ; 0xc0e50 + mov di, strict word 0004ah ; bf 4a 00 ; 0xc0e51 vgabios.c:57 + mov di, word [es:di] ; 26 8b 3d ; 0xc0e54 + mov word [bp-016h], di ; 89 7e ea ; 0xc0e57 vgabios.c:58 + mov bl, cl ; 88 cb ; 0xc0e5a vgabios.c:557 + xor bh, bh ; 30 ff ; 0xc0e5c + mov CL, strict byte 003h ; b1 03 ; 0xc0e5e + sal bx, CL ; d3 e3 ; 0xc0e60 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc0e62 + jne short 00e9fh ; 75 36 ; 0xc0e67 + mov ax, di ; 89 f8 ; 0xc0e69 vgabios.c:559 + mul dx ; f7 e2 ; 0xc0e6b + sal ax, 1 ; d1 e0 ; 0xc0e6d + or AL, strict byte 0ffh ; 0c ff ; 0xc0e6f + mov dl, byte [bp-00ch] ; 8a 56 f4 ; 0xc0e71 + xor dh, dh ; 30 f6 ; 0xc0e74 + inc ax ; 40 ; 0xc0e76 + mul dx ; f7 e2 ; 0xc0e77 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc0e79 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc0e7c + xor ah, ah ; 30 e4 ; 0xc0e7f + mul di ; f7 e7 ; 0xc0e81 + mov dl, ch ; 88 ea ; 0xc0e83 + xor dh, dh ; 30 f6 ; 0xc0e85 + add ax, dx ; 01 d0 ; 0xc0e87 + sal ax, 1 ; d1 e0 ; 0xc0e89 + mov di, word [bp-010h] ; 8b 7e f0 ; 0xc0e8b + add di, ax ; 01 c7 ; 0xc0e8e + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc0e90 vgabios.c:55 + mov ax, word [es:di] ; 26 8b 05 ; 0xc0e94 + push SS ; 16 ; 0xc0e97 vgabios.c:58 + pop ES ; 07 ; 0xc0e98 + mov word [es:si], ax ; 26 89 04 ; 0xc0e99 + jmp near 00f2bh ; e9 8c 00 ; 0xc0e9c vgabios.c:561 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc0e9f vgabios.c:562 + cmp bl, 005h ; 80 fb 05 ; 0xc0ea3 + je short 00efeh ; 74 56 ; 0xc0ea6 + cmp bl, 002h ; 80 fb 02 ; 0xc0ea8 + jc short 00eb4h ; 72 07 ; 0xc0eab + jbe short 00eb6h ; 76 07 ; 0xc0ead + cmp bl, 004h ; 80 fb 04 ; 0xc0eaf + jbe short 00ed1h ; 76 1d ; 0xc0eb2 + jmp short 00f2bh ; eb 75 ; 0xc0eb4 + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc0eb6 vgabios.c:565 + xor dh, dh ; 30 f6 ; 0xc0eb9 + mov al, ch ; 88 e8 ; 0xc0ebb + xor ah, ah ; 30 e4 ; 0xc0ebd + mov bx, word [bp-016h] ; 8b 5e ea ; 0xc0ebf + call 00d67h ; e8 a2 fe ; 0xc0ec2 + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc0ec5 vgabios.c:566 + xor dh, dh ; 30 f6 ; 0xc0ec8 + call 00d82h ; e8 b5 fe ; 0xc0eca + xor ah, ah ; 30 e4 ; 0xc0ecd + jmp short 00e97h ; eb c6 ; 0xc0ecf + mov bx, 00085h ; bb 85 00 ; 0xc0ed1 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0ed4 + mov byte [bp-010h], al ; 88 46 f0 ; 0xc0ed7 vgabios.c:571 + mov byte [bp-00fh], 000h ; c6 46 f1 00 ; 0xc0eda + push word [bp-010h] ; ff 76 f0 ; 0xc0ede + mov dl, byte [bp-012h] ; 8a 56 ee ; 0xc0ee1 + xor dh, dh ; 30 f6 ; 0xc0ee4 + mov al, ch ; 88 e8 ; 0xc0ee6 + xor ah, ah ; 30 e4 ; 0xc0ee8 + mov cx, word [bp-014h] ; 8b 4e ec ; 0xc0eea + mov bx, di ; 89 fb ; 0xc0eed + call 00b7bh ; e8 89 fc ; 0xc0eef + mov bx, word [bp-010h] ; 8b 5e f0 ; 0xc0ef2 vgabios.c:572 + mov dx, ax ; 89 c2 ; 0xc0ef5 + mov ax, di ; 89 f8 ; 0xc0ef7 + call 00baah ; e8 ae fc ; 0xc0ef9 + jmp short 00ecdh ; eb cf ; 0xc0efc + mov bx, 00085h ; bb 85 00 ; 0xc0efe vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc0f01 + mov byte [bp-010h], al ; 88 46 f0 ; 0xc0f04 vgabios.c:576 + mov byte [bp-00fh], 000h ; c6 46 f1 00 ; 0xc0f07 + push word [bp-010h] ; ff 76 f0 ; 0xc0f0b + mov dl, byte [bp-012h] ; 8a 56 ee ; 0xc0f0e + xor dh, dh ; 30 f6 ; 0xc0f11 + mov al, ch ; 88 e8 ; 0xc0f13 + xor ah, ah ; 30 e4 ; 0xc0f15 + mov cx, word [bp-014h] ; 8b 4e ec ; 0xc0f17 + mov bx, di ; 89 fb ; 0xc0f1a + call 00befh ; e8 d0 fc ; 0xc0f1c + mov bx, word [bp-010h] ; 8b 5e f0 ; 0xc0f1f vgabios.c:577 + mov dx, ax ; 89 c2 ; 0xc0f22 + mov ax, di ; 89 f8 ; 0xc0f24 + call 00c64h ; e8 3b fd ; 0xc0f26 + jmp short 00ecdh ; eb a2 ; 0xc0f29 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc0f2b vgabios.c:586 + pop di ; 5f ; 0xc0f2e + pop si ; 5e ; 0xc0f2f + pop cx ; 59 ; 0xc0f30 + pop bx ; 5b ; 0xc0f31 + pop bp ; 5d ; 0xc0f32 + retn ; c3 ; 0xc0f33 + ; disGetNextSymbol 0xc0f34 LB 0x3630 -> off=0x10 cb=0000000000000083 uValue=00000000000c0f44 'vga_get_font_info' + db 05bh, 00fh, 0a0h, 00fh, 0a5h, 00fh, 0ach, 00fh, 0b1h, 00fh, 0b6h, 00fh, 0bbh, 00fh, 0c0h, 00fh +vga_get_font_info: ; 0xc0f44 LB 0x83 + push si ; 56 ; 0xc0f44 vgabios.c:588 + push di ; 57 ; 0xc0f45 + push bp ; 55 ; 0xc0f46 + mov bp, sp ; 89 e5 ; 0xc0f47 + mov si, dx ; 89 d6 ; 0xc0f49 + mov di, bx ; 89 df ; 0xc0f4b + cmp ax, strict word 00007h ; 3d 07 00 ; 0xc0f4d vgabios.c:593 + jnbe short 00f9ah ; 77 48 ; 0xc0f50 + mov bx, ax ; 89 c3 ; 0xc0f52 + sal bx, 1 ; d1 e3 ; 0xc0f54 + jmp word [cs:bx+00f34h] ; 2e ff a7 34 0f ; 0xc0f56 + mov bx, strict word 0007ch ; bb 7c 00 ; 0xc0f5b vgabios.c:67 + xor ax, ax ; 31 c0 ; 0xc0f5e + mov es, ax ; 8e c0 ; 0xc0f60 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc0f62 + mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xc0f65 + push SS ; 16 ; 0xc0f69 vgabios.c:596 + pop ES ; 07 ; 0xc0f6a + mov word [es:di], dx ; 26 89 15 ; 0xc0f6b + mov word [es:si], ax ; 26 89 04 ; 0xc0f6e + mov bx, 00085h ; bb 85 00 ; 0xc0f71 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0f74 + mov es, ax ; 8e c0 ; 0xc0f77 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0f79 + xor ah, ah ; 30 e4 ; 0xc0f7c + push SS ; 16 ; 0xc0f7e + pop ES ; 07 ; 0xc0f7f + mov bx, cx ; 89 cb ; 0xc0f80 + mov word [es:bx], ax ; 26 89 07 ; 0xc0f82 + mov bx, 00084h ; bb 84 00 ; 0xc0f85 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0f88 + mov es, ax ; 8e c0 ; 0xc0f8b + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0f8d + xor ah, ah ; 30 e4 ; 0xc0f90 + push SS ; 16 ; 0xc0f92 + pop ES ; 07 ; 0xc0f93 + mov bx, word [bp+008h] ; 8b 5e 08 ; 0xc0f94 + mov word [es:bx], ax ; 26 89 07 ; 0xc0f97 + pop bp ; 5d ; 0xc0f9a + pop di ; 5f ; 0xc0f9b + pop si ; 5e ; 0xc0f9c + retn 00002h ; c2 02 00 ; 0xc0f9d + mov bx, 0010ch ; bb 0c 01 ; 0xc0fa0 vgabios.c:67 + jmp short 00f5eh ; eb b9 ; 0xc0fa3 + mov dx, 05d6dh ; ba 6d 5d ; 0xc0fa5 vgabios.c:601 + mov ax, ds ; 8c d8 ; 0xc0fa8 + jmp short 00f69h ; eb bd ; 0xc0faa vgabios.c:602 + mov dx, 0556dh ; ba 6d 55 ; 0xc0fac vgabios.c:604 + jmp short 00fa8h ; eb f7 ; 0xc0faf + mov dx, 0596dh ; ba 6d 59 ; 0xc0fb1 vgabios.c:607 + jmp short 00fa8h ; eb f2 ; 0xc0fb4 + mov dx, 07b6dh ; ba 6d 7b ; 0xc0fb6 vgabios.c:610 + jmp short 00fa8h ; eb ed ; 0xc0fb9 + mov dx, 06b6dh ; ba 6d 6b ; 0xc0fbb vgabios.c:613 + jmp short 00fa8h ; eb e8 ; 0xc0fbe + mov dx, 07c9ah ; ba 9a 7c ; 0xc0fc0 vgabios.c:616 + jmp short 00fa8h ; eb e3 ; 0xc0fc3 + jmp short 00f9ah ; eb d3 ; 0xc0fc5 vgabios.c:622 + ; disGetNextSymbol 0xc0fc7 LB 0x359d -> off=0x0 cb=000000000000016d uValue=00000000000c0fc7 'vga_read_pixel' +vga_read_pixel: ; 0xc0fc7 LB 0x16d + push bp ; 55 ; 0xc0fc7 vgabios.c:635 + mov bp, sp ; 89 e5 ; 0xc0fc8 + push si ; 56 ; 0xc0fca + push di ; 57 ; 0xc0fcb + sub sp, strict byte 0000ch ; 83 ec 0c ; 0xc0fcc + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc0fcf + mov si, dx ; 89 d6 ; 0xc0fd2 + mov word [bp-010h], bx ; 89 5e f0 ; 0xc0fd4 + mov word [bp-00eh], cx ; 89 4e f2 ; 0xc0fd7 + mov bx, strict word 00049h ; bb 49 00 ; 0xc0fda vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc0fdd + mov es, ax ; 8e c0 ; 0xc0fe0 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc0fe2 + xor ah, ah ; 30 e4 ; 0xc0fe5 vgabios.c:642 + call 03888h ; e8 9e 28 ; 0xc0fe7 + mov byte [bp-006h], al ; 88 46 fa ; 0xc0fea + cmp AL, strict byte 0ffh ; 3c ff ; 0xc0fed vgabios.c:643 + je short 01000h ; 74 0f ; 0xc0fef + mov bl, al ; 88 c3 ; 0xc0ff1 vgabios.c:645 + xor bh, bh ; 30 ff ; 0xc0ff3 + mov CL, strict byte 003h ; b1 03 ; 0xc0ff5 + sal bx, CL ; d3 e3 ; 0xc0ff7 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc0ff9 + jne short 01003h ; 75 03 ; 0xc0ffe + jmp near 0112dh ; e9 2a 01 ; 0xc1000 vgabios.c:646 + mov ch, byte [bx+047b1h] ; 8a af b1 47 ; 0xc1003 vgabios.c:649 + cmp ch, cl ; 38 cd ; 0xc1007 + jc short 0101ah ; 72 0f ; 0xc1009 + jbe short 01022h ; 76 15 ; 0xc100b + cmp ch, 005h ; 80 fd 05 ; 0xc100d + je short 0105bh ; 74 49 ; 0xc1010 + cmp ch, 004h ; 80 fd 04 ; 0xc1012 + je short 01022h ; 74 0b ; 0xc1015 + jmp near 01123h ; e9 09 01 ; 0xc1017 + cmp ch, 002h ; 80 fd 02 ; 0xc101a + je short 0108fh ; 74 70 ; 0xc101d + jmp near 01123h ; e9 01 01 ; 0xc101f + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1022 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1025 + mov es, ax ; 8e c0 ; 0xc1028 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc102a + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc102d vgabios.c:58 + mul bx ; f7 e3 ; 0xc1030 + mov CL, strict byte 003h ; b1 03 ; 0xc1032 + mov bx, si ; 89 f3 ; 0xc1034 + shr bx, CL ; d3 eb ; 0xc1036 + add bx, ax ; 01 c3 ; 0xc1038 + mov di, strict word 0004ch ; bf 4c 00 ; 0xc103a vgabios.c:57 + mov ax, word [es:di] ; 26 8b 05 ; 0xc103d + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc1040 vgabios.c:58 + xor ch, ch ; 30 ed ; 0xc1043 + mul cx ; f7 e1 ; 0xc1045 + add bx, ax ; 01 c3 ; 0xc1047 + mov cx, si ; 89 f1 ; 0xc1049 vgabios.c:654 + and cx, strict byte 00007h ; 83 e1 07 ; 0xc104b + mov ax, 00080h ; b8 80 00 ; 0xc104e + sar ax, CL ; d3 f8 ; 0xc1051 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc1053 + mov byte [bp-008h], ch ; 88 6e f8 ; 0xc1056 vgabios.c:656 + jmp short 01064h ; eb 09 ; 0xc1059 + jmp near 01103h ; e9 a5 00 ; 0xc105b + cmp byte [bp-008h], 004h ; 80 7e f8 04 ; 0xc105e + jnc short 0108ch ; 73 28 ; 0xc1062 + mov ah, byte [bp-008h] ; 8a 66 f8 ; 0xc1064 vgabios.c:657 + xor al, al ; 30 c0 ; 0xc1067 + or AL, strict byte 004h ; 0c 04 ; 0xc1069 + mov dx, 003ceh ; ba ce 03 ; 0xc106b + out DX, ax ; ef ; 0xc106e + mov ax, 0a000h ; b8 00 a0 ; 0xc106f vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc1072 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1074 + and al, byte [bp-00ah] ; 22 46 f6 ; 0xc1077 vgabios.c:48 + test al, al ; 84 c0 ; 0xc107a vgabios.c:659 + jbe short 01087h ; 76 09 ; 0xc107c + mov cl, byte [bp-008h] ; 8a 4e f8 ; 0xc107e vgabios.c:660 + mov AL, strict byte 001h ; b0 01 ; 0xc1081 + sal al, CL ; d2 e0 ; 0xc1083 + or ch, al ; 08 c5 ; 0xc1085 + inc byte [bp-008h] ; fe 46 f8 ; 0xc1087 vgabios.c:661 + jmp short 0105eh ; eb d2 ; 0xc108a + jmp near 01125h ; e9 96 00 ; 0xc108c + mov al, byte [bx+047b2h] ; 8a 87 b2 47 ; 0xc108f vgabios.c:664 + xor ah, ah ; 30 e4 ; 0xc1093 + mov cx, strict word 00004h ; b9 04 00 ; 0xc1095 + sub cx, ax ; 29 c1 ; 0xc1098 + mov ax, dx ; 89 d0 ; 0xc109a + shr ax, CL ; d3 e8 ; 0xc109c + mov cx, ax ; 89 c1 ; 0xc109e + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc10a0 + shr ax, 1 ; d1 e8 ; 0xc10a3 + mov bx, strict word 00050h ; bb 50 00 ; 0xc10a5 + mul bx ; f7 e3 ; 0xc10a8 + mov bx, cx ; 89 cb ; 0xc10aa + add bx, ax ; 01 c3 ; 0xc10ac + test byte [bp-010h], 001h ; f6 46 f0 01 ; 0xc10ae vgabios.c:665 + je short 010b7h ; 74 03 ; 0xc10b2 + add bh, 020h ; 80 c7 20 ; 0xc10b4 vgabios.c:666 + mov ax, 0b800h ; b8 00 b8 ; 0xc10b7 vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc10ba + mov al, byte [es:bx] ; 26 8a 07 ; 0xc10bc + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc10bf vgabios.c:668 + xor bh, bh ; 30 ff ; 0xc10c2 + mov CL, strict byte 003h ; b1 03 ; 0xc10c4 + sal bx, CL ; d3 e3 ; 0xc10c6 + cmp byte [bx+047b2h], 002h ; 80 bf b2 47 02 ; 0xc10c8 + jne short 010eah ; 75 1b ; 0xc10cd + mov cx, si ; 89 f1 ; 0xc10cf vgabios.c:669 + xor ch, ch ; 30 ed ; 0xc10d1 + and cl, 003h ; 80 e1 03 ; 0xc10d3 + mov bx, strict word 00003h ; bb 03 00 ; 0xc10d6 + sub bx, cx ; 29 cb ; 0xc10d9 + mov cx, bx ; 89 d9 ; 0xc10db + sal cx, 1 ; d1 e1 ; 0xc10dd + xor ah, ah ; 30 e4 ; 0xc10df + sar ax, CL ; d3 f8 ; 0xc10e1 + mov ch, al ; 88 c5 ; 0xc10e3 + and ch, 003h ; 80 e5 03 ; 0xc10e5 + jmp short 01125h ; eb 3b ; 0xc10e8 vgabios.c:670 + mov cx, si ; 89 f1 ; 0xc10ea vgabios.c:671 + xor ch, ch ; 30 ed ; 0xc10ec + and cl, 007h ; 80 e1 07 ; 0xc10ee + mov bx, strict word 00007h ; bb 07 00 ; 0xc10f1 + sub bx, cx ; 29 cb ; 0xc10f4 + mov cx, bx ; 89 d9 ; 0xc10f6 + xor ah, ah ; 30 e4 ; 0xc10f8 + sar ax, CL ; d3 f8 ; 0xc10fa + mov ch, al ; 88 c5 ; 0xc10fc + and ch, 001h ; 80 e5 01 ; 0xc10fe + jmp short 01125h ; eb 22 ; 0xc1101 vgabios.c:672 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1103 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1106 + mov es, ax ; 8e c0 ; 0xc1109 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc110b + sal bx, CL ; d3 e3 ; 0xc110e vgabios.c:58 + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc1110 + mul bx ; f7 e3 ; 0xc1113 + mov bx, si ; 89 f3 ; 0xc1115 + add bx, ax ; 01 c3 ; 0xc1117 + mov ax, 0a000h ; b8 00 a0 ; 0xc1119 vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc111c + mov ch, byte [es:bx] ; 26 8a 2f ; 0xc111e + jmp short 01125h ; eb 02 ; 0xc1121 vgabios.c:676 + xor ch, ch ; 30 ed ; 0xc1123 vgabios.c:681 + push SS ; 16 ; 0xc1125 vgabios.c:683 + pop ES ; 07 ; 0xc1126 + mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xc1127 + mov byte [es:bx], ch ; 26 88 2f ; 0xc112a + lea sp, [bp-004h] ; 8d 66 fc ; 0xc112d vgabios.c:684 + pop di ; 5f ; 0xc1130 + pop si ; 5e ; 0xc1131 + pop bp ; 5d ; 0xc1132 + retn ; c3 ; 0xc1133 + ; disGetNextSymbol 0xc1134 LB 0x3430 -> off=0x0 cb=000000000000009f uValue=00000000000c1134 'biosfn_perform_gray_scale_summing' +biosfn_perform_gray_scale_summing: ; 0xc1134 LB 0x9f + push bp ; 55 ; 0xc1134 vgabios.c:689 + mov bp, sp ; 89 e5 ; 0xc1135 + push bx ; 53 ; 0xc1137 + push cx ; 51 ; 0xc1138 + push si ; 56 ; 0xc1139 + push di ; 57 ; 0xc113a + push ax ; 50 ; 0xc113b + push ax ; 50 ; 0xc113c + mov bx, ax ; 89 c3 ; 0xc113d + mov di, dx ; 89 d7 ; 0xc113f + mov dx, 003dah ; ba da 03 ; 0xc1141 vgabios.c:694 + in AL, DX ; ec ; 0xc1144 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1145 + xor al, al ; 30 c0 ; 0xc1147 vgabios.c:695 + mov dx, 003c0h ; ba c0 03 ; 0xc1149 + out DX, AL ; ee ; 0xc114c + xor si, si ; 31 f6 ; 0xc114d vgabios.c:697 + cmp si, di ; 39 fe ; 0xc114f + jnc short 011b8h ; 73 65 ; 0xc1151 + mov al, bl ; 88 d8 ; 0xc1153 vgabios.c:700 + mov dx, 003c7h ; ba c7 03 ; 0xc1155 + out DX, AL ; ee ; 0xc1158 + mov dx, 003c9h ; ba c9 03 ; 0xc1159 vgabios.c:702 + in AL, DX ; ec ; 0xc115c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc115d + mov cx, ax ; 89 c1 ; 0xc115f + in AL, DX ; ec ; 0xc1161 vgabios.c:703 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1162 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc1164 + in AL, DX ; ec ; 0xc1167 vgabios.c:704 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1168 + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc116a + mov al, cl ; 88 c8 ; 0xc116d vgabios.c:707 + xor ah, ah ; 30 e4 ; 0xc116f + mov cx, strict word 0004dh ; b9 4d 00 ; 0xc1171 + imul cx ; f7 e9 ; 0xc1174 + mov cx, ax ; 89 c1 ; 0xc1176 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1178 + xor ah, ah ; 30 e4 ; 0xc117b + mov dx, 00097h ; ba 97 00 ; 0xc117d + imul dx ; f7 ea ; 0xc1180 + add cx, ax ; 01 c1 ; 0xc1182 + mov word [bp-00ah], cx ; 89 4e f6 ; 0xc1184 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc1187 + xor ch, ch ; 30 ed ; 0xc118a + mov ax, cx ; 89 c8 ; 0xc118c + mov dx, strict word 0001ch ; ba 1c 00 ; 0xc118e + imul dx ; f7 ea ; 0xc1191 + add ax, word [bp-00ah] ; 03 46 f6 ; 0xc1193 + add ax, 00080h ; 05 80 00 ; 0xc1196 + mov al, ah ; 88 e0 ; 0xc1199 + cbw ; 98 ; 0xc119b + mov cx, ax ; 89 c1 ; 0xc119c + cmp ax, strict word 0003fh ; 3d 3f 00 ; 0xc119e vgabios.c:709 + jbe short 011a6h ; 76 03 ; 0xc11a1 + mov cx, strict word 0003fh ; b9 3f 00 ; 0xc11a3 + mov al, bl ; 88 d8 ; 0xc11a6 vgabios.c:712 + mov dx, 003c8h ; ba c8 03 ; 0xc11a8 + out DX, AL ; ee ; 0xc11ab + mov al, cl ; 88 c8 ; 0xc11ac vgabios.c:714 + mov dx, 003c9h ; ba c9 03 ; 0xc11ae + out DX, AL ; ee ; 0xc11b1 + out DX, AL ; ee ; 0xc11b2 vgabios.c:715 + out DX, AL ; ee ; 0xc11b3 vgabios.c:716 + inc bx ; 43 ; 0xc11b4 vgabios.c:717 + inc si ; 46 ; 0xc11b5 vgabios.c:718 + jmp short 0114fh ; eb 97 ; 0xc11b6 + mov dx, 003dah ; ba da 03 ; 0xc11b8 vgabios.c:719 + in AL, DX ; ec ; 0xc11bb + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc11bc + mov AL, strict byte 020h ; b0 20 ; 0xc11be vgabios.c:720 + mov dx, 003c0h ; ba c0 03 ; 0xc11c0 + out DX, AL ; ee ; 0xc11c3 + mov dx, 003dah ; ba da 03 ; 0xc11c4 vgabios.c:722 + in AL, DX ; ec ; 0xc11c7 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc11c8 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc11ca vgabios.c:724 + pop di ; 5f ; 0xc11cd + pop si ; 5e ; 0xc11ce + pop cx ; 59 ; 0xc11cf + pop bx ; 5b ; 0xc11d0 + pop bp ; 5d ; 0xc11d1 + retn ; c3 ; 0xc11d2 + ; disGetNextSymbol 0xc11d3 LB 0x3391 -> off=0x0 cb=00000000000000fc uValue=00000000000c11d3 'biosfn_set_cursor_shape' +biosfn_set_cursor_shape: ; 0xc11d3 LB 0xfc + push bp ; 55 ; 0xc11d3 vgabios.c:727 + mov bp, sp ; 89 e5 ; 0xc11d4 + push bx ; 53 ; 0xc11d6 + push cx ; 51 ; 0xc11d7 + push si ; 56 ; 0xc11d8 + push ax ; 50 ; 0xc11d9 + push ax ; 50 ; 0xc11da + mov ah, al ; 88 c4 ; 0xc11db + mov bl, dl ; 88 d3 ; 0xc11dd + mov dh, al ; 88 c6 ; 0xc11df vgabios.c:733 + mov si, strict word 00060h ; be 60 00 ; 0xc11e1 vgabios.c:62 + mov cx, strict word 00040h ; b9 40 00 ; 0xc11e4 + mov es, cx ; 8e c1 ; 0xc11e7 + mov word [es:si], dx ; 26 89 14 ; 0xc11e9 + mov si, 00087h ; be 87 00 ; 0xc11ec vgabios.c:47 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc11ef + test dl, 008h ; f6 c2 08 ; 0xc11f2 vgabios.c:48 + jne short 01234h ; 75 3d ; 0xc11f5 + mov dl, al ; 88 c2 ; 0xc11f7 vgabios.c:739 + and dl, 060h ; 80 e2 60 ; 0xc11f9 + cmp dl, 020h ; 80 fa 20 ; 0xc11fc + jne short 01207h ; 75 06 ; 0xc11ff + mov AH, strict byte 01eh ; b4 1e ; 0xc1201 vgabios.c:741 + xor bl, bl ; 30 db ; 0xc1203 vgabios.c:742 + jmp short 01234h ; eb 2d ; 0xc1205 vgabios.c:743 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc1207 vgabios.c:47 + test dl, 001h ; f6 c2 01 ; 0xc120a vgabios.c:48 + jne short 01269h ; 75 5a ; 0xc120d + cmp ah, 020h ; 80 fc 20 ; 0xc120f + jnc short 01269h ; 73 55 ; 0xc1212 + cmp bl, 020h ; 80 fb 20 ; 0xc1214 + jnc short 01269h ; 73 50 ; 0xc1217 + mov si, 00085h ; be 85 00 ; 0xc1219 vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc121c + mov es, dx ; 8e c2 ; 0xc121f + mov cx, word [es:si] ; 26 8b 0c ; 0xc1221 + mov dx, cx ; 89 ca ; 0xc1224 vgabios.c:58 + cmp bl, ah ; 38 e3 ; 0xc1226 vgabios.c:754 + jnc short 01236h ; 73 0c ; 0xc1228 + test bl, bl ; 84 db ; 0xc122a vgabios.c:756 + je short 01269h ; 74 3b ; 0xc122c + xor ah, ah ; 30 e4 ; 0xc122e vgabios.c:757 + mov bl, cl ; 88 cb ; 0xc1230 vgabios.c:758 + db 0feh, 0cbh + ; dec bl ; fe cb ; 0xc1232 + jmp short 01269h ; eb 33 ; 0xc1234 vgabios.c:760 + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc1236 vgabios.c:761 + xor al, al ; 30 c0 ; 0xc1239 + mov byte [bp-007h], al ; 88 46 f9 ; 0xc123b + mov byte [bp-00ah], ah ; 88 66 f6 ; 0xc123e + mov byte [bp-009h], al ; 88 46 f7 ; 0xc1241 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc1244 + or si, word [bp-00ah] ; 0b 76 f6 ; 0xc1247 + cmp si, cx ; 39 ce ; 0xc124a + jnc short 0126bh ; 73 1d ; 0xc124c + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc124e + mov byte [bp-007h], al ; 88 46 f9 ; 0xc1251 + mov si, cx ; 89 ce ; 0xc1254 + dec si ; 4e ; 0xc1256 + cmp si, word [bp-008h] ; 3b 76 f8 ; 0xc1257 + je short 012a5h ; 74 49 ; 0xc125a + mov byte [bp-008h], ah ; 88 66 f8 ; 0xc125c + mov byte [bp-007h], al ; 88 46 f9 ; 0xc125f + dec cx ; 49 ; 0xc1262 + dec cx ; 49 ; 0xc1263 + cmp cx, word [bp-008h] ; 3b 4e f8 ; 0xc1264 + jne short 0126bh ; 75 02 ; 0xc1267 + jmp short 012a5h ; eb 3a ; 0xc1269 + cmp bl, 003h ; 80 fb 03 ; 0xc126b vgabios.c:763 + jbe short 012a5h ; 76 35 ; 0xc126e + mov cl, ah ; 88 e1 ; 0xc1270 vgabios.c:764 + xor ch, ch ; 30 ed ; 0xc1272 + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc1274 + mov byte [bp-007h], ch ; 88 6e f9 ; 0xc1277 + mov si, cx ; 89 ce ; 0xc127a + inc si ; 46 ; 0xc127c + inc si ; 46 ; 0xc127d + mov cl, dl ; 88 d1 ; 0xc127e + db 0feh, 0c9h + ; dec cl ; fe c9 ; 0xc1280 + cmp si, word [bp-008h] ; 3b 76 f8 ; 0xc1282 + jl short 0129ah ; 7c 13 ; 0xc1285 + sub ah, bl ; 28 dc ; 0xc1287 vgabios.c:766 + add ah, dl ; 00 d4 ; 0xc1289 + db 0feh, 0cch + ; dec ah ; fe cc ; 0xc128b + mov bl, cl ; 88 cb ; 0xc128d vgabios.c:767 + cmp dx, strict byte 0000eh ; 83 fa 0e ; 0xc128f vgabios.c:768 + jc short 012a5h ; 72 11 ; 0xc1292 + db 0feh, 0cbh + ; dec bl ; fe cb ; 0xc1294 vgabios.c:770 + db 0feh, 0cch + ; dec ah ; fe cc ; 0xc1296 vgabios.c:771 + jmp short 012a5h ; eb 0b ; 0xc1298 vgabios.c:773 + cmp ah, 002h ; 80 fc 02 ; 0xc129a + jbe short 012a3h ; 76 04 ; 0xc129d + shr dx, 1 ; d1 ea ; 0xc129f vgabios.c:775 + mov ah, dl ; 88 d4 ; 0xc12a1 + mov bl, cl ; 88 cb ; 0xc12a3 vgabios.c:779 + mov si, strict word 00063h ; be 63 00 ; 0xc12a5 vgabios.c:57 + mov dx, strict word 00040h ; ba 40 00 ; 0xc12a8 + mov es, dx ; 8e c2 ; 0xc12ab + mov cx, word [es:si] ; 26 8b 0c ; 0xc12ad + mov AL, strict byte 00ah ; b0 0a ; 0xc12b0 vgabios.c:790 + mov dx, cx ; 89 ca ; 0xc12b2 + out DX, AL ; ee ; 0xc12b4 + mov si, cx ; 89 ce ; 0xc12b5 vgabios.c:791 + inc si ; 46 ; 0xc12b7 + mov al, ah ; 88 e0 ; 0xc12b8 + mov dx, si ; 89 f2 ; 0xc12ba + out DX, AL ; ee ; 0xc12bc + mov AL, strict byte 00bh ; b0 0b ; 0xc12bd vgabios.c:792 + mov dx, cx ; 89 ca ; 0xc12bf + out DX, AL ; ee ; 0xc12c1 + mov al, bl ; 88 d8 ; 0xc12c2 vgabios.c:793 + mov dx, si ; 89 f2 ; 0xc12c4 + out DX, AL ; ee ; 0xc12c6 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc12c7 vgabios.c:794 + pop si ; 5e ; 0xc12ca + pop cx ; 59 ; 0xc12cb + pop bx ; 5b ; 0xc12cc + pop bp ; 5d ; 0xc12cd + retn ; c3 ; 0xc12ce + ; disGetNextSymbol 0xc12cf LB 0x3295 -> off=0x0 cb=000000000000008d uValue=00000000000c12cf 'biosfn_set_cursor_pos' +biosfn_set_cursor_pos: ; 0xc12cf LB 0x8d + push bp ; 55 ; 0xc12cf vgabios.c:797 + mov bp, sp ; 89 e5 ; 0xc12d0 + push bx ; 53 ; 0xc12d2 + push cx ; 51 ; 0xc12d3 + push si ; 56 ; 0xc12d4 + push di ; 57 ; 0xc12d5 + push ax ; 50 ; 0xc12d6 + mov bl, al ; 88 c3 ; 0xc12d7 + mov cx, dx ; 89 d1 ; 0xc12d9 + cmp AL, strict byte 007h ; 3c 07 ; 0xc12db vgabios.c:803 + jnbe short 01353h ; 77 74 ; 0xc12dd + xor ah, ah ; 30 e4 ; 0xc12df vgabios.c:806 + mov si, ax ; 89 c6 ; 0xc12e1 + sal si, 1 ; d1 e6 ; 0xc12e3 + add si, strict byte 00050h ; 83 c6 50 ; 0xc12e5 + mov ax, strict word 00040h ; b8 40 00 ; 0xc12e8 vgabios.c:62 + mov es, ax ; 8e c0 ; 0xc12eb + mov word [es:si], dx ; 26 89 14 ; 0xc12ed + mov si, strict word 00062h ; be 62 00 ; 0xc12f0 vgabios.c:47 + mov al, byte [es:si] ; 26 8a 04 ; 0xc12f3 + cmp bl, al ; 38 c3 ; 0xc12f6 vgabios.c:810 + jne short 01353h ; 75 59 ; 0xc12f8 + mov si, strict word 0004ah ; be 4a 00 ; 0xc12fa vgabios.c:57 + mov si, word [es:si] ; 26 8b 34 ; 0xc12fd + mov di, 00084h ; bf 84 00 ; 0xc1300 vgabios.c:47 + mov al, byte [es:di] ; 26 8a 05 ; 0xc1303 + xor ah, ah ; 30 e4 ; 0xc1306 vgabios.c:48 + mov di, ax ; 89 c7 ; 0xc1308 + inc di ; 47 ; 0xc130a + mov ax, dx ; 89 d0 ; 0xc130b vgabios.c:816 + mov al, dh ; 88 f0 ; 0xc130d + xor ah, dh ; 30 f4 ; 0xc130f + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc1311 + mov ax, si ; 89 f0 ; 0xc1314 vgabios.c:819 + mul di ; f7 e7 ; 0xc1316 + or AL, strict byte 0ffh ; 0c ff ; 0xc1318 + xor bh, bh ; 30 ff ; 0xc131a + inc ax ; 40 ; 0xc131c + mul bx ; f7 e3 ; 0xc131d + mov bx, ax ; 89 c3 ; 0xc131f + mov al, cl ; 88 c8 ; 0xc1321 + xor ah, ah ; 30 e4 ; 0xc1323 + add bx, ax ; 01 c3 ; 0xc1325 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1327 + mul si ; f7 e6 ; 0xc132a + mov si, bx ; 89 de ; 0xc132c + add si, ax ; 01 c6 ; 0xc132e + mov bx, strict word 00063h ; bb 63 00 ; 0xc1330 vgabios.c:57 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc1333 + mov AL, strict byte 00eh ; b0 0e ; 0xc1336 vgabios.c:823 + mov dx, bx ; 89 da ; 0xc1338 + out DX, AL ; ee ; 0xc133a + mov ax, si ; 89 f0 ; 0xc133b vgabios.c:824 + mov al, ah ; 88 e0 ; 0xc133d + lea cx, [bx+001h] ; 8d 4f 01 ; 0xc133f + mov dx, cx ; 89 ca ; 0xc1342 + out DX, AL ; ee ; 0xc1344 + mov AL, strict byte 00fh ; b0 0f ; 0xc1345 vgabios.c:825 + mov dx, bx ; 89 da ; 0xc1347 + out DX, AL ; ee ; 0xc1349 + and si, 000ffh ; 81 e6 ff 00 ; 0xc134a vgabios.c:826 + mov ax, si ; 89 f0 ; 0xc134e + mov dx, cx ; 89 ca ; 0xc1350 + out DX, AL ; ee ; 0xc1352 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc1353 vgabios.c:828 + pop di ; 5f ; 0xc1356 + pop si ; 5e ; 0xc1357 + pop cx ; 59 ; 0xc1358 + pop bx ; 5b ; 0xc1359 + pop bp ; 5d ; 0xc135a + retn ; c3 ; 0xc135b + ; disGetNextSymbol 0xc135c LB 0x3208 -> off=0x0 cb=00000000000000d5 uValue=00000000000c135c 'biosfn_set_active_page' +biosfn_set_active_page: ; 0xc135c LB 0xd5 + push bp ; 55 ; 0xc135c vgabios.c:831 + mov bp, sp ; 89 e5 ; 0xc135d + push bx ; 53 ; 0xc135f + push cx ; 51 ; 0xc1360 + push dx ; 52 ; 0xc1361 + push si ; 56 ; 0xc1362 + push di ; 57 ; 0xc1363 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc1364 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc1367 + cmp AL, strict byte 007h ; 3c 07 ; 0xc136a vgabios.c:837 + jnbe short 01384h ; 77 16 ; 0xc136c + mov bx, strict word 00049h ; bb 49 00 ; 0xc136e vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1371 + mov es, ax ; 8e c0 ; 0xc1374 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1376 + xor ah, ah ; 30 e4 ; 0xc1379 vgabios.c:841 + call 03888h ; e8 0a 25 ; 0xc137b + mov cl, al ; 88 c1 ; 0xc137e + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1380 vgabios.c:842 + jne short 01387h ; 75 03 ; 0xc1382 + jmp near 01427h ; e9 a0 00 ; 0xc1384 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1387 vgabios.c:845 + xor ah, ah ; 30 e4 ; 0xc138a + lea bx, [bp-010h] ; 8d 5e f0 ; 0xc138c + lea dx, [bp-00eh] ; 8d 56 f2 ; 0xc138f + call 00a97h ; e8 02 f7 ; 0xc1392 + mov bl, cl ; 88 cb ; 0xc1395 vgabios.c:847 + xor bh, bh ; 30 ff ; 0xc1397 + mov CL, strict byte 003h ; b1 03 ; 0xc1399 + mov si, bx ; 89 de ; 0xc139b + sal si, CL ; d3 e6 ; 0xc139d + cmp byte [si+047b0h], 000h ; 80 bc b0 47 00 ; 0xc139f + jne short 013e1h ; 75 3b ; 0xc13a4 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc13a6 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc13a9 + mov es, ax ; 8e c0 ; 0xc13ac + mov dx, word [es:bx] ; 26 8b 17 ; 0xc13ae + mov bx, 00084h ; bb 84 00 ; 0xc13b1 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc13b4 + xor ah, ah ; 30 e4 ; 0xc13b7 vgabios.c:48 + mov bx, ax ; 89 c3 ; 0xc13b9 + inc bx ; 43 ; 0xc13bb + mov ax, dx ; 89 d0 ; 0xc13bc vgabios.c:854 + mul bx ; f7 e3 ; 0xc13be + mov di, ax ; 89 c7 ; 0xc13c0 + sal ax, 1 ; d1 e0 ; 0xc13c2 + or AL, strict byte 0ffh ; 0c ff ; 0xc13c4 + mov bl, byte [bp-00ch] ; 8a 5e f4 ; 0xc13c6 + xor bh, bh ; 30 ff ; 0xc13c9 + inc ax ; 40 ; 0xc13cb + mul bx ; f7 e3 ; 0xc13cc + mov cx, ax ; 89 c1 ; 0xc13ce + mov si, strict word 0004eh ; be 4e 00 ; 0xc13d0 vgabios.c:62 + mov word [es:si], ax ; 26 89 04 ; 0xc13d3 + or di, 000ffh ; 81 cf ff 00 ; 0xc13d6 vgabios.c:858 + lea ax, [di+001h] ; 8d 45 01 ; 0xc13da + mul bx ; f7 e3 ; 0xc13dd + jmp short 013f2h ; eb 11 ; 0xc13df vgabios.c:860 + mov bl, byte [bx+0482fh] ; 8a 9f 2f 48 ; 0xc13e1 vgabios.c:862 + mov CL, strict byte 006h ; b1 06 ; 0xc13e5 + sal bx, CL ; d3 e3 ; 0xc13e7 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc13e9 + xor ah, ah ; 30 e4 ; 0xc13ec + mul word [bx+04846h] ; f7 a7 46 48 ; 0xc13ee + mov cx, ax ; 89 c1 ; 0xc13f2 + mov bx, strict word 00063h ; bb 63 00 ; 0xc13f4 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc13f7 + mov es, ax ; 8e c0 ; 0xc13fa + mov bx, word [es:bx] ; 26 8b 1f ; 0xc13fc + mov AL, strict byte 00ch ; b0 0c ; 0xc13ff vgabios.c:867 + mov dx, bx ; 89 da ; 0xc1401 + out DX, AL ; ee ; 0xc1403 + mov al, ch ; 88 e8 ; 0xc1404 vgabios.c:868 + lea si, [bx+001h] ; 8d 77 01 ; 0xc1406 + mov dx, si ; 89 f2 ; 0xc1409 + out DX, AL ; ee ; 0xc140b + mov AL, strict byte 00dh ; b0 0d ; 0xc140c vgabios.c:869 + mov dx, bx ; 89 da ; 0xc140e + out DX, AL ; ee ; 0xc1410 + xor ch, ch ; 30 ed ; 0xc1411 vgabios.c:870 + mov ax, cx ; 89 c8 ; 0xc1413 + mov dx, si ; 89 f2 ; 0xc1415 + out DX, AL ; ee ; 0xc1417 + mov bx, strict word 00062h ; bb 62 00 ; 0xc1418 vgabios.c:52 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc141b + mov byte [es:bx], al ; 26 88 07 ; 0xc141e + mov dx, word [bp-010h] ; 8b 56 f0 ; 0xc1421 vgabios.c:880 + call 012cfh ; e8 a8 fe ; 0xc1424 + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc1427 vgabios.c:881 + pop di ; 5f ; 0xc142a + pop si ; 5e ; 0xc142b + pop dx ; 5a ; 0xc142c + pop cx ; 59 ; 0xc142d + pop bx ; 5b ; 0xc142e + pop bp ; 5d ; 0xc142f + retn ; c3 ; 0xc1430 + ; disGetNextSymbol 0xc1431 LB 0x3133 -> off=0x0 cb=0000000000000048 uValue=00000000000c1431 'find_vpti' +find_vpti: ; 0xc1431 LB 0x48 + push bx ; 53 ; 0xc1431 vgabios.c:916 + push cx ; 51 ; 0xc1432 + push si ; 56 ; 0xc1433 + push bp ; 55 ; 0xc1434 + mov bp, sp ; 89 e5 ; 0xc1435 + mov bl, al ; 88 c3 ; 0xc1437 vgabios.c:921 + xor bh, bh ; 30 ff ; 0xc1439 + mov CL, strict byte 003h ; b1 03 ; 0xc143b + mov si, bx ; 89 de ; 0xc143d + sal si, CL ; d3 e6 ; 0xc143f + cmp byte [si+047b0h], 000h ; 80 bc b0 47 00 ; 0xc1441 + jne short 0146eh ; 75 26 ; 0xc1446 + mov si, 00089h ; be 89 00 ; 0xc1448 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc144b + mov es, ax ; 8e c0 ; 0xc144e + mov al, byte [es:si] ; 26 8a 04 ; 0xc1450 + test AL, strict byte 010h ; a8 10 ; 0xc1453 vgabios.c:923 + je short 0145dh ; 74 06 ; 0xc1455 + mov al, byte [bx+07df6h] ; 8a 87 f6 7d ; 0xc1457 vgabios.c:924 + jmp short 0146bh ; eb 0e ; 0xc145b vgabios.c:925 + test AL, strict byte 080h ; a8 80 ; 0xc145d + je short 01467h ; 74 06 ; 0xc145f + mov al, byte [bx+07de6h] ; 8a 87 e6 7d ; 0xc1461 vgabios.c:926 + jmp short 0146bh ; eb 04 ; 0xc1465 vgabios.c:927 + mov al, byte [bx+07deeh] ; 8a 87 ee 7d ; 0xc1467 vgabios.c:928 + cbw ; 98 ; 0xc146b + jmp short 01474h ; eb 06 ; 0xc146c vgabios.c:929 + mov al, byte [bx+0482fh] ; 8a 87 2f 48 ; 0xc146e vgabios.c:930 + xor ah, ah ; 30 e4 ; 0xc1472 + pop bp ; 5d ; 0xc1474 vgabios.c:933 + pop si ; 5e ; 0xc1475 + pop cx ; 59 ; 0xc1476 + pop bx ; 5b ; 0xc1477 + retn ; c3 ; 0xc1478 + ; disGetNextSymbol 0xc1479 LB 0x30eb -> off=0x0 cb=00000000000004e4 uValue=00000000000c1479 'biosfn_set_video_mode' +biosfn_set_video_mode: ; 0xc1479 LB 0x4e4 + push bp ; 55 ; 0xc1479 vgabios.c:938 + mov bp, sp ; 89 e5 ; 0xc147a + push bx ; 53 ; 0xc147c + push cx ; 51 ; 0xc147d + push dx ; 52 ; 0xc147e + push si ; 56 ; 0xc147f + push di ; 57 ; 0xc1480 + sub sp, strict byte 00018h ; 83 ec 18 ; 0xc1481 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc1484 + and AL, strict byte 080h ; 24 80 ; 0xc1487 vgabios.c:942 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc1489 + call 007f8h ; e8 69 f3 ; 0xc148c vgabios.c:952 + test ax, ax ; 85 c0 ; 0xc148f + je short 0149fh ; 74 0c ; 0xc1491 + mov AL, strict byte 007h ; b0 07 ; 0xc1493 vgabios.c:954 + mov dx, 003c4h ; ba c4 03 ; 0xc1495 + out DX, AL ; ee ; 0xc1498 + xor al, al ; 30 c0 ; 0xc1499 vgabios.c:955 + mov dx, 003c5h ; ba c5 03 ; 0xc149b + out DX, AL ; ee ; 0xc149e + and byte [bp-00ch], 07fh ; 80 66 f4 7f ; 0xc149f vgabios.c:960 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc14a3 vgabios.c:966 + xor ah, ah ; 30 e4 ; 0xc14a6 + call 03888h ; e8 dd 23 ; 0xc14a8 + mov dl, al ; 88 c2 ; 0xc14ab + mov byte [bp-010h], al ; 88 46 f0 ; 0xc14ad + cmp AL, strict byte 0ffh ; 3c ff ; 0xc14b0 vgabios.c:972 + je short 01520h ; 74 6c ; 0xc14b2 + mov si, 000a8h ; be a8 00 ; 0xc14b4 vgabios.c:67 + mov ax, strict word 00040h ; b8 40 00 ; 0xc14b7 + mov es, ax ; 8e c0 ; 0xc14ba + mov bx, word [es:si] ; 26 8b 1c ; 0xc14bc + mov ax, word [es:si+002h] ; 26 8b 44 02 ; 0xc14bf + mov word [bp-014h], bx ; 89 5e ec ; 0xc14c3 vgabios.c:68 + mov word [bp-012h], ax ; 89 46 ee ; 0xc14c6 + xor dh, dh ; 30 f6 ; 0xc14c9 vgabios.c:978 + mov ax, dx ; 89 d0 ; 0xc14cb + call 01431h ; e8 61 ff ; 0xc14cd + mov es, [bp-012h] ; 8e 46 ee ; 0xc14d0 vgabios.c:979 + mov si, word [es:bx] ; 26 8b 37 ; 0xc14d3 + mov bx, word [es:bx+002h] ; 26 8b 5f 02 ; 0xc14d6 + mov word [bp-01ah], bx ; 89 5e e6 ; 0xc14da + xor ah, ah ; 30 e4 ; 0xc14dd vgabios.c:980 + mov CL, strict byte 006h ; b1 06 ; 0xc14df + sal ax, CL ; d3 e0 ; 0xc14e1 + add si, ax ; 01 c6 ; 0xc14e3 + mov bx, 00089h ; bb 89 00 ; 0xc14e5 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc14e8 + mov es, ax ; 8e c0 ; 0xc14eb + mov al, byte [es:bx] ; 26 8a 07 ; 0xc14ed + mov ch, al ; 88 c5 ; 0xc14f0 vgabios.c:48 + test AL, strict byte 008h ; a8 08 ; 0xc14f2 vgabios.c:997 + jne short 0153ch ; 75 46 ; 0xc14f4 + mov CL, strict byte 003h ; b1 03 ; 0xc14f6 vgabios.c:999 + mov bx, dx ; 89 d3 ; 0xc14f8 + sal bx, CL ; d3 e3 ; 0xc14fa + mov al, byte [bx+047b5h] ; 8a 87 b5 47 ; 0xc14fc + mov dx, 003c6h ; ba c6 03 ; 0xc1500 + out DX, AL ; ee ; 0xc1503 + xor al, al ; 30 c0 ; 0xc1504 vgabios.c:1002 + mov dx, 003c8h ; ba c8 03 ; 0xc1506 + out DX, AL ; ee ; 0xc1509 + mov bl, byte [bx+047b6h] ; 8a 9f b6 47 ; 0xc150a vgabios.c:1005 + cmp bl, 001h ; 80 fb 01 ; 0xc150e + jc short 01523h ; 72 10 ; 0xc1511 + jbe short 0152eh ; 76 19 ; 0xc1513 + cmp bl, cl ; 38 cb ; 0xc1515 + je short 0153fh ; 74 26 ; 0xc1517 + cmp bl, 002h ; 80 fb 02 ; 0xc1519 + je short 01535h ; 74 17 ; 0xc151c + jmp short 01544h ; eb 24 ; 0xc151e + jmp near 01953h ; e9 30 04 ; 0xc1520 + test bl, bl ; 84 db ; 0xc1523 + jne short 01544h ; 75 1d ; 0xc1525 + mov word [bp-016h], 04fc3h ; c7 46 ea c3 4f ; 0xc1527 vgabios.c:1007 + jmp short 01544h ; eb 16 ; 0xc152c vgabios.c:1008 + mov word [bp-016h], 05083h ; c7 46 ea 83 50 ; 0xc152e vgabios.c:1010 + jmp short 01544h ; eb 0f ; 0xc1533 vgabios.c:1011 + mov word [bp-016h], 05143h ; c7 46 ea 43 51 ; 0xc1535 vgabios.c:1013 + jmp short 01544h ; eb 08 ; 0xc153a vgabios.c:1014 + jmp near 015b8h ; e9 79 00 ; 0xc153c + mov word [bp-016h], 05203h ; c7 46 ea 03 52 ; 0xc153f vgabios.c:1016 + mov bl, byte [bp-010h] ; 8a 5e f0 ; 0xc1544 vgabios.c:1020 + xor bh, bh ; 30 ff ; 0xc1547 + mov CL, strict byte 003h ; b1 03 ; 0xc1549 + sal bx, CL ; d3 e3 ; 0xc154b + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc154d + jne short 01563h ; 75 0f ; 0xc1552 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1554 vgabios.c:1022 + cmp byte [es:si+002h], 008h ; 26 80 7c 02 08 ; 0xc1557 + jne short 01563h ; 75 05 ; 0xc155c + mov word [bp-016h], 05083h ; c7 46 ea 83 50 ; 0xc155e vgabios.c:1023 + xor bx, bx ; 31 db ; 0xc1563 vgabios.c:1026 + jmp short 01576h ; eb 0f ; 0xc1565 + xor al, al ; 30 c0 ; 0xc1567 vgabios.c:1033 + mov dx, 003c9h ; ba c9 03 ; 0xc1569 + out DX, AL ; ee ; 0xc156c + out DX, AL ; ee ; 0xc156d vgabios.c:1034 + out DX, AL ; ee ; 0xc156e vgabios.c:1035 + inc bx ; 43 ; 0xc156f vgabios.c:1037 + cmp bx, 00100h ; 81 fb 00 01 ; 0xc1570 + jnc short 015abh ; 73 35 ; 0xc1574 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1576 + xor ah, ah ; 30 e4 ; 0xc1579 + mov CL, strict byte 003h ; b1 03 ; 0xc157b + mov di, ax ; 89 c7 ; 0xc157d + sal di, CL ; d3 e7 ; 0xc157f + mov al, byte [di+047b6h] ; 8a 85 b6 47 ; 0xc1581 + mov di, ax ; 89 c7 ; 0xc1585 + mov al, byte [di+0483fh] ; 8a 85 3f 48 ; 0xc1587 + cmp bx, ax ; 39 c3 ; 0xc158b + jnbe short 01567h ; 77 d8 ; 0xc158d + mov ax, bx ; 89 d8 ; 0xc158f + mov dx, strict word 00003h ; ba 03 00 ; 0xc1591 + mul dx ; f7 e2 ; 0xc1594 + mov di, word [bp-016h] ; 8b 7e ea ; 0xc1596 + add di, ax ; 01 c7 ; 0xc1599 + mov al, byte [di] ; 8a 05 ; 0xc159b + mov dx, 003c9h ; ba c9 03 ; 0xc159d + out DX, AL ; ee ; 0xc15a0 + mov al, byte [di+001h] ; 8a 45 01 ; 0xc15a1 + out DX, AL ; ee ; 0xc15a4 + mov al, byte [di+002h] ; 8a 45 02 ; 0xc15a5 + out DX, AL ; ee ; 0xc15a8 + jmp short 0156fh ; eb c4 ; 0xc15a9 + test ch, 002h ; f6 c5 02 ; 0xc15ab vgabios.c:1038 + je short 015b8h ; 74 08 ; 0xc15ae + mov dx, 00100h ; ba 00 01 ; 0xc15b0 vgabios.c:1040 + xor ax, ax ; 31 c0 ; 0xc15b3 + call 01134h ; e8 7c fb ; 0xc15b5 + mov dx, 003dah ; ba da 03 ; 0xc15b8 vgabios.c:1045 + in AL, DX ; ec ; 0xc15bb + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc15bc + xor bx, bx ; 31 db ; 0xc15be vgabios.c:1048 + jmp short 015c7h ; eb 05 ; 0xc15c0 + cmp bx, strict byte 00013h ; 83 fb 13 ; 0xc15c2 + jnbe short 015dch ; 77 15 ; 0xc15c5 + mov al, bl ; 88 d8 ; 0xc15c7 vgabios.c:1049 + mov dx, 003c0h ; ba c0 03 ; 0xc15c9 + out DX, AL ; ee ; 0xc15cc + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc15cd vgabios.c:1050 + mov di, si ; 89 f7 ; 0xc15d0 + add di, bx ; 01 df ; 0xc15d2 + mov al, byte [es:di+023h] ; 26 8a 45 23 ; 0xc15d4 + out DX, AL ; ee ; 0xc15d8 + inc bx ; 43 ; 0xc15d9 vgabios.c:1051 + jmp short 015c2h ; eb e6 ; 0xc15da + mov AL, strict byte 014h ; b0 14 ; 0xc15dc vgabios.c:1052 + mov dx, 003c0h ; ba c0 03 ; 0xc15de + out DX, AL ; ee ; 0xc15e1 + xor al, al ; 30 c0 ; 0xc15e2 vgabios.c:1053 + out DX, AL ; ee ; 0xc15e4 + les bx, [bp-014h] ; c4 5e ec ; 0xc15e5 vgabios.c:1056 + mov dx, word [es:bx+004h] ; 26 8b 57 04 ; 0xc15e8 + mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xc15ec + test ax, ax ; 85 c0 ; 0xc15f0 + jne short 015f8h ; 75 04 ; 0xc15f2 + test dx, dx ; 85 d2 ; 0xc15f4 + je short 01634h ; 74 3c ; 0xc15f6 + mov word [bp-020h], ax ; 89 46 e0 ; 0xc15f8 vgabios.c:1060 + xor bx, bx ; 31 db ; 0xc15fb vgabios.c:1061 + jmp short 01604h ; eb 05 ; 0xc15fd + cmp bx, strict byte 00010h ; 83 fb 10 ; 0xc15ff + jnc short 01624h ; 73 20 ; 0xc1602 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1604 vgabios.c:1062 + mov di, si ; 89 f7 ; 0xc1607 + add di, bx ; 01 df ; 0xc1609 + mov ax, word [bp-020h] ; 8b 46 e0 ; 0xc160b + mov word [bp-022h], ax ; 89 46 de ; 0xc160e + mov cx, dx ; 89 d1 ; 0xc1611 + add cx, bx ; 01 d9 ; 0xc1613 + mov al, byte [es:di+023h] ; 26 8a 45 23 ; 0xc1615 + mov es, [bp-022h] ; 8e 46 de ; 0xc1619 + mov di, cx ; 89 cf ; 0xc161c + mov byte [es:di], al ; 26 88 05 ; 0xc161e + inc bx ; 43 ; 0xc1621 + jmp short 015ffh ; eb db ; 0xc1622 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1624 vgabios.c:1063 + mov al, byte [es:si+034h] ; 26 8a 44 34 ; 0xc1627 + mov es, [bp-020h] ; 8e 46 e0 ; 0xc162b + mov bx, dx ; 89 d3 ; 0xc162e + mov byte [es:bx+010h], al ; 26 88 47 10 ; 0xc1630 + xor al, al ; 30 c0 ; 0xc1634 vgabios.c:1067 + mov dx, 003c4h ; ba c4 03 ; 0xc1636 + out DX, AL ; ee ; 0xc1639 + mov AL, strict byte 003h ; b0 03 ; 0xc163a vgabios.c:1068 + mov dx, 003c5h ; ba c5 03 ; 0xc163c + out DX, AL ; ee ; 0xc163f + mov bx, strict word 00001h ; bb 01 00 ; 0xc1640 vgabios.c:1069 + jmp short 0164ah ; eb 05 ; 0xc1643 + cmp bx, strict byte 00004h ; 83 fb 04 ; 0xc1645 + jnbe short 01662h ; 77 18 ; 0xc1648 + mov al, bl ; 88 d8 ; 0xc164a vgabios.c:1070 + mov dx, 003c4h ; ba c4 03 ; 0xc164c + out DX, AL ; ee ; 0xc164f + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1650 vgabios.c:1071 + mov di, si ; 89 f7 ; 0xc1653 + add di, bx ; 01 df ; 0xc1655 + mov al, byte [es:di+004h] ; 26 8a 45 04 ; 0xc1657 + mov dx, 003c5h ; ba c5 03 ; 0xc165b + out DX, AL ; ee ; 0xc165e + inc bx ; 43 ; 0xc165f vgabios.c:1072 + jmp short 01645h ; eb e3 ; 0xc1660 + xor bx, bx ; 31 db ; 0xc1662 vgabios.c:1075 + jmp short 0166bh ; eb 05 ; 0xc1664 + cmp bx, strict byte 00008h ; 83 fb 08 ; 0xc1666 + jnbe short 01683h ; 77 18 ; 0xc1669 + mov al, bl ; 88 d8 ; 0xc166b vgabios.c:1076 + mov dx, 003ceh ; ba ce 03 ; 0xc166d + out DX, AL ; ee ; 0xc1670 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1671 vgabios.c:1077 + mov di, si ; 89 f7 ; 0xc1674 + add di, bx ; 01 df ; 0xc1676 + mov al, byte [es:di+037h] ; 26 8a 45 37 ; 0xc1678 + mov dx, 003cfh ; ba cf 03 ; 0xc167c + out DX, AL ; ee ; 0xc167f + inc bx ; 43 ; 0xc1680 vgabios.c:1078 + jmp short 01666h ; eb e3 ; 0xc1681 + mov bl, byte [bp-010h] ; 8a 5e f0 ; 0xc1683 vgabios.c:1081 + xor bh, bh ; 30 ff ; 0xc1686 + mov CL, strict byte 003h ; b1 03 ; 0xc1688 + sal bx, CL ; d3 e3 ; 0xc168a + cmp byte [bx+047b1h], 001h ; 80 bf b1 47 01 ; 0xc168c + jne short 01698h ; 75 05 ; 0xc1691 + mov bx, 003b4h ; bb b4 03 ; 0xc1693 + jmp short 0169bh ; eb 03 ; 0xc1696 + mov bx, 003d4h ; bb d4 03 ; 0xc1698 + mov word [bp-018h], bx ; 89 5e e8 ; 0xc169b + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc169e vgabios.c:1084 + mov al, byte [es:si+009h] ; 26 8a 44 09 ; 0xc16a1 + mov dx, 003c2h ; ba c2 03 ; 0xc16a5 + out DX, AL ; ee ; 0xc16a8 + mov ax, strict word 00011h ; b8 11 00 ; 0xc16a9 vgabios.c:1087 + mov dx, bx ; 89 da ; 0xc16ac + out DX, ax ; ef ; 0xc16ae + xor bx, bx ; 31 db ; 0xc16af vgabios.c:1089 + jmp short 016b8h ; eb 05 ; 0xc16b1 + cmp bx, strict byte 00018h ; 83 fb 18 ; 0xc16b3 + jnbe short 016ceh ; 77 16 ; 0xc16b6 + mov al, bl ; 88 d8 ; 0xc16b8 vgabios.c:1090 + mov dx, word [bp-018h] ; 8b 56 e8 ; 0xc16ba + out DX, AL ; ee ; 0xc16bd + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc16be vgabios.c:1091 + mov di, si ; 89 f7 ; 0xc16c1 + add di, bx ; 01 df ; 0xc16c3 + inc dx ; 42 ; 0xc16c5 + mov al, byte [es:di+00ah] ; 26 8a 45 0a ; 0xc16c6 + out DX, AL ; ee ; 0xc16ca + inc bx ; 43 ; 0xc16cb vgabios.c:1092 + jmp short 016b3h ; eb e5 ; 0xc16cc + mov AL, strict byte 020h ; b0 20 ; 0xc16ce vgabios.c:1095 + mov dx, 003c0h ; ba c0 03 ; 0xc16d0 + out DX, AL ; ee ; 0xc16d3 + mov dx, word [bp-018h] ; 8b 56 e8 ; 0xc16d4 vgabios.c:1096 + add dx, strict byte 00006h ; 83 c2 06 ; 0xc16d7 + in AL, DX ; ec ; 0xc16da + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc16db + cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xc16dd vgabios.c:1098 + jne short 01741h ; 75 5e ; 0xc16e1 + mov bl, byte [bp-010h] ; 8a 5e f0 ; 0xc16e3 vgabios.c:1100 + xor bh, bh ; 30 ff ; 0xc16e6 + mov CL, strict byte 003h ; b1 03 ; 0xc16e8 + sal bx, CL ; d3 e3 ; 0xc16ea + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc16ec + jne short 01705h ; 75 12 ; 0xc16f1 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc16f3 vgabios.c:1102 + mov cx, 04000h ; b9 00 40 ; 0xc16f7 + mov ax, 00720h ; b8 20 07 ; 0xc16fa + xor di, di ; 31 ff ; 0xc16fd + jcxz 01703h ; e3 02 ; 0xc16ff + rep stosw ; f3 ab ; 0xc1701 + jmp short 01741h ; eb 3c ; 0xc1703 vgabios.c:1104 + cmp byte [bp-00ch], 00dh ; 80 7e f4 0d ; 0xc1705 vgabios.c:1106 + jnc short 0171ch ; 73 11 ; 0xc1709 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc170b vgabios.c:1108 + mov cx, 04000h ; b9 00 40 ; 0xc170f + xor ax, ax ; 31 c0 ; 0xc1712 + xor di, di ; 31 ff ; 0xc1714 + jcxz 0171ah ; e3 02 ; 0xc1716 + rep stosw ; f3 ab ; 0xc1718 + jmp short 01741h ; eb 25 ; 0xc171a vgabios.c:1110 + mov AL, strict byte 002h ; b0 02 ; 0xc171c vgabios.c:1112 + mov dx, 003c4h ; ba c4 03 ; 0xc171e + out DX, AL ; ee ; 0xc1721 + mov dx, 003c5h ; ba c5 03 ; 0xc1722 vgabios.c:1113 + in AL, DX ; ec ; 0xc1725 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc1726 + mov word [bp-022h], ax ; 89 46 de ; 0xc1728 + mov AL, strict byte 00fh ; b0 0f ; 0xc172b vgabios.c:1114 + out DX, AL ; ee ; 0xc172d + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc172e vgabios.c:1115 + mov cx, 08000h ; b9 00 80 ; 0xc1732 + xor ax, ax ; 31 c0 ; 0xc1735 + xor di, di ; 31 ff ; 0xc1737 + jcxz 0173dh ; e3 02 ; 0xc1739 + rep stosw ; f3 ab ; 0xc173b + mov al, byte [bp-022h] ; 8a 46 de ; 0xc173d vgabios.c:1116 + out DX, AL ; ee ; 0xc1740 + mov bx, strict word 00049h ; bb 49 00 ; 0xc1741 vgabios.c:52 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1744 + mov es, ax ; 8e c0 ; 0xc1747 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1749 + mov byte [es:bx], al ; 26 88 07 ; 0xc174c + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc174f vgabios.c:1123 + mov al, byte [es:si] ; 26 8a 04 ; 0xc1752 + xor ah, ah ; 30 e4 ; 0xc1755 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1757 vgabios.c:62 + mov dx, strict word 00040h ; ba 40 00 ; 0xc175a + mov es, dx ; 8e c2 ; 0xc175d + mov word [es:bx], ax ; 26 89 07 ; 0xc175f + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1762 vgabios.c:60 + mov ax, word [es:si+003h] ; 26 8b 44 03 ; 0xc1765 + mov bx, strict word 0004ch ; bb 4c 00 ; 0xc1769 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc176c + mov word [es:bx], ax ; 26 89 07 ; 0xc176e + mov bx, strict word 00063h ; bb 63 00 ; 0xc1771 vgabios.c:62 + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc1774 + mov word [es:bx], ax ; 26 89 07 ; 0xc1777 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc177a vgabios.c:50 + mov al, byte [es:si+001h] ; 26 8a 44 01 ; 0xc177d + mov bx, 00084h ; bb 84 00 ; 0xc1781 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc1784 + mov byte [es:bx], al ; 26 88 07 ; 0xc1786 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1789 vgabios.c:1127 + mov al, byte [es:si+002h] ; 26 8a 44 02 ; 0xc178c + xor ah, ah ; 30 e4 ; 0xc1790 + mov bx, 00085h ; bb 85 00 ; 0xc1792 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc1795 + mov word [es:bx], ax ; 26 89 07 ; 0xc1797 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc179a vgabios.c:1128 + or AL, strict byte 060h ; 0c 60 ; 0xc179d + mov bx, 00087h ; bb 87 00 ; 0xc179f vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc17a2 + mov bx, 00088h ; bb 88 00 ; 0xc17a5 vgabios.c:52 + mov byte [es:bx], 0f9h ; 26 c6 07 f9 ; 0xc17a8 + mov bx, 0008ah ; bb 8a 00 ; 0xc17ac vgabios.c:52 + mov byte [es:bx], 008h ; 26 c6 07 08 ; 0xc17af + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc17b3 vgabios.c:1134 + cmp AL, strict byte 007h ; 3c 07 ; 0xc17b6 + jnbe short 017e1h ; 77 27 ; 0xc17b8 + mov bl, al ; 88 c3 ; 0xc17ba vgabios.c:1136 + xor bh, bh ; 30 ff ; 0xc17bc + mov al, byte [bx+07ddeh] ; 8a 87 de 7d ; 0xc17be vgabios.c:50 + mov bx, strict word 00065h ; bb 65 00 ; 0xc17c2 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc17c5 + cmp byte [bp-00ch], 006h ; 80 7e f4 06 ; 0xc17c8 vgabios.c:1137 + jne short 017d3h ; 75 05 ; 0xc17cc + mov ax, strict word 0003fh ; b8 3f 00 ; 0xc17ce + jmp short 017d6h ; eb 03 ; 0xc17d1 + mov ax, strict word 00030h ; b8 30 00 ; 0xc17d3 + mov bx, strict word 00066h ; bb 66 00 ; 0xc17d6 vgabios.c:52 + mov dx, strict word 00040h ; ba 40 00 ; 0xc17d9 + mov es, dx ; 8e c2 ; 0xc17dc + mov byte [es:bx], al ; 26 88 07 ; 0xc17de + mov bl, byte [bp-010h] ; 8a 5e f0 ; 0xc17e1 vgabios.c:1141 + xor bh, bh ; 30 ff ; 0xc17e4 + mov CL, strict byte 003h ; b1 03 ; 0xc17e6 + sal bx, CL ; d3 e3 ; 0xc17e8 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc17ea + jne short 017fah ; 75 09 ; 0xc17ef + mov dx, strict word 00007h ; ba 07 00 ; 0xc17f1 vgabios.c:1143 + mov ax, strict word 00006h ; b8 06 00 ; 0xc17f4 + call 011d3h ; e8 d9 f9 ; 0xc17f7 + xor bx, bx ; 31 db ; 0xc17fa vgabios.c:1148 + jmp short 01803h ; eb 05 ; 0xc17fc + cmp bx, strict byte 00008h ; 83 fb 08 ; 0xc17fe + jnc short 0180fh ; 73 0c ; 0xc1801 + mov al, bl ; 88 d8 ; 0xc1803 vgabios.c:1149 + xor ah, ah ; 30 e4 ; 0xc1805 + xor dx, dx ; 31 d2 ; 0xc1807 + call 012cfh ; e8 c3 fa ; 0xc1809 + inc bx ; 43 ; 0xc180c + jmp short 017feh ; eb ef ; 0xc180d + xor ax, ax ; 31 c0 ; 0xc180f vgabios.c:1152 + call 0135ch ; e8 48 fb ; 0xc1811 + mov bl, byte [bp-010h] ; 8a 5e f0 ; 0xc1814 vgabios.c:1155 + xor bh, bh ; 30 ff ; 0xc1817 + mov CL, strict byte 003h ; b1 03 ; 0xc1819 + sal bx, CL ; d3 e3 ; 0xc181b + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc181d + jne short 01892h ; 75 6e ; 0xc1822 + les bx, [bp-014h] ; c4 5e ec ; 0xc1824 vgabios.c:1157 + mov bx, word [es:bx+008h] ; 26 8b 5f 08 ; 0xc1827 + mov word [bp-01eh], bx ; 89 5e e2 ; 0xc182b + mov bx, word [bp-014h] ; 8b 5e ec ; 0xc182e + mov ax, word [es:bx+00ah] ; 26 8b 47 0a ; 0xc1831 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc1835 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1838 vgabios.c:1159 + mov bl, byte [es:si+002h] ; 26 8a 5c 02 ; 0xc183b + cmp bl, 00eh ; 80 fb 0e ; 0xc183f + je short 01865h ; 74 21 ; 0xc1842 + cmp bl, 008h ; 80 fb 08 ; 0xc1844 + jne short 01895h ; 75 4c ; 0xc1847 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1849 vgabios.c:1161 + mov al, byte [es:si+002h] ; 26 8a 44 02 ; 0xc184c + xor ah, ah ; 30 e4 ; 0xc1850 + push ax ; 50 ; 0xc1852 + xor al, al ; 30 c0 ; 0xc1853 + push ax ; 50 ; 0xc1855 + push ax ; 50 ; 0xc1856 + mov cx, 00100h ; b9 00 01 ; 0xc1857 + mov bx, 0556dh ; bb 6d 55 ; 0xc185a + mov dx, 0c000h ; ba 00 c0 ; 0xc185d + call 02e8ch ; e8 29 16 ; 0xc1860 + jmp short 018bah ; eb 55 ; 0xc1863 vgabios.c:1162 + mov al, bl ; 88 d8 ; 0xc1865 vgabios.c:1164 + xor ah, ah ; 30 e4 ; 0xc1867 + push ax ; 50 ; 0xc1869 + xor al, bl ; 30 d8 ; 0xc186a + push ax ; 50 ; 0xc186c + xor al, al ; 30 c0 ; 0xc186d + push ax ; 50 ; 0xc186f + mov cx, 00100h ; b9 00 01 ; 0xc1870 + mov bx, 05d6dh ; bb 6d 5d ; 0xc1873 + mov dx, 0c000h ; ba 00 c0 ; 0xc1876 + call 02e8ch ; e8 10 16 ; 0xc1879 + cmp byte [bp-00ch], 007h ; 80 7e f4 07 ; 0xc187c vgabios.c:1165 + jne short 018bah ; 75 38 ; 0xc1880 + mov cx, strict word 0000eh ; b9 0e 00 ; 0xc1882 vgabios.c:1166 + xor bx, bx ; 31 db ; 0xc1885 + mov dx, 07b6dh ; ba 6d 7b ; 0xc1887 + mov ax, 0c000h ; b8 00 c0 ; 0xc188a + call 02e14h ; e8 84 15 ; 0xc188d + jmp short 018bah ; eb 28 ; 0xc1890 vgabios.c:1167 + jmp near 0191bh ; e9 86 00 ; 0xc1892 + mov al, bl ; 88 d8 ; 0xc1895 vgabios.c:1169 + xor ah, ah ; 30 e4 ; 0xc1897 + push ax ; 50 ; 0xc1899 + xor al, bl ; 30 d8 ; 0xc189a + push ax ; 50 ; 0xc189c + xor al, al ; 30 c0 ; 0xc189d + push ax ; 50 ; 0xc189f + mov cx, 00100h ; b9 00 01 ; 0xc18a0 + mov bx, 06b6dh ; bb 6d 6b ; 0xc18a3 + mov dx, 0c000h ; ba 00 c0 ; 0xc18a6 + call 02e8ch ; e8 e0 15 ; 0xc18a9 + mov cx, strict word 00010h ; b9 10 00 ; 0xc18ac vgabios.c:1170 + xor bx, bx ; 31 db ; 0xc18af + mov dx, 07c9ah ; ba 9a 7c ; 0xc18b1 + mov ax, 0c000h ; b8 00 c0 ; 0xc18b4 + call 02e14h ; e8 5a 15 ; 0xc18b7 + cmp word [bp-01ch], strict byte 00000h ; 83 7e e4 00 ; 0xc18ba vgabios.c:1172 + jne short 018c6h ; 75 06 ; 0xc18be + cmp word [bp-01eh], strict byte 00000h ; 83 7e e2 00 ; 0xc18c0 + je short 01913h ; 74 4d ; 0xc18c4 + xor bx, bx ; 31 db ; 0xc18c6 vgabios.c:1177 + les di, [bp-01eh] ; c4 7e e2 ; 0xc18c8 vgabios.c:1179 + add di, bx ; 01 df ; 0xc18cb + mov al, byte [es:di+00bh] ; 26 8a 45 0b ; 0xc18cd + cmp AL, strict byte 0ffh ; 3c ff ; 0xc18d1 + je short 018ddh ; 74 08 ; 0xc18d3 + cmp al, byte [bp-00ch] ; 3a 46 f4 ; 0xc18d5 vgabios.c:1181 + je short 018ddh ; 74 03 ; 0xc18d8 + inc bx ; 43 ; 0xc18da vgabios.c:1183 + jmp short 018c8h ; eb eb ; 0xc18db vgabios.c:1184 + mov es, [bp-01ch] ; 8e 46 e4 ; 0xc18dd vgabios.c:1186 + add bx, word [bp-01eh] ; 03 5e e2 ; 0xc18e0 + mov al, byte [es:bx+00bh] ; 26 8a 47 0b ; 0xc18e3 + cmp al, byte [bp-00ch] ; 3a 46 f4 ; 0xc18e7 + jne short 01913h ; 75 27 ; 0xc18ea + mov bx, word [bp-01eh] ; 8b 5e e2 ; 0xc18ec vgabios.c:1191 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc18ef + xor ah, ah ; 30 e4 ; 0xc18f2 + push ax ; 50 ; 0xc18f4 + mov al, byte [es:bx+001h] ; 26 8a 47 01 ; 0xc18f5 + push ax ; 50 ; 0xc18f9 + push word [es:bx+004h] ; 26 ff 77 04 ; 0xc18fa + mov cx, word [es:bx+002h] ; 26 8b 4f 02 ; 0xc18fe + mov bx, word [es:bx+006h] ; 26 8b 5f 06 ; 0xc1902 + mov di, word [bp-01eh] ; 8b 7e e2 ; 0xc1906 + mov dx, word [es:di+008h] ; 26 8b 55 08 ; 0xc1909 + mov ax, strict word 00010h ; b8 10 00 ; 0xc190d + call 02e8ch ; e8 79 15 ; 0xc1910 + xor bl, bl ; 30 db ; 0xc1913 vgabios.c:1195 + mov AL, strict byte 003h ; b0 03 ; 0xc1915 + mov AH, strict byte 011h ; b4 11 ; 0xc1917 + int 06dh ; cd 6d ; 0xc1919 + mov bx, 0596dh ; bb 6d 59 ; 0xc191b vgabios.c:1199 + mov cx, ds ; 8c d9 ; 0xc191e + mov ax, strict word 0001fh ; b8 1f 00 ; 0xc1920 + call 009f0h ; e8 ca f0 ; 0xc1923 + mov es, [bp-01ah] ; 8e 46 e6 ; 0xc1926 vgabios.c:1201 + mov dl, byte [es:si+002h] ; 26 8a 54 02 ; 0xc1929 + cmp dl, 010h ; 80 fa 10 ; 0xc192d + je short 0194eh ; 74 1c ; 0xc1930 + cmp dl, 00eh ; 80 fa 0e ; 0xc1932 + je short 01949h ; 74 12 ; 0xc1935 + cmp dl, 008h ; 80 fa 08 ; 0xc1937 + jne short 01953h ; 75 17 ; 0xc193a + mov bx, 0556dh ; bb 6d 55 ; 0xc193c vgabios.c:1203 + mov cx, ds ; 8c d9 ; 0xc193f + mov ax, strict word 00043h ; b8 43 00 ; 0xc1941 + call 009f0h ; e8 a9 f0 ; 0xc1944 + jmp short 01953h ; eb 0a ; 0xc1947 vgabios.c:1204 + mov bx, 05d6dh ; bb 6d 5d ; 0xc1949 vgabios.c:1206 + jmp short 0193fh ; eb f1 ; 0xc194c + mov bx, 06b6dh ; bb 6d 6b ; 0xc194e vgabios.c:1209 + jmp short 0193fh ; eb ec ; 0xc1951 + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc1953 vgabios.c:1212 + pop di ; 5f ; 0xc1956 + pop si ; 5e ; 0xc1957 + pop dx ; 5a ; 0xc1958 + pop cx ; 59 ; 0xc1959 + pop bx ; 5b ; 0xc195a + pop bp ; 5d ; 0xc195b + retn ; c3 ; 0xc195c + ; disGetNextSymbol 0xc195d LB 0x2c07 -> off=0x0 cb=000000000000008e uValue=00000000000c195d 'vgamem_copy_pl4' +vgamem_copy_pl4: ; 0xc195d LB 0x8e + push bp ; 55 ; 0xc195d vgabios.c:1215 + mov bp, sp ; 89 e5 ; 0xc195e + push si ; 56 ; 0xc1960 + push di ; 57 ; 0xc1961 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc1962 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc1965 + mov al, dl ; 88 d0 ; 0xc1968 + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc196a + mov byte [bp-006h], cl ; 88 4e fa ; 0xc196d + xor ah, ah ; 30 e4 ; 0xc1970 vgabios.c:1221 + mov dl, byte [bp+006h] ; 8a 56 06 ; 0xc1972 + xor dh, dh ; 30 f6 ; 0xc1975 + mov cx, dx ; 89 d1 ; 0xc1977 + imul dx ; f7 ea ; 0xc1979 + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc197b + xor dh, dh ; 30 f6 ; 0xc197e + mov si, dx ; 89 d6 ; 0xc1980 + imul dx ; f7 ea ; 0xc1982 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc1984 + xor dh, dh ; 30 f6 ; 0xc1987 + mov bx, dx ; 89 d3 ; 0xc1989 + add ax, dx ; 01 d0 ; 0xc198b + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc198d + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1990 vgabios.c:1222 + xor ah, ah ; 30 e4 ; 0xc1993 + imul cx ; f7 e9 ; 0xc1995 + imul si ; f7 ee ; 0xc1997 + add ax, bx ; 01 d8 ; 0xc1999 + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc199b + mov ax, 00105h ; b8 05 01 ; 0xc199e vgabios.c:1223 + mov dx, 003ceh ; ba ce 03 ; 0xc19a1 + out DX, ax ; ef ; 0xc19a4 + xor bl, bl ; 30 db ; 0xc19a5 vgabios.c:1224 + cmp bl, byte [bp+006h] ; 3a 5e 06 ; 0xc19a7 + jnc short 019dbh ; 73 2f ; 0xc19aa + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc19ac vgabios.c:1226 + xor ah, ah ; 30 e4 ; 0xc19af + mov cx, ax ; 89 c1 ; 0xc19b1 + mov al, bl ; 88 d8 ; 0xc19b3 + mov dx, ax ; 89 c2 ; 0xc19b5 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc19b7 + mov si, ax ; 89 c6 ; 0xc19ba + mov ax, dx ; 89 d0 ; 0xc19bc + imul si ; f7 ee ; 0xc19be + mov si, word [bp-00eh] ; 8b 76 f2 ; 0xc19c0 + add si, ax ; 01 c6 ; 0xc19c3 + mov di, word [bp-00ch] ; 8b 7e f4 ; 0xc19c5 + add di, ax ; 01 c7 ; 0xc19c8 + mov dx, 0a000h ; ba 00 a0 ; 0xc19ca + mov es, dx ; 8e c2 ; 0xc19cd + jcxz 019d7h ; e3 06 ; 0xc19cf + push DS ; 1e ; 0xc19d1 + mov ds, dx ; 8e da ; 0xc19d2 + rep movsb ; f3 a4 ; 0xc19d4 + pop DS ; 1f ; 0xc19d6 + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc19d7 vgabios.c:1227 + jmp short 019a7h ; eb cc ; 0xc19d9 + mov ax, strict word 00005h ; b8 05 00 ; 0xc19db vgabios.c:1228 + mov dx, 003ceh ; ba ce 03 ; 0xc19de + out DX, ax ; ef ; 0xc19e1 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc19e2 vgabios.c:1229 + pop di ; 5f ; 0xc19e5 + pop si ; 5e ; 0xc19e6 + pop bp ; 5d ; 0xc19e7 + retn 00004h ; c2 04 00 ; 0xc19e8 + ; disGetNextSymbol 0xc19eb LB 0x2b79 -> off=0x0 cb=000000000000007b uValue=00000000000c19eb 'vgamem_fill_pl4' +vgamem_fill_pl4: ; 0xc19eb LB 0x7b + push bp ; 55 ; 0xc19eb vgabios.c:1232 + mov bp, sp ; 89 e5 ; 0xc19ec + push si ; 56 ; 0xc19ee + push di ; 57 ; 0xc19ef + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc19f0 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc19f3 + mov al, dl ; 88 d0 ; 0xc19f6 + mov byte [bp-006h], bl ; 88 5e fa ; 0xc19f8 + mov bh, cl ; 88 cf ; 0xc19fb + xor ah, ah ; 30 e4 ; 0xc19fd vgabios.c:1238 + mov dx, ax ; 89 c2 ; 0xc19ff + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1a01 + mov cx, ax ; 89 c1 ; 0xc1a04 + mov ax, dx ; 89 d0 ; 0xc1a06 + imul cx ; f7 e9 ; 0xc1a08 + mov dl, bh ; 88 fa ; 0xc1a0a + xor dh, dh ; 30 f6 ; 0xc1a0c + imul dx ; f7 ea ; 0xc1a0e + mov dx, ax ; 89 c2 ; 0xc1a10 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1a12 + xor ah, ah ; 30 e4 ; 0xc1a15 + add dx, ax ; 01 c2 ; 0xc1a17 + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc1a19 + mov ax, 00205h ; b8 05 02 ; 0xc1a1c vgabios.c:1239 + mov dx, 003ceh ; ba ce 03 ; 0xc1a1f + out DX, ax ; ef ; 0xc1a22 + xor bl, bl ; 30 db ; 0xc1a23 vgabios.c:1240 + cmp bl, byte [bp+004h] ; 3a 5e 04 ; 0xc1a25 + jnc short 01a56h ; 73 2c ; 0xc1a28 + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc1a2a vgabios.c:1242 + xor ch, ch ; 30 ed ; 0xc1a2d + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1a2f + xor ah, ah ; 30 e4 ; 0xc1a32 + mov si, ax ; 89 c6 ; 0xc1a34 + mov al, bl ; 88 d8 ; 0xc1a36 + mov dx, ax ; 89 c2 ; 0xc1a38 + mov al, bh ; 88 f8 ; 0xc1a3a + mov di, ax ; 89 c7 ; 0xc1a3c + mov ax, dx ; 89 d0 ; 0xc1a3e + imul di ; f7 ef ; 0xc1a40 + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc1a42 + add di, ax ; 01 c7 ; 0xc1a45 + mov ax, si ; 89 f0 ; 0xc1a47 + mov dx, 0a000h ; ba 00 a0 ; 0xc1a49 + mov es, dx ; 8e c2 ; 0xc1a4c + jcxz 01a52h ; e3 02 ; 0xc1a4e + rep stosb ; f3 aa ; 0xc1a50 + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc1a52 vgabios.c:1243 + jmp short 01a25h ; eb cf ; 0xc1a54 + mov ax, strict word 00005h ; b8 05 00 ; 0xc1a56 vgabios.c:1244 + mov dx, 003ceh ; ba ce 03 ; 0xc1a59 + out DX, ax ; ef ; 0xc1a5c + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1a5d vgabios.c:1245 + pop di ; 5f ; 0xc1a60 + pop si ; 5e ; 0xc1a61 + pop bp ; 5d ; 0xc1a62 + retn 00004h ; c2 04 00 ; 0xc1a63 + ; disGetNextSymbol 0xc1a66 LB 0x2afe -> off=0x0 cb=00000000000000b6 uValue=00000000000c1a66 'vgamem_copy_cga' +vgamem_copy_cga: ; 0xc1a66 LB 0xb6 + push bp ; 55 ; 0xc1a66 vgabios.c:1248 + mov bp, sp ; 89 e5 ; 0xc1a67 + push si ; 56 ; 0xc1a69 + push di ; 57 ; 0xc1a6a + sub sp, strict byte 0000eh ; 83 ec 0e ; 0xc1a6b + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc1a6e + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc1a71 + mov byte [bp-00ah], cl ; 88 4e f6 ; 0xc1a74 + mov al, dl ; 88 d0 ; 0xc1a77 vgabios.c:1254 + xor ah, ah ; 30 e4 ; 0xc1a79 + mov bx, ax ; 89 c3 ; 0xc1a7b + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1a7d + mov si, ax ; 89 c6 ; 0xc1a80 + mov ax, bx ; 89 d8 ; 0xc1a82 + imul si ; f7 ee ; 0xc1a84 + mov bl, byte [bp+004h] ; 8a 5e 04 ; 0xc1a86 + mov di, bx ; 89 df ; 0xc1a89 + imul bx ; f7 eb ; 0xc1a8b + mov dx, ax ; 89 c2 ; 0xc1a8d + sar dx, 1 ; d1 fa ; 0xc1a8f + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1a91 + xor ah, ah ; 30 e4 ; 0xc1a94 + mov bx, ax ; 89 c3 ; 0xc1a96 + add dx, ax ; 01 c2 ; 0xc1a98 + mov word [bp-00eh], dx ; 89 56 f2 ; 0xc1a9a + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1a9d vgabios.c:1255 + imul si ; f7 ee ; 0xc1aa0 + imul di ; f7 ef ; 0xc1aa2 + sar ax, 1 ; d1 f8 ; 0xc1aa4 + add ax, bx ; 01 d8 ; 0xc1aa6 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc1aa8 + mov byte [bp-006h], bh ; 88 7e fa ; 0xc1aab vgabios.c:1256 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1aae + xor ah, ah ; 30 e4 ; 0xc1ab1 + cwd ; 99 ; 0xc1ab3 + db 02bh, 0c2h + ; sub ax, dx ; 2b c2 ; 0xc1ab4 + sar ax, 1 ; d1 f8 ; 0xc1ab6 + mov bx, ax ; 89 c3 ; 0xc1ab8 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1aba + xor ah, ah ; 30 e4 ; 0xc1abd + cmp ax, bx ; 39 d8 ; 0xc1abf + jnl short 01b13h ; 7d 50 ; 0xc1ac1 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc1ac3 vgabios.c:1258 + xor bh, bh ; 30 ff ; 0xc1ac6 + mov word [bp-012h], bx ; 89 5e ee ; 0xc1ac8 + mov bl, byte [bp+004h] ; 8a 5e 04 ; 0xc1acb + imul bx ; f7 eb ; 0xc1ace + mov bx, ax ; 89 c3 ; 0xc1ad0 + mov si, word [bp-00eh] ; 8b 76 f2 ; 0xc1ad2 + add si, ax ; 01 c6 ; 0xc1ad5 + mov di, word [bp-010h] ; 8b 7e f0 ; 0xc1ad7 + add di, ax ; 01 c7 ; 0xc1ada + mov cx, word [bp-012h] ; 8b 4e ee ; 0xc1adc + mov dx, 0b800h ; ba 00 b8 ; 0xc1adf + mov es, dx ; 8e c2 ; 0xc1ae2 + jcxz 01aech ; e3 06 ; 0xc1ae4 + push DS ; 1e ; 0xc1ae6 + mov ds, dx ; 8e da ; 0xc1ae7 + rep movsb ; f3 a4 ; 0xc1ae9 + pop DS ; 1f ; 0xc1aeb + mov si, word [bp-00eh] ; 8b 76 f2 ; 0xc1aec vgabios.c:1259 + add si, 02000h ; 81 c6 00 20 ; 0xc1aef + add si, bx ; 01 de ; 0xc1af3 + mov di, word [bp-010h] ; 8b 7e f0 ; 0xc1af5 + add di, 02000h ; 81 c7 00 20 ; 0xc1af8 + add di, bx ; 01 df ; 0xc1afc + mov cx, word [bp-012h] ; 8b 4e ee ; 0xc1afe + mov dx, 0b800h ; ba 00 b8 ; 0xc1b01 + mov es, dx ; 8e c2 ; 0xc1b04 + jcxz 01b0eh ; e3 06 ; 0xc1b06 + push DS ; 1e ; 0xc1b08 + mov ds, dx ; 8e da ; 0xc1b09 + rep movsb ; f3 a4 ; 0xc1b0b + pop DS ; 1f ; 0xc1b0d + inc byte [bp-006h] ; fe 46 fa ; 0xc1b0e vgabios.c:1260 + jmp short 01aaeh ; eb 9b ; 0xc1b11 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1b13 vgabios.c:1261 + pop di ; 5f ; 0xc1b16 + pop si ; 5e ; 0xc1b17 + pop bp ; 5d ; 0xc1b18 + retn 00004h ; c2 04 00 ; 0xc1b19 + ; disGetNextSymbol 0xc1b1c LB 0x2a48 -> off=0x0 cb=0000000000000094 uValue=00000000000c1b1c 'vgamem_fill_cga' +vgamem_fill_cga: ; 0xc1b1c LB 0x94 + push bp ; 55 ; 0xc1b1c vgabios.c:1264 + mov bp, sp ; 89 e5 ; 0xc1b1d + push si ; 56 ; 0xc1b1f + push di ; 57 ; 0xc1b20 + sub sp, strict byte 0000ch ; 83 ec 0c ; 0xc1b21 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc1b24 + mov al, dl ; 88 d0 ; 0xc1b27 + mov byte [bp-00ch], bl ; 88 5e f4 ; 0xc1b29 + mov byte [bp-008h], cl ; 88 4e f8 ; 0xc1b2c + xor ah, ah ; 30 e4 ; 0xc1b2f vgabios.c:1270 + mov dx, ax ; 89 c2 ; 0xc1b31 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1b33 + mov bx, ax ; 89 c3 ; 0xc1b36 + mov ax, dx ; 89 d0 ; 0xc1b38 + imul bx ; f7 eb ; 0xc1b3a + mov dl, cl ; 88 ca ; 0xc1b3c + xor dh, dh ; 30 f6 ; 0xc1b3e + imul dx ; f7 ea ; 0xc1b40 + mov dx, ax ; 89 c2 ; 0xc1b42 + sar dx, 1 ; d1 fa ; 0xc1b44 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1b46 + xor ah, ah ; 30 e4 ; 0xc1b49 + add dx, ax ; 01 c2 ; 0xc1b4b + mov word [bp-00eh], dx ; 89 56 f2 ; 0xc1b4d + mov byte [bp-006h], ah ; 88 66 fa ; 0xc1b50 vgabios.c:1271 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1b53 + xor ah, ah ; 30 e4 ; 0xc1b56 + cwd ; 99 ; 0xc1b58 + db 02bh, 0c2h + ; sub ax, dx ; 2b c2 ; 0xc1b59 + sar ax, 1 ; d1 f8 ; 0xc1b5b + mov dx, ax ; 89 c2 ; 0xc1b5d + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1b5f + xor ah, ah ; 30 e4 ; 0xc1b62 + cmp ax, dx ; 39 d0 ; 0xc1b64 + jnl short 01ba7h ; 7d 3f ; 0xc1b66 + mov bl, byte [bp-00ch] ; 8a 5e f4 ; 0xc1b68 vgabios.c:1273 + xor bh, bh ; 30 ff ; 0xc1b6b + mov dl, byte [bp+006h] ; 8a 56 06 ; 0xc1b6d + xor dh, dh ; 30 f6 ; 0xc1b70 + mov si, dx ; 89 d6 ; 0xc1b72 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc1b74 + imul dx ; f7 ea ; 0xc1b77 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc1b79 + mov di, word [bp-00eh] ; 8b 7e f2 ; 0xc1b7c + add di, ax ; 01 c7 ; 0xc1b7f + mov cx, bx ; 89 d9 ; 0xc1b81 + mov ax, si ; 89 f0 ; 0xc1b83 + mov dx, 0b800h ; ba 00 b8 ; 0xc1b85 + mov es, dx ; 8e c2 ; 0xc1b88 + jcxz 01b8eh ; e3 02 ; 0xc1b8a + rep stosb ; f3 aa ; 0xc1b8c + mov di, word [bp-00eh] ; 8b 7e f2 ; 0xc1b8e vgabios.c:1274 + add di, 02000h ; 81 c7 00 20 ; 0xc1b91 + add di, word [bp-010h] ; 03 7e f0 ; 0xc1b95 + mov cx, bx ; 89 d9 ; 0xc1b98 + mov ax, si ; 89 f0 ; 0xc1b9a + mov es, dx ; 8e c2 ; 0xc1b9c + jcxz 01ba2h ; e3 02 ; 0xc1b9e + rep stosb ; f3 aa ; 0xc1ba0 + inc byte [bp-006h] ; fe 46 fa ; 0xc1ba2 vgabios.c:1275 + jmp short 01b53h ; eb ac ; 0xc1ba5 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1ba7 vgabios.c:1276 + pop di ; 5f ; 0xc1baa + pop si ; 5e ; 0xc1bab + pop bp ; 5d ; 0xc1bac + retn 00004h ; c2 04 00 ; 0xc1bad + ; disGetNextSymbol 0xc1bb0 LB 0x29b4 -> off=0x0 cb=0000000000000083 uValue=00000000000c1bb0 'vgamem_copy_linear' +vgamem_copy_linear: ; 0xc1bb0 LB 0x83 + push bp ; 55 ; 0xc1bb0 vgabios.c:1279 + mov bp, sp ; 89 e5 ; 0xc1bb1 + push si ; 56 ; 0xc1bb3 + push di ; 57 ; 0xc1bb4 + sub sp, strict byte 0000ch ; 83 ec 0c ; 0xc1bb5 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc1bb8 + mov al, dl ; 88 d0 ; 0xc1bbb + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc1bbd + mov bx, cx ; 89 cb ; 0xc1bc0 + xor ah, ah ; 30 e4 ; 0xc1bc2 vgabios.c:1285 + mov si, ax ; 89 c6 ; 0xc1bc4 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1bc6 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc1bc9 + mov ax, si ; 89 f0 ; 0xc1bcc + imul word [bp-010h] ; f7 6e f0 ; 0xc1bce + mul word [bp+004h] ; f7 66 04 ; 0xc1bd1 + mov si, ax ; 89 c6 ; 0xc1bd4 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1bd6 + xor ah, ah ; 30 e4 ; 0xc1bd9 + mov di, ax ; 89 c7 ; 0xc1bdb + add si, ax ; 01 c6 ; 0xc1bdd + mov CL, strict byte 003h ; b1 03 ; 0xc1bdf + sal si, CL ; d3 e6 ; 0xc1be1 + mov word [bp-00ch], si ; 89 76 f4 ; 0xc1be3 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1be6 vgabios.c:1286 + imul word [bp-010h] ; f7 6e f0 ; 0xc1be9 + mul word [bp+004h] ; f7 66 04 ; 0xc1bec + add ax, di ; 01 f8 ; 0xc1bef + sal ax, CL ; d3 e0 ; 0xc1bf1 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc1bf3 + sal bx, CL ; d3 e3 ; 0xc1bf6 vgabios.c:1287 + sal word [bp+004h], CL ; d3 66 04 ; 0xc1bf8 vgabios.c:1288 + mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xc1bfb vgabios.c:1289 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1bff + cmp al, byte [bp+006h] ; 3a 46 06 ; 0xc1c02 + jnc short 01c2ah ; 73 23 ; 0xc1c05 + xor ah, ah ; 30 e4 ; 0xc1c07 vgabios.c:1291 + mul word [bp+004h] ; f7 66 04 ; 0xc1c09 + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc1c0c + add si, ax ; 01 c6 ; 0xc1c0f + mov di, word [bp-00eh] ; 8b 7e f2 ; 0xc1c11 + add di, ax ; 01 c7 ; 0xc1c14 + mov cx, bx ; 89 d9 ; 0xc1c16 + mov dx, 0a000h ; ba 00 a0 ; 0xc1c18 + mov es, dx ; 8e c2 ; 0xc1c1b + jcxz 01c25h ; e3 06 ; 0xc1c1d + push DS ; 1e ; 0xc1c1f + mov ds, dx ; 8e da ; 0xc1c20 + rep movsb ; f3 a4 ; 0xc1c22 + pop DS ; 1f ; 0xc1c24 + inc byte [bp-006h] ; fe 46 fa ; 0xc1c25 vgabios.c:1292 + jmp short 01bffh ; eb d5 ; 0xc1c28 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1c2a vgabios.c:1293 + pop di ; 5f ; 0xc1c2d + pop si ; 5e ; 0xc1c2e + pop bp ; 5d ; 0xc1c2f + retn 00004h ; c2 04 00 ; 0xc1c30 + ; disGetNextSymbol 0xc1c33 LB 0x2931 -> off=0x0 cb=000000000000006c uValue=00000000000c1c33 'vgamem_fill_linear' +vgamem_fill_linear: ; 0xc1c33 LB 0x6c + push bp ; 55 ; 0xc1c33 vgabios.c:1296 + mov bp, sp ; 89 e5 ; 0xc1c34 + push si ; 56 ; 0xc1c36 + push di ; 57 ; 0xc1c37 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc1c38 + mov byte [bp-006h], al ; 88 46 fa ; 0xc1c3b + mov al, dl ; 88 d0 ; 0xc1c3e + mov si, cx ; 89 ce ; 0xc1c40 + xor ah, ah ; 30 e4 ; 0xc1c42 vgabios.c:1302 + mov dx, ax ; 89 c2 ; 0xc1c44 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1c46 + mov di, ax ; 89 c7 ; 0xc1c49 + mov ax, dx ; 89 d0 ; 0xc1c4b + imul di ; f7 ef ; 0xc1c4d + mul cx ; f7 e1 ; 0xc1c4f + mov dx, ax ; 89 c2 ; 0xc1c51 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1c53 + xor ah, ah ; 30 e4 ; 0xc1c56 + add ax, dx ; 01 d0 ; 0xc1c58 + mov CL, strict byte 003h ; b1 03 ; 0xc1c5a + sal ax, CL ; d3 e0 ; 0xc1c5c + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc1c5e + sal bx, CL ; d3 e3 ; 0xc1c61 vgabios.c:1303 + sal si, CL ; d3 e6 ; 0xc1c63 vgabios.c:1304 + mov byte [bp-008h], 000h ; c6 46 f8 00 ; 0xc1c65 vgabios.c:1305 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1c69 + cmp al, byte [bp+004h] ; 3a 46 04 ; 0xc1c6c + jnc short 01c96h ; 73 25 ; 0xc1c6f + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc1c71 vgabios.c:1307 + xor ah, ah ; 30 e4 ; 0xc1c74 + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc1c76 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1c79 + mul si ; f7 e6 ; 0xc1c7c + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc1c7e + add di, ax ; 01 c7 ; 0xc1c81 + mov cx, bx ; 89 d9 ; 0xc1c83 + mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xc1c85 + mov dx, 0a000h ; ba 00 a0 ; 0xc1c88 + mov es, dx ; 8e c2 ; 0xc1c8b + jcxz 01c91h ; e3 02 ; 0xc1c8d + rep stosb ; f3 aa ; 0xc1c8f + inc byte [bp-008h] ; fe 46 f8 ; 0xc1c91 vgabios.c:1308 + jmp short 01c69h ; eb d3 ; 0xc1c94 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc1c96 vgabios.c:1309 + pop di ; 5f ; 0xc1c99 + pop si ; 5e ; 0xc1c9a + pop bp ; 5d ; 0xc1c9b + retn 00004h ; c2 04 00 ; 0xc1c9c + ; disGetNextSymbol 0xc1c9f LB 0x28c5 -> off=0x0 cb=00000000000006a3 uValue=00000000000c1c9f 'biosfn_scroll' +biosfn_scroll: ; 0xc1c9f LB 0x6a3 + push bp ; 55 ; 0xc1c9f vgabios.c:1312 + mov bp, sp ; 89 e5 ; 0xc1ca0 + push si ; 56 ; 0xc1ca2 + push di ; 57 ; 0xc1ca3 + sub sp, strict byte 00020h ; 83 ec 20 ; 0xc1ca4 + mov byte [bp-006h], al ; 88 46 fa ; 0xc1ca7 + mov byte [bp-010h], dl ; 88 56 f0 ; 0xc1caa + mov byte [bp-00ch], bl ; 88 5e f4 ; 0xc1cad + mov byte [bp-008h], cl ; 88 4e f8 ; 0xc1cb0 + mov ch, byte [bp+006h] ; 8a 6e 06 ; 0xc1cb3 + cmp bl, byte [bp+004h] ; 3a 5e 04 ; 0xc1cb6 vgabios.c:1321 + jnbe short 01cd6h ; 77 1b ; 0xc1cb9 + cmp ch, cl ; 38 cd ; 0xc1cbb vgabios.c:1322 + jc short 01cd6h ; 72 17 ; 0xc1cbd + mov bx, strict word 00049h ; bb 49 00 ; 0xc1cbf vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1cc2 + mov es, ax ; 8e c0 ; 0xc1cc5 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1cc7 + xor ah, ah ; 30 e4 ; 0xc1cca vgabios.c:1326 + call 03888h ; e8 b9 1b ; 0xc1ccc + mov byte [bp-012h], al ; 88 46 ee ; 0xc1ccf + cmp AL, strict byte 0ffh ; 3c ff ; 0xc1cd2 vgabios.c:1327 + jne short 01cd9h ; 75 03 ; 0xc1cd4 + jmp near 02339h ; e9 60 06 ; 0xc1cd6 + mov bx, 00084h ; bb 84 00 ; 0xc1cd9 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc1cdc + mov es, ax ; 8e c0 ; 0xc1cdf + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1ce1 + xor ah, ah ; 30 e4 ; 0xc1ce4 vgabios.c:48 + inc ax ; 40 ; 0xc1ce6 + mov word [bp-024h], ax ; 89 46 dc ; 0xc1ce7 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc1cea vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc1ced + mov word [bp-018h], ax ; 89 46 e8 ; 0xc1cf0 vgabios.c:58 + cmp byte [bp+008h], 0ffh ; 80 7e 08 ff ; 0xc1cf3 vgabios.c:1334 + jne short 01d02h ; 75 09 ; 0xc1cf7 + mov bx, strict word 00062h ; bb 62 00 ; 0xc1cf9 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc1cfc + mov byte [bp+008h], al ; 88 46 08 ; 0xc1cff vgabios.c:48 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1d02 vgabios.c:1337 + xor ah, ah ; 30 e4 ; 0xc1d05 + cmp ax, word [bp-024h] ; 3b 46 dc ; 0xc1d07 + jc short 01d14h ; 72 08 ; 0xc1d0a + mov al, byte [bp-024h] ; 8a 46 dc ; 0xc1d0c + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc1d0f + mov byte [bp+004h], al ; 88 46 04 ; 0xc1d11 + mov al, ch ; 88 e8 ; 0xc1d14 vgabios.c:1338 + xor ah, ah ; 30 e4 ; 0xc1d16 + cmp ax, word [bp-018h] ; 3b 46 e8 ; 0xc1d18 + jc short 01d22h ; 72 05 ; 0xc1d1b + mov ch, byte [bp-018h] ; 8a 6e e8 ; 0xc1d1d + db 0feh, 0cdh + ; dec ch ; fe cd ; 0xc1d20 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1d22 vgabios.c:1339 + xor ah, ah ; 30 e4 ; 0xc1d25 + cmp ax, word [bp-024h] ; 3b 46 dc ; 0xc1d27 + jbe short 01d2fh ; 76 03 ; 0xc1d2a + mov byte [bp-006h], ah ; 88 66 fa ; 0xc1d2c + mov al, ch ; 88 e8 ; 0xc1d2f vgabios.c:1340 + sub al, byte [bp-008h] ; 2a 46 f8 ; 0xc1d31 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc1d34 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc1d36 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc1d39 vgabios.c:1342 + mov byte [bp-01eh], al ; 88 46 e2 ; 0xc1d3c + mov byte [bp-01dh], 000h ; c6 46 e3 00 ; 0xc1d3f + mov CL, strict byte 003h ; b1 03 ; 0xc1d43 + mov bx, word [bp-01eh] ; 8b 5e e2 ; 0xc1d45 + sal bx, CL ; d3 e3 ; 0xc1d48 + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc1d4a + dec ax ; 48 ; 0xc1d4d + mov word [bp-020h], ax ; 89 46 e0 ; 0xc1d4e + mov ax, word [bp-024h] ; 8b 46 dc ; 0xc1d51 + dec ax ; 48 ; 0xc1d54 + mov word [bp-022h], ax ; 89 46 de ; 0xc1d55 + mov ax, word [bp-018h] ; 8b 46 e8 ; 0xc1d58 + mul word [bp-024h] ; f7 66 dc ; 0xc1d5b + mov di, ax ; 89 c7 ; 0xc1d5e + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc1d60 + jne short 01db1h ; 75 4a ; 0xc1d65 + sal ax, 1 ; d1 e0 ; 0xc1d67 vgabios.c:1345 + or AL, strict byte 0ffh ; 0c ff ; 0xc1d69 + mov dl, byte [bp+008h] ; 8a 56 08 ; 0xc1d6b + xor dh, dh ; 30 f6 ; 0xc1d6e + inc ax ; 40 ; 0xc1d70 + mul dx ; f7 e2 ; 0xc1d71 + mov word [bp-01ch], ax ; 89 46 e4 ; 0xc1d73 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1d76 vgabios.c:1350 + jne short 01db4h ; 75 38 ; 0xc1d7a + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1d7c + jne short 01db4h ; 75 32 ; 0xc1d80 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1d82 + jne short 01db4h ; 75 2c ; 0xc1d86 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1d88 + xor ah, ah ; 30 e4 ; 0xc1d8b + cmp ax, word [bp-022h] ; 3b 46 de ; 0xc1d8d + jne short 01db4h ; 75 22 ; 0xc1d90 + mov al, ch ; 88 e8 ; 0xc1d92 + cmp ax, word [bp-020h] ; 3b 46 e0 ; 0xc1d94 + jne short 01db4h ; 75 1b ; 0xc1d97 + mov ah, byte [bp-010h] ; 8a 66 f0 ; 0xc1d99 vgabios.c:1352 + xor al, ch ; 30 e8 ; 0xc1d9c + add ax, strict word 00020h ; 05 20 00 ; 0xc1d9e + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1da1 + mov cx, di ; 89 f9 ; 0xc1da5 + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1da7 + jcxz 01daeh ; e3 02 ; 0xc1daa + rep stosw ; f3 ab ; 0xc1dac + jmp near 02339h ; e9 88 05 ; 0xc1dae vgabios.c:1354 + jmp near 01f3eh ; e9 8a 01 ; 0xc1db1 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc1db4 vgabios.c:1356 + jne short 01e1fh ; 75 65 ; 0xc1db8 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1dba vgabios.c:1357 + xor ah, ah ; 30 e4 ; 0xc1dbd + mov word [bp-016h], ax ; 89 46 ea ; 0xc1dbf + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc1dc2 + xor dh, dh ; 30 f6 ; 0xc1dc5 + cmp dx, word [bp-016h] ; 3b 56 ea ; 0xc1dc7 + jc short 01e21h ; 72 55 ; 0xc1dca + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1dcc vgabios.c:1359 + xor ah, ah ; 30 e4 ; 0xc1dcf + add ax, word [bp-016h] ; 03 46 ea ; 0xc1dd1 + cmp ax, dx ; 39 d0 ; 0xc1dd4 + jnbe short 01ddeh ; 77 06 ; 0xc1dd6 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1dd8 + jne short 01e24h ; 75 46 ; 0xc1ddc + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1dde vgabios.c:1360 + mov byte [bp-01ah], al ; 88 46 e6 ; 0xc1de1 + xor al, al ; 30 c0 ; 0xc1de4 + mov byte [bp-019h], al ; 88 46 e7 ; 0xc1de6 + mov ah, byte [bp-010h] ; 8a 66 f0 ; 0xc1de9 + mov si, ax ; 89 c6 ; 0xc1dec + add si, strict byte 00020h ; 83 c6 20 ; 0xc1dee + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc1df1 + mul word [bp-018h] ; f7 66 e8 ; 0xc1df4 + mov dx, ax ; 89 c2 ; 0xc1df7 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1df9 + xor ah, ah ; 30 e4 ; 0xc1dfc + add ax, dx ; 01 d0 ; 0xc1dfe + sal ax, 1 ; d1 e0 ; 0xc1e00 + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1e02 + add di, ax ; 01 c7 ; 0xc1e05 + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1e07 + xor bh, bh ; 30 ff ; 0xc1e0a + mov CL, strict byte 003h ; b1 03 ; 0xc1e0c + sal bx, CL ; d3 e3 ; 0xc1e0e + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc1e10 + mov cx, word [bp-01ah] ; 8b 4e e6 ; 0xc1e14 + mov ax, si ; 89 f0 ; 0xc1e17 + jcxz 01e1dh ; e3 02 ; 0xc1e19 + rep stosw ; f3 ab ; 0xc1e1b + jmp short 01e6dh ; eb 4e ; 0xc1e1d vgabios.c:1361 + jmp short 01e73h ; eb 52 ; 0xc1e1f + jmp near 02339h ; e9 15 05 ; 0xc1e21 + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc1e24 vgabios.c:1362 + mov byte [bp-014h], dl ; 88 56 ec ; 0xc1e27 + mov byte [bp-013h], dh ; 88 76 ed ; 0xc1e2a + mul word [bp-018h] ; f7 66 e8 ; 0xc1e2d + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc1e30 + mov byte [bp-01ah], dl ; 88 56 e6 ; 0xc1e33 + mov byte [bp-019h], 000h ; c6 46 e7 00 ; 0xc1e36 + mov si, ax ; 89 c6 ; 0xc1e3a + add si, word [bp-01ah] ; 03 76 e6 ; 0xc1e3c + sal si, 1 ; d1 e6 ; 0xc1e3f + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1e41 + xor bh, bh ; 30 ff ; 0xc1e44 + mov CL, strict byte 003h ; b1 03 ; 0xc1e46 + sal bx, CL ; d3 e3 ; 0xc1e48 + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc1e4a + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc1e4e + mul word [bp-018h] ; f7 66 e8 ; 0xc1e51 + add ax, word [bp-01ah] ; 03 46 e6 ; 0xc1e54 + sal ax, 1 ; d1 e0 ; 0xc1e57 + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1e59 + add di, ax ; 01 c7 ; 0xc1e5c + mov cx, word [bp-014h] ; 8b 4e ec ; 0xc1e5e + mov dx, bx ; 89 da ; 0xc1e61 + mov es, bx ; 8e c3 ; 0xc1e63 + jcxz 01e6dh ; e3 06 ; 0xc1e65 + push DS ; 1e ; 0xc1e67 + mov ds, dx ; 8e da ; 0xc1e68 + rep movsw ; f3 a5 ; 0xc1e6a + pop DS ; 1f ; 0xc1e6c + inc word [bp-016h] ; ff 46 ea ; 0xc1e6d vgabios.c:1363 + jmp near 01dc2h ; e9 4f ff ; 0xc1e70 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1e73 vgabios.c:1366 + xor ah, ah ; 30 e4 ; 0xc1e76 + mov word [bp-016h], ax ; 89 46 ea ; 0xc1e78 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1e7b + xor ah, ah ; 30 e4 ; 0xc1e7e + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc1e80 + jnbe short 01e21h ; 77 9c ; 0xc1e83 + mov dl, al ; 88 c2 ; 0xc1e85 vgabios.c:1368 + xor dh, dh ; 30 f6 ; 0xc1e87 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1e89 + add ax, dx ; 01 d0 ; 0xc1e8c + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc1e8e + jnbe short 01e99h ; 77 06 ; 0xc1e91 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1e93 + jne short 01ed9h ; 75 40 ; 0xc1e97 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc1e99 vgabios.c:1369 + xor bh, bh ; 30 ff ; 0xc1e9c + mov ah, byte [bp-010h] ; 8a 66 f0 ; 0xc1e9e + xor al, al ; 30 c0 ; 0xc1ea1 + mov si, ax ; 89 c6 ; 0xc1ea3 + add si, strict byte 00020h ; 83 c6 20 ; 0xc1ea5 + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc1ea8 + mul word [bp-018h] ; f7 66 e8 ; 0xc1eab + mov dx, ax ; 89 c2 ; 0xc1eae + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc1eb0 + xor ah, ah ; 30 e4 ; 0xc1eb3 + add ax, dx ; 01 d0 ; 0xc1eb5 + sal ax, 1 ; d1 e0 ; 0xc1eb7 + mov dx, word [bp-01ch] ; 8b 56 e4 ; 0xc1eb9 + add dx, ax ; 01 c2 ; 0xc1ebc + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc1ebe + xor ah, ah ; 30 e4 ; 0xc1ec1 + mov CL, strict byte 003h ; b1 03 ; 0xc1ec3 + mov di, ax ; 89 c7 ; 0xc1ec5 + sal di, CL ; d3 e7 ; 0xc1ec7 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc1ec9 + mov cx, bx ; 89 d9 ; 0xc1ecd + mov ax, si ; 89 f0 ; 0xc1ecf + mov di, dx ; 89 d7 ; 0xc1ed1 + jcxz 01ed7h ; e3 02 ; 0xc1ed3 + rep stosw ; f3 ab ; 0xc1ed5 + jmp short 01f2eh ; eb 55 ; 0xc1ed7 vgabios.c:1370 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc1ed9 vgabios.c:1371 + mov byte [bp-01ah], al ; 88 46 e6 ; 0xc1edc + mov byte [bp-019h], dh ; 88 76 e7 ; 0xc1edf + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc1ee2 + xor ah, ah ; 30 e4 ; 0xc1ee5 + mov dx, word [bp-016h] ; 8b 56 ea ; 0xc1ee7 + sub dx, ax ; 29 c2 ; 0xc1eea + mov ax, dx ; 89 d0 ; 0xc1eec + mul word [bp-018h] ; f7 66 e8 ; 0xc1eee + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc1ef1 + mov byte [bp-014h], dl ; 88 56 ec ; 0xc1ef4 + mov byte [bp-013h], 000h ; c6 46 ed 00 ; 0xc1ef7 + mov si, ax ; 89 c6 ; 0xc1efb + add si, word [bp-014h] ; 03 76 ec ; 0xc1efd + sal si, 1 ; d1 e6 ; 0xc1f00 + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1f02 + xor bh, bh ; 30 ff ; 0xc1f05 + mov CL, strict byte 003h ; b1 03 ; 0xc1f07 + sal bx, CL ; d3 e3 ; 0xc1f09 + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc1f0b + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc1f0f + mul word [bp-018h] ; f7 66 e8 ; 0xc1f12 + add ax, word [bp-014h] ; 03 46 ec ; 0xc1f15 + sal ax, 1 ; d1 e0 ; 0xc1f18 + mov di, word [bp-01ch] ; 8b 7e e4 ; 0xc1f1a + add di, ax ; 01 c7 ; 0xc1f1d + mov cx, word [bp-01ah] ; 8b 4e e6 ; 0xc1f1f + mov dx, bx ; 89 da ; 0xc1f22 + mov es, bx ; 8e c3 ; 0xc1f24 + jcxz 01f2eh ; e3 06 ; 0xc1f26 + push DS ; 1e ; 0xc1f28 + mov ds, dx ; 8e da ; 0xc1f29 + rep movsw ; f3 a5 ; 0xc1f2b + pop DS ; 1f ; 0xc1f2d + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1f2e vgabios.c:1372 + xor ah, ah ; 30 e4 ; 0xc1f31 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc1f33 + jc short 01f6ch ; 72 34 ; 0xc1f36 + dec word [bp-016h] ; ff 4e ea ; 0xc1f38 vgabios.c:1373 + jmp near 01e7bh ; e9 3d ff ; 0xc1f3b + mov si, word [bp-01eh] ; 8b 76 e2 ; 0xc1f3e vgabios.c:1379 + mov al, byte [si+0482fh] ; 8a 84 2f 48 ; 0xc1f41 + xor ah, ah ; 30 e4 ; 0xc1f45 + mov CL, strict byte 006h ; b1 06 ; 0xc1f47 + mov si, ax ; 89 c6 ; 0xc1f49 + sal si, CL ; d3 e6 ; 0xc1f4b + mov al, byte [si+04845h] ; 8a 84 45 48 ; 0xc1f4d + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc1f51 + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc1f54 vgabios.c:1380 + cmp AL, strict byte 003h ; 3c 03 ; 0xc1f58 + jc short 01f68h ; 72 0c ; 0xc1f5a + jbe short 01f6fh ; 76 11 ; 0xc1f5c + cmp AL, strict byte 005h ; 3c 05 ; 0xc1f5e + je short 01f9ch ; 74 3a ; 0xc1f60 + cmp AL, strict byte 004h ; 3c 04 ; 0xc1f62 + je short 01f6fh ; 74 09 ; 0xc1f64 + jmp short 01f6ch ; eb 04 ; 0xc1f66 + cmp AL, strict byte 002h ; 3c 02 ; 0xc1f68 + je short 01f9fh ; 74 33 ; 0xc1f6a + jmp near 02339h ; e9 ca 03 ; 0xc1f6c + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc1f6f vgabios.c:1384 + jne short 01f9ah ; 75 25 ; 0xc1f73 + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc1f75 + jne short 01fddh ; 75 62 ; 0xc1f79 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc1f7b + jne short 01fddh ; 75 5c ; 0xc1f7f + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1f81 + xor ah, ah ; 30 e4 ; 0xc1f84 + mov dx, word [bp-024h] ; 8b 56 dc ; 0xc1f86 + dec dx ; 4a ; 0xc1f89 + cmp ax, dx ; 39 d0 ; 0xc1f8a + jne short 01fddh ; 75 4f ; 0xc1f8c + mov al, ch ; 88 e8 ; 0xc1f8e + xor ah, dh ; 30 f4 ; 0xc1f90 + mov dx, word [bp-018h] ; 8b 56 e8 ; 0xc1f92 + dec dx ; 4a ; 0xc1f95 + cmp ax, dx ; 39 d0 ; 0xc1f96 + je short 01fa2h ; 74 08 ; 0xc1f98 + jmp short 01fddh ; eb 41 ; 0xc1f9a + jmp near 0221dh ; e9 7e 02 ; 0xc1f9c + jmp near 020c9h ; e9 27 01 ; 0xc1f9f + mov ax, 00205h ; b8 05 02 ; 0xc1fa2 vgabios.c:1386 + mov dx, 003ceh ; ba ce 03 ; 0xc1fa5 + out DX, ax ; ef ; 0xc1fa8 + mov ax, word [bp-024h] ; 8b 46 dc ; 0xc1fa9 vgabios.c:1387 + mul word [bp-018h] ; f7 66 e8 ; 0xc1fac + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc1faf + xor dh, dh ; 30 f6 ; 0xc1fb2 + mul dx ; f7 e2 ; 0xc1fb4 + mov dx, ax ; 89 c2 ; 0xc1fb6 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc1fb8 + xor ah, ah ; 30 e4 ; 0xc1fbb + mov bl, byte [bp-012h] ; 8a 5e ee ; 0xc1fbd + xor bh, bh ; 30 ff ; 0xc1fc0 + mov CL, strict byte 003h ; b1 03 ; 0xc1fc2 + sal bx, CL ; d3 e3 ; 0xc1fc4 + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc1fc6 + mov cx, dx ; 89 d1 ; 0xc1fca + xor di, di ; 31 ff ; 0xc1fcc + mov es, bx ; 8e c3 ; 0xc1fce + jcxz 01fd4h ; e3 02 ; 0xc1fd0 + rep stosb ; f3 aa ; 0xc1fd2 + mov ax, strict word 00005h ; b8 05 00 ; 0xc1fd4 vgabios.c:1388 + mov dx, 003ceh ; ba ce 03 ; 0xc1fd7 + out DX, ax ; ef ; 0xc1fda + jmp short 01f6ch ; eb 8f ; 0xc1fdb vgabios.c:1390 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc1fdd vgabios.c:1392 + jne short 0204fh ; 75 6c ; 0xc1fe1 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc1fe3 vgabios.c:1393 + xor ah, ah ; 30 e4 ; 0xc1fe6 + mov word [bp-016h], ax ; 89 46 ea ; 0xc1fe8 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc1feb + xor ah, ah ; 30 e4 ; 0xc1fee + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc1ff0 + jc short 0204ch ; 72 57 ; 0xc1ff3 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc1ff5 vgabios.c:1395 + xor dh, dh ; 30 f6 ; 0xc1ff8 + add dx, word [bp-016h] ; 03 56 ea ; 0xc1ffa + cmp dx, ax ; 39 c2 ; 0xc1ffd + jnbe short 02007h ; 77 06 ; 0xc1fff + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc2001 + jne short 02028h ; 75 21 ; 0xc2005 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2007 vgabios.c:1396 + xor ah, ah ; 30 e4 ; 0xc200a + push ax ; 50 ; 0xc200c + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc200d + push ax ; 50 ; 0xc2010 + mov cl, byte [bp-018h] ; 8a 4e e8 ; 0xc2011 + xor ch, ch ; 30 ed ; 0xc2014 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc2016 + xor bh, bh ; 30 ff ; 0xc2019 + mov dl, byte [bp-016h] ; 8a 56 ea ; 0xc201b + xor dh, dh ; 30 f6 ; 0xc201e + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2020 + call 019ebh ; e8 c5 f9 ; 0xc2023 + jmp short 02047h ; eb 1f ; 0xc2026 vgabios.c:1397 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2028 vgabios.c:1398 + push ax ; 50 ; 0xc202b + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc202c + push ax ; 50 ; 0xc202f + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc2030 + xor ch, ch ; 30 ed ; 0xc2033 + mov bl, byte [bp-016h] ; 8a 5e ea ; 0xc2035 + xor bh, bh ; 30 ff ; 0xc2038 + mov dl, bl ; 88 da ; 0xc203a + add dl, byte [bp-006h] ; 02 56 fa ; 0xc203c + xor dh, dh ; 30 f6 ; 0xc203f + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2041 + call 0195dh ; e8 16 f9 ; 0xc2044 + inc word [bp-016h] ; ff 46 ea ; 0xc2047 vgabios.c:1399 + jmp short 01febh ; eb 9f ; 0xc204a + jmp near 02339h ; e9 ea 02 ; 0xc204c + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc204f vgabios.c:1402 + xor ah, ah ; 30 e4 ; 0xc2052 + mov word [bp-016h], ax ; 89 46 ea ; 0xc2054 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2057 + xor ah, ah ; 30 e4 ; 0xc205a + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc205c + jnbe short 0204ch ; 77 eb ; 0xc205f + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc2061 vgabios.c:1404 + xor dh, dh ; 30 f6 ; 0xc2064 + add ax, dx ; 01 d0 ; 0xc2066 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc2068 + jnbe short 02071h ; 77 04 ; 0xc206b + test dl, dl ; 84 d2 ; 0xc206d + jne short 02092h ; 75 21 ; 0xc206f + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2071 vgabios.c:1405 + xor ah, ah ; 30 e4 ; 0xc2074 + push ax ; 50 ; 0xc2076 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2077 + push ax ; 50 ; 0xc207a + mov cl, byte [bp-018h] ; 8a 4e e8 ; 0xc207b + xor ch, ch ; 30 ed ; 0xc207e + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc2080 + xor bh, bh ; 30 ff ; 0xc2083 + mov dl, byte [bp-016h] ; 8a 56 ea ; 0xc2085 + xor dh, dh ; 30 f6 ; 0xc2088 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc208a + call 019ebh ; e8 5b f9 ; 0xc208d + jmp short 020bah ; eb 28 ; 0xc2090 vgabios.c:1406 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2092 vgabios.c:1407 + xor ah, ah ; 30 e4 ; 0xc2095 + push ax ; 50 ; 0xc2097 + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc2098 + push ax ; 50 ; 0xc209b + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc209c + xor ch, ch ; 30 ed ; 0xc209f + mov bl, byte [bp-016h] ; 8a 5e ea ; 0xc20a1 + xor bh, bh ; 30 ff ; 0xc20a4 + mov dl, bl ; 88 da ; 0xc20a6 + sub dl, byte [bp-006h] ; 2a 56 fa ; 0xc20a8 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc20ab + mov byte [bp-01ah], al ; 88 46 e6 ; 0xc20ae + mov byte [bp-019h], dh ; 88 76 e7 ; 0xc20b1 + mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xc20b4 + call 0195dh ; e8 a3 f8 ; 0xc20b7 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc20ba vgabios.c:1408 + xor ah, ah ; 30 e4 ; 0xc20bd + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc20bf + jc short 02112h ; 72 4e ; 0xc20c2 + dec word [bp-016h] ; ff 4e ea ; 0xc20c4 vgabios.c:1409 + jmp short 02057h ; eb 8e ; 0xc20c7 + mov cl, byte [bx+047b2h] ; 8a 8f b2 47 ; 0xc20c9 vgabios.c:1414 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc20cd vgabios.c:1415 + jne short 02115h ; 75 42 ; 0xc20d1 + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc20d3 + jne short 02115h ; 75 3c ; 0xc20d7 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc20d9 + jne short 02115h ; 75 36 ; 0xc20dd + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc20df + cmp ax, word [bp-022h] ; 3b 46 de ; 0xc20e2 + jne short 02115h ; 75 2e ; 0xc20e5 + mov al, ch ; 88 e8 ; 0xc20e7 + cmp ax, word [bp-020h] ; 3b 46 e0 ; 0xc20e9 + jne short 02115h ; 75 27 ; 0xc20ec + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc20ee vgabios.c:1417 + xor dh, dh ; 30 f6 ; 0xc20f1 + mov ax, di ; 89 f8 ; 0xc20f3 + mul dx ; f7 e2 ; 0xc20f5 + mov dl, cl ; 88 ca ; 0xc20f7 + xor dh, dh ; 30 f6 ; 0xc20f9 + mul dx ; f7 e2 ; 0xc20fb + mov dl, byte [bp-010h] ; 8a 56 f0 ; 0xc20fd + xor dh, dh ; 30 f6 ; 0xc2100 + mov bx, word [bx+047b3h] ; 8b 9f b3 47 ; 0xc2102 + mov cx, ax ; 89 c1 ; 0xc2106 + mov ax, dx ; 89 d0 ; 0xc2108 + xor di, di ; 31 ff ; 0xc210a + mov es, bx ; 8e c3 ; 0xc210c + jcxz 02112h ; e3 02 ; 0xc210e + rep stosb ; f3 aa ; 0xc2110 + jmp near 02339h ; e9 24 02 ; 0xc2112 vgabios.c:1419 + cmp cl, 002h ; 80 f9 02 ; 0xc2115 vgabios.c:1421 + jne short 02123h ; 75 09 ; 0xc2118 + sal byte [bp-008h], 1 ; d0 66 f8 ; 0xc211a vgabios.c:1423 + sal byte [bp-00ah], 1 ; d0 66 f6 ; 0xc211d vgabios.c:1424 + sal word [bp-018h], 1 ; d1 66 e8 ; 0xc2120 vgabios.c:1425 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc2123 vgabios.c:1428 + jne short 02192h ; 75 69 ; 0xc2127 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2129 vgabios.c:1429 + xor ah, ah ; 30 e4 ; 0xc212c + mov word [bp-016h], ax ; 89 46 ea ; 0xc212e + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc2131 + xor ah, ah ; 30 e4 ; 0xc2134 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc2136 + jc short 02112h ; 72 d7 ; 0xc2139 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc213b vgabios.c:1431 + xor dh, dh ; 30 f6 ; 0xc213e + add dx, word [bp-016h] ; 03 56 ea ; 0xc2140 + cmp dx, ax ; 39 c2 ; 0xc2143 + jnbe short 0214dh ; 77 06 ; 0xc2145 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc2147 + jne short 0216eh ; 75 21 ; 0xc214b + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc214d vgabios.c:1432 + xor ah, ah ; 30 e4 ; 0xc2150 + push ax ; 50 ; 0xc2152 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2153 + push ax ; 50 ; 0xc2156 + mov cl, byte [bp-018h] ; 8a 4e e8 ; 0xc2157 + xor ch, ch ; 30 ed ; 0xc215a + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc215c + xor bh, bh ; 30 ff ; 0xc215f + mov dl, byte [bp-016h] ; 8a 56 ea ; 0xc2161 + xor dh, dh ; 30 f6 ; 0xc2164 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2166 + call 01b1ch ; e8 b0 f9 ; 0xc2169 + jmp short 0218dh ; eb 1f ; 0xc216c vgabios.c:1433 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc216e vgabios.c:1434 + push ax ; 50 ; 0xc2171 + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc2172 + push ax ; 50 ; 0xc2175 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc2176 + xor ch, ch ; 30 ed ; 0xc2179 + mov bl, byte [bp-016h] ; 8a 5e ea ; 0xc217b + xor bh, bh ; 30 ff ; 0xc217e + mov dl, bl ; 88 da ; 0xc2180 + add dl, byte [bp-006h] ; 02 56 fa ; 0xc2182 + xor dh, dh ; 30 f6 ; 0xc2185 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2187 + call 01a66h ; e8 d9 f8 ; 0xc218a + inc word [bp-016h] ; ff 46 ea ; 0xc218d vgabios.c:1435 + jmp short 02131h ; eb 9f ; 0xc2190 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc2192 vgabios.c:1438 + xor ah, ah ; 30 e4 ; 0xc2195 + mov word [bp-016h], ax ; 89 46 ea ; 0xc2197 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc219a + xor ah, ah ; 30 e4 ; 0xc219d + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc219f + jnbe short 021e2h ; 77 3e ; 0xc21a2 + mov dl, al ; 88 c2 ; 0xc21a4 vgabios.c:1440 + xor dh, dh ; 30 f6 ; 0xc21a6 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc21a8 + add ax, dx ; 01 d0 ; 0xc21ab + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc21ad + jnbe short 021b8h ; 77 06 ; 0xc21b0 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc21b2 + jne short 021e5h ; 75 2d ; 0xc21b6 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc21b8 vgabios.c:1441 + xor ah, ah ; 30 e4 ; 0xc21bb + push ax ; 50 ; 0xc21bd + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc21be + push ax ; 50 ; 0xc21c1 + mov cl, byte [bp-018h] ; 8a 4e e8 ; 0xc21c2 + xor ch, ch ; 30 ed ; 0xc21c5 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc21c7 + xor bh, bh ; 30 ff ; 0xc21ca + mov dl, byte [bp-016h] ; 8a 56 ea ; 0xc21cc + xor dh, dh ; 30 f6 ; 0xc21cf + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc21d1 + mov byte [bp-014h], al ; 88 46 ec ; 0xc21d4 + mov byte [bp-013h], ah ; 88 66 ed ; 0xc21d7 + mov ax, word [bp-014h] ; 8b 46 ec ; 0xc21da + call 01b1ch ; e8 3c f9 ; 0xc21dd + jmp short 0220dh ; eb 2b ; 0xc21e0 vgabios.c:1442 + jmp near 02339h ; e9 54 01 ; 0xc21e2 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc21e5 vgabios.c:1443 + xor ah, ah ; 30 e4 ; 0xc21e8 + push ax ; 50 ; 0xc21ea + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc21eb + push ax ; 50 ; 0xc21ee + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc21ef + xor ch, ch ; 30 ed ; 0xc21f2 + mov bl, byte [bp-016h] ; 8a 5e ea ; 0xc21f4 + xor bh, bh ; 30 ff ; 0xc21f7 + mov dl, bl ; 88 da ; 0xc21f9 + sub dl, byte [bp-006h] ; 2a 56 fa ; 0xc21fb + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc21fe + mov byte [bp-014h], al ; 88 46 ec ; 0xc2201 + mov byte [bp-013h], dh ; 88 76 ed ; 0xc2204 + mov ax, word [bp-014h] ; 8b 46 ec ; 0xc2207 + call 01a66h ; e8 59 f8 ; 0xc220a + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc220d vgabios.c:1444 + xor ah, ah ; 30 e4 ; 0xc2210 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc2212 + jc short 0225ch ; 72 45 ; 0xc2215 + dec word [bp-016h] ; ff 4e ea ; 0xc2217 vgabios.c:1445 + jmp near 0219ah ; e9 7d ff ; 0xc221a + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc221d vgabios.c:1450 + jne short 0225fh ; 75 3c ; 0xc2221 + cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xc2223 + jne short 0225fh ; 75 36 ; 0xc2227 + cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xc2229 + jne short 0225fh ; 75 30 ; 0xc222d + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc222f + cmp ax, word [bp-022h] ; 3b 46 de ; 0xc2232 + jne short 0225fh ; 75 28 ; 0xc2235 + mov al, ch ; 88 e8 ; 0xc2237 + cmp ax, word [bp-020h] ; 3b 46 e0 ; 0xc2239 + jne short 0225fh ; 75 21 ; 0xc223c + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc223e vgabios.c:1452 + xor dh, dh ; 30 f6 ; 0xc2241 + mov ax, di ; 89 f8 ; 0xc2243 + mul dx ; f7 e2 ; 0xc2245 + mov CL, strict byte 003h ; b1 03 ; 0xc2247 + sal ax, CL ; d3 e0 ; 0xc2249 + mov cx, ax ; 89 c1 ; 0xc224b + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc224d + xor ah, ah ; 30 e4 ; 0xc2250 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2252 + xor di, di ; 31 ff ; 0xc2256 + jcxz 0225ch ; e3 02 ; 0xc2258 + rep stosb ; f3 aa ; 0xc225a + jmp near 02339h ; e9 da 00 ; 0xc225c vgabios.c:1454 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc225f vgabios.c:1457 + jne short 022cbh ; 75 66 ; 0xc2263 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2265 vgabios.c:1458 + xor ah, ah ; 30 e4 ; 0xc2268 + mov word [bp-016h], ax ; 89 46 ea ; 0xc226a + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc226d + xor ah, ah ; 30 e4 ; 0xc2270 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc2272 + jc short 0225ch ; 72 e5 ; 0xc2275 + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc2277 vgabios.c:1460 + xor dh, dh ; 30 f6 ; 0xc227a + add dx, word [bp-016h] ; 03 56 ea ; 0xc227c + cmp dx, ax ; 39 c2 ; 0xc227f + jnbe short 02289h ; 77 06 ; 0xc2281 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc2283 + jne short 022a8h ; 75 1f ; 0xc2287 + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc2289 vgabios.c:1461 + xor ah, ah ; 30 e4 ; 0xc228c + push ax ; 50 ; 0xc228e + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc228f + push ax ; 50 ; 0xc2292 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc2293 + xor bh, bh ; 30 ff ; 0xc2296 + mov dl, byte [bp-016h] ; 8a 56 ea ; 0xc2298 + xor dh, dh ; 30 f6 ; 0xc229b + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc229d + mov cx, word [bp-018h] ; 8b 4e e8 ; 0xc22a0 + call 01c33h ; e8 8d f9 ; 0xc22a3 + jmp short 022c6h ; eb 1e ; 0xc22a6 vgabios.c:1462 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc22a8 vgabios.c:1463 + push ax ; 50 ; 0xc22ab + push word [bp-018h] ; ff 76 e8 ; 0xc22ac + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc22af + xor ch, ch ; 30 ed ; 0xc22b2 + mov bl, byte [bp-016h] ; 8a 5e ea ; 0xc22b4 + xor bh, bh ; 30 ff ; 0xc22b7 + mov dl, bl ; 88 da ; 0xc22b9 + add dl, byte [bp-006h] ; 02 56 fa ; 0xc22bb + xor dh, dh ; 30 f6 ; 0xc22be + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc22c0 + call 01bb0h ; e8 ea f8 ; 0xc22c3 + inc word [bp-016h] ; ff 46 ea ; 0xc22c6 vgabios.c:1464 + jmp short 0226dh ; eb a2 ; 0xc22c9 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc22cb vgabios.c:1467 + xor ah, ah ; 30 e4 ; 0xc22ce + mov word [bp-016h], ax ; 89 46 ea ; 0xc22d0 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc22d3 + xor ah, ah ; 30 e4 ; 0xc22d6 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc22d8 + jnbe short 02339h ; 77 5c ; 0xc22db + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc22dd vgabios.c:1469 + xor dh, dh ; 30 f6 ; 0xc22e0 + add ax, dx ; 01 d0 ; 0xc22e2 + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc22e4 + jnbe short 022edh ; 77 04 ; 0xc22e7 + test dl, dl ; 84 d2 ; 0xc22e9 + jne short 0230ch ; 75 1f ; 0xc22eb + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc22ed vgabios.c:1470 + xor ah, ah ; 30 e4 ; 0xc22f0 + push ax ; 50 ; 0xc22f2 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc22f3 + push ax ; 50 ; 0xc22f6 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc22f7 + xor bh, bh ; 30 ff ; 0xc22fa + mov dl, byte [bp-016h] ; 8a 56 ea ; 0xc22fc + xor dh, dh ; 30 f6 ; 0xc22ff + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2301 + mov cx, word [bp-018h] ; 8b 4e e8 ; 0xc2304 + call 01c33h ; e8 29 f9 ; 0xc2307 + jmp short 0232ah ; eb 1e ; 0xc230a vgabios.c:1471 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc230c vgabios.c:1472 + xor ah, ah ; 30 e4 ; 0xc230f + push ax ; 50 ; 0xc2311 + push word [bp-018h] ; ff 76 e8 ; 0xc2312 + mov cl, byte [bp-00ah] ; 8a 4e f6 ; 0xc2315 + xor ch, ch ; 30 ed ; 0xc2318 + mov bl, byte [bp-016h] ; 8a 5e ea ; 0xc231a + xor bh, bh ; 30 ff ; 0xc231d + mov dl, bl ; 88 da ; 0xc231f + sub dl, byte [bp-006h] ; 2a 56 fa ; 0xc2321 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2324 + call 01bb0h ; e8 86 f8 ; 0xc2327 + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc232a vgabios.c:1473 + xor ah, ah ; 30 e4 ; 0xc232d + cmp ax, word [bp-016h] ; 3b 46 ea ; 0xc232f + jc short 02339h ; 72 05 ; 0xc2332 + dec word [bp-016h] ; ff 4e ea ; 0xc2334 vgabios.c:1474 + jmp short 022d3h ; eb 9a ; 0xc2337 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2339 vgabios.c:1485 + pop di ; 5f ; 0xc233c + pop si ; 5e ; 0xc233d + pop bp ; 5d ; 0xc233e + retn 00008h ; c2 08 00 ; 0xc233f + ; disGetNextSymbol 0xc2342 LB 0x2222 -> off=0x0 cb=0000000000000112 uValue=00000000000c2342 'write_gfx_char_pl4' +write_gfx_char_pl4: ; 0xc2342 LB 0x112 + push bp ; 55 ; 0xc2342 vgabios.c:1488 + mov bp, sp ; 89 e5 ; 0xc2343 + push si ; 56 ; 0xc2345 + push di ; 57 ; 0xc2346 + sub sp, strict byte 00010h ; 83 ec 10 ; 0xc2347 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc234a + mov byte [bp-00ah], dl ; 88 56 f6 ; 0xc234d + mov byte [bp-006h], bl ; 88 5e fa ; 0xc2350 + mov al, cl ; 88 c8 ; 0xc2353 + mov bx, 0010ch ; bb 0c 01 ; 0xc2355 vgabios.c:67 + xor cx, cx ; 31 c9 ; 0xc2358 + mov es, cx ; 8e c1 ; 0xc235a + mov cx, word [es:bx] ; 26 8b 0f ; 0xc235c + mov bx, word [es:bx+002h] ; 26 8b 5f 02 ; 0xc235f + mov word [bp-014h], cx ; 89 4e ec ; 0xc2363 vgabios.c:68 + mov word [bp-010h], bx ; 89 5e f0 ; 0xc2366 + xor ah, ah ; 30 e4 ; 0xc2369 vgabios.c:1497 + mov cl, byte [bp+006h] ; 8a 4e 06 ; 0xc236b + xor ch, ch ; 30 ed ; 0xc236e + imul cx ; f7 e9 ; 0xc2370 + mov bl, byte [bp+004h] ; 8a 5e 04 ; 0xc2372 + xor bh, bh ; 30 ff ; 0xc2375 + imul bx ; f7 eb ; 0xc2377 + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc2379 + mov si, bx ; 89 de ; 0xc237c + add si, ax ; 01 c6 ; 0xc237e + mov bx, strict word 0004ch ; bb 4c 00 ; 0xc2380 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2383 + mov es, ax ; 8e c0 ; 0xc2386 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc2388 + mov bl, byte [bp+008h] ; 8a 5e 08 ; 0xc238b vgabios.c:58 + xor bh, bh ; 30 ff ; 0xc238e + mul bx ; f7 e3 ; 0xc2390 + add si, ax ; 01 c6 ; 0xc2392 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2394 vgabios.c:1499 + xor ah, ah ; 30 e4 ; 0xc2397 + imul cx ; f7 e9 ; 0xc2399 + mov word [bp-012h], ax ; 89 46 ee ; 0xc239b + mov ax, 00f02h ; b8 02 0f ; 0xc239e vgabios.c:1500 + mov dx, 003c4h ; ba c4 03 ; 0xc23a1 + out DX, ax ; ef ; 0xc23a4 + mov ax, 00205h ; b8 05 02 ; 0xc23a5 vgabios.c:1501 + mov dx, 003ceh ; ba ce 03 ; 0xc23a8 + out DX, ax ; ef ; 0xc23ab + test byte [bp-00ah], 080h ; f6 46 f6 80 ; 0xc23ac vgabios.c:1502 + je short 023b8h ; 74 06 ; 0xc23b0 + mov ax, 01803h ; b8 03 18 ; 0xc23b2 vgabios.c:1504 + out DX, ax ; ef ; 0xc23b5 + jmp short 023bch ; eb 04 ; 0xc23b6 vgabios.c:1506 + mov ax, strict word 00003h ; b8 03 00 ; 0xc23b8 vgabios.c:1508 + out DX, ax ; ef ; 0xc23bb + xor ch, ch ; 30 ed ; 0xc23bc vgabios.c:1510 + cmp ch, byte [bp+006h] ; 3a 6e 06 ; 0xc23be + jnc short 023d8h ; 73 15 ; 0xc23c1 + mov al, ch ; 88 e8 ; 0xc23c3 vgabios.c:1512 + xor ah, ah ; 30 e4 ; 0xc23c5 + mov bl, byte [bp+004h] ; 8a 5e 04 ; 0xc23c7 + xor bh, bh ; 30 ff ; 0xc23ca + imul bx ; f7 eb ; 0xc23cc + mov bx, si ; 89 f3 ; 0xc23ce + add bx, ax ; 01 c3 ; 0xc23d0 + mov byte [bp-008h], 000h ; c6 46 f8 00 ; 0xc23d2 vgabios.c:1513 + jmp short 023ech ; eb 14 ; 0xc23d6 + jmp short 0243ch ; eb 62 ; 0xc23d8 vgabios.c:1522 + mov ax, 0a000h ; b8 00 a0 ; 0xc23da vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc23dd + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc23df + inc byte [bp-008h] ; fe 46 f8 ; 0xc23e3 vgabios.c:1526 + cmp byte [bp-008h], 008h ; 80 7e f8 08 ; 0xc23e6 + jnc short 02438h ; 73 4c ; 0xc23ea + mov cl, byte [bp-008h] ; 8a 4e f8 ; 0xc23ec + mov ax, 00080h ; b8 80 00 ; 0xc23ef + sar ax, CL ; d3 f8 ; 0xc23f2 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc23f4 + mov byte [bp-00dh], 000h ; c6 46 f3 00 ; 0xc23f7 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc23fb + mov ah, al ; 88 c4 ; 0xc23fe + xor al, al ; 30 c0 ; 0xc2400 + or AL, strict byte 008h ; 0c 08 ; 0xc2402 + mov dx, 003ceh ; ba ce 03 ; 0xc2404 + out DX, ax ; ef ; 0xc2407 + mov dx, bx ; 89 da ; 0xc2408 + mov ax, 0a000h ; b8 00 a0 ; 0xc240a + call 038b3h ; e8 a3 14 ; 0xc240d + mov al, ch ; 88 e8 ; 0xc2410 + xor ah, ah ; 30 e4 ; 0xc2412 + add ax, word [bp-012h] ; 03 46 ee ; 0xc2414 + mov es, [bp-010h] ; 8e 46 f0 ; 0xc2417 + mov di, word [bp-014h] ; 8b 7e ec ; 0xc241a + add di, ax ; 01 c7 ; 0xc241d + mov al, byte [es:di] ; 26 8a 05 ; 0xc241f + xor ah, ah ; 30 e4 ; 0xc2422 + test word [bp-00eh], ax ; 85 46 f2 ; 0xc2424 + je short 023dah ; 74 b1 ; 0xc2427 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2429 + and AL, strict byte 00fh ; 24 0f ; 0xc242c + mov di, 0a000h ; bf 00 a0 ; 0xc242e + mov es, di ; 8e c7 ; 0xc2431 + mov byte [es:bx], al ; 26 88 07 ; 0xc2433 + jmp short 023e3h ; eb ab ; 0xc2436 + db 0feh, 0c5h + ; inc ch ; fe c5 ; 0xc2438 vgabios.c:1527 + jmp short 023beh ; eb 82 ; 0xc243a + mov ax, 0ff08h ; b8 08 ff ; 0xc243c vgabios.c:1528 + mov dx, 003ceh ; ba ce 03 ; 0xc243f + out DX, ax ; ef ; 0xc2442 + mov ax, strict word 00005h ; b8 05 00 ; 0xc2443 vgabios.c:1529 + out DX, ax ; ef ; 0xc2446 + mov ax, strict word 00003h ; b8 03 00 ; 0xc2447 vgabios.c:1530 + out DX, ax ; ef ; 0xc244a + lea sp, [bp-004h] ; 8d 66 fc ; 0xc244b vgabios.c:1531 + pop di ; 5f ; 0xc244e + pop si ; 5e ; 0xc244f + pop bp ; 5d ; 0xc2450 + retn 00006h ; c2 06 00 ; 0xc2451 + ; disGetNextSymbol 0xc2454 LB 0x2110 -> off=0x0 cb=0000000000000112 uValue=00000000000c2454 'write_gfx_char_cga' +write_gfx_char_cga: ; 0xc2454 LB 0x112 + push si ; 56 ; 0xc2454 vgabios.c:1534 + push di ; 57 ; 0xc2455 + push bp ; 55 ; 0xc2456 + mov bp, sp ; 89 e5 ; 0xc2457 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc2459 + mov ch, al ; 88 c5 ; 0xc245c + mov byte [bp-002h], dl ; 88 56 fe ; 0xc245e + mov al, bl ; 88 d8 ; 0xc2461 + mov si, 0556dh ; be 6d 55 ; 0xc2463 vgabios.c:1541 + xor ah, ah ; 30 e4 ; 0xc2466 vgabios.c:1542 + mov bl, byte [bp+00ah] ; 8a 5e 0a ; 0xc2468 + xor bh, bh ; 30 ff ; 0xc246b + imul bx ; f7 eb ; 0xc246d + mov bx, ax ; 89 c3 ; 0xc246f + mov al, cl ; 88 c8 ; 0xc2471 + xor ah, ah ; 30 e4 ; 0xc2473 + mov di, 00140h ; bf 40 01 ; 0xc2475 + imul di ; f7 ef ; 0xc2478 + add bx, ax ; 01 c3 ; 0xc247a + mov word [bp-004h], bx ; 89 5e fc ; 0xc247c + mov al, ch ; 88 e8 ; 0xc247f vgabios.c:1543 + xor ah, ah ; 30 e4 ; 0xc2481 + mov CL, strict byte 003h ; b1 03 ; 0xc2483 + sal ax, CL ; d3 e0 ; 0xc2485 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc2487 + xor ch, ch ; 30 ed ; 0xc248a vgabios.c:1544 + jmp near 024abh ; e9 1c 00 ; 0xc248c + mov al, ch ; 88 e8 ; 0xc248f vgabios.c:1559 + xor ah, ah ; 30 e4 ; 0xc2491 + add ax, word [bp-008h] ; 03 46 f8 ; 0xc2493 + mov di, si ; 89 f7 ; 0xc2496 + add di, ax ; 01 c7 ; 0xc2498 + mov al, byte [di] ; 8a 05 ; 0xc249a + mov di, 0b800h ; bf 00 b8 ; 0xc249c vgabios.c:52 + mov es, di ; 8e c7 ; 0xc249f + mov byte [es:bx], al ; 26 88 07 ; 0xc24a1 + db 0feh, 0c5h + ; inc ch ; fe c5 ; 0xc24a4 vgabios.c:1563 + cmp ch, 008h ; 80 fd 08 ; 0xc24a6 + jnc short 02503h ; 73 58 ; 0xc24a9 + mov al, ch ; 88 e8 ; 0xc24ab + xor ah, ah ; 30 e4 ; 0xc24ad + sar ax, 1 ; d1 f8 ; 0xc24af + mov bx, strict word 00050h ; bb 50 00 ; 0xc24b1 + imul bx ; f7 eb ; 0xc24b4 + mov bx, word [bp-004h] ; 8b 5e fc ; 0xc24b6 + add bx, ax ; 01 c3 ; 0xc24b9 + test ch, 001h ; f6 c5 01 ; 0xc24bb + je short 024c3h ; 74 03 ; 0xc24be + add bh, 020h ; 80 c7 20 ; 0xc24c0 + mov DL, strict byte 080h ; b2 80 ; 0xc24c3 + cmp byte [bp+00ah], 001h ; 80 7e 0a 01 ; 0xc24c5 + jne short 024e9h ; 75 1e ; 0xc24c9 + test byte [bp-002h], dl ; 84 56 fe ; 0xc24cb + je short 0248fh ; 74 bf ; 0xc24ce + mov ax, 0b800h ; b8 00 b8 ; 0xc24d0 + mov es, ax ; 8e c0 ; 0xc24d3 + mov dl, byte [es:bx] ; 26 8a 17 ; 0xc24d5 + mov al, ch ; 88 e8 ; 0xc24d8 + xor ah, ah ; 30 e4 ; 0xc24da + add ax, word [bp-008h] ; 03 46 f8 ; 0xc24dc + mov di, si ; 89 f7 ; 0xc24df + add di, ax ; 01 c7 ; 0xc24e1 + mov al, byte [di] ; 8a 05 ; 0xc24e3 + xor al, dl ; 30 d0 ; 0xc24e5 + jmp short 0249ch ; eb b3 ; 0xc24e7 + test dl, dl ; 84 d2 ; 0xc24e9 vgabios.c:1565 + jbe short 024a4h ; 76 b7 ; 0xc24eb + test byte [bp-002h], 080h ; f6 46 fe 80 ; 0xc24ed vgabios.c:1567 + je short 024fdh ; 74 0a ; 0xc24f1 + mov ax, 0b800h ; b8 00 b8 ; 0xc24f3 vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc24f6 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc24f8 + jmp short 024ffh ; eb 02 ; 0xc24fb vgabios.c:1571 + xor al, al ; 30 c0 ; 0xc24fd vgabios.c:1573 + xor ah, ah ; 30 e4 ; 0xc24ff vgabios.c:1575 + jmp short 0250ah ; eb 07 ; 0xc2501 + jmp short 0255eh ; eb 59 ; 0xc2503 + cmp ah, 004h ; 80 fc 04 ; 0xc2505 + jnc short 02553h ; 73 49 ; 0xc2508 + mov byte [bp-006h], ch ; 88 6e fa ; 0xc250a vgabios.c:1577 + mov byte [bp-005h], 000h ; c6 46 fb 00 ; 0xc250d + mov di, word [bp-008h] ; 8b 7e f8 ; 0xc2511 + add di, word [bp-006h] ; 03 7e fa ; 0xc2514 + add di, si ; 01 f7 ; 0xc2517 + mov cl, byte [di] ; 8a 0d ; 0xc2519 + mov byte [bp-00ah], cl ; 88 4e f6 ; 0xc251b + mov byte [bp-009h], 000h ; c6 46 f7 00 ; 0xc251e + mov byte [bp-006h], dl ; 88 56 fa ; 0xc2522 + mov byte [bp-005h], 000h ; c6 46 fb 00 ; 0xc2525 + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc2529 + test word [bp-006h], di ; 85 7e fa ; 0xc252c + je short 0254dh ; 74 1c ; 0xc252f + mov CL, strict byte 003h ; b1 03 ; 0xc2531 vgabios.c:1578 + sub cl, ah ; 28 e1 ; 0xc2533 + mov dh, byte [bp-002h] ; 8a 76 fe ; 0xc2535 + and dh, 003h ; 80 e6 03 ; 0xc2538 + sal cl, 1 ; d0 e1 ; 0xc253b + sal dh, CL ; d2 e6 ; 0xc253d + mov cl, dh ; 88 f1 ; 0xc253f + test byte [bp-002h], 080h ; f6 46 fe 80 ; 0xc2541 vgabios.c:1579 + je short 0254bh ; 74 04 ; 0xc2545 + xor al, dh ; 30 f0 ; 0xc2547 vgabios.c:1581 + jmp short 0254dh ; eb 02 ; 0xc2549 vgabios.c:1583 + or al, dh ; 08 f0 ; 0xc254b vgabios.c:1585 + shr dl, 1 ; d0 ea ; 0xc254d vgabios.c:1588 + db 0feh, 0c4h + ; inc ah ; fe c4 ; 0xc254f vgabios.c:1589 + jmp short 02505h ; eb b2 ; 0xc2551 + mov di, 0b800h ; bf 00 b8 ; 0xc2553 vgabios.c:52 + mov es, di ; 8e c7 ; 0xc2556 + mov byte [es:bx], al ; 26 88 07 ; 0xc2558 + inc bx ; 43 ; 0xc255b vgabios.c:1591 + jmp short 024e9h ; eb 8b ; 0xc255c vgabios.c:1592 + mov sp, bp ; 89 ec ; 0xc255e vgabios.c:1595 + pop bp ; 5d ; 0xc2560 + pop di ; 5f ; 0xc2561 + pop si ; 5e ; 0xc2562 + retn 00004h ; c2 04 00 ; 0xc2563 + ; disGetNextSymbol 0xc2566 LB 0x1ffe -> off=0x0 cb=00000000000000a1 uValue=00000000000c2566 'write_gfx_char_lin' +write_gfx_char_lin: ; 0xc2566 LB 0xa1 + push si ; 56 ; 0xc2566 vgabios.c:1598 + push di ; 57 ; 0xc2567 + push bp ; 55 ; 0xc2568 + mov bp, sp ; 89 e5 ; 0xc2569 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc256b + mov bh, al ; 88 c7 ; 0xc256e + mov ch, dl ; 88 d5 ; 0xc2570 + mov al, cl ; 88 c8 ; 0xc2572 + mov di, 0556dh ; bf 6d 55 ; 0xc2574 vgabios.c:1605 + xor ah, ah ; 30 e4 ; 0xc2577 vgabios.c:1606 + mov dl, byte [bp+008h] ; 8a 56 08 ; 0xc2579 + xor dh, dh ; 30 f6 ; 0xc257c + imul dx ; f7 ea ; 0xc257e + mov CL, strict byte 006h ; b1 06 ; 0xc2580 + mov dx, ax ; 89 c2 ; 0xc2582 + sal dx, CL ; d3 e2 ; 0xc2584 + mov al, bl ; 88 d8 ; 0xc2586 + xor ah, ah ; 30 e4 ; 0xc2588 + mov CL, strict byte 003h ; b1 03 ; 0xc258a + sal ax, CL ; d3 e0 ; 0xc258c + add ax, dx ; 01 d0 ; 0xc258e + mov word [bp-002h], ax ; 89 46 fe ; 0xc2590 + mov al, bh ; 88 f8 ; 0xc2593 vgabios.c:1607 + xor ah, ah ; 30 e4 ; 0xc2595 + sal ax, CL ; d3 e0 ; 0xc2597 + mov word [bp-006h], ax ; 89 46 fa ; 0xc2599 + xor bl, bl ; 30 db ; 0xc259c vgabios.c:1608 + jmp short 025e2h ; eb 42 ; 0xc259e + cmp AL, strict byte 008h ; 3c 08 ; 0xc25a0 vgabios.c:1612 + jnc short 025dbh ; 73 37 ; 0xc25a2 + xor bh, bh ; 30 ff ; 0xc25a4 vgabios.c:1614 + mov dl, bl ; 88 da ; 0xc25a6 vgabios.c:1615 + xor dh, dh ; 30 f6 ; 0xc25a8 + add dx, word [bp-006h] ; 03 56 fa ; 0xc25aa + mov si, di ; 89 fe ; 0xc25ad + add si, dx ; 01 d6 ; 0xc25af + mov dl, byte [si] ; 8a 14 ; 0xc25b1 + mov byte [bp-004h], dl ; 88 56 fc ; 0xc25b3 + mov byte [bp-003h], bh ; 88 7e fd ; 0xc25b6 + mov dl, ah ; 88 e2 ; 0xc25b9 + xor dh, dh ; 30 f6 ; 0xc25bb + test word [bp-004h], dx ; 85 56 fc ; 0xc25bd + je short 025c4h ; 74 02 ; 0xc25c0 + mov bh, ch ; 88 ef ; 0xc25c2 vgabios.c:1617 + mov dl, al ; 88 c2 ; 0xc25c4 vgabios.c:1619 + xor dh, dh ; 30 f6 ; 0xc25c6 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc25c8 + add si, dx ; 01 d6 ; 0xc25cb + mov dx, 0a000h ; ba 00 a0 ; 0xc25cd vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc25d0 + mov byte [es:si], bh ; 26 88 3c ; 0xc25d2 + shr ah, 1 ; d0 ec ; 0xc25d5 vgabios.c:1620 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc25d7 vgabios.c:1621 + jmp short 025a0h ; eb c5 ; 0xc25d9 + db 0feh, 0c3h + ; inc bl ; fe c3 ; 0xc25db vgabios.c:1622 + cmp bl, 008h ; 80 fb 08 ; 0xc25dd + jnc short 025ffh ; 73 1d ; 0xc25e0 + mov al, bl ; 88 d8 ; 0xc25e2 + xor ah, ah ; 30 e4 ; 0xc25e4 + mov dl, byte [bp+008h] ; 8a 56 08 ; 0xc25e6 + xor dh, dh ; 30 f6 ; 0xc25e9 + imul dx ; f7 ea ; 0xc25eb + mov CL, strict byte 003h ; b1 03 ; 0xc25ed + sal ax, CL ; d3 e0 ; 0xc25ef + mov dx, word [bp-002h] ; 8b 56 fe ; 0xc25f1 + add dx, ax ; 01 c2 ; 0xc25f4 + mov word [bp-008h], dx ; 89 56 f8 ; 0xc25f6 + mov AH, strict byte 080h ; b4 80 ; 0xc25f9 + xor al, al ; 30 c0 ; 0xc25fb + jmp short 025a4h ; eb a5 ; 0xc25fd + mov sp, bp ; 89 ec ; 0xc25ff vgabios.c:1623 + pop bp ; 5d ; 0xc2601 + pop di ; 5f ; 0xc2602 + pop si ; 5e ; 0xc2603 + retn 00002h ; c2 02 00 ; 0xc2604 + ; disGetNextSymbol 0xc2607 LB 0x1f5d -> off=0x0 cb=0000000000000172 uValue=00000000000c2607 'biosfn_write_char_attr' +biosfn_write_char_attr: ; 0xc2607 LB 0x172 + push bp ; 55 ; 0xc2607 vgabios.c:1626 + mov bp, sp ; 89 e5 ; 0xc2608 + push si ; 56 ; 0xc260a + push di ; 57 ; 0xc260b + sub sp, strict byte 0001ah ; 83 ec 1a ; 0xc260c + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc260f + mov byte [bp-00eh], dl ; 88 56 f2 ; 0xc2612 + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc2615 + mov si, cx ; 89 ce ; 0xc2618 + mov bx, strict word 00049h ; bb 49 00 ; 0xc261a vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc261d + mov es, ax ; 8e c0 ; 0xc2620 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2622 + xor ah, ah ; 30 e4 ; 0xc2625 vgabios.c:1634 + call 03888h ; e8 5e 12 ; 0xc2627 + mov cl, al ; 88 c1 ; 0xc262a + mov byte [bp-014h], al ; 88 46 ec ; 0xc262c + cmp AL, strict byte 0ffh ; 3c ff ; 0xc262f vgabios.c:1635 + jne short 02636h ; 75 03 ; 0xc2631 + jmp near 02772h ; e9 3c 01 ; 0xc2633 + mov al, dl ; 88 d0 ; 0xc2636 vgabios.c:1638 + xor ah, ah ; 30 e4 ; 0xc2638 + lea bx, [bp-01ch] ; 8d 5e e4 ; 0xc263a + lea dx, [bp-01eh] ; 8d 56 e2 ; 0xc263d + call 00a97h ; e8 54 e4 ; 0xc2640 + mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xc2643 vgabios.c:1639 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc2646 + mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xc2649 + mov al, ah ; 88 e0 ; 0xc264c + xor ah, ah ; 30 e4 ; 0xc264e + mov word [bp-018h], ax ; 89 46 e8 ; 0xc2650 + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc2653 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2656 + mov bx, 00084h ; bb 84 00 ; 0xc2659 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc265c + mov es, ax ; 8e c0 ; 0xc265f + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2661 + xor ah, ah ; 30 e4 ; 0xc2664 vgabios.c:48 + mov dx, ax ; 89 c2 ; 0xc2666 + inc dx ; 42 ; 0xc2668 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2669 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc266c + mov word [bp-016h], ax ; 89 46 ea ; 0xc266f + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc2672 vgabios.c:58 + mov bl, cl ; 88 cb ; 0xc2675 vgabios.c:1645 + xor bh, bh ; 30 ff ; 0xc2677 + mov CL, strict byte 003h ; b1 03 ; 0xc2679 + mov di, bx ; 89 df ; 0xc267b + sal di, CL ; d3 e7 ; 0xc267d + cmp byte [di+047b0h], 000h ; 80 bd b0 47 00 ; 0xc267f + jne short 026c6h ; 75 40 ; 0xc2684 + mul dx ; f7 e2 ; 0xc2686 vgabios.c:1648 + sal ax, 1 ; d1 e0 ; 0xc2688 + or AL, strict byte 0ffh ; 0c ff ; 0xc268a + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc268c + xor dh, dh ; 30 f6 ; 0xc268f + inc ax ; 40 ; 0xc2691 + mul dx ; f7 e2 ; 0xc2692 + mov bx, ax ; 89 c3 ; 0xc2694 + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc2696 + xor ah, ah ; 30 e4 ; 0xc2699 + mul word [bp-016h] ; f7 66 ea ; 0xc269b + mov dx, ax ; 89 c2 ; 0xc269e + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc26a0 + xor ah, ah ; 30 e4 ; 0xc26a3 + add ax, dx ; 01 d0 ; 0xc26a5 + sal ax, 1 ; d1 e0 ; 0xc26a7 + add bx, ax ; 01 c3 ; 0xc26a9 + mov ah, byte [bp-008h] ; 8a 66 f8 ; 0xc26ab vgabios.c:1650 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc26ae + mov word [bp-01eh], ax ; 89 46 e2 ; 0xc26b1 + mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xc26b4 vgabios.c:1651 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc26b7 + mov cx, si ; 89 f1 ; 0xc26bb + mov di, bx ; 89 df ; 0xc26bd + jcxz 026c3h ; e3 02 ; 0xc26bf + rep stosw ; f3 ab ; 0xc26c1 + jmp near 02772h ; e9 ac 00 ; 0xc26c3 vgabios.c:1653 + mov bl, byte [bx+0482fh] ; 8a 9f 2f 48 ; 0xc26c6 vgabios.c:1656 + mov CL, strict byte 006h ; b1 06 ; 0xc26ca + sal bx, CL ; d3 e3 ; 0xc26cc + mov al, byte [bx+04845h] ; 8a 87 45 48 ; 0xc26ce + mov byte [bp-010h], al ; 88 46 f0 ; 0xc26d2 + mov al, byte [di+047b2h] ; 8a 85 b2 47 ; 0xc26d5 vgabios.c:1657 + mov byte [bp-012h], al ; 88 46 ee ; 0xc26d9 + dec si ; 4e ; 0xc26dc vgabios.c:1658 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc26dd + je short 0272eh ; 74 4c ; 0xc26e0 + mov bl, byte [bp-014h] ; 8a 5e ec ; 0xc26e2 vgabios.c:1660 + xor bh, bh ; 30 ff ; 0xc26e5 + mov CL, strict byte 003h ; b1 03 ; 0xc26e7 + sal bx, CL ; d3 e3 ; 0xc26e9 + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc26eb + cmp al, cl ; 38 c8 ; 0xc26ef + jc short 026ffh ; 72 0c ; 0xc26f1 + jbe short 02705h ; 76 10 ; 0xc26f3 + cmp AL, strict byte 005h ; 3c 05 ; 0xc26f5 + je short 02751h ; 74 58 ; 0xc26f7 + cmp AL, strict byte 004h ; 3c 04 ; 0xc26f9 + je short 02709h ; 74 0c ; 0xc26fb + jmp short 0276ch ; eb 6d ; 0xc26fd + cmp AL, strict byte 002h ; 3c 02 ; 0xc26ff + je short 02730h ; 74 2d ; 0xc2701 + jmp short 0276ch ; eb 67 ; 0xc2703 + or byte [bp-008h], 001h ; 80 4e f8 01 ; 0xc2705 vgabios.c:1663 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2709 vgabios.c:1665 + xor ah, ah ; 30 e4 ; 0xc270c + push ax ; 50 ; 0xc270e + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc270f + push ax ; 50 ; 0xc2712 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc2713 + push ax ; 50 ; 0xc2716 + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc2717 + xor ch, ch ; 30 ed ; 0xc271a + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc271c + xor bh, bh ; 30 ff ; 0xc271f + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2721 + xor dh, dh ; 30 f6 ; 0xc2724 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2726 + call 02342h ; e8 16 fc ; 0xc2729 + jmp short 0276ch ; eb 3e ; 0xc272c vgabios.c:1666 + jmp short 02772h ; eb 42 ; 0xc272e + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc2730 vgabios.c:1668 + xor ah, ah ; 30 e4 ; 0xc2733 + push ax ; 50 ; 0xc2735 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc2736 + push ax ; 50 ; 0xc2739 + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc273a + xor ch, ch ; 30 ed ; 0xc273d + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc273f + xor bh, bh ; 30 ff ; 0xc2742 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2744 + xor dh, dh ; 30 f6 ; 0xc2747 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2749 + call 02454h ; e8 05 fd ; 0xc274c + jmp short 0276ch ; eb 1b ; 0xc274f vgabios.c:1669 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc2751 vgabios.c:1671 + xor ah, ah ; 30 e4 ; 0xc2754 + push ax ; 50 ; 0xc2756 + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc2757 + xor ch, ch ; 30 ed ; 0xc275a + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc275c + xor bh, bh ; 30 ff ; 0xc275f + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc2761 + xor dh, dh ; 30 f6 ; 0xc2764 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2766 + call 02566h ; e8 fa fd ; 0xc2769 + inc byte [bp-00ah] ; fe 46 f6 ; 0xc276c vgabios.c:1678 + jmp near 026dch ; e9 6a ff ; 0xc276f vgabios.c:1679 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2772 vgabios.c:1681 + pop di ; 5f ; 0xc2775 + pop si ; 5e ; 0xc2776 + pop bp ; 5d ; 0xc2777 + retn ; c3 ; 0xc2778 + ; disGetNextSymbol 0xc2779 LB 0x1deb -> off=0x0 cb=0000000000000183 uValue=00000000000c2779 'biosfn_write_char_only' +biosfn_write_char_only: ; 0xc2779 LB 0x183 + push bp ; 55 ; 0xc2779 vgabios.c:1684 + mov bp, sp ; 89 e5 ; 0xc277a + push si ; 56 ; 0xc277c + push di ; 57 ; 0xc277d + sub sp, strict byte 0001ah ; 83 ec 1a ; 0xc277e + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc2781 + mov byte [bp-00eh], dl ; 88 56 f2 ; 0xc2784 + mov byte [bp-008h], bl ; 88 5e f8 ; 0xc2787 + mov si, cx ; 89 ce ; 0xc278a + mov bx, strict word 00049h ; bb 49 00 ; 0xc278c vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc278f + mov es, ax ; 8e c0 ; 0xc2792 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2794 + xor ah, ah ; 30 e4 ; 0xc2797 vgabios.c:1692 + call 03888h ; e8 ec 10 ; 0xc2799 + mov cl, al ; 88 c1 ; 0xc279c + mov byte [bp-010h], al ; 88 46 f0 ; 0xc279e + cmp AL, strict byte 0ffh ; 3c ff ; 0xc27a1 vgabios.c:1693 + jne short 027a8h ; 75 03 ; 0xc27a3 + jmp near 028f5h ; e9 4d 01 ; 0xc27a5 + mov al, dl ; 88 d0 ; 0xc27a8 vgabios.c:1696 + xor ah, ah ; 30 e4 ; 0xc27aa + lea bx, [bp-01eh] ; 8d 5e e2 ; 0xc27ac + lea dx, [bp-01ch] ; 8d 56 e4 ; 0xc27af + call 00a97h ; e8 e2 e2 ; 0xc27b2 + mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xc27b5 vgabios.c:1697 + mov byte [bp-006h], al ; 88 46 fa ; 0xc27b8 + mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xc27bb + mov al, ah ; 88 e0 ; 0xc27be + xor ah, ah ; 30 e4 ; 0xc27c0 + mov word [bp-01ah], ax ; 89 46 e6 ; 0xc27c2 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc27c5 + mov byte [bp-00ch], al ; 88 46 f4 ; 0xc27c8 + mov bx, 00084h ; bb 84 00 ; 0xc27cb vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc27ce + mov es, ax ; 8e c0 ; 0xc27d1 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc27d3 + xor ah, ah ; 30 e4 ; 0xc27d6 vgabios.c:48 + mov dx, ax ; 89 c2 ; 0xc27d8 + inc dx ; 42 ; 0xc27da + mov di, strict word 0004ah ; bf 4a 00 ; 0xc27db vgabios.c:57 + mov di, word [es:di] ; 26 8b 3d ; 0xc27de + mov word [bp-018h], di ; 89 7e e8 ; 0xc27e1 vgabios.c:58 + mov al, cl ; 88 c8 ; 0xc27e4 vgabios.c:1703 + mov CL, strict byte 003h ; b1 03 ; 0xc27e6 + mov bx, ax ; 89 c3 ; 0xc27e8 + sal bx, CL ; d3 e3 ; 0xc27ea + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc27ec + jne short 02838h ; 75 45 ; 0xc27f1 + mov ax, di ; 89 f8 ; 0xc27f3 vgabios.c:1706 + mul dx ; f7 e2 ; 0xc27f5 + sal ax, 1 ; d1 e0 ; 0xc27f7 + or AL, strict byte 0ffh ; 0c ff ; 0xc27f9 + mov dl, byte [bp-00eh] ; 8a 56 f2 ; 0xc27fb + xor dh, dh ; 30 f6 ; 0xc27fe + inc ax ; 40 ; 0xc2800 + mul dx ; f7 e2 ; 0xc2801 + mov bx, ax ; 89 c3 ; 0xc2803 + mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xc2805 + xor ah, ah ; 30 e4 ; 0xc2808 + mul di ; f7 e7 ; 0xc280a + mov dx, ax ; 89 c2 ; 0xc280c + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc280e + xor ah, ah ; 30 e4 ; 0xc2811 + add ax, dx ; 01 d0 ; 0xc2813 + sal ax, 1 ; d1 e0 ; 0xc2815 + add bx, ax ; 01 c3 ; 0xc2817 + dec si ; 4e ; 0xc2819 vgabios.c:1708 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc281a + je short 027a5h ; 74 86 ; 0xc281d + mov al, byte [bp-010h] ; 8a 46 f0 ; 0xc281f vgabios.c:1709 + xor ah, ah ; 30 e4 ; 0xc2822 + mov CL, strict byte 003h ; b1 03 ; 0xc2824 + mov di, ax ; 89 c7 ; 0xc2826 + sal di, CL ; d3 e7 ; 0xc2828 + mov es, [di+047b3h] ; 8e 85 b3 47 ; 0xc282a vgabios.c:50 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc282e vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc2831 + inc bx ; 43 ; 0xc2834 vgabios.c:1710 + inc bx ; 43 ; 0xc2835 + jmp short 02819h ; eb e1 ; 0xc2836 vgabios.c:1711 + mov di, ax ; 89 c7 ; 0xc2838 vgabios.c:1716 + mov al, byte [di+0482fh] ; 8a 85 2f 48 ; 0xc283a + mov CL, strict byte 006h ; b1 06 ; 0xc283e + mov di, ax ; 89 c7 ; 0xc2840 + sal di, CL ; d3 e7 ; 0xc2842 + mov al, byte [di+04845h] ; 8a 85 45 48 ; 0xc2844 + mov byte [bp-012h], al ; 88 46 ee ; 0xc2848 + mov al, byte [bx+047b2h] ; 8a 87 b2 47 ; 0xc284b vgabios.c:1717 + mov byte [bp-014h], al ; 88 46 ec ; 0xc284f + dec si ; 4e ; 0xc2852 vgabios.c:1718 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc2853 + je short 028a8h ; 74 50 ; 0xc2856 + mov bl, byte [bp-010h] ; 8a 5e f0 ; 0xc2858 vgabios.c:1720 + xor bh, bh ; 30 ff ; 0xc285b + mov CL, strict byte 003h ; b1 03 ; 0xc285d + sal bx, CL ; d3 e3 ; 0xc285f + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc2861 + cmp bl, cl ; 38 cb ; 0xc2865 + jc short 02878h ; 72 0f ; 0xc2867 + jbe short 0287fh ; 76 14 ; 0xc2869 + cmp bl, 005h ; 80 fb 05 ; 0xc286b + je short 028d4h ; 74 64 ; 0xc286e + cmp bl, 004h ; 80 fb 04 ; 0xc2870 + je short 02883h ; 74 0e ; 0xc2873 + jmp near 028efh ; e9 77 00 ; 0xc2875 + cmp bl, 002h ; 80 fb 02 ; 0xc2878 + je short 028aah ; 74 2d ; 0xc287b + jmp short 028efh ; eb 70 ; 0xc287d + or byte [bp-008h], 001h ; 80 4e f8 01 ; 0xc287f vgabios.c:1723 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2883 vgabios.c:1725 + xor ah, ah ; 30 e4 ; 0xc2886 + push ax ; 50 ; 0xc2888 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc2889 + push ax ; 50 ; 0xc288c + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc288d + push ax ; 50 ; 0xc2890 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc2891 + xor ch, ch ; 30 ed ; 0xc2894 + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc2896 + xor bh, bh ; 30 ff ; 0xc2899 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc289b + xor dh, dh ; 30 f6 ; 0xc289e + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc28a0 + call 02342h ; e8 9c fa ; 0xc28a3 + jmp short 028efh ; eb 47 ; 0xc28a6 vgabios.c:1726 + jmp short 028f5h ; eb 4b ; 0xc28a8 + mov al, byte [bp-014h] ; 8a 46 ec ; 0xc28aa vgabios.c:1728 + xor ah, ah ; 30 e4 ; 0xc28ad + push ax ; 50 ; 0xc28af + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc28b0 + push ax ; 50 ; 0xc28b3 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc28b4 + xor ch, ch ; 30 ed ; 0xc28b7 + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc28b9 + xor bh, bh ; 30 ff ; 0xc28bc + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc28be + xor dh, dh ; 30 f6 ; 0xc28c1 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc28c3 + mov byte [bp-016h], al ; 88 46 ea ; 0xc28c6 + mov byte [bp-015h], ah ; 88 66 eb ; 0xc28c9 + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc28cc + call 02454h ; e8 82 fb ; 0xc28cf + jmp short 028efh ; eb 1b ; 0xc28d2 vgabios.c:1729 + mov al, byte [bp-018h] ; 8a 46 e8 ; 0xc28d4 vgabios.c:1731 + xor ah, ah ; 30 e4 ; 0xc28d7 + push ax ; 50 ; 0xc28d9 + mov cl, byte [bp-00ch] ; 8a 4e f4 ; 0xc28da + xor ch, ch ; 30 ed ; 0xc28dd + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc28df + xor bh, bh ; 30 ff ; 0xc28e2 + mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xc28e4 + xor dh, dh ; 30 f6 ; 0xc28e7 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc28e9 + call 02566h ; e8 77 fc ; 0xc28ec + inc byte [bp-006h] ; fe 46 fa ; 0xc28ef vgabios.c:1738 + jmp near 02852h ; e9 5d ff ; 0xc28f2 vgabios.c:1739 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc28f5 vgabios.c:1741 + pop di ; 5f ; 0xc28f8 + pop si ; 5e ; 0xc28f9 + pop bp ; 5d ; 0xc28fa + retn ; c3 ; 0xc28fb + ; disGetNextSymbol 0xc28fc LB 0x1c68 -> off=0x0 cb=000000000000017a uValue=00000000000c28fc 'biosfn_write_pixel' +biosfn_write_pixel: ; 0xc28fc LB 0x17a + push bp ; 55 ; 0xc28fc vgabios.c:1744 + mov bp, sp ; 89 e5 ; 0xc28fd + push si ; 56 ; 0xc28ff + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc2900 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2903 + mov byte [bp-004h], dl ; 88 56 fc ; 0xc2906 + mov word [bp-008h], bx ; 89 5e f8 ; 0xc2909 + mov word [bp-00ah], cx ; 89 4e f6 ; 0xc290c + mov bx, strict word 00049h ; bb 49 00 ; 0xc290f vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2912 + mov es, ax ; 8e c0 ; 0xc2915 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2917 + xor ah, ah ; 30 e4 ; 0xc291a vgabios.c:1751 + call 03888h ; e8 69 0f ; 0xc291c + mov ch, al ; 88 c5 ; 0xc291f + cmp AL, strict byte 0ffh ; 3c ff ; 0xc2921 vgabios.c:1752 + je short 0294ch ; 74 27 ; 0xc2923 + mov bl, al ; 88 c3 ; 0xc2925 vgabios.c:1753 + xor bh, bh ; 30 ff ; 0xc2927 + mov CL, strict byte 003h ; b1 03 ; 0xc2929 + sal bx, CL ; d3 e3 ; 0xc292b + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc292d + je short 0294ch ; 74 18 ; 0xc2932 + mov al, byte [bx+047b1h] ; 8a 87 b1 47 ; 0xc2934 vgabios.c:1755 + cmp al, cl ; 38 c8 ; 0xc2938 + jc short 02948h ; 72 0c ; 0xc293a + jbe short 02952h ; 76 14 ; 0xc293c + cmp AL, strict byte 005h ; 3c 05 ; 0xc293e + je short 0294fh ; 74 0d ; 0xc2940 + cmp AL, strict byte 004h ; 3c 04 ; 0xc2942 + je short 02952h ; 74 0c ; 0xc2944 + jmp short 0294ch ; eb 04 ; 0xc2946 + cmp AL, strict byte 002h ; 3c 02 ; 0xc2948 + je short 029c4h ; 74 78 ; 0xc294a + jmp near 02a4fh ; e9 00 01 ; 0xc294c + jmp near 02a55h ; e9 03 01 ; 0xc294f + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2952 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2955 + mov es, ax ; 8e c0 ; 0xc2958 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc295a + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc295d vgabios.c:58 + mul dx ; f7 e2 ; 0xc2960 + mov CL, strict byte 003h ; b1 03 ; 0xc2962 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc2964 + shr bx, CL ; d3 eb ; 0xc2967 + add bx, ax ; 01 c3 ; 0xc2969 + mov si, strict word 0004ch ; be 4c 00 ; 0xc296b vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc296e + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc2971 vgabios.c:58 + xor dh, dh ; 30 f6 ; 0xc2974 + mul dx ; f7 e2 ; 0xc2976 + add bx, ax ; 01 c3 ; 0xc2978 + mov cx, word [bp-008h] ; 8b 4e f8 ; 0xc297a vgabios.c:1761 + and cl, 007h ; 80 e1 07 ; 0xc297d + mov ax, 00080h ; b8 80 00 ; 0xc2980 + sar ax, CL ; d3 f8 ; 0xc2983 + mov ah, al ; 88 c4 ; 0xc2985 vgabios.c:1762 + xor al, al ; 30 c0 ; 0xc2987 + or AL, strict byte 008h ; 0c 08 ; 0xc2989 + mov dx, 003ceh ; ba ce 03 ; 0xc298b + out DX, ax ; ef ; 0xc298e + mov ax, 00205h ; b8 05 02 ; 0xc298f vgabios.c:1763 + out DX, ax ; ef ; 0xc2992 + mov dx, bx ; 89 da ; 0xc2993 vgabios.c:1764 + mov ax, 0a000h ; b8 00 a0 ; 0xc2995 + call 038b3h ; e8 18 0f ; 0xc2998 + test byte [bp-004h], 080h ; f6 46 fc 80 ; 0xc299b vgabios.c:1765 + je short 029a8h ; 74 07 ; 0xc299f + mov ax, 01803h ; b8 03 18 ; 0xc29a1 vgabios.c:1767 + mov dx, 003ceh ; ba ce 03 ; 0xc29a4 + out DX, ax ; ef ; 0xc29a7 + mov ax, 0a000h ; b8 00 a0 ; 0xc29a8 vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc29ab + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc29ad + mov byte [es:bx], al ; 26 88 07 ; 0xc29b0 + mov ax, 0ff08h ; b8 08 ff ; 0xc29b3 vgabios.c:1770 + mov dx, 003ceh ; ba ce 03 ; 0xc29b6 + out DX, ax ; ef ; 0xc29b9 + mov ax, strict word 00005h ; b8 05 00 ; 0xc29ba vgabios.c:1771 + out DX, ax ; ef ; 0xc29bd + mov ax, strict word 00003h ; b8 03 00 ; 0xc29be vgabios.c:1772 + out DX, ax ; ef ; 0xc29c1 + jmp short 0294ch ; eb 88 ; 0xc29c2 vgabios.c:1773 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc29c4 vgabios.c:1775 + shr ax, 1 ; d1 e8 ; 0xc29c7 + mov dx, strict word 00050h ; ba 50 00 ; 0xc29c9 + mul dx ; f7 e2 ; 0xc29cc + cmp byte [bx+047b2h], 002h ; 80 bf b2 47 02 ; 0xc29ce + jne short 029deh ; 75 09 ; 0xc29d3 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc29d5 vgabios.c:1777 + shr bx, 1 ; d1 eb ; 0xc29d8 + shr bx, 1 ; d1 eb ; 0xc29da + jmp short 029e3h ; eb 05 ; 0xc29dc vgabios.c:1779 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc29de vgabios.c:1781 + shr bx, CL ; d3 eb ; 0xc29e1 + add bx, ax ; 01 c3 ; 0xc29e3 + test byte [bp-00ah], 001h ; f6 46 f6 01 ; 0xc29e5 vgabios.c:1783 + je short 029eeh ; 74 03 ; 0xc29e9 + add bh, 020h ; 80 c7 20 ; 0xc29eb + mov ax, 0b800h ; b8 00 b8 ; 0xc29ee vgabios.c:47 + mov es, ax ; 8e c0 ; 0xc29f1 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc29f3 + mov dl, ch ; 88 ea ; 0xc29f6 vgabios.c:1785 + xor dh, dh ; 30 f6 ; 0xc29f8 + mov CL, strict byte 003h ; b1 03 ; 0xc29fa + mov si, dx ; 89 d6 ; 0xc29fc + sal si, CL ; d3 e6 ; 0xc29fe + cmp byte [si+047b2h], 002h ; 80 bc b2 47 02 ; 0xc2a00 + jne short 02a21h ; 75 1a ; 0xc2a05 + mov ah, byte [bp-008h] ; 8a 66 f8 ; 0xc2a07 vgabios.c:1787 + and ah, cl ; 20 cc ; 0xc2a0a + mov dl, cl ; 88 ca ; 0xc2a0c + sub dl, ah ; 28 e2 ; 0xc2a0e + mov ah, dl ; 88 d4 ; 0xc2a10 + sal ah, 1 ; d0 e4 ; 0xc2a12 + mov dl, byte [bp-004h] ; 8a 56 fc ; 0xc2a14 + and dl, cl ; 20 ca ; 0xc2a17 + mov cl, ah ; 88 e1 ; 0xc2a19 + sal dl, CL ; d2 e2 ; 0xc2a1b + mov AH, strict byte 003h ; b4 03 ; 0xc2a1d vgabios.c:1788 + jmp short 02a35h ; eb 14 ; 0xc2a1f vgabios.c:1790 + mov ah, byte [bp-008h] ; 8a 66 f8 ; 0xc2a21 vgabios.c:1792 + and ah, 007h ; 80 e4 07 ; 0xc2a24 + mov CL, strict byte 007h ; b1 07 ; 0xc2a27 + sub cl, ah ; 28 e1 ; 0xc2a29 + mov dl, byte [bp-004h] ; 8a 56 fc ; 0xc2a2b + and dl, 001h ; 80 e2 01 ; 0xc2a2e + sal dl, CL ; d2 e2 ; 0xc2a31 + mov AH, strict byte 001h ; b4 01 ; 0xc2a33 vgabios.c:1793 + sal ah, CL ; d2 e4 ; 0xc2a35 + test byte [bp-004h], 080h ; f6 46 fc 80 ; 0xc2a37 vgabios.c:1795 + je short 02a41h ; 74 04 ; 0xc2a3b + xor al, dl ; 30 d0 ; 0xc2a3d vgabios.c:1797 + jmp short 02a47h ; eb 06 ; 0xc2a3f vgabios.c:1799 + not ah ; f6 d4 ; 0xc2a41 vgabios.c:1801 + and al, ah ; 20 e0 ; 0xc2a43 + or al, dl ; 08 d0 ; 0xc2a45 vgabios.c:1802 + mov dx, 0b800h ; ba 00 b8 ; 0xc2a47 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc2a4a + mov byte [es:bx], al ; 26 88 07 ; 0xc2a4c + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2a4f vgabios.c:1805 + pop si ; 5e ; 0xc2a52 + pop bp ; 5d ; 0xc2a53 + retn ; c3 ; 0xc2a54 + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2a55 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2a58 + mov es, ax ; 8e c0 ; 0xc2a5b + mov dx, word [es:bx] ; 26 8b 17 ; 0xc2a5d + sal dx, CL ; d3 e2 ; 0xc2a60 vgabios.c:58 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc2a62 + mul dx ; f7 e2 ; 0xc2a65 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc2a67 + add bx, ax ; 01 c3 ; 0xc2a6a + mov ax, 0a000h ; b8 00 a0 ; 0xc2a6c vgabios.c:52 + mov es, ax ; 8e c0 ; 0xc2a6f + mov al, byte [bp-004h] ; 8a 46 fc ; 0xc2a71 + jmp short 02a4ch ; eb d6 ; 0xc2a74 + ; disGetNextSymbol 0xc2a76 LB 0x1aee -> off=0x0 cb=0000000000000263 uValue=00000000000c2a76 'biosfn_write_teletype' +biosfn_write_teletype: ; 0xc2a76 LB 0x263 + push bp ; 55 ; 0xc2a76 vgabios.c:1818 + mov bp, sp ; 89 e5 ; 0xc2a77 + push si ; 56 ; 0xc2a79 + sub sp, strict byte 00016h ; 83 ec 16 ; 0xc2a7a + mov ch, al ; 88 c5 ; 0xc2a7d + mov byte [bp-00ah], dl ; 88 56 f6 ; 0xc2a7f + mov byte [bp-00ch], bl ; 88 5e f4 ; 0xc2a82 + mov byte [bp-004h], cl ; 88 4e fc ; 0xc2a85 + cmp dl, 0ffh ; 80 fa ff ; 0xc2a88 vgabios.c:1826 + jne short 02a9bh ; 75 0e ; 0xc2a8b + mov bx, strict word 00062h ; bb 62 00 ; 0xc2a8d vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2a90 + mov es, ax ; 8e c0 ; 0xc2a93 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2a95 + mov byte [bp-00ah], al ; 88 46 f6 ; 0xc2a98 vgabios.c:48 + mov bx, strict word 00049h ; bb 49 00 ; 0xc2a9b vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2a9e + mov es, ax ; 8e c0 ; 0xc2aa1 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2aa3 + xor ah, ah ; 30 e4 ; 0xc2aa6 vgabios.c:1831 + call 03888h ; e8 dd 0d ; 0xc2aa8 + mov byte [bp-00eh], al ; 88 46 f2 ; 0xc2aab + cmp AL, strict byte 0ffh ; 3c ff ; 0xc2aae vgabios.c:1832 + je short 02b17h ; 74 65 ; 0xc2ab0 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2ab2 vgabios.c:1835 + xor ah, ah ; 30 e4 ; 0xc2ab5 + lea bx, [bp-016h] ; 8d 5e ea ; 0xc2ab7 + lea dx, [bp-018h] ; 8d 56 e8 ; 0xc2aba + call 00a97h ; e8 d7 df ; 0xc2abd + mov al, byte [bp-016h] ; 8a 46 ea ; 0xc2ac0 vgabios.c:1836 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2ac3 + mov ax, word [bp-016h] ; 8b 46 ea ; 0xc2ac6 + mov al, ah ; 88 e0 ; 0xc2ac9 + xor ah, ah ; 30 e4 ; 0xc2acb + mov byte [bp-008h], al ; 88 46 f8 ; 0xc2acd + mov bx, 00084h ; bb 84 00 ; 0xc2ad0 vgabios.c:47 + mov dx, strict word 00040h ; ba 40 00 ; 0xc2ad3 + mov es, dx ; 8e c2 ; 0xc2ad6 + mov dl, byte [es:bx] ; 26 8a 17 ; 0xc2ad8 + xor dh, dh ; 30 f6 ; 0xc2adb vgabios.c:48 + inc dx ; 42 ; 0xc2add + mov word [bp-014h], dx ; 89 56 ec ; 0xc2ade + mov bx, strict word 0004ah ; bb 4a 00 ; 0xc2ae1 vgabios.c:57 + mov dx, word [es:bx] ; 26 8b 17 ; 0xc2ae4 + mov word [bp-012h], dx ; 89 56 ee ; 0xc2ae7 vgabios.c:58 + cmp ch, 008h ; 80 fd 08 ; 0xc2aea vgabios.c:1842 + jc short 02afdh ; 72 0e ; 0xc2aed + jbe short 02b05h ; 76 14 ; 0xc2aef + cmp ch, 00dh ; 80 fd 0d ; 0xc2af1 + je short 02b1ah ; 74 24 ; 0xc2af4 + cmp ch, 00ah ; 80 fd 0a ; 0xc2af6 + je short 02b10h ; 74 15 ; 0xc2af9 + jmp short 02b20h ; eb 23 ; 0xc2afb + cmp ch, 007h ; 80 fd 07 ; 0xc2afd + jne short 02b20h ; 75 1e ; 0xc2b00 + jmp near 02c28h ; e9 23 01 ; 0xc2b02 + cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xc2b05 vgabios.c:1849 + jbe short 02b1dh ; 76 12 ; 0xc2b09 + dec byte [bp-006h] ; fe 4e fa ; 0xc2b0b + jmp short 02b1dh ; eb 0d ; 0xc2b0e vgabios.c:1850 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc2b10 vgabios.c:1853 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc2b12 + jmp short 02b1dh ; eb 06 ; 0xc2b15 vgabios.c:1854 + jmp near 02cd3h ; e9 b9 01 ; 0xc2b17 + mov byte [bp-006h], ah ; 88 66 fa ; 0xc2b1a vgabios.c:1857 + jmp near 02c28h ; e9 08 01 ; 0xc2b1d vgabios.c:1858 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc2b20 vgabios.c:1862 + xor ah, ah ; 30 e4 ; 0xc2b23 + mov CL, strict byte 003h ; b1 03 ; 0xc2b25 + mov bx, ax ; 89 c3 ; 0xc2b27 + sal bx, CL ; d3 e3 ; 0xc2b29 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc2b2b + jne short 02b74h ; 75 42 ; 0xc2b30 + mov ax, word [bp-012h] ; 8b 46 ee ; 0xc2b32 vgabios.c:1865 + mul word [bp-014h] ; f7 66 ec ; 0xc2b35 + sal ax, 1 ; d1 e0 ; 0xc2b38 + or AL, strict byte 0ffh ; 0c ff ; 0xc2b3a + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc2b3c + xor dh, dh ; 30 f6 ; 0xc2b3f + inc ax ; 40 ; 0xc2b41 + mul dx ; f7 e2 ; 0xc2b42 + mov si, ax ; 89 c6 ; 0xc2b44 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2b46 + xor ah, ah ; 30 e4 ; 0xc2b49 + mul word [bp-012h] ; f7 66 ee ; 0xc2b4b + mov dx, ax ; 89 c2 ; 0xc2b4e + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2b50 + xor ah, ah ; 30 e4 ; 0xc2b53 + add ax, dx ; 01 d0 ; 0xc2b55 + sal ax, 1 ; d1 e0 ; 0xc2b57 + add si, ax ; 01 c6 ; 0xc2b59 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2b5b vgabios.c:50 + mov byte [es:si], ch ; 26 88 2c ; 0xc2b5f vgabios.c:52 + cmp cl, byte [bp-004h] ; 3a 4e fc ; 0xc2b62 vgabios.c:1870 + jne short 02ba4h ; 75 3d ; 0xc2b65 + inc si ; 46 ; 0xc2b67 vgabios.c:1871 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2b68 vgabios.c:50 + mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xc2b6c + mov byte [es:si], al ; 26 88 04 ; 0xc2b6f + jmp short 02ba4h ; eb 30 ; 0xc2b72 vgabios.c:1873 + mov si, ax ; 89 c6 ; 0xc2b74 vgabios.c:1876 + mov al, byte [si+0482fh] ; 8a 84 2f 48 ; 0xc2b76 + mov CL, strict byte 006h ; b1 06 ; 0xc2b7a + mov si, ax ; 89 c6 ; 0xc2b7c + sal si, CL ; d3 e6 ; 0xc2b7e + mov dl, byte [si+04845h] ; 8a 94 45 48 ; 0xc2b80 + mov al, byte [bx+047b2h] ; 8a 87 b2 47 ; 0xc2b84 vgabios.c:1877 + mov bl, byte [bx+047b1h] ; 8a 9f b1 47 ; 0xc2b88 vgabios.c:1878 + cmp bl, 003h ; 80 fb 03 ; 0xc2b8c + jc short 02b9fh ; 72 0e ; 0xc2b8f + jbe short 02ba6h ; 76 13 ; 0xc2b91 + cmp bl, 005h ; 80 fb 05 ; 0xc2b93 + je short 02bf6h ; 74 5e ; 0xc2b96 + cmp bl, 004h ; 80 fb 04 ; 0xc2b98 + je short 02baah ; 74 0d ; 0xc2b9b + jmp short 02c15h ; eb 76 ; 0xc2b9d + cmp bl, 002h ; 80 fb 02 ; 0xc2b9f + je short 02bd4h ; 74 30 ; 0xc2ba2 + jmp short 02c15h ; eb 6f ; 0xc2ba4 + or byte [bp-00ch], 001h ; 80 4e f4 01 ; 0xc2ba6 vgabios.c:1881 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2baa vgabios.c:1883 + xor ah, ah ; 30 e4 ; 0xc2bad + push ax ; 50 ; 0xc2baf + mov al, dl ; 88 d0 ; 0xc2bb0 + push ax ; 50 ; 0xc2bb2 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc2bb3 + push ax ; 50 ; 0xc2bb6 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2bb7 + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc2bba + xor bh, bh ; 30 ff ; 0xc2bbd + mov dl, byte [bp-00ch] ; 8a 56 f4 ; 0xc2bbf + xor dh, dh ; 30 f6 ; 0xc2bc2 + mov byte [bp-010h], ch ; 88 6e f0 ; 0xc2bc4 + mov byte [bp-00fh], ah ; 88 66 f1 ; 0xc2bc7 + mov cx, ax ; 89 c1 ; 0xc2bca + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc2bcc + call 02342h ; e8 70 f7 ; 0xc2bcf + jmp short 02c15h ; eb 41 ; 0xc2bd2 vgabios.c:1884 + push ax ; 50 ; 0xc2bd4 vgabios.c:1886 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc2bd5 + push ax ; 50 ; 0xc2bd8 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2bd9 + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc2bdc + xor bh, bh ; 30 ff ; 0xc2bdf + mov dl, byte [bp-00ch] ; 8a 56 f4 ; 0xc2be1 + xor dh, dh ; 30 f6 ; 0xc2be4 + mov byte [bp-010h], ch ; 88 6e f0 ; 0xc2be6 + mov byte [bp-00fh], ah ; 88 66 f1 ; 0xc2be9 + mov cx, ax ; 89 c1 ; 0xc2bec + mov ax, word [bp-010h] ; 8b 46 f0 ; 0xc2bee + call 02454h ; e8 60 f8 ; 0xc2bf1 + jmp short 02c15h ; eb 1f ; 0xc2bf4 vgabios.c:1887 + mov al, byte [bp-012h] ; 8a 46 ee ; 0xc2bf6 vgabios.c:1889 + push ax ; 50 ; 0xc2bf9 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2bfa + mov byte [bp-010h], al ; 88 46 f0 ; 0xc2bfd + mov byte [bp-00fh], ah ; 88 66 f1 ; 0xc2c00 + mov bl, byte [bp-006h] ; 8a 5e fa ; 0xc2c03 + xor bh, bh ; 30 ff ; 0xc2c06 + mov dl, byte [bp-00ch] ; 8a 56 f4 ; 0xc2c08 + xor dh, dh ; 30 f6 ; 0xc2c0b + mov al, ch ; 88 e8 ; 0xc2c0d + mov cx, word [bp-010h] ; 8b 4e f0 ; 0xc2c0f + call 02566h ; e8 51 f9 ; 0xc2c12 + inc byte [bp-006h] ; fe 46 fa ; 0xc2c15 vgabios.c:1897 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2c18 vgabios.c:1899 + xor ah, ah ; 30 e4 ; 0xc2c1b + cmp ax, word [bp-012h] ; 3b 46 ee ; 0xc2c1d + jne short 02c28h ; 75 06 ; 0xc2c20 + mov byte [bp-006h], ah ; 88 66 fa ; 0xc2c22 vgabios.c:1900 + inc byte [bp-008h] ; fe 46 f8 ; 0xc2c25 vgabios.c:1901 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2c28 vgabios.c:1906 + xor ah, ah ; 30 e4 ; 0xc2c2b + cmp ax, word [bp-014h] ; 3b 46 ec ; 0xc2c2d + jne short 02c96h ; 75 64 ; 0xc2c30 + mov bl, byte [bp-00eh] ; 8a 5e f2 ; 0xc2c32 vgabios.c:1908 + xor bh, bh ; 30 ff ; 0xc2c35 + mov CL, strict byte 003h ; b1 03 ; 0xc2c37 + sal bx, CL ; d3 e3 ; 0xc2c39 + mov cl, byte [bp-014h] ; 8a 4e ec ; 0xc2c3b + db 0feh, 0c9h + ; dec cl ; fe c9 ; 0xc2c3e + mov ch, byte [bp-012h] ; 8a 6e ee ; 0xc2c40 + db 0feh, 0cdh + ; dec ch ; fe cd ; 0xc2c43 + cmp byte [bx+047b0h], 000h ; 80 bf b0 47 00 ; 0xc2c45 + jne short 02c98h ; 75 4c ; 0xc2c4a + mov ax, word [bp-012h] ; 8b 46 ee ; 0xc2c4c vgabios.c:1910 + mul word [bp-014h] ; f7 66 ec ; 0xc2c4f + sal ax, 1 ; d1 e0 ; 0xc2c52 + or AL, strict byte 0ffh ; 0c ff ; 0xc2c54 + mov dl, byte [bp-00ah] ; 8a 56 f6 ; 0xc2c56 + xor dh, dh ; 30 f6 ; 0xc2c59 + inc ax ; 40 ; 0xc2c5b + mul dx ; f7 e2 ; 0xc2c5c + mov si, ax ; 89 c6 ; 0xc2c5e + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2c60 + xor ah, ah ; 30 e4 ; 0xc2c63 + dec ax ; 48 ; 0xc2c65 + mul word [bp-012h] ; f7 66 ee ; 0xc2c66 + mov dx, ax ; 89 c2 ; 0xc2c69 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2c6b + xor ah, ah ; 30 e4 ; 0xc2c6e + add ax, dx ; 01 d0 ; 0xc2c70 + sal ax, 1 ; d1 e0 ; 0xc2c72 + add si, ax ; 01 c6 ; 0xc2c74 + inc si ; 46 ; 0xc2c76 vgabios.c:1911 + mov es, [bx+047b3h] ; 8e 87 b3 47 ; 0xc2c77 vgabios.c:45 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc2c7b vgabios.c:47 + mov ax, strict word 00001h ; b8 01 00 ; 0xc2c7e vgabios.c:1912 + push ax ; 50 ; 0xc2c81 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2c82 + xor ah, ah ; 30 e4 ; 0xc2c85 + push ax ; 50 ; 0xc2c87 + mov al, ch ; 88 e8 ; 0xc2c88 + push ax ; 50 ; 0xc2c8a + mov al, cl ; 88 c8 ; 0xc2c8b + push ax ; 50 ; 0xc2c8d + xor dh, dh ; 30 f6 ; 0xc2c8e + xor cx, cx ; 31 c9 ; 0xc2c90 + xor bx, bx ; 31 db ; 0xc2c92 + jmp short 02caeh ; eb 18 ; 0xc2c94 vgabios.c:1914 + jmp short 02cb7h ; eb 1f ; 0xc2c96 + mov ax, strict word 00001h ; b8 01 00 ; 0xc2c98 vgabios.c:1916 + push ax ; 50 ; 0xc2c9b + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2c9c + xor ah, ah ; 30 e4 ; 0xc2c9f + push ax ; 50 ; 0xc2ca1 + mov al, ch ; 88 e8 ; 0xc2ca2 + push ax ; 50 ; 0xc2ca4 + mov al, cl ; 88 c8 ; 0xc2ca5 + push ax ; 50 ; 0xc2ca7 + xor cx, cx ; 31 c9 ; 0xc2ca8 + xor bx, bx ; 31 db ; 0xc2caa + xor dx, dx ; 31 d2 ; 0xc2cac + mov ax, strict word 00001h ; b8 01 00 ; 0xc2cae + call 01c9fh ; e8 eb ef ; 0xc2cb1 + dec byte [bp-008h] ; fe 4e f8 ; 0xc2cb4 vgabios.c:1918 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc2cb7 vgabios.c:1922 + xor ah, ah ; 30 e4 ; 0xc2cba + mov word [bp-016h], ax ; 89 46 ea ; 0xc2cbc + mov CL, strict byte 008h ; b1 08 ; 0xc2cbf + sal word [bp-016h], CL ; d3 66 ea ; 0xc2cc1 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2cc4 + add word [bp-016h], ax ; 01 46 ea ; 0xc2cc7 + mov dx, word [bp-016h] ; 8b 56 ea ; 0xc2cca vgabios.c:1923 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc2ccd + call 012cfh ; e8 fc e5 ; 0xc2cd0 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2cd3 vgabios.c:1924 + pop si ; 5e ; 0xc2cd6 + pop bp ; 5d ; 0xc2cd7 + retn ; c3 ; 0xc2cd8 + ; disGetNextSymbol 0xc2cd9 LB 0x188b -> off=0x0 cb=0000000000000035 uValue=00000000000c2cd9 'get_font_access' +get_font_access: ; 0xc2cd9 LB 0x35 + push bp ; 55 ; 0xc2cd9 vgabios.c:1927 + mov bp, sp ; 89 e5 ; 0xc2cda + push dx ; 52 ; 0xc2cdc + mov ax, strict word 00005h ; b8 05 00 ; 0xc2cdd vgabios.c:1929 + mov dx, 003ceh ; ba ce 03 ; 0xc2ce0 + out DX, ax ; ef ; 0xc2ce3 + mov AL, strict byte 006h ; b0 06 ; 0xc2ce4 vgabios.c:1930 + out DX, AL ; ee ; 0xc2ce6 + mov dx, 003cfh ; ba cf 03 ; 0xc2ce7 vgabios.c:1931 + in AL, DX ; ec ; 0xc2cea + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2ceb + mov ah, al ; 88 c4 ; 0xc2ced + and ah, 001h ; 80 e4 01 ; 0xc2cef + or ah, 004h ; 80 cc 04 ; 0xc2cf2 + xor al, al ; 30 c0 ; 0xc2cf5 + or AL, strict byte 006h ; 0c 06 ; 0xc2cf7 + mov dx, 003ceh ; ba ce 03 ; 0xc2cf9 + out DX, ax ; ef ; 0xc2cfc + mov ax, 00402h ; b8 02 04 ; 0xc2cfd vgabios.c:1932 + mov dx, 003c4h ; ba c4 03 ; 0xc2d00 + out DX, ax ; ef ; 0xc2d03 + mov ax, 00604h ; b8 04 06 ; 0xc2d04 vgabios.c:1933 + out DX, ax ; ef ; 0xc2d07 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2d08 vgabios.c:1934 + pop dx ; 5a ; 0xc2d0b + pop bp ; 5d ; 0xc2d0c + retn ; c3 ; 0xc2d0d + ; disGetNextSymbol 0xc2d0e LB 0x1856 -> off=0x0 cb=0000000000000033 uValue=00000000000c2d0e 'release_font_access' +release_font_access: ; 0xc2d0e LB 0x33 + push bp ; 55 ; 0xc2d0e vgabios.c:1936 + mov bp, sp ; 89 e5 ; 0xc2d0f + push dx ; 52 ; 0xc2d11 + mov dx, 003cch ; ba cc 03 ; 0xc2d12 vgabios.c:1938 + in AL, DX ; ec ; 0xc2d15 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2d16 + and ax, strict word 00001h ; 25 01 00 ; 0xc2d18 + sal ax, 1 ; d1 e0 ; 0xc2d1b + sal ax, 1 ; d1 e0 ; 0xc2d1d + mov ah, al ; 88 c4 ; 0xc2d1f + or ah, 00ah ; 80 cc 0a ; 0xc2d21 + xor al, al ; 30 c0 ; 0xc2d24 + or AL, strict byte 006h ; 0c 06 ; 0xc2d26 + mov dx, 003ceh ; ba ce 03 ; 0xc2d28 + out DX, ax ; ef ; 0xc2d2b + mov ax, 01005h ; b8 05 10 ; 0xc2d2c vgabios.c:1939 + out DX, ax ; ef ; 0xc2d2f + mov ax, 00302h ; b8 02 03 ; 0xc2d30 vgabios.c:1940 + mov dx, 003c4h ; ba c4 03 ; 0xc2d33 + out DX, ax ; ef ; 0xc2d36 + mov ax, 00204h ; b8 04 02 ; 0xc2d37 vgabios.c:1941 + out DX, ax ; ef ; 0xc2d3a + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2d3b vgabios.c:1942 + pop dx ; 5a ; 0xc2d3e + pop bp ; 5d ; 0xc2d3f + retn ; c3 ; 0xc2d40 + ; disGetNextSymbol 0xc2d41 LB 0x1823 -> off=0x0 cb=00000000000000b3 uValue=00000000000c2d41 'set_scan_lines' +set_scan_lines: ; 0xc2d41 LB 0xb3 + push bp ; 55 ; 0xc2d41 vgabios.c:1944 + mov bp, sp ; 89 e5 ; 0xc2d42 + push bx ; 53 ; 0xc2d44 + push cx ; 51 ; 0xc2d45 + push dx ; 52 ; 0xc2d46 + push si ; 56 ; 0xc2d47 + push di ; 57 ; 0xc2d48 + mov bl, al ; 88 c3 ; 0xc2d49 + mov si, strict word 00063h ; be 63 00 ; 0xc2d4b vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2d4e + mov es, ax ; 8e c0 ; 0xc2d51 + mov si, word [es:si] ; 26 8b 34 ; 0xc2d53 + mov cx, si ; 89 f1 ; 0xc2d56 vgabios.c:58 + mov AL, strict byte 009h ; b0 09 ; 0xc2d58 vgabios.c:1950 + mov dx, si ; 89 f2 ; 0xc2d5a + out DX, AL ; ee ; 0xc2d5c + lea dx, [si+001h] ; 8d 54 01 ; 0xc2d5d vgabios.c:1951 + in AL, DX ; ec ; 0xc2d60 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2d61 + mov ah, al ; 88 c4 ; 0xc2d63 vgabios.c:1952 + and ah, 0e0h ; 80 e4 e0 ; 0xc2d65 + mov al, bl ; 88 d8 ; 0xc2d68 + db 0feh, 0c8h + ; dec al ; fe c8 ; 0xc2d6a + or al, ah ; 08 e0 ; 0xc2d6c + out DX, AL ; ee ; 0xc2d6e vgabios.c:1953 + cmp bl, 008h ; 80 fb 08 ; 0xc2d6f vgabios.c:1954 + jne short 02d7ch ; 75 08 ; 0xc2d72 + mov dx, strict word 00007h ; ba 07 00 ; 0xc2d74 vgabios.c:1956 + mov ax, strict word 00006h ; b8 06 00 ; 0xc2d77 + jmp short 02d89h ; eb 0d ; 0xc2d7a vgabios.c:1958 + mov dl, bl ; 88 da ; 0xc2d7c vgabios.c:1960 + sub dl, 003h ; 80 ea 03 ; 0xc2d7e + xor dh, dh ; 30 f6 ; 0xc2d81 + mov al, bl ; 88 d8 ; 0xc2d83 + sub AL, strict byte 004h ; 2c 04 ; 0xc2d85 + xor ah, ah ; 30 e4 ; 0xc2d87 + call 011d3h ; e8 47 e4 ; 0xc2d89 + xor bh, bh ; 30 ff ; 0xc2d8c vgabios.c:1962 + mov si, 00085h ; be 85 00 ; 0xc2d8e vgabios.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2d91 + mov es, ax ; 8e c0 ; 0xc2d94 + mov word [es:si], bx ; 26 89 1c ; 0xc2d96 + mov AL, strict byte 012h ; b0 12 ; 0xc2d99 vgabios.c:1963 + mov dx, cx ; 89 ca ; 0xc2d9b + out DX, AL ; ee ; 0xc2d9d + mov si, cx ; 89 ce ; 0xc2d9e vgabios.c:1964 + inc si ; 46 ; 0xc2da0 + mov dx, si ; 89 f2 ; 0xc2da1 + in AL, DX ; ec ; 0xc2da3 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2da4 + mov di, ax ; 89 c7 ; 0xc2da6 + mov AL, strict byte 007h ; b0 07 ; 0xc2da8 vgabios.c:1965 + mov dx, cx ; 89 ca ; 0xc2daa + out DX, AL ; ee ; 0xc2dac + mov dx, si ; 89 f2 ; 0xc2dad vgabios.c:1966 + in AL, DX ; ec ; 0xc2daf + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc2db0 + mov dl, al ; 88 c2 ; 0xc2db2 vgabios.c:1967 + and dl, 002h ; 80 e2 02 ; 0xc2db4 + xor dh, dh ; 30 f6 ; 0xc2db7 + mov CL, strict byte 007h ; b1 07 ; 0xc2db9 + sal dx, CL ; d3 e2 ; 0xc2dbb + and AL, strict byte 040h ; 24 40 ; 0xc2dbd + xor ah, ah ; 30 e4 ; 0xc2dbf + mov CL, strict byte 003h ; b1 03 ; 0xc2dc1 + sal ax, CL ; d3 e0 ; 0xc2dc3 + add ax, dx ; 01 d0 ; 0xc2dc5 + inc ax ; 40 ; 0xc2dc7 + add ax, di ; 01 f8 ; 0xc2dc8 + xor dx, dx ; 31 d2 ; 0xc2dca vgabios.c:1968 + div bx ; f7 f3 ; 0xc2dcc + mov dl, al ; 88 c2 ; 0xc2dce vgabios.c:1969 + db 0feh, 0cah + ; dec dl ; fe ca ; 0xc2dd0 + mov si, 00084h ; be 84 00 ; 0xc2dd2 vgabios.c:52 + mov byte [es:si], dl ; 26 88 14 ; 0xc2dd5 + mov si, strict word 0004ah ; be 4a 00 ; 0xc2dd8 vgabios.c:57 + mov dx, word [es:si] ; 26 8b 14 ; 0xc2ddb + xor ah, ah ; 30 e4 ; 0xc2dde vgabios.c:1971 + mul dx ; f7 e2 ; 0xc2de0 + sal ax, 1 ; d1 e0 ; 0xc2de2 + mov si, strict word 0004ch ; be 4c 00 ; 0xc2de4 vgabios.c:62 + mov word [es:si], ax ; 26 89 04 ; 0xc2de7 + lea sp, [bp-00ah] ; 8d 66 f6 ; 0xc2dea vgabios.c:1972 + pop di ; 5f ; 0xc2ded + pop si ; 5e ; 0xc2dee + pop dx ; 5a ; 0xc2def + pop cx ; 59 ; 0xc2df0 + pop bx ; 5b ; 0xc2df1 + pop bp ; 5d ; 0xc2df2 + retn ; c3 ; 0xc2df3 + ; disGetNextSymbol 0xc2df4 LB 0x1770 -> off=0x0 cb=0000000000000020 uValue=00000000000c2df4 'biosfn_set_font_block' +biosfn_set_font_block: ; 0xc2df4 LB 0x20 + push bp ; 55 ; 0xc2df4 vgabios.c:1974 + mov bp, sp ; 89 e5 ; 0xc2df5 + push bx ; 53 ; 0xc2df7 + push dx ; 52 ; 0xc2df8 + mov bl, al ; 88 c3 ; 0xc2df9 + mov ax, 00100h ; b8 00 01 ; 0xc2dfb vgabios.c:1976 + mov dx, 003c4h ; ba c4 03 ; 0xc2dfe + out DX, ax ; ef ; 0xc2e01 + mov ah, bl ; 88 dc ; 0xc2e02 vgabios.c:1977 + xor al, al ; 30 c0 ; 0xc2e04 + or AL, strict byte 003h ; 0c 03 ; 0xc2e06 + out DX, ax ; ef ; 0xc2e08 + mov ax, 00300h ; b8 00 03 ; 0xc2e09 vgabios.c:1978 + out DX, ax ; ef ; 0xc2e0c + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2e0d vgabios.c:1979 + pop dx ; 5a ; 0xc2e10 + pop bx ; 5b ; 0xc2e11 + pop bp ; 5d ; 0xc2e12 + retn ; c3 ; 0xc2e13 + ; disGetNextSymbol 0xc2e14 LB 0x1750 -> off=0x0 cb=0000000000000078 uValue=00000000000c2e14 'load_text_patch' +load_text_patch: ; 0xc2e14 LB 0x78 + push bp ; 55 ; 0xc2e14 vgabios.c:1981 + mov bp, sp ; 89 e5 ; 0xc2e15 + push si ; 56 ; 0xc2e17 + push di ; 57 ; 0xc2e18 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc2e19 + push ax ; 50 ; 0xc2e1c + mov byte [bp-006h], cl ; 88 4e fa ; 0xc2e1d + call 02cd9h ; e8 b6 fe ; 0xc2e20 vgabios.c:1986 + mov al, bl ; 88 d8 ; 0xc2e23 vgabios.c:1988 + and AL, strict byte 003h ; 24 03 ; 0xc2e25 + xor ah, ah ; 30 e4 ; 0xc2e27 + mov CL, strict byte 00eh ; b1 0e ; 0xc2e29 + mov di, ax ; 89 c7 ; 0xc2e2b + sal di, CL ; d3 e7 ; 0xc2e2d + mov al, bl ; 88 d8 ; 0xc2e2f + and AL, strict byte 004h ; 24 04 ; 0xc2e31 + mov CL, strict byte 00bh ; b1 0b ; 0xc2e33 + sal ax, CL ; d3 e0 ; 0xc2e35 + add di, ax ; 01 c7 ; 0xc2e37 + mov word [bp-00ah], di ; 89 7e f6 ; 0xc2e39 + mov bx, dx ; 89 d3 ; 0xc2e3c vgabios.c:1989 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc2e3e + mov word [bp-008h], ax ; 89 46 f8 ; 0xc2e41 + inc dx ; 42 ; 0xc2e44 vgabios.c:1990 + mov word [bp-00ch], dx ; 89 56 f4 ; 0xc2e45 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc2e48 vgabios.c:1991 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc2e4b + test al, al ; 84 c0 ; 0xc2e4e + je short 02e82h ; 74 30 ; 0xc2e50 + xor ah, ah ; 30 e4 ; 0xc2e52 vgabios.c:1992 + mov CL, strict byte 005h ; b1 05 ; 0xc2e54 + sal ax, CL ; d3 e0 ; 0xc2e56 + mov di, word [bp-00ah] ; 8b 7e f6 ; 0xc2e58 + add di, ax ; 01 c7 ; 0xc2e5b + mov cl, byte [bp-006h] ; 8a 4e fa ; 0xc2e5d vgabios.c:1993 + xor ch, ch ; 30 ed ; 0xc2e60 + mov si, word [bp-00ch] ; 8b 76 f4 ; 0xc2e62 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc2e65 + mov ax, 0a000h ; b8 00 a0 ; 0xc2e68 + mov es, ax ; 8e c0 ; 0xc2e6b + jcxz 02e75h ; e3 06 ; 0xc2e6d + push DS ; 1e ; 0xc2e6f + mov ds, dx ; 8e da ; 0xc2e70 + rep movsb ; f3 a4 ; 0xc2e72 + pop DS ; 1f ; 0xc2e74 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc2e75 vgabios.c:1994 + xor ah, ah ; 30 e4 ; 0xc2e78 + inc ax ; 40 ; 0xc2e7a + add word [bp-00ch], ax ; 01 46 f4 ; 0xc2e7b + add bx, ax ; 01 c3 ; 0xc2e7e vgabios.c:1995 + jmp short 02e48h ; eb c6 ; 0xc2e80 vgabios.c:1996 + call 02d0eh ; e8 89 fe ; 0xc2e82 vgabios.c:1998 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2e85 vgabios.c:1999 + pop di ; 5f ; 0xc2e88 + pop si ; 5e ; 0xc2e89 + pop bp ; 5d ; 0xc2e8a + retn ; c3 ; 0xc2e8b + ; disGetNextSymbol 0xc2e8c LB 0x16d8 -> off=0x0 cb=0000000000000084 uValue=00000000000c2e8c 'biosfn_load_text_user_pat' +biosfn_load_text_user_pat: ; 0xc2e8c LB 0x84 + push bp ; 55 ; 0xc2e8c vgabios.c:2001 + mov bp, sp ; 89 e5 ; 0xc2e8d + push si ; 56 ; 0xc2e8f + push di ; 57 ; 0xc2e90 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc2e91 + mov byte [bp-006h], al ; 88 46 fa ; 0xc2e94 + mov word [bp-00eh], dx ; 89 56 f2 ; 0xc2e97 + mov word [bp-00ah], bx ; 89 5e f6 ; 0xc2e9a + mov word [bp-00ch], cx ; 89 4e f4 ; 0xc2e9d + call 02cd9h ; e8 36 fe ; 0xc2ea0 vgabios.c:2006 + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc2ea3 vgabios.c:2007 + and AL, strict byte 003h ; 24 03 ; 0xc2ea6 + xor ah, ah ; 30 e4 ; 0xc2ea8 + mov CL, strict byte 00eh ; b1 0e ; 0xc2eaa + mov bx, ax ; 89 c3 ; 0xc2eac + sal bx, CL ; d3 e3 ; 0xc2eae + mov al, byte [bp+006h] ; 8a 46 06 ; 0xc2eb0 + and AL, strict byte 004h ; 24 04 ; 0xc2eb3 + mov CL, strict byte 00bh ; b1 0b ; 0xc2eb5 + sal ax, CL ; d3 e0 ; 0xc2eb7 + add bx, ax ; 01 c3 ; 0xc2eb9 + mov word [bp-008h], bx ; 89 5e f8 ; 0xc2ebb + xor bx, bx ; 31 db ; 0xc2ebe vgabios.c:2008 + cmp bx, word [bp-00ch] ; 3b 5e f4 ; 0xc2ec0 + jnc short 02ef6h ; 73 31 ; 0xc2ec3 + mov al, byte [bp+008h] ; 8a 46 08 ; 0xc2ec5 vgabios.c:2010 + xor ah, ah ; 30 e4 ; 0xc2ec8 + mov si, ax ; 89 c6 ; 0xc2eca + mov ax, bx ; 89 d8 ; 0xc2ecc + mul si ; f7 e6 ; 0xc2ece + add ax, word [bp-00ah] ; 03 46 f6 ; 0xc2ed0 + mov di, word [bp+004h] ; 8b 7e 04 ; 0xc2ed3 vgabios.c:2011 + add di, bx ; 01 df ; 0xc2ed6 + mov CL, strict byte 005h ; b1 05 ; 0xc2ed8 + sal di, CL ; d3 e7 ; 0xc2eda + add di, word [bp-008h] ; 03 7e f8 ; 0xc2edc + mov cx, si ; 89 f1 ; 0xc2edf vgabios.c:2012 + mov si, ax ; 89 c6 ; 0xc2ee1 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc2ee3 + mov ax, 0a000h ; b8 00 a0 ; 0xc2ee6 + mov es, ax ; 8e c0 ; 0xc2ee9 + jcxz 02ef3h ; e3 06 ; 0xc2eeb + push DS ; 1e ; 0xc2eed + mov ds, dx ; 8e da ; 0xc2eee + rep movsb ; f3 a4 ; 0xc2ef0 + pop DS ; 1f ; 0xc2ef2 + inc bx ; 43 ; 0xc2ef3 vgabios.c:2013 + jmp short 02ec0h ; eb ca ; 0xc2ef4 + call 02d0eh ; e8 15 fe ; 0xc2ef6 vgabios.c:2014 + cmp byte [bp-006h], 010h ; 80 7e fa 10 ; 0xc2ef9 vgabios.c:2015 + jc short 02f07h ; 72 08 ; 0xc2efd + mov al, byte [bp+008h] ; 8a 46 08 ; 0xc2eff vgabios.c:2017 + xor ah, ah ; 30 e4 ; 0xc2f02 + call 02d41h ; e8 3a fe ; 0xc2f04 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2f07 vgabios.c:2019 + pop di ; 5f ; 0xc2f0a + pop si ; 5e ; 0xc2f0b + pop bp ; 5d ; 0xc2f0c + retn 00006h ; c2 06 00 ; 0xc2f0d + ; disGetNextSymbol 0xc2f10 LB 0x1654 -> off=0x0 cb=0000000000000016 uValue=00000000000c2f10 'biosfn_load_gfx_8_8_chars' +biosfn_load_gfx_8_8_chars: ; 0xc2f10 LB 0x16 + push bp ; 55 ; 0xc2f10 vgabios.c:2021 + mov bp, sp ; 89 e5 ; 0xc2f11 + push bx ; 53 ; 0xc2f13 + push cx ; 51 ; 0xc2f14 + mov bx, dx ; 89 d3 ; 0xc2f15 vgabios.c:2023 + mov cx, ax ; 89 c1 ; 0xc2f17 + mov ax, strict word 0001fh ; b8 1f 00 ; 0xc2f19 + call 009f0h ; e8 d1 da ; 0xc2f1c + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2f1f vgabios.c:2024 + pop cx ; 59 ; 0xc2f22 + pop bx ; 5b ; 0xc2f23 + pop bp ; 5d ; 0xc2f24 + retn ; c3 ; 0xc2f25 + ; disGetNextSymbol 0xc2f26 LB 0x163e -> off=0x0 cb=000000000000004d uValue=00000000000c2f26 'set_gfx_font' +set_gfx_font: ; 0xc2f26 LB 0x4d + push bp ; 55 ; 0xc2f26 vgabios.c:2026 + mov bp, sp ; 89 e5 ; 0xc2f27 + push si ; 56 ; 0xc2f29 + push di ; 57 ; 0xc2f2a + mov si, ax ; 89 c6 ; 0xc2f2b + mov ax, dx ; 89 d0 ; 0xc2f2d + mov di, bx ; 89 df ; 0xc2f2f + mov dl, cl ; 88 ca ; 0xc2f31 + mov bx, si ; 89 f3 ; 0xc2f33 vgabios.c:2030 + mov cx, ax ; 89 c1 ; 0xc2f35 + mov ax, strict word 00043h ; b8 43 00 ; 0xc2f37 + call 009f0h ; e8 b3 da ; 0xc2f3a + test dl, dl ; 84 d2 ; 0xc2f3d vgabios.c:2031 + je short 02f53h ; 74 12 ; 0xc2f3f + cmp dl, 003h ; 80 fa 03 ; 0xc2f41 vgabios.c:2032 + jbe short 02f48h ; 76 02 ; 0xc2f44 + mov DL, strict byte 002h ; b2 02 ; 0xc2f46 vgabios.c:2033 + mov bl, dl ; 88 d3 ; 0xc2f48 vgabios.c:2034 + xor bh, bh ; 30 ff ; 0xc2f4a + mov al, byte [bx+07dfeh] ; 8a 87 fe 7d ; 0xc2f4c + mov byte [bp+004h], al ; 88 46 04 ; 0xc2f50 + mov bx, 00085h ; bb 85 00 ; 0xc2f53 vgabios.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc2f56 + mov es, ax ; 8e c0 ; 0xc2f59 + mov word [es:bx], di ; 26 89 3f ; 0xc2f5b + mov al, byte [bp+004h] ; 8a 46 04 ; 0xc2f5e vgabios.c:2039 + xor ah, ah ; 30 e4 ; 0xc2f61 + dec ax ; 48 ; 0xc2f63 + mov bx, 00084h ; bb 84 00 ; 0xc2f64 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc2f67 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2f6a vgabios.c:2040 + pop di ; 5f ; 0xc2f6d + pop si ; 5e ; 0xc2f6e + pop bp ; 5d ; 0xc2f6f + retn 00002h ; c2 02 00 ; 0xc2f70 + ; disGetNextSymbol 0xc2f73 LB 0x15f1 -> off=0x0 cb=000000000000001d uValue=00000000000c2f73 'biosfn_load_gfx_user_chars' +biosfn_load_gfx_user_chars: ; 0xc2f73 LB 0x1d + push bp ; 55 ; 0xc2f73 vgabios.c:2042 + mov bp, sp ; 89 e5 ; 0xc2f74 + push si ; 56 ; 0xc2f76 + mov si, ax ; 89 c6 ; 0xc2f77 + mov ax, dx ; 89 d0 ; 0xc2f79 + mov dl, byte [bp+004h] ; 8a 56 04 ; 0xc2f7b vgabios.c:2045 + xor dh, dh ; 30 f6 ; 0xc2f7e + push dx ; 52 ; 0xc2f80 + xor ch, ch ; 30 ed ; 0xc2f81 + mov dx, si ; 89 f2 ; 0xc2f83 + call 02f26h ; e8 9e ff ; 0xc2f85 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc2f88 vgabios.c:2046 + pop si ; 5e ; 0xc2f8b + pop bp ; 5d ; 0xc2f8c + retn 00002h ; c2 02 00 ; 0xc2f8d + ; disGetNextSymbol 0xc2f90 LB 0x15d4 -> off=0x0 cb=0000000000000022 uValue=00000000000c2f90 'biosfn_load_gfx_8_14_chars' +biosfn_load_gfx_8_14_chars: ; 0xc2f90 LB 0x22 + push bp ; 55 ; 0xc2f90 vgabios.c:2051 + mov bp, sp ; 89 e5 ; 0xc2f91 + push bx ; 53 ; 0xc2f93 + push cx ; 51 ; 0xc2f94 + mov bl, al ; 88 c3 ; 0xc2f95 + mov al, dl ; 88 d0 ; 0xc2f97 + xor ah, ah ; 30 e4 ; 0xc2f99 vgabios.c:2053 + push ax ; 50 ; 0xc2f9b + mov al, bl ; 88 d8 ; 0xc2f9c + mov cx, ax ; 89 c1 ; 0xc2f9e + mov bx, strict word 0000eh ; bb 0e 00 ; 0xc2fa0 + mov ax, 05d6dh ; b8 6d 5d ; 0xc2fa3 + mov dx, ds ; 8c da ; 0xc2fa6 + call 02f26h ; e8 7b ff ; 0xc2fa8 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2fab vgabios.c:2054 + pop cx ; 59 ; 0xc2fae + pop bx ; 5b ; 0xc2faf + pop bp ; 5d ; 0xc2fb0 + retn ; c3 ; 0xc2fb1 + ; disGetNextSymbol 0xc2fb2 LB 0x15b2 -> off=0x0 cb=0000000000000022 uValue=00000000000c2fb2 'biosfn_load_gfx_8_8_dd_chars' +biosfn_load_gfx_8_8_dd_chars: ; 0xc2fb2 LB 0x22 + push bp ; 55 ; 0xc2fb2 vgabios.c:2055 + mov bp, sp ; 89 e5 ; 0xc2fb3 + push bx ; 53 ; 0xc2fb5 + push cx ; 51 ; 0xc2fb6 + mov bl, al ; 88 c3 ; 0xc2fb7 + mov al, dl ; 88 d0 ; 0xc2fb9 + xor ah, ah ; 30 e4 ; 0xc2fbb vgabios.c:2057 + push ax ; 50 ; 0xc2fbd + mov al, bl ; 88 d8 ; 0xc2fbe + mov cx, ax ; 89 c1 ; 0xc2fc0 + mov bx, strict word 00008h ; bb 08 00 ; 0xc2fc2 + mov ax, 0556dh ; b8 6d 55 ; 0xc2fc5 + mov dx, ds ; 8c da ; 0xc2fc8 + call 02f26h ; e8 59 ff ; 0xc2fca + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2fcd vgabios.c:2058 + pop cx ; 59 ; 0xc2fd0 + pop bx ; 5b ; 0xc2fd1 + pop bp ; 5d ; 0xc2fd2 + retn ; c3 ; 0xc2fd3 + ; disGetNextSymbol 0xc2fd4 LB 0x1590 -> off=0x0 cb=0000000000000022 uValue=00000000000c2fd4 'biosfn_load_gfx_8_16_chars' +biosfn_load_gfx_8_16_chars: ; 0xc2fd4 LB 0x22 + push bp ; 55 ; 0xc2fd4 vgabios.c:2059 + mov bp, sp ; 89 e5 ; 0xc2fd5 + push bx ; 53 ; 0xc2fd7 + push cx ; 51 ; 0xc2fd8 + mov bl, al ; 88 c3 ; 0xc2fd9 + mov al, dl ; 88 d0 ; 0xc2fdb + xor ah, ah ; 30 e4 ; 0xc2fdd vgabios.c:2061 + push ax ; 50 ; 0xc2fdf + mov al, bl ; 88 d8 ; 0xc2fe0 + mov cx, ax ; 89 c1 ; 0xc2fe2 + mov bx, strict word 00010h ; bb 10 00 ; 0xc2fe4 + mov ax, 06b6dh ; b8 6d 6b ; 0xc2fe7 + mov dx, ds ; 8c da ; 0xc2fea + call 02f26h ; e8 37 ff ; 0xc2fec + lea sp, [bp-004h] ; 8d 66 fc ; 0xc2fef vgabios.c:2062 + pop cx ; 59 ; 0xc2ff2 + pop bx ; 5b ; 0xc2ff3 + pop bp ; 5d ; 0xc2ff4 + retn ; c3 ; 0xc2ff5 + ; disGetNextSymbol 0xc2ff6 LB 0x156e -> off=0x0 cb=0000000000000005 uValue=00000000000c2ff6 'biosfn_alternate_prtsc' +biosfn_alternate_prtsc: ; 0xc2ff6 LB 0x5 + push bp ; 55 ; 0xc2ff6 vgabios.c:2064 + mov bp, sp ; 89 e5 ; 0xc2ff7 + pop bp ; 5d ; 0xc2ff9 vgabios.c:2069 + retn ; c3 ; 0xc2ffa + ; disGetNextSymbol 0xc2ffb LB 0x1569 -> off=0x0 cb=0000000000000032 uValue=00000000000c2ffb 'biosfn_set_txt_lines' +biosfn_set_txt_lines: ; 0xc2ffb LB 0x32 + push bx ; 53 ; 0xc2ffb vgabios.c:2071 + push si ; 56 ; 0xc2ffc + push bp ; 55 ; 0xc2ffd + mov bp, sp ; 89 e5 ; 0xc2ffe + mov bl, al ; 88 c3 ; 0xc3000 + mov si, 00089h ; be 89 00 ; 0xc3002 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3005 + mov es, ax ; 8e c0 ; 0xc3008 + mov al, byte [es:si] ; 26 8a 04 ; 0xc300a + and AL, strict byte 06fh ; 24 6f ; 0xc300d vgabios.c:2077 + cmp bl, 002h ; 80 fb 02 ; 0xc300f vgabios.c:2079 + je short 0301ch ; 74 08 ; 0xc3012 + test bl, bl ; 84 db ; 0xc3014 + jne short 0301eh ; 75 06 ; 0xc3016 + or AL, strict byte 080h ; 0c 80 ; 0xc3018 vgabios.c:2082 + jmp short 0301eh ; eb 02 ; 0xc301a vgabios.c:2083 + or AL, strict byte 010h ; 0c 10 ; 0xc301c vgabios.c:2085 + mov bx, 00089h ; bb 89 00 ; 0xc301e vgabios.c:52 + mov si, strict word 00040h ; be 40 00 ; 0xc3021 + mov es, si ; 8e c6 ; 0xc3024 + mov byte [es:bx], al ; 26 88 07 ; 0xc3026 + pop bp ; 5d ; 0xc3029 vgabios.c:2089 + pop si ; 5e ; 0xc302a + pop bx ; 5b ; 0xc302b + retn ; c3 ; 0xc302c + ; disGetNextSymbol 0xc302d LB 0x1537 -> off=0x0 cb=0000000000000005 uValue=00000000000c302d 'biosfn_switch_video_interface' +biosfn_switch_video_interface: ; 0xc302d LB 0x5 + push bp ; 55 ; 0xc302d vgabios.c:2092 + mov bp, sp ; 89 e5 ; 0xc302e + pop bp ; 5d ; 0xc3030 vgabios.c:2097 + retn ; c3 ; 0xc3031 + ; disGetNextSymbol 0xc3032 LB 0x1532 -> off=0x0 cb=0000000000000005 uValue=00000000000c3032 'biosfn_enable_video_refresh_control' +biosfn_enable_video_refresh_control: ; 0xc3032 LB 0x5 + push bp ; 55 ; 0xc3032 vgabios.c:2098 + mov bp, sp ; 89 e5 ; 0xc3033 + pop bp ; 5d ; 0xc3035 vgabios.c:2103 + retn ; c3 ; 0xc3036 + ; disGetNextSymbol 0xc3037 LB 0x152d -> off=0x0 cb=000000000000008f uValue=00000000000c3037 'biosfn_write_string' +biosfn_write_string: ; 0xc3037 LB 0x8f + push bp ; 55 ; 0xc3037 vgabios.c:2106 + mov bp, sp ; 89 e5 ; 0xc3038 + push si ; 56 ; 0xc303a + push di ; 57 ; 0xc303b + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc303c + mov byte [bp-008h], al ; 88 46 f8 ; 0xc303f + mov byte [bp-006h], dl ; 88 56 fa ; 0xc3042 + mov byte [bp-00ah], bl ; 88 5e f6 ; 0xc3045 + mov si, cx ; 89 ce ; 0xc3048 + mov di, word [bp+00ah] ; 8b 7e 0a ; 0xc304a + mov al, dl ; 88 d0 ; 0xc304d vgabios.c:2113 + xor ah, ah ; 30 e4 ; 0xc304f + lea bx, [bp-00eh] ; 8d 5e f2 ; 0xc3051 + lea dx, [bp-00ch] ; 8d 56 f4 ; 0xc3054 + call 00a97h ; e8 3d da ; 0xc3057 + cmp byte [bp+004h], 0ffh ; 80 7e 04 ff ; 0xc305a vgabios.c:2116 + jne short 0306ch ; 75 0c ; 0xc305e + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc3060 vgabios.c:2117 + mov byte [bp+006h], al ; 88 46 06 ; 0xc3063 + mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xc3066 vgabios.c:2118 + mov byte [bp+004h], ah ; 88 66 04 ; 0xc3069 + mov dh, byte [bp+004h] ; 8a 76 04 ; 0xc306c vgabios.c:2121 + mov dl, byte [bp+006h] ; 8a 56 06 ; 0xc306f + xor ah, ah ; 30 e4 ; 0xc3072 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc3074 vgabios.c:2122 + call 012cfh ; e8 55 e2 ; 0xc3077 + dec si ; 4e ; 0xc307a vgabios.c:2124 + cmp si, strict byte 0ffffh ; 83 fe ff ; 0xc307b + je short 030ach ; 74 2c ; 0xc307e + mov bx, di ; 89 fb ; 0xc3080 vgabios.c:2126 + inc di ; 47 ; 0xc3082 + mov es, [bp+008h] ; 8e 46 08 ; 0xc3083 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3086 + test byte [bp-008h], 002h ; f6 46 f8 02 ; 0xc3089 vgabios.c:2127 + je short 03098h ; 74 09 ; 0xc308d + mov bx, di ; 89 fb ; 0xc308f vgabios.c:2128 + inc di ; 47 ; 0xc3091 + mov ah, byte [es:bx] ; 26 8a 27 ; 0xc3092 vgabios.c:47 + mov byte [bp-00ah], ah ; 88 66 f6 ; 0xc3095 vgabios.c:48 + mov bl, byte [bp-00ah] ; 8a 5e f6 ; 0xc3098 vgabios.c:2130 + xor bh, bh ; 30 ff ; 0xc309b + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc309d + xor dh, dh ; 30 f6 ; 0xc30a0 + xor ah, ah ; 30 e4 ; 0xc30a2 + mov cx, strict word 00003h ; b9 03 00 ; 0xc30a4 + call 02a76h ; e8 cc f9 ; 0xc30a7 + jmp short 0307ah ; eb ce ; 0xc30aa vgabios.c:2131 + test byte [bp-008h], 001h ; f6 46 f8 01 ; 0xc30ac vgabios.c:2134 + jne short 030bdh ; 75 0b ; 0xc30b0 + mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xc30b2 vgabios.c:2135 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc30b5 + xor ah, ah ; 30 e4 ; 0xc30b8 + call 012cfh ; e8 12 e2 ; 0xc30ba + lea sp, [bp-004h] ; 8d 66 fc ; 0xc30bd vgabios.c:2136 + pop di ; 5f ; 0xc30c0 + pop si ; 5e ; 0xc30c1 + pop bp ; 5d ; 0xc30c2 + retn 00008h ; c2 08 00 ; 0xc30c3 + ; disGetNextSymbol 0xc30c6 LB 0x149e -> off=0x0 cb=00000000000001f2 uValue=00000000000c30c6 'biosfn_read_state_info' +biosfn_read_state_info: ; 0xc30c6 LB 0x1f2 + push bp ; 55 ; 0xc30c6 vgabios.c:2139 + mov bp, sp ; 89 e5 ; 0xc30c7 + push cx ; 51 ; 0xc30c9 + push si ; 56 ; 0xc30ca + push di ; 57 ; 0xc30cb + push ax ; 50 ; 0xc30cc + push ax ; 50 ; 0xc30cd + push dx ; 52 ; 0xc30ce + mov si, strict word 00049h ; be 49 00 ; 0xc30cf vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc30d2 + mov es, ax ; 8e c0 ; 0xc30d5 + mov al, byte [es:si] ; 26 8a 04 ; 0xc30d7 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc30da vgabios.c:48 + mov si, strict word 0004ch ; be 4c 00 ; 0xc30dd vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc30e0 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc30e3 vgabios.c:58 + mov ax, ds ; 8c d8 ; 0xc30e6 vgabios.c:2150 + mov es, dx ; 8e c2 ; 0xc30e8 vgabios.c:72 + mov word [es:bx], 05503h ; 26 c7 07 03 55 ; 0xc30ea + mov [es:bx+002h], ds ; 26 8c 5f 02 ; 0xc30ef + lea di, [bx+004h] ; 8d 7f 04 ; 0xc30f3 vgabios.c:2155 + mov cx, strict word 0001eh ; b9 1e 00 ; 0xc30f6 + mov si, strict word 00049h ; be 49 00 ; 0xc30f9 + mov dx, strict word 00040h ; ba 40 00 ; 0xc30fc + jcxz 03107h ; e3 06 ; 0xc30ff + push DS ; 1e ; 0xc3101 + mov ds, dx ; 8e da ; 0xc3102 + rep movsb ; f3 a4 ; 0xc3104 + pop DS ; 1f ; 0xc3106 + mov si, 00084h ; be 84 00 ; 0xc3107 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc310a + mov es, ax ; 8e c0 ; 0xc310d + mov al, byte [es:si] ; 26 8a 04 ; 0xc310f + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc3112 vgabios.c:48 + lea si, [bx+022h] ; 8d 77 22 ; 0xc3114 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc3117 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc311a + lea di, [bx+023h] ; 8d 7f 23 ; 0xc311d vgabios.c:2157 + mov cx, strict word 00002h ; b9 02 00 ; 0xc3120 + mov si, 00085h ; be 85 00 ; 0xc3123 + mov dx, strict word 00040h ; ba 40 00 ; 0xc3126 + jcxz 03131h ; e3 06 ; 0xc3129 + push DS ; 1e ; 0xc312b + mov ds, dx ; 8e da ; 0xc312c + rep movsb ; f3 a4 ; 0xc312e + pop DS ; 1f ; 0xc3130 + mov si, 0008ah ; be 8a 00 ; 0xc3131 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3134 + mov es, ax ; 8e c0 ; 0xc3137 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3139 + lea si, [bx+025h] ; 8d 77 25 ; 0xc313c vgabios.c:48 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc313f vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc3142 + lea si, [bx+026h] ; 8d 77 26 ; 0xc3145 vgabios.c:2160 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc3148 vgabios.c:52 + lea si, [bx+027h] ; 8d 77 27 ; 0xc314c vgabios.c:2161 + mov word [es:si], strict word 00010h ; 26 c7 04 10 00 ; 0xc314f vgabios.c:62 + lea si, [bx+029h] ; 8d 77 29 ; 0xc3154 vgabios.c:2162 + mov byte [es:si], 008h ; 26 c6 04 08 ; 0xc3157 vgabios.c:52 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc315b vgabios.c:2163 + mov byte [es:si], 002h ; 26 c6 04 02 ; 0xc315e vgabios.c:52 + lea si, [bx+02bh] ; 8d 77 2b ; 0xc3162 vgabios.c:2164 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc3165 vgabios.c:52 + lea si, [bx+02ch] ; 8d 77 2c ; 0xc3169 vgabios.c:2165 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc316c vgabios.c:52 + lea si, [bx+02dh] ; 8d 77 2d ; 0xc3170 vgabios.c:2166 + mov byte [es:si], 021h ; 26 c6 04 21 ; 0xc3173 vgabios.c:52 + lea si, [bx+031h] ; 8d 77 31 ; 0xc3177 vgabios.c:2167 + mov byte [es:si], 003h ; 26 c6 04 03 ; 0xc317a vgabios.c:52 + lea si, [bx+032h] ; 8d 77 32 ; 0xc317e vgabios.c:2168 + mov byte [es:si], 000h ; 26 c6 04 00 ; 0xc3181 vgabios.c:52 + mov si, 00089h ; be 89 00 ; 0xc3185 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3188 + mov es, ax ; 8e c0 ; 0xc318b + mov al, byte [es:si] ; 26 8a 04 ; 0xc318d + mov dl, al ; 88 c2 ; 0xc3190 vgabios.c:2173 + and dl, 080h ; 80 e2 80 ; 0xc3192 + xor dh, dh ; 30 f6 ; 0xc3195 + mov CL, strict byte 006h ; b1 06 ; 0xc3197 + sar dx, CL ; d3 fa ; 0xc3199 + and AL, strict byte 010h ; 24 10 ; 0xc319b + xor ah, ah ; 30 e4 ; 0xc319d + mov CL, strict byte 004h ; b1 04 ; 0xc319f + sar ax, CL ; d3 f8 ; 0xc31a1 + or ax, dx ; 09 d0 ; 0xc31a3 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc31a5 vgabios.c:2174 + je short 031bbh ; 74 11 ; 0xc31a8 + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc31aa + je short 031b7h ; 74 08 ; 0xc31ad + test ax, ax ; 85 c0 ; 0xc31af + jne short 031bbh ; 75 08 ; 0xc31b1 + mov AL, strict byte 001h ; b0 01 ; 0xc31b3 vgabios.c:2175 + jmp short 031bdh ; eb 06 ; 0xc31b5 + mov AL, strict byte 002h ; b0 02 ; 0xc31b7 vgabios.c:2176 + jmp short 031bdh ; eb 02 ; 0xc31b9 + xor al, al ; 30 c0 ; 0xc31bb vgabios.c:2178 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc31bd vgabios.c:2180 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc31c0 vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc31c3 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc31c6 vgabios.c:2183 + cmp AL, strict byte 00eh ; 3c 0e ; 0xc31c9 + jc short 031edh ; 72 20 ; 0xc31cb + cmp AL, strict byte 012h ; 3c 12 ; 0xc31cd + jnbe short 031edh ; 77 1c ; 0xc31cf + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc31d1 vgabios.c:2184 + test ax, ax ; 85 c0 ; 0xc31d4 + je short 0322fh ; 74 57 ; 0xc31d6 + mov si, ax ; 89 c6 ; 0xc31d8 vgabios.c:2185 + shr si, 1 ; d1 ee ; 0xc31da + shr si, 1 ; d1 ee ; 0xc31dc + mov ax, 04000h ; b8 00 40 ; 0xc31de + xor dx, dx ; 31 d2 ; 0xc31e1 + div si ; f7 f6 ; 0xc31e3 + lea si, [bx+029h] ; 8d 77 29 ; 0xc31e5 + mov byte [es:si], al ; 26 88 04 ; 0xc31e8 vgabios.c:52 + jmp short 0322fh ; eb 42 ; 0xc31eb vgabios.c:2186 + lea si, [bx+029h] ; 8d 77 29 ; 0xc31ed + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc31f0 + cmp AL, strict byte 013h ; 3c 13 ; 0xc31f3 + jne short 03208h ; 75 11 ; 0xc31f5 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc31f7 vgabios.c:52 + mov byte [es:si], 001h ; 26 c6 04 01 ; 0xc31fa + lea si, [bx+027h] ; 8d 77 27 ; 0xc31fe vgabios.c:2188 + mov word [es:si], 00100h ; 26 c7 04 00 01 ; 0xc3201 vgabios.c:62 + jmp short 0322fh ; eb 27 ; 0xc3206 vgabios.c:2189 + cmp AL, strict byte 004h ; 3c 04 ; 0xc3208 + jc short 0322fh ; 72 23 ; 0xc320a + cmp AL, strict byte 006h ; 3c 06 ; 0xc320c + jnbe short 0322fh ; 77 1f ; 0xc320e + cmp word [bp-00ah], strict byte 00000h ; 83 7e f6 00 ; 0xc3210 vgabios.c:2191 + je short 03224h ; 74 0e ; 0xc3214 + mov ax, 04000h ; b8 00 40 ; 0xc3216 vgabios.c:2192 + xor dx, dx ; 31 d2 ; 0xc3219 + div word [bp-00ah] ; f7 76 f6 ; 0xc321b + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc321e vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc3221 + lea si, [bx+027h] ; 8d 77 27 ; 0xc3224 vgabios.c:2193 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc3227 vgabios.c:62 + mov word [es:si], strict word 00004h ; 26 c7 04 04 00 ; 0xc322a + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc322f vgabios.c:2195 + cmp AL, strict byte 006h ; 3c 06 ; 0xc3232 + je short 0323ah ; 74 04 ; 0xc3234 + cmp AL, strict byte 011h ; 3c 11 ; 0xc3236 + jne short 03245h ; 75 0b ; 0xc3238 + lea si, [bx+027h] ; 8d 77 27 ; 0xc323a vgabios.c:2196 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc323d vgabios.c:62 + mov word [es:si], strict word 00002h ; 26 c7 04 02 00 ; 0xc3240 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3245 vgabios.c:2198 + cmp AL, strict byte 004h ; 3c 04 ; 0xc3248 + jc short 032a1h ; 72 55 ; 0xc324a + cmp AL, strict byte 007h ; 3c 07 ; 0xc324c + je short 032a1h ; 74 51 ; 0xc324e + lea si, [bx+02dh] ; 8d 77 2d ; 0xc3250 vgabios.c:2199 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc3253 vgabios.c:52 + mov byte [es:si], 001h ; 26 c6 04 01 ; 0xc3256 + mov si, 00084h ; be 84 00 ; 0xc325a vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc325d + mov es, ax ; 8e c0 ; 0xc3260 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3262 + xor ah, ah ; 30 e4 ; 0xc3265 vgabios.c:48 + inc ax ; 40 ; 0xc3267 + mov si, 00085h ; be 85 00 ; 0xc3268 vgabios.c:47 + mov dl, byte [es:si] ; 26 8a 14 ; 0xc326b + xor dh, dh ; 30 f6 ; 0xc326e vgabios.c:48 + imul dx ; f7 ea ; 0xc3270 + cmp ax, 0015eh ; 3d 5e 01 ; 0xc3272 vgabios.c:2201 + jc short 03285h ; 72 0e ; 0xc3275 + jbe short 0328eh ; 76 15 ; 0xc3277 + cmp ax, 001e0h ; 3d e0 01 ; 0xc3279 + je short 03296h ; 74 18 ; 0xc327c + cmp ax, 00190h ; 3d 90 01 ; 0xc327e + je short 03292h ; 74 0f ; 0xc3281 + jmp short 03296h ; eb 11 ; 0xc3283 + cmp ax, 000c8h ; 3d c8 00 ; 0xc3285 + jne short 03296h ; 75 0c ; 0xc3288 + xor al, al ; 30 c0 ; 0xc328a vgabios.c:2202 + jmp short 03298h ; eb 0a ; 0xc328c + mov AL, strict byte 001h ; b0 01 ; 0xc328e vgabios.c:2203 + jmp short 03298h ; eb 06 ; 0xc3290 + mov AL, strict byte 002h ; b0 02 ; 0xc3292 vgabios.c:2204 + jmp short 03298h ; eb 02 ; 0xc3294 + mov AL, strict byte 003h ; b0 03 ; 0xc3296 vgabios.c:2206 + lea si, [bx+02ah] ; 8d 77 2a ; 0xc3298 vgabios.c:2208 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc329b vgabios.c:52 + mov byte [es:si], al ; 26 88 04 ; 0xc329e + lea di, [bx+033h] ; 8d 7f 33 ; 0xc32a1 vgabios.c:2211 + mov cx, strict word 0000dh ; b9 0d 00 ; 0xc32a4 + xor ax, ax ; 31 c0 ; 0xc32a7 + mov es, [bp-00ch] ; 8e 46 f4 ; 0xc32a9 + jcxz 032b0h ; e3 02 ; 0xc32ac + rep stosb ; f3 aa ; 0xc32ae + lea sp, [bp-006h] ; 8d 66 fa ; 0xc32b0 vgabios.c:2212 + pop di ; 5f ; 0xc32b3 + pop si ; 5e ; 0xc32b4 + pop cx ; 59 ; 0xc32b5 + pop bp ; 5d ; 0xc32b6 + retn ; c3 ; 0xc32b7 + ; disGetNextSymbol 0xc32b8 LB 0x12ac -> off=0x0 cb=0000000000000023 uValue=00000000000c32b8 'biosfn_read_video_state_size2' +biosfn_read_video_state_size2: ; 0xc32b8 LB 0x23 + push dx ; 52 ; 0xc32b8 vgabios.c:2215 + push bp ; 55 ; 0xc32b9 + mov bp, sp ; 89 e5 ; 0xc32ba + mov dx, ax ; 89 c2 ; 0xc32bc + xor ax, ax ; 31 c0 ; 0xc32be vgabios.c:2219 + test dl, 001h ; f6 c2 01 ; 0xc32c0 vgabios.c:2220 + je short 032c8h ; 74 03 ; 0xc32c3 + mov ax, strict word 00046h ; b8 46 00 ; 0xc32c5 vgabios.c:2221 + test dl, 002h ; f6 c2 02 ; 0xc32c8 vgabios.c:2223 + je short 032d0h ; 74 03 ; 0xc32cb + add ax, strict word 0002ah ; 05 2a 00 ; 0xc32cd vgabios.c:2224 + test dl, 004h ; f6 c2 04 ; 0xc32d0 vgabios.c:2226 + je short 032d8h ; 74 03 ; 0xc32d3 + add ax, 00304h ; 05 04 03 ; 0xc32d5 vgabios.c:2227 + pop bp ; 5d ; 0xc32d8 vgabios.c:2230 + pop dx ; 5a ; 0xc32d9 + retn ; c3 ; 0xc32da + ; disGetNextSymbol 0xc32db LB 0x1289 -> off=0x0 cb=000000000000001b uValue=00000000000c32db 'vga_get_video_state_size' +vga_get_video_state_size: ; 0xc32db LB 0x1b + push bp ; 55 ; 0xc32db vgabios.c:2232 + mov bp, sp ; 89 e5 ; 0xc32dc + push bx ; 53 ; 0xc32de + push cx ; 51 ; 0xc32df + mov bx, dx ; 89 d3 ; 0xc32e0 + call 032b8h ; e8 d3 ff ; 0xc32e2 vgabios.c:2235 + add ax, strict word 0003fh ; 05 3f 00 ; 0xc32e5 + mov CL, strict byte 006h ; b1 06 ; 0xc32e8 + shr ax, CL ; d3 e8 ; 0xc32ea + mov word [ss:bx], ax ; 36 89 07 ; 0xc32ec + lea sp, [bp-004h] ; 8d 66 fc ; 0xc32ef vgabios.c:2236 + pop cx ; 59 ; 0xc32f2 + pop bx ; 5b ; 0xc32f3 + pop bp ; 5d ; 0xc32f4 + retn ; c3 ; 0xc32f5 + ; disGetNextSymbol 0xc32f6 LB 0x126e -> off=0x0 cb=00000000000002d8 uValue=00000000000c32f6 'biosfn_save_video_state' +biosfn_save_video_state: ; 0xc32f6 LB 0x2d8 + push bp ; 55 ; 0xc32f6 vgabios.c:2238 + mov bp, sp ; 89 e5 ; 0xc32f7 + push cx ; 51 ; 0xc32f9 + push si ; 56 ; 0xc32fa + push di ; 57 ; 0xc32fb + push ax ; 50 ; 0xc32fc + push ax ; 50 ; 0xc32fd + push ax ; 50 ; 0xc32fe + mov cx, dx ; 89 d1 ; 0xc32ff + mov si, strict word 00063h ; be 63 00 ; 0xc3301 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3304 + mov es, ax ; 8e c0 ; 0xc3307 + mov di, word [es:si] ; 26 8b 3c ; 0xc3309 + mov si, di ; 89 fe ; 0xc330c vgabios.c:58 + test byte [bp-00ch], 001h ; f6 46 f4 01 ; 0xc330e vgabios.c:2243 + je short 0337ah ; 74 66 ; 0xc3312 + mov dx, 003c4h ; ba c4 03 ; 0xc3314 vgabios.c:2244 + in AL, DX ; ec ; 0xc3317 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3318 + mov es, cx ; 8e c1 ; 0xc331a vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc331c + inc bx ; 43 ; 0xc331f vgabios.c:2244 + mov dx, di ; 89 fa ; 0xc3320 + in AL, DX ; ec ; 0xc3322 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3323 + mov byte [es:bx], al ; 26 88 07 ; 0xc3325 vgabios.c:52 + inc bx ; 43 ; 0xc3328 vgabios.c:2245 + mov dx, 003ceh ; ba ce 03 ; 0xc3329 + in AL, DX ; ec ; 0xc332c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc332d + mov byte [es:bx], al ; 26 88 07 ; 0xc332f vgabios.c:52 + inc bx ; 43 ; 0xc3332 vgabios.c:2246 + mov dx, 003dah ; ba da 03 ; 0xc3333 + in AL, DX ; ec ; 0xc3336 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3337 + mov dx, 003c0h ; ba c0 03 ; 0xc3339 vgabios.c:2248 + in AL, DX ; ec ; 0xc333c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc333d + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc333f + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc3342 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3345 + inc bx ; 43 ; 0xc3348 vgabios.c:2249 + mov dx, 003cah ; ba ca 03 ; 0xc3349 + in AL, DX ; ec ; 0xc334c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc334d + mov byte [es:bx], al ; 26 88 07 ; 0xc334f vgabios.c:52 + mov ax, strict word 00001h ; b8 01 00 ; 0xc3352 vgabios.c:2252 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc3355 + add bx, ax ; 01 c3 ; 0xc3358 vgabios.c:2250 + jmp short 03362h ; eb 06 ; 0xc335a + cmp word [bp-008h], strict byte 00004h ; 83 7e f8 04 ; 0xc335c + jnbe short 0337dh ; 77 1b ; 0xc3360 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3362 vgabios.c:2253 + mov dx, 003c4h ; ba c4 03 ; 0xc3365 + out DX, AL ; ee ; 0xc3368 + mov dx, 003c5h ; ba c5 03 ; 0xc3369 vgabios.c:2254 + in AL, DX ; ec ; 0xc336c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc336d + mov es, cx ; 8e c1 ; 0xc336f vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3371 + inc bx ; 43 ; 0xc3374 vgabios.c:2254 + inc word [bp-008h] ; ff 46 f8 ; 0xc3375 vgabios.c:2255 + jmp short 0335ch ; eb e2 ; 0xc3378 + jmp near 0342ah ; e9 ad 00 ; 0xc337a + xor al, al ; 30 c0 ; 0xc337d vgabios.c:2256 + mov dx, 003c4h ; ba c4 03 ; 0xc337f + out DX, AL ; ee ; 0xc3382 + mov dx, 003c5h ; ba c5 03 ; 0xc3383 vgabios.c:2257 + in AL, DX ; ec ; 0xc3386 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3387 + mov es, cx ; 8e c1 ; 0xc3389 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc338b + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc338e vgabios.c:2259 + inc bx ; 43 ; 0xc3393 vgabios.c:2257 + jmp short 0339ch ; eb 06 ; 0xc3394 + cmp word [bp-008h], strict byte 00018h ; 83 7e f8 18 ; 0xc3396 + jnbe short 033b3h ; 77 17 ; 0xc339a + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc339c vgabios.c:2260 + mov dx, si ; 89 f2 ; 0xc339f + out DX, AL ; ee ; 0xc33a1 + lea dx, [si+001h] ; 8d 54 01 ; 0xc33a2 vgabios.c:2261 + in AL, DX ; ec ; 0xc33a5 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc33a6 + mov es, cx ; 8e c1 ; 0xc33a8 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc33aa + inc bx ; 43 ; 0xc33ad vgabios.c:2261 + inc word [bp-008h] ; ff 46 f8 ; 0xc33ae vgabios.c:2262 + jmp short 03396h ; eb e3 ; 0xc33b1 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc33b3 vgabios.c:2264 + jmp short 033c0h ; eb 06 ; 0xc33b8 + cmp word [bp-008h], strict byte 00013h ; 83 7e f8 13 ; 0xc33ba + jnbe short 033e4h ; 77 24 ; 0xc33be + mov dx, 003dah ; ba da 03 ; 0xc33c0 vgabios.c:2265 + in AL, DX ; ec ; 0xc33c3 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc33c4 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc33c6 vgabios.c:2266 + and ax, strict word 00020h ; 25 20 00 ; 0xc33c9 + or ax, word [bp-008h] ; 0b 46 f8 ; 0xc33cc + mov dx, 003c0h ; ba c0 03 ; 0xc33cf + out DX, AL ; ee ; 0xc33d2 + mov dx, 003c1h ; ba c1 03 ; 0xc33d3 vgabios.c:2267 + in AL, DX ; ec ; 0xc33d6 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc33d7 + mov es, cx ; 8e c1 ; 0xc33d9 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc33db + inc bx ; 43 ; 0xc33de vgabios.c:2267 + inc word [bp-008h] ; ff 46 f8 ; 0xc33df vgabios.c:2268 + jmp short 033bah ; eb d6 ; 0xc33e2 + mov dx, 003dah ; ba da 03 ; 0xc33e4 vgabios.c:2269 + in AL, DX ; ec ; 0xc33e7 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc33e8 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc33ea vgabios.c:2271 + jmp short 033f7h ; eb 06 ; 0xc33ef + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc33f1 + jnbe short 0340fh ; 77 18 ; 0xc33f5 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc33f7 vgabios.c:2272 + mov dx, 003ceh ; ba ce 03 ; 0xc33fa + out DX, AL ; ee ; 0xc33fd + mov dx, 003cfh ; ba cf 03 ; 0xc33fe vgabios.c:2273 + in AL, DX ; ec ; 0xc3401 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3402 + mov es, cx ; 8e c1 ; 0xc3404 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3406 + inc bx ; 43 ; 0xc3409 vgabios.c:2273 + inc word [bp-008h] ; ff 46 f8 ; 0xc340a vgabios.c:2274 + jmp short 033f1h ; eb e2 ; 0xc340d + mov es, cx ; 8e c1 ; 0xc340f vgabios.c:62 + mov word [es:bx], si ; 26 89 37 ; 0xc3411 + inc bx ; 43 ; 0xc3414 vgabios.c:2276 + inc bx ; 43 ; 0xc3415 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc3416 vgabios.c:52 + inc bx ; 43 ; 0xc341a vgabios.c:2279 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc341b vgabios.c:52 + inc bx ; 43 ; 0xc341f vgabios.c:2280 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc3420 vgabios.c:52 + inc bx ; 43 ; 0xc3424 vgabios.c:2281 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc3425 vgabios.c:52 + inc bx ; 43 ; 0xc3429 vgabios.c:2282 + test byte [bp-00ch], 002h ; f6 46 f4 02 ; 0xc342a vgabios.c:2284 + jne short 03433h ; 75 03 ; 0xc342e + jmp near 03572h ; e9 3f 01 ; 0xc3430 + mov si, strict word 00049h ; be 49 00 ; 0xc3433 vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3436 + mov es, ax ; 8e c0 ; 0xc3439 + mov al, byte [es:si] ; 26 8a 04 ; 0xc343b + mov es, cx ; 8e c1 ; 0xc343e vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3440 + inc bx ; 43 ; 0xc3443 vgabios.c:2285 + mov si, strict word 0004ah ; be 4a 00 ; 0xc3444 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3447 + mov es, ax ; 8e c0 ; 0xc344a + mov ax, word [es:si] ; 26 8b 04 ; 0xc344c + mov es, cx ; 8e c1 ; 0xc344f vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3451 + inc bx ; 43 ; 0xc3454 vgabios.c:2286 + inc bx ; 43 ; 0xc3455 + mov si, strict word 0004ch ; be 4c 00 ; 0xc3456 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3459 + mov es, ax ; 8e c0 ; 0xc345c + mov ax, word [es:si] ; 26 8b 04 ; 0xc345e + mov es, cx ; 8e c1 ; 0xc3461 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3463 + inc bx ; 43 ; 0xc3466 vgabios.c:2287 + inc bx ; 43 ; 0xc3467 + mov si, strict word 00063h ; be 63 00 ; 0xc3468 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc346b + mov es, ax ; 8e c0 ; 0xc346e + mov ax, word [es:si] ; 26 8b 04 ; 0xc3470 + mov es, cx ; 8e c1 ; 0xc3473 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3475 + inc bx ; 43 ; 0xc3478 vgabios.c:2288 + inc bx ; 43 ; 0xc3479 + mov si, 00084h ; be 84 00 ; 0xc347a vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc347d + mov es, ax ; 8e c0 ; 0xc3480 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3482 + mov es, cx ; 8e c1 ; 0xc3485 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3487 + inc bx ; 43 ; 0xc348a vgabios.c:2289 + mov si, 00085h ; be 85 00 ; 0xc348b vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc348e + mov es, ax ; 8e c0 ; 0xc3491 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3493 + mov es, cx ; 8e c1 ; 0xc3496 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3498 + inc bx ; 43 ; 0xc349b vgabios.c:2290 + inc bx ; 43 ; 0xc349c + mov si, 00087h ; be 87 00 ; 0xc349d vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc34a0 + mov es, ax ; 8e c0 ; 0xc34a3 + mov al, byte [es:si] ; 26 8a 04 ; 0xc34a5 + mov es, cx ; 8e c1 ; 0xc34a8 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc34aa + inc bx ; 43 ; 0xc34ad vgabios.c:2291 + mov si, 00088h ; be 88 00 ; 0xc34ae vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc34b1 + mov es, ax ; 8e c0 ; 0xc34b4 + mov al, byte [es:si] ; 26 8a 04 ; 0xc34b6 + mov es, cx ; 8e c1 ; 0xc34b9 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc34bb + inc bx ; 43 ; 0xc34be vgabios.c:2292 + mov si, 00089h ; be 89 00 ; 0xc34bf vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc34c2 + mov es, ax ; 8e c0 ; 0xc34c5 + mov al, byte [es:si] ; 26 8a 04 ; 0xc34c7 + mov es, cx ; 8e c1 ; 0xc34ca vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc34cc + inc bx ; 43 ; 0xc34cf vgabios.c:2293 + mov si, strict word 00060h ; be 60 00 ; 0xc34d0 vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc34d3 + mov es, ax ; 8e c0 ; 0xc34d6 + mov ax, word [es:si] ; 26 8b 04 ; 0xc34d8 + mov es, cx ; 8e c1 ; 0xc34db vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc34dd + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc34e0 vgabios.c:2295 + inc bx ; 43 ; 0xc34e5 vgabios.c:2294 + inc bx ; 43 ; 0xc34e6 + jmp short 034efh ; eb 06 ; 0xc34e7 + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc34e9 + jnc short 0350bh ; 73 1c ; 0xc34ed + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc34ef vgabios.c:2296 + sal si, 1 ; d1 e6 ; 0xc34f2 + add si, strict byte 00050h ; 83 c6 50 ; 0xc34f4 + mov ax, strict word 00040h ; b8 40 00 ; 0xc34f7 vgabios.c:57 + mov es, ax ; 8e c0 ; 0xc34fa + mov ax, word [es:si] ; 26 8b 04 ; 0xc34fc + mov es, cx ; 8e c1 ; 0xc34ff vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3501 + inc bx ; 43 ; 0xc3504 vgabios.c:2297 + inc bx ; 43 ; 0xc3505 + inc word [bp-008h] ; ff 46 f8 ; 0xc3506 vgabios.c:2298 + jmp short 034e9h ; eb de ; 0xc3509 + mov si, strict word 0004eh ; be 4e 00 ; 0xc350b vgabios.c:57 + mov ax, strict word 00040h ; b8 40 00 ; 0xc350e + mov es, ax ; 8e c0 ; 0xc3511 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3513 + mov es, cx ; 8e c1 ; 0xc3516 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc3518 + inc bx ; 43 ; 0xc351b vgabios.c:2299 + inc bx ; 43 ; 0xc351c + mov si, strict word 00062h ; be 62 00 ; 0xc351d vgabios.c:47 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3520 + mov es, ax ; 8e c0 ; 0xc3523 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3525 + mov es, cx ; 8e c1 ; 0xc3528 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc352a + inc bx ; 43 ; 0xc352d vgabios.c:2300 + mov si, strict word 0007ch ; be 7c 00 ; 0xc352e vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc3531 + mov es, ax ; 8e c0 ; 0xc3533 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3535 + mov es, cx ; 8e c1 ; 0xc3538 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc353a + inc bx ; 43 ; 0xc353d vgabios.c:2302 + inc bx ; 43 ; 0xc353e + mov si, strict word 0007eh ; be 7e 00 ; 0xc353f vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc3542 + mov es, ax ; 8e c0 ; 0xc3544 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3546 + mov es, cx ; 8e c1 ; 0xc3549 vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc354b + inc bx ; 43 ; 0xc354e vgabios.c:2303 + inc bx ; 43 ; 0xc354f + mov si, 0010ch ; be 0c 01 ; 0xc3550 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc3553 + mov es, ax ; 8e c0 ; 0xc3555 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3557 + mov es, cx ; 8e c1 ; 0xc355a vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc355c + inc bx ; 43 ; 0xc355f vgabios.c:2304 + inc bx ; 43 ; 0xc3560 + mov si, 0010eh ; be 0e 01 ; 0xc3561 vgabios.c:57 + xor ax, ax ; 31 c0 ; 0xc3564 + mov es, ax ; 8e c0 ; 0xc3566 + mov ax, word [es:si] ; 26 8b 04 ; 0xc3568 + mov es, cx ; 8e c1 ; 0xc356b vgabios.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc356d + inc bx ; 43 ; 0xc3570 vgabios.c:2305 + inc bx ; 43 ; 0xc3571 + test byte [bp-00ch], 004h ; f6 46 f4 04 ; 0xc3572 vgabios.c:2307 + je short 035c4h ; 74 4c ; 0xc3576 + mov dx, 003c7h ; ba c7 03 ; 0xc3578 vgabios.c:2309 + in AL, DX ; ec ; 0xc357b + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc357c + mov es, cx ; 8e c1 ; 0xc357e vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc3580 + inc bx ; 43 ; 0xc3583 vgabios.c:2309 + mov dx, 003c8h ; ba c8 03 ; 0xc3584 + in AL, DX ; ec ; 0xc3587 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3588 + mov byte [es:bx], al ; 26 88 07 ; 0xc358a vgabios.c:52 + inc bx ; 43 ; 0xc358d vgabios.c:2310 + mov dx, 003c6h ; ba c6 03 ; 0xc358e + in AL, DX ; ec ; 0xc3591 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3592 + mov byte [es:bx], al ; 26 88 07 ; 0xc3594 vgabios.c:52 + inc bx ; 43 ; 0xc3597 vgabios.c:2311 + xor al, al ; 30 c0 ; 0xc3598 + mov dx, 003c8h ; ba c8 03 ; 0xc359a + out DX, AL ; ee ; 0xc359d + xor ah, ah ; 30 e4 ; 0xc359e vgabios.c:2314 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc35a0 + jmp short 035ach ; eb 07 ; 0xc35a3 + cmp word [bp-008h], 00300h ; 81 7e f8 00 03 ; 0xc35a5 + jnc short 035bdh ; 73 11 ; 0xc35aa + mov dx, 003c9h ; ba c9 03 ; 0xc35ac vgabios.c:2315 + in AL, DX ; ec ; 0xc35af + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc35b0 + mov es, cx ; 8e c1 ; 0xc35b2 vgabios.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc35b4 + inc bx ; 43 ; 0xc35b7 vgabios.c:2315 + inc word [bp-008h] ; ff 46 f8 ; 0xc35b8 vgabios.c:2316 + jmp short 035a5h ; eb e8 ; 0xc35bb + mov es, cx ; 8e c1 ; 0xc35bd vgabios.c:52 + mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xc35bf + inc bx ; 43 ; 0xc35c3 vgabios.c:2317 + mov ax, bx ; 89 d8 ; 0xc35c4 vgabios.c:2320 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc35c6 + pop di ; 5f ; 0xc35c9 + pop si ; 5e ; 0xc35ca + pop cx ; 59 ; 0xc35cb + pop bp ; 5d ; 0xc35cc + retn ; c3 ; 0xc35cd + ; disGetNextSymbol 0xc35ce LB 0xf96 -> off=0x0 cb=00000000000002ba uValue=00000000000c35ce 'biosfn_restore_video_state' +biosfn_restore_video_state: ; 0xc35ce LB 0x2ba + push bp ; 55 ; 0xc35ce vgabios.c:2322 + mov bp, sp ; 89 e5 ; 0xc35cf + push cx ; 51 ; 0xc35d1 + push si ; 56 ; 0xc35d2 + push di ; 57 ; 0xc35d3 + sub sp, strict byte 00008h ; 83 ec 08 ; 0xc35d4 + push ax ; 50 ; 0xc35d7 + mov cx, dx ; 89 d1 ; 0xc35d8 + test byte [bp-010h], 001h ; f6 46 f0 01 ; 0xc35da vgabios.c:2326 + je short 03654h ; 74 74 ; 0xc35de + mov dx, 003dah ; ba da 03 ; 0xc35e0 vgabios.c:2328 + in AL, DX ; ec ; 0xc35e3 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc35e4 + lea si, [bx+040h] ; 8d 77 40 ; 0xc35e6 vgabios.c:2330 + mov es, cx ; 8e c1 ; 0xc35e9 vgabios.c:57 + mov ax, word [es:si] ; 26 8b 04 ; 0xc35eb + mov word [bp-00ch], ax ; 89 46 f4 ; 0xc35ee vgabios.c:58 + mov si, bx ; 89 de ; 0xc35f1 vgabios.c:2331 + mov word [bp-008h], strict word 00001h ; c7 46 f8 01 00 ; 0xc35f3 vgabios.c:2334 + add bx, strict byte 00005h ; 83 c3 05 ; 0xc35f8 vgabios.c:2332 + jmp short 03603h ; eb 06 ; 0xc35fb + cmp word [bp-008h], strict byte 00004h ; 83 7e f8 04 ; 0xc35fd + jnbe short 03619h ; 77 16 ; 0xc3601 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3603 vgabios.c:2335 + mov dx, 003c4h ; ba c4 03 ; 0xc3606 + out DX, AL ; ee ; 0xc3609 + mov es, cx ; 8e c1 ; 0xc360a vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc360c + mov dx, 003c5h ; ba c5 03 ; 0xc360f vgabios.c:48 + out DX, AL ; ee ; 0xc3612 + inc bx ; 43 ; 0xc3613 vgabios.c:2336 + inc word [bp-008h] ; ff 46 f8 ; 0xc3614 vgabios.c:2337 + jmp short 035fdh ; eb e4 ; 0xc3617 + xor al, al ; 30 c0 ; 0xc3619 vgabios.c:2338 + mov dx, 003c4h ; ba c4 03 ; 0xc361b + out DX, AL ; ee ; 0xc361e + mov es, cx ; 8e c1 ; 0xc361f vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3621 + mov dx, 003c5h ; ba c5 03 ; 0xc3624 vgabios.c:48 + out DX, AL ; ee ; 0xc3627 + inc bx ; 43 ; 0xc3628 vgabios.c:2339 + mov dx, 003cch ; ba cc 03 ; 0xc3629 + in AL, DX ; ec ; 0xc362c + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc362d + and AL, strict byte 0feh ; 24 fe ; 0xc362f + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc3631 + cmp word [bp-00ch], 003d4h ; 81 7e f4 d4 03 ; 0xc3634 vgabios.c:2343 + jne short 0363fh ; 75 04 ; 0xc3639 + or byte [bp-00eh], 001h ; 80 4e f2 01 ; 0xc363b vgabios.c:2344 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc363f vgabios.c:2345 + mov dx, 003c2h ; ba c2 03 ; 0xc3642 + out DX, AL ; ee ; 0xc3645 + mov ax, strict word 00011h ; b8 11 00 ; 0xc3646 vgabios.c:2348 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc3649 + out DX, ax ; ef ; 0xc364c + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc364d vgabios.c:2350 + jmp short 0365dh ; eb 09 ; 0xc3652 + jmp near 03717h ; e9 c0 00 ; 0xc3654 + cmp word [bp-008h], strict byte 00018h ; 83 7e f8 18 ; 0xc3657 + jnbe short 03677h ; 77 1a ; 0xc365b + cmp word [bp-008h], strict byte 00011h ; 83 7e f8 11 ; 0xc365d vgabios.c:2351 + je short 03671h ; 74 0e ; 0xc3661 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc3663 vgabios.c:2352 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc3666 + out DX, AL ; ee ; 0xc3669 + mov es, cx ; 8e c1 ; 0xc366a vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc366c + inc dx ; 42 ; 0xc366f vgabios.c:48 + out DX, AL ; ee ; 0xc3670 + inc bx ; 43 ; 0xc3671 vgabios.c:2355 + inc word [bp-008h] ; ff 46 f8 ; 0xc3672 vgabios.c:2356 + jmp short 03657h ; eb e0 ; 0xc3675 + mov AL, strict byte 011h ; b0 11 ; 0xc3677 vgabios.c:2358 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc3679 + out DX, AL ; ee ; 0xc367c + lea di, [word bx-00007h] ; 8d bf f9 ff ; 0xc367d vgabios.c:2359 + mov es, cx ; 8e c1 ; 0xc3681 vgabios.c:47 + mov al, byte [es:di] ; 26 8a 05 ; 0xc3683 + inc dx ; 42 ; 0xc3686 vgabios.c:48 + out DX, AL ; ee ; 0xc3687 + lea di, [si+003h] ; 8d 7c 03 ; 0xc3688 vgabios.c:2362 + mov dl, byte [es:di] ; 26 8a 15 ; 0xc368b vgabios.c:47 + xor dh, dh ; 30 f6 ; 0xc368e vgabios.c:48 + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc3690 + mov dx, 003dah ; ba da 03 ; 0xc3693 vgabios.c:2363 + in AL, DX ; ec ; 0xc3696 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3697 + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc3699 vgabios.c:2364 + jmp short 036a6h ; eb 06 ; 0xc369e + cmp word [bp-008h], strict byte 00013h ; 83 7e f8 13 ; 0xc36a0 + jnbe short 036bfh ; 77 19 ; 0xc36a4 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc36a6 vgabios.c:2365 + and ax, strict word 00020h ; 25 20 00 ; 0xc36a9 + or ax, word [bp-008h] ; 0b 46 f8 ; 0xc36ac + mov dx, 003c0h ; ba c0 03 ; 0xc36af + out DX, AL ; ee ; 0xc36b2 + mov es, cx ; 8e c1 ; 0xc36b3 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc36b5 + out DX, AL ; ee ; 0xc36b8 vgabios.c:48 + inc bx ; 43 ; 0xc36b9 vgabios.c:2366 + inc word [bp-008h] ; ff 46 f8 ; 0xc36ba vgabios.c:2367 + jmp short 036a0h ; eb e1 ; 0xc36bd + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc36bf vgabios.c:2368 + mov dx, 003c0h ; ba c0 03 ; 0xc36c2 + out DX, AL ; ee ; 0xc36c5 + mov dx, 003dah ; ba da 03 ; 0xc36c6 vgabios.c:2369 + in AL, DX ; ec ; 0xc36c9 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc36ca + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc36cc vgabios.c:2371 + jmp short 036d9h ; eb 06 ; 0xc36d1 + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc36d3 + jnbe short 036efh ; 77 16 ; 0xc36d7 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc36d9 vgabios.c:2372 + mov dx, 003ceh ; ba ce 03 ; 0xc36dc + out DX, AL ; ee ; 0xc36df + mov es, cx ; 8e c1 ; 0xc36e0 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc36e2 + mov dx, 003cfh ; ba cf 03 ; 0xc36e5 vgabios.c:48 + out DX, AL ; ee ; 0xc36e8 + inc bx ; 43 ; 0xc36e9 vgabios.c:2373 + inc word [bp-008h] ; ff 46 f8 ; 0xc36ea vgabios.c:2374 + jmp short 036d3h ; eb e4 ; 0xc36ed + add bx, strict byte 00006h ; 83 c3 06 ; 0xc36ef vgabios.c:2375 + mov es, cx ; 8e c1 ; 0xc36f2 vgabios.c:47 + mov al, byte [es:si] ; 26 8a 04 ; 0xc36f4 + mov dx, 003c4h ; ba c4 03 ; 0xc36f7 vgabios.c:48 + out DX, AL ; ee ; 0xc36fa + inc si ; 46 ; 0xc36fb vgabios.c:2378 + mov al, byte [es:si] ; 26 8a 04 ; 0xc36fc vgabios.c:47 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc36ff vgabios.c:48 + out DX, AL ; ee ; 0xc3702 + inc si ; 46 ; 0xc3703 vgabios.c:2379 + mov al, byte [es:si] ; 26 8a 04 ; 0xc3704 vgabios.c:47 + mov dx, 003ceh ; ba ce 03 ; 0xc3707 vgabios.c:48 + out DX, AL ; ee ; 0xc370a + inc si ; 46 ; 0xc370b vgabios.c:2380 + inc si ; 46 ; 0xc370c + mov al, byte [es:si] ; 26 8a 04 ; 0xc370d vgabios.c:47 + mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xc3710 vgabios.c:48 + add dx, strict byte 00006h ; 83 c2 06 ; 0xc3713 + out DX, AL ; ee ; 0xc3716 + test byte [bp-010h], 002h ; f6 46 f0 02 ; 0xc3717 vgabios.c:2384 + jne short 03720h ; 75 03 ; 0xc371b + jmp near 0383bh ; e9 1b 01 ; 0xc371d + mov es, cx ; 8e c1 ; 0xc3720 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3722 + mov si, strict word 00049h ; be 49 00 ; 0xc3725 vgabios.c:52 + mov dx, strict word 00040h ; ba 40 00 ; 0xc3728 + mov es, dx ; 8e c2 ; 0xc372b + mov byte [es:si], al ; 26 88 04 ; 0xc372d + inc bx ; 43 ; 0xc3730 vgabios.c:2385 + mov es, cx ; 8e c1 ; 0xc3731 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3733 + mov si, strict word 0004ah ; be 4a 00 ; 0xc3736 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3739 + mov word [es:si], ax ; 26 89 04 ; 0xc373b + inc bx ; 43 ; 0xc373e vgabios.c:2386 + inc bx ; 43 ; 0xc373f + mov es, cx ; 8e c1 ; 0xc3740 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3742 + mov si, strict word 0004ch ; be 4c 00 ; 0xc3745 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3748 + mov word [es:si], ax ; 26 89 04 ; 0xc374a + inc bx ; 43 ; 0xc374d vgabios.c:2387 + inc bx ; 43 ; 0xc374e + mov es, cx ; 8e c1 ; 0xc374f vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3751 + mov si, strict word 00063h ; be 63 00 ; 0xc3754 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3757 + mov word [es:si], ax ; 26 89 04 ; 0xc3759 + inc bx ; 43 ; 0xc375c vgabios.c:2388 + inc bx ; 43 ; 0xc375d + mov es, cx ; 8e c1 ; 0xc375e vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3760 + mov si, 00084h ; be 84 00 ; 0xc3763 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3766 + mov byte [es:si], al ; 26 88 04 ; 0xc3768 + inc bx ; 43 ; 0xc376b vgabios.c:2389 + mov es, cx ; 8e c1 ; 0xc376c vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc376e + mov si, 00085h ; be 85 00 ; 0xc3771 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3774 + mov word [es:si], ax ; 26 89 04 ; 0xc3776 + inc bx ; 43 ; 0xc3779 vgabios.c:2390 + inc bx ; 43 ; 0xc377a + mov es, cx ; 8e c1 ; 0xc377b vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc377d + mov si, 00087h ; be 87 00 ; 0xc3780 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3783 + mov byte [es:si], al ; 26 88 04 ; 0xc3785 + inc bx ; 43 ; 0xc3788 vgabios.c:2391 + mov es, cx ; 8e c1 ; 0xc3789 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc378b + mov si, 00088h ; be 88 00 ; 0xc378e vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc3791 + mov byte [es:si], al ; 26 88 04 ; 0xc3793 + inc bx ; 43 ; 0xc3796 vgabios.c:2392 + mov es, cx ; 8e c1 ; 0xc3797 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3799 + mov si, 00089h ; be 89 00 ; 0xc379c vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc379f + mov byte [es:si], al ; 26 88 04 ; 0xc37a1 + inc bx ; 43 ; 0xc37a4 vgabios.c:2393 + mov es, cx ; 8e c1 ; 0xc37a5 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc37a7 + mov si, strict word 00060h ; be 60 00 ; 0xc37aa vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc37ad + mov word [es:si], ax ; 26 89 04 ; 0xc37af + mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xc37b2 vgabios.c:2395 + inc bx ; 43 ; 0xc37b7 vgabios.c:2394 + inc bx ; 43 ; 0xc37b8 + jmp short 037c1h ; eb 06 ; 0xc37b9 + cmp word [bp-008h], strict byte 00008h ; 83 7e f8 08 ; 0xc37bb + jnc short 037ddh ; 73 1c ; 0xc37bf + mov es, cx ; 8e c1 ; 0xc37c1 vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc37c3 + mov si, word [bp-008h] ; 8b 76 f8 ; 0xc37c6 vgabios.c:58 + sal si, 1 ; d1 e6 ; 0xc37c9 + add si, strict byte 00050h ; 83 c6 50 ; 0xc37cb + mov dx, strict word 00040h ; ba 40 00 ; 0xc37ce vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc37d1 + mov word [es:si], ax ; 26 89 04 ; 0xc37d3 + inc bx ; 43 ; 0xc37d6 vgabios.c:2397 + inc bx ; 43 ; 0xc37d7 + inc word [bp-008h] ; ff 46 f8 ; 0xc37d8 vgabios.c:2398 + jmp short 037bbh ; eb de ; 0xc37db + mov es, cx ; 8e c1 ; 0xc37dd vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc37df + mov si, strict word 0004eh ; be 4e 00 ; 0xc37e2 vgabios.c:62 + mov dx, strict word 00040h ; ba 40 00 ; 0xc37e5 + mov es, dx ; 8e c2 ; 0xc37e8 + mov word [es:si], ax ; 26 89 04 ; 0xc37ea + inc bx ; 43 ; 0xc37ed vgabios.c:2399 + inc bx ; 43 ; 0xc37ee + mov es, cx ; 8e c1 ; 0xc37ef vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc37f1 + mov si, strict word 00062h ; be 62 00 ; 0xc37f4 vgabios.c:52 + mov es, dx ; 8e c2 ; 0xc37f7 + mov byte [es:si], al ; 26 88 04 ; 0xc37f9 + inc bx ; 43 ; 0xc37fc vgabios.c:2400 + mov es, cx ; 8e c1 ; 0xc37fd vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc37ff + mov si, strict word 0007ch ; be 7c 00 ; 0xc3802 vgabios.c:62 + xor dx, dx ; 31 d2 ; 0xc3805 + mov es, dx ; 8e c2 ; 0xc3807 + mov word [es:si], ax ; 26 89 04 ; 0xc3809 + inc bx ; 43 ; 0xc380c vgabios.c:2402 + inc bx ; 43 ; 0xc380d + mov es, cx ; 8e c1 ; 0xc380e vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc3810 + mov si, strict word 0007eh ; be 7e 00 ; 0xc3813 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3816 + mov word [es:si], ax ; 26 89 04 ; 0xc3818 + inc bx ; 43 ; 0xc381b vgabios.c:2403 + inc bx ; 43 ; 0xc381c + mov es, cx ; 8e c1 ; 0xc381d vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc381f + mov si, 0010ch ; be 0c 01 ; 0xc3822 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3825 + mov word [es:si], ax ; 26 89 04 ; 0xc3827 + inc bx ; 43 ; 0xc382a vgabios.c:2404 + inc bx ; 43 ; 0xc382b + mov es, cx ; 8e c1 ; 0xc382c vgabios.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc382e + mov si, 0010eh ; be 0e 01 ; 0xc3831 vgabios.c:62 + mov es, dx ; 8e c2 ; 0xc3834 + mov word [es:si], ax ; 26 89 04 ; 0xc3836 + inc bx ; 43 ; 0xc3839 vgabios.c:2405 + inc bx ; 43 ; 0xc383a + test byte [bp-010h], 004h ; f6 46 f0 04 ; 0xc383b vgabios.c:2407 + je short 0387eh ; 74 3d ; 0xc383f + inc bx ; 43 ; 0xc3841 vgabios.c:2408 + mov es, cx ; 8e c1 ; 0xc3842 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3844 + xor ah, ah ; 30 e4 ; 0xc3847 vgabios.c:48 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc3849 + inc bx ; 43 ; 0xc384c vgabios.c:2409 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc384d vgabios.c:47 + mov dx, 003c6h ; ba c6 03 ; 0xc3850 vgabios.c:48 + out DX, AL ; ee ; 0xc3853 + inc bx ; 43 ; 0xc3854 vgabios.c:2410 + xor al, al ; 30 c0 ; 0xc3855 + mov dx, 003c8h ; ba c8 03 ; 0xc3857 + out DX, AL ; ee ; 0xc385a + mov word [bp-008h], ax ; 89 46 f8 ; 0xc385b vgabios.c:2413 + jmp short 03867h ; eb 07 ; 0xc385e + cmp word [bp-008h], 00300h ; 81 7e f8 00 03 ; 0xc3860 + jnc short 03876h ; 73 0f ; 0xc3865 + mov es, cx ; 8e c1 ; 0xc3867 vgabios.c:47 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc3869 + mov dx, 003c9h ; ba c9 03 ; 0xc386c vgabios.c:48 + out DX, AL ; ee ; 0xc386f + inc bx ; 43 ; 0xc3870 vgabios.c:2414 + inc word [bp-008h] ; ff 46 f8 ; 0xc3871 vgabios.c:2415 + jmp short 03860h ; eb ea ; 0xc3874 + inc bx ; 43 ; 0xc3876 vgabios.c:2416 + mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xc3877 + mov dx, 003c8h ; ba c8 03 ; 0xc387a + out DX, AL ; ee ; 0xc387d + mov ax, bx ; 89 d8 ; 0xc387e vgabios.c:2420 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc3880 + pop di ; 5f ; 0xc3883 + pop si ; 5e ; 0xc3884 + pop cx ; 59 ; 0xc3885 + pop bp ; 5d ; 0xc3886 + retn ; c3 ; 0xc3887 + ; disGetNextSymbol 0xc3888 LB 0xcdc -> off=0x0 cb=000000000000002b uValue=00000000000c3888 'find_vga_entry' +find_vga_entry: ; 0xc3888 LB 0x2b + push bx ; 53 ; 0xc3888 vgabios.c:2429 + push cx ; 51 ; 0xc3889 + push dx ; 52 ; 0xc388a + push bp ; 55 ; 0xc388b + mov bp, sp ; 89 e5 ; 0xc388c + mov dl, al ; 88 c2 ; 0xc388e + mov AH, strict byte 0ffh ; b4 ff ; 0xc3890 vgabios.c:2431 + xor al, al ; 30 c0 ; 0xc3892 vgabios.c:2432 + jmp short 0389ch ; eb 06 ; 0xc3894 + db 0feh, 0c0h + ; inc al ; fe c0 ; 0xc3896 vgabios.c:2433 + cmp AL, strict byte 00fh ; 3c 0f ; 0xc3898 + jnbe short 038ach ; 77 10 ; 0xc389a + mov bl, al ; 88 c3 ; 0xc389c + xor bh, bh ; 30 ff ; 0xc389e + mov CL, strict byte 003h ; b1 03 ; 0xc38a0 + sal bx, CL ; d3 e3 ; 0xc38a2 + cmp dl, byte [bx+047afh] ; 3a 97 af 47 ; 0xc38a4 + jne short 03896h ; 75 ec ; 0xc38a8 + mov ah, al ; 88 c4 ; 0xc38aa + mov al, ah ; 88 e0 ; 0xc38ac vgabios.c:2438 + pop bp ; 5d ; 0xc38ae + pop dx ; 5a ; 0xc38af + pop cx ; 59 ; 0xc38b0 + pop bx ; 5b ; 0xc38b1 + retn ; c3 ; 0xc38b2 + ; disGetNextSymbol 0xc38b3 LB 0xcb1 -> off=0x0 cb=000000000000000e uValue=00000000000c38b3 'readx_byte' +readx_byte: ; 0xc38b3 LB 0xe + push bx ; 53 ; 0xc38b3 vgabios.c:2450 + push bp ; 55 ; 0xc38b4 + mov bp, sp ; 89 e5 ; 0xc38b5 + mov bx, dx ; 89 d3 ; 0xc38b7 + mov es, ax ; 8e c0 ; 0xc38b9 vgabios.c:2452 + mov al, byte [es:bx] ; 26 8a 07 ; 0xc38bb + pop bp ; 5d ; 0xc38be vgabios.c:2453 + pop bx ; 5b ; 0xc38bf + retn ; c3 ; 0xc38c0 + ; disGetNextSymbol 0xc38c1 LB 0xca3 -> off=0x8a cb=0000000000000456 uValue=00000000000c394b 'int10_func' + db 056h, 04fh, 01ch, 01bh, 013h, 012h, 011h, 010h, 00eh, 00dh, 00ch, 00ah, 009h, 008h, 007h, 006h + db 005h, 004h, 003h, 002h, 001h, 000h, 09ah, 03dh, 075h, 039h, 0b2h, 039h, 0c1h, 039h, 0cfh, 039h + db 0dfh, 039h, 0efh, 039h, 0f9h, 039h, 022h, 03ah, 04bh, 03ah, 059h, 03ah, 06fh, 03ah, 087h, 03ah + db 0aah, 03ah, 0beh, 03ah, 0d4h, 03ah, 0e0h, 03ah, 0e2h, 03bh, 068h, 03ch, 08bh, 03ch, 09fh, 03ch + db 0e1h, 03ch, 06ch, 03dh, 030h, 024h, 023h, 022h, 021h, 020h, 014h, 012h, 011h, 010h, 004h, 003h + db 002h, 001h, 000h, 09ah, 03dh, 0ffh, 03ah, 01ah, 03bh, 038h, 03bh, 050h, 03bh, 05bh, 03bh, 0ffh + db 03ah, 01ah, 03bh, 038h, 03bh, 05bh, 03bh, 073h, 03bh, 07eh, 03bh, 097h, 03bh, 0a6h, 03bh, 0b5h + db 03bh, 0c2h, 03bh, 00ah, 009h, 006h, 004h, 002h, 001h, 000h, 05eh, 03dh, 007h, 03dh, 015h, 03dh + db 026h, 03dh, 036h, 03dh, 04bh, 03dh, 05eh, 03dh, 05eh, 03dh +int10_func: ; 0xc394b LB 0x456 + push bp ; 55 ; 0xc394b vgabios.c:2531 + mov bp, sp ; 89 e5 ; 0xc394c + push si ; 56 ; 0xc394e + push di ; 57 ; 0xc394f + push ax ; 50 ; 0xc3950 + mov si, word [bp+004h] ; 8b 76 04 ; 0xc3951 + mov al, byte [bp+013h] ; 8a 46 13 ; 0xc3954 vgabios.c:2536 + xor ah, ah ; 30 e4 ; 0xc3957 + mov dx, ax ; 89 c2 ; 0xc3959 + cmp ax, strict word 00056h ; 3d 56 00 ; 0xc395b + jnbe short 039cch ; 77 6c ; 0xc395e + push CS ; 0e ; 0xc3960 + pop ES ; 07 ; 0xc3961 + mov cx, strict word 00017h ; b9 17 00 ; 0xc3962 + mov di, 038c1h ; bf c1 38 ; 0xc3965 + repne scasb ; f2 ae ; 0xc3968 + sal cx, 1 ; d1 e1 ; 0xc396a + mov di, cx ; 89 cf ; 0xc396c + mov ax, word [cs:di+038d7h] ; 2e 8b 85 d7 38 ; 0xc396e + jmp ax ; ff e0 ; 0xc3973 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3975 vgabios.c:2539 + xor ah, ah ; 30 e4 ; 0xc3978 + call 01479h ; e8 fc da ; 0xc397a + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc397d vgabios.c:2540 + and ax, strict word 0007fh ; 25 7f 00 ; 0xc3980 + cmp ax, strict word 00007h ; 3d 07 00 ; 0xc3983 + je short 0399dh ; 74 15 ; 0xc3986 + cmp ax, strict word 00006h ; 3d 06 00 ; 0xc3988 + je short 03994h ; 74 07 ; 0xc398b + cmp ax, strict word 00005h ; 3d 05 00 ; 0xc398d + jbe short 0399dh ; 76 0b ; 0xc3990 + jmp short 039a6h ; eb 12 ; 0xc3992 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3994 vgabios.c:2542 + xor al, al ; 30 c0 ; 0xc3997 + or AL, strict byte 03fh ; 0c 3f ; 0xc3999 + jmp short 039adh ; eb 10 ; 0xc399b vgabios.c:2543 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc399d vgabios.c:2551 + xor al, al ; 30 c0 ; 0xc39a0 + or AL, strict byte 030h ; 0c 30 ; 0xc39a2 + jmp short 039adh ; eb 07 ; 0xc39a4 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc39a6 vgabios.c:2554 + xor al, al ; 30 c0 ; 0xc39a9 + or AL, strict byte 020h ; 0c 20 ; 0xc39ab + mov word [bp+012h], ax ; 89 46 12 ; 0xc39ad + jmp short 039cch ; eb 1a ; 0xc39b0 vgabios.c:2556 + mov al, byte [bp+010h] ; 8a 46 10 ; 0xc39b2 vgabios.c:2558 + xor ah, ah ; 30 e4 ; 0xc39b5 + mov dx, ax ; 89 c2 ; 0xc39b7 + mov al, byte [bp+011h] ; 8a 46 11 ; 0xc39b9 + call 011d3h ; e8 14 d8 ; 0xc39bc + jmp short 039cch ; eb 0b ; 0xc39bf vgabios.c:2559 + mov dx, word [bp+00eh] ; 8b 56 0e ; 0xc39c1 vgabios.c:2561 + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc39c4 + xor ah, ah ; 30 e4 ; 0xc39c7 + call 012cfh ; e8 03 d9 ; 0xc39c9 + jmp near 03d9ah ; e9 cb 03 ; 0xc39cc vgabios.c:2562 + lea bx, [bp+00eh] ; 8d 5e 0e ; 0xc39cf vgabios.c:2564 + lea dx, [bp+010h] ; 8d 56 10 ; 0xc39d2 + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc39d5 + xor ah, ah ; 30 e4 ; 0xc39d8 + call 00a97h ; e8 ba d0 ; 0xc39da + jmp short 039cch ; eb ed ; 0xc39dd vgabios.c:2565 + xor ax, ax ; 31 c0 ; 0xc39df vgabios.c:2571 + mov word [bp+012h], ax ; 89 46 12 ; 0xc39e1 + mov word [bp+00ch], ax ; 89 46 0c ; 0xc39e4 vgabios.c:2572 + mov word [bp+010h], ax ; 89 46 10 ; 0xc39e7 vgabios.c:2573 + mov word [bp+00eh], ax ; 89 46 0e ; 0xc39ea vgabios.c:2574 + jmp short 039cch ; eb dd ; 0xc39ed vgabios.c:2575 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc39ef vgabios.c:2577 + xor ah, ah ; 30 e4 ; 0xc39f2 + call 0135ch ; e8 65 d9 ; 0xc39f4 + jmp short 039cch ; eb d3 ; 0xc39f7 vgabios.c:2578 + mov ax, strict word 00001h ; b8 01 00 ; 0xc39f9 vgabios.c:2580 + push ax ; 50 ; 0xc39fc + mov ax, 000ffh ; b8 ff 00 ; 0xc39fd + push ax ; 50 ; 0xc3a00 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3a01 + xor ah, ah ; 30 e4 ; 0xc3a04 + push ax ; 50 ; 0xc3a06 + mov al, byte [bp+00fh] ; 8a 46 0f ; 0xc3a07 + push ax ; 50 ; 0xc3a0a + mov al, byte [bp+010h] ; 8a 46 10 ; 0xc3a0b + mov cx, ax ; 89 c1 ; 0xc3a0e + mov bl, byte [bp+011h] ; 8a 5e 11 ; 0xc3a10 + xor bh, bh ; 30 ff ; 0xc3a13 + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3a15 + mov dx, ax ; 89 c2 ; 0xc3a18 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3a1a + call 01c9fh ; e8 7f e2 ; 0xc3a1d + jmp short 039cch ; eb aa ; 0xc3a20 vgabios.c:2581 + xor ax, ax ; 31 c0 ; 0xc3a22 vgabios.c:2583 + push ax ; 50 ; 0xc3a24 + mov ax, 000ffh ; b8 ff 00 ; 0xc3a25 + push ax ; 50 ; 0xc3a28 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3a29 + xor ah, ah ; 30 e4 ; 0xc3a2c + push ax ; 50 ; 0xc3a2e + mov al, byte [bp+00fh] ; 8a 46 0f ; 0xc3a2f + push ax ; 50 ; 0xc3a32 + mov al, byte [bp+010h] ; 8a 46 10 ; 0xc3a33 + mov cx, ax ; 89 c1 ; 0xc3a36 + mov al, byte [bp+011h] ; 8a 46 11 ; 0xc3a38 + mov bx, ax ; 89 c3 ; 0xc3a3b + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3a3d + mov dl, byte [bp+012h] ; 8a 56 12 ; 0xc3a40 + mov si, dx ; 89 d6 ; 0xc3a43 + mov dx, ax ; 89 c2 ; 0xc3a45 + mov ax, si ; 89 f0 ; 0xc3a47 + jmp short 03a1dh ; eb d2 ; 0xc3a49 + lea dx, [bp+012h] ; 8d 56 12 ; 0xc3a4b vgabios.c:2586 + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3a4e + xor ah, ah ; 30 e4 ; 0xc3a51 + call 00dedh ; e8 97 d3 ; 0xc3a53 + jmp near 03d9ah ; e9 41 03 ; 0xc3a56 vgabios.c:2587 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3a59 vgabios.c:2589 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3a5c + xor ah, ah ; 30 e4 ; 0xc3a5f + mov bx, ax ; 89 c3 ; 0xc3a61 + mov dl, byte [bp+00dh] ; 8a 56 0d ; 0xc3a63 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3a66 + call 02607h ; e8 9b eb ; 0xc3a69 + jmp near 03d9ah ; e9 2b 03 ; 0xc3a6c vgabios.c:2590 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3a6f vgabios.c:2592 + mov bl, byte [bp+00ch] ; 8a 5e 0c ; 0xc3a72 + xor bh, bh ; 30 ff ; 0xc3a75 + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3a77 + xor ah, ah ; 30 e4 ; 0xc3a7a + mov dx, ax ; 89 c2 ; 0xc3a7c + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3a7e + call 02779h ; e8 f5 ec ; 0xc3a81 + jmp near 03d9ah ; e9 13 03 ; 0xc3a84 vgabios.c:2593 + mov cx, word [bp+00eh] ; 8b 4e 0e ; 0xc3a87 vgabios.c:2595 + mov bx, word [bp+010h] ; 8b 5e 10 ; 0xc3a8a + mov dl, byte [bp+012h] ; 8a 56 12 ; 0xc3a8d + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3a90 + mov byte [bp-006h], al ; 88 46 fa ; 0xc3a93 + mov byte [bp-005h], dh ; 88 76 fb ; 0xc3a96 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc3a99 + mov word [bp-006h], ax ; 89 46 fa ; 0xc3a9c + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc3a9f + xor ah, ah ; 30 e4 ; 0xc3aa2 + call 028fch ; e8 55 ee ; 0xc3aa4 + jmp near 03d9ah ; e9 f0 02 ; 0xc3aa7 vgabios.c:2596 + lea cx, [bp+012h] ; 8d 4e 12 ; 0xc3aaa vgabios.c:2598 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3aad + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3ab0 + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3ab3 + xor ah, ah ; 30 e4 ; 0xc3ab6 + call 00fc7h ; e8 0c d5 ; 0xc3ab8 + jmp near 03d9ah ; e9 dc 02 ; 0xc3abb vgabios.c:2599 + mov cx, strict word 00002h ; b9 02 00 ; 0xc3abe vgabios.c:2607 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3ac1 + xor ah, ah ; 30 e4 ; 0xc3ac4 + mov bx, ax ; 89 c3 ; 0xc3ac6 + mov dx, 000ffh ; ba ff 00 ; 0xc3ac8 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3acb + call 02a76h ; e8 a5 ef ; 0xc3ace + jmp near 03d9ah ; e9 c6 02 ; 0xc3ad1 vgabios.c:2608 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3ad4 vgabios.c:2611 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3ad7 + call 01134h ; e8 57 d6 ; 0xc3ada + jmp near 03d9ah ; e9 ba 02 ; 0xc3add vgabios.c:2612 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3ae0 vgabios.c:2614 + xor ah, ah ; 30 e4 ; 0xc3ae3 + cmp ax, strict word 00030h ; 3d 30 00 ; 0xc3ae5 + jnbe short 03b58h ; 77 6e ; 0xc3ae8 + push CS ; 0e ; 0xc3aea + pop ES ; 07 ; 0xc3aeb + mov cx, strict word 00010h ; b9 10 00 ; 0xc3aec + mov di, 03905h ; bf 05 39 ; 0xc3aef + repne scasb ; f2 ae ; 0xc3af2 + sal cx, 1 ; d1 e1 ; 0xc3af4 + mov di, cx ; 89 cf ; 0xc3af6 + mov ax, word [cs:di+03914h] ; 2e 8b 85 14 39 ; 0xc3af8 + jmp ax ; ff e0 ; 0xc3afd + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3aff vgabios.c:2618 + xor ah, ah ; 30 e4 ; 0xc3b02 + push ax ; 50 ; 0xc3b04 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b05 + push ax ; 50 ; 0xc3b08 + push word [bp+00eh] ; ff 76 0e ; 0xc3b09 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3b0c + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3b0f + mov bx, word [bp+008h] ; 8b 5e 08 ; 0xc3b12 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3b15 + jmp short 03b33h ; eb 19 ; 0xc3b18 + mov ax, strict word 0000eh ; b8 0e 00 ; 0xc3b1a vgabios.c:2622 + push ax ; 50 ; 0xc3b1d + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b1e + xor ah, ah ; 30 e4 ; 0xc3b21 + push ax ; 50 ; 0xc3b23 + xor al, al ; 30 c0 ; 0xc3b24 + push ax ; 50 ; 0xc3b26 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3b27 + mov cx, 00100h ; b9 00 01 ; 0xc3b2a + mov bx, 05d6dh ; bb 6d 5d ; 0xc3b2d + mov dx, 0c000h ; ba 00 c0 ; 0xc3b30 + call 02e8ch ; e8 56 f3 ; 0xc3b33 + jmp short 03b58h ; eb 20 ; 0xc3b36 + mov ax, strict word 00008h ; b8 08 00 ; 0xc3b38 vgabios.c:2626 + push ax ; 50 ; 0xc3b3b + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b3c + xor ah, ah ; 30 e4 ; 0xc3b3f + push ax ; 50 ; 0xc3b41 + xor al, al ; 30 c0 ; 0xc3b42 + push ax ; 50 ; 0xc3b44 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3b45 + mov cx, 00100h ; b9 00 01 ; 0xc3b48 + mov bx, 0556dh ; bb 6d 55 ; 0xc3b4b + jmp short 03b30h ; eb e0 ; 0xc3b4e + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b50 vgabios.c:2629 + xor ah, ah ; 30 e4 ; 0xc3b53 + call 02df4h ; e8 9c f2 ; 0xc3b55 + jmp near 03d9ah ; e9 3f 02 ; 0xc3b58 vgabios.c:2630 + mov ax, strict word 00010h ; b8 10 00 ; 0xc3b5b vgabios.c:2633 + push ax ; 50 ; 0xc3b5e + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b5f + xor ah, ah ; 30 e4 ; 0xc3b62 + push ax ; 50 ; 0xc3b64 + xor al, al ; 30 c0 ; 0xc3b65 + push ax ; 50 ; 0xc3b67 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3b68 + mov cx, 00100h ; b9 00 01 ; 0xc3b6b + mov bx, 06b6dh ; bb 6d 6b ; 0xc3b6e + jmp short 03b30h ; eb bd ; 0xc3b71 + mov dx, word [bp+008h] ; 8b 56 08 ; 0xc3b73 vgabios.c:2636 + mov ax, word [bp+016h] ; 8b 46 16 ; 0xc3b76 + call 02f10h ; e8 94 f3 ; 0xc3b79 + jmp short 03b58h ; eb da ; 0xc3b7c vgabios.c:2637 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3b7e vgabios.c:2639 + xor ah, ah ; 30 e4 ; 0xc3b81 + push ax ; 50 ; 0xc3b83 + mov cl, byte [bp+00ch] ; 8a 4e 0c ; 0xc3b84 + xor ch, ch ; 30 ed ; 0xc3b87 + mov bx, word [bp+010h] ; 8b 5e 10 ; 0xc3b89 + mov dx, word [bp+008h] ; 8b 56 08 ; 0xc3b8c + mov ax, word [bp+016h] ; 8b 46 16 ; 0xc3b8f + call 02f73h ; e8 de f3 ; 0xc3b92 + jmp short 03b58h ; eb c1 ; 0xc3b95 vgabios.c:2640 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3b97 vgabios.c:2642 + xor ah, ah ; 30 e4 ; 0xc3b9a + mov dx, ax ; 89 c2 ; 0xc3b9c + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3b9e + call 02f90h ; e8 ec f3 ; 0xc3ba1 + jmp short 03b58h ; eb b2 ; 0xc3ba4 vgabios.c:2643 + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3ba6 vgabios.c:2645 + xor ah, ah ; 30 e4 ; 0xc3ba9 + mov dx, ax ; 89 c2 ; 0xc3bab + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3bad + call 02fb2h ; e8 ff f3 ; 0xc3bb0 + jmp short 03b58h ; eb a3 ; 0xc3bb3 vgabios.c:2646 + mov dl, byte [bp+00eh] ; 8a 56 0e ; 0xc3bb5 vgabios.c:2648 + mov al, byte [bp+00ch] ; 8a 46 0c ; 0xc3bb8 + xor ah, ah ; 30 e4 ; 0xc3bbb + call 02fd4h ; e8 14 f4 ; 0xc3bbd + jmp short 03b58h ; eb 96 ; 0xc3bc0 vgabios.c:2649 + lea ax, [bp+00eh] ; 8d 46 0e ; 0xc3bc2 vgabios.c:2651 + push ax ; 50 ; 0xc3bc5 + lea cx, [bp+010h] ; 8d 4e 10 ; 0xc3bc6 + lea bx, [bp+008h] ; 8d 5e 08 ; 0xc3bc9 + lea dx, [bp+016h] ; 8d 56 16 ; 0xc3bcc + mov al, byte [bp+00dh] ; 8a 46 0d ; 0xc3bcf + mov byte [bp-006h], al ; 88 46 fa ; 0xc3bd2 + mov byte [bp-005h], 000h ; c6 46 fb 00 ; 0xc3bd5 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc3bd9 + call 00f44h ; e8 65 d3 ; 0xc3bdc + jmp near 03d9ah ; e9 b8 01 ; 0xc3bdf vgabios.c:2659 + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3be2 vgabios.c:2661 + xor ah, ah ; 30 e4 ; 0xc3be5 + cmp ax, strict word 00034h ; 3d 34 00 ; 0xc3be7 + jc short 03bfbh ; 72 0f ; 0xc3bea + jbe short 03c26h ; 76 38 ; 0xc3bec + cmp ax, strict word 00036h ; 3d 36 00 ; 0xc3bee + je short 03c50h ; 74 5d ; 0xc3bf1 + cmp ax, strict word 00035h ; 3d 35 00 ; 0xc3bf3 + je short 03c52h ; 74 5a ; 0xc3bf6 + jmp near 03d9ah ; e9 9f 01 ; 0xc3bf8 + cmp ax, strict word 00030h ; 3d 30 00 ; 0xc3bfb + je short 03c0ah ; 74 0a ; 0xc3bfe + cmp ax, strict word 00020h ; 3d 20 00 ; 0xc3c00 + jne short 03c4dh ; 75 48 ; 0xc3c03 + call 02ff6h ; e8 ee f3 ; 0xc3c05 vgabios.c:2664 + jmp short 03c4dh ; eb 43 ; 0xc3c08 vgabios.c:2665 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3c0a vgabios.c:2667 + xor ah, ah ; 30 e4 ; 0xc3c0d + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3c0f + jnbe short 03c4dh ; 77 39 ; 0xc3c12 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c14 vgabios.c:2668 + call 02ffbh ; e8 e1 f3 ; 0xc3c17 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3c1a vgabios.c:2669 + xor al, al ; 30 c0 ; 0xc3c1d + or AL, strict byte 012h ; 0c 12 ; 0xc3c1f + mov word [bp+012h], ax ; 89 46 12 ; 0xc3c21 + jmp short 03c4dh ; eb 27 ; 0xc3c24 vgabios.c:2671 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3c26 vgabios.c:2673 + xor ah, ah ; 30 e4 ; 0xc3c29 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3c2b + jnc short 03c4ah ; 73 1a ; 0xc3c2e + mov ax, strict word 00040h ; b8 40 00 ; 0xc3c30 vgabios.c:45 + mov es, ax ; 8e c0 ; 0xc3c33 + mov bx, 00087h ; bb 87 00 ; 0xc3c35 + mov ah, byte [es:bx] ; 26 8a 27 ; 0xc3c38 vgabios.c:47 + and ah, 0feh ; 80 e4 fe ; 0xc3c3b vgabios.c:48 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c3e + or al, ah ; 08 e0 ; 0xc3c41 + mov si, bx ; 89 de ; 0xc3c43 vgabios.c:50 + mov byte [es:si], al ; 26 88 04 ; 0xc3c45 vgabios.c:52 + jmp short 03c1ah ; eb d0 ; 0xc3c48 + mov byte [bp+012h], ah ; 88 66 12 ; 0xc3c4a vgabios.c:2679 + jmp near 03d9ah ; e9 4a 01 ; 0xc3c4d vgabios.c:2680 + jmp short 03c60h ; eb 0e ; 0xc3c50 + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c52 vgabios.c:2682 + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3c55 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3c58 + call 0302dh ; e8 cf f3 ; 0xc3c5b + jmp short 03c1ah ; eb ba ; 0xc3c5e + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c60 vgabios.c:2686 + call 03032h ; e8 cc f3 ; 0xc3c63 + jmp short 03c1ah ; eb b2 ; 0xc3c66 + push word [bp+008h] ; ff 76 08 ; 0xc3c68 vgabios.c:2696 + push word [bp+016h] ; ff 76 16 ; 0xc3c6b + mov al, byte [bp+00eh] ; 8a 46 0e ; 0xc3c6e + xor ah, ah ; 30 e4 ; 0xc3c71 + push ax ; 50 ; 0xc3c73 + mov al, byte [bp+00fh] ; 8a 46 0f ; 0xc3c74 + push ax ; 50 ; 0xc3c77 + mov bl, byte [bp+00ch] ; 8a 5e 0c ; 0xc3c78 + xor bh, bh ; 30 ff ; 0xc3c7b + mov dl, byte [bp+00dh] ; 8a 56 0d ; 0xc3c7d + mov al, byte [bp+012h] ; 8a 46 12 ; 0xc3c80 + mov cx, word [bp+010h] ; 8b 4e 10 ; 0xc3c83 + call 03037h ; e8 ae f3 ; 0xc3c86 + jmp short 03c4dh ; eb c2 ; 0xc3c89 vgabios.c:2697 + mov bx, si ; 89 f3 ; 0xc3c8b vgabios.c:2699 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3c8d + mov ax, word [bp+00ch] ; 8b 46 0c ; 0xc3c90 + call 030c6h ; e8 30 f4 ; 0xc3c93 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3c96 vgabios.c:2700 + xor al, al ; 30 c0 ; 0xc3c99 + or AL, strict byte 01bh ; 0c 1b ; 0xc3c9b + jmp short 03c21h ; eb 82 ; 0xc3c9d + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3c9f vgabios.c:2703 + xor ah, ah ; 30 e4 ; 0xc3ca2 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc3ca4 + je short 03ccbh ; 74 22 ; 0xc3ca7 + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc3ca9 + je short 03cbdh ; 74 0f ; 0xc3cac + test ax, ax ; 85 c0 ; 0xc3cae + jne short 03cd7h ; 75 25 ; 0xc3cb0 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3cb2 vgabios.c:2706 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3cb5 + call 032dbh ; e8 20 f6 ; 0xc3cb8 + jmp short 03cd7h ; eb 1a ; 0xc3cbb vgabios.c:2707 + mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xc3cbd vgabios.c:2709 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3cc0 + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3cc3 + call 032f6h ; e8 2d f6 ; 0xc3cc6 + jmp short 03cd7h ; eb 0c ; 0xc3cc9 vgabios.c:2710 + mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xc3ccb vgabios.c:2712 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3cce + mov ax, word [bp+010h] ; 8b 46 10 ; 0xc3cd1 + call 035ceh ; e8 f7 f8 ; 0xc3cd4 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3cd7 vgabios.c:2719 + xor al, al ; 30 c0 ; 0xc3cda + or AL, strict byte 01ch ; 0c 1c ; 0xc3cdc + jmp near 03c21h ; e9 40 ff ; 0xc3cde + call 007f8h ; e8 14 cb ; 0xc3ce1 vgabios.c:2724 + test ax, ax ; 85 c0 ; 0xc3ce4 + je short 03d5ch ; 74 74 ; 0xc3ce6 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3ce8 vgabios.c:2725 + xor ah, ah ; 30 e4 ; 0xc3ceb + cmp ax, strict word 0000ah ; 3d 0a 00 ; 0xc3ced + jnbe short 03d5eh ; 77 6c ; 0xc3cf0 + push CS ; 0e ; 0xc3cf2 + pop ES ; 07 ; 0xc3cf3 + mov cx, strict word 00008h ; b9 08 00 ; 0xc3cf4 + mov di, 03934h ; bf 34 39 ; 0xc3cf7 + repne scasb ; f2 ae ; 0xc3cfa + sal cx, 1 ; d1 e1 ; 0xc3cfc + mov di, cx ; 89 cf ; 0xc3cfe + mov ax, word [cs:di+0393bh] ; 2e 8b 85 3b 39 ; 0xc3d00 + jmp ax ; ff e0 ; 0xc3d05 + mov bx, si ; 89 f3 ; 0xc3d07 vgabios.c:2728 + mov dx, word [bp+016h] ; 8b 56 16 ; 0xc3d09 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d0c + call 03f6bh ; e8 59 02 ; 0xc3d0f + jmp near 03d9ah ; e9 85 00 ; 0xc3d12 vgabios.c:2729 + mov cx, si ; 89 f1 ; 0xc3d15 vgabios.c:2731 + mov bx, word [bp+016h] ; 8b 5e 16 ; 0xc3d17 + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3d1a + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d1d + call 04096h ; e8 73 03 ; 0xc3d20 + jmp near 03d9ah ; e9 74 00 ; 0xc3d23 vgabios.c:2732 + mov cx, si ; 89 f1 ; 0xc3d26 vgabios.c:2734 + mov bx, word [bp+016h] ; 8b 5e 16 ; 0xc3d28 + mov dx, word [bp+00ch] ; 8b 56 0c ; 0xc3d2b + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d2e + call 04135h ; e8 01 04 ; 0xc3d31 + jmp short 03d9ah ; eb 64 ; 0xc3d34 vgabios.c:2735 + lea ax, [bp+00ch] ; 8d 46 0c ; 0xc3d36 vgabios.c:2737 + push ax ; 50 ; 0xc3d39 + mov cx, word [bp+016h] ; 8b 4e 16 ; 0xc3d3a + mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xc3d3d + mov dx, word [bp+010h] ; 8b 56 10 ; 0xc3d40 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d43 + call 042feh ; e8 b5 05 ; 0xc3d46 + jmp short 03d9ah ; eb 4f ; 0xc3d49 vgabios.c:2738 + lea cx, [bp+00eh] ; 8d 4e 0e ; 0xc3d4b vgabios.c:2740 + lea bx, [bp+010h] ; 8d 5e 10 ; 0xc3d4e + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3d51 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d54 + call 0438bh ; e8 31 06 ; 0xc3d57 + jmp short 03d9ah ; eb 3e ; 0xc3d5a vgabios.c:2741 + jmp short 03d65h ; eb 07 ; 0xc3d5c + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d5e vgabios.c:2763 + jmp short 03d9ah ; eb 35 ; 0xc3d63 vgabios.c:2766 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d65 vgabios.c:2768 + jmp short 03d9ah ; eb 2e ; 0xc3d6a vgabios.c:2770 + call 007f8h ; e8 89 ca ; 0xc3d6c vgabios.c:2772 + test ax, ax ; 85 c0 ; 0xc3d6f + je short 03d95h ; 74 22 ; 0xc3d71 + mov ax, word [bp+012h] ; 8b 46 12 ; 0xc3d73 vgabios.c:2773 + xor ah, ah ; 30 e4 ; 0xc3d76 + cmp ax, strict word 00042h ; 3d 42 00 ; 0xc3d78 + jne short 03d8eh ; 75 11 ; 0xc3d7b + lea cx, [bp+00eh] ; 8d 4e 0e ; 0xc3d7d vgabios.c:2776 + lea bx, [bp+010h] ; 8d 5e 10 ; 0xc3d80 + lea dx, [bp+00ch] ; 8d 56 0c ; 0xc3d83 + lea ax, [bp+012h] ; 8d 46 12 ; 0xc3d86 + call 0446dh ; e8 e1 06 ; 0xc3d89 + jmp short 03d9ah ; eb 0c ; 0xc3d8c vgabios.c:2777 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d8e vgabios.c:2779 + jmp short 03d9ah ; eb 05 ; 0xc3d93 vgabios.c:2782 + mov word [bp+012h], 00100h ; c7 46 12 00 01 ; 0xc3d95 vgabios.c:2784 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3d9a vgabios.c:2794 + pop di ; 5f ; 0xc3d9d + pop si ; 5e ; 0xc3d9e + pop bp ; 5d ; 0xc3d9f + retn ; c3 ; 0xc3da0 + ; disGetNextSymbol 0xc3da1 LB 0x7c3 -> off=0x0 cb=000000000000001f uValue=00000000000c3da1 'dispi_set_xres' +dispi_set_xres: ; 0xc3da1 LB 0x1f + push bp ; 55 ; 0xc3da1 vbe.c:100 + mov bp, sp ; 89 e5 ; 0xc3da2 + push bx ; 53 ; 0xc3da4 + push dx ; 52 ; 0xc3da5 + mov bx, ax ; 89 c3 ; 0xc3da6 + mov ax, strict word 00001h ; b8 01 00 ; 0xc3da8 vbe.c:105 + mov dx, 001ceh ; ba ce 01 ; 0xc3dab + call 005a0h ; e8 ef c7 ; 0xc3dae + mov ax, bx ; 89 d8 ; 0xc3db1 vbe.c:106 + mov dx, 001cfh ; ba cf 01 ; 0xc3db3 + call 005a0h ; e8 e7 c7 ; 0xc3db6 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3db9 vbe.c:107 + pop dx ; 5a ; 0xc3dbc + pop bx ; 5b ; 0xc3dbd + pop bp ; 5d ; 0xc3dbe + retn ; c3 ; 0xc3dbf + ; disGetNextSymbol 0xc3dc0 LB 0x7a4 -> off=0x0 cb=000000000000001f uValue=00000000000c3dc0 'dispi_set_yres' +dispi_set_yres: ; 0xc3dc0 LB 0x1f + push bp ; 55 ; 0xc3dc0 vbe.c:109 + mov bp, sp ; 89 e5 ; 0xc3dc1 + push bx ; 53 ; 0xc3dc3 + push dx ; 52 ; 0xc3dc4 + mov bx, ax ; 89 c3 ; 0xc3dc5 + mov ax, strict word 00002h ; b8 02 00 ; 0xc3dc7 vbe.c:114 + mov dx, 001ceh ; ba ce 01 ; 0xc3dca + call 005a0h ; e8 d0 c7 ; 0xc3dcd + mov ax, bx ; 89 d8 ; 0xc3dd0 vbe.c:115 + mov dx, 001cfh ; ba cf 01 ; 0xc3dd2 + call 005a0h ; e8 c8 c7 ; 0xc3dd5 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3dd8 vbe.c:116 + pop dx ; 5a ; 0xc3ddb + pop bx ; 5b ; 0xc3ddc + pop bp ; 5d ; 0xc3ddd + retn ; c3 ; 0xc3dde + ; disGetNextSymbol 0xc3ddf LB 0x785 -> off=0x0 cb=0000000000000019 uValue=00000000000c3ddf 'dispi_get_yres' +dispi_get_yres: ; 0xc3ddf LB 0x19 + push bp ; 55 ; 0xc3ddf vbe.c:118 + mov bp, sp ; 89 e5 ; 0xc3de0 + push dx ; 52 ; 0xc3de2 + mov ax, strict word 00002h ; b8 02 00 ; 0xc3de3 vbe.c:120 + mov dx, 001ceh ; ba ce 01 ; 0xc3de6 + call 005a0h ; e8 b4 c7 ; 0xc3de9 + mov dx, 001cfh ; ba cf 01 ; 0xc3dec vbe.c:121 + call 005a7h ; e8 b5 c7 ; 0xc3def + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3df2 vbe.c:122 + pop dx ; 5a ; 0xc3df5 + pop bp ; 5d ; 0xc3df6 + retn ; c3 ; 0xc3df7 + ; disGetNextSymbol 0xc3df8 LB 0x76c -> off=0x0 cb=000000000000001f uValue=00000000000c3df8 'dispi_set_bpp' +dispi_set_bpp: ; 0xc3df8 LB 0x1f + push bp ; 55 ; 0xc3df8 vbe.c:124 + mov bp, sp ; 89 e5 ; 0xc3df9 + push bx ; 53 ; 0xc3dfb + push dx ; 52 ; 0xc3dfc + mov bx, ax ; 89 c3 ; 0xc3dfd + mov ax, strict word 00003h ; b8 03 00 ; 0xc3dff vbe.c:129 + mov dx, 001ceh ; ba ce 01 ; 0xc3e02 + call 005a0h ; e8 98 c7 ; 0xc3e05 + mov ax, bx ; 89 d8 ; 0xc3e08 vbe.c:130 + mov dx, 001cfh ; ba cf 01 ; 0xc3e0a + call 005a0h ; e8 90 c7 ; 0xc3e0d + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3e10 vbe.c:131 + pop dx ; 5a ; 0xc3e13 + pop bx ; 5b ; 0xc3e14 + pop bp ; 5d ; 0xc3e15 + retn ; c3 ; 0xc3e16 + ; disGetNextSymbol 0xc3e17 LB 0x74d -> off=0x0 cb=0000000000000019 uValue=00000000000c3e17 'dispi_get_bpp' +dispi_get_bpp: ; 0xc3e17 LB 0x19 + push bp ; 55 ; 0xc3e17 vbe.c:133 + mov bp, sp ; 89 e5 ; 0xc3e18 + push dx ; 52 ; 0xc3e1a + mov ax, strict word 00003h ; b8 03 00 ; 0xc3e1b vbe.c:135 + mov dx, 001ceh ; ba ce 01 ; 0xc3e1e + call 005a0h ; e8 7c c7 ; 0xc3e21 + mov dx, 001cfh ; ba cf 01 ; 0xc3e24 vbe.c:136 + call 005a7h ; e8 7d c7 ; 0xc3e27 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e2a vbe.c:137 + pop dx ; 5a ; 0xc3e2d + pop bp ; 5d ; 0xc3e2e + retn ; c3 ; 0xc3e2f + ; disGetNextSymbol 0xc3e30 LB 0x734 -> off=0x0 cb=000000000000001f uValue=00000000000c3e30 'dispi_set_virt_width' +dispi_set_virt_width: ; 0xc3e30 LB 0x1f + push bp ; 55 ; 0xc3e30 vbe.c:139 + mov bp, sp ; 89 e5 ; 0xc3e31 + push bx ; 53 ; 0xc3e33 + push dx ; 52 ; 0xc3e34 + mov bx, ax ; 89 c3 ; 0xc3e35 + mov ax, strict word 00006h ; b8 06 00 ; 0xc3e37 vbe.c:144 + mov dx, 001ceh ; ba ce 01 ; 0xc3e3a + call 005a0h ; e8 60 c7 ; 0xc3e3d + mov ax, bx ; 89 d8 ; 0xc3e40 vbe.c:145 + mov dx, 001cfh ; ba cf 01 ; 0xc3e42 + call 005a0h ; e8 58 c7 ; 0xc3e45 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3e48 vbe.c:146 + pop dx ; 5a ; 0xc3e4b + pop bx ; 5b ; 0xc3e4c + pop bp ; 5d ; 0xc3e4d + retn ; c3 ; 0xc3e4e + ; disGetNextSymbol 0xc3e4f LB 0x715 -> off=0x0 cb=0000000000000019 uValue=00000000000c3e4f 'dispi_get_virt_width' +dispi_get_virt_width: ; 0xc3e4f LB 0x19 + push bp ; 55 ; 0xc3e4f vbe.c:148 + mov bp, sp ; 89 e5 ; 0xc3e50 + push dx ; 52 ; 0xc3e52 + mov ax, strict word 00006h ; b8 06 00 ; 0xc3e53 vbe.c:150 + mov dx, 001ceh ; ba ce 01 ; 0xc3e56 + call 005a0h ; e8 44 c7 ; 0xc3e59 + mov dx, 001cfh ; ba cf 01 ; 0xc3e5c vbe.c:151 + call 005a7h ; e8 45 c7 ; 0xc3e5f + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e62 vbe.c:152 + pop dx ; 5a ; 0xc3e65 + pop bp ; 5d ; 0xc3e66 + retn ; c3 ; 0xc3e67 + ; disGetNextSymbol 0xc3e68 LB 0x6fc -> off=0x0 cb=0000000000000019 uValue=00000000000c3e68 'dispi_get_virt_height' +dispi_get_virt_height: ; 0xc3e68 LB 0x19 + push bp ; 55 ; 0xc3e68 vbe.c:154 + mov bp, sp ; 89 e5 ; 0xc3e69 + push dx ; 52 ; 0xc3e6b + mov ax, strict word 00007h ; b8 07 00 ; 0xc3e6c vbe.c:156 + mov dx, 001ceh ; ba ce 01 ; 0xc3e6f + call 005a0h ; e8 2b c7 ; 0xc3e72 + mov dx, 001cfh ; ba cf 01 ; 0xc3e75 vbe.c:157 + call 005a7h ; e8 2c c7 ; 0xc3e78 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e7b vbe.c:158 + pop dx ; 5a ; 0xc3e7e + pop bp ; 5d ; 0xc3e7f + retn ; c3 ; 0xc3e80 + ; disGetNextSymbol 0xc3e81 LB 0x6e3 -> off=0x0 cb=0000000000000012 uValue=00000000000c3e81 'in_word' +in_word: ; 0xc3e81 LB 0x12 + push bp ; 55 ; 0xc3e81 vbe.c:160 + mov bp, sp ; 89 e5 ; 0xc3e82 + push bx ; 53 ; 0xc3e84 + mov bx, ax ; 89 c3 ; 0xc3e85 + mov ax, dx ; 89 d0 ; 0xc3e87 + mov dx, bx ; 89 da ; 0xc3e89 vbe.c:162 + out DX, ax ; ef ; 0xc3e8b + in ax, DX ; ed ; 0xc3e8c vbe.c:163 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3e8d vbe.c:164 + pop bx ; 5b ; 0xc3e90 + pop bp ; 5d ; 0xc3e91 + retn ; c3 ; 0xc3e92 + ; disGetNextSymbol 0xc3e93 LB 0x6d1 -> off=0x0 cb=0000000000000014 uValue=00000000000c3e93 'in_byte' +in_byte: ; 0xc3e93 LB 0x14 + push bp ; 55 ; 0xc3e93 vbe.c:166 + mov bp, sp ; 89 e5 ; 0xc3e94 + push bx ; 53 ; 0xc3e96 + mov bx, ax ; 89 c3 ; 0xc3e97 + mov ax, dx ; 89 d0 ; 0xc3e99 + mov dx, bx ; 89 da ; 0xc3e9b vbe.c:168 + out DX, ax ; ef ; 0xc3e9d + in AL, DX ; ec ; 0xc3e9e vbe.c:169 + db 02ah, 0e4h + ; sub ah, ah ; 2a e4 ; 0xc3e9f + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3ea1 vbe.c:170 + pop bx ; 5b ; 0xc3ea4 + pop bp ; 5d ; 0xc3ea5 + retn ; c3 ; 0xc3ea6 + ; disGetNextSymbol 0xc3ea7 LB 0x6bd -> off=0x0 cb=0000000000000014 uValue=00000000000c3ea7 'dispi_get_id' +dispi_get_id: ; 0xc3ea7 LB 0x14 + push bp ; 55 ; 0xc3ea7 vbe.c:173 + mov bp, sp ; 89 e5 ; 0xc3ea8 + push dx ; 52 ; 0xc3eaa + xor ax, ax ; 31 c0 ; 0xc3eab vbe.c:175 + mov dx, 001ceh ; ba ce 01 ; 0xc3ead + out DX, ax ; ef ; 0xc3eb0 + mov dx, 001cfh ; ba cf 01 ; 0xc3eb1 vbe.c:176 + in ax, DX ; ed ; 0xc3eb4 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3eb5 vbe.c:177 + pop dx ; 5a ; 0xc3eb8 + pop bp ; 5d ; 0xc3eb9 + retn ; c3 ; 0xc3eba + ; disGetNextSymbol 0xc3ebb LB 0x6a9 -> off=0x0 cb=000000000000001a uValue=00000000000c3ebb 'dispi_set_id' +dispi_set_id: ; 0xc3ebb LB 0x1a + push bp ; 55 ; 0xc3ebb vbe.c:179 + mov bp, sp ; 89 e5 ; 0xc3ebc + push bx ; 53 ; 0xc3ebe + push dx ; 52 ; 0xc3ebf + mov bx, ax ; 89 c3 ; 0xc3ec0 + xor ax, ax ; 31 c0 ; 0xc3ec2 vbe.c:181 + mov dx, 001ceh ; ba ce 01 ; 0xc3ec4 + out DX, ax ; ef ; 0xc3ec7 + mov ax, bx ; 89 d8 ; 0xc3ec8 vbe.c:182 + mov dx, 001cfh ; ba cf 01 ; 0xc3eca + out DX, ax ; ef ; 0xc3ecd + lea sp, [bp-004h] ; 8d 66 fc ; 0xc3ece vbe.c:183 + pop dx ; 5a ; 0xc3ed1 + pop bx ; 5b ; 0xc3ed2 + pop bp ; 5d ; 0xc3ed3 + retn ; c3 ; 0xc3ed4 + ; disGetNextSymbol 0xc3ed5 LB 0x68f -> off=0x0 cb=000000000000002a uValue=00000000000c3ed5 'vbe_init' +vbe_init: ; 0xc3ed5 LB 0x2a + push bp ; 55 ; 0xc3ed5 vbe.c:188 + mov bp, sp ; 89 e5 ; 0xc3ed6 + push bx ; 53 ; 0xc3ed8 + mov ax, 0b0c0h ; b8 c0 b0 ; 0xc3ed9 vbe.c:190 + call 03ebbh ; e8 dc ff ; 0xc3edc + call 03ea7h ; e8 c5 ff ; 0xc3edf vbe.c:191 + cmp ax, 0b0c0h ; 3d c0 b0 ; 0xc3ee2 + jne short 03ef9h ; 75 12 ; 0xc3ee5 + mov bx, 000b9h ; bb b9 00 ; 0xc3ee7 vbe.c:52 + mov ax, strict word 00040h ; b8 40 00 ; 0xc3eea + mov es, ax ; 8e c0 ; 0xc3eed + mov byte [es:bx], 001h ; 26 c6 07 01 ; 0xc3eef + mov ax, 0b0c4h ; b8 c4 b0 ; 0xc3ef3 vbe.c:194 + call 03ebbh ; e8 c2 ff ; 0xc3ef6 + lea sp, [bp-002h] ; 8d 66 fe ; 0xc3ef9 vbe.c:199 + pop bx ; 5b ; 0xc3efc + pop bp ; 5d ; 0xc3efd + retn ; c3 ; 0xc3efe + ; disGetNextSymbol 0xc3eff LB 0x665 -> off=0x0 cb=000000000000006c uValue=00000000000c3eff 'mode_info_find_mode' +mode_info_find_mode: ; 0xc3eff LB 0x6c + push bp ; 55 ; 0xc3eff vbe.c:202 + mov bp, sp ; 89 e5 ; 0xc3f00 + push bx ; 53 ; 0xc3f02 + push cx ; 51 ; 0xc3f03 + push si ; 56 ; 0xc3f04 + push di ; 57 ; 0xc3f05 + mov di, ax ; 89 c7 ; 0xc3f06 + mov si, dx ; 89 d6 ; 0xc3f08 + xor dx, dx ; 31 d2 ; 0xc3f0a vbe.c:208 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f0c + call 03e81h ; e8 6f ff ; 0xc3f0f + cmp ax, 077cch ; 3d cc 77 ; 0xc3f12 vbe.c:209 + jne short 03f60h ; 75 49 ; 0xc3f15 + test si, si ; 85 f6 ; 0xc3f17 vbe.c:213 + je short 03f2eh ; 74 13 ; 0xc3f19 + mov ax, strict word 0000bh ; b8 0b 00 ; 0xc3f1b vbe.c:220 + mov dx, 001ceh ; ba ce 01 ; 0xc3f1e + call 005a0h ; e8 7c c6 ; 0xc3f21 + mov dx, 001cfh ; ba cf 01 ; 0xc3f24 vbe.c:221 + call 005a7h ; e8 7d c6 ; 0xc3f27 + test ax, ax ; 85 c0 ; 0xc3f2a vbe.c:222 + je short 03f62h ; 74 34 ; 0xc3f2c + mov bx, strict word 00004h ; bb 04 00 ; 0xc3f2e vbe.c:226 + mov dx, bx ; 89 da ; 0xc3f31 vbe.c:232 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f33 + call 03e81h ; e8 48 ff ; 0xc3f36 + mov cx, ax ; 89 c1 ; 0xc3f39 + cmp cx, strict byte 0ffffh ; 83 f9 ff ; 0xc3f3b vbe.c:233 + je short 03f60h ; 74 20 ; 0xc3f3e + lea dx, [bx+002h] ; 8d 57 02 ; 0xc3f40 vbe.c:235 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f43 + call 03e81h ; e8 38 ff ; 0xc3f46 + lea dx, [bx+044h] ; 8d 57 44 ; 0xc3f49 + cmp cx, di ; 39 f9 ; 0xc3f4c vbe.c:237 + jne short 03f5ch ; 75 0c ; 0xc3f4e + test si, si ; 85 f6 ; 0xc3f50 vbe.c:239 + jne short 03f58h ; 75 04 ; 0xc3f52 + mov ax, bx ; 89 d8 ; 0xc3f54 vbe.c:240 + jmp short 03f62h ; eb 0a ; 0xc3f56 + test AL, strict byte 080h ; a8 80 ; 0xc3f58 vbe.c:241 + jne short 03f54h ; 75 f8 ; 0xc3f5a + mov bx, dx ; 89 d3 ; 0xc3f5c vbe.c:244 + jmp short 03f33h ; eb d3 ; 0xc3f5e vbe.c:249 + xor ax, ax ; 31 c0 ; 0xc3f60 vbe.c:252 + lea sp, [bp-008h] ; 8d 66 f8 ; 0xc3f62 vbe.c:253 + pop di ; 5f ; 0xc3f65 + pop si ; 5e ; 0xc3f66 + pop cx ; 59 ; 0xc3f67 + pop bx ; 5b ; 0xc3f68 + pop bp ; 5d ; 0xc3f69 + retn ; c3 ; 0xc3f6a + ; disGetNextSymbol 0xc3f6b LB 0x5f9 -> off=0x0 cb=000000000000012b uValue=00000000000c3f6b 'vbe_biosfn_return_controller_information' +vbe_biosfn_return_controller_information: ; 0xc3f6b LB 0x12b + push bp ; 55 ; 0xc3f6b vbe.c:284 + mov bp, sp ; 89 e5 ; 0xc3f6c + push cx ; 51 ; 0xc3f6e + push si ; 56 ; 0xc3f6f + push di ; 57 ; 0xc3f70 + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc3f71 + mov si, ax ; 89 c6 ; 0xc3f74 + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc3f76 + mov di, bx ; 89 df ; 0xc3f79 + mov word [bp-00ch], strict word 00022h ; c7 46 f4 22 00 ; 0xc3f7b vbe.c:289 + call 005eah ; e8 67 c6 ; 0xc3f80 vbe.c:292 + mov word [bp-010h], ax ; 89 46 f0 ; 0xc3f83 + mov bx, di ; 89 fb ; 0xc3f86 vbe.c:295 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3f88 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc3f8b + xor dx, dx ; 31 d2 ; 0xc3f8e vbe.c:298 + mov ax, 003b6h ; b8 b6 03 ; 0xc3f90 + call 03e81h ; e8 eb fe ; 0xc3f93 + cmp ax, 077cch ; 3d cc 77 ; 0xc3f96 vbe.c:299 + je short 03fa5h ; 74 0a ; 0xc3f99 + push SS ; 16 ; 0xc3f9b vbe.c:301 + pop ES ; 07 ; 0xc3f9c + mov word [es:si], 00100h ; 26 c7 04 00 01 ; 0xc3f9d + jmp near 0408eh ; e9 e9 00 ; 0xc3fa2 vbe.c:305 + mov cx, strict word 00004h ; b9 04 00 ; 0xc3fa5 vbe.c:307 + mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xc3fa8 vbe.c:314 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3fad vbe.c:322 + cmp word [es:bx+002h], 03245h ; 26 81 7f 02 45 32 ; 0xc3fb0 + jne short 03fbfh ; 75 07 ; 0xc3fb6 + cmp word [es:bx], 04256h ; 26 81 3f 56 42 ; 0xc3fb8 + je short 03fceh ; 74 0f ; 0xc3fbd + cmp word [es:bx+002h], 04153h ; 26 81 7f 02 53 41 ; 0xc3fbf + jne short 03fd3h ; 75 0c ; 0xc3fc5 + cmp word [es:bx], 04556h ; 26 81 3f 56 45 ; 0xc3fc7 + jne short 03fd3h ; 75 05 ; 0xc3fcc + mov word [bp-00eh], strict word 00001h ; c7 46 f2 01 00 ; 0xc3fce vbe.c:324 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc3fd3 vbe.c:332 + mov word [es:bx], 04556h ; 26 c7 07 56 45 ; 0xc3fd6 + mov word [es:bx+002h], 04153h ; 26 c7 47 02 53 41 ; 0xc3fdb vbe.c:334 + mov word [es:bx+004h], 00200h ; 26 c7 47 04 00 02 ; 0xc3fe1 vbe.c:338 + mov word [es:bx+006h], 07e02h ; 26 c7 47 06 02 7e ; 0xc3fe7 vbe.c:341 + mov [es:bx+008h], ds ; 26 8c 5f 08 ; 0xc3fed + mov word [es:bx+00ah], strict word 00001h ; 26 c7 47 0a 01 00 ; 0xc3ff1 vbe.c:344 + mov word [es:bx+00ch], strict word 00000h ; 26 c7 47 0c 00 00 ; 0xc3ff7 vbe.c:346 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc3ffd vbe.c:350 + mov word [es:bx+010h], ax ; 26 89 47 10 ; 0xc4000 + lea ax, [di+022h] ; 8d 45 22 ; 0xc4004 vbe.c:351 + mov word [es:bx+00eh], ax ; 26 89 47 0e ; 0xc4007 + mov dx, strict word 0ffffh ; ba ff ff ; 0xc400b vbe.c:354 + mov ax, 003b6h ; b8 b6 03 ; 0xc400e + call 03e81h ; e8 6d fe ; 0xc4011 + mov es, [bp-008h] ; 8e 46 f8 ; 0xc4014 + mov word [es:bx+012h], ax ; 26 89 47 12 ; 0xc4017 + cmp word [bp-00eh], strict byte 00000h ; 83 7e f2 00 ; 0xc401b vbe.c:356 + je short 04045h ; 74 24 ; 0xc401f + mov word [es:bx+014h], strict word 00003h ; 26 c7 47 14 03 00 ; 0xc4021 vbe.c:359 + mov word [es:bx+016h], 07e17h ; 26 c7 47 16 17 7e ; 0xc4027 vbe.c:360 + mov [es:bx+018h], ds ; 26 8c 5f 18 ; 0xc402d + mov word [es:bx+01ah], 07e34h ; 26 c7 47 1a 34 7e ; 0xc4031 vbe.c:361 + mov [es:bx+01ch], ds ; 26 8c 5f 1c ; 0xc4037 + mov word [es:bx+01eh], 07e55h ; 26 c7 47 1e 55 7e ; 0xc403b vbe.c:362 + mov [es:bx+020h], ds ; 26 8c 5f 20 ; 0xc4041 + mov dx, cx ; 89 ca ; 0xc4045 vbe.c:369 + add dx, strict byte 0001bh ; 83 c2 1b ; 0xc4047 + mov ax, 003b6h ; b8 b6 03 ; 0xc404a + call 03e93h ; e8 43 fe ; 0xc404d + xor ah, ah ; 30 e4 ; 0xc4050 vbe.c:370 + cmp ax, word [bp-010h] ; 3b 46 f0 ; 0xc4052 + jnbe short 0406eh ; 77 17 ; 0xc4055 + mov dx, cx ; 89 ca ; 0xc4057 vbe.c:372 + mov ax, 003b6h ; b8 b6 03 ; 0xc4059 + call 03e81h ; e8 22 fe ; 0xc405c + mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xc405f vbe.c:376 + add bx, di ; 01 fb ; 0xc4062 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc4064 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc4067 + add word [bp-00ch], strict byte 00002h ; 83 46 f4 02 ; 0xc406a vbe.c:378 + add cx, strict byte 00044h ; 83 c1 44 ; 0xc406e vbe.c:380 + mov dx, cx ; 89 ca ; 0xc4071 vbe.c:381 + mov ax, 003b6h ; b8 b6 03 ; 0xc4073 + call 03e81h ; e8 08 fe ; 0xc4076 + cmp ax, strict word 0ffffh ; 3d ff ff ; 0xc4079 vbe.c:382 + jne short 04045h ; 75 c7 ; 0xc407c + add di, word [bp-00ch] ; 03 7e f4 ; 0xc407e vbe.c:385 + mov es, [bp-00ah] ; 8e 46 f6 ; 0xc4081 vbe.c:62 + mov word [es:di], ax ; 26 89 05 ; 0xc4084 + push SS ; 16 ; 0xc4087 vbe.c:386 + pop ES ; 07 ; 0xc4088 + mov word [es:si], strict word 0004fh ; 26 c7 04 4f 00 ; 0xc4089 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc408e vbe.c:387 + pop di ; 5f ; 0xc4091 + pop si ; 5e ; 0xc4092 + pop cx ; 59 ; 0xc4093 + pop bp ; 5d ; 0xc4094 + retn ; c3 ; 0xc4095 + ; disGetNextSymbol 0xc4096 LB 0x4ce -> off=0x0 cb=000000000000009f uValue=00000000000c4096 'vbe_biosfn_return_mode_information' +vbe_biosfn_return_mode_information: ; 0xc4096 LB 0x9f + push bp ; 55 ; 0xc4096 vbe.c:399 + mov bp, sp ; 89 e5 ; 0xc4097 + push si ; 56 ; 0xc4099 + push di ; 57 ; 0xc409a + push ax ; 50 ; 0xc409b + push ax ; 50 ; 0xc409c + mov ax, dx ; 89 d0 ; 0xc409d + mov si, bx ; 89 de ; 0xc409f + mov bx, cx ; 89 cb ; 0xc40a1 + test dh, 040h ; f6 c6 40 ; 0xc40a3 vbe.c:410 + je short 040adh ; 74 05 ; 0xc40a6 + mov dx, strict word 00001h ; ba 01 00 ; 0xc40a8 + jmp short 040afh ; eb 02 ; 0xc40ab + xor dx, dx ; 31 d2 ; 0xc40ad + and ah, 001h ; 80 e4 01 ; 0xc40af vbe.c:411 + call 03effh ; e8 4a fe ; 0xc40b2 vbe.c:413 + mov word [bp-006h], ax ; 89 46 fa ; 0xc40b5 + test ax, ax ; 85 c0 ; 0xc40b8 vbe.c:415 + je short 04123h ; 74 67 ; 0xc40ba + mov cx, 00100h ; b9 00 01 ; 0xc40bc vbe.c:420 + xor ax, ax ; 31 c0 ; 0xc40bf + mov di, bx ; 89 df ; 0xc40c1 + mov es, si ; 8e c6 ; 0xc40c3 + jcxz 040c9h ; e3 02 ; 0xc40c5 + rep stosb ; f3 aa ; 0xc40c7 + xor cx, cx ; 31 c9 ; 0xc40c9 vbe.c:421 + jmp short 040d2h ; eb 05 ; 0xc40cb + cmp cx, strict byte 00042h ; 83 f9 42 ; 0xc40cd + jnc short 040ebh ; 73 19 ; 0xc40d0 + mov dx, word [bp-006h] ; 8b 56 fa ; 0xc40d2 vbe.c:424 + inc dx ; 42 ; 0xc40d5 + inc dx ; 42 ; 0xc40d6 + add dx, cx ; 01 ca ; 0xc40d7 + mov ax, 003b6h ; b8 b6 03 ; 0xc40d9 + call 03e93h ; e8 b4 fd ; 0xc40dc + mov di, bx ; 89 df ; 0xc40df vbe.c:425 + add di, cx ; 01 cf ; 0xc40e1 + mov es, si ; 8e c6 ; 0xc40e3 vbe.c:52 + mov byte [es:di], al ; 26 88 05 ; 0xc40e5 + inc cx ; 41 ; 0xc40e8 vbe.c:426 + jmp short 040cdh ; eb e2 ; 0xc40e9 + lea di, [bx+002h] ; 8d 7f 02 ; 0xc40eb vbe.c:427 + mov es, si ; 8e c6 ; 0xc40ee vbe.c:47 + mov al, byte [es:di] ; 26 8a 05 ; 0xc40f0 + test AL, strict byte 001h ; a8 01 ; 0xc40f3 vbe.c:428 + je short 04107h ; 74 10 ; 0xc40f5 + lea di, [bx+00ch] ; 8d 7f 0c ; 0xc40f7 vbe.c:429 + mov word [es:di], 0065ch ; 26 c7 05 5c 06 ; 0xc40fa vbe.c:62 + lea di, [bx+00eh] ; 8d 7f 0e ; 0xc40ff vbe.c:431 + mov word [es:di], 0c000h ; 26 c7 05 00 c0 ; 0xc4102 vbe.c:62 + mov ax, strict word 0000bh ; b8 0b 00 ; 0xc4107 vbe.c:434 + mov dx, 001ceh ; ba ce 01 ; 0xc410a + call 005a0h ; e8 90 c4 ; 0xc410d + mov dx, 001cfh ; ba cf 01 ; 0xc4110 vbe.c:435 + call 005a7h ; e8 91 c4 ; 0xc4113 + add bx, strict byte 0002ah ; 83 c3 2a ; 0xc4116 + mov es, si ; 8e c6 ; 0xc4119 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc411b + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc411e vbe.c:437 + jmp short 04126h ; eb 03 ; 0xc4121 vbe.c:438 + mov ax, 00100h ; b8 00 01 ; 0xc4123 vbe.c:442 + push SS ; 16 ; 0xc4126 vbe.c:445 + pop ES ; 07 ; 0xc4127 + mov bx, word [bp-008h] ; 8b 5e f8 ; 0xc4128 + mov word [es:bx], ax ; 26 89 07 ; 0xc412b + lea sp, [bp-004h] ; 8d 66 fc ; 0xc412e vbe.c:446 + pop di ; 5f ; 0xc4131 + pop si ; 5e ; 0xc4132 + pop bp ; 5d ; 0xc4133 + retn ; c3 ; 0xc4134 + ; disGetNextSymbol 0xc4135 LB 0x42f -> off=0x0 cb=00000000000000e7 uValue=00000000000c4135 'vbe_biosfn_set_mode' +vbe_biosfn_set_mode: ; 0xc4135 LB 0xe7 + push bp ; 55 ; 0xc4135 vbe.c:458 + mov bp, sp ; 89 e5 ; 0xc4136 + push si ; 56 ; 0xc4138 + push di ; 57 ; 0xc4139 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc413a + mov si, ax ; 89 c6 ; 0xc413d + mov word [bp-00ah], dx ; 89 56 f6 ; 0xc413f + test byte [bp-009h], 040h ; f6 46 f7 40 ; 0xc4142 vbe.c:466 + je short 0414dh ; 74 05 ; 0xc4146 + mov ax, strict word 00001h ; b8 01 00 ; 0xc4148 + jmp short 0414fh ; eb 02 ; 0xc414b + xor ax, ax ; 31 c0 ; 0xc414d + mov dx, ax ; 89 c2 ; 0xc414f + test ax, ax ; 85 c0 ; 0xc4151 vbe.c:467 + je short 04158h ; 74 03 ; 0xc4153 + mov ax, strict word 00040h ; b8 40 00 ; 0xc4155 + mov byte [bp-008h], al ; 88 46 f8 ; 0xc4158 + test byte [bp-009h], 080h ; f6 46 f7 80 ; 0xc415b vbe.c:468 + je short 04166h ; 74 05 ; 0xc415f + mov ax, 00080h ; b8 80 00 ; 0xc4161 + jmp short 04168h ; eb 02 ; 0xc4164 + xor ax, ax ; 31 c0 ; 0xc4166 + mov byte [bp-006h], al ; 88 46 fa ; 0xc4168 + and byte [bp-009h], 001h ; 80 66 f7 01 ; 0xc416b vbe.c:470 + cmp word [bp-00ah], 00100h ; 81 7e f6 00 01 ; 0xc416f vbe.c:473 + jnc short 04189h ; 73 13 ; 0xc4174 + xor ax, ax ; 31 c0 ; 0xc4176 vbe.c:477 + call 00610h ; e8 95 c4 ; 0xc4178 + mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xc417b vbe.c:481 + xor ah, ah ; 30 e4 ; 0xc417e + call 01479h ; e8 f6 d2 ; 0xc4180 + mov ax, strict word 0004fh ; b8 4f 00 ; 0xc4183 vbe.c:482 + jmp near 04210h ; e9 87 00 ; 0xc4186 vbe.c:483 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc4189 vbe.c:486 + call 03effh ; e8 70 fd ; 0xc418c + mov bx, ax ; 89 c3 ; 0xc418f + test ax, ax ; 85 c0 ; 0xc4191 vbe.c:488 + je short 0420dh ; 74 78 ; 0xc4193 + lea dx, [bx+014h] ; 8d 57 14 ; 0xc4195 vbe.c:493 + mov ax, 003b6h ; b8 b6 03 ; 0xc4198 + call 03e81h ; e8 e3 fc ; 0xc419b + mov cx, ax ; 89 c1 ; 0xc419e + lea dx, [bx+016h] ; 8d 57 16 ; 0xc41a0 vbe.c:494 + mov ax, 003b6h ; b8 b6 03 ; 0xc41a3 + call 03e81h ; e8 d8 fc ; 0xc41a6 + mov di, ax ; 89 c7 ; 0xc41a9 + lea dx, [bx+01bh] ; 8d 57 1b ; 0xc41ab vbe.c:495 + mov ax, 003b6h ; b8 b6 03 ; 0xc41ae + call 03e93h ; e8 df fc ; 0xc41b1 + mov bl, al ; 88 c3 ; 0xc41b4 + mov dl, al ; 88 c2 ; 0xc41b6 + xor ax, ax ; 31 c0 ; 0xc41b8 vbe.c:503 + call 00610h ; e8 53 c4 ; 0xc41ba + cmp bl, 004h ; 80 fb 04 ; 0xc41bd vbe.c:505 + jne short 041c8h ; 75 06 ; 0xc41c0 + mov ax, strict word 0006ah ; b8 6a 00 ; 0xc41c2 vbe.c:507 + call 01479h ; e8 b1 d2 ; 0xc41c5 + mov al, dl ; 88 d0 ; 0xc41c8 vbe.c:510 + xor ah, ah ; 30 e4 ; 0xc41ca + call 03df8h ; e8 29 fc ; 0xc41cc + mov ax, cx ; 89 c8 ; 0xc41cf vbe.c:511 + call 03da1h ; e8 cd fb ; 0xc41d1 + mov ax, di ; 89 f8 ; 0xc41d4 vbe.c:512 + call 03dc0h ; e8 e7 fb ; 0xc41d6 + xor ax, ax ; 31 c0 ; 0xc41d9 vbe.c:513 + call 00636h ; e8 58 c4 ; 0xc41db + mov dl, byte [bp-006h] ; 8a 56 fa ; 0xc41de vbe.c:514 + or dl, 001h ; 80 ca 01 ; 0xc41e1 + mov al, byte [bp-008h] ; 8a 46 f8 ; 0xc41e4 + xor ah, ah ; 30 e4 ; 0xc41e7 + or al, dl ; 08 d0 ; 0xc41e9 + call 00610h ; e8 22 c4 ; 0xc41eb + call 00708h ; e8 17 c5 ; 0xc41ee vbe.c:515 + mov bx, 000bah ; bb ba 00 ; 0xc41f1 vbe.c:62 + mov ax, strict word 00040h ; b8 40 00 ; 0xc41f4 + mov es, ax ; 8e c0 ; 0xc41f7 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc41f9 + mov word [es:bx], ax ; 26 89 07 ; 0xc41fc + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc41ff vbe.c:518 + or AL, strict byte 060h ; 0c 60 ; 0xc4202 + mov bx, 00087h ; bb 87 00 ; 0xc4204 vbe.c:52 + mov byte [es:bx], al ; 26 88 07 ; 0xc4207 + jmp near 04183h ; e9 76 ff ; 0xc420a + mov ax, 00100h ; b8 00 01 ; 0xc420d vbe.c:527 + push SS ; 16 ; 0xc4210 vbe.c:531 + pop ES ; 07 ; 0xc4211 + mov word [es:si], ax ; 26 89 04 ; 0xc4212 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc4215 vbe.c:532 + pop di ; 5f ; 0xc4218 + pop si ; 5e ; 0xc4219 + pop bp ; 5d ; 0xc421a + retn ; c3 ; 0xc421b + ; disGetNextSymbol 0xc421c LB 0x348 -> off=0x0 cb=0000000000000008 uValue=00000000000c421c 'vbe_biosfn_read_video_state_size' +vbe_biosfn_read_video_state_size: ; 0xc421c LB 0x8 + push bp ; 55 ; 0xc421c vbe.c:534 + mov bp, sp ; 89 e5 ; 0xc421d + mov ax, strict word 00012h ; b8 12 00 ; 0xc421f vbe.c:537 + pop bp ; 5d ; 0xc4222 + retn ; c3 ; 0xc4223 + ; disGetNextSymbol 0xc4224 LB 0x340 -> off=0x0 cb=000000000000004b uValue=00000000000c4224 'vbe_biosfn_save_video_state' +vbe_biosfn_save_video_state: ; 0xc4224 LB 0x4b + push bp ; 55 ; 0xc4224 vbe.c:539 + mov bp, sp ; 89 e5 ; 0xc4225 + push bx ; 53 ; 0xc4227 + push cx ; 51 ; 0xc4228 + push si ; 56 ; 0xc4229 + mov si, ax ; 89 c6 ; 0xc422a + mov bx, dx ; 89 d3 ; 0xc422c + mov ax, strict word 00004h ; b8 04 00 ; 0xc422e vbe.c:543 + mov dx, 001ceh ; ba ce 01 ; 0xc4231 + out DX, ax ; ef ; 0xc4234 + mov dx, 001cfh ; ba cf 01 ; 0xc4235 vbe.c:544 + in ax, DX ; ed ; 0xc4238 + mov es, si ; 8e c6 ; 0xc4239 vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc423b + inc bx ; 43 ; 0xc423e vbe.c:546 + inc bx ; 43 ; 0xc423f + test AL, strict byte 001h ; a8 01 ; 0xc4240 vbe.c:547 + je short 04267h ; 74 23 ; 0xc4242 + mov cx, strict word 00001h ; b9 01 00 ; 0xc4244 vbe.c:549 + jmp short 0424eh ; eb 05 ; 0xc4247 + cmp cx, strict byte 00009h ; 83 f9 09 ; 0xc4249 + jnbe short 04267h ; 77 19 ; 0xc424c + cmp cx, strict byte 00004h ; 83 f9 04 ; 0xc424e vbe.c:550 + je short 04264h ; 74 11 ; 0xc4251 + mov ax, cx ; 89 c8 ; 0xc4253 vbe.c:551 + mov dx, 001ceh ; ba ce 01 ; 0xc4255 + out DX, ax ; ef ; 0xc4258 + mov dx, 001cfh ; ba cf 01 ; 0xc4259 vbe.c:552 + in ax, DX ; ed ; 0xc425c + mov es, si ; 8e c6 ; 0xc425d vbe.c:62 + mov word [es:bx], ax ; 26 89 07 ; 0xc425f + inc bx ; 43 ; 0xc4262 vbe.c:553 + inc bx ; 43 ; 0xc4263 + inc cx ; 41 ; 0xc4264 vbe.c:555 + jmp short 04249h ; eb e2 ; 0xc4265 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc4267 vbe.c:556 + pop si ; 5e ; 0xc426a + pop cx ; 59 ; 0xc426b + pop bx ; 5b ; 0xc426c + pop bp ; 5d ; 0xc426d + retn ; c3 ; 0xc426e + ; disGetNextSymbol 0xc426f LB 0x2f5 -> off=0x0 cb=000000000000008f uValue=00000000000c426f 'vbe_biosfn_restore_video_state' +vbe_biosfn_restore_video_state: ; 0xc426f LB 0x8f + push bp ; 55 ; 0xc426f vbe.c:559 + mov bp, sp ; 89 e5 ; 0xc4270 + push bx ; 53 ; 0xc4272 + push cx ; 51 ; 0xc4273 + push si ; 56 ; 0xc4274 + push ax ; 50 ; 0xc4275 + mov cx, ax ; 89 c1 ; 0xc4276 + mov bx, dx ; 89 d3 ; 0xc4278 + mov es, ax ; 8e c0 ; 0xc427a vbe.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc427c + mov word [bp-008h], ax ; 89 46 f8 ; 0xc427f + inc bx ; 43 ; 0xc4282 vbe.c:564 + inc bx ; 43 ; 0xc4283 + test byte [bp-008h], 001h ; f6 46 f8 01 ; 0xc4284 vbe.c:566 + jne short 0429ah ; 75 10 ; 0xc4288 + mov ax, strict word 00004h ; b8 04 00 ; 0xc428a vbe.c:567 + mov dx, 001ceh ; ba ce 01 ; 0xc428d + out DX, ax ; ef ; 0xc4290 + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc4291 vbe.c:568 + mov dx, 001cfh ; ba cf 01 ; 0xc4294 + out DX, ax ; ef ; 0xc4297 + jmp short 042f6h ; eb 5c ; 0xc4298 vbe.c:569 + mov ax, strict word 00001h ; b8 01 00 ; 0xc429a vbe.c:570 + mov dx, 001ceh ; ba ce 01 ; 0xc429d + out DX, ax ; ef ; 0xc42a0 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc42a1 vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc42a4 vbe.c:58 + out DX, ax ; ef ; 0xc42a7 + inc bx ; 43 ; 0xc42a8 vbe.c:572 + inc bx ; 43 ; 0xc42a9 + mov ax, strict word 00002h ; b8 02 00 ; 0xc42aa + mov dx, 001ceh ; ba ce 01 ; 0xc42ad + out DX, ax ; ef ; 0xc42b0 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc42b1 vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc42b4 vbe.c:58 + out DX, ax ; ef ; 0xc42b7 + inc bx ; 43 ; 0xc42b8 vbe.c:575 + inc bx ; 43 ; 0xc42b9 + mov ax, strict word 00003h ; b8 03 00 ; 0xc42ba + mov dx, 001ceh ; ba ce 01 ; 0xc42bd + out DX, ax ; ef ; 0xc42c0 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc42c1 vbe.c:57 + mov dx, 001cfh ; ba cf 01 ; 0xc42c4 vbe.c:58 + out DX, ax ; ef ; 0xc42c7 + inc bx ; 43 ; 0xc42c8 vbe.c:578 + inc bx ; 43 ; 0xc42c9 + mov ax, strict word 00004h ; b8 04 00 ; 0xc42ca + mov dx, 001ceh ; ba ce 01 ; 0xc42cd + out DX, ax ; ef ; 0xc42d0 + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc42d1 vbe.c:580 + mov dx, 001cfh ; ba cf 01 ; 0xc42d4 + out DX, ax ; ef ; 0xc42d7 + mov si, strict word 00005h ; be 05 00 ; 0xc42d8 vbe.c:582 + jmp short 042e2h ; eb 05 ; 0xc42db + cmp si, strict byte 00009h ; 83 fe 09 ; 0xc42dd + jnbe short 042f6h ; 77 14 ; 0xc42e0 + mov ax, si ; 89 f0 ; 0xc42e2 vbe.c:583 + mov dx, 001ceh ; ba ce 01 ; 0xc42e4 + out DX, ax ; ef ; 0xc42e7 + mov es, cx ; 8e c1 ; 0xc42e8 vbe.c:57 + mov ax, word [es:bx] ; 26 8b 07 ; 0xc42ea + mov dx, 001cfh ; ba cf 01 ; 0xc42ed vbe.c:58 + out DX, ax ; ef ; 0xc42f0 + inc bx ; 43 ; 0xc42f1 vbe.c:585 + inc bx ; 43 ; 0xc42f2 + inc si ; 46 ; 0xc42f3 vbe.c:586 + jmp short 042ddh ; eb e7 ; 0xc42f4 + lea sp, [bp-006h] ; 8d 66 fa ; 0xc42f6 vbe.c:588 + pop si ; 5e ; 0xc42f9 + pop cx ; 59 ; 0xc42fa + pop bx ; 5b ; 0xc42fb + pop bp ; 5d ; 0xc42fc + retn ; c3 ; 0xc42fd + ; disGetNextSymbol 0xc42fe LB 0x266 -> off=0x0 cb=000000000000008d uValue=00000000000c42fe 'vbe_biosfn_save_restore_state' +vbe_biosfn_save_restore_state: ; 0xc42fe LB 0x8d + push bp ; 55 ; 0xc42fe vbe.c:604 + mov bp, sp ; 89 e5 ; 0xc42ff + push si ; 56 ; 0xc4301 + push di ; 57 ; 0xc4302 + push ax ; 50 ; 0xc4303 + mov si, ax ; 89 c6 ; 0xc4304 + mov word [bp-006h], dx ; 89 56 fa ; 0xc4306 + mov ax, bx ; 89 d8 ; 0xc4309 + mov bx, word [bp+004h] ; 8b 5e 04 ; 0xc430b + mov di, strict word 0004fh ; bf 4f 00 ; 0xc430e vbe.c:609 + xor ah, ah ; 30 e4 ; 0xc4311 vbe.c:610 + cmp ax, strict word 00002h ; 3d 02 00 ; 0xc4313 + je short 0435eh ; 74 46 ; 0xc4316 + cmp ax, strict word 00001h ; 3d 01 00 ; 0xc4318 + je short 04342h ; 74 25 ; 0xc431b + test ax, ax ; 85 c0 ; 0xc431d + jne short 0437ah ; 75 59 ; 0xc431f + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc4321 vbe.c:612 + call 032b8h ; e8 91 ef ; 0xc4324 + mov cx, ax ; 89 c1 ; 0xc4327 + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc4329 vbe.c:616 + je short 04334h ; 74 05 ; 0xc432d + call 0421ch ; e8 ea fe ; 0xc432f vbe.c:617 + add ax, cx ; 01 c8 ; 0xc4332 + add ax, strict word 0003fh ; 05 3f 00 ; 0xc4334 vbe.c:618 + mov CL, strict byte 006h ; b1 06 ; 0xc4337 + shr ax, CL ; d3 e8 ; 0xc4339 + push SS ; 16 ; 0xc433b + pop ES ; 07 ; 0xc433c + mov word [es:bx], ax ; 26 89 07 ; 0xc433d + jmp short 0437dh ; eb 3b ; 0xc4340 vbe.c:619 + push SS ; 16 ; 0xc4342 vbe.c:621 + pop ES ; 07 ; 0xc4343 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc4344 + mov dx, cx ; 89 ca ; 0xc4347 vbe.c:622 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc4349 + call 032f6h ; e8 a7 ef ; 0xc434c + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc434f vbe.c:626 + je short 0437dh ; 74 28 ; 0xc4353 + mov dx, ax ; 89 c2 ; 0xc4355 vbe.c:627 + mov ax, cx ; 89 c8 ; 0xc4357 + call 04224h ; e8 c8 fe ; 0xc4359 + jmp short 0437dh ; eb 1f ; 0xc435c vbe.c:628 + push SS ; 16 ; 0xc435e vbe.c:630 + pop ES ; 07 ; 0xc435f + mov bx, word [es:bx] ; 26 8b 1f ; 0xc4360 + mov dx, cx ; 89 ca ; 0xc4363 vbe.c:631 + mov ax, word [bp-006h] ; 8b 46 fa ; 0xc4365 + call 035ceh ; e8 63 f2 ; 0xc4368 + test byte [bp-006h], 008h ; f6 46 fa 08 ; 0xc436b vbe.c:635 + je short 0437dh ; 74 0c ; 0xc436f + mov dx, ax ; 89 c2 ; 0xc4371 vbe.c:636 + mov ax, cx ; 89 c8 ; 0xc4373 + call 0426fh ; e8 f7 fe ; 0xc4375 + jmp short 0437dh ; eb 03 ; 0xc4378 vbe.c:637 + mov di, 00100h ; bf 00 01 ; 0xc437a vbe.c:640 + push SS ; 16 ; 0xc437d vbe.c:643 + pop ES ; 07 ; 0xc437e + mov word [es:si], di ; 26 89 3c ; 0xc437f + lea sp, [bp-004h] ; 8d 66 fc ; 0xc4382 vbe.c:644 + pop di ; 5f ; 0xc4385 + pop si ; 5e ; 0xc4386 + pop bp ; 5d ; 0xc4387 + retn 00002h ; c2 02 00 ; 0xc4388 + ; disGetNextSymbol 0xc438b LB 0x1d9 -> off=0x0 cb=00000000000000e2 uValue=00000000000c438b 'vbe_biosfn_get_set_scanline_length' +vbe_biosfn_get_set_scanline_length: ; 0xc438b LB 0xe2 + push bp ; 55 ; 0xc438b vbe.c:665 + mov bp, sp ; 89 e5 ; 0xc438c + push si ; 56 ; 0xc438e + push di ; 57 ; 0xc438f + sub sp, strict byte 0000ah ; 83 ec 0a ; 0xc4390 + push ax ; 50 ; 0xc4393 + mov di, dx ; 89 d7 ; 0xc4394 + mov word [bp-006h], bx ; 89 5e fa ; 0xc4396 + mov si, cx ; 89 ce ; 0xc4399 + call 03e17h ; e8 79 fa ; 0xc439b vbe.c:674 + cmp AL, strict byte 00fh ; 3c 0f ; 0xc439e vbe.c:675 + jne short 043a7h ; 75 05 ; 0xc43a0 + mov cx, strict word 00010h ; b9 10 00 ; 0xc43a2 + jmp short 043abh ; eb 04 ; 0xc43a5 + xor ah, ah ; 30 e4 ; 0xc43a7 + mov cx, ax ; 89 c1 ; 0xc43a9 + mov ch, cl ; 88 cd ; 0xc43ab + call 03e4fh ; e8 9f fa ; 0xc43ad vbe.c:676 + mov word [bp-00ah], ax ; 89 46 f6 ; 0xc43b0 + mov word [bp-00ch], strict word 0004fh ; c7 46 f4 4f 00 ; 0xc43b3 vbe.c:677 + push SS ; 16 ; 0xc43b8 vbe.c:678 + pop ES ; 07 ; 0xc43b9 + mov bx, word [bp-006h] ; 8b 5e fa ; 0xc43ba + mov bx, word [es:bx] ; 26 8b 1f ; 0xc43bd + mov al, byte [es:di] ; 26 8a 05 ; 0xc43c0 vbe.c:679 + cmp AL, strict byte 002h ; 3c 02 ; 0xc43c3 vbe.c:683 + je short 043d2h ; 74 0b ; 0xc43c5 + cmp AL, strict byte 001h ; 3c 01 ; 0xc43c7 + je short 043fbh ; 74 30 ; 0xc43c9 + test al, al ; 84 c0 ; 0xc43cb + je short 043f6h ; 74 27 ; 0xc43cd + jmp near 04456h ; e9 84 00 ; 0xc43cf + cmp ch, 004h ; 80 fd 04 ; 0xc43d2 vbe.c:685 + jne short 043ddh ; 75 06 ; 0xc43d5 + mov CL, strict byte 003h ; b1 03 ; 0xc43d7 vbe.c:686 + sal bx, CL ; d3 e3 ; 0xc43d9 + jmp short 043f6h ; eb 19 ; 0xc43db vbe.c:687 + mov al, ch ; 88 e8 ; 0xc43dd vbe.c:688 + xor ah, ah ; 30 e4 ; 0xc43df + cwd ; 99 ; 0xc43e1 + mov CL, strict byte 003h ; b1 03 ; 0xc43e2 + sal dx, CL ; d3 e2 ; 0xc43e4 + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc43e6 + sar ax, CL ; d3 f8 ; 0xc43e8 + mov word [bp-00eh], ax ; 89 46 f2 ; 0xc43ea + mov ax, bx ; 89 d8 ; 0xc43ed + xor dx, dx ; 31 d2 ; 0xc43ef + div word [bp-00eh] ; f7 76 f2 ; 0xc43f1 + mov bx, ax ; 89 c3 ; 0xc43f4 + mov ax, bx ; 89 d8 ; 0xc43f6 vbe.c:691 + call 03e30h ; e8 35 fa ; 0xc43f8 + call 03e4fh ; e8 51 fa ; 0xc43fb vbe.c:694 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc43fe + push SS ; 16 ; 0xc4401 vbe.c:695 + pop ES ; 07 ; 0xc4402 + mov bx, word [bp-006h] ; 8b 5e fa ; 0xc4403 + mov word [es:bx], ax ; 26 89 07 ; 0xc4406 + cmp ch, 004h ; 80 fd 04 ; 0xc4409 vbe.c:696 + jne short 04416h ; 75 08 ; 0xc440c + mov CL, strict byte 003h ; b1 03 ; 0xc440e vbe.c:697 + mov bx, ax ; 89 c3 ; 0xc4410 + shr bx, CL ; d3 eb ; 0xc4412 + jmp short 0442ch ; eb 16 ; 0xc4414 vbe.c:698 + mov al, ch ; 88 e8 ; 0xc4416 vbe.c:699 + xor ah, ah ; 30 e4 ; 0xc4418 + cwd ; 99 ; 0xc441a + mov CL, strict byte 003h ; b1 03 ; 0xc441b + sal dx, CL ; d3 e2 ; 0xc441d + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc441f + sar ax, CL ; d3 f8 ; 0xc4421 + mov bx, ax ; 89 c3 ; 0xc4423 + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc4425 + mul bx ; f7 e3 ; 0xc4428 + mov bx, ax ; 89 c3 ; 0xc442a + add bx, strict byte 00003h ; 83 c3 03 ; 0xc442c vbe.c:700 + and bl, 0fch ; 80 e3 fc ; 0xc442f + push SS ; 16 ; 0xc4432 vbe.c:701 + pop ES ; 07 ; 0xc4433 + mov word [es:di], bx ; 26 89 1d ; 0xc4434 + call 03e68h ; e8 2e fa ; 0xc4437 vbe.c:702 + push SS ; 16 ; 0xc443a + pop ES ; 07 ; 0xc443b + mov word [es:si], ax ; 26 89 04 ; 0xc443c + call 03ddfh ; e8 9d f9 ; 0xc443f vbe.c:703 + push SS ; 16 ; 0xc4442 + pop ES ; 07 ; 0xc4443 + cmp ax, word [es:si] ; 26 3b 04 ; 0xc4444 + jbe short 0445bh ; 76 12 ; 0xc4447 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc4449 vbe.c:704 + call 03e30h ; e8 e1 f9 ; 0xc444c + mov word [bp-00ch], 00200h ; c7 46 f4 00 02 ; 0xc444f vbe.c:705 + jmp short 0445bh ; eb 05 ; 0xc4454 vbe.c:707 + mov word [bp-00ch], 00100h ; c7 46 f4 00 01 ; 0xc4456 vbe.c:710 + push SS ; 16 ; 0xc445b vbe.c:713 + pop ES ; 07 ; 0xc445c + mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xc445d + mov bx, word [bp-010h] ; 8b 5e f0 ; 0xc4460 + mov word [es:bx], ax ; 26 89 07 ; 0xc4463 + lea sp, [bp-004h] ; 8d 66 fc ; 0xc4466 vbe.c:714 + pop di ; 5f ; 0xc4469 + pop si ; 5e ; 0xc446a + pop bp ; 5d ; 0xc446b + retn ; c3 ; 0xc446c + ; disGetNextSymbol 0xc446d LB 0xf7 -> off=0x0 cb=00000000000000f7 uValue=00000000000c446d 'private_biosfn_custom_mode' +private_biosfn_custom_mode: ; 0xc446d LB 0xf7 + push bp ; 55 ; 0xc446d vbe.c:740 + mov bp, sp ; 89 e5 ; 0xc446e + push si ; 56 ; 0xc4470 + push di ; 57 ; 0xc4471 + sub sp, strict byte 00006h ; 83 ec 06 ; 0xc4472 + push ax ; 50 ; 0xc4475 + mov si, dx ; 89 d6 ; 0xc4476 + mov di, cx ; 89 cf ; 0xc4478 + mov word [bp-00ah], strict word 0004fh ; c7 46 f6 4f 00 ; 0xc447a vbe.c:753 + push SS ; 16 ; 0xc447f vbe.c:754 + pop ES ; 07 ; 0xc4480 + mov al, byte [es:si] ; 26 8a 04 ; 0xc4481 + test al, al ; 84 c0 ; 0xc4484 vbe.c:755 + jne short 044a8h ; 75 20 ; 0xc4486 + push SS ; 16 ; 0xc4488 vbe.c:757 + pop ES ; 07 ; 0xc4489 + mov bx, word [es:bx] ; 26 8b 1f ; 0xc448a + mov ax, word [es:di] ; 26 8b 05 ; 0xc448d vbe.c:758 + mov word [bp-008h], ax ; 89 46 f8 ; 0xc4490 + mov al, byte [es:si+001h] ; 26 8a 44 01 ; 0xc4493 vbe.c:759 + and ax, strict word 0007fh ; 25 7f 00 ; 0xc4497 + mov ch, al ; 88 c5 ; 0xc449a + cmp AL, strict byte 008h ; 3c 08 ; 0xc449c vbe.c:764 + je short 044b0h ; 74 10 ; 0xc449e + cmp AL, strict byte 010h ; 3c 10 ; 0xc44a0 + je short 044b0h ; 74 0c ; 0xc44a2 + cmp AL, strict byte 020h ; 3c 20 ; 0xc44a4 + je short 044b0h ; 74 08 ; 0xc44a6 + mov word [bp-00ah], 00100h ; c7 46 f6 00 01 ; 0xc44a8 vbe.c:765 + jmp near 04552h ; e9 a2 00 ; 0xc44ad vbe.c:766 + push SS ; 16 ; 0xc44b0 vbe.c:770 + pop ES ; 07 ; 0xc44b1 + test byte [es:si+001h], 080h ; 26 f6 44 01 80 ; 0xc44b2 + je short 044beh ; 74 05 ; 0xc44b7 + mov ax, strict word 00040h ; b8 40 00 ; 0xc44b9 + jmp short 044c0h ; eb 02 ; 0xc44bc + xor ax, ax ; 31 c0 ; 0xc44be + mov byte [bp-006h], al ; 88 46 fa ; 0xc44c0 + cmp bx, 00280h ; 81 fb 80 02 ; 0xc44c3 vbe.c:773 + jnc short 044ceh ; 73 05 ; 0xc44c7 + mov bx, 00280h ; bb 80 02 ; 0xc44c9 vbe.c:774 + jmp short 044d7h ; eb 09 ; 0xc44cc vbe.c:775 + cmp bx, 00a00h ; 81 fb 00 0a ; 0xc44ce + jbe short 044d7h ; 76 03 ; 0xc44d2 + mov bx, 00a00h ; bb 00 0a ; 0xc44d4 vbe.c:776 + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc44d7 vbe.c:777 + cmp ax, 001e0h ; 3d e0 01 ; 0xc44da + jnc short 044e6h ; 73 07 ; 0xc44dd + mov word [bp-008h], 001e0h ; c7 46 f8 e0 01 ; 0xc44df vbe.c:778 + jmp short 044f0h ; eb 0a ; 0xc44e4 vbe.c:779 + cmp ax, 00780h ; 3d 80 07 ; 0xc44e6 + jbe short 044f0h ; 76 05 ; 0xc44e9 + mov word [bp-008h], 00780h ; c7 46 f8 80 07 ; 0xc44eb vbe.c:780 + mov dx, strict word 0ffffh ; ba ff ff ; 0xc44f0 vbe.c:786 + mov ax, 003b6h ; b8 b6 03 ; 0xc44f3 + call 03e81h ; e8 88 f9 ; 0xc44f6 + mov si, ax ; 89 c6 ; 0xc44f9 + mov al, ch ; 88 e8 ; 0xc44fb vbe.c:789 + xor ah, ah ; 30 e4 ; 0xc44fd + cwd ; 99 ; 0xc44ff + mov CL, strict byte 003h ; b1 03 ; 0xc4500 + sal dx, CL ; d3 e2 ; 0xc4502 + db 01bh, 0c2h + ; sbb ax, dx ; 1b c2 ; 0xc4504 + sar ax, CL ; d3 f8 ; 0xc4506 + mov dx, ax ; 89 c2 ; 0xc4508 + mov ax, bx ; 89 d8 ; 0xc450a + mul dx ; f7 e2 ; 0xc450c + add ax, strict word 00003h ; 05 03 00 ; 0xc450e vbe.c:790 + and AL, strict byte 0fch ; 24 fc ; 0xc4511 + mov dx, word [bp-008h] ; 8b 56 f8 ; 0xc4513 vbe.c:792 + mul dx ; f7 e2 ; 0xc4516 + cmp dx, si ; 39 f2 ; 0xc4518 vbe.c:794 + jnbe short 04522h ; 77 06 ; 0xc451a + jne short 04529h ; 75 0b ; 0xc451c + test ax, ax ; 85 c0 ; 0xc451e + jbe short 04529h ; 76 07 ; 0xc4520 + mov word [bp-00ah], 00200h ; c7 46 f6 00 02 ; 0xc4522 vbe.c:796 + jmp short 04552h ; eb 29 ; 0xc4527 vbe.c:797 + xor ax, ax ; 31 c0 ; 0xc4529 vbe.c:801 + call 00610h ; e8 e2 c0 ; 0xc452b + mov al, ch ; 88 e8 ; 0xc452e vbe.c:802 + xor ah, ah ; 30 e4 ; 0xc4530 + call 03df8h ; e8 c3 f8 ; 0xc4532 + mov ax, bx ; 89 d8 ; 0xc4535 vbe.c:803 + call 03da1h ; e8 67 f8 ; 0xc4537 + mov ax, word [bp-008h] ; 8b 46 f8 ; 0xc453a vbe.c:804 + call 03dc0h ; e8 80 f8 ; 0xc453d + xor ax, ax ; 31 c0 ; 0xc4540 vbe.c:805 + call 00636h ; e8 f1 c0 ; 0xc4542 + mov al, byte [bp-006h] ; 8a 46 fa ; 0xc4545 vbe.c:806 + or AL, strict byte 001h ; 0c 01 ; 0xc4548 + xor ah, ah ; 30 e4 ; 0xc454a + call 00610h ; e8 c1 c0 ; 0xc454c + call 00708h ; e8 b6 c1 ; 0xc454f vbe.c:807 + push SS ; 16 ; 0xc4552 vbe.c:815 + pop ES ; 07 ; 0xc4553 + mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xc4554 + mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xc4557 + mov word [es:bx], ax ; 26 89 07 ; 0xc455a + lea sp, [bp-004h] ; 8d 66 fc ; 0xc455d vbe.c:816 + pop di ; 5f ; 0xc4560 + pop si ; 5e ; 0xc4561 + pop bp ; 5d ; 0xc4562 + retn ; c3 ; 0xc4563 + + ; Padding 0xdc bytes at 0xc4564 + times 220 db 0 + +section VBE32 progbits vstart=0x4640 align=1 ; size=0x115 class=CODE group=AUTO + ; disGetNextSymbol 0xc4640 LB 0x115 -> off=0x0 cb=0000000000000114 uValue=00000000000c0000 'vesa_pm_start' +vesa_pm_start: ; 0xc4640 LB 0x114 + sbb byte [bx+si], al ; 18 00 ; 0xc4640 + dec di ; 4f ; 0xc4642 + add byte [bx+si], dl ; 00 10 ; 0xc4643 + add word [bx+si], cx ; 01 08 ; 0xc4645 + add dh, cl ; 00 ce ; 0xc4647 + add di, cx ; 01 cf ; 0xc4649 + add di, cx ; 01 cf ; 0xc464b + add ax, dx ; 01 d0 ; 0xc464d + add word [bp-048fdh], si ; 01 b6 03 b7 ; 0xc464f + db 003h, 0ffh + ; add di, di ; 03 ff ; 0xc4653 + db 0ffh + db 0ffh + jmp word [bp-07dh] ; ff 66 83 ; 0xc4657 + sti ; fb ; 0xc465a + add byte [si+005h], dh ; 00 74 05 ; 0xc465b + mov eax, strict dword 066c30100h ; 66 b8 00 01 c3 66 ; 0xc465e vberom.asm:825 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc4664 + push edx ; 66 52 ; 0xc4666 vberom.asm:829 + push eax ; 66 50 ; 0xc4668 vberom.asm:830 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc466a vberom.asm:831 + add ax, 06600h ; 05 00 66 ; 0xc4670 + out DX, ax ; ef ; 0xc4673 + pop eax ; 66 58 ; 0xc4674 vberom.asm:834 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc4676 vberom.asm:835 + in eax, DX ; 66 ed ; 0xc467c vberom.asm:837 + pop edx ; 66 5a ; 0xc467e vberom.asm:838 + db 066h, 03bh, 0d0h + ; cmp edx, eax ; 66 3b d0 ; 0xc4680 vberom.asm:839 + jne short 0468ah ; 75 05 ; 0xc4683 vberom.asm:840 + mov eax, strict dword 066c3004fh ; 66 b8 4f 00 c3 66 ; 0xc4685 vberom.asm:841 + mov ax, 0014fh ; b8 4f 01 ; 0xc468b + retn ; c3 ; 0xc468e vberom.asm:845 + cmp bl, 080h ; 80 fb 80 ; 0xc468f vberom.asm:847 + je short 0469eh ; 74 0a ; 0xc4692 vberom.asm:848 + cmp bl, 000h ; 80 fb 00 ; 0xc4694 vberom.asm:849 + je short 046aeh ; 74 15 ; 0xc4697 vberom.asm:850 + mov eax, strict dword 052c30100h ; 66 b8 00 01 c3 52 ; 0xc4699 vberom.asm:851 + mov edx, strict dword 0a8ec03dah ; 66 ba da 03 ec a8 ; 0xc469f vberom.asm:855 + or byte [di-005h], dh ; 08 75 fb ; 0xc46a5 + in AL, DX ; ec ; 0xc46a8 vberom.asm:861 + test AL, strict byte 008h ; a8 08 ; 0xc46a9 vberom.asm:862 + je short 046a8h ; 74 fb ; 0xc46ab vberom.asm:863 + pop dx ; 5a ; 0xc46ad vberom.asm:864 + push ax ; 50 ; 0xc46ae vberom.asm:868 + push cx ; 51 ; 0xc46af vberom.asm:869 + push dx ; 52 ; 0xc46b0 vberom.asm:870 + push si ; 56 ; 0xc46b1 vberom.asm:871 + push di ; 57 ; 0xc46b2 vberom.asm:872 + sal dx, 010h ; c1 e2 10 ; 0xc46b3 vberom.asm:873 + and cx, strict word 0ffffh ; 81 e1 ff ff ; 0xc46b6 vberom.asm:874 + add byte [bx+si], al ; 00 00 ; 0xc46ba + db 00bh, 0cah + ; or cx, dx ; 0b ca ; 0xc46bc vberom.asm:875 + sal cx, 002h ; c1 e1 02 ; 0xc46be vberom.asm:876 + db 08bh, 0c1h + ; mov ax, cx ; 8b c1 ; 0xc46c1 vberom.asm:877 + push ax ; 50 ; 0xc46c3 vberom.asm:878 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc46c4 vberom.asm:879 + push ES ; 06 ; 0xc46ca + add byte [bp-011h], ah ; 00 66 ef ; 0xc46cb + mov edx, strict dword 0ed6601cfh ; 66 ba cf 01 66 ed ; 0xc46ce vberom.asm:882 + db 00fh, 0b7h, 0c8h + ; movzx cx, ax ; 0f b7 c8 ; 0xc46d4 vberom.asm:884 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc46d7 vberom.asm:885 + add ax, word [bx+si] ; 03 00 ; 0xc46dd + out DX, eax ; 66 ef ; 0xc46df vberom.asm:887 + mov edx, strict dword 0ed6601cfh ; 66 ba cf 01 66 ed ; 0xc46e1 vberom.asm:888 + db 00fh, 0b7h, 0f0h + ; movzx si, ax ; 0f b7 f0 ; 0xc46e7 vberom.asm:890 + pop ax ; 58 ; 0xc46ea vberom.asm:891 + cmp si, strict byte 00004h ; 83 fe 04 ; 0xc46eb vberom.asm:893 + je short 04707h ; 74 17 ; 0xc46ee vberom.asm:894 + add si, strict byte 00007h ; 83 c6 07 ; 0xc46f0 vberom.asm:895 + shr si, 003h ; c1 ee 03 ; 0xc46f3 vberom.asm:896 + imul cx, si ; 0f af ce ; 0xc46f6 vberom.asm:897 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc46f9 vberom.asm:898 + div cx ; f7 f1 ; 0xc46fb vberom.asm:899 + db 08bh, 0f8h + ; mov di, ax ; 8b f8 ; 0xc46fd vberom.asm:900 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc46ff vberom.asm:901 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc4701 vberom.asm:902 + div si ; f7 f6 ; 0xc4703 vberom.asm:903 + jmp short 04713h ; eb 0c ; 0xc4705 vberom.asm:904 + shr cx, 1 ; d1 e9 ; 0xc4707 vberom.asm:907 + db 033h, 0d2h + ; xor dx, dx ; 33 d2 ; 0xc4709 vberom.asm:908 + div cx ; f7 f1 ; 0xc470b vberom.asm:909 + db 08bh, 0f8h + ; mov di, ax ; 8b f8 ; 0xc470d vberom.asm:910 + db 08bh, 0c2h + ; mov ax, dx ; 8b c2 ; 0xc470f vberom.asm:911 + sal ax, 1 ; d1 e0 ; 0xc4711 vberom.asm:912 + push edx ; 66 52 ; 0xc4713 vberom.asm:915 + push eax ; 66 50 ; 0xc4715 vberom.asm:916 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc4717 vberom.asm:917 + or byte [bx+si], al ; 08 00 ; 0xc471d + out DX, eax ; 66 ef ; 0xc471f vberom.asm:919 + pop eax ; 66 58 ; 0xc4721 vberom.asm:920 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc4723 vberom.asm:921 + pop edx ; 66 5a ; 0xc4729 vberom.asm:923 + db 066h, 08bh, 0c7h + ; mov eax, edi ; 66 8b c7 ; 0xc472b vberom.asm:925 + push edx ; 66 52 ; 0xc472e vberom.asm:926 + push eax ; 66 50 ; 0xc4730 vberom.asm:927 + mov edx, strict dword 0b86601ceh ; 66 ba ce 01 66 b8 ; 0xc4732 vberom.asm:928 + or word [bx+si], ax ; 09 00 ; 0xc4738 + out DX, eax ; 66 ef ; 0xc473a vberom.asm:930 + pop eax ; 66 58 ; 0xc473c vberom.asm:931 + mov edx, strict dword 0ef6601cfh ; 66 ba cf 01 66 ef ; 0xc473e vberom.asm:932 + pop edx ; 66 5a ; 0xc4744 vberom.asm:934 + pop di ; 5f ; 0xc4746 vberom.asm:936 + pop si ; 5e ; 0xc4747 vberom.asm:937 + pop dx ; 5a ; 0xc4748 vberom.asm:938 + pop cx ; 59 ; 0xc4749 vberom.asm:939 + pop ax ; 58 ; 0xc474a vberom.asm:940 + mov eax, strict dword 066c3004fh ; 66 b8 4f 00 c3 66 ; 0xc474b vberom.asm:941 + mov ax, 0014fh ; b8 4f 01 ; 0xc4751 + ; disGetNextSymbol 0xc4754 LB 0x1 -> off=0x0 cb=0000000000000001 uValue=0000000000000114 'vesa_pm_end' +vesa_pm_end: ; 0xc4754 LB 0x1 + retn ; c3 ; 0xc4754 vberom.asm:946 + + ; Padding 0x2b bytes at 0xc4755 + times 43 db 0 + +section _DATA progbits vstart=0x4780 align=1 ; size=0x374d class=DATA group=DGROUP + ; disGetNextSymbol 0xc4780 LB 0x374d -> off=0x0 cb=000000000000002f uValue=00000000000c0000 '_msg_vga_init' +_msg_vga_init: ; 0xc4780 LB 0x2f + db 'Oracle VM VirtualBox Version 7.0.14 VGA BIOS', 00dh, 00ah, 000h + ; disGetNextSymbol 0xc47af LB 0x371e -> off=0x0 cb=0000000000000080 uValue=00000000000c002f 'vga_modes' +vga_modes: ; 0xc47af LB 0x80 + db 000h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 001h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h + db 002h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h, 003h, 000h, 000h, 004h, 000h, 0b8h, 0ffh, 002h + db 004h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h, 005h, 001h, 002h, 002h, 000h, 0b8h, 0ffh, 001h + db 006h, 001h, 002h, 001h, 000h, 0b8h, 0ffh, 001h, 007h, 000h, 001h, 004h, 000h, 0b0h, 0ffh, 000h + db 00dh, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 001h, 00eh, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 001h + db 00fh, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 000h, 010h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + db 011h, 001h, 003h, 001h, 000h, 0a0h, 0ffh, 002h, 012h, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + db 013h, 001h, 005h, 008h, 000h, 0a0h, 0ffh, 003h, 06ah, 001h, 004h, 004h, 000h, 0a0h, 0ffh, 002h + ; disGetNextSymbol 0xc482f LB 0x369e -> off=0x0 cb=0000000000000010 uValue=00000000000c00af 'line_to_vpti' +line_to_vpti: ; 0xc482f LB 0x10 + db 017h, 017h, 018h, 018h, 004h, 005h, 006h, 007h, 00dh, 00eh, 011h, 012h, 01ah, 01bh, 01ch, 01dh + ; disGetNextSymbol 0xc483f LB 0x368e -> off=0x0 cb=0000000000000004 uValue=00000000000c00bf 'dac_regs' +dac_regs: ; 0xc483f LB 0x4 + dd 0ff3f3f3fh + ; disGetNextSymbol 0xc4843 LB 0x368a -> off=0x0 cb=0000000000000780 uValue=00000000000c00c3 'video_param_table' +video_param_table: ; 0xc4843 LB 0x780 + db 028h, 018h, 008h, 000h, 008h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 008h, 000h, 008h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 008h, 000h, 010h, 001h, 003h, 000h, 002h, 063h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 008h, 000h, 010h, 001h, 003h, 000h, 002h, 063h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 0c7h, 006h, 007h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 008h, 000h, 040h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0a2h, 0ffh, 000h, 013h, 015h, 017h, 002h, 004h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 003h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 00fh, 00fh, 0ffh + db 028h, 018h, 008h, 000h, 040h, 009h, 003h, 000h, 002h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0a2h, 0ffh, 000h, 013h, 015h, 017h, 002h, 004h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 003h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 00fh, 00fh, 0ffh + db 050h, 018h, 008h, 000h, 040h, 001h, 001h, 000h, 006h, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 0c1h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 000h, 096h + db 0b9h, 0c2h, 0ffh, 000h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h, 017h + db 017h, 017h, 017h, 001h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 00dh, 00fh, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 000h, 003h, 000h, 003h, 0a6h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00dh, 063h + db 0bah, 0a3h, 0ffh, 000h, 008h, 008h, 008h, 008h, 008h, 008h, 008h, 010h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 00eh, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00ah, 000h, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 028h, 018h, 008h, 000h, 020h, 009h, 00fh, 000h, 006h, 063h, 02dh, 027h, 028h, 090h, 02bh, 080h + db 0bfh, 01fh, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 000h, 096h + db 0b9h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 018h, 008h, 000h, 040h, 001h, 00fh, 000h, 006h, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 000h, 096h + db 0b9h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 010h, 011h, 012h, 013h, 014h + db 015h, 016h, 017h, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 050h, 018h, 00eh, 000h, 080h, 001h, 00fh, 000h, 006h, 0a3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00fh, 063h + db 0bah, 0e3h, 0ffh, 000h, 008h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 008h, 000h, 000h, 000h + db 018h, 000h, 000h, 001h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 018h, 00eh, 000h, 080h, 001h, 00fh, 000h, 006h, 0a3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 00fh, 063h + db 0bah, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 028h, 018h, 00eh, 000h, 008h, 009h, 003h, 000h, 002h, 0a3h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 014h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 00eh, 000h, 008h, 009h, 003h, 000h, 002h, 0a3h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 014h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 001h, 003h, 000h, 002h, 0a3h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 050h, 018h, 00eh, 000h, 010h, 001h, 003h, 000h, 002h, 0a3h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04dh, 00bh, 00ch, 000h, 000h, 000h, 000h, 083h, 085h, 05dh, 028h, 01fh, 063h + db 0bah, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 008h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 000h, 0ffh + db 028h, 018h, 010h, 000h, 008h, 008h, 003h, 000h, 002h, 067h, 02dh, 027h, 028h, 090h, 02bh, 0a0h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 014h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 00ch, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 00fh, 0ffh + db 050h, 018h, 010h, 000h, 010h, 000h, 003h, 000h, 002h, 067h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 01fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 00ch, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00eh, 00fh, 0ffh + db 050h, 018h, 010h, 000h, 010h, 000h, 003h, 000h, 002h, 066h, 05fh, 04fh, 050h, 082h, 055h, 081h + db 0bfh, 01fh, 000h, 04fh, 00dh, 00eh, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 00fh, 096h + db 0b9h, 0a3h, 0ffh, 000h, 008h, 008h, 008h, 008h, 008h, 008h, 008h, 010h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 00eh, 000h, 00fh, 008h, 000h, 000h, 000h, 000h, 000h, 010h, 00ah, 00fh, 0ffh + db 050h, 01dh, 010h, 000h, 0a0h, 001h, 00fh, 000h, 006h, 0e3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 00bh, 03eh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 0eah, 08ch, 0dfh, 028h, 000h, 0e7h + db 004h, 0c3h, 0ffh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h, 03fh, 000h + db 03fh, 000h, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 050h, 01dh, 010h, 000h, 0a0h, 001h, 00fh, 000h, 006h, 0e3h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 00bh, 03eh, 000h, 040h, 000h, 000h, 000h, 000h, 000h, 000h, 0eah, 08ch, 0dfh, 028h, 000h, 0e7h + db 004h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + db 028h, 018h, 008h, 000h, 020h, 001h, 00fh, 000h, 00eh, 063h, 05fh, 04fh, 050h, 082h, 054h, 080h + db 0bfh, 01fh, 000h, 041h, 000h, 000h, 000h, 000h, 000h, 000h, 09ch, 08eh, 08fh, 028h, 040h, 096h + db 0b9h, 0a3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 006h, 007h, 008h, 009h, 00ah, 00bh, 00ch + db 00dh, 00eh, 00fh, 041h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 040h, 005h, 00fh, 0ffh + db 064h, 024h, 010h, 000h, 000h, 001h, 00fh, 000h, 006h, 0e3h, 07fh, 063h, 063h, 083h, 06bh, 01bh + db 072h, 0f0h, 000h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 059h, 08dh, 057h, 032h, 000h, 057h + db 073h, 0e3h, 0ffh, 000h, 001h, 002h, 003h, 004h, 005h, 014h, 007h, 038h, 039h, 03ah, 03bh, 03ch + db 03dh, 03eh, 03fh, 001h, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 005h, 00fh, 0ffh + ; disGetNextSymbol 0xc4fc3 LB 0x2f0a -> off=0x0 cb=00000000000000c0 uValue=00000000000c0843 'palette0' +palette0: ; 0xc4fc3 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah + db 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 02ah, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + db 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5083 LB 0x2e4a -> off=0x0 cb=00000000000000c0 uValue=00000000000c0903 'palette1' +palette1: ; 0xc5083 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah + db 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah + db 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh + db 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah + db 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah, 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah + db 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh, 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh + db 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5143 LB 0x2d8a -> off=0x0 cb=00000000000000c0 uValue=00000000000c09c3 'palette2' +palette2: ; 0xc5143 LB 0xc0 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 02ah, 000h, 02ah, 02ah, 02ah, 000h, 000h, 015h, 000h, 000h, 03fh, 000h, 02ah + db 015h, 000h, 02ah, 03fh, 02ah, 000h, 015h, 02ah, 000h, 03fh, 02ah, 02ah, 015h, 02ah, 02ah, 03fh + db 000h, 015h, 000h, 000h, 015h, 02ah, 000h, 03fh, 000h, 000h, 03fh, 02ah, 02ah, 015h, 000h, 02ah + db 015h, 02ah, 02ah, 03fh, 000h, 02ah, 03fh, 02ah, 000h, 015h, 015h, 000h, 015h, 03fh, 000h, 03fh + db 015h, 000h, 03fh, 03fh, 02ah, 015h, 015h, 02ah, 015h, 03fh, 02ah, 03fh, 015h, 02ah, 03fh, 03fh + db 015h, 000h, 000h, 015h, 000h, 02ah, 015h, 02ah, 000h, 015h, 02ah, 02ah, 03fh, 000h, 000h, 03fh + db 000h, 02ah, 03fh, 02ah, 000h, 03fh, 02ah, 02ah, 015h, 000h, 015h, 015h, 000h, 03fh, 015h, 02ah + db 015h, 015h, 02ah, 03fh, 03fh, 000h, 015h, 03fh, 000h, 03fh, 03fh, 02ah, 015h, 03fh, 02ah, 03fh + db 015h, 015h, 000h, 015h, 015h, 02ah, 015h, 03fh, 000h, 015h, 03fh, 02ah, 03fh, 015h, 000h, 03fh + db 015h, 02ah, 03fh, 03fh, 000h, 03fh, 03fh, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + ; disGetNextSymbol 0xc5203 LB 0x2cca -> off=0x0 cb=0000000000000300 uValue=00000000000c0a83 'palette3' +palette3: ; 0xc5203 LB 0x300 + db 000h, 000h, 000h, 000h, 000h, 02ah, 000h, 02ah, 000h, 000h, 02ah, 02ah, 02ah, 000h, 000h, 02ah + db 000h, 02ah, 02ah, 015h, 000h, 02ah, 02ah, 02ah, 015h, 015h, 015h, 015h, 015h, 03fh, 015h, 03fh + db 015h, 015h, 03fh, 03fh, 03fh, 015h, 015h, 03fh, 015h, 03fh, 03fh, 03fh, 015h, 03fh, 03fh, 03fh + db 000h, 000h, 000h, 005h, 005h, 005h, 008h, 008h, 008h, 00bh, 00bh, 00bh, 00eh, 00eh, 00eh, 011h + db 011h, 011h, 014h, 014h, 014h, 018h, 018h, 018h, 01ch, 01ch, 01ch, 020h, 020h, 020h, 024h, 024h + db 024h, 028h, 028h, 028h, 02dh, 02dh, 02dh, 032h, 032h, 032h, 038h, 038h, 038h, 03fh, 03fh, 03fh + db 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh, 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h, 03fh, 03fh + db 000h, 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh + db 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h, 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 000h + db 000h, 03fh, 000h, 000h, 03fh, 010h, 000h, 03fh, 01fh, 000h, 03fh, 02fh, 000h, 03fh, 03fh, 000h + db 02fh, 03fh, 000h, 01fh, 03fh, 000h, 010h, 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh, 02fh, 01fh + db 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 03fh, 03fh, 01fh, 037h, 03fh, 01fh, 02fh, 03fh, 01fh, 027h + db 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh, 02fh, 01fh, 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 037h + db 03fh, 01fh, 02fh, 03fh, 01fh, 027h, 03fh, 01fh, 01fh, 03fh, 01fh, 01fh, 03fh, 027h, 01fh, 03fh + db 02fh, 01fh, 03fh, 037h, 01fh, 03fh, 03fh, 01fh, 037h, 03fh, 01fh, 02fh, 03fh, 01fh, 027h, 03fh + db 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h, 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh, 03fh, 03fh + db 02dh, 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h + db 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh, 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 02dh + db 02dh, 03fh, 02dh, 02dh, 03fh, 031h, 02dh, 03fh, 036h, 02dh, 03fh, 03ah, 02dh, 03fh, 03fh, 02dh + db 03ah, 03fh, 02dh, 036h, 03fh, 02dh, 031h, 03fh, 000h, 000h, 01ch, 007h, 000h, 01ch, 00eh, 000h + db 01ch, 015h, 000h, 01ch, 01ch, 000h, 01ch, 01ch, 000h, 015h, 01ch, 000h, 00eh, 01ch, 000h, 007h + db 01ch, 000h, 000h, 01ch, 007h, 000h, 01ch, 00eh, 000h, 01ch, 015h, 000h, 01ch, 01ch, 000h, 015h + db 01ch, 000h, 00eh, 01ch, 000h, 007h, 01ch, 000h, 000h, 01ch, 000h, 000h, 01ch, 007h, 000h, 01ch + db 00eh, 000h, 01ch, 015h, 000h, 01ch, 01ch, 000h, 015h, 01ch, 000h, 00eh, 01ch, 000h, 007h, 01ch + db 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h, 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh, 01ch, 01ch + db 00eh, 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h + db 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh, 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 00eh + db 00eh, 01ch, 00eh, 00eh, 01ch, 011h, 00eh, 01ch, 015h, 00eh, 01ch, 018h, 00eh, 01ch, 01ch, 00eh + db 018h, 01ch, 00eh, 015h, 01ch, 00eh, 011h, 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch, 018h, 014h + db 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ch, 01ch, 014h, 01ah, 01ch, 014h, 018h, 01ch, 014h, 016h + db 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch, 018h, 014h, 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ah + db 01ch, 014h, 018h, 01ch, 014h, 016h, 01ch, 014h, 014h, 01ch, 014h, 014h, 01ch, 016h, 014h, 01ch + db 018h, 014h, 01ch, 01ah, 014h, 01ch, 01ch, 014h, 01ah, 01ch, 014h, 018h, 01ch, 014h, 016h, 01ch + db 000h, 000h, 010h, 004h, 000h, 010h, 008h, 000h, 010h, 00ch, 000h, 010h, 010h, 000h, 010h, 010h + db 000h, 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 000h, 000h, 010h, 004h, 000h, 010h, 008h + db 000h, 010h, 00ch, 000h, 010h, 010h, 000h, 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 000h + db 000h, 010h, 000h, 000h, 010h, 004h, 000h, 010h, 008h, 000h, 010h, 00ch, 000h, 010h, 010h, 000h + db 00ch, 010h, 000h, 008h, 010h, 000h, 004h, 010h, 008h, 008h, 010h, 00ah, 008h, 010h, 00ch, 008h + db 010h, 00eh, 008h, 010h, 010h, 008h, 010h, 010h, 008h, 00eh, 010h, 008h, 00ch, 010h, 008h, 00ah + db 010h, 008h, 008h, 010h, 00ah, 008h, 010h, 00ch, 008h, 010h, 00eh, 008h, 010h, 010h, 008h, 00eh + db 010h, 008h, 00ch, 010h, 008h, 00ah, 010h, 008h, 008h, 010h, 008h, 008h, 010h, 00ah, 008h, 010h + db 00ch, 008h, 010h, 00eh, 008h, 010h, 010h, 008h, 00eh, 010h, 008h, 00ch, 010h, 008h, 00ah, 010h + db 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh, 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh, 010h, 010h + db 00bh, 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh + db 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh, 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 00bh + db 00bh, 010h, 00bh, 00bh, 010h, 00ch, 00bh, 010h, 00dh, 00bh, 010h, 00fh, 00bh, 010h, 010h, 00bh + db 00fh, 010h, 00bh, 00dh, 010h, 00bh, 00ch, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5503 LB 0x29ca -> off=0x0 cb=0000000000000010 uValue=00000000000c0d83 'static_functionality' +static_functionality: ; 0xc5503 LB 0x10 + db 0ffh, 0e0h, 00fh, 000h, 000h, 000h, 000h, 007h, 002h, 008h, 0e7h, 00ch, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5513 LB 0x29ba -> off=0x0 cb=0000000000000024 uValue=00000000000c0d93 '_dcc_table' +_dcc_table: ; 0xc5513 LB 0x24 + db 010h, 001h, 007h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5537 LB 0x2996 -> off=0x0 cb=000000000000001a uValue=00000000000c0db7 '_secondary_save_area' +_secondary_save_area: ; 0xc5537 LB 0x1a + db 01ah, 000h, 013h, 055h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5551 LB 0x297c -> off=0x0 cb=000000000000001c uValue=00000000000c0dd1 '_video_save_pointer_table' +_video_save_pointer_table: ; 0xc5551 LB 0x1c + db 043h, 048h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 037h, 055h, 000h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc556d LB 0x2960 -> off=0x0 cb=0000000000000800 uValue=00000000000c0ded 'vgafont8' +vgafont8: ; 0xc556d LB 0x800 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 081h, 0a5h, 081h, 0bdh, 099h, 081h, 07eh + db 07eh, 0ffh, 0dbh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 06ch, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h + db 010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 038h, 07ch, 038h, 0feh, 0feh, 07ch, 038h, 07ch + db 010h, 010h, 038h, 07ch, 0feh, 07ch, 038h, 07ch, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h + db 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h + db 0ffh, 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 00fh, 007h, 00fh, 07dh, 0cch, 0cch, 0cch, 078h + db 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 018h, 03fh, 033h, 03fh, 030h, 030h, 070h, 0f0h, 0e0h + db 07fh, 063h, 07fh, 063h, 063h, 067h, 0e6h, 0c0h, 099h, 05ah, 03ch, 0e7h, 0e7h, 03ch, 05ah, 099h + db 080h, 0e0h, 0f8h, 0feh, 0f8h, 0e0h, 080h, 000h, 002h, 00eh, 03eh, 0feh, 03eh, 00eh, 002h, 000h + db 018h, 03ch, 07eh, 018h, 018h, 07eh, 03ch, 018h, 066h, 066h, 066h, 066h, 066h, 000h, 066h, 000h + db 07fh, 0dbh, 0dbh, 07bh, 01bh, 01bh, 01bh, 000h, 03eh, 063h, 038h, 06ch, 06ch, 038h, 0cch, 078h + db 000h, 000h, 000h, 000h, 07eh, 07eh, 07eh, 000h, 018h, 03ch, 07eh, 018h, 07eh, 03ch, 018h, 0ffh + db 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h + db 000h, 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 030h, 060h, 0feh, 060h, 030h, 000h, 000h + db 000h, 000h, 0c0h, 0c0h, 0c0h, 0feh, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h + db 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 000h, 000h, 000h, 0ffh, 0ffh, 07eh, 03ch, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 078h, 078h, 030h, 030h, 000h, 030h, 000h + db 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch, 0feh, 06ch, 06ch, 000h + db 030h, 07ch, 0c0h, 078h, 00ch, 0f8h, 030h, 000h, 000h, 0c6h, 0cch, 018h, 030h, 066h, 0c6h, 000h + db 038h, 06ch, 038h, 076h, 0dch, 0cch, 076h, 000h, 060h, 060h, 0c0h, 000h, 000h, 000h, 000h, 000h + db 018h, 030h, 060h, 060h, 060h, 030h, 018h, 000h, 060h, 030h, 018h, 018h, 018h, 030h, 060h, 000h + db 000h, 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 030h, 030h, 0fch, 030h, 030h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 060h, 000h, 000h, 000h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 000h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h + db 07ch, 0c6h, 0ceh, 0deh, 0f6h, 0e6h, 07ch, 000h, 030h, 070h, 030h, 030h, 030h, 030h, 0fch, 000h + db 078h, 0cch, 00ch, 038h, 060h, 0cch, 0fch, 000h, 078h, 0cch, 00ch, 038h, 00ch, 0cch, 078h, 000h + db 01ch, 03ch, 06ch, 0cch, 0feh, 00ch, 01eh, 000h, 0fch, 0c0h, 0f8h, 00ch, 00ch, 0cch, 078h, 000h + db 038h, 060h, 0c0h, 0f8h, 0cch, 0cch, 078h, 000h, 0fch, 0cch, 00ch, 018h, 030h, 030h, 030h, 000h + db 078h, 0cch, 0cch, 078h, 0cch, 0cch, 078h, 000h, 078h, 0cch, 0cch, 07ch, 00ch, 018h, 070h, 000h + db 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 060h + db 018h, 030h, 060h, 0c0h, 060h, 030h, 018h, 000h, 000h, 000h, 0fch, 000h, 000h, 0fch, 000h, 000h + db 060h, 030h, 018h, 00ch, 018h, 030h, 060h, 000h, 078h, 0cch, 00ch, 018h, 030h, 000h, 030h, 000h + db 07ch, 0c6h, 0deh, 0deh, 0deh, 0c0h, 078h, 000h, 030h, 078h, 0cch, 0cch, 0fch, 0cch, 0cch, 000h + db 0fch, 066h, 066h, 07ch, 066h, 066h, 0fch, 000h, 03ch, 066h, 0c0h, 0c0h, 0c0h, 066h, 03ch, 000h + db 0f8h, 06ch, 066h, 066h, 066h, 06ch, 0f8h, 000h, 0feh, 062h, 068h, 078h, 068h, 062h, 0feh, 000h + db 0feh, 062h, 068h, 078h, 068h, 060h, 0f0h, 000h, 03ch, 066h, 0c0h, 0c0h, 0ceh, 066h, 03eh, 000h + db 0cch, 0cch, 0cch, 0fch, 0cch, 0cch, 0cch, 000h, 078h, 030h, 030h, 030h, 030h, 030h, 078h, 000h + db 01eh, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 000h, 0e6h, 066h, 06ch, 078h, 06ch, 066h, 0e6h, 000h + db 0f0h, 060h, 060h, 060h, 062h, 066h, 0feh, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 000h + db 0c6h, 0e6h, 0f6h, 0deh, 0ceh, 0c6h, 0c6h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h + db 0fch, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h, 078h, 0cch, 0cch, 0cch, 0dch, 078h, 01ch, 000h + db 0fch, 066h, 066h, 07ch, 06ch, 066h, 0e6h, 000h, 078h, 0cch, 0e0h, 070h, 01ch, 0cch, 078h, 000h + db 0fch, 0b4h, 030h, 030h, 030h, 030h, 078h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 0fch, 000h + db 0cch, 0cch, 0cch, 0cch, 0cch, 078h, 030h, 000h, 0c6h, 0c6h, 0c6h, 0d6h, 0feh, 0eeh, 0c6h, 000h + db 0c6h, 0c6h, 06ch, 038h, 038h, 06ch, 0c6h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 030h, 078h, 000h + db 0feh, 0c6h, 08ch, 018h, 032h, 066h, 0feh, 000h, 078h, 060h, 060h, 060h, 060h, 060h, 078h, 000h + db 0c0h, 060h, 030h, 018h, 00ch, 006h, 002h, 000h, 078h, 018h, 018h, 018h, 018h, 018h, 078h, 000h + db 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 076h, 000h + db 0e0h, 060h, 060h, 07ch, 066h, 066h, 0dch, 000h, 000h, 000h, 078h, 0cch, 0c0h, 0cch, 078h, 000h + db 01ch, 00ch, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h + db 038h, 06ch, 060h, 0f0h, 060h, 060h, 0f0h, 000h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 0f8h + db 0e0h, 060h, 06ch, 076h, 066h, 066h, 0e6h, 000h, 030h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 00ch, 000h, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 0e0h, 060h, 066h, 06ch, 078h, 06ch, 0e6h, 000h + db 070h, 030h, 030h, 030h, 030h, 030h, 078h, 000h, 000h, 000h, 0cch, 0feh, 0feh, 0d6h, 0c6h, 000h + db 000h, 000h, 0f8h, 0cch, 0cch, 0cch, 0cch, 000h, 000h, 000h, 078h, 0cch, 0cch, 0cch, 078h, 000h + db 000h, 000h, 0dch, 066h, 066h, 07ch, 060h, 0f0h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 01eh + db 000h, 000h, 0dch, 076h, 066h, 060h, 0f0h, 000h, 000h, 000h, 07ch, 0c0h, 078h, 00ch, 0f8h, 000h + db 010h, 030h, 07ch, 030h, 030h, 034h, 018h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 000h, 000h, 000h, 0c6h, 0d6h, 0feh, 0feh, 06ch, 000h + db 000h, 000h, 0c6h, 06ch, 038h, 06ch, 0c6h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 07ch, 00ch, 0f8h + db 000h, 000h, 0fch, 098h, 030h, 064h, 0fch, 000h, 01ch, 030h, 030h, 0e0h, 030h, 030h, 01ch, 000h + db 018h, 018h, 018h, 000h, 018h, 018h, 018h, 000h, 0e0h, 030h, 030h, 01ch, 030h, 030h, 0e0h, 000h + db 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 000h + db 078h, 0cch, 0c0h, 0cch, 078h, 018h, 00ch, 078h, 000h, 0cch, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 01ch, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h, 07eh, 0c3h, 03ch, 006h, 03eh, 066h, 03fh, 000h + db 0cch, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 0e0h, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h + db 030h, 030h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 000h, 000h, 078h, 0c0h, 0c0h, 078h, 00ch, 038h + db 07eh, 0c3h, 03ch, 066h, 07eh, 060h, 03ch, 000h, 0cch, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h + db 0e0h, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h, 0cch, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 07ch, 0c6h, 038h, 018h, 018h, 018h, 03ch, 000h, 0e0h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 0c6h, 038h, 06ch, 0c6h, 0feh, 0c6h, 0c6h, 000h, 030h, 030h, 000h, 078h, 0cch, 0fch, 0cch, 000h + db 01ch, 000h, 0fch, 060h, 078h, 060h, 0fch, 000h, 000h, 000h, 07fh, 00ch, 07fh, 0cch, 07fh, 000h + db 03eh, 06ch, 0cch, 0feh, 0cch, 0cch, 0ceh, 000h, 078h, 0cch, 000h, 078h, 0cch, 0cch, 078h, 000h + db 000h, 0cch, 000h, 078h, 0cch, 0cch, 078h, 000h, 000h, 0e0h, 000h, 078h, 0cch, 0cch, 078h, 000h + db 078h, 0cch, 000h, 0cch, 0cch, 0cch, 07eh, 000h, 000h, 0e0h, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 000h, 0cch, 000h, 0cch, 0cch, 07ch, 00ch, 0f8h, 0c3h, 018h, 03ch, 066h, 066h, 03ch, 018h, 000h + db 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 078h, 000h, 018h, 018h, 07eh, 0c0h, 0c0h, 07eh, 018h, 018h + db 038h, 06ch, 064h, 0f0h, 060h, 0e6h, 0fch, 000h, 0cch, 0cch, 078h, 0fch, 030h, 0fch, 030h, 030h + db 0f8h, 0cch, 0cch, 0fah, 0c6h, 0cfh, 0c6h, 0c7h, 00eh, 01bh, 018h, 03ch, 018h, 018h, 0d8h, 070h + db 01ch, 000h, 078h, 00ch, 07ch, 0cch, 07eh, 000h, 038h, 000h, 070h, 030h, 030h, 030h, 078h, 000h + db 000h, 01ch, 000h, 078h, 0cch, 0cch, 078h, 000h, 000h, 01ch, 000h, 0cch, 0cch, 0cch, 07eh, 000h + db 000h, 0f8h, 000h, 0f8h, 0cch, 0cch, 0cch, 000h, 0fch, 000h, 0cch, 0ech, 0fch, 0dch, 0cch, 000h + db 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h + db 030h, 000h, 030h, 060h, 0c0h, 0cch, 078h, 000h, 000h, 000h, 000h, 0fch, 0c0h, 0c0h, 000h, 000h + db 000h, 000h, 000h, 0fch, 00ch, 00ch, 000h, 000h, 0c3h, 0c6h, 0cch, 0deh, 033h, 066h, 0cch, 00fh + db 0c3h, 0c6h, 0cch, 0dbh, 037h, 06fh, 0cfh, 003h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 000h + db 000h, 033h, 066h, 0cch, 066h, 033h, 000h, 000h, 000h, 0cch, 066h, 033h, 066h, 0cch, 000h, 000h + db 022h, 088h, 022h, 088h, 022h, 088h, 022h, 088h, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah + db 0dbh, 077h, 0dbh, 0eeh, 0dbh, 077h, 0dbh, 0eeh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h + db 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 0feh, 006h, 0f6h, 036h, 036h, 036h + db 036h, 036h, 0f6h, 006h, 0feh, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h, 000h + db 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h + db 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h + db 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h + db 036h, 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0f7h, 036h, 036h, 036h + db 036h, 036h, 037h, 030h, 037h, 036h, 036h, 036h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h, 000h + db 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 03fh, 000h, 000h, 000h + db 018h, 018h, 01fh, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h + db 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 0c8h, 0dch, 076h, 000h, 000h, 078h, 0cch, 0f8h, 0cch, 0f8h, 0c0h, 0c0h + db 000h, 0fch, 0cch, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 0feh, 06ch, 06ch, 06ch, 06ch, 06ch, 000h + db 0fch, 0cch, 060h, 030h, 060h, 0cch, 0fch, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 070h, 000h + db 000h, 066h, 066h, 066h, 066h, 07ch, 060h, 0c0h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 000h + db 0fch, 030h, 078h, 0cch, 0cch, 078h, 030h, 0fch, 038h, 06ch, 0c6h, 0feh, 0c6h, 06ch, 038h, 000h + db 038h, 06ch, 0c6h, 0c6h, 06ch, 06ch, 0eeh, 000h, 01ch, 030h, 018h, 07ch, 0cch, 0cch, 078h, 000h + db 000h, 000h, 07eh, 0dbh, 0dbh, 07eh, 000h, 000h, 006h, 00ch, 07eh, 0dbh, 0dbh, 07eh, 060h, 0c0h + db 038h, 060h, 0c0h, 0f8h, 0c0h, 060h, 038h, 000h, 078h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 000h + db 000h, 0fch, 000h, 0fch, 000h, 0fch, 000h, 000h, 030h, 030h, 0fch, 030h, 030h, 000h, 0fch, 000h + db 060h, 030h, 018h, 030h, 060h, 000h, 0fch, 000h, 018h, 030h, 060h, 030h, 018h, 000h, 0fch, 000h + db 00eh, 01bh, 01bh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h, 070h + db 030h, 030h, 000h, 0fch, 000h, 030h, 030h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h + db 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h, 00fh, 00ch, 00ch, 00ch, 0ech, 06ch, 03ch, 01ch + db 078h, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 070h, 018h, 030h, 060h, 078h, 000h, 000h, 000h + db 000h, 000h, 03ch, 03ch, 03ch, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc5d6d LB 0x2160 -> off=0x0 cb=0000000000000e00 uValue=00000000000c15ed 'vgafont14' +vgafont14: ; 0xc5d6d LB 0xe00 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 07eh, 000h, 000h, 000h, 000h, 000h, 07eh, 0ffh + db 0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 06ch, 0feh, 0feh + db 0feh, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 07ch, 0feh, 07ch + db 038h, 010h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 0e7h, 0e7h, 0e7h, 018h, 018h + db 03ch, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 07eh, 018h, 018h, 03ch, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h + db 000h, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh + db 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 01eh, 00eh, 01ah, 032h + db 078h, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 066h, 066h, 03ch, 018h + db 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 03fh, 033h, 03fh, 030h, 030h, 030h, 070h, 0f0h + db 0e0h, 000h, 000h, 000h, 000h, 000h, 07fh, 063h, 07fh, 063h, 063h, 063h, 067h, 0e7h, 0e6h, 0c0h + db 000h, 000h, 000h, 000h, 018h, 018h, 0dbh, 03ch, 0e7h, 03ch, 0dbh, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 080h, 0c0h, 0e0h, 0f8h, 0feh, 0f8h, 0e0h, 0c0h, 080h, 000h, 000h, 000h, 000h, 000h + db 002h, 006h, 00eh, 03eh, 0feh, 03eh, 00eh, 006h, 002h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch + db 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h + db 066h, 066h, 000h, 066h, 066h, 000h, 000h, 000h, 000h, 000h, 07fh, 0dbh, 0dbh, 0dbh, 07bh, 01bh + db 01bh, 01bh, 01bh, 000h, 000h, 000h, 000h, 07ch, 0c6h, 060h, 038h, 06ch, 0c6h, 0c6h, 06ch, 038h + db 00ch, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 0feh, 000h + db 000h, 000h, 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 07eh, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 060h + db 0feh, 060h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c0h + db 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 028h, 06ch, 0feh, 06ch, 028h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 038h, 07ch, 07ch, 0feh, 0feh, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 07ch, 07ch, 038h, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 03ch, 03ch, 03ch, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 066h, 066h, 066h + db 024h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch + db 06ch, 06ch, 0feh, 06ch, 06ch, 000h, 000h, 000h, 018h, 018h, 07ch, 0c6h, 0c2h, 0c0h, 07ch, 006h + db 086h, 0c6h, 07ch, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 0c2h, 0c6h, 00ch, 018h, 030h, 066h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 038h, 06ch, 06ch, 038h, 076h, 0dch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 030h, 030h, 030h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 018h, 030h, 030h, 030h, 030h, 030h, 018h, 00ch, 000h, 000h, 000h, 000h, 000h + db 030h, 018h, 00ch, 00ch, 00ch, 00ch, 00ch, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h + db 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h + db 000h, 000h, 000h, 000h, 002h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0ceh, 0deh, 0f6h, 0e6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 018h, 038h, 078h, 018h, 018h, 018h, 018h, 018h, 07eh, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h + db 006h, 00ch, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 006h, 006h + db 03ch, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 00ch, 01ch, 03ch, 06ch, 0cch, 0feh + db 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0fch, 006h, 006h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 038h, 060h, 0c0h, 0c0h, 0fch, 0c6h, 0c6h, 0c6h, 07ch, 000h + db 000h, 000h, 000h, 000h, 0feh, 0c6h, 006h, 00ch, 018h, 030h, 030h, 030h, 030h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 07ch, 0c6h, 0c6h, 0c6h, 07eh, 006h, 006h, 00ch, 078h, 000h, 000h, 000h, 000h, 000h, 000h, 018h + db 018h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h + db 000h, 000h, 018h, 018h, 030h, 000h, 000h, 000h, 000h, 000h, 006h, 00ch, 018h, 030h, 060h, 030h + db 018h, 00ch, 006h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 000h, 000h, 07eh, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 060h, 000h + db 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 00ch, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0deh, 0deh, 0deh, 0dch, 0c0h, 07ch, 000h, 000h, 000h, 000h, 000h + db 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h, 0fch, 066h + db 066h, 066h, 07ch, 066h, 066h, 066h, 0fch, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 0c2h, 0c0h + db 0c0h, 0c0h, 0c2h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h, 0f8h, 06ch, 066h, 066h, 066h, 066h + db 066h, 06ch, 0f8h, 000h, 000h, 000h, 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 062h, 066h + db 0feh, 000h, 000h, 000h, 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0deh, 0c6h, 066h, 03ah, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h + db 03ch, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 01eh, 00ch + db 00ch, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h, 000h, 0e6h, 066h, 06ch, 06ch + db 078h, 06ch, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 0f0h, 060h, 060h, 060h, 060h, 060h + db 062h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 0c6h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 000h + db 000h, 000h, 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h, 000h + db 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0deh, 07ch, 00ch, 00eh, 000h, 000h, 000h, 000h, 0fch, 066h + db 066h, 066h, 07ch, 06ch, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 060h + db 038h, 00ch, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 07eh, 07eh, 05ah, 018h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 010h, 000h + db 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0d6h, 0feh, 07ch, 06ch, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 06ch, 038h, 038h, 038h, 06ch, 0c6h, 0c6h, 000h, 000h, 000h, 000h, 000h + db 066h, 066h, 066h, 066h, 03ch, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 0feh, 0c6h + db 08ch, 018h, 030h, 060h, 0c2h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 03ch, 030h, 030h, 030h + db 030h, 030h, 030h, 030h, 03ch, 000h, 000h, 000h, 000h, 000h, 080h, 0c0h, 0e0h, 070h, 038h, 01ch + db 00eh, 006h, 002h, 000h, 000h, 000h, 000h, 000h, 03ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch + db 03ch, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 0e0h, 060h + db 060h, 078h, 06ch, 066h, 066h, 066h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch + db 0c6h, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 01ch, 00ch, 00ch, 03ch, 06ch, 0cch + db 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 07ch, 00ch, 0cch, 078h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 06ch, 076h, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 006h, 006h + db 000h, 00eh, 006h, 006h, 006h, 006h, 066h, 066h, 03ch, 000h, 000h, 000h, 0e0h, 060h, 060h, 066h + db 06ch, 078h, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ech, 0feh, 0d6h, 0d6h, 0d6h + db 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h, 000h, 000h + db 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 07ch, 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h, 000h + db 000h, 0dch, 076h, 066h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch + db 0c6h, 070h, 01ch, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 010h, 030h, 030h, 0fch, 030h, 030h + db 030h, 036h, 01ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch + db 076h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 03ch, 018h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0d6h, 0d6h, 0feh, 06ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 06ch, 038h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 0f8h, 000h, 000h, 000h, 000h, 000h + db 000h, 0feh, 0cch, 018h, 030h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h, 00eh, 018h, 018h, 018h + db 070h, 018h, 018h, 018h, 00eh, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 000h, 018h + db 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 070h, 018h, 018h, 018h, 00eh, 018h, 018h, 018h + db 070h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 00ch, 006h, 07ch, 000h, 000h, 000h + db 0cch, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 00ch, 018h, 030h + db 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 000h, 078h + db 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 000h, 078h, 00ch, 07ch + db 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 078h, 00ch, 07ch, 0cch, 0cch + db 076h, 000h, 000h, 000h, 000h, 038h, 06ch, 038h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 060h, 066h, 03ch, 00ch, 006h, 03ch, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 0cch, 0cch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h + db 000h, 07ch, 0c6h, 0feh, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 000h, 038h + db 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 018h, 03ch, 066h, 000h, 038h, 018h, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 038h, 018h, 018h, 018h, 018h + db 03ch, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 000h + db 000h, 000h, 038h, 06ch, 038h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 000h, 000h, 000h + db 018h, 030h, 060h, 000h, 0feh, 066h, 060h, 07ch, 060h, 066h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 0cch, 076h, 036h, 07eh, 0d8h, 0d8h, 06eh, 000h, 000h, 000h, 000h, 000h, 03eh, 06ch + db 0cch, 0cch, 0feh, 0cch, 0cch, 0cch, 0ceh, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 000h, 07ch + db 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 000h, 07ch, 0c6h, 0c6h + db 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h + db 07ch, 000h, 000h, 000h, 000h, 030h, 078h, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h + db 000h, 000h, 000h, 060h, 030h, 018h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 078h, 000h, 000h, 0c6h + db 0c6h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 000h + db 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 018h, 018h, 03ch, 066h, 060h + db 060h, 066h, 03ch, 018h, 018h, 000h, 000h, 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h + db 060h, 0e6h, 0fch, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 03ch, 018h, 07eh, 018h, 07eh, 018h + db 018h, 000h, 000h, 000h, 000h, 0f8h, 0cch, 0cch, 0f8h, 0c4h, 0cch, 0deh, 0cch, 0cch, 0c6h, 000h + db 000h, 000h, 000h, 00eh, 01bh, 018h, 018h, 018h, 07eh, 018h, 018h, 018h, 018h, 0d8h, 070h, 000h + db 000h, 018h, 030h, 060h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 00ch + db 018h, 030h, 000h, 038h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 018h, 030h, 060h + db 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 018h, 030h, 060h, 000h, 0cch + db 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 0dch, 066h, 066h + db 066h, 066h, 066h, 000h, 000h, 000h, 076h, 0dch, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h + db 0c6h, 000h, 000h, 000h, 000h, 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 030h, 000h, 030h, 030h, 060h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 006h, 006h, 006h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c6h, 0cch, 0d8h + db 030h, 060h, 0dch, 086h, 00ch, 018h, 03eh, 000h, 000h, 0c0h, 0c0h, 0c6h, 0cch, 0d8h, 030h, 066h + db 0ceh, 09eh, 03eh, 006h, 006h, 000h, 000h, 000h, 018h, 018h, 000h, 018h, 018h, 03ch, 03ch, 03ch + db 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 036h, 06ch, 0d8h, 06ch, 036h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0d8h, 06ch, 036h, 06ch, 0d8h, 000h, 000h, 000h, 000h, 000h + db 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 055h, 0aah + db 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 0ddh, 077h, 0ddh, 077h + db 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h + db 018h, 018h, 018h, 018h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 036h + db 036h, 036h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 036h, 036h + db 036h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 000h, 0feh + db 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0feh + db 000h, 000h, 000h, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h + db 018h, 018h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 030h, 037h + db 036h, 036h, 036h, 036h, 036h, 036h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h + db 000h, 000h, 000h, 000h, 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 036h + db 036h, 036h, 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h + db 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 0f0h, 0f0h, 0f0h, 0f0h, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh + db 00fh, 00fh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 0d8h, 0d8h, 0dch, 076h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0fch, 0c6h, 0c6h, 0fch, 0c0h, 0c0h, 040h, 000h, 000h, 000h, 0feh, 0c6h + db 0c6h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 06ch + db 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 0feh, 0c6h, 060h, 030h, 018h, 030h + db 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 0d8h + db 070h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0c0h + db 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h + db 000h, 000h, 07eh, 018h, 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h, 000h + db 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 038h, 06ch + db 0c6h, 0c6h, 0c6h, 06ch, 06ch, 06ch, 0eeh, 000h, 000h, 000h, 000h, 000h, 01eh, 030h, 018h, 00ch + db 03eh, 066h, 066h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 0dbh, 0dbh + db 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 003h, 006h, 07eh, 0dbh, 0dbh, 0f3h, 07eh, 060h + db 0c0h, 000h, 000h, 000h, 000h, 000h, 01ch, 030h, 060h, 060h, 07ch, 060h, 060h, 030h, 01ch, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h + db 000h, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 030h, 018h + db 00ch, 006h, 00ch, 018h, 030h, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 00ch, 018h, 030h, 060h + db 030h, 018h, 00ch, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 00eh, 01bh, 01bh, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h + db 070h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 07eh, 000h, 018h, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 00fh, 00ch, 00ch, 00ch, 00ch + db 00ch, 0ech, 06ch, 03ch, 01ch, 000h, 000h, 000h, 000h, 0d8h, 06ch, 06ch, 06ch, 06ch, 06ch, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc6b6d LB 0x1360 -> off=0x0 cb=0000000000001000 uValue=00000000000c23ed 'vgafont16' +vgafont16: ; 0xc6b6d LB 0x1000 + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 081h, 0a5h, 081h, 081h, 0bdh, 099h, 081h, 081h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 0ffh, 0dbh, 0ffh, 0ffh, 0c3h, 0e7h, 0ffh, 0ffh, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 06ch, 0feh, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 03ch, 03ch, 0e7h, 0e7h, 0e7h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 07eh, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h, 000h, 000h, 000h, 000h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 01eh, 00eh, 01ah, 032h, 078h, 0cch, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 066h, 066h, 066h, 03ch, 018h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 03fh, 033h, 03fh, 030h, 030h, 030h, 030h, 070h, 0f0h, 0e0h, 000h, 000h, 000h, 000h + db 000h, 000h, 07fh, 063h, 07fh, 063h, 063h, 063h, 063h, 067h, 0e7h, 0e6h, 0c0h, 000h, 000h, 000h + db 000h, 000h, 000h, 018h, 018h, 0dbh, 03ch, 0e7h, 03ch, 0dbh, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 080h, 0c0h, 0e0h, 0f0h, 0f8h, 0feh, 0f8h, 0f0h, 0e0h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 002h, 006h, 00eh, 01eh, 03eh, 0feh, 03eh, 01eh, 00eh, 006h, 002h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 066h, 066h, 000h, 000h, 000h, 000h + db 000h, 000h, 07fh, 0dbh, 0dbh, 0dbh, 07bh, 01bh, 01bh, 01bh, 01bh, 01bh, 000h, 000h, 000h, 000h + db 000h, 07ch, 0c6h, 060h, 038h, 06ch, 0c6h, 0c6h, 06ch, 038h, 00ch, 0c6h, 07ch, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0feh, 0feh, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 07eh, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 030h, 060h, 0feh, 060h, 030h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0c0h, 0c0h, 0c0h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 028h, 06ch, 0feh, 06ch, 028h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 038h, 07ch, 07ch, 0feh, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 0feh, 07ch, 07ch, 038h, 038h, 010h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 03ch, 03ch, 03ch, 018h, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 066h, 066h, 066h, 024h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch, 06ch, 06ch, 0feh, 06ch, 06ch, 000h, 000h, 000h, 000h + db 018h, 018h, 07ch, 0c6h, 0c2h, 0c0h, 07ch, 006h, 006h, 086h, 0c6h, 07ch, 018h, 018h, 000h, 000h + db 000h, 000h, 000h, 000h, 0c2h, 0c6h, 00ch, 018h, 030h, 060h, 0c6h, 086h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 06ch, 038h, 076h, 0dch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 030h, 030h, 030h, 060h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 018h, 030h, 030h, 030h, 030h, 030h, 030h, 018h, 00ch, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 018h, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 018h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 018h, 030h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 002h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0d6h, 0d6h, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 038h, 078h, 018h, 018h, 018h, 018h, 018h, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 006h, 006h, 03ch, 006h, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 00ch, 01ch, 03ch, 06ch, 0cch, 0feh, 00ch, 00ch, 00ch, 01eh, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0fch, 006h, 006h, 006h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 060h, 0c0h, 0c0h, 0fch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 006h, 006h, 00ch, 018h, 030h, 030h, 030h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 07eh, 006h, 006h, 006h, 00ch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 018h, 018h, 030h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 006h, 00ch, 018h, 030h, 060h, 030h, 018h, 00ch, 006h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 000h, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 060h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 060h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 00ch, 018h, 018h, 018h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0deh, 0deh, 0deh, 0dch, 0c0h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 066h, 066h, 066h, 066h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0f8h, 06ch, 066h, 066h, 066h, 066h, 066h, 066h, 06ch, 0f8h, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 062h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 066h, 062h, 068h, 078h, 068h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0deh, 0c6h, 0c6h, 066h, 03ah, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 01eh, 00ch, 00ch, 00ch, 00ch, 00ch, 0cch, 0cch, 0cch, 078h, 000h, 000h, 000h, 000h + db 000h, 000h, 0e6h, 066h, 066h, 06ch, 078h, 078h, 06ch, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0f0h, 060h, 060h, 060h, 060h, 060h, 060h, 062h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 060h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0deh, 07ch, 00ch, 00eh, 000h, 000h + db 000h, 000h, 0fch, 066h, 066h, 066h, 07ch, 06ch, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 07ch, 0c6h, 0c6h, 060h, 038h, 00ch, 006h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 07eh, 07eh, 05ah, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 06ch, 038h, 010h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0d6h, 0d6h, 0d6h, 0feh, 0eeh, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 0c6h, 06ch, 07ch, 038h, 038h, 07ch, 06ch, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 066h, 066h, 03ch, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 086h, 00ch, 018h, 030h, 060h, 0c2h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 030h, 030h, 030h, 030h, 030h, 030h, 030h, 030h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 080h, 0c0h, 0e0h, 070h, 038h, 01ch, 00eh, 006h, 002h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 00ch, 03ch, 000h, 000h, 000h, 000h + db 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 000h + db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 078h, 06ch, 066h, 066h, 066h, 066h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c0h, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 01ch, 00ch, 00ch, 03ch, 06ch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 0cch, 0cch, 07ch, 00ch, 0cch, 078h, 000h + db 000h, 000h, 0e0h, 060h, 060h, 06ch, 076h, 066h, 066h, 066h, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 006h, 006h, 000h, 00eh, 006h, 006h, 006h, 006h, 006h, 006h, 066h, 066h, 03ch, 000h + db 000h, 000h, 0e0h, 060h, 060h, 066h, 06ch, 078h, 078h, 06ch, 066h, 0e6h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ech, 0feh, 0d6h, 0d6h, 0d6h, 0d6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0cch, 0cch, 0cch, 0cch, 0cch, 07ch, 00ch, 00ch, 01eh, 000h + db 000h, 000h, 000h, 000h, 000h, 0dch, 076h, 066h, 060h, 060h, 060h, 0f0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07ch, 0c6h, 060h, 038h, 00ch, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 010h, 030h, 030h, 0fch, 030h, 030h, 030h, 030h, 036h, 01ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 066h, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0d6h, 0d6h, 0d6h, 0feh, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 06ch, 038h, 038h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 0f8h, 000h + db 000h, 000h, 000h, 000h, 000h, 0feh, 0cch, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 00eh, 018h, 018h, 018h, 070h, 018h, 018h, 018h, 018h, 00eh, 000h, 000h, 000h, 000h + db 000h, 000h, 018h, 018h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 070h, 018h, 018h, 018h, 00eh, 018h, 018h, 018h, 018h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 03ch, 066h, 0c2h, 0c0h, 0c0h, 0c0h, 0c2h, 066h, 03ch, 00ch, 006h, 07ch, 000h, 000h + db 000h, 000h, 0cch, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 00ch, 018h, 030h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0cch, 000h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 038h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 03ch, 066h, 060h, 060h, 066h, 03ch, 00ch, 006h, 03ch, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0feh, 0c0h, 0c0h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 000h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 018h, 03ch, 066h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 0c6h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 038h, 06ch, 038h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 018h, 030h, 060h, 000h, 0feh, 066h, 060h, 07ch, 060h, 060h, 066h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0cch, 076h, 036h, 07eh, 0d8h, 0d8h, 06eh, 000h, 000h, 000h, 000h + db 000h, 000h, 03eh, 06ch, 0cch, 0cch, 0feh, 0cch, 0cch, 0cch, 0cch, 0ceh, 000h, 000h, 000h, 000h + db 000h, 010h, 038h, 06ch, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 030h, 078h, 0cch, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 060h, 030h, 018h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 0c6h, 000h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07eh, 006h, 00ch, 078h, 000h + db 000h, 0c6h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 0c6h, 000h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 018h, 018h, 03ch, 066h, 060h, 060h, 060h, 066h, 03ch, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 064h, 060h, 0f0h, 060h, 060h, 060h, 060h, 0e6h, 0fch, 000h, 000h, 000h, 000h + db 000h, 000h, 066h, 066h, 03ch, 018h, 07eh, 018h, 07eh, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 0f8h, 0cch, 0cch, 0f8h, 0c4h, 0cch, 0deh, 0cch, 0cch, 0cch, 0c6h, 000h, 000h, 000h, 000h + db 000h, 00eh, 01bh, 018h, 018h, 018h, 07eh, 018h, 018h, 018h, 018h, 018h, 0d8h, 070h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 078h, 00ch, 07ch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 00ch, 018h, 030h, 000h, 038h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 018h, 030h, 060h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 076h, 0dch, 000h, 0dch, 066h, 066h, 066h, 066h, 066h, 066h, 000h, 000h, 000h, 000h + db 076h, 0dch, 000h, 0c6h, 0e6h, 0f6h, 0feh, 0deh, 0ceh, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 03ch, 06ch, 06ch, 03eh, 000h, 07eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 07ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 030h, 030h, 000h, 030h, 030h, 060h, 0c0h, 0c6h, 0c6h, 07ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 006h, 006h, 006h, 006h, 000h, 000h, 000h, 000h, 000h + db 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 060h, 0dch, 086h, 00ch, 018h, 03eh, 000h, 000h + db 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 066h, 0ceh, 09eh, 03eh, 006h, 006h, 000h, 000h + db 000h, 000h, 018h, 018h, 000h, 018h, 018h, 018h, 03ch, 03ch, 03ch, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 036h, 06ch, 0d8h, 06ch, 036h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0d8h, 06ch, 036h, 06ch, 0d8h, 000h, 000h, 000h, 000h, 000h, 000h + db 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h, 011h, 044h + db 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah, 055h, 0aah + db 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h, 0ddh, 077h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0feh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0feh, 006h, 0f6h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 0f6h, 006h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0feh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 0f8h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0f8h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 03fh, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 037h, 030h, 037h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 0f7h, 000h, 0f7h, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 0ffh, 000h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 03fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 018h, 018h, 018h, 018h, 018h, 01fh, 018h, 01fh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 03fh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 036h, 036h, 036h, 036h, 036h, 036h, 036h, 0ffh, 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h + db 018h, 018h, 018h, 018h, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 01fh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh + db 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h, 0f0h + db 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh, 00fh + db 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 0d8h, 0d8h, 0d8h, 0dch, 076h, 000h, 000h, 000h, 000h + db 000h, 000h, 078h, 0cch, 0cch, 0cch, 0d8h, 0cch, 0c6h, 0c6h, 0c6h, 0cch, 000h, 000h, 000h, 000h + db 000h, 000h, 0feh, 0c6h, 0c6h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 0c0h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 06ch, 06ch, 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 0feh, 0c6h, 060h, 030h, 018h, 030h, 060h, 0c6h, 0feh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 0d8h, 0d8h, 0d8h, 0d8h, 0d8h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 066h, 066h, 066h, 066h, 066h, 07ch, 060h, 060h, 0c0h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 076h, 0dch, 018h, 018h, 018h, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07eh, 018h, 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0feh, 0c6h, 0c6h, 06ch, 038h, 000h, 000h, 000h, 000h + db 000h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 06ch, 06ch, 06ch, 06ch, 0eeh, 000h, 000h, 000h, 000h + db 000h, 000h, 01eh, 030h, 018h, 00ch, 03eh, 066h, 066h, 066h, 066h, 03ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 07eh, 0dbh, 0dbh, 0dbh, 07eh, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 003h, 006h, 07eh, 0dbh, 0dbh, 0f3h, 07eh, 060h, 0c0h, 000h, 000h, 000h, 000h + db 000h, 000h, 01ch, 030h, 060h, 060h, 07ch, 060h, 060h, 060h, 030h, 01ch, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 07ch, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 0c6h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 0feh, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 07eh, 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 030h, 018h, 00ch, 006h, 00ch, 018h, 030h, 000h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 00ch, 018h, 030h, 060h, 030h, 018h, 00ch, 000h, 07eh, 000h, 000h, 000h, 000h + db 000h, 000h, 00eh, 01bh, 01bh, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h + db 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h, 0d8h, 0d8h, 0d8h, 070h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 018h, 018h, 000h, 07eh, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 076h, 0dch, 000h, 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 038h, 06ch, 06ch, 038h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 00fh, 00ch, 00ch, 00ch, 00ch, 00ch, 0ech, 06ch, 06ch, 03ch, 01ch, 000h, 000h, 000h, 000h + db 000h, 0d8h, 06ch, 06ch, 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 070h, 0d8h, 030h, 060h, 0c8h, 0f8h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 07ch, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7b6d LB 0x360 -> off=0x0 cb=000000000000012d uValue=00000000000c33ed 'vgafont14alt' +vgafont14alt: ; 0xc7b6d LB 0x12d + db 01dh, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h, 022h + db 000h, 063h, 063h, 063h, 022h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 02bh, 000h + db 000h, 000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 000h, 000h, 000h, 02dh, 000h, 000h + db 000h, 000h, 000h, 000h, 0ffh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 04dh, 000h, 000h, 0c3h + db 0e7h, 0ffh, 0dbh, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 000h, 000h, 000h, 054h, 000h, 000h, 0ffh, 0dbh + db 099h, 018h, 018h, 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 056h, 000h, 000h, 0c3h, 0c3h, 0c3h + db 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h, 000h, 000h, 000h, 057h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h + db 0dbh, 0dbh, 0ffh, 066h, 066h, 000h, 000h, 000h, 058h, 000h, 000h, 0c3h, 0c3h, 066h, 03ch, 018h + db 03ch, 066h, 0c3h, 0c3h, 000h, 000h, 000h, 059h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 018h, 018h, 03ch, 000h, 000h, 000h, 05ah, 000h, 000h, 0ffh, 0c3h, 086h, 00ch, 018h, 030h, 061h + db 0c3h, 0ffh, 000h, 000h, 000h, 06dh, 000h, 000h, 000h, 000h, 000h, 0e6h, 0ffh, 0dbh, 0dbh, 0dbh + db 0dbh, 000h, 000h, 000h, 076h, 000h, 000h, 000h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 000h, 000h, 000h, 077h, 000h, 000h, 000h, 000h, 000h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh, 066h, 000h + db 000h, 000h, 091h, 000h, 000h, 000h, 000h, 06eh, 03bh, 01bh, 07eh, 0d8h, 0dch, 077h, 000h, 000h + db 000h, 09bh, 000h, 018h, 018h, 07eh, 0c3h, 0c0h, 0c0h, 0c3h, 07eh, 018h, 018h, 000h, 000h, 000h + db 09dh, 000h, 000h, 0c3h, 066h, 03ch, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 000h, 000h, 000h, 09eh + db 000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 0f3h, 000h, 000h, 000h, 0f1h, 000h + db 000h, 018h, 018h, 018h, 0ffh, 018h, 018h, 018h, 000h, 0ffh, 000h, 000h, 000h, 0f6h, 000h, 000h + db 018h, 018h, 000h, 000h, 0ffh, 000h, 000h, 018h, 018h, 000h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7c9a LB 0x233 -> off=0x0 cb=0000000000000144 uValue=00000000000c351a 'vgafont16alt' +vgafont16alt: ; 0xc7c9a LB 0x144 + db 01dh, 000h, 000h, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h, 000h, 000h, 000h + db 000h, 030h, 000h, 000h, 03ch, 066h, 0c3h, 0c3h, 0dbh, 0dbh, 0c3h, 0c3h, 066h, 03ch, 000h, 000h + db 000h, 000h, 04dh, 000h, 000h, 0c3h, 0e7h, 0ffh, 0ffh, 0dbh, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 000h + db 000h, 000h, 000h, 054h, 000h, 000h, 0ffh, 0dbh, 099h, 018h, 018h, 018h, 018h, 018h, 018h, 03ch + db 000h, 000h, 000h, 000h, 056h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 066h, 03ch + db 018h, 000h, 000h, 000h, 000h, 057h, 000h, 000h, 0c3h, 0c3h, 0c3h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh + db 066h, 066h, 000h, 000h, 000h, 000h, 058h, 000h, 000h, 0c3h, 0c3h, 066h, 03ch, 018h, 018h, 03ch + db 066h, 0c3h, 0c3h, 000h, 000h, 000h, 000h, 059h, 000h, 000h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h + db 018h, 018h, 018h, 03ch, 000h, 000h, 000h, 000h, 05ah, 000h, 000h, 0ffh, 0c3h, 086h, 00ch, 018h + db 030h, 060h, 0c1h, 0c3h, 0ffh, 000h, 000h, 000h, 000h, 06dh, 000h, 000h, 000h, 000h, 000h, 0e6h + db 0ffh, 0dbh, 0dbh, 0dbh, 0dbh, 0dbh, 000h, 000h, 000h, 000h, 076h, 000h, 000h, 000h, 000h, 000h + db 0c3h, 0c3h, 0c3h, 0c3h, 066h, 03ch, 018h, 000h, 000h, 000h, 000h, 077h, 000h, 000h, 000h, 000h + db 000h, 0c3h, 0c3h, 0c3h, 0dbh, 0dbh, 0ffh, 066h, 000h, 000h, 000h, 000h, 078h, 000h, 000h, 000h + db 000h, 000h, 0c3h, 066h, 03ch, 018h, 03ch, 066h, 0c3h, 000h, 000h, 000h, 000h, 091h, 000h, 000h + db 000h, 000h, 000h, 06eh, 03bh, 01bh, 07eh, 0d8h, 0dch, 077h, 000h, 000h, 000h, 000h, 09bh, 000h + db 018h, 018h, 07eh, 0c3h, 0c0h, 0c0h, 0c0h, 0c3h, 07eh, 018h, 018h, 000h, 000h, 000h, 000h, 09dh + db 000h, 000h, 0c3h, 066h, 03ch, 018h, 0ffh, 018h, 0ffh, 018h, 018h, 018h, 000h, 000h, 000h, 000h + db 09eh, 000h, 0fch, 066h, 066h, 07ch, 062h, 066h, 06fh, 066h, 066h, 066h, 0f3h, 000h, 000h, 000h + db 000h, 0abh, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 060h, 0ceh, 09bh, 006h, 00ch, 01fh + db 000h, 000h, 0ach, 000h, 0c0h, 0c0h, 0c2h, 0c6h, 0cch, 018h, 030h, 066h, 0ceh, 096h, 03eh, 006h + db 006h, 000h, 000h, 000h + ; disGetNextSymbol 0xc7dde LB 0xef -> off=0x0 cb=0000000000000008 uValue=00000000000c365e '_cga_msr' +_cga_msr: ; 0xc7dde LB 0x8 + db 02ch, 028h, 02dh, 029h, 02ah, 02eh, 01eh, 029h + ; disGetNextSymbol 0xc7de6 LB 0xe7 -> off=0x0 cb=0000000000000008 uValue=00000000000c3666 'line_to_vpti_200' +line_to_vpti_200: ; 0xc7de6 LB 0x8 + db 000h, 001h, 002h, 003h, 0ffh, 0ffh, 0ffh, 007h + ; disGetNextSymbol 0xc7dee LB 0xdf -> off=0x0 cb=0000000000000008 uValue=00000000000c366e 'line_to_vpti_350' +line_to_vpti_350: ; 0xc7dee LB 0x8 + db 013h, 014h, 015h, 016h, 0ffh, 0ffh, 0ffh, 007h + ; disGetNextSymbol 0xc7df6 LB 0xd7 -> off=0x0 cb=0000000000000008 uValue=00000000000c3676 'line_to_vpti_400' +line_to_vpti_400: ; 0xc7df6 LB 0x8 + db 017h, 017h, 018h, 018h, 0ffh, 0ffh, 0ffh, 019h + ; disGetNextSymbol 0xc7dfe LB 0xcf -> off=0x0 cb=0000000000000004 uValue=00000000000c367e 'row_tbl' +row_tbl: ; 0xc7dfe LB 0x4 + dd 02b190e00h + ; disGetNextSymbol 0xc7e02 LB 0xcb -> off=0x0 cb=0000000000000015 uValue=00000000000c3682 '_vbebios_copyright' +_vbebios_copyright: ; 0xc7e02 LB 0x15 + db 'VirtualBox VESA BIOS', 000h + ; disGetNextSymbol 0xc7e17 LB 0xb6 -> off=0x0 cb=000000000000001d uValue=00000000000c3697 '_vbebios_vendor_name' +_vbebios_vendor_name: ; 0xc7e17 LB 0x1d + db 'Oracle and/or its affiliates', 000h + ; disGetNextSymbol 0xc7e34 LB 0x99 -> off=0x0 cb=0000000000000021 uValue=00000000000c36b4 '_vbebios_product_name' +_vbebios_product_name: ; 0xc7e34 LB 0x21 + db 'Oracle VM VirtualBox VBE Adapter', 000h + ; disGetNextSymbol 0xc7e55 LB 0x78 -> off=0x0 cb=0000000000000024 uValue=00000000000c36d5 '_vbebios_product_revision' +_vbebios_product_revision: ; 0xc7e55 LB 0x24 + db 'Oracle VM VirtualBox Version 7.0.14', 000h + ; disGetNextSymbol 0xc7e79 LB 0x54 -> off=0x0 cb=000000000000002b uValue=00000000000c36f9 '_vbebios_info_string' +_vbebios_info_string: ; 0xc7e79 LB 0x2b + db 'VirtualBox VBE Display Adapter enabled', 00dh, 00ah, 00dh, 00ah, 000h + ; disGetNextSymbol 0xc7ea4 LB 0x29 -> off=0x0 cb=0000000000000029 uValue=00000000000c3724 '_no_vbebios_info_string' +_no_vbebios_info_string: ; 0xc7ea4 LB 0x29 + db 'No VirtualBox VBE support available!', 00dh, 00ah, 00dh, 00ah, 000h + + ; Padding 0x1 bytes at 0xc7ecd + db 001h + +section CONST progbits vstart=0x7ece align=1 ; size=0x0 class=DATA group=DGROUP + +section CONST2 progbits vstart=0x7ece align=1 ; size=0x0 class=DATA group=DGROUP + + ; Padding 0x132 bytes at 0xc7ece + db 000h, 000h, 000h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 000h, 02fh, 068h, 06fh, 06dh, 065h + db 02fh, 073h, 062h, 075h, 072h, 063h, 068h, 069h, 06ch, 02fh, 076h, 062h, 05fh, 073h, 072h, 063h + db 02fh, 062h, 072h, 061h, 06eh, 063h, 068h, 065h, 073h, 02fh, 056h, 042h, 06fh, 078h, 02dh, 037h + db 02eh, 030h, 02fh, 06fh, 075h, 074h, 02fh, 06ch, 069h, 06eh, 075h, 078h, 02eh, 061h, 06dh, 064h + db 036h, 034h, 02fh, 072h, 065h, 06ch, 065h, 061h, 073h, 065h, 02fh, 06fh, 062h, 06ah, 02fh, 056h + db 042h, 06fh, 078h, 056h, 067h, 061h, 042h, 069h, 06fh, 073h, 038h, 030h, 038h, 036h, 02fh, 056h + db 042h, 06fh, 078h, 056h, 067h, 061h, 042h, 069h, 06fh, 073h, 038h, 030h, 038h, 036h, 02eh, 073h + db 079h, 06dh, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h + db 000h, 021h diff --git a/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.md5sum b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.md5sum new file mode 100644 index 00000000..437a4099 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/VBoxVgaBiosAlternative8086.md5sum @@ -0,0 +1 @@ +fe9decb70cbd4b2ae6fa11107ac955ae *VBoxVgaBios8086.rom diff --git a/src/VBox/Devices/Graphics/BIOS/inlines.h b/src/VBox/Devices/Graphics/BIOS/inlines.h new file mode 100644 index 00000000..6047f23a --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/inlines.h @@ -0,0 +1,180 @@ +/** @file + * Inline routines for Watcom C. + */ + +/* + * Copyright (C) 2010-2023 Oracle and/or its affiliates. + * + * This file is part of VirtualBox base platform packages, as + * available from https://www.virtualbox.org. + * + * 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, in version 3 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, see . + * + * SPDX-License-Identifier: GPL-3.0-only + */ + +#ifndef VBOX_INCLUDED_SRC_Graphics_BIOS_inlines_h +#define VBOX_INCLUDED_SRC_Graphics_BIOS_inlines_h +#ifndef RT_WITHOUT_PRAGMA_ONCE +# pragma once +#endif + +extern unsigned inp(unsigned port); +extern unsigned outp(unsigned port, unsigned value); +extern unsigned inpw(unsigned port); +extern unsigned outpw(unsigned port, unsigned value); +#pragma intrinsic(inp,outp,inpw,outpw) +#define inb(p) inp(p) +#define outb(p, v) outp(p, v) +#define inw(p) inpw(p) +#define outw(p, v) outpw(p, v) + +/* Far byte/word/dword access routines. */ + +inline uint8_t read_byte(uint16_t seg, uint16_t offset) +{ + return( *(seg:>(uint8_t *)offset) ); +} + +inline void write_byte(uint16_t seg, uint16_t offset, uint8_t data) +{ + *(seg:>(uint8_t *)offset) = data; +} + +inline uint16_t read_word(uint16_t seg, uint16_t offset) +{ + return( *(seg:>(uint16_t *)offset) ); +} + +inline void write_word(uint16_t seg, uint16_t offset, uint16_t data) +{ + *(seg:>(uint16_t *)offset) = data; +} + +inline uint32_t read_dword(uint16_t seg, uint16_t offset) +{ + return( *(seg:>(uint32_t *)offset) ); +} + +inline void write_dword(uint16_t seg, uint16_t offset, uint32_t data) +{ + *(seg:>(uint32_t *)offset) = data; +} + +void int_enable(void); +#pragma aux int_enable = "sti" modify exact [] nomemory; + +void int_disable(void); +#pragma aux int_disable = "cli" modify exact [] nomemory; + +uint16_t int_query(void); +#pragma aux int_query = \ + "pushf" \ + "pop ax" \ + value [ax] modify exact [ax] nomemory; + +void int_restore(uint16_t old_flags); +#pragma aux int_restore = \ + "push ax" \ + "popf" \ + parm [ax] modify exact [] nomemory; + +void halt(void); +#pragma aux halt = "hlt" modify exact [] nomemory; + +void halt_forever(void); +#pragma aux halt_forever = \ + "forever:" \ + "hlt" \ + "jmp forever" \ + modify exact [] nomemory aborts; + +void rep_movsw(void __far *d, void __far *s, int nwords); +#pragma aux rep_movsw = \ + "push ds" \ + "mov ds, dx" \ + "rep movsw" \ + "pop ds" \ + parm [es di] [dx si] [cx]; + +int repe_cmpsb(void __far *d, void __far *s, int nbytes); +#pragma aux repe_cmpsb = \ + "push ds" \ + "mov ds, dx" \ + "repe cmpsb" \ + "pop ds" \ + "mov ax, 0" \ + "jz match" \ + "inc al" \ + "match:" \ + parm [es di] [dx si] [cx] value [ax] modify nomemory; + +char __far *rep_insb(char __far *buffer, unsigned nbytes, unsigned port); +#pragma aux rep_insb = ".286" "rep insb" parm [es di] [cx] [dx] value [es di] modify exact [cx di]; + +char __far *rep_insw(char __far *buffer, unsigned nwords, unsigned port); +#pragma aux rep_insw = ".286" "rep insw" parm [es di] [cx] [dx] value [es di] modify exact [cx di]; + +char __far *rep_outsb(char __far *buffer, unsigned nbytes, unsigned port); +#pragma aux rep_outsb = ".286" "rep outs dx,byte ptr es:[si]" parm [es si] [cx] [dx] value [es si] modify exact [cx si]; + +char __far *rep_outsw(char __far *buffer, unsigned nwords, unsigned port); +#pragma aux rep_outsw = ".286" "rep outs dx,word ptr es:[si]" parm [es si] [cx] [dx] value [es si] modify exact [cx si]; + +uint16_t __far swap_16(uint16_t val); +#pragma aux swap_16 = "xchg ah,al" parm [ax] value [ax] modify exact [ax] nomemory; + +uint32_t __far swap_32(uint32_t val); +#pragma aux swap_32 = \ + "xchg ah, al" \ + "xchg dh, dl" \ + "xchg ax, dx" \ + parm [dx ax] value [dx ax] modify exact [dx ax] nomemory; + +extern void memsetb(uint16_t seg, uint16_t offset, uint16_t value, uint16_t count); +#pragma aux memsetb = \ + "jcxz no_copy" \ + "rep stosb" \ + "no_copy:" \ + parm [es] [di] [ax] [cx]; + +extern void memsetw(uint16_t seg, uint16_t offset, uint16_t value, uint16_t count); +#pragma aux memsetw = \ + "jcxz no_copy" \ + "rep stosw" \ + "no_copy:" \ + parm [es] [di] [ax] [cx]; + +extern void memcpyb(uint16_t dseg, uint16_t doffset, uint16_t sseg, uint16_t soffset, uint16_t count); +#pragma aux memcpyb = \ + "jcxz no_copy" \ + "push ds" \ + "mov ds, dx" \ + "rep movsb" \ + "pop ds" \ + "no_copy:" \ + parm [es] [di] [dx] [si] [cx]; + +extern void memcpyw(uint16_t dseg, uint16_t doffset, uint16_t sseg, uint16_t soffset, uint16_t count); +#pragma aux memcpyw = \ + "jcxz no_copy" \ + "push ds" \ + "mov ds, dx" \ + "rep movsw" \ + "pop ds" \ + "no_copy:" \ + parm [es] [di] [dx] [si] [cx]; + +#endif /* !VBOX_INCLUDED_SRC_Graphics_BIOS_inlines_h */ + diff --git a/src/VBox/Devices/Graphics/BIOS/makefile b/src/VBox/Devices/Graphics/BIOS/makefile new file mode 100644 index 00000000..0173ae56 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/makefile @@ -0,0 +1,48 @@ +# Compiler flags: +# -q no banner +# -wx max warnings +# -0 generate 8086 code +# -ms force small model (default) +# -s remove runtime stack checks (required) +# -os optimize for size +# -zu assume that SS != DS (required) +# -zl do not emit default library information +# +!ifdef __UNIX__ +Q=\" +!else +Q=" +!endif +CFLAGS = -q -3 -wx -zu -zl -s -oas -d1 -ms +DEFS = -DVBOX -DVBE -DVBOX_VERSION_STRING=$(Q)0.9.90$(Q) -DVBOX_VENDOR=$(Q)Oracle_Corporation$(Q) -DVBOX_PRODUCT=$(Q)Oracle_VM_VirtualBox$(Q) -DVBOX_BIOS_CPU=80386 +#DEFS = -DVBOX -DVBOX_VERSION_STRING=$(Q)0.9$(Q) -DVBOX_VENDOR=$(Q)Oracle$(Q) -DVBOX_PRODUCT=$(Q)VirtualBox$(Q) + +AFLAGS = -q -0 -wx + +INCLS = -I$(Q)../../../../../include$(Q) -I$(Q)../../../../../include/VBox/Graphics$(Q) +AINCS = -I$(Q)../../BiosCommonCode$(Q) + +.c.obj : .autodepend + wcc -fo=.obj $(CFLAGS) $(DEFS) $(INCLS) $< + +.asm.obj : .autodepend + wasm -fo=.obj $(AFLAGS) $(DEFS) $(AINCS) $< + +OBJS = vgarom.obj vberom.obj vgabios.obj vbe.obj + +vgabios.rom : vgabios.bin + biossums $< $@ + +vgabios.bin : $(OBJS) $(__MAKEFILES__) + wlink name $@ system dos debug all option quiet & + option nofarcalls, map, verbose, statics, symfile & + output raw offset=0xC0000 order & + clname CODE segment VGAROM segaddr=0xC000 & + segment _TEXT segaddr=0xC000 offset=0xA00 & + segment VBE32 segaddr=0xC000 offset=0x4600 & + clname DATA segment _DATA segaddr=0xC000 offset=0x4800 & + file { $(OBJS) } disable 1014, 1023, 2120 + +clean : .symbolic + @rm -f *.obj *.err + @rm -f vgabios.bin vgabios.rom vgabios.map vgabios.sym diff --git a/src/VBox/Devices/Graphics/BIOS/ose_logo.bmp b/src/VBox/Devices/Graphics/BIOS/ose_logo.bmp new file mode 100644 index 00000000..a4d5008d Binary files /dev/null and b/src/VBox/Devices/Graphics/BIOS/ose_logo.bmp differ diff --git a/src/VBox/Devices/Graphics/BIOS/tests/testbios.c b/src/VBox/Devices/Graphics/BIOS/tests/testbios.c new file mode 100644 index 00000000..92295d1d --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/tests/testbios.c @@ -0,0 +1,353 @@ +/* + This is a little turbo C program that executes + several int10, and let you inspect the content + of the vgabios area + + It is used to test the behavior of the vgabios +*/ + +#include +#include +#include + + +typedef unsigned char Bit8u; +typedef unsigned short Bit16u; + +typedef struct +{Bit8u initial; + Bit8u current; + Bit16u nbcols; + Bit16u regen; + Bit16u start; + Bit16u curpos[8]; + Bit8u curtyp; + Bit8u curpage; + Bit16u crtc; + Bit16u msr; + Bit16u cgapal; + Bit8u nbrows; + Bit16u cheight; + Bit8u ctl; + Bit8u switches; + Bit8u modeset; + Bit8u dcc; + Bit16u vsseg; + Bit16u vsoffset; +} BIOSAREA; + +void int10ax0003(struct REGPACK *regs) +{ + regs->r_ax=0x0003; + intr(0x10,regs); +} + +void int10ax02(struct REGPACK *regs) +{ + regs->r_ax=0x0200; + regs->r_bx=0x0000; + regs->r_dx=0x1710; + intr(0x10,regs); + printf("We are now at 24/17"); +} + +void int10ax03(struct REGPACK *regs) +{ + regs->r_ax=0x0300; + regs->r_bx=0x0000; + intr(0x10,regs); + printf("\nCursor is ax%04x cx%04x dx%04x\n",regs->r_ax,regs->r_cx,regs->r_dx); +} + +void int10ax0501(struct REGPACK *regs) +{ + regs->r_ax=0x0501; + intr(0x10,regs); + regs->r_ax=0x0e61; + regs->r_bx=0x0000; + intr(0x10,regs); + printf("We are now on page 2"); +} + +void int10ax0602(struct REGPACK *regs) +{ + regs->r_ax=0x0602; + regs->r_bx=0x0700; + regs->r_cx=0x0101; + regs->r_dx=0x0a0a; + intr(0x10,regs); + printf("Scrolled 2 up"); +} + +void int10ax0702(struct REGPACK *regs) +{ + regs->r_ax=0x0702; + regs->r_bx=0x0700; + regs->r_cx=0x0101; + regs->r_dx=0x0a0a; + intr(0x10,regs); + printf("Scrolled 2 down"); +} + +void int10ax08(struct REGPACK *regs) +{ + regs->r_ax=0x0800; + regs->r_bx=0x0000; + intr(0x10,regs); +} + +void int10ax09(struct REGPACK *regs) +{ + char attr; + regs->r_ax=0x0501; + intr(0x10,regs); + for(attr=0;attr<16;attr++) + {printf("%02x ",attr); + regs->r_ax=0x0961+attr; + regs->r_bx=0x0100+attr; + regs->r_cx=0x0016; + intr(0x10,regs); + printf("\n"); + } +} + +void int10ax0a(struct REGPACK *regs) +{ + regs->r_ax=0x0501; + intr(0x10,regs); + regs->r_ax=0x0a62; + regs->r_bx=0x0101; + regs->r_cx=0x0016; + intr(0x10,regs); +} + +void int10ax0f(struct REGPACK *regs) +{ + regs->r_ax=0x0501; + intr(0x10,regs); + regs->r_ax=0x0f00; + intr(0x10,regs); +} + +void int10ax1b(struct REGPACK *regs) +{unsigned char table[64]; + unsigned char far *ptable; + int i; + + regs->r_ax=0x0501; + intr(0x10,regs); + regs->r_ax=0x1b00; + regs->r_bx=0x0000; + ptable=&table; + regs->r_es=FP_SEG(ptable); + regs->r_di=FP_OFF(ptable); + printf("Read state info in %04x:%04x\n",regs->r_es,regs->r_di); + intr(0x10,regs); + + for(i=0;i<64;i++) + {if(i%16==0)printf("\n%02x ",i); + printf("%02x ",table[i]); + } + printf("\n"); +} + +static unsigned char var[64]; + +void int10ax13(struct REGPACK *regs) +{unsigned char far *pvar; + + pvar=&var; + + regs->r_ax=0x1300; + regs->r_bx=0x000b; + regs->r_dx=0x1010; + regs->r_cx=0x0002; + regs->r_es=FP_SEG(pvar); + regs->r_bp=FP_OFF(pvar); + pokeb(regs->r_es,regs->r_bp,'t'); + pokeb(regs->r_es,regs->r_bp+1,'b'); + printf("Writing from %04x:%04x\n",regs->r_es,regs->r_bp); + intr(0x10,regs); + +} + +void switch_50(struct REGPACK *regs) +{ + regs->r_ax=0x1202; + regs->r_bx=0x3000; + intr(0x10,regs); + regs->r_ax=0x0003; + intr(0x10,regs); + regs->r_ax=0x1112; + regs->r_bx=0x0000; + intr(0x10,regs); +} + +char exec_function(struct REGPACK *regs) +{char c; + + printf("--- Functions --------------------\n"); + printf("a. int10 ax0003\t"); + printf("b. int10 ax02\t"); + printf("c. int10 ax03\t"); + printf("d. int10 ax0501\n"); + printf("e. int10 ax0602\t"); + printf("f. int10 ax0702\t"); + printf("g. int10 ax08\t"); + printf("h. int10 ax09\t"); + printf("i. int10 ax0a\n"); + printf("j. int10 ax0f\t"); + printf("k. int10 ax1b\t"); + printf("l. int10 ax13\n"); + printf("q. Quit\t"); + printf("r. switch to 50 lines\n"); + c=getche(); + + switch(c) + {case 'a': + int10ax0003(regs); + break; + case 'b': + int10ax02(regs); + break; + case 'c': + int10ax03(regs); + break; + case 'd': + int10ax0501(regs); + break; + case 'e': + int10ax0602(regs); + break; + case 'f': + int10ax0702(regs); + break; + case 'g': + int10ax08(regs); + break; + case 'h': + int10ax09(regs); + break; + case 'i': + int10ax0a(regs); + break; + case 'j': + int10ax0f(regs); + break; + case 'k': + int10ax1b(regs); + break; + case 'l': + int10ax13(regs); + break; + case 'q': + break; + case 'r': + switch_50(regs); + break; + default: + printf("No such function!\n"); + } + + if(c=='q')return 1; + while(kbhit()==0); + c=getch(); + + return 0; +} + +void read_bios_area(BIOSAREA *biosarea) +{ + biosarea->initial=peekb(0x40,0x10); + biosarea->current=peekb(0x40,0x49); + biosarea->nbcols=peek(0x40,0x4a); + biosarea->regen=peek(0x40,0x4c); + biosarea->start=peek(0x40,0x4e); + biosarea->curpos[0]=peek(0x40,0x50); + biosarea->curpos[1]=peek(0x40,0x52); + biosarea->curpos[2]=peek(0x40,0x54); + biosarea->curpos[3]=peek(0x40,0x56); + biosarea->curpos[4]=peek(0x40,0x58); + biosarea->curpos[5]=peek(0x40,0x5a); + biosarea->curpos[6]=peek(0x40,0x5c); + biosarea->curpos[7]=peek(0x40,0x5e); + biosarea->curtyp=peek(0x40,0x60); + biosarea->curpage=peekb(0x40,0x62); + biosarea->crtc=peek(0x40,0x63); + biosarea->msr=peekb(0x40,0x65); + biosarea->cgapal=peekb(0x40,0x66); + biosarea->nbrows=peekb(0x40,0x84); + biosarea->cheight=peek(0x40,0x85); + biosarea->ctl=peekb(0x40,0x87); + biosarea->switches=peekb(0x40,0x88); + biosarea->modeset=peekb(0x40,0x89); + biosarea->dcc=peekb(0x40,0x8a); + biosarea->vsseg=peek(0x40,0xa8); + biosarea->vsoffset=peek(0x40,0xaa); +} + +void show_bios_area(BIOSAREA *biosarea) +{ + printf("--- BIOS area --------------------\n"); + printf("initial : %02x\t",biosarea->initial); + printf("current : %02x\t",biosarea->current); + printf("nbcols : %04x\t",biosarea->nbcols); + printf("regen : %04x\t",biosarea->regen); + printf("start : %04x\n",biosarea->start); + printf("curpos : %04x %04x %04x %04x %04x %04x %04x %04x\n", + biosarea->curpos[0], biosarea->curpos[1], biosarea->curpos[2], biosarea->curpos[3], + biosarea->curpos[4], biosarea->curpos[5], biosarea->curpos[6], biosarea->curpos[7]); + printf("curtyp : %04x\t",biosarea->curtyp); + printf("curpage : %02x\t",biosarea->curpage); + printf("crtc : %04x\t",biosarea->crtc); + printf("msr : %04x\n",biosarea->msr); + printf("cgapal : %04x\t",biosarea->cgapal); + printf("nbrows-1: %02x\t",biosarea->nbrows); + printf("cheight : %04x\t",biosarea->cheight); + printf("ctl : %02x\n",biosarea->ctl); + printf("switches: %02x\t",biosarea->switches); + printf("modeset : %02x\t",biosarea->modeset); + printf("dcc : %02x\t",biosarea->dcc); + printf("vs : %04x:%04x\n",biosarea->vsseg,biosarea->vsoffset); +} + +void show_regs(struct REGPACK *regs) +{ + printf("--- Registers --------------------\n"); + printf("ax %04x\t",regs->r_ax); + printf("bx %04x\t",regs->r_bx); + printf("cx %04x\t",regs->r_cx); + printf("dx %04x\t",regs->r_dx); + printf("ds %04x\t",regs->r_ds); + printf("si %04x\t",regs->r_si); + printf("es %04x\t",regs->r_es); + printf("di %04x\n",regs->r_di); +} + +void reset_videomode() +{ + struct REGPACK regs; + + regs.r_ax=0x0003; + intr(0x10,®s); +} + +void main() +{ + + BIOSAREA biosarea; + struct REGPACK regs; + + directvideo=0; + + while(1) + { + read_bios_area(&biosarea); + + reset_videomode(); + show_bios_area(&biosarea); + show_regs(®s); + + if(exec_function(®s)!=0)break; + } +} diff --git a/src/VBox/Devices/Graphics/BIOS/vbe.c b/src/VBox/Devices/Graphics/BIOS/vbe.c new file mode 100644 index 00000000..066c2cb0 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vbe.c @@ -0,0 +1,816 @@ +// ============================================================================================ +// +// Copyright (C) 2002 Jeroen Janssen +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2 of the License, or (at your option) any later version. +// +// This library 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 +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// ============================================================================================ +// +// This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +// You can NOT drive any physical vga card with it. +// +// ============================================================================================ +// +// This VBE Bios is based on information taken from : +// - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +// +// ============================================================================================ + + +/* + * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice + * other than GPL or LGPL is available it will apply instead, Oracle elects to use only + * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where + * a choice of LGPL license versions is made available with the language indicating + * that LGPLv2 or any later version may be used, or where a choice of which version + * of the LGPL is applied is otherwise unspecified. + */ + +#include +#include +#include "vbe.h" +#include "vgadefs.h" +#include "inlines.h" + +// disable VESA/VBE2 check in vbe info +//#define VBE2_NO_VESA_CHECK + +// use bytewise i/o (Longhorn beta issue, not in released Vista) +#define VBE_BYTEWISE_IO + +#ifdef VBE_BYTEWISE_IO + extern void do_out_dx_ax(); + #pragma aux do_out_dx_ax "*"; + extern void out_w(uint16_t port, uint16_t value); + #pragma aux out_w = \ + "call do_out_dx_ax" \ + parm [dx] [ax] modify nomemory; + extern void do_in_ax_dx(); + #pragma aux do_in_ax_dx "*"; + extern uint16_t in_w(uint16_t port); + #pragma aux in_w = \ + "call do_in_ax_dx" \ + parm [dx] value [ax] modify nomemory; +#else + #define out_w outw + #define in_w inw +#endif + + +/* VESA signatures as integer constants. */ +#define SIG_VBE2 0x32454256 /* 'VBE2' */ +#define SIG_VESA 0x41534556 /* 'VESA' */ + + +/* Implemented in assembler. */ +extern void __cdecl vga_compat_setup(void); +extern void dispi_set_enable(uint16_t enable); +extern void dispi_set_bank(uint16_t bank); +extern uint16_t __cdecl dispi_get_max_bpp(void); +extern void __cdecl dispi_set_bank_farcall(void); + +// The current OEM Software Revision of this VBE Bios +#define VBE_OEM_SOFTWARE_REV 0x0003 + +// FIXME: 'merge' these (c) etc strings with the vgabios.c strings? +char vbebios_copyright[] = "VirtualBox VESA BIOS"; +char vbebios_vendor_name[] = VBOX_VENDOR; +char vbebios_product_name[] = VBOX_PRODUCT " VBE Adapter"; +char vbebios_product_revision[] = VBOX_PRODUCT " Version " VBOX_VERSION_STRING; + +char vbebios_info_string[] = "VirtualBox VBE Display Adapter enabled\r\n\r\n"; +char no_vbebios_info_string[] = "No VirtualBox VBE support available!\r\n\r\n"; + +#ifdef VGA_DEBUG +char msg_vbe_init[] = "VirtualBox Version " VBOX_VERSION_STRING " VBE Display Adapter\r\n"; +#endif + +static void dispi_set_xres(uint16_t xres) +{ +#ifdef VGA_DEBUG + printf("vbe_set_xres: %04x\n", xres); +#endif + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_XRES); + out_w(VBE_DISPI_IOPORT_DATA, xres); +} + +static void dispi_set_yres(uint16_t yres) +{ +#ifdef VGA_DEBUG + printf("vbe_set_yres: %04x\n", yres); +#endif + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_YRES); + out_w(VBE_DISPI_IOPORT_DATA, yres); +} + +static uint16_t dispi_get_yres(void) +{ + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_YRES); + return in_w(VBE_DISPI_IOPORT_DATA); +} + +static void dispi_set_bpp(uint16_t bpp) +{ +#ifdef VGA_DEBUG + printf("vbe_set_bpp: %02x\n", bpp); +#endif + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_BPP); + out_w(VBE_DISPI_IOPORT_DATA, bpp); +} + +static uint16_t dispi_get_bpp(void) +{ + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_BPP); + return in_w(VBE_DISPI_IOPORT_DATA); +} + +static void dispi_set_virt_width(uint16_t vwidth) +{ +#ifdef VGA_DEBUG + printf("vbe_set_virt_width: %04x\n", vwidth); +#endif + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_VIRT_WIDTH); + out_w(VBE_DISPI_IOPORT_DATA, vwidth); +} + +static uint16_t dispi_get_virt_width(void) +{ + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_VIRT_WIDTH); + return in_w(VBE_DISPI_IOPORT_DATA); +} + +static uint16_t dispi_get_virt_height(void) +{ + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_VIRT_HEIGHT); + return in_w(VBE_DISPI_IOPORT_DATA); +} + +uint16_t in_word(uint16_t port, uint16_t addr) +{ + outw(port, addr); + return inw(port); +} + +uint8_t in_byte(uint16_t port, uint16_t addr) +{ + outw(port, addr); + return inb(port); +} + +/* Display "chip" identification helpers. */ +static uint16_t dispi_get_id(void) +{ + outw(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_ID); + return inw(VBE_DISPI_IOPORT_DATA); +} + +static void dispi_set_id(uint16_t chip_id) +{ + outw(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_ID); + outw(VBE_DISPI_IOPORT_DATA, chip_id); +} + +/* VBE Init - Initialise the VESA BIOS Extension (VBE) support + * This function does a sanity check on the host side display code interface. + */ +void vbe_init(void) +{ + dispi_set_id(VBE_DISPI_ID0); + if (dispi_get_id() == VBE_DISPI_ID0) { + /* VBE support was detected. */ + write_byte(BIOSMEM_SEG, BIOSMEM_VBE_FLAG, 1); + dispi_set_id(VBE_DISPI_ID4); + } +#ifdef DEBUG_VGA + printf(msg_vbe_init); +#endif +} + +/* Find the offset of the desired mode, given its number. */ +static uint16_t mode_info_find_mode(uint16_t mode, Boolean using_lfb) +{ + uint16_t sig, vmode, attrs; + uint16_t cur_info_ofs; /* Current offset in mode list. */ + + /* Read and check the VBE Extra Data signature. */ + sig = in_word(VBE_EXTRA_PORT, 0); + if (sig != VBEHEADER_MAGIC) { +#ifdef DEBUG_VGA + printf("Signature NOT found! %x\n", sig); +#endif + return 0; + } + + /* The LFB may be disabled. If so, LFB modes must not be reported. */ + if (using_lfb) { + uint16_t lfb_addr_hi; + + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_FB_BASE_HI); + lfb_addr_hi = in_w(VBE_DISPI_IOPORT_DATA); + if (!lfb_addr_hi) { +#ifdef DEBUG_VGA + printf("LFB disabled, LFB modes unavailable!\n"); +#endif + return 0; + } + } + + cur_info_ofs = sizeof(VBEHeader); + + vmode = in_word(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, mode)/*&cur_info->mode*/); + while (vmode != VBE_VESA_MODE_END_OF_LIST) + { + attrs = in_word(VBE_EXTRA_PORT, /*&cur_info->info.ModeAttributes*/cur_info_ofs + offsetof(ModeInfoListItem, info.ModeAttributes) ); + + if (vmode == mode) + { + if (!using_lfb) + return cur_info_ofs; + else if (attrs & VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE) + return cur_info_ofs; + else { + cur_info_ofs += sizeof(ModeInfoListItem); + vmode = in_word(VBE_EXTRA_PORT, /*&cur_info->mode*/cur_info_ofs + offsetof(ModeInfoListItem, mode)); + } + } else { + cur_info_ofs += sizeof(ModeInfoListItem); + vmode = in_word(VBE_EXTRA_PORT, /*&cur_info->mode*/cur_info_ofs + offsetof(ModeInfoListItem, mode)); + } + } + return 0; +} + +#ifndef VBOX +; VBE Display Info - Display information on screen about the VBE + +vbe_display_info: + call _vbe_has_vbe_display + test ax, ax + jz no_vbe_flag + mov ax, #0xc000 + mov ds, ax + mov si, #_vbebios_info_string + jmp _display_string +no_vbe_flag: + mov ax, #0xc000 + mov ds, ax + mov si, #_no_vbebios_info_string + jmp _display_string +#endif + +/** Function 00h - Return VBE Controller Information + * + * Input: + * AX = 4F00h + * ES:DI = Pointer to buffer in which to place VbeInfoBlock structure + * (VbeSignature should be VBE2 when VBE 2.0 information is desired and + * the info block is 512 bytes in size) + * Output: + * AX = VBE Return Status + * + */ +void vbe_biosfn_return_controller_information(uint16_t STACK_BASED *AX, uint16_t ES, uint16_t DI) +{ + uint16_t status; + uint16_t vbe2_info; + uint16_t cur_mode = 0; + uint16_t cur_ptr=34; + uint16_t cur_info_ofs; + uint16_t sig, vmode; + uint16_t max_bpp = dispi_get_max_bpp(); + VbeInfoBlock __far *info_block; + + info_block = ES :> (VbeInfoBlock *)DI; + + /* Read VBE Extra Data signature */ + sig = in_word(VBE_EXTRA_PORT, 0); + if (sig != VBEHEADER_MAGIC) + { + *AX = 0x0100; +#ifdef DEBUG_VGA + printf("Signature NOT found\n"); +#endif + return; + } + cur_info_ofs = sizeof(VBEHeader); + status = *AX; + +#ifdef VGA_DEBUG + printf("VBE vbe_biosfn_return_vbe_info ES%x DI%x AX%x\n",ES,DI,status); +#endif + + vbe2_info = 0; + + /* Don't use a local copy of VbeInfoBlock on the stack; it's too big. + * The Ubuntu 8.04 64 bits splash screen emulator can't handle this. + */ +#ifdef VBE2_NO_VESA_CHECK +#else /* !VBE2_NO_VESA_CHECK */ + // check for VBE2 signature + if (info_block->VbeSignature.Sig32 == SIG_VBE2 || info_block->VbeSignature.Sig32 == SIG_VESA) + { + vbe2_info = 1; +#ifdef VGA_DEBUG + printf("VBE correct VESA/VBE2 signature found\n"); +#endif + } +#endif /* !VBE2_NO_VESA_CHECK */ + + /* VBE Signature - the compiler will optimize this into something sane. */ + info_block->VbeSignature.SigChr[0] = 'V'; + info_block->VbeSignature.SigChr[1] = 'E'; + info_block->VbeSignature.SigChr[2] = 'S'; + info_block->VbeSignature.SigChr[3] = 'A'; + + /* VBE Version supported. */ + info_block->VbeVersion = 0x0200; /* Version 2.0. */ + + /* OEM String. */ + info_block->OemString.Ptr = &vbebios_copyright; + + /* Capabilities if this implementation. */ + info_block->Capabilities[0] = VBE_CAPABILITY_8BIT_DAC; + info_block->Capabilities[1] = 0; + info_block->Capabilities[2] = 0; + info_block->Capabilities[3] = 0; + + /* Video mode list pointer (dynamically generated). */ + info_block->VideoModePtr_Seg = ES; + info_block->VideoModePtr_Off = DI + 34; + + /* Total controller memory in 64K units. */ + info_block->TotalMemory = in_word(VBE_EXTRA_PORT, 0xffff); + + if (vbe2_info) + { + /* OEM information. */ + info_block->OemSoftwareRev = VBE_OEM_SOFTWARE_REV; + info_block->OemVendorName.Ptr = &vbebios_vendor_name; + info_block->OemProductName.Ptr = &vbebios_product_name; + info_block->OemProductRev.Ptr = &vbebios_product_revision; + } + + do + { + uint8_t data_b; + + data_b = in_byte(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, info.BitsPerPixel) /*&cur_info->info.BitsPerPixel*/); + if (data_b <= max_bpp) + { + vmode = in_word(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, mode)/*&cur_info->mode*/); +#ifdef VGA_DEBUG + printf("VBE found mode %x => %x\n", vmode, cur_mode); +#endif + write_word(ES, DI + cur_ptr, vmode); + cur_mode++; + cur_ptr+=2; + } + cur_info_ofs += sizeof(ModeInfoListItem); + vmode = in_word(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, mode)/*&cur_info->mode*/); + } while (vmode != VBE_VESA_MODE_END_OF_LIST); + + // Add vesa mode list terminator + write_word(ES, DI + cur_ptr, vmode); + *AX = 0x004F; +} + +/** Function 01h - Return VBE Mode Information + * + * Input: + * AX = 4F01h + * CX = Mode Number + * ES:DI = Pointer to buffer in which to place ModeInfoBlock structure + * Output: + * AX = VBE Return Status + * + */ +void vbe_biosfn_return_mode_information(uint16_t STACK_BASED *AX, uint16_t CX, uint16_t ES, uint16_t DI) +{ + uint16_t result = 0x0100; + uint16_t cur_info_ofs; + Boolean using_lfb; + uint8_t win_attr; + +#ifdef VGA_DEBUG + printf("VBE vbe_biosfn_return_mode_information ES%x DI%x CX%x\n",ES,DI,CX); +#endif + + using_lfb = ((CX & VBE_MODE_LINEAR_FRAME_BUFFER) == VBE_MODE_LINEAR_FRAME_BUFFER); + CX = (CX & 0x1ff); + + cur_info_ofs = mode_info_find_mode(CX, using_lfb); + + if (cur_info_ofs) { + uint16_t i; +#ifdef VGA_DEBUG + printf("VBE found mode %x\n",CX); +#endif + memsetb(ES, DI, 0, 256); // The mode info size is fixed + for (i = 0; i < sizeof(ModeInfoBlockCompact); i++) { + uint8_t b; + + b = in_byte(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, info) + i/*(char *)(&(cur_info->info)) + i*/); + write_byte(ES, DI + i, b); + } + win_attr = read_byte(ES, DI + offsetof(ModeInfoBlock, WinAAttributes)); + if (win_attr & VBE_WINDOW_ATTRIBUTE_RELOCATABLE) { + write_word(ES, DI + offsetof(ModeInfoBlock, WinFuncPtr), (uint16_t)(dispi_set_bank_farcall)); + // If BIOS not at 0xC000 -> boom + write_word(ES, DI + offsetof(ModeInfoBlock, WinFuncPtr) + 2, 0xC000); + } + // Update the LFB physical address which may change at runtime + out_w(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_FB_BASE_HI); + write_word(ES, DI + offsetof(ModeInfoBlock, PhysBasePtr) + 2, in_w(VBE_DISPI_IOPORT_DATA)); + + result = 0x4f; + } else { +#ifdef VGA_DEBUG + printf("VBE *NOT* found mode %x\n",CX); +#endif + result = 0x100; + } + + *AX = result; +} + +/** Function 02h - Set VBE Mode + * + * Input: + * AX = 4F02h + * BX = Desired Mode to set + * ES:DI = Pointer to CRTCInfoBlock structure + * Output: + * AX = VBE Return Status + * + */ +void vbe_biosfn_set_mode(uint16_t STACK_BASED *AX, uint16_t BX, uint16_t ES, uint16_t DI) +{ + uint16_t result; + uint16_t cur_info_ofs; + Boolean using_lfb; + uint8_t no_clear; + uint8_t lfb_flag; + + using_lfb = ((BX & VBE_MODE_LINEAR_FRAME_BUFFER) == VBE_MODE_LINEAR_FRAME_BUFFER); + lfb_flag = using_lfb ? VBE_DISPI_LFB_ENABLED : 0; + no_clear = ((BX & VBE_MODE_PRESERVE_DISPLAY_MEMORY) == VBE_MODE_PRESERVE_DISPLAY_MEMORY) ? VBE_DISPI_NOCLEARMEM : 0; + + BX = (BX & 0x1ff); + + // check for non vesa mode + if (BX < VBE_MODE_VESA_DEFINED) + { + uint8_t mode; + + dispi_set_enable(VBE_DISPI_DISABLED); + // call the vgabios in order to set the video mode + // this allows for going back to textmode with a VBE call (some applications expect that to work) + mode = (BX & 0xff); + biosfn_set_video_mode(mode); + result = 0x4f; + goto leave; + } + + cur_info_ofs = mode_info_find_mode(BX, using_lfb); + + if (cur_info_ofs != 0) + { + uint16_t xres, yres; + uint8_t bpp; + + xres = in_word(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, info.XResolution) /*&cur_info->info.XResolution*/); + yres = in_word(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, info.YResolution) /*&cur_info->info.YResolution*/); + bpp = in_byte(VBE_EXTRA_PORT, cur_info_ofs + offsetof(ModeInfoListItem, info.BitsPerPixel) /*&cur_info->info.BitsPerPixel*/); + +#ifdef VGA_DEBUG + printf("VBE found mode %x, setting:\n", BX); + printf("\txres%x yres%x bpp%x\n", xres, yres, bpp); +#endif + + // first disable current mode (when switching between vesa modi) + dispi_set_enable(VBE_DISPI_DISABLED); + + if (bpp == 4) + { + biosfn_set_video_mode(0x6a); + } + + dispi_set_bpp(bpp); + dispi_set_xres(xres); + dispi_set_yres(yres); + dispi_set_bank(0); + dispi_set_enable(VBE_DISPI_ENABLED | no_clear | lfb_flag); + vga_compat_setup(); + + write_word(BIOSMEM_SEG,BIOSMEM_VBE_MODE,BX); + write_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL,(0x60 | no_clear)); + + result = 0x4f; + } + else + { +#ifdef VGA_DEBUG + printf("VBE *NOT* found mode %x\n" , BX); +#endif + result = 0x100; + } + +leave: + *AX = result; +} + +uint16_t vbe_biosfn_read_video_state_size(void) +{ + return 9 * 2; +} + +void vbe_biosfn_save_video_state(uint16_t ES, uint16_t BX) +{ + uint16_t enable, i; + + outw(VBE_DISPI_IOPORT_INDEX,VBE_DISPI_INDEX_ENABLE); + enable = inw(VBE_DISPI_IOPORT_DATA); + write_word(ES, BX, enable); + BX += 2; + if (!(enable & VBE_DISPI_ENABLED)) + return; + for(i = VBE_DISPI_INDEX_XRES; i <= VBE_DISPI_INDEX_Y_OFFSET; i++) { + if (i != VBE_DISPI_INDEX_ENABLE) { + outw(VBE_DISPI_IOPORT_INDEX, i); + write_word(ES, BX, inw(VBE_DISPI_IOPORT_DATA)); + BX += 2; + } + } +} + + +void vbe_biosfn_restore_video_state(uint16_t ES, uint16_t BX) +{ + uint16_t enable, i; + + enable = read_word(ES, BX); + BX += 2; + + if (!(enable & VBE_DISPI_ENABLED)) { + outw(VBE_DISPI_IOPORT_INDEX,VBE_DISPI_INDEX_ENABLE); + outw(VBE_DISPI_IOPORT_DATA, enable); + } else { + outw(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_XRES); + outw(VBE_DISPI_IOPORT_DATA, read_word(ES, BX)); + BX += 2; + outw(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_YRES); + outw(VBE_DISPI_IOPORT_DATA, read_word(ES, BX)); + BX += 2; + outw(VBE_DISPI_IOPORT_INDEX, VBE_DISPI_INDEX_BPP); + outw(VBE_DISPI_IOPORT_DATA, read_word(ES, BX)); + BX += 2; + outw(VBE_DISPI_IOPORT_INDEX,VBE_DISPI_INDEX_ENABLE); + outw(VBE_DISPI_IOPORT_DATA, enable); + + for(i = VBE_DISPI_INDEX_BANK; i <= VBE_DISPI_INDEX_Y_OFFSET; i++) { + outw(VBE_DISPI_IOPORT_INDEX, i); + outw(VBE_DISPI_IOPORT_DATA, read_word(ES, BX)); + BX += 2; + } + } +} + +/** Function 04h - Save/Restore State + * + * Input: + * AX = 4F04h + * DL = 00h Return Save/Restore State buffer size + * 01h Save State + * 02h Restore State + * CX = Requested states + * ES:BX = Pointer to buffer (if DL <> 00h) + * Output: + * AX = VBE Return Status + * BX = Number of 64-byte blocks to hold the state buffer (if DL=00h) + * + */ +void vbe_biosfn_save_restore_state(uint16_t STACK_BASED *AX, uint16_t CX, uint16_t DX, + uint16_t ES, uint16_t STACK_BASED *BX) +{ + uint16_t result, val; + + result = 0x004F; + switch(GET_DL()) { + case 0x00: + val = biosfn_read_video_state_size2(CX); +#ifdef VGA_DEBUG + printf("VGA state size=%x\n", val); +#endif + if (CX & 8) + val += vbe_biosfn_read_video_state_size(); + *BX = (val + 63) / 64; + break; + case 0x01: + val = *BX; + val = biosfn_save_video_state(CX, ES, val); +#ifdef VGA_DEBUG + printf("VGA save_state offset=%x\n", val); +#endif + if (CX & 8) + vbe_biosfn_save_video_state(ES, val); + break; + case 0x02: + val = *BX; + val = biosfn_restore_video_state(CX, ES, val); +#ifdef VGA_DEBUG + printf("VGA restore_state offset=%x\n", val); +#endif + if (CX & 8) + vbe_biosfn_restore_video_state(ES, val); + break; + default: + // function failed + result = 0x100; + break; + } + *AX = result; +} + +/** Function 06h - Set/Get Logical Scan Line Length + * + * Input: + * AX = 4F06h + * BL = 00h Set Scan Line Length in Pixels + * = 01h Get Scan Line Length + * = 02h Set Scan Line Length in Bytes + * = 03h Get Maximum Scan Line Length + * CX = If BL=00h Desired Width in Pixels + * If BL=02h Desired Width in Bytes + * (Ignored for Get Functions) + * + * Output: + * AX = VBE Return Status + * BX = Bytes Per Scan Line + * CX = Actual Pixels Per Scan Line (truncated to + * nearest complete pixel) + * DX = Maximum Number of Scan Lines + */ +void vbe_biosfn_get_set_scanline_length(uint16_t STACK_BASED *AX, uint16_t STACK_BASED *BX, + uint16_t STACK_BASED *CX, uint16_t STACK_BASED *DX) +{ + uint16_t val; + uint16_t result; + uint8_t bpp; + uint8_t subfn; + uint16_t old_vw; + + bpp = dispi_get_bpp(); + bpp = bpp == 15 ? 16 : bpp; + old_vw = dispi_get_virt_width(); + result = 0x004F; + val = *CX; + subfn = *BX & 0xFF; +#ifdef VGA_DEBUG + printf("VBE get/set scanline len fn=%x, CX=%x\n", subfn, *CX); +#endif + switch(subfn) { + case 0x02: + if (bpp == 4) + val = val * 8; + else + val = val / (bpp / 8); + /* fall through */ + case 0x00: + dispi_set_virt_width(val); + /* fall through */ + case 0x01: + val = dispi_get_virt_width(); + *CX = val; /* Width in pixels. */ + if (bpp == 4) + val = val / 8; + else + val = val * (bpp / 8); + val = (val + 3) & ~3; + *BX = val; /* Bytes per scanline. */ + *DX = dispi_get_virt_height(); /* Height in lines. */ + if (*DX < dispi_get_yres()) { + dispi_set_virt_width(old_vw); + result = 0x200; + } + break; + default: + // function failed + result = 0x100; + break; + } + *AX = result; +} + + +/* We would very much like to avoid dragging in the long multiply library + * routine, and we really just need to multiply two 16-bit numbers to + * obtain a 32-bit result, so... + */ +uint32_t mul32_16x16(uint16_t a, uint16_t b); +#pragma aux mul32_16x16 = \ + "mul dx" \ + parm [ax] [dx] modify nomemory; + + +/** Private INT 10h function 5642h - Manage custom video modes using X/Y + * resolution and bit depth rather than mode number + * + * Input: + * AX = 5642h ('VB') + * BL = 00h Set video mode + * BH = If BL=00h Desired bit depth in pixels + * CX = If BL=00h Desired width in pixels + * DX = If BL=00h Desired height in pixels + * + * Output: + * AX = VBE style return status + */ +void private_biosfn_custom_mode(uint16_t STACK_BASED *AX, uint16_t STACK_BASED *BX, + uint16_t STACK_BASED *CX, uint16_t STACK_BASED *DX) +{ + uint16_t result; + uint8_t subfn; + uint8_t bpp; + uint8_t lfb_flag; + uint16_t xres; + uint16_t yres; + uint16_t line_size; + uint32_t vram_size; + uint32_t mode_size; + + result = 0x004F; + subfn = *BX & 0xFF; + switch (subfn) { + case 0x00: + xres = *CX; + yres = *DX; + bpp = (*BX >> 8) & 0x7F; +#ifdef VGA_DEBUG + printf("Set custom mode %04x by %04x %xbpp\n", xres, yres, bpp); +#endif + /* Only allow 32/16/8bpp. */ + if (bpp != 8 && bpp != 16 && bpp != 32) { + result = 0x100; + break; + } + + /* Determine the LFB flag. */ + lfb_flag = *BX & 0x8000 ? VBE_DISPI_LFB_ENABLED : 0; + + /* Cap the resolution to something not insanely high or low. */ + if (xres < 640) + xres = 640; + else if (xres > 2560) + xres = 2560; + if (yres < 480) + yres = 480; + else if (yres > 1920) + yres = 1920; +#ifdef VGA_DEBUG + printf("Adjusted resolution %04x by %04x\n", xres, yres); +#endif + + /* Calculate the VRAM size in bytes. */ + vram_size = (uint32_t)in_word(VBE_EXTRA_PORT, 0xffff) << 16; + + /* Calculate the scanline size in bytes. */ + line_size = xres * (bpp / 8); + line_size = (line_size + 3) & ~3; + /* And now the memory required for the mode. */ + mode_size = mul32_16x16(line_size, yres); + + if (mode_size > vram_size) { + /* No can do. Don't have that much VRAM. */ + result = 0x200; + break; + } + + /* Mode looks valid, let's get cracking. */ + dispi_set_enable(VBE_DISPI_DISABLED); + dispi_set_bpp(bpp); + dispi_set_xres(xres); + dispi_set_yres(yres); + dispi_set_bank(0); + dispi_set_enable(VBE_DISPI_ENABLED | lfb_flag); + vga_compat_setup(); + break; + + default: + // unsupported sub-function + result = 0x100; + break; + } + *AX = result; +} diff --git a/src/VBox/Devices/Graphics/BIOS/vbe.h b/src/VBox/Devices/Graphics/BIOS/vbe.h new file mode 100644 index 00000000..eb2ea867 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vbe.h @@ -0,0 +1,117 @@ + +#ifndef VBOX_INCLUDED_SRC_Graphics_BIOS_vbe_h +#define VBOX_INCLUDED_SRC_Graphics_BIOS_vbe_h +#ifndef RT_WITHOUT_PRAGMA_ONCE +# pragma once +#endif + +#include "vgabios.h" + +#include +#include + +// DISPI helper function +//void dispi_set_enable(Boolean enable); + +/** VBE int10 API + * + * See the function descriptions in vbe.c for more information + */ + +/* Far pointer for VBE info block usage. */ +typedef union vbe_ptr { + uint32_t Ptr32; + void __far *Ptr; + union { + uint16_t Off; + uint16_t Seg; + }; +} vbe_ptr; + +// The official VBE Information Block +typedef struct VbeInfoBlock +{ + union { + uint8_t SigChr[4]; + uint32_t Sig32; + } VbeSignature; + uint16_t VbeVersion; + vbe_ptr OemString; + uint8_t Capabilities[4]; + uint16_t VideoModePtr_Off; + uint16_t VideoModePtr_Seg; + uint16_t TotalMemory; + uint16_t OemSoftwareRev; + vbe_ptr OemVendorName; + vbe_ptr OemProductName; + vbe_ptr OemProductRev; + uint16_t Reserved[111]; // used for dynamically generated mode list + uint8_t OemData[256]; +} VbeInfoBlock; + + +typedef struct ModeInfoBlock +{ +// Mandatory information for all VBE revisions + uint16_t ModeAttributes; + uint8_t WinAAttributes; + uint8_t WinBAttributes; + uint16_t WinGranularity; + uint16_t WinSize; + uint16_t WinASegment; + uint16_t WinBSegment; + uint32_t WinFuncPtr; + uint16_t BytesPerScanLine; +// Mandatory information for VBE 1.2 and above + uint16_t XResolution; + uint16_t YResolution; + uint8_t XCharSize; + uint8_t YCharSize; + uint8_t NumberOfPlanes; + uint8_t BitsPerPixel; + uint8_t NumberOfBanks; + uint8_t MemoryModel; + uint8_t BankSize; + uint8_t NumberOfImagePages; + uint8_t Reserved_page; +// Direct Color fields (required for direct/6 and YUV/7 memory models) + uint8_t RedMaskSize; + uint8_t RedFieldPosition; + uint8_t GreenMaskSize; + uint8_t GreenFieldPosition; + uint8_t BlueMaskSize; + uint8_t BlueFieldPosition; + uint8_t RsvdMaskSize; + uint8_t RsvdFieldPosition; + uint8_t DirectColorModeInfo; +// Mandatory information for VBE 2.0 and above + uint32_t PhysBasePtr; + uint32_t OffScreenMemOffset; + uint16_t OffScreenMemSize; +// Mandatory information for VBE 3.0 and above + uint16_t LinBytesPerScanLine; + uint8_t BnkNumberOfPages; + uint8_t LinNumberOfPages; + uint8_t LinRedMaskSize; + uint8_t LinRedFieldPosition; + uint8_t LinGreenMaskSize; + uint8_t LinGreenFieldPosition; + uint8_t LinBlueMaskSize; + uint8_t LinBlueFieldPosition; + uint8_t LinRsvdMaskSize; + uint8_t LinRsvdFieldPosition; + uint32_t MaxPixelClock; + uint8_t Reserved[189]; +} ModeInfoBlock; + +// VBE Return Status Info +// AL +#define VBE_RETURN_STATUS_SUPPORTED 0x4F +#define VBE_RETURN_STATUS_UNSUPPORTED 0x00 +// AH +#define VBE_RETURN_STATUS_SUCCESSFULL 0x00 +#define VBE_RETURN_STATUS_FAILED 0x01 +#define VBE_RETURN_STATUS_NOT_SUPPORTED 0x02 +#define VBE_RETURN_STATUS_INVALID 0x03 + +#endif /* !VBOX_INCLUDED_SRC_Graphics_BIOS_vbe_h */ diff --git a/src/VBox/Devices/Graphics/BIOS/vbe_display_api.txt b/src/VBox/Devices/Graphics/BIOS/vbe_display_api.txt new file mode 100644 index 00000000..ddec277e --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vbe_display_api.txt @@ -0,0 +1,237 @@ +VBE Display API +------------------------------------------------------------------------------------------------------------- + This document is part of the Bochs/VBEBios documentation, + it specifies the bochs host <-> vbebios client communication. + + That means, the display code implementation and the vbebios code depend + very heavily on each other. As such, this documents needs be synchronised + between bochs CVS and the vgabios CVS. + + This document does not describe how the VBEBios implements the VBE2/3 spec. + This document does not describe how the Bochs display code will display gfx based upon this spec. + + +API History +----------- +0xb0c0 supports the following VBE_DISPI_ interfaces (present in Bochs 1.4): + VBE_DISPI_INDEX_ID + VBE_DISPI_INDEX_XRES + VBE_DISPI_INDEX_YRES + VBE_DISPI_INDEX_BPP + VBE_DISPI_INDEX_ENABLE + VBE_DISPI_INDEX_BANK + + Bpp format supported is: + VBE_DISPI_BPP_8 + +0xb0c1 supports 0xb0c0 VBE_DISPI_ interfaces, additional interfaces (present in Bochs 2.0): + VBE_DISPI_INDEX_VIRT_WIDTH + VBE_DISPI_INDEX_VIRT_HEIGHT + VBE_DISPI_INDEX_X_OFFSET + VBE_DISPI_INDEX_Y_OFFSET + +0xb0c2 supports 0xb0c1 VBE_DISPI_ interfaces, interfaces updated for + additional features (present in Bochs 2.1): + VBE_DISPI_INDEX_BPP supports >8bpp color depth (value = bits) + VBE_DISPI_INDEX_ENABLE supports new flags VBE_DISPI_NOCLEARMEM and VBE_DISPI_LFB_ENABLED + VBE i/o registers changed from 0xFF80/81 to 0x01CE/CF + +0xb0c3 supports 0xb0c2 VBE_DISPI_ interfaces, interfaces updated for + additional features: + VBE_DISPI_INDEX_ENABLE supports new flags VBE_DISPI_GETCAPS and VBE_DISPI_8BIT_DAC + +0xb0c4 VBE video memory increased to 8 MB + + +History +------- + Version 0.6 2002 Nov 23 Jeroen Janssen + - Added LFB support + - Added Virt width, height and x,y offset + + Version 0.5 2002 March 08 Jeroen Janssen + - Added documentation about panic behaviour / current limits of the data values. + - Changed BPP API (in order to include future (A)RGB formats) + - Initial version (based upon extended display text of the vbe bochs display patch) + + +Todo +---- + Version 0.6+ [random order] + - Add lots of different (A)RGB formats + +References +---------- + [VBE3] VBE 3 Specification at + http://www.vesa.org/vbe3.pdf + + [BOCHS] Bochs Open Source IA-32 Emulator at + http://bochs.sourceforge.net + + [VBEBIOS] VBE Bios for Bochs at + http://savannah.gnu.org/projects/vgabios/ + + [Screenshots] Screenshots of programs using the VBE Bios at + http://japj.org/projects/bochs_plex86/screenshots.html + +Abbreviations +------------- + VBE Vesa Bios Extension + DISPI (Bochs) Display Interface + BPP Bits Per Pixel + LFB Linear Frame Buffer + + +#defines +-------- +vbetables-gen.c + #define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB 8 + +vbe.h + #define VBE_DISPI_BANK_ADDRESS 0xA0000 + #define VBE_DISPI_BANK_SIZE_KB 64 + + #define VBE_DISPI_MAX_XRES 1024 + #define VBE_DISPI_MAX_YRES 768 + + #define VBE_DISPI_IOPORT_INDEX 0x01CE + #define VBE_DISPI_IOPORT_DATA 0x01CF + + #define VBE_DISPI_INDEX_ID 0x0 + #define VBE_DISPI_INDEX_XRES 0x1 + #define VBE_DISPI_INDEX_YRES 0x2 + #define VBE_DISPI_INDEX_BPP 0x3 + #define VBE_DISPI_INDEX_ENABLE 0x4 + #define VBE_DISPI_INDEX_BANK 0x5 + #define VBE_DISPI_INDEX_VIRT_WIDTH 0x6 + #define VBE_DISPI_INDEX_VIRT_HEIGHT 0x7 + #define VBE_DISPI_INDEX_X_OFFSET 0x8 + #define VBE_DISPI_INDEX_Y_OFFSET 0x9 + + #define VBE_DISPI_ID0 0xB0C0 + #define VBE_DISPI_ID1 0xB0C1 + #define VBE_DISPI_ID2 0xB0C2 + #define VBE_DISPI_ID3 0xB0C3 + #define VBE_DISPI_ID4 0xB0C4 + + #define VBE_DISPI_DISABLED 0x00 + #define VBE_DISPI_ENABLED 0x01 + #define VBE_DISPI_VBE_ENABLED 0x40 + #define VBE_DISPI_NOCLEARMEM 0x80 + + #define VBE_DISPI_LFB_PHYSICAL_ADDRESS 0xE0000000 + +API +--- + The display api works by using a index (VBE_DISPI_IOPORT_INDEX) and + data (VBE_DISPI_IOPORT_DATA) ioport. One writes the index of the parameter to the index port. + Next, the parameter value can be read or written. + +[0xb0c0] + * VBE_DISPI_INDEX_ID : WORD {R,W} + This parameter can be used to detect the current display API (both bochs & vbebios). + The bios writes VBE_DISPI_ID0 to the dataport and reads it back again. + This way, the display code knows the vbebios 'ID' and the vbebios can check if the correct + display code is present. + As a result, a PANIC can be generated if an incompatible vbebios/display code combination is detected. + This panic can be generated from the bochs display code (NOT the bios, see Notes). + + Example values: VBE_DISPI_ID0 + + * VBE_DISPI_INDEX_XRES : WORD {R,W} + This parameter can be used to read/write the vbe display X resolution (in pixels). + It's illegal to set the XRES when the VBE is enabled (display code should generate PANIC). + + If the value written exceeds VBE_DISPI_MAX_XRES, the display code needs to generate a PANIC. + + Example values: 320,640,800,1024 + + * VBE_DISPI_INDEX_YRES : WORD {R,W} + This parameter can be used to read/write the vbe display Y resolution (in pixels). + It's illegal to set the YRES when the VBE is enabled (display code should generate PANIC). + + If the value written exceeds VBE_DISPI_MAX_YRES, the display code needs to generate a PANIC. + + Example values: 200,400,480,600,768 + + * VBE_DISPI_INDEX_BPP : WORD {R,W} + This parameter can be used to read/write the vbe display BPP. + It's illegal to set the BPP when the VBE is enabled (display code should generate PANIC). + + If the value written is an incompatible BPP, the display code needs to generate a PANIC. + + Example values: VBE_DISPI_BPP_8 + + * VBE_DISPI_INDEX_ENABLE : WORD {R,W} + This parameter can be used to read/write the vbe ENABLED state. + If the bios writes VBE_DISPI_ENABLED then the display code will setup a hostside display mode + with the current XRES, YRES and BPP settings. + If the bios write VBE_DISPI_DISABLED then the display code will switch back to normal vga mode behaviour. + + Example values: VBE_DISPI_ENABLED, VBE_DISPI_DISABLED + + * VBE_DISPI_INDEX_BANK : WORD {R,W} + This parameter can be used to read/write the current selected BANK (at 0xA0000). + This can be used for switching banks in banked mode. + +[0xb0c1] + * VBE_DISPI_INDEX_VIRT_WIDTH : WORD {R,W} + This parameter can be used to read/write the current virtual width. + Upon enabling a mode, this will be set to the current xres + Setting this field during enabled mode will result in the virtual width to be changed. + Value will be adjusted if current setting is not possible. + + * VBE_DISPI_INDEX_VIRT_HEIGHT : WORD {R} + This parameter can be read in order to obtain the current virtual height. + This setting will be adjusted after setting a virtual width in order to stay within limit of video memory. + + * VBE_DISPI_INDEX_X_OFFSET : WORD {R,W} + The current X offset (in pixels!) of the visible screen part. + Writing a new offset will also result in a complete screen refresh. + + * VBE_DISPI_INDEX_Y_OFFSET : WORD {R,W} + The current Y offset (in pixels!) of the visible screen part. + Writing a new offset will also result in a complete screen refresh. + + +[0xb0c2] + * VBE_DISPI_INDEX_BPP : WORD {R,W} + The value written is now the number of bits per pixel. A value of 0 is treated + the same as 8 for backward compatibilty. These values are supported: 8, 15, + 16, 24 and 32. The value of 4 is not yet handled in the VBE code. + * VBE_DISPI_INDEX_ENABLE : WORD {R,W} + The new flag VBE_DISPI_NOCLEARMEM allows to preserve the VBE video memory. + The new flag VBE_DISPI_LFB_ENABLED indicates the usage of the LFB. + +[0xb0c3] + * VBE_DISPI_INDEX_ENABLE : WORD {R,W} + If the new flag VBE_DISPI_GETCAPS is enabled, the xres, yres and bpp registers + return the gui capabilities. + The new flag VBE_DISPI_8BIT_DAC switches the DAC to 8 bit mode. + +[0xb0c4] + * VBE_DISPI_TOTAL_VIDEO_MEMORY_MB set to 8 (moved to auto-generated vbetables.h) + +Displaying GFX (banked mode) +-------------- + What happens is that the total screen is devided in banks of 'VBE_DISPI_BANK_SIZE_KB' KiloByte in size. + If you want to set a pixel you can calculate its bank by doing: + + offset = pixel_x + pixel_y * resolution_x; + bank = offset / 64 Kb (rounded 1.9999 -> 1) + + bank_pixel_pos = offset - bank * 64Kb + + Now you can set the current bank and put the pixel at VBE_DISPI_BANK_ADDRESS + bank_pixel_pos + +Displaying GFX (linear frame buffer mode) +-------------- + NOT WRITTEN YET + +Notes +----- + * Since the XRES/YRES/BPP may not be written when VBE is enabled, if you want to switch from one VBE mode + to another, you will need to disable VBE first. + + * Note when the bios doesn't find a valid DISPI_ID, it can disable the VBE functions. This allows people to + use the same bios for both vbe enabled and disabled bochs executables. diff --git a/src/VBox/Devices/Graphics/BIOS/vberom.asm b/src/VBox/Devices/Graphics/BIOS/vberom.asm new file mode 100644 index 00000000..374fe34c --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vberom.asm @@ -0,0 +1,951 @@ +;; ============================================================================================ +;; +;; Copyright (C) 2002 Jeroen Janssen +;; +;; This library is free software; you can redistribute it and/or +;; modify it under the terms of the GNU Lesser General Public +;; License as published by the Free Software Foundation; either +;; version 2 of the License, or (at your option) any later version. +;; +;; This library 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 +;; Lesser General Public License for more details. +;; +;; You should have received a copy of the GNU Lesser General Public +;; License along with this library; if not, write to the Free Software +;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +;; +;; ============================================================================================ +;; +;; This VBE is part of the VGA Bios specific to the plex86/bochs Emulated VGA card. +;; You can NOT drive any physical vga card with it. +;; +;; ============================================================================================ +;; +;; This VBE Bios is based on information taken from : +;; - VESA BIOS EXTENSION (VBE) Core Functions Standard Version 3.0 located at www.vesa.org +;; +;; ============================================================================================ + + +; Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice +; other than GPL or LGPL is available it will apply instead, Oracle elects to use only +; the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where +; a choice of LGPL license versions is made available with the language indicating +; that LGPLv2 or any later version may be used, or where a choice of which version +; of the LGPL is applied is otherwise unspecified. + +include vgadefs.inc +include commondefs.inc + +public _vga_compat_setup +public dispi_set_enable_ +public dispi_set_bank_ +public _dispi_set_bank_farcall +public _dispi_get_max_bpp +public _vbe_has_vbe_display + +public vbe_biosfn_return_current_mode +public vbe_biosfn_display_window_control +public vbe_biosfn_set_get_display_start +public vbe_biosfn_set_get_dac_palette_format +public vbe_biosfn_set_get_palette_data +public vbe_biosfn_return_protected_mode_interface + +VGAROM segment public 'CODE' + +SET_DEFAULT_CPU + +VBE_BYTEWISE_IO EQU 1 + +;; Bytewise in/out +ifdef VBE_BYTEWISE_IO + +public do_out_dx_ax +public do_in_ax_dx + +do_out_dx_ax: + xchg ah, al + out dx, al + xchg ah, al + out dx, al + ret + +do_in_ax_dx: + in al, dx + xchg ah, al + in al, dx + ret + + out_dx_ax EQU call do_out_dx_ax + in_ax_dx EQU call do_in_ax_dx +else + out_dx_ax EQU out dx, ax + in_ax_dx EQU in ax, dx +endif + +;; Vertical retrace waiting +wait_vsync: + push ax + push dx + mov dx, 03DAh ; @todo use a symbolic constant! +wv_loop: + in al, dx + test al, 8 + jz wv_loop + pop dx + pop ax + ret + +wait_not_vsync: + push ax + push dx + mov dx, 03DAh ; @todo use a symbolic constant! +wnv_loop: + in al, dx + test al, 8 + jnz wnv_loop + pop dx + pop ax + ret + + +; AL = bits per pixel / AH = bytes per pixel +dispi_get_bpp: + push dx + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_BPP + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + cmp al, 4 + jbe get_bpp_noinc + mov ah, al +if VBOX_BIOS_CPU gt 8086 + shr ah, 3 +else + shr ah, 1 + shr ah, 1 + shr ah, 1 +endif + test al, 07 + jz get_bpp_noinc + inc ah +get_bpp_noinc: + pop dx + ret + +; get display capabilities + +_dispi_get_max_bpp: + push dx + push bx + call dispi_get_enable + mov bx, ax + or ax, VBE_DISPI_GETCAPS + call dispi_set_enable_ + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_BPP + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + push ax + mov ax, bx + call dispi_set_enable_ + pop ax + pop bx + pop dx + ret + +dispi_set_enable_: + push dx + push ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_ENABLE + out_dx_ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out_dx_ax + pop dx + ret + +dispi_get_enable: + push dx + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_ENABLE + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + pop dx + ret + +dispi_set_bank_: + push dx + push ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_BANK + out_dx_ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out_dx_ax + pop dx + ret + +dispi_get_bank: + push dx + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_BANK + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + pop dx + ret + +_dispi_set_bank_farcall: + cmp bx, 0100h + je dispi_set_bank_farcall_get + or bx,bx + jnz dispi_set_bank_farcall_error + mov ax, dx + push dx + push ax + mov ax, VBE_DISPI_INDEX_BANK + mov dx, VBE_DISPI_IOPORT_INDEX + out_dx_ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out_dx_ax + in_ax_dx + pop dx + cmp dx,ax + jne dispi_set_bank_farcall_error + mov ax, 004Fh + retf +dispi_set_bank_farcall_get: + mov ax, VBE_DISPI_INDEX_BANK + mov dx, VBE_DISPI_IOPORT_INDEX + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + mov dx,ax + retf +dispi_set_bank_farcall_error: + mov ax, 014Fh + retf + +dispi_set_x_offset: + push dx + push ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_X_OFFSET + out_dx_ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out_dx_ax + pop dx + ret + +dispi_get_x_offset: + push dx + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_X_OFFSET + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + pop dx + ret + +dispi_set_y_offset: + push dx + push ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_Y_OFFSET + out_dx_ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out_dx_ax + pop dx + ret + +dispi_get_y_offset: + push dx + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_Y_OFFSET + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + pop dx + ret + +vga_set_virt_width: + push ax + push bx + push dx + mov bx, ax + call dispi_get_bpp + cmp al, 4 + ja set_width_svga + shr bx, 1 +set_width_svga: +if VBOX_BIOS_CPU gt 8086 + shr bx, 3 +else + shr bx, 1 + shr bx, 1 + shr bx, 1 +endif + mov dx, VGAREG_VGA_CRTC_ADDRESS + mov ah, bl + mov al, 13h + out dx, ax + pop dx + pop bx + pop ax + ret + +_vga_compat_setup: + push ax + push dx + + ; set CRT X resolution + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_XRES + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + push ax + mov dx, VGAREG_VGA_CRTC_ADDRESS + mov ax, 0011h + out dx, ax + pop ax + push ax +if VBOX_BIOS_CPU gt 8086 + shr ax, 3 +else + shr ax, 1 + shr ax, 1 + shr ax, 1 +endif + dec ax + mov ah, al + mov al, 01 + out dx, ax + pop ax + call vga_set_virt_width + + ; set CRT Y resolution + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_YRES + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + dec ax + push ax + mov dx, VGAREG_VGA_CRTC_ADDRESS + mov ah, al + mov al, 12h + out dx, ax + pop ax + mov al, 07 + out dx, al + inc dx + in al, dx + and al, 0BDh + test ah, 01 + jz bit8_clear + or al, 02 +bit8_clear: + test ah, 02 + jz bit9_clear + or al, 40h +bit9_clear: + out dx, al + + ; other settings + mov dx, VGAREG_VGA_CRTC_ADDRESS + mov ax, 0009 + out dx, al + mov dx, VGAREG_VGA_CRTC_DATA + in al, dx + and al, 60h ; clear double scan bit and cell height + out dx, al + mov dx, VGAREG_VGA_CRTC_ADDRESS + mov al, 17h + out dx, al + mov dx, VGAREG_VGA_CRTC_DATA + in al, dx + or al, 03 + out dx, al + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 10h + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + or al, 01 + mov dx, VGAREG_ACTL_ADDRESS + out dx, al + mov al, 20h + out dx, al + mov dx, VGAREG_GRDC_ADDRESS + mov ax, 0506h + out dx, ax + mov dx, VGAREG_SEQU_ADDRESS + mov ax, 0F02h + out dx, ax + + ; settings for >= 8bpp + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_BPP + out_dx_ax + mov dx, VBE_DISPI_IOPORT_DATA + in_ax_dx + cmp al, 08 + jb vga_compat_end + mov dx, VGAREG_VGA_CRTC_ADDRESS + mov al, 14h + out dx, al + mov dx, VGAREG_VGA_CRTC_DATA + in al, dx + or al, 40h + out dx, al + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 10h + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + or al, 40h + mov dx, VGAREG_ACTL_ADDRESS + out dx, al + mov al, 20h + out dx, al + mov dx, VGAREG_SEQU_ADDRESS + mov al, 04 + out dx, al + mov dx, VGAREG_SEQU_DATA + in al, dx + or al, 08 + out dx, al + mov dx, VGAREG_GRDC_ADDRESS + mov al, 05 + out dx, al + mov dx, VGAREG_GRDC_DATA + in al, dx + and al, 9Fh + or al, 40h + out dx, al + +vga_compat_end: + pop dx + pop ax + + +; Has VBE display - Returns true if VBE display detected + +_vbe_has_vbe_display: + push ds + push bx + mov ax, BIOSMEM_SEG + mov ds, ax + mov bx, BIOSMEM_VBE_FLAG + mov al, [bx] + and al, 01 + xor ah, ah + pop bx + pop ds + ret + + +; Function 03h - Return Current VBE Mode +; +; Input: +; AX = 4F03h +; Output: +; AX = VBE Return Status +; BX = Current VBE Mode +; +; +vbe_biosfn_return_current_mode: + push ds + mov ax, BIOSMEM_SEG + mov ds, ax + call dispi_get_enable + and ax, VBE_DISPI_ENABLED + jz no_vbe_mode + mov bx, BIOSMEM_VBE_MODE + mov ax, [bx] + mov bx, ax + jnz vbe_03_ok +no_vbe_mode: + mov bx, BIOSMEM_CURRENT_MODE + mov al, [bx] + mov bl, al + xor bh, bh +vbe_03_ok: + mov ax, 004Fh + pop ds + ret + + +; Function 05h - Display Window Control +; +; Input: +; AX = 4F05h +; (16-bit) BH = 00h Set memory window +; = 01h Get memory window +; BL = Window number +; = 00h Window A +; = 01h Window B +; DX = Window number in video memory in window +; granularity units (Set Memory Window only) +; Note: +; If this function is called while in a linear frame buffer mode, +; this function must fail with completion code AH=03h +; +; Output: +; AX = VBE Return Status +; DX = Window number in window granularity units +; (Get Memory Window only) + +vbe_biosfn_display_window_control: + cmp bl, 0 + jne vbe_05_failed + cmp bh, 1 + je get_display_window + jb set_display_window + mov ax, 0100h + ret +set_display_window: + mov ax, dx + call dispi_set_bank_ + call dispi_get_bank + cmp ax, dx + jne vbe_05_failed + mov ax, 004Fh + ret +get_display_window: + call dispi_get_bank + mov dx, ax + mov ax, 004Fh + ret +vbe_05_failed: + mov ax, 014Fh + ret + + +; Function 07h - Set/Get Display Start +; +; Input(16-bit): +; AX = 4F07h +; BH = 00h Reserved and must be 00h +; BL = 00h Set Display Start +; = 01h Get Display Start +; = 02h Schedule Display Start (Alternate) +; = 03h Schedule Stereoscopic Display Start +; = 04h Get Scheduled Display Start Status +; = 05h Enable Stereoscopic Mode +; = 06h Disable Stereoscopic Mode +; = 80h Set Display Start during Vertical Retrace +; = 82h Set Display Start during Vertical Retrace (Alternate) +; = 83h Set Stereoscopic Display Start during Vertical Retrace +; ECX = If BL=02h/82h Display Start Address in bytes +; If BL=03h/83h Left Image Start Address in bytes +; EDX = If BL=03h/83h Right Image Start Address in bytes +; CX = If BL=00h/80h First Displayed Pixel In Scan Line +; DX = If BL=00h/80h First Displayed Scan Line +; +; Output: +; AX = VBE Return Status +; BH = If BL=01h Reserved and will be 0 +; CX = If BL=01h First Displayed Pixel In Scan Line +; If BL=04h 0 if flip has not occurred, not 0 if it has +; DX = If BL=01h First Displayed Scan Line +; +; Input(32-bit): +; BH = 00h Reserved and must be 00h +; BL = 00h Set Display Start +; = 80h Set Display Start during Vertical Retrace +; CX = Bits 0-15 of display start address +; DX = Bits 16-31 of display start address +; ES = Selector for memory mapped registers +; +vbe_biosfn_set_get_display_start: + cmp bl, 80h + je set_display_start_wait + cmp bl, 1 + je get_display_start + jb set_display_start + mov ax, 0100h + ret +set_display_start_wait: + call wait_not_vsync + call wait_vsync +set_display_start: + mov ax, cx + call dispi_set_x_offset + mov ax, dx + call dispi_set_y_offset + mov ax, 004Fh + ret +get_display_start: + call dispi_get_x_offset + mov cx, ax + call dispi_get_y_offset + mov dx, ax + xor bh, bh + mov ax, 004Fh + ret + + +; Function 08h - Set/Get Dac Palette Format +; +; Input: +; AX = 4F08h +; BL = 00h set DAC palette width +; = 01h get DAC palette width +; BH = If BL=00h: desired number of bits per primary color +; Output: +; AX = VBE Return Status +; BH = current number of bits per primary color (06h = standard VGA) +; +vbe_biosfn_set_get_dac_palette_format: + cmp bl, 1 + je get_dac_palette_format + jb set_dac_palette_format + mov ax, 0100h + ret +set_dac_palette_format: + call dispi_get_enable + cmp bh, 6 + je set_normal_dac + cmp bh, 8 + jne vbe_08_unsupported + or ax, VBE_DISPI_8BIT_DAC + jnz set_dac_mode +set_normal_dac: + and ax, NOT VBE_DISPI_8BIT_DAC +set_dac_mode: + call dispi_set_enable_ +get_dac_palette_format: + mov bh, 6 + call dispi_get_enable + and ax, VBE_DISPI_8BIT_DAC + jz vbe_08_ok + mov bh, 8 +vbe_08_ok: + mov ax, 004Fh + ret +vbe_08_unsupported: + mov ax, 014Fh + ret + + +; Function 09h - Set/Get Palette Data +; +; Input: +; AX = 4F09h +; (16-bit) BL = 00h Set palette data +; = 01h Get palette data +; = 02h Set secondary palette data +; = 03h Get secondary palette data +; = 80h Set palette data during VRetrace +; CX = Number of entries to update (<= 256) +; DX = First entry to update +; ES:DI = Table of palette values +; Output: +; AX = VBE Return Status +; +; Notes: +; Secondary palette support is a "future extension". +; Attempts to set/get it should return status 02h. +; +; In VBE 3.0, reading palette data is optional and +; subfunctions 01h and 03h may return failure. +; +; The format of palette entries is as follows: +; +; PaletteEntry struc +; Blue db ? ; Blue channel value (6 or 8 bits) +; Green db ? ; Green channel value (6 or 8 bits) +; Red db ? ; Red channel value (6 or 8 bits) +; Padding db ? ; DWORD alignment byte (unused) +; PaletteEntry ends +; +; Most applications use VGA DAC registers directly to +; set/get palette in VBE modes. However, subfn 4F09h is +; required for NonVGA controllers (eg. XGA). +; +vbe_biosfn_set_get_palette_data: + test bl, bl + jz set_palette_data + cmp bl, 01 + je get_palette_data + cmp bl, 03 + jbe vbe_09_nohw + cmp bl, 80h + jne vbe_09_unsupported +if 0 + ; this is where we could wait for vertical retrace +endif +set_palette_data: + DO_pushad + push ds + push es + pop ds + mov al, dl + mov dx, VGAREG_DAC_WRITE_ADDRESS + out dx, al + inc dx + mov si, di +set_pal_loop: +if VBOX_BIOS_CPU ge 80386 + lodsd + ror eax, 16 + out dx, al + rol eax, 8 + out dx, al + rol eax, 8 + out dx, al +else + lodsw + mov bx, ax + lodsw + out dx, al + mov al, bh + out dx, al + mov al, bl + out dx, al +endif + loop set_pal_loop + pop ds + DO_popad +vbe_09_ok: + mov ax, 004Fh + ret + +get_palette_data: + DO_pushad + mov al, dl + mov dx, VGAREG_DAC_READ_ADDRESS + out dx, al + add dl, 2 +if VBOX_BIOS_CPU ge 80386 +get_pal_loop: + xor eax, eax + in al, dx + shl eax, 8 + in al, dx + shl eax, 8 + in al, dx + stosd +else + xor bx, bx +get_pal_loop: + in al, dx + mov bl, al + in al, dx + mov ah, al + in al, dx + stosw + mov ax, bx + stosw +endif + loop get_pal_loop + DO_popad + jmp vbe_09_ok + +vbe_09_unsupported: + mov ax, 014Fh + ret +vbe_09_nohw: + mov ax, 024Fh + ret + + +; Function 0Ah - Return VBE Protected Mode Interface +; +; Input: AX = 4F0Ah VBE 2.0 Protected Mode Interface +; BL = 00h Return protected mode table +; Output: AX = Status +; ES = Real Mode Segment of Table +; DI = Offset of Table +; CX = Length of Table including protected mode code +; (for copying purposes) +; +vbe_biosfn_return_protected_mode_interface: + test bl, bl + jnz _fail + push cs + pop es + mov di, offset vesa_pm_start + mov cx, vesa_pm_end - vesa_pm_start + mov ax, 004Fh + ret +_fail: + mov ax, 014fh + ret + +VGAROM ends + +;; +;; 32-bit VBE interface +;; + +.386 + +public vesa_pm_start +public vesa_pm_end + +VBE32 segment public use32 'CODE' + + align 2 + +vesa_pm_start: + dw vesa_pm_set_window - vesa_pm_start + dw vesa_pm_set_display_start - vesa_pm_start + dw vesa_pm_unimplemented - vesa_pm_start + dw vesa_pm_io_ports_table - vesa_pm_start +vesa_pm_io_ports_table: + dw VBE_DISPI_IOPORT_INDEX + dw VBE_DISPI_IOPORT_INDEX + 1 + dw VBE_DISPI_IOPORT_DATA + dw VBE_DISPI_IOPORT_DATA + 1 + dw 3B6h + dw 3B7h + dw 0FFFFh + dw 0FFFFh + +vesa_pm_set_window: + cmp bx, 0 + je vesa_pm_set_display_window1 + mov ax, 0100h + ret +vesa_pm_set_display_window1: + mov ax, dx + push dx + push ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_BANK + out dx, ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out dx, ax + in ax, dx + pop dx + cmp dx, ax + jne illegal_window + mov ax, 004Fh + ret +illegal_window: + mov ax, 014Fh + ret +vesa_pm_set_display_start: + cmp bl, 80h + je vesa_pm_set_display_start1_wait + cmp bl, 00 + je vesa_pm_set_display_start1 + mov ax, 0100h + ret +vesa_pm_set_display_start1_wait: + push edx + mov dx, 03DAh ; @todo: use symbolic constant +wnv_loop_32: + in al, dx + test al, 8 + jnz wnv_loop_32 +wv_loop_32: + in al, dx + test al, 8 + jz wv_loop_32 + pop edx +vesa_pm_set_display_start1: +; convert offset to (X, Y) coordinate +; (would be simpler to change Bochs VBE API...) + push eax + push ecx + push edx + push esi + push edi + shl edx, 16 + and ecx, 0FFFFh + or ecx, edx + shl ecx, 2 + mov eax, ecx + push eax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_VIRT_WIDTH + out dx, ax + mov dx, VBE_DISPI_IOPORT_DATA + in ax, dx + movzx ecx, ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_BPP + out dx, ax + mov dx, VBE_DISPI_IOPORT_DATA + in ax, dx + movzx esi, ax + pop eax + + cmp esi, 4 + jz bpp4_mode + add esi, 7 + shr esi, 3 + imul ecx, esi + xor edx, edx + div ecx + mov edi, eax + mov eax, edx + xor edx, edx + div esi + jmp set_xy_regs + +bpp4_mode: + shr ecx, 1 + xor edx, edx + div ecx + mov edi, eax + mov eax, edx + shl eax, 1 + +set_xy_regs: + push dx + push ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_X_OFFSET + out dx, ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out dx, ax + pop dx + + mov ax, di + push dx + push ax + mov dx, VBE_DISPI_IOPORT_INDEX + mov ax, VBE_DISPI_INDEX_Y_OFFSET + out dx, ax + pop ax + mov dx, VBE_DISPI_IOPORT_DATA + out dx, ax + pop dx + + pop edi + pop esi + pop edx + pop ecx + pop eax + mov ax, 004fh + ret + +vesa_pm_unimplemented: + mov ax, 014Fh + ret +vesa_pm_end: + +VBE32 ends + + end diff --git a/src/VBox/Devices/Graphics/BIOS/vbetables-gen.c b/src/VBox/Devices/Graphics/BIOS/vbetables-gen.c new file mode 100644 index 00000000..f572386a --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vbetables-gen.c @@ -0,0 +1,245 @@ +/* Generate the VGABIOS VBE Tables */ +#include +#include + +#define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB 8 + +typedef struct { + int width; + int height; + int depth; + int mode; +} ModeInfo; + +ModeInfo modes[] = { + /* standard VESA modes */ +{ 640, 400, 8 , 0x100}, +{ 640, 480, 8 , 0x101}, +{ 800, 600, 4 , 0x102}, +{ 800, 600, 8 , 0x103}, +{ 1024, 768, 4 , 0x104}, +{ 1024, 768, 8 , 0x105}, +{ 1280, 1024, 4 , 0x106}, +{ 1280, 1024, 8 , 0x107}, +{ 320, 200, 15 , 0x10D}, +{ 320, 200, 16 , 0x10E}, +{ 320, 200, 24 , 0x10F}, +{ 640, 480, 15 , 0x110}, +{ 640, 480, 16 , 0x111}, +{ 640, 480, 24 , 0x112}, +{ 800, 600, 15 , 0x113}, +{ 800, 600, 16 , 0x114}, +{ 800, 600, 24 , 0x115}, +{ 1024, 768, 15 , 0x116}, +{ 1024, 768, 16 , 0x117}, +{ 1024, 768, 24 , 0x118}, +{ 1280, 1024, 15 , 0x119}, +{ 1280, 1024, 16 , 0x11A}, +{ 1280, 1024, 24 , 0x11B}, +#if 0 /* Ubuntu fails with this */ +{ 1600, 1200, 8 , 0x11C}, +{ 1600, 1200, 15 , 0x11D}, +{ 1600, 1200, 16 , 0x11E}, +{ 1600, 1200, 24 , 0x11F}, +#endif + + /* BOCHS/PLE, 86 'own' mode numbers */ +{ 320, 200, 32 , 0x140}, +{ 640, 400, 32 , 0x141}, +{ 640, 480, 32 , 0x142}, +{ 800, 600, 32 , 0x143}, +{ 1024, 768, 32 , 0x144}, +{ 1280, 1024, 32 , 0x145}, +{ 320, 200, 8 , 0x146}, +{ 1600, 1200, 32 , 0x147}, +{ 1152, 864, 8 , 0x148}, +{ 1152, 864, 15 , 0x149}, +{ 1152, 864, 16 , 0x14a}, +{ 1152, 864, 24 , 0x14b}, +{ 1152, 864, 32 , 0x14c}, +{ 0, }, +}; + +int main(int argc, char **argv) +{ + const ModeInfo *pm; + int pages, pitch; + int r_size, r_pos, g_size, g_pos, b_size, b_pos, a_size, a_pos; + const char *str; + long vram_size = VBE_DISPI_TOTAL_VIDEO_MEMORY_MB * 1024 * 1024; + + (void)argc; (void)argv; + + printf("/* THIS FILE IS AUTOMATICALLY GENERATED - DO NOT EDIT */\n\n"); + printf("#define VBE_DISPI_TOTAL_VIDEO_MEMORY_MB %d\n\n", VBE_DISPI_TOTAL_VIDEO_MEMORY_MB); + printf("static ModeInfoListItem mode_info_list[]=\n"); + printf("{\n"); + for (pm = modes; pm->mode != 0; pm++) { + if (pm->depth == 4) + pitch = (pm->width + 7) / 8; + else + pitch = pm->width * ((pm->depth + 7) / 8); + pages = vram_size / (pm->height * pitch); + if (pages > 0) { + printf("{ 0x%04x, /* %dx%dx%d */\n", + pm->mode, pm->width, pm->height, pm->depth); + if (pm->depth == 4) + printf("{ /*Bit16u ModeAttributes*/ %s,\n", + "VBE_MODE_ATTRIBUTE_SUPPORTED | " + "VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | " + "VBE_MODE_ATTRIBUTE_COLOR_MODE | " + "VBE_MODE_ATTRIBUTE_TTY_BIOS_SUPPORT | " + "VBE_MODE_ATTRIBUTE_GRAPHICS_MODE"); + else + printf("{ /*Bit16u ModeAttributes*/ %s,\n", + "VBE_MODE_ATTRIBUTE_SUPPORTED | " + "VBE_MODE_ATTRIBUTE_EXTENDED_INFORMATION_AVAILABLE | " + "VBE_MODE_ATTRIBUTE_COLOR_MODE | " + "VBE_MODE_ATTRIBUTE_LINEAR_FRAME_BUFFER_MODE | " + "VBE_MODE_ATTRIBUTE_GRAPHICS_MODE"); + printf("/*Bit8u WinAAttributes*/ %s,\n", + "VBE_WINDOW_ATTRIBUTE_RELOCATABLE | " + "VBE_WINDOW_ATTRIBUTE_READABLE | " + "VBE_WINDOW_ATTRIBUTE_WRITEABLE"); + + printf("/*Bit8u WinBAttributes*/ %d,\n", 0); + + printf("/*Bit16u WinGranularity*/ %s,\n", "VBE_DISPI_BANK_SIZE_KB"); + + printf("/*Bit16u WinSize*/ %s,\n", "VBE_DISPI_BANK_SIZE_KB"); + + printf("/*Bit16u WinASegment*/ %s,\n", "VGAMEM_GRAPH"); + + printf("/*Bit16u WinBSegment*/ 0x%04x,\n", 0); + + printf("/*Bit32u WinFuncPtr*/ %d,\n", 0); + + printf("/*Bit16u BytesPerScanLine*/ %d,\n", pitch); + + /* Mandatory information for VBE 1.2 and above */ + printf("/*Bit16u XResolution*/ %d,\n", pm->width); + printf("/*Bit16u YResolution*/ %d,\n", pm->height); + printf("/*Bit8u XCharSize*/ %d,\n", 8); + printf("/*Bit8u YCharSize*/ %d,\n", 16); + if (pm->depth == 4) { + printf("/*Bit8u NumberOfPlanes*/ %d,\n", 4); + } else { + printf("/*Bit8u NumberOfPlanes*/ %d,\n", 1); + } + printf("/*Bit8u BitsPerPixel*/ %d,\n", pm->depth); + printf("/*Bit8u NumberOfBanks*/ %d,\n", 1); /* This would only be non-zero for CGA/HGC modes! */ + + if (pm->depth == 4) + str = "VBE_MEMORYMODEL_PLANAR"; + else if (pm->depth == 8) + str = "VBE_MEMORYMODEL_PACKED_PIXEL"; + else + str = "VBE_MEMORYMODEL_DIRECT_COLOR"; + printf("/*Bit8u MemoryModel*/ %s,\n", str); + printf("/*Bit8u BankSize*/ %d,\n", 0); + if (pm->depth == 4) + printf("/*Bit8u NumberOfImagePages*/ %d,\n", (pages / 4) - 1); + else + printf("/*Bit8u NumberOfImagePages*/ %d,\n", pages - 1); + printf("/*Bit8u Reserved_page*/ %d,\n", 0); + + /* Direct Color fields (required for direct/6 and YUV/7 memory models) */ + switch(pm->depth) { + case 15: + r_size = 5; + r_pos = 10; + g_size = 5; + g_pos = 5; + b_size = 5; + b_pos = 0; + a_size = 1; + a_pos = 15; + break; + case 16: + r_size = 5; + r_pos = 11; + g_size = 6; + g_pos = 5; + b_size = 5; + b_pos = 0; + a_size = 0; + a_pos = 0; + break; + case 24: + r_size = 8; + r_pos = 16; + g_size = 8; + g_pos = 8; + b_size = 8; + b_pos = 0; + a_size = 0; + a_pos = 0; + break; + case 32: + r_size = 8; + r_pos = 16; + g_size = 8; + g_pos = 8; + b_size = 8; + b_pos = 0; + a_size = 8; + a_pos = 24; + break; + default: + r_size = 0; + r_pos = 0; + g_size = 0; + g_pos = 0; + b_size = 0; + b_pos = 0; + a_size = 0; + a_pos = 0; + break; + } + + printf("/*Bit8u RedMaskSize*/ %d,\n", r_size); + printf("/*Bit8u RedFieldPosition*/ %d,\n", r_pos); + printf("/*Bit8u GreenMaskSize*/ %d,\n", g_size); + printf("/*Bit8u GreenFieldPosition*/ %d,\n", g_pos); + printf("/*Bit8u BlueMaskSize*/ %d,\n", b_size); + printf("/*Bit8u BlueFieldPosition*/ %d,\n", b_pos); + printf("/*Bit8u RsvdMaskSize*/ %d,\n", a_size); + printf("/*Bit8u RsvdFieldPosition*/ %d,\n", a_pos); + if (pm->depth == 32) + printf("/*Bit8u DirectColorModeInfo*/ %s,\n", + "VBE_DIRECTCOLOR_RESERVED_BITS_AVAILABLE"); + else + printf("/*Bit8u DirectColorModeInfo*/ %s,\n", "0"); + + /* Mandatory information for VBE 2.0 and above */ + if (pm->depth > 4) + printf("/*Bit32u PhysBasePtr*/ %s,\n", + "0xFFFF0000 /* Filled in at run-time; low word must be zero! */"); + else + printf("/*Bit32u PhysBasePtr*/ %s,\n", "0"); + printf("/*Bit32u OffScreenMemOffset*/ %d,\n", 0); + printf("/*Bit16u OffScreenMemSize*/ %d,\n", 0); + /* Mandatory information for VBE 3.0 and above */ + printf("/*Bit16u LinBytesPerScanLine*/ %d,\n", pitch); + printf("/*Bit8u BnkNumberOfPages*/ %d,\n", 0); + printf("/*Bit8u LinNumberOfPages*/ %d,\n", 0); + printf("/*Bit8u LinRedMaskSize*/ %d,\n", r_size); + printf("/*Bit8u LinRedFieldPosition*/ %d,\n", r_pos); + printf("/*Bit8u LinGreenMaskSize*/ %d,\n", g_size); + printf("/*Bit8u LinGreenFieldPosition*/ %d,\n", g_pos); + printf("/*Bit8u LinBlueMaskSize*/ %d,\n", b_size); + printf("/*Bit8u LinBlueFieldPosition*/ %d,\n", b_pos); + printf("/*Bit8u LinRsvdMaskSize*/ %d,\n", a_size); + printf("/*Bit8u LinRsvdFieldPosition*/ %d,\n", a_pos); + printf("/*Bit32u MaxPixelClock*/ %d,\n", 0); + printf("} },\n"); + } + } +#ifndef VBOX /* We'll add the terminator ourselves, thank you. */ + printf("{ VBE_VESA_MODE_END_OF_LIST,\n"); + printf("{ 0,\n"); + printf("} },\n"); +#endif + printf("};\n"); + return 0; +} diff --git a/src/VBox/Devices/Graphics/BIOS/vgabios.c b/src/VBox/Devices/Graphics/BIOS/vgabios.c new file mode 100644 index 00000000..7c415481 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vgabios.c @@ -0,0 +1,2805 @@ +// ============================================================================================ +/* + * vgabios.c + */ +// ============================================================================================ +// +// Copyright (C) 2001,2002 the LGPL VGABios developers Team +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2 of the License, or (at your option) any later version. +// +// This library 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 +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// ============================================================================================ +// +// This VGA Bios is specific to the plex86/bochs Emulated VGA card. +// You can NOT drive any physical vga card with it. +// +// ============================================================================================ +// +// This file contains code ripped from : +// - rombios.c of plex86 +// +// This VGA Bios contains fonts from : +// - fntcol16.zip (c) by Joseph Gil avalable at : +// ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip +// These fonts are public domain +// +// This VGA Bios is based on information taken from : +// - Kevin Lawton's vga card emulation for bochs/plex86 +// - Ralf Brown's interrupts list available at http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html +// - Finn Thogersons' VGADOC4b available at http://home.worldonline.dk/~finth/ +// - Michael Abrash's Graphics Programming Black Book +// - Francois Gervais' book "programmation des cartes graphiques cga-ega-vga" edited by sybex +// - DOSEMU 1.0.1 source code for several tables values and formulas +// +// Thanks for patches, comments and ideas to : +// - techt@pikeonline.net +// +// ============================================================================================ + + +/* + * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice + * other than GPL or LGPL is available it will apply instead, Oracle elects to use only + * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where + * a choice of LGPL license versions is made available with the language indicating + * that LGPLv2 or any later version may be used, or where a choice of which version + * of the LGPL is applied is otherwise unspecified. + */ + +#include +#include "vgabios.h" + +#ifdef VBE +#include "vbe.h" +#endif + +#include "inlines.h" + +/* Declares */ +extern void vgabios_int10_handler(void); +#pragma aux vgabios_int10_handler "*"; + +// Output +void __cdecl unimplemented(void); +void __cdecl unknown(void); + +static uint8_t find_vga_entry(); + +extern uint8_t readx_byte(uint16_t seg, uint16_t offset); + +#ifdef VBE +extern uint16_t __cdecl vbe_has_vbe_display(void); +extern void vbe_init(void); +#endif + +void set_int_vector(uint8_t int_vec, void __far *ptr) +{ + void __far * __far *ivt = 0; + + ivt[int_vec] = ptr; +} + +//@todo!! +#if 0 + +vgabios_name: +#ifdef VBOX +.ascii "VirtualBox VGA BIOS" +#else +.ascii "Plex86/Bochs VGABios" +#endif +.ascii " " +.byte 0x00 + +#ifndef VBOX +vgabios_version: +#ifndef VGABIOS_VERS +.ascii "current-cvs" +#else +.ascii VGABIOS_VERS +#endif +.ascii " " + +vgabios_date: +.ascii VGABIOS_DATE +.byte 0x0a,0x0d +.byte 0x00 +#endif + +#ifndef VBOX +char vgabios_copyright[] = "(C) 2003 the LGPL VGABios developers Team\r\n"; +char vgabios_license[] = "This VGA/VBE Bios is released under the GNU LGPL\r\n\r\n"; +char vgabios_website[] = "Please visit :\r\n" \ + " . http://www.plex86.org\r\n" \ + " . http://bochs.sourceforge.net\r\n" \ + " . http://www.nongnu.org/vgabios\r\n\r\n" +#endif + +#endif + +extern void set_mode(int mode); +#pragma aux set_mode = \ + "xor ah, ah" \ + "int 10h" \ + parm [ax]; + +char msg_vga_init[] = "Oracle VM VirtualBox Version " VBOX_VERSION_STRING " VGA BIOS\r\n"; + +/* + * Boot time harware inits + */ +void init_vga_card(void) +{ + /* Switch to color mode and enable CPU access 480 lines. */ + outb(0x3C2, 0xC3); + /* More than 64k 3C4/04. */ + /// @todo 16-bit write + outb(0x3C4, 0x04); + outb(0x3C5, 0x02); + +#ifdef DEBUG_VGA + printf(msg_vga_init); +#endif +} + +#include "vgatables.h" +#include "vgadefs.h" + +// -------------------------------------------------------------------------------------------- + +#pragma pack(0) + +/* Alphanumeric character set override. */ +typedef struct { + uint8_t c_height; /* Bytes/lines per character. */ + uint8_t cgen_bank; /* Character generator bank. */ + uint16_t char_num; /* Number of chars defined. */ + uint16_t char_1st; /* First char code in table. */ + uint16_t font_ofs; /* Font definition table offset. */ + uint16_t font_seg; /* Font definition table segment. */ + uint8_t n_rows; /* Number of text rows shown. */ + uint8_t modes[1]; /* Applicable modes list, 0xFF terminated. */ +} cso_txt; + +/* Graphics character set override. */ +typedef struct { + uint8_t c_height; /* Lines per character. */ + uint16_t c_len; /* Bytes per character. */ + uint16_t font_ofs; /* Font definition table offset. */ + uint16_t font_seg; /* Font definition table segment. */ + uint8_t modes[1]; /* Applicable modes list, 0xFF terminated. */ +} cso_grf; + +struct dcc { + uint8_t n_ent; + uint8_t version; + uint8_t max_code; + uint8_t reserved; + uint16_t dccs[16]; +} dcc_table = { + 16, + 1, + 7, + 0 +}; + +struct ssa { + uint16_t size; + void __far *dcc; + void __far *sacs; + void __far *pal; + void __far *resvd[3]; + +} secondary_save_area = { + sizeof(struct ssa), + &dcc_table +}; + +void __far *video_save_pointer_table[7] = { + &video_param_table, + 0, + 0, + 0, + &secondary_save_area +}; + +/* + * Boot time bios area inits + */ +void init_bios_area(void) +{ + uint8_t __far *bda; + + bda = 0x40 :> 0; + + /* Indicate 80x25 color was detected. */ + bda[BIOSMEM_INITIAL_MODE] = (bda[BIOSMEM_INITIAL_MODE] & 0xcf) | 0x20; + /* Just for the first int10 find its children. */ + + /* The default char height. */ + bda[BIOSMEM_CHAR_HEIGHT] = 16; + /* Clear the screen. */ + bda[BIOSMEM_VIDEO_CTL] = 0x60; + /* Set the basic screen we have. */ + bda[BIOSMEM_SWITCHES] = 0xf9; + /* Set the basic mode set options. */ + bda[BIOSMEM_MODESET_CTL] = 0x51; + /* Set the default MSR. */ + bda[BIOSMEM_CURRENT_MSR] = 0x09; + /* Initialize the default save area pointer. */ + *(void __far * __far *)&bda[BIOSMEM_VS_POINTER] = video_save_pointer_table; +} + +// ============================================================================================ +// +// Init Entry point +// +// ============================================================================================ +void __far __cdecl vgabios_init_func(void) +{ + init_vga_card(); + init_bios_area(); +#ifdef VBE + vbe_init(); +#endif + set_int_vector(0x10, vgabios_int10_handler); + set_int_vector(0x6D, vgabios_int10_handler); +#ifdef CIRRUS + cirrus_init(); +#endif + +#ifndef VBOX + display_splash_screen(); + + // init video mode and clear the screen + // @@AS: Do not remove this init, because it will break VESA graphics + set_mode(3); + + display_info(); + +#ifdef VBE + vbe_display_info(); +#endif + +#ifdef CIRRUS + cirrus_display_info(); +#endif + +#else /* VBOX */ + +//#ifdef DEBUG_bird + /* Init video mode and clear the screen */ + set_mode(3); +//#endif +#endif /* VBOX */ +} + +#include "vgafonts.h" + +#ifndef VBOX +// -------------------------------------------------------------------------------------------- +/* + * Boot time Splash screen + */ +static void display_splash_screen() +{ +} + +// -------------------------------------------------------------------------------------------- +/* + * Tell who we are + */ + +static void display_string(void) +{ + // Get length of string +ASM_START + mov ax,ds + mov es,ax + mov di,si + xor cx,cx + not cx + xor al,al + cld + repne + scasb + not cx + dec cx + push cx + + mov ax,#0x0300 + mov bx,#0x0000 + int #0x10 + + pop cx + mov ax,#0x1301 + mov bx,#0x000b + mov bp,si + int #0x10 +ASM_END +} + +static void display_info(void) +{ + display_string(vgabios_name); + display_string(vgabios_version); + display_string(vgabios_copyright); + display_string(vgabios_license); + display_string(vgabios_website); +} + +#endif + +// -------------------------------------------------------------------------------------------- +#ifdef VGA_DEBUG +void __cdecl int10_debugmsg(uint16_t DI, uint16_t SI, uint16_t BP, uint16_t SP, uint16_t BX, + uint16_t DX, uint16_t CX, uint16_t AX, uint16_t DS, uint16_t ES, uint16_t FLAGS) +{ + /* Function 0Eh is write char and would generate way too much output. */ + if (GET_AH() != 0x0E) + printf("vgabios call ah%02x al%02x bx%04x cx%04x dx%04x\n", GET_AH(), GET_AL(), BX, CX, DX); +} +#endif + +static void vga_get_cursor_pos(uint8_t page, uint16_t STACK_BASED *scans, uint16_t STACK_BASED *loc) +{ + if (page > 7) { + *scans = 0; + *loc = 0; + } else { + // FIXME should handle VGA 14/16 lines + *scans = read_word(BIOSMEM_SEG,BIOSMEM_CURSOR_TYPE); + *loc = read_word(BIOSMEM_SEG,BIOSMEM_CURSOR_POS + page * 2); + } +} + +/* Look for a glyph bitmap in a given font. */ +static uint16_t vga_find_glyph(uint8_t __far *font, uint8_t STACK_BASED *glyph, uint8_t cp, uint16_t n_glyphs, uint8_t cheight) +{ + uint16_t codepoint = 0; /* Zero returned when glyph not found. */ + + while (n_glyphs--) { + if (!repe_cmpsb(font, glyph, cheight)) { + codepoint = cp | 0x8000; /* Found matching glyph! */ + break; + } + font += cheight; + ++cp; /* Increment code point number. */ + } + return codepoint; +} + +static void vga_read_glyph_planar(uint8_t __far *vptr, uint16_t stride, uint8_t STACK_BASED *glyph, uint8_t cheight) +{ + /* Set Mode Register (GR5) to Read Mode 1. Assuming default register + * state from our mode set, this does all the hard work for us such that + * reading a byte from video memory gives us a bit mask for all eight + * pixels, for both 16-color and monochrome modes. + */ + outw(VGAREG_GRDC_ADDRESS, 0x0805); + + while (cheight--) { + *glyph++ = ~*vptr; + vptr += stride; + } + + /* Put GR5 back to Read Mode 0. */ + outw(VGAREG_GRDC_ADDRESS, 0x0005); +} + +static uint16_t vga_char_ofs_planar(uint8_t xcurs, uint8_t ycurs, uint16_t nbcols, uint8_t page, uint8_t cheight) +{ + uint16_t ofs; + + ofs = ycurs * nbcols * cheight + xcurs; + ofs += page * read_word(BIOSMEM_SEG, BIOSMEM_PAGE_SIZE); + + return ofs; +} + +static uint8_t vga_read_char_planar(uint16_t nbcols, uint16_t ofs, uint8_t cheight) +{ + uint8_t glyph[16]; /* NB: Don't try taller characters! */ + + vga_read_glyph_planar(0xA000 :> (uint8_t *)ofs, nbcols, &glyph, cheight); + + /* Look through font pointed to by INT 43h. */ + return vga_find_glyph((void __far *)read_dword(0, 0x43 * 4), &glyph, 0, 256, cheight); +} + +static uint16_t vga_char_ofs_linear(uint8_t xcurs, uint8_t ycurs, uint16_t nbcols, uint8_t page, uint8_t cheight) +{ + uint16_t ofs; + + ofs = ycurs * nbcols * cheight + xcurs; + ofs *= 8; + return ofs; +} + +static void vga_read_glyph_linear(uint8_t __far *vptr, uint16_t stride, uint8_t STACK_BASED *glyph, uint8_t cheight) +{ + uint8_t bmap, cbit; + int i; + + /* Zero pixels are background, everything else foreground. */ + while (cheight--) { + bmap = 0; + cbit = 0x80; + for (i = 0; i < 8; ++i) { + if (vptr[i]) + bmap |= cbit; + cbit >>= 1; + } + *glyph++ = bmap; + vptr += stride; + } +} + +static uint8_t vga_read_char_linear(uint16_t nbcols, uint16_t ofs, uint8_t cheight) +{ + uint8_t glyph[16]; /* NB: Don't try taller characters! */ + + vga_read_glyph_linear(0xA000 :> (uint8_t *)ofs, nbcols * 8, &glyph, cheight); + + /* Look through font pointed to by INT 43h. */ + return vga_find_glyph((void __far *)read_dword(0, 0x43 * 4), &glyph, 0, 256, cheight); +} + +static uint8_t vga_read_2bpp_char(uint8_t __far *vptr) +{ + uint16_t mask, pixb; + uint8_t bmap, cbit; + int i; + + mask = 0xC000; /* Check two bits at a time to see if they're zero. */ + cbit = 0x80; /* Go from left to right. */ + bmap = 0; + pixb = swap_16(*((uint16_t __far *)vptr)); + /* Go through 8 lines/words. */ + for (i = 0; i < 8; ++i) { + if (pixb & mask) + bmap |= cbit; + cbit >>= 1; + mask >>= 2; + } + return bmap; +} + +static void vga_read_glyph_cga(uint16_t ofs, uint8_t STACK_BASED *glyph, uint8_t mode) +{ + int i; + uint8_t __far *vptr; + + /* The font size is fixed at 8x8. Stride is always 80 bytes because the + * mode is either 80 characters wide at 1bpp or 40 characters at 2bpp. + */ + if (mode != 6) { + /* Adjust offset for 2bpp. */ + vptr = 0xB800 :> (uint8_t *)(ofs * 2); + /* For 2bpp modes, we have to extract the bits by hand. */ + for (i = 0; i < 4; ++i) { + *glyph++ = vga_read_2bpp_char(vptr); + *glyph++ = vga_read_2bpp_char(vptr + 0x2000); + vptr += 80; + } + } else { + vptr = 0xB800 :> (uint8_t *)ofs; + for (i = 0; i < 4; ++i) { + *glyph++ = vptr[0]; + *glyph++ = vptr[0x2000]; + vptr += 80; + } + } +} + +static uint16_t vga_char_ofs_cga(uint8_t xcurs, uint8_t ycurs, uint16_t nbcols) +{ + /* Multiply ony by 8 due to line interleaving. NB: Caller + * has to multiply the result for two for 2bpp mode. + */ + return ycurs * nbcols * 4 + xcurs; +} + +static uint8_t vga_read_char_cga(uint16_t ofs, uint8_t mode) +{ + uint8_t glyph[8]; /* Char height is hardcoded to 8. */ + uint16_t found; + + /* Segment would be B000h for mono modes; we don't do those. */ + vga_read_glyph_cga(ofs, &glyph, mode); + + /* Look through the first half of the font pointed to by INT 43h. */ + found = vga_find_glyph((void __far *)read_dword(0, 0x43 * 4), &glyph, 0, 128, 8); + /* If not found, look for the second half pointed to by INT 1Fh */ + if (!(found & 0x8000)) { + void __far *int1f; + + int1f = (void __far *)read_dword(0, 0x1f * 4); + if (int1f) /* If null pointer, skip. */ + found = vga_find_glyph(int1f, &glyph, 128, 128, 8); + } + return found; +} + +static void vga_read_char_attr(uint8_t page, uint16_t STACK_BASED *chr_atr) +{ + uint8_t xcurs, ycurs, mode, line, cheight; + uint16_t nbcols, nbrows, address; + uint16_t cursor, dummy, ofs; + + // Get the mode + mode = read_byte(BIOSMEM_SEG, BIOSMEM_CURRENT_MODE); + line = find_vga_entry(mode); + if (line == 0xFF) + return; + + // Get the cursor pos for the page + vga_get_cursor_pos(page, &dummy, &cursor); + xcurs = cursor & 0x00ff; + ycurs = (cursor & 0xff00) >> 8; + + // Get the dimensions + nbrows = read_byte(BIOSMEM_SEG, BIOSMEM_NB_ROWS) + 1; + nbcols = read_word(BIOSMEM_SEG, BIOSMEM_NB_COLS); + + if (vga_modes[line].class == TEXT) { + // Compute the address + address = SCREEN_MEM_START(nbcols, nbrows, page) + (xcurs + ycurs * nbcols) * 2; + *chr_atr = read_word(vga_modes[line].sstart, address); + } else { + switch (vga_modes[line].memmodel) { + case CGA: + /* For CGA graphics, font size is hardcoded at 8x8. */ + ofs = vga_char_ofs_cga(xcurs, ycurs, nbcols); + *chr_atr = vga_read_char_cga(ofs, mode); + break; + case PLANAR1: + case PLANAR4: + cheight = read_word(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT); + ofs = vga_char_ofs_planar(xcurs, ycurs, nbcols, page, cheight); + *chr_atr = vga_read_char_planar(nbcols, ofs, cheight); + break; + case LINEAR8: + cheight = read_word(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT); + ofs = vga_char_ofs_linear(xcurs, ycurs, nbcols, page, cheight); + *chr_atr = vga_read_char_linear(nbcols, ofs, cheight); + break; + default: +#ifdef VGA_DEBUG + unimplemented(); +#endif + break; + } + } +} + +static void vga_get_font_info (uint16_t func, uint16_t STACK_BASED *u_seg, uint16_t STACK_BASED *u_ofs, + uint16_t STACK_BASED *c_height, uint16_t STACK_BASED *max_row) +{ + void __far *ptr; + + switch (func) { + case 0x00: + ptr = (void __far *)read_dword(0x00, 0x1f * 4); + break; + case 0x01: + ptr = (void __far *)read_dword(0x00, 0x43 * 4); + break; + case 0x02: + ptr = vgafont14; + break; + case 0x03: + ptr = vgafont8; + break; + case 0x04: + ptr = vgafont8 + 128 * 8; + break; + case 0x05: + ptr = vgafont14alt; + break; + case 0x06: + ptr = vgafont16; + break; + case 0x07: + ptr = vgafont16alt; + break; + default: +#ifdef VGA_DEBUG + printf("Get font info subfn(%02x) not implemented\n", func); +#endif + return; + } + /* Split the far pointer and write it back. */ + *u_ofs = (uint16_t)ptr; + *u_seg = (uint32_t)ptr >> 16; + + /* The character height (effectively bytes per glyph). */ + *c_height = read_byte(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT); + + /* The highest row number. */ + *max_row = read_byte(BIOSMEM_SEG, BIOSMEM_NB_ROWS); +} + +static void vga_read_pixel(uint8_t page, uint16_t col, uint16_t row, uint16_t STACK_BASED *pixel) +{ + uint8_t mode, line, mask, attr, data, i; + uint16_t addr; + + /* Determine current mode characteristics. */ + mode = read_byte(BIOSMEM_SEG, BIOSMEM_CURRENT_MODE); + line = find_vga_entry(mode); + if (line == 0xFF) + return; + if (vga_modes[line].class == TEXT) + return; + + /* Read data depending on memory model. */ + switch (vga_modes[line].memmodel) { + case PLANAR4: + case PLANAR1: + addr = col / 8 + row * read_word(BIOSMEM_SEG, BIOSMEM_NB_COLS); + addr += read_word(BIOSMEM_SEG, BIOSMEM_PAGE_SIZE) * page; + mask = 0x80 >> (col & 0x07); + attr = 0x00; + for (i = 0; i < 4; i++) { + outw(VGAREG_GRDC_ADDRESS, (i << 8) | 0x04); + data = read_byte(0xa000,addr) & mask; + if (data > 0) + attr |= (0x01 << i); + } + break; + case CGA: + addr = (col >> (4 - vga_modes[line].pixbits)) + (row >> 1) * 80; + if (row & 1) + addr += 0x2000; + data = read_byte(0xb800, addr); + if (vga_modes[line].pixbits == 2) + attr = (data >> ((3 - (col & 0x03)) * 2)) & 0x03; + else + attr = (data >> (7 - (col & 0x07))) & 0x01; + break; + case LINEAR8: + addr = col + row * (read_word(BIOSMEM_SEG, BIOSMEM_NB_COLS) * 8); + attr = read_byte(0xa000, addr); + break; + default: +#ifdef VGA_DEBUG + unimplemented(); +#endif + attr = 0; + } + *(uint8_t STACK_BASED *)pixel = attr; +} + + + +// -------------------------------------------------------------------------------------------- +/*static*/ void biosfn_perform_gray_scale_summing(uint16_t start, uint16_t count) +{uint8_t r,g,b; + uint16_t i; + uint16_t index; + + inb(VGAREG_ACTL_RESET); + outb(VGAREG_ACTL_ADDRESS,0x00); + + for( index = 0; index < count; index++ ) + { + // set read address and switch to read mode + outb(VGAREG_DAC_READ_ADDRESS,start); + // get 6-bit wide RGB data values + r=inb( VGAREG_DAC_DATA ); + g=inb( VGAREG_DAC_DATA ); + b=inb( VGAREG_DAC_DATA ); + + // intensity = ( 0.3 * Red ) + ( 0.59 * Green ) + ( 0.11 * Blue ) + i = ( ( 77*r + 151*g + 28*b ) + 0x80 ) >> 8; + + if(i>0x3f)i=0x3f; + + // set write address and switch to write mode + outb(VGAREG_DAC_WRITE_ADDRESS,start); + // write new intensity value + outb( VGAREG_DAC_DATA, i&0xff ); + outb( VGAREG_DAC_DATA, i&0xff ); + outb( VGAREG_DAC_DATA, i&0xff ); + start++; + } + inb(VGAREG_ACTL_RESET); + outb(VGAREG_ACTL_ADDRESS,0x20); +#ifdef VBOX + inb(VGAREG_ACTL_RESET); +#endif /* VBOX */ +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_set_cursor_shape(uint8_t CH, uint8_t CL) +{ + uint16_t cheight, curs, crtc_addr; + int cga_emu; + + /* Unmodified input is stored in the BDA. */ + curs = (CH << 8) + CL; + write_word(BIOSMEM_SEG, BIOSMEM_CURSOR_TYPE, curs); + + /* Check if VGA is active. If not, just write the input to the CRTC. */ + if (!(read_byte(BIOSMEM_SEG, BIOSMEM_VIDEO_CTL) & 8)) { + /* Trying to disable the cursor? */ + if ((CH & 0x60) == 0x20) { + /* Special IBM-compatible value to turn off cursor. */ + CH = 0x1E; + CL = 0; + } else { + cga_emu = !(read_byte(BIOSMEM_SEG, BIOSMEM_VIDEO_CTL) & 1); + + /* If CGA cursor emulation is on and this is a text mode, adjust. + * But if cursor star or end is bigger than 31, don't adjust. + */ + /// @todo Figure out if this is a text mode + if (cga_emu /* && text mode*/ && (CH < 32) && (CL < 32)) { + cheight = read_word(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT); + + /* Is the end lower than start? VGA does not wrap around.*/ + if (CL < CH) { + /* For zero CL (end), leave values unchanged. */ + if (CL) { + CH = 0; + CL = cheight - 1; + } + } else { + if (((CL | CH) >= cheight) || ((CL != cheight - 1) && (CH != cheight - 2))) { + /* If it's an overbar cursor, don't adjust. */ + if (CL > 3) { + if (CL <= CH + 2) { + /* It's it a normal underline style cursor. */ + CH = CH - CL + cheight - 1; + CL = cheight - 1; + if (cheight >= 14) { + /* Shift up one pixel for normal EGA/VGA fonts. */ + CL--; + CH--; + } + } else if (CH <= 2) { + /* It's a full block cursor. */ + CL = cheight - 1; + } else { + /* It's a half block cursor. */ + CH = cheight / 2; + CL = cheight - 1; + } + } + } + } + } + } + } + + // CTRC regs 0x0a and 0x0b + crtc_addr = read_word(BIOSMEM_SEG, BIOSMEM_CRTC_ADDRESS); + outb(crtc_addr, 0x0a); + outb(crtc_addr + 1, CH); + outb(crtc_addr, 0x0b); + outb(crtc_addr + 1 ,CL); +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_set_cursor_pos (uint8_t page, uint16_t cursor) +{ + uint8_t xcurs,ycurs,current; + uint16_t nbcols,nbrows,address,crtc_addr; + + // Should not happen... + if(page>7)return; + + // Bios cursor pos + write_word(BIOSMEM_SEG, BIOSMEM_CURSOR_POS+2*page, cursor); + + // Set the hardware cursor + current=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE); + if(page==current) + { + // Get the dimensions + nbcols=read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + nbrows=read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1; + + xcurs=cursor&0x00ff;ycurs=(cursor&0xff00)>>8; + + // Calculate the address knowing nbcols nbrows and page num + address=SCREEN_IO_START(nbcols,nbrows,page)+xcurs+ycurs*nbcols; + + // CRTC regs 0x0e and 0x0f + crtc_addr=read_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS); + outb(crtc_addr,0x0e); + outb(crtc_addr+1,(address&0xff00)>>8); + outb(crtc_addr,0x0f); + outb(crtc_addr+1,address&0x00ff); + } +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_set_active_page(uint8_t page) +{ + uint16_t cursor,dummy,crtc_addr; + uint16_t nbcols,nbrows,address; + uint8_t mode,line; + + if(page>7)return; + + // Get the mode + mode=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE); + line=find_vga_entry(mode); + if(line==0xFF)return; + + // Get pos curs pos for the right page + vga_get_cursor_pos(page,&dummy,&cursor); + + if(vga_modes[line].class==TEXT) + { + // Get the dimensions + nbcols=read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + nbrows=read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1; + + // Calculate the address knowing nbcols nbrows and page num + address=SCREEN_MEM_START(nbcols,nbrows,page); + write_word(BIOSMEM_SEG,BIOSMEM_CURRENT_START,address); + + // Start address + address=SCREEN_IO_START(nbcols,nbrows,page); + } + else + { + address = page * video_param_table[line_to_vpti[line]].slength; + } + + // CRTC regs 0x0c and 0x0d + crtc_addr=read_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS); + outb(crtc_addr,0x0c); + outb(crtc_addr+1,(address&0xff00)>>8); + outb(crtc_addr,0x0d); + outb(crtc_addr+1,address&0x00ff); + + // And change the BIOS page + write_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE,page); + +#ifdef VGA_DEBUG + printf("Set active page %02x address %04x\n",page,address); +#endif + + // Display the cursor, now the page is active + biosfn_set_cursor_pos(page,cursor); +} + +/// Recursive BIOS invocation, uses vector 6Dh +extern void vga_font_set(uint8_t function, uint8_t data); +#pragma aux vga_font_set = \ + "mov ah, 11h" \ + "int 6Dh" \ + parm [al] [bl]; + +// ============================================================================================ +// +// BIOS functions +// +// ============================================================================================ + +/* CGA-compatible MSR (0x3D8) register values for first modes 0-7. */ +uint8_t cga_msr[8] = { + 0x2C, 0x28, 0x2D, 0x29, 0x2A, 0x2E, 0x1E, 0x29 +}; + +/* Convert index in vga_modes[] to index in video_param_table[] for 200-line (CGA) text modes. */ +static int8_t line_to_vpti_200[8] = { + 0x00, 0x01, 0x02, 0x03, -1, -1, -1, 0x07 +}; + +/* Same for 350-line (EGA) text modes. */ +static int8_t line_to_vpti_350[8] = { + 0x13, 0x14, 0x15, 0x16, -1, -1, -1, 0x07 +}; + +/* Same for 400-line (VGA) text modes. */ +static int8_t line_to_vpti_400[8] = { + 0x17, 0x17, 0x18, 0x18, -1, -1, -1, 0x19 +}; + +int find_vpti(uint8_t line) +{ + int idx; + uint8_t mctl; + + if (vga_modes[line].class == TEXT) { + mctl = read_byte(BIOSMEM_SEG, BIOSMEM_MODESET_CTL); + if (mctl & 0x10) + idx = line_to_vpti_400[line]; + else if (mctl & 0x80) + idx = line_to_vpti_200[line]; + else + idx = line_to_vpti_350[line]; + } else + idx = line_to_vpti[line]; + + return idx; +} + +static void biosfn_load_text_user_pat(uint8_t AL, uint16_t ES, uint16_t BP, uint16_t CX, uint16_t DX, uint8_t BL, uint8_t BH); +static void load_text_patch(uint16_t ES, uint16_t BP, uint8_t BL, uint8_t BH); + +void biosfn_set_video_mode(uint8_t mode) +{// mode: Bit 7 is 1 if no clear screen + + // Should we clear the screen ? + uint8_t noclearmem=mode&0x80; + uint8_t line,mmask,vpti; + uint8_t modeset_ctl; + uint8_t *palette; + uint16_t i; + uint16_t crtc_addr; + void __far * __far *save_area; + VideoParamTableEntry __far *vpt; + +#ifdef VBE + if (vbe_has_vbe_display()) { + // Force controller into VGA mode + outb(VGAREG_SEQU_ADDRESS,7); + outb(VGAREG_SEQU_DATA,0x00); + } +#endif // def VBE + + // The real mode + mode=mode&0x7f; + + // Display switching is not supported; mono monitors aren't really either, + // but requests to set mode 7 are honored. + + // find the entry in the video modes + line=find_vga_entry(mode); + +#ifdef VGA_DEBUG + printf("mode search %02x found line %02x\n",mode,line); +#endif + + if(line==0xFF) + return; + + // Read the save area pointer. + save_area = (void __far *)read_dword(BIOSMEM_SEG, BIOSMEM_VS_POINTER); + + vpti = find_vpti(line); + vpt = save_area[0]; + vpt += vpti; + +#if 0 // These are unused, but perhaps they shouldn't be? + // Read the bios vga control + video_ctl=read_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL); + + // Read the bios vga switches + vga_switches=read_byte(BIOSMEM_SEG,BIOSMEM_SWITCHES); +#endif + + // Read the bios mode set control + modeset_ctl=read_byte(BIOSMEM_SEG,BIOSMEM_MODESET_CTL); + + // Then we know the number of lines +// FIXME + + // if palette loading (bit 3 of modeset ctl = 0) + if((modeset_ctl&0x08)==0) + {// Set the PEL mask + outb(VGAREG_PEL_MASK,vga_modes[line].pelmask); + + // Set the whole dac always, from 0 + outb(VGAREG_DAC_WRITE_ADDRESS,0x00); + + // From which palette + switch(vga_modes[line].dacmodel) + {case 0: + palette=&palette0[0]; + break; + case 1: + palette=&palette1[0]; + break; + case 2: + palette=&palette2[0]; + break; + case 3: + palette=&palette3[0]; + break; + } + // Override for CGA text modes. + if(vga_modes[line].class==TEXT) + { + if(vpt->cheight == 8) // CGA + palette=&palette1[0]; + } + // Always 256*3 values + for(i=0;i<0x0100;i++) + {if(i<=dac_regs[vga_modes[line].dacmodel]) + {outb(VGAREG_DAC_DATA,palette[(i*3)+0]); + outb(VGAREG_DAC_DATA,palette[(i*3)+1]); + outb(VGAREG_DAC_DATA,palette[(i*3)+2]); + } + else + {outb(VGAREG_DAC_DATA,0); + outb(VGAREG_DAC_DATA,0); + outb(VGAREG_DAC_DATA,0); + } + } + if((modeset_ctl&0x02)==0x02) + { + biosfn_perform_gray_scale_summing(0x00, 0x100); + } + } + + // Reset Attribute Ctl flip-flop + inb(VGAREG_ACTL_RESET); + + // Set Attribute Ctl + for(i=0;i<=0x13;i++) + {outb(VGAREG_ACTL_ADDRESS,i); + outb(VGAREG_ACTL_WRITE_DATA,vpt->actl_regs[i]); + } + outb(VGAREG_ACTL_ADDRESS,0x14); + outb(VGAREG_ACTL_WRITE_DATA,0x00); + + // Save palette into the save area if it exists. + if(save_area[1]) + { + uint8_t __far *dyn_save; + + dyn_save = save_area[1]; + for (i = 0; i < 16; ++i) + dyn_save[i] = vpt->actl_regs[i]; + dyn_save[16] = vpt->actl_regs[17]; + } + + // Set Sequencer Ctl + outb(VGAREG_SEQU_ADDRESS,0); + outb(VGAREG_SEQU_DATA,0x03); + for(i=1;i<=4;i++) + {outb(VGAREG_SEQU_ADDRESS,i); + outb(VGAREG_SEQU_DATA,vpt->sequ_regs[i - 1]); + } + + // Set Grafx Ctl + for(i=0;i<=8;i++) + {outb(VGAREG_GRDC_ADDRESS,i); + outb(VGAREG_GRDC_DATA,vpt->grdc_regs[i]); + } + + // Set CRTC address VGA or MDA + crtc_addr=vga_modes[line].memmodel==MTEXT?VGAREG_MDA_CRTC_ADDRESS:VGAREG_VGA_CRTC_ADDRESS; + + // Set the misc register; may change CRTC base! + outb(VGAREG_WRITE_MISC_OUTPUT,vpt->miscreg); + + // Disable CRTC write protection + outw(crtc_addr,0x0011); + // Set CRTC regs + for(i=0;i<=0x18;i++) + {outb(crtc_addr,i); + outb(crtc_addr+1,vpt->crtc_regs[i]); + } + + // Enable video + outb(VGAREG_ACTL_ADDRESS,0x20); + inb(crtc_addr + VGAREG_ACTL_RESET - VGAREG_VGA_CRTC_ADDRESS); + + if(noclearmem==0x00) + { + if(vga_modes[line].class==TEXT) + { + memsetw(vga_modes[line].sstart,0,0x0720,0x4000); // 32k + } + else + { + if(mode<0x0d) + { + memsetw(vga_modes[line].sstart,0,0x0000,0x4000); // 32k + } + else + { + outb( VGAREG_SEQU_ADDRESS, 0x02 ); + mmask = inb( VGAREG_SEQU_DATA ); + outb( VGAREG_SEQU_DATA, 0x0f ); // all planes + memsetw(vga_modes[line].sstart,0,0x0000,0x8000); // 64k + outb( VGAREG_SEQU_DATA, mmask ); + } + } + } + + // Set the BIOS mem + write_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE,mode); + write_word(BIOSMEM_SEG,BIOSMEM_NB_COLS,vpt->twidth); + write_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE,vpt->slength); + write_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS,crtc_addr); + write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS,vpt->theightm1); + write_word(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT,vpt->cheight); + write_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL,(0x60|noclearmem)); + write_byte(BIOSMEM_SEG,BIOSMEM_SWITCHES,0xF9); + + // FIXME We nearly have the good tables. to be reworked + write_byte(BIOSMEM_SEG,BIOSMEM_DCC_INDEX,0x08); // 8 is VGA should be ok for now + + if (mode <= 7) + { + write_byte(BIOSMEM_SEG, BIOSMEM_CURRENT_MSR, cga_msr[mode]); /* Like CGA reg. 0x3D8 */ + write_byte(BIOSMEM_SEG, BIOSMEM_CURRENT_PAL, mode == 6 ? 0x3F : 0x30); /* Like CGA reg. 0x3D9*/ + } + + // Set cursor shape + if(vga_modes[line].class==TEXT) + { + biosfn_set_cursor_shape(0x06,0x07); + } + + /// @todo Could be optimized to a memset since only BDA needs updating. + // Set cursor pos for page 0..7 + for(i=0;i<8;i++) + biosfn_set_cursor_pos(i,0x0000); + + // Set active page 0 + biosfn_set_active_page(0x00); + + // Write the fonts in memory + if(vga_modes[line].class==TEXT) + { + cso_txt __far *ovr = save_area[2]; + + switch (vpt->cheight) { + case 8: + biosfn_load_text_user_pat(0, 0xC000, (uint16_t)vgafont8, 256, 0, 0, vpt->cheight); + break; + case 14: + biosfn_load_text_user_pat(0, 0xC000, (uint16_t)vgafont14, 256, 0, 0, vpt->cheight); + if (mode == 7) /* 350-line EGA modes are 640 wide, only mono EGA mode is 720 wide. */ + load_text_patch(0xC000, (uint16_t)vgafont14alt, 0, 14); + break; + default: + biosfn_load_text_user_pat(0, 0xC000, (uint16_t)vgafont16, 256, 0, 0, vpt->cheight); + load_text_patch(0xC000, (uint16_t)vgafont16alt, 0, 16); + } + if (ovr) + { +#ifdef VGA_DEBUG + printf("Charmap override found, font at %04x:%04x\n", ovr->font_seg, ovr->font_ofs); +#endif + i = 0; + // Does the override support current mode? + while (ovr->modes[i] != 0xff) + { + if (ovr->modes[i] == mode) + break; + ++i; + } + // If there is a valid font override, apply it. + if (ovr->modes[i] == mode) + { +#ifdef VGA_DEBUG + printf("Loading override, %04x chars, height %02x\n", ovr->char_num, ovr->c_height); +#endif + biosfn_load_text_user_pat(0x10, ovr->font_seg, ovr->font_ofs, ovr->char_num, + ovr->char_1st, ovr->cgen_bank, ovr->c_height); + } + } + vga_font_set(0x03, 0); /* Select font page mode 0. */ + } + + // Set the ints 0x1F and 0x43 + set_int_vector(0x1f, vgafont8+128*8); + + switch(vpt->cheight) + {case 8: + set_int_vector(0x43, vgafont8); + break; + case 14: + set_int_vector(0x43, vgafont14); + break; + case 16: + set_int_vector(0x43, vgafont16); + break; + } +} + +// -------------------------------------------------------------------------------------------- +static void vgamem_copy_pl4(uint8_t xstart, uint8_t ysrc, uint8_t ydest, + uint8_t cols, uint8_t nbcols, uint8_t cheight) +{ + uint16_t src,dest; + uint8_t i; + + src=ysrc*cheight*nbcols+xstart; + dest=ydest*cheight*nbcols+xstart; + outw(VGAREG_GRDC_ADDRESS, 0x0105); + for(i=0;i>1)+xstart; + dest=((ydest*cheight*nbcols)>>1)+xstart; + for(i=0;i>1)+xstart; + for(i=0;irlr)return; + if(cul>clr)return; + + // Get the mode + mode=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE); + line=find_vga_entry(mode); + if(line==0xFF)return; + + // Get the dimensions + nbrows=read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1; + nbcols=read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + + // Get the current page + if(page==0xFF) + page=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE); + + if(rlr>=nbrows)rlr=nbrows-1; + if(clr>=nbcols)clr=nbcols-1; + if(nblines>nbrows)nblines=0; + cols=clr-cul+1; + + if(vga_modes[line].class==TEXT) + { + // Compute the address + address=SCREEN_MEM_START(nbcols,nbrows,page); +#ifdef VGA_DEBUG + printf("Scroll, address %04x (%04x %04x %02x)\n",address,nbrows,nbcols,page); +#endif + + if(nblines==0&&rul==0&&cul==0&&rlr==nbrows-1&&clr==nbcols-1) + { + memsetw(vga_modes[line].sstart,address,(uint16_t)attr*0x100+' ',nbrows*nbcols); + } + else + {// if Scroll up + if(dir==SCROLL_UP) + {for(i=rul;i<=rlr;i++) + { + if((i+nblines>rlr)||(nblines==0)) + memsetw(vga_modes[line].sstart,address+(i*nbcols+cul)*2,(uint16_t)attr*0x100+' ',cols); + else + memcpyw(vga_modes[line].sstart,address+(i*nbcols+cul)*2,vga_modes[line].sstart,((i+nblines)*nbcols+cul)*2,cols); + } + } + else + {for(i=rlr;i>=rul;i--) + { + if((irlr) break; + } + } + } + } + else + { + cheight=video_param_table[line_to_vpti[line]].cheight; + switch(vga_modes[line].memmodel) + { + case PLANAR4: + case PLANAR1: + if(nblines==0&&rul==0&&cul==0&&rlr==nbrows-1&&clr==nbcols-1) + { + outw(VGAREG_GRDC_ADDRESS, 0x0205); + memsetb(vga_modes[line].sstart,0,attr,nbrows*nbcols*cheight); + outw(VGAREG_GRDC_ADDRESS, 0x0005); + } + else + {// if Scroll up + if(dir==SCROLL_UP) + {for(i=rul;i<=rlr;i++) + { + if((i+nblines>rlr)||(nblines==0)) + vgamem_fill_pl4(cul,i,cols,nbcols,cheight,attr); + else + vgamem_copy_pl4(cul,i+nblines,i,cols,nbcols,cheight); + } + } + else + {for(i=rlr;i>=rul;i--) + { + if((irlr) break; + } + } + } + break; + case CGA: + bpp=vga_modes[line].pixbits; + if(nblines==0&&rul==0&&cul==0&&rlr==nbrows-1&&clr==nbcols-1) + { + memsetb(vga_modes[line].sstart,0,attr,nbrows*nbcols*cheight*bpp); + } + else + { + if(bpp==2) + { + cul<<=1; + cols<<=1; + nbcols<<=1; + } + // if Scroll up + if(dir==SCROLL_UP) + {for(i=rul;i<=rlr;i++) + { + if((i+nblines>rlr)||(nblines==0)) + vgamem_fill_cga(cul,i,cols,nbcols,cheight,attr); + else + vgamem_copy_cga(cul,i+nblines,i,cols,nbcols,cheight); + } + } + else + {for(i=rlr;i>=rul;i--) + { + if((irlr) break; + } + } + } + break; + case LINEAR8: + if(nblines==0&&rul==0&&cul==0&&rlr==nbrows-1&&clr==nbcols-1) + { + memsetb(vga_modes[line].sstart,0,attr,nbrows*nbcols*cheight*8); + } + else + { + // if Scroll up + if(dir==SCROLL_UP) + {for(i=rul;i<=rlr;i++) + { + if((i+nblines>rlr)||(nblines==0)) + vgamem_fill_linear(cul,i,cols,nbcols,cheight,attr); + else + vgamem_copy_linear(cul,i+nblines,i,cols,nbcols,cheight); + } + } + else + {for(i=rlr;i>=rul;i--) + { + if((irlr) break; + } + } + } + break; +#ifdef VGA_DEBUG + default: + printf("Scroll in graphics mode "); + unimplemented(); +#endif + } + } +} + +// -------------------------------------------------------------------------------------------- +static void write_gfx_char_pl4(uint8_t car, uint8_t attr, uint8_t xcurs, + uint8_t ycurs, uint8_t nbcols, uint8_t cheight, uint8_t page) +{ + uint8_t i,j,mask; + uint8_t __far *fdata; + uint16_t addr,dest,src; + + fdata = (void __far *)read_dword(0x00, 0x43 * 4); + + addr=xcurs+ycurs*cheight*nbcols; + addr+=read_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE)*page; + src = car * cheight; + outw(VGAREG_SEQU_ADDRESS, 0x0f02); + outw(VGAREG_GRDC_ADDRESS, 0x0205); + if(attr&0x80) + { + outw(VGAREG_GRDC_ADDRESS, 0x1803); + } + else + { + outw(VGAREG_GRDC_ADDRESS, 0x0003); + } + for(i=0;i>j; + outw(VGAREG_GRDC_ADDRESS, (mask << 8) | 0x08); + readx_byte(0xa000,dest); + if(fdata[src+i]&mask) + { + write_byte(0xa000,dest,attr&0x0f); + } + else + { + write_byte(0xa000,dest,0x00); + } + } + } + outw(VGAREG_GRDC_ADDRESS, 0xff08); + outw(VGAREG_GRDC_ADDRESS, 0x0005); + outw(VGAREG_GRDC_ADDRESS, 0x0003); +} + +// -------------------------------------------------------------------------------------------- +static void write_gfx_char_cga(uint8_t car, uint8_t attr, uint8_t xcurs, + uint8_t ycurs, uint8_t nbcols, uint8_t bpp) +{ + uint8_t i,j,mask,data; + uint8_t *fdata; + uint16_t addr,dest,src; + + fdata = &vgafont8; + addr=(xcurs*bpp)+ycurs*320; + src = car * 8; + for(i=0;i<8;i++) + { + dest=addr+(i>>1)*80; + if (i & 1) dest += 0x2000; + mask = 0x80; + /* NB: In 1bpp modes, the attribute is ignored, only the XOR flag has meaning. */ + if (bpp == 1) + { + if (attr & 0x80) + { + data = read_byte(0xb800,dest); + data ^= fdata[src+i]; + } + else + { + data = fdata[src+i]; + } + write_byte(0xb800,dest,data); + } + else + { + while (mask > 0) + { + if (attr & 0x80) + { + data = read_byte(0xb800,dest); + } + else + { + data = 0x00; + } + for(j=0;j<4;j++) + { + if (fdata[src+i] & mask) + { + if (attr & 0x80) + { + data ^= (attr & 0x03) << ((3-j)*2); + } + else + { + data |= (attr & 0x03) << ((3-j)*2); + } + } + mask >>= 1; + } + write_byte(0xb800,dest,data); + dest += 1; + } + } + } +} + +// -------------------------------------------------------------------------------------------- +static void write_gfx_char_lin(uint8_t car, uint8_t attr, uint8_t xcurs, + uint8_t ycurs, uint8_t nbcols) +{ + uint8_t i,j,mask,data; + uint8_t *fdata; + uint16_t addr,dest,src; + + fdata = &vgafont8; + addr=xcurs*8+ycurs*nbcols*64; + src = car * 8; + for(i=0;i<8;i++) + { + dest=addr+i*nbcols*8; + mask = 0x80; + for(j=0;j<8;j++) + { + data = 0x00; + if (fdata[src+i] & mask) + { + data = attr; + } + write_byte(0xa000,dest+j,data); + mask >>= 1; + } + } +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_write_char_attr(uint8_t car, uint8_t page, uint8_t attr, uint16_t count) +{ + uint8_t cheight,xcurs,ycurs,mode,line,bpp; + uint16_t nbcols,nbrows,address; + uint16_t cursor,dummy; + + // Get the mode + mode=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE); + line=find_vga_entry(mode); + if(line==0xFF)return; + + // Get the cursor pos for the page + vga_get_cursor_pos(page,&dummy,&cursor); + xcurs=cursor&0x00ff;ycurs=(cursor&0xff00)>>8; + + // Get the dimensions + nbrows=read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1; + nbcols=read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + + if(vga_modes[line].class==TEXT) + { + // Compute the address + address=SCREEN_MEM_START(nbcols,nbrows,page)+(xcurs+ycurs*nbcols)*2; + + dummy=((uint16_t)attr<<8)+car; + memsetw(vga_modes[line].sstart,address,dummy,count); + } + else + { + // FIXME gfx mode not complete + cheight=video_param_table[line_to_vpti[line]].cheight; + bpp=vga_modes[line].pixbits; + while(count-->0) + { + switch(vga_modes[line].memmodel) + { + case PLANAR1: + attr |= 0x01; /* Color is ignored in 1bpp modes, always foreground. */ + case PLANAR4: + write_gfx_char_pl4(car,attr,xcurs,ycurs,nbcols,cheight,page); + break; + case CGA: + write_gfx_char_cga(car,attr,xcurs,ycurs,nbcols,bpp); + break; + case LINEAR8: + write_gfx_char_lin(car,attr,xcurs,ycurs,nbcols); + break; +#ifdef VGA_DEBUG + default: + unimplemented(); +#endif + } + xcurs++; + } + } +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_write_char_only(uint8_t car, uint8_t page, uint8_t attr, uint16_t count) +{ + uint8_t cheight,xcurs,ycurs,mode,line,bpp; + uint16_t nbcols,nbrows,address; + uint16_t cursor,dummy; + + // Get the mode + mode=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE); + line=find_vga_entry(mode); + if(line==0xFF)return; + + // Get the cursor pos for the page + vga_get_cursor_pos(page,&dummy,&cursor); + xcurs=cursor&0x00ff;ycurs=(cursor&0xff00)>>8; + + // Get the dimensions + nbrows=read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1; + nbcols=read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + + if(vga_modes[line].class==TEXT) + { + // Compute the address + address=SCREEN_MEM_START(nbcols,nbrows,page)+(xcurs+ycurs*nbcols)*2; + + while(count-->0) + {write_byte(vga_modes[line].sstart,address,car); + address+=2; + } + } + else + { + // FIXME gfx mode not complete + cheight=video_param_table[line_to_vpti[line]].cheight; + bpp=vga_modes[line].pixbits; + while(count-->0) + { + switch(vga_modes[line].memmodel) + { + case PLANAR1: + attr |= 0x01; /* Color is ignored in 1bpp modes, always foreground. */ + case PLANAR4: + write_gfx_char_pl4(car,attr,xcurs,ycurs,nbcols,cheight,page); + break; + case CGA: + write_gfx_char_cga(car,attr,xcurs,ycurs,nbcols,bpp); + break; + case LINEAR8: + write_gfx_char_lin(car,attr,xcurs,ycurs,nbcols); + break; +#ifdef VGA_DEBUG + default: + unimplemented(); +#endif + } + xcurs++; + } + } +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_write_pixel(uint8_t BH, uint8_t AL, uint16_t CX, uint16_t DX) +{ + uint8_t mode,line,mask,attr,data; + uint16_t addr; + + // Get the mode + mode=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE); + line=find_vga_entry(mode); + if(line==0xFF)return; + if(vga_modes[line].class==TEXT)return; + + switch(vga_modes[line].memmodel) + { + case PLANAR4: + case PLANAR1: + addr = CX/8+DX*read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + addr += read_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE) * BH; + mask = 0x80 >> (CX & 0x07); + outw(VGAREG_GRDC_ADDRESS, (mask << 8) | 0x08); + outw(VGAREG_GRDC_ADDRESS, 0x0205); + data = readx_byte(0xa000,addr); + if (AL & 0x80) + { + outw(VGAREG_GRDC_ADDRESS, 0x1803); + } + write_byte(0xa000,addr,AL); + outw(VGAREG_GRDC_ADDRESS, 0xff08); + outw(VGAREG_GRDC_ADDRESS, 0x0005); + outw(VGAREG_GRDC_ADDRESS, 0x0003); + break; + case CGA: + if(vga_modes[line].pixbits==2) + { + addr=(CX>>2)+(DX>>1)*80; + } + else + { + addr=(CX>>3)+(DX>>1)*80; + } + if (DX & 1) addr += 0x2000; + data = read_byte(0xb800,addr); + if(vga_modes[line].pixbits==2) + { + attr = (AL & 0x03) << ((3 - (CX & 0x03)) * 2); + mask = 0x03 << ((3 - (CX & 0x03)) * 2); + } + else + { + attr = (AL & 0x01) << (7 - (CX & 0x07)); + mask = 0x01 << (7 - (CX & 0x07)); + } + if (AL & 0x80) + { + data ^= attr; + } + else + { + data &= ~mask; + data |= attr; + } + write_byte(0xb800,addr,data); + break; + case LINEAR8: + addr=CX+DX*(read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS)*8); + write_byte(0xa000,addr,AL); + break; +#ifdef VGA_DEBUG + default: + unimplemented(); +#endif + } +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_write_teletype(uint8_t car, uint8_t page, uint8_t attr, uint8_t flag) +{// flag = WITH_ATTR / NO_ATTR + + uint8_t cheight,xcurs,ycurs,mode,line,bpp; + uint16_t nbcols,nbrows,address; + uint16_t cursor,dummy; + + // special case if page is 0xff, use current page + if(page==0xff) + page=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE); + + // Get the mode + mode=read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE); + line=find_vga_entry(mode); + if(line==0xFF)return; + + // Get the cursor pos for the page + vga_get_cursor_pos(page,&dummy,&cursor); + xcurs=cursor&0x00ff;ycurs=(cursor&0xff00)>>8; + + // Get the dimensions + nbrows=read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1; + nbcols=read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + + switch(car) + { + case '\a': // ASCII 0x07, BEL + //FIXME should beep + break; + + case '\b': // ASCII 0x08, BS + if(xcurs>0)xcurs--; + break; + + case '\n': // ASCII 0x0A, LF + ycurs++; + break; + + case '\r': // ASCII 0x0D, CR + xcurs=0; + break; + + default: + + if(vga_modes[line].class==TEXT) + { + // Compute the address + address=SCREEN_MEM_START(nbcols,nbrows,page)+(xcurs+ycurs*nbcols)*2; + + // Write the char + write_byte(vga_modes[line].sstart,address,car); + + if(flag==WITH_ATTR) + write_byte(vga_modes[line].sstart,address+1,attr); + } + else + { + // FIXME gfx mode not complete + cheight=video_param_table[line_to_vpti[line]].cheight; + bpp=vga_modes[line].pixbits; + switch(vga_modes[line].memmodel) + { + case PLANAR1: + attr |= 0x01; /* Color is ignored in 1bpp modes, always foreground. */ + case PLANAR4: + write_gfx_char_pl4(car,attr,xcurs,ycurs,nbcols,cheight,page); + break; + case CGA: + write_gfx_char_cga(car,attr,xcurs,ycurs,nbcols,bpp); + break; + case LINEAR8: + write_gfx_char_lin(car,attr,xcurs,ycurs,nbcols); + break; +#ifdef VGA_DEBUG + default: + unimplemented(); +#endif + } + } + xcurs++; + // Do we need to wrap ? + if(xcurs==nbcols) + {xcurs=0; + ycurs++; + } + } + + // Do we need to scroll ? + if(ycurs==nbrows) + { + if(vga_modes[line].class==TEXT) + { + address=SCREEN_MEM_START(nbcols,nbrows,page)+(xcurs+(ycurs-1)*nbcols)*2; + attr=read_byte(vga_modes[line].sstart,address+1); + biosfn_scroll(0x01,attr,0,0,nbrows-1,nbcols-1,page,SCROLL_UP); + } + else + { + biosfn_scroll(0x01,0x00,0,0,nbrows-1,nbcols-1,page,SCROLL_UP); + } + ycurs-=1; + } + + // Set the cursor for the page + cursor=ycurs; cursor<<=8; cursor+=xcurs; + biosfn_set_cursor_pos(page,cursor); +} + +// -------------------------------------------------------------------------------------------- +static void get_font_access(void) +{ + outw(VGAREG_GRDC_ADDRESS, 0x0005); + outb(VGAREG_GRDC_ADDRESS, 0x06); + outw(VGAREG_GRDC_ADDRESS, (((0x04 | (inb(VGAREG_GRDC_DATA) & 0x01)) << 8) | 0x06)); + outw(VGAREG_SEQU_ADDRESS, 0x0402); + outw(VGAREG_SEQU_ADDRESS, 0x0604); +} + +static void release_font_access(void) +{ + outw(VGAREG_GRDC_ADDRESS, (((0x0a | ((inb(VGAREG_READ_MISC_OUTPUT) & 0x01) << 2)) << 8) | 0x06)); + outw(VGAREG_GRDC_ADDRESS, 0x1005); + outw(VGAREG_SEQU_ADDRESS, 0x0302); + outw(VGAREG_SEQU_ADDRESS, 0x0204); +} + +static void set_scan_lines(uint8_t lines) +{ + uint16_t crtc_addr,cols,vde; + uint8_t crtc_r9,ovl,rows; + + crtc_addr = read_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS); + outb(crtc_addr, 0x09); + crtc_r9 = inb(crtc_addr+1); + crtc_r9 = (crtc_r9 & 0xe0) | (lines - 1); + outb(crtc_addr+1, crtc_r9); + if(lines==8) + { + biosfn_set_cursor_shape(0x06,0x07); + } + else + { + biosfn_set_cursor_shape(lines-4,lines-3); + } + write_word(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT, lines); + outb(crtc_addr, 0x12); + vde = inb(crtc_addr+1); + outb(crtc_addr, 0x07); + ovl = inb(crtc_addr+1); + vde += (((ovl & 0x02) << 7) + ((ovl & 0x40) << 3) + 1); + rows = vde / lines; + write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, rows-1); + cols = read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS); + write_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE, rows * cols * 2); +} + +static void biosfn_set_font_block(uint8_t BL) +{ + outw(VGAREG_SEQU_ADDRESS, 0x0100); + outw(VGAREG_SEQU_ADDRESS, 0x0003 | (BL << 8)); + outw(VGAREG_SEQU_ADDRESS, 0x0300); +} + +static void load_text_patch(uint16_t ES, uint16_t BP, uint8_t BL, uint8_t BH) +{ + uint16_t blockaddr, dest, src; + uint8_t __far *pat; + + get_font_access(); + + blockaddr = ((BL & 0x03) << 14) + ((BL & 0x04) << 11); + pat = ES :> (uint8_t *)BP; + src = BP + 1; + while (*pat) { + dest = blockaddr + *pat * 32; + memcpyb(0xA000, dest, ES, src, BH); + src += BH + 1; + pat += BH + 1; + } + + release_font_access(); +} + +static void biosfn_load_text_user_pat(uint8_t AL, uint16_t ES, uint16_t BP, uint16_t CX, + uint16_t DX, uint8_t BL, uint8_t BH) +{ + uint16_t blockaddr,dest,i,src; + + get_font_access(); + blockaddr = ((BL & 0x03) << 14) + ((BL & 0x04) << 11); + for(i=0;i=0x10) + { + set_scan_lines(BH); + } +} + +static void biosfn_load_gfx_8_8_chars(uint16_t ES, uint16_t BP) +{ + set_int_vector(0x1F, ES:>BP); +} + +static void set_gfx_font(void _far *font, uint16_t cheight, uint8_t row_code, uint8_t rows) +{ + static uint8_t row_tbl[] = { 0, 14, 25, 43 }; + + set_int_vector(0x43, font); + if (row_code) { + if (row_code > 3) + row_code = 2; /* Default to 25 rows. */ + rows = row_tbl[row_code]; + } + /* Else 'rows' used as is. */ + + write_word(BIOSMEM_SEG, BIOSMEM_CHAR_HEIGHT, cheight); + write_word(BIOSMEM_SEG, BIOSMEM_NB_ROWS, rows - 1); +} + +static void biosfn_load_gfx_user_chars(uint16_t ES, uint16_t BP, uint16_t CX, + uint8_t BL, uint8_t DL) +{ + set_gfx_font(ES:>BP, CX, BL, DL); +} + +/* Some references (RBIL) suggest that only BL is used; that is wrong, + * all of these subfunctions will use DL if BL is zero. + */ +static void biosfn_load_gfx_8_14_chars(uint8_t BL, uint8_t DL) +{ + set_gfx_font(vgafont14, 14, BL, DL); +} +static void biosfn_load_gfx_8_8_dd_chars(uint8_t BL, uint8_t DL) +{ + set_gfx_font(vgafont8, 8, BL, DL); +} +static void biosfn_load_gfx_8_16_chars(uint8_t BL, uint8_t DL) +{ + set_gfx_font(vgafont16, 16, BL, DL); +} +// -------------------------------------------------------------------------------------------- +static void biosfn_alternate_prtsc(void) +{ +#ifdef VGA_DEBUG + unimplemented(); +#endif +} +// -------------------------------------------------------------------------------------------- +static void biosfn_set_txt_lines(uint8_t AL) +{ + uint8_t mctl; + + /* Read byte at 40:89. */ + mctl = read_byte(BIOSMEM_SEG, BIOSMEM_MODESET_CTL); + mctl = mctl & 0x6F; /* Clear 400/200 line flags. */ + + switch (AL) /* AL was already validated to be in 0-2 range. */ + { + case 0: /* 200 lines. */ + mctl |= 0x80; + break; + case 2: /* 400 lines. */ + mctl |= 0x10; + break; + } + write_byte(BIOSMEM_SEG, BIOSMEM_MODESET_CTL, mctl); +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_switch_video_interface (AL,ES,DX) uint8_t AL;uint16_t ES;uint16_t DX; +{ +#ifdef VGA_DEBUG + unimplemented(); +#endif +} +static void biosfn_enable_video_refresh_control(uint8_t AL) +{ +#ifdef VGA_DEBUG + unimplemented(); +#endif +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_write_string(uint8_t flag, uint8_t page, uint8_t attr, uint16_t count, + uint8_t row, uint8_t col, uint16_t seg, uint16_t offset) +{ + uint16_t newcurs,oldcurs,dummy; + uint8_t car; + + // Read curs info for the page + vga_get_cursor_pos(page,&dummy,&oldcurs); + + // if row=0xff special case : use current cursor position + if(row==0xff) + {col=oldcurs&0x00ff; + row=(oldcurs&0xff00)>>8; + } + + newcurs=row; newcurs<<=8; newcurs+=col; + biosfn_set_cursor_pos(page,newcurs); + + while(count--!=0) + { + car=read_byte(seg,offset++); + if((flag&0x02)!=0) + attr=read_byte(seg,offset++); + + biosfn_write_teletype(car,page,attr,WITH_ATTR); + } + + // Set back curs pos + if((flag&0x01)==0) + biosfn_set_cursor_pos(page,oldcurs); +} + +// -------------------------------------------------------------------------------------------- +static void biosfn_read_state_info(uint16_t BX, uint16_t ES, uint16_t DI) +{ + uint16_t pg_sz; + uint16_t scans; + uint8_t mode; + uint8_t mctl; + uint8_t temp; + + mode = read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE); + pg_sz = read_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE); + // Address of static functionality table + write_dword(ES,DI+0x00, (uint32_t)(void __far *)static_functionality); + + // A lot is a straight copy from the BDA. Note that the number + // of character rows in the BDA is zero-based but one-based in + // the dynamic state area + memcpyb(ES,DI+0x04,BIOSMEM_SEG,BIOSMEM_CURRENT_MODE,30); + write_byte(ES,DI+0x22,read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1); + memcpyb(ES,DI+0x23,BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT,2); + + write_byte(ES,DI+0x25,read_byte(BIOSMEM_SEG,BIOSMEM_DCC_INDEX)); + write_byte(ES,DI+0x26,0); // Alternate display code + write_word(ES,DI+0x27,16); // Number of colors + write_byte(ES,DI+0x29,8); // Number of pages + write_byte(ES,DI+0x2a,2); // Vertical resolution specifier + write_byte(ES,DI+0x2b,0); // Primary font block + write_byte(ES,DI+0x2c,0); // Secondary font block + write_byte(ES,DI+0x2d,0x21); + write_byte(ES,DI+0x31,3); // 256K video RAM + write_byte(ES,DI+0x32,0); // Save pointer state information + + mctl = read_byte(BIOSMEM_SEG,BIOSMEM_MODESET_CTL); + + /* Extract and write the vertical resolution specifier bits. */ + scans = ((mctl & 0x80) >> 6) | ((mctl & 0x10) >> 4); + switch (scans) { + case 0: temp = 1; break; /* 350 lines */ + case 1: temp = 2; break; /* 400 lines */ + default: + case 2: temp = 0; break; /* 200 lines */ + } + write_byte(ES,DI+0x2a,temp); + + /* Patch up the data for graphics modes. */ + if (mode >= 0x0E && mode <= 0x12) { + if (pg_sz) + write_byte(ES,DI+0x29,16384/(pg_sz >> 2)); + } else if (mode == 0x13) { + write_byte(ES,DI+0x29,1); /* Just one page due to chaining */ + write_word(ES,DI+0x27,256); /* But 256!! colors!!! */ + } else if (mode >= 4 && mode <= 6) { + /* CGA modes. */ + if (pg_sz) + write_byte(ES,DI+0x29,16384/pg_sz); + write_word(ES,DI+0x27,4); + } + if (mode == 6 || mode == 0x11) + write_word(ES,DI+0x27,2); /* 2-color modes. */ + + if ((mode >= 4) && (mode != 7)) { + write_byte(ES,DI+0x2d,0x01); + scans = (read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)+1) * read_byte(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT); + switch (scans) { + case 200: temp = 0; break; + case 350: temp = 1; break; + case 400: temp = 2; break; + default: + case 480: temp = 3; break; + } + write_byte(ES,DI+0x2a,temp); + } + + memsetb(ES,DI+0x33,0,13); +} + +// -------------------------------------------------------------------------------------------- +uint16_t biosfn_read_video_state_size2(uint16_t state) +{ + uint16_t size; + + size = 0; + if (state & 1) + size += 0x46; + + if (state & 2) + size += (5 + 8 + 5) * 2 + 6; + + if (state & 4) + size += 3 + 256 * 3 + 1; + + return size; +} + +static void vga_get_video_state_size(uint16_t state, uint16_t STACK_BASED *size) +{ + /* The size is the number of 64-byte blocks required to save the state. */ + *size = (biosfn_read_video_state_size2(state) + 63) / 64; +} + +uint16_t biosfn_save_video_state(uint16_t CX, uint16_t ES, uint16_t BX) +{ + uint16_t i, crtc_addr, ar_index; + + crtc_addr = read_word(BIOSMEM_SEG, BIOSMEM_CRTC_ADDRESS); + if (CX & 1) { + write_byte(ES, BX, inb(VGAREG_SEQU_ADDRESS)); BX++; + write_byte(ES, BX, inb(crtc_addr)); BX++; + write_byte(ES, BX, inb(VGAREG_GRDC_ADDRESS)); BX++; + inb(VGAREG_ACTL_RESET); + ar_index = inb(VGAREG_ACTL_ADDRESS); + write_byte(ES, BX, ar_index); BX++; + write_byte(ES, BX, inb(VGAREG_READ_FEATURE_CTL)); BX++; + + for(i=1;i<=4;i++){ + outb(VGAREG_SEQU_ADDRESS, i); + write_byte(ES, BX, inb(VGAREG_SEQU_DATA)); BX++; + } + outb(VGAREG_SEQU_ADDRESS, 0); + write_byte(ES, BX, inb(VGAREG_SEQU_DATA)); BX++; + + for(i=0;i<=0x18;i++) { + outb(crtc_addr,i); + write_byte(ES, BX, inb(crtc_addr+1)); BX++; + } + + for(i=0;i<=0x13;i++) { + inb(VGAREG_ACTL_RESET); /* Reads do not toggle flip-flop! */ + outb(VGAREG_ACTL_ADDRESS, i | (ar_index & 0x20)); + write_byte(ES, BX, inb(VGAREG_ACTL_READ_DATA)); BX++; + } + inb(VGAREG_ACTL_RESET); + + for(i=0;i<=8;i++) { + outb(VGAREG_GRDC_ADDRESS,i); + write_byte(ES, BX, inb(VGAREG_GRDC_DATA)); BX++; + } + + write_word(ES, BX, crtc_addr); BX+= 2; + + /* XXX: read plane latches */ + write_byte(ES, BX, 0); BX++; + write_byte(ES, BX, 0); BX++; + write_byte(ES, BX, 0); BX++; + write_byte(ES, BX, 0); BX++; + } + if (CX & 2) { + write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE)); BX++; + write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS)); BX += 2; + write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE)); BX += 2; + write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS)); BX += 2; + write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)); BX++; + write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT)); BX += 2; + write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL)); BX++; + write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_SWITCHES)); BX++; + write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_MODESET_CTL)); BX++; + write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CURSOR_TYPE)); BX += 2; + for(i=0;i<8;i++) { + write_word(ES, BX, read_word(BIOSMEM_SEG, BIOSMEM_CURSOR_POS+2*i)); + BX += 2; + } + write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CURRENT_START)); BX += 2; + write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE)); BX++; + /* current font */ + write_word(ES, BX, read_word(0, 0x1f * 4)); BX += 2; + write_word(ES, BX, read_word(0, 0x1f * 4 + 2)); BX += 2; + write_word(ES, BX, read_word(0, 0x43 * 4)); BX += 2; + write_word(ES, BX, read_word(0, 0x43 * 4 + 2)); BX += 2; + } + if (CX & 4) { + /* XXX: check this */ + write_byte(ES, BX, inb(VGAREG_DAC_STATE)); BX++; /* read/write mode dac */ + write_byte(ES, BX, inb(VGAREG_DAC_WRITE_ADDRESS)); BX++; /* pix address */ + write_byte(ES, BX, inb(VGAREG_PEL_MASK)); BX++; + // Set the whole dac always, from 0 + outb(VGAREG_DAC_WRITE_ADDRESS,0x00); + for(i=0;i<256*3;i++) { + write_byte(ES, BX, inb(VGAREG_DAC_DATA)); BX++; + } + write_byte(ES, BX, 0); BX++; /* color select register */ + } + return BX; +} + +uint16_t biosfn_restore_video_state(uint16_t CX, uint16_t ES, uint16_t BX) +{ + uint16_t i, crtc_addr, v, addr1, ar_index; + + if (CX & 1) { + // Reset Attribute Ctl flip-flop + inb(VGAREG_ACTL_RESET); + + crtc_addr = read_word(ES, BX + 0x40); + addr1 = BX; + BX += 5; + + for(i=1;i<=4;i++){ + outb(VGAREG_SEQU_ADDRESS, i); + outb(VGAREG_SEQU_DATA, read_byte(ES, BX)); BX++; + } + outb(VGAREG_SEQU_ADDRESS, 0); + outb(VGAREG_SEQU_DATA, read_byte(ES, BX)); BX++; + + // select crtc base address + v = inb(VGAREG_READ_MISC_OUTPUT) & ~0x01; + if (crtc_addr == 0x3d4) + v |= 0x01; + outb(VGAREG_WRITE_MISC_OUTPUT, v); + + // Disable CRTC write protection + outw(crtc_addr,0x0011); + // Set CRTC regs + for(i=0;i<=0x18;i++) { + if (i != 0x11) { + outb(crtc_addr,i); + outb(crtc_addr+1, read_byte(ES, BX)); + } + BX++; + } + // enable write protection if needed + outb(crtc_addr, 0x11); + outb(crtc_addr+1, read_byte(ES, BX - 0x18 + 0x11)); + + // Set Attribute Ctl + ar_index = read_byte(ES, addr1 + 0x03); + inb(VGAREG_ACTL_RESET); + for(i=0;i<=0x13;i++) { + outb(VGAREG_ACTL_ADDRESS, i | (ar_index & 0x20)); + outb(VGAREG_ACTL_WRITE_DATA, read_byte(ES, BX)); BX++; + } + outb(VGAREG_ACTL_ADDRESS, ar_index); + inb(VGAREG_ACTL_RESET); + + for(i=0;i<=8;i++) { + outb(VGAREG_GRDC_ADDRESS,i); + outb(VGAREG_GRDC_DATA, read_byte(ES, BX)); BX++; + } + BX += 2; /* crtc_addr */ + BX += 4; /* plane latches */ + + outb(VGAREG_SEQU_ADDRESS, read_byte(ES, addr1)); addr1++; + outb(crtc_addr, read_byte(ES, addr1)); addr1++; + outb(VGAREG_GRDC_ADDRESS, read_byte(ES, addr1)); addr1++; + addr1++; + outb(crtc_addr - 0x4 + 0xa, read_byte(ES, addr1)); addr1++; + } + if (CX & 2) { + write_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE, read_byte(ES, BX)); BX++; + write_word(BIOSMEM_SEG,BIOSMEM_NB_COLS, read_word(ES, BX)); BX += 2; + write_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE, read_word(ES, BX)); BX += 2; + write_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS, read_word(ES, BX)); BX += 2; + write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, read_byte(ES, BX)); BX++; + write_word(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT, read_word(ES, BX)); BX += 2; + write_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL, read_byte(ES, BX)); BX++; + write_byte(BIOSMEM_SEG,BIOSMEM_SWITCHES, read_byte(ES, BX)); BX++; + write_byte(BIOSMEM_SEG,BIOSMEM_MODESET_CTL, read_byte(ES, BX)); BX++; + write_word(BIOSMEM_SEG,BIOSMEM_CURSOR_TYPE, read_word(ES, BX)); BX += 2; + for(i=0;i<8;i++) { + write_word(BIOSMEM_SEG, BIOSMEM_CURSOR_POS+2*i, read_word(ES, BX)); + BX += 2; + } + write_word(BIOSMEM_SEG,BIOSMEM_CURRENT_START, read_word(ES, BX)); BX += 2; + write_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE, read_byte(ES, BX)); BX++; + /* current font */ + write_word(0, 0x1f * 4, read_word(ES, BX)); BX += 2; + write_word(0, 0x1f * 4 + 2, read_word(ES, BX)); BX += 2; + write_word(0, 0x43 * 4, read_word(ES, BX)); BX += 2; + write_word(0, 0x43 * 4 + 2, read_word(ES, BX)); BX += 2; + } + if (CX & 4) { + BX++; + v = read_byte(ES, BX); BX++; + outb(VGAREG_PEL_MASK, read_byte(ES, BX)); BX++; + // Set the whole dac always, from 0 + outb(VGAREG_DAC_WRITE_ADDRESS,0x00); + for(i=0;i<256*3;i++) { + outb(VGAREG_DAC_DATA, read_byte(ES, BX)); BX++; + } + BX++; + outb(VGAREG_DAC_WRITE_ADDRESS, v); + } + return BX; +} + +// ============================================================================================ +// +// Video Utils +// +// ============================================================================================ + +// -------------------------------------------------------------------------------------------- +static uint8_t find_vga_entry(uint8_t mode) +{ + uint8_t i,line=0xFF; + for(i=0;i<=MODE_MAX;i++) + if(vga_modes[i].svgamode==mode) + {line=i; + break; + } + return line; +} + +/* =========================================================== */ +/* + * Misc Utils +*/ +/* =========================================================== */ + +/* This function is used for planar VGA memory reads to defeat the + * optimizer. We must read exactly one byte, otherwise the screen + * may be corrupted. + */ +uint8_t readx_byte(uint16_t seg, uint16_t offset) +{ + return( *(seg:>(uint8_t *)offset) ); +} + +#ifdef VGA_DEBUG +void __cdecl unimplemented() +{ + printf("--> Unimplemented\n"); +} + +void __cdecl unknown() +{ + printf("--> Unknown int10\n"); +} + +#undef VBE_PRINTF_PORT +#define VBE_PRINTF_PORT 0x504 + +// -------------------------------------------------------------------------------------------- +void __cdecl printf(char *s, ...) +{ + char c; + Boolean in_format; + unsigned format_width, i; + uint16_t arg, digit, nibble; + uint16_t STACK_BASED *arg_ptr; + + arg_ptr = (uint16_t STACK_BASED *)&s; + + in_format = 0; + format_width = 0; + + while (c = *s) { + if (c == '%') { + in_format = 1; + format_width = 0; + } else if (in_format) { + if ((c >= '0') && (c <= '9')) { + format_width = (format_width * 10) + (c - '0'); + } else if (c == 'x') { + arg_ptr++; // increment to next arg + arg = *arg_ptr; + if (format_width == 0) + format_width = 4; + i = 0; + digit = format_width - 1; + for (i = 0; i < format_width; i++) { + nibble = (arg >> (4 * digit)) & 0x000f; + if (nibble <= 9) + outb(VBE_PRINTF_PORT, nibble + '0'); + else + outb(VBE_PRINTF_PORT, (nibble - 10) + 'A'); + digit--; + } + in_format = 0; + } + //else if (c == 'd') { + // in_format = 0; + // } + } else { + outb(VBE_PRINTF_PORT, c); + } + ++s; + } +} +#endif + +/// @todo rearrange, call only from VBE module? +extern void vbe_biosfn_return_controller_information(uint16_t STACK_BASED *AX, uint16_t ES, uint16_t DI); +extern void vbe_biosfn_return_mode_information(uint16_t STACK_BASED *AX, uint16_t CX, uint16_t ES, uint16_t DI); +extern void vbe_biosfn_set_mode(uint16_t STACK_BASED *AX, uint16_t BX, uint16_t ES, uint16_t DI); +extern void vbe_biosfn_save_restore_state(uint16_t STACK_BASED *AX, uint16_t CX, uint16_t DX, uint16_t ES, uint16_t STACK_BASED *BX); +extern void vbe_biosfn_get_set_scanline_length(uint16_t STACK_BASED *AX, uint16_t STACK_BASED *BX, uint16_t STACK_BASED *CX, uint16_t STACK_BASED *DX); +extern void private_biosfn_custom_mode(uint16_t STACK_BASED *AX, uint16_t STACK_BASED *BX, uint16_t STACK_BASED *CX, uint16_t STACK_BASED *DX); + + +// -------------------------------------------------------------------------------------------- +/* + * int10 main dispatcher + */ +void __cdecl int10_func(uint16_t DI, uint16_t SI, uint16_t BP, uint16_t SP, uint16_t BX, + uint16_t DX, uint16_t CX, uint16_t AX, uint16_t DS, uint16_t ES, uint16_t FLAGS) +{ + + // BIOS functions + switch(GET_AH()) + { + case 0x00: + biosfn_set_video_mode(GET_AL()); + switch(GET_AL()&0x7F) + {case 6: + SET_AL(0x3F); + break; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 7: + SET_AL(0x30); + break; + default: + SET_AL(0x20); + } + break; + case 0x01: + biosfn_set_cursor_shape(GET_CH(),GET_CL()); + break; + case 0x02: + biosfn_set_cursor_pos(GET_BH(),DX); + break; + case 0x03: + vga_get_cursor_pos(GET_BH(), &CX, &DX); + break; + case 0x04: + // Read light pen pos (unimplemented) +#ifdef VGA_DEBUG + unimplemented(); +#endif + AX=0x00; + BX=0x00; + CX=0x00; + DX=0x00; + break; + case 0x05: + biosfn_set_active_page(GET_AL()); + break; + case 0x06: + biosfn_scroll(GET_AL(),GET_BH(),GET_CH(),GET_CL(),GET_DH(),GET_DL(),0xFF,SCROLL_UP); + break; + case 0x07: + biosfn_scroll(GET_AL(),GET_BH(),GET_CH(),GET_CL(),GET_DH(),GET_DL(),0xFF,SCROLL_DOWN); + break; + case 0x08: + vga_read_char_attr(GET_BH(), &AX); + break; + case 0x09: + biosfn_write_char_attr(GET_AL(),GET_BH(),GET_BL(),CX); + break; + case 0x0A: + biosfn_write_char_only(GET_AL(),GET_BH(),GET_BL(),CX); + break; + case 0x0C: + biosfn_write_pixel(GET_BH(),GET_AL(),CX,DX); + break; + case 0x0D: + vga_read_pixel(GET_BH(), CX, DX, &AX); + break; + case 0x0E: + // Ralf Brown Interrupt list is WRONG on bh(page) + // We do output only on the current page ! +#ifdef VGA_DEBUG + printf("write_teletype %02x\n", GET_AL()); +#endif + + biosfn_write_teletype(GET_AL(),0xff,GET_BL(),NO_ATTR); + break; + case 0x10: + // All other functions of group AH=0x10 rewritten in assembler + biosfn_perform_gray_scale_summing(BX,CX); + break; + case 0x11: + switch(GET_AL()) + { + case 0x00: + case 0x10: + biosfn_load_text_user_pat(GET_AL(),ES,BP,CX,DX,GET_BL(),GET_BH()); + break; + case 0x01: + case 0x11: + biosfn_load_text_user_pat(GET_AL(), 0xC000, (uint16_t)vgafont14, 256, 0, GET_BL(), 14); + break; + case 0x02: + case 0x12: + biosfn_load_text_user_pat(GET_AL(), 0xC000, (uint16_t)vgafont8, 256, 0, GET_BL(), 8); + break; + case 0x03: + biosfn_set_font_block(GET_BL()); + break; + case 0x04: + case 0x14: + biosfn_load_text_user_pat(GET_AL(), 0xC000, (uint16_t)vgafont16, 256, 0, GET_BL(), 16); + break; + case 0x20: + biosfn_load_gfx_8_8_chars(ES,BP); + break; + case 0x21: + biosfn_load_gfx_user_chars(ES,BP,CX,GET_BL(),GET_DL()); + break; + case 0x22: + biosfn_load_gfx_8_14_chars(GET_BL(),GET_DL()); + break; + case 0x23: + biosfn_load_gfx_8_8_dd_chars(GET_BL(),GET_DL()); + break; + case 0x24: + biosfn_load_gfx_8_16_chars(GET_BL(),GET_DL()); + break; + case 0x30: + vga_get_font_info(GET_BH(), &ES, &BP, &CX, &DX); + break; +#ifdef VGA_DEBUG + default: + unknown(); +#endif + } + + break; + case 0x12: + switch(GET_BL()) + { + case 0x20: + biosfn_alternate_prtsc(); + break; + case 0x30: + if (GET_AL() <= 2) { + biosfn_set_txt_lines(GET_AL()); + SET_AL(0x12); + } + break; + case 0x34: /* CGA text cursor emulation control. */ + if (GET_AL() < 2) { + write_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL, + (read_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL) & ~1) | GET_AL()); + SET_AL(0x12); + } + else + SET_AL(0); /* Invalid argument. */ + break; + case 0x35: + biosfn_switch_video_interface(GET_AL(),ES,DX); + SET_AL(0x12); + break; + case 0x36: + biosfn_enable_video_refresh_control(GET_AL()); + SET_AL(0x12); + break; +#ifdef VGA_DEBUG + default: + unknown(); +#endif + } + break; + case 0x13: + biosfn_write_string(GET_AL(),GET_BH(),GET_BL(),CX,GET_DH(),GET_DL(),ES,BP); + break; + case 0x1B: + biosfn_read_state_info(BX,ES,DI); + SET_AL(0x1B); + break; + case 0x1C: + switch(GET_AL()) + { + case 0x00: + vga_get_video_state_size(CX,&BX); + break; + case 0x01: + biosfn_save_video_state(CX,ES,BX); + break; + case 0x02: + biosfn_restore_video_state(CX,ES,BX); + break; +#ifdef VGA_DEBUG + default: + unknown(); +#endif + } + SET_AL(0x1C); + break; + +#ifdef VBE + case 0x4f: + if (vbe_has_vbe_display()) { + switch(GET_AL()) + { + case 0x00: + vbe_biosfn_return_controller_information(&AX,ES,DI); + break; + case 0x01: + vbe_biosfn_return_mode_information(&AX,CX,ES,DI); + break; + case 0x02: + vbe_biosfn_set_mode(&AX,BX,ES,DI); + break; + case 0x04: + vbe_biosfn_save_restore_state(&AX, CX, DX, ES, &BX); + break; + case 0x06: + vbe_biosfn_get_set_scanline_length(&AX, &BX, &CX, &DX); + break; + case 0x09: + //FIXME +#ifdef VGA_DEBUG + unimplemented(); +#endif + // function failed + AX=0x100; + break; + case 0x0A: + //FIXME +#ifdef VGA_DEBUG + unimplemented(); +#endif + // function failed + AX=0x100; + break; + default: +#ifdef VGA_DEBUG + unknown(); +#endif + // function failed + AX=0x100; + } + } + else { + // No VBE display + AX=0x0100; + } + break; + case 0x56: + if (vbe_has_vbe_display()) { + switch(GET_AL()) + { + case 0x42: + private_biosfn_custom_mode(&AX,&BX,&CX,&DX); + break; + default: + AX=0x0100; + break; + } + } else { + // No VBE display + AX=0x0100; + } + break; +#endif + +#ifdef VGA_DEBUG + default: + unknown(); +#endif + } +} + +#ifdef VBE +//#include "vbe.c" +#endif + +#ifdef CIRRUS +#include "clext.c" +#endif + +// -------------------------------------------------------------------------------------------- + diff --git a/src/VBox/Devices/Graphics/BIOS/vgabios.h b/src/VBox/Devices/Graphics/BIOS/vgabios.h new file mode 100644 index 00000000..1c545710 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vgabios.h @@ -0,0 +1,68 @@ + +#ifndef VBOX_INCLUDED_SRC_Graphics_BIOS_vgabios_h +#define VBOX_INCLUDED_SRC_Graphics_BIOS_vgabios_h +#ifndef RT_WITHOUT_PRAGMA_ONCE +# pragma once +#endif + +/* Types */ +//typedef unsigned char Bit8u; +//typedef unsigned short Bit16u; +//typedef unsigned long Bit32u; +typedef unsigned short Boolean; + +/* Defines */ + +#define SET_AL(val8) AX = ((AX & 0xff00) | (val8)) +#define SET_BL(val8) BX = ((BX & 0xff00) | (val8)) +#define SET_CL(val8) CX = ((CX & 0xff00) | (val8)) +#define SET_DL(val8) DX = ((DX & 0xff00) | (val8)) +#define SET_AH(val8) AX = ((AX & 0x00ff) | ((val8) << 8)) +#define SET_BH(val8) BX = ((BX & 0x00ff) | ((val8) << 8)) +#define SET_CH(val8) CX = ((CX & 0x00ff) | ((val8) << 8)) +#define SET_DH(val8) DX = ((DX & 0x00ff) | ((val8) << 8)) + +#define GET_AL() ( AX & 0x00ff ) +#define GET_BL() ( BX & 0x00ff ) +#define GET_CL() ( CX & 0x00ff ) +#define GET_DL() ( DX & 0x00ff ) +#define GET_AH() ( AX >> 8 ) +#define GET_BH() ( BX >> 8 ) +#define GET_CH() ( CX >> 8 ) +#define GET_DH() ( DX >> 8 ) + +#define SET_CF() FLAGS |= 0x0001 +#define CLEAR_CF() FLAGS &= 0xfffe +#define GET_CF() (FLAGS & 0x0001) + +#define SET_ZF() FLAGS |= 0x0040 +#define CLEAR_ZF() FLAGS &= 0xffbf +#define GET_ZF() (FLAGS & 0x0040) + +#define SCROLL_DOWN 0 +#define SCROLL_UP 1 +#define NO_ATTR 2 +#define WITH_ATTR 3 + +#define SCREEN_SIZE(x,y) (((x*y*2)|0x00ff)+1) +#define SCREEN_MEM_START(x,y,p) ((((x*y*2)|0x00ff)+1)*p) +#define SCREEN_IO_START(x,y,p) ((((x*y)|0x00ff)+1)*p) + +/* Macro for stack-based pointers. */ +#define STACK_BASED _based(_segname("_STACK")) + +/* Output. */ +extern void __cdecl printf(char *s, ...); + +/* VGA BIOS routines called by VBE. */ +extern void biosfn_set_video_mode(uint8_t mode); +extern uint16_t biosfn_read_video_state_size2(uint16_t state); +extern uint16_t biosfn_save_video_state(uint16_t CX, uint16_t ES, uint16_t BX); +extern uint16_t biosfn_restore_video_state(uint16_t CX, uint16_t ES, uint16_t BX); + +/* Allow stand-alone compilation. */ +#ifndef VBOX_VERSION_STRING +#include +#endif + +#endif /* !VBOX_INCLUDED_SRC_Graphics_BIOS_vgabios_h */ diff --git a/src/VBox/Devices/Graphics/BIOS/vgadefs.h b/src/VBox/Devices/Graphics/BIOS/vgadefs.h new file mode 100644 index 00000000..5ae13ea4 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vgadefs.h @@ -0,0 +1,78 @@ + +#ifndef VBOX_INCLUDED_SRC_Graphics_BIOS_vgadefs_h +#define VBOX_INCLUDED_SRC_Graphics_BIOS_vgadefs_h +#ifndef RT_WITHOUT_PRAGMA_ONCE +# pragma once +#endif + +/* + * + * BIOS Memory + * + */ +#define BIOSMEM_SEG 0x40 + +#define BIOSMEM_INITIAL_MODE 0x10 +#define BIOSMEM_CURRENT_MODE 0x49 +#define BIOSMEM_NB_COLS 0x4A +#define BIOSMEM_PAGE_SIZE 0x4C +#define BIOSMEM_CURRENT_START 0x4E +#define BIOSMEM_CURSOR_POS 0x50 +#define BIOSMEM_CURSOR_TYPE 0x60 +#define BIOSMEM_CURRENT_PAGE 0x62 +#define BIOSMEM_CRTC_ADDRESS 0x63 +#define BIOSMEM_CURRENT_MSR 0x65 +#define BIOSMEM_CURRENT_PAL 0x66 +#define BIOSMEM_NB_ROWS 0x84 +#define BIOSMEM_CHAR_HEIGHT 0x85 +#define BIOSMEM_VIDEO_CTL 0x87 +#define BIOSMEM_SWITCHES 0x88 +#define BIOSMEM_MODESET_CTL 0x89 +#define BIOSMEM_DCC_INDEX 0x8A +#define BIOSMEM_VS_POINTER 0xA8 +#define BIOSMEM_VBE_FLAG 0xB9 +#define BIOSMEM_VBE_MODE 0xBA + + +/* + * + * VGA registers + * + */ +#define VGAREG_ACTL_ADDRESS 0x3c0 +#define VGAREG_ACTL_WRITE_DATA 0x3c0 +#define VGAREG_ACTL_READ_DATA 0x3c1 + +#define VGAREG_INPUT_STATUS 0x3c2 +#define VGAREG_WRITE_MISC_OUTPUT 0x3c2 +#define VGAREG_VIDEO_ENABLE 0x3c3 +#define VGAREG_SEQU_ADDRESS 0x3c4 +#define VGAREG_SEQU_DATA 0x3c5 + +#define VGAREG_PEL_MASK 0x3c6 +#define VGAREG_DAC_STATE 0x3c7 +#define VGAREG_DAC_READ_ADDRESS 0x3c7 +#define VGAREG_DAC_WRITE_ADDRESS 0x3c8 +#define VGAREG_DAC_DATA 0x3c9 + +#define VGAREG_READ_FEATURE_CTL 0x3ca +#define VGAREG_READ_MISC_OUTPUT 0x3cc + +#define VGAREG_GRDC_ADDRESS 0x3ce +#define VGAREG_GRDC_DATA 0x3cf + +#define VGAREG_MDA_CRTC_ADDRESS 0x3b4 +#define VGAREG_MDA_CRTC_DATA 0x3b5 +#define VGAREG_VGA_CRTC_ADDRESS 0x3d4 +#define VGAREG_VGA_CRTC_DATA 0x3d5 + +#define VGAREG_MDA_WRITE_FEATURE_CTL 0x3ba +#define VGAREG_VGA_WRITE_FEATURE_CTL 0x3da +#define VGAREG_ACTL_RESET 0x3da + +#define VGAREG_MDA_MODECTL 0x3b8 +#define VGAREG_CGA_MODECTL 0x3d8 +#define VGAREG_CGA_PALETTE 0x3d9 + +#endif /* !VBOX_INCLUDED_SRC_Graphics_BIOS_vgadefs_h */ + diff --git a/src/VBox/Devices/Graphics/BIOS/vgadefs.inc b/src/VBox/Devices/Graphics/BIOS/vgadefs.inc new file mode 100644 index 00000000..ef69fb5e --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vgadefs.inc @@ -0,0 +1,58 @@ +VGAREG_ACTL_ADDRESS EQU 3C0h +VGAREG_ACTL_WRITE_DATA EQU 3C0h +VGAREG_ACTL_READ_DATA EQU 3C1h +VGAREG_ACTL_RESET EQU 3DAh + +VGAREG_DAC_READ_ADDRESS EQU 3C7h +VGAREG_DAC_WRITE_ADDRESS EQU 3C8h +VGAREG_DAC_DATA EQU 3C9h + +VGAREG_PEL_MASK EQU 3C6h + +VGAREG_SEQU_ADDRESS EQU 3C4h +VGAREG_SEQU_DATA EQU 3C5h + +VGAREG_GRDC_ADDRESS EQU 3CEh +VGAREG_GRDC_DATA EQU 3CFh + +VGAREG_MDA_CRTC_ADDRESS EQU 3B4h +VGAREG_VGA_CRTC_ADDRESS EQU 3D4h +VGAREG_VGA_CRTC_DATA EQU 3D5h + + +VGAREG_READ_MISC_OUTPUT EQU 3CCh +VGAREG_WRITE_MISC_OUTPUT EQU 3C2h + +BIOSMEM_SEG EQU 40h +BIOSMEM_CURRENT_MODE EQU 49h +BIOSMEM_NB_COLS EQU 4Ah +BIOSMEM_CURRENT_PAGE EQU 62h +BIOSMEM_CRTC_ADDRESS EQU 63h +BIOSMEM_VIDEO_CTL EQU 87h +BIOSMEM_SWITCHES EQU 88h +BIOSMEM_MODESET_CTL EQU 89h +BIOSMEM_DCC_INDEX EQU 8Ah + +BIOSMEM_VBE_FLAG EQU 0B9h +BIOSMEM_VBE_MODE EQU 0BAh + +VBE_DISPI_IOPORT_INDEX EQU 1CEh +VBE_DISPI_IOPORT_DATA EQU 1CFh + +VBE_DISPI_INDEX_ID EQU 00h +VBE_DISPI_INDEX_XRES EQU 01h +VBE_DISPI_INDEX_YRES EQU 02h +VBE_DISPI_INDEX_BPP EQU 03h +VBE_DISPI_INDEX_ENABLE EQU 04h +VBE_DISPI_INDEX_BANK EQU 05h +VBE_DISPI_INDEX_VIRT_WIDTH EQU 06h +VBE_DISPI_INDEX_VIRT_HEIGHT EQU 07h +VBE_DISPI_INDEX_X_OFFSET EQU 08h +VBE_DISPI_INDEX_Y_OFFSET EQU 09h + +VBE_DISPI_ENABLED EQU 01h +VBE_DISPI_GETCAPS EQU 02h +VBE_DISPI_8BIT_DAC EQU 20h + +VBE_DISPI_ID0 EQU 0B0C0h +VBE_DISPI_ID4 EQU 0B0C4h diff --git a/src/VBox/Devices/Graphics/BIOS/vgafonts.h b/src/VBox/Devices/Graphics/BIOS/vgafonts.h new file mode 100644 index 00000000..0411a006 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vgafonts.h @@ -0,0 +1,878 @@ +/* + * These fonts come from ftp://ftp.simtel.net/pub/simtelnet/msdos/screen/fntcol16.zip + * The package is (c) by Joseph Gil + * The individual fonts are public domain + */ + +#ifndef VBOX_INCLUDED_SRC_Graphics_BIOS_vgafonts_h +#define VBOX_INCLUDED_SRC_Graphics_BIOS_vgafonts_h +#ifndef RT_WITHOUT_PRAGMA_ONCE +# pragma once +#endif + +static uint8_t vgafont8[256*8]= +{ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x7e, 0x81, 0xa5, 0x81, 0xbd, 0x99, 0x81, 0x7e, + 0x7e, 0xff, 0xdb, 0xff, 0xc3, 0xe7, 0xff, 0x7e, + 0x6c, 0xfe, 0xfe, 0xfe, 0x7c, 0x38, 0x10, 0x00, + 0x10, 0x38, 0x7c, 0xfe, 0x7c, 0x38, 0x10, 0x00, + 0x38, 0x7c, 0x38, 0xfe, 0xfe, 0x7c, 0x38, 0x7c, + 0x10, 0x10, 0x38, 0x7c, 0xfe, 0x7c, 0x38, 0x7c, + 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x00, 0x00, + 0xff, 0xff, 0xe7, 0xc3, 0xc3, 0xe7, 0xff, 0xff, + 0x00, 0x3c, 0x66, 0x42, 0x42, 0x66, 0x3c, 0x00, + 0xff, 0xc3, 0x99, 0xbd, 0xbd, 0x99, 0xc3, 0xff, // 10 + 0x0f, 0x07, 0x0f, 0x7d, 0xcc, 0xcc, 0xcc, 0x78, + 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x18, + 0x3f, 0x33, 0x3f, 0x30, 0x30, 0x70, 0xf0, 0xe0, + 0x7f, 0x63, 0x7f, 0x63, 0x63, 0x67, 0xe6, 0xc0, + 0x99, 0x5a, 0x3c, 0xe7, 0xe7, 0x3c, 0x5a, 0x99, + 0x80, 0xe0, 0xf8, 0xfe, 0xf8, 0xe0, 0x80, 0x00, + 0x02, 0x0e, 0x3e, 0xfe, 0x3e, 0x0e, 0x02, 0x00, + 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x7e, 0x3c, 0x18, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x66, 0x00, + 0x7f, 0xdb, 0xdb, 0x7b, 0x1b, 0x1b, 0x1b, 0x00, // 20 + 0x3e, 0x63, 0x38, 0x6c, 0x6c, 0x38, 0xcc, 0x78, + 0x00, 0x00, 0x00, 0x00, 0x7e, 0x7e, 0x7e, 0x00, + 0x18, 0x3c, 0x7e, 0x18, 0x7e, 0x3c, 0x18, 0xff, + 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x00, + 0x00, 0x18, 0x0c, 0xfe, 0x0c, 0x18, 0x00, 0x00, + 0x00, 0x30, 0x60, 0xfe, 0x60, 0x30, 0x00, 0x00, + 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xfe, 0x00, 0x00, + 0x00, 0x24, 0x66, 0xff, 0x66, 0x24, 0x00, 0x00, + 0x00, 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x00, 0x00, // 30 + 0x00, 0xff, 0xff, 0x7e, 0x3c, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x30, 0x78, 0x78, 0x30, 0x30, 0x00, 0x30, 0x00, + 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x6c, 0x6c, 0xfe, 0x6c, 0xfe, 0x6c, 0x6c, 0x00, + 0x30, 0x7c, 0xc0, 0x78, 0x0c, 0xf8, 0x30, 0x00, + 0x00, 0xc6, 0xcc, 0x18, 0x30, 0x66, 0xc6, 0x00, + 0x38, 0x6c, 0x38, 0x76, 0xdc, 0xcc, 0x76, 0x00, + 0x60, 0x60, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x30, 0x60, 0x60, 0x60, 0x30, 0x18, 0x00, // 40 + 0x60, 0x30, 0x18, 0x18, 0x18, 0x30, 0x60, 0x00, + 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, + 0x00, 0x30, 0x30, 0xfc, 0x30, 0x30, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x60, + 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00, + 0x06, 0x0c, 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, + 0x7c, 0xc6, 0xce, 0xde, 0xf6, 0xe6, 0x7c, 0x00, + 0x30, 0x70, 0x30, 0x30, 0x30, 0x30, 0xfc, 0x00, + 0x78, 0xcc, 0x0c, 0x38, 0x60, 0xcc, 0xfc, 0x00, // 50 + 0x78, 0xcc, 0x0c, 0x38, 0x0c, 0xcc, 0x78, 0x00, + 0x1c, 0x3c, 0x6c, 0xcc, 0xfe, 0x0c, 0x1e, 0x00, + 0xfc, 0xc0, 0xf8, 0x0c, 0x0c, 0xcc, 0x78, 0x00, + 0x38, 0x60, 0xc0, 0xf8, 0xcc, 0xcc, 0x78, 0x00, + 0xfc, 0xcc, 0x0c, 0x18, 0x30, 0x30, 0x30, 0x00, + 0x78, 0xcc, 0xcc, 0x78, 0xcc, 0xcc, 0x78, 0x00, + 0x78, 0xcc, 0xcc, 0x7c, 0x0c, 0x18, 0x70, 0x00, + 0x00, 0x30, 0x30, 0x00, 0x00, 0x30, 0x30, 0x00, + 0x00, 0x30, 0x30, 0x00, 0x00, 0x30, 0x30, 0x60, + 0x18, 0x30, 0x60, 0xc0, 0x60, 0x30, 0x18, 0x00, // 60 + 0x00, 0x00, 0xfc, 0x00, 0x00, 0xfc, 0x00, 0x00, + 0x60, 0x30, 0x18, 0x0c, 0x18, 0x30, 0x60, 0x00, + 0x78, 0xcc, 0x0c, 0x18, 0x30, 0x00, 0x30, 0x00, + 0x7c, 0xc6, 0xde, 0xde, 0xde, 0xc0, 0x78, 0x00, + 0x30, 0x78, 0xcc, 0xcc, 0xfc, 0xcc, 0xcc, 0x00, + 0xfc, 0x66, 0x66, 0x7c, 0x66, 0x66, 0xfc, 0x00, + 0x3c, 0x66, 0xc0, 0xc0, 0xc0, 0x66, 0x3c, 0x00, + 0xf8, 0x6c, 0x66, 0x66, 0x66, 0x6c, 0xf8, 0x00, + 0xfe, 0x62, 0x68, 0x78, 0x68, 0x62, 0xfe, 0x00, + 0xfe, 0x62, 0x68, 0x78, 0x68, 0x60, 0xf0, 0x00, // 70 + 0x3c, 0x66, 0xc0, 0xc0, 0xce, 0x66, 0x3e, 0x00, + 0xcc, 0xcc, 0xcc, 0xfc, 0xcc, 0xcc, 0xcc, 0x00, + 0x78, 0x30, 0x30, 0x30, 0x30, 0x30, 0x78, 0x00, + 0x1e, 0x0c, 0x0c, 0x0c, 0xcc, 0xcc, 0x78, 0x00, + 0xe6, 0x66, 0x6c, 0x78, 0x6c, 0x66, 0xe6, 0x00, + 0xf0, 0x60, 0x60, 0x60, 0x62, 0x66, 0xfe, 0x00, + 0xc6, 0xee, 0xfe, 0xfe, 0xd6, 0xc6, 0xc6, 0x00, + 0xc6, 0xe6, 0xf6, 0xde, 0xce, 0xc6, 0xc6, 0x00, + 0x38, 0x6c, 0xc6, 0xc6, 0xc6, 0x6c, 0x38, 0x00, + 0xfc, 0x66, 0x66, 0x7c, 0x60, 0x60, 0xf0, 0x00, // 80 + 0x78, 0xcc, 0xcc, 0xcc, 0xdc, 0x78, 0x1c, 0x00, + 0xfc, 0x66, 0x66, 0x7c, 0x6c, 0x66, 0xe6, 0x00, + 0x78, 0xcc, 0xe0, 0x70, 0x1c, 0xcc, 0x78, 0x00, + 0xfc, 0xb4, 0x30, 0x30, 0x30, 0x30, 0x78, 0x00, + 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xfc, 0x00, + 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x78, 0x30, 0x00, + 0xc6, 0xc6, 0xc6, 0xd6, 0xfe, 0xee, 0xc6, 0x00, + 0xc6, 0xc6, 0x6c, 0x38, 0x38, 0x6c, 0xc6, 0x00, + 0xcc, 0xcc, 0xcc, 0x78, 0x30, 0x30, 0x78, 0x00, + 0xfe, 0xc6, 0x8c, 0x18, 0x32, 0x66, 0xfe, 0x00, // 90 + 0x78, 0x60, 0x60, 0x60, 0x60, 0x60, 0x78, 0x00, + 0xc0, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x02, 0x00, + 0x78, 0x18, 0x18, 0x18, 0x18, 0x18, 0x78, 0x00, + 0x10, 0x38, 0x6c, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0x30, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0x76, 0x00, + 0xe0, 0x60, 0x60, 0x7c, 0x66, 0x66, 0xdc, 0x00, + 0x00, 0x00, 0x78, 0xcc, 0xc0, 0xcc, 0x78, 0x00, + 0x1c, 0x0c, 0x0c, 0x7c, 0xcc, 0xcc, 0x76, 0x00, // 100 + 0x00, 0x00, 0x78, 0xcc, 0xfc, 0xc0, 0x78, 0x00, + 0x38, 0x6c, 0x60, 0xf0, 0x60, 0x60, 0xf0, 0x00, + 0x00, 0x00, 0x76, 0xcc, 0xcc, 0x7c, 0x0c, 0xf8, + 0xe0, 0x60, 0x6c, 0x76, 0x66, 0x66, 0xe6, 0x00, + 0x30, 0x00, 0x70, 0x30, 0x30, 0x30, 0x78, 0x00, + 0x0c, 0x00, 0x0c, 0x0c, 0x0c, 0xcc, 0xcc, 0x78, + 0xe0, 0x60, 0x66, 0x6c, 0x78, 0x6c, 0xe6, 0x00, + 0x70, 0x30, 0x30, 0x30, 0x30, 0x30, 0x78, 0x00, + 0x00, 0x00, 0xcc, 0xfe, 0xfe, 0xd6, 0xc6, 0x00, + 0x00, 0x00, 0xf8, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, // 110 + 0x00, 0x00, 0x78, 0xcc, 0xcc, 0xcc, 0x78, 0x00, + 0x00, 0x00, 0xdc, 0x66, 0x66, 0x7c, 0x60, 0xf0, + 0x00, 0x00, 0x76, 0xcc, 0xcc, 0x7c, 0x0c, 0x1e, + 0x00, 0x00, 0xdc, 0x76, 0x66, 0x60, 0xf0, 0x00, + 0x00, 0x00, 0x7c, 0xc0, 0x78, 0x0c, 0xf8, 0x00, + 0x10, 0x30, 0x7c, 0x30, 0x30, 0x34, 0x18, 0x00, + 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, + 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0x78, 0x30, 0x00, + 0x00, 0x00, 0xc6, 0xd6, 0xfe, 0xfe, 0x6c, 0x00, + 0x00, 0x00, 0xc6, 0x6c, 0x38, 0x6c, 0xc6, 0x00, // 120 + 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0x7c, 0x0c, 0xf8, + 0x00, 0x00, 0xfc, 0x98, 0x30, 0x64, 0xfc, 0x00, + 0x1c, 0x30, 0x30, 0xe0, 0x30, 0x30, 0x1c, 0x00, + 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x00, + 0xe0, 0x30, 0x30, 0x1c, 0x30, 0x30, 0xe0, 0x00, + 0x76, 0xdc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0x00, + 0x78, 0xcc, 0xc0, 0xcc, 0x78, 0x18, 0x0c, 0x78, + 0x00, 0xcc, 0x00, 0xcc, 0xcc, 0xcc, 0x7e, 0x00, + 0x1c, 0x00, 0x78, 0xcc, 0xfc, 0xc0, 0x78, 0x00, // 130 + 0x7e, 0xc3, 0x3c, 0x06, 0x3e, 0x66, 0x3f, 0x00, + 0xcc, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0x7e, 0x00, + 0xe0, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0x7e, 0x00, + 0x30, 0x30, 0x78, 0x0c, 0x7c, 0xcc, 0x7e, 0x00, + 0x00, 0x00, 0x78, 0xc0, 0xc0, 0x78, 0x0c, 0x38, + 0x7e, 0xc3, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0xcc, 0x00, 0x78, 0xcc, 0xfc, 0xc0, 0x78, 0x00, + 0xe0, 0x00, 0x78, 0xcc, 0xfc, 0xc0, 0x78, 0x00, + 0xcc, 0x00, 0x70, 0x30, 0x30, 0x30, 0x78, 0x00, + 0x7c, 0xc6, 0x38, 0x18, 0x18, 0x18, 0x3c, 0x00, // 140 + 0xe0, 0x00, 0x70, 0x30, 0x30, 0x30, 0x78, 0x00, + 0xc6, 0x38, 0x6c, 0xc6, 0xfe, 0xc6, 0xc6, 0x00, + 0x30, 0x30, 0x00, 0x78, 0xcc, 0xfc, 0xcc, 0x00, + 0x1c, 0x00, 0xfc, 0x60, 0x78, 0x60, 0xfc, 0x00, + 0x00, 0x00, 0x7f, 0x0c, 0x7f, 0xcc, 0x7f, 0x00, + 0x3e, 0x6c, 0xcc, 0xfe, 0xcc, 0xcc, 0xce, 0x00, + 0x78, 0xcc, 0x00, 0x78, 0xcc, 0xcc, 0x78, 0x00, + 0x00, 0xcc, 0x00, 0x78, 0xcc, 0xcc, 0x78, 0x00, + 0x00, 0xe0, 0x00, 0x78, 0xcc, 0xcc, 0x78, 0x00, + 0x78, 0xcc, 0x00, 0xcc, 0xcc, 0xcc, 0x7e, 0x00, // 150 + 0x00, 0xe0, 0x00, 0xcc, 0xcc, 0xcc, 0x7e, 0x00, + 0x00, 0xcc, 0x00, 0xcc, 0xcc, 0x7c, 0x0c, 0xf8, + 0xc3, 0x18, 0x3c, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0xcc, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0x78, 0x00, + 0x18, 0x18, 0x7e, 0xc0, 0xc0, 0x7e, 0x18, 0x18, + 0x38, 0x6c, 0x64, 0xf0, 0x60, 0xe6, 0xfc, 0x00, + 0xcc, 0xcc, 0x78, 0xfc, 0x30, 0xfc, 0x30, 0x30, + 0xf8, 0xcc, 0xcc, 0xfa, 0xc6, 0xcf, 0xc6, 0xc7, + 0x0e, 0x1b, 0x18, 0x3c, 0x18, 0x18, 0xd8, 0x70, + 0x1c, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0x7e, 0x00, // 160 + 0x38, 0x00, 0x70, 0x30, 0x30, 0x30, 0x78, 0x00, + 0x00, 0x1c, 0x00, 0x78, 0xcc, 0xcc, 0x78, 0x00, + 0x00, 0x1c, 0x00, 0xcc, 0xcc, 0xcc, 0x7e, 0x00, + 0x00, 0xf8, 0x00, 0xf8, 0xcc, 0xcc, 0xcc, 0x00, + 0xfc, 0x00, 0xcc, 0xec, 0xfc, 0xdc, 0xcc, 0x00, + 0x3c, 0x6c, 0x6c, 0x3e, 0x00, 0x7e, 0x00, 0x00, + 0x38, 0x6c, 0x6c, 0x38, 0x00, 0x7c, 0x00, 0x00, + 0x30, 0x00, 0x30, 0x60, 0xc0, 0xcc, 0x78, 0x00, + 0x00, 0x00, 0x00, 0xfc, 0xc0, 0xc0, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xfc, 0x0c, 0x0c, 0x00, 0x00, // 170 + 0xc3, 0xc6, 0xcc, 0xde, 0x33, 0x66, 0xcc, 0x0f, + 0xc3, 0xc6, 0xcc, 0xdb, 0x37, 0x6f, 0xcf, 0x03, + 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x00, 0x33, 0x66, 0xcc, 0x66, 0x33, 0x00, 0x00, + 0x00, 0xcc, 0x66, 0x33, 0x66, 0xcc, 0x00, 0x00, + 0x22, 0x88, 0x22, 0x88, 0x22, 0x88, 0x22, 0x88, + 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, + 0xdb, 0x77, 0xdb, 0xee, 0xdb, 0x77, 0xdb, 0xee, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0x18, 0x18, // 180 + 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0xf6, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x36, 0x36, 0x36, + 0x00, 0x00, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, + 0x36, 0x36, 0xf6, 0x06, 0xf6, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0xfe, 0x06, 0xf6, 0x36, 0x36, 0x36, + 0x36, 0x36, 0xf6, 0x06, 0xfe, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0xfe, 0x00, 0x00, 0x00, + 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x00, 0x00, 0x00, // 190 + 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x1f, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0x37, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x37, 0x30, 0x3f, 0x00, 0x00, 0x00, // 200 + 0x00, 0x00, 0x3f, 0x30, 0x37, 0x36, 0x36, 0x36, + 0x36, 0x36, 0xf7, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0x00, 0xf7, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x37, 0x30, 0x37, 0x36, 0x36, 0x36, + 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x36, 0x36, 0xf7, 0x00, 0xf7, 0x36, 0x36, 0x36, + 0x18, 0x18, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xff, 0x00, 0xff, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0xff, 0x36, 0x36, 0x36, // 210 + 0x36, 0x36, 0x36, 0x36, 0x3f, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x3f, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0xff, 0x36, 0x36, 0x36, + 0x18, 0x18, 0xff, 0x18, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0xf8, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x18, 0x18, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, // 220 + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x76, 0xdc, 0xc8, 0xdc, 0x76, 0x00, + 0x00, 0x78, 0xcc, 0xf8, 0xcc, 0xf8, 0xc0, 0xc0, + 0x00, 0xfc, 0xcc, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, + 0x00, 0xfe, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, + 0xfc, 0xcc, 0x60, 0x30, 0x60, 0xcc, 0xfc, 0x00, + 0x00, 0x00, 0x7e, 0xd8, 0xd8, 0xd8, 0x70, 0x00, + 0x00, 0x66, 0x66, 0x66, 0x66, 0x7c, 0x60, 0xc0, // 230 + 0x00, 0x76, 0xdc, 0x18, 0x18, 0x18, 0x18, 0x00, + 0xfc, 0x30, 0x78, 0xcc, 0xcc, 0x78, 0x30, 0xfc, + 0x38, 0x6c, 0xc6, 0xfe, 0xc6, 0x6c, 0x38, 0x00, + 0x38, 0x6c, 0xc6, 0xc6, 0x6c, 0x6c, 0xee, 0x00, + 0x1c, 0x30, 0x18, 0x7c, 0xcc, 0xcc, 0x78, 0x00, + 0x00, 0x00, 0x7e, 0xdb, 0xdb, 0x7e, 0x00, 0x00, + 0x06, 0x0c, 0x7e, 0xdb, 0xdb, 0x7e, 0x60, 0xc0, + 0x38, 0x60, 0xc0, 0xf8, 0xc0, 0x60, 0x38, 0x00, + 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, + 0x00, 0xfc, 0x00, 0xfc, 0x00, 0xfc, 0x00, 0x00, // 240 + 0x30, 0x30, 0xfc, 0x30, 0x30, 0x00, 0xfc, 0x00, + 0x60, 0x30, 0x18, 0x30, 0x60, 0x00, 0xfc, 0x00, + 0x18, 0x30, 0x60, 0x30, 0x18, 0x00, 0xfc, 0x00, + 0x0e, 0x1b, 0x1b, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0xd8, 0xd8, 0x70, + 0x30, 0x30, 0x00, 0xfc, 0x00, 0x30, 0x30, 0x00, + 0x00, 0x76, 0xdc, 0x00, 0x76, 0xdc, 0x00, 0x00, + 0x38, 0x6c, 0x6c, 0x38, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, // 250 + 0x0f, 0x0c, 0x0c, 0x0c, 0xec, 0x6c, 0x3c, 0x1c, + 0x78, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, + 0x70, 0x18, 0x30, 0x60, 0x78, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x3c, 0x3c, 0x3c, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; +static uint8_t vgafont14[256*14]= +{ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7e, 0x81, 0xa5, 0x81, 0x81, 0xbd, 0x99, 0x81, 0x7e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7e, 0xff, 0xdb, 0xff, 0xff, 0xc3, 0xe7, 0xff, 0x7e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x6c, 0xfe, 0xfe, 0xfe, 0xfe, 0x7c, 0x38, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x10, 0x38, 0x7c, 0xfe, 0x7c, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x3c, 0xe7, 0xe7, 0xe7, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc3, 0xc3, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x66, 0x42, 0x42, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xc3, 0x99, 0xbd, 0xbd, 0x99, 0xc3, 0xff, 0xff, 0xff, 0xff, // 10 + 0x00, 0x00, 0x1e, 0x0e, 0x1a, 0x32, 0x78, 0xcc, 0xcc, 0xcc, 0x78, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3f, 0x33, 0x3f, 0x30, 0x30, 0x30, 0x70, 0xf0, 0xe0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7f, 0x63, 0x7f, 0x63, 0x63, 0x63, 0x67, 0xe7, 0xe6, 0xc0, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0xdb, 0x3c, 0xe7, 0x3c, 0xdb, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xfe, 0xf8, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x02, 0x06, 0x0e, 0x3e, 0xfe, 0x3e, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7f, 0xdb, 0xdb, 0xdb, 0x7b, 0x1b, 0x1b, 0x1b, 0x1b, 0x00, 0x00, 0x00, // 20 + 0x00, 0x7c, 0xc6, 0x60, 0x38, 0x6c, 0xc6, 0xc6, 0x6c, 0x38, 0x0c, 0xc6, 0x7c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xfe, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x7e, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x0c, 0xfe, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x30, 0x60, 0xfe, 0x60, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x28, 0x6c, 0xfe, 0x6c, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x7c, 0x7c, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, // 30 + 0x00, 0x00, 0x00, 0xfe, 0xfe, 0x7c, 0x7c, 0x38, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x3c, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x66, 0x66, 0x66, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x6c, 0x6c, 0xfe, 0x6c, 0x6c, 0x6c, 0xfe, 0x6c, 0x6c, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x7c, 0xc6, 0xc2, 0xc0, 0x7c, 0x06, 0x86, 0xc6, 0x7c, 0x18, 0x18, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xc2, 0xc6, 0x0c, 0x18, 0x30, 0x66, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0x6c, 0x38, 0x76, 0xdc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x30, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0c, 0x18, 0x30, 0x30, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x00, 0x00, 0x00, // 40 + 0x00, 0x00, 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x30, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x30, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x02, 0x06, 0x0c, 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xce, 0xde, 0xf6, 0xe6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x38, 0x78, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0x06, 0x0c, 0x18, 0x30, 0x60, 0xc6, 0xfe, 0x00, 0x00, 0x00, // 50 + 0x00, 0x00, 0x7c, 0xc6, 0x06, 0x06, 0x3c, 0x06, 0x06, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0c, 0x1c, 0x3c, 0x6c, 0xcc, 0xfe, 0x0c, 0x0c, 0x1e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0xc0, 0xc0, 0xc0, 0xfc, 0x06, 0x06, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x60, 0xc0, 0xc0, 0xfc, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0xc6, 0x06, 0x0c, 0x18, 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0x7c, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0x7e, 0x06, 0x06, 0x0c, 0x78, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x00, 0x00, 0x00, // 60 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0x0c, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xde, 0xde, 0xde, 0xdc, 0xc0, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0x66, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x66, 0xfc, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0xc2, 0xc0, 0xc0, 0xc0, 0xc2, 0x66, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf8, 0x6c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x6c, 0xf8, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0x66, 0x62, 0x68, 0x78, 0x68, 0x62, 0x66, 0xfe, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0x66, 0x62, 0x68, 0x78, 0x68, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, // 70 + 0x00, 0x00, 0x3c, 0x66, 0xc2, 0xc0, 0xc0, 0xde, 0xc6, 0x66, 0x3a, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0xcc, 0xcc, 0x78, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe6, 0x66, 0x6c, 0x6c, 0x78, 0x6c, 0x6c, 0x66, 0xe6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf0, 0x60, 0x60, 0x60, 0x60, 0x60, 0x62, 0x66, 0xfe, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xee, 0xfe, 0xfe, 0xd6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xe6, 0xf6, 0xfe, 0xde, 0xce, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x6c, 0x38, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0x66, 0x66, 0x66, 0x7c, 0x60, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, // 80 + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xd6, 0xde, 0x7c, 0x0c, 0x0e, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0x66, 0x66, 0x66, 0x7c, 0x6c, 0x66, 0x66, 0xe6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0x60, 0x38, 0x0c, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7e, 0x7e, 0x5a, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x6c, 0x38, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xd6, 0xd6, 0xfe, 0x7c, 0x6c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0x6c, 0x38, 0x38, 0x38, 0x6c, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0xc6, 0x8c, 0x18, 0x30, 0x60, 0xc2, 0xc6, 0xfe, 0x00, 0x00, 0x00, // 90 + 0x00, 0x00, 0x3c, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0xc0, 0xe0, 0x70, 0x38, 0x1c, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x3c, 0x00, 0x00, 0x00, + 0x10, 0x38, 0x6c, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, + 0x30, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0x60, 0x60, 0x78, 0x6c, 0x66, 0x66, 0x66, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xc0, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1c, 0x0c, 0x0c, 0x3c, 0x6c, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, // 100 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0x64, 0x60, 0xf0, 0x60, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xcc, 0xcc, 0xcc, 0x7c, 0x0c, 0xcc, 0x78, 0x00, + 0x00, 0x00, 0xe0, 0x60, 0x60, 0x6c, 0x76, 0x66, 0x66, 0x66, 0xe6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x06, 0x06, 0x00, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0xe0, 0x60, 0x60, 0x66, 0x6c, 0x78, 0x6c, 0x66, 0xe6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0xfe, 0xd6, 0xd6, 0xd6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, // 110 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x66, 0x66, 0x66, 0x7c, 0x60, 0x60, 0xf0, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xcc, 0xcc, 0xcc, 0x7c, 0x0c, 0x0c, 0x1e, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x76, 0x66, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0x70, 0x1c, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x10, 0x30, 0x30, 0xfc, 0x30, 0x30, 0x30, 0x36, 0x1c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xc6, 0xd6, 0xd6, 0xfe, 0x6c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x6c, 0x38, 0x38, 0x6c, 0xc6, 0x00, 0x00, 0x00, // 120 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0x7e, 0x06, 0x0c, 0xf8, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xcc, 0x18, 0x30, 0x66, 0xfe, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0e, 0x18, 0x18, 0x18, 0x70, 0x18, 0x18, 0x18, 0x0e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x70, 0x18, 0x18, 0x18, 0x0e, 0x18, 0x18, 0x18, 0x70, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x76, 0xdc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0xc2, 0xc0, 0xc0, 0xc2, 0x66, 0x3c, 0x0c, 0x06, 0x7c, 0x00, + 0x00, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x0c, 0x18, 0x30, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, // 130 + 0x00, 0x10, 0x38, 0x6c, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xcc, 0xcc, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x38, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x66, 0x60, 0x66, 0x3c, 0x0c, 0x06, 0x3c, 0x00, 0x00, + 0x00, 0x10, 0x38, 0x6c, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xcc, 0xcc, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x18, 0x3c, 0x66, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, // 140 + 0x00, 0x60, 0x30, 0x18, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0xc6, 0xc6, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x38, 0x6c, 0x38, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x18, 0x30, 0x60, 0x00, 0xfe, 0x66, 0x60, 0x7c, 0x60, 0x66, 0xfe, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xcc, 0x76, 0x36, 0x7e, 0xd8, 0xd8, 0x6e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3e, 0x6c, 0xcc, 0xcc, 0xfe, 0xcc, 0xcc, 0xcc, 0xce, 0x00, 0x00, 0x00, + 0x00, 0x10, 0x38, 0x6c, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x30, 0x78, 0xcc, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, // 150 + 0x00, 0x60, 0x30, 0x18, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0x7e, 0x06, 0x0c, 0x78, 0x00, + 0x00, 0xc6, 0xc6, 0x38, 0x6c, 0xc6, 0xc6, 0xc6, 0xc6, 0x6c, 0x38, 0x00, 0x00, 0x00, + 0x00, 0xc6, 0xc6, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x18, 0x18, 0x3c, 0x66, 0x60, 0x60, 0x66, 0x3c, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x64, 0x60, 0xf0, 0x60, 0x60, 0x60, 0xe6, 0xfc, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0xf8, 0xcc, 0xcc, 0xf8, 0xc4, 0xcc, 0xde, 0xcc, 0xcc, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x0e, 0x1b, 0x18, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x18, 0xd8, 0x70, 0x00, + 0x00, 0x18, 0x30, 0x60, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, // 160 + 0x00, 0x0c, 0x18, 0x30, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x18, 0x30, 0x60, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x18, 0x30, 0x60, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x76, 0xdc, 0x00, 0xdc, 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, + 0x76, 0xdc, 0x00, 0xc6, 0xe6, 0xf6, 0xfe, 0xde, 0xce, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x3c, 0x6c, 0x6c, 0x3e, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x6c, 0x38, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x30, 0x00, 0x30, 0x30, 0x60, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, // 170 + 0x00, 0xc0, 0xc0, 0xc6, 0xcc, 0xd8, 0x30, 0x60, 0xdc, 0x86, 0x0c, 0x18, 0x3e, 0x00, + 0x00, 0xc0, 0xc0, 0xc6, 0xcc, 0xd8, 0x30, 0x66, 0xce, 0x9e, 0x3e, 0x06, 0x06, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x3c, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x36, 0x6c, 0xd8, 0x6c, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xd8, 0x6c, 0x36, 0x6c, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, + 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, + 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, // 180 + 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 190 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 200 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, // 210 + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, // 220 + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0xd8, 0xd8, 0xdc, 0x76, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xfc, 0xc6, 0xc6, 0xfc, 0xc0, 0xc0, 0x40, 0x00, + 0x00, 0x00, 0xfe, 0xc6, 0xc6, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0xc6, 0x60, 0x30, 0x18, 0x30, 0x60, 0xc6, 0xfe, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xd8, 0xd8, 0xd8, 0xd8, 0x70, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x7c, 0x60, 0x60, 0xc0, 0x00, 0x00, // 230 + 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7e, 0x18, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0x6c, 0x38, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xc6, 0x6c, 0x6c, 0x6c, 0xee, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1e, 0x30, 0x18, 0x0c, 0x3e, 0x66, 0x66, 0x66, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xdb, 0xdb, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x03, 0x06, 0x7e, 0xdb, 0xdb, 0xf3, 0x7e, 0x60, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1c, 0x30, 0x60, 0x60, 0x7c, 0x60, 0x60, 0x30, 0x1c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0xfe, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, // 240 + 0x00, 0x00, 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x18, 0x0c, 0x06, 0x0c, 0x18, 0x30, 0x00, 0x7e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0c, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0c, 0x00, 0x7e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0e, 0x1b, 0x1b, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xd8, 0xd8, 0x70, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x7e, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0x00, 0x76, 0xdc, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x6c, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 250 + 0x00, 0x0f, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0xec, 0x6c, 0x3c, 0x1c, 0x00, 0x00, 0x00, + 0x00, 0xd8, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x70, 0xd8, 0x30, 0x60, 0xc8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; +static uint8_t vgafont16[256*16]= +{ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7e, 0x81, 0xa5, 0x81, 0x81, 0xbd, 0x99, 0x81, 0x81, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7e, 0xff, 0xdb, 0xff, 0xff, 0xc3, 0xe7, 0xff, 0xff, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x6c, 0xfe, 0xfe, 0xfe, 0xfe, 0x7c, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x7c, 0xfe, 0x7c, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0xe7, 0xe7, 0xe7, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc3, 0xc3, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x66, 0x42, 0x42, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, // 10 + 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x99, 0xbd, 0xbd, 0x99, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x1e, 0x0e, 0x1a, 0x32, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x78, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3f, 0x33, 0x3f, 0x30, 0x30, 0x30, 0x30, 0x70, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7f, 0x63, 0x7f, 0x63, 0x63, 0x63, 0x63, 0x67, 0xe7, 0xe6, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x18, 0x18, 0xdb, 0x3c, 0xe7, 0x3c, 0xdb, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x06, 0x0e, 0x1e, 0x3e, 0xfe, 0x3e, 0x1e, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, // 20 + 0x00, 0x00, 0x7f, 0xdb, 0xdb, 0xdb, 0x7b, 0x1b, 0x1b, 0x1b, 0x1b, 0x1b, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x7c, 0xc6, 0x60, 0x38, 0x6c, 0xc6, 0xc6, 0x6c, 0x38, 0x0c, 0xc6, 0x7c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x0c, 0xfe, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x60, 0xfe, 0x60, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x6c, 0xfe, 0x6c, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 30 + 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x7c, 0x7c, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0x7c, 0x7c, 0x38, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x3c, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x66, 0x66, 0x66, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x6c, 0x6c, 0xfe, 0x6c, 0x6c, 0x6c, 0xfe, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x7c, 0xc6, 0xc2, 0xc0, 0x7c, 0x06, 0x06, 0x86, 0xc6, 0x7c, 0x18, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xc2, 0xc6, 0x0c, 0x18, 0x30, 0x60, 0xc6, 0x86, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0x6c, 0x38, 0x76, 0xdc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x30, 0x30, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 40 + 0x00, 0x00, 0x0c, 0x18, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x0c, 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xd6, 0xd6, 0xc6, 0xc6, 0x6c, 0x38, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x38, 0x78, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7e, 0x00, 0x00, 0x00, 0x00, // 50 + 0x00, 0x00, 0x7c, 0xc6, 0x06, 0x0c, 0x18, 0x30, 0x60, 0xc0, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0x06, 0x06, 0x3c, 0x06, 0x06, 0x06, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0c, 0x1c, 0x3c, 0x6c, 0xcc, 0xfe, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0xc0, 0xc0, 0xc0, 0xfc, 0x06, 0x06, 0x06, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x60, 0xc0, 0xc0, 0xfc, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0xc6, 0x06, 0x06, 0x0c, 0x18, 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0x7e, 0x06, 0x06, 0x06, 0x0c, 0x78, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, // 60 + 0x00, 0x00, 0x00, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0x0c, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xde, 0xde, 0xde, 0xdc, 0xc0, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0x66, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x66, 0x66, 0xfc, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0xc2, 0xc0, 0xc0, 0xc0, 0xc0, 0xc2, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf8, 0x6c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x6c, 0xf8, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0x66, 0x62, 0x68, 0x78, 0x68, 0x60, 0x62, 0x66, 0xfe, 0x00, 0x00, 0x00, 0x00, // 70 + 0x00, 0x00, 0xfe, 0x66, 0x62, 0x68, 0x78, 0x68, 0x60, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0xc2, 0xc0, 0xc0, 0xde, 0xc6, 0xc6, 0x66, 0x3a, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0xcc, 0xcc, 0xcc, 0x78, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe6, 0x66, 0x66, 0x6c, 0x78, 0x78, 0x6c, 0x66, 0x66, 0xe6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xf0, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x62, 0x66, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xee, 0xfe, 0xfe, 0xd6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xe6, 0xf6, 0xfe, 0xde, 0xce, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, // 80 + 0x00, 0x00, 0xfc, 0x66, 0x66, 0x66, 0x7c, 0x60, 0x60, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xd6, 0xde, 0x7c, 0x0c, 0x0e, 0x00, 0x00, + 0x00, 0x00, 0xfc, 0x66, 0x66, 0x66, 0x7c, 0x6c, 0x66, 0x66, 0x66, 0xe6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0x60, 0x38, 0x0c, 0x06, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x7e, 0x7e, 0x5a, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x6c, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xd6, 0xd6, 0xd6, 0xfe, 0xee, 0x6c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0xc6, 0x6c, 0x7c, 0x38, 0x38, 0x7c, 0x6c, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, // 90 + 0x00, 0x00, 0xfe, 0xc6, 0x86, 0x0c, 0x18, 0x30, 0x60, 0xc2, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0x70, 0x38, 0x1c, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x38, 0x6c, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, + 0x30, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0x60, 0x60, 0x78, 0x6c, 0x66, 0x66, 0x66, 0x66, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xc0, 0xc0, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, // 100 + 0x00, 0x00, 0x1c, 0x0c, 0x0c, 0x3c, 0x6c, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0x64, 0x60, 0xf0, 0x60, 0x60, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x7c, 0x0c, 0xcc, 0x78, 0x00, + 0x00, 0x00, 0xe0, 0x60, 0x60, 0x6c, 0x76, 0x66, 0x66, 0x66, 0x66, 0xe6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x06, 0x06, 0x00, 0x0e, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0xe0, 0x60, 0x60, 0x66, 0x6c, 0x78, 0x78, 0x6c, 0x66, 0xe6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0xfe, 0xd6, 0xd6, 0xd6, 0xd6, 0xc6, 0x00, 0x00, 0x00, 0x00, // 110 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7c, 0x60, 0x60, 0xf0, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x7c, 0x0c, 0x0c, 0x1e, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x76, 0x66, 0x60, 0x60, 0x60, 0xf0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xc6, 0x60, 0x38, 0x0c, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x10, 0x30, 0x30, 0xfc, 0x30, 0x30, 0x30, 0x30, 0x36, 0x1c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xc6, 0xd6, 0xd6, 0xd6, 0xfe, 0x6c, 0x00, 0x00, 0x00, 0x00, // 120 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x6c, 0x38, 0x38, 0x38, 0x6c, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7e, 0x06, 0x0c, 0xf8, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xcc, 0x18, 0x30, 0x60, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0e, 0x18, 0x18, 0x18, 0x70, 0x18, 0x18, 0x18, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x70, 0x18, 0x18, 0x18, 0x0e, 0x18, 0x18, 0x18, 0x18, 0x70, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x76, 0xdc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0xc2, 0xc0, 0xc0, 0xc0, 0xc2, 0x66, 0x3c, 0x0c, 0x06, 0x7c, 0x00, 0x00, + 0x00, 0x00, 0xcc, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, // 130 + 0x00, 0x0c, 0x18, 0x30, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x10, 0x38, 0x6c, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xcc, 0x00, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x38, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x66, 0x60, 0x60, 0x66, 0x3c, 0x0c, 0x06, 0x3c, 0x00, 0x00, 0x00, + 0x00, 0x10, 0x38, 0x6c, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0x00, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0x7c, 0xc6, 0xfe, 0xc0, 0xc0, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x00, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, // 140 + 0x00, 0x18, 0x3c, 0x66, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xc6, 0x00, 0x10, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x38, 0x6c, 0x38, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x30, 0x60, 0x00, 0xfe, 0x66, 0x60, 0x7c, 0x60, 0x60, 0x66, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x76, 0x36, 0x7e, 0xd8, 0xd8, 0x6e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3e, 0x6c, 0xcc, 0xcc, 0xfe, 0xcc, 0xcc, 0xcc, 0xcc, 0xce, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x10, 0x38, 0x6c, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, // 150 + 0x00, 0x30, 0x78, 0xcc, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x30, 0x18, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc6, 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7e, 0x06, 0x0c, 0x78, 0x00, + 0x00, 0xc6, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xc6, 0x00, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x18, 0x18, 0x3c, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3c, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x64, 0x60, 0xf0, 0x60, 0x60, 0x60, 0x60, 0xe6, 0xfc, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xf8, 0xcc, 0xcc, 0xf8, 0xc4, 0xcc, 0xde, 0xcc, 0xcc, 0xcc, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0e, 0x1b, 0x18, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0xd8, 0x70, 0x00, 0x00, // 160 + 0x00, 0x18, 0x30, 0x60, 0x00, 0x78, 0x0c, 0x7c, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0c, 0x18, 0x30, 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x18, 0x30, 0x60, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x18, 0x30, 0x60, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x76, 0xdc, 0x00, 0xdc, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, + 0x76, 0xdc, 0x00, 0xc6, 0xe6, 0xf6, 0xfe, 0xde, 0xce, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x3c, 0x6c, 0x6c, 0x3e, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x6c, 0x38, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x30, 0x00, 0x30, 0x30, 0x60, 0xc0, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, // 170 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xc0, 0xc0, 0xc2, 0xc6, 0xcc, 0x18, 0x30, 0x60, 0xdc, 0x86, 0x0c, 0x18, 0x3e, 0x00, 0x00, + 0x00, 0xc0, 0xc0, 0xc2, 0xc6, 0xcc, 0x18, 0x30, 0x66, 0xce, 0x9e, 0x3e, 0x06, 0x06, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x3c, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x6c, 0xd8, 0x6c, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x6c, 0x36, 0x6c, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, + 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, + 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, // 180 + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 190 + 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, // 200 + 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, // 210 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, // 220 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0xd8, 0xd8, 0xd8, 0xdc, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x78, 0xcc, 0xcc, 0xcc, 0xd8, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xfe, 0xc6, 0xc6, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xfe, 0xc6, 0x60, 0x30, 0x18, 0x30, 0x60, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0x70, 0x00, 0x00, 0x00, 0x00, // 230 + 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7c, 0x60, 0x60, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x7e, 0x18, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0x6c, 0x38, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xc6, 0x6c, 0x6c, 0x6c, 0x6c, 0xee, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1e, 0x30, 0x18, 0x0c, 0x3e, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xdb, 0xdb, 0xdb, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x06, 0x7e, 0xdb, 0xdb, 0xf3, 0x7e, 0x60, 0xc0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x1c, 0x30, 0x60, 0x60, 0x7c, 0x60, 0x60, 0x60, 0x30, 0x1c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0xc6, 0x00, 0x00, 0x00, 0x00, // 240 + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0xfe, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x30, 0x18, 0x0c, 0x06, 0x0c, 0x18, 0x30, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x0c, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0c, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0e, 0x1b, 0x1b, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xd8, 0xd8, 0xd8, 0x70, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x7e, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0x00, 0x76, 0xdc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x38, 0x6c, 0x6c, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 250 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0f, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0xec, 0x6c, 0x6c, 0x3c, 0x1c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xd8, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x70, 0xd8, 0x30, 0x60, 0xc8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; +static uint8_t vgafont14alt[20*15+1]= +{ + 0x1d, + 0x00, 0x00, 0x00, 0x00, 0x24, 0x66, 0xff, 0x66, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x22, + 0x00, 0x63, 0x63, 0x63, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x2b, + 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0xff, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x2d, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x4d, + 0x00, 0x00, 0xc3, 0xe7, 0xff, 0xdb, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0x00, 0x00, 0x00, + 0x54, + 0x00, 0x00, 0xff, 0xdb, 0x99, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x56, + 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x00, 0x00, 0x00, + 0x57, + 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xc3, 0xdb, 0xdb, 0xff, 0x66, 0x66, 0x00, 0x00, 0x00, + 0x58, + 0x00, 0x00, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0xc3, 0xc3, 0x00, 0x00, 0x00, + 0x59, + 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, + 0x5a, + 0x00, 0x00, 0xff, 0xc3, 0x86, 0x0c, 0x18, 0x30, 0x61, 0xc3, 0xff, 0x00, 0x00, 0x00, + 0x6d, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xff, 0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, + 0x76, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x00, 0x00, 0x00, + 0x77, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xc3, 0xdb, 0xdb, 0xff, 0x66, 0x00, 0x00, 0x00, + 0x91, + 0x00, 0x00, 0x00, 0x00, 0x6e, 0x3b, 0x1b, 0x7e, 0xd8, 0xdc, 0x77, 0x00, 0x00, 0x00, + 0x9b, + 0x00, 0x18, 0x18, 0x7e, 0xc3, 0xc0, 0xc0, 0xc3, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x9d, + 0x00, 0x00, 0xc3, 0x66, 0x3c, 0x18, 0xff, 0x18, 0xff, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x9e, + 0x00, 0xfc, 0x66, 0x66, 0x7c, 0x62, 0x66, 0x6f, 0x66, 0x66, 0xf3, 0x00, 0x00, 0x00, + 0xf1, + 0x00, 0x00, 0x18, 0x18, 0x18, 0xff, 0x18, 0x18, 0x18, 0x00, 0xff, 0x00, 0x00, 0x00, + 0xf6, + 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0xff, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, + 0x00 +}; +static uint8_t vgafont16alt[19*17+1]= +{ + 0x1d, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x66, 0xff, 0x66, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x30, + 0x00, 0x00, 0x3c, 0x66, 0xc3, 0xc3, 0xdb, 0xdb, 0xc3, 0xc3, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x4d, + 0x00, 0x00, 0xc3, 0xe7, 0xff, 0xff, 0xdb, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0x00, 0x00, 0x00, 0x00, + 0x54, + 0x00, 0x00, 0xff, 0xdb, 0x99, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x56, + 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x57, + 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xc3, 0xc3, 0xdb, 0xdb, 0xff, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, + 0x58, + 0x00, 0x00, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x18, 0x3c, 0x66, 0xc3, 0xc3, 0x00, 0x00, 0x00, 0x00, + 0x59, + 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x5a, + 0x00, 0x00, 0xff, 0xc3, 0x86, 0x0c, 0x18, 0x30, 0x60, 0xc1, 0xc3, 0xff, 0x00, 0x00, 0x00, 0x00, + 0x6d, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xff, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, + 0x76, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xc3, 0x66, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x77, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xc3, 0xc3, 0xdb, 0xdb, 0xff, 0x66, 0x00, 0x00, 0x00, 0x00, + 0x78, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0xc3, 0x00, 0x00, 0x00, 0x00, + 0x91, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x6e, 0x3b, 0x1b, 0x7e, 0xd8, 0xdc, 0x77, 0x00, 0x00, 0x00, 0x00, + 0x9b, + 0x00, 0x18, 0x18, 0x7e, 0xc3, 0xc0, 0xc0, 0xc0, 0xc3, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x9d, + 0x00, 0x00, 0xc3, 0x66, 0x3c, 0x18, 0xff, 0x18, 0xff, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x9e, + 0x00, 0xfc, 0x66, 0x66, 0x7c, 0x62, 0x66, 0x6f, 0x66, 0x66, 0x66, 0xf3, 0x00, 0x00, 0x00, 0x00, + 0xab, + 0x00, 0xc0, 0xc0, 0xc2, 0xc6, 0xcc, 0x18, 0x30, 0x60, 0xce, 0x9b, 0x06, 0x0c, 0x1f, 0x00, 0x00, + 0xac, + 0x00, 0xc0, 0xc0, 0xc2, 0xc6, 0xcc, 0x18, 0x30, 0x66, 0xce, 0x96, 0x3e, 0x06, 0x06, 0x00, 0x00, + 0x00 +}; + +#endif /* !VBOX_INCLUDED_SRC_Graphics_BIOS_vgafonts_h */ + diff --git a/src/VBox/Devices/Graphics/BIOS/vgarom.asm b/src/VBox/Devices/Graphics/BIOS/vgarom.asm new file mode 100644 index 00000000..f5bffcc4 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vgarom.asm @@ -0,0 +1,1102 @@ +;; ============================================================================================ +;; +;; Copyright (C) 2001,2002 the LGPL VGABios developers Team +;; +;; This library is free software; you can redistribute it and/or +;; modify it under the terms of the GNU Lesser General Public +;; License as published by the Free Software Foundation; either +;; version 2 of the License, or (at your option) any later version. +;; +;; This library 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 +;; Lesser General Public License for more details. +;; +;; You should have received a copy of the GNU Lesser General Public +;; License along with this library; if not, write to the Free Software +;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +;; +;; ============================================================================================ +;; +;; This VGA Bios is specific to the plex86/bochs Emulated VGA card. +;; You can NOT drive any physical vga card with it. +;; +;; ============================================================================================ +;; + + +; Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice +; other than GPL or LGPL is available it will apply instead, Oracle elects to use only +; the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where +; a choice of LGPL license versions is made available with the language indicating +; that LGPLv2 or any later version may be used, or where a choice of which version +; of the LGPL is applied is otherwise unspecified. + +include vgadefs.inc +include commondefs.inc + +public vgabios_int10_handler + +VGAROM segment public 'CODE' + +; Implemented in C +extrn _int10_func:near +extrn _vgabios_init_func:near + +ifdef VBE +; Implemented in separate assembly module +extrn vbe_biosfn_return_current_mode:near +extrn vbe_biosfn_display_window_control:near +extrn vbe_biosfn_set_get_display_start:near +extrn vbe_biosfn_set_get_dac_palette_format:near +extrn vbe_biosfn_set_get_palette_data:near +extrn vbe_biosfn_return_protected_mode_interface:near +endif + +ifdef VGA_DEBUG +extrn _int10_debugmsg:near +extrn _printf:near +extrn _unimplemented:near +extrn _unknown:near +endif + +vgabios_start: + +db 055h, 0AAh ; ROM signature, required for expansion ROMs +db 40h ; ROM module length in units of 512 bytes */ + + +vgabios_entry_point: + + jmp vgabios_init + + org 1Eh + + db 'IBM',0 + +vgabios_init: +;; We have to set ds to access the right data segment + push cs + pop ds + cld + jmp _vgabios_init_func + +;; +;; int10 handled here +;; + +SET_DEFAULT_CPU_286 + +vgabios_int10_handler: + pushf +ifdef VGA_DEBUG + push es + push ds + DO_pusha + push cs + pop ds + cld + call _int10_debugmsg + DO_popa + pop ds + pop es +endif + cmp ah, 0Fh + jne int10_test_1A + call biosfn_get_video_mode + jmp int10_end +int10_test_1A: + cmp ah, 1Ah + jne int10_test_0B + call biosfn_group_1A + jmp int10_end +int10_test_0B: + cmp ah, 0Bh + jne int10_test_1103 + call biosfn_group_0B + jmp int10_end +int10_test_1103: + cmp ax, 1103h + jne int10_test_12 + call biosfn_set_text_block_specifier + jmp int10_end +int10_test_12: + cmp ah, 12h + jne int10_test_101B + cmp bl, 10h + jne int10_test_BL30 + call biosfn_get_ega_info + jmp int10_end +int10_test_BL30: + cmp bl, 30h + jne int10_test_BL31 + call biosfn_select_vert_res + jmp int10_end +int10_test_BL31: + cmp bl, 31h + jne int10_test_BL32 + call biosfn_enable_default_palette_loading + jmp int10_end +int10_test_BL32: + cmp bl, 32h + jne int10_test_BL33 + call biosfn_enable_video_addressing + jmp int10_end +int10_test_BL33: + cmp bl, 33h + jne int10_test_BL34 + call biosfn_enable_grayscale_summing + jmp int10_end +int10_test_BL34: + cmp bl, 34h + jne int10_normal + call biosfn_enable_cursor_emulation + jmp int10_end +int10_test_101B: + cmp ax, 101Bh + je int10_normal + cmp ah, 10h +ifndef VBE + jne int10_normal +else + jne int10_test_4F +endif + call biosfn_group_10 + jmp int10_end +ifdef VBE +int10_test_4F: + cmp ah, 4Fh + jne int10_normal + cmp al, 3 + jne int10_test_vbe_05 + call vbe_biosfn_return_current_mode + jmp int10_end +int10_test_vbe_05: + cmp al, 5 + jne int10_test_vbe_07 + call vbe_biosfn_display_window_control + jmp int10_end +int10_test_vbe_07: + cmp al, 7 + jne int10_test_vbe_08 + call vbe_biosfn_set_get_display_start + jmp int10_end +int10_test_vbe_08: + cmp al, 8 + jne int10_test_vbe_09 + call vbe_biosfn_set_get_dac_palette_format + jmp int10_end +int10_test_vbe_09: + cmp al, 9 + jne int10_test_vbe_0A + call vbe_biosfn_set_get_palette_data + jmp int10_end +int10_test_vbe_0A: + cmp al, 0Ah + jne int10_normal + call vbe_biosfn_return_protected_mode_interface + jmp int10_end +endif + +int10_normal: + push es + push ds + DO_pusha + +;; We have to set ds to access the right data segment + push cs + pop ds + cld + call _int10_func + + DO_popa + pop ds + pop es +int10_end: + popf + iret + +;;-------------------------------------------------------------------------------------------- + +biosfn_group_0B: + cmp bh, 0 + je biosfn_set_border_color + cmp bh, 1 + je biosfn_set_palette +ifdef VGA_DEBUG + call _unknown +endif + ret +biosfn_set_border_color: + push ax + push bx + push cx + push dx + push ds + mov dx, BIOSMEM_SEG + mov ds, dx + mov dx, VGAREG_ACTL_RESET + in al, dx + cmp byte ptr ds:[BIOSMEM_CURRENT_MODE], 3 + jbe set_border_done + mov dx, VGAREG_ACTL_ADDRESS + mov al, 00h + out dx, al + mov al, bl + and al, 0Fh + test al, 08h + jz set_low_border + add al, 08h +set_low_border: + out dx, al + mov cl, 1 + and bl, 10h +set_intensity_loop: + mov dx, VGAREG_ACTL_ADDRESS + mov al, cl + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + and al, 0EFh + or al, bl + mov dx, VGAREG_ACTL_ADDRESS + out dx, al + inc cl + cmp cl, 4 + jne set_intensity_loop +set_border_done: + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop ds + pop dx + pop cx + pop bx + pop ax + ret +biosfn_set_palette: + push ax + push bx + push cx + push dx + mov dx, VGAREG_ACTL_RESET + in al, dx + mov cl, 01 + and bl, 01 +set_cga_palette_loop: + mov dx, VGAREG_ACTL_ADDRESS + mov al, cl + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + and al, 0FEh + or al, bl + mov dx, VGAREG_ACTL_ADDRESS + out dx, al + inc cl + cmp cl, 4 + jne set_cga_palette_loop + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop cx + pop bx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_get_video_mode: + push ds + mov ax, BIOSMEM_SEG + mov ds, ax + push bx + mov bx, BIOSMEM_CURRENT_PAGE + mov al, [bx] + pop bx + mov bh, al + push bx + mov bx, BIOSMEM_VIDEO_CTL + mov ah, [bx] + and ah, 80h + mov bx, BIOSMEM_CURRENT_MODE + mov al, [bx] + or al, ah + mov bx, BIOSMEM_NB_COLS + mov ah, [bx] + pop bx + pop ds + ret + +;-------------------------------------------------------------------------------------------- + +biosfn_group_10: + cmp al, 0 + jne int10_test_1001 + jmp biosfn_set_single_palette_reg +int10_test_1001: + cmp al, 1 + jne int10_test_1002 + jmp biosfn_set_overscan_border_color +int10_test_1002: + cmp al, 2 + jne int10_test_1003 + jmp biosfn_set_all_palette_reg +int10_test_1003: + cmp al, 3 + jne int10_test_1007 + jmp biosfn_toggle_intensity +int10_test_1007: + cmp al, 7 + jne int10_test_1008 + jmp biosfn_get_single_palette_reg +int10_test_1008: + cmp al, 8 + jne int10_test_1009 + jmp biosfn_read_overscan_border_color +int10_test_1009: + cmp al, 9 + jne int10_test_1010 + jmp biosfn_get_all_palette_reg +int10_test_1010: + cmp al, 10h + jne int10_test_1012 + jmp biosfn_set_single_dac_reg +int10_test_1012: + cmp al, 12h + jne int10_test_1013 + jmp biosfn_set_all_dac_reg +int10_test_1013: + cmp al, 13h + jne int10_test_1015 + jmp biosfn_select_video_dac_color_page +int10_test_1015: + cmp al, 15h + jne int10_test_1017 + jmp biosfn_read_single_dac_reg +int10_test_1017: + cmp al, 17h + jne int10_test_1018 + jmp biosfn_read_all_dac_reg +int10_test_1018: + cmp al, 18h + jne int10_test_1019 + jmp biosfn_set_pel_mask +int10_test_1019: + cmp al, 19h + jne int10_test_101A + jmp biosfn_read_pel_mask +int10_test_101A: + cmp al, 1Ah + jne int10_group_10_unknown + jmp biosfn_read_video_dac_state +int10_group_10_unknown: +ifdef VGA_DEBUG + call _unknown +endif + ret + +biosfn_set_single_palette_reg: + cmp bl, 14h + ja no_actl_reg1 + push ax + push dx + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, bl + out dx, al + mov al, bh + out dx, al + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop ax +no_actl_reg1: + ret + +;-------------------------------------------------------------------------------------------- + +biosfn_set_overscan_border_color: + push bx + mov bl, 11h + call biosfn_set_single_palette_reg + pop bx + ret + +;-------------------------------------------------------------------------------------------- + +biosfn_set_all_palette_reg: + push ax + push bx + push cx + push dx + mov bx, dx + mov dx, VGAREG_ACTL_RESET + in al, dx + mov cl, 0 + mov dx, VGAREG_ACTL_ADDRESS +set_palette_loop: + mov al, cl + out dx, al + mov al, es:[bx] + out dx, al + inc bx + inc cl + cmp cl, 10h + jne set_palette_loop + mov al, 11h + out dx, al + mov al, es:[bx] + out dx, al + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop cx + pop bx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_toggle_intensity: + push ax + push bx + push dx + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 10h + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + and al, 0F7h + and bl, 01 +if VBOX_BIOS_CPU gt 8086 + shl bl, 3 +else + shl bl, 1 + shl bl, 1 + shl bl, 1 +endif + or al, bl + mov dx, VGAREG_ACTL_ADDRESS + out dx, al + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop bx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_get_single_palette_reg: + cmp bl, 14h + ja no_actl_reg2 + push ax + push dx + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, bl + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + mov bh, al + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop ax +no_actl_reg2: + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_read_overscan_border_color: + push ax + push bx + mov bl, 11h + call biosfn_get_single_palette_reg + mov al, bh + pop bx + mov bh, al + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_get_all_palette_reg: + push ax + push bx + push cx + push dx + mov bx, dx + mov cl, 0 +get_palette_loop: + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, cl + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + mov es:[bx], al + inc bx + inc cl + cmp cl, 10h + jne get_palette_loop + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 11h + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + mov es:[bx], al + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop cx + pop bx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_set_single_dac_reg: + push ax + push dx + mov dx, VGAREG_DAC_WRITE_ADDRESS + mov al, bl + out dx, al + mov dx, VGAREG_DAC_DATA + pop ax + push ax + mov al, ah + out dx, al + mov al, ch + out dx, al + mov al, cl + out dx, al + pop dx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_set_all_dac_reg: + push ax + push bx + push cx + push dx + mov dx, VGAREG_DAC_WRITE_ADDRESS + mov al, bl + out dx, al + pop dx + push dx + mov bx, dx + mov dx, VGAREG_DAC_DATA +set_dac_loop: + mov al, es:[bx] + out dx, al + inc bx + mov al, es:[bx] + out dx, al + inc bx + mov al, es:[bx] + out dx, al + inc bx + dec cx + jnz set_dac_loop + pop dx + pop cx + pop bx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_select_video_dac_color_page: + push ax + push bx + push dx + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 10h + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + and bl, 01 + jnz set_dac_page + and al, 07Fh +if VBOX_BIOS_CPU gt 8086 + shl bh, 7 +else + shl bh, 1 + shl bh, 1 + shl bh, 1 + shl bh, 1 + shl bh, 1 + shl bh, 1 + shl bh, 1 +endif + or al, bh + mov dx, VGAREG_ACTL_ADDRESS + out dx, al + jmp set_actl_normal +set_dac_page: + push ax + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 14h + out dx, al + pop ax + and al, 80h + jnz set_dac_16_page +if VBOX_BIOS_CPU gt 8086 + shl bh, 2 +else + shl bh, 1 + shl bh, 1 +endif +set_dac_16_page: + and bh, 0Fh + mov al, bh + out dx, al +set_actl_normal: + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop bx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_read_single_dac_reg: + push ax + push dx + mov dx, VGAREG_DAC_READ_ADDRESS + mov al, bl + out dx, al + pop ax + mov ah, al + mov dx, VGAREG_DAC_DATA + in al, dx + xchg al, ah + push ax + in al, dx + mov ch, al + in al, dx + mov cl, al + pop dx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_read_all_dac_reg: + push ax + push bx + push cx + push dx + mov dx, VGAREG_DAC_READ_ADDRESS + mov al, bl + out dx, al + pop dx + push dx + mov bx, dx + mov dx, VGAREG_DAC_DATA +read_dac_loop: + in al, dx + mov es:[bx], al + inc bx + in al, dx + mov es:[bx], al + inc bx + in al, dx + mov es:[bx], al + inc bx + dec cx + jnz read_dac_loop + pop dx + pop cx + pop bx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_set_pel_mask: + push ax + push dx + mov dx, VGAREG_PEL_MASK + mov al, bl + out dx, al + pop dx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_read_pel_mask: + push ax + push dx + mov dx, VGAREG_PEL_MASK + in al, dx + mov bl, al + pop dx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_read_video_dac_state: + push ax + push dx + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 10h + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + mov bl, al +if VBOX_BIOS_CPU gt 8086 + shr bl, 7 +else + shr bl, 1 + shr bl, 1 + shr bl, 1 + shr bl, 1 + shr bl, 1 + shr bl, 1 + shr bl, 1 +endif + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 14h + out dx, al + mov dx, VGAREG_ACTL_READ_DATA + in al, dx + mov bh, al + and bh, 0Fh + test bl, 01 + jnz get_dac_16_page +if VBOX_BIOS_CPU gt 8086 + shr bh, 2 +else + shr bh, 1 + shr bh, 1 +endif +get_dac_16_page: + mov dx, VGAREG_ACTL_RESET + in al, dx + mov dx, VGAREG_ACTL_ADDRESS + mov al, 20h + out dx, al +ifdef VBOX + mov dx, VGAREG_ACTL_RESET + in al, dx +endif ; VBOX + pop dx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_set_text_block_specifier: + push ax + push dx + mov dx, VGAREG_SEQU_ADDRESS + mov ah, bl + mov al, 03 + out dx, ax + pop dx + pop ax + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_get_ega_info: + push ds + push ax + mov ax, BIOSMEM_SEG + mov ds, ax + xor ch, ch + mov bx, BIOSMEM_SWITCHES + mov cl, [bx] + and cl, 0Fh + mov bx, BIOSMEM_CRTC_ADDRESS + mov ax, [bx] + mov bx, 0003h + cmp ax, VGAREG_MDA_CRTC_ADDRESS + jne mode_ega_color + mov bh, 01 +mode_ega_color: + pop ax + pop ds + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_select_vert_res: + +; res : 00 200 lines, 01 350 lines, 02 400 lines + + push ds + push bx + push dx + mov dl, al + mov ax, BIOSMEM_SEG + mov ds, ax + mov bx, BIOSMEM_MODESET_CTL + mov al, [bx] + mov bx, BIOSMEM_SWITCHES + mov ah, [bx] + cmp dl, 1 + je vert_res_350 + jb vert_res_200 + cmp dl, 2 + je vert_res_400 +ifdef VGA_DEBUG + mov al, dl + xor ah, ah + push ax + mov bx, msg_vert_res + push bx + call _printf + add sp, 4 +endif + jmp set_retcode +vert_res_400: + + ; reset modeset ctl bit 7 and set bit 4 + ; set switches bit 3-0 to 09 + + and al, 07Fh + or al, 010h + and ah, 0F0h + or ah, 009h + jnz set_vert_res +vert_res_350: + + ; reset modeset ctl bit 7 and bit 4 + ; set switches bit 3-0 to 09 + + and al, 06Fh + and ah, 0F0h + or ah, 009h + jnz set_vert_res +vert_res_200: + + ; set modeset ctl bit 7 and reset bit 4 + ; set switches bit 3-0 to 08 + + and al, 0EFh + or al, 080h + and ah, 0F0h + or ah, 008h +set_vert_res: + mov bx, BIOSMEM_MODESET_CTL + mov [bx], al + mov bx, BIOSMEM_SWITCHES + mov [bx], ah +set_retcode: + mov ax, 1212h + pop dx + pop bx + pop ds + ret + +ifdef VGA_DEBUG +msg_vert_res: +db "Select vert res (%02x) was discarded", 13, 10, 0 +endif + + +biosfn_enable_default_palette_loading: + push ds + push bx + push dx + mov dl, al + and dl, 01 +if VBOX_BIOS_CPU gt 8086 + shl dl, 3 +else + shl dl, 1 + shl dl, 1 + shl dl, 1 +endif + mov ax, BIOSMEM_SEG + mov ds, ax + mov bx, BIOSMEM_MODESET_CTL + mov al, [bx] + and al, 0F7h + or al, dl + mov [bx], al + mov ax, 1212h + pop dx + pop bx + pop ds + ret + + +biosfn_enable_video_addressing: + push bx + push dx + mov bl, al + and bl, 01 + xor bl, 01 + shl bl, 1 + mov dx, VGAREG_READ_MISC_OUTPUT + in al, dx + and al, 0FDh + or al, bl + mov dx, VGAREG_WRITE_MISC_OUTPUT + out dx, al + mov ax, 1212h + pop dx + pop bx + ret + + +biosfn_enable_grayscale_summing: + push ds + push bx + push dx + mov dl, al + and dl, 01h + xor dl, 01h + shl dl, 1 + mov ax, BIOSMEM_SEG + mov ds, ax + mov bx, BIOSMEM_MODESET_CTL + mov al, [bx] + and al, 0FDh + or al, dl + mov [bx], al + mov ax, 1212h + pop dx + pop bx + pop ds + ret + + +biosfn_enable_cursor_emulation: + push ds + push bx + push dx + mov dl, al + and dl, 01 + xor dl, 01 + mov ax, BIOSMEM_SEG + mov ds, ax + mov bx, BIOSMEM_MODESET_CTL + mov al, [bx] + and al, 0FEh + or al, dl + mov [bx], al + mov ax, 1212h + pop dx + pop bx + pop ds + ret + +;;-------------------------------------------------------------------------------------------- + +biosfn_group_1A: + cmp al, 0 + je biosfn_read_display_code + cmp al, 1 + je biosfn_set_display_code +ifdef VGA_DEBUG + call _unknown +endif + ret +biosfn_read_display_code: + push ds + push ax + mov ax, BIOSMEM_SEG + mov ds, ax + mov bx, BIOSMEM_DCC_INDEX + mov al, [bx] + mov bl, al + xor bh, bh + pop ax + mov al, ah + pop ds + ret +biosfn_set_display_code: + push ds + push ax + push bx + mov ax, BIOSMEM_SEG + mov ds, ax + mov ax, bx + mov bx, BIOSMEM_DCC_INDEX + mov [bx], al +ifdef VGA_DEBUG + mov al, ah + xor ah, ah + push ax + mov bx, msg_alt_dcc + push bx + call _printf + add sp, 4 +endif + pop bx + pop ax + mov al, ah + pop ds + ret + +ifdef VGA_DEBUG +msg_alt_dcc: +db "Alternate Display code (%02x) was discarded", 13, 10, 0 +endif + +VGAROM ends + + end diff --git a/src/VBox/Devices/Graphics/BIOS/vgatables.h b/src/VBox/Devices/Graphics/BIOS/vgatables.h new file mode 100644 index 00000000..a5d8e8e6 --- /dev/null +++ b/src/VBox/Devices/Graphics/BIOS/vgatables.h @@ -0,0 +1,625 @@ + +#ifndef VBOX_INCLUDED_SRC_Graphics_BIOS_vgatables_h +#define VBOX_INCLUDED_SRC_Graphics_BIOS_vgatables_h +#ifndef RT_WITHOUT_PRAGMA_ONCE +# pragma once +#endif + +/* Video memory */ +#define VGAMEM_GRAPH 0xA000 +#define VGAMEM_CTEXT 0xB800 +#define VGAMEM_MTEXT 0xB000 + +/* + * + * Tables of default values for each mode + * + */ +#define MODE_MAX 15 +#define TEXT 0x00 +#define GRAPH 0x01 + +#define CTEXT 0x00 +#define MTEXT 0x01 +#define CGA 0x02 +#define PLANAR1 0x03 +#define PLANAR4 0x04 +#define LINEAR8 0x05 + +// for SVGA +#define LINEAR15 0x10 +#define LINEAR16 0x11 +#define LINEAR24 0x12 +#define LINEAR32 0x13 + +typedef struct +{uint8_t svgamode; + uint8_t class; /* TEXT, GRAPH */ + uint8_t memmodel; /* CTEXT,MTEXT,CGA,PL1,PL2,PL4,P8,P15,P16,P24,P32 */ + uint8_t pixbits; + uint16_t sstart; + uint8_t pelmask; + uint8_t dacmodel; /* 0 1 2 3 */ +} VGAMODES; + +static VGAMODES vga_modes[MODE_MAX+1]= +{//mode class model bits sstart pelm dac + {0x00, TEXT, CTEXT, 4, 0xB800, 0xFF, 0x02}, + {0x01, TEXT, CTEXT, 4, 0xB800, 0xFF, 0x02}, + {0x02, TEXT, CTEXT, 4, 0xB800, 0xFF, 0x02}, + {0x03, TEXT, CTEXT, 4, 0xB800, 0xFF, 0x02}, + {0x04, GRAPH, CGA, 2, 0xB800, 0xFF, 0x01}, + {0x05, GRAPH, CGA, 2, 0xB800, 0xFF, 0x01}, + {0x06, GRAPH, CGA, 1, 0xB800, 0xFF, 0x01}, + {0x07, TEXT, MTEXT, 4, 0xB000, 0xFF, 0x00}, + {0x0D, GRAPH, PLANAR4, 4, 0xA000, 0xFF, 0x01}, + {0x0E, GRAPH, PLANAR4, 4, 0xA000, 0xFF, 0x01}, + {0x0F, GRAPH, PLANAR1, 1, 0xA000, 0xFF, 0x00}, + {0x10, GRAPH, PLANAR4, 4, 0xA000, 0xFF, 0x02}, + {0x11, GRAPH, PLANAR1, 1, 0xA000, 0xFF, 0x02}, + {0x12, GRAPH, PLANAR4, 4, 0xA000, 0xFF, 0x02}, + {0x13, GRAPH, LINEAR8, 8, 0xA000, 0xFF, 0x03}, + {0x6A, GRAPH, PLANAR4, 4, 0xA000, 0xFF, 0x02} +}; + +/* convert index in vga_modes[] to index in video_param_table[] */ +static uint8_t line_to_vpti[MODE_MAX+1]={ + 0x17, 0x17, 0x18, 0x18, 0x04, 0x05, 0x06, 0x07, + 0x0d, 0x0e, 0x11, 0x12, 0x1a, 0x1b, 0x1c, 0x1d, +}; + +/* Default Palette */ +#define DAC_MAX_MODEL 3 + +static uint8_t dac_regs[DAC_MAX_MODEL+1]= +{0x3f,0x3f,0x3f,0xff}; + +/* standard BIOS Video Parameter Table */ +#pragma pack(push, 1) +typedef struct { + uint8_t twidth; + uint8_t theightm1; + uint8_t cheight; + uint16_t slength; + uint8_t sequ_regs[4]; + uint8_t miscreg; + uint8_t crtc_regs[25]; + uint8_t actl_regs[20]; + uint8_t grdc_regs[9]; +} VideoParamTableEntry; +#pragma pack(pop) + +static VideoParamTableEntry video_param_table[30] = { +{ + /* index=0x00 cga mode 0/1 */ + 40, 24, 8, 0x0800, /* tw, th-1, ch, slength */ + 0x09, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x63, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0xa0, 0xbf, 0x1f, + 0x00, 0xc7, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x14, 0x1f, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x08, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x01 cga mode 0/1 */ + 40, 24, 8, 0x0800, /* tw, th-1, ch, slength */ + 0x09, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x63, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0xa0, 0xbf, 0x1f, + 0x00, 0xc7, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x14, 0x1f, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x08, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x02 cga mode 2/3 */ + 80, 24, 8, 0x1000, /* tw, th-1, ch, slength */ + 0x01, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x63, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f, + 0x00, 0xc7, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x28, 0x1f, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x08, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x03 cga mode 2/3 */ + 80, 24, 8, 0x1000, /* tw, th-1, ch, slength */ + 0x01, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x63, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f, + 0x00, 0xc7, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x28, 0x1f, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x08, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x04 vga mode 0x04 */ + 40, 24, 8, 0x4000, /* tw, th-1, ch, slength */ + 0x09, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x63, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0x80, 0xbf, 0x1f, + 0x00, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x14, 0x00, 0x96, 0xb9, 0xa2, + 0xff, /* crtc_regs */ + 0x00, 0x13, 0x15, 0x17, 0x02, 0x04, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x01, 0x00, 0x03, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x0f, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x05 vga mode 0x05 */ + 40, 24, 8, 0x4000, /* tw, th-1, ch, slength */ + 0x09, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x63, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0x80, 0xbf, 0x1f, + 0x00, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x14, 0x00, 0x96, 0xb9, 0xa2, + 0xff, /* crtc_regs */ + 0x00, 0x13, 0x15, 0x17, 0x02, 0x04, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x01, 0x00, 0x03, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x0f, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x06 vga mode 0x06 */ + 80, 24, 8, 0x4000, /* tw, th-1, ch, slength */ + 0x01, 0x01, 0x00, 0x06, /* sequ_regs */ + 0x63, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0xbf, 0x1f, + 0x00, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x28, 0x00, 0x96, 0xb9, 0xc2, + 0xff, /* crtc_regs */ + 0x00, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, + 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, 0x17, + 0x01, 0x00, 0x01, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x07 ega mode 0x07 */ + 80, 24, 14, 0x1000, /* tw, th-1, ch, slength */ + 0x00, 0x03, 0x00, 0x03, /* sequ_regs */ + 0xA6, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f, + 0x00, 0x4d, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, + 0x83, 0x85, 0x5d, 0x28, 0x0d, 0x63, 0xba, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x10, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x0e, 0x00, 0x0f, 0x08, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0a, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x08 no mode defined */ + 0x00, 0x00, 0x00, 0x0000, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}, +{ + /* index=0x09 no mode defined */ + 0x00, 0x00, 0x00, 0x0000, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}, +{ + /* index=0x0a no mode defined */ + 0x00, 0x00, 0x00, 0x0000, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}, +#if 0 +/* XENIX 2.2 uses mode entries Bh/Ch when loading EGA fonts. If they are + * all zeros, fonts can't be set. However, some versions (XENIX 2.2.3b) + * end up programming garbage into the fonts. We're better off with + * cut off VGA fonts than with complete garbage, so we leave these + * mode table entries zeroed. + */ +{ + /* index=0x0b EGA font load fake mode (color) */ + 80, 24, 8, 0x1000, /* tw, th-1, ch, slength */ + 0x01, 0x04, 0x00, 0x07, /* sequ_regs */ + 0x23, /* miscreg */ + 0x70, 0x4f, 0x5c, 0x2f, 0x5f, 0x07, 0x04, 0x11, + 0x00, 0x07, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, + 0xe1, 0x24, 0xc7, 0x28, 0x08, 0xe0, 0xf0, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x0c EGA font load fake mode (mono) */ + 80, 24, 14, 0x1000, /* tw, th-1, ch, slength */ + 0x01, 0x04, 0x00, 0x07, /* sequ_regs */ + 0xa6, /* miscreg */ + 0x60, 0x4f, 0x56, 0x3a, 0x51, 0x60, 0x70, 0x1f, + 0x00, 0x0d, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, + 0x5e, 0x2e, 0x5d, 0x28, 0x0d, 0x5e, 0x6e, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0f, 0x08, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0xff, /* grdc_regs */ +}, +#else +{ + /* index=0x0b no mode defined */ + 0x00, 0x00, 0x00, 0x0000, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}, +{ + /* index=0x0c no mode defined */ + 0x00, 0x00, 0x00, 0x0000, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}, +#endif +{ + /* index=0x0d vga mode 0x0d */ + 40, 24, 8, 0x2000, /* tw, th-1, ch, slength */ + 0x09, 0x0f, 0x00, 0x06, /* sequ_regs */ + 0x63, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0x80, 0xbf, 0x1f, + 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x14, 0x00, 0x96, 0xb9, 0xe3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x01, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x0e vga mode 0x0e */ + 80, 24, 8, 0x4000, /* tw, th-1, ch, slength */ + 0x01, 0x0f, 0x00, 0x06, /* sequ_regs */ + 0x63, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0xbf, 0x1f, + 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x28, 0x00, 0x96, 0xb9, 0xe3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x01, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x0f no mode defined */ + 0x00, 0x00, 0x00, 0x0000, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}, +{ + /* index=0x10 no mode defined */ + 0x00, 0x00, 0x00, 0x0000, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}, +{ + /* index=0x11 vga mode 0x0f */ + 80, 24, 14, 0x8000, /* tw, th-1, ch, slength */ + 0x01, 0x0f, 0x00, 0x06, /* sequ_regs */ + 0xa3, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0xbf, 0x1f, + 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x83, 0x85, 0x5d, 0x28, 0x0f, 0x63, 0xba, 0xe3, + 0xff, /* crtc_regs */ + 0x00, 0x08, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, + 0x00, 0x08, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x12 vga mode 0x10 */ + 80, 24, 14, 0x8000, /* tw, th-1, ch, slength */ + 0x01, 0x0f, 0x00, 0x06, /* sequ_regs */ + 0xa3, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0xbf, 0x1f, + 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x83, 0x85, 0x5d, 0x28, 0x0f, 0x63, 0xba, 0xe3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x01, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x13 ega mode 0/1 */ + 40, 24, 14, 0x0800, /* tw, th-1, ch, slength */ + 0x09, 0x03, 0x00, 0x02, /* sequ_regs */ + 0xa3, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0xa0, 0xbf, 0x1f, + 0x00, 0x4d, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, + 0x83, 0x85, 0x5d, 0x14, 0x1f, 0x63, 0xba, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x08, 0x00, 0x0f, 0x08, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x14 ega mode 0/1 */ + 40, 24, 14, 0x0800, /* tw, th-1, ch, slength */ + 0x09, 0x03, 0x00, 0x02, /* sequ_regs */ + 0xa3, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0xa0, 0xbf, 0x1f, + 0x00, 0x4d, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, + 0x83, 0x85, 0x5d, 0x14, 0x1f, 0x63, 0xba, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x08, 0x00, 0x0f, 0x08, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x15 ega mode 2/3 */ + 80, 24, 14, 0x1000, /* tw, th-1, ch, slength */ + 0x01, 0x03, 0x00, 0x02, /* sequ_regs */ + 0xa3, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f, + 0x00, 0x4d, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, + 0x83, 0x85, 0x5d, 0x28, 0x1f, 0x63, 0xba, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x08, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x16 ega mode 2/3 */ + 80, 24, 14, 0x1000, /* tw, th-1, ch, slength */ + 0x01, 0x03, 0x00, 0x02, /* sequ_regs */ + 0xa3, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f, + 0x00, 0x4d, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, + 0x83, 0x85, 0x5d, 0x28, 0x1f, 0x63, 0xba, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x08, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff, /* grdc_regs */ +}, +{ + /* index=0x17 vga mode 0x01 */ + 40, 24, 16, 0x0800, /* tw, th-1, ch, slength */ + 0x08, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x67, /* miscreg */ + 0x2d, 0x27, 0x28, 0x90, 0x2b, 0xa0, 0xbf, 0x1f, + 0x00, 0x4f, 0x0d, 0x0e, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x14, 0x1f, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x0c, 0x00, 0x0f, 0x08, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x18 vga mode 0x03 */ + 80, 24, 16, 0x1000, /* tw, th-1, ch, slength */ + 0x00, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x67, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f, + 0x00, 0x4f, 0x0d, 0x0e, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x28, 0x1f, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x0c, 0x00, 0x0f, 0x08, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x19 vga mode 0x07 */ + 80, 24, 16, 0x1000, /* tw, th-1, ch, slength */ + 0x00, 0x03, 0x00, 0x02, /* sequ_regs */ + 0x66, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f, + 0x00, 0x4f, 0x0d, 0x0e, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x28, 0x0f, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x10, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x0e, 0x00, 0x0f, 0x08, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0a, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x1a vga mode 0x11 */ + 80, 29, 16, 0xa000, /* tw, th-1, ch, slength */ + 0x01, 0x0f, 0x00, 0x06, /* sequ_regs */ + 0xe3, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0x0b, 0x3e, + 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xea, 0x8c, 0xdf, 0x28, 0x00, 0xe7, 0x04, 0xc3, + 0xff, /* crtc_regs */ + 0x00, 0x3f, 0x00, 0x3f, 0x00, 0x3f, 0x00, 0x3f, + 0x00, 0x3f, 0x00, 0x3f, 0x00, 0x3f, 0x00, 0x3f, + 0x01, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x1b vga mode 0x12 */ + 80, 29, 16, 0xa000, /* tw, th-1, ch, slength */ + 0x01, 0x0f, 0x00, 0x06, /* sequ_regs */ + 0xe3, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0x0b, 0x3e, + 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xea, 0x8c, 0xdf, 0x28, 0x00, 0xe7, 0x04, 0xe3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x01, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x1c vga mode 0x13 */ + 40, 24, 8, 0x2000, /* tw, th-1, ch, slength */ + 0x01, 0x0f, 0x00, 0x0e, /* sequ_regs */ + 0x63, /* miscreg */ + 0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0xbf, 0x1f, + 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x8e, 0x8f, 0x28, 0x40, 0x96, 0xb9, 0xa3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, + 0x41, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +{ + /* index=0x1d vga mode 0x6a */ + 100, 36, 16, 0x0000, /* tw, th-1, ch, slength */ + 0x01, 0x0f, 0x00, 0x06, /* sequ_regs */ + 0xe3, /* miscreg */ + 0x7f, 0x63, 0x63, 0x83, 0x6b, 0x1b, 0x72, 0xf0, + 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x59, 0x8d, 0x57, 0x32, 0x00, 0x57, 0x73, 0xe3, + 0xff, /* crtc_regs */ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07, + 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, + 0x01, 0x00, 0x0f, 0x00, /* actl_regs */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0xff, /* grdc_regs */ +}, +}; + +/* Mono */ +static uint8_t palette0[63+1][3]= +{ + 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, + 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, + 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, + 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, + 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, + 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, + 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, 0x2a,0x2a,0x2a, + 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f, 0x3f,0x3f,0x3f +}; + +static uint8_t palette1[63+1][3]= +{ + 0x00,0x00,0x00, 0x00,0x00,0x2a, 0x00,0x2a,0x00, 0x00,0x2a,0x2a, 0x2a,0x00,0x00, 0x2a,0x00,0x2a, 0x2a,0x15,0x00, 0x2a,0x2a,0x2a, + 0x00,0x00,0x00, 0x00,0x00,0x2a, 0x00,0x2a,0x00, 0x00,0x2a,0x2a, 0x2a,0x00,0x00, 0x2a,0x00,0x2a, 0x2a,0x15,0x00, 0x2a,0x2a,0x2a, + 0x15,0x15,0x15, 0x15,0x15,0x3f, 0x15,0x3f,0x15, 0x15,0x3f,0x3f, 0x3f,0x15,0x15, 0x3f,0x15,0x3f, 0x3f,0x3f,0x15, 0x3f,0x3f,0x3f, + 0x15,0x15,0x15, 0x15,0x15,0x3f, 0x15,0x3f,0x15, 0x15,0x3f,0x3f, 0x3f,0x15,0x15, 0x3f,0x15,0x3f, 0x3f,0x3f,0x15, 0x3f,0x3f,0x3f, + 0x00,0x00,0x00, 0x00,0x00,0x2a, 0x00,0x2a,0x00, 0x00,0x2a,0x2a, 0x2a,0x00,0x00, 0x2a,0x00,0x2a, 0x2a,0x15,0x00, 0x2a,0x2a,0x2a, + 0x00,0x00,0x00, 0x00,0x00,0x2a, 0x00,0x2a,0x00, 0x00,0x2a,0x2a, 0x2a,0x00,0x00, 0x2a,0x00,0x2a, 0x2a,0x15,0x00, 0x2a,0x2a,0x2a, + 0x15,0x15,0x15, 0x15,0x15,0x3f, 0x15,0x3f,0x15, 0x15,0x3f,0x3f, 0x3f,0x15,0x15, 0x3f,0x15,0x3f, 0x3f,0x3f,0x15, 0x3f,0x3f,0x3f, + 0x15,0x15,0x15, 0x15,0x15,0x3f, 0x15,0x3f,0x15, 0x15,0x3f,0x3f, 0x3f,0x15,0x15, 0x3f,0x15,0x3f, 0x3f,0x3f,0x15, 0x3f,0x3f,0x3f +}; + +static uint8_t palette2[63+1][3]= +{ + 0x00,0x00,0x00, 0x00,0x00,0x2a, 0x00,0x2a,0x00, 0x00,0x2a,0x2a, 0x2a,0x00,0x00, 0x2a,0x00,0x2a, 0x2a,0x2a,0x00, 0x2a,0x2a,0x2a, + 0x00,0x00,0x15, 0x00,0x00,0x3f, 0x00,0x2a,0x15, 0x00,0x2a,0x3f, 0x2a,0x00,0x15, 0x2a,0x00,0x3f, 0x2a,0x2a,0x15, 0x2a,0x2a,0x3f, + 0x00,0x15,0x00, 0x00,0x15,0x2a, 0x00,0x3f,0x00, 0x00,0x3f,0x2a, 0x2a,0x15,0x00, 0x2a,0x15,0x2a, 0x2a,0x3f,0x00, 0x2a,0x3f,0x2a, + 0x00,0x15,0x15, 0x00,0x15,0x3f, 0x00,0x3f,0x15, 0x00,0x3f,0x3f, 0x2a,0x15,0x15, 0x2a,0x15,0x3f, 0x2a,0x3f,0x15, 0x2a,0x3f,0x3f, + 0x15,0x00,0x00, 0x15,0x00,0x2a, 0x15,0x2a,0x00, 0x15,0x2a,0x2a, 0x3f,0x00,0x00, 0x3f,0x00,0x2a, 0x3f,0x2a,0x00, 0x3f,0x2a,0x2a, + 0x15,0x00,0x15, 0x15,0x00,0x3f, 0x15,0x2a,0x15, 0x15,0x2a,0x3f, 0x3f,0x00,0x15, 0x3f,0x00,0x3f, 0x3f,0x2a,0x15, 0x3f,0x2a,0x3f, + 0x15,0x15,0x00, 0x15,0x15,0x2a, 0x15,0x3f,0x00, 0x15,0x3f,0x2a, 0x3f,0x15,0x00, 0x3f,0x15,0x2a, 0x3f,0x3f,0x00, 0x3f,0x3f,0x2a, + 0x15,0x15,0x15, 0x15,0x15,0x3f, 0x15,0x3f,0x15, 0x15,0x3f,0x3f, 0x3f,0x15,0x15, 0x3f,0x15,0x3f, 0x3f,0x3f,0x15, 0x3f,0x3f,0x3f +}; + +static uint8_t palette3[256][3]= +{ + 0x00,0x00,0x00, 0x00,0x00,0x2a, 0x00,0x2a,0x00, 0x00,0x2a,0x2a, 0x2a,0x00,0x00, 0x2a,0x00,0x2a, 0x2a,0x15,0x00, 0x2a,0x2a,0x2a, + 0x15,0x15,0x15, 0x15,0x15,0x3f, 0x15,0x3f,0x15, 0x15,0x3f,0x3f, 0x3f,0x15,0x15, 0x3f,0x15,0x3f, 0x3f,0x3f,0x15, 0x3f,0x3f,0x3f, + 0x00,0x00,0x00, 0x05,0x05,0x05, 0x08,0x08,0x08, 0x0b,0x0b,0x0b, 0x0e,0x0e,0x0e, 0x11,0x11,0x11, 0x14,0x14,0x14, 0x18,0x18,0x18, + 0x1c,0x1c,0x1c, 0x20,0x20,0x20, 0x24,0x24,0x24, 0x28,0x28,0x28, 0x2d,0x2d,0x2d, 0x32,0x32,0x32, 0x38,0x38,0x38, 0x3f,0x3f,0x3f, + 0x00,0x00,0x3f, 0x10,0x00,0x3f, 0x1f,0x00,0x3f, 0x2f,0x00,0x3f, 0x3f,0x00,0x3f, 0x3f,0x00,0x2f, 0x3f,0x00,0x1f, 0x3f,0x00,0x10, + 0x3f,0x00,0x00, 0x3f,0x10,0x00, 0x3f,0x1f,0x00, 0x3f,0x2f,0x00, 0x3f,0x3f,0x00, 0x2f,0x3f,0x00, 0x1f,0x3f,0x00, 0x10,0x3f,0x00, + 0x00,0x3f,0x00, 0x00,0x3f,0x10, 0x00,0x3f,0x1f, 0x00,0x3f,0x2f, 0x00,0x3f,0x3f, 0x00,0x2f,0x3f, 0x00,0x1f,0x3f, 0x00,0x10,0x3f, + 0x1f,0x1f,0x3f, 0x27,0x1f,0x3f, 0x2f,0x1f,0x3f, 0x37,0x1f,0x3f, 0x3f,0x1f,0x3f, 0x3f,0x1f,0x37, 0x3f,0x1f,0x2f, 0x3f,0x1f,0x27, + + 0x3f,0x1f,0x1f, 0x3f,0x27,0x1f, 0x3f,0x2f,0x1f, 0x3f,0x37,0x1f, 0x3f,0x3f,0x1f, 0x37,0x3f,0x1f, 0x2f,0x3f,0x1f, 0x27,0x3f,0x1f, + 0x1f,0x3f,0x1f, 0x1f,0x3f,0x27, 0x1f,0x3f,0x2f, 0x1f,0x3f,0x37, 0x1f,0x3f,0x3f, 0x1f,0x37,0x3f, 0x1f,0x2f,0x3f, 0x1f,0x27,0x3f, + 0x2d,0x2d,0x3f, 0x31,0x2d,0x3f, 0x36,0x2d,0x3f, 0x3a,0x2d,0x3f, 0x3f,0x2d,0x3f, 0x3f,0x2d,0x3a, 0x3f,0x2d,0x36, 0x3f,0x2d,0x31, + 0x3f,0x2d,0x2d, 0x3f,0x31,0x2d, 0x3f,0x36,0x2d, 0x3f,0x3a,0x2d, 0x3f,0x3f,0x2d, 0x3a,0x3f,0x2d, 0x36,0x3f,0x2d, 0x31,0x3f,0x2d, + 0x2d,0x3f,0x2d, 0x2d,0x3f,0x31, 0x2d,0x3f,0x36, 0x2d,0x3f,0x3a, 0x2d,0x3f,0x3f, 0x2d,0x3a,0x3f, 0x2d,0x36,0x3f, 0x2d,0x31,0x3f, + 0x00,0x00,0x1c, 0x07,0x00,0x1c, 0x0e,0x00,0x1c, 0x15,0x00,0x1c, 0x1c,0x00,0x1c, 0x1c,0x00,0x15, 0x1c,0x00,0x0e, 0x1c,0x00,0x07, + 0x1c,0x00,0x00, 0x1c,0x07,0x00, 0x1c,0x0e,0x00, 0x1c,0x15,0x00, 0x1c,0x1c,0x00, 0x15,0x1c,0x00, 0x0e,0x1c,0x00, 0x07,0x1c,0x00, + 0x00,0x1c,0x00, 0x00,0x1c,0x07, 0x00,0x1c,0x0e, 0x00,0x1c,0x15, 0x00,0x1c,0x1c, 0x00,0x15,0x1c, 0x00,0x0e,0x1c, 0x00,0x07,0x1c, + + 0x0e,0x0e,0x1c, 0x11,0x0e,0x1c, 0x15,0x0e,0x1c, 0x18,0x0e,0x1c, 0x1c,0x0e,0x1c, 0x1c,0x0e,0x18, 0x1c,0x0e,0x15, 0x1c,0x0e,0x11, + 0x1c,0x0e,0x0e, 0x1c,0x11,0x0e, 0x1c,0x15,0x0e, 0x1c,0x18,0x0e, 0x1c,0x1c,0x0e, 0x18,0x1c,0x0e, 0x15,0x1c,0x0e, 0x11,0x1c,0x0e, + 0x0e,0x1c,0x0e, 0x0e,0x1c,0x11, 0x0e,0x1c,0x15, 0x0e,0x1c,0x18, 0x0e,0x1c,0x1c, 0x0e,0x18,0x1c, 0x0e,0x15,0x1c, 0x0e,0x11,0x1c, + 0x14,0x14,0x1c, 0x16,0x14,0x1c, 0x18,0x14,0x1c, 0x1a,0x14,0x1c, 0x1c,0x14,0x1c, 0x1c,0x14,0x1a, 0x1c,0x14,0x18, 0x1c,0x14,0x16, + 0x1c,0x14,0x14, 0x1c,0x16,0x14, 0x1c,0x18,0x14, 0x1c,0x1a,0x14, 0x1c,0x1c,0x14, 0x1a,0x1c,0x14, 0x18,0x1c,0x14, 0x16,0x1c,0x14, + 0x14,0x1c,0x14, 0x14,0x1c,0x16, 0x14,0x1c,0x18, 0x14,0x1c,0x1a, 0x14,0x1c,0x1c, 0x14,0x1a,0x1c, 0x14,0x18,0x1c, 0x14,0x16,0x1c, + 0x00,0x00,0x10, 0x04,0x00,0x10, 0x08,0x00,0x10, 0x0c,0x00,0x10, 0x10,0x00,0x10, 0x10,0x00,0x0c, 0x10,0x00,0x08, 0x10,0x00,0x04, + 0x10,0x00,0x00, 0x10,0x04,0x00, 0x10,0x08,0x00, 0x10,0x0c,0x00, 0x10,0x10,0x00, 0x0c,0x10,0x00, 0x08,0x10,0x00, 0x04,0x10,0x00, + + 0x00,0x10,0x00, 0x00,0x10,0x04, 0x00,0x10,0x08, 0x00,0x10,0x0c, 0x00,0x10,0x10, 0x00,0x0c,0x10, 0x00,0x08,0x10, 0x00,0x04,0x10, + 0x08,0x08,0x10, 0x0a,0x08,0x10, 0x0c,0x08,0x10, 0x0e,0x08,0x10, 0x10,0x08,0x10, 0x10,0x08,0x0e, 0x10,0x08,0x0c, 0x10,0x08,0x0a, + 0x10,0x08,0x08, 0x10,0x0a,0x08, 0x10,0x0c,0x08, 0x10,0x0e,0x08, 0x10,0x10,0x08, 0x0e,0x10,0x08, 0x0c,0x10,0x08, 0x0a,0x10,0x08, + 0x08,0x10,0x08, 0x08,0x10,0x0a, 0x08,0x10,0x0c, 0x08,0x10,0x0e, 0x08,0x10,0x10, 0x08,0x0e,0x10, 0x08,0x0c,0x10, 0x08,0x0a,0x10, + 0x0b,0x0b,0x10, 0x0c,0x0b,0x10, 0x0d,0x0b,0x10, 0x0f,0x0b,0x10, 0x10,0x0b,0x10, 0x10,0x0b,0x0f, 0x10,0x0b,0x0d, 0x10,0x0b,0x0c, + 0x10,0x0b,0x0b, 0x10,0x0c,0x0b, 0x10,0x0d,0x0b, 0x10,0x0f,0x0b, 0x10,0x10,0x0b, 0x0f,0x10,0x0b, 0x0d,0x10,0x0b, 0x0c,0x10,0x0b, + 0x0b,0x10,0x0b, 0x0b,0x10,0x0c, 0x0b,0x10,0x0d, 0x0b,0x10,0x0f, 0x0b,0x10,0x10, 0x0b,0x0f,0x10, 0x0b,0x0d,0x10, 0x0b,0x0c,0x10, + 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00 +}; + +static uint8_t static_functionality[0x10]= +{ + /* 0 */ 0xff, // All modes supported #1 + /* 1 */ 0xe0, // All modes supported #2 + /* 2 */ 0x0f, // All modes supported #3 + /* 3 */ 0x00, 0x00, 0x00, 0x00, // reserved + /* 7 */ 0x07, // 200, 350, 400 scan lines + /* 8 */ 0x02, // maximum number of visible charsets in text mode + /* 9 */ 0x08, // total number of charset blocks in text mode + /* a */ 0xe7, // Change to add new functions + /* b */ 0x0c, // Change to add new functions + /* c */ 0x00, // reserved + /* d */ 0x00, // reserved + /* e */ 0x00, // Change to add new functions + /* f */ 0x00 // reserved +}; + +#endif /* !VBOX_INCLUDED_SRC_Graphics_BIOS_vgatables_h */ + -- cgit v1.2.3