Register - Login
Views: 99384064
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-24-22 02:48:28 AM
Jul - The Cutting Room Floor - Nintendo 3DS games New poll - New thread - New reply
Pages: 1 2 3 Next newer thread | Next older thread
xdaniel
980
Level: 64


Posts: 454/982
EXP: 2151580
For next: 62517

Since: 12-04-08

Pronouns: he/they
From: Germany

Since last post: 16 days
Last activity: 6 hours

Posted on 06-13-13 06:48:07 PM Link | Quote


>>ESTABLISHING LINK...DONE.    >>FETCHING POST DATA...DONE.    >>EXECUTING POSTDISP.BIN...


It's far more likely that Grezzo, who ported the game to the 3DS, were given the original game data, before ex. the models were converted into N64 F3DEX2 display lists, and based their work on that. I'm guessing they ported the game engine (not graphics!) to the 3DS - which was written in C to begin with -, rewrote that to use whatever formats the 3DS uses for 3D models, for music and sound effects, then added 3DS-specific stuff like touch screen support. Then somewhere along the line, the assets - models, textures, etc. - were updated or redone to have a higher resolution, more details, whatever.

Writing code to emulate N64-specific graphics commands, texture formats, etc. would not have been cheap, either. They'd need to recreate half of the N64's graphics chipset from scratch in C, just to reuse old, low-resolution, low-detail models and textures. That's another thing, texture resolution and color depth is really limited on the N64 - they just couldn't have had ex. higher resolution textures if they interpreted the original data.

What you're thinking would've been completely unreasonable from at least the business standpoint, and from common sense.


____________________
cu xdaniel -- Follower of the Church of Madoka -- @xdanieldzd (Twitter) -- stapled tech (YouTube)



Cuber456

Fuzzy
Don't mind me. Just passing through.
Level: 56


Posts: 234/776
EXP: 1317880
For next: 80296

Since: 02-19-12

From: Everywhere at once.

Since last post: 4.2 years
Last activity: 122 days

Posted on 06-13-13 07:56:26 PM (last edited by Cuber456 at 06-13-13 07:57:11 PM) Link | Quote
This thread has turned into a broken record.

omega59, I think that xdaniel is the authority figure here. xdaniel has screwed around with graphics(and/or files) in OoT, MM, TWW and TP to say the least. If he says it isn't possible, then it isn't possible. Otherwise I can bet that he would have done what you say if it were that easy.

Like I said, wait for an emulator or flash cart to come out, swap files, rebuild the ROM and run it. It is the easiest thing that can be done.

____________________
"Consider this a privilege. You have been chosen."
xdaniel
980
Level: 64


Posts: 455/982
EXP: 2151580
For next: 62517

Since: 12-04-08

Pronouns: he/they
From: Germany

Since last post: 16 days
Last activity: 6 hours

Posted on 06-13-13 09:03:16 PM (last edited by xdaniel at 06-13-13 09:03:36 PM) Link | Quote


>>ESTABLISHING LINK...DONE.    >>FETCHING POST DATA...DONE.    >>EXECUTING POSTDISP.BIN...


I wouldn't say "authority figure" here, tho... maybe in the graphical department to an extend - F3DEX2 commands, texture formats, what have you -, but many other things are lost on me, like much of the actual game coding. I guess I could read and understand the C source code if we had it, but ex. actors disassembled into MIPS assembly? Here's the Stalfos, which is 99% Greek to me.


____________________
cu xdaniel -- Follower of the Church of Madoka -- @xdanieldzd (Twitter) -- stapled tech (YouTube)



omega59
Member
Level: 29


Posts: 91/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-13-13 09:40:53 PM (last edited by omega59 at 06-13-13 09:46:03 PM) Link | Quote
Well, makes sense to me when you explained it that way. They must've used the original level and collision design (through porting or whatever) to get scaling right, but the essential coding seems to act precisely the same, as the odd crashes still work. Like heading into the void and blowing up a bombchu on yourself, the 3DS says it encountered an error and needs to restart, and the N64 brings up the red underscore, where you can use the debugger. A crash like that would've been fixed on a newer engine.
Also, from what I understand, Nintendo uses OpenGL and AL.
omega59
Member
Level: 29


Posts: 92/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-13-13 10:08:24 PM Link | Quote
Originally posted by Cuber456
This thread has turned into a broken record.

omega59, I think that xdaniel is the authority figure here. xdaniel has screwed around with graphics(and/or files) in OoT, MM, TWW and TP to say the least. If he says it isn't possible, then it isn't possible. Otherwise I can bet that he would have done what you say if it were that easy.

