What is this screen?

Get technical support from the community & developers with specific X16 programs if you can't find the solution elsewhere
(for general non-support related chat about programs please comment directly under the program in the software library)
Post Reply
nulcow
Posts: 7
Joined: Mon Oct 23, 2023 11:48 pm

What is this screen?

Post by nulcow »

I have this function:

Code: Select all

void (*jumpPtr)(void) = (void (*)())0x8001;
And before you ask how this works, I don't know either. All I know is that it's supposed to jump to $8001 in memory.

When I make a program that calls this function and run it in the emulator, it gives me this screen:
Screenshot 2023-10-24 at 10.35.07 AM.png
Screenshot 2023-10-24 at 10.35.07 AM.png (316.53 KiB) Viewed 3898 times
It only triggers sometimes and I can't figure out when. Sometimes the program will just exit normally without showing this screen. What does this screen actually do?
nulcow, software developer and computer artist.
User avatar
JimmyDansbo
Posts: 476
Joined: Sun Apr 26, 2020 8:10 pm
Location: Denmark
Contact:

Re: What is this screen?

Post by JimmyDansbo »

You are entering the monitor program that is stored in ROM.
This usually happens when your program "runs off into the wild"

If you just "call" address $8001 without knowing what is there, strange stuff is most certainly going to happen ;-)
Visit my Github repo
or my personal site with CX16/C64/6502 related information.
Feel free to contact me regarding any of my projects or even about meeting up somewhere near Denmark
DragWx
Posts: 342
Joined: Tue Mar 07, 2023 9:07 pm

Re: What is this screen?

Post by DragWx »

You can think of the monitor as the "Oh no, the program crashed" screen, since that's when most people are going to see it. :P

The purpose of the monitor is to allow programmers to check/modify what's currently in RAM, whether that's program variables, data, or actual code, in order to help debug a program. You can go back to BASIC by typing an X and pressing enter, but it probably won't resume the program.
Post Reply