From bd01f31bfc3f07a324ec94be1f1fdbae5be9f96b Mon Sep 17 00:00:00 2001 From: BullyWiiPlaza Date: Wed, 24 May 2017 18:44:16 +0200 Subject: [PATCH] Latest version release --- src/pygecko.c | 4 ++-- tcpgecko.elf | Bin 141612 -> 142780 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pygecko.c b/src/pygecko.c index eddfefe..aea241e 100644 --- a/src/pygecko.c +++ b/src/pygecko.c @@ -74,11 +74,11 @@ struct pygecko_bss_t { #define EWOULDBLOCK 6 #define DATA_BUFFER_SIZE 0x5000 #define WRITE_SCREEN_MESSAGE_BUFFER_SIZE 100 -#define SERVER_VERSION "05/04/2017" +#define SERVER_VERSION "05/24/2017" #define ONLY_ZEROS_READ 0xB0 #define NON_ZEROS_READ 0xBD -#define VERSION_HASH 0x3516D3B9 +#define VERSION_HASH 0x39C9444B #define ASSERT_MINIMUM_HOLDS(actual, minimum, variableName) \ if(actual < minimum) { \ diff --git a/tcpgecko.elf b/tcpgecko.elf index 89308fe716649aadc95e2b8446b1492641336f4f..26780d1305ca1dda743dadd92687d4cd4fb14789 100644 GIT binary patch delta 21140 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 delta 20198 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