(Link to AcmlmWiki) Offline: thank ||bass
Register | Login
Views: 13,040,846
Main | Memberlist | Active users | Calendar | Chat | Online users
Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album
04-29-24 12:18 PM
0 users currently in ROM Hacking.
Acmlm's Board - I3 Archive - ROM Hacking - Ok, how about clean room disassembly of Lunar Magic? New poll | |
Pages: 1 2 3Add to favorites | Next newer thread | Next older thread
User Post
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6279 days
Last view: 6279 days
Posted on 01-31-06 06:01 PM Link | Quote
Hardly anyone seems to care for reimplementing the greatest SMW editor from scratch, so here's another thought: Clean-room disassembly of Lunar Magic.

What is clean room? It's how we can legally (at least in the USA) disassemble Lunar Magic and use that. In short, we have a group of people that volunteer to only disassemble Lunar Magic, and then document what it does. Then we have a group of people that volunteer to only implement into some source code (C++, whatever) a program based on the disassembly.

Advantages: Faster understanding of Super Mario World inner-workings, faster development of an editor.
Disadvantages: Possibly also becoming dependent on a bad Super Mairo World dump (extra 512 bytes at the beginning), possible endian issues.

alright a table should be set for anyone who volunteers (let's hope my HTML memories serve me well)


Disassemblers, DocumentersRe-implementers



(edited by FreeDOS on 02-07-06 03:19 PM)
(edited by FreeDOS on 02-07-06 04:45 PM)
MathOnNapkins

1100

In SPC700 HELL


 





Since: 11-18-05

Last post: 6279 days
Last view: 6279 days
Posted on 01-31-06 06:08 PM Link | Quote
No offense,but I think you'd probably get faster results just by attempting to write your own editor. Unless, of course, you have a great understanding of x86 assembly already. JEEZ I GUESS SOURCE CODE WOULD BE TEH HELPFUL EH?

Also, the 512 bytes at the beginning is just a copier header, I'm thinking. That doesn't mean it's a bad dump.
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6279 days
Last view: 6279 days
Posted on 01-31-06 06:11 PM Link | Quote
Perhaps but it's annoying to do dd if=/dev/zero of=smw4lm.smc count=512;cat "Super Mario World (U) [!].smc" >> smw4lm.smc just to open it in Lunar Magic (which I have to run via Wine, so there's some rendering errors )


(edited by FreeDOS on 01-31-06 05:11 PM)
(edited by FreeDOS on 01-31-06 05:11 PM)
MathOnNapkins

1100

In SPC700 HELL


 





Since: 11-18-05

Last post: 6279 days
Last view: 6279 days
Posted on 01-31-06 07:21 PM Link | Quote
uh... I don't know if that's a Linux shell command or what... no idea really. But based on my best guess, I'm saying it's temporarily adding 512 bytes to your copy of the rom at runtime? If so, just take a hex editor and insert 512 "00" bytes at the start. Easy fix.
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6279 days
Last view: 6279 days
Posted on 01-31-06 07:35 PM Link | Quote
Unix shell in general. It's only temporary if you delete smw4lm.smc, and it's not just during "runtime", it's permanent.

Sure it can be done via a hex editor, but the command is faster IMO.
Kailieann



 





Since: 11-18-05

Last post: 6279 days
Last view: 6279 days
Posted on 01-31-06 07:38 PM Link | Quote
There's a reason LM won't work on ROMs that don't have a header.

Namely, most ROMs do.
Before the reset, FuSoYa flat-out refused to make LM compatible with headerless ROMs, simply because of the havoc that would be wrought when someone tried to apply a patch for a headerless ROM to a headered ROM or vice-versa.
case in point.

And while I understand why some people aren't overly fond of headers, they still exist on about 99% of all distributed ROMs. So unless you plan on devising a new patching format that will work regardless of whether or not the ROM has a header and crossing your fingers in the hope that it will become the new standard for ROM patches everywhere, just -- as MathOnNapkins suggested -- use a hex editor to insert x200 bytes at the head of the ROM and be done with it.
Techokami

