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 2 [3] 4 5 ... 19
31
Hardware / Re: WebCam Driver Question
« on: March 22, 2022, 06:20:07 pm »
Hallo Igor,

I think I know now where the problem is. It is in the scanning of the usb descriptors.  Please send me the "lsusb -d 09da:2695 -v" report of your camera.

Wim

32
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: March 22, 2022, 05:37:26 pm »
Quote
2Wim - Wim, will your current drivers work natively under ArcaOS as well? (ie. if there is a native ArcaOS game that uses a joystick, could the joystick be used with the drivers, as you've programmed them currently?)
Yes Mark, in an ideal world, it will work as long as the native ArcaOS game uses the GAME$ device for its joystick access. Right now it is still very experimental.

33
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: March 21, 2022, 12:41:27 pm »
Hi Mark,

Quote
Running xevents.cmd the following happened:

1) pressing each of the 4 red buttons in turn generated no return hex data (ie. it seems none of them were recognized).

Oops, my mistake. You will have to modify xevents.cmd line 98 as follows:

From: "button = c2d(substr(oiBuffer,8+0,1))" into "button = c2d(substr(oiBuffer,8+1,1))"

Good luck!

Wim

34
Hardware / Re: WebCam Driver Question
« on: March 21, 2022, 12:29:59 pm »
Hi Wim

Code: [Select]
webcam /a /n
started.
format:yuyv
 acquire webcam
 set configuration
 negotiate video format
 obtain video format
 commit video format
 set video alt interface
/n server (video) On-Line.
 starting iso video

USB Dock: Unknown device
Identifier: 09da:2695

<<< Device Description >>>
Type :01
USB Rev :200
Class : Miscellaneous Device (0xEF)
Subclass : Common Class (0x02)
Protocol : Interface Association (0x01)
Max. packetsize :64
Vendor  ID :0x09DA
Product ID :0x2695
Device Release# :0100
Number of Configurations:1

Configuration: 0
Length : 941
ConfigurationValue : 1
Attributes : 0x80
MaxPower : 0xFA
NumInterfaces : 4
USB_DT_UNKNOWN_FOR_ME

Interface: 0
AlternateSetting : 0
Class : Video (0x0E)
SubClass : Video Control (0x01)
Protocol : Unknown (0x00)
Endpoints : 1
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME

Endpoint: 0
Address : 0x83
Attributes : 0x03 (Irq)
MaxPacketSize : 16
Interval : 6
USB_DT_UNKNOWN_FOR_ME

Interface: 1
AlternateSetting : 0
Class : Video (0x0E)
SubClass : Video Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 0
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME

Interface: 1
AlternateSetting : 1
Class : Video (0x0E)
SubClass : Video Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 1

Endpoint: 0
Address : 0x81
Attributes : 0x05 (Iso)
MaxPacketSize : 128
Interval : 1

Interface: 1
AlternateSetting : 2
Class : Video (0x0E)
SubClass : Video Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 1

Endpoint: 0
Address : 0x81
Attributes : 0x05 (Iso)
MaxPacketSize : 256
Interval : 1

Interface: 1
AlternateSetting : 3
Class : Video (0x0E)
SubClass : Video Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 1

Endpoint: 0
Address : 0x81
Attributes : 0x05 (Iso)
MaxPacketSize : 800
Interval : 1

Interface: 1
AlternateSetting : 4
Class : Video (0x0E)
SubClass : Video Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 1

Endpoint: 0
Address : 0x81
Attributes : 0x05 (Iso)
MaxPacketSize : 2848
Interval : 1

Interface: 1
AlternateSetting : 5
Class : Video (0x0E)
SubClass : Video Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 1

Endpoint: 0
Address : 0x81
Attributes : 0x05 (Iso)
MaxPacketSize : 4896
Interval : 1

Interface: 1
AlternateSetting : 6
Class : Video (0x0E)
SubClass : Video Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 1

Endpoint: 0
Address : 0x81
Attributes : 0x05 (Iso)
MaxPacketSize : 5120
Interval : 1
USB_DT_UNKNOWN_FOR_ME

Interface: 2
AlternateSetting : 0
Class : Audio (0x01)
SubClass : Control Device (0x01)
Protocol : Unknown (0x00)
Endpoints : 0
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME

Interface: 3
AlternateSetting : 0
Class : Audio (0x01)
SubClass : Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 0

