Subversion Repositories Projects

Rev

Blame | Last modification | View Log | RSS feed

   1                            .file   "display.c"
   2                            .arch atmega32
   3                    __SREG__ = 0x3f
   4                    __SP_H__ = 0x3e
   5                    __SP_L__ = 0x3d
   6                    __tmp_reg__ = 0
   7                    __zero_reg__ = 1
   8                            .global __do_copy_data
   9                            .global __do_clear_bss
  17                    .Ltext0:
  18                    .global read_display
  20                    read_display:
  21                    .LFB4:
  22                    .LM1:
  23                    /* prologue: frame size=0 */
  24 0000 CF93                  push r28
  25                    /* prologue end (size=1) */
  26                    .LM2:
  27 0002 C0E0                  ldi r28,lo8(0)
  28                    .LM3:
  29 0004 93E2                  ldi r25,lo8(35)
  30 0006 9093 0000             sts p_buffer,r25
  31                    .LM4:
  32 000a 91E6                  ldi r25,lo8(97)
  33 000c 9093 0000             sts p_buffer+1,r25
  34                    .LM5:
  35 0010 98E6                  ldi r25,lo8(104)
  36 0012 9093 0000             sts p_buffer+2,r25
  37                    .LM6:
  38 0016 8093 0000             sts p_buffer+3,r24
  39                    .LM7:
  40 001a C093 0000             sts p_buffer+4,r28
  41                    .LM8:
  42 001e C093 0000             sts p_buffer+5,r28
  43                    .LM9:
  44 0022 86E0                  ldi r24,lo8(6)
  45 0024 0E94 0000             call base64_send
  46                    .L2:
  47                    .LM10:
  48 0028 0E94 0000             call get_message
  49 002c 8130                  cpi r24,lo8(1)
  50 002e 09F4                  brne .L5
  51                    .LM11:
  52 0030 CAE0                  ldi r28,lo8(10)
  53                    .L5:
  54                    .LM12:
  55 0032 CF5F                  subi r28,lo8(-(1))
  56                    .LM13:
  57 0034 8091 0000             lds r24,r_buffer+1
  58 0038 8053                  subi r24,lo8(-(-48))
  59 003a 8530                  cpi r24,lo8(5)
  60 003c 10F0                  brlo .L3
  61 003e CA30                  cpi r28,lo8(10)
  62 0040 98F3                  brlo .L2
  63                    .L3:
  64                    .LM14:
  65 0042 CA30                  cpi r28,lo8(10)
  66 0044 18F0                  brlo .L6
  67                    .LM15:
  68 0046 81E0                  ldi r24,lo8(1)
  69 0048 90E0                  ldi r25,hi8(1)
  70 004a 02C0                  rjmp .L1
  71                    .L6:
  72                    .LM16:
  73 004c 80E0                  ldi r24,lo8(0)
  74 004e 90E0                  ldi r25,hi8(0)
  75                    .L1:
  76                    /* epilogue: frame size=0 */
  77 0050 CF91                  pop r28
  78 0052 0895                  ret
  79                    /* epilogue end (size=2) */
  80                    /* function read_display size 42 (39) */
  81                    .LFE4:
  83                            .section        .progmem.data,"a",@progbits
  86                    __c.0:
  87 0000 4469 7370             .string "Display"
  87      6C61 7900 
  90                    __c.1:
  91 0008 0D0A 5469             .string "\r\nTimeout!"
  91      6D65 6F75 
  91      7421 00
  92                            .text
  93                    .global display_data
  95                    display_data:
  96                    .LFB5:
  97                    .LM17:
  98                    /* prologue: frame size=10 */
  99 0054 0F93                  push r16
 100 0056 1F93                  push r17
 101 0058 CF93                  push r28
 102 005a DF93                  push r29
 103 005c CDB7                  in r28,__SP_L__
 104 005e DEB7                  in r29,__SP_H__
 105 0060 2A97                  sbiw r28,10
 106 0062 0FB6                  in __tmp_reg__,__SREG__
 107 0064 F894                  cli
 108 0066 DEBF                  out __SP_H__,r29
 109 0068 0FBE                  out __SREG__,__tmp_reg__
 110 006a CDBF                  out __SP_L__,r28
 111                    /* prologue end (size=12) */
 112                    .LM18:
 113 006c 0E94 0000             call lcd_cls
 114                    .LM19:
 115 0070 60E0                  ldi r22,lo8(0)
 116 0072 80E0                  ldi r24,lo8(__c.0)
 117 0074 90E0                  ldi r25,hi8(__c.0)
 118 0076 0E94 0000             call lcd_printp
 119                    .L28:
 120                    .LM20:
 121 007a 0091 0000             lds r16,key
 122 007e 0023                  tst r16
 123 0080 E1F7                  brne .L28
 124                    .LM21:
 125 0082 802F                  mov r24,r16
 126 0084 0E94 0000             call read_display
 127 0088 8130                  cpi r24,lo8(1)
 128 008a 69F4                  brne .L15
 129                    .LM22:
 130 008c 602F                  mov r22,r16
 131 008e 80E0                  ldi r24,lo8(__c.1)
 132 0090 90E0                  ldi r25,hi8(__c.1)
 133 0092 0E94 0000             call lcd_printp
 134                    .LM23:
 135 0096 88EC                  ldi r24,lo8(-56)
 136 0098 8093 0000             sts timer,r24
 137                    .L16:
 138                    .LM24:
 139 009c 8091 0000             lds r24,timer
 140 00a0 8823                  tst r24
 141 00a2 E1F7                  brne .L16
 142                    .LM25:
 143 00a4 2CC0                  rjmp .L10
 144                    .L15:
 145                    .LM26:
 146 00a6 1091 0000             lds r17,r_buffer+1
 147                    .LM27:
 148 00aa 1983                  std Y+1,r17
 149                    .LM28:
 150 00ac 0A83                  std Y+2,r16
 151                    .LM29:
 152 00ae 202F                  mov r18,r16
 153 00b0 AE01                  movw r20,r28
 154 00b2 4F5F                  subi r20,lo8(-(1))
 155 00b4 5F4F                  sbci r21,hi8(-(1))
 156 00b6 602F                  mov r22,r16
 157 00b8 8AE0                  ldi r24,lo8(10)
 158 00ba 0E94 0000             call lcd_print_at
 159                    .LM30:
 160 00be 1F5F                  subi r17,lo8(-(1))
 161 00c0 202F                  mov r18,r16
 162 00c2 40E0                  ldi r20,lo8(p_buffer)
 163 00c4 50E0                  ldi r21,hi8(p_buffer)
 164 00c6 612F                  mov r22,r17
 165 00c8 802F                  mov r24,r16
 166 00ca 0E94 0000             call lcd_print_at
 167                    .LM31:
 168 00ce 8AE0                  ldi r24,lo8(10)
 169 00d0 8093 0000             sts timer,r24
 170                    .L20:
 171                    .LM32:
 172 00d4 8091 0000             lds r24,timer
 173 00d8 8823                  tst r24
 174 00da E1F7                  brne .L20
 175                    .LM33:
 176 00dc 8091 0000             lds r24,key
 177 00e0 8130                  cpi r24,lo8(1)
 178 00e2 11F4                  brne .L23
 179                    .LM34:
 180 00e4 0E94 0000             call read_display
 181                    .L23:
 182                    .LM35:
 183 00e8 8091 0000             lds r24,key
 184 00ec 8230                  cpi r24,lo8(2)
 185 00ee 11F4                  brne .L11
 186                    .LM36:
 187 00f0 0E94 0000             call read_display
 188                    .L11:
 189                    .LM37:
 190 00f4 8091 0000             lds r24,key
 191 00f8 8430                  cpi r24,lo8(4)
 192 00fa 09F0                  breq .+2
 193 00fc BECF                  rjmp .L28
 194                    .L10:
 195                    /* epilogue: frame size=10 */
 196 00fe 2A96                  adiw r28,10
 197 0100 0FB6                  in __tmp_reg__,__SREG__
 198 0102 F894                  cli
 199 0104 DEBF                  out __SP_H__,r29
 200 0106 0FBE                  out __SREG__,__tmp_reg__
 201 0108 CDBF                  out __SP_L__,r28
 202 010a DF91                  pop r29
 203 010c CF91                  pop r28
 204 010e 1F91                  pop r17
 205 0110 0F91                  pop r16
 206 0112 0895                  ret
 207                    /* epilogue end (size=11) */
 208                    /* function display_data size 96 (73) */
 209                    .LFE5:
 211                            .comm r_buffer,128,1
 212                            .comm p_buffer,128,1
 213                            .comm display_buffer,1024,1
 214                            .comm display_buffer_pointer,2,1
 215                            .comm display_buffer_counter,1,1
 216                            .comm display_page_counter,1,1
 217                            .comm display_mode,1,1
 218                    .Letext0:
DEFINED SYMBOLS
                            *ABS*:00000000 display.c
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:3      *ABS*:0000003f __SREG__
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:4      *ABS*:0000003e __SP_H__
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:5      *ABS*:0000003d __SP_L__
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:6      *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:7      *ABS*:00000001 __zero_reg__
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:20     .text:00000000 read_display
                            *COM*:00000080 p_buffer
                            *COM*:00000080 r_buffer
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:86     .progmem.data:00000000 __c.0
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:90     .progmem.data:00000008 __c.1
C:\DOKUME~1\thomas\LOKALE~1\Temp/cc8Aaaaa.s:95     .text:00000054 display_data
                            *COM*:00000400 display_buffer
                            *COM*:00000002 display_buffer_pointer
                            *COM*:00000001 display_buffer_counter
                            *COM*:00000001 display_page_counter
                            *COM*:00000001 display_mode

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
base64_send
get_message
lcd_cls
lcd_printp
key
timer
lcd_print_at