⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 morse.asm

📁 用在EM78860单片机制作的摩斯密码机源文件
💻 ASM
📖 第 1 页 / 共 5 页
字号:
.autoimport
.include "sysdef.inc"
ccounter equ pr1
.stabs "icc_compiled.",60,0,0,0
.stabs "E:\Data\morse\morse.c",100,0,3,Ltext0
.section ".code"
Ltext0:
.stabs "int:t1=r1;-128;127;",128,0,0,0
.stabs "char:t2=r2;-128;127;",128,0,0,0
.stabs "double:t3=r1;8;0;",128,0,0,0
.stabs "float:t4=r1;4;0;",128,0,0,0
.stabs "long double:t5=r1;8;0;",128,0,0,0
.stabs "long:t6=r1;-2147483648;2147483647;",128,0,0,0
.stabs "long long:t7=r1;-2147483648;2147483647;",128,0,0,0
.stabs "short:t8=r1;-32768;32767;",128,0,0,0
.stabs "signed char:t9=r1;-128;127;",128,0,0,0
.stabs "unsigned char:t10=r1;0;255;",128,0,0,0
.stabs "unsigned long:t11=r1;0;4294967295;",128,0,0,0
.stabs "unsigned long long:t12=r1;0;4294967295;",128,0,0,0
.stabs "unsigned short:t13=r1;0;65535;",128,0,0,0
.stabs "unsigned int:t14=r1;0;255;",128,0,0,0
.stabs "void:t15=15",128,0,0,0
.stabs "bit:t16=r16;0;1;",128,0,0,0
.section ".data"
public _press_flag
.align 1
_press_flag:
.SYMDEF "_press_flag" LEN:1
db 0
.stabs "press_flag:G2",32,0,0,_press_flag
public _channel_busy
.align 1
_channel_busy:
.SYMDEF "_channel_busy" LEN:1
db 0x0
.stabs "channel_busy:G10",32,0,0,_channel_busy
public _iocc_data
.align 1
_iocc_data:
.SYMDEF "_iocc_data" LEN:1
db 0
.stabs "iocc_data:G2",32,0,0,_iocc_data
public _i2c_addr
.align 1
_i2c_addr:
.SYMDEF "_i2c_addr" LEN:1
db -96
.stabs "i2c_addr:G2",32,0,0,_i2c_addr
public _morse_di_time
.align 1
_morse_di_time:
.SYMDEF "_morse_di_time" LEN:1
db 5
.stabs "morse_di_time:G2",32,0,0,_morse_di_time
public _morse_dah_time
.align 1
_morse_dah_time:
.SYMDEF "_morse_dah_time" LEN:1
db 5
.stabs "morse_dah_time:G2",32,0,0,_morse_dah_time
public _morse_char_endtime
.align 1
_morse_char_endtime:
.SYMDEF "_morse_char_endtime" LEN:1
db 20
.stabs "morse_char_endtime:G2",32,0,0,_morse_char_endtime
public _morse_word_endtime
.align 1
_morse_word_endtime:
.SYMDEF "_morse_word_endtime" LEN:1
db 30
.stabs "morse_word_endtime:G2",32,0,0,_morse_word_endtime
.section ".rom",T_ROM
public _lcd_word_table1
.align 1
_lcd_word_table1:
.SYMDEF "_lcd_word_table1" LEN:0
db 0
db 0
db 0
db 0
db 0
db 0
db 1
db 0
db 0
db 121
db 0
db 0
db 2
db 0
db 112
db 0
db 96
db 0
db 3
db 20
db 127
db 20
db 127
db 20
db 4
db 18
db 42
db 127
db 42
db 36
db 5
db 98
db 100
db 8
db 3
db 35
db 6
db 54
db 73
db 53
db 2
db 13
db 7
db 0
db 80
db 96
db 0
db 0
db 8
db 0
db 28
db 34
db 0
db 0
db 9
db 0
db 65
db 34
db 28
db 0
db 10
db 34
db 20
db 127
db 20
db 34
db 11
db 8
db 8
db 62
db 8
db 8
db 12
db 0
db 5
db 6
db 0
db 0
db 13
db 8
db 8
db 8
db 8
db 8
db 14
db 0
db 3
db 3
db 0
db 0
db 15
db 2
db 12
db 8
db 16
db 16
db 16
db 62
db 69
db 73
db 81
db 62
db 17
db 0
db 33
db 127
db 1
db 0
db 18
db 33
db 67
db 69
db 73
db 49
db 19
db 66
db 65
db 81
db 105
db 70
db 20
db 12
db 20
db 36
db 127
db 4
.SYMDEF "_lcd_word_table1" LEN:126
.stabs ":t17=ar1;0;125;2",128,0,0,0
.stabs "lcd_word_table1:G17",32,0,0,_lcd_word_table1
public _lcd_word_table2
.align 1
_lcd_word_table2:
.SYMDEF "_lcd_word_table2" LEN:0
db 21
db 114
db 81
db 81
db 81
db 78
db 22
db 30
db 41
db 73
db 73
db 6
db 23
db 64
db 64
db 71
db 88
db 96
db 24
db 54
db 73
db 73
db 73
db 54
db 25
db 48
db 73
db 73
db 74
db 60
db 26
db 0
db 54
db 54
db 0
db 0
db 27
db 0
db 53
db 54
db 0
db 0
db 28
db 8
db 20
db 34
db 33
db 0
db 29
db 20
db 20
db 20
db 20
db 20
db 30
db 0
db 33
db 34
db 20
db 8
db 31
db 32
db 64
db 69
db 72
db 48
db 32
db 62
db 65
db 93
db 85
db 60
db 33
db 31
db 36
db 68
db 36
db 31
db 34
db 127
db 73
db 73
db 73
db 54
db 35
db 62
db 65
db 65
db 65
db 34
db 36
db 127
db 65
db 65
db 34
db 28
db 37
db 127
db 73
db 73
db 73
db 65
db 38
db 127
db 72
db 72
db 72
db 64
db 39
db 62
db 65
db 73
db 73
db 47
db 40
db 127
db 8
db 8
db 8
db 127
db 41
db 0
db 65
db 127
db 65
db 0
.SYMDEF "_lcd_word_table2" LEN:126
.stabs "lcd_word_table2:G17",32,0,0,_lcd_word_table2
public _lcd_word_table3
.align 1
_lcd_word_table3:
.SYMDEF "_lcd_word_table3" LEN:0
db 42
db 2
db 65
db 65
db 126
db 64
db 43
db 127
db 8
db 20
db 34
db 65
db 44
db 127
db 1
db 1
db 1
db 1
db 45
db 127
db 32
db 24
db 32
db 127
db 46
db 127
db 16
db 8
db 4
db 127
db 47
db 62
db 65
db 65
db 65
db 62
db 48
db 127
db 72
db 72
db 72
db 48
db 49
db 62
db 65
db 69
db 66
db 61
db 50
db 127
db 72
db 76
db 74
db 49
db 51
db 50
db 73
db 73
db 73
db 38
db 52
db 64
db 64
db 127
db 64
db 64
db 53
db 126
db 1
db 1
db 1
db 126
db 54
db 124
db 2
db 1
db 2
db 124
db 55
db 126
db 1
db 14
db 1
db 126
db 56
db 99
db 52
db 8
db 20
db 51
db 57
db 96
db 16
db 15
db 16
db 96
db 58
db 67
db 69
db 73
db 81
db 97
db 59
db 0
db 127
db 65
db 65
db 0
db 60
db 2
db 4
db 8
db 16
db 32
db 61
db 0
db 65
db 65
db 127
db 0
db 62
db 16
db 32
db 64
db 32
db 16
.SYMDEF "_lcd_word_table3" LEN:126
.stabs "lcd_word_table3:G17",32,0,0,_lcd_word_table3
public _lcd_word_table4
.align 1
_lcd_word_table4:
.SYMDEF "_lcd_word_table4" LEN:0
db 63
db 1
db 1
db 1
db 1
db 1
.SYMDEF "_lcd_word_table4" LEN:6
.stabs ":t18=ar1;0;5;2",128,0,0,0
.stabs "lcd_word_table4:G18",32,0,0,_lcd_word_table4
public _lcd_ico_table
.align 1
_lcd_ico_table:
.SYMDEF "_lcd_ico_table" LEN:0
db 45
db 49
db 47
db 46
db 4
db 103
db 105
db 106
db 107
db 44
db 49
db 89
db 96
db 5
db 7
db 3
db 9
db 8
db 6
db 4
db 10
db 1
db 13
db 14
db 0
db 2
db 12
db 15
db 29
db 18
db 19
db 28
db 30
db 17
db 20
db 26
db 23
db 24
db 25
db 27
db 22
db 11
db 16
db 21
.SYMDEF "_lcd_ico_table" LEN:44
.stabs ":t19=ar1;0;43;2",128,0,0,0
.stabs "lcd_ico_table:G19",32,0,0,_lcd_ico_table
public _display_ico
public display_ico_bp
.section ".code"
.stabs "display_ico:F15",36,0,0,_display_ico
.section ".S0",C_CODE
.SYMDEF ".S0" 
_display_ico:
.SYMDEF "_display_ico" 
mov a,ecx
mov display_ico_bp-4,a
mov a,ecx+1
mov display_ico_bp-3,a
mov a,ecx+2
mov display_ico_bp-2,a
mov a,ecx+3
mov display_ico_bp-1,a
.stabs "ico:p2",160,0,0,display_ico_bp+0
.stabs "flag:p2",160,0,0,display_ico_bp+1
.stabn 192,0,0,L4
L4:
.stabn 68,0,320,L6
L6:
.stabn 68,0,321,L7
L7:
LDA display_ico_bp+1,0,0
mov cl,a
ICMPRIB cl,0
jbc sr,zflag
jmp @L$2
.stabn 68,0,322,L8
L8:
mov a,@_iocc_data
mov r4,a
mov a,r0
mov cx,a
clr cx+1
jbs cx,7
jmp @J1
mov a,@0xff
mov cx+1,a
J1:
mov a,@.b0.128
or cx,a
mov a,@.b1.128
or cx+1,a
mov a,cl
STA _iocc_data,0,3
jmp @L$3
L$2:
.stabn 68,0,324,L9
L9:
mov a,@_iocc_data
mov r4,a
mov a,r0
mov cx,a
clr cx+1
jbs cx,7
jmp @J2
mov a,@0xff
mov cx+1,a
J2:
mov a,@.b0.-129
and cx,a
mov a,@.b1.-129
and cx+1,a
mov a,cl
STA _iocc_data,0,3
L$3:
.stabn 68,0,325,L10
L10:
LDA display_ico_bp+0,0,0
mov cx,a
clra
jbc cl,7
mov a,@0xff
mov cx+1,a
mov a,@.b0._lcd_ico_table
mov ax,a
mov a,@.b1._lcd_ico_table
mov ax+1,a
mov a,ax
add cx,a
mov a,ax+1
jbc sr,cflag
add a,@1
add cx+1,a
LDAP cx,0,1
STA _IOCB,0,2
.stabn 68,0,326,L11
L11:
LDA _iocc_data,0,3
mov cl,a
STA _IOCC,0,2
.stabn 68,0,327,L12
L12:
.stabn 224,0,0,L13
L13:
L$1:
mov a,display_ico_bp-4
mov ecx,a
mov a,display_ico_bp-3
mov ecx+1,a
mov a,display_ico_bp-2
mov ecx+2,a
mov a,display_ico_bp-1
mov ecx+3,a
ret
.STACK display_ico_bp,local,4
public _init_lcd
public init_lcd_bp
.stabs "init_lcd:F15",36,0,0,_init_lcd
.section ".S1",C_CODE
.SYMDEF ".S1" 
_init_lcd:
.SYMDEF "_init_lcd" 
mov a,ecx
mov init_lcd_bp-4,a
mov a,ecx+1
mov init_lcd_bp-3,a
mov a,ecx+2
mov init_lcd_bp-2,a
mov a,ecx+3
mov init_lcd_bp-1,a
.stabn 192,0,0,L15
L15:
.stabn 68,0,330,L16
L16:
.stabn 68,0,333,L17
L17:
LDA _IOCA,0,2
STA _regdata,0,3
.stabn 68,0,334,L18
L18:
mov a,@_regdata
mov r4,a
mov a,r0
mov cx,a
clr cx+1
jbs cx,7
jmp @J3
mov a,@0xff
mov cx+1,a
J3:
mov a,@.b0.192
or cx,a
mov a,@.b1.192
or cx+1,a
mov a,cl
STA _regdata,0,3
.stabn 68,0,335,L19
L19:
LDA _regdata,0,3
STA _IOCA,0,2
.stabn 68,0,336,L20
L20:
LDA _IOCE,0,2
STA _regdata,0,3
.stabn 68,0,337,L21
L21:
mov a,@40
mov cl,a
ORMRB _regdata,cl,3
.stabn 68,0,338,L22
L22:
mov a,@-21
mov cl,a
ANDMRB _regdata,cl,3
.stabn 68,0,339,L23
L23:
mov a,@12
mov cl,a
ORMRB _regdata,cl,3
.stabn 68,0,340,L24
L24:
LDA _regdata,0,3
STA _IOCE,0,2
.stabn 68,0,341,L25
L25:
LDA _RE,0,0
STA _regdata,0,3
.stabn 68,0,342,L26
L26:
mov a,@6
mov cl,a
ORMRB _regdata,cl,3
.stabn 68,0,343,L27
L27:
LDA _regdata,0,3
mov cl,a
STA _RE,0,0
.stabn 68,0,344,L28
L28:
.stabn 224,0,0,L29
L29:
L$14:
mov a,init_lcd_bp-4
mov ecx,a
mov a,init_lcd_bp-3
mov ecx+1,a
mov a,init_lcd_bp-2
mov ecx+2,a
mov a,init_lcd_bp-1
mov ecx+3,a
ret
.STACK init_lcd_bp,local,4
public _turn_off_lcd
public turn_off_lcd_bp
.stabs "turn_off_lcd:F15",36,0,0,_turn_off_lcd
.section ".S2",C_CODE
.SYMDEF ".S2" 
_turn_off_lcd:
.SYMDEF "_turn_off_lcd" 
mov a,ecx
mov turn_off_lcd_bp-4,a
mov a,ecx+1
mov turn_off_lcd_bp-3,a
mov a,ecx+2
mov turn_off_lcd_bp-2,a
mov a,ecx+3
mov turn_off_lcd_bp-1,a
.stabn 192,0,0,L31
L31:
.stabn 68,0,347,L32
L32:
.stabn 68,0,348,L33
L33:
LDA _RE,0,0
STA _regdata,0,3
.stabn 68,0,349,L34
L34:
mov a,@-7
mov cl,a
ANDMRB _regdata,cl,3
.stabn 68,0,350,L35
L35:
LDA _regdata,0,3
mov cl,a
STA _RE,0,0
.stabn 68,0,351,L36
L36:
.stabn 224,0,0,L37
L37:
L$30:
mov a,turn_off_lcd_bp-4
mov ecx,a
mov a,turn_off_lcd_bp-3
mov ecx+1,a
mov a,turn_off_lcd_bp-2
mov ecx+2,a
mov a,turn_off_lcd_bp-1
mov ecx+3,a
ret
.STACK turn_off_lcd_bp,local,4
public _blank_lcd
public blank_lcd_bp
.stabs "blank_lcd:F15",36,0,0,_blank_lcd
.section ".S3",C_CODE
.SYMDEF ".S3" 
_blank_lcd:
.SYMDEF "_blank_lcd" 
mov a,ecx
mov blank_lcd_bp-4,a
mov a,ecx+1
mov blank_lcd_bp-3,a
mov a,ecx+2
mov blank_lcd_bp-2,a
mov a,ecx+3
mov blank_lcd_bp-1,a
.stabn 192,0,0,L39
L39:
.stabn 68,0,353,L40
L40:
.stabn 68,0,354,L41
L41:
LDA _RE,0,0
STA _regdata,0,3
.stabn 68,0,355,L42
L42:
mov a,@-5
mov cl,a
ANDMRB _regdata,cl,3
.stabn 68,0,356,L43
L43:
mov a,@2
mov cl,a
ORMRB _regdata,cl,3
.stabn 68,0,357,L44
L44:
LDA _regdata,0,3
mov cl,a
STA _RE,0,0
.stabn 68,0,359,L45
L45:
.stabn 224,0,0,L46
L46:
L$38:
mov a,blank_lcd_bp-4
mov ecx,a
mov a,blank_lcd_bp-3
mov ecx+1,a
mov a,blank_lcd_bp-2
mov ecx+2,a
mov a,blank_lcd_bp-1
mov ecx+3,a
ret
.STACK blank_lcd_bp,local,4
public _enable_lcd
public enable_lcd_bp
.stabs "enable_lcd:F15",36,0,0,_enable_lcd
.section ".S4",C_CODE
.SYMDEF ".S4" 
_enable_lcd:
.SYMDEF "_enable_lcd" 
mov a,ecx
mov enable_lcd_bp-4,a
mov a,ecx+1
mov enable_lcd_bp-3,a
mov a,ecx+2
mov enable_lcd_bp-2,a
mov a,ecx+3
mov enable_lcd_bp-1,a
.stabn 192,0,0,L48
L48:
.stabn 68,0,361,L49
L49:
.stabn 68,0,362,L50
L50:
mov a,@6
mov cl,a
ORMRB _regdata,cl,3
.stabn 68,0,363,L51

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -