Commit Graph

1243 Commits

Author SHA1 Message Date
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
tomcw
ccb4582bf9 Debugger: fixed warning (and a typo) 2022-05-01 15:15:09 +01:00
Kelvin Lee
4063611e71
Debugger: replace sprintf() part 7 final - Debug (PR #1093)
- Add ProfileLine_t to take care of the profile line buffer
- Simplify _SearchMemoryDisplay() without using StringCat()
- Simplify CmdOutputPrint() significantly
2022-05-01 15:01:33 +01:00
Kelvin Lee
47ba87a015
Debugger: replace sprintf() part 6 - Debugger_Disassembler (PR #1092)
- Improve FormatCharCopy() to not buffer overflow
- Improve FormatOpcodeBytes() to not buffer overflow
- Improve FormatNopcodeBytes() to not buffer overflow
- Change FormatDisassemblyLine() to return std::string
2022-05-01 14:24:35 +01:00
Kelvin Lee
b9308b36ea
Debugger: replace sprintf() part 5 - Debugger_DisassemblerData (PR #1091)
- Change _GetAutoSymbolName() to return std::string
2022-05-01 14:08:45 +01:00
Kelvin Lee
0ab10905e4
Fix a couple of warnings from PR#1090 (PR #1094)
* Fix a couple of warnings from PR#1090
* Fix as suggested and further improvement
2022-04-30 10:53:14 +01:00
tomcw
a5c41dd8ca Uthernet: check pcap_dispatch() for -ve (error) result too (#1095) 2022-04-29 21:03:25 +01:00
tomcw
93ea5b3e60 WOZ: Improve reading write-protect (#1078) and remove 'm_resetSequencer' var 2022-04-23 18:13:15 +01:00
Michael "Code Poet" Pohoreski
777d5f6807
Merge pull request #1090 from kiyolee/replace-sprintf-part-4
Debugger: replace sprintf() part 4 - Debugger_Display
2022-04-22 08:51:14 -07:00
Michael "Code Poet" Pohoreski
d4476ac4e7
Merge pull request #1089 from kiyolee/replace-sprintf-part-3
Debugger: replace sprintf() part 3 - Debugger_Symbols
2022-04-22 08:50:39 -07:00
Kelvin Lee
d0360937c1 Fix per review 2022-04-21 00:40:46 +10:00
Kelvin Lee
d490b794e9 Fix per review 2022-04-21 00:21:30 +10:00
tomcw
cb37dd300b WOZ: Fix for reading write-protect from data register (#1078) 2022-04-18 21:13:41 +01:00
Kelvin Lee
6a342c27ce Debugger: replace sprintf() part 4 - Debugger_Display
- Change ColorizeSpecialChar() to return std::string
2022-04-18 08:46:33 +10:00
Kelvin Lee
d83dae3b29 Debugger: replace sprintf() part 3 - Debugger_Symbols
- Change _CmdSymbolsInfoHeader() to return std::string
2022-04-18 08:46:15 +10:00
tomcw
08c730c647 Cmd line: add -wav-speaker <file> & -wav-mockingboard <file> 2022-04-17 16:23:51 +01:00
Kelvin Lee
494aaa04c0
Debugger: replace sprintf() part 2 (PR #1085) 2022-04-17 11:40:21 +01:00
Kelvin Lee
a5e8ee31a3
Debugger: Improve some for-loops definitions (PR #1084) 2022-04-17 11:32:03 +01:00
Kelvin Lee
f948a9491a
Debugger: Remove unnecessary alias pointer (PR #1083) 2022-04-06 20:37:24 +01:00
Kelvin Lee
6e003fd49f
Debugger: replace prefix 'str' with 's' (PR #1082) 2022-04-06 20:36:24 +01:00
tomcw
5b50d784d7 Fix for previous commit 05a17d9 - pass a c-string 2022-04-03 19:31:42 +01:00
tomcw
05a17d9a69 DiskII: fix build error when LOG_DISK_ENABLED = 1 2022-04-03 19:02:59 +01:00
tomcw
e97be1b836 Debugger: fix console output for 'disk info' cmd
. fix to ConsoleBufferPush() which was skipping a char when the line needed to output to a 2nd line
2022-04-03 18:49:36 +01:00
Kelvin Lee
1bcf371309
Debugger: Format changes only (PR #1076) 2022-04-03 18:15:22 +01:00
Kelvin Lee
01b9061482
Debugger: Rename 'pszCategory' to 'pCategory' (PR #1057) 2022-03-29 19:53:51 +01:00
Kelvin Lee
0f9e64b298
Debugger: Format changes only - consistent space after keywords (PR: #1072) 2022-03-27 20:48:26 +01:00
Kelvin Lee
0f7e240841
Debugger: Fix to use logical "&&" for boolean variables (PR #1073) 2022-03-27 20:44:50 +01:00
Kelvin Lee
eac88a340d
Fix spelling: "seperator" -> "separator" (PR #1071) 2022-03-25 20:11:33 +00: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
Kelvin Lee
2d4f60452f
Add ByteToHexStr() and WordToHexStr() (PR #1064)
- Simplify common StrFormat(), especially in Debugger (changes upcoming)
- Add helpers StrAppendByteAsHex() and StrAppendWordAsHex()
- Add helpers StrBufferAppendByteAsHex() and StrBufferAppendWordAsHex() for plain string buffer
2022-03-22 19:19:50 +00:00
TomCh
b4b29e1ef5
Refactor ParallelPrinter.cpp/h as a C++ class (PR #1067)
Add command line:  -s1 parallel.
NB. Only a single Parallel Printer card is supported, and currently it's restricted to slot 1.
2022-03-18 22:04:34 +00:00
tomcw
cbc0c2cf87 Save-state: wrap string in quotes when it contains comment char '#'. Fixes #1066 2022-03-17 20:14:52 +00:00
Andrea
a4341aa808
tfesupp: remove all manual string manipulations - just use std::string. (PR #1065) 2022-03-14 21:12:52 +00:00
tomcw
00668c2668 Debugger "help <cmd>" : fix formatting.
And specifically for "help brk" - split help across an extra line for better readability
2022-03-14 20:50:21 +00:00
tomcw
169f0b29e8 Slot 3: make the default (ie. vanilla install of AppleWin) have an empty slot 3.
. Previously it would default to Uthernet, but there are now other slot 3 card options.
2022-03-13 17:19:21 +00:00
Kelvin Lee
e38e48e3a6
Debugger: replace sprintf() part 1 (PR #1060)
- Add MemoryTextFile_t::PushLineFormat()
- Replace some sprintf() with PushLineFormat()
2022-03-13 16:37:25 +00:00
tomcw
35ec3fcc7f Fix crash when in Config GUI -> Disk:
. eg. add DiskII in slot-5, cancel, then access $C0Dx
Change IsCardInSlot() to use CardMgr().QuerySlot()
2022-03-13 16:12:01 +00:00
Andrea
231e6c6d64
Cards: remove special call to InitializeIO() for Disk and Harddisk. (PR #1061) 2022-03-13 15:45:43 +00:00
Kelvin Lee
be846efc83
Use clear() instread of erase(begin(), end()). (PR #1053) 2022-03-12 11:19:34 +00:00
tomcw
51149083e6 Add log msg for power-cycle, and improve debug-check for U1 $Csnn I/O access. 2022-03-12 10:16:38 +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
tomcw
648f832647 Debugger: minor stop-reason refactor 2022-03-02 21:25:04 +00:00
Kelvin Lee
dfb8802763
Replace sprintf() with StrFormat() (PR #1048) 2022-03-02 21:10:41 +00:00
Kelvin Lee
80f3eaeb91
Various *Name() functions can simply return const std::string& (PR #1049) 2022-02-28 20:52:18 +00:00
tomcw
d2004553f1 Remove old tfe.cpp 2022-02-27 18:06:15 +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
tomcw
514d2adb79 6522: Fix IFR.T2 when counter.b15=1 2022-02-26 21:10:42 +00:00
tomcw
c277c5152d Fix a few medium Coverity defects:
1514566, 1063811
2022-02-26 20:23:00 +00:00
tomcw
707993b686 Fix LogOutput() to call StrFormatV() 2022-02-26 18:39:39 +00:00
Kelvin Lee
253a59fde6
Replace sprintf_s() and wsprintf() with StrFormat(). (PR #1041)
And these Debugger related:
. Improve FormatAddress() and GetSymbol().
. GetSymbol(), FindSymbolFromAddress(), FormatAddress() are changed to use std::string instead.
. Remove static variable (not nice) in FormatAddress().
. GetSymbol() returns std::string reference instead of pointer.
2022-02-26 17:54:06 +00:00
Andrea
9ad6b11cf9
Fix some format errors. (PR #1042) 2022-02-26 17:15:09 +00:00
Kelvin Lee
5a5d0e2df4
Debugger: Simplify console print (PR #1038)
. Simplify console display functions using StrFormat()
. Update TestDebugger that needs StrFormat() now
2022-02-17 22:12:04 +00:00
tomcw
43b9df253a Fix build errors from PR #1039 2022-02-16 20:14:40 +00:00
Kelvin Lee
7ae8907674
Remove unnecessary static std::string variables (PR #1039) 2022-02-16 20:09:10 +00:00
sh95014
8cb3d4c88c
Make DiskGetFullPathName() public. (PR #1035)
Reasons:
. a macOS port needs it for the disk image browser feature.
. for consistency with "class HarddiskInterfaceCard".
2022-02-15 19:02:03 +00:00
Kelvin Lee
1a4e933778
Replace StringCbPrintf() with StrFormat() (PR #1032) 2022-02-15 18:48:20 +00:00
Andrea
48dd638d33
Synchronize Linux build. (PR #1037)
. remove OutputDebugStringA()
. push changes to StdAfx.h
. mention g_strSaveStatePathname in the error message for loading save-state
2022-02-14 20:37:18 +00:00
Kelvin Lee
9a3832084a
Simplify the common combination of sprintf() and OutputDebugString() (PR #1031)
- Update LogOutput() and LogFileOutput().
- Add StrFormat() to produce std::string out of snprintf() & add StrFormat.cpp to projects.
- Add PTRDIFF_T_FMT in parallel to SIZE_T_FMT to StdAfx.h, for completeness.
- In Log.cpp, changed to get timestamp using posix functions.
- Removed TCHAR usage throughout - simply use char.
2022-02-13 21:37:05 +00:00
tomcw
83e56924f7 WM_CREATE: remove CpuCreateCriticalSection(), since done in SY6522.Reset() 2022-02-13 12:37:33 +00:00
tomcw
b519031de4 WM_CREATE: call CpuCreateCriticalSection() instead of CpuInitialize() 2022-02-12 19:11:34 +00:00
tomcw
3fe06faf65 MB/6522: remove the legacy g_nMBTimerDevice variable.
Fix ASSERT from previous commit as SY6522.Reset() needs CriticalSection.
2022-02-12 18:42:58 +00:00
Andrea
8bbb85b1e8
SY6522: initialise device. (PR #1036) 2022-02-12 17:29:49 +00:00
sh95014
9459ec261a
Writes to Printer Interface card strobe should not be interpreted as a data byte (#1017 PR #1027) 2022-02-11 20:57:09 +00:00
Kelvin Lee
ad73f3ec37
A couple of smallish fixes (PR #1029)
. Fix VS2008 build: int8_t is not defined
. Fix VC compile warning C4800: forcing int to bool
2022-02-05 22:02:26 +00:00
TomCh
f7c6ef397c
Split 6522 out of MB code and into own class (PR #1028)
NB. Update CpuInitialize() & CriticalSection creation:
. call CpuInitialize() on WM_CREATE to create CriticalSection
. needed as MB_Initialize() needs CriticalSection
2022-02-05 18:48:36 +00:00
tomcw
53ab72ce13 Card.cpp: add newline at EOF 2022-01-30 21:37:40 +00:00
Andrea
7ab65492c6
Load save-state for Cards: improve error messages. (#1025)
. better error message for (unlikely) slot mismatch.
. better error message if load state version is invalid.
2022-01-30 21:25:40 +00:00
tomcw
24378313c3 WOZ-related changes:
. Significant bit-cells after a gap between latch access upped from 50 to 100 (#1020)
. Minor track sync mod: Update bitStream position for current track before re-calc'ing position for new track (#1022)
. Minor: for DiskII I/O regs $A/B (Select Drive 1/2) update the isWOZ variable to reflect new image-type
2022-01-29 21:27:03 +00:00
tomcw
af814347f0 Support AN3 for IIe (#1018)
(Fix IOUDIS for IIc - $C07E/F was backwards)
2022-01-15 18:01:41 +00:00
Andrea
5fbd8339c1
Screenshot: reset file pointer to the end. (PR #1016) 2022-01-07 21:06:24 +00:00
michaelangel007
aa4af5e9d5 Debugger: Fix DF E937 not checking for 0.0 correctly 2022-01-06 10:26:30 -08:00
michaelangel007
65e4859b01 Debugger: Cleanup DB DB2 DB4 DB8 DW DW2 DW4 DF DS 2022-01-06 10:18:38 -08:00
michaelangel007
ae214a1b19 Debugger: Cleanup: Add note about magic number 200 2022-01-06 10:12:37 -08:00
michaelangel007
8667c0eb32 Debugger: Cleanup: Add note about DISASM ID 2022-01-06 10:10:59 -08:00
michaelangel007
182e48e82d Debugger: Add: First pass of DF 2022-01-06 10:10:09 -08:00
michaelangel007
32ee96fb8b Debugger: Cleanup FormatNopcodeBytes() 2022-01-06 08:24:55 -08:00
michaelangel007
7c4855e631 Debugger: Cleanup DISASM_DISPLAY_ enums 2022-01-05 15:42:34 -08:00
michaelangel007
ca1bea3b97 Debugger: Add comment about DISK command 2022-01-05 15:41:47 -08:00
michaelangel007
545c79f132 Debugger: Cleanup: Nopcode_e 2022-01-05 08:55:17 -08:00
michaelangel007
7853c1cfcc Debugger: Cleanup 2022-01-05 08:54:54 -08:00
michaelangel007
8d864c2ab6 Cleanup: getVideoScannerAddressTXT() and getVideoScannerAddressHGR() to make it easier to debug 2022-01-04 23:37:38 -08:00
michaelangel007
98a4481c7d Debugger: 2.9.1.13 Added: CD now detects .. to change to the previous directory and chops the trailing sub-directory from the current path. 2022-01-04 23:37:06 -08:00
michaelangel007
e91c5c0494 Merged 2022-01-04 21:41:08 -08:00
michaelangel007
2a5e156f5e Debugger: 2.9.1.12 Added: New commands HGR0, HGR3, HGR4, HGR5 to see pages /usr/bin/bash0, 0, 0, respectively. 2022-01-04 21:40:23 -08:00
tomcw
e14339e282 Registry: fix support for legacy 'Harddisk Enable' key (#1015) 2022-01-04 20:19:21 +00:00
michaelangel007
1613671c11 Debugger: Add note for 2.9.1.11 2022-01-04 11:29:18 -08:00
michaelangel007
5e70f7949c Debugger: 2.9.1.11 Fixed: Right justify signed decimal values. 2022-01-04 11:21:42 -08:00
michaelangel007
f3c0e151ab Debugger: 2.9.1.10 Fixed: Immedate #80 was not showing -128 for the signed decimal value. 2022-01-04 11:20:54 -08:00
michaelangel007
6b11e24a28 Debugger: 2.9.1.9 Fixed: Immediate #0 was showing '#' prefix but not showing zero for the signed decimal value. Changed to show the signed decimal value only if non zero. 2022-01-04 11:20:08 -08:00
michaelangel007
61d6ef58ee Debugger: Cleanup old cruft 2022-01-04 11:17:14 -08:00
michaelangel007
18b4581099 Debugger: 2.9.1.8 Changed: Disassembly window now lists symbol labels and symbol target address from User2 in orange. 2022-01-04 09:28:33 -08:00
michaelangel007
17686df3df Debugger: 2.9.1.7 Added: Extended SYM command to auto-generate symbol names when reverse engineering. NOTE: These symbols will be placed in User2. 2022-01-04 09:27:10 -08:00
michaelangel007
1f5ca5d7e7 Bugfix: Is user requested which symbol table but symbol not found, mark as not in any 2022-01-04 09:24:52 -08:00
michaelangel007
ba9388d1d8 Debugger: 2.9.1.6 Added: Branch instructions now show target address 2022-01-03 22:48:12 -08:00
michaelangel007
b3dc408195 Debugger: Cleanup 2022-01-03 22:47:25 -08:00
michaelangel007
65ab105d76 Debugger: 2.9.1.5 Added: Disassembly window now shows signed decimal values for immediate values. 2022-01-03 22:18:12 -08:00