Register - Login
Views: 99379463
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-23-22 10:56:45 PM
Jul - SM64 Hacking (Archive) - How does SM64 handle saving? New poll - New thread - New reply
Next newer thread | Next older thread
Vinnyboiler
Catgirl
Level: 66


Posts: 53/1044
EXP: 2439775
For next: 22076

Since: 12-27-07

From: London, England

Since last post: 6 days
Last activity: 3 days

Posted on 04-20-09 08:05:18 PM Link | Quote
Hello it's Vinnyboiler here.
I recently started a hack that does not require any stars, but the trouble with that is that the only way I can save the player's progres is by using the switch caps and the stars that come after 100 coins. I tried using the Toads to save my work but to no prevail.
My question is that if there is any other way to save the game or advise you can give to help me in my perdicament.
Stevoisiak
Member
Level: 38


Posts: 244/283
EXP: 345476
For next: 24971

Since: 11-22-07

From: New York, Long Island

Since last post: 12.3 years
Last activity: 5.6 years

Posted on 04-20-09 08:13:07 PM (last edited by Stevoisiak at 04-20-09 05:13 PM) Link | Quote
Originally posted by vinnyboiler

My question is that if there is any other way to save the game or advise you can give to help me in my perdicament.

What do you mean save the game? Are the changes not being saved? Is the rom corrupt? Do you want to edit the file selection and in-game save feature?

____________________
The guy who acts like he actually knows what he's talking about
Vinnyboiler
Catgirl
Level: 66


Posts: 54/1044
EXP: 2439775
For next: 22076

Since: 12-27-07

From: London, England

Since last post: 6 days
Last activity: 3 days

Posted on 04-20-09 08:25:05 PM (last edited by vinnyboiler at 04-20-09 05:29 PM) Link | Quote
Like saving after the moat is drained. I'm sure this have nothing to do with Toads Tool 64, thats why I opened a new topic.
RomanianGirl

Level: 16


Posts: 25/42
EXP: 19620
For next: 636

Since: 01-31-08

From: Canada

Since last post: 12.9 years
Last activity: 12.9 years

Posted on 04-20-09 11:12:03 PM Link | Quote
The game should automatically ask the player to save after a star is collected in a level, or 100 coins is collected in a level.
There's is something definitely wrong with your ROM.
The most I know is that there are values written into the ROM for certain things (such as using a Bowser key, draining the moat, fixing the infinite staircase).
Instead of trying to "manually" save, you should locate a better file dump.
gamekrazzy
Member
Level: 32


Posts: 69/199
EXP: 194425
For next: 12017

Since: 03-06-09


Since last post: 10.4 years
Last activity: 8.6 years

Posted on 04-21-09 04:36:37 AM Link | Quote
He is having problems with the game asking to save without the stars. You could try looking into the save option after getting a star from a character. I mean because apparently Messian figured that out(I think maybe I was dreaming). Anyways you could probably convert that to where if you simply talk to the person it asks to save, skip the star entirely. BUT IDK is that possible?

____________________
uberoe
User
Level: 11


Posts: 3/17
EXP: 4810
For next: 1175

Since: 05-31-09


Since last post: 12.0 years
Last activity: 11.9 years

Posted on 05-31-09 10:53:19 AM Link | Quote
No guys i think what he's saying is there another way or a way to change where and how you save the game, because everyone knows you save after you get a star but i think he's saying that he wants to save by talking to a toad or something of the sort.
Hectamatatortron
Member
Level: 35


Posts: 158/232
EXP: 257991
For next: 21945

Since: 09-19-07


Since last post: 7.2 years
Last activity: 5.3 years

Posted on 05-31-09 08:12:35 PM Link | Quote
I'm sure messiaen has or easily could discover how to bring up the save dialog invoked by collecting a 100 coin star and adapt it for this purpose.

Also, gamekrazzy appears to be the only person who understood the question despite having a history of making confusing posts.

____________________
BigBrain
Member
Level: 22


Posts: 32/85
EXP: 55267
For next: 3083

Since: 09-10-08


Since last post: 8.8 years
Last activity: 6.7 years

Posted on 05-31-09 09:18:12 PM (last edited by BigBrain at 06-01-09 06:30 AM) Link | Quote
Uhm... The thread starter doesn't seem to be interested in this topic anymore anyways, but FWIW:
There is a list of functions pointers at https://acmlm.kafuka.org:81/board/thread.php?id=4236 (syms.txt). There's only a few occurences of the word "save". In conjunction with the n64/sm64 headers and a compiler (and some knowledge in C and about compiling the thing the way it's supposed to here) one could probably do this fairly easily (if he knows the basics, that is); just write a program which calls one of the function (you'll have to try each one), compile it and insert it as a Gameshark code or into the ROM itself whenever a goal is reached.
I don't have any free time to work this out for myself, but perhaps there's someone else around who can do such things (apart from messiaen ).

