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

sinclair/tsconf.cpp: Added TR-DOS with virutal drives #13202

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

Conversation

holub
Copy link
Contributor

@holub holub commented Jan 9, 2025

No description provided.

Comment on lines 79 to 83
{
map(0x0000, 0xffff).lrw8(
NAME([this](offs_t offset) { return m_ioext.read_byte((m_beta->dos_io_r() << 16) | offset); }),
NAME([this](offs_t offset, u8 data) { m_ioext.write_byte((m_beta->dos_io_r() << 16) | offset, data); }));
}
Copy link
Member

Choose a reason for hiding this comment

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

Can you find a way to do this with a memory_view, rather than effectively creating an address_map_bank_device in all but name?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

That is mainly to support configuration through zxbus. I took this approach previously because zxbus is required to handle 17 bit IO where all 3 combinations are available: shadow only, only !shadow, and both.
It's not clear if such case is possible to implement using banks or memviews.

Copy link
Member

Choose a reason for hiding this comment

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

Could you have a view with two entries, one for shadow and one for !shadow, then have devices install to one or both of the entries? Are there actually cases where something uses the 17th bit as an address bit rather than just a select bit?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sorry, it still not clear for me how can we pull desired view in zxbus when installing device in IO space?

m_iospace->install_device(addrstart, addrend, device, map, unitmask);

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I've switched this PR to the views. I'll revisit zxbus mapping later as it's not critical for this work.

src/mame/sinclair/tsconf_beta.h Outdated Show resolved Hide resolved
src/mame/sinclair/tsconf_beta.h Outdated Show resolved Hide resolved
src/mame/sinclair/tsconf_beta.h Outdated Show resolved Hide resolved
src/mame/sinclair/tsconf_beta.cpp Outdated Show resolved Hide resolved
@holub holub requested a review from cuavas January 10, 2025 14:58
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