HalfNES Changelog

What's new in HalfNES 0.60

Aug 30, 2015
  • Fixed Battletoads and Battletoads: Double Dragon freezes on certain levels
  • Reduced jerkiness of scrolling in 50 fps games (not eliminated entirely unless your monitor is also set to 50 FPS)
  • Improved performance a bit, there was some slow cheat engine code constantly running

New in HalfNES 0.058 (Jul 10, 2015)

  • Added FDS sound chip support (NSFs only)
  • Made more scanline counters cycle accurate (everything except 4 multicart mappers)

New in HalfNES 0.057 (Jul 31, 2014)

  • PPU is now pixel accurate. Meaning that many glitchy games are now completely
  • fixed. However it also means that performance is worse.
  • MMC3 and MMC5 scanline counters have been rewritten to be more accurate.
  • Fixed games:
  • Marble Madness
  • Laser Invasion
  • Mickey's Adventures in Letterland
  • Rad Racer
  • Slalom
  • Tiny Toon Adventures (the status bar was off by one scan line before)
  • Mega Man 3 (displays same glitchy lines as real hardware)
  • Every Namco 163 game (scanline counter was broken)

New in HalfNES 0.056 (Jul 19, 2014)

  • Multithreaded NTSC filter for better performance
  • Rewrote CPU/PPU timing entirely (passes many timing tests that used to fail)
  • Fixed VRC7 feedback (Lagrange Point now sounds almost completely correct)
  • Fixed loading of large NSF files.
  • Many other minor fixes over the past year.

New in HalfNES 0.055 (Sep 9, 2013)

  • Added support for NSF music files. (All expansions are supported except FDS.)
  • Added mapper for Super Spike V'Ball/Nintendo World Cup combo cartridge
  • Changed sprite DMA timings (fixes Battle Chess again)

New in HalfNES 0.054 (Aug 15, 2013)

  • Changed NES color palette to match NTSC filter colors
  • Fixed VRC 7 Vibrato, no longer crackles
  • Improved speed of NTSC filter some more
  • General code cleanups (more are still necessary)
  • Provided a more helpful error on stdout when the jInput library is missing
  • removed the .sh package from the archive since it didn't work when I tested it

New in HalfNES 0.053 (Feb 11, 2013)

  • Added Game Genie and Action Replay cheat code support

New in HalfNES 0.052 (Oct 15, 2012)

  • Changed the APU timer code to run more efficiently (filtering now has very little performance penalty)
  • Fixed GI Joe, Burai Fighter
  • Fixed title screen of Brush Roller
  • Fixed intro of Lagrange Point

New in HalfNES 0.51 (Sep 19, 2012)

  • Added Mappers:
  • 15 (100 in 1 Contra Function 16)
  • 33 and 48 (Taito TC0190FMC)
  • 41 (Caltron/Myriad 6 in 1)
  • 58 (Game Star multicart)
  • 60 (reset based 4 in 1)
  • 61 (super 42-in 1)
  • 62 (700 in 1 Multicart)
  • 65 (Irem H-3001)
  • 67 (Sunsoft-3)
  • 72 (Jaleco JF-17)
  • 73 (VRC3)
  • 75 (VRC1)
  • 76 and 206 (Tengen MIMIC-1)
  • 79 (NINA-3)
  • 86 (Jaleco JF-13)
  • 88 (NAMCOT-3433/3443)
  • 92 (Jaleco JF-19)
  • 112 (Chinese MIMIC-1 clone)
  • 113 (NINA-6)
  • 154 (NAMCOT-3453)
  • 182 (Chinese MMC3 clone)
  • 201 (8-in-1, 21-in-1 multicarts)
  • 212 and 213 (9999999-in-1)
  • 214 (Super Gun 20-in-1)
  • 225 (58/64/72-in-1 multicarts)
  • 226 (20-1n-1)
  • 229 (31-in-1)
  • 231 (20 in 1 multicart)
  • 241 (Fan Kong Jing Ying)
  • 242 (Wai Xing Zhan Shi / Dragon Quest VIII board)
  • 244 (Decathlon)
  • 255 (110/115 in 1 multicarts)
  • Other Changes:
  • Changed decay after key off on VRC7 sound chip
  • Changed color settings on NTSC renderer and rewrote encoding portion for better speed (64 bit JVM also makes this faster) and no more horizontal bars.
  • Passes sprite overflow basics test
  • Fixed reset code to reset mapper before CPU
  • Rom loader handles games with unusual/incorrect headers more gracefully
  • APU square wave frequency is now correct (would go out of tune at higher frequencies before)
  • Full screen mode with maintain aspect ratio on now stretches to fill screen
  • Added .exe and .sh versions of HalfNES to the standard JAR file to work around systems where JAR files are difficult to make executable.

New in HalfNES 0.50 (Aug 10, 2012)

  • Added Mappers:
  • Mapper 10 (Fire Emblem, Famicom Wars)
  • Mapper 19 (Megami Tensei II, Rolling Thunder (J), etc.) with expansion sound
  • Mapper 34 (Impossible Mission II)
  • Mapper 38 (Crime Busters)
  • Mapper 64 (Klax, Rolling Thunder (U))
  • Mapper 70 (Kamen Rider Club)
  • Mapper 89 (Mito Koumon)
  • Mapper 93 (Fantasy Zone (J))
  • Mapper 94 (Senjou no Oukami)
  • Mapper 97 (Kaiketsu Yanchamaru)
  • Mapper 107 (Magic Dragon)
  • Mapper 140 (Bio Senshi Dan)
  • Mapper 152 (Arkanoid 2)
  • Mapper 180 (Crazy Climber)
  • Mapper 185 (Spy Vs Spy (J) but NOT Banana)
  • Mapper 200 (36-in-1 Multicart)
  • Mapper 203 (35-in-1 Multicart)
  • Mapper 240, 246 (More Chinese original games)
  • Fixed:
  • Fixed DMC timing (passes DMC basics test and makes Bee 52 work better)
  • CPU interrupt is delayed so CLI+SEI only causes 1 interrupt after SEI
  • fixes Break Time, Hebereke)
  • Fixed APU frame counter reset to within 1 CPU opcode of correct timing
  • Fixed APU sweep behavior when clocked then immediately reset
  • Super Mario Bros. sound effects, Driar wrong notes in music)
  • Updated VRC7 sound to use new patch set from nesdev,
  • changed the way modulator feedback works, increased envelope attack rate
  • Added CRC to options menu to make verifying dumps easier
  • Fixed Uchuusen - Cosmo Carrier mirroring
  • Fixed bug with file dialog where it wasn't clearing the old name when loading
  • a ROM by double clicking

New in HalfNES 0.49 (Jul 11, 2012)

  • CPU core is much improved. All undocumented opcodes should now be implemented and cycle timing is more correct.
  • Fixed Low G Man crashing after the first boss
  • APU is now synchronized exactly with CPU (lowers performance, but fixes Dreamworld Pogie)
  • Made DMC sample channel timing more accurate, which fixed Bee 52 and several DPCM letterbox demos and made Fire Hawk at least show the titlescreen/intro. (Still crashes in game.)
  • Made the audio high pass filter more aggressive to eliminate clipping and noise
  • Fixed VRC7 audio envelopes (Rate was right but notes couldn't be turned off while in the decay phase. Now that works.)
  • Fixed PPU OAM reading to pass oam_stress test and used blargg's NES power up
  • palette

New in HalfNES 0.48 (Jun 12, 2012)

  • You can now change all options without having to restart the emulator. Also
  • changed the set of values used for the VRC7 registers and did some code cleanups
  • in various places. Significant rewrite is needed to improve basic timing
  • accuracy some time soon.

New in HalfNES 0.46.1 (Apr 12, 2012)

  • VRC7 audio (Lagrange Point) sounds much closer to the real thing
  • Fixed several UI bugs:
  • menu bar is no longer visible in fullscreen on some systems
  • no longer possible to load a ROM or open the preferences window in
  • fullscreen as this could sometimes cause hangs
  • Full screen now defaults to maintain aspect ratio
  • (doesn't stretch and look terrible on widescreen displays)
  • Now handles mising JInput library more gracefully
  • NTSC filter is somewhat faster (still not really real time) and disables
  • dot crawl in Battletoads as it should.
  • Changed audio core so it shouldn't clip with sound filtering on any more
  • Found a solution to the packaging problem! Library folder is no longer necessary.

New in HalfNES 0.44 (Jan 19, 2012)

  • Added preliminary joystick support. To use this, the lib folder must be extracted in the same location as halfnes, and also the program must be run from the "run.bat" file. The first detected gamepad will be used as Controller 1, and the second will be Controller 2. Currently the buttons used are not configurable.
  • Also improved the NTSC filter, color is perfect now and it looks better than Blargg's.