]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.2 1996/04/18 16:13:08 mclareni | |
6 | * Incorporate changes from J.Zoll for version 3.77 | |
7 | * | |
8 | * Revision 1.1.1.1 1996/03/06 10:47:22 mclareni | |
9 | * Zebra | |
10 | * | |
11 | * | |
12 | #include "zebra/pilot.h" | |
13 | SUBROUTINE MZRESV | |
14 | ||
15 | C- Calculate free space for current division, system called | |
16 | C- setting JQMODE, JQKIND, JQSHAR, NQRESV | |
17 | ||
18 | #include "zebra/mqsys.inc" | |
19 | C-------------- END CDE -------------- | |
20 | ||
21 | #include "zebra/q_jbit.inc" | |
22 | #include "zebra/q_jbyt.inc" | |
23 | ||
24 | ||
25 | JQDIVR = JQDIVI | |
26 | IF (JQDIVR.LT.3) GO TO 41 | |
27 | JQMODE = JBIT (IQMODE(KQT+JQDIVR), 1) | |
28 | JQKIND = JBYT (IQKIND(KQT+JQDIVR),21,4) | |
29 | IF (JQMODE.NE.0) GO TO 31 | |
30 | ||
31 | C-- FORWARD DIVISION | |
32 | ||
33 | JQDIVN = JQDIVR + 1 | |
34 | IF (JQDIVR.EQ.JQDVLL) GO TO 24 | |
35 | IF (JQDIVR.EQ.20) GO TO 25 | |
36 | ||
37 | IF (JBYT(IQKIND(KQT+JQDIVN),21,4).NE.JQKIND) GO TO 25 | |
38 | IF (JBIT(IQMODE(KQT+JQDIVN),1) .EQ.JQMODE) GO TO 25 | |
39 | JQSHAR = JQDIVN | |
40 | JQSHR1 = JQDIVR | |
41 | JQSHR2 = JQDIVN | |
42 | NQRESV = LQSTA(KQT+JQDIVN) - LQEND(KQT+JQDIVR) | |
43 | RETURN | |
44 | ||
45 | 24 JQDIVN = JQDVSY | |
46 | 25 L = MIN (LQSTA(KQT+JQDIVR)+NQDMAX(KQT+JQDIVR), | |
47 | + LQSTA(KQT+JQDIVN) ) | |
48 | NQRESV = L - LQEND(KQT+JQDIVR) | |
49 | JQSHAR = 0 | |
50 | RETURN | |
51 | ||
52 | C-- REVERSE DIVISION | |
53 | ||
54 | 31 JQDIVN = JQDIVR - 1 | |
55 | IF (JQDIVR.EQ.JQDVSY) GO TO 34 | |
56 | IF (JBYT(IQKIND(KQT+JQDIVN),21,4).NE.JQKIND) GO TO 35 | |
57 | IF (JBIT(IQMODE(KQT+JQDIVN),1) .EQ.JQMODE) GO TO 35 | |
58 | JQSHAR = JQDIVN | |
59 | JQSHR1 = JQDIVN | |
60 | JQSHR2 = JQDIVR | |
61 | NQRESV = LQSTA(KQT+JQDIVR) - LQEND(KQT+JQDIVN) | |
62 | RETURN | |
63 | ||
64 | 34 JQDIVN = JQDVLL | |
65 | 35 L = MAX (LQEND(KQT+JQDIVR)-NQDMAX(KQT+JQDIVR), | |
66 | + LQEND(KQT+JQDIVN) ) | |
67 | NQRESV = LQSTA(KQT+JQDIVR) - L | |
68 | JQSHAR = 0 | |
69 | RETURN | |
70 | ||
71 | C---- DIVISIONS 2 + 1 | |
72 | ||
73 | 41 JQKIND = 1 | |
74 | JQSHR1 = 1 | |
75 | JQSHR2 = 2 | |
76 | NQRESV = LQSTA(KQT+2) - LQEND(KQT+1) - NQMINR | |
77 | IF (JQDIVR.EQ.1) GO TO 44 | |
78 | JQMODE = 1 | |
79 | JQDIVN = 1 | |
80 | JQSHAR = 1 | |
81 | RETURN | |
82 | ||
83 | 44 JQMODE = 0 | |
84 | JQDIVN = 2 | |
85 | JQSHAR = 2 | |
86 | RETURN | |
87 | END | |
88 | * ================================================== | |
89 | #include "zebra/qcardl.inc" |