Register - Login
Views: 99352497
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-21-22 07:08:04 PM
Jul - The Cutting Room Floor - Cleaning Up the Game Boy Categories New poll - New thread - New reply
Next newer thread | Next older thread
Rachel Mae

Creature of Chaos
Level: 141


Posts: 5388/5929
EXP: 33568277
For next: 551737

Since: 07-03-07

Pronouns: she/her
From: Foxglen

Since last post: 9 days
Last activity: 2 hours

Posted on 07-19-13 03:01:52 AM Link | Quote
Over the past few months, several people have expressed concerns regarding the size and quality of the Game Boy categories (Game Boy, Super Game Boy, Game Boy Color). Their primary complaints are:

- there are too many pages with nothing but Super Game Boy packet listings
- the pages are thick with technical jargon and are hard to understand (particularly the main Super Game Boy page)

In the interest of maintaining a high-quality and enjoyable wiki, we'd like to take steps to rectify the situation. The most popular solution that has been proposed thus far is to condense all the unused packet listings into a single page (possibly a subpage of the Super Game Boy article) and delete any empty wiki pages this leaves behind, which would shrink the categories by a significant amount. However, there hasn't been a consensus as to how the new section should be laid out, or what to do about the Super Game Boy page, and we'd really like to move forward.

So, how should we handle this? What are your thoughts on the problems presented, or the proposed solution? Any comments and/or suggestions would be greatly appreciated!

____________________
nensondubois
seek help please
Level: 49


Posts: 471/551
EXP: 852455
For next: 31428

Since: 05-30-10


Since last post: 7.8 years
Last activity: 7.8 years

Posted on 07-19-13 03:14:44 AM (last edited by nensondubois at 07-19-13 03:26:54 AM) Link | Quote
My proposed idea on IRC would be to have three tables (well, there are variations either way) of the non-game specific function packet listings along with the games that contain the listings in the Super Game Boy notes page with an explanation of the commands at the beginning. Feel like I'm missing a small detail.

EDIT: I forgot to mention that what I meant was when I mentioned ''game specific functions'' I mean games that actually have small distinct features not directly related to the command listings. A few examples would be the ICON_EN 00 bit in Madden 97. The Donkey Kong commands and so fourth. My initial idea was to leave these alone.

____________________
#1 in Game enhancer codes - GSCentral.org (and news)
tcrf.net/User:Nensondubois Youtube.com/user/nensondubois
andlabs
Member
Level: 38


Posts: 81/309
EXP: 360986
For next: 9461

Since: 03-19-10

From: United States

Since last post: 1.1 years
Last activity: 126 days

Posted on 07-19-13 03:25:07 AM Link | Quote
I originally thought we need to explain what the packets actually are, but it looks like that's nt going to be feasible. So...

These unused packets description appear to be the result of static analysis. I don't think this is gong to be workable: we are going to need to disassemble the SGB handling code and figure out what packets are used and where, and where the packets are in the ROM. Then, we could potentially figure out the purpose of each unused packet. Until then, we should keep the packets all on one TODO page, removing them over time as an analysis is completed, then maybe at some point move a game's packets to the Notes page or similar and drop a TODO at the beginning of the main page...
nensondubois
seek help please
Level: 49


Posts: 472/551
EXP: 852455
For next: 31428

Since: 05-30-10


Since last post: 7.8 years
Last activity: 7.8 years

Posted on 07-19-13 03:29:14 AM (last edited by BMF54123 at 07-19-13 03:38:14 AM) Link | Quote
Originally posted by andlabs
I originally thought we need to explain what the packets actually are, but it looks like that's nt going to be feasible. So...


They can be explained.

Also, working on the the dissassembly, just that there are other projects. The only thing that isn't specific are the elusive OBJ_TRN command and the DATA_SND bank mapping registers. Everything else can be easily explained.

____________________
#1 in Game enhancer codes - GSCentral.org (and news)
tcrf.net/User:Nensondubois Youtube.com/user/nensondubois
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: 5046/5390
EXP: 29044579
For next: 290426

