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

Improving the 'D' command in the kernal monitor #185

Open
jwa1974 opened this issue Jan 7, 2025 · 2 comments
Open

Improving the 'D' command in the kernal monitor #185

jwa1974 opened this issue Jan 7, 2025 · 2 comments
Labels
new New report, not classified yet

Comments

@jwa1974
Copy link

jwa1974 commented Jan 7, 2025

Is your feature request related to a problem? Please describe.
This is not a problem as such, but more of an annoyance.

Describe the solution you'd like
Currently, when doing a disassembly ('D' command) in the kernal monitor, it will disassemble 32 bytes - if no range is given. In some situations the top most code will therefore be scrolled off the screen. The solution I think is to disassemble no more than a full screen. So, instead of disassembling a certain number of bytes, disassembling 24 lines would be better.

Describe alternatives you've considered
The patch included in this feature request will print 24 lines of code if no range is given. Regardless of the op sizes. The ranges will however still behave as before.

Examples:
D will disassemble 24 lines of code from the last address. New behaviour.

D xxxx will do the same as above, but from address xxxx. New behaviour.

D xxxx yyyy still disassembles from xxxx through yyyy. No change in behaviour.

So, for disassembling now, you can just do a 'D xxxx' and then subsequent 'D' commands. I find this much more efficient and to the point than the old behaviour.

Additional context
In reference to ROM 920409 code. Patch included.

disasm.patch

@jwa1974 jwa1974 added the new New report, not classified yet label Jan 7, 2025
@gurcei
Copy link
Collaborator

gurcei commented Jan 8, 2025

Wondering if in addition to this fix, we can also test for if we are in 80x50 mode, and if so, disassemble 49 lines of code?

@jwa1974
Copy link
Author

jwa1974 commented Jan 9, 2025

That's a great point, gurcei! There's the $D07B (DISPROWS) register that should be set to either 24 or 49, I guess. I could have a look at that. If there's no weird behaviour or so, it is dead simple to use as a line comparison.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new New report, not classified yet
Projects
None yet
Development

No branches or pull requests

2 participants