Skip to content

C64Studio 7 on Linux using mono #56

Description

@johanberntsson

I've tried to get C64Studio running on Ubuntu 20.04. There are some copy problems in C64Studio.csproj, but they are easily fixed ny adding
cp $(TargetDir)C64Studio.exe $(SolutionDir)C64StudioRelease/$(TargetFileName)
cp $(TargetDir).dll $(SolutionDir)C64StudioRelease
rm -f "$(SolutionDir)C64StudioRelease/BASIC Dialects/
"
cp $(ProjectDir)BASIC?Dialects/* $(SolutionDir)C64StudioRelease/BASIC?Dialects

I can then build the program. However, when I run it I get

System.TypeInitializationException: The type initializer for 'GR.Image.DPIHandler' threw an exception. ---> System.EntryPointNotFoundException: GetDeviceCaps assembly: type: member:(null)
at (wrapper managed-to-native) GR.Image.DPIHandler.GetDeviceCaps(intptr,int)
at GR.Image.DPIHandler..cctor () [0x00029] in /home/johan/commodore/C64Studio/Common/Common/DPIHandler.cs:29
--- End of inner exception stack trace ---
at C64Studio.OutputDisplay..ctor () [0x0000d] in /home/johan/commodore/C64Studio/C64Studio/Documents/OutputDisplay.cs:13
at (wrapper remoting-invoke-with-check) C64Studio.OutputDisplay..ctor()
at C64Studio.MainForm..ctor (System.String[] args) [0x00000] in /home/johan/commodore/C64Studio/C64Studio/MainForm.cs:27
at (wrapper remoting-invoke-with-check) C64Studio.MainForm..ctor(string[])
at C64Studio.Program.Main (System.String[] args) [0x00023] in /home/johan/commodore/C64Studio/C64Studio/Program.cs:28

It seems to be some problem when calling gdi32.dll, which is mapped to libgdiplus.so.0 (see /etc/mono/config), and this library is installed. I don't know much about mono and can't get further, but it would be nice if it could be patched to work on Linux.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions