Commit Graph

378 Commits

Author SHA1 Message Date
Tau
0806282bbf board/guid.c: Add HID class GUID 2019-03-04 16:47:32 -05:00
Tau
ba8b8e32fc util/async.c: Add async IO worker thread
Need this for IO4 USB emulation, might break it out and upstream it
to Capnhook at some point as well.
2019-03-04 16:47:32 -05:00
Tau
2be3647089 Enable Windows Vista+ Win32 APIs
I'd like to have condition variables.
2019-03-04 16:47:32 -05:00
Tau
39d1b89b1b util/dprintf.c: Make dprintf() thread safe 2019-03-04 16:47:32 -05:00
Tau
65d24c1ada util/setupapi.c: Avoid clashes with real devices
We're going to need this for HID emulation, since unlike all the
other device classes regular PCs do actually have a bunch of HIDs
attached to them that we're going to want to access from within
the hooked process.
2019-02-27 21:56:10 -05:00
Tau
243914f23a cardhook/_com12.c: Rebase onto sg-reader 2019-02-26 13:52:45 -05:00
Tau
bc2928804c board/sg-reader.c: Factor out NFC ass'y emu
Combine the NFC module emulator with the LED module emulator and
a virtual UART to build a higher-level reusable building block.
2019-02-26 13:49:29 -05:00
Tau
662bfa55ec aimeio: Factor out emulated reader assembly app logic 2019-02-26 13:49:29 -05:00
Tau
2cbb18604b board/sg-led.c: Remove error path from update cmd
No way to return it to the host application anyway since this
command is unacknowledged.
2019-02-26 13:49:29 -05:00
Tau
8606d17699 board/sg-nfc.c: Pass UID consistently
If we receive it from the upper ops layer then we should send it
back as well.
2019-02-26 13:49:29 -05:00
Tau
bbe085b73d board/slider-cmd.h: Add separate Diva LED cmd
The Chunithm slider has sixteen cells and fifteen (I think?)
vertical lines splitting the cells. Diva does not have these lines,
so presumably the LED data format is different. Need to analyze
this further.
2019-02-26 13:49:29 -05:00
Tau
05ccf363d9 board/meson.build: Fix sorting 2019-02-26 13:49:29 -05:00
Tau
8036ff71ec board: Factor out Chunithm slider 2019-01-26 12:05:37 -05:00
Tau
6416ef6e95 nu/nusec.c: Don't log security pings 2019-01-17 13:59:02 -05:00
Tau
ee011a74d4 Make dprintfs 64-bit clean 2018-12-17 17:34:50 -05:00
Tau
755be05603 board/sg-nfc.c: Use non-hardcoded UID
Turns out this does in fact vary between cards, even though its
actual value is unimportant.
2018-12-17 17:34:50 -05:00
Tau
9159be00a2 Add HW,FW notes on NFC assembly 2018-11-28 11:49:55 -05:00
Tau
2c6d48ce27 Add Chunithm Star Plus WinHTTP debug printfs 2018-11-28 11:49:16 -05:00
Tau
25a1898747 Add j_printf spike flavor 2018-11-28 11:49:10 -05:00
Tau
51e4eca7dd Add MSVC PCH support 2018-11-23 18:25:22 -05:00
Tau
6adb4e7b8b Make project buildable by MSVC 2018-11-23 18:25:22 -05:00
Tau
359561d762 Fix meson project name 2018-11-23 18:25:21 -05:00
Tau
dc082c77eb util/clock.c: Use #define constants
MSVC doesn't allow chaining of const expressions grumble grumble
(need to use constexpr, which is a. an extremely ugly looking
reserved word and b. exclusive to C++)
2018-11-23 18:25:21 -05:00
Tau
42a79933f1 util/setupapi.c: Fix calling convention syntax 2018-11-23 18:25:21 -05:00
Tau
829ca160be nu/gpio.c: Fix static assert 2018-11-23 18:25:21 -05:00
Tau
9ec0fbf957 Suppress hook DLL exports 2018-11-23 18:12:36 -05:00
Tau
0cbd950289 Fix non-PCH build 2018-11-23 14:37:42 -05:00
Tau
0bd8be6610 Bump capnhook dependency 2018-11-23 14:37:35 -05:00
Tau
51994d59ff Combine both clock hooks
Turns out the clock skew doesn't really work unless RTC and TZ
changes are blocked as well.
2018-11-23 14:23:16 -05:00
Tau
1725cfb9ac Add registry keys for Chunithm
Will virtualize this stuff eventually but it will do for now.
2018-11-20 20:58:51 -05:00
Tau
55c68c8094 cardhook: Wire up aimeReaderHost hook
This is an external AiMe driver process that is only used by
Chunithm AFAIK. The wiring can be easily re-used for other games.
2018-11-20 20:33:17 -05:00
Tau
1630784c3d board/sg-led.c: Implement RGB LED support
Used by AiMe reader, possibly used elsewhere.
2018-11-20 20:33:17 -05:00
Tau
4936fc2bcc board/sg-nfc.c: Add initial emu for NFC board
This board also supports FeliCa and probably some other stuff.
Need to analyze and implement these features later, Mifare card
support only for now.
2018-11-20 20:33:17 -05:00
Tau
0135236209 board/sg-cmd.c: Add "sg" req/resp packets 2018-11-20 20:33:17 -05:00
Tau
b8ffd20877 board/sg-frame.c: Add "sg" framing support 2018-11-20 20:33:17 -05:00
Tau
9f43f9f397 Hoist slider from board into chunihook
Diva slider uses the quasi-JVS framing used by all other SEGA
boards, the Chunithm slider is a special case.
2018-11-20 20:33:17 -05:00
Tau
78e7de613f nu/nusec.c: Implement log ring buffer 2018-11-20 20:33:17 -05:00
Tau
c825959250 minihook: Load spike config 2018-11-20 20:33:17 -05:00
Tau
9c83a38208 util/clock.c: Apply clock skew
SEGA games are unplayable between 03:00 and 07:00 local time due
to a network maintenance period that is hard-coded into the games
themselves (no, guest play is not available).

