-
Notifications
You must be signed in to change notification settings - Fork 379
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
[Genesis core] CDL missing table jump data #2588
Comments
ok, checked the core, all PC relative data instructions uses direct memory read handlers, they has no CDL code. so this for sure affects all PC relative instructions. |
It will probably be a bit before I get to this. Are we saying that the genesis core (right now) doesn't support the D in CDL at all? |
No. |
MOVEQ XX,REG - fetches data operand at PC + 1 |
Got it. I wonder if this bears any similarity to #1760; if immediate/pc relative fetches occur very commonly in real code, then this might have an unacceptable speed loss for normal use. We'll see. |
we need to separate immediate operand fetches from PC relative addressing first i think. when I find any code that heavily abuses pc relative operands I will test if for sure, but doubt I can spot the difference on any current pc ;) |
Example. Game Toejam & Earl 2 (U)
here MOVE.W OFF(PC,D0.L),D0 logged as code
this opcode fetches one of the offsets in the table below
no table entries logged as data
so this one particular data fetch is missing from CDL (maybe there are others but this one I see for sure just now).
The text was updated successfully, but these errors were encountered: