📄 alm_q.lst
字号:
C51 COMPILER V7.02b ALM_Q 01/18/2005 21:37:26 PAGE 1
C51 COMPILER V7.02b, COMPILATION OF MODULE ALM_Q
OBJECT MODULE PLACED IN ALM_Q.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE ALM_Q.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /****************************************/
2 /* Copyright (c) 2004, 通信工程学院戴佳 */
3 /* All rights reserved. */
4 /* 作 者:戴佳 */
5 /****************************************/
6
7 #include <other.h>
8
9 void PolFill(struct instruction PolValue);
10 void AlmInd(struct instruction AlmValue);
11 void M1PAlmQ();
12 void M2PAlmQ();
13 void M3PAlmQ();
14 void M4PAlmQ();
15
16 void Alm_query()
17 {
18 1 struct instruction AlmVal;
19 1 struct instruction PolVal;
20 1 uchar TMP;
21 1 uchar tmp_f1=0;
22 1 uchar tmp_f2=0;
23 1 uchar tmp_f3=0;
24 1 uchar tmp_f4=0;
25 1
26 1 tmp_f1=f[0]+f[1]+f[2]+f[3]; //Mapper 1
27 1 tmp_f2=f[4]+f[5]+f[6]+f[7]; //Mapper 2
28 1 tmp_f3=f[8]+f[9]+f[10]+f[11]; //Mapper 3
29 1 tmp_f4=f[12]+f[13]+f[14]+f[15]; //Mapper 4
30 1 if ((FgADLOC==0)&&((((M1_023&0x80)==0x80)&&(tmp_f1!=0))||(((M2_023&0x80)==0x80)&&(tmp_f2!=0))
31 1 ||(((M3_023&0x80)==0x80)&&(tmp_f3!=0))||(((M4_023&0x80)==0x80)&&(tmp_f4!=0)))) //ADLOC
32 1 {
33 2
34 2 FgADLOC=1;
35 2 AlmVal.head=0x08;
36 2 AlmVal.oper_obj=1;
37 2 AlmVal.ObjVal[0]=0;
38 2 AlmVal.ObjVal[1]=0xFF;
39 2 AlmInd(AlmVal);
40 2 }
41 1 else if (FgADLOC==1)
42 1 {
43 2 if (
44 2 (((M1_023&0x80)!=0x80)||(tmp_f1==0))
45 2 &&(((M2_023&0x80)!=0x80)||(tmp_f2==0))
46 2 &&(((M3_023&0x80)!=0x80)||(tmp_f3==0))
47 2 &&(((M4_023&0x80)!=0x80)||(tmp_f4==0))
48 2 )
49 2 {
50 3 FgADLOC=0;
51 3 AlmVal.head=0x08;
52 3 AlmVal.oper_obj=1;
53 3 AlmVal.ObjVal[0]=0;
54 3 AlmVal.ObjVal[1]=0;
55 3 AlmInd(AlmVal);
C51 COMPILER V7.02b ALM_Q 01/18/2005 21:37:26 PAGE 2
56 3 }
57 2 }
58 1 if ((FgAALOC==0)&&((((M1_023&0x40)==0x40)&&(tmp_f1!=0))||(((M2_023&0x40)==0x40)&&(tmp_f2!=0))
59 1 ||(((M3_023&0x40)==0x40)&&(tmp_f3!=0))||(((M4_023&0x40)==0x40)&&(tmp_f4!=0)))) //AALOC
60 1 {
61 2 FgAALOC=1;
62 2 AlmVal.head=0x08;
63 2 AlmVal.oper_obj=1;
64 2 AlmVal.ObjVal[0]=1;
65 2 AlmVal.ObjVal[1]=0xFF;
66 2 AlmInd(AlmVal);
67 2 }
68 1 else if (FgAALOC==1)
69 1 {
70 2 if (
71 2 (((M1_023&0x40)!=0x40)||(tmp_f1==0))
72 2 &&(((M2_023&0x40)!=0x40)||(tmp_f2==0))
73 2 &&(((M3_023&0x40)!=0x40)||(tmp_f3==0))
74 2 &&(((M4_023&0x40)!=0x40)||(tmp_f4==0))
75 2 )
76 2 {
77 3 FgAALOC=0;
78 3 AlmVal.head=0x08;
79 3 AlmVal.oper_obj=1;
80 3 AlmVal.ObjVal[0]=1;
81 3 AlmVal.ObjVal[1]=0;
82 3 AlmInd(AlmVal);
83 3 }
84 2 }
85 1
86 1 if ((FgAUAIS==0)&&((((M1_023&0x01)==0x01)&&(tmp_f1!=0))||(((M2_023&0x01)==0x01)&&(tmp_f2!=0))
87 1 ||(((M3_023&0x01)==0x01)&&(tmp_f3!=0))||(((M4_023&0x01)==0x01)&&(tmp_f4!=0)))) //A1UAISI
88 1 {
89 2 FgAUAIS=1;
90 2 PolVal.head=0x08;
91 2 PolVal.oper_obj=2;
92 2 PolVal.ObjVal[0]=0;
93 2 PolVal.ObjVal[1]=0xFF;
94 2 PolFill(PolVal);
95 2 }
96 1 else if (FgAUAIS==1)
97 1 {
98 2 if (
99 2 (((M1_023&0x01)!=0x01)||(tmp_f1==0))
100 2 &&(((M2_023&0x01)!=0x01)||(tmp_f2==0))
101 2 &&(((M3_023&0x01)!=0x01)||(tmp_f3==0))
102 2 &&(((M4_023&0x01)!=0x01)||(tmp_f4==0))
103 2 )
104 2 {
105 3 FgAUAIS=0;
106 3 PolVal.head=0x08;
107 3 PolVal.oper_obj=2;
108 3 PolVal.ObjVal[0]=0;
109 3 PolVal.ObjVal[1]=0;
110 3 PolFill(PolVal);
111 3 }
112 2 }
113 1 if ((FgADH4E=0)&&((((M1_025&0x01)==0x01)&&(tmp_f1!=0))||(((M2_025&0x01)==0x01)&&(tmp_f2!=0))
114 1 ||(((M3_025&0x01)==0x01)&&(tmp_f3!=0))||(((M4_025&0x01)==0x01)&&(tmp_f4!=0)))) //A1DH4E latched
115 1 {
116 2 FgADH4E=1;
117 2 AlmVal.head=0x08;
C51 COMPILER V7.02b ALM_Q 01/18/2005 21:37:26 PAGE 3
118 2 AlmVal.oper_obj=3;
119 2 AlmVal.ObjVal[0]=0;
120 2 AlmVal.ObjVal[1]=0xFF;
121 2 AlmInd(AlmVal);
122 2 }
123 1 else if (FgADH4E==1)
124 1 {
125 2 if (
126 2 (((M1_025&0x01)!=0x01)||(tmp_f1==0))
127 2 &&(((M2_025&0x01)!=0x01)||(tmp_f2==0))
128 2 &&(((M3_025&0x01)!=0x01)||(tmp_f3==0))
129 2 &&(((M4_025&0x01)!=0x01)||(tmp_f4==0))
130 2 )
131 2 {
132 3 FgADH4E=0;
133 3 AlmVal.head=0x08;
134 3 AlmVal.oper_obj=3;
135 3 AlmVal.ObjVal[0]=0;
136 3 AlmVal.ObjVal[1]=0;
137 3 AlmInd(AlmVal);
138 3 }
139 2 }
140 1 WDI=1;
141 1 WDI=0;
142 1 M1PAlmQ();
143 1 M2PAlmQ();
144 1 WDI=1;
145 1 WDI=0;
146 1 M3PAlmQ();
147 1 M4PAlmQ();
148 1 WDI=1;
149 1 WDI=0;
150 1
151 1 if (FgTLOS[0]==1)
152 1 {
153 2 TMP=T1_012&0x01;
154 2 if ((f[0]==0)||(TMP==0x00)) //T1LOS
155 2 {
156 3 FgTLOS[0]=0;
157 3 AlmVal.head=0x08;
158 3 AlmVal.oper_obj=15;
159 3 AlmVal.ObjVal[0]=0;
160 3 AlmVal.ObjVal[1]=0;
161 3 AlmInd(AlmVal);
162 3 M1_050=M1_050&0xEF; //TnAIS=0,cancel send AIS in transmit data stream
163 3 }
164 2 }
165 1 if (FgTLOC[0]==1)
166 1 {
167 2 if (((M1_045&0x02)!=0x02)||(f[0]==0)) //T1LOC
168 2 {
169 3 FgTLOC[0]=0;
170 3 AlmVal.head=0x08;
171 3 AlmVal.oper_obj=1;
172 3 AlmVal.ObjVal[0]=16;
173 3 AlmVal.ObjVal[1]=0;
174 3 AlmInd(AlmVal);
175 3 }
176 2 }
177 1 if (FgAAIS[0]==1)
178 1 {
179 2 if (((M1_031&0x80)!=0x80)||(f[0]==0)) //A1AIS
C51 COMPILER V7.02b ALM_Q 01/18/2005 21:37:26 PAGE 4
180 2 {
181 3 FgAAIS[0]=0;
182 3 PolVal.head=0x08;
183 3 PolVal.oper_obj=2;
184 3 PolVal.ObjVal[0]=16;
185 3 PolVal.ObjVal[1]=0;
186 3 PolFill(PolVal);
187 3 }
188 2 }
189 1 if (FgTDAIS[0]==1)
190 1 {
191 2 if (((M1_045&0x01)!=0x01)||(f[0]==0)) //T1DAIS
192 2 {
193 3 FgTDAIS[0]=0;
194 3 PolVal.head=0x08;
195 3 PolVal.oper_obj=2;
196 3 PolVal.ObjVal[0]=48;
197 3 PolVal.ObjVal[1]=0;
198 3 PolFill(PolVal);
199 3 }
200 2 }
201 1
202 1 if (FgANDF[0]==1)
203 1 {
204 2 if (((M1_031&0x10)!=0x10)||(f[0]==0)) //A1NDF NEW POINTER IND
205 2 {
206 3 FgANDF[0]=0;
207 3 PolVal.head=0x08;
208 3 PolVal.oper_obj=6;
209 3 PolVal.ObjVal[0]=0;
210 3 PolVal.ObjVal[1]=0;
211 3 PolFill(PolVal);
212 3 }
213 2 }
214 1 if (FgARDI[0]==1)
215 1 {
216 2 if (((M1_031&0x08)!=0x08)||(f[0]==0)) //A1RDI
217 2 {
218 3 FgARDI[0]=0;
219 3 PolVal.head=0x08;
220 3 PolVal.oper_obj=7;
221 3 PolVal.ObjVal[0]=0;
222 3 PolVal.ObjVal[1]=0;
223 3 PolFill(PolVal);
224 3 }
225 2 }
226 1
227 1 if (FgAUNEQ[0]==1)
228 1 {
229 2 if (((M1_031&0x02)!=0x02)||(f[0]==0)) //A1UNEQ
230 2 {
231 3 FgAUNEQ[0]=0;
232 3 PolVal.head=0x08;
233 3 PolVal.oper_obj=9;
234 3 PolVal.ObjVal[0]=0;
235 3 PolVal.ObjVal[1]=0;
236 3 PolFill(PolVal);
237 3 }
238 2 }
239 1 if (FgASLER[0]==1)
240 1 {
241 2 if (((M1_031&0x01)!=0x01)||(f[0]==0)) //A1SLER
C51 COMPILER V7.02b ALM_Q 01/18/2005 21:37:26 PAGE 5
242 2 {
243 3 FgASLER[0]=0;
244 3 AlmVal.head=0x08;
245 3 AlmVal.oper_obj=10;
246 3 AlmVal.ObjVal[0]=0;
247 3 AlmVal.ObjVal[1]=0;
248 3 AlmInd(AlmVal);
249 3 }
250 2 }
251 1 if (FgAJ2TIM[0]==1)
252 1 {
253 2 if (((M1_04F&0x04)!=0x04)||(f[0]==0)) //A1J2TIM
254 2 {
255 3 FgAJ2TIM[0]=0;
256 3 AlmVal.head=0x08;
257 3 AlmVal.oper_obj=12;
258 3 AlmVal.ObjVal[0]=0;
259 3 AlmVal.ObjVal[1]=0;
260 3 AlmInd(AlmVal);
261 3 }
262 2 }
263 1
264 1 if (FgTLOS[1]==1)
265 1 {
266 2 TMP=T1_052&0x01;
267 2 if ((f[1]==0)||(TMP==0x00)) //T2LOS
268 2 {
269 3 FgTLOS[1]=0;
270 3 AlmVal.head=0x08;
271 3 AlmVal.oper_obj=15;
272 3 AlmVal.ObjVal[0]=1;
273 3 AlmVal.ObjVal[1]=0;
274 3 AlmInd(AlmVal);
275 3 M1_080=M1_080&0xEF; //TnAIS=0,cancel send AIS in transmit data stream
276 3 }
277 2 }
278 1 if (FgTLOC[1]==1)
279 1 {
280 2 if (((M1_075&0x02)!=0x02)||(f[1]==0)) //T2LOC
281 2 {
282 3 FgTLOC[1]=0;
283 3 AlmVal.head=0x08;
284 3 AlmVal.oper_obj=1;
285 3 AlmVal.ObjVal[0]=17;
286 3 AlmVal.ObjVal[1]=0;
287 3 AlmInd(AlmVal);
288 3 }
289 2 }
290 1 if (FgAAIS[1]==1)
291 1 {
292 2 if (((M1_061&0x80)!=0x80)||(f[1]==0)) //A2AIS
293 2 {
294 3 FgAAIS[1]=0;
295 3 PolVal.head=0x08;
296 3 PolVal.oper_obj=2;
297 3 PolVal.ObjVal[0]=17;
298 3 PolVal.ObjVal[1]=0;
299 3 PolFill(PolVal);
300 3 }
301 2 }
302 1 if (FgTDAIS[1]==1)
303 1 {
C51 COMPILER V7.02b ALM_Q 01/18/2005 21:37:26 PAGE 6
304 2 if (((M1_075&0x01)!=0x01)||(f[1]==0)) //T2DAIS
305 2 {
306 3 FgTDAIS[1]=0;
307 3 PolVal.head=0x08;
308 3 PolVal.oper_obj=2;
309 3 PolVal.ObjVal[0]=49;
310 3 PolVal.ObjVal[1]=0;
311 3 PolFill(PolVal);
312 3 }
313 2 }
314 1
315 1 if (FgANDF[1]==1)
316 1 {
317 2 if (((M1_061&0x10)!=0x10)||(f[1]==0)) //A2NDF
318 2 {
319 3 FgANDF[1]=0;
320 3 PolVal.head=0x08;
321 3 PolVal.oper_obj=6;
322 3 PolVal.ObjVal[0]=1;
323 3 PolVal.ObjVal[1]=0;
324 3 PolFill(PolVal);
325 3 }
326 2 }
327 1 if (FgARDI[1]==1)
328 1 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -