Streets of Rage original rectangular UI/story components

All21 records from original ROM table0x3F5B6, source normalized SHA256 dd44f120446654bb91c448762f3e0cd0d9b034f35d0e3266a4dc34402ada95c0.

Original Kosinski source0x3A538 expands to RAM0xFF3080 and0x3EDA4 to0xFF0F40. Dimensions, RAM pointers and VRAM destinations are in each8-byte table record. Original routine0xB9BA adds the documented tile-base word and uses128/256-byte VRAM row strides. Tile attributes preserve palette banks and flips. Original sparse scene palette lists are composited in the source's load order and shown at their static target phase.

native-proof.json records exact native verification for every map: a private reset trampoline invokes the untouched original Kosinski decoder, rectangular-map loader and sparse-palette loader; all mapped words read back through the native VDP and all64 palette slots compare exactly to the independent extraction. The private trampoline ROM remains local and is not included. Original SMD and normalized cartridge files remain unchanged.

map00/01 are original city planes; map02–07 are opaque black transition masks, with transparency showing their cutout shapes. map08 is the Axel title illustration; map09/10 and11/12 are English/Japanese logo components, which remain separate partial mapped shapes. map13–18 are good-ending illustration components. map19/20 are good-ending transition masks. They are original assets with original mappings and selected native palettes; these are not assembled complete screens, and dynamic timing/scrolling/palette fades and sprite overlays are outside this export.

The tool is tools/graphics/ui-composites.py on L:. The original common raw art resource files and source provenance remain in the parent graphics collection. extras-manifest.json is supplemental; the main graphics manifest is not rewritten by this tool.
