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

zxbus more refactoring #13253

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from
Draft

zxbus more refactoring #13253

wants to merge 5 commits into from

Conversation

holub
Copy link
Contributor

@holub holub commented Jan 21, 2025

@cuavas that's almost everything you suggested, but I need:
#13202 - to complete tsconf
... and work on solution for the Sprinter, because it requires setup through ISA's io_space, which atm a bit challenging for me.

PS automerge is conflicting because it contains both merged and updated commits

@holub
Copy link
Contributor Author

holub commented Jan 21, 2025

Given none else but Sprinter needs this, I'll create local space with desired view there and install to ISA.
This will keep zxbus implementation clean.

@holub
Copy link
Contributor Author

holub commented Jan 22, 2025

something among this lines 4d4d9b2 for Sprinter/ISA but I can't figure out proper lifecycle where I can install device to io space.

@cuavas
Copy link
Member

cuavas commented Jan 22, 2025

Can you explain the slots on the Sprinter? It has an ISA slot and a ZX Bus slot? Does the ISA card’s I/O space appear directly in the Z80 I/O space? Does the ZX Bus slot share its I/O space with the ISA card? The ISA card is going to be unaware of the state of the “shadow” line on the ZX Bus slot, right?

@holub
Copy link
Contributor Author

holub commented Jan 22, 2025

Can you explain the slots on the Sprinter? It has an ISA slot and a ZX Bus slot? Does the ISA card’s I/O space appear directly in the Z80 I/O space? Does the ZX Bus slot share its I/O space with the ISA card? The ISA card is going to be unaware of the state of the “shadow” line on the ZX Bus slot, right?

It has only 2 or 4 ISA slots. But you can use adapter and put zxbus cards to it.
But you can't use zxbus devices same way as in zxspectum. You communicate with ISA through the memory and this IO is redirected to zxbus cards

@holub
Copy link
Contributor Author

holub commented Jan 22, 2025

Regarding DOS signal... Not all clones have it. Card can "define" it based on the MEMR. But I don't really want to share mem with zxbus (at least now without necessity as it makes whole emulation much slower)
As of now we only have smuc card which cares about DOS in zxbus - and it's only supported in Scorpion, so I split it to separate config.

@holub holub force-pushed the zxbus-refactoring branch from 28a719e to 4d4d9b2 Compare January 24, 2025 21:02
@holub
Copy link
Contributor Author

holub commented Jan 25, 2025

Hold on looking at Sprinter part. I'm adding isa_zxbus card for adapter. Will see if it works.

@holub
Copy link
Contributor Author

holub commented Jan 25, 2025

@cuavas when ever you have time, can you check please zxbus_adapter? Looks like all installations happen on time now but for some reason reads and writes are unmaped now.

@holub holub force-pushed the zxbus-refactoring branch from 54ed274 to 3ee33a7 Compare January 25, 2025 23:51
@holub
Copy link
Contributor Author

holub commented Jan 26, 2025

I see m_address_mask == 0 and not sure how to fix it

@holub
Copy link
Contributor Author

holub commented Jan 26, 2025

ready for review. just waiting for #13253

@holub holub force-pushed the zxbus-refactoring branch from 2278b2e to b52cc95 Compare January 26, 2025 02:01
@holub holub force-pushed the zxbus-refactoring branch from b52cc95 to 5e2e259 Compare January 26, 2025 02:14
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.

2 participants