# HG changeset patch # User Michael Pavone # Date 1522124740 25200 # Node ID 1a09422b87a5431c567e22b24e18352e164a4afe # Parent 3faf917bab56ec28e5f28d2cdf58be5d9d4d0c16 Get Windows build working again. MegaWiFi code probably needs more work before it will actually work on Windows, but at least it doesn't break the build now diff -r 3faf917bab56 -r 1a09422b87a5 Makefile --- a/Makefile Mon Mar 26 09:49:03 2018 -0700 +++ b/Makefile Mon Mar 26 21:25:40 2018 -0700 @@ -17,6 +17,7 @@ MEM:=mem_win.o TERMINAL:=terminal_win.o FONT:=nuklear_ui/font_win.o +NET:=net_win.o EXE:=.exe CC:=i686-w64-mingw32-gcc-win32 CFLAGS:=-std=gnu99 -Wreturn-type -Werror=return-type -Werror=implicit-function-declaration -I"$(SDL2_PREFIX)/include/SDL2" -I"$(GLEW_PREFIX)/include" -DGLEW_STATIC @@ -27,6 +28,7 @@ MEM:=mem.o TERMINAL:=terminal.o +NET:=net.o EXE:= ifeq ($(OS),Darwin) @@ -146,7 +148,7 @@ endif MAINOBJS=blastem.o system.o genesis.o debug.o gdb_remote.o vdp.o $(RENDEROBJS) io.o romdb.o hash.o menu.o xband.o \ - realtec.o i2c.o nor.o sega_mapper.o multi_game.o megawifi.o net.o serialize.o $(TERMINAL) $(CONFIGOBJS) gst.o \ + realtec.o i2c.o nor.o sega_mapper.o multi_game.o megawifi.o $(NET) serialize.o $(TERMINAL) $(CONFIGOBJS) gst.o \ $(M68KOBJS) $(TRANSOBJS) $(AUDIOOBJS) saves.o zip.o ifdef NONUKLEAR diff -r 3faf917bab56 -r 1a09422b87a5 megawifi.c --- a/megawifi.c Mon Mar 26 09:49:03 2018 -0700 +++ b/megawifi.c Mon Mar 26 21:25:40 2018 -0700 @@ -2,9 +2,15 @@ #include #include #include +#ifdef _WIN32 +#define WINVER 0x501 +#include +#include +#else #include #include #include +#endif #include #include #include "genesis.h" @@ -125,7 +131,10 @@ int res = accept(mw->sock_fds[channel], NULL, NULL); if (res >= 0) { close(mw->sock_fds[channel]); +#ifndef _WIN32 +//FIXME: Set nonblocking on Windows too fcntl(res, F_SETFL, O_NONBLOCK); +#endif mw->sock_fds[channel] = res; mw->channel_state[channel] = 2; mw->channel_flags |= 1 << (channel + 1); @@ -284,7 +293,10 @@ } else { mw->channel_flags |= 1 << (channel + 1); mw->channel_state[channel] = 1; +#ifndef _WIN32 +//FIXME: Set nonblocking on Windows too fcntl(mw->sock_fds[channel], F_SETFL, O_NONBLOCK); +#endif } end_reply(mw); break; diff -r 3faf917bab56 -r 1a09422b87a5 net_win.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/net_win.c Mon Mar 26 21:25:40 2018 -0700 @@ -0,0 +1,14 @@ +#include "net.h" + +uint8_t get_host_address(iface_info *out) +{ + out->ip[0] = 127; + out->ip[1] = 0; + out->ip[2] = 0; + out->ip[3] = 1; + out->net_mask[0] = 255; + out->net_mask[0] = 255; + out->net_mask[0] = 255; + out->net_mask[0] = 0; + return 1; +}