-
Notifications
You must be signed in to change notification settings - Fork 39
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
HD6303 aim, tim, oim wrong opcodes #5
Comments
This seems to be a known issue, which would require major work on the parser code. I found a workaround by PHF in the sourceforge repo, which I copied over into this github repo (in the release/2.20.12 branch). Basically, the workaround is to use macros 'aimd', 'aimx', 'oimd', 'oimx', etc. Example:
|
IMO makes perfect sense to close this then. |
I did a bit of looking at the code, and it seems to me that you would just need to add one or more "AF_*" flags, to handle the new addressing modes presented by these instructions. I did not look deep into the parser, but instead the definitions of the opcodes for the processor involved. Is it really such a hard thing to do this properly? |
Maybe I have jumped to conclusions to soon; reopening the bug now.... |
It's not just a matter of adding new AF_*. Off the top of my head... the parser is presently hard coded to take a comma and use the index after it to adjust the opcode address mode, rather than embed a value. Only one comma is expected. There's only one label/symbol per opcode. |
Dasm generates 71,0a instead of 71,0a,0a
https://www.jaapsch.net/psion/mcmnemnm.htm
I think aim should be coded as the following:
The text was updated successfully, but these errors were encountered: