SVX2 FastROM Animated Video

Video Playback

Artemis launch and return animations at an intentional 2×, followed by ten seconds of genuine ~59.94p Apollo 11 launch footage: 1,200 distinct SNES frames in a 64 Mbit (8 MiB) Fast ExHiROM cartridge.

loading core…

Start pauses/resumes; A resumes; L/R step one frame; Left/Right seek one second or shuttle at 2×/4×/8× when held. Keyboard and touch use the matching on-screen SNES controls.

Click the screen, then play. (Tab away and it pauses.)

Launch spectacle at one frame per VBlank

Frames 0–299 and 300–599 preserve consecutive frames from NASA SVS’s progressive 29.97p Artemis animations and deliberately present them at 2×. Frames 600–1199 preserve all 600 consecutive temporal samples from NASA Images’ progressive ~59.94p Apollo 11 press-site master. No optical-flow frames are synthesized. The Apollo cut begins exactly at logical stream offset $3F0000, crossing from ExHiROM region A into file $410000 / CPU bank $41. Start pauses/resumes, A resumes after seeking, L/R step one frame, and Left/Right seek one second or shuttle at 2×, 4×, then 8× when held.

Sources: NASA SVS item 14191, Artemis I Mission Animations, and NASA Images’ Apollo 11 press-site film KSC-19690716-MH-NAS01-0001. No Duck and Cover footage or animated turtle sequence is present.

The cartridge, measured

This is a complete player result, not a desktop encoder estimate.

9,000 / 9,000eligible presentations
0 / 0deadline slips / decode errors
1,200 / 1,200unique quantized frames
64 Mbit (8 MiB)Fast ExHiROM cartridge

How one frame moves

FastROM packet tablecode mirror + stream in 64 Mbit (8 MiB) ExHiROM
Bank $7F stagingDMA during active display
SVX2 in-place decodereplacement + retained spans
Mode 7 VRAM4,480-byte DMA in VBlank
Packet staging and decode happen during active display; VBlank is reserved for presentation and the small BG3 dashboard update.

Each frame is 70 tile-major Mode 7 tiles: 80 × 56 indexed pixels. A replacement span copies changed bytes from the staged packet. A copy span means “retain what is already in the framebuffer,” so the hot decoder advances its cursors without copying bytes onto themselves. Sequential playback stays entirely delta-coded—including each cut and the loop—while separate independent keyframes keep seeking bounded. Frame 600, the cut to Apollo, begins exactly at the ExHiROM region seam: logical $3F0000 becomes file $410000 / CPU bank $41.

Mode 7 owns scanlines 0–191. An HDMA split switches the lower region to Mode 1 BG3 for the time, measured FPS, scene label, health, and transport. Automatic joypad results are read from $4218/$4219 off the decode-critical path.

Why SVX2?

Codec-selection benchmark corpus. Size includes packet overhead; the published native-60 reel is independently gated below.
Codec or pathPacked sizeRaw ratio65816 rate
Raw block copy1,368,600 B101.83%87.6 fps
Gallery LZSS747,548 B55.62%2.1–2.3 fps
SVC1755,658 B56.22%0.6 fps
SVX1 XOR + PackBits705,621 B52.50%15.6–34.3 fps
SVX2 replacement/copy766,569 B57.04%60.8–69.4 fps

SVX1 wins on size, but its target decoder misses even the 20 fps goal. SVX2 is the smallest tested representation whose target-native decoder clears the cadence requirement. Gallery LZSS is shown only as an independent-frame baseline: at roughly two frames per second, it is not the video codec.

Full-pipeline timing

After the in-place-copy optimization; one NTSC interval is 89,342 PPU dots.
Phasep50p99Maximum
FastROM stage8,19210,24011,264
SVX2 decode64,51269,632254,976
VRAM presentation10,24010,24010,240
Combined83,96889,088275,456
p99 combined: 89,088 / 89,342 dots. The 275,456-dot maximum is a seek keyframe, intentionally absent from sequential playback.

The release gate presented 9,000 frames in 9,000 eligible intervals after the animated title, with zero decoder errors and zero deadline slips. The two Artemis sections use 300 consecutive progressive 29.97p source frames apiece and intentionally play at 2×. The Apollo section preserves 600 consecutive progressive ~59.94p source samples at one per VBlank. All 1,200 of 1,200 quantized SNES frames are distinct; no optical-flow intermediates are synthesized.

The cartridge dashboard reports the nominal playback cadence as 60.0 fps. Physical NTSC SNES refresh is approximately 60.099 Hz; that hardware-rate detail belongs in timing analysis, not in the player’s nominal-cadence readout.

Verification and source

Published 64 Mbit (8 MiB) Fast ExHiROM · 1,200 distinct frames · 20 seconds
d71382c8fec7320eed6b2f75f6f6a4a1a1158c5604de66bfd7e43debf0b52525