An emulator for the original (8-bit) nintendo / famicom game console.
fceux [options] "filename"
FCEUX is an emulator for the original (8-bit) Nintendo Entertainment System (NES). It has a robust color palette rendering engine that is fully customizable, along with excellent sound and joystick support, and even supports movie recording and playback.
--no-config {0|1}
Use default config file and do not save to it, when enabled.
-g {0|1}, --gamegenie {0|1}
Enable or disable emulated Game Genie.
--nogui {0|1}
Enable or disable the GTK GUI.
--loadlua FILE
Loads lua script from filename FILE.
--pal {0|1}
Enable or disable PAL mode.
-i DEV, --inputcfg DEV
Configures input device DEV on startup. Devices: gamepad powerpad hypershot quizking
--input{1|2} DEV
Set which input device to emulate for input 1 or 2. Devices: gamepad zapper powerpad.0 powerpad.1 arkanoid
--input{3|4} DEV
Set the famicom expansion device to emulate for input 3 or 4. Devices: quizking hypershot mahjong toprider ftrainer familykeyboard oekakids arkanoid shadow bworld 4player
--inputdisplay {0|1}
Enable or disable input display.
--fourscore {0|1}
Enable or disable fourscore emulation.
--newppu {0|1}
Enable or disable the new PPU core. (WARNING: May break savestates)
--frameskip NUM
Set NUM of frames to skip per emulated frame.
--clipsides {0|1}
Enable or disable clipping of the leftmost and rightmost 8 columns of the video output.
--slstart SCANLINE
Set the first scanline to be rendered.
--slend SCANLINE
Set the last scanline to be rendered.
--nospritelim {0|1}
When set to 0, this disables the normal 8 sprites per scanline limitation. When set to 1, this enables the normal 8 sprites per scanline limitation. NOTE: Yes, this option is 'backwards'.
-x XRES, --xres XRES
Set horizontal resolution for full screen mode.
-y YRES, --yres YRES
Set vertical resolution for full screen mode.
--doublebuf {0|1}
Enable or disable double buffering.
--autoscale {0|1}
Enable or disable autoscaling in fullscreen.
--keepratio {0|1}
Keep native NES aspect ratio when autoscaling.
--{x|y}scale VAL
Multiply width/height by VAL. (Real numbers > 0 with OpenGL, otherwise integers > 0).
--{x|y}stretch {0|1}
Stretch to fill surface on x/y axis (OpenGL only).
-b {8|16|24|32}, --bpp {8|16|24|32}
Set bits per pixel.
--opengl {0|1}
Enable or disable OpenGL support.
--openglip {0|1}
Enable or disable OpenGL linear interpolation.
-f {0|1}, --fullscreen {0|1}
Enable or disable full-screen mode.
--noframe {0|1}
Hide title bar and window decorations.
--special {1-4}
Use special video scaling filters. (1 = hq2x 2 = Scale2x 3 = NTSC 2x 4 = hq3x 5 = Scale3x)
-p FILE, --palette FILE
Use the custom palette in FILE.
--ntsccolor {0|1}
Enable or disable NTSC NES colors.
--tint VAL
Set the NTSC tint.
--hue VAL
Set the NTSC hue.
-s {0|1}, --sound {0|1}
Enable or disable sound.
--soundrate RATE
Set the sound playback sample rate (0 == off?).
--soundq {0|1|2}
Set sound quality. (0 = Low 1 = High 2 = Very High)
--soundbufsize MS
Set sound buffer size to MS milliseconds.
--volume {0-256}
Sets the sound volume to the given value, where 256 is max volume.
--trianglevol {0-256}
Sets the sound volume of the triangle wave to the given value, where 256 is max volume.
--square1vol {0-256}
Sets the sound volume of square wave 1 to the given value, where 256 is max volume.
--square2vol {0-256}
Sets the sound volume of square wave 2 to the given value, where 256 is max volume.
--noisevol {0-256}
Sets the sound volume of the noise generator to the given value, where 256 is max volume.
--lowpass {0|1}
Enables or disables lowpass filtering of the sound.
--soundrecord FILE
Record sound to file FILE.
--playmov FILE
Play back a recorded FCM/FM2 movie from filename FILE.
--pauseframe FRAME
Pause movie playback at frame FRAME.
--moviemsg {0|1}
Enable or disable movie messages.
--fcmconvert FILE
Convert fcm movie file FILE to fm2.
--ripsubs FILE
Convert movie's subtitles to srt.
--subtitles {0|1}
Enable or disable subtitle display.
-n SRV, --net SRV
Connect to server SRV for TCP/IP network play.
--port PORT
Use TCP/IP port PORT for network play.
-u NICK, --user NICK
Set the nickname to use in network play.
-w PASS, --pass PASS
Set password to use for connecting to the server.
-k NETKEY, --netkey NETKEY
Use string NETKEY to create a unique session for the game loaded.
--players NUM
Set the number of local players.
--rp2mic {0|1}
If enabled, replace Port 2 Start with microphone (Famicom).
--videolog c
Calls mencoder to grab the video and audio streams to encode them. Check the documentation for more on this.?
--mute {0|1}
Mutes FCEUX while still passing the audio stream to mencoder.
FCEUX has a number of commands available within the emulator. It also includes default keyboard bindings when emulating game pads or power pads.
NES Gamepad | Keyboard | ||||
---|---|---|---|---|---|
= | |||||
Up | Keypad Up | ||||
Down | Keypad Down | ||||
Left | Keypad Left | ||||
Right | Keypad Right | ||||
A | F | ||||
B | D | ||||
Select | S | ||||
Start | Enter |
<Alt+Enter>
Toggle full-screen mode.
<F1>
Cheat menu (command-line only).
<F2>
Toggle savestate binding to movies.
<F3>
Load LUA script.
<F4>
Toggles background rendering.
<F5>
Save game state into current slot (set using number keys).
<F7>
Restore game state from current slot (set using number keys).
<F10>
Toggle movie subtitles.
<F11>
Reset NES.
<F12>
Save screen snapshot.
Shift+<F5>
Beging recording video.
Shift+<F7>
Load recorded video.
0-9
Select save state slot.
PageUp/PageDown
Select next/previous state.
-
Decrease emulation speed.
=
Increase emulation speed.
Tab
Hold for turbo emulation speed.
Pause
Pause emulation.
\
Advance a single frame.
.
Toggle movie frame counter.
,
Toggle input display.
q
Toggle movie read-only.
'
Advance a single frame.
/
Lag counter display.
Delete
Frame advance lag skip display.
<ESC>
Quit FCEUX.
<F8>
Insert coin.
<F6>
Show/Hide dip switches.
1-8
Toggle dip switches (when dip switches are shown).
<F6>
Select disk and disk side.
<F8>
Eject or insert disk.
http://fceux.com/
The FCEUX project homepage.
This manual page was written by Joe Nahmias <joe _at_ nahmias.net>, Lukas Sabota <ltsmooth42 _at_ gmail.com> and Alexander Toresson <alexander.toresson _at_ gmail.com> for the Debian GNU/Linux system (but may be used by others).