diff --git a/SOURCE/Entei - Emerald/00-C000.asm b/SOURCE/Entei - Emerald/00-C000.asm new file mode 100644 index 0000000..2d506b5 --- /dev/null +++ b/SOURCE/Entei - Emerald/00-C000.asm @@ -0,0 +1,162 @@ +INCLUDE "../macros.asm" +SECTION "eonticket",ROM0[$100] +jp Start +db $00 + + +TicketPalette: ; 1604 + INCBIN "entei.pal.bin" + +Prologue: + INCBIN "prologue-{REGION_NAME}.bin" + +DataPacket: ; 164a + INCBIN "eonticket-{REGION_NAME}.mev" + db 0,0,0 ; padding + +INCLUDE "../common/mem_struct.asm" + +SpriteData: + dw TicketPalette + db $00,$00,$01,$01,$01,$01,$01 ; + +Instructions1: ; 1921 + db "Link e-Reader to Pokémon Game\n" + db "Press the B Button to cancel.\0" + +DeliveryInProcess: ; 1a0d + db "RAIKOU EVENT delivery in Progress..\0" + +TicketDelivered: ; 1a2f + db "RAIKOU EVENT delivered!\0" + +; this function is subtly different than the one +; on the Battle e cards, for no apparent reason +TransferData: + LD_IND_HL SomeVar1 + push de + ld hl, $bbbb + LD_IND_HL Space_1 + EX_DE_HL + LD_IND_HL Space_2 + API_0C7 Space_1 + + wait $01 + pop hl + inc hl + ld b, $01 + call WordShiftRight + + LD_IND_HL SomeVar2 +.asm_1aa1 + LD_HL_IND SomeVar2 + ld a, l + or h + ret z + + ld hl, $8888 + LD_IND_HL Space_1 + ld e, $01 + +.asm_1aaf + ld a, e + cp $08 + jr nc, .asm_1ad9 + + push de + LD_HL_IND SomeVar1 + ld c, [hl] + inc hl + ld b, [hl] + inc hl + LD_IND_HL SomeVar1 + ld l, e + ld h, $00 + add hl, hl + ld de, Space_1 + add hl, de + ld [hl], c + inc hl + ld [hl], b + pop de + LD_HL_IND SomeVar2 + dec hl + LD_IND_HL SomeVar2 + ld a, l + or h + jr z, .asm_1ad9 + + inc e + jr .asm_1aaf + +.asm_1ad9 + API_0C7 Space_1 + wait $01 + jr .asm_1aa1 + +Start: ; 1ae2 + API_121 + + CreateCustomSprite SpriteHandlePtr, $80, SpriteData + SetSpritePos SpriteHandlePtr, 120, 64 + SpriteHide SpriteHandlePtr + + CreateRegion RegionHandlePtr, 30, 6, 0, 14, 0, 4 + + ld h, a + ld l, $00 + SetTextSize + + API_09B RegionHandlePtr, $0102 + SetTextColor RegionHandlePtr, 2, 0 + SetRegionColor RegionHandlePtr, 0 + SetBackgroundPalette 16, $0040, TicketPalette + + FadeIn 16 + wait 16 + + API $0C6 + + DrawText RegionHandlePtr, Instructions1, 8, 4 + API $08D + +INCLUDE "../common/wait_for_link.asm" + + SpriteShow SpriteHandlePtr + + + API $08D + + ld a, b + nop + +UNKNOWN_VALUE EQU $0078 +INCLUDE "../common/wait_for_ready.asm" + + DrawText RegionHandlePtr, DeliveryInProcess, 8, 4 + +DATA_TRANSFER_LENGTH EQU 6144 +INCLUDE "../common/transfer_data.asm" + ld hl, $5fff + LD_IND_HL Space_1 + API_0C7 Space_1 + + wait $80 + + SpriteHide SpriteHandlePtr + + DrawText RegionHandlePtr, TicketDelivered, 8, 4 + + API $08D + ld c, a + nop + +INCLUDE "../common/wrap_up.asm" + +INCLUDE "../common/word_shift_right.asm" + +SomeVar1: ; 1CA2 + db $FF,0 ; mark EOF +RegionHandlePtr: db 0 ; 1CA4 +SpriteHandlePtr: db 0,0 ; 1CA5 +SomeVar2: db 0,0 ; 1CA7 \ No newline at end of file diff --git a/SOURCE/Entei - Emerald/Makefile b/SOURCE/Entei - Emerald/Makefile new file mode 100644 index 0000000..11d6e49 --- /dev/null +++ b/SOURCE/Entei - Emerald/Makefile @@ -0,0 +1,40 @@ +all: 00-C000-EN.raw verify +verify: + md5sum --check eonticket.md5 + + +eonticket-%.tx: eonticket.asm + python ../scripts/regionalize.py $< $@ $* $* +eonticket-%.o: eonticket-%.tx + ./rgbasm -o $@ $< +eonticket-%.gbc: eonticket-%.o + ./rgblink -o $@ $< +eonticket-%.bin: eonticket-%.gbc + python ../scripts/stripgbc.py $< $@ +eonticket-%.mev: eonticket-%.bin + python ../scripts/checksum.py $< $@ + +prologue-%.tx: prologue.asm + python ../scripts/regionalize.py $< $@ $* $* +prologue-%.o: prologue-%.tx + ./rgbasm -o $@ $< +prologue-%.gbc: prologue-%.o + ./rgblink -o $@ $< +prologue-%.bin: prologue-%.gbc + python ../scripts/stripgbc.py $< $@ + +00-C000-%.tx: 00-C000.asm eonticket-%.mev prologue-%.bin + python ../scripts/ereadertext.py $< $@ $* +00-C000-%.o: 00-C000-%.tx + ./rgbasm -o $@ $< +00-C000-%.gbc: 00-C000-%.o + ./rgblink -o $@ $< +00-C000-%.z80: 00-C000-%.gbc + python ../scripts/stripgbc.py $< $@ +00-C000-%.vpk: 00-C000-%.z80 + ./nevpk -c -i $< -o $@ +00-C000-%.raw: 00-C000-%.vpk + ./nedcmake -i $< -o $@ -type 1 -region 1 + +clean: + rm -f *.tx *.o *.gbc *.z80 *.bin *.mev *.vpk *.raw \ No newline at end of file diff --git a/SOURCE/Entei - Emerald/entei.pal.bin b/SOURCE/Entei - Emerald/entei.pal.bin new file mode 100644 index 0000000..ebbc1cc Binary files /dev/null and b/SOURCE/Entei - Emerald/entei.pal.bin differ diff --git a/SOURCE/Entei - Emerald/eonticket.asm b/SOURCE/Entei - Emerald/eonticket.asm new file mode 100644 index 0000000..a0e11e0 --- /dev/null +++ b/SOURCE/Entei - Emerald/eonticket.asm @@ -0,0 +1,1085 @@ +INCLUDE "../macros.asm" +INCLUDE "../constants/items.asm" +INCLUDE "../constants/scriptcommandsenteiemerald.asm" + + Mystery_Event + + db CHECKSUM_CRC + dd 0 ; checksum placeholder + GBAPTR DataStart + GBAPTR DataEnd + +DataStart: + db IN_GAME_SCRIPT + db 24,15 ; Mt Pyre + db 3 ; Guy on left grave + GBAPTR NormanScriptStart + GBAPTR NormanScriptEnd + + db PRELOAD_SCRIPT + GBAPTR PreloadScriptStart + + db END_OF_CHUNKS + + + + + + +NormanScriptStart: + setvirtualaddress NormanScriptStart + + + db $43 ;This checks if your party is bigger than 0 + + compare LASTRESULT, 0 ;It's so I can store thumb code in static spot. + + virtualgotoif 2, Start ;It should never fail. + + + BEASTRNG + +Start: + + callasm $02025301 + + writebytetoaddr $00, $030026F9 + + checkflag $915 + + virtualgotoif 1, FieryPath + + setflag $915 + + fadesong $15F + + pause $10 + + applymovement $3, $02025210 + + pause $10 + + sound $15 + + pause $10 + + faceplayer + + virtualmsgbox Hello + + waitmsg + + waitkeypress + + release + + getplayerpos $8000, $8001 + + compare $8001, $A + + virtualgotoif 1, Movement + + applymovement $FF, $02025224 + + pause $11 + +Movement: + + applymovement $03, $02025213 + + pause $90 + + db $35 ;this returns the songs map to current map + + writebytetoaddr $0E, $0202912E + + random $000C + + callasm $020251A5 + + end + + +FieryPath: + + + checkflag $916 + + virtualgotoif 1, SuccessBoulder + + getplayerpos $8000, $8001 + + compare $8000, $10 + + virtualgotoif 5, FailBoulder + + compare $800C, $4 + + virtualgotoif 5, FailBoulder + + writebytetoaddr $C9, $02028590 + + special $13D + + sound $29 + + pause $35 + + playmoncry $C9, $0 + + pause $25 + +SuccessBoulder: + + setvar $8004, 0 + + special2 $8004, $149 + + compare $8004, $C9 + + virtualgotoif 1, Letter + + +BoulderMessage2: + + + setflag $916 + + braillemessage $0202565C + + waitkeypress + + db $DA + + end + + +FailBoulder: + + braillemessage $02025640 + + waitkeypress + + db $DA + + end + +Letter: + + callasm $020251ed + + compare $8004, $00FF + + virtualgotoif 1, Battle + + virtualgotoif 5, BoulderMessage2 + + +Battle: + + + db $43 + + compare LASTRESULT, 5 + + virtualgotoif 2, NoRoom + + copyvar $800B, $800D + + setwildbattle $F4, $55, $D7 + + callasm $02029143 + + writebytetoaddr $00, $02028590 + + writebytetoaddr $68, $02025398 + + writebytetoaddr $54, $02025399 + + applymovement $FF, $02025210 + + sound $15 + + db $30 + + special $13D + + sound $27 + + db $30 + + special $13D + + sound $27 + + db $30 + + playmoncry $F4, $0 + + waitmoncry + + special $145 ;Regi Intro + + playsong $0166, $0 + + callasm $020253A1 + + waitstate + + db $00 + + db $00 + + db $00 + + pause $A0 + + callasm $02025301 + + writebytetoaddr $00, $030026F9 + + db $43 + + comparevar LASTRESULT, $800B + + virtualgotoif 3, FlewAway + + callasm $02029207 + + braillemessage $0202523D + + waitkeypress + + db $DA + + killscript + + + + + + +NoRoom: + braillemessage $2025229 + + waitkeypress + + db $DA + + end + + +FlewAway: + + copybyte $03005D80, $02022C34 + + copybyte $03005D81, $02022C35 + + copybyte $03005D82, $02022C36 + + copybyte $03005D83, $02022C37 + + virtualmsgbox Flew + waitmsg + waitkeypress + release + writebytetoaddr $65, $02025398 + writebytetoaddr $92, $02025399 + + end + + + +Flew: + Text_EN "ENTEI fled@" + +Hello: + Text_EN "My name’s Eusine. I’m on the trail\n" + Text_EN "of a POKéMON named SUICUNE.\p" + Text_EN "And you are? \v1?\n" + Text_EN "Glad to meet you!\p" + Text_EN "I’ve heard an ENTEI\n" + Text_EN "is in HOENN.\p" + Text_EN "It, RAIKOU, and SUICUNE are often\n" + Text_EN "seen together.\p" + Text_EN "I found ANCIENT TEXT\n" + Text_EN "in FIERY PATH.\p" + Text_EN "Go look, I’ll hunt\n" + Text_EN "for more clues!@" + + + +NormanScriptEnd: + + +PreloadScriptStart: + setvirtualaddress PreloadScriptStart + + + + + clearflag $915 + clearflag $916 + + clearflag $917 + clearflag $918 + + clearflag $919 + clearflag $91A + + clearflag $91B + clearflag $91C + + writebytetoaddr $04, $20250A0 + writebytetoaddr $04, $20250F0 + writebytetoaddr $04, $2025140 + writebytetoaddr $04, $2025190 + writebytetoaddr $04, $20251E0 + writebytetoaddr $04, $2025230 + writebytetoaddr $04, $2025280 + writebytetoaddr $04, $20252D0 + writebytetoaddr $04, $2025320 + writebytetoaddr $04, $2025370 + writebytetoaddr $04, $20253C0 + writebytetoaddr $04, $2025410 + + callasm $08164ed9 + + + writebytetoaddr $03, $2024744 ;Battle-E Location + writebytetoaddr $04, $2024745 + writebytetoaddr $1A, $2024746 + writebytetoaddr $0D, $2024747 + writebytetoaddr $04, $2024748 + writebytetoaddr $06, $2024749 + writebytetoaddr $06, $202474A + writebytetoaddr $00, $202474B + writebytetoaddr $09, $202474C + writebytetoaddr $1B, $202474D + writebytetoaddr $0B, $202474E + writebytetoaddr $00, $202474F + writebytetoaddr $2E, $2024750 + writebytetoaddr $0D, $2024751 + writebytetoaddr $09, $2024752 + writebytetoaddr $1D, $2024753 + writebytetoaddr $09, $2024754 + writebytetoaddr $FE, $2024755 + writebytetoaddr $06, $2024756 + writebytetoaddr $00, $2024757 + writebytetoaddr $16, $2024758 + writebytetoaddr $1E, $2024759 + writebytetoaddr $01, $202475A + writebytetoaddr $1D, $202475B + writebytetoaddr $1E, $202475C + writebytetoaddr $09, $202475D + writebytetoaddr $0B, $202475E + writebytetoaddr $FF, $202475F + writebytetoaddr $01, $2024760 + writebytetoaddr $03, $2024761 + writebytetoaddr $1C, $2024762 + writebytetoaddr $0e, $2024763 + writebytetoaddr $02, $2024764 + writebytetoaddr $04, $2024765 + writebytetoaddr $1E, $2024766 + writebytetoaddr $0D, $2024767 + writebytetoaddr $09, $2024768 + writebytetoaddr $3B, $2024769 + writebytetoaddr $00, $202476A + writebytetoaddr $01, $202476B + writebytetoaddr $1D, $202476C + writebytetoaddr $09, $202476D + writebytetoaddr $00, $202476E + writebytetoaddr $07, $202476F + writebytetoaddr $1D, $2024770 + writebytetoaddr $09, $2024771 + writebytetoaddr $09, $2024772 + writebytetoaddr $FE, $2024773 + writebytetoaddr $06, $2024774 + writebytetoaddr $1B, $2024775 + writebytetoaddr $00, $2024776 + writebytetoaddr $1E, $2024777 + writebytetoaddr $0D, $2024778 + writebytetoaddr $09, $2024779 + writebytetoaddr $00, $202477A + writebytetoaddr $01, $202477B + writebytetoaddr $16, $202477C + writebytetoaddr $0D, $202477D + writebytetoaddr $FE, $202477E + writebytetoaddr $05, $202477F + writebytetoaddr $1D, $2024780 + writebytetoaddr $06, $2024781 + writebytetoaddr $1B, $2024782 + writebytetoaddr $0F, $2024783 + writebytetoaddr $00, $2024784 + writebytetoaddr $07, $2024785 + writebytetoaddr $00, $2024786 + writebytetoaddr $07, $2024787 + writebytetoaddr $06, $2024788 + writebytetoaddr $1D, $2024789 + writebytetoaddr $16, $202478A + writebytetoaddr $1E, $202478B + writebytetoaddr $FF, $202478C + writebytetoaddr $01, $202478D + writebytetoaddr $05, $202478E + writebytetoaddr $0B, $202478F + writebytetoaddr $09, $2024790 + writebytetoaddr $07, $2024791 + writebytetoaddr $0E, $2024792 + writebytetoaddr $15, $2024793 + writebytetoaddr $13, $2024794 + writebytetoaddr $19, $2024795 + writebytetoaddr $34, $2024796 + writebytetoaddr $39, $2024797 + writebytetoaddr $1E, $2024798 + writebytetoaddr $11, $2024799 + writebytetoaddr $00, $202479A + writebytetoaddr $01, $202479B + writebytetoaddr $03, $202479C + writebytetoaddr $04, $202479D + writebytetoaddr $05, $202479E + writebytetoaddr $09, $202479F + writebytetoaddr $0B, $20247A0 + writebytetoaddr $0C, $20247A1 + writebytetoaddr $0E, $20247A2 + writebytetoaddr $1B, $20247A3 + writebytetoaddr $19, $20247A4 + writebytetoaddr $13, $20247A5 + writebytetoaddr $16, $20247A6 + writebytetoaddr $0, $20247A7 + writebytetoaddr $0, $20247A8 + writebytetoaddr $0, $20247A9 + writebytetoaddr $0, $20247AA + writebytetoaddr $0, $20247AB + writebytetoaddr $0, $20247AC + writebytetoaddr $0, $20247AD + writebytetoaddr $0, $20247AE + writebytetoaddr $0, $20247AF + writebytetoaddr $BF, $20247B0 + writebytetoaddr $C8, $20247B1 + writebytetoaddr $CE, $20247B2 + writebytetoaddr $BF, $20247B3 + writebytetoaddr $C3, $20247B4 + writebytetoaddr $FF, $20247B5 + writebytetoaddr $0, $20247B6 + writebytetoaddr $0, $20247B7 + writebytetoaddr $0, $20247B8 + writebytetoaddr $0, $20247B9 + writebytetoaddr $2, $20247BA + writebytetoaddr $2, $20247BB + writebytetoaddr $C0, $20247BC + writebytetoaddr $BB, $20247BD + writebytetoaddr $CC, $20247BE + writebytetoaddr $CE, $20247BF + writebytetoaddr $FF, $20247C0 + writebytetoaddr $0, $20247C1 + writebytetoaddr $0, $20247C2 + writebytetoaddr $0, $20247C3 + writebytetoaddr $2C, $20247C4 + writebytetoaddr $9C, $20247C5 + writebytetoaddr $0, $20247C6 + writebytetoaddr $0, $20247C7 + writebytetoaddr $F4, $20247C8 + writebytetoaddr $0, $20247C9 + writebytetoaddr $0, $20247CA + writebytetoaddr $0, $20247CB + writebytetoaddr $A8, $20247CC + writebytetoaddr $B6, $20247CD + writebytetoaddr $0B, $20247CE + writebytetoaddr $0, $20247CF + writebytetoaddr $0, $20247D0 + writebytetoaddr $23, $20247D1 + writebytetoaddr $0, $20247D2 + writebytetoaddr $0, $20247D3 + writebytetoaddr $A4, $20247D4 + writebytetoaddr $0, $20247D5 + writebytetoaddr $5B, $20247D6 + writebytetoaddr $1, $20247D7 + writebytetoaddr $4C, $20247D8 + writebytetoaddr $0, $20247D9 + writebytetoaddr $7E, $20247DA + writebytetoaddr $0, $20247DB + writebytetoaddr $0A, $20247DC + writebytetoaddr $14, $20247DD + writebytetoaddr $0A, $20247DE + writebytetoaddr $5, $20247DF + writebytetoaddr $0, $20247E0 + writebytetoaddr $0, $20247E1 + writebytetoaddr $0, $20247E2 + writebytetoaddr $0, $20247E3 + writebytetoaddr $0, $20247E4 + writebytetoaddr $0, $20247E5 + writebytetoaddr $0, $20247E6 + writebytetoaddr $0, $20247E7 + writebytetoaddr $0, $20247E8 + writebytetoaddr $0, $20247E9 + writebytetoaddr $0, $20247EA + writebytetoaddr $0, $20247EB + writebytetoaddr $0, $20247EC + writebytetoaddr $7D, $20247ED + writebytetoaddr $A8, $20247EE + writebytetoaddr $27, $20247EF + writebytetoaddr $0, $20247F0 + writebytetoaddr $0, $20247F1 + writebytetoaddr $0, $20247F2 + writebytetoaddr $0, $20247F3 + writebytetoaddr $0, $20247F4 + writebytetoaddr $0, $20247F5 + writebytetoaddr $0, $20247F6 + writebytetoaddr $1, $20247F7 + + + writebytetoaddr $00, $20248FB ;MemCopy CallASM + writebytetoaddr $04, $20248FC + writebytetoaddr $4D, $20248FD + writebytetoaddr $2D, $20248FE + writebytetoaddr $68, $20248FF + writebytetoaddr $04, $2024900 + writebytetoaddr $48, $2024901 + writebytetoaddr $06, $2024902 + writebytetoaddr $49, $2024903 + writebytetoaddr $04, $2024904 + writebytetoaddr $4A, $2024905 + writebytetoaddr $06, $2024906 + writebytetoaddr $4E, $2024907 + writebytetoaddr $AD, $2024908 + writebytetoaddr $1B, $2024909 + writebytetoaddr $29, $202490A + writebytetoaddr $44, $202490B + writebytetoaddr $0B, $202490C + writebytetoaddr $DF, $202490D + writebytetoaddr $70, $202490E + writebytetoaddr $47, $202490F + writebytetoaddr $90, $2024910 + writebytetoaddr $5D, $2024911 + writebytetoaddr $00, $2024912 + writebytetoaddr $03, $2024913 + writebytetoaddr $44, $2024914 + writebytetoaddr $47, $2024915 + writebytetoaddr $02, $2024916 + writebytetoaddr $02, $2024917 + writebytetoaddr $2D, $2024918 + writebytetoaddr $00, $2024919 + writebytetoaddr $00, $202491A + writebytetoaddr $04, $202491B + writebytetoaddr $40, $202491C + writebytetoaddr $56, $202491D + writebytetoaddr $02, $202491E + writebytetoaddr $02, $202491F + writebytetoaddr $54, $2024920 + writebytetoaddr $4A, $2024921 + writebytetoaddr $02, $2024922 + writebytetoaddr $02, $2024923 + + callasm $20248FD ;Do Memory Copy + + + writebytetoaddr $E4, $2024744 ;Calcramscript Checksum & Randomize Unown + writebytetoaddr $B4, $2024745 + writebytetoaddr $D8, $2024746 + writebytetoaddr $9C, $2024747 + writebytetoaddr $78, $2024748 + writebytetoaddr $6C, $2024749 + writebytetoaddr $E1, $202474A + writebytetoaddr $B1, $202474B + writebytetoaddr $D2, $202474C + writebytetoaddr $93, $202474D + writebytetoaddr $72, $202474E + writebytetoaddr $63, $202474F + writebytetoaddr $C9, $2024750 + writebytetoaddr $8D, $2024751 + writebytetoaddr $C6, $2024752 + writebytetoaddr $87, $2024753 + writebytetoaddr $4E, $2024754 + writebytetoaddr $4B, $2024755 + writebytetoaddr $39, $2024756 + writebytetoaddr $2D, $2024757 + writebytetoaddr $36, $2024758 + writebytetoaddr $27, $2024759 + writebytetoaddr $1E, $202475A + writebytetoaddr $1B, $202475B + writebytetoaddr $FF, $202475C + writebytetoaddr $B5, $202475D + writebytetoaddr $0C, $202475E + writebytetoaddr $48, $202475F + writebytetoaddr $0C, $2024760 + writebytetoaddr $49, $2024761 + writebytetoaddr $0D, $2024762 + writebytetoaddr $4A, $2024763 + writebytetoaddr $0D, $2024764 + writebytetoaddr $4B, $2024765 + writebytetoaddr $0E, $2024766 + writebytetoaddr $4C, $2024767 + writebytetoaddr $00, $2024768 + writebytetoaddr $78, $2024769 + writebytetoaddr $01, $202476A + writebytetoaddr $44, $202476B + writebytetoaddr $09, $202476C + writebytetoaddr $78, $202476D + writebytetoaddr $11, $202476E + writebytetoaddr $70, $202476F + writebytetoaddr $04, $2024770 + writebytetoaddr $44, $2024771 + writebytetoaddr $24, $2024772 + writebytetoaddr $78, $2024773 + writebytetoaddr $1C, $2024774 + writebytetoaddr $70, $2024775 + writebytetoaddr $7C, $2024776 + writebytetoaddr $46, $2024777 + writebytetoaddr $07, $2024778 + writebytetoaddr $34, $2024779 + writebytetoaddr $A6, $202477A + writebytetoaddr $46, $202477B + writebytetoaddr $02, $202477C + writebytetoaddr $48, $202477D + writebytetoaddr $00, $202477E + writebytetoaddr $47, $202477F + writebytetoaddr $02, $2024780 + writebytetoaddr $4A, $2024781 + writebytetoaddr $10, $2024782 + writebytetoaddr $80, $2024783 + writebytetoaddr $FF, $2024784 + writebytetoaddr $BD, $2024785 + writebytetoaddr $00, $2024786 + writebytetoaddr $00, $2024787 + writebytetoaddr $AD, $2024788 + writebytetoaddr $90, $2024789 + writebytetoaddr $09, $202478A + writebytetoaddr $08, $202478B + writebytetoaddr $28, $202478C + writebytetoaddr $91, $202478D + writebytetoaddr $02, $202478E + writebytetoaddr $02, $202478F + writebytetoaddr $F0, $2024790 + writebytetoaddr $75, $2024791 + writebytetoaddr $03, $2024792 + writebytetoaddr $02, $2024793 + writebytetoaddr $89, $2024794 + writebytetoaddr $56, $2024795 + writebytetoaddr $02, $2024796 + writebytetoaddr $02, $2024797 + writebytetoaddr $81, $2024798 + writebytetoaddr $56, $2024799 + writebytetoaddr $02, $202479A + writebytetoaddr $02, $202479B + writebytetoaddr $35, $202479C + writebytetoaddr $93, $202479D + writebytetoaddr $02, $202479E + writebytetoaddr $02, $202479F + writebytetoaddr $96, $20247A0 + writebytetoaddr $56, $20247A1 + writebytetoaddr $02, $20247A2 + writebytetoaddr $02, $20247A3 + + writebytetoaddr $FF, $20247A4 ;CheckUnown By Personality + writebytetoaddr $B5, $20247A5 + writebytetoaddr $7C, $20247A6 + writebytetoaddr $46, $20247A7 + writebytetoaddr $0B, $20247A8 + writebytetoaddr $34, $20247A9 + writebytetoaddr $A6, $20247AA + writebytetoaddr $46, $20247AB + writebytetoaddr $03, $20247AC + writebytetoaddr $48, $20247AD + writebytetoaddr $04, $20247AE + writebytetoaddr $4B, $20247AF + writebytetoaddr $00, $20247B0 + writebytetoaddr $68, $20247B1 + writebytetoaddr $18, $20247B2 + writebytetoaddr $47, $20247B3 + writebytetoaddr $03, $20247B4 + writebytetoaddr $49, $20247B5 + writebytetoaddr $08, $20247B6 + writebytetoaddr $70, $20247B7 + writebytetoaddr $FF, $20247B8 + writebytetoaddr $BC, $20247B9 + writebytetoaddr $00, $20247BA + writebytetoaddr $BD, $20247BB + writebytetoaddr $EC, $20247BC + writebytetoaddr $44, $20247BD + writebytetoaddr $02, $20247BE + writebytetoaddr $02, $20247BF + writebytetoaddr $49, $20247C0 + writebytetoaddr $2E, $20247C1 + writebytetoaddr $0D, $20247C2 + writebytetoaddr $08, $20247C3 + writebytetoaddr $E0, $20247C4 + writebytetoaddr $75, $20247C5 + writebytetoaddr $03, $20247C6 + writebytetoaddr $02, $20247C7 + writebytetoaddr $56, $20247C8 + writebytetoaddr $12, $20247C9 + writebytetoaddr $FE, $20247CA + writebytetoaddr $09, $20247CB + writebytetoaddr $09, $20247CC + writebytetoaddr $0A, $20247CD + writebytetoaddr $09, $20247CE + writebytetoaddr $09, $20247CF + writebytetoaddr $09, $20247D0 + writebytetoaddr $09, $20247D1 + writebytetoaddr $09, $20247D2 + writebytetoaddr $09, $20247D3 + writebytetoaddr $09, $20247D4 + writebytetoaddr $09, $20247D5 + writebytetoaddr $09, $20247D6 + writebytetoaddr $09, $20247D7 + writebytetoaddr $09, $20247D8 + writebytetoaddr $09, $20247D9 + writebytetoaddr $09, $20247DA + writebytetoaddr $FE, $20247DB + writebytetoaddr $0B, $20247DC + writebytetoaddr $02, $20247DD + writebytetoaddr $14, $20247DE + writebytetoaddr $14, $20247DF + writebytetoaddr $FE, $20247E0 + writebytetoaddr $01, $20247E1 + writebytetoaddr $07, $20247E2 + writebytetoaddr $1C, $20247E3 + writebytetoaddr $0A, $20247E4 + writebytetoaddr $02, $20247E5 + writebytetoaddr $08, $20247E6 + writebytetoaddr $17, $20247E7 + writebytetoaddr $01, $20247E8 + writebytetoaddr $1D, $20247E9 + writebytetoaddr $1E, $20247EA + writebytetoaddr $3B, $20247EB + writebytetoaddr $00, $20247EC + writebytetoaddr $06, $20247ED + writebytetoaddr $16, $20247EE + writebytetoaddr $00, $20247EF + writebytetoaddr $07, $20247F0 + writebytetoaddr $31, $20247F1 + writebytetoaddr $15, $20247F2 + writebytetoaddr $15, $20247F3 + writebytetoaddr $FF, $20247F4 + writebytetoaddr $00, $20247F5 + writebytetoaddr $02, $20247F6 + writebytetoaddr $1D, $20247F7 + writebytetoaddr $11, $20247F8 + writebytetoaddr $01, $20247F9 + writebytetoaddr $03, $20247FA + writebytetoaddr $3B, $20247FB + writebytetoaddr $19, $20247FC + writebytetoaddr $31, $20247FD + writebytetoaddr $1D, $20247FE + writebytetoaddr $00, $20247FF + writebytetoaddr $01, $2024800 + writebytetoaddr $0B, $2024801 + writebytetoaddr $35, $2024802 + writebytetoaddr $09, $2024803 + writebytetoaddr $1B, $2024804 + writebytetoaddr $1E, $2024805 + writebytetoaddr $31, $2024806 + writebytetoaddr $1D, $2024807 + writebytetoaddr $09, $2024808 + writebytetoaddr $FE, $2024809 + writebytetoaddr $2E, $202480A + writebytetoaddr $06, $202480B + writebytetoaddr $15, $202480C + writebytetoaddr $15, $202480D + writebytetoaddr $00, $202480E + writebytetoaddr $03, $202480F + writebytetoaddr $19, $2024810 + writebytetoaddr $1B, $2024811 + writebytetoaddr $1E, $2024812 + writebytetoaddr $06, $2024813 + writebytetoaddr $1B, $2024814 + writebytetoaddr $31, $2024815 + writebytetoaddr $09, $2024816 + writebytetoaddr $FE, $2024817 + writebytetoaddr $19, $2024818 + writebytetoaddr $1B, $2024819 + writebytetoaddr $00, $202481A + writebytetoaddr $1E, $202481B + writebytetoaddr $0D, $202481C + writebytetoaddr $09, $202481D + writebytetoaddr $00, $202481E + writebytetoaddr $1B, $202481F + writebytetoaddr $09, $2024820 + writebytetoaddr $33, $2024821 + writebytetoaddr $1E, $2024822 + writebytetoaddr $FE, $2024823 + writebytetoaddr $09, $2024824 + writebytetoaddr $00, $2024825 + writebytetoaddr $03, $2024826 + writebytetoaddr $01, $2024827 + writebytetoaddr $1D, $2024828 + writebytetoaddr $0B, $2024829 + writebytetoaddr $FF, $202482A + writebytetoaddr $1B, $202482B + writebytetoaddr $09, $202482C + writebytetoaddr $33, $202482D + writebytetoaddr $1E, $202482E + writebytetoaddr $00, $202482F + writebytetoaddr $09, $2024830 + writebytetoaddr $00, $2024831 + writebytetoaddr $03, $2024832 + writebytetoaddr $01, $2024833 + writebytetoaddr $1D, $2024834 + writebytetoaddr $0B, $2024835 + writebytetoaddr $FF, $2024836 + writebytetoaddr $00, $2024837 + + writebytetoaddr $3D, $2024918 ;This changes end location and amount of words for memcopy program. + writebytetoaddr $8C, $202491C + writebytetoaddr $51, $202491D + + callasm $20248FD ;Do Memory Copy Again + + writebytetoaddr $00, $2024744 ;ASLR Compensation + writebytetoaddr $00, $2024745 + writebytetoaddr $17, $2024746 + writebytetoaddr $4E, $2024747 + writebytetoaddr $30, $2024748 + writebytetoaddr $68, $2024749 + writebytetoaddr $17, $202474A + writebytetoaddr $49, $202474B + writebytetoaddr $08, $202474C + writebytetoaddr $60, $202474D + writebytetoaddr $17, $202474E + writebytetoaddr $48, $202474F + writebytetoaddr $00, $2024750 + writebytetoaddr $68, $2024751 + writebytetoaddr $17, $2024752 + writebytetoaddr $49, $2024753 + writebytetoaddr $47, $2024754 + writebytetoaddr $1A, $2024755 + writebytetoaddr $17, $2024756 + writebytetoaddr $48, $2024757 + writebytetoaddr $17, $2024758 + writebytetoaddr $49, $2024759 + writebytetoaddr $01, $202475A + writebytetoaddr $60, $202475B + writebytetoaddr $17, $202475C + writebytetoaddr $4A, $202475D + writebytetoaddr $02, $202475E + writebytetoaddr $23, $202475F + writebytetoaddr $13, $2024760 + writebytetoaddr $70, $2024761 + writebytetoaddr $17, $2024762 + writebytetoaddr $48, $2024763 + writebytetoaddr $38, $2024764 + writebytetoaddr $44, $2024765 + writebytetoaddr $01, $2024766 + writebytetoaddr $78, $2024767 + writebytetoaddr $01, $2024768 + writebytetoaddr $30, $2024769 + writebytetoaddr $02, $202476A + writebytetoaddr $78, $202476B + writebytetoaddr $01, $202476C + writebytetoaddr $30, $202476D + writebytetoaddr $03, $202476E + writebytetoaddr $78, $202476F + writebytetoaddr $01, $2024770 + writebytetoaddr $30, $2024771 + writebytetoaddr $04, $2024772 + writebytetoaddr $78, $2024773 + writebytetoaddr $11, $2024774 + writebytetoaddr $44, $2024775 + writebytetoaddr $19, $2024776 + writebytetoaddr $44, $2024777 + writebytetoaddr $21, $2024778 + writebytetoaddr $44, $2024779 + writebytetoaddr $49, $202477A + writebytetoaddr $42, $202477B + writebytetoaddr $11, $202477C + writebytetoaddr $4A, $202477D + writebytetoaddr $12, $202477E + writebytetoaddr $4B, $202477F + writebytetoaddr $09, $2024780 + writebytetoaddr $04, $2024781 + writebytetoaddr $51, $2024782 + writebytetoaddr $43, $2024783 + writebytetoaddr $19, $2024784 + writebytetoaddr $44, $2024785 + writebytetoaddr $31, $2024786 + writebytetoaddr $60, $2024787 + writebytetoaddr $00, $2024788 + writebytetoaddr $00, $2024789 + writebytetoaddr $00, $202478A + writebytetoaddr $00, $202478B + writebytetoaddr $14, $202478C + writebytetoaddr $4A, $202478D + writebytetoaddr $0F, $202478E + writebytetoaddr $4B, $202478F + writebytetoaddr $00, $2024790 + writebytetoaddr $00, $2024791 + writebytetoaddr $0F, $2024792 + writebytetoaddr $48, $2024793 + writebytetoaddr $0F, $2024794 + writebytetoaddr $49, $2024795 + writebytetoaddr $01, $2024796 + writebytetoaddr $60, $2024797 + writebytetoaddr $0F, $2024798 + writebytetoaddr $48, $2024799 + writebytetoaddr $10, $202479A + writebytetoaddr $49, $202479B + writebytetoaddr $01, $202479C + writebytetoaddr $60, $202479D + writebytetoaddr $00, $202479E + writebytetoaddr $00, $202479F + writebytetoaddr $13, $20247A0 + writebytetoaddr $60, $20247A1 + writebytetoaddr $70, $20247A2 + writebytetoaddr $47, $20247A3 + writebytetoaddr $80, $20247A4 + writebytetoaddr $5D, $20247A5 + writebytetoaddr $00, $20247A6 + writebytetoaddr $03, $20247A7 + writebytetoaddr $34, $20247A8 + writebytetoaddr $2C, $20247A9 + writebytetoaddr $02, $20247AA + writebytetoaddr $02, $20247AB + writebytetoaddr $90, $20247AC + writebytetoaddr $5D, $20247AD + writebytetoaddr $00, $20247AE + writebytetoaddr $03, $20247AF + writebytetoaddr $54, $20247B0 + writebytetoaddr $4A, $20247B1 + writebytetoaddr $02, $20247B2 + writebytetoaddr $02, $20247B3 + writebytetoaddr $EC, $20247B4 + writebytetoaddr $2F, $20247B5 + writebytetoaddr $02, $20247B6 + writebytetoaddr $02, $20247B7 + writebytetoaddr $02, $20247B8 + writebytetoaddr $00, $20247B9 + writebytetoaddr $3E, $20247BA + writebytetoaddr $01, $20247BB + writebytetoaddr $F9, $20247BC + writebytetoaddr $26, $20247BD + writebytetoaddr $00, $20247BE + writebytetoaddr $03, $20247BF + writebytetoaddr $5E, $20247C0 + writebytetoaddr $4A, $20247C1 + writebytetoaddr $02, $20247C2 + writebytetoaddr $02, $20247C3 + writebytetoaddr $65, $20247C4 + writebytetoaddr $EB, $20247C5 + writebytetoaddr $B9, $20247C6 + writebytetoaddr $EE, $20247C7 + writebytetoaddr $A1, $20247C8 + writebytetoaddr $61, $20247C9 + writebytetoaddr $35, $20247CA + writebytetoaddr $0A, $20247CB + writebytetoaddr $B1, $20247CC + writebytetoaddr $61, $20247CD + writebytetoaddr $08, $20247CE + writebytetoaddr $08, $20247CF + writebytetoaddr $C4, $20247D0 + writebytetoaddr $75, $20247D1 + writebytetoaddr $03, $20247D2 + writebytetoaddr $02, $20247D3 + writebytetoaddr $00, $20247D4 + writebytetoaddr $6F, $20247D5 + writebytetoaddr $FD, $20247D6 + writebytetoaddr $FF, $20247D7 + writebytetoaddr $48, $20247D8 + writebytetoaddr $0E, $20247D9 + writebytetoaddr $00, $20247DA + writebytetoaddr $03, $20247DB + writebytetoaddr $65, $20247DC + writebytetoaddr $92, $20247DD + writebytetoaddr $02, $20247DE + writebytetoaddr $02, $20247DF + writebytetoaddr $C4, $20247E0 + writebytetoaddr $22, $20247E1 + writebytetoaddr $00, $20247E2 + writebytetoaddr $03, $20247E3 + + writebytetoaddr $28, $2024918 + writebytetoaddr $00, $202491C + writebytetoaddr $53, $202491D + + callasm $20248FD ;Do Memory Copy Again + + writebytetoaddr $00, $2024744 ;Unown Outbreak Info + writebytetoaddr $00, $2024745 + writebytetoaddr $1C, $2024746 + writebytetoaddr $00, $2024747 + writebytetoaddr $0A, $2024748 + writebytetoaddr $00, $2024749 + writebytetoaddr $00, $202474A + writebytetoaddr $0A, $202474B + writebytetoaddr $ED, $202474C + writebytetoaddr $00, $202474D + writebytetoaddr $00, $202474E + writebytetoaddr $00, $202474F + writebytetoaddr $00, $2024750 + writebytetoaddr $00, $2024751 + writebytetoaddr $00, $2024752 + writebytetoaddr $00, $2024753 + writebytetoaddr $00, $2024754 + writebytetoaddr $64, $2024755 + writebytetoaddr $00, $2024756 + writebytetoaddr $0B, $2024757 + writebytetoaddr $9D, $2024758 + writebytetoaddr $00, $2024759 + writebytetoaddr $06, $202475A + writebytetoaddr $00, $202475B + writebytetoaddr $35, $202475C + writebytetoaddr $00, $202475D + writebytetoaddr $FF, $202475E + writebytetoaddr $FF, $202475F + + + writebytetoaddr $07, $2024918 + writebytetoaddr $90, $202491C + writebytetoaddr $85, $202491D + + callasm $20248FD ;Do Memory Copy Again + + writebytetoaddr $03, $2024744 ;Memory copy for second half of script? + writebytetoaddr $48, $2024745 + writebytetoaddr $05, $2024746 + writebytetoaddr $49, $2024747 + writebytetoaddr $03, $2024748 + writebytetoaddr $4A, $2024749 + writebytetoaddr $0B, $202474A + writebytetoaddr $DF, $202474B + writebytetoaddr $04, $202474C + writebytetoaddr $48, $202474D + writebytetoaddr $05, $202474E + writebytetoaddr $49, $202474F + writebytetoaddr $08, $2024750 + writebytetoaddr $60, $2024751 + writebytetoaddr $70, $2024752 + writebytetoaddr $47, $2024753 + writebytetoaddr $A0, $2024754 + writebytetoaddr $93, $2024755 + writebytetoaddr $02, $2024756 + writebytetoaddr $02, $2024757 + writebytetoaddr $69, $2024758 + writebytetoaddr $00, $2024759 + writebytetoaddr $00, $202475A + writebytetoaddr $04, $202475B + writebytetoaddr $60, $202475C + writebytetoaddr $54, $202475D + writebytetoaddr $02, $202475E + writebytetoaddr $02, $202475F + writebytetoaddr $60, $2024760 + writebytetoaddr $54, $2024761 + writebytetoaddr $02, $2024762 + writebytetoaddr $02, $2024763 + writebytetoaddr $48, $2024764 + writebytetoaddr $0E, $2024765 + writebytetoaddr $00, $2024766 + writebytetoaddr $03, $2024767 + + + writebytetoaddr $09, $2024918 + writebytetoaddr $A0, $202491C + writebytetoaddr $53, $202491D + + callasm $20248FD ;Do Memory Copy Again + + + + + end + + + + +DataEnd: + EOF + \ No newline at end of file diff --git a/SOURCE/Entei - Emerald/eonticket.md5 b/SOURCE/Entei - Emerald/eonticket.md5 new file mode 100644 index 0000000..cb426e5 --- /dev/null +++ b/SOURCE/Entei - Emerald/eonticket.md5 @@ -0,0 +1 @@ +901180e44767e19e5dc9d5df881fe123 00-C000-EN.z80 diff --git a/SOURCE/Entei - Emerald/nedclib.dll b/SOURCE/Entei - Emerald/nedclib.dll new file mode 100644 index 0000000..8a71160 Binary files /dev/null and b/SOURCE/Entei - Emerald/nedclib.dll differ diff --git a/SOURCE/Entei - Emerald/nedcmake b/SOURCE/Entei - Emerald/nedcmake new file mode 100644 index 0000000..45b06a3 Binary files /dev/null and b/SOURCE/Entei - Emerald/nedcmake differ diff --git a/SOURCE/Entei - Emerald/nevpk b/SOURCE/Entei - Emerald/nevpk new file mode 100644 index 0000000..12cf788 Binary files /dev/null and b/SOURCE/Entei - Emerald/nevpk differ diff --git a/SOURCE/Entei - Emerald/prologue.asm b/SOURCE/Entei - Emerald/prologue.asm new file mode 100644 index 0000000..0db33e1 --- /dev/null +++ b/SOURCE/Entei - Emerald/prologue.asm @@ -0,0 +1,15 @@ +INCLUDE "../macros.asm" +SECTION "prologue", ROM0[$100] + + db "GameFreak inc." + db 0,0,0,0,0,0 + dd 0 + Text "e reader" ; no string terminator + db 0,0,0,0,$01,$55 + db 0,0,0,0 + db REGION + db 0 + db "GameFreak inc." + db 0,0 + + EOF \ No newline at end of file diff --git a/SOURCE/Entei - Emerald/rgbasm b/SOURCE/Entei - Emerald/rgbasm new file mode 100644 index 0000000..deb0f72 Binary files /dev/null and b/SOURCE/Entei - Emerald/rgbasm differ diff --git a/SOURCE/Entei - Emerald/rgblink b/SOURCE/Entei - Emerald/rgblink new file mode 100644 index 0000000..c38372b Binary files /dev/null and b/SOURCE/Entei - Emerald/rgblink differ diff --git a/SOURCE/Entei - RubyRev2/00-C000.asm b/SOURCE/Entei - RubyRev2/00-C000.asm new file mode 100644 index 0000000..456000a --- /dev/null +++ b/SOURCE/Entei - RubyRev2/00-C000.asm @@ -0,0 +1,162 @@ +INCLUDE "../macros.asm" +SECTION "eonticket",ROM0[$100] +jp Start +db $00 + + +TicketPalette: ; 1604 + INCBIN "entei.pal.bin" + +Prologue: + INCBIN "prologue-{REGION_NAME}.bin" + +DataPacket: ; 164a + INCBIN "eonticket-{REGION_NAME}.mev" + db 0,0,0 ; padding + +INCLUDE "../common/mem_struct.asm" + +SpriteData: + dw TicketPalette + db $00,$00,$01,$01,$01,$01,$01 ; + +Instructions1: ; 1921 + db "Link e-Reader to Pokémon Game\n" + db "Press the B Button to cancel.\0" + +DeliveryInProcess: ; 1a0d + db "ENTEI EVENT delivery in Progress...\0" + +TicketDelivered: ; 1a2f + db "ENTEI EVENT delivered!\0" + +; this function is subtly different than the one +; on the Battle e cards, for no apparent reason +TransferData: + LD_IND_HL SomeVar1 + push de + ld hl, $bbbb + LD_IND_HL Space_1 + EX_DE_HL + LD_IND_HL Space_2 + API_0C7 Space_1 + + wait $01 + pop hl + inc hl + ld b, $01 + call WordShiftRight + + LD_IND_HL SomeVar2 +.asm_1aa1 + LD_HL_IND SomeVar2 + ld a, l + or h + ret z + + ld hl, $8888 + LD_IND_HL Space_1 + ld e, $01 + +.asm_1aaf + ld a, e + cp $08 + jr nc, .asm_1ad9 + + push de + LD_HL_IND SomeVar1 + ld c, [hl] + inc hl + ld b, [hl] + inc hl + LD_IND_HL SomeVar1 + ld l, e + ld h, $00 + add hl, hl + ld de, Space_1 + add hl, de + ld [hl], c + inc hl + ld [hl], b + pop de + LD_HL_IND SomeVar2 + dec hl + LD_IND_HL SomeVar2 + ld a, l + or h + jr z, .asm_1ad9 + + inc e + jr .asm_1aaf + +.asm_1ad9 + API_0C7 Space_1 + wait $01 + jr .asm_1aa1 + +Start: ; 1ae2 + API_121 + + CreateCustomSprite SpriteHandlePtr, $80, SpriteData + SetSpritePos SpriteHandlePtr, 120, 64 + SpriteHide SpriteHandlePtr + + CreateRegion RegionHandlePtr, 30, 6, 0, 14, 0, 4 + + ld h, a + ld l, $00 + SetTextSize + + API_09B RegionHandlePtr, $0102 + SetTextColor RegionHandlePtr, 2, 0 + SetRegionColor RegionHandlePtr, 0 + SetBackgroundPalette 16, $0040, TicketPalette + + FadeIn 16 + wait 16 + + API $0C6 + + DrawText RegionHandlePtr, Instructions1, 8, 4 + API $08D + +INCLUDE "../common/wait_for_link.asm" + + SpriteShow SpriteHandlePtr + + + API $08D + + ld a, b + nop + +UNKNOWN_VALUE EQU $0078 +INCLUDE "../common/wait_for_ready.asm" + + DrawText RegionHandlePtr, DeliveryInProcess, 8, 4 + +DATA_TRANSFER_LENGTH EQU 6144 +INCLUDE "../common/transfer_data.asm" + ld hl, $5fff + LD_IND_HL Space_1 + API_0C7 Space_1 + + wait $80 + + SpriteHide SpriteHandlePtr + + DrawText RegionHandlePtr, TicketDelivered, 8, 4 + + API $08D + ld c, a + nop + +INCLUDE "../common/wrap_up.asm" + +INCLUDE "../common/word_shift_right.asm" + +SomeVar1: ; 1CA2 + db $FF,0 ; mark EOF +RegionHandlePtr: db 0 ; 1CA4 +SpriteHandlePtr: db 0,0 ; 1CA5 +SomeVar2: db 0,0 ; 1CA7 \ No newline at end of file diff --git a/SOURCE/Entei - RubyRev2/Makefile b/SOURCE/Entei - RubyRev2/Makefile new file mode 100644 index 0000000..11d6e49 --- /dev/null +++ b/SOURCE/Entei - RubyRev2/Makefile @@ -0,0 +1,40 @@ +all: 00-C000-EN.raw verify +verify: + md5sum --check eonticket.md5 + + +eonticket-%.tx: eonticket.asm + python ../scripts/regionalize.py $< $@ $* $* +eonticket-%.o: eonticket-%.tx + ./rgbasm -o $@ $< +eonticket-%.gbc: eonticket-%.o + ./rgblink -o $@ $< +eonticket-%.bin: eonticket-%.gbc + python ../scripts/stripgbc.py $< $@ +eonticket-%.mev: eonticket-%.bin + python ../scripts/checksum.py $< $@ + +prologue-%.tx: prologue.asm + python ../scripts/regionalize.py $< $@ $* $* +prologue-%.o: prologue-%.tx + ./rgbasm -o $@ $< +prologue-%.gbc: prologue-%.o + ./rgblink -o $@ $< +prologue-%.bin: prologue-%.gbc + python ../scripts/stripgbc.py $< $@ + +00-C000-%.tx: 00-C000.asm eonticket-%.mev prologue-%.bin + python ../scripts/ereadertext.py $< $@ $* +00-C000-%.o: 00-C000-%.tx + ./rgbasm -o $@ $< +00-C000-%.gbc: 00-C000-%.o + ./rgblink -o $@ $< +00-C000-%.z80: 00-C000-%.gbc + python ../scripts/stripgbc.py $< $@ +00-C000-%.vpk: 00-C000-%.z80 + ./nevpk -c -i $< -o $@ +00-C000-%.raw: 00-C000-%.vpk + ./nedcmake -i $< -o $@ -type 1 -region 1 + +clean: + rm -f *.tx *.o *.gbc *.z80 *.bin *.mev *.vpk *.raw \ No newline at end of file diff --git a/SOURCE/Entei - RubyRev2/entei.pal.bin b/SOURCE/Entei - RubyRev2/entei.pal.bin new file mode 100644 index 0000000..ebbc1cc Binary files /dev/null and b/SOURCE/Entei - RubyRev2/entei.pal.bin differ diff --git a/SOURCE/Entei - RubyRev2/eonticket.asm b/SOURCE/Entei - RubyRev2/eonticket.asm new file mode 100644 index 0000000..802ef32 --- /dev/null +++ b/SOURCE/Entei - RubyRev2/eonticket.asm @@ -0,0 +1,780 @@ +INCLUDE "../macros.asm" +INCLUDE "../constants/items.asm" +INCLUDE "../constants/scriptcommandsentei.asm" + + Mystery_Event + + db CHECKSUM_CRC + dd 0 ; checksum placeholder + GBAPTR DataStart + GBAPTR DataEnd + +DataStart: + db IN_GAME_SCRIPT + db 24,15 ; Mt Pyre + db 3 ; Guy on left grave + GBAPTR NormanScriptStart + GBAPTR NormanScriptEnd + + db PRELOAD_SCRIPT + GBAPTR PreloadScriptStart + + db END_OF_CHUNKS + + +GoSeeYourFather: + Text_EN "An person hunting the LEGENDARY BEASTS\n" + Text_EN "has appeared in MT.Pyre...@" + + + +NormanScriptStart: + setvirtualaddress NormanScriptStart + + + + db $43 ;This checks if your party is bigger than 0 + + compare LASTRESULT, 0 ;It's so I can store thumb code in static spot. + + virtualgotoif 2, Start ;It should never fail. + + + BEASTRNG + + + + + +Start: + + comparefarbytetobyte $0202886B, $1 + + virtualgotoif 1, FieryPath + + writebytetoaddr $01, $0202886B + + fadesong $15F + + pause $10 + + applymovement $3, $2025074 + + pause $10 + + sound $15 + + pause $10 + + faceplayer + + virtualmsgbox Hello + + waitmsg + + waitkeypress + + release + + getplayerpos $8000, $8001 + + compare $8001, $A + + virtualgotoif 1, Movement + + applymovement $FF, $2025088 + + pause $11 + +Movement: + + applymovement $03, $2025077 + + pause $90 + + db $35 ;this returns the songs map to current map + + writebytetoaddr $0E, $02028dca + + random $000C + + callasm $02025009 + + end + + +FieryPath: + + comparefarbytetobyte $0202886A, $1 + + virtualgotoif 1, SuccessBoulder + + getplayerpos $8000, $8001 + + compare $8000, $10 + + virtualgotoif 5, FailBoulder + + compare $800C, $4 + + virtualgotoif 5, FailBoulder + + writebytetoaddr $C9, $2028230 + + special $13B + + sound $29 + + pause $35 + + playmoncry $C9, $0 + + pause $25 + +SuccessBoulder: + + setvar $8004, 0 + + special2 $8004, $147 + + compare $8004, $C9 + + virtualgotoif 1, Letter + + +BoulderMessage2: + + writebytetoaddr $01, $0202886A + + braillemessage $02025358 + + waitkeypress + + hidebox $0, $0, $1D, $13 + + end + + +FailBoulder: + + braillemessage $202533C + + waitkeypress + + hidebox $0, $0, $1D, $13 + + end + +Letter: + + callasm $2025051 + + compare $8004, $00FF + + virtualgotoif 1, Battle + + virtualgotoif 5, BoulderMessage2 + + +Battle: + + + db $43 + + compare LASTRESULT, 5 + + virtualgotoif 2, NoRoom + + copyvar $800B, $800D + + setwildbattle $F4, $55, $D7 + + callasm $02028DDF + + applymovement $FF, $2025074 + + sound $15 + + special $136 + + sound $58 + + sound $58 + + waitstate + + pause $28 + + special $136 + + waitstate + + pause $28 + + playmoncry $F4, $0 + + waitmoncry + + special $138 + + playsong $0166, $0 + + waitstate + + writebytetoaddr $00, $2028230 + + db $43 + + comparevar LASTRESULT, $800B + + virtualgotoif 3, FlewAway + + callasm $02028ea3 + + braillemessage $20250A1 + + waitkeypress + + hidebox $0, $0, $1D, $13 + + killscript + + +NoRoom: + braillemessage $202508D + + waitkeypress + + hidebox $0, $0, $1D, $13 + + end + + +FlewAway: + db $97, $01 + db $97, $00 + virtualmsgbox Flew + waitmsg + waitkeypress + release + end + + +Flew: + Text_EN "The ENTEI flew away!@" + +Hello: + Text_EN "My name’s Eusine. I’m on the trail\n" + Text_EN "of a POKéMON named SUICUNE.\p" + Text_EN "And you are...? \v1?\n" + Text_EN "Glad to meet you!\p" + Text_EN "I’ve read rumors of a POKéMON named\n" + Text_EN "ENTEI in HOENN.\p" + Text_EN "It, RAIKOU, and SUICUNE are often\n" + Text_EN "seen together.\p" + Text_EN "I read that there’s ANCIENT TEXT\n" + Text_EN "in FIERY PATH.\p" + Text_EN "You investigate, I’ll continue to\n" + Text_EN "search for clues!@" + + + + +NormanScriptEnd: + + +PreloadScriptStart: + setvirtualaddress PreloadScriptStart + + + writebytetoaddr $00, $0202886A + + writebytetoaddr $00, $0202886C + + writebytetoaddr $00, $0202886D + + writebytetoaddr $00, $0202886E + + writebytetoaddr $00, $0202886F + + writebytetoaddr $00, $02028870 + + writebytetoaddr $00, $02028871 + + writebytetoaddr $E4, $2024FF0 + writebytetoaddr $E4, $2025090 + writebytetoaddr $E4, $2025130 + writebytetoaddr $E4, $20251D0 + writebytetoaddr $E4, $2025270 + writebytetoaddr $E4, $2025310 + + callasm $08135c65 + + writebytetoaddr $03, $202533C ;First Braille Box + writebytetoaddr $04, $202533D + writebytetoaddr $1A, $202533E + writebytetoaddr $0D, $202533F + writebytetoaddr $04, $2025340 + writebytetoaddr $06, $2025341 + writebytetoaddr $06, $2025342 + writebytetoaddr $00, $2025343 + writebytetoaddr $09, $2025344 + writebytetoaddr $1B, $2025345 + writebytetoaddr $0B, $2025346 + writebytetoaddr $00, $2025347 + writebytetoaddr $2E, $2025348 + writebytetoaddr $0D, $2025349 + writebytetoaddr $09, $202534A + writebytetoaddr $1D, $202534B + writebytetoaddr $09, $202534C + writebytetoaddr $FE, $202534D + writebytetoaddr $06, $202534E + writebytetoaddr $00, $202534F + writebytetoaddr $16, $2025350 + writebytetoaddr $1E, $2025351 + writebytetoaddr $01, $2025352 + writebytetoaddr $1D, $2025353 + writebytetoaddr $1E, $2025354 + writebytetoaddr $09, $2025355 + writebytetoaddr $0B, $2025356 + writebytetoaddr $FF, $2025357 + + writebytetoaddr $01, $2025358 ;Second Braille Box + writebytetoaddr $03, $2025359 + writebytetoaddr $1C, $202535A + writebytetoaddr $0e, $202535B + writebytetoaddr $02, $202535C + writebytetoaddr $04, $202535D + writebytetoaddr $1E, $202535E + writebytetoaddr $0D, $202535F + writebytetoaddr $09, $2025360 + writebytetoaddr $3B, $2025361 + writebytetoaddr $00, $2025362 + writebytetoaddr $01, $2025363 + writebytetoaddr $1D, $2025364 + writebytetoaddr $09, $2025365 + writebytetoaddr $00, $2025366 + writebytetoaddr $07, $2025367 + writebytetoaddr $1D, $2025368 + writebytetoaddr $09, $2025369 + writebytetoaddr $09, $202536A + writebytetoaddr $FE, $202536B + writebytetoaddr $06, $202536C + writebytetoaddr $1B, $202536D + writebytetoaddr $00, $202536E + writebytetoaddr $1E, $202536F + writebytetoaddr $0D, $2025370 + writebytetoaddr $09, $2025371 + writebytetoaddr $00, $2025372 + writebytetoaddr $01, $2025373 + writebytetoaddr $16, $2025374 + writebytetoaddr $0D, $2025375 + writebytetoaddr $FE, $2025376 + writebytetoaddr $05, $2025377 + writebytetoaddr $1D, $2025378 + writebytetoaddr $06, $2025379 + writebytetoaddr $1B, $202537A + writebytetoaddr $0F, $202537B + writebytetoaddr $00, $202537C + writebytetoaddr $07, $202537D + writebytetoaddr $00, $202537E + writebytetoaddr $07, $202537F + writebytetoaddr $06, $2025380 + writebytetoaddr $1D, $2025381 + writebytetoaddr $16, $2025382 + writebytetoaddr $1E, $2025383 + writebytetoaddr $FF, $2025384 + + writebytetoaddr $01, $2025385 ;Unown Letter Table Braille + writebytetoaddr $05, $2025386 + writebytetoaddr $0B, $2025387 + writebytetoaddr $09, $2025388 + writebytetoaddr $07, $2025389 + writebytetoaddr $0E, $202538A + writebytetoaddr $15, $202538B + writebytetoaddr $13, $202538C + writebytetoaddr $19, $202538D + writebytetoaddr $34, $202538E + writebytetoaddr $39, $202538F + writebytetoaddr $1E, $2025390 + writebytetoaddr $11, $2025391 + + writebytetoaddr $00, $2025392 ;Unown Letter Table. + writebytetoaddr $01, $2025393 + writebytetoaddr $03, $2025394 + writebytetoaddr $04, $2025395 + writebytetoaddr $05, $2025396 + writebytetoaddr $09, $2025397 + writebytetoaddr $0B, $2025398 + writebytetoaddr $0C, $2025399 + writebytetoaddr $0E, $202539A + writebytetoaddr $1B, $202539B + writebytetoaddr $19, $202539C + writebytetoaddr $13, $202539D + writebytetoaddr $16, $202539E + + + writebytetoaddr $00, $2028230 ;Unown Outbreak Info + writebytetoaddr $00, $2028231 + writebytetoaddr $1C, $2028232 + writebytetoaddr $00, $2028233 + writebytetoaddr $0A, $2028234 + writebytetoaddr $00, $2028235 + writebytetoaddr $00, $2028236 + writebytetoaddr $0A, $2028237 + writebytetoaddr $ED, $2028238 + writebytetoaddr $00, $2028239 + writebytetoaddr $00, $202823A + writebytetoaddr $00, $202823B + writebytetoaddr $00, $202823C + writebytetoaddr $00, $202823D + writebytetoaddr $00, $202823E + writebytetoaddr $00, $202823F + writebytetoaddr $00, $2028240 + writebytetoaddr $64, $2028241 + writebytetoaddr $F9, $2028242 + writebytetoaddr $0A, $2028243 + writebytetoaddr $9D, $2028244 + writebytetoaddr $00, $2028245 + writebytetoaddr $06, $2028246 + writebytetoaddr $00, $2028247 + writebytetoaddr $35, $2028248 + writebytetoaddr $00, $2028249 + writebytetoaddr $FF, $202824A + writebytetoaddr $FF, $202824B + + + writebytetoaddr $0, $202539F ;Temp Entei. Starts with bit for alignment. + writebytetoaddr $0, $20253A0 + writebytetoaddr $0, $20253A1 + writebytetoaddr $0, $20253A2 + writebytetoaddr $0, $20253A3 + writebytetoaddr $0, $20253A4 + writebytetoaddr $0, $20253A5 + writebytetoaddr $0, $20253A6 + writebytetoaddr $0, $20253A7 + writebytetoaddr $BF, $20253A8 + writebytetoaddr $C8, $20253A9 + writebytetoaddr $CE, $20253AA + writebytetoaddr $BF, $20253AB + writebytetoaddr $C3, $20253AC + writebytetoaddr $FF, $20253AD + writebytetoaddr $0, $20253AE + writebytetoaddr $0, $20253AF + writebytetoaddr $0, $20253B0 + writebytetoaddr $0, $20253B1 + writebytetoaddr $2, $20253B2 + writebytetoaddr $2, $20253B3 + writebytetoaddr $C0, $20253B4 + writebytetoaddr $BB, $20253B5 + writebytetoaddr $CC, $20253B6 + writebytetoaddr $CE, $20253B7 + writebytetoaddr $FF, $20253B8 + writebytetoaddr $0, $20253B9 + writebytetoaddr $0, $20253BA + writebytetoaddr $0, $20253BB + writebytetoaddr $2C, $20253BC + writebytetoaddr $9C, $20253BD + writebytetoaddr $0, $20253BE + writebytetoaddr $0, $20253BF + writebytetoaddr $F4, $20253C0 + writebytetoaddr $0, $20253C1 + writebytetoaddr $0, $20253C2 + writebytetoaddr $0, $20253C3 + writebytetoaddr $A8, $20253C4 + writebytetoaddr $B6, $20253C5 + writebytetoaddr $0B, $20253C6 + writebytetoaddr $0, $20253C7 + writebytetoaddr $0, $20253C8 + writebytetoaddr $23, $20253C9 + writebytetoaddr $0, $20253CA + writebytetoaddr $0, $20253CB + writebytetoaddr $A4, $20253CC + writebytetoaddr $0, $20253CD + writebytetoaddr $5B, $20253CE + writebytetoaddr $1, $20253CF + writebytetoaddr $4C, $20253D0 + writebytetoaddr $0, $20253D1 + writebytetoaddr $7E, $20253D2 + writebytetoaddr $0, $20253D3 + writebytetoaddr $0A, $20253D4 + writebytetoaddr $14, $20253D5 + writebytetoaddr $0A, $20253D6 + writebytetoaddr $5, $20253D7 + writebytetoaddr $0, $20253D8 + writebytetoaddr $0, $20253D9 + writebytetoaddr $0, $20253DA + writebytetoaddr $0, $20253DB + writebytetoaddr $0, $20253DC + writebytetoaddr $0, $20253DD + writebytetoaddr $0, $20253DE + writebytetoaddr $0, $20253DF + writebytetoaddr $0, $20253E0 + writebytetoaddr $0, $20253E1 + writebytetoaddr $0, $20253E2 + writebytetoaddr $0, $20253E3 + writebytetoaddr $0, $20253E4 + writebytetoaddr $7D, $20253E5 + writebytetoaddr $A8, $20253E6 + writebytetoaddr $27, $20253E7 + writebytetoaddr $0, $20253E8 + writebytetoaddr $0, $20253E9 + writebytetoaddr $0, $20253EA + writebytetoaddr $0, $20253EB + writebytetoaddr $0, $20253EC + writebytetoaddr $0, $20253ED + writebytetoaddr $0, $20253EE + writebytetoaddr $1, $20253EF + + writebytetoaddr $E4, $2024FF0 ;Substructure Copy Table + writebytetoaddr $B4, $2024FF1 + writebytetoaddr $D8, $2024FF2 + writebytetoaddr $9C, $2024FF3 + writebytetoaddr $78, $2024FF4 + writebytetoaddr $6C, $2024FF5 + writebytetoaddr $E1, $2024FF6 + writebytetoaddr $B1, $2024FF7 + writebytetoaddr $D2, $2024FF8 + writebytetoaddr $93, $2024FF9 + writebytetoaddr $72, $2024FFA + writebytetoaddr $63, $2024FFB + writebytetoaddr $C9, $2024FFC + writebytetoaddr $8D, $2024FFD + writebytetoaddr $C6, $2024FFE + writebytetoaddr $87, $2024FFF + writebytetoaddr $4E, $2025000 + writebytetoaddr $4B, $2025001 + writebytetoaddr $39, $2025002 + writebytetoaddr $2D, $2025003 + writebytetoaddr $36, $2025004 + writebytetoaddr $27, $2025005 + writebytetoaddr $1E, $2025006 + writebytetoaddr $1B, $2025007 + + writebytetoaddr $FF, $2025008 ;Calc RamScript Checksum + writebytetoaddr $B5, $2025009 + writebytetoaddr $0C, $202500A + writebytetoaddr $48, $202500B + writebytetoaddr $0C, $202500C + writebytetoaddr $49, $202500D + writebytetoaddr $0D, $202500E + writebytetoaddr $4A, $202500F + writebytetoaddr $0D, $2025010 + writebytetoaddr $4B, $2025011 + writebytetoaddr $0E, $2025012 + writebytetoaddr $4C, $2025013 + writebytetoaddr $00, $2025014 + writebytetoaddr $78, $2025015 + writebytetoaddr $01, $2025016 + writebytetoaddr $44, $2025017 + writebytetoaddr $09, $2025018 + writebytetoaddr $78, $2025019 + writebytetoaddr $11, $202501A + writebytetoaddr $70, $202501B + writebytetoaddr $04, $202501C + writebytetoaddr $44, $202501D + writebytetoaddr $24, $202501E + writebytetoaddr $78, $202501F + writebytetoaddr $1C, $2025020 + writebytetoaddr $70, $2025021 + writebytetoaddr $7C, $2025022 + writebytetoaddr $46, $2025023 + writebytetoaddr $07, $2025024 + writebytetoaddr $34, $2025025 + writebytetoaddr $A6, $2025026 + writebytetoaddr $46, $2025027 + writebytetoaddr $02, $2025028 + writebytetoaddr $48, $2025029 + writebytetoaddr $00, $202502A + writebytetoaddr $47, $202502B + writebytetoaddr $02, $202502C + writebytetoaddr $48, $202502D + writebytetoaddr $02, $202502E + writebytetoaddr $80, $202502F + writebytetoaddr $FF, $2025030 + writebytetoaddr $BD, $2025031 + writebytetoaddr $00, $2025032 + writebytetoaddr $00, $2025033 + writebytetoaddr $81, $2025034 + writebytetoaddr $57, $2025035 + writebytetoaddr $06, $2025036 + writebytetoaddr $08, $2025037 + writebytetoaddr $C4, $2025038 + writebytetoaddr $8D, $2025039 + writebytetoaddr $02, $202503A + writebytetoaddr $02, $202503B + writebytetoaddr $DC, $202503C + writebytetoaddr $E8, $202503D + writebytetoaddr $02, $202503E + writebytetoaddr $02, $202503F + writebytetoaddr $85, $2025040 + writebytetoaddr $53, $2025041 + writebytetoaddr $02, $2025042 + writebytetoaddr $02, $2025043 + writebytetoaddr $7D, $2025044 + writebytetoaddr $53, $2025045 + writebytetoaddr $02, $2025046 + writebytetoaddr $02, $2025047 + writebytetoaddr $DA, $2025048 + writebytetoaddr $8F, $2025049 + writebytetoaddr $02, $202504A + writebytetoaddr $02, $202504B + writebytetoaddr $92, $202504C + writebytetoaddr $53, $202504D + writebytetoaddr $02, $202504E + writebytetoaddr $02, $202504F + + writebytetoaddr $FF, $2025050 ;CheckUnownLetter + writebytetoaddr $B5, $2025051 + writebytetoaddr $7C, $2025052 + writebytetoaddr $46, $2025053 + writebytetoaddr $0B, $2025054 + writebytetoaddr $34, $2025055 + writebytetoaddr $A6, $2025056 + writebytetoaddr $46, $2025057 + writebytetoaddr $03, $2025058 + writebytetoaddr $48, $2025059 + writebytetoaddr $04, $202505A + writebytetoaddr $4B, $202505B + writebytetoaddr $00, $202505C + writebytetoaddr $68, $202505D + writebytetoaddr $18, $202505E + writebytetoaddr $47, $202505F + writebytetoaddr $03, $2025060 + writebytetoaddr $49, $2025061 + writebytetoaddr $08, $2025062 + writebytetoaddr $70, $2025063 + writebytetoaddr $FF, $2025064 + writebytetoaddr $BC, $2025065 + writebytetoaddr $00, $2025066 + writebytetoaddr $BD, $2025067 + writebytetoaddr $60, $2025068 + writebytetoaddr $43, $2025069 + writebytetoaddr $00, $202506A + writebytetoaddr $03, $202506B + writebytetoaddr $95, $202506C + writebytetoaddr $D4, $202506D + writebytetoaddr $09, $202506E + writebytetoaddr $08, $202506F + writebytetoaddr $CC, $2025070 + writebytetoaddr $E8, $2025071 + writebytetoaddr $02, $2025072 + writebytetoaddr $02, $2025073 + + writebytetoaddr $56, $2025074 ;EusineMove + writebytetoaddr $12, $2025075 + writebytetoaddr $FE, $2025076 + + writebytetoaddr $09, $2025077 ;Bye Bye Eusine + writebytetoaddr $09, $2025078 + writebytetoaddr $0A, $2025079 + writebytetoaddr $09, $202507A + writebytetoaddr $09, $202507B + writebytetoaddr $09, $202507C + writebytetoaddr $09, $202507D + writebytetoaddr $09, $202507E + writebytetoaddr $09, $202507F + writebytetoaddr $09, $2025080 + writebytetoaddr $09, $2025081 + writebytetoaddr $09, $2025082 + writebytetoaddr $09, $2025083 + writebytetoaddr $09, $2025084 + writebytetoaddr $09, $2025085 + writebytetoaddr $09, $2025086 + writebytetoaddr $FE, $2025087 + + writebytetoaddr $0B, $2025088 ;Get out of Eusines way. + writebytetoaddr $02, $2025089 + writebytetoaddr $14, $202508A + writebytetoaddr $14, $202508B + writebytetoaddr $FE, $202508C + + writebytetoaddr $01, $202508D ;No Room in Party + writebytetoaddr $07, $202508E + writebytetoaddr $1C, $202508F + writebytetoaddr $0A, $2025090 + writebytetoaddr $02, $2025091 + writebytetoaddr $08, $2025092 + writebytetoaddr $17, $2025093 + writebytetoaddr $01, $2025094 + writebytetoaddr $1D, $2025095 + writebytetoaddr $1E, $2025096 + writebytetoaddr $3B, $2025097 + writebytetoaddr $00, $2025098 + writebytetoaddr $06, $2025099 + writebytetoaddr $16, $202509A + writebytetoaddr $00, $202509B + writebytetoaddr $07, $202509C + writebytetoaddr $31, $202509D + writebytetoaddr $15, $202509E + writebytetoaddr $15, $202509F + writebytetoaddr $FF, $20250A0 + + writebytetoaddr $00, $20250A1 ;ADVENTURE CONTINUE + writebytetoaddr $02, $20250A2 + writebytetoaddr $1D, $20250A3 + writebytetoaddr $11, $20250A4 + writebytetoaddr $01, $20250A5 + writebytetoaddr $03, $20250A6 + writebytetoaddr $3B, $20250A7 + writebytetoaddr $19, $20250A8 + writebytetoaddr $31, $20250A9 + writebytetoaddr $1D, $20250AA + writebytetoaddr $00, $20250AB + writebytetoaddr $01, $20250AC + writebytetoaddr $0B, $20250AD + writebytetoaddr $35, $20250AE + writebytetoaddr $09, $20250AF + writebytetoaddr $1B, $20250B0 + writebytetoaddr $1E, $20250B1 + writebytetoaddr $31, $20250B2 + writebytetoaddr $1D, $20250B3 + writebytetoaddr $09, $20250B4 + writebytetoaddr $FE, $20250B5 + writebytetoaddr $2E, $20250B6 + writebytetoaddr $06, $20250B7 + writebytetoaddr $15, $20250B8 + writebytetoaddr $15, $20250B9 + writebytetoaddr $00, $20250BA + writebytetoaddr $03, $20250BB + writebytetoaddr $19, $20250BC + writebytetoaddr $1B, $20250BD + writebytetoaddr $1E, $20250BE + writebytetoaddr $06, $20250BF + writebytetoaddr $1B, $20250C0 + writebytetoaddr $31, $20250C1 + writebytetoaddr $09, $20250C2 + writebytetoaddr $FE, $20250C3 + writebytetoaddr $19, $20250C4 + writebytetoaddr $1B, $20250C5 + writebytetoaddr $00, $20250C6 + writebytetoaddr $1E, $20250C7 + writebytetoaddr $0D, $20250C8 + writebytetoaddr $09, $20250C9 + writebytetoaddr $00, $20250CA + writebytetoaddr $1B, $20250CB + writebytetoaddr $09, $20250CC + writebytetoaddr $33, $20250CD + writebytetoaddr $1E, $20250CE + writebytetoaddr $FE, $20250CF + writebytetoaddr $09, $20250D0 + writebytetoaddr $00, $20250D1 + writebytetoaddr $03, $20250D2 + writebytetoaddr $01, $20250D3 + writebytetoaddr $1D, $20250D4 + writebytetoaddr $0B, $20250D5 + writebytetoaddr $FF, $20250D6 + + virtualloadpointer GoSeeYourFather + + setbyte 2 + + + end + + + + +DataEnd: + EOF + \ No newline at end of file diff --git a/SOURCE/Entei - RubyRev2/eonticket.md5 b/SOURCE/Entei - RubyRev2/eonticket.md5 new file mode 100644 index 0000000..cb426e5 --- /dev/null +++ b/SOURCE/Entei - RubyRev2/eonticket.md5 @@ -0,0 +1 @@ +901180e44767e19e5dc9d5df881fe123 00-C000-EN.z80 diff --git a/SOURCE/Entei - RubyRev2/nedclib.dll b/SOURCE/Entei - RubyRev2/nedclib.dll new file mode 100644 index 0000000..8a71160 Binary files /dev/null and b/SOURCE/Entei - RubyRev2/nedclib.dll differ diff --git a/SOURCE/Entei - RubyRev2/nedcmake b/SOURCE/Entei - RubyRev2/nedcmake new file mode 100644 index 0000000..45b06a3 Binary files /dev/null and b/SOURCE/Entei - RubyRev2/nedcmake differ diff --git a/SOURCE/Entei - RubyRev2/nevpk b/SOURCE/Entei - RubyRev2/nevpk new file mode 100644 index 0000000..12cf788 Binary files /dev/null and b/SOURCE/Entei - RubyRev2/nevpk differ diff --git a/SOURCE/Entei - RubyRev2/prologue.asm b/SOURCE/Entei - RubyRev2/prologue.asm new file mode 100644 index 0000000..0db33e1 --- /dev/null +++ b/SOURCE/Entei - RubyRev2/prologue.asm @@ -0,0 +1,15 @@ +INCLUDE "../macros.asm" +SECTION "prologue", ROM0[$100] + + db "GameFreak inc." + db 0,0,0,0,0,0 + dd 0 + Text "e reader" ; no string terminator + db 0,0,0,0,$01,$55 + db 0,0,0,0 + db REGION + db 0 + db "GameFreak inc." + db 0,0 + + EOF \ No newline at end of file diff --git a/SOURCE/Entei - RubyRev2/rgbasm b/SOURCE/Entei - RubyRev2/rgbasm new file mode 100644 index 0000000..deb0f72 Binary files /dev/null and b/SOURCE/Entei - RubyRev2/rgbasm differ diff --git a/SOURCE/Entei - RubyRev2/rgblink b/SOURCE/Entei - RubyRev2/rgblink new file mode 100644 index 0000000..c38372b Binary files /dev/null and b/SOURCE/Entei - RubyRev2/rgblink differ diff --git a/SOURCE/Entei/00-C000.asm b/SOURCE/Entei/00-C000.asm new file mode 100644 index 0000000..456000a --- /dev/null +++ b/SOURCE/Entei/00-C000.asm @@ -0,0 +1,162 @@ +INCLUDE "../macros.asm" +SECTION "eonticket",ROM0[$100] +jp Start +db $00 + + +TicketPalette: ; 1604 + INCBIN "entei.pal.bin" + +Prologue: + INCBIN "prologue-{REGION_NAME}.bin" + +DataPacket: ; 164a + INCBIN "eonticket-{REGION_NAME}.mev" + db 0,0,0 ; padding + +INCLUDE "../common/mem_struct.asm" + +SpriteData: + dw TicketPalette + db $00,$00,$01,$01,$01,$01,$01 ; + +Instructions1: ; 1921 + db "Link e-Reader to Pokémon Game\n" + db "Press the B Button to cancel.\0" + +DeliveryInProcess: ; 1a0d + db "ENTEI EVENT delivery in Progress...\0" + +TicketDelivered: ; 1a2f + db "ENTEI EVENT delivered!\0" + +; this function is subtly different than the one +; on the Battle e cards, for no apparent reason +TransferData: + LD_IND_HL SomeVar1 + push de + ld hl, $bbbb + LD_IND_HL Space_1 + EX_DE_HL + LD_IND_HL Space_2 + API_0C7 Space_1 + + wait $01 + pop hl + inc hl + ld b, $01 + call WordShiftRight + + LD_IND_HL SomeVar2 +.asm_1aa1 + LD_HL_IND SomeVar2 + ld a, l + or h + ret z + + ld hl, $8888 + LD_IND_HL Space_1 + ld e, $01 + +.asm_1aaf + ld a, e + cp $08 + jr nc, .asm_1ad9 + + push de + LD_HL_IND SomeVar1 + ld c, [hl] + inc hl + ld b, [hl] + inc hl + LD_IND_HL SomeVar1 + ld l, e + ld h, $00 + add hl, hl + ld de, Space_1 + add hl, de + ld [hl], c + inc hl + ld [hl], b + pop de + LD_HL_IND SomeVar2 + dec hl + LD_IND_HL SomeVar2 + ld a, l + or h + jr z, .asm_1ad9 + + inc e + jr .asm_1aaf + +.asm_1ad9 + API_0C7 Space_1 + wait $01 + jr .asm_1aa1 + +Start: ; 1ae2 + API_121 + + CreateCustomSprite SpriteHandlePtr, $80, SpriteData + SetSpritePos SpriteHandlePtr, 120, 64 + SpriteHide SpriteHandlePtr + + CreateRegion RegionHandlePtr, 30, 6, 0, 14, 0, 4 + + ld h, a + ld l, $00 + SetTextSize + + API_09B RegionHandlePtr, $0102 + SetTextColor RegionHandlePtr, 2, 0 + SetRegionColor RegionHandlePtr, 0 + SetBackgroundPalette 16, $0040, TicketPalette + + FadeIn 16 + wait 16 + + API $0C6 + + DrawText RegionHandlePtr, Instructions1, 8, 4 + API $08D + +INCLUDE "../common/wait_for_link.asm" + + SpriteShow SpriteHandlePtr + + + API $08D + + ld a, b + nop + +UNKNOWN_VALUE EQU $0078 +INCLUDE "../common/wait_for_ready.asm" + + DrawText RegionHandlePtr, DeliveryInProcess, 8, 4 + +DATA_TRANSFER_LENGTH EQU 6144 +INCLUDE "../common/transfer_data.asm" + ld hl, $5fff + LD_IND_HL Space_1 + API_0C7 Space_1 + + wait $80 + + SpriteHide SpriteHandlePtr + + DrawText RegionHandlePtr, TicketDelivered, 8, 4 + + API $08D + ld c, a + nop + +INCLUDE "../common/wrap_up.asm" + +INCLUDE "../common/word_shift_right.asm" + +SomeVar1: ; 1CA2 + db $FF,0 ; mark EOF +RegionHandlePtr: db 0 ; 1CA4 +SpriteHandlePtr: db 0,0 ; 1CA5 +SomeVar2: db 0,0 ; 1CA7 \ No newline at end of file diff --git a/SOURCE/Entei/Makefile b/SOURCE/Entei/Makefile new file mode 100644 index 0000000..11d6e49 --- /dev/null +++ b/SOURCE/Entei/Makefile @@ -0,0 +1,40 @@ +all: 00-C000-EN.raw verify +verify: + md5sum --check eonticket.md5 + + +eonticket-%.tx: eonticket.asm + python ../scripts/regionalize.py $< $@ $* $* +eonticket-%.o: eonticket-%.tx + ./rgbasm -o $@ $< +eonticket-%.gbc: eonticket-%.o + ./rgblink -o $@ $< +eonticket-%.bin: eonticket-%.gbc + python ../scripts/stripgbc.py $< $@ +eonticket-%.mev: eonticket-%.bin + python ../scripts/checksum.py $< $@ + +prologue-%.tx: prologue.asm + python ../scripts/regionalize.py $< $@ $* $* +prologue-%.o: prologue-%.tx + ./rgbasm -o $@ $< +prologue-%.gbc: prologue-%.o + ./rgblink -o $@ $< +prologue-%.bin: prologue-%.gbc + python ../scripts/stripgbc.py $< $@ + +00-C000-%.tx: 00-C000.asm eonticket-%.mev prologue-%.bin + python ../scripts/ereadertext.py $< $@ $* +00-C000-%.o: 00-C000-%.tx + ./rgbasm -o $@ $< +00-C000-%.gbc: 00-C000-%.o + ./rgblink -o $@ $< +00-C000-%.z80: 00-C000-%.gbc + python ../scripts/stripgbc.py $< $@ +00-C000-%.vpk: 00-C000-%.z80 + ./nevpk -c -i $< -o $@ +00-C000-%.raw: 00-C000-%.vpk + ./nedcmake -i $< -o $@ -type 1 -region 1 + +clean: + rm -f *.tx *.o *.gbc *.z80 *.bin *.mev *.vpk *.raw \ No newline at end of file diff --git a/SOURCE/Entei/entei.pal.bin b/SOURCE/Entei/entei.pal.bin new file mode 100644 index 0000000..ebbc1cc Binary files /dev/null and b/SOURCE/Entei/entei.pal.bin differ diff --git a/SOURCE/Entei/eonticket.asm b/SOURCE/Entei/eonticket.asm new file mode 100644 index 0000000..f22be25 --- /dev/null +++ b/SOURCE/Entei/eonticket.asm @@ -0,0 +1,787 @@ +INCLUDE "../macros.asm" +INCLUDE "../constants/items.asm" +INCLUDE "../constants/scriptcommandsentei.asm" + + Mystery_Event + + db CHECKSUM_CRC + dd 0 ; checksum placeholder + GBAPTR DataStart + GBAPTR DataEnd + +DataStart: + db IN_GAME_SCRIPT + db 24,15 ; Mt Pyre + db 3 ; Guy on left grave + GBAPTR NormanScriptStart + GBAPTR NormanScriptEnd + + db PRELOAD_SCRIPT + GBAPTR PreloadScriptStart + + db END_OF_CHUNKS + + +GoSeeYourFather: + Text_EN "A person hunting the LEGENDARY BEASTS\n" + Text_EN "has appeared in MT.Pyre...@" + + + + +NormanScriptStart: + setvirtualaddress NormanScriptStart + + + + db $43 ;This checks if your party is bigger than 0 + + compare LASTRESULT, 0 ;It's so I can store thumb code in static spot. + + virtualgotoif 2, Start ;It should never fail. + + + BEASTRNG + + + + + +Start: + + comparefarbytetobyte $0202886B, $1 + + virtualgotoif 1, FieryPath + + writebytetoaddr $01, $0202886B + + fadesong $15F + + pause $10 + + applymovement $3, $2025074 + + pause $10 + + sound $15 + + pause $10 + + faceplayer + + virtualmsgbox Hello + + waitmsg + + waitkeypress + + release + + getplayerpos $8000, $8001 + + compare $8001, $A + + virtualgotoif 1, Movement + + applymovement $FF, $2025088 + + pause $11 + +Movement: + + applymovement $03, $2025077 + + pause $90 + + db $35 ;this returns the songs map to current map + + writebytetoaddr $0E, $02028dca + + random $000C + + callasm $02025009 + + end + + +FieryPath: + + comparefarbytetobyte $0202886A, $1 + + virtualgotoif 1, SuccessBoulder + + getplayerpos $8000, $8001 + + compare $8000, $10 + + virtualgotoif 5, FailBoulder + + compare $800C, $4 + + virtualgotoif 5, FailBoulder + + writebytetoaddr $C9, $2028230 + + special $13B + + sound $29 + + pause $35 + + playmoncry $C9, $0 + + pause $25 + +SuccessBoulder: + + setvar $8004, 0 + + special2 $8004, $147 + + compare $8004, $C9 + + virtualgotoif 1, Letter + + +BoulderMessage2: + + writebytetoaddr $01, $0202886A + + braillemessage $02025358 + + waitkeypress + + hidebox $0, $0, $1D, $13 + + end + + +FailBoulder: + + braillemessage $202533C + + waitkeypress + + hidebox $0, $0, $1D, $13 + + end + +Letter: + + callasm $2025051 + + compare $8004, $00FF + + virtualgotoif 1, Battle + + virtualgotoif 5, BoulderMessage2 + + +Battle: + + + db $43 + + compare LASTRESULT, 5 + + virtualgotoif 2, NoRoom + + copyvar $800B, $800D + + setwildbattle $F4, $55, $D7 + + callasm $02028DDF + + applymovement $FF, $2025074 + + sound $15 + + special $136 + + sound $58 + + sound $58 + + waitstate + + pause $28 + + special $136 + + waitstate + + pause $28 + + playmoncry $F4, $0 + + waitmoncry + + special $138 + + playsong $0166, $0 + + waitstate + + writebytetoaddr $00, $2028230 + + db $43 + + comparevar LASTRESULT, $800B + + virtualgotoif 3, FlewAway + + callasm $02028ea3 + + braillemessage $20250A1 + + waitkeypress + + hidebox $0, $0, $1D, $13 + + killscript + + +NoRoom: + braillemessage $202508D + + waitkeypress + + hidebox $0, $0, $1D, $13 + + end + + +FlewAway: + db $97, $01 + db $97, $00 + virtualmsgbox Flew + waitmsg + waitkeypress + release + end + + +Flew: + Text_EN "The ENTEI flew away!@" + +Hello: + Text_EN "My name’s Eusine. I’m on the trail\n" + Text_EN "of a POKéMON named SUICUNE.\p" + Text_EN "And you are...? \v1?\n" + Text_EN "Glad to meet you!\p" + Text_EN "I’ve read rumors of a POKéMON named\n" + Text_EN "ENTEI in HOENN.\p" + Text_EN "It, RAIKOU, and SUICUNE are often\n" + Text_EN "seen together.\p" + Text_EN "I read that there’s ANCIENT TEXT\n" + Text_EN "in FIERY PATH.\p" + Text_EN "You investigate, I’ll continue to\n" + Text_EN "search for clues!@" + + + + +NormanScriptEnd: + + +PreloadScriptStart: + setvirtualaddress PreloadScriptStart + + + + + + + writebytetoaddr $00, $0202886A + + writebytetoaddr $00, $0202886B + + writebytetoaddr $00, $0202886C + + writebytetoaddr $00, $0202886D + + writebytetoaddr $00, $0202886E + + writebytetoaddr $00, $0202886F + + writebytetoaddr $00, $02028870 + + writebytetoaddr $00, $02028871 + + writebytetoaddr $03, $202533C ;First Braille Box + writebytetoaddr $04, $202533D + writebytetoaddr $1A, $202533E + writebytetoaddr $0D, $202533F + writebytetoaddr $04, $2025340 + writebytetoaddr $06, $2025341 + writebytetoaddr $06, $2025342 + writebytetoaddr $00, $2025343 + writebytetoaddr $09, $2025344 + writebytetoaddr $1B, $2025345 + writebytetoaddr $0B, $2025346 + writebytetoaddr $00, $2025347 + writebytetoaddr $2E, $2025348 + writebytetoaddr $0D, $2025349 + writebytetoaddr $09, $202534A + writebytetoaddr $1D, $202534B + writebytetoaddr $09, $202534C + writebytetoaddr $FE, $202534D + writebytetoaddr $06, $202534E + writebytetoaddr $00, $202534F + writebytetoaddr $16, $2025350 + writebytetoaddr $1E, $2025351 + writebytetoaddr $01, $2025352 + writebytetoaddr $1D, $2025353 + writebytetoaddr $1E, $2025354 + writebytetoaddr $09, $2025355 + writebytetoaddr $0B, $2025356 + writebytetoaddr $FF, $2025357 + + writebytetoaddr $01, $2025358 ;Second Braille Box + writebytetoaddr $03, $2025359 + writebytetoaddr $1C, $202535A + writebytetoaddr $0e, $202535B + writebytetoaddr $02, $202535C + writebytetoaddr $04, $202535D + writebytetoaddr $1E, $202535E + writebytetoaddr $0D, $202535F + writebytetoaddr $09, $2025360 + writebytetoaddr $3B, $2025361 + writebytetoaddr $00, $2025362 + writebytetoaddr $01, $2025363 + writebytetoaddr $1D, $2025364 + writebytetoaddr $09, $2025365 + writebytetoaddr $00, $2025366 + writebytetoaddr $07, $2025367 + writebytetoaddr $1D, $2025368 + writebytetoaddr $09, $2025369 + writebytetoaddr $09, $202536A + writebytetoaddr $FE, $202536B + writebytetoaddr $06, $202536C + writebytetoaddr $1B, $202536D + writebytetoaddr $00, $202536E + writebytetoaddr $1E, $202536F + writebytetoaddr $0D, $2025370 + writebytetoaddr $09, $2025371 + writebytetoaddr $00, $2025372 + writebytetoaddr $01, $2025373 + writebytetoaddr $16, $2025374 + writebytetoaddr $0D, $2025375 + writebytetoaddr $FE, $2025376 + writebytetoaddr $05, $2025377 + writebytetoaddr $1D, $2025378 + writebytetoaddr $06, $2025379 + writebytetoaddr $1B, $202537A + writebytetoaddr $0F, $202537B + writebytetoaddr $00, $202537C + writebytetoaddr $07, $202537D + writebytetoaddr $00, $202537E + writebytetoaddr $07, $202537F + writebytetoaddr $06, $2025380 + writebytetoaddr $1D, $2025381 + writebytetoaddr $16, $2025382 + writebytetoaddr $1E, $2025383 + writebytetoaddr $FF, $2025384 + + writebytetoaddr $01, $2025385 ;Unown Letter Table Braille + writebytetoaddr $05, $2025386 + writebytetoaddr $0B, $2025387 + writebytetoaddr $09, $2025388 + writebytetoaddr $07, $2025389 + writebytetoaddr $0E, $202538A + writebytetoaddr $15, $202538B + writebytetoaddr $13, $202538C + writebytetoaddr $19, $202538D + writebytetoaddr $34, $202538E + writebytetoaddr $39, $202538F + writebytetoaddr $1E, $2025390 + writebytetoaddr $11, $2025391 + + writebytetoaddr $00, $2025392 ;Unown Letter Table. + writebytetoaddr $01, $2025393 + writebytetoaddr $03, $2025394 + writebytetoaddr $04, $2025395 + writebytetoaddr $05, $2025396 + writebytetoaddr $09, $2025397 + writebytetoaddr $0B, $2025398 + writebytetoaddr $0C, $2025399 + writebytetoaddr $0E, $202539A + writebytetoaddr $1B, $202539B + writebytetoaddr $19, $202539C + writebytetoaddr $13, $202539D + writebytetoaddr $16, $202539E + + + writebytetoaddr $00, $2028230 ;Unown Outbreak Info + writebytetoaddr $00, $2028231 + writebytetoaddr $1C, $2028232 + writebytetoaddr $00, $2028233 + writebytetoaddr $0A, $2028234 + writebytetoaddr $00, $2028235 + writebytetoaddr $00, $2028236 + writebytetoaddr $0A, $2028237 + writebytetoaddr $ED, $2028238 + writebytetoaddr $00, $2028239 + writebytetoaddr $00, $202823A + writebytetoaddr $00, $202823B + writebytetoaddr $00, $202823C + writebytetoaddr $00, $202823D + writebytetoaddr $00, $202823E + writebytetoaddr $00, $202823F + writebytetoaddr $00, $2028240 + writebytetoaddr $64, $2028241 + writebytetoaddr $F9, $2028242 + writebytetoaddr $0A, $2028243 + writebytetoaddr $9D, $2028244 + writebytetoaddr $00, $2028245 + writebytetoaddr $06, $2028246 + writebytetoaddr $00, $2028247 + writebytetoaddr $35, $2028248 + writebytetoaddr $00, $2028249 + writebytetoaddr $FF, $202824A + writebytetoaddr $FF, $202824B + + + writebytetoaddr $0, $202539F ;Temp Entei. Starts with bit for alignment. + writebytetoaddr $0, $20253A0 + writebytetoaddr $0, $20253A1 + writebytetoaddr $0, $20253A2 + writebytetoaddr $0, $20253A3 + writebytetoaddr $0, $20253A4 + writebytetoaddr $0, $20253A5 + writebytetoaddr $0, $20253A6 + writebytetoaddr $0, $20253A7 + writebytetoaddr $BF, $20253A8 + writebytetoaddr $C8, $20253A9 + writebytetoaddr $CE, $20253AA + writebytetoaddr $BF, $20253AB + writebytetoaddr $C3, $20253AC + writebytetoaddr $FF, $20253AD + writebytetoaddr $0, $20253AE + writebytetoaddr $0, $20253AF + writebytetoaddr $0, $20253B0 + writebytetoaddr $0, $20253B1 + writebytetoaddr $2, $20253B2 + writebytetoaddr $2, $20253B3 + writebytetoaddr $C0, $20253B4 + writebytetoaddr $BB, $20253B5 + writebytetoaddr $CC, $20253B6 + writebytetoaddr $CE, $20253B7 + writebytetoaddr $FF, $20253B8 + writebytetoaddr $0, $20253B9 + writebytetoaddr $0, $20253BA + writebytetoaddr $0, $20253BB + writebytetoaddr $2C, $20253BC + writebytetoaddr $9C, $20253BD + writebytetoaddr $0, $20253BE + writebytetoaddr $0, $20253BF + writebytetoaddr $F4, $20253C0 + writebytetoaddr $0, $20253C1 + writebytetoaddr $0, $20253C2 + writebytetoaddr $0, $20253C3 + writebytetoaddr $A8, $20253C4 + writebytetoaddr $B6, $20253C5 + writebytetoaddr $0B, $20253C6 + writebytetoaddr $0, $20253C7 + writebytetoaddr $0, $20253C8 + writebytetoaddr $23, $20253C9 + writebytetoaddr $0, $20253CA + writebytetoaddr $0, $20253CB + writebytetoaddr $A4, $20253CC + writebytetoaddr $0, $20253CD + writebytetoaddr $5B, $20253CE + writebytetoaddr $1, $20253CF + writebytetoaddr $4C, $20253D0 + writebytetoaddr $0, $20253D1 + writebytetoaddr $7E, $20253D2 + writebytetoaddr $0, $20253D3 + writebytetoaddr $0A, $20253D4 + writebytetoaddr $14, $20253D5 + writebytetoaddr $0A, $20253D6 + writebytetoaddr $5, $20253D7 + writebytetoaddr $0, $20253D8 + writebytetoaddr $0, $20253D9 + writebytetoaddr $0, $20253DA + writebytetoaddr $0, $20253DB + writebytetoaddr $0, $20253DC + writebytetoaddr $0, $20253DD + writebytetoaddr $0, $20253DE + writebytetoaddr $0, $20253DF + writebytetoaddr $0, $20253E0 + writebytetoaddr $0, $20253E1 + writebytetoaddr $0, $20253E2 + writebytetoaddr $0, $20253E3 + writebytetoaddr $0, $20253E4 + writebytetoaddr $7D, $20253E5 + writebytetoaddr $A8, $20253E6 + writebytetoaddr $27, $20253E7 + writebytetoaddr $0, $20253E8 + writebytetoaddr $0, $20253E9 + writebytetoaddr $0, $20253EA + writebytetoaddr $0, $20253EB + writebytetoaddr $0, $20253EC + writebytetoaddr $0, $20253ED + writebytetoaddr $0, $20253EE + writebytetoaddr $1, $20253EF + + writebytetoaddr $E4, $2024FF0 + writebytetoaddr $E4, $2025090 + writebytetoaddr $E4, $2025130 + writebytetoaddr $E4, $20251D0 + writebytetoaddr $E4, $2025270 + writebytetoaddr $E4, $2025310 + + callasm $08135c45 + + writebytetoaddr $E4, $2024FF0 ;Substructure Copy Table + writebytetoaddr $B4, $2024FF1 + writebytetoaddr $D8, $2024FF2 + writebytetoaddr $9C, $2024FF3 + writebytetoaddr $78, $2024FF4 + writebytetoaddr $6C, $2024FF5 + writebytetoaddr $E1, $2024FF6 + writebytetoaddr $B1, $2024FF7 + writebytetoaddr $D2, $2024FF8 + writebytetoaddr $93, $2024FF9 + writebytetoaddr $72, $2024FFA + writebytetoaddr $63, $2024FFB + writebytetoaddr $C9, $2024FFC + writebytetoaddr $8D, $2024FFD + writebytetoaddr $C6, $2024FFE + writebytetoaddr $87, $2024FFF + writebytetoaddr $4E, $2025000 + writebytetoaddr $4B, $2025001 + writebytetoaddr $39, $2025002 + writebytetoaddr $2D, $2025003 + writebytetoaddr $36, $2025004 + writebytetoaddr $27, $2025005 + writebytetoaddr $1E, $2025006 + writebytetoaddr $1B, $2025007 + + writebytetoaddr $FF, $2025008 ;Calc RamScript Checksum + writebytetoaddr $B5, $2025009 + writebytetoaddr $0C, $202500A + writebytetoaddr $48, $202500B + writebytetoaddr $0C, $202500C + writebytetoaddr $49, $202500D + writebytetoaddr $0D, $202500E + writebytetoaddr $4A, $202500F + writebytetoaddr $0D, $2025010 + writebytetoaddr $4B, $2025011 + writebytetoaddr $0E, $2025012 + writebytetoaddr $4C, $2025013 + writebytetoaddr $00, $2025014 + writebytetoaddr $78, $2025015 + writebytetoaddr $01, $2025016 + writebytetoaddr $44, $2025017 + writebytetoaddr $09, $2025018 + writebytetoaddr $78, $2025019 + writebytetoaddr $11, $202501A + writebytetoaddr $70, $202501B + writebytetoaddr $04, $202501C + writebytetoaddr $44, $202501D + writebytetoaddr $24, $202501E + writebytetoaddr $78, $202501F + writebytetoaddr $1C, $2025020 + writebytetoaddr $70, $2025021 + writebytetoaddr $7C, $2025022 + writebytetoaddr $46, $2025023 + writebytetoaddr $07, $2025024 + writebytetoaddr $34, $2025025 + writebytetoaddr $A6, $2025026 + writebytetoaddr $46, $2025027 + writebytetoaddr $02, $2025028 + writebytetoaddr $48, $2025029 + writebytetoaddr $00, $202502A + writebytetoaddr $47, $202502B + writebytetoaddr $02, $202502C + writebytetoaddr $48, $202502D + writebytetoaddr $02, $202502E + writebytetoaddr $80, $202502F + writebytetoaddr $FF, $2025030 + writebytetoaddr $BD, $2025031 + writebytetoaddr $00, $2025032 + writebytetoaddr $00, $2025033 + writebytetoaddr $61, $2025034 + writebytetoaddr $57, $2025035 + writebytetoaddr $06, $2025036 + writebytetoaddr $08, $2025037 + writebytetoaddr $C4, $2025038 + writebytetoaddr $8D, $2025039 + writebytetoaddr $02, $202503A + writebytetoaddr $02, $202503B + writebytetoaddr $DC, $202503C + writebytetoaddr $E8, $202503D + writebytetoaddr $02, $202503E + writebytetoaddr $02, $202503F + writebytetoaddr $85, $2025040 + writebytetoaddr $53, $2025041 + writebytetoaddr $02, $2025042 + writebytetoaddr $02, $2025043 + writebytetoaddr $7D, $2025044 + writebytetoaddr $53, $2025045 + writebytetoaddr $02, $2025046 + writebytetoaddr $02, $2025047 + writebytetoaddr $DA, $2025048 + writebytetoaddr $8F, $2025049 + writebytetoaddr $02, $202504A + writebytetoaddr $02, $202504B + writebytetoaddr $92, $202504C + writebytetoaddr $53, $202504D + writebytetoaddr $02, $202504E + writebytetoaddr $02, $202504F + + writebytetoaddr $FF, $2025050 ;CheckUnownLetter + writebytetoaddr $B5, $2025051 + writebytetoaddr $7C, $2025052 + writebytetoaddr $46, $2025053 + writebytetoaddr $0B, $2025054 + writebytetoaddr $34, $2025055 + writebytetoaddr $A6, $2025056 + writebytetoaddr $46, $2025057 + writebytetoaddr $03, $2025058 + writebytetoaddr $48, $2025059 + writebytetoaddr $04, $202505A + writebytetoaddr $4B, $202505B + writebytetoaddr $00, $202505C + writebytetoaddr $68, $202505D + writebytetoaddr $18, $202505E + writebytetoaddr $47, $202505F + writebytetoaddr $03, $2025060 + writebytetoaddr $49, $2025061 + writebytetoaddr $08, $2025062 + writebytetoaddr $70, $2025063 + writebytetoaddr $FF, $2025064 + writebytetoaddr $BC, $2025065 + writebytetoaddr $00, $2025066 + writebytetoaddr $BD, $2025067 + writebytetoaddr $60, $2025068 + writebytetoaddr $43, $2025069 + writebytetoaddr $00, $202506A + writebytetoaddr $03, $202506B + writebytetoaddr $75, $202506C + writebytetoaddr $D4, $202506D + writebytetoaddr $09, $202506E + writebytetoaddr $08, $202506F + writebytetoaddr $CC, $2025070 + writebytetoaddr $E8, $2025071 + writebytetoaddr $02, $2025072 + writebytetoaddr $02, $2025073 + + writebytetoaddr $56, $2025074 ;EusineMove + writebytetoaddr $12, $2025075 + writebytetoaddr $FE, $2025076 + + writebytetoaddr $09, $2025077 ;Bye Bye Eusine + writebytetoaddr $09, $2025078 + writebytetoaddr $0A, $2025079 + writebytetoaddr $09, $202507A + writebytetoaddr $09, $202507B + writebytetoaddr $09, $202507C + writebytetoaddr $09, $202507D + writebytetoaddr $09, $202507E + writebytetoaddr $09, $202507F + writebytetoaddr $09, $2025080 + writebytetoaddr $09, $2025081 + writebytetoaddr $09, $2025082 + writebytetoaddr $09, $2025083 + writebytetoaddr $09, $2025084 + writebytetoaddr $09, $2025085 + writebytetoaddr $09, $2025086 + writebytetoaddr $FE, $2025087 + + writebytetoaddr $0B, $2025088 ;Get out of Eusines way. + writebytetoaddr $02, $2025089 + writebytetoaddr $14, $202508A + writebytetoaddr $14, $202508B + writebytetoaddr $FE, $202508C + + writebytetoaddr $01, $202508D ;No Room in Party + writebytetoaddr $07, $202508E + writebytetoaddr $1C, $202508F + writebytetoaddr $0A, $2025090 + writebytetoaddr $02, $2025091 + writebytetoaddr $08, $2025092 + writebytetoaddr $17, $2025093 + writebytetoaddr $01, $2025094 + writebytetoaddr $1D, $2025095 + writebytetoaddr $1E, $2025096 + writebytetoaddr $3B, $2025097 + writebytetoaddr $00, $2025098 + writebytetoaddr $06, $2025099 + writebytetoaddr $16, $202509A + writebytetoaddr $00, $202509B + writebytetoaddr $07, $202509C + writebytetoaddr $31, $202509D + writebytetoaddr $15, $202509E + writebytetoaddr $15, $202509F + writebytetoaddr $FF, $20250A0 + + writebytetoaddr $00, $20250A1 ;ADVENTURE CONTINUE + writebytetoaddr $02, $20250A2 + writebytetoaddr $1D, $20250A3 + writebytetoaddr $11, $20250A4 + writebytetoaddr $01, $20250A5 + writebytetoaddr $03, $20250A6 + writebytetoaddr $3B, $20250A7 + writebytetoaddr $19, $20250A8 + writebytetoaddr $31, $20250A9 + writebytetoaddr $1D, $20250AA + writebytetoaddr $00, $20250AB + writebytetoaddr $01, $20250AC + writebytetoaddr $0B, $20250AD + writebytetoaddr $35, $20250AE + writebytetoaddr $09, $20250AF + writebytetoaddr $1B, $20250B0 + writebytetoaddr $1E, $20250B1 + writebytetoaddr $31, $20250B2 + writebytetoaddr $1D, $20250B3 + writebytetoaddr $09, $20250B4 + writebytetoaddr $FE, $20250B5 + writebytetoaddr $2E, $20250B6 + writebytetoaddr $06, $20250B7 + writebytetoaddr $15, $20250B8 + writebytetoaddr $15, $20250B9 + writebytetoaddr $00, $20250BA + writebytetoaddr $03, $20250BB + writebytetoaddr $19, $20250BC + writebytetoaddr $1B, $20250BD + writebytetoaddr $1E, $20250BE + writebytetoaddr $06, $20250BF + writebytetoaddr $1B, $20250C0 + writebytetoaddr $31, $20250C1 + writebytetoaddr $09, $20250C2 + writebytetoaddr $FE, $20250C3 + writebytetoaddr $19, $20250C4 + writebytetoaddr $1B, $20250C5 + writebytetoaddr $00, $20250C6 + writebytetoaddr $1E, $20250C7 + writebytetoaddr $0D, $20250C8 + writebytetoaddr $09, $20250C9 + writebytetoaddr $00, $20250CA + writebytetoaddr $1B, $20250CB + writebytetoaddr $09, $20250CC + writebytetoaddr $33, $20250CD + writebytetoaddr $1E, $20250CE + writebytetoaddr $FE, $20250CF + writebytetoaddr $09, $20250D0 + writebytetoaddr $00, $20250D1 + writebytetoaddr $03, $20250D2 + writebytetoaddr $01, $20250D3 + writebytetoaddr $1D, $20250D4 + writebytetoaddr $0B, $20250D5 + writebytetoaddr $FF, $20250D6 + + + + virtualloadpointer GoSeeYourFather + + setbyte 2 + + end + + + +DataEnd: + EOF + \ No newline at end of file diff --git a/SOURCE/Entei/eonticket.md5 b/SOURCE/Entei/eonticket.md5 new file mode 100644 index 0000000..cb426e5 --- /dev/null +++ b/SOURCE/Entei/eonticket.md5 @@ -0,0 +1 @@ +901180e44767e19e5dc9d5df881fe123 00-C000-EN.z80 diff --git a/SOURCE/Entei/nedclib.dll b/SOURCE/Entei/nedclib.dll new file mode 100644 index 0000000..8a71160 Binary files /dev/null and b/SOURCE/Entei/nedclib.dll differ diff --git a/SOURCE/Entei/nedcmake b/SOURCE/Entei/nedcmake new file mode 100644 index 0000000..45b06a3 Binary files /dev/null and b/SOURCE/Entei/nedcmake differ diff --git a/SOURCE/Entei/nevpk b/SOURCE/Entei/nevpk new file mode 100644 index 0000000..12cf788 Binary files /dev/null and b/SOURCE/Entei/nevpk differ diff --git a/SOURCE/Entei/prologue.asm b/SOURCE/Entei/prologue.asm new file mode 100644 index 0000000..0db33e1 --- /dev/null +++ b/SOURCE/Entei/prologue.asm @@ -0,0 +1,15 @@ +INCLUDE "../macros.asm" +SECTION "prologue", ROM0[$100] + + db "GameFreak inc." + db 0,0,0,0,0,0 + dd 0 + Text "e reader" ; no string terminator + db 0,0,0,0,$01,$55 + db 0,0,0,0 + db REGION + db 0 + db "GameFreak inc." + db 0,0 + + EOF \ No newline at end of file diff --git a/SOURCE/Entei/rgbasm b/SOURCE/Entei/rgbasm new file mode 100644 index 0000000..deb0f72 Binary files /dev/null and b/SOURCE/Entei/rgbasm differ diff --git a/SOURCE/Entei/rgblink b/SOURCE/Entei/rgblink new file mode 100644 index 0000000..c38372b Binary files /dev/null and b/SOURCE/Entei/rgblink differ