Since: 07-22-07

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

Since last post: 330 days
Last activity: 330 days

Posted on 07-26-13 02:56:32 AM Link | Quote
Post #5046 · Thu 130725 225632
A lot of games just seem to list the same "here's a big list of packets left over from a devkit", so I'd agree with just listing those in the Super Game Boy article. There are also quite a few that just say "this game contains a Super GB packet 0123456789ABCDEF0123456789ABCDEF OBJ_BLAH" - most of these don't explain much if anything about what this means, other than occasionally some speculation. I'd say first off, examine the code and make sure these are actually SGB packets that never get used, and not just some random graphic data, and if all you can find is one or two stray packets, just list them in the SGB article itself. I'd only mention them in the game's article if there's actually substantial functionality (e.g an actual intact border, code to play sound effects in certain situations that never get played), especially if it can be re-enabled.

To provide examples, A Bug's Life has a page worth of text describing what certain commands do, but almost nothing describing what these would have actually done in the game, where they might have been used, or even if they're really in the game at all - the provided codes look more like they're patching existing commands to do different things than actually restoring any unused functionality. At best, these unused commands are apparently no-ops and probably are just leftover init code from an SDK routine, or they might even just be some data from the game and not ever meant to be used as SGB commands.

Adventures of Lolo is another example of an article that's primarily just a hex dump and technical description of a command sequence that appears in several games, likely as part of an SDK test function, never intended to be used in the game itself - these games should just be listed in the SGB article. There's no more sense making individual articles for these than there is for the compiler strings found in nearly every modern game.

Akazukin Chacha has actual unused border images, which can be loaded with a simple patch code. This is the kind of thing worth documenting in the game's article. These are clearly not just SDK boilerplate, but actual unused content that was once planned to appear in the game. However, it also notes a no-op sound command (who cares? just init boilerplate code) and something about ATTR_CHR with a patch code and no real explanation as to what the hell it actually does. (Does it enable an unused palette, or just patch a command to load some junk data as a palette, or what?) If these actually do anything interesting, they should be reworded to explain what they do, otherwise just get rid of them.

____________________
nensondubois
seek help please
Level: 49


Posts: 479/551
EXP: 852455
For next: 31428

Since: 05-30-10


Since last post: 7.8 years
Last activity: 7.8 years

Posted on 08-02-13 12:23:00 AM Link | Quote
Originally posted by Rena
A lot of games just seem to list the same "here's a big list of packets left over from a devkit", so I'd agree with just listing those in the Super Game Boy article. There are also quite a few that just say "this game contains a Super GB packet 0123456789ABCDEF0123456789ABCDEF OBJ_BLAH" - most of these don't explain much if anything about what this means, other than occasionally some speculation. I'd say first off, examine the code and make sure these are actually SGB packets that never get used, and not just some random graphic data, and if all you can find is one or two stray packets, just list them in the SGB article itself. I'd only mention them in the game's article if there's actually substantial functionality (e.g an actual intact border, code to play sound effects in certain situations that never get played), especially if it can be re-enabled.

To provide examples, A Bug's Life has a page worth of text describing what certain commands do, but almost nothing describing what these would have actually done in the game, where they might have been used, or even if they're really in the game at all - the provided codes look more like they're patching existing commands to do different things than actually restoring any unused functionality. At best, these unused commands are apparently no-ops and probably are just leftover init code from an SDK routine, or they might even just be some data from the game and not ever meant to be used as SGB commands.

Adventures of Lolo is another example of an article that's primarily just a hex dump and technical description of a command sequence that appears in several games, likely as part of an SDK test function, never intended to be used in the game itself - these games should just be listed in the SGB article. There's no more sense making individual articles for these than there is for the compiler strings found in nearly every modern game.

Akazukin Chacha has actual unused border images, which can be loaded with a simple patch code. This is the kind of thing worth documenting in the game's article. These are clearly not just SDK boilerplate, but actual unused content that was once planned to appear in the game. However, it also notes a no-op sound command (who cares? just init boilerplate code) and something about ATTR_CHR with a patch code and no real explanation as to what the hell it actually does. (Does it enable an unused palette, or just patch a command to load some junk data as a palette, or what?) If these actually do anything interesting, they should be reworded to explain what they do, otherwise just get rid of them.


