Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

machine/ncr5385.cpp: delay after XFI_OUT_ACK #13302

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

Elektraglide
Copy link
Contributor

Without a delay after state XFI_OUT_ACK, tek4404 cannot load anything.
Trial and error determined a delay of <3.5us does not work, more than 3.5us does work.
I dont understand exactly why, but tek4404 scsi code just never sees the state change without this.

[I appreciate code changes and not understanding root-cause are not great, but this does resolve all issues with scsi for tek4404.]

@Elektraglide Elektraglide changed the title Ncr5385 delay machine/ncr5385.cpp Jan 30, 2025
@Elektraglide Elektraglide changed the title machine/ncr5385.cpp machine/ncr5385.cpp: delay after XFI_OUT_ACK Jan 30, 2025
@Elektraglide
Copy link
Contributor Author

OK, found the smoking gun in the tek4404 bootrom. It does not expect the signal to arrive so quickly so clears the variable tracking IRQ_SCSI_complete and then waits for it to be set. which it now never will be. The delay means it has time to clear IRQ_SCSI_complete and then go into its busy wait loop.

Screenshot 2025-01-31 at 07 40 56

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant