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 - Wim Brul

Pages: 1 ... 8 9 [10] 11 12 ... 20
136
Programming / Re: Observing if a program uses vio calls
« on: March 01, 2020, 12:50:10 pm »
In the Borland C header, both parameters row and column are PUSHORT. So we have three different meanings. Anyway, the original 2 times PUSHORT definition works. I assume the are problems if values higher than 65536.

Meanwhile, the new mechanism for popping up VIO windows works! But I have found a program TED.EXE (very old minimalistic editor for editing config.sys on 3,5 inches discs) which is not recognized: It is a pure VIO program and when starting, it draws a menu on the bottom of the VIO window and then it awaits input on the topleft cursorposition (0,0). So my program thinks that there was no input. Are there other useful VioGet... calls where I can additionally query and compare other values than the cursor position? Perhaps comparing the whole screen buffer? (Which is not as big today as it was 20 years before...) I could write user settings for these additional queries.

Use VioReadCharStr to compare the whole screen buffer (I think 8192 chars max)  or use VioReadCellStr to compare the whole screen buffer including colors.

137
Programming / Re: Observing if a program uses vio calls
« on: March 01, 2020, 11:35:37 am »
From the IBM Toolkit 4.5 Control Program Guide and Reference
Quote
#define INCL_VIO
#include <os2.h>

PULONG     Row;        /*  Row return data. */
PUSHORT    Column;     /*  Column return data. */
HVIO       VioHandle;  /*  Presentation-space handle. */
APIRET     rc;         /*  Return code. */

rc = VioGetCurPos(Row, Column, VioHandle);

Yes, that info is there, but when you look into BSESUB.H you will see that only the 16 bit version has been defined in there.     

138
Programming / Re: Observing if a program uses vio calls
« on: March 01, 2020, 10:30:46 am »
I began to program now and I have found a suspect difference between headers of VioGetCurPos:

in
http://www.edm2.com/index.php/VioGetCurPos
the second parameter Row is PULONG, but in my header file (Borland C 2.0), the header file is defined as PUSHORT16. What is correct now? Can someone take a look at a current development environment (Open Watcom?) in bsesub.h ? Thank you.

PULONG for Row in the wiki is definitely  wrong. It must be USHORT. I will change it in the wiki accordingly.

EDIT: Now I am not so sure anymore. I see VioGetCurPos and VioGetCurPos (FAPI) in the wiki. I am used to code my VIO calls as to the FAPI definitions, which is 16 bit source code. That VioGetCurPos (FAPI) definition is correct. It seems to me that the VioCurPos definition applies to 32 bit source code. Hence PULONG seems to be correct for its Row and Column parameters.

EDIT: I know better now. Therefore I have undone my wiki changes.

139
Applications / Re: Hardware Explorer
« on: February 10, 2020, 03:15:29 pm »
Hi Digi,

The flashing display problem has been solved with the TEST and TEST2 versions you sent me by private mail. Thank you.

However, on my dell latitude e6500 system, I get a trap when I want to display the "MOUSE_0 IBM Compatible Mouse" properties.
Sometimes I can see it shortly, so a took a snapshot of it, but I think the problem has to do with "Unknown Mouse Adapter".   


02-10-2020  14:31:37  SYS3175  PID 005e  TID 0020  Slot 006a
H:\OS2\PMSHELL.EXE
c0000005
1d23b05f
P1=00000002  P2=980f7208  P3=XXXXXXXX  P4=XXXXXXXX
EAX=00e33770  EBX=980f7200  ECX=00e33bf0  EDX=720f56e4
ESI=00e30020  EDI=00e30000
DS=0053  DSACC=d0f3  DSLIM=bfffffff
ES=0053  ESACC=d0f3  ESLIM=bfffffff
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:1d23b05f  CSACC=d0df  CSLIM=bfffffff
SS:ESP=0053:00ea9d70  SSACC=d0f3  SSLIM=bfffffff
EBP=00000000  FLG=00010202

HWEXP.DLL 0002:0000b05f

------------------------------------------------------------