EDIT: having thought a night about this.. What do you by the way actually want to safe if not stars or cap switches (or switches in general)...? There's not much apart from coin hi-scores IIRC that gets saved in SM64...

Come to think of it.... The act of calling a function seems so brain-dead simple, there are probably already some gameshark codes available which do it, so I've probably described an over-complicated method
Hectamatatortron
Member
Level: 35


Posts: 159/232
EXP: 257991
For next: 21945

Since: 09-19-07


Since last post: 7.2 years
Last activity: 5.3 years

Posted on 06-02-09 02:06:19 AM Link | Quote
It's not over complicated. I'm pretty sure he wants the saving to occur without the use of GameShark codes (in other words, the interface for it should be apart of the actual game).

Also, just a note, you pretty much suggested what I did but with more detail.

No, messiaen isn't the only one capable, but he is the most familiar with the C files HE created.

____________________
messiaen
Catgirl
Level: 68


Posts: 607/1085
EXP: 2594037
For next: 134763

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 06-02-09 10:50:59 AM (last edited by messiaen at 06-03-09 09:11 AM) Link | Quote
From a quick look at Nagra's symbol file, there's this:

0x802dd838,??Save...

This is the save dialog after you get a star:

802DDB84: LUI A2, 0x8033
802DDB88: ADDIU A2, A2, 0x1490
802DDB8C: ADDIU A0, R0, 0x0064
802DDB90: ADDIU A1, R0, 0x0056
802DDB94: JAL 0x802DD838
802DDB98: ADDIU A3, R0, 0x0014


This seems be the only instance from where it's called. If somebody wants to try executing it from another point in the game using the header files, add this function in the linker script:

mario64.x (linker script):

in the SECTIONS part, add:

SaveMenu = 0x802DD838;

Prototype it in your mario64.c file:

extern int SaveMenu(u16 argument0, u16 argument1, u32 pointer, u16 argument3)

And try calling it with the same params, ie:


if (Mario->coins == 10)
{
SaveMenu(0x64, 0x56, 0x80331490, 0x14);
}


