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 - Lars

Pages: [1] 2 3 ... 56
1
Programming / Re: Function MACRO or #DEFINE?
« on: October 22, 2021, 08:55:54 am »
I know this can be discussed until the end of the world, but for me, this is a DEFINE.
That's because a DEFINE is a simple text replacement which is also true for these function calls.
A MACRO on the other hand typically contains multiple instructions (lines broken up with \), typically adding code to your source file (your source file grows, so to say) and/or arguments passed to it. But it is NOT a  (callable) function, it's just additional instructions, as if handwritten.
That's at least my interpretation.

If that helps, you can create a small source file using the construct in question and run that through the precompiler only. Then, have a look at the generated output file (I think it has the .i file extension). Then judge from the replaced output what you would consider it to be.

2
Programming / Re: C++ and class definition Q
« on: October 04, 2021, 09:15:54 am »
fstream is the class which inherits all methods and member variables from classes fstreambase and iostream. Therefore, it's multiple inheritance (inherits from more than one class).

When it says _IMPORT, I suspect that this header is to be included by users of the class (and not or not only the implementer of the class) and that the class implementation is contained in a DLL.

I am unsure about the use of "public" for the classes inherited from. Maybe you can further restrict access to methods and member variables ( in case another class inherits from fstream). So, if a method of iostream is public and you inherit the class as protected, then maybe this method becomes protected for a class that inherits from fstream. I'd need to check that with a C++ book.

3
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: October 02, 2021, 03:55:32 pm »
US CALLS and USBRESMG are completely generic and you can set up any control,bulk,IRQ transfer that you want. But you will need some layer that maps the USB response packets to the packets that an analog or digital joystick would return (as far as I understand it).

4
Applications / Re: Running old OS/2 Software - Issues
« on: September 27, 2021, 04:41:25 am »
Then, there is another problem.
You set it as an environment variable before you start the installation.

5
Applications / Re: Running old OS/2 Software - Issues
« on: September 26, 2021, 08:13:21 pm »
Drive C: needs to be accessible to create temporary files.
If not you will need to specify EPF INSTALLDIR ( or was it EPFTEMPDIR ?) to specify a dedicated directory.

6
Applications / Re: Running old OS/2 Software - Issues
« on: September 17, 2021, 01:26:58 am »
I have attached opendlg.lib from th V1.3 toolkit.
That is no longer needed for 32- bit code.

7
Applications / Re: Running old OS/2 Software - Issues
« on: September 17, 2021, 01:25:50 am »
OK, that made the compiler dislike C++ type comments :) After fixing and adding a missing include, seems to work.
I'll package it after work and post the fixed package.
The /Ss switch did the trick. That allows C++ comments in C code. I did not say to remove that 😂

8
Applications / Re: Running old OS/2 Software - Issues
« on: September 16, 2021, 12:15:38 pm »
What I normally use is this:
/Ge+ (when building an Exe)
/Gm+ (using the multi threaded libs, see following explanation)
/Gd+ (linking the RTL dynamically and therefore cut down on Exe size)

If you use these switches, the final step that you can do is to replace the name of the multi threaded RTL with one that comes as part of every OS/2 installation.
On the created Exe, run this:
Code: [Select]
dllrname.exe present.exe CPPOM30=OS2OM30
Of course, you could add this to the makefile.

That will replace all references to CPPOM30.DLL with OS2OM30.DLL which is always present in OS2/DLL directory.

I am talking about VAC 3.0 and not VAC 3.65 or VAC 4.0.

9
Applications / Re: Running old OS/2 Software - Issues
« on: September 15, 2021, 03:10:02 pm »
1) I suspect that OPENDLG.LIB was a library that was necessary to build a OS/2 version 1.3 PM application. Of course, the question is, why is it still listed in the makefile ? Maybe that was an omission to remove it.

2) I suspect that problem with CPPOS30.LIB is that it follows a newer OMF library format than what LINK386 understands. The easiest thing is to replace "link386" with "ilink /NOFREE". /NOFREE will force ilink to follow the same command line syntax as LINK386 but it will be able to link to CPPOS30.LIB.
In any case, it is not wrong to link to the RTL dynamically (but it might be a better idea to link against CPPOM30.LIB, that is, specify /GM+ as compiler switch: link multi-threaded).

David, can you post the makefile as you have corrected it ?

10
Setup & Installation / Installing Python 3 (from netlabs exp) does not work
« on: September 09, 2021, 10:15:48 am »
I had nothing better to do so I attempted to install python 3 via ANPM.
I get this error:

python-pycurl-7.19.5.1-2.oc00.pentium4 benötigt python27.dll

However, I do have a file "python27.dll" in \usr\lib and I have no probs at all with the currently installed python 2.7.

I then tried:

yum install python3 and get this:
Code: [Select]
Einrichten des Installationsprozess
Löse Abhängigkeiten auf
--> Führe Transaktionsprüfung aus
---> Paket python3.pentium4 0:3.9.5-5.oc00 markiert, um installiert zu werden
--> Verarbeite Abhängigkeiten: python3-libs = 3.9.5-5.oc00 für Paket: python3-3.9.5-5.oc00.pentium4
--> Verarbeite Abhängigkeiten: python39.dll für Paket: python3-3.9.5-5.oc00.pentium4
--> Führe Transaktionsprüfung aus
---> Paket python-libs.pentium4 0:2.7.6-25.oc00 markiert, um veraltet zu werden
--> Verarbeite Abhängigkeiten: python-libs = 2.7.6-25.oc00 für Paket: python-2.7.6-25.oc00.pentium4
--> Verarbeite Abhängigkeiten: python27.dll für Paket: yum-metadata-parser-1.1.4-7.oc00.pentium4
Package python-libs is obsoleted by python3-libs, but obsoleting package does not provide for requirements
--> Verarbeite Abhängigkeiten: python27.dll für Paket: python2-rpm-4.13.0-19.oc00.pentium4
Package python-libs is obsoleted by python3-libs, but obsoleting package does not provide for requirements
--> Verarbeite Abhängigkeiten: python27.dll für Paket: python-2.7.6-25.oc00.pentium4
--> Verarbeite Abhängigkeiten: python27.dll für Paket: python-pycurl-7.19.5.1-2.oc00.pentium4
Package python-libs is obsoleted by python3-libs, but obsoleting package does not provide for requirements
---> Paket python3-libs.pentium4 0:3.9.5-5.oc00 markiert, um obsoleting zu werden
--> Führe Transaktionsprüfung aus
---> Paket python.pentium4 0:2.7.6-25.oc00 markiert, um veraltet zu werden
--> Verarbeite Abhängigkeiten: python(abi) = 2.7 für Paket: yum-metadata-parser-1.1.4-7.oc00.pentium4
Package python is obsoleted by python-unversioned-command, but obsoleting package does not provide for requirements
--> Verarbeite Abhängigkeiten: python(abi) = 2.7 für Paket: urlgrabber-3.10.1-10.oc00.noarch
Package python is obsoleted by python-unversioned-command, but obsoleting package does not provide for requirements
--> Verarbeite Abhängigkeiten: python(abi) = 2.7 für Paket: python2-rpm-4.13.0-19.oc00.pentium4
Package python is obsoleted by python-unversioned-command, but obsoleting package does not provide for requirements
--> Verarbeite Abhängigkeiten: python(abi) = 2.7 für Paket: yum-3.4.3-13.oc00.pentium4
Package python is obsoleted by python-unversioned-command, but obsoleting package does not provide for requirements
---> Paket python-libs.pentium4 0:2.7.6-25.oc00 markiert, um veraltet zu werden
--> Verarbeite Abhängigkeiten: python27.dll für Paket: yum-metadata-parser-1.1.4-7.oc00.pentium4
Package python-libs is obsoleted by python3-libs, but obsoleting package does not provide for requirements
--> Verarbeite Abhängigkeiten: python27.dll für Paket: python2-rpm-4.13.0-19.oc00.pentium4
Package python-libs is obsoleted by python3-libs, but obsoleting package does not provide for requirements
--> Verarbeite Abhängigkeiten: python27.dll für Paket: python-pycurl-7.19.5.1-2.oc00.pentium4
Package python-libs is obsoleted by python3-libs, but obsoleting package does not provide for requirements
---> Paket python-unversioned-command.pentium4 0:3.9.5-5.oc00 markiert, um obsoleting zu werden
--> Verarbeite Abhängigkeiten: /@unixroot/usr/bin/python2 für Paket: cmake-rpm-macros-3.15.3-1.oc00.noarch
Package python is obsoleted by python-unversioned-command, but obsoleting package does not provide for requirements
--> Abhängigkeitsauflösung beendet
 Sie können versuchen mit --skip-broken das Problem zu umgehen.
 You could try running: rpm -Va --nofiles --nodigest