The commands need to be explained. I have examined the code of all the games that have small listings of specific functions and attempted to restore them as much as possible. I'd still like game specific functions to be covered. Some of the articles for games that don't have much else aside from the two or so SGB commands may not have been looked into either way regardless to see if they have debug menus, music or graphics or not.

I exclude attribute commands because it is impossible to restore them. Some things can't be restored unfortunately. Specified palette settings for specific areas of the screen will never be known. This is because they are removed or never implemented for any number of reasons.

I wouldn't say a page worth, but yes, they need to be trimmed down within reason. Most of the commands affects on the game are almost always self-implied. Unless I'm mistaken, the only one that can't be explained because it ties in with game specific control would be the JUMP command. I still don't know what Olympic Summer Games does to be honest. Since JUMP is loaded on hardware without causing the SGB BIOS to lose control, it likely was the original command used to transfer sound code to the SNES's ARAM and was hacked to work as a last-minute decision to use SOU_TRN, whereas the other games do not have the command fully implemented. I'll probably look more into this next week to determine the cause.

LOLO does not need the DATA_SND commands and it was removed. The SOUND command is not really boilerplate code. I thought I explained what the codes did. I guess ATTR_CHR should be explained but since it is used to replace an unused command, I figured why bother.




____________________
#1 in Game enhancer codes - GSCentral.org (and news)
tcrf.net/User:Nensondubois Youtube.com/user/nensondubois
Next newer thread | Next older thread
Jul - The Cutting Room Floor - Cleaning Up the Game Boy Categories New poll - New thread - New reply


Rusted Logic

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

29 database queries.
Query execution time:  0.096830 seconds
Script execution time:  0.018704 seconds
Total render time:  0.115534 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 148 column 37 - Warning: unescaped & or unknown entity "&id"
line 147 column 206 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 91 - Warning: missing </font> before </table>
line 156 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 158 column 9 - Warning: missing <tr>
line 176 column 13 - Warning: missing <tr>
line 177 column 102 - Warning: unescaped & or unknown entity "&postid"
line 189 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 191 column 9 - Warning: missing <tr>
line 209 column 13 - Warning: missing <tr>
line 210 column 102 - Warning: unescaped & or unknown entity "&postid"
line 218 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 220 column 9 - Warning: missing <tr>
line 238 column 13 - Warning: missing <tr>
line 239 column 102 - Warning: unescaped & or unknown entity "&postid"
line 246 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 248 column 9 - Warning: missing <tr>
line 266 column 13 - Warning: missing <tr>
line 267 column 102 - Warning: unescaped & or unknown entity "&postid"
line 277 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 279 column 9 - Warning: missing <tr>
line 297 column 13 - Warning: missing <tr>
line 298 column 102 - Warning: unescaped & or unknown entity "&postid"
line 306 column 7229 - Warning: replacing unexpected input with </input>
line 306 column 7543 - Warning: discarding unexpected </span>
line 309 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 311 column 9 - Warning: missing <tr>
line 329 column 13 - Warning: missing <tr>
line 330 column 102 - Warning: unescaped & or unknown entity "&postid"
line 353 column 17 - Warning: missing <tr>
line 353 column 17 - Warning: discarding unexpected <table>
line 356 column 35 - Warning: missing <tr>
line 356 column 50 - Warning: missing </font> before </td>
line 356 column 91 - Warning: missing </font> before </table>
line 358 column 35 - Warning: missing <tr>
line 358 column 50 - Warning: missing </font> before </td>
line 359 column 37 - Warning: unescaped & or unknown entity "&id"
line 358 column 206 - Warning: missing </font> before </table>
line 360 column 17 - Warning: discarding unexpected </textarea>
line 360 column 28 - Warning: discarding unexpected </form>
line 360 column 35 - Warning: discarding unexpected </embed>
line 360 column 43 - Warning: discarding unexpected </noembed>
line 360 column 53 - Warning: discarding unexpected </noscript>
line 360 column 64 - Warning: discarding unexpected </noembed>
line 360 column 74 - Warning: discarding unexpected </embed>
line 360 column 82 - Warning: discarding unexpected </table>
line 360 column 90 - Warning: discarding unexpected </table>
line 362 column 9 - Warning: missing </font> before <table>
line 374 column 25 - Warning: discarding unexpected </font>
line 383 column 37 - Warning: discarding unexpected </font>
line 361 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 11 - Warning: <img> lacks "alt" attribute
line 161 column 23 - Warning: <img> lacks "alt" attribute
line 161 column 64 - Warning: <img> lacks "alt" attribute
line 161 column 113 - Warning: <img> lacks "alt" attribute
line 161 column 163 - Warning: <img> lacks "alt" attribute
line 162 column 11 - Warning: <img> lacks "alt" attribute
line 172 column 15 - Warning: <img> lacks "alt" attribute
line 186 column 1835 - Warning: <img> lacks "alt" attribute
line 194 column 22 - Warning: <img> lacks "alt" attribute
line 194 column 63 - Warning: <img> lacks "alt" attribute
line 194 column 112 - Warning: <img> lacks "alt" attribute
line 194 column 162 - Warning: <img> lacks "alt" attribute
line 195 column 11 - Warning: <img> lacks "alt" attribute
line 205 column 15 - Warning: <img> lacks "alt" attribute
line 209 column 92 - Warning: <font> attribute "color" had invalid value "7C60B0" and has been replaced
line 223 column 22 - Warning: <img> lacks "alt" attribute
line 223 column 63 - Warning: <img> lacks "alt" attribute
line 223 column 112 - Warning: <img> lacks "alt" attribute
line 223 column 162 - Warning: <img> lacks "alt" attribute
line 224 column 11 - Warning: <img> lacks "alt" attribute
line 234 column 15 - Warning: <img> lacks "alt" attribute
line 251 column 22 - Warning: <img> lacks "alt" attribute
line 251 column 63 - Warning: <img> lacks "alt" attribute
line 251 column 112 - Warning: <img> lacks "alt" attribute
line 251 column 162 - Warning: <img> lacks "alt" attribute
line 252 column 11 - Warning: <img> lacks "alt" attribute
line 262 column 15 - Warning: <img> lacks "alt" attribute
line 266 column 89 - Warning: <font> attribute "color" had invalid value "60c000" and has been replaced
line 282 column 23 - Warning: <img> lacks "alt" attribute
line 282 column 64 - Warning: <img> lacks "alt" attribute
line 282 column 113 - Warning: <img> lacks "alt" attribute
line 282 column 163 - Warning: <img> lacks "alt" attribute
line 293 column 15 - Warning: <img> lacks "alt" attribute
line 314 column 22 - Warning: <img> lacks "alt" attribute
line 314 column 63 - Warning: <img> lacks "alt" attribute
line 314 column 112 - Warning: <img> lacks "alt" attribute
line 314 column 162 - Warning: <img> lacks "alt" attribute
line 315 column 11 - Warning: <img> lacks "alt" attribute
line 325 column 15 - Warning: <img> lacks "alt" attribute
line 359 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 359 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 359 column 246 - Warning: <img> proprietary attribute value "absmiddle"
line 368 column 25 - Warning: <img> lacks "alt" attribute
line 373 column 267 - Warning: <img> lacks "alt" attribute
line 149 column 50 - Warning: trimming empty <font>
line 306 column 7296 - Warning: trimming empty <label>
line 353 column 17 - Warning: trimming empty <tr>
line 356 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 179 column 74 - Warning: <table> proprietary attribute "height"
line 210 column 27 - Warning: <nobr> is not approved by W3C
line 239 column 27 - Warning: <nobr> is not approved by W3C
line 267 column 27 - Warning: <nobr> is not approved by W3C
line 298 column 27 - Warning: <nobr> is not approved by W3C
line 330 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 128 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