Skip to content
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

Updated Roadmap #170

Open
7 of 9 tasks
WillLillis opened this issue Nov 15, 2024 · 4 comments
Open
7 of 9 tasks

Updated Roadmap #170

WillLillis opened this issue Nov 15, 2024 · 4 comments
Labels
tracker For organization purposes

Comments

@WillLillis
Copy link
Collaborator

WillLillis commented Nov 15, 2024

I've fallen behind on some of the feature requests lately as I've gotten more involved with some other projects and made the transition from student to working full time. There are several long outstanding requests that I'd really like to address sooner rather than later. I'm going to use this New and Improved™️ Roadmap issue to help organize these efforts going forward. Quick disclaimer, I won't be able to work much on this until next weekend.

Before 0.10.0 release:

In no particular order:

AVR Support (#74)

  • All of the documentation I've been able to find for this architecture has been in pdf form (i.e. here). I'd really like to avoid copying/pasting items out of the files manually, as this is error prone, tedious, etc. and doesn't transfer at all when a new version is published. I'm hoping pdf-extract will help here, but I need to spend some time with it to be sure.

  • Add instructions

  • Add registers (feat: add avr registers #206)

  • Add assembler directives (feat: add avr assembler #203)

6502 + CA65 Support (#169)

Masm64 (#72)

  • My current understanding of this is that we essentially need to zip some of the docs from asm-dude into the existing docs from the python opcodes project. See Support for MASM64 #72 (comment) for more details. This needs to be done in a repeatable way, so that if an update comes from the opcodes python project, we can pull that in and then replay the "zipping" on our local copy
  • Add Masm64 directives to x86-64 docs

Power ISA #147

Other

RISCV overhaul (#165)

  • The riscv-unified-db project looks very promising. Once it's more complete, I think we should be able to leverage this project to provide excellent riscv support.

General code cleanup

  • This one will never go away. Any kind of cleanup is good, but in particular some of our source files are getting a little too long for comfort. Some more splitting up would probably help with navigation and overall maintenance.
@WillLillis WillLillis added the tracker For organization purposes label Nov 15, 2024
@WillLillis WillLillis mentioned this issue Nov 15, 2024
13 tasks
@WillLillis WillLillis pinned this issue Nov 15, 2024
@Svarshick
Copy link
Contributor

Svarshick commented Dec 3, 2024

All of the documentation I've been able to find for this architecture has been in pdf form (i.e. here). I'd really like to avoid copying/pasting items out of the files manually, as this is error prone, tedious, etc. and doesn't transfer at all when a new version is published. I'm hoping pdf-extract will help here, but I need to spend some time with it to be sure.

Is there way to help you? I could make this work

@WillLillis
Copy link
Collaborator Author

All of the documentation I've been able to find for this architecture has been in pdf form (i.e. here). I'd really like to avoid copying/pasting items out of the files manually, as this is error prone, tedious, etc. and doesn't transfer at all when a new version is published. I'm hoping pdf-extract will help here, but I need to spend some time with it to be sure.

Is there way to help you? I could make this work

Any help would be greatly appreciated! If you could find a way to programmatically take in those pdfs (or some other up to date AVR docs source) and produce a more machine readable (csv, xml, json, etc) format with the pertinent information, that would speed things up considerably. This could be implemented in Rust or Python.

@Svarshick
Copy link
Contributor

Svarshick commented Dec 12, 2024

Any help would be greatly appreciated! If you could find a way to programmatically take in those pdfs (or some other up to date AVR docs source) and produce a more machine readable (csv, xml, json, etc) format with the pertinent information, that would speed things up considerably. This could be implemented in Rust or Python.

Hello
I found free time and made example of avr asm.xml file with pdfplumber in python.
It is just demonstration so it will be changed closer to the format like here (at least add opcodes)
Where should we store clocks and changed flags? I looked through your xml and found only opcodes and registers

@WillLillis
Copy link
Collaborator Author

Any help would be greatly appreciated! If you could find a way to programmatically take in those pdfs (or some other up to date AVR docs source) and produce a more machine readable (csv, xml, json, etc) format with the pertinent information, that would speed things up considerably. This could be implemented in Rust or Python.

Hello I found free time and made example of avr asm.xml file with pdfplumber in python. It is just demonstration so it will be changed closer to the format like here (at least add opcodes)

I'm so sorry I missed this! Thank you so much for taking the time to do this work, this looks very promising!

Where should we store clocks and changed flags? I looked through your xml and found only opcodes and registers

This is fairly open ended, for an existing example there's the z80 file. The format you currently have the example file looks good to me!

What were you planning on as your next steps? Once you feel this is ready for a look, feel free to open a PR to add your xml generation python code in a sibling directory to its z80 counterpart. I'm happy to add the necessary Rust pieces on top of that so we can land this soon! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tracker For organization purposes
Projects
None yet
Development

No branches or pull requests

2 participants