From 71054b6c9dc86d194ef09c6ab90674b364fe507f Mon Sep 17 00:00:00 2001 From: Randy Thiemann Date: Wed, 25 Oct 2023 10:54:33 +0200 Subject: [PATCH] Add Analogue Pocket version. --- bin/DMGTRIS.GBC | Bin 65536 -> 65536 bytes bin/DMGTRIS.pocket | Bin 0 -> 65536 bytes patch_pocket.py | 5 ++++ src/include/globals.asm | 2 +- src/include/hardware.inc | 60 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 bin/DMGTRIS.pocket create mode 100644 patch_pocket.py diff --git a/bin/DMGTRIS.GBC b/bin/DMGTRIS.GBC index 3a07c657423b17585a045dc7ce19092690c146d4..0d03340085f2e411943315835519670e61ec4929 100644 GIT binary patch delta 53 zcmV-50LuS>fCPYm1h7v50dccX0hBij2I^i2q2jH2%!EoAd&hB Lp#D0uNIAI11TYm* delta 53 zcmV-50LuS>fCPYm1h7v50S~iK0hBij2kHl)J{0N*pgt>;?>I^i2OyaG2%!EHAd&hB Lp#CefNIAI1>*o}W diff --git a/bin/DMGTRIS.pocket b/bin/DMGTRIS.pocket new file mode 100644 index 0000000000000000000000000000000000000000..734f9f2ca673e2e61a3ab1e91a2fe1ebe06337be GIT binary patch literal 65536 zcmeG_3t&{mwR88M|L!J|4aBgU_}NmiAwL$_Y$8O07A3_XAInDz;)hp!wwh354E_MC zEf$r)tD0I-K{TyeOYxTyO0!88?MFleyuPQXtKbdwgE77Loij7{?!CJS!C(9Ox_8O$ zIdeWUbIzHWGqd+DfBYl8NWZ;W{Ci`Rc*6?4`v0yV;<{&|?%A_zxVI^~r1$#hrM+B9yLkS%vAz9^dS#c_781nsoFtSQC8Rw{ zszU-a%;l)|krshCpE4QEaD#N`PDaWA!DM=pGK3}g{q#Buc`=zrEnPs#0 z7)I4F*Pw0G3R9ArxcxMf3<`XOcIteCNU!)7&2~A7O#GI-O3$(D#g-;tsvIek!|U@Fb19<1E;DW&Oz+56n%|i z7HCd~S`&PJp30z0k!jY*HCE}>T4`_OXV&`pk%z3In`+;B`HeqymfPFKR`DKjy?D3u zbMY4Ge(^R~m3|T;(f51wV$CS_q&3oEm6a}OpG>;i#eJGmPVMZlj?C^^=ohXk>X}X7 zXVCXrd}r6!L+`pO%zD>seGAr@H4r&(PZvDYrG35shxZ@(d}sT9`$vv_;t5kcB3 z{#e>4-XXQZG-HQ;w|1^gmHK4CYnArPN=N^^UJP34h{q&-0HrC?9l=9p@eWU(O8EdN zM`U3~U8;0PC6d%;)X(REc?ZVxA22$9ANd4~=gpDsV3xa^$_2%{JL^(sNUzA&?z&Xj z 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 Q1(Fs>S|DkGe ; Examples: rev_Check_hardware_inc 4.1.2 ; rev_Check_hardware_inc 4.1 (equivalent to 4.1.0) @@ -534,8 +538,30 @@ DEF AUDENA_OFF EQU %00000000 ; sets all audio regs to 0! ; -- LCDC ($FF40) ; -- LCD Control (R/W) ; -- +if def(BUILD_POCKET) +DEF rLCDC EQU $FF4E +else DEF rLCDC EQU $FF40 +endc +if def(BUILD_POCKET) +DEF LCDCF_OFF EQU %00000000 ; LCD Control Operation +DEF LCDCF_ON EQU %00000001 ; LCD Control Operation +DEF LCDCF_WIN9800 EQU %00000000 ; Window Tile Map Display Select +DEF LCDCF_WIN9C00 EQU %00000010 ; Window Tile Map Display Select +DEF LCDCF_WINOFF EQU %00000000 ; Window Display +DEF LCDCF_WINON EQU %00000100 ; Window Display +DEF LCDCF_BLK21 EQU %00000000 ; BG & Window Tile Data Select +DEF LCDCF_BLK01 EQU %00001000 ; BG & Window Tile Data Select +DEF LCDCF_BG9800 EQU %00000000 ; BG Tile Map Display Select +DEF LCDCF_BG9C00 EQU %00010000 ; BG Tile Map Display Select +DEF LCDCF_OBJ8 EQU %00000000 ; OBJ Construction +DEF LCDCF_OBJ16 EQU %00100000 ; OBJ Construction +DEF LCDCF_OBJOFF EQU %00000000 ; OBJ Display +DEF LCDCF_OBJON EQU %01000000 ; OBJ Display +DEF LCDCF_BGOFF EQU %00000000 ; BG Display +DEF LCDCF_BGON EQU %10000000 ; BG Display +else DEF LCDCF_OFF EQU %00000000 ; LCD Control Operation DEF LCDCF_ON EQU %10000000 ; LCD Control Operation DEF LCDCF_WIN9800 EQU %00000000 ; Window Tile Map Display Select @@ -552,7 +578,18 @@ DEF LCDCF_OBJOFF EQU %00000000 ; OBJ Display DEF LCDCF_OBJON EQU %00000010 ; OBJ Display DEF LCDCF_BGOFF EQU %00000000 ; BG Display DEF LCDCF_BGON EQU %00000001 ; BG Display +endc +if def(BUILD_POCKET) +DEF LCDCB_ON EQU 0 ; LCD Control Operation +DEF LCDCB_WIN9C00 EQU 1 ; Window Tile Map Display Select +DEF LCDCB_WINON EQU 2 ; Window Display +DEF LCDCB_BLKS EQU 3 ; BG & Window Tile Data Select +DEF LCDCB_BG9C00 EQU 4 ; BG Tile Map Display Select +DEF LCDCB_OBJ16 EQU 5 ; OBJ Construction +DEF LCDCB_OBJON EQU 6; OBJ Display +DEF LCDCB_BGON EQU 7 ; BG Display +else DEF LCDCB_ON EQU 7 ; LCD Control Operation DEF LCDCB_WIN9C00 EQU 6 ; Window Tile Map Display Select DEF LCDCB_WINON EQU 5 ; Window Display @@ -561,6 +598,7 @@ DEF LCDCB_BG9C00 EQU 3 ; BG Tile Map Display Select DEF LCDCB_OBJ16 EQU 2 ; OBJ Construction DEF LCDCB_OBJON EQU 1 ; OBJ Display DEF LCDCB_BGON EQU 0 ; BG Display +endc ; "Window Character Data Select" follows BG @@ -570,6 +608,18 @@ DEF LCDCB_BGON EQU 0 ; BG Display ; -- DEF rSTAT EQU $FF41 +if def(BUILD_POCKET) +DEF STATF_LYC EQU %00000010 ; LYC=LY Coincidence (Selectable) +DEF STATF_MODE10 EQU %00000100 ; Mode 10 +DEF STATF_MODE01 EQU %00001000 ; Mode 01 (V-Blank) +DEF STATF_MODE00 EQU %00010000 ; Mode 00 (H-Blank) +DEF STATF_LYCF EQU %00100000 ; Coincidence Flag +DEF STATF_HBL EQU %00000000 ; H-Blank +DEF STATF_VBL EQU %10000000 ; V-Blank +DEF STATF_OAM EQU %01000000 ; OAM-RAM is used by system +DEF STATF_LCD EQU %11000000 ; Both OAM and VRAM used by system +DEF STATF_BUSY EQU %01000000 ; When set, VRAM access is unsafe +else DEF STATF_LYC EQU %01000000 ; LYC=LY Coincidence (Selectable) DEF STATF_MODE10 EQU %00100000 ; Mode 10 DEF STATF_MODE01 EQU %00010000 ; Mode 01 (V-Blank) @@ -580,13 +630,23 @@ DEF STATF_VBL EQU %00000001 ; V-Blank DEF STATF_OAM EQU %00000010 ; OAM-RAM is used by system DEF STATF_LCD EQU %00000011 ; Both OAM and VRAM used by system DEF STATF_BUSY EQU %00000010 ; When set, VRAM access is unsafe +endc +if def(BUILD_POCKET) +DEF STATB_LYC EQU 1 +DEF STATB_MODE10 EQU 2 +DEF STATB_MODE01 EQU 3 +DEF STATB_MODE00 EQU 4 +DEF STATB_LYCF EQU 5 +DEF STATB_BUSY EQU 6 +else DEF STATB_LYC EQU 6 DEF STATB_MODE10 EQU 5 DEF STATB_MODE01 EQU 4 DEF STATB_MODE00 EQU 3 DEF STATB_LYCF EQU 2 DEF STATB_BUSY EQU 1 +endc ; -- ; -- SCY ($FF42)