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

support for the o65 output format #38

Open
ProxyPlayerHD opened this issue May 5, 2024 · 2 comments
Open

support for the o65 output format #38

ProxyPlayerHD opened this issue May 5, 2024 · 2 comments

Comments

@ProxyPlayerHD
Copy link

the o65 file format is basically a miniature version of ELF. it supports 2 segments (text and data) and full relocation.
it was originally created to allow 6502 based OSes to load programs without having to compile/assemble them for any specific memory region, as they can easily be relocated at runtime. (unlike CP/M for the 8080 for example)
that's also why they didn't just use ELF, because ELF is a lot more difficult to parse for an 8-bit system. later it also started getting used for other CPUs like the 65816, Z80, 8080, 80286, 6800 and compatibles, etc. it could also be used for the 68000.

so yea that's why i would like to see it being supported by the linker as an output format. it's actively being used (also meaning that then Calypsi C can be used to write applications for OSes like GeckOS, LUNIX, FUZIX, etc), and while it's more complex than raw binary or PGZ, it allows for full relocation without being as complex as ELF.
so it's just a nice middle ground.

@hth313
Copy link
Owner

hth313 commented May 5, 2024

I added a ticket about it, but the list is rather long at this point.

I have done a couple of similar output format, for AmigaOS and TOS, but they appear to have gained any real use. Some Apple IIgs people expressed interest in having executable file format support, but when I mentioned that they would need to provide some active board support project from their community for me to consider it, the interest seemed to vanish.

I suspect the OSes you mentioned also would need board support to be included, so I wonder what the plan is with that?

@ProxyPlayerHD
Copy link
Author

not entirely sure about board support. the OSes are mainly for either custom made SBCs or existing retro systems. so the potential amount of board is basically infinite. (unlike something like PGZ for the F256 for example, which is like 1 format for 1 board).
and o65 itself is very OS-independent (similar to ELF) which is why i think it would make for a nice addition regardless of actual OS support....

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

No branches or pull requests

2 participants