-
Notifications
You must be signed in to change notification settings - Fork 26
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
New Type Proposal: Code PageBank Word Pointer #61
Comments
however, I'm working on a rewrite of the data model in the 3.x branch, and one of the big items that changed there is, it's very easy to add new annotation types by just deriving from the I think it's going to be a while til 3.x is ready though, there's a lot to tie up and refactor still, but, I think this kind of thing could be great. if I'm hearing you right, I'd also be interested. it'd be cool to also have a way to mark out table start and end so that Diz could show you all the possible places it can jump to. or also, was thinking about adding 'example' annotations to stuff like this, so Diz could tell you things like 'this jump has been observed during gameplay runs and is TYPICALLY going to go here- or here- depending on i.e. which spell is being cast / etc' |
Thinking out loud... example of what deriving a new annotation type can look like in the future: the new data model also has the concept of regions, that could probably be useful for marking the tables as well. Currently, that Region concept is being used for things like defining a sequence of bytes as the bytes from a ROM file, then mapping that byte sequence via SNES mappings [like HiRom] into a parent region (i.e. the SNES address space, which is a region) So, one approach could be, a new region could be derived that marks the bytes within as being associated with some particular Jxx instruction, and it can have data that marks up the way the bytes within it are used to get a final IA address. or... something. |
A typically used indexed-indirect-* Jxx instruction will reference a table of addresses within the current PBR with an offset.
It would be really helpful to have an annotation for a pointer that allows inference of the IA from the code page, and by extension the 'T' navigation, to use that PBR as the high byte of the long IA.
Further specification could allow for this to be identified as an opcode IA, but I'll take what I can get.
The text was updated successfully, but these errors were encountered: