Skip to content
Phosphoneowiki
Contents

Window, sound and video

These options are for seeing and hearing. They do not change the emulation: a window only slows execution so that one emulated frame lasts 1/60 s; results are identical to a windowless run.

--sdl

Syntax : --sdl

Opens an SDL2 window: the current video mode’s picture (4:3, resizable), keyboard and mouse passed to the firmware, sound, gamepad. Real-time pace, 60 frames per second. Closing the window ends the emulation. The build must have found SDL2 (pkg-config sdl2).

Example

$ phosphoneo --sdl --scale 3 prog.neo

Good to know. Window-only keys: F11 or Alt+Enter = full screen, F12 = PPM screenshot, Ctrl+F12 = configuration menu. F1 to F10 stay with the Neo6502.

--scale

Syntax : --scale N

Initial window size: N times 320 × 240 (default 3). The Ctrl+F12 menu also cycles it from 1 to 4.

--fullscreen

Syntax : --fullscreen

4:3 full screen with black bars; implies --sdl.

--no-sound

Syntax : --no-sound

Mutes the window’s audio output. Sound is still generated: --wav and --record still capture it.

--wav

Syntax : --wav son.wav

Writes the firmware’s sound to a WAV file. The generator is the firmware’s own (SNDGetNextSample), pulled 735 times per frame; the file is therefore the same on every run.

Example

$ phosphoneo prog.neo --cycles 3000000 --wav son.wav
phosphoneo : son -> son.wav (19845 échantillons)

--record

Syntax : --record partie.avi

Records picture and sound into an MJPEG AVI video at 60 frames per second. This is how our films’ footage is shot, and what animated cover art and visual regression checks use.

Example

$ phosphoneo prog.neo --cycles 3000000 --record partie.avi
phosphoneo : vidéo -> partie.avi (27 images)

Good to know. One second of machine time (6,250,000 cycles) gives 60 frames; a half-second file already weighs over 500 KB: compression is light, to stay faithful.

Sources in the repository : src/main.c, README.md.