Deal with this by slowing down time to avoid 02:00 (the time when
a warning appears and new credits eventually start being rejected),
then jump forward to sync up with real time when 07:00 hits.
2018-11-20 20:33:17 -05:00
Tau
9614185511 util/spike.c: Use different filenames for each DLL
Might want to hook Chunithm and the card reader satellite process
side by side for instance.
2018-11-20 20:33:17 -05:00
Tau
2440be1cbf board/io3.c: Handle short reads/writes 2018-11-20 20:33:17 -05:00
Tau
5df0994458 util/dump.c: Add ASCII view to dump output 2018-11-20 20:33:17 -05:00
Tau
c1dee321f3 chunihook/dllmain.c: Wire up Chunithm hook DLL 2018-11-20 20:33:17 -05:00
Tau
4564699a42 chunihook/slider.c: Add Chunithm slider emulation 2018-11-20 20:33:17 -05:00
Tau
75e227cc91 chunihook/jvs.c: Add Chunithm cabinet JVS callbacks 2018-11-20 20:33:17 -05:00
Tau
66132effd7 chunihook: Add empty DLL 2018-11-20 20:33:17 -05:00
Tau
e14c5436c2 minihook: Add security override hook 2018-11-20 20:33:17 -05:00
Tau
5a2a2a6bbf spike: Add Chunithm Star Plus memory addresses 2018-11-20 20:33:17 -05:00
Tau
c560dc7ee2 util/spike.c: Add configurable log "spike" injector 2018-11-20 20:33:17 -05:00
Tau
1eca0648f1 util/gfx.c: Add crude D3D9 window hook 2018-11-20 20:33:17 -05:00