| 5030 | } |
| 5031 | |
| 5032 | void memwatch_dump2 (TCHAR *buf, int bufsize, int num) |
| 5033 | { |
| 5034 | int i; |
| 5035 | struct memwatch_node *mwn; |
| 5036 | |
| 5037 | if (buf) |
| 5038 | memset (buf, 0, bufsize * sizeof (TCHAR)); |
| 5039 | for (i = 0; i < MEMWATCH_TOTAL; i++) { |
| 5040 | if ((num >= 0 && num == i) || (num < 0)) { |
| 5041 | uae_u32 usedmask = 0; |
| 5042 | mwn = &mwnodes[i]; |
| 5043 | if (mwn->size == 0) |
| 5044 | continue; |
| 5045 | buf = buf_out (buf, &bufsize, _T("%2d: %08X - %08X (%d) %c%c%c"), |
| 5046 | i, mwn->addr, mwn->addr + (mwn->size - 1), mwn->size, |
| 5047 | (mwn->rwi & 1) ? 'R' : ' ', (mwn->rwi & 2) ? 'W' : ' ', (mwn->rwi & 4) ? 'I' : ' '); |
| 5048 | if (mwn->frozen) |
| 5049 | buf = buf_out (buf, &bufsize, _T(" F")); |
| 5050 | if (mwn->val_enabled) |
| 5051 | buf = buf_out (buf, &bufsize, _T(" =%X%s"), mwn->val, getsizechar (mwn->val_size)); |
| 5052 | if (mwn->modval_written) |
| 5053 | buf = buf_out (buf, &bufsize, _T(" =M")); |
| 5054 | if (mwn->mustchange) |
| 5055 | buf = buf_out(buf, &bufsize, _T(" C")); |
| 5056 | if (mwn->pc != 0xffffffff) |
| 5057 | buf = buf_out(buf, &bufsize, _T(" PC=%08x"), mwn->pc); |
| 5058 | if (mwn->reportonly) |
| 5059 | buf = buf_out(buf, &bufsize, _T(" L")); |
| 5060 | if (mwn->nobreak) |
| 5061 | buf = buf_out(buf, &bufsize, _T(" N")); |
| 5062 | if (mwn->bus_error) { |
| 5063 | buf = buf_out(buf, &bufsize, _T(" BER%s%s%s"), |
| 5064 | (mwn->bus_error & 1) ? _T("R") : _T(""), |
| 5065 | (mwn->bus_error & 2) ? _T("W") : _T(""), |
| 5066 | (mwn->bus_error & 4) ? _T("P") : _T("")); |
| 5067 | } |
| 5068 | for (int j = 0; memwatch_access_masks[j].mask; j++) { |
| 5069 | uae_u32 mask = memwatch_access_masks[j].mask; |
| 5070 | if ((mwn->access_mask & mask) == mask && (usedmask & mask) == 0) { |
| 5071 | buf = buf_out(buf, &bufsize, _T(" ")); |
| 5072 | buf = buf_out(buf, &bufsize, memwatch_access_masks[j].name); |
| 5073 | usedmask |= mask; |
| 5074 | } |
| 5075 | } |
| 5076 | buf = buf_out (buf, &bufsize, _T("\n")); |
| 5077 | } |
| 5078 | } |
| 5079 | } |
| 5080 | |
| 5081 | static bool memwatch_dump(int num) |
| 5082 | { |
no test coverage detected