Debugging code: direct
Real microcontroller
- hard limits (e.g., program must fit in available memory of target)
- load ROM or dual-ported RAM with program
- initializations must be just right (e.g., stack pointer and comm port)
- debugged via logic analyzer on pins
- modern microcontrollers include special pins to permit access to internal state without disrupting running program