02-10-2020  14:31:37  SYS3170  PID 005e  TID 0001  Slot 0048
H:\OS2\PMSHELL.EXE
00000000
00000001
EAX=00e33770  EBX=00e30000  ECX=00e30030  EDX=980f7200
ESI=00e30000  EDI=00000000
DS=0053  DSACC=d0f3  DSLIM=bfffffff
ES=0053  ESACC=d0f3  ESLIM=bfffffff
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:1d23b0e3  CSACC=d0df  CSLIM=bfffffff
SS:ESP=0053:0004f900  SSACC=d0f3  SSLIM=bfffffff
EBP=0004f92c  FLG=00010287


Wim

140
Applications / Re: Hardware Explorer
« on: February 09, 2020, 04:24:41 pm »
Hi Digi,

When I invoke Hardware Explorer 0.0.5 from System Setup then its tree view display is not stable. It sort of flashes every 2 seconds. I think it has to do with the new function "If the USB device is not found in the USB.IDS file, then the name consists of data taken from the device itself". The title of the Properties pages of such devices flash every 2 seconds too. I have several of such devices. I have attached 2 snapshots of my behringer umc204hd device. The 1st one is shown for about 2 seconds and the 2nd one (not easy to capture) is shown as a brief flash. It happens both on ArcaOS 5.0 and eComStation 2.0 with Lars Erdmann 10.232 drivers.

Wim   

141
General Discussion / Re: Strange hobbes.nmsu.edu behavior.
« on: February 03, 2020, 03:39:50 pm »
Use HobbesIncoming to access all files in there.

142
Utilities / Re: symbol file for kernel 14.106 or latest XR_C006
« on: January 31, 2020, 12:46:12 pm »
Hi Lars, I have the following:

Archive:  D:/OS2/PDPSI/PMDF/PB106SMP/OS2KRNL_SYM-14.106_SMP.ZIP
  Length     EAs   ACLs    Date   Time    Name
 --------    ---   ----    ----   ----    ----
   173188      0      0  13-02-07 18:22   os2krnl.sym
          462      0      0  30-05-13 01:44   os2krnl.lvl
   173188      0      0  13-02-07 18:22   os2krnlr.sym
 --------  -----  -----                   -------
   346838      0      0                   3 files

Archive:  D:/OS2/PDPSI/PMDF/PB106SMP/DF_RET_EXE_14.106_SMP.ZIP
  Length     EAs   ACLs    Date   Time    Name
 --------    ---   ----    ----   ----    ----
   144323      0      0  13-02-07 18:25   df_ret.exe
          388      0      0  13-02-07 18:25   df_ret.lvl
 --------  -----  -----                   -------
   144711      0      0                   2 files

I will try and send these to you.

Wim

143
Quote
So it seems that I need to switch to named pipes again. To preclude a programming failure, does someone know it definitely ?

With DosStartSession() a parent process/child process relationship is not established. Hence named pipes must be used between editor and command processor.

144
Quote
Grandfather (my PM editor) starts parent (cmdhelper.exe commandline program) via DosExecPgm - synchronous or asynchronous, with own session or not makes no difference at this point, because PID is not needed.

The use of DosExecPgm() is incorrect at this point. DosStartSession() must be used to start the child session with different SSF_TYPE_WINDOWABLEVIO session type.

