Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Doug Clark

Pages: 1 [2] 3 4 ... 16
Applications / Re: Creating some apps RPM packages
« on: June 22, 2021, 01:31:28 am »
Dave:  Thanks for the info on updating AOS.  I will give the latest version a shot.  (Now if it were only that easy to update from eCS to AOS - oh well..)

Ivan:  I too love WarpIn - great product, although it needs a better database for storing installed app information;  the 2 levels that INI files provides is not enough.  But I can understand and agree with RPM for the unixy stuff.  That stuff is SO intertwined and complicated.  And I am actually OK with UNIXROOT being a drive letter instead of a path for the messy, snakey, interdependent unixy stuff.  That stuff is so complicated that I am kinda scared to even look down in the depths of UNIXROOT.

What Martin was talking about was RPM-izing legacy type OS/2 apps.   That has lots of benefits, and some downsides.  It is legacy apps (and SOME unix type apps like Firefox) that I want the ability to chose where stuff goes.  Here's  why:  I run a number of Win-OS/2 apps. That means I really need to keep my boot drive partitioned at 2 GB or less and I need to be careful about what I install on the boot drive so I don't run out of space.  I also am running SSD and rotating disks and I try and put the stuff that changes a lot (Swapper, firefox cache, etc.) on the rotating disk and keep the test on the SSD partitions.

So I think we absolutely need the ability, at least with legacy apps, to chose where they go.  And it would be nice to have the ability to choose even with some unix apps.

The downside of RPM verses WarpIn is it looks like RPM is much more complicated to setup.  I mean complicated for the app maker to setup an install to work with RPM.  But it is nice to be able to select a list of apps (like with APM) and install them all at once.. And for them to be available from one (virtual) locate.

Applications / Re: Creating some apps RPM packages
« on: June 21, 2021, 06:36:51 pm »
I think the idea of automating, as much as possible, installations is great. 

My biggest demotivation for upgrading AOS versions is the very long time it takes to get all the applications and tools reinstalled and configured after doing a fresh install of AOS  (or ECS or OS/2).

My I make the following observation and suggestion - without knowing how difficult they are to implement?

Prompt the user for where a package/app should be installed.  If using YUM perhaps either a command line parameter to YUM for the install location or a standard environmental variable (e.g. YUM_INSTALL_LOC= ) that YUM would check for the drive/directory to hold the app.  For APM a dialog prompting for location to install at the start of a new install.

Regarding LIBPATH length issues:   For GUI applications, on machines running DragText (which I assume is everyone,)  you can use the Environment page of the Properties notebook of the Program object for the GUI app to set BEGINLIBPATH, avoiding the need to modify LIBPATH.  Each GUI application really should have a Program object anyway.   We would have to persuade Rich Walsh to add a setup string to his DTProgram object for the Environment page/setting in order to use this scheme with automated installs.

Applications / Re: hard hangs
« on: June 21, 2021, 07:35:26 am »

I have experienced problems in the past with PMView hanging up my system.   I think it is in conjunction with other stuff happening but it doesn't happen often enough for me to be able to pin down.

However I have another suggestion.  If these problems revolve around  a USB drive  it might possibly be your USB port.  I had been having issues with what appeared to be my keyboard: a single press of the key would generate 10 - 20 keys, one key would just spontaneously repeat  (appear to be stuck) until a reboot, etc.  The problems would come and go until a couple days ago the keyboard became unusable.  The problem turned out to be fixed by plugging the keyboard into a different USB port on the same machine.

As for the USB thumb drive:  my daughter had a USB thumb drive that stopped working on her Macbook.  She brought it over to my house and plugged it in to my wife's Macbook and it would not work.  But when I plugged it into my PC I could read the drive.

Networking / Re: Universal Naming Convention (UNC) on Samba?
« on: June 21, 2021, 02:53:42 am »
Looks like Dave's answer is, unfortunately correct.

For Darius:

UNC =  \\machineName\shareName

machineName originally was a netbios name.  ShareName was a shared resource on machineName, i..e a drive or a directory.

Microsoft "enhanced"  UNC later for networked windows machines to allow IP addressing for the machineName, and now other

I don't know where IBM file/print client resolves netbios names but
it looks like Samba on OS/2 (more specifically ArcaMap) uses the LMHosts file in

