Post: . true: code memory . false: I/O memory or floating bus
| 1813 | // . true: code memory |
| 1814 | // . false: I/O memory or floating bus |
| 1815 | bool MemIsAddrCodeMemory(const USHORT addr) |
| 1816 | { |
| 1817 | if (addr < APPLE_IO_BEGIN || addr > FIRMWARE_EXPANSION_END) // Assume all A][ types have at least 48K |
| 1818 | return true; |
| 1819 | |
| 1820 | if (addr < APPLE_SLOT_BEGIN) // [$C000..C0FF] |
| 1821 | return false; |
| 1822 | |
| 1823 | if (!IS_APPLE2 && SW_INTCXROM) // [$C100..C7FF] //e or Enhanced //e internal ROM |
| 1824 | return true; |
| 1825 | |
| 1826 | if (!IS_APPLE2 && !SW_SLOTC3ROM && (addr >> 8) == 0xC3) // [$C300..C3FF] //e or Enhanced //e internal ROM |
| 1827 | return true; |
| 1828 | |
| 1829 | if (addr <= APPLE_SLOT_END) // [$C100..C7FF] |
| 1830 | { |
| 1831 | UINT slot = (addr >> 8) & 0x7; |
| 1832 | return IsCardInSlot(slot); |
| 1833 | } |
| 1834 | |
| 1835 | // [$C800..CFFF] |
| 1836 | |
| 1837 | if (g_eExpansionRomType == eExpRomNull) |
| 1838 | { |
| 1839 | if (IO_SELECT || INTC8ROM) // Was at $Csxx and now in [$C800..$CFFF] |
| 1840 | return true; |
| 1841 | |
| 1842 | return false; |
| 1843 | } |
| 1844 | |
| 1845 | return true; |
| 1846 | } |
| 1847 | |
| 1848 | //=========================================================================== |
| 1849 |
no test coverage detected