<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mcselec.com/bavr/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=COMPARE</id>
		<title>COMPARE - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=COMPARE"/>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=COMPARE&amp;action=history"/>
		<updated>2026-04-06T12:13:19Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.18.6</generator>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=COMPARE&amp;diff=5477&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;= &lt;span class=&quot;f_Header&quot;&gt;Action&lt;/span&gt; =  This function performs a byte compare on two variables.  &lt;span style=&quot;font-family: Arial;&quot;&gt;&amp;nbsp;&lt;/span&gt;  &lt;span style=&quot;font-family: A...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=COMPARE&amp;diff=5477&amp;oldid=prev"/>
				<updated>2017-01-17T19:57:38Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =  This function performs a byte compare on two variables.  &amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;  &amp;lt;span style=&amp;quot;font-family: A...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
This function performs a byte compare on two variables.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Syntax&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
result&amp;lt;span style=&amp;quot;font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;&amp;amp;nbsp;= COMPARE(&amp;amp;nbsp;&amp;lt;/span&amp;gt;var1, var2, bytes&amp;lt;span style=&amp;quot;font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Remarks&amp;lt;/span&amp;gt; =&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 4px;&amp;quot;&amp;gt;&lt;br /&gt;
{| style=&amp;quot;border: solid 2px #000000; border-spacing:0px; border-collapse: collapse;&amp;quot; width=&amp;quot;567&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:24%; border: solid 1px #000000;&amp;quot; width=&amp;quot;24%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
result&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;width:100%; border: solid 1px #000000;&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
A word variable that is assigned with the result of the function. When the 2 variables are equal, the value will be 0.&lt;br /&gt;
&lt;br /&gt;
When the 2 variables differ, the index is returned of the position that differs.&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:24%; border: solid 1px #000000;&amp;quot; width=&amp;quot;24%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
var1 , var2&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;width:100%; border: solid 1px #000000;&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
Any kind of variable like a long or string. Constants are not supported.&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:24%; border: solid 1px #000000;&amp;quot; width=&amp;quot;24%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
Bytes&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;width:100%; border: solid 1px #000000;&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
The number of bytes to test. The maximum value must fit into a word. (65535).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;See also&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;NONE&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Example&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bascomavr&amp;quot;&amp;gt;&lt;br /&gt;
'-------------------------------------------------------------------------&lt;br /&gt;
'name : compare.bas&lt;br /&gt;
'copyright : (c) 1995-2016, MCS Electronics&lt;br /&gt;
'purpose : demonstrates byte COMPARE function, written by MWS&lt;br /&gt;
'micro : Mega88&lt;br /&gt;
'suited for demo : yes&lt;br /&gt;
'commercial addon needed : no&lt;br /&gt;
'-------------------------------------------------------------------------&lt;br /&gt;
' purpose: byte-wise compare&lt;br /&gt;
' arg Val1: first value to compare, type = don't care&lt;br /&gt;
' arg Val2: second value to compare, type = don't care&lt;br /&gt;
' arg BtComp: count of bytes to compare, can be a constant or a variable&lt;br /&gt;
' range is 1 to 65535 bytes&lt;br /&gt;
' result: zero if all bytes within range of BtComp are matching&lt;br /&gt;
' 1 up to BtComp if there's a miss,&lt;br /&gt;
' zero is used for signaling a comlete match, so Config Base has no effect&lt;br /&gt;
' 1 is always the first byte of the variable, whatever type of variable it is&lt;br /&gt;
'-------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
$regfile = &amp;quot;m328pdef.dat&amp;quot;&lt;br /&gt;
$crystal = 16000000&lt;br /&gt;
$hwstack = 40&lt;br /&gt;
$swstack = 32&lt;br /&gt;
$framesize = 32&lt;br /&gt;
 &lt;br /&gt;
Const Testver = 2 ' edit for different tests 0,1 or 2&lt;br /&gt;
 &lt;br /&gt;
Dim Mmpos As Word ' dimension word var to hold the result, i.e. mismatch position&lt;br /&gt;
Dim btt As Word ' bytes to test&lt;br /&gt;
 &lt;br /&gt;
#if Testver = 0&lt;br /&gt;
 Dim Val_a(8) As Byte ' byte array vs. byte array&lt;br /&gt;
 Dim Val_b(8) As Byte ' arrays are initialyzed 0&lt;br /&gt;
 Btt = 8&lt;br /&gt;
 Val_a(4) = 1 ' test it&lt;br /&gt;
#elseif Testver = 1&lt;br /&gt;
 Dim Val_a As Double ' Double vs. byte array&lt;br /&gt;
 Dim Val_b(8) As Byte&lt;br /&gt;
 Btt = 8&lt;br /&gt;
 Val_b(2) = 1 ' test it&lt;br /&gt;
#elseif Testver = 2 ' compare strings&lt;br /&gt;
 Dim Val_a As String * 16&lt;br /&gt;
 Dim Val_b As String * 16&lt;br /&gt;
 Btt = 12&lt;br /&gt;
 Val_a = &amp;quot;Hello Bascom&amp;quot;&lt;br /&gt;
 Val_b = &amp;quot;Hello Bascon&amp;quot; ' find the mismatch&lt;br /&gt;
#endif&lt;br /&gt;
 &lt;br /&gt;
Mmpos = Compare(val_a , Val_b , Btt)&lt;br /&gt;
 &lt;br /&gt;
If Mmpos &amp;gt; 0 Then&lt;br /&gt;
 Print &amp;quot;We have a miss at pos: &amp;quot; ; Mmpos&lt;br /&gt;
Else&lt;br /&gt;
 Print &amp;quot;Match!&amp;quot;&lt;br /&gt;
End If&lt;br /&gt;
End&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
[[Category:BASCOM Language Reference]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>