Search
lxdream.org :: lxdream/src/aica/aica.h
lxdream 0.9.1
released Jun 29
Download Now
filename src/aica/aica.h
changeset 11:0a82ef380c45
next40:852ee31ace0d
author nkeynes
date Mon Dec 12 10:37:41 2005 +0000 (15 years ago)
permissions -rw-r--r--
last change Use cpu-specific is_valid_page function
file annotate diff log raw
nkeynes@11
     1
/**
nkeynes@11
     2
 * $Id: aica.h,v 1.1 2005-12-11 12:00:09 nkeynes Exp $
nkeynes@11
     3
 * 
nkeynes@11
     4
 * MMIO definitions for the AICA sound chip. Note that the regions defined
nkeynes@11
     5
 * here are relative to the SH4 memory map (0x00700000 based), rather than
nkeynes@11
     6
 * the ARM addresses (0x00800000 based).
nkeynes@11
     7
 *
nkeynes@11
     8
 * Copyright (c) 2005 Nathan Keynes.
nkeynes@11
     9
 *
nkeynes@11
    10
 * This program is free software; you can redistribute it and/or modify
nkeynes@11
    11
 * it under the terms of the GNU General Public License as published by
nkeynes@11
    12
 * the Free Software Foundation; either version 2 of the License, or
nkeynes@11
    13
 * (at your option) any later version.
nkeynes@11
    14
 *
nkeynes@11
    15
 * This program is distributed in the hope that it will be useful,
nkeynes@11
    16
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
nkeynes@11
    17
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
nkeynes@11
    18
 * GNU General Public License for more details.
nkeynes@11
    19
 */
nkeynes@11
    20
nkeynes@11
    21
#include "mmio.h"
nkeynes@11
    22
nkeynes@11
    23
MMIO_REGION_BEGIN( 0x00700000, AICA0, "AICA Sound System 0-31" )
nkeynes@11
    24
LONG_PORT( 0x000, AICACH0, PORT_MRW, UNDEFINED, "Channel 0" )
nkeynes@11
    25
MMIO_REGION_END
nkeynes@11
    26
nkeynes@11
    27
MMIO_REGION_BEGIN( 0x00701000, AICA1, "AICA Sound System 32-63" )
nkeynes@11
    28
LONG_PORT( 0x000, AICACH32, PORT_MRW, UNDEFINED, "Channel 32" )
nkeynes@11
    29
MMIO_REGION_END
nkeynes@11
    30
nkeynes@11
    31
MMIO_REGION_BEGIN( 0x00702000, AICA2, "AICA Sound System Control" )
nkeynes@11
    32
LONG_PORT( 0x040, VOLLEFT, PORT_MRW, 0, "Volume left" )
nkeynes@11
    33
LONG_PORT( 0x044, VOLRIGHT, PORT_MRW, 0, "Volume right" )
nkeynes@11
    34
LONG_PORT( 0x800, AICA_CTRL, PORT_MRW, UNDEFINED, "AICA control" )
nkeynes@11
    35
LONG_PORT( 0xC00, AICA_RESET,PORT_MRW, 0, "AICA reset" )
nkeynes@11
    36
MMIO_REGION_END
nkeynes@11
    37
nkeynes@11
    38
MMIO_REGION_LIST_BEGIN( spu )
nkeynes@11
    39
    MMIO_REGION( AICA0 )
nkeynes@11
    40
    MMIO_REGION( AICA1 )
nkeynes@11
    41
    MMIO_REGION( AICA2 )
nkeynes@11
    42
MMIO_REGION_LIST_END
nkeynes@11
    43
nkeynes@11
    44
void aica_init( void );
nkeynes@11
    45
void aica_reset( void );
.