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

69. Super2xSai. cable or LAN connection ---------------------------------------------------------------------------------------------------------4.Scanlines support.72.66.184.Full Screen and Windowed modes .Stretched video mode.34.117.24.94. These extra features are also provided: NES Movies (record/play). Game Genie codes The X features: . Color emphasis and monochrome mode.42.231.25. triangle. .246 and 255.23.Command line support .17.90.234.19.110.Netplay support (TCP/IP.189.70. NES I/O.9.100. 226.rom' required. .8. VRCVI sound hardware emulation (used by Akumajou Densetsu/Madar a).xDSL.4.225.92.79.67. serial.Screenshot support (video buffer and NES buffer modes).11.101.44.6. .160.16. This is t he Windows version for the original RockNES developed for DOS (by fx3). Sound emulation of all 5 channels: pulses.91. 2xSai video filtering.240.229.118. including remote savestate load ing. .227.187.SuperEAGLE.5.33.119.1.18.73.151.20. 88.Famicom DiskSystem.40.113.232. IPX.21. .230. .3. WorkRAM (battery). modem).68.235.85. NESticle saved state loading (partially supported).75. Most of these 85 mappers have full support.83.43.Video at any resolution/color depth supported by the videocard . 32. .Netplay recommended requirements: .41. Accurate emulation of PPU I/O (pass ok in the test program).VS Unisystem arcade machines (missing linked-system) in iNES format. Save states.180.13. Video Palette.Joystick support. The following extra hardware is also emulated: .78.26.99.256x224 alternate video mode. ROCKNES X DESCRIPTION/FEATURES This software is a Nintendo Entertainment System 8-bit (NES) emulator.2.228.10. emulated as mapper #20 (BIOS 'disksys. noise and PCM.Full 3D Hardware support (faster) .243.15.71. must to be in the same directory of the RockNESX executable).233.7. .64. very close to real NES. Accurate emulation of sprite #0 hits.76. . NES 2C02 PPU emulation with scanline gfx engine.Konami's jap. .Mappers: 0.57. What is emulated: NES 2A03 CPU (by Metthey Conte).97.65.22.

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful