Microsoft COBOL v5.0
This commit is contained in:
parent
2c74a13660
commit
fa06c81ad2
BIN
Microsoft Cobol v5/BIN/ADISCF.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/ADISCF.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ADISCF.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/ADISCF.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ADISCTRL
Normal file
BIN
Microsoft Cobol v5/BIN/ADISCTRL
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ANIMATE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/ANIMATE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ANIMATOR.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/ANIMATOR.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ANIMBASE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/ANIMBASE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ANIMBASE.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/ANIMBASE.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ANIMRTNS.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/ANIMRTNS.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ANIMUSER.DLE
Normal file
BIN
Microsoft Cobol v5/BIN/ANIMUSER.DLE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ANIMUSER.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/ANIMUSER.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ATRM1111.FNT
Normal file
BIN
Microsoft Cobol v5/BIN/ATRM1111.FNT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/BSCMAKE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/BSCMAKE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/BSCMAKEV.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/BSCMAKEV.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/CCIIPX.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/CCIIPX.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/CCIIPX2.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/CCIIPX2.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/CCINETB.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/CCINETB.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/CHECK.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/CHECK.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/COBCLI.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/COBCLI.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/COBFP87.DLE
Normal file
BIN
Microsoft Cobol v5/BIN/COBFP87.DLE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/COBLIB.DLE
Normal file
BIN
Microsoft Cobol v5/BIN/COBLIB.DLE
Normal file
Binary file not shown.
78
Microsoft Cobol v5/BIN/COBNLS.ERR
Normal file
78
Microsoft Cobol v5/BIN/COBNLS.ERR
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
$ ***********************************************************************
|
||||||
|
$ * *
|
||||||
|
$ * Example NLS message file *
|
||||||
|
$ * *
|
||||||
|
$ * Format as described in XPG4 *
|
||||||
|
$ * (C printf with %1$s %2$s ordering extension) *
|
||||||
|
$ * *
|
||||||
|
$ * DOS/OS2 RTS restricts insertion to %c (single character) and *
|
||||||
|
$ * %s (character string), for the moment *
|
||||||
|
$ * (may consider adding %d %x etc later if necessary) *
|
||||||
|
$ * *
|
||||||
|
$ ***********************************************************************
|
||||||
|
$
|
||||||
|
$ lines beginning with a dollar followed by a space are treated as comment lines
|
||||||
|
$
|
||||||
|
$ message set 101 = RTS message set
|
||||||
|
$set 101 : RTS messages
|
||||||
|
$
|
||||||
|
$ define " as quote character
|
||||||
|
$quote "
|
||||||
|
$
|
||||||
|
$ The following control characters can be embedded in the message
|
||||||
|
$
|
||||||
|
$ \ continue to next line
|
||||||
|
$ \n newline
|
||||||
|
$ \t tab
|
||||||
|
$ \r carriage return
|
||||||
|
$ \\ backslash
|
||||||
|
$ \ddd bit pattern
|
||||||
|
$
|
||||||
|
$
|
||||||
|
$ lines describing a message should begin with the message number, then a space,
|
||||||
|
$ and then the text of the message itself in quotes
|
||||||
|
$
|
||||||
|
$ message number 01 : description prefix
|
||||||
|
1 "Description : "
|
||||||
|
$ message number 02 : dongle not present message
|
||||||
|
2 "Security Key not installed"
|
||||||
|
$ message number 03 : file error message
|
||||||
|
3 "Error accessing file : "
|
||||||
|
$ message number 04 : +K4 press any key message
|
||||||
|
4 "Press any key to continue..."
|
||||||
|
$ message number 05 : OS/2 RTE already kept message
|
||||||
|
5 "RTE already kept"
|
||||||
|
$ message number 06 : OS/2 kept RTE not found message
|
||||||
|
6 "Kept RTE not found"
|
||||||
|
$ message number 07 : DOS unkeep message
|
||||||
|
7 "Please use 'UNKEEP.COM' for now"
|
||||||
|
$ message number 08 : sleep message
|
||||||
|
8 "Type "EXIT" to resume COBOL"
|
||||||
|
$ message number 09 : stopping message
|
||||||
|
9 "User terminated run"
|
||||||
|
$
|
||||||
|
$
|
||||||
|
$ message broken in one place -
|
||||||
|
$ use a %s to indicate where text should be inserted
|
||||||
|
$ message number 10 : load failure message
|
||||||
|
10 "Load failure (%s) on file "
|
||||||
|
$
|
||||||
|
$ message broken in two places - uses %1$s ordering extension
|
||||||
|
$ message number 11 : library prompt message - must be less than 81 chars
|
||||||
|
11 "Please put disk containing %1$s in drive %2$c and press <cr> (Esc to cancel)"
|
||||||
|
$
|
||||||
|
$ messages broken in three places - similar to the above
|
||||||
|
$ message number 12 : final error message
|
||||||
|
12 " Segment %1$s : Error %2$s at COBOL PC %3$s"
|
||||||
|
$ message number 13 : multi-reel file prompt message
|
||||||
|
13 "PLEASE LOAD VOLUME %1$s OF FILE %2$s FOR %3$s \
|
||||||
|
\r\nENTER NEW DEVICE (IF REQUIRED) AND <CR> WHEN READY\r\n"
|
||||||
|
$
|
||||||
|
$ interactive messages - must be less than 80 chars
|
||||||
|
$ message number 14 : DOS only - printer not available - Cancel, Retry, Ignore
|
||||||
|
14 "Printer not available - 1=Cancel, 2=Retry or 3=Ignore ?"
|
||||||
|
$ message number 15 : DOS only - Disk error on drive * - Abort etc
|
||||||
|
15 "Disk error on drive %c: - 1=Fail, 2=Stop, 3=Break, 4=Retry or 5=Ignore ?"
|
||||||
|
$
|
||||||
|
$ message number 16 : failed codepage switch
|
||||||
|
16 "The attempt to switch to codepage %s failed. Continuing .."
|
BIN
Microsoft Cobol v5/BIN/COBOL.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/COBOL.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/CV.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/CV.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/CVPACK.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/CVPACK.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/CVPACKR.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/CVPACKR.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/DLGEDIT.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/DLGEDIT.EXE
Normal file
Binary file not shown.
58
Microsoft Cobol v5/BIN/E.CBL
Normal file
58
Microsoft Cobol v5/BIN/E.CBL
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
IDENTIFICATION DIVISION.
|
||||||
|
PROGRAM-ID. E.
|
||||||
|
* REMARKS. generate digits of e
|
||||||
|
ENVIRONMENT DIVISION.
|
||||||
|
CONFIGURATION SECTION.
|
||||||
|
DATA DIVISION.
|
||||||
|
WORKING-STORAGE SECTION.
|
||||||
|
01 ARRAYS.
|
||||||
|
02 A PIC 9(04) COMP OCCURS 200 TIMES.
|
||||||
|
01 X PIC 9(04) COMP VALUE 0.
|
||||||
|
01 TMOD PIC 9(04) COMP VALUE 0.
|
||||||
|
01 TM PIC 9(04) COMP VALUE 0.
|
||||||
|
01 TD PIC 9(04) COMP VALUE 0.
|
||||||
|
01 N PIC 9(04) COMP VALUE 0.
|
||||||
|
01 HV PIC 9(04) COMP VALUE 0.
|
||||||
|
01 NUM-DISP PIC 9999.
|
||||||
|
|
||||||
|
PROCEDURE DIVISION.
|
||||||
|
MAIN.
|
||||||
|
DISPLAY 'computing e'.
|
||||||
|
PERFORM INITA-ROUTINE.
|
||||||
|
PERFORM INITA-ROUTINE-B.
|
||||||
|
PERFORM INITA-ROUTINE-C.
|
||||||
|
PERFORM OUTER-LOOP.
|
||||||
|
STOP RUN.
|
||||||
|
|
||||||
|
INITA-ROUTINE.
|
||||||
|
MOVE 200 TO HV.
|
||||||
|
MOVE 0 TO X.
|
||||||
|
MOVE 199 TO N.
|
||||||
|
|
||||||
|
INITA-ROUTINE-B.
|
||||||
|
MOVE 1 TO A( N + 1 ).
|
||||||
|
SUBTRACT 1 FROM N.
|
||||||
|
IF N > 0 GO TO INITA-ROUTINE-B.
|
||||||
|
|
||||||
|
INITA-ROUTINE-C.
|
||||||
|
MOVE 2 TO A( 2 ).
|
||||||
|
MOVE 0 TO A( 1 ).
|
||||||
|
|
||||||
|
OUTER-LOOP.
|
||||||
|
SUBTRACT 1 FROM HV.
|
||||||
|
MOVE HV TO N.
|
||||||
|
PERFORM INNER-LOOP.
|
||||||
|
IF HV > 9 GO TO OUTER-LOOP.
|
||||||
|
|
||||||
|
INNER-LOOP.
|
||||||
|
DIVIDE X BY N GIVING TD.
|
||||||
|
COMPUTE TMOD = ( X - ( TD * N ) )
|
||||||
|
IF 0 = X MOVE 0 TO TMOD.
|
||||||
|
MOVE TMOD TO A( N + 1 ).
|
||||||
|
MULTIPLY 10 BY A( N ) GIVING TM.
|
||||||
|
COMPUTE X = TM + TD.
|
||||||
|
SUBTRACT 1 FROM N.
|
||||||
|
IF N > 0 GO TO INNER-LOOP.
|
||||||
|
MOVE X TO NUM-DISP.
|
||||||
|
DISPLAY NUM-DISP.
|
||||||
|
|
BIN
Microsoft Cobol v5/BIN/EED1CAN.DLL
Normal file
BIN
Microsoft Cobol v5/BIN/EED1CAN.DLL
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/EED1COB.DLL
Normal file
BIN
Microsoft Cobol v5/BIN/EED1COB.DLL
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/EMD1D1.DLL
Normal file
BIN
Microsoft Cobol v5/BIN/EMD1D1.DLL
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/EXEHDR.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/EXEHDR.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/EXP.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/EXP.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/FONTEDIT.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/FONTEDIT.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/GENATT.DLE
Normal file
BIN
Microsoft Cobol v5/BIN/GENATT.DLE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/GENERATE.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/GENERATE.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/H2CPY.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/H2CPY.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/HELP.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/HELP.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/HELPADCF.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/HELPADCF.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/HELPMAKE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/HELPMAKE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/HELPNAME.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/HELPNAME.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/HIMEM.SYS
Normal file
BIN
Microsoft Cobol v5/BIN/HIMEM.SYS
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/HYHELP.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/HYHELP.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/ILINK.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/ILINK.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/IMAGEDIT.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/IMAGEDIT.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/IMPLIB.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/IMPLIB.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/KEYBCF.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/KEYBCF.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/LIB.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/LIB.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/LRFMERGE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/LRFMERGE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/MCV5LINK.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/MCV5LINK.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/MFEXTMAP.DLE
Normal file
BIN
Microsoft Cobol v5/BIN/MFEXTMAP.DLE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/MOUSE.COM
Normal file
BIN
Microsoft Cobol v5/BIN/MOUSE.COM
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/MSD.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/MSD.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/MSHIF.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/MSHIF.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/NAME.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/NAME.LBR
Normal file
Binary file not shown.
11
Microsoft Cobol v5/BIN/NEW-VARS.BAT
Normal file
11
Microsoft Cobol v5/BIN/NEW-VARS.BAT
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
REM The following lines should be placed in a DOS CONFIG.SYS
|
||||||
|
REM FILES=100
|
||||||
|
REM BUFFERS=10
|
||||||
|
REM
|
||||||
|
REM The following lines should be placed in AUTOEXEC.BAT
|
||||||
|
PATH=C:\COBOL\BIN;%PATH%
|
||||||
|
SET COBDIR=C:\COBOL\BIN
|
||||||
|
SET LIB=C:\COBOL\LIB;%LIB%
|
||||||
|
SET INCLUDE=C:\COBOL\SOURCE;%INCLUDE%
|
||||||
|
SET HELPFILES=C:\COBOL\HELP;%HELPFILES%
|
||||||
|
SET INIT=C:\COBOL\INIT;%INIT%
|
BIN
Microsoft Cobol v5/BIN/NMAKE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/NMAKE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PKUNZIP.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/PKUNZIP.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWB.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/PWB.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWB.ICO
Normal file
BIN
Microsoft Cobol v5/BIN/PWB.ICO
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
BIN
Microsoft Cobol v5/BIN/PWB.PIF
Normal file
BIN
Microsoft Cobol v5/BIN/PWB.PIF
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBBASIC.XXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBBASIC.XXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBC.XXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBC.XXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBCOBOL.MXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBCOBOL.MXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBFORT.XXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBFORT.XXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBHELP.MXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBHELP.MXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBMASM.XXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBMASM.XXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBRMAKE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/PWBRMAKE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBROWSE.MXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBROWSE.MXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/PWBUTILS.MXT
Normal file
BIN
Microsoft Cobol v5/BIN/PWBUTILS.MXT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/QH.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/QH.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/QH.ICO
Normal file
BIN
Microsoft Cobol v5/BIN/QH.ICO
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
BIN
Microsoft Cobol v5/BIN/REBUILD.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/REBUILD.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/RM.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/RM.EXE
Normal file
Binary file not shown.
650
Microsoft Cobol v5/BIN/SAMPLE.INI
Normal file
650
Microsoft Cobol v5/BIN/SAMPLE.INI
Normal file
@ -0,0 +1,650 @@
|
|||||||
|
; Sample TOOLS.INI file for:
|
||||||
|
;
|
||||||
|
; Microsoft Programmer's WorkBench Version 2.00
|
||||||
|
; Copyright (c), 1989-1992 Microsoft Corp.
|
||||||
|
;
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
; To use the macros or settings in this file, copy or merge this file
|
||||||
|
; with your TOOLS.INI file.
|
||||||
|
;
|
||||||
|
; Once in TOOLS.INI, the macros and editor settings in this file can
|
||||||
|
; be defined by initializing the appropriate tagged section. A tagged
|
||||||
|
; section for PWB begins with a tag, which has the form:
|
||||||
|
;
|
||||||
|
; [PWB-name]
|
||||||
|
;
|
||||||
|
; Where <name> is the name of the tagged section.
|
||||||
|
;
|
||||||
|
; To initialize a named section of TOOLS.INI, execute Arg <name>
|
||||||
|
; Initialize, as follows:
|
||||||
|
;
|
||||||
|
; 1. Execute the Arg function (press ALT+A).
|
||||||
|
; 2. Type the name of the tagged section.
|
||||||
|
; 3. Execute the Initialize function (press SHIFT+F8).
|
||||||
|
;
|
||||||
|
; If you want certain settings to be your default settings, copy the
|
||||||
|
; contents of that section to the main PWB section.
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
; Contents
|
||||||
|
;
|
||||||
|
; Tag Description
|
||||||
|
; -------------- -----------------------------------------------
|
||||||
|
; [pwb pwb-main] Main PWB section
|
||||||
|
; [pwb-4.0] Settings for MS-DOS 4.0 and 4.1
|
||||||
|
; [pwb-5.0] Settings for MS-DOS 5.0
|
||||||
|
; [pwb-..] Default file-extension settings
|
||||||
|
; [pwb-.bak] Settings for .BAK files
|
||||||
|
; [pwb-utility] Miscellaneous utility macros
|
||||||
|
; [pwb-emulations] Selected editor emulations
|
||||||
|
; [pwb-visible] Settings for visisble whitespace characters
|
||||||
|
; [pwb-invisible] Settings for invisisble whitespace characters
|
||||||
|
; [pwb-wptab] Settings for word-processor-like tab handling
|
||||||
|
; [pwb-notab] Settings for no tab characters
|
||||||
|
; [pwb-CTPL] C templates
|
||||||
|
; [pwb-ckeys] Key assignments for C templates
|
||||||
|
; [pwb-samples] Sample macros from Help
|
||||||
|
; [pwb-tutor] Sample macros from the PWB tutorial
|
||||||
|
; [pwb-abbr] Abbreviation facility
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
; Note - Some macros in this file assume certain conditions.
|
||||||
|
;
|
||||||
|
; All macros in this file that use regular expressions assume that the
|
||||||
|
; Unixre switch is set to yes, the default value for Unixre.
|
||||||
|
;
|
||||||
|
; Many macros assume that the current selection mode is stream or box
|
||||||
|
; mode. These macros may not work correctly in line selection mode.
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb pwb-main]
|
||||||
|
; Main section of TOOLS.INI
|
||||||
|
;
|
||||||
|
; Only this section, operating-system-specific, and file extension
|
||||||
|
; sections are initialized at startup. For more information on these
|
||||||
|
; sections, see the PWB Help under TOOLS.INI.
|
||||||
|
|
||||||
|
; Autostart is executed automatically at startup.
|
||||||
|
Autostart :=
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
; Sample operating system tagged sections
|
||||||
|
|
||||||
|
[pwb-4.0]
|
||||||
|
; Settings when running on MS-DOS version 4.0 or 4.1
|
||||||
|
|
||||||
|
[pwb-5.0]
|
||||||
|
; Settings when running on MS-DOS version 5.0
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
; Sample file extension tagged sections
|
||||||
|
|
||||||
|
[pwb-..]
|
||||||
|
; Default settings for any file extension that is not otherwise
|
||||||
|
; defined.
|
||||||
|
|
||||||
|
color:text 17
|
||||||
|
|
||||||
|
[pwb-.bak]
|
||||||
|
; It's easy to open a .BAK file by mistake, so this section defines
|
||||||
|
; the text color to something noticeable.
|
||||||
|
|
||||||
|
color:text 4e
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-utility]
|
||||||
|
; Utility macros
|
||||||
|
|
||||||
|
; Window and file management
|
||||||
|
|
||||||
|
; Close all files in the active window except the current file.
|
||||||
|
; When multiple files have been opened in a single window, this
|
||||||
|
; macro removes the extra files.
|
||||||
|
AllBut1File := cancel :>s setfile -> closefile < =>s
|
||||||
|
|
||||||
|
; Close all windows except for the active window.
|
||||||
|
AllBut1Window:= cancel :>s openfile -> meta window < =>s
|
||||||
|
|
||||||
|
; Minimize all windows.
|
||||||
|
MinimizeAll := cancel arg minimize
|
||||||
|
|
||||||
|
; Restore all windows.
|
||||||
|
RestoreAll := cancel arg minimize :>s selwindow minimize ->s \
|
||||||
|
selwindow minimize
|
||||||
|
|
||||||
|
; Change directory to directory of current file.
|
||||||
|
; Requires an editable file.
|
||||||
|
ccd := linsert curfile arg curfilenam msearch arg meta ldelete \
|
||||||
|
begline arg right right setfile begline arg setfile undo
|
||||||
|
|
||||||
|
; Change directory to directory of current file.
|
||||||
|
; Requires an editable file.
|
||||||
|
; This version is slower, but does not change the current search
|
||||||
|
; pattern.
|
||||||
|
ccd2 := linsert curfile savecur curfilenam curfileext restcur \
|
||||||
|
:>s delete cdelete left right +>s \
|
||||||
|
begline arg right right setfile begline arg setfile undo
|
||||||
|
|
||||||
|
|
||||||
|
; Synchronized error traversal: Build Results, source, and Help.
|
||||||
|
;
|
||||||
|
; Traverses messages in the build results, showing the message, the
|
||||||
|
; location of the message in the source file, and help for the message
|
||||||
|
; in arranged windows.
|
||||||
|
;
|
||||||
|
;psync - Synchronize to next message
|
||||||
|
;msync - Synchronize to previous message
|
||||||
|
;setsync- Synchronize to message at the cursor in Build Results.
|
||||||
|
|
||||||
|
syncmsg := nextmsg -> pwbhelperr openfile arg arrangewindow
|
||||||
|
|
||||||
|
psync := cancel syncmsg
|
||||||
|
msync := cancel arg "-1" syncmsg
|
||||||
|
setsync := cancel arg "<COMPILE>" pwbwindow arg arg syncmsg
|
||||||
|
|
||||||
|
psync :Alt+Down
|
||||||
|
msync :Alt+Up
|
||||||
|
setsync :Alt+Goto
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-emulations]
|
||||||
|
; These macros approximate selected behaviors of other editors.
|
||||||
|
|
||||||
|
; Successively go to beginning of line, top left window corner,
|
||||||
|
; beginning of file.
|
||||||
|
BRIEFHome := begline +> home +> begfile
|
||||||
|
|
||||||
|
; Successively go to end of line, end of last line in the window,
|
||||||
|
; end of file.
|
||||||
|
BRIEFEnd := endline +> meta down endline +> endfile
|
||||||
|
|
||||||
|
; Emulate an emacs-style character delete. When at the end of a line,
|
||||||
|
; delete the line break. Otherwise delete the character at the cursor.
|
||||||
|
; Note that this macro includes the line break when deleting the last
|
||||||
|
; character on a line.
|
||||||
|
|
||||||
|
EmacsDel := delete "-" left right ->eol emacscdel => :>eol left \
|
||||||
|
arg meta sdelete
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-visible]
|
||||||
|
; Settings to make tabs, trailing spaces, and trailing lines visible.
|
||||||
|
|
||||||
|
tabdisp :250
|
||||||
|
traildisp :177
|
||||||
|
traillinesdisp:7
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-invisible]
|
||||||
|
; Settings to make tabs, trailing spaces, and trailing lines invisible.
|
||||||
|
|
||||||
|
tabdisp :32
|
||||||
|
traildisp :32
|
||||||
|
traillinesdisp:32
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-wptab]
|
||||||
|
; Word-processor-like settings.
|
||||||
|
; Because tab characters and trailing spaces are allowed, the visible
|
||||||
|
; whitespace settings above are recommended.
|
||||||
|
|
||||||
|
; You can change tabstops and filetab to your preference, but should
|
||||||
|
; have the same value for proper emulation.
|
||||||
|
tabstops :8
|
||||||
|
filetab :8
|
||||||
|
|
||||||
|
realtabs :yes
|
||||||
|
tabalign :yes
|
||||||
|
entab :0
|
||||||
|
trailspace:yes
|
||||||
|
|
||||||
|
; Insert a tab character in insert mode.
|
||||||
|
; Move the cursor right one tab stop in overtype mode.
|
||||||
|
tabio := insertmode +>over insertmode "\t" => \
|
||||||
|
:>over insertmode tab
|
||||||
|
tabio : Tab
|
||||||
|
|
||||||
|
; Move right one tab stop in both insert mode and overtype mode.
|
||||||
|
; To insert a tab in all modes, use Quote TAB (CTRL+P, TAB)
|
||||||
|
tab :ctrl+tab
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-notab]
|
||||||
|
; Settings so that no new tab characters are added to the file.
|
||||||
|
;
|
||||||
|
|
||||||
|
Filetab :8 ;Tabs expand to 8 spaces
|
||||||
|
Realtabs:no ;Do not preserve tabs
|
||||||
|
Entab :0 ;Translate whitespace to spaces
|
||||||
|
|
||||||
|
; Note that tab characters on unmodified lines are preserved.
|
||||||
|
;
|
||||||
|
; To strip all tabs from the file, execute the TouchAll macro with
|
||||||
|
; these settings. To also strip trailing spaces, uncomment the next
|
||||||
|
; line.
|
||||||
|
;trailspace:no
|
||||||
|
|
||||||
|
; TouchAll - Modify all nonblank lines
|
||||||
|
TouchAll:= savecur \
|
||||||
|
begfile arg arg replace "^." newline "\\0" newline restcur
|
||||||
|
TouchAll:Alt+D ;Press Alt+D to touch all nonempty lines in the file
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-CTPL]
|
||||||
|
; C template macro set for Microsoft Programmer's WorkBench
|
||||||
|
; Copyright (c), 1989-1992 Microsoft Corp.
|
||||||
|
;
|
||||||
|
; CTPL is a useful example of an extended system of macros to
|
||||||
|
; customize the PWB. You can change this set to implement your own C
|
||||||
|
; programming style.
|
||||||
|
;
|
||||||
|
; To install CTPL, add this section to your TOOLS.INI. When you want
|
||||||
|
; to activate the macros, type:
|
||||||
|
;
|
||||||
|
; Arg "ctpl" Initialize
|
||||||
|
;
|
||||||
|
; Or define the following macro in the main section of TOOLS.INI:
|
||||||
|
;
|
||||||
|
; CTPL:=arg "Ctpl" initialize
|
||||||
|
; CTPL:Alt+F10
|
||||||
|
;
|
||||||
|
; and press ALT+F10 to initialize the C templates.
|
||||||
|
;
|
||||||
|
; Most templates are activated by typing a C keyword and executing the
|
||||||
|
; DoTpl macro (Alt+T). Templates usually insert some text, then select
|
||||||
|
; an active area--a "tag".
|
||||||
|
;
|
||||||
|
; To fill out a tag, type the replacement text.
|
||||||
|
;
|
||||||
|
; To skip the tag, execute Cancel (Press ESC).
|
||||||
|
;
|
||||||
|
; To move back and forth among tags use the Mrec (ALT+PGUP) and Prec
|
||||||
|
; (ALT+PGDN) macros.
|
||||||
|
;
|
||||||
|
; Since tags are C comments, you can compile code with incompletely
|
||||||
|
; filled-in templates.
|
||||||
|
;
|
||||||
|
; For templates that do not have a keyword--a function or prototype,
|
||||||
|
; for example--CTPL defines a key assignment. This command structure
|
||||||
|
; minimizes the number of key bindings necessary to support the CTPL
|
||||||
|
; macro set.
|
||||||
|
;
|
||||||
|
; For example, the switch template uses the macro AddCase (ALT+F9) to
|
||||||
|
; insert a case just before the default case provided by the switch
|
||||||
|
; template.
|
||||||
|
;
|
||||||
|
; HINT: Sometimes you don't want the semicolon that CTPL often places
|
||||||
|
; after a tag. In these situations press RIGHT to extend the selection
|
||||||
|
; to include the semicolon as well as the tag, and it is replaced by
|
||||||
|
; what you type.
|
||||||
|
;
|
||||||
|
; NOTE: CTPL macros assume that the current selection mode is box or
|
||||||
|
; stream mode. If this becomes troublesome for you, use the mode-safe
|
||||||
|
; versions of the SelTag and DoTpl macros. The CTPL macros also work
|
||||||
|
; correctly in stream-selection mode. If you prefer stream selection,
|
||||||
|
; change the mode-safe versions to use the _pwbstreammode macro.
|
||||||
|
;
|
||||||
|
; NOTE: Because PWB rereads a file-extension tagged section each time
|
||||||
|
; you move to the file, It is not recommend to rename the CTPL section
|
||||||
|
; as [pwb-.C]. This works, but slows down switching to .C files.
|
||||||
|
|
||||||
|
|
||||||
|
; Select word
|
||||||
|
selword :=pword ->eof mword arg meta pword => \
|
||||||
|
:>eof mword pword arg meta pword
|
||||||
|
|
||||||
|
;-- The core macro for CTPL
|
||||||
|
; select the current word and execute it
|
||||||
|
DoTpl :=selword execute
|
||||||
|
|
||||||
|
; selection-mode safe DoTpl
|
||||||
|
;DoTpl :=_pwbboxmode selword execute
|
||||||
|
|
||||||
|
;-- simple 'pairs'
|
||||||
|
parens :="()" left
|
||||||
|
subscript :="[]" left
|
||||||
|
angles :="<>" left
|
||||||
|
quotes :="\"\"" left
|
||||||
|
|
||||||
|
;-- messages
|
||||||
|
notag :=arg "No more tags" message
|
||||||
|
nobrace :=arg "Missing right brace" message
|
||||||
|
nodefault :=arg "No \"default:\" found" message
|
||||||
|
|
||||||
|
;-- tag & utilities
|
||||||
|
tag :="/*%*/"
|
||||||
|
stmt :="/*%*/;"
|
||||||
|
|
||||||
|
seltag :=arg right right right right right
|
||||||
|
; selection-mode safe seltag
|
||||||
|
;seltag :=_pwbboxmode arg right right right right right
|
||||||
|
|
||||||
|
; Tag movement - Move to and select the position to be filled in.
|
||||||
|
;mrec - Move to and select previous tag
|
||||||
|
;prec - Move to and select next tag
|
||||||
|
mrec :=cancel left arg tag msearch ->f seltag => :>f notag
|
||||||
|
prec :=cancel right arg tag psearch ->f seltag => :>f notag
|
||||||
|
|
||||||
|
;-- Utilities -- redefine to change indentation styles
|
||||||
|
;test - condition in parentheses
|
||||||
|
;plist - parameter list
|
||||||
|
;testbreak - type of break (if any) after a test
|
||||||
|
test :="( " tag " )"
|
||||||
|
plist :="( " tag " )"
|
||||||
|
testbreak :=addline
|
||||||
|
|
||||||
|
;-- utilities for adding components of C constructs
|
||||||
|
;
|
||||||
|
;addline - Add a line, with same indentation as this line
|
||||||
|
;addstmt - Add a statement after this line
|
||||||
|
;addstmti - Add an indented statement after this line
|
||||||
|
;block - Add a statement block after this line
|
||||||
|
;
|
||||||
|
addline :=cancel begline down linsert
|
||||||
|
addstmt :=addline tag mrec
|
||||||
|
addstmti :=addline tab tag mrec
|
||||||
|
block :="{" addline "}" begline linsert tab tag down endline
|
||||||
|
|
||||||
|
;-- function, prototype and utilities
|
||||||
|
;
|
||||||
|
;func - Parameter list and body
|
||||||
|
;proto - Semicolon-terminated parameter list
|
||||||
|
;main - Alias of func
|
||||||
|
;additem - Add item to the current parameter list or 'for' control
|
||||||
|
;
|
||||||
|
func :=endline savecur plist addline block restcur prec
|
||||||
|
proto :=endline plist ";" mrec
|
||||||
|
main :=func
|
||||||
|
additem :=cancel left arg arg "[;:)}]" psearch -> \
|
||||||
|
arg arg "[^ \t]" msearch right ", " tag right mrec
|
||||||
|
|
||||||
|
;printf, fprintf, sprintf - Handy templates
|
||||||
|
;
|
||||||
|
printf :=proto quotes tag "\\n" mrec
|
||||||
|
fprintf :=proto "std" tag ", " quotes tag "\\n" begline prec
|
||||||
|
sprintf :=proto tag ", " tag ", " tag mrec mrec quotes tag \
|
||||||
|
endline mrec mrec
|
||||||
|
|
||||||
|
;-- conditional constructs
|
||||||
|
;
|
||||||
|
;if - Add a condition and statement block
|
||||||
|
;else - You usually use addelse, but this is still useful
|
||||||
|
;addelse - Add an else clause to the current if statement
|
||||||
|
;addelif - Add an else-if clause to the current if statement
|
||||||
|
;while - While loop
|
||||||
|
;for - For loop template. Use additem for comma-op items
|
||||||
|
;do - Do loop template
|
||||||
|
;queryop - "() ? : " template for the ternary operator
|
||||||
|
;
|
||||||
|
if :=endline savecur test testbreak block restcur prec
|
||||||
|
else :=testbreak block mrec
|
||||||
|
addelse :=cancel arg "}" psearch ->f testbreak "else" else => :>f nobrace
|
||||||
|
addelif :=cancel arg "}" psearch ->f testbreak "else if" if => :>f nobrace
|
||||||
|
while :=if
|
||||||
|
for :=if stmt " " stmt " " tag begline prec
|
||||||
|
do :=testbreak block " while" test endline ";" mrec
|
||||||
|
queryop :=savecur test " ? " tag " : " tag restcur prec
|
||||||
|
|
||||||
|
_asm :=testbreak block mrec
|
||||||
|
|
||||||
|
;-- declarations
|
||||||
|
;
|
||||||
|
enum :=endline " " tag " { " tag " } " stmt begline prec
|
||||||
|
typedef :=endline " " tag " " stmt begline prec
|
||||||
|
struct :=endline savecur " " tag testbreak block " " stmt restcur prec
|
||||||
|
class :=struct
|
||||||
|
|
||||||
|
;-- switch statement and components
|
||||||
|
; Use add-case to build the cases of the switch.
|
||||||
|
; Use addbreak to terminate a statement section.
|
||||||
|
;
|
||||||
|
;case - Colon-terminated placeholder
|
||||||
|
;addbreak - Insert a break statement after the current statement
|
||||||
|
;addcase - Insert case just before the next or default case
|
||||||
|
;switch - Condition, block, and default case.
|
||||||
|
;swiback - By default case labels appear at the same indentation level
|
||||||
|
; as the opening 'case' For indented case labels, define it
|
||||||
|
; as 'swiback:='
|
||||||
|
swiback :=backtab
|
||||||
|
case :=endline " " tag ":" mrec
|
||||||
|
addbreak:=addstmt "break;" begline
|
||||||
|
addcase :=cancel arg arg "\\{default:\\!case\\}" psearch ->f \
|
||||||
|
linsert "case" case => :>f nodefault
|
||||||
|
switch :=endline test testbreak block mrec right meta delete swiback \
|
||||||
|
"default:" addstmti "break" mrec
|
||||||
|
|
||||||
|
;-- preprocessor utilities
|
||||||
|
;inc - #include <x>
|
||||||
|
;def - #define x x
|
||||||
|
;pragma - #pragma x( x )
|
||||||
|
inc :=begline "#" endline "lude <>" left
|
||||||
|
def :=begline "#" endline "ine " tag " " tag begline prec
|
||||||
|
pragma:=begline "#" endline " " tag plist begline prec
|
||||||
|
|
||||||
|
; The OpenInclude macro opens an include file named in the next
|
||||||
|
; #include directive. The macro demonstrates a technique using the
|
||||||
|
; Lasttext function to pick up text from the file and modify it
|
||||||
|
; without modifying the file or the clipboard.
|
||||||
|
OpenInclude := \
|
||||||
|
up meta begline arg arg "^[ \t]*#[ \t]*include" psearch -> \
|
||||||
|
arg arg "[<>\"]" psearch -> right savecur psearch -> \
|
||||||
|
selcur lasttext begline "$INCLUDE:" openfile <n +> \
|
||||||
|
lastselect openfile <
|
||||||
|
|
||||||
|
; Key Assignments
|
||||||
|
mrec :Alt+PgUp
|
||||||
|
prec :Alt+PgDn
|
||||||
|
addcase :Alt+F9
|
||||||
|
addbreak :Alt+F10
|
||||||
|
addelse :Shift+Ctrl+E
|
||||||
|
addelif :Shift+Ctrl+I
|
||||||
|
additem :Alt+,
|
||||||
|
queryop :Alt+/
|
||||||
|
parens :Ctrl+0
|
||||||
|
subscript :Alt+]
|
||||||
|
quotes :alt+'
|
||||||
|
angles :Alt+>
|
||||||
|
addstmt :Ctrl+;
|
||||||
|
addstmti :Shift+Ctrl+:
|
||||||
|
proto :Shift+Ctrl+P
|
||||||
|
func :Shift+Ctrl+F
|
||||||
|
dotpl :Alt+T
|
||||||
|
|
||||||
|
;-------------------
|
||||||
|
[pwb-ckeys]
|
||||||
|
; Initialize this section if you've switched to another type of file
|
||||||
|
; and need to recover your CTPL keys.
|
||||||
|
mrec :=cancel left arg tag msearch ->f seltag => :>f notag
|
||||||
|
prec :=cancel right arg tag psearch ->f seltag => :>f notag
|
||||||
|
mrec :Alt+PgUp
|
||||||
|
prec :Alt+PgDn
|
||||||
|
addcase :Alt+F9
|
||||||
|
addbreak :Alt+F10
|
||||||
|
addelse :Shift+Ctrl+E
|
||||||
|
addelif :Shift+Ctrl+I
|
||||||
|
additem :Alt+,
|
||||||
|
queryop :Alt+/
|
||||||
|
parens :Ctrl+0
|
||||||
|
subscript :Alt+]
|
||||||
|
quotes :alt+'
|
||||||
|
angles :Alt+>
|
||||||
|
addstmt :Ctrl+;
|
||||||
|
addstmti :Shift+Ctrl+:
|
||||||
|
proto :Shift+Ctrl+P
|
||||||
|
func :Shift+Ctrl+F
|
||||||
|
dotpl :Alt+T
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-samples]
|
||||||
|
; This section contains example macros from help.
|
||||||
|
;
|
||||||
|
|
||||||
|
; Run the program for current PWB project
|
||||||
|
Run :=arg "run" compile
|
||||||
|
|
||||||
|
; Debug the program for current PWB project
|
||||||
|
Debug:=arg "debug" compile
|
||||||
|
|
||||||
|
|
||||||
|
; Insert spaces to next tab stop.
|
||||||
|
InsertTab := arg tab sinsert
|
||||||
|
|
||||||
|
; Indent a paragraph to the next tab stop:
|
||||||
|
para_indent:=_pwbboxmode meta mpara down begline arg \
|
||||||
|
meta ppara up begline tab insert
|
||||||
|
|
||||||
|
; Move the cursor to column one, then toggle between column one and
|
||||||
|
; the first nonblank character on the line.
|
||||||
|
ToggleBegline := left ->x meta :>x begline
|
||||||
|
|
||||||
|
; Put parts of current filename on the clipboard.
|
||||||
|
Path2clip := Arg Curfile Copy
|
||||||
|
Name2clip := Arg Curfilenam Copy
|
||||||
|
Filename2clip := Arg Curfilenam Curfileext Copy
|
||||||
|
|
||||||
|
;-------------------
|
||||||
|
; Macro utilities
|
||||||
|
; Macro writing and debugging tools, plus convenient shorthands
|
||||||
|
|
||||||
|
; Set True return value. Side effect: cancels active arguments
|
||||||
|
True := cancel
|
||||||
|
|
||||||
|
; Set False return value. Side effect: turns off Meta
|
||||||
|
False := meta +>off meta :>off meta
|
||||||
|
|
||||||
|
; The following macros test common conditions.
|
||||||
|
;
|
||||||
|
; At beginning of line?
|
||||||
|
bol? := savecur begline +>no True => :>no restcur False
|
||||||
|
|
||||||
|
; Any text at cursor?
|
||||||
|
text? := right +>yes left False => :>yes left True
|
||||||
|
|
||||||
|
; Is the current line an empty line?
|
||||||
|
empty? := meta begline endline ->yes False => :>yes True
|
||||||
|
|
||||||
|
|
||||||
|
; Display the current macro return value on the status bar, then
|
||||||
|
; reset return value. Use this macro when debugging loops and
|
||||||
|
; conditional flow control.
|
||||||
|
? := +>t arg "FALSE" message => :>t arg "TRUE" message
|
||||||
|
|
||||||
|
; Refresh - force a full screen redraw
|
||||||
|
! := meta message
|
||||||
|
|
||||||
|
|
||||||
|
; These two utilities make readable find/replace macros. For example,
|
||||||
|
; use the phrase:
|
||||||
|
; replace "<junk text>" with nothing
|
||||||
|
; to delete <junk text> from the file.
|
||||||
|
With := newline
|
||||||
|
Nothing := " " cdelete newline
|
||||||
|
|
||||||
|
|
||||||
|
; Position the window so that the next tagged section of TOOLS.INI
|
||||||
|
; starts at the top of the window.
|
||||||
|
FindTag:=arg arg "^\\[[^\\]]+\\]" psearch ->none \
|
||||||
|
arg setwindow => :>none arg "no tag" message
|
||||||
|
|
||||||
|
; Adjust each line continuation (backslash at the end of a line) so
|
||||||
|
; that it appears in column 73.
|
||||||
|
SlashJust:=savecur begfile arg arg replace \
|
||||||
|
"^\\(.*[^ ]\\) +\\\\$" newline \
|
||||||
|
"\\(-70,1) \\\\" newline restcur
|
||||||
|
|
||||||
|
|
||||||
|
; Prompt for help topic to look up.
|
||||||
|
QueryHelp := arg "Get Help On:" prompt ->no pwbhelp => \
|
||||||
|
:>no arg "Query Cancelled" message
|
||||||
|
|
||||||
|
;-------------------
|
||||||
|
; Iterations on the file.
|
||||||
|
; All... - Macros that iterate over the file, one line at a time.
|
||||||
|
; Act - Define as the action to be performed on each line.
|
||||||
|
Act :=
|
||||||
|
|
||||||
|
; Perform Act on all lines of the file, starting from the end.
|
||||||
|
AllBackward := endfile :>s act up +>s
|
||||||
|
|
||||||
|
; Perform Act on all lines from start, including a page of blank lines
|
||||||
|
; at the end of the file.
|
||||||
|
AllForward := begfile :>s act down +>s
|
||||||
|
|
||||||
|
; Perform Act on all lines from start, testing for end-of-file at each
|
||||||
|
; step. Solves 'extra lines' problem of AllForward at the cost of
|
||||||
|
; speed.
|
||||||
|
AllForward2 := begfile savecur :>s restcur act \
|
||||||
|
down savecur begline endfile +>s
|
||||||
|
|
||||||
|
;-------------------
|
||||||
|
; Perform Act at each occurrence of a regular expression in the file.
|
||||||
|
Act :=
|
||||||
|
|
||||||
|
; Regular expression to match (example is for blank line)
|
||||||
|
RE := "^$"
|
||||||
|
|
||||||
|
; Perform Act at each occurrence of RE.
|
||||||
|
For1 := begfile :>s arg arg RE psearch -> act =>s
|
||||||
|
|
||||||
|
; Like For1, but iterates much faster with the restriction that Act
|
||||||
|
; cannot perform a search.
|
||||||
|
For2 := begfile arg arg RE :>s psearch -> act =>s
|
||||||
|
|
||||||
|
;-------------------
|
||||||
|
;GetMac - Load a separate file of macros or assignments.
|
||||||
|
;
|
||||||
|
;Usage: Arg 'file' getMac where <file> is the base name of
|
||||||
|
; a file in the INIT directory
|
||||||
|
;
|
||||||
|
GetMac := cancel lasttext begline "$INIT:" endline ".MAC" \
|
||||||
|
setfile <n +>Ok lasttext begline \
|
||||||
|
"Can't find \"" endline "\"" message => \
|
||||||
|
:>Ok begfile arg endfile assign -> arg refresh
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-tutor]
|
||||||
|
; PWB Tutorial macro examples
|
||||||
|
CloseWindows := :>Loop Openfile -> Meta Window Window =>Loop
|
||||||
|
CloseWindows : SHIFT+CTRL+W
|
||||||
|
|
||||||
|
LineComment := "// "
|
||||||
|
RevHead := "** Revision History **"
|
||||||
|
RevComment := \
|
||||||
|
Arg Arg "Start" Mark \
|
||||||
|
Begfile Arg RevHead Psearch +>Found \
|
||||||
|
Linsert LineComment RevHead \
|
||||||
|
:>Found \
|
||||||
|
Down Linsert Begline LineComment Curdate " (" \
|
||||||
|
Arg "Initials" Prompt ->Quit Paste Endline ") " \
|
||||||
|
Arg "Comment" Prompt ->Quit Paste =>End \
|
||||||
|
:>Quit Meta Ldelete \
|
||||||
|
:>End Arg "Start" Mark
|
||||||
|
RevComment:CTRL+H
|
||||||
|
|
||||||
|
|
||||||
|
;----------------------------------------------------------------------
|
||||||
|
[pwb-abbr]
|
||||||
|
; Abbreviations - Define and expand abbreviations.
|
||||||
|
|
||||||
|
; Select the current word
|
||||||
|
SelWord:= pword ->eof mword arg meta pword => \
|
||||||
|
:>eof mword pword arg meta pword
|
||||||
|
|
||||||
|
; Delete the current word and execute it
|
||||||
|
Expand := selword lasttext cancel lastselect meta sdelete lasttext execute
|
||||||
|
Expand :Alt+T
|
||||||
|
|
||||||
|
; Simple text expansion
|
||||||
|
prog := "program"
|
||||||
|
ex := "example"
|
||||||
|
|
||||||
|
; Expand 'cmd' once to get 'command', Expand twice to get 'command line'
|
||||||
|
cmd := "command"
|
||||||
|
command:= "command line"
|
||||||
|
|
||||||
|
; Expand to the contents of the file HEADER.TPL in the INIT
|
||||||
|
; directory--a good technique for large boilerplate text.
|
||||||
|
Header := arg arg "$INIT:header.TPL" paste
|
||||||
|
|
||||||
|
|
||||||
|
[end]
|
BIN
Microsoft Cobol v5/BIN/SBR-LOAD.GNT
Normal file
BIN
Microsoft Cobol v5/BIN/SBR-LOAD.GNT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/SBRPACK.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/SBRPACK.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/SCREENS.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/SCREENS.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/SCREENS.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/SCREENS.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/SHD1.DLL
Normal file
BIN
Microsoft Cobol v5/BIN/SHD1.DLL
Normal file
Binary file not shown.
53
Microsoft Cobol v5/BIN/SIEVE.CBL
Normal file
53
Microsoft Cobol v5/BIN/SIEVE.CBL
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
IDENTIFICATION DIVISION.
|
||||||
|
PROGRAM-ID. SIEVE.
|
||||||
|
* REMARKS. BYTE magazine benchmark.
|
||||||
|
* REMARKS. MS Cobol limits array sizes to 1023.
|
||||||
|
* REMARKS. Projected runtime for 8190 is 4853 seconds.
|
||||||
|
ENVIRONMENT DIVISION.
|
||||||
|
CONFIGURATION SECTION.
|
||||||
|
DATA DIVISION.
|
||||||
|
WORKING-STORAGE SECTION.
|
||||||
|
01 MISC.
|
||||||
|
03 I PIC 9(4) COMP.
|
||||||
|
03 PRIME PIC 9(5) COMP.
|
||||||
|
03 K PIC 9(4) COMP.
|
||||||
|
03 TOTAL-PRIME-COUNT PIC 9(4) COMP.
|
||||||
|
02 SIEVETABLE.
|
||||||
|
04 FLAGS PIC 9 COMP OCCURS 8191 TIMES.
|
||||||
|
01 NUM-DISP PIC 9999.
|
||||||
|
|
||||||
|
PROCEDURE DIVISION.
|
||||||
|
MAIN.
|
||||||
|
PERFORM ITER-ROUTINE 10 TIMES.
|
||||||
|
MOVE TOTAL-PRIME-COUNT TO NUM-DISP.
|
||||||
|
DISPLAY NUM-DISP ' primes'.
|
||||||
|
STOP RUN.
|
||||||
|
|
||||||
|
ITER-ROUTINE.
|
||||||
|
MOVE ZEROES TO TOTAL-PRIME-COUNT.
|
||||||
|
PERFORM TFR VARYING I FROM 1 BY 1 UNTIL I = 8191.
|
||||||
|
PERFORM DCP THRU DCE VARYING I FROM 0 BY 1 UNTIL I = 8190.
|
||||||
|
|
||||||
|
TFR.
|
||||||
|
MOVE 1 TO FLAGS(I).
|
||||||
|
|
||||||
|
DCP.
|
||||||
|
IF FLAGS( I + 1 ) = 0
|
||||||
|
GO TO DCE.
|
||||||
|
COMPUTE PRIME = I + I + 3.
|
||||||
|
COMPUTE K = I + PRIME.
|
||||||
|
|
||||||
|
FIRST1.
|
||||||
|
IF K > 8190 GO TO NEXT1.
|
||||||
|
MOVE 0 TO FLAGS( K + 1 ).
|
||||||
|
COMPUTE K = PRIME + K.
|
||||||
|
GO TO FIRST1.
|
||||||
|
|
||||||
|
NEXT1.
|
||||||
|
ADD 1 TO TOTAL-PRIME-COUNT.
|
||||||
|
* MOVE PRIME TO NUM-DISP.
|
||||||
|
* DISPLAY 'FOUND PRIME = ' NUM-DISP.
|
||||||
|
|
||||||
|
DCE.
|
||||||
|
EXIT.
|
||||||
|
|
BIN
Microsoft Cobol v5/BIN/SPLIT78.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/SPLIT78.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/TLD1LOC.DLL
Normal file
BIN
Microsoft Cobol v5/BIN/TLD1LOC.DLL
Normal file
Binary file not shown.
168
Microsoft Cobol v5/BIN/TTT.CBL
Normal file
168
Microsoft Cobol v5/BIN/TTT.CBL
Normal file
@ -0,0 +1,168 @@
|
|||||||
|
IDENTIFICATION DIVISION.
|
||||||
|
PROGRAM-ID. TTT.
|
||||||
|
* REMARKS. prove tic-tac-toe is not winnable against a good foe.
|
||||||
|
ENVIRONMENT DIVISION.
|
||||||
|
CONFIGURATION SECTION.
|
||||||
|
DATA DIVISION.
|
||||||
|
WORKING-STORAGE SECTION.
|
||||||
|
01 BOARD.
|
||||||
|
05 B PIC 9(04) COMP OCCURS 9 TIMES.
|
||||||
|
05 VALST PIC 9(04) COMP OCCURS 10 TIMES.
|
||||||
|
05 ALPHAST PIC 9(04) COMP OCCURS 10 TIMES.
|
||||||
|
05 BETAST PIC 9(04) COMP OCCURS 10 TIMES.
|
||||||
|
05 XST PIC 9(04) COMP OCCURS 10 TIMES.
|
||||||
|
05 PMST PIC 9(04) COMP OCCURS 10 TIMES.
|
||||||
|
01 MOVECOUNT PIC 9(04) COMP VALUE 0.
|
||||||
|
01 DEPTH PIC 9(04) COMP VALUE 0.
|
||||||
|
01 NUM-DISP PIC 9999.
|
||||||
|
01 ITER PIC 9(04) COMP VALUE 0.
|
||||||
|
01 WI PIC 9(04) COMP VALUE 0.
|
||||||
|
01 VAL PIC 9(04) COMP VALUE 0.
|
||||||
|
01 T PIC 9(04) COMP VALUE 0.
|
||||||
|
01 D PIC 9(04) COMP VALUE 0.
|
||||||
|
01 M PIC 9(04) COMP VALUE 0.
|
||||||
|
01 X PIC 9(04) COMP VALUE 0.
|
||||||
|
01 PM PIC 9(04) COMP VALUE 0.
|
||||||
|
01 SC PIC 9(04) COMP VALUE 0.
|
||||||
|
01 Z PIC 9(04) COMP VALUE 0.
|
||||||
|
01 ALPHA PIC 9(04) COMP VALUE 0.
|
||||||
|
01 BETA PIC 9(04) COMP VALUE 0.
|
||||||
|
01 FIRSTMOVE PIC 9(04) COMP VALUE 0.
|
||||||
|
|
||||||
|
PROCEDURE DIVISION.
|
||||||
|
MAIN.
|
||||||
|
DISPLAY 'hello from cobol'.
|
||||||
|
MOVE 1 TO ITER.
|
||||||
|
INITBOARD.
|
||||||
|
MOVE 0 TO B( ITER ).
|
||||||
|
ADD 1 TO ITER.
|
||||||
|
IF ITER < 10 GO TO INITBOARD.
|
||||||
|
|
||||||
|
MOVE 0 TO ITER.
|
||||||
|
NEXTITER.
|
||||||
|
MOVE 0 TO MOVECOUNT.
|
||||||
|
MOVE 1 TO FIRSTMOVE.
|
||||||
|
PERFORM RUNMM.
|
||||||
|
MOVE 2 TO FIRSTMOVE.
|
||||||
|
PERFORM RUNMM.
|
||||||
|
MOVE 5 TO FIRSTMOVE.
|
||||||
|
PERFORM RUNMM.
|
||||||
|
ADD 1 TO ITER.
|
||||||
|
IF ITER < 10 GO TO NEXTITER.
|
||||||
|
|
||||||
|
DISPLAY 'final move count and winner: '.
|
||||||
|
MOVE MOVECOUNT TO NUM-DISP.
|
||||||
|
DISPLAY NUM-DISP.
|
||||||
|
MOVE SC TO NUM-DISP.
|
||||||
|
DISPLAY NUM-DISP.
|
||||||
|
|
||||||
|
STOP RUN.
|
||||||
|
|
||||||
|
RUNMM.
|
||||||
|
MOVE 1 TO B( FIRSTMOVE ).
|
||||||
|
MOVE FIRSTMOVE TO X
|
||||||
|
MOVE 2 TO ALPHA
|
||||||
|
MOVE 9 TO BETA
|
||||||
|
PERFORM MINMAX.
|
||||||
|
MOVE 0 TO B( FIRSTMOVE ).
|
||||||
|
|
||||||
|
WINNER.
|
||||||
|
MOVE 0 TO WI.
|
||||||
|
MOVE B( 1 ) TO T.
|
||||||
|
IF 0 NOT = T AND T=B(2) AND T=B(3) MOVE T TO WI
|
||||||
|
ELSE IF 0 NOT= T AND T=B(4) AND T=B(7) MOVE T TO WI.
|
||||||
|
|
||||||
|
IF 0 = WI
|
||||||
|
MOVE B(2) TO T
|
||||||
|
IF 0 NOT= T AND T=B(5) AND T=B(8) MOVE T TO WI
|
||||||
|
ELSE
|
||||||
|
MOVE B(3) TO T
|
||||||
|
IF 0 NOT= T AND T=B(6) AND T=B(9) MOVE T TO WI
|
||||||
|
ELSE
|
||||||
|
MOVE B(4) TO T
|
||||||
|
IF 0 NOT= T AND T=B(5) AND T=B(6) MOVE T TO WI
|
||||||
|
ELSE
|
||||||
|
MOVE B(7) TO T
|
||||||
|
IF 0 NOT= T AND T=B(8) AND T=B(9) MOVE T TO WI
|
||||||
|
ELSE
|
||||||
|
MOVE B(5) TO T
|
||||||
|
IF 0 NOT= T AND T=B(1) AND T=B(9) MOVE T TO WI
|
||||||
|
ELSE
|
||||||
|
IF 0 NOT= T AND T=B(3) AND T=B(7) MOVE T TO WI.
|
||||||
|
|
||||||
|
SHOWPOS.
|
||||||
|
MOVE B(Z) TO NUM-DISP.
|
||||||
|
DISPLAY NUM-DISP.
|
||||||
|
|
||||||
|
SHOWBOARD.
|
||||||
|
DISPLAY 'board: '.
|
||||||
|
PERFORM SHOWPOS VARYING Z FROM 1 BY 1 UNTIL Z>9.
|
||||||
|
|
||||||
|
INITVALPM.
|
||||||
|
DIVIDE DEPTH BY 2 GIVING D.
|
||||||
|
MULTIPLY D BY 2 GIVING M.
|
||||||
|
|
||||||
|
IF DEPTH NOT = M
|
||||||
|
MOVE 2 TO VAL
|
||||||
|
MOVE 1 TO PM
|
||||||
|
ELSE
|
||||||
|
MOVE 9 TO VAL
|
||||||
|
MOVE 2 TO PM.
|
||||||
|
|
||||||
|
MINMAX.
|
||||||
|
ADD 1 TO MOVECOUNT.
|
||||||
|
MOVE 0 TO VAL.
|
||||||
|
|
||||||
|
IF DEPTH > 3
|
||||||
|
PERFORM WINNER
|
||||||
|
IF WI NOT = 0
|
||||||
|
IF WI = 1 MOVE 6 TO VAL ELSE MOVE 4 TO VAL
|
||||||
|
ELSE IF DEPTH = 8 MOVE 5 TO VAL.
|
||||||
|
|
||||||
|
IF 0 = VAL
|
||||||
|
PERFORM INITVALPM
|
||||||
|
|
||||||
|
ADD 1 TO DEPTH
|
||||||
|
PERFORM MAKEMOVE VARYING X FROM 1 BY 1 UNTIL (X>9)
|
||||||
|
SUBTRACT 1 FROM DEPTH.
|
||||||
|
|
||||||
|
MOVE VAL TO SC.
|
||||||
|
|
||||||
|
UPDATEODD.
|
||||||
|
IF SC = 6 MOVE 10 TO X.
|
||||||
|
IF SC > VAL MOVE SC TO VAL.
|
||||||
|
IF VAL NOT < BETA MOVE 10 TO X.
|
||||||
|
IF VAL > ALPHA MOVE VAL TO ALPHA.
|
||||||
|
|
||||||
|
UPDATEEVEN.
|
||||||
|
IF SC = 4 MOVE 10 TO X.
|
||||||
|
IF SC < VAL MOVE SC TO VAL.
|
||||||
|
IF VAL NOT > ALPHA MOVE 10 TO X.
|
||||||
|
IF VAL < BETA MOVE VAL TO BETA.
|
||||||
|
|
||||||
|
UPDATESTATE.
|
||||||
|
IF PM = 1 PERFORM UPDATEODD
|
||||||
|
ELSE PERFORM UPDATEEVEN.
|
||||||
|
|
||||||
|
MAKEMOVE.
|
||||||
|
IF B( X ) = 0
|
||||||
|
MOVE PM TO B( X )
|
||||||
|
|
||||||
|
MOVE VAL TO VALST( DEPTH )
|
||||||
|
MOVE X TO XST( DEPTH )
|
||||||
|
MOVE PM TO PMST( DEPTH )
|
||||||
|
MOVE ALPHA TO ALPHAST( DEPTH )
|
||||||
|
MOVE BETA TO BETAST( DEPTH )
|
||||||
|
|
||||||
|
PERFORM MINMAX
|
||||||
|
|
||||||
|
MOVE BETAST( DEPTH ) TO BETA
|
||||||
|
MOVE ALPHAST( DEPTH ) TO ALPHA
|
||||||
|
MOVE PMST( DEPTH ) TO PM
|
||||||
|
MOVE XST( DEPTH ) TO X
|
||||||
|
MOVE VALST( DEPTH ) TO VAL
|
||||||
|
|
||||||
|
MOVE 0 TO B( X )
|
||||||
|
|
||||||
|
PERFORM UPDATESTATE.
|
||||||
|
|
BIN
Microsoft Cobol v5/BIN/UNDEL.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/UNDEL.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/UTILS.LBR
Normal file
BIN
Microsoft Cobol v5/BIN/UTILS.LBR
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/VGASYS.FNT
Normal file
BIN
Microsoft Cobol v5/BIN/VGASYS.FNT
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/XANIMATE.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/XANIMATE.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/XB.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/XB.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/XCOBOL.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/XCOBOL.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/XM.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/XM.EXE
Normal file
Binary file not shown.
BIN
Microsoft Cobol v5/BIN/_BTRV.EXE
Normal file
BIN
Microsoft Cobol v5/BIN/_BTRV.EXE
Normal file
Binary file not shown.
11
Microsoft Cobol v5/BIN/m.bat
Normal file
11
Microsoft Cobol v5/BIN/m.bat
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
del %1.obj
|
||||||
|
del %1.exe
|
||||||
|
|
||||||
|
ntvdm -r:.. -c -d cobol %1,%1,%1,%1
|
||||||
|
|
||||||
|
rem link.exe that ships with cobol requires 286+ protected mode. use msvc v5's linker instead
|
||||||
|
rem qbx's link.exe executes code in a segment it just freed
|
||||||
|
ntvdm -h -i -c -r:.. /e:lib=c:\lib mcv5link %1,,%1,,nul.def
|
||||||
|
|
||||||
|
ntvdm -c -m -p %1
|
||||||
|
|
BIN
Microsoft Cobol v5/BIN/qbxlink.exe
Normal file
BIN
Microsoft Cobol v5/BIN/qbxlink.exe
Normal file
Binary file not shown.
721
Microsoft Cobol v5/DOCS/CBL-CMPT.DOC
Normal file
721
Microsoft Cobol v5/DOCS/CBL-CMPT.DOC
Normal file
@ -0,0 +1,721 @@
|
|||||||
|
|
||||||
|
CBL-CMPT.DOC File
|
||||||
|
|
||||||
|
Compatibility with Previous Releases of Microsoft(R) COBOL
|
||||||
|
|
||||||
|
(C) Copyright Microsoft Corporation, 1993
|
||||||
|
|
||||||
|
|
||||||
|
Contents
|
||||||
|
--------
|
||||||
|
Introduction
|
||||||
|
Changes in Microsoft COBOL 5.0
|
||||||
|
Changes in Microsoft COBOL 4.5
|
||||||
|
Changes in Microsoft COBOL 4.0
|
||||||
|
Documentation
|
||||||
|
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
------------
|
||||||
|
This document is for use when maintaining applications created using
|
||||||
|
earlier releases of this product.
|
||||||
|
|
||||||
|
It describes the differences that may cause problems, and includes
|
||||||
|
documentation of features no longer documented in this system, but
|
||||||
|
maintained for compatibility.
|
||||||
|
|
||||||
|
Note that the use of the compiler with default settings will cause the
|
||||||
|
use of new words to become reserved. A list of these words is given
|
||||||
|
below.
|
||||||
|
|
||||||
|
|
||||||
|
Changes in Microsoft COBOL 5.0
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
---------
|
||||||
|
o ON EXCEPTION is no longer allowed with CHAIN since it has never been
|
||||||
|
supported at run-time. It now gives a severity E error message which
|
||||||
|
does not prevent compilation from continuing. Using HIDEMESSAGE(1047)
|
||||||
|
will prevent the error from being visible."
|
||||||
|
|
||||||
|
o Use of the MF directive when compiling will cause some data-names
|
||||||
|
to be illegal as the reserved word list has been extended. If you
|
||||||
|
have this problem, either change the data-name, use the
|
||||||
|
REMOVE(reservedword) directive or recompile with MF(7).
|
||||||
|
|
||||||
|
New reserved words included when using MF(8) are:
|
||||||
|
|
||||||
|
|
||||||
|
IGNORE
|
||||||
|
KANJI
|
||||||
|
LOWER
|
||||||
|
NATIONAL
|
||||||
|
NATIONAL-EDITED
|
||||||
|
UPPER
|
||||||
|
WAIT
|
||||||
|
|
||||||
|
|
||||||
|
o The RW directive has been withdrawn. It has had no effect since
|
||||||
|
COBOL V4.0.
|
||||||
|
|
||||||
|
o The default for the PANVALET directive is now NOPANVALET. ++INCLUDE
|
||||||
|
is no longer flagged when PANVALET is specified, and -INC is no
|
||||||
|
longer flagged when LIBRARIAN is specified. If you specify LIBRARIAN
|
||||||
|
and PANVALET together, a warning is displayed that the compiled
|
||||||
|
program may not be mainframe-compatible.
|
||||||
|
|
||||||
|
o ON EXCEPTION and ON OVERFLOW clauses are no longer accepted for the
|
||||||
|
CHAIN verb. The WARNING message that was given for them has been
|
||||||
|
changed to an ERROR message. (In previous releases the syntax
|
||||||
|
was accepted but there was no run-time support.)
|
||||||
|
|
||||||
|
o The handling of Directives files has changed so that they can now be
|
||||||
|
truly nested. Previously, if you specified the DIRECTIVES directive
|
||||||
|
in a directives file, the Compiler switched to the new directives
|
||||||
|
file and did not return to the original one. Now it does return.
|
||||||
|
Consequently, further directives in the original Directives file are
|
||||||
|
processed, whereas in previous releases they were ignored.
|
||||||
|
|
||||||
|
|
||||||
|
Changes in Microsoft COBOL 4.5
|
||||||
|
------------------------------
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
o Use of the MF directive when compiling will cause some data names
|
||||||
|
to be illegal as the reserved word list has been extended. Change
|
||||||
|
the dataname, use the REMOVE(reservedword) directive or recompile
|
||||||
|
with MF(6).
|
||||||
|
|
||||||
|
New reserved words included when using MF(7) are:
|
||||||
|
|
||||||
|
ALPHABET ALPHABETIC-LOWER ALPHABETIC-UPPER
|
||||||
|
ALPHANUMERIC ALPHANUMERIC-EDITED ANY
|
||||||
|
BINARY CLASS COMMON
|
||||||
|
COMP-1 COMP-2 COMP-4
|
||||||
|
COMPUTATIONAL-1 COMPUTATIONAL-2 COMPUTATIONAL-4
|
||||||
|
CONTENT CONTINUE CONVERTING
|
||||||
|
CYCLE DAY-OF-WEEK DBCS
|
||||||
|
DISPLAY-1 EJECT END-ADD
|
||||||
|
END-CALL END-COMPUTE END-DELETE
|
||||||
|
END-DISPLAY END-DIVIDE END-EVALUATE
|
||||||
|
END-IF END-MULTIPLY END-PERFORM
|
||||||
|
END-READ END-RECEIVE END-RETURN
|
||||||
|
END-REWRITE END-SEARCH END-START
|
||||||
|
END-STRING END-SUBTRACT END-UNSTRING
|
||||||
|
END-WRITE EOL EOS
|
||||||
|
EQUALS EVALUATE EXCEEDS
|
||||||
|
FALSE FUNCTION GLOBAL
|
||||||
|
ID INITIALIZE LOWLIGHT
|
||||||
|
NUMERIC-EDITED ORDER OTHER
|
||||||
|
PACKED-DECIMAL PADDING PARAGRAPH
|
||||||
|
PURGE REFERENCE REPLACE
|
||||||
|
SKIP1 SKIP2 SKIP3
|
||||||
|
SORT-RETURN STANDARD-2 TEST
|
||||||
|
TIME-OUT TIMEOUT TITLE
|
||||||
|
TRUE UNEQUAL WAIT
|
||||||
|
WHEN-COMPILED
|
||||||
|
|
||||||
|
Note that most of these words are already reserved under the ANS85 or
|
||||||
|
VSC2 directives, so will only become new if you are compiling with MF
|
||||||
|
but without ANS85 or VSC2.
|
||||||
|
|
||||||
|
o RM compatibility
|
||||||
|
|
||||||
|
When compiling for RM compatibility, if the same behavior is required
|
||||||
|
as with Microsoft COBOL 4.0 then you should compile with the
|
||||||
|
DETECTLOCK directive.
|
||||||
|
|
||||||
|
o ASSIGN TO PRINTER
|
||||||
|
|
||||||
|
Files defined with ASSIGN TO PRINTER are treated as LINE ADVANCING in
|
||||||
|
COBOL 4.5. In 4.0, they were treated as LINE SEQUENTIAL.
|
||||||
|
|
||||||
|
o NEXT SENTENCE
|
||||||
|
|
||||||
|
In COBOL 4.0, you could make NEXT SENTENCE jump to the appropriate
|
||||||
|
end-scope delimiter by using the MF"5" directive (see below). In 4.5
|
||||||
|
this directive does not have this effect.
|
||||||
|
|
||||||
|
o Nested Programs
|
||||||
|
|
||||||
|
In V4.0, nested programs could have Configuration Sections. In V4.5
|
||||||
|
they cannot.
|
||||||
|
|
||||||
|
o The "DISPLAY ... UPON CRT Attributes Behavior" switch S6 is no longer
|
||||||
|
documented in the Operating Guide. Here is its description. With the
|
||||||
|
Enhanced DISPLAY (see the Screen Handling chapter of the Language
|
||||||
|
Reference Manual), if no attributes are specified on the DISPLAY then,
|
||||||
|
by default, the attributes already existing in the given area will be
|
||||||
|
used. If the switch +S6 is specified at run time the normal screen
|
||||||
|
attributes will be used instead.
|
||||||
|
|
||||||
|
o In earlier versions of this COBOL system all system library routines
|
||||||
|
were call-by-number. Many of the call-by-name routines in the present
|
||||||
|
product replace old call-by-number routines. The list below indicates,
|
||||||
|
for each call-by-name routine that has replaced a call-by-number
|
||||||
|
routine, the number of the routine it has replaced. In some cases the
|
||||||
|
call-by-name routine has additional features.
|
||||||
|
|
||||||
|
Name Number
|
||||||
|
---- ------
|
||||||
|
CBL_READ_SCR_CHARS B7 0
|
||||||
|
CBL_READ_SCR_ATTRS B7 2
|
||||||
|
CBL_READ_SCR_CHATTRS B8 0
|
||||||
|
CBL_WRITE_SCR_CHARS B7 1
|
||||||
|
CBL_WRITE_SCR_ATTRS B7 3
|
||||||
|
CBL_WRITE_SCR_CHATTRS B8 1
|
||||||
|
CBL_WRITE_SCR_TTY 82
|
||||||
|
CBL_WRITE_SCR_N_CHAR B7 4
|
||||||
|
CBL_WRITE_SCR_N_ATTR B7 5
|
||||||
|
CBL_SWAP_SCR_CHATTRS B8 2
|
||||||
|
CBL_GET_SCR_SIZE E3
|
||||||
|
CBL_SET_CSR_POS E6
|
||||||
|
CBL_CLEAR_SCR E4
|
||||||
|
CBL_GET_KBD_STATUS D9
|
||||||
|
PC_READ_DRIVE 91 5
|
||||||
|
PC_SET_DRIVE 91 6
|
||||||
|
CBL_READ_DIR 91 7
|
||||||
|
CBL_CHANGE_DIR 91 8
|
||||||
|
CBL_DELETE_FILE 91 18
|
||||||
|
CBL_RENAME_FILE 91 17
|
||||||
|
PC_TEST_PRINTER B0 7
|
||||||
|
CBL_SPLIT_FILENAME 8C
|
||||||
|
CBL_JOIN_FILENAME 8D
|
||||||
|
|
||||||
|
o The behavior of COPY ... REPLACING has been changed depending on the
|
||||||
|
setting of the ANS85 or VSC2(3) directives. Previously all non-COBOL
|
||||||
|
characters were disallowed in operands to COPY ... REPLACING, and
|
||||||
|
lowercase and colon were added to the character set. This behavior now
|
||||||
|
only occurs if the ANS85 or VSC2(3) directive is used. Otherwise, the
|
||||||
|
operands may contain non-COBOL characters.
|
||||||
|
|
||||||
|
|
||||||
|
Changes in Microsoft COBOL 4.0
|
||||||
|
------------------------------
|
||||||
|
General
|
||||||
|
|
||||||
|
o When installing on an OS/2 system, SETUP will add PATH and
|
||||||
|
environment variable information to CONFIG.SYS and not to OS2INIT.CMD
|
||||||
|
as in previous releases. This conforms with the standard for
|
||||||
|
installing OS/2 v1.1 and later.
|
||||||
|
|
||||||
|
o The files, DBCS.EXE/.DLL and V-ISAM.DLL are no longer required, and
|
||||||
|
are not included with this release.
|
||||||
|
|
||||||
|
o The shared run-time files, COBLIB.DLE and COBLIB.DLL are used by the
|
||||||
|
components of this system, and must be loaded for the system to
|
||||||
|
operate. COBLIB.DLE is required for DOS, COBLIB.DLL for OS/2.
|
||||||
|
|
||||||
|
o The callable file handler interface is no longer part of this
|
||||||
|
product. If you wish to use the CALLFH feature, or to call the file
|
||||||
|
handler directly, you will require a copy of the Micro Focus COBOL/2
|
||||||
|
Toolset.
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
o The default directives, NOCOPYLBR, ANS85, NOOSVS and MF are now built
|
||||||
|
into the compiler and are not included in the COBOL.DIR created by
|
||||||
|
SETUP. ANS85 and OSVS can be changed by SETUP, so that NOANS85 and/or
|
||||||
|
OSVS are included in the COBOL.DIR created by SETUP. SETUP also
|
||||||
|
allows selection of SAA and the default linking libraries.
|
||||||
|
|
||||||
|
o VSC2 is now equivalent to VSC2(3). Previously VSC2 was equivalent to
|
||||||
|
VSC2(2). The directives VSC2 OLDVSC2 have been replaced by VSC2(1).
|
||||||
|
|
||||||
|
o The directive OLDFILEIO has been replaced by the directive IDXFORMAT
|
||||||
|
which defines the type of indexed file required. IDXFORMAT"2" is
|
||||||
|
equivalent to OLDFILEIO.
|
||||||
|
|
||||||
|
o The verb, GOBACK, and the special register, RETURN-CODE are now part
|
||||||
|
of the standard Micro Focus(R) COBOL language and can be used without
|
||||||
|
needing VSC2 or OSVS. They are enabled by an MF level of 5 or above
|
||||||
|
(on by default) and can, therefore, be disabled by specifying MF(4).
|
||||||
|
|
||||||
|
o Comments following the PROGRAM-ID, which were allowed in previous
|
||||||
|
versions, are now not allowed by default. They can, however, be
|
||||||
|
enabled using the PROGID-COMMENT directive.
|
||||||
|
|
||||||
|
o For interfacing at the assembler level, note that the object segment
|
||||||
|
class names created by the COBOL compiler have changed in this
|
||||||
|
release.
|
||||||
|
|
||||||
|
o The default ALPHASTART value has been set to 1 to conform to the
|
||||||
|
ANSI'85 standard. In previous versions, this was set to 0. If you
|
||||||
|
have programs that use the ALPHABET clause of the SPECIAL-NAMES
|
||||||
|
paragraph, you may need to specify the directive ALPHASTART"0" to
|
||||||
|
maintain the required behavior.
|
||||||
|
|
||||||
|
o ACCEPT .. FROM DAY-OF-WEEK
|
||||||
|
|
||||||
|
The statement
|
||||||
|
|
||||||
|
ACCEPT data-item FROM DAY-OF-WEEK
|
||||||
|
|
||||||
|
incorrectly returned the value 0 for Sunday. It now returns a value
|
||||||
|
of 7, as documented.
|
||||||
|
|
||||||
|
o COMP-5
|
||||||
|
|
||||||
|
The default behavior of USAGE COMP-5 data items has been changed. In
|
||||||
|
previous versions of the product, COMP-5 was treated in a similar
|
||||||
|
fashion to signed COMP. It is now treated in a similar fashion to
|
||||||
|
COMP-X, allowing it to be a true binary numeric item using machine
|
||||||
|
specific byte ordering. This makes it a very efficient data type.
|
||||||
|
|
||||||
|
If you use COMP-5 in existing programs, and depend on its sign
|
||||||
|
handling, you should compile your programs with the COMP-5"1"
|
||||||
|
directive.
|
||||||
|
|
||||||
|
o NEXT SENTENCE
|
||||||
|
|
||||||
|
NEXT SENTENCE is handled differently in this version of the product.
|
||||||
|
In previous versions NEXT SENTENCE would cause control to move to the
|
||||||
|
end of the sentence (i.e. following the next period) or to the
|
||||||
|
statement following the next end-scope delimiter. In this version, it
|
||||||
|
will always go to the end of the sentence, as defined by the ANSI'85
|
||||||
|
standard.
|
||||||
|
|
||||||
|
If your program uses NEXT SENTENCE and relies on the change of
|
||||||
|
control being to the appropriate end-scope delimiter, you can use the
|
||||||
|
MF"5" directive (but see above for V4.5). Alternatively, change the
|
||||||
|
NEXT SENTENCE phrases to CONTINUE, which will have the desired
|
||||||
|
effect.
|
||||||
|
|
||||||
|
o SYMBOLIC CHARACTERS clause
|
||||||
|
|
||||||
|
The default SYMBSTART value has been set to 1 to conform to the
|
||||||
|
ANSI'85 standard. In previous versions, this was set to 0. If you
|
||||||
|
have programs that use the SYMBOLIC CHARACTERS clause of the
|
||||||
|
SPECIAL-NAMES paragraph, you may need to specify the directive
|
||||||
|
SYMBSTART"0" to maintain the required behavior.
|
||||||
|
|
||||||
|
o RECORDING MODE
|
||||||
|
|
||||||
|
The RECORDING MODE phrase has been amended so that, when it is
|
||||||
|
explicitly included in an FD, it overrides the RECORD clause in all
|
||||||
|
cases, with RECORDING MODE F always causing a fixed format file to be
|
||||||
|
created, and RECORDING MODE V a variable format file.
|
||||||
|
|
||||||
|
If you require the original behavior, whereby RECORDING MODE is
|
||||||
|
overridden by the RECORD clause, then use the MF"5" directive.
|
||||||
|
|
||||||
|
Note that the RECMODE directive will not override the RECORD clause.
|
||||||
|
|
||||||
|
o REPORT-WRITER reserved words
|
||||||
|
|
||||||
|
The RW directive has been made obsolete by incorporating the REPORT-
|
||||||
|
WRITER reserved words into the main dialects that support REPORT-
|
||||||
|
WRITER. If you have a program that uses some REPORT-WRITER reserved
|
||||||
|
words as data names, and used to be compiled with the NORW directive,
|
||||||
|
then you need to replace the NORW directive by USE(NORW). This will
|
||||||
|
cause the REPORT-WRITER reserved words to be removed from the
|
||||||
|
reserved word list, making them available for use as data names.
|
||||||
|
|
||||||
|
o INSPECT
|
||||||
|
|
||||||
|
The handling of the LEADING phrase in INSPECT has been amended to
|
||||||
|
make it conform to a recent interpretation of the ANSI'85 standard.
|
||||||
|
For example, if data-stream contains "//AAA BBB OOO CCC", the
|
||||||
|
statement
|
||||||
|
|
||||||
|
INSPECT data-stream TALLYING count-field
|
||||||
|
FOR LEADING "A" "\" " "O" "C"
|
||||||
|
|
||||||
|
returned the value 5 in count-field in previous versions, but now
|
||||||
|
returns the value 2. This is because the remaining characters in the
|
||||||
|
LEADING phrase are considered to be ineligible once a match has been
|
||||||
|
found on one of the characters.
|
||||||
|
|
||||||
|
o COPY filenames
|
||||||
|
|
||||||
|
Since this version now distinguishes between filenames with no
|
||||||
|
extension, but with a trailing period, and those without a trailing
|
||||||
|
period (treating the former as a specified extension of spaces),
|
||||||
|
some COPY statements in existing programs may appear to stop
|
||||||
|
working. If you want your copy files to have extension .CPY, but
|
||||||
|
code them in your program with no extension, then you must be sure
|
||||||
|
that the name does not have a trailing period. For example, change:
|
||||||
|
|
||||||
|
COPY "mycopy.".
|
||||||
|
|
||||||
|
to
|
||||||
|
|
||||||
|
COPY "mycopy".
|
||||||
|
|
||||||
|
Note that
|
||||||
|
|
||||||
|
COPY mycopy.
|
||||||
|
|
||||||
|
is treated as if it has no trailing period, and hence as in previous
|
||||||
|
versions.
|
||||||
|
|
||||||
|
|
||||||
|
Running
|
||||||
|
|
||||||
|
o A large number of the run-time system subprogram calls, provided in
|
||||||
|
earlier releases as call-by-number calls, have been replaced by named
|
||||||
|
calls. In addition to making the calls easier to remember and use,
|
||||||
|
the call-by-name calls can accept parameters defined in any part of
|
||||||
|
the data division.
|
||||||
|
|
||||||
|
The replaced call-by-number calls are still supported in this
|
||||||
|
release, and documented below. However, we recommend that you
|
||||||
|
replace them with the equivalent call-by-name calls as appropriate.
|
||||||
|
|
||||||
|
o Record sizes
|
||||||
|
|
||||||
|
In previous releases, the maximum and minimum record sizes specified
|
||||||
|
for a variable format file had to be the same in every program
|
||||||
|
referencing the file. This restriction has been removed, allowing
|
||||||
|
programs to specify record lengths different to those specified in
|
||||||
|
the program used to create the file. However, if an attempt is made
|
||||||
|
to write a record which is smaller than the smallest defined or
|
||||||
|
larger than the largest defined a run-time error, 9/044, will be
|
||||||
|
returned.
|
||||||
|
|
||||||
|
Animating
|
||||||
|
|
||||||
|
o The method required to animate programs has changed in this release.
|
||||||
|
When a program is compiled for animation, using the ANIM directive,
|
||||||
|
intermediate code files are packaged into .OBJ files and .DLL on
|
||||||
|
OS/2). These .EXE/.DLL files can be animated in the usual way. The
|
||||||
|
pure intermediate code files (.INT) are no longer required for
|
||||||
|
animation.
|
||||||
|
|
||||||
|
o Since the new animation method incorporates a link step, any non-
|
||||||
|
COBOL .OBJ files can be linked in prior to animation. These will
|
||||||
|
operate correctly when encountered, though always in zoom mode. This
|
||||||
|
new technique makes IANIM and augmented INT obsolete, and these
|
||||||
|
facilities are not supported in this release.
|
||||||
|
|
||||||
|
The same method allows OS/2 API function calls to be resolved prior
|
||||||
|
to animation, avoiding the need for the Install Function technology
|
||||||
|
of earlier releases.
|
||||||
|
|
||||||
|
o This release has the +F switch set by default. This will cause
|
||||||
|
illegal data in numeric fields to be trapped during animation, and
|
||||||
|
when running intermediate code .OBJ files (run-time system error
|
||||||
|
163). This may cause existing programs to fail where they previously
|
||||||
|
worked. However, trapping such instances will help prevent the
|
||||||
|
subsequently generated code from failing. All generated programs will
|
||||||
|
work as at present, always assuming that numeric fields contain
|
||||||
|
numeric data.
|
||||||
|
|
||||||
|
Linking
|
||||||
|
|
||||||
|
o The linking library, OS2.LIB, should be used instead of DOSCALLS.LIB
|
||||||
|
when linking applications for use on OS/2(tm). OS2.LIB is supplied as
|
||||||
|
part of the utilities. (DOSCALLS.LIB can be used provided the
|
||||||
|
application is not a Presentation Manager application.)
|
||||||
|
|
||||||
|
o The /NOP option is no longer required when linking for use on OS/2.
|
||||||
|
|
||||||
|
o The default environment for applications created using this release
|
||||||
|
is the shared run-time environment. This is particularly recommended
|
||||||
|
for use on OS/2, where a single copy of COBLIB.DLL can be shared by
|
||||||
|
any COBOL application (built to use COBLIB) running in any OS/2
|
||||||
|
session.
|
||||||
|
|
||||||
|
To use this environment, the application is linked in the usual way,
|
||||||
|
using the libraries, COBLIB.LIB, and COBAPI.LIB or OS2.LIB depending
|
||||||
|
on DOS or OS/2. The EXE files produced will be much smaller since
|
||||||
|
little run-time system code is included directly. System programs,
|
||||||
|
such as EXTFH and ADIS, can be linked in with the application, or
|
||||||
|
linked as standalone sub-programs. Again, for OS/2, if linked as
|
||||||
|
standalone .DLL files, they can be shared by any number of COBOL
|
||||||
|
applications.
|
||||||
|
|
||||||
|
Notes:
|
||||||
|
- These system programs MUST be linked with COBLIB for use with
|
||||||
|
COBLIB applications.
|
||||||
|
|
||||||
|
- Modules linked with COBLIB cannot be mixed with modules linked
|
||||||
|
with LCOBOL. Hence, applications must be either all LCOBOL or all
|
||||||
|
COBLIB. However, COBLIB applications and LCOBOL applications can
|
||||||
|
be run on the same environment as long as they don't try to call
|
||||||
|
each other.
|
||||||
|
|
||||||
|
o The linking library (.LIB) files supplied with the system have been
|
||||||
|
split in a different way to enable reduced disk usage. They now
|
||||||
|
consist of LCOBOL.LIB, COBLIB.LIB, and COBAPI.LIB. The new LCOBOL
|
||||||
|
is equivalent to the old PCOBOL. The addition of COBAPI.LIB to
|
||||||
|
LCOBOL.LIB gives the old LCOBOL. (Users may like to recombine these
|
||||||
|
libraries using LIB if they wish to retain old working practices.)
|
||||||
|
For OS/2 operation, LCOBOL.LIB is used in combination with OS2.LIB
|
||||||
|
(which supersedes DOSCALLS.LIB).
|
||||||
|
|
||||||
|
In the shared run-time system, the default, COBLIB.LIB, is equivalent
|
||||||
|
to the old PRCOBOL.LIB. Again, either COBAPI.LIB or OS2.LIB is used
|
||||||
|
in combination with COBLIB.LIB to complete the linking for DOS or
|
||||||
|
OS/2 respectively. Applications linked with these libraries will be
|
||||||
|
very much smaller, benefiting from the shared run-time system support
|
||||||
|
in COBLIB.DLE and COBLIB.DLL. (Note that the application itself can
|
||||||
|
be bound so that it will run on both DOS and OS/2 provided both
|
||||||
|
shared run-time system files are present.)
|
||||||
|
|
||||||
|
o If you select a linking environment other than the built-in default,
|
||||||
|
SETUP will create a default LINKLIB in your COBOL.DIR. The default,
|
||||||
|
and equivalent of earlier releases, is LINKLIB(LCOBOL+COBAPI). If
|
||||||
|
you normally use the system on OS/2, use LINKLIB(LCOBOL+OS2). With
|
||||||
|
this release, the default is to use the COBLIB shared run-time system,
|
||||||
|
requiring LINKLIB(COBLIB+COBAPI) on DOS, and LINKLIB(COBLIB+OS2) on
|
||||||
|
OS/2.
|
||||||
|
|
||||||
|
When the default has been set in this way, you can still link for use
|
||||||
|
in other environments by specifying the relevant libraries on the
|
||||||
|
LINK command line. However, you should use the /NOD directive when
|
||||||
|
doing so, otherwise link-time errors may occur.
|
||||||
|
|
||||||
|
o The file handler for indexed files, IXSIO, has been replaced by the
|
||||||
|
external file handler, EXTFH. This can be linked in exactly the same
|
||||||
|
way as IXSIO in earlier releases, either linked in with the
|
||||||
|
application or linked as a standalone system program.
|
||||||
|
|
||||||
|
Programs referencing ANSI'85 EXTERNAL files and normal indexed files
|
||||||
|
now only use EXTFH rather than two separate file handlers.
|
||||||
|
|
||||||
|
Compatibility issues
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
o If you compile your programs on OS/2 using batch files, you will need
|
||||||
|
to alter the batch files to compile using the command COBOL instead
|
||||||
|
of PCOBOL. Alternatively, you can copy COBOL.EXE to PCOBOL.EXE in the
|
||||||
|
COBOL system directory.
|
||||||
|
|
||||||
|
o Programs previously compiled without the ANS85 directive, if
|
||||||
|
recompiled under this default system, may not work correctly. The
|
||||||
|
most likely cause is that the new system has ANS85 on by default.
|
||||||
|
This causes all file status codes to be ANS85 not ANS74 statuses.
|
||||||
|
The problem can be avoided by using the NOANS85 directive when
|
||||||
|
compiling any program that is designed to work with ANS74 file
|
||||||
|
statuses.
|
||||||
|
|
||||||
|
Animating
|
||||||
|
|
||||||
|
o The compiler dictionary structure has been amended. This means that
|
||||||
|
IDY files created by earlier releases will not be compatible with
|
||||||
|
ANIMATOR in this system. Hence, you should recompile, with this
|
||||||
|
release of the compiler, any program you wish to animate.
|
||||||
|
|
||||||
|
Linking
|
||||||
|
|
||||||
|
o .OBJ files created by this release are not compatible with .OBJ files
|
||||||
|
created by earlier releases. Hence, if you need to rebuild an
|
||||||
|
application where one of the OBJs has been created using this
|
||||||
|
release, you must recompile all the programs with this release of the
|
||||||
|
compiler before linking.
|
||||||
|
|
||||||
|
Running
|
||||||
|
|
||||||
|
o In previous versions of this software, an error is given when an
|
||||||
|
indexed file is opened if the record lengths of the file do not
|
||||||
|
exactly match those given in the FD. This has been changed so the
|
||||||
|
error is only given if an attempt is made to WRITE a record larger
|
||||||
|
than the maximum or smaller than the minimum.
|
||||||
|
|
||||||
|
o The Report Writer module has been changed so that it is compatible
|
||||||
|
with IBM(R) OS/VS COBOL when the OSVS directive is used. This is the
|
||||||
|
ANSI'68 COBOL standard. In previous versions, the default with OSVS
|
||||||
|
was ANSI'74 COBOL standard report writer. You may have report writer
|
||||||
|
programs using OSVS features, but requiring ANSI'74 report writer
|
||||||
|
compatibility. This mix is no longer possible, and you will either
|
||||||
|
need to remove the OSVS features (try VSC2), or accept ANSI'68 COBOL
|
||||||
|
report writer standard.
|
||||||
|
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
-------------
|
||||||
|
Call-by-number subprogram calls.
|
||||||
|
|
||||||
|
Many of the COBOL system library routines provided in earlier releases as
|
||||||
|
call-by-number have been replaced by call-by-name routines. We recommend
|
||||||
|
that you replace all call-by-number routines by their equivalent call-by-
|
||||||
|
name routines. See your Operating Guide chapter, COBOL System Library
|
||||||
|
Routines, for details of which call-by-name routines replace these.
|
||||||
|
|
||||||
|
To allow you to maintain existing applications, the documentation for the
|
||||||
|
replaced call-by-number routines follows:
|
||||||
|
|
||||||
|
|
||||||
|
PUT A CHARACTER TO THE SCREEN
|
||||||
|
|
||||||
|
CALL X"82" USING character.
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
character is a PIC X field containing the character to be put on the
|
||||||
|
screen in the current cursor position.
|
||||||
|
|
||||||
|
The cursor is then advanced one position to the right, or onto the next
|
||||||
|
line if it is in the rightmost position, or off the screen if it is in
|
||||||
|
the bottom right-hand corner.
|
||||||
|
|
||||||
|
|
||||||
|
READ A CHARACTER FROM THE KEYBOARD
|
||||||
|
|
||||||
|
CALL X"83" USING character.
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
character is a PIC X field to contain the character returned.
|
||||||
|
|
||||||
|
Notes: 1. A call on this subprogram also causes the function key table
|
||||||
|
to be checked and the result byte updated.
|
||||||
|
|
||||||
|
2. If the character returned from this subprogram is a carriage-
|
||||||
|
return character (hex 0D), then the character read from the
|
||||||
|
keyboard has been recognized by the function key table, and
|
||||||
|
the result byte of that table should be checked to determine
|
||||||
|
the actual character which has been pressed.
|
||||||
|
|
||||||
|
3. If the character read is a 2-byte character (such as a
|
||||||
|
function key) and it was not matched in the function key
|
||||||
|
table, then both bytes are returned to this subprogram. The
|
||||||
|
first call returns a null byte (hex 00) and the next call
|
||||||
|
returns the scan code (refer to the IBM Personal Computer
|
||||||
|
Technical Reference Manual for details of scan codes).
|
||||||
|
|
||||||
|
4. Break can be used to interrupt a running program. However,
|
||||||
|
if the program was in the middle of a call to this subprogram
|
||||||
|
at the time, nothing happens until the call on this
|
||||||
|
subprogram is satisfied by reading another character from the
|
||||||
|
keyboard. Break is not returned by this routine.
|
||||||
|
|
||||||
|
|
||||||
|
SCREEN INPUT AND OUTPUT
|
||||||
|
|
||||||
|
CALL X"B7" USING function, parameter, buffer
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
function is a PIC 99 COMP-X data item and contains a value:
|
||||||
|
|
||||||
|
0 to read characters from the screen
|
||||||
|
1 to write characters to the screen
|
||||||
|
2 to read attributes from the screen
|
||||||
|
3 to write attributes to the screen
|
||||||
|
4 to clear characters from the screen
|
||||||
|
5 to clear attributes from the screen
|
||||||
|
|
||||||
|
|
||||||
|
parameter is a group item consisting of three data items:
|
||||||
|
|
||||||
|
o a PIC 9(4) COMP-X field showing the length of the data to be
|
||||||
|
read or written.
|
||||||
|
|
||||||
|
o a PIC 9(4) COMP-X field giving the start position on the screen.
|
||||||
|
Top left is position 1, 81 is the start of the next line, etc.
|
||||||
|
|
||||||
|
o a PIC 9(4) COMP-X field showing the start position in the buffer.
|
||||||
|
The starting buffer position is 1.
|
||||||
|
|
||||||
|
buffer is the COBOL data area. It is a PIC X(n) field and may be as
|
||||||
|
large or small as you require to write your data.
|
||||||
|
|
||||||
|
An entire screen of text or attributes is 2000 bytes. No check is made
|
||||||
|
that any data to be read will fit into your buffer. Therefore, if the
|
||||||
|
length specified is greater than the length available in your buffer, any
|
||||||
|
subsequent data will be corrupted. Buffer is not used with a function of
|
||||||
|
4 or 5, but this parameter must still be supplied.
|
||||||
|
|
||||||
|
Note: When writing or clearing characters, the User attribute is imposed
|
||||||
|
on the character position, unless the User attribute flag is set
|
||||||
|
off, in which case the current Screen attribute for that character
|
||||||
|
position is used.
|
||||||
|
|
||||||
|
|
||||||
|
SCREEN CELL INPUT AND OUTPUT
|
||||||
|
|
||||||
|
CALL X"B8" using FUNCTION PARAMS CHARBUFF ATTRBUFF
|
||||||
|
|
||||||
|
where parameters are:
|
||||||
|
|
||||||
|
01 FUNCTION PIC 9(2) COMP-X
|
||||||
|
|
||||||
|
= 0 to read screen to character and attribute buffers
|
||||||
|
= 1 to write screen from character and attribute buffers
|
||||||
|
= 2 to swap screen with character and attribute buffers
|
||||||
|
|
||||||
|
01 PARAMS
|
||||||
|
03 P-LENGTH PIC 9(4) COMP-X.
|
||||||
|
03 P-SOFFSET PIC 9(4) COMP-X.
|
||||||
|
03 P-BOFFSET PIC 9(4) COMP-X.
|
||||||
|
|
||||||
|
P-LENGTH = number of screen cells to read/write/swap
|
||||||
|
P-SOFFSET = screen offset (1 = top left)
|
||||||
|
P-BOFFSET = buffer offset (1 = start of buffer)
|
||||||
|
|
||||||
|
01 CHARBUFF
|
||||||
|
03 CHARS PIC X OCCURS n TIMES
|
||||||
|
|
||||||
|
= an array of character bytes
|
||||||
|
|
||||||
|
01 ATTRBUFF
|
||||||
|
03 ATTRS PIC X OCCURS n TIMES
|
||||||
|
|
||||||
|
= an array of associated attribute bytes
|
||||||
|
|
||||||
|
|
||||||
|
TEST CONSOLE STATUS
|
||||||
|
|
||||||
|
CALL X"D9" USING parameter.
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
parameter is a PIC 99 COMP-X field and shows the status of the
|
||||||
|
console:
|
||||||
|
|
||||||
|
zero there is no character waiting to be read from the
|
||||||
|
keyboard
|
||||||
|
|
||||||
|
non-zero there is a character waiting to be read from the
|
||||||
|
keyboard
|
||||||
|
|
||||||
|
When a program is being animated in other than zoom mode, this function
|
||||||
|
always returns a zero (i.e., it never detects a character), because
|
||||||
|
ANIMATOR always looks for characters. However, the function operates
|
||||||
|
correctly when zoom mode is used.
|
||||||
|
|
||||||
|
|
||||||
|
GET SCREEN SIZE
|
||||||
|
|
||||||
|
CALL X"E3" USING no-lines, no-cols.
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
no-lines is a PIC 99 COMP-X field and shows the number of lines on
|
||||||
|
the screen.
|
||||||
|
|
||||||
|
no-cols is a PIC 99 COMP-X field and shows the number of columns on
|
||||||
|
the screen.
|
||||||
|
|
||||||
|
|
||||||
|
CLEAR SCREEN
|
||||||
|
|
||||||
|
CALL X"E4".
|
||||||
|
|
||||||
|
This routine clears the entire user screen.
|
||||||
|
|
||||||
|
|
||||||
|
MOVE THE CURSOR TO A DEFINED POSITION
|
||||||
|
|
||||||
|
CALL X"E6" USING result, parameter.
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
result is a PIC 99 COMP-X field. It is not used.
|
||||||
|
|
||||||
|
parameter is a group item consisting of two data items:
|
||||||
|
|
||||||
|
o a PIC 99 COMP-X field specifying the row number for the cursor to
|
||||||
|
be moved to; in the range 0 to 24.
|
||||||
|
|
||||||
|
o a PIC 99 COMP-X field giving the column number for the cursor to
|
||||||
|
be moved to; in the range 0 to 79.
|
||||||
|
|
||||||
|
|
||||||
|
==========================================================================
|
||||||
|
Copyright (C) 1993 Microsoft Corporation
|
||||||
|
Copyright (C) 1993 Micro Focus Ltd
|
666
Microsoft Cobol v5/DOCS/DOCUPDT.DOC
Normal file
666
Microsoft Cobol v5/DOCS/DOCUPDT.DOC
Normal file
@ -0,0 +1,666 @@
|
|||||||
|
|
||||||
|
|
||||||
|
DOCUPDT.DOC File
|
||||||
|
|
||||||
|
Documentation Update Notes for the Microsoft(R) COBOL
|
||||||
|
Professional Development System
|
||||||
|
Version 5.0
|
||||||
|
|
||||||
|
(C) Copyright Microsoft Corporation, 1993
|
||||||
|
(C) Copyright Micro Focus Ltd., 1993
|
||||||
|
|
||||||
|
|
||||||
|
This document contains essential printed documentation updates
|
||||||
|
for version 5.0 of the Microsoft COBOL Professional Development
|
||||||
|
System for MS-DOS(R) and Microsoft(R) Windows. The information
|
||||||
|
iin this document is more up-to-date than the printed documentation.
|
||||||
|
|
||||||
|
============================< CONTENTS >==================================
|
||||||
|
|
||||||
|
INTRODUCTION
|
||||||
|
|
||||||
|
GENERAL CHANGES
|
||||||
|
|
||||||
|
DOCUMENTATION CORRECTIONS
|
||||||
|
|
||||||
|
Getting Started
|
||||||
|
COBOL Programming for Windows
|
||||||
|
Compatibility Guide
|
||||||
|
Environment and Tools
|
||||||
|
Language Reference
|
||||||
|
System Reference
|
||||||
|
User Guide
|
||||||
|
|
||||||
|
=========================================================================
|
||||||
|
INTRODUCTION
|
||||||
|
============
|
||||||
|
These Documentation Update Notes detail known problems in
|
||||||
|
and additions to your COBOL manuals. You may want to mark
|
||||||
|
the changes in your manuals.
|
||||||
|
|
||||||
|
|
||||||
|
=========================================================================
|
||||||
|
GENERAL CHANGES
|
||||||
|
===============
|
||||||
|
|
||||||
|
Throughout the documentation, the term "text window" can be
|
||||||
|
interchanged with the term "default window".
|
||||||
|
|
||||||
|
=========================================================================
|
||||||
|
DOCUMENTATION CORRECTIONS
|
||||||
|
=========================
|
||||||
|
|
||||||
|
Getting Started
|
||||||
|
---------------
|
||||||
|
Chapter 3 (Configuring Your System)
|
||||||
|
o Page 17
|
||||||
|
In the "Understanding Memory Requirements" section,
|
||||||
|
replace the sentence that begins "To run CodeView,
|
||||||
|
LINK, or CVPACK ..." with the following:
|
||||||
|
|
||||||
|
"To run CodeView or CVPACK, you need one of the
|
||||||
|
following memory managers:"
|
||||||
|
|
||||||
|
o Page 17
|
||||||
|
After the bulleted list at the top of the page, add
|
||||||
|
this paragraph:
|
||||||
|
|
||||||
|
"To run LINK or a COBOL program in MS-DOS (without
|
||||||
|
Windows running) you need a DPMI or VCPI memory
|
||||||
|
manager."
|
||||||
|
|
||||||
|
COBOL Programming for Windows
|
||||||
|
-----------------------------
|
||||||
|
Chapter 4 (Building Visual Basic Applications)
|
||||||
|
o Page 32
|
||||||
|
Do not pass parameters from Visual Basic to COBOL
|
||||||
|
DLLs by value.
|
||||||
|
|
||||||
|
Compatibility Guide
|
||||||
|
-------------------
|
||||||
|
Chapter 9 (Running convert3)
|
||||||
|
o Page 79
|
||||||
|
Add the following option to the list in the section "File
|
||||||
|
Details":
|
||||||
|
|
||||||
|
5. The conversion of COMP-6 items to VS-COMP. This can be either
|
||||||
|
Y, in which case behavior is as described in the section
|
||||||
|
"COMP-6/COMPUTATIONAL-6 Data" in the chapter "Converting
|
||||||
|
RM\COBOL Data Files", or N, in which case COMP-6 items are
|
||||||
|
not converted to VS-COMP. The default setting is Y.
|
||||||
|
|
||||||
|
o Page 93
|
||||||
|
Add the following new parameter to the list in the section
|
||||||
|
"The Parameter File":
|
||||||
|
|
||||||
|
COMP6-COMP
|
||||||
|
|
||||||
|
o Page 86
|
||||||
|
Add the following after the section "The Run Parameter":
|
||||||
|
|
||||||
|
The COMP6-COMP Parameter
|
||||||
|
------------------------
|
||||||
|
The COMP6-COMP parameter allows you to specify whether or not
|
||||||
|
to convert COMP-6 items to VS-COMP. The parameter has the
|
||||||
|
following format:
|
||||||
|
|
||||||
|
COMP6-COMP Y/N
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
Y gives behavior as described in the section
|
||||||
|
"COMP-6/COMPUTATIONAL-6 Data" in the chapter "Converting
|
||||||
|
RM\COBOL Data Files"
|
||||||
|
|
||||||
|
N means COMP-6 items are not converted to VS-COMP.
|
||||||
|
|
||||||
|
The default is Y.
|
||||||
|
|
||||||
|
Environment and Tools
|
||||||
|
---------------------
|
||||||
|
Chapter 5 (Advanced PWB Techniques)
|
||||||
|
o Page 82
|
||||||
|
In the "Using Regular Expressions" section, after the
|
||||||
|
second paragraph, add this note:
|
||||||
|
|
||||||
|
Note: When using regular expressions in the PWB
|
||||||
|
Find or Replace dialog boxes, you must select the
|
||||||
|
Regular Expression check box.
|
||||||
|
|
||||||
|
o Page 86
|
||||||
|
Under the procedure heading "> To create a batch file
|
||||||
|
that copies the COBOL files to a subdirectory:", in
|
||||||
|
step number 4, change the regular expression:
|
||||||
|
|
||||||
|
^\([^ ]+\)[ ]+\([^ ]+\).*
|
||||||
|
|
||||||
|
to look like this:
|
||||||
|
|
||||||
|
\([^ #]+\)[# ]+\([^ #]+\).*$
|
||||||
|
|
||||||
|
The pound signs (#) represent the key combination:
|
||||||
|
|
||||||
|
Ctrl-P, Tab
|
||||||
|
|
||||||
|
which will appear as a diamond in PWB.
|
||||||
|
|
||||||
|
Chapter 8 (Getting Started with CodeView)
|
||||||
|
o Page 304
|
||||||
|
In the example on this page, replace the two EVAL example
|
||||||
|
statements with the following:
|
||||||
|
|
||||||
|
Eval:C:\C700\DLL\EEDICAN.DLL .C .ABC .ASM .H .CPP
|
||||||
|
Eval:C:\COBOL\BIN\EEDLCOB.DLL .CBL .CPY .CBI .COB
|
||||||
|
|
||||||
|
Chapter 10 (Using Expressions in CodeView)
|
||||||
|
o Page 349
|
||||||
|
In the "Conditional expression" bulleted item, change
|
||||||
|
this phrase "...linked by a relationship operator." to:
|
||||||
|
|
||||||
|
"...linked by a relational operator."
|
||||||
|
|
||||||
|
Chapter 11 (CodeView Reference)
|
||||||
|
o Page 386
|
||||||
|
Add the following sentence to the description of the
|
||||||
|
[=]<expression> parameter in the R(Register) command:
|
||||||
|
|
||||||
|
The <expression> must result in a non-edited
|
||||||
|
numeric value.
|
||||||
|
|
||||||
|
o Page 386
|
||||||
|
Add the following paragraph to the end of the
|
||||||
|
"Description" section of the R(Register) command:
|
||||||
|
|
||||||
|
If the <expression> is relational and its result is
|
||||||
|
TRUE, the value 1 is moved into the register. If the
|
||||||
|
<expression> is false, a 0 is moved.
|
||||||
|
|
||||||
|
o Page 389
|
||||||
|
In the table for the X(Examine Symbols) command, only the
|
||||||
|
M & P scopes are relevant to COBOL. The other scopes
|
||||||
|
do not apply because of the nature of the COBOL language.
|
||||||
|
|
||||||
|
Language Reference
|
||||||
|
------------------
|
||||||
|
Volume 1, Chapter 2 (COBOL Concepts)
|
||||||
|
o Page 77
|
||||||
|
Under the "Continuation of Lines" section in the second
|
||||||
|
paragraph, the last sentence says:
|
||||||
|
|
||||||
|
"Area A of a continuation line must be blank."
|
||||||
|
|
||||||
|
This ANSI '85 restriction is NOT enforced by COBOL 5.0.
|
||||||
|
|
||||||
|
Volume 1, Chapter 3 (The Nucleus)
|
||||||
|
o Page 265
|
||||||
|
Add the following as General Rule 5 of the ENTRY statement:
|
||||||
|
|
||||||
|
The BY REFERENCE and BY VALUE phrases are transitive
|
||||||
|
across the parameters which follow them until another
|
||||||
|
BY REFERENCE or BY VALUE phrase is encountered.
|
||||||
|
|
||||||
|
If no BY REFERENCE or BY VALUE phrase is specified
|
||||||
|
prior to the first parameter, the BY REFERENCE phrase
|
||||||
|
is assumed.
|
||||||
|
|
||||||
|
o Page 277
|
||||||
|
Replace syntax rule 9 of the EXIT statement with the
|
||||||
|
following:
|
||||||
|
|
||||||
|
Data-name-1 must be specified in the Working Storage
|
||||||
|
Section.
|
||||||
|
|
||||||
|
|
||||||
|
System Reference
|
||||||
|
----------------
|
||||||
|
Chapter 2 (ADIS)
|
||||||
|
o Pages 40 and 41
|
||||||
|
In the example that starts at the end of page 40
|
||||||
|
and continues to the top of page 41, change the
|
||||||
|
following:
|
||||||
|
|
||||||
|
Change: move "a" to first-data-key
|
||||||
|
to: move "A" to first-data-key
|
||||||
|
|
||||||
|
Change: display "a pressed"
|
||||||
|
to: display "A pressed"
|
||||||
|
|
||||||
|
Change: display "b pressed"
|
||||||
|
to: display "B pressed"
|
||||||
|
|
||||||
|
Change: display "z pressed"
|
||||||
|
to: display "Z pressed"
|
||||||
|
|
||||||
|
Chapter 4 (Animator)
|
||||||
|
o Page 77
|
||||||
|
At the top of the page, in the first full paragraph,
|
||||||
|
delete this sentence:
|
||||||
|
|
||||||
|
For information on compiling and linking
|
||||||
|
Windows-based applications for debugging with
|
||||||
|
Animator, refer to the COBOL Programming for
|
||||||
|
Windows.
|
||||||
|
|
||||||
|
Chapter 5 (COBOL File Handling)
|
||||||
|
o Page 128
|
||||||
|
In the section "File Compression", before the subheading
|
||||||
|
"Key Compression" insert an extra paragraph:
|
||||||
|
|
||||||
|
The final $SET DATACOMPRESS and $SET KEYCOMPRESS
|
||||||
|
statements in a source file set the type of data
|
||||||
|
and key compression used for all files in that
|
||||||
|
program, unless subsequent settings are explicitly
|
||||||
|
stated for each file.
|
||||||
|
|
||||||
|
o Page 129
|
||||||
|
In the section "Data Compression", 2nd paragraph, delete
|
||||||
|
the sentence:
|
||||||
|
|
||||||
|
However, since variable-structure files take more
|
||||||
|
space than fixed structure files, there are certain
|
||||||
|
cases in which a bigger file may result.
|
||||||
|
|
||||||
|
|
||||||
|
o Page 130
|
||||||
|
In the first line of the example program at the top of
|
||||||
|
the page, change "$set datacompress" to:
|
||||||
|
|
||||||
|
"$set datacompress"1" CALLFH"
|
||||||
|
|
||||||
|
o Page 131
|
||||||
|
In the section "The XFH2BTR Call Converter", replace the
|
||||||
|
sentence that begins "The XFH2BTR call converter is
|
||||||
|
compatible with ..." with the following text:
|
||||||
|
|
||||||
|
The XFH2BTR call converter is compatible with
|
||||||
|
versions of Btrieve 5.10 and above on the following
|
||||||
|
platforms:
|
||||||
|
|
||||||
|
o Page 132
|
||||||
|
In the section "The XFH2BTR Call Converter", after the
|
||||||
|
paragraph that starts "When the converter needs to
|
||||||
|
call ....." and ends "...with Extended Memory Manager (XM)."
|
||||||
|
add the following:
|
||||||
|
|
||||||
|
Note: You can call the module _BTRV direct from
|
||||||
|
a COBOL program using the same parameters that are
|
||||||
|
used in Btrieve API calls. However, the "key buffer"
|
||||||
|
parameter must be at least 255 bytes long.
|
||||||
|
|
||||||
|
o Page 133
|
||||||
|
In the section "The Filetype Compiler Directive."
|
||||||
|
When using Btrieve to access information on a server,
|
||||||
|
if the current working drive is not mapped to the server
|
||||||
|
that you are using, the file specification must include
|
||||||
|
the server path (drive letter).
|
||||||
|
|
||||||
|
For example: If the current working drive is C and the
|
||||||
|
server drive is F, then the "select" statement on page
|
||||||
|
133 of the System Reference would look like this:
|
||||||
|
|
||||||
|
select testfile-1 assign to "f:\test-1.dat"
|
||||||
|
|
||||||
|
Chapter 7 (Compiler)
|
||||||
|
o Page 166
|
||||||
|
In the section "Redirection of Compiler Output", add the
|
||||||
|
following:
|
||||||
|
|
||||||
|
You cannot redirect compiler output under Windows
|
||||||
|
environments.
|
||||||
|
|
||||||
|
o Page 167
|
||||||
|
In the section "Error Codes Returned by the Compiler", add
|
||||||
|
the following.
|
||||||
|
|
||||||
|
The compiler cannot be invoked from within a batch
|
||||||
|
file under Windows; therefore, ERRORLEVEL information
|
||||||
|
cannot be retrieved.
|
||||||
|
|
||||||
|
Chapter 9 (H2CPY)
|
||||||
|
o Page 184
|
||||||
|
Do not use H2CPY on WINDOWS.H. The WINDOWS.78 and
|
||||||
|
WINDOWS.CPY files are provided in \cobol\samples\windows
|
||||||
|
as correct conversions of WINDOWS.H.
|
||||||
|
|
||||||
|
o Page 184
|
||||||
|
Add the following new H2CPY options:
|
||||||
|
|
||||||
|
/16 Specifies a 16-bit run-time system and causes INT data
|
||||||
|
items to be translated to:
|
||||||
|
|
||||||
|
PIC S9(sz) COMP-5
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
sz is a level 78 item defined at the top of the
|
||||||
|
resultant COPY-files. The following conditional
|
||||||
|
compilation construct is used, thereby making the
|
||||||
|
value of sz 4.
|
||||||
|
|
||||||
|
$IF 32BIT DEFINED
|
||||||
|
78 SZ VALUE 9.
|
||||||
|
$ELSE
|
||||||
|
78 SZ VALUE 4.
|
||||||
|
$END
|
||||||
|
|
||||||
|
You can change this conditional compilation construct if
|
||||||
|
you want to change the value of sz.
|
||||||
|
|
||||||
|
If this option (or the /32 option) is not explicitly
|
||||||
|
specified, then by default H2CPY translates INT data
|
||||||
|
items to PIC S9(4) COMP-5.
|
||||||
|
|
||||||
|
When the multiple-files option (/M) is used in
|
||||||
|
conjunction with this option, all files, apart from the
|
||||||
|
.78 file, will contain the conditional compilation
|
||||||
|
construct at the top of the file.
|
||||||
|
|
||||||
|
o Page 185
|
||||||
|
Insert the following immediately before the section
|
||||||
|
"Converting C Statements":
|
||||||
|
|
||||||
|
Split78
|
||||||
|
-------
|
||||||
|
|
||||||
|
Having run H2CPY against a C header file containing just #define
|
||||||
|
statements, you can split that file into a set of separate files
|
||||||
|
using split78. Each of the output files contains all the level
|
||||||
|
78-items pertaining to a particular prefix.
|
||||||
|
|
||||||
|
Split78 is invoked from the command line as follows:
|
||||||
|
|
||||||
|
split78 <inputfile>
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
<inputfile> is a COBOL COPY-file containing only 78-level
|
||||||
|
items.
|
||||||
|
|
||||||
|
Split78 creates output files with name <prefix>.78 where <prefix>
|
||||||
|
is the prefix (up to the first hyphen) used on the name of a
|
||||||
|
78-level items. Every item with the same prefix is placed into
|
||||||
|
the COPY-file with that prefix as its name.
|
||||||
|
|
||||||
|
When you run split78, if an output file already exists, new items
|
||||||
|
are simply added to the end of it. Hence, if you run split78
|
||||||
|
twice on the same copy file, each output file will contain
|
||||||
|
duplicate 78-level items. To avoid accidents, split78 will ask
|
||||||
|
you to confirm that no .78 files exist in the current directory
|
||||||
|
when you invoke it."
|
||||||
|
|
||||||
|
Chapter 10 (Integrated Preprocessor)
|
||||||
|
o Page 206
|
||||||
|
In the section "Specification of the Example
|
||||||
|
Preprocessors", replace the bullet that begins "CPY is
|
||||||
|
treated by the preprocessor..." with the following:
|
||||||
|
|
||||||
|
CPY is converted to COPY, and thus expanded by the Checker.
|
||||||
|
COPY is expanded by the preprocessor.
|
||||||
|
|
||||||
|
Chapter 12 (Library Routines)
|
||||||
|
o Page 223
|
||||||
|
Add the following paragraphs before the Note:
|
||||||
|
|
||||||
|
To guarantee portability of programs using CBL_ routines, you
|
||||||
|
must ensure that the routine names are coded in upper case in
|
||||||
|
your program. Calls to all other routines must be coded as
|
||||||
|
documented - this will generally be in upper case, but there are
|
||||||
|
some case-sensitive exceptions
|
||||||
|
|
||||||
|
o Page 223-224
|
||||||
|
In the table indicating the portability of call-by-name
|
||||||
|
routines, delete the asterisk (*) from the LCOBOL
|
||||||
|
column in the entries for the following routines:
|
||||||
|
|
||||||
|
- CBL_COPY_FILE
|
||||||
|
- CBL_LOCATE_FILE
|
||||||
|
|
||||||
|
o Page 230
|
||||||
|
Do NOT use the mouse support Library Routine
|
||||||
|
CBL_TERM_MOUSE under PWB for builds using Shared Runtime
|
||||||
|
System (this call is handled by the runtime system).
|
||||||
|
Use of this call under PWB may cause your system to hang..
|
||||||
|
|
||||||
|
o Page 235
|
||||||
|
The parameter list for the call-by-name function
|
||||||
|
CBL_ALLOC_MEM is incorrect and should include the
|
||||||
|
parameter RETURNING status-code. If this parameter is
|
||||||
|
not used, the special register RETURN-CODE contains
|
||||||
|
the return value.
|
||||||
|
|
||||||
|
o Page 236
|
||||||
|
Add the following for CBL_ALLOC_MEM:
|
||||||
|
|
||||||
|
The CBL_ALLOC_MEM routine is limited to allocating
|
||||||
|
memory up to 65531 bytes.
|
||||||
|
|
||||||
|
o Page 244
|
||||||
|
In the CBL_EXIT_PROC section, under the "Parameters:"
|
||||||
|
heading in the second column, change "USAGE PROCEDURE
|
||||||
|
POINTER" to:
|
||||||
|
|
||||||
|
"USAGE PROCEDURE-POINTER"
|
||||||
|
|
||||||
|
o Page 249
|
||||||
|
In the description of the CBL_GET_OS_INFO routine, change
|
||||||
|
the definition of the parameter-size variable from:
|
||||||
|
|
||||||
|
parameter-size PIC X(2) COMP-X VALUE 13.
|
||||||
|
|
||||||
|
to:
|
||||||
|
|
||||||
|
parameter-size PIC X(2) COMP-X VALUE 14.
|
||||||
|
|
||||||
|
o Page 307
|
||||||
|
In the routine CALL x"A7", replace the word "SACE"
|
||||||
|
in this sentence:
|
||||||
|
|
||||||
|
DISPLAY SACE UPON CRT clears the screen ...
|
||||||
|
|
||||||
|
with the word "SPACE".
|
||||||
|
|
||||||
|
|
||||||
|
Chapter 14 (Linking and Library Management)
|
||||||
|
o Page 322
|
||||||
|
The library "CBLWINAP" is referred to twice on this
|
||||||
|
page, with reference to Windows applications that
|
||||||
|
perform floating point operations. This should
|
||||||
|
read "CBLWINAF."
|
||||||
|
|
||||||
|
o Page 335
|
||||||
|
Add the following new section
|
||||||
|
|
||||||
|
COBOL Object Modules and Libraries
|
||||||
|
----------------------------------
|
||||||
|
It is possible to create libraries that contain COBOL
|
||||||
|
programs; that is, COBOL .OBJ files. If you use
|
||||||
|
libraries that contain COBOL programs, then all calls
|
||||||
|
to those programs within the library must be static
|
||||||
|
linked. It is not possible to use the soft or dynamic
|
||||||
|
linking methods described earlier in this chapter. Thus,
|
||||||
|
you cannot put into a library any run-time system support
|
||||||
|
modules which are dynamically called by the RTS
|
||||||
|
(such as ADIS or EXTFH).
|
||||||
|
|
||||||
|
Chapter 20 (XM)
|
||||||
|
o Page 445
|
||||||
|
In the last sentence of the first paragraph in the
|
||||||
|
"Overview" section, change "To use XM you need at
|
||||||
|
least 1.5 megabytes (1.5 MB) of memory." to:
|
||||||
|
|
||||||
|
"To use XM you need at least 1.5 megabytes
|
||||||
|
(1.5 MB) of extended memory."
|
||||||
|
|
||||||
|
o Page 448
|
||||||
|
In the "Operation" section, at the end of the second
|
||||||
|
paragraph, add this note:
|
||||||
|
|
||||||
|
Note: When running in a Windows DOS box, XM gets
|
||||||
|
memory from the DPMI host and consequently does not
|
||||||
|
use XMS memory. For this reason, BIOS/clone-specific
|
||||||
|
issues are not relevant when running XM in a
|
||||||
|
Windows DOS box.
|
||||||
|
|
||||||
|
Appendix D (Directives for Compiler)
|
||||||
|
o Page 523
|
||||||
|
Add this sentence to the CALLFH directive description:
|
||||||
|
|
||||||
|
Also used to get a program to make calls to a
|
||||||
|
converter such as XFH2BTR or other file handlers.
|
||||||
|
|
||||||
|
o Make the following minor changes to the existing descriptions
|
||||||
|
of directives:
|
||||||
|
|
||||||
|
PAGE CHANGE
|
||||||
|
---- ---------------------------------------------------------
|
||||||
|
513 the default for the ADV directive is NOADV.
|
||||||
|
537 DETECTLOCK can be spelled with a hyphen, thus: DETECT-LOCK
|
||||||
|
552 HIDEMESSAGE can be spelled with a hyphen, thus: HIDE-MESSAGE
|
||||||
|
561 the default for the LISTWIDTH directive is LISTWIDTH "80"
|
||||||
|
596 SETTING directive can be spelled as SETTINGS
|
||||||
|
611 WARNING can be spelled as WARNINGS
|
||||||
|
612 WRITELOCK can be spelled with a hyphen, thus: WRITE-LOCK
|
||||||
|
|
||||||
|
o Page 554
|
||||||
|
In the description of the IBMCOMP directive, remove the
|
||||||
|
paragraph that begins "When you query a data item ...".
|
||||||
|
|
||||||
|
o Page 554
|
||||||
|
In the description of the IBMCOMP directive, replace each
|
||||||
|
occurrence of "USAGE COMP" with "USAGE COMP or USAGE COMP-5".
|
||||||
|
|
||||||
|
o Page 560
|
||||||
|
Change the $SET entry for the LIST directive from:
|
||||||
|
|
||||||
|
Initial
|
||||||
|
|
||||||
|
to:
|
||||||
|
|
||||||
|
None (for LIST "" and LIST "file-name")
|
||||||
|
Any (for LIST and NOLIST)
|
||||||
|
|
||||||
|
o Page 588
|
||||||
|
Add the following text to the description of the REGPARM
|
||||||
|
directive:
|
||||||
|
|
||||||
|
The BP register is saved over calls, thereby better
|
||||||
|
emulating other COBOL compilers' call conventions.
|
||||||
|
|
||||||
|
o Page 598
|
||||||
|
Add the following text to the description of the
|
||||||
|
SIGNCOMPARE directive:
|
||||||
|
|
||||||
|
Comparisons with COMP-3 items with illegal sign nibbles
|
||||||
|
(such as those produced by redefining the item) are allowed.
|
||||||
|
|
||||||
|
o Page 611
|
||||||
|
In the description of the VSC2 directive, change the line
|
||||||
|
describing the effect of specifying integer as 3 from:
|
||||||
|
|
||||||
|
3 VS COBOL II release 3.x (when compiled with its CMPR2
|
||||||
|
directive)
|
||||||
|
|
||||||
|
to:
|
||||||
|
|
||||||
|
3 VS COBOL II release 3.x (when compiled with its NOCMPR2
|
||||||
|
directive)
|
||||||
|
|
||||||
|
o Page 611
|
||||||
|
In the description of the VSC2 directive, add the
|
||||||
|
following to the list of possible values for integer:
|
||||||
|
|
||||||
|
4 Synonymous with VSC2"3"
|
||||||
|
|
||||||
|
o Page 613
|
||||||
|
Replace the existing description of XOPEN with the
|
||||||
|
following:
|
||||||
|
|
||||||
|
XOPEN
|
||||||
|
|
||||||
|
Specifies that words reserved under the X/Open definition of
|
||||||
|
COBOL are to be treated as reserved words.
|
||||||
|
|
||||||
|
Syntax:
|
||||||
|
|
||||||
|
>>-------------------XOPEN---"level"----------------><
|
||||||
|
| | | |
|
||||||
|
--/-- ---------XOPEN-----------------
|
||||||
|
| |
|
||||||
|
--NO--
|
||||||
|
|
||||||
|
Parameters:
|
||||||
|
|
||||||
|
level Must be 3 or 4. The level of X/Open
|
||||||
|
definition COBOL to be compatible with.
|
||||||
|
|
||||||
|
Default: NOXOPEN
|
||||||
|
|
||||||
|
Phase: Syntax check
|
||||||
|
|
||||||
|
$SET: Initial
|
||||||
|
|
||||||
|
The possible values of level are:
|
||||||
|
|
||||||
|
3 Compatible with X/Open Portability Guide 1988 (XPG-3)
|
||||||
|
4 Compatible with X/Open CAE Specification (XPG-4)
|
||||||
|
|
||||||
|
Specifying XOPEN with no parameter is the same as specifying
|
||||||
|
XOPEN "4". Note that XPG-4 specifies options for several
|
||||||
|
environments. If available, the options available are as follows:
|
||||||
|
|
||||||
|
o Single Byte Internationalization Support is enabled using the
|
||||||
|
NLS directive
|
||||||
|
|
||||||
|
See also NLS directive.
|
||||||
|
|
||||||
|
|
||||||
|
User Guide
|
||||||
|
----------
|
||||||
|
Chapter 2 (Developing COBOL Applications)
|
||||||
|
o Page 20
|
||||||
|
In the "Examples" section, change "XM MYPROG.EXE, NEWPROG"
|
||||||
|
to:
|
||||||
|
|
||||||
|
"XB MYPROG.EXE, NEWPROG"
|
||||||
|
|
||||||
|
Chapter 6 (Interfacing and Mixed Language Programming)
|
||||||
|
o Page 75
|
||||||
|
Add the following additional bullet to the end of the
|
||||||
|
section which begins with the sentence "Microsoft C
|
||||||
|
version 6.0, C/C++ version 7.0, and Fortran V5.1 are
|
||||||
|
all compatible ...":
|
||||||
|
|
||||||
|
When calling a nonCOBOL subprogram using an
|
||||||
|
entry-point name starting with an underscore (_)
|
||||||
|
the actual name must be coded as part of the
|
||||||
|
call so that the compiler can determine the
|
||||||
|
type of program being called and create the
|
||||||
|
correct code. Consequently, you cannot use such
|
||||||
|
a name in a procedure-pointer.
|
||||||
|
|
||||||
|
For example you can code:
|
||||||
|
|
||||||
|
procedure division.
|
||||||
|
call "_CPROG"
|
||||||
|
|
||||||
|
but you cannot code:
|
||||||
|
|
||||||
|
01 func usage procedure-pointer.
|
||||||
|
procedure division.
|
||||||
|
set func to entry "_CPROG"
|
||||||
|
call func.
|
||||||
|
|
||||||
|
o Page 78
|
||||||
|
Add the following restriction.
|
||||||
|
|
||||||
|
The following Microsoft C graphics library routines are
|
||||||
|
incompatible with this COBOL system and should not be called.
|
||||||
|
|
||||||
|
- _outtext
|
||||||
|
- _outmem
|
||||||
|
- _floodfill
|
||||||
|
- any routine that uses floodfill where you specify
|
||||||
|
the _GFILLINTERIOR option, namely _ellipse and _pie
|
||||||
|
|
||||||
|
|
||||||
|
|
217
Microsoft Cobol v5/DOCS/MSD.DOC
Normal file
217
Microsoft Cobol v5/DOCS/MSD.DOC
Normal file
@ -0,0 +1,217 @@
|
|||||||
|
MICROSOFT DIAGNOSTICS (MSD) UTILITY
|
||||||
|
===================================
|
||||||
|
|
||||||
|
--------------------------------------------------------------------
|
||||||
|
| INFORMATION PROVIDED IN THIS DOCUMENT AND ANY SOFTWARE THAT MAY |
|
||||||
|
| ACCOMPANY THIS DOCUMENT (collectively referred to as an |
|
||||||
|
| Application Note) IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY |
|
||||||
|
| KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO |
|
||||||
|
| THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A |
|
||||||
|
| PARTICULAR PURPOSE. The user assumes the entire risk as to the |
|
||||||
|
| accuracy and the use of this Application Note. This Application |
|
||||||
|
| Note may be copied and distributed subject to the following |
|
||||||
|
| conditions: 1) All text must be copied without modification and |
|
||||||
|
| all pages must be included; 2) If software is included, all files |
|
||||||
|
| on the disk(s) must be copied without modification (the DOS |
|
||||||
|
| utility DISKCOPY is appropriate for this purpose); 3) All |
|
||||||
|
| components of this Application Note must be distributed together; |
|
||||||
|
| and 4) This Application Note may not be distributed for profit. |
|
||||||
|
| |
|
||||||
|
| Copyright 1990 Microsoft Corporation. All Rights Reserved. |
|
||||||
|
| Microsoft and the Microsoft logo are registered trademarks of |
|
||||||
|
| Microsoft Corporation. |
|
||||||
|
--------------------------------------------------------------------
|
||||||
|
|
||||||
|
The Microsoft Diagnostics (MSD) utility is designed to assist
|
||||||
|
Microsoft customers and Product Support Services (PSS) technicians in
|
||||||
|
identifying system configuration information such as the BIOS and
|
||||||
|
video card type and manufacturer, processor(s) installed, I/O port
|
||||||
|
status, operating system version, environment settings, hardware
|
||||||
|
devices attached, and additional software running concurrently with
|
||||||
|
MSD. This utility is used when Microsoft PSS needs information to
|
||||||
|
diagnose and solve problems with Microsoft products.
|
||||||
|
|
||||||
|
|
||||||
|
INSTALLATION
|
||||||
|
============
|
||||||
|
|
||||||
|
Hard Disk System
|
||||||
|
----------------
|
||||||
|
|
||||||
|
To install MSD on a hard disk system, do the following:
|
||||||
|
|
||||||
|
1. Place the enclosed disk in drive A.
|
||||||
|
|
||||||
|
2. At the DOS prompt, type the following and press the ENTER key
|
||||||
|
|
||||||
|
copy a:\msd.exe <pathname>
|
||||||
|
|
||||||
|
where <pathname> is the location of your root directory. For
|
||||||
|
example, type the following and press the ENTER key:
|
||||||
|
|
||||||
|
copy a:\msd.exe c:\
|
||||||
|
|
||||||
|
Dual Floppy Disk System
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
To install MSD on a dual floppy disk system, do the following:
|
||||||
|
|
||||||
|
1. Place your DOS boot disk (system disk) in drive A and the enclosed
|
||||||
|
Microsoft Diagnostics (MSD) Utility disk in drive B.
|
||||||
|
|
||||||
|
2. At the DOS prompt, type the following and press the ENTER key:
|
||||||
|
|
||||||
|
copy b:\msd.exe a:
|
||||||
|
|
||||||
|
|
||||||
|
USING THE MICROSOFT DIAGNOSTICS UTILITY
|
||||||
|
=======================================
|
||||||
|
|
||||||
|
The MSD utility (MSD.EXE) runs in DOS and in a Windows DOS Box. To
|
||||||
|
start MSD, do the following:
|
||||||
|
|
||||||
|
1. At the DOS prompt, change to the root directory (where you
|
||||||
|
installed MSD.EXE).
|
||||||
|
|
||||||
|
2. Type "msd" (without the quotation marks) and press the ENTER key.
|
||||||
|
(For monochrome, black-and-white, and LCD screens, type "msd /b"
|
||||||
|
and press ENTER.)
|
||||||
|
|
||||||
|
3. The program presents an introduction screen. To continue, press any
|
||||||
|
key.
|
||||||
|
|
||||||
|
MSD then presents a Main Menu screen split into two sections. The
|
||||||
|
upper section presents a summary of information that the utility has
|
||||||
|
gathered from your system. For additional information on any category,
|
||||||
|
move the highlight bar (using the arrow keys) to any category and
|
||||||
|
press the ENTER key. A dialog box appears that presents detailed
|
||||||
|
information for that category. You can quickly choose any category by
|
||||||
|
pressing the ALT key and the highlighted letter corresponding to the
|
||||||
|
category you want. Return to the Main Menu screen by pressing the ESC
|
||||||
|
key.
|
||||||
|
|
||||||
|
The following is a brief explanation of the categories in the first
|
||||||
|
section:
|
||||||
|
|
||||||
|
Category Description
|
||||||
|
-------- -----------
|
||||||
|
|
||||||
|
BIOS Displays the BIOS manufacturer, date, version,
|
||||||
|
and type
|
||||||
|
|
||||||
|
Processor Displays the processor type and math
|
||||||
|
coprocessor, if installed
|
||||||
|
|
||||||
|
Memory Displays a map of physical memory from 768K to
|
||||||
|
1 MB and information concerning the
|
||||||
|
configuration of RAM and ROM in your computer
|
||||||
|
system
|
||||||
|
|
||||||
|
Video Shows your video card's manufacturer and
|
||||||
|
model, BIOS version, memory, and current video
|
||||||
|
mode
|
||||||
|
|
||||||
|
Network Detects whether a network is MS-NET or
|
||||||
|
compatible, or Novell
|
||||||
|
|
||||||
|
Mouse Shows the DOS mouse driver version number,
|
||||||
|
mouse type, and other information concerning
|
||||||
|
the mouse
|
||||||
|
|
||||||
|
Game Adapter Dynamically displays game card status for up
|
||||||
|
to two game devices or joysticks
|
||||||
|
|
||||||
|
CD-ROM Displays the Microsoft CD-ROM Extensions
|
||||||
|
(MSCDEX.EXE) version number and drive letter
|
||||||
|
|
||||||
|
Operating System Displays the operating system version number
|
||||||
|
and path from which MSD was run
|
||||||
|
|
||||||
|
Parallel Ports Dynamically displays the status of installed
|
||||||
|
parallel ports and their port addresses
|
||||||
|
|
||||||
|
Serial Ports Dynamically displays the status of active
|
||||||
|
serial ports and their current configurations
|
||||||
|
|
||||||
|
Disk Drives Scans all local and logical drives and
|
||||||
|
displays the total and available bytes
|
||||||
|
|
||||||
|
IRQ Status Shows the current hardware interrupt, IRQ,
|
||||||
|
status
|
||||||
|
|
||||||
|
Environment Displays environment variables
|
||||||
|
|
||||||
|
AUTOEXEC.BAT Lists the AUTOEXEC.BAT file
|
||||||
|
|
||||||
|
CONFIG.SYS Lists the CONFIG.SYS file
|
||||||
|
|
||||||
|
The lower section of the MSD screen includes additional functions you
|
||||||
|
can use with your system, as follows:
|
||||||
|
|
||||||
|
Function Description
|
||||||
|
-------- -----------
|
||||||
|
|
||||||
|
Resident Programs Displays the names of programs loaded in RAM
|
||||||
|
at the time MSD was executed, their locations,
|
||||||
|
and their sizes; programs may be loaded into
|
||||||
|
multiple segments of RAM and have multiple
|
||||||
|
entries in the table
|
||||||
|
|
||||||
|
Device Table Displays software and hardware device drivers
|
||||||
|
installed; these include default devices, such
|
||||||
|
as COM1 or LPT1, and user-installed devices
|
||||||
|
loaded from the CONFIG.SYS file, such as
|
||||||
|
HIMEM.SYS or EMM386.SYS
|
||||||
|
|
||||||
|
Printer Test Prints a page to test the connection between
|
||||||
|
the computer and either a TTY or PostScript-
|
||||||
|
type printer
|
||||||
|
|
||||||
|
Generate Report Prints a "faxable" report to a normal TTY
|
||||||
|
printer or to a file
|
||||||
|
|
||||||
|
File Viewer Views text files by entering the path and
|
||||||
|
filename
|
||||||
|
|
||||||
|
Memory Browser Searches selected ROM and RAM areas for search
|
||||||
|
strings such as "Copyright" and "Version"
|
||||||
|
|
||||||
|
About Displays MSD version number and copyright
|
||||||
|
information
|
||||||
|
|
||||||
|
Exit Exits MSD
|
||||||
|
|
||||||
|
|
||||||
|
USES FOR THE MICROSOFT DIAGNOSTICS UTILITY
|
||||||
|
==========================================
|
||||||
|
|
||||||
|
The Microsoft Diagnostics utility is designed to be used in one of
|
||||||
|
three ways:
|
||||||
|
|
||||||
|
1. Over the telephone, you can report the information MSD displays to
|
||||||
|
the Microsoft PSS technician assisting you in solving the problem
|
||||||
|
you are experiencing.
|
||||||
|
|
||||||
|
2. You can fax or mail Microsoft PSS a report generated by MSD. The
|
||||||
|
Generate Reports feature will print the information to any TTY
|
||||||
|
printer. Be sure to send the report to the attention of the
|
||||||
|
technician assisting you.
|
||||||
|
|
||||||
|
The mailing address is below. Microsoft's fax number is
|
||||||
|
(206) 883-8101. Include the following attention line on the fax
|
||||||
|
cover sheet:
|
||||||
|
|
||||||
|
ATTN: PSS, <technician's name, building, group>
|
||||||
|
|
||||||
|
3. You can send us a report file generated by MSD. The Generate
|
||||||
|
Reports feature will print a configuration report to a file. You
|
||||||
|
can copy this file to a floppy disk and send it to the technician
|
||||||
|
helping you or send the file electronically by modem.
|
||||||
|
|
||||||
|
Microsoft's mailing address is as follows:
|
||||||
|
|
||||||
|
ATTN: Product Support Services
|
||||||
|
<Technician's name, building, group>
|
||||||
|
Microsoft Corp.
|
||||||
|
One Microsoft Way
|
||||||
|
Redmond, WA 98052-6399
|
695
Microsoft Cobol v5/DOCS/PACKING.LST
Normal file
695
Microsoft Cobol v5/DOCS/PACKING.LST
Normal file
@ -0,0 +1,695 @@
|
|||||||
|
|
||||||
|
Microsoft COBOL Professional Development System, Version 5.0
|
||||||
|
|
||||||
|
Product Contents Checklist
|
||||||
|
|
||||||
|
(C) Copyright Microsoft Corporation, 1993
|
||||||
|
|
||||||
|
|
||||||
|
Contents
|
||||||
|
--------
|
||||||
|
Introduction
|
||||||
|
Documentation
|
||||||
|
Diskettes
|
||||||
|
Description of Components
|
||||||
|
Description of Files
|
||||||
|
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
------------
|
||||||
|
This document describes the contents of the Microsoft COBOL package,
|
||||||
|
including documentation, diskettes and diskette contents.
|
||||||
|
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
-------------
|
||||||
|
The following documentation pieces are provided with the COBOL software
|
||||||
|
package.
|
||||||
|
|
||||||
|
Getting Started
|
||||||
|
Language Reference (Volumes 1 and 2)
|
||||||
|
Error Messages
|
||||||
|
Compatibility Guide
|
||||||
|
COBOL System Reference
|
||||||
|
Environment and Tools
|
||||||
|
COBOL Programming for Windows
|
||||||
|
|
||||||
|
The following additional documents appear as ASCII text files on the
|
||||||
|
diskettes.
|
||||||
|
|
||||||
|
PACKING.LST - List of documents and files included in this package.
|
||||||
|
README.DOC - Essential information for this release.
|
||||||
|
DOCUPDT.DOC - Documentation update notes for this release.
|
||||||
|
CBL-CMPT.DOC - Lists differences between Microsoft COBOL 5.0 and
|
||||||
|
earlier releases.
|
||||||
|
SAMPLES.TXT - Descriptions of how to compile and link sample
|
||||||
|
programs in the \COBOL\SAMPLES directory.
|
||||||
|
|
||||||
|
These can be viewed from within SETUP, the installation program, or using
|
||||||
|
the operating system command, TYPE, or any ASCII text file editor or
|
||||||
|
listing utility.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Diskettes
|
||||||
|
---------
|
||||||
|
Your COBOL software package includes a set of either High density 5.25"
|
||||||
|
diskettes or High density 3.5" diskettes. Low density 3.5" diskettes are
|
||||||
|
available on request.
|
||||||
|
|
||||||
|
The contents of each disk are listed below for each disk format. Note that
|
||||||
|
files with an "@" character at the start of the extension are compressed
|
||||||
|
and require PKUNZIP to load them. In general, the name of the compressed
|
||||||
|
file is the same as the uncompressed file except that the first character
|
||||||
|
of the extension is replaced by "@".
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
High density 5.25 inch disk layout
|
||||||
|
|
||||||
|
Disk 1 / SETUP
|
||||||
|
ADDWPROG.EXE CBL-CMPT.DOC CHECK.@BR COBLIB.@LE
|
||||||
|
COBOL.INI DOCUPDT.@OC GENERATE.@BR HELPADCF.@BR
|
||||||
|
PACKING.LST PKUNZIP.EXE README.DOC
|
||||||
|
SETUP.EXE UTILS.@BR
|
||||||
|
|
||||||
|
|
||||||
|
Disk 2
|
||||||
|
ADISCF.@BR ADISCF.@XE ADISCTRL.@ ANIMATE.@XE
|
||||||
|
ANIMATOR.@BR ANIMBASE.@BR ANIMBASE.@XE ANIMRTNS.@XE
|
||||||
|
ANIMUSER.@LE ANIMUSER.@XE CCI.@XE COBCLI.@BR
|
||||||
|
COBFP87.@LE COBFP87.@LW COBIFN.@LW COBNLS.@LW
|
||||||
|
COBNLS.@RR COBOL.@XE GENATT.@LE GENATT.@LW
|
||||||
|
H2CPY.@XE HELP.@BR HELPNAME.@BR HYHELP.@BR
|
||||||
|
HYHELP.@NF INFO.@NF KEYBCF.@XE MFEXTMAP.@LE
|
||||||
|
MFEXTMAP.@LW MSHIF.@XE NAME.@BR OLR.@NF
|
||||||
|
PANELS.@BJ PANLINK.@PY REBUILD.@XE SCREENS.@BR
|
||||||
|
SCREENS.@XE SPLIT78.@XE XANIMATE.@XE XB.@XE
|
||||||
|
XCOBOL.@XE XM.@XE XMCLONES.@OC _BTRV.@LW
|
||||||
|
_BTRV.@XE _SORT.@LW
|
||||||
|
|
||||||
|
|
||||||
|
Disk 3
|
||||||
|
ADIS.@BJ BTR2XFH.@BJ CBLDC001.@BJ CBLSSEG.@LL
|
||||||
|
CBLWIN.@LL CBLWIN31.@LW CBLWINA.OBJ CBLWINAF.@BJ
|
||||||
|
CBLWINB.OBJ CBLWINL.OBJ CNVCOMP6.@BJ COBAPI.@IB
|
||||||
|
COBFP87D.@IB COBFP87W.@IB COBINTFN.@BJ COBLIB.@IB
|
||||||
|
COBLIB.@LW COBLIBW.@IB COBNLSMG.@BJ COBW.@IB
|
||||||
|
CONVERT3.@XE CONVERT5.@XE DBTRV.@BJ DWSKEL.DEF
|
||||||
|
EXTERNL.@BJ EXTFH.@BJ EXTFHW.@EF EXTSM.@BJ
|
||||||
|
FHREDIR.@BJ HOSTSTAT.@BJ LATLANG.@BJ LCOBOL.@IB
|
||||||
|
LCOBOLDW.@IB LCOBOLW.@IB LIBINIT.OBJ MCS.@BJ
|
||||||
|
MCSETUP.@XE MISC.@EM MSLANG.@BJ PANELS.@EM
|
||||||
|
PCINST.@LL REFORM5.@XE RMSTAT.@BJ RTSBIN.@SM
|
||||||
|
RTSCALL.@BJ SQL.@BJ TABX.@XE WBTRV.@BJ
|
||||||
|
WINDOWS.@EM WINSTF.@BJ WINSTF.@IB WINSTF.DEF
|
||||||
|
XFH2BTR.@BJ XFHNAME.@BJ _CLASS.@BJ _CODESET.@BJ
|
||||||
|
|
||||||
|
|
||||||
|
Disk 4
|
||||||
|
ASM.@EM COBOL.@LP COBOL2.HLP IMAGEDIT.@LP
|
||||||
|
MUDEMO.@EM PREPROC.@EM PWBTUTOR.@EM SAMPLES.@XT
|
||||||
|
TICTAC.@EM VBCOB.@EM
|
||||||
|
|
||||||
|
|
||||||
|
Disk 5
|
||||||
|
CV.@CO CV.@XE DLGEDIT.@XE EMD1D1.@LL
|
||||||
|
PWB.@LP QH.@LP TOOLS.@RE UTILS.@LP
|
||||||
|
|
||||||
|
|
||||||
|
Disk 6
|
||||||
|
ADVISOR.@LP CV4.@LP CVPACK.@XE CVPACKX.@XE
|
||||||
|
EXEHDR.@XE HIMEM.@YS ILINK.@XE LIB.@XE
|
||||||
|
LINK.@LP LINK.@XE MOUSE.@OM MSD.@XE
|
||||||
|
MSD.@XT NMAKE.@XE PWBC.@XT PWBCOBOL.@XT
|
||||||
|
PWBMASM.@XT PWBRMAKE.@XE QH.@XE SBR-LOAD.@NT
|
||||||
|
SBRPACK.@XE WX.@XE WXSRVR.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 7
|
||||||
|
ATRM1111.@NT BSCMAKE.@XE BSCMAKEV.@XE DLGEDIT.@LP
|
||||||
|
EED1CAN.@LL EED1COB.@LL EXP.@XE FONTEDIT.@LP
|
||||||
|
FONTEDIT.@XE HELPMAKE.@XE IMAGEDIT.@XE IMPLIB.@XE
|
||||||
|
LIBENTRY.@BJ LIBW.@IB LRFMERGE.@XE PWB.@XE
|
||||||
|
PWBBASIC.@XT PWBFORT.@XT PWBHELP.@XT PWBROWSE.@XT
|
||||||
|
PWBUTILS.@XT RC.@XE RCPP.@RR RCPP.@XE
|
||||||
|
RM.@XE SAMPLE.@NI SHD1.@LL TLD1LOC.@LL
|
||||||
|
UNDEL.@XE VGASYS.@NT VMB.@86 WINDOWS.@
|
||||||
|
WINSTUB.@XE
|
||||||
|
|
||||||
|
|
||||||
|
High density 3.5 inch disk layout
|
||||||
|
|
||||||
|
Disk 1 / SETUP
|
||||||
|
ADDWPROG.EXE ANIMATOR.@BR CBL-CMPT.DOC CHECK.@BR
|
||||||
|
COBCLI.@BR COBLIB.@LE COBOL.INI DOCUPDT.@OC
|
||||||
|
GENERATE.@BR H2CPY.@XE HELPADCF.@BR
|
||||||
|
NAME.@BR PACKING.LST PKUNZIP.EXE README.DOC
|
||||||
|
SETUP.EXE SPLIT78.@XE UTILS.@BR XANIMATE.@XE
|
||||||
|
XCOBOL.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 2
|
||||||
|
ADIS.@BJ ADISCF.@BR ADISCF.@XE ADISCTRL.@
|
||||||
|
ANIMATE.@XE ANIMBASE.@BR ANIMBASE.@XE ANIMRTNS.@XE
|
||||||
|
ANIMUSER.@LE ANIMUSER.@XE CBLSSEG.@LL CBLWIN.@LL
|
||||||
|
CBLWIN31.@LW CCI.@XE CNVCOMP6.@BJ COBFP87.@LE
|
||||||
|
COBFP87.@LW COBFP87D.@IB COBFP87W.@IB COBIFN.@LW
|
||||||
|
COBLIB.@IB COBLIB.@LW COBNLS.@LW COBNLS.@RR
|
||||||
|
COBOL.@XE COBW.@IB CONVERT3.@XE CONVERT5.@XE
|
||||||
|
EXTFH.@BJ EXTFHW.@EF GENATT.@LE GENATT.@LW
|
||||||
|
HELP.@BR HELPNAME.@BR HYHELP.@BR HYHELP.@NF
|
||||||
|
INFO.@NF KEYBCF.@XE LCOBOL.@IB MCS.@BJ
|
||||||
|
MCSETUP.@XE MFEXTMAP.@LE MFEXTMAP.@LW MSHIF.@XE
|
||||||
|
OLR.@NF PANELS.@BJ PANLINK.@PY PCINST.@LL
|
||||||
|
REBUILD.@XE REFORM5.@XE SCREENS.@BR SCREENS.@XE
|
||||||
|
TABX.@XE XB.@XE XM.@XE XMCLONES.@OC
|
||||||
|
_BTRV.@LW _BTRV.@XE _SORT.@LW
|
||||||
|
|
||||||
|
|
||||||
|
Disk 3
|
||||||
|
ASM.@EM BTR2XFH.@BJ CBLDC001.@BJ CBLWINA.OBJ
|
||||||
|
CBLWINAF.@BJ CBLWINB.OBJ CBLWINL.OBJ COBAPI.@IB
|
||||||
|
COBINTFN.@BJ COBLIBW.@IB COBNLSMG.@BJ COBOL.@LP
|
||||||
|
COBOL2.HLP DBTRV.@BJ DWSKEL.DEF EXTERNL.@BJ
|
||||||
|
EXTSM.@BJ FHREDIR.@BJ HOSTSTAT.@BJ IMAGEDIT.@LP
|
||||||
|
LATLANG.@BJ LCOBOLDW.@IB LCOBOLW.@IB LIBINIT.OBJ
|
||||||
|
MISC.@EM MSLANG.@BJ MUDEMO.@EM PANELS.@EM
|
||||||
|
PREPROC.@EM PWBTUTOR.@EM RMSTAT.@BJ RTSBIN.@SM
|
||||||
|
RTSCALL.@BJ SAMPLES.@XT SQL.@BJ TICTAC.@EM
|
||||||
|
VBCOB.@EM WBTRV.@BJ WINDOWS.@EM WINSTF.@BJ
|
||||||
|
WINSTF.@IB WINSTF.DEF XFH2BTR.@BJ XFHNAME.@BJ
|
||||||
|
_CLASS.@BJ _CODESET.@BJ
|
||||||
|
|
||||||
|
|
||||||
|
Disk 4
|
||||||
|
ADVISOR.@LP CV.@CO CV.@XE CV4.@LP
|
||||||
|
DLGEDIT.@XE EMD1D1.@LL EXEHDR.@XE HIMEM.@YS
|
||||||
|
MOUSE.@OM PWB.@LP PWBCOBOL.@XT PWBMASM.@XT
|
||||||
|
PWBRMAKE.@XE QH.@LP QH.@XE SBR-LOAD.@NT
|
||||||
|
SBRPACK.@XE TOOLS.@RE UTILS.@LP WX.@XE
|
||||||
|
WXSRVR.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 5
|
||||||
|
BSCMAKE.@XE BSCMAKEV.@XE CVPACK.@XE CVPACKX.@XE
|
||||||
|
EED1CAN.@LL EED1COB.@LL EXP.@XE ILINK.@XE
|
||||||
|
LIB.@XE LIBENTRY.@BJ LINK.@LP LINK.@XE
|
||||||
|
LRFMERGE.@XE MSD.@XE MSD.@XT NMAKE.@XE
|
||||||
|
PWB.@XE PWBC.@XT RC.@XE RCPP.@RR
|
||||||
|
RCPP.@XE SHD1.@LL TLD1LOC.@LL WINSTUB.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 6
|
||||||
|
ATRM1111.@NT DLGEDIT.@LP FONTEDIT.@LP FONTEDIT.@XE
|
||||||
|
HELPMAKE.@XE IMAGEDIT.@XE IMPLIB.@XE LIBW.@IB
|
||||||
|
PWBBASIC.@XT PWBFORT.@XT PWBHELP.@XT PWBROWSE.@XT
|
||||||
|
PWBUTILS.@XT RM.@XE SAMPLE.@NI UNDEL.@XE
|
||||||
|
VGASYS.@NT VMB.@86 WINDOWS.@
|
||||||
|
|
||||||
|
Low density 3.5 inch disk layout
|
||||||
|
|
||||||
|
Disk 1 / SETUP
|
||||||
|
ADDWPROG.EXE CBL-CMPT.DOC CHECK.@BR COBLIB.@LE
|
||||||
|
COBOL.INI DOCUPDT.@OC HELPADCF.@BR PACKING.LST
|
||||||
|
PKUNZIP.EXE README.DOC SETUP.EXE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 2
|
||||||
|
ANIMATOR.@BR COBCLI.@BR GENERATE.@BR H2CPY.@XE
|
||||||
|
NAME.@BR SPLIT78.@XE UTILS.@BR XANIMATE.@XE
|
||||||
|
XCOBOL.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 3
|
||||||
|
ADISCF.@BR ADISCF.@XE ADISCTRL.@ ANIMATE.@XE
|
||||||
|
ANIMBASE.@BR ANIMBASE.@XE ANIMRTNS.@XE ANIMUSER.@LE
|
||||||
|
ANIMUSER.@XE CCI.@XE COBFP87.@LE COBFP87.@LW
|
||||||
|
COBIFN.@LW COBNLS.@LW COBNLS.@RR COBOL.@XE
|
||||||
|
GENATT.@LE GENATT.@LW HELP.@BR HELPNAME.@BR
|
||||||
|
HYHELP.@BR HYHELP.@NF KEYBCF.@XE MFEXTMAP.@LE
|
||||||
|
MFEXTMAP.@LW OLR.@NF PANLINK.@PY REBUILD.@XE
|
||||||
|
SCREENS.@BR SCREENS.@XE XB.@XE XM.@XE
|
||||||
|
XMCLONES.@OC _BTRV.@LW _BTRV.@XE _SORT.@LW
|
||||||
|
|
||||||
|
|
||||||
|
Disk 4
|
||||||
|
ADIS.@BJ CBLSSEG.@LL CBLWIN.@LL CBLWIN31.@LW
|
||||||
|
CNVCOMP6.@BJ COBFP87D.@IB COBFP87W.@IB COBLIB.@IB
|
||||||
|
COBLIB.@LW COBW.@IB CONVERT3.@XE CONVERT5.@XE
|
||||||
|
EXTFH.@BJ EXTFHW.@EF INFO.@NF LCOBOL.@IB
|
||||||
|
MCS.@BJ MCSETUP.@XE MSHIF.@XE PANELS.@BJ
|
||||||
|
PCINST.@LL REFORM5.@XE TABX.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 5
|
||||||
|
ASM.@EM BTR2XFH.@BJ CBLDC001.@BJ CBLWINA.OBJ
|
||||||
|
CBLWINAF.@BJ CBLWINB.OBJ CBLWINL.OBJ COBAPI.@IB
|
||||||
|
COBINTFN.@BJ COBLIBW.@IB COBNLSMG.@BJ DBTRV.@BJ
|
||||||
|
DWSKEL.DEF EXTERNL.@BJ EXTSM.@BJ FHREDIR.@BJ
|
||||||
|
HOSTSTAT.@BJ LATLANG.@BJ LCOBOLDW.@IB LCOBOLW.@IB
|
||||||
|
LIBINIT.OBJ MISC.@EM MSLANG.@BJ
|
||||||
|
MUDEMO.@EM PANELS.@EM PREPROC.@EM PWBTUTOR.@EM
|
||||||
|
RMSTAT.@BJ RTSBIN.@SM RTSCALL.@BJ SAMPLES.@XT
|
||||||
|
SQL.@BJ TICTAC.@EM VBCOB.@EM WBTRV.@BJ
|
||||||
|
WINDOWS.@EM WINSTF.@BJ WINSTF.@IB WINSTF.DEF
|
||||||
|
XFH2BTR.@BJ XFHNAME.@BJ _CLASS.@BJ _CODESET.@BJ
|
||||||
|
|
||||||
|
|
||||||
|
Disk 6
|
||||||
|
COBOL.@LP COBOL2.HLP
|
||||||
|
|
||||||
|
|
||||||
|
Disk 7
|
||||||
|
CV.@CO CV.@XE DLGEDIT.@XE EMD1D1.@LL
|
||||||
|
EXEHDR.@XE HIMEM.@YS MOUSE.@OM PWBCOBOL.@XT
|
||||||
|
PWBMASM.@XT PWBRMAKE.@XE QH.@LP SBR-LOAD.@NT
|
||||||
|
SBRPACK.@XE TOOLS.@RE UTILS.@LP WX.@XE
|
||||||
|
WXSRVR.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 8
|
||||||
|
ADVISOR.@LP CV4.@LP PWB.@LP QH.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 9
|
||||||
|
CVPACK.@XE CVPACKX.@XE ILINK.@XE LIB.@XE
|
||||||
|
LINK.@LP LINK.@XE MSD.@XE MSD.@XT
|
||||||
|
NMAKE.@XE PWBC.@XT
|
||||||
|
|
||||||
|
|
||||||
|
Disk 10
|
||||||
|
BSCMAKE.@XE BSCMAKEV.@XE EED1CAN.@LL EED1COB.@LL
|
||||||
|
EXP.@XE LIBENTRY.@BJ LRFMERGE.@XE PWB.@XE
|
||||||
|
RC.@XE RCPP.@RR RCPP.@XE SHD1.@LL
|
||||||
|
TLD1LOC.@LL WINSTUB.@XE
|
||||||
|
|
||||||
|
|
||||||
|
Disk 11
|
||||||
|
ATRM1111.@NT DLGEDIT.@LP FONTEDIT.@LP FONTEDIT.@XE
|
||||||
|
HELPMAKE.@XE IMAGEDIT.@LP IMAGEDIT.@XE IMPLIB.@XE
|
||||||
|
LIBW.@IB PWBBASIC.@XT PWBFORT.@XT PWBHELP.@XT
|
||||||
|
PWBROWSE.@XT PWBUTILS.@XT RM.@XE SAMPLE.@NI
|
||||||
|
UNDEL.@XE VGASYS.@NT VMB.@86 WINDOWS.@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Description of Components
|
||||||
|
-------------------------
|
||||||
|
The Microsoft COBOL 5.0 package contains the following software
|
||||||
|
components:
|
||||||
|
|
||||||
|
COBOL Optimizing Compiler - compiles COBOL source code into OBJ files.
|
||||||
|
|
||||||
|
Animator Testing Tool - interactive full screen testing, learning and
|
||||||
|
debugging tool. Includes Cooperative
|
||||||
|
Animation facility to animate programs in
|
||||||
|
different sessions/machines.
|
||||||
|
|
||||||
|
Linking Support - Linker, libraries and system programs to
|
||||||
|
create stand alone EXE files for DOS and
|
||||||
|
Windows from the OBJs created by the compiler.
|
||||||
|
|
||||||
|
COBOL Communications - Preparation and run-time support for MCS.
|
||||||
|
Module Support
|
||||||
|
|
||||||
|
Mixed Language Facility - Extra tools, and documentation to aid in
|
||||||
|
linking COBOL programs with programs of other
|
||||||
|
languages.
|
||||||
|
|
||||||
|
PANELS - Callable module allowing windowing to be
|
||||||
|
built into an application.
|
||||||
|
|
||||||
|
Screen Painter - SCREENS Screen Painter.
|
||||||
|
|
||||||
|
Screen/Keyboard - Tools to allow configuration of the extended
|
||||||
|
Configuration Tools ACCEPT/DISPLAY system program, ADIS.
|
||||||
|
|
||||||
|
SETUP Installation - Utility to allow efficient installation of
|
||||||
|
Utility this product.
|
||||||
|
|
||||||
|
Indexed File - REBUILD file management utility.
|
||||||
|
Maintenance Tool
|
||||||
|
|
||||||
|
Demonstration Programs - Programs that demonstrate some of the
|
||||||
|
facilities in this package, and batch streams
|
||||||
|
to compile, link and run, or animate them.
|
||||||
|
|
||||||
|
MF Compatibility Tools - File conversion utility to aid in converting
|
||||||
|
Micro Focus COBOL systems to compile and
|
||||||
|
run with this system.
|
||||||
|
|
||||||
|
MS Compatibility Tools - Compatibility documentation and file
|
||||||
|
conversion utility to aid in converting
|
||||||
|
Microsoft COBOL v2.2 systems to compile and
|
||||||
|
run with this system.
|
||||||
|
|
||||||
|
RM Compatibility Tools - Compatibility documentation and file
|
||||||
|
conversion utility to aid in converting
|
||||||
|
RM/COBOL applications to compile and run
|
||||||
|
with this system.
|
||||||
|
|
||||||
|
DG Compatibility Tools - Compatibility documentation and file
|
||||||
|
conversion utility to aid in converting DG
|
||||||
|
ICOBOL applications to compile and run with
|
||||||
|
this system.
|
||||||
|
|
||||||
|
Utilities - LINK, LIB, NMAKE, etc.
|
||||||
|
|
||||||
|
Programmer's WorkBench - Integrated development environment.
|
||||||
|
|
||||||
|
CodeView - CodeView Version 4.05 allowing
|
||||||
|
native code debugging of COBOL programs
|
||||||
|
and mixed COBOL/C debugging.
|
||||||
|
|
||||||
|
Windows 3.0 Support - Libraries and tools needed to develop
|
||||||
|
Microsoft Windows 3.0 and higher applications.
|
||||||
|
|
||||||
|
|
||||||
|
Description of Files
|
||||||
|
--------------------
|
||||||
|
The files included on the release disks are briefly described below.
|
||||||
|
|
||||||
|
Executable files on the disks are one of the following types:
|
||||||
|
|
||||||
|
|
||||||
|
ADDWPROG.EXE Adds program groups to Program Manager
|
||||||
|
ADIS.@BJ ADIS.OBJ ADIS-ACCEPT/DISPLAY support
|
||||||
|
ADISDYNA.OBJ ADIS-ACCEPT/DISPLAY support
|
||||||
|
ADISINIT.OBJ ADIS-ACCEPT/DISPLAY support
|
||||||
|
ADISKEY.OBJ ADIS-ACCEPT/DISPLAY support
|
||||||
|
ADISCF.@BR ADISCF.LBR ADISCF/KEYBCF run-time support
|
||||||
|
ADISCF.@XE ADISCF.EXE ADIS configuration utility
|
||||||
|
ADISCTRL.@ ADISCTRL (ADISCTRL.@) ADIS configuration file
|
||||||
|
ADVISOR.@LP ADVISOR.HLP Help for Microsoft Advisor
|
||||||
|
ANIMATE.@XE ANIMATE.EXE Animator debugger program
|
||||||
|
ANIMATOR.@BR ANIMATOR.LBR Animator - additional programs
|
||||||
|
ANIMBASE.@BR ANIMBASE.LBR Low memory Animator
|
||||||
|
ANIMBASE.@XE ANIMBASE.EXE Animator support file
|
||||||
|
ANIMRTNS.@XE ANIMRTNS.EXE Animator support file
|
||||||
|
ANIMUSER.@LE ANIMUSER.DLE Animator support file
|
||||||
|
ANIMUSER.@XE ANIMUSER.EXE Cooperative animation
|
||||||
|
ASM.@EM ADD.CBL Sample showing assembler called from COBOL
|
||||||
|
ADDEM.ASM
|
||||||
|
ADDEM.DEF
|
||||||
|
ADDEM.OBJ
|
||||||
|
ATRM1111.@NT ATRM1111.FNT
|
||||||
|
BSCMAKE.@XE BSCMAKE.EXE Browse database creation utility
|
||||||
|
BSCMAKEV.@XE BSCMAKEV.EXE
|
||||||
|
BTR2XFH.@BJ BTR2XFH.OBJ File handling support file
|
||||||
|
CBL-CMPT.DOC Compatibility with earlier releases
|
||||||
|
CBLDC001.@BJ CBLDC001.OBJ Data compression module
|
||||||
|
CBLSSEG.@LL CBLSSEG.DLL Support DLL used by all COBOL Windows programs
|
||||||
|
CBLWIN.@LL CBLWIN.DLL COBOL Windows runtime support
|
||||||
|
CBLWIN31.@LW CBLWIN31.DLW COBOL Windows runtime support
|
||||||
|
CBLWINA.OBJ Startup module for EXE's under Windows
|
||||||
|
CBLWINAF.@BJ CBLWINAF.OBJ Startup module for use with Floating Point
|
||||||
|
CBLWINB.OBJ Startup module for batch programs under Windows
|
||||||
|
CBLWINL.OBJ Startup module for Dynamic Link Libraries
|
||||||
|
CCI.@XE CCIIPX.DLW Remote animation support
|
||||||
|
CCIIPX.EXE Remote animation support
|
||||||
|
CCIIPX2.EXE Remote animation support
|
||||||
|
CCINETB.DLW Remote animation support
|
||||||
|
CCINETB.EXE Remote animation support
|
||||||
|
CHECK.@BR CHECK.LBR Compiler/Animator modules
|
||||||
|
CNVCOMP6.@BJ CNVCOMP6.OBJ Subroutine used with RM data file conversion
|
||||||
|
COBAPI.@IB COBAPI.LIB COBOL link support routines
|
||||||
|
COBCLI.@BR COBCLI.LBR Compiler/Animator Command Line Interpreter
|
||||||
|
COBFP87.@LE COBFP87.DLE Floating Point runtime support
|
||||||
|
COBFP87.@LW COBFP87.DLW Floating Point runtime support
|
||||||
|
COBFP87D.@IB COBFP87D.LIB Floating Point linking support
|
||||||
|
COBFP87W.@IB COBFP87W.LIB Floating point linking support
|
||||||
|
COBIFN.@LW COBIFN.DLW Intrinsic functions runtime support
|
||||||
|
COBINTFN.@BJ COBINTFN.OBJ Intrinsic functions linking support
|
||||||
|
COBLIB.@IB COBLIB.LIB COBOL link support routines - shared run-time
|
||||||
|
COBLIB.@LE COBLIB.DLE Shared run-time for DOS
|
||||||
|
COBLIB.@LW COBLIB.DLW Shared runtime for Windows
|
||||||
|
COBLIBW.@IB COBLIBW.LIB Shared runtime linking support
|
||||||
|
COBNLS.@LW COBNLS.DLW NLS runtime support
|
||||||
|
COBNLS.@RR COBNLS.ERR NLS error message file
|
||||||
|
COBNLSMG.@BJ COBNLSMG.OBJ NLS support file
|
||||||
|
COBOL.@LP COBOL.HLP Help on the COBOL language
|
||||||
|
COBOL.@XE COBOL.EXE Compiler
|
||||||
|
COBOL.INI Script for installation
|
||||||
|
COBOL2.HLP Help on COBOL language
|
||||||
|
COBW.@IB COBW.LIB Windows Linking support for COBOL
|
||||||
|
CONVERT3.@XE CONVERT3.EXE Generates programs to convert RM/COBOL data files
|
||||||
|
CONVERT5.@XE CONVERT5.EXE Generates program to convert Data General data files
|
||||||
|
CV.@CO CV.ICO MS-DOS CodeView Icon
|
||||||
|
CV.@XE CV.EXE CodeView debugger for MS-DOS (version 4.05)
|
||||||
|
CV4.@LP CV4.HLP Help for CodeView 4.05
|
||||||
|
CVPACK.@XE CVPACK.EXE DOS CV4 information optimization utility. Installed
|
||||||
|
as CVPACK.EXE or CVPACKR.EXE. See README.DOC for an
|
||||||
|
explanation.
|
||||||
|
CVPACKX.@XE CVPACKX.EXE DOS CV4 information optimization utility. Installed
|
||||||
|
as CVPACK.EXE or CVPACKX.EXE. See README.DOC for an
|
||||||
|
explanation.
|
||||||
|
DBTRV.@BJ DBTRV.OBJ Filehandling support
|
||||||
|
DLGEDIT.@LP DLGEDIT.HLP MS Windows 3.1 Dialogue Editor Help
|
||||||
|
DLGEDIT.@XE DLGEDIT.EXE MS Windows 3.1 Dialogue Editor program
|
||||||
|
DWSKEL.DEF .DEF file for QuickWin applications
|
||||||
|
EED1CAN.@LL EED1CAN.DLL Expression evaluator for MS-DOS C/MASM
|
||||||
|
EED1COB.@LL EED1COB.DLL Expression evaluator for MS-DOS COBOL
|
||||||
|
EMD1D1.@LL EMD1D1.DLL Execution model for MS-DOS to MS-DOS
|
||||||
|
EXEHDR.@XE EXEHDR.EXE Display/modify executable file headers
|
||||||
|
EXP.@XE EXP.EXE Remove files from DELETED directory
|
||||||
|
EXTERNL.@BJ EXTERNL.OBJ External data handler
|
||||||
|
EXTFH.@BJ EXTFH.OBJ Indexed and External file handler
|
||||||
|
EXTFHW.@EF EXTFHW.DEF DEF file to create EXTFH.DLL for Windows
|
||||||
|
EXTSM.@BJ EXTSM.OBJ External Sort module
|
||||||
|
FONTEDIT.@LP FONTEDIT.HLP MS Windows 3.1 Font Editor Help
|
||||||
|
FONTEDIT.@XE FONTEDIT.EXE MS Windows 3.1 Font Editor program
|
||||||
|
GENATT.@LE GENATT.DLE Generic attributes runtime support
|
||||||
|
GENATT.@LW GENATT.DLW Generic attributes runtime support
|
||||||
|
GENERATE.@BR GENERATE.LBR Compiler - code generation
|
||||||
|
H2CPY.@XE H2CPY.EXE Converter for C Header files to COBOL
|
||||||
|
HELP.@BR HELP.LBR Animator Help screens
|
||||||
|
HELPADCF.@BR HELPADCF.LBR ADIS configuration utility - Help screens
|
||||||
|
HELPMAKE.@XE HELPMAKE.EXE Help File Maintenance Utility
|
||||||
|
HELPNAME.@BR HELPNAME.LBR Screen Painter support
|
||||||
|
HIMEM.@YS HIMEM.SYS Microsoft XMS Manager
|
||||||
|
HOSTSTAT.@BJ HOSTSTAT.OBJ Alternative filestatus support
|
||||||
|
HYHELP.@BR HYHELP.LBR Help engine for HNF files
|
||||||
|
HYHELP.@NF HYHELP.HNF Help on HNF files
|
||||||
|
ILINK.@XE ILINK.EXE Incremental Linker
|
||||||
|
IMAGEDIT.@LP IMAGEDIT.HLP MS Windows 3.1 Image Editor Help
|
||||||
|
IMAGEDIT.@XE IMAGEDIT.EXE MS Windows 3.1 Image Editor program
|
||||||
|
IMPLIB.@XE IMPLIB.EXE Import library creation utility
|
||||||
|
INFO.@NF INFO.HNF COBOL language Help
|
||||||
|
KEYBCF.@XE KEYBCF.EXE Keyboard configuration utility
|
||||||
|
LATLANG.@BJ LINITC31.ASM Lattice(R) C v3.1
|
||||||
|
LINITC31.OBJ
|
||||||
|
LINITC32.ASM Lattice C v3.2
|
||||||
|
LINITC32.OBJ
|
||||||
|
LINITIO.C I/O module required for linking to Lattice C
|
||||||
|
LINITIO.OBJ
|
||||||
|
LCOBOL.@IB LCOBOL.LIB COBOL link support routines - static linked
|
||||||
|
LCOBOLDW.@IB LCOBOLDW.LIB Static runtime linking support for QuickWin
|
||||||
|
LCOBOLW.@IB LCOBOLW.LIB Static runtime linking support for Windows API
|
||||||
|
LIB.@XE LIB.EXE Library maintenance utility
|
||||||
|
LIBENTRY.@BJ LIBENTRY.OBJ Needed for Windows DLLs
|
||||||
|
LIBINIT.OBJ Dynamic library linking support
|
||||||
|
LIBW.@IB LIBW.LIB Link library for Windows applications
|
||||||
|
LINK.@LP LINK.HLP Help for Linker
|
||||||
|
LINK.@XE LINK.EXE Segmented executable Linker
|
||||||
|
LRFMERGE.@XE LRFMERGE.EXE Used by PWB to merge two linker response files
|
||||||
|
MCS.@BJ MCS.OBJ Communications module
|
||||||
|
MCSETUP.@XE MCSETUP.EXE Communication setup
|
||||||
|
MFEXTMAP.@LE MFEXTMAP.DLE External file mapper
|
||||||
|
MFEXTMAP.@LW MFEXTMAP.DLW External file mapper
|
||||||
|
MISC.@EM ADMOUSE.CBL Demonstrates the use of mouse and ADIS
|
||||||
|
CALC.CBL
|
||||||
|
CALENDAR.CBL
|
||||||
|
CASE.CBL Converts the case of COBOL source programs
|
||||||
|
CUSTOMER.DAT
|
||||||
|
DECLARE.CBL DECLARATIVES
|
||||||
|
DIOPHANT.CBL Recursion
|
||||||
|
EXPAND.CBL Clever expanding ACCEPT
|
||||||
|
EXTFILE.CBL EXTERNAL FILES
|
||||||
|
FUNCTEST.CBL
|
||||||
|
FUNKEY.CBL
|
||||||
|
INTRINS.CBL
|
||||||
|
KEYBMENU.CBL
|
||||||
|
LOGOPER.CBL Demonstrates the logical call-by-name routines
|
||||||
|
MOUSMENU.CBL
|
||||||
|
NESTED.CBL Nested programs
|
||||||
|
POPUP.CBL Screen handling demo
|
||||||
|
PRINTESC.CBL Printer escape codes
|
||||||
|
REPORT.CBL Report Writer
|
||||||
|
SAMPLES.TXT ASCII text file with compile/link information
|
||||||
|
SHELL.BAT
|
||||||
|
SMPLACCP.CBL
|
||||||
|
SPLTJOIN.CBL
|
||||||
|
SSCNTRL.CBL Screen Section dynamic attributes using CONTROL
|
||||||
|
STATUS.CBL File status handling
|
||||||
|
TSTCOMP.CBL
|
||||||
|
MOUSE.@OM MOUSE.COM Mouse Driver
|
||||||
|
MSD.@XE MSD.EXE Configuration reporter
|
||||||
|
MSD.@XT MSD.TXT Configuration reporter doc
|
||||||
|
MSHIF.@XE MSHIF.EXE Access to MS style Help files from other Engines
|
||||||
|
MSLANG.@BJ C6DOSIF.OBJ Microsoft C 6.0 - C initialization for MS-DOS
|
||||||
|
C6DOSLB.OBJ Microsoft C 6.0 - C initialization for MS-DOS
|
||||||
|
C7DOSIF.OBJ Microsoft C 7.0 - C initialization for MS-DOS
|
||||||
|
C7DOSLB.OBJ Microsoft C 7.0 - C initialization for MS-DOS
|
||||||
|
MFC6INTF.OBJ Microsoft C 6.0 - COBOL interface
|
||||||
|
MFC6INTW.OBJ Microsoft C 6.0 - initialization for WIN
|
||||||
|
MFC7INTF.OBJ Microsoft C 7.0 - COBOL interface
|
||||||
|
MINITC.ASM Microsoft C 5.0 and 4.0
|
||||||
|
MINITC.OBJ
|
||||||
|
MINITF.ASM Microsoft FORTRAN
|
||||||
|
MINITF.OBJ
|
||||||
|
MINITP.ASM Microsoft Pascal
|
||||||
|
MINITP.OBJ
|
||||||
|
MUDEMO.@EM MUDEMO.CBL Sample program
|
||||||
|
STOCKIN.CBL Sample Program
|
||||||
|
STOCKIOA.CBL Sample Program
|
||||||
|
STOCKIOM.CBL Sample Program
|
||||||
|
STOCKOUT.CBL Multi-user file handling
|
||||||
|
NAME.@BR NAME.LBR Screen Painter support
|
||||||
|
NMAKE.@XE NMAKE.EXE Program maintenance utility
|
||||||
|
OLR.@NF OLR.HNF Help on HNF format files
|
||||||
|
PACKING.LST List of documents and files included in
|
||||||
|
this package
|
||||||
|
PANELS.@BJ PANELS.OBJ Panels linking support
|
||||||
|
PANELS.@EM DEMOBUFF.CPY Panels sample programs
|
||||||
|
DEMOCONT.CPY
|
||||||
|
DEMOHELP.CPY
|
||||||
|
DEMOMENU.CPY
|
||||||
|
DEMOMISC.CPY
|
||||||
|
DEMOMSG.CPY
|
||||||
|
PANBIGSC.CBL
|
||||||
|
PANBORDR.CBL
|
||||||
|
PANCONT.CPY
|
||||||
|
PANDEMO.CBL
|
||||||
|
PANELEX1.CBL
|
||||||
|
PANELEX2.CBL
|
||||||
|
PANLINK.CPY
|
||||||
|
PANTUTOR.CBL
|
||||||
|
PCINST.@LL PCINST.DLL
|
||||||
|
PKUNZIP.EXE Unzipping processor (Bound)
|
||||||
|
PREPROC.@EM ASMCOBOL.CBL Preprocessor sample program
|
||||||
|
PREPROC.CBL
|
||||||
|
PREPROX.CBL
|
||||||
|
WORKING.CBL
|
||||||
|
PWB.@LP PWB.HLP Help for MS-DOS Programmer's WorkBench
|
||||||
|
PWB.@XE PWB.EXE MS-DOS Programmer's Workbench
|
||||||
|
PWB.ICO ICON for PWB
|
||||||
|
PWB.PIF PIF File for PWB
|
||||||
|
PWBBASIC.@XT PWBBASIC.XXT BASIC extension for PWB
|
||||||
|
PWBC.@XT PWBC.XXT C extension for PWB
|
||||||
|
PWBCOBOL.@XT PWBCOBOL.MXT COBOL extension for PWB
|
||||||
|
PWBFORT.@XT PWBFORT.XXT FORTRAN extension for PWB
|
||||||
|
PWBHELP.@XT PWBHELP.MXT Help extension for PWB
|
||||||
|
PWBMASM.@XT PWBMASM.XXT MASM extension for PWB
|
||||||
|
PWBRMAKE.@XE PWBRMAKE.EXE BSCMAKE compatibility driver
|
||||||
|
PWBROWSE.@XT PWBROWSE.MXT Browser extension for PWB
|
||||||
|
PWBTUTOR.@EM EMPL.DAT Files for the PWB tutorial
|
||||||
|
EMPLHLTH.CBL
|
||||||
|
EMPLMAIN.CBL
|
||||||
|
EMPLMAIN.TXT
|
||||||
|
EMPLMN.MAK
|
||||||
|
HEALTH.DAT
|
||||||
|
PENTOT2.CBL
|
||||||
|
SALARY.DAT
|
||||||
|
PWBUTILS.@XT PWBUTILS.MXT Utilities for PWB
|
||||||
|
QH.@LP QH.HLP Help for the Microsoft QuickHelp program
|
||||||
|
QH.@XE QH.EXE MS-DOS QuickHelp program
|
||||||
|
QH.ICO QuickHelp Icon
|
||||||
|
RC.@XE RC.EXE MS Windows 3.1 Resource Compiler
|
||||||
|
RCPP.@RR RCPP.ERR
|
||||||
|
RCPP.@XE RCPP.EXE
|
||||||
|
README.DOC Essential information about this version
|
||||||
|
REBUILD.@XE REBUILD.EXE File Management Utility - MS file conversion
|
||||||
|
REFORM5.@XE REFORM5.EXE Reformatter for DG Interactive COBOL source program
|
||||||
|
RM.@XE RM.EXE File deletion utility
|
||||||
|
RMSTAT.@BJ RMSTAT.OBJ Alternate file status support
|
||||||
|
RTSBIN.@SM RTSBIN.ASM Emulation of .BIN file handling
|
||||||
|
RTSCALL.@BJ RTSCALL.OBJ Emulation of .BIN file handling
|
||||||
|
SAMPLE.@NI SAMPLE.INI Sample TOOLS.INI file for PWB
|
||||||
|
SBR-LOAD.@NT SBR-LOAD.GNT Compiler support for browser
|
||||||
|
SBRPACK.@XE SBRPACK.EXE Browse information utility
|
||||||
|
SCREENS.@BR SCREENS.LBR Screen Painter support
|
||||||
|
SCREENS.@XE SCREENS.EXE Screen Painter
|
||||||
|
SETUP.EXE Installation utility (Bound)
|
||||||
|
SHD1.@LL SHD1.DLL Symbol handler for MS-DOS
|
||||||
|
SPLIT78.@XE SPLIT78.EXE Splits large files containing level 78s into
|
||||||
|
smaller files.
|
||||||
|
SQL.@BJ SQLINIM.OBJ
|
||||||
|
SQLINIT.OBJ
|
||||||
|
TABX.@XE TABX.EXE Utility to expand tabs in a source file
|
||||||
|
TICTAC.@EM TICBUG.CBL Other products support material
|
||||||
|
TICTAC.CBL Tac-Tac-Toe sample
|
||||||
|
TSTDEBUG.CBL ANSI Debug
|
||||||
|
TTDEMO.BAT Demonstration batch stream
|
||||||
|
TLD1LOC.@LL TLD1LOC.DLL Local transport layer for MS-DOS
|
||||||
|
TOOLS.@RE TOOLS.PRE Sample TOOLS.INI file
|
||||||
|
UNDEL.@XE UNDEL.EXE Undelete (restore) file utility
|
||||||
|
UTILS.@BR UTILS.LBR Compiler/Animator run-time support
|
||||||
|
UTILS.@LP UTILS.HLP Help for utilities
|
||||||
|
VBCOB.@EM ADDREC.FRM Visual Basic calling COBOL sample
|
||||||
|
BROWSE.FRM
|
||||||
|
CREATE.FRM
|
||||||
|
PASS_PAR.FRM
|
||||||
|
VBCOB.BAS
|
||||||
|
VBCOB.CBL
|
||||||
|
VBCOB.DEF
|
||||||
|
VBCOB.DLL
|
||||||
|
VBCOB.EXE
|
||||||
|
VBCOB.MAK
|
||||||
|
VBCOBDLL.BAT
|
||||||
|
VBRUN100.DLL
|
||||||
|
VGASYS.@NT VGASYS.FNT
|
||||||
|
VMB.@86 VMB.386 Windows spawn driver
|
||||||
|
WBTRV.@BJ WBTRV.OBJ
|
||||||
|
WINDOWS.@ WINDOWS.H
|
||||||
|
WINDOWS.@EM COBDLL.DLL Windows API DLL sample
|
||||||
|
COMPRESS.CBL Sample Program
|
||||||
|
COMPRESS.DEF Sample Program
|
||||||
|
SYSMETS.CBL Displays system metrics
|
||||||
|
SYSMETS.CPY
|
||||||
|
SYSMETS.DEF
|
||||||
|
SYSMETS.MAK
|
||||||
|
WINCALC.CBL Simple calculator program
|
||||||
|
WINCALC.CUR
|
||||||
|
WINCALC.DEF
|
||||||
|
WINCALC.DLG
|
||||||
|
WINCALC.ICO
|
||||||
|
WINCALC.RC
|
||||||
|
WINCALC.RES
|
||||||
|
WINDOWS.78 Windows header files converted into COBOL
|
||||||
|
WINDOWS.CPY
|
||||||
|
WINHELLO.CBL Sample - Windows 'Hello world' program
|
||||||
|
WINHELLO.DEF
|
||||||
|
WINDLL.BAT
|
||||||
|
WINMAIN.CBL Windows API calling DLL
|
||||||
|
WINSTF.@BJ WINSTF.OBJ
|
||||||
|
WINSTF.@IB WINSTF.LIB
|
||||||
|
WINSTF.DEF
|
||||||
|
WINSTUB.@XE WINSTUB.EXE Needed for Windows applications
|
||||||
|
WX.@XE WX.EXE WX/WXSRVR utility runs a Windows program from a
|
||||||
|
WXSRVR.@XE WXSRVR.EXE DOS prompt within Windows
|
||||||
|
XANIMATE.@XE XANIMATE.EXE DOS extended Animator
|
||||||
|
XB.@XE XB.EXE DOS extended EXE Builder
|
||||||
|
XCOBOL.@XE XCOBOL.EXE DOS extended compiler
|
||||||
|
XFH2BTR.@BJ XFH2BTR.OBJ filehandling support
|
||||||
|
XFHNAME.@BJ XFHNAME.OBJ filehandling support
|
||||||
|
XM.@XE XM.EXE Dos Extender
|
||||||
|
XMCLONES.@OC XMCLONES.DOC How to run XM on different clones
|
||||||
|
_BTRV.@LW _BTRV.DLW filehandling support
|
||||||
|
_BTRV.@XE _BTRV.EXE filehandling support
|
||||||
|
_CLASS.@BJ _CLASS.OBJ Support for user defined CLASS
|
||||||
|
_CODESET.@BJ _CODESET.OBJ Support for CODE-SET syntax
|
||||||
|
_SORT.@LW _SORT.DLW Sort runtime support
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
===========================================================================
|
||||||
|
Microsoft and CodeView are registered trademarks and Windows is a trademark
|
||||||
|
of Microsoft Corporation.
|
||||||
|
Micro Focus is a registered trademark of Micro Focus Limited.
|
||||||
|
Micro Focus COBOL/2 is a trademark of Micro Focus Limited.
|
||||||
|
Lattice is a registered trademark of Lattice Incorporated.
|
||||||
|
Ryan-McFarland and RM/COBOL are registered trademarks of Ryan-McFarland
|
||||||
|
Corporation.
|
||||||
|
===========================================================================
|
539
Microsoft Cobol v5/DOCS/README.DOC
Normal file
539
Microsoft Cobol v5/DOCS/README.DOC
Normal file
@ -0,0 +1,539 @@
|
|||||||
|
README.DOC
|
||||||
|
|
||||||
|
Microsoft(R) COBOL, Version 5.0
|
||||||
|
(C) Copyright Microsoft Corporation, 1993
|
||||||
|
|
||||||
|
|
||||||
|
This document contains essential information for version 5.0
|
||||||
|
of the Microsoft COBOL Professional Development System for
|
||||||
|
MS-DOS(R) and Microsoft(R) Windows. The information in this
|
||||||
|
document is more up-to-date than the printed documentation.
|
||||||
|
|
||||||
|
See the DOCUPDT.DOC file for information on printed documentation
|
||||||
|
corrections (located in the \COBOL\DOCS sub-directory).
|
||||||
|
|
||||||
|
========================< CONTENTS >=================================
|
||||||
|
|
||||||
|
This file contains information on product usage and
|
||||||
|
restrictions organized as follows:
|
||||||
|
|
||||||
|
NEW FEATURES
|
||||||
|
|
||||||
|
INSTALLATION
|
||||||
|
|
||||||
|
PROGRAMMER'S WORKBENCH
|
||||||
|
|
||||||
|
COMPILER AND LINKER
|
||||||
|
|
||||||
|
ANIMATOR
|
||||||
|
|
||||||
|
CODEVIEW
|
||||||
|
|
||||||
|
SAMPLE PROGRAMS
|
||||||
|
|
||||||
|
MISCELLANEOUS
|
||||||
|
|
||||||
|
|
||||||
|
===================================================================
|
||||||
|
NEW FEATURES
|
||||||
|
============
|
||||||
|
|
||||||
|
Improved Support for Microsoft Windows 3.x
|
||||||
|
-------------------------------------------
|
||||||
|
o Shared run-time system (COBLIB) is now supported under
|
||||||
|
Windows 3.x. The run-time system is provided as COBLIB.DLW.
|
||||||
|
|
||||||
|
o Because the COBOL compiler uses COBLIB itself, this means
|
||||||
|
that the compiler, Animator, etc., will be able to run as
|
||||||
|
Windows applications, making use of extended memory.
|
||||||
|
|
||||||
|
o QuickWin support is now provided in a DLL. This means that
|
||||||
|
dynamically called sub-programs can now make use of all
|
||||||
|
COBOL screen handling techniques.
|
||||||
|
|
||||||
|
o COBOL 5.0 provides support for interoperability with
|
||||||
|
Microsoft Visual Basic 2.0 for Windows. You can write
|
||||||
|
Visual Basic Graphical User Interfaces and call COBOL DLL's.
|
||||||
|
For additional information, see the COBOL Programming for
|
||||||
|
Windows book, Chapter 4 "Building Visual Basic
|
||||||
|
Applications."
|
||||||
|
|
||||||
|
|
||||||
|
Animator Improvements
|
||||||
|
---------------------
|
||||||
|
o Ability to monitor many data items. Each item is displayed
|
||||||
|
in its own window on the screen.
|
||||||
|
|
||||||
|
o The "Watch" statement. This effectively performs a Step command,
|
||||||
|
but also displays the contents of all data items used in the
|
||||||
|
COBOL statement before and after execution of the Step. This saves
|
||||||
|
the user from having to manually query the data items used in the
|
||||||
|
statement.
|
||||||
|
|
||||||
|
o Set a breakpoint on a data-item, so that if the contents of the
|
||||||
|
data-item changes, execution of the program will stop on the
|
||||||
|
statement that changes the data-item.
|
||||||
|
|
||||||
|
o Set a breakpoint on a COBOL statement and specify several lines
|
||||||
|
of code to be executed when the breakpoint is encountered (allows
|
||||||
|
temporary patching of the code - the source file is not changed).
|
||||||
|
|
||||||
|
o A "base" Animator is also provided for low memory situations
|
||||||
|
(ANIMBASE.EXE).
|
||||||
|
|
||||||
|
|
||||||
|
PANELS Character Window Tool
|
||||||
|
----------------------------
|
||||||
|
PANELS allows applications to create multiple windows on
|
||||||
|
character mode screens. Support is also provided to allow
|
||||||
|
ACCEPT/DISPLAY statements to be sent to the different Windows.
|
||||||
|
This allows easier development of pull-down menus, pop-up
|
||||||
|
windows, etc. on character mode screens.
|
||||||
|
|
||||||
|
|
||||||
|
Extfh/BTrieve Interface
|
||||||
|
-----------------------
|
||||||
|
New modules are being provided to allow programs that use standard
|
||||||
|
COBOL file handling syntax to access BTrieve files. Another module
|
||||||
|
is provided to allow programs that make calls to BTrieve to access
|
||||||
|
indexed-sequential files created using the standard COBOL file
|
||||||
|
handler (EXTFH).
|
||||||
|
|
||||||
|
COBOL Syntax Enhancements
|
||||||
|
-------------------------
|
||||||
|
There have been various COBOL syntax enhancements, mostly based
|
||||||
|
on the CODASYL Journal of Development, including:
|
||||||
|
|
||||||
|
o EVALUATE statement extended
|
||||||
|
o PERFORM UNTIL EXIT
|
||||||
|
o SET condition-name TO FALSE
|
||||||
|
o READ WITH WAIT
|
||||||
|
o READ WITH IGNORE LOCK
|
||||||
|
o ACCEPT/DISPLAY WITH UPPER/LOWER
|
||||||
|
o "C" and "R" accepted as currency signs
|
||||||
|
o VALUE clause extended to include "LENGTH OF identifier",
|
||||||
|
o "ADDRESS OF identifier" and AND'ing and OR'ing of numbers
|
||||||
|
(used for programming for GUI environments).
|
||||||
|
|
||||||
|
Mainframe Compatibility Enhancements
|
||||||
|
------------------------------------
|
||||||
|
o Support for the DOS/VS COBOL dialect.
|
||||||
|
o Mainframe compatible arithmetic. A new directive has been added
|
||||||
|
to provide mainframe compatible results in arithmetic statements.
|
||||||
|
The difference is in the way intermediate results are stored
|
||||||
|
during arithmetic statements.
|
||||||
|
o Mainframe file status codes are now supported.
|
||||||
|
o Obtain record length information for FILE SECTION records via
|
||||||
|
negative subscripting (a common mainframe technique).
|
||||||
|
o Improved support for OSVS perform behavior.
|
||||||
|
|
||||||
|
|
||||||
|
Western National Language Standards Supported
|
||||||
|
---------------------------------------------
|
||||||
|
The "NLS" compiler directive has been provided to indicate that a
|
||||||
|
program should use a specified language/territory/codepage. The
|
||||||
|
program then uses the appropriate characters and collating sequences
|
||||||
|
for currency signs, decimal and thousands separator and comparisons.
|
||||||
|
|
||||||
|
Performance Improvements
|
||||||
|
------------------------
|
||||||
|
There have been improvements in the speed and size of the code
|
||||||
|
output by the compiler. The main performance improvements
|
||||||
|
come from the following:
|
||||||
|
|
||||||
|
o Better use of 80x86 registers, leading to a general
|
||||||
|
20% improvement in computational operations.
|
||||||
|
o Speed of access to linkage section has been doubled
|
||||||
|
in programs with greater than 64K of data.
|
||||||
|
o Improvement in CALL performance.
|
||||||
|
o 40% speed improvement in accessing tables greater than 64K.
|
||||||
|
o Improvement in SEARCH performance.
|
||||||
|
o Improvements in file-handling performance.
|
||||||
|
o Use of the XM DOS Extender can improve performance of
|
||||||
|
larger programs.
|
||||||
|
|
||||||
|
|
||||||
|
Other Enhancements
|
||||||
|
------------------
|
||||||
|
o The compiler can now output assembler listings in a form that
|
||||||
|
can be input to MASM if required.
|
||||||
|
o Environment variables can be set up in a text file, therefore
|
||||||
|
reducing the amount of DOS environment space that is needed.
|
||||||
|
The variables can be read and written by COBOL programs.
|
||||||
|
|
||||||
|
New Call-by-Name Routines
|
||||||
|
-------------------------
|
||||||
|
o CBL_EXIT_PROC
|
||||||
|
o CBL_SUBSYSTEM
|
||||||
|
o CBL_COPY_FILE
|
||||||
|
o CBL_GET_SCR_LINE_DRAW
|
||||||
|
o CBL_GET_OS_INFO
|
||||||
|
o PC_FIND_DRIVES
|
||||||
|
|
||||||
|
XM DOS Extender
|
||||||
|
------------
|
||||||
|
o Enable your applications to exceed the 640K DOS memory limit.
|
||||||
|
o Enables up to 16MB of extended memory to be made available to
|
||||||
|
your application.
|
||||||
|
o Supports VCPI, DPMI and XMS protocols.
|
||||||
|
o No need to modify your programs, simply recompile and relink.
|
||||||
|
|
||||||
|
Updated Windows 3.1 components
|
||||||
|
------------------------------
|
||||||
|
o Image Editor:
|
||||||
|
With Image Editor (IMAGEDIT.EXE), you can create graphical
|
||||||
|
images to represent files, windows, cursors, and other
|
||||||
|
objects in your Windows applications.
|
||||||
|
o Dialog Editor:
|
||||||
|
With Dialog Editor (DLGEDIT.EXE), you can visually design and
|
||||||
|
test a dialog box on your screen instead of programmatically
|
||||||
|
using DIALOG statements in your resource-definition file.
|
||||||
|
o Font Editor:
|
||||||
|
With Font Editor (FONTEDIT.EXE), you can modify existing
|
||||||
|
fonts to create new fonts for your applications.
|
||||||
|
o Resource Compiler:
|
||||||
|
With Resource Compiler (RC.EXE) you can compile your Windows
|
||||||
|
resource files and resource-definition files for inclusion
|
||||||
|
in Windows .EXE's and .DLL's.
|
||||||
|
|
||||||
|
Codeview 4.05 Debugger
|
||||||
|
----------------------
|
||||||
|
Supports debugging of mixed language DOS applications including
|
||||||
|
Cobol, C, and MASM.
|
||||||
|
|
||||||
|
|
||||||
|
===================================================================
|
||||||
|
INSTALLATION
|
||||||
|
============
|
||||||
|
|
||||||
|
Installing HIMEM.SYS
|
||||||
|
--------------------
|
||||||
|
For best results, LINK requires HIMEM.SYS (which is supplied
|
||||||
|
with COBOL 5.0 but not installed by Setup). If HIMEM.SYS
|
||||||
|
(or some other memory manager) is not already installed on
|
||||||
|
your computer, follow these instructions:
|
||||||
|
|
||||||
|
1. Verify that HIMEM.SYS is located in the \COBOL\BIN
|
||||||
|
directory and that \COBOL\BIN is included in the
|
||||||
|
PATH statement in your AUTOEXEC.BAT file.
|
||||||
|
|
||||||
|
2. Add this statement to your CONFIG.SYS file:
|
||||||
|
|
||||||
|
DEVICE = C:\COBOL\BIN\HIMEM.SYS
|
||||||
|
|
||||||
|
The DEVICE command for HIMEM.SYS enables the use of
|
||||||
|
extended memory. Therefore, this command must appear
|
||||||
|
in your CONFIG.SYS file before any commands that
|
||||||
|
start device drivers, or programs that use extended
|
||||||
|
memory such as EMM386.EXE.
|
||||||
|
|
||||||
|
Path Length
|
||||||
|
-----------
|
||||||
|
For best results, install the default \COBOL directories.
|
||||||
|
If you choose other installation directory paths, choose
|
||||||
|
paths of reasonable length. Some directory paths are added
|
||||||
|
to the PATH statement in your AUTOEXEC.BAT, which is limited
|
||||||
|
to 128 characters.
|
||||||
|
|
||||||
|
Path Statement Characters
|
||||||
|
-------------------------
|
||||||
|
Do not use invalid path characters, such as:
|
||||||
|
|
||||||
|
< > * " '
|
||||||
|
|
||||||
|
in the Setup utility.
|
||||||
|
|
||||||
|
Source and Target Drive Specification
|
||||||
|
-------------------------------------
|
||||||
|
Do not specify invalid drives when prompted for the
|
||||||
|
installation source drive or destination drive in the
|
||||||
|
Setup utility.
|
||||||
|
|
||||||
|
Using NEW-VARS.BAT
|
||||||
|
------------------
|
||||||
|
After the initial installation of COBOL 5.0, any subsequent
|
||||||
|
installations will create a new NEW-VARS.BAT. This may
|
||||||
|
delete needed statements from the original file. If you
|
||||||
|
re-install COBOL 5.0, make a backup of NEW-VARS.BAT to
|
||||||
|
merge with the new file.
|
||||||
|
|
||||||
|
|
||||||
|
===================================================================
|
||||||
|
PROGRAMMER'S WORKBENCH
|
||||||
|
======================
|
||||||
|
|
||||||
|
Segmented Programs
|
||||||
|
------------------
|
||||||
|
Segmented COBOL programs cannot be run from PWB.
|
||||||
|
|
||||||
|
Using Library Routines (call-by-name) for Mouse
|
||||||
|
-----------------------------------------------
|
||||||
|
Do NOT use the mouse support Library Routine CBL_TERM_MOUSE
|
||||||
|
under PWB for builds using Shared Runtime System (this call
|
||||||
|
is handled by the runtime system). Use of this call under PWB
|
||||||
|
may cause your system to hang.
|
||||||
|
|
||||||
|
Windows .DLL Projects
|
||||||
|
---------------------
|
||||||
|
If you debug a Windows .DLL project, to change from the
|
||||||
|
debug build options to the release build options, do the
|
||||||
|
following:
|
||||||
|
|
||||||
|
1. Close the debug project you are working on.
|
||||||
|
2. Choose "Use Release Option" from the Build Options dialog
|
||||||
|
box.
|
||||||
|
3. Create a new project (.MAK file) for the Windows .DLL
|
||||||
|
using the release options.
|
||||||
|
|
||||||
|
|
||||||
|
===================================================================
|
||||||
|
COMPILER AND LINKER
|
||||||
|
===================
|
||||||
|
|
||||||
|
ANSI Standard for String Literals
|
||||||
|
---------------------------------
|
||||||
|
The ANSI Standard for string literals rule is enforced
|
||||||
|
in COBOL version 5.0. COBOL versions 4.5 and earlier
|
||||||
|
did not enforce this rule. For this reason, programs
|
||||||
|
compiled with earlier versions of COBOL that do not
|
||||||
|
conform to this rule may produce a syntax error.
|
||||||
|
|
||||||
|
For more information and the exact wording of this
|
||||||
|
ANSI rule, see the "Continuation of Lines" section in
|
||||||
|
the COBOL Language Reference book Chapter 2, page 77.
|
||||||
|
|
||||||
|
By-Value Parameter Passing in CALL Statements
|
||||||
|
---------------------------------------------
|
||||||
|
Dynamically linked COBOL programs cannot pass parameters by
|
||||||
|
value, only by reference. Statically linked COBOL
|
||||||
|
Programs can pass parameters either way.
|
||||||
|
|
||||||
|
Sequential File Data Compression
|
||||||
|
--------------------------------
|
||||||
|
To compress data in a sequential file, you must compile
|
||||||
|
using the CALLFH directive.
|
||||||
|
|
||||||
|
Using WINDOWS.78 in a COBOL Program
|
||||||
|
-----------------------------------
|
||||||
|
When WINDOWS.78 is used in a COBOL program, the directive
|
||||||
|
REMOVE(IGNORE) must be used to avoid a compiler error.
|
||||||
|
|
||||||
|
For an example of how to use the REMOVE(IGNORE) directive,
|
||||||
|
refer to SYSMETS.CBL--a sample program located in the
|
||||||
|
\COBOL\SAMPLES\WINDOWS directory.
|
||||||
|
|
||||||
|
|
||||||
|
===================================================================
|
||||||
|
ANIMATOR
|
||||||
|
========
|
||||||
|
|
||||||
|
Animating Sub-Programs
|
||||||
|
-------------------------
|
||||||
|
To animate a program which is called by another program,
|
||||||
|
you must compile using the PARAMCOUNTCHECK directive.
|
||||||
|
For more information, Refer to System Reference,
|
||||||
|
Appendix D (Directives of Compiler), page 578.
|
||||||
|
|
||||||
|
Using Animator From PWB
|
||||||
|
-----------------------
|
||||||
|
If you receive a 198 error while animating under PWB, this is probably
|
||||||
|
caused by insufficient system memory needed to load your program and
|
||||||
|
Animator. The best solution to this is to ensure Animator has access to
|
||||||
|
extended memory by checking the "USE XM for COMPILE and ANIMATE"
|
||||||
|
check box on the COBOL Compiler options screen in PWB.
|
||||||
|
|
||||||
|
The program can also be animated from the command line.
|
||||||
|
In a very large program, or when using certain animator
|
||||||
|
functions, ANIMBASE may have to be used in place of ANIMATOR.
|
||||||
|
|
||||||
|
Using the Cobol Compiler Icon with the ANIM directive
|
||||||
|
-----------------------------------------------------
|
||||||
|
1. Click on the Cobol Compiler icon
|
||||||
|
|
||||||
|
2. Type the filename and ANIM directive as you would
|
||||||
|
at the command line. When the compile finishes
|
||||||
|
successfully, LINK is executed automatically.
|
||||||
|
|
||||||
|
3. Make LINK the active window to allow LINK to process.
|
||||||
|
|
||||||
|
4. Select the OK button from the Application Terminated
|
||||||
|
dialog box.
|
||||||
|
|
||||||
|
|
||||||
|
===================================================================
|
||||||
|
CODEVIEW
|
||||||
|
========
|
||||||
|
|
||||||
|
Arithmetic Data Types
|
||||||
|
---------------------
|
||||||
|
Comp-1, Comp-2, and External Floating Point Data Items are
|
||||||
|
not supported.
|
||||||
|
|
||||||
|
Array Subscripts
|
||||||
|
----------------
|
||||||
|
Index names are not supported as subscripts.
|
||||||
|
|
||||||
|
Conditional Breakpoints
|
||||||
|
-----------------------
|
||||||
|
When a breakpoint expression is entered that contains
|
||||||
|
blanks, the expression must be quoted or parenthesized.
|
||||||
|
For instance, to use
|
||||||
|
|
||||||
|
a + 1
|
||||||
|
|
||||||
|
as a breakpoint expression, enter
|
||||||
|
|
||||||
|
bp ?(a + 1)
|
||||||
|
or
|
||||||
|
bp ?"a + 1"
|
||||||
|
|
||||||
|
The BP= Command (Break on change) will only accept
|
||||||
|
single data items, such as:
|
||||||
|
|
||||||
|
bp= b(1)
|
||||||
|
bp= x
|
||||||
|
|
||||||
|
Multiple-term expressions are not allowed. For example:
|
||||||
|
|
||||||
|
bp= (a + b)
|
||||||
|
bp= (a + 1)
|
||||||
|
bp= (a * 5 + x(2))
|
||||||
|
|
||||||
|
Indexed data items are allowed, but only if the index
|
||||||
|
is a literal:
|
||||||
|
|
||||||
|
bp= q(5)
|
||||||
|
bp= a(1)
|
||||||
|
|
||||||
|
CVPACK Configuration
|
||||||
|
--------------------
|
||||||
|
Codeview uses CVPACK.EXE. There are two possible versions of
|
||||||
|
CVPACK which can be installed for use with COBOL 5.0:
|
||||||
|
|
||||||
|
CVPACKX.@XE and CVPACK.@XE.
|
||||||
|
|
||||||
|
CVPACKX.@XE takes advantage of extended memory. CVPACK.@XE is
|
||||||
|
strictly for Real Mode use when an extended memory manager
|
||||||
|
is NOT present. One of these files will be installed as CVPACK.EXE,
|
||||||
|
depending upon installation options that you choose.
|
||||||
|
|
||||||
|
During Setup, on the CVPACK Configuration screen, if you
|
||||||
|
choose "yes" to use the extended version of CVPACK, CVPACKX.@XE
|
||||||
|
is installed as CVPACK.EXE, and CVPACK.@XE is installed as
|
||||||
|
CVPACKR.EXE. If you choose "no", CVPACK.@XE is installed as
|
||||||
|
CVPACK.EXE, and CVPACKX.@XE is installed as CVPACKX.EXE.
|
||||||
|
|
||||||
|
Double-Quoted Integers
|
||||||
|
----------------------
|
||||||
|
Double-quoted integers used in relational operations,
|
||||||
|
such as:
|
||||||
|
|
||||||
|
"5" = 5
|
||||||
|
|
||||||
|
are not recognized.
|
||||||
|
|
||||||
|
Numeric Literals
|
||||||
|
----------------
|
||||||
|
Leading zeroes are required in decimals. For instance, 0.01
|
||||||
|
is accepted as a valid numeric literal; .01 is not.
|
||||||
|
|
||||||
|
Radix Settings
|
||||||
|
--------------
|
||||||
|
If n16 is set, and a data item consists completely of
|
||||||
|
hex digits, the item will not be read as a symbol, but
|
||||||
|
as a hex number. For instance, the conditional breakpoint
|
||||||
|
bp ?a
|
||||||
|
will treat "a" as the number 10.
|
||||||
|
|
||||||
|
Registers Window Flag
|
||||||
|
---------------------
|
||||||
|
PL and NC flags are not supported in the registers window.
|
||||||
|
|
||||||
|
Reserved Words
|
||||||
|
--------------
|
||||||
|
The following are CodeView reserved words, and may not be
|
||||||
|
used as identifiers anywhere in programs which are to be
|
||||||
|
debugged:
|
||||||
|
main
|
||||||
|
winmain
|
||||||
|
entgqq
|
||||||
|
_main
|
||||||
|
|
||||||
|
|
||||||
|
===================================================================
|
||||||
|
SAMPLE PROGRAMS
|
||||||
|
===============
|
||||||
|
|
||||||
|
MOUSMENU.CBL Program
|
||||||
|
--------------------
|
||||||
|
The sample file C:\cobol\samples\mousmenu.cbl should be run
|
||||||
|
in a full-screen DOS box in Windows. The mouse will not
|
||||||
|
function correctly in a windowed DOS box.
|
||||||
|
|
||||||
|
|
||||||
|
====================================================================
|
||||||
|
MISCELLANEOUS
|
||||||
|
=============
|
||||||
|
|
||||||
|
386 Minimum Requirement
|
||||||
|
-----------------------
|
||||||
|
An 80386 or higher processor is recommended for the
|
||||||
|
following utilities:
|
||||||
|
|
||||||
|
PWB Microsoft Programmer's WorkBench
|
||||||
|
CV Microsoft CodeView
|
||||||
|
LINK Microsoft Segmented Executable Linker
|
||||||
|
EXEHDR Microsoft EXE File Header Utility
|
||||||
|
IMPLIB Microsoft Import Library Manager
|
||||||
|
LIB Microsoft Library Manager
|
||||||
|
NMAKE Microsoft Program Maintenance Utility
|
||||||
|
HELPMAKE Microsoft Help File Maintenance Utility
|
||||||
|
BSCMAKE Microsoft Browser Database Maintenance Utility
|
||||||
|
SBRPACK Microsoft Browse Information Compactor
|
||||||
|
CVPACK Microsoft Debugging Information Compactor
|
||||||
|
RM Microsoft File Removal Utility
|
||||||
|
UNDEL Microsoft File Undelete Utility
|
||||||
|
EXP Microsoft File Expunge Utility
|
||||||
|
WX/WXSRVR Microsoft WX/WXServer Utility
|
||||||
|
|
||||||
|
BTrieve
|
||||||
|
-------
|
||||||
|
When using BTrieve to access information on a server,
|
||||||
|
if the current working drive is not mapped to the server
|
||||||
|
that you are using, the file specification must include
|
||||||
|
the server path (drive letter).
|
||||||
|
|
||||||
|
For example: If the current working drive is C and the
|
||||||
|
server drive is F, then the "select" statement on page
|
||||||
|
133 of the System Reference would look like this:
|
||||||
|
|
||||||
|
select testfile-1 assign to "f:\test-1.dat"
|
||||||
|
|
||||||
|
Conversion Utilities
|
||||||
|
--------------------
|
||||||
|
TABX, Convert3, and Convert5 are to be used only to
|
||||||
|
convert files from another dialect, and will not
|
||||||
|
run if EMM386 is installed.
|
||||||
|
|
||||||
|
H2CPY
|
||||||
|
-----
|
||||||
|
Do not use H2CPY on WINDOWS.H. The WINDOWS.78 and
|
||||||
|
WINDOWS.CPY files are provided in \cobol\samples\windows as correct
|
||||||
|
conversions of WINDOWS.H.
|
||||||
|
|
||||||
|
Microsoft C 7.0
|
||||||
|
---------------
|
||||||
|
Mixed-Language programming using Microsoft C/C++ 7.0 and
|
||||||
|
COBOL 5.0 is possible. However, floating point data types
|
||||||
|
can only be used in one or the other language; not both.
|
||||||
|
This restriction avoids link errors caused by conflicts in
|
||||||
|
the C and COBOL floating point support libraries.
|
||||||
|
|
||||||
|
User-Created Libraries
|
||||||
|
----------------------
|
||||||
|
Libraries created using LIB.EXE cannot be used in the
|
||||||
|
"lib" field of a LINK command unless the calling programs
|
||||||
|
were compiled with the LITLINK compiler directive.
|
||||||
|
If LITLINK is not used, the user-created libraries should
|
||||||
|
be placed in the .OBJ field of the LINK command in order
|
||||||
|
to be linked statically.
|
1064
Microsoft Cobol v5/DOCS/XMCLONES.DOC
Normal file
1064
Microsoft Cobol v5/DOCS/XMCLONES.DOC
Normal file
File diff suppressed because it is too large
Load Diff
BIN
Microsoft Cobol v5/HELP/ADVISOR.HLP
Normal file
BIN
Microsoft Cobol v5/HELP/ADVISOR.HLP
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user