Register - Login
Views: 99379844
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-23-22 11:07:06 PM
Jul - SM64 Hacking (Archive) - Mario's current action (RAM values) New poll - New thread - New reply
Next newer thread | Next older thread
RomanianGirl

Level: 16


Posts: 11/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 05-24-08 03:50:44 PM (last edited by RomanianGirl at 12-06-08 10:58 PM) Link | Quote
"Super Mario 64 beta spin jump" code to create that action:
D033AFA1 0020
8133B17C 1080
D033AFA1 0020
8133B17E 08A4
To activate the action, you must press the L button... Still better than nothing! Do a double jump, then upon the triple jump, press the L button, and there's your spin jump!
-----

Here's a list I collected of Mario's current action... Whoever can put this to good use, go ahead. Spent an hour retrieving this data, and It's still incomplete. I'll edit this post and add/edit actions when I figure them out. Hope this is helpful to experienced hackers. (and sorry if it isn't that helpful...)

Note: The value right next to the current action relates to it. I believe it is the previous action. (I'm 99% sure)
Example: When in punch (00800380), value next to it is normal/stand (0C400201)
So in the RAM, it looks like this:
00800380 0C400201

From another post someone made, Mario's current action is located at 8033B17C (NTSC)

-----
Update (12/06/08): Adding some more values.

Land stuff:

0C400201: Normal
0C400202: Pat back, yawn tired, going to sleep
0C000203: Sleeping, laying on back
0C000204: Wake up (verify)
0C400205: Weak Mario
0C40020B: Cold Mario
0002033A: Stuck in snow (Top half in snow)
0002033C: Stuck in snow (bottom half in snow)
0C008220: Duck
04008448: Crawl
0C008224: Getting up
08000206: carry small (?)
08000207: pick up thing
00000383: Pick up thing
08000208: Carry large thing
80000589: Throw large thing
00000387: Set thing (penguin) down gentle
0000132F: Open door with star
00001300: In painting (?)
00001325: Enter level (?)
00001904: Get star
00001302: Peace sign after star
00001327: Hold cap brush face (after star)
00001928: Out of painting when die
00020460: Out of level when lose
00001336: Using warp
00001336: Arrive at destination of warp
00800380: Attacking (in general?)
20810446: Riding a shell
0C400209: Standing against wall
04000440: Sneaking against wall
08100340: In tree
00100342: Grab onto tree
00100343: Climb tree up (if activated on ground, immediate death)
00100344: Prepare handstand on tree
00100345: Handstand in tree already
0300088D: Jump from tree
04000471: about to land (?)
08100340: Mario holding on pole
00100343: Climb up pole
000004A8: Holding onto hoot's foot
00200349: Holding on bar above
0020054A: moving across bars
00001371: In cannon (if on ground and press a, he will launch! caution: Glitches easily)
00880898: Flying, shot out of Cannon
00880456: Sliding
20001305: Happens after unlocking door with stars
20001306: Talking to something
00001308: Reading sign
0000133D: Put on cap
10880899: Flying
010208B0: Hit wall
00001321: Open door
0800034B: hanging of ledge
0000054C: Climb up slow
0000054F: Climb up fast
00840452: Sitting
008C0453: Sliding forward
00020467: From after dying (Mario: mama mia!)

Hurt stuff (on land):

00020462: Hurt by something
00020464: Mario hit (no damage)
00020465: Hurt by enemy
00020338: Shocked
00000479: Fall from high up, crushed
00020460: Fall from extreme height
00021311: Fall from high jump (standing to sit)
00020449: Burning
010208B7: Jumping from Lava
00021312: Sinking in quicksand to die
010208B7: Mario pushed off ledge

Jumping stuff:

03000880: Single Jump
03000881: Double Jump
01000882: Triple Jump
018008AC: Kick in air
108008A4: Spin in air
18800238: land from spin
0C000230: Land on ground
04000472: Land on ground 2
04000478: Land on ground 3
0800023A: Landed on ground (Mario will not say aha)
030008AF: Triple jump (with sparkles after Yoshi)
0C000232: land from it
01000887: cartwheel in air
04000473: Land on ground
01000883: Backflip
0800022F: Land
008008A9: Stomp in air
0080023C: Land, stars form out
0C00023E: Get up
03000888: Long jump (seems to force land sequence)
0800023B: Recover from long jump
04000440: Run/run/movement? (will not force run animation?)
0C00023D: Slide to stop
0188088A: Jump launch
00880456: Sliding on ground
010208B6: Hit wall
00000386: Getting up

Water stuff

380022C0: Floating in water
380022C1: arms together (hold something in water)
300022C2: swimming (floating to surface?)
300024E0: Throw something in water
300024D6: Using shell under water
300024E1: Grab/hit something in water
300024D1: Breast stroke in water
300024D2: Swimming with kicking legs
01000889: Jump out of swim water
0400044A: Water exit to air/land
300222C5: Hurt by something under water
300032C4: Drowning
00001303: Get star underwater

Bowser stuff:

00000390: Grab bowser by tail
00000391: Hold bowser by tail
00000392: Throw bowser
00001302: Get key (win)
0000192B: Jump (after win?)
00001327: Take key out, throw in air catch (this also animates when Mario wins without a hat)
00020226 - Mario hop (Bowser jumps on platform)

Credits stuff: (note: * = ONLY outside castle)
0000131A - Mario waving*
00001909 - Mario flies to castle to meet peach
00001918 - End sequence when Mario rescues Peach*
pikmin 100
40
Level: 17


Posts: 44/46
EXP: 22803
For next: 1940

Since: 09-07-07

From: texas

Since last post: 13.9 years
Last activity: 13.7 years

Posted on 05-26-08 03:51:14 AM Link | Quote
This is very good! Thanks for posting.
ElectaGuitar
Random nobody
Level: 6


Posts: 1/4
EXP: 566
For next: 341

Since: 07-26-08


Since last post: 13.7 years
Last activity: 13.7 years

Posted on 07-27-08 01:38:32 AM Link | Quote
The code doesnt work for me =( Any suggestions why?
battleben

Level: 9


Posts: 5/11
EXP: 2592
For next: 570

Since: 06-27-08


Since last post: 12.5 years
Last activity: 12.0 years

Posted on 07-27-08 06:07:26 AM Link | Quote
thank you so much i can edit this code to make other codes!(ive already done press l to do a backflip and press l to get a star)
RomanianGirl

Level: 16


Posts: 14/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 07-27-08 03:33:46 PM Link | Quote
Originally posted by ElectaGuitar
The code doesnt work for me =( Any suggestions why?


Are you using an NTSC ROM? Did you press the equivilent L button on your keyboard/controller?

If it still doesn't work, post again and I'll try to help.


Originally posted by battleben
thank you so much i can edit this code to make other codes!(ive already done press l to do a backflip and press l to get a star)


Great, I'm glad this code has become a little useful!
ElectaGuitar
Random nobody
Level: 6


Posts: 4/4
EXP: 566
For next: 341

Since: 07-26-08


Since last post: 13.7 years
Last activity: 13.7 years

Posted on 07-27-08 06:50:19 PM Link | Quote
Originally posted by RomanianGirl
Originally posted by ElectaGuitar
The code doesnt work for me =( Any suggestions why?


Are you using an NTSC ROM? Did you press the equivilent L button on your keyboard/controller?

If it still doesn't work, post again and I'll try to help.


Originally posted by battleben
thank you so much i can edit this code to make other codes!(ive already done press l to do a backflip and press l to get a star)


Great, I'm glad this code has become a little useful!


Well, it doesnt let me add the code! I try removing the spaces in the end...but alas, nothing =(
RomanianGirl

Level: 16


Posts: 15/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 08-02-08 01:46:46 PM Link | Quote
Originally posted by ElectaGuitar

Well, it doesnt let me add the code! I try removing the spaces in the end...but alas, nothing =(



You can try to manually type in the code into your cheat program, this is all the advice I can give (It is only 4 lines anyways) I hope this helps you!
Lyskar
12210
-The Chaos within trumps the Chaos without-
Level: 192


Posts: 1615/12211
EXP: 99235563
For next: 638008

Since: 07-03-07

From: 52-2-88-7

Since last post: 7.4 years
Last activity: 7.3 years

Posted on 08-03-08 08:28:20 PM Link | Quote

Time/Date

08-03-08 02:28:20pm

Posts

1615

Days Here

397

Level

55
Metal_Man88
Local Moderator
Anyone else with code troubles may wish to do it in PM, for it gets a bit cluttered in the topic if it's filled with 'i have trouble with code '.

____________________
Original Layout © Tobias Kelmandia
SubDrag
Member
Level: 13


Posts: 8/27
EXP: 10083
For next: 184

Since: 03-01-08


Since last post: 7.1 years
Last activity: 8.1 years

Posted on 08-22-08 12:08:06 PM Link | Quote
Great code. Spinning is fun.
messiaen
Catgirl
Level: 68


Posts: 436/1085
EXP: 2594039
For next: 134761

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 12-17-08 12:26:38 PM Link | Quote
I'm a bit late, but thanks for this list. This kind of stuff is very useful if you want to locate the coding for a specific mario action, doing Gameshark codes and ASM hacks.

I remember also seeing some list of the "status" byte at 0x8033B170 (if I'm not mistaken, this is the value displayed as "STA" in the Debug mode). Does anybody have this?

____________________
Mario 64 notes @ http://sites.google.com/site/messiaen64/
Mattrizzle
150
Level: 29


Posts: 28/151
EXP: 136153
For next: 11732

Since: 07-27-07

From: United States

Since last post: 18 days
Last activity: 18 days

Posted on 12-18-08 01:05:21 AM (last edited by Mattrizzle at 12-17-08 10:21 PM) Link | Quote
Originally posted by RomanianGirl
"Super Mario 64 beta spin jump" code to create that action:
D033AFA1 0020
8133B17C 1080
D033AFA1 0020
8133B17E 08A4
To activate the action, you must press the L button... Still better than nothing! Do a double jump, then upon the triple jump, press the L button, and there's your spin jump!


By using the second action RAM address as an activator instead of the button RAM address, you can make replace Mario's triple jump with the spin jump without having to use the L Button! When the value for the triple jump(0882) is detected, the values for the spin jump will be placed into the RAM addresses for Mario's action.

D133B17E 0882
8133B17C 1080
D133B17E 0882
8133B17E 08A4

Likewise, if you want to replace the sparkly spin jump, use this code:
D133B17E 08AF
8133B17C 1080
D133B17E 08AF
8133B17E 08A4

And here are a couple more values:
0C40020A: Coughing (Hazy Maze Cave)
0002033B: Stuck in snow/sand (Butt in snow/sand)

____________________
SMW
Jul DKC Atlas
Board 2
BigBrain
Member
Level: 22


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

Since: 09-10-08


Since last post: 8.8 years
Last activity: 6.7 years

Posted on 12-18-08 07:45:30 AM Link | Quote
Originally posted by Mattrizzle

By using the second action RAM address as an activator instead of the button RAM address, you can make replace Mario's triple jump with the spin jump without having to use the L Button! When the value for the triple jump(0882) is detected, the values for the spin jump will be placed into the RAM addresses for Mario's action.

D133B17E 0882
8133B17C 1080
D133B17E 0882
8133B17E 08A4

Likewise, if you want to replace the sparkly spin jump, use this code:
D133B17E 08AF
8133B17C 1080
D133B17E 08AF
8133B17E 08A4

And here are a couple more values:
0C40020A: Coughing (Hazy Maze Cave)
0002033B: Stuck in snow/sand (Butt in snow/sand)

lol would be funny to force players to only double jump by replacing the third jump with stuck in snow xD
Well... would probably be not that funny when playing more than one minute, but I really think this could be useful for some cool ideas, good job guys!
messiaen
Catgirl
Level: 68


Posts: 437/1085
EXP: 2594039
For next: 134761

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 12-18-08 02:33:53 PM Link | Quote
I'll use this thread to ask for some help on something related. I've been trying to figure more about the "Mario" struct in RAM, which points to a lot of interesting information.

It begins at 0x8033b170 in RAM and its size seems to be 0xc0 bytes. Here it's declared in C-style for the header files I'm working on. The variables which I don't known the purpose are labelled as _relative_offset, so just do (0x8033b170 + relative offset) to get the RAM address for it.

If you happen to find something about one of the unknown variables or know a Gameshark codes that uses them, it would be helpful.


struct mario /* 0x8033b170 */
{
u32 status;
u32 flags; /* cap & other flags (To Do: experiment more with this) */
u32 _0x08;
u32 action; /* see Romanian Girl huge list */
u32 previous_action; /* 0x10 = 0x8033b180 */
u32 _0x14;
u32 _0x18;
u32 _0x1c;
float _0x20; /* 0x20 = 0x8033b190*/
u16 _0x26;
s16 hitstun;
u32 _0x28;
u32 _0x2c;
u32 _0x30; /* 0x30 */
u32 _0x34;
u32 _0x38;
float x_pos; /* re-check */
float y_pos; /* 0x40 */
float z_pos; /* re-check */
u32 _0x48;
u32 _0x4c;
u32 _0x50; /* 0x50 */
u32 _0x54;
u32 _0x58;
u32 _0x5c;
u32 _0x60; /* 0x60 */
u32 _0x64;
u32 _0x68_ptr;
float _0x6c;
float _0x70; /* 0x70 */
u32 _0x74;
u32 _0x78;
u32 _0x7c;
u32 _0x80; /* 0x80 */
u32 _0x84;
u32 _0x88_ptr;
u32 _0x8c_ptr;
u32 _0x90_ptr; /* 0x90 */
u32 _camera_struct_ptr; /* To Do: make a separate Camera struct */
u32 _0x98_ptr;
u32 *Pad; /* this should be used for reading controller input (see n64.h) */
u32 _0xa0_ptr; /* 0xa0 */
u32 _0xa4;
s16 coins;
s16 stars;
s16 lifes;
s16 power;
u32 _0xb0; /* 0xb0 */
u32 _0xb4;
u32 _0xb8;
float _0xbc;
float _0xc0; /* 0xc0 */
};


____________________
Mario 64 notes @ http://sites.google.com/site/messiaen64/
RomanianGirl

Level: 16


Posts: 23/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 12-21-08 04:54:47 AM Link | Quote
Hey everyone, thanks for posting! I'm glad this topic's more useful now.

I've already implemented the spin jump by changing the value for "triple jump" with "spin jump" in RAM. Of course I really could have never done this without James' (Yoshielectron) help with locating the Mario jump index. (I hope I am using the right wording).
There seems to be a connection between the RAM values, and the location of certain jumps within the jump index.
I'll post more information another day. I need to re-examine this.
MarIO0
Member
Level: 16


Posts: 3/43
EXP: 19156
For next: 1100

Since: 09-03-09


Since last post: 9.2 years
Last activity: 8.6 years

Posted on 09-07-09 02:40:42 AM Link | Quote
Simple D program that finds SOME Mario actions.




import std.stdio;
import std.file;

int main(string[] args)
{
byte[] marioRom;

// Title
writeln("MarioActionFinder v1.0")
writeln("----------------------")
writeln("Usage: MarioActionFinder mario.z64")
writeln()

// Check arguments
if (args.length != 2)
{
writeln("ERROR: Invalid argument count.")
return -1;
}

// Read the ROM
marioRom = cast(byte[])std.file.read(args[1])

// Find the opcodes
for (size_t i = 0; i <= (marioRom.length - 0x10) i++)
{
// 0x3C 0x01 0xAA 0xBB = LUI AT, 0xAABB
// 0x34 0x21 0xCC 0xDD = ORI AT, AT, 0xCCDD
// 0x12 0x01 0xEE 0xFF = BEQ S0, AT, ActionHandler
// 0x00 0x00 0x00 0x00 = NOP
if (
marioRom[i+0x00] == 0x3C && marioRom[i+0x01] == 0x01 && // LUI
marioRom[i+0x04] == 0x34 && marioRom[i+0x05] == 0x21 && // ORI
marioRom[i+0x08] == 0x12 && marioRom[i+0x09] == 0x01 && // BEQ
marioRom[i+0x0C] == 0x00 && marioRom[i+0x0D] == 0x00 && // NOP
marioRom[i+0x0E] == 0x00 && marioRom[i+0x0F] == 0x00 // NOP
)
{
writefln("Offset: %.8X | Action %.2X%.2X%.2X%.2X",
i, // Offset
marioRom[i + 0x02], marioRom[i + 0x03], // 0xAA 0xBB
marioRom[i + 0x06], marioRom[i + 0x07] // 0xCC 0xDD
)
}
}

return 0;
}

Vinnyboiler
Catgirl
Level: 66


Posts: 73/1044
EXP: 2439777
For next: 22074

Since: 12-27-07

From: London, England

Since last post: 6 days
Last activity: 3 days

Posted on 10-27-09 05:01:00 PM Link | Quote
I have been following this topic and so far I have found it useful for my hack but there is something i don't understand.
Lets say that insted of changing Marios triple jump I want to change his backwards jump insted, how would I be able to acheve this?
Hectamatatortron
Member
Level: 35


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

Since: 09-19-07


Since last post: 7.2 years
Last activity: 5.3 years

Posted on 10-30-09 09:40:49 PM (last edited by Hectamatatortron at 10-30-09 06:45 PM) Link | Quote
If I understand this correctly, you're using the exact same concept I thought up several years ago when hacking Megaman Zero, which I used to restore Zero's state to the "neutral" state each time he performed an attack, allowing him to chain his attacks together without any lag.

With some knowledge of assembly, one could use this technique to reprogram the flow of Mario's movements fairly easily...messiaen, do you have any stuff on this in your C header files?

Fun story; when I was making those MM0 codes, I noticed that my use of the GameShark code types was similar to programming, and shortly after started learning assembly so that I could do some real programming on the grounds that if it was easy to conditionally define behavior using cheat device codes, it wouldn't be that much harder to learn a slightly larger instruction set and program with that instead.

I wish more people would attempt things like that instead of resorting to the typical "I can't" or "I'm happy with what I can do".

____________________
Lyskar
12210
-The Chaos within trumps the Chaos without-
Level: 192


Posts: 3600/12211
EXP: 99235563
For next: 638008

Since: 07-03-07

From: 52-2-88-7

Since last post: 7.4 years
Last activity: 7.3 years

Posted on 10-30-09 10:04:07 PM Link | Quote

Time/Date

&date&

Posts

&numposts&

Days Here

&numdays&

Level

&level&
Metal_Man88
Local Moderator
The issue is there are people trying to go beyond the norm, but if done without care, it can just turn into a 'look at me Peach is playable' and then make endless Youtube videos of castles with randomly horribly swapped colors and Peach's corpse flopping around in a Mario-esque way.

____________________
Original Layout © Tobias Kelmandia
messiaen
Catgirl
Level: 68


Posts: 679/1085
EXP: 2594039
For next: 134761

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 10-30-09 11:13:13 PM Link | Quote
Originally posted by vinnyboiler
I have been following this topic and so far I have found it useful for my hack but there is something i don't understand.
Lets say that insted of changing Marios triple jump I want to change his backwards jump insted, how would I be able to acheve this?


Not sure what you mean. Are you talking about, for instance, replacing the triple jump with the backward jump? Matrizzle posted a nice method if you want to replace actions.

Originally posted by Hectamatatortron
With some knowledge of assembly, one could use this technique to reprogram the flow of Mario's movements fairly easily...messiaen, do you have any stuff on this in your C header files?


Haven't worked much on Mario's code, however using the list on this topic you can very easily change the actions assigned to Mario in specific actions. This function is used:

SetMarioAction = 0x80252cf4;
extern int SetMarioAction(mario_struct *Mario, u32 action, u32 unk_arg); /* to Do: check return values */

For instance, with a quick search one can easily find this cannon-related code:

80260084: LUI A1, 0x0088
80260088: ORI A1, A1, 0x0898 ; "Flying, shot out of Cannon " action
8026008C: LW A0, 0x0030 (SP)
80260090: JAL 0x80252CF4 ; set Mario action

Something interesting to note is that the first half-word of Mario actions are flags for his general status. For instance, on the Fire Mario code I was working I used "if ( MarioAction & 0x03000000 )" to check if Mario is on water. I haven't worked the meaning of these flags much, however it would be interesting to do some work on this. It would also make disassembling Mario action's handler much easier.

Originally posted by Hectamatatortron

Fun story; when I was making those MM0 codes, I noticed that my use of the GameShark code types was similar to programming, and shortly after started learning assembly so that I could do some real programming on the grounds that if it was easy to conditionally define behavior using cheat device codes, it wouldn't be that much harder to learn a slightly larger instruction set and program with that instead.

I wish more people would attempt things like that instead of resorting to the typical "I can't" or "I'm happy with what I can do".

Indeed, some of the most complex Gameshark codes are pretty much like using a script language. Navigating ASM code and seeing how things are laid in memory is so helpful to programming, after that things such as pointers fells very natural. By the way, most of the time people don't realize how game hacking is sometimes incredible simple from a programming perspective, such as modifying a conditional structure to remove a limitation of the game.
Next newer thread | Next older thread
Jul - SM64 Hacking (Archive) - Mario's current action (RAM values) New poll - New thread - New reply


Rusted Logic

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

37 database queries, 6 query cache hits.
Query execution time:  0.092959 seconds
Script execution time:  0.040741 seconds
Total render time:  0.133700 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 288 - 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 206 - 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 99 - Warning: unescaped & or unknown entity "&postid"
line 338 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 340 column 9 - Warning: missing <tr>
line 358 column 13 - Warning: missing <tr>
line 359 column 99 - Warning: unescaped & or unknown entity "&postid"
line 364 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 366 column 9 - Warning: missing <tr>
line 384 column 13 - Warning: missing <tr>
line 385 column 99 - Warning: unescaped & or unknown entity "&postid"
line 390 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 392 column 9 - Warning: missing <tr>
line 410 column 13 - Warning: missing <tr>
line 411 column 99 - Warning: unescaped & or unknown entity "&postid"
line 416 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 418 column 9 - Warning: missing <tr>
line 436 column 13 - Warning: missing <tr>
line 437 column 99 - Warning: unescaped & or unknown entity "&postid"
line 451 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 453 column 9 - Warning: missing <tr>
line 471 column 13 - Warning: missing <tr>
line 472 column 99 - Warning: unescaped & or unknown entity "&postid"
line 489 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 491 column 9 - Warning: missing <tr>
line 509 column 13 - Warning: missing <tr>
line 510 column 99 - Warning: unescaped & or unknown entity "&postid"
line 519 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 521 column 9 - Warning: missing <tr>
line 539 column 13 - Warning: missing <tr>
line 540 column 99 - Warning: unescaped & or unknown entity "&postid"
line 542 column 73 - Warning: <style> isn't allowed in <td> elements
line 542 column 9 - Info: <td> previously mentioned
line 542 column 960 - Error: <z> is not recognized!
line 542 column 960 - Warning: discarding unexpected <z>
line 542 column 982 - Warning: discarding unexpected </z>
line 542 column 1008 - Error: <z> is not recognized!
line 542 column 1008 - Warning: discarding unexpected <z>
line 542 column 1015 - Warning: discarding unexpected </z>
line 542 column 1045 - Error: <z> is not recognized!
line 542 column 1045 - Warning: discarding unexpected <z>
line 542 column 1051 - Warning: discarding unexpected </z>
line 542 column 1077 - Error: <z> is not recognized!
line 542 column 1077 - Warning: discarding unexpected <z>
line 542 column 1082 - Warning: discarding unexpected </z>
line 545 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 547 column 9 - Warning: missing <tr>
line 565 column 13 - Warning: missing <tr>
line 566 column 99 - Warning: unescaped & or unknown entity "&postid"
line 571 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 573 column 9 - Warning: missing <tr>
line 591 column 13 - Warning: missing <tr>
line 592 column 99 - Warning: unescaped & or unknown entity "&postid"
line 599 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 601 column 9 - Warning: missing <tr>
line 619 column 13 - Warning: missing <tr>
line 620 column 99 - Warning: unescaped & or unknown entity "&postid"
line 644 column 1302 - Warning: <area> attribute "central/" lacks value
line 649 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 651 column 9 - Warning: missing <tr>
line 669 column 13 - Warning: missing <tr>
line 670 column 99 - Warning: unescaped & or unknown entity "&postid"
line 694 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 696 column 9 - Warning: missing <tr>
line 714 column 13 - Warning: missing <tr>
line 715 column 99 - Warning: unescaped & or unknown entity "&postid"
line 781 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 783 column 9 - Warning: missing <tr>
line 801 column 13 - Warning: missing <tr>
line 802 column 99 - Warning: unescaped & or unknown entity "&postid"
line 811 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 813 column 9 - Warning: missing <tr>
line 831 column 13 - Warning: missing <tr>
line 832 column 101 - Warning: unescaped & or unknown entity "&postid"
line 888 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 890 column 9 - Warning: missing <tr>
line 908 column 13 - Warning: missing <tr>
line 909 column 101 - Warning: unescaped & or unknown entity "&postid"
line 915 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 917 column 9 - Warning: missing <tr>
line 935 column 13 - Warning: missing <tr>
line 936 column 101 - Warning: unescaped & or unknown entity "&postid"
line 947 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 949 column 9 - Warning: missing <tr>
line 967 column 13 - Warning: missing <tr>
line 968 column 101 - Warning: unescaped & or unknown entity "&postid"
line 970 column 74 - Warning: <style> isn't allowed in <td> elements
line 970 column 9 - Info: <td> previously mentioned
line 970 column 961 - Error: <z> is not recognized!
line 970 column 961 - Warning: discarding unexpected <z>
line 970 column 964 - Warning: unescaped & or unknown entity "&date"
line 970 column 970 - Warning: discarding unexpected </z>
line 970 column 996 - Error: <z> is not recognized!
Tidy found 368 warnings and 8 errors! Not all warnings/errors were shown.

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