Expansion Bus Decoding b16-23 Register
| Number | TBRegisterNumber::$88 |
|---|---|
| Readable | TBRegisterReadable::Yes |
| Writable | TBRegisterWritable::Yes |
| Short Description | ShortDesc::When expansion bus is enabled: Internal ports decoding mask |
| Bit | Description |
|---|---|
| 7 | (bit 23) Masking decoding: {{#ask:
PortNumber::$xxDF }} ($xxDF{{#ask: PortNumber::$xxDF |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DAC mono Specdrum) |
| 6 | (bit 22) Masking decoding: {{#ask:
PortNumber::$xxB3 }} ($xxB3{{#ask: PortNumber::$xxB3 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DAC mono GS Covox) |
| 5 | (bit 21) Masking decoding: {{#ask:
PortNumber::$xxFB }} ($xxFB{{#ask: PortNumber::$xxFB |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DAC mono Pentagon/ATM (sd mode 2 off)) |
| 4 | (bit 20) Masking decoding: {{#ask:
PortNumber::$xx0F }} ($xx0F{{#ask: PortNumber::$xx0F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$xx4F }} ($xx4F{{#ask: PortNumber::$xx4F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DAC stereo Covox) |
| 3 | (bit 19) Masking decoding: {{#ask:
PortNumber::$xx3F }} ($xx3F{{#ask: PortNumber::$xx3F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$xx5F }} ($xx5F{{#ask: PortNumber::$xx5F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DAC stereo profi Covox) |
| 2 | (bit 18) Masking decoding: {{#ask:
PortNumber::$xxF1 }} ($xxF1{{#ask: PortNumber::$xxF1 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}), {{#ask: PortNumber::$xxF3 }} ($xxF3{{#ask: PortNumber::$xxF3 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}), {{#ask: PortNumber::$xxF9 }} ($xxF9{{#ask: PortNumber::$xxF9 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$xxFB }} ($xxFB{{#ask: PortNumber::$xxFB |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DAC soundrive mode 2) |
| 1 | (bit 17) Masking decoding: {{#ask:
PortNumber::$xx0F }} ($xx0F{{#ask: PortNumber::$xx0F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}), {{#ask: PortNumber::$xx1F }} ($xx1F{{#ask: PortNumber::$xx1F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}), {{#ask: PortNumber::$xx4F }} ($xx4F{{#ask: PortNumber::$xx4F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$xx5F }} ($xx5F{{#ask: PortNumber::$xx5F |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DAC soundrive mode 1) |
| 0 | (bit 16) Masking decoding: {{#ask:
PortNumber::$FFFD }} ($FFFD{{#ask: PortNumber::$FFFD |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$BFFD }} ($BFFD{{#ask: PortNumber::$BFFD |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) |
since core3.1.1: all bits are set to 1 when: soft reset and bit 31 is clear OR hard reset and bit 31 is set (otherwise content is kept intact). All bits are set to 1 upon hard reset.
When the expansion bus is on, the expansion port decoding mask (Next Registers $86-$89) is 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)