<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Unprofessional Shell behavior in MQX Software Solutions</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286979#M9109</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'll take a look at what I did today and will try to cobble it into something presentable haha. Its for MQX with KSDK 4.2&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 03 Aug 2015 10:23:46 GMT</pubDate>
    <dc:creator>danielhadley</dc:creator>
    <dc:date>2015-08-03T10:23:46Z</dc:date>
    <item>
      <title>Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286959#M9089</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am experimenting with MQX Shell in a terminal and see the following problems:&lt;/P&gt;&lt;P&gt;1. Backspace also deletes the prompt, i.e. the &lt;STRONG&gt;shell&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;2. Entered chars are deleted properly but are not removed from the buffer, i.e. the user thinks that he has deleted entered chars but actually they are still there and will be executed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is this expected and are there any ways to fix this? Thanks!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Anguel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 26 Apr 2013 15:00:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286959#M9089</guid>
      <dc:creator>anguel</dc:creator>
      <dc:date>2013-04-26T15:00:42Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286960#M9090</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Anguel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;yes, that is the shell behavior. Indeed deleted chars should be deleted from the buffer. I will notify MQX team to look on this,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you decide to make the improvement on your own, please share your code with community ! Thanks !&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 May 2013 10:36:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286960#M9090</guid>
      <dc:creator>Martin_</dc:creator>
      <dc:date>2013-05-07T10:36:41Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286961#M9091</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Martin,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for the answer. I had looked through the demos and thought that maybe some of the demos are unfinished and therefore show this incomplete shell behavior...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Actually, I am really disappointed. The shell is presented as part of the "mature" and "proven" MQX and I expected something that one can use "as is" and immediately give it to the customers, not something that has to be developed first.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope that Freescale will implement the shell properly as soon as possible. I have enough work to do with other problems of MQX and non-working board demos that normally "should" work out of the box according to the advertisements. I simply don't have the time and resources to rewrite the shell component so I hope that your developers will be able to do this. Sorry, but I am tired of all the marketing to see that nothing is actually done properly...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Anguel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 May 2013 11:46:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286961#M9091</guid>
      <dc:creator>anguel</dc:creator>
      <dc:date>2013-05-07T11:46:22Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286962#M9092</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Anguel, although I can understand some of your comments, I also think that "shell" is working out of the box, it just doesn't have features that your application requires. For this purposes, we give you all source codes. You don't need to start programming from scratch. Personally I see this as advantage.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your feedback ! Forwarding to responsible internal team... &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 May 2013 12:03:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286962#M9092</guid>
      <dc:creator>Martin_</dc:creator>
      <dc:date>2013-05-07T12:03:33Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286963#M9093</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am not aware of your software quality assurance if you have any, but in my small company if a programmer gives such a shell to a customer I would immediately fire him. Such things don't need experienced programmers, some students that have ever used a command prompt should be able to see such problems. Source code is nice but Freescale is not distributing the shell as some unfinished demo code but as a component of a proven industrial-grade OS that is in version 4. An customers expect to be able to use such components without modifications. Again, no shell should delete its own prompt and commands deleted by backspace should not execute on enter just because they are still in some internal buffer for some unknown reason. There is IMHO no excuse for such things, I have not seen a shell that behaves like this. This is not a shell, this is blind typing where you don't execute what you see on the screen. Unfortunately, many developers do not even test such things, rely on your shell and then the customer accidentally formats his SD card because he thought that he had deleted the format command he had entered before...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 May 2013 12:48:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286963#M9093</guid>
      <dc:creator>anguel</dc:creator>
      <dc:date>2013-05-07T12:48:04Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286964#M9094</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Anguel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I had the same problem. This should be due to your console that sends a DEL (ASCII 127) instead of a BACKSPACE (ASCII &lt;SPAN class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;&lt;LI-EMOJI id="lia_smiling-face-with-sunglasses" title=":smiling_face_with_sunglasses:"&gt;&lt;/LI-EMOJI&gt;&lt;/SPAN&gt; when you press the BACKSPACE key (depending on console configuration).&lt;/P&gt;&lt;P&gt;Your can oress CTRL-H instead and it should delete characters properly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In fact the DEL is echo-ed back to your console and visually deletes a character on the line, but is not understood by MQX as it should be. That's why MQX lets you also delete the prompt on your console.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I fixed it for MQX34 by adding support for DEL in the BSP sources :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mqx/source/io/serial/int/serl_int.c&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mqx/source/io/serial/polled/serl_pol.c&lt;/P&gt;&lt;P&gt;(only one file is really mandatory : the one you use, depending if you use the polled or int serial driver)&lt;/P&gt;&lt;P&gt;and rebuild the MQX BSP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The fix is easy; for example in serl_int.c I've added the code between line 13 and 19 below :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13685604392184862" jivemacro_uid="_13685604392184862"&gt;
&lt;P&gt;if (flags &amp;amp; IO_SERIAL_TRANSLATION) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp; if (c == '\r') {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Start CR 387 */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (flags &amp;amp; IO_SERIAL_ECHO) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)c);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } /* Endif */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* End CR 387 */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; c = '\n';&lt;/P&gt;
&lt;P&gt;&amp;nbsp; } else if ((c == '\b') &amp;amp;&amp;amp; (flags &amp;amp; IO_SERIAL_ECHO)) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)'\b');&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)' ');&lt;/P&gt;
&lt;P&gt;&amp;nbsp; } /* Endif */&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; else if (c == 127) { // DEL is translated to BS&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (flags &amp;amp; IO_SERIAL_ECHO) {&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)'\b');&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)' ');&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; c = '\b';&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; }&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;}&lt;/SPAN&gt;&lt;/P&gt;

&lt;/PRE&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;You should find nearly the same code in &lt;/SPAN&gt;serl_pol.c where you can apply the same fix if needed.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 May 2013 16:47:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286964#M9094</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2013-05-11T16:47:13Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286965#M9095</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Gilles,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Many thanks for the help with the DEL vs Backspace problem! Indeed some terminals seem to send DEL and MQX does not handle that.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As far as I understand this does not fix the prompt deletion or did I overlook something?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Anguel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 May 2013 12:34:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286965#M9095</guid>
      <dc:creator>anguel</dc:creator>
      <dc:date>2013-05-13T12:34:30Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286966#M9096</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Anguel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You're right, the code above does not prevent the prompt deletiion; it just makes DEL behave as BS so that you can delete characters properly and be sure of the command that is run when pressing ENTER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is a new code for MQX3.7 disabling the echo of the BS/DEL when the command is empty, so that the BS/DEL does not delete more characters on your console than expected. When IO_SERIAL_TRANSLATION and IO_SERIAL_ECHO are enabled (the case for the prompt), I use the field LOCATION of the file descriptor to store the number of charactes currently in the command. This field was not used by serial driver (seek() not supported).&lt;/P&gt;&lt;P&gt;Here is the new code for _io_serial_int_read() in mqx/source/io/serial/int/serl_int.c in MQX3.7 (for interrupt mode serial driver)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13685628941595903" jivemacro_uid="_13685628941595903"&gt;
&lt;P&gt;} /* Endif */&lt;/P&gt;
&lt;P&gt;_int_enable();&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;/**** START new code ****/&lt;/P&gt;
&lt;P&gt;if (flags &amp;amp; IO_SERIAL_TRANSLATION) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; if (c == '\n') {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (flags &amp;amp; IO_SERIAL_ECHO) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)c, 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fd_ptr-&amp;gt;LOCATION = 0; // start on a new empty line&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; } else if (c == '\r') {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Start CR 387 */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (flags &amp;amp; IO_SERIAL_ECHO) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)c, 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, '\n', 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fd_ptr-&amp;gt;LOCATION = 0; // start on a new empty line&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } /* Endif */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* End CR 387 */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c = '\n';&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; } else if ((c == '\b') || (c == 127)) { // BS or DEL&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((flags &amp;amp; IO_SERIAL_ECHO) &amp;amp;&amp;amp; fd_ptr-&amp;gt;LOCATION) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)'\b', 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)' ', 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)'\b', 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fd_ptr-&amp;gt;LOCATION--; // character removed&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c = '\b'; // DEL is translated to BS&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; } else {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (flags &amp;amp; IO_SERIAL_ECHO) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)c, 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fd_ptr-&amp;gt;LOCATION++; // new character added to line&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;} else {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; /* no IO_SERIAL_TRANSLATION */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; if (flags &amp;amp; IO_SERIAL_ECHO) {&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _io_serial_int_putc_internal(int_io_dev_ptr, (char)c, 0);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;/**** END new code ****/&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;*data_ptr++ = c;&lt;/P&gt;
&lt;P&gt;--i;&lt;/P&gt;

&lt;/PRE&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;However this is only for the prompt on a serial line. When connecting through telnet, a similar code has to be added to rtcs/source/apps/telnetio.c in the lines under&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (io_ptr-&amp;gt;LOCAL_OPTIONS[TELOPT_ECHO]) {&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, I think the best way to do it for both serial line and telnet would be to :&lt;/P&gt;&lt;P&gt;- disable echo at serial line and telnet level&lt;/P&gt;&lt;P&gt;- modify shell/source/shell/shell.c to use a custom shell_getline() instead of fgets()&lt;/P&gt;&lt;P&gt;- manage command line edition and echo in this new function&lt;/P&gt;&lt;P&gt;This would make possible to add advanced edition features such as insertion or use of arrow keys. This is not possible to do it as it is currently implemented with fgets()&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 14 May 2013 20:12:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286966#M9096</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2013-05-14T20:12:45Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286967#M9097</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gilles,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Again, many many thanks for your help. I will have to look deeper into MQX Shell to understand especially the last part of your comments and the universal proposed solution. What I hope is that Freescale will get the Shell work properly now that you have pointed them to a possible solution. I also hope for a confirmation from Martin that your solution will be implemented ASAP by the developers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PS: For some unknown reason I cannot mark your answers as solution or as helpful...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Anguel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 May 2013 13:16:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286967#M9097</guid>
      <dc:creator>anguel</dc:creator>
      <dc:date>2013-05-15T13:16:15Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286968#M9098</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thank you gilles buloz for sharing your workaround :smileywink: We will look into this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;@anguel&lt;/P&gt;&lt;P&gt;I changed this thread into a discussion (not a question), that's the reason why you can't mark it as helpful/correct answer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;c0170&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 May 2013 18:39:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286968#M9098</guid>
      <dc:creator>c0170</dc:creator>
      <dc:date>2013-05-15T18:39:18Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286969#M9099</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've made a patch to add command line edition (including arrow keys) and history to the shell prompt :&lt;/P&gt;&lt;P&gt;&amp;nbsp; ENTER ; validate edition&lt;/P&gt;&lt;P&gt;&amp;nbsp; CTRL-C or ESCAPE+ESCAPE : abort edition&lt;/P&gt;&lt;P&gt;&amp;nbsp; BACKSPACE (BS or DEL) : delete character on the left of cursor&lt;/P&gt;&lt;P&gt;&amp;nbsp; CTRL-A / CTRL-E : move cursor to beginning / end of line&lt;/P&gt;&lt;P&gt;&amp;nbsp; CTRL-B / ARROW-LEFT : move cursor back one character&lt;/P&gt;&lt;P&gt;&amp;nbsp; CTRL-F / ARROW-RIGHT : move cursor forward one character&lt;/P&gt;&lt;P&gt;&amp;nbsp; CTRL-P / ARROW-UP : older history entry&lt;/P&gt;&lt;P&gt;&amp;nbsp; CTRL-N / ARROW-DOWN : newer history entry&lt;/P&gt;&lt;P&gt;This works with shell on serial console but also when connected through Telnet.&lt;/P&gt;&lt;P&gt;I've tested this patch with MQX 3.4 and MQX 3.7 but it should work with other versions as nothing seems to have changed in the impacted code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This support is added in a new Shell_getline() function called at prompt that temporarily disables echo on stdin and manages the echo by itself (as does bash shell under Linux). This function is called by the shell instead of fgets() for prompt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've also fixed the telnet server to make it work also when connected to the MQX shell through Telnet.&lt;/P&gt;&lt;P&gt;This also fixes the IO_IOCTL_SERIAL_SET_FLAGS ioctl that was failing in disabling the echo when connected through Telnet; so now your can disable the echo for example at a password imput.to prevent password from beeing displayed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;By default the history size is only one command (the last one), but it can be set to any greater value (if you have enough RAM) by changing shell/source/include/sh_prv.h from :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HISTORY[SHELL_MAX_CMDLEN]; // one line of history&lt;/P&gt;&lt;P&gt;to&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HISTORY[SHELL_MAX_CMDLEN*10]; // 10 lines of history&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;If you want to call &lt;/SPAN&gt;Shell_getline() from an application program, you can declare it as global and use some history or not depending on requirements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In addition you can also use the last patch I posted if you want to fix non working BACKSPACE key or prevent over deletion when using standard fgets(), fgetline() .... functions on serial console, in existing applications other than shell prompt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also please note that "!" no more works to recall last command (use ARROW-UP or CTRL-B), so in addition to what the patch does, you can also delete the whole "if" block containing the deleted line : &lt;/P&gt;&lt;P&gt;// strncpy(shell_ptr-&amp;gt;HISTORY,shell_ptr-&amp;gt;CMD_LINE,sizeof(shell_ptr-&amp;gt;HISTORY));&lt;/P&gt;&lt;P&gt;If you want to keep support for "!", add it to the Shell_getline_internal() function where ENTER or \n are processed to return the last command from history when "!" has been typed.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Jun 2013 20:27:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286969#M9099</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2013-06-26T20:27:17Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286970#M9100</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gilles,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Many many thanks for your enhancement. This is really great and Freescale should reward you in some way.&lt;/P&gt;&lt;P&gt;I am currently working on a different non-MQX project but will certainly use your patch as soon as I get back to MQX Shell!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Many thanks again!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Anguel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 27 Jun 2013 08:36:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286970#M9100</guid>
      <dc:creator>anguel</dc:creator>
      <dc:date>2013-06-27T08:36:48Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286971#M9101</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is the full featured final patch I tested today on my MCF52259 board, with MQX 3.4 and MQX 3.7.&lt;/P&gt;&lt;P&gt;Features are :&lt;/P&gt;&lt;P&gt;- shell command line edition with history (when connected through serial line or through Telnet)&lt;/P&gt;&lt;P&gt;- for existing applications using fgets or fgetline ..., , support for DEL in additon to BS for BACKSPACE key, and fix to prevent prompt deletion due to over usage of BACKSPACE key (works when connected through serial line or through Telnet)&lt;/P&gt;&lt;P&gt;- support for legacy ! + &amp;lt;ENTER&amp;gt; to run last command again&lt;/P&gt;&lt;P&gt;- fix for IO_IOCTL_SERIAL_SET_FLAGS ioctl that was failing in disabling the echo when connected through Telnet (so now your can disable the echo for example at a password imput.to prevent password from beeing displayed)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This patch is for MQX 3.7 and is probably ok "as is" with newer versions. To apply it on MQX 3.4, edit the patch to remove the ", 0" from the _io_serial_int_putc_internal() calls in mqx/source/io/serial/int/serl_int.c&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As said before, the default history size is only one command (the last one), but it can be set to any greater value (if you have enough RAM) by changing shell/source/include/sh_prv.h from :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HISTORY[SHELL_MAX_CMDLEN]; // one line of history&lt;/P&gt;&lt;P&gt;to&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HISTORY[SHELL_MAX_CMDLEN*10]; // 10 lines of history&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;WARNING : this patch fixes both interrupt and polled serial drivers; however I only tested this patch using the interrupt serial driver. Polled serial driver has not been tested however the modified code is exactly the same in both cases so the patch should work alos in polled mode. &lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 28 Jun 2013 22:03:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286971#M9101</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2013-06-28T22:03:49Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286972#M9102</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In addition to the patch above, here is a new version of the shell/source/shell/shell.c file to have a more memory efficient command line history.&lt;/P&gt;&lt;P&gt;To save some memory, each entry of history is no more stored in a fixed size array of 80 bytes per entry (leading to 1600 bytes for 20 history entries).&lt;/P&gt;&lt;P&gt;Instead of that, a single array is used for both command line and history : the command is the string at the beginning of the array and is null terminated; and the history is stored in the remaining place after this null.&lt;/P&gt;&lt;P&gt;The number of entries available in history depends on the size of the last commands typed, and on the size of the array.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example in shell/source/include/sh_prv.h, replace :&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;CMD_LINE[SHELL_MAX_CMDLEN];&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;HISTORY[SHELL_MAX_CMDLEN];&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;with&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;CMD_LINE[SHELL_MAX_CMDLEN * 2]; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;to have a single 160 bytes buffer, and use the new shell.c attached&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Sep 2013 22:07:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286972#M9102</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2013-09-18T22:07:21Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286973#M9103</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The zip file containing all modifed files for MQX 3.7&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 22 Sep 2013 20:51:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286973#M9103</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2013-09-22T20:51:34Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286974#M9104</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Go BUY an RTOS if you don't like what is free.&amp;nbsp; There is a saying that might teach you quite a bit, you get what you pay for.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 May 2014 08:15:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286974#M9104</guid>
      <dc:creator>danieldelatorre</dc:creator>
      <dc:date>2014-05-14T08:15:00Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Re: Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286975#M9105</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;As a patch file is better to see the changes made and apply these changes to some other MQX release, please find the patch file corresponding to the modifed files above.&lt;/P&gt;&lt;P&gt;Nearly all modifications are made to the shell : to shell.c and sh_prv.h. These changes should be easy to port to some newer MQX releases (above 3.7) if needed.&lt;/P&gt;&lt;P&gt;Patching serl_int.c and serl_pol.c was to fix command line input with echo enabled, but as the new Shell_getline() implemented by this patch (in shell.c) runs with echo disabled, this should no more be needed.&lt;/P&gt;&lt;P&gt;Also the echo problem in the RTCS Telnet server seems fixed in newer MQX versions (according to release notes), so patching telnetio.c should also no more be required with these releases.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 09 Nov 2014 22:39:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286975#M9105</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2014-11-09T22:39:02Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286976#M9106</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi gilles,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm wondering if you have created a patch for the KSDK 1.2.0 version of MQX? We are looking at porting your patch to KSDK 1.2.0 but wanted to check with you first to see if you've already done so.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Jul 2015 14:05:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286976#M9106</guid>
      <dc:creator>andrewdarrow</dc:creator>
      <dc:date>2015-07-24T14:05:20Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286977#M9107</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I used Gilles patch on KSDK 1.20 recently. I didnt apply the patch automatically but went through altering the files by hand as I wasn't sure how much the directory structure had changed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I did have to change a few things, mainly the ioctl calls in the Shell_getline function in shell.c that disable echo, then some minor find &amp;amp; replace work elsewhere. I'd be happy to help too.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Jul 2015 08:33:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286977#M9107</guid>
      <dc:creator>danielhadley</dc:creator>
      <dc:date>2015-07-27T08:33:10Z</dc:date>
    </item>
    <item>
      <title>Re: Unprofessional Shell behavior</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286978#M9108</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm happy to see that you used my patch.&lt;/P&gt;&lt;P&gt;This patch is not specific to a platform but to the shell itself so it may be used on any platform supported by MQX; however I only had the opportunity to work with MQX3.7 on a MCF52259 board so I made no other patch than the one I posted here (this answers Andrew's question).&lt;/P&gt;&lt;P&gt;Reading your post, I understand you have succeeded in porting my code to your version of MQX and platform, so I would be very interested if you could tell me which MQX version and post the patch of your changes.&lt;/P&gt;&lt;P&gt;This could also be helpful to some other guys.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 31 Jul 2015 20:31:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Unprofessional-Shell-behavior/m-p/286978#M9108</guid>
      <dc:creator>trailman</dc:creator>
      <dc:date>2015-07-31T20:31:54Z</dc:date>
    </item>
  </channel>
</rss>

