Ah, my first job out of college. Circa 1989, I got hired at Motorola to code Z80 on their EMX series of cellular telephone switches. But this was no ordinary Z80! This was a Z80 with blackjack! And hookers!
The board had an external MMU and a bank register gave it an effective 24-bit (16 MB) address space. There was an active processor and a standby processor, and 4 MB of the address space was shared between the active and standby. The MMU even had an NMI mask, so we could mask out non-maskable interrupts. I was super proud of myself that I taught our HP logic analyzer to understand the bank register and actually decode the full 24-bit address bus.
So many fond memories. Like counting clock cycles to make sure a task would run in the time allotted. Or the time a co-worker thought the I register was just another general purpose register. (It was actually the interrupt vector. Hilarity ensued.) Or the fact that we only had half a dozen machines in the lab, so lab time was scheduled 24 hours a day and you grabbed a slot whenever you could. Or the two weeks I spent all night, every night, sitting on the floor of a customer site in a refrigerated Bangkok switch room with a microfiche reader and stack of fiche about the size of a brick, typing opcodes into the debugging terminal on the running production system.
Wait, did I say fond memories? I meant nightmares.