3 ; Copyright (C) 2010 Leo C.
5 ; This file is part of avrcpm.
7 ; avrcpm is free software: you can redistribute it and/or modify it
8 ; under the terms of the GNU General Public License as published by
9 ; the Free Software Foundation, either version 3 of the License, or
10 ; (at your option) any later version.
12 ; avrcpm is distributed in the hope that it will be useful,
13 ; but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ; GNU General Public License for more details.
17 ; You should have received a copy of the GNU General Public License
18 ; along with avrcpm. If not, see <http://www.gnu.org/licenses/>.
23 ;------------------------------------------------
33 ;------------------------------------------------
43 ;------------------------------------------------
54 ;------------------------------------------------
55 ; load 16 bit constant to register pair
62 ;------------------------------------------------
63 ; add 16 bit constant to register pair
70 ;------------------------------------------------
71 ; sub 16 bit constant from register pair
78 ;------------------------------------------------
79 ; Move single bit between two registers
81 ; bmov dstreg,dstbit,srcreg.srcbit
88 ;------------------------------------------------
94 .org @0 ; vector address
95 .if abs(pos_ - PC) > 2048
98 rjmp pos_ ; jump to handler
100 .org pos_ ; restore PC
103 ;------------------------------------------------
107 .if FLASHEND > 0x0fff
114 ;------------------------------------------------
118 .if FLASHEND > 0x0fff
122 .if abs(PC - @0) > 2048
135 ;------------------------------------------------
137 ; printstring "String"
140 .if FLASHEND > 0x0fff
152 ;------------------------------------------------
162 ;------------------------------------------------
165 ; where F is the flag to print
182 ;------------------------------------------------
183 ; db_version VMAJOR, VMINOR
194 .db maj1_+'0',maj0_+'0','.',min1_+'0',min0_+'0',0
196 .db maj1_+'0',maj0_+'0','.', min0_+'0',0,0
200 .db maj0_+'0','.',min1_+'0',min0_+'0',0,0
202 .db maj0_+'0','.', min0_+'0',0
207 ; vim:set ts=8 noet nowrap