Jump to content
IGNORED

Altirra 4.00 released


phaeron

Recommended Posts

I've got tape with program and audio track lasting 27:24. Audio track is cat-off precisely after 20 mins but whole program is loaded correctly. It doesn't matter it's .wav or .flac.

Altirra x64 4.10test20 on Ubuntu 22.04 with wine 6.0.3.

Edited by mono
version of ubuntu
  • Like 1
Link to comment
Share on other sites

https://www.virtualdub.org/beta/Altirra-4.10-test21.zip
https://www.virtualdub.org/beta/Altirra-4.10-test21-src.7z

  • Fixed SD card multiple block write operations.
  • Fixed messed up buttons in Tape Control dialog with new dark mode checkboxes.
  • Fixed cassette audio dropping out after running continuously for >20 mins.
  • Fixed OS C: workaround option affecting turbo tape reads.
  • Added emulation of serial clock phase and reset.
  • SIDE 3 SD power toggle now also resets SD card state.
  • Added SimCovox emulation support.
  • Like 9
  • Thanks 2
Link to comment
Share on other sites

Hey there, firstly, I apologise if anyone brought this issue before, or if that's a problem with my own setup of which I may not be aware, but it's been bothering me a little bit lately.

 

Basically, each time I attempt to run Altirra, I have at least 1 out of 2 possible outcome:

- The emulator boots up like normal, and would work perfectly fine for that instance

- The emulator boots up to a black screen, the program becomes unresponsive, and occasionally, would display an error message like the one from the screenshot below 

 

image.png.232901cfed3941acb665f51293719996.png

 

Now I can't really explain why it happens, but it's seemingly random, sometime I need to really persist to even get the program to run, but as soon as it does work, there won't be any problem whatsoever.

That was more or less why I've never mentioned this problem despite getting these symptoms for at least a good amount of version 4.10-test releases.

So due to this, I have no idea if that is something that slipped into Altirra that made WINE not like it as much as it used to be, or if that was something to blame on me, haha 😅

 

Again, it's really not a big deal, the program will ultimately work as intended after a couple tries, but that's a bit annoying since I need to run the task manager to kill the process manually.

Is there anyone who experienced something similar?

Link to comment
Share on other sites

3 hours ago, VinsCool said:

So due to this, I have no idea if that is something that slipped into Altirra that made WINE not like it as much as it used to be, or if that was something to blame on me, haha 😅

Not sure which version you're using but I don't recall ever seeing this under Wine. I don't know if running in portable mode could make a difference ?

  • Like 1
Link to comment
Share on other sites

21 hours ago, rensoup said:

Not sure which version you're using but I don't recall ever seeing this under Wine.

Yeah I don't recall when this began to happen exactly, but it was for at least a couple of revisions I have been using, which were occasionally updated when I saw new posts by Phaeron

I also skipped a few versions so I have no idea if this was from a change related to fix some things on Windows, or just my setup that is wrong. 

 

21 hours ago, rensoup said:

I don't know if running in portable mode could make a difference ?

Yeah that did not make any difference, it happens randomly regardless of the mode I chose to use.

I've also reset the configuration, which did not make a difference either.

 

I just noticed something interesting a moment ago, while playing around.

The issue seems to only happen on the 64-bit version, I tried running the 32-bit version and that did not seem to get stuck, regardless of the times I loaded the .exe 

 

And to make sure it was not a fluke, I tried to run the 64-bit .exe, and sure enough, it got stuck on the first try, the second try also got stuck, and on the 3rd attempt an error message also popped up: 

image.png.e05de9c256becade2dd13758ea330d10.png

 

Interestingly, the message is identical to the one I posted yesterday.

5th try got stuck, 6th got stuck with a message as well.

It was on the 7th attempt at running the .exe it finally booted up and was functional.

And just like I described, as soon as it actually does boot up, it will work for as long as the program is running.

 

So yeah, no idea what is going on, but this is weird, hahaha! 😅

 

Link to comment
Share on other sites

1 hour ago, VinsCool said:

It was on the 7th attempt at running the .exe it finally booted up and was functional.

And just like I described, as soon as it actually does boot up, it will work for as long as the program is running.

I think this must be why our customers click on something that doesn't work 20 times, hoping that that final click will be the magic fix!  I keep threatening to add "kill code" so that if the same user causes the same error 3 times in under say 2 minutes, they get locked out  of our app.

  • Haha 1
Link to comment
Share on other sites

32 minutes ago, Stephen said:

