How to create an OS/2 2.1 boot disk

From OS2World.Com Wiki
Jump to navigation Jump to search
Article Info
Author
Date
OS Version IBM OS/2 2.1
Companion File N/A
Source [1]


Volume in drive A is unlabeled      Serial number is 2240:C014
Morton F. Kaplon CIS : 73457,437
Directory of  a:\*.*

Boot Disk for OS/2 2.1 GA isomg FAT File System   Mon  06-28-1993 

This is the minimum I have been able to attain. It will just fit on a 1.2 MB floppy

Use sysinstx to create the bootable floppy; From c: sysinstx a:

sysinstx.com is on the Installation Diskette

The rest should already be on the C: drive of installed 2.1

4-22-93  14:50     401   0   ___A_  BKSCALLS.DLL
4-22-93  14:51     398   0   ___A_  BMSCALLS.DLL
4-25-93  16:04    9443   0   ___A_  BVHINIT.DLL
4-22-93  14:54     454   0   ___A_  BVSCALLS.DLL
4-22-93  16:59    3632   0   ___A_  CLOCK01.SYS   Use CLOCK02.SYS if PS-2
4-29-93  21:41   90624  53   ___A_  CMD.EXE
6-28-93  20:29     411   0   ___A_  CONFIG.SYS
4-29-93  21:52   25610   0   ___A_  COUNTRY.SYS
4-29-93  21:30   90854   0   ___A_  DOSCALL1.DLL
6-24-93  22:45    1536   0   RHSA_  EA DATA. SF   Created by sysinstx
4-25-93  17:47   25102   0   ___A_  IBM1FLPY.ADD  Use IBM2FLPY.ADD if PS-2
4-25-93  20:30    9684   0   ___A_  IBMINT13.I13
4-22-93  17:37   29525   0   ___A_  KBD01.SYS     Use KBD02.SYS if PS-2
4-22-93  15:32     858   0   ___A_  KBDCALLS.DLL
4-22-93  16:09     508   0   ___A_  MSG.DLL
4-22-93  16:08     466   0   ___A_  NLS.DLL
6-24-93  22:39    1099   0   RHSA_  OS2BOOT       Created by sysinstx
4-25-93  16:12   56000   0   ___A_  OS2CHAR.DLL
4-22-93  15:39   33236   0   ___A_  OS2DASD.DMD
5-06-93  16:13  734366   0   ___A_  OS2KRNL
4-25-93  15:19   28160   0   ___A_  OS2LDR
4-22-93  11:31    8516   0   ___A_  OS2LDR.MSG
4-29-93  21:27   15250   0   ___A_  QUECALLS.DLL
5-03-93  20:12    5590   0   ___A_  SCREEN01.SYS  Use SCREEN02.SYS if PS-2
4-25-93  16:18   32806   0   ___A_  SESMGR.DLL
4-25-93  16:11    1825   0   ___A_  VIOCALLS.DLL
  1,206,354 bytes in 26 file(s)         1,211,392 bytes allocated
    246,272 bytes free

Config.sys to be used with above file set

buffers=32
iopl=yes
memman=noswap
SET OS2_SHELL=CMD.EXE
protshell=cmd.exe
diskcache=64,LW
protectonly=yes
libpath=.;\;
set path=\;\
set dpath=\;
set keys=on
BASEDEV=OS2DASD.DMD
basedev=ibm1flpy.add       If PS-2 use ibm2flpy.add
basedev=ibmint13.i13
REM basedev=print01.sys    Remove REM if print01.sys used

Note that print01.sys is not used. This means that printing is not supported from this floppy. If used be sure basedev=print01.sys is in config.sys. REPLACE PRINT01.SYS with PRINT02.SYS if PS-2

The basedev=ibmint13.i13 should support just about any hard drive I believe and this has the smallest size. It is smaller than the os2scsi.dmd which also supports SCSI but is not required.

If installing High Performance File System the following should be in config.sys and the files on the floppy

