Run NESMaker on Linux

davidpgil

Member
NESMaker currently runs[0] on Linux. You need to install the Mono Runtime first.

In the terminal type:
sudo apt-get install mono-complete

Then unzip the NESMaker.zip archive into a folder. Navigate to that folder in the terminal and type": [1]
mono NESMaker_4_0_0.exe

NESMaker will then fail to operate correctly because it can't find DNA.dll [2]. However, the following error will display:

Unhandled Exception:
System.DllNotFoundException: DNA.dll
at (wrapper managed-to-native) softworkz.DNA:DNA_SetCDMPathName (string)
at MysticSearchesTool.MysticSearchToolMainDialog.VerifyDNACert () <0x40d0fb30 + 0x0004b> in <filename unknown>:0
at MysticSearchesTool.MysticSearchToolMainDialog..ctor () <0x40ca6cf0 + 0x003ab> in <filename unknown>:0
at (wrapper remoting-invoke-with-check) MysticSearchesTool.MysticSearchToolMainDialog:.ctor ()
at MysticSearchesTool.Program.Main () <0x40c5fd90 + 0x0002f> in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.DllNotFoundException: DNA.dll
at (wrapper managed-to-native) softworkz.DNA:DNA_SetCDMPathName (string)
at MysticSearchesTool.MysticSearchToolMainDialog.VerifyDNACert () <0x40d0fb30 + 0x0004b> in <filename unknown>:0
at MysticSearchesTool.MysticSearchToolMainDialog..ctor () <0x40ca6cf0 + 0x003ab> in <filename unknown>:0
at (wrapper remoting-invoke-with-check) MysticSearchesTool.MysticSearchToolMainDialog:.ctor ()
at MysticSearchesTool.Program.Main () <0x40c5fd90 + 0x0002f> in <filename unknown>:0

c27abdab7060c11a.png


[0] It runs but as of 8/12/2018 doesn't not activate.
[1] Replace NESMaker_4_0_0.exe with the NESMaker execuatable name, which may be different than NESMaker_4_0_0.exe.
[2] I will update this tutorial once Linux compatibility is fixed/ added.
 

darkhog

New member
While I'm not on Linux at the moment, it may be worth a try to install wine, then install Windows version of .NET framework and try running NM through Wine itself.
 

davidpgil

Member
darkhog said:
While I'm not on Linux at the moment, it may be worth a try to install wine, then install Windows version of .NET framework and try running NM through Wine itself.

I appreciate your response but, my past experience with WINE has been that it creates a mess. I don't want to use it at all. I use Linux as my main OS. I don't want to compromise if NESMaker already sort of works with the Mono Runtime. I am trying to get an answer from the devs about this at the moment.
 

darkhog

New member
I've looked into DNA.dll and sadly it's a native, windows DLL. So without wine it's a probably no-go. If it was a managed DLL, then maybe. And I agree, Wine often creates a mess (it's an implementation of WinAPI which is a mess itself, after all), but sometimes that mess is needed to get certain applications to run.
 

davidpgil

Member
darkhog said:
I've looked into DNA.dll and sadly it's a native, windows DLL. So without wine it's a probably no-go. If it was a managed DLL, then maybe. And I agree, Wine often creates a mess (it's an implementation of WinAPI which is a mess itself, after all), but sometimes that mess is needed to get certain applications to run.

I'd rather just not use NESMaker if that's the case. Its 2018 - Why can't there be some thought about being cross platform? There are apps like Mesen[0] that have a full debugger, assembler, etc that are cross platform. I think its probably not too much effort to get the DLL be cross platform.

[0] https://mesen.ca/
 

dale_coop

