FUNCTIONS BY FREQUENCY Lists of functions arranged in descending order of frequency. This may be useful for deciding what needs implementing next. The scores represent the number of RealLive programs (including demos and trials) which Haeleth has that use the function at least once. Key titles are additionally indicated as follows: Air SE A Clannad C Kanon SE K Planetarian PE P Tomoyo After T Grp (combined scores for grp*/rec*) grpBuffer 34 ACKPT grpOpenBg 33 ACKPT grpCopy 32 ACKT grpFill 25 ACKPT grpMaskCopy 19 AK grpMulti 16 ACK grpDisplay 15 grpFade 12 C grpLoadMask 12 grpStretchBlt 12 AC grpCopyWithMask 11 grpMaskBuffer 11 grpOpen 10 K grpMaskOpen 9 AK grpMaskCopyWithMask 7 grpMono 7 A grpLoad 6 AK grpMaskStretchBlt 6 grpCopyInvMask 5 grpZoom 5 AP grpColour 4 grpAdd 3 C grpFlash 3 AC grpInvert 3 AC grpLight 3 C grpMaskNumber 3 grpAddWithMask 2 grpMaskAdd 2 grpMaskCopyInvMask 2 grpMaskLoad 2 A grpTextout 2 grpMaskRotate 1 grpMaskSub 1 grpPan 1 grpRotate 1 grpSub 1 C Obj (combined scores for obj*/objBg*/objRange*/objBgRange*) objOfFile 32 ACKPT objAlpha 23 ACKPT objMove 23 ACKPT objShow 22 ACKPT objDispRect 16 ACKPT objOfFileGan 16 CKPT objWipeCopyOn 16 CPT objLayer 14 objAdjust 13 ACKPT objScale 13 CP objColour 12 ACT objDriftOfFile 12 ACKPT objDriftOpts 12 ACKPT objLeft 12 C objTop 12 C objComposite 11 CPT objCopyFgToBg 11 ACKT objOfRect 11 ACT objClear 10 ACKPT objPattNo 10 ACKPT objDelete 9 ACKPT objLight 9 P objMono 9 CT objOfText 9 CP objAdjustX 8 objGetPos 8 ACKPT objRotate 8 C objTextOpts 8 CP objAdjustY 7 objDispArea 7 objGetDims 7 ACKPT objWipeCopyOff 7 objOrigin 6 objStop 6 objCopy 5 CT objOfFile2 5 CT objRepOrigin 5 CP objHeight 4 C objInvert 4 objOfArea 4 objWidth 4 T objRepOriginX 3 objTint 3 objCopyToBg 2 objFadeOpts 2 C objLoop 2 AP objNumOpts 2 objOfDigits 2 objOrder 2 objRepOriginY 2 C objSetDigits 2 objSetText 2 objBgCopyToFg 1 A objColLevel 1 objOfFileAnm 1 objOriginY 1 objPlay 1 C objPlayEx 1 For future reference, the basic command to generate scores for Grp was find -L . -type d | perl -e ' %key=(kanon=>1,air=>1,clannad=>1,planetarian=>1,tomoyo_full=>1); @f = map { chomp; "$_/*.ke" } ; push @f, "misc/$_" for split " ", `ls misc`; for (@f) { next if m(\.(/gameexes|/misc)?/\*\.ke$); open F, qq{grep -Eoh "\\b(grp|rec)[^ (]+" $_ | sort -u -k1.4 |}; while $l () { chomp, $l =~ s/^rec/grp/, ++$c{$l}; $g{$l} .= uc $2 if m(/((.).+)/\*\.ke$) && $key{$1} } close F } printf "%-21s%-4s%s\n", $_, $c{$_}, $g{$_} for keys %c ' | sort -nrk 2 No, I haven't won any obfuscation contests yet. :P