RockNES X a nintendo entertainment system (8-bit) emulator First release (version 1.

0): March 9th, 2000 This release (version 2.0): April 14th, 2002 developed by Alexandre da Veiga original DOS version (RockNES) developed by Fx3 (fx3rnes@hotmail.com) www.rocknes.kinox.org ---------------------------------------------------------------------------------------------------------INDEX 1. Disclaimer 2. Warning about bad dumps 3. Minimum Requirements 4. RockNES X description/features 5. Playing with RockNES X: the basics 6. Netplay 7. Optimizing the RockNES X performance 8. About the RockNES X development 9. The RockNES X History (development progress) 10. Special thanks ---------------------------------------------------------------------------------------------------------1. DISCLAIMER I am not affiliated with Nintendo or any other company, nor advocate the piracy of Nintendo games. This software is freeware, for absolutely non-commercial use. It may be distribute freely *as is* (non-modified). Commercial games cannot be packaged with this emulator. When you use this software you do so at your own risk. The author cannot be responsible for any loss or damage resulting from the use o r misuse of this software. ---------------------------------------------------------------------------------------------------------2. WARNING ABOUT BAD DUMPS (BAD ROMS) There are tons of bad dumps, most of them with incorrect information in its head er. Use a tool that is able to recognize the rom content and fix its header. ---------------------------------------------------------------------------------------------------------3. MINIMUM REQUIREMENTS - Pentium MMX or greater processor - a 3D (Direct3D-compatible) videocard for 3D support - A DirectSound-compatible soundcard - Microsoft DIRECTX 8.1 (get it from www.microsoft.com/directx if you don't have it) - Windows 98/ME/2000/XP supported

NESticle saved state loading (partially supported).Command line support . The following extra hardware is also emulated: .240. Super2xSai.26.234. NES I/O.44. IPX.97.42.69.110.90.4.43.189.10.113.78.VS Unisystem arcade machines (missing linked-system) in iNES format.33.91.Screenshot support (video buffer and NES buffer modes).187.7.71. Game Genie codes The X features: . including remote savestate load ing. very close to real NES. .117.2.83.225. 226. .Netplay support (TCP/IP. . Accurate emulation of sprite #0 hits.19.18. .227.21. This is t he Windows version for the original RockNES developed for DOS (by fx3).Famicom DiskSystem. These extra features are also provided: NES Movies (record/play). Sound emulation of all 5 channels: pulses.160.Konami's jap.246 and 255.67.256x224 alternate video mode.Stretched video mode. Color emphasis and monochrome mode.70.180. cable or LAN connection ---------------------------------------------------------------------------------------------------------4.232.34. 32.Mappers: 0.231.Full 3D Hardware support (faster) . .64.8.79.101.118.5. Video Palette.11.68.rom' required.92.72.22. 2xSai video filtering.Video at any resolution/color depth supported by the videocard .243. VRCVI sound hardware emulation (used by Akumajou Densetsu/Madar a). must to be in the same directory of the RockNESX executable).66. triangle.15. . Most of these 85 mappers have full support.119. modem).229.9.6. . WorkRAM (battery). .40. noise and PCM.233. Save states.230. serial.85.13.3.Full Screen and Windowed modes .SuperEAGLE.Scanlines support.57.235.65.16.23.75.151.76.17.228.184.Joystick support.99.41.25.Netplay recommended requirements: .24. .100. emulated as mapper #20 (BIOS 'disksys. NES 2C02 PPU emulation with scanline gfx engine.xDSL.94. ROCKNES X DESCRIPTION/FEATURES This software is a Nintendo Entertainment System 8-bit (NES) emulator. Accurate emulation of PPU I/O (pass ok in the test program). .20. What is emulated: NES 2A03 CPU (by Metthey Conte). 88.1.73.

Decrease the slot number F4 .Start/Stop movie recording (using the current slot) F10 . you can simply use the menu option File->Open and Play ROM.ZIP file support About command line support: You can use ROCKNESX <romfile> to start a game from the prompt. LEFT.Show this list of keys F2 .Increase the slot number Shift + F3 . b) Default Controls Player 1: UP.Start/Stop movie playing (using the current slot) F11 .'X' key B . You can also tell RockNES X to look for ROMs in the subf olders. Since the ROM names and locations are stored in a file (to allow the fast start up)..Load a state from the current slot F5 .keyboard arrow keys A . DOWN.Right Shift START .Stop the emulation F1 .Save a state in the current slot F3 . the following keys are also available: ESC . To do this. use the menu option Options->Folders and add the folders where your ROMs are located.'Z' key SELECT . .Toggle between full screen and windowed mode F12 .Reset (Soft Reset) F6 .Take screenshot These commands are also available on the GUI (when using windowed mode). About Zip support: The RockNES X loads the first NES file found in a . ---------------------------------------------------------------------------------------------------------5. PLAYING WITH ROCKNES X: THE BASICS a) Configuring your ROMs path To load a ROM. so they you show up in the GUI every time you start the emulator. or to create game shortcuts.FDS Disk Side Change F7 . choo se a file and begin playing. Although. the preferred way is to tell RockNES X wher e your ROMs are located.FDS Disk Insert/Eject F9 . use the menu option View->Refresh Game List when you change the location of a R OM file.Enter During the emulation.zip file. RIGHT .

nes romname.nes romname.dat) is created when you run RockNES X the fi rst time or when it is in an older/invalid format. The ZIP format is fully supported.zip romname. Enter the player 1's machine add ress when prompted. The netplay mode ends only when the menu option Netplay->Stop is selected.zip [Player [Player [Player [Player 2] 2] 2] 2] romname. Wait until the player 2 connects. Playing as player 2: . c) About the netplay buffer This buffer may be usually set to a value a little bit higher than the ping val ue. This file contains machine-speci fic information.nes romname. a netplay session will be started. check out the 'Optimizing the RockNES X performance' sect ion. any player can invite the other player to start a game. The players can play many different games without having to repeat the process above. both players must have the ROM file with t he exact same name. From this point. NETPLAY a) To play a game using the netplay.zip b) To start a netplay game. note: the emulation will run at the slowest machine's pace. The connection window will show up.c) Configuration Use the options in the 'Options' menu to configure the video. audio and control lers. 1] 1] 1] 1] romname. For performance tips. ---------------------------------------------------------------------------------------------------------6. Both players can change this value.nes romname. The connection window will show up. use the option menu Netplay->Start. so the following scenarios are allowed: [Player [Player [Player [Player o play as player 1. note: the config file (rockconfig.Select 'play as player 1' and click 'Start'. The player 2 then have to connect to the player 2 machine to start a game: Playing as player 1: .Select 'play as player 2' and click 'Start'.zip romname. If you select t . The higher this value is the slower is the control response.

2) The video rendering is so slow that it's requiring too many CPU processing. For faster (newer) videocards. so the games are emulated at the correct speed. If this is not happening. when you load a sa ve state. For slower videocards. so try it. select a slower resolution. Although. It wil l render as many frames as possible (at a maximum rate of 60 fps). This setting will tell the emulator to run the em ulation with the maximum precision. OPTIMIZING THE ROCKNES X PERFORMANCE a) Emulation Speed The RockNES X must run at 60 'emulation frames per second' at all times. go to Options->Advanced and set the video setting to a lower value. the video should never be an issue. if you have a good sound card (suc h as Sound Blaster Live! or Audigy) and a fast cpu. go to Options->Advanced and set Emulation to 'Time Critical'. so any machine with a Pentium 200 or better processor should run the emulation at full speed. The emulation is ONLY cpu-dependant. try 320x240x8 resolution. to red uce the lag between what you are seeing and what you are hearing. If fact. try the following procedures: 1) If you are running Windows 2000/XP or above. This value is very conservativ e and should work with most sound cards. because this mode also uses a lot of cpu processing. As a last a lternative. except when using video filtering. In this case. c) Sound The default value for the sound buffer is 66 ms. So. so try settings above the recommended value. disable any video filtering or scanline suppo rt. Try different video mode s to find out which ones are better handled by your videocard. ---------------------------------------------------------------------------------------------------------7. Usually the video is faster using the 3D video hardware. This is not true for Windows ME or older systems. it will be remotely sent to the remote player. but not too high. b) Video The RockNES X video speed relies basically in the video driver/hardware. This may take a while dep ending on the connection speed. No relevant processing time is consumed doing this. you can try lower values.d) Remote Loading The remote save state loading is supported by RockNES X. the value 33 .

basic requests. Sis6326 videocard: 60 fps (emulation).ms means that the maximum lag between the emulation and the sound is 33ms. If this also doesn't help. .2GHz. Trident videocard: 60 fps (emulation). video/audio/input/netplay code is developed with DirectX 8. If you are experiencing sound 'popups'. ---------------------------------------------------------------------------------------------------------9. d) System Performance Examples: Using 800x600. 10-30 fps (video) Athlon 1. Since RockNES X uses double/triple buffering for the video. 60 fps (video) ---------------------------------------------------------------------------------------------------------8.GUI: The GUI was not using correctly the rocklist. TNT2 videocard: 60 fps (emulation).2GHz. The RockNES X runs in four basic threads (code running in parallel): GUI thread (to control the GUI. 40 fps (video) Athlon 1. full emulation speed even with very slow audio/video cards and auto video frameskip. try increasing the audio priority at Options->Advanced.GUI: Fixed a few typos. the lag between the video and the sound is virtually zero. The RockNES X contains about 30000 lines of code. 35 fps (video) Pentium II 300MHz cpu. message control) Video Thread (video rendering) Audio Thread (audio thread) Emulation Thread (emulation core) (other threads are added for netplay) That's why RockNES X can run with ultra-low audio latency.1. GUI is developed with the MFC framework. GeForce3 videocard: 60 fps (emulation). ABOUT THE ROCKNES X DEVELOPMENT The The The The c/c++ code is compiled with Microsoft Visual C++ compiler. This fixes some odd errors on audio initialization. . THE ROCKNES X HISTORY Version 2. GUI: SERIOUS bug fixed in the sound setup: the soundcard information w as being incorrectly stored. x86 assembly code is compiled with NASM. try to increase the sound buffer size. 60 fps (video) Pentium III 1GHz cpu.GUI: Removed the warning telling that the filtering mode is not supported whe n running with 3D Hardware support . 32 bit color. .AUDIO.0 final . Trident videocard: 60 fps (emulation).dat file during the startup . Fixed. 2D/3D Pentium 233 cpu.GUI: fixed a bug that was preventing the list of ROMs to show the last rom in some .

0 beta2 .VIDEO: new multithreaded gfx engine: now the emulation is able to run at full speed even if very slow videocards. .CORE: command line support fixed .VIDEO: Fixed many bugs that was avoiding the full screen mode to resume after the window is minimized .VIDEO: Many fixed bugs in the video filtering mode . Bug is fixed.NETPLAY: Added support to have a .The battery save is FINALLY working .INPUT: Fixed a bug that was causing the joystick to stop working after a vide o mode switch (during the emulation) .CORE: frames per second measurement improved . .NETPLAY: In some cases the player 1 would have to wait for a long time after stopping the netplay mode.CORE: fixed some memory access violation bugs .The GUI menu item File->Play Selected Rom has been fixed .NETPLAY: The temp dir (used to store a remote savestate) was not set correcly .VIDEO: added official video filtering support (MMX cpu required) . the screenshots are automatic ally saved as <romname> 0.Now RockNES X stores the roms list in a file (rocklist.zip filenames (even when the remote side has a .nes file in the other. .bmp.zip file in one side and a ..VIDEO: SERIOUS bug fixed when switching video modes during the emulation. Now. This means auto frameskip support.NETPLAY: Fixed the loss of sync when switching the video mode during the emul ation ..bmp.NETPLAY: Fixed the loss of sync after a remote save state loading . .README: readme text greatly improved! Version 2. Thi s fixes random crashes when the emulation is stopped .NETPLAY: added support to . It is not . . This could prevent non-admin users to use such feature under Windows 2000/XP. so it do not nee d to search for your 5000 roms every time the emu is started :) .NETPLAY: fixed a bug that would cause the emulator to crash when the initiali zation fails in the remote side .VIDEO: 2D slow blit fixed .CORE: In some systems after the RockNES X was closed the desktop was affected .The way screenshots are named has changed.CORE: sync (to maintain the emulator at 60 fps) greatly improved . Fixed.CORE: Gamegenie support added .ne s file) . . .INPUT: In some systems the keyboard was starting to beep after a few minutes of continuous play.VIDEO: The RockNES X help in-game text was moving incorrectly using windowed and 2D mode. The gfx engine will try to render the maximum n umber of frames possible (60 fps is the maximum).CORE: .dat).bmp. . <romname> 1. <romname> N.dat format updated .EMU: based on the latest rocknes release.cases. .

The way RockNES X and the RockNES core interacts has been completely rewritte n . Using the old system (slots).Scanline support rewritten.needed to change the slot to save different shots during the gameplay. to support more opti ons and future format updates . to support the 3D mode . Version 1.Sound Device selection fixed .Better noise emulation (by Fx3) . Now this number h as been increased to 4 billion :) Version 2.0 beta1 This is the first beta release of the RockNESX 2.The Folders dialog now has the "look subfolders" option .Windows 2000 bug solved! . Added triple buffering 8 bit rendering engine optimized Auto frameskip added (highly recommended!) Ppu code optimized Now RockNES X creates automatically the savegames. Version 1.Battery save fixed . you could save up to 10 shots per game.all the emulation core is in sync with the newest RockNES (DOS) version.Error handling HEAVILY improved .Frameskip support removed (due to the RockNES emulation core requirements) .42 . IPX and modem2modem).Added 48kHz support to the Sound Engine .The .The audio buffer size can be configured now .Input Control partially rewritten (major joystick bugs fixed) .The Screenshot system has been improved and also supports the 3D mode . DIRECTX 8 NEEDED!!!!! . things added/removed) . such as Netplay. serial port.Font Engine Optimized and partially rewritten.3D Hardware Support added (of course using bilinear filtering!) . Remote savestate loading is also supported .Added screenshot support .Small GUI problems fixed (now you know when the ROM is incorrect) . .Several other bug fixes .In sync with the latest RockNES source (1. movies and battery save directories when necessary.61 This new RockNES X version can be 40-120% faster than the previous version. Zip support. This new version is MUCH faster .dat (the RockNES X config file) format has changed. It has new features.Zip support added (finally! :)) .Netplay mode (support for TCP/IP.The GUI has been improved (lots of bug fixed.Sound Engine rewritten: the output quality is better and the lag has gone awa y :) .9x). 3D mode.Now it is possible to toggle between Windowed and Full Screen Mode while play ing (using the F11 key) .

