Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Rom Hacking: hukka | 2 guests
Acmlm's Board - I2 Archive - Rom Hacking - FF1 re-assemblable disassembly | |
Pages: 1 2Add to favorites | "RSS" Feed | Next newer thread | Next older thread
User Post
Dish

Spiny
Level: 38

Posts: 65/596
EXP: 355646
For next: 14801

Since: 03-15-04
From: Disch

Since last post: 18 days
Last activity: 18 days
Posted on 05-23-04 10:21 PM Link | Quote
Yeah... so... I've decided to release this. It's just sitting on my HD and I'm not doing anything with it. So yeah...

http://www.geocities.com/disch_/FF1Src.zip (edit: do the right-click save-as thing)

Everything you need to re-assemble is included. Just be sure to read the readme or I'll slap you.


(edited by Disch on 05-23-04 01:22 PM)
Gavin

Fuzzy
Rhinoceruses don't play games. They fucking charge your ass.
Level: 43

Posts: 54/799
EXP: 551711
For next: 13335

Since: 03-15-04
From: IL, USA

Since last post: 13 hours
Last activity: 13 hours
Posted on 05-23-04 10:32 PM Link | Quote
just absolutely fantastic, this makes me happy to no end.

thanks disch bro
NightHawk

Bob-Omb
Level: 39

Posts: 107/621
EXP: 374743
For next: 30028

Since: 03-26-04
From: Switzerland

Since last post: 432 days
Last activity: 339 days
Posted on 05-23-04 10:54 PM Link | Quote
It's really invaluable for FF1 hacking.
My own hack started progressing much faster when Disch gave me that, so I can whole-heartedly recommend it for anyone interested in hacking FF1.
dormento

Shyguy
Level: 17

Posts: 19/99
EXP: 24075
For next: 668

Since: 03-15-04
From: Esteio - Brasil

Since last post: 182 days
Last activity: 161 days
Posted on 05-23-04 11:09 PM Link | Quote
Mr. Disch, i absolutely freakin love you

Onto the new age of rom hacking
drjayphd

Beamos
What's that spell?




pimp!
Level: 56

Posts: 305/1477
EXP: 1387410
For next: 10766

Since: 03-15-04
From: CT

Since last post: 2 hours
Last activity: 2 hours
Posted on 05-26-04 08:43 AM Link | Quote
\m/

Too bad I don't understand ASM very well... why couldn't you have commented on the parts I wanted to hack? Ah well, off to go find a 6502 tutorial...
Kefka
Indefinitely Unbanned
Level: 81

Posts: 2107/3392
EXP: 4826208
For next: 166641

Since: 03-15-04
From: Pomona, CALIFORNIA BABY!

Since last post: 4 hours
Last activity: 4 hours
Posted on 05-26-04 09:35 AM Link | Quote
I'm not focused on hacking FF anymore, but I must say, you have once again proven to be teh master hax0r of this game! I can recommend this to anyone without ever using it. The reason is because it's made by Disch! All his stuff's reliable! Hopefully my big project will be reliable too
interdpth

Rex
Level: 36

Posts: 46/527
EXP: 294398
For next: 13712

Since: 03-20-04

Since last post: 10 days
Last activity: 31 days
Posted on 05-26-04 10:15 AM Link | Quote
Ok i'm not an NES hacker but Damn, go Disch.
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 766/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 05-26-04 10:36 PM Link | Quote
You. PWN.

So, did you mark where to fix all them damn bugs, or do I have to do that myself? I've been planning a major hack of this game (keep the game the same but fix the bugs, improve the graphics, etc) and this will really help.
Kefka
Indefinitely Unbanned
Level: 81

Posts: 2128/3392
EXP: 4826208
For next: 166641

Since: 03-15-04
From: Pomona, CALIFORNIA BABY!

Since last post: 4 hours
Last activity: 4 hours
Posted on 05-26-04 11:46 PM Link | Quote
Originally posted by HyperHacker
You. PWN.

So, did you mark where to fix all them damn bugs, or do I have to do that myself? I've been planning a major hack of this game (keep the game the same but fix the bugs, improve the graphics, etc) and this will really help.


Didn't FFacelift do that? Or did that still have the bugs in it?
Kyoufu Kawa
I'm not bad. I'm just drawn that way.
Level: 70

Posts: 205/2481
EXP: 3008456
For next: 7355

Since: 03-19-04
From: Catgirl Central

Since last post: 14 hours
Last activity: 13 hours
Posted on 05-27-04 12:20 AM Link | Quote
I'm gonna use this as learning material for ASM coding. Y'see, I still suck at ASM.
Eternal Darkness

Micro-Goomba
Banned
Zero-tolerance policy on sigs like that
Level: 8

Posts: 11/16
EXP: 1465
For next: 722

Since: 05-26-04
From: England (exchange student)

Since last post: 522 days
Last activity: 339 days
Posted on 05-27-04 12:25 AM Link | Quote
Yes, it will help in my project as well . Thanks a million.
bbitmaster

Koopa
Level: 18

Posts: 3/103
EXP: 25264
For next: 4633

Since: 03-28-04
From: Knoxville, tTN

Since last post: 12 days
Last activity: 7 days
Posted on 05-27-04 07:22 AM Link | Quote
The ability to automatically do this for any rom is my ultimate goal for fceuxd....
HyperLamer
<||bass> and this was the soloution i thought of that was guarinteed to piss off the greatest amount of people

Sesshomaru
Tamaranian

Level: 118

