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

Fix daynaport emulation regression (#1306) #1318

Merged
merged 13 commits into from
Nov 8, 2023
Merged

Fix daynaport emulation regression (#1306) #1318

merged 13 commits into from
Nov 8, 2023

Conversation

uweseimet
Copy link
Contributor

@uweseimet uweseimet commented Nov 8, 2023

Successfully tested by @benjamink.

uweseimet and others added 9 commits November 7, 2023 23:15
)

* Only build scsidump when building for the FULLSPEC board

* Only install scsidump manpage when building for the FULLSPEC board

* Only install scsidump binary when building for the FULLSPEC board

* Revert debug optimization back to -O0, -Og omits some information
) (#1317)

* Re-add CONNECT_TYPE_CONNECT_TYPE_AIBOM and CONNECT_TYPE_GAMERNIUM
* Fix MESSAGE OUT handling

* Update logging

* Add assertion
@uweseimet uweseimet changed the title Fix daynaport emulation regression (#1306) Fix daynaport emulation regression and remove obsolete work-around (#1306) Nov 8, 2023
@uweseimet uweseimet marked this pull request as ready for review November 8, 2023 15:34
@akuker
Copy link
Member

akuker commented Nov 8, 2023

I'd highly recommend testing this on a SE or older machine before merging. The "obsolete" work around was only needed for slower machines.

@uweseimet
Copy link
Contributor Author

@akuker Do you know any user who could run this test?

@benjamink
Copy link
Collaborator

@uweseimet I have a Mac SE as well. I'll see if this will work there later.

@uweseimet
Copy link
Contributor Author

uweseimet commented Nov 8, 2023

@benjamink Excellent! I will reset this PR to a draft for now, so that we can wait for your feedback.

@uweseimet uweseimet marked this pull request as draft November 8, 2023 19:06
@uweseimet
Copy link
Contributor Author

uweseimet commented Nov 8, 2023

Because the delay handling is not critical I am going to update the branch to only contain the actual fix. Regarding the delay I am going to create a separate ticket. If until the next release there is no use case (slow Mac) that requires the delay it should be removed. The comment in the sources does not mention slow Macs but sounds to me as if the Daynaport driver needs this delay. This is not necessarily the case, as the testing by @benjamink has shown. The work-around for 37 bytes (INQUIRY), on the other hand, is definitely needed, the latest tests and logs prove that. I will update the respective comment for one of the next PRs, so that it reflects the details on why this other work-around is required.
@benjamink When testing with your SE, please do not check out the tip of the issue_1306 branch, but commit c46d3b7 insteads.

@rdmark With this approach I don't see any reason not to merge. Only a single line has changed. Essentially, only one character ;-).

@uweseimet uweseimet changed the title Fix daynaport emulation regression and remove obsolete work-around (#1306) Fix daynaport emulation regression (#1306) Nov 8, 2023
@uweseimet uweseimet marked this pull request as ready for review November 8, 2023 22:58
Copy link

sonarqubecloud bot commented Nov 8, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

0.0% 0.0% Coverage
0.0% 0.0% Duplication

@benjamink
Copy link
Collaborator

I think I may need to come up with a new disk image for my Mac SE to work at all. I've been trying to boot my System 7.5.3 image that I've been using with my Performa 475 but it just freezes on the boot screen. I can boot up a System 6.0.8 image just fine but it doesn't have Daynaport drivers or anything like that installed yet. I'll work on this & see what I can come up with but it won't be right away.

Unless someone else has a pre-configured System 7.0.1 or something I could use???

@uweseimet
Copy link
Contributor Author

@benjamink Just take your time. The respective test can be done as part of a new ticket, which I will create (also see my comment above). As soon as I have set up the ticket (tomorrow) I will point it out to you, and any conversation can then happen as part of this new ticket.

@uweseimet uweseimet merged commit f90f8ea into develop Nov 8, 2023
@rdmark rdmark deleted the issue_1306 branch November 8, 2023 23:48
@rdmark
Copy link
Member

rdmark commented Nov 8, 2023

@uweseimet SGTM.

How about we aim for 11/11 (Saturday) for tagging & prepping the next release? I expect to have the time to spend on the image generation etc. on that day.

@benjamink
Copy link
Collaborator

@uweseimet I built c46d3b71545fd941db276be887f81b61a532237a & tried it on my Mac SE but it just freezes during boot. I built a current copy of develop (v23.10.1) & it works great on the Mac SE. So it looks like the delays are indeed important for older computers.

@uweseimet
Copy link
Contributor Author

uweseimet commented Nov 9, 2023

@benjamink In this case we will keep this delay, of course, but the current code location setting up this delay is not ideal, and there are other delays that also need verification. Would you be willing to help with improving that? There is already an existing ticket (#1287) for addressing this. The goal is verify which delay is actually needed, whether there is a better way to address the problem, and to add a comment to the sources explaining the reason for any delay that is not covered by the SCSI specification in detail. As we can see in #1098 some of these delays can actually cause compatibility issues.

@benjamink
Copy link
Collaborator

Yes, I can test. I moved the SE upstairs in anticipation of running more tests already 🙂

@uweseimet
Copy link
Contributor Author

@benjamink :-) I really appreciate your help. Let's continue this conversation in #1287, which is the respective ticket.

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.

DaynaPort networking no longer working after latest build of 'develop'
4 participants