|
--- pokeymax_119/atari_800xl/atari_chips/pokeyv2/pokeymax.vhd 2020-12-20 15:27:31.900931683 +0100
|
|
+++ pokeymax_119/atari_800xl/atari_chips/pokeyv2/pokeymaxsid.vhd 2020-12-20 15:27:31.900931683 +0100
|
|
@@ -55,19 +55,14 @@
|
|
D : INOUT STD_LOGIC_VECTOR(7 DOWNTO 0);
|
|
A : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
|
|
W_N : IN STD_LOGIC;
|
|
- IRQ : INOUT STD_LOGIC;
|
|
- SOD : OUT STD_LOGIC;
|
|
- ACLK : OUT STD_LOGIC;
|
|
- BCLK : INOUT STD_LOGIC;
|
|
- SID : IN STD_LOGIC;
|
|
+ RST : IN STD_LOGIC;
|
|
CS0_N : IN STD_LOGIC;
|
|
- CS1 : IN STD_LOGIC;
|
|
|
|
AUD : OUT STD_LOGIC_VECTOR(4 DOWNTO 1);
|
|
|
|
EXT : INOUT STD_LOGIC_VECTOR(EXT_BITS DOWNTO 1);
|
|
|
|
- PADDLE : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
|
|
+ PADDLE : IN STD_LOGIC_VECTOR(1 DOWNTO 0);
|
|
POTRESET_N : OUT STD_LOGIC;
|
|
|
|
IOX_RST : OUT STD_LOGIC;
|
|
@@ -101,6 +96,7 @@
|
|
signal CLK116 : std_logic;
|
|
signal CLK106 : std_logic;
|
|
signal RESET_N : std_logic;
|
|
+ signal PLL_RESET_N : std_logic;
|
|
|
|
signal ENABLE_CYCLE : std_logic;
|
|
signal ENABLE_DOUBLE_CYCLE : std_logic;
|
|
@@ -459,7 +455,7 @@
|
|
EXT_INT(0) <= '0'; --force to 0
|
|
EXT_INT(17 downto ext_bits+1) <= (others=>'1');
|
|
EXT_INT(18) <= CS0_N;
|
|
- EXT_INT(19) <= CS1;
|
|
+ EXT_INT(19) <= '0';
|
|
EXT_INT(20) <= '1';
|
|
EXT_INT(ext_bits downto 1) <= EXT;
|
|
|
|
@@ -477,7 +473,9 @@
|
|
c0 => CLK, --56 ish
|
|
c1 => CLK116, --113ish
|
|
c2 => CLK106, --106ish
|
|
- locked => RESET_N);
|
|
+ locked => PLL_RESET_N);
|
|
+
|
|
+ RESET_N <= PLL_RESET_N and RST;
|
|
|
|
|
|
AIN(3 downto 0) <= A;
|
|
@@ -652,7 +650,7 @@
|
|
ADDR => ADDR_IN(3 DOWNTO 0),
|
|
DATA_IN => WRITE_DATA(7 DOWNTO 0),
|
|
keyboard_response => KEYBOARD_RESPONSE,
|
|
- POT_IN => PADDLE,
|
|
+ POT_IN => "000000"&PADDLE,
|
|
IRQ_N_OUT => POKEY_IRQ(0),
|
|
SIO_OUT1 => SIO_TXD,
|
|
SIO_OUT2 => open,
|
|
@@ -1624,12 +1622,11 @@
|
|
);
|
|
|
|
-- Wire up pins
|
|
-ACLK <= SIO_CLOCKOUT;
|
|
-BCLK <= '0' when (SIO_CLOCKIN_OE='1' and SIO_CLOCKIN_OUT='0') else 'Z';
|
|
-SIO_CLOCKIN_IN <= BCLK;
|
|
+--ACLK <= SIO_CLOCKOUT;
|
|
+--BCLK <= '0' when (SIO_CLOCKIN_OE='1' and SIO_CLOCKIN_OUT='0') else 'Z';
|
|
+SIO_CLOCKIN_IN <= '0';
|
|
|
|
-SOD <= '0' when SIO_TXD='0' else 'Z';
|
|
-SIO_RXD <= SID;
|
|
+SIO_RXD <= '1';
|
|
|
|
|
|
--1->pin37
|
|
@@ -1640,7 +1637,7 @@
|
|
AUD(3) <= AUDIO_2_SIGMADELTA;
|
|
AUD(4) <= AUDIO_3_SIGMADELTA;
|
|
|
|
-IRQ <= '0' when (IRQ_EN_REG='1' and (and_reduce(POKEY_IRQ)='0')) or (IRQ_EN_REG='0' and POKEY_IRQ(0)='0') or (SAMPLE_IRQ='1') else 'Z';
|
|
+--IRQ <= '0' when (IRQ_EN_REG='1' and (and_reduce(POKEY_IRQ)='0')) or (IRQ_EN_REG='0' and POKEY_IRQ(0)='0') or (SAMPLE_IRQ='1') else 'Z';
|
|
|
|
D <= BUS_DATA when BUS_OE='1' else (others=>'Z');
|
|
|