Quote Originally Posted by skimask View Post
It's monday! What'd you expect?
Wait 'till DT comes online...
Figure maybe down to...what...25 words total?
Thanks for the vote of confidence ski.

But sadly, all I could muster was a slim 335 words

Code:
<font color="#000000"><b>CMCON </b>= <font color="#800000"><b>7                </b></font><font color="#0000FF"><b><i>' Disable Comparators

</i></b></font><font color="#008000"><b>DEFINE </b></font><b>DEBUG_BAUD </b><font color="#800000"><b>2400   </b></font><font color="#0000FF"><b><i>'Debug baud rate 
</i></b></font><font color="#008000"><b>DEFINE </b></font><b>DEBUGIN_REG PORTB </b><font color="#0000FF"><b><i>'Debugin pin port 
</i></b></font><font color="#008000"><b>DEFINE </b></font><b>DEBUGIN_BIT </b><font color="#800000"><b>0     </b></font><font color="#0000FF"><b><i>'Debugin pin bit 
</i></b></font><font color="#008000"><b>DEFINE </b></font><b>DEBUGIN_MODE </b><font color="#800000"><b>1    </b></font><font color="#0000FF"><b><i>'Debugin mode: 0 = True, 1 = Inverted 

</i></b></font><b>Uin       </b><font color="#008000"><b>VAR WORD
</b></font><b>B0        </b><font color="#008000"><b>VAR BYTE 
</b></font><b>BarCount  </b><font color="#008000"><b>VAR BYTE
</b></font><b>BarValue  </b><font color="#008000"><b>VAR WORD
</b></font><b>MsgAddr   </b><font color="#008000"><b>VAR WORD
</b></font><b>Carry     </b><font color="#008000"><b>VAR </b></font><b>STATUS</b>.<font color="#800000"><b>0        </b></font><font color="#0000FF"><b><i>; Hardware carry flag

</i></b></font><font color="#008000"><b>GOTO </b></font><b>Main                     </b><font color="#0000FF"><b><i>; Jump over data
;=============================================================================
 </i></b></font><b>BarSteps</b>:  <b>POKECODE   </b><font color="#800000"><b>10</b></font>,<font color="#800000"><b>15</b></font>,<font color="#800000"><b>19</b></font>,<font color="#800000"><b>24</b></font>,<font color="#800000"><b>29</b></font>,<font color="#800000"><b>34</b></font>,<font color="#800000"><b>43</b></font>,<font color="#800000"><b>53</b></font>,<font color="#800000"><b>62</b></font>,<font color="#800000"><b>72</b></font>,<font color="#800000"><b>81</b></font>,<font color="#800000"><b>86</b></font>,<font color="#800000"><b>91</b></font>,<font color="#800000"><b>96</b></font>,<font color="#800000"><b>100</b></font>,<font color="#800000"><b>105
</b></font><b>_BarSteps   </b><font color="#008000"><b>CON </b></font><b>EXT           </b><font color="#0000FF"><b><i>; create a PBP constant that points to the Table

 </i></b></font><b>TooLow</b>:  <b>POKECODE </b><font color="#800000"><b>$FE</b></font>,<font color="#800000"><b>1</b></font>,<font color="#FF0000">&quot;TOO LOW &quot;</font>,<font color="#800000"><b>0
</b></font><b>_TooLow   </b><font color="#008000"><b>CON </b></font><b>EXT             </b><font color="#0000FF"><b><i>; PBP constant pointing to the &quot;Too Low &quot; string
  
 </i></b></font><b>TooRich</b>: <b>POKECODE </b><font color="#800000"><b>$FE</b></font>,<font color="#800000"><b>$C0</b></font>,<font color="#FF0000">&quot;TOO RICH&quot;</font>,<font color="#800000"><b>0
</b></font><b>_TooRich  </b><font color="#008000"><b>CON </b></font><b>EXT             </b><font color="#0000FF"><b><i>; PBP constant pointing to the &quot;Too Rich&quot; string
  
</i></b></font><b>FlashSize </b><font color="#008000"><b>CON </b></font><b>EXT
</b><font color="#008000"><b>ASM
   </b></font><font color="#000080">ifdef BSR
FlashSize = 2                 </font><font color="#0000FF"><b><i>; 18F has byte addressing (2)
   </i></b></font><font color="#000080">else
FlashSize = 1                 </font><font color="#0000FF"><b><i>; 12F/16F has words (1)
   </i></b></font><font color="#000080">endif
</font><font color="#008000"><b>ENDASM

</b></font><b>MidChar   </b><font color="#008000"><b>CON </b></font><b>EXT             </b><font color="#0000FF"><b><i>; MidChar is the border between
</i></b></font><font color="#000080">@MidChar = 8 * FlashSize      </font><font color="#0000FF"><b><i>; 8 char segments of the 1x16 LCD being used

;=============================================================================
</i></b></font><b>Main</b>:
    <font color="#008000"><b>DEBUGIN </b></font>[<b>Uin</b>.<b>LowByte</b>]     <font color="#0000FF"><b><i>; Serial Input
    </i></b></font><b>Uin </b>=  <b>Uin </b>*/ <font color="#800000"><b>124         </b></font><font color="#0000FF"><b><i>; same as (* 100 / 207)
    </i></b></font><font color="#008000"><b>LCDOUT </b></font><font color="#800000"><b>$FE</b></font>, <font color="#800000"><b>2             </b></font><font color="#0000FF"><b><i>; LCD Home Cursor

    </i></b></font><font color="#008000"><b>FOR </b></font><b>BarCount </b>= <font color="#800000"><b>0 </b></font><font color="#008000"><b>TO </b></font>(<font color="#800000"><b>15 </b></font>* <b>FlashSize</b>) <font color="#008000"><b>STEP </b></font><b>FlashSize
        </b><font color="#008000"><b>IF </b></font>(<b>BarCount </b>= <b>MidChar</b>) <font color="#008000"><b>THEN LCDOUT </b></font><font color="#800000"><b>$FE</b></font>,<font color="#800000"><b>$C0  </b></font><font color="#0000FF"><b><i>; Second half of 1x16 LCD
        </i></b></font><b>PEEKCODE </b>(<b>_BarSteps</b>+<b>BarCount</b>),<b>BarValue       </b><font color="#0000FF"><b><i>; Get BarValue from Table
        </i></b></font><b>R0</b>.<b>LowByte </b>= <b>Uin</b>.<b>LowByte </b>- <b>BarValue
        </b><font color="#008000"><b>IF </b></font><b>Carry </b><font color="#008000"><b>THEN                                </b></font><font color="#0000FF"><b><i>; Uin &gt;= BarValue
            </i></b></font><font color="#008000"><b>LCDOUT </b></font><font color="#800000"><b>255                               </b></font><font color="#0000FF"><b><i>;  show a Full char
        </i></b></font><font color="#008000"><b>ELSE                                         </b></font><font color="#0000FF"><b><i>; Uin &lt; BarValue
            </i></b></font><font color="#008000"><b>LCDOUT </b></font><font color="#FF0000">&quot; &quot;                               </font><font color="#0000FF"><b><i>;  show a blank
        </i></b></font><font color="#008000"><b>ENDIF
    NEXT </b></font><b>BarCount
    
    R0</b>.<b>LowByte </b>= <b>Uin</b>.<b>LowByte </b>- <font color="#800000"><b>10                    </b></font><font color="#0000FF"><b><i>; if Uin &lt; 10
    </i></b></font><font color="#008000"><b>IF </b></font>!<b>Carry </b><font color="#008000"><b>THEN </b></font><b>MsgAddr </b>= <b>_TooLow </b>: <font color="#008000"><b>GOSUB </b></font><b>ShowMsg

    R0</b>.<b>LowByte </b>= <b>Uin</b>.<b>LowByte </b>+ <font color="#800000"><b>145                   </b></font><font color="#0000FF"><b><i>; if Uin &gt; 110
    </i></b></font><font color="#008000"><b>IF </b></font><b>Carry </b><font color="#008000"><b>THEN </b></font><b>MsgAddr </b>= <b>_TooRich </b>: <font color="#008000"><b>GOSUB </b></font><b>ShowMsg
</b><font color="#008000"><b>GOTO </b></font><b>Main

</b><font color="#0000FF"><b><i>;=============================================================================
</i></b></font><b>ShowMsg</b>:
    <b>PEEKCODE MsgAddr</b>, <b>B0
    </b><font color="#008000"><b>IF </b></font><b>B0 </b>= <font color="#800000"><b>0 </b></font><font color="#008000"><b>THEN RETURN
    LCDOUT </b></font><b>B0
    MsgAddr </b>= <b>MsgAddr </b>+ <b>FlashSize
</b><font color="#008000"><b>GOTO </b></font><b>ShowMsg
</b>
cheers,