| |
AlexC
Registered: Jan 2008 Posts: 299 |
Important vectors values across different C64 versions
Can anyone tell me if MAIN, NMI, CBINV, RESET, ILOAD and ISAVE vectors are the same across all C64 verions or are they different? Plain hardware after power-on case (so no cartridges involved) only. |
|
| |
tlr
Registered: Sep 2003 Posts: 1790 |
Quote: Can anyone tell me if MAIN, NMI, CBINV, RESET, ILOAD and ISAVE vectors are the same across all C64 verions or are they different? Plain hardware after power-on case (so no cartridges involved) only.
Might depend on how wide you definition of C64 versions is but AFAIK they are the same. |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Disclaimer: I sense a probable XY problem here.
The vectors exist precisely for the reason that they may point to arbitrary addresses but are located at a fixed memory location themselves, putting indirect jumps to good use. So you shouldn't expect them to have specific fixed values.
Why are you asking, though? :) |
| |
AlexC
Registered: Jan 2008 Posts: 299 |
I'd assume that those vectors are always the same on stock C64 without cartridge (as stock C64 I define one with Commodore ROMs, not Jiffy DOS installed for example). If the assumption is true than those vectors can be used to detect certain system state assuming vectors has been altered before my code starts. I have an very rouge idea for some code but it is too early to discuss it yet.
Thank you for your help - I do appreciate it :) |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
Depending on what exactly you want to achieve by checking the vectors, you can infer some things even without checking for specific values.
Cartridges or things like software speeders typically let the LOAD and SAVE vectors point to code outside the ROM areas.
Utility cartridges like Action Replay have the pointers point to IO space ($dexx or $dfxx), and software speeders or IEEE-488 interface cartridges would let the pointers point to RAM, such as $8xxx or $cxxx or anything below $0400.
This is likely very similar for the other vectors in RAM. |