Update hardware.inc to 2.8

This commit is contained in:
Eldred Habert
2019-05-23 17:05:33 +02:00
committed by GitHub
parent 0ebc012c9e
commit f93846ec6d

View File

@@ -21,6 +21,8 @@
;* Rev 2.4 - 27-Apr-13 : Added some cart defines (AntonioND) ;* Rev 2.4 - 27-Apr-13 : Added some cart defines (AntonioND)
;* Rev 2.5 - 03-May-15 : Fixed format (AntonioND) ;* Rev 2.5 - 03-May-15 : Fixed format (AntonioND)
;* Rev 2.6 - 09-Apr-16 : Added GBC OAM and cart defines (AntonioND) ;* Rev 2.6 - 09-Apr-16 : Added GBC OAM and cart defines (AntonioND)
;* Rev 2.7 - 19-Jan-19 : Added rPCMXX (ISSOtm)
;* Rev 2.8 - 03-Feb-19 : Added audio registers flags (Álvaro Cuesta)
; If all of these are already defined, don't do it again. ; If all of these are already defined, don't do it again.
@@ -30,7 +32,7 @@ HARDWARE_INC SET 1
rev_Check_hardware_inc : MACRO rev_Check_hardware_inc : MACRO
;NOTE: REVISION NUMBER CHANGES MUST BE ADDED ;NOTE: REVISION NUMBER CHANGES MUST BE ADDED
;TO SECOND PARAMETER IN FOLLOWING LINE. ;TO SECOND PARAMETER IN FOLLOWING LINE.
IF \1 > 2.6 ;PUT REVISION NUMBER HERE IF \1 > 2.8 ;PUT REVISION NUMBER HERE
WARN "Version \1 or later of 'hardware.inc' is required." WARN "Version \1 or later of 'hardware.inc' is required."
ENDC ENDC
ENDM ENDM
@@ -401,6 +403,9 @@ IEF_VBLANK EQU %00000001 ; V-Blank
rNR50 EQU $FF24 rNR50 EQU $FF24
rAUDVOL EQU rNR50 rAUDVOL EQU rNR50
AUDVOL_VIN_LEFT EQU %10000000 ; SO2
AUDVOL_VIN_RIGHT EQU %00001000 ; SO1
; -- ; --
; -- AUDTERM/NR51 ($FF25) ; -- AUDTERM/NR51 ($FF25)
@@ -418,6 +423,17 @@ rAUDVOL EQU rNR50
rNR51 EQU $FF25 rNR51 EQU $FF25
rAUDTERM EQU rNR51 rAUDTERM EQU rNR51
; SO2
AUDTERM_4_LEFT EQU %10000000
AUDTERM_3_LEFT EQU %01000000
AUDTERM_2_LEFT EQU %00100000
AUDTERM_1_LEFT EQU %00010000
; SO1
AUDTERM_4_RIGHT EQU %00001000
AUDTERM_3_RIGHT EQU %00000100
AUDTERM_2_RIGHT EQU %00000010
AUDTERM_1_RIGHT EQU %00000001
; -- ; --
; -- AUDENA/NR52 ($FF26) ; -- AUDENA/NR52 ($FF26)
@@ -432,6 +448,9 @@ rAUDTERM EQU rNR51
rNR52 EQU $FF26 rNR52 EQU $FF26
rAUDENA EQU rNR52 rAUDENA EQU rNR52
AUDENA_ON EQU %10000000
AUDENA_OFF EQU %00000000 ; sets all audio regs to 0!
;*************************************************************************** ;***************************************************************************
;* ;*
@@ -453,6 +472,9 @@ rAUDENA EQU rNR52
rNR10 EQU $FF10 rNR10 EQU $FF10
rAUD1SWEEP EQU rNR10 rAUD1SWEEP EQU rNR10
AUD1SWEEP_UP EQU %00000000
AUD1SWEEP_DOWN EQU %00001000
; -- ; --
; -- AUD1LEN/NR11 ($FF11) ; -- AUD1LEN/NR11 ($FF11)
@@ -651,6 +673,67 @@ rAUD4POLY EQU rNR43
rNR44 EQU $FF23 rNR44 EQU $FF23
rAUD4GO EQU rNR44 ; silly name! rAUD4GO EQU rNR44 ; silly name!
; --
; -- PCM12 ($FF76)
; -- Sound channel 1&2 PCM amplitude (R)
; --
; -- Bit 7-4 - Copy of sound channel 2's PCM amplitude
; -- Bit 3-0 - Copy of sound channel 1's PCM amplitude
; --
rPCM12 EQU $FF76
; --
; -- PCM34 ($FF77)
; -- Sound channel 3&4 PCM amplitude (R)
; --
; -- Bit 7-4 - Copy of sound channel 4's PCM amplitude
; -- Bit 3-0 - Copy of sound channel 3's PCM amplitude
; --
rPCM34 EQU $FF77
;***************************************************************************
;*
;* Flags common to multiple sound channels
;*
;***************************************************************************
; --
; -- Square wave duty cycle
; --
; -- Can be used with AUD1LEN and AUD2LEN
; -- See AUD1LEN for more info
; --
AUDLEN_DUTY_12_5 EQU %00000000 ; 12.5%
AUDLEN_DUTY_25 EQU %01000000 ; 25%
AUDLEN_DUTY_50 EQU %10000000 ; 50%
AUDLEN_DUTY_75 EQU %11000000 ; 75%
; --
; -- Audio envelope flags
; --
; -- Can be used with AUD1ENV, AUD2ENV, AUD4ENV
; -- See AUD1ENV for more info
; --
AUDENV_UP EQU %00001000
AUDENV_DOWN EQU %00000000
; --
; -- Audio trigger flags
; --
; -- Can be used with AUD1HIGH, AUD2HIGH, AUD3HIGH
; -- See AUD1HIGH for more info
; --
AUDHIGH_RESTART EQU %10000000
AUDHIGH_LENGTH_ON EQU %01000000
AUDHIGH_LENGTH_OFF EQU %00000000
;*************************************************************************** ;***************************************************************************
;* ;*
;* Cart related ;* Cart related