for resolving netbios machine names to IP addresses

Mine looks like
dir \\req1\# Created by ARCAMAP Version 2.6.20180125 on 20 Jun 2021 at 17:18:03
# Syntax:
# IP-address             NetBIOS-name     [Role]           REQSRV1           SERVERS1         

It appears that when the redirector mechanism for remote file system requests was created for Samba on OS/2 it did not include UNC resolution, only drive letter resolution.

I am not complaining.  I was just wondering if there was some service I needed to start or some configuration I needed to do in Samba to make UNC work in Samba - and the answer apparently is no.

Networking / Universal Naming Convention (UNC) on Samba?
« on: June 19, 2021, 05:51:01 am »
Does universal naming convention (UNC) work on Samba for OS/2?  Or is it limited to Netbios (file/print services) on OS/2?

Hardware / Re: IBM Thinkpad with floppy drive
« on: May 30, 2021, 03:19:14 pm »
I know the question was for an internal floppy, but a possible alternative is a USB floppy.   IBM used to make them - mine came with a nice carrying bag.

Setup & Installation / Re: Win-OS/2 installed on non-boot drive
« on: May 29, 2021, 10:14:16 pm »
Thanks Fahrvenugen and Dave.   The line


in AUTOEXEC.BAT is what I was thinking of but could not remember.

I am not looking to move Win-OS2 myself. But I had a friend who told me he had installed Win-OS/2 on a different drive than where OS/2 was installed., so I know it is possible. Plus, as Fahrvenugen points out, with red spine and/or the ability to boot to a specific version of DOS (and probably windows) WIn-OS/2 might be located anywhere - at least in theory.

 I am updating WinZombe and there is one particular circumstance where it assumes Win-OS/2 is installed on the C: drive.   I wanted to update it for the one person left in the world who has installed or moved Win-OS/2 to somewhere other than boot:\os2\mdos\winos2.  I will just scan the autoexec.bat the session points to for the SETWIN3DIR= line in those circumstances.

Thanks again guys.

Setup & Installation / Win-OS/2 installed on non-boot drive
« on: May 29, 2021, 05:40:52 pm »
If I remember correctly you can install Win-OS/2 on a drive other than the boot drive.   I also seem to remember that when you do this some environment variable is set to indicate which drive holds the Win-OS/2 system.

So my questions are:

1) does this environment variable, or some other means, exist to determine which drive Win-OS/2 is installed on?

2) What is the directory structure when installed on a different drive?   (Normally it is C:\OS2\MDOS\WINOS2)

I think you might be able to make a modified program object which would copy the file name used when opening  a program to a central "recently opened" list.  The fully qualified file name should be sufficient since the file type would link it to the application. It would probably work with files dropped on the program object, specified as a argument on the Program page, or when double clicking on a file in a folder.  That wouldn't be that difficult to do.  The problem is it would only work when using the WPS to open an app - meaning it would not pick up files opened from the File menu inside the app.  It probably would also not pick up files dropped on an already open application window (as opposed to files dropped on the Program object).

I did a little of this as a way of making long file names work with Win-OS2 apps.  You can make it work when going through the WPS but not when going through the app itself unless you have a way of hooking into the File open feature of an application.  You MIGHT be able to do that if you provided a modified File Open dialog (such as FOC) that would copy the file(s) specified to the central list.

After thinking a minute more - instead of copying the file name to a "central list" what should happen is a shadow is created of the file in a ROD folder.  That way if the file is renamed or moved the "list" would still be accurate due to the magic of the WPS and shadows.

Listing the recently opened docs would then be simply opening the folder containing the shadows - and double clicking on the shadow would start the app.

I don't know if you can make shadows of file system objects stored on media that doesn't support EAs.  If the shadow is stored in OS2.INI then you probably can.

Okay - it appears my problem is the open class library is stripping off mp2 for command messages.  Mp2 is where the EPM "command" is stored when it sends an EPM_EDIT_COMMAND message to itself (rather to the E-MLE window)

I think this because 1) mp2 in a EPM_EDIT_COMMAND message is, essentially, blank by the time it arrives as the E-MLE window procedure.  And 2) because of what I read in the book "Power Gui Programming with VisualAge for C++"

Quoting from the book
"An Open Class LIbrary library application is a presentation system application. Open Class Library itself provides a single window procedure that operates for most window represented by IWindow objects.  Every time you create an object derived from IWindow [which you must do to integrate a non-OCL routine with the OCL application - my addition] the object registers this window procedure as a subclass window procedure.   As a result, Open Class Library's window procedure gets the first chance to process all messages that the presentation system sends to a window."

Quoting again later in the book
"Open Class Library treats the field that identifies the source of the command (the high word of IEventParameter1 in the Windows operating system or the low word of the IEventParameter2 value in the OS/2 operating system) as if it contains only that value instead of data that you choose."  It goes on to say that as it passes that event (window procedure message) it alters the value in mp2.

Has anybody written an open class library handler to capture application messages before they get routed through the open class library ICommandHandler?

My current solution is to pull off the value that should be in mp2, store it somewhere in memory, subclass the E-MLE window procedure and for each type of EPM_EDIT_COMMAND message translate into an EtkExecuteCommand() function call.  Which is crude and I will have to do that for each ETK message that needs to transfer something in mp2.

Could you post the  6.03b version of the ETK here please?

Has anyone successfully used the EPM Etoolkit  to create an EPM based MLE in a VisualAge C++ v 3.0 IOC application?

Sample 2 from the etoolkit shows an E-MLE inside of an EFrame inside of an application window.  The E-MLE is the actual editor guts; the EFrame adds scroll bars, message line, title bar etc.  I lightly modified sample 2 from the etoolkit SDK, compiled with VAC 3.0 and it works - attached as

But when I convert that into a "custom control" as a C++ class, to integrate with the user interface part of the IOC library, part of the E-MLE stops working.  It appears to be the part that sends messages, or receives messages related to editor commands.  What I THINK is happening is the dispatcher that the IOC uses to intercept and route window messages is somehow not sending the messages to the E-MLE window procedure.  Or rather some of the messages, because other messages clearly are getting through.

So has anyone converted a customized PM window/control into a IOC user interface object that can be inserted into various other IOC UI objects? is the lightly modified Sample 2 from the eToolkit sdk. contains my class EpmMle (descended from IControl) which is my attempt to integrate an EFrame/E-MLE into a custom control that can be used in IOC.  Run testmain.exe from and try issuing a command from the menu;  Command - Command Dlg and then type some EPM command, such as SAYERROR 'Hello'   You will need the VAC 3.0 runtime libraries to run testmain.exe

That sounds like a pretty good compromise - considering the US is the land of the lawsuit.  It is almost like the right to sue is in the Bill of Rights.

Even if there was not one dedicated site for all these "additional" applications, just a list of apps and links of where to download (almost the same thing) would be great.  I saw a number of apps in this thread that I had never heard of before.

As for media players, I haven't used Mplayer or PMplayer but I do use VLC and it is VERY impressive.  Kudos and thanks to the VLC team and especially
KO Myung-Hun for porting to OS/2.

I would suggest VLC.  Don't know what the issue is with software patents v SMPlayer/MPlayer

General Discussion / Re: Revolutionary PC Technology
« on: January 14, 2021, 09:20:07 pm »
The other question here is how did the PC revolutionize the software industry.

Mainframe and minicomputer software cost tens of thousands to hundreds of thousands of dollars.  And all required support agreements that cost tens of thousands of dollars a year, which kept the sofware companies in business.

With PCs in the $3,000 to $5,000 price range no one was going to pay $20,000 for software so the software had to be cheaper.  I remember when FrameMaker ported FrameMaker v 3 to the PC and sold it for $500 a copy (I bought a copy) - which did the same thing the $2,500 a copy version did on workstations and minicomputers.

The difference of course was volume, but once you have sold your software to everyone that owns a computer, how do you stay in business?  The answer is, you don't.  You can come out with upgrades and new versions for awhile, but at some point there are no more new features to add.

So OS/2 biggest liability is also its greatest asset - that it doesn't change much. We can still run software purchased/released in 1993, and can run it on new hardware.  Software that is valuable, but is no longer available or has never been ported to the ever newer Windows versions, and/or the manufacturer is out of business.

So the revolution of the PC is that it drove down the cost of software but it made it almost impossible for a software company to stay in business for more than a decade.

Pages: 1 [2] 3 4 ... 16