From 1f0c994b46f2abfe77c49f6770f459cb9e8ab9d6 Mon Sep 17 00:00:00 2001
From: goyuken <goyuken@4bbf4f03-6f44-549e-7e59-35d4b0962838>
Date: Fri, 19 Jun 2015 21:08:08 +0000
Subject: [PATCH] some gambatte trunk stuff

---
 libgambatte/src/cpu.cpp    |  12 ++++++----
 libgambatte/src/memory.cpp |  47 ++++++++++++++++++++-----------------
 libgambatte/src/memory.h   |   4 ++--
 output/dll/libgambatte.dll | Bin 151040 -> 151040 bytes
 4 files changed, 34 insertions(+), 29 deletions(-)

diff --git a/libgambatte/src/cpu.cpp b/libgambatte/src/cpu.cpp
index 6a084c7ebb..92173d1f44 100644
--- a/libgambatte/src/cpu.cpp
+++ b/libgambatte/src/cpu.cpp
@@ -460,12 +460,13 @@ void CPU::loadState(const SaveState &state) {
 	PC_MOD((PC + jr_disp_var_tmp) & 0xFFFF); \
 } while (0)
 
-//CALLS, RESTARTS AND RETURNS:
-//call nn (24 cycles):
-//Push address of next instruction onto stack and then jump to address stored in next two bytes in memory:
+// CALLS, RESTARTS AND RETURNS:
+// call nn (24 cycles):
+// Jump to 16-bit immediate operand and push return address onto stack:
 #define call_nn() do { \
-	PUSH(((PC + 2) >> 8) & 0xFF, (PC + 2) & 0xFF); \
+	unsigned const npc = (PC + 2) & 0xFFFF; \
 	jp_nn(); \
+	PUSH(npc >> 8, npc & 0xFF); \
 } while (0)
 
 //rst n (16 Cycles):
@@ -487,7 +488,8 @@ void CPU::loadState(const SaveState &state) {
 
 void CPU::process(const unsigned long cycles) {
 	memory.setEndtime(cycleCounter_, cycles);
-	
+	memory.updateInput();
+
 	//unsigned char A = A_;
 	unsigned long cycleCounter = cycleCounter_;
 	
diff --git a/libgambatte/src/memory.cpp b/libgambatte/src/memory.cpp
index 848255d25a..f1881eccb2 100644
--- a/libgambatte/src/memory.cpp
+++ b/libgambatte/src/memory.cpp
@@ -291,7 +291,7 @@ unsigned long Memory::stop(unsigned long cycleCounter) {
 		sound.generate_samples(cycleCounter, isDoubleSpeed());
 		
 		display.speedChange(cycleCounter);
-		ioamhram[0x14D] = ~ioamhram[0x14D] & 0x80;
+		ioamhram[0x14D] ^= 0x81;
 
 		intreq.setEventTime<BLIT>((ioamhram[0x140] & 0x80) ? display.nextMode1IrqTime() : cycleCounter + (70224 << isDoubleSpeed()));
 		
@@ -355,22 +355,22 @@ unsigned long Memory::resetCounters(unsigned long cycleCounter) {
 }
 
 void Memory::updateInput() {
-	unsigned button = 0xFF;
-	unsigned dpad = 0xFF;
-
-	if (getInput) {
-		const unsigned is = (*getInput)();
-		button ^= is      & 0x0F;
-		dpad   ^= is >> 4 & 0x0F;
-	}
-
-	ioamhram[0x100] |= 0xF;
-
-	if (!(ioamhram[0x100] & 0x10))
-		ioamhram[0x100] &= dpad;
-
-	if (!(ioamhram[0x100] & 0x20))
-		ioamhram[0x100] &= button;
+	unsigned state = 0xF;
+
+	if ((ioamhram[0x100] & 0x30) != 0x30 && getInput) {
+		unsigned input = (*getInput)();
+		unsigned dpad_state = ~input >> 4;
+		unsigned button_state = ~input;
+		if (!(ioamhram[0x100] & 0x10))
+			state &= dpad_state;
+		if (!(ioamhram[0x100] & 0x20))
+			state &= button_state;
+	}
+
+	if (state != 0xF && (ioamhram[0x100] & 0xF) == 0xF)
+		intreq.flagIrq(0x10);
+
+	ioamhram[0x100] = (ioamhram[0x100] & -0x10u) | state;
 }
 
 void Memory::updateOamDma(const unsigned long cycleCounter) {
@@ -594,9 +594,12 @@ void Memory::nontrivial_ff_write(const unsigned P, unsigned data, const unsigned
 		updateOamDma(cycleCounter);
 
 	switch (P & 0xFF) {
-	case 0x00:
-		data = (ioamhram[0x100] & 0xCF) | (data & 0xF0);
-		break;
+	case 0x00:
+		if ((data ^ ioamhram[0x100]) & 0x30) {
+			ioamhram[0x100] = (ioamhram[0x100] & ~0x30u) | (data & 0x30);
+			updateInput();
+		}
+		return;
 	case 0x01:
 		updateSerial(cycleCounter);
 		break;
@@ -856,8 +859,8 @@ void Memory::nontrivial_ff_write(const unsigned P, unsigned data, const unsigned
 		break;
 
 	case 0x4D:
-		ioamhram[0x14D] |= data & 0x01;
-		return;
+		if (isCgb())
+			ioamhram[0x14D] = (ioamhram[0x14D] & ~1u) | (data & 1);		return;
 	case 0x4F:
 		if (isCgb()) {
 			cart.setVrambank(data & 1);
diff --git a/libgambatte/src/memory.h b/libgambatte/src/memory.h
index 7f5c82863a..70f4bafac3 100644
--- a/libgambatte/src/memory.h
+++ b/libgambatte/src/memory.h
@@ -57,7 +57,6 @@ class Memory {
 	bool LINKCABLE;
 	bool linkClockTrigger;
 
-	void updateInput();
 	void decEventCycles(MemEventId eventId, unsigned long dec);
 
 	void oamDmaInitSetup();
@@ -91,7 +90,8 @@ public:
 	void loadSavedata(const char *data) { cart.loadSavedata(data); }
 	int saveSavedataLength() {return cart.saveSavedataLength(); }
 	void saveSavedata(char *dest) { cart.saveSavedata(dest); }
-	
+	void updateInput();
+
 	bool getMemoryArea(int which, unsigned char **data, int *length); // { return cart.getMemoryArea(which, data, length); }
 
 	unsigned long stop(unsigned long cycleCounter);
diff --git a/output/dll/libgambatte.dll b/output/dll/libgambatte.dll
index 9d315b33e9ab7f43ccecafe9faa5f9d5d60f43e6..752768150d2978fded27eede6999b17777410e46 100644
GIT binary patch
delta 33323
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
JQpDvE{|{a+YRmut

delta 33225
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
b>bU8+<EWlk2gdvk=FCk^78galriu7}o~<(|