Interface: 3
AlternateSetting : 1
Class : Audio (0x01)
SubClass : Streaming (0x02)
Protocol : Unknown (0x00)
Endpoints : 1
USB_DT_UNKNOWN_FOR_ME
USB_DT_UNKNOWN_FOR_ME

Endpoint: 0
Address : 0x84
Attributes : 0x05 (Iso)
MaxPacketSize : 192
Interval : 4
USB_DT_UNKNOWN_FOR_ME

I do not work with the sound from the camera. Could you help with this?

Hi Igor,

Let me try. I have some questions for you to answer first...

1. Are you using ArcaOS or eComStation or what? Which version?
2. Are you using ArcaOS or Lars Erdmann drivers? Which version? 
3. Is this camera the only camera connected to your system?
4. Does your laptop have a builtin camera? Is it enabled in the bios?
5  What version of webcam.exe are you using?

Following Remy's suggestion /dN you select the proper camera to be used.
So "webcam /d09DA:2695:0100 /a" forces to use the proper camera.

Following Remy's suggestion /iN you reduce video bandwidth.
So "webcam /d09DA:2695:0100 /a /i1 uses less video bandwidth.

Wim

35
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: March 20, 2022, 03:40:47 pm »
Hi Wim

The joystick is not longer working for me on Makman and DOS GAMES. (Using gamepad-20220317.zip)
I'm using the Huskee adapter with the PS2 gamepad. oinput.cmd and xevent.cmd are working fine, they show me the button strokes, so I guess "gamepad.sys" is working fine too.

I seems to have some problem with teh GAMEDD.SYS and GAMEVDD.SYS talking to the "gamepad.sys", I guess.
Is there something else I can try to find out where my issue can be?

Hi Martin,

What did you try? You could try and use the drivers contained in huskee-20211226.zip  which worked on your system before.
Perhaps you need to press the select button? Perhaps you changed something else on your test system?
For dos games setting GAME_DIRECT_ACCESS must be OFF.

Wim

36
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: March 20, 2022, 10:18:34 am »
Hi Mark,

I played tennis yesterday for one hour. Good for my health and fun to do.
Quote
Oinput.cmd worked perfectly. However adding command oinput.cmd > Button.log hung the process until control-c was pressed, so could not generate log. Tried syntax oinput.cmd >button.log. Same result.
.
As mentioned the LOG instructions are not working - do you have any idea why?
It seems to me that oinput.cmd > button.log is not working up to your expectation. What you do with the controls is not shown but written to the log instead.

I have no idea what the Thrustmaster Pro Joystick looks like i.e. how many buttons it has and where these are located.
Do you have a picture and description of what controls it has  and how you would use those controls?

Thanks for your efforts sofar!

Wim

37
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: March 18, 2022, 06:12:30 pm »
Hallo Mark,

Quote
Are the REXX scripts your describing for me in the package you attached, and
Are there any installation instructions that come with the packages?
Sub directory RM203  contains oinput.cmd and xevents.cmd for your device. That directory also contains testing.txt with installation and test instructions. 

Wim

38
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: March 17, 2022, 06:16:00 pm »
Martin Iturbide was so kind to send me some usb game controllers for me to experiment with. What I have done so far (still very experimental):

I created GAMEPAD.SYS (new driver) which talks to modified GAMEDD.SYS (replacement).
I created xevents.cmd which uses USBECD.SYS to obtain events from those controllers.
This xevents.cmd (written in rexx) sends transformed events to GAMEPAD.SYS and so on.
At the end these events arrive in GAMEVDD.SYS what I have seen happening right now.

I can play some games with my C=64 emulator for OS/2 using those controllers. I can play OS/2 game MAKMAN and DOS game WOLF3D using those controllers.
Martin Iturbide did some testing with his own usb game controllers as well. He suggested to go public so others can test and provide their comments. So here it is.

@Mark: for your Padix RM-203 there are 2 REXX scripts to try out:

1) I modified oinput.cmd which now only reports changed input events.
2) I created xevents.cmd to send transformed events into GAMEPAD.SYS.

I already did some ad hoc mapping of various controls into just 4 axis and 4 buttons.
The big challenge is to come up with proper mapping for each usb game controller.

