PS1/2 Emulator WiiStation - Another Fork of WiiSXRX released

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,180
Trophies
2
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,810
Country
Ecuador
I changed from HLE to SD and it works perfectly now.

All other games I tried work on HLE this must be the odd one out, thanks for your help SaulFabre.
A few time ago HLE BIOS on WiiStation was heavily updated so many games work in HLE now, but it's still not perfect and it currently doesn't support memory card handling.

Actual PS1 BIOS put on SD or USB is still preferred for maximum compatibility, including the games which use Memory Cards.
 

keanu_yves

Member
Newcomer
Joined
Feb 9, 2020
Messages
11
Trophies
0
Age
35
XP
74
Country
Brazil
Can i ask you, that did you save the memcard saves of each game as a 128 kB .mcd file an how did you renamed them? Could you post screenshots?
Hello, find out how to do it. Convert the RAW saves to .mcr and then insert the .mcr saves into the save created by the emulator using Duckstation's memory card tool.
 

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,180
Trophies
2
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,810
Country
Ecuador
New build of WiiStation until git https://github.com/xjsxjs197/WiiSXRX_2022/commit/98b11e88d1fbf690d6b4e7adba4ca657e89ec6a7

What's new:
  • Add Gaussian SPU Interpolation as an option in Audio settings, at expense of removing Volume control. The Simple interpolation is kept as an option as well.
  • gpulib: (maybe) rework buffering to reduce flickering (notaz)
  • spu: more status bits (notaz) - Fixes Audio CD sampling in MTV Music Generator/Music 2000.
  • spu: don't leave garbage in capture buffers (notaz)
  • add HID controller handling based from Nintendont.
  • use frame limit logic/code from P.E.Op.S. Soft GPU plugin on the DFXVideo SoftGPU.

@GustavoReis could you try to see if you can use HID controllers now (ex. PS3 controller)?

@Disorarara can you see if in 2D games the new video plugin changes have improved or make a workaround for those micro-stutters?

@Zorg07 could you test this new build with CTR: Crash Team Racing and some others that had speed issues?

@_47iscool , @Disorarara , @MeXen , @steval_beaning could you try the new Gaussian audio interpolation implemented here?

Thanks!
 

Attachments

  • WiiStation_main_git_98b11e88_18042024.zip
    1.2 MB · Views: 3

MeXen

Well-Known Member
Member
Joined
Sep 6, 2022
Messages
286
Trophies
0
Age
38
Location
WutzerLund
XP
724
Country
Mexico
New build of WiiStation until git https://github.com/xjsxjs197/WiiSXRX_2022/commit/98b11e88d1fbf690d6b4e7adba4ca657e89ec6a7

What's new:
  • Add Gaussian SPU Interpolation as an option in Audio settings, at expense of removing Volume control. The Simple interpolation is kept as an option as well.
  • gpulib: (maybe) rework buffering to reduce flickering (notaz)
  • spu: more status bits (notaz) - Fixes Audio CD sampling in MTV Music Generator/Music 2000.
  • spu: don't leave garbage in capture buffers (notaz)
  • add HID controller handling based from Nintendont.
  • use frame limit logic/code from P.E.Op.S. Soft GPU plugin on the DFXVideo SoftGPU.

@GustavoReis could you try to see if you can use HID controllers now (ex. PS3 controller)?

@Disorarara can you see if in 2D games the new video plugin changes have improved or make a workaround for those micro-stutters?

@Zorg07 could you test this new build with CTR: Crash Team Racing and some others that had speed issues?

@_47iscool , @Disorarara , @MeXen , @steval_beaning could you try the new Gaussian audio interpolation implemented here?

Thanks!
So far the new sound interpolation sounds great, SOTN no longer sounds scratchy, thanks for this magnificent update.
Post automatically merged:

On the negative side of things, sadly playback is stuttery in framerate.
 
Last edited by MeXen,

spielvan

Well-Known Member
Newcomer
Joined
Oct 10, 2016
Messages
84
Trophies
0
Age
45
XP
917
Country
Brazil
New build of WiiStation until git https://github.com/xjsxjs197/WiiSXRX_2022/commit/98b11e88d1fbf690d6b4e7adba4ca657e89ec6a7