IFS=HPFS.IFS  /CACHE:64 /CRECL:4   129090 bytes
IFS=CDFS.IFS /Q                     40292 bytes

I am not sure the CDFS.IFS is required if CDROM not used. In any event when these are added to the floppy it does require a 1.44 MB floppy.


/* BOOTDISK.CMD for OS/2 2.1 GA by James K. Beard CIS 71675,566        */
/* Two-disk OS/2 2.1 GA boot; packs 1.2 MB in A:, 1.1 MB in B:
   Supported on floppy are CHKDSK, FORMAT, FDISK, BACKUP, RESTORE
   Sufficient room remains on B: (if 1.44 MB) for HPFS, your SCSI
   drivers, the IBM Tiny Editor, etc.  Use the procedure in Appendix C
   of the OS/2 manual to backup and restore the worplace shell, or use
   the shareware WPSBACKUP.

   Modified from MAKEBOOT.CMD version 1.00 by Donald L. Meyer,
   internet:   dlmeyer@uiuc.edu

     This program accepts one parameter:
     * "RECON" tells program to skip main install, and only do optional
       installation of things like SCSI support, etc.
    Thanks go out to Morton Kaplon  (73457,437 @ Compuserve) for
    doing the legwork determining which files/drivers were/weren't
    necessary for Donald L. Meyer's 2.0 version, and David Moskowitz's
    article in "OS/2 2.1 Unleashed" (Sams, 1993) pp 57-59. */

'@ECHO OFF' /* Don't echo system commands to screen */

version=1.00

/*  Initializations */

call get_utils /* Install the RexxUtil functions */

IF (\(SysOS2Ver()='2.10')) THEN DO /* Verify OS/2 2.10 */
  SAY 'Installed OS/2 version is 'SysOS2Ver()
  SAY 'BOOTDISK/CMD 'version' is tested only for OS/2 2.10'
  SAY 'Continue?'
  IF y_or_n()='N' THEN EXIT
  END

/* Parse arguments */
/* Copy command line argument string to "all_args" & convert to upper case */
PARSE UPPER ARG all_args
CALL parse_all_args(all_args)

CALL find_os2 /* Find OS/2 (define "instfrom," ususaly 'C:' */

CALL SysCls  /* Clear screen; "dots" won't work if screen scrolls */
SAY 'BOOTDISK/CMD 'version' for OS/2 2.1'
SAY 'Utility to create two OS/2 2.1 Boot Diskettes for drives A: and B:'

/* Echo instructions on use to screen */
SAY 'Syntax:   BOOTDISK {RECON}'
SAY '        [RECON = Reconfigure existing boot disk.   *Optional]'
SAY

CALL find_config /* Determine type: ISA - EISA, or MCA - PS/2; HPFS=Y or N */

/* Begin creating the two boot disks */
/* Files from Disk 1, copied to A:\*.* */
inst_files = 'OS2KRNL* OS2LDR OS2LDR.MSG SYSINSTX.COM' /* Disk 0 to temp. dir*/
boot_files='OS2KRNL' 'OS2LDR' 'OS2LDR.MSG' /* Temp. dir to A: */
disk1_to_A='KEYBOARD.DCP SYSINST1.EXE COUNTRY.SYS MOUSE.SYS'
/* IF (type='1') THEN disk1_to_A=disk1_to_A' IBM1S506.ADD' */

IF (ReConfig='N') THEN DO
  temp_dir=instfrom'\OS2\INSTALL\BOOTDISK'
  k=SysFileTree(temp_dir'\SYSINSTX.COM', 'file', 'FO')
/*****************************************************************/
/*** Copy necessary files from installation DISK 0 and DISK 1 ****/
  if file.0='0' THEN DO /* If SYSINSTX.COM isn't on C:, use installation disks*/
    k=SysFileTree(temp_dir, 'file', 'DO') /* If not alread there ... */
    if file.0=0 THEN CALL SysMkDir temp_dir /* Create scratch subdirectory */

