Skip to content

Commit

Permalink
Release 060
Browse files Browse the repository at this point in the history
  • Loading branch information
andrew-hoffman committed Aug 29, 2015
1 parent 52f91c1 commit a4321cd
Show file tree
Hide file tree
Showing 6 changed files with 17 additions and 9 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,5 @@ nesdebug*.txt
proguard4.7
/HalfNES.app
/*.app
/battletoads double dragon.txt
/justbreedbug.txt
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,11 @@
halfnes
=======

[![Join the chat at https://gitter.im/andrew-hoffman/halfnes](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/andrew-hoffman/halfnes?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

An accurate NES/Famicom emulator

[![Join the chat at https://gitter.im/andrew-hoffman/halfnes](https://badges.gitter.im/Join%20Chat.svg)]
(https://gitter.im/andrew-hoffman/halfnes?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Current Features
----------------

Expand Down Expand Up @@ -65,14 +66,16 @@ development, almost all US released games will start, but certain games
still have graphics corruption or freezing problems. Please report any
issues you encounter with the emulator or with games on the Github Issues page
(https://github.com/andrew-hoffman/halfnes/issues).
PAL games are now supported as well but are likely to have more issues
PAL games are now supported as well but are likely to have more issues.
Please change the system type to PAL in preferences to run these.

Building instructions
---------------------

The project requires two libraries to build: JInput (gamepad support) and The Happy Java Library 1.3 (parallel for loops).
Sorry there's no decent build script included with this package, at this point you might as well just create a new Netbeans project, import all the src files, and add those two libraries in the project properties.
Sorry there's no decent build script included with the source, just the
Netbeans auto-generated one. You might want to create a new Netbeans project,
import all the src files, and add those two libraries in the project properties.

Do NOT ask me where to find ROM files of commercial games. Some public
domain homebrew ROMs are available at www.pdroms.de for testing
Expand Down
5 changes: 5 additions & 0 deletions changelog.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
HalfNES Version Notes:
060 (8/29/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
059 (7/28/2015)
-Fixed certain FDS NSFs that wanted to write to bankswitched areas
-Added PAL and Dendy (Hybrid PAL console that plays unmodified NTSC games) support
Expand Down
4 changes: 2 additions & 2 deletions src/com/grapeshot/halfnes/CPU.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ public final class CPU {
//NES 6502 is missing decimal mode, but most other 6502s have it
private boolean interruptDelay = false;
private final static String[] opcodes = opcodes();

//Battletoads Hack until I get around to making a truly cycle accurate CPU core.
//Delays the write of a STA, STX, or STY until the first cycle of the NEXT instruction
//which is enough to move it a few PPU clocks after the scroll is changed
Expand Down Expand Up @@ -136,7 +136,7 @@ public final void runcycle(final int scanline, final int pixel) {
//this doesn't look right any more
//who patched this in and when? (wasn't me, it was for some bug...)
}

if (dirtyBattletoadsHack && cycles == 1) {
ram.write(hackAddr, hackData);
dirtyBattletoadsHack = false;
Expand Down
2 changes: 1 addition & 1 deletion src/com/grapeshot/halfnes/NES.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public class NES {
private CPURAM cpuram;
private PPU ppu;
private ControllerInterface controller1, controller2;
final public static String VERSION = "059";
final public static String VERSION = "060";
public boolean runEmulation = false;
private boolean dontSleep = false;
public long frameStartTime, framecount, frameDoneTime;
Expand Down
2 changes: 0 additions & 2 deletions src/com/grapeshot/halfnes/mappers/MMC5Mapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -249,8 +249,6 @@ public final int cartRead(final int addr) {
if (!ppu.renderingOn() || ppu.scanline > 241) {
inFrame = false;
}
// by default has wram at 0x6000 and cartridge at 0x8000-0xfff
// but some mappers have different so override for those

if (addr >= 0x8000) {
//rom or maybe wram
Expand Down

0 comments on commit a4321cd

Please sign in to comment.