Arrow keys - input commands, Computer Engineering

Assignment Help:

When the user is inputting commands into your shell, it should identify the left, right , up and down arrow keys. To implement this, you will need to use the termios.h library to configure a custom input strategy. Remember that after changing the configuration, you should restore it to its original configuration before exiting the program. Also, change the reads to be non-canonical and disable echoing. This will give us control on how to handle each character the user inputs. It is tricky determining which character is left, right, up or down . Most characters are only one byte long. On the other hand, the character that is output when an arrow is pressed, is three bytes long. Here are the three byte sequences for left, right, up and down arrows:

l e f t --> {27 , 91 , 68}

r i g h t --> {27 , 91 , 67}

up --> {27 , 91 , 65}

down --> {27 , 91 , 66}

 Since we are not echoing characters, you will need to echo every character the user types. If left or right key is pressed nothing should happen. But if up or down arrow key is pressed it should work as described in the History section below.


Related Discussions:- Arrow keys - input commands

What is framework, What is framework? Framework is a skeletal structure...

What is framework? Framework is a skeletal structure of a program that must be elaborated to build a complete application. It has abstract classes.

What are the advantages of hierarchical networks, What are the advantages o...

What are the advantages of Hierarchical Networks? Hierarchical networks are able of handling heavy traffic where needed, and at similar time use minimal number of trunk groups

Propositional model, Propositional model: Hence a propositional model ...

Propositional model: Hence a propositional model was simply an assignments of truth values to propositions. In distinguish, a first-order model is a pair (Δ, Θ) where

What are the application-oriented languages, What are the Application-orien...

What are the Application-oriented languages Application-oriented languages are highest level, meaning very easy to write and assembly languages are the lowest, meaning hardest

Design a circuit which computes the square of a number, Design a circuit wh...

Design a circuit which computes the square of a number? This should not make use of any multiplier circuits. This should use Multiplexers and some other logic as: 1^2=0+1=1

Queue depth should be greater than zero, Tell me which queue having present...

Tell me which queue having present queue depth should be greater than zero? Ans) Event queues Open MQ Explorer by selecting Start > Programs > IBM WebSphere MQ > WebSphere

How to changing the directory in dos, Q. How to Changing the Directory in D...

Q. How to Changing the Directory in DOS? You can change the directory. After changing the directory, the new directory becomes the default directory. For example, you change th

Explain the instruction decode, Q. Explain the Instruction Decode? Ins...

Q. Explain the Instruction Decode? Instruction Decode: This phase is performed under control of Control Unit of computer. The Control Unit determines the operation which is t

Subtraction 11011-11001 using 2's complement, Subtraction 11011-11001 using...

Subtraction 11011-11001 using 2's complement. Ans. 11011 - 11001 = A - B 2's complement of B = 00111 1 1 0 1 1 + 0 0 1 1 1 1 0 0 0 1 0 Ignore carry to get answer as 00010 = 2.

Development tools environment , Main Objectives: • MPLAB In-Circuit Debugg...

Main Objectives: • MPLAB In-Circuit Debugger (ICD 2) functionality • ICD 2 Connection design • MPLAB ICD 2 setup with the PC and Interface board designed • I²C Protocol buses tech

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd