Graphical glitch in VARA + RMS Express (Winlink)?

Questions about Wine on Linux
Locked
WheezyE
Level 1
Level 1
Posts: 6
Joined: Sat Dec 19, 2020 9:53 pm

Graphical glitch in VARA + RMS Express (Winlink)?

Post by WheezyE »

Hello,

I was just trying to get Winlink/VARA running and noticed that when VARA is opened through RMS Express, its window appears black (it should show some gauges and a waterfall display). This isn't the case when VARA is opened through RMS Express on a Windows PC. VARA displays correctly on wine if VARA is opened by itself.

I've been looking for errors in the terminal that might give me a hint as to what's going on, but can't seem to locate anything. I tried loading different ole DLL's with winetricks too (due to the OleLoadPictureEx errors), but am wondering if ole is a common error in wine and just a red herring here.

Has anybody else gotten VARA to work, or does anybody have any debugging advice on this one? I've been reading through the wine debugging page a bit, but kind of new to wine debugging.

I'm running wine-staging 6.0 (but this also happens of wine-devel 5.21) with Gecko installed.

Here's some terminal output from asking RMS Express to open VARA (VARA's graphics are all black):

Code: Select all

user@debian:~/Downloads$ wine ~/.wine/drive_c/RMS\ Express/RMS\ Express.exe 
02b4:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
02b4:fixme:path:parse_url failed to parse L"Microsoft.VisualBasic"
02b4:fixme:path:parse_url failed to parse L"System.Windows.Forms"
02b4:fixme:path:parse_url failed to parse L"System"
02b4:fixme:path:parse_url failed to parse L"System.Drawing"
02b4:fixme:path:parse_url failed to parse L"System.Runtime.Remoting"
02b4:fixme:path:parse_url failed to parse L"System.Configuration"
02b4:fixme:path:parse_url failed to parse L"System.Xml"
02b4:err:winsock:WSAIoctl -> ?('', 12, 18) request failed with status 0x2733
02b4:err:winsock:WSAIoctl -> ?('', 12, 18) request failed with status 0x2733
02b4:fixme:path:parse_url failed to parse L"WinlinkInterop"
02b4:fixme:path:parse_url failed to parse L"SyslogLib"
02b4:fixme:gdiplus:GdipGetFamilyName No support for handling of multiple languages!
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
02e0:fixme:path:parse_url failed to parse L"WinlinkServiceClasses"
02e8:fixme:ras:RasEnumConnectionsW (001CA170,0570F098,0570F09C),stub!
02e8:fixme:ras:RasEnumConnectionsW RAS support is not implemented! Configure program to use LAN connection/winsock instead!
02e8:err:winsock:WSAIoctl -> ?('', 12, 18) request failed with status 0x2733
02e8:err:winsock:WSAIoctl -> ?('', 12, 18) request failed with status 0x2733
02e8:fixme:ras:RasConnectionNotificationW (FFFFFFFF,00000318,0x00000003),stub!
02b4:fixme:path:parse_url failed to parse L"System.Core"
02e8:err:winsock:WSAIoctl -> ?('', 12, 18) request failed with status 0x2733
02e8:err:winsock:WSAIoctl -> ?('', 12, 18) request failed with status 0x2733
02e8:fixme:crypt:CertAddCertificateLinkToStore (001D2568, 001D2474, 00000004, 00000000): semi-stub
02e0:fixme:path:parse_url failed to parse L"System.ServiceModel.Web"
02e0:fixme:path:parse_url failed to parse L"System.Runtime.Serialization"
02e0:fixme:path:parse_url failed to parse L"SMDiagnostics"
02e0:fixme:path:parse_url failed to parse L"System.ServiceModel"
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
02b4:fixme:gdiplus:GdipCreateHalftonePalette stub
02b4:fixme:path:parse_url failed to parse L"nsoftware.IPWorks"
02fc:fixme:path:parse_url failed to parse L"nsoftware.IPWorks"
02b4:fixme:path:parse_url failed to parse L"nsoftware.IPWorks.System"
02b4:fixme:path:parse_url failed to parse L"System.Web"
02fc:fixme:path:parse_url failed to parse L"System.Web"
02fc:fixme:server:invoke_system_apc syscall frame changed in APC function, frame (nil), saved_frame 0x829e758.
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
02b4:fixme:path:parse_url failed to parse L"RMS Express.resources"
0320:fixme:olepicture:OleLoadPictureEx (01141204,7366,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,006FFB10), partially implemented.
0320:fixme:heap:RtlCompactHeap (004F0000, 0x0) stub
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9E578), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9E9F0), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9EA90), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9EB28), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9EBC8), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9EC68), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9EE88), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9EF28), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9EFC8), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F130), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F1D0), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F270), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F310), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F478), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F510), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F5A8), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F640), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F7A0), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F840), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9F8D8), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9FA38), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9FC50), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9FCF0), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9FD90), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9FE28), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9FEC8), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,08A9FF68), partially implemented.
0320:fixme:wincodecs:jpeg_decoder_get_metadata_blocks stub
0320:fixme:olepicture:OleLoadPictureEx (01141204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,006FFAE0), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,006FFAE0), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,006FFAE0), partially implemented.
0320:fixme:olepicture:OleLoadPictureEx (01141204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,006FFAE0), partially implemented.
0320:fixme:olepicture:OLEPictureImpl_SaveAsFile (0174E908)->(08AE1AF8,0,00000000): semi-stub
0320:fixme:advapi:RegisterEventSourceW ((null),L"PDH"): stub
0320:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0320:fixme:winspool:PerfOpen (null): stub
0320:fixme:winspool:PerfCollect L"Global", 0x6fea48, 0x6fea3c, 0x6fea40: stub
0320:fixme:winspool:PerfClose stub
ALSA lib pcm.c:8424:(snd_pcm_recover) overrun occurred
ALSA lib pcm.c:8424:(snd_pcm_recover) overrun occurred
Here's some terminal output from running VARA on its own (VARA's graphics look fine):

Code: Select all

user@debian:~/Downloads$ wine ~/.wine/drive_c/VARA/VARA.exe
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,7366,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,0031FB10), partially implemented.
01c4:fixme:heap:RtlCompactHeap (00110000, 0x0) stub
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889EEB0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F328), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F3C8), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F460), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F500), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F5A0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F7C0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F860), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889F900), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FA68), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FB08), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FBA8), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FC48), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FDB0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FE48), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FEE0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,0889FF78), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A00D8), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A0178), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A0210), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A0370), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A0588), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A0628), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A06C8), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A0760), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A0800), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=20,y=20,f=0,088A08A0), partially implemented.
01c4:fixme:wincodecs:jpeg_decoder_get_metadata_blocks stub
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,0031FAE0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,0031FAE0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,0031FAE0), partially implemented.
01c4:fixme:olepicture:OleLoadPictureEx (00F41204,33362,1,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=0,y=0,f=0,0031FAE0), partially implemented.
01c4:fixme:olepicture:OLEPictureImpl_SaveAsFile (0154F240)->(088E2430,0,00000000): semi-stub
01c4:fixme:advapi:RegisterEventSourceW ((null),L"PDH"): stub
01c4:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
01c4:fixme:winspool:PerfOpen (null): stub
01c4:fixme:winspool:PerfCollect L"Global", 0x31ea48, 0x31ea3c, 0x31ea40: stub
01c4:fixme:winspool:PerfClose stub
ALSA lib pcm.c:8424:(snd_pcm_recover) overrun occurred
ALSA lib pcm.c:8424:(snd_pcm_recover) overrun occurred
ALSA lib pcm.c:8424:(snd_pcm_recover) underrun occurred
ALSA lib pcm.c:8424:(snd_pcm_recover) overrun occurred
ALSA lib pcm.c:8424:(snd_pcm_recover) overrun occurred
ALSA lib pcm.c:8424:(snd_pcm_recover) overrun occurred

To reproduce this behavior, you can install RMS Express & VARA with these commands:

Code: Select all

#### Configure our wineprefix
winetricks -q corefonts dotnet35sp1 vb6run win7 sound=alsa # for RMS Express
winetricks -q vcrun2015 pdh # for VARA (run pdh here just for the winecfg dll override)
 
# Install an older pdh.dll (the pdh.dll from "winetricks pdh" is too new for VARA)
sudo apt-get install zip -y
cd ~/Downloads && mkdir pdhNT40 && cd pdhNT40
wget http://download.microsoft.com/download/winntsrv40/update/5.0.2195.2668/nt4/en-us/nt4pdhdll.exe
unzip -o nt4pdhdll.exe
cp pdh.dll ~/.wine/drive_c/windows/system32
 

####  Install Winlink and VARA
sudo apt-get install p7zip-full -y
sudo apt-get install megatools -y
 
# Download/extract/install Winlink Express (formerly RMS Express) [https://downloads.winlink.org/User%20Programs/]
cd ~/Downloads
wget -r -l1 -np -nd -A "Winlink_Express_install_*.zip" https://downloads.winlink.org/User%20Programs # Download Winlink no matter its version number
7z x Winlink_Express_install_*.zip -o"WinlinkExpressInstaller" -y
wine ~/Downloads/WinlinkExpressInstaller/Winlink_Express_install.exe /SILENT
 
# Download/extract/install VARA HF (or newer) [https://rosmodem.wordpress.com/]
cd ~/Downloads
VARALINK=$(curl -s https://rosmodem.wordpress.com/ | grep -oP '(?<=<a href=").*?(?=" target="_blank" rel="noopener noreferrer">VARA HF v)') # Find the mega.nz link from the rosmodem website no matter its version, then store it as a variable
megadl ${VARALINK}
7z x VARA*.zip -o"VARAInstaller" -y
wine ~/Downloads/VARAInstaller/VARA\ setup*.exe /SILENT
 
 
####  Configure Winlink and VARA
# In winecfg, go to the Audio tab to set up your default in/out soundcards
wine winecfg
 
# In VARA, set up your soundcard input and output (go to Settings ... Soundcard)
wine ~/.wine/drive_c/VARA/VARA.exe
 
# In RMS Express, enter your callsign, password, gridsquare, and soundcard in/out, then close the program and re-run
wine ~/.wine/drive_c/RMS\ Express/RMS\ Express.exe
WheezyE
Level 1
Level 1
Posts: 6
Joined: Sat Dec 19, 2020 9:53 pm

Re: Graphical glitch in VARA + RMS Express (Winlink)?

Post by WheezyE »

Turns out all I had to do was this:

Type this in the console

Code: Select all

wine winecfg
Go to the "Graphics" tab
Uncheck "Allow the window manager to control the windows"
Click "Apply"

lol
Locked