OS2 World Community Forum

OS/2, eCS & ArcaOS - Technical => Applications => Topic started by: Martin Iturbide on July 06, 2019, 04:26:42 pm

Title: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 06, 2019, 04:26:42 pm
Hi

I was bored yesterday and I did some old testing of the OS/2 clock apps I was able to find at hobbes.

At the end I produced these pages on the wiki: https://www.os2world.com/wiki/index.php/Category:Clocks (https://www.os2world.com/wiki/index.php/Category:Clocks)
My idea was to just quickly post a screenshot of the software and some basic information.

If someone wants to do something similar, like revising some utilities, calculators, screensavers, etc, etc... remember that you can use the wiki or post pictures here (on the forum) and I will try my best to organize those on the wiki. Maybe someday we will accomplish the idea to have at least one wiki page for each OS/2 application :)

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 07, 2019, 03:43:54 pm
You can insert a link to the sometimes forgotten classic OS/2 clock "app": https://www.os2world.com/wiki/index.php/Creating_a_WPS_Object (https://www.os2world.com/wiki/index.php/Creating_a_WPS_Object).
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 13, 2019, 12:46:41 pm
https://www.os2world.com/wiki/index.php/Category:Clocks (https://www.os2world.com/wiki/index.php/Category:Clocks)
Since eCenter, its (missing) new eCenter/xCenter clock widget may account for the (missing) old clock app "Clock" (WPClock WPS object, the word clock was translated).

FWIW, it's an archive: AFAICT Beat/2 is commercially outdated, because Swatch no longer has a webpage which shows the .beat time. "Even" Windows crashed while trying, but https://www.swatch.com/en_us/internet-time/ just seems to try to show a cartoon now.
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 13, 2019, 01:24:17 pm
Hi.

You are right, I should include WPClock, and I guess the Xcenter clocks should be included too.

On Beat/2 I'm getting the following error. (attached) Any ideas? Is that related to swatch.com/en_us/internet-time/ no longer working (or changed) ?

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 13, 2019, 05:01:38 pm
On Beat/2 I'm getting the following error. (attached) Any ideas? Is that related to swatch.com/en_us/internet-time/ no longer working (or changed) ?
The TZ parsing was buggy, IIRC because a fixed or maximum length was assumed. What is your full TZ string in CONFIG.SYS, and are you using the R3 release?

An assumed downgrade to http://www.dreamlandbbs.com/filegate/fernwood/apps/Beat203.zip (http://www.dreamlandbbs.com/filegate/fernwood/apps/Beat203.zip) may work for your TZ, if the R3 release fails. Or the even older http://www.dreamlandbbs.com/filegate/fernwood/apps/Beat2-02.zip (http://www.dreamlandbbs.com/filegate/fernwood/apps/Beat2-02.zip). But I guess your perfectly fine TZ variable has an "unexpected" value/format.

The website is unrelated, but could be used to verify the settings. Mainly the time zone difference setting. Your time in .beat units should have been (about) the same as the displayed one. You had to select a region or country (may have been commercial input), and a city/capital (e.g. Quito), so it probably displayed a local time and the global time in .beat units.
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 15, 2019, 02:45:59 pm
Let's take a look at the OS/2 Calculators.

https://www.os2world.com/wiki/index.php/Category:Calculators (https://www.os2world.com/wiki/index.php/Category:Calculators)
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 15, 2019, 06:52:52 pm
Let's take a look at the OS/2 Calculators.

https://www.os2world.com/wiki/index.php/Category:Calculators (https://www.os2world.com/wiki/index.php/Category:Calculators)

-3. The IBM WIN-OS/2 Calculator we've got is missing. Including this (non-OS/2) OS calculator is arbitrary: x:\OS2\MDOS\WINOS2\CALC.EXE

-2. There may be at least 4 categories, excluding verifying tools and fixed input: CLI, PM, RPM and specialized, unit converters with variable user input (i.e. no ASCII tables).

-1. One of the calculators was renamed later.

0. @Martin, you may have missed it: what is you CONFIG.SYS' TZ setting (for a possible generic Beat/2-clock fix or work-around)?

1. The OS calculator is missing. YMMV, but mine's: x:\ECS\BIN\ECSCALC.EXE