/* Copy files from installation disk into temporary subdirectory */
    CALL copy_from_a temp_dir 'inst' 'SYSINSTX.COM' inst_files
    'RENAME 'temp_dir'\OS2KRNL* OS2KRNL' /* Correct this file name */

/* Copy specific files from Disk 1 into temporary subdirectory */
    CALL copy_from_a temp_dir '1' 'FDISK.COM' disk1_to_A
    call evict_disk /* Make sure OS/2 2.1 disks are out of A: */
    END
/*****************************************************************/
/******************* Create the boot disks ***********************/

  CALL saywrap('Do you want to format the floppy disks before copying files?')
  IF y_or_n()='Y' THEN
    CALL format_a_b
  ELSE
    CALL label_a_b

/* Install boot track, kernal, loader */
  CALL saywrap('Installing boot track ...')
  temp_dir'\SYSINSTX A: >NUL' /* Boot track */

  k=WORDS(disk1_to_A) /* Add Disk 1 files to boot file list */
  DO i=1 TO k
    boot_files=boot_files WORD(disk1_to_A,i)
    END
  DROP disk1_to_A

  source=temp_dir
  extension='' /* Null strings disrupt argument transfer--use globals */
  CALL copy_to_boot 'A:' boot_files ; /* Copy boot files to A: */

/* Copy the DLL's to B:\DLL */

/* Begin by making the directory B:\DLL */
  i=SysFileTree('B:\DLL', 'file', 'DO') /* If not alread there ... */
  IF file.0=0 THEN CALL SysMkDir 'B:\DLL' /* Create B:\DLL */

  dll_list='ANSICALL DOSCALL1 NLS BKSCALLS BMSCALLS BVHINIT BVSCALLS KBDCALLS MOUCALLS MSG NAMPIPES OS2CHAR QUECALLS SESMGR VIOCALLS'
  IF hpfs='Y' THEN dll_list=dll_list UHPFS

  source=instfrom'\OS2\DLL'
  extension='.DLL' 
  CALL copy_to_boot 'B:\DLL' dll_list

/* Copy files from "instfrom" drive to A: */
  A_list='CMD.EXE OS2DASD.DMD HARDERR.EXE SYSLEVEL.OS2 IBMINT13.I13 IBM'type'FLPY.ADD CLOCK0'type'.SYS KBD0'type'.SYS PRINT0'type'.SYS SCREEN0'type'.SYS IBM1S506.ADD'
  IF hpfs='Y' THEN A_list=A_list HPFS.IFS

  source='' /* Source is various subdirectories in \os2 */
  extension='' /* Extensions are supplied in file list */
  CALL copy_to_boot 'A:' A_list

/* Copy files from "instfrom" drive to B: */
  B_list='CHKDSK.COM FDISK.COM FORMAT.COM DOS.SYS OSO001H.MSG OSO001.MSG' 'BACKUP.EXE' 'RESTORE.EXE'

  CALL copy_to_boot 'B:' B_list /* "source" and "extension" are null strings */

/**********************/
  CALL saywrap('Do you want to leave the temporary directory 'temp_dir' for future')
  CALL saywrap('runs of BOOTDISK/CMD without the OS/2 2.1 installation diskettes?')
  IF y_or_n()='N' THEN DO
/* Erase the temporary files and remove the temporary directory */
    'ECHO Y | DEL 'temp_dir' >NUL' /* Delete files; echo "Y" to prompt */
    CALL SysRmDir temp_dir /* Delete the subdirectory */
    END
/**********************/

  IF type='2' THEN DO  /* Create ABIOS.SYS if a PS/2 boot disk.  */
    abios_file='A:\ABIOS.SYS'
    CALL lineout abios_file, '', 1
    k=lineout(abios_file)
    DROP abios_file
    CALL saywrap('ABIOS.SYS Created on drive A:.')
    END
  END

