Grid Sage Forums

Grid Sage Forums

  • April 23, 2024, 08:04:17 AM
  • Welcome, Guest
Please login or register.

Login with username, password and session length
Advanced search  

News:

LINKS: Website | Steam | Wiki

Author Topic: [GUIDE] Running Cogmind on any MacBook with Free, Open Source Software [2022,M1]  (Read 3998 times)

Luigi

  • Derelict
  • **
  • Kyzrati Patron
  • Posts: 25
  • Numba one numba two
    • View Profile

EDIT: New guide here! Much easier to maintain, features a nice GUI .app wrapper and no command line once installed
https://gist.github.com/aronson/b893fb140245d0f19409ab5617cce750



Hello gamers, I figured it out!
I have figured out how to get crossover working for free:
You may need homebrew if not already installed: https://brew.sh/
You may also need Rosetta installed if on an M1 or M2 device:
Code: [Select]
softwareupdate --install-rosetta
Code: [Select]
brew tap gcenx/wine
brew install --cask --no-quarantine gcenx/wine/wine-crossover
brew install winetricks
winecfg # let it launch and close it with OK when it's loaded to init your bottle
winetricks vcrun2010 # required library for Cogmind, follow the installer

Go to finder, press Cmd+Shift+Period to display hidden files, then navigate to ~/.wine/drive_c/ and copy the Cogmind/ folder into it.
Run
Code: [Select]
cd ~/.wine/drive_c/Cogmind/ && wine ./COGMIND.exe to start! Works with all my performance mods too, almost required on M1 Macs, see here https://www.gridsagegames.com/forums/index.php?topic=1567.msg9990#msg9990
« Last Edit: October 27, 2023, 07:15:56 PM by Luigi »
Logged

needausername

  • Unaware
  • *
  • Posts: 6
    • View Profile

Thank you for this guide.

When I try to run these commands on a M2 Macbook Air, I get the following error:

```
➜  ~ winecfg
/opt/homebrew/bin/winecfg: line 46: /opt/homebrew/bin/wine: Bad CPU type in executable
/opt/homebrew/bin/winecfg: line 46: /opt/homebrew/bin/wine: Undefined error: 0
```

Does anyone have any idea why this happens? I am a bit confused, because I've seen some things online mentioning that MacOS only supports 64 bit (which I believe is related to this error), but I believe Cogmind is 32 bit.

Thank you in advance for any help.

Logged

Luigi

  • Derelict
  • **
  • Kyzrati Patron
  • Posts: 25
  • Numba one numba two
    • View Profile

Howdy, this should run on an M2 MacBook Air just fine. Go ahead and skip to the winetricks step and/or try to launch the application with wine. Can you post the output of these commands?


Code: [Select]
file `which winecfg`
file `which wine`
file `which brew`
brew doctor


The CodeWeavers team behind wine-crossover have added full support for running 32 but applications in a 64 bit wrapper on M1/M2 series chips. It looks like you have a bad install of brew or you’re running under Rosetta.
Logged

needausername

  • Unaware
  • *
  • Posts: 6
    • View Profile

Here's the output:

Code: [Select]
➜  Downloads file `which winecfg`

/opt/homebrew/bin/winecfg: POSIX shell script text executable, ASCII text
➜  Downloads file `which wine`

/opt/homebrew/bin/wine: Mach-O 64-bit executable x86_64
➜  Downloads file `which wine`

/opt/homebrew/bin/wine: Mach-O 64-bit executable x86_64
➜  Downloads brew doctor

Your system is ready to brew.

It looks like I don't have a .wine32 directory in ~/. Did I do something wrong? I think every command ran successfully until I got to winecfg. Also, I put those variables in my shell profile.
Logged

Luigi

  • Derelict
  • **
  • Kyzrati Patron
  • Posts: 25
  • Numba one numba two
    • View Profile

Hmm I believe running winecfg for the first time will create that directory for you.


According to the command output you should be good to go… Do you have Rosetta installed? Try this command to install it, then try winecfg again:
Code: [Select]
softwareupdate --install-rosetta
EDIT: I tried my instructions in a fresh M1 virtual machine and got the same error as you did. Installing Rosetta with the above command fixed it and I was able to run winecfg and proceed. Hope this helps and I’ll update the guide!
« Last Edit: September 20, 2022, 02:12:16 PM by Luigi »
Logged

needausername

  • Unaware
  • *
  • Posts: 6
    • View Profile

That got the game to launch for me! However it hangs when it is booting - here's the console output:

Code: [Select]
➜  ~ wine .wine32/drive_c/Cogmind/COGMIND.exe
002c:err:winediag:WS_getaddrinfo Failed to resolve your host name IP
0024:fixme:seh:get_thread_times not implemented on this platform
0024:fixme:heap:RtlSetHeapInformation 00000000 1 00000000 0 stub
0024:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
0024:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
0024:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
0024:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
0024:fixme:coreaudio:ca_channel_layout_to_channel_mask Unhandled channel 0xffffffff
get_thread_times not implemented on this platform^C^C00b4:fixme:seh:NtSetContextThread setting 64-bit context not supported
0024:fixme:seh:NtSetContextThread setting 64-bit context not supported
wine: Unhandled page fault on execute access to 09C193B8 at address 09C193B8 (thread 00b4), starting debugger...
00b4:err:seh:start_debugger Couldn't start debugger L"winedbg --auto 176 92" (2)
Read the Wine Developers Guide on how to set up winedbg or another debugger

