Warning, /frameworks/syntax-highlighting/autotests/reference/highlight.asm-avr.ref is written in an unsupported language. File is not indexed.
0001 <Comment>;********************************************************************</Comment><br/> 0002 <Comment>;* LED flasher: LED will flash with a X on/off ratio at PD6</Comment><br/> 0003 <Comment>;*</Comment><br/> 0004 <Comment>;* </Comment><Alert Level 3>NOTE</Alert Level 3><Comment>: delay depends in the value of X, 1 is fast, 255 is slow</Comment><br/> 0005 <Comment>;*</Comment><br/> 0006 <Comment>;* No copyright ©1998 RES® * FREEWARE *</Comment><br/> 0007 <Comment>;*</Comment><br/> 0008 <Comment>;* </Comment><Alert Level 3>NOTE</Alert Level 3><Comment>: Connect a low current LED with a 1k resistor in serie from </Comment><br/> 0009 <Comment>;* Vdd to pin 11 of the MCU. (Or a normal LED with a 330ohm)</Comment><br/> 0010 <Comment>;* </Comment><br/> 0011 <Comment>;* RES® can be reached by email: digitalaudio@mail.com </Comment><br/> 0012 <Comment>;* or visit the website: http://home.wanadoo.nl/electro1/avr</Comment><br/> 0013 <Comment>;*</Comment><br/> 0014 <Comment>;* Version :1.0 </Comment><br/> 0015 <Comment>;* Date :12/26/98</Comment><br/> 0016 <Comment>;* Author :Rob's ElectroSoft®</Comment><br/> 0017 <Comment>;* Target MCU :AT90S1200-12PI@4MHz </Comment><br/> 0018 <Comment>;********************************************************************</Comment><br/> 0019 <Normal Text></Normal Text><br/> 0020 <Directive>.include</Directive><Normal Text> </Normal Text><String>"1200def.inc"</String><br/> 0021 <Normal Text></Normal Text><br/> 0022 <Normal Text> </Normal Text><Branch Instructions>rjmp</Branch Instructions><Normal Text> RESET </Normal Text><Comment>;reset handle</Comment><br/> 0023 <Normal Text></Normal Text><br/> 0024 <Normal Text></Normal Text><br/> 0025 <Comment>;* Long delay </Comment><br/> 0026 <Normal Text></Normal Text><br/> 0027 <Comment>;* Register variables</Comment><br/> 0028 <Normal Text></Normal Text><br/> 0029 <Normal Text> </Normal Text><Directive>.def</Directive><Normal Text> T1 </Normal Text><Symbol>=</Symbol><Normal Text> r1</Normal Text><br/> 0030 <Normal Text> </Normal Text><Directive>.def</Directive><Normal Text> T2 </Normal Text><Symbol>=</Symbol><Normal Text> r2</Normal Text><br/> 0031 <Normal Text> </Normal Text><Directive>.def</Directive><Normal Text> temp </Normal Text><Symbol>=</Symbol><Normal Text> r19</Normal Text><br/> 0032 <Normal Text></Normal Text><br/> 0033 <Comment>;* Code</Comment><br/> 0034 <Normal Text> </Normal Text><br/> 0035 <Label>longDelay:</Label><Normal Text> </Normal Text><br/> 0036 <Normal Text> </Normal Text><Keyword>clr</Keyword><Normal Text> T1 </Normal Text><Comment>;T1 used as delay 2nd count</Comment><br/> 0037 <Normal Text> </Normal Text><Keyword>clr</Keyword><Normal Text> T2 </Normal Text><Comment>;T2 used as delay 3d count</Comment><br/> 0038 <Label>delay_1:</Label><Normal Text> </Normal Text><br/> 0039 <Normal Text> </Normal Text><Keyword>dec</Keyword><Normal Text> T2</Normal Text><br/> 0040 <Normal Text> </Normal Text><Branch Instructions>brne</Branch Instructions><Normal Text> delay_1 </Normal Text><br/> 0041 <Normal Text> </Normal Text><Keyword>dec</Keyword><Normal Text> T1</Normal Text><br/> 0042 <Normal Text> </Normal Text><Branch Instructions>brne</Branch Instructions><Normal Text> delay_1 </Normal Text><br/> 0043 <Normal Text> </Normal Text><Keyword>dec</Keyword><Normal Text> temp </Normal Text><Comment>;temp must be preset as </Comment><br/> 0044 <Normal Text> </Normal Text><Branch Instructions>brne</Branch Instructions><Normal Text> delay_1 </Normal Text><Comment>; delay master count</Comment><br/> 0045 <Normal Text> </Normal Text><Branch Instructions>ret</Branch Instructions><Normal Text> </Normal Text><br/> 0046 <Normal Text></Normal Text><br/> 0047 <Normal Text></Normal Text><br/> 0048 <Comment>;* Resets the data direction register D</Comment><br/> 0049 <Normal Text></Normal Text><br/> 0050 <Comment>;* Defines</Comment><br/> 0051 <Normal Text></Normal Text><br/> 0052 <Normal Text> </Normal Text><Directive>.equ</Directive><Normal Text> led </Normal Text><Symbol>=</Symbol><Normal Text> </Normal Text><Decimal>6</Decimal><Normal Text> </Normal Text><Comment>;LED at PD6</Comment><br/> 0053 <Normal Text></Normal Text><br/> 0054 <Comment>;* Code</Comment><br/> 0055 <Normal Text></Normal Text><br/> 0056 <Label>RESET:</Label><br/> 0057 <Normal Text> </Normal Text><Keyword>sbi</Keyword><Normal Text> DDRD</Normal Text><Symbol>,</Symbol><Normal Text> led </Normal Text><Comment>;connect LED to PORTD pin 6</Comment><br/> 0058 <Normal Text> </Normal Text><br/> 0059 <Normal Text></Normal Text><br/> 0060 <Comment>;* Main program</Comment><br/> 0061 <Normal Text></Normal Text><br/> 0062 <Comment>;* This part will let the LED go on and off by X</Comment><br/> 0063 <Normal Text></Normal Text><br/> 0064 <Comment>;* Register variables</Comment><br/> 0065 <Normal Text></Normal Text><br/> 0066 <Normal Text> </Normal Text><Directive>.equ</Directive><Normal Text> X </Normal Text><Symbol>=</Symbol><Normal Text> </Normal Text><Decimal>10</Decimal><Normal Text> </Normal Text><Comment>;enter delaytime X</Comment><br/> 0067 <Normal Text></Normal Text><br/> 0068 <Label>flash:</Label><Normal Text> </Normal Text><br/> 0069 <Normal Text> </Normal Text><Keyword>sbi</Keyword><Normal Text> PORTD</Normal Text><Symbol>,</Symbol><Normal Text> led </Normal Text><Comment>;LED on</Comment><br/> 0070 <Normal Text> </Normal Text><Keyword>ldi</Keyword><Normal Text> temp</Normal Text><Symbol>,</Symbol><Normal Text> X </Normal Text><Comment>;X sec delay </Comment><br/> 0071 <Normal Text> </Normal Text><Branch Instructions>rcall</Branch Instructions><Normal Text> longDelay </Normal Text><br/> 0072 <Normal Text> </Normal Text><Keyword>cbi</Keyword><Normal Text> PORTD</Normal Text><Symbol>,</Symbol><Normal Text> led </Normal Text><Comment>;LED off </Comment><br/> 0073 <Normal Text> </Normal Text><Keyword>ldi</Keyword><Normal Text> temp</Normal Text><Symbol>,</Symbol><Normal Text> X </Normal Text><Comment>;X sec delay</Comment><br/> 0074 <Normal Text> </Normal Text><Branch Instructions>rcall</Branch Instructions><Normal Text> longDelay</Normal Text><br/> 0075 <Normal Text> </Normal Text><Branch Instructions>rjmp</Branch Instructions><Normal Text> flash </Normal Text><Comment>;another run</Comment><br/> 0076 <Normal Text></Normal Text><br/> 0077 <Comment>/* other </Comment><br/> 0078 <Comment>tests */</Comment><br/> 0079 <Normal Text></Normal Text><br/> 0080 <Directive>.org</Directive><Normal Text> LARGEBOOTSTART</Normal Text><br/> 0081 <Comment>; the following sets up RAMPZ:Z to point to a FLASH data object, typically</Comment><br/> 0082 <Comment>; for use with ELPM.</Comment><br/> 0083 <Keyword>ldi</Keyword><Normal Text> ZL</Normal Text><Symbol>,</Symbol><Normal Text> </Normal Text><Function>low</Function><Normal Text> </Normal Text><Symbol>(</Symbol><Normal Text>cmdtable </Normal Text><Symbol>*</Symbol><Normal Text> </Normal Text><Decimal>2</Decimal><Symbol>)</Symbol><br/> 0084 <Keyword>ldi</Keyword><Normal Text> ZH</Normal Text><Symbol>,</Symbol><Normal Text> </Normal Text><Function>high</Function><Normal Text> </Normal Text><Symbol>(</Symbol><Normal Text>cmdtable </Normal Text><Symbol>*</Symbol><Normal Text> </Normal Text><Decimal>2</Decimal><Symbol>)</Symbol><br/> 0085 <Directive>.if</Directive><Normal Text> </Normal Text><Symbol>((</Symbol><Normal Text>cmdtable </Normal Text><Symbol>*</Symbol><Normal Text> </Normal Text><Decimal>2</Decimal><Symbol>)</Symbol><Normal Text> </Normal Text><Symbol>></Symbol><Normal Text> </Normal Text><Decimal>65535</Decimal><Symbol>)</Symbol><br/> 0086 <Keyword>ldi</Keyword><Normal Text> r16</Normal Text><Symbol>,</Symbol><Normal Text> </Normal Text><Decimal>1</Decimal><br/> 0087 <Keyword>sts</Keyword><Normal Text> RAMPZ</Normal Text><Symbol>,</Symbol><Normal Text> r16</Normal Text><br/> 0088 <Directive>.endif</Directive><br/> 0089 <Comment>; more code follows here</Comment><br/> 0090 <Label>cmdtable:</Label><Normal Text> </Normal Text><Directive>.db</Directive><Normal Text> </Normal Text><String>"foo"</String><Symbol>,</Symbol><Normal Text> </Normal Text><Hex>0x0</Hex><br/> 0091 <Directive>.db</Directive><Normal Text> </Normal Text><String>"Hello</String><String Char>\n</String Char><String>"</String><Normal Text> </Normal Text><Comment>// is equivalent to:</Comment><br/> 0092 <Directive>.db</Directive><Normal Text> </Normal Text><Char>'H'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'e'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'l'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'l'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'o'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'\\'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'n'</Char><br/> 0093 <Directive>.db</Directive><Normal Text> </Normal Text><Char>'\0'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'\177'</Char><Symbol>,</Symbol><Normal Text> </Normal Text><Char>'\xff'</Char><br/> 0094 <Directive>.db</Directive><Normal Text> </Normal Text><String>"</String><String Char>\n</String Char><String>x</String><String Char>\r</String Char><String>x</String><String Char>\a</String Char><String>x</String><String Char>\b</String Char><String>x</String><String Char>\f</String Char><String>x</String><String Char>\t</String Char><String>x</String><String Char>\v</String Char><String>x</String><String Char>\\</String Char><String>x</String><String Char>\000</String Char><String>0</String><String Char>\xff</String Char><String>f</String><String Char>\0\1</String Char><String>"</String><br/> 0095 <Binary>0b10_111_</Binary><Normal Text>2 </Normal Text><Hex>0xaf3_4</Hex><Normal Text> </Normal Text><Octal>0_12</Octal><Normal Text> </Normal Text><Decimal>32_32</Decimal><Normal Text> </Normal Text><Hex>$32_3</Hex><br/> 0096 <Normal Text></Normal Text><br/> 0097 <Directive>.macro</Directive><Normal Text> m</Normal Text><br/> 0098 <Keyword>ldi</Keyword><Normal Text> </Normal Text><Referred Macro Parameter>@0</Referred Macro Parameter><Symbol>,</Symbol><Normal Text> </Normal Text><Referred Macro Parameter>@1</Referred Macro Parameter><br/> 0099 <Directive>.endm</Directive><Normal Text> m r16</Normal Text><Symbol>,\</Symbol><Normal Text> </Normal Text><Decimal>0</Decimal><br/> 0100 <Normal Text></Normal Text><br/> 0101 <Preprocessor>#define</Preprocessor><Normal Text> </Normal Text><Preprocessor>TEST</Preprocessor><Normal Text> </Normal Text><Symbol>\</Symbol><br/> 0102 <Directive>.IF</Directive><Normal Text> </Normal Text><Preprocessor>val</Preprocessor><Normal Text> </Normal Text><Symbol>\</Symbol><br/> 0103 <Directive>.DW</Directive><Normal Text> </Normal Text><Constant>__TIME__</Constant><Normal Text> </Normal Text><Symbol>\</Symbol><br/> 0104 <Directive>.ELSE</Directive><Normal Text> </Normal Text><Symbol>\</Symbol><br/> 0105 <Directive>.DW</Directive><Normal Text> </Normal Text><Decimal>1</Decimal><Normal Text> </Normal Text><Symbol>\</Symbol><br/> 0106 <Directive>.ENDIF</Directive><br/> 0107 <Normal Text></Normal Text><br/> 0108 <Preprocessor>#</Preprocessor><Unknown Preprocessor>defi</Unknown Preprocessor><Normal Text> </Normal Text><Preprocessor>TEST</Preprocessor><br/>