notes:homebrew:gba_nds_slot2
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| notes:homebrew:gba_nds_slot2 [2023/03/28 17:56] – removed - external edit (Unknown date) 127.0.0.1 | notes:homebrew:gba_nds_slot2 [2023/03/28 17:56] (current) – ↷ Page name changed from notes:homebrew:flashtek to notes:homebrew:gba_nds_slot2 asie | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== GBA/NDS Slot-2 peripheral programming notes ====== | ||
| + | ===== Compact Flash Adapters ===== | ||
| + | |||
| + | Compact Flash adapters on the GBA cartridge interface all generally work by exposing IDE registers using the top eight address bits coupled with the sixteen-bit data bus, wiring them directly to the relevant IDE connector pins. | ||
| + | |||
| + | In programmer-facing documentation, | ||
| + | |||
| + | TODO: | ||
| + | |||
| + | * Is INTRQ relayed in any way? On which adapters? | ||
| + | |||
| + | ==== GBA Movie Player ==== | ||
| + | |||
| + | ^ Address bits ^ Map to ^ | ||
| + | | 23 | " | ||
| + | | 22 | Chip Select 0/1 | | ||
| + | | 18-16 | DA2-DA0 | | ||
| + | |||
| + | ===== Memory Expansion Pak ===== | ||
| + | |||
| + | Identification: | ||
| + | |||
| + | * 0B4h (device type) == 24h | ||
| + | * 0BFh - bit 7 clear | ||
| + | * 1FFFFh - bit 7 clear | ||
| + | |||
| + | Timings: | ||
| + | |||
| + | * Official software uses default timings (EXMEMCNT[6: | ||
| + | |||
| + | Memory map: | ||
| + | |||
| + | * 240000h - unlock register (32-bit) | ||
| + | * bit 0 - set if unlocked, clear if locked | ||
| + | * bit 1-31 - unknown | ||
| + | * 1000000h - 8 megabytes of memory starts here | ||
| + | |||
| + | TODO: | ||
| + | |||
| + | * what are the remaining unlock register bits? | ||
| + | * official software crashes if any bits 16-31 are set on initialization | ||
| + | * does the unlock register control memory visibility or just writability? | ||
