📄 para.ls1
字号:
00B3 F0 870 MOVX @DPTR,A
00B4 80A8 871 SJMP ?C0024
00B6 872 ?C0025:
873 ;
874 ; return -1;
875 ; SOURCE LINE # 168
00B6 876 ?C0072:
00B6 7EFF 877 MOV R6,#0FFH
00B8 7FFF 878 MOV R7,#0FFH
879 ; }
880 ; SOURCE LINE # 169
A51 MACRO ASSEMBLER PARA 03/13/2009 15:44:57 PAGE 15
00BA 881 ?C0023:
00BA 22 882 RET
883 ; END OF _ParaRead
884
885 ;
886 ; // parameter sector initialize
887 ; // return: <2 for exist, >=2 for new formated
888 ; unsigned char ParaMemInit(void)
889
---- 890 RSEG ?PR?ParaMemInit?PARA
0000 891 ParaMemInit:
892 USING 0
893 ; SOURCE LINE # 173
894 ; {
895 ; SOURCE LINE # 174
896 ; unsigned int s0head, s0flag;
897 ; unsigned int s1head, s1flag;
898 ; unsigned char ch = 0;
899 ; SOURCE LINE # 177
0000 E4 900 CLR A
0001 900000 F 901 MOV DPTR,#ch?255
0004 F0 902 MOVX @DPTR,A
903 ;
904 ; ComWrite("Mem initializing...\r\n", 21);
905 ; SOURCE LINE # 179
0005 7BFF 906 MOV R3,#0FFH
0007 7A00 F 907 MOV R2,#HIGH (?SC_0)
0009 7900 F 908 MOV R1,#LOW (?SC_0)
000B 7D15 909 MOV R5,#015H
000D FC 910 MOV R4,A
000E 120000 F 911 LCALL _ComWrite
912 ;
913 ; s0head = FlashRdByte(ParaStart);
914 ; SOURCE LINE # 181
0011 900000 F 915 MOV DPTR,#ParaStart
0014 E4 916 CLR A
0015 93 917 MOVC A,@A+DPTR
0016 FE 918 MOV R6,A
0017 7401 919 MOV A,#01H
0019 93 920 MOVC A,@A+DPTR
001A FF 921 MOV R7,A
001B 120000 F 922 LCALL _FlashRdByte
001E 900000 F 923 MOV DPTR,#s0head?251
0021 E4 924 CLR A
0022 F0 925 MOVX @DPTR,A
0023 A3 926 INC DPTR
0024 EF 927 MOV A,R7
0025 F0 928 MOVX @DPTR,A
929 ; s0flag = FlashRdByte(ParaStart+1);
930 ; SOURCE LINE # 182
0026 900000 F 931 MOV DPTR,#ParaStart
0029 7401 932 MOV A,#01H
002B 93 933 MOVC A,@A+DPTR
002C 2401 934 ADD A,#01H
002E FF 935 MOV R7,A
002F E4 936 CLR A
0030 93 937 MOVC A,@A+DPTR
0031 3400 938 ADDC A,#00H
0033 FE 939 MOV R6,A
0034 120000 F 940 LCALL _FlashRdByte
0037 900000 F 941 MOV DPTR,#s0flag?252
003A E4 942 CLR A
003B F0 943 MOVX @DPTR,A
003C A3 944 INC DPTR
003D EF 945 MOV A,R7
003E F0 946 MOVX @DPTR,A
A51 MACRO ASSEMBLER PARA 03/13/2009 15:44:57 PAGE 16
947 ; s1head = FlashRdByte(ParaStart+SECTOR_SIZE);
948 ; SOURCE LINE # 183
003F 900000 F 949 MOV DPTR,#ParaStart
0042 7401 950 MOV A,#01H
0044 93 951 MOVC A,@A+DPTR
0045 2480 952 ADD A,#080H
0047 FF 953 MOV R7,A
0048 E4 954 CLR A
0049 93 955 MOVC A,@A+DPTR
004A 3400 956 ADDC A,#00H
004C FE 957 MOV R6,A
004D 120000 F 958 LCALL _FlashRdByte
0050 900000 F 959 MOV DPTR,#s1head?253
0053 E4 960 CLR A
0054 F0 961 MOVX @DPTR,A
0055 A3 962 INC DPTR
0056 EF 963 MOV A,R7
0057 F0 964 MOVX @DPTR,A
965 ; s1flag = FlashRdByte(ParaStart+SECTOR_SIZE+1);
966 ; SOURCE LINE # 184
0058 900000 F 967 MOV DPTR,#ParaStart
005B 7401 968 MOV A,#01H
005D 93 969 MOVC A,@A+DPTR
005E 2481 970 ADD A,#081H
0060 FF 971 MOV R7,A
0061 E4 972 CLR A
0062 93 973 MOVC A,@A+DPTR
0063 3400 974 ADDC A,#00H
0065 FE 975 MOV R6,A
0066 120000 F 976 LCALL _FlashRdByte
0069 900000 F 977 MOV DPTR,#s1flag?254
006C E4 978 CLR A
006D F0 979 MOVX @DPTR,A
006E A3 980 INC DPTR
006F EF 981 MOV A,R7
0070 F0 982 MOVX @DPTR,A
983 ;
984 ; checkhead:
985 ; SOURCE LINE # 186
0071 986 ?ParaMemInit?checkhead:
987 ; // check sector 0
988 ; if(s0head != PARA_HEAD)
989 ; SOURCE LINE # 188
0071 900000 F 990 MOV DPTR,#s0head?251
0074 E0 991 MOVX A,@DPTR
0075 7004 992 JNZ ?C0055
0077 A3 993 INC DPTR
0078 E0 994 MOVX A,@DPTR
0079 6455 995 XRL A,#055H
007B 996 ?C0055:
007B 6048 997 JZ ?C0031
998 ; {
999 ; SOURCE LINE # 189
1000 ; FlashErSector(ParaStart);
1001 ; SOURCE LINE # 190
007D 900000 F 1002 MOV DPTR,#ParaStart
0080 E4 1003 CLR A
0081 93 1004 MOVC A,@A+DPTR
0082 FE 1005 MOV R6,A
0083 7401 1006 MOV A,#01H
0085 93 1007 MOVC A,@A+DPTR
0086 FF 1008 MOV R7,A
0087 120000 F 1009 LCALL _FlashErSector
1010 ; FlashWrByte(ParaStart, PARA_HEAD);
1011 ; SOURCE LINE # 191
008A 900000 F 1012 MOV DPTR,#ParaStart
A51 MACRO ASSEMBLER PARA 03/13/2009 15:44:57 PAGE 17
008D E4 1013 CLR A
008E 93 1014 MOVC A,@A+DPTR
008F FE 1015 MOV R6,A
0090 7401 1016 MOV A,#01H
0092 93 1017 MOVC A,@A+DPTR
0093 FF 1018 MOV R7,A
0094 7D55 1019 MOV R5,#055H
0096 120000 F 1020 LCALL _FlashWrByte
1021 ; s0flag = FlashRdByte(ParaStart+1);
1022 ; SOURCE LINE # 192
0099 900000 F 1023 MOV DPTR,#ParaStart
009C 7401 1024 MOV A,#01H
009E 93 1025 MOVC A,@A+DPTR
009F 2401 1026 ADD A,#01H
00A1 FF 1027 MOV R7,A
00A2 E4 1028 CLR A
00A3 93 1029 MOVC A,@A+DPTR
00A4 3400 1030 ADDC A,#00H
00A6 FE 1031 MOV R6,A
00A7 120000 F 1032 LCALL _FlashRdByte
00AA 900000 F 1033 MOV DPTR,#s0flag?252
00AD E4 1034 CLR A
00AE F0 1035 MOVX @DPTR,A
00AF A3 1036 INC DPTR
00B0 EF 1037 MOV A,R7
00B1 F0 1038 MOVX @DPTR,A
1039 ; ch ++;
1040 ; SOURCE LINE # 193
00B2 900000 F 1041 MOV DPTR,#ch?255
00B5 E0 1042 MOVX A,@DPTR
00B6 04 1043 INC A
00B7 F0 1044 MOVX @DPTR,A
1045 ; ComWrite("S0 empty.\r\n", 11);
1046 ; SOURCE LINE # 194
00B8 7BFF 1047 MOV R3,#0FFH
00BA 7A00 F 1048 MOV R2,#HIGH (?SC_22)
00BC 7900 F 1049 MOV R1,#LOW (?SC_22)
00BE 7D0B 1050 MOV R5,#0BH
00C0 7C00 1051 MOV R4,#00H
00C2 120000 F 1052 LCALL _ComWrite
1053 ; }
1054 ; SOURCE LINE # 195
00C5 1055 ?C0031:
1056 ;
1057 ; // check sector 1
1058 ; if(s1head != PARA_HEAD)
1059 ; SOURCE LINE # 198
00C5 900000 F 1060 MOV DPTR,#s1head?253
00C8 E0 1061 MOVX A,@DPTR
00C9 7004 1062 JNZ ?C0056
00CB A3 1063 INC DPTR
00CC E0 1064 MOVX A,@DPTR
00CD 6455 1065 XRL A,#055H
00CF 1066 ?C0056:
00CF 604E 1067 JZ ?C0032
1068 ; {
1069 ; SOURCE LINE # 199
1070 ; FlashErSector(ParaStart+SECTOR_SIZE);
1071 ; SOURCE LINE # 200
00D1 900000 F 1072 MOV DPTR,#ParaStart
00D4 7401 1073 MOV A,#01H
00D6 93 1074 MOVC A,@A+DPTR
00D7 2480 1075 ADD A,#080H
00D9 FF 1076 MOV R7,A
00DA E4 1077 CLR A
00DB 93 1078 MOVC A,@A+DPTR
A51 MACRO ASSEMBLER PARA 03/13/2009 15:44:57 PAGE 18
00DC 3400 1079 ADDC A,#00H
00DE FE 1080 MOV R6,A
00DF 120000 F 1081 LCALL _FlashErSector
1082 ; FlashWrByte(ParaStart+SECTOR_SIZE, PARA_HEAD);
1083 ; SOURCE LINE # 201
00E2 900000 F 1084 MOV DPTR,#ParaStart
00E5 7401 1085 MOV A,#01H
00E7 93 1086 MOVC A,@A+DPTR
00E8 2480 1087 ADD A,#080H
00EA FF 1088 MOV R7,A
00EB E4 1089 CLR A
00EC 93 1090 MOVC A,@A+DPTR
00ED 3400 1091 ADDC A,#00H
00EF FE 1092 MOV R6,A
00F0 7D55 1093 MOV R5,#055H
00F2 120000 F
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -