@@ -425,18 +425,20 @@ gba_timer timer (
425
425
// Joypad
426
426
// //////////////////////////
427
427
428
+ wire [11 : 0 ] joy_btns_gba, joy_btns_iosys;
428
429
`ifndef VERILATOR
429
430
wire [11 : 0 ] joy_btns; // (R L X A RT LT DN UP START SELECT Y B)
430
431
controller_ds2 ds2 (
431
432
.clk (clk16), .snes_buttons (joy_btns),
432
433
.ds_clk (ds_clk), .ds_miso (ds_miso), .ds_mosi (ds_mosi), .ds_cs (ds_cs)
433
434
);
434
435
`endif
436
+
435
437
gba_joypad joypad (
436
438
.mclk (clk16), /* .fclk(clk33),*/ `GB_BUS_PORTS_INST , .IRP_Joypad (IRP_Joypad),
437
- .KeyA (joy_btns [8 ]), .KeyB (joy_btns [0 ]), .KeySelect (joy_btns [2 ]), .KeyStart (joy_btns [3 ]),
438
- .KeyRight (joy_btns [7 ]), .KeyLeft (joy_btns [6 ]), .KeyUp (joy_btns [4 ]), .KeyDown (joy_btns [5 ]),
439
- .KeyR (joy_btns [11 ]), .KeyL (joy_btns [10 ]),
439
+ .KeyA (joy_btns_gba [8 ]), .KeyB (joy_btns_gba [0 ]), .KeySelect (joy_btns_gba [2 ]), .KeyStart (joy_btns_gba [3 ]),
440
+ .KeyRight (joy_btns_gba [7 ]), .KeyLeft (joy_btns_gba [6 ]), .KeyUp (joy_btns_gba [4 ]), .KeyDown (joy_btns_gba [5 ]),
441
+ .KeyR (joy_btns_gba [11 ]), .KeyL (joy_btns_gba [10 ]),
440
442
.cpu_done ()
441
443
);
442
444
@@ -451,6 +453,8 @@ wire overlay;
451
453
wire [10 : 0 ] overlay_x;
452
454
wire [14 : 0 ] overlay_color;
453
455
wire [9 : 0 ] overlay_y;
456
+ assign joy_btns_gba = overlay ? 0 : joy_btns;
457
+ assign joy_btns_iosys = overlay ? joy_btns : 0 ;
454
458
455
459
gba2hdmi video (
456
460
.clk (clk50), .resetn (resetn),
@@ -476,7 +480,7 @@ iosys #(.CORE_ID(3)) iosys (
476
480
.clk (clk16), .hclk (hclk), .spi_clk (clk67), .resetn (resetn),
477
481
478
482
.overlay (overlay), .overlay_x (overlay_x), .overlay_y (overlay_y), .overlay_color (overlay_color),
479
- .joy1 (joy_btns ), .joy2 (12'b0 ),
483
+ .joy1 (joy_btns_iosys ), .joy2 (12'b0 ),
480
484
481
485
`ifdef TEST_LOADER
482
486
.rom_loading (), .rom_do (), .rom_do_valid (),
0 commit comments