📄 simple.lst
字号:
1 .file "simple.c" 2 .arch atmega128 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 12 .text 13 .Ltext0: 54 .data 55 .LC0: 56 0000 6772 7565 .string "gruenes Display" 56 6E65 7320 56 4469 7370 56 6C61 7900 57 .text 59 .global main 61 main: 1:simple.c **** /* ***********************************************************************
2:simple.c **** **
3:simple.c **** ** Copyright (C) 2005 Christian Kranz
4:simple.c **** **
5:simple.c **** ** Siemens S65 Display Control for LPH display
6:simple.c **** **
7:simple.c **** *********************************************************************** */
8:simple.c **** /*********************************************
9:simple.c **** * Chip type : ATMEGA128
10:simple.c **** * Clock frequency : clock 16 MHz
11:simple.c **** *********************************************/
12:simple.c **** #include <avr/io.h>
13:simple.c **** #include <inttypes.h>
14:simple.c ****
15:simple.c **** #include "disp.h"
16:simple.c ****
17:simple.c ****
18:simple.c **** int main(void)
19:simple.c **** {
63 .LM1: 64 /* prologue: frame size=16 */ 65 0000 C0E0 ldi r28,lo8(__stack - 16) 66 0002 D0E0 ldi r29,hi8(__stack - 16) 67 0004 DEBF out __SP_H__,r29 68 0006 CDBF out __SP_L__,r28 69 /* prologue end (size=4) */ 20:simple.c **** uint8_t i;
21:simple.c ****
22:simple.c **** char txt[]="gruenes Display";
71 .LM2: 72 0008 6E01 movw r12,r28 73 000a 0894 sec 74 000c C11C adc r12,__zero_reg__ 75 000e D11C adc r13,__zero_reg__ 76 0010 00E1 ldi r16,lo8(16) 77 0012 E0E0 ldi r30,lo8(.LC0) 78 0014 F0E0 ldi r31,hi8(.LC0) 79 0016 D601 movw r26,r12 80 0018 0190 ld __tmp_reg__,Z+ 81 001a 0D92 st X+,__tmp_reg__ 82 001c 0A95 dec r16 83 001e E1F7 brne .-8 23:simple.c ****
24:simple.c **** port_init();
85 .LM3: 86 0020 0E94 0000 call port_init 25:simple.c ****
26:simple.c **** lcd_init_c();
88 .LM4: 89 0024 0E94 0000 call lcd_init_c 27:simple.c **** backcolor=0x0780;
91 .LM5: 92 0028 80E8 ldi r24,lo8(1920) 93 002a 97E0 ldi r25,hi8(1920) 94 002c 9093 0000 sts (backcolor)+1,r25 95 0030 8093 0000 sts backcolor,r24 28:simple.c **** textcolor=0x0000;
97 .LM6: 98 0034 1092 0000 sts (textcolor)+1,__zero_reg__ 99 0038 1092 0000 sts textcolor,__zero_reg__ 29:simple.c **** fill_screen(0x0780);
101 .LM7: 102 003c 0E94 0000 call fill_screen 30:simple.c ****
31:simple.c **** i=0;
104 .LM8: 105 0040 BB24 clr r11 32:simple.c **** while (txt[i]!=0)
33:simple.c **** {
34:simple.c **** put_char(30+i*CHAR_W,60,txt[i],0); // 0 deg. rotated
35:simple.c **** put_char(5+i*CHAR_W,10,txt[i],1); // 90 deg. rotated
36:simple.c **** i++;
107 .LM9: 108 0042 8981 ldd r24,Y+1 109 0044 8823 tst r24 110 0046 29F1 breq .L5 111 0048 20E0 ldi r18,lo8(0) 112 004a 30E0 ldi r19,hi8(0) 113 .L4: 115 .LM10: 116 004c 8601 movw r16,r12 117 004e 020F add r16,r18 118 0050 131F adc r17,r19 119 0052 7901 movw r14,r18 120 0054 EE0C lsl r14 121 0056 FF1C rol r15 122 0058 EE0C lsl r14 123 005a FF1C rol r15 124 005c EE0C lsl r14 125 005e FF1C rol r15 126 0060 20E0 ldi r18,lo8(0) 127 0062 F801 movw r30,r16 128 0064 4081 ld r20,Z 129 0066 6CE3 ldi r22,lo8(60) 130 0068 8E2D mov r24,r14 131 006a 825E subi r24,lo8(-(30)) 132 006c 0E94 0000 call put_char 134 .LM11: 135 0070 21E0 ldi r18,lo8(1) 136 0072 D801 movw r26,r16 137 0074 4C91 ld r20,X 138 0076 6AE0 ldi r22,lo8(10) 139 0078 8E2D mov r24,r14 140 007a 8B5F subi r24,lo8(-(5)) 141 007c 0E94 0000 call put_char 143 .LM12: 144 0080 B394 inc r11 145 0082 2B2D mov r18,r11 146 0084 3327 clr r19 147 0086 F601 movw r30,r12 148 0088 E20F add r30,r18 149 008a F31F adc r31,r19 150 008c E080 ld r14,Z 151 008e EE20 tst r14 152 0090 E9F6 brne .L4 153 .L5: 154 .L11: 155 0092 FFCF rjmp .L11 156 /* epilogue: frame size=16 */ 157 /* epilogue: noreturn */ 158 /* epilogue end (size=0) */ 159 /* function main size 74 (70) */ 165 .Lscope0: 167 .text 169 Letext: 170 /* File "simple.c": code 74 = 0x004a ( 70), prologues 4, epilogues 0 */DEFINED SYMBOLS *ABS*:00000000 simple.c *ABS*:0000003f __SREG__ *ABS*:0000003e __SP_H__ *ABS*:0000003d __SP_L__ *ABS*:00000000 __tmp_reg__ *ABS*:00000001 __zero_reg__ /tmp/cceQlyrX.s:61 .text:00000000 main /tmp/cceQlyrX.s:169 .text:00000094 LetextUNDEFINED SYMBOLS__do_copy_data__do_clear_bss__stackport_initlcd_init_cbackcolortextcolorfill_screenput_char
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -