VOGONS


DOS driver for RetroWave OPL3

Topic actions

Reply 20 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
Duffman wrote on 2022-11-11, 02:54:

@sofakng

I wouldn't rule out a power issue just yet, try with a separate powered USB hub and see if that works with it.

I've bought a NEC versa s260 laptop which has an EHCI controller with OHCI, I'm now testing with it.
I've got a different error, I'm gonna fix it first.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 21 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
crazii wrote on 2022-10-07, 23:55:
sofakng wrote on 2022-10-07, 19:06:
OK - No problem... Thanks for the information. […]
Show full quote

OK - No problem... Thanks for the information.

However, I'm trying to use this on my weeCee x86 PC and when I plug the RetroWave into the PC, it causes the PC to reboot.

After the reboot, if I attempt to run RWDDOS.EXE it throws an assertion error:
Q6DQDmm.jpg

After a few seconds, EMM386 also throws an error:
hp18aKQ.jpg

Sorry for the photos instead of screenshots.

Do you have any ideas?

I never tested OHCI on a real hardware. 🤣 I guess there's some bug in my code and it only works for VirtualBox emulation. Same thing happened when I test on QEMU and it works but crashes on real hardware and I fixed that.

Hey I've fixed 2 bugs and uploaded the new binary, you can try it. If it doesn't work, you can try the RWDDOSPM one which may be less buggy on memory mapping issue.
I tested both on my NEC versa S260 and it works good.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 22 of 35, by sofakng

User metadata
Rank Member
Rank
Member

Hmmm, it still doesn't work but I think the problem is between the Vortex86 (weeCee PC) and the RetroWave PotatoPi Lite. (ie. the RetroWave OPL3 is connected to the PotatoPi Lite)

As I mentioned, when I plug the PotatoPi + OPL3 into the weeCee, the PC immediately reboots. I've tried using a USB Y-splitter (for adding additional power) but it doesn't seem to help.

RWWDOS:

IMG_6081.JPEG
Filename
IMG_6081.JPEG
File size
913.19 KiB
Views
1834 views
File license
Public domain

RWDDOSPM:

IMG_6080.JPEG
Filename
IMG_6080.JPEG
File size
927.6 KiB
Views
1834 views
File license
Public domain

Reply 23 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie

Immediate reboot? I'll bet on a power issue. It maybe irrelevant but Before my NUC is dead, every time I plugged any USB device to the front panel the HDPMI signal is black out for once, I didn't pay attention and it finally died.
Meanwhile I'll talk to Sudomaker to check if there is any driver difference between lite and express.
I can make a debug version to see the logs, it might help.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 24 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie

Update: protected mode games support added.
Detail added in the original post.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 25 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
sofakng wrote on 2022-12-05, 20:48:
Hmmm, it still doesn't work but I think the problem is between the Vortex86 (weeCee PC) and the RetroWave PotatoPi Lite. (ie. t […]
Show full quote

Hmmm, it still doesn't work but I think the problem is between the Vortex86 (weeCee PC) and the RetroWave PotatoPi Lite. (ie. the RetroWave OPL3 is connected to the PotatoPi Lite)

As I mentioned, when I plug the PotatoPi + OPL3 into the weeCee, the PC immediately reboots. I've tried using a USB Y-splitter (for adding additional power) but it doesn't seem to help.

RWWDOS:
IMG_6081.JPEG

RWDDOSPM:
IMG_6080.JPEG

I've attached more devices to my laptop and found 3 bugs and got them fixed. I think those bugs might relate to you problem. Did you have other USB divices attached? Or maybe other drivers/TSRs loaded. I guess you can try a clean boot with HIMEM.SYS and EMM386.EXE.
BTW if you still wanna try, here's my bug-fixed version, name changed to USBDDOSP.EXE and added some switches. you can use 'USBDDOSP.EXE /RW' to enable Retrowave OPL3.
--download link deleted, use original post's new uploads--

You can also test the newly added feature for USB disks (FATs FS only), use 'USBDDOSP.EXE /disk' to enable the USB disk feature, can be combined with /RW.
I'm trying to add keyboard & mouse support if it is possible.

Last edited by crazii on 2022-12-25, 10:08. Edited 1 time in total.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 26 of 35, by sofakng

User metadata
Rank Member
Rank
Member

Ugh ... Same problem.

It reports "Retro wave device not found." and then a few seconds later "Internal stack overflow, System Halted"

I'm also trying a separate power source:

weeCee  VCC -> N/C
weeCee D- -> RW D-
weeCee D+ -> RW D+
weeCee GND -> RW GND+weeCee GND

PSU -> RW VCC
PSU GND -> RW GND+weeCee GND