Like I said, wait for an emulator or flash cart to come out, swap files, rebuild the ROM and run it. It is the easiest thing that can be done.

We gotta wait on 3DBrew, so we can use the downloadable version to mess with.
Cuber456

Fuzzy
Don't mind me. Just passing through.
Level: 56


Posts: 235/776
EXP: 1317880
For next: 80296

Since: 02-19-12

From: Everywhere at once.

Since last post: 4.2 years
Last activity: 122 days

Posted on 06-13-13 10:22:16 PM (last edited by Cuber456 at 06-13-13 10:26:07 PM) Link | Quote
Originally posted by xdaniel
I wouldn't say "authority figure" here, tho...
Says the person who has experience hacking OoT, MM and has built Wind Viewer which can look into TWW and TP (and SS?)........

Originally posted by xdaniel
I guess I could read and understand the C source code if we had it, but ex. actors disassembled into MIPS assembly? Here's the Stalfos, which is 99% Greek to me.
That makes sense. When motivated, a human would be able to understand C source code since it is a high level programming language. Perhaps in better terms, it is meant to be understood by humans. Assembly, such as MIPS, is a low level language and is not readily understood by humans which means it requires more effort and motivation to understand. I've seen a fair share of assembly from Z80(GBC), to ARM(DS) and MIPS(not N64 related but where I first learned about assembly). I can say that the only legit assembly program I have ever created was a 10x10 matrix multiplier(It multiplies a matrix m by matrix n and one of the matrices has to be the identity matrix) in MIPS. It is a mess for something that would only few lines in C or Java and there are bugs in it that prevent it from being a true 10x10 multiplier. They don't call it ASSembly for nothing .



I'll keep an eye on 3DBrew to see if it ever goes anywhere.

____________________
"Consider this a privilege. You have been chosen."
Ninji

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


Posts: 1936/2014
EXP: 6632925
For next: 17739

Since: 07-26-07

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

Since last post: 104 days
Last activity: 17 days

Posted on 06-13-13 11:14:25 PM Link | Quote
Originally posted by omega59
Also, from what I understand, Nintendo uses OpenGL and AL.



Nintendo likes their special snowflake APIs. I don't expect to ever see anything like OGL on a Nintendo console. They definitely don't use it on the N64, GC, Wii, Wii U or DS. (I'm not 100% sure about the 3DS, but I would very much doubt it.)

A 3DS emulator is going to take a long, long time. The main issue at this point is that the encryption keys to decrypt ROMs are not known. Once these are figured out, you'll be able to decrypt games and extract files, and an emulator project can begin... But you can definitely expect file extraction before emulators.



On the topic of graphics emulation, this doesn't really say anything about OoT 3D, but it's definitely an interesting precedent: the original Animal Crossing (a game ported from N64 to GC) includes code which HLEs the N64 microcode. Specifically, F3DEX2 and S2DEX2. It's all located under the "emu64" namespace... I suppose they found this easier than converting the models to something else and making the game use a different rendering API?

Everything uses this except for the NES emulator, so I guess they wrote that bit specifically for the GC port...

____________________
omega59
Member
Level: 29


Posts: 93/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-14-13 05:29:10 AM Link | Quote
Interesting... They could've just taken their Gamecube files to 3DS for OoT 3D then... How does the Gamecube render OoT? I know their emulator sacrificed RSP emulation in favor of performance, but they could've already had the required tools to just keep their current filetypes. Well, this is an odd situation, one person says it's completely impossible, but now there's a legitimate chance... I guess we will see.
xdaniel
980
Level: 64


Posts: 456/982
EXP: 2151580
For next: 62517

Since: 12-04-08

Pronouns: he/they
From: Germany

Since last post: 16 days
Last activity: 6 hours

Posted on 06-14-13 09:37:25 AM (last edited by xdaniel at 06-14-13 09:38:24 AM) Link | Quote


>>ESTABLISHING LINK...DONE.    >>FETCHING POST DATA...DONE.    >>EXECUTING POSTDISP.BIN...


The difference between Animal Crossing and OoT 3D is that AC looks almost exactly the same as the original N64 game, with no obvious difference in detail, unlike OoT 3D, which certainly is more detailed than the original game.

Also, the versions of OoT on GameCube are running in an emulator - you can extract the ROMs from the ISO and run them on a PC. IIRC there's even a list of ROM titles inside some file on the OoT/MQ bonus disk (in the DOL I assume) that even included some 3rd party games... I seem to remember ex. Cruis'n USA. I take it that's a compatibility list of the emulator or something.

BTW: The 3DS does not use an NVidia graphics chip: http://en.wikipedia.org/wiki/PICA200


____________________
cu xdaniel -- Follower of the Church of Madoka -- @xdanieldzd (Twitter) -- stapled tech (YouTube)



omega59
Member
Level: 29


Posts: 95/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-14-13 02:36:10 PM (last edited by omega59 at 06-14-13 02:39:45 PM) Link | Quote
I remember that one of the prototypes did. Huh... or am I just not remembering right... Well, Ocarina of Time 3D is definitely more detailed, but there's something to do with the renderer that causes framerate issues that compared to other titles, definitely shouldn't be dropping.
Sik

Level: 23


Posts: 24/107
EXP: 64768
For next: 2955

Since: 12-07-12


Since last post: 3.3 years
Last activity: 1.2 years

Posted on 06-14-13 03:25:52 PM Link | Quote
Maybe the game just wasn't optimized well enough...
omega59
Member
Level: 29


Posts: 96/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-14-13 03:44:33 PM Link | Quote
I'm not sure how you'd do it THAT bad, that's worse than Metal Gear Solid 3D, but even the PS2 version lagged, so it's reasonable to be like that for such a tolling game.
Ninji

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


Posts: 1937/2014
EXP: 6632925
For next: 17739

Since: 07-26-07

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

Since last post: 104 days
Last activity: 17 days

Posted on 06-14-13 03:50:28 PM Link | Quote
Well, until you can actually look inside the game code and resources, all you can do is guess... which isn't the best method :x


So far we know that Nintendo has used practically every technique under the sun:

- Animal Crossing on GC: recompiled source code with stub functions mapping the N64 API to the GC API, interpreting the display lists, ...
- OoT on GC: emulated N64 ROM
- Mario 64 DS: totally rewritten

So you can't exactly say "Nintendo has always used X method, so it must be X". They've done... everything. It's definitely not an emulated ROM, which leaves the other two options. (But does it even matter? We won't be able to hack it any time soon anyway )

