home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / xwplascr.zip / XWPL0208.ZIP / release / bin / bootmgr.cmd < prev    next >
OS/2 REXX Batch file  |  2000-01-04  |  2KB  |  54 lines

  1. /* Add BootManager choices to XDesktop shutdown actions */
  2. /* This will modify the XFolder INI keys in OS2.INI to  */
  3. /* contain all Bootmanager partitions as user reboot    */
  4. /* options.                                             */
  5. /* (W) (C) 1998 Duane A. Chamblee <duanec@ibm.net>      */
  6. /* Part of the XFolder package.                         */
  7.  
  8. /* Updated with V1.00 to work with Aurora.              */
  9.  
  10. call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
  11. call SysLoadFuncs
  12.  
  13. '@call RXQUEUE.EXE /CLEAR'
  14.  
  15.  
  16. inicurrent=SysINI('USER','XFolder', 'RebootTo')
  17. if inicurrent='ERROR:' then
  18.    inistring=''
  19. else
  20.    inistring=LEFT(inicurrent,LENGTH(inicurrent)-2)
  21. if sysOS2Ver()>='2.45' then
  22.    'call lvm /query:bootable 2>&1 | RXQUEUE.EXE'
  23. else
  24.    'call fdisk /query /bootable:1 2>&1 | RXQUEUE.EXE'
  25.  
  26. /* Parse LVM output */
  27. if sysOS2Ver()>='2.45' then do until LINES("QUEUE:")=0
  28.    parse value linein("QUEUE:") with oneline
  29.    if STRIP(oneline)='' then iterate
  30.    parse var oneline drive': ' name 15 .
  31.    if name='' then iterate
  32.    if TRANSLATE(drive)='DRIVE' then iterate
  33.    if POS(name,inistring)>0 then iterate
  34.    name = strip(name)
  35.    say 'adding: 'name
  36.    inistring=inistring||name||'00'x||'setboot /iba:"'||name||'"'||'00'x
  37. end
  38. /* Parse FDISK output */
  39. else Do until LINES("QUEUE:")=0
  40.    parse value linein("QUEUE:") with oneline
  41.    if STRIP(oneline)='' then iterate
  42.    parse var oneline drive 7 name 15 .
  43.    if TRANSLATE(drive)='DRIVE' then iterate
  44.    if POS(name,inistring)>0 then iterate
  45.    name = strip(name)
  46.    say 'adding: 'name
  47.    inistring=inistring||name||'00'x||'setboot /iba:"'||name||'"'||'00'x
  48. end
  49. if inistring<>'' then
  50.    call SysINI 'USER','XFolder', 'RebootTo', inistring||'00'x||'00'x
  51. '@call RXQUEUE.EXE /CLEAR'
  52.  
  53.  
  54.