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

Update display output of emulator while debugging. #830

Open
TheStruggleForAntiSpaghetti opened this issue Feb 16, 2025 · 9 comments
Open

Comments

@TheStruggleForAntiSpaghetti

Hello.

The display of the emulator doesn't seem to update while debugging. Is there a way to have it update immediately?

@Dotneteer
Copy link
Owner

The emulator's display follows the virtual electron beam that renders the screen. It means that a particular screen part (for example, writing into the screen memory) will be refreshed when the virtual electron beam scans the updated screen part next time.

Nonetheless, I understand your request to implement tooling that displays the screen as if the CPU stopped, but the ULA would not and renders the entire screen. For example, if you write something to address $4000, you want to see the change immediately, even using step-by-step execution (while debugging).

Is this what you want to have? If so, I file your request in my KliveIDE backlog!

@TheStruggleForAntiSpaghetti
Copy link
Author

Thank you for your response.
Indeed, it's when stepping through the code. Perhaps an option in the emulator windows to quickly toggle it on/off?

By the way, it didn't feel good to me to go directly to the the "issue" I'd like to raise without first complimenting you on the fantastic job you already did with Klive. It was more that it seems common practice to so.
But thank you very much. It's already been a while since I last checked it out, and it has developed quite nicely.

I don't have so much development time these days, but to check it out more thoroughly I'll try to use it for a project that I'm working on as a use-case and give feedback as I go.

@Dotneteer
Copy link
Owner

I added a backlog item to create such a feature. Do not feel bad because of reporting an issue! You can reach me directly at dotneteer@hotmail.com.

@Dotneteer
Copy link
Owner

I'm working on this feature. Hopefully, it will be available next week.

@Dotneteer
Copy link
Owner

I have some progress with the Shadow Screen feature. Soon, I will issue a private build for your test. Do you use Windows, Mac, or Linux?

You can find more info about this feature-to-be-released: https://dotneteer.github.io/kliveide/howto/shadow-screen

@Dotneteer
Copy link
Owner

I have just uploaded private builds with the Shadow Screen feature. You can download them from here: https://1drv.ms/f/s!AqpbKz19ddp5pPhnyMaLSBXRXrYANw?e=iIAYAC

@TheStruggleForAntiSpaghetti
Copy link
Author

Thank you for the build. I'm on Windows 10 x64.

I've installed it, and stepped through a simple routine that writes to the screen, but the screen isn't updated. Is there an option I need to enable first?

Image

@TheStruggleForAntiSpaghetti
Copy link
Author

Found the "Shadow Screen" button in the emulator window and the screen now indeed updates when written to. Nice work.
Because of the name, I confused it with the 128k 2nd screen memory as that's also sometimes called shadow screen.

What is the reason for naming it this way? I'd expect more of an "instant screen updates" name.

I'll test the feature more as I go.

@Dotneteer
Copy link
Owner

Thanks for the naming suggestion. I will rename the feature accordingly.

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

2 participants