Language…
10 users online:  Atari2.0, DanMario24YT, eltiolavara9, Fozymandias, Maw, prisvag, Red2010, Serena, Shomi, steelsburg - Guests: 287 - Bots: 278
Users: 64,795 (2,375 active)
Latest user: mathew

SMW Hacking on other Operating Systems

As we all know, most of the focus on the SMW hacking community is on Windows, and, as such, most of the tools are written for Windows. The purpose of this thread is to let people using other operating systems (i.e., Linux and Mac OS X) see which tools they can use. Note that I haven't tested every tool on every OS, so it'd be helpful if others would post with corrections and additional info.

NOTE: For .NET applications, you can either install .NET through winetricks, OR install mono (preferred). If you choose to try mono, run programs through it just like you would with wine.

For those who are new to wine and such, here's how you run a program in wine:
Code
wine <program name>

So for example:
Code
wine Lunar\ Magic.exe

And for mono:
Code
mono <program name>

For example:
Code
mono Blocktool\ Super\ Deluxe.exe

(note that spaces can be escaped by placing a backslash before them, as seen in the above examples)

Linux


Tool Name Status Alternative(s)
Addmusic 4.05 Native (source) AddmusicM
AddmusicM Native (Perl) Addmusic 4.05
Asar Native (source) xkas
Assembler Wrapper Native (python) None
Blocktool Super Deluxe Doesn't run None
Floating IPS Native (source) Lunar IPS, Lunar Magic
Free Space Logger (slogger) Mono None
Cluster Sprite Tool Native (source) None
Lunar IPS Wine Floating IPS, Lunar Magic
Lunar Magic Wine None
Overworld Sprite Tool Native (source) None
SampleTool Mono None
Sprite Tool (Romi's) Native (source) None
Status Bar Editor Doesn't run Status Effect
Status Effect Native (Python) None
Terra Stripe Mono Racing Stripe
Tweaker Wine None
xkas Native (p4plus2's version) Asar
YY-CHR Wine None


Mac OS X


(Thanks to E-Man for helping out with this section)
Tool Name Status Alternative(s)
Addmusic 4.05 Native (source) AddmusicM
AddmusicM Native (Perl) Addmusic 4.05
Asar Native (source) xkas
Assembler Wrapper Native (python) None
BlockTool Super Deluxe Mono None
Cluster Sprite Tool Native (source) None
Floating IPS Native (source) Lunar IPS, Lunar Magic, MultiPatch
Free Space Logger (slogger) Mono None
Lunar IPS Wine Floating IPS, Lunar Magic, MultiPatch
Lunar Magic Wine None
Maxkas Native xkas
Overworld Sprite Tool Native (source) None
Racing Stripe Doesn't run None
SampleTool Mono None
Sprite Tool (Romi's) Wine None
Status Bar Editor Doesn't run Status Effect
Status Effect Native (Python) Status Bar Editor
Terra Stripe Mono Racing Stripe
Tweaker Wine None
xkas Native (p4plus2's version) Asar
YY-CHR Wine None
Heh, I'm glad someone has started to get this up and running, it'll most certainly be nice for people that wanted to rom hack on their Linux Distro or on their Mac. Since I run most of what I do off of a Mac (with exception to rom hacking) I'll get a couple things tested out using Wine. I'll edit this post with a table (or a link to an HTML file) once I get everything tested out.

A couple things that I know that do work are most of the Lunar Applications, that is so long as they use Wine Bottler. An alternative to to LIPS would be UIPS. It was removed from the tools section when I submitted it; however it should work when it comes to patching IPS files.
AnimeList | MangaList
If you have any alternatives that aren't on SMWC, we can always link to them. Also, I'm glad I'm not the only one that finds something like this useful. I'll be awaiting your info! :D
Actually, xkas can be compiled from source, it just needs edited. With some very minor tweaking I was able to get it to work, here's my source and compiled binary. To compile, just run "g++ xkas.cpp -o xkas" and it gives you a fully functioning xkas.
Excellent!

I'm working on a small thumb drive distro; boot into it for a SMW hacking toolchain. Perfect for people with nosy parents or people who switch computers a lot. The native xkas will come in handy.

I tried compiling on Xubuntu 10.04, it doesn't seem to work. It gives a massive backtrace and the compiler logs barf with decapitated items.
layouts suck
I tested both the precompiled binary there and compiled the source; it seems to work perfectly both times. There were many warnings upon compilation, but no errors, so it still worked. I'll add that into my post, but why not submit that to the Tools section?

Edit: Also, HFD, I'm having issues running Status Effect from the source...Any help you can offer? I have the three requirements installed.

Edit2: I also just tested running the EXE in wine...No luck there.
Updated with Translhextion and changed the status of Status Effect running natively to unknown. It's written in python, so it should work, but I wasn't able to get it running. If someone else out there can verify that it works, then I'll be happy to change it.
Personally, I've never used it. I needed an alternative to Translhextion, though, so I did a quick search. Bless looks good, is similar to Translhextion from what I can tell, and has favorable reviews, so I picked it.
Try HxD. I used Translhextion first, and then I found I liked XVI32 better (mostly), but now that I've found HxD, I'll never go back to either.

Also, should Tessera go on there? What do you call it if a tool just requires path edits to work on Linux?

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
I needed something to list as a Linux alternative. And yeah, Tessera can be listed, but we should wait until it's officially released, shouldn't we? But you should probably do what I said on IRC, and make a special version for linux that changes xkas to ./xkas so it'll be more convenient (or else I can upload that fixed version once it's done).
If you but the xkas executable in your path (like /usr/bin or ~/bin), it will be like any other terminal command or app.
layouts suck
I'm pretty sure ./xkas works on Windows too.
Edit: Confirmed false with batch files. CreateProcess() may accept it, but that's not very portable either.
<blm> zsnes users are the flatearthers of emulation
Originally posted by Alcaro
I'm pretty sure ./xkas works on Windows too.


As you as you are in the current directory and xkas is there, yes. "." means the current directory, so you are basically doing /some/folder/that/contains/the/thing.

P.S: Kefka, you just need to run wine application for Windows Console apps, not wine cmd. Like wine ./thing.exe args
layouts suck
Oh, really? I always thought you had to do wine cmd...

And yeah, I know about the ./ thing. It's just that Tessera right now makes a call for "xkas" and linux will search in /usr/bin, /usr/sbin, /usr/local/bin, etc. instead of the current directory, and the chances of someone putting xkas in one of those folders are slim. Not as slim now that we have HFD's xkas that runs natively, as it would have been really weird to put an EXE there, but yeah.
Took me a while, but I've managed to test a fair bit of applications on my Mac. I tested a couple more applications; however at the same time I was able to test the applications that you already have up in the first post.

The one's that I could not test were the ones that required me to compile from source. I have no idea how to compile from source code on my Mac, so I'm out of luck there. :\

Oh, and a note on AddmusicM, I can only assume that AddmusicM would work through Wine on a Mac. However that would require me to install Perl ActiveState through Wine Tricks to test that, and to be honest I don't have the resources to do that. I can assume; however I don't know for a fact.

So without further ado, here you go K3fka (for convenience's sake it already works off of the original CSS styling):

Tool Runs in Wine Runs Natively Alternatives
Addmusic 4.05 Yes Unknown AddmusicM
AddmusicM Unknown Yes (Perl) Addmusic 4.05
BlockTool Super Deluxe Yes (requires .NET) No None
Cluster Sprite Tool Yes No None
Free Space Logger Yes (requires .NET) No FreezePace
FreezePace Yes (requires .NET) No Slogger
Lunar Address Yes No None
Lunar IPS Yes No Lunar Magic/UIPS
Lunar Magic Yes No None
Overworld Sprite Tool Yes No None
Racing Stripe No No None
Sample Tool Yes (requires .NET) No None
Sprite Tool (Romi's) Yes No None
Status Bar Editor No No Status Effect
Status Effect Unknown Unknown Status Bar Editor
Transhextion16c Yes No Hex Fiend
Terra Stripe Yes (requires .NET) No Racing Stripe
Tweaker Yes No None
xkas Yes Unknown None
yy-chr Yes No None
Sweet! Thanks a bunch! I'll merge that into the first post right away! Also, I can't believe I forgot to put YY-CHR into the Linux table...I'll fix that right away.

Also,
Originally posted by E-Man
Oh, and a note on AddmusicM, I can only assume that AddmusicM would work through Wine on a Mac. However that would require me to install Perl ActiveState through Wine Tricks to test that, and to be honest I don't have the resources to do that. I can assume; however I don't know for a fact.

Yeah, I put an Unknown for the linux version because of that. I don't know why someone would want to run Perl through Wine when it exists natively...
Gonna go ahead and sticky this thread because of its useful information.


I was going to do this a couple days ago, then forgot. :<
Well, "./xkas" certainly didn't work for me. I get some error about message number 0x2331. I remember having this problem before...something that should work didn't.

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
Like I suggested, we can just have a separate linux version that has
Code
$assembler = './xkas.exe'
Look at my file bin. I had an IPS patching tool written with C#/Mono and GTK. It's based off IPS patching code I found on the central.

Just run mono Patchr.exe in the executable dir to use. Takes no command line parameters. ;)
layouts suck