# Timing of RoBIOS functions

AUDIO functions
Tested on Robot A (1) Running RoBIOS version 3.1 with Eyecam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
AUBeep() | 102774.92 | 9.73
AUCaptureMic() | 17.69 | 56529.37
AUCheckRecord() | 5.68 | 176182.97
AUCheckSample() | 5.68 | 176182.75
AUCheckTone() | 5.68 | 176182.97
Camera functions
Tested on Robot A (1) Running RoBIOS version 3.1 with Eyecam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
CAMGet(&i,&h,&s) | 12.94 | 77265.34
CAMGetColFrame(&cimg, 0) | 265957.45 | 3.76
CAMGetColFrame(&cimg, 1) | 265957.45 | 3.76
CAMGetFrame(&img) | 265957.45 | 3.76
CAMMode(AUTOBRIGHTNESS) | 265957.45 | 3.76
CAMSet(0,0,0) | 6.74 | 148428.43
CAMSet(127,127,127) | 7.60 | 131507.11
CAMSet(255,255,255) | 7.60 | 131506.99
Camera functions
Tested on Robot Gavin (4) Running RoBIOS version 3.1 with Color Quickcam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
CAMGet(&i,&h,&s) | 14.99 | 66707.10
CAMGetColFrame(&cimg, 0) | 641025.64 | 1.56
CAMGetColFrame(&cimg, 1) | 645161.29 | 1.55
CAMGetFrame(&img) | 10.49 | 95318.80
CAMMode(AUTOBRIGHTNESS) | 9.96 | 100439.42
CAMSet(0,0,0) | 14.34 | 69726.90
CAMSet(127,127,127) | 14.82 | 67466.27
CAMSet(255,255,255) | 14.82 | 67466.27
Key functions
Tested on Robot A (1) Running RoBIOS version 3.1 with Eyecam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
KEYRead() | 442.00 | 2262.44
LCD functions
Tested on Robot Gavin (4) Running RoBIOS version 3.1 with Color Quickcam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
LCDArea(1,1,2,2,1) | 246.88 | 4050.59
LCDArea(1,1,2,2,2) | 251.22 | 3980.52
LCDArea(1,1,32,32,1) | 58241.12 | 17.17
LCDArea(1,1,64,64,1) | 14.54 | 68781.05
LCDArea(1,1,8,8,1) | 3658.18 | 273.36
LCDArea(1,1,8,8,2) | 3669.05 | 272.55
LCDCPutGraphic(&cimg1) | 21253.99 | 47.05
LCDClear() | 56242.97 | 17.78
LCDGetPixel(1,1) | 41.82 | 23914.52
LCDInvertPixel(1,1) | 56.96 | 17556.31
LCDLine(1,1,1,64,1) | 16.06 | 62275.91
LCDLine(1,1,1,64,2) | 16.06 | 62275.91
LCDLine(1,1,32,32,1) | 1896.67 | 527.24
LCDLine(1,1,64,1,1) | 3714.16 | 269.24
LCDLine(1,1,64,1,2) | 3716.64 | 269.06
LCDLine(1,1,64,64,1) | 16.06 | 62275.91
LCDMenu("one","two","thre","four") | 1533.81 | 651.97
LCDMenuI(1,"one") | 428.09 | 2335.98
LCDMenuI(2,"two") | 428.09 | 2335.98
LCDMenuI(3,"thre") | 428.72 | 2332.51
LCDMenuI(4,"four") | 428.72 | 2332.51
LCDMode(CURSOR) | 15.44 | 64769.39
LCDMode(SCROLLING) | 15.02 | 66585.96
LCDPutChar(c) | 520.60 | 1920.87
LCDPutGraphic(&img1) | 13259.08 | 75.42
LCDPutHex(i) | 4250.07 | 235.29
LCDPutHex1(i) | 1063.33 | 940.44
LCDPutImage((BYTE*)img1) | 6275.10 | 159.36
LCDPutInt(i) | 4260.94 | 234.69
LCDPutIntS(i,6) | 4254.23 | 235.06
LCDPutString("Testing\n") | 7889.55 | 126.75
LCDSetChar(1,1,c) | 127.87 | 7820.14
LCDSetChar(10,10,c) | 127.87 | 7820.14
LCDSetPixel(1,1,0) | 59.99 | 16669.56
LCDSetPixel(1,1,1) | 57.92 | 17265.44
LCDSetPixel(1,1,2) | 59.88 | 16701.46
LCDSetPos(0,0) | 52.60 | 19010.74
LCDSetPos(5,5) | 52.60 | 19010.74
LCDSetString(1,1,"Testing\n") | 694.03 | 1440.87
LCDSetString(10,10,"Testing\n") | 695.29 | 1438.25
OS functions
Tested on Robot Gavin (4) Running RoBIOS version 3.1 with Color Quickcam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
OSEnable() | 4.02 | 248667.85
OSGetVar(SYSSAVEVAR7) | 10.26 | 97423.69
OSMachineID() | 3.15 | 317460.32
OSMachineName() | 3.26 | 306526.10
OSMachineSpeed() | 3.15 | 317460.32
OSMachineType() | 4.05 | 246913.58
OSPutVar(SYSSAVEVAR7, k) | 12.57 | 79543.14
OSVersion() | 2.95 | 338577.37
PSD functions
Tested on Robot Gavin (4) Running RoBIOS version 3.1 with Color Quickcam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
PSDCheck() | 3.04 | 329218.11
PSDGet(handle) | 11.95 | 83665.35
PSDGetRaw(handle) | 10.88 | 91874.24
Timer functions
Tested on Robot Gavin (4) Running RoBIOS version 3.1 with Color Quickcam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
OSGetCount() | 3.15 | 317460.32
OSGetTime(&hrs, &mins, &secs, &ticks) | 11.19 | 89342.69
OSSetTime(hrs, mins, secs) | 7.45 | 134180.79
OSShowTime() | 24283.63 | 41.18
OSWait(0) | 10.66 | 93808.63
OSWait(1) | 10000.00 | 100.00
Image Processing Functions
Tested on Robot A (1) Running RoBIOS version 3.1 with Eyecam at 35.7 Mhz
Function(parameters) | microseconds per call | Number of calls per second
IPColor2Grey(&cimg1, &img2) | 14677.82 | 68.13
IPDiffer(&img1, &img2, &img3) | 14560.28 | 68.68
IPDither(&img1, &img2) | 7591.29 | 131.73
IPLaplace(himg1[2], &img2) | 35765.38 | 27.96
IPSobel(&img1, &img2) | 61425.06 | 16.28