(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
05-14-24 08:21 AM
0 users currently in ROM Hacking.
Acmlm's Board - I3 Archive - ROM Hacking - General Super Mario 64 hacking / TT64 Progress thread New poll | | Thread closed
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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71Add to favorites | Next newer thread | Next older thread
User Post
creaothceann

Red Goomba








Since: 11-22-05

Last post: 6489 days
Last view: 6489 days
Posted on 03-11-06 12:56 PM Link
Originally posted by VL-Tone
Originally posted by proffessor_gad
Originally posted by creaothceann
Originally posted by VL-Tone
Also, I made a routine that pre-loads all textures when you open a ROM. The bad news are that it takes up to 25 seconds to load 850 textures found in the game. I'm working on improving that before continuing the rewrite.

Can't you save the result to a file, and load that when the program starts? (I'm assuming that the decoding takes the most time.)

If not... well, at least a progress bar would be nice.

I thought about saving the textures to disk beforehand, and this is how I used my editor before, but here is the problem: what if you open a ROM with textures already edited? The textures would have to be loaded anyway.

Maybe I could put a checkbox option that reads "Load custom textures" in the editor. Another thing I could do is write a small table in the ROM that keeps tracks of which textures have been edited so it only loads them. A completely edited ROM would still take as much time though.

Maybe some kind of "source code file format" could be designed... along with a compiler that would generate a valid ROM from that. Storing this kind of data in the ROM is not very extensible...

But then I don't have any idea how such a file format would have to look like to keep _itself_ extensible, so meh.
VL-Tone

Paratroopa








Since: 11-18-05

Last post: 6485 days
Last view: 6485 days
Posted on 03-13-06 11:51 PM Link
Here is the full resolution sprite sheet for Super Mario 64 (well click on this thumbnail to get it)



creaothceann: if you mean decompiling the ROM ASM and recompiling, well I don't think anyone here is close to do that (unless I'm mistaken) and I don't see how it can solve my problem.

I don't see anything wrong with storing some editor data in the ROM. It has to be extended/modified anyway, and there is plenty of space for that. And this doesn't prevent another editor from opening the ROM.

But I'll start by making a little program that people can test and give me feedback on the speed.

proffessor_gad: Sorry I won't release the Luigi patch, I promised someone that I wouldn't.


(edited by VL-Tone on 03-13-06 10:52 PM)
proffessor_gad

Red Koopa








Since: 01-27-06
From: Mars

Last post: 6325 days
Last view: 6325 days
Posted on 03-14-06 12:27 AM Link
So you say that editing textures will be possible... But will editing models be possible with your editor?
VL-Tone

Paratroopa








Since: 11-18-05

Last post: 6485 days
Last view: 6485 days
Posted on 03-14-06 04:20 AM Link
Originally posted by proffessor_gad
So you say that editing textures will be possible... But will editing models be possible with your editor?


No.

I thought I made it clear enough, but I guess it wasn't.

Maybe in version 2.0, but definitely not in version 1.0.





In other news:

I'm almost done with the "ROM extender" program, there is only one thing left to add, which is the routine that will repoint MIO0 bank 00108A40, which is a special case (it doesn't use a 0x18 or 0x1A command).

Also I have to write some documentation. It will be released (probably) tomorrow.
proffessor_gad

Red Koopa








Since: 01-27-06
From: Mars

Last post: 6325 days
Last view: 6325 days
Posted on 03-14-06 03:58 PM Link
Don't you love it when I post annoying questions? He he he.
Guy Perfect









Since: 11-18-05

Last post: 6296 days
Last view: 6294 days
Posted on 03-14-06 04:14 PM Link
Questions become annoying when the answers have been stated numerous times in the past. That's when annoying becomes stupid.
proffessor_gad

Red Koopa








Since: 01-27-06
From: Mars

Last post: 6325 days
Last view: 6325 days
Posted on 03-14-06 09:26 PM Link
I have STML (short term memory loss)
D 2007
D


 





Since: 02-19-06

Last post: 6341 days
Last view: 6341 days
Posted on 03-14-06 09:57 PM Link
So go back and view the thread if you have a question, don't ask it.
VL-Tone

Paratroopa








Since: 11-18-05

Last post: 6485 days
Last view: 6485 days
Posted on 03-14-06 10:29 PM Link
professor_gad, if you continue to ask questions like this on I'm gonna start ignoring your posts.

It was getting pretty obvious that you were trolling, and now you just admitted it. I try to be tolerant and polite, but starting a few posts ago I had to restrain myself from calling you names, because you keep asking questions that can be answered by reading this thread and the archive. If you are really interested in this project, you should have known all this.

So do us a favor and stop trolling. (and if you weren't trolling, well just don't )




Cellar Dweller, I hope you are reading this, I'm having problems implementing a pointer swap for bank 00108A40.

Here is from a previous post from you:

-----------

If you want this code to load a MIO0 file that is somewhere else:

1. split the start ROM pointer into two 16 bit halves
eg. 0x00108a40 => 0x0010 0x8a40

2. if the lower 16 bits is greater or equlal to 0x8000 add 1 to the high 16 bits
eg. 0x0010 0x8a40 => 0x0011 0x8a40

3. place the high 16 bits at 0x3ac2 in the ROM and the low 16 bits at 0x3ace

4. do the same thing for the end pointer, except the high 16 bits go at 0x3ac6 and the low 16 bits go at 0x3aca


-----------

I don't know what's the problem, but the game crashes on start when I try to repoint the segment that starts at 0x108A40 and ends at 0x114750.

Here's what's found in the original game.
3AC2: 00 11 <--- High 16-bits from start pointer (+1)

3AC4: 3C 06
3AC6: 00 11 <--- High 16-bits from end pointer
3AC8: 24 C6
3ACA: 47 50 <--- Low 16-bits from end pointer
3ACC: 24 A5
3ACE: 8A 40 <--- Low 16-bits from start pointer


Here's the modification I did to re-point the segment to 0x800000, ending at 0x81BB62. (note that the size is different, since it's a valid MIO0 file that contains uncompressed data)

3AC2: 00 80 <--- High 16-bits from start pointer 

3AC4: 3C 06
3AC6: 00 82 <--- High 16-bits from end pointer (+1)
3AC8: 24 C6
3ACA: BB 62 <--- Low 16-bits from end pointer
3ACC: 24 A5
3ACE: 00 00 <--- Low 16-bits from start pointer


Unfortunately it doesn't work

If you want to test it yourself:
1. Expand a ROM to 16 or 24 MB,
2. Download this MIO0 header: http://pages.infinit.net/voxel/MIO0Header800000.bin
3. Copy and Paste it at 0x800000 in the ROM.
4. Copy the uncompressed MIO0 data from segment 108A40 and Paste at 0x803154 in the extended ROM. The resulting MIO0 file should end at 81BB62.
5. Try to change the pointers at 3ACx.



(edited by VL-Tone on 03-14-06 10:57 PM)
proffessor_gad

Red Koopa








Since: 01-27-06
From: Mars

Last post: 6325 days
Last view: 6325 days
Posted on 03-15-06 12:38 AM Link
Trolling? Well I guess I'm kinda guilty of that. But hey, that is what you end up doing when your lesson in algebra, or science gets to hard or confusing. You start wandering in websites, and you start posting stuff, and then everybody starts thinking that you are a n00b when you are actually just a bored teenager who has to sit behind a computer 24/7. Computer homeschooling is torture, and a pain in the neck!

So I'm sorry if I got a bit annoying, and I hope that I did not leave a bad impression. Keep it cool, and don't mind me if I get a bit trolly. Cya.
VL-Tone

Paratroopa








Since: 11-18-05

Last post: 6485 days
Last view: 6485 days
Posted on 03-15-06 12:43 AM Link
Fair enough

Next time, just make sure that the question wasn't answered before. Yes it can happen, just don't do it every single time!
Guy Perfect









Since: 11-18-05

Last post: 6296 days
Last view: 6294 days
Posted on 03-15-06 03:07 AM Link
I just got done playing through The Legend of Zelda - Ocarina of Time - Master Quest and I find it rather peciuliar. Most if not all of the geometry data for the levels is the same. The only differences are the objects and actors in any given room.

You can definitely make one tough Zelda game using the exact same level geometry as another one, so... I see no reason we can't have a Super Mario 64 - Master Quest. I mean, who wouldn't love to see Bullies on the floating islands in Whomp's Fortress as you attempt to catch the rabbit for a star?
Yoronosuku

Toss Tortoise


 





Since: 11-17-05
From: Massachusetts is my new home..

Last post: 6294 days
Last view: 6294 days
Skype
Posted on 03-15-06 03:38 AM Link
Ocarina of Time used a heavily modified Mario 64 engine, actualy this is why you'll find many similarities in data structures/formats.
Guy Perfect









Since: 11-18-05

Last post: 6296 days
Last view: 6294 days
Posted on 03-15-06 12:23 PM Link
That's not the point I was trying to make with the Master Quest scenario.
Yoronosuku

Toss Tortoise


 





Since: 11-17-05
From: Massachusetts is my new home..

Last post: 6294 days
Last view: 6294 days
Skype
Posted on 03-15-06 08:48 PM Link
Okeee....I see what I did there, I misread your entire post It was late, okay? Hrr hrr..
VL-Tone

Paratroopa








Since: 11-18-05

Last post: 6485 days
Last view: 6485 days
Posted on 03-15-06 09:07 PM Link
Originally posted by BGNG
I just got done playing through The Legend of Zelda - Ocarina of Time - Master Quest and I find it rather peciuliar. Most if not all of the geometry data for the levels is the same. The only differences are the objects and actors in any given room.

You can definitely make one tough Zelda game using the exact same level geometry as another one, so... I see no reason we can't have a Super Mario 64 - Master Quest. I mean, who wouldn't love to see Bullies on the floating islands in Whomp's Fortress as you attempt to catch the rabbit for a star?


I understand your point and you are describing why my editor will be able to create interesting "remixes" of Super Mario 64, even though it doesn't edit geometry.

There are sometimes hundreds of objects found in a given level. Many of them can be course/act specific so they only appear in specified courses. In Whomp's Fortress, floating islands are objects, and they can be moved around, and you can add some by changing other objects to floating islands. Bowser's levels are entirely made of platforms that could be moved around.

Couple that with text editing and texture replacing, and you'll be able to make a Super Mario 64 Master's Quest.

You can't put MIPS in other places than inside and outside the castle, unless you load its MIO0 bank and geometry layout data in a level. This is the kind of things you'll be able to do in version 1.5.

It looks simple to implement, but I want to add safeguards in the interface and that may be more complicated. If you simply change a bank loading command, the game will crash when this level is run. That's because objects defined with the 0x22 command point to objects that are not in the MIO0 you swapped.

I'll have to put some mechanisms that warn the user and highlights invalid objects when a bank is swapped. The editor for 0x22 commands (also due for 1.5) will present a list of objects that can be loaded with the current banks.

Version 1.0 will be able to do really nice things, particularly in modular levels. Once I get around the disk access limitations, I'll finish the interface.
Cellar Dweller +

Red Koopa









Since: 11-18-05
From: Arkansas

Last post: 6303 days
Last view: 6294 days
Posted on 03-16-06 12:54 AM Link
I tried to copy an unmodified version of the MIO0 file to the end of the ROM and point to it. I don't know why, but even that did not work. Everything that I know about SM64 suggests that it should work.

I have not been doing much stuff with SM64 lately, mostly due to work and school.
VL-Tone

Paratroopa








Since: 11-18-05

Last post: 6485 days
Last view: 6485 days
Posted on 03-16-06 01:34 AM Link
It does work for every other MIO0 segments.

Maybe it crashes when the starting address is more than 0x800000?

I'll try relocating this MIO0 file elsewhere in the original first 8 megs of the ROM to see what it does. Since the original compressed MIO0 are not used in the extended version, there is plenty of space to do that.

Anyhow, I'll try to figure it out on my own
1125
Newcomer


 





Since: 03-17-06
From: FL

Last post: 6632 days
Last view: 6632 days
Posted on 03-17-06 04:23 PM Link
Where can I get MIO0?
Smallhacker

Super Koopa
I AM A Group Of Officially Frustrated Younglings, G.O.O.F.Y. MEMBER








Since: 11-17-05
From: Söderhamn, Sweden

Last post: 6296 days
Last view: 6294 days
Skype
Posted on 03-17-06 04:36 PM Link
Originally posted by supa_mario
Where can I get MIO0?

...No... Just... No...
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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71Add to favorites | Next newer thread | Next older thread
Acmlm's Board - I3 Archive - ROM Hacking - General Super Mario 64 hacking / TT64 Progress thread | Thread closed


ABII

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

Page rendered in 0.057 seconds; used 449.81 kB (max 572.17 kB)