Register - Login
Views: 99349132
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-21-22 05:45:01 PM
Jul - NSMB Hacking (Archive) - [Tutorial] How to Hex Edit NSMB New poll - New thread - New reply
Next newer thread | Next older thread
Garmichael
Member
Level: 26


Posts: 46/121
EXP: 91098
For next: 11177

Since: 06-24-09

From: Seattle, Wa

Since last post: 10.8 years
Last activity: 10.6 years

Posted on 08-30-09 05:26:08 PM (last edited by dirbaio at 03-02-11 03:49 PM) Link | Quote

Note: Hex editing is considered an advanced feature of NSMB Editor. Also, ALWAYS back up your level (or better: your ROM) before hex editing in case you do something wrong

Also, hex editing is now nearly useless. Now, the editor lets you edit nearly everything in a level, so there's no need to manually hex edit a level. I'll leave it here just in case.
~Dirbaio


There have been some questions lately about how to hex edit levels in New Super Mario Bros to access and edit features not yet implemented by the GUI editor. This is a tutorial on how to do that.


1)

Select your level, then hit the Hex Edit button.


2)

There are 14 "Blocks" you can edit, selectable by using the drop down box.
I've underlined most of the bits pairs of two. Most data is stored as a numeric variable that takes up 4 characters.
However, notice that I underlined a few of them as just pairs. That is because some data is stored as a numeric value that only takes two characters.
Treeki, Tanks, myself, and some other people have done extensive research on what each block does, and we reported our findings in the long stickied thread.



3)

I will explain how to edit the data using block 8, which contains the information for views. A View has several variables, as you can see in the image.

Using the information found in this post and this post, we will edit the dimensions of the view in my world 1-1.


4)
The first thing that is confusing is how to convert hex into decimal.

Decimal is called "Base 10"
This is what we use most of the time with our math. We count 10 numbers before we increment the tenth's place.
We go:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Then, we've run out of numbers, so we go:
10, 11, 12, 13, 14, 15, 16, 17, 18, 19

Hex is called "Base 16"
In this base, we count 16 numbers before we increment the tenth's place.
We go:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Then, we go:
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F




To convert between the two, you can do it in your head, but its tricky. The best way to do it is to use the Windows Calculator.
To convert from Dec to Hex, make sure you're in Dec mode first, then type in your number, then click Hex. It works this way vice-versa.


5)
So, lets say we want to use 6688 for our X position for our view.
We convert it into Hex, and we find that 6688 in Dec is equal to 1A20 in hex.

Before we can plug that into the editor, we need to make one minor, simple adjustment. The four digit values must be switched around by pairs of two.


We use: 1A20, which is equal to 6688.

First, break it in two two pairs: 1A 20
Then, swap their order: 20 1A.
Now, 201A is the value we have to plug into editor to use a value of 6688.

This is confusing to deal with and tricky to remember, but it gets easier.

--

Now, lets use a value of 586, which is equal to 24A. This is tricky because its only 3 digits, not 4.
So, before we can swap its order, we need to realize that 24A = 024A
Now, we can swap it: 4A02
Plug that into the editor for a value of 586.

--

Some variables are only two digits, like the ID. You do not need to swap anything here.



____________________

Ninji

Birdo
Why did my user title say I'm a toaster anyway
Level: 88


Posts: 479/2014
EXP: 6631461
For next: 19203

Since: 07-26-07

Pronouns: he/him or they/them
From: Glasgow, Scotland

Since last post: 101 days
Last activity: 15 days

Posted on 08-30-09 07:18:54 PM Link | Quote
Stickied. Great tutorial

____________________
[00:17:56] <+XkeeperSucks> treeki the spoiled brat go get speakers · Hacking Tools: NSMB Editor 4 · Nitro Explorer · NARC Explorer
Ehm
Member
Level: 49


Posts: 102/533
EXP: 843135
For next: 40748

Since: 06-13-09

From: Canada

Since last post: 4.0 years
Last activity: 4.0 years

Posted on 08-31-09 03:34:32 PM Link | Quote
agreed ^__^ Okay, so I get conversions and counting now, and where things need to go in Block 8. But do you guys have a list of possible variables and what they do? For example, what are the max X, Y, H and W variables I can use, and how do I apply more than one in an area (you know how some areas have more than one gray outlined area)? and if H and W are for the camera's total height and width, what do X and Y edit?
Ninji

Birdo
Why did my user title say I'm a toaster anyway
Level: 88


Posts: 480/2014
EXP: 6631461
For next: 19203

Since: 07-26-07

Pronouns: he/him or they/them
From: Glasgow, Scotland

Since last post: 101 days
Last activity: 15 days

Posted on 08-31-09 03:40:15 PM Link | Quote
Originally posted by m64m
agreed ^__^ Okay, so I get conversions and counting now, and where things need to go in Block 8. But do you guys have a list of possible variables and what they do? For example, what are the max X, Y, H and W variables I can use, and how do I apply more than one in an area (you know how some areas have more than one gray outlined area)? and if H and W are for the camera's total height and width, what do X and Y edit?

You won't want to make your level area go past 512x256 tiles, or 8192x4096 pixels - I'm not sure how the game will behave here since this is the max size for levels.

X and Y are the position of the grey outlined area (the bit you can view in-game).
If an area has more than one of them, block 8 will be bigger - notice how Garmichael's screenshot contains "30 00 B0 00 80 10 40 01 00 00 1A 00 00 00 00 01"?
That string is for the first grey outlined area. If a level has more than one, there will be multiple strings; one for each.


____________________
[00:17:56] <+XkeeperSucks> treeki the spoiled brat go get speakers · Hacking Tools: NSMB Editor 4 · Nitro Explorer · NARC Explorer
Ehm
Member
Level: 49


Posts: 103/533
EXP: 843135
For next: 40748

Since: 06-13-09

From: Canada

Since last post: 4.0 years
Last activity: 4.0 years

Posted on 08-31-09 04:00:59 PM Link | Quote
okay so in Hex, to enter a max width and height of 512x256 tiles, I'd put 200x100 in Block 8?
Ninji

Birdo
Why did my user title say I'm a toaster anyway
Level: 88


Posts: 481/2014
EXP: 6631461
For next: 19203

Since: 07-26-07

Pronouns: he/him or they/them
From: Glasgow, Scotland

Since last post: 101 days
Last activity: 15 days

Posted on 08-31-09 04:07:12 PM Link | Quote
Originally posted by m64m
okay so in Hex, to enter a max width and height of 512x256 tiles, I'd put 200x100 in Block 8?

Not exactly. Block 8 uses pixels instead of tiles, so you'd want 2000x1000. This means that the width/height values would be "00 20 00 10".

Also, remember that this is the max area the entire level can be in - not just one particular "room". So if you wanted to use this size, you'd need to set the X/Y position to 0.

____________________
[00:17:56] <+XkeeperSucks> treeki the spoiled brat go get speakers · Hacking Tools: NSMB Editor 4 · Nitro Explorer · NARC Explorer
Ehm
Member
Level: 49


Posts: 104/533
EXP: 843135
For next: 40748

Since: 06-13-09

From: Canada

Since last post: 4.0 years
Last activity: 4.0 years

Posted on 08-31-09 04:31:44 PM Link | Quote
for sure. I just wanted to get a feel for the coding. how would I go about a camera pathway? Like this:



Should I put the total width and height, and just use scroll control sprites to form the camera pathway?
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 40/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.8 years
Last activity: 9.9 years

Posted on 08-31-09 05:26:00 PM Link | Quote
yes. the views are only rectangles. To make more advanced control of the camera you must use scroll controls and scroll stops...
Ehm
Member
Level: 49


Posts: 105/533
EXP: 843135
For next: 40748

Since: 06-13-09

From: Canada

Since last post: 4.0 years
Last activity: 4.0 years

Posted on 08-31-09 05:34:35 PM Link | Quote
okay, thanks everyone for the info ^__^ If I have any further Hex questions I'll post 'em here.
Garmichael
Member
Level: 26


Posts: 48/121
EXP: 91098
For next: 11177

Since: 06-24-09

From: Seattle, Wa

Since last post: 10.8 years
Last activity: 10.6 years

Posted on 09-01-09 12:18:51 AM (last edited by Garmichael at 08-31-09 09:19 PM) Link | Quote