Quote
Hope this concept is OK now ? (I can start the parent in a new session, no problem, but don't understand it, because if I use the same session as in the PM program, both cmdline programs are still in the same session.)

Almost correct. Have a close look at Figure1 again. You will notice DSS written vertically to indicate that the editor uses DosStartSession() to start the helper. You need to use SSF_RELATED_CHILD to establish a parent session/child session relationship. A parent process/child process relationship is not established.


145
Quote
Your description means, exceptions can only be sent from a non-PM process to a non-PM process?

Establishing an exception handler for Ctrl+C and Ctrl+Break is only supported for vio-window and full-screen sessions.
The pmshell session exception handler has its own way to deal with exceptions and DosSendSignalException has no effect.
See Figure1 - Proposed for working implementation. Shows the barrier between pmshell session and screen group session.

Quote
If I understand the DosSendSignalException docu right, the relationship between the processes (child or not) does not matter.

Exceptions are handled within a screen group on a Last-In-First-Out basis. Therefore a process within a screen group can always establish its own exception handler, which it might need, whether or not it is the parent, child or grandchild etc. within that screen group session.     

Quote
So I could start two non-pm programs, the cmd.exe and a text-based helper exe which simply sends the message forward to cmd.exe.

When you start two non-pm programs from you pm program then your helper process runs isolated from the command processor process.
See Figure2 - Proposed NOT working implementation. Shows barrier between pmshell session and both screen group sessions.

Quote
Wim, why do you think that I need to implement a new session? Cmd.exe currently runs in the same session as the parent editor.

I don't know how to explain it better. It is because DosSendSignalException() used by your PM program cannot affect cmd.exe then.

146
Hi Martin,

I think that DosStartSession is the wrong way because Sessions can include several processes and we need to get the two processes as close as possible.

I don' think so. Using DosStartSession() is the only way to go:

You must use DosStartSession() to start your non-PM process from your PM process.

Within your non-PM process you may then use DosExecPgm() to invoke the Command Processor.   

Your non-PM process may then use DosSendSignalException() to that Command Processor process.

You will have to find a way to signal this request from your PM process to your non-PM process.

One could think of using a system semaphore like e.g. \SEM32\STOPTHAT to do that.

Wim Brul

147
Hardware / Re: ArcaOS - OS/2 on an Lenovo Yoga 12 + Touch + Stylus
« on: January 11, 2020, 03:13:41 pm »
I am happy  :)  to report that Pen and Touch for Thinkpad Yoga12 with ArcaOS is now available.

Thanks to Sigurd Fastenrath for requirements and testing.

148
Hardware / Re: ArcaOS - OS/2 on an Lenovo Yoga 12 + Touch + Stylus
« on: December 16, 2019, 10:41:59 am »
Hi Martin, Sigurd,

Since the webcam is working with my UVC Webcam Support for OS/2 programs (WebSee),  I expect it to work with my "UVC Microscope Viewer for OS2 (UvcScope) too.
These programs use the USBCALLS interface i.e. USBECD is not used. Isochronous Transfers are only used by the webam i.e. not used for pen and touch support.

Wim.

149
Hardware / Re: Pen for OS/2
« on: November 19, 2019, 11:28:04 am »
Hi Doug,

To try and get the GTCO CalComp DrawingBoard IV working as a mouse on eComStation start as follows:

You need to use the optional serial interface. You need to customize the tablet data format and communications parameters using the Menu Strip.

Mode: Run. Baud Rate: 38400. Data Bits: 8. Parity: None. Data Rate: 125 pps. Resolution: 2540 lpi. Output Format: 21. Emulation: Wacom Binary.

Using the above values I expect the tablet to interface the same way as the Lenovo ThinkPad (COM) models do.

Add DEVICE=O:\OS2\BOOT\PSCOM.SYS into your O:\CONFIG.SYS file assuming eComStation installed on drive O:

Reboot your system and run "COMRAW.CMD" to get raw input data. Run "DECODE.CMD" to display events.

Display from DECODE.CMD using the correct baudrate looks like:

sBtn=00,xPos=03799,yPos=02328,zPos=00026,Stylus:MoveOnly
sBtn=01,xPos=01789,yPos=03436,zPos=01418,Stylus:But1Down
sBtn=00,xPos=01794,yPos=03433,zPos=00016,Stylus:MoveOnly
sBtn=00,xPos=00010,yPos=00027,zPos=00024,Stylus:NoButMov

Regards, Wim.

150
Hardware / Re: USBDRV 10.225 - full support for USB audio
« on: July 25, 2019, 06:51:34 pm »
Really, only playback has been tested, I am not sure in how far or to what extent recording will work.

Since june 2019 I have been busy on getting recording working. I have put a beta test Audio Recorder and Replayer] and beta test audio 13.227 drivers] on my website. With this you may record and playback hires PCM audio streams. I made the Audio Recorder and Replayer  open source. The Lars Erdmann 10.227 drivers are prerequisite. I have tested this out with the behringer u-phoria umc204hd device and I can now properly record 32-bit PCM stereo at 44100, 48000, 88200, 96000, 176400, 192000 Hz with that device. These are the frequencies it supports with 24-bit resolution.

Wim

Pages: 1 ... 8 9 [10] 11 12 ... 20