<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style>
<!--
@font-face
        {font-family:"Cambria Math"}
@font-face
        {font-family:Calibri}
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif"}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline}
span.EmailStyle17
        {font-family:"Calibri","sans-serif";
        color:#1F497D}
.MsoChpDefault
        {font-family:"Calibri","sans-serif"}
@page WordSection1
        {margin:72.0pt 72.0pt 72.0pt 72.0pt}
div.WordSection1
        {}
-->
</style>
</head>
<body lang="EN-GB" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D">A, B, C and D. Here I pressed the key after each word (e.g. “u”, “p”, <up arrow”):</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D">iPXE> up A down B right C left D</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D">up: command not found</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D">-Alex</span></p>
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D"> </span></p>
<p class="MsoNormal"><span style="font-size:11.0pt; font-family:"Calibri","sans-serif"; color:#1F497D"> </span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:11.0pt; font-family:"Calibri","sans-serif"">From:</span></b><span lang="EN-US" style="font-size:11.0pt; font-family:"Calibri","sans-serif""> Alex Davies [mailto:alex@davz.net]
<br>
<b>Sent:</b> 11 April 2014 23:18<br>
<b>To:</b> Alex Davies<br>
<b>Subject:</b> Fwd: [ipxe-devel] serial arrow keys broken</span></p>
<p class="MsoNormal"> </p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"> </p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">---------- Forwarded message ----------<br>
From: <b>Peter Pickford</b> <<a href="mailto:peter@netremedies.ca">peter@netremedies.ca</a>><br>
Date: Wed, Apr 9, 2014 at 11:48 AM<br>
Subject: Re: [ipxe-devel] serial arrow keys broken<br>
To: Alex Davies <<a href="mailto:alex@davz.net">alex@davz.net</a>><br>
<br>
</p>
<div>
<p class="MsoNormal">If you exit the menu and got to the ipxe command line what do you get when you press the arrow keys?</p>
</div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"> </p>
<div>
<p class="MsoNormal">On 9 April 2014 03:41, Alex Davies <<a href="mailto:alex@davz.net" target="_blank">alex@davz.net</a>> wrote:</p>
<blockquote style="border:none; border-left:solid #CCCCCC 1.0pt; padding:0cm 0cm 0cm 6.0pt; margin-left:4.8pt; margin-right:0cm">
<div>
<p class="MsoNormal">Hi All,</p>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">We had the same problem using SOL on Dell hardware.</p>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">I tried both your patch Michael and the divide by two suggested at the top of this thread, without joy.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">Interestingly, pressing the arrow key does stop the countdown timer, but the menu selector does not move, so iPXE is getting something. What debug flag should I enable to see what it is getting?</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">The menu is working nicely with color and if I connect to the 'full console' via the DRAC, and move the arrow key, the SOL menu refreshes correctly.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">Thanks!</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">-Alex</p>
</div>
</div>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"> </p>
<div>
<div>
<div>
<p class="MsoNormal">On Thu, Mar 27, 2014 at 2:46 PM, Michael Brown <<a href="mailto:mcb30@ipxe.org" target="_blank">mcb30@ipxe.org</a>> wrote:</p>
</div>
</div>
<blockquote style="border:none; border-left:solid #CCCCCC 1.0pt; padding:0cm 0cm 0cm 6.0pt; margin-left:4.8pt; margin-right:0cm">
<div>
<div>
<div>
<p class="MsoNormal">On 27/03/14 08:36, Peter Pickford wrote:</p>
</div>
<blockquote style="border:none; border-left:solid #CCCCCC 1.0pt; padding:0cm 0cm 0cm 6.0pt; margin-left:4.8pt; margin-right:0cm">
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">The arrow keys would not work in my ipxe serial console.<br>
<br>
The following seems to fix it but causes a busy wait while reading<br>
escape sequences.</p>
</div>
<p class="MsoNormal"><snip></p>
</blockquote>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
Arrow keys over serial works for me.  Could you try the attached (untested) patch, which preserves the cpu_nap() while changing the ordering of events such that a keypress arriving during the cpu_nap() will be detected even if the timeout has expired?<br>
<br>
Thanks,<br>
<br>
Michael</p>
</div>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">_______________________________________________<br>
ipxe-devel mailing list<br>
<a href="mailto:ipxe-devel@lists.ipxe.org" target="_blank">ipxe-devel@lists.ipxe.org</a><br>
<a href="https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel" target="_blank">https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel</a></p>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span style="color:#888888"><br>
<br clear="all">
</span></p>
<div>
<p class="MsoNormal"><span style="color:#888888"> </span></p>
</div>
<p class="MsoNormal"><span style="color:#888888">-- <br>
Alex Davies<br>
<br>
</span><span style="font-size:10.0pt; color:#888888">This email and any files transmitted with it are confidential and<br>
intended solely for the use of the individual or entity to whom they<br>
are addressed. If you have received this email in error please notify<br>
the sender immediately by e-mail and delete this e-mail permanently.</span><span style="color:#888888">
</span></p>
</div>
</blockquote>
</div>
<p class="MsoNormal"> </p>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><br>
<br clear="all">
</p>
<div>
<p class="MsoNormal"> </p>
</div>
<p class="MsoNormal">-- <br>
Alex Davies<br>
<br>
<span style="font-size:10.0pt">This email and any files transmitted with it are confidential and<br>
intended solely for the use of the individual or entity to whom they<br>
are addressed. If you have received this email in error please notify<br>
the sender immediately by e-mail and delete this e-mail permanently.</span> </p>
</div>
</div>
<br>
<hr>
<font face="Arial" color="Gray" size="1"><br>
This email is sent by Jump Trading International Limited ("Jump" or "JTIL"), a private limited company registered in England & Wales under No. 05976015, authorised and regulated by the Financial Conduct Authority. Registered office: 2nd Floor, 10 Chiswell Street,
 London EC1Y 4UQ. Tel: +44(0) 20 7382 4351. This email is for the confidential use of the named addressee(s) only and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you are hereby notified that any review,
 dissemination or copying of this email is strictly prohibited, and to please notify the sender immediately and destroy this email and any attachments. Email transmission cannot be guaranteed to be secure or error-free. Jump Trading International Ltd, therefore,
 does not make any guarantees as to the completeness or accuracy of this email or any attachments. This email is for informational purposes only and does not constitute a recommendation, offer, request or solicitation of any kind to buy, sell, subscribe, redeem
 or perform any type of transaction of a financial product.</font><br>
</body>
</html>