What's new:
  • Add Gaussian SPU Interpolation as an option in Audio settings, at expense of removing Volume control. The Simple interpolation is kept as an option as well.
  • gpulib: (maybe) rework buffering to reduce flickering (notaz)
  • spu: more status bits (notaz) - Fixes Audio CD sampling in MTV Music Generator/Music 2000.
  • spu: don't leave garbage in capture buffers (notaz)
  • add HID controller handling based from Nintendont.
  • use frame limit logic/code from P.E.Op.S. Soft GPU plugin on the DFXVideo SoftGPU.

@GustavoReis could you try to see if you can use HID controllers now (ex. PS3 controller)?

@Disorarara can you see if in 2D games the new video plugin changes have improved or make a workaround for those micro-stutters?

@Zorg07 could you test this new build with CTR: Crash Team Racing and some others that had speed issues?

@_47iscool , @Disorarara , @MeXen , @steval_beaning could you try the new Gaussian audio interpolation implemented here?

Thanks!

In which folder does the hid ini file go?
 

Ouaz

Well-Known Member
Member
Joined
Jan 5, 2023
Messages
136
Trophies
0
Age
42
XP
275
Country
France
Does it work if the PS3 controller is plugged in port 1 ? (as port 0 - the bottom one - is used by the USB device with Wiistation and games on it - I don't use the SD card slot).

My DS3 is detected by HIDTest as VID: 054C PID: 0268 (in port 1, HIDTest being launched from usb device on port 0), input buttons work, so I put 054C_0268.ini in wiisxrx/controllers folder.

I start Wiistation with the DS3 plugged in port 1 (using a Classic Controller), go to input>configure input, and set it to manual > HID. But the DS3 does not respond.

Do I miss something?
 
Last edited by Ouaz,

Disorarara

Well-Known Member
Member
Joined
Sep 12, 2012
Messages
597
Trophies
1
Age
29
XP
1,174
Country
New build of WiiStation until git https://github.com/xjsxjs197/WiiSXRX_2022/commit/98b11e88d1fbf690d6b4e7adba4ca657e89ec6a7

What's new:
  • Add Gaussian SPU Interpolation as an option in Audio settings, at expense of removing Volume control. The Simple interpolation is kept as an option as well.
  • gpulib: (maybe) rework buffering to reduce flickering (notaz)
  • spu: more status bits (notaz) - Fixes Audio CD sampling in MTV Music Generator/Music 2000.
  • spu: don't leave garbage in capture buffers (notaz)
  • add HID controller handling based from Nintendont.
  • use frame limit logic/code from P.E.Op.S. Soft GPU plugin on the DFXVideo SoftGPU.

@GustavoReis could you try to see if you can use HID controllers now (ex. PS3 controller)?

@Disorarara can you see if in 2D games the new video plugin changes have improved or make a workaround for those micro-stutters?

@Zorg07 could you test this new build with CTR: Crash Team Racing and some others that had speed issues?

@_47iscool , @Disorarara , @MeXen , @steval_beaning could you try the new Gaussian audio interpolation implemented here?

Thanks!

This change seems to fix the 60fps 2D games, 30hz strobing effects now appear properly! And the gaussian sound interpolation works well for fixing the scratchy noise in games like in Bakumatsu Roman. Great release!

It seems the only thing that's not exactly working now is the "Force NTSC" being offset vertically still.

On further playing of 3D 60fps games, it seems like there's still some jittering although due to these games not having any easily noticeable strobing effects it's hard to tell, though the FPS counter does reflect these moments. Also it might just be me but it seems like it's slightly slower than older releases? It seems to be on average 3 or 4 FPS slower.

Also just out of curiosity, why does every latin script language use a different font?

Further edit: It seems like PAL games are off center period, even without "Force NTSC" enabled with this release.
 
Last edited by Disorarara,

DDinghoya

Well-Known Member
Member
Joined
Jun 2, 2016
Messages
130
Trophies
0
Age
45
XP
1,912
Country
Korea, South
For Point Blank 3 of PS1.

Has anyone succeeded in recognizing GunCon without any problems?

When checking the controller in the options menu in game, It is confirmed that the button is pressed alternately between the GunCon and the pad. And then If I go into the Wiistation menu screen once and save it, only the GunCon will be selected and it will operate normally.

Also, despite the GunCon settings, individual saves are possible, but the settings are not automatically loaded when entering the game again.

I would like to share this issue and solve it. :)
 

