Programming/using OS/2 REXX (echo) Saturday, 18-Sep-1999 to Friday, 24-Sep-1999 +----------------------------------------------------------------------------+ From: LEE ARONER 17-Sep-99 12:28:00 To: MURRAY LESSER 18-Sep-99 11:24:17 Subj: Boolean boo-boos ML> Excerpted from a message dated 05-31-99, Jack Stein to David Noon: DN> The LINES() function returns an integer. You were simply DN> lucky that the implementation at that time always returned DN> an integer that was conformable to Boolean usage: 0 or 1. JS>I still don't understand this as the docs state that the built in >function LINES always returns a 1 or a 0, so testing for that seems >OK, and works OK as well, both in CREXX and OREXX. In OREXX, as a >method, it returns a 0 or the number of lines remaining, which also >should work as it is either 0 (false) or not 0, true. It is >"supposed" to work this way for files or STDIN. ML> Hi Jack-- ML> The only language I am familiar with that will accept any nonzero > value as "true" in Boolean expressions is BASIC. Most certainly, none Murray, obviously I'm reading this months after it was posted, but for the record, Borland's pascal can be made (tricked?) to treat integers as described. LRA -- SPEED 2.01 #2720: == Generic Tagline, good for everyday use == --- Platinum Xpress/Win/Wildcat5! v2.0 * Origin: Memory Alpha - (253) 859-6200 (1:343/311) +----------------------------------------------------------------------------+ From: Steve McCrystal 17-Sep-99 06:25:09 To: Eddy Thilleman 18-Sep-99 20:11:18 Subj: Classic REXX files? ; In a msg of , Eddy Thilleman writes to Jack Stein: ; Eddy, JS>> Why not just put the lines in the startup.cmd? ET> Then you have to turn the whole startup.cmd file into a REXX file ET> (I don't know if that's possible). I tried it, and that is indeed correct. I didn't try to make STARTUP a REXX file, but just adding the lines certainly doesn't work. It's simple enough to just do a CALL. Thanks! -[Steve]- --- GoldED/2 3.0.1/# * Origin: -[Steve's Place]- New Berlin, WI (FidoNet 1:154/731.2) +----------------------------------------------------------------------------+ From: Kees Wiegel 18-Sep-99 09:38:11 To: All 18-Sep-99 21:50:00 Subj: NoValue condition Hello All, Would someone of you help me out on the following?: In the beginning of a ObjREXX programma I use the clause 'Signal on NoValue' to trap novalue conditions. Lateron in the same programma I fill an array using the following instruction: BLogLines=WL.nn~MakeArray(Line) This causes a novalue condition for the variable LINE in the above clause. How come? How to avoid? Thanks in advance. Best Regards, Kees Wiegel, Berkel en Rodenrijs, The Netherlands SysOp APBCWgl-BronNet ... De chirurg nam de benen. --- EndOfMsg * Origin: APBCWgl-BronNet (FidoNet 2:286/207) +----------------------------------------------------------------------------+ From: Jack Stein 16-Sep-99 18:32:25 To: Eddy Thilleman 19-Sep-99 10:46:10 Subj: Classic REXX files? Eddy Thilleman wrote in a message to Jack Stein: ET>> Call loadrxx.cmd in your startup.cmd: JS> Why not just put the lines in the startup.cmd? ET> Then you have to turn the whole startup.cmd file into a REXX ET> file (I don't know if that's possible). Sure. I do it that way here. If you are calling a rexx script from startup.cmd, then, why would you not be able to use the start-up to call the Rexx Utilities? Hmmm, I guess you are thinking because startup loads before the WPShell loads? I don't get any error messages though, so I guess PMShell is running when startup starts. The extended utilities don't run w/o PMShell, WPShell however is meaningless to REXX. Jack --- timEd/2-B11 * Origin: Jack's Free Lunch 4OS2 USR 56k Pgh Pa (412)492-0822 (1:129/171) +----------------------------------------------------------------------------+ From: Jack Stein 16-Sep-99 18:33:26 To: Peter Knapper 19-Sep-99 10:46:10 Subj: Classic REXX files? Peter Knapper wrote in a message to Eddy Thilleman: ET> Then you have to turn the whole startup.cmd file into a ET> REXX file (I don't know if that's possible). PK> Too many external utilties modify STARTUP.CMD expecting it PK> to be a standard .CMD file, otherwise there is no problem PK> making it into a REXX script. I resolve this issue by adding PK> Call LDREXX.CMD to STARTUP.CMD and place my REXX stuff in PK> LDREXX. I've never had anything modify my startup.cmd file, except me? I've seen things modify config.sys, and autoexe.bat in DOS, but never startup.cmd. Jack --- timEd/2-B11 * Origin: Jack's Free Lunch 4OS2 USR 56k Pgh Pa (412)492-0822 (1:129/171) +----------------------------------------------------------------------------+ From: David Noon 19-Sep-99 00:00:00 To: Kees Wiegel 19-Sep-99 00:00:00 Subj: NoValue condition In a message dated 09-18-99, Kees Wiegel said to All about "NoValue condition" Hi Kees, KW>In the beginning of a ObjREXX programma I use the clause KW>'Signal on NoValue' to trap novalue conditions. KW>Lateron in the same programma I fill an array using the following KW>instruction: KW> BLogLines=WL.nn~MakeArray(Line) KW>This causes a novalue condition for the variable LINE in the above KW>clause. KW>How come? The variable LINE has not yet been assigned a value. However, it shouldn't be a variable in this context. KW>How to avoid? Put LINE in apostrophes or quotes: BLogLines=WL.nn~MakeArray('Line') It should really be a literal character string. Regards Dave ___ * MR/2 2.25 #353 * Redneck: Refers to 5th grade as "My senior year." --- Maximus/2 2.02 * Origin: OS/2 Shareware BBS, telnet://bbs.os2bbs.com (1:109/347) +----------------------------------------------------------------------------+ From: Rich Wonneberger 19-Sep-99 21:59:00 To: Eddy Thilleman 20-Sep-99 07:46:04 Subj: Classic REXX files? *** Quoting Eddy Thilleman to Rich Wonneberger dated 09-16-99 *** > Ofcourse you can call any cmd file and any program from startup.cmd!! > It's just like autoexec.bat for DOS. I'm surprised you didn't know > that. I was fairly sure it could.. Just not positive.. After thinking about it the last few days, I decided I should add it to my system.. Also, I want to open 2 OS/2 windows, and 2 DOS full screen sessions.. Gota look at the tool bar to see how each are opened.. Rich I-Net turtil@frontiernet.net ... Parking is such street sorrow. Herb Caen --- * Origin: Turtil's Pond BBS. Monroe NY. 914-783-2106 (1:2625/50) +----------------------------------------------------------------------------+ From: Eddy Thilleman 17-Sep-99 09:47:25 To: Peter Knapper 20-Sep-99 15:34:27 Subj: Classic REXX files? Hello Peter, 16 Sep 99 11:39, Peter Knapper wrote to Eddy Thilleman: ET>> Then you have to turn the whole startup.cmd file into a ET>> REXX file (I don't know if that's possible). PK> Too many external utilties modify STARTUP.CMD expecting it to be a PK> standard .CMD file, I've never seen a program that modified or looked at STARTUP.CMD. PK> otherwise there is no problem making it into a PK> REXX script. I haven't tried it. PK> I resolve this issue by adding - Call LDREXX.CMD to PK> STARTUP.CMD and place my REXX stuff in LDREXX. That's what I said earlier. Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... (-*-) <-- Darth Tribble in his TIE fighter --- GoldED/2 3.0.1 * Origin: Windows95 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: MIKE RUSKAI 19-Sep-99 22:32:00 To: KEES WIEGEL 20-Sep-99 20:42:18 Subj: NoValue condition Some senseless babbling from Kees Wiegel to All on 09-18-99 09:38 about NoValue condition... KW> Hello All, KW> Would someone of you help me out on the following?: KW> In the beginning of a ObjREXX programma I use the clause 'Signal on KW> NoValue' to trap novalue conditions. KW> Lateron in the same programma I fill an array using the following KW> instruction: BLogLines=WL.nn~MakeArray(Line) KW> This causes a novalue condition for the variable LINE in the above KW> clause. KW> How come? How to avoid? KW> Thanks in advance. With only that to go by, the only conclusion one can draw is that you've not assigned a value to the variable LINE. Mike Ruskai thannymeister@yahoo.com ... Had to give away the kids - The cat got allergic. ___ Blue Wave/QWK v2.20 --- Platinum Xpress/Win/Wildcat5! v3.0pr2 * Origin: FIDO QWK MAIL & MORE! WWW.DOCSPLACE.ORG (1:3603/140) 267/200 +----------------------------------------------------------------------------+ From: David Bowerman 20-Sep-99 17:25:28 To: Kees Wiegel 21-Sep-99 07:57:16 Subj: NoValue condition Kees Wiegel wrote in a message to All: KW> In the beginning of a ObjREXX programma I use the clause 'Signal on KW> NoValue' to trap novalue conditions. KW> Lateron in the same programma I fill an array using the following KW> instruction: BLogLines=WL.nn~MakeArray(Line) KW> This causes a novalue condition for the variable LINE in the above KW> clause. KW> How come? How to avoid? What does the line where you assign a value to the variable LINE look like? If there is no assignment, LINE has no value and the trap is correct. Regards, David --- timEd/2 1.10.y2k+ * Origin: Frog Hollow -- a scenic backroad off the Infobahn (1:153/290) +----------------------------------------------------------------------------+ From: Steve McCrystal 20-Sep-99 06:33:22 To: Jack Stein 21-Sep-99 15:22:24 Subj: Classic REXX files? ; In a msg of , Jack Stein writes to Eddy Thilleman: ; Jack, ET>> Then you have to turn the whole startup.cmd file into a REXX ET>> file (I don't know if that's possible). JS> Sure. I do it that way here. If you are calling a rexx script JS> from startup.cmd, then, why would you not be able to use the JS> start-up to call the Rexx Utilities? I'm not sure *why* it doesn't work, but I got error messages (unknown function in line xx, as I recall) when I added the lines to startup. When I CALLed the same lines in a seperate script, it worked. I left it that way! :^) -[Steve]- --- GoldED/2 3.0.1/# * Origin: -[Steve's Place]- New Berlin, WI (FidoNet 1:154/731.2) +----------------------------------------------------------------------------+ From: Eddy Thilleman 20-Sep-99 20:06:26 To: Mike Ruskai 21-Sep-99 19:35:23 Subj: Classic REXX files? Hello Mike, 16 Sep 99 12:42, MIKE RUSKAI wrote to EDDY THILLEMAN: ET>>> Call loadrxx.cmd in your startup.cmd: JS>> Why not just put the lines in the startup.cmd? ET>> Then you have to turn the whole startup.cmd file into a REXX file ET>> (I don't know if that's possible). MR> It certainly is. OK, thanks for the comment. :) Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... "We're having an adventure, just like the Goonies!" -- Crow --- GoldED/2 3.0.1 * Origin: Windows98 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: Eddy Thilleman 20-Sep-99 20:10:19 To: Steve Mccrystal 21-Sep-99 19:35:23 Subj: Classic REXX files? Hello Steve, 17 Sep 99 06:25, Steve McCrystal wrote to Eddy Thilleman: JS>>> Why not just put the lines in the startup.cmd? ET>> Then you have to turn the whole startup.cmd file into a REXX file ET>> (I don't know if that's possible). SM> I tried it, and that is indeed correct. I didn't try to make STARTUP a SM> REXX file, but just adding the lines certainly doesn't work. A .cmd file can only be _or_ a normal batch file _or_ a REXX file, and never both. SM> It's simple enough to just do a CALL. Thanks! That's what I do. :) Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... Here I sit, in a tizzy; all my favorite boards are busy --- GoldED/2 3.0.1 * Origin: Windows95 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: Eddy Thilleman 20-Sep-99 20:16:21 To: Jack Stein 21-Sep-99 19:35:23 Subj: Classic REXX files? Hello Jack, 16 Sep 99 18:32, Jack Stein wrote to Eddy Thilleman: JS> Eddy Thilleman wrote in a message to Jack Stein: ET>>> Call loadrxx.cmd in your startup.cmd: JS>> Why not just put the lines in the startup.cmd? ET>> Then you have to turn the whole startup.cmd file into a REXX ET>> file (I don't know if that's possible). JS> Sure. I do it that way here. Then you start your startup.cmd file with a REXX comment? JS> If you are calling a rexx script from startup.cmd, then, why would you JS> not be able to use the start-up to call the Rexx Utilities? That's what I do: I call a REXX file from my startup.cmd. Thinking about startup.cmd: startup.cmd is just a normal batch file and REXX uses also text files with the .cmd extension (because of the command processor), so now I see how you can think of making startup.cmd a REXX file. :) JS> Hmmm, I guess you are thinking because startup loads before the JS> WPShell loads? No, I just hadn't thought about making my startup.cmd file into a REXX file. JS> I don't get any error messages though, so I guess PMShell is running JS> when startup starts. At the time startup.cmd starts, the screen is already a blank graphic screen, that's Program Manager (PM). Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... Windows, or how to turn your 80486 into an 8088.... --- GoldED/2 3.0.1 * Origin: Windows95 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: Tobias Ernst 20-Sep-99 08:25:01 To: Jack Stein 22-Sep-99 03:20:18 Subj: Classic REXX files? Hallo Jack! JS> -+- timEd/2-B11 Because of Y2K, you should definitely upgrade to timEd/2 1.10 and apply the Artfix05 fix package. All the files you need are at http://www.phycip.uni-stuttgart.de/tobi/projects.html#artfix Viele Grüße, Tobias --- Msged/BSD TE 06 (pre) * Origin: Running FreeBSD 3.2 (2:2476/418) +----------------------------------------------------------------------------+ From: MIKE RUSKAI 21-Sep-99 18:56:00 To: DAVID BOWERMAN 22-Sep-99 06:57:06 Subj: NoValue condition Some senseless babbling from David Bowerman to Kees Wiegel on 09-20-99 17:25 about NoValue condition... DB> Kees Wiegel wrote in a message to All: KW> In the beginning of a ObjREXX programma I use the clause 'Signal on KW> NoValue' to trap novalue conditions. KW> Lateron in the same programma I fill an array using the following KW> instruction: BLogLines=WL.nn~MakeArray(Line) KW> This causes a novalue condition for the variable LINE in the above KW> clause. KW> How come? How to avoid? DB> What does the line where you assign a value to the variable LINE look DB> like? If there is no assignment, LINE has no value and the trap is DB> correct. I recently looked at the OREXX docs to figure out just when the makearray method is supposed to take an argument, and it's only when creating an array from a stream object. The only two valid arguments are 'LINES' and 'CHARS'. It will, however, work for any subtring of each argument. So, his code will work, but trigger the NOVALUE condition. To not trigger it, he must enclose it in quotes, making it an explicit string, rather than an implicit string (after all other evaluations of the symbol fail). Mike Ruskai thannymeister@yahoo.com ... Bring out your dead. Bring out your dead. ___ Blue Wave/QWK v2.20 --- Platinum Xpress/Win/Wildcat5! v3.0pr2 * Origin: FIDO QWK MAIL & MORE! WWW.DOCSPLACE.ORG (1:3603/140) 267/200 45 +----------------------------------------------------------------------------+ From: David Bowerman 21-Sep-99 23:30:27 To: Steve McCrystal 22-Sep-99 06:57:06 Subj: Classic REXX files? Steve McCrystal wrote in a message to Jack Stein: JS> Sure. I do it that way here. If you are calling a rexx script JS> from startup.cmd, then, why would you not be able to use the JS> start-up to call the Rexx Utilities? SM> I'm not sure *why* it doesn't work, but I got error messages SM> (unknown function in line xx, as I recall) when I added the lines SM> to startup. When I CALLed the same lines in a seperate script, it SM> worked. I left it that way! :^) Did you add the initial "/* blah de blah */" comment starting on the first column of the first line? Minus the ""s of course. Without that comment, the file will be sent to the command interpreter which is going to have trouble attempting to make sense of a REXX file. Of course, I know this simply from reading the manual. Regards, David --- timEd/2 1.10.y2k+ * Origin: Frog Hollow -- a scenic backroad off the Infobahn (1:153/290) +----------------------------------------------------------------------------+ From: Kees Wiegel 21-Sep-99 16:39:23 To: David Noon 22-Sep-99 13:53:26 Subj: NoValue condition Hello David, Sunday September 19 1999 00:00, David Noon wrote to Kees Wiegel: DN> The variable LINE has not yet been assigned a value. However, it DN> shouldn't be a variable in this context. DN> It should really be a literal character string. Bingo! I completely overlooked that. Thank you for helping out. Best Regards, Kees Wiegel, Berkel en Rodenrijs, The Netherlands SysOp APBCWgl-BronNet ... Soon to be released: 32-bits EdLin for Windows 95! --- EndOfMsg * Origin: APBCWgl-BronNet (FidoNet 2:286/207) +----------------------------------------------------------------------------+ From: Eddy Thilleman 21-Sep-99 09:27:17 To: Rich Wonneberger 22-Sep-99 20:42:19 Subj: Classic REXX files? Hello Rich, 19 Sep 99 21:59, Rich Wonneberger wrote to Eddy Thilleman: RW> After thinking about it the last few days, I decided I should add it RW> to my system.. Also, I want to open 2 OS/2 windows, and 2 DOS full RW> screen sessions.. Gota look at the tool bar to see how each are RW> opened.. see the text about the start command in CMDREF.INF: /win for windowed session /fs for fullscreen session /f for foreground /b for background /dos for DOS session Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... Screw the Prime Directive - inflict Windows on the Borg! --- GoldED/2 3.0.1 * Origin: Windows98 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: Eddy Thilleman 21-Sep-99 23:41:04 To: All 22-Sep-99 20:42:19 Subj: hstart wget? Hello All, I made a REXX file wgetmir.cmd to read all the lines in a textfile which are the websites or files on internet to retrieve with wget. wget is running OK when hstarted from a command line or a plain batch file, but not from the REXX file (no screen output or no log file if log file is specified). Does someone spot what I'm doing wrong? ------------------- begin of wgetmir.cmd ------------------- /* start wget mirroring each website/file listed in wget.mir */ arg InFile if InFile = '' then InFile = 'wget.mir' '@echo off' dir = directory( 'c:\www' ) 'set wgetrc=c:\www\wget.cfg' dquote = d2c(34) /* " double quote character */ squote = d2c(39) /* ' single quote character */ cmd1 = ' wget -m -c -nc -np -Q1m --tries=1 -k -w1 ' cmd2 = ' -a wgetmir' cmd3 = '.log>nul' signal on notready LineNr = 0 LineIn( InFile, 1, 0 ) /* No read; opens inputfile */ /* (if file is already open, sets the read position to the first line). */ do while Lines( InFile ) > 0 Line = LineIn( InFile ) LineNr = LineNr + 1 say LineNr': 'Line cmd = cmd1||Line||cmd2||LineNr||cmd3 "hstart /win /c b " cmd end exit NotReady: if LineNr = 0 then say 'could not open 'InFile exit -------------------- end of wgetmir.cmd -------------------- Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... WindowError:019 User error. It's not our fault. Is not! Is not! --- GoldED/2 3.0.1 * Origin: Windows95 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: Rich Wonneberger 22-Sep-99 22:17:00 To: Eddy Thilleman 23-Sep-99 07:00:12 Subj: Classic REXX files? *** Quoting Eddy Thilleman to Rich Wonneberger dated 09-21-99 *** > see the text about the start command in CMDREF.INF: > /win for windowed session Thanks Eddy. I didnt look in it yet, but the help has it also for START command. This weekend I will tinker with it a bit. Rich I-Net turtil@frontiernet.net ... C program run. C program crash. C programmer get drunk. --- * Origin: Turtil's Pond BBS. Monroe NY. 914-783-2106 (1:2625/50) +----------------------------------------------------------------------------+ From: Eddy Thilleman 22-Sep-99 16:25:02 To: Steve Mccrystal 24-Sep-99 06:16:06 Subj: Classic REXX files? Hello Steve, 20 Sep 99 06:33, Steve McCrystal wrote to Jack Stein: JS>> Sure. I do it that way here. If you are calling a rexx script JS>> from startup.cmd, then, why would you not be able to use the JS>> start-up to call the Rexx Utilities? SM> I'm not sure *why* it doesn't work, but I got error messages (unknown SM> function in line xx, as I recall) when I added the lines to startup. SM> When I CALLed the same lines in a seperate script, it worked. I left SM> it that way! :^) If you add REXX code to a plain batch file then that batch is not a REXX file that can be run, you have to turn the whole batch file into a REXX file: on the first line in the first column the batch file must start with a comment, to begin with. Why don't you post here what you made out of it, so we could take a look at it? Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... WindowError:001 Windows loaded. System in danger. --- GoldED/2 3.0.1 * Origin: Windows98 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: Eddy Thilleman 22-Sep-99 16:36:26 To: All 24-Sep-99 06:16:06 Subj: hstart wget? Hoi! I've it working. :) It turned out to be the result of a limitation of wget: wget cannot 'timestamp' and 'not clobber' files at the same time. I had timestamping = on in wget.cfg and used the -nc (no clobber) parameter at the same time. I had for each wget a logfile specified, it surprised me that wget doesn't create the logfile because of this error (so I didn't see this error because the sessions were closed). ------------------- begin of wget.cfg ------------------- continue = on convert_links = on dirstruct = on quota = 1m tries = 5 follow_ftp = on timestamping = on -------------------- end of wget.cfg -------------------- --------------------- begin of wgetmir.cmd --------------------- /* start wget mirroring each website/file listed in wget.mir */ arg InFile if InFile = '' then InFile = 'wget.mir' dir = directory( 'c:\www' ) 'set wgetrc=c:\www\wget.cfg' cmd1 = 'wget.exe -m -c -np --tries=1 -k -w1 ' cmd2 = ' -a wgetmir' cmd3 = '.log' signal on notready LineNr = 0 LineIn( InFile, 1, 0 ) /* No read; opens inputfile */ /* (if file is already open, sets the read position to the first line). */ do while Lines( InFile ) > 0 Line = LineIn( InFile ) LineNr = LineNr + 1 say LineNr': 'Line cmd = cmd1||Line||cmd2||LineNr||cmd3 "@hstart /win /c /b "cmd">nul" end exit NotReady: if LineNr = 0 then say 'could not open 'InFile exit --------------------- end of wgetmir.cmd --------------------- For each line in wget.mir a separate wget-task is started, all running at the same time. This way, next lines won't have to wait until files on previous lines are complete. I stopped using RxFTP because wget is much more capable: wget can pick up where a previous download of a file was not complete, mirroring, etc. Greetings -=Eddy=- email: eddy.thilleman@net.hcc.nl ... "Windows NT Performance", on the next "In Search Of" --- GoldED/2 3.0.1 * Origin: Windows98 is a graphic DOS extender (2:500/143.7) +----------------------------------------------------------------------------+ From: Jack Stein 22-Sep-99 08:03:17 To: Steve Mccrystal 24-Sep-99 10:24:12 Subj: Classic REXX files? Steve Mccrystal wrote in a message to Jack Stein: ET>> Then you have to turn the whole startup.cmd file into a REXX ET>> file (I don't know if that's possible). JS> Sure. I do it that way here. If you are calling a rexx script JS> from startup.cmd, then, why would you not be able to use the JS> start-up to call the Rexx Utilities? SM> I'm not sure *why* it doesn't work, but I got error messages SM> (unknown function in line xx, as I recall) when I added the SM> lines to startup. When I CALLed the same lines in a SM> seperate script, it worked. I left it that way! :^) Either you did not turn your STARTUP.CMD into a REXX script, or, you turned it into a REXX script, but had normal batch language (syntax) in the script. The first thing OS/2 does is determine if the script is regular cmd file, or, a REXX script, it knows this by the very first line at position 0,0 in the file. If it is a comment, then what follows MUST be REXX code, using REXX syntax. If your script is a REXX script, then you can start the REXX Extended Utilities from the startup.cmd file, as well as use any other REXX commands. You can also use any regular batch commands, but you must use proper quoting so REXX knows what is meant as literals to be passed to cmd.exe, and what are internal instructions to to REXX. For example, to load my 4OS2 alias file a regular cmd file would have: ALIAS /r e:\4os2301\os2alias REXX has no clue what "ALIAS" is, so he passes ALIAS to CMD.EXE. The paramaters however are very confusing to REXX, since it recognizes some of the symbols, such as "/", and "\". Because of this, you must quote the parameters so REXX doesn't try to divide something by r, for example, so the line looks like this in a REXX script: ALIAS '/r e:\4os2301\os2alias' Also, to make a directory, the same thing applies: md "z:\xpress" You have to understand this enough so you can use REXX fully, and the STARTUP.CMD file is no different than any other REXX script. In short, it's OK not to start up the extended utilities in your startup.cmd, but it's not OK to not know why you got the errors.:-) Jack --- timEd/2-B11 * Origin: Jack's Free Lunch 4OS2 USR 56k Pgh Pa (412)492-0822 (1:129/171) +----------------------------------------------------------------------------+ From: Jack Stein 22-Sep-99 08:34:02 To: Eddy Thilleman 24-Sep-99 10:24:12 Subj: Classic REXX files? Eddy Thilleman wrote in a message to Jack Stein: ET>>> Call loadrxx.cmd in your startup.cmd: JS>> Why not just put the lines in the startup.cmd? ET>> Then you have to turn the whole startup.cmd file into a REXX ET>> file (I don't know if that's possible). JS> Sure. I do it that way here. ET> Then you start your startup.cmd file with a REXX comment? Yes, one can't call REXX functions from a batch file, right? JS> If you are calling a rexx script from startup.cmd, then, why JS> would you not be able to use the start-up to call the Rexx JS> Utilities? ET> That's what I do: I call a REXX file from my startup.cmd. That's OK too, but not necessary if your startup.cmd is a REXX file. ET> Thinking about startup.cmd: startup.cmd is just a normal ET> batch file and REXX uses also text files with the .cmd ET> extension (because of the command processor), so now I see ET> how you can think of making startup.cmd a REXX file. :) Yep, but you must understand how to use regular batch commands in a REXX script if you are also mixing in regular batch commands. This is part of knowing how to use REXX, so the concepts are important either way. JS> Hmmm, I guess you are thinking because startup loads before the JS> WPShell loads? ET> No, I just hadn't thought about making my startup.cmd file ET> into a REXX file. JS> I don't get any error messages though, so I guess PMShell is running JS> when startup starts. ET> At the time startup.cmd starts, the screen is already a ET> blank graphic screen, that's Program Manager (PM). I remember long ago people used to say REXX didn't work w/o PMShell, but that is wrong, it works fine w/o PMShell, but the extended utilities don't work w/o PMShell. Not many people run OS/2 w/o the "windows" shell, even hard core windows haters like me. Too much stuff depends on PMShell to be bothered avoiding it completly, so I learned to live with it. Jack --- timEd/2-B11 * Origin: Jack's Free Lunch 4OS2 USR 56k Pgh Pa (412)492-0822 (1:129/171) +----------------------------------------------------------------------------+ From: Jack Stein 22-Sep-99 08:50:10 To: Tobias Ernst 24-Sep-99 10:24:12 Subj: Classic REXX files? Tobias Ernst wrote in a message to Jack Stein: TE> Hallo Jack! JS> -+- timEd/2-B11 TE> Because of Y2K, you should definitely upgrade to timEd/2 TE> 1.10 and apply the Artfix05 fix package. All the files you TE> need are at TE> http://www.phycip.uni-stuttgart.de/tobi/projects.html#artfix Thanks Tobias, I'll have to give it a look. I have far more problems than just the off-line reader though, my BBS dies on Y2K, so I have to either quit, or change BBS systems. I don't feel like doing either, so who knows where I'll be on 1/1/00. I guess I'll switch to MAX/2 if I get the energy. Jack --- timEd/2-B11 * Origin: Jack's Free Lunch 4OS2 USR 56k Pgh Pa (412)492-0822 (1:129/171) +----------------------------------------------------------------------------+ +============================================================================+