I think this must be why our customers click on something that doesn't work 20 times, hoping that that final click will be the magic fix!  I keep threatening to add "kill code" so that if the same user causes the same error 3 times in under say 2 minutes, they get locked out  of our app.

There is a big difference between something that should happen but fails at random times, and being an idiot, lol

  • Like 1
Link to comment
Share on other sites

2 hours ago, VinsCool said:

It was on the 7th attempt at running the .exe it finally booted up and was functional.

 

58 minutes ago, Stephen said:

I think this must be why our customers click on something that doesn't work 20 times, hoping that that final click will be the magic fix!

 

7 and 21 are lucky numbers, that's why! :roll:

 

  • Haha 3
Link to comment
Share on other sites

8 hours ago, VinsCool said:

So yeah, no idea what is going on, but this is weird, hahaha!

@phaeron knows this i'm sure, but the symptom you describe is indicative of Wine randomly mis-ordering threads compared to Windows. This can cause initialization to be incomplete and lead to the access violation which is your error. In the times it works, thread order was randomly right that time, and since everything is properly initialized its off and running normally.

  • Like 1
Link to comment
Share on other sites

12 hours ago, gnusto said:

@phaeron knows this i'm sure, but the symptom you describe is indicative of Wine randomly mis-ordering threads compared to Windows. This can cause initialization to be incomplete and lead to the access violation which is your error. In the times it works, thread order was randomly right that time, and since everything is properly initialized its off and running normally.

That makes sense!

I've suspected something like this was related, but couldn't really know how memory and stuff was being scrambled upon initializing 

Link to comment
Share on other sites

Thread order? What in Pete's name is that? The whole point of threads is that there is no order. You can never assume anything about in which order threads are executed in concurrent programming.

 

Edit: So serious question, what do you mean by mis-ordering of threads?

Edited by ivop
  • Like 1
Link to comment
Share on other sites

That could be bug which manifests only in under certain conditions - ie. on windows it works as it's heavily tested there, but as soon as it gets 'elsewhere', the hidden (incorrect) assumption/bug manifests.
Similar to those dreaded 'works in debug/crashes in release'.

  • Like 2
Link to comment
Share on other sites

22 hours ago, VinsCool said:

So yeah, no idea what is going on, but this is weird, hahaha! 😅

It's definitely weird. I was still on 4.01, but I just installed 4.10-test21 and it works like before with WINE on debian stable.

 

$ wine --version
wine-5.0.3 (Debian 5.0.3-3)

$ cat /etc/debian_version 
11.5
 

Edited by ivop
  • Like 1
Link to comment
Share on other sites

Honestly, it is really a non-breaking issue I think I may be the only one experiencing at the moment, so please don't worry too much about it.

Now that I know the 32-bit version of Altirra is immune to the issue, and that things ultimately work fine as soon as I could get past the lockup state, I don't mind it happening often all that much.

It's possibly my setup doing something strange anyway, and that would have absolutely nothing to do with Altirra in this case. 

 

I've been using the emulator quite a lot lately, and when I do, I leave it running for extended periods of time anyway.

Again, barely a problem once the lockup state is avoided! :D 

Link to comment
Share on other sites

Thread ordering should not be an issue, that's what synchronization is for.

 

Problem here is that since you're running on WINE, apparently dbghelp.dll is not available which means that the emulator can't generate a minidump. Try running the 64-bit build with /startuplog, if you can -- it will try to dump a force-decoded stack to the console on a crash.

 

Link to comment
Share on other sites

4 hours ago, ivop said:

Thread order? What in Pete's name is that?

Yes, an over simplification - in a user created thread pool, you should have no expectation of order, just threads available to consume jobs. My point made apparently poorly is that Wine can behave differently from windows and reveal inherent assumptions in code that work every time in Windows but not in Wine. In Altirras case I can see a lot of circumstances where threads are paused waiting on an event or condition, and I am guessing (perhaps wrongly) that one of those conditions is different under Wine.

 

I have dealt with this very problem ("why isn't that initialized, sometimes?") myself in Wine years ago. In my case it was a mistake in static initializer, but only revealed itself under Wine.

  • Thanks 1
Link to comment
Share on other sites

On 10/7/2022 at 8:09 PM, phaeron said:

Thread ordering should not be an issue, that's what synchronization is for.

 

Problem here is that since you're running on WINE, apparently dbghelp.dll is not available which means that the emulator can't generate a minidump. Try running the 64-bit build with /startuplog, if you can -- it will try to dump a force-decoded stack to the console on a crash.

 

Very interesting observation after trying what you suggested: no softlock when I executed Altirra64.exe using that /startuplog method.

 

