240p Test Suite (NES, GB, GBA) v0.21
Highlights:
- NES: Build-time option to exit to menu if included in Action 53 multicart, either from menu or pressing Reset twice
- PLUGE (NES): Draw center grays in correct colors after closing help
- MDFourier (NES): Hold Start at boot to skip to this activity; warn for reduced precision (triangle phase differs from power-up state) and add tones to indicate it for profile v7 and v8; fix stuck note after pressing B to stop; caution that Famicom expansions are not tested; NSF version
- GB: Add Convergence pattern
- Overscan (GB): Change WX in hblank to hide a 1-line-tall glitch (reported by LIJI32)
- Stopwatch (GB): Make hours digit work
- Lame boy (GB): Glove contrast; vest and sleeve trail; squash bottom when on ground; involve the abdominal and back muscles
- Help (NES): Add shading detail to Gus's shirt and cap (GBA parity)
- Help (GB, GBA): Make some descriptions more concise (with Artemio's help)
- SGB border: Simplify title to reuse more tiles and more closely match the recent Genesis version
Behind the scenes:
- Disable -static when building DTE encoder on macOS (#24)
- Vertical scroll (GB): Compress tilemap with PB16
- Help: Move non-ASCII symbols to $18-$1F to free DTE codes; coalesce repeated lines of text; compress each line of text twice and keep the smaller; assume no document has more than 9 pages
- GB: Share code for "Select: Invert grays" and for scroll tests' speed control
- SGB packet sending: Use ring counter
- GB: Switch to smaller ADC/DAA binary to decimal converter
- GB: Numerous micro-optimizations
- GB unused.py: Recognize more optimization opportunities
- GB: Allow use of out-of-PATH copy of RGBDS
- GBA: Compile with -fno-common for GCC 10 compatibility