From f4af0704125537ca7093835c16e2f664d3b60a0b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jo=C3=A3o=20Magalh=C3=A3es?= <joamag@gmail.com>
Date: Sat, 15 Apr 2023 23:19:34 +0100
Subject: [PATCH] feat: added gbprinter test ROM

---
 frontends/sdl/src/main.rs  |   3 ++-
 res/roms/test/gbprinter.gb | Bin 0 -> 32768 bytes
 2 files changed, 2 insertions(+), 1 deletion(-)
 create mode 100644 res/roms/test/gbprinter.gb

diff --git a/frontends/sdl/src/main.rs b/frontends/sdl/src/main.rs
index af3b82c5..d0aba46b 100644
--- a/frontends/sdl/src/main.rs
+++ b/frontends/sdl/src/main.rs
@@ -444,6 +444,7 @@ fn main() {
     // creates a new Game Boy instance and loads both the boot ROM
     // and the initial game ROM to "start the engine"
     let mut game_boy = GameBoy::new();
+    game_boy.attach_stdout_serial();
     game_boy.load_boot_default();
 
     // creates a new generic emulator structure then starts
@@ -451,7 +452,7 @@ fn main() {
     // ROM file and starts running it
     let mut emulator = Emulator::new(game_boy);
     emulator.start(SCREEN_SCALE);
-    emulator.load_rom(Some("../../res/roms/demo/pocket.gb"));
+    emulator.load_rom(Some("../../res/roms/test/gbprinter.gb"));
     emulator.toggle_palette();
     emulator.run();
 }
diff --git a/res/roms/test/gbprinter.gb b/res/roms/test/gbprinter.gb
new file mode 100644
index 0000000000000000000000000000000000000000..d977e91f4fadf2bd6dac94cdfbf222eb1964ac02
GIT binary patch
literal 32768
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

literal 0
HcmV?d00001

-- 
GitLab