Kelvin Sherlock
67b187e70b
prefer _WIN32 over WIN32.
2019-02-23 17:33:38 -05:00
Kelvin Sherlock
69bc724ae8
2 controls Ds needed to exit.
2019-02-23 17:32:00 -05:00
Kelvin Sherlock
52d2c5f509
win32 get_resource_path
2019-02-23 17:31:31 -05:00
ksherlock
97e6f17a31
fixup _WIN32/__CYGWIN__/WIN_SDL #defines
2019-02-21 13:56:57 -05:00
ksherlock
88d3cb9dc7
remove CYGWIN/WIN_SDL defines.
2019-02-21 13:45:35 -05:00
Kelvin Sherlock
b2d6adce69
win32 libraries needed whether GDI or SDL.
2019-02-21 00:34:26 -05:00
Kelvin Sherlock
d12ce862fc
win32 sdl build needs scc_windriver.
2019-02-21 00:08:52 -05:00
Kelvin Sherlock
56528ab928
apparently, -DWIN_SOUND was to workaround cygwin not defining _WIN32. But we explicitely -D_WIN32. SMH.
...
Also, re-order a couple #if trees so SDL takes precedence over WIN32, etc.
2019-02-20 23:47:42 -05:00
ksherlock
adeb2006f7
__USE_W32_SOCKETS moved to parent CMakeLists.txt
2019-02-20 13:48:39 -05:00
ksherlock
516d0e1439
-D__USE_W32_SOCKETS
2019-02-20 13:28:40 -05:00
Kelvin Sherlock
bef27e165e
defer to CMake's optimization level. set to release by default.
2019-02-20 00:09:53 -05:00
Kelvin Sherlock
82e976d8e2
add back missing header.
2019-02-20 00:09:25 -05:00
Kelvin Sherlock
3ce34e0e27
lookup addresses for abslong and pc.
2019-02-20 00:09:05 -05:00
Kelvin Sherlock
be9724acfc
minor tweaks for nifty list format.
2019-02-20 00:08:21 -05:00
Kelvin Sherlock
367d337674
2 unhandled ^Cs will abort
2019-02-20 00:07:59 -05:00
Kelvin Sherlock
6dd598be0c
disassemble prodos mli calls.
2019-02-19 22:18:22 -05:00
Kelvin Sherlock
62dcf4f9d2
clean up socket stuff a little bit to compile better with msys2
2019-02-19 21:57:52 -05:00
Kelvin Sherlock
9f3c0feb39
load tools and gs/os calls from NList.Data
2019-02-19 21:49:35 -05:00
Kelvin Sherlock
58351d1db7
win32 missing strndup
2019-02-19 19:48:39 -05:00
Kelvin Sherlock
22e488df30
GCC's documentation states that __LP64__ is defined if sizeof(void *) == 8 and sizeof(int) == 4. Well, under mingw64 that doesn't seem to be true. And it causes lots of warnings.
...
Anyhow, as of c99, stdint.h defines a type specifically for casting pointers to integers. It also defines fixed size types so no need to guess or sniff compilers.
2019-02-18 12:38:15 -05:00
ksherlock
b9e36df2bb
mingw/win32 lacks strndup.
2019-02-18 11:24:08 -05:00
ksherlock
8584df91f5
win32 compiler fixes.
2019-02-18 11:08:57 -05:00
ksherlock
0e9cf9879b
use uintptr_t to cast ptr to int.
2019-02-18 10:56:43 -05:00
Kelvin Sherlock
fed51ab444
HISTORY_NO_DUP_FLAG currently missing from mingw wincon.h
2019-02-17 23:42:51 -05:00
Kelvin Sherlock
31ab8d4c6c
win32 typo.
2019-02-17 23:34:10 -05:00
Kelvin Sherlock
e9e9fcfd59
host mli - opening/closing a directory would close fd 0 (aka stdin).
2019-02-17 22:26:52 -05:00
Kelvin Sherlock
682dc0c562
host mli - opening/closing a directory would close fd 0 (aka stdin).
2019-02-17 22:23:22 -05:00
Kelvin Sherlock
b6406159bd
unix host mli bug fixes
...
1. file/directory storage types were reversed
2. month was off-by-one.
2019-02-17 18:47:32 -05:00
Kelvin Sherlock
78591a37d0
unix host mli bug fixes
...
1. file/directory storage types were reversed
2. month was off-by-one.
2019-02-17 18:46:19 -05:00
Kelvin Sherlock
216d1f1b35
push 24 mmu check was only checking 2 bytes. :/
2019-02-17 16:40:34 -05:00
Kelvin Sherlock
4e956a4e06
simplify mp check logic.
2019-02-17 14:37:51 -05:00
Kelvin Sherlock
86285cc43d
replace hard coded ADB keycode with nice enums.
...
There are also a couple fixes in the SDL keymap (home key, {, }, keypad numbers)
xdriver isn't updated because I don't care about x.
win32 driver isn't updated pending other win32 keymap patch.
2019-02-17 14:22:38 -05:00
Kelvin Sherlock
3c9a004a9e
store fields in separate array, not as part of record.
2019-02-16 23:56:27 -05:00
Kelvin Sherlock
9589abfda7
debugger - add toolcall and GS/OS call recognition to the disassembler.
2019-02-16 17:29:39 -05:00
Kelvin Sherlock
a65833d6d8
register assignment - assign from other registers (eg, %a=%x)
2019-02-16 17:27:56 -05:00
Kelvin Sherlock
a0976f82a8
ubuntu.
2019-02-14 22:43:39 -05:00
Kelvin Sherlock
0956f154fd
compile with old versions of re2c (*cough* ubuntu *cough*)
2019-02-14 22:24:42 -05:00
Kelvin Sherlock
44acfd5434
Debugger: %pc++, %s++, %s--
2019-02-14 21:54:23 -05:00
Kelvin Sherlock
5cb4f63993
Debugger - GSBug.Templates support.
...
address\temp TemplateName to print structured memory.
Also, registers now need a % prefix so as not to interfere with other commands.
2019-02-14 21:37:03 -05:00
Kelvin Sherlock
2f05a766b0
fix GNU readline bug. linking libhistory is not necessary. In fact, it causes a SIGSEGV.
2019-02-11 23:09:59 -05:00
Kelvin Sherlock
14e1fe18f8
move icon files around.
2019-02-11 20:15:30 -05:00
Kelvin Sherlock
4a0c190ce3
win32 readline support, maybe.
2019-02-11 18:11:45 -05:00
Kelvin Sherlock
0021956044
bug fixes.
2019-02-10 22:45:42 -05:00
Kelvin Sherlock
f9a86eed8a
auto-select readline library by default.
2019-02-10 22:39:23 -05:00
Kelvin Sherlock
817792f94d
ubuntu, debian, etc, have outdated version of re2c. imagine that.
2019-02-10 22:21:06 -05:00
Kelvin Sherlock
25caf2dbad
add ;s stack command.
2019-02-10 21:42:15 -05:00
Kelvin Sherlock
fdcb504d9c
use simpler signal interface.
2019-02-10 21:40:47 -05:00
Kelvin Sherlock
66fbd7f677
move readline code to separate file.
2019-02-10 21:40:22 -05:00
Kelvin Sherlock
61858c4d62
Add Low-Level hook for Windows keyboard events
...
windows, alt, and control keys are handled separately, before windows can get a chance to act on them. This makes win usable as an option key and prevents things like alt-esc from minimizing the window.
Some combos (alt-control-delete, windows-L, etc) cannot be blocked.
2019-02-08 20:59:15 -05:00
Kelvin Sherlock
a76d26a0ad
drop all keys when window no longer active (not jut loss of focus). Also drop all pending keys that haven't been sent to the ADB yet.
2019-02-07 23:09:53 -05:00
Kelvin Sherlock
ea9a16fc5f
debug shell - ;l or l for list.
2019-02-06 22:54:41 -05:00
Kelvin Sherlock
2b1e04c3ac
debug shell - allow registers as addresses.
2019-02-06 22:54:18 -05:00
Kelvin Sherlock
524d4a27e4
halt_printf, control-c, etc set a halt bit. This now invokes the debugger, asynchronously (ie, after the current instruction finishes execution).
2019-02-06 22:53:44 -05:00
Kelvin Sherlock
68260dcf6a
debugger - new WANTS_BRK bit. setting it will cause BRKS to invoke the debugger instead of being handled within the 65816.
2019-02-06 22:50:38 -05:00
Kelvin Sherlock
dccb965631
eliminate overflow warnings when byteswapping.
2019-02-06 22:48:04 -05:00
Kelvin Sherlock
d0ed507ef4
debug shell - control-C sets asynchronous halt request.
2019-02-06 22:47:35 -05:00
Kelvin Sherlock
b08806c12a
debug shell - : memory assignment
2019-02-06 22:46:46 -05:00
Kelvin Sherlock
b7ff6d56e8
debug shell - @ and ^ indirection.
2019-02-06 22:46:08 -05:00
Kelvin Sherlock
2fb1249c96
clean up windows key mapping to use adb names codes. also fixes a few mistakes with keypad values.
2019-02-04 23:45:39 -05:00
Kelvin Sherlock
35993914f9
update adb keycodes with F15-F20, use proper value for F keys, eliminate Mac OS arrow key mapping.
2019-02-04 20:43:12 -05:00
Kelvin Sherlock
82229498b4
adb keycodes.
2019-02-04 20:41:11 -05:00
Dagen Brock
2cde38ba3c
Merge pull request #57 from ksherlock/option_return
...
remove warning about parse_cli_options not returning a value.
2019-01-30 11:13:14 -06:00
Kelvin Sherlock
e62889901c
fix up tcp debug to work with new debugger
2019-01-29 19:20:17 -05:00
Kelvin Sherlock
d47589374c
bp/mp are now post-fix ops.
2019-01-29 19:18:08 -05:00
Kelvin Sherlock
619ea2109d
remove dead code, update for new debugger code
2019-01-29 00:21:24 -05:00
Kelvin Sherlock
6034573693
udpated cmakefile for new debug code.
2019-01-28 23:04:55 -05:00
Kelvin Sherlock
c4aa64de48
new breakpoint code.
2019-01-28 23:04:20 -05:00
Kelvin Sherlock
0cf532c00d
BRK / COP weren't pushing the current z/neg flags.
2019-01-28 23:03:04 -05:00
Kelvin Sherlock
81c74470ef
PUSH16 MMU check was incorrect.
2019-01-28 22:59:00 -05:00
Kelvin Sherlock
0e2f35e7fe
re-order instructions so zero/negative flags are set AFTER memory write (which may abort)
2019-01-28 22:01:29 -05:00
Kelvin Sherlock
8d60a2d437
clean up the disassembler a little bit.
2019-01-28 18:10:27 -05:00
Kelvin Sherlock
0c0c886be9
drop the g_dbg_step variable for now...
2019-01-26 17:14:39 -05:00
Kelvin Sherlock
66f3971027
add debug flag register to engine.
2019-01-26 17:07:40 -05:00
Kelvin Sherlock
f376e2a442
new memory checking [part 1]
...
_ macros bypass the memory checking code.
2019-01-26 17:06:48 -05:00
Kelvin Sherlock
7e87fc6968
replace inline asm for rdtsc with compiler intrinsics.
2019-01-26 16:50:59 -05:00
Kelvin Sherlock
38e691562c
use c99 stdint types.
2019-01-22 22:37:20 -05:00
Kelvin Sherlock
ee078aeb19
remove breakpoint checks (to be added back later)
2019-01-22 21:52:00 -05:00
Kelvin Sherlock
77eb25fc71
use defines instead of bit shifts
2019-01-22 19:28:59 -05:00
Kelvin Sherlock
9f5a6566f5
sdl driver - support for the Home key.
2019-01-16 18:23:17 -05:00
Kelvin Sherlock
ad3ec85a1d
shift-keypad . was generating a keypad comma. very strange.
2019-01-16 18:22:36 -05:00
Kelvin Sherlock
ff1022db8f
sdl driver keymap mistakes.
2019-01-12 21:10:51 -05:00
Kelvin Sherlock
43b7330256
clean up CMake dependencies a little bit.
2019-01-10 20:36:17 -05:00
Kelvin Sherlock
5e852773ca
os x - setuid helper utility to connect to the bridge interface.
2019-01-08 18:41:55 -05:00
Kelvin Sherlock
4a5d6effd5
to work around vmnet root/entitlement restrictions, add a stand-alone helper utility than can be setuid root.
...
vmnet_helper creates a vmnet connection then communicates back to GS+ via pipes to stdin/stdout and a simple binary messaging protocol.
2019-01-06 22:58:41 -05:00
Kelvin Sherlock
55de506812
msvc warnings
2019-01-04 22:58:56 -05:00
Kelvin Sherlock
1700285fd2
cleanup to build with MSVC.
2019-01-04 17:53:16 -05:00
Kelvin Sherlock
b0764fb93c
build fix.
2019-01-02 21:49:48 -05:00
Kelvin Sherlock
f0bd88195b
bsd tuntap documentation.
2019-01-02 21:49:38 -05:00
Kelvin Sherlock
7422409f53
remove stale old msvc projects
2019-01-02 21:48:55 -05:00
Kelvin Sherlock
b353a7ff22
cleanup headers a bit
2019-01-02 19:53:34 -05:00
Kelvin Sherlock
4923efb5fc
cleanup to build under msys2/mingw64
2019-01-02 18:45:14 -05:00
Kelvin Sherlock
ecf6c58661
improved ethernet startup. use device name instead of index into a list that could change.
2018-12-31 20:51:14 -05:00
Kelvin Sherlock
4da1a246c7
get rid of the -enet flag, for now.
2018-12-31 20:50:07 -05:00
Kelvin Sherlock
fae38450e9
tap cleanup, more *BSD support.
2018-12-31 20:49:39 -05:00
Kelvin Sherlock
aaeda41baf
unix mtu/mac code for pcap.
2018-12-31 20:49:07 -05:00
Kelvin Sherlock
4af3cf0761
untested win32 mac code.
2018-12-31 20:48:34 -05:00
Kelvin Sherlock
04314d7bb0
dead code, no longer needed as of Uthernet Link Layer 1.0.2
2018-12-31 20:48:07 -05:00
Kelvin Sherlock
41b01509ad
rawnet - replace ugly transmit/receive functions with read/write.
2018-12-30 15:53:54 -05:00
Kelvin Sherlock
5884e751bc
rawnet - close pcap if not an ethernet device.
2018-12-30 15:51:53 -05:00
Kelvin Sherlock
c4796f77ec
rawnet - add rawnet_status() call to check if interface is open.
2018-12-30 15:50:41 -05:00
Kelvin Sherlock
324c9a191f
win32 - support for npcap which is a successor to winpcap. winpcap is still supported.
2018-12-30 15:49:29 -05:00
Kelvin Sherlock
0b03aad15d
tap/tun interface (alpha!)
2018-12-29 15:04:14 -05:00
Kelvin Sherlock
c34b0a4c02
vmnet - allocate one buffer and use it.
2018-12-26 22:51:04 -05:00
Kelvin Sherlock
44ee124882
can use numbers to navigate file picker.
2018-12-26 20:01:22 -05:00
Kelvin Sherlock
ce3bb3d642
add new menu lookup for ethernet interface.
2018-12-26 00:11:42 -05:00
Kelvin Sherlock
fc100dd6b6
sdl key mapping - remove alternate value (eg, page up) for keypad numbers. Hitting real page-up is converted to the 3 key, for example, which is bad.
2018-12-25 21:53:56 -05:00
Kelvin Sherlock
8dcbb38a62
clean up config menus
2018-12-25 21:52:41 -05:00
Kelvin Sherlock
1790096088
clean up arrow key code in the config window.
2018-12-25 20:00:15 -05:00
Kelvin Sherlock
18d988319e
rawnet cmake
2018-12-19 21:07:57 -05:00
Kelvin Sherlock
7a6ea5ef99
remove unused variables.
2018-12-19 21:07:25 -05:00
Kelvin Sherlock
b98635aaf1
darwin rawnet - since the MAC address can't change, switch it with Uthernet's mac address. Unfortunately, dhcp requests include a mac address, so it also has to be swapped in the DHCP message.
2018-12-18 19:23:57 -05:00
Kelvin Sherlock
9370ed8604
rawnet - add functions to get mac and mtu, if known.
2018-12-18 19:21:20 -05:00
Kelvin Sherlock
f550249382
tweak rawnet_hexdump
2018-12-18 19:20:11 -05:00
Kelvin Sherlock
ba50807910
tfe -> rawnet.
2018-12-14 20:37:39 -05:00
Kelvin Sherlock
12c8f215ba
darwin vmnet tweaks.
2018-12-14 20:35:50 -05:00
Kelvin Sherlock
a8c23a4c2a
rawnet - fix logging, add hexdump.
2018-12-14 20:35:23 -05:00
Kelvin Sherlock
1b1983b64a
rawnet - add link libraries, debugging defines.
2018-12-14 20:35:04 -05:00
Kelvin Sherlock
698678f508
rawnet
...
vice cleaned up TFE and called it RAWNET. Slightly better code separation.
I removed libnet stuff in the unix version and added a darwin version that uses the vmnet framework.
2018-12-13 23:20:04 -05:00
Kelvin Sherlock
5f2a5e4348
remove warning about parse_cli_options not returning a value.
2018-12-13 21:50:43 -05:00
Kelvin Sherlock
e37e50affe
cmake support.
...
cmake generates makefiles (or ninja file, xcode projects, etc) which are then built with make, ninja, xcode, etc.
usage:
make build # don't build in the source tree itself
cd build
cmake ../src/
then
make as usual.
It should work with OS X, Linux, and Win32 (tested on Windows with msys2 / mingw64, IIRC, using the win32 driver).
"make bundle" will run the OS X bundle utility to bundle up libraries.
2018-12-13 20:53:58 -05:00
Dagen Brock
5e009305f8
v0.14 release
2018-09-11 17:06:05 -05:00
Dagen Brock
fba7d6c89d
partially realized delta mouse handler (hidden in shift-F5 for now)
2018-09-07 09:29:46 -05:00
Dagen Brock
61d672f635
use SDL keycode whenever possible
...
- tested with US 101 key on US keyboard and it worked fine with this switch, but need users with international keyboards to test behavior on their end
2018-08-31 10:18:41 -05:00
Dagen Brock
7df808cf4a
add scaling options and fix speedups
2018-08-30 09:55:10 -05:00
Dagen Brock
710e2cd067
always alpha sort and cleaner hotkeys in file menu
2018-08-28 10:51:54 -05:00
Dagen Brock
6ec560ca49
only grab mouse in fullscreen for now
2018-08-27 12:16:57 -05:00
Dagen Brock
48bad8a432
cleaner shutdown / mouse code for SDL
2018-08-27 11:21:59 -05:00
Dagen Brock
ff39749feb
fix sdl frame rendering vsync method to simply present the buffer once per frame
2018-08-26 13:59:39 -05:00
Dagen Brock
17f22c3393
fix sdl2 keymap on non-apple systems and add rpi doc
2018-08-24 23:20:47 -05:00
Dagen Brock
12ec7c4fa9
proper SDL shutdown - fixes exit on RPi HW accel version
2018-08-24 14:18:44 -05:00
Dagen Brock
ed817c15fe
add vsync flag for great success
2018-08-24 12:45:51 -05:00
Dagen Brock
9b708a2ad8
resolve builds on windows with new fst objects
2018-08-24 11:40:25 -05:00
Dagen Brock
16b131d1f9
Merge pull request #41 from ksherlock/prodos_mli
...
Prodos mli (win32 edition)
2018-08-24 05:28:37 -05:00
Dagen Brock
26ac5bc51a
Merge branch 'master' into master
2018-08-24 05:12:46 -05:00
Kelvin Sherlock
fcf8dea873
host mli - convert cygwin paths to Win32 paths before using with Win32 API.
2018-08-23 20:47:09 -04:00
Kelvin Sherlock
2b38b6bf8d
win32 prefix fix.
2018-08-23 15:27:23 -04:00
Dagen Brock
27a0d34dff
pi build with sdl2
2018-08-23 18:35:41 +00:00
Kelvin Sherlock
7b66b3a070
bug fixes and more cleanup
2018-08-23 10:56:09 -04:00
Kelvin Sherlock
192cfc724b
win32 host mli support
...
this also moves a lot of common host_fst / host_mli / win_host_fst into host_common / unix_host_common / win32_host_common
Currently untested.
2018-08-23 00:38:53 -04:00
Dagen Brock
45da5d239d
add unimplemented functions to allow win32 builds to work
2018-08-22 10:07:25 -05:00
Kelvin Sherlock
70578779e4
mli init - was reading unit as 16-bit quantity instead of 8-bit quantity.
2018-08-20 21:34:59 -04:00
Kelvin Sherlock
30491a39a0
host fst - return a better error for ChangePathGS when destination file exists and DestroyGS when file is non-empty directory
2018-08-20 21:28:09 -04:00
Kelvin Sherlock
67a8d7a0c6
sunos xattr defines
2018-08-20 20:58:48 -04:00
Kelvin Sherlock
8be3dad543
uncrustify.
2018-08-20 20:57:45 -04:00
Kelvin Sherlock
a5e55f826c
update makefile, remove dead code
2018-08-20 20:55:19 -04:00
Kelvin Sherlock
3390a35f84
host mli support
...
intercepts ProDOS MLI calls for the /HOST/ path.
2018-08-20 15:43:06 -04:00
Dagen Brock
8e53c19f66
making it merge someway, somehow
2018-08-20 13:16:47 -05:00
Dagen Brock
5d6bc63bf7
Merge branch 'experimental' into debugger_wdm
2018-08-20 12:40:08 -05:00
Kelvin Sherlock
e021a622b4
adds two new WDM debugger commands useful for programmers.
...
WDM $a0 prints a string
a: string type (0 = c-string, 1 = pascal string, 2 = gs/os string). set bit 15 ($8000) to add a trailing '\n
x/y: pointer to the string
WDM $a1 hexdumps memory
a: length
x/y pointer to memory
(in both cases, x is the low word and y is the high word (ie, bank))
2018-08-20 13:03:53 -04:00
Dagen Brock
d7ccfb919c
remove debug and status line (not supported) flags from osx builds
2018-08-14 22:48:50 -05:00