From a20379c1d83ef496dce191ae7175ad56a4b829c6 Mon Sep 17 00:00:00 2001 From: scawful Date: Sun, 30 Jun 2024 19:44:51 -0400 Subject: [PATCH] add Menu_SongMenu --- Menu/menu.asm | 24 +++++++++++++++++++++++ Menu/menu_draw.asm | 33 ++++++++++++++++++++++++++++++++ Menu/menu_gfx_table.asm | 9 +++++++-- Menu/tilemaps/song_menu.tilemap | Bin 0 -> 2048 bytes Oracle_main.asm | 2 +- 5 files changed, 65 insertions(+), 3 deletions(-) create mode 100644 Menu/tilemaps/song_menu.tilemap diff --git a/Menu/menu.asm b/Menu/menu.asm index b31675e..8e26050 100644 --- a/Menu/menu.asm +++ b/Menu/menu.asm @@ -71,6 +71,7 @@ Menu_Entry: dw Menu_Exit ; 0A dw Menu_InitiateScrollDown ; 0B dw Menu_MagicBag ; 0C + dw Menu_SongMenu ; ========================================================= ; 00 MENU INIT GRAPHICS @@ -212,10 +213,16 @@ Menu_ItemScreen: LSR : BCS .move_down LSR : BCS .move_up + LDA.w $0202 : CMP.b #$05 : BNE + LDA.b $F6 : BIT.b #$80 : BEQ + LDA.b #$0C : STA.w $0200 ; Magic Bag + + LDA.w $0202 : CMP.b #$0D : BNE ++ + LDA.b $F6 : BIT.b #$80 : BEQ ++ + LDA.b #$0D : STA.w $0200 + ++ + BRA .no_inputs .move_right @@ -495,10 +502,27 @@ Menu_MagicBag: RTS } +Menu_SongMenu: +{ + JSR Menu_DrawSongMenu + + SEP #$30 + + LDA.b $F6 : BIT.b #$80 : BEQ + + LDA.b #$02 : STA.w $0200 + + + + LDA.b #$22 : STA.w $0116 + LDA.b #$01 : STA.b $17 + + RTS +} menu_frame: incbin "tilemaps/menu_frame.tilemap" quest_icons: incbin "tilemaps/quest_icons.tilemap" incsrc "menu_map_names.asm" +print "End of Menu/menu.asm ", pc incsrc "menu_hud.asm" +print "End of Menu/menu_ud.asm ", pc ; ========================================================= \ No newline at end of file diff --git a/Menu/menu_draw.asm b/Menu/menu_draw.asm index 4bd8d2d..11bc41c 100644 --- a/Menu/menu_draw.asm +++ b/Menu/menu_draw.asm @@ -649,6 +649,39 @@ Menu_DrawBigChestKey: RTS } + +Menu_DrawSongMenu: +{ + REP #$30 + LDX.w #$FE ; $1700-17FF + + .loop + LDA.w .magic_bag_tilemap, X + STA.w $1000, X + LDA.w .magic_bag_tilemap+$100, X + STA.w $1100, X + LDA.w .magic_bag_tilemap+$200, X + STA.w $1200, X + LDA.w .magic_bag_tilemap+$300, X + STA.w $1300, X + LDA.w .magic_bag_tilemap+$400, X + STA.w $1400, X + LDA.w .magic_bag_tilemap+$500, X + STA.w $1500, X + LDA.w .magic_bag_tilemap+$600, X + STA.w $1600, X + LDA.w .magic_bag_tilemap+$700, X + STA.w $1700, X + + DEX : DEX + BPL .loop + + RTS + + .magic_bag_tilemap + incbin "tilemaps/song_menu.tilemap" +} + Menu_DrawMagicBag: { REP #$30 diff --git a/Menu/menu_gfx_table.asm b/Menu/menu_gfx_table.asm index 7ad6074..c63f8c7 100644 --- a/Menu/menu_gfx_table.asm +++ b/Menu/menu_gfx_table.asm @@ -186,10 +186,15 @@ QuarterNoteGFX: ; --------------------------------------------------------- BananaGFX: - dw $241E, $241F, $242E, $242F ; Banana + dw $341E, $341F, $342E, $342F ; Banana RingGFX: - dw $2449, $244A, $2449, $244A ; Ring + dw $2449, $244A, $A449, $A44A ; Red Ring + dw $2C49, $2C4A, $AC49, $AC4A ; Blue Ring + dw $3C49, $3C4A, $BC49, $BC4A ; Green Ring + +PineappleGFX: + dw $3D7C, $3D7D, $356C, $756C ; Pineapple ; ========================================================= ; Equipped Items diff --git a/Menu/tilemaps/song_menu.tilemap b/Menu/tilemaps/song_menu.tilemap new file mode 100644 index 0000000000000000000000000000000000000000..c68ba5b85eeb957ec1bf8e526af53ce652f3269c GIT binary patch literal 2048 zcmeH{u?~VT5QbY2T#F`lJ%wW2z&PB47$-HvxTr7CxbQr_0k7m6Fp4;UnzoSWqU0N{ zL%+M`PkJe&9Un}<0vmb??8Hh;X%AosJlKh?*oc+j0f)6%7U#X-FiZvtpCHA!WP&~h z3Vb<{k6Tm{S$_#b563O=BzyAb2uNnMA>;sZ{^qk8Uo?Y#*N;w7`3_ZG=;xoKW9h3Z zH~8iZ^z%F4l)!K1M=rD>-&RbG>Z!ybg{3&m5#jMqd9rhvF{8?qVlYybcN literal 0 HcmV?d00001 diff --git a/Oracle_main.asm b/Oracle_main.asm index 62fc36c..378eafb 100644 --- a/Oracle_main.asm +++ b/Oracle_main.asm @@ -125,7 +125,7 @@ namespace Oracle print "" incsrc "Menu/menu.asm" - print "End of Menu/menu.asm ", pc + ; ------------------------------------------------------- ; Misc