diff options
author | Rangi <35663410+Rangi42@users.noreply.github.com> | 2021-06-20 12:32:51 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-20 12:32:51 -0400 |
commit | f917febffb80f8c8d1c34eda191b5ec3011a2f77 (patch) | |
tree | a7e80ddf3af1b80d237965fb10488cbfaaae5218 /data | |
parent | d34132455fbd82cb9c55784c023bb2cefe43aac3 (diff) | |
parent | b42d1ca1adc5c299ae7833df2ae0f15d4c68b50b (diff) |
Merge pull request #95 from ZoomTen/super-gameboy
Some work on SGB functions (bank $02)
Diffstat (limited to 'data')
-rw-r--r-- | data/predef_pointers.inc | 2 | ||||
-rw-r--r-- | data/sgb/blk_packets.inc | 73 | ||||
-rw-r--r-- | data/sgb/ctrl_packets.inc | 128 | ||||
-rw-r--r-- | data/sgb/pal_packets.inc | 57 | ||||
-rw-r--r-- | data/sgb/super_palettes.inc (renamed from data/super_palettes.inc) | 0 |
5 files changed, 259 insertions, 1 deletions
diff --git a/data/predef_pointers.inc b/data/predef_pointers.inc index d71e4d7..8b0d143 100644 --- a/data/predef_pointers.inc +++ b/data/predef_pointers.inc @@ -88,7 +88,7 @@ GiveItemPredef:: add_predef Function1457a add_predef Function143e0 add_predef CheckSGB - add_predef Function928b + add_predef LoadSGBLayout add_predef Function8786 add_predef DoBattleTransition add_predef Function8c9c6 diff --git a/data/sgb/blk_packets.inc b/data/sgb/blk_packets.inc new file mode 100644 index 0000000..1ca8e34 --- /dev/null +++ b/data/sgb/blk_packets.inc @@ -0,0 +1,73 @@ +attr_blk: MACRO + db (SGB_ATTR_BLK << 3) + ((\1 * 6) / 16 + 1) + db \1 +ENDM + +attr_blk_data: MACRO + db \1 ; which regions are affected + db \2 + (\3 << 2) + (\4 << 4) ; palette for each region + db \5, \6, \7, \8 ; x1, y1, x2, y2 +ENDM + +BlkPacket_986c: + attr_blk 1 + attr_blk_data %011, 0,0,0, 00,00, 19,17 + ds 8 + +BlkPacket_GSIntroJigglypuffPikachu: + attr_blk 1 + attr_blk_data %111, 1,1,0, 00,10, 19,13 + ds 8 + +BlkPacket_Battle: + attr_blk 5 + attr_blk_data %111, 2,2,0, 00,12, 19,17 + attr_blk_data %011, 1,1,0, 01,00, 10,03 + attr_blk_data %011, 0,0,0, 10,08, 19,10 + attr_blk_data %011, 2,2,0, 00,04, 08,11 + attr_blk_data %011, 3,3,0, 11,00, 19,07 + +BlkPacket_StatsScreen: + attr_blk 1 + attr_blk_data %111, 1,1,0, 00,01, 07,07 + ds 8 + +BlkPacket_MoveList: + attr_blk 1 + attr_blk_data %111, 1,1,0, 11,01, 19,02 + ds 8 + +BlkPacket_Pokedex: + attr_blk 1 + attr_blk_data %111, 1,1,0, 01,01, 08,08 + ds 8 + +BlkPacket_SlotMachine: + attr_blk 5 + attr_blk_data %011, 1,1,0, 00,00, 19,11 + attr_blk_data %011, 2,2,0, 00,04, 19,09 + attr_blk_data %010, 3,3,0, 00,06, 19,07 + attr_blk_data %011, 0,0,0, 04,04, 15,09 + attr_blk_data %011, 0,0,0, 00,12, 19,17 + +BlkPacket_98fc: + attr_blk 7 + attr_blk_data %111, 0,0,1, 00,00, 02,12 + attr_blk_data %010, 0,0,0, 12,00, 18,01 + attr_blk_data %010, 0,0,0, 12,02, 18,03 + attr_blk_data %010, 0,0,0, 12,04, 18,05 + attr_blk_data %010, 0,0,0, 12,06, 18,07 + attr_blk_data %010, 0,0,0, 12,08, 18,09 + attr_blk_data %010, 0,0,0, 12,10, 18,11 + ds 4 + +BlkPacket_TrainerGear: + attr_blk 1 + attr_blk_data %111, 0,0,1, 00,00, 19,02 + ds 8 + +BlkPacket_TitleScreen: + attr_blk 1 + attr_blk_data %111, 0,0,1, 00,00, 19,05 + ds 8 + diff --git a/data/sgb/ctrl_packets.inc b/data/sgb/ctrl_packets.inc new file mode 100644 index 0000000..b613e7d --- /dev/null +++ b/data/sgb/ctrl_packets.inc @@ -0,0 +1,128 @@ +sgb_pal_trn: MACRO + db (SGB_PAL_TRN << 3) + 1 + ds 15 +ENDM + +sgb_mlt_req: MACRO + db (SGB_MLT_REG << 3) + 1 + db \1 - 1 + ds 14 +ENDM + +sgb_chr_trn: MACRO + db (SGB_CHR_TRN << 3) + 1 + db \1 + (\2 << 1) + ds 14 +ENDM + +sgb_pct_trn: MACRO + db (SGB_PCT_TRN << 3) + 1 + ds 15 +ENDM + +sgb_mask_en: MACRO + db (SGB_MASK_EN << 3) + 1 + db \1 + ds 14 +ENDM + +sgb_data_snd: MACRO + db (SGB_DATA_SND << 3) + 1 + dw \1 ; address + db \2 ; bank + db \3 ; length (1-11) +ENDM + +PalTrnPacket: sgb_pal_trn +MltReq1Packet: sgb_mlt_req 1 +MltReq2Packet: sgb_mlt_req 2 +ChrTrnPacket: sgb_chr_trn 0, 0 +PctTrnPacket: sgb_pct_trn + +MaskEnFreezePacket: sgb_mask_en 1 +MaskEnCancelPacket: sgb_mask_en 0 + +; These are packets containing SNES code. +; This set of packets is found in several Japanese SGB-compatible titles. +; It appears to be part of NCL's SGB devkit. + +DataSndPacket1: + sgb_data_snd $085d, $0, 11 + db $8c ; cpx #$8c (2) + db $d0, $f4 ; bne -$0c + db $60 ; rts + ds 7 + +DataSndPacket2: + sgb_data_snd $0852, $0, 11 + db $a9, $e7 ; lda #$e7 + db $9f, $01, $c0, $7e ; sta $7ec001, x + db $e8 ; inx + db $e8 ; inx + db $e8 ; inx + db $e8 ; inx + db $e0 ; cpx #$8c (1) + +DataSndPacket3: + sgb_data_snd $0847, $0, 11 + db $c4 ; cmp #$c4 (2) + db $d0, $16 ; bne +$16 + db $a5 ; lda dp + db $cb ; wai + db $c9, $05 ; cmp #$05 + db $d0, $10 ; bne +$10 + db $a2, $28 ; ldx #$28 + +DataSndPacket4: + sgb_data_snd $083c, $0, 11 + db $f0, $12 ; beq +$12 + db $a5 ; lda dp + db $c9, $c9 ; cmp #$c9 + db $c8 ; iny + db $d0, $1c ; bne +$1c + db $a5 ; lda dp + db $ca ; dex + db $c9 ; cmp #$c4 (1) + +DataSndPacket5: + sgb_data_snd $0831, $0, 11 + dbw $0c, $caa5 ; tsb $caa5 + db $c9, $7e ; cmp #$7e + db $d0, $06 ; bne +$06 + db $a5 ; lda dp + db $cb ; wai + db $c9, $7e ; cmp #$7e + +DataSndPacket6: + sgb_data_snd $0826, $0, 11 + db $39 ; bne +$39 (2) + dbw $cd, $0c48 ; cmp $0c48 + db $d0, $34 ; bne +$34 + db $a5 ; lda dp + db $c9, $c9 ; cmp #$c9 + db $80, $d0 ; bra -$30 + +DataSndPacket7: + sgb_data_snd $081b, $0, 11 + db $ea ; nop + db $ea ; nop + db $ea ; nop + db $ea ; nop + db $ea ; nop + ; $0820: + db $a9, $01 ; lda #01 + dbw $cd, $0c4f ; cmp $c4f + db $d0 ; bne +$39 (1) + +DataSndPacket8: + sgb_data_snd $0810, $0, 11 + dbw $4c, $0820 ; jmp $0820 + db $ea ; nop + db $ea ; nop + db $ea ; nop + db $ea ; nop + db $ea ; nop + db $60 ; rts + db $ea ; nop + db $ea ; nop + diff --git a/data/sgb/pal_packets.inc b/data/sgb/pal_packets.inc new file mode 100644 index 0000000..510cc04 --- /dev/null +++ b/data/sgb/pal_packets.inc @@ -0,0 +1,57 @@ +sgb_pal_set: MACRO + db (SGB_PAL_SET << 3) + 1 + dw PAL_\1, PAL_\2, PAL_\3, PAL_\4 + ds 7 +ENDM + +PalPacket_Poker: + sgb_pal_set POKER_1, POKER_2, POKER_3, POKER_4 + +PalPacket_995c: + sgb_pal_set ROUTE, ROUTE, ROUTE, ROUTE + +PalPacket_GSIntroShellderLapras: + sgb_pal_set INTRO_WATER, ROUTE, ROUTE, ROUTE + +PalPacket_MagikarpIntro: + sgb_pal_set INTRO_LAPRAS, ROUTE, ROUTE, ROUTE + +PalPacket_GSIntroJigglypuffPikachu: + sgb_pal_set INTRO_FOREST, INTRO_JIGGLYPUFF_PIKACHU, ROUTE, ROUTE + +PalPacket_GSIntroBlastoise: + sgb_pal_set INTRO_BLASTOISE, ROUTE, ROUTE, ROUTE + +PalPacket_GSIntroVenusaur: + sgb_pal_set INTRO_VENUSAUR, ROUTE, ROUTE, ROUTE + +PalPacket_GSIntroCharizard: + sgb_pal_set INTRO_CHARIZARD, ROUTE, ROUTE, ROUTE + +PalPacket_PikachuMinigame: + sgb_pal_set INTRO_JIGGLYPUFF_PIKACHU, ROUTE, ROUTE, ROUTE + +PalPacket_PartyMenu: + sgb_pal_set SHINY_GRAYMON, GREEN_BAR, YELLOW_BAR, RED_BAR + +PalPacket_BattleGrayscale: + sgb_pal_set BLACK, BLACK, BLACK, BLACK + +PalPacket_TownMap: + sgb_pal_set TOWN_MAP, ROUTE, ROUTE, ROUTE + +PalPacket_Pokedex: + sgb_pal_set INTRO_CHARIZARD, ROUTE, ROUTE, ROUTE + +PalPacket_SlotMachine: + sgb_pal_set SLOTS_1, SLOTS_2, SLOTS_3, SLOTS_4 + +PalPacket_TitleScreen: + sgb_pal_set LOGO_1, LOGO_2, MEWMON, PURPLEMON + +PalPacket_9a3c: + sgb_pal_set MEWMON, ROUTE, ROUTE, ROUTE + +PalPacket_GFIntro: + sgb_pal_set GAME_FREAK, ROUTE, ROUTE, ROUTE + diff --git a/data/super_palettes.inc b/data/sgb/super_palettes.inc index 5dba6d8..5dba6d8 100644 --- a/data/super_palettes.inc +++ b/data/sgb/super_palettes.inc |