The 16 arguments are probably x,y positions of the text box. Note that even if this works (I haven't tested), Mario will still probably be able to walk around while the save menu is displayed, as there's a combination of functions that needed to be called in order to stop Mario/the environment around him.

By the way, I am updating the header files with more useful functions and addresses and I'm planning to write some more detailed guides about how to use them, where to hook stuff, etc.

Edit: A PJ64 modification to make it display calls to Epprom functions, perhaps it won't be that difficult to reprogram how the EEPROM is mapped into RAM.
Next newer thread | Next older thread
Jul - SM64 Hacking (Archive) - How does SM64 handle saving? New poll - New thread - New reply


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

36 database queries, 2 query cache hits.
Query execution time:  0.102935 seconds
Script execution time:  0.013002 seconds
Total render time:  0.115937 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 300 - Warning: unescaped & or unknown entity "&page"
line 119 column 11 - Warning: <form> isn't allowed in <table> elements
line 118 column 10 - Info: <table> previously mentioned
line 120 column 11 - Warning: missing <tr>
line 120 column 119 - Warning: missing </font> before </td>
line 124 column 16 - Warning: plain text isn't allowed in <tr> elements
line 120 column 11 - Info: <tr> previously mentioned
line 125 column 68 - Warning: missing </nobr> before </td>
line 141 column 68 - Warning: missing </nobr> before <tr>
line 147 column 35 - Warning: missing <tr>
line 147 column 50 - Warning: missing </font> before </td>
line 148 column 37 - Warning: unescaped & or unknown entity "&id"
line 147 column 199 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 91 - Warning: missing </font> before </table>
line 156 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 158 column 9 - Warning: missing <tr>
line 176 column 13 - Warning: missing <tr>
line 177 column 101 - Warning: unescaped & or unknown entity "&postid"
line 184 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 186 column 9 - Warning: missing <tr>
line 204 column 13 - Warning: missing <tr>
line 205 column 101 - Warning: unescaped & or unknown entity "&postid"
line 212 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 214 column 9 - Warning: missing <tr>
line 232 column 13 - Warning: missing <tr>
line 233 column 101 - Warning: unescaped & or unknown entity "&postid"
line 238 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 240 column 9 - Warning: missing <tr>
line 258 column 13 - Warning: missing <tr>
line 259 column 101 - Warning: unescaped & or unknown entity "&postid"
line 267 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 269 column 9 - Warning: missing <tr>
line 287 column 13 - Warning: missing <tr>
line 288 column 101 - Warning: unescaped & or unknown entity "&postid"
line 293 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 295 column 9 - Warning: missing <tr>
line 313 column 13 - Warning: missing <tr>
line 314 column 101 - Warning: unescaped & or unknown entity "&postid"
line 319 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 321 column 9 - Warning: missing <tr>
line 339 column 13 - Warning: missing <tr>
line 340 column 101 - Warning: unescaped & or unknown entity "&postid"
line 347 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 349 column 9 - Warning: missing <tr>
line 367 column 13 - Warning: missing <tr>
line 368 column 101 - Warning: unescaped & or unknown entity "&postid"
line 380 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 382 column 9 - Warning: missing <tr>
line 400 column 13 - Warning: missing <tr>
line 401 column 101 - Warning: unescaped & or unknown entity "&postid"
line 410 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 412 column 9 - Warning: missing <tr>
line 430 column 13 - Warning: missing <tr>
line 431 column 101 - Warning: unescaped & or unknown entity "&postid"
line 473 column 17 - Warning: missing <tr>
line 473 column 17 - Warning: discarding unexpected <table>
line 476 column 35 - Warning: missing <tr>
line 476 column 50 - Warning: missing </font> before </td>
line 476 column 91 - Warning: missing </font> before </table>
line 478 column 35 - Warning: missing <tr>
line 478 column 50 - Warning: missing </font> before </td>
line 479 column 37 - Warning: unescaped & or unknown entity "&id"
line 478 column 199 - Warning: missing </font> before </table>
line 480 column 17 - Warning: discarding unexpected </textarea>
line 480 column 28 - Warning: discarding unexpected </form>
line 480 column 35 - Warning: discarding unexpected </embed>
line 480 column 43 - Warning: discarding unexpected </noembed>
line 480 column 53 - Warning: discarding unexpected </noscript>
line 480 column 64 - Warning: discarding unexpected </noembed>
line 480 column 74 - Warning: discarding unexpected </embed>
line 480 column 82 - Warning: discarding unexpected </table>
line 480 column 90 - Warning: discarding unexpected </table>
line 482 column 9 - Warning: missing </font> before <table>
line 494 column 25 - Warning: discarding unexpected </font>
line 503 column 57 - Warning: discarding unexpected </font>
line 481 column 1 - Warning: missing </center>
line 120 column 63 - Warning: <img> lacks "alt" attribute
line 125 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 125 column 93 - Warning: <img> lacks "alt" attribute
line 141 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 141 column 98 - Warning: <img> lacks "alt" attribute
line 148 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 245 - Warning: <img> proprietary attribute value "absmiddle"
line 161 column 22 - Warning: <img> lacks "alt" attribute
line 161 column 63 - Warning: <img> lacks "alt" attribute
line 161 column 112 - Warning: <img> lacks "alt" attribute
line 161 column 162 - Warning: <img> lacks "alt" attribute
line 162 column 11 - Warning: <img> lacks "alt" attribute
line 172 column 15 - Warning: <img> lacks "alt" attribute
line 189 column 22 - Warning: <img> lacks "alt" attribute
line 189 column 63 - Warning: <img> lacks "alt" attribute
line 189 column 112 - Warning: <img> lacks "alt" attribute
line 189 column 162 - Warning: <img> lacks "alt" attribute
line 200 column 15 - Warning: <img> lacks "alt" attribute
line 217 column 22 - Warning: <img> lacks "alt" attribute
line 217 column 63 - Warning: <img> lacks "alt" attribute
line 217 column 112 - Warning: <img> lacks "alt" attribute
line 217 column 162 - Warning: <img> lacks "alt" attribute
line 218 column 11 - Warning: <img> lacks "alt" attribute
line 228 column 15 - Warning: <img> lacks "alt" attribute
line 242 column 11 - Warning: <img> lacks "alt" attribute
line 243 column 22 - Warning: <img> lacks "alt" attribute
line 243 column 63 - Warning: <img> lacks "alt" attribute
line 243 column 112 - Warning: <img> lacks "alt" attribute
line 243 column 162 - Warning: <img> lacks "alt" attribute
line 244 column 11 - Warning: <img> lacks "alt" attribute
line 254 column 15 - Warning: <img> lacks "alt" attribute
line 272 column 22 - Warning: <img> lacks "alt" attribute
line 272 column 63 - Warning: <img> lacks "alt" attribute
line 272 column 112 - Warning: <img> lacks "alt" attribute
line 272 column 162 - Warning: <img> lacks "alt" attribute
line 273 column 11 - Warning: <img> lacks "alt" attribute
line 283 column 15 - Warning: <img> lacks "alt" attribute
line 290 column 488 - Warning: <img> lacks "alt" attribute
line 298 column 22 - Warning: <img> lacks "alt" attribute
line 298 column 63 - Warning: <img> lacks "alt" attribute
line 298 column 112 - Warning: <img> lacks "alt" attribute
line 298 column 162 - Warning: <img> lacks "alt" attribute
line 299 column 11 - Warning: <img> lacks "alt" attribute
line 309 column 15 - Warning: <img> lacks "alt" attribute
line 324 column 22 - Warning: <img> lacks "alt" attribute
line 324 column 63 - Warning: <img> lacks "alt" attribute
line 324 column 112 - Warning: <img> lacks "alt" attribute
line 324 column 162 - Warning: <img> lacks "alt" attribute
line 335 column 15 - Warning: <img> lacks "alt" attribute
line 344 column 396 - Warning: <img> proprietary attribute value "absmiddle"
line 344 column 396 - Warning: <img> lacks "alt" attribute
line 344 column 449 - Warning: <img> proprietary attribute value "absmiddle"
line 344 column 449 - Warning: <img> lacks "alt" attribute
line 352 column 22 - Warning: <img> lacks "alt" attribute
line 352 column 63 - Warning: <img> lacks "alt" attribute
line 352 column 112 - Warning: <img> lacks "alt" attribute
line 352 column 162 - Warning: <img> lacks "alt" attribute
line 363 column 15 - Warning: <img> lacks "alt" attribute
line 372 column 871 - Warning: <img> proprietary attribute value "absmiddle"
line 372 column 871 - Warning: <img> lacks "alt" attribute
line 376 column 1365 - Warning: <img> proprietary attribute value "absmiddle"
line 376 column 1365 - Warning: <img> lacks "alt" attribute
line 385 column 22 - Warning: <img> lacks "alt" attribute
line 385 column 63 - Warning: <img> lacks "alt" attribute
line 385 column 112 - Warning: <img> lacks "alt" attribute
line 385 column 162 - Warning: <img> lacks "alt" attribute
line 396 column 15 - Warning: <img> lacks "alt" attribute
line 407 column 486 - Warning: <img> proprietary attribute value "absmiddle"
line 407 column 486 - Warning: <img> lacks "alt" attribute
line 407 column 539 - Warning: <img> proprietary attribute value "absmiddle"
line 407 column 539 - Warning: <img> lacks "alt" attribute
line 415 column 22 - Warning: <img> lacks "alt" attribute
line 415 column 63 - Warning: <img> lacks "alt" attribute
line 415 column 111 - Warning: <img> lacks "alt" attribute
line 415 column 161 - Warning: <img> lacks "alt" attribute
line 426 column 15 - Warning: <img> lacks "alt" attribute
line 479 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 479 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 479 column 245 - Warning: <img> proprietary attribute value "absmiddle"
line 488 column 25 - Warning: <img> lacks "alt" attribute
line 493 column 267 - Warning: <img> lacks "alt" attribute
line 149 column 50 - Warning: trimming empty <font>
line 473 column 17 - Warning: trimming empty <tr>
line 476 column 50 - Warning: trimming empty <font>
line 125 column 68 - Warning: <nobr> is not approved by W3C
line 141 column 68 - Warning: <nobr> is not approved by W3C
line 177 column 27 - Warning: <nobr> is not approved by W3C
line 205 column 27 - Warning: <nobr> is not approved by W3C
line 233 column 27 - Warning: <nobr> is not approved by W3C
line 259 column 27 - Warning: <nobr> is not approved by W3C
line 288 column 27 - Warning: <nobr> is not approved by W3C
line 314 column 27 - Warning: <nobr> is not approved by W3C
line 340 column 27 - Warning: <nobr> is not approved by W3C
line 368 column 27 - Warning: <nobr> is not approved by W3C
line 401 column 27 - Warning: <nobr> is not approved by W3C
line 431 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 174 warnings and 0 errors!


The alt attribute should be used to give a short description
of an image; longer descriptions should be given with the
longdesc attribute which takes a URL linked to the description.
These measures are needed for people using non-graphical browsers.

For further advice on how to make your pages accessible
see http://www.w3.org/WAI/GL.
You are recommended to use CSS to specify the font and
properties such as its size and color. This will reduce
the size of HTML files and make them easier to maintain
compared with using <FONT> elements.

You are recommended to use CSS to control line wrapping.
Use "white-space: nowrap" to inhibit wrapping in place
of inserting <NOBR>...</NOBR> into the markup.

About HTML Tidy: https://github.com/htacg/tidy-html5
Bug reports and comments: https://github.com/htacg/tidy-html5/issues
Official mailing list: https://lists.w3.org/Archives/Public/public-htacg/
Latest HTML specification: http://dev.w3.org/html5/spec-author-view/
Validate your HTML documents: http://validator.w3.org/nu/
Lobby your company to join the W3C: http://www.w3.org/Consortium

Do you speak a language other than English, or a different variant of
English? Consider helping us to localize HTML Tidy. For details please see
https://github.com/htacg/tidy-html5/blob/master/README/LOCALIZE.md