I tried searching for "get_thread_times not implemented on this platform" and found this thread: https://forum.winehq.org/viewtopic.php?t=32972 which would imply it's an issue with the Visual C++ windows library installed with Winetricks. Here's the output if I run it again:

Code: [Select]
➜  ~ winetricks vcrun2010
warning: taskset/cpuset not available on your platform!
Executing mkdir -p /Users/******
Using winetricks 20220411 - sha256sum: 69856050cfe9d97902dfd68c1ad42a10a4be0fe76660744126d7e3ed75610495 with wine-6.0 and WINEARCH=win32
Executing w_do_call vcrun2010
Executing mkdir -p /Users/******
vcrun2010 already installed, skipping

Not sure if that's a red herring. Do you have any ideas?

Thanks again for your continued help.

Edit: here's the crash log that the executable generates:
Code: [Select]
Cogmind - Beta 11.1 (build 220513b)

[    36] I=0000002 Initializing resources
[    36] W=0000013 Config::init() | Unable to open user/system.cfg, creating new default config
[    36] W=0000013 Config::init() | Unable to open user/options.cfg, creating new default config
[    36] W=0000014 Config::init() | Unable to open user/advanced.cfg, creating new default config
[    36] I=0000015 Initializing Rogue Engine X
[    36] I=0000015 |   Starting SDL
[    36] I=0000084 |   Importing icon
[    36] E=0000084 |   REX_Init() | Application icon "rex/icon.png" not found, this program may not be installed correctly!
[    36] I=0000085 |   Confirmed resource initialization
[    36] I=0000085 |   Loading colors
[    36] I=0000085 |   Initializing font type data
[    36] I=0000086 |   Mapping standard ASCII values
[    36] I=0000086 |   Loading fonts
[    36] I=0000089 |   |   [font set: 12/Smallcaps]
[    36] I=0000096 |   |   ...cogmind6x12_smallcaps.png
[    36] I=0000100 |   |   ..._default12x12.png
[    36] I=0000102 |   |   ...cp437_12x12.png
[    36] I=0000102 |   |   [font set: 12/Terminus]
[    36] I=0000103 |   |   ...cogmind6x12_terminus.png
[    36] I=0000106 |   |   ..._default12x12.png
[    36] I=0000108 |   |   ...cp437_12x12.png
[    36] I=0000108 |   |   [font set: 12/Crisp]
[    36] I=0000109 |   |   ...cogmind6x12_crisp.png
[    36] I=0000112 |   |   ..._default12x12.png
[    36] I=0000114 |   |   ...cp437_12x12.png
[    36] I=0000114 |   |   [font set: 12/Tallcaps]
[    36] I=0000115 |   |   ...cogmind6x12_tallcaps.png
[    36] I=0000118 |   |   ..._default12x12.png
[    36] I=0000120 |   |   ...cp437_12x12.png
[    36] I=0000120 |   |   [font set: 12/Proggy]
[    36] I=0000121 |   |   ...cogmind6x12_proggy.png
[    36] I=0000124 |   |   ..._default12x12.png
[    36] I=0000126 |   |   ...cp437_12x12.png
[    36] I=0000126 |   |   [font set: 12/Fuzzy]
[    36] I=0000127 |   |   ...cogmind6x12_fuzzy.png
[    36] I=0000130 |   |   ..._default12x12.png
[    36] I=0000132 |   |   ...cp437_12x12.png
[    36] I=0000132 |   |   [font set: 12/Cog]
[    36] I=0000133 |   |   ...cogmind6x12_cogmind.png
[    36] I=0000136 |   |   ..._default12x12.png
[    36] I=0000138 |   |   ...cp437_12x12.png
[    36] I=0000138 |   |   [font set: 12/CogTall]
[    36] I=0000139 |   |   ...cogmind6x12_cogmind_tall.png
[    36] I=0000143 |   |   ..._default12x12.png
[    36] I=0000144 |   |   ...cp437_12x12.png
[    36] I=0000144 |   |   [font set skipped: 12/T+Smallcaps] (unavailable)
[    36] I=0000144 |   |   [font set skipped: 12/T+Terminus] (unavailable)
[    36] I=0000144 |   |   [font set: 14/SmallcapsGlow]
[    36] I=0000145 |   |   ...cogmind7x14_smallcaps_stroked.png
[    36] I=0000151 |   |   ...cogmind14x14.png
[    36] I=0000153 |   |   ...cp437_14x14.png
[    36] I=0000153 |   |   [font set: 14/Smallcaps]
[    36] I=0000154 |   |   ...cogmind7x14_smallcaps.png
[    36] I=0000159 |   |   ...cogmind14x14.png
[    36] I=0000161 |   |   ...cp437_14x14.png
[    36] I=0000161 |   |   [font set: 14/SmallcapsLarge]
[    36] I=0000162 |   |   ...cogmind7x14_smallcaps_large.png
[    36] I=0000167 |   |   ...cogmind14x14.png
[    36] I=0000169 |   |   ...cp437_14x14.png
[    36] I=0000169 |   |   [font set: 14/Terminus]
[    36] I=0000170 |   |   ...cogmind7x14_terminus.png
[    36] I=0000175 |   |   ...cogmind14x14.png
[    36] I=0000177 |   |   ...cp437_14x14.png
[    36] I=0000177 |   |   [font set: 14/TerminusBold]
[    36] I=0000178 |   |   ...cogmind7x14_terminus_bold.png
[    36] I=0000182 |   |   ...cogmind14x14.png
[    36] I=0000185 |   |   ...cp437_14x14.png
[    36] I=0000185 |   |   [font set: 14/X11]
[    36] I=0000186 |   |   ...cogmind7x14_X11.png
[    36] I=0000190 |   |   ...cogmind14x14.png
[    36] I=0000192 |   |   ...cp437_14x14.png
[    36] I=0000192 |   |   [font set: 14/X11Bold]
[    36] I=0000194 |   |   ...cogmind7x14_X11_bold.png
[    36] I=0000198 |   |   ...cogmind14x14.png
[    36] I=0000200 |   |   ...cp437_14x14.png
[    36] I=0000200 |   |   [font set: 14/Dina]
[    36] I=0000202 |   |   ...cogmind7x14_dina.png
[    36] I=0000206 |   |   ...cogmind14x14.png
[    36] I=0000208 |   |   ...cp437_14x14.png
[    36] I=0000208 |   |   [font set: 14/Proggy]
[    36] I=0000209 |   |   ...cogmind7x14_proggy.png
[    36] I=0000214 |   |   ...cogmind14x14.png
[    36] I=0000216 |   |   ...cp437_14x14.png
[    36] I=0000216 |   |   [font set: 14/ProggyBold]
[    36] I=0000217 |   |   ...cogmind7x14_proggy_bold.png
[    36] I=0000222 |   |   ...cogmind14x14.png
[    36] I=0000224 |   |   ...cp437_14x14.png
[    36] I=0000224 |   |   [font set: 14/Cog]
[    36] I=0000225 |   |   ...cogmind7x14_cogmind.png
[    36] I=0000230 |   |   ...cogmind14x14.png
[    36] I=0000232 |   |   ...cp437_14x14.png
[    36] I=0000232 |   |   [font set skipped: 14/T+Smallcaps] (unavailable)
[    36] I=0000232 |   |   [font set skipped: 14/T+Terminus] (unavailable)
[    36] I=0000232 |   |   [font set skipped: 14/VGA+Smallcaps] (unavailable)
[    36] I=0000232 |   |   [font set skipped: 14/VGA+Terminus] (unavailable)
[    36] I=0000232 |   |   [font set ignored: 16/SmallcapsGlow] (resolution exceeds desktop)
[    36] I=0000232 |   |   [font set ignored: 16/Smallcaps] (resolution exceeds desktop)
[    36] I=0000232 |   |   [font set ignored: 16/Terminus] (resolution exceeds desktop)
[    36] I=0000232 |   |   [font set ignored: 16/Dina] (resolution exceeds desktop)
[    36] I=0000232 |   |   [font set ignored: 16/Proggy] (resolution exceeds desktop)
[    36] I=0000232 |   |   [font set ignored: 16/Cog] (resolution exceeds desktop)
[    36] I=0000232 |   |   [font set ignored: 16/CogWide] (resolution exceeds desktop)
[    36] I=0000232 |   |   [font set skipped: 16/T+SmallcapsGlow] (unavailable)
[    36] I=0000232 |   |   [font set skipped: 16/T+Smallcaps] (unavailable)
[    36] I=0000232 |   |   [font set skipped: 16/T+Terminus] (unavailable)
[    36] I=0000232 |   |   [font set skipped: 16/T+Dina] (unavailable)
[    36] I=0000232 |   |   [font set skipped: 16/T+Proggy] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/T+Cog] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/T+CogWide] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/V+SmallcapsGlow] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/V+Smallcaps] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/V+Terminus] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/V+Dina] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/V+Proggy] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/V+Cog] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/V+CogWide] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/K+SmallcapsGlow] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/K+Smallcaps] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/K+Terminus] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/K+Dina] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/K+Proggy] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/K+Cog] (unavailable)
[    36] I=0000233 |   |   [font set skipped: 16/K+CogWide] (unavailable)
[    36] I=0000233 |   |   [font set ignored: 18/SmallcapsGlow] (resolution exceeds desktop)
[    36] I=0000233 |   |   [font set ignored: 18/Smallcaps] (resolution exceeds desktop)
[    36] I=0000233 |   |   [font set ignored: 18/Terminus] (resolution exceeds desktop)
[    36] I=0000234 |   |   [font set ignored: 18/TerminusBold] (resolution exceeds desktop)
[    36] I=0000234 |   |   [font set ignored: 18/X11] (resolution exceeds desktop)
[    36] I=0000234 |   |   [font set ignored: 18/X11Bold] (resolution exceeds desktop)
[    36] I=0000234 |   |   [font set ignored: 18/Cog] (resolution exceeds desktop)
[    36] I=0000234 |   |   [font set ignored: 18/CogNarrow] (resolution exceeds desktop)
[    36] I=0000234 |   |   [font set ignored: 18/CogWide] (resolution exceeds desktop)
[    36] I=0000234 |   |   [font set skipped: 18/T+SmallcapsGlow] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+Smallcaps] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+Terminus] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+TerminusBold] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+X11] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+X11Bold] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+Cog] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+CogNarrow] (unavailable)
[    36] I=0000234 |   |   [font set skipped: 18/T+CogWide] (unavailable)
[    36] I=0000234 |   |   [font set ignored: 20/SmallcapsGlow] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/Smallcaps] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/Terminus] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/X11] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/All Caps] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/Cased] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/Cog] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/CogNarrow] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 20/CogTall] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 24/Smallcaps] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 24/Terminus] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 24/Crisp] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 24/Proggy] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 24/Cog] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 28/SmallcapsGlow] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 28/Smallcaps] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 28/SmallcapsLarge] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 28/Terminus] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 28/X11] (resolution exceeds desktop)
[    36] I=0000235 |   |   [font set ignored: 28/X11Bold] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 28/Dina] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 28/Proggy] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 28/ProggyBold] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 28/Cog] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 32/SmallcapsGlow] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 32/Smallcaps] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 32/Terminus] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 32/Dina] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 32/Proggy] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 32/Cog] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 32/CogWide] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 36/Smallcaps] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 36/Crisp] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 36/Terminus] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 36/Proggy] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 36/Cog] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 36/TerminusFine] (resolution exceeds desktop)
[    36] I=0000236 |   |   [font set ignored: 36/TerminusBold] (resolution exceeds desktop)
[    36] I=0000237 |   |   [font set ignored: 36/X11] (resolution exceeds desktop)
[    36] I=0000237 |   |   [font set ignored: 36/X11Bold] (resolution exceeds desktop)
[    36] I=0000237 |   |   [font set ignored: 36/CogFine] (resolution exceeds desktop)
[    36] I=0000237 |   |   [font set ignored: 36/CogNarrow] (resolution exceeds desktop)
[    36] I=0000237 |   |   [font set ignored: 36/CogWide] (resolution exceeds desktop)
[    36] I=0000237 |   |   [font set: 10/Smallcaps]
[    36] I=0000238 |   |   ...cogmind5x10_smallcaps.png
[    36] I=0000240 |   |   ...cogmind10x10.png
[    36] I=0000241 |   |   ...cp437_10x10.png
[    36] I=0000241 |   |   [font set: 10/Cased]
[    36] I=0000242 |   |   ...cogmind5x10_cased.png
[    36] I=0000244 |   |   ...cogmind10x10.png
[    36] I=0000245 |   |   ...cp437_10x10.png
[    36] I=0000245 |   \---DONE
[    36] I=0000246 |   Setting video mode
[    36] I=0000246 |   |   Targeting fullscreen
[    36] I=0000246 |   |   Calculating dimensions
[    36] I=0000246 |   |   ...charW=6
[    36] I=0000246 |   |   ...charH=12
[    36] I=0000246 |   |   ...wMin=1260
[    36] I=0000246 |   |   ...hMin=816
[    36] I=0000246 |   |   ...wWanted=1470
[    36] I=0000246 |   |   ...hWanted=956
[    36] I=0000246 |   |   Limited video mode availability
[    36] I=0000246 |   |   Testing mode: 2560x1664
[    36] I=0000246 |   |   ...OKAY: wBest=2560, hBest=1664
[    36] I=0000246 |   |   Testing mode: 2560x1600
[    36] I=0000246 |   |   ...OKAY: wBest=2560, hBest=1600
[    36] I=0000246 |   |   Testing mode: 2048x1332
[    36] I=0000246 |   |   ...OKAY: wBest=2048, hBest=1332
[    36] I=0000246 |   |   Testing mode: 2048x1280
[    36] I=0000246 |   |   ...OKAY: wBest=2048, hBest=1280
[    36] I=0000246 |   |   Testing mode: 1920x1200
[    36] I=0000246 |   |   ...OKAY: wBest=1920, hBest=1200
[    36] I=0000247 |   |   Testing mode: 1710x1112
[    36] I=0000247 |   |   ...OKAY: wBest=1710, hBest=1112
[    36] I=0000247 |   |   Testing mode: 1710x1068
[    36] I=0000247 |   |   ...OKAY: wBest=1710, hBest=1068
[    36] I=0000247 |   |   Testing mode: 1470x956
[    36] I=0000247 |   |   ...OKAY: wBest=1470, hBest=956
[    36] I=0000247 |   |   Testing mode: 1470x918
[    36] I=0000247 |   |   ...dimensions unsuitable
[    36] I=0000247 |   |   Testing mode: 1280x832
[    36] I=0000247 |   |   ...dimensions unsuitable
[    36] I=0000247 |   |   Testing mode: 1280x800
[    36] I=0000247 |   |   ...dimensions unsuitable
[    36] I=0000247 |   |   Testing mode: 1024x666
[    36] I=0000247 |   |   ...dimensions unsuitable
[    36] I=0000247 |   |   Testing mode: 1024x640
[    36] I=0000247 |   |   ...dimensions unsuitable
[    36] I=0000247 |   |   Testing mode: 960x600
[    36] I=0000247 |   |   ...dimensions unsuitable
[    36] I=0000247 |   |   Setting software video mode
[    36] I=0000360 |   |   Setting fullscreen offset: +105,+70
[    36] I=0000371 |   \---DONE
[    36] I=0000372 |   Setting video mode
[    36] I=0000372 |   |   Targeting fullscreen
[    36] I=0000372 |   |   Calculating dimensions
[    36] I=0000372 |   |   ...charW=6
[    36] I=0000372 |   |   ...charH=12
[    36] I=0000372 |   |   ...wMin=1260
[    36] I=0000372 |   |   ...hMin=816
[    36] I=0000372 |   |   ...wWanted=1470
[    36] I=0000372 |   |   ...hWanted=956
[    36] I=0000372 |   |   Limited video mode availability
[    36] I=0000372 |   |   Testing mode: 2560x1664
[    36] I=0000372 |   |   ...OKAY: wBest=2560, hBest=1664
[    36] I=0000372 |   |   Testing mode: 2560x1600
[    36] I=0000372 |   |   ...OKAY: wBest=2560, hBest=1600
[    36] I=0000372 |   |   Testing mode: 2048x1332
[    36] I=0000372 |   |   ...OKAY: wBest=2048, hBest=1332
[    36] I=0000372 |   |   Testing mode: 2048x1280
[    36] I=0000372 |   |   ...OKAY: wBest=2048, hBest=1280
[    36] I=0000372 |   |   Testing mode: 1920x1200
[    36] I=0000372 |   |   ...OKAY: wBest=1920, hBest=1200
[    36] I=0000372 |   |   Testing mode: 1710x1112
[    36] I=0000372 |   |   ...OKAY: wBest=1710, hBest=1112
[    36] I=0000373 |   |   Testing mode: 1710x1068
[    36] I=0000373 |   |   ...OKAY: wBest=1710, hBest=1068
[    36] I=0000373 |   |   Testing mode: 1470x956
[    36] I=0000373 |   |   ...OKAY: wBest=1470, hBest=956
[    36] I=0000373 |   |   Testing mode: 1470x918
[    36] I=0000373 |   |   ...dimensions unsuitable
[    36] I=0000373 |   |   Testing mode: 1280x832
[    36] I=0000373 |   |   ...dimensions unsuitable
[    36] I=0000373 |   |   Testing mode: 1280x800
[    36] I=0000373 |   |   ...dimensions unsuitable
[    36] I=0000373 |   |   Testing mode: 1024x666
[    36] I=0000373 |   |   ...dimensions unsuitable
[    36] I=0000373 |   |   Testing mode: 1024x640
[    36] I=0000373 |   |   ...dimensions unsuitable
[    36] I=0000373 |   |   Testing mode: 960x600
[    36] I=0000373 |   |   ...dimensions unsuitable
[    36] I=0000373 |   |   Setting software video mode
[    36] I=0000429 |   |   Setting fullscreen offset: +105,+70
[    36] I=0000430 |   \---DONE
[    36] I=0000430 |   Initializing audio
[    36] I=0001726 |   Creating console
[    36] I=0001731 \---DONE
[    36] I=0001732 Setting video mode
[    36] I=0001732 |   Targeting fullscreen
[    36] I=0001732 |   Calculating dimensions
[    36] I=0001733 |   ...charW=7
[    36] I=0001733 |   ...charH=14
[    36] I=0001733 |   ...wMin=1470
[    36] I=0001733 |   ...hMin=952
[    36] I=0001733 |   ...wWanted=1470
[    36] I=0001733 |   ...hWanted=956
[    36] I=0001733 |   Limited video mode availability
[    36] I=0001733 |   Testing mode: 2560x1664
[    36] I=0001733 |   ...OKAY: wBest=2560, hBest=1664
[    36] I=0001733 |   Testing mode: 2560x1600
[    36] I=0001733 |   ...OKAY: wBest=2560, hBest=1600
[    36] I=0001733 |   Testing mode: 2048x1332
[    36] I=0001733 |   ...OKAY: wBest=2048, hBest=1332
[    36] I=0001733 |   Testing mode: 2048x1280
[    36] I=0001733 |   ...OKAY: wBest=2048, hBest=1280
[    36] I=0001733 |   Testing mode: 1920x1200
[    36] I=0001733 |   ...OKAY: wBest=1920, hBest=1200
[    36] I=0001733 |   Testing mode: 1710x1112
[    36] I=0001733 |   ...OKAY: wBest=1710, hBest=1112
[    36] I=0001733 |   Testing mode: 1710x1068
[    36] I=0001733 |   ...OKAY: wBest=1710, hBest=1068
[    36] I=0001734 |   Testing mode: 1470x956
[    36] I=0001734 |   ...OKAY: wBest=1470, hBest=956
[    36] I=0001734 |   Testing mode: 1470x918
[    36] I=0001734 |   ...dimensions unsuitable
[    36] I=0001734 |   Testing mode: 1280x832
[    36] I=0001734 |   ...dimensions unsuitable
[    36] I=0001734 |   Testing mode: 1280x800
[    36] I=0001734 |   ...dimensions unsuitable
[    36] I=0001734 |   Testing mode: 1024x666
[    36] I=0001734 |   ...dimensions unsuitable
[    36] I=0001734 |   Testing mode: 1024x640
[    36] I=0001736 |   ...dimensions unsuitable
[    36] I=0001736 |   Testing mode: 960x600
[    36] I=0001736 |   ...dimensions unsuitable
[    36] I=0001736 |   Setting software video mode
[    36] I=0001748 |   Setting fullscreen offset: +0,+2
[    36] I=0001749 \---DONE
[    36] I=0001753 GM::initialize() | Initializing game
[    36] I=0001753 |   Creating game consoles
[    36] I=0001758 |   CMission() | Creating CMission
[    36] I=0001758 |   |   Initializing input domains and commands
[    36] I=0001764 |   |   Creating top-level consoles
[    36] I=0001764 |   |   ...CCommands
[    36] E=0001766 |   |   AsciiImage() | Failed to load image: data/art/credits.x
[    36] I=0001766 |   |   ...CMap
[    36] I=0001768 |   |   ...CHud
[    36] I=0001816 |   |   ...CLog
[    36] I=0001819 |   |   ...CExtendedLog
[    36] I=0001820 |   |   ...CCalcs
[    36] I=0001822 |   |   ...CAllies
[    36] I=0001824 |   |   ...CIntel
[    36] I=0001825 |   |   ...CMulticonsoleButtons
[    36] I=0001828 |   |   ...CHack
[    36] I=0001830 |   |   ...CStatus
[    36] I=0001832 |   |   ...CInfo
[    36] I=0001836 |   |   ...CInterfaceMsg
[    36] I=0001837 |   |   ...CEffects
[    36] I=0001838 |   |   Loading inline colors
[    36] I=0001838 |   \---DONE
[    36] I=0001845 |   Mapping characters
[    36] I=0001860 |   Loading tutorial records
[    36] I=0001861 |   (user/tutor.bin not found, resetting tutorial)
[    36] I=0001877 |   GM::loadDataset() | Loading static objects
[    36] I=0001895 |   |   Loading Sound Groups...
[    36] I=0001897 |   |   [File: data/audio/groups.xd]
[    36] I=0001897 |   |   ...29 Sound Groups loaded
[   264] I=0001918 |   |   Loading Sounds...
[   264] I=0001918 |   |   [File: data/audio/sounds.xd]
[   268] I=0001918 |   |   Loading Combat Particles...
[   268] I=0001919 |   |   [File: data/objects/particles_map.xd]
[   272] I=0001919 |   |   Loading 2D Particles...
[   272] I=0001919 |   |   [File: data/interface/particles_gui.xd]
[   264] I=0002081 |   |   ...846 Sounds loaded
[   268] I=0002758 |   |   ...2015 Map Particles loaded
[   272] I=0003794 |   |   ...5175 GUI Particles loaded
[    36] I=0237430 |   |   Loading Interface Message Styles...
[    36] I=0237432 |   |   [File: data/messages/interface_styles.xt]
[    36] I=0237432 |   |   ...4 Interface Message Styles loaded
[    36] I=0237432 |   |   Loading Interface Messages...
[    36] I=0237432 |   |   [File: data/messages/interface.xt]
[    36] I=0237435 |   |   ...177 Interface Messages loaded
[    36] I=0237436 |   |   Loading Combat Message Styles...
[    36] I=0237436 |   |   [File: data/messages/log_styles.xt]
[    36] I=0237437 |   |   ...18 Combat Message Styles loaded
[    36] I=0237437 |   |   Loading Combat Messages...
[    36] I=0237437 |   |   [File: data/messages/log.xt]
[    36] I=0237455 |   |   ...657 Combat Messages loaded
[    36] I=0237455 |   |   Loading Special Ability Combat Message Styles...
[    36] I=0237456 |   |   [File: data/messages/specialability_styles.xt]
[    36] I=0237456 |   |   ...Loading complete
[    36] I=0237460 |   |   Loading Explosions...
[    36] I=0237460 |   |   [File: data/objects/explosions.xd]
[    36] I=0237486 |   |   ...249 Explosions loaded
[    36] I=0237489 |   |   Loading Traits...
[    36] I=0237490 |   |   [File: data/objects/traits.xd]
[    36] I=0237491 |   |   ...143 Traits loaded
[    36] I=0237491 |   |   Searching for required traits...
[    36] I=0237510 |   |   Loading Materials...
[    36] I=0237510 |   |   [File: data/objects/materials.xd]
[    36] I=0237511 |   |   ...17 Materials loaded
[    36] I=0237527 |   |   Loading Sound Classes...
[    36] I=0237527 |   |   [File: data/objects/sound_classes.xd]
[    36] I=0237532 |   |   ...8 Sound Classes loaded
[    36] I=0237544 |   |   Loading Encounters...
[    36] I=0237545 |   |   [File: data/maps/encounters/encounters.xd]
[    36] E=0237546 |   |   PrefabImage() | Failed to load prefab: data/maps/encounters/MAT_storage_storage.x
[    36] F=0237546 |   |   data/maps/encounters/encounters.xd | Error in line 4: ENC_MAT_STORAGE_STORAGE unable to find related prefab "MAT_storage_storage.x"%

EDIT 2:
If I run wine cogmind.exe from the cogmind directory instead of specifying the path with the command, I get a different error (cropped due to length):

Code: [Select]
[    36] I=0238121 |   |   [File: user/notes.txt]
[    36] I=0238122 |   |   ...25 Manual Content loaded
[    36] I=0238278 |   \---DONE
[    36] I=0238285 |   Automated backup system saving user data to bak/220921/
[    36] I=0238298 |   Loading game meta data
[    36] I=0238299 |   |   (user/game.bin not found)
[    36] I=0238299 |   |   (user/meta.bin not found, resetting data)
[    36] E=0238302 |   |   GameMetaData::serialize() | Unable to open/read user/buffer.txt
[    36] E=0238302 |   |   GameMetaData::serialize() | Unable to open/read user/buffer_robot.txt
[    36] I=0238302 |   \---DONE
[   276] I=0238317 |   Http::newsCheck() | Checking version and retrieving news
[   276] I=0238317 |   |   Resolving address...
[   276] I=0238349 |   |   Connecting...
[    36] I=0238354 |   \---DONE
[   280] I=0238355 |   checkScoreReupload() | Checking for old scores to upload...
[   280] I=0238356 |   \---DONE
[    36] I=0238370 |   Starting REX loop
[   276] I=0238445 |   Sending content...
[   276] I=0238446 |   Waiting for ACK...
[   276] I=0238560 |   Got 983 bytes: HTTP/1.1 200 OK
Date: Wed, 21 Sep 2022 04:03:42 GMT
Server: Apache
Upgrade: h2,h2c
Connection: Upgrade
Vary: Accept-Encoding
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Transfer-Encoding: chunked
Content-Type: text/html; charset=UTF-8

2c0
update_content:<VERSION>Beta 11.1</VERSION><BUILD>220513b</BUILD><NEWS>Welcome to Cogmind BETA ACCESS!

Many thanks for your continued support of Cogmind! See the forum announcements for the full release notes and latest changelog.

Visit Discord, the forums, or r/Cogmind with any questions or to share your experiences with others. There are also some spoiler-free tips in the beginners survival guide in the manual.

Enjoy!


As of Beta 1, the world is complete, as is the story with all seven different endings.

The latest Beta 11 is a comprehensive rebalancing and mechanics overhaul, including many new items and other major features like the Heavy class, cargo convoys, and DSF maps.</NEWS></END>
0


[   276] I=0238560 |   POST succeeded
[   276] I=0238561 |   Closing socket...
[   276] I=0238561 \---DONE
****************************************************
*** A Programm Fault occured:
*** Error code C0000005: ACCESS VIOLATION
****************************************************
***   Address: 004595AA
***     Flags: 00000000
****************************************************
*** CallStack:
****************************************************

  Fault Occured At $ADDRESS:004595AA
         with A0 FA 31 00 30 AD 4E 01 C0 FA 31 00

***  0 called from $ADDRESS:0089C999
         with 01 00 00 00 02 00 00 00 FF FF FF FF 76 79 41 00

***  1 called from $ADDRESS:004DF4EA
         with 02 00 00 00 01 00 00 00 00 00 00 00 B0 FA 31 00 68 0F C1 00

***  2 called from $ADDRESS:00424383
         with 7C FE 31 00 28 6D 6B 1A D8 5B 7A 04 07 00 00 00 D8 0B 4D 01

***  3 called from $ADDRESS:008BE1BB
         with 01 00 00 00 60 FE 31 00 00 00 40 00 43 4F 47 4D 49 4E 44 00

***  4 called from $ADDRESS:009A6D45
         with 01 00 00 00 60 FE 31 00 71 FE 31 00 00 00 00 00 01 00 00 00

***  5 called from $ADDRESS:009A6DFE
         with 00 00 40 00 00 00 00 00 98 6A 11 00 0A 00 00 00 10 C7 8A 24

***  6 called from $ADDRESS:009A5E63
         with 00 E0 FD 7F D7 72 C5 7B D7 72 C5 7B 00 E0 FD 7F

***  7 called from $ADDRESS:7B62DBC0
         with 00 E0 FD 7F 00 E0 FD 7F 00 00 00 00

***  8 called from $ADDRESS:7BC572D7
         with B0 DB 62 7B A6 5F 9A 00 00 E0 FD 7F A0 16 C7 7B A6 5F 9A 00

***  9 called from $ADDRESS:7BC57520
         with

*** 10 called from $ADDRESS:00000000
************************************************************
« Last Edit: September 20, 2022, 10:09:56 PM by needausername »
Logged

Luigi

  • Derelict
  • **
  • Kyzrati Patron
  • Posts: 25
  • Numba one numba two
    • View Profile

Hanging on boot is normal -- it takes up to 5-10 minutes to load without my performance mod for loading times on M1/M2.

Check out the forum link in my first post and install the loading time and OpenGL mods for best performance.



EDIT: I've attached the loading times mod to this post so you don't have to go hunting. Extract the zip and overwrite the DLL files in the Cogmind folder with the contents of the zip.
« Last Edit: September 21, 2022, 05:49:20 PM by Luigi »
Logged

needausername

  • Unaware
  • *
  • Posts: 6
    • View Profile

Sorry, I wasn't really clear in my post, but cogmind crashes after hanging for a few minutes. I attached the crash log from the game.

I was hoping to install the performance mods after I get it successfully booting.
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4304
    • View Profile
    • Cogmind

Based on your first edit, that particular log seems to show the game couldn't find files that should be in deeper directories. I've seen this happen when the archive wasn't unpacked normally / did not obey the internal folder structure.

For example that last line there
Quote
data/maps/encounters/encounters.xd | Error in line 4: ENC_MAT_STORAGE_STORAGE unable to find related prefab "MAT_storage_storage.x"%
is expecting to find the "MAT_storage_storage.x" in Cogmind's "data/maps/encounters" directory. Do you see that file there? (presumably along with hundreds of other files, actually)

(if you do see the files then the issue must instead be something on the wine side of things not looking deep enough or having some issue with file paths, but I don't know about that stuff, I've just definitely seen wine users who hadn't unpacked the archive correctly before, so pointing out the one possibility I am familiar with here xD)
« Last Edit: September 21, 2022, 06:59:48 PM by Kyzrati »
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

needausername

  • Unaware
  • *
  • Posts: 6
    • View Profile

The file is there - just checked. I unzipped the download with MacOS and then `mv`'d it into the wine directory.

The first error I posted occurs when I run the wine command from ~. The crash.log file is created in ~, which I thought was strange, so I ran the wine command from the same directory the executable is in. That causes the second error, which is a segfault, I think. This time the crash.log is in the cogmind directory:

Code: [Select]
[   276] I=0238560 |   POST succeeded
[   276] I=0238561 |   Closing socket...
[   276] I=0238561 \---DONE
****************************************************
*** A Programm Fault occured:
*** Error code C0000005: ACCESS VIOLATION

It looks like it occurs right after some HTTP stuff, but I don't know what to make of that.
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4304
    • View Profile
    • Cogmind

Nah the HTTP stuff is unrelated, it just happens to be the last proper thing which is explicitly logged there (checking to see if there's news from the server about game version).

Looking at the data, the actual crash could maybe be something to do with the audio system trying to be unmuted when the app regains focus, which normally isn't an issue for most startups, but if yours is taking especially long, then perhaps that could be a problem??? This is something you might be able to test, actually. One method would be to start it up and make sure to not leave the app/wine/whatever to use OS or some other software, just wait, but perhaps a more user-friendly method to start with is to, as long as you already have a user/advanced.cfg file in there, change the "muteAudioOnFocusLoss" setting to 0 before starting up. See if that helps! (if it does work in that case then this might have actually discovered a bug I never knew about...)
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

Luigi

  • Derelict
  • **
  • Kyzrati Patron
  • Posts: 25
  • Numba one numba two
    • View Profile

I've noticed that bugs emerge in Cogmind under M1 macOS wine when the application is in "True Fullscreen" mode (which I think is default) and one Cmd+Tabs out to use other applications.
I suggest waiting the 5-10 minutes (or 8 seconds with my mod) without moving focus away from Cogmind like Kyzrati suggests, and then changing that option under settings (press ESC -> 4 -> B -> A or C, possibly after choosing a difficulty level).
Windowed mode works and borderless fullscreen lets macOS manage the window like other normal fullscreen applications. You may need to restart the app once after setting borderless fullscreen if it gets misaligned.


EDIT: I was able to reproduce the crash in an M1 virtual machine and can confirm Kyzrati's advanced.cfg change works to prevent the crash.
« Last Edit: September 22, 2022, 09:21:58 AM by Luigi »
Logged

needausername

  • Unaware
  • *
  • Posts: 6
    • View Profile

I can confirm as well that both waiting without changing focus, as well as disabling that option (which allowed me to change focus during loading) fixed the issue for me.

Thank you both very much for your help with this! I'm going to install those performance mods now...
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4304
    • View Profile
    • Cogmind

Glad you've got it working! Sorry for the troubles, but it should hopefully be worth many many more hours of enjoyment :)

I think I'll need to do some testing and make some adjustments as a result of this, so thanks for the feedback.

(And many thanks to Luigi, as usual, for lending a hand with the Mac side of things <3)
« Last Edit: September 22, 2022, 04:03:58 PM by Kyzrati »
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

bm5k

  • Unaware
  • *
  • Posts: 1
    • View Profile

Using Whisky.app, beta12 more or less "just works" on my 2021 M1 MBP 13"

I set
Code: [Select]
muteAudioOnFocusLoss=0 in user/advanced.cfg

The first launch took ~9 minutes; after that I installed the SDL & startup mods in the linked post.

Quote
Whisky is built on top of CrossOver 22.1.1, and Apple's own Game Porting Toolkit.

https://github.com/Whisky-App/Whisky
Logged