The codebase to run the *spark d-fuser controller www.sparkav.co.uk/dvimixer
Dependencies: SPK-TVOne DMX DmxArtNet NetServicesMin OSC PinDetect mRotaryEncoder iniparser mbed spk_oled_ssd1305 filter
Revision 28:67269c2d042b, committed 2012-10-28
- Comitter:
- tobyspark
- Date:
- Sun Oct 28 17:21:19 2012 +0000
- Parent:
- 27:27851d3d2bba
- Child:
- 29:95a7efe30527
- Commit message:
- Included .ini file; More sprintf to snprintf safety fixes
Changed in this revision
SPKDF_ini.h | Show annotated file Show diff for this revision Revisions of this file |
spk_settings.h | Show annotated file Show diff for this revision Revisions of this file |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SPKDF_ini.h Sun Oct 28 17:21:19 2012 +0000 @@ -0,0 +1,67 @@ +[Key1] +Name = Lumakey +MinY = 0 +MaxY = 18 +MinU = 128 +MaxU = 129 +MinV = 128 +MaxV = 129 + +[Key2] +Name = Chromakey +MinY = 30 +MaxY = 35 +MinU = 237 +MaxU = 242 +MinV = 114 +MaxV = 121 + +[Resolution1] +Name = VGA (640x480) +Number = 8 +EDIDNumber = 5 + +[Resolution2] +Name = SVGA (800x600) +Number = 18 +EDIDNumber = 5 + +[Resolution3] +Name = XGA (1024x768) +Number = 28 +EDIDNumber = 5 + +[Resolution4] +Name = WSXGA+ (1650x1050) +Number = 83 +EDIDNumber = 5 + +[Resolution5] +Name = WUXGA (1920x200) +Number = 105 +EDIDNumber = 5 + +[Resolution6] +Name = HD 720P60 (1280x720) +Number = 46 +EDIDNumber = 5 + +[Resolution7] +Name = HD 1080P60 (1920x1080) +Number = 109 +EDIDNumber = 5 + +[Resolution8] +Name = Dual head SVGA (1600*600) +Number = 123 +EDIDNumber = 5 + +[Resolution9] +Name = Dual head XGA (2048x768) +Number = 124 +EDIDNumber = 5 + +[Resolution10] +Name = Triple head VGA (1920x480) +Number = 125 +EDIDNumber = 5
--- a/spk_settings.h Sun Oct 28 16:19:04 2012 +0000 +++ b/spk_settings.h Sun Oct 28 17:21:19 2012 +0000 @@ -131,8 +131,9 @@ bool keyParamReadOK = true; bool keyParamCleared = false; - char* failString = "Failed to read"; - int failInt = -1; + char* const failString = "Failed to read"; + const int failInt = -1; + const int stringLength = 11; // Loop through [Key1,2,...,99] sections while(keyParamReadOK) @@ -140,33 +141,33 @@ int paramSet[6]; char* paramName; - char key[11]; + char key[stringLength]; - sprintf(key, "Key%i:Name", counter); + snprintf(key, stringLength, "Key%i:Name", counter); paramName = iniparser_getstring(settings, key, failString); keyParamReadOK = keyParamReadOK && strcmp(paramName, failString); - sprintf(key, "Key%i:MinY", counter); + snprintf(key, stringLength, "Key%i:MinY", counter); paramSet[0] = iniparser_getint(settings, key, failInt); keyParamReadOK = keyParamReadOK && (paramSet[0] != failInt); - sprintf(key, "Key%i:MaxY", counter); + snprintf(key, stringLength, "Key%i:MaxY", counter); paramSet[1] = iniparser_getint(settings, key, failInt); keyParamReadOK = keyParamReadOK && (paramSet[1] != failInt); - sprintf(key, "Key%i:MinU", counter); + snprintf(key, stringLength, "Key%i:MinU", counter); paramSet[2] = iniparser_getint(settings, key, failInt); keyParamReadOK = keyParamReadOK && (paramSet[2] != failInt); - sprintf(key, "Key%i:MaxU", counter); + snprintf(key, stringLength, "Key%i:MaxU", counter); paramSet[3] = iniparser_getint(settings, key, failInt); keyParamReadOK = keyParamReadOK && (paramSet[3] != failInt); - sprintf(key, "Key%i:MinV", counter); + snprintf(key, stringLength, "Key%i:MinV", counter); paramSet[4] = iniparser_getint(settings, key, failInt); keyParamReadOK = keyParamReadOK && (paramSet[4] != failInt); - sprintf(key, "Key%i:MaxV", counter); + snprintf(key, stringLength, "Key%i:MaxV", counter); paramSet[5] = iniparser_getint(settings, key, failInt); keyParamReadOK = keyParamReadOK && (paramSet[5] != failInt); @@ -201,8 +202,9 @@ bool resolutionReadOK = true; bool resolutionCleared = false; - char* failString = "Failed to read"; - int failInt = -1; + char* const failString = "Failed to read"; + const int failInt = -1; + const int stringLength = 25; // Loop through [Key1,2,...,99] sections while(resolutionReadOK) @@ -211,17 +213,17 @@ int resolutionIndex; int resolutionEDIDIndex; - char key[18]; + char key[stringLength]; - sprintf(key, "Resolution%i:Name", counter); + snprintf(key, stringLength, "Resolution%i:Name", counter); resolutionName = iniparser_getstring(settings, key, failString); resolutionReadOK = resolutionReadOK && strcmp(resolutionName, failString); - sprintf(key, "Resolution%i:Number", counter); + snprintf(key, stringLength, "Resolution%i:Number", counter); resolutionIndex = iniparser_getint(settings, key, failInt); resolutionReadOK = resolutionReadOK && (resolutionIndex != failInt); - sprintf(key, "Resolution%i:EDIDNumber", counter); + snprintf(key, stringLength, "Resolution%i:EDIDNumber", counter); resolutionEDIDIndex = iniparser_getint(settings, key, failInt); resolutionReadOK = resolutionReadOK && (resolutionEDIDIndex != failInt);