VCCE / VCC

Tandy Color Computer 3 Emulator
GNU General Public License v3.0
64 stars 21 forks source link

Unable to launch v2.1.0.8 using Windows command line or through .BIN file association #141

Closed pfiscarelli closed 8 months ago

pfiscarelli commented 10 months ago

Since upgrading to VCC 2.1.0.8, I'm unable to launch .BIN files with VCC through the command line. Also affected is Windows file association with .BIN files - in previous versions of VCC, .BIN files associated with VCC could be opened directly in VCC by double-clicking the file. This seems to be broken in 2.1.0.8.

I've reverted back to 2.1.0.7 and both launching .BIN files with VCC through the command line and double-clicking .BIN files, opens up the VCC application.

ejaquay commented 10 months ago

For command line I suspect you are having a path issue. First try fully qualified vcc executable path from command line, for example: "\Program Files (x86)\VCC 2.1.0.8\vcc" vcc\Binfiles\bin\sig.bin (works for me} If that works you know your Vcc can launch a binary from the command line.

Manually changing file associations for Vcc versions can be difficult in windows. You have to remove the old associations first; this has burnt me many times. In regedit goto Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\ find .bin and delete the open with and user choice keys. You only have to remove keys that reference VCC. After the keys are removed you can then associate the 2.1.0.8 version of VCC

pfiscarelli commented 10 months ago

It is not a path issue and doing the .BIN file reassociation was one of the first things that I tried. As I mentioned in my original post, replacing the 2.1.0.8 version of the Vcc.exe, with the previous 2.1.0.7 Vcc.exe, completely removes the issue,

After further testing, this appears to be an 'intermittent' issue. I've tested both the .BIN double-click method and command line method of opening .BIN files - it is successful maybe 10% of the time, while 90% of the time VCC 2.1.0.8 will not launch.

This may be a local issue, but the 2.1.0.8 version of VCC is the first time I've encountered it on this system. It has worked flawlessly on 2.1.0.7, as well as previous releases of VCC.

My current system is Windows 11 22H2. I will try to test with other systems/versions, to rule out a local issue with this system.

ejaquay commented 10 months ago

Please tell us what .BIN files you are trying and any vcc errors in event viewer after vcc fails to launch so we can see if we can replicate.

pfiscarelli commented 10 months ago

I tested with a different box running Windows 10 version 1607 and have verified the same behavior as my Windows 11 box.

The .BIN file is incidental, with the issue being present in the several dozen .BIN files that I've tried. However, if you want a specific example, I just tested with DAGGORAT.BIN located on DAGGORAT.DSK image found on the Color Computer Archive here:

https://colorcomputerarchive.com/repo/Disks/Games/Dungeons%20of%20Daggorath%20%28Disk%20Patch%29%20%28Tandy%29.zip

Upon further testing, I've used Process Monitor from Sysinternals to verify that each time I attempt to open VCC 2.1.0.8 by double-clicking a .BIN file or by the command-line method of opening a .BIN file, the Vcc.exe process does start but closes quickly without displaying an application window.

In looking through the application logs in event viewer as you suggested, I am seeing the application crash errors each time the application fails to load.

Under Event ID: 1001 - the app crash errors report:

Fault bucket 1832871845682117734, type 1 Event Name: APPCRASH Response: Not available Cab Id: 0

Problem signature: P1: Vcc.exe P2: 2.1.0.8 P3: 64c0d047 P4: Vcc.exe P5: 2.1.0.8 P6: 64c0d047 P7: c0000005 P8: 00019f40 P9: P10:

There are also separate entries with Event ID: 1000 with the following information:

Faulting application name: Vcc.exe, version: 2.1.0.8, time stamp: 0x64c0d047 Faulting module name: ntdll.dll, version: 10.0.22621.2134, time stamp: 0xcfd48485 Exception code: 0xc0000005 Fault offset: 0x00043d65 Faulting process id: 0x0x8910 Faulting application start time: 0x0x1D9D85CC2CF3BE6 Faulting application path: C:\Users\Paul\Desktop\VCC\Vcc.exe Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll Report Id: 017d6366-cf7b-4748-90f1-ef431ba71618 Faulting package full name: Faulting package-relative application ID:

These event viewer log entries are also present on the Windows 10 box I tested as well.

ejaquay commented 10 months ago

I found DAGORTATH.BAS on .DSKs you referenced but no DAGORATH.BIN file.

On Sun, Aug 27, 2023 at 1:02 AM Paul Fiscarelli @.***> wrote:

I tested with a different box running Windows 10 version 1607 and have verified the same behavior as my Windows 11 box.

The .BIN file is incidental, with the issue being present in the several dozen .BIN files that I've tried. However, if you want a specific example, I just tested with DAGGORAT.BIN located on DAGGORAT.DSK image found on the Color Computer Archive here:

https://colorcomputerarchive.com/repo/Disks/Games/Dungeons%20of%20Daggorath%20%28Disk%20Patch%29%20%28Tandy%29.zip

Upon further testing, I've used Process Monitor from Sysinternals to verify that each time I attempt to open VCC 2.1.0.8 by double-clicking a .BIN file or by the command-line method of opening a .BIN file, the Vcc.exe process does start but closes quickly without displaying an application window.

In looking through the application logs in event viewer as you suggested, I am seeing the application crash errors each time the application fails to load.

Under Event ID: 1001 - the app crash errors report:

Fault bucket 1832871845682117734, type 1 Event Name: APPCRASH Response: Not available Cab Id: 0

Problem signature: P1: Vcc.exe P2: 2.1.0.8 P3: 64c0d047 P4: Vcc.exe P5: 2.1.0.8 P6: 64c0d047 P7: c0000005 P8: 00019f40 P9: P10:

There are also separate entries with Event ID: 1000 with the following information:

Faulting application name: Vcc.exe, version: 2.1.0.8, time stamp: 0x64c0d047 Faulting module name: ntdll.dll, version: 10.0.22621.2134, time stamp: 0xcfd48485 Exception code: 0xc0000005 Fault offset: 0x00043d65 Faulting process id: 0x0x8910 Faulting application start time: 0x0x1D9D85CC2CF3BE6 Faulting application path: C:\Users\Paul\Desktop\VCC\Vcc.exe Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll Report Id: 017d6366-cf7b-4748-90f1-ef431ba71618 Faulting package full name: Faulting package-relative application ID:

These event viewer log entries are also present on the Windows 10 box I tested as well.

— Reply to this email directly, view it on GitHub https://github.com/VCCE/VCC/issues/141#issuecomment-1694570754, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFIUKNCYDC574RVHFRHHL2TXXLIEPANCNFSM6AAAAAA35YL2M4 . You are receiving this because you commented.Message ID: @.***>

ejaquay commented 10 months ago

I am now able to reproduce this. Looking into it.

pfiscarelli commented 10 months ago

I've pulled the latest source and was able to build successfully with Visual Studio 2022 using MSVC v140 - VS 2015 build tools. Looking into the issue here as well.

ejaquay commented 10 months ago

There is a patched version that I think fixes this. Appreciate if you try it out and let me know how it does. https://github.com/ejaquay/VCC/releases/download/v2.1.0.8-beta-20230612/latestbuild.zip

pfiscarelli commented 10 months ago

So far, so good Ed - thank you!

ejaquay commented 10 months ago

My previous fix made VCC without a command line unstable. A patch for that has been merged, there is a build here: https://github.com/ejaquay/VCC/files/12466820/vcc20230829.zip

ejaquay commented 8 months ago

This should be fixed in V2.1.8.1