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

Need help integrating Spectranet #14

Open
desertkun opened this issue Oct 27, 2022 · 0 comments
Open

Need help integrating Spectranet #14

desertkun opened this issue Oct 27, 2022 · 0 comments

Comments

@desertkun
Copy link

Hello. Nice little emulator! I want this to support Spectranet cartridge, which implements networking functionality.

Fuse emulator supports it. The idea is, spectranet has Wiznet W5100 TCP/IP controller on board, which implements functionality for sockets (tcp/udp), and allows access to it by paging-in first 16k of memory to itself. The project is too complex to explain it in few words.

Anyway, I am looking at the code and it seems it can only do simple 16k mapping, e.g. it maps a certain page to a certain section on machineMemory, and these seem to operate in 16k ranges. Spectranet, however, can page-in two subpages (4k...8k, and 8k...12k regions) to its giant 128k ram and 128k rom, and 32k for W5100 chip. This page ultimately explains it.

So I am asking if you can give me some hints on how to can add support for Spectranet on your emulator, mainly from memory standpoint. It would allow internet-enabled programs to be run straight on a browser.

Don't want perf to degrade, so I am not sure if to downgrade 16k switching to 4k switching, and with regular code, switch 4 chunks at a time, or add a special Spectranet code that would additionally page-in the subpages, when spectranet is paged in.

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

No branches or pull requests

1 participant