From e3147fb48be4f55b2688e664bb66be5143eda2d1 Mon Sep 17 00:00:00 2001 From: bigbass1997 Date: Sat, 1 Feb 2025 23:40:31 -0600 Subject: Changed Genesis controller input format. Further clarified INPUT_CHUNK usage. --- docs/latest/draft-tasd-spec.html | 42 +++++++++++------------ docs/latest/draft-tasd-spec.txt | 49 ++++++++++++++++----------- docs/tasd-spec-0001/draft-tasd-spec-0001.html | 42 +++++++++++------------ docs/tasd-spec-0001/draft-tasd-spec-0001.txt | 49 ++++++++++++++++----------- 4 files changed, 100 insertions(+), 82 deletions(-) (limited to 'docs') diff --git a/docs/latest/draft-tasd-spec.html b/docs/latest/draft-tasd-spec.html index 79efc1e..a216583 100644 --- a/docs/latest/draft-tasd-spec.html +++ b/docs/latest/draft-tasd-spec.html @@ -3363,7 +3363,7 @@ li > p:last-of-type:only-child {

All INPUT_CHUNK packets with corresponding Port values in the TASD file MUST be in chronological order, where earlier inputs in the TAS movie console replay are earlier in the TASD file and later inputs in the TAS movie console replay are later in the TASD file. If there are more than one INPUT_CHUNK packets for a specific Port, the input data MUST be interpreted as if all their contents were concatenated into a single INPUT_CHUNK packet. As such, a single INPUT_CHUNK packet MAY contain up to every input of a TAS movie console replay and MAY contain fewer than every input of a TAS movie console replay.

The input data contained in Inputs is divided up based on the PORT_CONTROLLER type corresponding to the Port number. Refer to Section 5 for each available type and the number of bytes used for each instance of controller input. The PORT_CONTROLLER type MAY be changed using TRANSITION packets, which MAY change the interpretation of the input data until either the end of the replay or until the next PORT_CONTROLLER transition.

-

+

Each instance of controller input SHOULD 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 MAY 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 MUST remain held until the end of the filter period.

@@ -5075,35 +5075,35 @@ li > p:last-of-type:only-child {

Octet 0

Bit 7:
-
/Up +
/C
Bit 6:
-
/Down +
/B
Bit 5:
-
/Left +
/Right
Bit 4:
-
/Right +
/Left
Bit 3:
-
/B +
/Down
Bit 2:
-
/C +
/Up
Bit 1:
-
/A +
/Start
Bit 0:
-
/Start +
/A
@@ -5116,54 +5116,54 @@ li > p:last-of-type:only-child {

Octet 0

Bit 7:
-
/Up +
/C
Bit 6:
-
/Down +
/B
Bit 5:
-
/Left +
/Right
Bit 4:
-
/Right +
/Left
Bit 3:
-
/B +
/Down
Bit 2:
-
/C +
/Up
Bit 1:
-
/A +
/Start
Bit 0:
-
/Start +
/A

Octet 1

Bit 7:
-
/Z +
/Mode
Bit 6:
-
/Y +
/X
Bit 5:
-
/X +
/Y
Bit 4:
-
/Mode +
/Z
Bit 3:
diff --git a/docs/latest/draft-tasd-spec.txt b/docs/latest/draft-tasd-spec.txt index ba5b0b9..6903ec8 100644 --- a/docs/latest/draft-tasd-spec.txt +++ b/docs/latest/draft-tasd-spec.txt @@ -1439,6 +1439,15 @@ Table of Contents of the input data until either the end of the replay or until the next PORT_CONTROLLER transition. + Each instance of controller input *SHOULD* 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 *MAY* 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 *MUST* remain held until the end of the filter + period. 4.3.5.2. INPUT_MOMENT Packet @@ -2212,14 +2221,14 @@ Table of Contents *Octet 0* - Bit 7: /Up - Bit 6: /Down - Bit 5: /Left - Bit 4: /Right - Bit 3: /B - Bit 2: /C - Bit 1: /A - Bit 0: /Start + Bit 7: /C + Bit 6: /B + Bit 5: /Right + Bit 4: /Left + Bit 3: /Down + Bit 2: /Up + Bit 1: /Start + Bit 0: /A 5.8.2. Genesis (Mega Drive) 6-Button @@ -2227,21 +2236,21 @@ Table of Contents *Octet 0* - Bit 7: /Up - Bit 6: /Down - Bit 5: /Left - Bit 4: /Right - Bit 3: /B - Bit 2: /C - Bit 1: /A - Bit 0: /Start + Bit 7: /C + Bit 6: /B + Bit 5: /Right + Bit 4: /Left + Bit 3: /Down + Bit 2: /Up + Bit 1: /Start + Bit 0: /A *Octet 1* - Bit 7: /Z - Bit 6: /Y - Bit 5: /X - Bit 4: /Mode + Bit 7: /Mode + Bit 6: /X + Bit 5: /Y + Bit 4: /Z Bit 3: 1 Bit 2: 1 Bit 1: 1 diff --git a/docs/tasd-spec-0001/draft-tasd-spec-0001.html b/docs/tasd-spec-0001/draft-tasd-spec-0001.html index 79efc1e..a216583 100644 --- a/docs/tasd-spec-0001/draft-tasd-spec-0001.html +++ b/docs/tasd-spec-0001/draft-tasd-spec-0001.html @@ -3363,7 +3363,7 @@ li > p:last-of-type:only-child {

All INPUT_CHUNK packets with corresponding Port values in the TASD file MUST be in chronological order, where earlier inputs in the TAS movie console replay are earlier in the TASD file and later inputs in the TAS movie console replay are later in the TASD file. If there are more than one INPUT_CHUNK packets for a specific Port, the input data MUST be interpreted as if all their contents were concatenated into a single INPUT_CHUNK packet. As such, a single INPUT_CHUNK packet MAY contain up to every input of a TAS movie console replay and MAY contain fewer than every input of a TAS movie console replay.

The input data contained in Inputs is divided up based on the PORT_CONTROLLER type corresponding to the Port number. Refer to Section 5 for each available type and the number of bytes used for each instance of controller input. The PORT_CONTROLLER type MAY be changed using TRANSITION packets, which MAY change the interpretation of the input data until either the end of the replay or until the next PORT_CONTROLLER transition.

-

+

Each instance of controller input SHOULD 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 MAY 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 MUST remain held until the end of the filter period.

@@ -5075,35 +5075,35 @@ li > p:last-of-type:only-child {

Octet 0

Bit 7:
-
/Up +
/C
Bit 6:
-
/Down +
/B
Bit 5:
-
/Left +
/Right
Bit 4:
-
/Right +
/Left
Bit 3:
-
/B +
/Down
Bit 2:
-
/C +
/Up
Bit 1:
-
/A +
/Start
Bit 0:
-
/Start +
/A
@@ -5116,54 +5116,54 @@ li > p:last-of-type:only-child {

Octet 0

Bit 7:
-
/Up +
/C
Bit 6:
-
/Down +
/B
Bit 5:
-
/Left +
/Right
Bit 4:
-
/Right +
/Left
Bit 3:
-
/B +
/Down
Bit 2:
-
/C +
/Up
Bit 1:
-
/A +
/Start
Bit 0:
-
/Start +
/A

Octet 1

Bit 7:
-
/Z +
/Mode
Bit 6:
-
/Y +
/X
Bit 5:
-
/X +
/Y
Bit 4:
-
/Mode +
/Z
Bit 3:
diff --git a/docs/tasd-spec-0001/draft-tasd-spec-0001.txt b/docs/tasd-spec-0001/draft-tasd-spec-0001.txt index ba5b0b9..6903ec8 100644 --- a/docs/tasd-spec-0001/draft-tasd-spec-0001.txt +++ b/docs/tasd-spec-0001/draft-tasd-spec-0001.txt @@ -1439,6 +1439,15 @@ Table of Contents of the input data until either the end of the replay or until the next PORT_CONTROLLER transition. + Each instance of controller input *SHOULD* 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 *MAY* 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 *MUST* remain held until the end of the filter + period. 4.3.5.2. INPUT_MOMENT Packet @@ -2212,14 +2221,14 @@ Table of Contents *Octet 0* - Bit 7: /Up - Bit 6: /Down - Bit 5: /Left - Bit 4: /Right - Bit 3: /B - Bit 2: /C - Bit 1: /A - Bit 0: /Start + Bit 7: /C + Bit 6: /B + Bit 5: /Right + Bit 4: /Left + Bit 3: /Down + Bit 2: /Up + Bit 1: /Start + Bit 0: /A 5.8.2. Genesis (Mega Drive) 6-Button @@ -2227,21 +2236,21 @@ Table of Contents *Octet 0* - Bit 7: /Up - Bit 6: /Down - Bit 5: /Left - Bit 4: /Right - Bit 3: /B - Bit 2: /C - Bit 1: /A - Bit 0: /Start + Bit 7: /C + Bit 6: /B + Bit 5: /Right + Bit 4: /Left + Bit 3: /Down + Bit 2: /Up + Bit 1: /Start + Bit 0: /A *Octet 1* - Bit 7: /Z - Bit 6: /Y - Bit 5: /X - Bit 4: /Mode + Bit 7: /Mode + Bit 6: /X + Bit 5: /Y + Bit 4: /Z Bit 3: 1 Bit 2: 1 Bit 1: 1 -- cgit v1.2.3