| 579 | |
| 580 | #ifdef DAEDALUS_BREAKPOINTS_ENABLED |
| 581 | void CPU_AddBreakPoint( u32 address ) |
| 582 | { |
| 583 | OpCode * pdwOp; |
| 584 | |
| 585 | // Force 4 byte alignment |
| 586 | address &= 0xFFFFFFFC; |
| 587 | |
| 588 | if (!Memory_GetInternalReadAddress(address, (void**)&pdwOp)) |
| 589 | { |
| 590 | DBGConsole_Msg(0, "Invalid Address for BreakPoint: 0x%08x", address); |
| 591 | } |
| 592 | else |
| 593 | { |
| 594 | DBG_BreakPoint bpt; |
| 595 | DBGConsole_Msg(0, "[YInserting BreakPoint at 0x%08x]", address); |
| 596 | |
| 597 | bpt.mOriginalOp = *pdwOp; |
| 598 | bpt.mEnabled = true; |
| 599 | bpt.mTemporaryDisable = false; |
| 600 | g_BreakPoints.push_back(bpt); |
| 601 | |
| 602 | pdwOp->op = OP_DBG_BKPT; |
| 603 | pdwOp->bp_index = (g_BreakPoints.size() - 1); |
| 604 | } |
| 605 | } |
| 606 | #endif |
| 607 | |
| 608 | #ifdef DAEDALUS_BREAKPOINTS_ENABLED |