If I had to guess myself, I'd go for what xdaniel posted earlier, it seems like the most likely method- especially if there are bugs that can actually make the game crash. I don't think they'd have reproduced something like that on purpose :p


It would be interesting to know if entering a key combination at the crash screen would pop up debug info... might be difficult to guess, but Nintendo likes doing this in their first-party games.

____________________
Sik

Level: 23


Posts: 25/107
EXP: 64768
For next: 2955

Since: 12-07-12


Since last post: 3.3 years
Last activity: 1.2 years

Posted on 06-14-13 04:15:49 PM Link | Quote
Originally posted by omega59
I'm not sure how you'd do it THAT bad, that's worse than Metal Gear Solid 3D, but even the PS2 version lagged, so it's reasonable to be like that for such a tolling game.

1) It could have been rushed by the end 2) It's possible the meshes themselves are not optimized, not just the programming.
omega59
Member
Level: 29


Posts: 97/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-14-13 04:52:48 PM Link | Quote
There's no crash screen for the 3DS, it just freezesfor a bit, then boots you to the home menu saying it had an error and needs to restart.
Rena
I had one (1) message in Discord deleted and proceeded to make a huge, huge mess about how it was a violation of free speech and how moderators are supposed to be spam janitors and nobody should have the right to tell me not to talk about school shootings
Level: 135


Posts: 5033/5390
EXP: 29050832
For next: 284173

Since: 07-22-07

Pronouns: he/him/whatever
From: RSP Segment 6

Since last post: 333 days
Last activity: 333 days

Posted on 06-15-13 03:38:58 AM Link | Quote
Post #5033 · Fri 130614 233858
Originally posted by Treeki
If I had to guess myself, I'd go for what xdaniel posted earlier, it seems like the most likely method- especially if there are bugs that can actually make the game crash. I don't think they'd have reproduced something like that on purpose :p
That tells you that they used the original OoT source code, but doesn't tell you whether they adapted it to work with the 3DS hardware (likely) or did something like Animal Crossing and tried to make the N64 SDK functions work on another system without modifying the actual game program (unlikely since the textures are all much higher resolution).

I doubt there's any crash screen we can see either, since the 3DS has an actual OS and system software set up to handle exceptions, and display them only on dev units. On earlier consoles there was no such system; games had full control of the hardware, so there was nothing to do with exception info except display it on the screen hidden behind some button code (or not hidden at all, as in Paper Mario).

____________________
omega59
Member
Level: 29


Posts: 98/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-15-13 04:19:13 AM Link | Quote
It actually isn't too far of a graphical advancement, textures only look doubled. Models only look doubled too, as they still have meat-mittens for hands. OoT on the N64 was hardware limited, and OoT 3D is software limited. The framerate drop isn't constant either, it's like hiccups, and it looks to run a cap of 30fps, but its average is about 22-25.
omega59
Member
Level: 29


Posts: 99/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-15-13 04:23:07 AM Link | Quote
Originally posted by Rena
Originally posted by Treeki
If I had to guess myself, I'd go for what xdaniel posted earlier, it seems like the most likely method- especially if there are bugs that can actually make the game crash. I don't think they'd have reproduced something like that on purpose :p
That tells you that they used the original OoT source code, but doesn't tell you whether they adapted it to work with the 3DS hardware (likely) or did something like Animal Crossing and tried to make the N64 SDK functions work on another system without modifying the actual game program (unlikely since the textures are all much higher resolution).

I doubt there's any crash screen we can see either, since the 3DS has an actual OS and system software set up to handle exceptions, and display them only on dev units. On earlier consoles there was no such system; games had full control of the hardware, so there was nothing to do with exception info except display it on the screen hidden behind some button code (or not hidden at all, as in Paper Mario).

Try to crash a game on a GameStop 3DS, the display ones. Those are developer 3DSs (I have no idea why they'd even have these on display), and they've got dev options there, in the form of programs, usually at the end of its list to the right on the home menu. I need to look at it myself, maybe do a system transfer... hehehe...
omega59
Member
Level: 29


Posts: 100/184
EXP: 144352
For next: 3533

Since: 02-25-13


Since last post: 6.5 years
Last activity: 5.0 years

Posted on 06-15-13 08:56:56 PM Link | Quote
So, I've been playing around with wrong warping, quitting there, and leaving the grotto. Typically the game gives me an "error has occured" or went to map that has 3 different materials, and water somewhere in middle, on a black screen. Now, in Mountain, trying to do the same thing caused a crash that didn't go to the home menu, but a black screen and on the bottom screen it said

"An error has occured.
Hold down the POWER button to turn off the power, then turn it on and try again.

For help, visit support.nintendo.com."

I wonder, is there debug info stuck under or outside the black parts? Does a code combo activate this? I've literally never seen this before, but a similar screen goes on if you remove the cartridge.
Cuber456

Fuzzy
Don't mind me. Just passing through.
Level: 56


Posts: 237/776
EXP: 1317880
For next: 80296

Since: 02-19-12

From: Everywhere at once.

Since last post: 4.2 years
Last activity: 122 days

Posted on 06-16-13 12:12:49 AM Link | Quote
Originally posted by omega59
So, I've been playing around with wrong warping, quitting there, and leaving the grotto. Typically the game gives me an "error has occured" or went to map that has 3 different materials, and water somewhere in middle, on a black screen. Now, in Mountain, trying to do the same thing caused a crash that didn't go to the home menu, but a black screen and on the bottom screen it said

"An error has occured.
Hold down the POWER button to turn off the power, then turn it on and try again.

For help, visit support.nintendo.com."

I wonder, is there debug info stuck under or outside the black parts? Does a code combo activate this? I've literally never seen this before, but a similar screen goes on if you remove the cartridge.
I've never seen this screen while wrong warping although I'm not surprised by it. Eventually someone would be able to use the glitch to really break the game . Speaking personally, I am interested in trying to load Zora's Fountain (09), Cutscene 01. I don't know if it is possible with wrong warp though which sucks since I think that is an interesting unused area.

____________________
"Consider this a privilege. You have been chosen."
Pages: 1 2 3 Next newer thread | Next older thread
Jul - The Cutting Room Floor - Nintendo 3DS games New poll - New thread - New reply


Rusted Logic

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

31 database queries, 11 query cache hits.
Query execution time:  0.097999 seconds
Script execution time:  0.031588 seconds
Total render time:  0.129587 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 311 - 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 189 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 95 - Warning: unescaped & or unknown entity "&page"
line 149 column 130 - Warning: unescaped & or unknown entity "&page"
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 165 - 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 102 - 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 189 column 2110 - Warning: discarding unexpected </i>
line 180 column 312 - Warning: missing </div>
line 196 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 198 column 9 - Warning: missing <tr>
line 216 column 13 - Warning: missing <tr>
line 217 column 102 - Warning: unescaped & or unknown entity "&postid"
line 226 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 228 column 9 - Warning: missing <tr>
line 246 column 13 - Warning: missing <tr>
line 247 column 102 - Warning: unescaped & or unknown entity "&postid"
line 249 column 74 - Warning: <style> isn't allowed in <td> elements
line 249 column 9 - Info: <td> previously mentioned
line 255 column 1341 - Warning: discarding unexpected </i>
line 250 column 312 - Warning: missing </div>
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 102 - Warning: unescaped & or unknown entity "&postid"
line 289 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 291 column 9 - Warning: missing <tr>
line 309 column 13 - Warning: missing <tr>
line 310 column 102 - Warning: unescaped & or unknown entity "&postid"
line 320 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 322 column 9 - Warning: missing <tr>
line 340 column 13 - Warning: missing <tr>
line 341 column 102 - Warning: unescaped & or unknown entity "&postid"
line 352 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 354 column 9 - Warning: missing <tr>
line 372 column 13 - Warning: missing <tr>
line 373 column 102 - Warning: unescaped & or unknown entity "&postid"
line 389 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 391 column 9 - Warning: missing <tr>
line 409 column 13 - Warning: missing <tr>
line 410 column 102 - Warning: unescaped & or unknown entity "&postid"
line 415 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 417 column 9 - Warning: missing <tr>
line 435 column 13 - Warning: missing <tr>
line 436 column 102 - Warning: unescaped & or unknown entity "&postid"
line 438 column 74 - Warning: <style> isn't allowed in <td> elements
line 438 column 9 - Info: <td> previously mentioned
line 448 column 1653 - Warning: discarding unexpected </i>
line 439 column 312 - Warning: missing </div>
line 455 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 457 column 9 - Warning: missing <tr>
line 475 column 13 - Warning: missing <tr>
line 476 column 102 - Warning: unescaped & or unknown entity "&postid"
line 481 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 483 column 9 - Warning: missing <tr>
line 501 column 13 - Warning: missing <tr>
line 502 column 102 - Warning: unescaped & or unknown entity "&postid"
line 507 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 509 column 9 - Warning: missing <tr>
line 527 column 13 - Warning: missing <tr>
line 528 column 102 - Warning: unescaped & or unknown entity "&postid"
line 533 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 535 column 9 - Warning: missing <tr>
line 553 column 13 - Warning: missing <tr>
line 554 column 102 - Warning: unescaped & or unknown entity "&postid"
line 573 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 575 column 9 - Warning: missing <tr>
line 593 column 13 - Warning: missing <tr>
line 594 column 102 - Warning: unescaped & or unknown entity "&postid"
line 600 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 602 column 9 - Warning: missing <tr>
line 620 column 13 - Warning: missing <tr>
line 621 column 102 - Warning: unescaped & or unknown entity "&postid"
line 626 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 628 column 9 - Warning: missing <tr>
line 646 column 13 - Warning: missing <tr>
line 647 column 102 - Warning: unescaped & or unknown entity "&postid"
line 651 column 5485 - Warning: replacing unexpected input with </input>
line 651 column 5799 - Warning: discarding unexpected </span>
line 654 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 656 column 9 - Warning: missing <tr>
line 674 column 13 - Warning: missing <tr>
line 675 column 102 - Warning: unescaped & or unknown entity "&postid"
line 680 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 682 column 9 - Warning: missing <tr>
line 700 column 13 - Warning: missing <tr>
line 701 column 102 - Warning: unescaped & or unknown entity "&postid"
line 709 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 711 column 9 - Warning: missing <tr>
line 729 column 13 - Warning: missing <tr>
line 730 column 102 - Warning: unescaped & or unknown entity "&postid"
line 742 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 744 column 9 - Warning: missing <tr>
line 762 column 13 - Warning: missing <tr>
line 763 column 102 - Warning: unescaped & or unknown entity "&postid"
line 775 column 17 - Warning: missing <tr>
line 775 column 17 - Warning: discarding unexpected <table>
line 778 column 35 - Warning: missing <tr>
line 778 column 95 - Warning: unescaped & or unknown entity "&page"
line 778 column 130 - Warning: unescaped & or unknown entity "&page"
line 778 column 50 - Warning: missing </font> before </td>
line 778 column 165 - Warning: missing </font> before </table>
line 780 column 35 - Warning: missing <tr>
line 780 column 50 - Warning: missing </font> before </td>
line 781 column 37 - Warning: unescaped & or unknown entity "&id"
line 780 column 189 - Warning: missing </font> before </table>
line 782 column 17 - Warning: discarding unexpected </textarea>
line 782 column 28 - Warning: discarding unexpected </form>
line 782 column 35 - Warning: discarding unexpected </embed>
line 782 column 43 - Warning: discarding unexpected </noembed>
line 782 column 53 - Warning: discarding unexpected </noscript>
line 782 column 64 - Warning: discarding unexpected </noembed>
line 782 column 74 - Warning: discarding unexpected </embed>
line 782 column 82 - Warning: discarding unexpected </table>
line 782 column 90 - Warning: discarding unexpected </table>
line 784 column 9 - Warning: missing </font> before <table>
line 796 column 25 - Warning: discarding unexpected </font>
line 805 column 58 - Warning: discarding unexpected </font>
line 783 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 246 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 15 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 15 - Warning: <img> lacks "alt" attribute
line 160 column 58 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 58 - Warning: <img> lacks "alt" attribute
line 160 column 101 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 101 - Warning: <img> lacks "alt" attribute
line 160 column 144 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 144 - Warning: <img> lacks "alt" attribute
line 160 column 187 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 187 - Warning: <img> lacks "alt" attribute
line 160 column 230 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 230 - Warning: <img> lacks "alt" attribute
line 160 column 273 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 273 - Warning: <img> lacks "alt" attribute
line 160 column 316 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 316 - Warning: <img> lacks "alt" attribute
line 160 column 359 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 359 - Warning: <img> lacks "alt" attribute
line 160 column 402 - Warning: <img> proprietary attribute value "absmiddle"
line 160 column 402 - 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 189 column 1861 - Warning: <div> anchor "divxdn" already defined
line 191 column 2179 - Warning: <img> lacks "alt" attribute
line 191 column 2314 - Warning: <img> lacks "alt" attribute
line 192 column 2396 - Warning: <img> lacks "alt" attribute
line 200 column 11 - Warning: <img> lacks "alt" attribute
line 201 column 22 - Warning: <img> lacks "alt" attribute
line 201 column 63 - Warning: <img> lacks "alt" attribute
line 201 column 111 - Warning: <img> lacks "alt" attribute
line 201 column 161 - Warning: <img> lacks "alt" attribute
line 202 column 11 - Warning: <img> lacks "alt" attribute
line 212 column 15 - Warning: <img> lacks "alt" attribute
line 216 column 92 - Warning: <font> attribute "color" had invalid value "7C60B0" and has been replaced
line 230 column 15 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 15 - Warning: <img> lacks "alt" attribute
line 230 column 58 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 58 - Warning: <img> lacks "alt" attribute
line 230 column 101 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 101 - Warning: <img> lacks "alt" attribute
line 230 column 144 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 144 - Warning: <img> lacks "alt" attribute
line 230 column 187 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 187 - Warning: <img> lacks "alt" attribute
line 230 column 230 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 230 - Warning: <img> lacks "alt" attribute
line 230 column 273 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 273 - Warning: <img> lacks "alt" attribute
line 230 column 316 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 316 - Warning: <img> lacks "alt" attribute
line 230 column 359 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 359 - Warning: <img> lacks "alt" attribute
line 230 column 402 - Warning: <img> proprietary attribute value "absmiddle"
line 230 column 402 - Warning: <img> lacks "alt" attribute
line 231 column 22 - Warning: <img> lacks "alt" attribute
line 231 column 63 - Warning: <img> lacks "alt" attribute
line 231 column 112 - Warning: <img> lacks "alt" attribute
line 231 column 162 - Warning: <img> lacks "alt" attribute
line 232 column 11 - Warning: <img> lacks "alt" attribute
line 242 column 15 - Warning: <img> lacks "alt" attribute
line 246 column 91 - Warning: <font> attribute "color" had invalid value "32126d" and has been replaced
line 250 column 312 - Warning: <div> anchor "divxdn" already defined
line 255 column 1092 - Warning: <div> anchor "divxdn" already defined
line 257 column 1410 - Warning: <img> lacks "alt" attribute
line 257 column 1545 - Warning: <img> lacks "alt" attribute
line 258 column 1627 - 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 162 - Warning: <img> lacks "alt" attribute
line 278 column 15 - Warning: <img> lacks "alt" attribute
line 282 column 92 - Warning: <font> attribute "color" had invalid value "97ACEF" and has been replaced
line 294 column 22 - Warning: <img> lacks "alt" attribute
line 294 column 63 - Warning: <img> lacks "alt" attribute
line 294 column 112 - Warning: <img> lacks "alt" attribute
line 294 column 162 - Warning: <img> lacks "alt" attribute
line 305 column 15 - Warning: <img> lacks "alt" attribute
line 324 column 11 - Warning: <img> lacks "alt" attribute
line 325 column 22 - Warning: <img> lacks "alt" attribute
line 325 column 63 - Warning: <img> lacks "alt" attribute
line 325 column 111 - Warning: <img> lacks "alt" attribute
line 325 column 161 - Warning: <img> lacks "alt" attribute
line 326 column 11 - Warning: <img> lacks "alt" attribute
line 336 column 15 - Warning: <img> lacks "alt" attribute
line 340 column 92 - Warning: <font> attribute "color" had invalid value "7C60B0" and has been replaced
line 345 column 1513 - Warning: <img> proprietary attribute value "absmiddle"
line 345 column 1513 - Warning: <img> lacks "alt" attribute
line 356 column 11 - Warning: <img> lacks "alt" attribute
line 357 column 22 - Warning: <img> lacks "alt" attribute
line 357 column 63 - Warning: <img> lacks "alt" attribute
line 357 column 112 - Warning: <img> lacks "alt" attribute
line 357 column 161 - Warning: <img> lacks "alt" attribute
line 358 column 11 - Warning: <img> lacks "alt" attribute
line 368 column 15 - Warning: <img> lacks "alt" attribute
line 376 column 409 - Warning: <img> proprietary attribute value "absmiddle"
line 376 column 409 - Warning: <img> lacks "alt" attribute
line 394 column 22 - Warning: <img> lacks "alt" attribute
line 394 column 63 - Warning: <img> lacks "alt" attribute
line 394 column 112 - Warning: <img> lacks "alt" attribute
line 394 column 162 - Warning: <img> lacks "alt" attribute
line 405 column 15 - Warning: <img> lacks "alt" attribute
line 419 column 15 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 15 - Warning: <img> lacks "alt" attribute
line 419 column 58 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 58 - Warning: <img> lacks "alt" attribute
line 419 column 101 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 101 - Warning: <img> lacks "alt" attribute
line 419 column 144 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 144 - Warning: <img> lacks "alt" attribute
line 419 column 187 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 187 - Warning: <img> lacks "alt" attribute
line 419 column 230 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 230 - Warning: <img> lacks "alt" attribute
line 419 column 273 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 273 - Warning: <img> lacks "alt" attribute
line 419 column 316 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 316 - Warning: <img> lacks "alt" attribute
line 419 column 359 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 359 - Warning: <img> lacks "alt" attribute
line 419 column 402 - Warning: <img> proprietary attribute value "absmiddle"
line 419 column 402 - Warning: <img> lacks "alt" attribute
line 420 column 22 - Warning: <img> lacks "alt" attribute
line 420 column 63 - Warning: <img> lacks "alt" attribute
line 420 column 112 - Warning: <img> lacks "alt" attribute
line 420 column 162 - Warning: <img> lacks "alt" attribute
line 421 column 11 - Warning: <img> lacks "alt" attribute
line 431 column 15 - Warning: <img> lacks "alt" attribute
line 435 column 91 - Warning: <font> attribute "color" had invalid value "32126d" and has been replaced
line 439 column 312 - Warning: <div> anchor "divxdn" already defined
line 448 column 1404 - Warning: <div> anchor "divxdn" already defined
line 450 column 1722 - Warning: <img> lacks "alt" attribute
line 450 column 1857 - Warning: <img> lacks "alt" attribute
line 451 column 1939 - Warning: <img> lacks "alt" attribute
line 460 column 22 - Warning: <img> lacks "alt" attribute
line 460 column 63 - Warning: <img> lacks "alt" attribute
line 460 column 112 - Warning: <img> lacks "alt" attribute
line 460 column 162 - Warning: <img> lacks "alt" attribute
line 471 column 15 - Warning: <img> lacks "alt" attribute
line 475 column 92 - Warning: <font> attribute "color" had invalid value "97ACEF" and has been replaced
line 486 column 22 - Warning: <img> lacks "alt" attribute
line 486 column 63 - Warning: <img> lacks "alt" attribute
line 486 column 112 - Warning: <img> lacks "alt" attribute
line 486 column 162 - Warning: <img> lacks "alt" attribute
line 497 column 15 - Warning: <img> lacks "alt" attribute
line 512 column 22 - Warning: <img> lacks "alt" attribute
line 512 column 63 - Warning: <img> lacks "alt" attribute
line 512 column 112 - Warning: <img> lacks "alt" attribute
line 512 column 162 - Warning: <img> lacks "alt" attribute
line 523 column 15 - Warning: <img> lacks "alt" attribute
line 537 column 11 - Warning: <img> lacks "alt" attribute
line 538 column 22 - Warning: <img> lacks "alt" attribute
line 538 column 63 - Warning: <img> lacks "alt" attribute
line 538 column 112 - Warning: <img> lacks "alt" attribute
line 538 column 161 - Warning: <img> lacks "alt" attribute
line 539 column 11 - Warning: <img> lacks "alt" attribute
line 549 column 15 - Warning: <img> lacks "alt" attribute
line 565 column 951 - Warning: <img> proprietary attribute value "absmiddle"
line 565 column 951 - Warning: <img> lacks "alt" attribute
line 578 column 22 - Warning: <img> lacks "alt" attribute
line 578 column 63 - Warning: <img> lacks "alt" attribute
line 578 column 112 - Warning: <img> lacks "alt" attribute
line 578 column 162 - Warning: <img> lacks "alt" attribute
line 589 column 15 - Warning: <img> lacks "alt" attribute
line 605 column 22 - Warning: <img> lacks "alt" attribute
line 605 column 63 - Warning: <img> lacks "alt" attribute
line 605 column 112 - Warning: <img> lacks "alt" attribute
line 605 column 162 - Warning: <img> lacks "alt" attribute
line 616 column 15 - Warning: <img> lacks "alt" attribute
line 631 column 23 - Warning: <img> lacks "alt" attribute
line 631 column 64 - Warning: <img> lacks "alt" attribute
line 631 column 113 - Warning: <img> lacks "alt" attribute
line 631 column 163 - Warning: <img> lacks "alt" attribute
line 642 column 15 - Warning: <img> lacks "alt" attribute
line 659 column 22 - Warning: <img> lacks "alt" attribute
line 659 column 63 - Warning: <img> lacks "alt" attribute
line 659 column 112 - Warning: <img> lacks "alt" attribute
line 659 column 162 - Warning: <img> lacks "alt" attribute
line 670 column 15 - Warning: <img> lacks "alt" attribute
line 685 column 22 - Warning: <img> lacks "alt" attribute
line 685 column 63 - Warning: <img> lacks "alt" attribute
line 685 column 112 - Warning: <img> lacks "alt" attribute
line 685 column 162 - Warning: <img> lacks "alt" attribute
line 696 column 15 - Warning: <img> lacks "alt" attribute
line 714 column 22 - Warning: <img> lacks "alt" attribute
line 714 column 63 - Warning: <img> lacks "alt" attribute
line 714 column 112 - Warning: <img> lacks "alt" attribute
line 714 column 162 - Warning: <img> lacks "alt" attribute
line 725 column 15 - Warning: <img> lacks "alt" attribute
line 746 column 11 - Warning: <img> lacks "alt" attribute
line 747 column 22 - Warning: <img> lacks "alt" attribute
line 747 column 63 - Warning: <img> lacks "alt" attribute
line 747 column 111 - Warning: <img> lacks "alt" attribute
line 747 column 161 - Warning: <img> lacks "alt" attribute
line 748 column 11 - Warning: <img> lacks "alt" attribute
line 758 column 15 - Warning: <img> lacks "alt" attribute
line 772 column 1075 - Warning: <img> proprietary attribute value "absmiddle"
line 772 column 1075 - Warning: <img> lacks "alt" attribute
line 781 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 781 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 781 column 246 - Warning: <img> proprietary attribute value "absmiddle"
line 790 column 25 - Warning: <img> lacks "alt" attribute
line 795 column 267 - Warning: <img> lacks "alt" attribute
line 651 column 5552 - Warning: trimming empty <label>
line 775 column 17 - Warning: trimming empty <tr>
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 217 column 27 - Warning: <nobr> is not approved by W3C
line 247 column 27 - Warning: <nobr> is not approved by W3C
line 283 column 27 - Warning: <nobr> is not approved by W3C
line 310 column 27 - Warning: <nobr> is not approved by W3C
line 341 column 27 - Warning: <nobr> is not approved by W3C
line 373 column 27 - Warning: <nobr> is not approved by W3C
line 410 column 27 - Warning: <nobr> is not approved by W3C
line 436 column 27 - Warning: <nobr> is not approved by W3C
line 476 column 27 - Warning: <nobr> is not approved by W3C
line 502 column 27 - Warning: <nobr> is not approved by W3C
line 528 column 27 - Warning: <nobr> is not approved by W3C
line 554 column 27 - Warning: <nobr> is not approved by W3C
line 594 column 27 - Warning: <nobr> is not approved by W3C
line 621 column 27 - Warning: <nobr> is not approved by W3C
line 647 column 27 - Warning: <nobr> is not approved by W3C
line 675 column 27 - Warning: <nobr> is not approved by W3C
line 701 column 27 - Warning: <nobr> is not approved by W3C
line 730 column 27 - Warning: <nobr> is not approved by W3C
line 763 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 370 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