aciodrv: Update aciodrv_device_init to properly reset the device - [merged] #194

Closed
opened 2021-05-01 20:35:34 +03:00 by icex2 · 5 comments
icex2 commented 2021-05-01 20:35:34 +03:00 (Migrated from github.com)

In GitLab by @xyen on May 1, 2021, 19:35

Merges aciodrv_reset -> master

When testing PANB, @shtokopep noticed that starting the game was able to recover the device from the auto-poll state, but trying to do so from aciotest (using aciodrv) would fail.

This is important, due to use cases such as SGL, where upon quitting the game, and trying to use SGL again, the device would not be opened correctly (due to not being reset, and still spewing auto poll messages, hence leading to checksum/packet errors as we're not expecting those messages at this point).

This MR properly resets the ACIO device, by sending 525 NULL bytes, followed by a break for 1450ms.

In GitLab by @xyen on May 1, 2021, 19:35 _Merges aciodrv_reset -> master_ When testing PANB, @shtokopep noticed that starting the game was able to recover the device from the auto-poll state, but trying to do so from aciotest (using aciodrv) would fail. This is important, due to use cases such as SGL, where upon quitting the game, and trying to use SGL again, the device would not be opened correctly (due to not being reset, and still spewing auto poll messages, hence leading to checksum/packet errors as we're not expecting those messages at this point). This MR properly resets the ACIO device, by sending 525 NULL bytes, followed by a break for 1450ms.
icex2 commented 2021-05-01 20:37:13 +03:00 (Migrated from github.com)

This is important, due to use cases such as SGL...

I am really happy to read that others seem to be interested in that project

> This is important, due to use cases such as SGL... I am really happy to read that others seem to be interested in that project
icex2 commented 2021-05-01 20:38:27 +03:00 (Migrated from github.com)

Nit: That function is already quite large and the whole reset part might be worth moving to a separate static function to make this whole thing more digestable for future readers.

Nit: That function is already quite large and the whole reset part might be worth moving to a separate static function to make this whole thing more digestable for future readers.
icex2 commented 2021-05-01 20:43:06 +03:00 (Migrated from github.com)

In GitLab by @xyen on May 1, 2021, 19:43

added 1 commit

  • c3453adc - aciodrv: refactor aciodrv_device_init function

Compare with previous version

In GitLab by @xyen on May 1, 2021, 19:43 added 1 commit <ul><li>c3453adc - aciodrv: refactor aciodrv_device_init function</li></ul> [Compare with previous version](/djhackers/bemanitools/-/merge_requests/93/diffs?diff_id=1626&start_sha=425ecb9cdeec65a471c4545664c34c36c8aba569)
icex2 commented 2021-05-01 20:43:14 +03:00 (Migrated from github.com)

In GitLab by @xyen on May 1, 2021, 19:43

resolved all threads

In GitLab by @xyen on May 1, 2021, 19:43 resolved all threads
icex2 commented 2021-05-01 20:43:52 +03:00 (Migrated from github.com)

approved this merge request

approved this merge request
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Max/djhackersdev_bemanitools#194