depends on what type of hack you're doing.
most things here are gba hacks, or gbc hacks, but there are some nds stuff I think.
and further whether you're doing a binary hack, or making a decomp project.
They require different tools.
if you're in binary then you need to use the programs made for the job, i.e advance map, xtreme script editor, etc.
if you're doing decomp then its just about having an app that'll let you open and edit code, and knowing the programming language.
I'm guessing using decomp is more in line with your question though, as its not so dependent on a certain OS.