diff options
| author | Javier Degirolmo | 2011-10-07 12:17:54 -0300 |
|---|---|---|
| committer | Javier Degirolmo | 2011-10-07 12:17:54 -0300 |
| commit | 178968cc2fc4c32fb918ebb4ccd24d78b64cd73f (patch) | |
| tree | d8cb1d39bd1991258ffe45b4bcc498b0443e4b35 /src-z80/core/vars.z80 | |
Initial upload, Echo 0.8 UNSTABLE VERSION
Diffstat (limited to 'src-z80/core/vars.z80')
| -rw-r--r-- | src-z80/core/vars.z80 | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src-z80/core/vars.z80 b/src-z80/core/vars.z80 new file mode 100644 index 0000000..ef9a676 --- /dev/null +++ b/src-z80/core/vars.z80 @@ -0,0 +1,70 @@ +;**************************************************************************** +; Player variables +;**************************************************************************** + + ds $100-($&$FF), $FF +RAM_PSGData: ds 4*16 ; PSG envelope data + ; ds 1 ... Channel volume + ; ds 1 ... Global volume + ; ds 3 ... Current address + ; ds 3 ... Looping address + ; ds 3 ... Start address + ; ds 1 ... Padding + ; ds 3 ... BGM instrument address + ; ds 1 ... BGM channel volume + +RAM_BGMFMInstr: ds 8 ; FM instruments used by BGM +RAM_BGMFMVol: ds 8 ; FM volumes used by BGM +RAM_FMVolume: ds 8 ; Volume of each FM channel +RAM_FMData: ds 8*5 ; FM info (for volume handling) + ; ds 8*1 ... Register $B0 + ; ds 8*1 ... Register $40 + ; ds 8*1 ... Register $44 + ; ds 8*1 ... Register $48 + ; ds 8*1 ... Register $4C + +RAM_LastBank: ds 1 ; Last accessed bank + +RAM_BGMData: ; Where BGM data starts +RAM_BGMPlaying: ds 1 ; Set if a BGM is playing +RAM_BGMDelay: ds 1 ; How many ticks to wait +RAM_BGMBank: ds 1 ; Current BGM bank +RAM_BGMAddress: ds 2 ; Current BGM address +RAM_BGMLoopPoint: ds 3 ; BGM loop point + +RAM_SFXData: ; Where SFX data starts +RAM_SFXPlaying: ds 1 ; Set if a SFX is playing +RAM_SFXDelay: ds 1 ; How many ticks to wait +RAM_SFXBank: ds 1 ; Current SFX bank +RAM_SFXAddress: ds 2 ; Current SFX address + +RAM_Locked: ds 12 ; Locked channels + +RAM_Scratch: ds 32 ; Scratch bytes, may be useful when + ; buffering to speed up to avoid bank + ; switching conflicts + +;**************************************************************************** +; Pointer list starts being stored from here +; $300 (768) bytes are needed to store the pointer list +; +; Format for a pointer list entry is as follows: +; RAM_PointerList[$000+n] = address high +; RAM_PointerList[$100+n] = address low +; RAM_PointerList[$200+n] = bank +;**************************************************************************** + + ds $100-($&$FF), $FF + +RAM_PointerList: equ $1C00 + +;**************************************************************************** +; 68000 communication variables +;**************************************************************************** + +RAM_Stack: equ $1FF0 ; Where stack starts + +RAM_Status: equ $1FF0 ; Current playback status +RAM_Command: equ $1FFF ; Command type +RAM_ComAddr: equ $1FFD ; Command address parameter +RAM_ComBank: equ $1FFC ; Command bank parameter |