Porcupo








Since: 12-03-05
From: Mass-uh-chew-sits USofA

Last post: 6294 days
Last view: 6280 days
Posted on 01-31-06 09:58 PM Link | Quote
Originally posted by MathOnNapkins
No offense,but I think you'd probably get faster results just by attempting to write your own editor. Unless, of course, you have a great understanding of x86 assembly already. JEEZ I GUESS SOURCE CODE WOULD BE TEH HELPFUL EH?

FuSoYa knows more about the inner working of SMW better than anyone else, and he absolutely refuses to release all his info, nor make an Open Source Lunar Magic. I've asked before, he flamed me because of it ._.
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6279 days
Last view: 6279 days
Posted on 01-31-06 10:35 PM Link | Quote
Well what kind of header is composed of zeroed data?
So what if you're average found-on-google site has this type of ROM. It's likely bad in some other place as well. The "header" things just doesn't make any sense.
Koitenshin +∞

Moblin


 





Since: 12-24-05
From: Misery

Last post: 6282 days
Last view: 6282 days
Posted on 01-31-06 11:34 PM Link | Quote
Actually about that new patching format isn't that already implemented in NINJA?
MathOnNapkins

1100

In SPC700 HELL


 





Since: 11-18-05

Last post: 6279 days
Last view: 6279 days
Posted on 02-01-06 05:52 AM Link | Quote
Originally posted by FreeDOS
Well what kind of header is composed of zeroed data?
So what if you're average found-on-google site has this type of ROM. It's likely bad in some other place as well. The "header" things just doesn't make any sense.


Emulators and general don't rely on info from the header to generate gameplay, as far as I know. They just provide some very simple information, almost all of which is likely already embedded in the rom itself (things like SRAM size, the ROM size, FastROM designation, etc.) Look around the $7E00 region (ish) and things like the game title, publisher, etc, should be there. Of course you'll have to read a document to know how to decipher some of it.

See, I personally don't care about copier headers at all, so zeroed data suffices to just provide that file size adjustment to make ips patches work. Unless someone writes a program that is hardcoded to read critical data from there, they really don't matter. If you actually have a FIG/SMC/SWC, zeroed data is probably a bad idea to insert :x.

edit: @Techokam - My comment was not directed at Fu, but rather as a case-in-point of the debate going on in the open source thread in the Normal Romhacking forum right now. I certainly respect FuSoYa's whishes to not release his source, that is his business. But there's no denying that it would be helpful to have for any serious SMW hacker.


(edited by MathOnNapkins on 02-01-06 04:55 AM)
blackhole89
Moronic Thread Bodycount: 17
(since 2006-08-21 09:50 EST)
F5 F5 F5 F5 F5


 





Since: 12-31-69
From: Dresden/SN/DE

Last post: 6281 days
Last view: 6279 days
Skype
Posted on 02-01-06 05:14 PM Link | Quote
Why are people so obsessed with "develop LM further!" "redo it!" "make another SMW editor!" all the time?

ROM headers? If you can't add a 512 bytes in front of a ROM, you probably should reconsider pretending to be a ROM hacker.

Add more features/integrate feature XY with it? What'd that be good for? Again, LM brings all functions really necessary with it. It does what it is supposed to do, and not more. It is enough to motivate newbies for ROM hacking. Anything more would just mean more unskilled asshats going "ZOMFG LOOK! I AM TEH GRAET H4X0RZ! BOW BEFORE MY SKILLZ!" for clicking three buttons to autogenerate what seems a great hack to them. If you are a halfways decent hacker, using multiple tools really shouldn't be a problem to you. I personally prefer a tool with a somewhat limited functionality that covers the basics well, thus guaranteeing a good workflow without having an uncontrollable amount of features - and I think many people share my opinion. Also, I seriously fear for the "hack value" remaining to SMW if things like basic HDMA control routines or custom sprites make their way into an "idiot-proof" editor - it might lead to some of the better hackers leaving simply for being not enough of a challenge anymore.