This gives me the impression that there is a conflict with the already installed python 2.7

Unfortunately I cannot catch all screen output of "yum install python3" but I also get this:
Code: [Select]
Fehler: Paket: yum-3.4.3-13.oc00.pentium4 (installed)
            Benötigt: python(abi) = 2.7
            Entfernen: python-2.7.6-25.oc00.pentium4 (installed)
                python(abi) = 2.7
            Überholt durch: python-unversioned-command-3.9.5-5.oc00.pentium4 (netlabs-exp)
                Nicht gefunden

However, attempting to install "python-unversioned-command-3.9.5-5.oc00.pentium4" again gets me to this error:

python-pycurl-7.19.5.1-2.oc00.pentium4 benötigt python27.dll

Needless to say, running with "--skip-broken" or "rpm -Va --nofiles --nodigest" does not make a difference.

What further confuses me is that I have "python" (and various related packages) installed but I now see that there also exists a "python2.7" in netlabs-exp with various related packages. So how would I be able to replace "python" with "python2.7" ?


11
Very odd, I have this:

Code: [Select]
{0}[d:\usr\lib] bldlevel gtls30.dll
Build Level Display Facility Version 6.12.675 Sep 25 2001
(C) Copyright IBM Corporation 1993-2001
Signature:       @#bww bitwise works GmbH:3.6.12-1.oc00#@##1## 04 Apr 2020 12:06:06     ECS26154618:
:::0::@@gnutls
Vendor:          bww bitwise works GmbH
Revision:        3.06
Date/Time:       04 Apr 2020 12:06:06
Build Machine:   ECS26154618
File Version:    3.6
Description:     gnutls

So, it looks like the exact same version but I have a different build time ...
It's from "netlabs-rel" and the gtls30.dll DOES contain the "_gnutls_fips140_set_mode" exported function:
Code: [Select]
{1}[d:\usr\lib] exehdr gtls30.dll | find "_gnutls_fips140_set_mode"
 943    1  00055983  _gnutls_fips140_set_mode   exported

I am not using CUPS but I can say that:

http://localhost:631/admin

works (it sees my printer etc.). I then printed a test page via the admin GUI and that also worked.

12
Games / Re: OS/2 - ArcaOS - Native Games
« on: July 28, 2021, 06:11:09 pm »
But in BWWs version, I fixed an init error in the display structures, which should be applied to Digis version, if not already done.

I didn't find your fix.

https://github.com/bitwiseworks/SDL2-os2/commit/f5057a506716d15c405a545403b316e807d7069e

13
Multimedia / Re: Updated Uniaud32 build
« on: July 27, 2021, 09:00:21 am »
Looks good. Just to be sure you can remove the Sequencer= lines.
I don't think it will be necessary to install the drivers from scratch once MMPM2.INI is correct (of course, the drivers will need to be loaded via config.sys). MMPM2.INI has always been the weak spot of the video/audio system.

14
Multimedia / Re: Updated Uniaud32 build
« on: July 26, 2021, 09:09:53 am »
Post it here or attach and I will fix it for you.

15
Applications / Re: Creating some apps RPM packages
« on: July 05, 2021, 04:31:10 pm »
But I still haven't full started with the RPM installers. On my last attempts I got stuck with the WPS integration to create icons and set the properties of WPS objects (Path, working directory, etc). I usually get the answer that it works, but I'm doing it wrong, but nobody tells me how to do it right.

I do this using REXX scripts. This is called from the %post section of the .spec file for installation and from the %postun section for uninstallation. My restartwps.exe utility is also used to restart the desktop correctly.

My .spec:
ftp://os2.snc.ru/pub/freerdp/RPM/ofreerdp.spec

REXX scripts and restartwps.exe:
ftp://os2.snc.ru/pub/freerdp/RPM/spec-tools/

(see "restartwps.exe -?" for help)

How to create a WPS object from an RPM spec is explained here (as source code comments):
http://trac.netlabs.org/rpm/changeset/91
http://trac.netlabs.org/rpm/browser/spec/trunk/SPECS/os2-rpm/macros.wps

and a practical example:
http://trac.netlabs.org/rpm/browser/spec/trunk/SPECS/qtcreator/qtcreator.spec

Pages: [1] 2 3 ... 56