Spoiler
vinscool@asus-rog ~/Documents/Altirra 4.00-test $ wine '/home/vinscool/Documents/Altirra 4.00-test/Altirra64.exe' /startuplog

007c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
007c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
007c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
007c:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

[ 0.000] Windows 6.1.7601
[ 0.000] Startup logging enabled.
[ 0.001] Initializing OLE.
00d8:fixme:uxtheme:BufferedPaintInit Stub ()
[ 0.002] Initializing themes
[ 0.002] Loading config var overrides
[ 0.003] Loading options
[ 0.004] Loading settings
[ 0.004] Running instance
[ 0.005] Preloading DLLs
[ 0.011] Registering controls
[ 0.012] Initializing frame system
[ 0.012] Initializing commands and accelerators
[ 0.013] Applying options
[ 0.013] Initializing filespec system
[ 0.014] Initializing UI panes
[ 0.018] Initializing logging
[ 0.018] Initializing native UI
[ 0.019] Creating main window
00d8:fixme:win:RegisterTouchWindow (0000000000010066 00000000): stub
00d8:fixme:win:UnregisterTouchWindow (0000000000010066): stub
00d8:fixme:win:SetGestureConfig (0000000000010066 00000000 1 000000000011E430 12): stub
[ 0.032] Restoring main window
0098:fixme:imm:ImeSetActiveContext (0000000000010026, 0): stub
0098:fixme:imm:ImmReleaseContext (0000000000010020, 0000000000010026): stub
00d8:fixme:imm:ImeSetActiveContext (000000000001005C, 1): stub
00d8:fixme:imm:ImmReleaseContext (0000000000010066, 000000000001005C): stub
[ 0.042] Initializing WinSock
[ 0.042] Initializing simulator
[ 0.049] Initializing game controllers
[ 0.062] Initializing firmware menus
[ 0.062] Initializing profile menus
[ 0.063] Initializing video output menu
[ 0.063] Loading menu
[ 0.084] Initializing port menus
[ 0.084] Initializing debugger
[ 0.085] Initializing compatibility system
[ 0.085] Initializing display UI
[ 0.149] Loading profiles
[ 0.150] Loading current profile
[ 0.160] Initializing native audio
[ 0.199] Loading ROMs
[ 0.200] Saving options
[ 0.200] Starting emulation
[ 0.200] Restoring pane layout
00d8:fixme:win:RegisterTouchWindow (00000000000100C8 00000000): stub
00d8:fixme:win:UnregisterTouchWindow (00000000000100C8): stub
00d8:fixme:win:SetGestureConfig (00000000000100C8 00000000 1 000000000011E2D0 12): stub
0144:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFFFFFFFFFA, 000000000341FE10
00d8:fixme:win:RegisterTouchWindow (00000000000100D6 00000000): stub
00d8:fixme:win:RegisterTouchWindow (00000000000100D8 00000000): stub
00d8:fixme:d3d9:D3DPERF_GetStatus (void) : stub
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0
00d8:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
00d8:fixme:win:RegisterTouchWindow (00000000000100CE 00000000): stub
00d8:fixme:win:UnregisterTouchWindow (00000000000100CE): stub
[ 0.481] Initiating cold reset
[ 0.484] Initializing full screen mode
[ 0.485] Running main loop
0148:fixme:d3d:state_linepattern_w Setting line patterns is not supported in OpenGL core contexts.
0148:fixme:d3d_shader:print_glsl_info_log Info log received from GLSL shader #3:
0148:fixme:d3d_shader:print_glsl_info_log     Vertex info
0148:fixme:d3d_shader:print_glsl_info_log     -----------
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[0].zw" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[1]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[2]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[3]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[4]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[5]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[6]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[7]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[8]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[9]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[11]" might be used before being initialized
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0148:fixme:d3d_shader:print_glsl_info_log Info log received from GLSL shader #14:
0148:fixme:d3d_shader:print_glsl_info_log     Vertex info
0148:fixme:d3d_shader:print_glsl_info_log     -----------
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[0].zw" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[1]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[2]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[3]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[4]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[5]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[6]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[7]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[8]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[9]" might be used before being initialized
0148:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[11]" might be used before being initialized
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:sync:SetWaitableTimerEx (000000000000012C, 000000000011ED40, 0, 0000000000000000, 0000000000000000, 0000000000000000, 0) semi-stub
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
00d8:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
[ 1.871] Saving settings
[ 1.895] Exiting fullscreen mode
[ 1.895] Stopping recording
[ 1.895] Shutting down filespec system
[ 1.896] Shutting down compat system
[ 1.896] Shutting down UI
[ 1.897] Shutting down debugger
[ 1.897] Shutting down game controllers
[ 1.897] Shutting down simulator
[ 1.907] Shutting down native UI
[ 1.908] Shutting down WinSock
[ 1.908] Shutting down registry
[ 1.909] Shutting down UI
00d8:fixme:uxtheme:BufferedPaintUnInit Stub ()
[ 1.909] Shutting down OLE
[ 1.909] Shutting down thunk allocator
[ 1.910] Exiting (end of log).
00d8:fixme:kernelbase:AppPolicyGetProcessTerminationMethod FFFFFFFFFFFFFFFA, 000000000011FD40


vinscool@asus-rog ~/Documents/Altirra 4.00-test $ wine '/home/vinscool/Documents/Altirra 4.00-test/Altirra64.exe' /startuplog

[ 0.000] Windows 6.1.7601
[ 0.002] Startup logging enabled.
[ 0.003] Initializing OLE.
0160:fixme:uxtheme:BufferedPaintInit Stub ()
[ 0.006] Initializing themes
[ 0.009] Loading config var overrides
[ 0.011] Loading options
[ 0.015] Loading settings
[ 0.017] Running instance
[ 0.018] Preloading DLLs
[ 0.046] Registering controls
[ 0.047] Initializing frame system
[ 0.048] Initializing commands and accelerators
[ 0.049] Applying options
[ 0.050] Initializing filespec system
[ 0.052] Initializing UI panes
[ 0.059] Initializing logging
[ 0.060] Initializing native UI
[ 0.061] Creating main window
0160:fixme:win:RegisterTouchWindow (0000000000020052 00000000): stub
0160:fixme:win:UnregisterTouchWindow (0000000000020052): stub
0160:fixme:win:SetGestureConfig (0000000000020052 00000000 1 000000000011E430 12): stub
[ 0.079] Restoring main window
0168:fixme:imm:ImeSetActiveContext (0000000000020030, 0): stub
0168:fixme:imm:ImmReleaseContext (000000000002007A, 0000000000020030): stub
0160:fixme:imm:ImeSetActiveContext (000000000002005E, 1): stub
0160:fixme:imm:ImmReleaseContext (0000000000020052, 000000000002005E): stub
[ 0.091] Initializing WinSock
[ 0.091] Initializing simulator
[ 0.100] Initializing game controllers
[ 0.115] Initializing firmware menus
[ 0.115] Initializing profile menus
[ 0.115] Initializing video output menu
[ 0.116] Loading menu
[ 0.122] Initializing port menus
[ 0.122] Initializing debugger
[ 0.123] Initializing compatibility system
[ 0.123] Initializing display UI
[ 0.191] Loading profiles
[ 0.192] Loading current profile
[ 0.200] Initializing native audio
[ 0.241] Loading ROMs
[ 0.242] Saving options
[ 0.242] Starting emulation
[ 0.243] Restoring pane layout
0160:fixme:win:RegisterTouchWindow (000000000002007E 00000000): stub
0160:fixme:win:UnregisterTouchWindow (000000000002007E): stub
0160:fixme:win:SetGestureConfig (000000000002007E 00000000 1 000000000011E2D0 12): stub
019c:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFFFFFFFFFA, 000000000341FE10
0160:fixme:win:RegisterTouchWindow (00000000000200D6 00000000): stub
0160:fixme:win:RegisterTouchWindow (00000000000200D8 00000000): stub
0160:fixme:d3d9:D3DPERF_GetStatus (void) : stub
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0
0160:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0160:fixme:win:RegisterTouchWindow (00000000000200CA 00000000): stub
0160:fixme:win:UnregisterTouchWindow (00000000000200CA): stub
[ 0.565] Initiating cold reset
[ 0.568] Initializing full screen mode
[ 0.569] Running main loop
01a0:fixme:d3d:state_linepattern_w Setting line patterns is not supported in OpenGL core contexts.
01a0:fixme:d3d_shader:print_glsl_info_log Info log received from GLSL shader #3:
01a0:fixme:d3d_shader:print_glsl_info_log     Vertex info
01a0:fixme:d3d_shader:print_glsl_info_log     -----------
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[0].zw" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[1]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[2]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[3]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[4]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[5]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[6]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[7]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[8]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[9]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[11]" might be used before being initialized
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
01a0:fixme:d3d_shader:print_glsl_info_log Info log received from GLSL shader #14:
01a0:fixme:d3d_shader:print_glsl_info_log     Vertex info
01a0:fixme:d3d_shader:print_glsl_info_log     -----------
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[0].zw" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[1]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[2]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[3]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[4]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[5]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[6]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[7]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[8]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[9]" might be used before being initialized
01a0:fixme:d3d_shader:print_glsl_info_log     0(24) : warning C7050: "vs_out[11]" might be used before being initialized
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:sync:SetWaitableTimerEx (000000000000012C, 000000000011ED40, 0, 0000000000000000, 0000000000000000, 0000000000000000, 0) semi-stub
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
0160:fixme:d3d:wined3d_swapchain_present Ignoring flags 0x1.
[ 1.719] Saving settings
[ 1.743] Exiting fullscreen mode
[ 1.744] Stopping recording
[ 1.744] Shutting down filespec system
[ 1.745] Shutting down compat system
[ 1.745] Shutting down UI
[ 1.745] Shutting down debugger
[ 1.746] Shutting down game controllers
[ 1.747] Shutting down simulator
[ 1.751] Shutting down native UI
[ 1.751] Shutting down WinSock
[ 1.752] Shutting down registry
[ 1.753] Shutting down UI
0160:fixme:uxtheme:BufferedPaintUnInit Stub ()
[ 1.753] Shutting down OLE
[ 1.753] Shutting down thunk allocator
[ 1.754] Exiting (end of log).
0160:fixme:kernelbase:AppPolicyGetProcessTerminationMethod FFFFFFFFFFFFFFFA, 000000000011FD40

vinscool@asus-rog ~/Documents/Altirra 4.00-test $ 

 

 

I've included 2 different logs, the first one is most likely the moment it would usually get "stuck" on a black screen, and the second one seems to be a normal execution, since it wouldn't display any error beforehand.

I've tested something like 20 launches, and it would always be either outcome.

Interestingly, it wouldn't get stuck at all when the log was running, compared to what I would usually get.

So I imagine forcing a minidump was all I needed to get past the crash?

Link to comment
Share on other sites

Hi all,

 

I've run into a problem with Altirra - or my configuration of it most likely - but I'm not sure how/when this happened.

 

It seems the keys I press which are mapped to joystick directions and fire button, are being treated both as those joystick actions, and also key presses. So when playing the new Bruce Lee game, on every keydown event, Bruce moves a tiny bit, and the game goes into **PAUSED**. If I then push and hold the same key, it unpauses and is ok while I hold it there (Bruce keeps running...) until I let go, then the next keydown event will pause again. I wondered for a bit if this was something strange in the new Bruce Lee, although everyone else is having a whale of a time, so sounds like my issue. But anyway, I went back to the original Bruce Lee, and I have the same constant-pausing behaviour. I'm sure I've played that before without those issues, but I don't know what I've changed to get there.

 

So I tested with both the release Altirra 4.01, and the test-21 above, and with changing the profile settings between Raw keys / cooked keys... no joy. I also tried moving the mappings from the cursor keys to the num-pad keys, but still the same.

I'm on Windows 10 (Pro) 21H2 (19044.1706). Altirra 64-bit, emulating a standard 64k XL PAL.

Any ideas on what's up?
Thanks as always,
Wes

Link to comment
Share on other sites

https://www.virtualdub.org/beta/Altirra-4.10-test22.zip
https://www.virtualdub.org/beta/Altirra-4.10-test22-src.7z

  • Fixed a couple of issues with LOADEXE on the Additions disk and the Deferred/Disk Boot EXE loader modes.
  • Fixed the virtual FAT16 and FAT32 devices returning bad data when re-reading the last data sector of a file.
  • Added a command to temporarily remount a VHD in Windows for easier access to FAT32 partitions.
  • Crash dialog now reports EXE-relative offset if available.

 

On 10/14/2022 at 4:56 AM, wesmond said:

It seems the keys I press which are mapped to joystick directions and fire button, are being treated both as those joystick actions, and also key presses. So when playing the new Bruce Lee game, on every keydown event, Bruce moves a tiny bit, and the game goes into **PAUSED**. If I then push and hold the same key, it unpauses and is ok while I hold it there (Bruce keeps running...) until I let go, then the next keydown event will pause again. I wondered for a bit if this was something strange in the new Bruce Lee, although everyone else is having a whale of a time, so sounds like my issue. But anyway, I went back to the original Bruce Lee, and I have the same constant-pausing behaviour. I'm sure I've played that before without those issues, but I don't know what I've changed to get there.

Check Configure System > Keyboard > Share non-modifier host keys between keyboard and input maps.

  • Like 4
  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...