39
Quote
Two Dutch OS/2 users reported recently that https://mijn.ing.nl/login/ no longer works.
Make that three. It happened in december last year and I had to make up my mind on what to do. Must I buy a smartphone, laptop, desktop and learn how to operate that? Which one? What operating system? All my systems are OS/2 based. It is all I know. No linux, Mac, Windows. Bills and taxes had to be paid! So after searching the internet and making up my mind I ended up buying a windows 11 laptop at the local computer shop.         

40
Hardware / Re: WebCam Driver Question
« on: February 01, 2022, 11:10:53 am »
I have now released UVC Webcam Server for OS/2 (ArcaOS,eComStation) as open source. Enjoy.

41
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: November 25, 2021, 01:11:49 pm »
Hi Mark,

Thank you for your efforts. I did some analysis - see "LogiLink input analysis.jpg" attached.

Quote
I believe that there are only two types of thinkers generally, Wim - linear thinkers (just follow instructions to the inevitable conclusion) and lateral thinkers (the second ask things like "what do Babylon and Babe Ruth in an encyclopedia have to do with each other?) so I just didn't blindly follow the instructions - I went back to the beginning.
I appreciate that. I refrained from detailed instructions and mentioning foreseeable problems because I figured you would do that and that would be most effective.

Quote
As the Thrustmaster Joystick I have really is defined by Mode 2 only, I would suggest that I will reset the adapter to a static Mode 2, and we should concentrate efforts on that mode only, as I do not have any other equipment which may meet the other definitions, for test purposes, and I am not sure anyway if DOSBOX would recognize Mode 1 and 4 configurations, as they were not defined in any of the legacy DOS games I am aware of.
Right you are. Which brings me to the question what efforts to concentrate on. I have enough information to process the input report data.

There are still 2 ways to support USB gamepads/joysticks (one  being thru GAMEVDD.SYS/ GAMEPDD.SYS and the other thru HIDAPI to DOSBox) and I think both should be working. I have enough information to try and modify GAMEPDD.SYS to work with your Thrustmaster Joystick. This will take some time and effort for me to accomplish. For starters I am thinking of an ioctl interface for gamepads/joysticks into GAMEPDD.SYS to be used by some program that uses USBECD.SYS to access your Thrustmaster Joystick. When I succeed then perhaps this could also be an alternative way for DOSBox to be used. Although for DOSBox it is better that someone gets HIDAPI to work well.

Our local time is now 13:11 hour. Did you receive this post right away?

Best regards,
Wim

42
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: November 24, 2021, 04:54:32 pm »
Hi Mark,

Quote
Device= ?:\OS2\BOOT\USBECD.SYS /D:0583:203#:0110 /N:$THRUST$
.
I'm interested as to why that syntax was used, as I'm sure other people would be.
.
(I think we are all learning programming in this exercise)
There is a 4 position switch on your device and it is my understanding that this switch corresponds to 4 different idProduct values.
Dependent upon the switch setting used (1, 2, 3, 4) I expect your device to report idProduct 2030, 2031, 2032, 2033 respectively.
This way oinput.cmd would work for all 4 switch settings and the actual hid input report obtained would vary accordingly.

Code: [Select]
EC18000081030700 | 04000F4956FF6E | EE
EC18000081030700 | 04000F4A94FF6E | EE
EC18000081030700 | 04000F9250FF6E | EE
On each line, between the | characters, you see the actual hid input report data in hexadecimal.

Code: [Select]
04 | 00 | 0F | 49 | 56 | FF | 6E
B  | 00 | H  | X  | Y  | Z  | S
B=button, H=Hat, X=X-axis, Y=Y-axis, Z=Z-axis, S=Slider

Please obtain the lsusb report for each of the 4 switch settings of your input device.

Please try and run oinput.cmd for each of the 4 switch settings of your input device.

Wim

43
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: November 22, 2021, 11:05:12 pm »
Hi Mark,

I understand your explanations. Thank you. We will take the step by step approach.
I have prepared oinput.cmd that hopefully obtains input from your LogiLink adapter.

Run oinput.cmd and operate your ThrustMaster for a few seconds.
When it works you will see something like below to appear.

Code: [Select]
EC100000810306000100000000FFEEEE
EC180000810306000100FEFFFF00EEEE
EC100000810306000100FFFFFF00EEEE
EC18000081030600010000000000EEEE
EC100000810306000100FFFFFF00EEEE

Please post your output with a description of your actions.

Have fun,

Wim

44
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: November 20, 2021, 06:13:07 pm »
Hi Mark,

I am happily impressed by your clear and thorough investigations. Let me try to answer your questions.

Quote
One question occurred to me related to your post - I know that a lot of the advantage to using USB is the Plug and Play nature of USB.

However if you were not planning to switch or remove the device, simply have it remaining plugged in (IOW simply using the same joystick or gamepad device all the time) and are sufficiently savvy, technically, to modify Config.Sys yourself manually, providing the /D: and /N: information, could input device support for a specific device be done through your USBECD driver?
Yes. That is the way how I implemented a.o. touch screen support for some Wacom Bamboo models. The supporting program (without looking into the HID report descriptors) knows by heart what the actual input report format is and acts on it accordingly. That program allows to hotswap the device (only tested for the same model though).

Quote
Or are you referring to another specific Config.sys statement that would need to be added to address each device, to allow the input functions of the Joystick to be used? (essentially in the case of the Thrustmaster joystick I'm using it would be X-Y direction, enable 4 separate buttons, and a POV (Point of View switch)
Yes. That is the way how I implemented a.o. touch screen support for some Wacom Intuos models. The supporting program (without looking into the HID report descriptors) knows by heart what the actual input report format is and acts on it accordingly. That program allows to hotswap the device (only tested for the same model though).

Quote
I ask because it sounds like you are referring to your driver not being able to provide a "hot swap" function, as opposed to not being able to address and use the device.
No. The reason is that each USBECD.SYS device driver grabs the first USB device that fulfils its config.sys specification. This way the proper USB device is connected to the proper supporting program i.e the one that knows how to handle this particular device.

Quote
Or are you thinking that since the infrastructure already exists, through GAMEVDD.SYS and GAMEDD.SYS, that adding the USB translation layer would be a better approach?
Hard to say. There is more to it. It is complicated. Personally I favor as much backwards compatibility as possible. Existing programs that do work with game port joysticks need, on modern system without game port, to work with USB joysticks. This is why I think that an additional interface from GAMEDD.SYS to USBHID.SYS is to be developed. I am under the impression that the current port of DOSBox for OS/2 does contain game port joystick support. I wonder if that has been done by means of accessing our GAME$ device driver or through direct i.e. non-emulated game port access (unlikely because hard to do).
   
Quote
The reason the discussion turned to DOSBOX is that, while the ArcaOS has no interface to use newer USB based gaming input devices (the current support as I understand it is centered on Gameport devices natively), DOSBOX does have the ability currently to address and use USB input devices if they conform to the parameters that were used originally with many of the old DOS games including:

2axis (supports two joysticks)
4axis (supports one joystick, first joystick used
4axis_2 (supports 2 joysticks),
fcs (Thrustmaster) 4 axis, 4 button with POV viewer
ch (CH Flightstick)
Understood.  As mentioned before , one way to go would be via the generic USBCALLS interface. Another way could be via our to be modified GAMEDD.SYS i.e. GAME$ device driver. Yet another way could be through that additional USBGAME.SYS device driver.

Quote
People using DOSBOX under both Windows and Linux are doing this successfully with the newer USB input devices, using the existing built-in source code in DOSBOX, if the layout of controls is similar to one of the above configurations. Having that support available already in DOSBOX may mean not having to reinvent the wheel again related to creating a whole new DOS infrastructure to address USB input devices, as legacy games represents the majority of uses that a input device of this nature would be used for.
I am not sure what you are saying. Do you mean that, for DOSBox only, some shortcut solution would be acceptible limited to just those 5 devices? How about other SDL based games then?

Best regards,

Wim

45
Games / Re: DOS VDM - USB and Game port Gamepad support
« on: November 19, 2021, 12:11:34 pm »
To access USB gamepads/joysticks from an SDL based application such as DOSBox you should not use my USBECD.SYS driver. The reason for this is that you would need a very specific device driver statement in config.sys for the particular gamepad/joystick that you want to use. Plugging in a different gamepad/joystick would require config.sys to be changed. The way to go is via the generic USBCALLS interface.

To extend existing support of joysticks provided by GAMEVDD.SYS and GAMEDD.SYS to USB gamepads/joysticks requires an additional interface from GAMEDD.SYS to USBHID.SYS to be developed. This implies at least modifications to GAMEDD.SYS and possibly an additional USBGAME.SYS device driver in between. Right now I am experimenting and studying to see what I can do to provide this particular support.

Pages: 1 2 [3] 4 5 ... 19