]> cloudbase.mooo.com Git - avrcpm.git/blobdiff - avr/macros.inc
* FAT buffer on ATmega328
[avrcpm.git] / avr / macros.inc
index 5152902f3f2ff09a5da8ab120b1025ffeb05b060..74c9f215ade7cf397d3080e614b04ffd39666d6b 100644 (file)
 ;
 .macro  ljmp
   .if FLASHEND > 0x0fff
+    .ifdef @0
+      .if abs(PC - @0) > 2047
        jmp     @0
+      .else
+       rjmp    @0
+      .endif
+    .else
+       jmp     @0
+    .endif
   .else
        rjmp    @0
   .endif
 .endm
 
+
 ;------------------------------------------------
 ;
 ;
 .macro  lcall
   .if FLASHEND > 0x0fff
-;      call    @0
-
     .ifdef @0
       .if abs(PC - @0) > 2047
-       call    @0
+        call   @0
       .else
        rcall   @0
       .endif
 ;      printstring "String"
 
 .macro printstring
-  .if FLASHEND > 0x0fff
-       call    printstr
-  .else
-       rcall   printstr
-  .endif
+  lcall        printstr
   .if strlen(@0) % 2
     .db @0,0
   .else