Raphaël Assénat
59c2627f40
Merge pull request #5 from dsprenkels/atmega32u4
...
Add support for atmega32u4 chip
2019-07-16 16:06:14 -04:00
Daan Sprenkels
7e90c06cf9
Add support for atmega32u4 chip
2019-07-13 14:17:26 +02:00
Raphael Assenat
2dd64af033
update changelog for next version
2019-02-04 17:10:12 -05:00
Raphael Assenat
74cf60d839
Add support for the N64 mouse
...
For now, just recognizes it's a mouse and treat it like a controller.
2019-02-04 17:08:52 -05:00
Raphael Assenat
4999f07c14
Add support for Gamecube keyboards
2018-11-06 10:38:39 -05:00
Raphael Assenat
9872399739
changelog entry for release 3.5.2
2018-09-18 14:37:24 -04:00
Raphael Assenat
c7992e5334
Improve PID (force feedback) implementation
...
Honor the effect duration
2018-09-18 14:34:38 -04:00
Raphael Assenat
f5e268fb19
bump version to 3.5.2
2018-09-05 10:43:04 -04:00
Raphael Assenat
9c99048c6f
run avr-size in AVR mode
2018-09-05 10:42:53 -04:00
Raphael Assenat
2d3795c29a
Implement reset and echo requests
2018-09-05 10:42:05 -04:00
Raphael Assenat
b01df9f239
Version 3.5.1
2018-04-10 17:17:51 -04:00
Raphael Assenat
55fe6d0312
Adjust vibration duration to feel more like on a real console
2018-04-10 17:17:46 -04:00
Raphael Assenat
1dc71a835b
Disable debug
2018-04-10 15:13:34 -04:00
Raphael Assenat
03ebfde089
Force feedback: Don't ignore the loop count
...
The PID Effect Operation output report contains a 'loop count'
field that has an influence on how long the effect runs. Ignoring
it can lead to never stopping vibration for software that use
the loop count to let effects stop automatically instead of
issuing a stop command.
2018-04-10 15:13:25 -04:00
Raphael Assenat
f42a29b888
Add a second interval timer
2018-04-10 15:07:35 -04:00
Raphael Assenat
2a2b326001
Release date for version 3.5.0
2017-11-25 14:09:34 -05:00
Raphael Assenat
9d5ca629a7
Update changelog with recent changes
2017-11-22 09:42:26 -05:00
Raphael Assenat
708fb22072
2-player: Re-order joystick and management interfaces
...
Make sure the management (non-joystick) interface is the last. Works
around a presumed Windows bug (Joystick ID confusion where the
second controller stops working or gives an error in the Game controller
test dialog)
2017-11-22 09:39:14 -05:00
Raphael Assenat
0e0c381fbd
Implement feature set query commands
...
The adapter can now be queried by the management tool to see
what configuration options and requests are available without
harcoding them for each release.
2017-11-22 09:37:42 -05:00
Raphael Assenat
95d6b2ec15
Simplify config code and add disable triggers feature
2017-11-22 09:35:59 -05:00
Raphael Assenat
5328827234
Version 3.5 product IDs
2017-11-21 23:03:46 -05:00
Raphael Assenat
66a1a45f22
Runtime endpoint sizes for HID
2017-11-20 00:13:57 -05:00
Raphael Assenat
9f665068ae
Bump version to 3.5.0
2017-11-20 00:13:50 -05:00
Raphael Assenat
7b01a454d4
Prepare for release 3.5.0
...
3.4.1 was never formally released so the changelog entry is reused.
2017-11-20 00:05:52 -05:00
Raphael Assenat
be2894b68c
Set .bcdUSB to the correct value
...
Should be 0x0110 for 1.1
2017-11-19 14:41:41 -05:00
Raphael Assenat
e7426e684a
Do not send more descriptor bytes than we have
...
The request may be for more bytes than our descriptor has. Do not
send more when asked for more.
2017-11-19 14:40:53 -05:00
Raphael Assenat
05b47f9967
Prepare for release 3.4.1
2017-08-14 17:59:12 -04:00
Raphael Assenat
c123fd6b52
Finish "sliders as button" configurability
2017-08-14 17:58:40 -04:00
Raphael Assenat
d72815e9e6
Adjust "sliders as buttons" threshold
...
The initial value of 32 was too low. Buttons were triggered
without even touching the sliders.
2017-08-14 17:57:55 -04:00
Raphael Assenat
a041e8eaf8
Implement "sliders as buttons" mode
...
In this mode, when the analog values of the L/R triggers exceed a
certain threshold, the corresponding L and R digital buttons are
triggered.
2017-08-05 17:13:21 -04:00
Raphael Assenat
a9d5df2b8f
Add "triggers as buttons" flag
2017-08-05 17:12:26 -04:00
Raphael Assenat
324bb81b1e
Version 3.4.0 changelog entry
2017-01-08 16:24:08 -05:00
Raphael Assenat
eeb2ecbae4
Merge branch 'performance'
2017-01-08 16:21:51 -05:00
Raphael Assenat
158d9bffda
Makefile 'restart' target
...
Useful for some tests...
2017-01-08 16:19:41 -05:00
Raphael Assenat
c7e8dc7ad4
Save memory
...
Store the device string in 8 bit and in program memory. Also
reduce the size of a few variables.
2017-01-08 15:58:45 -05:00
Raphael Assenat
b22985712f
Add stack overgrow detection
...
If the stack ever grows too large (and starts overwriting variables
in .bss) the firmware jumps into the bootloader. This is better than
just continuing to run with strange side effects.
2017-01-08 15:14:55 -05:00
Raphael Assenat
2eaafb7786
ifdef unused rawdata fields to save memory
...
Save 32 bytes.
2017-01-08 10:50:01 -05:00
Raphael Assenat
412c1a42eb
ifdef unused rawdata fields to save memory
...
Save 32 bytes.
2017-01-08 10:49:51 -05:00
Raphael Assenat
083c915c34
Implement RQ_GCN64_BLOCK_IO
2016-12-03 14:15:22 -05:00
Raphael Assenat
6d8d2d27bf
Increate feature report size to 63 bytes
2016-12-03 14:15:00 -05:00
Raphael Assenat
5eb8a587c4
Add RQ_GCN64_BLOCK_IO
2016-12-03 14:14:51 -05:00
Raphael Assenat
64115ad9ef
remove dead code
2016-11-28 14:06:52 -05:00
Raphael Assenat
e944017c36
Bump version to 3.4, change product IDs
2016-11-28 11:45:52 -05:00
Raphael Assenat
e7bca6ce08
forgot to increase version...
2016-11-27 16:58:50 -05:00
Raphael Assenat
1623a46179
update project name and homepages
2016-11-27 14:34:03 -05:00
Raphael Assenat
d573ff55c3
Remove tool instructions as it is a separate project
2016-11-27 14:27:05 -05:00
Raphael Assenat
6bb9ce18a9
Changelog entries for 3.3.2
2016-11-27 11:16:33 -05:00
Raphael Assenat
c2fd3a10ba
Need one current_pad_type var. per channel
2016-11-27 11:15:13 -05:00
Raphael Assenat
434aec0d4b
Version 3.3.1
2016-11-02 22:10:54 -04:00
Raphael Assenat
bbefc8203c
Prevent freeze if host only polls one endpoint
...
Each joystick has its own interrupt endpoint, and the main loop
used to wait until each became ready (i.e. Serviced) in turn.
On some systems, when only one joystick is in use, only one endpoint
is polled. The inactive endpoint therefore never became ready and
the mainloop would freeze.
Rewrote part of the loop to prevent this. New flow:
1) Wait until it is time to poll the controllers
(based on current poll frequency setting)
2) Wait until either endpoints is ready.
3) Write data to first endpoint if ready, otherwise skip.
4) Write data to second endpoint if ready, otherwise skip.
2016-11-02 21:46:52 -04:00