For debugger
| 2786 | |
| 2787 | // For debugger |
| 2788 | uint16_t NTSC_GetScannerAddressAndData(uint32_t& data, int& dataSize) |
| 2789 | { |
| 2790 | if (g_uNewVideoModeFlags & VF_SHR) |
| 2791 | { |
| 2792 | uint16_t addr = getVideoScannerAddressSHR(); |
| 2793 | uint32_t* pAux = (uint32_t*)MemGetAuxPtr(addr); // 8 pixels (320 mode) / 16 pixels (640 mode) |
| 2794 | data = pAux[0]; |
| 2795 | dataSize = 4; |
| 2796 | return addr; |
| 2797 | } |
| 2798 | |
| 2799 | // |
| 2800 | |
| 2801 | // Copy logic from NTSC_SetVideoMode() |
| 2802 | if (g_uNewVideoModeFlags & VF_TEXT) |
| 2803 | { |
| 2804 | if (g_uNewVideoModeFlags & VF_80COL) |
| 2805 | dataSize = 2; |
| 2806 | else |
| 2807 | dataSize = 1; |
| 2808 | } |
| 2809 | else if (g_uNewVideoModeFlags & VF_HIRES) |
| 2810 | { |
| 2811 | if (g_uNewVideoModeFlags & VF_DHIRES) |
| 2812 | { |
| 2813 | if (g_uNewVideoModeFlags & VF_80COL) |
| 2814 | dataSize = 2; |
| 2815 | else |
| 2816 | dataSize = 1; |
| 2817 | } |
| 2818 | else |
| 2819 | { |
| 2820 | dataSize = 1; |
| 2821 | } |
| 2822 | } |
| 2823 | else |
| 2824 | { |
| 2825 | if (g_uNewVideoModeFlags & VF_DHIRES) |
| 2826 | { |
| 2827 | if (g_uNewVideoModeFlags & VF_80COL) |
| 2828 | dataSize = 2; |
| 2829 | else |
| 2830 | dataSize = 1; |
| 2831 | } |
| 2832 | else |
| 2833 | { |
| 2834 | dataSize = 1; |
| 2835 | } |
| 2836 | } |
| 2837 | |
| 2838 | // Extra logic for MIXED mode |
| 2839 | if (g_nVideoMixed && g_nVideoClockVert >= VIDEO_SCANNER_Y_MIXED && (g_uNewVideoModeFlags & VF_80COL)) |
| 2840 | dataSize = 2; |
| 2841 | |
| 2842 | uint16_t addr = getVideoScannerAddressTXTorHGR(); |
| 2843 | data = 0; |
| 2844 | |
| 2845 | if (dataSize == 2) |
no test coverage detected