VOGONS


Reply 440 of 843, by webman

User metadata
Rank Newbie
Rank
Newbie

Doing some testing with the new firmware (0.7.0), I am running into a freezing issue. When playing Dark Forces or Doom, I am getting radom freezing while playing. If I switch back to 0.6.1 then the freezing goes away. Still testing more to make sure its not my machine.

I did manage to fix past issues I was having with no midi. Was a IO or IRQ conflict.

Reply 441 of 843, by polpo

User metadata
Rank Member
Rank
Member
webman wrote on 2023-08-13, 02:43:

Doing some testing with the new firmware (0.7.0), I am running into a freezing issue. When playing Dark Forces or Doom, I am getting radom freezing while playing. If I switch back to 0.6.1 then the freezing goes away. Still testing more to make sure its not my machine.

I did manage to fix past issues I was having with no midi. Was a IO or IRQ conflict.

Can you try running with firmware v0.7.0, running pgusinit /a 16 and see if the freezes go away? This will have it use the same audio buffer size as v0.6.1.

Reply 442 of 843, by webman

User metadata
Rank Newbie
Rank
Newbie

Dark Forces works properly, Doom still freezes. Tried playing with the number of digital channels dooms setup, and it does make a minor change. It seems to play longer before it freezes, but not much more.

Reply 444 of 843, by webman

User metadata
Rank Newbie
Rank
Newbie

It's version 1.2

If I disable sound fx and have just music it runs fine. If I disable music and have just sound fx it still freezes.

Has anyone else run into this? Just want to make sure it's not just me.

Reply 445 of 843, by polpo

User metadata
Rank Member
Rank
Member

Doom v1.2 has issues with sound effect samples played via DMA even on a real GUS. Versions after v1.2 moved to software mixing for that reason, see this quoted message from Paul Radek, author of the DMX sound engine used in Doom for more detail. You'll get better behavior with a version higher than v1.2; I've never seen v1.2 work reliably on PicoGUS.

Reply 447 of 843, by digger

User metadata
Rank Oldbie
Rank
Oldbie
polpo wrote on 2023-08-15, 01:41:

Doom v1.2 has issues with sound effect samples played via DMA even on a real GUS. Versions after v1.2 moved to software mixing for that reason, see this quoted message from Paul Radek, author of the DMX sound engine used in Doom for more detail. You'll get better behavior with a version higher than v1.2; I've never seen v1.2 work reliably on PicoGUS.

Out of curiosity: how feasible do you think it would be to "fix" the hardware bugs in the original GF1 chip that Paul Radek ran into, in a way that doesn't break actual compatibility?

Or were these issues already addressed in the Interwave chip?

Reply 448 of 843, by polpo

User metadata
Rank Member
Rank
Member
digger wrote on 2023-08-16, 08:42:
polpo wrote on 2023-08-15, 01:41:

Doom v1.2 has issues with sound effect samples played via DMA even on a real GUS. Versions after v1.2 moved to software mixing for that reason, see this quoted message from Paul Radek, author of the DMX sound engine used in Doom for more detail. You'll get better behavior with a version higher than v1.2; I've never seen v1.2 work reliably on PicoGUS.

Out of curiosity: how feasible do you think it would be to "fix" the hardware bugs in the original GF1 chip that Paul Radek ran into, in a way that doesn't break actual compatibility?

Or were these issues already addressed in the Interwave chip?

That’s a good question, I don’t know. DMA is so hard on the PicoGUS (mostly due to PSRAM latency) if there are bugs in the GF1 I doubt I’d be able to fix them. The DMA bugs with DMX may even be with the system’s DMA controller. I don’t think either the GF1 or DMA controller were made to be used in that way. I don’t have an Interwave card any more so I can’t test if it’s any better than the GF1 in older versions of Doom.

Reply 449 of 843, by polpo

User metadata
Rank Member
Rank
Member

I’ll be exhibiting PicoGUS at VCF Midwest in a couple weeks. I’ll have a couple original boards and the new “Femto” edition of PicoGUS for sale. I’ll also have FreddyV’s PicoMEM running on an XT clone as well as a PicoPOST. I hope anyone here in the middle US can make it!

I thought it’d be fun to add a new feature before the show so I just added USB joystick support so you can play DOS games with a DualShock 4 or Xbox 360 controller. I was thinking it’d take a few days but it only took a few hours to get something that worked well. The Pico’s timer isn’t high resolution enough to emulate a PC gameport so I had to exploit the RP2040’s PWM peripheral to get a nanosecond-level timer.

Here’s a video just after I got it working: https://bitbang.social/@polpo/110957633828828119

I’m also thinking of seeing if I could emulate Gravis’s GRiP protocol or the Sidewinder protocol to support more than 4 axes + 4 buttons.

The only issue is that in the current hardware design, there’s no power delivered to the Pico’s USB port, so a powered USB OTG cable is needed, or a bodge/jumper has to be added to the PicoGUS board. Also due to the orientation of the Pico on the original PicoGUS, the USB port is inside the computer.

Reply 450 of 843, by nizce

User metadata
Rank Newbie
Rank
Newbie

Hi!

Loving my picogus, but I have a weird problem that 30%-50% of the times I boot I get picogus not initialized when running pgusinit.
It’s solved by rebooting once or sometimes twice.

I’ve tried 2 different motherboards but still the same problem.

Haven’t used dos in ages so probably I’m missing perhaps obvious 😀
Anyone know what could be the issue?
Saw a setting called busclk in bios which seems related to the ISA bus. It’s set to 1 by default, don’t know if this has anything to do with it.

By the way, my motherbord is a BX440. Tried on a P3B-F and a P2B-F both have the same issue.

Reply 451 of 843, by polpo

User metadata
Rank Member
Rank
Member
nizce wrote on 2023-08-27, 22:22:
Hi! […]
Show full quote

Hi!

Loving my picogus, but I have a weird problem that 30%-50% of the times I boot I get picogus not initialized when running pgusinit.
It’s solved by rebooting once or sometimes twice.

I’ve tried 2 different motherboards but still the same problem.

Haven’t used dos in ages so probably I’m missing perhaps obvious 😀
Anyone know what could be the issue?
Saw a setting called busclk in bios which seems related to the ISA bus. It’s set to 1 by default, don’t know if this has anything to do with it.

By the way, my motherbord is a BX440. Tried on a P3B-F and a P2B-F both have the same issue.

Flaky operation sounds like an ISA bus speed issue possibly. I looked at the manual for both of those motherboards and there doesn't seem to be a way to set the ISA bus speed. Both of those BUSCLK options are for I/O recovery time... try to increase the 8-bit IO recovery time option. I stumbled on this post from someone with a 440BX that had to increase that option a lot to get it to work with an AdLib Gold clone card.

A 440BX chipset motherboard is one I don't have... yet.

Reply 452 of 843, by rasz_pl

User metadata
Rank l33t
Rank
l33t
polpo wrote on 2023-08-29, 01:34:

Flaky operation sounds like an ISA bus speed issue possibly. I looked at the manual for both of those motherboards and there doesn't seem to be a way to set the ISA bus speed. Both of those BUSCLK options are for I/O recovery time... try to increase the 8-bit IO recovery time option.

Could you add an option to pgusinit to detect and report current ISA clock?

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 453 of 843, by appiah4

User metadata
Rank l33t++
Rank
l33t++
polpo wrote on 2023-08-27, 15:32:
I’ll be exhibiting PicoGUS at VCF Midwest in a couple weeks. I’ll have a couple original boards and the new “Femto” edition of P […]
Show full quote

I’ll be exhibiting PicoGUS at VCF Midwest in a couple weeks. I’ll have a couple original boards and the new “Femto” edition of PicoGUS for sale. I’ll also have FreddyV’s PicoMEM running on an XT clone as well as a PicoPOST. I hope anyone here in the middle US can make it!

I thought it’d be fun to add a new feature before the show so I just added USB joystick support so you can play DOS games with a DualShock 4 or Xbox 360 controller. I was thinking it’d take a few days but it only took a few hours to get something that worked well. The Pico’s timer isn’t high resolution enough to emulate a PC gameport so I had to exploit the RP2040’s PWM peripheral to get a nanosecond-level timer.

Here’s a video just after I got it working: https://bitbang.social/@polpo/110957633828828119

I’m also thinking of seeing if I could emulate Gravis’s GRiP protocol or the Sidewinder protocol to support more than 4 axes + 4 buttons.

The only issue is that in the current hardware design, there’s no power delivered to the Pico’s USB port, so a powered USB OTG cable is needed, or a bodge/jumper has to be added to the PicoGUS board. Also due to the orientation of the Pico on the original PicoGUS, the USB port is inside the computer.

This functionality is of interest to me. I suppose one could design a microUSB male to USB Female breakout bracket to use with the device for this purpose. What kind of bodge wire is needed to provide power delivery to the USB port? Also, can the card actually do this in addition to emulating the GUS or MPU401 or is it a completely separate firmware?

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 454 of 843, by rasz_pl

User metadata
Rank l33t
Rank
l33t
appiah4 wrote on 2023-08-29, 08:51:

This functionality is of interest to me. I suppose one could design a microUSB male to USB Female breakout bracket to use with the device for this purpose. What kind of bodge wire is needed to provide power delivery to the USB port?

back in the day most LPT devices in need of external power shipped with keyboard in/out dongle stealing 5V

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 455 of 843, by polpo

User metadata
Rank Member
Rank
Member
appiah4 wrote on 2023-08-29, 08:51:

This functionality is of interest to me. I suppose one could design a microUSB male to USB Female breakout bracket to use with the device for this purpose. What kind of bodge wire is needed to provide power delivery to the USB port? Also, can the card actually do this in addition to emulating the GUS or MPU401 or is it a completely separate firmware?

That's a good idea for the bracket. The VBUS and VSYS pins of the Pico need to be connected together - it's a pretty simple bodge. The only downside to doing this is that the 5V pin on the USB will always be energized if the PC is on, so it's not the best idea to plug it into another USB host like a PC.

I think the Pico is actually capable of running a joystick simultaneously with sound emulation. I'll have to do some more testing when I get the time to do so. As long as the second core can handle polling the USB port as well as generating sound, we should be in good shape.

Reply 456 of 843, by polpo

User metadata
Rank Member
Rank
Member

One of the long-standing issues I've had listed on the PicoGUS compatibility page is DMA incompatibility with SS7 motherboards with the VIA MVP3 chipset. The symptom is games like Doom either not starting, starting without sound effects, or starting with no sound at all. I used the Ko-Fi money to buy a motherboard with that chipset, which was great, and I was able to corroborate the issue. I put off doing some bus captures with my real GUS to see what it does differently until today, and would you guess what: my real GUS has the exact same DMA problems with this chipset. I'm feeling pretty vindicated.

I had an MVP3 chipset motherboard back in the 90s, and I could have sworn my GUS worked fine with it... but I just realized I had an Interwave card in that machine. So either the Interwave fixes the DMA issues that the GF1 has with the MVP3, or it also has the same problem and I never actually ran into it. By 1998 I was mostly off DOS games and the only stuff I ran in DOS on the Interwave were demoscene productions which have no problem on this chipset.

Reply 457 of 843, by vutt

User metadata
Rank Member
Rank
Member

I haven't seen any comments on SIS chipsets compatibility? I have QDI SS7 board on SIS530 chipset.
I think I build one anyway. Proper time sink for upcoming long autumn nights...

Reply 458 of 843, by polpo

User metadata
Rank Member
Rank
Member

I only have one motherboard with a SiS chipset, a 486 VLB motherboard. I have seen no problems with PicoGUS on it yet, but I don't use it much - it has Varta battery damage that makes it flaky.

Reply 459 of 843, by appiah4

User metadata
Rank l33t++
Rank
l33t++
vutt wrote on 2023-08-31, 20:36:

I haven't seen any comments on SIS chipsets compatibility? I have QDI SS7 board on SIS530 chipset.
I think I build one anyway. Proper time sink for upcoming long autumn nights...

That is one of the few Socket 7 chipsets I do not own to test with either I'm afraid..

Retronautics: A digital gallery of my retro computers, hardware and projects.