Skip to content

Zig Tracking Issue #1

@GasInfinity

Description

@GasInfinity

⏰ - a separate issue must be opened when the relevant zig issue is closed

ziglang/zig#10392 - the 3DS OS (horizon) and its kernel (Kernel11 and Kernel9 to an extent) implement almost all relevant and useful functionality such as threading, process management, filesystem handling, ...

  • [-] start.zig, panic.zig and relevant modules are automatically imported
  • [-] non-linear heap page_allocator support in the zig std (depends on threading support for using the SbrkAllocator)
  • [⏰] threading support in the zig std (a.k.a: std.Thread.xxx() and thread sync primitives): 3dbrew relevant page
  • [⏰] fs support in the zig std (not supporting opening files from the std as you need to use a 'fs:XXX' service to open files and directories): 3dbrew relevant page
  • [⏰] time support in the zig std: 3dbrew relevant page for timestamps and GetSystemTick for Instant
  • [⏰] process support in the zig std (support Child spawning (doesn't make a lot of sense tho?)): 3dbrew relevant page
  • [⏰] net support in the zig std (similar problems as the fs support): 3dbrew relevant page

ziglang/zig#18604 - currently we're only logging return addresses on panics / errors (not really useful for non-technical users...).

ziglang/zig#25005 - 64-bit atomics are not supported even though we're in ARMv6K hardware (which has ldrexd/strexd). PR ziglang/zig#24548 rewrites atomic operation feature checking, where the new checks should be if it lands obviously.

PS 1: Zig 0.16.0 will introduce the new IO interface which seems to be the major and maybe only thing that would need to be implemented for std support.

Metadata

Metadata

Assignees

No one assigned

    Labels

    upstreamblocked due to something we depend on

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions