On Sunday, 8 July 2018 at 20:27:34 UTC, Stijn Herreman wrote:
I should point out that I only have a vague idea of what I'm doing, I tried things until it compiled and worked (at first glance). If there are any docs that properly explain the casting of pointers, I'd appreciate the links.

I found the following works as desired:

environment.d

    public __gshared header* GPT_header;
    public __gshared partition_entry* GPT_entries;

main.d

    GPT_header = cast(header*)0x00007e00;
    GPT_entries = cast(partition_entry*)0x00008000;

That still lets me access GPT_entries with an index, e.g. GPT_entries[0]. Is this how it's supposed to be done, or is there a better way still?

Reply via email to