free hit counter

Friday, August 29, 2008

Coroutines in C

Rajiv sent me this great article on coroutines- a way to get RTOS like functionality without the RTOS.

Coroutines in C

It's what's implemented in the uIP TCP/IP stack:
http://www.sics.se/~adam/uip/index.php/Main_Page

Tuesday, August 12, 2008

svn: tsvn autoprops

TortoiseSvn latest release has a way to propagate autoprops to all compatible TSVN clients. Way cool. Here's my list of autoprops:


# Code formats
*.a51 = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.s = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.c = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.cpp = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.h = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.hpp = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.java = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.as = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.cgi = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn-mine-type=text/plain
*.js = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/javascript
*.php = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/x-php
*.pl = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/x-perl; svn:executable
*.pm = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/x-perl
*.t = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/x-perl; svn:executable
*.py = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/x-python; svn:executable
*.sh = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/x-sh; svn:executable


# Image formats
*.bmp = svn:mime-type=image/bmp
*.gif = svn:mime-type=image/gif
*.ico = svn:mime-type=image/ico
*.jpeg = svn:mime-type=image/jpeg
*.jpg = svn:mime-type=image/jpeg
*.png = svn:mime-type=image/png
*.tif = svn:mime-type=image/tiff
*.tiff = svn:mime-type=image/tiff

# Data formats
*.pdf = svn:mime-type=application/pdf
*.avi = svn:mime-type=video/avi
*.doc = svn:mime-type=application/msword
*.eps = svn:mime-type=application/postscript
*.gz = svn:mime-type=application/gzip
*.mov = svn:mime-type=video/quicktime
*.mp3 = svn:mime-type=audio/mpeg
*.ppt = svn:mime-type=application/vnd.ms-powerpoint
*.ps = svn:mime-type=application/postscript
*.psd = svn:mime-type=application/photoshop
*.rtf = svn:mime-type=text/rtf
*.swf = svn:mime-type=application/x-shockwave-flash
*.tgz = svn:mime-type=application/gzip
*.wav = svn:mime-type=audio/wav
*.xls = svn:mime-type=application/vnd.ms-excel
*.zip = svn:mime-type=application/zip

# Text formats
.htaccess = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.css = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/css
*.dtd = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/xml
*.html = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/html
*.ini = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.sql = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/x-sql
*.txt = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/plain
*.xhtml = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/xhtml+xml
*.xml = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/xml
*.xsd = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/xml
*.xsl = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/xml
*.xslt = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/xml
*.xul = svn:eol-style=native; svn:keywords="ID URL LastChangedRevision LastChangedBy"; svn:mime-type=text/xul

Labels: