diff options
Diffstat (limited to 'src/docs/draft-tasd-spec-0001.xml')
| -rw-r--r-- | src/docs/draft-tasd-spec-0001.xml | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/src/docs/draft-tasd-spec-0001.xml b/src/docs/draft-tasd-spec-0001.xml index 16fa4a7..5c8036e 100644 --- a/src/docs/draft-tasd-spec-0001.xml +++ b/src/docs/draft-tasd-spec-0001.xml @@ -1110,7 +1110,7 @@ </dl> <t>All INPUT_CHUNK packets with corresponding Port values in the <strong>TASD</strong> file <bcp14>MUST</bcp14> be in chronological order, where earlier inputs in the TAS movie console replay are earlier in the <strong>TASD</strong> file and later inputs in the TAS movie console replay are later in the <strong>TASD</strong> file. If there are more than one INPUT_CHUNK packets for a specific Port, the input data <bcp14>MUST</bcp14> be interpreted as if all their contents were concatenated into a single INPUT_CHUNK packet. As such, a single INPUT_CHUNK packet <bcp14>MAY</bcp14> contain up to every input of a TAS movie console replay and <bcp14>MAY</bcp14> contain fewer than every input of a TAS movie console replay.</t> <t>The input data contained in <strong>Inputs</strong> is divided up based on the PORT_CONTROLLER type corresponding to the <strong>Port</strong> number. Refer to <xref target="controller_inputs"/> for each available type and the number of bytes used for each instance of controller input. The PORT_CONTROLLER type <bcp14>MAY</bcp14> be changed using TRANSITION packets, which <bcp14>MAY</bcp14> change the interpretation of the input data until either the end of the replay or until the next PORT_CONTROLLER transition.</t> - <t></t> + <t>Each instance of controller input <strong>SHOULD</strong> remain held until the input has been used according to the current replay configuration. By default, this means each instance of controller input corresponds to a single input "latch" or polling sequence by the console. However, some packet types <strong>MAY</strong> alter how inputs are used during replay. For example, the NES has the NES_LATCH_FILTER packet available. When NES_LATCH_FILTER is active, each instance of controller input <strong>MUST</strong> remain held until the end of the filter period.</t> </section> <section numbered="true" toc="default" anchor="input_moment"> <name>INPUT_MOMENT Packet</name> @@ -1834,14 +1834,14 @@ <t>Single Input Length: 1 Octet</t> <t><strong>Octet 0</strong></t> <dl spacing="compact"> - <dt>Bit 7:</dt><dd>/Up</dd> - <dt>Bit 6:</dt><dd>/Down</dd> - <dt>Bit 5:</dt><dd>/Left</dd> - <dt>Bit 4:</dt><dd>/Right</dd> - <dt>Bit 3:</dt><dd>/B</dd> - <dt>Bit 2:</dt><dd>/C</dd> - <dt>Bit 1:</dt><dd>/A</dd> - <dt>Bit 0:</dt><dd>/Start</dd> + <dt>Bit 7:</dt><dd>/C</dd> + <dt>Bit 6:</dt><dd>/B</dd> + <dt>Bit 5:</dt><dd>/Right</dd> + <dt>Bit 4:</dt><dd>/Left</dd> + <dt>Bit 3:</dt><dd>/Down</dd> + <dt>Bit 2:</dt><dd>/Up</dd> + <dt>Bit 1:</dt><dd>/Start</dd> + <dt>Bit 0:</dt><dd>/A</dd> </dl> </section> <section numbered="true" toc="default"> @@ -1849,21 +1849,21 @@ <t>Single Input Length: 2 Octets</t> <t><strong>Octet 0</strong></t> <dl spacing="compact"> - <dt>Bit 7:</dt><dd>/Up</dd> - <dt>Bit 6:</dt><dd>/Down</dd> - <dt>Bit 5:</dt><dd>/Left</dd> - <dt>Bit 4:</dt><dd>/Right</dd> - <dt>Bit 3:</dt><dd>/B</dd> - <dt>Bit 2:</dt><dd>/C</dd> - <dt>Bit 1:</dt><dd>/A</dd> - <dt>Bit 0:</dt><dd>/Start</dd> + <dt>Bit 7:</dt><dd>/C</dd> + <dt>Bit 6:</dt><dd>/B</dd> + <dt>Bit 5:</dt><dd>/Right</dd> + <dt>Bit 4:</dt><dd>/Left</dd> + <dt>Bit 3:</dt><dd>/Down</dd> + <dt>Bit 2:</dt><dd>/Up</dd> + <dt>Bit 1:</dt><dd>/Start</dd> + <dt>Bit 0:</dt><dd>/A</dd> </dl> <t><strong>Octet 1</strong></t> <dl spacing="compact"> - <dt>Bit 7:</dt><dd>/Z</dd> - <dt>Bit 6:</dt><dd>/Y</dd> - <dt>Bit 5:</dt><dd>/X</dd> - <dt>Bit 4:</dt><dd>/Mode</dd> + <dt>Bit 7:</dt><dd>/Mode</dd> + <dt>Bit 6:</dt><dd>/X</dd> + <dt>Bit 5:</dt><dd>/Y</dd> + <dt>Bit 4:</dt><dd>/Z</dd> <dt>Bit 3:</dt><dd>1</dd> <dt>Bit 2:</dt><dd>1</dd> <dt>Bit 1:</dt><dd>1</dd> @@ -1928,7 +1928,7 @@ <t>THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR(S) "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</t> </section> <!-- Change Log -draft 16 - 2025-02-01 Bigbass Revised "Introduction" paragraphs. Clarified NUL characters in strings. Clarified header version should increase in future versions. Clarified INPUT_MOMENT packets contain only a single instance of input data. Clarified how multiple INPUT_CHUNK packets must be interpreted. Clarified INPUT_CHUNK indexes in TRANSITION packets refer to an individual byte (changed index type name.) Added a "Hold" option to INPUT_MOMENT packets to clarify how long the INPUT_MOMENT should be active for (useful for GB/C/A replays which expect the value to be held until the input changes.) +draft 16 - 2025-02-01 Bigbass Revised "Introduction" paragraphs. Clarified NUL characters in strings. Clarified header version should increase in future versions. Clarified INPUT_MOMENT packets contain only a single instance of input data. Clarified how multiple INPUT_CHUNK packets must be interpreted. Clarified INPUT_CHUNK indexes in TRANSITION packets refer to an individual byte (changed index type name.) Added a "Hold" option to INPUT_MOMENT packets to clarify how long the INPUT_MOMENT should be active for (useful for GB/C/A replays which expect the value to be held until the input changes.) Changed Genesis controller input formats. draft 15 - 2023-10-15 Bigbass Reordered SNES controller types |
