                         .module printf.c
                         .area text
                       ;  lreg1 -> -4,x
                       ;  lreg2 -> -8,x
                       ;  IX -> 0,x
                       ;            joe -> +2,x
                       ;            tom -> +6,x
                       ;          larry -> +10,x
                       ;           fred -> +12,x
 0000                 _main::
 0000 BD0000            jsr __enterb
 0003 8E                .byte 0x8e
                       ; #include <hc11.h>
                       ; #include <stdio.h>
                       ; 
                       ; void main(void)
                       ; {
                       ;   int short fred=30;
 0004 CC001E            ldd #30
 0007 ED0C              std 12,x
                       ;   int short larry=65000;
 0009 CCFDE8            ldd #0xfde8
 000C ED0A              std 10,x
                       ;   int long tom=4245678;
 000E 18CE0086          ldy #L4
 0012 BD0000            jsr __ly2reg
 0015 EC00              ldd 0,x
 0017 C30006            addd #6
 001A 188F              xgdy
 001C BD0000            jsr __lreg2y
                       ;   float joe=45.657;
 001F 18CE0082          ldy #L5
 0023 BD0000            jsr __tofp1
 0026 EC00              ldd 0,x
 0028 C30002            addd #2
 002B 188F              xgdy
 002D BD0000            jsr __fromfp1
 0030 2038              bra L7
 0032                 L6:
 0032 EC00              ldd 0,x
 0034 C30002            addd #2
 0037 188F              xgdy
 0039 BD0000            jsr __tofp1
 003C 183C              pshy
 003E 183C              pshy
 0040 1830              tsy
 0042 BD0000            jsr __fromfp1
 0045 EC00              ldd 0,x
 0047 C30006            addd #6
 004A 188F              xgdy
 004C BD0000            jsr __ly2reg
 004F 183C              pshy
 0051 183C              pshy
 0053 1830              tsy
 0055 BD0000            jsr __lreg2y
 0058 EC0A              ldd 10,x
 005A 37                pshb
 005B 36                psha
 005C EC0C              ldd 12,x
 005E 37                pshb
 005F 36                psha
 0060 CC0074            ldd #L9
 0063 BD0000            jsr _printf
 0066 BD0000            jsr __movspb
 0069 0C                .byte 12
 006A                 L7:
                       ; 
                       ;   while(1)  
 006A 20C6              bra L6
 006C                 X0:
                       ;   printf("%u %u %ld %f\n",fred,larry,tom,joe);
                       ;  }
 006C                 L3:
 006C 8F                xgdx
 006D C3000E            addd #14
 0070 8F                xgdx
 0071 35                txs
 0072 38                pulx
 0073                   .dbline 0 ; func end
 0073 39                rts
 0074                 L9:
 0074 257520257520256C642025660A00   .byte 37,'u,32,37,'u,32,37,'l,'d,32,37,'f,10,0
 0082                 L5:
 0082 4236A0C5          .word 0x4236,0xa0c5
 0086                 L4:
 0086 0040C8AE          .word 64,51374
