📄 lcd_osd_rel.lst
字号:
1049 2 {
1050 3 ucOSD_Item_Index0 = 0;
1051 3 ucOSD_Item_Index1 = 0;
1052 3 }
1053 2
1054 2 if (0 == ucOSD_Item_Index1)
1055 2 Show_Mode(); // No Slider on Page
1056 2 else
1057 2 {
1058 3 switch (ucOSD_Item_Index0)
1059 3 {
1060 4 case PAGE1_ITEM_CONTRAST :
1061 4 OSD_Slider(11, 2, 20, stGUD0.CONTRAST, 100, 0x61);
1062 4 break;
1063 4 case PAGE1_ITEM_BRIGHT :
1064 4 #if (BRIGHT_TYPE == GAIN)
1065 4 OSD_Slider(11, 2, 20, stGUD0.BRIGHT, 100, 0x61);
1066 4 #endif
1067 4 #if (BRIGHT_TYPE == LIGHT)
OSD_Slider(11, 2, 20, fac_light, 100, 0x61);
#endif
1070 4 break;
1071 4 case PAGE1_ITEM_GAMMA :
1072 4 ucOSD_Item_Index1 = ((stGUD1.INPUT_SOURCE >> 3) & 0x03) + 1;
1073 4 RTDCodeW((4 == ucOSD_Item_Index1) ? OSD_Temp_3
1074 4 : (3 == ucOSD_Item_Index1) ? OSD_Temp_2
1075 4 : (2 == ucOSD_Item_Index1) ? OSD_Temp_1 : OSD_Temp_0);
1076 4 break;
1077 4 }
1078 3 }
1079 2 break;
1080 2
1081 2 #if (KEY_TYPE == KEY_5)
1082 2 case NOTIFY_AUTO_KEY :
1083 2 #endif
1084 2
1085 2 #if (KEY_TYPE == KEY_6)
case NOTIFY_AUTO_KEY:
RTDCodeW(OSD_Reset);
RTDCodeW((unsigned char *)OSD_Autocfg_TABLE[stGUD1.FUNCTION & 0x07]);
RTDCodeW(OSD_Enable);
if (MODE_0640x0350x70HZ <= ucMode_Curr && MODE_0720x0400x70HZ >= ucMode_Curr)
{
unsigned char ucResult;
stMUD.CLOCK = 128;
Set_H_Position();
Set_Clock();
Save_MUD(ucMode_Curr);
C51 COMPILER V7.50 LCD_OSD_REL 07/28/2008 16:10:58 PAGE 19
ucResult = Auto_Phase();
if (ERROR_SUCCEED == ucResult) ucResult = Auto_Position();
if (ERROR_INPUT == ucResult)
{
ucMode_Curr = MODE_OSDFORCE;
return;
}
}
else
{
if (ERROR_INPUT == Auto_Config())
{
ucMode_Curr = MODE_OSDFORCE;
return;
}
}
break;
case NOTIFY_EXIT_KEY :
#endif
1117 2 if (0 == ucOSD_Item_Index1)
1118 2 {
1119 3 if (0 == ucOSD_Item_Index0)
1120 3 {
1121 4 ucOSD_Page_Index = 0;
1122 4 RTDCodeW(OSD_Reset);
1123 4 }
1124 3 else
1125 3 {
1126 4 ucOSD_Item_Index0 = 0;
1127 4 OSD_Window(1, (2 + ucOSD_Item_Index0), (2 + ucOSD_Item_Index0), 7, 23, 3, COLOR_CYAN);
1128 4 Show_Mode();
1129 4 }
1130 3 }
1131 2 else
1132 2 {
1133 3 ucOSD_Item_Index1 = 0;
1134 3 Show_Mode();
1135 3 }
1136 2 break;
1137 2
1138 2 default :
1139 2 // We don't handle other messages
1140 2 break;
1141 2 }
1142 1 }
1143
1144
1145 #define PAGE2_ITEM_NUM 6
1146 #define PAGE2_ITEM_NONE 0
1147 #define PAGE2_ITEM_POSH 1
1148 #define PAGE2_ITEM_POSV 2
1149 #define PAGE2_ITEM_SHARP 3
1150 #define PAGE2_ITEM_PHASE 4
1151 #define PAGE2_ITEM_CLOCK 5
1152 #define PAGE2_ITEM_EXIT 6
1153
1154 void OSD_Proc2(unsigned char action)
1155 {
1156 1 switch (action)
1157 1 {
1158 2 case NOTIFY_ENTER_KEY :
C51 COMPILER V7.50 LCD_OSD_REL 07/28/2008 16:10:58 PAGE 20
1159 2 if (0 == ucOSD_Item_Index0)
1160 2 {
1161 3 if (MODE_NOSIGNAL != ucMode_Curr && MODE_NOSUPPORT != ucMode_Curr)
1162 3 {
1163 4 // Select and highlight the first item
1164 4 ucOSD_Item_Index0 = PAGE2_ITEM_POSH;
1165 4 ucOSD_Item_Index1 = 0;
1166 4 OSD_Window(1, (2 + ucOSD_Item_Index0), (2 + ucOSD_Item_Index0), 7, 23, 7, COLOR_CYAN);
1167 4 }
1168 3 }
1169 2 else
1170 2 {
1171 3 if (ucOSD_Item_Index1)
1172 3 {
1173 4 ucOSD_Item_Index1 = 0; // Leave the item
1174 4 Show_Mode();
1175 4 }
1176 3 else
1177 3 {
1178 4 if (PAGE2_ITEM_EXIT == ucOSD_Item_Index0)
1179 4 {
1180 5 // De-select the page item and disable the hightlight window
1181 5 ucOSD_Item_Index0 = 0;
1182 5 ucOSD_Item_Index1 = 0;
1183 5
1184 5 // Disable highlight window
1185 5 OSD_Window(1, (2 + PAGE2_ITEM_EXIT), (2 + PAGE2_ITEM_EXIT), 7, 23, 3, COLOR_CYAN);
1186 5 }
1187 4 else if (MODE_NOSIGNAL != ucMode_Curr && MODE_NOSUPPORT != ucMode_Curr)
1188 4 {
1189 5 if (SOURCE_VGA == (stGUD1.INPUT_SOURCE & 0x07) || PAGE2_ITEM_SHARP == ucOSD_Item_Index
-0)
1190 5 {
1191 6 switch (ucOSD_Item_Index0)
1192 6 {
1193 7 case PAGE2_ITEM_POSH :
1194 7 ucOSD_Item_Index1 = 1; // Enter the item
1195 7 OSD_Slider(11, 2, 20, ucH_Max_Margin - stMUD.H_POSITION, ucH_Max_Margin - ucH_
-Min_Margin, 0x61);
1196 7 break;
1197 7 case PAGE2_ITEM_POSV :
1198 7 ucOSD_Item_Index1 = 1; // Enter the item
1199 7 OSD_Slider(11, 2, 20, (unsigned int)(stMUD.V_POSITION - ucV_Min_Margin) * 50 /
- (128 - ucV_Min_Margin), 100, 0x61);
1200 7 break;
1201 7 case PAGE2_ITEM_SHARP :
1202 7 ucOSD_Item_Index1 = stGUD1.FILTER + 1;
1203 7 RTDCodeW((1 == ucOSD_Item_Index1) ? OSD_Sharp_1 : (2 == ucOSD_Item_Index1) ? O
-SD_Sharp_2
1204 7 : (3 == ucOSD_Item_Index1) ? OSD_Sharp_3 : (4 == ucOSD_Item_Index1) ? OSD_
-Sharp_4 : OSD_Sharp_5);
1205 7 break;
1206 7 case PAGE2_ITEM_PHASE :
1207 7 ucOSD_Item_Index1 = 1; // Enter the item
1208 7 OSD_Slider(11, 2, 20, (stMUD.PHASE & 0x7c) >> 2, 31, 0x61);
1209 7 break;
1210 7 case PAGE2_ITEM_CLOCK :
1211 7 ucOSD_Item_Index1 = 1; // Enter the item
1212 7 OSD_Slider(11, 2, 20, stMUD.CLOCK - 28, 200, 0x61);
1213 7 break;
1214 7 }
1215 6 }
C51 COMPILER V7.50 LCD_OSD_REL 07/28/2008 16:10:58 PAGE 21
1216 5 }
1217 4 }
1218 3 }
1219 2 break;
1220 2
1221 2 case NOTIFY_RIGHT_KEY : // Right-key to Increase; Left-key to Decrease
1222 2 case NOTIFY_LEFT_KEY :
1223 2 case NOTIFY_IR_RIGHT_KEY :
1224 2 case NOTIFY_IR_LEFT_KEY :
1225 2 if (ucOSD_Item_Index1)
1226 2 {
1227 3 switch (ucOSD_Item_Index0)
1228 3 {
1229 4 case PAGE2_ITEM_POSH :
1230 4 if (NOTIFY_RIGHT_KEY == action || NOTIFY_IR_RIGHT_KEY == action)
1231 4 {
1232 5 if (ucH_Min_Margin >= stMUD.H_POSITION) break;
1233 5
1234 5 if (KEY_TURBO_ENABLE > ucKey_Issued)
1235 5 stMUD.H_POSITION = stMUD.H_POSITION > ucH_Min_Margin ? stMUD.H_POSITION - 1 : u
-cH_Min_Margin;
1236 5 else
1237 5 stMUD.H_POSITION = stMUD.H_POSITION > (ucH_Min_Margin + 2) ? stMUD.H_POSITION -
- 3 : ucH_Min_Margin;
1238 5 }
1239 4 else
1240 4 {
1241 5 if (ucH_Max_Margin <= stMUD.H_POSITION) break;
1242 5
1243 5 if (KEY_TURBO_ENABLE > ucKey_Issued)
1244 5 stMUD.H_POSITION = stMUD.H_POSITION < ucH_Max_Margin ? stMUD.H_POSITION + 1 : u
-cH_Max_Margin;
1245 5 else
1246 5 stMUD.H_POSITION = stMUD.H_POSITION < (ucH_Max_Margin - 2) ? stMUD.H_POSITION +
- 3 : ucH_Max_Margin;
1247 5 }
1248 4 OSD_Slider(11, 2, 20, ucH_Max_Margin - stMUD.H_POSITION, ucH_Max_Margin - ucH_Min_Margin,
-0x61);
1249 4 Set_H_Position();
1250 4 Save_MUD(ucMode_Curr);
1251 4 break;
1252 4 case PAGE2_ITEM_POSV :
1253 4 if (NOTIFY_RIGHT_KEY == action || NOTIFY_IR_RIGHT_KEY == action)
1254 4 {
1255 5 if ((unsigned int)256 - ucV_Min_Margin <= stMUD.V_POSITION) break;
1256 5
1257 5 stMUD.V_POSITION += 1;
1258 5 }
1259 4 else
1260 4 {
1261 5 if (ucV_Min_Margin >= stMUD.V_POSITION) break;
1262 5
1263 5 stMUD.V_POSITION -= 1;
1264 5 }
1265 4 OSD_Slider(11, 2, 20, (unsigned int)(stMUD.V_POSITION - ucV_Min_Margin) * 50 / (128 - ucV_
-Min_Margin), 100, 0x61);
1266 4 Set_V_Position();
1267 4 Save_MUD(ucMode_Curr);
1268 4 break;
1269 4 case PAGE2_ITEM_SHARP :
1270 4 if (NOTIFY_RIGHT_KEY == action || NOTIFY_IR_RIGHT_KEY == action)
1271 4 {
C51 COMPILER V7.50 LCD_OSD_REL 07/28/2008 16:10:58 PAGE 22
1272 5 if (5 <= ucOSD_Item_Index1) break;
1273 5
1274 5 ucOSD_Item_Index1 = ucOSD_Item_Index1 + 1;
1275 5 }
1276 4 else
1277 4 {
1278 5 if (1 >= ucOSD_Item_Index1) break;
1279 5
1280 5 ucOSD_Item_Index1 = ucOSD_Item_Index1 - 1;
1281 5 }
1282 4
1283 4 RTDCodeW((1 == ucOSD_Item_Index1) ? OSD_Sharp_1 : (2 == ucOSD_Item_Index1) ? OSD_Sharp_2
1284 4 : (3 == ucOSD_Item_Index1) ? OSD_Sharp_3 : (4 == ucOSD_Item_Index1) ? OSD_Sharp_4 : OS
-D_Sharp_5);
1285 4
1286 4 stGUD1.FILTER = ucOSD_Item_Index1 - 1;
1287 4 Sharpness();
1288 4 Save_GUD1();
1289 4 break;
1290 4 case PAGE2_ITEM_PHASE :
1291 4 stMUD.PHASE &= 0x7c;
1292 4 if (NOTIFY_RIGHT_KEY == action || NOTIFY_IR_RIGHT_KEY == action)
1293 4 {
1294 5 if (0x7c <= stMUD.PHASE) break;
1295 5
1296 5 stMUD.PHASE += 4;
1297 5 }
1298 4 else
1299 4 {
1300 5 if (0x00 == stMUD.PHASE) break;
1301 5
1302 5 stMUD.PHASE -= 4;
1303 5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -