diff --git a/desk.acc/a2d.inc b/desk.acc/a2d.inc index 76a7f68..f8c3011 100644 --- a/desk.acc/a2d.inc +++ b/desk.acc/a2d.inc @@ -202,9 +202,14 @@ A2D_CWS_SCROLL_NORMAL := A2D_CWS_SCROLL_ENABLED | A2D_CWS_SCROLL_THUMB | A2D_CW ;;; Macros -.macro A2D_CALL op, addr +.macro A2D_CALL op, addr, label jsr A2D .byte op + +.if .paramcount > 2 + label := * +.endif + .addr addr .endmacro diff --git a/desk.acc/calculator.s b/desk.acc/calculator.s index cee3c85..000da2d 100644 --- a/desk.acc/calculator.s +++ b/desk.acc/calculator.s @@ -945,21 +945,21 @@ trydiv: cmp #'/' ; Divide? ldx #0 lda text_buffer1 + text_buffer_size cmp #'.' - bne L10D6 + bne :+ stx L0BC7 -L10D6: cmp #'E' +: cmp #'E' bne :+ stx L0BC8 : cmp #'-' bne :+ stx L0BC9 -: ldx #$0D -L10E6: lda text_buffer1,x +: ldx #text_buffer_size-1 +loop: lda text_buffer1,x sta text_buffer1+1,x sta text_buffer2+1,x dex dey - bne L10E6 + bne loop lda #' ' sta text_buffer1+1,x sta text_buffer2+1,x @@ -1073,12 +1073,12 @@ post: ldx #