home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / rdebug21.zip / RDEBUG.CMD < prev    next >
OS/2 REXX Batch file  |  1993-03-25  |  2KB  |  94 lines

  1. /*H* RDEBUG.REX 01-30-93 10:58*/
  2.  me='rDEBUG'
  3.  If arg(1)='?' Then Exit tell(me)
  4.  Arg prgm .
  5.  Parse Arg . parms
  6.  Parse source sys .
  7.  if      sys='OS/2'  then sys='OS2'
  8.  else if sys='PCDOS' then sys='DOS'
  9.  i=pos('.',prgm)
  10.  if i>1 then prgm=left(prgm,i-1)
  11.  select
  12.    When prgm = '' Then do
  13.      call '\rdebug\rddemo' '1'
  14.      exit; end
  15.    When prgm = '/DOS' then parse value parms with prgm parms
  16.    When sys = 'DOS' then do
  17.      call version_rexx
  18.      queue 'RDEBUGD' prgm parms
  19.      exit; end
  20.    otherwise nop
  21.  end
  22.  call run
  23.  Exit
  24.  
  25.  RUN:
  26.  trace o?r
  27.  Select
  28.    When sys='DOS' Then do
  29.      drive=dosdrive()':'
  30.      'set path='drive'\rDEBUG;..;%path%'
  31.      /* note drive letter above */
  32.      call version_kedit
  33.      Queue '        MACRO' me 0 prgm parms
  34.  
  35.    end
  36.    When sys='OS2' then do
  37.      call rxfuncadd 'sysloadFuncs', 'rexxUtil','sysloadfuncs'
  38.      call sysloadFuncs
  39.      '@setlocal'
  40.      drive=left(syssearchpath( 'path', '\nul'),2)
  41.      '@set path='drive'\rDEBUG;..;%path%'
  42.      '@set prgm='prgm'.CMD'
  43.      do m=1
  44.        drop dprgm macro
  45.        Queue '            '  0 prgm parms
  46.        '              @KEDIT' prgm'.CMD (PROF RDEBUG'
  47.        do n=1
  48.          if queued()=0 then leave n
  49.          parse pull macro dprgm parms
  50.        end n
  51.        if macro<>'MACRO' then leave m
  52.        if dprgm='DPRGM'  then leave m
  53.        Queue '            '    parms
  54.        '              @KEDIT' prgm'.CMD (PROF' dprgm
  55.        if queued()=0 then leave m
  56.        parse pull . prgm parms
  57.        if prgm ='' then leave m
  58.      end m
  59.      do forever
  60.        if queued()=0 then leave
  61.        parse pull .
  62.      end /*forever*/
  63.      '@endlocal'
  64.    end /*OS2*/
  65.    otherwise do
  66.      Push '        MACRO' me 0 prgm parms
  67.      Queue'        XEDIT' prgm 'EXEC (PROF RDPROFIL'
  68.    end
  69.  end /*Select*/
  70.  return
  71.  
  72.  VERSION_REXX:
  73.  if prxversion()>=3.02 then renvir='/X/L'
  74.  else renvir='/X'
  75.  call value 'RXFLAGS',renvir,'ENVIRONMENT'
  76.  return
  77.  
  78.  VERSION_KEDIT:
  79.  editor='XEDIT.EXE'
  80.  editor='KEDIT.EXE'
  81.  kenvir='NOEMS ISA 8'
  82.  'LISTFILE' editor '(NOH LIFO DATE ENVVAR PATH'
  83.  queue 'END'
  84.  do n=1
  85.    if rc=0 then pull sentinel . . . time .
  86.    if sentinel='END' then leave
  87.    if n>1 then iterate
  88.    if      left(time,2)='05' then kenvir=kenvir 'UMB'
  89.    else if left(time,2)='09' then nop
  90.    else nop
  91.  end
  92.  call value 'KEDIT',kenvir,'ENVIRONMENT'
  93.  return
  94.