; sample program for 6809 assembler; to show what 6809 assembler actually looks like;; program to add two multiple precision operands; where did I get this from?;nbytes  EQU     8        ORG     $1000      ; start at 1000H; BCD addition subroutinebcd     ldb     #nbytes        ldx     addr       ; load data address        andcc   #$0FE      ; clear carry bitnext    lda     nbytes-1,x ; start loop        adca    nbytes-1*2,x        daa        sta     nbytes-1*3,x        leax    -1,x        decb        bne     next        rts                ; end of subroutine; begin main program; (uses subroutine 'bcd')        ORG     $1100      ; main program at 1100H        lds     #$013f     ; initialise SP        ldx     temp        stx     addr        jsr     bcd        ldx     #msg       ; get address of string        jsr     print      ; and print it        noploop    bra     loop       ; loop forever; dummy routine printprint   rts; allocate data area        ORG     $0100addr    FDB     0temp    RMB     nbytesmsg     FCC     "multiplication done"        FCB     $0D,00        END