/*   The Optionals Area  */
/* CALL SysCls */

/* Get drive space */
DriveInfo=SysDriveInfo('B:')
disk_space=WORD(DriveInfo,2)

/* Get co-processor emulator size */
rc = SysFileTree(instfrom'\OS2\DLL\NPXEMLTR.DLL', 'file_c',,)
math_size=WORD(file_c.1,3)

/* Get SCSI driver data */
rc = SysFileTree(instfrom'OS2SCSI.DMD', 'file_s', 'FS')
scsi_size=WORD(file_s.1,3)
scsi_filespec=WORD(file_s.1,5)

/* Check for Tiny Editor */
CALL saywrap('Looking for Tiny Editor IBM freeware ...')
DriveMap=SysDriveMap('C:', 'LOCAL') /* Find all attached hard drives */

DO i=1 to WORDS(DriveMap) /* Loop over the number of drives */
  ed_from=WORD(DriveMap,i)
  rc=SysFileTree(ed_from'THELP.HLP', 'file_e', 'FS') /* Locate TinyEd */
  IF (file_e.0>0) THEN LEAVE /* Define "instfrom" */
  END
IF file_e.0>0 THEN DO
  editor='Y'
  t_hlpsize=WORD(file_e.1,3) /* HELP file size */
  t_hlpspec=WORD(file_e.1,5) /* HELP file pathname */
  sp=LASTPOS('\',t_hlpspec) /* Find pathname for T2.EXE */
  t_exespec=SUBSTR(t_hlpspec,1,sp)'T2.EXE'
  k=SysFileTree(t_exespec, 'file_e', 'F') /* Find executable */
  t_exesize=WORD(file_e.1,3) /* T2.EXE file size */
  t_size=t_hlpsize+t_exesize
  END
ELSE
  editor='N'

/* Start interactive configuration process */
CALL saywrap('Drive B: space is             'disk_space' bytes.')
CALL saywrap('Co-processor emulator size is 'math_size' bytes.')
CALL saywrap('SCSI driver size is           'scsi_size' bytes.')
IF editor='Y' THEN
  CALL saywrap('Editor size is                't_size' bytes.')

IF (disk_space<math_size) & (file_c.0=1) THEN DO
  CALL saywrap(' There isn''t enough space to install coprocessor emulator.')
  ismath='N'
END
ELSE DO
  CALL saywrap('Will this disk be used on machines without math coprocessors?')
  ismath=y_or_n()
  END

IF ismath='Y' THEN DO /* Install emulator; keep track of disk space */
  'COPY 'instfrom'\OS2\DLL\NPXEMLTR.DLL B:\DLL\*.* /B >NUL'
  DriveInfo=SysDriveInfo('B:')
  disk_space=WORD(DriveInfo,2)
  CALL saywrap('Remaining disk space on B: is 'disk_space' bytes.')
  END

IF (disk_space < scsi_size) & (file_s.0='0') THEN DO
  CALL saywrap('There isn''t enough space to install the SCSI Driver...')
  scsi='N'
  END
ELSE DO
  CALL saywrap('Will you need the SCSI Driver installed?')
  scsi=y_or_n()
  END

IF scsi='Y' THEN DO /* Add on SCSI driver size */
  'COPY 'instfrom'\OS2\OS2SCSI.DMD B:\*.* /B >NUL' /* Copy the SCSI driver */
  DriveInfo=SysDriveInfo('B:')
  disk_space=WORD(DriveInfo,2)
  CALL saywrap('Remaining disk space on B: is 'disk_space' bytes.')
  END

IF editor='Y' THEN DO
  IF (disk_space < t_size) THEN DO
    CALL saywrap('There isn''t enough space to install the Tiny Editor.')
    edits='N'
    END
  ELSE DO
    CALL saywrap('Will you need the Tiny Editor installed?')
    edits=y_or_n()
    END
  END
ELSE
  edits='N'

IF edits='Y' THEN DO
  'COPY 't_exespec' B:\edit.exe /B >NUL' /* Rename it EDIT.EXE */
  'COPY 't_hlpspec' B:\*.* /B >NUL'
  END

CALL create_config_sys hpfs type scsi /* Create A:\CONFIG.SYS dynamically */

CALL saywrap('Boot Diskettes have been created.')

DriveInfo=SysDriveInfo('B:') /* Give remaining space on B: */
disk_space=WORD(DriveInfo,2)
CALL saywrap('Remaining disk space on B: is 'disk_space' bytes.')

DriveInfo=SysDriveInfo('A:') /* Give space on A:, too */
disk_space=WORD(DriveInfo,2)
CALL saywrap('Remaining disk space on A: is 'disk_space' bytes.')

EXIT
/************************************************************/
/************* Utility functions and procedures *************/
/************************************************************/
get_utils: PROCEDURE/* Add the RexxUtil functions */
CALL addit 'SysOS2Ver'
CALL addit 'SysCls'
CALL addit 'SysCurPos'
CALL addit 'SysFileTree'
CALL addit 'SysDriveMap'
CALL addit 'SysDriveInfo'
CALL addit 'SysTextScreenRead'
CALL addit 'SysMkDir'
CALL addit 'SysRmDir'
CALL addit 'SysTempFileName'
CALL addit 'SysFileDelete'
RETURN
/*****/
addit: PROCEDURE; ARG funcname
CALL RxFuncAdd funcname, 'RexxUtil', funcname
RETURN
/************************************************************/
parse_all_args: PROCEDURE EXPOSE ReConfig; ARG arg_string

IF (WORD(arg_string,1)='RECON') THEN
  ReConfig='Y'
ELSE
  ReConfig='N'

RETURN
/************************************************************/
find_os2: PROCEDURE EXPOSE instfrom /*Find the drive where OS/2 is installed */
DriveMap=SysDriveMap('C:', 'LOCAL') /* Find all attached hard drives */
DO i=1 TO WORDS(DriveMap) /* Loop over the number of drives */
  k=SysFileTree(WORD(DriveMap,i)'\OS2\HELP.CMD', 'file',,) /*Locate OS/2 */
  IF (file.0='1') THEN instfrom=WORD(DriveMap,i) /* Define "instfrom" */
  END
RETURN
/************************************************************/
find_config: PROCEDURE EXPOSE instfrom type hpfs /* Determine configuration */
rc=SysFileTree(instfrom'\OS2\KBD01.SYS', 'file',,) /* Check: ISA or MCA? */
IF (file.0='1') THEN
  type=1 /* ISA or EISA */
ELSE
  type=2 /* MCA or PS/2 */

rc=SysFileTree(instfrom'\OS2\HPFS.IFS', 'file', 'FO') /* Check: HPFS? */
IF file.0=1 THEN
  hpfs='Y'
ELSE
  hpfs='N'
RETURN
/************************************************************/
copy_from_a: PROCEDURE; ARG temp_dir id filename file_list /* Copy files from A: */
/* temp_dir  Temporary directory to which files are copied */
/* id         Disk ID; 'INST', '1', or '2' */
/* filename   File on OS/2 disk whose existence identifies it */
/* file_list  List of files to copy */
CALL get_inst_disk id filename /* Get the OS/2 2.1 disk */
CALL get_files_a temp_dir id file_list /* Copy the files to the temp subdir */
RETURN
/************************************************************/
get_inst_disk: PROCEDURE; ARG id filename /* Get OS/2 disk in A: */
/* id         Disk ID; 'INST', '1', or '2' */
/* filename   File on OS/2 disk whose existence identifies it */
k=0
DO WHILE k='0'
  CALL BEEP 392, 250 /* Beep 392 Hz for 250 milliseconds */
  if(id='INST') THEN
    SAY 'Insert OS/2 INSTALLATION DISK in drive A:.'
  ELSE
    SAY 'Insert OS/2 Disk 'id' in drive A:.'
  'PAUSE'
  k=SysFileTree('A:\'filename, 'file',,) /* Check for filename */
  k=file.0 /* Try again until filename is found */
  END
RETURN
/************************************************************/
get_files_a: PROCEDURE; ARG temp_dir id file_list
/* Copy files from OS/2 disk in A: */
/* temp_dir  Temporary directory to which files are copied */
/* id         Disk ID; 'INST', '1', or '2' */
/* file_list  List of files to copy */
k=SysFileTree(temp_dir, 'file', 'DO') /* Make sure directory exists */
IF file.0=0 THEN DO
  SAY 'Error in "get_files," directory 'temp_dir' does not exist.'
  EXIT
  END
k=SysCurPos() /* Find row of cursor on screen */
k=WORD(k,1)
IF id='INST' THEN
  message='Copying files from OS/2 2.1 installation disk'
ELSE
  message='Copying files from OS/2 2.1 Disk 'id
SAY message
dot_pos=LENGTH(message)
n=WORDS(file_list)
DO i=1 TO n /* Loop over file names in "file_list" */
  'COPY A:\'WORD( file_list, i) temp_dir' /B >NUL'
  CALL SysCurPos k, dot_pos+i /* Echo a dot for each file */
  SAY '.'
END
RETURN
/************************************************************/
evict_disk: PROCEDURE
/* Evicts OS/2 2.1 installation disk from A: before writing to A: */
/* filename  File name that identifies an installation disk */
k=1
DO FOREVER /* Get the OS/2 2.1 installation disks out of A: */
  sdi=SysDriveInfo('A:')
  IF sdi='' THEN LEAVE /* Disk not ready */
  IF \(WORD(sdi,4)='DISK') THEN LEAVE /* OS/2 disk label is "DISK <n>' */
  CALL BEEP 392, 250
  SAY 'Insert OS/2 2.1 BOOT DISKS [To Be Created] in drives A: and B:.'
  'PAUSE'
  END
RETURN
/************************************************************/
format_a_b: PROCEDURE /* Format A: and B: */

SAY 'FORMATting the boot disks ...'

tempfile=SysTempFileName('TEMP????') /* Write response file for FORMAT */
CALL LINEOUT tempfile, '', 1 /* Open the file, write blank line */
CALL LINEOUT tempfile, 'N'
CALL LINEOUT tempfile /* Close the file */

'FORMAT A: /V:OS21_BOOT_A <'tempfile' >NUL' /* Format and label the disks */
'FORMAT B: /V:OS21_BOOT_B <'tempfile' >NUL'

CALL SysFileDelete tempfile

RETURN
/************************************************************/
label_a_b: PROCEDURE /* Label A: and B: */
'LABEL A:OS21_BOOT_A'
'LABEL B:OS21_BOOT_B'
RETURN
/************************************************************/
copy_to_boot: PROCEDURE EXPOSE source extension instfrom; ARG ab file_list
/* ab         Destination drive, 'A:' or 'B:' */
/* file_list  List of files to copy */
/****Arguments passed as variables to allow null strings****/
/* source     Source path, or blank string '' */
/* extension  Extension, such as '.DLL' to be applied to all file names */
/* instfrom   Hard drive where OS/2 2.1 is installed */

k=SysCurPos() /* Move the cursor to column dot_pos */
k=WORD(k,1)
IF k>21 THEN k=0 /* End-around, don't scroll */

message='Installing Files on new BOOT DISKETTE 'ab
dot_pos=LENGTH(message)
CALL saywrap(message)
/* CALL SysCurPos k, dot_pos qqqq */
n=WORDS(file_list)
DO i=1 TO n
  CALL SysCurPos k+1, 0 /* Echo file names to screen */
  SAY '                                                     ' /* Erase line */
  CALL SysCurPos k+1, 0 /* Echo file names to screen */
  call saywrap(WORD(file_list,i)extension)

  IF source='' THEN DO
    rc=SysFileTree(instfrom'\'WORD(file_list,i)extension,'file','FSO')
    IF (rc>0 | file.0='0') THEN DO
      SAY 'File 'WORD(file_list,i)extension' not found on C:'
      EXIT
      END
    filespec=file.1
    END
  ELSE
    filespec=source'\'WORD(file_list,i)extension
  'COPY 'filespec ab'\*.* /B >NUL' /* System files to ab: */
  CALL SysCurPos k, dot_pos+i /* Echo dots */
  SAY '.'
  END
CALL SysCurPos k+1, 0 /* Clear last file name */
SAY '                                                     '
CALL SysCurPos k+1, 0 /* Leave cursor on beginning of blank line */
DROP file_list
RETURN
/************************************************************/
saywrap: PROCEDURE; PARSE ARG msg /* Erase line, then write to screen */
k=WORD(SysCurPos(), 1) /* Find line number */
IF k>21 THEN DO
  k=0 /* End-around, don't scroll */
  CALL SysCurPos 0, 0
  END
call syscurpos k,0 /*qqqq*/
DO 3
  SAY COPIES(' ', 75) /* Erase lines */
  END
CALL SysCurPos k, 0 /* Back up and write on blank line */
SAY msg
RETURN
/************************************************************/
y_or_n: PROCEDURE /* Get 'Y' or 'N' from console */
/* Syntax:  response=y_or_n()  */
resp='X'
DO UNTIL (resp='Y' | resp='N')
  CALL saywrap('Y or N?')
  PULL resp
  resp=WORD(resp,1) /* Eliminate leading & trailing blanks, etc. */
  END
RETURN resp
/************************************************************/
create_config_sys: PROCEDURE; ARG hpfs type scsi
/* Create the Config.Sys dynamically...   */
CALL saywrap('Creating CONFIG.SYS on drive A: ...')
config_file='A:\CONFIG.SYS'
IF hpfs='Y' THEN DO
  CALL lineout config_file, 'ifs=a:\hpfs.ifs /c:64', 1 /* Opens the file */
  CALL lineout config_file, 'protshell=sysinst1.exe'
  END
ELSE
  CALL lineout config_file, 'protshell=sysinst1.exe', 1
CALL lineout config_file, 'set os2_shell=a:\cmd.exe'
CALL lineout config_file, 'libpath=.;\;b:\dll;'
CALL lineout config_file, 'set path=a:\;b:\;b:\dll;c:\os2'
CALL lineout config_file, 'set dpath=a:\;b:\;b:\dll'
CALL lineout config_file, 'set prompt=$i[$p]'
CALL lineout config_file, 'buffers=32'
CALL lineout config_file, 'iopl=yes'
CALL lineout config_file, 'diskcache=64,LW'
CALL lineout config_file, 'memman=noswap'
CALL lineout config_file, 'basedev=print01.sys'
CALL lineout config_file, 'basedev=ibm1flpy.add'
IF (type='1') THEN CALL lineout config_file, 'BASEDEV=IBM1S506.ADD'
IF (scsi='Y') THEN CALL lineout config_file, 'BASEDEV=B:\IBMSCSI.DMD'
CALL lineout config_file, 'basedev=ibmint13.i13'
CALL lineout config_file, 'basedev=os2dasd.dmd'
CALL lineout config_file, 'protectonly=yes'
CALL lineout config_file, 'pauseonerror=yes'
CALL lineout config_file, 'codepage=437,850'
CALL lineout config_file, 'devinfo=kbd,us,keyboard.dcp'
CALL lineout config_file, 'device=b:\dos.sys'
CALL lineout config_file, 'device=mouse.sys'
CALL lineout config_file, 'set keys=on'
CALL lineout config_file, 'rem device=b:\os2scsi.sys'
CALL lineout config_file, 'rem device=\testcfg.sys'
CALL lineout config_file  /* Close the file */
RETURN
/************************************************************/