Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,482,588
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 04-25-24 04:56 PM
Guest: Register | Login

Main - Posts by Trax

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

Trax
Posted on 04-26-10 02:49 AM, in Red Falcon, Contra editor (Formerly "Contra hacks...") Link | Quote | ID: 130552


Yellow Stalfos
Level: 71

Posts: 958/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Coincidentally, I resumed my work on Red Falcon recently, and I need to adjust many things in the saving routine. Either the initial code was not right, but I could fiddle with the rest using an hex editor, or I just plainly screwed things up while working with the code to make it compatible with all level types, which are horizontal, vertical and indoors. Each level type has peculiarities that need to be taken into account when saving, and I tend to aim for a unified routine for all levels...

So in other words, no beta until I can save the first 2 levels without flaws, and no demo until I can make the vertical levels save correctly and, well create the new level. Nothing is abandonned, I just took a break from hacking and programming altogether. News will come as the progress goes...

Trax
Posted on 04-27-10 05:34 AM, in General SMB3 Hacking Thread Link | Quote | ID: 130590


Yellow Stalfos
Level: 71

Posts: 959/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
May be a wild guess, but I got this code after a quick check at the ROM, a few bytes past the table:

256F: BD 2605	LDA $0526,X
2572: C9 0A CMP #$0A
2574: D0 5F BNE $25D5

2576: BD 8906 LDA $0689,X
2579: 29 0F AND #$0F
257B: A8 TAY
257C: B9 ECA4 LDA $A4EC,Y ; Loaded here
257F: F0 3A BEQ $25BB

2581: 85 00 STA $00
2583: A0 05 LDY #$05
2585: A5 00 LDA $00
2587: 99 7106 STA $0671,Y ; Stored here
258A: B5 91 LDA $91,X
258C: 99 9100 STA $0091,Y
258F: B5 76 LDA $76,X
2591: 99 7600 STA $0076,Y
2594: A9 01 LDA #$01
2596: 99 6106 STA $0661,Y
2599: B5 88 LDA $88,X
259B: 85 00 STA $00
259D: A9 08 LDA #$08
259F: 84 01 STY $01
25A1: BC 9106 LDY $0691,X
25A4: F0 04 BEQ $25AA

25A6: C6 00 DEC $00
25A8: A9 FF LDA #$FF
25AA: A4 01 LDY $01
25AC: 18 CLC
25AD: 75 A3 ADC $A3,X
25AF: 99 A300 STA $00A3,Y
25B2: 90 02 BCC $25B6

25B4: E6 00 INC $00
25B6: A5 00 LDA $00
25B8: 99 8800 STA $0088,Y

25BB: B5 88 LDA $88,X
25BD: 85 0C STA $0C
25BF: B5 A3 LDA $A3,X
25C1: 85 0D STA $0D
25C3: B5 76 LDA $76,X
25C5: 85 0E STA $0E
25C7: B5 91 LDA $91,X
25C9: 85 0F STA $0F
25CB: BD 9106 LDA $0691,X
25CE: F0 05 BEQ $25D5

25D0: A9 F3 LDA #$F3

25D2: 20 5FDC JSR $DC5F
25D5: 20 CDDC JSR $DCCD
25D8: 20 1BA6 JSR $A61B

25DB: BC 2605 LDY $0526,X
25DE: B9 FCA4 LDA $A4FC,Y
25E1: BC 9106 LDY $0691,X
25E4: F0 08 BEQ $25EE

25E6: 20 4EDD JSR $DD4E

25E9: 95 D0 STA $D0,X

25EB: 4C FDA5 JMP $A5FD

Something like that?


Trax
Posted on 04-28-10 02:49 AM, in General SMB3 Hacking Thread Link | Quote | ID: 130632


Yellow Stalfos
Level: 71

Posts: 960/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Maybe you didn't add 0x10 to the address? If your ROM is headered, then you must add 0x10 to account for the first 0x10 bytes of the header.

I'm checking at 0x24EC (+0x10) right now:

00 00 19 1E 0C 0D 1F 0B 03 06 08 07 05 04 0B 0E

The code takes a value from $0689,X and keeps only the 4 last bits, so the resulting number can't be higher than F, so I deduced that the data table above would be 0x10 bytes long. And it probably is because there's another table at 0x24FC (+0x10), which is exactly 0x10 more than 0x24EC. I know there's another table because of the load line at 0x25DE.