Another trick you can use to control the camera without using any sprites is found in the second half of This Post, under "I found something else..."


____________________

Ehm
Member
Level: 49


Posts: 106/533
EXP: 843135
For next: 40748

Since: 06-13-09

From: Canada

Since last post: 4.0 years
Last activity: 4.0 years

Posted on 09-01-09 11:21:36 AM Link | Quote
how would you go about setting up the panning blocks?
dirbaio
For future reference, "Responsible disclosure" isn't "acting like a douche about an exploit and demanding compensation".
Level: NaN


Posts: 41/-1288
EXP: NaN
For next: 0

Since: 07-28-09

From: Spain

Since last post: 10.8 years
Last activity: 9.9 years

Posted on 09-01-09 12:06:34 PM Link | Quote
http://nsmbhacking.wikidot.com/camera

Simply you have to imagine the level divided into square blocks of 16 tiles (256 pixels). If a block is empty, the camera will NEVER pan into it. You can use that to control the camera.
Ehm
Member
Level: 49


Posts: 112/533
EXP: 843135
For next: 40748

Since: 06-13-09

From: Canada

Since last post: 4.0 years
Last activity: 4.0 years

Posted on 09-02-09 03:45:35 PM Link | Quote
ah. This explains quite a few camera issues I had XD
Next newer thread | Next older thread
Jul - NSMB Hacking (Archive) - [Tutorial] How to Hex Edit NSMB New poll - New thread - New reply


Rusted Logic

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

