From 70140e1090ae6a4979ef53933b0d591a024c030c Mon Sep 17 00:00:00 2001 From: grinvader <> Date: Tue, 1 Feb 2005 18:12:38 +0000 Subject: [PATCH] Restored pushes, hopefully fix netplay. --- zsnes/src/linux/sdlintrf.asm | 6 ++++++ zsnes/src/win/winintrf.asm | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/zsnes/src/linux/sdlintrf.asm b/zsnes/src/linux/sdlintrf.asm index 6ca64348..31f738da 100644 --- a/zsnes/src/linux/sdlintrf.asm +++ b/zsnes/src/linux/sdlintrf.asm @@ -1609,6 +1609,8 @@ NEWSYM TCPIPSendPacket pushad ; Send PacketSendArray with size of PacketSendSize ; SendData(int [PacketSendSize],char *PacketSendArray) + push eax ; required pushes to get correct stack + push eax call SendDataNop or eax,eax jnz .failed @@ -1629,6 +1631,8 @@ NEWSYM TCPIPSendPacketUDP pushad ; Send PacketSendArray with size of PacketSendSize ; SendData(int [PacketSendSize],char *PacketSendArray) + push eax ; required pushes to get correct stack + push eax call SendDataUDPNop or eax,eax jnz .failed @@ -1647,6 +1651,8 @@ NEWSYM TCPIPRecvPacket pushad ; Store packet to PacketRecvArray, size at PacketRecvSize ; int GetData(int 2048,char *PacketRecvArray) + push eax ; required pushes to get correct stack + push eax call GetDataNop cmp eax,-1 je .failed diff --git a/zsnes/src/win/winintrf.asm b/zsnes/src/win/winintrf.asm index 240f6a41..ae95a02a 100644 --- a/zsnes/src/win/winintrf.asm +++ b/zsnes/src/win/winintrf.asm @@ -1913,6 +1913,8 @@ NEWSYM TCPIPSendPacket pushad ; Send PacketSendArray with size of PacketSendSize ; SendData(int [PacketSendSize],char *PacketSendArray) + push eax ; required pushes to get correct stack + push eax call SendDataNop or eax,eax jnz .failed @@ -1933,6 +1935,8 @@ NEWSYM TCPIPSendPacketUDP pushad ; Send PacketSendArray with size of PacketSendSize ; SendData(int [PacketSendSize],char *PacketSendArray) + push eax ; required pushes to get correct stack + push eax call SendDataUDPNop or eax,eax jnz .failed @@ -1951,6 +1955,8 @@ NEWSYM TCPIPRecvPacket pushad ; Store packet to PacketRecvArray, size at PacketRecvSize ; int GetData(int 2048,char *PacketRecvArray) + push eax ; required pushes to get correct stack + push eax call GetDataNop cmp eax,-1 je .failed