228 Commits

Author SHA1 Message Date
100thCoin
0aed5f199b Updated Readme for the new BG Serial In test. 2025-12-01 12:34:18 -05:00
100thCoin
8e5e2da4bb Added the BG Serial In test
I also made sure my "ClearNametable2" loop writes $FF to the attribute table.
2025-12-01 12:30:52 -05:00
100thCoin
2ebc02c75f Cleaned up nametable after Stale BG SR test 2025-11-30 16:18:14 -05:00
100thCoin
3dab5e9c18 Fixed The Stale BG Shift Register Test.
Added an extra write to the nametable to make sure, regardless of mirroring, the correct value is read in HBlank.
2025-11-30 16:11:00 -05:00
100thCoin
64e8695bf9 Fixed a typo 2025-11-29 02:14:01 -05:00
100thCoin
7c58b3318b Update README.md
updated the number of tests after removing pass/fail from the power on state of CPU Registers test.
2025-11-26 13:57:11 -05:00
100thCoin
c35e7047d8 Removed Pass/Fail on CPU Register power on state
Upon further research, despite the values trending towards zero, there is occasional noise that some consoles consistently start with. There are no more "power on state" tests that count as pass/fail, and all of them are now just for curiosity sake.

Oh- and I also made a change to the Stale BG Shift Register test. Can someone verify this please?
2025-11-26 11:22:49 -05:00
100thCoin
539aac0e15 Fixed buzzing sound in DMC test. 2025-11-22 14:15:24 -05:00
100thCoin
6550a202d3 Corrected issue with "Dummy Reads" error code "B"
I forgot to read from address $2002 for that error code.
2025-11-18 22:51:44 -05:00
100thCoin
a7bf0cfaee Saved a few bytes
Also made sure the JSR "IncorrectReturnAddressOffset" is written immediately after clearing RAM, and before every wanting to use CopyReturnAddressToByte0.
2025-11-14 02:19:54 -05:00
100thCoin
27a876c93e Corrected nametable clearing routine at power on
Back in commit ec61073 I changed the nametable arrangement from horizontal to vertical, but forgot that my nametable clearing routine only write from $2000 to $27FF. Now I clear the second nametable properly.
2025-11-14 01:37:48 -05:00
100thCoin
9f7de1130d Saved a few bytes, 2025-10-24 19:32:15 -04:00
100thCoin
d1548a0e25 Added another test to Open Bus
Additionally, I added more to the open bus pre-requisite for Implied Dummy Reads.
2025-10-24 19:23:19 -04:00
100thCoin
2d36b1b05c Fixed off-by-one error codes in "Implied Dummy Reads" 2025-10-24 17:51:38 -04:00
100thCoin
b538d6728e Fixed crash in "Implied Dummy Reads"
This time I added some checks to make sure there isn't garbage data coming through the controller ports.
2025-10-24 01:39:31 -04:00
100thCoin
fcb40097d6 Moved the two new tests to page 16
I think they fit in better there.
2025-10-23 15:11:22 -04:00
100thCoin
46d7aaed55 "Rendering Flag Behavior" now clears page 2.
I forgot to do that, which is important since page 2 is used for the OAM DMA.
2025-10-23 14:56:07 -04:00
100thCoin
6ad5e1317b The menu now disables sprites after running tests
This prevents a few tests from leaving lingering sprites visible on screen after the test ends.
2025-10-23 14:13:57 -04:00
100thCoin
da5b6d4fe9 Cleaned up nametable after "Rendering Flag Behavior"
I forgot to remove the tiles that were added for the test.
2025-10-23 14:10:16 -04:00
100thCoin
c1dd455049 "CHR ROM is not Writable" "Rendering Flag Behavior"
Added two new tests!
2025-10-23 14:07:01 -04:00
100thCoin
8c7f38c03c Added more comments to "Scanline 0 Sprites" 2025-10-23 02:59:47 -04:00
100thCoin
d185115329 Renamed "Stale BG Shift Registers" to include "BG"
BG meaning "Background".
2025-10-23 02:32:34 -04:00
100thCoin
0f2d8f854a Prevent false-positive in "Stale Shift Registers"
Sprite zero is no longer on a scanline with visible pixels.
I also ran some checks for false-positives, flagging sprite zero hits entirely because sprite zero exists.
I also ran some checks afterwards for what happens if the sprite X position wasn't zero.
2025-10-23 02:11:42 -04:00
100thCoin
ddca79a583 Fixed off-by-1 error codes in "APU Length Table" 2025-10-20 12:03:05 -04:00
100thCoin
8cdf1c9b39 Fixed VBL Suppression issue in scanline 0 sprites
Instead of using JSR WaitForVBlank, I instead don't.
2025-10-19 23:08:26 -04:00
100thCoin
ee099f21a2 Fixed a bug in "Sprites on Scanline 0" 2025-10-19 22:58:00 -04:00
100thCoin
efcf751d83 Optimized the "Sprites On Scanline 0" test 2025-10-19 22:47:46 -04:00
100thCoin
5f1e64427c Updated SHA and SHS to accept "Behavior 3"
Updated SHA and SHS to accept "Behavior 3", which occurs if the Address-Bus-High-Byte-Corruption included a magic number to be bitwise ORed with ABH, or did not occur at all.
2025-10-19 19:30:54 -04:00
100thCoin
e13d252cb5 Fixed some comments in the new test
removed some lines that were incorrect. I was temporarily using PrintCHR to update the backdrop color, but copy/pasted that line while writing the test, leading to the incorrect comment.
2025-10-14 14:11:31 -04:00
100thCoin
e1cfebcf99 Made sure to reset the ppu scroll after new test 2025-10-14 13:27:31 -04:00
100thCoin
f85dc7b94f Added some comments to the new test 2025-10-13 17:19:14 -04:00
100thCoin
f675f78adb Added a test for "Sprites on scanline 0"
Added a test for "Sprites on scanline 0", and it can check if this is an RGB or Composite PPU.
2025-10-13 00:18:13 -04:00
100thCoin
7a42089a2a Fixed a typo with "LAX zeropage, Y" 2025-10-05 20:22:38 -04:00
100thCoin
043b54c1a2 Fixed a formatting issue in the readme 2025-09-30 13:57:12 -04:00
100thCoin
0bc6be1712 "No Reset Flag Detected!" is how drawn in FBlank.
Otherwise it takes too long.
2025-09-29 17:48:58 -04:00
100thCoin
577da3bcaf "PPU Reset Flag" now clears parts of the nametable
It was otherwise polluting previous DRAW results.
2025-09-29 17:36:51 -04:00
100thCoin
ef2b6597df Updated page 15
"PPU Reset Flag" is now a "DRAW" test.
"CPU Registers Power On State" is no longer just a DRAW test, and has error codes.
2025-09-29 17:21:37 -04:00
100thCoin
0ec6c010b2 Added the "Stale Shift Registers" test.
Removed "RMW $2007 Extra Write". (Commented out the pointer in the table.)
Added a test for "Stale Shift Registers" and how a sprite zero hit can collide with it.
2025-09-29 16:23:18 -04:00
100thCoin
6f543a0126 Prevented false-positives on "Attributes as Tiles"
Added a test with an intentional sprite zero miss.
2025-09-28 12:27:03 -04:00
Chris Siebert
0582772da7 Update README.md
Updated the outdated images, and mentioned that this was made for an NTSC console, not PAL.
2025-09-25 15:03:13 -04:00
100thCoin
7487c7876f Fixed a crash in "Implied Dummy Reads"
Whoops! It turns out I accidentally ran out of space and overwrote some bytes by using .org
Honestly not sure how the test was running at all like that?
2025-09-25 14:36:48 -04:00
100thCoin
cf9314cfad Updated the "t Register Quirks" test.
Renamed "$2005 Before $2006" to "t Register Quirks" and then added 3 new error codes.
2025-09-25 13:57:21 -04:00
100thCoin
787849c6c1 Added a test about writing to $2005 before $2006
I also moved the "Attributes As Tiles" test to page 19.
2025-09-24 18:28:53 -04:00
100thCoin
ec61073058 Converted the nametable arrangement to vertical
In addition to changing the nametable arrangement from a horizontal arrangement to a vertical arrangement, I also added a new error code to "Attributes as Tiles", verifying which nametable is rendered in the following scanlines.
2025-09-24 00:58:13 -04:00
100thCoin
bbc0dfe989 Updated the number of tests in the ReadMe
It's now 127
2025-09-23 23:34:25 -04:00
100thCoin
d6c0084e20 Added the "Attributes as Tiles" test
This test is all about how the attribute data can be read as tile data if the t register is set to an attribute table address.
2025-09-23 23:13:51 -04:00
100thCoin
cf56c42377 Fixed off-by-one-error in all-test-mode titles
Now the correct name is drawn for a test during the all-test-mode.
2025-09-21 16:18:02 -04:00
100thCoin
391e3e4b10 All-Test-Mode now prints the name of the test 2025-09-21 15:44:52 -04:00
100thCoin
0e0cdc79fe Fixed error code in "Controller Clocking" off by 1
I forgot to increment the error code between test 3 and 4.
2025-09-20 21:11:49 -04:00
100thCoin
e9775236a2 Fixed a small bug in the INC $4014 test.
I accidentally removed the `LDA $2002` in the previous commit.
2025-09-20 11:48:09 -04:00