And the code explained:


2576: BD 8906 LDA $0689,X ; Load $0689 + X (if X is 1, then $068A is loaded)
2579: 29 0F AND #$0F ; keep 4 lower bits
257B: A8 TAY ; transfer A to Y
257C: B9 ECA4 LDA $A4EC,Y ; Load $A4EC + X (
257F: F0 3A BEQ $25BB

2581: 85 00 STA $00 ; Store A in $00
2583: A0 05 LDY #$05 ; Y = 5
2585: A5 00 LDA $00 ; Load A with $00
2587: 99 7106 STA $0671,Y ; Store A in $0x0671 + Y (if Y is 1, then it's stored in $0x0672)

Etc...


I don't know SMB3 at all, but here's my guess. The 1-Up item must have a certain code associated to it. From the table and DDs info, I presume it's 08. So when a block must spit out a 1-Up, there must be some way to tell the game, this block has item 08 in it. And when you hit the block, a sprite comes out. So the game takes the ID of the item (in this case 08), and checks the table for the sprite ID, which is 03...

This is the most logical explanation I can find; correct me if I'm wrong...


Trax
Posted on 05-23-10 07:54 AM, in Red Falcon, Contra editor (Formerly "Contra hacks...") Link | Quote | ID: 131412


Yellow Stalfos
Level: 71

Posts: 961/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
I got some time and inspiration, so I finally cleaned up most of the loose ends in the saving routines, and started working on level 3, which is vertical. Vertical levels have the "outdoor" parameter, so they share more similarities with horizontal levels than indoor ones. But there are some oddities that need to be taken in consideration, as well as some weird bugs that occur even in the original game levels...

As previously mentioned, the height of a section is not 7, but more like 7.5 . So you end up with one half of tile everytime you go up one screen height. My editor uses a matrix of tiles 32x32 pixels, and because of the drawing mechanics, removing half of a tile is not trivial at all, so I resorted to drawing a black line where the half-tiles are not drawn in-game. When you place enemies, X and Y coordinates are swapped...

Other oddities include Rifle Men who refuse to appear for no appearent reason, even in the original level. Rock Platforms must be set to a even X position, or they will flicker endlessly between two distant positions. Jumping on a flickering platform gives a weird teleportation effect. Moving flames can move faster with an attribute of 1. Arbitrary mortars, heavily used in my first level demo, are not working in level 3, but you still have the Scuba Divers. Red Cannons always face left; they cannot be reversed, so you have to place them somewhere in the right hand part of the level or they end up pretty much useless...

Here, a screenshot of my work in progress:

After I make sure the editor is free of major bugs, I could have a beta release of the editor, for those interested...


Trax
Posted on 05-23-10 09:35 PM, in Real multiplayer for SMW? Link | Quote | ID: 131426


Yellow Stalfos
Level: 71

Posts: 962/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Although I don't know anything about SMW hacking-wise, I don't buy the idea that Mario is taking so much CPU cycles that you can't just double the sprite and connect it to the second controller. How do you know Mario is taking a lot of CPU power? How did you test this assertion and if you really know it, what is the approximative % of CPU is it taking?

Trax
Posted on 05-28-10 12:51 AM, in Which games would you like to see a editor for? Link | Quote | ID: 131516


Yellow Stalfos
Level: 71

Posts: 963/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
No more Mario, no more Megaman, and more NES games...
I started working on Marble Madness, but it got the madness out of me in no time...

Trax
Posted on 06-01-10 01:42 AM, in The most annoying problem in SMB1 hacking Link | Quote | ID: 131601


Yellow Stalfos
Level: 71

Posts: 964/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Palettes for the background (and I presume the title screen is made of background tiles) are not defined on a per-tile basis. The screen is usually divided into 0x60 blocks of 32x32 tiles. Each of these tiles are divided into 4 corners. Each corner have a specific palette attribute (0-3). In the end, a 32x32 block's color is defined by one byte. A byte is 8 bits, so you have room for 4 pieces of 2 bits in a single byte...

So your goal is to find the data table with values that defines these blocks of tiles, and modify them bitwise according to the colors you want to obtain...

Trax
Posted on 06-01-10 11:32 PM, in The General Project Screenshot/Videos Thread... Link | Quote | ID: 131609


Yellow Stalfos
Level: 71

Posts: 965/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
To animate the background tiles, you need to understand how name tables work. Each X frames, some tile definitions must be changed at the right place in the table, according to the type of object and there's probably some gymnastic to do to account for scrolling...

Trax
Posted on 06-09-10 12:32 AM, in Zelda II in 3D Link | Quote | ID: 131858


Yellow Stalfos
Level: 71

Posts: 966/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Pretty funky. The mix between real 3D graphics and applied textures from original NES makes an interesting experience. The conception from 2D to 3D is very good and quite clever. You can even smash the statues in the palace...

And the guy seems to enjoy doing this...

Trax
Posted on 06-09-10 04:17 AM, in Red Falcon, Contra editor (Formerly "Contra hacks...") Link | Quote | ID: 131868


Yellow Stalfos
Level: 71

Posts: 967/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Again, after a long delay, another demo is out, level 3 was hacked with more screens and more difficulty...
I tried to not make it as hard as level 2...
The intro screen and the ending credits were also altered...

The difficulty level is up a few notches of course, and comes mostly from the fact that you have to deal with showers of bullets and explosives coming from the top as you jump your way to the Boss. Be patient and careful and you will get through...



I think the editor is pretty much functional for what was coded until now. But it still lacks of any inserting mechanism, like Insert Enemy and Insert Screen. But it's still quite fun using it....

I didn't go through the boring process of making a "level 3 only" IPS patch this time. If some people absolutely want to avoid the 2 first levels, I'll make that version eventually, but I don't know when....

I'll record a movie enventually...

Download: Contra Three-Level Demo
ROM used to create patch: Contra (U) [!].nes

Comments and questions are welcome!


Trax
Posted on 06-10-10 01:56 AM, in Red Falcon, Contra editor (Formerly "Contra hacks...") (rev. 2 of 06-10-10 02:00 AM) Link | Quote | ID: 131912


Yellow Stalfos
Level: 71

Posts: 968/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Yeah, I noticed this glitch, but I really have no idea why it does that. Running Men are not supposed to lie down in this level. And it seems to happen only when they are at the very top of the screen. Go figure...

Trax
Posted on 06-15-10 06:11 AM, in CHR-RAM Trouble (rev. 2 of 06-15-10 06:14 AM) Link | Quote | ID: 132017


Yellow Stalfos
Level: 71

Posts: 969/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
It's just a question of whether your tiles are neatly preassembled in CHR banks, or just loaded using other means. If you have compressed graphics, you will have to feed the PPU by hand using specific routines. Contra works that way. Graphics chunks are scattered throughout the ROM, and each level has its own set of graphics chunks. Each chunk is compressed in a mix of RLE and literal bytes. When a level is loaded, the chunks are decompressed and sent to the PPU...

RetroRain, your thinking is not bad, but I don't think it's necessary to go for such precision of the bytes that compose your tiles. You could simply locate some free space in the ROM, store your tile data there and access it as needed. To make a rain tile, 3 or 4 frames are enough. So make your 256 bytes (16x4x4) in advance, keep track of your frame number (0-3) and use a X or Y index when loading the tile...

Steps are like:

- Place the PPU writing head to whatever location of your rain tiles.
- Load your frame number (0-3) and multiply it by 64 (ASL 6 times).
- Transfer the bytes form your custom table to the PPU, using the frame number as an index.


Trax
Posted on 06-16-10 01:14 AM, in Zelda.TBL problem (rev. 2 of 06-16-10 01:27 AM) Link | Quote | ID: 132026


Yellow Stalfos
Level: 71

Posts: 970/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Probably because you did not take in consideration the line ends?
If I recall correctly, the last letter of the line must have bit 7 set...
This tells the engine to start another line...

EDIT: okay, never mind, I didn't read correctly. If you do it by hand, which is not that hard, you will have to consider this feature...

Trax
Posted on 06-17-10 03:24 PM, in Fixed Item List, Problem with beginning story in LOZ NES Link | Quote | ID: 132064


Yellow Stalfos
Level: 71

Posts: 971/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
If you can provide some offsets for the text entries, there will surely be a way to help...

Trax
Posted on 06-21-10 03:53 AM, in What happened to irc (rev. 2 of 06-21-10 03:54 AM) Link | Quote | ID: 132228


Yellow Stalfos
Level: 71

Posts: 973/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
This thread is so full of shit. Blame the admins if there's no activity? What the fuck? If people don't post anymore, it's because people are not interested in ROM hacking anymore. That's it that's all. It pains me to say that, but that's the straight line to the point...

If some of the lack of activity is due to outer circumstances, there's nothing to worry about, but if those supposed circumstances seems to fill every possible corner of one's life, well, tough luck, the same explanation still stands. If those who are new to ROM hacking cannot even comprehend the essence of hacking, or are too lazy to search (ROM Hacking is about discovering), then don't expect anything fulfilling, unless you just want to use fancy editors and make average hacks. Contribute to the community or stop whining and get off...

Look over Internet, and you'll find very few sites dedicated to ROM Hacking. Really. Many people have their own home pages, and the remaining generic forums are RHDN and Board2. Others are mostly game-specific, with a possible exception for SMWCentral, which has some activity outside of the game...

This board is cool because I think there's a good equilibrium between ROM Hacking and other various subjects, like a bunch of Joe's bringing their discoveries on the table in a funky place, where you can hang out and chat about stuff, ROM hacking or not...

RHDN is a great database and has good forum too, more centered on ROM Hacking and less chit-chat, lots of translations and most is SNES. This forum is more like a formal lab with guys in white coats. That's just a very broad analogy, don't take it as negative or positive...

DataCrystal is also a nice complement to ROM Hacking, and a place where activity seems to go down, if it was ever high in the first place. And of course, the spam attacks don't help...

To be brief, I just can't stand anymore that there can still be some people who, instead of just doing something and contributing to the community, still manage to find some time to start threads about the lack of activity, and cannot see the irony of their intervention. That's completely beyond any logical comprehension...


Trax
Posted on 06-30-10 12:30 AM, in Fixed Item List, Problem with beginning story in LOZ NES (rev. 2 of 06-30-10 12:31 AM) Link | Quote | ID: 132499


Yellow Stalfos
Level: 71

Posts: 974/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Well, the quotes are part of the text, so you just have to edit the values for each tile individually. If you want to get rid of them, the simplest solution would be to replace them with a space character...

Background colors are not set on a per-tile basis. You must imagine the screen divided into 0x40 squares of 4x4 tiles. Each square has 4 palette codes associated to its 4 corners. And these 4 palette codes are contained in a single byte, 2 bits per code...

Take this picture as a reference:




Trax
Posted on 07-08-10 12:17 AM, in how to make hacking tools? Link | Quote | ID: 132739


Yellow Stalfos
Level: 71

Posts: 976/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
You shouldn't have to specify C/C++. Only saying "C" is enough, while it IS technically true that C++ is not a strict superset of C (which is a very stupid characteristic, anyway)...

Trax
Posted on 07-09-10 02:56 AM, in how to make hacking tools? Link | Quote | ID: 132785


Yellow Stalfos
Level: 71

Posts: 977/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
I'd suggest starting with NES, because it is relatively simple, the platform is well understood and there's plenty of information around for many games...

Trax
Posted on 07-11-10 03:55 AM, in Nintendo's(R) Dumb Ideas (rev. 2 of 07-11-10 07:39 PM) Link | Quote | ID: 132862


Yellow Stalfos
Level: 71

Posts: 979/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
And why not Ellol? Sounds even more stupid...

In the Japanese version, Error's name is rendered as エラー (ERA-), which really seem to go along the lines of the Error/Bug naming trick. And Error HAS a purpose in the game, although not an essential one like Bagu has...

In Zelda II, Link is ambidextrous:




Trax
Posted on 07-11-10 09:19 AM, in how to make hacking tools? Link | Quote | ID: 132865


Yellow Stalfos
Level: 71

Posts: 980/1145
EXP: 3035611
Next: 131503

Since: 07-06-07
From: Québec

Last post: 3626 days
Last view: 2878 days
Yeah, like the rest of us...
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42


Main - Posts by Trax

Acmlmboard 2.1+4δ (2023-01-15)
© 2005-2023 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 0.232 seconds. (333KB of memory used)
MySQL - queries: 138, rows: 170/170, time: 0.222 seconds.