chore: add ZigGBA
Also get a ZigGBA implementation of first.gba working
This commit is contained in:
		
							
								
								
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| [submodule "lib/ZigGBA"] | ||||
| 	path = lib/ZigGBA | ||||
| 	url = https://github.com/wendigojaeger/ZigGBA | ||||
							
								
								
									
										33
									
								
								build.zig
									
									
									
									
									
								
							
							
						
						
									
										33
									
								
								build.zig
									
									
									
									
									
								
							| @@ -1,34 +1,7 @@ | ||||
| const std = @import("std"); | ||||
| const GBABuilder = @import("lib/ZigGBA/GBA/builder.zig"); | ||||
|  | ||||
| pub fn build(b: *std.build.Builder) void { | ||||
|     // Standard target options allows the person running `zig build` to choose | ||||
|     // what target to build for. Here we do not override the defaults, which | ||||
|     // means any target is allowed, and the default is native. Other options | ||||
|     // for restricting supported target set are available. | ||||
|     const target = b.standardTargetOptions(.{}); | ||||
|  | ||||
|     // Standard release options allow the person running `zig build` to select | ||||
|     // between Debug, ReleaseSafe, ReleaseFast, and ReleaseSmall. | ||||
|     const mode = b.standardReleaseOptions(); | ||||
|  | ||||
|     const exe = b.addExecutable("test-roms", "src/main.zig"); | ||||
|     exe.setTarget(target); | ||||
|     exe.setBuildMode(mode); | ||||
|     exe.install(); | ||||
|  | ||||
|     const run_cmd = exe.run(); | ||||
|     run_cmd.step.dependOn(b.getInstallStep()); | ||||
|     if (b.args) |args| { | ||||
|         run_cmd.addArgs(args); | ||||
|     } | ||||
|  | ||||
|     const run_step = b.step("run", "Run the app"); | ||||
|     run_step.dependOn(&run_cmd.step); | ||||
|  | ||||
|     const exe_tests = b.addTest("src/main.zig"); | ||||
|     exe_tests.setTarget(target); | ||||
|     exe_tests.setBuildMode(mode); | ||||
|  | ||||
|     const test_step = b.step("test", "Run unit tests"); | ||||
|     test_step.dependOn(&exe_tests.step); | ||||
|     const exe = GBABuilder.addGBAExecutable(b, "first", "src/first.zig"); | ||||
|     _ = exe; | ||||
| } | ||||
|   | ||||
							
								
								
									
										1
									
								
								lib/ZigGBA
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								lib/ZigGBA
									
									
									
									
									
										Submodule
									
								
							 Submodule lib/ZigGBA added at 713a22f6d0
									
								
							
							
								
								
									
										18
									
								
								src/first.zig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								src/first.zig
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| const GBA = @import("gba").GBA; | ||||
| const Mode3 = @import("gba").Mode3; | ||||
| const LCD = @import("gba").LCD; | ||||
|  | ||||
| export var gameHeader linksection(".gbaheader") = GBA.Header.setup("FIRST", "AFSE", "00", 0); | ||||
|  | ||||
| pub fn main() noreturn { | ||||
|     LCD.setupDisplayControl(.{ | ||||
|         .mode = .Mode3, | ||||
|         .backgroundLayer2 = .Show, | ||||
|     }); | ||||
|  | ||||
|     Mode3.setPixel(120, 80, GBA.toNativeColor(31, 0, 0)); | ||||
|     Mode3.setPixel(136, 80, GBA.toNativeColor(0, 31, 0)); | ||||
|     Mode3.setPixel(120, 96, GBA.toNativeColor(0, 0, 31)); | ||||
|  | ||||
|     while (true) {} | ||||
| } | ||||
| @@ -1,9 +0,0 @@ | ||||
| const std = @import("std"); | ||||
|  | ||||
| pub fn main() anyerror!void { | ||||
|     std.log.info("All your codebase are belong to us.", .{}); | ||||
| } | ||||
|  | ||||
| test "basic test" { | ||||
|     try std.testing.expectEqual(10, 3 + 7); | ||||
| } | ||||
		Reference in New Issue
	
	Block a user