mirror of https://github.com/marqs85/ossc.git
Add 288p line5x modes and hotkey for quick mode select
This commit is contained in:
parent
2c934c9dd0
commit
97428ba3ad
|
@ -107,6 +107,11 @@ void parse_control()
|
|||
{
|
||||
int i;
|
||||
alt_u32 btn_vec;
|
||||
alt_u8 pt_only = 0;
|
||||
|
||||
// one for each video_group
|
||||
alt_u8* pmcfg_ptr[] = { &pt_only, &tc.pm_240p, &tc.pm_384p, &tc.pm_480i, &tc.pm_480p, &tc.pm_480p, &tc.pm_1080i };
|
||||
alt_u8 valid_pm[] = { 0x1, 0x1f, 0x3, 0x3, 0x3, 0x3, 0x3 };
|
||||
|
||||
if (remote_code)
|
||||
printf("RCODE: 0x%.4lx, %d\n", remote_code, remote_rpt);
|
||||
|
@ -155,7 +160,41 @@ void parse_control()
|
|||
case RC_SL_TYPE: tc.sl_type = (tc.sl_type < SL_TYPE_MAX) ? (tc.sl_type + 1) : 0; break;
|
||||
case RC_SL_MINUS: tc.sl_str = tc.sl_str ? (tc.sl_str - 1) : 0; break;
|
||||
case RC_SL_PLUS: tc.sl_str = (tc.sl_str < SCANLINESTR_MAX) ? (tc.sl_str + 1) : SCANLINESTR_MAX; break;
|
||||
//case RC_LM_MODE: tc.linemult_target = (tc.linemult_target < LM_MODE_MAX) ? (tc.linemult_target + 1) : 0; break;
|
||||
case RC_LM_MODE:
|
||||
strncpy(menu_row1, "Linemult mode:", LCD_ROW_LEN+1);
|
||||
strncpy(menu_row2, "press 1-5", LCD_ROW_LEN+1);
|
||||
lcd_write_menu();
|
||||
|
||||
while (1) {
|
||||
btn_vec = IORD_ALTERA_AVALON_PIO_DATA(PIO_1_BASE) & RC_MASK;
|
||||
for (i = RC_BTN1; i < REMOTE_MAX_KEYS; i++) {
|
||||
if (btn_vec == rc_keymap[i])
|
||||
break;
|
||||
}
|
||||
|
||||
if (video_modes[cm.id].group > GROUP_1080I) {
|
||||
printf("WARNING: Corrupted mode (id %d)\n", cm.id);
|
||||
break;
|
||||
}
|
||||
|
||||
if (i <= RC_BTN5) {
|
||||
if ((1<<i) & valid_pm[video_modes[cm.id].group]) {
|
||||
*pmcfg_ptr[video_modes[cm.id].group] = i;
|
||||
} else {
|
||||
sniprintf(menu_row2, LCD_ROW_LEN+1, "%ux unsupported", i+1);
|
||||
lcd_write_menu();
|
||||
usleep(500000);
|
||||
}
|
||||
break;
|
||||
} else if (i == RC_BACK) {
|
||||
break;
|
||||
}
|
||||
|
||||
usleep(WAITLOOP_SLEEP_US);
|
||||
}
|
||||
lcd_write_status();
|
||||
menu_active = 0;
|
||||
break;
|
||||
case RC_PHASE_PLUS: tc.sampler_phase = (tc.sampler_phase < SAMPLER_PHASE_MAX) ? (tc.sampler_phase + 1) : 0; break;
|
||||
case RC_PHASE_MINUS: tc.sampler_phase = tc.sampler_phase ? (tc.sampler_phase - 1) : SAMPLER_PHASE_MAX; break;
|
||||
case RC_PROF_HOTKEY:
|
||||
|
@ -174,7 +213,7 @@ void parse_control()
|
|||
profile_sel = (i+1)%10;
|
||||
load_profile_disp(OPT_SELECT);
|
||||
break;
|
||||
} else if (i == rc_keymap[RC_BACK]) {
|
||||
} else if (i == RC_BACK) {
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -102,12 +102,13 @@ typedef struct {
|
|||
{ "320x240", 320, 240, 6000, 426, 262, 49, 16, 31, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_320_COL | MODE_L4_320_COL | MODE_L5_320_COL | MODE_PLLDIVBY2) }, \
|
||||
{ "256x240", 256, 240, 6000, 341, 262, 39, 16, 25, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_256_COL | MODE_L4_256_COL | MODE_L5_256_COL | MODE_PLLDIVBY2) }, \
|
||||
{ "240p", 720, 240, 6000, 858, 262, 65, 16, 60, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_PT | MODE_L2 | MODE_PLLDIVBY2) }, \
|
||||
{ "1536*240", 1536, 240, 6000, 2046, 262, 234, 16, 150, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L5_GEN_4_3 | MODE_PLLDIVBY2) }, \
|
||||
{ "1536x240", 1536, 240, 6000, 2046, 262, 234, 16, 150, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L5_GEN_4_3 | MODE_PLLDIVBY2) }, \
|
||||
{ "1280x288", 1280, 288, 5000, 1560, 312, 170, 16, 72, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_GEN_16_9 | MODE_L4_GEN_4_3 | MODE_PLLDIVBY2) }, \
|
||||
{ "960x288", 960, 288, 5000, 1170, 312, 128, 16, 54, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_GEN_4_3 | MODE_PLLDIVBY2) }, \
|
||||
{ "320x240LB", 320, 240, 5000, 426, 312, 49, 41, 31, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_320_COL | MODE_L4_320_COL | MODE_PLLDIVBY2) }, \
|
||||
{ "256x240LB", 256, 240, 5000, 341, 312, 39, 41, 25, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_256_COL | MODE_L4_256_COL | MODE_PLLDIVBY2) }, \
|
||||
{ "320x240LB", 320, 240, 5000, 426, 312, 49, 41, 31, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_320_COL | MODE_L4_320_COL | MODE_L5_320_COL | MODE_PLLDIVBY2) }, \
|
||||
{ "256x240LB", 256, 240, 5000, 341, 312, 39, 41, 25, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L3_256_COL | MODE_L4_256_COL | MODE_L5_256_COL | MODE_PLLDIVBY2) }, \
|
||||
{ "288p", 720, 288, 5000, 864, 312, 65, 16, 60, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_PT | MODE_L2 | MODE_PLLDIVBY2) }, \
|
||||
{ "1536x240L", 1536, 240, 5000, 2046, 312, 234, 41, 150, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_240P, (MODE_L5_GEN_4_3 | MODE_PLLDIVBY2) }, \
|
||||
{ "384p", 496, 384, 5766, 640, 423, 50, 29, 62, 3, (VIDEO_EDTV), GROUP_384P, (MODE_PT | MODE_L2 | MODE_PLLDIVBY2) }, /* Sega Model 2 */ \
|
||||
{ "640x384", 640, 384, 5500, 800, 492, 48, 63, 96, 2, VIDEO_PC, GROUP_384P, (MODE_PT | MODE_L2 | MODE_PLLDIVBY2) }, /* X68k @ 24kHz */ \
|
||||
{ "480i", 720, 240, 5994, 858, 525, 65, 16, 60, 3, (VIDEO_SDTV | VIDEO_PC), GROUP_480I, (MODE_PT | MODE_L2 | MODE_PLLDIVBY2 | MODE_INTERLACED) }, \
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
<sch:Settings xmlns:sch="http://www.altera.com/embeddedsw/bsp/schema">
|
||||
<BspType>hal</BspType>
|
||||
<BspVersion>default</BspVersion>
|
||||
<BspGeneratedTimeStamp>Feb 9, 2017 9:00:28 PM</BspGeneratedTimeStamp>
|
||||
<BspGeneratedUnixTimeStamp>1486666828834</BspGeneratedUnixTimeStamp>
|
||||
<BspGeneratedTimeStamp>Feb 11, 2017 4:39:21 AM</BspGeneratedTimeStamp>
|
||||
<BspGeneratedUnixTimeStamp>1486780761994</BspGeneratedUnixTimeStamp>
|
||||
<BspGeneratedLocation>./</BspGeneratedLocation>
|
||||
<BspSettingsFile>settings.bsp</BspSettingsFile>
|
||||
<SopcDesignFile>../../sys.sopcinfo</SopcDesignFile>
|
||||
|
|
Loading…
Reference in New Issue