Embedded BIOS User's Manual

Total Page:16

File Type:pdf, Size:1020Kb

Embedded BIOS User's Manual Embedded BIOSTM 4.1 The Full-Featured BIOS for Embedded Systems and Consumer Electronics* BIOS User’s Manual with BIOS Interrupt Reference Copyright (C) 1990-1998 General Software, Inc. All rights reserved. TABLE OF CONTENTS KEY EMBEDDED BIOS CONCEPTS ................................................................................................ 7 1.1 ARCHITECTURAL OVERVIEW .......................................................................................................7 1.1.1 MEMORY MODEL.....................................................................................................................8 1.1.1.1 The Interrupt Vector Table.................................................................................................8 1.1.1.2 The BIOS Data Area..........................................................................................................8 1.1.1.3 Free Low RAM..................................................................................................................8 1.1.1.4 The Extended BIOS Data Area...........................................................................................9 1.1.1.5 Expanded Memory.............................................................................................................9 1.1.1.6 Video ROM Extensions......................................................................................................9 1.1.1.7 Other ROM Extensions......................................................................................................9 1.1.1.8 The System ROM ............................................................................................................10 1.1.1.9 Extended Memory............................................................................................................10 1.1.1.10 CMOS Memory .............................................................................................................10 1.1.2 INTERRUPT MODEL ................................................................................................................10 1.1.2.1 BIOS Service Interrupts ...................................................................................................12 1.1.2.1.1 INT 10h, Video Services............................................................................................12 1.1.2.1.2 INT 11h, Equipment List Service...............................................................................13 1.1.2.1.3 INT 12h, Low Memory Size Service..........................................................................13 1.1.2.1.4 INT 13h, Disk Services .............................................................................................14 1.1.2.1.5 INT 14h, Serial Port Services ....................................................................................16 1.1.2.1.6 INT 15h, General System Services.............................................................................17 1.1.2.1.7 INT 16h, Keyboard Services......................................................................................18 1.1.2.1.8 INT 17h, Parallel Port Services..................................................................................19 1.1.2.1.9 INT 18h, Boot Fault Routine .....................................................................................19 1.1.2.1.10 INT 19h, Bootstrap Routine.....................................................................................19 1.1.2.1.11 INT 1ah, Time/Date Services...................................................................................20 1.1.2.2 Table Pointers..................................................................................................................21 1.1.2.2.1 INT 1dh, Video Parameter Table (VPT).....................................................................21 1.1.2.2.2 INT 1eh, Floppy Diskette Parameter Table (DPT)......................................................21 1.1.2.2.3 INT 1fh, Video Graphics Character Table (VGCT)....................................................22 1.1.2.2.4 INT 41h/46h, Fixed Disk Paramter Tables (FDPTs) ..................................................22 1.1.2.3 BIOS Upcalls...................................................................................................................23 1.1.2.3.1 INT 15h Device Management ....................................................................................23 1.1.2.3.1.1 INT 15h Function 4fh..........................................................................................23 1.1.2.3.1.2 INT 15h Function 90h.........................................................................................24 1.1.2.3.1.3 INT 15h Function 91h.........................................................................................24 1.1.2.3.1.4 INT 15h Function 85h.........................................................................................24 1.1.2.3.2 INT 1bh Control-Break Signal...................................................................................25 1.1.2.3.3 INT 1ch User Timer Interrupt....................................................................................25 1.1.2.3.4 INT 4ah Real Time Software Interrupt.......................................................................25 1.1.2.4 CPU Traps/Faults............................................................................................................26 1.1.2.5 Hardware Interrupts.........................................................................................................27 1.10.3 SYSTEM CONFIGURATION TABLE .........................................................................................28 1.11 CONSOLE I/O REDIRECTION ....................................................................................................28 General Software EMBEDDED BIOS User’s Manual ii EMBEDDED BIOS User’s Manual Contents 1.11.1 VIDEO (INT 10H) REDIRECTION ...........................................................................................28 1.11.2 KEYBOARD (INT 16H) REDIRECTION....................................................................................29 1.12 INTEGRATED BIOS DEBUGGER................................................................................................29 1.18 PROTECTED MODE SUPPORT ...................................................................................................30 THE INTEGRATED BIOS DEBUGGER.......................................................................................... 33 2.1 HOW TO USE THE DEBUGGER ....................................................................................................33 2.2 DEBUGGER COMMAND SYNTAX.................................................................................................34 2.2.1 OPERAND TYPES ....................................................................................................................34 2.2.2 EXPRESSIONS .........................................................................................................................34 2.2.3 ADDRESSES............................................................................................................................35 2.3 COMMAND REFERENCE..............................................................................................................36 2.3.1 ? COMMAND ..........................................................................................................................36 2.3.2 + COMMAND..........................................................................................................................36 2.3.3 - COMMAND...........................................................................................................................37 2.3.4 BC COMMAND.......................................................................................................................37 2.3.5 BIOSDATA COMMAND.........................................................................................................37 2.3.6 BL COMMAND .......................................................................................................................38 2.3.7 BP COMMAND .......................................................................................................................38 2.3.8 CIS COMMAND ......................................................................................................................39 2.3.9 CONSOLE COMMAND ..........................................................................................................39 2.3.10 CSR COMMAND...................................................................................................................40 2.3.11 CSW COMMAND..................................................................................................................40 2.3.12 D COMMAND .......................................................................................................................41 2.3.13 DA20 COMMAND.................................................................................................................41 2.3.14 DB COMMAND.....................................................................................................................42 2.3.15 DCACHE COMMAND ..........................................................................................................42 2.3.16 DD COMMAND.....................................................................................................................42 2.3.17 DW COMMAND....................................................................................................................43
Recommended publications
  • Virus Bulletin, March 1991
    March 1991 ISSN 0956-9979 THE AUTHORITATIVE INTERNATIONAL PUBLICATION ON COMPUTER VIRUS PREVENTION, RECOGNITION AND REMOVAL Editor: Edward Wilding Technical Editor: Fridrik Skulason, University of Iceland Editorial Advisors: Jim Bates, Bates Associates, UK, Phil Crewe, Fingerprint, UK, Dr. Jon David, USA, David Ferbrache, Information Systems Integrity & Security Ltd., UK, Ray Glath, RG Software Inc., USA, Hans Gliss, Datenschutz Berater, West Germany, Ross M. Greenberg, Software Concepts Design, USA, Dr. Harold Joseph Highland, Compulit Microcomputer Security Evaluation Laboratory, USA, Dr. Jan Hruska, Sophos, UK, Dr. Keith Jackson, Walsham Contracts, UK, Owen Keane, Barrister, UK, Yisrael Radai, Hebrew University, Israel, John Laws, RSRE, UK, David T. Lindsay, Digital Equipment Corporation, UK, Martin Samociuk, Network Security Management, UK, John Sherwood, Sherwood Associates, UK, Dr. Peter Tippett, Certus International Corporation, USA, Dr. Ken Wong, PA Consulting Group, UK, Ken van Wyk, CERT, USA. CONTENTS SOFTWARE STRATEGY Defining Executable Code in the Advent of Windows 10 EDITORIAL 2 VB PRESENTATIONS 11 TECHNICAL NOTES 3 VIRUS ANALYSES THE VB CONFERENCE 1. INT13 - A New Level of Final Programme 4 Stealthy Sophistication 12 2. Casino - Gambling With INTEGRITY CHECKING Your Hard Disk 15 The Flawed Six Byte Method 6 OPINION PROGRAM TACTICS TSR Monitors and Memory Scanners - The ‘Playground’ Approach to Virus Detection 18 Developing a Virus Scanner 7 END-NOTES & NEWS 20 IBM PC VIRUSES (UPDATES) 9 VIRUS BULLETIN ©1991 Virus Bulletin Ltd, 21 The Quadrant, Abingdon Science Park, Oxon, OX14 3YS, England. Tel (+44) 235 555139. /90/$0.00+2.50 This bulletin is available only to qualified subscribers. No part of this publication may be reproduced, stored in a retrieval system, or transmitted by any form or by any means, electronic, magnetic, optical or photocopying, without the prior written permission of the publishers.
    [Show full text]
  • Uefi وبعض أنظمة Bios Uefi واجهة الربنامج الثابت املوحدة والقابلة للتمديد
    - جدول أقسامGUID GUID Partition Table جدول أقسام )أو تقسيم( يستخدم املعرفات الفريدة العميمة "! G % تعري. و-يي, ا+قسام *( ال)'ي& املقسم % أ$#مة !0/ و2ع1 أ$#مة 45!3 UEFI واج=ة ال>$ا;: ال9ا82 امل)7دة والقا62ة ل6تمديد مس جد? % ;<رم ّو@B @AA دة 'Cتمرب/أي6)ل DE@F2 " F جدول أقسام GUID *باIة *H تخGيط )أو تقسيم( جدول أقسام ;عياJI *( أج=,ة التخ,يH الفي,ياKيةM9; L ا+قراN الثا2تةL أو أقراN الحالة الC6OةPQ Lا التخGيط يستخدم املعرR الفريد العميم U@TS % متيي, ا+قسام وأ$)ا*هاL وXIم أ$W ج,H; V ;عياI واج=ة ال>نا;: الثا82 امل)حدة والقا62ة ل6تمديد !U ZD S YL /0 )املق^[ ;H ;\تد] h _`abc /0! 0defgبديM ل6\ظام التق6يدJ 45!3( $ظام Hlm GPj ا'تخدا;W أيضا % 2ع1 أ$#مة 45!3 بسnC ;حدو?ية جدول أقسام Lo3p الذJ يستخدم 82qTD فقط % تخ,يH ;ع6)مات ال<rم و*ناويr7 v; us3t Hم القGاw التق6يدqx@D Jبايu8 ;ع#م أ$#مة التشyيM تد*م P\; LGPj العام LDE@E 2ع1 ا+$#مة ;M9 ما{ أوu|} ومايكرو')ف8 ويندو~ )x86( تد*م فقط اإلقالH; w أقسام GPj % أ$#مة !L /0!B/0 2ي\ام ;ع#م ت)~يعات لي\lس و ت)~يعات 2ريhيل ي)$lس ;M9 فرJ يب |} ?lm J\ها اإلقالH; w أقسام GPj % أج=,ة 45!3 أو أج=,ة !u /0 6A TD % ا+قراN الثا2تة التي تستخدم r7م القطاw املعياx@D JI بايL8 ال<rم ا+قىص ل6قرN با'تخدام DuD (Q o3p ترياباي8 أو ) x@D × D بايuU @ S )8 2ي\ام ال<rم ا+قىص ل6قرN با'تخدام GPj 'يك)ن FuA ~يتاباي8 أو ) x@D × D بايU T S U @ S )8 والسnC % ذلك ا'تخدام H; 82 6A أجM *ناويH الكتM امل\Gقية % جدول أقسام u GPj تاIيخياL رشhة |$تي LM كا$8 وIاV تG)ير LGPj أواخر التسعينات )L)DEEE الذJ أصCح ج,H; V ;)اصفة !U D S Y /0 % عام DE@E وت<8 |?اIة Qيئة خاصة تد*ى !P\; u _`abc /0 عام uDEEF قطاعات GPT % عام LDE@E *ندما بدأ ;\تr)ن ا+قراN الثا2تة الت<)ل |ىل ت)ظي.
    [Show full text]
  • Programmer's Reference Guide, This Section Could Be of Assistance in Getting Around
    PEN*KEYR 6100 Computer PROGRAMMER’S REFERENCE GUIDE """"""""""""""""""""" P/N 977-054-001 Revision B December 2000 " NOTICE The information contained herein is proprietary and is provided solely for the purpose of allowing customers to operate and service Intermec manufactured equipment and is not to be released, reproduced, or used for any other purpose without written permission of Intermec. Disclaimer of Warranties. The sample source code included in this document is presented for reference only. The code does not necessarily represent complete, tested programs. The code is provided AS IS WITH ALL FAULTS." ALL WARRANTIES ARE EXPRESSLY DISCLAIMED, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. We welcome your comments concerning this publication. Although every effort has been made to keep it free of errors, some may occur. When reporting a specific problem, please describe it briefly and include the book title and part number, as well as the paragraph or figure number and the page number. Send your comments to: Intermec Technologies Corporation Publications Department 550 Second Street SE Cedar Rapids, IA 52401 ANTARES, INTERMEC, NORAND, NOR*WARE, PEN*KEY, ROUTEPOWER, TRAKKER, and TRAKKER ANTARES are registered trademarks and ENTERPRISE WIRELESS LAN, INCA, Mobile Framework, TE 2000, UAP, and UNIVERSAL ACCESS POINT are trademarks of Intermec Technologies Corporation. 1996 Intermec Technologies Corporation. All rights reserved. Acknowledgments ActiveX, Microsoft, MS, and MSĆDOS, Windows, and Windows NT are registered trademarks and MSDN, Visual Basic, Visual C++, and Windows for Pen are trademarks of Microsoft Corporation. Borland, dBase, and Turbo Pascal are registered trademarks and Borland C and C++ for Windows are trademarks of Borland International, Inc.
    [Show full text]
  • BIOS Enhanced Disk Drive Specification
    BIOS Enhanced Disk Drive Specification Version 1.1 May 9, 1995 Ò Technical Editor: Curtis E. Stevens Phoenix Technologies 2575 McCabe Way Irvine, Ca. 92714 Phone: (714) 440-8000 Fax: (714) 440-8300 [email protected] Phoenix Technologies Ltd. THIS SPECIFICATION IS MADE AVAILABLE WITHOUT CHARGE FOR USE IN DEVELOPING COMPUTER SYSTEMS AND DISK DRIVES. PHOENIX MAKES NO REPRESENTATION OR WARRANTY REGARDING THIS SPECIFICATION OR ANY ITEM DEVELOPED BASED ON THIS SPECIFICATION, AND PHOENIX DISCLAIMS ALL EXPRESS AND IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND FREEDOM FROM INFRINGEMENT. WITHOUT LIMITING THE GENERALITY OF THE FOREGOING, PHOENIX MAKES NO WARRANTY OF ANY KIND THAT ANY ITEM DEVELOPED BASED ON THIS SPECIFICATION WILL NOT INFRINGE ANY COPYRIGHT, PATENT, TRADE SECRET OR OTHER INTELLECTUAL PROPERTY RIGHT OF ANY PERSON OR ENTITY IN ANY COUNTRY. USE OF THIS SPECIFICATION FOR ANY PURPOSE IS AT THE RISK OF THE PERSON OR ENTITY USING IT. Enhanced Disk Drive Specification Version 1.1 Version 1.1 Copyright ã 1995 Phoenix Technologies Ltd. All Rights Reserved. Phoenix Technologies Ltd Enhanced Disk Drive Specification PRELIMINARY Version 1.1 Revision History Rev Date Description 1.0 January 25, 1994 Initial Release 1.1 January 25, 1995 Added the following: · Description of the 528 MB limitation · Description of compatibility issues caused by translation · Description of Int 13h Extensions as implemented by Phoenix · Description of the Translated Fixed Disk Parameter Table. · Support for ATAPI devices · Support for translation reporting Companies Supporting this Specification Phoenix Technologies 2575 McCabe Way Irvine, Ca.
    [Show full text]
  • BIOS Boot Specification
    Compaq Computer Corporation Phoenix Technologies Ltd. Intel Corporation BIOS Boot Specification Version 1.01 January 11, 1996 This specification has been made available to the public. You are hereby granted the right to use, implement, reproduce, and distribute this specification with the foregoing rights at no charge. This specification is, and shall remain, the property of Compaq Computer Corporation (“Compaq”), Phoenix Technologies Ltd (“Phoenix”), and Intel Corporation (“Intel”). NEITHER COMPAQ, PHOENIX NOR INTEL MAKE ANY REPRESENTATION OR WARRANTY REGARDING THIS SPECIFICATION OR ANY PRODUCT OR ITEM DEVELOPED BASED ON THIS SPECIFICATION. USE OF THIS SPECIFICATION FOR ANY PURPOSE IS AT THE RISK OF THE PERSON OR ENTITY USING IT. COMPAQ, PHOENIX AND INTEL DISCLAIM ALL EXPRESS AND IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND FREEDOM FROM INFRINGEMENT. WITHOUT LIMITING THE GENERALITY OF THE FOREGOING, NEITHER COMPAQ, PHOENIX NOR INTEL MAKE ANY WARRANTY OF ANY KIND THAT ANY ITEM DEVELOPED BASED ON THIS SPECIFICATION, OR ANY PORTION OF IT, WILL NOT INFRINGE ANY COPYRIGHT, PATENT, TRADE SECRET OR OTHER INTELLECTUAL PROPERTY RIGHT OF ANY PERSON OR ENTITY IN ANY COUNTRY. Table of Contents 1.0 INTRODUCTION 5 1.1 REVISION HISTORY 5 1.2 RELATED DOCUMENTS 5 1.3 PURPOSE 5 1.4 TERMS 6 2.0 OVERVIEW 9 2.1 DESCRIPTION 9 3.0 IPL DEVICES 10 3.1 REQUIREMENTS FOR IPL DEVICES 10 3.1.1 IPL TABLE 10 3.1.2 PRODUCT NAME STRING 11 3.2 BAIDS 11 3.3 DEVICES WITH PNP EXPANSION HEADERS
    [Show full text]
  • Virus Infection Techniques: Boot Record Viruses
    Virus Infection Techniques: Boot Record Viruses Bill Harrison CS4440/7440 Malware Analysis and Defense Reading } Start reading Chapter 4 of Szor 2 Virus Infection Techniques } We will survey common locations of virus infections: MBR (Master Boot Record) Boot sector Executable files (*.EXE, *.COM, *.BAT, etc.) } Most of the examples of these viruses, especially the first two types, are from the DOS and floppy disk era 3 Why Study Older Viruses? } Vulnerabilities remain very similar over time, along with the means to exploit them and defend against them } Modern Internet worms differ mainly in the use of the internet for transport, and are otherwise similar to older viruses } Older viruses illustrate the virus vs. antivirus battle over many generations 4 Boot-up Infections and the PC Boot-up Sequence } PC boot-up sequence: 1. BIOS searches for boot device (might be a diskette, hard disk, or CD-ROM) 2. MBR (Master Boot Record) is read into memory from the beginning of the first disk partition; execution proceeds from memory 5 Master Boot Record Structure Boot-up Sequence cont’d. 3. Beginning of MBR has tiny code called the boot- strap loader 4. Data area within MBR has the disk PT (partition table) 5. Boot-strap loader reads PT and finds the active boot partition 6. Boot-strap loader loads the first sector of the active partition into memory and jumps to it; this is called the boot sector 7 Boot-up Sequence cont’d. } MBR is always at BIOS the very first sector of the hard MBR: Expanded View MBR Boot-strap loader code (446 disk (first 512
    [Show full text]
  • Intel Embedded Graphics Drivers, EFI Video Driver, and Video BIOS V10.4
    Intel® Embedded Graphics Drivers, EFI Video Driver, and Video BIOS v10.4 User’s Guide April 2011 Document Number: 274041-032US INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR. Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked “reserved” or “undefined.” Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information. The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
    [Show full text]
  • INT 13H 08H: Get Drive Parameters
    INT 13H 08H: Get Drive Parameters [XT] [AT] Expects: AH 08H DL drive: 80H-81H=hard disk -------------------------------------------------------------------------------------------------------------- Returns: AH BIOS disk error code if CF is set to CY CX maximum value for cylinder and sector (see below) DL number of hard disks on first controller DH maximum value for head ES:DI vendor specific ! (address of Hard Disk Parameter Table ) -------------------------------------------------------------------------------------------------------------- Info: Returns information about a drive. These values are initially set from a table in ROM, determined by the disk-type code stored in CMOS Memory . CX Bits 6-7 of CL are the high two bits of the 10-bit value whose low 8 bits are in CH. See INT 13H 02H for details. Hard Disk Parameter Table This 16-byte structure can be found at the vector address of INT 41H (the 4-byte address at 0:0104). The parameters for a second hard disk (if any) are found at the vector for INT 46H . These tables specify a variety of critical variables for hard disk drive operations. XT The switches on the controller board select one of four drive types for each hard disk drive. At boot time, the BIOS sets INT 41H and INT 46H as indicated on these switches. AT The INT 41H and INT 46H vectors are set according to the AT Drive Type value which is a CMOS Memory variable stored by the "Setup" program. HardDiskParmRec Offset Size Contents --------------------------------------------------------------------------------------------------------------
    [Show full text]
  • System BIOS for IBM® Pcs, Compatibles, and EISA Computers, Second Edition
    TECHNICAL REFERENCE SERIES • System BIOS for IBM® PCs, Compatibles, and EISA Computers, Second Edition The Complete Guide to ROM-Based System Software PHOENIX TECHNOLOGIES LTD. J TT Addison-Wesley Publishing Company, Inc. Reading, Massachusetts Menlo Park, California New York Don Mills, Ontario Wokingham, England Amsterdam Bonn Sydney Singapore Tokyo Madrid San Juan Paris Seoul Milan Mexico City Taipei Table of Contents Preface xv 1 The ROM BIOS Overview 1 Interrupts 3 BIOS Interrupt Service Routines 5 BIOS Device Service Routines 5 Unexpected-Interrupt Handlers 7 Summary: BIOS Services 8 2 XT, ISA, and EISA Hardware Overview 15 Microprocessor 16 Math Coprocessor 18 XT, ISA, and EISA Buses 19 I/O Devices 23 Timers and Counters 26 Programmable Interrupt Controllers 28 Direct Memory Access 29 EISA Bus Master Support 32 Miscellaneous Additional Logic 34 System BIOS for IBM PCs, Compatibles, and EISA Computers V Table Of Contents, Continued 3 System RAM Data Overview 35 Interrupt Vector Table 36 BIOS Data Area 39 Extended BIOS Data Area 46 4 CMOS RAM Data Overview 47 Standard or Extended CMOS RAM Data Definitions 48 EISA CMOS RAM Data 52 5 ROM BIOS Data Overview 53 Compatibility Segment 54 System Configuration Table 57 Diskette Parameters Table 59 ISA and EISA Fixed Disk Parameters Table 61 XT Fixed Disk Parameters Table 66 Baud Rate Initialization Table 68 6 I/O Ports Overview 69 I/O Port List 70 Video I/O Port Lists 92 vi System BIOS for IBM PCs, Compatibles, and EISA Computers Table of Contents, Continued 7 Power-On Self Test Overview
    [Show full text]
  • Experiment #0
    LAB. 2: BIOS Interrupts (Int 10h) Text and Pixel based Graphics Objectives: The objective of this experiment is to introduce BIOS interrupt service routines to write assembly language programs for text and pixel based graphics. 1.1 Introduction: The Basic Input Output System (BIOS) is a set of x86 subroutines stored in Read-Only Memory (ROM) that can be used by any operating system (DOS, Windows, Linux, etc) for low-level input/output to various devices. Some of the services provided by BIOS are also provided by DOS. In fact, a large number of DOS services make use of BIOS services. There are different types of interrupts available which are divided into several categories as shown below: Interrupt Types Description 0h - 1Fh BIOS Interrupts 20h - 3Fh DOS Interrupts 40h - 7Fh reserved 80h - F0h ROM BASIC F1h - FFh not used BIOS interrupt routines provide a number of services that can be used to write programs. These services include formatting disks, creating disk files, reading from or writing to files, reading from keyboard, writing to display monitor, etc. The software interrupt instruction INT is used for calling these services. In text mode, the cursor is always displayed on the screen and the resolution is indicated as number of characters per line and number of lines per screen. In graphics mode, the cursor will not appear on the screen and the resolution is specified as number of pixels per line and number of lines per screen. Text can be used as usual in graphics mode. 1 1.2 Text Mode Programming 0,0 0,79 0,4F(hex) Screen Center 12,39 0C,27(hex) 24,0 24,79 18,0(hex) 18,4F(hex) Positions on the screen are referenced using (row, column) coordinates.
    [Show full text]
  • Hacking the Extensible Firmware Interface
    HackingHacking thethe ExtensibleExtensible FirmwareFirmware InterfaceInterface John Heasman, Director of Research Agenda The role of the BIOS Attacking a legacy BIOS Limitations of the legacy BIOS Introduction to the EFI environment Attacking the EFI environment UEFI, summary and conclusions Some Caveats… This talk is about rootkit persistence - How to deploy a rootkit from the BIOS/EFI - Not concerned with what the rootkit actually does This talk is not about Trusted Computing… - EFI spec does not mandate TPM Some attacks may require physical access - And most require root access - Could be deployed as a blended attack - e.g. browser bug -> escalation to kernel -> firmware Parts of this research are still work in progress… The Role of the BIOS Test and initialise the hardware - Configure Northbridge and Southbridge Locate and execute options ROMs - Scan PCI buses - Copy option ROMs to RAM - Scan RAM for options ROMs and execute Provide means of user configuration - User can select boot device priority and configure hw - Persists settings to CMOS Launch bootloader Attacking a Legacy BIOS #1 - Modify BIOS code and reflash firmware #2 - Modify PCI Option ROM and reflash device #3 - Modify ACPI tables and reflash firmware #4 - Non-persistent warm reboot attacks 1. Patching the BIOS Many places that we can insert code - Ultimately we want to subvert the bootloader - The bootloader relies on the Interrupt Vector Table - The IVT is created dynamically BIOS calls int 19h (“the bootstrap loader” vector) - Append code before this call after IVT is built - Rewrite IVT to hook desired interrupt Caveats: - May require physical access (write protect jumper) - Secure Flash may prevent unsigned updates 2.
    [Show full text]
  • The List of All Interrupts That Are Currently Supported by the Emulator
    basic 8086 and dos interrupts that are currently supported by the emulator Page 1 of 19 The list of all interrupts that are currently supported by the emulator. These interrupts should be compatible with IBM PC and all generations of x86, original Intel 8086 and AMD compatible microprocessors, however Windows XP may overwrite some of the original interrupts. Quick reference: INT 21h INT 10h/00h INT 21h/35h INT 21h/01h INT 10h/01h INT 10h/1003h INT 21h/39h INT 21h/02h INT 10h/02h INT 11h INT 21h/3Ah INT 21h/05h INT 10h/03h INT 12h INT 21h/3Bh INT 21h/06h INT 10h/05h INT 13h/00h INT 21h/3Ch INT 21h/07h INT 10h/06h INT 13h/02h INT 21h/3Dh INT 33h/0000h INT 21h/09h INT 10h/07h INT 13h/03h INT 21h/3Eh INT 33h/0001h INT 21h/0Ah INT 10h/08h INT 15h/86h INT 21h/3Fh INT 33h/0002h INT 21h/0Bh INT 10h/09h INT 16h/00h INT 21h/40h INT 33h/0003h INT 21h/0Ch INT 10h/0Ah INT 16h/01h INT 21h/41h INT 21h/0Eh INT 10h/0Ch INT 19h INT 21h/42h INT 21h/19h INT 10h/0Dh INT 1Ah/00h INT 21h/47h INT 21h/25h INT 10h/0Eh INT 20h INT 21h/4Ch INT 21h/2Ah INT 10h/13h INT 21h/56h INT 21h/2Ch the short list of supported interrupts with descriptions: INT 10h / AH = 0 - set video mode. input: AL = desired video mode. these video modes are supported: 00h - text mode.
    [Show full text]