]>
wirehaze git hosting - MS-DOS.git/blob - v4.0/src/SELECT/GET_HELP.ASM
3 TITLE SELECT
- GET_HELP_ID
;AN000;
4 SUBTTL Get_Help
.asm
;AN000;
5 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
16 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
17 SELECT
SEGMENT PARA
PUBLIC 'SELECT' ;AN000;segment for far routine
18 ASSUME
CS:SELECT
;AN000;
21 INP_HELP_ID
DW 12,10,10 ;AN000; help_id 1, row', col' STR_DOS_LOC
22 DW 19,12,15 ;AN000; help_id 2, row', col' STR_EXT_PARMS
23 DW 31,11,20 ;AN000; help_id 3, row', col' STR_DOS_PATH
24 DW 32,11,20 ;AN000; help_id 4, row', col' STR_DOS_APPEND
25 DW 33,11,20 ;AN000; help_id 5, row', col' STR_DOS_PROMPT
26 DW 34,12,20 ;AN000; help_id 6, row', col' STR_SHELL
27 DW 35,12,20 ;AN000; help_id 7, row', col' STR_KSAM
28 DW 35,12,20 ;AN000; help_id 8, row', col' STR_FASTOPEN
29 DW 36,12,20 ;AN000; help_id 9, row', col' STR_SHARE
30 DW 37,12,20 ;AN000; help_id 10, row', col' STR_GRAPHICS
31 DW 38,12,20 ;AN000; help_id 11, row', col' STR_XMAEM
32 DW 39,12,20 ;AN000; help_id 12, row', col' STR_XMA2EMS
33 DW 40,13,20 ;AN000; help_id 13, row', col' STR_VDISK
34 DW 41,12,20 ;AN000; help_id 14, row', col' STR_BREAK
35 DW 42,12,20 ;AN000; help_id 15, row', col' STR_BUFFERS
36 DW 43,11,20 ;AC000; help_id 16, row', col' STR_DOS_APPEND_P JW
37 DW 44, 2,20 ;AN000; help_id 17, row', col' STR_FCBS
38 DW 45, 2,20 ;AN000; help_id 18, row', col' STR_FILES
39 DW 46, 2,20 ;AN000; help_id 19, row', col' STR_LASTDRIVE
40 DW 47, 2,20 ;AN000; help_id 20, row', col' STR_STACKS
41 DW 48, 2,20 ;AN000; help_id 21, row', col' STR_VERIFY
42 DW 13,10,10 ;AN000; help_id 22, row', col' NUM_PRINTER
43 DW 18,10,20 ;AN000; help_id 23, row', col' NUM_EXT_DISK
44 DW 53,12,20 ;AN000; help_id 24, row', col' NUM_YEAR
45 DW 53,12,20 ;AN000; help_id 25, row', col' NUM_MONTH
46 DW 53,12,20 ;AN000; help_id 26, row', col' NUM_DAY
47 DW 53,12,20 ;AN000; help_id 27, row', col' NUM_HOUR
48 DW 53,12,20 ;AN000; help_id 28, row', col' NUM_MINUTE
49 DW 53,11,20 ;AN000; help_id 29, row', col' NUM_SECOND
50 INP_HELP_ID_LEN EQU
($-INP_HELP_ID
)/6 ;AN000;
51 INP_HELP_ID_ELE EQU
3 ;AN000;
53 SCR_HELP_ID
DW 3 ;AN000; scr_id1
54 DW 3,12,20 ;AN000; help_id1,row1',col1'
61 DW 8, 3,20 ;AN000; SCR_CTY_1
63 DW 8, 3,20 ;AN000; SCR_CTY_2
65 DW 9,10,20 ;AN000; SCR_KYB_1
67 DW 9,10,20 ;AN000; SCR_KYB_2
69 DW 10,10,23 ;AN000; SCR_FR_KYB
71 DW 10,10,23 ;AN000; SCR_IT_KYB
73 DW 10,10,23 ;AN000; SCR_UK_KYB
75 DW 11,10,20 ;AN111; SCR_DEST_B_C JW
77 DW 14, 1,25 ;AN000; SCR_PRT_TYPE
79 DW 15, 9,20 ;AN000; SCR_PARALLEL
81 DW 16,10,20 ;AN000; SCR_SERIAL
83 DW 17, 8,20 ;AN000; SCR_PRT_REDIR
85 DW 20, 6,20 ;AN000; SCR_REVIEW
86 DW 21, 6,20 ;AN000; SCR_REVIEW
103 DW 30, 3,11 ;AN000; SCR_FUNC_DISKET
106 DW 50, 1,11 ;AN000; SCR_FIXED_FIRST
109 DW 52, 1,11 ;AN000; SCR_FIXED_BOTH
112 DW 55, 1,11 ;AN000; SCR_FORMAT
113 DW 0 ;AN000; SCR_CONTEXT_HLP
114 DW 0 ;AN000; SCR_INDEX_HLP
115 DW 0 ;AN000; SCR_TITLE_HLP
118 DW 2 ;AN000; SCR_COPY_DEST JW
119 DW 18,10,10 ;AC035; SEH new help text
120 DW 19,10,10 ;AC035; SEH new help text
122 DW 11,10,20 ;AN111; SCR_DEST_A_C JW
124 DW 56, 6,20 ;AN000; SCR_choose_screen
125 DW 57, 6,20 ;AN000; SCR_choose_screen
126 SCR_HELP_ID_LEN EQU
28 ;AN000;
127 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
133 ; AX = 1 for input field help_id's
135 ; AX = 2 for scroll help_id's
145 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
148 PUBLIC GET_HELP_ID
;AN000;
149 GET_HELP_ID PROC
;AN000;
153 CMP AX,INP_HELP_ID_LEN
;AN000;
160 MOV BX,INP_HELP_ID_ELE
*2 ;AN000;
163 MOV AX,CS:[BX].INP_HELP_ID
;AN000;
164 MOV CX,CS:[BX+2].INP_HELP_ID
;AN000;
165 MOV DX,CS:[BX+4].INP_HELP_ID
;AN000;
170 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
172 ; AX = 2 for scroll help_id's
176 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
177 GH_8: CMP AX,2 ;AN000;
180 CMP BX,SCR_HELP_ID_LEN
;AN000;
186 PUSH CX ;AN000; search for matching scroll_id
191 GH_9: CMP DX,BX ;AN000;
193 MOV AX,CS:[SI]+SCR_HELP_ID
;AN000; get number of help screens
197 ADD AX,1 ;AN000; +additional entries (row',col',count)
198 SHL AX,1 ;AN000; account for WORD entries
201 CMP DX,SCR_HELP_ID_LEN
;AN000;
202 JBE GH_9
;AC000; JW Changed to JBE
205 GH_10: CMP CX,CS:[SI]+SCR_HELP_ID
;AN000; check for index out of range?
206 JBE GH_11
;AN000; then
207 MOV CX,1 ;AN000; set to first help_id....
209 GH_11: MOV AX,CX ;AN000; scroll_id found!!!!
215 MOV AX,CS:[SI]+SCR_HELP_ID
;AN000;
216 MOV CX,CS:[SI+2].SCR_HELP_ID
;AN000;
217 MOV DX,CS:[SI+4].SCR_HELP_ID
;AN000;
220 GH_15: POP SI ;AN000;
224 GET_HELP_ID ENDP
;AN000;
225 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
229 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
231 END GET_HELP_ID
;AN000;
232 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;