30 database queries, 8 query cache hits.
Query execution time:  0.103887 seconds
Script execution time:  0.020544 seconds
Total render time:  0.124431 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 192 - 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 147 column 187 - Warning: plain text isn't allowed in <tr> elements
line 147 column 35 - Info: <tr> previously mentioned
line 148 column 37 - Warning: unescaped & or unknown entity "&id"
line 147 column 203 - 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 179 column 74 - Warning: <style> isn't allowed in <td> elements
line 179 column 9 - Info: <td> previously mentioned
line 262 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 264 column 9 - Warning: missing <tr>
line 282 column 13 - Warning: missing <tr>
line 283 column 101 - Warning: unescaped & or unknown entity "&postid"
line 285 column 74 - Warning: <link> isn't allowed in <td> elements
line 285 column 9 - Info: <td> previously mentioned
line 285 column 661 - Warning: discarding unexpected </i>
line 288 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 290 column 9 - Warning: missing <tr>
line 308 column 13 - Warning: missing <tr>
line 309 column 101 - Warning: unescaped & or unknown entity "&postid"
line 314 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 316 column 9 - Warning: missing <tr>
line 334 column 13 - Warning: missing <tr>
line 335 column 101 - Warning: unescaped & or unknown entity "&postid"
line 337 column 74 - Warning: <link> isn't allowed in <td> elements
line 337 column 9 - Info: <td> previously mentioned
line 343 column 1646 - Warning: discarding unexpected </i>
line 346 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 348 column 9 - Warning: missing <tr>
line 366 column 13 - Warning: missing <tr>
line 367 column 101 - Warning: unescaped & or unknown entity "&postid"
line 372 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 374 column 9 - Warning: missing <tr>
line 392 column 13 - Warning: missing <tr>
line 393 column 101 - Warning: unescaped & or unknown entity "&postid"
line 395 column 74 - Warning: <link> isn't allowed in <td> elements
line 395 column 9 - Info: <td> previously mentioned
line 398 column 1095 - Warning: discarding unexpected </i>
line 401 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 403 column 9 - Warning: missing <tr>
line 421 column 13 - Warning: missing <tr>
line 422 column 101 - Warning: unescaped & or unknown entity "&postid"
line 426 column 281 - Warning: unescaped & or unknown entity "&h"
line 431 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 433 column 9 - Warning: missing <tr>
line 451 column 13 - Warning: missing <tr>
line 452 column 101 - Warning: unescaped & or unknown entity "&postid"
line 457 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 459 column 9 - Warning: missing <tr>
line 477 column 13 - Warning: missing <tr>
line 478 column 101 - Warning: unescaped & or unknown entity "&postid"
line 483 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 485 column 9 - Warning: missing <tr>
line 503 column 13 - Warning: missing <tr>
line 504 column 101 - Warning: unescaped & or unknown entity "&postid"
line 506 column 74 - Warning: <style> isn't allowed in <td> elements
line 506 column 9 - Info: <td> previously mentioned
line 512 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 514 column 9 - Warning: missing <tr>
line 532 column 13 - Warning: missing <tr>
line 533 column 101 - Warning: unescaped & or unknown entity "&postid"
line 538 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 540 column 9 - Warning: missing <tr>
line 558 column 13 - Warning: missing <tr>
line 559 column 101 - Warning: unescaped & or unknown entity "&postid"
line 566 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 568 column 9 - Warning: missing <tr>
line 586 column 13 - Warning: missing <tr>
line 587 column 101 - Warning: unescaped & or unknown entity "&postid"
line 592 column 17 - Warning: missing <tr>
line 592 column 17 - Warning: discarding unexpected <table>
line 595 column 35 - Warning: missing <tr>
line 595 column 50 - Warning: missing </font> before </td>
line 595 column 91 - Warning: missing </font> before </table>
line 597 column 35 - Warning: missing <tr>
line 597 column 50 - Warning: missing </font> before </td>
line 597 column 187 - Warning: plain text isn't allowed in <tr> elements
line 597 column 35 - Info: <tr> previously mentioned
line 598 column 37 - Warning: unescaped & or unknown entity "&id"
line 597 column 203 - Warning: missing </font> before </table>
line 599 column 17 - Warning: discarding unexpected </textarea>
line 599 column 28 - Warning: discarding unexpected </form>
line 599 column 35 - Warning: discarding unexpected </embed>
line 599 column 43 - Warning: discarding unexpected </noembed>
line 599 column 53 - Warning: discarding unexpected </noscript>
line 599 column 64 - Warning: discarding unexpected </noembed>
line 599 column 74 - Warning: discarding unexpected </embed>
line 599 column 82 - Warning: discarding unexpected </table>
line 599 column 90 - Warning: discarding unexpected </table>
line 601 column 9 - Warning: missing </font> before <table>
line 613 column 25 - Warning: discarding unexpected </font>
line 622 column 57 - Warning: discarding unexpected </font>
line 600 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 188 column 1532 - Warning: <img> lacks "alt" attribute
line 193 column 1667 - Warning: <img> lacks "alt" attribute
line 202 column 2277 - Warning: <img> lacks "alt" attribute
line 227 column 3388 - Warning: <img> lacks "alt" attribute
line 266 column 11 - Warning: <img> lacks "alt" attribute
line 267 column 22 - Warning: <img> lacks "alt" attribute
line 267 column 63 - Warning: <img> lacks "alt" attribute
line 267 column 112 - Warning: <img> lacks "alt" attribute
line 267 column 161 - Warning: <img> lacks "alt" attribute
line 268 column 11 - Warning: <img> lacks "alt" attribute
line 278 column 15 - Warning: <img> lacks "alt" attribute
line 285 column 233 - Warning: <img> proprietary attribute value "absmiddle"
line 285 column 233 - Warning: <img> lacks "alt" attribute
line 293 column 22 - Warning: <img> lacks "alt" attribute
line 293 column 63 - Warning: <img> lacks "alt" attribute
line 293 column 112 - Warning: <img> lacks "alt" attribute
line 293 column 162 - Warning: <img> lacks "alt" attribute
line 294 column 11 - Warning: <img> lacks "alt" attribute
line 304 column 15 - Warning: <img> lacks "alt" attribute
line 318 column 11 - Warning: <img> lacks "alt" attribute
line 319 column 22 - Warning: <img> lacks "alt" attribute
line 319 column 63 - Warning: <img> lacks "alt" attribute
line 319 column 112 - Warning: <img> lacks "alt" attribute
line 319 column 161 - Warning: <img> lacks "alt" attribute
line 320 column 11 - Warning: <img> lacks "alt" attribute
line 330 column 15 - Warning: <img> lacks "alt" attribute
line 351 column 22 - Warning: <img> lacks "alt" attribute
line 351 column 63 - Warning: <img> lacks "alt" attribute
line 351 column 112 - Warning: <img> lacks "alt" attribute
line 351 column 162 - Warning: <img> lacks "alt" attribute
line 352 column 11 - Warning: <img> lacks "alt" attribute
line 362 column 15 - Warning: <img> lacks "alt" attribute
line 376 column 11 - Warning: <img> lacks "alt" attribute
line 377 column 22 - Warning: <img> lacks "alt" attribute
line 377 column 63 - Warning: <img> lacks "alt" attribute
line 377 column 112 - Warning: <img> lacks "alt" attribute
line 377 column 161 - Warning: <img> lacks "alt" attribute
line 378 column 11 - Warning: <img> lacks "alt" attribute
line 388 column 15 - Warning: <img> lacks "alt" attribute
line 406 column 22 - Warning: <img> lacks "alt" attribute
line 406 column 63 - Warning: <img> lacks "alt" attribute
line 406 column 112 - Warning: <img> lacks "alt" attribute
line 406 column 162 - Warning: <img> lacks "alt" attribute
line 407 column 11 - Warning: <img> lacks "alt" attribute
line 417 column 15 - Warning: <img> lacks "alt" attribute
line 426 column 185 - Warning: <img> lacks "alt" attribute
line 436 column 23 - Warning: <img> lacks "alt" attribute
line 436 column 64 - Warning: <img> lacks "alt" attribute
line 447 column 15 - Warning: <img> lacks "alt" attribute
line 462 column 22 - Warning: <img> lacks "alt" attribute
line 462 column 63 - Warning: <img> lacks "alt" attribute
line 462 column 112 - Warning: <img> lacks "alt" attribute
line 462 column 162 - Warning: <img> lacks "alt" attribute
line 463 column 11 - Warning: <img> lacks "alt" attribute
line 473 column 15 - Warning: <img> lacks "alt" attribute
line 488 column 22 - Warning: <img> lacks "alt" attribute
line 488 column 63 - Warning: <img> lacks "alt" attribute
line 488 column 112 - Warning: <img> lacks "alt" attribute
line 488 column 162 - Warning: <img> lacks "alt" attribute
line 489 column 11 - Warning: <img> lacks "alt" attribute
line 499 column 15 - Warning: <img> lacks "alt" attribute
line 517 column 22 - Warning: <img> lacks "alt" attribute
line 517 column 63 - Warning: <img> lacks "alt" attribute
line 517 column 112 - Warning: <img> lacks "alt" attribute
line 517 column 162 - Warning: <img> lacks "alt" attribute
line 518 column 11 - Warning: <img> lacks "alt" attribute
line 528 column 15 - Warning: <img> lacks "alt" attribute
line 543 column 23 - Warning: <img> lacks "alt" attribute
line 543 column 64 - Warning: <img> lacks "alt" attribute
line 554 column 15 - Warning: <img> lacks "alt" attribute
line 571 column 22 - Warning: <img> lacks "alt" attribute
line 571 column 63 - Warning: <img> lacks "alt" attribute
line 571 column 112 - Warning: <img> lacks "alt" attribute
line 571 column 162 - Warning: <img> lacks "alt" attribute
line 572 column 11 - Warning: <img> lacks "alt" attribute
line 582 column 15 - Warning: <img> lacks "alt" attribute
line 598 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 598 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 598 column 245 - Warning: <img> proprietary attribute value "absmiddle"
line 607 column 25 - Warning: <img> lacks "alt" attribute
line 612 column 267 - Warning: <img> lacks "alt" attribute
line 149 column 50 - Warning: trimming empty <font>
line 592 column 17 - Warning: trimming empty <tr>
line 595 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 283 column 27 - Warning: <nobr> is not approved by W3C
line 309 column 27 - Warning: <nobr> is not approved by W3C
line 335 column 27 - Warning: <nobr> is not approved by W3C
line 367 column 27 - Warning: <nobr> is not approved by W3C
line 393 column 27 - Warning: <nobr> is not approved by W3C
line 422 column 27 - Warning: <nobr> is not approved by W3C
line 452 column 27 - Warning: <nobr> is not approved by W3C
line 478 column 27 - Warning: <nobr> is not approved by W3C
line 504 column 27 - Warning: <nobr> is not approved by W3C
line 533 column 27 - Warning: <nobr> is not approved by W3C
line 559 column 27 - Warning: <nobr> is not approved by W3C
line 587 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 213 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