Moderator
Staff member
Why not using a Windows virtual machine?
(I am a Mac user, and seem like you... can't use NESMaker on my native system. So I use it in a virtual machine)
 

davidpgil

Member
dale_coop said:
Why not using a Windows virtual machine?
(I am a Mac user, and seem like you... can't use NESMaker on my native system. So I use it in a virtual machine)

I actually do have Windows 7 via virtual machine using virt-manager on Linux. However, I only use it when I absolutely need to. Right now in order for me to make a NES game I don't need NESMaker.

I might change my mind later, but I want to ask the devs about Linux compatibility first. I'd be happy to help them out.
 

dale_coop

Moderator
Staff member
Linux (or mac) is not their priority right now. There still a lot to code to NESMaker (other modules) and fix all the small issues.
Their planning is full until Xmas :p

Yes, until recently, my Win7 VM was only for necessary tools (for my work, mainly)... but since I try NESMaker, my VM is now always running :°(
 

davidpgil

Member
dale_coop said:
Linux (or mac) is not their priority right now. There still a lot to code to NESMaker (other modules) and fix all the small issues.
Their planning is full until Xmas :p

Yes, until recently, my Win7 VM was only for necessary tools (for my work, mainly)... but since I try NESMaker, my VM is now always running :°(

OK, thats fine. I will just learn to create NES games "manually" until then. I actually find the hand coding part fun and interesting anyway.

By the way, do you know when the Kazzo hardware will be released? I don't do Facebook either ...

Also... I know I may seem to be rigid or difficult about these things, but I tell you from experience that there is no worse feeling than having your creativity taken hostage by these companies... Adobe betrayed me with Creative Cloud, Google with GMail, Facebook, etc... the list goes on. Real creative freedom comes from using Free and Open software... I just love Nintendo so much I am willing to support this project, but really I just want to have fun with the learning process with creating NES games from scratch. I don't expect anyone to care, but I do feel I need to explain where I am coming from. I think most people, especially younger people won't understand.
 

dale_coop

Moderator
Staff member
I understand your feelings.
One day, it will be compatible Linux/Mac (really cross platform). But today, is too soon, NESMaker is young (you will see if you have the opportunity to try), it's far from perfect, a lot of mistakes, rough edges... it really needs time, 1 year or 2 before begin solid. And might be cross platform.
I know Josh think about a cross platform NESMaker (and Joe is a mac user... so HE would love that too).

So wait and see... meanwhile, just tests time to time, with a old Win7 VM ;)
 

davidpgil

Member
dale_coop said:
I understand your feelings.
One day, it will be compatible Linux/Mac (really cross platform). But today, is too soon, NESMaker is young (you will see if you have the opportunity to try), it's far from perfect, a lot of mistakes, rough edges... it really needs time, 1 year or 2 before begin solid. And might be cross platform.
I know Josh think about a cross platform NESMaker (and Joe is a mac user... so HE would love that too).

So wait and see... meanwhile, just tests time to time, with a old Win7 VM ;)

Thank you for your understanding. Actually, right now I am doing Nerdy Nights 4 [0] and I am using NESASM for Windows and a build of NESASM [1] for Linux. I am first doing the tutorial on WIndows 7 with FCEUX [2] then after I get a correct result I try to duplicate it on Linux (I use Trisquel [3]) using Mesen [4]. Its a bit of a pain, but I have a nice little learning process going here learning at a nice cozy pace. I may try NESMaker some time after this Nerdy Nights tutorial to see if I even like it.

[0] http://nintendoage.com/forum/messageview.cfm?catid=22&threadid=6082
[1] https://github.com/camsaul/nesasm
[2] https://github.com/TASVideos/fceux
[3] https://trisquel.info/en
[4] https://github.com/SourMesen/Mesen
 

dale_coop

Moderator
Staff member
Congrats, you can follow the Nerdy Nights ... I tried, I couldn't go far.
With NESMaker, and Joe's videos, I learnt easily and quickly with examples in NESMaker. (I could come back to Nerdy Nights, and try again, in some months maybe ;))
 

Mihoshi20

Member
Good to know someone is looking into this as I haven't had the time to try it out in WINE or PlayOnLinux yet. There's a new 32-bit DLL out now for the DNA.dll file you can try out and see if that changes the chances of it finding it.
 

davidpgil

Member
Mihoshi20 said:
Good to know someone is looking into this as I haven't had the time to try it out in WINE or PlayOnLinux yet. There's a new 32-bit DLL out now for the DNA.dll file you can try out and see if that changes the chances of it finding it.

I have tried this 32-bit DLL and it doesn't work on Linux for me.
 

Mihoshi20

Member
davidpgil said:
Mihoshi20 said:
Good to know someone is looking into this as I haven't had the time to try it out in WINE or PlayOnLinux yet. There's a new 32-bit DLL out now for the DNA.dll file you can try out and see if that changes the chances of it finding it.

I have tried this 32-bit DLL and it doesn't work on Linux for me.

Hmm, well drats as I was hoping for some success before I gave it a go as I'd also tried ReactOS with no success. I'd really like to work in NESmaker without the M$ ball and chain.
 

davidpgil

Member
Mihoshi20 said:
davidpgil said:
Mihoshi20 said:
Good to know someone is looking into this as I haven't had the time to try it out in WINE or PlayOnLinux yet. There's a new 32-bit DLL out now for the DNA.dll file you can try out and see if that changes the chances of it finding it.

I have tried this 32-bit DLL and it doesn't work on Linux for me.

Hmm, well drats as I was hoping for some success before I gave it a go as I'd also tried ReactOS with no success. I'd really like to work in NESmaker without the M$ ball and chain.

Good to know that you tried ReactOS [0]. It was definitely on my mind.

[0] https://reactos.org/
 

Mihoshi20

Member
Due to current life constraints I haven't been able to mess around with NESmaker though I've picked back up interest in it lately or tinker with some concept ideas. I haven't done much experimenting though with getting it to run in Linux through various means and though I'd love to see a Linux or full multi-platform version it seems stuck in the M$ dungeon for now as far as I'm aware.
 
Top Bottom