Posts: 780/8210
EXP: 18171887
For next: 211027

Since: 03-15-04
From: Canada, w00t!
LOL FAD

Since last post: 2 hours
Last activity: 2 hours
Posted on 05-27-04 11:09 PM Link | Quote
...You realize that you need to know where every bit of data is to do that, right? You might be able to separate it with a very complicated code-tracing algorithm, but you should know how stupid NES games' programming tends to be.
Gavin

Fuzzy
Rhinoceruses don't play games. They fucking charge your ass.
Level: 43

Posts: 58/799
EXP: 551711
For next: 13335

Since: 03-15-04
From: IL, USA

Since last post: 13 hours
Last activity: 13 hours
Posted on 05-27-04 11:18 PM Link | Quote
Originally posted by HyperHacker
...You realize that you need to know where every bit of data is to do that, right? You might be able to separate it with a very complicated code-tracing algorithm, but you should know how stupid NES games' programming tends to be.


i'm fairly certain bbit knows what he's in for
bbitmaster

Koopa
Level: 18

Posts: 4/103
EXP: 25264
For next: 4633

Since: 03-28-04
From: Knoxville, tTN

Since last post: 12 days
Last activity: 7 days
Posted on 05-28-04 01:42 AM Link | Quote
Yes, I realize what it would take, and I have it all figured out and currently working on it. I've got the code tracing "algorthim" finished(Dahrkdaiz and disch can testify as to how well it works - they're my beta testers). I just need to do a couple other things before I work on the disassembler.

I don't like to talk much publically about anything I'm doing while its still so early in devolpment. But trust me, if this thing works the way I have it planned, it'll turn the scene upside down.

I am going to have extremely little time to work on it, with college coming up, so it might be a while before it is finished. Please don't ask when.
Acmlm

Torosu
heh
Level: 51

Posts: 629/1173
EXP: 981994
For next: 31944

Since: 03-15-04
From: Somewhere that isn't outside of Sherbrooke, Québec, Canada

Since last post: 39 days
Last activity: 3 hours
Posted on 05-28-04 08:07 AM Link | Quote
Yep, I tried it earlier today and it really works, the whole thing compiles into a working FF1 ROM This definitely makes ASM hacking a lot easier and more efficient (no more NOP+JSR'ing stuff and looking for unused bytes to put code in ), and also helps understanding how the game is coded ...

Being able to do this with every ROM would be great, I'd like a working SMB2 disassemble for example I've been working on a disassembled SMB2 NSF myself recently, so I can understand what every part does, and figure out how to replace it completely with my own music code in the ROM (which I've been able to do, just need to add the sound effects) ...
NightHawk

Bob-Omb
Level: 39

Posts: 131/621
EXP: 374743
For next: 30028

Since: 03-26-04
From: Switzerland

Since last post: 432 days
Last activity: 339 days
Posted on 05-28-04 10:45 AM Link | Quote
Originally posted by Acmlm
Yep, I tried it earlier today and it really works, the whole thing compiles into a working FF1 ROM This definitely makes ASM hacking a lot easier and more efficient (no more NOP+JSR'ing stuff and looking for unused bytes to put code in ), and also helps understanding how the game is coded ...
Hmmm?
Not exactly... the game loads pointers into memory that the debugger doesn't recognize (because it can only load 1 byte at a time, and pointers are 2 bytes), so you'll have to pay attention in some places to either have it load the addresses properly, or (the easier way if you're doing something "quick-n-dirty") you still have to pad things....

And as for understanding how it's coded... great, if you can figure out where the routine is for text in battle, let me know?
Parasyte

Bullet Bill
Level: 35

Posts: 16/514
EXP: 267348
For next: 12588

Since: 05-25-04

Since last post: 104 days
Last activity: 32 days
Posted on 05-28-04 11:07 AM Link | Quote
In "assembly source code" such as this, pointers are created using labels. They are not static numbers. Meaning the code is 100% relocatable. Adding or removing code is absolutely no problem. That is what differs this from any standard disassembly. It is the closest thing to the actual source code as you're ever likely to get.
Ultima4701
Newcomer
Level: 5

Posts: 3/7
EXP: 452
For next: 77

Since: 03-15-04
From: Florida

Since last post: 492 days
Last activity: 339 days
Posted on 05-28-04 04:08 PM Link | Quote
Labels are perhaps the most valuable part of the source lost in assembling; even moreso than comments. Having well-organized procedures usually allows for easy identification of what purpose any given piece of code does.

Labels can be "auto-regenerated" using numbers and generic names, but they lack the same usefulness.
Dish

Spiny
Level: 38

Posts: 72/596
EXP: 355646
For next: 14801

Since: 03-15-04
From: Disch

Since last post: 18 days
Last activity: 18 days
Posted on 05-28-04 10:28 PM Link | Quote
Actually... some code still has to be padded with this source, unfortunately. I couldn't get the indirect addressed labels working... so whenever the game did something like

LDA pointer_low
STA $10
LDA pointer_high
STA $11
LDA ($10),Y


I will load from a fixed address (pointer_low and pointer_high). I didn't get those labelled... so if you position of that pointer, it will corrupt some things . I noticed this when removing code in the first half of either bank 1C or 1D... it messes up what graphics are used for the game cursor.

So yeah... some things still need to be padded if changed .
Pages: 1 2Add to favorites | "RSS" Feed | Next newer thread | Next older thread
Acmlm's Board - I2 Archive - Rom Hacking - FF1 re-assemblable disassembly | |


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.018 seconds.