Commit Graph

21 Commits

Author SHA1 Message Date
tomcw
d4839e298c Permit cards in any slot (except s0), and construct CardManager with all 8 slots empty 2025-11-22 16:47:57 +00:00
TomCh
1a68914a4a Fix all x64 warnings in the AppleWin proj (PR #1434)
NB. 10 warnings still in libyaml proj (but there's no upstream update - so will leave as-is).
2025-09-22 21:25:35 +01:00
Andrea
11fcaa63d1 Synch linux branch (PR #1432)
. Debug.cpp: fix compilation errors.
. Remove obsolete __attribute__((regparm(1))) & WATCOM.
. Support MINGW32.
. Replace sprintf with StrFormat().
---------
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2025-09-18 10:40:02 +01:00
Jamiras
cb1366f485 Check _WIN32 instead of _MSC_VER (PR #1346) 2024-12-24 12:06:37 +00:00
Andrea
35f176e4d8 Replace DWORD -> uint32_t. (PR #1350)
Some have been left where tightly coupled with the Win32 API.
2024-12-21 12:32:00 +00:00
TomCh
fd93396162 Uthernet I/II: Activate DEV SELECT I/O even if NIC interface is not valid (PR #1324) 2024-08-17 21:20:00 +01:00
tomcw
1127447a10 U1, U2: small refactor 2024-08-15 20:08:38 +01:00
tomcw
2e65426a11 Get U2 to emit similar warning to U1 when interface isn't valid. (#1321) 2024-08-15 18:11:56 +01:00
tomcw
6e8d79ddde Fix for both Uthernet cards not reading I/O $Csxx space as floating-bus. (#1321) 2024-08-15 17:36:32 +01:00
Andrea
ae7e5a63a9 More portable headers. (PR #1310) 2024-06-02 12:54:40 +01:00
Andrea
a85c9bfc07 Uthernet2: use fcntl for better compatibility with MacOS. (#1269) 2024-03-02 12:34:38 +00:00
Andrea
b3e617f1e5 Uthernet II: the real hardware only decodes A0 and A1, so we introduce a 0x03 mask. (PR #1115)
Fixes #1113
2022-06-17 21:27:52 +01:00
tomcw
961625721b U2: Improve comment (#1100) 2022-05-20 08:04:49 +01:00
Andrea
60cbbb40db Uthernet II: 2 fixes and minor changes (PR #1100)
* Enable virtual DNS by default.
* Improve handling of header size:
This fixes an issue in UDP, where it would not take the header size into account when deciding how much to read.
* IPRAW socket. Fix an issue where the header would include "our" IP Address.
The doc is not very clear 5.2.3: they say "destination". But for consistency with UDP (5.2.2) where it seems clear that this is the peer's ip, we replace with the "destination" of the socket, or the "source" of the packet.
* minor tweak: signal with SOCK_SYNSENT that a connection is being established.
* remove Socket::myErrno as it serves no purpose.
It is a duplicate of (sn_sr == W5100_SN_SR_SOCK_SYNSENT).
* add some logging when reading/writing on a closed socket.
2022-05-19 19:30:34 +01:00
Andrea
6a5ea92a4e Uthernet II: add virtual DNS feature (PR #1097)
Uthernet II: add extended feature to virtualise DNS requests.
. This allows pure TCP/UDP sockets to run *without* MACRAW requests (and so without libpcap).
. Raw sockets will not work.
. Add configuration for Virtual DNS.
libpcap: ensure all functions check if the library is loaded before using it.
Uthernet 1: do NOT overwrite tfe_cannot_use as it should only reflect the availability of npcap on *this* system.
Add Copyright notice, and mention Virtual DNS in html.
2022-05-08 16:26:01 +01:00
Andrea
500c2e50b6 Uthernet II: handle TCP connection failure. (PR #1070) 2022-03-22 19:39:49 +00:00
Andrea
cdd360bdfe Uthernet II: implement IPRAW sockets. (PR #1069) 2022-03-22 19:30:42 +00:00
Andrea
12d1a0e1fe Card: cleanup interface. (PR #1059)
1) Remove Init()
2) Call Reset() via CardManager
3) Call Destroy() via CardManager (only used by Disks/Harddisk) on WM_DESTROY

The only "real" changes are in CSuperSerialCard: ensure destructor cleans up and remove Destroy().
2022-03-11 22:17:03 +00:00
Andrea
bbe2a7f8ee Uthernet II card: support save/load state. (PR #1054)
NB. do not attempt to restore a UDP / TCP socket.
2022-03-07 21:08:31 +00:00
Kelvin Lee
80f3eaeb91 Various *Name() functions can simply return const std::string& (PR #1049) 2022-02-28 20:52:18 +00:00
Andrea
9f8c4d99af Add Uthernet II support and make Uthernet I a Card. (PR #1047)
. tfe.cpp renamed to Uthernet1.cpp.
. add class NetworkBackend: common to both U1 and U2 cards, and abstracts Windows/Linux backends.
. modernise error message if WPCAP.DLL is not installed.
2022-02-27 17:26:48 +00:00