8-bit color palette now is 100% correct .High color and True Color modes support (16.now a thread controls the sound output. Many sound related problems (mainly w ith slow machines) were solved . not only when you clo se the RockNES X .GUI improvements and fixes .06 (newest DOS version) Version 1. the 16-bit mode is faster than the 8-b it mode .Now you can play again with sound disabled .. 32 bits) .Scanline modes added .Command line support. the stretched mode uses pixel interpolation. (TONS of changes to describe here!) Version 1.in newer video cards (like Viper770).now the configurations are saved when are editing them.A ROM can be loaded by a Windows standard load file dialog (you asked for it.2 players support (thanks!) . VS and FDS roms -and.nes" or create shortcut s to your favorite games! .FULLY compliant with the RockNES 1.New keyboard controls .05 (dos) release ..Pixel Interpolation (if supported by the hardware) . 24.Joystick support!!!! ..201 .New artwork .Load Game fixed .the savestate format changed (because of the new CPU core) ..24-bit mode fixed . on a Viper 770 it looks just great! .2 .o) Version 1.All the emulation related changes in the rocknes 1.Joystick mapping fixed .if supported by hardware.Minor speed improvements in the rendering engine .The 16-bit mode is now compatible with old videocards .The keys are now configurable .New Font Engine .Better sound output .. so you got it!) .Version 1. ALL the core is in sync with the newest RockNES (DOS) version. .41 -Improved Rendering Engine -Windowed Mode Support -VS Palettes Support -Pause Key -Improved Joystick Support -GUI bug fixes -GUI support for NES.new synchronism system: now the video is smooth even on ultra-fast machines .Now the GUI supports files with any extension . Now you can type "RockNESX game.05 .

RockNES X 2.0.for all the support and testing! Luiz .First release ---------------------------------------------------------------------------------------------------------10. KEEP THE DREAM ALIVE.0 . 2002 .General code optimization .for the artwork! everyone else .GUI bug fixes .that helped me developing this piece of software ---------------------------------------------------------------------------------------------------------KEEP PLAYING..Minor bug fixes Version 1. SPECIAL THANKS TO Fx3 .for all the emulation core! Roberto ...

Sign up to vote on this title
UsefulNot useful