diff options
Diffstat (limited to 'zig-wad/main.zig')
| -rw-r--r-- | zig-wad/main.zig | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/zig-wad/main.zig b/zig-wad/main.zig new file mode 100644 index 0000000..4d1364e --- /dev/null +++ b/zig-wad/main.zig | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | const std = @import("std"); | ||
| 2 | |||
| 3 | const WADHeader = struct { identification: [4]u8 }; | ||
| 4 | |||
| 5 | pub fn main() !void { | ||
| 6 | var file = try std.fs.cwd().openFile("doom.wad", .{}); | ||
| 7 | defer file.close(); | ||
| 8 | |||
| 9 | var buffer = try std.heap.page_allocator.alignedAlloc(u8, @alignOf(WADHeader), @sizeOf(WADHeader)); | ||
| 10 | defer std.heap.page_allocator.free(buffer); | ||
| 11 | |||
| 12 | _ = try file.read(buffer); | ||
| 13 | |||
| 14 | var header: *const WADHeader = @as(*const WADHeader, @ptrCast(buffer.ptr)); | ||
| 15 | std.debug.print("WAD Type: {s}\n", .{header.identification}); | ||
| 16 | } | ||
