1 Advanced Features of Keyboard Processing Suthida Chaichomchuen

Slides:



Advertisements
Similar presentations
Keyboard Training Instruction by: Connie Hutchison & Christopher McCoy.
Advertisements

BINARY & HEX I/O. Binary input : read in a binary number from keyboard, followed by a carriage return. character strings of 1’s & 0’ we need to convert.
DOS and BIOS Interrupts DOS and BIOS interrupts are used to perform some very useful functions, such as displaying data to the monitor, reading data from.
82C55 82C55 Programmable Peripheral Interface Interfacing Part III.
Computer Organization & Assembly Language
Direct video practice and Keyboard Operations
Chapter 7 Programming with DOS and BIOS Function Calls Objectives: The use of DOS and BIOS function call How to read the PC’s keyboard How to send text.
8.7 Memory management Program E Program D System memory DOS INT 21, function 48H: Allocate Memory Specification: allocates a number of memory paragraphs.
Kip Irvine: Assembly Language for Intel-Based Computers
Data Representation (in computer system) Computer Fundamental CIM2460 Bavy LI.
Practical Session No. 10 Input &Output (I/O). I/O Devices Input/output (I/O) devices provide the means to interact with the “outside world”. An I/O device.
University of Tehran 1 Interface Design Keyboard and Printer Omid Fatemi.
CHARACTERS Data Representation. Using binary to represent characters Computers can only process binary numbers (1’s and 0’s) so a system was developed.
Computer System Examples? Input Output Devices System Unit Devices
BIOS1 Basic Input Output System BIOS BIOS refers to a set of procedures or functions that enable the programmer have access to the hardware of the computer.
Lecture 11 Last notes on interrupts and exam review Dr. Dimitrios S. Nikolopoulos CSL/UIUC.
BIOS1 Basic Input Output System BIOS BIOS refers to a set of procedures or functions that enable the programmer have access to the hardware of the computer.
Get to Know Your Keyboard. Operational Keys Escape (Esc) – allows you to exit unwanted menus and dialog boxes Tab – used to indent; moves the cursor 5.
The x86 PC Assembly Language, Design, and Interfacing By Muhammad Ali Mazidi, Janice Gillespie Mazidi and Danny Causey © 2010, 2003, 2000, 1998 Pearson.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
BIOS and DOS Programming in DOS INT 10 and 21H. Interrupts There are some extremely useful subroutines within BIOS or DOS that are available to the user.
Another Example: #include<BIOS.H> #include<DOS.H>
ECE 103 Engineering Programming Chapter 57 Terminal Control Herbert G. Mayer, PSU CS Status 6/4/2014 Initial content copied verbatim from ECE 103 material.
1 Screen and Keyboard Operations Suthida Chaichomchuen
Standard Input Devices
ICS312 Set 9 Logic & Shift Instructions. Logic & Shift Instructions Logic and Shift Instructions can be used to change the bit values in an operand. The.
Text-Mode Programming Question #1 What are the three levels of access to the video display when writing characters on the screen in text mode?
8279 KEYBOARD AND DISPLAY INTERFACING
Introduction to Computers Section 2A. home Keyboard Alphanumeric keys Modifier keys Numeric keypad Function keys Cursor-movement keys Special-purpose.
Mid-term Exam Basics & intuitive All materials till-to-date – very simple! Ref. book – Assembly Language Programming and Organization of the IBM PC, by.
Video systems. Lesson plan Review the code for the previous exercise Video systems Review for midterm exam.
8086 Microprocessor Interrupts By: Vijay Kumar. K Reference From Slide Share.
21/11/2005CAP2411 Input & Output Instructions CPU communicates with the peripherals through I/O registers called I/O ports. There are 2 instructions, IN.
Writing and Reading Files Methods for processing disk files File Control Blocks (FCBs) –Supported by DOS –Can address drives and filenames.
Interacting with your Computer Chapter 2 Learning Objectives Identify five key groups on standard computer keyboard Name six special purpose keys.
10H Interrupt. Option 0H – Sets video mode. Registers used: – AH = 0H – AL = Video Mode. 3H - CGA Color text of 80X25 7H - Monochrome text of 80X25 Ex:
PPI-8255.
OFF = 0 ON = 1 = 63 BINARY system
ECE291 Lecture 10 Interrupts II. ECE 291 Lecture 9Slide 2 of 22 Lecture outline Installing/Removing ISRsInstalling/Removing ISRs Interrupt SchedulingInterrupt.
Control Structure vs. Assembly Language NASM. If-then-else If conditional then then_actions jump to endif else else_actions endif.
Binary 101 Gads Hill School. Aim To strengthen understanding of how computers use the binary number system to store information.
Integers/Characters Input/Output Integers and Characters Input/Output System Calls. syscall Trap Handler Services for Integers and Characters Read Integer,
Assembly Language for Intel-Based Computers, 4 th Edition Chapter 13: 16-Bit MS-DOS Programming Interrupts (c) Pearson Education, All rights reserved.
BIOS and DOS Interrupts Basic Input /Outpu System Disk Operating System.
Chapter Six. Exercises Clear the screen Write a procedure to show a symbol at (dl, dh). AL stores the symbol. Write a procedure to control a character.
Assembly Language Lecture 2. Lecture Outline Program Structure Memory models Data Segment Stack Segment Code Segment Input and Output Instructions INT.
Project Assignment Snake Game/Car Acceleration Meter Min 10 Pages 10 min Presentation Max 5 group members Submitting Date: lab 2:Dec 27, 2014 Lab 3: Dec.
Computer and Information Sciences College / Computer Science Department CS 206 D Computer Organization and Assembly Language.
Bitwise and Logical Manipulations Assembly Language Programming University of Akron Dr. Tim Margush.
File Operations. FILE PROCESSING For the purposes of the following discussion, reading means copying all or part of an existing file into memory Writing.
KEYBOARD/DISPLAY CONTROLLER - INTEL Features of 8279 The important features of 8279 are, Simultaneous keyboard and display operations. Scanned keyboard.
Program Structure Example for Data Segment CRLF EQU 0DH, 0AH PROMPT DB 'Enter a digit between 0 and 9', 0 VAR1 DB ? ARRAY DW 1234h, 23h, 0FF54h.
WYSINWYG Keith Merrington May 2011 / Page 1 Practical Examples Keith Merrington APP02 When WYI is not WYG (When What You Input is not What You Get)
1st prog! Q: Read a char – from a keyboard & display it at the beginning of the next line! ====== A.
CS-401 Computer Architecture Assembly Language Programming
Microprocessor and Assembly Language
Microprocessor and Assembly Language
Defining Types of data expression Dn [name] expression Dn [name]
Symbolic Instruction and Addressing
The slides must be understood in Lecture 5
Morgan Kaufmann Publishers Computer Organization and Assembly Language
Symbolic Instruction and Addressing
UNIT-V Interrupt structure of Vector interrupt table.
82C55 Programmable Peripheral Interface
Shift & Rotate Instructions)
LCD and Keyboard Sepehr Naimi
Symbolic Instruction and Addressing
Unit:08 Software Interrupts
Chapter 6 –Symbolic Instruction and Addressing
By Nasser Halasa Assembly Language.
Presentation transcript:

