J2Kbr / GtunerIV

Gtuner IV - Titan Two's software bug report.
http://www.consoletuner.com
25 stars 4 forks source link

Feature Request - Interactive Configuration : control=config allow toggle of single bits of a byte #341

Closed Scachi closed 5 years ago

Scachi commented 5 years ago

Right now it is only possible to do presets using the config control using hex values. Using hex values for a single bit will also set the other bits of that byte.

To be able to max out the usage of all available bits & bytes of the pmem storage one sometimes has to put different checkboxes into a single byte that don't match logical wise. Example: using byteoffset 0 bitoffset 0 : "Enable Rapid Fire" and byteoffset 0 bitoffset 1 : "Enable Anti Recoil". When I want to create a config item for Rapid Fire enabled I can't to this without changing or risking the change of the Anti Recoil checkbox at the same time.

At the moment "#nn:hh" is used to jump to a nn:specific byte offset and set hh:hex. Is it possible to add something like "^nn:bitmask to set a bitmask with placeholder to keep some bit unchanged ? (not defining them as 1 or 0) Example: '^00:???????1" will set that single bit of byte 0 to 1 only without touching the other. Or any other special char + , ' , - , | , $ ...

J2Kbr commented 5 years ago

Operations OR and AND added on Gtuner IV 1.05 revision 1 (I suggest wait the same update be available on Gtuner Air before publish scripts).

Here is how this works: GIVICFG:#02:04 Assign the hex value 04 to position hex 02 GIVICFG:#02|04 Bitwise OR the hex value 04 with the current value on position hex 02 GIVICFG:#02&FB Bitwise AND the hex value FB with the current value on position hex 02

J2Kbr commented 5 years ago

Added on Gtuner Air: https://github.com/J2Kbr/GtunerAir/issues/13