Glenn Maynard
cb7feb626e
Separate out scaleLight.
6 years ago
Glenn Maynard
cf02b97fe6
Rename m_aPendingCommands -> m_aPendingLightsCommands.
...
This only buffers lights commands, not all commands.
6 years ago
Glenn Maynard
39cfc8cee0
Add support for uploading animations to the panel, if it supports it.
6 years ago
Glenn Maynard
0b3202ccff
Handle 25-light panel animations in SMXPanelAnimation.
6 years ago
Glenn Maynard
880774f9e4
Make sure we call the callback from SendCommandLocked if the device isn't connected and we're not queueing the command.
6 years ago
Glenn Maynard
159a9a4da2
Add a progress window.
6 years ago
Glenn Maynard
42a99e775b
Allow launching on startup.
...
If this is used to play GIF animations on the pad, being able to have
it launch on startup is useful.
This is disabled by default and there's no UI to enable it yet.
6 years ago
Glenn Maynard
5cf5eddc81
Allow minimizing to the tray.
...
This allows running GIF animations in the background.
6 years ago
Glenn Maynard
4691ce5ecf
If commands are buffered and not sent when the device is disconnected, call any completion callbacks.
...
This is to guarantee that completion callbacks are always called, so if any
resource collection happens in them it'll always happen.
6 years ago
Glenn Maynard
135e3c5401
Add a UI to set panel animations.
...
This is driven by the config tool, which needs to stay running.
6 years ago
Glenn Maynard
e5e75e0106
Put the step color widgets in a StackPanel.
...
Doing this in a separate commit since it changes a lot of indentation but
doesn't really change much code.
6 years ago
Glenn Maynard
2628c078fa
Add SMXPanelAnimation.
6 years ago
Glenn Maynard
303283624a
Add SMX_SetLights2.
...
This is the same as SMX_SetLights, but instead of taking one buffer with a
fixed size, it takes a separate buffer for each pad, and explicitly includes
the size of the buffer rather than assuming it's 864 bytes. SMX_SetLights
and SMX_SetLights2 call into the same underlying update.
6 years ago
Glenn Maynard
d576545266
Split out low-level thread handling into SMXThread, and use it in SMXHelperThread.
...
This isn't used by the SMXManager thread for now.
This also separates out SMX::Event for thread event handling.
6 years ago
Glenn Maynard
a7cb6ad51d
Replace SMXHelperThread::GetThreadId() with SMXHelperThread::IsCurrentThread().
6 years ago
Glenn Maynard
ad2e7dcb74
Move extern "C" into the SMX_API define.
6 years ago
Glenn Maynard
baa66fc551
Select an enabled panel in the panel color UI by default.
...
This fixes the default always being up-left (which is usually disabled),
causing the color slider to not do anything until you select a different
panel.
6 years ago
Glenn Maynard
bceca77016
Fix AutoLightsColorRefreshColor calling SetColor with an incomplete array.
...
This could cause access violations, because it calls the native SMX_SetColor
with a color array that's too small.
6 years ago
Glenn Maynard
4c0da63842
Add debounceDelayMs.
...
This isn't turned on, this is just to sync up the config packet with the
firmware.
6 years ago
Glenn Maynard
7a4bbc6eab
Pad the configuration struct to 250 bytes, so the SDK.DLL ABI doesn't change when fields are added.
6 years ago
Glenn Maynard
6e09b2ea53
Fix the auto-lights preview when dragging the color slider being dimmer than the actual auto-lights.
6 years ago
Glenn Maynard
2c07942478
Move the SMXManager from SMX to SMXManager.
6 years ago
Glenn Maynard
a18df41e49
Fix calls to ActivePads() causing exceptions in design mode.
6 years ago
Glenn Maynard
5f627b1b55
Fix the debug build.
6 years ago
Glenn Maynard
65f4a7102c
Check for out of sequence PACKET_FLAG_START_OF_COMMAND.
...
This improves recovery if a start packet is received when we didn't receive a complete
packet earlier. This doesn't normally happen, this just matches the error recovery used
in game.
6 years ago
Glenn Maynard
e57fa5d28e
Add a version display based on the git tag.
7 years ago
Glenn Maynard
3d6eb112e6
Add a separate sanity check for SMX.dll existing, since Windows gives the same error if a DLL is missing or one of its dependencies is missing.
7 years ago
Glenn Maynard
8ea8070d51
Some disabled logs for testing (disabled because they're noisy).
7 years ago
Glenn Maynard
5d1e4c85fe
Add an early check for SMX.dll not loading.
7 years ago
Glenn Maynard
f321b7228d
Remove unused SetUpdateCallback. We set the update callback on start.
7 years ago
Glenn Maynard
d7f94fa99f
Add a default exception handler. The default Windows one doesn't always show a message properly.
7 years ago
Glenn Maynard
78d6be9341
Fix up ssprintf.
7 years ago
Glenn Maynard
9b6eb07e0b
Add more logs for device connections.
7 years ago
Glenn Maynard
913f740113
Allow configuring two pads together (the existing behavior), or selecting a single pad from a dropdown to configure them separately.
7 years ago
Glenn Maynard
9ed01c29ba
Implement exporting and importing platform settings to a file.
7 years ago
Glenn Maynard
2d8d7c0be1
Committing various trivial changes that MSVC decided to make after updating.
7 years ago
Glenn Maynard
a1281218bb
Increase the minimum difference between the upper and lower thresholds to 10.
...
Having this at 5 is causing confusion, since the hardware isn't actually designed
to have the thresholds so close together. This was set to 5 for internal testing,
but it's not actually useful to have them so close together. The thresholds exist
to prevent ghosting and strobing on the panels, and putting the thresholds very
close together prevents them from doing that.
7 years ago
Glenn Maynard
eb84ffe29d
Fix SMX_GetConfig not returning a result.
...
This caused SMXConfig to think it was setting both controller configurations even
when only one was connected, which made the UI not refresh correctly if only P2
was connected.
7 years ago
Glenn Maynard
4610748374
Add a contact address for support.
7 years ago
Glenn Maynard
57379383c0
Import for release.
7 years ago
Glenn Maynard
364b82e27c
Empty initial commit.
7 years ago