diff options
| author | 2024-04-25 21:24:10 +0100 | |
|---|---|---|
| committer | 2024-04-25 22:32:27 +0000 | |
| commit | 2d04cacc5322951f187bb17e017c12920ac8ebe2 (patch) | |
| tree | 80ee017efa878dfd5344b44249e6a241f2a7f6e2 /v4.0/src/CMD/GRAFTABL | |
| parent | Merge pull request #430 from jpbaltazar/typoptbr (diff) | |
| download | ms-dos-main.tar.gz ms-dos-main.tar.xz ms-dos-main.zip | |
Diffstat (limited to 'v4.0/src/CMD/GRAFTABL')
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRAFTABL.LNK | 12 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRAFTABL.SKL | 28 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTAB.ASM | 1218 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABCF.ASM | 1196 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABHAN.ASM | 223 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABML.ASM | 1187 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABMS.INC | 115 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABNO.ASM | 1188 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABP.ASM | 144 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABPAR.ASM | 538 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABPO.ASM | 1316 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABSM.ASM | 152 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/GRTABUS.ASM | 1182 | ||||
| -rw-r--r-- | v4.0/src/CMD/GRAFTABL/MAKEFILE | 74 |
14 files changed, 8573 insertions, 0 deletions
diff --git a/v4.0/src/CMD/GRAFTABL/GRAFTABL.LNK b/v4.0/src/CMD/GRAFTABL/GRAFTABL.LNK new file mode 100644 index 0000000..ebc5869 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRAFTABL.LNK | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | GRTABHAN+ | ||
| 2 | GRTABUS+ | ||
| 3 | GRTABML+ | ||
| 4 | GRTABPO+ | ||
| 5 | GRTABCF+ | ||
| 6 | GRTABNO+ | ||
| 7 | GRTABSM+ | ||
| 8 | GRTABPAR+ | ||
| 9 | GRTABP+ | ||
| 10 | GRTAB | ||
| 11 | GRAFTABL.EXE; | ||
| 12 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRAFTABL.SKL b/v4.0/src/CMD/GRAFTABL/GRAFTABL.SKL new file mode 100644 index 0000000..e148585 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRAFTABL.SKL | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | :util GRAFTABL ;AN000;utility name | ||
| 2 | :class A ;AN000;system messages | ||
| 3 | :use 1 COMMON1 ;AN000;MSG 1 is always "Incorrect DOS version" | ||
| 4 | |||
| 5 | ;In these next 2 messages, %1 will be replaced with one from list, 4-5, ;AN000; | ||
| 6 | ; or with one entry of the list at "CPID". (see GRTABMS.INC) ;AN000; | ||
| 7 | |||
| 8 | :def 2 "Active Code Page: %1",CR,LF ;AN000; | ||
| 9 | :def 3 "Previous Code Page: %1",CR,LF ;AN000; | ||
| 10 | |||
| 11 | :def 4 "None",NULL ;AN000; | ||
| 12 | :def 5 "Non-standard",NULL ;AN000; | ||
| 13 | |||
| 14 | :def 6 CR,LF,"DOS command line parameters supported",COLON,CR,LF,LF ;AC007; | ||
| 15 | |||
| 16 | :def 7 " /STA - Request Status only",CR,LF ;AC007; | ||
| 17 | " ? - Display this summary of parameters",CR,LF,CR,LF ;AC007; | ||
| 18 | |||
| 19 | :def 8 " Code Pages available",COLON,CR,LF ;AC007; | ||
| 20 | " 437 - USA Graphic Character Set",CR,LF ;AC007; | ||
| 21 | |||
| 22 | :def 9 " 850 - Multi-lingual Graphic Character Set",CR,LF ;AC007; | ||
| 23 | " 860 - Portuguese Graphic Character Set",CR,LF ;AC007; | ||
| 24 | |||
| 25 | :def 10 " 863 - Canadian French Graphic Character Set",CR,LF ;AC007; | ||
| 26 | " 865 - Nordic Graphic Character Set",CR,LF ;AC007; | ||
| 27 | :end ;AN000; | ||
| 28 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTAB.ASM b/v4.0/src/CMD/GRAFTABL/GRTAB.ASM new file mode 100644 index 0000000..b0ef30c --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTAB.ASM | |||
| @@ -0,0 +1,1218 @@ | |||
| 1 | PAGE 90,132 ;A2 | ||
| 2 | TITLE GRTAB - DEFINE ROM GRAPHIC CHARACTERS FOR 128-255 | ||
| 3 | IF1 | ||
| 4 | %OUT GRTAB.SAL... | ||
| 5 | ELSE | ||
| 6 | ; %OUT GRTAB.SAL... | ||
| 7 | ENDIF | ||
| 8 | LISTPARM = 1 ;0=SUPPRESS LIST; 1=ALLOW LIST ;AN000; | ||
| 9 | ;.XLIST ; ;AN000; | ||
| 10 | ;****************** START OF SPECIFICATIONS ***************************** | ||
| 11 | ; MODULE NAME: GRTAB | ||
| 12 | ; (MAIN ROUTINE FOR UTILITY "GRAFTABL") | ||
| 13 | |||
| 14 | ; DESCRIPTIVE NAME: Makes resident a 1K block of data defining the | ||
| 15 | ; graphic character set when in graphics mode. | ||
| 16 | |||
| 17 | ;FUNCTION: When in normal text mode (BASIC SCREEN 0), the CGA will properly | ||
| 18 | ; handle all 255 characters in the screen display. | ||
| 19 | ; However, when in graphics mode (BASIC SCREEN 1), then only the | ||
| 20 | ; first 128 characters are properly shown on the screen. | ||
| 21 | ; The upper 128 characters are defined in graphics mode by | ||
| 22 | ; the 8 by 128 byte table pointed to by interrupt 1FH | ||
| 23 | ; vector, which is normally set to 0:0, thus producing | ||
| 24 | ; garbage on the screen for the upper set of characters. | ||
| 25 | |||
| 26 | ; The purpose of this routine is to define an 8 by 128 byte | ||
| 27 | ; table that defines each of these graphic characters in | ||
| 28 | ; the upper 128 byte range, and also to put the vector | ||
| 29 | ; pointer to this table into the interrupt 1FH. Once | ||
| 30 | ; loaded, this table remains resident. | ||
| 31 | |||
| 32 | ; An interrupt handler is hooked into the INT 2FH vector that | ||
| 33 | ; screens INT 2FH calls for the MULTIPLEX ID value of hex B0, | ||
| 34 | ; as defined by an equate, MY_MULTIPLEX_NUMBER, in GRATABHAN. | ||
| 35 | ; The response indicates that GRAFTABL has been loaded, thus | ||
| 36 | ; permitting the redefinition of the original 1K table with | ||
| 37 | ; some new specification. | ||
| 38 | |||
| 39 | ; ENTRY POINT: Entry_Point, JMP from GRTABHAN.SAL at his ORG 100H. | ||
| 40 | ; LINKAGE: [d:][path] GRAFTABL [437 | 850 | 860 | 863 | 865 | ? | /STATUS] | ||
| 41 | |||
| 42 | ; INPUT: (DOS COMMAND LINE PARAMETERS) | ||
| 43 | ; '/STATUS'- (OR /STA) Identify the table already loaded, if any. | ||
| 44 | ; '?' - Display the list of operands supported by GRAFTABL. | ||
| 45 | ; 437 - Install the USA Graphic Character Set | ||
| 46 | ; (BLANK) - Means same as '437', the 'USA' definition table | ||
| 47 | ; 850 - Install the Multi-lingual Graphic Character Set | ||
| 48 | ; 860 - Install the Portuguese Graphic Character Set | ||
| 49 | ; 863 - Install the Canadian French Graphic Character Set | ||
| 50 | ; 865 - Install the Nordic Graphic Character Set | ||
| 51 | |||
| 52 | ; EXIT-NORMAL: ERRORLEVEL 0 - Leaving the 1K block of newly defined | ||
| 53 | ; characters resident. There was no | ||
| 54 | ; previously defined character table. | ||
| 55 | ; Available RAM reduced by hex 1360 bytes. | ||
| 56 | |||
| 57 | ; ERRORLEVEL 1 - No change in size of available RAM storage. | ||
| 58 | ; A previously loaded character table exists. | ||
| 59 | ; If a new table was requested, it has replaced | ||
| 60 | ; the previous table at its original location. | ||
| 61 | |||
| 62 | ; ERRORLEVEL 2 - No change in size of available RAM storage. | ||
| 63 | ; No previously loaded character table exists. | ||
| 64 | ; | ||
| 65 | ; (The request for status, with parm="/sta[tus]", | ||
| 66 | ; or the request for HELP, with parm="?", | ||
| 67 | ; will result in either code 1 or 2.) | ||
| 68 | |||
| 69 | ; EXIT-ERROR: ERRORLEVEL 3 - Incorrect parameter. | ||
| 70 | ; No action taken, assumes "?" requested HELP. | ||
| 71 | ; No change in size of available RAM storage. | ||
| 72 | |||
| 73 | ; ERRORLEVEL 4 - Incorrect version of DOS, DOS 4.0 required | ||
| 74 | |||
| 75 | ; EFFECTS: Either the desired table is hooked into Interrupt 1FH, | ||
| 76 | ; or the identity of the previously loaded table is | ||
| 77 | ; displayed. | ||
| 78 | |||
| 79 | ; INTERNAL REFERENCES: | ||
| 80 | ; ROUTINES: | ||
| 81 | ; FINDTYPE - Scan existing table to see who is already loaded | ||
| 82 | ; MOVTAB - Moves the specified table to overlay a portion of the PSP | ||
| 83 | ; BADPARMS - Displays error message, and sets error ERRORLEVEL code | ||
| 84 | ; SENDMSG - passes parms to regs and invokes the system message routine. | ||
| 85 | |||
| 86 | ; DATA AREAS: | ||
| 87 | ; PSP - Contains the DOS command line parameters. Partly overlayed | ||
| 88 | ; with the installation of the character table. | ||
| 89 | ; WORKAREA - Temporary storage | ||
| 90 | |||
| 91 | ; EXTERNAL REFERENCES: | ||
| 92 | ; ROUTINES: | ||
| 93 | ; GRTABHAN (ENTRY is "HANDLER") - hooked into INT 2FH to identify | ||
| 94 | ; that GRAFTABL is loaded and resident. | ||
| 95 | ; SYSDISPMSG - Uses the MSG parm lists to construct the messages | ||
| 96 | ; on STDOUT. | ||
| 97 | ; SYSLOADMSG - Loads messages, makes them accessable. | ||
| 98 | ; SYSPARSE - Processes the DOS Command line, finds parms. | ||
| 99 | ; PARSE - Interfaces with the system Parser. | ||
| 100 | |||
| 101 | ; DATA AREAS: | ||
| 102 | ; GRTABUS - 1k binary table of the USA graphic character set | ||
| 103 | ; GRTABML - 1k binary table of the Multi-Lingual graphic | ||
| 104 | ; character set | ||
| 105 | ; GRTABPO - 1k binary table of the Portuguese graphic | ||
| 106 | ; character set | ||
| 107 | ; GRTABCF - 1k binary table of the Canada French graphic | ||
| 108 | ; character set | ||
| 109 | ; GRTABNO - 1k binary table of the Nordic graphic character | ||
| 110 | ; set | ||
| 111 | ; GRTABSM - Definition of messages, text and MSG parm lists, | ||
| 112 | ; and COPYRIGHT notice | ||
| 113 | ; GRTABPAR - Control blocks to define the DOS command line parms. | ||
| 114 | ; MPEXNUM - Byte containing the value of the multiplex number | ||
| 115 | ; (For ease of patching, if such should ever become needed, | ||
| 116 | ; this byte is immediately just before the interrupt 2FH | ||
| 117 | ; handler's entry point, after that handler is loaded. To | ||
| 118 | ; change this value here in these source modules, that value | ||
| 119 | ; is defined in GRTABHAN as the equate: MY_MULTIPLEX_NUMBER. | ||
| 120 | ; For purposes of patching the GRAFTABL.EXE file, this byte | ||
| 121 | ; is at offset 5FH into the module.) | ||
| 122 | |||
| 123 | ; NOTES: | ||
| 124 | ; This module should be processed with the SALUT preprocessor | ||
| 125 | ; with the re-alignment not requested, as: | ||
| 126 | |||
| 127 | ; SALUT GRTAB,NUL | ||
| 128 | |||
| 129 | ; To assemble these modules, the alphabetical or sequential | ||
| 130 | ; ordering of segments may be used. | ||
| 131 | |||
| 132 | ; Sample LINK command: | ||
| 133 | |||
| 134 | ; LINK @GRTABLK.ARF | ||
| 135 | |||
| 136 | ; Where the GRTABLK.ARF is defined as: | ||
| 137 | ; GRTABHAN+ (must be first in this list) | ||
| 138 | ; GRTABUS+ (these languages must be linked in this order) | ||
| 139 | ; GRTABML+ (Multi-Lingual) | ||
| 140 | ; GRTABPO+ (Portuguese) | ||
| 141 | ; GRTABCF+ (Canadian French) | ||
| 142 | ; GRTABNO+ (Nordic) | ||
| 143 | ; GRTABSM+ (contains COPYRIGHT, SYSDISPMSG, SYSLOADMSG code) | ||
| 144 | ; GRTABPAR+ (contains PARSE control blocks, code to call SYSPARSE) | ||
| 145 | ; GRTABP+ (contains SYSPARSE to decode COMMAND line parms) | ||
| 146 | ; GRTAB (MAIN ROUTINE) | ||
| 147 | ; GRAFTABL; | ||
| 148 | |||
| 149 | ; These modules must be linked in this order. The load module is | ||
| 150 | ; a COM file, to be converted to COM with EXE2BIN. | ||
| 151 | |||
| 152 | ; REVISION HISTORY: | ||
| 153 | ; A000 Version 4.00: add PARSER, System Message Handler, | ||
| 154 | ; A001 PTM 382 display "ACTIVE" OR "PREVIOUS" CP. | ||
| 155 | ; A002 PTM 474 Avoid duplicate switches | ||
| 156 | ; A003 PTM 538 Display parm in error | ||
| 157 | ; A004 PTM1821 INCLUDE COPYRIGH.INC moved to msg_service macro. | ||
| 158 | ; A005 PTM3262 specify BASESW EQU 1 before PARSE.ASM | ||
| 159 | ; A006 PTM3512 PATHGEN START/END LABELS | ||
| 160 | ; A007 PTM3621 break up large help msg into smaller messages | ||
| 161 | ; A008 PTM3899 Free Environment, close all STDxxx handles | ||
| 162 | ; when leaving a resident portion | ||
| 163 | ; | ||
| 164 | ; COPYRIGHT: The following notice is found in the OBJ code generated from | ||
| 165 | ; the "GRTABSM.ASM" module: | ||
| 166 | |||
| 167 | ; "Version 4.00 (C) Copyright Microsoft Corp 1981, 1988" | ||
| 168 | ; "Licensed Material - Program Property of Microsoft" | ||
| 169 | |||
| 170 | ;****************** END OF SPECIFICATIONS ***************************** | ||
| 171 | HEADER <MACRO DEFINITIONS, LOCAL EQUATES> | ||
| 172 | INCLUDE PATHMAC.INC ;AN006; | ||
| 173 | ; $SALUT (0,36,41,52) | ||
| 174 | DOSCALL MACRO FN,SF ;; ;AN000; | ||
| 175 | IFNB <FN> ;;ARE THERE ANY PARMS AT ALL?;AN000; | ||
| 176 | IFNB <SF> ;; ;AN000; | ||
| 177 | MOV AX,(FN SHL 8)+SF ;;AH=FN;AH=SF ;AN000; | ||
| 178 | ELSE ;;SINCE THERE IS NO SUB FUNC ;AN000; | ||
| 179 | MOV AH,FN ;; ;AN000; | ||
| 180 | ENDIF ;; ;AN000; | ||
| 181 | ENDIF ;; ;AN000; | ||
| 182 | INT 21H ;; ;AN000; | ||
| 183 | ENDM ;; ;AN000; | ||
| 184 | ; = = = = = = = = = = = = | ||
| 185 | ; $SALUT (4,19,23,36) | ||
| 186 | FIXLIST MACRO LP,DOIT ;; ;AN000; | ||
| 187 | IF LP ;; ;AN000; | ||
| 188 | DOIT ;; ;AN000; | ||
| 189 | ENDIF ;; ;AN000; | ||
| 190 | ENDM ;; ;AN000; | ||
| 191 | ; = = = = = = = = = = = = | ||
| 192 | HEADER MACRO TEXT ;; ;AN000; | ||
| 193 | FIXLIST LISTPARM,.XLIST ;; ;AN000; | ||
| 194 | SUBTTL TEXT ;; ;AN000; | ||
| 195 | FIXLIST LISTPARM,.LIST ;; ;AN000; | ||
| 196 | PAGE ;; ;AN000; | ||
| 197 | ENDM ;; ;AN000; | ||
| 198 | ; = = = = = = = = = = = = | ||
| 199 | ; DEFINITION OF FUNCTIONS TO BE REQUESTED OF INT 2FH | ||
| 200 | GET_INST_STATE EQU 0 ;FUNCTION = "GET INSTALLED STATE" | ||
| 201 | WHERE_R_U EQU 1 ;FUNCTION = "WHERE ARE YOU?" | ||
| 202 | ; REQUESTS VECTOR OF LOADED TABLE BE | ||
| 203 | ; PUT IN VECTOR POINTED TO BY DS:[BX] | ||
| 204 | |||
| 205 | ; DOS FUNCTIONS: | ||
| 206 | SHOW_MSG EQU 09H ;"SEND MESSAGE TO CONSOLE" DOS FUNCTION | ||
| 207 | SET_VECT EQU 25H ;"SET VECTOR" DOS FUNCTION | ||
| 208 | GET_VERSION EQU 30H ;"GET DOS VERSION" | ||
| 209 | RET_RES EQU 31H ;"RETURN TO DOS" REMAIN RESIDENT | ||
| 210 | GET_VECT EQU 35H ;"GET VECTOR" DOS FUNCTION | ||
| 211 | CLOSE EQU 3EH ;AN008; CLOSE A FILE HANDLE | ||
| 212 | FREE_AL_MEM EQU 49H ;AN008; FREE ALLOCATED MEM | ||
| 213 | RET_FN EQU 4CH ;"RETURN TO DOS" NOT REMAIN RESIDENT | ||
| 214 | |||
| 215 | ; VECTOR TABLE ENTRIES USED | ||
| 216 | VEC_GRAF_CHAR EQU 1FH ;VECTOR THAT POINTS TO GRAPHIC CHAR TABLE | ||
| 217 | VEC_MULTIPLX EQU 2FH ;VECTOR OF MULTIPLEX HANDLER | ||
| 218 | VEC_DOS EQU 21H ;VECTOR POINTS TO DOS FUNCTIONS | ||
| 219 | VEC_RET EQU 20H ;RETURN TO DOS, WITHOUT RET CODE ;AN000; | ||
| 220 | |||
| 221 | ; DOS COMMAND LINE PARAMETERS | ||
| 222 | RETCODE_QUESTION EQU -1 ;VALUE IN BX, IF PARM=? | ||
| 223 | ZERO EQU 0 ;VALUE IN BX IF PARM=/STATUS OR /STA | ||
| 224 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 225 | ;SLASH EQU "/" ;REQUEST FOR STATUS | ||
| 226 | ;PARM? EQU "?" ;REQUEST FOR HELP | ||
| 227 | ; THE PARM THAT ASKS FOR A PARTICULAR LANGUAGE | ||
| 228 | ; IS THE TWO CHAR PAIR, DEFINED AS "LANID" | ||
| 229 | ; IN THE STRUC, "LANGUAGE" | ||
| 230 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 231 | |||
| 232 | ; STANDARD FILE HANDLES | ||
| 233 | STDIN EQU 0 ;AN008; STANDARD INPUT DEVICE | ||
| 234 | STDOUT EQU 1 ;STANDARD OUTPUT DEVICE | ||
| 235 | STDERR EQU 2 ;STANDARD ERROR OUTPUT DEVICE | ||
| 236 | STDAUX EQU 3 ;AN008; STANDARD AUX DEVICE | ||
| 237 | STDPRN EQU 4 ;AN008; STANDARD PRINTER DEVICE | ||
| 238 | |||
| 239 | ; OTHER EQUATES | ||
| 240 | BLANK EQU " " ;BLANK CHARACTER | ||
| 241 | NIBBLE_SIZE EQU 4 ;SHIFT COUNT TO MOVE ONE NIBBLE ;AN000; | ||
| 242 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 243 | ;CASEBIT EQU 0FFH-20H ;TURN OFF THIS BIT TO MAKE UPPER CASE | ||
| 244 | ;LOWERA EQU 'a' ;LOWER CASE CHARACTER 'a' | ||
| 245 | ;LOWERZ EQU "z" ;LOWER CASE CHARACTER 'z' | ||
| 246 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 247 | |||
| 248 | EXTRN HANDLER_SIZE:ABS ;THE BYTE SIZE REQUIREMENTS | ||
| 249 | EXTRN CPID_L:ABS ;NO. BYTES IN EACH CPID ENTRY | ||
| 250 | |||
| 251 | VECTOR STRUC ;DEFINITION OF ANY DOUBLE WORD VECTOR POINTER | ||
| 252 | VECOFF DW ? ;OFFSET PORTION OF VECTOR POINTER | ||
| 253 | VECSEG DW ? ;SEGMENT PORTION OF VECTOR POINTER | ||
| 254 | VECTOR ENDS | ||
| 255 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 256 | LANGUAGE STRUC ;DEFINITION OF EACH LANGUAGE TABLE | ||
| 257 | LANCHAR DB 1024 DUP(?) ;8 BYTES PER EACH OF 128 CHARACTERS | ||
| 258 | LANID DW ? ;TWO BYTE CODEPAGE ID, TO MATCH | ||
| 259 | ; GRAFTABL CMD LINE PARM | ||
| 260 | LANNAME DB 14 DUP(?) ;ASCIIZ STRING NAME OF LANGUAGE | ||
| 261 | LANGUAGE ENDS | ||
| 262 | |||
| 263 | TABSIZE EQU SIZE LANCHAR + SIZE LANID + SIZE LANNAME ;SIZE OF | ||
| 264 | ; EACH GRAPHIC CHAR TABLE + ID + NAME | ||
| 265 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 266 | ; VALUES FOR THE MSG_DESC CONTROL BLOCK | ||
| 267 | ONE_SUBS EQU 1 ;ONE VARIABLE FIELD IN MESSAGE ;AN000; | ||
| 268 | TWO_SUBS EQU 2 ;TWO VARIABLE FIELDS IN MESSAGE ;AN000; | ||
| 269 | CLASS_1 EQU 0100H ;CLASS 1 (DOS EXTENDED ERRORS) ;AN000; | ||
| 270 | CLASS_2 EQU 0200H ;CLASS 2 (PARSE ERRORS) ;AN000; | ||
| 271 | CLASS_A EQU 0A00H ;CLASS A TYPE MESSAGE ;AN000; | ||
| 272 | |||
| 273 | ;THIS MESSAGE DESCRIPTOR CONTROL BLOCK IS GENERATED, ONE PER MESSAGE, | ||
| 274 | ;TO DEFINE THE SEVERAL PARAMETERS THAT ARE EXPECTED TO BE PASSED IN | ||
| 275 | ;CERTAIN REGISTERS WHEN THE SYSDISPMSG FUNCTION IS TO BE INVOKED. | ||
| 276 | |||
| 277 | MSG_DESC STRUC ; ;AN000; | ||
| 278 | MSG_NUM DW 0 ;MESSAGE NUMBER (TO AX) ;AN000; | ||
| 279 | MSG_HANDLE DW STDOUT ;HANDLE OF OUTPUT DEVICE (TO BX) ;AN000; | ||
| 280 | MSG_SUBLIST DW 0 ;POINTER TO SUBLIST (TO SI) ;AN000; | ||
| 281 | MSG_COUNT DW 0 ;SUBSTITUTION COUNT (TO CX) ;AN000; | ||
| 282 | MSG_CLASS DW CLASS_A ;MESSAGE CLASS (IN HIGH BYTE, TO DH) ;AN000; | ||
| 283 | ; LOW BYTE HAS 0 (FUNCTION "NO INPUT", TO DL) | ||
| 284 | MSG_DESC ENDS ; ;AN000; | ||
| 285 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 286 | SUBLIST STRUC ; ;AN000; | ||
| 287 | SUB_SIZE DB TYPE SUBLIST ;SUBLIST SIZE (POINTER TO NEXT SUBLIST) ;AN000; | ||
| 288 | SUB_RES DB 0 ;RESERVED ;AN000; | ||
| 289 | ;NEXT FIELD IS TO BE USED AS A DOUBLE WORD | ||
| 290 | SUB_VALUE DW 0 ;TIME, DATE, OR PTR TO DATA ITEM ;AN000; | ||
| 291 | SUB_VALUE_SEG DW 0 ;SEG ID OF PTR ;AN000; | ||
| 292 | ;(ABOVE FIELD MUST BE FILLED AT EXECUTION TIME | ||
| 293 | ; IF THIS IS A .COM FILE) | ||
| 294 | SUB_ID DB 0 ;N OF %N ;AN000; | ||
| 295 | SUB_FLAGS DB 0 ;DATA TYPE FLAGS ;AN000; | ||
| 296 | SUB_MAX_WIDTH DB 0 ;MAXIMUM FIELD WIDTH (0=UNLIMITED) ;AN000; | ||
| 297 | SUB_MIN_WIDTH DB 0 ;MINIMUM FIELD WIDTH ;AN000; | ||
| 298 | SUB_PAD_CHAR DB " " ;CHARACTER FOR PAD FIELD ;AN000; | ||
| 299 | SUBLIST ENDS ; ;AN000; | ||
| 300 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 301 | DEFPSP STRUC | ||
| 302 | DB 2CH DUP(?) ;AN008; | ||
| 303 | ENVIRON_SEG DW ? ;AN008; SEG ID OF ENVIRONMENT | ||
| 304 | DB 32H DUP(?) ;AN008; SET WHERE | ||
| 305 | MOV_DEST DB 20H DUP(?) ; INT HANDLER IS TO BE MOVED TO | ||
| 306 | ;AT MOV_DEST+HANDLER_SIZE WILL GO THE | ||
| 307 | ; TABLE ITSELF | ||
| 308 | PARMCNT DB ? ;COUNT OF CHARS IN DOS COMMAND LINE PARM LIST | ||
| 309 | PARMDOS DB 127 DUP(?) ;DOS COMMAND LINE PARM TEXT | ||
| 310 | DEFPSP ENDS | ||
| 311 | |||
| 312 | PSPSIZE EQU SIZE DEFPSP ;SIZE OF THE PSP ITSELF | ||
| 313 | SHIFT_SIZE EQU PSPSIZE - MOV_DEST ; HOW FAR HANDLER/TABLE MOVED | ||
| 314 | ;WHEN THEY BECAME RESIDENT | ||
| 315 | SHIFT_SIZE_SEG EQU SHIFT_SIZE SHR NIBBLE_SIZE ;DIVIDE BY 16 ;AN000; | ||
| 316 | ; TO CONVERT BYTES TO SEGS | ||
| 317 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 318 | .LIST | ||
| 319 | HEADER <EXTERNALS AND WORKAREA> | ||
| 320 | ; $SALUT (4,6,12,28) | ||
| 321 | |||
| 322 | CSEG SEGMENT WORD PUBLIC | ||
| 323 | ASSUME CS:CSEG ;AS A .COM FILE, THE DOS | ||
| 324 | ASSUME DS:CSEG ; LOADER HAS ALREADY | ||
| 325 | ASSUME ES:CSEG ; INITIALIZED ALL THESE | ||
| 326 | ASSUME SS:CSEG ; SEGMENT REGISTERS | ||
| 327 | |||
| 328 | GRTAB_BASE EQU $ ;FOR EASE IN DEBUGGING ;AN000; | ||
| 329 | PUBLIC GRTAB_BASE ; TELL LINK MAP WHERE THIS IS ;AN000; | ||
| 330 | |||
| 331 | EXTRN END_PSP:BYTE ;MOVE RESIDENT CODE FROM HERE TO "MOV_DEST" | ||
| 332 | EXTRN MPEXNUM:BYTE ;MULTIPLEXOR ID VALUE | ||
| 333 | EXTRN HANDLER:NEAR ;ENTRY TO INT2FH HANDLER | ||
| 334 | EXTRN PREV_OWN:DWORD ;VECTOR TO SAVE PREVIOUS INT2FH OWNER | ||
| 335 | EXTRN PATCH_OFF:WORD ;THESE TWO PATCH LOCATION IN GRTABHAN.SAL | ||
| 336 | EXTRN PATCH_SEG:WORD ; ARE TO RECEIVE LOCATION WHERE TABLE IS MOVED TO | ||
| 337 | EXTRN TABLEUS:BYTE ;START OF THE USA CHAR TABLE | ||
| 338 | EXTRN COPYRIGHT:BYTE ;USED TO MARK THE END OF THE ARRAY OF CHAR TABLES | ||
| 339 | ; THE COPYRIGHT TEXT IS ITSELF UN-REFERENCED | ||
| 340 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 341 | ; EXTRN MSG1:WORD ;NON-STD VER OF GRAPHIC CHAR SET TABLE IS ALREADY LOADED | ||
| 342 | ; EXTRN MSG2:WORD ;XXX VER OF GRAPHIC CHAR SET TABLE IS ALREADY LOADED | ||
| 343 | ; EXTRN MSG3:WORD ;XXX VER OF GRAPHIC CHAR SET HAS JUST BEEN LOADED | ||
| 344 | ; EXTRN MSG4:WORD ;INCORRECT PARAMETER | ||
| 345 | ; EXTRN MSG5:WORD ;NO VER OF GRAPHIC CHAR SET TABLE IS ALREADY LOADED | ||
| 346 | ; EXTRN MSG6:WORD ;INCORRECT DOS VERSION | ||
| 347 | ; EXTRN MSG7:WORD ;DOS COMMAND LINE PARAMETERS SUPPORTED: | ||
| 348 | ; EXTRN MSG8:WORD ;ID - LANGUAGE NAME | ||
| 349 | ; EXTRN LANGUAGE_NAME:BYTE ;14 BYTE AREA TO RECEIVE ASCIIZ OF LANGUAGE NAME | ||
| 350 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 351 | EXTRN MSGNUM_EXTERR:WORD ;ALL DOS EXTENDED ERRORS ;AN000; | ||
| 352 | EXTRN MSGNUM_PARSE:WORD ;ALL PARSING ERRORS ;AN000; | ||
| 353 | EXTRN SUBLIST_PARSE:WORD ;DEFINES THE BAD PARM AS %0 ;AN003; | ||
| 354 | EXTRN MSGNUM_VER:WORD ;"Incorrect DOS Version" ;AN000; | ||
| 355 | EXTRN MSGNUM_ACTIVE:WORD ;"Active Code Page: %1" ;AN000; | ||
| 356 | EXTRN MSGNUM_PREVIOUS:WORD ;"Previous Code Page: %1" ;AN000; | ||
| 357 | EXTRN CPID:BYTE ;4 BYTE STRING OF CODE PAGE ID ;AN000; | ||
| 358 | EXTRN SLIST_23:WORD ;SET VECTOR TO POINT TO "NONE" OR "NON-STANDARD", ;AN000; | ||
| 359 | ; OR TO ONE OF THE "CPID" ENTRIES | ||
| 360 | EXTRN MSGNUM_NONE:WORD ;"None" ;AN000; | ||
| 361 | EXTRN MSGNUM_NSTD:WORD ;"Non-Standard" ;AN000; | ||
| 362 | EXTRN MSGNUM_HELP_TITLE:WORD ;"DOS command line parameters supported:" ;AN000; | ||
| 363 | EXTRN MSGNUM_HELP_TITLE7:WORD ;AN007; | ||
| 364 | EXTRN MSGNUM_HELP_TITLE8:WORD ;AN007; | ||
| 365 | EXTRN MSGNUM_HELP_TITLE9:WORD ;AN007; | ||
| 366 | EXTRN MSGNUM_HELP_TITLE10:WORD ;AN007; | ||
| 367 | EXTRN SYSDISPMSG:NEAR ;DISPLAY MESSAGE SUBROUTINE ;AN000; | ||
| 368 | EXTRN SYSLOADMSG:NEAR ;LOAD MESSAGE SUBROUTINE ;AN000; | ||
| 369 | EXTRN SYSGETMSG:NEAR ;GET MESSAGE SUBROUTINE ;AN000; | ||
| 370 | EXTRN PARSER:NEAR ;INVOKES SYSTEM DOS COMMAND LINE PARSER ;AN000; | ||
| 371 | ; $SALUT (4,17,22,32) | ||
| 372 | WHERE DD 0 ;VECTOR POINTING TO PREVIOUS GRAFTABL TABLE | ||
| 373 | ; VECTOR AS SET BY "GRTABHAN" MULTIPLEX HANDLER. | ||
| 374 | ;THIS IS NOT NECESSARILY WHAT INT 1FH HAS. | ||
| 375 | ADPSP DW 0 ;SEG ID OF PSP. | ||
| 376 | ; CHANGED TO SHOW ITS SHIFTED LOCATION | ||
| 377 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 378 | ;ACC DW 0 ;ACCUMULATES VALUE OF CODEPAGE ID | ||
| 379 | ;TEN DW 10 ;CONSTANT TO CONVERT ASCII DECIMAL TO BINARY | ||
| 380 | ;TOKEN DB " " ;RECEIVES THE TEXT OF DOS PARMS, AND OVERFLOW AREA | ||
| 381 | ;TOKEN_SIZE EQU $-TOKEN | ||
| 382 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 383 | RESSIZE_PARA DW 0 ;SIZE OF RESIDENT PORTION, HANDLER+TABLE, IN PARAGRAPHS | ||
| 384 | RESSIZE_BYTE DW 0 ;SIZE OF RESIDENT PORTION, HANDLER+TABLE, IN BYTES | ||
| 385 | SAVESI DW 0 ;REMEMBER WHERE CURRENT TABLE STARTS | ||
| 386 | CPIDPOINTER DW CPID ;POINTER TO ENTRY IN CPID TABLE OF PREVIOUS ENTRY | ||
| 387 | ACTIVECPID DW CPID ;POINTER TO ENTRY IN CPID TABLE OF ACTIVE ENTRY | ||
| 388 | PUBLIC ACTIVECPID | ||
| 389 | IDXXX DW 0 ;ID OF PREVIOUSLY LOADED TABLE | ||
| 390 | INSTALLED DB 0 ;OUTPUT OF INT 2FH, "FF"=GRAFTABL ALREADY INSTALLED | ||
| 391 | ; AND 'WHERE' WILL POINT TO PREVIOUS TABLE | ||
| 392 | ;"00"=GRAFTABL NOT INSTALLED | ||
| 393 | |||
| 394 | ; DEFINITIONS OF VALUES OF CONTENTS OF "INSTALLED". | ||
| 395 | LOADED EQU 0FFH ;GRAFTABLE IS ALREADY IN VECTOR | ||
| 396 | |||
| 397 | |||
| 398 | ; DEFINITIONS OF VALUES OF CONTENTS OF 'EXITFL'. | ||
| 399 | ; THESE VALUES ARE THE RETURN CODES CHECKED BY ERRORLEVEL. | ||
| 400 | EXVER EQU 4 ;RETURN TO DOS, INVALID DOS VERSION | ||
| 401 | EXPAR EQU 3 ;RETURN TO DOS, INVALID DOS COMMAND LINE PARMS | ||
| 402 | ; OR SYSTEM MESSAGE HANDLER ERROR | ||
| 403 | EXNONE EQU 2 ;RETURN TO DOS, NO TABLE WAS LOADED | ||
| 404 | EXDOS EQU 1 ;RETURN TO DOS, CHAR TABLE PREVIOUSLY LOADED | ||
| 405 | EXRES EQU 0 ;RETURN TO DOS, LEAVING THE 1K BLOCK OF CHAR RESIDENT | ||
| 406 | |||
| 407 | EXITFL DB EXDOS ;ERRORLEVEL RETURN CODE, INITIALLY SET TO "EXDOS" | ||
| 408 | PUBLIC EXITFL | ||
| 409 | BAD1F DB 0 ;FLAG, GET SET TO "RESET" IF GRAFTABL FONT IS | ||
| 410 | RESET EQU 1 ; LOADED, BUT 1FH DOES NOT POINT TO IT | ||
| 411 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 412 | PATHLABL GRTAB ;AN006; | ||
| 413 | ; $SALUT (3,4,9,32) | ||
| 414 | HEADER <EXECUTABLE CODE, INITIALIZATION> | ||
| 415 | MAIN PROC NEAR | ||
| 416 | ENTRY_POINT LABEL NEAR ;JUMPED TO FROM ENTRY POINT IN GRTABHAN | ||
| 417 | PUBLIC ENTRY_POINT | ||
| 418 | ;VERSION CHECKING AND SYSTEM MESSAGE INITIALIZATION | ||
| 419 | |||
| 420 | CALL SYSLOADMSG ; INIT SYSMSG HANDLER ;AN000; | ||
| 421 | |||
| 422 | ; $IF C ; IF THERE WAS A PROBLEM ;AN000; | ||
| 423 | JNC $$IF1 | ||
| 424 | CALL SYSDISPMSG ; LET HIM SAY WHY HE HAD A PROBLEM ;AN000; | ||
| 425 | |||
| 426 | MOV EXITFL,EXVER ; TELL ERRORLEVEL BAD DOS VERSION ;AN000; | ||
| 427 | MOV AH,RET_FN ;RETURN TO DOS, DO NOT STAY RESIDENT ;AN000; | ||
| 428 | ; $ELSE ; SINCE SYSDISPMSG IS HAPPY ;AN000; | ||
| 429 | JMP SHORT $$EN1 | ||
| 430 | $$IF1: | ||
| 431 | CLD ;CLEAR DIRECTION TO AUTO-INCREMENT ;AN000; | ||
| 432 | CALL MAIN_GRTAB ;PERFORM REST OF GRAFTABL FUNCTIONS ;AN000; | ||
| 433 | ;AH=DOS FUNCTION OF TYPE OF RETURN TO DOS | ||
| 434 | ; $ENDIF ;LOAD OF SYS MSGS OK? ;AN000; | ||
| 435 | $$EN1: | ||
| 436 | MOV AL,EXITFL ;PASS BACK ERRORLEVEL RET CODE | ||
| 437 | INT VEC_DOS ;(21H) RETURN TO DOS WITH RET CODE | ||
| 438 | |||
| 439 | INT VEC_RET ;(20H) IF ABOVE NOT WORK, EXIT ANYWAY ;AN000; | ||
| 440 | MAIN ENDP | ||
| 441 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 442 | HEADER <MAIN_GRTAB - PERFORM FUNCTIONS INDICATED BY PARMS> | ||
| 443 | MAIN_GRTAB PROC NEAR | ||
| 444 | PUBLIC MAIN_GRTAB | ||
| 445 | ;INPUT: SYSTEM MESSAGE HANDLER IS LOADED, DOS VERSION IS CORRECT. | ||
| 446 | ;OUTPUT: AH=FUNCTION NUMBER FOR PROPER TYPE OF RETURN TO DOS. | ||
| 447 | |||
| 448 | MOV SLIST_23.SUB_VALUE_SEG,CS ;DO MY OWN SEGMENT FIXUPS ;AN000; | ||
| 449 | MOV SUBLIST_PARSE.SUB_VALUE_SEG,CS ; ;AN003; | ||
| 450 | |||
| 451 | MOV ADPSP,ES ;SAVE SEG ID OF PSP | ||
| 452 | SUB ADPSP,SHIFT_SIZE_SEG ;WHERE THE SEG BASE OF MOVED INT HANDLER WILL BE | ||
| 453 | PUSH ES ;SAVE PSP SEGID | ||
| 454 | |||
| 455 | MOV AX,HANDLER_SIZE ;GET SIZE OF MULTIPLEX HANDLER (NOT PSP) ;AN000; | ||
| 456 | ADD AX,TABSIZE ;ADD THE SIZE OF THE CHAR TABLE | ||
| 457 | MOV RESSIZE_BYTE,AX ;SAVE BYTE LENGTH OF HANDLER + CHAR TABLE | ||
| 458 | ; THIS IS THE AMOUNT TO BE SHIFTED | ||
| 459 | ADD AX,OFFSET MOV_DEST ;ADD ON PART OF PSP NOT OVERLAID BY CODE MOVE ;AN000; | ||
| 460 | MOV CL,NIBBLE_SIZE ;DIVIDE ;AN000; | ||
| 461 | SHR AX,CL ; BYTE SIZE BY 16 | ||
| 462 | MOV RESSIZE_PARA,AX ;SAVE PARA LENGTH OF HANDLER + CHAR TABLE | ||
| 463 | ; AND FIRST PART OF PSP | ||
| 464 | ;THIS IS THE AMOUNT TO STAY RESIDENT | ||
| 465 | |||
| 466 | ;PATCH INT2FH HANDLER IN CASE LATER | ||
| 467 | ; IT BECOMES RESIDENT AND IS ASKED | ||
| 468 | ; TO TELL WHERE ITS CHAR TABLE WENT | ||
| 469 | MOV AX,ADPSP ;TELL INT2FH HANDLER WHERE TO SAY HIS TABLE IS | ||
| 470 | MOV PATCH_SEG,AX | ||
| 471 | MOV PATCH_OFF,OFFSET TABLEUS ;TELL INT2FH HANDLER | ||
| 472 | ; WHERE TO SAY HIS TABLE IS | ||
| 473 | MOV AH,GET_VECT ;REQUEST "GET VECTOR" FUNCTION | ||
| 474 | MOV AL,VEC_MULTIPLX ; FOR INTERRUPT 2FH | ||
| 475 | INT VEC_DOS ;OUTPUT: ES:BX = VECTOR OF CONTENTS | ||
| 476 | |||
| 477 | ASSUME ES:NOTHING ;SINCE ORIG PSP POINTER IS LOST | ||
| 478 | ;PATCH INT2FH HANDLER TO TELL HIM WHERE | ||
| 479 | ; THE CURRENT INT2FH HANDLER IS IN CASE | ||
| 480 | ; THIS NEW HANDLER REPLACES THE OLD ONE | ||
| 481 | MOV PREV_OWN.VECOFF,BX ;REMEMBER WHERE THE PREVIOUS | ||
| 482 | MOV PREV_OWN.VECSEG,ES ; OWNER OF INT 2FH WAS | ||
| 483 | |||
| 484 | POP ES ;RESTORE THE PSP SEGID BAS ;AN000; | ||
| 485 | ASSUME ES:CSEG ;REG IS RESET BACK LIKE IT WAS | ||
| 486 | CALL FINDTYPE ;SET 'IDXXX' TO SHOW | ||
| 487 | ; WHAT IS IN THE LOW RAM TABLE NOW | ||
| 488 | |||
| 489 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 490 | ; CALL PROCESS ;RESPOND TO REQUEST DEFINED BY PARMS | ||
| 491 | ; ; SETTING 'EXITFL' TO INDICATE RESULTS | ||
| 492 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 493 | CALL PARSER ;LOOK AT DOS COMMAND LINE PARMS ;AN000; | ||
| 494 | |||
| 495 | ;IF A CODEPAGE NUMBER WAS SPECIFIED | ||
| 496 | ; BX = OFFSET TO LANGUAGE TABLE TO BE LOADED | ||
| 497 | ; DX = INTEGER VALUE OF CODEPAGE SPECIFIED | ||
| 498 | ;IF /STATUS WAS SPECIFIED | ||
| 499 | ; BX = 0 | ||
| 500 | ;IF QUESTION MARK WAS SPECIFIED | ||
| 501 | ; BX=-1 | ||
| 502 | |||
| 503 | CALL DOFUNCTION ; RESPOND TO PARMS ;AN000; | ||
| 504 | ; SETTING 'EXITFL' TO INDICATE RESULTS | ||
| 505 | |||
| 506 | |||
| 507 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 508 | ; $ELSE ;SINCE THE DOS VERSION IS NOT ACCEPTABLE, | ||
| 509 | ; THE LOCATION, "MSG6", CONTAINS OFFSET TO TEXT OF | ||
| 510 | ; MOV DX,MSG6 ;"INCORRECT DOS VERSION" (THIS MSG ENDS WITH "$") | ||
| 511 | ; ;GET POINTER TO MESSAGE TEXT TO DS:DX | ||
| 512 | ; MOV AH,SHOW_MSG ;'WRITE TO CONSOLE' DOS FUNCTION | ||
| 513 | ; INT VEC_DOS | ||
| 514 | ; | ||
| 515 | ; MOV EXITFL,EXVER ;SET ERROR CODE TO ERROR TERMINATION, BAD VERSION | ||
| 516 | ; $ENDIF ;CHECK DOS VERSION NUMBER | ||
| 517 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 518 | |||
| 519 | CMP EXITFL,EXRES ;CHECK THE EXIT TYPE FLAG | ||
| 520 | ; $IF E ;IF NEW TABLE HAS JUST BEEN LOADED | ||
| 521 | JNE $$IF4 | ||
| 522 | ;THE INT2FH HANDLER AND THE CHAR TABLE HAVE ALREADY BEEN MOVED INTO THE PSP. | ||
| 523 | ;CHANGE THE TWO VECTORS TO POINT TO WHERE THEN WENT. | ||
| 524 | ;THE TWO VECTORS ARE: | ||
| 525 | ; 2FH - MULTIPLEX INTERRUPT HANDLER | ||
| 526 | ; 1FH - 128 CHAR DEFINITION TABLE | ||
| 527 | |||
| 528 | PUSH DS | ||
| 529 | |||
| 530 | MOV AX,ADPSP | ||
| 531 | MOV DS,AX ;FIND SEG WHERE TABLE WENT | ||
| 532 | ASSUME DS:NOTHING | ||
| 533 | |||
| 534 | ;SET INTERRUPT VECTOR 1FH TO POINT TO WHERE THE CHAR TABLE IS | ||
| 535 | LEA DX,TABLEUS ;WHERE CHAR TABLE IS | ||
| 536 | ; DS:DX = VECTOR POINTING TO CHAR TABLE AFTER MOVE | ||
| 537 | MOV AH,SET_VECT ;FUNCTION TO MOVE DS:DX INTO VECTOR FOR INT 1FH | ||
| 538 | MOV AL,VEC_GRAF_CHAR ;INTERRUPT NUMBER TO RECEIVE NEW CONTENTS | ||
| 539 | INT VEC_DOS ;CHANGE THE VECTOR | ||
| 540 | |||
| 541 | ;SET INTERRUPT VECTOR 2FH (MULTIPLEXOR) TO WHERE THE INTERRUPT HANDLER IS | ||
| 542 | LEA DX,HANDLER ;SET DS:DX = INT 2FH INTERRUPT HANDLER | ||
| 543 | MOV AH,SET_VECT ;FUNCTION TO MOVE DS:DX INTO VECTOR FOR INT 2FH | ||
| 544 | MOV AL,VEC_MULTIPLX ;CHANGE THE CONTENTS OF THE MULTIPLEX INTERRUPT | ||
| 545 | INT VEC_DOS ;HOOK IN THE INTERRUPT HANDLER | ||
| 546 | |||
| 547 | POP DS ;RESTORE SEG REG | ||
| 548 | ASSUME DS:CSEG | ||
| 549 | |||
| 550 | ;FREE THE SEGMENT CONTAINING THE ENVIRONMENT | ||
| 551 | PUSH ES ;AN008; SAVE NORMAL ES | ||
| 552 | MOV AX,DS:ENVIRON_SEG ;AN008; FROM PSP GET SEG OF ENVIRONMENT | ||
| 553 | MOV ES,AX ;AN008; SET SEGREG TO POINT TO ENVIRONMENT SEG | ||
| 554 | ASSUME ES:NOTHING ;AN008; ES NOW HAS SEG OF ENVIRONMENT | ||
| 555 | |||
| 556 | MOV AH,FREE_AL_MEM ;AN008; (49H) FREE MEM ALLOC TO ENVIRON | ||
| 557 | ;ES = SEGID OF BLOCK BEING RETURNED | ||
| 558 | INT VEC_DOS ;AN008; FREE ENVIRONMENT | ||
| 559 | ;IF CARRY IS SET, THERE WAS A PROBLEM | ||
| 560 | ;THIS IS NOT CHECKED, IGNORING ANY ERROR | ||
| 561 | |||
| 562 | POP ES ;AN008; RESTORE ES TO NORMAL VALUE | ||
| 563 | ASSUME ES:CSEG ;AN008; | ||
| 564 | |||
| 565 | ;LOOP THRU ALL THE STANDARD EXTERNALLY OPENED HANDLES, 0-4, | ||
| 566 | ; AND CLOSE EACH ONE BEFORE RETURNING TO DOS, STAYING RESIDENT. | ||
| 567 | MOV BX,STDIN ;AN008; START WITH FIRST STANDARD HANDLE | ||
| 568 | ; $DO COMPLEX | ||
| 569 | JMP SHORT $$SD5 | ||
| 570 | $$DO5: | ||
| 571 | INC BX ;AN008; SELECT NEXT HANDLE | ||
| 572 | ; $STRTDO | ||
| 573 | $$SD5: | ||
| 574 | MOV AH,CLOSE ;AN008; (3EH) CLOSE A FILE HANDLE | ||
| 575 | ; BX=FILE HANDLE | ||
| 576 | INT VEC_DOS ;AN008; CLOSE THE HANDLE | ||
| 577 | ;CARRY IS SET IF A PROBLEM WITH CLOSE | ||
| 578 | ;IN THIS CASE, ERRORS ARE IGNORED. | ||
| 579 | |||
| 580 | CMP BX,STDPRN ;AN008; WAS THIS THE LAST ONE? | ||
| 581 | ; $ENDDO E ;AN008; QUIT IF LAST ONE | ||
| 582 | JNE $$DO5 | ||
| 583 | |||
| 584 | ;SET UP TO LEAVE A PORTION OF GRAFTABL RESIDENT: | ||
| 585 | ; THE MULTIPLEXOR INTERRUPT HANDLER, AND | ||
| 586 | ; THE FIRST 1K PIXEL TABLE. | ||
| 587 | |||
| 588 | MOV DX,RESSIZE_PARA ;MARK END OF AREA TO REMAIN RESIDENT | ||
| 589 | MOV AH,RET_RES ;FUNCTION TO RETURN TO DOS, BUT STAY RESIDENT | ||
| 590 | ; $ELSE ;SINCE NEW TABLE NOT LOADED | ||
| 591 | JMP SHORT $$EN4 | ||
| 592 | $$IF4: | ||
| 593 | ; MAYBE BECAUSE TABLE ALREADY LOADED | ||
| 594 | ; OR MAYBE BECAUSE BAD DOS COMMAND LINE PARMS | ||
| 595 | MOV AH,RET_FN ;RETURN TO DOS, DO NOT STAY RESIDENT | ||
| 596 | ; $ENDIF | ||
| 597 | $$EN4: | ||
| 598 | RET ;RETURN TO CALLER | ||
| 599 | MAIN_GRTAB ENDP | ||
| 600 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 601 | HEADER <LOCAL SUBROUTINES, SCAN TO SEE WHO IS ALREADY LOADED> | ||
| 602 | FINDTYPE PROC NEAR | ||
| 603 | PUBLIC FINDTYPE | ||
| 604 | ;OUTPUT = IDXXX HAS 2 CHAR ID OF WHATEVER IS ALREADY LOADED | ||
| 605 | ; OR IS JUST 0 IF 1FH DOES NOT POINT TO A GRAFTABL DEFINED FONT. | ||
| 606 | ; SUBLIST_23 IS SET TO CONTAIN THE ORIGINAL CP PREVIOUSLY LOADED | ||
| 607 | ; OR "NONE". THIS SUBLIST IS USED BY BOTH MESSAGES 2 AND 3 | ||
| 608 | ; WHICH STATE THE "ACTIVE CODEPAGE" AND "PREVIOUS CODEPAGE". | ||
| 609 | ; THE MESSAGE ACTUALLY TO USE THIS SUBLIST IS SELECTED IN "DOFUNCTION" | ||
| 610 | ; AFTER INTERROGATING THE PARMS, SO THAT "/STATUS" & "?" WILL REFER TO | ||
| 611 | ; THE "ACTIVE CODEPAGE", AND OTHER REQUESTS WILL SAY "PREVIOUS CP". | ||
| 612 | |||
| 613 | ASSUME ES:NOTHING | ||
| 614 | MOV AH,MPEXNUM ;REQUEST "GET INSTALLED STATE" | ||
| 615 | MOV AL,GET_INST_STATE ;IDENTIFY THAT IT IS ME I AM LOOKING FOR | ||
| 616 | ;AH=MULTIPLEXOR NUMBER, AL=FUNCTION REQUEST | ||
| 617 | INT VEC_MULTIPLX ;SEE IF I AM ALREADY LOADED | ||
| 618 | |||
| 619 | MOV INSTALLED,AL ;SAVE THE "INSTALLED?" INDICATOR | ||
| 620 | CMP AL,LOADED | ||
| 621 | ; $IF E ;IF I AM ALREADY INSTALLED | ||
| 622 | JNE $$IF10 | ||
| 623 | ; GRAFTABL HAS BEEN LOADED. SEVERAL CONDITIONS MAY EXIST: | ||
| 624 | ; INT 1FH STILL POINTS TO THE TABLE GRAFTABL LOADED | ||
| 625 | ; AND THAT TABLE HAS NOT BEEN ALTERED. | ||
| 626 | ; INT 1FH STILL POINTS TO THE TABLE GRAFTABL LOADED | ||
| 627 | ; BUT THE CONTENTS OF THAT TABLE HAS BEEN ALTERED. | ||
| 628 | ; INT 1FH NO LONGER POINTS TO THE TABLE GRAFTABL LOADED, | ||
| 629 | ; BUT POINTS TO SOME OTHER CHARACTER TABLE. | ||
| 630 | |||
| 631 | ; NOW WE ASK THE MULTIPLEXOR HANDLER OF GRAFTABLE, SINCE WE | ||
| 632 | ; KNOW HE HAS BEEN LOADED, TO TELL US WHERE HIS GRAFTABL | ||
| 633 | ; CHARACTER FONT TABLE IS IN RESIDENT RAM, BY SETTING THE | ||
| 634 | ; DWORD AT "WHERE" TO POINT TO THE OLD GRAFTABL FONT TABLE. | ||
| 635 | |||
| 636 | ;AH STILL SHOULD HAVE "MY_MULTIPLEX_NUMBER" | ||
| 637 | MOV AL,WHERE_R_U ;ASK "WHERE ARE YOU" | ||
| 638 | LEA BX,WHERE ;PASS POINTER TO VECTOR TO RECEIVE ANSWER | ||
| 639 | ;AH=MULTIPLEXOR NUMBER, AL=FUNCTION REQUEST | ||
| 640 | ;DS:BX POINTS TO "WHERE", TO RECEIVE RESPONSE | ||
| 641 | INT VEC_MULTIPLX ;SET VECTOR "WHERE" TO POINT TO HIS TABLE | ||
| 642 | |||
| 643 | ; COMPARE THE CONTENTS OF VECTOR 1FH WITH THE VECTOR AT "WHERE" | ||
| 644 | ; WHICH POINTS TO THE CURRENTLY LOADED TABLE OF GRAFTABL. | ||
| 645 | ; THE USER MAY HAVE ALTERED THE CONTENTS OF VECTOR 1FH AFTER | ||
| 646 | ; HAVING PREVIOUSLY LOADED A GRAFTABL CHARACTER FONT. | ||
| 647 | XOR AX,AX ;ZERO A REG | ||
| 648 | MOV ES,AX ;LOOK AT THE VECTOR TABLE | ||
| 649 | ;ES IS STILL ASSUMED "NOTHING" | ||
| 650 | MOV AX,ES:[VEC_GRAF_CHAR * DWORD] ;AN000; | ||
| 651 | CMP AX,WHERE.VECOFF | ||
| 652 | ; $IF E,AND | ||
| 653 | JNE $$IF11 | ||
| 654 | MOV AX,ES:[VEC_GRAF_CHAR * 4]+2 ;AN000; | ||
| 655 | CMP AX,WHERE.VECSEG | ||
| 656 | ; $IF E ;IF THE 1FH VECTOR IS POINTING TO A GRAFTABLE | ||
| 657 | JNE $$IF11 | ||
| 658 | ; DEFINED CHARACTER TABLE. | ||
| 659 | ;NOW TO FIND OUT WHICH TABLE HE IS POINT TO. | ||
| 660 | LEA SI,TABLEUS ;GET WHERE NEW TABLE IS IN THIS LOAD MODULE | ||
| 661 | ; DS:SI POINT TO NEW TABLE | ||
| 662 | ; IN THIS SEARCH, WE ARE GOING TO STEP THRU THE ARRAY OF | ||
| 663 | ; TABLES WE HAVE DEFINED, COMPARING EACH ONE WITH WHATEVER "WHERE" | ||
| 664 | ; POINTS TO, TO SEE IF WHAT WAS PREVIOUSLY LOADED IS LIKE ONE | ||
| 665 | ; OF THE TABLES WE HAVE DEFINED HERE. A MATCH LETS US IDENTIFY | ||
| 666 | ; THE ONE PREVIOUSLY LOADED; A NON-MATCH MEANS THAT WHATEVER | ||
| 667 | ; THAT WAS PREVIOUSLY LOADED HAS APPARENTLY BEEN ALTERED, | ||
| 668 | ; SO WHATEVER IT WAS, WE CANNOT SAY WHICH TABLE IT IS, AND SO WE | ||
| 669 | ; IDENTIFY IT AS SIMPLY A NON-STANDARD TABLE. THIS SEARCH WILL | ||
| 670 | ; SELECT WHICH OF TWO MESSAGES TO BE DISPLAYED. | ||
| 671 | MOV SAVESI,SI ;SAVE WHERE TABLE STARTS | ||
| 672 | ; $SEARCH COMPLEX | ||
| 673 | JMP SHORT $$SS12 | ||
| 674 | $$DO12: | ||
| 675 | ADD CPIDPOINTER,CPID_L ;BUMP TO NEXT ENTRY IN CPID TABLE. ;AN000; | ||
| 676 | MOV SI,SAVESI ;GO BACK TO START OF TABLE ;AN000; | ||
| 677 | ADD SI,TABSIZE ;BUMP TO NEXT TABLE ;AN000; | ||
| 678 | MOV SAVESI,SI ;SAVE WHERE TABLE STARTS ;AN000; | ||
| 679 | ; $STRTSRCH | ||
| 680 | $$SS12: | ||
| 681 | ; THIS CHANGES ES TO PREVIOUSLY LOADED TABLE | ||
| 682 | |||
| 683 | LES DI,WHERE ;GET THE CONTENTS OF THE VECTOR | ||
| 684 | ;ES:DI POINTS TO THE OLD TABLE OF CHARACTERS | ||
| 685 | ;ES IS STILL ASSUMED "NOTHING" | ||
| 686 | MOV CX,TABSIZE ;GET SIZE OF TABLE | ||
| 687 | REP CMPSB ;COMPARE ES:[DI] WITH DS:[SI] | ||
| 688 | ; $EXITIF E ;IF THIS TABLE ALREADY LOADED | ||
| 689 | JNE $$IF12 | ||
| 690 | LES DI,WHERE ;RESTORE THE POINTERS TO RESIDENT TABLE | ||
| 691 | MOV AX,ES:[DI].LANID ;PICK UP 2 CHAR ID OF PREVIOUS TABLE | ||
| 692 | MOV IDXXX,AX ;REMEMBER WHAT THAT WAS PREVIOUSLY LOADED | ||
| 693 | |||
| 694 | PUSH DS ;SET UP THE ES REG TO ;AN000; | ||
| 695 | POP ES ; BE THE SAME AS DS, THE COMMON SEGMENT ;AN000; | ||
| 696 | ASSUME ES:CSEG ; ;AN000; | ||
| 697 | |||
| 698 | MOV AX,CPIDPOINTER ;GET OFFSET TO CURRENT CPID ENTRY ;AN000; | ||
| 699 | MOV SLIST_23.SUB_VALUE,AX ;PUT CP NAME IN MSG ;AN000; | ||
| 700 | ;SO MSG IS "PREVIOUS CODE PAGE: XXX" | ||
| 701 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 702 | ; LEA DI,LANGUAGE_NAME ;TO THE MESSAGES' VARIABLE NAME OF LANGUAGE FIELD | ||
| 703 | ; MOV SI,SAVESI ;FROM THE NAME OF THE LANGUAGE | ||
| 704 | ; ADD SI,OFFSET LANNAME ; IN THE NEW TABLE | ||
| 705 | ; MOV CX,SIZE LANNAME ;PASS NAME OF LANGUAGE | ||
| 706 | ; REP MOVSB ; TO THE MESSAGES | ||
| 707 | ; ; AND THEN TELL THE OPERATOR WHAT WAS FOUND | ||
| 708 | ; LEA AX,MSG2 ;XXX VER OF GRAPHIC CHAR SET TABLE IS ALREADY LOADED | ||
| 709 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 710 | ; $ORELSE ;SINCE THIS VERSION IS NOT ALREADY LOADED | ||
| 711 | JMP SHORT $$SR12 | ||
| 712 | $$IF12: | ||
| 713 | ASSUME ES:NOTHING ;SINCE BASE REG NOT RESET YET, | ||
| 714 | LEA AX,COPYRIGHT ;WHICH IS IMMEDIATELY FOLLOWING THE LAST TABLE | ||
| 715 | CMP AX,SI ;HAVE WE INCREMENTED THE INDEX TO BE BEYOND | ||
| 716 | ; THE LAST TABLE TO BE CHECKED | ||
| 717 | ; $ENDLOOP BE ;QUIT IF NO NEXT TABLE TO BE LOOKED AT | ||
| 718 | JNBE $$DO12 | ||
| 719 | PUSH DS ;SET UP THE ES REG TO ;AN000; | ||
| 720 | POP ES ; BE THE SAME AS DS, THE COMMON SEGMENT ;AN000; | ||
| 721 | ASSUME ES:CSEG ;TELL THE ASSEMBLER WHAT I JUST DID ;AN000; | ||
| 722 | |||
| 723 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 724 | ; LEA AX,MSG1 ;NON-STD VER OF GRAPHIC CHAR SET TABLE IS ALREADY LOADED | ||
| 725 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 726 | CALL PREV_NONSTD ;SET MSG TO SAY "NON STANDARD" ;AN000; | ||
| 727 | ; SO MSG IS "PREVIOUS CODE PAGE: NON-STANDARD" | ||
| 728 | ; $ENDSRCH | ||
| 729 | $$SR12: | ||
| 730 | ; $ELSE ;SINCE THE 1FH VECTOR DOES NOT POINT TO | ||
| 731 | JMP SHORT $$EN11 | ||
| 732 | $$IF11: | ||
| 733 | ; THE SAME PLACE AS "WHERE" | ||
| 734 | ; THEN THE USER MUST HAVE USED GRAFTABL TO | ||
| 735 | ; LOAD A CHAR FONT, THEN LOADED SOME OTHER | ||
| 736 | ; TABLE AND CHANGED VECTOR 1FH TO POINT TO THE NEW ONE. | ||
| 737 | PUSH DS ;SET UP THE ES REG TO ;AN000; | ||
| 738 | POP ES ; BE THE SAME AS DS, THE COMMON SEGMENT ;AN000; | ||
| 739 | ASSUME ES:CSEG ;TELL THE ASSEMBLER WHAT I JUST DID ;AN000; | ||
| 740 | |||
| 741 | CALL PREV_NONSTD ;SET MSG TO SAY "NON STANDARD" ;AN000; | ||
| 742 | |||
| 743 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 744 | ; LEA AX,MSG1 ;NON-STD VER OF GRAPHIC CHAR SET TABLE IS ALREADY LOADED | ||
| 745 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 746 | MOV BAD1F,RESET ;INDICATE THAT THE 1FH VECTOR DOES NOT POINT | ||
| 747 | ; TO THE GRAFTABL FONT | ||
| 748 | ; $ENDIF ;HAS 1Fh BEEN CHANGED? | ||
| 749 | $$EN11: | ||
| 750 | ; $ELSE ;SINCE GRAFTABLE IS NOT LOADED, | ||
| 751 | JMP SHORT $$EN10 | ||
| 752 | $$IF10: | ||
| 753 | PUSH DS ;SET UP THE ES REG TO ;AN000; | ||
| 754 | POP ES ; BE THE SAME AS DS, THE COMMON SEGMENT ;AN000; | ||
| 755 | ASSUME ES:CSEG ;TELL THE ASSEMBLER WHAT I JUST DID ;AN000; | ||
| 756 | |||
| 757 | CALL PREV_NONE ;SET MSG TO SAY "NONE" ;AN000; | ||
| 758 | |||
| 759 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 760 | ; LEA AX,MSG5 ;NO VER OF CHAR TABLE IS ALREADY LOADED | ||
| 761 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 762 | ; $ENDIF ;ALREADY INSTALLED? | ||
| 763 | $$EN10: | ||
| 764 | RET | ||
| 765 | FINDTYPE ENDP | ||
| 766 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 767 | HEADER <PREV_NONSTD - SET UP MESSAGE TO SAY 'NON-STANDARD'> ; ;AN000; | ||
| 768 | PREV_NONSTD PROC NEAR ; ;AN000; | ||
| 769 | PUBLIC PREV_NONSTD ; ;AN000; | ||
| 770 | ;SET UP SUBLIST FOR MSGS 2-3 TO HAVE THE VARIABLE TEXT: "NON-STANDARD". | ||
| 771 | ASSUME ES:CSEG ; ;AN000; | ||
| 772 | |||
| 773 | MOV AX,MSGNUM_NSTD.MSG_NUM ;PASS MESSAGE NUMBER OF "NON-STANDARD" ;AN000; | ||
| 774 | MOV DH,BYTE PTR MSGNUM_NSTD.MSG_CLASS+BYTE ;PASS MSG'S CLASS ;AN000; | ||
| 775 | CALL SYSGETMSG ;FIND WHERE THE TEXT OF "NON-STANDARD" IS ;AN000; | ||
| 776 | ;ES:SI=VECTOR TO MESSAGE TEXT | ||
| 777 | MOV SLIST_23.SUB_VALUE,SI ;PUT OFFSET INTO SUBLIST ;AN000; | ||
| 778 | RET ;RETURN TO CALLER ;AN000; | ||
| 779 | PREV_NONSTD ENDP ; ;AN000; | ||
| 780 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 781 | HEADER <PREV_NONE - SET UP MESSAGE TO SAY 'NONE'> ; ;AN000; | ||
| 782 | PREV_NONE PROC NEAR ; ;AN000; | ||
| 783 | PUBLIC PREV_NONE ; ;AN000; | ||
| 784 | ;SET UP SUBLIST FOR MSGS 2-3 TO HAVE THE VARIABLE TEXT: "NONE". | ||
| 785 | ASSUME ES:CSEG ; ;AN000; | ||
| 786 | |||
| 787 | MOV AX,MSGNUM_NONE.MSG_NUM ;PASS MESSAGE NUMBER OF "NONE" ;AN000; | ||
| 788 | MOV DH,BYTE PTR MSGNUM_NONE.MSG_CLASS+BYTE ;PASS MSG'S CLASS ;AN000; | ||
| 789 | CALL SYSGETMSG ;FIND WHERE THE TEXT OF "NONE" IS ;AN000; | ||
| 790 | ;ES:SI=VECTOR TO MESSAGE TEXT | ||
| 791 | MOV SLIST_23.SUB_VALUE,SI ;PUT OFFSET INTO SUBLIST ;AN000; | ||
| 792 | RET ;RETURN TO CALLER ;AN000; | ||
| 793 | PREV_NONE ENDP ; ;AN000; | ||
| 794 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 795 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 796 | ; HEADER <PARSE THE COMMAND LINE PARMS> | ||
| 797 | ;PROCESS PROC NEAR ;LOOK AT RESPONSE TO DOS COMMAND LINE PARMS | ||
| 798 | ; PUBLIC PROCESS | ||
| 799 | ;INPUT: DS, ES - PSP SEG ID | ||
| 800 | ;OUTPUT:EXITFL IS SET TO REFLECT EXISTING CONDITIONS | ||
| 801 | |||
| 802 | ; CALL PARSER ;LOOK AT DOS COMMAND LINE PARMS | ||
| 803 | ; | ||
| 804 | ; ;IF A CODEPAGE NUMBER WAS SPECIFIED | ||
| 805 | ; ; BX = OFFSET TO LANGUAGE TABLE TO BE LOADED | ||
| 806 | ; ; DX = INTEGER VALUE OF CODEPAGE SPECIFIED | ||
| 807 | ; ;IF /STATUS WAS SPECIFIED | ||
| 808 | ; ; BX = 0 | ||
| 809 | ; ;IF QUESTION MARK WAS SPECIFIED | ||
| 810 | ; ; BX=-1 | ||
| 811 | ; | ||
| 812 | ; CALL DOFUNCTION ; RESPOND TO PARMS | ||
| 813 | ; ; SETTING 'EXITFL' TO INDICATE RESULTS | ||
| 814 | ; | ||
| 815 | ; ASSUME ES:CSEG | ||
| 816 | ; PUSH ES ;SAVE BASE REG | ||
| 817 | ; MOV SI,OFFSET PARMDOS ;GET WHERE DOS PARMS START | ||
| 818 | ; SUB DI,DI ;INIT INDEX TO ZERO, WHERE TO PUT PARMS IN TOKEN | ||
| 819 | ; MOV CL,DS:PARMCNT ;GET HOW MANY CHARS ARE IN THE DOS COMMAND LINE | ||
| 820 | ; XOR CH,CH ;CLEAR COUNTER OF OUTPUT CHARS | ||
| 821 | ; CALL UPCASE ;CONVERT ANY LOWER CASE CHARS TO UPPERCASE | ||
| 822 | ; | ||
| 823 | ; $SEARCH | ||
| 824 | ; CMP CL,0 ;ANY DOS PARMS? | ||
| 825 | ; $LEAVE BE ;QUIT IF NOT PARMS | ||
| 826 | ; MOV DL,BYTE PTR [SI] ;SET DL TO A PARM CHAR FROM PARMDOS IN PSP | ||
| 827 | ; CMP DL,BLANK ;IGNORE THE SPECIAL CHARS: | ||
| 828 | ; $IF A ; BLANK AND LOWER NUMBERED CONTROL CHARS | ||
| 829 | ; CMP DL,"?" ;IS THE SPECIFIED PARAMETER | ||
| 830 | ; $IF E ; A QUESTION MARK? | ||
| 831 | ; MOV BYTE PTR TOKEN[DI],DL ;PUT DL CONVERTED TO TOKEN | ||
| 832 | ; INC DI ;BUMP TO NEXT AVAIL SPOT IN TOKEN | ||
| 833 | ; ADD CH,3 ;COUNT THIS AS AN OUTPUT CHAR,WITH NO ROOM FOR MORE | ||
| 834 | ; $ELSE ;SINCE NOT "?" | ||
| 835 | ; CMP DL,'0' ;IF CHAR IN RANGE OF NUMERICS | ||
| 836 | ; $IF AE,AND ;UNSIGNED TEST | ||
| 837 | ; CMP DL,'9' | ||
| 838 | ; $IF BE | ||
| 839 | ; PUSH DX | ||
| 840 | ; MOV AX,ACC | ||
| 841 | ; IMUL TEN ;CLOBBERS DX | ||
| 842 | ; POP DX ;FIX IT BACK | ||
| 843 | ; SUB DL,'0' ;CONVERT FROM NUMERIC CHAR TO BINARY | ||
| 844 | ; ADD AL,DL ;ADD NEW NUMBER FROM PARM | ||
| 845 | ; ADC AH,0 ;PROPOGATE CARRY | ||
| 846 | ; MOV ACC,AX ;SAVE RESULTS SO FAR | ||
| 847 | ; INC CH ;COUNT THIS AS AN OUTPUT CHAR | ||
| 848 | ; $ELSE ;SINCE NOT A NUMERIC CHARACTER | ||
| 849 | ; MOV CH,TOKEN_SIZE ;FORCE PARM ERROR, MAY BE CHANGED TO OK | ||
| 850 | ; CMP CL,4 | ||
| 851 | ; $IF AE ;IF AT LEAST 4 CHARS ARE PRESENT | ||
| 852 | ; CMP WORD PTR [SI],"S/" ;FIRST TWO CHARS OF "/STA" | ||
| 853 | ; $IF E,AND | ||
| 854 | ; CMP WORD PTR [SI]+WORD,"AT" ;NEXT TWO CHARS OF "/STA" | ||
| 855 | ; $IF E | ||
| 856 | ; MOV BYTE PTR TOKEN[DI],'/' ;PUT "/" CONVERTED TO TOKEN | ||
| 857 | ; INC DI ;BUMP TO NEXT AVAIL SPOT IN TOKEN | ||
| 858 | ; MOV CH,3 ;COUNT THIS AS AN OUTPUT CHAR,WITH NO ROOM FOR MORE | ||
| 859 | ; MOV CL,1 ;PRETEND THAT IS ALL OF THE COMMAND LINE THERE IS | ||
| 860 | ; $ENDIF ;"/STA"? | ||
| 861 | ; $ENDIF ;LENGTH 4? | ||
| 862 | ; $ENDIF ;IS CHAR IN NUMERIC RANGE? | ||
| 863 | ; $ENDIF ;IS PARM A QUESTION MARK? | ||
| 864 | ; $ENDIF ;BLANK OR LOWER VALUED CONTROL CHARS? | ||
| 865 | ; CMP CH,TOKEN_SIZE ;IS OUTPUT AREA OVERLY FULL? | ||
| 866 | ; $EXITIF GE | ||
| 867 | ; CALL BADPARMS ;FUSS ABOUT INVALID PARMS | ||
| 868 | ; $ORELSE | ||
| 869 | ; INC SI ;BUMP INDEX TO NEXT PARM CHAR IN PSP | ||
| 870 | ; DEC CL ;DEC COUNT OF INPUT CHARS FROM PARMS | ||
| 871 | ; $ENDLOOP | ||
| 872 | ; ;SINCE CL COUNT WENT TO ZERO, | ||
| 873 | ; CMP CH,0 ;ANY DOS PARMS LEFT AFTER CLEANUP? | ||
| 874 | ; $IF E ;IF NONE, | ||
| 875 | ; MOV WORD PTR TOKEN,437 ;MAKE IT LOOK LIKE "US" WAS SPECIFIED | ||
| 876 | ; $ELSE ;SOME PARM WAS SPECIFIED | ||
| 877 | ; CMP BYTE PTR TOKEN,PARM? | ||
| 878 | ; $IF NE,AND ;IF NOT A QUESTION MARK, AND | ||
| 879 | ; CMP BYTE PTR TOKEN,SLASH | ||
| 880 | ; $IF NE ;IF NOT A SLASH (FOR /STATUS) | ||
| 881 | ; MOV AX,ACC ;GET ACCUMULATOR | ||
| 882 | ; MOV WORD PTR TOKEN,AX ; TO TOKEN | ||
| 883 | ; $ENDIF ;QUESTION MARK? | ||
| 884 | ; $ENDIF ;ANY DOS PARMS? | ||
| 885 | ; CALL DOFUNCTION ;RESPOND TO PARAMETER IN "TOKEN" | ||
| 886 | ; | ||
| 887 | ; $ENDSRCH ;SCANNING DOS COMMAND LINE FOR PARMS | ||
| 888 | ; | ||
| 889 | ; POP ES ;RESTORE BASE REG | ||
| 890 | ; ASSUME ES:CSEG | ||
| 891 | ; | ||
| 892 | ; RET | ||
| 893 | ;PROCESS ENDP | ||
| 894 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 895 | ;UPCASE PROC NEAR | ||
| 896 | ;;CONVERT CHARACTERS IN PARMLIST TO UPPER CASE | ||
| 897 | ;;INPUT: SI=OFFSET IN DS: TO PARM TEXT | ||
| 898 | ;; CX=NUMBER OF CHARS OF PARMS | ||
| 899 | ; | ||
| 900 | ; OR CX,CX ;IF THERE ARE CHARS IN PARMLIST | ||
| 901 | ; $IF NZ ; THEN GO LOOK AT EACH CHAR | ||
| 902 | ; PUSH SI ;SAVE POINTER TO PARMS | ||
| 903 | ; PUSH CX ;SAVE COUNTER OF PARMS | ||
| 904 | ; $DO ;STEP THRU ALL CHARS OF PARM LIST, CONVERTING TO UPPER CASE | ||
| 905 | ; MOV AL,[SI] ;GET CHAR FROM PARMLIST TO AL | ||
| 906 | ; CMP AL,LOWERA ;COMPARE WITH LOWER CASE "a" | ||
| 907 | ; $IF AE,AND ;UNSIGNED TEST | ||
| 908 | ; CMP AL,LOWERZ ;COMPARE WITH LOWER CASE "z" | ||
| 909 | ; $IF BE ;IF CHAR IS LOWER CASE | ||
| 910 | ; AND AL,CASEBIT ;CONVERT TO UPPER CASE BY DELETING THE 20H BIT | ||
| 911 | ; MOV [SI],AL ;RESTORE CHAR TO PARMLIST | ||
| 912 | ; $ENDIF | ||
| 913 | ; INC SI ;BUMP INDEX TO LOOK AT NEXT CHAR | ||
| 914 | ; $ENDDO LOOP | ||
| 915 | ; POP CX ;RESTORE COUNTER OF PARMS | ||
| 916 | ; POP SI ;RESTORE POINTER TO PARMS | ||
| 917 | ; $ENDIF ;ANY CHARS IN PARMLIST? | ||
| 918 | ; | ||
| 919 | ; RET | ||
| 920 | ;UPCASE ENDP | ||
| 921 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 922 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 923 | HEADER <RESPOND TO PARAMETER> ;AC000; | ||
| 924 | DOFUNCTION PROC NEAR ;RESPOND TO PARM ;AC000; | ||
| 925 | PUBLIC DOFUNCTION | ||
| 926 | ;INPUT: IF A CODEPAGE NUMBER WAS SPECIFIED | ||
| 927 | ; BX = OFFSET TO LANGUAGE TABLE TO BE LOADED | ||
| 928 | ; DX = INTEGER VALUE OF CODEPAGE SPECIFIED | ||
| 929 | ; IF /STATUS WAS SPECIFIED | ||
| 930 | ; BX = 0 | ||
| 931 | ; IF QUESTION MARK WAS SPECIFIED | ||
| 932 | ; BX=-1 | ||
| 933 | |||
| 934 | ASSUME ES:CSEG | ||
| 935 | CMP BX,RETCODE_QUESTION ;IS QUESTION MARK SPECFIED? | ||
| 936 | ; $IF E | ||
| 937 | JNE $$IF22 | ||
| 938 | CALL HELP ;DISPLAY RESULTS OF "?" SPECIFICATION | ||
| 939 | |||
| 940 | ; $ELSE ;SINCE QUESTION MARK IS NOT PARM SPECIFIED | ||
| 941 | JMP SHORT $$EN22 | ||
| 942 | $$IF22: | ||
| 943 | CMP BX,ZERO ;IS /STATUS SPECIFIED? | ||
| 944 | ; $IF NE ;IF NOT STATUS, MUST BE REQUEST TO LOAD A TABLE | ||
| 945 | JE $$IF24 | ||
| 946 | LEA DI,MSGNUM_PREVIOUS ;"Previous Code Page: xxx" ;AN001; | ||
| 947 | CALL SENDMSG ;SEND THE MSG TO STDOUT ;AN001; | ||
| 948 | |||
| 949 | MOV DX,[BX].LANID ;FETCH THE TWO CHAR ID FROM TABLE | ||
| 950 | CMP DX,IDXXX ;IS THIS ONE ALREADY LOADED? | ||
| 951 | ; $IF NE ;IF NOT, LOAD IT | ||
| 952 | JE $$IF25 | ||
| 953 | |||
| 954 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 955 | ; MOV CX,LENGTH LANNAME ;GET LENGTH OF NAME FIELD | ||
| 956 | ; LEA SI,[BX].LANNAME ;GET WHERE NAME FIELD IS IN THE NEW TABLE | ||
| 957 | ; LEA DI,LANGUAGE_NAME ;WHERE WHERE TO PUT NAME IN VARIABLE MESSAGE FIELD | ||
| 958 | ; REP MOVSB ;MOVE LANGUAGE NAME TO PRINTF VARIABLE FIELD | ||
| 959 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 960 | |||
| 961 | MOV SI,BX ;PASS START OF CHAR TABLE | ||
| 962 | CALL MOVTAB ;PUT THIS TABLE INTO THE USA POSITION | ||
| 963 | |||
| 964 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 965 | ; LEA AX,MSG3 ;XXXXX VER OF GRAPHIC CHAR SET HAS JUST BEEN LOADED | ||
| 966 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 967 | LEA DI,MSGNUM_ACTIVE ;"ACTIVE CODE PAGE: XXX" ;AN000; | ||
| 968 | MOV AX,ACTIVECPID ;GET POINTER TO CP JUST ACTIVATED ;AN000; | ||
| 969 | MOV SLIST_23.SUB_VALUE,AX ;INTO SUBLIST ;AN000; | ||
| 970 | CALL SENDMSG ;SHOW "ACTIVE CODE PAGE: XXX" ;AN000; | ||
| 971 | |||
| 972 | CMP BAD1F,RESET ;THIS FLAG SET TO '1' MEANS INT 1FH POINTS TO | ||
| 973 | ; $IF E ; A TABLE OTHER THAN ONE LOADED BY GRAFTABL | ||
| 974 | JNE $$IF26 | ||
| 975 | PUSH DS | ||
| 976 | ASSUME DS:NOTHING | ||
| 977 | LDS DX,WHERE ;SET DS:DX POINT TO PREVIOUSLY LOADED GRAFTABL FONT | ||
| 978 | MOV AH,SET_VECT ;FUNCTION TO MOVE DS:DX INTO VECTOR FOR INT 1FH | ||
| 979 | MOV AL,VEC_GRAF_CHAR ;INTERRUPT NUMBER TO RECEIVE NEW CONTENTS | ||
| 980 | INT VEC_DOS ;CHANGE THE VECTOR | ||
| 981 | |||
| 982 | POP DS | ||
| 983 | ASSUME DS:CSEG | ||
| 984 | ; $ENDIF ;BAD 1FH? | ||
| 985 | $$IF26: | ||
| 986 | ; $ENDIF ;THIS TABLE ALREADY LOADED? | ||
| 987 | $$IF25: | ||
| 988 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 989 | ; ADD BX,TYPE LANGUAGE ;STEP BASE TO NEXT TABLE | ||
| 990 | ; LEA AX,COPYRIGHT ;AT START OF MSGS, BEYOND LAST TABLE | ||
| 991 | ; CMP BX,AX | ||
| 992 | ; $ENDLOOP AE ;GO TRY THE NEXT TABLE, IF ANY | ||
| 993 | ; ;NOT ANY NEXT TABLE | ||
| 994 | ; CALL BADPARMS ;FUSS ABOUT INVALID PARMS | ||
| 995 | ; | ||
| 996 | ; $ENDSRCH ;COMPARING TOKEN WITH ID IN TABLES | ||
| 997 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 998 | ; $ELSE ;SINCE /STATUS SPECIFIED, | ||
| 999 | JMP SHORT $$EN24 | ||
| 1000 | $$IF24: | ||
| 1001 | LEA DI,MSGNUM_ACTIVE ;POINT TO "ACTIVE CODE PAGE: XXX" ;AN001; | ||
| 1002 | CALL SENDMSG ; VARIABLE FILLED BY "FINDTYPE" ;AN001; | ||
| 1003 | |||
| 1004 | CMP IDXXX,ZERO ;SEE WHO IS LOADED, IF ANYBODY | ||
| 1005 | ; $IF E | ||
| 1006 | JNE $$IF30 | ||
| 1007 | MOV EXITFL,EXNONE ;SET EXIT CODE TO SAY NO TABLE LOADED AT ALL | ||
| 1008 | ; $ELSE ;SINCE SOMEONE IS LOADED, | ||
| 1009 | JMP SHORT $$EN30 | ||
| 1010 | $$IF30: | ||
| 1011 | MOV EXITFL,EXDOS ;SAY A TABLE IS LOADED | ||
| 1012 | ; $ENDIF ;ANY TABLE PREVIOUSLY LOADED? | ||
| 1013 | $$EN30: | ||
| 1014 | |||
| 1015 | ; $ENDIF ;/STATUS? | ||
| 1016 | $$EN24: | ||
| 1017 | ; $ENDIF ;QUESTION MARK? | ||
| 1018 | $$EN22: | ||
| 1019 | RET | ||
| 1020 | DOFUNCTION ENDP | ||
| 1021 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 1022 | HEADER <LOCAL SUBROUTINE, INSTALL A PARTICULAR TABLE> | ||
| 1023 | MOVTAB PROC NEAR | ||
| 1024 | PUBLIC MOVTAB | ||
| 1025 | ;INPUT: SI = OFFSET OF SOURCE TABLE | ||
| 1026 | ; ES = PSP | ||
| 1027 | ASSUME ES:CSEG | ||
| 1028 | ;OUTPUT: THE SOURCE TABLE WILL BE MOVED TO ONE OF TWO PLACES, | ||
| 1029 | ; EITHER | ||
| 1030 | ; (IF THIS IS THE FIRST TIME FOR GRAFTABL) | ||
| 1031 | ; TO THE "TABLEUS" IN THE PSP (IF USA NOT SPECIFIED), | ||
| 1032 | ; AND THEN BOTH INT2FH AND TABLEUS MOVED TO MOV_DEST IN THE PSP, | ||
| 1033 | ; OR | ||
| 1034 | ; ON TOP OF THE PREVIOUS TABLE LEFT BY A PREVIOUS GRAFTABL CALL, | ||
| 1035 | ; AS POINTED TO BY THE VECTOR, "WHERE". | ||
| 1036 | |||
| 1037 | PUSH ES ;SAVE THE PSP | ||
| 1038 | CMP INSTALLED,LOADED ;IF A PREVIOUS COPY OF GRAFTABL | ||
| 1039 | ; $IF E ; HAS ALREADY BEEN LOADED | ||
| 1040 | JNE $$IF35 | ||
| 1041 | |||
| 1042 | LES DI,WHERE ;REMEMBER WHERE PREVIOUSLY TABLE WENT | ||
| 1043 | ASSUME ES:NOTHING ;ES IS BASE OF OLD PREVIOUSLY LOADED TABLE | ||
| 1044 | MOV CX,TABSIZE ;THE TABLE,2 CHAR ID,& LANGUAGE NAME ARE TO BE MOVED | ||
| 1045 | REP MOVSB ;MOVE NEW TABLE ON TOP OF OLD TABLE | ||
| 1046 | ;WHEN EXITING, LEAVE NOTHING RESIDENT | ||
| 1047 | ; $ELSE ;SINCE NO PREVIOUS LOAD OF GRAFTABL EXISTS, | ||
| 1048 | JMP SHORT $$EN35 | ||
| 1049 | $$IF35: | ||
| 1050 | ASSUME ES:CSEG ;SINCE ES WAS NOT CHANGED, | ||
| 1051 | MOV EXITFL,EXRES ;WHEN EXITING, LEAVE TABLE RESIDENT | ||
| 1052 | ; ALONG WITH THE INT2FH HANDLER | ||
| 1053 | |||
| 1054 | ;SINCE IT IS THE USA TABLE THAT IS | ||
| 1055 | ; PHYSICALLY NEXT TO THE INTERRUPT HANDLER, | ||
| 1056 | ; THAT PAIR OF AREAS IS WHAT WILL STAY | ||
| 1057 | ; RESIDENT. IF THE USA TABLE IS NOT THE | ||
| 1058 | ; DESIRED VERSION, THEN FIRST MOVE THE | ||
| 1059 | ; VERSION DESIRED ON TOP OF THE USA VERSION, | ||
| 1060 | ; THEN MOVE THE PAIR DOWN ON TOP OF THE PSP | ||
| 1061 | ; WHERE THEY WILL STAY RESIDENT. | ||
| 1062 | |||
| 1063 | LEA DI,TABLEUS ;FIND WHERE FIRST TABLE NOW IS | ||
| 1064 | CMP SI,DI | ||
| 1065 | ; $IF NE ;IF NOT THE USA TABLE, | ||
| 1066 | JE $$IF37 | ||
| 1067 | MOV CX,TABSIZE ;SIZE OF THE TABLE | ||
| 1068 | REP MOVSB ;MOVE THE XX TABLE ONTO THE USA TABLE | ||
| 1069 | ; $ENDIF | ||
| 1070 | $$IF37: | ||
| 1071 | MOV DI,OFFSET MOV_DEST ;WHERE TO MOVE EVERYTHING TO | ||
| 1072 | LEA SI,END_PSP ;START WITH THE INT2FH HANDLER, ON THRU THE TABLE | ||
| 1073 | ;ES:DI POINT TO DESTINATION, DS:SI POINT TO SOURCE | ||
| 1074 | MOV CX,RESSIZE_BYTE ;GET SIZE OF TABLE + RESIDENT CODE INT HANDLER | ||
| 1075 | REP MOVSB ;MOVE THE TABLE ONTO THE PSP OF THIS LOAD | ||
| 1076 | ; $ENDIF | ||
| 1077 | $$EN35: | ||
| 1078 | POP ES ;RESTORE THE PSP POINTER TO ES | ||
| 1079 | RET | ||
| 1080 | MOVTAB ENDP | ||
| 1081 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 1082 | HEADER <HELP - GENERATE DISPLAY RESPONDING TO STATUS REQUEST> | ||
| 1083 | HELP PROC NEAR ;RESPOND TO "?" PARM SPECIFIED | ||
| 1084 | PUBLIC HELP | ||
| 1085 | ;INPUT: DS, ES = POINTS TO PSP | ||
| 1086 | ; IDXXX = CP OF WHO IS ALREADY LOADED | ||
| 1087 | ; EXITFL = ERROR LEVEL RET CODE | ||
| 1088 | ; NORMAL VALUE SAYS SOME TABLE HAS BEEN LOADED, BUT | ||
| 1089 | ; INVALID PARMS COULD HAVE ALREADY ALTERED THIS VALUE. | ||
| 1090 | ;OUTPUT: EXITFL MAY BE CHANGED TO "EXNONE", IF NO TABLE LOADED | ||
| 1091 | |||
| 1092 | ASSUME ES:CSEG | ||
| 1093 | LEA DI,MSGNUM_ACTIVE ;POINT TO "ACTIVE CODE PAGE: XXX" ;AN001; | ||
| 1094 | CALL SENDMSG ; VARIABLE FILLED BY "FINDTYPE" ;AN001; | ||
| 1095 | |||
| 1096 | CMP EXITFL,EXDOS ;IS RET CODE UNTOUCHED SO FAR? | ||
| 1097 | ; $IF E ;IF SO, REPORT WHO IS LOADED | ||
| 1098 | JNE $$IF40 | ||
| 1099 | CMP IDXXX,ZERO ;SEE WHO IS LOADED, IF ANYBODY | ||
| 1100 | ; $IF E | ||
| 1101 | JNE $$IF41 | ||
| 1102 | MOV EXITFL,EXNONE ;SET EXIT CODE TO SAY NO TABLE LOADED AT ALL | ||
| 1103 | ; $ENDIF ;ANY TABLE PREVIOUSLY LOADED? | ||
| 1104 | $$IF41: | ||
| 1105 | ; $ENDIF ;RET CODE UNTOUCHED? | ||
| 1106 | $$IF40: | ||
| 1107 | |||
| 1108 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 1109 | ; LEA AX,MSG7 ;"DOS command line parameters supported:" | ||
| 1110 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 1111 | LEA DI,MSGNUM_HELP_TITLE ;"DOS command line parameters supported:" ;AN000; | ||
| 1112 | CALL SENDMSG ;DISPLAY MSG IN STDOUT ;AN000; | ||
| 1113 | |||
| 1114 | LEA DI,MSGNUM_HELP_TITLE7 ;AN007; | ||
| 1115 | CALL SENDMSG ;AN007;DISPLAY MSG IN STDOUT ;AN000; | ||
| 1116 | |||
| 1117 | LEA DI,MSGNUM_HELP_TITLE8 ;AN007; | ||
| 1118 | CALL SENDMSG ;AN007;DISPLAY MSG IN STDOUT ;AN000; | ||
| 1119 | |||
| 1120 | LEA DI,MSGNUM_HELP_TITLE9 ;AN007; | ||
| 1121 | CALL SENDMSG ;AN007;DISPLAY MSG IN STDOUT ;AN000; | ||
| 1122 | |||
| 1123 | LEA DI,MSGNUM_HELP_TITLE10 ;AN007; | ||
| 1124 | CALL SENDMSG ;AN007;DISPLAY MSG IN STDOUT ;AN000; | ||
| 1125 | |||
| 1126 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 1127 | ; LEA SI,TABLEUS ;START WITH THE FIRST TABLE | ||
| 1128 | ; $DO | ||
| 1129 | ; LEA DI,LANGUAGE_NAME ;FIND WHERE NAME OF LANGUAGE GOES | ||
| 1130 | ; MOV CX,LENGTH LANNAME ;HOW LONG IS THIS FIELD | ||
| 1131 | ; SUB BX,BX ;CLEAR INDEX TO NAME FIELD TO ZERO | ||
| 1132 | ; $DO | ||
| 1133 | ; MOV AL,[SI][BX].LANNAME ;GET CHAR FROM LANGUAGE NAME IN TABLE | ||
| 1134 | ; MOV [DI][BX],AL ;MOVE THAT CHAR TO MSG VARIABLE FIELD | ||
| 1135 | ; INC BX ;POINT TO NEXT POSITION | ||
| 1136 | ; $ENDDO LOOP | ||
| 1137 | ; MOV AX,[SI].LANID ;PICK UP THE 2 CHAR ID | ||
| 1138 | ; MOV IDXXX,AX ;PUT IT WHERE MSG8 IS LOOKING FOR IT | ||
| 1139 | ; LEA AX,MSG8 ;"%d - %s" | ||
| 1140 | ; CALL SENDMSG ;DISPLAY "IDXXX" AND "LANGUAGE_NAME" | ||
| 1141 | ; | ||
| 1142 | ; ADD SI,TYPE LANGUAGE ;BUMP TO THE NEXT TABLE | ||
| 1143 | ; LEA AX,COPYRIGHT ;IT IMMEDIATELY FOLLOWS THE LAST TABLE | ||
| 1144 | ; CMP SI,AX | ||
| 1145 | ; $ENDDO AE | ||
| 1146 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 1147 | RET | ||
| 1148 | HELP ENDP | ||
| 1149 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 1150 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 1151 | ;BADPARMS PROC NEAR | ||
| 1152 | ; LEA AX,MSG4 ;"INCORRECT PARAMETER" | ||
| 1153 | ; CALL SENDMSG | ||
| 1154 | ; | ||
| 1155 | ; CALL HELP ;DISPLAY RESULTS OF "?" SPECIFICATION | ||
| 1156 | ; | ||
| 1157 | ; MOV EXITFL,EXPAR ;ERRORLEVEL CODE TO "PARM ERROR" | ||
| 1158 | ; RET | ||
| 1159 | ;BADPARMS ENDP | ||
| 1160 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 1161 | FIXLIST LISTPARM,.LIST | ||
| 1162 | |||
| 1163 | HEADER <SENDMSG - PASS IN REGS DATA FROM MSG DESCRIPTOR TO DISP MSG> ;AN000; | ||
| 1164 | SENDMSG PROC NEAR ; ;AN000; | ||
| 1165 | PUBLIC SENDMSG ; ;AN000; | ||
| 1166 | ;INPUT - DI=POINTER TO MSG_DESC STRUC FOR THIS MESSAGE | ||
| 1167 | ;OUTPUT - IF CARRY SET, EXTENDED ERROR MSG ATTEMPTED DISPLAYED | ||
| 1168 | ; IF CARRY CLEAR, ALL OK | ||
| 1169 | ; IN EITHER CASE, DI AND AX ALTERED, OTHERS OK | ||
| 1170 | ; = = = = = = = = = = = = | ||
| 1171 | |||
| 1172 | PUSH BX ; SAVE CALLER'S REGS ;AN000; | ||
| 1173 | PUSH CX ; ;AN000; | ||
| 1174 | PUSH DX ; ;AN000; | ||
| 1175 | PUSH SI ; ;AN000; | ||
| 1176 | |||
| 1177 | ; PASS PARMS TO MESSAGE HANDLER IN | ||
| 1178 | ; THE APPROPRIATE REGISTERS IT NEEDS. | ||
| 1179 | MOV AX,[DI].MSG_NUM ;MESSAGE NUMBER ;AN000; | ||
| 1180 | MOV BX,[DI].MSG_HANDLE ;HANDLE TO DISPLAY TO ;AN000; | ||
| 1181 | MOV SI,[DI].MSG_SUBLIST ;OFFSET IN ES: OF SUBLIST, OR 0 IF NONE ;AN000; | ||
| 1182 | MOV CX,[DI].MSG_COUNT ;NUMBER OF %PARMS, 0 IF NONE ;AN000; | ||
| 1183 | MOV DX,[DI].MSG_CLASS ;CLASS IN HIGH BYTE, INPUT FUNCTION IN LOW ;AN000; | ||
| 1184 | CALL SYSDISPMSG ;DISPLAY THE MESSAGE ;AN000; | ||
| 1185 | |||
| 1186 | ; $IF C ;IF THERE IS A PROBLEM ;AN000; | ||
| 1187 | JNC $$IF44 | ||
| 1188 | ;AX=EXTENDED ERROR NUMBER ;AN000; | ||
| 1189 | LEA DI,MSGNUM_EXTERR ;GET REST OF ERROR DESCRIPTOR ;AN000; | ||
| 1190 | MOV BX,[DI].MSG_HANDLE ;HANDLE TO DISPLAY TO ;AN000; | ||
| 1191 | MOV SI,[DI].MSG_SUBLIST ;OFFSET IN ES: OF SUBLIST, OR 0 IF NONE ;AN000; | ||
| 1192 | MOV CX,[DI].MSG_COUNT ;NUMBER OF %PARMS, 0 IF NONE ;AN000; | ||
| 1193 | MOV DX,[DI].MSG_CLASS ;CLASS IN HIGH BYTE, INPUT FUNCTION IN LOW ;AN000; | ||
| 1194 | CALL SYSDISPMSG ;TRY TO SAY WHAT HAPPENED ;AN000; | ||
| 1195 | |||
| 1196 | STC ;REPORT PROBLEM ;AN000; | ||
| 1197 | ; $ENDIF ;PROBLEM WITH DISPLAY? ;AN000; | ||
| 1198 | $$IF44: | ||
| 1199 | |||
| 1200 | POP SI ;RESTORE CALLER'S REGISTERS ;AN000; | ||
| 1201 | POP DX ; ;AN000; | ||
| 1202 | POP CX ; ;AN000; | ||
| 1203 | POP BX ; ;AN000; | ||
| 1204 | FIXLIST LISTPARM,.XLIST ; ;AN000; | ||
| 1205 | ;;INPUT: AX = OFFSET OF MSG PARM LIST | ||
| 1206 | ; PUSH AX | ||
| 1207 | ; PUSH CS ;MATCH REQUIREMENTS OF PRINTF, WHICH IS "FAR" | ||
| 1208 | ; CALL PRINTF ;USING MSG PARM LIST, BUILD MSG, DISPLAY MSG | ||
| 1209 | ; ;PRINTF WILL POP OFF THE PARM, PUSHED FROM AX | ||
| 1210 | ; | ||
| 1211 | FIXLIST LISTPARM,.LIST ; ;AN000; | ||
| 1212 | |||
| 1213 | RET ; ;AN000; | ||
| 1214 | SENDMSG ENDP ; ;AN000; | ||
| 1215 | PATHLABL GRTAB ;AN006; | ||
| 1216 | CSEG ENDS | ||
| 1217 | END | ||
| 1218 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABCF.ASM b/v4.0/src/CMD/GRAFTABL/GRTABCF.ASM new file mode 100644 index 0000000..a456896 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABCF.ASM | |||
| @@ -0,0 +1,1196 @@ | |||
| 1 | PAGE 90,132 ;A2 | ||
| 2 | TITLE GRTABCF - CANADIAN FRENCH CHARACTER SET FOR GRAFTABL COMMAND | ||
| 3 | ;This module is to be linked with the OBJ of GRTAB.SAL. Refer to the | ||
| 4 | ;Prolog of that module for more complete description. | ||
| 5 | |||
| 6 | ;This module contains the binary description of the pixels that are used | ||
| 7 | ;in graphics mode to define the Canadian French character set when loaded to | ||
| 8 | ;interrupt 1FH by the GRAFTABL command in DOS 3.3. | ||
| 9 | IF1 | ||
| 10 | %OUT GRTABCF.ASM... | ||
| 11 | ELSE | ||
| 12 | ; $OUT GRTABCF.ASM... | ||
| 13 | ENDIF | ||
| 14 | CSEG SEGMENT PARA PUBLIC | ||
| 15 | TABLECF EQU THIS BYTE | ||
| 16 | PUBLIC TABLECF | ||
| 17 | |||
| 18 | ;(note: the display of the character to the right of the decimal number | ||
| 19 | ;value of this location is not necessarily the graphic that these pixels | ||
| 20 | ;will produce. The displayed character is from the USA character set, and | ||
| 21 | ;does not represent the language character set generated by this table.) | ||
| 22 | |||
| 23 | ;These fonts are as defined in the Canadian French Code Page = 863. | ||
| 24 | |||
| 25 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 26 | ; | ||
| 27 | ; 8 x 8 Character Set information | ||
| 28 | ; for the 5153 A/N and low-res APA | ||
| 29 | ; | ||
| 30 | ; CODE NAME: CARIBOU (L'ACCENT) | ||
| 31 | ; CODE PAGE: 863 | ||
| 32 | ; DATE: 12-06-86 | ||
| 33 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 34 | ; 128 € | ||
| 35 | DB 01111000B | ||
| 36 | DB 11001100B | ||
| 37 | DB 11000000B | ||
| 38 | DB 11000000B | ||
| 39 | DB 11001100B | ||
| 40 | DB 01111000B | ||
| 41 | DB 00011000B | ||
| 42 | DB 01110000B | ||
| 43 | ; 129 | ||
| 44 | DB 00000000B | ||
| 45 | DB 11001100B | ||
| 46 | DB 00000000B | ||
| 47 | DB 11001100B | ||
| 48 | DB 11001100B | ||
| 49 | DB 11001100B | ||
| 50 | DB 01111110B | ||
| 51 | DB 00000000B | ||
| 52 | ; 130 ‚ | ||
| 53 | DB 00110000B | ||
| 54 | DB 01100000B | ||
| 55 | DB 01111000B | ||
| 56 | DB 11001100B | ||
| 57 | DB 11111100B | ||
| 58 | DB 11000000B | ||
| 59 | DB 01111000B | ||
| 60 | DB 00000000B | ||
| 61 | ; 131 ƒ | ||
| 62 | DB 01111100B | ||
| 63 | DB 11000110B | ||
| 64 | DB 01111000B | ||
| 65 | DB 00001100B | ||
| 66 | DB 01111100B | ||
| 67 | DB 11001100B | ||
| 68 | DB 01111110B | ||
| 69 | DB 00000000B | ||
| 70 | ; 132 „ | ||
| 71 | DB 01111100B | ||
| 72 | DB 11000110B | ||
| 73 | DB 00111000B | ||
| 74 | DB 01101100B | ||
| 75 | DB 11000110B | ||
| 76 | DB 11111110B | ||
| 77 | DB 11000110B | ||
| 78 | DB 00000000B | ||
| 79 | ; 133 … | ||
| 80 | DB 00110000B | ||
| 81 | DB 00011000B | ||
| 82 | DB 01111000B | ||
| 83 | DB 00001100B | ||
| 84 | DB 01111100B | ||
| 85 | DB 11001100B | ||
| 86 | DB 01111110B | ||
| 87 | DB 00000000B | ||
| 88 | ; 134 † | ||
| 89 | DB 01111111B | ||
| 90 | DB 11011011B | ||
| 91 | DB 11011011B | ||
| 92 | DB 01111011B | ||
| 93 | DB 00011011B | ||
| 94 | DB 00011011B | ||
| 95 | DB 00011011B | ||
| 96 | DB 00000000B | ||
| 97 | ; 135 ‡ | ||
| 98 | DB 00000000B | ||
| 99 | DB 00000000B | ||
| 100 | DB 01111100B | ||
| 101 | DB 11000000B | ||
| 102 | DB 11000000B | ||
| 103 | DB 01111100B | ||
| 104 | DB 00011000B | ||
| 105 | DB 01110000B | ||
| 106 | ; 136 ˆ | ||
| 107 | DB 01111110B | ||
| 108 | DB 11000011B | ||
| 109 | DB 00111100B | ||
| 110 | DB 01100110B | ||
| 111 | DB 01111110B | ||
| 112 | DB 01100000B | ||
| 113 | DB 00111100B | ||
| 114 | DB 00000000B | ||
| 115 | ; 137 ‰ | ||
| 116 | DB 01100110B | ||
| 117 | DB 00000000B | ||
| 118 | DB 00111100B | ||
| 119 | DB 01100110B | ||
| 120 | DB 01111110B | ||
| 121 | DB 01100000B | ||
| 122 | DB 00111100B | ||
| 123 | DB 00000000B | ||
| 124 | ; 138 Š | ||
| 125 | DB 00011000B | ||
| 126 | DB 00001100B | ||
| 127 | DB 00111100B | ||
| 128 | DB 01100110B | ||
| 129 | DB 01111110B | ||
| 130 | DB 01100000B | ||
| 131 | DB 00111100B | ||
| 132 | DB 00000000B | ||
| 133 | ; 139 ‹ | ||
| 134 | DB 01100110B | ||
| 135 | DB 00000000B | ||
| 136 | DB 00111000B | ||
| 137 | DB 00011000B | ||
| 138 | DB 00011000B | ||
| 139 | DB 00011000B | ||
| 140 | DB 00111100B | ||
| 141 | DB 00000000B | ||
| 142 | ; 140 Œ | ||
| 143 | DB 01111100B | ||
| 144 | DB 11000110B | ||
| 145 | DB 00111000B | ||
| 146 | DB 00011000B | ||
| 147 | DB 00011000B | ||
| 148 | DB 00011000B | ||
| 149 | DB 00111100B | ||
| 150 | DB 00000000B | ||
| 151 | ; 141 | ||
| 152 | DB 00000000B | ||
| 153 | DB 00000000B | ||
| 154 | DB 00000000B | ||
| 155 | DB 00000000B | ||
| 156 | DB 00000000B | ||
| 157 | DB 11111111B | ||
| 158 | DB 00000000B | ||
| 159 | DB 11111111B | ||
| 160 | ; 142 Ž | ||
| 161 | DB 00011000B | ||
| 162 | DB 00001100B | ||
| 163 | DB 00111000B | ||
| 164 | DB 01101100B | ||
| 165 | DB 11000110B | ||
| 166 | DB 11111110B | ||
| 167 | DB 11000110B | ||
| 168 | DB 00000000B | ||
| 169 | ; 143 | ||
| 170 | DB 00111110B | ||
| 171 | DB 01100011B | ||
| 172 | DB 00111000B | ||
| 173 | DB 01101100B | ||
| 174 | DB 01101100B | ||
| 175 | DB 00111000B | ||
| 176 | DB 11001100B | ||
| 177 | DB 01111000B | ||
| 178 | ; 144 | ||
| 179 | DB 00011000B | ||
| 180 | DB 00110000B | ||
| 181 | DB 11111100B | ||
| 182 | DB 11000000B | ||
| 183 | DB 11111000B | ||
| 184 | DB 11000000B | ||
| 185 | DB 11111100B | ||
| 186 | DB 00000000B | ||
| 187 | ; 145 ‘ | ||
| 188 | DB 01100000B | ||
| 189 | DB 00110000B | ||
| 190 | DB 11111100B | ||
| 191 | DB 11000000B | ||
| 192 | DB 11111000B | ||
| 193 | DB 11000000B | ||
| 194 | DB 11111100B | ||
| 195 | DB 00000000B | ||
| 196 | ; 146 ’ | ||
| 197 | DB 01111100B | ||
| 198 | DB 11000110B | ||
| 199 | DB 11111100B | ||
| 200 | DB 11000000B | ||
| 201 | DB 11111000B | ||
| 202 | DB 11000000B | ||
| 203 | DB 11111100B | ||
| 204 | DB 00000000B | ||
| 205 | ; 147 “ | ||
| 206 | DB 01111000B | ||
| 207 | DB 11001100B | ||
| 208 | DB 00000000B | ||
| 209 | DB 01111000B | ||
| 210 | DB 11001100B | ||
| 211 | DB 11001100B | ||
| 212 | DB 01111000B | ||
| 213 | DB 00000000B | ||
| 214 | ; 148 ” | ||
| 215 | DB 11001100B | ||
| 216 | DB 00000000B | ||
| 217 | DB 11111100B | ||
| 218 | DB 11000000B | ||
| 219 | DB 11111000B | ||
| 220 | DB 11000000B | ||
| 221 | DB 11111100B | ||
| 222 | DB 00000000B | ||
| 223 | ; 149 • | ||
| 224 | DB 11001100B | ||
| 225 | DB 00000000B | ||
| 226 | DB 01111000B | ||
| 227 | DB 00110000B | ||
| 228 | DB 00110000B | ||
| 229 | DB 00110000B | ||
| 230 | DB 01111000B | ||
| 231 | DB 00000000B | ||
| 232 | ; 150 – | ||
| 233 | DB 01111000B | ||
| 234 | DB 11001100B | ||
| 235 | DB 00000000B | ||
| 236 | DB 11001100B | ||
| 237 | DB 11001100B | ||
| 238 | DB 11001100B | ||
| 239 | DB 01111110B | ||
| 240 | DB 00000000B | ||
| 241 | ; 151 — | ||
| 242 | DB 01100000B | ||
| 243 | DB 00110000B | ||
| 244 | DB 00000000B | ||
| 245 | DB 11001100B | ||
| 246 | DB 11001100B | ||
| 247 | DB 11001100B | ||
| 248 | DB 01111110B | ||
| 249 | DB 00000000B | ||
| 250 | ; 152 ˜ | ||
| 251 | DB 00000000B | ||
| 252 | DB 11000110B | ||
| 253 | DB 01111100B | ||
| 254 | DB 11000110B | ||
| 255 | DB 11000110B | ||
| 256 | DB 01111100B | ||
| 257 | DB 11000110B | ||
| 258 | DB 00000000B | ||
| 259 | ; 153 ™ | ||
| 260 | DB 01111100B | ||
| 261 | DB 10000010B | ||
| 262 | DB 00111000B | ||
| 263 | DB 01101100B | ||
| 264 | DB 11000110B | ||
| 265 | DB 01101100B | ||
| 266 | DB 00111000B | ||
| 267 | DB 00000000B | ||
| 268 | ; 154 š | ||
| 269 | DB 11001100B | ||
| 270 | DB 00000000B | ||
| 271 | DB 11001100B | ||
| 272 | DB 11001100B | ||
| 273 | DB 11001100B | ||
| 274 | DB 11001100B | ||
| 275 | DB 01111000B | ||
| 276 | DB 00000000B | ||
| 277 | ; 155 › | ||
| 278 | DB 00011000B | ||
| 279 | DB 00011000B | ||
| 280 | DB 01111110B | ||
| 281 | DB 11000000B | ||
| 282 | DB 11000000B | ||
| 283 | DB 01111110B | ||
| 284 | DB 00011000B | ||
| 285 | DB 00011000B | ||
| 286 | ; 156 œ | ||
| 287 | DB 00111000B | ||
| 288 | DB 01101100B | ||
| 289 | DB 01100100B | ||
| 290 | DB 11110000B | ||
| 291 | DB 01100000B | ||
| 292 | DB 11100110B | ||
| 293 | DB 11111100B | ||
| 294 | DB 00000000B | ||
| 295 | ; 157 | ||
| 296 | DB 01100000B | ||
| 297 | DB 00110000B | ||
| 298 | DB 11001100B | ||
| 299 | DB 11001100B | ||
| 300 | DB 11001100B | ||
| 301 | DB 11001100B | ||
| 302 | DB 01111000B | ||
| 303 | DB 00000000B | ||
| 304 | ; 158 ž | ||
| 305 | DB 01111000B | ||
| 306 | DB 11001100B | ||
| 307 | DB 00000000B | ||
| 308 | DB 11001100B | ||
| 309 | DB 11001100B | ||
| 310 | DB 11001100B | ||
| 311 | DB 01111000B | ||
| 312 | DB 00000000B | ||
| 313 | ; 159 Ÿ | ||
| 314 | DB 00001110B | ||
| 315 | DB 00011011B | ||
| 316 | DB 00011000B | ||
| 317 | DB 00111100B | ||
| 318 | DB 00011000B | ||
| 319 | DB 00011000B | ||
| 320 | DB 11011000B | ||
| 321 | DB 01110000B | ||
| 322 | ; 160 | ||
| 323 | DB 00011000B | ||
| 324 | DB 00011000B | ||
| 325 | DB 00011000B | ||
| 326 | DB 00000000B | ||
| 327 | DB 00000000B | ||
| 328 | DB 00011000B | ||
| 329 | DB 00011000B | ||
| 330 | DB 00011000B | ||
| 331 | ; 161 ¡ | ||
| 332 | DB 00001100B | ||
| 333 | DB 00011000B | ||
| 334 | DB 00110000B | ||
| 335 | DB 00000000B | ||
| 336 | DB 00000000B | ||
| 337 | DB 00000000B | ||
| 338 | DB 00000000B | ||
| 339 | DB 00000000B | ||
| 340 | ; 162 ¢ | ||
| 341 | DB 00011000B | ||
| 342 | DB 00110000B | ||
| 343 | DB 00000000B | ||
| 344 | DB 01111000B | ||
| 345 | DB 11001100B | ||
| 346 | DB 11001100B | ||
| 347 | DB 01111000B | ||
| 348 | DB 00000000B | ||
| 349 | ; 163 £ | ||
| 350 | DB 00011000B | ||
| 351 | DB 00110000B | ||
| 352 | DB 00000000B | ||
| 353 | DB 11001100B | ||
| 354 | DB 11001100B | ||
| 355 | DB 11001100B | ||
| 356 | DB 01111110B | ||
| 357 | DB 00000000B | ||
| 358 | ; 164 ¤ | ||
| 359 | DB 00000000B | ||
| 360 | DB 11000110B | ||
| 361 | DB 00000000B | ||
| 362 | DB 00000000B | ||
| 363 | DB 00000000B | ||
| 364 | DB 00000000B | ||
| 365 | DB 00000000B | ||
| 366 | DB 00000000B | ||
| 367 | ; 165 ¥ | ||
| 368 | DB 00000000B | ||
| 369 | DB 00000000B | ||
| 370 | DB 00000000B | ||
| 371 | DB 00000000B | ||
| 372 | DB 00000000B | ||
| 373 | DB 00011000B | ||
| 374 | DB 00001100B | ||
| 375 | DB 01111000B | ||
| 376 | ; 166 ¦ | ||
| 377 | DB 01110000B | ||
| 378 | DB 00011000B | ||
| 379 | DB 01110000B | ||
| 380 | DB 00011000B | ||
| 381 | DB 01110000B | ||
| 382 | DB 00000000B | ||
| 383 | DB 00000000B | ||
| 384 | DB 00000000B | ||
| 385 | ; 167 § | ||
| 386 | DB 11111111B | ||
| 387 | DB 00000000B | ||
| 388 | DB 00000000B | ||
| 389 | DB 00000000B | ||
| 390 | DB 00000000B | ||
| 391 | DB 00000000B | ||
| 392 | DB 00000000B | ||
| 393 | DB 00000000B | ||
| 394 | ; 168 ¨ | ||
| 395 | DB 01111110B | ||
| 396 | DB 10000001B | ||
| 397 | DB 00111100B | ||
| 398 | DB 00011000B | ||
| 399 | DB 00011000B | ||
| 400 | DB 00011000B | ||
| 401 | DB 00111100B | ||
| 402 | DB 00000000B | ||
| 403 | ; 169 © | ||
| 404 | DB 00000000B | ||
| 405 | DB 00000000B | ||
| 406 | DB 00000000B | ||
| 407 | DB 11111110B | ||
| 408 | DB 11000000B | ||
| 409 | DB 11000000B | ||
| 410 | DB 00000000B | ||
| 411 | DB 00000000B | ||
| 412 | ; 170 ª | ||
| 413 | DB 00000000B | ||
| 414 | DB 00000000B | ||
| 415 | DB 00000000B | ||
| 416 | DB 11111110B | ||
| 417 | DB 00000110B | ||
| 418 | DB 00000110B | ||
| 419 | DB 00000000B | ||
| 420 | DB 00000000B | ||
| 421 | ; 171 « | ||
| 422 | DB 11100001B | ||
| 423 | DB 01100010B | ||
| 424 | DB 01100100B | ||
| 425 | DB 01101110B | ||
| 426 | DB 00010011B | ||
| 427 | DB 00100110B | ||
| 428 | DB 01001100B | ||
| 429 | DB 10001111B | ||
| 430 | ; 172 ¬ | ||
| 431 | DB 11100001B | ||
| 432 | DB 01100010B | ||
| 433 | DB 01100100B | ||
| 434 | DB 01101010B | ||
| 435 | DB 00010110B | ||
| 436 | DB 00101010B | ||
| 437 | DB 01011111B | ||
| 438 | DB 10000010B | ||
| 439 | ; 173 | ||
| 440 | DB 11100001B | ||
| 441 | DB 00110010B | ||
| 442 | DB 01100100B | ||
| 443 | DB 00111010B | ||
| 444 | DB 11110110B | ||
| 445 | DB 00101010B | ||
| 446 | DB 01011111B | ||
| 447 | DB 10000010B | ||
| 448 | ; 174 ® | ||
| 449 | DB 00000000B | ||
| 450 | DB 00110011B | ||
| 451 | DB 01100110B | ||
| 452 | DB 11001100B | ||
| 453 | DB 01100110B | ||
| 454 | DB 00110011B | ||
| 455 | DB 00000000B | ||
| 456 | DB 00000000B | ||
| 457 | ; 175 ¯ | ||
| 458 | DB 00000000B | ||
| 459 | DB 11001100B | ||
| 460 | DB 01100110B | ||
| 461 | DB 00110011B | ||
| 462 | DB 01100110B | ||
| 463 | DB 11001100B | ||
| 464 | DB 00000000B | ||
| 465 | DB 00000000B | ||
| 466 | ; 176 ° | ||
| 467 | DB 00100010B | ||
| 468 | DB 10001000B | ||
| 469 | DB 00100010B | ||
| 470 | DB 10001000B | ||
| 471 | DB 00100010B | ||
| 472 | DB 10001000B | ||
| 473 | DB 00100010B | ||
| 474 | DB 10001000B | ||
| 475 | ; 177 ± | ||
| 476 | DB 01010101B | ||
| 477 | DB 10101010B | ||
| 478 | DB 01010101B | ||
| 479 | DB 10101010B | ||
| 480 | DB 01010101B | ||
| 481 | DB 10101010B | ||
| 482 | DB 01010101B | ||
| 483 | DB 10101010B | ||
| 484 | ; 178 ² | ||
| 485 | DB 11011011B | ||
| 486 | DB 01110111B | ||
| 487 | DB 11011011B | ||
| 488 | DB 11101110B | ||
| 489 | DB 11011011B | ||
| 490 | DB 01110111B | ||
| 491 | DB 11011011B | ||
| 492 | DB 11101110B | ||
| 493 | ; 179 ³ | ||
| 494 | DB 00011000B | ||
| 495 | DB 00011000B | ||
| 496 | DB 00011000B | ||
| 497 | DB 00011000B | ||
| 498 | DB 00011000B | ||
| 499 | DB 00011000B | ||
| 500 | DB 00011000B | ||
| 501 | DB 00011000B | ||
| 502 | ; 180 ´ | ||
| 503 | DB 00011000B | ||
| 504 | DB 00011000B | ||
| 505 | DB 00011000B | ||
| 506 | DB 00011000B | ||
| 507 | DB 11111000B | ||
| 508 | DB 00011000B | ||
| 509 | DB 00011000B | ||
| 510 | DB 00011000B | ||
| 511 | ; 181 µ | ||
| 512 | DB 00011000B | ||
| 513 | DB 00011000B | ||
| 514 | DB 11111000B | ||
| 515 | DB 00011000B | ||
| 516 | DB 11111000B | ||
| 517 | DB 00011000B | ||
| 518 | DB 00011000B | ||
| 519 | DB 00011000B | ||
| 520 | ; 182 ¶ | ||
| 521 | DB 00110110B | ||
| 522 | DB 00110110B | ||
| 523 | DB 00110110B | ||
| 524 | DB 00110110B | ||
| 525 | DB 11110110B | ||
| 526 | DB 00110110B | ||
| 527 | DB 00110110B | ||
| 528 | DB 00110110B | ||
| 529 | ; 183 · | ||
| 530 | DB 00000000B | ||
| 531 | DB 00000000B | ||
| 532 | DB 00000000B | ||
| 533 | DB 00000000B | ||
| 534 | DB 11111110B | ||
| 535 | DB 00110110B | ||
| 536 | DB 00110110B | ||
| 537 | DB 00110110B | ||
| 538 | ; 184 ¸ | ||
| 539 | DB 00000000B | ||
| 540 | DB 00000000B | ||
| 541 | DB 11111000B | ||
| 542 | DB 00011000B | ||
| 543 | DB 11111000B | ||
| 544 | DB 00011000B | ||
| 545 | DB 00011000B | ||
| 546 | DB 00011000B | ||
| 547 | ; 185 ¹ | ||
| 548 | DB 00110110B | ||
| 549 | DB 00110110B | ||
| 550 | DB 11110110B | ||
| 551 | DB 00000110B | ||
| 552 | DB 11110110B | ||
| 553 | DB 00110110B | ||
| 554 | DB 00110110B | ||
| 555 | DB 00110110B | ||
| 556 | ; 186 º | ||
| 557 | DB 00110110B | ||
| 558 | DB 00110110B | ||
| 559 | DB 00110110B | ||
| 560 | DB 00110110B | ||
| 561 | DB 00110110B | ||
| 562 | DB 00110110B | ||
| 563 | DB 00110110B | ||
| 564 | DB 00110110B | ||
| 565 | ; 187 » | ||
| 566 | DB 00000000B | ||
| 567 | DB 00000000B | ||
| 568 | DB 11111110B | ||
| 569 | DB 00000110B | ||
| 570 | DB 11110110B | ||
| 571 | DB 00110110B | ||
| 572 | DB 00110110B | ||
| 573 | DB 00110110B | ||
| 574 | ; 188 ¼ | ||
| 575 | DB 00110110B | ||
| 576 | DB 00110110B | ||
| 577 | DB 11110110B | ||
| 578 | DB 00000110B | ||
| 579 | DB 11111110B | ||
| 580 | DB 00000000B | ||
| 581 | DB 00000000B | ||
| 582 | DB 00000000B | ||
| 583 | ; 189 ½ | ||
| 584 | DB 00110110B | ||
| 585 | DB 00110110B | ||
| 586 | DB 00110110B | ||
| 587 | DB 00110110B | ||
| 588 | DB 11111110B | ||
| 589 | DB 00000000B | ||
| 590 | DB 00000000B | ||
| 591 | DB 00000000B | ||
| 592 | ; 190 ¾ | ||
| 593 | DB 00011000B | ||
| 594 | DB 00011000B | ||
| 595 | DB 11111000B | ||
| 596 | DB 00011000B | ||
| 597 | DB 11111000B | ||
| 598 | DB 00000000B | ||
| 599 | DB 00000000B | ||
| 600 | DB 00000000B | ||
| 601 | ; 191 ¿ | ||
| 602 | DB 00000000B | ||
| 603 | DB 00000000B | ||
| 604 | DB 00000000B | ||
| 605 | DB 00000000B | ||
| 606 | DB 11111000B | ||
| 607 | DB 00011000B | ||
| 608 | DB 00011000B | ||
| 609 | DB 00011000B | ||
| 610 | ; 192 À | ||
| 611 | DB 00011000B | ||
| 612 | DB 00011000B | ||
| 613 | DB 00011000B | ||
| 614 | DB 00011000B | ||
| 615 | DB 00011111B | ||
| 616 | DB 00000000B | ||
| 617 | DB 00000000B | ||
| 618 | DB 00000000B | ||
| 619 | ; 193 Á | ||
| 620 | DB 00011000B | ||
| 621 | DB 00011000B | ||
| 622 | DB 00011000B | ||
| 623 | DB 00011000B | ||
| 624 | DB 11111111B | ||
| 625 | DB 00000000B | ||
| 626 | DB 00000000B | ||
| 627 | DB 00000000B | ||
| 628 | ; 194 Â | ||
| 629 | DB 00000000B | ||
| 630 | DB 00000000B | ||
| 631 | DB 00000000B | ||
| 632 | DB 00000000B | ||
| 633 | DB 11111111B | ||
| 634 | DB 00011000B | ||
| 635 | DB 00011000B | ||
| 636 | DB 00011000B | ||
| 637 | ; 195 Ã | ||
| 638 | DB 00011000B | ||
| 639 | DB 00011000B | ||
| 640 | DB 00011000B | ||
| 641 | DB 00011000B | ||
| 642 | DB 00011111B | ||
| 643 | DB 00011000B | ||
| 644 | DB 00011000B | ||
| 645 | DB 00011000B | ||
| 646 | ; 196 Ä | ||
| 647 | DB 00000000B | ||
| 648 | DB 00000000B | ||
| 649 | DB 00000000B | ||
| 650 | DB 00000000B | ||
| 651 | DB 11111111B | ||
| 652 | DB 00000000B | ||
| 653 | DB 00000000B | ||
| 654 | DB 00000000B | ||
| 655 | ; 197 Å | ||
| 656 | DB 00011000B | ||
| 657 | DB 00011000B | ||
| 658 | DB 00011000B | ||
| 659 | DB 00011000B | ||
| 660 | DB 11111111B | ||
| 661 | DB 00011000B | ||
| 662 | DB 00011000B | ||
| 663 | DB 00011000B | ||
| 664 | ; 198 Æ | ||
| 665 | DB 00011000B | ||
| 666 | DB 00011000B | ||
| 667 | DB 00011111B | ||
| 668 | DB 00011000B | ||
| 669 | DB 00011111B | ||
| 670 | DB 00011000B | ||
| 671 | DB 00011000B | ||
| 672 | DB 00011000B | ||
| 673 | ; 199 Ç | ||
| 674 | DB 00110110B | ||
| 675 | DB 00110110B | ||
| 676 | DB 00110110B | ||
| 677 | DB 00110110B | ||
| 678 | DB 00110111B | ||
| 679 | DB 00110110B | ||
| 680 | DB 00110110B | ||
| 681 | DB 00110110B | ||
| 682 | ; 200 È | ||
| 683 | DB 00110110B | ||
| 684 | DB 00110110B | ||
| 685 | DB 00110111B | ||
| 686 | DB 00110000B | ||
| 687 | DB 00111111B | ||
| 688 | DB 00000000B | ||
| 689 | DB 00000000B | ||
| 690 | DB 00000000B | ||
| 691 | ; 201 É | ||
| 692 | DB 00000000B | ||
| 693 | DB 00000000B | ||
| 694 | DB 00111111B | ||
| 695 | DB 00110000B | ||
| 696 | DB 00110111B | ||
| 697 | DB 00110110B | ||
| 698 | DB 00110110B | ||
| 699 | DB 00110110B | ||
| 700 | ; 202 Ê | ||
| 701 | DB 00110110B | ||
| 702 | DB 00110110B | ||
| 703 | DB 11110111B | ||
| 704 | DB 00000000B | ||
| 705 | DB 11111111B | ||
| 706 | DB 00000000B | ||
| 707 | DB 00000000B | ||
| 708 | DB 00000000B | ||
| 709 | ; 203 Ë | ||
| 710 | DB 00000000B | ||
| 711 | DB 00000000B | ||
| 712 | DB 11111111B | ||
| 713 | DB 00000000B | ||
| 714 | DB 11110111B | ||
| 715 | DB 00110110B | ||
| 716 | DB 00110110B | ||
| 717 | DB 00110110B | ||
| 718 | ; 204 Ì | ||
| 719 | DB 00110110B | ||
| 720 | DB 00110110B | ||
| 721 | DB 00110111B | ||
| 722 | DB 00110000B | ||
| 723 | DB 00110111B | ||
| 724 | DB 00110110B | ||
| 725 | DB 00110110B | ||
| 726 | DB 00110110B | ||
| 727 | ; 205 Í | ||
| 728 | DB 00000000B | ||
| 729 | DB 00000000B | ||
| 730 | DB 11111111B | ||
| 731 | DB 00000000B | ||
| 732 | DB 11111111B | ||
| 733 | DB 00000000B | ||
| 734 | DB 00000000B | ||
| 735 | DB 00000000B | ||
| 736 | ; 206 Î | ||
| 737 | DB 00110110B | ||
| 738 | DB 00110110B | ||
| 739 | DB 11110111B | ||
| 740 | DB 00000000B | ||
| 741 | DB 11110111B | ||
| 742 | DB 00110110B | ||
| 743 | DB 00110110B | ||
| 744 | DB 00110110B | ||
| 745 | ; 207 Ï | ||
| 746 | DB 00011000B | ||
| 747 | DB 00011000B | ||
| 748 | DB 11111111B | ||
| 749 | DB 00000000B | ||
| 750 | DB 11111111B | ||
| 751 | DB 00000000B | ||
| 752 | DB 00000000B | ||
| 753 | DB 00000000B | ||
| 754 | ; 208 Ð | ||
| 755 | DB 00110110B | ||
| 756 | DB 00110110B | ||
| 757 | DB 00110110B | ||
| 758 | DB 00110110B | ||
| 759 | DB 11111111B | ||
| 760 | DB 00000000B | ||
| 761 | DB 00000000B | ||
| 762 | DB 00000000B | ||
| 763 | ; 209 Ñ | ||
| 764 | DB 00000000B | ||
| 765 | DB 00000000B | ||
| 766 | DB 11111111B | ||
| 767 | DB 00000000B | ||
| 768 | DB 11111111B | ||
| 769 | DB 00011000B | ||
| 770 | DB 00011000B | ||
| 771 | DB 00011000B | ||
| 772 | ; 210 Ò | ||
| 773 | DB 00000000B | ||
| 774 | DB 00000000B | ||
| 775 | DB 00000000B | ||
| 776 | DB 00000000B | ||
| 777 | DB 11111111B | ||
| 778 | DB 00110110B | ||
| 779 | DB 00110110B | ||
| 780 | DB 00110110B | ||
| 781 | ; 211 Ó | ||
| 782 | DB 00110110B | ||
| 783 | DB 00110110B | ||
| 784 | DB 00110110B | ||
| 785 | DB 00110110B | ||
| 786 | DB 00111111B | ||
| 787 | DB 00000000B | ||
| 788 | DB 00000000B | ||
| 789 | DB 00000000B | ||
| 790 | ; 212 Ô | ||
| 791 | DB 00011000B | ||
| 792 | DB 00011000B | ||
| 793 | DB 00011111B | ||
| 794 | DB 00011000B | ||
| 795 | DB 00011111B | ||
| 796 | DB 00000000B | ||
| 797 | DB 00000000B | ||
| 798 | DB 00000000B | ||
| 799 | ; 213 Õ | ||
| 800 | DB 00000000B | ||
| 801 | DB 00000000B | ||
| 802 | DB 00011111B | ||
| 803 | DB 00011000B | ||
| 804 | DB 00011111B | ||
| 805 | DB 00011000B | ||
| 806 | DB 00011000B | ||
| 807 | DB 00011000B | ||
| 808 | ; 214 Ö | ||
| 809 | DB 00000000B | ||
| 810 | DB 00000000B | ||
| 811 | DB 00000000B | ||
| 812 | DB 00000000B | ||
| 813 | DB 00111111B | ||
| 814 | DB 00110110B | ||
| 815 | DB 00110110B | ||
| 816 | DB 00110110B | ||
| 817 | ; 215 × | ||
| 818 | DB 00110110B | ||
| 819 | DB 00110110B | ||
| 820 | DB 00110110B | ||
| 821 | DB 00110110B | ||
| 822 | DB 11111111B | ||
| 823 | DB 00110110B | ||
| 824 | DB 00110110B | ||
| 825 | DB 00110110B | ||
| 826 | ; 216 Ø | ||
| 827 | DB 00011000B | ||
| 828 | DB 00011000B | ||
| 829 | DB 11111111B | ||
| 830 | DB 00011000B | ||
| 831 | DB 11111111B | ||
| 832 | DB 00011000B | ||
| 833 | DB 00011000B | ||
| 834 | DB 00011000B | ||
| 835 | ; 217 Ù | ||
| 836 | DB 00011000B | ||
| 837 | DB 00011000B | ||
| 838 | DB 00011000B | ||
| 839 | DB 00011000B | ||
| 840 | DB 11111000B | ||
| 841 | DB 00000000B | ||
| 842 | DB 00000000B | ||
| 843 | DB 00000000B | ||
| 844 | ; 218 Ú | ||
| 845 | DB 00000000B | ||
| 846 | DB 00000000B | ||
| 847 | DB 00000000B | ||
| 848 | DB 00000000B | ||
| 849 | DB 00011111B | ||
| 850 | DB 00011000B | ||
| 851 | DB 00011000B | ||
| 852 | DB 00011000B | ||
| 853 | ; 219 Û | ||
| 854 | DB 11111111B | ||
| 855 | DB 11111111B | ||
| 856 | DB 11111111B | ||
| 857 | DB 11111111B | ||
| 858 | DB 11111111B | ||
| 859 | DB 11111111B | ||
| 860 | DB 11111111B | ||
| 861 | DB 11111111B | ||
| 862 | ; 220 Ü | ||
| 863 | DB 00000000B | ||
| 864 | DB 00000000B | ||
| 865 | DB 00000000B | ||
| 866 | DB 00000000B | ||
| 867 | DB 11111111B | ||
| 868 | DB 11111111B | ||
| 869 | DB 11111111B | ||
| 870 | DB 11111111B | ||
| 871 | ; 221 Ý | ||
| 872 | DB 11110000B | ||
| 873 | DB 11110000B | ||
| 874 | DB 11110000B | ||
| 875 | DB 11110000B | ||
| 876 | DB 11110000B | ||
| 877 | DB 11110000B | ||
| 878 | DB 11110000B | ||
| 879 | DB 11110000B | ||
| 880 | ; 222 Þ | ||
| 881 | DB 00001111B | ||
| 882 | DB 00001111B | ||
| 883 | DB 00001111B | ||
| 884 | DB 00001111B | ||
| 885 | DB 00001111B | ||
| 886 | DB 00001111B | ||
| 887 | DB 00001111B | ||
| 888 | DB 00001111B | ||
| 889 | ; 223 ß | ||
| 890 | DB 11111111B | ||
| 891 | DB 11111111B | ||
| 892 | DB 11111111B | ||
| 893 | DB 11111111B | ||
| 894 | DB 00000000B | ||
| 895 | DB 00000000B | ||
| 896 | DB 00000000B | ||
| 897 | DB 00000000B | ||
| 898 | ; 224 à | ||
| 899 | DB 00000000B | ||
| 900 | DB 00000000B | ||
| 901 | DB 01110110B | ||
| 902 | DB 11011100B | ||
| 903 | DB 11001000B | ||
| 904 | DB 11011100B | ||
| 905 | DB 01110110B | ||
| 906 | DB 00000000B | ||
| 907 | ; 225 á | ||
| 908 | DB 00000000B | ||
| 909 | DB 01111000B | ||
| 910 | DB 11001100B | ||
| 911 | DB 11111000B | ||
| 912 | DB 11001100B | ||
| 913 | DB 11111000B | ||
| 914 | DB 11000000B | ||
| 915 | DB 11000000B | ||
| 916 | ; 226 â | ||
| 917 | DB 00000000B | ||
| 918 | DB 11111100B | ||
| 919 | DB 11001100B | ||
| 920 | DB 11000000B | ||
| 921 | DB 11000000B | ||
| 922 | DB 11000000B | ||
| 923 | DB 11000000B | ||
| 924 | DB 00000000B | ||
| 925 | ; 227 ã | ||
| 926 | DB 00000000B | ||
| 927 | DB 11111110B | ||
| 928 | DB 01101100B | ||
| 929 | DB 01101100B | ||
| 930 | DB 01101100B | ||
| 931 | DB 01101100B | ||
| 932 | DB 01101100B | ||
| 933 | DB 00000000B | ||
| 934 | ; 228 ä | ||
| 935 | DB 11111100B | ||
| 936 | DB 11001100B | ||
| 937 | DB 01100000B | ||
| 938 | DB 00110000B | ||
| 939 | DB 01100000B | ||
| 940 | DB 11001100B | ||
| 941 | DB 11111100B | ||
| 942 | DB 00000000B | ||
| 943 | ; 229 å | ||
| 944 | DB 00000000B | ||
| 945 | DB 00000000B | ||
| 946 | DB 01111110B | ||
| 947 | DB 11011000B | ||
| 948 | DB 11011000B | ||
| 949 | DB 11011000B | ||
| 950 | DB 01110000B | ||
| 951 | DB 00000000B | ||
| 952 | ; 230 æ | ||
| 953 | DB 00000000B | ||
| 954 | DB 01100110B | ||
| 955 | DB 01100110B | ||
| 956 | DB 01100110B | ||
| 957 | DB 01100110B | ||
| 958 | DB 01111100B | ||
| 959 | DB 01100000B | ||
| 960 | DB 11000000B | ||
| 961 | ; 231 ç | ||
| 962 | DB 00000000B | ||
| 963 | DB 01110110B | ||
| 964 | DB 11011100B | ||
| 965 | DB 00011000B | ||
| 966 | DB 00011000B | ||
| 967 | DB 00011000B | ||
| 968 | DB 00011000B | ||
| 969 | DB 00000000B | ||
| 970 | ; 232 è | ||
| 971 | DB 11111100B | ||
| 972 | DB 00110000B | ||
| 973 | DB 01111000B | ||
| 974 | DB 11001100B | ||
| 975 | DB 11001100B | ||
| 976 | DB 01111000B | ||
| 977 | DB 00110000B | ||
| 978 | DB 11111100B | ||
| 979 | ; 233 é | ||
| 980 | DB 00111000B | ||
| 981 | DB 01101100B | ||
| 982 | DB 11000110B | ||
| 983 | DB 11111110B | ||
| 984 | DB 11000110B | ||
| 985 | DB 01101100B | ||
| 986 | DB 00111000B | ||
| 987 | DB 00000000B | ||
| 988 | ; 234 ê | ||
| 989 | DB 00111000B | ||
| 990 | DB 01101100B | ||
| 991 | DB 11000110B | ||
| 992 | DB 11000110B | ||
| 993 | DB 01101100B | ||
| 994 | DB 01101100B | ||
| 995 | DB 11101110B | ||
| 996 | DB 00000000B | ||
| 997 | ; 235 ë | ||
| 998 | DB 00011100B | ||
| 999 | DB 00110000B | ||
| 1000 | DB 00011000B | ||
| 1001 | DB 01111100B | ||
| 1002 | DB 11001100B | ||
| 1003 | DB 11001100B | ||
| 1004 | DB 01111000B | ||
| 1005 | DB 00000000B | ||
| 1006 | ; 236 ì | ||
| 1007 | DB 00000000B | ||
| 1008 | DB 00000000B | ||
| 1009 | DB 01111110B | ||
| 1010 | DB 11011011B | ||
| 1011 | DB 11011011B | ||
| 1012 | DB 01111110B | ||
| 1013 | DB 00000000B | ||
| 1014 | DB 00000000B | ||
| 1015 | ; 237 í | ||
| 1016 | DB 00000110B | ||
| 1017 | DB 00001100B | ||
| 1018 | DB 01111110B | ||
| 1019 | DB 11011011B | ||
| 1020 | DB 11011011B | ||
| 1021 | DB 01111110B | ||
| 1022 | DB 01100000B | ||
| 1023 | DB 11000000B | ||
| 1024 | ; 238 î | ||
| 1025 | DB 00111000B | ||
| 1026 | DB 01100000B | ||
| 1027 | DB 11000000B | ||
| 1028 | DB 11111000B | ||
| 1029 | DB 11000000B | ||
| 1030 | DB 01100000B | ||
| 1031 | DB 00111000B | ||
| 1032 | DB 00000000B | ||
| 1033 | ; 239 ï | ||
| 1034 | DB 01111000B | ||
| 1035 | DB 11001100B | ||
| 1036 | DB 11001100B | ||
| 1037 | DB 11001100B | ||
| 1038 | DB 11001100B | ||
| 1039 | DB 11001100B | ||
| 1040 | DB 11001100B | ||
| 1041 | DB 00000000B | ||
| 1042 | ; 240 ð | ||
| 1043 | DB 00000000B | ||
| 1044 | DB 11111100B | ||
| 1045 | DB 00000000B | ||
| 1046 | DB 11111100B | ||
| 1047 | DB 00000000B | ||
| 1048 | DB 11111100B | ||
| 1049 | DB 00000000B | ||
| 1050 | DB 00000000B | ||
| 1051 | ; 241 ñ | ||
| 1052 | DB 00110000B | ||
| 1053 | DB 00110000B | ||
| 1054 | DB 11111100B | ||
| 1055 | DB 00110000B | ||
| 1056 | DB 00110000B | ||
| 1057 | DB 00000000B | ||
| 1058 | DB 11111100B | ||
| 1059 | DB 00000000B | ||
| 1060 | ; 242 ò | ||
| 1061 | DB 01100000B | ||
| 1062 | DB 00110000B | ||
| 1063 | DB 00011000B | ||
| 1064 | DB 00110000B | ||
| 1065 | DB 01100000B | ||
| 1066 | DB 00000000B | ||
| 1067 | DB 11111100B | ||
| 1068 | DB 00000000B | ||
| 1069 | ; 243 ó | ||
| 1070 | DB 00011000B | ||
| 1071 | DB 00110000B | ||
| 1072 | DB 01100000B | ||
| 1073 | DB 00110000B | ||
| 1074 | DB 00011000B | ||
| 1075 | DB 00000000B | ||
| 1076 | DB 11111100B | ||
| 1077 | DB 00000000B | ||
| 1078 | ; 244 ô | ||
| 1079 | DB 00001110B | ||
| 1080 | DB 00011011B | ||
| 1081 | DB 00011011B | ||
| 1082 | DB 00011000B | ||
| 1083 | DB 00011000B | ||
| 1084 | DB 00011000B | ||
| 1085 | DB 00011000B | ||
| 1086 | DB 00011000B | ||
| 1087 | ; 245 õ | ||
| 1088 | DB 00011000B | ||
| 1089 | DB 00011000B | ||
| 1090 | DB 00011000B | ||
| 1091 | DB 00011000B | ||
| 1092 | DB 00011000B | ||
| 1093 | DB 11011000B | ||
| 1094 | DB 11011000B | ||
| 1095 | DB 01110000B | ||
| 1096 | ; 246 ö | ||
| 1097 | DB 00110000B | ||
| 1098 | DB 00110000B | ||
| 1099 | DB 00000000B | ||
| 1100 | DB 11111100B | ||
| 1101 | DB 00000000B | ||
| 1102 | DB 00110000B | ||
| 1103 | DB 00110000B | ||
| 1104 | DB 00000000B | ||
| 1105 | ; 247 ÷ | ||
| 1106 | DB 00000000B | ||
| 1107 | DB 01110110B | ||
| 1108 | DB 11011100B | ||
| 1109 | DB 00000000B | ||
| 1110 | DB 01110110B | ||
| 1111 | DB 11011100B | ||
| 1112 | DB 00000000B | ||
| 1113 | DB 00000000B | ||
| 1114 | ; 248 ø | ||
| 1115 | DB 00111000B | ||
| 1116 | DB 01101100B | ||
| 1117 | DB 01101100B | ||
| 1118 | DB 00111000B | ||
| 1119 | DB 00000000B | ||
| 1120 | DB 00000000B | ||
| 1121 | DB 00000000B | ||
| 1122 | DB 00000000B | ||
| 1123 | ; 249 ù | ||
| 1124 | DB 00000000B | ||
| 1125 | DB 00000000B | ||
| 1126 | DB 00000000B | ||
| 1127 | DB 00011000B | ||
| 1128 | DB 00011000B | ||
| 1129 | DB 00000000B | ||
| 1130 | DB 00000000B | ||
| 1131 | DB 00000000B | ||
| 1132 | ; 250 ú | ||
| 1133 | DB 00000000B | ||
| 1134 | DB 00000000B | ||
| 1135 | DB 00000000B | ||
| 1136 | DB 00011000B | ||
| 1137 | DB 00000000B | ||
| 1138 | DB 00000000B | ||
| 1139 | DB 00000000B | ||
| 1140 | DB 00000000B | ||
| 1141 | ; 251 û | ||
| 1142 | DB 00001111B | ||
| 1143 | DB 00001100B | ||
| 1144 | DB 00001100B | ||
| 1145 | DB 00001100B | ||
| 1146 | DB 11101100B | ||
| 1147 | DB 01101100B | ||
| 1148 | DB 00111100B | ||
| 1149 | DB 00011100B | ||
| 1150 | ; 252 ü | ||
| 1151 | DB 01111000B | ||
| 1152 | DB 01101100B | ||
| 1153 | DB 01101100B | ||
| 1154 | DB 01101100B | ||
| 1155 | DB 01101100B | ||
| 1156 | DB 00000000B | ||
| 1157 | DB 00000000B | ||
| 1158 | DB 00000000B | ||
| 1159 | ; 253 ý | ||
| 1160 | DB 01110000B | ||
| 1161 | DB 00011000B | ||
| 1162 | DB 00110000B | ||
| 1163 | DB 01100000B | ||
| 1164 | DB 01111000B | ||
| 1165 | DB 00000000B | ||
| 1166 | DB 00000000B | ||
| 1167 | DB 00000000B | ||
| 1168 | ; 254 þ | ||
| 1169 | DB 00000000B | ||
| 1170 | DB 00000000B | ||
| 1171 | DB 00111100B | ||
| 1172 | DB 00111100B | ||
| 1173 | DB 00111100B | ||
| 1174 | DB 00111100B | ||
| 1175 | DB 00000000B | ||
| 1176 | DB 00000000B | ||
| 1177 | ; 255 ÿ | ||
| 1178 | DB 00000000B | ||
| 1179 | DB 00000000B | ||
| 1180 | DB 00000000B | ||
| 1181 | DB 00000000B | ||
| 1182 | DB 00000000B | ||
| 1183 | DB 00000000B | ||
| 1184 | DB 00000000B | ||
| 1185 | DB 00000000B | ||
| 1186 | ; | ||
| 1187 | DW 863 ;TABLE ID | ||
| 1188 | ; include graftcfm.inc | ||
| 1189 | DB "Can. French",0 ;LANGUAGE NAME, IN ASCIIZ FORMAT | ||
| 1190 | ;(the above "DB" is an example of the ENGLISH version of the above include file) | ||
| 1191 | IF ($-CSEG) MOD 16 ;IF NOT ALREADY ON 16 BYTE BOUNDARY | ||
| 1192 | DB (16-(($-CSEG) MOD 16)) DUP(0) ;ADD PADDING TO GET TO 16 BYTE BOUNDARY | ||
| 1193 | ENDIF | ||
| 1194 | CSEG ENDS | ||
| 1195 | END | ||
| 1196 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABHAN.ASM b/v4.0/src/CMD/GRAFTABL/GRTABHAN.ASM new file mode 100644 index 0000000..d94ede4 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABHAN.ASM | |||
| @@ -0,0 +1,223 @@ | |||
| 1 | PAGE 90,132 ;A2 | ||
| 2 | TITLE GRTABHAN - INTERRUPT HANDLER FOR INT 2FH, GRAFTABL LOADED | ||
| 3 | ;****************** START OF SPECIFICATIONS ***************************** | ||
| 4 | ; MODULE NAME: GRTABHAN.SAL | ||
| 5 | |||
| 6 | ; DESCRIPTIVE NAME: For GRAFTABL, this is the Multiplexor Interrupt Handler | ||
| 7 | |||
| 8 | ;FUNCTION: This module contains the Interrupt Handler that will be hooked | ||
| 9 | ; into the INT 2FH vector. When invoked with AL=0, it responds | ||
| 10 | ; that GRAFTABL is loaded by changing AL to contain hex FF. If | ||
| 11 | ; option AL=1 specified, it puts into the vector at DS:[BX] the | ||
| 12 | ; pointer to the previously loaded table. | ||
| 13 | |||
| 14 | ; NOTES: | ||
| 15 | ; This module should be processed with the SALUT preprocessor: | ||
| 16 | |||
| 17 | ; SALUT GRTABHAN | ||
| 18 | |||
| 19 | ; To assemble these modules, the alphabetical or sequential | ||
| 20 | ; ordering of segments may be used. | ||
| 21 | |||
| 22 | ; For LINK instructions, refer to the PROLOG of the main module, | ||
| 23 | ; GRTAB.SAL. This module, containing a resident interrupt handler, | ||
| 24 | ; should be first in the list of .OBJ to be linked. | ||
| 25 | |||
| 26 | ; At the time this handler code is made resident, the loader, GRTAB, | ||
| 27 | ; made certain instruction modifications. PATCH_OFF and PATCH_SEG | ||
| 28 | ; are the immediate word fields of two move word immediate to | ||
| 29 | ; storage type of instructions. The loaded Revised these to | ||
| 30 | ; contain the offset and the segid respectively of where the | ||
| 31 | ; resident font table would be that is to stay resident. | ||
| 32 | |||
| 33 | ; Also at load time, GRTAB made another instruction modification by | ||
| 34 | ; changing the JUMP DUMMY instruction's DWORD immediate field to | ||
| 35 | ; contain the vector pointing to the previous owner of the | ||
| 36 | ; Multiplexor Interrupt Vector. | ||
| 37 | |||
| 38 | ; ENTRY POINT: There are two entry points: one, from DOS at 100H, is | ||
| 39 | ; END_PSP. The jump instruction there has nothing to do with | ||
| 40 | ; the interrupt handler, but merely jumps to the GRTAB module to | ||
| 41 | ; what is effectively the real DOS entry point, ENTRY_POINT. | ||
| 42 | |||
| 43 | ; The other is where the interrupt vector will be set to point, | ||
| 44 | ; the entry point to the interrupt handler code: HANDLER. | ||
| 45 | |||
| 46 | ; For the rest of this module description, the HANDLER entry | ||
| 47 | ; point conditions are being described. | ||
| 48 | |||
| 49 | ; INPUT: AH = Multiplexor Number. I do nothing if this is not my own. | ||
| 50 | ; The value of the Multiplexor Number is defined in the EQU: | ||
| 51 | ; MY_MULTIPLEXOR_NUMBER as being the value, B0H. | ||
| 52 | ; AL = Function Request. There are two functions recognized: | ||
| 53 | ; 0 = "GET INSTALLED STATE" | ||
| 54 | ; 1 = "WHERE ARE YOU?" | ||
| 55 | ; and DS:BX points to vector to receive pointer | ||
| 56 | ; to the previously installed GRAFTABL table. | ||
| 57 | ; If Function request is not '1', it is assumed to be '0'. | ||
| 58 | |||
| 59 | ; EXIT-NORMAL: If the proper multiplexor number is presented, respond with | ||
| 60 | ; AH = 0FFH, otherwise, pass control to previous owner | ||
| 61 | ; of this interrupt. | ||
| 62 | |||
| 63 | ; EXIT-ERROR: None | ||
| 64 | |||
| 65 | ; INTERNAL REFERENCES: | ||
| 66 | ; ROUTINES: none | ||
| 67 | |||
| 68 | ; DATA AREAS: | ||
| 69 | ; PUBLIC symbols: | ||
| 70 | ; PREV_OWN Far jump direct to previous owner of interrupt 2FH. | ||
| 71 | ; PATCH_OFF Offset portion of vector pointing to loaded char cable. | ||
| 72 | ; PATCH_SEG Segment portion of vector pointing to loaded char table. | ||
| 73 | ; HANDLER Entry point pointed to by the vector at interrupt 2FH. | ||
| 74 | ; HANDLER_SIZE Location of the end of the resident code portion of the | ||
| 75 | ; interrupt 2FH handler, including the 60H bytes left of | ||
| 76 | ; the PSP, so this offset is relative to the start of the PSP | ||
| 77 | ; after the code has been relocated downward into the PSP. | ||
| 78 | ; MPEXNUM The byte containing the value defined | ||
| 79 | ; as being the id checked for when INT 2FH is called used | ||
| 80 | ; to identify this GRAFTABL member of the multiplexor chain. | ||
| 81 | ; | ||
| 82 | |||
| 83 | ; EXTERNAL REFERENCES: | ||
| 84 | ; ROUTINES: none | ||
| 85 | |||
| 86 | ; DATA AREAS: none | ||
| 87 | |||
| 88 | ;****************** END OF SPECIFICATIONS ***************************** | ||
| 89 | IF1 | ||
| 90 | %OUT COMPONENT=GRAFTABL, MODULE=GRTABHAN.SAL... | ||
| 91 | ENDIF | ||
| 92 | ; $SALUT (4,21,25,41) | ||
| 93 | HEADER <MACRO DEFINITIONS, STRUC DEFINITIONS, EQUATES> | ||
| 94 | INCLUDE PATHMAC.INC ;AN006; | ||
| 95 | HEADER MACRO TEXT | ||
| 96 | .XLIST | ||
| 97 | SUBTTL TEXT | ||
| 98 | .LIST | ||
| 99 | PAGE | ||
| 100 | ENDM | ||
| 101 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 102 | VECTOR STRUC | ||
| 103 | VECOFF DW ? ;OFFSET PORTION OF VECTOR POINTER | ||
| 104 | VECSEG DW ? ;SEGMENT PORTION OF VECTOR POINTER | ||
| 105 | VECTOR ENDS | ||
| 106 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 107 | ; DEFINITION OF FUNCTIONS TO BE REQUESTED OF INT 2FH | ||
| 108 | GET_INST_STATE EQU 0 ;FUNCTION = "GET INSTALLED STATE" | ||
| 109 | WHERE_R_U EQU 1 ;FUNCTION = "WHERE ARE YOU?" | ||
| 110 | ; REQUESTS VECTOR OF LOADED TABLE BE | ||
| 111 | ; PUT IN VECTOR POINTED TO BY DS:[BX] | ||
| 112 | RES_FUNC EQU 0F8H ;RESERVED FUNCTIONS IN RANGE OF F8 TO FF, IGNORE | ||
| 113 | |||
| 114 | ; OTHER EQUATES | ||
| 115 | PATCHED EQU 0 ;DUMMY VALUE, TO BE REPLACED AT EXECUTION TIME | ||
| 116 | INSTALLED EQU 0FFH ;RESPONSE, INDICATES THIS HANDLER IS INSTALLED | ||
| 117 | MY_MULTIPLEX_NUMBER EQU 0B0H ;THE UNIQUE IDENTIFICATION NUMBER ASSIGNED | ||
| 118 | ; TO "GRAFTABL" FOR INT 2FH | ||
| 119 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 120 | DUMMY_SEG SEGMENT AT 0 | ||
| 121 | DUMMY LABEL FAR ;NOTHING HERE REALLY, ONLY | ||
| 122 | ; USED TO MAKE MASM GENERATE A FAR CALL DIRECT | ||
| 123 | ; THE ABSOLUTE VECTOR IN THAT INS WILL BE PATCHED | ||
| 124 | |||
| 125 | DUMMY_SEG ENDS | ||
| 126 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 127 | HEADER <DOS ENTRY POINT> | ||
| 128 | CSEG SEGMENT PARA PUBLIC | ||
| 129 | ;THIS SEGMENT IS ALIGNED ON PARA SINCE IT IS THE START OF THE LOAD MODULE, | ||
| 130 | ; WHICH IS ON A PARA BOUNDARY ANYWAY. THIS MODULE IS PADDED AT THE END | ||
| 131 | ; TO A MULTIPLE OF 16 BYTES, SO THE NEXT SEGMENT WILL ALSO START | ||
| 132 | ; ON A PARA BOUNDARY, WHICH WILL BE THE US CHARACTER SET TABLE. | ||
| 133 | |||
| 134 | ASSUME CS:CSEG | ||
| 135 | |||
| 136 | EXTRN ENTRY_POINT:NEAR | ||
| 137 | |||
| 138 | ORG 60H | ||
| 139 | PUBLIC MOV_DEST | ||
| 140 | MOV_DEST LABEL BYTE ;WHERE THIS INTERRUPT HANDLER | ||
| 141 | ; WILL BE MOVED TO, FOLLOWED BY THE 1K TABLE. | ||
| 142 | ORG 100H | ||
| 143 | PUBLIC END_PSP ;BEGINNING HERE, THIS WILL BE MOVED TO "MOV_DEST" | ||
| 144 | END_PSP EQU $ ;ENTRY POINT FROM DOS | ||
| 145 | JMP ENTRY_POINT ;INIT THE INT HANDLER, SET UP CHAR TABLES | ||
| 146 | ; THIS JUMP TARGET IS DEFINED | ||
| 147 | ; IN THE GRTAB.SAL MODULE | ||
| 148 | ; AREAS TO BE PATCHED WITHIN THIS MODULE | ||
| 149 | |||
| 150 | PUBLIC PREV_OWN ;PATCH IS IN JMP INSTR TO PREVIOUS OWNER | ||
| 151 | ;THE ABOVE PATCH IS FIXED BY THE GRTAB.SAL MODULE, JUST BEFORE ALTERING THE 2FH VECTOR | ||
| 152 | |||
| 153 | PUBLIC PATCH_OFF ;OFFSET PORTION OF VECTOR POINTING TO LOADED CHAR TABLE | ||
| 154 | PUBLIC PATCH_SEG ;SEGMENT PORTION OF VECTOR POINTING TO LOADED CHAR TABLE | ||
| 155 | ;THE ABOVE TWO PATCHES ARE FIXED BY THE GRTAB.SAL MODULE, AT THE VERY BEGINNING. | ||
| 156 | |||
| 157 | ;THIS NEXT ONE BYTE FIELD SHOULD BE KEPT AS THE BYTE JUST PREVIOUS TO THE | ||
| 158 | ;INTERRUPT HANDLER ENTRY POINT AT "HANDLER". | ||
| 159 | PUBLIC MPEXNUM | ||
| 160 | MPEXNUM DB MY_MULTIPLEX_NUMBER ;PATCHING THIS ONE BYTE WILL CHANGE FOR ALL THE VALUE | ||
| 161 | HEADER <MULTIPLEXOR INTERRUPT HANDLER> | ||
| 162 | ;CONDITIONS OF REGS AT ENTRY TO HANDLER: | ||
| 163 | ;INPUT: AH = MULTIPLEXOR NUMBER. I DO NOTHING IF THIS IS NOT MY OWN. | ||
| 164 | ; AL = FUNCTION REQUEST. THERE ARE TWO FUNCTIONS RECOGNIZED: | ||
| 165 | ; 0 = "GET INSTALLED STATE" | ||
| 166 | ; 1 = "WHERE ARE YOU?" | ||
| 167 | ; AND DS:BX POINTS TO VECTOR TO RECEIVE POINTER | ||
| 168 | ; TO THE PREVIOUSLY INSTALLED GRAFTABL TABLE. | ||
| 169 | ; IF FUNCTION REQUEST IS NOT '1', IT IS ASSUMED TO BE '0'. | ||
| 170 | |||
| 171 | PUBLIC HANDLER | ||
| 172 | HANDLER PROC FAR ;INTERRUPT HANDLER ENTRY POINT | ||
| 173 | ; $SALUT (4,3,9,41) | ||
| 174 | PATHLABL GRTABHAN ;AN006; | ||
| 175 | CMP AH,MPEXNUM ;IS THIS MULTIPLEXOR REQUEST IS FOR ME? | ||
| 176 | ; $IF E ;IF MY MULTIPLEX NUMBER IS CALLED | ||
| 177 | JNE $$IF1 | ||
| 178 | CMP AL,RES_FUNC ;IF IN RANGE F8-FF, DO NOTHING, JUST RETURN | ||
| 179 | ; $IF B | ||
| 180 | JNB $$IF2 | ||
| 181 | CMP AL,WHERE_R_U ;IF REQUEST FOR "WHERE ARE YOU?" | ||
| 182 | ; $IF E | ||
| 183 | JNE $$IF3 | ||
| 184 | ;FOR THIS REQUEST, DS:BX POINTS TO A VECTOR | ||
| 185 | ; WHICH IS TO RECEIVE THE POINTER TO | ||
| 186 | ; WHERE THE ORIGINAL TABLE WAS LOADED | ||
| 187 | |||
| 188 | ;PASS OFFSET OF WHERE TABLE IS | ||
| 189 | MOV [BX].VECOFF,PATCHED ; TO FIRST WORD OF RESPONSE AREA | ||
| 190 | PATCH_OFF EQU WORD PTR $-2 ;THE ACTUAL VALUE OF THE IMMEDIATE IS PATCHED IN | ||
| 191 | |||
| 192 | ;PASS SEGID OF WHERE TABLE IS | ||
| 193 | MOV [BX].VECSEG,PATCHED ; TO SECOND WORD OF RESPONSE AREA | ||
| 194 | PATCH_SEG EQU WORD PTR $-2 ;THE ACTUAL VALUE OF THE IMMEDIATE IS PATCHED IN | ||
| 195 | ; $ENDIF | ||
| 196 | $$IF3: | ||
| 197 | MOV AL,INSTALLED ;SAY "INSTALLED" | ||
| 198 | ; $ENDIF | ||
| 199 | $$IF2: | ||
| 200 | IRET ;RETURN TO INTERRUPT INVOKER | ||
| 201 | ; $ENDIF | ||
| 202 | $$IF1: | ||
| 203 | ;SINCE THE MULTIPLEX NUMBER IS FOR SOMEBODY ELSE, PASS THE CALL ON TO PREVIOUS OWNER | ||
| 204 | JMPREV: ;REFERENCED WHEN PATCHING OUT "DUMMY" | ||
| 205 | JMP DUMMY ;CHAIN ON TO THE PREVIOUS OWNER | ||
| 206 | ; OF THE VECTOR AT 1FH*4. | ||
| 207 | ; USAGE OF "DUMMY" HERE IS JUST A PLACE-HLDER | ||
| 208 | ; WHICH WILL BE REPLACED DURING EXECUTION OF LOADER | ||
| 209 | PATHLABL GRTABHAN ;AN006; | ||
| 210 | ;================================================================= | ||
| 211 | HEADER <POINTERS TO PREVIOUS OWNER, INSTRUCTION MODIFICATION> | ||
| 212 | ; $SALUT (4,14,20,41) | ||
| 213 | PREV_OWN EQU DWORD PTR JMPREV+1 ;REFERENCED DURING REPLACEMENT OF "HANDLER" | ||
| 214 | ; IN THE ABOVE JMP INSTRUCTION | ||
| 215 | HANDLER ENDP | ||
| 216 | IF ($-CSEG) MOD 16 ;IF NOT ALREADY ON 16 BYTE BOUNDARY | ||
| 217 | ORG ($-CSEG)+16-(($-CSEG) MOD 16) ;ADD PADDING TO GET TO 16 BYTE BOUNDARY | ||
| 218 | ENDIF | ||
| 219 | HANDLER_SIZE EQU ($-CSEG)-(END_PSP-CSEG) ;MARK THE END OF RESIDENT EXECUTABLE ;AN000; | ||
| 220 | PUBLIC HANDLER_SIZE ; PORTION, NOT INCLUDING THE PSP ;AN000; | ||
| 221 | CSEG ENDS | ||
| 222 | END END_PSP | ||
| 223 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABML.ASM b/v4.0/src/CMD/GRAFTABL/GRTABML.ASM new file mode 100644 index 0000000..123e9c3 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABML.ASM | |||
| @@ -0,0 +1,1187 @@ | |||
| 1 | PAGE 90,132 ;AN000;A2 | ||
| 2 | TITLE GRTABML - MULTI-LINGUAL EUROPEAN STANDARD ;AN000; | ||
| 3 | ;This module is to be linked with the OBJ of GRTAB.SAL. Refer to the | ||
| 4 | ;Prolog of that module for more complete description. | ||
| 5 | |||
| 6 | ;This module contains the binary description of the pixels that are used | ||
| 7 | ;in graphics mode to define the multi-lingual character set when loaded to | ||
| 8 | ;interrupt 1FH by the GRAFTABL command in DOS 3.3. | ||
| 9 | IF1 ;AN000; | ||
| 10 | %OUT GRTABML.ASM... ;AN000; | ||
| 11 | ELSE ;AN000; | ||
| 12 | ; %OUT GRTABML.ASM... | ||
| 13 | ENDIF ;AN000; | ||
| 14 | CSEG SEGMENT PARA PUBLIC ;AN000; | ||
| 15 | TABLEML EQU THIS BYTE ;AN000; | ||
| 16 | PUBLIC TABLEML ;AN000; | ||
| 17 | |||
| 18 | ;(note: the display of the character to the right of the decimal number | ||
| 19 | ;value of this location is not necessarily the graphic that these pixels | ||
| 20 | ;will produce. The displayed character is from the USA character set, and | ||
| 21 | ;does not represent the language character set generated by this table.) | ||
| 22 | |||
| 23 | ;These fonts are as defined in the Multi-lingual Code Page = 850. | ||
| 24 | |||
| 25 | ; 128 € | ||
| 26 | DB 00000000B ;AN000; | ||
| 27 | DB 00111110B ;AN000; | ||
| 28 | DB 01100000B ;AN000; | ||
| 29 | DB 01100000B ;AN000; | ||
| 30 | DB 01100000B ;AN000; | ||
| 31 | DB 00111110B ;AN000; | ||
| 32 | DB 00001100B ;AN000; | ||
| 33 | DB 00111110B ;AN000; | ||
| 34 | ; 129 | ||
| 35 | DB 00000000B ;AN000; | ||
| 36 | DB 11001100B ;AN000; | ||
| 37 | DB 00000000B ;AN000; | ||
| 38 | DB 11001100B ;AN000; | ||
| 39 | DB 11001100B ;AN000; | ||
| 40 | DB 11001100B ;AN000; | ||
| 41 | DB 01110110B ;AN000; | ||
| 42 | DB 00000000B ;AN000; | ||
| 43 | .XLIST ;AN000; | ||
| 44 | ; 130 ‚ | ||
| 45 | DB 00000000B ;AN000; | ||
| 46 | DB 00011110B ;AN000; | ||
| 47 | DB 00000000B ;AN000; | ||
| 48 | DB 01111100B ;AN000; | ||
| 49 | DB 11000110B ;AN000; | ||
| 50 | DB 11111100B ;AN000; | ||
| 51 | DB 01111110B ;AN000; | ||
| 52 | DB 00000000B ;AN000; | ||
| 53 | ; 131 ƒ | ||
| 54 | DB 00000000B ;AN000; | ||
| 55 | DB 01111100B ;AN000; | ||
| 56 | DB 11000110B ;AN000; | ||
| 57 | DB 01111100B ;AN000; | ||
| 58 | DB 00011110B ;AN000; | ||
| 59 | DB 01100110B ;AN000; | ||
| 60 | DB 00111011B ;AN000; | ||
| 61 | DB 00000000B ;AN000; | ||
| 62 | ; 132 „ | ||
| 63 | DB 00000000B ;AN000; | ||
| 64 | DB 01100110B ;AN000; | ||
| 65 | DB 00000000B ;AN000; | ||
| 66 | DB 01111100B ;AN000; | ||
| 67 | DB 00011110B ;AN000; | ||
| 68 | DB 01100110B ;AN000; | ||
| 69 | DB 00111011B ;AN000; | ||
| 70 | DB 00000000B ;AN000; | ||
| 71 | ; 133 … | ||
| 72 | DB 00000000B ;AN000; | ||
| 73 | DB 11110000B ;AN000; | ||
| 74 | DB 00000000B ;AN000; | ||
| 75 | DB 01111100B ;AN000; | ||
| 76 | DB 00011110B ;AN000; | ||
| 77 | DB 01100110B ;AN000; | ||
| 78 | DB 00111011B ;AN000; | ||
| 79 | DB 00000000B ;AN000; | ||
| 80 | ; 134 † | ||
| 81 | DB 00111000B ;AN000; | ||
| 82 | DB 01101100B ;AN000; | ||
| 83 | DB 00111000B ;AN000; | ||
| 84 | DB 01111100B ;AN000; | ||
| 85 | DB 00011110B ;AN000; | ||
| 86 | DB 01100110B ;AN000; | ||
| 87 | DB 00111011B ;AN000; | ||
| 88 | DB 00000000B ;AN000; | ||
| 89 | ; 135 ‡ | ||
| 90 | DB 00000000B ;AN000; | ||
| 91 | DB 00000000B ;AN000; | ||
| 92 | DB 00111110B ;AN000; | ||
| 93 | DB 01100000B ;AN000; | ||
| 94 | DB 01100000B ;AN000; | ||
| 95 | DB 00111110B ;AN000; | ||
| 96 | DB 00001100B ;AN000; | ||
| 97 | DB 00111110B ;AN000; | ||
| 98 | ; 136 ˆ | ||
| 99 | DB 00000000B ;AN000; | ||
| 100 | DB 01111100B ;AN000; | ||
| 101 | DB 11000110B ;AN000; | ||
| 102 | DB 01111100B ;AN000; | ||
| 103 | DB 11000110B ;AN000; | ||
| 104 | DB 11111100B ;AN000; | ||
| 105 | DB 01111110B ;AN000; | ||
| 106 | DB 00000000B ;AN000; | ||
| 107 | ; 137 ‰ | ||
| 108 | DB 00000000B ;AN000; | ||
| 109 | DB 11001100B ;AN000; | ||
| 110 | DB 00000000B ;AN000; | ||
| 111 | DB 01111100B ;AN000; | ||
| 112 | DB 11000110B ;AN000; | ||
| 113 | DB 11111100B ;AN000; | ||
| 114 | DB 01111110B ;AN000; | ||
| 115 | DB 00000000B ;AN000; | ||
| 116 | ; 138 Š | ||
| 117 | DB 00000000B ;AN000; | ||
| 118 | DB 11110000B ;AN000; | ||
| 119 | DB 00000000B ;AN000; | ||
| 120 | DB 01111100B ;AN000; | ||
| 121 | DB 11000110B ;AN000; | ||
| 122 | DB 11111100B ;AN000; | ||
| 123 | DB 01111110B ;AN000; | ||
| 124 | DB 00000000B ;AN000; | ||
| 125 | ; 139 ‹ | ||
| 126 | DB 00000000B ;AN000; | ||
| 127 | DB 01100110B ;AN000; | ||
| 128 | DB 00000000B ;AN000; | ||
| 129 | DB 00111000B ;AN000; | ||
| 130 | DB 00011000B ;AN000; | ||
| 131 | DB 00011000B ;AN000; | ||
| 132 | DB 00111100B ;AN000; | ||
| 133 | DB 00000000B ;AN000; | ||
| 134 | ; 140 Œ | ||
| 135 | DB 00000000B ;AN000; | ||
| 136 | DB 00111100B ;AN000; | ||
| 137 | DB 01100110B ;AN000; | ||
| 138 | DB 00011000B ;AN000; | ||
| 139 | DB 00011000B ;AN000; | ||
| 140 | DB 00011000B ;AN000; | ||
| 141 | DB 00111100B ;AN000; | ||
| 142 | DB 00000000B ;AN000; | ||
| 143 | ; 141 | ||
| 144 | DB 00000000B ;AN000; | ||
| 145 | DB 11110000B ;AN000; | ||
| 146 | DB 00000000B ;AN000; | ||
| 147 | DB 00111000B ;AN000; | ||
| 148 | DB 00011000B ;AN000; | ||
| 149 | DB 00011000B ;AN000; | ||
| 150 | DB 00111100B ;AN000; | ||
| 151 | DB 00000000B ;AN000; | ||
| 152 | ; 142 Ž | ||
| 153 | DB 01100110B ;AN000; | ||
| 154 | DB 00000000B ;AN000; | ||
| 155 | DB 00111100B ;AN000; | ||
| 156 | DB 01100110B ;AN000; | ||
| 157 | DB 01111110B ;AN000; | ||
| 158 | DB 01100110B ;AN000; | ||
| 159 | DB 01100110B ;AN000; | ||
| 160 | DB 00000000B ;AN000; | ||
| 161 | ; 143 | ||
| 162 | DB 00011000B ;AN000; | ||
| 163 | DB 00000000B ;AN000; | ||
| 164 | DB 00111100B ;AN000; | ||
| 165 | DB 01100110B ;AN000; | ||
| 166 | DB 01111110B ;AN000; | ||
| 167 | DB 01100110B ;AN000; | ||
| 168 | DB 01100110B ;AN000; | ||
| 169 | DB 00000000B ;AN000; | ||
| 170 | ; 144 | ||
| 171 | DB 00001111B ;AN000; | ||
| 172 | DB 00000000B ;AN000; | ||
| 173 | DB 11111110B ;AN000; | ||
| 174 | DB 01100000B ;AN000; | ||
| 175 | DB 01111100B ;AN000; | ||
| 176 | DB 01100000B ;AN000; | ||
| 177 | DB 11111110B ;AN000; | ||
| 178 | DB 00000000B ;AN000; | ||
| 179 | ; 145 ‘ | ||
| 180 | DB 00000000B ;AN000; | ||
| 181 | DB 00000000B ;AN000; | ||
| 182 | DB 00000000B ;AN000; | ||
| 183 | DB 11101110B ;AN000; | ||
| 184 | DB 00110011B ;AN000; | ||
| 185 | DB 11011110B ;AN000; | ||
| 186 | DB 01111111B ;AN000; | ||
| 187 | DB 00000000B ;AN000; | ||
| 188 | ; 146 ’ | ||
| 189 | DB 00000000B ;AN000; | ||
| 190 | DB 00000000B ;AN000; | ||
| 191 | DB 01111111B ;AN000; | ||
| 192 | DB 11001100B ;AN000; | ||
| 193 | DB 11111111B ;AN000; | ||
| 194 | DB 11001100B ;AN000; | ||
| 195 | DB 11001111B ;AN000; | ||
| 196 | DB 00000000B ;AN000; | ||
| 197 | ; 147 “ | ||
| 198 | DB 00000000B ;AN000; | ||
| 199 | DB 00111100B ;AN000; | ||
| 200 | DB 01100110B ;AN000; | ||
| 201 | DB 00111100B ;AN000; | ||
| 202 | DB 01100110B ;AN000; | ||
| 203 | DB 01100110B ;AN000; | ||
| 204 | DB 00111100B ;AN000; | ||
| 205 | DB 00000000B ;AN000; | ||
| 206 | ; 148 ” | ||
| 207 | DB 00000000B ;AN000; | ||
| 208 | DB 01100110B ;AN000; | ||
| 209 | DB 00000000B ;AN000; | ||
| 210 | DB 00111100B ;AN000; | ||
| 211 | DB 01100110B ;AN000; | ||
| 212 | DB 01100110B ;AN000; | ||
| 213 | DB 00111100B ;AN000; | ||
| 214 | DB 00000000B ;AN000; | ||
| 215 | ; 149 • | ||
| 216 | DB 00000000B ;AN000; | ||
| 217 | DB 11110000B ;AN000; | ||
| 218 | DB 00000000B ;AN000; | ||
| 219 | DB 00111100B ;AN000; | ||
| 220 | DB 01100110B ;AN000; | ||
| 221 | DB 01100110B ;AN000; | ||
| 222 | DB 00111100B ;AN000; | ||
| 223 | DB 00000000B ;AN000; | ||
| 224 | ; 150 – | ||
| 225 | DB 00000000B ;AN000; | ||
| 226 | DB 01111110B ;AN000; | ||
| 227 | DB 11000011B ;AN000; | ||
| 228 | DB 01100110B ;AN000; | ||
| 229 | DB 01100110B ;AN000; | ||
| 230 | DB 01100110B ;AN000; | ||
| 231 | DB 00111011B ;AN000; | ||
| 232 | DB 00000000B ;AN000; | ||
| 233 | ; 151 — | ||
| 234 | DB 00000000B ;AN000; | ||
| 235 | DB 11110000B ;AN000; | ||
| 236 | DB 00000000B ;AN000; | ||
| 237 | DB 01100110B ;AN000; | ||
| 238 | DB 01100110B ;AN000; | ||
| 239 | DB 01100110B ;AN000; | ||
| 240 | DB 00111011B ;AN000; | ||
| 241 | DB 00000000B ;AN000; | ||
| 242 | ; 152 ˜ | ||
| 243 | DB 00000000B ;AN000; | ||
| 244 | DB 01100110B ;AN000; | ||
| 245 | DB 00000000B ;AN000; | ||
| 246 | DB 01100110B ;AN000; | ||
| 247 | DB 01100110B ;AN000; | ||
| 248 | DB 00111110B ;AN000; | ||
| 249 | DB 00000110B ;AN000; | ||
| 250 | DB 01111100B ;AN000; | ||
| 251 | ; 153 ™ | ||
| 252 | DB 11000110B ;AN000; | ||
| 253 | DB 00000000B ;AN000; | ||
| 254 | DB 01111100B ;AN000; | ||
| 255 | DB 11000110B ;AN000; | ||
| 256 | DB 11000110B ;AN000; | ||
| 257 | DB 11000110B ;AN000; | ||
| 258 | DB 01111100B ;AN000; | ||
| 259 | DB 00000000B ;AN000; | ||
| 260 | ; 154 š | ||
| 261 | DB 01100110B ;AN000; | ||
| 262 | DB 00000000B ;AN000; | ||
| 263 | DB 01100110B ;AN000; | ||
| 264 | DB 01100110B ;AN000; | ||
| 265 | DB 01100110B ;AN000; | ||
| 266 | DB 01100110B ;AN000; | ||
| 267 | DB 00111100B ;AN000; | ||
| 268 | DB 00000000B ;AN000; | ||
| 269 | ; 155 › | ||
| 270 | DB 00000000B ;AN000; | ||
| 271 | DB 00000000B ;AN000; | ||
| 272 | DB 00000010B ;AN000; | ||
| 273 | DB 01111100B ;AN000; | ||
| 274 | DB 11011110B ;AN000; | ||
| 275 | DB 11110110B ;AN000; | ||
| 276 | DB 01111100B ;AN000; | ||
| 277 | DB 10000000B ;AN000; | ||
| 278 | ; 156 œ | ||
| 279 | DB 00111000B ;AN000; | ||
| 280 | DB 01101100B ;AN000; | ||
| 281 | DB 01100100B ;AN000; | ||
| 282 | DB 11110000B ;AN000; | ||
| 283 | DB 01100000B ;AN000; | ||
| 284 | DB 11100110B ;AN000; | ||
| 285 | DB 11111100B ;AN000; | ||
| 286 | DB 00000000B ;AN000; | ||
| 287 | ; 157 | ||
| 288 | DB 00000000B ;AN000; | ||
| 289 | DB 00000010B ;AN000; | ||
| 290 | DB 01110100B ;AN000; | ||
| 291 | DB 11001110B ;AN000; | ||
| 292 | DB 11010110B ;AN000; | ||
| 293 | DB 11100110B ;AN000; | ||
| 294 | DB 01011100B ;AN000; | ||
| 295 | DB 10000000B ;AN000; | ||
| 296 | ; 158 ž | ||
| 297 | DB 00000000B ;AN000; | ||
| 298 | DB 00000000B ;AN000; | ||
| 299 | DB 01100110B ;AN000; | ||
| 300 | DB 00111100B ;AN000; | ||
| 301 | DB 00111100B ;AN000; | ||
| 302 | DB 01100110B ;AN000; | ||
| 303 | DB 00000000B ;AN000; | ||
| 304 | DB 00000000B ;AN000; | ||
| 305 | ; 159 Ÿ | ||
| 306 | DB 00001110B ;AN000; | ||
| 307 | DB 00011011B ;AN000; | ||
| 308 | DB 00011000B ;AN000; | ||
| 309 | DB 00111100B ;AN000; | ||
| 310 | DB 00011000B ;AN000; | ||
| 311 | DB 00011000B ;AN000; | ||
| 312 | DB 11011000B ;AN000; | ||
| 313 | DB 01110000B ;AN000; | ||
| 314 | ; 160 | ||
| 315 | DB 00000000B ;AN000; | ||
| 316 | DB 00001111B ;AN000; | ||
| 317 | DB 00000000B ;AN000; | ||
| 318 | DB 01111100B ;AN000; | ||
| 319 | DB 00011110B ;AN000; | ||
| 320 | DB 01100110B ;AN000; | ||
| 321 | DB 00111011B ;AN000; | ||
| 322 | DB 00000000B ;AN000; | ||
| 323 | ; 161 ¡ | ||
| 324 | DB 00000000B ;AN000; | ||
| 325 | DB 00011110B ;AN000; | ||
| 326 | DB 00000000B ;AN000; | ||
| 327 | DB 00111000B ;AN000; | ||
| 328 | DB 00011000B ;AN000; | ||
| 329 | DB 00011000B ;AN000; | ||
| 330 | DB 00111100B ;AN000; | ||
| 331 | DB 00000000B ;AN000; | ||
| 332 | ; 162 ¢ | ||
| 333 | DB 00000000B ;AN000; | ||
| 334 | DB 00001111B ;AN000; | ||
| 335 | DB 00000000B ;AN000; | ||
| 336 | DB 00111100B ;AN000; | ||
| 337 | DB 01100110B ;AN000; | ||
| 338 | DB 01100110B ;AN000; | ||
| 339 | DB 00111100B ;AN000; | ||
| 340 | DB 00000000B ;AN000; | ||
| 341 | ; 163 £ | ||
| 342 | DB 00000000B ;AN000; | ||
| 343 | DB 00011110B ;AN000; | ||
| 344 | DB 00000000B ;AN000; | ||
| 345 | DB 11001100B ;AN000; | ||
| 346 | DB 11001100B ;AN000; | ||
| 347 | DB 11001100B ;AN000; | ||
| 348 | DB 01110110B ;AN000; | ||
| 349 | DB 00000000B ;AN000; | ||
| 350 | ; 164 ¤ | ||
| 351 | DB 00000000B ;AN000; | ||
| 352 | DB 01110110B ;AN000; | ||
| 353 | DB 11011100B ;AN000; | ||
| 354 | DB 01111100B ;AN000; | ||
| 355 | DB 01100110B ;AN000; | ||
| 356 | DB 01100110B ;AN000; | ||
| 357 | DB 01100110B ;AN000; | ||
| 358 | DB 00000000B ;AN000; | ||
| 359 | ; 165 ¥ | ||
| 360 | DB 01110110B ;AN000; | ||
| 361 | DB 11011100B ;AN000; | ||
| 362 | DB 01100110B ;AN000; | ||
| 363 | DB 01110110B ;AN000; | ||
| 364 | DB 01111110B ;AN000; | ||
| 365 | DB 01101110B ;AN000; | ||
| 366 | DB 01100110B ;AN000; | ||
| 367 | DB 00000000B ;AN000; | ||
| 368 | ; 166 ¦ | ||
| 369 | DB 00111100B ;AN000; | ||
| 370 | DB 01101100B ;AN000; | ||
| 371 | DB 01101100B ;AN000; | ||
| 372 | DB 00111110B ;AN000; | ||
| 373 | DB 00000000B ;AN000; | ||
| 374 | DB 01111110B ;AN000; | ||
| 375 | DB 00000000B ;AN000; | ||
| 376 | DB 00000000B ;AN000; | ||
| 377 | ; 167 § | ||
| 378 | DB 00111000B ;AN000; | ||
| 379 | DB 01101100B ;AN000; | ||
| 380 | DB 01101100B ;AN000; | ||
| 381 | DB 00111000B ;AN000; | ||
| 382 | DB 00000000B ;AN000; | ||
| 383 | DB 01111100B ;AN000; | ||
| 384 | DB 00000000B ;AN000; | ||
| 385 | DB 00000000B ;AN000; | ||
| 386 | ; 168 ¨ | ||
| 387 | DB 00110000B ;AN000; | ||
| 388 | DB 00000000B ;AN000; | ||
| 389 | DB 00110000B ;AN000; | ||
| 390 | DB 01100000B ;AN000; | ||
| 391 | DB 11000000B ;AN000; | ||
| 392 | DB 11001100B ;AN000; | ||
| 393 | DB 01111000B ;AN000; | ||
| 394 | DB 00000000B ;AN000; | ||
| 395 | ; 169 © | ||
| 396 | DB 00111100B ;AN000; | ||
| 397 | DB 01000010B ;AN000; | ||
| 398 | DB 10111001B ;AN000; | ||
| 399 | DB 10101101B ;AN000; | ||
| 400 | DB 10111001B ;AN000; | ||
| 401 | DB 10101101B ;AN000; | ||
| 402 | DB 01000010B ;AN000; | ||
| 403 | DB 00111100B ;AN000; | ||
| 404 | ; 170 ª | ||
| 405 | DB 00000000B ;AN000; | ||
| 406 | DB 00000000B ;AN000; | ||
| 407 | DB 00000000B ;AN000; | ||
| 408 | DB 11111100B ;AN000; | ||
| 409 | DB 00001100B ;AN000; | ||
| 410 | DB 00001100B ;AN000; | ||
| 411 | DB 00000000B ;AN000; | ||
| 412 | DB 00000000B ;AN000; | ||
| 413 | ; 171 « | ||
| 414 | DB 11000011B ;AN000; | ||
| 415 | DB 11000110B ;AN000; | ||
| 416 | DB 11001100B ;AN000; | ||
| 417 | DB 11011110B ;AN000; | ||
| 418 | DB 00110011B ;AN000; | ||
| 419 | DB 01100110B ;AN000; | ||
| 420 | DB 11001100B ;AN000; | ||
| 421 | DB 00001111B ;AN000; | ||
| 422 | ; 172 ¬ | ||
| 423 | DB 11000011B ;AN000; | ||
| 424 | DB 11000110B ;AN000; | ||
| 425 | DB 11001100B ;AN000; | ||
| 426 | DB 11011011B ;AN000; | ||
| 427 | DB 00110111B ;AN000; | ||
| 428 | DB 01101111B ;AN000; | ||
| 429 | DB 11001111B ;AN000; | ||
| 430 | DB 00000011B ;AN000; | ||
| 431 | ; 173 | ||
| 432 | DB 00000000B ;AN000; | ||
| 433 | DB 00011000B ;AN000; | ||
| 434 | DB 00000000B ;AN000; | ||
| 435 | DB 00011000B ;AN000; | ||
| 436 | DB 00111100B ;AN000; | ||
| 437 | DB 00111100B ;AN000; | ||
| 438 | DB 00011000B ;AN000; | ||
| 439 | DB 00000000B ;AN000; | ||
| 440 | ; 174 ® | ||
| 441 | DB 00000000B ;AN000; | ||
| 442 | DB 00110011B ;AN000; | ||
| 443 | DB 01100110B ;AN000; | ||
| 444 | DB 11001100B ;AN000; | ||
| 445 | DB 01100110B ;AN000; | ||
| 446 | DB 00110011B ;AN000; | ||
| 447 | DB 00000000B ;AN000; | ||
| 448 | DB 00000000B ;AN000; | ||
| 449 | ; 175 ¯ | ||
| 450 | DB 00000000B ;AN000; | ||
| 451 | DB 11001100B ;AN000; | ||
| 452 | DB 01100110B ;AN000; | ||
| 453 | DB 00110011B ;AN000; | ||
| 454 | DB 01100110B ;AN000; | ||
| 455 | DB 11001100B ;AN000; | ||
| 456 | DB 00000000B ;AN000; | ||
| 457 | DB 00000000B ;AN000; | ||
| 458 | ; 176 ° | ||
| 459 | DB 00100010B ;AN000; | ||
| 460 | DB 10001000B ;AN000; | ||
| 461 | DB 00100010B ;AN000; | ||
| 462 | DB 10001000B ;AN000; | ||
| 463 | DB 00100010B ;AN000; | ||
| 464 | DB 10001000B ;AN000; | ||
| 465 | DB 00100010B ;AN000; | ||
| 466 | DB 10001000B ;AN000; | ||
| 467 | ; 177 ± | ||
| 468 | DB 01010101B ;AN000; | ||
| 469 | DB 10101010B ;AN000; | ||
| 470 | DB 01010101B ;AN000; | ||
| 471 | DB 10101010B ;AN000; | ||
| 472 | DB 01010101B ;AN000; | ||
| 473 | DB 10101010B ;AN000; | ||
| 474 | DB 01010101B ;AN000; | ||
| 475 | DB 10101010B ;AN000; | ||
| 476 | ; 178 ² | ||
| 477 | DB 11011011B ;AN000; | ||
| 478 | DB 01110111B ;AN000; | ||
| 479 | DB 11011011B ;AN000; | ||
| 480 | DB 11101110B ;AN000; | ||
| 481 | DB 11011011B ;AN000; | ||
| 482 | DB 01110111B ;AN000; | ||
| 483 | DB 11011011B ;AN000; | ||
| 484 | DB 11101110B ;AN000; | ||
| 485 | ; 179 ³ | ||
| 486 | DB 00011000B ;AN000; | ||
| 487 | DB 00011000B ;AN000; | ||
| 488 | DB 00011000B ;AN000; | ||
| 489 | DB 00011000B ;AN000; | ||
| 490 | DB 00011000B ;AN000; | ||
| 491 | DB 00011000B ;AN000; | ||
| 492 | DB 00011000B ;AN000; | ||
| 493 | DB 00011000B ;AN000; | ||
| 494 | ; 180 ´ | ||
| 495 | DB 00011000B ;AN000; | ||
| 496 | DB 00011000B ;AN000; | ||
| 497 | DB 00011000B ;AN000; | ||
| 498 | DB 00011000B ;AN000; | ||
| 499 | DB 11111000B ;AN000; | ||
| 500 | DB 00011000B ;AN000; | ||
| 501 | DB 00011000B ;AN000; | ||
| 502 | DB 00011000B ;AN000; | ||
| 503 | ; 181 µ | ||
| 504 | DB 00001111B ;AN000; | ||
| 505 | DB 00000000B ;AN000; | ||
| 506 | DB 00111100B ;AN000; | ||
| 507 | DB 01100110B ;AN000; | ||
| 508 | DB 01111110B ;AN000; | ||
| 509 | DB 01100110B ;AN000; | ||
| 510 | DB 01100110B ;AN000; | ||
| 511 | DB 00000000B ;AN000; | ||
| 512 | ; 182 ¶ | ||
| 513 | DB 00111100B ;AN000; | ||
| 514 | DB 01100110B ;AN000; | ||
| 515 | DB 00111100B ;AN000; | ||
| 516 | DB 01100110B ;AN000; | ||
| 517 | DB 01111110B ;AN000; | ||
| 518 | DB 01100110B ;AN000; | ||
| 519 | DB 01100110B ;AN000; | ||
| 520 | DB 00000000B ;AN000; | ||
| 521 | ; 183 · | ||
| 522 | DB 11110000B ;AN000; | ||
| 523 | DB 00000000B ;AN000; | ||
| 524 | DB 00111100B ;AN000; | ||
| 525 | DB 01100110B ;AN000; | ||
| 526 | DB 01111110B ;AN000; | ||
| 527 | DB 01100110B ;AN000; | ||
| 528 | DB 01100110B ;AN000; | ||
| 529 | DB 00000000B ;AN000; | ||
| 530 | ; 184 ¸ | ||
| 531 | DB 00111100B ;AN000; | ||
| 532 | DB 01000010B ;AN000; | ||
| 533 | DB 10111101B ;AN000; | ||
| 534 | DB 10100001B ;AN000; | ||
| 535 | DB 10100001B ;AN000; | ||
| 536 | DB 10111101B ;AN000; | ||
| 537 | DB 01000010B ;AN000; | ||
| 538 | DB 00111100B ;AN000; | ||
| 539 | ; 185 ¹ | ||
| 540 | DB 00110110B ;AN000; | ||
| 541 | DB 00110110B ;AN000; | ||
| 542 | DB 11110110B ;AN000; | ||
| 543 | DB 00000110B ;AN000; | ||
| 544 | DB 11110110B ;AN000; | ||
| 545 | DB 00110110B ;AN000; | ||
| 546 | DB 00110110B ;AN000; | ||
| 547 | DB 00110110B ;AN000; | ||
| 548 | ; 186 º | ||
| 549 | DB 00110110B ;AN000; | ||
| 550 | DB 00110110B ;AN000; | ||
| 551 | DB 00110110B ;AN000; | ||
| 552 | DB 00110110B ;AN000; | ||
| 553 | DB 00110110B ;AN000; | ||
| 554 | DB 00110110B ;AN000; | ||
| 555 | DB 00110110B ;AN000; | ||
| 556 | DB 00110110B ;AN000; | ||
| 557 | ; 187 » | ||
| 558 | DB 00000000B ;AN000; | ||
| 559 | DB 00000000B ;AN000; | ||
| 560 | DB 11111110B ;AN000; | ||
| 561 | DB 00000110B ;AN000; | ||
| 562 | DB 11110110B ;AN000; | ||
| 563 | DB 00110110B ;AN000; | ||
| 564 | DB 00110110B ;AN000; | ||
| 565 | DB 00110110B ;AN000; | ||
| 566 | ; 188 ¼ | ||
| 567 | DB 00110110B ;AN000; | ||
| 568 | DB 00110110B ;AN000; | ||
| 569 | DB 11110110B ;AN000; | ||
| 570 | DB 00000110B ;AN000; | ||
| 571 | DB 11111110B ;AN000; | ||
| 572 | DB 00000000B ;AN000; | ||
| 573 | DB 00000000B ;AN000; | ||
| 574 | DB 00000000B ;AN000; | ||
| 575 | ; 189 ½ | ||
| 576 | DB 00011000B ;AN000; | ||
| 577 | DB 00011000B ;AN000; | ||
| 578 | DB 01111110B ;AN000; | ||
| 579 | DB 11000000B ;AN000; | ||
| 580 | DB 11000000B ;AN000; | ||
| 581 | DB 01111110B ;AN000; | ||
| 582 | DB 00011000B ;AN000; | ||
| 583 | DB 00011000B ;AN000; | ||
| 584 | ; 190 ¾ | ||
| 585 | DB 11001100B ;AN000; | ||
| 586 | DB 11001100B ;AN000; | ||
| 587 | DB 01111000B ;AN000; | ||
| 588 | DB 11111100B ;AN000; | ||
| 589 | DB 00110000B ;AN000; | ||
| 590 | DB 11111100B ;AN000; | ||
| 591 | DB 00110000B ;AN000; | ||
| 592 | DB 00110000B ;AN000; | ||
| 593 | ; 191 ¿ | ||
| 594 | DB 00000000B ;AN000; | ||
| 595 | DB 00000000B ;AN000; | ||
| 596 | DB 00000000B ;AN000; | ||
| 597 | DB 00000000B ;AN000; | ||
| 598 | DB 11111000B ;AN000; | ||
| 599 | DB 00011000B ;AN000; | ||
| 600 | DB 00011000B ;AN000; | ||
| 601 | DB 00011000B ;AN000; | ||
| 602 | ; 192 À | ||
| 603 | DB 00011000B ;AN000; | ||
| 604 | DB 00011000B ;AN000; | ||
| 605 | DB 00011000B ;AN000; | ||
| 606 | DB 00011000B ;AN000; | ||
| 607 | DB 00011111B ;AN000; | ||
| 608 | DB 00000000B ;AN000; | ||
| 609 | DB 00000000B ;AN000; | ||
| 610 | DB 00000000B ;AN000; | ||
| 611 | ; 193 Á | ||
| 612 | DB 00011000B ;AN000; | ||
| 613 | DB 00011000B ;AN000; | ||
| 614 | DB 00011000B ;AN000; | ||
| 615 | DB 00011000B ;AN000; | ||
| 616 | DB 11111111B ;AN000; | ||
| 617 | DB 00000000B ;AN000; | ||
| 618 | DB 00000000B ;AN000; | ||
| 619 | DB 00000000B ;AN000; | ||
| 620 | ; 194 Â | ||
| 621 | DB 00000000B ;AN000; | ||
| 622 | DB 00000000B ;AN000; | ||
| 623 | DB 00000000B ;AN000; | ||
| 624 | DB 00000000B ;AN000; | ||
| 625 | DB 11111111B ;AN000; | ||
| 626 | DB 00011000B ;AN000; | ||
| 627 | DB 00011000B ;AN000; | ||
| 628 | DB 00011000B ;AN000; | ||
| 629 | ; 195 Ã | ||
| 630 | DB 00011000B ;AN000; | ||
| 631 | DB 00011000B ;AN000; | ||
| 632 | DB 00011000B ;AN000; | ||
| 633 | DB 00011000B ;AN000; | ||
| 634 | DB 00011111B ;AN000; | ||
| 635 | DB 00011000B ;AN000; | ||
| 636 | DB 00011000B ;AN000; | ||
| 637 | DB 00011000B ;AN000; | ||
| 638 | ; 196 Ä | ||
| 639 | DB 00000000B ;AN000; | ||
| 640 | DB 00000000B ;AN000; | ||
| 641 | DB 00000000B ;AN000; | ||
| 642 | DB 00000000B ;AN000; | ||
| 643 | DB 11111111B ;AN000; | ||
| 644 | DB 00000000B ;AN000; | ||
| 645 | DB 00000000B ;AN000; | ||
| 646 | DB 00000000B ;AN000; | ||
| 647 | ; 197 Å | ||
| 648 | DB 00011000B ;AN000; | ||
| 649 | DB 00011000B ;AN000; | ||
| 650 | DB 00011000B ;AN000; | ||
| 651 | DB 00011000B ;AN000; | ||
| 652 | DB 11111111B ;AN000; | ||
| 653 | DB 00011000B ;AN000; | ||
| 654 | DB 00011000B ;AN000; | ||
| 655 | DB 00011000B ;AN000; | ||
| 656 | ; 198 Æ | ||
| 657 | DB 00000000B ;AN000; | ||
| 658 | DB 01110110B ;AN000; | ||
| 659 | DB 11011100B ;AN000; | ||
| 660 | DB 11111000B ;AN000; | ||
| 661 | DB 00111100B ;AN000; | ||
| 662 | DB 11001100B ;AN000; | ||
| 663 | DB 01110110B ;AN000; | ||
| 664 | DB 00000000B ;AN000; | ||
| 665 | ; 199 Ç | ||
| 666 | DB 00110110B ;AN000; | ||
| 667 | DB 01101100B ;AN000; | ||
| 668 | DB 00111100B ;AN000; | ||
| 669 | DB 01100110B ;AN000; | ||
| 670 | DB 01111110B ;AN000; | ||
| 671 | DB 01100110B ;AN000; | ||
| 672 | DB 01100110B ;AN000; | ||
| 673 | DB 00000000B ;AN000; | ||
| 674 | ; 200 È | ||
| 675 | DB 00110110B ;AN000; | ||
| 676 | DB 00110110B ;AN000; | ||
| 677 | DB 00110111B ;AN000; | ||
| 678 | DB 00110000B ;AN000; | ||
| 679 | DB 00111111B ;AN000; | ||
| 680 | DB 00000000B ;AN000; | ||
| 681 | DB 00000000B ;AN000; | ||
| 682 | DB 00000000B ;AN000; | ||
| 683 | ; 201 É | ||
| 684 | DB 00000000B ;AN000; | ||
| 685 | DB 00000000B ;AN000; | ||
| 686 | DB 00111111B ;AN000; | ||
| 687 | DB 00110000B ;AN000; | ||
| 688 | DB 00110111B ;AN000; | ||
| 689 | DB 00110110B ;AN000; | ||
| 690 | DB 00110110B ;AN000; | ||
| 691 | DB 00110110B ;AN000; | ||
| 692 | ; 202 Ê | ||
| 693 | DB 00110110B ;AN000; | ||
| 694 | DB 00110110B ;AN000; | ||
| 695 | DB 11110111B ;AN000; | ||
| 696 | DB 00000000B ;AN000; | ||
| 697 | DB 11111111B ;AN000; | ||
| 698 | DB 00000000B ;AN000; | ||
| 699 | DB 00000000B ;AN000; | ||
| 700 | DB 00000000B ;AN000; | ||
| 701 | ; 203 Ë | ||
| 702 | DB 00000000B ;AN000; | ||
| 703 | DB 00000000B ;AN000; | ||
| 704 | DB 11111111B ;AN000; | ||
| 705 | DB 00000000B ;AN000; | ||
| 706 | DB 11110111B ;AN000; | ||
| 707 | DB 00110110B ;AN000; | ||
| 708 | DB 00110110B ;AN000; | ||
| 709 | DB 00110110B ;AN000; | ||
| 710 | ; 204 Ì | ||
| 711 | DB 00110110B ;AN000; | ||
| 712 | DB 00110110B ;AN000; | ||
| 713 | DB 00110111B ;AN000; | ||
| 714 | DB 00110000B ;AN000; | ||
| 715 | DB 00110111B ;AN000; | ||
| 716 | DB 00110110B ;AN000; | ||
| 717 | DB 00110110B ;AN000; | ||
| 718 | DB 00110110B ;AN000; | ||
| 719 | ; 205 Í | ||
| 720 | DB 00000000B ;AN000; | ||
| 721 | DB 00000000B ;AN000; | ||
| 722 | DB 11111111B ;AN000; | ||
| 723 | DB 00000000B ;AN000; | ||
| 724 | DB 11111111B ;AN000; | ||
| 725 | DB 00000000B ;AN000; | ||
| 726 | DB 00000000B ;AN000; | ||
| 727 | DB 00000000B ;AN000; | ||
| 728 | ; 206 Î | ||
| 729 | DB 00110110B ;AN000; | ||
| 730 | DB 00110110B ;AN000; | ||
| 731 | DB 11110111B ;AN000; | ||
| 732 | DB 00000000B ;AN000; | ||
| 733 | DB 11110111B ;AN000; | ||
| 734 | DB 00110110B ;AN000; | ||
| 735 | DB 00110110B ;AN000; | ||
| 736 | DB 00110110B ;AN000; | ||
| 737 | ; 207 Ï | ||
| 738 | DB 00000000B ;AN000; | ||
| 739 | DB 11000110B ;AN000; | ||
| 740 | DB 01111100B ;AN000; | ||
| 741 | DB 11000110B ;AN000; | ||
| 742 | DB 11000110B ;AN000; | ||
| 743 | DB 01111100B ;AN000; | ||
| 744 | DB 11000110B ;AN000; | ||
| 745 | DB 00000000B ;AN000; | ||
| 746 | ; 208 Ð | ||
| 747 | DB 00000000B ;AN000; | ||
| 748 | DB 00011000B ;AN000; | ||
| 749 | DB 00111110B ;AN000; | ||
| 750 | DB 00001100B ;AN000; | ||
| 751 | DB 01111110B ;AN000; | ||
| 752 | DB 11000110B ;AN000; | ||
| 753 | DB 01111100B ;AN000; | ||
| 754 | DB 00000000B ;AN000; | ||
| 755 | ; 209 Ñ | ||
| 756 | DB 00000000B ;AN000; | ||
| 757 | DB 00000000B ;AN000; | ||
| 758 | DB 11111100B ;AN000; | ||
| 759 | DB 01100110B ;AN000; | ||
| 760 | DB 11110110B ;AN000; | ||
| 761 | DB 01100110B ;AN000; | ||
| 762 | DB 11111100B ;AN000; | ||
| 763 | DB 00000000B ;AN000; | ||
| 764 | ; 210 Ò | ||
| 765 | DB 00111000B ;AN000; | ||
| 766 | DB 01101100B ;AN000; | ||
| 767 | DB 11111110B ;AN000; | ||
| 768 | DB 01100000B ;AN000; | ||
| 769 | DB 01111100B ;AN000; | ||
| 770 | DB 01100000B ;AN000; | ||
| 771 | DB 11111110B ;AN000; | ||
| 772 | DB 00000000B ;AN000; | ||
| 773 | ; 211 Ó | ||
| 774 | DB 11000110B ;AN000; | ||
| 775 | DB 00000000B ;AN000; | ||
| 776 | DB 11111110B ;AN000; | ||
| 777 | DB 01100000B ;AN000; | ||
| 778 | DB 01111100B ;AN000; | ||
| 779 | DB 01100000B ;AN000; | ||
| 780 | DB 11111110B ;AN000; | ||
| 781 | DB 00000000B ;AN000; | ||
| 782 | ; 212 Ô | ||
| 783 | DB 11111000B ;AN000; | ||
| 784 | DB 00000000B ;AN000; | ||
| 785 | DB 01111111B ;AN000; | ||
| 786 | DB 00110000B ;AN000; | ||
| 787 | DB 00111110B ;AN000; | ||
| 788 | DB 00110000B ;AN000; | ||
| 789 | DB 01111111B ;AN000; | ||
| 790 | DB 00000000B ;AN000; | ||
| 791 | ; 213 Õ | ||
| 792 | DB 00000000B ;AN000; | ||
| 793 | DB 00000000B ;AN000; | ||
| 794 | DB 00000000B ;AN000; | ||
| 795 | DB 00111000B ;AN000; | ||
| 796 | DB 00011000B ;AN000; | ||
| 797 | DB 00011000B ;AN000; | ||
| 798 | DB 00111100B ;AN000; | ||
| 799 | DB 00000000B ;AN000; | ||
| 800 | ; 214 Ö | ||
| 801 | DB 00011110B ;AN000; | ||
| 802 | DB 00000000B ;AN000; | ||
| 803 | DB 00111100B ;AN000; | ||
| 804 | DB 00011000B ;AN000; | ||
| 805 | DB 00011000B ;AN000; | ||
| 806 | DB 00011000B ;AN000; | ||
| 807 | DB 00111100B ;AN000; | ||
| 808 | DB 00000000B ;AN000; | ||
| 809 | ; 215 × | ||
| 810 | DB 00111100B ;AN000; | ||
| 811 | DB 01100110B ;AN000; | ||
| 812 | DB 00111100B ;AN000; | ||
| 813 | DB 00011000B ;AN000; | ||
| 814 | DB 00011000B ;AN000; | ||
| 815 | DB 00011000B ;AN000; | ||
| 816 | DB 00111100B ;AN000; | ||
| 817 | DB 00000000B ;AN000; | ||
| 818 | ; 216 Ø | ||
| 819 | DB 01100110B ;AN000; | ||
| 820 | DB 00000000B ;AN000; | ||
| 821 | DB 00111100B ;AN000; | ||
| 822 | DB 00011000B ;AN000; | ||
| 823 | DB 00011000B ;AN000; | ||
| 824 | DB 00011000B ;AN000; | ||
| 825 | DB 00111100B ;AN000; | ||
| 826 | DB 00000000B ;AN000; | ||
| 827 | ; 217 Ù | ||
| 828 | DB 00011000B ;AN000; | ||
| 829 | DB 00011000B ;AN000; | ||
| 830 | DB 00011000B ;AN000; | ||
| 831 | DB 00011000B ;AN000; | ||
| 832 | DB 11111000B ;AN000; | ||
| 833 | DB 00000000B ;AN000; | ||
| 834 | DB 00000000B ;AN000; | ||
| 835 | DB 00000000B ;AN000; | ||
| 836 | ; 218 Ú | ||
| 837 | DB 00000000B ;AN000; | ||
| 838 | DB 00000000B ;AN000; | ||
| 839 | DB 00000000B ;AN000; | ||
| 840 | DB 00000000B ;AN000; | ||
| 841 | DB 00011111B ;AN000; | ||
| 842 | DB 00011000B ;AN000; | ||
| 843 | DB 00011000B ;AN000; | ||
| 844 | DB 00011000B ;AN000; | ||
| 845 | ; 219 Û | ||
| 846 | DB 11111111B ;AN000; | ||
| 847 | DB 11111111B ;AN000; | ||
| 848 | DB 11111111B ;AN000; | ||
| 849 | DB 11111111B ;AN000; | ||
| 850 | DB 11111111B ;AN000; | ||
| 851 | DB 11111111B ;AN000; | ||
| 852 | DB 11111111B ;AN000; | ||
| 853 | DB 11111111B ;AN000; | ||
| 854 | ; 220 Ü | ||
| 855 | DB 00000000B ;AN000; | ||
| 856 | DB 00000000B ;AN000; | ||
| 857 | DB 00000000B ;AN000; | ||
| 858 | DB 00000000B ;AN000; | ||
| 859 | DB 11111111B ;AN000; | ||
| 860 | DB 11111111B ;AN000; | ||
| 861 | DB 11111111B ;AN000; | ||
| 862 | DB 11111111B ;AN000; | ||
| 863 | ; 221 Ý | ||
| 864 | DB 00011000B ;AN000; | ||
| 865 | DB 00011000B ;AN000; | ||
| 866 | DB 00011000B ;AN000; | ||
| 867 | DB 00000000B ;AN000; | ||
| 868 | DB 00011000B ;AN000; | ||
| 869 | DB 00011000B ;AN000; | ||
| 870 | DB 00011000B ;AN000; | ||
| 871 | DB 00000000B ;AN000; | ||
| 872 | ; 222 Þ | ||
| 873 | DB 01111000B ;AN000; | ||
| 874 | DB 00000000B ;AN000; | ||
| 875 | DB 00111100B ;AN000; | ||
| 876 | DB 00011000B ;AN000; | ||
| 877 | DB 00011000B ;AN000; | ||
| 878 | DB 00011000B ;AN000; | ||
| 879 | DB 00111100B ;AN000; | ||
| 880 | DB 00000000B ;AN000; | ||
| 881 | ; 223 ß | ||
| 882 | DB 11111111B ;AN000; | ||
| 883 | DB 11111111B ;AN000; | ||
| 884 | DB 11111111B ;AN000; | ||
| 885 | DB 11111111B ;AN000; | ||
| 886 | DB 00000000B ;AN000; | ||
| 887 | DB 00000000B ;AN000; | ||
| 888 | DB 00000000B ;AN000; | ||
| 889 | DB 00000000B ;AN000; | ||
| 890 | ; 224 à | ||
| 891 | DB 00011111B ;AN000; | ||
| 892 | DB 00000000B ;AN000; | ||
| 893 | DB 01111100B ;AN000; | ||
| 894 | DB 11000110B ;AN000; | ||
| 895 | DB 11000110B ;AN000; | ||
| 896 | DB 11000110B ;AN000; | ||
| 897 | DB 01111100B ;AN000; | ||
| 898 | DB 00000000B ;AN000; | ||
| 899 | ; 225 á | ||
| 900 | DB 00000000B ;AN000; | ||
| 901 | DB 01111000B ;AN000; | ||
| 902 | DB 11001100B ;AN000; | ||
| 903 | DB 11111000B ;AN000; | ||
| 904 | DB 11001100B ;AN000; | ||
| 905 | DB 11111000B ;AN000; | ||
| 906 | DB 11000000B ;AN000; | ||
| 907 | DB 11000000B ;AN000; | ||
| 908 | ; 226 â | ||
| 909 | DB 00111000B ;AN000; | ||
| 910 | DB 01101100B ;AN000; | ||
| 911 | DB 01111100B ;AN000; | ||
| 912 | DB 11000110B ;AN000; | ||
| 913 | DB 11000110B ;AN000; | ||
| 914 | DB 11000110B ;AN000; | ||
| 915 | DB 01111100B ;AN000; | ||
| 916 | DB 00000000B ;AN000; | ||
| 917 | ; 227 ã | ||
| 918 | DB 11111000B ;AN000; | ||
| 919 | DB 00000000B ;AN000; | ||
| 920 | DB 00111110B ;AN000; | ||
| 921 | DB 01100011B ;AN000; | ||
| 922 | DB 01100011B ;AN000; | ||
| 923 | DB 01100011B ;AN000; | ||
| 924 | DB 00111110B ;AN000; | ||
| 925 | DB 00000000B ;AN000; | ||
| 926 | ; 228 ä | ||
| 927 | DB 00000000B ;AN000; | ||
| 928 | DB 01110110B ;AN000; | ||
| 929 | DB 11011100B ;AN000; | ||
| 930 | DB 00111100B ;AN000; | ||
| 931 | DB 01100110B ;AN000; | ||
| 932 | DB 01100110B ;AN000; | ||
| 933 | DB 00111100B ;AN000; | ||
| 934 | DB 00000000B ;AN000; | ||
| 935 | ; 229 å | ||
| 936 | DB 01110110B ;AN000; | ||
| 937 | DB 11011100B ;AN000; | ||
| 938 | DB 01111100B ;AN000; | ||
| 939 | DB 11000110B ;AN000; | ||
| 940 | DB 11000110B ;AN000; | ||
| 941 | DB 11000110B ;AN000; | ||
| 942 | DB 01111100B ;AN000; | ||
| 943 | DB 00000000B ;AN000; | ||
| 944 | ; 230 æ | ||
| 945 | DB 00000000B ;AN000; | ||
| 946 | DB 01100110B ;AN000; | ||
| 947 | DB 01100110B ;AN000; | ||
| 948 | DB 01100110B ;AN000; | ||
| 949 | DB 01100110B ;AN000; | ||
| 950 | DB 01111100B ;AN000; | ||
| 951 | DB 01100000B ;AN000; | ||
| 952 | DB 11000000B ;AN000; | ||
| 953 | ; 231 ç | ||
| 954 | DB 00000000B ;AN000; | ||
| 955 | DB 00000000B ;AN000; | ||
| 956 | DB 11100000B ;AN000; | ||
| 957 | DB 01111100B ;AN000; | ||
| 958 | DB 01100110B ;AN000; | ||
| 959 | DB 01111100B ;AN000; | ||
| 960 | DB 01100000B ;AN000; | ||
| 961 | DB 11111000B ;AN000; | ||
| 962 | ; 232 è | ||
| 963 | DB 11110000B ;AN000; | ||
| 964 | DB 01100000B ;AN000; | ||
| 965 | DB 01111100B ;AN000; | ||
| 966 | DB 01100110B ;AN000; | ||
| 967 | DB 01111100B ;AN000; | ||
| 968 | DB 01100000B ;AN000; | ||
| 969 | DB 11110000B ;AN000; | ||
| 970 | DB 00000000B ;AN000; | ||
| 971 | ; 233 é | ||
| 972 | DB 00001111B ;AN000; | ||
| 973 | DB 00000000B ;AN000; | ||
| 974 | DB 01100110B ;AN000; | ||
| 975 | DB 01100110B ;AN000; | ||
| 976 | DB 01100110B ;AN000; | ||
| 977 | DB 01100110B ;AN000; | ||
| 978 | DB 00111100B ;AN000; | ||
| 979 | DB 00000000B ;AN000; | ||
| 980 | ; 234 ê | ||
| 981 | DB 01111110B ;AN000; | ||
| 982 | DB 11000011B ;AN000; | ||
| 983 | DB 01100110B ;AN000; | ||
| 984 | DB 01100110B ;AN000; | ||
| 985 | DB 01100110B ;AN000; | ||
| 986 | DB 01100110B ;AN000; | ||
| 987 | DB 00111100B ;AN000; | ||
| 988 | DB 00000000B ;AN000; | ||
| 989 | ; 235 ë | ||
| 990 | DB 11110000B ;AN000; | ||
| 991 | DB 00000000B ;AN000; | ||
| 992 | DB 01100110B ;AN000; | ||
| 993 | DB 01100110B ;AN000; | ||
| 994 | DB 01100110B ;AN000; | ||
| 995 | DB 01100110B ;AN000; | ||
| 996 | DB 00111100B ;AN000; | ||
| 997 | DB 00000000B ;AN000; | ||
| 998 | ; 236 ì | ||
| 999 | DB 00000000B ;AN000; | ||
| 1000 | DB 00001111B ;AN000; | ||
| 1001 | DB 00000000B ;AN000; | ||
| 1002 | DB 01100110B ;AN000; | ||
| 1003 | DB 01100110B ;AN000; | ||
| 1004 | DB 00111110B ;AN000; | ||
| 1005 | DB 00000110B ;AN000; | ||
| 1006 | DB 01111100B ;AN000; | ||
| 1007 | ; 237 í | ||
| 1008 | DB 00001111B ;AN000; | ||
| 1009 | DB 00000000B ;AN000; | ||
| 1010 | DB 01100110B ;AN000; | ||
| 1011 | DB 01100110B ;AN000; | ||
| 1012 | DB 00111100B ;AN000; | ||
| 1013 | DB 00011000B ;AN000; | ||
| 1014 | DB 00111100B ;AN000; | ||
| 1015 | DB 00000000B ;AN000; | ||
| 1016 | ; 238 î | ||
| 1017 | DB 11111100B ;AN000; | ||
| 1018 | DB 00000000B ;AN000; | ||
| 1019 | DB 00000000B ;AN000; | ||
| 1020 | DB 00000000B ;AN000; | ||
| 1021 | DB 00000000B ;AN000; | ||
| 1022 | DB 00000000B ;AN000; | ||
| 1023 | DB 00000000B ;AN000; | ||
| 1024 | DB 00000000B ;AN000; | ||
| 1025 | ; 239 ï | ||
| 1026 | DB 00001100B ;AN000; | ||
| 1027 | DB 00011000B ;AN000; | ||
| 1028 | DB 00110000B ;AN000; | ||
| 1029 | DB 00000000B ;AN000; | ||
| 1030 | DB 00000000B ;AN000; | ||
| 1031 | DB 00000000B ;AN000; | ||
| 1032 | DB 00000000B ;AN000; | ||
| 1033 | DB 00000000B ;AN000; | ||
| 1034 | ; 240 ð | ||
| 1035 | DB 00000000B ;AN000; | ||
| 1036 | DB 00000000B ;AN000; | ||
| 1037 | DB 00000000B ;AN000; | ||
| 1038 | DB 11111100B ;AN000; | ||
| 1039 | DB 00000000B ;AN000; | ||
| 1040 | DB 00000000B ;AN000; | ||
| 1041 | DB 00000000B ;AN000; | ||
| 1042 | DB 00000000B ;AN000; | ||
| 1043 | ; 241 ñ | ||
| 1044 | DB 00110000B ;AN000; | ||
| 1045 | DB 00110000B ;AN000; | ||
| 1046 | DB 11111100B ;AN000; | ||
| 1047 | DB 00110000B ;AN000; | ||
| 1048 | DB 00110000B ;AN000; | ||
| 1049 | DB 00000000B ;AN000; | ||
| 1050 | DB 11111100B ;AN000; | ||
| 1051 | DB 00000000B ;AN000; | ||
| 1052 | ; 242 ò | ||
| 1053 | DB 00000000B ;AN000; | ||
| 1054 | DB 00000000B ;AN000; | ||
| 1055 | DB 00000000B ;AN000; | ||
| 1056 | DB 00000000B ;AN000; | ||
| 1057 | DB 00000000B ;AN000; | ||
| 1058 | DB 11111100B ;AN000; | ||
| 1059 | DB 00000000B ;AN000; | ||
| 1060 | DB 11111100B ;AN000; | ||
| 1061 | ; 243 ó | ||
| 1062 | DB 11100011B ;AN000; | ||
| 1063 | DB 00010110B ;AN000; | ||
| 1064 | DB 01110100B ;AN000; | ||
| 1065 | DB 00010011B ;AN000; | ||
| 1066 | DB 11100111B ;AN000; | ||
| 1067 | DB 00001111B ;AN000; | ||
| 1068 | DB 01101111B ;AN000; | ||
| 1069 | DB 11000011B ;AN000; | ||
| 1070 | ; 244 ô | ||
| 1071 | DB 01111111B ;AN000; | ||
| 1072 | DB 11011011B ;AN000; | ||
| 1073 | DB 11011011B ;AN000; | ||
| 1074 | DB 01111011B ;AN000; | ||
| 1075 | DB 00011011B ;AN000; | ||
| 1076 | DB 00011011B ;AN000; | ||
| 1077 | DB 00011011B ;AN000; | ||
| 1078 | DB 00000000B ;AN000; | ||
| 1079 | ; 245 õ | ||
| 1080 | DB 00111110B ;AN000; | ||
| 1081 | DB 01100011B ;AN000; | ||
| 1082 | DB 00111000B ;AN000; | ||
| 1083 | DB 01101100B ;AN000; | ||
| 1084 | DB 01101100B ;AN000; | ||
| 1085 | DB 00111000B ;AN000; | ||
| 1086 | DB 11001100B ;AN000; | ||
| 1087 | DB 01111000B ;AN000; | ||
| 1088 | ; 246 ö | ||
| 1089 | DB 00110000B ;AN000; | ||
| 1090 | DB 00110000B ;AN000; | ||
| 1091 | DB 00000000B ;AN000; | ||
| 1092 | DB 11111100B ;AN000; | ||
| 1093 | DB 00000000B ;AN000; | ||
| 1094 | DB 00110000B ;AN000; | ||
| 1095 | DB 00110000B ;AN000; | ||
| 1096 | DB 00000000B ;AN000; | ||
| 1097 | ; 247 ÷ | ||
| 1098 | DB 00000000B ;AN000; | ||
| 1099 | DB 00000000B ;AN000; | ||
| 1100 | DB 00000000B ;AN000; | ||
| 1101 | DB 00000000B ;AN000; | ||
| 1102 | DB 00000000B ;AN000; | ||
| 1103 | DB 00111000B ;AN000; | ||
| 1104 | DB 00001100B ;AN000; | ||
| 1105 | DB 11111000B ;AN000; | ||
| 1106 | ; 248 ø | ||
| 1107 | DB 00111000B ;AN000; | ||
| 1108 | DB 01101100B ;AN000; | ||
| 1109 | DB 01101100B ;AN000; | ||
| 1110 | DB 00111000B ;AN000; | ||
| 1111 | DB 00000000B ;AN000; | ||
| 1112 | DB 00000000B ;AN000; | ||
| 1113 | DB 00000000B ;AN000; | ||
| 1114 | DB 00000000B ;AN000; | ||
| 1115 | ; 249 ù | ||
| 1116 | DB 11000110B ;AN000; | ||
| 1117 | DB 00000000B ;AN000; | ||
| 1118 | DB 00000000B ;AN000; | ||
| 1119 | DB 00000000B ;AN000; | ||
| 1120 | DB 00000000B ;AN000; | ||
| 1121 | DB 00000000B ;AN000; | ||
| 1122 | DB 00000000B ;AN000; | ||
| 1123 | DB 00000000B ;AN000; | ||
| 1124 | ; 250 ú | ||
| 1125 | DB 00000000B ;AN000; | ||
| 1126 | DB 00000000B ;AN000; | ||
| 1127 | DB 00000000B ;AN000; | ||
| 1128 | DB 00000000B ;AN000; | ||
| 1129 | DB 00011000B ;AN000; | ||
| 1130 | DB 00000000B ;AN000; | ||
| 1131 | DB 00000000B ;AN000; | ||
| 1132 | DB 00000000B ;AN000; | ||
| 1133 | ; 251 û | ||
| 1134 | DB 00110000B ;AN000; | ||
| 1135 | DB 01110000B ;AN000; | ||
| 1136 | DB 00110000B ;AN000; | ||
| 1137 | DB 00110000B ;AN000; | ||
| 1138 | DB 01111000B ;AN000; | ||
| 1139 | DB 00000000B ;AN000; | ||
| 1140 | DB 00000000B ;AN000; | ||
| 1141 | DB 00000000B ;AN000; | ||
| 1142 | ; 252 ü | ||
| 1143 | DB 11110000B ;AN000; | ||
| 1144 | DB 00011000B ;AN000; | ||
| 1145 | DB 01110000B ;AN000; | ||
| 1146 | DB 00011000B ;AN000; | ||
| 1147 | DB 11110000B ;AN000; | ||
| 1148 | DB 00000000B ;AN000; | ||
| 1149 | DB 00000000B ;AN000; | ||
| 1150 | DB 00000000B ;AN000; | ||
| 1151 | ; 253 ý | ||
| 1152 | DB 01110000B ;AN000; | ||
| 1153 | DB 11011000B ;AN000; | ||
| 1154 | DB 00110000B ;AN000; | ||
| 1155 | DB 01100000B ;AN000; | ||
| 1156 | DB 11111000B ;AN000; | ||
| 1157 | DB 00000000B ;AN000; | ||
| 1158 | DB 00000000B ;AN000; | ||
| 1159 | DB 00000000B ;AN000; | ||
| 1160 | .LIST ;AN000; | ||
| 1161 | ; 254 þ | ||
| 1162 | DB 00000000B ;AN000; | ||
| 1163 | DB 00000000B ;AN000; | ||
| 1164 | DB 00111100B ;AN000; | ||
| 1165 | DB 00111100B ;AN000; | ||
| 1166 | DB 00111100B ;AN000; | ||
| 1167 | DB 00111100B ;AN000; | ||
| 1168 | DB 00000000B ;AN000; | ||
| 1169 | DB 00000000B ;AN000; | ||
| 1170 | ; 255 ÿ | ||
| 1171 | DB 00000000B ;AN000; | ||
| 1172 | DB 00000000B ;AN000; | ||
| 1173 | DB 00000000B ;AN000; | ||
| 1174 | DB 00000000B ;AN000; | ||
| 1175 | DB 00000000B ;AN000; | ||
| 1176 | DB 00000000B ;AN000; | ||
| 1177 | DB 00000000B ;AN000; | ||
| 1178 | DB 00000000B ;AN000; | ||
| 1179 | |||
| 1180 | DW 850 ;AN000;TABLE ID | ||
| 1181 | DB "Multi-lingual",0 ;AN000;LANGUAGE NAME, IN ASCIIZ FORMAT | ||
| 1182 | IF ($-CSEG) MOD 16 ;AN000;IF NOT ALREADY ON 16 BYTE BOUNDARY | ||
| 1183 | DB (16-(($-CSEG) MOD 16)) DUP(0) ;AN000;ADD PADDING TO GET TO 16 BYTE BOUNDARY | ||
| 1184 | ENDIF ;AN000; | ||
| 1185 | CSEG ENDS ;AN000; | ||
| 1186 | END ;AN000; | ||
| 1187 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABMS.INC b/v4.0/src/CMD/GRAFTABL/GRTABMS.INC new file mode 100644 index 0000000..79c7e85 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABMS.INC | |||
| @@ -0,0 +1,115 @@ | |||
| 1 | ;:util GRAFTABL ;utility name ;AN000; | ||
| 2 | ;:class 1 ;DOS extended errors: | ||
| 3 | ;:class 2 ;parse errors: | ||
| 4 | ;1 Too many parameters | ||
| 5 | ;2 Required parameter missing | ||
| 6 | ;3 Invalid switch | ||
| 7 | ;4 Invalid keyword | ||
| 8 | ;5 Parameter value not in allowed range | ||
| 9 | ;6 Parameter value not allowed [parse ret codes 6 and 7] | ||
| 10 | ;7 (undefined) | ||
| 11 | ;8 Parameter format not correct | ||
| 12 | ;9 (undefined) | ||
| 13 | ;10 Invalid parameter [no corresponding parse ret code] | ||
| 14 | ;11 Invalid parameter combination [no corresponding parse ret code] | ||
| 15 | ;; | ||
| 16 | ;:class A ;system messages | ||
| 17 | ;:use 1 COMMON1 ;MSG 1 is always "Incorrect DOS version" | ||
| 18 | ;; | ||
| 19 | ;;In these next 2 messages, %1 will be replaced with one from list, 4-5, | ||
| 20 | ;; or with one entry of the list at "CPID". (see GRTABMS.INC) | ||
| 21 | ;; | ||
| 22 | ;:def 2 "Active Code Page: %1",CR,LF | ||
| 23 | ;:def 3 "Previous Code Page: %1",CR,LF | ||
| 24 | |||
| 25 | ;:def 4 "None",NULL | ||
| 26 | ;:def 5 "Non-standard",NULL | ||
| 27 | ;; | ||
| 28 | ;:def 6 CR,LF,"DOS command line parameters supported:",CR,LF,LF | ||
| 29 | ; | ||
| 30 | ;:def 7 " /STA - Request Status only",CR,LF | ||
| 31 | ;" ? - Display this summary of parameters",CR,LF,CR,LF | ||
| 32 | |||
| 33 | ;:def 8 " Code Pages available:",CR,LF | ||
| 34 | ;" 437 - USA Graphic Character Set",CR,LF | ||
| 35 | |||
| 36 | ;:def 9 " 850 - Multi-lingual Graphic Character Set",CR,LF | ||
| 37 | ;" 860 - Portuguese Graphic Character Set",CR,LF | ||
| 38 | |||
| 39 | ;:def 10 " 863 - Canadian French Graphic Character Set",CR,LF | ||
| 40 | ;" 865 - Nordic Graphic Character Set",CR,LF | ||
| 41 | ; | ||
| 42 | ; | ||
| 43 | ;:end | ||
| 44 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 45 | IF1 ;AN000; | ||
| 46 | %OUT COMPONENT=GRAFTABL, MODULE=GRTABMS.INC...;AN000; | ||
| 47 | ENDIF ;AN000; | ||
| 48 | ;THIS MODULE IS INCLUDED IN GRTABSM.SAL. | ||
| 49 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 50 | SUBLIST_PARSE SUBLIST <,,FILL_OFF,FILL_SEG,PC_ID_0,SF_BITS <SF_LEFT,,SF_ASCIIZ,SF_CHAR>,MAX_0,MIN_1,PAD_BLK> ;AN003; | ||
| 51 | PUBLIC SUBLIST_PARSE ;AN003; | ||
| 52 | |||
| 53 | ; THE NEXT GROUP ARE ADDITIONAL CLASS "A" MESSAGES | ||
| 54 | ; SPECIFICALLY DEFINED FOR THE GRAFTABL UTILITY | ||
| 55 | MSGNUM_ACTIVE MSG_DESC <2,,SLIST_23,ONE_SUBS> ;AN000;"Active Code Page: %1",CR,LF | ||
| 56 | PUBLIC MSGNUM_ACTIVE ;AN000; | ||
| 57 | |||
| 58 | MSGNUM_PREVIOUS MSG_DESC <3,,SLIST_23,ONE_SUBS> ;AN000;"Previous Code Page: %1",CR,LF | ||
| 59 | PUBLIC MSGNUM_PREVIOUS ;AN000; | ||
| 60 | |||
| 61 | ;BEFORE USING THE NEXT SUBLIST, THE SEG ID OF CPID | ||
| 62 | ;(OR OF "NONE" OR "NON-STANDARD") MUST BE FILLED IN | ||
| 63 | ;SINCE COM FILE CANNOT HAVE SEGMENT FIXUP. | ||
| 64 | |||
| 65 | ;THIS NEXT SUBLIST IS USED BOTH MY MESSAGE 2 AND MESSAGE 3. | ||
| 66 | |||
| 67 | SLIST_23 SUBLIST <,,,,PC_ID_1,SF_BITS <SF_LEFT,,SF_ASCIIZ,SF_CHAR>,MAX_0,MIN_1,PAD_BLK> ;AN000; | ||
| 68 | PUBLIC SLIST_23 ;AN000; | ||
| 69 | ;NOTE: IN THE ABOVE SUBLIST, ID=1, THE VECTOR POINTING TO THE MSG NO. 2-3. | ||
| 70 | ; WILL NEED TO BE PUT INTO THE SUBLIST DURING MESSAGES INITIALIZATION. | ||
| 71 | ; TO SELECT "None" OR "Non Standard", OR TO POINT TO ELEMENT OF "CPID". | ||
| 72 | |||
| 73 | PUBLIC CPID,CPID_L ;AN000; | ||
| 74 | CPID DB "437",NULL ;AN000; | ||
| 75 | CPID_L EQU $-CPID ;AN000;NUMBER OF CHARS IN CPID | ||
| 76 | DB "850",NULL ;AN000; | ||
| 77 | DB "860",NULL ;AN000; | ||
| 78 | DB "863",NULL ;AN000; | ||
| 79 | DB "865",NULL ;AN000; | ||
| 80 | |||
| 81 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 82 | MSGNUM_NONE MSG_DESC <4> ;AN000;"None",NULL | ||
| 83 | PUBLIC MSGNUM_NONE ;AN000; | ||
| 84 | |||
| 85 | MSGNUM_NSTD MSG_DESC <5> ;AN000;"Non-Standard",NULL | ||
| 86 | PUBLIC MSGNUM_NSTD ;AN000; | ||
| 87 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 88 | |||
| 89 | ;CR,LF,"DOS command line parameters supported:",CR,LF,LF ;AN000; | ||
| 90 | ;" /STA - Request Status only",CR,LF ;AN000; | ||
| 91 | ;" ? - Display this summary of parameters",CR,LF ;AN000; | ||
| 92 | ;" Code Pages available:",CR,LF | ||
| 93 | ;" 437 - USA Graphic Character Set",CR,LF ;AN000; | ||
| 94 | ;" 850 - Multi-lingual Graphic Character Set",CR,LF ;AN000; | ||
| 95 | ;" 860 - Portuguese Graphic Character Set",CR,LF ;AN000; | ||
| 96 | ;" 863 - Canadian French Graphic Character Set",CR,LF ;AN000; | ||
| 97 | ;" 865 - Nordic Graphic Character Set",CR,LF ;AN000; | ||
| 98 | |||
| 99 | MSGNUM_HELP_TITLE MSG_DESC <6> ;AN000;NO SUBSTITUTIONS | ||
| 100 | PUBLIC MSGNUM_HELP_TITLE ;AN000; | ||
| 101 | |||
| 102 | MSGNUM_HELP_TITLE7 MSG_DESC <7> ;AN007;NO SUBSTITUTIONS | ||
| 103 | PUBLIC MSGNUM_HELP_TITLE7 ;AN007; | ||
| 104 | |||
| 105 | MSGNUM_HELP_TITLE8 MSG_DESC <8> ;AN007;NO SUBSTITUTIONS | ||
| 106 | PUBLIC MSGNUM_HELP_TITLE8 ;AN007; | ||
| 107 | |||
| 108 | MSGNUM_HELP_TITLE9 MSG_DESC <9> ;AN007;NO SUBSTITUTIONS | ||
| 109 | PUBLIC MSGNUM_HELP_TITLE9 ;AN007; | ||
| 110 | |||
| 111 | MSGNUM_HELP_TITLE10 MSG_DESC <10> ;AN007;NO SUBSTITUTIONS | ||
| 112 | PUBLIC MSGNUM_HELP_TITLE10 ;AN007; | ||
| 113 | |||
| 114 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 115 | ;end of GRTABMS.INC | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABNO.ASM b/v4.0/src/CMD/GRAFTABL/GRTABNO.ASM new file mode 100644 index 0000000..d1e9333 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABNO.ASM | |||
| @@ -0,0 +1,1188 @@ | |||
| 1 | PAGE 90,132 ;A2 | ||
| 2 | TITLE GRTABNO - NORDIC CHARACTER SET FOR GRAFTABL COMMAND | ||
| 3 | ;This module is to be linked with the OBJ of GRTAB.SAL. Refer to the | ||
| 4 | ;Prolog of that module for more complete description. | ||
| 5 | |||
| 6 | ;This module contains the binary description of the pixels that are used | ||
| 7 | ;in graphics mode to define the Nordic character set when loaded to | ||
| 8 | ;interrupt 1FH by the GRAFTABL command in DOS 3.3. | ||
| 9 | IF1 | ||
| 10 | %OUT GRTABNO.ASM... | ||
| 11 | ELSE | ||
| 12 | ; %OUT GRTABNO.ASM... | ||
| 13 | ENDIF | ||
| 14 | CSEG SEGMENT PARA PUBLIC | ||
| 15 | TABLENO EQU THIS BYTE | ||
| 16 | PUBLIC TABLENO | ||
| 17 | |||
| 18 | ;(note: the display of the character to the right of the decimal number | ||
| 19 | ;value of this location is not necessarily the graphic that these pixels | ||
| 20 | ;will produce. The displayed character is from the USA character set, and | ||
| 21 | ;does not represent the language character set generated by this table.) | ||
| 22 | |||
| 23 | ;These fonts are as defined in the Nordic Code Page = 865. | ||
| 24 | |||
| 25 | DB 00111100B ;128 € | ||
| 26 | DB 01100110B | ||
| 27 | DB 01100000B | ||
| 28 | DB 01100110B | ||
| 29 | DB 00111100B | ||
| 30 | DB 00001100B | ||
| 31 | DB 00000110B | ||
| 32 | DB 00111100B | ||
| 33 | ; | ||
| 34 | DB 00000000B ;129 | ||
| 35 | DB 01100110B | ||
| 36 | DB 00000000B | ||
| 37 | DB 01100110B | ||
| 38 | DB 01100110B | ||
| 39 | DB 01100110B | ||
| 40 | DB 00111111B | ||
| 41 | DB 00000000B | ||
| 42 | .XLIST | ||
| 43 | ; | ||
| 44 | DB 00001110B ;130 ‚ | ||
| 45 | DB 00000000B | ||
| 46 | DB 00111100B | ||
| 47 | DB 01100110B | ||
| 48 | DB 01111110B | ||
| 49 | DB 01100000B | ||
| 50 | DB 00111100B | ||
| 51 | DB 00000000B | ||
| 52 | ; | ||
| 53 | DB 01111110B ;131 ƒ | ||
| 54 | DB 11000011B | ||
| 55 | DB 00111100B | ||
| 56 | DB 00000110B | ||
| 57 | DB 00111110B | ||
| 58 | DB 01100110B | ||
| 59 | DB 00111111B | ||
| 60 | DB 00000000B | ||
| 61 | ; | ||
| 62 | DB 01100110B ;132 „ | ||
| 63 | DB 00000000B | ||
| 64 | DB 00111100B | ||
| 65 | DB 00000110B | ||
| 66 | DB 00111110B | ||
| 67 | DB 01100110B | ||
| 68 | DB 00111111B | ||
| 69 | DB 00000000B | ||
| 70 | ; | ||
| 71 | DB 01110000B ;133 … | ||
| 72 | DB 00000000B | ||
| 73 | DB 00111100B | ||
| 74 | DB 00000110B | ||
| 75 | DB 00111110B | ||
| 76 | DB 01100110B | ||
| 77 | DB 00111111B | ||
| 78 | DB 00000000B | ||
| 79 | ; | ||
| 80 | DB 00011000B ;134 † | ||
| 81 | DB 00011000B | ||
| 82 | DB 00111100B | ||
| 83 | DB 00000110B | ||
| 84 | DB 00111110B | ||
| 85 | DB 01100110B | ||
| 86 | DB 00111111B | ||
| 87 | DB 00000000B | ||
| 88 | ; | ||
| 89 | DB 00000000B ;135 ‡ | ||
| 90 | DB 00000000B | ||
| 91 | DB 00111100B | ||
| 92 | DB 01100000B | ||
| 93 | DB 01100000B | ||
| 94 | DB 00111100B | ||
| 95 | DB 00000110B | ||
| 96 | DB 00011100B | ||
| 97 | ; | ||
| 98 | DB 01111110B ;136 ˆ | ||
| 99 | DB 11000011B | ||
| 100 | DB 00111100B | ||
| 101 | DB 01100110B | ||
| 102 | DB 01111110B | ||
| 103 | DB 01100000B | ||
| 104 | DB 00111100B | ||
| 105 | DB 00000000B | ||
| 106 | ; | ||
| 107 | DB 01100110B ;137 ‰ | ||
| 108 | DB 00000000B | ||
| 109 | DB 00111100B | ||
| 110 | DB 01100110B | ||
| 111 | DB 01111110B | ||
| 112 | DB 01100000B | ||
| 113 | DB 00111100B | ||
| 114 | DB 00000000B | ||
| 115 | ; | ||
| 116 | DB 01110000B ;138 Š | ||
| 117 | DB 00000000B | ||
| 118 | DB 00111100B | ||
| 119 | DB 01100110B | ||
| 120 | DB 01111110B | ||
| 121 | DB 01100000B | ||
| 122 | DB 00111100B | ||
| 123 | DB 00000000B | ||
| 124 | ; | ||
| 125 | DB 01100110B ;139 ‹ | ||
| 126 | DB 00000000B | ||
| 127 | DB 00111000B | ||
| 128 | DB 00011000B | ||
| 129 | DB 00011000B | ||
| 130 | DB 00011000B | ||
| 131 | DB 00111100B | ||
| 132 | DB 00000000B | ||
| 133 | ; | ||
| 134 | DB 01111100B ;140 Œ | ||
| 135 | DB 11000110B | ||
| 136 | DB 00111000B | ||
| 137 | DB 00011000B | ||
| 138 | DB 00011000B | ||
| 139 | DB 00011000B | ||
| 140 | DB 00111100B | ||
| 141 | DB 00000000B | ||
| 142 | ; | ||
| 143 | DB 01110000B ;141 | ||
| 144 | DB 00000000B | ||
| 145 | DB 00111000B | ||
| 146 | DB 00011000B | ||
| 147 | DB 00011000B | ||
| 148 | DB 00011000B | ||
| 149 | DB 00111100B | ||
| 150 | DB 00000000B | ||
| 151 | ; | ||
| 152 | DB 01100011B ;142 Ž | ||
| 153 | DB 00011100B | ||
| 154 | DB 00110110B | ||
| 155 | DB 01100011B | ||
| 156 | DB 01111111B | ||
| 157 | DB 01100011B | ||
| 158 | DB 01100011B | ||
| 159 | DB 00000000B | ||
| 160 | ; | ||
| 161 | DB 00011000B ;143 | ||
| 162 | DB 00011000B | ||
| 163 | DB 00000000B | ||
| 164 | DB 00111100B | ||
| 165 | DB 01100110B | ||
| 166 | DB 01111110B | ||
| 167 | DB 01100110B | ||
| 168 | DB 00000000B | ||
| 169 | ; | ||
| 170 | DB 00001110B ;144 | ||
| 171 | DB 00000000B | ||
| 172 | DB 01111110B | ||
| 173 | DB 00110000B | ||
| 174 | DB 00111100B | ||
| 175 | DB 00110000B | ||
| 176 | DB 01111110B | ||
| 177 | DB 00000000B | ||
| 178 | ; | ||
| 179 | DB 00000000B ;145 ‘ | ||
| 180 | DB 00000000B | ||
| 181 | DB 01111111B | ||
| 182 | DB 00001100B | ||
| 183 | DB 01111111B | ||
| 184 | DB 11001100B | ||
| 185 | DB 01111111B | ||
| 186 | DB 00000000B | ||
| 187 | ; | ||
| 188 | DB 00011111B ;146 ’ | ||
| 189 | DB 00110110B | ||
| 190 | DB 01100110B | ||
| 191 | DB 01111111B | ||
| 192 | DB 01100110B | ||
| 193 | DB 01100110B | ||
| 194 | DB 01100111B | ||
| 195 | DB 00000000B | ||
| 196 | ; | ||
| 197 | DB 00111100B ;147 “ | ||
| 198 | DB 01100110B | ||
| 199 | DB 00000000B | ||
| 200 | DB 00111100B | ||
| 201 | DB 01100110B | ||
| 202 | DB 01100110B | ||
| 203 | DB 00111100B | ||
| 204 | DB 00000000B | ||
| 205 | ; | ||
| 206 | DB 00000000B ;148 ” | ||
| 207 | DB 01100110B | ||
| 208 | DB 00000000B | ||
| 209 | DB 00111100B | ||
| 210 | DB 01100110B | ||
| 211 | DB 01100110B | ||
| 212 | DB 00111100B | ||
| 213 | DB 00000000B | ||
| 214 | ; | ||
| 215 | DB 00000000B ;149 • | ||
| 216 | DB 01110000B | ||
| 217 | DB 00000000B | ||
| 218 | DB 00111100B | ||
| 219 | DB 01100110B | ||
| 220 | DB 01100110B | ||
| 221 | DB 00111100B | ||
| 222 | DB 00000000B | ||
| 223 | ; | ||
| 224 | DB 00111100B ;150 – | ||
| 225 | DB 01100110B | ||
| 226 | DB 00000000B | ||
| 227 | DB 01100110B | ||
| 228 | DB 01100110B | ||
| 229 | DB 01100110B | ||
| 230 | DB 00111111B | ||
| 231 | DB 00000000B | ||
| 232 | ; | ||
| 233 | DB 00000000B ;151 — | ||
| 234 | DB 01110000B | ||
| 235 | DB 00000000B | ||
| 236 | DB 01100110B | ||
| 237 | DB 01100110B | ||
| 238 | DB 01100110B | ||
| 239 | DB 00111111B | ||
| 240 | DB 00000000B | ||
| 241 | ; | ||
| 242 | DB 00000000B ;152 ˜ | ||
| 243 | DB 01100110B | ||
| 244 | DB 00000000B | ||
| 245 | DB 01100110B | ||
| 246 | DB 01100110B | ||
| 247 | DB 00111110B | ||
| 248 | DB 00000110B | ||
| 249 | DB 01111100B | ||
| 250 | ; | ||
| 251 | DB 11000011B ;153 ™ | ||
| 252 | DB 00011000B | ||
| 253 | DB 00111100B | ||
| 254 | DB 01100110B | ||
| 255 | DB 01100110B | ||
| 256 | DB 00111100B | ||
| 257 | DB 00011000B | ||
| 258 | DB 00000000B | ||
| 259 | ; | ||
| 260 | DB 01100110B ;154 š | ||
| 261 | DB 00000000B | ||
| 262 | DB 01100110B | ||
| 263 | DB 01100110B | ||
| 264 | DB 01100110B | ||
| 265 | DB 01100110B | ||
| 266 | DB 00111100B | ||
| 267 | DB 00000000B | ||
| 268 | ; | ||
| 269 | DB 00000000B ;155 › * | ||
| 270 | DB 00000000B | ||
| 271 | DB 00000000B | ||
| 272 | DB 00111100B | ||
| 273 | DB 01101110B | ||
| 274 | DB 01110110B | ||
| 275 | DB 00111100B | ||
| 276 | DB 00000000B | ||
| 277 | ; | ||
| 278 | DB 00011100B ;156 œ | ||
| 279 | DB 00110110B | ||
| 280 | DB 00110010B | ||
| 281 | DB 01111000B | ||
| 282 | DB 00110000B | ||
| 283 | DB 01110011B | ||
| 284 | DB 01111110B | ||
| 285 | DB 00000000B | ||
| 286 | ; | ||
| 287 | DB 01111100B ;157 * | ||
| 288 | DB 11000110B | ||
| 289 | DB 11001110B | ||
| 290 | DB 11011110B | ||
| 291 | DB 11110110B | ||
| 292 | DB 11100110B | ||
| 293 | DB 01111100B | ||
| 294 | DB 00000000B | ||
| 295 | ; | ||
| 296 | DB 11111000B ;158 ž | ||
| 297 | DB 11001100B | ||
| 298 | DB 11001100B | ||
| 299 | DB 11111010B | ||
| 300 | DB 11000110B | ||
| 301 | DB 11001111B | ||
| 302 | DB 11000110B | ||
| 303 | DB 11000111B | ||
| 304 | ; | ||
| 305 | DB 00001110B ;159 Ÿ | ||
| 306 | DB 00011011B | ||
| 307 | DB 00011000B | ||
| 308 | DB 00111100B | ||
| 309 | DB 00011000B | ||
| 310 | DB 00011000B | ||
| 311 | DB 11011000B | ||
| 312 | DB 01110000B | ||
| 313 | ; | ||
| 314 | DB 00001110B ;160 | ||
| 315 | DB 00000000B | ||
| 316 | DB 00111100B | ||
| 317 | DB 00000110B | ||
| 318 | DB 00111110B | ||
| 319 | DB 01100110B | ||
| 320 | DB 00111111B | ||
| 321 | DB 00000000B | ||
| 322 | ; | ||
| 323 | DB 00011100B ;161 ¡ | ||
| 324 | DB 00000000B | ||
| 325 | DB 00111000B | ||
| 326 | DB 00011000B | ||
| 327 | DB 00011000B | ||
| 328 | DB 00011000B | ||
| 329 | DB 00111100B | ||
| 330 | DB 00000000B | ||
| 331 | ; | ||
| 332 | DB 00000000B ;162 ¢ | ||
| 333 | DB 00001110B | ||
| 334 | DB 00000000B | ||
| 335 | DB 00111100B | ||
| 336 | DB 01100110B | ||
| 337 | DB 01100110B | ||
| 338 | DB 00111100B | ||
| 339 | DB 00000000B | ||
| 340 | ; | ||
| 341 | DB 00000000B ;163 £ | ||
| 342 | DB 00001110B | ||
| 343 | DB 00000000B | ||
| 344 | DB 01100110B | ||
| 345 | DB 01100110B | ||
| 346 | DB 01100110B | ||
| 347 | DB 00111111B | ||
| 348 | DB 00000000B | ||
| 349 | ; | ||
| 350 | DB 00000000B ;164 ¤ | ||
| 351 | DB 01111100B | ||
| 352 | DB 00000000B | ||
| 353 | DB 01111100B | ||
| 354 | DB 01100110B | ||
| 355 | DB 01100110B | ||
| 356 | DB 01100110B | ||
| 357 | DB 00000000B | ||
| 358 | ; | ||
| 359 | DB 01111110B ;165 ¥ | ||
| 360 | DB 00000000B | ||
| 361 | DB 01100110B | ||
| 362 | DB 01110110B | ||
| 363 | DB 01111110B | ||
| 364 | DB 01101110B | ||
| 365 | DB 01100110B | ||
| 366 | DB 00000000B | ||
| 367 | ; | ||
| 368 | DB 00111100B ;166 ¦ | ||
| 369 | DB 01101100B | ||
| 370 | DB 01101100B | ||
| 371 | DB 00111110B | ||
| 372 | DB 00000000B | ||
| 373 | DB 01111110B | ||
| 374 | DB 00000000B | ||
| 375 | DB 00000000B | ||
| 376 | ; | ||
| 377 | DB 00111000B ;167 § | ||
| 378 | DB 01101100B | ||
| 379 | DB 01101100B | ||
| 380 | DB 00111000B | ||
| 381 | DB 00000000B | ||
| 382 | DB 01111100B | ||
| 383 | DB 00000000B | ||
| 384 | DB 00000000B | ||
| 385 | ; | ||
| 386 | DB 00011000B ;168 ¨ | ||
| 387 | DB 00000000B | ||
| 388 | DB 00011000B | ||
| 389 | DB 00110000B | ||
| 390 | DB 01100000B | ||
| 391 | DB 01100110B | ||
| 392 | DB 00111100B | ||
| 393 | DB 00000000B | ||
| 394 | ; | ||
| 395 | DB 00000000B ;169 © | ||
| 396 | DB 00000000B | ||
| 397 | DB 00000000B | ||
| 398 | DB 11111100B | ||
| 399 | DB 11000000B | ||
| 400 | DB 11000000B | ||
| 401 | DB 00000000B | ||
| 402 | DB 00000000B | ||
| 403 | ; | ||
| 404 | DB 00000000B ;170 ª | ||
| 405 | DB 00000000B | ||
| 406 | DB 00000000B | ||
| 407 | DB 11111100B | ||
| 408 | DB 00001100B | ||
| 409 | DB 00001100B | ||
| 410 | DB 00000000B | ||
| 411 | DB 00000000B | ||
| 412 | ; | ||
| 413 | DB 11000011B ;171 « | ||
| 414 | DB 11000110B | ||
| 415 | DB 11001100B | ||
| 416 | DB 11011110B | ||
| 417 | DB 00110011B | ||
| 418 | DB 01100110B | ||
| 419 | DB 11001100B | ||
| 420 | DB 00001111B | ||
| 421 | ; | ||
| 422 | DB 11000011B ;172 ¬ | ||
| 423 | DB 11000110B | ||
| 424 | DB 11001100B | ||
| 425 | DB 11011011B | ||
| 426 | DB 00110111B | ||
| 427 | DB 01101111B | ||
| 428 | DB 11001111B | ||
| 429 | DB 00000011B | ||
| 430 | ; | ||
| 431 | DB 00011000B ;173 | ||
| 432 | DB 00011000B | ||
| 433 | DB 00000000B | ||
| 434 | DB 00011000B | ||
| 435 | DB 00011000B | ||
| 436 | DB 00011000B | ||
| 437 | DB 00011000B | ||
| 438 | DB 00000000B | ||
| 439 | ; | ||
| 440 | DB 00000000B ;174 ® | ||
| 441 | DB 00110011B | ||
| 442 | DB 01100110B | ||
| 443 | DB 11001100B | ||
| 444 | DB 01100110B | ||
| 445 | DB 00110011B | ||
| 446 | DB 00000000B | ||
| 447 | DB 00000000B | ||
| 448 | ; | ||
| 449 | DB 00000000B ;175 ¯ * | ||
| 450 | DB 11000110B | ||
| 451 | DB 01111100B | ||
| 452 | DB 11000110B | ||
| 453 | DB 11000110B | ||
| 454 | DB 01111100B | ||
| 455 | DB 11000110B | ||
| 456 | DB 00000000B | ||
| 457 | ; | ||
| 458 | DB 00100010B ;176 ° | ||
| 459 | DB 10001000B | ||
| 460 | DB 00100010B | ||
| 461 | DB 10001000B | ||
| 462 | DB 00100010B | ||
| 463 | DB 10001000B | ||
| 464 | DB 00100010B | ||
| 465 | DB 10001000B | ||
| 466 | ; | ||
| 467 | DB 01010101B ;177 ± | ||
| 468 | DB 10101010B | ||
| 469 | DB 01010101B | ||
| 470 | DB 10101010B | ||
| 471 | DB 01010101B | ||
| 472 | DB 10101010B | ||
| 473 | DB 01010101B | ||
| 474 | DB 10101010B | ||
| 475 | ; | ||
| 476 | DB 11011011B ;178 ² | ||
| 477 | DB 01110111B | ||
| 478 | DB 11011011B | ||
| 479 | DB 11101110B | ||
| 480 | DB 11011011B | ||
| 481 | DB 01110111B | ||
| 482 | DB 11011011B | ||
| 483 | DB 11101110B | ||
| 484 | ; | ||
| 485 | DB 00011000B ;179 ³ | ||
| 486 | DB 00011000B | ||
| 487 | DB 00011000B | ||
| 488 | DB 00011000B | ||
| 489 | DB 00011000B | ||
| 490 | DB 00011000B | ||
| 491 | DB 00011000B | ||
| 492 | DB 00011000B | ||
| 493 | ; | ||
| 494 | DB 00011000B ;180 ´ | ||
| 495 | DB 00011000B | ||
| 496 | DB 00011000B | ||
| 497 | DB 00011000B | ||
| 498 | DB 11111000B | ||
| 499 | DB 00011000B | ||
| 500 | DB 00011000B | ||
| 501 | DB 00011000B | ||
| 502 | ; | ||
| 503 | DB 00011000B ;181 µ | ||
| 504 | DB 00011000B | ||
| 505 | DB 11111000B | ||
| 506 | DB 00011000B | ||
| 507 | DB 11111000B | ||
| 508 | DB 00011000B | ||
| 509 | DB 00011000B | ||
| 510 | DB 00011000B | ||
| 511 | ; | ||
| 512 | DB 00110110B ;182 ¶ | ||
| 513 | DB 00110110B | ||
| 514 | DB 00110110B | ||
| 515 | DB 00110110B | ||
| 516 | DB 11110110B | ||
| 517 | DB 00110110B | ||
| 518 | DB 00110110B | ||
| 519 | DB 00110110B | ||
| 520 | ; | ||
| 521 | DB 00000000B ;183 · | ||
| 522 | DB 00000000B | ||
| 523 | DB 00000000B | ||
| 524 | DB 00000000B | ||
| 525 | DB 11111110B | ||
| 526 | DB 00110110B | ||
| 527 | DB 00110110B | ||
| 528 | DB 00110110B | ||
| 529 | ; | ||
| 530 | DB 00000000B ;184 ¸ | ||
| 531 | DB 00000000B | ||
| 532 | DB 11111000B | ||
| 533 | DB 00011000B | ||
| 534 | DB 11111000B | ||
| 535 | DB 00011000B | ||
| 536 | DB 00011000B | ||
| 537 | DB 00011000B | ||
| 538 | ; | ||
| 539 | DB 00110110B ;185 ¹ | ||
| 540 | DB 00110110B | ||
| 541 | DB 11110110B | ||
| 542 | DB 00000110B | ||
| 543 | DB 11110110B | ||
| 544 | DB 00110110B | ||
| 545 | DB 00110110B | ||
| 546 | DB 00110110B | ||
| 547 | ; | ||
| 548 | DB 00110110B ;186 º | ||
| 549 | DB 00110110B | ||
| 550 | DB 00110110B | ||
| 551 | DB 00110110B | ||
| 552 | DB 00110110B | ||
| 553 | DB 00110110B | ||
| 554 | DB 00110110B | ||
| 555 | DB 00110110B | ||
| 556 | ; | ||
| 557 | DB 00000000B ;187 » | ||
| 558 | DB 00000000B | ||
| 559 | DB 11111110B | ||
| 560 | DB 00000110B | ||
| 561 | DB 11110110B | ||
| 562 | DB 00110110B | ||
| 563 | DB 00110110B | ||
| 564 | DB 00110110B | ||
| 565 | ; | ||
| 566 | DB 00110110B ;188 ¼ | ||
| 567 | DB 00110110B | ||
| 568 | DB 11110110B | ||
| 569 | DB 00000110B | ||
| 570 | DB 11111110B | ||
| 571 | DB 00000000B | ||
| 572 | DB 00000000B | ||
| 573 | DB 00000000B | ||
| 574 | ; | ||
| 575 | DB 00110110B ;189 ½ | ||
| 576 | DB 00110110B | ||
| 577 | DB 00110110B | ||
| 578 | DB 00110110B | ||
| 579 | DB 11111110B | ||
| 580 | DB 00000000B | ||
| 581 | DB 00000000B | ||
| 582 | DB 00000000B | ||
| 583 | ; | ||
| 584 | DB 00011000B ;190 ¾ | ||
| 585 | DB 00011000B | ||
| 586 | DB 11111000B | ||
| 587 | DB 00011000B | ||
| 588 | DB 11111000B | ||
| 589 | DB 00000000B | ||
| 590 | DB 00000000B | ||
| 591 | DB 00000000B | ||
| 592 | ; | ||
| 593 | DB 00000000B ;191 ¿ | ||
| 594 | DB 00000000B | ||
| 595 | DB 00000000B | ||
| 596 | DB 00000000B | ||
| 597 | DB 11111000B | ||
| 598 | DB 00011000B | ||
| 599 | DB 00011000B | ||
| 600 | DB 00011000B | ||
| 601 | ; | ||
| 602 | DB 00011000B ;192 À | ||
| 603 | DB 00011000B | ||
| 604 | DB 00011000B | ||
| 605 | DB 00011000B | ||
| 606 | DB 00011111B | ||
| 607 | DB 00000000B | ||
| 608 | DB 00000000B | ||
| 609 | DB 00000000B | ||
| 610 | ; | ||
| 611 | DB 00011000B ;193 Á | ||
| 612 | DB 00011000B | ||
| 613 | DB 00011000B | ||
| 614 | DB 00011000B | ||
| 615 | DB 11111111B | ||
| 616 | DB 00000000B | ||
| 617 | DB 00000000B | ||
| 618 | DB 00000000B | ||
| 619 | ; | ||
| 620 | DB 00000000B ;194 Â | ||
| 621 | DB 00000000B | ||
| 622 | DB 00000000B | ||
| 623 | DB 00000000B | ||
| 624 | DB 11111111B | ||
| 625 | DB 00011000B | ||
| 626 | DB 00011000B | ||
| 627 | DB 00011000B | ||
| 628 | ; | ||
| 629 | DB 00011000B ;195 Ã | ||
| 630 | DB 00011000B | ||
| 631 | DB 00011000B | ||
| 632 | DB 00011000B | ||
| 633 | DB 00011111B | ||
| 634 | DB 00011000B | ||
| 635 | DB 00011000B | ||
| 636 | DB 00011000B | ||
| 637 | ; | ||
| 638 | DB 00000000B ;196 Ä | ||
| 639 | DB 00000000B | ||
| 640 | DB 00000000B | ||
| 641 | DB 00000000B | ||
| 642 | DB 11111111B | ||
| 643 | DB 00000000B | ||
| 644 | DB 00000000B | ||
| 645 | DB 00000000B | ||
| 646 | ; | ||
| 647 | DB 00011000B ;197 Å | ||
| 648 | DB 00011000B | ||
| 649 | DB 00011000B | ||
| 650 | DB 00011000B | ||
| 651 | DB 11111111B | ||
| 652 | DB 00011000B | ||
| 653 | DB 00011000B | ||
| 654 | DB 00011000B | ||
| 655 | ; | ||
| 656 | DB 00011000B ;198 Æ | ||
| 657 | DB 00011000B | ||
| 658 | DB 00011111B | ||
| 659 | DB 00011000B | ||
| 660 | DB 00011111B | ||
| 661 | DB 00011000B | ||
| 662 | DB 00011000B | ||
| 663 | DB 00011000B | ||
| 664 | ; | ||
| 665 | DB 00110110B ;199 Ç | ||
| 666 | DB 00110110B | ||
| 667 | DB 00110110B | ||
| 668 | DB 00110110B | ||
| 669 | DB 00110111B | ||
| 670 | DB 00110110B | ||
| 671 | DB 00110110B | ||
| 672 | DB 00110110B | ||
| 673 | ; | ||
| 674 | DB 00110110B ;200 È | ||
| 675 | DB 00110110B | ||
| 676 | DB 00110111B | ||
| 677 | DB 00110000B | ||
| 678 | DB 00111111B | ||
| 679 | DB 00000000B | ||
| 680 | DB 00000000B | ||
| 681 | DB 00000000B | ||
| 682 | ; | ||
| 683 | DB 00000000B ;201 É | ||
| 684 | DB 00000000B | ||
| 685 | DB 00111111B | ||
| 686 | DB 00110000B | ||
| 687 | DB 00110111B | ||
| 688 | DB 00110110B | ||
| 689 | DB 00110110B | ||
| 690 | DB 00110110B | ||
| 691 | ; | ||
| 692 | DB 00110110B ;202 Ê | ||
| 693 | DB 00110110B | ||
| 694 | DB 11110111B | ||
| 695 | DB 00000000B | ||
| 696 | DB 11111111B | ||
| 697 | DB 00000000B | ||
| 698 | DB 00000000B | ||
| 699 | DB 00000000B | ||
| 700 | ; | ||
| 701 | DB 00000000B ;203 Ë | ||
| 702 | DB 00000000B | ||
| 703 | DB 11111111B | ||
| 704 | DB 00000000B | ||
| 705 | DB 11110111B | ||
| 706 | DB 00110110B | ||
| 707 | DB 00110110B | ||
| 708 | DB 00110110B | ||
| 709 | ; | ||
| 710 | DB 00110110B ;204 Ì | ||
| 711 | DB 00110110B | ||
| 712 | DB 00110111B | ||
| 713 | DB 00110000B | ||
| 714 | DB 00110111B | ||
| 715 | DB 00110110B | ||
| 716 | DB 00110110B | ||
| 717 | DB 00110110B | ||
| 718 | ; | ||
| 719 | DB 00000000B ;205 Í | ||
| 720 | DB 00000000B | ||
| 721 | DB 11111111B | ||
| 722 | DB 00000000B | ||
| 723 | DB 11111111B | ||
| 724 | DB 00000000B | ||
| 725 | DB 00000000B | ||
| 726 | DB 00000000B | ||
| 727 | ; | ||
| 728 | DB 00110110B ;206 Î | ||
| 729 | DB 00110110B | ||
| 730 | DB 11110111B | ||
| 731 | DB 00000000B | ||
| 732 | DB 11110111B | ||
| 733 | DB 00110110B | ||
| 734 | DB 00110110B | ||
| 735 | DB 00110110B | ||
| 736 | ; | ||
| 737 | DB 00011000B ;207 Ï | ||
| 738 | DB 00011000B | ||
| 739 | DB 11111111B | ||
| 740 | DB 00000000B | ||
| 741 | DB 11111111B | ||
| 742 | DB 00000000B | ||
| 743 | DB 00000000B | ||
| 744 | DB 00000000B | ||
| 745 | ; | ||
| 746 | DB 00110110B ;208 Ð | ||
| 747 | DB 00110110B | ||
| 748 | DB 00110110B | ||
| 749 | DB 00110110B | ||
| 750 | DB 11111111B | ||
| 751 | DB 00000000B | ||
| 752 | DB 00000000B | ||
| 753 | DB 00000000B | ||
| 754 | ; | ||
| 755 | DB 00000000B ;209 Ñ | ||
| 756 | DB 00000000B | ||
| 757 | DB 11111111B | ||
| 758 | DB 00000000B | ||
| 759 | DB 11111111B | ||
| 760 | DB 00011000B | ||
| 761 | DB 00011000B | ||
| 762 | DB 00011000B | ||
| 763 | ; | ||
| 764 | DB 00000000B ;210 Ò | ||
| 765 | DB 00000000B | ||
| 766 | DB 00000000B | ||
| 767 | DB 00000000B | ||
| 768 | DB 11111111B | ||
| 769 | DB 00110110B | ||
| 770 | DB 00110110B | ||
| 771 | DB 00110110B | ||
| 772 | ; | ||
| 773 | DB 00110110B ;211 Ó | ||
| 774 | DB 00110110B | ||
| 775 | DB 00110110B | ||
| 776 | DB 00110110B | ||
| 777 | DB 00111111B | ||
| 778 | DB 00000000B | ||
| 779 | DB 00000000B | ||
| 780 | DB 00000000B | ||
| 781 | ; | ||
| 782 | DB 00011000B ;212 Ô | ||
| 783 | DB 00011000B | ||
| 784 | DB 00011111B | ||
| 785 | DB 00011000B | ||
| 786 | DB 00011111B | ||
| 787 | DB 00000000B | ||
| 788 | DB 00000000B | ||
| 789 | DB 00000000B | ||
| 790 | ; | ||
| 791 | DB 00000000B ;213 Õ | ||
| 792 | DB 00000000B | ||
| 793 | DB 00011111B | ||
| 794 | DB 00011000B | ||
| 795 | DB 00011111B | ||
| 796 | DB 00011000B | ||
| 797 | DB 00011000B | ||
| 798 | DB 00011000B | ||
| 799 | ; | ||
| 800 | DB 00000000B ;214 Ö | ||
| 801 | DB 00000000B | ||
| 802 | DB 00000000B | ||
| 803 | DB 00000000B | ||
| 804 | DB 00111111B | ||
| 805 | DB 00110110B | ||
| 806 | DB 00110110B | ||
| 807 | DB 00110110B | ||
| 808 | ; | ||
| 809 | DB 00110110B ;215 × | ||
| 810 | DB 00110110B | ||
| 811 | DB 00110110B | ||
| 812 | DB 00110110B | ||
| 813 | DB 11111111B | ||
| 814 | DB 00110110B | ||
| 815 | DB 00110110B | ||
| 816 | DB 00110110B | ||
| 817 | ; | ||
| 818 | DB 00011000B ;216 Ø | ||
| 819 | DB 00011000B | ||
| 820 | DB 11111111B | ||
| 821 | DB 00011000B | ||
| 822 | DB 11111111B | ||
| 823 | DB 00011000B | ||
| 824 | DB 00011000B | ||
| 825 | DB 00011000B | ||
| 826 | ; | ||
| 827 | DB 00011000B ;217 Ù | ||
| 828 | DB 00011000B | ||
| 829 | DB 00011000B | ||
| 830 | DB 00011000B | ||
| 831 | DB 11111000B | ||
| 832 | DB 00000000B | ||
| 833 | DB 00000000B | ||
| 834 | DB 00000000B | ||
| 835 | ; | ||
| 836 | DB 00000000B ;218 Ú | ||
| 837 | DB 00000000B | ||
| 838 | DB 00000000B | ||
| 839 | DB 00000000B | ||
| 840 | DB 00011111B | ||
| 841 | DB 00011000B | ||
| 842 | DB 00011000B | ||
| 843 | DB 00011000B | ||
| 844 | ; | ||
| 845 | DB 11111111B ;219 Û | ||
| 846 | DB 11111111B | ||
| 847 | DB 11111111B | ||
| 848 | DB 11111111B | ||
| 849 | DB 11111111B | ||
| 850 | DB 11111111B | ||
| 851 | DB 11111111B | ||
| 852 | DB 11111111B | ||
| 853 | ; | ||
| 854 | DB 00000000B ;220 Ü | ||
| 855 | DB 00000000B | ||
| 856 | DB 00000000B | ||
| 857 | DB 00000000B | ||
| 858 | DB 11111111B | ||
| 859 | DB 11111111B | ||
| 860 | DB 11111111B | ||
| 861 | DB 11111111B | ||
| 862 | ; | ||
| 863 | DB 11110000B ;221 Ý | ||
| 864 | DB 11110000B | ||
| 865 | DB 11110000B | ||
| 866 | DB 11110000B | ||
| 867 | DB 11110000B | ||
| 868 | DB 11110000B | ||
| 869 | DB 11110000B | ||
| 870 | DB 11110000B | ||
| 871 | ; | ||
| 872 | DB 00001111B ;222 Þ | ||
| 873 | DB 00001111B | ||
| 874 | DB 00001111B | ||
| 875 | DB 00001111B | ||
| 876 | DB 00001111B | ||
| 877 | DB 00001111B | ||
| 878 | DB 00001111B | ||
| 879 | DB 00001111B | ||
| 880 | ; | ||
| 881 | DB 11111111B ;223 ß | ||
| 882 | DB 11111111B | ||
| 883 | DB 11111111B | ||
| 884 | DB 11111111B | ||
| 885 | DB 00000000B | ||
| 886 | DB 00000000B | ||
| 887 | DB 00000000B | ||
| 888 | DB 00000000B | ||
| 889 | ; | ||
| 890 | DB 00000000B ;224 à | ||
| 891 | DB 00000000B | ||
| 892 | DB 00111011B | ||
| 893 | DB 01101110B | ||
| 894 | DB 01100100B | ||
| 895 | DB 01101110B | ||
| 896 | DB 00111011B | ||
| 897 | DB 00000000B | ||
| 898 | ; | ||
| 899 | DB 00000000B ;225 á | ||
| 900 | DB 00111100B | ||
| 901 | DB 01100110B | ||
| 902 | DB 01111100B | ||
| 903 | DB 01100110B | ||
| 904 | DB 01111100B | ||
| 905 | DB 01100000B | ||
| 906 | DB 01100000B | ||
| 907 | ; | ||
| 908 | DB 00000000B ;226 â | ||
| 909 | DB 01111110B | ||
| 910 | DB 01100110B | ||
| 911 | DB 01100000B | ||
| 912 | DB 01100000B | ||
| 913 | DB 01100000B | ||
| 914 | DB 01100000B | ||
| 915 | DB 00000000B | ||
| 916 | ; | ||
| 917 | DB 00000000B ;227 ã | ||
| 918 | DB 01111111B | ||
| 919 | DB 00110110B | ||
| 920 | DB 00110110B | ||
| 921 | DB 00110110B | ||
| 922 | DB 00110110B | ||
| 923 | DB 00110110B | ||
| 924 | DB 00000000B | ||
| 925 | ; | ||
| 926 | DB 01111110B ;228 ä | ||
| 927 | DB 01100110B | ||
| 928 | DB 00110000B | ||
| 929 | DB 00011000B | ||
| 930 | DB 00110000B | ||
| 931 | DB 01100110B | ||
| 932 | DB 01111110B | ||
| 933 | DB 00000000B | ||
| 934 | ; | ||
| 935 | DB 00000000B ;229 å | ||
| 936 | DB 00000000B | ||
| 937 | DB 00111111B | ||
| 938 | DB 01101100B | ||
| 939 | DB 01101100B | ||
| 940 | DB 01101100B | ||
| 941 | DB 00111000B | ||
| 942 | DB 00000000B | ||
| 943 | ; | ||
| 944 | DB 00000000B ;230 æ | ||
| 945 | DB 00110011B | ||
| 946 | DB 00110011B | ||
| 947 | DB 00110011B | ||
| 948 | DB 00110011B | ||
| 949 | DB 00111110B | ||
| 950 | DB 00110000B | ||
| 951 | DB 01100000B | ||
| 952 | ; | ||
| 953 | DB 00000000B ;231 ç | ||
| 954 | DB 00111011B | ||
| 955 | DB 01101110B | ||
| 956 | DB 00001100B | ||
| 957 | DB 00001100B | ||
| 958 | DB 00001100B | ||
| 959 | DB 00001100B | ||
| 960 | DB 00000000B | ||
| 961 | ; | ||
| 962 | DB 01111110B ;232 è | ||
| 963 | DB 00011000B | ||
| 964 | DB 00111100B | ||
| 965 | DB 01100110B | ||
| 966 | DB 01100110B | ||
| 967 | DB 00111100B | ||
| 968 | DB 00011000B | ||
| 969 | DB 01111110B | ||
| 970 | ; | ||
| 971 | DB 00011100B ;233 é | ||
| 972 | DB 00110110B | ||
| 973 | DB 01100011B | ||
| 974 | DB 01111111B | ||
| 975 | DB 01100011B | ||
| 976 | DB 00110110B | ||
| 977 | DB 00011100B | ||
| 978 | DB 00000000B | ||
| 979 | ; | ||
| 980 | DB 00011100B ;234 ê | ||
| 981 | DB 00110110B | ||
| 982 | DB 01100011B | ||
| 983 | DB 01100011B | ||
| 984 | DB 00110110B | ||
| 985 | DB 00110110B | ||
| 986 | DB 01110111B | ||
| 987 | DB 00000000B | ||
| 988 | ; | ||
| 989 | DB 00001110B ;235 ë | ||
| 990 | DB 00011000B | ||
| 991 | DB 00001100B | ||
| 992 | DB 00111110B | ||
| 993 | DB 01100110B | ||
| 994 | DB 01100110B | ||
| 995 | DB 00111100B | ||
| 996 | DB 00000000B | ||
| 997 | ; | ||
| 998 | DB 00000000B ;236 ì | ||
| 999 | DB 00000000B | ||
| 1000 | DB 01111110B | ||
| 1001 | DB 11011011B | ||
| 1002 | DB 11011011B | ||
| 1003 | DB 01111110B | ||
| 1004 | DB 00000000B | ||
| 1005 | DB 00000000B | ||
| 1006 | ; | ||
| 1007 | DB 00000110B ;237 í | ||
| 1008 | DB 00001100B | ||
| 1009 | DB 01111110B | ||
| 1010 | DB 11011011B | ||
| 1011 | DB 11011011B | ||
| 1012 | DB 01111110B | ||
| 1013 | DB 01100000B | ||
| 1014 | DB 11000000B | ||
| 1015 | ; | ||
| 1016 | DB 00011100B ;238 î | ||
| 1017 | DB 01100000B | ||
| 1018 | DB 11000000B | ||
| 1019 | DB 11111100B | ||
| 1020 | DB 11000000B | ||
| 1021 | DB 01100000B | ||
| 1022 | DB 00011100B | ||
| 1023 | DB 00000000B | ||
| 1024 | ; | ||
| 1025 | DB 00111100B ;239 ï | ||
| 1026 | DB 01100110B | ||
| 1027 | DB 01100110B | ||
| 1028 | DB 01100110B | ||
| 1029 | DB 01100110B | ||
| 1030 | DB 01100110B | ||
| 1031 | DB 01100110B | ||
| 1032 | DB 00000000B | ||
| 1033 | ; | ||
| 1034 | DB 00000000B ;240 ð | ||
| 1035 | DB 01111110B | ||
| 1036 | DB 00000000B | ||
| 1037 | DB 01111110B | ||
| 1038 | DB 00000000B | ||
| 1039 | DB 01111110B | ||
| 1040 | DB 00000000B | ||
| 1041 | DB 00000000B | ||
| 1042 | ; | ||
| 1043 | DB 00011000B ;241 ñ | ||
| 1044 | DB 00011000B | ||
| 1045 | DB 01111110B | ||
| 1046 | DB 00011000B | ||
| 1047 | DB 00011000B | ||
| 1048 | DB 00000000B | ||
| 1049 | DB 01111110B | ||
| 1050 | DB 00000000B | ||
| 1051 | ; | ||
| 1052 | DB 00110000B ;242 ò | ||
| 1053 | DB 00011000B | ||
| 1054 | DB 00001100B | ||
| 1055 | DB 00011000B | ||
| 1056 | DB 00110000B | ||
| 1057 | DB 00000000B | ||
| 1058 | DB 01111110B | ||
| 1059 | DB 00000000B | ||
| 1060 | ; | ||
| 1061 | DB 00001100B ;243 ó | ||
| 1062 | DB 00011000B | ||
| 1063 | DB 00110000B | ||
| 1064 | DB 00011000B | ||
| 1065 | DB 00001100B | ||
| 1066 | DB 00000000B | ||
| 1067 | DB 01111110B | ||
| 1068 | DB 00000000B | ||
| 1069 | ; | ||
| 1070 | DB 00001110B ;244 ô | ||
| 1071 | DB 00011011B | ||
| 1072 | DB 00011011B | ||
| 1073 | DB 00011000B | ||
| 1074 | DB 00011000B | ||
| 1075 | DB 00011000B | ||
| 1076 | DB 00011000B | ||
| 1077 | DB 00011000B | ||
| 1078 | ; | ||
| 1079 | DB 00011000B ;245 õ | ||
| 1080 | DB 00011000B | ||
| 1081 | DB 00011000B | ||
| 1082 | DB 00011000B | ||
| 1083 | DB 00011000B | ||
| 1084 | DB 11011000B | ||
| 1085 | DB 11011000B | ||
| 1086 | DB 01110000B | ||
| 1087 | ; | ||
| 1088 | DB 00011000B ;246 ö | ||
| 1089 | DB 00011000B | ||
| 1090 | DB 00000000B | ||
| 1091 | DB 01111110B | ||
| 1092 | DB 00000000B | ||
| 1093 | DB 00011000B | ||
| 1094 | DB 00011000B | ||
| 1095 | DB 00000000B | ||
| 1096 | ; | ||
| 1097 | DB 00000000B ;247 ÷ | ||
| 1098 | DB 01110110B | ||
| 1099 | DB 11011100B | ||
| 1100 | DB 00000000B | ||
| 1101 | DB 01110110B | ||
| 1102 | DB 11011100B | ||
| 1103 | DB 00000000B | ||
| 1104 | DB 00000000B | ||
| 1105 | ; | ||
| 1106 | DB 00111000B ;248 ø | ||
| 1107 | DB 01101100B | ||
| 1108 | DB 01101100B | ||
| 1109 | DB 00111000B | ||
| 1110 | DB 00000000B | ||
| 1111 | DB 00000000B | ||
| 1112 | DB 00000000B | ||
| 1113 | DB 00000000B | ||
| 1114 | ; | ||
| 1115 | DB 00000000B ;249 ù | ||
| 1116 | DB 00000000B | ||
| 1117 | DB 00000000B | ||
| 1118 | DB 00011000B | ||
| 1119 | DB 00011000B | ||
| 1120 | DB 00000000B | ||
| 1121 | DB 00000000B | ||
| 1122 | DB 00000000B | ||
| 1123 | ; | ||
| 1124 | DB 00000000B ;250 ú | ||
| 1125 | DB 00000000B | ||
| 1126 | DB 00000000B | ||
| 1127 | DB 00000000B | ||
| 1128 | DB 00011000B | ||
| 1129 | DB 00000000B | ||
| 1130 | DB 00000000B | ||
| 1131 | DB 00000000B | ||
| 1132 | ; | ||
| 1133 | DB 00001111B ;251 û | ||
| 1134 | DB 00001100B | ||
| 1135 | DB 00001100B | ||
| 1136 | DB 00001100B | ||
| 1137 | DB 11101100B | ||
| 1138 | DB 01101100B | ||
| 1139 | DB 00111100B | ||
| 1140 | DB 00011100B | ||
| 1141 | ; | ||
| 1142 | DB 01111000B ;252 ü | ||
| 1143 | DB 01101100B | ||
| 1144 | DB 01101100B | ||
| 1145 | DB 01101100B | ||
| 1146 | DB 01101100B | ||
| 1147 | DB 00000000B | ||
| 1148 | DB 00000000B | ||
| 1149 | DB 00000000B | ||
| 1150 | ; | ||
| 1151 | DB 01110000B ;253 ý | ||
| 1152 | DB 00011000B | ||
| 1153 | DB 00110000B | ||
| 1154 | DB 01100000B | ||
| 1155 | DB 01111000B | ||
| 1156 | DB 00000000B | ||
| 1157 | DB 00000000B | ||
| 1158 | DB 00000000B | ||
| 1159 | .LIST | ||
| 1160 | ; | ||
| 1161 | DB 00000000B ;254 þ | ||
| 1162 | DB 00000000B | ||
| 1163 | DB 00111100B | ||
| 1164 | DB 00111100B | ||
| 1165 | DB 00111100B | ||
| 1166 | DB 00111100B | ||
| 1167 | DB 00000000B | ||
| 1168 | DB 00000000B | ||
| 1169 | ; | ||
| 1170 | DB 00000000B ;255 | ||
| 1171 | DB 00000000B | ||
| 1172 | DB 00000000B | ||
| 1173 | DB 00000000B | ||
| 1174 | DB 00000000B | ||
| 1175 | DB 00000000B | ||
| 1176 | DB 00000000B | ||
| 1177 | DB 00000000B | ||
| 1178 | ; | ||
| 1179 | DW 865 ;TABLE ID | ||
| 1180 | ; include graftnom.inc | ||
| 1181 | DB "Nordic",0 ;LANGUAGE NAME, IN ASCIIZ FORMAT | ||
| 1182 | ;(the above "DB" is an example of the ENGLISH version of the above include file) | ||
| 1183 | IF ($-CSEG) MOD 16 ;IF NOT ALREADY ON 16 BYTE BOUNDARY | ||
| 1184 | DB (16-(($-CSEG) MOD 16)) DUP(0) ;ADD PADDING TO GET TO 16 BYTE BOUNDARY | ||
| 1185 | ENDIF | ||
| 1186 | CSEG ENDS | ||
| 1187 | END | ||
| 1188 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABP.ASM b/v4.0/src/CMD/GRAFTABL/GRTABP.ASM new file mode 100644 index 0000000..76503ac --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABP.ASM | |||
| @@ -0,0 +1,144 @@ | |||
| 1 | PAGE 90,132 ;AN000;A2 | ||
| 2 | TITLE GRTABP.SAL - GRAFTABL SYSTEM COMMAND LINE PARSER ;AN000; | ||
| 3 | ;****************** START OF SPECIFICATIONS ***************************** | ||
| 4 | ; MODULE NAME: GRTABP.SAL | ||
| 5 | ; | ||
| 6 | ; DESCRIPTIVE NAME: Include the DOS system PARSER in the SEGMENT | ||
| 7 | ; configuration expected by the modules of GRAFTABL. | ||
| 8 | ; | ||
| 9 | ;FUNCTION: The common code of the DOS command line PARSER is optimized by | ||
| 10 | ; the setting of certain switches that cause the conditional | ||
| 11 | ; assembly of only the required portions of the common PARSER. | ||
| 12 | ; The segment registers are ASSUMED according to the type .COM. | ||
| 13 | ; The Common PARSER is then INCLUDEd. | ||
| 14 | ; | ||
| 15 | ; ENTRY POINT: SYSPARSE, near | ||
| 16 | ; | ||
| 17 | ; INPUT: | ||
| 18 | ; ES - has seg id of the SEGMENT | ||
| 19 | ; that contains the input control blocks, | ||
| 20 | ; defined below. | ||
| 21 | ; | ||
| 22 | ; DI - offset into ES of the PARMS INPUT BLOCK | ||
| 23 | ; | ||
| 24 | ; DS - has seg id of the SEGMENT | ||
| 25 | ; that contains the DOS input COMMAND | ||
| 26 | ; string, which is originally presented at 81h | ||
| 27 | ; in the PSP. | ||
| 28 | ; | ||
| 29 | ; SI - offset into DS of the text of the DOS input COMMAND string | ||
| 30 | ; as originally presented at 81H in the PSP. | ||
| 31 | ; | ||
| 32 | ; DX - zero | ||
| 33 | ; | ||
| 34 | ; CX - ordinal value, intially zero, updated on each subsequent call | ||
| 35 | ; to the value returned in CX on the previous call. | ||
| 36 | ; | ||
| 37 | ; CS - points to the segment containing the | ||
| 38 | ; INCLUDE PARSE.ASM statement | ||
| 39 | ; | ||
| 40 | ; DS - also points to the segment containing the INCLUDE | ||
| 41 | ; PARSE.ASM statement. | ||
| 42 | ; | ||
| 43 | ; EXIT-NORMAL: Output registers: | ||
| 44 | ; AX - return code: | ||
| 45 | ; RC_No_Error equ 0 ; No error | ||
| 46 | ; RC_EOL equ -1 ; End of command line | ||
| 47 | ; | ||
| 48 | ; DX - Offset into ES of the selected RESULT BLOCK. | ||
| 49 | ; BL - terminated delimiter code | ||
| 50 | ; CX - new operand ordinal | ||
| 51 | ; SI - set past scanned operand | ||
| 52 | ; | ||
| 53 | ; EXIT-ERROR: Output registers: | ||
| 54 | ; AX - return code: | ||
| 55 | ; RC_Too_Many equ 1 ; Too many operands | ||
| 56 | ; RC_Op_Missing equ 2 ; Required operand missing | ||
| 57 | ; RC_Not_In_SW equ 3 ; Not in switch list provided | ||
| 58 | ; RC_Not_In_Key equ 4 ; Not in keyword list provided | ||
| 59 | ; RC_Out_Of_Range equ 6 ; Out of range specified | ||
| 60 | ; RC_Not_In_Val equ 7 ; Not in value list provided | ||
| 61 | ; RC_Not_In_Str equ 8 ; Not in string list provided | ||
| 62 | ; RC_Syntax equ 9 ; Syntax error | ||
| 63 | ; | ||
| 64 | ; INTERNAL REFERENCES: | ||
| 65 | ; ROUTINES: SYSPARSE:near (INCLUDEd in PARSE.ASM) | ||
| 66 | ; | ||
| 67 | ; DATA AREAS: none | ||
| 68 | ; | ||
| 69 | ; EXTERNAL REFERENCES: | ||
| 70 | ; ROUTINES: none | ||
| 71 | ; | ||
| 72 | ; DATA AREAS: control blocks pointed to by input registers. | ||
| 73 | ; | ||
| 74 | ; NOTES: | ||
| 75 | ; This module should be processed with the SALUT preprocessor | ||
| 76 | ; with the re-alignment not requested, as: | ||
| 77 | ; | ||
| 78 | ; SALUT GRTABP,NUL,; | ||
| 79 | ; | ||
| 80 | ; To assemble these modules, the alphabetical or sequential | ||
| 81 | ; ordering of segments may be used. | ||
| 82 | ; | ||
| 83 | ; For LINK instructions, refer to the PROLOG of the main module, | ||
| 84 | ; GRTAB.SAL. | ||
| 85 | ; | ||
| 86 | ;****************** END OF SPECIFICATIONS ***************************** | ||
| 87 | IF1 ;AN000; | ||
| 88 | %OUT COMPONENT=GRAFTABL, MODULE=GRTABP.SAL... ;AN000; | ||
| 89 | ENDIF ;AN000; | ||
| 90 | ; = = = = = = = = = = = = | ||
| 91 | HEADER <MACRO DEFINITION> ;AN000; | ||
| 92 | INCLUDE PATHMAC.INC ;AN006; | ||
| 93 | ; = = = = = = = = = = = = | ||
| 94 | |||
| 95 | HEADER MACRO TEXT ;;AN000; | ||
| 96 | .XLIST ;AN000; | ||
| 97 | SUBTTL TEXT ;AN000; | ||
| 98 | .LIST ;AN000; | ||
| 99 | PAGE ;AN000; | ||
| 100 | ENDM ;;AN000; | ||
| 101 | |||
| 102 | ; = = = = = = = = = = = = | ||
| 103 | HEADER <SYSPARSE - SYSTEM COMMAND LINE PARSER> ;AN000; | ||
| 104 | CSEG SEGMENT PARA PUBLIC ;AN000; | ||
| 105 | ASSUME CS:CSEG,DS:CSEG,ES:CSEG,SS:CSEG ;AN000; | ||
| 106 | |||
| 107 | FARSW EQU 0 ;AN000;CALL THE PARSER BY NEAR CALL | ||
| 108 | DATESW EQU 0 ;AN000;SUPPRESS DATE CHECKING | ||
| 109 | TIMESW EQU 0 ;AN000;SUPPRESS TIME CHECKING | ||
| 110 | FILESW EQU 0 ;AN000;SUPPRESS CHECKING FILE SPECIFICATION | ||
| 111 | CAPSW EQU 0 ;AN000;SUPPRESS FILE TABLE CAPS | ||
| 112 | CMPXSW EQU 0 ;AN000;SUPPRESS CHECKING COMPLEX LIST | ||
| 113 | DRVSW EQU 0 ;AN000;SUPPRESS SUPPORT OF DRIVE ONLY FORMAT | ||
| 114 | QUSSW EQU 0 ;AN000;SUPPRESS SUPPORT OF QUOTED STRING FORMAT | ||
| 115 | NUMSW EQU 0 ;AN000;SUPPRESS CHECKING NUMERIC VALUE | ||
| 116 | KEYSW EQU 0 ;AN000;SUPPRESS KEYWORD SUPPORT | ||
| 117 | SWSW EQU 1 ;AN000;DO SUPPORT SWITCHES | ||
| 118 | VAL1SW EQU 0 ;AN000;SUPPRESS SUPPORT OF VALUE DEFINITION 1 | ||
| 119 | VAL2SW EQU 0 ;AN000;SUPPRESS SUPPORT OF VALUE DEFINITION 2 | ||
| 120 | VAL3SW EQU 1 ;AN000;DO SUPPORT VALUE DEFINITION 3 | ||
| 121 | BASESW EQU 1 ;AN005;SPECIFY, PSDATA POINTED TO BY "DS" | ||
| 122 | INCSW EQU 0 ;AN006;DO NOT INCLUDE PSDATA.INC | ||
| 123 | |||
| 124 | |||
| 125 | ; INCLUDE PSDATA.INC ;AN006; WORK AREA FOR PARSER | ||
| 126 | .XLIST ;AN000; | ||
| 127 | .XCREF ;AN000; | ||
| 128 | INCLUDE PSDATA.INC ;AN006; WORK AREA FOR PARSER | ||
| 129 | .LIST ;AN000; | ||
| 130 | .CREF ;AN000; | ||
| 131 | PATHLABL GRTABP ;AN006; | ||
| 132 | |||
| 133 | PUBLIC SYSPARSE ;AN000;SUBROUTINE ENTRY POINT | ||
| 134 | |||
| 135 | ; INCLUDE PARSE.ASM ;GENERATED CODE SUPPRESSED FROM LISTING ;AN000; | ||
| 136 | .XLIST ;AN000; | ||
| 137 | .XCREF ;AN000; | ||
| 138 | INCLUDE PARSE.ASM ;AN000; | ||
| 139 | .LIST ;AN000; | ||
| 140 | .CREF ;AN000; | ||
| 141 | PATHLABL GRTABP ;AN006; | ||
| 142 | CSEG ENDS ;AN000; | ||
| 143 | END ;AN000; | ||
| 144 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABPAR.ASM b/v4.0/src/CMD/GRAFTABL/GRTABPAR.ASM new file mode 100644 index 0000000..320161d --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABPAR.ASM | |||
| @@ -0,0 +1,538 @@ | |||
| 1 | PAGE 90,132 ;AN000;A2 | ||
| 2 | TITLE GRTABPAR.SAL - LOOK AT COMMAND LINE PARMS ;AN000; | ||
| 3 | ;****************** START OF SPECIFICATIONS ***************************** | ||
| 4 | ; MODULE NAME: GRTABPAR.SAL | ||
| 5 | |||
| 6 | ; DESCRIPTIVE NAME: Handle the definition of the DOS command line parameters | ||
| 7 | ; and the interface to the DOS system PARSER. | ||
| 8 | |||
| 9 | ;FUNCTION: The static data areas are prescribed by the DOS system PARSER | ||
| 10 | ; to define the several parameters presented to GRAFTABL. These | ||
| 11 | ; data areas are passed to the PARSER, and its responses checked | ||
| 12 | ; to determine the nature of the user's specifications. Any errors | ||
| 13 | ; found in the user's parameters are defined in messages back | ||
| 14 | ; to the user. | ||
| 15 | |||
| 16 | ; ENTRY POINT: PARSER, near | ||
| 17 | |||
| 18 | ; INPUT: (DOS COMMAND LINE PARAMETERS) | ||
| 19 | |||
| 20 | ; [d:][path] GRAFTABL [cp|?|/STA|/STATUS] | ||
| 21 | |||
| 22 | ; WHERE | ||
| 23 | ; [d:][path] - Path where the GRAFTABL command resides. | ||
| 24 | |||
| 25 | ; [cp] - Codepage number to be loaded. If blank, | ||
| 26 | ; 437 is assumed | ||
| 27 | |||
| 28 | ; [?] - This requests a display of the parameters | ||
| 29 | ; supported by the GRAFTABL command. | ||
| 30 | |||
| 31 | ; [/STATUS] - (May be shortened to just /STA.) This | ||
| 32 | ; requests the current codepage already | ||
| 33 | ; loaded by a previous GRAFTABL, if any, | ||
| 34 | ; be displayed. | ||
| 35 | |||
| 36 | ; Upon entry to PARSER in this module, | ||
| 37 | ; "CURRENT_PARM" = offset to start of parm text in command string | ||
| 38 | ; "ORDINAL" = initialized to zero | ||
| 39 | ; PSP+81H = text of DOS command line parms string | ||
| 40 | |||
| 41 | ; EXIT-NORMAL: If a Code Page number was specified | ||
| 42 | ; BX = Offset to language table to be loaded | ||
| 43 | ; DX = Integer value of Code Page specified | ||
| 44 | ; If /STATUS (or /STA) was specified | ||
| 45 | ; BX = 0 | ||
| 46 | ; If Question mark was specified | ||
| 47 | ; BX=-1 | ||
| 48 | |||
| 49 | ; EXIT-ERROR: If there was any problem with the parms, | ||
| 50 | ; the question mark is assumed, and the appropriate | ||
| 51 | ; PARSE error message is displayed. | ||
| 52 | ; The Errorlevel code of "EXPAR" (3), meaning: "PARM ERROR", | ||
| 53 | ; set in "EXITFL", is requested to be returned to the user. | ||
| 54 | |||
| 55 | ; INTERNAL REFERENCES: | ||
| 56 | ; ROUTINES: | ||
| 57 | ; PARSE_ERROR:NEAR Display the appropriate Parse error message. | ||
| 58 | |||
| 59 | ; DATA AREAS: | ||
| 60 | ; The several parameter control blocks, defined by the System | ||
| 61 | ; PARSER interface, defining the GRAFTABL parameters. | ||
| 62 | |||
| 63 | ; EXTERNAL REFERENCES: | ||
| 64 | ; ROUTINES: | ||
| 65 | ; SENDMSG:NEAR Uses Msg Descriptor to drive message handler. | ||
| 66 | ; SYSPARSE:NEAR System Command Line Common Parser. | ||
| 67 | |||
| 68 | ; DATA AREAS: | ||
| 69 | ; TABLEUS:BYTE First table of Fonts, happens to be the USA version. | ||
| 70 | ; (Format of language Font defined in LANGUAGE STRUC.) | ||
| 71 | ; EXITFL:BYTE Errorlevel return code. | ||
| 72 | ; MSGNUM_PARSE:WORD Message descriptor for all parse errors. | ||
| 73 | ; ACTIVECPID:WORD Pointer to CPID entry of active entry, where the | ||
| 74 | ; CPID table is a set of 4 byte asciiz strings, | ||
| 75 | ; each defining the number of a Code Page font. | ||
| 76 | |||
| 77 | ; NOTES: | ||
| 78 | ; This module should be processed with the SALUT preprocessor | ||
| 79 | ; with the re-alignment not requested, as: | ||
| 80 | |||
| 81 | ; SALUT GRTABPAR,NUL | ||
| 82 | |||
| 83 | ; To assemble these modules, the alphabetical or sequential | ||
| 84 | ; ordering of segments may be used. | ||
| 85 | |||
| 86 | ; For LINK instructions, refer to the PROLOG of the main module, | ||
| 87 | ; GRTAB.SAL. | ||
| 88 | |||
| 89 | ; REVISION HISTORY: | ||
| 90 | ; A001 PTM 382 display "ACTIVE" OR "PREVIOUS" CP. | ||
| 91 | ; A002 PTM 474 Avoid duplicate switches | ||
| 92 | ; A003 PTM 538 Display parm in error | ||
| 93 | |||
| 94 | ;****************** END OF SPECIFICATIONS ***************************** | ||
| 95 | IF1 ;AN000; | ||
| 96 | %OUT COMPONENT=GRAFTABL, MODULE=GRTABPAR.SAL... ;AN000; | ||
| 97 | ENDIF ;AN000; | ||
| 98 | ; = = = = = = = = = = = = | ||
| 99 | INCLUDE PATHMAC.INC ;AN006; | ||
| 100 | ; = = = = = = = = = = = = | ||
| 101 | HEADER MACRO TEXT ;;AN000; | ||
| 102 | .XLIST ;AN000; | ||
| 103 | SUBTTL TEXT ;AN000; | ||
| 104 | .LIST ;AN000; | ||
| 105 | PAGE ;AN000; | ||
| 106 | ENDM ;;AN000; | ||
| 107 | ; = = = = = = = = = = = = | ||
| 108 | ; $SALUT (4,23,28,36) ;AN000; | ||
| 109 | EXTRN CPID_L:ABS ;AN000;BYTES PER CPID ENTRY | ||
| 110 | |||
| 111 | MSG_DESC STRUC ;AN003; | ||
| 112 | MSG_NUM DW ? ;AN003;MESSAGE NUMBER (TO AX) | ||
| 113 | MSG_HANDLE DW ? ;AN003;HANDLE OF OUTPUT DEVICE (TO BX) | ||
| 114 | MSG_SUBLIST DW ? ;AN003;POINTER TO SUBLIST (TO SI) | ||
| 115 | MSG_COUNT DW ? ;AN003;SUBSTITUTION COUNT (TO CX) | ||
| 116 | MSG_CLASS DW ? ;AN003;MESSAGE CLASS (IN HIGH BYTE, TO DH) | ||
| 117 | ; LOW BYTE HAS 0 (FUNCTION "NO INPUT", TO DL);AN003; | ||
| 118 | MSG_DESC ENDS ;AN003; | ||
| 119 | |||
| 120 | ONE_SUBS EQU 1 ;AN003;NUMBER OF VARIABLES | ||
| 121 | |||
| 122 | SUBLIST STRUC ;AN000; | ||
| 123 | SUB_SIZE DB ? ;AN003;SUBLIST SIZE (POINTER TO NEXT SUBLIST) | ||
| 124 | SUB_RES DB ? ;AN003;RESERVED | ||
| 125 | ;NEXT FIELD IS TO BE USED AS A DOUBLE WORD ;AN003; | ||
| 126 | SUB_VALUE DW ? ;AN003;TIME, DATE, OR PTR TO DATA ITEM | ||
| 127 | SUB_VALUE_SEG DW ? ;AN003;SEG ID OF PTR | ||
| 128 | ;(ABOVE FIELD MUST BE FILLED AT EXECUTION TIME ;AN003; | ||
| 129 | ; IF THIS IS A .COM FILE) ;AN003; | ||
| 130 | SUB_ID DB ? ;AN003;N OF %N | ||
| 131 | SUB_FLAGS DB ? ;AN003;DATA TYPE FLAGS | ||
| 132 | SUB_MAX_WIDTH DB ? ;AN003;MAXIMUM FIELD WIDTH (0=UNLIMITED) | ||
| 133 | SUB_MIN_WIDTH DB ? ;AN003;MINIMUM FIELD WIDTH | ||
| 134 | SUB_PAD_CHAR DB ? ;AN003;CHARACTER FOR PAD FIELD | ||
| 135 | ; CAN BE " ", "0" OR ",". ;AN003; | ||
| 136 | ; "," CAUSES INSERTION OF THE ACTIVE ;AN003; | ||
| 137 | ; THOUSANDS SEPARATOR BETWEEN EVERY 3 DIGITS. ;AN003; | ||
| 138 | SUBLIST ENDS ;AN003; | ||
| 139 | |||
| 140 | ; LOCAL EQUATES | ||
| 141 | ZERO EQU 0 ;AN000;COMPARAND FOR MISSING PARMS | ||
| 142 | RETCODE_QUESTION EQU -1 ;AN000;VALUE IN BX, IF PARM=? | ||
| 143 | EXPAR EQU 3 ;AN000;RETURN TO DOS, INVALID DOS COMND LINE PARMS | ||
| 144 | CR EQU 13 ;AN000;CARRIAGE RETURN | ||
| 145 | BLANK EQU " " ;AN002;AVOIDS DUPLICATES SWITCHES | ||
| 146 | NUL EQU 0 ;AN003;ASCIIZ DELIMITER | ||
| 147 | ; = = = = = = = = = = = = | ||
| 148 | ; EXIT CODES FROM SYSPARSE (WHEN CY=0) | ||
| 149 | |||
| 150 | SYSPRM_EX_OK EQU 0 ;AN000; no error | ||
| 151 | SYSPRM_EX_MANY EQU 1 ;AN000; too many operands | ||
| 152 | SYSPRM_EX_MISSING EQU 2 ;AN000; required operand missing | ||
| 153 | SYSPRM_EX_NOT_SWLIST EQU 3 ;AN000; not in switch list provided | ||
| 154 | SYSPRM_EX_NOT_KEYLIST EQU 4 ;AN000; not in keyword list provided | ||
| 155 | SYSPRM_EX_RANGE EQU 6 ;AN000; out of range specified | ||
| 156 | SYSPRM_EX_VALUE EQU 7 ;AN000; not in value list provided | ||
| 157 | SYSPRM_EX_STRING EQU 8 ;AN000; not in string list provided | ||
| 158 | SYSPRM_EX_SYNTAX EQU 9 ;AN000; syntax error | ||
| 159 | SYSPRM_EX_EOL EQU -1 ;AN000; end of command line | ||
| 160 | ; = = = = = = = = = = = = | ||
| 161 | HEADER <STRUC - DEFINITIONS OF EXTERNAL CONTROL BLOCKS> ;AN000; | ||
| 162 | LANGUAGE STRUC ;AN000;DEFINITION OF EACH LANGUAGE TABLE | ||
| 163 | LANCHAR DB 1024 DUP(?) ;AN000;8 BYTES PER EACH OF 128 CHARACTERS | ||
| 164 | LANID DW ? ;AN000;TWO BYTE CODEPAGE ID, TO MATCH | ||
| 165 | ; GRAFTABL CMD LINE PARM | ||
| 166 | LANNAME DB 14 DUP(?) ;AN000;ASCIIZ STRING NAME OF LANGUAGE | ||
| 167 | LANGUAGE ENDS ;AN000; | ||
| 168 | ; = = = = = = = = = = = = | ||
| 169 | PSP STRUC ;AN000; | ||
| 170 | DB 80H DUP (?) ;AN000;SKIP OVER FIRST HALF OF PSP | ||
| 171 | PSP_PARMLEN DB ? ;AN000;NUMBER OF BYTES IN DOS COMMAND LINE | ||
| 172 | PSP_COMMAND DB 127 DUP(?) ;AN000;TEXT OF DOS COMMAND LINE | ||
| 173 | PSP ENDS ;AN000; | ||
| 174 | ; = = = = = = = = = = = = | ||
| 175 | HEADER <PARSING WORKAREAS> ;AN000; | ||
| 176 | ; $SALUT (4,14,19,36) ;AN000; | ||
| 177 | CSEG SEGMENT PARA PUBLIC ;AN000; | ||
| 178 | ASSUME CS:CSEG,DS:CSEG,ES:CSEG,SS:CSEG ;AN000; | ||
| 179 | |||
| 180 | EXTRN SENDMSG:NEAR ;AN000;USES MSG DESCRIPTOR TO DRIVE MESSAGE HANDLR | ||
| 181 | EXTRN SYSPARSE:NEAR ;AN000;SYSTEM COMMAND LINE PARSER | ||
| 182 | |||
| 183 | EXTRN TABLEUS:BYTE ;AN000;FIRST TABLE OF FONTS | ||
| 184 | EXTRN EXITFL:BYTE ;AN000;ERRORLEVEL RETURN CODE | ||
| 185 | EXTRN MSGNUM_PARSE:WORD ;AN000;MESSAGE DESCRIPTOR FOR ALL PARSE ERRORS | ||
| 186 | EXTRN SUBLIST_PARSE:WORD ;AN003;POINTS TO INVALID PARM | ||
| 187 | EXTRN ACTIVECPID:WORD ;AN000;POINTER TO CPID ENTRY OF ACTIVE ENTRY | ||
| 188 | ; = = = = = = = = = = = = | ||
| 189 | |||
| 190 | CURRENT_PARM DW 81H ;AN000;POINTER INTO COMMAND OF NEXT OPERAND | ||
| 191 | PUBLIC CURRENT_PARM ;AN000; | ||
| 192 | |||
| 193 | ORDINAL DW 0 ;AN000;ORDINAL NUMBER OF WHICH PARM TO PARSE | ||
| 194 | PUBLIC ORDINAL ;AN000; | ||
| 195 | |||
| 196 | FIRST_TIME DB 0 ;AN000;INDICATES IF A PARM ALREADY FOUND | ||
| 197 | PARSE_RESULT DW 0 ;AN000;TEMP, HOLDS BX TO BE RETURNED | ||
| 198 | ; If a Code Page number was specified | ||
| 199 | ; BX = Offset to language table to be loaded | ||
| 200 | ; DX = Integer value of Code Page specified | ||
| 201 | ; If /STATUS (or /STA) was specified | ||
| 202 | ; BX = 0 | ||
| 203 | ; If Question mark was specified | ||
| 204 | ; BX=-1 | ||
| 205 | ; = = = = = = = = = = = = | ||
| 206 | HEADER <DOS COMMAND LINE PARSER CONTROL BLOCKS> ;AN000; | ||
| 207 | |||
| 208 | ;INPUT PARAMETERS CONTROL BLOCK, POINTED TO BY ES:DI WHEN CALLING PARSER | ||
| 209 | |||
| 210 | PUBLIC PARMS ;AN000;LET LINK MAKE PARMS BLOCK ADDRESSABLE | ||
| 211 | PARMS LABEL BYTE ;AN000;PARMS CONTROL BLOCK | ||
| 212 | DW PARMSX ;AN000;POINTER TO PARMS EXTENSION | ||
| 213 | DB 0 ;AN000; NUMBER OF STRINGS (0, 1, 2) | ||
| 214 | ; NEXT LIST WOULD BE EXTRA DELIM LIST | ||
| 215 | ; (,& WHITESPACE ALWAYS) | ||
| 216 | ; NEXT LIST WOULD BE EXTRA END OF LINE LIST | ||
| 217 | ; (CR,LF,0 ALWAYS) | ||
| 218 | |||
| 219 | ;SYSTEM PARSER PARAMETER EXTENSION CONTROL BLOCK | ||
| 220 | PARMSX LABEL BYTE ;AN000;PARMS EXTENSION CONTROL BLOCK | ||
| 221 | DB 0,1 ;AN000; MIN, MAX POSITIONAL OPERANDS ALLOWED | ||
| 222 | DW CONTROL_POS ;AN000; DESCRIPTION OF POSITIONAL 1 | ||
| 223 | |||
| 224 | DB 1 ;AN000; MAX SWITCH OPERANDS ALLOWED | ||
| 225 | DW CONTROL_SW ;AN000; DESCRIPTION OF SWITCH 1 | ||
| 226 | |||
| 227 | DB 0 ;AN000; MAX KEYWORD OPERANDS ALLOWED | ||
| 228 | ; THERE IS NO CONTROL BLOCK | ||
| 229 | ; DEFINING KEYWORDS | ||
| 230 | |||
| 231 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 232 | HEADER <POSITIONAL PARM DESCRIPTOR BLOCK> ;AN000; | ||
| 233 | ;PARSER CONTROL BLOCK DEFINING THE ONLY POSITIONAL PARAMETER, OPTIONAL | ||
| 234 | |||
| 235 | ;FIRST POSITIONAL PARAMETER IS: | ||
| 236 | ; [cp|?] THE CODEPAGE NUMBER, OR THE QUESTION MARK | ||
| 237 | |||
| 238 | PUBLIC CONTROL_POS ;AN000;LET LINK MAKE THIS ADDRESSABLE | ||
| 239 | CONTROL_POS LABEL BYTE ;AN000;FIRST POSITIONAL DESCRIPTOR FOR FILESPEC, | ||
| 240 | ; OPTIONAL | ||
| 241 | DW 2001H ;AN000; CONTROLS TYPE MATCHED | ||
| 242 | ; SELECTED BITS: "SIMPLE STRING" AND "OPTIONAL" | ||
| 243 | |||
| 244 | ; 8000H=NUMERIC VALUE, (VALUE LIST WILL BE CHECKED) | ||
| 245 | ; 4000H=SIGNED NUMERIC VALUE (VALUE LIST WILL BE | ||
| 246 | ; CHECKED) | ||
| 247 | ; 2000H=SIMPLE STRING(VALUE LIST WILL BE CHECKED) | ||
| 248 | ; 1000H=DATE STRING (VALUE LIST WON'T BE CHECKED) | ||
| 249 | ; 0800H=TIME STRING (VALUE LIST WON'T BE CHECKED) | ||
| 250 | ; 0400H=COMPLEX LIST (VALUE LIST WON'T BE CHECKED) | ||
| 251 | ; 0200H=FILE SPEC (VALUE LIST WON'T BE CHECKED) | ||
| 252 | ; 0100H=DRIVE ONLY (VALUE LIST WON'T BE CHECKED) | ||
| 253 | ; 0080H=QUOTED STRING (VALUE LIST WON'T BE CHECKED) | ||
| 254 | ; 0010H=IGNORE ":" AT END IN MATCH | ||
| 255 | ; 0002H=REPEATS ALLOWED | ||
| 256 | ; 0001H=OPTIONAL | ||
| 257 | |||
| 258 | DW 0000H ;AN000;FUNCTION_FLAGS ("NO CAPS") | ||
| 259 | ; 0001H=CAP RESULT BY FILE TABLE | ||
| 260 | ; 0002H=CAP RESULT BY CHAR TABLE | ||
| 261 | ; 0010H=REMOVE ":" AT END | ||
| 262 | DW RESULT ;AN000; RESULT BUFFER | ||
| 263 | DW VALS ;AN000; VALUE LISTS | ||
| 264 | DB 0 ;AN000; NUMBER OF KEYWORD/SWITCH SYNONYMS | ||
| 265 | ; IN FOLLOWING LIST | ||
| 266 | |||
| 267 | ;VALUE CONTROL BLOCK FOR THE POSITIONAL PARAMETERS | ||
| 268 | VALS DB 3 ;AN000;NUMBER OF VALS DEFINITIONS (0-3) | ||
| 269 | DB 0 ;AN000;NUMBER OF RANGES (NONE) | ||
| 270 | DB 0 ;AN000;NUMBER OF NUMERIC CHOICES (NONE) | ||
| 271 | DB 6 ;AN000;NUMBER OF CHOICE STRINGS | ||
| 272 | |||
| 273 | |||
| 274 | ;THE ORDER OF THESE VALUE DEFINITIONS IS SIGNIFICANT. THEIR ORDER MUST | ||
| 275 | ;MATCH THE ORDER IN WHICH THE CORRESPONDING FONT TABLE MODULES ARE | ||
| 276 | ;LINKED TOGETHER. THUE THE "VALUE RETURNED" OF 1 MEANS THE FIRST LINKED | ||
| 277 | ;FONT TABLE, THE VALUE OF 5 MEANS THE FIFTH LINKED FONT TABLE, ETC. | ||
| 278 | |||
| 279 | VAL_437 EQU 1 ;AN000;VALUE RETURNED | ||
| 280 | DB VAL_437 ;AN000; FOR: | ||
| 281 | DW S437 ;AN000;SPECIFIC CHOICE IF STRING | ||
| 282 | |||
| 283 | VAL_850 EQU 2 ;AN000;VALUE RETURNED | ||
| 284 | DB VAL_850 ;AN000; FOR: | ||
| 285 | DW S850 ;AN000;SPECIFIC CHOICE IF STRING | ||
| 286 | |||
| 287 | VAL_860 EQU 3 ;AN000;VALUE RETURNED | ||
| 288 | DB VAL_860 ;AN000; FOR: | ||
| 289 | DW S860 ;AN000;SPECIFIC CHOICE IF STRING | ||
| 290 | |||
| 291 | VAL_863 EQU 4 ;AN000;VALUE RETURNED | ||
| 292 | DB VAL_863 ;AN000; FOR: | ||
| 293 | DW S863 ;AN000;SPECIFIC CHOICE IF STRING | ||
| 294 | |||
| 295 | VAL_865 EQU 5 ;AN000;VALUE RETURNED | ||
| 296 | DB VAL_865 ;AN000; FOR: | ||
| 297 | DW S865 ;AN000;SPECIFIC CHOICE IF STRING | ||
| 298 | |||
| 299 | VAL_QUESTION EQU 6 ;AN000;VALUE RETURNED | ||
| 300 | DB VAL_QUESTION ;AN000; FOR: | ||
| 301 | DW SQU ;AN000;SPECIFIC CHOICE IF STRING | ||
| 302 | |||
| 303 | ; SET OF ASCIIZ STRINGS, DEFINING THE POSITIONAL PARAMETER | ||
| 304 | S437 DB "437",0 ;AN000;USA | ||
| 305 | S850 DB "850",0 ;AN000;MULTI-LINGUAL | ||
| 306 | S860 DB "860",0 ;AN000;PORTUGUESE | ||
| 307 | S863 DB "863",0 ;AN000;CANADIAN FRENCH | ||
| 308 | S865 DB "865",0 ;AN000;NORDIC | ||
| 309 | SQU DB "?",0 ;AN000; | ||
| 310 | |||
| 311 | ;RESULTS CONTROL BLOCK FOR THE POSITIONAL PARAMETER, AND SWITCH PARAMETER | ||
| 312 | RESULT LABEL BYTE ;AN000; BELOW FILLED IN FOR DEFAULTS | ||
| 313 | DB 3 ;AN000; TYPE RETURNED: 0=RESERVED, | ||
| 314 | ; 1=NUMBER, 2=LIST INDEX, | ||
| 315 | ; 3=STRING, 4=COMPLEX, | ||
| 316 | ; 5=FILESPEC, 6=DRIVE | ||
| 317 | ; 7=DATE, 8=TIME | ||
| 318 | ; 9=QUOTED STRING | ||
| 319 | RESULT_TAG DB 0FFH ;AN000; MATCHED ITEM TAG | ||
| 320 | RESULT_SYN DW 0 ;AN000;POINTER TO SYNONYM | ||
| 321 | |||
| 322 | RESULT_PTR DD ? ;AN000;OFFSET OF STRING VALUE | ||
| 323 | |||
| 324 | ; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | ||
| 325 | HEADER <SWITCH PARM DESCRIPTOR BLOCK> ;AN000; | ||
| 326 | ;PARSER CONTROL BLOCK DEFINING THE ONLY SWITCH, OPTIONAL | ||
| 327 | |||
| 328 | ;THE SWITCH IS "/STA" OR "/STATUS". WHEN REQUESTED, IT MEANS TO IDENTIFY | ||
| 329 | ;WHAT CODEPAGE IS CURRENTLY SUPPORTED BY THE PREVIOUS GRAFTABL, IF ANY. | ||
| 330 | PUBLIC CONTROL_SW ;AN000;LET LINK MAKE THIS ADDRESSABLE | ||
| 331 | CONTROL_SW LABEL BYTE ;AN000;SWITCH DESCRIPTOR FOR /STA | ||
| 332 | DW 0001H ;AN000; CONTROLS TYPE MATCHED | ||
| 333 | ;SELECTED BITS: "OPTIONAL" | ||
| 334 | ; 8000H=NUMERIC VALUE, (VALUE LIST WILL BE CHECKED) | ||
| 335 | ; 4000H=SIGNED NUMERIC VALUE (VALUE LIST WILL BE | ||
| 336 | ; CHECKED) | ||
| 337 | ; 2000H=SIMPLE STRING(VALUE LIST WILL BE CHECKED) | ||
| 338 | ; 1000H=DATE STRING (VALUE LIST WON'T BE CHECKED) | ||
| 339 | ; 0800H=TIME STRING (VALUE LIST WON'T BE CHECKED) | ||
| 340 | ; 0400H=COMPLEX LIST (VALUE LIST WON'T BE CHECKED) | ||
| 341 | ; 0200H=FILE SPEC (VALUE LIST WON'T BE CHECKED) | ||
| 342 | ; 0100H=DRIVE ONLY (VALUE LIST WON'T BE CHECKED) | ||
| 343 | ; 0080H=QUOTED STRING (VALUE LIST WON'T BE CHECKED) | ||
| 344 | ; 0010H=IGNORE ":" AT END IN MATCH | ||
| 345 | ; 0002H=REPEATS ALLOWED | ||
| 346 | ; 0001H=OPTIONAL | ||
| 347 | |||
| 348 | DW 0000H ;AN000;FUNCTION_FLAGS ("NO CAPS") | ||
| 349 | ; 0001H=CAP RESULT BY FILE TABLE | ||
| 350 | ; 0002H=CAP RESULT BY CHAR TABLE | ||
| 351 | ; 0010H=REMOVE ":" AT END | ||
| 352 | |||
| 353 | DW RESULT ;AN000; RESULT BUFFER | ||
| 354 | ;(USE SAME RESULT BUF AS DID POSITIONAL PARM) | ||
| 355 | DW NOVALS ;AN000; VALUE LISTS | ||
| 356 | DB 2 ;AN000; NUMBER OF KEYWORD/SWITCH SYNONYMS | ||
| 357 | ; IN FOLLOWING LIST | ||
| 358 | SW_STA DB "/STA",0 ;AN000; IF n >0, KEYWORD 1 | ||
| 359 | SW_STATUS DB "/STATUS",0 ;AN000;SECOND KEYWORD | ||
| 360 | |||
| 361 | ;VALUE CONTROL BLOCK FOR THE SWITCHES | ||
| 362 | NOVALS LABEL BYTE ;AN000; | ||
| 363 | DB 0 ;AN000; NUMBER OF VALUE DEFINITIONS (0 - 3) | ||
| 364 | ; = = = = = = = = = = = = | ||
| 365 | PATHLABL GRTABPAR ;AN006; | ||
| 366 | HEADER <PARSER - ASK SYSPARM TO DECODE PARAMETERS> ;AN000; | ||
| 367 | ; $SALUT (4,4,9,36) ;AN000; | ||
| 368 | PARSER PROC NEAR ;AN000; | ||
| 369 | PUBLIC PARSER ;AN000; | ||
| 370 | |||
| 371 | ;INPUT: "CURRENT_PARM" = OFFSET TO NEXT PARM IN COMMAND STRING | ||
| 372 | ; "ORDINAL" = COUNT OF NEXT PARM TO PARSE | ||
| 373 | ; PSP+81H = TEXT OF DOS COMMAND LINE PARMS STRING | ||
| 374 | ;OUTPUT: IF A CODEPAGE NUMBER WAS SPECIFIED | ||
| 375 | ; BX = OFFSET TO LANGUAGE TABLE TO BE LOADED | ||
| 376 | ; DX = INTEGER VALUE OF CODEPAGE SPECIFIED | ||
| 377 | ; IF /STATUS WAS SPECIFIED | ||
| 378 | ; BX = 0 | ||
| 379 | ; IF QUESTION MARK WAS SPECIFIED | ||
| 380 | ; BX=-1 | ||
| 381 | |||
| 382 | ;IF THERE WAS ANY PROBLEM WITH THE PARMS, THE QUESTION MARK IS ASSUMED, | ||
| 383 | ;AND "EXITFL" SET TO "EXPAR" TO INDICATE PARM ERROR. | ||
| 384 | |||
| 385 | ;IT A CP IS SPECIFIED, A STATUS REPORT IS ALWAYS GIVEN TO SAY WHAT WHAT | ||
| 386 | ;THERE PREVIOUSLY, SO IF THE USER SPECIFIED A CP AND THE /STATUS SWITCH, | ||
| 387 | ;THEN THE /STATUS DOES NOTHING BEYOND WHAT WOULD HAVE BEEN DONE ALREADY | ||
| 388 | ;WITH JUST THE CP SPECIFICATION. I ALWAYS REPORT STATUS. THE ONLY | ||
| 389 | ;REASON TO HAVE /STATUS IS TO BE ABLE TO SEE WHAT IS THERE ALREADY | ||
| 390 | ;WITHOUT INVOKING THE DEFAULT OF 437 (USA) BY NOT SPECIFYING A CP. | ||
| 391 | ; = = = = = = = = = = = = | ||
| 392 | |||
| 393 | ; $SEARCH COMPLEX ;AN000;LOOP THRU COMMAND LINE | ||
| 394 | JMP SHORT $$SS1 | ||
| 395 | $$DO1: | ||
| 396 | ;LOOKING AT RET CODE IN AX SET BY SYSPARSE | ||
| 397 | CMP AX,ZERO ;AN000;WERE THERE ANY ERRORS? | ||
| 398 | ; $EXITIF NE ;AN000;HAD A PROBLEM | ||
| 399 | JE $$IF1 | ||
| 400 | CALL PARSE_ERROR ;AN000;DISPLAY REASON FOR ERROR | ||
| 401 | |||
| 402 | ; $ORELSE LONG ;AN000;SINCE NO PROBLEM, SO FAR | ||
| 403 | JMP $$SR1 | ||
| 404 | $$IF1: | ||
| 405 | MOV ORDINAL,CX ;AN000;SAVE UPDATED COUNT | ||
| 406 | CMP FIRST_TIME,ZERO ;AN000;DO I HAVE A PARM YET? | ||
| 407 | ; $IF E ;AN000;NOT YET, LOOK AT THIS ONE JUST FOUND | ||
| 408 | JNE $$IF4 | ||
| 409 | MOV CURRENT_PARM,SI ;AN000;REMEMBER HOW FAR I GOT | ||
| 410 | CMP RESULT_SYN,ZERO ;AN000;WAS POSITIONAL PARM SPECIFIED? | ||
| 411 | ; $IF E ;AN000;IF POSITIONAL PARM SPECIFIED, | ||
| 412 | JNE $$IF5 | ||
| 413 | MOV CL,RESULT_TAG ;AN000;GET ID OF SPECIFIED PARM | ||
| 414 | XOR CH,CH ;AN000;CLEAR HIGH BYTE | ||
| 415 | CMP CL,VAL_QUESTION ;AN000;WAS "?" SPECIFIED? | ||
| 416 | ; $IF E ;AN000;IF "?" SPECIFIED | ||
| 417 | JNE $$IF6 | ||
| 418 | MOV BX,RETCODE_QUESTION ;AN000;INDICATE THAT "?" SPECIFIED | ||
| 419 | ; $ELSE ;AN000;SINCE "?" NOT SPECIFIED | ||
| 420 | JMP SHORT $$EN6 | ||
| 421 | $$IF6: | ||
| 422 | LEA BX,TABLEUS ;AN000;GET WHERE FIRST CODEPAGE STARTS, USING CX | ||
| 423 | ; AS A COUNTER, STEP THRU THE LANGUAGE TABLES | ||
| 424 | ; UNTIL GETTING TO THE SPECIFIED ONE | ||
| 425 | ; $DO COMPLEX ;AN000; | ||
| 426 | JMP SHORT $$SD8 | ||
| 427 | $$DO8: | ||
| 428 | ADD BX,TYPE LANGUAGE ;AN000;POINT TO NEXT TABLE | ||
| 429 | ADD ACTIVECPID,CPID_L ;AN000;SELECT NEXT CPID ENTRY | ||
| 430 | ; $STRTDO ;AN000; | ||
| 431 | $$SD8: | ||
| 432 | ; $ENDDO LOOP ;AN000;DECREMENT INDEX | ||
| 433 | LOOP $$DO8 | ||
| 434 | ;BX-OFFSET TO LANGUAGE TABLE | ||
| 435 | ; INDICATED BY POSITIONAL PARM | ||
| 436 | ; $ENDIF ;AN000;"?" SPECIFIED? | ||
| 437 | $$EN6: | ||
| 438 | ; $ELSE ;AN000;SINCE NOT POSITIONAL PARM SPECIFIED | ||
| 439 | JMP SHORT $$EN5 | ||
| 440 | $$IF5: | ||
| 441 | ;RESULT_SYN POINTS TO A SWITCH | ||
| 442 | XOR BX,BX ;AN000; MUST HAVE BEEN THE SWITCH, /STATUS | ||
| 443 | MOV SW_STA,BLANK ;AN002;AVOID THE DUPLICATION OF THIS SWITCH | ||
| 444 | MOV SW_STATUS,BLANK ;AN002;AVOID THE DUPLICATION OF THIS SWITCH | ||
| 445 | ; $ENDIF ;AN000;POSITIONAL? | ||
| 446 | $$EN5: | ||
| 447 | INC FIRST_TIME ;AN000;INDICATE A PARM HAS BEEN FOUND | ||
| 448 | ; $ELSE ;AN000;SINCE ALREADY HAVE A PARM | ||
| 449 | JMP SHORT $$EN4 | ||
| 450 | $$IF4: | ||
| 451 | PUSH SI ;AN003;SAVE NEW INDEX TO COMMAND LINE | ||
| 452 | CALL PARSE_ERROR ;AN000;FUSS ABOUT TOO MANY PARMS | ||
| 453 | |||
| 454 | POP CURRENT_PARM ;AN000;REMEMBER HOW FAR I GOT | ||
| 455 | |||
| 456 | ; $ENDIF ;AN000;ALREADY HAVE A PARM? | ||
| 457 | $$EN4: | ||
| 458 | MOV PARSE_RESULT,BX ;AN000;SAVE THE RESULT OF THIS PARSE | ||
| 459 | ; $STRTSRCH ;AN000; | ||
| 460 | $$SS1: | ||
| 461 | LEA DI,PARMS ;AN000; ES:DI = PARSE CONTROL DEFINITON | ||
| 462 | MOV SI,CURRENT_PARM ;AN000; DS:SI = COMMAND STRING, NEXT PARM | ||
| 463 | XOR DX,DX ;AN000; RESERVED, INIT TO ZERO | ||
| 464 | MOV CX,ORDINAL ;AN000; OPERAND ORDINAL, INITIALLY ZERO | ||
| 465 | CALL SYSPARSE ;AN000;LOOK AT DOS PARMS | ||
| 466 | ; AX=EXIT CODE | ||
| 467 | ; BL=TERMINATED DELIMETER CODE | ||
| 468 | ; CX=NEW OPERAND ORDINAL | ||
| 469 | ; SI=SET TO PAST SCANNED OPERAND | ||
| 470 | ; DX=SELECTED RESULT BUFFER | ||
| 471 | CMP AX,SYSPRM_EX_EOL ;AN000; IS THAT THE END OF THE PARMS? | ||
| 472 | ;IF NOT, LOOP BACK AND FIND OUT | ||
| 473 | ; WHAT THAT PARM IS | ||
| 474 | ; $ENDLOOP E ;AN000;END OF LIST | ||
| 475 | JNE $$DO1 | ||
| 476 | CMP FIRST_TIME,ZERO ;AN000;FIND ANYTHING YET? | ||
| 477 | ; $IF E ;AN000;IF NO PARM SPECIFIED | ||
| 478 | JNE $$IF18 | ||
| 479 | LEA BX,TABLEUS ;AN000;SPECIFY 437 (USA) AS DEFAULT | ||
| 480 | ; $ELSE ;AN000;SINCE A PARM WAS FOUND | ||
| 481 | JMP SHORT $$EN18 | ||
| 482 | $$IF18: | ||
| 483 | MOV BX,PARSE_RESULT ;AN000;REMEMBER PARM ALREADY FOUND | ||
| 484 | ; $ENDIF ;AN000; | ||
| 485 | $$EN18: | ||
| 486 | ;BX=-1, "?"; BX=0, "/STATUS";BX>0, CP TABLE | ||
| 487 | CMP BX,ZERO ;AN000;WAS A CP TABLE FOUND? | ||
| 488 | ; $IF A ;AN000;IF A CP TABLE FOUND | ||
| 489 | JNA $$IF21 | ||
| 490 | MOV DX,[BX].LANID ;AN000;FETCH THE TWO CHAR ID FROM TABLE | ||
| 491 | ; $ENDIF ;AN000; | ||
| 492 | $$IF21: | ||
| 493 | ; $ENDSRCH ;AN000;FINISHED WITH DOS COMMAND LINE | ||
| 494 | $$SR1: | ||
| 495 | RET ;AN000;RETURN TO CALLER | ||
| 496 | PARSER ENDP ;AN000; | ||
| 497 | ; = = = = = = = = = = = = ;AN000; | ||
| 498 | HEADER <PARSE_ERROR - DISPLAY REASON FOR PARSE ERROR> ;AN000; | ||
| 499 | PARSE_ERROR PROC NEAR ;AN000; | ||
| 500 | ;INPUT: "FIRST_TIME" - IF NON-ZERO, FORCE ERROR CODE TO "TOO MANY PARMS" | ||
| 501 | ; AX - ERROR NUMBER RETURNED FROM PARSE. | ||
| 502 | ; SI - OFFSET INTO COMMAND OF FIRST BYTE BEYOND PARM IN ERROR | ||
| 503 | ; "CURRENT_PARM" - OFFSET INTO COMMAND OF WHERE TO START LOOKING FOR PARM | ||
| 504 | ;OUTPUT: APPROPRIATE ERROR MESSAGE IS DISPLAYED. | ||
| 505 | ; BX IS SET TO PRETEND THAT THE "?" WAS SPECIFIED. | ||
| 506 | ; "EXITFL" SET TO "EXPAR" TO INDICATE PARM ERROR. | ||
| 507 | ; = = = = = = = = = = = = | ||
| 508 | |||
| 509 | CMP FIRST_TIME,ZERO ;AN000;ANY PARMS FOUND YET? | ||
| 510 | ; $IF NE ;AN000;IF PARM ALREADY FOUND | ||
| 511 | JE $$IF24 | ||
| 512 | MOV AX,SYSPRM_EX_MANY ;AN000;CHANGE RETURN CODE TO "TOO MANY PARMS" | ||
| 513 | ; $ENDIF ;AN000;PARMS FOUND? | ||
| 514 | $$IF24: | ||
| 515 | MOV MSGNUM_PARSE,AX ;AN000;PASS MESSAGE NUMBER TO DESCRIPTOR | ||
| 516 | MOV AX,CURRENT_PARM ;AN003;GET POINTER TO START OF BAD PARM | ||
| 517 | CMP SI,AX ;AN003;HAS THE INDEX TO COMMAND LINE MOVED? | ||
| 518 | ; $IF NE ;AN003;YES, THERE IS A FAULTY PARM | ||
| 519 | JE $$IF26 | ||
| 520 | MOV BYTE PTR [SI],NUL ;AN003;DELIMIT THE BAD PARM | ||
| 521 | MOV SUBLIST_PARSE.SUB_VALUE,AX ;AN000;POINT SUBLIST TO BAD PARM | ||
| 522 | |||
| 523 | MOV MSGNUM_PARSE.MSG_SUBLIST,OFFSET SUBLIST_PARSE ;AN003;POINT TO SUBLIST | ||
| 524 | MOV MSGNUM_PARSE.MSG_COUNT,ONE_SUBS ;AN003;SET COUNT OF SUBLISTS TO ONE | ||
| 525 | ; $ENDIF ;AN003;INDEX MOVED? | ||
| 526 | $$IF26: | ||
| 527 | LEA DI,MSGNUM_PARSE ;AN000;PASS MESSAGE DESCRIPTOR | ||
| 528 | CALL SENDMSG ;AN000;DISPLAY ERROR MESSAGE | ||
| 529 | |||
| 530 | MOV BX,RETCODE_QUESTION ;AN000;INDICATE THAT "?" SPECIFIED | ||
| 531 | MOV EXITFL,EXPAR ;AN000;ERRORLEVEL CODE TO "PARM ERROR" | ||
| 532 | RET ;AN000;RETURN TO CALLER | ||
| 533 | PARSE_ERROR ENDP ;AN000; | ||
| 534 | ; = = = = = = = = = = = = | ||
| 535 | PATHLABL GRTABPAR ;AN006; | ||
| 536 | CSEG ENDS ;AN000; | ||
| 537 | END ;AN000; | ||
| 538 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABPO.ASM b/v4.0/src/CMD/GRAFTABL/GRTABPO.ASM new file mode 100644 index 0000000..e81e54b --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABPO.ASM | |||
| @@ -0,0 +1,1316 @@ | |||
| 1 | PAGE 90,132 ;A2 | ||
| 2 | TITLE GRTABPO - PORTUGUESE CHARACTER SET FOR GRAFTABL COMMAND | ||
| 3 | ;This module is to be linked with the OBJ of GRTAB.SAL. Refer to the | ||
| 4 | ;Prolog of that module for more complete description. | ||
| 5 | |||
| 6 | ;This module contains the binary description of the pixels that are used | ||
| 7 | ;in graphics mode to define the Portuguese character set when loaded to | ||
| 8 | ;interrupt 1FH by the GRAFTABL command in DOS 3.3. | ||
| 9 | IF1 | ||
| 10 | %OUT GRTABPO.ASM... | ||
| 11 | ELSE | ||
| 12 | ; %OUT GRTABPO.ASM... | ||
| 13 | ENDIF | ||
| 14 | CSEG SEGMENT PARA PUBLIC | ||
| 15 | TABLEPO EQU THIS BYTE | ||
| 16 | PUBLIC TABLEPO | ||
| 17 | |||
| 18 | ;(note: the display of the character to the right of the decimal number | ||
| 19 | ;value of this location is not necessarily the graphic that these pixels | ||
| 20 | ;will produce. The displayed character is from the USA character set, and | ||
| 21 | ;does not represent the language character set generated by this table.) | ||
| 22 | |||
| 23 | ;These fonts are as defined in the Portugal Code Page = 860. | ||
| 24 | |||
| 25 | ; 128 € | ||
| 26 | DB 01111000B | ||
| 27 | DB 11001100B | ||
| 28 | DB 11000000B | ||
| 29 | DB 11001100B | ||
| 30 | DB 01111000B | ||
| 31 | DB 00011000B | ||
| 32 | DB 00001100B | ||
| 33 | DB 01111000B | ||
| 34 | |||
| 35 | ; 129 | ||
| 36 | DB 00000000B | ||
| 37 | DB 11001100B | ||
| 38 | DB 00000000B | ||
| 39 | DB 11001100B | ||
| 40 | DB 11001100B | ||
| 41 | DB 11001100B | ||
| 42 | DB 01110110B | ||
| 43 | DB 00000000B | ||
| 44 | .XLIST | ||
| 45 | |||
| 46 | ; 130 ‚ | ||
| 47 | DB 00011100B | ||
| 48 | DB 00000000B | ||
| 49 | DB 01111000B | ||
| 50 | DB 11001100B | ||
| 51 | DB 11111100B | ||
| 52 | DB 11000000B | ||
| 53 | DB 01111000B | ||
| 54 | DB 00000000B | ||
| 55 | |||
| 56 | ; 131 ƒ | ||
| 57 | DB 01111110B | ||
| 58 | DB 10000001B | ||
| 59 | DB 00111100B | ||
| 60 | DB 00000110B | ||
| 61 | DB 00111110B | ||
| 62 | DB 01100110B | ||
| 63 | DB 00111011B | ||
| 64 | DB 00000000B | ||
| 65 | |||
| 66 | ; 132 „ | ||
| 67 | DB 01110010B | ||
| 68 | DB 10001100B | ||
| 69 | DB 01111000B | ||
| 70 | DB 00001100B | ||
| 71 | DB 01111100B | ||
| 72 | DB 11001100B | ||
| 73 | DB 01110110B | ||
| 74 | DB 00000000B | ||
| 75 | |||
| 76 | ; 133 … | ||
| 77 | DB 11100000B | ||
| 78 | DB 00000000B | ||
| 79 | DB 01111000B | ||
| 80 | DB 00001100B | ||
| 81 | DB 01111100B | ||
| 82 | DB 11001100B | ||
| 83 | DB 01110110B | ||
| 84 | DB 00000000B | ||
| 85 | |||
| 86 | ; 134 † | ||
| 87 | DB 00011100B | ||
| 88 | DB 00000000B | ||
| 89 | DB 00110000B | ||
| 90 | DB 01111000B | ||
| 91 | DB 11001100B | ||
| 92 | DB 11111100B | ||
| 93 | DB 11001100B | ||
| 94 | DB 00000000B | ||
| 95 | |||
| 96 | ; 135 ‡ | ||
| 97 | DB 00000000B | ||
| 98 | DB 00000000B | ||
| 99 | DB 01111000B | ||
| 100 | DB 11000000B | ||
| 101 | DB 11000000B | ||
| 102 | DB 01111100B | ||
| 103 | DB 00011000B | ||
| 104 | DB 00111000B | ||
| 105 | |||
| 106 | ; 136 ˆ | ||
| 107 | DB 01111110B | ||
| 108 | DB 10000001B | ||
| 109 | DB 00111100B | ||
| 110 | DB 01100110B | ||
| 111 | DB 01111110B | ||
| 112 | DB 01100000B | ||
| 113 | DB 00111100B | ||
| 114 | DB 00000000B | ||
| 115 | |||
| 116 | ; 137 ‰ | ||
| 117 | DB 01111110B | ||
| 118 | DB 10000001B | ||
| 119 | DB 01111110B | ||
| 120 | DB 00110000B | ||
| 121 | DB 00111100B | ||
| 122 | DB 00110000B | ||
| 123 | DB 01111110B | ||
| 124 | DB 00000000B | ||
| 125 | |||
| 126 | ; 138 Š | ||
| 127 | DB 11100000B | ||
| 128 | DB 00000000B | ||
| 129 | DB 01111000B | ||
| 130 | DB 11001100B | ||
| 131 | DB 11111100B | ||
| 132 | DB 11000000B | ||
| 133 | DB 01111000B | ||
| 134 | DB 00000000B | ||
| 135 | |||
| 136 | ; 139 ‹ | ||
| 137 | DB 00011100B | ||
| 138 | DB 00000000B | ||
| 139 | DB 01111000B | ||
| 140 | DB 00110000B | ||
| 141 | DB 00110000B | ||
| 142 | DB 00110000B | ||
| 143 | DB 01111000B | ||
| 144 | DB 00000000B | ||
| 145 | |||
| 146 | ; 140 Œ | ||
| 147 | DB 01111100B | ||
| 148 | DB 10000010B | ||
| 149 | DB 00000000B | ||
| 150 | DB 01111100B | ||
| 151 | DB 11000110B | ||
| 152 | DB 11000110B | ||
| 153 | DB 01111100B | ||
| 154 | DB 00000000B | ||
| 155 | |||
| 156 | ; 141 | ||
| 157 | DB 11100000B | ||
| 158 | DB 00000000B | ||
| 159 | DB 01110000B | ||
| 160 | DB 00110000B | ||
| 161 | DB 00110000B | ||
| 162 | DB 00110000B | ||
| 163 | DB 01111000B | ||
| 164 | DB 00000000B | ||
| 165 | |||
| 166 | ; 142 Ž | ||
| 167 | DB 01110110B | ||
| 168 | DB 11011100B | ||
| 169 | DB 00110000B | ||
| 170 | DB 01111000B | ||
| 171 | DB 11001100B | ||
| 172 | DB 11111100B | ||
| 173 | DB 11001100B | ||
| 174 | DB 00000000B | ||
| 175 | |||
| 176 | ; 143 | ||
| 177 | DB 01111000B | ||
| 178 | DB 10000100B | ||
| 179 | DB 00110000B | ||
| 180 | DB 01111000B | ||
| 181 | DB 11001100B | ||
| 182 | DB 11111100B | ||
| 183 | DB 11001100B | ||
| 184 | DB 00000000B | ||
| 185 | |||
| 186 | ; 144 | ||
| 187 | DB 00011100B | ||
| 188 | DB 00000000B | ||
| 189 | DB 11111100B | ||
| 190 | DB 01100000B | ||
| 191 | DB 01111000B | ||
| 192 | DB 01100000B | ||
| 193 | DB 11111100B | ||
| 194 | DB 00000000B | ||
| 195 | |||
| 196 | ; 145 ‘ | ||
| 197 | DB 11100000B | ||
| 198 | DB 00000000B | ||
| 199 | DB 00110000B | ||
| 200 | DB 01111000B | ||
| 201 | DB 11001100B | ||
| 202 | DB 11111100B | ||
| 203 | DB 11001100B | ||
| 204 | DB 00000000B | ||
| 205 | |||
| 206 | ; 146 ’ | ||
| 207 | DB 11100000B | ||
| 208 | DB 00000000B | ||
| 209 | DB 11111100B | ||
| 210 | DB 01100000B | ||
| 211 | DB 01111000B | ||
| 212 | DB 01100000B | ||
| 213 | DB 11111100B | ||
| 214 | DB 00000000B | ||
| 215 | |||
| 216 | ; 147 “ | ||
| 217 | DB 01111000B | ||
| 218 | DB 11001100B | ||
| 219 | DB 00000000B | ||
| 220 | DB 01111000B | ||
| 221 | DB 11001100B | ||
| 222 | DB 11001100B | ||
| 223 | DB 01111000B | ||
| 224 | DB 00000000B | ||
| 225 | |||
| 226 | ; 148 ” | ||
| 227 | DB 01101100B | ||
| 228 | DB 11011000B | ||
| 229 | DB 00000000B | ||
| 230 | DB 01111000B | ||
| 231 | DB 11001100B | ||
| 232 | DB 11001100B | ||
| 233 | DB 01111000B | ||
| 234 | DB 00000000B | ||
| 235 | |||
| 236 | ; 149 • | ||
| 237 | DB 00000000B | ||
| 238 | DB 11100000B | ||
| 239 | DB 00000000B | ||
| 240 | DB 01111000B | ||
| 241 | DB 11001100B | ||
| 242 | DB 11001100B | ||
| 243 | DB 01111000B | ||
| 244 | DB 00000000B | ||
| 245 | |||
| 246 | ; 150 – | ||
| 247 | DB 00011100B | ||
| 248 | DB 00000000B | ||
| 249 | DB 11001100B | ||
| 250 | DB 11001100B | ||
| 251 | DB 11001100B | ||
| 252 | DB 11001100B | ||
| 253 | DB 01111000B | ||
| 254 | DB 00000000B | ||
| 255 | |||
| 256 | ; 151 — | ||
| 257 | DB 00000000B | ||
| 258 | DB 11100000B | ||
| 259 | DB 00000000B | ||
| 260 | DB 11001100B | ||
| 261 | DB 11001100B | ||
| 262 | DB 11001100B | ||
| 263 | DB 01110110B | ||
| 264 | DB 00000000B | ||
| 265 | |||
| 266 | ; 152 ˜ | ||
| 267 | DB 11100000B | ||
| 268 | DB 00000000B | ||
| 269 | DB 01111000B | ||
| 270 | DB 00110000B | ||
| 271 | DB 00110000B | ||
| 272 | DB 00110000B | ||
| 273 | DB 01111000B | ||
| 274 | DB 00000000B | ||
| 275 | |||
| 276 | ; 153 ™ | ||
| 277 | DB 01110110B | ||
| 278 | DB 11011100B | ||
| 279 | DB 00000000B | ||
| 280 | DB 01111100B | ||
| 281 | DB 11000110B | ||
| 282 | DB 11000110B | ||
| 283 | DB 01111100B | ||
| 284 | DB 00000000B | ||
| 285 | |||
| 286 | ; 154 š | ||
| 287 | DB 11001100B | ||
| 288 | DB 00000000B | ||
| 289 | DB 11001100B | ||
| 290 | DB 11001100B | ||
| 291 | DB 11001100B | ||
| 292 | DB 11001100B | ||
| 293 | DB 01111000B | ||
| 294 | DB 00000000B | ||
| 295 | |||
| 296 | ; 155 › | ||
| 297 | DB 00011000B | ||
| 298 | DB 00011000B | ||
| 299 | DB 01111110B | ||
| 300 | DB 11000000B | ||
| 301 | DB 11000000B | ||
| 302 | DB 01111110B | ||
| 303 | DB 00011000B | ||
| 304 | DB 00011000B | ||
| 305 | |||
| 306 | ; 156 œ | ||
| 307 | DB 00111000B | ||
| 308 | DB 01101100B | ||
| 309 | DB 01100100B | ||
| 310 | DB 11110000B | ||
| 311 | DB 01100000B | ||
| 312 | DB 11100110B | ||
| 313 | DB 11111100B | ||
| 314 | DB 00000000B | ||
| 315 | |||
| 316 | ; 157 * | ||
| 317 | DB 11100000B | ||
| 318 | DB 00000000B | ||
| 319 | DB 11001100B | ||
| 320 | DB 11001100B | ||
| 321 | DB 11001100B | ||
| 322 | DB 11001100B | ||
| 323 | DB 01111000B | ||
| 324 | DB 00000000B | ||
| 325 | |||
| 326 | ; 158 ž | ||
| 327 | DB 11111000B | ||
| 328 | DB 11001100B | ||
| 329 | DB 11001100B | ||
| 330 | DB 11111010B | ||
| 331 | DB 11000110B | ||
| 332 | DB 11001111B | ||
| 333 | DB 11000110B | ||
| 334 | DB 11000111B | ||
| 335 | |||
| 336 | ; 159 Ÿ * | ||
| 337 | DB 00011110B | ||
| 338 | DB 00000000B | ||
| 339 | DB 00000000B | ||
| 340 | DB 01111100B | ||
| 341 | DB 11000110B | ||
| 342 | DB 11000110B | ||
| 343 | DB 01111100B | ||
| 344 | DB 00000000B | ||
| 345 | |||
| 346 | ; 160 | ||
| 347 | DB 00011100B | ||
| 348 | DB 00000000B | ||
| 349 | DB 01111000B | ||
| 350 | DB 00001100B | ||
| 351 | DB 01111100B | ||
| 352 | DB 11001100B | ||
| 353 | DB 01110110B | ||
| 354 | DB 00000000B | ||
| 355 | |||
| 356 | ; 161 ¡ | ||
| 357 | DB 00011100B | ||
| 358 | DB 00000000B | ||
| 359 | DB 01110000B | ||
| 360 | DB 00110000B | ||
| 361 | DB 00110000B | ||
| 362 | DB 00110000B | ||
| 363 | DB 01111000B | ||
| 364 | DB 00000000B | ||
| 365 | |||
| 366 | ; 162 ¢ | ||
| 367 | DB 00000000B | ||
| 368 | DB 00011100B | ||
| 369 | DB 00000000B | ||
| 370 | DB 01111000B | ||
| 371 | DB 11001100B | ||
| 372 | DB 11001100B | ||
| 373 | DB 01111000B | ||
| 374 | DB 00000000B | ||
| 375 | |||
| 376 | ; 163 £ | ||
| 377 | DB 00000000B | ||
| 378 | DB 00011100B | ||
| 379 | DB 00000000B | ||
| 380 | DB 11001100B | ||
| 381 | DB 11001100B | ||
| 382 | DB 11001100B | ||
| 383 | DB 01110110B | ||
| 384 | DB 00000000B | ||
| 385 | |||
| 386 | ; 164 ¤ | ||
| 387 | DB 00000000B | ||
| 388 | DB 11111000B | ||
| 389 | DB 00000000B | ||
| 390 | DB 11111000B | ||
| 391 | DB 11001100B | ||
| 392 | DB 11001100B | ||
| 393 | DB 11001100B | ||
| 394 | DB 00000000B | ||
| 395 | |||
| 396 | ; 165 ¥ | ||
| 397 | DB 11111100B | ||
| 398 | DB 00000000B | ||
| 399 | DB 11001100B | ||
| 400 | DB 11101100B | ||
| 401 | DB 11111100B | ||
| 402 | DB 11011100B | ||
| 403 | DB 11001100B | ||
| 404 | DB 00000000B | ||
| 405 | |||
| 406 | ; 166 ¦ | ||
| 407 | DB 00111100B | ||
| 408 | DB 01101100B | ||
| 409 | DB 01101100B | ||
| 410 | DB 00111110B | ||
| 411 | DB 00000000B | ||
| 412 | DB 01111110B | ||
| 413 | DB 00000000B | ||
| 414 | DB 00000000B | ||
| 415 | |||
| 416 | ; 167 § | ||
| 417 | DB 00111000B | ||
| 418 | DB 01101100B | ||
| 419 | DB 01101100B | ||
| 420 | DB 00111000B | ||
| 421 | DB 00000000B | ||
| 422 | DB 01111100B | ||
| 423 | DB 00000000B | ||
| 424 | DB 00000000B | ||
| 425 | |||
| 426 | ; 168 ¨ | ||
| 427 | DB 00110000B | ||
| 428 | DB 00000000B | ||
| 429 | DB 00110000B | ||
| 430 | DB 01100000B | ||
| 431 | DB 11000000B | ||
| 432 | DB 11001100B | ||
| 433 | DB 01111000B | ||
| 434 | DB 00000000B | ||
| 435 | |||
| 436 | ; 169 © * | ||
| 437 | DB 11110000B | ||
| 438 | DB 00000000B | ||
| 439 | DB 00000000B | ||
| 440 | DB 01111100B | ||
| 441 | DB 11000110B | ||
| 442 | DB 11000110B | ||
| 443 | DB 01111100B | ||
| 444 | DB 00000000B | ||
| 445 | |||
| 446 | ; 170 ª | ||
| 447 | DB 00000000B | ||
| 448 | DB 00000000B | ||
| 449 | DB 00000000B | ||
| 450 | DB 11111100B | ||
| 451 | DB 00001100B | ||
| 452 | DB 00001100B | ||
| 453 | DB 00000000B | ||
| 454 | DB 00000000B | ||
| 455 | |||
| 456 | ; 171 « | ||
| 457 | DB 11000011B | ||
| 458 | DB 11000110B | ||
| 459 | DB 11001100B | ||
| 460 | DB 11011110B | ||
| 461 | DB 00110011B | ||
| 462 | DB 01100110B | ||
| 463 | DB 11001100B | ||
| 464 | DB 00001111B | ||
| 465 | |||
| 466 | ; 172 ¬ | ||
| 467 | DB 11000011B | ||
| 468 | DB 11000110B | ||
| 469 | DB 11001100B | ||
| 470 | DB 11011011B | ||
| 471 | DB 00110111B | ||
| 472 | DB 01101111B | ||
| 473 | DB 11001111B | ||
| 474 | DB 00000011B | ||
| 475 | |||
| 476 | ; 173 | ||
| 477 | DB 00011000B | ||
| 478 | DB 00011000B | ||
| 479 | DB 00000000B | ||
| 480 | DB 00011000B | ||
| 481 | DB 00011000B | ||
| 482 | DB 00011000B | ||
| 483 | DB 00011000B | ||
| 484 | DB 00000000B | ||
| 485 | |||
| 486 | ; 174 ® | ||
| 487 | DB 00000000B | ||
| 488 | DB 00110011B | ||
| 489 | DB 01100110B | ||
| 490 | DB 11001100B | ||
| 491 | DB 01100110B | ||
| 492 | DB 00110011B | ||
| 493 | DB 00000000B | ||
| 494 | DB 00000000B | ||
| 495 | |||
| 496 | ; 175 ¯ | ||
| 497 | DB 00000000B | ||
| 498 | DB 11001100B | ||
| 499 | DB 01100110B | ||
| 500 | DB 00110011B | ||
| 501 | DB 01100110B | ||
| 502 | DB 11001100B | ||
| 503 | DB 00000000B | ||
| 504 | DB 00000000B | ||
| 505 | |||
| 506 | ; 176 ° | ||
| 507 | DB 00100010B | ||
| 508 | DB 10001000B | ||
| 509 | DB 00100010B | ||
| 510 | DB 10001000B | ||
| 511 | DB 00100010B | ||
| 512 | DB 10001000B | ||
| 513 | DB 00100010B | ||
| 514 | DB 10001000B | ||
| 515 | |||
| 516 | ; 177 ± | ||
| 517 | DB 01010101B | ||
| 518 | DB 10101010B | ||
| 519 | DB 01010101B | ||
| 520 | DB 10101010B | ||
| 521 | DB 01010101B | ||
| 522 | DB 10101010B | ||
| 523 | DB 01010101B | ||
| 524 | DB 10101010B | ||
| 525 | |||
| 526 | ; 178 ² | ||
| 527 | DB 11011011B | ||
| 528 | DB 01110111B | ||
| 529 | DB 11011011B | ||
| 530 | DB 11101110B | ||
| 531 | DB 11011011B | ||
| 532 | DB 01110111B | ||
| 533 | DB 11011011B | ||
| 534 | DB 11101110B | ||
| 535 | |||
| 536 | ; 179 ³ | ||
| 537 | DB 00011000B | ||
| 538 | DB 00011000B | ||
| 539 | DB 00011000B | ||
| 540 | DB 00011000B | ||
| 541 | DB 00011000B | ||
| 542 | DB 00011000B | ||
| 543 | DB 00011000B | ||
| 544 | DB 00011000B | ||
| 545 | |||
| 546 | ; 180 ´ | ||
| 547 | DB 00011000B | ||
| 548 | DB 00011000B | ||
| 549 | DB 00011000B | ||
| 550 | DB 00011000B | ||
| 551 | DB 11111000B | ||
| 552 | DB 00011000B | ||
| 553 | DB 00011000B | ||
| 554 | DB 00011000B | ||
| 555 | |||
| 556 | ; 181 µ | ||
| 557 | DB 00011000B | ||
| 558 | DB 00011000B | ||
| 559 | DB 11111000B | ||
| 560 | DB 00011000B | ||
| 561 | DB 11111000B | ||
| 562 | DB 00011000B | ||
| 563 | DB 00011000B | ||
| 564 | DB 00011000B | ||
| 565 | |||
| 566 | ; 182 ¶ | ||
| 567 | DB 00110110B | ||
| 568 | DB 00110110B | ||
| 569 | DB 00110110B | ||
| 570 | DB 00110110B | ||
| 571 | DB 11110110B | ||
| 572 | DB 00110110B | ||
| 573 | DB 00110110B | ||
| 574 | DB 00110110B | ||
| 575 | |||
| 576 | ; 183 · | ||
| 577 | DB 00000000B | ||
| 578 | DB 00000000B | ||
| 579 | DB 00000000B | ||
| 580 | DB 00000000B | ||
| 581 | DB 11111110B | ||
| 582 | DB 00110110B | ||
| 583 | DB 00110110B | ||
| 584 | DB 00110110B | ||
| 585 | |||
| 586 | ; 184 ¸ | ||
| 587 | DB 00000000B | ||
| 588 | DB 00000000B | ||
| 589 | DB 11111000B | ||
| 590 | DB 00011000B | ||
| 591 | DB 11111000B | ||
| 592 | DB 00011000B | ||
| 593 | DB 00011000B | ||
| 594 | DB 00011000B | ||
| 595 | |||
| 596 | ; 185 ¹ | ||
| 597 | DB 00110110B | ||
| 598 | DB 00110110B | ||
| 599 | DB 11110110B | ||
| 600 | DB 00000110B | ||
| 601 | DB 11110110B | ||
| 602 | DB 00110110B | ||
| 603 | DB 00110110B | ||
| 604 | DB 00110110B | ||
| 605 | |||
| 606 | ; 186 º | ||
| 607 | DB 00110110B | ||
| 608 | DB 00110110B | ||
| 609 | DB 00110110B | ||
| 610 | DB 00110110B | ||
| 611 | DB 00110110B | ||
| 612 | DB 00110110B | ||
| 613 | DB 00110110B | ||
| 614 | DB 00110110B | ||
| 615 | |||
| 616 | ; 187 » | ||
| 617 | DB 00000000B | ||
| 618 | DB 00000000B | ||
| 619 | DB 11111110B | ||
| 620 | DB 00000110B | ||
| 621 | DB 11110110B | ||
| 622 | DB 00110110B | ||
| 623 | DB 00110110B | ||
| 624 | DB 00110110B | ||
| 625 | |||
| 626 | ; 188 ¼ | ||
| 627 | DB 00110110B | ||
| 628 | DB 00110110B | ||
| 629 | DB 11110110B | ||
| 630 | DB 00000110B | ||
| 631 | DB 11111110B | ||
| 632 | DB 00000000B | ||
| 633 | DB 00000000B | ||
| 634 | DB 00000000B | ||
| 635 | |||
| 636 | ; 189 ½ | ||
| 637 | DB 00110110B | ||
| 638 | DB 00110110B | ||
| 639 | DB 00110110B | ||
| 640 | DB 00110110B | ||
| 641 | DB 11111110B | ||
| 642 | DB 00000000B | ||
| 643 | DB 00000000B | ||
| 644 | DB 00000000B | ||
| 645 | |||
| 646 | ; 190 ¾ | ||
| 647 | DB 00011000B | ||
| 648 | DB 00011000B | ||
| 649 | DB 11111000B | ||
| 650 | DB 00011000B | ||
| 651 | DB 11111000B | ||
| 652 | DB 00000000B | ||
| 653 | DB 00000000B | ||
| 654 | DB 00000000B | ||
| 655 | |||
| 656 | ; 191 ¿ | ||
| 657 | DB 00000000B | ||
| 658 | DB 00000000B | ||
| 659 | DB 00000000B | ||
| 660 | DB 00000000B | ||
| 661 | DB 11111000B | ||
| 662 | DB 00011000B | ||
| 663 | DB 00011000B | ||
| 664 | DB 00011000B | ||
| 665 | |||
| 666 | ; 192 À | ||
| 667 | DB 00011000B | ||
| 668 | DB 00011000B | ||
| 669 | DB 00011000B | ||
| 670 | DB 00011000B | ||
| 671 | DB 00011111B | ||
| 672 | DB 00000000B | ||
| 673 | DB 00000000B | ||
| 674 | DB 00000000B | ||
| 675 | |||
| 676 | ; 193 Á | ||
| 677 | DB 00011000B | ||
| 678 | DB 00011000B | ||
| 679 | DB 00011000B | ||
| 680 | DB 00011000B | ||
| 681 | DB 11111111B | ||
| 682 | DB 00000000B | ||
| 683 | DB 00000000B | ||
| 684 | DB 00000000B | ||
| 685 | |||
| 686 | ; 194 Â | ||
| 687 | DB 00000000B | ||
| 688 | DB 00000000B | ||
| 689 | DB 00000000B | ||
| 690 | DB 00000000B | ||
| 691 | DB 11111111B | ||
| 692 | DB 00011000B | ||
| 693 | DB 00011000B | ||
| 694 | DB 00011000B | ||
| 695 | |||
| 696 | ; 195 Ã | ||
| 697 | DB 00011000B | ||
| 698 | DB 00011000B | ||
| 699 | DB 00011000B | ||
| 700 | DB 00011000B | ||
| 701 | DB 00011111B | ||
| 702 | DB 00011000B | ||
| 703 | DB 00011000B | ||
| 704 | DB 00011000B | ||
| 705 | |||
| 706 | ; 196 Ä | ||
| 707 | DB 00000000B | ||
| 708 | DB 00000000B | ||
| 709 | DB 00000000B | ||
| 710 | DB 00000000B | ||
| 711 | DB 11111111B | ||
| 712 | DB 00000000B | ||
| 713 | DB 00000000B | ||
| 714 | DB 00000000B | ||
| 715 | |||
| 716 | ; 197 Å | ||
| 717 | DB 00011000B | ||
| 718 | DB 00011000B | ||
| 719 | DB 00011000B | ||
| 720 | DB 00011000B | ||
| 721 | DB 11111111B | ||
| 722 | DB 00011000B | ||
| 723 | DB 00011000B | ||
| 724 | DB 00011000B | ||
| 725 | |||
| 726 | ; 198 Æ | ||
| 727 | DB 00011000B | ||
| 728 | DB 00011000B | ||
| 729 | DB 00011111B | ||
| 730 | DB 00011000B | ||
| 731 | DB 00011111B | ||
| 732 | DB 00011000B | ||
| 733 | DB 00011000B | ||
| 734 | DB 00011000B | ||
| 735 | |||
| 736 | ; 199 Ç | ||
| 737 | DB 00110110B | ||
| 738 | DB 00110110B | ||
| 739 | DB 00110110B | ||
| 740 | DB 00110110B | ||
| 741 | DB 00110111B | ||
| 742 | DB 00110110B | ||
| 743 | DB 00110110B | ||
| 744 | DB 00110110B | ||
| 745 | |||
| 746 | ; 200 È | ||
| 747 | DB 00110110B | ||
| 748 | DB 00110110B | ||
| 749 | DB 00110111B | ||
| 750 | DB 00110000B | ||
| 751 | DB 00111111B | ||
| 752 | DB 00000000B | ||
| 753 | DB 00000000B | ||
| 754 | DB 00000000B | ||
| 755 | |||
| 756 | ; 201 É | ||
| 757 | DB 00000000B | ||
| 758 | DB 00000000B | ||
| 759 | DB 00111111B | ||
| 760 | DB 00110000B | ||
| 761 | DB 00110111B | ||
| 762 | DB 00110110B | ||
| 763 | DB 00110110B | ||
| 764 | DB 00110110B | ||
| 765 | |||
| 766 | ; 202 Ê | ||
| 767 | DB 00110110B | ||
| 768 | DB 00110110B | ||
| 769 | DB 11110111B | ||
| 770 | DB 00000000B | ||
| 771 | DB 11111111B | ||
| 772 | DB 00000000B | ||
| 773 | DB 00000000B | ||
| 774 | DB 00000000B | ||
| 775 | |||
| 776 | ; 203 Ë | ||
| 777 | DB 00000000B | ||
| 778 | DB 00000000B | ||
| 779 | DB 11111111B | ||
| 780 | DB 00000000B | ||
| 781 | DB 11110111B | ||
| 782 | DB 00110110B | ||
| 783 | DB 00110110B | ||
| 784 | DB 00110110B | ||
| 785 | |||
| 786 | ; 204 Ì | ||
| 787 | DB 00110110B | ||
| 788 | DB 00110110B | ||
| 789 | DB 00110111B | ||
| 790 | DB 00110000B | ||
| 791 | DB 00110111B | ||
| 792 | DB 00110110B | ||
| 793 | DB 00110110B | ||
| 794 | DB 00110110B | ||
| 795 | |||
| 796 | ; 205 Í | ||
| 797 | DB 00000000B | ||
| 798 | DB 00000000B | ||
| 799 | DB 11111111B | ||
| 800 | DB 00000000B | ||
| 801 | DB 11111111B | ||
| 802 | DB 00000000B | ||
| 803 | DB 00000000B | ||
| 804 | DB 00000000B | ||
| 805 | |||
| 806 | ; 206 Î | ||
| 807 | DB 00110110B | ||
| 808 | DB 00110110B | ||
| 809 | DB 11110111B | ||
| 810 | DB 00000000B | ||
| 811 | DB 11110111B | ||
| 812 | DB 00110110B | ||
| 813 | DB 00110110B | ||
| 814 | DB 00110110B | ||
| 815 | |||
| 816 | ; 207 Ï | ||
| 817 | DB 00011000B | ||
| 818 | DB 00011000B | ||
| 819 | DB 11111111B | ||
| 820 | DB 00000000B | ||
| 821 | DB 11111111B | ||
| 822 | DB 00000000B | ||
| 823 | DB 00000000B | ||
| 824 | DB 00000000B | ||
| 825 | |||
| 826 | ; 208 Ð | ||
| 827 | DB 00110110B | ||
| 828 | DB 00110110B | ||
| 829 | DB 00110110B | ||
| 830 | DB 00110110B | ||
| 831 | DB 11111111B | ||
| 832 | DB 00000000B | ||
| 833 | DB 00000000B | ||
| 834 | DB 00000000B | ||
| 835 | |||
| 836 | ; 209 Ñ | ||
| 837 | DB 00000000B | ||
| 838 | DB 00000000B | ||
| 839 | DB 11111111B | ||
| 840 | DB 00000000B | ||
| 841 | DB 11111111B | ||
| 842 | DB 00011000B | ||
| 843 | DB 00011000B | ||
| 844 | DB 00011000B | ||
| 845 | |||
| 846 | ; 210 Ò | ||
| 847 | DB 00000000B | ||
| 848 | DB 00000000B | ||
| 849 | DB 00000000B | ||
| 850 | DB 00000000B | ||
| 851 | DB 11111111B | ||
| 852 | DB 00110110B | ||
| 853 | DB 00110110B | ||
| 854 | DB 00110110B | ||
| 855 | |||
| 856 | ; 211 Ó | ||
| 857 | DB 00110110B | ||
| 858 | DB 00110110B | ||
| 859 | DB 00110110B | ||
| 860 | DB 00110110B | ||
| 861 | DB 00111111B | ||
| 862 | DB 00000000B | ||
| 863 | DB 00000000B | ||
| 864 | DB 00000000B | ||
| 865 | |||
| 866 | ; 212 Ô | ||
| 867 | DB 00011000B | ||
| 868 | DB 00011000B | ||
| 869 | DB 00011111B | ||
| 870 | DB 00011000B | ||
| 871 | DB 00011111B | ||
| 872 | DB 00000000B | ||
| 873 | DB 00000000B | ||
| 874 | DB 00000000B | ||
| 875 | |||
| 876 | ; 213 Õ | ||
| 877 | DB 00000000B | ||
| 878 | DB 00000000B | ||
| 879 | DB 00011111B | ||
| 880 | DB 00011000B | ||
| 881 | DB 00011111B | ||
| 882 | DB 00011000B | ||
| 883 | DB 00011000B | ||
| 884 | DB 00011000B | ||
| 885 | |||
| 886 | ; 214 Ö | ||
| 887 | DB 00000000B | ||
| 888 | DB 00000000B | ||
| 889 | DB 00000000B | ||
| 890 | DB 00000000B | ||
| 891 | DB 00111111B | ||
| 892 | DB 00110110B | ||
| 893 | DB 00110110B | ||
| 894 | DB 00110110B | ||
| 895 | |||
| 896 | ; 215 × | ||
| 897 | DB 00110110B | ||
| 898 | DB 00110110B | ||
| 899 | DB 00110110B | ||
| 900 | DB 00110110B | ||
| 901 | DB 11111111B | ||
| 902 | DB 00110110B | ||
| 903 | DB 00110110B | ||
| 904 | DB 00110110B | ||
| 905 | |||
| 906 | ; 216 Ø | ||
| 907 | DB 00011000B | ||
| 908 | DB 00011000B | ||
| 909 | DB 11111111B | ||
| 910 | DB 00011000B | ||
| 911 | DB 11111111B | ||
| 912 | DB 00011000B | ||
| 913 | DB 00011000B | ||
| 914 | DB 00011000B | ||
| 915 | |||
| 916 | ; 217 Ù | ||
| 917 | DB 00011000B | ||
| 918 | DB 00011000B | ||
| 919 | DB 00011000B | ||
| 920 | DB 00011000B | ||
| 921 | DB 11111000B | ||
| 922 | DB 00000000B | ||
| 923 | DB 00000000B | ||
| 924 | DB 00000000B | ||
| 925 | |||
| 926 | ; 218 Ú | ||
| 927 | DB 00000000B | ||
| 928 | DB 00000000B | ||
| 929 | DB 00000000B | ||
| 930 | DB 00000000B | ||
| 931 | DB 00011111B | ||
| 932 | DB 00011000B | ||
| 933 | DB 00011000B | ||
| 934 | DB 00011000B | ||
| 935 | |||
| 936 | ; 219 Û | ||
| 937 | DB 11111111B | ||
| 938 | DB 11111111B | ||
| 939 | DB 11111111B | ||
| 940 | DB 11111111B | ||
| 941 | DB 11111111B | ||
| 942 | DB 11111111B | ||
| 943 | DB 11111111B | ||
| 944 | DB 11111111B | ||
| 945 | |||
| 946 | ; 220 Ü | ||
| 947 | DB 00000000B | ||
| 948 | DB 00000000B | ||
| 949 | DB 00000000B | ||
| 950 | DB 00000000B | ||
| 951 | DB 11111111B | ||
| 952 | DB 11111111B | ||
| 953 | DB 11111111B | ||
| 954 | DB 11111111B | ||
| 955 | |||
| 956 | ; 221 Ý | ||
| 957 | DB 11110000B | ||
| 958 | DB 11110000B | ||
| 959 | DB 11110000B | ||
| 960 | DB 11110000B | ||
| 961 | DB 11110000B | ||
| 962 | DB 11110000B | ||
| 963 | DB 11110000B | ||
| 964 | DB 11110000B | ||
| 965 | |||
| 966 | ; 222 Þ | ||
| 967 | DB 00001111B | ||
| 968 | DB 00001111B | ||
| 969 | DB 00001111B | ||
| 970 | DB 00001111B | ||
| 971 | DB 00001111B | ||
| 972 | DB 00001111B | ||
| 973 | DB 00001111B | ||
| 974 | DB 00001111B | ||
| 975 | |||
| 976 | ; 223 ß | ||
| 977 | DB 11111111B | ||
| 978 | DB 11111111B | ||
| 979 | DB 11111111B | ||
| 980 | DB 11111111B | ||
| 981 | DB 00000000B | ||
| 982 | DB 00000000B | ||
| 983 | DB 00000000B | ||
| 984 | DB 00000000B | ||
| 985 | |||
| 986 | ; 224 à | ||
| 987 | DB 00000000B | ||
| 988 | DB 00000000B | ||
| 989 | DB 01110110B | ||
| 990 | DB 11011100B | ||
| 991 | DB 11001000B | ||
| 992 | DB 11011100B | ||
| 993 | DB 01110110B | ||
| 994 | DB 00000000B | ||
| 995 | |||
| 996 | ; 225 á | ||
| 997 | DB 00000000B | ||
| 998 | DB 01111000B | ||
| 999 | DB 11001100B | ||
| 1000 | DB 11111000B | ||
| 1001 | DB 11001100B | ||
| 1002 | DB 11111000B | ||
| 1003 | DB 11000000B | ||
| 1004 | DB 11000000B | ||
| 1005 | |||
| 1006 | ; 226 â | ||
| 1007 | DB 00000000B | ||
| 1008 | DB 11111100B | ||
| 1009 | DB 11001100B | ||
| 1010 | DB 11000000B | ||
| 1011 | DB 11000000B | ||
| 1012 | DB 11000000B | ||
| 1013 | DB 11000000B | ||
| 1014 | DB 00000000B | ||
| 1015 | |||
| 1016 | ; 227 ã | ||
| 1017 | DB 00000000B | ||
| 1018 | DB 11111110B | ||
| 1019 | DB 01101100B | ||
| 1020 | DB 01101100B | ||
| 1021 | DB 01101100B | ||
| 1022 | DB 01101100B | ||
| 1023 | DB 01101100B | ||
| 1024 | DB 00000000B | ||
| 1025 | |||
| 1026 | ; 228 ä | ||
| 1027 | DB 11111100B | ||
| 1028 | DB 11001100B | ||
| 1029 | DB 01100000B | ||
| 1030 | DB 00110000B | ||
| 1031 | DB 01100000B | ||
| 1032 | DB 11001100B | ||
| 1033 | DB 11111100B | ||
| 1034 | DB 00000000B | ||
| 1035 | |||
| 1036 | ; 229 å | ||
| 1037 | DB 00000000B | ||
| 1038 | DB 00000000B | ||
| 1039 | DB 01111110B | ||
| 1040 | DB 11011000B | ||
| 1041 | DB 11011000B | ||
| 1042 | DB 11011000B | ||
| 1043 | DB 01110000B | ||
| 1044 | DB 00000000B | ||
| 1045 | |||
| 1046 | ; 230 æ | ||
| 1047 | DB 00000000B | ||
| 1048 | DB 01100110B | ||
| 1049 | DB 01100110B | ||
| 1050 | DB 01100110B | ||
| 1051 | DB 01100110B | ||
| 1052 | DB 01111100B | ||
| 1053 | DB 01100000B | ||
| 1054 | DB 11000000B | ||
| 1055 | |||
| 1056 | ; 231 ç | ||
| 1057 | DB 00000000B | ||
| 1058 | DB 01110110B | ||
| 1059 | DB 11011100B | ||
| 1060 | DB 00011000B | ||
| 1061 | DB 00011000B | ||
| 1062 | DB 00011000B | ||
| 1063 | DB 00011000B | ||
| 1064 | DB 00000000B | ||
| 1065 | |||
| 1066 | ; 232 è | ||
| 1067 | DB 11111100B | ||
| 1068 | DB 00110000B | ||
| 1069 | DB 01111000B | ||
| 1070 | DB 11001100B | ||
| 1071 | DB 11001100B | ||
| 1072 | DB 01111000B | ||
| 1073 | DB 00110000B | ||
| 1074 | DB 11111100B | ||
| 1075 | |||
| 1076 | ; 233 é | ||
| 1077 | DB 00111000B | ||
| 1078 | DB 01101100B | ||
| 1079 | DB 11000110B | ||
| 1080 | DB 11111110B | ||
| 1081 | DB 11000110B | ||
| 1082 | DB 01101100B | ||
| 1083 | DB 00111000B | ||
| 1084 | DB 00000000B | ||
| 1085 | |||
| 1086 | ; 234 ê | ||
| 1087 | DB 00111000B | ||
| 1088 | DB 01101100B | ||
| 1089 | DB 11000110B | ||
| 1090 | DB 11000110B | ||
| 1091 | DB 01101100B | ||
| 1092 | DB 01101100B | ||
| 1093 | DB 11101110B | ||
| 1094 | DB 00000000B | ||
| 1095 | |||
| 1096 | ; 235 ë | ||
| 1097 | DB 00011100B | ||
| 1098 | DB 00110000B | ||
| 1099 | DB 00011000B | ||
| 1100 | DB 01111100B | ||
| 1101 | DB 11001100B | ||
| 1102 | DB 11001100B | ||
| 1103 | DB 01111000B | ||
| 1104 | DB 00000000B | ||
| 1105 | |||
| 1106 | ; 236 ì | ||
| 1107 | DB 00000000B | ||
| 1108 | DB 00000000B | ||
| 1109 | DB 01111110B | ||
| 1110 | DB 11011011B | ||
| 1111 | DB 11011011B | ||
| 1112 | DB 01111110B | ||
| 1113 | DB 00000000B | ||
| 1114 | DB 00000000B | ||
| 1115 | |||
| 1116 | ; 237 í | ||
| 1117 | DB 00000110B | ||
| 1118 | DB 00001100B | ||
| 1119 | DB 01111110B | ||
| 1120 | DB 11011011B | ||
| 1121 | DB 11011011B | ||
| 1122 | DB 01111110B | ||
| 1123 | DB 01100000B | ||
| 1124 | DB 11000000B | ||
| 1125 | |||
| 1126 | ; 238 î | ||
| 1127 | DB 00111000B | ||
| 1128 | DB 01100000B | ||
| 1129 | DB 11000000B | ||
| 1130 | DB 11111000B | ||
| 1131 | DB 11000000B | ||
| 1132 | DB 01100000B | ||
| 1133 | DB 00111000B | ||
| 1134 | DB 00000000B | ||
| 1135 | |||
| 1136 | ; 239 ï | ||
| 1137 | DB 01111000B | ||
| 1138 | DB 11001100B | ||
| 1139 | DB 11001100B | ||
| 1140 | DB 11001100B | ||
| 1141 | DB 11001100B | ||
| 1142 | DB 11001100B | ||
| 1143 | DB 11001100B | ||
| 1144 | DB 00000000B | ||
| 1145 | |||
| 1146 | ; 240 ð | ||
| 1147 | DB 00000000B | ||
| 1148 | DB 11111100B | ||
| 1149 | DB 00000000B | ||
| 1150 | DB 11111100B | ||
| 1151 | DB 00000000B | ||
| 1152 | DB 11111100B | ||
| 1153 | DB 00000000B | ||
| 1154 | DB 00000000B | ||
| 1155 | |||
| 1156 | ; 241 ñ | ||
| 1157 | DB 00110000B | ||
| 1158 | DB 00110000B | ||
| 1159 | DB 11111100B | ||
| 1160 | DB 00110000B | ||
| 1161 | DB 00110000B | ||
| 1162 | DB 00000000B | ||
| 1163 | DB 11111100B | ||
| 1164 | DB 00000000B | ||
| 1165 | |||
| 1166 | ; 242 ò | ||
| 1167 | DB 01100000B | ||
| 1168 | DB 00110000B | ||
| 1169 | DB 00011000B | ||
| 1170 | DB 00110000B | ||
| 1171 | DB 01100000B | ||
| 1172 | DB 00000000B | ||
| 1173 | DB 11111100B | ||
| 1174 | DB 00000000B | ||
| 1175 | |||
| 1176 | ; 243 ó | ||
| 1177 | DB 00011000B | ||
| 1178 | DB 00110000B | ||
| 1179 | DB 01100000B | ||
| 1180 | DB 00110000B | ||
| 1181 | DB 00011000B | ||
| 1182 | DB 00000000B | ||
| 1183 | DB 11111100B | ||
| 1184 | DB 00000000B | ||
| 1185 | |||
| 1186 | ; 244 ô | ||
| 1187 | DB 00001110B | ||
| 1188 | DB 00011011B | ||
| 1189 | DB 00011011B | ||
| 1190 | DB 00011000B | ||
| 1191 | DB 00011000B | ||
| 1192 | DB 00011000B | ||
| 1193 | DB 00011000B | ||
| 1194 | DB 00011000B | ||
| 1195 | |||
| 1196 | ; 245 õ | ||
| 1197 | DB 00011000B | ||
| 1198 | DB 00011000B | ||
| 1199 | DB 00011000B | ||
| 1200 | DB 00011000B | ||
| 1201 | DB 00011000B | ||
| 1202 | DB 11011000B | ||
| 1203 | DB 11011000B | ||
| 1204 | DB 01110000B | ||
| 1205 | |||
| 1206 | ; 246 ö | ||
| 1207 | DB 00110000B | ||
| 1208 | DB 00110000B | ||
| 1209 | DB 00000000B | ||
| 1210 | DB 11111100B | ||
| 1211 | DB 00000000B | ||
| 1212 | DB 00110000B | ||
| 1213 | DB 00110000B | ||
| 1214 | DB 00000000B | ||
| 1215 | |||
| 1216 | ; 247 ÷ | ||
| 1217 | DB 00000000B | ||
| 1218 | DB 01110110B | ||
| 1219 | DB 11011100B | ||
| 1220 | DB 00000000B | ||
| 1221 | DB 01110110B | ||
| 1222 | DB 11011100B | ||
| 1223 | DB 00000000B | ||
| 1224 | DB 00000000B | ||
| 1225 | |||
| 1226 | ; 248 ø | ||
| 1227 | DB 00111000B | ||
| 1228 | DB 01101100B | ||
| 1229 | DB 01101100B | ||
| 1230 | DB 00111000B | ||
| 1231 | DB 00000000B | ||
| 1232 | DB 00000000B | ||
| 1233 | DB 00000000B | ||
| 1234 | DB 00000000B | ||
| 1235 | |||
| 1236 | ; 249 ù | ||
| 1237 | DB 00000000B | ||
| 1238 | DB 00000000B | ||
| 1239 | DB 00000000B | ||
| 1240 | DB 00011000B | ||
| 1241 | DB 00011000B | ||
| 1242 | DB 00000000B | ||
| 1243 | DB 00000000B | ||
| 1244 | DB 00000000B | ||
| 1245 | |||
| 1246 | ; 250 ú | ||
| 1247 | DB 00000000B | ||
| 1248 | DB 00000000B | ||
| 1249 | DB 00000000B | ||
| 1250 | DB 00000000B | ||
| 1251 | DB 00011000B | ||
| 1252 | DB 00000000B | ||
| 1253 | DB 00000000B | ||
| 1254 | DB 00000000B | ||
| 1255 | |||
| 1256 | ; 251 û | ||
| 1257 | DB 00001111B | ||
| 1258 | DB 00001100B | ||
| 1259 | DB 00001100B | ||
| 1260 | DB 00001100B | ||
| 1261 | DB 11101100B | ||
| 1262 | DB 01101100B | ||
| 1263 | DB 00111100B | ||
| 1264 | DB 00011100B | ||
| 1265 | |||
| 1266 | ; 252 ü | ||
| 1267 | DB 01111000B | ||
| 1268 | DB 01101100B | ||
| 1269 | DB 01101100B | ||
| 1270 | DB 01101100B | ||
| 1271 | DB 01101100B | ||
| 1272 | DB 00000000B | ||
| 1273 | DB 00000000B | ||
| 1274 | DB 00000000B | ||
| 1275 | |||
| 1276 | ; 253 ý | ||
| 1277 | DB 01110000B | ||
| 1278 | DB 00011000B | ||
| 1279 | DB 00110000B | ||
| 1280 | DB 01100000B | ||
| 1281 | DB 01111000B | ||
| 1282 | DB 00000000B | ||
| 1283 | DB 00000000B | ||
| 1284 | DB 00000000B | ||
| 1285 | .LIST | ||
| 1286 | |||
| 1287 | ; 254 þ | ||
| 1288 | DB 00000000B | ||
| 1289 | DB 00000000B | ||
| 1290 | DB 00111100B | ||
| 1291 | DB 00111100B | ||
| 1292 | DB 00111100B | ||
| 1293 | DB 00111100B | ||
| 1294 | DB 00000000B | ||
| 1295 | DB 00000000B | ||
| 1296 | |||
| 1297 | ; 255 ÿ | ||
| 1298 | DB 00000000B | ||
| 1299 | DB 00000000B | ||
| 1300 | DB 00000000B | ||
| 1301 | DB 00000000B | ||
| 1302 | DB 00000000B | ||
| 1303 | DB 00000000B | ||
| 1304 | DB 00000000B | ||
| 1305 | DB 00000000B | ||
| 1306 | ; | ||
| 1307 | DW 860 ;TABLE ID | ||
| 1308 | ; include graftpom.inc | ||
| 1309 | DB "Portuguese",0 ;LANGUAGE NAME, IN ASCIIZ FORMAT | ||
| 1310 | ;(the above "DB" is an example of the ENGLISH version of the above include file) | ||
| 1311 | IF ($-CSEG) MOD 16 ;IF NOT ALREADY ON 16 BYTE BOUNDARY | ||
| 1312 | DB (16-(($-CSEG) MOD 16)) DUP(0) ;ADD PADDING TO GET TO 16 BYTE BOUNDARY | ||
| 1313 | ENDIF | ||
| 1314 | CSEG ENDS | ||
| 1315 | END | ||
| 1316 | \ No newline at end of file | ||
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 | ||
diff --git a/v4.0/src/CMD/GRAFTABL/GRTABUS.ASM b/v4.0/src/CMD/GRAFTABL/GRTABUS.ASM new file mode 100644 index 0000000..f3a4536 --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/GRTABUS.ASM | |||
| @@ -0,0 +1,1182 @@ | |||
| 1 | PAGE 90,132 ;A2 | ||
| 2 | TITLE GRTABUS - USA CHARACTER SET FOR THE GRAFTABL COMMAND | ||
| 3 | ;This module is to be linked with the OBJ of GRTAB.SAL. Refer to the | ||
| 4 | ;Prolog of that module for more complete description. | ||
| 5 | |||
| 6 | ;This module contains the binary description of the pixels that are used | ||
| 7 | ;in graphics mode to define the USA character set when loaded to | ||
| 8 | ;interrupt 1FH by the GRAFTABL command in DOS 3.3. | ||
| 9 | IF1 | ||
| 10 | %OUT GRTABUS.ASM... | ||
| 11 | ELSE | ||
| 12 | ; %OUT GRTABUS.ASM... | ||
| 13 | ENDIF | ||
| 14 | CSEG SEGMENT PARA PUBLIC | ||
| 15 | TABLEUS EQU THIS BYTE | ||
| 16 | PUBLIC TABLEUS | ||
| 17 | |||
| 18 | ; 128 € | ||
| 19 | DB 01111000B | ||
| 20 | DB 11001100B | ||
| 21 | DB 11000000B | ||
| 22 | DB 11001100B | ||
| 23 | DB 01111000B | ||
| 24 | DB 00011000B | ||
| 25 | DB 00001100B | ||
| 26 | DB 01111000B | ||
| 27 | ; 129 | ||
| 28 | DB 00000000B | ||
| 29 | DB 11001100B | ||
| 30 | DB 00000000B | ||
| 31 | DB 11001100B | ||
| 32 | DB 11001100B | ||
| 33 | DB 11001100B | ||
| 34 | DB 01111110B | ||
| 35 | DB 00000000B | ||
| 36 | ; 130 ‚ | ||
| 37 | DB 00011100B | ||
| 38 | DB 00000000B | ||
| 39 | DB 01111000B | ||
| 40 | DB 11001100B | ||
| 41 | DB 11111100B | ||
| 42 | DB 11000000B | ||
| 43 | DB 01111000B | ||
| 44 | DB 00000000B | ||
| 45 | ; 131 ƒ | ||
| 46 | DB 01111110B | ||
| 47 | DB 11000011B | ||
| 48 | DB 00111100B | ||
| 49 | DB 00000110B | ||
| 50 | DB 00111110B | ||
| 51 | DB 01100110B | ||
| 52 | DB 00111111B | ||
| 53 | DB 00000000B | ||
| 54 | ; 132 „ | ||
| 55 | DB 11001100B | ||
| 56 | DB 00000000B | ||
| 57 | DB 01111000B | ||
| 58 | DB 00001100B | ||
| 59 | DB 01111100B | ||
| 60 | DB 11001100B | ||
| 61 | DB 01111110B | ||
| 62 | DB 00000000B | ||
| 63 | ; 133 … | ||
| 64 | DB 11100000B | ||
| 65 | DB 00000000B | ||
| 66 | DB 01111000B | ||
| 67 | DB 00001100B | ||
| 68 | DB 01111100B | ||
| 69 | DB 11001100B | ||
| 70 | DB 01111110B | ||
| 71 | DB 00000000B | ||
| 72 | ; 134 † | ||
| 73 | DB 00110000B | ||
| 74 | DB 00110000B | ||
| 75 | DB 01111000B | ||
| 76 | DB 00001100B | ||
| 77 | DB 01111100B | ||
| 78 | DB 11001100B | ||
| 79 | DB 01111110B | ||
| 80 | DB 00000000B | ||
| 81 | ; 135 ‡ | ||
| 82 | DB 00000000B | ||
| 83 | DB 00000000B | ||
| 84 | DB 01111000B | ||
| 85 | DB 11000000B | ||
| 86 | DB 11000000B | ||
| 87 | DB 01111000B | ||
| 88 | DB 00001100B | ||
| 89 | DB 00111000B | ||
| 90 | ; 136 ˆ | ||
| 91 | DB 01111110B | ||
| 92 | DB 11000011B | ||
| 93 | DB 00111100B | ||
| 94 | DB 01100110B | ||
| 95 | DB 01111110B | ||
| 96 | DB 01100000B | ||
| 97 | DB 00111100B | ||
| 98 | DB 00000000B | ||
| 99 | ; 137 ‰ | ||
| 100 | DB 11001100B | ||
| 101 | DB 00000000B | ||
| 102 | DB 01111000B | ||
| 103 | DB 11001100B | ||
| 104 | DB 11111100B | ||
| 105 | DB 11000000B | ||
| 106 | DB 01111000B | ||
| 107 | DB 00000000B | ||
| 108 | ; 138 Š | ||
| 109 | DB 11100000B | ||
| 110 | DB 00000000B | ||
| 111 | DB 01111000B | ||
| 112 | DB 11001100B | ||
| 113 | DB 11111100B | ||
| 114 | DB 11000000B | ||
| 115 | DB 01111000B | ||
| 116 | DB 00000000B | ||
| 117 | ; 139 ‹ | ||
| 118 | DB 11001100B | ||
| 119 | DB 00000000B | ||
| 120 | DB 01110000B | ||
| 121 | DB 00110000B | ||
| 122 | DB 00110000B | ||
| 123 | DB 00110000B | ||
| 124 | DB 01111000B | ||
| 125 | DB 00000000B | ||
| 126 | ; 140 Œ | ||
| 127 | DB 01111100B | ||
| 128 | DB 11000110B | ||
| 129 | DB 00111000B | ||
| 130 | DB 00011000B | ||
| 131 | DB 00011000B | ||
| 132 | DB 00011000B | ||
| 133 | DB 00111100B | ||
| 134 | DB 00000000B | ||
| 135 | ; 141 | ||
| 136 | DB 11100000B | ||
| 137 | DB 00000000B | ||
| 138 | DB 01110000B | ||
| 139 | DB 00110000B | ||
| 140 | DB 00110000B | ||
| 141 | DB 00110000B | ||
| 142 | DB 01111000B | ||
| 143 | DB 00000000B | ||
| 144 | ; 142 Ž | ||
| 145 | DB 11000110B | ||
| 146 | DB 00111000B | ||
| 147 | DB 01101100B | ||
| 148 | DB 11000110B | ||
| 149 | DB 11111110B | ||
| 150 | DB 11000110B | ||
| 151 | DB 11000110B | ||
| 152 | DB 00000000B | ||
| 153 | ; 143 | ||
| 154 | DB 00110000B | ||
| 155 | DB 00110000B | ||
| 156 | DB 00000000B | ||
| 157 | DB 01111000B | ||
| 158 | DB 11001100B | ||
| 159 | DB 11111100B | ||
| 160 | DB 11001100B | ||
| 161 | DB 00000000B | ||
| 162 | ; 144 | ||
| 163 | DB 00011100B | ||
| 164 | DB 00000000B | ||
| 165 | DB 11111100B | ||
| 166 | DB 01100000B | ||
| 167 | DB 01111000B | ||
| 168 | DB 01100000B | ||
| 169 | DB 11111100B | ||
| 170 | DB 00000000B | ||
| 171 | ; 145 ‘ | ||
| 172 | DB 00000000B | ||
| 173 | DB 00000000B | ||
| 174 | DB 01111111B | ||
| 175 | DB 00001100B | ||
| 176 | DB 01111111B | ||
| 177 | DB 11001100B | ||
| 178 | DB 01111111B | ||
| 179 | DB 00000000B | ||
| 180 | ; 146 ’ | ||
| 181 | DB 00111110B | ||
| 182 | DB 01101100B | ||
| 183 | DB 11001100B | ||
| 184 | DB 11111110B | ||
| 185 | DB 11001100B | ||
| 186 | DB 11001100B | ||
| 187 | DB 11001110B | ||
| 188 | DB 00000000B | ||
| 189 | ; 147 “ | ||
| 190 | DB 01111000B | ||
| 191 | DB 11001100B | ||
| 192 | DB 00000000B | ||
| 193 | DB 01111000B | ||
| 194 | DB 11001100B | ||
| 195 | DB 11001100B | ||
| 196 | DB 01111000B | ||
| 197 | DB 00000000B | ||
| 198 | ; 148 ” | ||
| 199 | DB 00000000B | ||
| 200 | DB 11001100B | ||
| 201 | DB 00000000B | ||
| 202 | DB 01111000B | ||
| 203 | DB 11001100B | ||
| 204 | DB 11001100B | ||
| 205 | DB 01111000B | ||
| 206 | DB 00000000B | ||
| 207 | ; 149 • | ||
| 208 | DB 00000000B | ||
| 209 | DB 11100000B | ||
| 210 | DB 00000000B | ||
| 211 | DB 01111000B | ||
| 212 | DB 11001100B | ||
| 213 | DB 11001100B | ||
| 214 | DB 01111000B | ||
| 215 | DB 00000000B | ||
| 216 | ; 150 – | ||
| 217 | DB 01111000B | ||
| 218 | DB 11001100B | ||
| 219 | DB 00000000B | ||
| 220 | DB 11001100B | ||
| 221 | DB 11001100B | ||
| 222 | DB 11001100B | ||
| 223 | DB 01111110B | ||
| 224 | DB 00000000B | ||
| 225 | ; 151 — | ||
| 226 | DB 00000000B | ||
| 227 | DB 11100000B | ||
| 228 | DB 00000000B | ||
| 229 | DB 11001100B | ||
| 230 | DB 11001100B | ||
| 231 | DB 11001100B | ||
| 232 | DB 01111110B | ||
| 233 | DB 00000000B | ||
| 234 | ; 152 ˜ | ||
| 235 | DB 00000000B | ||
| 236 | DB 11001100B | ||
| 237 | DB 00000000B | ||
| 238 | DB 11001100B | ||
| 239 | DB 11001100B | ||
| 240 | DB 01111100B | ||
| 241 | DB 00001100B | ||
| 242 | DB 11111000B | ||
| 243 | ; 153 ™ | ||
| 244 | DB 11000011B | ||
| 245 | DB 00011000B | ||
| 246 | DB 00111100B | ||
| 247 | DB 01100110B | ||
| 248 | DB 01100110B | ||
| 249 | DB 00111100B | ||
| 250 | DB 00011000B | ||
| 251 | DB 00000000B | ||
| 252 | ; 154 š | ||
| 253 | DB 11001100B | ||
| 254 | DB 00000000B | ||
| 255 | DB 11001100B | ||
| 256 | DB 11001100B | ||
| 257 | DB 11001100B | ||
| 258 | DB 11001100B | ||
| 259 | DB 01111000B | ||
| 260 | DB 00000000B | ||
| 261 | ; 155 › | ||
| 262 | DB 00011000B | ||
| 263 | DB 00011000B | ||
| 264 | DB 01111110B | ||
| 265 | DB 11000000B | ||
| 266 | DB 11000000B | ||
| 267 | DB 01111110B | ||
| 268 | DB 00011000B | ||
| 269 | DB 00011000B | ||
| 270 | ; 156 œ | ||
| 271 | DB 00111000B | ||
| 272 | DB 01101100B | ||
| 273 | DB 01100100B | ||
| 274 | DB 11110000B | ||
| 275 | DB 01100000B | ||
| 276 | DB 11100110B | ||
| 277 | DB 11111100B | ||
| 278 | DB 00000000B | ||
| 279 | ; 157 | ||
| 280 | DB 11001100B | ||
| 281 | DB 11001100B | ||
| 282 | DB 01111000B | ||
| 283 | DB 11111100B | ||
| 284 | DB 00110000B | ||
| 285 | DB 11111100B | ||
| 286 | DB 00110000B | ||
| 287 | DB 00110000B | ||
| 288 | ; 158 ž | ||
| 289 | DB 11111000B | ||
| 290 | DB 11001100B | ||
| 291 | DB 11001100B | ||
| 292 | DB 11111010B | ||
| 293 | DB 11000110B | ||
| 294 | DB 11001111B | ||
| 295 | DB 11000110B | ||
| 296 | DB 11000111B | ||
| 297 | ; 159 Ÿ | ||
| 298 | DB 00001110B | ||
| 299 | DB 00011011B | ||
| 300 | DB 00011000B | ||
| 301 | DB 00111100B | ||
| 302 | DB 00011000B | ||
| 303 | DB 00011000B | ||
| 304 | DB 11011000B | ||
| 305 | DB 01110000B | ||
| 306 | ; 160 | ||
| 307 | DB 00011100B | ||
| 308 | DB 00000000B | ||
| 309 | DB 01111000B | ||
| 310 | DB 00001100B | ||
| 311 | DB 01111100B | ||
| 312 | DB 11001100B | ||
| 313 | DB 01111110B | ||
| 314 | DB 00000000B | ||
| 315 | ; 161 ¡ | ||
| 316 | DB 00111000B | ||
| 317 | DB 00000000B | ||
| 318 | DB 01110000B | ||
| 319 | DB 00110000B | ||
| 320 | DB 00110000B | ||
| 321 | DB 00110000B | ||
| 322 | DB 01111000B | ||
| 323 | DB 00000000B | ||
| 324 | ; 162 ¢ | ||
| 325 | DB 00000000B | ||
| 326 | DB 00011100B | ||
| 327 | DB 00000000B | ||
| 328 | DB 01111000B | ||
| 329 | DB 11001100B | ||
| 330 | DB 11001100B | ||
| 331 | DB 01111000B | ||
| 332 | DB 00000000B | ||
| 333 | ; 163 £ | ||
| 334 | DB 00000000B | ||
| 335 | DB 00011100B | ||
| 336 | DB 00000000B | ||
| 337 | DB 11001100B | ||
| 338 | DB 11001100B | ||
| 339 | DB 11001100B | ||
| 340 | DB 01111110B | ||
| 341 | DB 00000000B | ||
| 342 | ; 164 ¤ | ||
| 343 | DB 00000000B | ||
| 344 | DB 11111000B | ||
| 345 | DB 00000000B | ||
| 346 | DB 11111000B | ||
| 347 | DB 11001100B | ||
| 348 | DB 11001100B | ||
| 349 | DB 11001100B | ||
| 350 | DB 00000000B | ||
| 351 | ; 165 ¥ | ||
| 352 | DB 11111100B | ||
| 353 | DB 00000000B | ||
| 354 | DB 11001100B | ||
| 355 | DB 11101100B | ||
| 356 | DB 11111100B | ||
| 357 | DB 11011100B | ||
| 358 | DB 11001100B | ||
| 359 | DB 00000000B | ||
| 360 | ; 166 ¦ | ||
| 361 | DB 00111100B | ||
| 362 | DB 01101100B | ||
| 363 | DB 01101100B | ||
| 364 | DB 00111110B | ||
| 365 | DB 00000000B | ||
| 366 | DB 01111110B | ||
| 367 | DB 00000000B | ||
| 368 | DB 00000000B | ||
| 369 | ; 167 § | ||
| 370 | DB 00111000B | ||
| 371 | DB 01101100B | ||
| 372 | DB 01101100B | ||
| 373 | DB 00111000B | ||
| 374 | DB 00000000B | ||
| 375 | DB 01111100B | ||
| 376 | DB 00000000B | ||
| 377 | DB 00000000B | ||
| 378 | ; 168 ¨ | ||
| 379 | DB 00110000B | ||
| 380 | DB 00000000B | ||
| 381 | DB 00110000B | ||
| 382 | DB 01100000B | ||
| 383 | DB 11000000B | ||
| 384 | DB 11001100B | ||
| 385 | DB 01111000B | ||
| 386 | DB 00000000B | ||
| 387 | ; 169 © | ||
| 388 | DB 00000000B | ||
| 389 | DB 00000000B | ||
| 390 | DB 00000000B | ||
| 391 | DB 11111100B | ||
| 392 | DB 11000000B | ||
| 393 | DB 11000000B | ||
| 394 | DB 00000000B | ||
| 395 | DB 00000000B | ||
| 396 | ; 170 ª | ||
| 397 | DB 00000000B | ||
| 398 | DB 00000000B | ||
| 399 | DB 00000000B | ||
| 400 | DB 11111100B | ||
| 401 | DB 00001100B | ||
| 402 | DB 00001100B | ||
| 403 | DB 00000000B | ||
| 404 | DB 00000000B | ||
| 405 | ; 171 « | ||
| 406 | DB 11000011B | ||
| 407 | DB 11000110B | ||
| 408 | DB 11001100B | ||
| 409 | DB 11011110B | ||
| 410 | DB 00110011B | ||
| 411 | DB 01100110B | ||
| 412 | DB 11001100B | ||
| 413 | DB 00001111B | ||
| 414 | ; 172 ¬ | ||
| 415 | DB 11000011B | ||
| 416 | DB 11000110B | ||
| 417 | DB 11001100B | ||
| 418 | DB 11011011B | ||
| 419 | DB 00110111B | ||
| 420 | DB 01101111B | ||
| 421 | DB 11001111B | ||
| 422 | DB 00000011B | ||
| 423 | ; 173 | ||
| 424 | DB 00011000B | ||
| 425 | DB 00011000B | ||
| 426 | DB 00000000B | ||
| 427 | DB 00011000B | ||
| 428 | DB 00011000B | ||
| 429 | DB 00011000B | ||
| 430 | DB 00011000B | ||
| 431 | DB 00000000B | ||
| 432 | ; 174 ® | ||
| 433 | DB 00000000B | ||
| 434 | DB 00110011B | ||
| 435 | DB 01100110B | ||
| 436 | DB 11001100B | ||
| 437 | DB 01100110B | ||
| 438 | DB 00110011B | ||
| 439 | DB 00000000B | ||
| 440 | DB 00000000B | ||
| 441 | ; 175 ¯ | ||
| 442 | DB 00000000B | ||
| 443 | DB 11001100B | ||
| 444 | DB 01100110B | ||
| 445 | DB 00110011B | ||
| 446 | DB 01100110B | ||
| 447 | DB 11001100B | ||
| 448 | DB 00000000B | ||
| 449 | DB 00000000B | ||
| 450 | ; 176 ° | ||
| 451 | DB 00100010B | ||
| 452 | DB 10001000B | ||
| 453 | DB 00100010B | ||
| 454 | DB 10001000B | ||
| 455 | DB 00100010B | ||
| 456 | DB 10001000B | ||
| 457 | DB 00100010B | ||
| 458 | DB 10001000B | ||
| 459 | ; 177 ± | ||
| 460 | DB 01010101B | ||
| 461 | DB 10101010B | ||
| 462 | DB 01010101B | ||
| 463 | DB 10101010B | ||
| 464 | DB 01010101B | ||
| 465 | DB 10101010B | ||
| 466 | DB 01010101B | ||
| 467 | DB 10101010B | ||
| 468 | ; 178 ² | ||
| 469 | DB 11011011B | ||
| 470 | DB 01110111B | ||
| 471 | DB 11011011B | ||
| 472 | DB 11101110B | ||
| 473 | DB 11011011B | ||
| 474 | DB 01110111B | ||
| 475 | DB 11011011B | ||
| 476 | DB 11101110B | ||
| 477 | ; 179 ³ | ||
| 478 | DB 00011000B | ||
| 479 | DB 00011000B | ||
| 480 | DB 00011000B | ||
| 481 | DB 00011000B | ||
| 482 | DB 00011000B | ||
| 483 | DB 00011000B | ||
| 484 | DB 00011000B | ||
| 485 | DB 00011000B | ||
| 486 | ; 180 ´ | ||
| 487 | DB 00011000B | ||
| 488 | DB 00011000B | ||
| 489 | DB 00011000B | ||
| 490 | DB 00011000B | ||
| 491 | DB 11111000B | ||
| 492 | DB 00011000B | ||
| 493 | DB 00011000B | ||
| 494 | DB 00011000B | ||
| 495 | ; 181 µ | ||
| 496 | DB 00011000B | ||
| 497 | DB 00011000B | ||
| 498 | DB 11111000B | ||
| 499 | DB 00011000B | ||
| 500 | DB 11111000B | ||
| 501 | DB 00011000B | ||
| 502 | DB 00011000B | ||
| 503 | DB 00011000B | ||
| 504 | ; 182 ¶ | ||
| 505 | DB 00110110B | ||
| 506 | DB 00110110B | ||
| 507 | DB 00110110B | ||
| 508 | DB 00110110B | ||
| 509 | DB 11110110B | ||
| 510 | DB 00110110B | ||
| 511 | DB 00110110B | ||
| 512 | DB 00110110B | ||
| 513 | ; 183 · | ||
| 514 | DB 00000000B | ||
| 515 | DB 00000000B | ||
| 516 | DB 00000000B | ||
| 517 | DB 00000000B | ||
| 518 | DB 11111110B | ||
| 519 | DB 00110110B | ||
| 520 | DB 00110110B | ||
| 521 | DB 00110110B | ||
| 522 | ; 184 ¸ | ||
| 523 | DB 00000000B | ||
| 524 | DB 00000000B | ||
| 525 | DB 11111000B | ||
| 526 | DB 00011000B | ||
| 527 | DB 11111000B | ||
| 528 | DB 00011000B | ||
| 529 | DB 00011000B | ||
| 530 | DB 00011000B | ||
| 531 | ; 185 ¹ | ||
| 532 | DB 00110110B | ||
| 533 | DB 00110110B | ||
| 534 | DB 11110110B | ||
| 535 | DB 00000110B | ||
| 536 | DB 11110110B | ||
| 537 | DB 00110110B | ||
| 538 | DB 00110110B | ||
| 539 | DB 00110110B | ||
| 540 | ; 186 º | ||
| 541 | DB 00110110B | ||
| 542 | DB 00110110B | ||
| 543 | DB 00110110B | ||
| 544 | DB 00110110B | ||
| 545 | DB 00110110B | ||
| 546 | DB 00110110B | ||
| 547 | DB 00110110B | ||
| 548 | DB 00110110B | ||
| 549 | ; 187 » | ||
| 550 | DB 00000000B | ||
| 551 | DB 00000000B | ||
| 552 | DB 11111110B | ||
| 553 | DB 00000110B | ||
| 554 | DB 11110110B | ||
| 555 | DB 00110110B | ||
| 556 | DB 00110110B | ||
| 557 | DB 00110110B | ||
| 558 | ; 188 ¼ | ||
| 559 | DB 00110110B | ||
| 560 | DB 00110110B | ||
| 561 | DB 11110110B | ||
| 562 | DB 00000110B | ||
| 563 | DB 11111110B | ||
| 564 | DB 00000000B | ||
| 565 | DB 00000000B | ||
| 566 | DB 00000000B | ||
| 567 | ; 189 ½ | ||
| 568 | DB 00110110B | ||
| 569 | DB 00110110B | ||
| 570 | DB 00110110B | ||
| 571 | DB 00110110B | ||
| 572 | DB 11111110B | ||
| 573 | DB 00000000B | ||
| 574 | DB 00000000B | ||
| 575 | DB 00000000B | ||
| 576 | ; 190 ¾ | ||
| 577 | DB 00011000B | ||
| 578 | DB 00011000B | ||
| 579 | DB 11111000B | ||
| 580 | DB 00011000B | ||
| 581 | DB 11111000B | ||
| 582 | DB 00000000B | ||
| 583 | DB 00000000B | ||
| 584 | DB 00000000B | ||
| 585 | ; 191 ¿ | ||
| 586 | DB 00000000B | ||
| 587 | DB 00000000B | ||
| 588 | DB 00000000B | ||
| 589 | DB 00000000B | ||
| 590 | DB 11111000B | ||
| 591 | DB 00011000B | ||
| 592 | DB 00011000B | ||
| 593 | DB 00011000B | ||
| 594 | ; 192 À | ||
| 595 | DB 00011000B | ||
| 596 | DB 00011000B | ||
| 597 | DB 00011000B | ||
| 598 | DB 00011000B | ||
| 599 | DB 00011111B | ||
| 600 | DB 00000000B | ||
| 601 | DB 00000000B | ||
| 602 | DB 00000000B | ||
| 603 | ; 193 Á | ||
| 604 | DB 00011000B | ||
| 605 | DB 00011000B | ||
| 606 | DB 00011000B | ||
| 607 | DB 00011000B | ||
| 608 | DB 11111111B | ||
| 609 | DB 00000000B | ||
| 610 | DB 00000000B | ||
| 611 | DB 00000000B | ||
| 612 | ; 194 Â | ||
| 613 | DB 00000000B | ||
| 614 | DB 00000000B | ||
| 615 | DB 00000000B | ||
| 616 | DB 00000000B | ||
| 617 | DB 11111111B | ||
| 618 | DB 00011000B | ||
| 619 | DB 00011000B | ||
| 620 | DB 00011000B | ||
| 621 | ; 195 Ã | ||
| 622 | DB 00011000B | ||
| 623 | DB 00011000B | ||
| 624 | DB 00011000B | ||
| 625 | DB 00011000B | ||
| 626 | DB 00011111B | ||
| 627 | DB 00011000B | ||
| 628 | DB 00011000B | ||
| 629 | DB 00011000B | ||
| 630 | ; 196 Ä | ||
| 631 | DB 00000000B | ||
| 632 | DB 00000000B | ||
| 633 | DB 00000000B | ||
| 634 | DB 00000000B | ||
| 635 | DB 11111111B | ||
| 636 | DB 00000000B | ||
| 637 | DB 00000000B | ||
| 638 | DB 00000000B | ||
| 639 | ; 197 Å | ||
| 640 | DB 00011000B | ||
| 641 | DB 00011000B | ||
| 642 | DB 00011000B | ||
| 643 | DB 00011000B | ||
| 644 | DB 11111111B | ||
| 645 | DB 00011000B | ||
| 646 | DB 00011000B | ||
| 647 | DB 00011000B | ||
| 648 | ; 198 Æ | ||
| 649 | DB 00011000B | ||
| 650 | DB 00011000B | ||
| 651 | DB 00011111B | ||
| 652 | DB 00011000B | ||
| 653 | DB 00011111B | ||
| 654 | DB 00011000B | ||
| 655 | DB 00011000B | ||
| 656 | DB 00011000B | ||
| 657 | ; 199 Ç | ||
| 658 | DB 00110110B | ||
| 659 | DB 00110110B | ||
| 660 | DB 00110110B | ||
| 661 | DB 00110110B | ||
| 662 | DB 00110111B | ||
| 663 | DB 00110110B | ||
| 664 | DB 00110110B | ||
| 665 | DB 00110110B | ||
| 666 | ; 200 È | ||
| 667 | DB 00110110B | ||
| 668 | DB 00110110B | ||
| 669 | DB 00110111B | ||
| 670 | DB 00110000B | ||
| 671 | DB 00111111B | ||
| 672 | DB 00000000B | ||
| 673 | DB 00000000B | ||
| 674 | DB 00000000B | ||
| 675 | ; 201 É | ||
| 676 | DB 00000000B | ||
| 677 | DB 00000000B | ||
| 678 | DB 00111111B | ||
| 679 | DB 00110000B | ||
| 680 | DB 00110111B | ||
| 681 | DB 00110110B | ||
| 682 | DB 00110110B | ||
| 683 | DB 00110110B | ||
| 684 | ; 202 Ê | ||
| 685 | DB 00110110B | ||
| 686 | DB 00110110B | ||
| 687 | DB 11110111B | ||
| 688 | DB 00000000B | ||
| 689 | DB 11111111B | ||
| 690 | DB 00000000B | ||
| 691 | DB 00000000B | ||
| 692 | DB 00000000B | ||
| 693 | ; 203 Ë | ||
| 694 | DB 00000000B | ||
| 695 | DB 00000000B | ||
| 696 | DB 11111111B | ||
| 697 | DB 00000000B | ||
| 698 | DB 11110111B | ||
| 699 | DB 00110110B | ||
| 700 | DB 00110110B | ||
| 701 | DB 00110110B | ||
| 702 | ; 204 Ì | ||
| 703 | DB 00110110B | ||
| 704 | DB 00110110B | ||
| 705 | DB 00110111B | ||
| 706 | DB 00110000B | ||
| 707 | DB 00110111B | ||
| 708 | DB 00110110B | ||
| 709 | DB 00110110B | ||
| 710 | DB 00110110B | ||
| 711 | ; 205 Í | ||
| 712 | DB 00000000B | ||
| 713 | DB 00000000B | ||
| 714 | DB 11111111B | ||
| 715 | DB 00000000B | ||
| 716 | DB 11111111B | ||
| 717 | DB 00000000B | ||
| 718 | DB 00000000B | ||
| 719 | DB 00000000B | ||
| 720 | ; 206 Î | ||
| 721 | DB 00110110B | ||
| 722 | DB 00110110B | ||
| 723 | DB 11110111B | ||
| 724 | DB 00000000B | ||
| 725 | DB 11110111B | ||
| 726 | DB 00110110B | ||
| 727 | DB 00110110B | ||
| 728 | DB 00110110B | ||
| 729 | ; 207 Ï | ||
| 730 | DB 00011000B | ||
| 731 | DB 00011000B | ||
| 732 | DB 11111111B | ||
| 733 | DB 00000000B | ||
| 734 | DB 11111111B | ||
| 735 | DB 00000000B | ||
| 736 | DB 00000000B | ||
| 737 | DB 00000000B | ||
| 738 | ; 208 Ð | ||
| 739 | DB 00110110B | ||
| 740 | DB 00110110B | ||
| 741 | DB 00110110B | ||
| 742 | DB 00110110B | ||
| 743 | DB 11111111B | ||
| 744 | DB 00000000B | ||
| 745 | DB 00000000B | ||
| 746 | DB 00000000B | ||
| 747 | ; 209 Ñ | ||
| 748 | DB 00000000B | ||
| 749 | DB 00000000B | ||
| 750 | DB 11111111B | ||
| 751 | DB 00000000B | ||
| 752 | DB 11111111B | ||
| 753 | DB 00011000B | ||
| 754 | DB 00011000B | ||
| 755 | DB 00011000B | ||
| 756 | ; 210 Ò | ||
| 757 | DB 00000000B | ||
| 758 | DB 00000000B | ||
| 759 | DB 00000000B | ||
| 760 | DB 00000000B | ||
| 761 | DB 11111111B | ||
| 762 | DB 00110110B | ||
| 763 | DB 00110110B | ||
| 764 | DB 00110110B | ||
| 765 | ; 211 Ó | ||
| 766 | DB 00110110B | ||
| 767 | DB 00110110B | ||
| 768 | DB 00110110B | ||
| 769 | DB 00110110B | ||
| 770 | DB 00111111B | ||
| 771 | DB 00000000B | ||
| 772 | DB 00000000B | ||
| 773 | DB 00000000B | ||
| 774 | ; 212 Ô | ||
| 775 | DB 00011000B | ||
| 776 | DB 00011000B | ||
| 777 | DB 00011111B | ||
| 778 | DB 00011000B | ||
| 779 | DB 00011111B | ||
| 780 | DB 00000000B | ||
| 781 | DB 00000000B | ||
| 782 | DB 00000000B | ||
| 783 | ; 213 Õ | ||
| 784 | DB 00000000B | ||
| 785 | DB 00000000B | ||
| 786 | DB 00011111B | ||
| 787 | DB 00011000B | ||
| 788 | DB 00011111B | ||
| 789 | DB 00011000B | ||
| 790 | DB 00011000B | ||
| 791 | DB 00011000B | ||
| 792 | ; 214 Ö | ||
| 793 | DB 00000000B | ||
| 794 | DB 00000000B | ||
| 795 | DB 00000000B | ||
| 796 | DB 00000000B | ||
| 797 | DB 00111111B | ||
| 798 | DB 00110110B | ||
| 799 | DB 00110110B | ||
| 800 | DB 00110110B | ||
| 801 | ; 215 × | ||
| 802 | DB 00110110B | ||
| 803 | DB 00110110B | ||
| 804 | DB 00110110B | ||
| 805 | DB 00110110B | ||
| 806 | DB 11111111B | ||
| 807 | DB 00110110B | ||
| 808 | DB 00110110B | ||
| 809 | DB 00110110B | ||
| 810 | ; 216 Ø | ||
| 811 | DB 00011000B | ||
| 812 | DB 00011000B | ||
| 813 | DB 11111111B | ||
| 814 | DB 00011000B | ||
| 815 | DB 11111111B | ||
| 816 | DB 00011000B | ||
| 817 | DB 00011000B | ||
| 818 | DB 00011000B | ||
| 819 | ; 217 Ù | ||
| 820 | DB 00011000B | ||
| 821 | DB 00011000B | ||
| 822 | DB 00011000B | ||
| 823 | DB 00011000B | ||
| 824 | DB 11111000B | ||
| 825 | DB 00000000B | ||
| 826 | DB 00000000B | ||
| 827 | DB 00000000B | ||
| 828 | ; 218 Ú | ||
| 829 | DB 00000000B | ||
| 830 | DB 00000000B | ||
| 831 | DB 00000000B | ||
| 832 | DB 00000000B | ||
| 833 | DB 00011111B | ||
| 834 | DB 00011000B | ||
| 835 | DB 00011000B | ||
| 836 | DB 00011000B | ||
| 837 | ; 219 Û | ||
| 838 | DB 11111111B | ||
| 839 | DB 11111111B | ||
| 840 | DB 11111111B | ||
| 841 | DB 11111111B | ||
| 842 | DB 11111111B | ||
| 843 | DB 11111111B | ||
| 844 | DB 11111111B | ||
| 845 | DB 11111111B | ||
| 846 | ; 220 Ü | ||
| 847 | DB 00000000B | ||
| 848 | DB 00000000B | ||
| 849 | DB 00000000B | ||
| 850 | DB 00000000B | ||
| 851 | DB 11111111B | ||
| 852 | DB 11111111B | ||
| 853 | DB 11111111B | ||
| 854 | DB 11111111B | ||
| 855 | ; 221 Ý | ||
| 856 | DB 11110000B | ||
| 857 | DB 11110000B | ||
| 858 | DB 11110000B | ||
| 859 | DB 11110000B | ||
| 860 | DB 11110000B | ||
| 861 | DB 11110000B | ||
| 862 | DB 11110000B | ||
| 863 | DB 11110000B | ||
| 864 | ; 222 Þ | ||
| 865 | DB 00001111B | ||
| 866 | DB 00001111B | ||
| 867 | DB 00001111B | ||
| 868 | DB 00001111B | ||
| 869 | DB 00001111B | ||
| 870 | DB 00001111B | ||
| 871 | DB 00001111B | ||
| 872 | DB 00001111B | ||
| 873 | ; 223 ß | ||
| 874 | DB 11111111B | ||
| 875 | DB 11111111B | ||
| 876 | DB 11111111B | ||
| 877 | DB 11111111B | ||
| 878 | DB 00000000B | ||
| 879 | DB 00000000B | ||
| 880 | DB 00000000B | ||
| 881 | DB 00000000B | ||
| 882 | ; 224 à | ||
| 883 | DB 00000000B | ||
| 884 | DB 00000000B | ||
| 885 | DB 01110110B | ||
| 886 | DB 11011100B | ||
| 887 | DB 11001000B | ||
| 888 | DB 11011100B | ||
| 889 | DB 01110110B | ||
| 890 | DB 00000000B | ||
| 891 | ; 225 á | ||
| 892 | DB 00000000B | ||
| 893 | DB 01111000B | ||
| 894 | DB 11001100B | ||
| 895 | DB 11111000B | ||
| 896 | DB 11001100B | ||
| 897 | DB 11111000B | ||
| 898 | DB 11000000B | ||
| 899 | DB 11000000B | ||
| 900 | ; 226 â | ||
| 901 | DB 00000000B | ||
| 902 | DB 11111100B | ||
| 903 | DB 11001100B | ||
| 904 | DB 11000000B | ||
| 905 | DB 11000000B | ||
| 906 | DB 11000000B | ||
| 907 | DB 11000000B | ||
| 908 | DB 00000000B | ||
| 909 | ; 227 ã | ||
| 910 | DB 00000000B | ||
| 911 | DB 11111110B | ||
| 912 | DB 01101100B | ||
| 913 | DB 01101100B | ||
| 914 | DB 01101100B | ||
| 915 | DB 01101100B | ||
| 916 | DB 01101100B | ||
| 917 | DB 00000000B | ||
| 918 | ; 228 ä | ||
| 919 | DB 11111100B | ||
| 920 | DB 11001100B | ||
| 921 | DB 01100000B | ||
| 922 | DB 00110000B | ||
| 923 | DB 01100000B | ||
| 924 | DB 11001100B | ||
| 925 | DB 11111100B | ||
| 926 | DB 00000000B | ||
| 927 | ; 229 å | ||
| 928 | DB 00000000B | ||
| 929 | DB 00000000B | ||
| 930 | DB 01111110B | ||
| 931 | DB 11011000B | ||
| 932 | DB 11011000B | ||
| 933 | DB 11011000B | ||
| 934 | DB 01110000B | ||
| 935 | DB 00000000B | ||
| 936 | ; 230 æ | ||
| 937 | DB 00000000B | ||
| 938 | DB 01100110B | ||
| 939 | DB 01100110B | ||
| 940 | DB 01100110B | ||
| 941 | DB 01100110B | ||
| 942 | DB 01111100B | ||
| 943 | DB 01100000B | ||
| 944 | DB 11000000B | ||
| 945 | ; 231 ç | ||
| 946 | DB 00000000B | ||
| 947 | DB 01110110B | ||
| 948 | DB 11011100B | ||
| 949 | DB 00011000B | ||
| 950 | DB 00011000B | ||
| 951 | DB 00011000B | ||
| 952 | DB 00011000B | ||
| 953 | DB 00000000B | ||
| 954 | ; 232 è | ||
| 955 | DB 11111100B | ||
| 956 | DB 00110000B | ||
| 957 | DB 01111000B | ||
| 958 | DB 11001100B | ||
| 959 | DB 11001100B | ||
| 960 | DB 01111000B | ||
| 961 | DB 00110000B | ||
| 962 | DB 11111100B | ||
| 963 | ; 233 é | ||
| 964 | DB 00111000B | ||
| 965 | DB 01101100B | ||
| 966 | DB 11000110B | ||
| 967 | DB 11111110B | ||
| 968 | DB 11000110B | ||
| 969 | DB 01101100B | ||
| 970 | DB 00111000B | ||
| 971 | DB 00000000B | ||
| 972 | ; 234 ê | ||
| 973 | DB 00111000B | ||
| 974 | DB 01101100B | ||
| 975 | DB 11000110B | ||
| 976 | DB 11000110B | ||
| 977 | DB 01101100B | ||
| 978 | DB 01101100B | ||
| 979 | DB 11101110B | ||
| 980 | DB 00000000B | ||
| 981 | ; 235 ë | ||
| 982 | DB 00011100B | ||
| 983 | DB 00110000B | ||
| 984 | DB 00011000B | ||
| 985 | DB 01111100B | ||
| 986 | DB 11001100B | ||
| 987 | DB 11001100B | ||
| 988 | DB 01111000B | ||
| 989 | DB 00000000B | ||
| 990 | ; 236 ì | ||
| 991 | DB 00000000B | ||
| 992 | DB 00000000B | ||
| 993 | DB 01111110B | ||
| 994 | DB 11011011B | ||
| 995 | DB 11011011B | ||
| 996 | DB 01111110B | ||
| 997 | DB 00000000B | ||
| 998 | DB 00000000B | ||
| 999 | ; 237 í | ||
| 1000 | DB 00000110B | ||
| 1001 | DB 00001100B | ||
| 1002 | DB 01111110B | ||
| 1003 | DB 11011011B | ||
| 1004 | DB 11011011B | ||
| 1005 | DB 01111110B | ||
| 1006 | DB 01100000B | ||
| 1007 | DB 11000000B | ||
| 1008 | ; 238 î | ||
| 1009 | DB 00111000B | ||
| 1010 | DB 01100000B | ||
| 1011 | DB 11000000B | ||
| 1012 | DB 11111000B | ||
| 1013 | DB 11000000B | ||
| 1014 | DB 01100000B | ||
| 1015 | DB 00111000B | ||
| 1016 | DB 00000000B | ||
| 1017 | ; 239 ï | ||
| 1018 | DB 01111000B | ||
| 1019 | DB 11001100B | ||
| 1020 | DB 11001100B | ||
| 1021 | DB 11001100B | ||
| 1022 | DB 11001100B | ||
| 1023 | DB 11001100B | ||
| 1024 | DB 11001100B | ||
| 1025 | DB 00000000B | ||
| 1026 | ; 240 ð | ||
| 1027 | DB 00000000B | ||
| 1028 | DB 11111100B | ||
| 1029 | DB 00000000B | ||
| 1030 | DB 11111100B | ||
| 1031 | DB 00000000B | ||
| 1032 | DB 11111100B | ||
| 1033 | DB 00000000B | ||
| 1034 | DB 00000000B | ||
| 1035 | ; 241 ñ | ||
| 1036 | DB 00110000B | ||
| 1037 | DB 00110000B | ||
| 1038 | DB 11111100B | ||
| 1039 | DB 00110000B | ||
| 1040 | DB 00110000B | ||
| 1041 | DB 00000000B | ||
| 1042 | DB 11111100B | ||
| 1043 | DB 00000000B | ||
| 1044 | ; 242 ò | ||
| 1045 | DB 01100000B | ||
| 1046 | DB 00110000B | ||
| 1047 | DB 00011000B | ||
| 1048 | DB 00110000B | ||
| 1049 | DB 01100000B | ||
| 1050 | DB 00000000B | ||
| 1051 | DB 11111100B | ||
| 1052 | DB 00000000B | ||
| 1053 | ; 243 ó | ||
| 1054 | DB 00011000B | ||
| 1055 | DB 00110000B | ||
| 1056 | DB 01100000B | ||
| 1057 | DB 00110000B | ||
| 1058 | DB 00011000B | ||
| 1059 | DB 00000000B | ||
| 1060 | DB 11111100B | ||
| 1061 | DB 00000000B | ||
| 1062 | ; 244 ô | ||
| 1063 | DB 00001110B | ||
| 1064 | DB 00011011B | ||
| 1065 | DB 00011011B | ||
| 1066 | DB 00011000B | ||
| 1067 | DB 00011000B | ||
| 1068 | DB 00011000B | ||
| 1069 | DB 00011000B | ||
| 1070 | DB 00011000B | ||
| 1071 | ; 245 õ | ||
| 1072 | DB 00011000B | ||
| 1073 | DB 00011000B | ||
| 1074 | DB 00011000B | ||
| 1075 | DB 00011000B | ||
| 1076 | DB 00011000B | ||
| 1077 | DB 11011000B | ||
| 1078 | DB 11011000B | ||
| 1079 | DB 01110000B | ||
| 1080 | ; 246 ö | ||
| 1081 | DB 00110000B | ||
| 1082 | DB 00110000B | ||
| 1083 | DB 00000000B | ||
| 1084 | DB 11111100B | ||
| 1085 | DB 00000000B | ||
| 1086 | DB 00110000B | ||
| 1087 | DB 00110000B | ||
| 1088 | DB 00000000B | ||
| 1089 | ; 247 ÷ | ||
| 1090 | DB 00000000B | ||
| 1091 | DB 01110110B | ||
| 1092 | DB 11011100B | ||
| 1093 | DB 00000000B | ||
| 1094 | DB 01110110B | ||
| 1095 | DB 11011100B | ||
| 1096 | DB 00000000B | ||
| 1097 | DB 00000000B | ||
| 1098 | ; 248 ø | ||
| 1099 | DB 00111000B | ||
| 1100 | DB 01101100B | ||
| 1101 | DB 01101100B | ||
| 1102 | DB 00111000B | ||
| 1103 | DB 00000000B | ||
| 1104 | DB 00000000B | ||
| 1105 | DB 00000000B | ||
| 1106 | DB 00000000B | ||
| 1107 | ; 249 ù | ||
| 1108 | DB 00000000B | ||
| 1109 | DB 00000000B | ||
| 1110 | DB 00000000B | ||
| 1111 | DB 00011000B | ||
| 1112 | DB 00011000B | ||
| 1113 | DB 00000000B | ||
| 1114 | DB 00000000B | ||
| 1115 | DB 00000000B | ||
| 1116 | ; 250 ú | ||
| 1117 | DB 00000000B | ||
| 1118 | DB 00000000B | ||
| 1119 | DB 00000000B | ||
| 1120 | DB 00000000B | ||
| 1121 | DB 00011000B | ||
| 1122 | DB 00000000B | ||
| 1123 | DB 00000000B | ||
| 1124 | DB 00000000B | ||
| 1125 | ; 251 û | ||
| 1126 | DB 00001111B | ||
| 1127 | DB 00001100B | ||
| 1128 | DB 00001100B | ||
| 1129 | DB 00001100B | ||
| 1130 | DB 11101100B | ||
| 1131 | DB 01101100B | ||
| 1132 | DB 00111100B | ||
| 1133 | DB 00011100B | ||
| 1134 | ; 252 ü | ||
| 1135 | DB 01111000B | ||
| 1136 | DB 01101100B | ||
| 1137 | DB 01101100B | ||
| 1138 | DB 01101100B | ||
| 1139 | DB 01101100B | ||
| 1140 | DB 00000000B | ||
| 1141 | DB 00000000B | ||
| 1142 | DB 00000000B | ||
| 1143 | ; 253 ý | ||
| 1144 | DB 01110000B | ||
| 1145 | DB 00011000B | ||
| 1146 | DB 00110000B | ||
| 1147 | DB 01100000B | ||
| 1148 | DB 01111000B | ||
| 1149 | DB 00000000B | ||
| 1150 | DB 00000000B | ||
| 1151 | DB 00000000B | ||
| 1152 | ; 254 þ | ||
| 1153 | DB 00000000B | ||
| 1154 | DB 00000000B | ||
| 1155 | DB 00111100B | ||
| 1156 | DB 00111100B | ||
| 1157 | DB 00111100B | ||
| 1158 | DB 00111100B | ||
| 1159 | DB 00000000B | ||
| 1160 | DB 00000000B | ||
| 1161 | ; 255 ÿ | ||
| 1162 | DB 00000000B | ||
| 1163 | DB 00000000B | ||
| 1164 | DB 00000000B | ||
| 1165 | DB 00000000B | ||
| 1166 | DB 00000000B | ||
| 1167 | DB 00000000B | ||
| 1168 | DB 00000000B | ||
| 1169 | DB 00000000B | ||
| 1170 | ; | ||
| 1171 | ENDTABL EQU THIS BYTE | ||
| 1172 | PUBLIC ENDTABL | ||
| 1173 | DW 437 ;TABLE ID | ||
| 1174 | ; include graftusm.inc | ||
| 1175 | DB "USA",0 ;LANGUAGE NAME, IN ASCIIZ FORMAT | ||
| 1176 | ;(the above "DB" is an example of the ENGLISH version of the above include file) | ||
| 1177 | IF ($-CSEG) MOD 16 ;IF NOT ALREADY ON 16 BYTE BOUNDARY | ||
| 1178 | DB (16-(($-CSEG) MOD 16)) DUP(0) ;ADD PADDING TO GET TO 16 BYTE BOUNDARY | ||
| 1179 | ENDIF | ||
| 1180 | CSEG ENDS | ||
| 1181 | END | ||
| 1182 | \ No newline at end of file | ||
diff --git a/v4.0/src/CMD/GRAFTABL/MAKEFILE b/v4.0/src/CMD/GRAFTABL/MAKEFILE new file mode 100644 index 0000000..5fa792b --- /dev/null +++ b/v4.0/src/CMD/GRAFTABL/MAKEFILE | |||
| @@ -0,0 +1,74 @@ | |||
| 1 | #************************** makefile for cmd\... *************************** | ||
| 2 | |||
| 3 | msg =..\..\messages | ||
| 4 | dos =..\..\dos | ||
| 5 | inc =..\..\inc | ||
| 6 | hinc =..\..\h | ||
| 7 | |||
| 8 | # | ||
| 9 | ####################### dependencies begin here. ######################### | ||
| 10 | # | ||
| 11 | |||
| 12 | all: graftabl.com | ||
| 13 | |||
| 14 | graftabl.ctl: graftabl.skl \ | ||
| 15 | $(msg)\$(COUNTRY).msg \ | ||
| 16 | makefile | ||
| 17 | |||
| 18 | grtab.obj: grtab.asm \ | ||
| 19 | makefile | ||
| 20 | |||
| 21 | grtabp.obj: grtabp.asm \ | ||
| 22 | makefile \ | ||
| 23 | $(inc)\psdata.inc \ | ||
| 24 | $(inc)\parse.asm | ||
| 25 | |||
| 26 | grtabsm.obj: grtabsm.asm \ | ||
| 27 | makefile \ | ||
| 28 | $(inc)\copyrigh.inc \ | ||
| 29 | $(inc)\versiona.inc \ | ||
| 30 | $(inc)\sysmsg.inc \ | ||
| 31 | $(inc)\msgserv.asm \ | ||
| 32 | graftabl.ctl \ | ||
| 33 | graftabl.cl1 \ | ||
| 34 | graftabl.cl2 \ | ||
| 35 | graftabl.cla \ | ||
| 36 | $(inc)\msghan.inc \ | ||
| 37 | grtabms.inc | ||
| 38 | |||
| 39 | grtabpar.obj: grtabpar.asm \ | ||
| 40 | makefile | ||
| 41 | |||
| 42 | grtabhan.obj: grtabhan.asm \ | ||
| 43 | makefile | ||
| 44 | |||
| 45 | grtabus.obj: grtabus.asm \ | ||
| 46 | makefile | ||
| 47 | |||
| 48 | grtabno.obj: grtabno.asm \ | ||
| 49 | makefile | ||
| 50 | |||
| 51 | grtabpo.obj: grtabpo.asm \ | ||
| 52 | makefile | ||
| 53 | |||
| 54 | grtabcf.obj: grtabcf.asm \ | ||
| 55 | makefile | ||
| 56 | |||
| 57 | grtabml.obj: grtabml.asm \ | ||
| 58 | makefile | ||
| 59 | |||
| 60 | graftabl.com: grtab.obj \ | ||
| 61 | makefile \ | ||
| 62 | graftabl.lnk \ | ||
| 63 | grtabp.obj \ | ||
| 64 | grtabsm.obj \ | ||
| 65 | grtabpar.obj \ | ||
| 66 | grtabhan.obj \ | ||
| 67 | grtabus.obj \ | ||
| 68 | grtabno.obj \ | ||
| 69 | grtabpo.obj \ | ||
| 70 | grtabcf.obj \ | ||
| 71 | grtabml.obj | ||
| 72 | link @graftabl.lnk | ||
| 73 | exe2bin graftabl.exe graftabl.com | ||
| 74 | del graftabl.exe | ||