1 Advanced Features of Keyboard Processing Suthida Chaichomchuen

2 Introduction Shift status byte Scan code Keyboard buffer area

3 INT 21H FUNCTIONS 01H : Keyboard input with echo 06H : Direct console I/O 07H : Direct keyboard input without echo 08H : Keyboard input without echo 0AH : Buffered keyboard input 0BH : Check keyboard status 0CH : Clear buffer & invoke function

4 INT 16H FUNCTIONS 00H : Read a character 01H : Determine if character present 02H : Return current shift status 05H : Keyboard write 10H : Read keyboard character 11H : Determine if character present 12H : Return current shift status

5 Basic key types Standard characters –A-Z, 0-9, Characters: % $ # Extended function keys –Program function keys:, + –Numeric keypad keys with NumLock toggled off:,, – +alphabetics, +program-function keys Control keys –,,

6 Keyboard shift status Segment of data area is 40[0]H First byte of current keyboard shift status at 40:17H Bits set to 1 indicate following –7 : Insert active –6 : CapsLock state active –5 : NumLock state active –4 : ScrollLock state active –3 : pressed –2 : pressed –1 : pressed –0 : pressed

7 Keyboard shift status Second byte for the enhanced keyboard at 40:18H Bits set to 1 indicate following –7 : Insert pressed –6 : CapsLock pressed –5 : NumLock pressed –4 : ScrollLock pressed –3 : Ctrl/NumLock (pause) active –2 : SysReq pressed –1 : Left Alt pressed –0 : Left Ctrl pressed

8 INT 21H Function 01H Keyboard input with echo Response to a + request AH = 01H Value return –AL <> 0 : ASCII character –AL = 0 : user has pressed an extended function key Example –MOVAH,01H –INT21H

9 INT 21H Function 06H Direct console I/O Input : load 0FFH into DL Output : load ASCII character into DL AH = 06H Example –MOVAH,06H –INT21H

10 INT 21H Function 07H Direct keyboard input without echo Not response to a + request AH = 07H Example –MOVAH,07H –INT21H

11 INT 21H Function 08H Keyboard input without echo Work like function 01H AH = 08H Example –MOVAH,08H –INT21H

12 INT 21H Function 0AH Buffered keyboard input Inability to accept extended function keys AH = 0AH Example –MOVAH,0AH –LEADX,msg –INT21H

13 INT 21H Function 0BH Check keyboard status AH = 0BH Return value to AL –AL = FFH : character is available –AL = 00H : no character is available Example –MOVAH,0BH –INT21H

14 INT 21H Function 0CH Clear keyboard buffer and invoke function AH = 0CH AL = required function Example –MOVAH,0CH –MOVAL,function –MOVDX,kbarea –INT21H

15 INT 16H Function 00H Read a character AH = 00H Example –MOVAH,00H –INT16H

16 INT 16H Function 01H Determine whether a character is present AH = 01H Example –MOVAH,01H –INT16H

17 INT 16H Function 02H Return the current status AH = 02H AL = value return Example –MOVAH,02H –INT16H

18 INT 16H Function 05H Keyboard write Insert characters in the keyboard buffer AH = 05H CH = load ASCII character CL = load scan code Example –MOVAH,05H –INT16H

19 INT 16H Function 10H Read a keyboard character AH = 10H Example –MOVAH,10H –INT16H

20 INT 16H Function 10H Key pressed –Regular ASCII character AL = ASCII character AH = scan code –Extended function key AL = 00H AH = scan code –Extended duplicate control key AL = E0H AH = scan code

21 INT 16H Function 11H Determine whether a character is present Same as function 01H –accept the extended functions AH = 11H Example –MOVAH,11H –INT16H

22 INT 16H Function 12H Return the current keyboard shift status Similar to function 02H AH = 12H Example –MOVAH,12H –INT16H