diff options
Diffstat (limited to 'v4.0/src/CMD/GRAFTABL/GRTABSM.ASM')
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABSM.ASM | 152 |
1 files changed, 152 insertions, 0 deletions
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABSM.ASM b/v4.0/src/CMD/GRAFTABL/GRTABSM.ASM new file mode 100644 index 0000000..bcb4c9e --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABSM.ASM | |||
| @@ -0,0 +1,152 @@ | |||
| 1 | PAGE 90,132 ;AN000;A2 | ||
| 2 | TITLE GRTABSM.SAL - GRAFTABL SYSTEM MESSAGES ;AN000; | ||
| 3 | ;****************** START OF SPECIFICATIONS ***************************** | ||
| 4 | ; MODULE NAME: GRTABSM.SAL | ||
| 5 | ; | ||
| 6 | ; DESCRIPTIVE NAME: Include the DOS system MESSAGE HANDLER in the SEGMENT | ||
| 7 | ; configuration expected by the modules of GRAFTABL. | ||
| 8 | ; | ||
| 9 | ;FUNCTION: The common code of the DOS SYSTEM MESSAGE HANDLER is made a | ||
| 10 | ; part of the GRAFTABL module by using INCLUDE to bring in the | ||
| 11 | ; common portion, in SYSMSG.INC. This included code contains | ||
| 12 | ; the routines to initialize for message services, to find | ||
| 13 | ; where a particular message is, and to display a message. | ||
| 14 | ; | ||
| 15 | ; ENTRY POINT: SYSDISPMSG:near | ||
| 16 | ; SYSGETMSG:near | ||
| 17 | ; SYSLOADMSG:near | ||
| 18 | ; | ||
| 19 | ; INPUT: | ||
| 20 | ; AX = MESSAGE NUMBER | ||
| 21 | ; BX = HANDLE TO DISPLAY TO (-1 means use DOS functions 1-12) | ||
| 22 | ; SI = OFFSET IN ES: OF SUBLIST, OR 0 IF NONE | ||
| 23 | ; CX = NUMBER OF %PARMS, 0 IF NONE | ||
| 24 | ; DX = CLASS IN HIGH BYTE, INPUT FUNCTION IN LOW | ||
| 25 | ; CALL SYSDISPMSG ;DISPLAY THE MESSAGE | ||
| 26 | |||
| 27 | ; If carry set, extended error already called: | ||
| 28 | ; AX = EXTENDED MESSAGE NUMBER | ||
| 29 | ; BH = ERROR CLASS | ||
| 30 | ; BL = SUGGESTED ACTION | ||
| 31 | ; CH = LOCUS | ||
| 32 | ; _ _ _ _ _ _ _ _ _ _ _ _ | ||
| 33 | |||
| 34 | ; AX = MESSAGE NUMBER | ||
| 35 | ; DH = MESSAGE CLASS (1=DOS EXTENDED ERROR, 2=PARSE ERROR, -1=UTILITY MSG) | ||
| 36 | ; CALL SYSGETMSG ;FIND WHERE A MSG IS | ||
| 37 | |||
| 38 | ; If carry set, error | ||
| 39 | ; CX = 0, MESSAGE NOT FOUND | ||
| 40 | ; If carry NOT set, ok, and resulting regs are: | ||
| 41 | ; CX = MESSAGE SIZE | ||
| 42 | ; DS:SI = MESSAGE TEXT | ||
| 43 | ; _ _ _ _ _ _ _ _ _ _ _ _ | ||
| 44 | |||
| 45 | ; CALL SYSLOADMSG ;SET ADDRESSABILITY TO MSGS, CHECK DOS VERSION | ||
| 46 | ; If carry not set: | ||
| 47 | ; CX = SIZE OF MSGS LOADED | ||
| 48 | |||
| 49 | ; If carry is set, regs preset up for SYSDISPMSG, as: | ||
| 50 | ; AX = ERROR CODE IF CARRY SET | ||
| 51 | ; AX = 1, INCORRECT DOS VERSION | ||
| 52 | ; DH =-1, (Utility msg) | ||
| 53 | ; OR, | ||
| 54 | ; AX = 1, Error loading messages | ||
| 55 | ; DH = 0, (Message manager error) | ||
| 56 | ; BX = STDERR | ||
| 57 | ; CX = NO_REPLACE | ||
| 58 | ; DL = NO_INPUT | ||
| 59 | ; | ||
| 60 | ; EXIT-NORMAL: CARRY is not set | ||
| 61 | ; | ||
| 62 | ; EXIT-ERROR: CARRY is set | ||
| 63 | ; Call Get Extended Error for reason code, for SYSDISPMSG and | ||
| 64 | ; SYSGETMSG. | ||
| 65 | ; | ||
| 66 | ; INTERNAL REFERENCES: | ||
| 67 | ; ROUTINES: (Generated by the MSG_SERVICES macro) | ||
| 68 | ; SYSLOADMSG | ||
| 69 | ; SYSDISPMSG | ||
| 70 | ; SYSGETMSG | ||
| 71 | ; | ||
| 72 | ; DATA AREAS: | ||
| 73 | ; INCLUDE GRTABMS.INC ;message defining control blocks | ||
| 74 | ; INCLUDE SYSMSG.INC ;Permit System Message handler definition | ||
| 75 | ; INCLUDE COPYRIGH.INC ;Standard copyright notice | ||
| 76 | ; INCLUDE MSGHAN.INC ;Defines message control blocks STRUCs | ||
| 77 | ; INCLUDE VERSIONA.INC ;INCLUDEd by code generated by SYSMSG.INC | ||
| 78 | ; | ||
| 79 | ; EXTERNAL REFERENCES: | ||
| 80 | ; ROUTINES: none | ||
| 81 | ; | ||
| 82 | ; DATA AREAS: control blocks pointed to by input registers. | ||
| 83 | ; | ||
| 84 | ; NOTES: | ||
| 85 | ; This module should be processed with the SALUT preprocessor | ||
| 86 | ; with the re-alignment not requested, as: | ||
| 87 | ; | ||
| 88 | ; SALUT GRTABSM,NUL,; | ||
| 89 | ; | ||
| 90 | ; To assemble these modules, the alphabetical or sequential | ||
| 91 | ; ordering of segments may be used. | ||
| 92 | ; | ||
| 93 | ; For LINK instructions, refer to the PROLOG of the main module, | ||
| 94 | ; GRTAB.SAL. | ||
| 95 | ; | ||
| 96 | ; COPYRIGHT: "Version 4.00 (C)Copyright Microsoft Corp 1981,1988 " | ||
| 97 | ; "Licensed Material - Program Property of Microsoft" | ||
| 98 | ; | ||
| 99 | ;****************** END OF SPECIFICATIONS ***************************** | ||
| 100 | IF1 ;AN000; | ||
| 101 | %OUT COMPONENT=GRAFTABL, MODULE=GRTABSM.SAL... ;AN000; | ||
| 102 | ENDIF ;AN000; | ||
| 103 | INCLUDE PATHMAC.INC ;AN006; | ||
| 104 | ; INCLUDE SYSMSG.INC ;PERMIT SYSTEM MESSAGE HANDLER DEFINITION ;AN000; | ||
| 105 | .XLIST ;AN000; | ||
| 106 | INCLUDE SYSMSG.INC ;AN000;PERMIT SYSTEM MESSAGE HANDLER DEFINITION | ||
| 107 | .LIST ;AN000; | ||
| 108 | MSG_UTILNAME <GRAFTABL> ;AN000;IDENTIFY THE COMPONENT | ||
| 109 | ; = = = = = = = = = = = = | ||
| 110 | ; $SALUT (4,12,18,36) ;AN000; | ||
| 111 | CSEG SEGMENT PARA PUBLIC ;AN000; | ||
| 112 | ASSUME CS:CSEG,DS:CSEG,ES:CSEG,SS:CSEG ;AN000; | ||
| 113 | |||
| 114 | ;THIS MODULE IS EXPECTED TO BE LINKED DIRECTLY FOLLOWING THE LAST | ||
| 115 | ;FONT DEFINITION MODULE, SINCE THE VARIABLE, "COPYRIGHT", IS USED | ||
| 116 | ;TO DETERMINE THE END OF THE ARRAY OF FONT TABLES. | ||
| 117 | |||
| 118 | PUBLIC COPYRIGHT ;AN000; | ||
| 119 | COPYRIGHT LABEL BYTE ;AN006; | ||
| 120 | ;(deleted ;AN004;) INCLUDE COPYRIGH.INC ;(this is now being done in MSG_SERVICES) | ||
| 121 | |||
| 122 | INCLUDE MSGHAN.INC ;AN000;DEFINE MESSAGE HANDLER CONTROL BLOCKS | ||
| 123 | INCLUDE GRTABMS.INC ;AN000;DEFINE THE MESSAGES, AND CONTROL BLOCKS | ||
| 124 | MSG_SERVICES <GRAFTABL.CLA,GRAFTABL.CL1,GRAFTABL.CL2> ;AN000; | ||
| 125 | MSG_SERVICES <MSGDATA> ;AN000; | ||
| 126 | ; = = = = = = = = = = = = | ||
| 127 | PUBLIC SYSLOADMSG ;AN000; | ||
| 128 | PUBLIC SYSDISPMSG ;AN000; | ||
| 129 | PUBLIC SYSGETMSG ;AN000; | ||
| 130 | PATHLABL GRTABSM ;AN006; | ||
| 131 | ;DEFAULT=CHECK DOS VERSION | ||
| 132 | ;DEFAULT=NEARmsg | ||
| 133 | ;DEFAULT=NO INPUTmsg | ||
| 134 | ;DEFAULT=NO NUMmsg | ||
| 135 | ;DEFAULT=NO TIMEmsg | ||
| 136 | ;DEFAULT=NO DATEmsg | ||
| 137 | ; MSG_SERVICES <LOADmsg,GETmsg,DISPLAYmsg,CHARmsg> ;AN000; | ||
| 138 | .XLIST ;AN000; | ||
| 139 | .XCREF ;AN000; | ||
| 140 | MSG_SERVICES <LOADmsg,GETmsg,DISPLAYmsg,CHARmsg> ;AN000; | ||
| 141 | .LIST ;AN000; | ||
| 142 | .CREF ;AN000; | ||
| 143 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 144 | PATHLABL GRTABSM ;AN006; | ||
| 145 | |||
| 146 | |||
| 147 | CSEG ENDS ;AN000; | ||
| 148 | |||
| 149 | include msgdcl.inc | ||
| 150 | |||
| 151 | END ;AN000; | ||
| 152 | \ No newline at end of file | ||