Internal Port Decoding b0-7 Register

From SpecNext Wiki
Jump to: navigation, search
Number TBRegisterNumber::$82
Readable TBRegisterReadable::Yes
Writable TBRegisterWritable::Yes
Short Description ShortDesc::Enabling internal ports decoding
Bit Description
7 Enabling {{#ask:

PortNumber::$xx37 }} ($xx37{{#ask: PortNumber::$xx37 |mainlabel=- |headers=hide |intro= /  |?NumberDec#- }}) (also MD2 controller)

6 Enabling {{#ask:

PortNumber::$xx1F }} ($xx1F{{#ask: PortNumber::$xx1F |mainlabel=- |headers=hide |intro= /  |?NumberDec#- }}) (also MD1 controller)

5 Enabling {{#ask:

PortNumber::$xx6B }} ($xx6B{{#ask: PortNumber::$xx6B |mainlabel=- |headers=hide |intro= /  |?NumberDec#- }})

4 Enabling +3 floating bus
3 Enabling {{#ask:

PortNumber::$1FFD }} ($1FFD{{#ask: PortNumber::$1FFD |mainlabel=- |headers=hide |intro= /  |?NumberDec#- }})

2 Enabling {{#ask:

PortNumber::$DFFD }} ($DFFD{{#ask: PortNumber::$DFFD |mainlabel=- |headers=hide |intro= /  |?NumberDec#- }})

1 Enabling {{#ask:

PortNumber::$7FFD }} ($7FFD{{#ask: PortNumber::$7FFD |mainlabel=- |headers=hide |intro= /  |?NumberDec#- }})

0 Enabling {{#ask:

PortNumber::$xxFF }} ($xxFF{{#ask: PortNumber::$xxFF |mainlabel=- |headers=hide |intro= /  |?NumberDec#- }})

since core3.1.1: all bits are set to 1 when: soft reset and bit 31 is set OR hard reset and bit 31 is clear (otherwise content is kept intact). All bits are set to 1 upon soft reset.

The internal port decoding enables always apply.

When the expansion bus is on, the expansion port decoding (Next Registers $86-$89) enables are logically ANDed with the internal enables (Next Registers $82-$85). A zero bit indicates the internal device is disabled.

If the expansion bus is on, this allows I/O cycles for disabled internal ports to propagate to the expansion bus, otherwise corresponding I/O cycles to the expansion bus are filtered.

(note: Next registers with number higher than $7F are inaccessible from Copper code)