Make vsync polarity detection switchable

pull/306/head
IanSB 2022-03-27 03:36:20 +01:00
rodzic 5f553ef23e
commit 00a34a0c17
3 zmienionych plików z 9 dodań i 2 usunięć

Wyświetl plik

@ -550,7 +550,8 @@ typedef struct {
#define VSYNC_NONINTERLACED 3
#define VSYNC_NONINTERLACED_DEJITTER 4
#define VSYNC_BLANKING 5
#define NUM_VSYNC 6
#define VSYNC_POLARITY 6
#define NUM_VSYNC 7
#define VIDEO_PROGRESSIVE 0
#define VIDEO_INTERLACED 1

Wyświetl plik

@ -32,7 +32,8 @@ static const char *vsync_names[] = {
"Interlaced 160uS Vsync",
"Non Interlaced",
"Flywheel",
"Blanking"
"Blanking",
"Polarity"
};
static const char *setup_names[] = {

Wyświetl plik

@ -409,6 +409,7 @@ buffer_chosen:
bic r3, r3, #BIT_ELK // clear elk mode
ldr r8, param_vsync_type
cmp r8, #VSYNC_AUTO
cmpne r8, #VSYNC_POLARITY
beq auto_detect_vsync
cmp r8, #VSYNC_INTERLACED_160 // interlaced half line
orreq r3, r3, #BIT_ELK
@ -1153,6 +1154,10 @@ done_ntsc_auto:
tst r8, #SYNC_BIT_COMPOSITE_SYNC //set if composite so don't check vsync polarity
bne skip_sync_time_test
ldr r8, param_vsync_type
cmp r8, #VSYNC_POLARITY
bne skip_sync_time_test
orr r0, #RET_VSYNC_POLARITY_CHANGED
mov r8, #VERSION_MASK