blob: db547ba7a17de3c602b8419d681087803acf25fe (
plain) (
blame)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
PAGE 55,132 ;AN000;
NAME SELSERV ;AN000;
TITLE SELSERV - SELECT Services ;AN000;
SUBTTL selserv.asm ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; ADJUST_CURELE
;
;
; Entry:
; AX = index on entry
;
; Exit:
; AX = adjusted index
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SELECT SEGMENT PARA PUBLIC 'SELECT' ;AN000;segment for far routine
ASSUME CS:SELECT ;AN000;
;
EXTRN WR_SCBID:WORD ;AN000;
;
SCROLL_ADJUST LABEL BYTE ;AN000;
DB 1 ;AN000;SCR_DOS_SUPPORT
DB 1 ;AN000;SCR_CTY_KYB
DB 0 ;AN000;SCR_CTY_1
DB 0 ;AN000;SCR_CTY_2
DB 0 ;AN000;SCR_KYB_1
DB 0 ;AN000;SCR_KYB_2
DB 1 ;AN000;SCR_FR_KYB
DB 1 ;AN000;SCR_IT_KYB
DB 1 ;AN000;SCR_UK_KYB
DB 1 ;AN000;SCR_DEST_DRIVE
DB 0 ;AN000;SCR_PRT_TYPE
DB 1 ;AN000;SCR_PARALLEL
DB 0 ;AN000;SCR_SERIAL
DB 0 ;AN000;SCR_PRT_REDIR
DB 1 ;AN000;SCR_REVIEW
DB 0 ;AN000;SCR_FUNC_DISK
DB 0 ;AN000;SCR_FUNC_DISKET
DB 1 ;AN000;SCR_FIXED_FIRST
DB 1 ;AN000;SCR_FIXED_BOTH
DB 1 ;AN000;SCR_FORMAT
DB 0 ;AC000;SCR_CONTEXT_HLP / SCR_INDEX_HLP JW
DB 0 ;AN000;SCR_TITLE_HLP
DB 0 ;AN000;SCR_ACC_CTY JW
DB 0 ;AN000;SCR_ACC_KYB JW
DB 0 ;AN000;SCR_ACC_PRT JW
DB 1 ;AC035;SCR_COPY_DEST SEH
DB 0 ;AN035;SCR_DEST_A_C; SEH
DB 1 ;mrw ;scr_choose_shell
SCROLL_ADJUST_LEN EQU ($-SCROLL_ADJUST);AN000;
ADJUST_ON EQU 1 ;AN000;
ADJUST_OFF EQU 0 ;AN000;
;
PUBLIC ADJUST_UP,ADJUST_DOWN ;AN000;
;
ADJUST_UP PROC ;AN000;
PUSH BX ;AN000;
PUSH CX ;AN000;
OR AX,AX ;AN000;
JZ AC_1 ;AN000;
;
MOV CL,ADJUST_ON ;AN000;
CMP CS:[BX-1]+SCROLL_ADJUST,CL;AN000;
JNE AC_1 ;AN000;
;
SHL AX,1 ;AN000;
DEC AX ;AN000;
AC_1: POP CX ;AN000;
POP BX ;AN000;
RET ;AN000;
ADJUST_UP ENDP ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; ADJUST_INDEX
;
; AX = index on entry
;
; AX = adjusted index
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ADJUST_DOWN PROC ;AN000;
PUSH BX ;AN000;
PUSH CX ;AN000;
OR AX,AX ;AN000;
JZ AI_1 ;AN000;
;
MOV CL,ADJUST_ON ;AN000;
CMP CS:[BX-1]+SCROLL_ADJUST,CL;AN000;
JNE AC_1 ;AN000;
;
SHR AX,1 ;AN000;
INC AX ;AN000;
AI_1: POP CX ;AN000;
POP BX ;AN000;
RET ;AN000;
ADJUST_DOWN ENDP ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
;
;
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SELECT ENDS ;AN000;
END ;AN000;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|