Request it to become open source? I'd like to know how many of you would like to make a project you spent years on entirely public. As in, I'm really curious.

Also, leave my sweet ROM headers alone. No way they are as bad as some make them, and agitative actions to reduce their popularity tend to backfire (I dare say the ROM header holocaust played a certain role in Chrono Trigger hacking not becoming quite popular) anyway. I will release my hacks with headers in future as well, as I don't see any reason not to (au contraire, the more people try to holocaust them by causing inconvenience to those who work with them - *cough*Geiger*cough* -, the more I am tempted to release tools that refuse to work with non-headered ROMs).
Techokami

Porcupo








Since: 12-03-05
From: Mass-uh-chew-sits USofA

Last post: 6294 days
Last view: 6280 days
Posted on 02-01-06 05:23 PM Link | Quote
Originally posted by blackhole89
Request it to become open source? I'd like to know how many of you would like to make a project you spent years on entirely public. As in, I'm really curious.
I would, definately. With open source, porting can become possible. That's why everyone is wanting to make an open source LM-like program; so people who don't use Windows can hack SMW as well.

And don't suggest WINE, it has many rendering problems with Lunar Magic, is slow, and doesn't support the obscure API calls FuSoYa extensively used.
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6279 days
Last view: 6279 days
Posted on 02-01-06 05:25 PM Link | Quote
How about the fact that with source, you can use the operating system of your choice to hack SMW?

Sure Wine works well enough, but only on x86 machines. Wine isn't a CPU/PC emulator, just an ABI one. How about if you're bored during a lunch break and you want to hack SMW for fun on the nice Solaris/SPARC workstation they have at work? Whoops, FuSoYa doesn't make it so you can.

sheer portability should be enough reason to have a free open source SMW editor.
Techokami

Porcupo








Since: 12-03-05
From: Mass-uh-chew-sits USofA

Last post: 6294 days
Last view: 6280 days
Posted on 02-01-06 05:30 PM Link | Quote
Originally posted by FreeDOS
How about the fact that with source, you can use the operating system of your choice to hack SMW?

Sure Wine works well enough, but only on x86 machines. Wine isn't a CPU/PC emulator, just an ABI one. How about if you're bored during a lunch break and you want to hack SMW for fun on the nice Solaris/SPARC workstation they have at work? Whoops, FuSoYa doesn't make it so you can.

sheer portability should be enough reason to have a free open source SMW editor.

I agree with everything here except the WINE bit.
*Techokami wants to force FreeDOS to use Lunar Magic on WINE for a few hours on a Linux system
FreeDOS +

Giant Red Koopa
Legion: freedos = fritos








Since: 11-17-05
From: Seattle

Last post: 6279 days
Last view: 6279 days
Posted on 02-01-06 05:44 PM Link | Quote
(Note that the spelling is no longer WINE, it's now Wine)

I already have... and as I said, it works well enough to get the job done, but it's far from an effective solution. Then of course there's the fact that LM is compiled for x86 so you must use Wine on an x86 machine to run LM.

No one was interested in actually helping development of an editor from scratch. And off the top of my head, I found a legal way to disassemble Lunar Magic and use that (indirectly).

And just for technical legal reasons, this requires at least two people (at least in the United States, other countries allow one man to do both the documentation and the re-implementation, but a one-man effort cannot be imported into the USA so following US' laws allows the whole world to benifit without excluding some countries)
Techokami

Porcupo








Since: 12-03-05
From: Mass-uh-chew-sits USofA

Last post: 6294 days
Last view: 6280 days
Posted on 02-01-06 05:53 PM Link | Quote
Well, I could help out with part of this
Anything to make Lunar Magic run on Linux WITHOUT Wine...
Dan

Purple Leever


 





Since: 11-18-05

Last post: 6288 days
Last view: 6279 days
Posted on 02-01-06 06:52 PM Link | Quote
Originally posted by blackhole89
Also, leave my sweet ROM headers alone. No way they are as bad as some make them, and agitative actions to reduce their popularity tend to backfire (I dare say the ROM header holocaust played a certain role in Chrono Trigger hacking not becoming quite popular) anyway. I will release my hacks with headers in future as well, as I don't see any reason not to (au contraire, the more people try to holocaust them by causing inconvenience to those who work with them - *cough*Geiger*cough* -, the more I am tempted to release tools that refuse to work with non-headered ROMs).


I don't think the fact that Temporal Flux removes headers has anything to do with Chrono Trigger hacking not quite popular. More the fact it takes a while to do anything with a complex game such as Chrono Trigger.
HyperHacker

Star Mario
Finally being paid to code in VB! If only I still enjoyed that. <_<
Wii #7182 6487 4198 1828


 





Since: 11-18-05
From: Canada, w00t!
My computer's specs, if anyone gives a damn.
STOP TRUNCATING THIS >8^(

Last post: 6280 days
Last view: 6280 days
Posted on 02-03-06 04:00 PM Link | Quote
I've been working on a map editor of my own for a year or so, and I fully intend to publish the source when it's complete.

And like I said in the "let's make a new SMW editor" thread, it shouldn't be difficult to adapt that source to other games, including SMW. It already supports both tilemap and object-based level systems.
calcwatch
Newcomer


 





Since: 11-19-05
From: Silicon Valley

Last post: 6474 days
Last view: 6280 days
Posted on 02-06-06 05:21 AM Link | Quote
Originally posted by FreeDOS

How about if you're bored during a lunch break and you want to hack SMW for fun on the nice Solaris/SPARC workstation they have at work?

Wow, that's hardcore ... I'd love to see screenshots of ROM hacking in Solaris .

Originally posted by Techokami

Well, I could help out with part of this
Anything to make Lunar Magic run on Linux WITHOUT Wine...

I too could help with the C++ implementation and/or debugging on Linux. It sounds like fun!

I'm just a little concerned about the disassembly phase... I've worked a bit with x86 assembly, but only for simple programs, and not object-oriented ones, at that. I'm sure it's doable, but I don't know how many of us would be that capable and motivated. (I know I'm not.)

By the way, how much would have to be disassembled? I'm guessing the GUI, file I/O, etc. could all be redesigned, so that would leave...
- level rendering (enemies, objects, pointers, etc.)
- graphic decompression
- overworld editing
- text editing
- file locking (EDIT: Never mind... bad idea — See posts below)
- ...
(Feel free to add more; I know I'm forgetting stuff.)

Even if a group just managed to reverse engineer and recode the first two parts, we'd have a pretty decent start, right? (granted, those must be huge chunks of code )
Probably, someone should plan out everything that needs to be done first, and then take the reimplementation one small component at a time. That way, it'll become apparent early on how long the project could take, and if it gets abandoned before it's finished, it'll be easier for someone else to pick it up later.


(edited by calcwatch on 02-06-06 04:50 PM)
Techokami

Porcupo








Since: 12-03-05
From: Mass-uh-chew-sits USofA

Last post: 6294 days
Last view: 6280 days
Posted on 02-06-06 10:42 AM Link | Quote
calcwatch, I think file locking should be left out of the open source build, as FuSoYa would... come back from the dead to eat you :X
Pages: 1 2 3Add to favorites | Next newer thread | Next older thread
Acmlm's Board - I3 Archive - ROM Hacking - Ok, how about clean room disassembly of Lunar Magic? |


ABII

Acmlmboard 1.92.999, 9/17/2006
©2000-2006 Acmlm, Emuz, Blades, Xkeeper

Page rendered in 0.025 seconds; used 452.10 kB (max 584.16 kB)