1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36: #define LINE_T 0
37: #define LINE_L 0
38: #define LINE_X COLS
39: #define LINE_Y 1
40: #define LINE_B (LINE_T+LINE_Y-1)
41: #define LINE_R (LINE_L+LINE_X-1)
42:
43: #define BOX_T 1
44: #define BOX_L 0
45: #define BOX_X 65
46: #define BOX_Y 16
47: #define BOX_B (BOX_T+BOX_Y-1)
48: #define BOX_R (BOX_L+BOX_X-1)
49:
50: #define TURN_T BOX_B
51: #define TURN_Y 1
52: #define TURN_L ((BOX_L+BOX_R-TURN_X)/2)
53: #define TURN_X 9
54: #define TURN_B (TURN_T+TURN_Y+1)
55: #define TURN_R (TURN_L+TURN_X+1)
56:
57: #define STAT_T 0
58: #define STAT_B BOX_B
59: #define STAT_L (BOX_R+2)
60: #define STAT_X 14
61: #define STAT_Y (STAT_B-STAT_T+1)
62: #define STAT_R (STAT_L+STAT_X-1)
63: #define STAT_1 0
64: #define STAT_2 (STAT_1+4)
65: #define STAT_3 (STAT_2+7)
66:
67: #define SCROLL_T (BOX_B+1)
68: #define SCROLL_L 0
69: #define SCROLL_B (LINES-1)
70: #define SCROLL_R (COLS-1)
71: #define SCROLL_X (SCROLL_R-SCROLL_L+1)
72: #define SCROLL_Y (SCROLL_B-SCROLL_T+1)
73:
74: #define VIEW_T (BOX_T+1)
75: #define VIEW_L (BOX_L+1)
76: #define VIEW_X (BOX_X-5)
77: #define VIEW_Y (BOX_Y-2)
78: #define VIEW_B (VIEW_T+VIEW_Y-1)
79: #define VIEW_R (VIEW_L+VIEW_X-1)
80:
81: #define SLOT_T VIEW_T
82: #define SLOT_L (VIEW_R+1)
83: #define SLOT_X 3
84: #define SLOT_Y VIEW_Y
85: #define SLOT_B VIEW_B
86: #define SLOT_R (SLOT_L+SLOT_X-1)
87:
88: extern int done_curses;
89: extern int loaded, fired, changed, repaired;
90: extern int dont_adjust;
91: extern int viewrow, viewcol;
92: extern char movebuf[sizeof SHIP(0)->file->movebuf];
93: extern char version[];
94: extern int player;
95: extern struct ship *ms;
96: extern struct File *mf;
97: extern struct shipspecs *mc;
98:
99:
100: #define LEAVE_QUIT 0
101: #define LEAVE_CAPTURED 1
102: #define LEAVE_HURRICAN 2
103: #define LEAVE_DRIVER 3
104: #define LEAVE_FORK 4
105: #define LEAVE_SYNC 5