This prevents the weeCee reboot when I plug in the device but it still doesn't work. I don't have any other USB devices or hubs. There might be something with this RetroWave PotatoPi Lite that is just incompatible with the weeCee 🙁

Reply 27 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
sofakng wrote on 2022-12-21, 18:35:
Ugh ... Same problem. […]
Show full quote

Ugh ... Same problem.

It reports "Retro wave device not found." and then a few seconds later "Internal stack overflow, System Halted"

I'm also trying a separate power source:

weeCee  VCC -> N/C
weeCee D- -> RW D-
weeCee D+ -> RW D+
weeCee GND -> RW GND+weeCee GND

PSU -> RW VCC
PSU GND -> RW GND+weeCee GND

This prevents the weeCee reboot when I plug in the device but it still doesn't work. I don't have any other USB devices or hubs. There might be something with this RetroWave PotatoPi Lite that is just incompatible with the weeCee 🙁

Okay, I think there also might be problems on my driver 🤣. Unfortunately I don't have a weeCee to test, nor can I buy it. Actually it looks cute and I'd like to have one but there's nothing listed on my local market.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 28 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
sofakng wrote on 2022-12-21, 18:35:
Ugh ... Same problem. […]
Show full quote

Ugh ... Same problem.

It reports "Retro wave device not found." and then a few seconds later "Internal stack overflow, System Halted"

I'm also trying a separate power source:

weeCee  VCC -> N/C
weeCee D- -> RW D-
weeCee D+ -> RW D+
weeCee GND -> RW GND+weeCee GND

PSU -> RW VCC
PSU GND -> RW GND+weeCee GND

This prevents the weeCee reboot when I plug in the device but it still doesn't work. I don't have any other USB devices or hubs. There might be something with this RetroWave PotatoPi Lite that is just incompatible with the weeCee 🙁

BTW I think it will be much better to make a portable retro palmtop with LCD & mini keyboards, with function like weeCee but looks more like a GPD Win.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 29 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie

Meanwhile I'm gonna ask Sudomaker to check the Lite's vendor id, I use vendor id to detect the device, don't know if the Lite & Express use the same vendor id.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 30 of 35, by sofakng

User metadata
Rank Member
Rank
Member

I've checked my device and the VendorID (VID) is 0483 and ProductID (PID) is 5740.

However, I'm still not convinced the problem is with the Vortex86 SOM. When I plug in my KVM it allows me to type a few characters and then displays the exact same message ("Internal stack overflow, System Halted"). The KVM is self-powered so it shouldn't be a power issue I don't think.

I've modified the CONFIG.SYS to increase the STACKS to (9,256) but it doesn't help.

Reply 31 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie

I've talked to Sudomaker and the vendor id is as you said, but I didn't use it, the express and lite have different ids. I'll try fix the id and that will solve the device not found problem,
the other error, internal stack overflow, I think it is a bug of the driver, but I didn't see it in VirtualBox or real hardware, probably need more test.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 32 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
sofakng wrote on 2022-12-23, 15:39:

I've checked my device and the VendorID (VID) is 0483 and ProductID (PID) is 5740.

However, I'm still not convinced the problem is with the Vortex86 SOM. When I plug in my KVM it allows me to type a few characters and then displays the exact same message ("Internal stack overflow, System Halted"). The KVM is self-powered so it shouldn't be a power issue I don't think.

I've modified the CONFIG.SYS to increase the STACKS to (9,256) but it doesn't help.

I uploaded the new build to the original post. you can try it, the vendor id is fixed, and with other problems fixed.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 33 of 35, by ferropop

User metadata
Rank Newbie
Rank
Newbie

Any idea if this can work with the MiSTer FPGA platform in the AO486 core? Would be the missing link! The core is otherwise fantastic, but the OPL3 support is lacking and the dev has no interest in finishing it.

Reply 34 of 35, by sofakng

User metadata
Rank Member
Rank
Member

Unfortunately it won't work as-is. I've also asked the developers of the ao486 core to add USB or parallel (ie. OPL2LPT/OPL3LPT) support so we can add devices like this but it doesn't look too promising. 🙁

Reply 35 of 35, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
ferropop wrote on 2023-02-26, 17:38:

Any idea if this can work with the MiSTer FPGA platform in the AO486 core? Would be the missing link! The core is otherwise fantastic, but the OPL3 support is lacking and the dev has no interest in finishing it.

This project is experimental and as sofakang said, it's not working on his WeCee machine. I only tested on my 2 laptops (one OHCI and one UHCI) and virtualbox.
I need more machines to test with. I think other platform can be supported after it settles stable enough.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD