Register - Login
Views: 99380808
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-23-22 11:39:08 PM
Jul - NO! GO TO STAR! - Super Mario 64 Gameshark code Patcher (STABLE RELEASE) New poll - New thread - Thread closed
Next newer thread | Next older thread
ShenoxVII

(in all seriousness, you're a prick)
Level: 24


Posts: 33/111
EXP: 75917
For next: 2208

Since: 10-09-10


Since last post: 9.0 years
Last activity: 9.0 years

Posted on 12-20-10 02:48:01 PM (last edited by ShenoxVII at 04-02-11 05:10 PM) Link
http://www.mediafire.com/?v2fedn1va0ngksn



New Features

- Supports direct ROM Patching
- New layout
- Fixed "math"

Thanks to, messiaen, metal_man, and Sukasa for their help with the program and to messiaen again for his mario64 GS patching notes.


Here is the Visual Basics Code:


[CODE] Public Class MarioPatcher

Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Button2.Enabled = False
Button1.Enabled = False
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TextBox4.Text = "Offset: 0x" + Hex$(CLng("&H" & TextBox2.Text) - &H245000) + Environment.NewLine + "Byte: " + TextBox5.Text + TextBox6.Text + Environment.NewLine + Environment.NewLine + "Ready to be patched!!!"
Label4.Text = Hex$(CLng("&H" & TextBox2.Text) - &H245000)
Button2.Enabled = True
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim patch As Byte() = {(CLng("&H" & TextBox5.text)), (CLng("&H" & Textbox6.text))}
Dim bw As New IO.BinaryWriter(IO.File.Open(OpenFileDialog1.FileName, IO.FileMode.Open, IO.FileAccess.ReadWrite))
bw.BaseStream.Seek(CLng("&H" & Label4.Text), IO.SeekOrigin.Begin)
bw.Write(patch)
bw.Close()
MsgBox("Gameshark code Patched!")
Button3.Enabled = True
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
OpenFileDialog1.FileName = ".z64"
OpenFileDialog1.Title = "Super Mario 64 Rom"
OpenFileDialog1.ShowDialog()
OpenFileDialog1.OpenFile()

Button1.Enabled = True
End Sub

Private Sub Label2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.Click

End Sub

Private Sub Label4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label4.Click

End Sub
End Class [/CODE]




If anyone wants to update it. I don't think I will be working on this anymore.

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


Posts: 7433/12211
EXP: 99235767
For next: 637804

Since: 07-03-07

From: 52-2-88-7

Since last post: 7.4 years
Last activity: 7.3 years

Posted on 12-20-10 07:53:41 PM Link
Stats
Time/Date
12-20-10 01:53:41 PM
Posts
7433
Days Here
1266
Level
126
Metal_Man88's Post
Fixed the double post so people would only visit the working link.

____________________

Eisnaught - SSQ² - Mobius Roleplay - SSS
RDX

Level: 32


Posts: 137/198
EXP: 193360
For next: 13082

Since: 02-14-09


Since last post: 10.8 years
Last activity: 10.5 years

Posted on 12-20-10 11:41:11 PM Link
Mario hacking just became a whole lot easier. Thanks dude

____________________
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 584/621
EXP: 1135506
For next: 21613

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 12-23-10 02:23:15 AM Link
Time: One second ago - Date: Tomorrow - Weather: Sunshine - Mood: Moody Answer to the universe: Yes
Nice to see someone doing some low level hacking and publishing tools

This program will surely be very useful!

If I understand correctly this can work because the main game engine code is always loaded at the same address in RAM and that most Gameshark codes patch this area?

____________________
messiaen
Catgirl
Level: 68


Posts: 936/1085
EXP: 2594045
For next: 134755

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 12-23-10 05:30:58 PM Link
Yes, all game code is static, there isn't any kind of overlay such as in the Zelda-type filesystem.

But the cool thing would be to write a Gameshark interpreter so that all code types could be patched, including the ones that check for input or compare values .
MarIO0
Member
Level: 16


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

Since: 09-03-09


Since last post: 9.2 years
Last activity: 8.6 years

Posted on 12-23-10 08:19:43 PM (last edited by MarIO0 at 12-23-10 05:20 PM) Link
Originally posted by messiaen
Yes, all game code is static, there isn't any kind of overlay such as in the Zelda-type filesystem.

But the cool thing would be to write a Gameshark interpreter so that all code types could be patched, including the ones that check for input or compare values .


That would be pretty simple, because each GS code has more-or-less a direct translation to MIPS assembler. It's just a matter of converting the GS codes to MIPS assembler, finding an empty area in the ROM to put them, and adding a call to that area in the game main loop. It requires some MIPS assembler knowledge. < /hint >
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 585/621
EXP: 1135506
For next: 21613

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 12-24-10 09:06:07 PM Link
Time: One second ago - Date: Tomorrow - Weather: Sunshine - Mood: Moody Answer to the universe: Yes
Originally posted by messiaen
Yes, all game code is static, there isn't any kind of overlay such as in the Zelda-type filesystem.

But the cool thing would be to write a Gameshark interpreter so that all code types could be patched, including the ones that check for input or compare values .



Yeah I was thinking about that too. Emulating the GS shouldn't be too hard, and I'm sure you would know how to insert the code into SM64's main event loop. A program similar to ShenoxVII's patcher would take one or multiple GS codes as an input, and would patch the ROM with the GS emulator and codes. What could be very nice too is to be able to set one or more custom button combinations that would act as triggers to specific GS codes entered by the user.

But let's remind everyone that ShenoxVII's patcher is already very useful by itself



____________________
ShenoxVII

(in all seriousness, you're a prick)
Level: 24


Posts: 38/111
EXP: 75917
For next: 2208

Since: 10-09-10


Since last post: 9.0 years
Last activity: 9.0 years

Posted on 12-30-10 01:54:19 AM Link
Originally posted by VL-Tone

Yeah I was thinking about that too. Emulating the GS shouldn't be too hard, and I'm sure you would know how to insert the code into SM64's main event loop. A program similar to ShenoxVII's patcher would take one or multiple GS codes as an input, and would patch the ROM with the GS emulator and codes. What could be very nice too is to be able to set one or more custom button combinations that would act as triggers to specific GS codes entered by the user.

But let's remind everyone that ShenoxVII's patcher is already very useful by itself





Thank you, I been so side tracked that I almost forgot about working on this plus I never thought this program would help more then a few people out. But seeing you say that has inspired me to continue my research and continue expanding my project. At first the complexity of understanding how roms work was very confusing, it understand more and more by all the help.



Oh and can you explain this more.

"If the code type was "80", the procedure would be the same, except that you would write only the modified byte
(ie, for 802F8EC7 0020, write 0x20 at offset 0xB3EC7).

Other code ranges:

For codes between 800EB180 - 800F083C (behavior bank modifiers), just add 12EC80 to find the ROM address.
You don't have to recalculate the checksum for these codes."

How do you get 2F8EC7 to B3EC7 ? Also the second one, 12EC80 added to the address is for ram addresses?
M64223
Random nobody
Level: 3


Posts: 1/1
EXP: 57
For next: 71

Since: 02-15-13


Since last post: 9.2 years
Last activity: 9.1 years

Posted on 02-21-13 07:58:14 PM Link
My computer says "This app cannot work on your computer." Is it because I use Windows 8?
Joe
Common spammer
🍬
Level: 111


Posts: 2801/3392
EXP: 14488629
For next: 379731

Since: 08-02-07

From: Pororoca

Since last post: 3 days
Last activity: 3 hours

Posted on 02-21-13 09:26:58 PM Link
Originally posted by M64223
My computer says "This app cannot work on your computer."
You probably need to install a .NET runtime. What exactly does the error message say?

____________________
aaaaalex
Random nobody
Level: 5


Posts: 3/3
EXP: 312
For next: 217

Since: 06-02-12


Since last post: 9.2 years
Last activity: 9.1 years

Posted on 02-22-13 08:06:48 PM Link
Originally posted by M64223
My computer says "This app cannot work on your computer." Is it because I use Windows 8?


Maybe you have to enable the older versions of .NET Framework...

Go to Control Panel -> Programs and Features -> Turn Windows Features on or off -> Check .NET Framework 3.5 (includes .NET 2.0 and 3.0).

Hope it works!

PD: I'm using Windows 8 too and the program just works.
Cajetan
Member
Level: 22


Posts: 47/88
EXP: 51640
For next: 6710

Since: 08-06-11

From: Binary

Since last post: 345 days
Last activity: 345 days

Posted on 04-02-13 07:46:16 AM Link
We need a SM64 GS Code patcher, which allows faster patching. It's really annoying having 300 lines GS code, and patching that one for one. A patcher, which could patch all lines at once, that would be great.

____________________
http://sites.google.com/site/cajetan64/home/coding-in-n64-with-c

- Click there to learn more about C coding and writing your own codes for Super Mario 64.
ShenoxVII

(in all seriousness, you're a prick)
Level: 24


Posts: 105/111
EXP: 75917
For next: 2208

Since: 10-09-10


Since last post: 9.0 years
Last activity: 9.0 years

Posted on 04-02-13 01:13:02 PM Link
Next newer thread | Next older thread
Jul - NO! GO TO STAR! - Super Mario 64 Gameshark code Patcher (STABLE RELEASE) New poll - New thread - Thread closed


Rusted Logic

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

34 database queries, 1 query cache hits.
Query execution time:  0.089568 seconds
Script execution time:  0.025857 seconds
Total render time:  0.115425 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 301 - 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 203 - 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 219 - 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 201 column 980 - Warning: unescaped & or unknown entity "&H"
line 201 column 1003 - Warning: unescaped & or unknown entity "&H245000"
line 202 column 1185 - Warning: unescaped & or unknown entity "&H"
line 202 column 1208 - Warning: unescaped & or unknown entity "&H245000"
line 207 column 1427 - Warning: unescaped & or unknown entity "&H"
line 207 column 1457 - Warning: unescaped & or unknown entity "&H"
line 209 column 1640 - Warning: unescaped & or unknown entity "&H"
line 235 column 2633 - Warning: discarding unexpected </td>
line 237 column 9 - Warning: discarding unexpected </div>
line 240 column 9 - Warning: missing <tr>
line 258 column 13 - Warning: missing <tr>
line 259 column 27 - Warning: missing </nobr> before </table>
line 261 column 74 - Warning: <style> isn't allowed in <td> elements
line 261 column 9 - Info: <td> previously mentioned
line 261 column 1365 - Error: <z> is not recognized!
line 261 column 1365 - Warning: discarding unexpected <z>
line 261 column 1377 - Warning: discarding unexpected </z>
line 263 column 1409 - Error: <z> is not recognized!
line 263 column 1409 - Warning: discarding unexpected <z>
line 263 column 1417 - Warning: discarding unexpected </z>
line 265 column 1433 - Error: <z> is not recognized!
line 265 column 1433 - Warning: discarding unexpected <z>
line 265 column 1445 - Warning: discarding unexpected </z>
line 267 column 1461 - Error: <z> is not recognized!
line 267 column 1461 - Warning: discarding unexpected <z>
line 267 column 1469 - Warning: discarding unexpected </z>
line 270 column 2279 - Warning: discarding unexpected </td>
line 275 column 9 - Warning: missing <tr>
line 293 column 13 - Warning: missing <tr>
line 294 column 27 - Warning: missing </nobr> before </table>
line 301 column 9 - Warning: missing <tr>
line 319 column 13 - Warning: missing <tr>
line 320 column 27 - Warning: missing </nobr> before </table>
line 322 column 74 - Warning: <style> isn't allowed in <td> elements
line 322 column 9 - Info: <td> previously mentioned
line 322 column 138 - Warning: missing </div>
line 331 column 9 - Warning: missing <tr>
line 349 column 13 - Warning: missing <tr>
line 350 column 27 - Warning: missing </nobr> before </table>
line 359 column 9 - Warning: missing <tr>
line 377 column 13 - Warning: missing <tr>
line 378 column 27 - Warning: missing </nobr> before </table>
line 389 column 9 - Warning: missing <tr>
line 407 column 13 - Warning: missing <tr>
line 408 column 27 - Warning: missing </nobr> before </table>
line 410 column 74 - Warning: <style> isn't allowed in <td> elements
line 410 column 9 - Info: <td> previously mentioned
line 410 column 1502 - Warning: missing </font> before <blockquote>
line 410 column 1581 - Warning: inserting implicit <font>
line 410 column 1581 - Warning: missing </font> before <hr>
line 411 column 1 - Warning: inserting implicit <font>
line 411 column 1 - Warning: missing </font> before <hr>
line 413 column 1 - Warning: inserting implicit <font>
line 410 column 138 - Warning: missing </div>
line 423 column 9 - Warning: missing <tr>
line 441 column 13 - Warning: missing <tr>
line 442 column 27 - Warning: missing </nobr> before </table>
line 472 column 9 - Warning: missing <tr>
line 490 column 13 - Warning: missing <tr>
line 491 column 27 - Warning: missing </nobr> before </table>
line 498 column 9 - Warning: missing <tr>
line 516 column 13 - Warning: missing <tr>
line 517 column 27 - Warning: missing </nobr> before </table>
line 519 column 74 - Warning: <style> isn't allowed in <td> elements
line 519 column 9 - Info: <td> previously mentioned
line 524 column 9 - Warning: missing <tr>
line 542 column 13 - Warning: missing <tr>
line 543 column 27 - Warning: missing </nobr> before </table>
line 558 column 9 - Warning: missing <tr>
line 576 column 13 - Warning: missing <tr>
line 577 column 27 - Warning: missing </nobr> before </table>
line 586 column 9 - Warning: missing <tr>
line 604 column 13 - Warning: missing <tr>
line 605 column 27 - Warning: missing </nobr> before </table>
line 607 column 136 - Warning: inserting implicit <a>
line 607 column 145 - Warning: discarding unexpected </button>
line 607 column 114 - Warning: missing </button>
line 607 column 74 - Warning: missing </a> before </td>
line 619 column 35 - Warning: missing <tr>
line 619 column 50 - Warning: missing </font> before </td>
line 619 column 91 - Warning: missing </font> before </table>
line 621 column 35 - Warning: missing <tr>
line 621 column 50 - Warning: missing </font> before </td>
line 621 column 203 - Warning: plain text isn't allowed in <tr> elements
line 621 column 35 - Info: <tr> previously mentioned
line 622 column 37 - Warning: unescaped & or unknown entity "&id"
line 621 column 219 - Warning: missing </font> before </table>
line 623 column 17 - Warning: discarding unexpected </textarea>
line 623 column 28 - Warning: discarding unexpected </form>
line 623 column 35 - Warning: discarding unexpected </embed>
line 623 column 43 - Warning: discarding unexpected </noembed>
line 623 column 53 - Warning: discarding unexpected </noscript>
line 623 column 64 - Warning: discarding unexpected </noembed>
line 623 column 74 - Warning: discarding unexpected </embed>
line 623 column 82 - Warning: discarding unexpected </table>
line 623 column 90 - Warning: discarding unexpected </table>
line 625 column 9 - Warning: missing </font> before <table>
line 637 column 25 - Warning: discarding unexpected </font>
line 646 column 57 - Warning: discarding unexpected </font>
line 624 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 216 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 11 - Warning: <img> lacks "alt" attribute
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 181 column 181 - Warning: <img> lacks "alt" attribute
line 242 column 17 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 17 - Warning: <img> lacks "alt" attribute
line 242 column 60 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 60 - Warning: <img> lacks "alt" attribute
line 242 column 103 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 103 - Warning: <img> lacks "alt" attribute
line 242 column 146 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 146 - Warning: <img> lacks "alt" attribute
line 242 column 189 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 189 - Warning: <img> lacks "alt" attribute
line 242 column 232 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 232 - Warning: <img> lacks "alt" attribute
line 242 column 275 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 275 - Warning: <img> lacks "alt" attribute
line 242 column 318 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 318 - Warning: <img> lacks "alt" attribute
line 242 column 361 - Warning: <img> proprietary attribute value "absmiddle"
line 242 column 361 - Warning: <img> lacks "alt" attribute
line 243 column 23 - Warning: <img> lacks "alt" attribute
line 243 column 64 - Warning: <img> lacks "alt" attribute
line 243 column 113 - Warning: <img> lacks "alt" attribute
line 243 column 163 - Warning: <img> lacks "alt" attribute
line 244 column 11 - Warning: <img> lacks "alt" attribute
line 254 column 15 - Warning: <img> lacks "alt" attribute
line 261 column 1210 - Warning: <tr> attribute "valign" has invalid value "center"
line 269 column 1925 - Warning: <img> lacks "alt" attribute
line 278 column 22 - Warning: <img> lacks "alt" attribute
line 278 column 63 - Warning: <img> lacks "alt" attribute
line 278 column 112 - Warning: <img> lacks "alt" attribute
line 278 column 162 - Warning: <img> lacks "alt" attribute
line 289 column 15 - Warning: <img> lacks "alt" attribute
line 296 column 132 - Warning: <img> proprietary attribute value "absmiddle"
line 296 column 132 - Warning: <img> lacks "alt" attribute
line 296 column 214 - Warning: <img> lacks "alt" attribute
line 304 column 22 - Warning: <img> lacks "alt" attribute
line 304 column 63 - Warning: <img> lacks "alt" attribute
line 304 column 112 - Warning: <img> lacks "alt" attribute
line 304 column 162 - Warning: <img> lacks "alt" attribute
line 315 column 15 - Warning: <img> lacks "alt" attribute
line 322 column 694 - Warning: <img> lacks "alt" attribute
line 322 column 1639 - Warning: <img> proprietary attribute value "absmiddle"
line 322 column 1639 - Warning: <img> lacks "alt" attribute
line 326 column 1991 - Warning: <img> lacks "alt" attribute
line 326 column 2150 - Warning: <img> lacks "alt" attribute
line 334 column 22 - Warning: <img> lacks "alt" attribute
line 334 column 63 - Warning: <img> lacks "alt" attribute
line 334 column 111 - Warning: <img> lacks "alt" attribute
line 334 column 161 - Warning: <img> lacks "alt" attribute
line 345 column 15 - Warning: <img> lacks "alt" attribute
line 354 column 342 - Warning: <img> proprietary attribute value "absmiddle"
line 354 column 342 - Warning: <img> lacks "alt" attribute
line 362 column 22 - Warning: <img> lacks "alt" attribute
line 362 column 63 - Warning: <img> lacks "alt" attribute
line 362 column 112 - Warning: <img> lacks "alt" attribute
line 362 column 162 - Warning: <img> lacks "alt" attribute
line 373 column 15 - Warning: <img> lacks "alt" attribute
line 382 column 419 - Warning: <img> proprietary attribute value "absmiddle"
line 382 column 419 - Warning: <img> lacks "alt" attribute
line 392 column 22 - Warning: <img> lacks "alt" attribute
line 392 column 63 - Warning: <img> lacks "alt" attribute
line 392 column 112 - Warning: <img> lacks "alt" attribute
line 392 column 162 - Warning: <img> lacks "alt" attribute
line 403 column 15 - Warning: <img> lacks "alt" attribute
line 410 column 694 - Warning: <img> lacks "alt" attribute
line 412 column 1914 - Warning: <img> proprietary attribute value "absmiddle"
line 412 column 1914 - Warning: <img> lacks "alt" attribute
line 416 column 2540 - Warning: <img> proprietary attribute value "absmiddle"
line 416 column 2540 - Warning: <img> lacks "alt" attribute
line 418 column 2680 - Warning: <img> lacks "alt" attribute
line 418 column 2839 - Warning: <img> lacks "alt" attribute
line 425 column 11 - Warning: <img> lacks "alt" attribute
line 426 column 22 - Warning: <img> lacks "alt" attribute
line 426 column 63 - Warning: <img> lacks "alt" attribute
line 426 column 112 - Warning: <img> lacks "alt" attribute
line 426 column 162 - Warning: <img> lacks "alt" attribute
line 427 column 11 - Warning: <img> lacks "alt" attribute
line 437 column 15 - Warning: <img> lacks "alt" attribute
line 447 column 704 - Warning: <img> proprietary attribute value "absmiddle"
line 447 column 704 - Warning: <img> lacks "alt" attribute
line 475 column 21 - Warning: <img> lacks "alt" attribute
line 475 column 62 - Warning: <img> lacks "alt" attribute
line 475 column 111 - Warning: <img> lacks "alt" attribute
line 475 column 161 - Warning: <img> lacks "alt" attribute
line 486 column 15 - Warning: <img> lacks "alt" attribute
line 501 column 23 - Warning: <img> lacks "alt" attribute
line 501 column 64 - Warning: <img> lacks "alt" attribute
line 501 column 113 - Warning: <img> lacks "alt" attribute
line 501 column 163 - Warning: <img> lacks "alt" attribute
line 502 column 11 - Warning: <img> lacks "alt" attribute
line 512 column 15 - Warning: <img> lacks "alt" attribute
line 527 column 21 - Warning: <img> lacks "alt" attribute
line 527 column 62 - Warning: <img> lacks "alt" attribute
line 527 column 111 - Warning: <img> lacks "alt" attribute
line 527 column 161 - Warning: <img> lacks "alt" attribute
line 538 column 15 - Warning: <img> lacks "alt" attribute
line 547 column 327 - Warning: <img> proprietary attribute value "absmiddle"
line 547 column 327 - Warning: <img> lacks "alt" attribute
line 561 column 22 - Warning: <img> lacks "alt" attribute
line 561 column 63 - Warning: <img> lacks "alt" attribute
line 561 column 112 - Warning: <img> lacks "alt" attribute
line 561 column 162 - Warning: <img> lacks "alt" attribute
line 562 column 11 - Warning: <img> lacks "alt" attribute
line 572 column 15 - Warning: <img> lacks "alt" attribute
line 588 column 11 - Warning: <img> lacks "alt" attribute
line 589 column 22 - Warning: <img> lacks "alt" attribute
line 589 column 63 - Warning: <img> lacks "alt" attribute
line 589 column 112 - Warning: <img> lacks "alt" attribute
line 589 column 162 - Warning: <img> lacks "alt" attribute
line 590 column 11 - Warning: <img> lacks "alt" attribute
line 600 column 15 - Warning: <img> lacks "alt" attribute
line 622 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 622 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 622 column 216 - Warning: <img> proprietary attribute value "absmiddle"
line 631 column 25 - Warning: <img> lacks "alt" attribute
line 636 column 267 - Warning: <img> lacks "alt" attribute
line 149 column 50 - Warning: trimming empty <font>
line 410 column 1502 - Warning: trimming empty <font>
line 619 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 259 column 27 - Warning: <nobr> is not approved by W3C
line 261 column 1136 - Warning: <table> proprietary attribute "height"
line 294 column 27 - Warning: <nobr> is not approved by W3C
line 320 column 27 - Warning: <nobr> is not approved by W3C
line 322 column 158 - Warning: <table> proprietary attribute "height"
line 322 column 223 - Warning: <td> proprietary attribute "background"
line 322 column 319 - Warning: <td> proprietary attribute "background"
line 322 column 409 - Warning: <table> proprietary attribute "height"
line 322 column 489 - Warning: <td> proprietary attribute "background"
line 322 column 1434 - Warning: <td> proprietary attribute "background"
line 350 column 27 - Warning: <nobr> is not approved by W3C
line 378 column 27 - Warning: <nobr> is not approved by W3C
line 408 column 27 - Warning: <nobr> is not approved by W3C
line 410 column 158 - Warning: <table> proprietary attribute "height"
line 410 column 223 - Warning: <td> proprietary attribute "background"
line 410 column 319 - Warning: <td> proprietary attribute "background"
line 410 column 409 - Warning: <table> proprietary attribute "height"
line 410 column 489 - Warning: <td> proprietary attribute "background"
line 410 column 1434 - Warning: <td> proprietary attribute "background"
line 442 column 27 - Warning: <nobr> is not approved by W3C
line 491 column 27 - Warning: <nobr> is not approved by W3C
line 517 column 27 - Warning: <nobr> is not approved by W3C
line 543 column 27 - Warning: <nobr> is not approved by W3C
line 577 column 27 - Warning: <nobr> is not approved by W3C
line 605 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 272 warnings and 4 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