Ouaz

Well-Known Member
Member
Joined
Jan 5, 2023
Messages
136
Trophies
0
Age
42
XP
275
Country
France
Hid controller seems to only work for SD
That's what I thought too, but the code checks USB too:

C++:
    snprintf(file_sd, sizeof(file_sd), "sd:/wiisxrx/controllers/%04X_%04X.ini", DeviceVID, DevicePID);
    snprintf(file_usb, sizeof(file_usb), "usb:/wiisxrx/controllers/%04X_%04X.ini", DeviceVID, DevicePID);

So it means the HID controller can be plugged in port 1 (as port 0 is used by the usb device). I think ?

There's also this, i think it's the custom mapping of the HID controller though (I don't have the controlH.cfg created on my USB device - maybe it is created only if the default mapping is modified).

C++:
    sprintf(settingPathBuf, "%s:/wiisxrx/controlH.cfg", usbSd);
    f = fopen(settingPathBuf, "rb" );  //attempt to open file
    if(f) {
        load_configurations(f, &controller_HidGC);            //read in HID controller mappings
        fclose(f);

C++:
f = fopen( "usb:/wiisxrx/controlH.cfg", "wb" );  //attempt to open file
        if(f) {
            save_configurations(f, &controller_HidGC);            //write out HID controller mappings
Post automatically merged:

Silly me (maybe).

I started Wiistation with the Classic Controller plugged in the wiimote.
Maybe that's what prevents to detect the HID controller.

I'll test that tonight. Stay tuned.
 
Last edited by Ouaz,

Qaztab

Well-Known Member
Newcomer
Joined
Aug 13, 2022
Messages
90
Trophies
0
Age
52
Location
Pennsylvania
XP
305
Country
United States
I tested some games with "simple" and "Gaussian" sound and this new option was very good.
Hid controller seems to only work for SD from what was tested by @spielvan
I'm out of the loop on this a bit. I don't think I'm hearing a difference in things I've tested so far, or I don't know what I'm listening for.

Which one should be better? And which is better for emulation speed?
 
  • Like
Reactions: SaulFabre

SaulFabre

I like Yoshis and the Wii/Wii U scene.
Member
Joined
Feb 6, 2019
Messages
3,180
Trophies
2
Age
25
Location
Ecuador
Website
saulfabreg-wiivc.blogspot.com
XP
7,810
Country
Ecuador
I'm out of the loop on this a bit. I don't think I'm hearing a difference in things I've tested so far, or I don't know what I'm listening for.

Which one should be better? And which is better for emulation speed?
the scratchy sound can be most heard in Castlevania: SOTN.
With Gaussian, it sounds more acceptable.

For most games for speed, i recommend Simple interpolation.
But if the game has scratchy sound, try using Gaussian sound interpolation instead.

Also weirdly some games (such the Japanese 1994 version of Motor Toon Grand Prix) are slow in Lightrec but not on PPC Dynarec (and viceversa), so it's better to test both Lightrec and PPC Dynarec for see if speed changes in one core than other.
 

Ouaz

Well-Known Member
Member
Joined
Jan 5, 2023
Messages
136
Trophies
0
Age
42
XP
275
Country
France
I started Wiistation with the Classic Controller plugged in the wiimote.
Maybe that's what prevents to detect the HID controller.
I tested... and it doesn't work.
The only difference is the HID controller icon on the main page, but it stays greyed out. :(

I also noticed that when the DS3 is plugged in port 1 at the back of the Wii (port 0 being used by the usb device), any modified settings are not saved to the USB device, when I click on "Save settings to USB". It saves correctly if there's nothing plugged in port 1.

Maybe when the 2 usb ports are used, Wiistation doesn't know on which one reading/saving files ?
Post automatically merged:

On further playing of 3D 60fps games, it seems like there's still some jittering although due to these games not having any easily noticeable strobing effects it's hard to tell, though the FPS counter does reflect these moments. Also it might just be me but it seems like it's slightly slower than older releases? It seems to be on average 3 or 4 FPS slower.

I don't know what to think about framerate with this release.

Framerate seems more stable, based on the FPS counter (constant ~ 59.80), no more spikes at 63-64 fps, and drops to 57 occurs for less than half a second.

But on the other hand, the stuttering seems worse, although it is less frequent than with the previous build.

On R4 (240p, no dither, frame skip off, simple sound interpolation), it's fast and smooth (like it was at best a few builds ago), but roughly 3-4 times per race, there's a big hiccup during ~3 seconds (like there's some frames skipped, although the counters is at 59.80).

On SOTN (same setting), there's a huge shimmering effect on some textures, and also the same hiccup from time to time (like some frames are skipped too).

On the other hand, I'm always blown away by the image quality, each time I launch Wiistation ^^

Edit: I use CHDs now, I hope this is not the culprit, because I converted all my games 😓 I'll test again R4 with bin/cue to compare (although the stuttering was also happening in R4 with bin/cue in the previous build, more often, but less severe).
 
Last edited by Ouaz,

rexus_pl

Well-Known Member
Member
Joined
Mar 26, 2022
Messages
109
Trophies
0
Age
22
Location
Gniezdzewo
XP
882
Country
Poland
I've tried manually creating separate config files containing only options that are diffrent from global settings. Goal is simple: as there will be some new options to set (sound interpolation right now, I hope some day it'll be image scalling :) ), or some option has to be globally changed, old individual settings will still work (usually there are only few things to change: screen mode, controller type etc.). It worked ALMOST fine: the only problem is that settings that are not set by individual file don't go back to their global value, but stay unchanged from last loaded game.

As I understand the code, fixing this should be very simple, but I don't have envoriment to compile things by myself. So @SaulFabre - could you try changing this (WiiSXRX_2022/Gamecube/GamecubeMain.cpp - line 657):
Code:
    // First, we load separately game settings.
    // Load separately game settings from USB device
    if (!loadSeparatelySettingItem("usb:/wiisxrx/settings/", CdromId, true))
    {
        // If there is no separate setting for USB
        // Load separately game settings from SD card
        if (!loadSeparatelySettingItem("sd:/wiisxrx/settings/", CdromId, false))
        {
            // If there is no separate setting
            // we load the common (global) settings.
            // Load common (global) settings from USB device
            if (!loadSeparatelySettingItem("usb:/wiisxrx/", "settingsRX2022", true))
            {
                // If there is no common (global) settings for USB
                // Load common (global) settings from SD card
                loadSeparatelySettingItem("sd:/wiisxrx/", "settingsRX2022", false);
            }
        }
    }
... to this:
Code:
     // Load global settings whatever is happening - to revert back to global values
     if (!loadSeparatelySettingItem("usb:/wiisxrx/", "settingsRX2022", true))
            {
                // If there is no common (global) settings for USB
                // Load common (global) settings from SD card
                loadSeparatelySettingItem("sd:/wiisxrx/", "settingsRX2022", false);
            }
    // Then try to load separate setting - first from USB
    if (!loadSeparatelySettingItem("usb:/wiisxrx/settings/", CdromId, true))
    {
        // If there is no separate setting for USB
        // Load separately game settings from SD card
        loadSeparatelySettingItem("sd:/wiisxrx/settings/", CdromId, false);
    }

Correct me if I'm wrong.

This simple change should do the trick for everyone who create config files manually (or maybe: edit them and remove everything that is not nessesery). Creating such files will be more tricky (and all individually set vaule should be visibile on settings page - maybe marked by red or something).
 

takashiii

Member
Newcomer
Joined
Apr 23, 2024
Messages
7
Trophies
0
XP
22
Country
Morocco
Hello, Thanks for this wonderful update, I've tried a few controllers and apparently it works just great, what I've tried so far:

Generic PlayStation 3 Controller (GameStop)
PlayStation 3 Controller 054c:0268
PlayStation 4 Controller 054c:05c4
PlayStation 2 Controller
PS2 Arcade Stick
 

Ouaz

Well-Known Member
Member
Joined
Jan 5, 2023
Messages
136
Trophies
0
Age
42
XP
275
Country
France
Hello, Thanks for this wonderful update, I've tried a few controllers and apparently it works just great, what I've tried so far:

Generic PlayStation 3 Controller (GameStop)
PlayStation 3 Controller 054c:0268
PlayStation 4 Controller 054c:05c4
PlayStation 2 Controller
PS2 Arcade Stick
You launch Wiistation from SD or USB ?
 
  • Like
Reactions: SaulFabre

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    SylverReZ @ SylverReZ: @salazarcosplay, Good.