Skip to main content
← PSoXide SDK guides and examples · SDK f2fec1c301f1 · All Cargo features enabled; check feature gates before use.

Pacing

Enum Pacing 

Source
pub enum Pacing {
    NoAckWait,
    AckWait,
}
Expand description

How a transaction paces its bytes across the serial link.

Variants§

§

NoAckWait

Wait only for the RX FIFO between bytes; never wait for /ACK. This is the legacy timing: it works with fast (often third-party) controllers and in emulation, but desyncs slower original units (e.g. SCPH-1200) that pull /ACK low later. Exposed so a diagnostic can reproduce the failure side-by-side with Pacing::AckWait.

§

AckWait

Wait for the device’s /ACK (DSR) pulse after each non-final byte before clocking the next one. Matches the BIOS pacing, but corrupted frames on a third-party clone pad, so this IRQ-latched path remains diagnostic. Production polling observes live ACK without rewriting CTRL between bytes; the analog-enable handshake retains its separate fixed timing. Kept so on-console diagnostics can compare the legacy pacings.

Trait Implementations§

Source§

impl Clone for Pacing

Source§

fn clone(&self) -> Pacing

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Pacing

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Pacing

Source§

fn eq(&self, other: &Pacing) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Pacing

Source§

impl Eq for Pacing

Source§

impl StructuralPartialEq for Pacing

Auto Trait Implementations§

§

impl Freeze for Pacing

§

impl RefUnwindSafe for Pacing

§

impl Send for Pacing

§

impl Sync for Pacing

§

impl Unpin for Pacing

§

impl UnsafeUnpin for Pacing

§

impl UnwindSafe for Pacing

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.