2. "Calculator" (title bar's name) is missing. An executable called CALC.EXE, a CALC.ICO, and 3 VX-REXX source files.

3. Calcus is missing.

4. CCALC (CCALC.EXE) appears be missing.

5. DECalc is missing. You should mention its sticking BIN/DEC/HEX/OCT setting, so programmers can calculate 9*6 without having to think about that.

6. ehm is missing (Qt-based).

7. HPcalc is missing.

8. KeyCalc is missing.

9. PMCalc (IBM EWS?) is missing.

A. PMDCalc appears to be missing.

B. PMReXX Calculator is missing.

C. QEasyCalc is missing (Qt-based).

D. RPCALC is missing.

E. WarpCalc is missing.

F. Nameless Rexx one-liner. Untested usage sample: RR.CMD Date('B') / ( Words('Two words)') * 7 ) + 3

Code: [Select]
/**/;ARG x;INTERPRET SAY x;EXIT
Longer, CLI, known as RC.CMD:

Code: [Select]
/* REXX Calculator */

/* (c) Torus Brokers 1996 */

SIGNAL ON Error
SIGNAL ON Halt

PARSE ARG calculation

IF LoadRexxUtil() THEN EXIT

CALL SysCls
SAY
SAY

IF calculation='' | calculation='/?' | calculation='-?' THEN DO
   SAY 'The REXX Calculator can be used to perform simple calculations.'
   SAY 'Standard REXX functions for calculations are also valid.'
   CALL Explain
   EXIT
END

IF Left(calculation,1)='"' THEN DO
   PARSE VAR calculation '"' calculation '"' sum
END

INTERPRET resultc '=' calculation

IF DATATYPE(resultc,N)=0 THEN DO
   SAY 'The result of the given calculation is not a valid number.'
   CALL Explain
   EXIT
END

SAY '==================='
SAY '= REXX Calculator ='
SAY '==================='
SAY
SAY calculation '=' resultc
SAY

EXIT

LoadRexxUtil: PROCEDURE
   IF RxFuncQuery('SysLoadFuncs') THEN DO
      IF RxFuncAdd('SysLoadFuncs','RexxUtil','SysLoadFuncs') THEN DO
         SAY
         SAY
         SAY 'The RexxUtil library (REXXUTIL.DLL), part of OS/2, cannot be'
         SAY 'loaded. Possible reasons may be :'
         SAY
         SAY '  - REXXUTIL.DLL does not exist in the LIBPATH'
         SAY '  - REXXUTIL.DLL is not installed'
         SAY '  - Not enough memory available'
         SAY
         SAY 'The program processed nothing.'
         SAY
         RETURN 1
      END
   CALL SysLoadFuncs
   END
RETURN 0

Explain: PROCEDURE
   SAY
   SAY '   Syntax :'
   SAY
   SAY '   RC <calculation>'
   SAY
   SAY 'Where <calculation> represents a valid calculation. Examples :'
   SAY
   SAY '   RC 4E3/100   --> 40'
   SAY '   RC (8/2)-5   --> -1'
   SAY '   RC "1|1"     -->  1'
   SAY '   RC 2+3-5     -->  0'
   SAY
RETURN 0

Error:
Halt:
SAY
SAY 'The result of the given calculation cannot be calculated.'
CALL Explain
EXIT

Same, longer, dual-mode (PM UI requires installer and fixed or non-broken PMREXX.EXE), known as PMRC.CMD:

Code: [Select]
/* PM REXX Calculator */

/* (c) Torus Brokers 1996 */

SIGNAL ON Error
SIGNAL ON Halt

PARSE ARG calculation

IF LoadRexxUtil() THEN EXIT

IF Address()<>'PMREXX' THEN DO
   CALL SysCls
   SAY
   SAY
   SAY 'PMRC.CMD is the OS/2 PM version of RC.CMD. PMINSTAL.CMD can be'
   SAY 'used to create a program Object on the OS/2 PM. This will start'
   SAY 'PMRC with all required parameters. PMRC.CMD needs PMREXX.EXE'
   SAY '(part of OS/2), which should exist in your PATH or in the'
   SAY 'current directory.'
   SAY
   SAY '   Syntax for use with PMREXX :'
   SAY
   SAY '   PMREXX PMRC.CMD <calculation>'
   SAY
   EXIT
END

title='PM REXX Calculator'

IF calculation='' | calculation='/?' | calculation='-?' THEN DO
   enter='0A'x
   explain1='This program can be used to perform simple '
   explain2='calculations. Standard REXX functions for calculations '
   explain3='are also valid.'||enter||enter
   explain4='Examples of valid calculations are :'||enter
   explain5=enter||'4E3/100     (8/2)-5     "1|1"     2+3-5'||enter||enter
   explain6='The results are, respectively, 40, -1, 1 and 0.'
   explain7=enter||enter||'The result of the calculation is displayed in the format '
   explain8="<calculation> = <result>. A '='-sign at the end of the given "
   explain9='calculation may not be used, because the program already performs'
   explain10=' this action by itself.'
   explain11=explain1||explain2||explain3||explain4||explain5
   explain12=explain6||explain7||explain8||explain9||explain10
   explain=explain11||explain12
   rc=RxMessageBox(explain,title,'OK','INFORMATION')
   EXIT
END

IF Left(calculation,1)='"' THEN DO
   PARSE VAR calculation '"' calculation '"' sum
END

INTERPRET resultc '=' calculation

IF DATATYPE(resultc,N)=0 THEN DO
   error='The result of the given calculation is not a valid number.'
   rc=RxMessageBox(error,title,'OK','ERROR')
   EXIT
END

rc=RxMessageBox(calculation '=' resultc,title,'OK','INFORMATION')

EXIT

LoadRexxUtil: PROCEDURE
   IF RxFuncQuery('SysLoadFuncs') THEN DO
      IF RxFuncAdd('SysLoadFuncs','RexxUtil','SysLoadFuncs') THEN DO
         SAY
         SAY
         SAY 'The RexxUtil library (REXXUTIL.DLL), part of OS/2, cannot be'
         SAY 'loaded. Possible reasons may be :'
         SAY
         SAY '  - REXXUTIL.DLL does not exist in the LIBPATH'
         SAY '  - REXXUTIL.DLL is not installed'
         SAY '  - Not enough memory available'
         SAY
         SAY 'The program processed nothing.'
         SAY
         RETURN 1
      END
   CALL SysLoadFuncs
   END
RETURN 0

Error:
Halt:
title='PM REXX Calculator'
reason='The result of the given calculation cannot be calculated.'
rc=RxMessageBox(reason,title,'OK','ERROR')
EXIT

Installer of PMRC.CMD:

Code: [Select]
/* Creates a program Object for PMRC on the OS/2 PM */

/* (c) Torus Brokers 1996 */

SIGNAL ON Error
SIGNAL ON Halt

IF LoadRexxUtil() THEN EXIT

CALL SysCls
SAY
SAY

IF NotHere('CMD') THEN EXIT
IF NotHere('ICO') THEN EXIT

here=SysSearchPath('PATH','PMREXX.EXE')

IF here='' THEN DO
   rc=SysFileTree('PMREXX.EXE','check','FO')
   IF rc=2 THEN DO
      SAY 'There is not enough available memory to query a list of files.'
      SAY 'The installation has not been completed.'
      SAY
      EXIT
   END
   IF check.0=0 THEN DO
      SAY 'PMREXX.EXE, part of OS/2, cannot be found in the PATH or in the'
      SAY 'current directory. The installation has not been completed.'
      EXIT
   END
END

current=Directory()||'\PMRC.'

class='WPProgram'
title='PM REXX Calculator'
location='<WP_DESKTOP>'
setup1='EXENAME=PMREXX.EXE;ICONFILE='||current||'ICO;'
setup2='PARAMETERS='||current||'CMD'
setup3=' [Enter a calculation (Select Open for help)];'
setup=setup1||setup2||setup3
action='ReplaceIfExists'

rc=SysCreateObject(class,title,location,setup,action)

IF rc=0 THEN DO
   SAY 'A program Object for PMRC.CMD could not be created on the OS/2 PM.'
   SAY
   SAY 'You can also run PMRC.CMD by using the OS/2 command-line. Syntax is :'
   SAY
   SAY '   PMREXX PMRC.CMD <calculation>'
   SAY
   SAY 'PMREXX(.EXE) is a part of OS/2; PMRC.CMD is the application which'
   SAY 'will be runned by PMREXX; <calculation> is a calculation.'
   SAY
   EXIT
END

IF Address()='PMREXX' THEN DO
   text='An Object for PMRC.CMD has been created on the OS/2 PM.'
   rc=RxMessageBox(text,title,'OK','INFORMATION')
   EXIT
END

SAY 'An Object for PMRC.CMD has been created on the OS/2 PM.'
SAY

EXIT

LoadRexxUtil: PROCEDURE
   IF RxFuncQuery('SysLoadFuncs') THEN DO
      IF RxFuncAdd('SysLoadFuncs','RexxUtil','SysLoadFuncs') THEN DO
         SAY
         SAY
         SAY 'The RexxUtil library (REXXUTIL.DLL), part of OS/2, cannot be'
         SAY 'loaded. Possible reasons may be :'
         SAY
         SAY '  - REXXUTIL.DLL does not exist in the LIBPATH'
         SAY '  - REXXUTIL.DLL is not installed'
         SAY '  - Not enough memory available'
         SAY
         SAY 'The program processed nothing.'
         SAY
         RETURN 1
      END
   CALL SysLoadFuncs
   END
RETURN 0

NotHere: PROCEDURE
   ARG extension
   check=Directory()||'\PMRC.'||extension
   rc=SysFileTree(check,'file','FO')
   IF rc=2 THEN DO
      SAY 'There is not enough available memory to query a list of files.'
      SAY 'The installation has not been completed.'
      SAY
      RETURN 1
      EXIT
   END
   IF file.0=0 THEN DO
      SAY 'The file PMRC.'extensie' does not exist in the current Directory.'
      SAY 'The installation has not been completed.'
      SAY
      RETURN 1
   END
RETURN 0

Error:
Halt:
SAY 'The installation has not been completed.'
SAY
EXIT


Title: Re: Revisiting old OS/2 Software.
Post by: Alex Taylor on July 16, 2019, 03:33:30 am
Quote
The OS calculator is missing. YMMV, but mine's: x:\ECS\BIN\ECSCALC.EXE

This was only "the OS" calculator in eComStation.  The program was eCSCalc by Nicky Morrow, later renamed to eCalc, passed over to Frank Wochatz (https://www.os2world.com/wiki/index.php/Frank_Wochatz), and heavily revamped.

Quote
9. PMCalc (IBM EWS?) is missing.

I have a PMCalc kicking around, but it appears to be written by Peter Koller (of Maul fame).


Of course, you don't list either of my calculators, Useful Calculator (https://github.com/altsan/os2-ucalc) and AT Calculator (https://github.com/altsan/at-calculator).  8)
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 16, 2019, 03:35:39 am
Hi.

0. @Martin, you may have missed it: what is you CONFIG.SYS' TZ setting (for a possible generic Beat/2-clock fix or work-around)?

I got : SET TZ=ECT5

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 16, 2019, 04:12:43 am
SET TZ=ECT5
Thanks, I'll look at this later. Why was I expecting a minus...

A work-around for me, w.r.t. another TZ-related bug, was to open the settings quickly. RMB -> Preference. Really quick, probably before it displays the first calculated results.

My BEAT.INI file, presumably yours cannot calculate an initial "TimeZone" setting:

Code: [Select]
;
; Beat.ini - Beat Initial File (2.03)
;
PosX=6312
PosY=3228
PreferencePosX=4806
PreferencePosY=2301
BackColor=(0,0,0)
ForeColor=(255,255,255)
Height=720
Width=800
TimeZone=-2.0
Interval=0.02
AlwaysOnTop=Disabled
OnlyBeat=No
TitleBar=Enabled
AutoFontSize=Enabled
KeepWindowSizeRatio=Enabled
BeatFont=12.Arial
Font=9.WarpSans

The TimeZone is required to calculate the single universal time. I guess I'm one hour to the left of the timezone of Biel (-1.0), minus 1 hour of DST (total -2.0).

So the right setting for the GMT benchmark should be -2.0 during the winter, and -3.0 during DST.

O, and thanks for the Unit Convert-article. The Dutch language support is probably new for me...
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 16, 2019, 04:27:27 am
The program was eCSCalc by Nicky Morrow, later renamed to eCalc, passed over to Frank Wochatz (https://www.os2world.com/wiki/index.php/Frank_Wochatz), and heavily revamped.

Probably the renamed one. I recall a German role and an OS-related name. More in general I meant the/any OS calculator.

Quote
I have a PMCalc kicking around, but it appears to be written by Peter Koller (of Maul fame).

The one which may be IBM EWS:

Code: [Select]
PMCalc
A Pocket Calculator

Version 1.00, January 1995
This program was written by:

Tim Baldwin
       
IBM UK Laboratories
Hursley Park
Winchester
Hampshire

Yes, it is IBM EWS: PMCALC.ZIP @ http://www.os2site.com/sw/ews (http://www.os2site.com/sw/ews)

Quote
Of course, you don't list either of my calculators

"Always go to other people's funerals, otherwise they won't come to yours"... :P
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 16, 2019, 10:11:13 pm
SET TZ=ECT5
BEAT.EXE should be fixed (tested with your TZ setting). I've uploaded a Beat203-r4.zip to Hobbes.

Unfortunately that (localized) Swatch webpage cannot be used to verify the "universal internet time"  anymore.
Fortunately there seems to be an alternative: http://www.swatchclock.com/ (http://www.swatchclock.com/).

During DST users will have to subtract 1 hour (RMB -> Preference) manually. At the moment my setting is -2.0 instead of -1.0.
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 17, 2019, 04:40:14 am
Hi

About the calculators, I had created some mores:
https://www.os2world.com/wiki/index.php/Category:Calculators (https://www.os2world.com/wiki/index.php/Category:Calculators)

Still missing:
- RPCALC
- WarpCalc
- Nameless Rexx one-liner.
- PMCalc - Pocket Calculator

I found a pmCalc by Martin Vieregg that was renamed to 4allCalc. I'm tryng to find the Peter Koller one.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 17, 2019, 05:03:19 am
-2. There may be at least 4 categories, excluding verifying tools and fixed input: CLI, PM, RPM and specialized, unit converters with variable user input (i.e. no ASCII tables).

I think it will be a good idea to think about this. I'm following Hobbes and is not really organized on this area.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: Dave Yeo on July 17, 2019, 07:00:44 am
There's also bc and dc that are *nix command line calculators. Both are installed on a new AOS install. bc is a regular calculator and dc is reverse Polish. See the man pages.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 17, 2019, 11:21:49 am
Units (GNU Units, units-os2-2_12.zip) is a CLI units converter, with a rather typical Unix UI and a (non-Acrobat v4-compliant) PDF manual. I have no GCC compiler installed, so I haven't tried to compile the latest v2.19.

I also haven't tried to update currency exchange rates. Its UI-prompt understood $5 and <Ctrl-Break), but not €5, "5 usd" nor <Ctrl-C>. Average OS/2 users may prefer the already included Unit Convert 0.9.6 with its PM UI. Nevertheless a GNU Units for OS/2 does exist, and it's an alternative in that category.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 17, 2019, 11:53:08 am
- Nameless Rexx one-liner.

FWIW: the longer version is saved here as an easy-to-remember "Rexx Rechner", RR.CMD, but in English that could be a "Rexx Calculator" with a possibly conflict with the RC.EXE OS component , OS/2's resource compiler. I'd recommend the shortest version, because a longer version hardly checks anything, NUMERIC DIGITS 999 isn;'t always required, and you sort of know how it works anyway. Hence nameless instead of RC. RR probably only works in a few Germanic languages, and the classic Rexx one-liner never had a fixed name. AFAIK.

FWIW/2, for non-programmers: /**/;ARG x;INTERPRET SAY x comes down to a three-liner:

Code: [Select]
/**/
ARG x
INTERPRET SAY x

The mandatory Rexx comment.
The arguments are saved in one variable called X (e.g. the text "1 + 1", excluding the quotes)
SAY would print the text represented  X, "1 + 1". To convert 1 + 1 to 2, INTERPRET executes "SAY 1 + 1" instead of SAY "1 + 1".

A cleaner version is /**/;ARG x;INTERPRET 'SAY' x;EXIT but one-liners tend to be as short as possible. The quotes avoid that SAY will be interpreted as a variable, and the EXIT is an explicitly clear EXIT.

There is no single manual like the page "HELP REXX ARITHMIC", because it supports all relevant built-in functions, like: X2D(FF)-X2D(C)+7

A "Rexx one-liner" could be a generic name for the Wiki, and the user can save it as any valid own *.CMD file name. You can also decide to skip it, because it's hardly more than a quite interesting introduction to Rexx. But I do actually use it quite frequently.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 17, 2019, 12:01:28 pm
I'm tryng to find the Peter Koller one.

Not (formerly) known as PMCalc nor pmCalc, unlike the IBM EWS and 4allCalc? HTH: https://ecsoft2.org/maison-anglais-calculator (https://ecsoft2.org/maison-anglais-calculator).
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 17, 2019, 03:11:13 pm
Hi.

I had created Unit Converters (https://www.os2world.com/wiki/index.php/Category:Unit_Converters) to separate those from the calculators (https://www.os2world.com/wiki/index.php/Category:Calculators). I'm thinking to categorize the mortgage and actuarial calculators like "Financel (https://www.os2world.com/wiki/index.php/Category:Finance)" or something like that.

Regards

Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 17, 2019, 07:28:59 pm
Unit-converter and finance: PM-Euro (http://hobbes.nmsu.edu/download/pub/os2/apps/calc/pmeuro175.zip) ::)

Finance, different OS: "QBASIC /RUN \OS2\MDOS\MORTGAGE.BAS" :)

Finance (and clock, Options -> Clock) :-X): PM$tock and e.g. PRN2QTS12.ZIP (http://hobbes.nmsu.edu/download/pub/os2/apps/money/prn2qts12.zip). PM$tock may be unregisterable, crippled and outdated shareware with the functionalities of the first generation of simple VGA OS/2 PM software, and with too much overhead to qualify as a clock. So there are reasons to exclude PM$tock.

Finance (if there won't be some verification category later): CCC10.ZIP (http://hobbes.nmsu.edu/download/pub/os2/apps/misc/ccc10.zip) and CCARD.EXE or TBCredit. Credit card checkers, if you can find 'em. Can be outdated. Verification (and repair) software may be a category on its own (like IsISIN, IsIBAN, IsISBN, PNGCheck, ZipFix, ...). Names can be virtual or unreleased, so do stop searching when you cannot find, for example, (the real) TBCredit Rexx function.
Title: Re: Revisiting old OS/2 Software.
Post by: Gregg Young on July 17, 2019, 09:07:05 pm
There is also the programming calculator scalc on Hobbes. http://hobbes.nmsu.edu/download/pub/os2/apps/calc/scalc98.zip
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 18, 2019, 11:08:44 am
Finance: PM$tock may be ... crippled shareware with the functionalities of the first generation of simple VGA OS/2 PM software, and with too much overhead to qualify as a clock.
Finance again: no, PM$tock isn't crippled.

PM$tock won't be a convincing app when its best default data sources aren't available, but its remaining main features are hidden under a submenu of the third menu. Chart -> Stock -> any of both Show... menu-items. The sample image is almost as good as it gets.

If the clock of PM$tock isn't displayed by default: Options -> Clock ;)

I'll probably release an improved PRN2QTS, PRN2QTS13.ZIP, later today.
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 18, 2019, 01:09:08 pm
Hi André

I confirm that Beat/2 R4 is working for me.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 18, 2019, 01:14:55 pm
Hi Gregg. I added SourceCalc (https://www.os2world.com/wiki/index.php/SourceCalc) to the list.

André. Where can I get PM$tock binaries? Can you please provide the link.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 18, 2019, 02:34:10 pm
André. Where can I get PM$tock binaries? Can you please provide the link.

Of course: http://www.os2site.com/sw/apps/finance/pmstock.zip (http://www.os2site.com/sw/apps/finance/pmstock.zip).

PRN2QTS(13.ZIP), still to be fixed and uploaded to Hobbes, is a rather basic solution to convert one of the human readable file formats to PM$tock's file format. Then e.g. the route Yahoo! Finance-download -> PRN file format (Metastock) -> PM$tock is oversee able.

AFAICT one of the PRN2QTS (Metastock to PM$tock QuoTeS files (?)) fixes/improvements will probably be support for quotes/indices >= 1000.

EDIT: http://hobbes.nmsu.edu/download/pub/os2/apps/money/pmst11.zip (http://hobbes.nmsu.edu/download/pub/os2/apps/money/pmst11.zip), may be newer (v1.1).
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 18, 2019, 04:01:57 pm
PRN2QTS, still to be fixed and uploaded to Hobbes

That won't happen. It did look like the QTS file format could have a maximum length of X characters per quote, but I cannot reproduce a possible solution or possible PM$tock-bug.

So the link to PRN2QTS remains http://hobbes.nmsu.edu/download/pub/os2/apps/money/prn2qts12.zip (http://hobbes.nmsu.edu/download/pub/os2/apps/money/prn2qts12.zip). An utility to add readable, simple Metastock *.PRN file format data to PM$tock's data (PMSTOCK.INI and *.QTS file).

Execution sample, which uses included sample data (entering the date 20101231 avoids an error, which should have been a warning):

Code: [Select]
[P:\M$tock]PRN2QTS.CMD

Quick&dirty conversion of Metastock's *.PRN to PM$tock's *.QTS file format

Which symbol to convert (e.g. RDSA)? RDSA
Output will be written to file: RDSA.QTS

Date from (YYYYMMDD, e.g. 20090000 or 20090101 for 20090101)? 20090000

Date upto and including (YYYYMMDD, e.g. 20100131 or 20100200 for 20100131),
or press <ENTER> for all data since 20090000? 20101231


Processing file: 2009.PRN
Processing file: 2010.PRN

Lines found: 400

File created: RDSA.QTS

RDSA added to PM$tock's list of tracked stocks in PMSTOCK.INI.

After starting PM$tock, it's possible to select the new symbol/ticker RDSA and displays its graphs (Chart -> Stock -> any of the Show ... menu-items).
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 19, 2019, 11:57:06 am
https://www.os2world.com/wiki/index.php/Category:Clocks (https://www.os2world.com/wiki/index.php/Category:Clocks)

1. Simple Calculator isn't a clock.

2. IBM's (attached) Clock Sample is a clock.
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 19, 2019, 01:19:47 pm
https://www.os2world.com/wiki/index.php/Category:Clocks (https://www.os2world.com/wiki/index.php/Category:Clocks)

1. Simple Calculator isn't a clock.

2. IBM's (attached) Clock Sample is a clock.

Thanks, it is fixed and updated now.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 20, 2019, 03:50:52 pm
Another clock called Clock (and a system load monitoring tool), with an own Wiki-page: https://www.os2world.com/wiki/index.php/Clock (https://www.os2world.com/wiki/index.php/Clock). Its available, open sourced DLL and HLP language files are: CA, DE, EN, ES, FR and IT.
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 23, 2019, 04:02:30 am
Hi

Is there any "software category list" suggestion?
I'm categorizing some software according to Hobbes, but somethings needs to be updated, for example I don't think that the "Internet" category makes sense anymore.

Any ideas on how to categorize:
1) Remote control tools (like VNC) ?
2) ASCII table or charmaps?

Here it is how I'm categorizing software on the wiki for the moment.  (https://www.os2world.com/wiki/index.php/Category:Software)

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 23, 2019, 09:01:01 pm
Rather static output (ASCII, codepages, chemical elements, food databases, keyboard lay-outs, Latin dictionary, BMI calculator, ...) versus variable output per system (font viewer, clipboard viewer, ...).

You could wonder if the number of apps is worth an own category. Can an user be bothered to check all 94 clocks to find the 2 alarm countdown clocks? Editorial choices.

I do introduce a new level of folders when the number of apps in a folder exceeds some limit, or when there are enough apps to justify an own subfolder. For example, my Utilities-folder contains an environment-related subfolder "Geography" (mixed OSes). Route calculators, maps, Cosmos/2, Moon, Night Vision(s), PM Globe, Weather Calculator, Xplanet.

I can image that someone would move the Weather Calculator to your unit conversion-section with variable user input (a wind speed of X MPH always remains a wind speed of Y knots), which would be an understandable editor's choice. At Hobbes it's "misc": http://hobbes.nmsu.edu/download/pub/os2/apps/misc/wcalcos2.zip (http://hobbes.nmsu.edu/download/pub/os2/apps/misc/wcalcos2.zip)

I considered reporting PCX2PRN for the Fiannce-category, but it was my editor's choice to not do that. Converting (data conversion) some free downloadable (category internet) image (graphs, graphics) to (typically financial) data. You'd almost wish "tags" would exist. Like "clock", "text mode" and "open sourced", to find all text mode clocks which can be maintained. Cross-links won't work, because a page "text mode" may be too large to be useful.

Following Hobbes will be a good starting point. Unless, for example, an internet directory contains too much (WWW, mail, PM Mail, Mozilla, usenet, downloaders, speed monitors, ...) files to be useful indeed.

It also depends on goals. I'd try to avoid almost empty categories, because that would demote an OS when users are offered one choice. Fore example, I know one internet telephony app and it ain't Facetime (or whatever that's called).
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 24, 2019, 04:07:55 pm
You could wonder if the number of apps is worth an own category.
Agree on that.

I think I should go with the flow. I will see how things take shape and how much time I can use to have a wiki page for each OS/2 software. The good thing with the wiki is that I can start doing something "quick and dirty" and evolve it and fix it with time.

For the moment I invite everyone to help me, you can share a screenshot of you favorite OS/2 application here and I will include it on the wiki.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 26, 2019, 03:50:17 am
While translating its basic WPS UI to Dutch for eCS 1.2 NL, to avoid mixing UI languages, I've updated the CmdHere wiki with registration codes (https://www.os2world.com/wiki/index.php/CmdHere). No screenshots, because mine are translated and now print "Open sourced" instead of "$10".

For OS/2 sessions PMDIR.EXE is the antipode of CmdHere. PMDIR opens the current CMD.EXE directory as a folder. But I didn't dare to create an initial PMDIR wiki and links to each other. Both antipodes are quite easy to translate, FWIW. Mainly copy & paste "IBM translations", like the default OS/2 name of a folder object and its views (details, icon, tree, settings).

CMDRUN13.ZIP is a slightly different alternative for CmdHere: http://home.clara.net/orac/os2.htm#cmdrun (http://home.clara.net/orac/os2.htm#cmdrun).
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 26, 2019, 05:10:57 pm
Hi André.

Good work with the CmdHere translation. Do you think it can be a way to merge your Dutch translated source code with the git ? https://github.com/OS2World/UTIL-SYSTEM-CMDHere
So the source code files (English and Dutch) remains in one repository.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 26, 2019, 09:02:46 pm
Do you think it can be a way to merge your Dutch translated source code with the git ?
Good question. In Dutch, the "ReadMe.TXT" explains why the source code is not included. There are no functional changes, it's not a full distribution of all binaries, and one of the changes was related to a patched and moved, copyrights-protected IBM header file.

If I would be lazy and just "dump" changed original files, for a true and legal merger, then it may look like the required file WPFOLDER.H is missing. If I would undo changes, then there's a fatal error during the execution of NMAKE.

The source for a word like "OS/2-opdrachtverwerkingsprogramma" was "HELP CMD.EXE". Names of eCS WPS object were used as-is too, like "DOS-aanwijzing (Volledig Scherm)". Once it compiled without fatal errors, using a F: drive, most of the work was related to the length of the word "OS/2-opdrachtverwerkingsprogramma". That didn't fit.

I can attach images of the most relevant components and changes, assuming that an user entered a registration code during the install. The basic WPS UI. I have no list of changed texts, but such a list would be rather short.
Title: Re: Revisiting old OS/2 Software.
Post by: Dave Yeo on July 27, 2019, 01:32:44 am
Hi André.

Good work with the CmdHere translation. Do you think it can be a way to merge your Dutch translated source code with the git ? https://github.com/OS2World/UTIL-SYSTEM-CMDHere
So the source code files (English and Dutch) remains in one repository.

Regards

Just create a branch and check it out, commit the Dutch version and push. Something like,
Code: [Select]
git branch Dutch
git checkout Dutch
git commit -a -m"Dutch translation" -m"Thanks to André Heldoorn"
git push Dutch
not quite sure about the push command.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 27, 2019, 09:57:38 am
Translation "errors" were copied too, FWIW. "(Volledig Scherm)" -> "(volledig scherm)". "eCS" is hard-coded text. Hence "for eCS 1.2 NL", or a release per product if e.g. AN didn't switch back to "OS/2 session (Full Screen)"

not quite sure about the push command.

No need for credits. If github is the new official home of CmdHere, then perhaps the home of-URL had to be adjusted too. Of course you'll have the freedom to copy (un)zipped files from Hobbes to a gitgub download section. I've used the embedded original SourceCode.zip @ Hobbes, which may have been changed/fixed before source was uploaded to github.

I've got a diffutils-3.7.zip. Can this be used to produce output which looks like the sample below, and would that help? IOW: is this input to merge code when you have nothing but the original source code, maybe after having to change directory names or file names?

Code: [Select]
diff -buNr src/util.c.org src/util.c
--- src/util.c.org 2008-04-15 10:22:12.000000000 +0900
+++ src/util.c 2009-01-09 01:59:12.000000000 +0900
@@ -160,7 +160,7 @@
 char *
 fillout_device_name(const char *device_name)
 {
-#if defined(HAVE_WIN32_CDROM)
+#if defined(HAVE_WIN32_CDROM) || defined(HAVE_OS2_CDROM)
   return strdup(device_name);
 #else
   unsigned int prefix_len = strlen(DEV_PREFIX);

Here "diff.exe -buNr \NL\cmdhere\cmdhres.mak \EN\cmdhere\cmdhres.mak" didn't produce any output, with or without -buNr.

BTW, w.r.t. Unix-tools: looks like fontconfig-related software now may produce a \@unixroot directory. If so, then I'll downgrade that.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 27, 2019, 10:34:57 am
FWIW, the default menu-option "Opdrachtaanwijzingen" of the first screenshot is almost identical, but mixes title bar languages and offers less options and less settings than CmdHere.

In theory one may want to replace "Opdrachtaanwijzingen" (OS/2 window or a DOS window only) by a (renamed) "CmdHere"...
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on July 27, 2019, 02:29:54 pm
If github is the new official home of CmdHere, then perhaps the home of-URL had to be adjusted too.

I will suggest to go for it. If you have the time change the homepage URL, remove Gary's emails and address, and any shareware reference since it is now GNU GPL.
I was the one that made that source code available with the permission of Gary L. Robinson, and he agreed to open source it.

I don't know about "git branches" so it can be a great exercise to commit to github the changes.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 27, 2019, 04:47:04 pm
I will suggest to go for it. If you have the time change the homepage URL, remove Gary's emails and address, and any shareware reference since it is now GNU GPL.
There is more to it than just replacing visible text, at least twice (once per language), and I don't have an environment to reproduce the original binaries, without any errors or warnings, first. That may require an older toolkit, for example. That's why my version has an "unsupported" or as-is status.

Replacing his personal data by a different text is easier than removing it, because otherwise you'll have to redesign ugly dialogs. That's why a long word took most of the time, mainly because an uninstall is required between attempts. EXEs are easier to test than registered WPS class DLLs.

For one to avoid functional changes and new source code with a (c) IBM file, I've documented a registration code (wiki, Dutch ReadMe.TXT) and just replaced "Only $10" by "Open sourced". And I cannot recompile the original English source code without any errors or warnings, so I cannot guarantee I'm reproducing the original binaries first. I'm also not supporting the include debug code.

With a classic dialog editor it should be quite easy to duo what you want. I do assume it's possible the source code matches the binaries, because there tend to be no meaningful problems with his source code. ZipZap can be recompiled too, for example.
Title: Re: Revisiting old OS/2 Software.
Post by: Dave Yeo on July 27, 2019, 04:59:42 pm

I've got a diffutils-3.7.zip. Can this be used to produce output which looks like the sample below, and would that help? IOW: is this input to merge code when you have nothing but the original source code, maybe after having to change directory names or file names?

Code: [Select]
diff -buNr src/util.c.org src/util.c
--- src/util.c.org 2008-04-15 10:22:12.000000000 +0900
+++ src/util.c 2009-01-09 01:59:12.000000000 +0900
@@ -160,7 +160,7 @@
 char *
 fillout_device_name(const char *device_name)
 {
-#if defined(HAVE_WIN32_CDROM)
+#if defined(HAVE_WIN32_CDROM) || defined(HAVE_OS2_CDROM)
   return strdup(device_name);
 #else
   unsigned int prefix_len = strlen(DEV_PREFIX);

Here "diff.exe -buNr \NL\cmdhere\cmdhres.mak \EN\cmdhere\cmdhres.mak" didn't produce any output, with or without -buNr.

That's strange. Does diff.exe --help work? Perhaps due to the r. Try simple
Code: [Select]
diff -u NL\cmdhere\cmdhres.mak \EN\cmdhere\cmdhres.mak > cmdhres.patch"might also need --binary depending on line endings. the diff -buNr is for directories rather then files. diff --help | less for all the commands.
Using the *nix patch command,
Code: [Select]
patch -p0 --binary < cmdhres.patchshould apply the patch. Add --dry-run for testing. Git patches need -p1

Quote
BTW, w.r.t. Unix-tools: looks like fontconfig-related software now may produce a \@unixroot directory. If so, then I'll downgrade that.

Fontconfig looks in @unixroot/etc/fonts for its font.conf file. Really need one that looks in %ETC% for people without @unixroot. There's always the old mzfontcfg, which has enough of the API to work for a lot of stuff.
Title: Re: Revisiting old OS/2 Software.
Post by: Dave Yeo on July 27, 2019, 05:16:14 pm
I don't know about "git branches" so it can be a great exercise to commit to github the changes.

They're handy, if only for doing work before pushing to master. I'll create a branch called work or such to experiment then can rebase it or merge it to master or create git patches with "git format-patch" or even "git diff"
Lots of tutorials out there.
Also for all this patching, have to watch line endings too as these tools by default consider a change in line endings to be a change in source.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 28, 2019, 03:11:52 am
Oops, I may have kept the wrong CmdHere source code. Intentionally'ish, because it's unsupported.

If I can actually use DLGEDIT.EXE (or the URE, the Universal Resource Editor) to produce a new DLG file, without having to guess & hope that new coordinates and new sizes are right, then I may change the English version first. Instead of pretending to be nothing but the author of a different version. DLGEDIT.EXE is IBM's documented legacy Dialog Editor.

If I cannot, then I may produce DIFF files which can be easier for new translations, but without bothering if a new text still fits. DIFFs are smaller, and presumably (the virtual sample)...

Code: [Select]
-- SETTINGS_DLG "Settings ..."
++ SETTINGS_DLG "Instellingen ..."
-- ADV_TXT "Just $10"
++ AVD_TXT "Open sourced"

... could make translating "Settings" to the German "Einstellungen" simpler. Replace "Instellingen" and execute PATCH, as described by Dave Yeo.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 28, 2019, 11:00:39 am
There's your (possible) problem:

According to GitHub, the source code is of a version 1.12, build 402.
According to recompiled source code at Hobbes, it's 1.12, build 130 (About-dialog, screenshot above here).

May be just a number which had to be increased, FWIW. To make sure I'ld suggest to try to reproduce a clone of the English binaries first, to make sure that a modernized version actually isn't an implied downgrade from 402 to 130.

Instead of possibly downgrading all (English) binaries, I'll try to reproduce DIFF files. So e.g. a German translator just has to look at a few lines, and has both Anglo-Saxon and D(e)ut(s)ch input to get inspired. In pseudo-code:

-- SETTINGS_DLG "Settings ..."
++ SETTINGS_DLG "Instellingen ..."

In that case Replace "Instellingen ..." by "Einstellungen ...", and patch the original source code. DIFFs are smaller than nearly identical full source code files.

At least one of the full URLs, Hobbes is another candidate to replace an address in Ohia, is too long to fit. So there's more to it than just replacing text. I'll translate it as-is. It's an editor's choice to replace a GitHub URL by e.g. a shorter os2world.com wiki URL, which somehow refers to GitHub (and Hobbes). Registration during the install was already taken care by: a RTFreadme.txt per translated release, so no real need to change the way it works.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on July 29, 2019, 01:46:38 am
I don't know about "git branches" so it can be a great exercise to commit to github the changes.

Here's an untested plan, and an untested set of attached DIFF files:

Code: [Select]
Assumed environment: IBM VAC 3.08, OS/2 toolkit v4.52, original SOURCECODE.ZIP unzipped in F:\

Edit the *.DIFF files, if you want to compile CmdHere for another language and/or another OS-name.

Patch F:\CMDHERE\WPSDLL\CMDHERE.C (cmdhere.c.diff)
Copy F:\CMDHERE\WPSDLL\CMDHERE.IH to F:\CMDHERE
Copy F:\CMDHERE\WPSDLL\CMDHERE.H to F:\CMDHERE
NMAKE F:\CMDHERE\WPSDLL\CMDHERE.MAK

Copy IBM's copyrighted file WPFOLDER.H (x:\IBMCPP\H\WPFOLDER.H) to F:\CMDHERE
Optionally patch F:\CMDHERE\WPFOLDER.H (wpfolder.h.diff, may avoid a compilation error, the quality of this error-avoiding patch is unverified)

Patch F:\CMDHERE\CMDHERE.IH (cmdhere.ih.diff)
Patch F:\CMDHERE\MYOBJRES.DLG (myobjres.dlg.diff)
Patch F:\CMDHERE\MYOBJRES.RC (myobjres.rc.diff)
NMAKE F:\CMDHERE\CMDHRES.MAK

Optionally expose both compiled DLLs to LXLITE.EXE

Write manual, instruct user to enter a registration code during the install.
Distribute both DLLs and the manual, and perhaps edited DIFF files instead of full source.

If you happen to have some supported Spanish OS/2, a drive F: and IBM VAC, then it shouldn't be that hard to translate the DIFF files to Spanish first. Perhaps a PATCH.EXE can be used, as described by Dave Yeo, but you can also apply all changes manually.

The attached files are a reconstruction, which won't always exactly match released Dutch DLLs. Differences should be trivial, and the original English binaries are leading.

In case of difficulties I'd suggest the use of a different (programming) thread.
Title: Re: Revisiting old OS/2 Software.
Post by: xynixme on August 01, 2019, 09:12:53 am
https://www.os2world.com/wiki/index.php/Category:Clocks (https://www.os2world.com/wiki/index.php/Category:Clocks)

We must almost be running out of time by now: the translated and optionally time-synchronizing clocks in x:\ECS\SYSTEM\ECLOCK
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on August 07, 2019, 10:34:58 pm
Hi.

CandyFolders  (https://www.os2world.com/wiki/index.php/CandyFolder)still works on ArcaOS 5.0.4. The limitation remains the same, the background image needs to be in 256 colors.

I think I will checking the "Desktop Enhancement (https://www.os2world.com/wiki/index.php/Category:Desktop_Enhancement)" category for a while.

Regards
Title: Re: Revisiting old OS/2 Software.
Post by: Dave Yeo on August 08, 2019, 01:52:15 am
IIRC, CandyFolders leaked memory.
Title: Re: Revisiting old OS/2 Software.
Post by: Martin Iturbide on August 08, 2019, 02:03:15 am
IIRC, CandyFolders leaked memory.

Hi, I really do not know. How do you monitor memory leaks? What do you use?
At least we have the CandyFolders source code (https://github.com/OS2World/UTIL-WPS-CandyFolder) to check for problems ;)

Regards