Skip to content

Comments

Add HP9133 disk drive#12561

Merged
cuavas merged 8 commits intomasterfrom
unknown repository
Jul 17, 2024
Merged

Add HP9133 disk drive#12561
cuavas merged 8 commits intomasterfrom
unknown repository

Conversation

@ghost
Copy link

@ghost ghost commented Jul 9, 2024

This adds the HP9133 disk drive, which was common with HP9000 200 and 300 systems. It also adds a sync acknowledge callback to the 6809, and multi sector read/write to wd2010.

Comment on lines 899 to 928
m_out_bdrq_cb(0);
complete_immediate(param);
if ((m_task_file[TASK_FILE_COMMAND] & 4) && m_task_file[TASK_FILE_SECTOR_COUNT] > 1) {
m_task_file[TASK_FILE_SECTOR_COUNT]--;
m_task_file[TASK_FILE_SECTOR_NUMBER]++;
read_sector(m_task_file[TASK_FILE_COMMAND]);
} else {
complete_immediate(param);
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use Allman formatting like the existing code in this file.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After finding all the various disk images required for DEC rainbow, i tried it, and it looks like DEC rainbow is no longer working with the wd2010 changes. So better drop this PR.

@ghost ghost closed this Jul 12, 2024
@cuavas
Copy link
Member

cuavas commented Jul 12, 2024

What was the reason for closing this?

@cuavas
Copy link
Member

cuavas commented Jul 12, 2024

After finding all the various disk images required for DEC rainbow, i tried it, and it looks like DEC rainbow is no longer working with the wd2010 changes. So better drop this PR.

Sorry, I missed this comment.

Does this PR actually cause the Rainbow to regress? It has always required some effort to get it to boot as the hardware isn’t understood properly. If it’s no more broken that it was before, that’s no big deal.

If the WD2010 do cause the Rainbow to regress, can we get the other parts of the PR isolated so the HP9133 card can be added without hard disk support until the WD2010 can be updated to pacify both it and the Rainbow?

@ghost
Copy link
Author

ghost commented Jul 13, 2024

After finding all the various disk images required for DEC rainbow, i tried it, and it looks like DEC rainbow is no longer working with the wd2010 changes. So better drop this PR.

Sorry, I missed this comment.

Does this PR actually cause the Rainbow to regress? It has always required some effort to get it to boot as the hardware isn’t understood properly. If it’s no more broken that it was before, that’s no big deal.

Well, without my changes i was at least able to low-level format the winchester disk in the rainbow, partition it and copy files to it. I wasn't able to from the winchester disk, but that maybe just user error. The DEC rainbow is quite different compared to normal XT's/PC's.

With my changes i'm not even able to LL format the disk - it immediately reports bad sectors on each track. I'm assuming the read/write sector callbacks are now called when they are not expected to get called.

If the WD2010 do cause the Rainbow to regress, can we get the other parts of the PR isolated so the HP9133 card can be added without hard disk support until the WD2010 can be updated to pacify both it and the Rainbow?

I think without a working WD2010/HDD the 9133 enter selftest fail mode, and you cannot even use the floppy drive in it. I'm away over the weekend, but let me look into the rainbow problem next week, and see whether i can make it work. I'll reopen the PR if i find a way to make both (HP9133 + rainbow) work.

Sven Schnelle added 7 commits July 15, 2024 07:25
With 256 bytes sector size on the HP9133, 17 sectors/track is not
enough. Instead 32 sectors/track are used.
The HP9133A selftests resets the WD2010 between tests. It seeks to a
certain cylinder, resets the WD2010, and issues a SCAN ID. It expects
the disk to be at the same track. Therefore reset the cylinder
position only during device_start.
Used in the HP9133A disk drive. Note that this uses more
states than obviously required because the HP firmware
checks DREQ going low after issuing a request, and high
again when data is actually required.

Signed-off-by: Sven Schnelle <svens@stackframe.org>
The HP 9133 disk drive imlements a DMA engine which is synchronized
with the CPU via sync instructions. This needs the BS/BA signals
to work correctly. Add a sync_acknowledge_write() callback.
This adds the HP9133 drive. A short description can be found
at http://www.hpmuseum.net/display_item.php?hw=255.

The 9133 D/H/L version are supported providing 15/20/40MB of disk
storage and one DSDD (630K) floppy drive.
The hp devices are working with hp98x6, so lets add them.
@ghost ghost reopened this Jul 15, 2024
@ghost
Copy link
Author

ghost commented Jul 15, 2024

I implemented multi sector read/writes now differently and verified that the DEC rainbow is still working with the changes.

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