Commit Graph

61 Commits

Author SHA1 Message Date
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
Tau 851ea65609 util/clock.c: Add hook to prevent date/time changes 2018-11-20 20:33:17 -05:00
Tau acfa53fc5c board/slider-cmd.h: Add commands for touch slider PCB 2018-11-20 20:33:17 -05:00
Tau 5a7d549434 board/slider-frame.c: Add framing for touch slider PCB 2018-11-20 20:33:17 -05:00
Tau 372868565e board/io3.c: Add SEGA "Type 3" JVS I/O emulator 2018-11-20 20:33:17 -05:00
Tau f05348fb9d board: Add empty static library 2018-11-20 20:33:17 -05:00
Tau 0929beae11 nu/jvs.c: Add emulated JVS controller 2018-11-20 20:33:17 -05:00
Tau e2f554f5bb jvs/jvs-cmd.h: Add JVS command definitions 2018-11-20 20:33:17 -05:00
Tau ffe929d8ea jvs/jvs-util.c: Add JVS dispatch helper 2018-11-20 20:33:17 -05:00
Tau 484931ccf3 jvs/jvs-frame.c: Add JVS framing 2018-11-20 20:33:17 -05:00
Tau e8537f4b52 jvs/jvs-bus.c: Add JVS bus definitions 2018-11-20 20:33:17 -05:00
Tau f5f553bd57 jvs: Add empty static library 2018-11-20 20:33:17 -05:00
Tau 93bf47fb76 nu/hwmon.c: Add emulated hardware monitoring driver 2018-11-20 20:33:17 -05:00
Tau 2c6e202b38 nu/nusec.c: Begin security kmod emulator 2018-11-20 20:33:17 -05:00
Tau f0f45a93a1 util/dump.c: Add hex pretty-print debug helper 2018-11-20 20:33:17 -05:00
Tau d791464dd0 nu/gpio.c: Add emulated GPIO controller 2018-11-20 20:33:17 -05:00
Tau 935b1c2c12 nu/ds.c: Add emulated DS EEPROM device 2018-11-20 20:33:17 -05:00
Tau 7cf0914092 util/crc.c: Add simple CRC-32 implementation 2018-11-20 20:33:17 -05:00