-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
DEV9: various fixes for ATA Identify #10514
Conversation
TBH whole HDDInfo should be rewritten in accordance to the provided actual hdd response and in accordance to the ATA-7 specs: |
Looking at your provided HDD Identity dump, the original HDD reports more obsolete/retired fields then we do. As for providing fixed values. you can where it makes sense to (i.e. fixed values for default CHS fields as we are always >8GB) As far as I can see, we aren't missing anything required for ATAPI-7, And comparing our Identity to the dump, I don't think we aren't too far off that, The most significant thing to me seems to be feature support. |
Yes, currently pcsx2 correctly emulates everything (just MDMA modes doesnt work properly, cant figure out why). What I would like to say that the codebase is overcomplicated. CHS and sdma modes are retired for example.
Yes, because HDD itself is manufactured with ATAPI-6 standard (bit 6 in word 80), while ps2 itself supports ATAPI-7. |
Found the issue, I can address that in a PR once this has been merged. I'll also remove SDMA support as original hardware lacks it
I somewhat doubt that having CHS and SDMA support contribute much to code complexity here I am hesitant to remove things that original hardware support, however, we don't implement read/writes in CHS mode and I've yet to see an issue report about anything needing it. If you are dead set on removing CHS support then you can propose that as a separate standalone pr |
f4d0208
to
8307edd
Compare
Nice |
72a3f94
to
c05d10f
Compare
improved 48-bit addressing UDMA mode now set correctly MDMA0 mode now set correctly fixed user addressable sectors limit
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Noted Codacy issues are pre-existing
Nice work folks |
UDMA mode now set correctly
MDMA0 mode now set correctly
fixed user addressable sectors limit
Description of Changes
In continuation for #10427 as hdd size still wasnt set properly everywhere.
Rationale behind Changes
Fix critical values in ATA Identify response.
Suggested Testing Steps
Can be tested with https://github.com/ps2homebrew/PS2HDDTester/releases . After changes it can properly run UDMA tests and reports correct disk size for large disks:
Below attached ATA Identify response from one of the Sony original PS2 drives for the research purposes.
HDD_IDentify.bin.zip