<?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: MC68 HC908JB16 MON08 Source code in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153364#M8540</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For the MCU you are using, I assume that monitor mode uses PTA0 for serial communications.&amp;nbsp; It is usual that the data rate will be 9600 baud for a bus frequency of 2.4576MHz.&amp;nbsp; Now for the sub-routine:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Proc_FF:&amp;nbsp; pshx&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; psha&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lda&amp;nbsp;&amp;nbsp; #20 &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldx&amp;nbsp;&amp;nbsp; #28 &amp;nbsp;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;loc_1:&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 10 cycle loop&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; brclr 0,PTA,*+3 ; [5] CF = PTA0 state&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sbc&amp;nbsp;&amp;nbsp; #0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; [2] Subtract 0 or 1&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dbnzx loc_1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; [3] Total loop duration 280 cycles&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rola&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; CF set for negative value&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pula&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pulx&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rts&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;It would seem that this sub-routine is part of the serial communications process.&amp;nbsp; The total loop duration of 280 cycles appears to closely approximate one bit period at 9600 baud.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I guess this is used to detect a data bit state in the presence of noise.&amp;nbsp; The state is tested 28 times, and needs to be high for about 70 percent of the samples for a logic high to be decoded.&amp;nbsp; In this case, the ACC will have decremented to a negative value, and the ROL instruction will set the carry flag (CF).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Mac&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 20 Feb 2009 07:49:58 GMT</pubDate>
    <dc:creator>bigmac</dc:creator>
    <dc:date>2009-02-20T07:49:58Z</dc:date>
    <item>
      <title>MC68 HC908JB16 MON08 Source code</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153360#M8536</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi all, please, can anyone tell me about MON08 routines? i'm looking for source code of ROM MON08 functions, how it's implemented. Is it possible to find them? Alse, please, is there some ERRATA about mask codes on such chips? what the differense between L80P and 2L80P masks ? tanx&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Feb 2009 20:11:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153360#M8536</guid>
      <dc:creator>Inliner</dc:creator>
      <dc:date>2009-02-16T20:11:18Z</dc:date>
    </item>
    <item>
      <title>Re: MC68 HC908JB16 MON08 Source code</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153361#M8537</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hi Inliner,&lt;BR /&gt;&lt;BR /&gt;I don't think this is available. At least no one was offering it to me when &lt;A href="http://forums.freescale.com/freescale/board/message?board.id=OSBDM08&amp;amp;message.id=74" target="_blank"&gt;I was looking for this&lt;/A&gt;.&lt;BR /&gt;There only seems to be 1 errata shown here for the 1L52P.&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Feb 2009 06:18:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153361#M8537</guid>
      <dc:creator>peg</dc:creator>
      <dc:date>2009-02-17T06:18:58Z</dc:date>
    </item>
    <item>
      <title>Re: MC68 HC908JB16 MON08 Source code</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153362#M8538</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;Using an EVB for the particular HC908 device, I seem to recall that it was possible to disassemble the ROM based code within the device.&amp;nbsp; However, that is the simple part.&amp;nbsp; The code then needs to be reverse engineered and commented to make sense of it.&lt;BR /&gt;&lt;BR /&gt;I once did it for the flash programming routines within a '908QY device.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Mac&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Feb 2009 08:33:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153362#M8538</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2009-02-17T08:33:52Z</dc:date>
    </item>
    <item>
      <title>Re: MC68 HC908JB16 MON08 Source code</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153363#M8539</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Proc_FF:&lt;BR /&gt;&amp;nbsp; pshx&lt;BR /&gt;&amp;nbsp; psha&lt;BR /&gt;&amp;nbsp; lda #$14 &amp;nbsp;&lt;BR /&gt;&amp;nbsp; ldx #$1C &amp;nbsp;&lt;BR /&gt;loc_1:&lt;BR /&gt;&amp;nbsp; brclr 0 PTA *+3 &amp;nbsp;&lt;BR /&gt;&amp;nbsp; sbc #0&lt;BR /&gt;&amp;nbsp; dbnzx loc_1&lt;BR /&gt;&amp;nbsp; rola&lt;BR /&gt;&amp;nbsp; pula&lt;BR /&gt;&amp;nbsp; pulx&lt;BR /&gt;&amp;nbsp; rts&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Found this code inside, maybe anyone can tell the sense of this code?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Feb 2009 02:59:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153363#M8539</guid>
      <dc:creator>Inliner</dc:creator>
      <dc:date>2009-02-19T02:59:33Z</dc:date>
    </item>
    <item>
      <title>Re: MC68 HC908JB16 MON08 Source code</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153364#M8540</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For the MCU you are using, I assume that monitor mode uses PTA0 for serial communications.&amp;nbsp; It is usual that the data rate will be 9600 baud for a bus frequency of 2.4576MHz.&amp;nbsp; Now for the sub-routine:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;Proc_FF:&amp;nbsp; pshx&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; psha&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lda&amp;nbsp;&amp;nbsp; #20 &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldx&amp;nbsp;&amp;nbsp; #28 &amp;nbsp;&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;loc_1:&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 10 cycle loop&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; brclr 0,PTA,*+3 ; [5] CF = PTA0 state&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sbc&amp;nbsp;&amp;nbsp; #0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; [2] Subtract 0 or 1&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dbnzx loc_1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; [3] Total loop duration 280 cycles&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rola&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; CF set for negative value&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pula&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pulx&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rts&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;It would seem that this sub-routine is part of the serial communications process.&amp;nbsp; The total loop duration of 280 cycles appears to closely approximate one bit period at 9600 baud.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I guess this is used to detect a data bit state in the presence of noise.&amp;nbsp; The state is tested 28 times, and needs to be high for about 70 percent of the samples for a logic high to be decoded.&amp;nbsp; In this case, the ACC will have decremented to a negative value, and the ROL instruction will set the carry flag (CF).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Mac&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Feb 2009 07:49:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC68-HC908JB16-MON08-Source-code/m-p/153364#M8540</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2009-02-20T07:49:58Z</dc:date>
    </item>
  </channel>
</rss>

